转载:本文来自ENVI5.0-IDL8.2系列产品白皮书_201303.PDF(Esri中国官网可下载)中P7-P10

ENVI 是一个非常开放的平台,提供一个健全的函数库,几乎涵盖ENVI 平台大部分图像处理功能。同时IDL 具有很好的扩展性,能很方便地与其他开发环境(VB、VC、.NET、Java 等)进行集成开发。

同时,ArcGIS 提供ArcObjects 软件组件库,它提供了模块化、可伸缩、跨平台的通用API。
ENVI/IDL 与ArcGIS 集成开发可以通过以下三个途径实现:

图2.4  三种集成开发方式

1) ENVI / IDL 与ArcGIS 桌面定制
通过ArcGIS 桌面SDK 及开发语言(如Python、VBA、VB、VC、.net 等),将ENVI/IDL 图像处理与分析功能集成到ArcMAP 中:

图2.5 ENVI/IDL功能嵌入ArcToolBox中

图2.6 ENVI/IDL功能嵌入ModelBuding(GP工具)

2) ENVI / IDL 与ArcGIS Engine
ArcGIS Engine 是组件式开发工具包,可以灵活、方便地定制地图及GIS 解决方案。ENVI / IDL 与ArcEngine 的一体化集成开发具有以下三个特点:
           1) 通过ArcGIS Engine 解决了数据浏览、栅格矢量叠加、矢量编辑、渲染、专题制图以及空间分析
等问题;
           2) 将ENVI/IDL 作为影像处理引擎,解决专业的影像处理过程;
           3) 基于成熟平台的二次开发,快速实现了系统无缝集成开发,而且大大减少了程序的开发量、开发周期,减少了系统开发的风险,开发者可以将大部分精力放在系统业务流程上。

图2.7 ENVI/IDL与ArcEngine一体化集成开发

3) ENVI / IDL 与ArcGIS Server

将ENVI 图像分析功能或者IDL 自定义功能部署到ArcGIS Server 环境中,通过它可以跨企业或跨互联网以服务形式共享图像处理和分析工具,允许多种客户端(如Web 端、移动端、桌面端等)使用这些资源创建应用,并可以整合GIS 资源。较好地实现了B/S 模式下对影像实时计算处理的需求。

8

图2.8 Web端使用森林砍伐监测功能

总之,遥感和GIS 之间有着天然的联系,它们可以互为补充,遥感与GIS 的一体化逐渐成为一种趋势和发展潮流。ENVI/IDL 与ArcGIS 为遥感和GIS 的一体化集成提供了一个最佳的解决方案。

图2.9  空间信息工程化与流程一体化的最佳组合

ENVI/IDL与ArcGIS集成开发的三种途径的更多相关文章

  1. 2014年ENVI/IDL遥感应用与开发培训班-11月重庆站 開始报名了

    主办单位: 中国遥感应用协会 Esri中国信息技术有限公司 内容简单介绍: 依据中国遥感应用协会栾恩杰理事长推动国内遥感技术和应用的指示精神,2014年中国遥感应用协会组织培训交流部与Esri中国信息 ...

  2. iOS开发UI篇—iOS开发中三种简单的动画设置

    iOS开发UI篇—iOS开发中三种简单的动画设置 [在ios开发中,动画是廉价的] 一.首尾式动画 代码示例: // beginAnimations表示此后的代码要“参与到”动画中 [UIView b ...

  3. APP开发的三种模式

    Hybrid APP混合开发的一些经验和总结 APP开发的三种模式:Native App .web App.hybrid App 1.原生app 使用原生app (android或iOS)开发APP. ...

  4. iOS用三种途径实现一方法有多个返回值

    以前觉得这种标题有点偏向于理论,实际开发中怎么会有这种诡异的需求,但是真正遇到了这种硬需求时觉得还是有那么点价值的,理论付诸了实践在此也就做了个整理. 以我私下开发中的一处代码为例,本意是希望有这么一 ...

  5. C#生成XML的三种途径

    C#生成XML的三种途径 为了全面,这里都将XML保存到文件中,有三种生成XML的方式: 1.我认为是最原始,最基本的一种:利用XmlDocument向一个XML文件里写节点,然后再利用XmlDocu ...

  6. 虚拟化x86的三种途径

    虚拟化x86的三种途径 作者:缪天翔链接:https://www.zhihu.com/question/20145026/answer/34527331 x86上的全系统虚拟化有三种主要的途径: 二进 ...

  7. 开发servlet三种方式

    第一种:实现Servlet接口 ServletDemo类 实现Servlet接口 public class ServletDemo implements Servlet { //初始化该servlet ...

  8. Servlet开发的三种方法

    第一种 实现 Servlet 接口,需要覆写 Servlet 的5个方法,并将ServletConfig对象保存到类级变量中 package app01a; import java.io.IOExce ...

  9. Spring 集成Hibernate的三种方式

    首先把hibernate的配置文件hibernate.cfg.xml放入spring的src目录下,并且为了便于测试导入了一个实体类Student.java以及它的Student.hbm.xml文件 ...

随机推荐

  1. 常用的Activex 控件

    1. Flash Player  ActiveX Control 6.0.47.0 与FLASH 6.0配套的浏览器端动画播放插件                  download.pchome.n ...

  2. [iOS基础控件 - 6.10.1] PickerView 餐点搭配Demo

    A.需求 1.使用PickerView做出有3列餐点(水果.主菜.饮料)的搭配Demo 2.选择的餐点实时显示在“显示区” 3.提供“随机”按钮,随机选择菜品搭配   B.实现步骤 1.拖入一个Pic ...

  3. memcached全面剖析–3. memcached的删除机制和发展方向

    memcached在数据删除方面有效利用资源 数据不会真正从memcached中消失 上次介绍过, memcached不会释放已分配的内存.记录超时后,客户端就无法再看见该记录(invisible,透 ...

  4. js即时监听文本内容

    <script type="text/javascript"> //其他浏览器 function OnInput (event) { alert ("文本内容 ...

  5. npm package 装包匹配原则

    经常看到package.json 里面有这样的devDependencies: "devDependencies": { "@angular/common": ...

  6. IOS6 字体高亮显示

    ios6之前在一个字符串中如果也让某个字体高亮或者特殊显示(如: 关注[ ]),需要用单独一个的标签进行显示,或者利用CoreText进行字体绘绘制,非常麻烦: 现在IOS6 中TextView,la ...

  7. Linux下的图形界面——X Window的安装

    X Window即X Windows图形用户接口,是一种计算机软件系统和网络协议,提供了一个基础的图形用户界面(GUI)和丰富的输入设备能力联网计算机.其中软件编写使用广义的命令集,它创建了一个硬件抽 ...

  8. 微信公众平台Token验证失败的解决办法

    微信公众平台Token验证失败的解决办法 1.可查看url和token是否正确 2.查看服务器端口是否为80端口 3.你可以通过记录log日志来判断是否接受到微信提交过来的信息 1.$fp=fopen ...

  9. HTML5 服务器推送事件(Server-sent Events)实战开发

    转自:http://www.ibm.com/developerworks/cn/web/1307_chengfu_serversentevent/ http://www.ibm.com/develop ...

  10. android拦截短信并屏蔽系统的Notification

    拦截短信有几个关键点: 1.android接收短信时是以广播的方式 2.程序只要在自己的Manifest.xml里加有"接收"SMS的权限 <uses-permission  ...