ENVI Services Engine5.1 应用开发入门教程
原文地址:
ENVI Services Engine5.1 应用开发入门教程_ENVI-IDL中国_新浪博客
http://blog.sina.com.cn/s/blog_764b1e9d0102uyet.html
入门教程及示例程序下载:http://pan.baidu.com/s/1kT0vAT5
目录
一、安装
1.1软硬件要求
1.1.1 硬件要求
l 硬盘空间:1.0G以上
l 交换空间:700M以上
l 内存:256M及以上(建议512M以上)
l CPU:Intel/AMD 64-bit
l 显示设备: 推荐在标准尺寸(96dpi) 下使用 1024 x 768 或更高
l 24 位颜色深度
注意:为了优化性能,用户显卡至少1GB RAM并支持OpenGL2.0或者更高版本。而且还需要安装显卡的最新驱动。
1.1.2 软件要求
ENVI Services Engine 需要运行在64位的Windows或者Linux上,安装ENVI Services Engine产品后,可以通过管理员控制台管理发布的服务、监测节点运行情况以及查看每个job的运行状态等,管理员控制台支持的浏览器:
l IE10
l Chrome
l Firefox
ENVI Services Engine支持的平台:
平台
操作系统
硬件
支持的 版本
Windows
Intel/AMD 64bit
XP, Vista, 7, 8, Server 2008,12…
UNIX
Linux
Intel/AMD 64bit
Kernel 2.6.32, glibc 2.12, GTK+ 2.4.13
1.2安装须知
1) ENVI Services Engine可以安装在单节点计算机(任务开发)、企业级服务器、集群服务器及云平台(例如亚马逊公有云)中。
2) 运行ENVI Services Engine产品的服务器必须安装有ENVI/IDL,如果服务器没有安装ENVI/IDL,则在安装ENVI Services Engine的过程中会自动安装。
3) 选择安装ENVI Services Engine服务,自动或手动启动服务需要一个特定用户,因此在安装前可以建立一个计算机用户并设置密码。
4) ENVI Services Engine管理员控制台在有许可的情况下才能启动。
1.3产品安装
1.3.1 ENVI Services Engine安装
本次安装过程是在Windows7旗舰版操作系统下完成的。
将ENVI Services Engine安装光盘放入光驱后,即可自动识别,点击autorun.exe即弹出图1界面,点击Install,开始安装。
图1 安装ENVI Services Engine
该机器没有安装ENVI/IDL,因此ENVI Services Engine5.1在安装过程中会自动安装ENVI/IDL,该过程会持续几分钟。
图2 安装ENVI/IDL
点击Next继续安装ENVI Services Engine5.1
图3 安装ENVI Services Engine5.1
这里可以选择安装的产品,如果选择ENVI Services Engine,只会安装ENVI Services Engine产品;如果选择ENVI for ArcGIS Services Edition,除了安装ENVI Services Engine之外,还会安装ENVI for ArcGIS Services Edition产品(专为ArcGIS Server定制的,详细可查看安装后的ENVI Services Engine帮助)。这里我们只选择ENVI Services Engine,点击Next。
图4 选择安装产品类型
选择ENVI Services Engine是否以服务方式安装,这里有三个选项:以自动启动的服务安装、以手动启动的服务安装、不以服务方式安装。这里我们选择以自动启动的服务方式安装,点击Next。
图5 选择服务启动方式
以自动启动的服务安装方式会要求输入启动该服务的用户账户,这里我们选择管理员Administrator,点击Next。
图6 设置用户名
选择ENVI Services Engine的安装路径,默认是:C:\Exelis,这里我们选择默认安装,点击Next。
图7 ENVI Services Engine安装路径
正在安装ENVI Services Engine5.1。
图8 正在安装
1.3.2 安装许可
图9 许可安装选择
选择“是”,直接导入许可,若选择“否”,可以通过“开始→IDL8.3→Tools→License Wizard”配置许可。
这里我们选择“是”,进入许可加载界面,在弹出程序界面中选择第三项,Install a license you have received,导入从Esri中国信息技术有限公司收到的许可文件。
图10 导入许可文件
图11 许可导入界面
导入许可后点击Finish完成安装。
图12 许可导入完成
图13 安装完成后重启电脑
1.3.3 验证
ENVI Services Engine安装完成后,可以通过开始->所有程序->ENVI 5.1->Tools->Services Engine Admin Console启动ENVI Services Engine管理员控制台(http://hostname:8181/admin),管理员控制台如果可以启动(注意浏览器版本)说明ENVI Services Engine安装成功!
图14 ENVI Services Engine管理员控制台
二、服务器端开发
ENVI Services Engine自5.1版本开始,可以直接在IDL8.3下完成以下内容:
l 任务创建
l ENVI/IDL程序开发
l JSON配置文件编辑
l 任务发布及管理
l ENVI Services Engine服务测试
2.1任务创建
创建任务: 启动IDL8.3,点击菜单文件->New Task…后启动新建任务对话框,这里可以填入:任务名称、文件夹名称、IDL程序名称(三者最好保持一致)以及该任务保存的路径。
图15 新建任务
2.2ENVI/IDL程序开发
ENVI Services Engine任务包含两个文件:IDL源程序(.pro)文件和JSON配置文件(.json)。
双击ESE_Canny.pro即可编写ENVI/IDL功能,通过新建任务生成的pro文件,程序框架已经完成,只需要添加ENVI/IDL功能即可。计算Canny边缘算子的IDL程序如图16。
图16 Canny边缘算子计算IDL程序
这里有两点需要注意:
l IDL程序启动ENVI,必须是e=envi(/headless)而不能是ENVI,这里没有调用ENVI函数,因此不需要启动ENVI。
l 在IDL中调试时需要加上verifyServer,否则!SERVER环境变量无法初始化,verifyserver程序存放在C:\Exelis\se51\lib路径下,因此需要在IDL路径中加入了C:\Exelis\se51\lib路径IDL才可以找到该程序,否则无法直接调用。添加路径可以启动菜单窗口->首选项。
图17 插入IDL路径
2.3JSON配置文件编辑
ENVI/IDL程序开发完成后,需要编写JSON配置文件,双击config.json,打开json配置文件,ESE_Canny的配置文件编写如图18。关于JSON文件参数格式如图19,各参数说明详见ENVI Services Engine帮助。
图18 Canny边缘算子计算JSON文件
图19 JSON文件格式
2.4任务发布及管理
IDL文件和JSON配置文件编辑完成之后,即可在IDL下直接发布ENVI Services Engine服务。打开JSON文件,点击下方的发布后,即可进入发布界面,在该界面下,可以点击 添加ENVI Services Engine服务器,这里使用的是本地机器,因此服务器地址为:http://localhost:8181/ESE。
图20 添加ENVI Services Engine服务器
添加ENVI Services Engine服务器后,即可选择服务端点(SyncServices(同步服务)和AsyncServices(异步服务))后右击发布该任务。也可以通过右侧工具栏进行任务发布、编辑、删除等操作。
图21 发布任务
2.5ENVI Services Engine服务验证
在IDL中直接发布任务后,可以登陆ENVI Services Engine管理员控制台查看服务的URL即HTTP REST服务地址。
图22 发布后的Canny服务
可以看到,该服务已经发布成功,接下来我们验证服务能否正常运行,点击右侧的Task Request Builder…,打开Task Request Builder面板后,点击Submit即可运行服务。
图23 Canny服务测试
服务运行成功后可以得到json返回结果,在json返回结果中可以查看服务是否运行成功及返回的结果。
图24 Canny计算结果
点击Task Request Builder面板上的Show Request,可以得到该服务的HTTP REST地址,有了该地址之后,就可以进行客户端开发,在客户端调用该服务。
图25 Canny服务地址(HTTP REST)
三、客户端开发
这里的客户端可以是基于HTML和Javascript、Flex、Silverlight等开发的web客户端,也可以是移动客户端(IOS、Android),在客户端中可以调用通过ENVI Services Engine平台发布的标准的HTTP REST服务。
这里的演示客户端比较简单,利用的是HTML与JavaScript来调用HTTP REST服务,只是一个HTML文件,里面嵌入了JavaScript来调用ENVI Services Engine的HTTP REST服务,JavaScript调用HTTP REST服务方法如图26所示。注意,这里是调用的同步服务,异步服务的调用与之类似。
图26 JavaScript调用Canny服务
运行HTML文件后,在线计算出边缘算子,如图27所示。
图27 在线计算Canny
ENVI Services Engine5.1 应用开发入门教程的更多相关文章
- 基于Nodejs生态圈的TypeScript+React开发入门教程
基于Nodejs生态圈的TypeScript+React开发入门教程 概述 本教程旨在为基于Nodejs npm生态圈的前端程序开发提供入门讲解. Nodejs是什么 Nodejs是一个高性能Ja ...
- Arduino可穿戴开发入门教程(大学霸内部资料)
Arduino可穿戴开发入门教程(大学霸内部资料) 试读下载地址:链接:http://pan.baidu.com/s/1mg9To28 密码:z5v8 介绍:Arduino可穿戴开发入门教程(大学霸内 ...
- 一看就懂的Android APP开发入门教程
一看就懂的Android APP开发入门教程 作者: 字体:[增加 减小] 类型:转载 这篇文章主要介绍了Android APP开发入门教程,从SDK下载.开发环境搭建.代码编写.APP打包等步骤 ...
- iOS开发入门教程
iOS开发入门教程 http://my.oschina.net/mailzwj/blog/133273 摘要 iOS开发入门教程,从创建项目到运行项目,包括OC基础,调试,模拟器设置等相关知识. iO ...
- Apple官方IOS开发入门教程[v0.2]
今天,又跑去找IOS开发入门教程了,结果发现没什么好的PDF. 后来发现,原来苹果官方有开发入门教程,而且写的很好.所以整理出来了,给大家分享一下. 我就不在这里贴pdf的内容了,下面有苹果官方教程的 ...
- Android Studio JNI开发入门教程
Android Studio JNI开发入门教程 2016-08-29 14:38 3269人阅读 评论(0) 收藏 举报 分类: JNI(3) 目录(?)[+] 概述 在Andorid ...
- 移动H5开发入门教程:12点webAPP前端开发经验
如果你是一名移动H5前端开发人员,25学堂的小编认为下面的分享的12点webAPP前端开发经验是你必须掌握的基础知识点.算是一篇移动H5开发入门教程吧! 1. viewport:也就是可视区域.对于桌 ...
- C#,ArcGIS Engine开发入门教程
C#,ArcGIS Engine开发入门教程 转自:http://blog.csdn.net/yanleigis/article/details/2233674 目录(?)[+] 五实现 一 加载A ...
- Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE
Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE Windows平台下安装Arduino IDE Windows操作系统下可以使用安装向导和压缩包形式安装.下面详细讲解这 ...
随机推荐
- header函数
header函数 主要用于对http协议头设置相关信息 设置浏览器显示编码(解决乱码) header("Content-type:text/html;charset=utf-8") ...
- 实现cookie跨域访问
需求:A系统(www.a.com)里设置一个浏览器cookie,B系统(www.b.com)需要能够访问到A设置的cookie. 通过HTML SCRIPT标签跨域写cookie: 由于html的sc ...
- 【转载】分享下多年积累的对JAVA程序员成长之路的总结
注:该文是从百度贴吧转载过来,之前看到觉得写得还不错,对Java开发学习者来说很有意义的,可以看看. 我也搞了几年JAVA了,由于一向懒惰,没有成为大牛,只是一普通程序猿,不爱玩社交网站,不爱玩微博, ...
- linux环境下配置github远程仓库
1.设置git用户和邮箱 git config --global user.name "fujinzhou" git config --global user.email &quo ...
- Spark Streaming揭秘 Day16 数据清理机制
Spark Streaming揭秘 Day16 数据清理机制 今天主要来讲下Spark的数据清理机制,我们都知道,Spark是运行在jvm上的,虽然jvm本身就有对象的自动回收工作,但是,如果自己不进 ...
- 爬虫学习之基于Scrapy的网络爬虫
###概述 在上一篇文章<爬虫学习之一个简单的网络爬虫>中我们对爬虫的概念有了一个初步的认识,并且通过Python的一些第三方库很方便的提取了我们想要的内容,但是通常面对工作当作复杂的需求 ...
- C++ 容器及选用总结
目录 ==================================================== 第一章 容器 第二章 Vector和string 第三章 关联容器 第四章 迭代器 第五 ...
- Ubuntu系统启动时waiting for network
最近在使用Ubuntu时启动经常会遇到等待网络配置, 每次等待时间都很长,要几分钟,于是在网上看看其他大牛怎么解决该问题. 有些解决方法中有提到删除 网卡硬件信息文件/etc/udev/rules.d ...
- PHP+MYSQL 出现乱码的解决方法
PHP+MYSQL 出现乱码的解决方法 使用PHP+MYSQL时遇到过字符乱问题,解决方法: 在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的数据库消除乱码,对于 ...
- 云主机上搭建squid3代理服务器
目录 目录 具体流程 修改配置文件 问题 维基整理 代理服务器 Squid (软件) SOCKS SOCKS代理 参考:http://raysmond.com/node/79 具体流程 在服务器上安装 ...