APP下载

基于复杂度聚类的自适应遥感场景分类

2020-12-16梁文韬李晋源宁浩宇

计算机工程 2020年12期
关键词:复杂度灰度准确率

梁文韬,康 雁,李 浩,李晋源,宁浩宇

(云南大学 软件学院,昆明 650500)

0 概述

随着遥感图像获取技术的不断发展,人们可从遥感图像中获取更多有用信息。遥感场景分类是根据遥感图像中所提取的特征对遥感场景进行分类和识别。由于提升场景分类准确率可提高目标检测效果,更好地完成土地资源问题的覆盖率与利用率分析以及土地规划建设等任务[1],因此遥感场景分类作为遥感图像应用过程不可或缺的一环非常重要。遥感场景图像除了具有颜色、纹理、空间与光谱信息等特征以及包括多特征融合的描述子在内的浅层次信息[2-4],还含有较多深层次信息,增加了提升其分类准确率的难度。

本文提出一种基于复杂度适配的自适应遥感场景分类模型。充分利用遥感图像各层特征,构建具有多重特征的遥感图像复杂度评价矩阵,对图像复杂度进行层次聚类划分,并根据DenseNet、CapsNet和SENet神经网络对复杂度特征敏感度的不同,分别将其与不同复杂度图像子集匹配,最终得到遥感图像场景分类结果。

1 相关工作

1.1 基于模式识别的遥感场景分类

在遥感场景分类任务中,最小距离法、平行六面体法、最大似然法、等混合距离法、循环集群法等监督与非监督的传统识别分类方法应用较多,但是这些方法鲁棒性较弱且泛化能力不强,难以广泛应用,且分类准确率也很难提高。

1.2 基于神经网络的遥感场景分类

近年来,随着深度学习技术在计算机视觉领域的不断发展,其在遥感场景分类任务上取得众多成果,特别是卷积神经网络(Convolutional Neural Networks,CNN)模型在遥感场景分类任务中取得比传统方法更好的分类效果。在模型结构方面,文献[2]使用AlexNet、VGGNet-16和GoogLeNet网络获得远高于传统低层特征提取方法的分类效果。文献[5]利用PMS架构的DCNN模型获得比CNN模型更佳的分类效果。文献[6]建立卷积神经网络模型,降低图像变形引起的误差,从而获得优于传统方法的分类效果。在模型特征利用率方面,文献[7]利用深度学习模型-堆栈自动编码机提高对图像的特征利用。文献[8]使用局部二值模式(Local Binary Pattern,LBP)提高对图像的特征利用。文献[9]使用视觉注意机制提高纹理特征利用率。与传统分类方法相比,使用CNN进行遥感分类不仅可大幅提升准确性,还能获得更强的泛化性能。但目前相关研究主要采用卷积和池化操作获取图像全局特征,对遥感图像的特征利用率不高。

2 自适应网络场景分类模型

对于遥感场景分类任务而言,由于遥感场景图像信息量通常与场景种类和特征分布紧密关联,例如,沙漠、草地的图像信息量远少于商业区、港口的图像信息量。在场景特征分布方面,信息量较少的图像类别由浅层特征决定,信息量较大的图像类别由深层特征决定。因此,本文提出一种1×15维的特征属性描述矩阵划分不同特征分布的遥感图像,并对图像的复杂度进行描述。对遥感图像划分类别进行分析发现,图像按照复杂度分为3类时各类别的平均相似性最大,因此根据复杂度聚类获得低、中、高复杂度的3类图像。文献[10]指出不同结构的CNN与不同特征分布的遥感图像敏感度有差异,使用对应的CNN结构处理敏感度较高的遥感图像可充分发挥CNN固有特性,从而提高分类精度。仅加深和加宽网络模型虽然可提高图像分类任务的正确率[11-12],但会给算法效率、硬件条件带来更大压力,造成神经网络梯度不稳定与网络退化等问题,导致算法性能下降[13]。因此,针对不同特征分布的图像改进模型结构可获得更高的分类准确率和算法效率,并能适应更多的硬件条件[14-15]。各类神经网络中DenseNet、CapsNet和SENet结构分别对低、中、高复杂度图像敏感度最高。

本文针对上述情况提出与遥感图像特征复杂度分布相匹配的多维自适应模型。在对遥感场景图像进行分类处理时,先计算输入图像的复杂度描述矩阵(由颜色矩、灰度共生矩阵、信息熵、信息增益以及线占比等多重特征组成的1×15维矩阵),再根据上述特征采用层次聚类方式获得3种复杂度子集,最后分别使用DenseNet、CapsNet、SENet训练与其相适应的图像,以获得复杂度与神经网络自适应的模型。

2.1 图像复杂度矩阵

评价图像复杂度的方法较多,包括基于图像纹理、模糊数学理论、多特征集成的图像复杂度评价方法,以及基于信息论衡量的图像复杂度评价方法等[16-18]。由于遥感图像的颜色特征、轮廓、纹理特征较突出,因此本文基于前人研究工作[19-21]提出一种1×15维的特征描述矩阵,其中包括颜色特征、纹理特征、空间特征、信息熵特征、拉普拉斯边缘检测线占比等特征。虽然同类别地表类型图像在不同分辨率与成像方式下具有不同的深层次特征,但从中获得复杂度评价矩阵特征分布的方法类似,因此不同类别遥感场景在复杂度评价矩阵中的区别较明显。

1)颜色矩

颜色矩[21]是一种颜色特征评价方式,用矩表示图像颜色分布情况,其计算参数较少。为获得更佳的复杂度评价效果,通常采用一阶矩、二阶矩、三阶矩表示图像的颜色特征。颜色矩的计算公式如下:

(1)

(2)

(3)

其中,pi,j表示彩色图像第j个像素的第i个颜色分量,ui表示所有像素第i个颜色分量的平均值,N表示像素个数。图像的三阶颜色矩组成1个9维向量表示颜色特征,表达式为:

Fcolor=[μH,σH,sH,μs,σs,ss,μv,σv,sv]

(4)

2)灰度共生矩阵

灰度共生矩阵[22]是当图像中灰度级值为m的像素以及与其距离为δ(Δx,Δy)且灰度级值为n的像素都出现时,2个像素灰度级同时发生的概率将空间坐标映射为灰度对所构成灰度共生矩阵。灰度共生矩阵用p(m,n,d,θ)(m,n=0,1,…,L-1)表示,其中m和n分别为2个像素点的灰度级值,L为图像的灰度级,d和θ分别为2个像素点的距离关系和方位关系。从灰度共生矩阵中可获得包含图像纹理信息的子特征,因此本文从灰度共生矩阵中提取能量、熵、对比度以及倒数差分矩作为图像复杂度的评价子。

定义1(能量) 能量是灰度共生矩阵各元素值的平方和,用于度量图像纹理灰度变化稳定程度,反映图像灰度均匀程度和纹理粗细度特征,其计算公式为:

(5)

定义2(熵) 熵是图像包含信息量的随机性度量,即图像中纹理的信息量,反映图像的纹理特征,其计算公式为:

(6)

定义3(对比度) 对比度用于度量灰度共生矩阵值的分布和图像局部变化程度,反映图像中纹理清晰程度特征,其计算公式为:

(7)

定义4(倒数差分矩) 倒数差分矩反映图像纹理的同质性,即图像纹理局部变化程度,其计算公式为:

(8)

上述灰度共生矩阵的4个特征描述子构成4维向量特征,表达式为:

FGray=[Eng,Ent,Con,Idm]

(9)

3)图像信息熵

图像信息熵用于统计特征数量,可表示图像灰度分布的聚集特征,其计算公式为:

(10)

其中,a表示像素的灰度值且0≤a≤255,b表示邻域灰度均值且0≤b≤255,pa,b表示灰度值为a、邻域灰度均值为b的像素所占比例。

4)拉普拉斯边缘检测线占比

图像通过拉普拉斯边缘检测可获得图像轮廓线条灰度图,计算轮廓线数值与整体像素比值所得图像线占比L用来表示图像轮廓特征,即L=Lap/Img,Lap表示经拉普拉斯边缘检测后的像素矩阵,Img表示原像素矩阵。

将上述特征分量组合后得到图像复杂度评价矩阵,即描述图像复杂度所需的15维向量矩阵Ffeature=FGray+Fcolor+E+L,其结构如图1所示。

图1 图像复杂度评价矩阵的结构Fig.1 Structure of image complexity evaluation matrix

2.2 针对图像复杂度的层次聚类划分

层次聚类是一种无监督聚类,通过迭代计算各类别数据点相似度可构建1棵有层次的嵌套聚类树。本文采用自下而上的合并方法创建聚类树,层次聚类的合并过程为:计算2类数据点的相似性,再组合所有数据点中相似度最高的2个数据点,然后反复迭代该过程。层次聚类使用欧式距离计算不同类别数据点的距离相似度(D),计算公式为:

(11)

采用图像复杂度评价矩阵Ffeature计算各图像之间的相似性得到不同复杂度[23],从而获得不同复杂度的图像子集并映射到原始图像上,将原始图像按此规律进行划分,从而获得不同复杂度的图像子集(NWPU-RESISC45、UC Mered、WHU-RS)。本文使用Calinski-Harabaz分数评价类簇数不同时的聚类效果。Calinski-Harabaz分数是分离度与紧密度的比值,该值越大说明类自身越紧密、类与类之间越分散,即聚类结果更优,反之说明聚类效果不佳。Calinski-Harabaz分数的计算公式如下:

(12)

其中,m为图像数据总量,k为簇数,Bk为簇间协方差矩阵,Wk为簇内协方差矩阵,tr为矩阵的迹(矩阵主对角线上元素总和)。

对3类遥感图像子集复杂度矩阵进行簇数为2~5的聚类分析,得到Calinski-Harabaz分数如表1所示,可以看出当簇数为3时各类遥感图像子集所得Calinski-Harabaz分数最高,因此在中等类别数量规模的遥感场景图像中聚类划分簇数为3较合适。

表1 3类遥感图像子集所得Calinski-Harabaz分数Table 1 Calinski-Harabaz scores from three remotesensing image subsets

图2为3类图像子集图例。可以看出:第1类图像子集为草地、沙漠等,信息量较少;第2类图像子集为湖泊、运动场等,信息量适中;第3类图像子集为商业区、港口等,信息量较大。因此,上述3类图像子集分别标定为低复杂度、中复杂度和高复杂度,各图像子集在不同复杂度下的数据量如表2所示。

图2 3类图像子集图例Fig.2 Legend of three image subsets

表2 3类图像子集在不同复杂度下的数据量Table 2 Data quantity with different complexity ofthree image subsets

2.3 自适应复杂度子集的神经网络

本文引入DenseNet、CapsNet、SENet 3种网络作为自适应复杂度子集的神经网络模型集成对象。

2.3.1 DenseNet

DenseNet[24]将卷积和池化层的输出特征作为卷积层的特征输入,其结构如图3所示。

图3 DenseNet结构Fig.3 DenseNet structure

在本文遥感场景分类任务的DenseNet中,每L层有L(L+1)/2个连接,即L层的输出为xl,表示为:

xl=F(xx-1)+xl-1+xl-2+Lx1

(13)

DenseNet能很好地保留与利用模型中卷积层所得的图像低维特征[25],而沙漠、草地等低复杂度图像的内容和高维特征较少。DenseNet既可充分利用低维特征也能避免高维特征干扰,因此其对于复杂度较低图像的敏感度较其他复杂度的图像更强,通常用DenseNet训练低复杂度遥感场景图像。

2.3.2 CapsNet

与传统卷积神经网络相比,胶囊网络(Capsule Network,CapsNet)[26]用向量信息取代标量信息,即在传统神经网络的输入线性求和阶段增加耦合系数cij,其输入Sj的计算公式为:

(14)

其中,μi为上一层CapsNet的输出,Wij为每个输出的权值,上一层每个胶囊神经元以不同强弱的连接输出到下一层某个神经元。耦合系数cij的计算公式为:

(15)

其中,b初始值为0,由更新bij←bij+Wijμivj获得。在前向传播求Si的过程中,Wij为随机值,b初始化为0可得到cij,μi为上一层CapsNet的输出,通过Cij、Wij、μi的值可得到下一层输入,CapsNet就能更好地保存图像的位置与方向信息,CapsNet结构如图4所示。对于遥感图像而言,拍摄角度变换、距离不同会造成神经网络的误判,而CapsNet能很好地解决上述问题,从而获得更高的分类准确率[27]。由于中复杂度图像通常目标较完整,比低复杂度图像具有更多深层次特征,且不像高复杂度图像分布复杂与特征繁多,因此对于中复杂度图像,CapsNet不会遗漏其整体位置、方向等重要特征,也不会受更高维特征的干扰,较其他网络敏感度更强。而低复杂度图像具有的特征更少,其位置分布和轮廓特征不明显,CapsNet分类效果不如DenseNet,因此通常用CapsNet训练中复杂度遥感场景图像。

图4 CapsNet结构Fig.4 CapsNet structure

2.3.3 SENet

SENet[28]采用特征重标定策略,先通过Squeeze操作压缩特征,用1个实数表示各二维特征通道,该实数有一定的全局感受野,输出的维度和输入的特征通道数相匹配,Squeeze操作的计算公式如下:

(16)

然后进行Excitation操作,通过学习更新参数w进行特征通道之间相关性建模,再进行Reweight操作,即选择Excitation输出表示特征后,每个特征通道的重要性权重与原始特征矩阵进行相乘加权,从而完成在各通道上对原始特征的重标定。SENet能对复杂图像的多维特征进行排序筛选,以避免冗余特征干扰,达到更好的分类效果[29],其结构如图5所示。高复杂度图像通常包含庞大的信息量,在位置关系、轮廓特征、颜色特征等方面更复杂,从中提取的有用特征较其他复杂度图像更多。如果不考虑上述特征则会降低最终的分类效果,而SENet能全面考虑与有效利用各特征,对高复杂度图像而言,SENet较其他网络敏感度更强。因此,通常用SENet训练高复杂度遥感场景图像。

图5 SENet结构Fig.5 SENet structure

2.4 本文自适应算法

对于遥感场景分类任务中的遥感图像,先使用复杂度评价矩阵抽取遥感图像的复杂度特征,再使用2.2节中的聚类方式对该复杂度评价矩阵进行聚类,从而获得3种复杂度的图像子集,分析其中的图像并进行高、中、低复杂度标定,然后分别用2.3节中的3种神经网络进行训练,最终获得复杂度聚类模型和与对应复杂度敏感的神经网络模型。用复杂度聚类模型对测试数据进行复杂度划分,再将对应的复杂度敏感模型进行分类,从而获得更精准的分类结果。在对各复杂度敏感的神经网络模型训练过程中,为获得更全面的特征分布,对不同复杂度的图像数据进行增强[30]处理,使其扩充为原来的5倍,算法的具体流程如图6所示。

图6 本文自适应算法流程Fig.6 Procedure of the proposed adaptive algorithm

该算法具体步骤如下:

输入有标签的训练集train,无标签的测试集test

输出测试遥感图像的类别

1)对训练集train进行多特征抽取,获得包含颜色矩、灰度共生矩阵、信息熵、信息增益、线占比多重特征的1×15维复杂度描述矩阵。

2)根据复杂度描述矩阵使用层次聚类方法将训练集train中图像划分低、中、高3个复杂度,获得trainL(低复杂度)、trainM(中复杂度)、trainH(高复杂度)和复杂度聚类模型M0。

3)采用数据增强方法将trainL、trainM、trainH分别扩充为原来的5倍,再使用DenseNet、CapsNet、SENet分别训练复杂度低、中、高的数据集,获得与对应复杂度敏感的神经网络模型M1、M2、M3。

4)测试集test通过复杂度聚类模型M0划分属于低、中、高3个复杂度的测试图像testL、testM、testH,再将其分别通过对其复杂度敏感的模型M1、M2、M3,所得结果即为测试集图像的类别。

3 实验与结果分析

本文分别在NWPU-RESISC45数据集、UC Mered数据集、WHU-RS数据集3个数据集上验证所提模型的有效性。NWPU-RESISC45数据集具有45个遥感场景类别,其中每类有700张尺寸为256像素×256像素的图像。UC Merced数据集来自美国地质勘探局国家城市地图,共有21个遥感场景类别,其中每类有100张尺寸为256像素×256像素的图像。WHU-RS数据集来自武汉大学由Google Earth截取的卫星遥感图像,共有19个遥感场景类别,其中每类有50张尺寸为600像素×600像素的图像。为确保实验的有效性,对训练模型的数据集进行旋转、平移、缩放与对比度拉伸变换等数据增强[30]处理,将其扩大5倍。

3.1 实验设置

本文实验环境为GTX 1080Ti 12核32 GB机器,采用GPU训练。训练阶段,使用Shuffle方式训练,Batch设定为16。为保证训练效率,图像尺寸统一缩放为64像素×64像素,网络输入是Batch_size为16×64×64×3的4维张量。为使各模型训练收敛后作为最终模型,各模型的epoch设置为100。在训练神经网络过程中,DenseNet和SENet模型使用Binary_crossentropy作为损失函数,CapsNet模型使用Margin_loss作为损失函数,SENet模型使用SGD算法作为优化器,DenseNet和CapsNet模型使用Adam算法作为优化器。以准确率(A)作为最终分类效果的评价指标。

(17)

其中:TP表示实际与预测都为正的样本数;FN表示实际为正而预测为负的样本数;TN表示实际与预测都为负的样本数;FP表示实际为负而预测为正的样本数。

3.2 实验结果

本文实验与近期遥感场景分类任务进行对比分析,结果如表3所示[2,30-31]。可以看出:在NWPU-RESISC45、UC Mered、WHU-RS数据集上,基于LLC、BoVW的传统模型准确率较低,约为0.5;AlexNet、VGGNet等神经网络模型准确率较高,在0.8以上;而本文所选DenseNet、CapsNet、SENet等单一模型的准确率明显优于其他模型,表明该类模型对遥感场景数据有更好的适应性;本文自适应模型在3个数据集上的准确率较单一模型平均提高3个百分点,分类效果提升明显。

表3 不同模型在3种数据集上的准确率Table 3 Accuracy of different models onthree datasets

图7~图9分别为DenseNet、CapsNet、SENet和本文自适应模型分别在NWPU-RESISC45数据集、UC Mered数据集、WHU-RS数据集上得到的各类别准确率。可以看出:对低复杂度的草地、沙漠等类别,DenseNet准确率较高;对高复杂度的商业区、港口等类别,SENet准确率较高;对中复杂度的运动场、机场等类别,CapsNet准确率较高。本文自适应模型在3个数据集上的整体准确率均高于其他模型。

上述实验表明,本文提出的自适应模型对遥感场景分类准确率提升效果明显,既可有针对性提取与利用不同复杂度遥感图像的特征,又能综合各神经网络模型优势,实现遥感图像分类的高准确率。

图7 4种模型在NWPU-RESISC45数据集上各场景类别的准确率Fig.7 Accuracy of each sence category of four models on NWPU-RESISC45 dataset

图8 4种模型在UC Mered数据集上各场景类别的准确率Fig.8 Accuracy of each sence category of four models on UC Mered dataset

图9 4种模型在WHU-RS数据集上各场景类别的准确率Fig.9 Accuracy of each sence category of four models on WHU-RS dataset

4 结束语

针对遥感图像复杂度与神经网络结构存在适应性关系的情况,本文提出一种自适应神经网络分类模型。建立遥感图像复杂度评价矩阵,计算获得不同复杂度的图像子集,并对图像复杂度进行层次聚类分级,得到与遥感图像复杂度匹配的多维自适应神经网络模型。实验结果表明,与DenseNet、CapsNet、SENet等模型相比,该模型具有更高的遥感场景分类准确率。下一步将在评价矩阵中引入肯德尔等级、可决系数等指标,使模型对大规模数据具有更好的普适性。

猜你喜欢

复杂度灰度准确率
采用改进导重法的拓扑结构灰度单元过滤技术
基于灰度拉伸的图像水位识别方法研究
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
一种低复杂度的惯性/GNSS矢量深组合方法
高速公路车牌识别标识站准确率验证法
求图上广探树的时间复杂度
基于最大加权投影求解的彩色图像灰度化对比度保留算法
基于灰度线性建模的亚像素图像抖动量计算