ENVI/IDL与ArcGIS集成开发的三种途径
转载:本文来自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集成开发的三种途径的更多相关文章
- 2014年ENVI/IDL遥感应用与开发培训班-11月重庆站 開始报名了
主办单位: 中国遥感应用协会 Esri中国信息技术有限公司 内容简单介绍: 依据中国遥感应用协会栾恩杰理事长推动国内遥感技术和应用的指示精神,2014年中国遥感应用协会组织培训交流部与Esri中国信息 ...
- iOS开发UI篇—iOS开发中三种简单的动画设置
iOS开发UI篇—iOS开发中三种简单的动画设置 [在ios开发中,动画是廉价的] 一.首尾式动画 代码示例: // beginAnimations表示此后的代码要“参与到”动画中 [UIView b ...
- APP开发的三种模式
Hybrid APP混合开发的一些经验和总结 APP开发的三种模式:Native App .web App.hybrid App 1.原生app 使用原生app (android或iOS)开发APP. ...
- iOS用三种途径实现一方法有多个返回值
以前觉得这种标题有点偏向于理论,实际开发中怎么会有这种诡异的需求,但是真正遇到了这种硬需求时觉得还是有那么点价值的,理论付诸了实践在此也就做了个整理. 以我私下开发中的一处代码为例,本意是希望有这么一 ...
- C#生成XML的三种途径
C#生成XML的三种途径 为了全面,这里都将XML保存到文件中,有三种生成XML的方式: 1.我认为是最原始,最基本的一种:利用XmlDocument向一个XML文件里写节点,然后再利用XmlDocu ...
- 虚拟化x86的三种途径
虚拟化x86的三种途径 作者:缪天翔链接:https://www.zhihu.com/question/20145026/answer/34527331 x86上的全系统虚拟化有三种主要的途径: 二进 ...
- 开发servlet三种方式
第一种:实现Servlet接口 ServletDemo类 实现Servlet接口 public class ServletDemo implements Servlet { //初始化该servlet ...
- Servlet开发的三种方法
第一种 实现 Servlet 接口,需要覆写 Servlet 的5个方法,并将ServletConfig对象保存到类级变量中 package app01a; import java.io.IOExce ...
- Spring 集成Hibernate的三种方式
首先把hibernate的配置文件hibernate.cfg.xml放入spring的src目录下,并且为了便于测试导入了一个实体类Student.java以及它的Student.hbm.xml文件 ...
随机推荐
- JVM基础知识(1)-JVM内存区域与内存溢出
JVM基础知识(1)-JVM内存区域与内存溢出 0. 目录 什么是JVM 运行时数据区域 HotSpot虚拟机对象探秘 OutOfMemoryError异常 1. 什么是JVM 1.1. 什么是JVM ...
- thymeleaf中的模板布局
一.包括模板片段: 1:定义和引用片段,我们经常会想要包含在模板片段来自其他模板.常见的用途是页脚.标题.菜单…; 为了做到这一点,Thymeleaf需要我们定义包含可用的片段,我们可以通过使用th: ...
- thymeleaf条件表达式
条件表达式形式:condition, then and else <tr th:class="${row.even}? 'even' : 'odd'"> ... < ...
- HTML5新增的CSS类API
- UVa 11971 Polygon (数学,转化)
题意:一根长度为n的木条,随机选k个位置将其切成k+1段,问这k+1段能组成k+1条边的多边形的概率. 析:这个题,很明显和 n 是没有任何关系的,因为无论 n 是多少那切多少段都可以,只与切多少段有 ...
- 开源原生JavaScript插件-CJPCD(省市区联动)
一.前言 上两篇博客笔者对 JavaScript Module 模式,闭包等知识点做了简单介绍之后,我们今天开始正式开发一款属于自己的 JavaScript 插件.由于最近项目刚好用到地区选择这一块的 ...
- mvc annotation-driven作用
会自动注册DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter两个bean,是spring MVC为Controller分发请求 ...
- sre_constants.error: unbalanced parenthesis
Traceback (most recent call last): File "androidmarket82.py", line 108, in <module> ...
- ADO.NET 快速入门(五):从 DataSet 更新数据库
该主题说明了如何使用 DataSet 在数据库中更新数据.你依然可以直接使用 SqlCommand 在数据库中插入.更新.和删除数据,记住这一点也很重要.理解“从数据库填充DataSet”涵盖的概念有 ...
- Java基础:Collection—List&Set
List和Set: List可以将元素维护在特定的序列中.它的特点是有序,允许重复元素出现.最常见的List的实现类是:ArrayList. Set的特点是:无序,不保存重复元素.当尝试将重复的元素添 ...