基于深度卷积网络的无人机地物场景语义分割

2019-06-06 09:39宋建辉程思宇刘砚菊
沈阳理工大学学报 2019年6期
关键词:类别语义像素

宋建辉,程思宇,刘砚菊,于 洋

(沈阳理工大学 自动化与电气工程学院 沈阳 110159)

城市土地作为城市经济发展的重要载体,土地利用的变化对社会经济和城市环境造成很大的影响[1]。随着社会经济的高速发展和城市面积的不断扩大,人类活动密集以及土地利用不合理等原因导致城市环境质量有所下降。城市土地包括城市地表、绿地、水域等,精确的识别城市土地类别决定了城市土地分布信息的有效性,因此设计精准、有效的城市地物分割技术成为重中之重。传统的图像分割技术有基于阈值分割法、区域分割法和边缘检测分割法等[2-3],这些方法大多计算比较简单、效率高,在边界清晰的简单场景下不同物体之间能取得很好的分割效果,但在复杂场景或存在遮挡的情况下,目标边界分割不精确,所以使用传统方法对图像进行分割效果往往不是很好。

随着科技的不断进步,图形处理器(GPU)在执行复杂的数字和几何计算方面有很强的能力。近年来,依靠GPU强大的计算能力,深度学习得到广泛的应用。图像的语义分割属于像素级分割,是在普通分割的基础上,添加每块分割区域的语义信息。最初利用卷积神经网络(Convolution neural network,CNN)的分割方法[4],在PASCAL VOC 2012 图像分割数据集上的均交并比(Mean intersection-over-union,MIOU)达到51.6%,当时达到了最佳性能。Long等[5]提出的全卷积网络(Fully Convolutional Networks,FCN)为语义分割奠定了良好的基础,将网络的全连接层换成卷积层,通过反卷积输出与原图等大的分割图,在PASCAL VOC 2012上MIOU达到62.2%。Badrinarayanan等[6]提出SegNet网络延用FCN的网络结构,将最大池化指数转移至解码器中,改善了分割分辨率,MIOU达到了63.6%。Yu等[7]在多尺度聚集条件下使用扩张卷积聚合上下文信息,这是一种可用于密集预测的卷积层,MIOU达到了67.6%。Zhao等[8]提出金字塔池化方法(PSPNet),在复杂的场景中获取全局特征,在PASCAL VOC 2012上MIOU达到85.4%。Chen等[9]提出改进了空间维度上的金字塔空洞池化方法(Atrous Spatial Pyramid Pooling,ASPP),采用残差网络模块,设计Deeplabv3网络,相比于文献[10],由于加入了批量归一化层和使用了更优的方法来编码多尺度背景,在性能上有所提高,在PASCAL VOC 2012上MIOU达到85.7%。Chen等[11]在Deeplabv3的基础上提出了Deeplabv3+,这是一个全新的encoder-decoder架构,使用Deeplabv3作为encoder模块,并添加了一个简单却有效的decoder模块,这种架构可以获得清晰的物体边界,在PASCAL VOC 2012上验证模型的有效性,MIOU达到89%。

Deeplabv3+可以说是深度学习语义分割中的最佳模型,具有精度高、边界分割清晰、处理速度快等优点;将其用于无人机拍摄的地物场景图像分割,在精确分割地物场景并附上语义标签的同时,还能计算其面积及所在区域的空间分布。参考国内外文献,目前对无人机影像进行语义分割的研究相对较少,大多是对卫星遥感图像的分割。图像获取周期时间长,易受自然环境影响,而无人机遥感图像由于是低空拍摄,具有机动性强、获取图像分辨率高、成本低等优点,能很好的解决这些问题[12]。本文采用Deeplabv3+深度学习方法对无人机拍摄的地物场景影像进行6种类别的分割,这6种分别是楼房、汽车、草地、道路、树木和水源;使用两种网络骨干模型xception_65和mobilenet_v2分别进行实验,对比两种模型测试的结果,选择最佳模型,对最佳模型进行二次迁移训练,对比迁移前后分割效果并计算出各类别覆盖面积。

1 基于Deeplabv3+网络的语义分割

1.1 Deeplabv3+原理

Deeplabv3+网络是在v3的基础上做了改进,分为编码器与解码器两个部分,这两部分常用于计算机视觉任务中,包括人体姿态识别、目标检测和语义分割。编码器-解码器网络包含:(1)编码器模块可逐渐减少特征图并捕获更高层次的语义信息;(2)解码器模块可逐渐恢复图像的空间信息。在Deeplabv3+中用Deeplabv3网络作为编码器模块,使用简单的网络作为解码器实现图像的语义分割。Deeplabv3+网络结构如图1所示。

图1 Deeplabv3+网络结构图

编码器部分,原有的Deeplabv3网络在改进ASPP模块的基础上,以ResNet-101[13]网络为骨架网络进行特征提取。Deeplabv3+网络将ResNet-101网络改为Xception[14]网络作为骨架网络。Xception网络结构如图2所示。

图2 Deeplabv3+中的Xception网络结构

Xception网络在ImageNet数据集[15]上进行图像分类具有快速计算能力,这里对模型有所改动:网络层数变深,中间流程重复16次;最大池化操作使用深度可分离卷积来替换;在每次3×3深度卷积后添加ReLU激活函数。然后在Xception网络后导入ASPP得到特征图,将其输入到1×1卷积层中,卷积后得到的高层次特征图输入到解码器中。ASPP模块最初在Deeplabv2中由文献[10]提出,Deeplabv3中对ASPP又有所改进,多了1×1的卷积层和全局平均池化层;1×1卷积层相当于rate很大的空洞卷积,得到的整个特征图使用全局平均池化层求取平均值。ASPP结构如图3所示。

图3 ASPP结构图

解码器部分,首先连接低层次特征,利用1×1卷积层对特征图进行卷积,得到低层次特征图,然后将低层次特征图与编码器经过4倍上采样得到的高层次特征图进行融合,最后经过3×3卷积操作和4倍的上采样恢复至原图分辨率,得到与最初输入图像等大的分割图,实现对无人机图像的像素级语义分割。

1.2 精度评价指标

图像语义分割评价指标很多,普遍是像素精度(Pixel Accuracy,PA)及交并比(Intersection over Union,IOU)的一些改进。文献[16]对语义分割评价标准做了详细介绍,假设需要分割的图像中共有k+1个类(其中包括背景类),Pij表示属于i类的像素数量但被预测为j类的像素数量。Pii代表真正预测的数量,Pij和Pji则分别表示为假正和假负。以下是几种常用的语义分割的精度评价标准。

像素精度PA是最基础的度量方式,表示正确像素占整体像素的比例。

(1)

均像素精度(Mean Pixel Accuracy,MPA):在PA基础上的改进,先计算每个类的PA,然后求所有类别的平均值。

(2)

MIOU是语义分割常用的标注评价指标。IOU为真实值和预测值两个集合的交集与并集之比。计算完每类的IOU求和取平均即为MIOU。

(3)

频权交并比(Frequency Weighted Intersection over Union,FWIOU)是MIOU的一种提升,根据每个类出现的频率对各个类别的IOU进行加权求和。

(4)

在以上的评价指标中,由于MIOU代表性强,因此成为最常用的评价指标,大部分研究人员都使用该指标汇报结果。

1.3 覆盖面积计算

覆盖面积的计算是对图像中的像素点数统计,找到可知覆盖面积的目标作为参照物,根据参照物所占像素得到图像的空间解析度,计算公式为

R=a/n

(5)

式中:R为空间解析度(m2/像素点数);a为参照物面积(m2);n为参照物像素点数。

根据空间解析度,统计图像中其他类别的像素数量,即可得到各个类别的覆盖面积,面积计算公式为

Si=RNi

(6)

式中:Si为图像中第i类目标的覆盖面积;Ni为图像中第i类的像素点数。

1.4 数据准备

数据集上使用德国波茨坦和Vaihingen城市的无人机遥感图像以及大型虚拟现实游戏中高空录像截帧获取图像,通过人工标注得到标注文件,经过处理得到标注图像,将原图像和标注图像整理成自制数据集;由于数据样本少,将获取的图像进行平移、翻转达到数据翻倍。最后将数据分为训练集和测试集进行训练。

1.5 迁移学习训练

本文采集的数据集数量较少,对训练完测试得到的结果会有所影响,故采用迁移学习训练。迁移训练可以加快网络损失的收敛和提高测试的准确率。迁移学习是用现有领域学习的知识,通过迁移到新环境中,去解决领域相关的其他问题。目前大型数据集训练的预训练模型已经公开,利用迁移学习可以将这些预训练模型应用到本文的数据集中去解决类似的问题。

迁移学习的方法大致分为:(1)特征选择的迁移学习方法;(2)特征映射的迁移学习方法;(3)权重的迁移学习方法[17]。特征选择的迁移学习方法是使用高度相关的特征去解决目标问题,需要将大量数据集分为不同特征子集去进行验证[18]。特征映射的迁移学习方法需要源领域与目标领域数据拥有相同的分布[19]。权重迁移学习方法是使源领域训练的权重用于目标领域。考虑到数据集较少,本文采用权重迁移学习的方法对数据进行迁移训练。本文的预训练模型选择已在Cityscapes数据集上训练好的Xception_65模型,该模型底层提取物体的通用特征,一般有局部的纹理、颜色及轮廓,保留Xception_65模型的这些特征,用本文自制的数据集来训练目标物体的高层特征。

2 实验分析

采用Deeplabv3+网络模型对城市地物场景图像进行语义分割,实验分三部分进行:(1)对城市地物场景图像目标分别进行提取,经过测试,根据分割结果分析该模型对地物场景每个类别的分割效果;(2)对不同网络主干的Deeplabv3+网络模型进行训练,将测试结果进行对比,选出最佳网络主干;(3)采用迁移学习对Deeplabv3+网络进一步训练,对比迁移前后的分割精度,测算出测试结果各个类别的覆盖面积。

实验主要硬件配置:CPU(Inter core i7-8700k 3.2GHz);GPU(GeForce RTX 2070);内存(16G)。

2.1 类别的分割效果分析

数据集中每个类别的大小都不同,对最后的分割效果也会有影响,故对测试集中每个类别分别进行提取。数据集共计2138张,其中训练集2038张,测试集100张。网络训练的损失函数使用交叉熵函数[20],采用随机梯度下降法对训练进行优化,学习率设为10-4;衰减学习率每2000步下降0.1,学习动量设为0.9,训练批次大小设为1;ASPP模块中三个扩展率设为[6,12,18],模型使用xception_65。由于建筑、汽车、草地、道路、树木、水源以及背景这七种类别的像素数量各不相同,无法达到平衡,故在训练阶段对建筑、汽车、草地、道路、树木、水源这六类设置较大的权值,背景与这六类的权值比分别设定为1∶1、1∶2、1∶2、1∶1、1∶2、1∶3。训练步数100000步后,对测试集进行精度测试,每个类别的测试结果如表1所示。

表1 Deeplabv3+模型上各个类别的IOU指数 %

由表1可以看出,建筑物的精度最高,汽车的分割精度最低,MIOU达到73.97%。测试集在Deeplabv3+模型上测试的效果图如图4所示。

图4 不同类别的Deeplabv3+模型可视化结果

取其中四类逐类进行分析。结合表1给出的分割精度,可以看出,建筑、树木、道路和汽车的分割精度是从大到小逐渐降低,说明Deeplabv3+网络对较大目标的分割精度高于小目标。从图4b和图4c中可以看到,建筑的标注图和测试图分布基本一致,分割精度最高。从图4h和图4i道路的标注图和测试图中可以看出,虽然有部分遮挡,但也能将道路的区域分割出来,说明模型对部分遮挡的目标也能进行准确的分割。从图4k和图4l中可以看到,汽车总体上被分割出来,与标注图相差不大,相邻的汽车分割出现融合,说明图像中目标像素值太少,影响了最后的分割效果。总体来说,Deeplabv3+对于大目标分割精度高,整体分割效果与标注图一致;小目标分割上会有所偏差。

2.2 不同网络主干的Deeplabv3+模型分割结果

不同的网络主干模型对目标特征的拟合程度往往不同。本文针对Deeplabv3+中的两种网络主干模型mobilenet_v2和xception_65分别进行训练,分析两种网络主干对模型分割效果的影响,实验测试可视化结果如图5所示,分割精度对比如表2所示。

图5 不同网络主干的Deeplabv3+模型可视化结果

表2 不同网络主干的Deeplabv3+模型地物场景分割结果 %

从表2可知,xception_65模型的分割精度结果整体都高于mobilenet_v2模型,mobilenet_v2和xception_65的模型均像素精度都在75%以上。其中xception_65的均像素精度达到了79.06%。这是因为xception_65的网络层数更深,可以更好的拟合特征,获得更强大的表达能力和逐层的特征学习能力。图像上各类别分布不同,网络模型越深,学习到各个类别的特征信息就越多,xception_65通过逐层学习特征信息,得到更精准的结果。图5中,分割的是建筑、汽车、道路、草地和树木,两种模型的测试结果图基本与标注图一致,均能准确分割城市地物场景各个类别,但xception_65模型的测试结果分割更清晰,效果更好。

表3为不同网络主干的Deeplabv3+模型训练测试时间。

表3 不同网络主干的Deeplabv3+模型训练测试时间

从表3可以看出,mobilenet_v2的训练时间只需要2.5h,这是因为mobilenet_v2的网络层数少于xception_65的网络层数,所以在训练时间上要快很多。在测试单张图片上xception_65比mobilenet_v2要快。mobilenet_v2虽然计算速度快,但得到的结果精度却低于xception_65。所以在不考虑训练时间的情况下,可选用精度更高的xception_65网络主干。

2.3 采用迁移学习对模型进行训练

使用迁移学习对少量数据集训练可以使分割结果有所优化。最初使用公开数据集提供的预训练模型训练,由于公开的预训练模型训练的场景数据不包括无人机拍摄的场景数据,故为得到更好的训练效果,采用二次迁移的方式,先用预训练模型训练小批次,再用生成的模型进行迁移继续训练。两次训练的步数都为10万步,分割结果见表4所示。损失对比图如图6所示。

表4 两种训练方式的分割结果 %

从表4可以看出,迁移训练后各项指标都有小幅的提升,说明迁移训练对结果的优化有效。

图6 迁移训练与原始训练的损失对比图

从图6中可以看到,迁移后的损失趋势更加稳定,这是因为采用迁移学习对网络进行训练时,网络的前几层就已经可以学习到迁移部分的效果。

经过迁移训练后各项指标有所提升,表5是对迁移前后每个类别分割精度的测试结果。

表5 迁移前后各个类别的IOU指数 %

从表5中可以看出,在建筑、汽车、草地、道路、树木、水源这6类的语义分割上,使用迁移训练的分割精度分别提高了0.3%、1.6%、0.5%、2.4%、1.5%、2.8%,MIOU提高了1.48%。

根据迁移训练后的Deeplabv3+模型测试的预测图,统计图中每个类别的像素点数,由标注图中参照物汽车的实际覆盖面积和其在图中所占的像素点数得到空间解析率;将得到的空间解析率分别与测试图中各个类别的像素点数相乘,得到相应的覆盖面积。测算结果如表6所示。由表6可以看到,汽车的误差较大,这是因为模型对小目标的分割精度较低所致;其它类别的误差都在10%以下,平均误差为4.79%。

表6 单张测试图目标面积测算结果

3 结论

基于Deeplabv3+模型对无人机拍摄的城市地面场景进行语义分割,实验结果表明,基于深度卷积网络的无人机地物场景语义分割技术能够对地物场景图像进行准确分割;使用xception_65为网络主干的Deeplabv3+模型得到的分割精度最高,该模型对图像中大目标分割效果较好,有小面积遮挡的情况也能较好地分割出目标的大致轮廓;对该模型进行二次迁移训练,分割精度有所提高。通过对测试结果图像计算覆盖面积,得到城市地面场景的分布信息,为城市土地规划提供了依据。

猜你喜欢
类别语义像素
像素前线之“幻影”2000
语言与语义
“像素”仙人掌
壮字喃字同形字的三种类别及简要分析
ÉVOLUTIONDIGAE Style de vie tactile
批评话语分析中态度意向的邻近化语义构建
西夏刻本中小装饰的类别及流变
“社会”一词的语义流动与新陈代谢
“吃+NP”的语义生成机制研究
高像素不是全部