混合像元分解中的端元波谱获取方法

0
分享 2016-06-27
选取合适的端元是成功的混合像元分解的关键。端元选取包括确定端元数量以及端元的光谱。
理论上,只要端元数量m小于等于b+1(b表示波段数),线性方程组就可以求解。然而实际上由于端元波段间的相关性,选取过多的端元会导致分解结果更大的误差。
端元光谱的确定有两种方式:(1) 使用光谱仪在地面或实验室测量到的“参考端元”;(2) 在遥感图像上得到的“图像端元”。方法(1)一般从标准波谱库选择,方法(2)直接从图像上寻找端元可选择的方法有:从二维散点图中基于几何顶点的端元提取,借助纯净像元指数(Pixel Purity Index——PPI)和n维可视化工具用于端元波谱收集,基于连续最大角凸锥(Sequential Maximum Angle Convex Cone——简称SMACC)的端元自动提取。下面介绍几种端元选择的方法。
1基于几何顶点的端元提取
将相关性很小的图像波段,如PCA、IC、MNF等变换结果的前面两个波段,作为X、Y轴构成二维散点图。在理想情况下,散点图是三角形状,根据线性混合模型数学描述,纯净端元几何位置分布在三角形的三个顶点,而三角形内部的点则是这三个顶点的线性组合,也就是混合像元,如图14.17所示。根据这个原理,我们可以在二维散点图上选择端元波谱。在实际的端元选择过程中,往往选择散点图周围凸出部分区域,后获取这个区域相应原图上的平均波谱作为端元波谱。


图14.17 散点图上的纯净像元与混合像元

下面以MNF变换后的第一、第二波段作为X、Y轴构建二维散点图,如图14.18所示。
 
图14.18 Scatter Plot窗口

2 基于PPI的端元提取
借助纯净像元指数(PPI)和n维可视化工具用于端元波谱收集,下面详细介绍操作步骤。
第一步、获取纯净像元
这个步骤是在MNF变换的结果上计算纯净像元指数(PPI),之后选择阈值范围从PPI图像上获得感兴趣区,感兴趣区包含的像元就是比较纯净的像元。
(1) 打开高光谱数据。
(2) 在ENVI主菜单中,选择Spectral ->MNF Rotation- > Forward MNF -> Estimate Noise Statistics From Data。在标准ENVI文件选择对话框中,选择高光谱图像文件。打开Forward MNF Transform Parameters面板,选择MNF输出路径及文件名,单击OK执行MNF变换。
(3) 在ENVI主菜单中,选择 Spectral-> Pixel Purity Index->[FAST] New Output Band。在打开的Pixel Purity Index Input File对话框中,选择MNF变换结果,单击Spectral Subset按钮,选择前面10个波段(MNF后面波段基本为噪声),单击OK。
(4) 在Pixel Purity Index Parameters面板中,设置Threshold Factor:3,其他参数默认,选择输出路径及文件名,单击OK执行PPI计算。
(5) 在Display窗口中显示PPI结果。选择Overlay->Region of Interest,在ROI Tool 面板中,选择Options->Band Threshold to ROI,选择PPI图像作为输入波段,单击OK,打开Band Threshold to ROI面板(图14.19)。 Min Thresh Value:10,Max Thresh Value:空(PPI图像最大值),其他默认设置,单击OK计算感兴趣区,得到的感兴趣区显示在Display窗口中。

图14.19 Band Threshold to ROI面板

第二步、构建n维可视化窗口
(1) 在ENVI主菜单中,选择Spectral ->n-Dimensional Visualizer,在n-D Visualizer Input File对话框中选择MNF变换结果,单击OK。
(2) 在n-D Controls面板中,选择1、2、3、4、5波段,构建5维的散点图。
第三步:选择端元波谱
(1) 在n-D Controls面板中,设置适当的速度(Speed),单击Start按钮,在n-D Visualizer窗口中的点云随机旋转,当在n-D Visualizer窗口中的点云有部分聚集在一块时,单击Stop按钮。
(2) 在n-D Visualizer窗口中,用鼠标左键勾画“白点”集中区域,选择的点被标示颜色。
(3) 在n-D Controls面板中,选择Class->Items 1:20->White(用于删除点),单击Start按钮,当看到有部分选择的点云分散时候,单击Stop按钮,在n-D Visualizer窗口中选择分散的点,自动会将选择的点删除。借助<-,->,New按钮可以一帧帧从不同视角浏览以辅助删除分散点。
(4) 在n-D Visualizer窗口中,单击右键选择New Class快捷菜单,重复(1)~(3)选择其他“白点”集中区域。

图14.20 n-D Visualizer窗口中的端元

第四步、输出端元波谱
(1) 在n-D Controls面板中,选择Options->Mean All,在Input File Associated with n-D Scatter Plot对话框中选择原图像,单击OK。
(2) 获取的平均波谱曲线绘制在n_D Mean绘图窗口中。
(3) 参考“波谱分析工具”章节,识别每条波谱曲线对应的地物类型。
(4) 在n_D Mean绘图窗口中,选择File->Save Plot As->Spectral Library(或者ASCII),将端元波谱保存为波谱库文件或者文本文件。
3 基于SMACC的端元提取
连续最大角凸锥(Sequential Maximum Angle Convex Cone )简称SMACC。SMACC方法可从图像中提取端元波谱以及丰度图像(abundance Image)。它提供了更快,更自动化的方法来获取端元波谱,但是它的结果近似程度较高,精度较低。
SMACC方法是基于凸锥模型(也称为残余最小化)借助约束条件识别图像端元波谱。采用极点来确定凸锥,并以此定义第一个端元波谱;然后,在现有锥体中应用一个具有约束条件的斜投影生成下一个端元波谱;继续增加锥体生成新的端元波谱。重复这个过程直至生成的凸锥中包括了已有的终端单元(满足一定的容差),或者直至满足了指定的端元波谱类别个数。
通俗的解释,SMACC方法首先找到图像中最亮的像元,然后找到和最亮的像元差别最大的像元;继续再找到与前两种像素差别最大的像素。重复该方法直至SMACC找到一个在前面查找像素过程已经找到的像素,或者端元波谱数量已经满足。SMACC方法找到的像素波谱转成波谱库文件格式的端元波谱。
下面以一个高光谱数据为例,详细介绍这个工具的操作过程。
(1) 在ENVI主菜单中,选择 File->Open Image File,打开高光谱数据文件。
(2) 在ENVI主菜单中,选择Spectral ->SMACC Endmember Extraction,在Select Input Image对话框中选择高光谱数据文件,单击OK打开SMACC Endmember Extraction Parameters面板(图14.21)。
(3) 在SMACC Endmember Extraction Parameters面板中,需要填写以下参数:
  • 端元波谱提取数量( Number of Endmembers ): 15
  • l 误差容限值 (RMS Error Tolerance) : 0


默认值0表示只有达到Number of Endmembers 参数指定的终端个数,SMACC 才会结束。如果指定一个RMS误差,那么达到这个RMS误差的话,SMACC就会结束,不管是否获取指定数量的端元波谱。反射率数据推荐使用0.01,辐射亮度值数据推荐使用1。但是要注意反射率数据常常扩大了倍数,比如扩大了10000倍,这个时候RMS Error Tolerance参数设置应该为10000x1%=100。
  • l 选择分离端元波谱的约束条件 (unmixing constraint For Endmember Abundances) :
  • Positivity Only :把每个波长的正值端元波谱作为约束条件。这个选项常用于反射率数据,因为负反射率值没有物理意义,
  • Sum to Unity or Less : 等于或者小于每个像素计算得到每种物质的组分之和作为约束条件。当想从反射率数据中获取物质的物理意义和丰度图像的阴影图时候,可以选择这个约束条件,结果中会单独生成一个丰度阴影图像( Shadow Abundance )。
  • Sum to Unity :等于每个像素计算得到每种物质的组分之和作为约束条件。当零端元波谱没有物理意义或者想获得暗端元波谱可以选择这个约束条件,这个约束条件推荐用于辐射亮度数据和热辐射数据。
  • l 合并相似端元波谱( Coalesce Redundant Endmembers ):


该选项是基于波谱角制图方法把阈值(在SAM Coalesce Value对话框中定义的值)内的所有端元波谱合并为一个端元波谱。如果想要区分波谱比较相似的地物,不要选择该选项。
  • l 输出结果文件
  • Endmember Location ROIs :该输出包括从终端单元波谱结果中产生的像元感兴趣区文件,这个输出文件是可选的。
  • Abundance Image :输出丰度图像,该输出文件将包括阴影图像和终端单元聚集图像。该输出图像是可选的。
  • Select Output Spectral Library Enter Output Filename :该输出文件中包括提取出的终端单元的波谱库信息。这个是必先项目。


(4) 单击OK,执行SMACC过程。


图14.21 SMACC Endmember Extraction Parameters面板

获取的端元波谱以ENVI波谱库文件形式保存,设置的端元数为15,由于设置合并相似端元波谱选项,实际获得6种端元波谱,借助Spectral Analyst功能识别获得的端元波谱。同时还可以得到每种端元波谱的丰度图像。
摘自《ENVI遥感图像处理方法》科学出版社
文章来源:http://blog.sina.com.cn/s/blog_764b1e9d0100qtv9.html

0 个评论

要回复文章请先登录注册