吕道双,林 娜,2*,冯丽蓉,张小青
(1.重庆交通大学 土木工程学院,重庆 400074; 2.重庆市地理信息和遥感应用中心,重庆 400020)
高分辨率遥感影像的激增使人们对地球的观察和理解得到了很大的改善,已被广泛应用于测绘、制图、交通导航、城市规划、海洋权益保护、数字化城市建设等领域。这些领域中地物的标注与提取是备受关注的内容,在城市区域的遥感影像中超过80%的是人工地物或人工地物所构成的复杂功能区,建筑物就包括在其中。建筑物作为重要的人工地物目标,是地理信息的重要组成部分,在数字城市建设、智慧城市建设、数据库更新、城市人口布局等方面具有重要意义。高分辨率遥感影像中的建筑物具有很多的纹理特征和细节信息,这些特征使人们从高分辨率遥感影像中提取建筑物成为了可能。
目前,建筑物提取的方法包括基于底层特征的建筑物提取、基于辅助信息的建筑物提取和基于深度学习的建筑物提取。其中,基于底层特征的建筑物提取主要是利用建筑物在高分辨率遥感影像中的纹理、色彩、形状等特征或特征组合进行提取,如HUANG X[1]等将光谱、结构和语义特征进行有效集成,提高了城市建筑物等地物的分类精度;Ghanea M[2]等利用建筑物形状、颜色、亮度、大小和高度的变化提取建筑物,获得了较高的精度;Dikmen M[3]等首先在过分割的影像中确定其中的阴影对象,再利用建筑物的光谱特征及其与阴影的空间关系提取建筑物;WANG J[4]等通过对几何信息的高效监测提取建筑物的几何边界,再利用线段检测器将检测到的线段分层分组得到矩形建筑物的候选区,然后通过线段连接和闭合轮廓搜索对几何信息进行有效检验,获得了良好的建筑物提取效果和整体精度。基于辅助信息的建筑物提取主要是利用阴影、DSM、SAR 等数据对建筑物进行提取,如TIAN J[5]等利用高精度的DSM 数据与IRS-P5 高分影像数据对德国巴伐利亚州的森林和土耳其伊斯坦布尔的工业区进行了变化检测,提取的建筑物具有较高的精度;LI Y[6]等通过改进分水岭分割的标记点控制方法从DSM 数据中提取地形,再利用高分辨率遥感影像中建筑物的形状特征提取建筑物;Saeid P[7]等采用LiDAR 与高光谱数据相融合的方法,首先利用线性判断分析剔除冗余的数据,再利用随机森林算法提取建筑物边界,然后利用形态学操作移除建筑物顶上的空洞并修复边界,最终得到较好的提取精度;HUANG X[8]等利用建筑形态和阴影指数对建筑物进行了提取,通过构建阴影指数和建筑形态因子可以很好地减少提取的遗漏,可在不收集训练样本的情况下获得较满意的建筑物提取结果。基于深度学习的建筑物提取主要是利用各种网络,通过自动学习影像中的特征来对目标进行提取的过程,很多学者利用深度学习的方法对建筑物、机场、港口等进行了研究,也取得了不错的研究成果,如王港[9]等针对我国的高分一号遥感图像提出了一种改进的残差网络,对影像中的人工地物进行了检测,取得了较好的效果;张欢[10]等设计了一种密集反卷积的神经网络,针对卷积神经网络中网络层数较少、不能充分挖掘图像的抽象特征等问题,将网络中加入了密集的反卷积层,使网络的层数达到了51 层,通过实验证明了该网络对特征的学习能力较强,且网络是端对端的训练避免了训练过程中梯度消失等问题,对复杂场景下的建筑物提取具有较好的效果;左童春[11]提出了一种端对端的多层融合的全卷积神经网络(FCN),将各层提取的特征融合起来,利用大小不同的感受野来捕获不同的空间上下文信息,并对网络结构进行了改进,将卷积核的数量减半,使网络参数大大减少,节约了运算时间,在公开的数据集上进行实验,取得了较好的建筑物提取精度。
本文利用基于深度学习的建筑物提取方法,首先对U-Net 网络进行改进,将底层提取的特征与高层特征进行融合;然后在网络编码后增加尺寸不一的空洞卷积,对网络编码得到的结果进行多尺度特征提取;最后将其融合得到更丰富的特征,以得到更好的建筑物提取结果。
深度学习经历了从CNN 到FCN 的过程,二者最大的差别在于,CNN 的最后一层往往是全连接层,该层的主要作用是对前面各层提取的特征作加权和,并将网络提取的特征综合起来,每个神经元与前一层的所有神经元相连接,这就导致该层的数据维度很大、占用内存空间很大、计算效率低等问题。为了解决该问题,LONG J[12]等提出了FCN,可对任意尺寸大小的图像进行语义分割。与CNN 相比,该网络的运算效率得到了很大提高,将反卷积代替了全连接层,减少了网络参数,反卷积层可将图片尺寸还原为原来的大小;但该网络也有一定的缺点,即分割的结果粗糙不够精细,底层特征没有很好地与高层特征进行融合。2015 年Ronneberger O[13]等提出了一种新的网络结构U-Net,如图1 所示。该网络结构是对FCN 的一种扩展,采用对称结构,左半部编码结构借鉴了VGG-Net的网络结构,右半边为解码部分,通过上采样将图像复原到原始图像大小。网络中利用Concatenate 结构将下采样部分得到的底层特征与上采样得到的高层特征相结合,得到更高层次的特征组合,能对分割物体进行精确定位。
图1 U-Net 网络结构
在CNN 模型中,卷积层后面一般是池化层,卷积层提取图像特征后通过池化层来对其进行降维,可有效降低网络参数的规模以及获得更大的感受野。在U-Net 网络编码阶段,经过多次的卷积池化操作,输入图像的大小将越来越小,但U-Net 网络结构要求输入图像和输出图像的尺寸相同,这就需要在解码阶段使用上采样将图像尺寸还原。在这一系列的操作过程中,虽然输入图片经过尺寸变化,网络提取了图像中的语义信息,但在池化过程中会损失很多信息。空洞卷积的提出能很好地解决该问题。空洞卷积可在不增加网络参数和不缩小图像尺寸的前提下有效增加卷积的感受野。
图2a 为3×3 卷积核的普通卷积;图2b 为空洞率为2 的空洞卷积,其效果和尺寸与7×7 卷积核的感受野相同,但在图中只有红色点参与卷积计算,其他部分不参与计算;图2c 为空洞率为4 的空洞卷积,感受野大小为15×15,也是只有红色点参与卷积计算,可以发现,空洞卷积可在不增加卷积网络参数的情况下增大感受野,避免了池化带来的信息损失。
本文提出的改进的U-Net 网络结构如图3 所示,该网络共有25 层卷积层,其中卷积层为10 层,反卷积层为10 层,空洞卷积为5 层,激活函数为Relu,池化方式为最大池化。
图2 空洞卷积和感受野
网络的左半部采用类似VGG 网络的结构,其中第一组卷积由32 个尺寸为3×3 的卷积核构成,第二组卷积由64 个尺寸为3×3 的卷积核构成,以此类推,直到网络最深为512 个尺寸为3×3 的卷积核。每个卷积池化后都有归一化层,使每一层中的特征分布更加均匀,以加快收敛速度,还可加快网络的训练过程。为了防止网络训练过程中出现的过拟合现象,在网络的最底层加入了Dorpout 层。网络的右半部分和左半部分相对称,主要由一系列的反卷积层构成,反卷积层除了与来自上一层反卷积得到的高层特征结合外,还通过Concatenate 结构与来自编码阶段卷积得到的底层特征相结合,得到更加精确的提取结果。网络的底部是一系列的不同空洞率的空洞卷积,空洞率被设置为3、5、7、9、11,对编码阶段提取的结果进行不同尺度的特征提取,并将提取的结果进行融合,得到更加丰富的特征,再将结果送入到解码器中。
图3 改进后的U-Net 网络结构
本文采用的数据集为2013 年Hinton 教授建立的建筑物和道路的公开数据集。该数据集中的影像分辨率为0.6 m,共有151 张尺寸为1 500×1 500 的影像和对应的标签,如图4 所示。首先需对影像进行裁剪,在裁剪过程中对数据进行增强操作,并采用随机旋转、增加噪声点、色彩震荡等方法对数据进行扩充,防止因数据太少而引起的过拟合现象的发生;再将数据集中按0.25 的比例划分为验证集。利用U-Net、Segnet和改进的U-Net 网络进行对比实验,并分析结果。
实验的硬件环境为:GPU NVIDIAGeForce GTX1080Ti、显存8G、软件Python3.6 和Tensorflow1.8.0。将数据集裁剪为一定的大小,送入网络中进行训练,训练过程采用SGD 算法进行优化,保存最优模型。随着网络训练的进行,模型的精度趋于稳定,损失值逐渐下降并趋于稳定,验证集的精确度和损失率也趋于稳定,模型收敛,网络训练结束,保存训练得到的最优模型。实验的学习率设置为0.01,动量设置为0.8,权值衰减设置为1e-5,迭代次数设置为60 次,Batchsize 设置为16。
图4 建筑物和道路的公开数据集(部分)
本文分别计算网络训练时的交并比(Iou)、像素精度(ACC)和召回率(Recall)3 个精度指标。Iou为语义分割中常用的衡量标准,表示预测值与真实值之间的交集与预测值与真实值之间的并集的比值。其计算公式为:
ACC 为预测真实值占总真实值的比例,计算公式为:
Recall 为被正确预测为建筑物的比例占总建筑物的比例,计算公式为:
式中,TP为网络预测结果为正样本,实际也是正样本的特征数;FP为网络预测为正样本,而实际是负样本的特征数;FN为预测为负样本,而实际为正样本的特征数。
将实验所用数据集裁剪扩充为10 万张尺寸为256×256 的影像,采用一张GTX1080Ti 显卡,网络训练过程中,随着迭代次数的增加,准确率在稳步上升,约在第60 次迭代时网络的ACC 达到了稳定状态,维持在96.26%;网络损失率(Loss)也在持续下降,并保持在0.088 左右。在验证集中,随着网络迭代次数的增加,val_ACC 在稳步上升,并稳定在95.3%;val_Loss 也逐渐下降,并保持在15.19 左右。训练过程中的ACC 和Loss 变化如图5 所示。由图6 可知,本文提出的网络的Iou 达到78.59%,验证集中的val_Iou 也达到了78.56%; 由图7 可知,网络训练过程中的Recall 达到95.65%,在验证数据集中的Recall 达到94.26%。
从实验结果数据来看,本文提出的方法在ACC、Iou 和Recall 方面都有一定的提高,相较于经典的U-Net 网络分别提高了6.75%、5.34%和7.09%;相较于Segnet 网络分别提高了8.86%、8.33%和8.44%,如表1 所示。
图5 训练过程中ACC 和Loss 变化
图6 训练过程中Iou 变化
图7 训练过程中Recall 变化
图8 3 种网络模型的建筑物提取结果(部分)
表1 3 种建筑物提取模型的定量评价
通过训练得到的3 种建筑物提取模型提取的建筑物效果如图8 所示,其中图8a 为数据集中的真实值;图8b 为改进的U-Net 网络得到的建筑物提取结果;图8c 为Segnet 网络提取的建筑物结果;图8d 为经典U-Net 网络提取的建筑物结果。由图8c 可知,Segnet 网络提取的建筑物形态较差,有一定的误检和错检,不能很好地提取建筑物,同时存在很多的细碎小斑点,建筑物之间有粘连,大尺寸建筑物的轮廓提取很差;由图8d 可知,经典U-Net 网络的提取结果也存在与Segnet 网络相同的问题,对建筑物轮廓的提取较差,存在部分细碎的小斑点,建筑物提取不完全,存在漏检现象;由图8b 可知,改进的U-Net 网络在建筑物轮廓提取方面效果较好,可准确提取建筑物轮廓,建筑物边缘整齐,建筑物之间不存在粘连,细碎的小斑点较少,但存在少量的误检。综上所述,改进的U-Net 网络可以较好地对大尺寸建筑物进行精确提取,空洞卷积增大了感受野,多尺度提取特征后对特征进行融合,提高了建筑物提取的精度,对不同尺寸的建筑物均有很好的提取效果。
本文提出的改进的U-Net 网络结构能有效地对建筑物进行精确提取,将不同空洞率的空洞卷积加入到网络中,多尺度地对来自编码阶段的结果进行特征提取,并融合生成更加丰富的特征。实验结果表明,该网络结构具有较好的提取效果,与经典U-Net 网络和Segnet 网络相比,其在ACC、Iou 和Recall 方面均有一定的提高,提取效果较好,建筑物无粘连现象,轮廓较规整。通过与地面真实值比较发现,该网络结构能精确地对高分辨率遥感影像中的建筑物进行提取;但由于影像中地物复杂、建筑物自身结构差异和地物遮挡等问题,建筑物边缘提取精度不理想,因此后续工作将对提取结果进行后处理,以及在保证精度的前提下对建筑物边缘提取进行增强。