欢迎来到天天文库
浏览记录
ID:36445700
大小:1.09 MB
页数:39页
时间:2019-05-09
《ENVIIDL二次开发》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ENVI/IDL二次开发新疆大学资源与环境科学学院买买提沙吾提QQ:317851568主要内容1ENVI/IDL二次开发介绍2波段、波谱运算3批处理模式4用户函数ENVI/IDL二次开发介绍如何进行ENVI功能的扩展波谱、波段函数扩展ENVI功能的最简单方法,波段和波谱运算函数,不需要处理文件I/O,不需要进行事件控制,不需修改菜单,用户只需编写运算函数部分内容,其它由ENVI进行管理。批处理模式不出现ENVI的菜单界面,通过调用ENVI提供的非交互式函数来实现交互式ENVI所提供的功能。ENVI/IDL二次开发介绍用户函数用户函数可以用ID
2、L、C、Fortran或者其它的高级语言编写,并集成到ENVI软件中,通过ENVI的菜单来执行。用户函数可以通过ENVI获得输入数据,并将结果直接输入到ENVI中。用户函数包括了部件的定义,事件的处理,以及处理程序。用户函数和ENVI菜单的一个按钮联系起来,并像ENVI的其它函数一样执行。ENVI/IDL二次开发介绍ENVI程序中的通用关键字FIDFID是一个长整型的标量。FID为ENVI的程序员提供了一个命名变量,可以用于一个或几个ENVI程序,来打开或选择文件。所有对该文件进行操作的ENVI程序都是通过FID完成。如果文件打开失败,则FI
3、D返回为-1。ENVI/IDL二次开发介绍R_FID和M_FIDENVI处理程序产生结果一幅新图像也包括一个R_FID,或者称为返回FID关键字。如果结果是存在内存中的,设置R_FID关键字是访问数据的唯一方法。进行掩模的处理时还包括一个M_FID,或者称为掩模关键字,用于确定用于掩模波段的文件。ENVI/IDL二次开发介绍DIMSDIMS关键字是一个5个元素长整型数组。它定义了处理数据的空间子集。当需要确定FID的时候,你必须同时确定该文件的空间范围。DIMS[0]存储一个打开的ROI区域的指针,仅在ROI被定义的时候使用,其它时候设为-1
4、LDIMS[1]采样的起始位置SamplestartDIMS[2]采样的终止位置SampleendDIMS[3]行的起始位置LinestartDIMS[4]行的结束位置LineendENVI/IDL二次开发介绍POSPOS关键字定义了用于处理的波段位置,是一个变长的长整型数组。波段从0开始,例如,要处理第三波段和第四波段,POS=[2,3]。ENVI/IDL二次开发介绍常用ENVI功能函数介绍文件管理ENVI_PICKFILE:产生一个提示用户选择文件的对话框,并返回用户所选择的文件名ENVI_SELECT:产生对话框提示用户从ENVI中已经
5、打开的文件中选择一个文件,并返回用户所选择文件的FID,该函数还可以返回DIMS和POS的值ENVI_OPEN_FILE:该函数返回一个文件的FID,并将文件信息添加到可用波段列表中ENVI_FILE_MNG:该函数可以打开、关闭或者删除硬盘上的文件。无需用户干预ENVI_GET_FILE_IDS:该函数返回所有当前打开的文件的FIDENVI/IDL二次开发介绍打开外部文件格式ENVI_OPEN_DATA_FILE:该函数打开ENVI所支持的外部文件(无ENVI头文件)并返回FID获取数据ENVI_GET_DATA:该函数从一个打开的文件中获
6、取影像数据。它每次只返回某一波段的数据,数据的范围由DIMS关键字控制。ENVI_GET_SLICE:该函数从一个打开的文件中获取波谱影像数据,它返回影像某一行所有波段的数据值。结果以BIP或BIL的格式返回ENVI/IDL二次开发介绍将数据输入到ENVIENVI_ENTER_DATA:该函数将IDL数组中的数据输入到内存中,并通过可用波段列表进行管理。将影像数据存入硬盘使用IDL的WRITEU函数写入数据ENVI_SETUP_HEAD:使用该函数写某个影像数据的头文件波段、波谱运算波段运算Functionbm_func,b1,[b2,…,b
7、n,parametersandkeywords]processingstepsreturn,resultend波段、波谱运算波谱运算ENVI批处理模式批处理模式简介批处理模式的ENVI和正常模式下没有什么区别,只是通过一系列的特定的函数库来执行ENVI的功能。为了使用这些函数,必须首先将它们恢复到IDL内存中。因此为了正确获取这些函数,有必要了解一下ENVI程序的结构。ENVI功能文件由大约50多个小的IDLsave文件组成,这些文件是包括数据和编译后的程序的二进制文件。这些save文件存放在ENVI安装目录下的Save目录下。ENVI的核心
8、save文件包括ENVI的基本功能函数,动态运行函数以及ENVI运行所需的内部变量。ENVI批处理模式如何开始批处理模式恢复ENVIsav文件envi,/resto
此文档下载收益归作者所有