辛 鹏, 许悦雷, 马时平, 李 帅, 吕 超
(1. 空军工程大学 航空航天工程学院,陕西 西安 710038;2. 中国人民解放军95876部队,甘肃 张掖 734100)
在军事领域,机场具有能量补给、交通中转、飞机停靠等战略功能,是被敌方打击的重要目标.在民事领域,机场作为运输、能源配给的重要节点,对于促进经济发展起到十分重要的作用.遥感图像或光学图像中机场的检测与识别可以为整个图像的理解与应用提供参考,是良好的信息提取切入点.因此,研究图像中机场的搜索、检测和识别提取具有重大的意义,其成果在军事领域可用于战场监测、定位导航、任务规划等,在民事领域可用于地图绘制、飞机降落引导等.
早期的机场图像检测方法大致分两类[1]: 基于跑道直线特性的线段检测法以及基于机场纹理特征的场景分割和区域分析法.第1类方法原理简单,软件实现容易,但容易被具有类直线特征的目标如河流、道路等干扰,造成检测的虚警率较高; 第2类方法通常和滑动窗搜索等有关,得到的特征很复杂,计算量大,效率低,难以达到实时检测的要求.有人将迁移学习方法应用到机场检测中[2],取得了不错的效果,但只把深度学习用作特征提取的工具,区域的定位仍采用传统方法;也有人将卷积神经网络与其他方法结合起来进行道路提取[3],同样取得了良好的结果.最近,深度学习在区域提取领域也有了很大的突破,取得了优于传统方法的效果.考虑将机场检测的整个过程都用深度学习方法实现,笔者提出一种改进的区域提取网络和自适应池化网络结合的机场快速检测方法.
加快检测速度的方法大致分两类: 第1类方法着眼于硬件加速,主要是使用图形处理单元(Graphics Processing Unit,GPU)来进行大规模、并行运算及采用先进的中央处理器(Central Processing Unit, CPU)和更快的内存单元等来加速网络的计算速度; 第2类方法致力于优化网络结构,通过对卷积神经网络模型进行任务特异的修改、优化,引入一些特殊策略以减少计算量.针对机场检测任务,在图形处理单元加速的基础上,主要对网络结构进行改进、优化以达到机场快速检测的目的.
笔者通过复用区域提取网络和检测网络的卷积层对机场图像进行检测.其中区域提取阶段加入一个二分类分类器对候选区域进行优化,进一步提高网络的性能.
区域提取网络[4]通过复用检测网络的卷积层提取的特征进行区域提取,节约了计算量,加快了提取速度.
图1 区域提取网络结构示意图
1.1.1 网络结构和特点
区域提取网络在最后一层卷积层提取的特征图上,运行一个滑动窗口(尺寸自定,设为 3×3) 来生成候选区域.每个滑动窗口映射到一个低维向量上,该向量输入两个同级的全连接层——边界框分类层(cls)和边界框回归层(reg),前者对候选区域是否含有目标进行预测,后者依据目标的人工标定边界框对预测边界框位置进行修正.网络结构如图1所示.
为适应不同大小、不同形状的目标,每一个滑动窗口的位置同时预测多个不同大小和长宽比的候选边界框.每个框以滑动窗口的中心为中心,由两个点(框的左上角和右下角点)的坐标确定.命名每个框为一个锚,每个滑窗中心定义3种尺度和3种长宽比(共9类锚),因此网络的回归层有36个输出,即9种锚的坐标编码; 分类层输出18个得分,即每个锚是否包含目标的概率(可用二类的softmax层或logistic回归实现).由于卷积和池化的降维特性,特征图层面上每个锚在原始图像中对应的有效感受野很大.通过定义不同尺度的锚并经过位置修正,以达到预测图像中不同尺寸的机场的目的.
图2 边界框回归示意图
1.1.2 边界框回归和多任务损失
滑动窗口处的预测的锚尺寸和形状是固定的,但目标尺寸是多变的.为了能对不同尺寸目标的位置框定的更加准确,增加一个边界框回归层对候选区域的预测边界框进行修正.如图2所示,其中方框为人工标注的边界框,方框为预测的边界框,方框为经过修正后的边界框.注意:只有当预测的边界框和人工标定的边界框比较接近时,才近似把两者视为线性关系,能将其作为训练样本训练线性回归模型.具体细节参照文献[5].
为训练该网络,给每个锚分配一个二进制的标签.分配正标签给两类锚:与任意人工标定边界框有大于0.7的交集并集之比(Intersection-over-Union,IoU)的锚;与某个人工标定的边界框有最高的交集并集之比的锚(也许不到0.7).一个人工标定的边界框可能给多个锚分配正标签.给与所有人工标定的边界框的交集并集之比都低于0.3的锚分配负标签.其余的锚对训练不起作用.
训练目标有两个:一是预测候选区域含有目标的概率,另一个是对目标的边界框位置进行调整.遵循文献[5]中的多任务损失,定义一个候选区域的损失函数为
(1)
分类损失Lcls定义为Lcls(p,u)=-logpu,(2)
其中,R是文献[5]中定义的函数:
(4)
研究发现,多任务损失的联合训练可以使多个任务的信息互相补充,让公用特征提取得更好,从而提高整体效果.为减少冗余区域的数量,在区域提取结束后用非极大值抑制的方法对区域进行筛选.
图3 改进的区域提取网络方法示意图
实验中发现,区域提取网络提取的候选区域中存在大量定位较差的区域和背景区域,有很大的优化空间.文献[6]发现用卷积神经网络可以减少用聚类方法生成的候选区域的数量,提高检测性能;文献[7]用一个4层的级联卷积神经网络对候选区域重新排序,提升候选区域的质量.受此启发,借鉴分治策略[8],在区域提取网络后加一个二类分类器,对定位较差的区域和背景区域进行筛除,提出一种改进的区域提取网络.其中“二类”指目标和背景,该分类器参照自适应池化检测网络的结构(见1.3节)设计,以区域提取网络提取的候选区域为输入(正负样本的设置参照区域提取网络)进行训练,网络结构如图3所示.
二分类网络也包含边界框回归层,因为重复的边界框回归能进一步提高候选区域的定位精度.从网络结构上分析,新增加的二分类网络除了能筛除背景和一些定位较差的区域外,还能融合不同方法提取的候选区域,达到吸收不同区域提取方法的优势的目的.
传统的卷积网络只能输入固定尺寸的图像.为适应不同尺寸的输入,早期大多采用拉伸、缩放等形变方法,虽然能得到不错的准确率,但造成了目标及其特征的失真,对检测结果有一定影响.笔者在文献[9]提出的空间金字塔池化的基础上,借鉴自适应池化窗口大小和滑动步长的方法,将不同大小的特征图整合到同一尺度.为加快计算速度,将金字塔的层数减少至一层.
检测任务中每张图片产生数以千计的候选区域,许多区域重叠程度很高,它们均被送入同一网络进行检测,造成了相似特征的重复提取,大大增加了计算量.观察来自同一图像的多个候选区域,其特征都是整张图像特征的一部分,且空间位置是一一对应的.受此启发,考虑只提取整张图像的特征,候选区域的特征通过空间的对应关系映射得到.事实证明这是可行的,且检测速度得到了极大提升.
自适应池化层之后是几个全连接层,最后再经过两个同级的全连接层——分类层和回归层,如图4所示.网络结构与区域提取网络类似,区别是此时的分类为多目标分类.
图4 检测网络结构示意图
一个标准的神经网络的训练需要大量的标定数据,但笔者提供的数据量远远不够,考虑使用在大型数据集ImageNet[10]上预训练的网络作为模型的初始值,用笔者拥有的数据集再训练以微调网络权值.这样做是可行的,因为不同目标提取出的低级特征是相似的.有人采用类似的网络初始化方法[2],取得了不错的效果.具体到机场的检测任务,为避免过拟合,选择小型的预训练网络Zeiler and Fergus nets (ZF nets)[11]的最后一个卷积层及其之前的部分作为复用的卷积层,其余用均值为零、方差为 0.000 1 的高斯函数随机初始化.
笔者提出模型的训练不能简单地用反向传播算法将两部分视为整体联合训练,原因是检测网络的训练依赖于区域提取网络的提取区域.为了达到复用卷积层的目的,根据不同子网络输入输出的差异,按逻辑顺序采用一种交叉优化的训练策略[4],将区域提取网络和检测网络分开独立训练.具体分4步:
第1步 单独训练区域提取网络,微调网络权值并产生若干机场候选区域; 用产生的候选区域(也可以选择加入其他方法提取的候选区域)作为输入,训练二分类网络(网络初始化方式与区域提取网络相同),微调网络权值并产生优化后的机场候选区域;
第2步 用第1步产生的优化候选区域训练检测网络,微调网络权值,注意此时检测网络的初始化卷积层并非第1步微调过的,而是采用原始的预训练卷积层;
第3步 把第2步微调过的检查网络卷积层权重作为初始化的卷积层并固定不变,用和第1步相同的方法重新训练区域提取网络和二分类网络,只微调两个网络独有的层,同时产生新的机场候选区域;
第4步 保持第3步中的卷积层不变,用第3步产生的新机场候选区域微调检测网络,此时网络训练结束且达到了复用卷积层的目的.
以Matlab 2014b作为仿真平台,用Visual Studio 2013编译的caffe作为神经网络的框架,电脑配置的中央处理器为I7-7700 3.6 GHz,内存为 16 GB,显卡为NVIDIA GTX 1060.选取600张不同分辨率和不同尺寸的机场图像作为训练数据集,使模型学习多样的特征,同时在一定程度上防止过拟合.
图像中机场边界框的标注是用软件Labelimg实现的,选择8类场景作为训练目标,包括1个感兴趣场景(即机场)和7个背景场景(即山脉、建筑物、河流、森林、农场、道路和岛屿),每张图像可以标注多个场景,也可以只标注一类场景.每张图像都至少包含一个机场目标,因此机场类的训练样本比背景类的训练样本多,这也使得检测模型对机场的检测性能优于其他背景场景.
为防止过拟合,以0.5的概率将训练图像水平翻转来进行数据扩张,训练和测试集的比例设为6∶4,区域提取过程使用改进的区域提取网络并融合了选择性搜索方法[12]提取的区域.经过4个步骤的交叉优化训练,得到了实验的结果和训练好的机场检测网络模型.实验结果如表1所示.为证明改进的区域提取网络能提高检测性能,用控制变量法做了一组对比实验,结果如表2所示.
表1中的结果说明笔者提出的方法对机场这一目标有较好的检测性能,而且能区分与机场相似的场景,如道路、河流等.道路、河流等的平均检测率(Average Precision,AP)不够高,是因为训练样本不足,只有少部分的图像中存在这些场景.该结果是基于600张训练图像得到的.相信随着训练样本数量的增加,每类场景都能得到理想的平均检测率.
表1 网络训练和测试后每类的平均检测率
表2 区域提取方法的对比实验
表2中3个对比实验用到了控制变量法.改进区域提取方法的目的是提高检测性能,故选择最终检测网络的平均准确率的均值(mean Average Precision,mAP)和在10幅尺寸为 800× 600的测试图像上的平均检测时间作为评价指标.表2的结果显示,改进的区域提取网络能在不增加检测时间的前提下提高平均准确率的均值.在改进的区域提取网络的基础上增加选择性搜索能进一步提高平均准确率的均值,但相应的检测时间有明显增加,这是因为选择性搜索很耗时.以上实验说明,改进的区域提取网络能在提高候选区域质量的基础上提高检测网络的性能,而且通过与其他区域提取方法的融合,能进一步提高检测方法的性能.
图5 笔者提出的方法对一些典型的机场检测效果图
图6 两个未检测出的机场示例
图5显示了笔者提出方法的几个成功的检测结果,图6显示了两个未能检测出的机场图像.比较发现,由于数据库中大多是“常规”的机场图像,因此对一些外形比较特别的机场(如图6)无法检测.为解决这一问题,可以考虑将检测对象进一步细化到跑道这一层面,或尝试增加相关的训练数据集来让网络学习这些特征,这些思路将作为下一步的研究内容.
为检验笔者提出方法的性能,选取两种典型的机场检测方法作为对照,随机选取200张机场图像作为测试数据集,对机场的检测率、虚警率和检测时间进行统计.表3中“基于边缘”指基于边缘的机场检测方法,如文献[13]等;“基于SIFT(Scale Invariant Feature Transform)”指基于尺度不变特征转换特征的机场检测方法,如文献[14]等.为复现这两种方法,对网络上下载的相关的公开代码根据论文思路进行修改,每种方法取多次实验的均值,结果如表3所示.
表3 笔者提出的方法与两种经典方法的对比
在对比实验中,笔者提出的方法选择改进的区域提取网络但不融合其他方法提取的区域以加快检测速度.从表3看出,笔者提出的方法在测试数据集上的检测率最高,虚警率最低,平均检测时间也最短,各方面性能都有了很大的提升.这说明与这文献[13-14]中的方法相比,笔者提出的方法提取的特征对机场的表达能力更强.
笔者提出一种改进的区域提取网络和自适应池化网络结合的机场快速检测方法,提高了检测识别率,降低了虚警率,缩短了检测时间.改进的区域提取网络通过一个二分类网络筛除了提取较差的机场候选区域和背景区域;检测网络中通过复用来自同一图片的候选区域的特征,大大减少了计算代价; 自适应池化使不同尺寸的候选区域能在特征图层面上调整至同一尺度,打破了传统网络只能适应固定尺寸输入的限制;复用区域提取和检测网络的卷积层,使得区域提取的时间几乎忽略不计.笔者提出的方法为机场实时、精确检测做了有效的探索,有较强的理论和实用价值.提取机场更加鲁棒、高效的特征,创建更加完备的机场数据库,将笔者提出方法应用到实时机场检测中,是今后努力的方向.
[1] ZHU D, WANG B, ZHANG L M. Airport Detection Based on Near Parallelity of Line Segments and GBVS Saliency[J]. Journal of Infrared and Millimeter Waves, 2015, 34(3): 375-384.
[2] ZHANG P, NIU X, DOU Y, et al. Airport Detection from Remote Sensing Images Using Transferable Convolutional Neural Networks[C]//Proceedings of the 2016 International Joint Conference on Neural Networks. Piscataway: IEEE, 2016: 2590-2595.
[3] 刘如意, 宋建锋, 权义宁, 等. 一种自动的高分辨率遥感影像道路提取方法[J]. 西安电子科技大学学报, 2017, 44(1): 100-105.
LIU Ruyi, SONG Jianfeng, QUAN Yining, et al. Automatic Road Extraction Method for High-resolution Remote Sensing Images[J]. Journal of Xidian University, 2017, 44(1): 100-105.
[4] REN S, HE K, GIRSHICK R, et al. Faster R-CNN: towards Real-time Object Detection with Region Proposal Networks[C]//Proceedings of the Advances in Neural Information Processing Systems. Vancouver: Neural Information Processing Systems Foundation, 2015: 91-99.
[5] GIRSHICK R. Fast r-cnn[C]//Proceedings of the 2015 IEEE International Conference on Computer Vision. Piscataway: IEEE, 2015: 1440-1448.
[6] YAN J, YU Y, ZHU X, et al. Object Detection by Labeling Superpixels[C]//Proceedings of the 2015 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2015: 5107-5116.
[7] KUO W, HARIHARAN B, MALIK J. Deepbox: Learning Objectness with Convolutional Networks[C]//Proceedings of the 2015 IEEE International Conference on Computer Vision. Piscataway: IEEE, 2015: 2479-2487.
[8] YANG B, YAN J, LEI Z, et al. Craft Objects from Images[C]//Proceedings of the 2016 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2016: 6043-6051.
[9] HE K, ZHANG X, REN S, et al. Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(9): 1904-1916.
[10] DENG J, DONG W, SOCHER R, et al. Imagenet: a Large-scale Hierarchical Image Database[C]//Proceedings of the 2009 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2009: 248-255.
[11] ZEILER M D, FERGUS R. Visualizing and Understanding Convolutional Networks[C]//Lecture Notes in Computer Science: 8689. Heidelberg: Springer Verlag, 2014: 818-833.
[12] UIJLINGS J R R, van de SANDE K E A, GEVERS T, et al. Selective Search for Object Recognition[J]. International Journal of Computer Vision, 2013, 104(2): 154-171.
[13] QU Y, LI C, ZHENG N. Airport Detection Base on Support Vector Machine from a Single Image[C]//Proceedings of the 2005 Fifth International Conference on Information, Communications and Signal Processing. Piscataway: IEEE, 2005: 546-549.
[14] TAO C, TAN Y, CAI H, et al. Airport Detection from Large IKONOS Images Using Clustered SIFT Keypoints and Region Information[J]. IEEE Geoscience and Remote Sensing Letters, 2011, 8(1): 128-132.