融合空谱特征和集成超限学习机的高光谱图像分类

2018-09-28 07:06郭宝峰
测绘学报 2018年9期
关键词:训练样本波段分类器

谷 雨,徐 英,郭宝峰

1. 杭州电子科技大学通信信息传输与融合技术国防重点学科实验室,浙江 杭州 310018; 2. 杭州电子科技大学生命信息与仪器工程学院,浙江 杭州 310018

高光谱图像具有图谱合一、光谱分辨率高、光谱范围宽、光谱相关性强等特点,使得它在目标侦察、地质勘查、农业生态调查等方面发挥了重要的作用[1]。

高光谱图像较高的光谱维数和光谱分辨率为地物分类带来巨大的机遇,然而在训练样本有限的情况下,高光谱图像分类过程会存在Hughes现象,即小样本数目与高光谱维数之间的矛盾。为解决这一问题,一方面可采用特征提取和波段选择方法对高光谱图像进行降维处理[2-7]。典型的特征提取方法包括主成分分析和流形学习等[3]。波段选择是指按照一定的准则选择具有代表性的波段用于分类,可用的波段选择准则包括波段相关系数、互信息、JM距离和散度等[1]。文献[4]基于场景中的先验知识,采用互信息实现了波段选择。文献[5]采用JM距离和最小估计冗余协方差作为测度,提出了一种改进萤火虫算法的波段选择方法。文献[6]采用互信息等三种测度计算相邻波段间的相关性,然后对波段进行分类与重新分组。文献[7]采用粒子群算法同时进行波段自动选择和支持向量机参数优化,但是由于采用基于封装(wrapper)的波段选择方法,需要已知样本标签来计算优化的目标函数。文献[8]提出了一种结合波段分组特征和形态学特征的高光谱图像分类方法。上述方法虽然能够提取出不相关的有效波段组合,但是算法的复杂度较高。

对分类器进行优化设计是提高高光谱图像分类精度的另一手段。常采用的分类器包括支持向量机[9](support vector machine,SVM)、稀疏表示[10-12](sparse representation,SR)、协作表示[13,14](collaborative representation,CR)、集成学习法[6,15],深度学习法[16]等。SVM算法通过核函数将原始特征向量映射到高维空间,通过建立决策面实现分类,由于具有较强的小样本训练分类能力,因而在高光谱图像中得到广泛应用[9]。SR算法本质上是基于多近邻原则把待分类样本表示为字典中各训练样本的稀疏线性组合[11],通常情况下样本数较多时才能达到较高的识别率。当训练样本较少时,基于CR的分类性能优于基于SR的分类性能[13-14]。文献[13]在基于协作表示方法进行高光谱图像分类时,由于设计的算法能够有效结合空谱信息,故分类精度明显高于仅采用谱特征的分类精度。集成学习法通过合并一组弱分类器来提高分类器的性能,训练得到的强分类器性能优于任何一个弱分类器。文献[6]提出了一种基于分类器集成的高光谱遥感图像分类算法。其中波段分组通过波段分类和重新分组两个过程实现,基分类器采用最大似然法,采用基于选择性集成的分类器合成方法。该算法虽然能够取得较好的分类效果,但是存在算法过程复杂,难以实现对高光谱数据的实时处理。随着深度学习在计算机视觉等方面的成功应用,目前正逐步拓展到高光谱图像分类应用[16],但只有在使用较多训练样本的情况下才能取得较好的分类精度。

超限学习机(extreme learning machine,ELM)是具有单个隐藏层的前馈神经网络,由于将输入层与隐藏层间的连接权重随机化处理,通过求解岭回归问题计算隐层与输出层间的连接权重[17],因此ELM算法具有可调参数少、计算速度快和泛化能力好等优点。将超限学习机用于高光谱图像分类时,研究人员对其进行了拓展[15,18-19]。文献[15]提出了一种集成超限学习机算法对高光谱图像进行分类,由于是通过对训练样本进行重采样方式来训练弱分类器,因此不适用于训练样本较少情况下的分类问题。文献[18]采用差分进化算法对超限学习机的参数进行优化,以提高高光谱图像的分类精度和计算速度。文献[19]提出了两种基于空谱特征复合核的超限学习机算法,其中单一空间特征或谱特征核函数均由激活函数构成的核函数和一般高斯核函数组成。由于采用了空谱联合特征,因而算法分类精度较高。

针对文献[6,15]提出的算法中存在的波段选择算法复杂度高、采用的集成学习算法不适合小样本情况的问题,考虑到高光谱具有较高的光谱维数,本文采用对高光谱图像谱维进行平均分组和随机抽样的方式进行特征降维,基于集成学习理论设计了一种融合空谱特征和超限学习机的高光谱图像分类方法。提出的算法首先基于每个像素点的邻域信息提取空谱特征,然后对空谱特征的谱维进行平均分组和随机抽样,提取降维后的特征。采用超限学习机学习得到弱分类器,基于多次抽样特征得到的分类结果,基于投票表决法得到最终的分类结果。采用3个典型高光谱数据集进行了算法性能测试,验证了所提出的算法的有效性。

1 超限学习机原理

超限学习机是单隐层前馈神经网络,通过对输入层与隐层间的权重进行随机化处理,在目标分类、特征学习等方面具有良好的性能。因不需要迭代更新权重,故具有训练速度快的优势,通过合理地选择随机权重的分布,能够保证分类的精度。对某一类目标进行分类时,ELM的输出模型为[17]

(1)

式中,hi(x)=G(ai,bi,x)为第i个隐层节点输出映射;G为隐层节点采用的激活函数;x∈Rd,为输入特征向量;ai∈Rd,为输入层与第i个隐层节点的随机连接权重;bi∈R,为第i个隐层节点的偏置;L为隐层节点个数;β=[β1,β2,…,βL]T为隐层节点与输出节点间的连接权重向量。设训练样本数目为N,当目标类别数目B>1时,ELM优化的目标函数为[17]

(2)

式中,δ1>0,δ2>0,p,q=0,1,2,…,+∞;λ为正则化参数;H为所有训练样本经过L个隐层节点映射得到的变换矩阵,维数为N×L;由于是对多类别样本进行分类,故β此时拓展为L×B的连接矩阵;T为N×B目标类别矩阵,如式(3)所示,每一行中对应目标类别位置处为1,其余位置为-1。

(3)

当δ1=2,δ2=2,p=2,q=2时,式(2)具有闭环解,具体如式(4)和式(5)所示,I为单位矩阵。

(4)

(5)

2 融合空谱特征和集成超限学习机的高光谱图像分类

集成学习算法通过合并一组弱分类器来提高分类器的性能,训练得到强分类器的分类性能优于其中弱分类器的性能[20]。基于集成学习理论设计分类器时,可以采用样本重采样[21]、特征重采样[22]和样本权重迭代更新[15]等几种方式训练弱分类器。考虑到高光谱图像的训练样本数少、光谱维数高的特点(>100),可以采用对光谱特征进行随机抽样的方式进行降维,在降低高光谱特征维数的同时,为保证分类精度,可通过多次抽样,基于集成学习思想训练得到强分类器。本文算法首先基于空间像素邻域信息的均值提取空谱特征,然后通过对提取的特征向量进行平均分组和随机抽样实现特征降维,通过多次抽样训练得到多个弱分类器,最后采用投票表决法得到强分类器。算法流程如图1所示。

图1 融合空谱特征和集成超限学习机的高光谱图像分类流程Fig.1 Flowchart of hyperspectral image classification by combination of spatial-spectral features and ensemble extreme learning machines

2.1 空谱联合特征

试验研究表明,采用空谱联合特征能够提高高光谱图像分类的正确率[10-14,19]。基于空间像素邻域的光谱特性具有一定相似性,或属于同一类物质的假设,选择空间邻域内一定区域(例如9×9)的样本均值作为空域特征[13,19]。将空间中某一点(i,j)的谱特征记做f1(i,j),则基于空间邻域Q计算得到的空域特征为

(6)

式中,m为空间邻域Q内样本总数。空域特征计算结合了空间邻域信息,但在某些情况下,个别地物的样本数目少,空间分布不均匀,故可通过结合谱特征和空域特征来保证分类的精度。故对于高光谱图像中每个像素(i,j)提取的空谱特征为f(i,j)=f1(i,j),f2(i,j)。

2.2 波段平均分组与随机抽样

从前面分析知,可通过特征提取和波段选择两种方式降低光谱维数,通过设定合适的优化准则进行波段选择与分组,虽然能够获得有效的特征集合,但是算法计算复杂度较高[5]。考虑到高光谱相邻波段间具有一定的相关性,为保留原始光谱维度所包含的有用信息,可对原始空谱特征向量进行平均分组或基于优化度量的非均匀分组[8],分成若干个区间,然后从每个区间随机选择一定数量的波段进行组合,以达到特征降维的目的。图2为Indian Pines数据中16类典型地物的归一化光谱曲线,总计光谱维数为200,采用平均分组和非均匀分组两种方式进行波段分组的示意图分别如图2中的虚线和点划线所示。采用非均匀分组方法虽然能够发现相关系数等发生突变的波段,但是如何从分组后的波段集合中选择有利于目标分类的波段子集,同样是值得深入研究的问题。采用平均分组思想虽然是一种次优选择,但是考虑了地物光谱特性随波段的变化趋势。当采用随机抽样方法获得降维后的波段组合时,带有一定随机性,当光谱维数降低到一定程度时,分类精度同时会有所降低,故本文采用对提取的空谱特征进行多次抽样,基于降维后的特征训练若干分类器,采用集成学习思想训练得到用于高光谱分类的强分类器。设抽样后特征在原特征中的索引记做indexk,k=1,2,…,C为抽样次数,其中C为采用的弱分类器数目。

2.3 超限学习机参数学习

Wk=2*rand(L,size(indexk,1))-1

(7)

Biask=rand(L,1)

(8)

式中,rand(m,n)为产生行和列分别为m和n,满足均匀分布且位于区间[0 1]的随机数矩阵,size(v,1)函数用于获取矩阵或向量的行数。则第k个分类器对应的映射矩阵为

Hk=(G(Wk*F(indexk,:)+Biask))T

(9)

2.4 基于特征加权融合与投票表决的分类器集成

Bagging算法[21]通过对样本进行重采样训练得到弱分类器集合,这些弱分类器通过投票表决的方式确定分类标签。通过Bagging算法,能够有效降低分类算法的方差,提高算法的泛化能力。

(10)

Label(k)=argmaxj∈[1,2,…,B]{scorek(j)}

(11)

根据Bagging算法思想,对所有C个分类器的结果{Label(k)}k=1,2,…,C统计分类结果直方图得到{bin(j)}j=1,2,…,B,采用投票表决法确定目标估计测试样本y的类别R(y),如式(12)所示

R(y)=argmaxj∈[1,2,…,B]{(bin(j)}

(12)

3 试验结果分析

为验证本文提出算法的有效性,将其应用于Indian Pines、Pavia University、Salinas 3个典型高光谱数据的分类。3种高光谱数据的参数描述见表1[12],相应数据和地物类别真实分布可通过公开网站进行下载(http:∥www.ehu.eus/ccwintco/index.php?title=Hyperspectral_Remote_Sensing_Scences)。其中Indian Pines选用的数据是高光谱遥感数据AVIRIS92AV3C。该数据是美国印第安纳西北部地区植被影像,图像大小为145×145,波长范围为0.4~2.5 μm,原始波段数为220个,移除水吸收波段(104—108波段、150—163波段、220波段)后的波段数为200个。基于波段50、27和17生成的伪彩色图像如图3所示。基于Pavia University与Salinas高光谱图像的指定波段生成的伪彩色图像及相应真实地物分布图分别如图4和图5所示。

表1 试验用高光谱数据描述

图2 典型地物光谱曲线平均分组示意Fig.2 Schematic diagram of average grouping for spectral curves of representative ground objects

图3 Indian Pines伪彩色图像及真实地物类别(使用波段50、27、17)Fig.3 False color image based on bands 50,27,17 and ground-truth map for Indian Pines

图4 Pavia University伪彩色图像及真实地物类别 (使用波段60、30、2)Fig.4 False color image based on bands 60,30,2 and ground-truth map for Pavia University

图5 Salinas伪彩色图像及真实地物类别(使用波段50、30、20)Fig.5 False color image based on bands 50,30,20 and ground-truth map for Salinas

进行分类前,首先对输入的高光谱数据进行归一化,使数值范围位于区间[0 1]。评价指标分别为平均分类精度(AA),总体分类精度(OA)和Kappa系数(κ)[1]。

根据文献[19],本文用于提取空谱特征的邻域范围设定为9×9,从每个波段分组中选择的波段数目设定为5。试验中将波段平均分组数设定为弱分类器数目C,因此在每个波段分组中抽样次数确定的情况下(设定为5),弱分类器数目C影响空谱信息的保留程度。虽然不同类别物质的谱特征在不同波段分组中(或谱窗)的判别能力不同,但是考虑到进行分类器设计时,需综合利用不同波段分组中的联合表示能力,若损失信息过多,必将会降低高光谱的分类精度。对于Indian Pines和Salinas高光谱数据,设定C=20,Pavia University高光谱数据C=10,这样经过随机抽样获得的随机特征保留了原始特征约50%的信息。由于降维后空谱特征维数分别为100、50、100,故当超限学习机隐层节点个数大于100时,就能将特征由低维空间映射到高维空间,从而更有利于分类器设计。试验中,超限学习机隐层节点个数L=500,由于将原始高光谱数据归一化到[0 1],故激活函数G(·)设定为sin(·)函数。

正则化参数λ是影响ELM分类能力的主要因素,故首先通过试验分析了λ对于高光谱分类精度的影响。采用Indian Pines高光谱图像进行测试,训练样本数目设定为40(注:对于Indian Pines数据中样本数较少的几类,若训练样本超过总样本50%时,取训练样本为总样本的50%)。当加权系数设定为w=0.9,试验结果如图6所示。从图6中可以看出,对于谱特征和空域特征而言,λ的影响不尽相同,当λ=1e1时,基于谱特征的分类结果最好;对于空域特征,随着λ的增加,分类精度逐步增加,当λ=1e4时,分类精度最优,之后逐步下降。考虑到分类精度与训练样本的抽样分布有关,具有一定的随机性,为保证分类精度,故λ取较大的数值,在后续试验中对于谱特征和空域特征设定λ分别为1e2和1e5。

当λ=1e5时,改变权重系数w,对Indian Pines的分类结果如图7所示。考虑到高光谱图像中相邻像素属于同一类别/物质的概率较高,采用相邻区域内谱特征的均值作为特征向量,起到了低通滤波的作用,能够有效地降低噪声影响。从图7中可以看出,随着权重系数w的增加,分类精度逐渐提高并趋于平稳,当w=0.9时取得了接近95%的总体分类精度,且仅采用空域特征(w=1.0)的分类性能优于仅采用谱特征(w=0.0)的分类性能。在后续试验中设定空谱特征的权重系数为w=0.9。

图6 正则化系数对分类精度的影响 Fig.6 Influence of regularization parameter on classification accuracy

图7 权重系数对分类精度的影响 Fig.7 Influence of weighted coefficient on classification accuracy

为验证采用的集成学习算法的优势,分别采用谱特征、空域特征、空谱特征,利用ELM算法训练分类器进行分类,与本文分类算法进行比较,试验中采用的训练样本数分别设定为10、20、30、40、50,试验结果如图8—图10所示。从图8和图9中可以看出,对于Indian Pines和Pavia University高光谱数据,随着样本数的增加,本文算法的分类精度明显优于其他3种方法。当采用ELM训练分类器时,采用空域特征的分类结果与采用空谱特征的分类结果十分接近,这也说明通过结合空间邻域信息,能够有效地提高高光谱图像的分类精度。当采用集成学习思想训练分类器时,对获得的空谱特征进行特征抽样,进一步提高了分类器的分类精度。对于Salinas高光谱数据,当样本数超过30时,采用ELM和空谱特征的分类结果略优于本文算法,这主要是与高光谱图像中各类别样本的分布有关,对于Salinas而言,同一类别的目标分布相对集中,光谱特性相近,故样本的类内方差小,因而采用基于集成学习的超限学习机算法的分类结果并没有提高,而对于Indian Pines和Pavia University,每类目标分布相对广泛,同类目标光谱曲线差异较大,故本文算法充分利用了提取特征光谱维度的差异性,基于特征随机抽样的方式实现特征降维,提高了高光谱数据分类的精度。

图8 Indian Pines分类结果Fig.8 Classification result for Indian Pines

图9 Pavia University分类结果Fig.9 Classification result for Pavia University

将本文算法与支持向量机、稀疏表示算法进行对比试验,将3种算法分别记作EELM、SVM、SR。由前面分析可知,采用空域特征相比于谱特征具有更强分类能力,故其他算法均采用如式(6)所示的空域特征。采用SVM训练分类器时,采用径向基核函数,Gamma和惩罚因子C采用交叉验证方式获得;采用SR进行分类时,基于每类目标的训练样本,采用文献[24]提出的字典学习方法对其进行优化,字典数目与训练样本数目相同,重构算法采用SPAMS工具箱[25]提供的mexLasso(·)函数。总计进行了5次蒙特卡洛模拟试验,当训练样本数目为40时,试验结果分别见表2、表3和表4。文献[19]采用类似文献[9]的复合核方式融合高光谱的空谱特征,采用基于核映射的超限学习机算法用于高光谱分类,对Indian Pines、Pavia University和Salinas 3个高光谱数据的分类结果(AA,OA,Kappa)分别为(96.7±0.58,93.4±0.99,92.4±1.13)、(92.7±1.13,93.5±1.37,91.4±1.77)、(98.4±0.36,96.4±0.79,96.0±0.88)。对比文献[19]和本文算法的分类结果可以看出,本文算法在Indian Pines和Salinas的分类结果与之接近,但对Pavia University的分类结果更优,这说明了通过对高光谱数据进行降维,采用集成学习的方法训练分类器,能够提高高光谱数据分类的精度。

图10 Salinas分类结果Fig.10 Classification result for Salinas

表2 训练样本数为40时Indian Pines的分类精度

表3 训练样本为40时Pavia University的分类精度

表4 训练样本为40时Salinas的分类精度

试验中采用的PC机硬件配置如下:CPU为Intel(R) Core(TM) i5-3230M @2.6 GHz,内存为12 GB,显卡为NVIDIA NVS5400M,2 GB独立显存。采用的Matlab版本为Matlab 2017a。SVM和SR算法分别采用LibSVM和SPAMS工具箱实现分类,算法中主要函数均为C语言实现,本文算法仅采用Matlab函数实现。当采用训练样本数目为40时3种算法对3个高光谱数据中所有测试样本进行分类的总计耗时分别由表2至表4中的time项给出。SVM算法耗时与分类难度密切相关,计算复杂度由优化后支持向量的个数决定;SR算法与分类的类别总数,及构成每一类的字典元素个数有关,同时受稀疏系数恢复算法影响;本文算法的耗时与采用的弱分类器数目有关,同时受ELM算法中隐层节点个数影响。从表2—表4中可以看出,本文算法由于需要多个弱分类器投票表决确定目标类别,故算法耗时明显高于SVM算法的耗时。为提高本文算法的分类速度,一方面可以采用对算法进行优化,并采用C语言进行算法实现,另一方面采用的投票表决方法使得可以采用并行化处理来加速算法的运行速度。本文设计算法的耗时不受训练样本数目的影响,而SVM和SR算法均受训练样本数目影响,训练样本数目越多,算法耗时也同时会增加。

当采用不同数量或比例的训练样本时,进行5次蒙特卡洛模拟试验,本文算法的分类结果见表5。文献[9]采用多核SVM高光谱数据进行分类,对Indian Pines数据的总体分类结果为90.91%,本文算法的总体分类结果为93.64%,但本文算法采用了更少数目的训练样本。文献[6]也采用了集成学习思想设计分类器,当采用训练样本占总样本比例为50%时,对Indian Pines数据的总体分类精度达到了97.76%,本文算法的分类结果为99.26%,本文算法分类精度高,且无须复杂的优化过程进行波段选择;由于采用对样本重采样的方式训练分类器进行集成,而Indian Pines每类数据较少,故文献[15]并没有给出Indian Pines的分类结果;当训练样本比例为13%时,文献[15]对Salinas的总体分类精度为97.19%,本文算法采用10%的训练样本时的总体分类精度为98.59%,优于文献[15]的结果。

表5 不同训练样本数量下本文算法分类结果

这也说明,基于集成思想设计分类器时,对高光谱的光谱维采用平均分组和特征抽样的方式,在一定程度上优于基于样本重采样的方式,更有利于小样本情况下的高光谱图像分类。文献[12]提出了一种快速轻量级的基于谱信息的稀疏表示分类器,通过结合空间信息提高了高光谱图像分类精度。如表6所示,当训练样本比例为10%时,文献[12]对Indian Pines的总体分类精度为97.51%,本文算法为97.82%;当训练样本比例为5%时,文献[12]对Pavia University和Salinas的总体分类精度分别为98.59%和98.42%,本文算法分别为97.61%和98.62%。从结果对比来看,本文算法与文献[12]算法通过有效地利用空谱信息,均取得了较高的分类精度,且都具有实现简单、无需复杂优化过程的优点。当采用稀疏表示进行高光谱图像分类时,通过融合多种互补特征能够提高分类精度。文献[26]从高光谱图像中提取谱特征、形状和纹理特征,设计了基于联合稀疏表示的高光谱图像分类算法。当训练样本比例为5%时,文献[26]对Indian Pines的总体分类精度达到96.81%,高于本文分类精度(95.11%)。文献[27]同样采用多特征融合策略,设计了一种自适应稀疏表示高光谱分类算法。当训练样本比例为10%时,文献[27]和文献[10]的总体分类精度分别为97.91%和98.22%,本文算法分类精度为97.82%。本文设计方法仅采用了空谱特征,由于采用了集成学习思想设计分类器,因此容易扩展到多特征情况。

表6 其他算法对Indian Pines的分类结果

综合以上分析,本文算法基于集成学习设计分类器,通过对提取的空谱特征进行平均分组与特征随机抽样的方式,采用ELM设计弱分类器。试验结果表明,本文算法的分类精度优于文献中部分分类算法的分类精度,但本文算法具有实现简单、无须复杂优化过程、训练速度快等优点,更有利于实际应用。

4 结 论

针对高光谱图像数据波段多、冗余度大等特点,提出了一种基于空谱特征和集成超限学习机的高光谱图像分类方法。该方法在将ELM算法用于高光谱图像分类时,有效结合了目标空谱特征、波段分组与随机选择和集成学习3种手段,提高了分类模型的泛化能力。试验结果表明该方法具有以下优点:①结合空谱特征能够极大地提高目标的识别准确率;②对原始特征向量进行平均分组与随机抽样实现特征降维,与基于优化的波段选择方法相比降低了算法设计的复杂度;③超限学习机具有可调参数少、计算速度快等优点,采用集成学习思想提高了分类模型的泛化能力。由于采用的空谱特征使用了固定大小的窗口,没有针对待分类数据集进行优化,故当同一地物在连续空间范围样本较少时,提出的方法分类性能会有所下降。故下一步的研究方向是如何设计更加有效的空谱特征,并通过融合纹理、形状等互补特征,进一步提高高光谱数据分类的性能。

猜你喜欢
训练样本波段分类器
人工智能
基于PLL的Ku波段频率源设计与测试
小型化Ka波段65W脉冲功放模块
基于实例的强分类器快速集成方法
宽带光谱成像系统最优训练样本选择方法研究
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
融合原始样本和虚拟样本的人脸识别算法
基于稀疏重构的机载雷达训练样本挑选方法
M87的多波段辐射过程及其能谱拟合