遥感数字图像处理实验教程(ENVI)第一章ENVI应用基础1.1ENVI软件概述ENVI(TheEnvironmentforVisualizingImages)是美国ITTVisualInformationSolutions公司的旗舰产品。ENVI由遥感领域的科学家采用IDL开发的一套功能强大的遥感图像处理软件;它是快速、便捷、准确地从地理空间影像中提取信息的首屈一指的软件解决方案,它提供先进的,人性化的使用工具来方便用户读取、准备、探测、分析和共享影像中的信息。从2000年开始连续三年,ENVI被美国国家影像制图局(NIMA)等权威机构组织的Passfind项目遥感影像系统评比当中被评为“最佳的遥感目标识别软件”。今天,众多的影像分析师和科学家选择ENVI来从地理空间影像中提取信息。ENVI软件已经广泛应用于科研、环境保护、气象、石油矿产勘探、农业、林业、医学、国防安全、地球科学、公用设施管理、遥感工程、水利、海洋,测绘勘察和城市与区域规划等行业。1.2ENVI软件功能与特点ENVI是以模块化的方式提供给用户的,可使用户根据自己的应用要求、资金情况合理地选择不同的功能模块及其不同组合,对系统进行剪裁,充分利用软硬件资源,并最大限度地满足用户的专业应用要就。ENVI面向不同需求的用户,提供了两种环境的产品架构,并有丰富的功能扩展模块供用户选择,如图1.1所示是ENVI+IDL的体系架构。图1.1ENVI/IDL体系架构ENVI软件特点:1、强大的影像显示、处理和分析系统ENVI包含齐全的遥感影像处理功能:常规处理、几何校正、定标、多光谱分析、高光谱分析、雷达分析、地形地貌分析、矢量应用、神经网络分析、区域分析、GPS联接、正射影像图生成、三维图像生成、丰富的可供二次开发调用的函数库、制图、数据输入/输出等功能组成了图像处理软件中非常全面的系统。ENVI对于要处理的图像波段数没有限制,可以处理Landsat7、IKONOS、SPOT,RADARSAT,NASA,NOAA,EROS和TERRA等卫星数据,并准备接受未来所有传感器的信息。2、强大的多光谱影像处理功能ENVI能够充分提取图像信息,具备全套完整的遥感影像处理工具,能够进行文件处理、图像增强、掩膜、预处理、图像计算和统计,完整的分类及后处理工具,及图像变换和滤波工具、图像镶嵌、融合等功能。ENVI遥感影像处理软件具有丰富完备的投影软件包,可支持各种投影类型。同时,ENVI还创造性地将一些高光谱数据处理方法用于多光谱影像处理,可更有效地进行知识分类、土地利用动态监测。3、便捷地集成栅格和矢量数据ENVI包含所有基本的遥感影像处理功能,如:校正、定标、波段运算、分类、对比增强、滤波、变换、边缘检测及制图输出功能,并可以加注汉字。ENVI具有对遥感影像进行配准和正射校正的功能,可以给影像添加地图投影,并与各种GIS数据套合。ENVI的矢量工具可以进行屏幕数字化、栅格和矢量叠合,建立新的矢量层、编辑点、线、多边形数据,缓冲区分析,创建并编辑属性并进行相关矢量层的属性查询。3、集成的雷达分析工具易于快速处理雷达数据用ENVI完整的集成式雷达分析工具可以快速处理雷达SAR数据,提取CEOS信息并浏览RADARSAT和ERS-1数据。用天线阵列校正、斜距校正、自适应滤波等功能提高数据的利用率。纹理分析功能还可以分段分析SAR数据。ENVI还可以处理极化雷达数据,用户可以从SIR-C和AIRSAR压缩数据中选择极化和工作频率,用户还可以浏览和比较感兴趣区的极化信号,并创建幅度图像和相位图像。1.3ENVI文件系统和存储1.3.1栅格文件系统(用图说明,参见DEM文件结构的说明)ENVI使用的是通用栅格数据格式,包含一个简单的二进制文件和一个相关的ASCⅡ(文本)的头文件。1.头文件ENVI头文件包含用于读取图像数据文件的信息,它通常创建于一个数据文件第一次被ENVI读取时。单独的ENVI头文本文件提供关于图像尺寸、嵌入的头文件(若存在)、数据格式及其他相关信息。所需信息通过交互式输入,或自动地用“文件吸取”创建,并且以后可以编辑修改。您可以在ENVI之外使用一个文本编辑器生成一个ENVI头文件。2.数据文件通过栅格数据都会存储为二进制的字节流,通常它将以BSQ(bandsequential,按波段顺序存储)、BIP(bandinterleavedbypixel,按波段像元交叉存储)或者BIL(bandinterleavedbyline,按波段行交叉存储)的方式进行存储。1)BSQ文件BSQ是按波段顺序依次排列的数据格式。数据排列遵循以下规律:第一波段位居第一,第二波段位居第二,第n波段位居第n位。在每个波段中,数据依据行号顺序依次排列,每一列内,数据按像素顺序排列。2)BIP文件BIP格式中,每个像元按波段次序交叉排序。数据排序遵循以下规律:第一波段第一行第一个像素位居第一,第二波段第一行第一个像素位居第二,以此类推,第n波段第一行第一个像素位居第n位;然后第一波段第二个像素,位居第n+1位,第二波段第一行第二个像素位居第n+2位;其余数据排列依次类推。3)BIL文件BIL格式是逐行按波段次序排列,数据排列遵循以下规律:第一波段第一行第一个像素位居第一,第一波段第一行第二个像素位居第二,以此类推,第一波段第一行第n个像素位居第n位;然后第二波段第一行第一个像素位居第n+1位,第二波段第一行第二个像素位居n+2位;其余数据排列位置依次类推。1.3.2栅格文件存储图像原始的DN(DigitalNumber)值记录图像的光谱信息,不能轻易更改。在窗口中显示的一般是经过拉伸等增强处理的LUT上的灰度值,在保存文件时,就有不同的方式。1.主菜单界面主菜单→File→SaveFileAs,将图像按照需要的格式进行存储,保存的为原始数据,没有拉伸等增强处理。2.主图像窗口主菜单→File→SaveImagesAs,将图像按照需要的格式进行存储,存储的图像是显示的图像样式。主菜单→File→SaveZoomAs,将Zoom窗口显示的图像按照需要的格式进行存储,存储的图像是显示的图像样式。1.3.3ENVI文件命名约定ENVI软件对文件命名除不能使用用于头文件的扩展名“.hdr”之外,不加以任何限制。为了便于使用,一些ENVI功能预先载入含特定扩展名的文件列表。这些扩展名如表1.1所示。当运行ENVI时,应当使用一致,以便文件处理效率最高。若需要,这也并不排除你使用另外的文件名。表1.1ENVI文件类型扩展名文件类型未定义ENVIImage(ENVI图像文件).bllENVIBadLinesList(ENVI坏行文件).cdpSIR-CCompressedDataProduct(ENVI压缩数据产品).hdrENVIHeaderFile(ENVI头文件).cffENVICalibrationFactors(ENVI定标因子文件).cntENVIPPICountFile(ENVI像元纯净指数计算文件).dsrENVIDensitySliceRangeFile(ENVI密度分割文件).evfENVIVectorFile(ENVI矢量文件).expENVIBandMathorSpectralMathExpression(ENVI数学和波谱运算表达式文件).fmtENVITapeScript(ENVI磁带脚本文件).grdENVIGridFile(ENVI网格文件).kerENVIFilterKernels(ENVI滤波核文件).keyENVIMapKey(ENVI图例).levENVIContourLevelsFile(ENVI等高线文件).lutENVILookUpTable(ENVI查找表文件).mosENVIMosaicTemplateFile(ENVI镶嵌模板文件).ndvENVIn-DVisualizerState(ENVIn维可视化状态文件).ptsENVIGCPfile(ENVI控制点文件).roiENVIRegionofInterest(ENVI感兴趣区文件).txtENVIStatisticsReport(ENVI统计报表文件).sliENVISpectralLibrary(ENVI波谱库文件).staENVIStatisticsFile(ENVI统计文件).patENVISurfaceViewPathFile(ENVI三维场景浏览路径文件).stkJPLAIRSARCompressedStokesMatrixRadarData(JPLAIRSAR压缩的Stokes矩阵数据).evcENVIVectorTemplateFile(ENVI矢量模板文件)1.4ENVI常用系统配置说明1.4.1安装目录结构一般情况下,ENVI安装在ITT文件夹下,完整版本包括IDL、License等文件夹。ENVI的所有文件及文件夹保存在HOME\ITT\IDL71\products\envi47。Bin:ENVI运行目录,主要是支持FLAASH大气校正及快速大气校正的文件。Data:数据目录,包括一个矢量文件夹(一些矢量数据)、两个TM5数据、两个DEM数据和一个高光谱数据。Filt_func:常见传感器的波谱响应文件,例如ASTER、MODIS、SPOT、TM等。Help:ENVI的帮助文档。Lib:IDL生成的可编译的程序,用于二次开发。Map_proj:图像的投影信息文件,文本格式,客户可以进行定制。Menu:ENVI菜单文件,可以进行中、英文菜单互换。Save:应用IDL语言编译好的、可执行的ENVI程序,比如各种功能扩展程序。Save_add:软件使用者自主开发的、可执行程序,比如各种功能扩展程序。Spec_lib:波谱库,包含了几个植被矿物波谱库,用户可以自定义。1.4.2常用参数设置在ENVI主菜单中,选择File→Preferences,在打开的SystemPreferences对话框中可以浏览和更改ENVI系统的当前配置信息。这些配置参数保存在Menu文件夹下的envi.cfg文件中。可以设置的参数包括:1、用户自定文件(UserDefinedFiles)在SystemPreferences对话框中切换到UserDefinedFiles,如图1.2所示。该处可以选择自定义的图形颜色文件、颜色表文件、ENVI的菜单文件(ENVIMenuFile、DisplayMenu、ShortcutFile)、地图投影文件等,需要重启ENVI。如果使用ENVI的中文菜单,可以设置ENVI的菜单文件三项。图1.2用户自定义文件选择框2、默认文件目录(DefaultDirectories)在SystemPreferences对话框中切换到DefaultDirectories选项,如图1.3所示。需要注意的是临时文件目录一般应设置在一个空间比较大的磁盘。图1.3默认文件目录设置3、显示设置(DisplayDefaults)在SystemPreferences对话框中切换到DisplayDefaults,如图1.4所示。图1.4显示设置4、其他项设置(Miscollaneous)在SystemPreferences对话框中切换到Miscollaneous选项,如图1.5所示。从左到右、从上到下,包括配置文件名称、主菜单的排列方向、多列表选项的最大数量、最大直方图bins、下拉菜单中选择的数量、所应用的内存最大值、脚本文件输出参数、IDL命令行模块的开启或关机、退出ENVI前是否退出IDL、输入文件是否显示状态窗口、自动应用交互式拉伸效果、是否为文件名自动添加默认扩展名、是否自动加载默认波段、是否在内存中打开可应用文件、内存使用参数。图1.5其他设置常需要设置的参数包括:缓冲大小(cachesize),可以设置为物理内存的50%~75%左右,不能大于2GB,最好为2的整数倍;文件碎片大小设置为cachesize的1/10,推荐小于100MB。1.5ENVI数据的输入与输出1.5.1E