完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
目前,很多学者都是从宏观上讨论遥感和GIS一体化集成的可能性及集成的方法,但这些研究在GIS和RS方向只是对Python集成研究的思路或某一功能的介绍,并没有一个基于Python开发的集成GIS与RS功能的应用系统。本文从矿山遥感监测需求出发,分析矿山遥感监测中需要集成的GIS和RS功能,介绍实用性极强的矿山遥感监测系统。
|
|
相关推荐
2个回答
|
|
1系统开发方法选择
目前,进行系统开发可以选择独立开发或二次开发,一般独立开发方法周期长、经费高、对开发语言水平要求较高,而二次开发方法具有周期短、成本低、实现速度快的优势。所以本系统选择基于ArcGIS和ENVI/IDL的集成二次开发。ArcGIS和ENVI/IDL的集成开发方法较多,其中主要有以下几种方法。 1)ENVI/IDL和ArcGISEngine组件库组合的开发方法。2)ENVI/IDL和ArcGISServer一体化组合的开发方法。3)基于Python的ENVI/IDL和ArcGIS桌面定制的开发方法。 第一种方法在开发时,用第三方语言调用ENVI的图像处理功能则是开发的难点,需要一定编程语言和二次开发基础;第二种方法主要是将图像处理功能集成在服务端,客户端对数据进行显示和输出,但是这种方法在一定程度上会受到网络速度的限制,无法实现大数据量的遥感图像的实时传输和显示;第三种方法利用Python语言将ENVI/IDL和ArcGIS链接起来,方法简单、易实现。所以通过以上的分析对比,笔者采用第三种方法。 2系统开发具体步骤 系统基于ArcGIS进行二次开发,需要的ArcGIS功能可以直接调用。图像处理功能则需要调用ENVI中的功能,即需要将ENVI的图像处理功能嵌入到ArcGIS中。 系统开发的详细步骤如下: 1)编写系统中需要的遥感图像处理功能。 在ENVI/IDL中编写IDL程序,将其编译成.sav文件供Python脚本调用。具体方法如下:打开IDL,设置工程名和保存路径,在工程文件中编写需要实现的图像处理功能程序,生成.pro文件并编译成.sav文件供下一步Python调用。 2)编写Python脚本文件,实现在ArcGIS中调用ENVI/IDL功能。 编写Python脚本,Python脚本可以嵌入到ArcGIS中,同时Python脚本又可以通过envipy模块运行编写好的.sav文件,并获得用户从交互界面中输入的参数,将其传递给IDL程序,从而实现在ArcGIS下运行相应的图像处理功能。 |
|
|
|
3)在ArcGIS中构建遥感图像处理功能的交互界面。
为了将编写完成的Python脚本嵌入到ArcGIS中,为实现在ArcGIS下可以直接使用图像处理功能,需要创建交互界面。交互界面创建步骤如下:在Catalog中指定或者新建一个文件夹并添加NEW-toolbox,然后在该工具箱中添加一个新的脚本,将写好的*.py文件和脚本关联。最后,设置ENVI功能程序中的参数完成交互界面的创建。当运行脚本时,就会弹出输入参数的界面,可以根据自己的情况输入所需要的参数。 4)编写系统主界面功能菜单。 通过以上方法,实现遥感图像处理功能的载入,为便于用户使用,需要建立矿山遥感监测系统的主界面菜单。基于ArcGIS10.1的平台上可以用PythonAdd-in做个加载项插入到ArcGIS for Desktop应用程序中来完成系统菜单的定制。 常用的ArcGIS二次开发语言有Python,VBA,VB,.net等。其中,Python作为一种简单而且功能强大的开放性编程语言备受瞩目,它具有简单易学、不受局限、可以跨平台使用等诸多优点,因此ArcGIS9.0以上版本开始引入Python语言,更重要的是Python模块可以把基于IDL开发的功能集成到ArcGIS中,为ArcGIS和ENVI的一体化集成提供至关重要的技术支持。因此,基于Python模块进行集成研究也是近几年的研究热点。 |
|
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 20:03 , Processed in 1.000508 second(s), Total 79, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号