韩彦岭,刘业锟,杨树瑚,崔鹏霞,洪中华
(上海海洋大学 信息学院,上海 201306)
高光谱遥感(hyperspectral remote sensing)技术是基于窄而连续的光谱通道对地物持续遥感成像的技术,它将成像技术和光谱技术相结合,能够获取地物接近连续的窄波段图像数据。高光谱影像(hyperspectral image,HSI)是在二维空间图像的基础上,增加了一维光谱数据,光谱通道数多达数十甚至数百个以上,具有“图谱合一”的特性,其内部包含的丰富二维图像信息和接近连续的光谱信息可以实现对地物的精细区分。近年来,HSI以其独特的优势在自然资源调查、生态环境调查以及农业和城市管理等领域发挥着重要的作用[1],其中利用HSI进行地物分类是其重要的研究内容。高光谱影像包含的丰富空间信息和接近连续的光谱信息为精细化地物分类提供了数据支撑。同时,其高维度、大数据量的特点也对传统地物分类方法提出了挑战。目前,传统的高光谱影像分类主要利用图像的光谱信息通过机器学习方法实现,如K近邻算法(k-nearest neighbor,KNN)[2]、最大似然法[3]、支持向量机(support vector machine,SVM)[4]等,这些算法属于浅层学习方法,难以提取隐含在高光谱数据中的深层特征,限制了高光谱分类精度的提高。在传统的方法中,为了充分利用高光谱遥感的空间信息进一步提高分类精度,需要通过一定的算法提取表征空间特征,如Su等[5]提出了一种基于灰度共生矩阵(gray level co-occurrence matrix,GLCM)纹理分析的渤海海冰检测方法;Imani等[6]通过GLCM、Gabor滤波(gabor filtering)和形态学轮廓(morphology profiles,MP)从相邻像素中提取空间信息,研究空间特征与光谱特征的不同组合。2016年,王建华等[7]提出了一种加入空间纹理信息的遥感影像道路提取方法,对图像进行空间自相关Moran指数计算,提取图像空间纹理信息,并将其加入到原始光谱波段中,取得很好的效果。近几年,人工智能爆发式发展,各种深度学习算法也逐渐开始发展成熟。大量研究表明,深度学习中的卷积神经网络在计算机视觉图像分类中相对于传统算法具有明显优势。Krizhevsky等[8]提出的AlexNet深度卷积神经网络,在ILSVRC 2012图像分类大赛中获得冠军,与传统分类算法相比错误率降低了10%左右;He等[9]提出了一种深度残差网络(deep residual network,Resnet),可以将网络的层数增加到上百层,提取更多的特征信息;Chen 等[10]在遥感领域提出了一种基于深度学习的高光谱影像分类方法;Zhao等[11]利用深度学习多尺度二维卷积网络(two dimensional convolution neural network,2D-CNN)对高光谱遥感影像进行深度表达并融合多波段光谱信息进行分类。这些方法大多没有充分利用遥感影像的空间信息。随着深度学习的深入发展,Li等[12]提出了三维卷积神经网络(3D-CNN),通过“立方体”的感受野直接提取高光谱影像的空间和光谱特征信息,分类精度相对于传统方法和2D-CNN具有一定程度的提升;Zeiler等[13]通过实验分析卷积网络中各层的特征图,观察每层卷积层提取图像的特征信息,实验表明,浅层卷积层主要提取了边缘、颜色、轮廓等局部区域信息,高层卷积层主要提取抽象的特征信息,对物体的大小、位置和方向敏感性低;Chopra 等[14]提出了孪生网络(siamese network),将2个CNN模型的特征融合起来,能够提高分类精度;Guo等[15]提出了一种基于CNN的空间特征融合方法,将卷积网络提取的空间特征与光谱特征融合起来进行分类;Song等[16]提出了深度融合网络的策略,对于Indian Pines、Salinas Pines、Pavia等数据集进行实验,获得了较好的分类精度。通过以上分析,目前的高光谱遥感影像分类中,采用的融合策略大多为光谱信息和空间信息的融合,针对不同卷积层提取的特征在分类中所起的不同作用方面研究较少。
基于上述研究,本文提出了一种基于深度特征融合的高光谱遥感影像分类方法,构建3D-CNN深度网络同时利用光谱信息和空间信息进行深度特征提取,分析不同网络层提取的特征信息的差异,研究不同的特征融合策略,有针对性地深度挖掘高光谱遥感影像中的空谱特征,进一步提高地物分类精度。本文采用“珠海一号”高光谱卫星数据进行实验,并与其他经典方法进行对比分析。
在3D-CNN提出之前,2D-CNN已经在图像分类、目标检测等领域获得广泛的应用。但是高光谱影像光谱波段通常有几十个以上,将2D-CNN应用于高光谱影像中,大部分是采用波段数据降维的图像预处理方法[16-21],没有很好地利用其空间信息,不利于进一步提高高光谱影像分类精度,因此本文基于3D-CNN进行深度空谱特征提取。
1)卷积层。式(1)为三维卷积网络的卷积操作计算公式。
(1)
2)激活函数。由于ReLU激活函数的计算复杂度非常低,而且收敛的速度很快[24],所以本文的实验都是采用ReLU激活函数,如式(2)所示。
(2)
3)Softmax分类器。Softmax函数一般用于多分类问题,经过大量实验表明,Softmax分类器具有良好的表现。Softmax的取值从0到1,表示属于对应类别的概率,因此对于Softmax的值加起来总和等于1。Softmax函数表达式如式(3)所示。
(3)
式中:Si为第i个神经元中Softmax函数激活计算出来的值;yi为第i个神经元的输出值;k表示需要分类类别的数量,如二分类器中k为2。
本文根据3D-CNN的特点,设计的三维卷积神经网络结构包括6层卷积层和1层全连接层,训练图像的输入大小为7×7×32,经过多层的卷积后得到1×1×26的特征信息。具体如图1所示。
图1 3D-CNNZ模型结构图
卷积神经网络在特征学习过程中,在低层网络主要提取颜色、边缘等纹理特征信息,在中间层重点提取区域信息,高层网络主要提取整体对象信息,此过程层层递进,最后利用Softmax分类器进行像素分类时主要利用了高层特征信息。为了更充分利用各卷积层提取的不同特征信息,本文在获取不同卷积层特征信息的基础上,结合不同的特征融合策略,研究它们对地物图像分类结果的影响,以期通过对不同层特征的深度融合改进分类精度。本文采用2种特征融合策略,一种是将卷积层的特征数据一维化后在全连接层中进行融合,另一种是在卷积层中对特征图像进行融合。
1)卷积层融合。不同卷积层提取的特征信息具有语义差异,通过对不同卷积层提取的特征进行融合可以深度提取地物特征并充分利用提取的特征进一步提高分类[25]。由于不同的卷积层输出的特征图维度不一样,故不能直接将2层的特征信息融合到一起。本文提出的卷积层融合策略,如图2所示,在①操作中,将Conv-n卷积层和Conv-(n+m)层特征信息融合,其中m>1。由于Conv-n卷积层和Conv-(n+m)卷积层特征图维度不相同,需要通过合适的卷积核大小对特征图降维,使得Conv-n卷积后特征图的维度大小与Conv-(n+m)相同,此时可对2层特征进行融合。卷积层特征融合表达如式(4)所示。
Ff=g(yn)+yn+m
(4)
式中:yn表示第n层卷积层的输出;yn+m为第n+m层的特征图;Ff为融合后的特征信息;g(x)为卷积操作。
图2 卷积层特征融合
2)全连接层融合。3D-CNN网络中最后一层卷积层输出的数据经过全连接层后变成长度为N的一维向量。为了充分利用前面卷积层的特征信息,本文提出的全连接层融合策略是将各层的特征信息进行一维处理后,得到一维向量数据,将其数据与输入全连接层的高层数据进行融合,可以得到多层次的特征信息。式(5)表示第n层卷积层特征信息。
(5)
式中:yn表示第n层卷积特征信息;k表示卷积核的个数;xi为第n层的第i张特征图的映射;卷积的第i个卷积核参数表示为W;b为偏置值。特征融合的计算如式(6)所示。
Ffusion=f(yn)+fc(yh)
(6)
式中:Ffusion为特征融合的特征信息;f(yn)表示对第n层卷积层的特征信息进行一维化的处理;fc(yh)表示全连接层yh的特征信息。
图3为全连接层融合,其中,红色框部分为特征融合,Conv-n为第n层特征信息,Conv-H为最后一层特征信息。操作①是对第n层卷积层特征信息进行一维化处理后传输到全连接层进行融合。
图3 全连接层特征融合
由于卷积神经网络的各层卷积层所提取的信息各不相同,浅层卷积层主要是反映物体的边缘、轮廓、颜色等特征信息;高层卷积层主要反映了具有显著姿态变化的整个对象。本文通过低中高层融合方法和中高层融合方法比较不同层特征信息对分类性能的影响,提出一种基于3D-CNN的多层特征深度融合算法。
1)低中高层融合方法。低中高层融合方法利用低中高层的特征信息,使用全连接层融合策略,对每一层获得的特征图进行一维化处理,处理后的特征信息在全连接层中进行融合,输入Softmax分类器进行分类,获得其特征信息对高光谱影像分类精度的影响。低中高层特征融合结构在图3的3D-CNN模型基础上进行改进,具体如图4所示。
图4 低中高层特征融合结构图
2)中高层融合方法。为了分析低层特征对遥感影像分类的影响程度,中高层融合采取全连接层策略,只将中高层特征信息在全连接层进行融合,与低中高层融合方法进行比较,分析低层和中层特征信息对图像分类结果的影响。中高层特征融合结构如图5所示。
图5 中高层特征融合结构图
3)多输入中高层融合方法。通过低中高层融合方法和中高层融合方法的分析,本文最终提出一种基于3D-CNN的多层特征深度融合算法。在一个感受野中,因为其值为随机生成,故同一张图像同一个感受野在不同层卷积中得到的特征信息也不相同。为了获得更加丰富的特征信息,采用全连接层融合和卷积层融合策略,对实验进行样本增强和特征增强。在实验前将已处理的训练图像集Lable分别输入不同卷积层中,如图6的多输入中高层特征融合结构图,在①操作中,将Lable输入Conv1,进行Conv1~Conv6层直接卷积运算。在②操作中,把Lable通过调整卷积核大小为[3,3,3],以获得与第2层卷积层Conv2相同维度的特征图,并将其特征图在Conv2融合。在③操作中,将Lable通过调整卷积核大小为[4,4,4],将特征信息在Conv3中融合。对于图中②③,相当于只进行了5层和4层卷积,这样的目的是获得更多图像数据的同时也获得更多不同卷积层的特征图。
图6 多输入中高层特征融合结构图
本文的算法流程如图7所示。首先将高光谱数据进行预处理并制作样本库,对样本库中的数据分为训练样本和测试样本,将训练数据输入3D-CNN模型中,实验在3D-CNN模型中进行融合。本文提出2种融合策略,蓝色虚线框①,为全连接层融合,融合的特征信息为不同卷积层的特征信息;蓝色虚线框②为卷积层融合,在该过程中,将训练样本输入多个卷积层中进行融合。
图7 实验方法流程图
多输入中,高层特征融合采用卷积层融合和全连接层融合相结合策略,具体实现如算法1所示。
算法1 多输入中高层特征融合算法
输入:
训练图像大小:M×M×B;
训练样本集:Label1;
测试样本集:Label2;
设置每批输入样本数量:batch_size;
卷积核大小:kernel_size;
设定迭代次数:epoch;
卷积网络层数:N;
开始:
(1)图像预处理
步骤1:输入高光谱影像数据;
步骤2:从步骤1输入的数据提取带标签的样本,每个样本大小为M×M×B,形成样本库;
步骤3:将样本库随机分为训练样本集Label1和测试样本集Label2,训练样本和测试样本比例为1∶1;
(2)3D-CNN特征融合
步骤4:在训练样本中,分批将所有样本输入3D-CNN网络,设置batch_size(batch=25)参数,参数值表示每批样本数;
步骤5:对网络前N/2层进行卷积层融合,将训练样本集Label1输入Conv1后,调整卷积核大小kernel_size,通过卷积操作对训练样本集Label1提取特征获得特征图feature2,…,featurek(k 步骤6:对网络后N/2进行全连接层融合,对Conv(N-k)…Conv(N-1)、ConvN分别进行一维化处理,将得到的一维化特征信息输入全连接层; 步骤7:在训练的过程中,卷积层采用ReLU函数做非线性激活,将全连接层融合的特征输入Softmax交叉熵损失函数,通过反向传播机制计算每个参数的梯度,利用Adam优化算法更新网络参数权重; 步骤8:设置epoch次训练使得模型收敛并得到最佳训练模型; (3)结果预测 步骤9:将测试样本Label2输入最佳的训练模型,经过Softmax分类器对预测标签进行预测,根据预测标签和真实标签计算混淆矩阵。 步骤10:通过计算混淆矩阵分析模型性能。 输出:总体分类精度(Overall Accuracy,OA)、Kappa系数 结束。 珠海一号OHS高光谱卫星是我国唯一完成发射并组网的商用高光谱卫星,它对于水体、植被等具备识别与分析的能力,本实验围绕基于“珠海一号”卫星拍摄的高光谱影像进行地物分类展开分析,如图8所示,实验选取3套数据集。 珠海一号卫星高光谱影像总共包含32个波段,光谱分辨率为2.5 nm,空间分辨率为10 m,波段范围在400~1 000 nm,实验采用的各数据集拍摄时间以及经纬度如表1所示。 图8 实验数据遥感图 表1 各数据集拍摄时间和经纬度 研究区域影像已做相对辐射定标、几何校正处理。实验选择3种样本,分别为水体、建筑、植被3个类别。类别描述如表2所示。 表2 地物类别 为了提高实验效率,选取原始图像大小为5 056×5 056×32的部分区域进行实验分析,所选实验区域大小为2 000×2 000×32。本文在选取样本过程中,首先提取高光谱数据中典型的河流、植被、建筑等类别的像素点的光谱特征反射率曲线,并以此为参照,选择感兴趣的像素点并与参照像素点的光谱曲线进行对比,光谱曲线相近的归为一类,作为该类别的训练样本,参照像素点的光谱曲线如图9所示。 图9 3种地物的光谱反射率 获取3D-CNN输入样本则是根据上述已划的分类别像素点获取,其具体步骤为:对于每一类的像素点,以其中心取M×M的邻域,将邻域内所有像素点作为输入数据,最终形成大小为M×M×B的数据块[26-27]。如图10所示,一个方格表示一个像素点,以像素点m为中心,其空间邻域内m1~m8与m点属于同类别的概率很大,在选取3×3图像大小时,以m为中心点,包含邻域[m1,m2,m3,m4,m5,m6,m7,m8],以此方法可获5×5,7×7,…,n×n等图像大小。本文使用7×7×32的三维图像大小进行训练。 图10 提取训练图像大小方法 3个研究区域的数据集样本总数和各类样本总数如表3所示。 表3 各数据集样本数(像素点) 在本文的实验中,3D-CNN网络模型、低中高层特征融合模型、中高层特征融合模型、多输入中高层特征融合模型,均采用相同的模型参数设置。其主要模型参数如表4所示,卷积核大小为[2,2,2];为了获得更有价值的参数,步长stride设置1;同时,因实验设备运算能力限制,卷积核个数1~3层卷积层从2开始以2的倍数递增,第4层卷积层开始均为8,实验采用的填充方式为Valid,由于输入的训练图像尺寸较小,实验不包括池化层。 表4 3D-CNN模型参数 本文采用3D-Resnet(three dimensional deep residual network)、孪生网络、SVM 3种算法作为对比算法,表5为对比算法和本文算法的调优参数设置,其对应参数为本文实验数据中的最优参数。实验以Windows7系统为操作平台,ENVI 4.8和Matlab软件为制作图像标签工具,采用TensorFlow-GPU框架。 表5 本文算法和对比算法的最佳调优参数 1)基于3D-CNN的实验结果。为了进行对比分析,本文先不采用融合策略,通过基本的3D-CNN模型挖掘地物空谱信息对这3套数据集进行实验分析,所使用的网络模型结构如图3所示。由于样本随机选择,为了避免实验最终结果具有偶然性,对每套数据集进行5次实验,取其平均值作为总体分类结果,表6为基于3D-CNN基本模型的总体分类精度OA和Kappa系数。从表6可以看出,由于3D-CNN模型可以同时利用光谱信息和空间信息进行地物识别,在3组数据中都取得了较好的分类结果,总体分类精度分别为91.20%、92.43%、92.66%,Kappa系数分别为0.875 7、0.886 9、0.896 7。 表6 3D-CNN模型分类精度评价 2)不同特征融合策略的实验结果对比。卷积神经网络的各层卷积层所提取的特征信息不一样,随着网络层数递增,提取到更多的特征。为了进一步提高地物分类精度,充分挖掘不同层次特征对分类结果的影响,本节进行了不同的特征融合实验并对实验结果进行对比分析。 (1)低中高层特征融合。采用图4的低中高层融合模型,利用低中高层的特征信息,因为每一层特征的维度不一样,所以对每一层获得的特征图进行一维化处理,处理后的特征信息在全连接层中进行融合,分析其特征信息对高光谱影像分类精度的影响。 采用5次实验的平均值作为最终分类结果,将融合后的实验结果与采用基本3D-CNN网络结构的结果进行对比,对比结果如表7所示。 表7 低中高融合分类精度评价 由表7可以看出,本文将低中高层特征信息融合到全连接层通过Softmax进行分类,在3套数据集上都获得了较高的分类效果,分类精度分别为94.38%、94.42%、93.97%,其分类精度相对基本3D-CNN均有一定程度的提升,在3套数据集上分别提高了3.18%、1.99%和1.31%。 (2)中高层特征融合。采用图5的中高层融合模型,只将中高层特征信息在全连接层进行融合,分析低中层特征信息中哪层特征对图像分类结果影响比较大。使用3套数据集进行测试,其最终结果为5次结果的平均值,对比结果如表8所示。 表8 中高层融合分类精度评价 上述结果表明,低中高层特征融合总体上稍高于中高层融合的分类精度,但差别很小,精度差别分别为0.01%、0.13%、0.13%,二者的差别在于前者少了浅层的特征信息,说明在卷积神经网络中,相对于中高层特征信息,浅层的卷积特征信息对于图像的分类精度影响并不大。 (3)多输入中高层特征融合策略。为了获得更多图像数据的同时也获得更多的不同卷积层特征,采用图6的多输入中高层特征融合结构图,分别对3套数据进行实验,实验结果为5次结果平均值,如表9所示。 表9 多输入中高层特征融合分类精度评价 实验结果表明,相对于无特征融合算法和中高层特征融合算法,多输入中高层特征融合方法在3套数据集上均获得了最好的分类效果,分类精度分别为96.46%、95.88%、94.80%,相比中高层融合方法分别提高了2.17%、1.59%、0.96%,相比基本3D-CNN方法分别提高了5.26%、3.45%、2.14%。 3)不同融合策略分类图。通过对不同融合策略实验对比分析,本文提出的多输入中高层融合算法取得了比较好的效果,说明通过增加输入图像和融合不同层提取的特征信息可以获得更好的分类精度。为了验证本文算法的有效性,将上述不同融合方法结果进行可视化。为了更好地展示本文方法在纹理细节方面的识别效果,在3个实验中针对不同的融合策略都选取了局部区域进行放大,如图11中右下角的黑色矩形框为右上黑色矩形框标注的局部细节放大图。从图11可以看出,相比其他融合策略,本文提出的多输入中高层特征融合方法在局部纹理细节的提取上更加精确,地物边界更加完整清晰。 图11 不同融合策略分类结果图 4)与其他图像分类方法的对比分析。为了进一步验证本文方法的有效性,与传统高光谱分类方法SVM及其他典型的深度学习方法,如孪生卷积神经网络、3D-Resnet进行对比。采用相同的标签样本库,同样取5次实验的平均值作为总体分类精度,对比实验结果如图12所示。 图12 不同算法精度分析评估 由图12可知,相对于传统分类方法SVM以及其他的深度学习方法,本文提出的方法通过对多层特征进行深度融合,在3套高光谱数据中均获得了最高的分类精度。SVM算法属于浅层学习且只利用了地物光谱信息,对地物特征的表达能力有限,获得较低的分类精度,在3套数据中精度分别为80.45%、83.12%、82.46%;孪生网络使用二维卷积,没有充分利用高光谱影像的空间信息,故其精度明显低于3D-CNN的方法。本文方法由于充分利用了高光谱影像的空-谱联合特征,通过特征融合集成了不同网络层的特征优势,相对于其他方法获得了最高的分类效果,分类精度分别为96.46%、95.80%、94.80%。 在时间效率方面,本文方法和其他方法的对比结果如表10所示,结果均取5次实验运行时间的平均值。由于SVM属于浅层学习方法,相比深度学习方法在时间效率上表现最好;孪生网络采用的是二维卷积网络结构,时间成本也相对较低;3D-Resnet和本文方法均使用三维卷积网络,训练模型需要的时间相对较长。本文方法为充分挖掘不同卷积层的特征进行多输入中高层特征融合,增加了网络结构的复杂性,相比其他方法,其训练时间稍长。 表10 不同方法的训练时间 s 为充分挖掘不同卷积层提取的特征在高光谱遥感影像分类中的作用,本文提出了一种基于深度特征融合的高光谱遥感影像分类方法。实验分析表明,在深度卷积神经网络中,低层提取的特征信息对于高光谱影像分类结果影响不大,而中高层提取的特征包含地物的纹理、轮廓等抽象语义特征,对最终分类结果具有重要作用。本文结合不同层次所提取特征对分类影响的结果分析,采用多输入中高层特征融合方法,通过在不同卷积层多次输入训练样本以增加特征多样性,再融合中高层的特征信息进一步增强对高光谱影像的特征表达,最后利用“珠海一号”获取的3套高光谱数据进行地物分类实验,并与3D-Resnet、SVM、孪生网络等典型高光谱影像分类方法进行对比分析。结果表明,相比其他图像分类方法,本文提出的方法都获得了最好的分类性能,进一步验证了本文算法的有效性。 文中的实验数据虽然地物类别偏少,但所提方法对高光谱遥感影像分类具有一定的普适性,本文可为其他领域的高光谱遥感地物分类提供思路和参考。 致谢:本文所用高光谱实验数据由珠海欧比特宇航科技股份有限公司提供,对此表示真挚的感谢。2 实验与分析
2.1 数据集描述
2.2 实验设置
2.3 实验结果和分析
3 结束语