何直蒙,丁海勇,安炳琪
南京信息工程大学遥感与测绘工程学院,江苏 南京 210044
随着遥感技术的快速发展和高分辨率卫星数量增加,利用高分辨率遥感影像对特定目标进行快速准确识别[1]成为热门研究。其中,通过高分辨率遥感影像获取精准的建筑物分布可以为城市规划、灾害监测、交通管理和生态环境的科学规划提供重要参考。
建筑物提取在计算机视觉学科中被称为语义分割,其难点在于建筑物影像存在异物同谱、同物异谱现象和计算机硬件条件限制。近年来,随着计算机硬件图形处理单元(graphic process unit,GPU)被普及,语义分割中对计算量要求较高的深度学习(deep learning,DL)[2]成为研究热点。深度学习通过建立高维线性模型以提取所需特征,克服了浅层学习(shallow learning,SL)难以拟合复杂函数这一难点。
深度学习网络中提取特征效果较好的卷积神经网络[3](convolutional neural networks,CNN)被广泛用于语义分割[5]、物体检测[6]、目标提取[7]、文字识别[8]等任务。最早的卷积神经网络是文献[8]提出的LeNet,其基本框架为卷积层、池化层(pooling)和全连接层。2012年AlexNet在ImageNet挑战赛中拔得头筹[9],将沉寂多年的卷积神经网络带回研究者的视野。2014年GoogLeNet仅用AlexNet 1/12参数量组成22层的网络得到了更好的结果,并在赛后对该模型进行改进:单元层中将通道进行连接操作(concatenate);使用两个连续的3×3卷积代替5×5卷积,使网络增大感受野(receptive field)的同时降低参数量。文献[10]中提出的全卷积网络(fully convolutional networks for semantic segmentation,FCN)将全连接层删除,特征提取与结果输出都由卷积实现。同年提出的U形神经网络(Unet)[11]和残差网络(Res-net)[12]均使用了跳跃连接,其中残差网络的短路连接(shortcut connections)解决了由于梯度消失限制网络深度的问题,而Unet使用了长跳跃连接,直接连接了深层和浅层网络,缓解了深层网络退化问题(degradation problem)。文献[13]提出的残差单元模型,在编码和解码单元中使用递归卷积层(recurrent convolutional layers,RCL),有效提高了结果精度。
在建筑物识别研究中,上述网络被研究者们改进优化。文献[7]使用深度学习结合特征提取的方式进行建筑物分类,通过多特征融合衡量建筑物在不同尺度影像中的显著性。此外,Unet由于分类效果较好,很多研究将Unet作为基础架构进行改进,如文献[14—15]使用改进的Unet网络能准确提取建筑物位置;文献[16]以Unet网络为基础网络,提出了SU-Net,在多个数据集中均取得较好的结果。还有一些注重多尺度感受野的研究也取得了较好的结果,如文献[17]用含注意力机制的Mask-RCNN进行建筑物提取,提取结果优于支持向量机(support vector machine,SVM)、全卷积神经网络(fully convolutional networks,FCN)和Unet。文献[18—19]使用带有特征金字塔的网络进行语义分割。文献[20]使用DeepLabv3架构结合空洞卷积(atrous convolution)进行建筑物提取。文献[21]结合条件随机场和深度学习进行建筑物提取,证明使用其他手段辅助深度学习进行建筑物提取可以提高结果精度。文献[22—23]还将其他卷积神经网络应用于建筑物提取,但上述网络在建筑物提取上均存在相同的问题:建筑物提取结果的边界、转角等细节信息不完整。
综上所述,本文选择Unet作为基础架构与其他方法结合,为提升建筑物提取精度和改善提取边缘转角模糊、细节丢失等问题,提出了基于空洞卷积的增强型Unet(enhanced unet,E-Unet)深度学习网络。在架构设计中增加空洞卷积、Dropout模块、跳跃连接和特殊预处理;在模块设计中注重细节的保留、结合多尺度的信息、在不影响精度的前提下减少参数。
预处理模块是将原始影像进行直方图均衡化,边缘检测(高斯双边滤波),波段间比值后与原始图像一起转换为多波段的张量输入神经网络。预处理的主要目的有3个:一是强调边缘,二是增强波段间联系,三是进行图像增强。
强调边缘是为了更好地保留建筑物的边缘,提高结果的转角锋利度和边缘清晰度。高斯双边滤波(bilateral filter)是一种保留边缘的滤波,其通过考虑像素值分布情况,保留像素值空间分布差异较大的部分,完整保留图像的边缘信息。
增强波段间联系是为了使模型更好地理解颜色关系。一般情况图像RGB 3个波段被分别输入神经网络,卷积只能感受R、G、B波段中同波段像素点周围的信息,没有强调波段间比值关系。例如人类能分辨紫色是由于色感细胞感受到三原色中红色和蓝色较多而绿色较少,因此强调波段间比值关系是有必要的。
图像增强是为了解决直方图灰度集中在某一色阶范围之内,通过直方图均衡化将这些集中的灰度拉伸以提高对比度。文献[24]提出基于直方图均衡化的网络,试验结果表明图像经过直方图均衡后可以增强图片特征并提高识别精度。文献[25]提出较好的纹理提取方法,后被文献[1]的研究者结合深度学习进行建筑物分类。以下为预处理涉及公式。
高斯双边滤波器由两个函数生成的空间域核和值域核组成。空间域核wd是由像素位置的欧氏距离决定,计算公式为
wd∈[0,1]
(1)
式中,(i,j)为模板窗口其他系数的坐标;(k,l)为模板窗口的中心坐标;σd为高斯函数的标准差。
值域核ωr是由像素差值决定的权值模板,计算公式为
ωr∈[0,1]
(2)
式中,f(i,j)表示图像在(i,j)坐标处的像素值;f(k,l)为模板窗口中心坐标(k,l)处对应的像素值;σr为高斯函数的标准差。
将值域核与空间域核相乘得到ω
ω(i,j,k,l)=wd(i,j,k,l)×ωr(i,j,k,l)
(3)
整理得到双边滤波器的计算公式为
(4)
式中,g(i,j)为滤波结果图在点(i,j)处的像素值。
为了增强计算机对波段间关系的理解,本文提出波段间指数,通过模仿归一化植被指数(normalized difference vegetation index,NDVI)增强输入数据对波段间关系的敏感度。由于红色波段和蓝色波段的比值结果信息量较多,因此本文采用这两个波段的比值结果,计算公式为
(5)
式中,(i,j)是图像上像素点的坐标;grg(i,j)是grg图像上点(i,j)处的像素值。
1.2.1 总体网络结构
Unet作为优秀的网络架构被诸多研究人员关注,其设计结合长跳跃连接、对称结构、多尺度结合分析。长跳跃连接用于防止网络过深造成的梯度下降和梯度消失,编码层和解码层完全对称的结构不仅提升了跳跃连接的效果,而且使输入输出大小相同,以便端对端分类[26]。多尺度结合分析是指网络高层获取图像细节信息而底层网络获取深层次信息,这能使网络更好地理解图像。但Unet提取结果普遍存在边缘不准确和转换为8位深影像时部分信息损失的问题。针对上述问题,本文提出E-Unet网络,其架构如图1所示。
图1 E-Unet网络Fig.1 Schematic diagram of E-Unet
E-Unet通过在最底层增加dropout模块[27]避免模型过度依赖少量神经元造成的过拟合现象。前向传播时,dropout模块使每个隐藏神经元以一定的概率p停止工作,以此限制模型对局部特征的依赖,dropout不仅能提高模型的稳健性,而且减少所需训练时长为原来时间的1-p。隐藏神经元虽然在训练时会随机停止工作,但是进行预测时不会被随机停止,可以保证模型使用时性能稳定。
E-Unet选择使用与Unet相同的4层架构,这是因为Unet已经能确认建筑物位置,加深网络会因分辨率降低流失更多边角细节信息。解码层顶部额外增加图像尺寸后进行卷积池化,使特征在亚像元级上进行分割,实现更精细的分类。
激活函数除输出层外都选择了适合Unet的线性整流函数(rectified linear unit,ReLU),其特性是抑制负值、防止方差过大造成的梯度爆炸和消失问题,其数学表达式为
f(x)=max(0,x)
(6)
输出层的激活函数选择Sigmoid函数,输出值范围在(0,1)之间,函数值越大表示模型认为该像元是正类的概率越大,其数学表达式为
(7)
1.2.2 编码层网络结构
编码单元层示意如图2所示,其中加入短路连接来缓解梯度爆炸和消失问题。感受野是指输出特征图上每个像素在输入特征图上的映射范围,拥有不同大小的感受野有助于分析不同大小的目标。但是,通过增大卷积核来增加感受野会使神经网络的参数量暴涨,文献[28]提出,两个3×3卷积核所用的参数总量为2×(3×3)×channels;对于5×5卷积核所用的参数总量为(5×5)×channels。两个叠加的3×3卷积不仅拥有与5×5卷积相同的感受野,而且参数量只有5×5卷积的70%,因此在单元层中用叠加3×3卷积代替5×5卷积。
图2 编码卷积单元层Fig.2 Schematic diagram of Encode convolution unit Layer
空洞卷积是向标准卷积内注入空洞达到防止梯度消失的同时增加模块感受野大小的效果。卷积核的膨胀大小由膨胀率(dilation rate)来决定,膨胀率为2的空洞卷积如图3所示。本文先对输入层分别使用2、3、5膨胀率的空洞卷积,然后将得到的结果与输入层一起通过跳跃连接连接到每个编码模块。编码模块内带有2×2最大值池化卷积,图像每通过一个池化层,图像尺寸就降低为原来的一半。
图3 Rate=2的空洞卷积Fig.3 The atrous convolution of rate=2
1.2.3 解码层网络结构
解码层设计如图4所示,利用双线性插值法代替Unet和FCN[29]网络中的上采样(upsampling)。双线性插值法不仅可以节约显存、提升网络运行速度,而且所得结果通常不是线性的,能提升模型复杂度。为防止卷积过程中发生梯度消失,同层编码特征将通过连接操作把信息传递到同层解码特征处。
图4 解码卷积单元层Fig.4 Schematic diagram of Decode convolution unit Layer
本文试验数据为Massachusetts建筑物数据集[30]和WHU建筑物数据集[16]。
Massachusetts建筑物数据集由波士顿地区的151幅航拍影像组成,每幅影像尺寸为1500×1500像素,面积约2.25 km2,整个数据集覆盖面积大约340 km2。图5(a)为Massachusetts建筑数据集原始影像,图5(b)为原始影像标签。本文将该数据集裁剪为512×512像素,如图5(c)、(d)所示。
WHU建筑数据集由新西兰基督城的航空影像组成,空间分辨率0.075 m,覆盖面积450 km2,其中包含约22 000栋独立建筑物。图5(e)为WHU建筑数据集原始影像,图5(f)为WHU建筑数据集影像标签。两个数据集均按8∶2比例划分为训练集和测试集。
图5 数据集Fig.5 Data set
为定量评价网络的性能,选择准确率(Accuracy)、Kappa系数、F1分数(F1score,F1)、召回率(Recall)、重叠度(intersection over union,IoU)和精确率(Precision)6个指标来评价分类结果。准确率是检测到的正确预测像元数占总像元数的比值。Kappa系数是一种平衡样本规模的精度指标。精确率着重衡量结果是否有误判,召回率着重于衡量结果是否有遗漏。F1分数是计算机领域衡量二分类精度的重要评价标准,它同时兼顾了分类结果的精确率和召回率。IoU是预测图与标签图的交叠率,即它们的交集与并集的比值,完全重叠时的比值为1。TP代表true positive,是将正类预测为正类的像元数;FP代表false positive,是将负类预测为正类的像元数;FN代表false negative,是将正类预测为负类的像元数;TN代表true negative,是负类被预测为负类的像元数。用于计算Kappa系数的Pe=(((TP+FN)×(TP+FP))+((FN+TN)×(FP+TN)))/((TP+TN+FN+FP)×(TP+TN+FN+FP)),计算公式见表1。
表1 精度评价公式Tab.1 Accuracy evaluation formula
试验与网络开发均使用后端为Tensorflow框架的Keras库。每次有4张图像输入模型,使用Adam算法进行优化,初始化学习率设置为0.000 1,训练到收敛后逐渐降低学习率进行续训,最低学习率为0.000 001。试验平台使用的硬件设施为:Intel(R)Core(TM)i7-9700KF CPU @ 3.60 GHz、GPU NVIDIA GeForce RTX 2060 SUPER、16 GB内存。
为对比网络性能,在Massachusetts建筑物数据集上分别使用E-Unet与Unet、Res-net[12]进行提取试验。其中,Res-net虽然最初被用于图像分类,但是能较好地提取影像特征,因此将Res-net作为编码层来搭建提取模型。本文试验部分的Res-net均采用文献[11]中提出的18层残差网络作为编码层,将全连接层替换为解码层。解码层使用大小为1×1的卷积,采用Sigmoid作为激活函数进行输出。分类结果如图6所示。
图6 Massachusetts建筑物数据集试验结果Fig.6 Experimental results of the Massachusetts building data set
对于Massachusetts建筑物数据集的试验结果,从目视效果上分析可知,E-Unet结果的边缘比Unet和Res-net清晰,更加接近真实地物。对于图6红框处形状特别的建筑物而言,Unet网络和残差网络都只能提取到建筑物大概位置,而E-Unet网络准确提取了建筑物细节。此外,Unet和Res-net的结果“椒盐效应”较为明显,存在大量误提和漏提,道路、水泥地等与建筑物材质相近的区域容易形成不确定区域。
定量分析精度评价结果见表2。由表2可知,E-Unet网络结果明显优于其他两种方法,E-Unet的召回率比Unet高14.03%,说明使用E-Unet提取不容易遗漏目标。
表2 Massachusetts建筑物数据集精度评价结果Tab.2 Accuracy evaluation results of Massachusetts building data set
为进行性能对比,在WHU数据集进行上分别使用E-Unet、Unet与Res-net进行提取试验,结果如图7所示。在WHU数据集上,E-Unet表现更稳定、细节保留度更高。Unet和Res-net有两个明显缺陷:提取大小差异明显的建筑物困难;提取边缘角点时容易模糊。以上缺陷均在E-Unet网络中得到一定程度的解决,如图7红框处E-Unet精准提取了建筑物细节。
图7 WHU数据集试验结果Fig.7 Experimental results of the WHU building data set
在精度评价和对比分析中,增加了文献[16]提出的SU-Net的精度评价结果,见表3。
表3 WHU建筑物数据集精度评价结果Tab.3 Accuracy evaluation results of WHU building data set
为进一步分析性能提升的原因。本文设计以下两组消融试验:①E-Unet与去掉预处理的E-Unet(Net-1)对比;②有预处理的Unet(Net-2)与未经预处理的Unet对比。提取结果如图8所示,精度评价结果见表4。
由图8和表4可知,使用本文特设的预处理能使不同网络的提取效果变好,特别在高分辨率和高质量标签的支持下E-Unet几乎可以完美地提取建筑物细节。通过分析WHU数据集的结果,使用预处理后两种模型在各项指标上均有提升,说明预处理能够提升不同网络的分类效果。提升最明显的是E-Unet的Kappa系数比Net-1的增加了5.84%,说明E-Unet能从预处理中获取更多信息;在Massachusetts数据集中,Net-2相对于Unet网络在F1、Kappa、Recall、IoU和Precision指标上都有近10%的提升。
图8 消融试验对比结果Fig.8 Comparison of ablation experiment results
表4 消融试验精度评价结果Tab.4 Evaluation results of ablation experiment accuracy
对比未经预处理的E-Unet(Net-1)和未经预处理的Unet结果可知,Net-1在两个数据集上的表现均优于Unet,在Massachusetts数据集上精度提升尤为明显。在分辨率和标签质量限制的条件下E-Unet精度有较大的性能提升,说明其拥有较强的抗噪能力。
3种模型参数量见表5,通过参数量对比可知,E-Unet与另外两个网络属于同数量级的网络。
表5 参数量对比Tab.5 Parameter comparison
WHU数据集是目前高分辨率遥感影像中标签质量最好的数据集,而Massachusetts建筑物数据集存在分辨率限制,因此对比两个数据集的效果可以分析出网络对数据集质量的依赖程度。在Massachusetts数据集的精度评价结果中,E-Unet超过了Unet和Res-net的F1分数、召回率和Kappa系数近20%,达到了0.866 1、0.876 7和0.813 5。由于WHU数据集中边缘角点的像元数较少,只要提取建筑物概略位置就能获得较为不错的得分,因此3种网络在该数据集上的精度并没有拉开很大差距。经常被各大比赛作为评分标准的F1分数剔除了背景,关注被预测正类的错分和漏分,能够更为公正的评价结果。E-Unet在两个数据集中F1分数优势都较为明显,在WHU和Massachusetts中分别达到0.947 7和0.866 1。
为对比3种网络在建筑物边缘和转角的提取效果,将结果图局部放大,如图9所示。由图9可知,无论是在WHU数据集还是在Massachusetts数据集,E-Unet较于Unet和Res-net结果能获取更加清晰保真的边缘、转角等细节信息。相较于WHU数据集上的结果,E-Unet在Massachusetts数据集上的提取结果转角不够尖锐,原因是受影像分辨率和标签精度条件限制。将原始影像中的一栋建筑物放大后对比,如图10所示,Massachuseets数据集中的建筑物放大后边缘非常模糊,而WHU数据集放大后依然有清晰的边缘。
图9 边缘转角对比Fig.9 Comparison of edge angles
图10 局部放大对比Fig.10 comparison of partial enlargement
对比3种网络的分类结果可知,Unet与Res-net的提取结果存在较多的灰色区域,说明加入dropout模块能有效避免过拟合,使模型被训练得更加彻底。
对比图8中Massachusetts建筑物数据集提取结果可知,Unet和Res-net网络均漏提了建筑物,证明了在分辨率限制条件下E-Unet捕捉特征的性能仍优于Unet和Res-net。对比图8中WHU数据集提取结果可知,Unet和E-Unet结果都成功保留了凹陷细节,而Res-net的结果变成了圆润的缺口,证明了U形架构的优越性。
分析消融试验可知以下3点:Net-1比Unet提取结果更好;预处理可以提升两种网络的提取效果;E-Unet拥有极强的细节保留能力。首先,通过分析Net-1和Unet对比试验可知Net-1保留了更多细节,这是由于编码层中通过层与层的跳跃连接和层内部的短路连接传递了细节信息;Net-1相对Unet有更少的灰色不确定区域。结合表4分析,侧重错分的Precision和侧重漏分的Recall指标在Massachusetts数据集上都有近10%的提升,在WHU数据集上有近5%的提升。其次,通过预处理增删试验可知,特殊的预处理模块对不同模型的提取结果均有提升,其中对Recall的提升尤为明显。最后,E-Unet通过强调波段间联系使模型能更好地理解颜色间的区别;通过边缘增强保留了建筑物尖锐的角和平直的边线。预处理提供了大量的细节信息,模型能捕获到这些细节信息,这也是E-Unet提取效果好的核心原因。
综合分析以上试验,E-Unet提取精度受制于影像的分辨率和标签的质量,但相较Unet和Res-net具有较强的抗噪抗干扰能力和细节保留能力。E-Unet虽然在参数量上与Unet处于同一数量级,但网络结构还有待简化。E-Unet分类结果仍然有少量淡灰色区域,推测原因可能是跳跃连接使部分特征没有经过充分提取直接传递到解码层上层,导致信息没完全“消化”就达到输出层。因此,下一步研究将对网络结构进行调整和简化。
本文使用深度学习方法提取高分辨率遥感影像建筑物,为提升结果精度、改善细节提取效果提出E-Unet。该网络通过预处理模块强调波段间关系,加强边缘信息;在网络框架中引入长跳跃连接避免边缘特征缺失,引入dropout模块防止过拟合;在模块中引入短路连接保留细节,引入空洞卷积获取多尺度信息,引入重叠卷积控制参数量。为验证E-Unet的优越性,本文在Massachusetts和WHU建筑物数据集上进行两组试验。第1组试验对比E-Unet、Unet和Res-net 3种网络,结果表明E-Unet提高了建筑物提取精度,有更强的细节保留和抗噪能力,显著改善了建筑物边缘不规则现象,对细节的提取在WHU数据集上有出色的表现。第2组试验对E-Unet和Unet进行预处理模块消融试验,试验表明本文提出的预处理模块能够提高不同模型的提取精度,E-Unet具有较高的提取精度、优秀的细节保留能力和抗噪能力。预处理和E-Unet相辅相成,预处理模块提供更多细节,E-Unet对细节进行捕捉。笔者在今后的研究中将对E-Unet架构进行精简,希望在工业上早日实现建筑物自动化提取。