本文汇总了ENVI5.3 FLAASH大气校正模块中常见的运行错误,并给出解决方法。前一部分是错误提示及说明,后面是错误解释及解决方法。
FLAASH对输入数据类型有以下几个要求:
1、波段范围:卫星图像:400-2500 nm,航空图像:860—1135nm。若要执行水汽反演,光谱分辨率<=15nm,且至少包含以下波段范围中的一个:1050—1210 nm、770—870 nm、870—1020 nm。
2、像元值类型:经过定标后的辐射亮度(辐射率)数据,单位是:(μW)/( cm2×nm×sr)。
3、数据类型:浮点型(Floating Point)、32位无符号整型(Long Integer)、16位无符号和有符号整型(Integer、Unsigned Int),但是最终会在导入数据时通过Scale Factor转成浮点型的辐射亮度(μW)/( cm2×nm×sr)。
4、文件类型:ENVI标准栅格格式文件,BIP或者BIL储存结构。
5、中心波长:数据头文件中(或者单独的一个文本文件)包含中心波长(Wavelenth)值,如果是高光谱还必须有波段宽度(FWHM),这两个参数都可以通过编辑头文件信息输入(Edit Header)。
选择Toolbox→Radiometric Correction→Atmospheric Correction Module→FLAASH Atmospheric Correction,打开FLAASH大气校正工具。
一、Unable to write to this file.File or directory is invalid or unavailable。
没有设置输出文件名,包括2个文件名输出反射率文件(Output Reflectance File)、(FLASH文件的输出目录)Output directory for FLAASH File。注意输出文件要用字母命名。
修改为下图:
二、2.ACC Error:convert7
IDL Error:End of input record encountered on file unit:0.
平均海拔高程太大。
注意:填写影像所在区域的平均海拔高程的单位是km:Ground Elevation(km)。通过百度百度查阅研究区域大约海拔,例如:辽宁省海拔300~1000 m左右。即输入0.3~1。
三、3.ACC error:avrd:
IDL error:Unable to allocate memory: to make array
Not enough space
ACC_AVRD
无法分配内存:创建数组。表明ENVI的分块(Tile)太大了。修改为:高级设置里面(Advanced Settings),tile size:100~200 m。如下图:
四、ACC error:lsmooth2:
IDL error:
ACC_LSMOOTH2: Cannot continue with smoothing calculation
ACC_LSMOOTH2:无法继续进行平滑计算。图像分辨率比较低,领域效应区分不出来。解决方法是在在高级设置里面(Advanced Settings),将领域纠正(Use Adjacency Correction)设置No。具体情形如下图:
五、错误类型是:Undefined: LINES.
未定义:LINES。其修改如下图:
最终FLAASH大气校的设置情况如下图:
特别运行过程中要等待,要保证图9变为图10代表运行完毕,方可停止,不然影像会产生暗黑图像。