HTML
-
本文中用模拟高光谱数据和真实高光谱数据进行实验验证,分别用波段选择方法改进的N-FINDR算法,特征提取的N-FINDR算法和耿修瑞改进的未降维的N-FINDR算法3种方法提取端元,然后用解混方法中常用的全约束最小二乘法解混[22],对比3种方法提取端元的解混精度以及提取端元的时间。
-
模拟高光谱数据采用一种相对简单的模型,从美国地质勘探局光谱库中随机选择4种不同物质的光谱作为端元,实验中所选的4种端元在光谱库中的名称分别为:Dolomite COD2005,Kaolinite CM3,Calcite CO2004和Gibbsite WS214。这4种端元分别用A, B, C和D表示,F是4种光谱的平均值,作为背景。所选端元的波段范围为0.4011μm~2.976μm,波段数目为430。图 2为模拟数据的第50波段灰度图。图 3为所选4种端元的光谱曲线。
模拟图像的空间大小为100×100像元,在4行中,每行均有4个大小为15×15像元的方块,其余部分为背景,方块中物质的含量满足“和为1”与“非负”约束,方块的含量如表 1所示。
the 1st column the 2nd column the 3rd column the 4th column the 1st row A 0.75A+0.25B 0.5A+0.5F 0.25A+0.25B+0.5F the 2nd row B 0.75B+0.25C 0.5B+0.5F 0.25B+0.25C+0.5F the 3rd row C 0.75C+0.25D 0.5C+0.5F 0.25C+0.25D+0.5F the 4th row D 0.75D+0.25A 0.5D+0.5F 0.25D+0.25A+0.5F Table 1. Weight of each endmember in the cube
实际高光谱数据中存在噪声,为使模拟数据更接近真实高光谱数据,选择在模拟数据中加入30dB的高斯噪声。
由于模拟数据中已知实际端元数P=4, 因此需要提取3个波段子集使其满足体积公式,改进的N-FINDR算法利用最佳指数法选择的波段子集为{225, 249, 421}。分别用3种N-FINDR算法提取端元,然后利用全约束最小二乘法解混,解混精度和端元提取时间如表 2所示。
endmember extraction method the improved N-FINDR algorithm feature extraction N-FINDR algorithm N-FINDR algorithm without dimensionality reduction RMSE 0.0365 0.0385 0.0368 time/s 5.93 8.81 57.89 Table 2. RMSE and endmember extraction time of three methods for stimulation data
由表 2可以看出,改进的N-FINDR算法相对其它两种方法的均方根误差都要小,同时可以看到,两种降维之后的N-FINDR算法端元提取时间明显比未降维的N-FINDR算法少。
-
真实高光谱数据采用1997年AVIRIS获取的美国内达华州Cuprite矿区的高光谱图像,从中选择一个100×100像元的子空间进行实验,图 4为所选区域的第50波段的灰度图。高光谱数据的波段范围为0.37μm~2.51μm,将信噪比低的波段98~128和148~170移除,总共利用170个波段进行实验。
改进的N-FINDR算法在虚警率为10-6时,P=4,即端元数为4。用最佳指数法对高光谱数据降维,选择波段子集,波段子集的数目为(P-1),根据公式计算得到的波段子集为{1, 107, 168},此波段子集是相关性小,信息量大的波段,并且满足单形体体积计算公式。特征提取方法的N-FINDR算法是利用最小噪声分离降维,然后根据体积公式计算,选择端元。GENG改进的未降维的N-FINDR算法是改进了体积公式,解决了维数限制,但是也增加了计算量。
3种方法提取端元后,利用全约束最小二乘法解混的均方根误差如表 3所示。由表 3可以看出,利用波段选择方法中的最佳指数法,代替传统N-FINDR算法中最小噪声分离,提取的端元经过解混之后,改进的N-FINDR算法得均方根误差最小,说明改进的N-FINDR算法能有效提取端元,且效果优于传统的N-FINDR算法。
endmember extraction method the improved N-FINDR algorithm feature extraction N-FINDR algorithm N-FINDR algorithm without dimensionality reduction RMSE 72.63 117.03 107.79 time/s 5.69 5.78 22.93 Table 3. RMSE and endmember extraction time of three methods for true data
3种N-FINDR端元提取方法解混后的误差图像如图 5所示。从图中也可以看出, 在绝大多数像元点中,改进的N-FINDR算法比用特征提取方法降维的N-FINDR算法和未降维的N-FINDR算法的误差值小,说明此种改进方法是有效的。
通过模拟和真实高光谱数据都能发现,改进的N-FINDR算法的均方根误差比其它两种方法小。同时,降维的N-FINDR算法比未降维的N-FINDR算法端元提取的时间少很多。而且随着光谱数据维度的增加,改进的N-FINDR算法时间会比未降维方法少更多,而且解混精度也相近。
由于改进的N-FINDR算法是利用波段选择降维,其能在满足体积公式的前提下,利用最佳指数法选择相关性小,信息量大的波段,同时不破坏光谱的物理意义,使在端元提取时像元与原始像元更相似,最终提高解混精度,提高算法时效性。