测绘地理信息   2020, Vol. 45 Issue (2): 101-105
0
一种高分辨率遥感影像建筑物自动检测方法[PDF全文]
张通1, 潘励1    
1. 武汉大学遥感信息工程学院,湖北 武汉,430079
摘要: 高分辨率遥感影像具有丰富的空间信息、地物几何结构和纹理信息,有助于对地物目标进行认知和解译。而建筑物目标在人类活动区域内占据重要地位,对高分辨率遥感影像中的建筑物进行自动检测具有重大意义。提出了一种基于全卷积神经网络的建筑物自动检测方法,并制作了建筑物样本数据集,利用基于区域的全卷积神经网络和特征检测网络进行建筑物检测模型的参数训练,对待检测影像进行预处理之后利用模型进行建筑物检测,得到影像中的建筑物目标的具体位置和类别置信度。实验证明,提出的检测方法具有更好的效果和更快的速度。检测召回率达到92%,检测准确率达到98%,证明了该方法针对建筑物检测具有较高的精度和较强的稳定性。
关键词: 高分辨率遥感影像    建筑物检测    全卷积神经网络    深度学习    
An Automatic Building Detection Method from High Resolution Remote Sensing Images
ZHANG Tong1, PAN Li1    
1. School of Remote Sensing and Information Engineering, Wuhan University, Wuhan 430079, China
Abstract: High-resolution remote sensing image has rich spatial information, geometric structure and texture information, which can help to understand and interpret the target of the images. The goal of building occupies an important position in the human activity area, and the automatic detection of buildings in high-resolution remote sensing images is of great significance. We propose an automatic building detection method based on the fully convolutional neural network. We use the fully convolutional neural network based on regional (region-based fully convolutional network, R-FCN) and feature detection network (residual network, ResNet) for building samples parameter training. After doing some pre-processing to the test images, we utilize the training template to obtain the location and confidence of the building target. Experimental results showed that the proposed method has excellent performance. The detection recall rate reaches 92% while the detection accuracy reaches 98%, which proves that the model has high precision and strong stability in the field of building detection.
Key words: high-resolution remote sensing image    building detection    fully convolutional neural network    deep learning    

航天遥感技术经过多年的发展, 无论在光谱分辨率、空间分辨率、时间分辨率等方面都已经取得巨大的进步,形成了高光谱、高空间分辨率、全天时、全天候、实时/准实时的对地观测能力。这些先进的航天遥感技术为监测全球变化、区域环境变化等提供了大量的宏观、现势性资料,造福于人类及其安居环境。尤其是自法国发射了SPOT-1号卫星以后,基于现势性极好的高空间分辨率卫星遥感影像的应用已引起了世界各国的普遍关注。

而在城市地区高空间分辨率遥感影像中,80%以上的目标是建筑物区域,所以对高分辨率遥感影像建筑物目标的检测一直以来是学术界的研究热点[1]。建筑物检测研究的应用领域也十分广阔,主要有城市空间数据库更新[2]、城市动态变化监测[3]、城市三维建模[4-5]以及数字城市和智慧城市[6]建设等方面。但高分遥感影像相对自然图像场景复杂,信息量巨大,地物类别多[7],导致遥感影像上的建筑物提取通常困难重重。此外,建筑物本身角度、尺度、形状复杂多样,并受到阴影、遮挡等问题的干扰。因此,基于底层特征提取或图像分割等流程的传统建筑物检测算法虽然实现简单,但在准确率和召回率方面表现并不令人满意。传统方法应用效果的不足迫使人们寻求新的研究思路。

近些年以来,深度学习在机器学习领域取得了非凡的成就。卷积神经网络(convolutional neural network,CNN)在ImageNet图像分类数据集上取得了好成绩。2015年,微软亚洲研究院视觉计算组宣布其开发的基于深度卷积神经网络的计算机视觉系统在ImageNet 2012数据集上1 000类别物体分类的错误率已降低至4.94%。此前同样的实验中,人眼辨识的错误率大概为5.1%,这意味着计算机首次超越了人类进行对象识别分类的能力。人工智能现今也细分为多个领域,如计算机视(computer vision,CV)、语音识别(speech recognition)、自然语言处理(natural language processing,NLP)等,其中计算机视觉是应用最广泛的领域之一,具有非常广阔的科研与应用价值。而图像识别、图像目标检测是计算机视觉领域最重要的研究内容,近些年来图像识别和检测算法层出不穷,目标检测准确率不断提升。

因此,为了充分利用高分影像中的建筑物的深层信息和整体特征,本文提出了一种基于全卷积神经网络的建筑物检测方法。在基于建筑物自身的特征基础上,不引入额外信息,充分发挥高分辨率遥感影像信息的丰富性,建立建筑物检测模型,提高建筑物检测的召回率和准确率,实现建筑物的自动检测。

1 基于全卷积神经网络的建筑物检测

传统的建筑物检测方法通常是基于图像分割、边缘和角点检测等手段和工具,利用建筑物浅层特征或局部特征,定位影像中建筑物的具体位置,并将它们与影像背景分离开来。但这些传统方法不能充分挖掘建筑物深层信息和整体特征,且通常需要手工设计特征,进行特征提取和学习,时常导致建筑物检测结果不能满足要求。为充分利用高分辨率遥感影像的丰富信息,提高建筑物检测精度,本文将自然图片目标检测领域的深度学习算法引入建筑物检测中,提出利用基于区域的全卷积神经网络(region-based fully convolutional network,R-FCN)[8]和特征提取网络ResNet-50[9]进行高分辨率遥感影像的建筑物目标检测。

现阶段大部分的卷积神经网络在分类任务上效果很好,但用在目标检测任务上却效果不佳,因为分类任务需要特征提取时具有平移不变性,检测任务则要求对目标的平移做出准确响应。Faster R-CNN之类的方法在感兴趣区(region of interest, RoI)池化层前都是卷积计算,具备平移不变性,但一旦插入RoI池化之后,后面的网络结构就不再具备平移不变性。对于基于区域(region-based)的检测方法,以Faster R-CNN为例,实际上是分成了几个子网络。第1个用来在整张图上做比较耗时的卷积,这些操作与候选区域无关,是计算共享的;第2个子网络是用来产生候选的边界框,如区域建议网络(region proposal networks,RPN);第3个子网络用来分类或进一步进行边界框回归(如Fast R-CNN[10]),这个子网络和候选区域是有关系的,必须每个候选区域单独运行卷积计算,衔接在这个子网络和前两个子网络中间的就是RoI池化。早期工程实践中的图片分类器网络设计造成了这样一种结构,如AlexNet[11]和VGGNet[12]。但目前最先进的图片分类器网络,如ResNet和GoogLeNet,通常被设计为全卷积结构,因此,利用所有的卷积层构建一个完全共享卷积计算的目标检测网络十分有必要。

R-FCN通过设计一个位敏得分图(position-sensitive score map)编码目标相对空间位置,从而将平移可变性引入到全卷积神经网络,使得全卷积神经网络能用于目标检测任务。通过这种设计,一个全卷积的图像级别分类器能够被有效转化为一个全卷积目标检测器。因此,通过R-FCN的巧妙结构设计,ResNet-50这种全卷积特征提取网络最终可以用于目标检测任务。

本文的建筑物目标检测方法正是基于R-FCN目标检测网络和ResNet-50特征提取网络。主要步骤如下。

1) 下载高分辨率遥感影像数据,建立建筑物样本训练集。本文实验中所采用的所有高分辨率遥感影像数据均来源于谷歌地图高清无偏移彩色影像,影像分辨率为0.2 m,为三通道彩色图像。采集地点位于欧洲德国、法国等国的城镇、乡村、工厂等地区,影像质量较高,色彩明亮,纹理清晰,可以保证本实验的开展。在这些影像数据中,人工采集建筑物正样本共3 241个,样本标注格式参照PASCAl VOC2007[13]的数据集标准。经过样本翻转扩充一倍后,总共获得6 482个建筑物正样本,制作成本文建筑物样本训练集。

2) 搭建算法环境,进行建筑物样本训练,获取检测模型参数。本文的R-FCN检测算法搭建在Caffe深度学习框架下,主机环境为Windows 10操作系统,配置I5-4690 3.5GHz 4核CPU和4 GB Nvidia Quadro K1200 GPU,并使用Cuda 8.0和Cudnn-5.1软件环境用于GPU加速计算,并将Linux系统下深度学习算法环境配置到windows系统,便于后期代码维护和使用。

随后,建筑物样本训练集被输入到R-FCN算法框架中,进行建筑物模型参数训练。当每张训练影像被输入到框架中后,本文使用ResNet-50特征提取网络进行卷积计算得到影像特征图(feature maps),从而获得建筑物目标深层信息和整体特征。同时本文使用RPN方法用于影像中建筑物目标候选区域选取,RPN本身也是一个全卷积网络,可以共享卷积计算结果,从而大大减少候选区域选取时间。最后利用Softmax进行多任务损失函数计算,同时得到RoI类别置信度和目标框准确位置,损失函数则定义为:

$ L\left(s, t_{x, y, w, h}\right)=L_{\mathrm{cls}}\left(s_{c}^{*}\right)+\lambda\left[c^{*}>0\right] L_{\mathrm{reg}}\left(t, t^{*}\right) $ (1)

式中,c*表示RoI真值标注区域(c*=0表示区域为背景),Lcls(sc*)表示分类结果交叉熵损失函数值;Lreg表示目标框回归损失函数值;c*>0是一个标识符,如果参数为真则其值为1,否则为0;λ是前后损失值权重系数,笔者设置λ=1,以保证类别损失函数值和目标框回归损失函数值对整体损失函数起到同等的作用。本文设定当RoI与真实样本标注区域重叠度(intersection over union, IOU)大于0.5时,即认为其是建筑物正样本目标,重叠度小于0.3是为负样本目标,重叠度在这中间的不做考虑。本文利用训练于ImageNet数据集的参数权重数据初始化网络并利用制作好的建筑物样本集进行参数微调训练,最终获得建筑物目标检测模型参数。

3) 对待检测影像进行预处理,利用模型对待检测影像进行建筑物检测。首先,对待检测影像做去噪处理和影像增强的预处理,去除影像中细碎干扰信息并增强建筑物目标边缘、纹理等特征;然后,利用样本集训练得到的模型参数进行影像建筑物检测,同时利用RPN方法进行感兴趣区域提取,设置RoI类别置信度大于0.7时即认为此RoI包含真实建筑物目标,并利用非极大值抑制(non-maximum suppression, NMS)[14]手段去除冗余检测框,最终保留下最优的检测矩形框位置,从而得到建筑物检测结果。

本文技术流程图如图 1所示。

图 1 技术流程图 Fig.1 Flow Chart of the Method

2 实验结果与分析

为验证本文的建筑物检测方法的有效性,笔者从谷歌地图及必应地图随机选取了50张包含建筑物目标的高分影像作为笔者的测试影像数据集,影像平均大小为2 000像素×2 000像素左右,分辨率为0.2 m,均为三通道彩色图像。这些测试影像包含了建筑物通常会出现的场景,包括城镇、村庄和工厂等。同时,这些建筑物拥有不同的尺寸、角度、纹理等特征,以验证算法的鲁棒性和准确性。

本文采用3种广为使用的指标来评价算法的检测结果,分别是准确率、召回率和Fβ[15]。准确率表示算法检测到的正确建筑物个数占检测到的所有建筑物个数的百分比,召回率表示算法检测到的所有建筑物个数占影像包含的所有建筑物个数百分比。笔者以PR分别表示准确率和召回率,定义为:

$ \left\{\begin{array}{l} P=\frac{T_{P}}{T_{P}+F_{P}} \\ R=\frac{T_{P}}{T_{P}+F_{N}} \end{array}\right. $ (2)

式中,TP表示影像中被算法正确检测为建筑物目标的个数;FP表示算法错误检测到的建筑物目标个数; FN表示被漏检的建筑物目标个数。

Fβ则将前两种评价指标统一到一个测度中计算,其公式定义为:

$ F_{\beta}=\frac{\left(1+\beta^{2}\right) P \times R}{\beta^{2} \times P+R} $ (3)

Fβ在准确率指标前设置一个β倍的系数,以便使用者自主地决定召回率和准确率之间的平衡关系。本文在实验结果评价中设置β=1,因为在检测任务中,召回率和准确率指标同样重要,笔者希望同时得到较高的检测召回率和准确率。

笔者在表 1中展示了50张测试影像的评价结果。可以从表 1中看出,最高的召回率、准确率和Fβ均为100%。而最低的召回率、准确率和Fβ分别为63.64%、85%和77.78%。通过统计计算,检测方法的整体的召回率、准确率和Fβ分别达到了92.48%、98.70%和95.49%,证明了本文方法针对建筑物检测具有较好的准确性。笔者在图 2中展示了部分测试影像检测结果。从图 2中可以看出,影像中绝大部分的建筑物目标都被算法正确检测,本文以红色矩形框标出,并在检测框左上角标注建筑物置信度值。

表 1 测试影像建筑物检测结果评价 Tab.1 Evaluation of Building Detection in Test Images

图 2 建筑物检测结果示例图 Fig.2 Example of Building Test Results

测试影像检测结果中也有一些被漏检的建筑物目标,如图 2(b)图 2(c)图 2(g)图 2(h),本文在影像中以蓝色矩形框标出漏检建筑物。漏检的建筑物主要是因为建筑物周围高大树木遮挡,阴影区域过大等原因,遮挡和阴影区域影响了建筑物整体结构信息从而导致了漏检问题。此外,有些面积过小的建筑物目标有时也会造成漏检,面积过小导致在影像中占据的像素个数过小,经过多次卷积计算和池化层之后特征已趋于消失,RPN网络不能正确提取RoI,从而造成漏检问题。同时,有极少部分检测到的建筑物目标未能被检测矩形框完全包围,如图 2(b)中中间靠右的白色建筑物,造成这种现象的原因可能是单个建筑物目标体积过大同时长宽比也过大,导致算法在区域建议时未能提取到完全适合其大小和形状的RoI,从而导致检测框未能完全包围建筑物目标。

除了漏检问题,笔者还关注建筑物目标的误检问题。如图 3所示,展示了一些包含误检建筑物的测试影像,本文使用黄色矩形框标出被算法错认为是建筑物目标的物体。发现这些物体通常是卡车、油罐和小型空地等地物目标。这些目标通常具有和建筑物目标相似的结构信息和纹理特征,从而被算法误检为建筑物。因此,如何减少错检建筑物的数量是笔者以后研究中需要关注的重点。

图 3 建筑物误检示例图 Fig.3 Sample Images of the Building Wrongly Detected

为了验证本文框架用于建筑物检测的有效性,笔者对比了其他目标检测算法用于建筑物检测领域时的召回率,准确率和Fβ,如表 2所示,它们分别是ZFNet和VGG-16特征提取网络在Faster-RCNN深度学习框架下实现的目标检测方法。从表 2中数据可以看出,本文提出的方法的建筑物检测召回率、准确率和Fβ均是最高,结果优于其他方法。

表 2 不同检测方法结果比较 Tab.2 Comparison of Results of Different Test Methods

目标检测任务通常还十分关注样本训练效率和检测实时性方面的表现,特别是针对海量的遥感数据中的目标检测,生产实践中通常更需要快速、实时的检测效率,从而及时地更新地理信息数据。因此,笔者还对3种方法的单次迭代训练时间和每张测试影像的检测时间进行了对比,如表 3所示。从表 3中可以看出,本文方法在训练效率和单张测试影像检测效率的表现均优于对比方法。

表 3 不同方法的用时对比 Tab.3 Time Comparison of the Methods

3 结束语

针对高分辨率遥感影像建筑物目标检测问题,本文通过建立建筑物目标样本集,利用基于区域的全卷积神经网络R-FCN框架和ResNet-50残差网络提取建筑物目标深层信息,进而获得建筑物检测模型,用于提高高分辨率遥感影像建筑物检测召回率和准确率。通过与Faster R-CNN+VGG-16和Faster R-CNN+ZFNet框架方法的对比,证实了本文提出的方法能有效提高建筑物检测召回率和准确率,同时用时更短,具有更高的检测效率。下一步工作将考虑影像建筑物周围阴影和遮挡等问题,寻找排除这些干扰因素的有效方法,进一步提高建筑物检测准确率和召回率。

参考文献
[1]
张庆云, 赵冬. 高空间分辨率遥感影像建筑物提取方法综述[J]. 测绘与空间地理信息, 2015, 38(4): 74-78.
[2]
陈真, 何津. 智慧城市建设中建筑物数据库的设计[J]. 测绘通报, 2016(9): 103-107.
[3]
李德仁, 余涵若, 李熙. 基于夜光遥感影像的"一带一路"沿线国家城市发展时空格局分析[J]. 武汉大学学报·信息科学版, 2017, 42(6): 711-720.
[4]
赖玲莉, 许妙忠, 李明. 基于摄影测量的高精度三维城市建筑物建模技术[J]. 测绘信息与工程, 2007(5): 24-27. DOI:10.3969/j.issn.1007-3817.2007.05.010
[5]
彭代锋, 张永军, 熊小东. 结合LiDAR点云和航空影像的建筑物三维变化检测[J]. 武汉大学学报·信息科学版, 2015, 40(4): 462-468.
[6]
龚健雅, 王国良. 从数字城市到智慧城市:地理信息技术面临的新挑战[J]. 测绘地理信息, 2013, 38(2): 1-6.
[7]
沈佳洁, 潘励, 胡翔云. 可变形部件模型在高分辨率遥感影像建筑物检测中的应用[J]. 武汉大学学报·信息科学版, 2017, 42(9): 1285-1291.
[8]
Dai Jifeng, Li Yi, He Kaiming, et al. R-FCN: Object Detection via Region-Based Fully Convolutional Networks[C]. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Las Vegas, NV, USA, 2016
[9]
He Kaiming, Zhang Xiangyu, Ren Shaoqing, et al. Deep Residual Learning for Image Recognition[C]. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Boston, MA, USA, 2015
[10]
Girshick R. Fast R-CNN[C]. IEEE International Conference on Computer Vision, Santiago, Chile, 2015
[11]
Krizhevsky A, Sutskever I, Hinton G E. ImageNet Classification with Deep Convolutional Neural Networks[C]. International Conference on Neural Information Processing Systems, Lake Tahoe, Nevada, USA, 2012
[12]
Simonyan K, Zisserman A. Very Deep Convolutional Networks for Large-Scale Image Recognition[C]. IEEE Conference on Computer Vision and Pattern Recognition, Columbus, Ohio, USA, 2014
[13]
Everingham M, Gool L V, Williams C K I, et al. The Pascal Visual Object Classes (VOC) Challenge[J]. International Journal of Computer Vision, 2010, 88(2): 303-338. DOI:10.1007/s11263-009-0275-4
[14]
Neubeck A, Gool L V. Efficient Non-Maximum Suppression[C]. International Conference on Pattern Recognition, Hong Kong, China, 2006
[15]
Aksoy S, Yalniz I Z, Tasdemir K. Automatic Detection and Segmentation of Orchards Using Very High Resolution Imagery[J]. IEEE Transactions on Geoscience and Remote Sensing, 2012, 50(8): 3117-3131. DOI:10.1109/TGRS.2011.2180912