原文地址:

ENVI Services Engine5.1 应用开发入门教程_ENVI-IDL中国_新浪博客
http://blog.sina.com.cn/s/blog_764b1e9d0102uyet.html

 

入门教程及示例程序下载:http://pan.baidu.com/s/1kT0vAT5

目录

一、安装

1.1 软硬件要求

1.2 安装须知

1.3 产品安装

二、服务器端开发

2.1 任务创建

2.2 ENVI/IDL程序开发

2.3 JSON配置文件编辑

2.4 任务发布及管理

2.5 ENVI Services Engine服务验证

三、客户端开发

一、安装

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 应用开发入门教程的更多相关文章

  1. 基于Nodejs生态圈的TypeScript+React开发入门教程

    基于Nodejs生态圈的TypeScript+React开发入门教程   概述 本教程旨在为基于Nodejs npm生态圈的前端程序开发提供入门讲解. Nodejs是什么 Nodejs是一个高性能Ja ...

  2. Arduino可穿戴开发入门教程(大学霸内部资料)

    Arduino可穿戴开发入门教程(大学霸内部资料) 试读下载地址:链接:http://pan.baidu.com/s/1mg9To28 密码:z5v8 介绍:Arduino可穿戴开发入门教程(大学霸内 ...

  3. 一看就懂的Android APP开发入门教程

    一看就懂的Android APP开发入门教程 作者: 字体:[增加 减小] 类型:转载   这篇文章主要介绍了Android APP开发入门教程,从SDK下载.开发环境搭建.代码编写.APP打包等步骤 ...

  4. iOS开发入门教程

    iOS开发入门教程 http://my.oschina.net/mailzwj/blog/133273 摘要 iOS开发入门教程,从创建项目到运行项目,包括OC基础,调试,模拟器设置等相关知识. iO ...

  5. Apple官方IOS开发入门教程[v0.2]

    今天,又跑去找IOS开发入门教程了,结果发现没什么好的PDF. 后来发现,原来苹果官方有开发入门教程,而且写的很好.所以整理出来了,给大家分享一下. 我就不在这里贴pdf的内容了,下面有苹果官方教程的 ...

  6. Android Studio JNI开发入门教程

    Android Studio JNI开发入门教程 2016-08-29 14:38 3269人阅读 评论(0) 收藏 举报  分类: JNI(3)    目录(?)[+]   概述 在Andorid ...

  7. 移动H5开发入门教程:12点webAPP前端开发经验

    如果你是一名移动H5前端开发人员,25学堂的小编认为下面的分享的12点webAPP前端开发经验是你必须掌握的基础知识点.算是一篇移动H5开发入门教程吧! 1. viewport:也就是可视区域.对于桌 ...

  8. C#,ArcGIS Engine开发入门教程

    C#,ArcGIS Engine开发入门教程 转自:http://blog.csdn.net/yanleigis/article/details/2233674  目录(?)[+] 五实现 一 加载A ...

  9. Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE

    Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE Windows平台下安装Arduino IDE Windows操作系统下可以使用安装向导和压缩包形式安装.下面详细讲解这 ...

随机推荐

  1. Android 源码编译及常见错误及解决方法

    最近要往arm开发板上移植android系统,大大小小的问题遇到了太多太多,都是泪啊.本人初接触嵌入式开发,对问题的根源不是太了解,不过好在每解决一个问题,便记录一下.话不多说,正式罗列问题: hos ...

  2. Tomcat虚拟目录的设置

    在学习JSP/Servlet的过程中,配置Tomcat的虚拟目录可能是我们遇到的第一个比较麻烦的问题,说是麻烦是针对我们初学者而言,对于高手那都不是问题.反正我是弄了一天才配置好,发现网上给出的很多配 ...

  3. DTCMS视频模版更改,

    1.去掉style.css中视频的高度 .video-box{ position:relative; width:100%; height:473px; _clear:both; _display:i ...

  4. AngularJS(10)-数据验证

    AngularJS 表单和控件可以提供验证功能,并对用户输入的非法数据进行警告.客户端的验证不能确保用户输入数据的安全,所以服务端的数据验证也是必须的. <!DOCTYPE html> & ...

  5. 菜鸟聊:PHP

    学习PHP已经有2个月时间了,从一开始的一片空白,到现在的刚刚入门,我对PHP的了解也有更多的认知,希望通过我对PHP的理解,能帮助到更多像我一样的新手更早的认识PHP.(PS:以下内容的一部分是摘自 ...

  6. 快速搭建Web环境 Angularjs + Express3 + Bootstrap3

    快速搭建Web环境 Angularjs + Express3 + Bootstrap3 AngularJS体验式编程系列文章, 将介绍如何用angularjs构建一个强大的web前端系统.angula ...

  7. 深入理解jsavascript的作用域

    一. JavaScript声明提前 在JavaScript中如果不创建变量,直接去使用,则报错: console.log(xxoo); // 报错:Uncaught ReferenceError: x ...

  8. 《WPF程序设计指南》读书笔记——第3章 内容的概念

    1.Content属性及字体相关的属性 using System; using System.Windows; using System.Windows.Media; namespace LY.Dis ...

  9. [Learn Android Studio 汉化教程]第三章:使用 Android Studio 编程

    [Learn Android Studio 汉化教程]第三章:使用 Android Studio 编程 本章包含如何在 Android Studio 中书写或生成代码. Android Studio ...

  10. StatusStrip状态栏控件

    1.ToolStripStatusLabel statusstrip1.Items[].Text="日期"+DateTime.Now.ToString(); Thread p = ...