改进Faster-RCNN的低空小型无人机检测方法
2021-10-18张德育康鑫英
王 君,张德育,康鑫英
(沈阳理工大学 信息科学与工程学院,沈阳 110159)
随着我国低空空域逐渐开放,各类低空飞行器的使用人群不断扩大,弱小目标将成为未来低空空域监视的难点与重点[1]。常见的低空小飞行物,如无人机,因其纹理特征弱、数量多,且在检测识别过程中容易受到复杂云层、光线和人工建筑等多种因素的影响,使得现有的模型对此类目标的检测准确率普遍偏低[2],因此准确提取小型无人机的纹理信息、避免漏检成为解决这一类问题的技术关键[3]。目前目标检测领域的深度学习算法主要分为一阶段算法和两阶段算法。Girshick R等[4]提出的R-CNN(Regions with Convolutinal Neural Network Features)系列算法是基于两阶段的最优秀的经典算法,其精度较高,但检测速度慢,达不到实时检测的要求,其特征提取网络层数过深,对小目标的特征提取较差。基于一阶段的优洛(you only look once,YOLO)[5]系列算法和单脉冲多盒检测器(single shot multibox detector,SSD)算法[6]的网络框架更简易,其检测速度提升,但检测精度降低,同样由于网络深度较高,其对底层的空间特征表达较差,对小目标检测性较差。
虽然Faster-RCNN为基于两阶段的目标检测方法,但其区域提名网络(Region Proposal Networks,RPN)服务于整体的检测网络,使整个网络统一、简单、实现端到端训练,故本文选择Faster-RCNN作为检测模型的基础框架;此外,利用ResNet50网络[7]替换初始的VGG16网络[8],设置更加深层的网络结构,获得更加丰富的语义信息,并参考特征金字塔(Feature Pyramid Networks,FPN)[9]的特点提出一种基于双线性差值的多尺度融合的检测方法,使输出的特征图融合更多底层的语义信息,提高模型对小目标的敏感程度;在感兴趣区域层,利用soft-nms算法[10]对锚框的处理进行优化,引入一个置信函数,降低非最大值锚框的置信度,调整待检测物的位置信息,改善对多个目标重叠的预测情况。
1 Faster-RCNN模型
Faster-RCNN将卷积神经网络的结构完整地融入到目标检测整体过程中,利用 RPN 在骨干网络得到的特征图上生成检测框,极大地提升检测框的生成速度。Faster-RCNN的整体结构如图1所示。
图1 Faster-RCNN的结构图
Faster-RCNN对所有输入的图片尺寸重新调整为一个固定值,再输入特征提取网络计算特征图;得到的特征图较初始图片缩小 16 倍,再输入到 RPN 网络;通过两条支路对前景目标和背景目标进行区域提名,并结合提名的位置,在特征图上对应找到预测目标的大概位置;最后通过末尾的几个卷积层和全连接层进行最终预测位置框的回归和框内目标的分类。
2 模型的优化
2.1 特征提取网络的改进
Faster-RCNN模型的骨干网络用于图像的特征语义提取。一般来说,卷积网络的浅层网络主要用于提取待检测物的形状、大小等几何信息,网络层数的加深有助于更好地提取到待检测目标的语义信息,但可能出现“网络退化”、“梯度爆炸”等问题。传统Faster-RCNN的骨干网络一般使用VGGNet,本文则选择ResNet,因其独特的残差结构增加了临近网络层之间的信息传递,在不影响检测速度的前提下,能够尽可能地提升骨干网络的可设置深度,使其学习到更加复杂和准确的语义信息。但ResNet残差网络结构在提取小目标上仍存在不足,如大部分骨干网络均利用卷积层得到一个最高层特征图,再去进行后续的处理,该方法的缺点是小物体本身具有的像素信息较少,在下采样的过程中极易丢失,影响网络检测的精度。为解决该问题,将卷积过程中得到的蕴含不同语义特征与空间信息的特征图进行融合,在融合的过程中利用双线性差值法进行上采样,提出一种基于双线性差值的多尺度融合的预测结构。通过横向连接和反向连接将相邻的特征图有效融合,提高模型预测小目标位置和类别信息的精度。双线性差值的多尺度预测结构如图2所示。
图2 基于双线性差值的多尺度预测结构图
本文提出的网络结构对于输入的数据样本采用自下向上的路径进行卷积,得到4个语义信息不同的特征图,因深层卷积层输出的特征图尺寸比浅层输出的特征图尺寸小一倍,故下一层输入由上一层的2倍上采样得到。由于原特征金字塔结构中上采样仅是对特征图的简单扩充,对特征的逆向表达性能较差,导致部分小目标信息丢失,因此提出采用双线性差值的方法进行上采样。双线性差值法计算量较大,但可避免灰度不连续,在灰度变化处无明显锯齿状。双线性差值原理如图3所示。
图3 双线性插值原理图
已知函数f在四个点Q11=(x1,y1)、Q12=(x1,y2)、Q21=(x2,y1)及Q22=(x2,y2)的值。在x方向进行插值得到
(1)
(2)
在y方向进行插值得到
(3)
将式(1)、式(2)代入式(3)得到f(x,y)为
(4)
传统目标检测模型直接在特征图上生成9种不同比例大小的锚框,本文提出的网络结构则可以针对不同预测特征层生成不同尺寸的锚框,如P2为最底层的预测特征层,适合检测小目标,可设置锚框的面积为322,设置比例为{1∶2,1∶1,2∶1},其余各层的检测框面积大小分别设置为 642、1282、2562、5122。
2.2 对目标边界框预测的优化
RPN网络将任意大小的原图输入骨干网络,输出基础特征图,对基础特征图进行3×3 卷积得到预测特征图,并以基础特征图上的每一个像素点为中心映射到原图上得到不同比例大小的锚框。将大量的锚框筛选并反映射回预测特征图后,在原图上会生成近 2 万个锚框。去除多余锚框的主要筛选方法是进行非极大值抑制(non maxi-mum suppression,NMS)。NMS通过迭代的形式,不断以最大得分的框与其他框做交并比操作,删除交并比(Intersection Over Union,IOU)较大的框,此过程中大量无用锚框被删除,会导致漏检目标,对检测精度产生影响。soft-nms算法可对锚框的置信度进行优化,每次选取置信度最高的锚框,同时引入一个高斯函数,抑制其周围锚框置信度,减少漏检情况,高斯函数公式为
(5)
式中:M为当前得分最高框,为待处理框;bi为第i个检测框;si为第i个检测框的得分;σ为超参数,一般取0.5。
利用soft-nms算法对锚框置信度优化后,在多个小目标重叠的情况下可以提高模型预测的准确率,减少漏检情况发生。
3 实验结果和分析
3.1 实验环境
为验证本文改进算法在小目标检测中的有效性,在PC机上进行实验。实验环境为:操作系统采用Ubuntu18.04;CPU采用Intel(R)Core(TM)i7-10875H@2.30GHz八核;GPU采用NVIDIA GeForce RTX 2060;显存6GB;深度学习的框架采用pytorch1.8、python3.6。
实验使用自主采集的数据集。自主采集的数据集对象主要为中小型无人机,采集地点在校园内和野外无人区。筛选出3000张尺寸不固定的图片,利用labellmg软件按照VOC数据集格式手动进行标注,按照8∶1∶1划分为训练集、验证集和测试集。训练采用随机梯度下降法进行,初始学习率为 0.0001,批尺寸为 32,训练次数为1000。
3.2 评价指标
本文主要采用查准率(Average Precision,AP)和查全率(Average Recall,AR)来衡量网络对无人机目标的检测性能。首先计算出精确率(Precision)以及召回率(Recall),计算公式为
(6)
(7)
式中:TP是将正类预测为正类数,即IOU>0.5的检测框数量;FP是将负类预测为正类数,即IOU≤0.5的检测框数量,或为检测到同一个真实框的多余检测框数量;FN是将正类预测为负类数。
每一个类别都可以根据Recall和Precision绘制Precision-Recall曲线,AP即为曲线所覆盖的面积,AR为 图片中每一类锚框Recall的均值。
3.3 实验结果及分析
为验证优化后的模型对小目标的检测能力有否提升,本文按照待检测目标的尺寸对数据集中的无人机进行划分。划分标准如表1所示(单位:像素)。
表1 无人机的划分标准
分别采用优化前后的Faster-RCNN模型对无人机检测效果进行对比,结果如图3所示。
对比图3a和图3b可以看出,优化前的Faster-RCNN模型无法检测小型无人机目标,优化后则可实现对小目标的有效检测。对比图3c和图3d 可以看出,优化前的Faster-RCNN模型对大型无人机目标的检测效果较好,可达到一定的精度,但在多个目标重叠密集排布的情况下仍存在漏检的情况,优化后Faster-RCNN模型的漏检情况得到明显改善。
优化前后的Faster-RCNN模型在自主采集数据集上检测的AP值如表2所示(IOU=0.5)。
图4 优化前后Faster-RCNN模型对无人机检测结果对比
表2 优化前后的模型在自主采集数据集上检测的AP值
由表2可知,优化后的模型在检测大目标和小目标上的AP值均高于优化前的Faster-RCNN模型;优化后的模型对大型目标检测的AP值仅提高了0.8%,原因是Faster-RCNN作为经典的两阶段目标检测算法,自身精度较高;优化后的模型对小型目标检测的AP值增加了11.2%,提高比较明显;说明在不影响其他尺度目标的精度下,基于双线性差值的多尺度预测结构能提高Faster-RCNN模型对小目标检测的准确率。
优化前后的模型在自主采集数据集上检测的AR值如表3所示(IOU=0.5)。
表3 优化前后的模型在自主采集数据集上检测的AR值
由表3可知,优化后的模型在检测大目标和小目标上的AR值均明显高于优化前的Faster-RCNN模型;优化后的模型对大型目标检测的AR值提高了7.5%,对小型目标检测的AR值增加了27.9%;说明本文提出的基于双线性差值的多尺度预测结构及soft-nms的优化方法不仅能提高Faster-RCNN模型对小目标检测的准确度,也能减少模型错检、漏检的情况。
4 结论
提出改进的Faster-RCNN深度学习模型,在特征提取网络中加入基于双线性插值的多尺度融合结构,尽可能多地保留小目标的特征语义,在不同层的特征图中生成尺寸不同的锚框,提高对小目标的检测精度,利用soft-nms算法计算锚框的置信度,减少模型错检、漏检情况。实验结果表明,优化后的模型对大目标、中小型的弱纹理目标或重叠在一起的目标,均可实现较为准确的检测。