ADLinkNet:一种高分辨率遥感影像建筑物自动提取网络 | ![]() |
2. 武汉大学空间智能研究所,湖北 武汉,430079
2. Institute of Artificial Intelligence in Geomatics, Wuhan University, Wuhan 430079, China
近年来全世界发射了大量卫星,获取了大量低成本的高分辨率遥感影像。各国将获取的遥感影像用于城市规划建设、道路网设计和导航地图的制作等[1-4]。而建筑物是城市地区影像的重要目标,在城市管理方面有重要意义。人工从遥感图像中提取特征大多是基于人对建筑物观察、理解和归纳的经验。然而遥感影像中地物类别复杂,信息量大,不同地区的建筑物形状、尺寸、纹理不同,不同时间的建筑物色彩也不同,并经常受到阴影和遮挡等客观因素影响,因此基于人工设计的特征的方法效果不令人满意。
随着计算机算力的快速提高,深度学习得到了快速发展。在图像领域,卷积神经网络(convolutio-nal neural network,CNN)得到了广泛应用,2015年微软亚洲研究院宣布其基于深度学习技术开发的计算机视觉系统在ImageNet数据集上1 000类物体分类的错误率已降至4.94%[5],好于人眼识别效果。在图像分割领域,Shelhamer等[6]提出了全卷积网络(fully convolutional networks,FCN),这已经成为图像分割领域的范式。在此基础上,一些学者提出了很多模型,例如DeepLab[7]、D-LinkNet[8]、RefineNet[9]、UNet[10]、SegNet[11]等。然而在复杂场景中仍然有很大的空间去利用更多的信息。对于高分辨率遥感影像,不同地区建筑物尺寸差异很大,因此,本文利用空洞卷积和注意力机制提出了一种新的FCN模型ADLinkNet,以自动提取高分辨率遥感影像中的建筑物,该网络充分利用图像空间信息,将注意力集中在建筑物区域,以提高建筑物提取的精度。
1 基于全卷积神经网络的建筑物自动提取在传统的经典方法中,图像的空间特征和纹理特征是通过数学描述符提取的,如Haar空间[12]、尺度不变特征变换[13]、局部二元模式[14]和灰色水平共现矩阵[15]。这些方法基于人对建筑物的观察和总结,由人工设计建筑物特征,相对简单高效,但是不能充分利用建筑物的抽象特征信息。近年来广泛发展的深度学习通过大量的数据去自动学习数据集中图像的特征。
现阶段很多CNN在图片分类任务上效果很好,但是在分割领域效果不佳,因为分类任务是将整张图片进行分类,而分割需要对图片每个像素点进行分类,以LinkNet[16]网络为例,在深度卷积网络中往往都会池化降采样减小特征图,从而降低计算量,LinkNet将ResNet[17, 18]作为预训练网络,通过池化和步长为2的卷积降采样,虽然编码器每次降采样得到的特征图都会与解码器阶段上采样得到的特征图相加,但是这个过程造成了不可逆转的信息损失。为了利用图片上更多的空间信息,本文使用不同扩张系数空洞卷积来获取不同大小的感受野,然后将每个卷积的结果串联,减少信息损失。考虑到城市区建筑物群和普通地方独立建筑大小差异问题以及选用的ResNet网络最后一层输出的尺寸为16×16,本文选取的扩张系数为1、2、4、8和额外一个全局池化操作。而且,为了利用每个阶段的语义特征,本文对每个阶段的特征图都进行逐级预测。
注意力机制将网络更多的注意力集中在任务目标上。本文使用的空间注意力是将两个相同大小的特征图分别通过3×3卷积将通道数降为1后相加,再通过ReLU激活函数和卷积以及Sigmoid函数形成门控,最后将这个门控输出,与初始的一个特征图相乘,从而抑制特征图的背景响应。此外,本文使用通道注意力,首先将特征图通过自适应平均池化将特征图大小变成1×1,然后将通过卷积和Sigmoid函数得到的特征图的权重作为通道注意力,并将其与初始的特征图相乘,抑制不重要的通道特征。最后将通道注意力和空间注意力的结果相加。
本文提出了一种名为ADLinkNet的方法,基于LinkNet网络和空洞卷积结构,采用注意力模块,将网络注意力集中在建筑物上来提高建筑提取精度,网络整体结构如图 1所示。
![]() |
图 1 ADLinkNet网络结构图 Fig.1 Network Structure Diagram of ADLinkNet |
实验的主要步骤如下:
1)获取高分辨率遥感影像数据。实验中采用的所有高分辨率遥感影像数据均来自WHU Building数据集,影像分辨率为0.075 m,影像均为三通道图片,尺寸大小为512×512,该数据集包含了新西兰18.7万多座不同大小和外观的建筑。数据集分为训练集、验证集和测试集三部分,其中训练集和验证集分别由4 736和1 036幅图像组成,测试集由2 416幅图像组成。
2)构建深度网络模型。在训练集上训练,获取建筑物提取模型参数。本文的ADLinkNet模型使用的是Pytorch深度学习框架,其构建模型的效率高。
3)将建筑物训练集进行预处理,主要是水平翻转、垂直翻转和归一化等基本图像处理操作。将图片输入模型,对网络模型的参数进行训练,当每张训练图片被输入网络,预训练的ResNet18网络会提取出5个不同尺度的特征图,分别是64×256×256、64×128×128、128×64×64、512×16×16,对512×16×16的特征图通过5个支路使用不同的扩张率捕获不同尺度的特征,将结果拼接起来,再通过卷积减小特征图的通道数,然后同时进行两个操作:①通过卷积和32倍上采样后预测一个概率图;②通过卷积和2倍上采样得到一个256×32×32的输出,同时将编码器同阶段中相同尺寸的特征图通过注意力机制得到一个输出,将两个输出相加之后卷积一次。对256×32×32、128×64×64、64×128×128、64×256×256的特征图重复上述操作,一共得到5个概率图,将5个概率图拼接起来,再卷积预测1个概率图,总共预测了6个概率图,损失函数采用BCELoss函数,计算公式为:
$ L = - [y\ln \hat y + (1 - y)\ln (1 - \hat y)] $ | (1) |
式中,y表示影像标签,y∈{0, 1},其中1表示该像素点属于建筑物,0表示像素点属于背景。所以式(1)又可以写作
$ {T_L} = \sum\limits_{i = 0}^5 {{L_i}} $ | (2) |
本文利用在ImageNet数据集上训练好的参数对网络初始化,通过训练对网络进行微调,获得建筑物提取的模型参数。
4)将测试影像归一化后输入训练好的ADLinkNet网络模型,预测结果的概率图是最后一次预测的概率图,如果输出的概率图中点的值大于等于0.5,则认为该像素点属于建筑物,小于0.5则属于背景,最终得到预测的提取结果。
本文方法技术流程图如图 2所示。
![]() |
图 2 本文方法技术流程图 Fig.2 Flow Chart of the Proposed Method |
2 ADLinkNet实验与分析 2.1 实验参数
实验采用SGD优化器作为优化函数,初始学习率设为0.01,采用的显卡是GTX2080,1个11 G的GPU显卡,实验中将batchsize的值设为12,总迭代次数为50。
2.2 实验结果和分析本实验在WHU Building测试集进行测试,包含建各种筑物通常会出现的场景,如城市、农村、市区和郊区等,这些建筑物在尺寸、色彩、角度、纹理、光照等方面均有差异,多样性很高,因此可以用来测试算法的鲁棒性和准确性。
本文采用4种通用的指标对建筑物提取结果进行评估:准确率(Precision)、召回率(Recall)、F1分数(F1-Score)、交并比((intersection over union,IoU)。准确率指算法预测的正确建筑物像素点个数与预测的建筑物总像素点个数之比;召回率指算法预测的正确建筑物的像素点与标签中建筑物总像素点个数之比。定义如下:
$ \left\{ {\begin{array}{*{20}{l}} {P = \frac{{{T_P}}}{{{T_P} + {F_P}}}}\\ {R = \frac{{{T_P}}}{{{T_P} + {F_N}}}} \end{array}} \right. $ | (3) |
式中,P表示准确率;R表示召回率;TP表示算法正确预测的建筑物像素点个数;FP表示算法将背景误检为建筑物的像素点的个数;FN表示被漏检的建筑物像素点个数。
Fβ将这两个指标进行综合评估,定义为:
$ {F_\beta } = \left( {1 + {\beta ^2}} \right)\frac{{P \times R}}{{{\beta ^2} \times P + R}} $ | (4) |
Fβ在准确率指标前设定一个系数β用于平衡召回率和准确率之间的关系。在建筑物提取任务中一般设为1,即为F1。
IoU值表示预测值和标签中建筑物的IoU,计算方法为:
$ {\rm{IoU}} = \frac{{{T_P}}}{{{T_P} + {F_P} + {F_N}}} $ | (5) |
对比实验评估结果如表 1所示。
表 1 对比实验结果 Tab.1 Comparison of Experimental Results |
![]() |
从表 1中可以看出,相较于其他方法,ADLinkNet在4个指标上都有明显的优势。增加的空洞卷积模块和注意力机制均对结果有不同程度的提升。一方面,本方法使用不同扩张率并联的空洞卷积能捕获不同大小建筑物的语义信息,这样对不同地区的建筑物提取效果更好;另一方面,注意力机制能使网络将注意力集中在建筑物部分,抑制了影像中的背景响应。
此外,多尺度监督能够在不同分辨率下对提取结果进行监督,对不同尺寸的建筑物在不同分辨率下进行分级提取,同时在训练时也能够加快网络收敛。部分实验结果见图 3。图 4为ADLinkNet在测试集上漏检的一些结果。从图 4可以看出,由于抑制了背景响应,在避免一些大型汽车被误检为建筑物的同时,存在一些漏检情况,尤其是在狭长建筑物上,而且当背景色彩纹理与建筑物相近时,漏检会更明显。
![]() |
图 3 测试集影像提取建筑物的部分结果 Fig.3 Partial Building Extraction Results from the Test Dataset |
![]() |
图 4 ADLinkNet在测试集上漏检结果 Fig.4 Missed Buildings in the Test Dataset by ADLinkNet |
3 结束语
针对高分辨率遥感影像建筑物提取问题,本文利用ResNet18预训练网络提取特征,结合空洞卷积和注意力机制获取不同建筑物的尺寸信息,通过多尺度监督来提高高分辨率遥感影像建筑物自动提取的效果。将本文方法与DeepLabv3、SegNet、UNet等方法进行对比,结果表明本文方法是有效的。下一步工作将考虑建筑提取中边缘的锋锐性,寻找解决阴影的方法,进一步提升建筑物提取效果。
[1] |
张勇, 谷正气, 刘水长, 等. 基于高分辨率遥感影像的城市群交通路网监测技术研究[J]. 遥感技术与应用, 2015, 30(1): 76-81. |
[2] |
张通, 潘励. 一种高分辨率遥感影像建筑物自动检测方法[J]. 测绘地理信息, 2020, 45(2): 101-105. |
[3] |
张澜. 基于高分辨率遥感影像的建筑物提取方法研究[D]. 重庆: 重庆邮电大学, 2020
|
[4] |
邵振峰, 陶峰, 丁霖. 一种高分辨率遥感影像建筑物提取方法: CN105608458A[P]. 2016-05-25
|
[5] |
Russakovsky O, Deng J, Su H, et al. ImageNet Large Scale Visual Recognition Challenge[J]. International Journal of Computer Vision, 2015, 115(3): 211-252. DOI:10.1007/s11263-015-0816-y |
[6] |
Shelhamer E, Long J, Darrell T. Fully Convolutional Networks for Semantic Segmentation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(4): 640-651. DOI:10.1109/TPAMI.2016.2572683 |
[7] |
Chen L C, Papandreou G, Kokkinos I, et al. DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFS[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018, 40(4): 834-848. DOI:10.1109/TPAMI.2017.2699184 |
[8] |
Zhou L C, Zhang C, Wu M. D-LinkNet: LinkNet with Pretrained Encoder and Dilated Convolution for High Resolution Satellite Imagery Road Extraction[C]. 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), Salt Lake City, UT, USA, 2018
|
[9] |
Rajaram R N, Ohn-Bar E, Trivedi M M. RefineNet: Iterative Refinement for Accurate Object Localization[C]. 2016 IEEE 19th International Conference on Intelligent Transportation Systems (ITSC), Rio de Janeiro, Brazil, 2016
|
[10] |
Ronneberger, Olaf, Philipp Fischer, and Thomas Brox. U-Net: Convolutional Networks for Biomedical Image Segmentation[C]. In International Conference on Medical Image Computing and Computer-Assisted Intervention, 2015: 234-41
|
[11] |
Badrinarayanan V, Kendall A, Cipolla R. SegNet: a Deep Convolutional Encoder-Decoder Architecture for Image Segmentation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(12): 2 481-2 495. DOI:10.1109/TPAMI.2016.2644615 |
[12] |
Viola P A, Jones M J. Rapid Object Detection Using a Boosted Cascade of Simple Features[C]. Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, Kauai, HI, USA, 2001
|
[13] |
Lowe D G. Distinctive Image Features from Scale-Invariant Keypoints[J]. International Journal of Computer Vision, 2004, 60(2): 91-110. DOI:10.1023/B:VISI.0000029664.99615.94 |
[14] |
Ojala T, Pietikainen M, Maenpaa T. Multiresolution Gray-Scale and Rotation Invariant Texture Classification with Local Binary Patterns[C]. IEEE Transactions on Pattern Analysis and Machine Intelligence. IEEE, 2002: 971-987
|
[15] |
Gomez W, Pereira W C A, Infantosi A F C. Analysis of Co-Occurrence Texture Statistics as a Function of Gray-Level Quantization for Classifying Breast Ultrasound[J]. IEEE Transactions on Medical Imaging, 2012, 31(10): 1 889-1 899. DOI:10.1109/TMI.2012.2206398 |
[16] |
Chaurasia A, Culurciello E. LinkNet: Exploiting Enco-der Representations for Efficient Semantic Segmentation[C]. 2017 IEEE Visual Communications and Image Processing, St. Petersburg, FL, USA, 2017
|
[17] |
He Kaiming, Zhang Xiangyu, Ren Shaoqing, et al. Deep Residual Learning for Image Recognition[C]. 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, NV, USA, 2016
|
[18] |
Li X L, Ding L K, Wang L, et al. FPGA Accelerates Deep Residual Learning for Image Recognition[C]. Proceedings of 2017 IEEE 2nd Information Technology, Networking, Electronic and Automation Control Conference, Chengdu, China, 2017
|