APP下载

基于全卷积网络的高分辨遥感影像目标检测

2018-02-28徐逸之姚晓婧

测绘通报 2018年1期
关键词:卷积精度分数

徐逸之,姚晓婧,李 祥,周 楠,胡 媛

(1. 中国科学院遥感与数字地球研究所,北京100094; 2. 中国科学院大学,北京100049; 3. 苏州中科天启遥感科技有限公司,江苏 苏州 215163)

高分辨率遥感影像的目标分类与识别是遥感影像智能化信息提取中的关键技术,是精确制导、武器防御、海情监控等军事目标识别系统的关键,也是提升减灾应急、交通监管、渔业海事等民用系统智能化水平的核心技术[1]。随着传感器技术的飞速发展,遥感影像的空间分辨率不断提高。高空间分辨率遥感影像不仅降低了中低分辨率遥感影像中存在的混合像元问题,更提供了丰富的空间信息、几何结构和纹理信息,这为遥感影像上目标的检测提供了可能,因此研究基于高分辨率遥感影像的目标检测识别算法成为当前的迫切需求。传统遥感影像目标检测算法多使用人工构造的浅层次特征,如HOG特征[2]、SIFT特征[3-4]等,识别效果严重依赖于专家知识及特征构造中的有效性,很难充分挖掘影像中深层特征。在目标检测的精度和效率方面,难以满足大范围自动化应用的需求,同时对于灾害应急等实时性要求较高的工程应用任务也十分局限。

近年来,深度学习算法在图像分类、自然语言处理、降维、目标检测、运动建模、人工智能等领域取得前所未有的成果[5-11]。深度学习一般需大量的训练样本才容易提取其特征,这与遥感图像大数据的特性不谋而合。深度学习在遥感中的应用引起广泛重视,并在场景分类[12]、高光谱图像分类[13-14]等方面取得显著性成效。目标检测方面,Chen Xueyun[15-16]使用深度置信网络和深度卷积网络进行了飞机和车辆的检测;Diao Wenhui[17]提出了一种基于稀疏深度置信网络遥感影像目标检测方法,并在QuickBird影像上进行了飞机检测试验,达到了88.9%的准确率,每张图检测时间为6.3 s;Han Junwei等[18]提出了一种基于深度玻尔兹曼机的遥感影像目标检测方法,并在3个光学遥感影像数据集上进行了试验,证明了方法的有效性;高常鑫[19]使用栈式自编码器来提取高分辨率遥感影像中目标语义表征及上下文约束表征,以实现高精度目标检测。然而,这些方法都聚焦在使用深度学习算法来进行特征提取,然后使用提取的特征构造分类器。检测流程中并没有给出目标搜索的算法,而是需要使用扫描窗口来逐一判读目标位置,因而效率较低。Faster R-CNN算法首次提出使用区域建议网络(regional proposal network,RPN)来提取候选区域,将候选区域提取与分类统一到同一框架,实现了端到端的目标检测过程,检测精度和效率都得到了大幅提高。王万国等[20]使用Faster R-CNN算法开展了无人机巡检图像电力小部件识别研究,达到每张近80 ms的识别速度和92.7%的准确率。但是,Faster R-CNN算法由于使用了RoI池化层,各个RoI计算不共享,因此检测速度依然较慢,无法达到实时性任务的需求。

全卷积网络(fully convolutional networks)为目标检测提供了一种新的高效检测框架,诸如残差网络(ResNet)[21]和GoogLeNets[22]等先进的图像分类网络均为全卷积网络。类似地,可在物体检测中用全卷积网络。然而,现有研究表明,直接使用全卷积网络进行目标检测效果远差于该网络的分类效果。主要原因在于物体分类要求平移不变性越大越好,因而平移不变性较好的全卷积结构更受青睐,而物体检测需要一些平移变化的定位表示。为了解决这一问题,R-FCN(regional-fully convolutional networks)[23]算法采用专门的卷积层构建位置敏感分数图,每个空间敏感分数图编码感兴趣区域的相对空间位置信息。该方法在ImageNet挑战赛、COCO目标检测任务中取得了较好的效果。

本文研究基于全卷积网络的R-FCN算法在高分辨遥感影像目标检测中的应用,并以飞机识别为例,比较Fast R-CNN[24]、Faster R-CNN[25]和R-FCN 3种算法的检测精度和效率。

1 基于R-FCN的目标检测

1.1 整体框架

类似于区域卷积神经网络(R-CNN),本文采用计算机视觉领域流行的目标检测策略,包括区域建议和区域分类两步。用Faster R-CNN中的区域建议网络(RPN)提取候选区域,该RPN为全卷积网络。效仿Faster R-CNN,共享RPN和R-FCN的特征。R-FCN用来对RPN提取的感兴趣区域分类。整体技术流程如图1所示。

图1 基于RFCN的飞机检测流程

R-FCN在与RPN共享的卷积层后多加1个卷积层,该卷积层在整幅图像上为每类生成k2个位置敏感分数图,有C类物体外加1个背景,因此有k2(C+1)个通道的输出层。k2个分数图对应描述位置的空间网格。如k×k=3×3,则9个分数图编码单个物体类。

R-FCN最后用位置敏感RoI池化层,给每个RoI 1个分数。与Faster R-CNN的RoI池化方式不同,这里使用选择性池化。选择性池化图解:看上图的浅蓝色响应图像(top-left),抠出浅蓝色方块RoI,池化浅蓝色方块RoI得到浅蓝色小方块分数;其他颜色的响应图像同理。对所有颜色的小方块投票(或池化)得到各个类别的响应结果,也即C+1个类别得分,最后使用Softmax分类器进行分类。如图2所示。

图2 R-FCN网络结构

1.2 区域建议网络

RPN网络的输入为一个卷积特征图,使用一个k×k滑动窗口(本文使用3×3)扫描整个特征图,得到一个256-d的特征图,然后使用大小为1×1的卷积核对其进行卷积运算,得到一个2k(类别)通道的分数图和一个4k(边界框)通道的分数图。试验中采用3种不同尺寸(128、256、512)和3种不同比例(1∶1、1∶2、2∶1)组合成的9种基准小窗口对包含目标的窗口位置进行预测,使区域提议更准确。

1.3 位置敏感分数图

式中,rc(i,j)为第c类第(i,j)个桶的池化响应;zi,j,c为k2(C+1)个分数图中的输出;(x0,y0)为RoI的左上角坐标;n为桶里的像素总数;θ为网络的参数。

1.4 网络训练

每个RoI的损失函数为交叉熵损失与边界框回归损失的加权和

L(s,tx,y,w,h)=Lcls(Sc*)+λ[c*>0]Lreg(t,t*)

式中,c*是RoI的真实类别标签,c*=0说明RoI为背景。当RPN产生的区域建议当RoI与真实边框的IoU(RoI与真实边框交集的面积占它们并集面积的比例)超过0.5时,标定为正样本,否则为负样本。Lcls使用Softmax损失函数,Lreg使用SmoothL1损失函数,计算方式参照文献[26],同样设置λ为1。

此外,在网络训练过程中,使用在线难例挖掘(OHEM)[28]。在线难例挖掘是一种Hard Negative Mining的方式,用于启发式地选择出模型难以正确分类的样本,从而使训练过程更为高效。假设每个图像前向产生N个区域建议,计算所有建议的损失。按损失排序所有RoIs,选择损失最高的B个RoIs,反向传播过程只使用选择的难样本。

2 试 验

2.1 试验数据

从谷歌地图上选取了100张包含飞机的图片,原始图像大小近似为600×600像素,并人工标注其中飞机样本外边框,如图3所示。使用其中50%图片样本进行训练和验证,剩余50%的图片样本用于测试。本次试验中,用准确率和召回率来评判识别的准确性,其中召回率为正确识别飞机数量除以测试图像中飞机总数量,准确率为正确识别飞机数量除以模型识别出来飞机数量。

2.2 试验设置

本文R-FCN方法中RPN网络和检测网络使用ResNet-50/ResNet-101来构建。ResNet-50(101)使用50(101)个卷积层,后接1个平均池化层和1个全连接层。删除平均池层和全连接层,只使用卷积层来计算特征图。使用ImageNet数据集对ResNet-51(101)网络进行了预训练。ResNet-51中的最后一个卷积块是2048-d,附加一个随机初始化的1024-d的1×1卷积层,放在k2(C+1)通道卷积层之前,用于减小尺寸。

图3 飞机样本

在训练过程中,设置初始学习速率为0.001,每迭代2000次降低为原来的0.1倍,学习动量为0.9,正则化项系数为0.001 6,批处理大小为64。本文采用端到端(end-to-end)的方式来训练RPN网络和R-FCN网络。

本文所有试验均在同一台服务器上完成,采用GPU编程实现。试验中使用GTX TITAN X显卡(12 GB显存),基于Caffe框架实现卷积神经网络模型。

3 结果与讨论

首先,本文试验了不同参数设置对平均准确率均值(mAP)的影响。根据R-FCN论文结论可知,输入影像的尺寸、最大迭代次数及是否使用OHEM对检测精度有较大的影响,因此笔者进行了多组对比试验确定最优参数配置。表1展示了不同试验设置情况下的检测精度。从表1可知,不同参数配置下,R-FCN算法精度变化不明显,均在90%左右浮动;使用OHEM能提高R-FCN算法精度;增大输入影像尺寸和最大迭代次数,R-FCN检测精度并没有提高,反而可能会降低。

表1 不同参数配置下R-FCN在测试集上mAP对比 (%)

然后,本文使用更深的ResNet-101构建R-FCN网络,参数调优过程同上,检测精度见表1。从表1可知,使用更深的网络结构,检测精度几乎不变,导致这一现象的原因可能是网络太深造成了过拟合现象。使用以上确定的最优参数配置,随机从测试样本中挑选了5张图片进行测试,测试效果如图4所示。从图中可以看出,R-FCN方法能够有效地识别各种尺寸、背景、光照条件下的飞机无错检和漏检的情况。在检测IoU阈值设定为0.5的情况下,召回率达到98.6%,对应的准确率为99.3%。

最后,笔者比较了R-FCN、Faster R-CNN、Fast R-CNN这3种方法在测试集上的识别精度和速度,见表2。需要说明的是,Fast R-CNN算法使用Selective Search生成候选区域,而Faster R-CNN和R-FCN算法使用区域建议网络生成候选区域。为了使试验结果具有可比性,保持3种方法使用的候选区域数量一致,都是300个。

图4 基于R-FCN的飞机识别效果

从表2可以看出:①Fast R-CNN方法由于使用传统Selective Search方式确定候选区域,而过程采用CPU运算,因而速度远低于另外两种基于GPU运算的方法;②Faster R-CNN+ZF/VGG16由于网络结构简单(5层,16层),检测速度较快,但精度较低,出现了较多错检和漏检的情况;③使用ResNet-50(101)网络结构的Faster R-CNN算法,检测精度得到了提高,但由于Faster R-CNN中RoI池化计算不共享,因而速度比同样网络结构的R-FCN方法慢;④R-FCN方法采用全卷积网络结构,RoI池化层共享计算,检测精度高、速度快。综合考虑,R-FCN方法目标检测效果优于Faster R-CNN,远优于Fast R-CNN方法。

4 结 语

本文探讨了基于全卷积网络的R-FCN算法在高分辨遥感影像目标检测中的有效性,并分析了不同参数和网络结构对R-FCN检测效果的影响,对比分析了Fast R-CNN算法、Faster R-CNN算法和R-FCN算法在飞机识别中的效果。结果表明,R-FCN方法比Fast R-CNN算法和Faster R-CNN识别精度更高,速度更快,识别准确率达99.3%,识别速度达到每张180 ms,基本满足高分辨遥感影像处理自动化实时处理需求。

[1] 刘扬,付征叶,郑逢斌.高分辨率遥感影像目标分类与识别研究进展[J].地球信息科学学报,2015,17(9):1080-1091.

[2] DALAL N,TRIGGS B.Histograms of Oriented Gradients for Human Detection[C]∥Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition(CVPR’05).[S.l.]:IEEE,2005.

[3] LOWE D G.Object Recognition from Local Scale-invariant Features[C]∥Proceedings of the 7th IEEE International Conference on Computer Vision.Kerkyra:IEEE,1999.

[4] LOWE D G.Distinctive Image Features from Scale-invariant Keypoints[J].International Journal of Computer Vision,2004,60(2):91-110.

[5] HINTON G E,SALAKHUTDINOV R R.Reducing the Dimensionality of Data with Neural Networks[J].Science,2006,313(5786):504-507.

[6] COLLOBERT R,WESTON J.A Unified Architecture for Natural Language Processing:Deep Neural Networks with Multitask Learning[C]∥Proceedings of the 25th International Conference on Machine Learning.Helsinki:ACM,2008.

[7] BENGIO Y.Learning Deep Architectures for AI[J].Foundations and Trends in Machine Learning,2009,2(1):1-127.

[8] MOHAMED A,SAINATH T N,DAHL G,et al.Deep Belief Networks Using Discriminative Features for Phone Recognition[C]∥IEEE International Conference on Acoustics,Speech and Signal Processing(ICASSP).Pragve:IEEE,2011.

[9] CHAN T,JIA K,GAO S,et al.PCANet: A Simple Deep Learning Baseline for Image Classification?[J].IEEE Transactions on Image Processing,2015,24(12):5017-5032.

[10] KAVUKCUOGLU K,RANZATO M,LECUN Y.Fast Inference in Sparse Coding Algorithms with Applications to Object Recognition[C]∥Proceedings of OPT 2008.[S.l.]:[s.n.],2008.

[11] SILVER D,HUANG A,MADDISON C J,et al.Mastering the Game of Go with Deep Neural Networks and Tree Search[J].Nature,2016,529(7587):484-489.

[12] ZHANG F,DU B,ZHANG L.Scene Classification via a Gradient Boosting Random Convolutional Network Framework[J].IEEE Transactions on Geoscience and Remote Sensing,2016,54(3):1793-1802.

[13] HU W,HUANG Y,WEI L,et al.Deep Convolutional Neural Networks for Hyperspectral Image Classification[J].Journal of Sensors,2015(2015):1-12.

[14] MA X,GENG J,WANG H.Hyperspectral Image Classification via Contextual Deep Learning[J].EURASIP Journal on Image and Video Processing,2015.https:∥doi.org/10.1186/s13640-015-0071-8.

[15] CHEN X,XIANG S,LIU C,et al.Aircraft Detection by Deep Belief Nets[C]∥2013 2nd IAPR Asian Conference on Pattern Recognition(ACPR 2013).Naha:IEEE,2013:54-58.

[16] CHEN X,XIANG S,LIU C,et al.Vehicle Detection in Satellite Images by Hybrid Deep Convolutional Neural Networks[J].IEEE Geoscience and Remote Sensing Letters,2014,11(10):1797-1801.

[17] DIAO W,SUN X,DOU F,et al.Object Recognition in Remote Sensing Images Using Sparse Deep Belief Networks[J].Remote Sensing Letters,2015,6(10):745-754.

[18] HAN J,ZHANG D,CHENG G,et al.Object Detection in Optical Remote Sensing Images Based on Weakly Supervised Learning and High-level Feature Learning[J].IEEE Transactions on Geoscience and Remote Sensing,2015,53(6):3325-3337.

[19] 高常鑫,桑农.基于深度学习的高分辨率遥感影像目标检测[J].测绘通报,2014(S1):108-111.

[20] 王万国,田兵,刘越,等.基于RCNN的无人机巡检图像电力小部件识别研究[J].地球信息科学学报,2017,19(2):256-263.

[21] HE K,ZHANG X,REN S,et al.Deep Residual Learning for Image Recognition[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Las Vegas:IEEE,2016.

[22] SZEGEDY C,LIU W,JIA Y,et al.Going Deeper with Convolutions[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Boston:IEEE,2015.

[23] DAI J,LI Y,HE K,et al.R-FCN: Object Detection via Region-based Fully Convolutional Networks[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Las Vegas:IEEE,2016.

[24] GIRSHICK R.Fast r-cnn[C]∥Proceedings of the IEEE International Conference on Computer Vision.[S.l.]:IEEE,2005.

[25] REN S,HE K,GIRSHICK R,et al.Faster R-CNN: Towards Real-time Object Detection with Region Proposal Networks[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2017,39(6):1137-1149.

[26] SHRIVASTAVA A,GUPTA A,GIRSHICK R.Training Region-based Object Detectors with Online Hard Example Mining[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Las Vegas:IEEE,2016.

猜你喜欢

卷积精度分数
热连轧机组粗轧机精度控制
基于3D-Winograd的快速卷积算法设计及FPGA实现
分数的脚步
分数的由来
无限循环小数化为分数的反思
卷积神经网络的分析与设计
超高精度计时器——原子钟
从滤波器理解卷积
分析误差提精度
可怕的分数