1. 引言
高光谱图像(Hyperspectral Image, HSI)在诸多实际应用场景中展现出了至关重要的价值。在农业领域,它能够精确区分不同作物的生长状态、检测病虫害情况,帮助农民实现精准农业管理,提高农作物产量和质量;在环境监测方面,HSI可以有效识别污染源、监测森林植被覆盖变化以及水体质量等,为环境保护和资源管理提供关键数据支持;在地质勘探中,通过分析高光谱图像能精准判断矿石类型和地质构造,辅助矿产资源的寻找与开发。这一切都得益于HSI具有丰富的光谱信息,其每一个像素点都包含有数百个波段的光谱数据,相较于传统多光谱图像,它能够呈现出更细致的地物特征,极大地提升了地物分类的精度和可靠性。然而,HSI的高维度特性却带来了极具挑战性的“维度灾难”问题。在高光谱影像分类中,这种“维度灾难”具体表现为:随着特征维数的不断增加,一方面数据量呈指数级增长,导致计算复杂度急剧上升,对计算机的存储和运算能力提出了极高的要求;另一方面,在高维空间中,数据变得稀疏,类内离散度增大,不同地物类别之间的可区分性变得模糊。这使得分类器在学习过程中容易出现过拟合现象,即在训练数据上表现良好,但在实际应用中的泛化能力很差,最终导致高光谱图像的分类精度呈现先增后减的趋势[1]-[3]。因此,为了保证高光谱影像分类的准确性和效率,降低高光谱数据的维度显得尤为重要。传统的高光谱数据降维手段主要为波段选择和波段提取[2] [4]。波段选择是在原始的高维波段中,通过某些准则或方法在原始波段中选择出若干个对目标任务最有用的波段。而波段提取是对高光谱遥感影像所有波段进行数学变换,提取对后续应用最为有效的波段。
波段提取相较于波段选择具有几个独特的优势:1) 波段提取通常通过降维或特征学习的方式将原始数据映射到新的空间,因此能够通过组合多个波段或通过流形学习等方法自动提取出更具区分性的特征,而不单纯依赖于原始波段的物理意义。相较于波段选择,波段提取不仅关注特定波段,还能够捕捉波段之间的复杂关系,因此在处理非线性或复杂模式时具有更强的适应性[5];2) 在高光谱数据中,虽然不同物质在光谱上通常会有独特的表现,但由于光谱分辨率和光谱范围的限制,部分物质的光谱特征可能会出现重叠或相似的情况。波段选择方法依赖于选择最能区分目标的波段,但可能无法有效捕捉数据中复杂的光谱关系。相比之下,波段提取方法能够通过降维或特征学习等手段,将多个波段的信息进行融合,从而有效避免了“异物同谱”的问题,并能够在更高维度上进行特征表达,提升分类精度和对物体光谱特性的理解。
传统的波段提取方法主要为线性的降维方法。其中应用最广泛的波段提取算法是主成分分析(Principal Component Analysis, PCA)。然而,线性降维方法主要适用于数据空间具有线性结构的情况。而在高光谱遥感数据中,由于其较高的光谱分辨率,许多异物同谱的地物在高维空间中的分布往往非常接近,形成多个相互独立的小数据云团。这些云团之间并非呈线性分布,因此线性降维方法在这种情境下可能难以有效处理。而在非线性降维方法里,流形学习(Manifold Learning)可有效地挖掘和保持非线性数据结构[6],近年来受到人们的重视。其中等距映射ISOMAP是最具有代表性且为广泛应用的算法。
ISOMAP是建立在多维尺度空间MDS的基础上,尽可能保留数据点之间几何性质,即保持数据点之间的流形距离。该算法的目的是通过保留数据点之间的“全局”几何结构来实现有效的降维。ISOMAP算法在高光谱数据降维中已经被广泛应用,2007年,Dong等人[7]将ISOMAP算法和DPIM算法结合定量分析高维流形和低维数据集之间的关系,最后实验发现可以有效地降低高光谱数据的维数。2011年,杜培军等人[8]采用ISOMAP算法对AVIRIS高光谱遥感影像进行降维处理,验证了其有效性。光谱角分类(SAM)是一种常见的高光谱遥感影像分类方法。本文在此基础上,提出一种改进的ISOMAP算法降维和改进的SAM算法分类,分类效果要优于原始数据直接分类。
2. 实验数据
本文选用高光谱数据集Salinas-A,该数据集常用于高光谱图像分类任务,通过分析图像中的光谱特征,研究人员能够精确识别和分类地表覆盖类型,这种分类能力在农业监测、环境评估和地质勘探中具有重要应用。Salinas-A的像素为86 × 83。对于每个像素,数据集包含了224个光谱波段。该数据集的像素类别总共分为6类。数据的细节如下表1所示。
Table 1. Details of Salinas-A
表1. Salinas-A的细节
索引 |
类别 |
像素个数 |
1 |
Brocoli_green_weeds_1 |
391 |
2 |
Lettuce_romaine_4wk |
616 |
3 |
Lettuce_romaine_5wk |
1525 |
4 |
Lettuce_romaine_6wk |
674 |
5 |
Lettuce_romaine_7wk |
799 |
6 |
Corn_senesced_green_weeds |
1343 |
Salinas-A数据集包括了6个具体的类别,除此之外的所有像素类别均为索引为0的背景。Salinas-A的彩色图像和真实地面图像如下图1所示。
(a) 波段45、32、38的合成图像 (b) 真实地面图像
Figure 1. Visualization of the Salinas-A dataset
图1. Salinas-A数据集的可视化
右图真实地面影像中除了白色(白色部分为背景),其他颜色从上到下依次对应着6种地物:Brocoli_green_weeds_1、Lettuce_romaine_4wk、Lettuce_romaine_5wk、Lettuce_romaine_6wk、Lettuce_romaine_7wk、Corn_senesced_green_weeds。
3. 基于改进的ISOMAP降维和改进的SAM高光谱图像分类
3.1. ISOMAP算法
首先构建基于样本间关系的近邻图
。近邻图中近邻点的选取有
近邻法和
法这两种常用方法。当样本点
与
是近邻点时,将两点用边连接;若不是近邻点,则两点间不进行连接。
根据我们构建的近邻图
,如果
与
是近邻点,则使用欧式距离表示两点之间的距离。如果
与
不是近邻点,则通过使用最短路径算法(如Floyd算法)计算数据点之间的最短路径距离。
最短路径计算完成后,得到一个新的距离矩阵
,该矩阵包含了数据点之间的全局距离信息。然后,使用经典的MDS方法来进行降维,对距离矩阵
进行中心化处理:
上式中,
为中心矩阵,计算公式为
,
为单位矩阵,
为所有元素为1的列向量,
为数据点数量。计算矩阵
的特征值及其对应的特征向量,取前
个最大的特征值
和特征值所对应的特征向量
,即可以组成映射矩阵
。这一步骤将高维数据点映射到低维空间,使得在低维空间中数据点之间的距离关系尽可能地保持与原始高维空间中的距离关系一致。
ISOMAP是全局非线性算法,满足高维空间中的任意两点间的测地关系在低维空间中保持不变,可更好地表达原始高维空间中数据的几何关系。
3.2. SAM分类
在高光谱数据中,每个像素可以看作一个在高维光谱空间中的向量。设像素
的光谱向量为
,参考光谱向量为
,则光谱角的计算公式为:
,其中
为向量
与
的点积,
、
分别为向量
和
的模。通常将光谱角最小的参考光谱所对应的地物类型赋给该像素。
3.3. 改进的ISOMAP降维和改进的SAM分类
在ISOMAP算法降维时,我们第一步就是构建近邻图。在构建近邻图时,我们常常用欧式距离来计算距离。但是欧式距离在高维空间中会受到维度诅咒的影响,随着数据维度的增加,数据点之间的欧式距离分布变得更加均匀,导致难以准确衡量数据点之间的真实相似性。而光谱角(SAM)度量相对来说对数据维度的敏感性较低,它更关注光谱曲线的形状特征,而不是数据点在高维空间中的绝对位置关系。所以本文受到光谱角的启发,将光谱角用来替代欧式距离来构建近邻图,即计算:
其中,
为向量
与
的点积,
、
分别为向量
和
的模。对于每个点
,找到其基于光谱角的
个最邻近点,即找到满足
为前
个小的点
来构造近邻图。
光谱角度量是基于向量之间的角度来衡量相似性,而不是像欧式距离那样依赖于向量的长度。在高光谱数据中,光照变化主要影响光谱反射率的整体强度,但光谱曲线的形状(反映在光谱角度上)相对保持不变。另外,在高光谱图像分析中,尤其是在识别具有相似光谱特征但反射率存在一定差异的地物类别时,基于光谱角度量构建的近邻图能够更准确地反映数据的内在特征关系。这有助于后续的降维、分类等操作更有效地发现数据中的模式和结构,提高分析结果的可靠性。
而在分类时,我们用光谱一阶导数的差异和曼哈顿距离相结合来替代光谱角(SAM)的度量。因为光谱一阶导数可以突出光谱曲线的变化趋势,可以更精确地捕捉到光谱曲线形状的细微差异,从而增强对不同地物光谱特征的区分能力。在实际应用中,对于一些光谱特征相似但在特定波段存在微小变化的地物,这种方法能够更敏锐地检测到这些差异,提高分类的准确性。而曼哈顿距离主要基于数值的绝对差异,它在一定程度上受光照引起的光谱反射率整体强度变化的影响相对较小。同时,光谱一阶导数在一定程度上也可以减少光照变化对分类的干扰,因为它关注的是光谱曲线的斜率变化,而不是绝对反射率值。将曼哈顿距离和光谱一阶导数的信息相结合,综合了光谱反射率的数值差异和光谱曲线形状变化的信息。这种多特征融合的方式可以提供更丰富的判别依据,使分类算法能够从多个角度评估数据点之间的相似性。即:
其中,
为向量
与
的曼哈顿距离,
为向量
与
的光谱一阶导数的差异,向量
的光谱一阶导数我们定义为:
类比SAM分类,改进后的分类方法为:对于每个像素点
,计算
与所有参考光谱
的度量
,
为参考光谱的个数。我们把像素点
分类到最小的一个度量
所对应参考光谱的类中。
4. 实验结果与评价
在ISOMAP降维时,参数k的取值为15 [8] [9],降维维数d取为类别个数6。不考虑背景的情况下(即排除标签为0的像素),本文算法分类结果与PCA降维后再用SAM算法(PCA-SAM)分类结果,直接用SAM算法分类结果作比较。采取的评价指标为Kappa系数、类别准确度(Class Accuracy)和总体精确度(Overall Accuracy, OA),本文算法分类结果和SAM分类结果评价指标具体如下表2和表3所示。
Table 2. OA and Kappa comparisons between the algorithm in this paper with the SAM algorithm and the PCA-SAM algorithm
表2. 本文算法和SAM算法、PCA-SAM算法的OA、Kappa对比
|
Kappa |
OA |
本文算法 |
95.2993 |
96.0546 |
SAM |
72.9957 |
77.3934 |
PCA-SAM |
79.4506 |
82.7412 |
Table 3. Accuracy comparison of accuracy per category between the algorithm of this paper with the SAM algorithm and the PCA-SAM algorithm
表3. 本文算法和SAM算法、PCA-SAM算法的每个类别准确度对比
|
本文算法 |
SAM |
PCA-SAM |
Brocoli_green_weeds_1 |
99.7442 |
99.7442 |
99.7442 |
Lettuce_romaine_4wk |
94.8052 |
92.8571 |
63.9610 |
Lettuce_romaine_5wk |
98.7541 |
64.2623 |
99.8688 |
Lettuce_romaine_6wk |
98.8131 |
99.2582 |
86.6469 |
Lettuce_romaine_7wk |
99.2491 |
98.9987 |
99.3742 |
Corn_senesced_green_weeds |
89.2033 |
54.8771 |
55.1005 |
整体来看,从OA和Kappa系数中可以看出,本文提出的新算法在分类上要优于PCA-SAM算法和SAM算法。对于单个类别,本文的算法对于每个类别的准确度都是要优于SAM算法的,尤其是在Lettuce_romaine_5wk和Corn_senesced_green_weeds两个类别上更加明显。与PCA-SAM算法对比,本文算法在Brocoli_green_weeds_1、Lettuce_romaine_5wk、Lettuce_romaine_7wk三个类别上的准确度与PCA-SAM算法近乎一致,但是在Lettuce_romaine_4wk、Lettuce_romaine_6wk、Corn_senesced_green_weeds三个类别上,本文算法的准确度要明显地优于PCA-SAM。从下面的分类图2也能看出来。
(a) 本文算法分类图 (b) SAM算法分类图
(c) PCA-SAM算法分类图 (d) 地面真实图像
Figure 2. Classification maps of the Salinas-A data
图2. Salinas-A数据的分类图
从最后的分类图我们也可以看出来,SAM算法会把第3种类别(Lettuce_romaine_5wk)大量地误判为第6种(Corn_senesced_green_weeds)类别,把第6种类别(Corn_senesced_green_weeds)大量地误判为第4种类别(Lettuce_romaine_6wk)。而PCA-SAM算法把一些第4种类别(Lettuce_romaine_6wk)误判为第5种类别(Lettuce_romaine_7wk),但却会把第2种类别(Lettuce_romaine_4wk)大量地误判为第6种类别(Corn_senesced_green_weeds),第6种类别(Corn_senesced_green_weeds)大量地误判为第4种类别(Lettuce_romaine_6wk),本文的算法在这些类别的识别中,会大大地减少误判,从而提高整体的分类准确率。
5. 结论
SAM算法在高光谱影像分类时,有些类别会产生大量的误判。本文受到光谱角的启发,提出了改进的ISOMAP降维算法和改进的SAM分类算法来缓解这个问题。本文算法通过将ISOMAP算法中近邻图的距离度量由欧式距离改为光谱角度量来进行降维,同时将SAM的分类指标改为由曼哈顿距离和光谱一阶导数的差异来衡量,大大减少了某些类别的误判,从而提高了图像整体的分类精度。