APP下载

基于多特征融合的遥感图像场景分类

2020-07-07王倩宁芊杨晓敏陈炳才雷印杰

现代计算机 2020年15期
关键词:分类器特征提取分类

王倩,宁芊,杨晓敏,陈炳才,雷印杰

(1.四川大学电子信息学院,成都610065;2.新疆师范大学物理与电子工程学院,乌鲁木齐830054)

0 引言

随着硬件技术的快速发展,遥感图像(RSI)的分辨率越来越高。不仅推进了遥感技术的发展,同时也催生出一系列基于遥感图像的算法研究,其中场景分类占有重要的地位,旨在自动完成RSI 的分类。RSI 分类在环境保护,地质调查和测量,土地利用和土地覆盖的确定[1],矿产勘探等社会规划中有重要作用。对于RSI分类,特征提取是重要的过程。

近年来,大量关于RSI 特征提取的方法被提出。现有的RSI 特征提取研究方法主要分为人工特征提取方法和自动特征学习方法。人工特征提取方法包括传统的角点特征提取方法和边缘特征提取方法。早期,角点特征提取是特征提取的主要方式,例如加速段测试特征(FAST)[2-3],定向的FAST 特征和旋转的二元鲁棒独立初等特征(BRIEF)结合(ORB)[2],尺度不变特征变换(SIFT)[4]等。边缘特征提取的算法广泛用于像素级分类,例如罗伯特算子(Roberts operators[5])和Prewitt算子[5]。方向梯度直方图特征(HOG)[6]和光栅操作单元(ROPS)[7]等是基于直方图统计进行局部特征提取,但是在大多数实验中,对语义的表达较差。人工特征提取方法对研究人员的经验要求很高,并且全局特征的生成对研究人员和设备的要求更高,耗时更多。相比之下,自动提取特征的方法更简便。

大多数自动提取特征的方法,尤其是基于深度学习的方法,对图像描述的能力很强。卷积神经网络AlexNet 最早是由Alex Krizhevsk[8]等提出,相比于初期大大提升了图像分类效果,由于卷积层比较少,所以对图像深层特征提取也不是很充分。随着卷积神经网络的发展,提出更多深层的网络模型,因为基于深层卷积神经网络特征提取的便利性和更好的分类结果,所以神经网络广泛应用于各个领域的识别。Wan 等人[9]提出一种合并局部特征的方式,再通过信道编码形成全局特征,但是局部特征不是很明显的特征,对图像的描述能力相比从卷积神经网络中提取的特征更差。Liu等人[1]提出将从CaffeNet 和VGG-VD 的卷积层提取的特征融合成深度描述符,再通过Fisher 编码的方式形成全局特征,但是编码过程中不像自学习模型出来的特征囊括更多有用的特征,导致得到的分类效果没有很明显的提升;Cheng 等人[10]研究了基于CNN 方法的卷积特征包(BoCF)的新语义描述,以增加场景分类的效果,使用的是深层的预训练单模型(GoogleNet、VGGNet)卷积层特征,但是单模型提取的特征比较有限,所以最后的分类效果也不是很理想。

为了解决单模型卷积层特征的不足以及避免处理卷积层特征导致的繁琐过程,本文先从预训练模型VGGNet-16 和ResNet-50 全连接层中提取特征,然后根据PCA 变换与特征融合的先后顺序,提出两种策略用于简化特征处理过程以得到较好的分类效果。策略一是分别将两个CNN 预训练模型提取的特征由PCA变换处理,得到有效的特征投影,再进行特征融合,最后使用随机森林进行分类;策略二先融合两个CNN 预训练模型中提取的特征,再进行PCA 变换得到有效特征投影,最后输入到随机森林分类器中进行训练分类。经过实验验证,两种策略在UCM 和AID 两个数据集上均有较好的表现,分类正确率有明显提升。此外,本文在进行分类时采用的随机森林分类器可以减少模型的训练时间,加快训练过程。

1 原理及方法

1.1 原理描述

(1)PCA 变换

线性降维算法被广泛应用于识别领域,其中重要的代表是PCA[11]。顾名思义,该算法主要实现主成分选择的功能,也是在不损失特征质量的前提下压缩训练过程的主要技术。在现在的研究中,Wang 等人[12]提出了一种基于线性PCA 的方法(LPCANet[12]),通过合成由LPCANet 获得的空间信息来缩短源数据集和目标数据集之间的空间距离,引入PCA 就是用于特征描述符的区分和尺寸减小。所以PCA 是通过线性变换将原始特征映射为每个维度的一组线性独立表示。

PCA 数学模型如下:

X=x1,x2,…,xm是样本集,其中X 是m 维数据集。在新空间中超平面上的xi投影是WTxi。为了使所有采样点的投影尽可能分开,应尽量增加采样点的方差。其中XXT可以由(1)得到:

特征矩阵 XXT被分解,得到类似于λ1≥λ2≥…≥λk序列的特征值,对应于前i 个特征向量W=(W1,W2,…,Wi)是所需要的i 个主成分。

(2)随机森林

现如今,针对分类问题,提出了很多算法来解决。在目前的独立分类器中,随机森林[13]和SVM 都被广泛使用。与SVM 相比,尽管对于不平衡分类的性能更差,但它在平衡误差方面更好。特别是在训练速度,拟合能力和计算成本方面,随机森林更强大。随机森林分类器由多颗分类回归树(CART)组成,对于每个树分类器,训练数据集从训练数据集中自动反向采样。随机森林将每个树分类器的结果合在一起,形成森林分类器。最后的分类结果是所有的树分类器分类结果的平均值。

随机森林的数学模型主要是CART。在CART 中,区域R 中每个类的频率可以由N 个样本表示。在区域m 中的第k 类训练频率可以表示为:

其中I 定义为:

对于随机森林,最佳分割点由类的分割纯度决定。

对于纯计算,有三种方法,Gini 不纯度,熵(entropy)和错误率(error)。公式定义如下:

1.2 方法描述

通过对现存卷积神经网络进行研究,每一种卷积神经网络都具有很好的分类效果,虽然VGGNet-16 比大部分卷积神经网络模型参数更多,但是他只含有一个损失函数,所以相对于同期的别的模型,可拓展性更强,而ResNet-50 则是一个具有可拓展性的轻量型网络模型,所以本文选择VGGNet-16 和ResNet-50 两种预训练神经网络模型作为特征提取器,提取的特征分别记FeatureV=[v1,v2,…,vk]和FeatureR=[r1,r2,…,rm],将从两个神经网络得到的特征进行融合就得到了融合的特征,如公式(7)所示。在此过程中可以获取到单模型不具有的特征来形成更加全面的、新的全局特征,从而提高分类的性能。

融合结果如公式(8)所示:

经过对PCA 的研究,发现PCA 在特征处理上有很多优势,不仅可以保持数据集的主要特征,而且还能降低特征维度,提高效率。由随机森林原理可知,其具有很强的数据稳定性,以及降低训练过拟合等特点,是很优秀的分类器。因此,基于上述考虑得出了如图1 所示方法,此方法首先从VGGNet-16 和ResNet-50 两种预训练神经网络模型中提取全局特征,随后根据PCA变换、特征融合的不同顺序,得到相应的融合特征,随后输入到随机森林中进行模型的训练及验证。

图1 本文方法

特征提取是本文算法的一个先导过程,数据集被输入到VGGNet-16 和ResNet-50 两种预训练模型中提取全局特征。全局特征指的是提取的特征和实际图片之间的联系,非常适合用于图像分类。在实验中,预训练模型仅用作特征提取器。使用CNN 预训练模型作为特征提取器时,由于卷积和池化计算的特性,小部分的图像偏移不会影响最后的特征结果,具有强大的拟合能力,能捕获图像中的所有描述,所以提取结果对分类结果几乎没有影响。从VGGNet-16 和ResNet-50两个预训练模型中提取的向量都为1×1000。

图1(a)展示了策略一的特征融合过程,将特征提取步骤中提取的特征先分别对每一个样本进行PCA特征变换,每一个样本都运用相同的PCA 模型以保证每一个样本的维度都相同,PCA 映射出来的特征为每一个样本比较重要的特征部分;接着对每一个样本进行特征融合拼接,得到一个复合特征,PCA 比率设置为95%,对应维度为229;最后将得到的向量输入到随机森林分类器中,进行训练,并得到分类结果。

策略二的特征融合过程如图1(b)所示,把特征提取过程中提取的每个特征先进行特征融合,得到一个总的复合特征,每个样本的特征融合结果都为1Í2000得向量,再对每一个样本进行PCA 有效特征投影,PCA比率设置为95%,对应维度为194;再将得到的最终结果输入到随机森林中进行训练并得到分类结果。

2 模型训练与结果分析

2.1 数据集

在本文中,实验分别基于两个公共RSI 数据集上研究。第一个数据集是UC Merced Land Use[4]数据集(UCM),摘自美国地质调查局国家地图城市地区图像集中的大型图像,包括全国各个城镇地区。第二个数据集是通过Google 地球图像的样本图像收集的新的大型公共数据集航空图像数据集(AID),由Xia[14]等人于2017 年提出。UCM 数据集包含21 个类。每个类包括100 张图像,大小为256×256 像素,具有不同的空间结构,颜色分布,区域覆盖和对象覆盖。AID 数据集整个数据集有10000 张图像,分为30 个类,每个类包含200-420 张图像不等,像素大小也是256×256。

在两个数据集中,每个类中80%的图像用作训练数据集,其余图像用作测试集。在实验中,全局特征描述符是从两个VGGNet-16 和ResNet-50 预训练CNN模型中提取出来以后形成的。两种CNN 模型都是在ImageNet 数据集上训练过的。获得的全局特征描述符的最终维数为1×1000,经过特征处理以后,输入到随机森林分类器中训练和分类。实验论证了PCA 对CNN特征的影响,并且展示了所提出的两种策略在两种数据集上的分类效果以及对训练效率影响。

2.2 软硬件环境

本文提取特征所使用的预训练网络模型为VGGNet-16 和ResNet-50,输入图片像素都调整为224×224×3,每批次输入一类图片,输出的特征向量为1×1000,PCA 模型参数比例设置为95%;训练由随机森林分类器完成,每个随机森林的决策树择优范围设置为100-1000,步长设置为50,最大特征数设置为“sqrt”,结点划分标准设置为“gini”,叶子节点含有的最少样本设置为20,其他参数设置为默认参数。

实验的硬件环境为Intel i7-6700 3.4GHz 的CPU、16G 内存和单块NVIDIA GeForce GTX1070 Ti 显存6GB 的显卡,操作系统为Ubuntu16.04 的Linux 操作系统,特征提取框架为Caffe 框架。

2.3 实验结果分析

图2 描述了UCM 数据集上所提两种策略分类的混淆矩阵。测试集和训练集的比例为1:4,最终得到了策略一(如图2(a)所示)和策略二(如图2(b)所示)的混淆矩阵。如混淆矩阵所示,第i 行和第j 列中的数字代表着将第i 类识别为第j 类的概率。

在图2 中,两种类型的方法的平均分类准确度分别为85.72%和88.10%。这两种方法能比较精确识别出诸如“飞机”,“农业”,“棒球场”,“丛林”,“森林”,“高尔夫球场”,“海港”,“立交桥”,“网球场”,“河流”等类别(90%的分类准确度)。从这些类别的RSI 中提取的特征比较好识别,与别的类别的特征存在较大差异,这有助于正确分类。有些类获得较差的分类效果,原因可归结为这些类别的高维特征太相似,区分困难,例如“密集住宅”和“中等住宅”,其中包括大量的建筑元素,因此存在混淆。

图2 UCM数据集混淆矩阵

各类别分别为:1.飞机;2.海滩;3.农业;4.棒球场5.建筑物;6.灌木丛;7.密集居住区;8.森林;9.公路;10.高尔夫球场;11.海港;12.十字路口;13.中等密集住宅区;14.拖车住房公园区;15.立交桥;16.停车场;17.网球场;18.河流;19.飞机跑道;20.稀疏住宅区;21.储存槽区

在图3 中,两个混淆矩阵分别代表策略一(如图3.a 所示)和策略二(如图3.b 所示)。测试集的比例是训练集的25%。混淆矩阵中数字的含义与图2 相同。策略一和策略二的所有类别的总体准确度分别为81.3%和84.48%。两种策略在一些类别上都能准确识别(94%的分类准确度),例如“密集住宅”,“沙漠”,“农田”,“森林”,“山”,“港口”,“火车站”,“体育场”,“储罐”,“高架桥”。由于上述类中存在良好识别对象或更明显的特征,它们的分类性能非常好。此外,“大桥”,“市中心”,“旅游区”,“学校”和“广场”的识别精度不佳,其原因与UCM 数据集相同。从两组混淆矩阵中,策略二的效果比策略一更好是因为策略一的维度比策略二的维度更冗余,这将影响随机森林分类器最后的决策。

图3 AID数据集混淆矩阵

各类别分别为:1.飞机场;2.凸斑地;3.棒球场;4.海滩;5.大桥;6.市中心区域;7.教堂;8.商业区;9.密集居住区;10.沙漠;11.农场;12.森林;13.工业区;14.牧地;15.中等密集住宅区;16.山区;17.公园;18.停车场;19 游乐场;20.池塘;21.港口;22.火车站;23.旅游区;24.河流;25.学校;26.稀疏住宅区;27.广场;28.运动场;29.储存槽区;30.高架桥

图4 展示了两种策略在两个数据集上的平均准确度。随机森林里面的分类树数量分别包括100,200,300,400 个分类树。图4(a)所示是在UCM 数据集上实验的结果。对于策略一和策略二,在分类树数超过200后策略二更好。随着分类树数量增加,分类精度也在提高,对比于单个的VGGNet-16 和ResNet-50 特征用于训练分类,策略一的准确度分别提高了大约11.2%和21.5%;策略二提高了大约12.3%和20.6%。

图4 基于UCM和AID数据集的分类结果

图4 (b)是实验在AID 数据集上的结果。从图可得,对比单个的VGGNet-16 和ResNet-50 特征用于训练分类,这两种策略的分类效果都有所提升。随着随机森林中分类树的数量增加,分类准确度也会发生变化,当分类树数等于300 时,策略一和策略二的分类效果都达到最佳,这与UCM 数据集的效果略有差异,原因可归结为UCM 数据集类别的训练集数量少于AID数据集类别的训练集数量。

表1 列出了UCM 数据集的一些最新方法和本文方法的分类准确度,这些现有方法详见文献[1,4,15,16]。与现有方法的比较表明,策略二比文献[1,4,15,16]中的最佳结果提高了1.69%,策略一与现有方法的精准度相当。

表1 UCM 数据集与现有方法结果对比

表2 列出了AID 数据集的一些最新方法和本文方法的分类准确度,这些现有方法在文献[14]中详述。与现有方法的比较表明,本文的策略分别都有部分提高。由于特征融合和PCA 转换相结合的优越性,本文的方法对两个数据集都有较好的分类效果。

表2 AID 数据集与现有方法结果对比

表3 中比较了在不同分类器上,训练模型花费的时间。如表所示,使用UCM 数据集,VGGNet-16 和ResNet-50 结合Softmax 分类器的训练的时间分别需要4376s 和2437s。但是,使用策略一和策略二结合随机森林分类器分别只需要26.68s 和24.81s,缩短了一百多倍。此外,VGGNet-16 和ResNet-50 结合Softmax 分类器分类准确率分别为78.3%和82.4%,策略一和策略二结合随机森林的分类准确率分别为85.72%和88.10%,结果均高于VGGNet-16 和ResNet-50。从表中可得到,PCA 转换也有助于缩短训练过程,提高训练效率。

表3 UCM 数据集不同分类器训练时间与精度对比

从图2 和图3 中可以发现,将ResNet-50 和VGGNet-16 的特征应用于两种策略的融合改进方法中,比单个CNN 模型的特征效果更好。从图4 可以看出,在两种数据集上,策略二比策略一的分类准确度都高了3%左右;从表1 和表2 也可得出,两种策略都有较好的分类效果。

综上,本文提出的策略在分类效果和训练效率上都具有较好的效果。而策略二相对于策略一来说,虽然在模型训练时间上差别不是很大,但是在主要特征保留上,策略二更好,其特征对于图像的描述能力更强,使得总体的分类效果更好。

3 结语

本文先从预训练模型VGGNet-16 和ResNet-50全连接层中提取特征,然后根据PCA 变换与特征融合的结合先后顺序,以提升特征的描述力。策略一是先对单个预训练模型中提取的特征使用PCA 变换,得到有效的特征映射后,再进行特征融合;策略二先融合从两种预训练模型提取的特征以后,再进行PCA 变换,以得到有效特征投影。根据实验证明,与单个预训练模型提取的特征相比,所提出的特征融合的两种策略在UCM 数据集和AID 数据集上都有较好的效果。PCA 变换加上特征融合可以提高分类精度的性能,两种策略都可以较好地提高训练效率。

猜你喜欢

分类器特征提取分类
同步定位与建图特征提取和匹配算法研究
少样本条件下基于K-最近邻及多分类器协同的样本扩增分类
学贯中西(6):阐述ML分类器的工作流程
基于朴素Bayes组合的简易集成分类器①
基于MED—MOMEDA的风电齿轮箱复合故障特征提取研究
按需分类
教你一招:数的分类
说说分类那些事
基于AdaBoost算法的在线连续极限学习机集成算法
基于曲率局部二值模式的深度图像手势特征提取