刘翠连,陶于祥*,罗小波,李青妍
(1.重庆邮电大学 计算机科学与技术学院,重庆 400065;2.重庆邮电大学 空间大数据研究中心,重庆 400065)
近年来,高光谱图像分类技术受到了普遍关注,在很多不同的领域中发挥作用。目前该技术已广泛用于国防、农业、地质、环境、海洋勘探和其它领域[1]。与多光谱图像相比,高光谱图像不仅具有丰富的特征信息,而且具有多波段和高数据维度的特征,这也导致高光谱图像分类难以实现高分类精度[2]。高光谱自身特性和外在的影响又增加了对高光谱图像分类的困难,使得高光谱图像分类任务更加艰巨。因此,研究一个有效提升高光谱图像分类性能的方法模型具有极其重要的实际价值。
在高光谱图像分类领域,一些学者提出了许多方法和模型,典型的是深度学习方法,它能够提取鲁棒特征,相比于其它方法具有明显的性能优势[3]。深度学习方法被应用在高光谱遥感分类领域中并取得了一定效果[4]。随后,逐渐出现了其它的深度学习模型,并被引入到遥感图像分类中。主要有稀疏自动编码器[5]、深度信念网络[6]和卷积神经网络(convolutional neural network,CNN)[7]等。然而,在空间特征提取阶段,深度信念网络和稀疏编码器网络两个模型要求将输入图像块展平为1维向量,这会忽略原始图像中的空间结构信息,造成空间特征丢失的问题[8]。CNN在图像分类领域具有极其重要的价值,并且在图像分类领域表现出显著性能[9]。ZHANG等人[10]提出了基于1维卷积、2维卷积(two-dimensional convolutional neural network,2D-CNN)的光谱空间双通道网络架构。ZHAO等人[3]提出了一种基于CNN和降维技术的光谱-空间分类方法,然后通过归一化指数函数(softmax)回归分类器将其组合在一起。但是参考文献[3]和参考文献[10]中并没有充分利用联合光谱-空间相关信息。同样,XU等人[8]提出了一种光谱-空间特征统一的网络模型结构(spectral-spatial unified networks,SSUN),该结构中使用2D-CNN和长短期记忆分别用于提取空间特征和光谱特征,但这项工作需要对原始高光谱数据进行一系列预处理以满足不同的输入要求,且模型结构较复杂。ZHONG等人[11]提出了一种基于光谱空间信息的残差结构,它将原始高光谱图像的3维块作为输入数据来学习空间和光谱特征信息,采用残差块来改善梯度的反向传播,并使用批量正则化来规范模型的学习过程,但是它需要大量的标记数据来微调影响其泛化能力的训练参数,同时也存在梯度消失导致的信息丢失现象。此外,LI等人[12]提出了混合CNN,它将1维、2维和3维卷积网络(three-dimensional convolutional neural network,3D-CNN)分别作为3个特征提取分支,但是该工作中采用的是最后一层神经网络的输出来提取空间特征,不足以捕捉细粒度的空间细节。
针对以上的研究,作者设计了混合CNN的高光谱图像分类(hybrid convolutional neural network,HY-CNN)方法。将2D-CNN和3D-CNN结合充分利用光谱-空间特征信息,并使用空间增强分支来提高空间信息的利用率。同时使用多尺度融合策略将浅层特征和深层特征进行融合,缓解了神经网络在池化过程中特征信息丢失的现象,保证了提取信息的完整性,进而改善分类效果。最后,通过softmax训练分类器得到最终结果。此外,由于可用的训练样本有限,通常会出现欠样本训练而引发的过拟合问题,在该方法中同时使用了丢弃函数(dropout)和整流线性函数(rectified linear unit,ReLU)以减缓过拟合。
近年来,许多研究表明CNN对高光谱遥感图像分类提供了先进的结果[11-15]。由于高光谱图像(hyperspectral image,HSI)自身高维数性和数据量丰富的特性,它自身的空间和光谱特征信息对分类性能起了决定性作用[15]。CNN是目前在高光谱图像分类领域应用最广泛的深度学习网络[16]。参考文献[17]中利用3D-CNN对高光谱图像进行光谱-空间综合特征提取,且分类表现效果较佳。2D-CNN相比于3D-CNN参数较少,过拟合的风险较低,有研究表明,2D-CNN对高光谱图像的空间特征提取具有良好的性能[18]。CNN还具有局部连接和权重共享两大特点[19]。它只需要相邻层之间神经元的部分连接就可实现连通,同时也可以共享权重进而来减少训练参数[20]。本文中基于3D-CNN和2D-CNN研究高光谱分类方法,该方法结构如图1所示。图中,FC是卷积神经网络结构中的全连接层(fully connected)。
Fig.1 Algorithm structure model
如图1所示,提出的框架使用双分支结构用于高光谱图像特征提取,主要包括3个部分:第一部分是空间特征增强分支;第二部分是光谱-空间特征分支;第三部分是多尺度特征融合,最后使用softmax分类器以得到最终预测分类结果。
卷积层是CNN框架中至关重要的部分,通过计算输入数据和相应卷积核之间的点积之和来实现卷积操作,卷积层的每个通道可以表示为:
(1)
式中,Di是卷积特征图的第i个通道,wi代表第i个卷积核,bi是第i个特征图的偏置项,xj是先前层的第j个通道,操作符·代表的是2维卷积运算,Ω(·)代表的是非线性ReLU激活函数。Ω(·)可用来改善CNN的非线性并且加快网络模型的训练进程,它可以用如下公式表示:
(2)
鉴于高光谱遥感图像空间分辨率不高且空间结构信息缺乏。在第1个分支中,将3D-CNN和2D-CNN结合作为空间特征提取的分支。首先,将原始高光谱数据进行降维,其次再进行切块划分操作。本文中使用的是主成分分析(principal component analysis,PCA)技术来实现降维。之后将切块得到的3维立方体输入到对应的卷积网络结构中,进行一系列相应的卷积和池化操作。在3D-CNN中,采用一层卷积、一层池化的架构。在该网络中的第i层、第j个特征图中位置为(x,y,z)神经元的连接值vij,xyz计算公式如下所示:
vij,xyz=
(3)
式中,Φ(·)是激活函数,Gi和Fi是卷积核空间维度尺寸的高和宽,Hi是卷积核的光谱维度尺寸,是当前(第j个)特征图到第i-1层特征图的连接索引,wijt,fgh表示与第t个特征图的位置为(f,g,h)的连接值,v(i-1)t,(x+f,y+g,z+h)是i-1层第t个特征图在位置为(x+f,y+g,z+h)的值,bij是偏置值。
通过两层3维卷积对高光谱图像进行特征信息提取,已经提取到了光谱和空间特征,在此基础上再经过两层2维卷积进一步增强空间特征信息,将具有4层网络结构的混合CNN作为空间增强分支。在2D-CNN中,同时也采用一层卷积、一层池化的架构。在该网络中的第i层第j个特征图中位置为(x,y)的神经元vij,xy的连接值计算公式如下所示:
(4)
式中,wijt,fg表示与第t个特征图中的位置为(f,g)的连接值,v(i-1)t,(x+f,y+g)是i-1层第t个特征图在位置为(x+f,y+g)的值。
通常3D-CNN可以同时进行光谱和空间综合特征信息提取,且取得的分类性能显著,因此在该分支中,本方法使用具有3层结构的3D-CNN来提取光谱-空间特征。相比于较深层次的3D-CNN,3层结构能够更好地提取光谱-空间特征信息,并且也不会使得网络结构较复杂化。由于池化操作可以去除部分特征冗余信息,压缩特征图,使得网络结构复杂度缩减,参数量减少。为了尽可能地降低参数量,在本方法模型中使用的是池化操作中的一种最为常用的最大池化操作。通过最大池化可以减少特征图的尺寸和计算参数量,加快模型训练性能。
在传统的CNN中,全连接层通常被添加在池化层之后,在全连接层后面再使用softmax函数获得预测结果。但是忽略了各层之间的互补和强相关的空间和光谱特征,这将导致在卷积和池化过程中大量的信息特征丢失现象。基于该问题,本文中设计了一个多尺度特征融合策略,将浅层特征和深层特征进行结合确保了提取特征的完整性,使得输入分类器的特征具有多尺度特性,并减少池化过程中特征信息丢失的现象。与浅层特征相比,深层特征能够表示更抽象和复杂的结构信息,对于局部变化具有更强的鲁棒性[8]。最后,该框架结合使用了ReLU和dropout策略,有效缓解了过拟合问题并提高了该算法的泛化性能。将两个分支结合之后输入分类器中的多尺度特征可以表示如下:
I=c([v(L1,L2,L3)],[v(L4)])
(5)
式中,I代表的是整个框架的全连接层输出特征向量,L1,L2,L3代表的是第1个分支中的全连接层输出向量,L4代表的是第2个分支中的全连接层输出向量,v(x)代表的是add函数,c(x)代表的是concat函数。
在该方法中,将分别所得的增强空间信息和综合光谱-空间可分性信息进行特征融合后,之后通过softmax函数对输入的标签向量进行预测,该函数可以表示为:
(6)
式中,pi是该标签向量属于第i类别的概率值,ui和uj表示在softmax层中输入样本的第i个和第j个类别,k代表地物种类数。
在该方法模型中,作者使用的是交叉熵损失函数。首先,通过它可以计算得到模型的预测标签和真实标签之间的差异大小。之后,为了优化网络权重再使用Adam优化器来实现,从而进一步使得网络模型达到最优值即损失函数趋于最小化的状态。该损失函数可表示:
(7)
实验平台的配置为Intel Core i7-8700k CPU 3.70GHz,32GB,GPU NVIDIA GeForce GTX 1070,基于Windows 10为操作系统,开发语言是基于Tensorflow后端的Keras库和Python。
本文中使用的数据集分别是Indian Pines和Pavia University。Indian Pines数据集中的图像尺寸为145×145,可用波段数量为200个,包含16种土地覆盖类别,具体的地物覆盖类别数量信息如表1所示。Pavia University数据集中的图像尺寸为610×340,可用波段数量为103个,包含9种土地覆盖类别,具体的地物覆盖类别数量信息如表2所示。
Table 1 Category information of Indian Pines
Table 2 Category information of Pavia University
实验中需要对原始高光谱图像进行数据预处理。首先,实验中采用的是PCA法来减少频谱冗余信息,在Indian Pines数据集中选取了30个主成分,在Pavia University数据集中选取了15个主成分。之后,将Indian Pines数据集进行切块处理,对于两个不同的数据集,作者采用相同的空间尺寸25作为3维立方体的空间尺寸输入。Indian Pines数据集中使用的3维数据立方体尺寸为 25×25×30,Pavia University数据集中使用的3维数据立方体尺寸为25×25×15 。此外,实验中的迭代训练次数设置为100,批次大小为128,学习率为0.001。之后再使用Adam优化器的反向传播算法通过softmax函数训练该模型。
在第1个分支中,它主要包括两个3-D卷积层和两个2-D卷积层。两个3-D卷积层的卷积核是(3,3,7)和(3,3,5),相对应的滤波器的数量是8,16。两个2-D卷积层的卷积核是(3,3)和(3,3),采用的滤波器的数目都为64。在第2个分支中,使用3D-CNN来提取光谱和空间特征,该分支包含3个3维卷积层和3层池化层。这3个3-D卷积层的卷积内核分别是(3,3,7)和(3,3,5)和(3,3,3),相对应的滤波器的数目分别是8,16和32。在这两个分支中,均采用的是最大池化,在3维卷积层之后的最大池化尺寸为(2,2,1),在2维卷积层之后的最大池化尺寸是(2,2)。之后使用多尺度特征融合策略,将该双分支CNN得到的特征进行融合,可有效保证模型提取到特征的完整性。同时,ReLU和dropout的组合使用旨在缓解过度拟合的问题,有效提高了模型的鲁棒性和泛化性能。为了验证该算法的分类效果,实验中使用的训练样本数目占比为20%,测试样本数目占比为80%。实验中采用的评价指标分别是平均分类准确度(average accuracy,AA),kappa系数和整体分类准确度(overall accuracy,OA),在高光谱图像分类领域中,通常使用这些指标值的高低进行验证不同模型之间的性能差异。这些指标(AA,kappa,OA)的值越高,表明相对应算法模型的分类性能越有竞争优势。
表3和表4中分别给出了在不同数据集上不同方法得到的AA,kappa和OA的结果值。为了全面验证模型的性能,将该方法模型与未使用多尺度特征融合的方法(Proposed-1)支持向量机(support vector machine,SVM)[21],2D-CNN[18],3D-CNN[17],SSUN[8]等算法进行了对比。
从表3中的数据分析可知,在Indian Pines数据集上,该方法相比于SSUN而言具有很大的性能优势,3种评价指标OA,AA和kappa的值均增加了约2%;该方法相比于传统的神经网络2D-CNN和3D-CNN而言具有明显的性能优势,它能够更好地利用空间和光谱-空间信息;同时该方法相比于监督分类方法SVM而言也表现出了极大的竞争优势,分类性能有了明显的提升。从表3可知,该方法的波动幅度相对较小,性能表现相对较稳定。由于使用了特征融合使得该方法能够捕捉细粒度的空间细节信息,降低了特征信息损失,因此使用多尺度特征融合策略的HY-CNN方法模型相比于不使用多尺度特征融合的方法模型(Proposed-1),具有较好的性能。
Table 3 Classification evaluation index value(Indian Pines)
Table 4 Classification evaluation index value (Pavia University)
从表4中的数据分析可知,在Pavia University数据集中,该方法相比于传统的卷积网络3D-CNN而言,OA和kappa的值增加了约2%,AA的值增加了约3%。相比于2D-CNN,OA和kappa的值增加了约3%,AA的值增加了约4%。同时相比于先进的SSUN算法也表现出竞争优势,并且在该数据集上也表明了使用多尺度特征融合策略的HY-CNN方法具有性能优势且相对于其它方法性能较稳定。从表3和表4中 的分类精度结果可知,在两个数据集上,本文中提出的HY-CNN方法模型均进一步改善了高光谱图像的分类精度,并且也都表现出了较平稳的效果。
为了更加全面地验证HY-CNN方法的分类性能,在表5中也给出了在不同数据集上该方法的空间增强分支和光谱-空间分支各自的分类结果,其中空间增强分支作为其第1个分支,光谱-空间分支作为其第2个分支。
Table 5 Classification evaluation index values of different sub-branch
从表5中的数据分析可知,在Indian Pines数据集中,HY-CNN方法与自身的空间增强分支和光谱-空间分支相比较而言,AA增加了约2%,kappa增加了约1%,OA增加了约1%。在Pavia University数据集中,HY-CNN方法与自身的空间增强分支和光谱-空间分支相比较而言,AA和kappa的两个评估指标增加了约0.5%,OA增加了约0.4%。同时在表4中也给出了未使用多尺度特征融合的方法模型(Proposed-1)的分类结果,表4和表5中的数据均能够证明HY-CNN方法具有一定的分类性能优势。
传统的图像一般包含3个通道,高光谱遥感图像不同于传统的图像,具有丰富的光谱信息,波段数较多,且它存在“休斯现象”和“同物异谱”、“异物同谱”,容易受到外界复杂的空间分布和环境变化的影响,导致高光谱遥感图像的分类精度不理想。针对具有3维结构的高光谱遥感图像,将本文中的方法与一般的图像分类方法(ResNet50,DenseNet169等)进行了对比分析。表6中给出了这两个方法在不同数据集上的AA,kappa和OA的结果值。可以看出:HY-CNN方法也表现出一定的性能优势。
Table 6 Comparative analysis of the results of different methods
图2和图3中分别给出了在Indian Pines和Pavia University两个数据集上实验所得到的混淆矩阵。
Fig.2 Confusion matrix (Indian Pines)
图2和图3中的右侧是一个色度带,每个类相应的样本数量用相对应的颜色显示。从图2和图3 可以看出,使用HY-CNN方法模型在Indian Pines和Pavia University不同数据集上实验得到的混淆矩阵中误分类现象较少。通过以上混淆矩阵效果图可以直观看出该方法的分类性能,它的主对角线上的元素越多,表示该方法分类性能越好。同时,还可以便于分析每个类别中是否存在误分类现象以及相应不同地物类别的分类效果差异。
Fig.3 Confusion matrix (Pavia University)
图4和图5分别是在两个不同数据集上(20%训练样本,80%测试样本)相应方法的分类可视化图(Indian Pines,Pavia University)。
从图4c和图5c可以看出,3D-CNN方法模型存在一些误分类问题,分类性能相对不佳。图4d、图4e和图5d、图5e相比于3D-CNN方法而言,性能有了极大提升,减少了一些误分类现象。由于使用了多尺度特征融合策略,使得提取到的特征具有更强的表示能力,因此,图4e和图5e相比于图4d和图5d而言,其分类性能有了进一步改善,且分类结果图具有较平滑和清晰的视觉效果。从图4和图5中的结果分析可知,该方法针对高光谱图像的分类表现结果具有竞争优势,在两个数据集上本文中所提出的HY-CNN方法显示出了先进的效果。
Fig.4 Visualization results (Indian Pines)
高光谱遥感图像自身数据维数较高,数据量丰富,它自身的空间特征和光谱特征信息对分类性能起了决定性作用。因此,提取高光谱遥感图像中的特征信息是提高分类性能的一个至关重要的步骤,本文中提出了一种基于混合CNN的高光谱遥感图像分类方法(HY-CNN)。首先,使用一个分支来提取光谱-空间特征,有效地利用光谱-空间信息;其次,由于高光谱图像的空间分辨率较低缺乏空间结构特征,另一个分支作为空间增强分支,使得提取到的特征信息具有更好地表示能力,有效地利用空间信息。再次,该方法中使用特征融合保证最终提取特征的完备性,它能够更好地捕捉特征细节信息,减少了信息损失;最后,在两个公开的高光谱遥感数据集上实验,实验结果表明,该方法相比较于传统的方法和一些先进的方法而言具有较好的分类性能。