APP下载

基于改进SSD算法的航母舰面多尺度目标检测研究∗

2022-03-14朱兴动田少兵范加利

舰船电子工程 2022年2期
关键词:先验准确率尺度

朱兴动 田少兵 范加利 王 正

(1.海军航空大学岸防兵学院 烟台 264001)

(2.海军航空大学(青岛校区)舰面航空保障与场站管理系 青岛 266041)

1 引言

航母舰面是进行航空保障作业的主要平台,安全有序的航空保障作业是保证航母作战效能的前提。航母甲板复杂的飞机类型、牵引设备、保障物资以及作业人员,在持续的作业中蕴含着巨大的事故风险。通过基于机器视觉的舰面目标检测,有助于对舰面各类目标进行实时监控,同时为舰面目标的调运提供数据支持。

航母舰面各目标尺度不同,固定翼飞机、直升机等大型装备与灵活的牵引车以人员构成了极为明显的大小对比,也是对检测算法的一种考验。由于小目标包含像素区域少,卷积神经网络提取特征比较困难,是一项极大的挑战。针对细小目标的检测,专家学者在各领域都开展了探索与研究,文献[1]对SSD算法的各特征层进行融合,实验表明,改进方法提高了对小目标检测的能力。文献[2]针对复杂环境的红外弱小目标检测问题,采用单阶段目标检测网络YOLO v3算法,显著提升了对红外弱小目标的检测精度。文献[3]针对遥感图像中的小目标检测效果不佳的问题,提出了一种多尺度特征融合的遥感图像目标检测算法,提高了对遥感图像小目标的检测性能。文献[4]提出了一种改进的多类别单阶段检测器(SSD)算法,借鉴特征金字塔网络的思想对算法进行改进,实验表明,所提的算法能够准确地检测出小目标。

航母舰面目标类型多且能够在一定范围内运动,从而造成目标尺度大小不一,同时舰载机与人员较大的大小差异,都给目标检测带来了较大难度,本文提出了一种改进的SSD舰面多尺度目标检测算法[5],通过对SSD算法6个特征层进行特征融合,并调整网络的先验框大小以适应多尺度目标的检测需求,经过优化后的网络具有较好的多尺度目标检测能力,对小目标也具有良好的检测效果。

2 SSD目标检测算法原理

SSD目标检测算法是在YOLO目标检测算法[6~8]的基础上发展起来的,继承了YOLO算法中的直接在特征图上回归目标边界框和目标类别概率思想,同时沿用了Faster R-CNN的候选框的思想,综合利用不同尺度的特征图进行目标检测,提高了算法的检测精度,同时也保持了YOLO算法的高检测速率。

2.1 网络结构

SSD算法网络结构主要分为基础网络和附加网络,结构图如图1所示。

图1 SSD 300网络结构

基础网络对经典的VGG网络进行了改进,将VGG网络的两个全连接层置换为卷积层,即将图1中的FC6、FC7置换为Conv6、Conv7,同时通过卷积操作在基础网络之后将图像从左到右生成一系列特征图,即为附加网络。Conv4_3、Conv7、Conv8_2、Con9_2、Conv10_2、Conv11_2等6个特征层的尺寸分别为38×38、19×19、10×10、5×5、3×3、1×1,最后将在每个特征层上运算的检测结果进行综合,产生一系列固定大小的边界框集合和边界框中目标类别预测分数,最后使用非极大值抑制(Non-maximum suppression,NMS)对各个层对应的检测结果进行过滤筛选,得到最终的目标检测结果。

2.2 先验框生成

SSD目标检测算法[9~10]的先验框生成方式借鉴了Faster R-CNN中的anchor思想,根据2.1节介绍的网络结构采用多尺度方法设置了6个层次的特征响应图,并对不同尺度的特征图设定不同数量的anchor数量。先验框的设置遵循一个规律:随着特征图大小的降低,先验框尺度线性增加,如式(1)所示:

式中Smin表示第一层,即最底层的尺度设置为0.2,Smax表示最高层的尺度设置为0.9,m取值为5。SSD算法默认的长宽比例为默认的宽高计算公式为

式(2)、(3)分别表示先验框的宽高计算公式,此外,每个特征尺度上都默认有一个ar=1的先验框。

2.3 损失函数

SSD目标检测算法主要分为两类:目标框位置损失和目标框类别置信度损失。对于目标框位置损失,算法采用Smooth L1损失函数来计算真实标注的目标边界框和网络预测的目标边界框之间的误差,对于目标类别损失,算法采用Softmax损失函数计算网络分类的损失。总的损失函数如式(4)所示:

式中,Lloc(x,l,g) 代表目标框位置损失函数,Lconf(x,c)代表目标类别损失,l代表预测的目标框,g代表标注的真实目标框,c表示置信度,α为权重系数,N为预测的目标框与真实目标框匹配的个数;x={1 ,0},当预测的目标框与真实的目标框面积的交并比(Intersection over Union,IOU)大于阈值(本文设置为0.5)时,x取值为1,否则x取值为0。

目标框位置损失定义为如式(5)所示:

目标类别损失定义为如式(7)所示:

3 算法改进

针对SSD算法在航母舰面复杂背景下对多尺度目标下检测性能不高尤其是牵引车、人员等小目标检测能力不足的问题,本文提出了特征融合、调整先验框尺寸等改进方法,融合深层和浅层特征以同时获取细节和语义信息,并且构建了能够适应多尺度目标检测的先验框,提高了算法对于多尺度目标检测的准确性以及对小目标的检测能力。

3.1 特征融合

特征融合的方法主要有两种,分别为向量拼接和特征对应元素逐元素相加。基于向量拼接的特征融合方法将需要融合的特征层进行合并,这种方式虽然能够最大程度地保留各特征层的信息,但是会产生大量的参数,降低算法运行的效率。

对于深度卷积神经网络,浅层的特征层由于特征尺度大,所含的图像细节信息丰富,但包含的语义信息较少,适合于小目标的检测;深层特征层特征尺度较小,所含的语义信息较多,但包含图像细节信息很少,因此可用于大目标的检测。受特征金字塔网络(Feature Pyramid Network,FPN)的启发[11],本文采用特征向量逐元素相加的方式进行图像特征融合,将浅层网络和深层网络融合在一起,以进一步增强对多尺度目标的检测能力。当深层次的小尺度特征与浅层次的大尺度特征进行融合时,对深层次的特征图进行反卷积操作,本文设计的图像特征融合模块如图2所示。

图2 特征融合

如图2所示,对深层特征进行反卷积操作后,与上一层的图像特征进行逐元素相加,生成新的特征融合层,依次进行相同的融合操作,直至所有特征层融合完毕。经过特征融合,将具有图像细节信息的浅层特征和具有语义信息的深层特征融合在一起,提高了网络对目标特征的表达能力。

3.2 调整先验框

为了准确地检测不同尺度的目标,本文对SSD先验框的尺寸进行改进,以使其能够适应牵引车、行人等目标。原算法对于先验框的计算公式如式(1)所示,式中Sk表示先验框的尺寸相对于原图的比例,Smin和Smax表示比例的最小值和最大值,本文将Smin和Smax分别调整为0.10和0.95,这样能够有效避免由于目标过小从而导致在训练阶段目标的真实边界框无法找到相应的先验框与之匹配的问题。尺寸调整后的先验框大小如表1所示。

表1 先验框尺寸大小

4 实验及分析

4.1 实验数据集及数据增强

通过搭建等比例模型,采集了5546张包含5类舰面目标的图像集,并建立PASCAL VOC 2007格式的目标检测数据集,如表2所示。

表2 数据集

在数据集中,设置训练集比例为0.6,验证集比例为0.2,测试集比例为0.2。

在数据预处理上,对图像进行[-45°,+45°]的水平或垂直翻转,0.7~1.3范围的放缩处理,实现数据样本的丰富性,在训练时实现在线数据增强,从而提升模型的的泛化能力。

4.2 实验环境配置及算法性能评价指标

1)实验环境配置

实验中,软硬件及环境配置如表3所示。

表3 实验环境及参数

2)算法评价指标

准确率(precision)反映的是检测正确样本占检测出样本的比重,召回率(recall)反映的是被检测出的样本占总样本的比重,公式定义如下:

TP表示检测正确的舰载机目标数量,FP为将其他目标误检测为舰载机目标的数量,FN表示存在但是未检测到的舰载机数量。

平均准确率(Average Precision,AP)来表示算法对某一目标类别的检测准确率,公式为

其中P为准确率,r为召回率。对于M个类别的平均准确率,用平均准确率的均值来表示,公式为

4.3 改进后算法对比实验

将原SSD算法和改进后的SSD算法在本文的测试数据集上进行性能实验对比,实验结果如表3所示。

表4 SSD算法改进前后性能对比

由表3实验结果可知,相比于改进前的原SSD算法,改进后的算法mAP提高了2.74%,并且在检测各类目标的效果都有改善,牵引车、人员等小目标的平均准确率分别提升了4.0%和5.1%,提升尤为突出,说明本文提出的特征融合、调整先验框等改进策略起到了良好的效果,特征融合使得图像特征层既包含了目标的图像细节信息,又包含了图像的语义信息,为网络预测目标提供了丰富的特征信息,同时又通过调整先验框提高了网络对不同尺度目标的检测能力。算法测试对比图如图3所示。

图3 算法改进前后检测结果对比

图3(a)、(b)分别为SSD算法改进前后的舰面目标检测结果,由检测结果可知,由于进行了特征融合,增强了对不同尺度目标特征的表征能力,且调整了适应于多尺度目标检测的先验框,算法能够准确地检测出不同尺度的目标,且明显提升了对小目标的检测性能,具有良好的检测效果。

4.4 消融实验

1)改进方案对算法检测性能的影响

为了探究两个改进方案对算法性能提升的影响,分别独立施加两个改进方案和同时施加两个改进方案对算法性能进行测试,以实验分析两个改进方案对目标检测准确率的影响。设置如表5所示的实验方案,实验结果如下所示。

表5 改进方案影响对比

由表5实验结果可知,方案2对于舰载机、舰载直升机1、舰载直升机2等大目标性能的提升幅度为0.7%、0.7%、0.5%,算法对牵引车、人员等小目标性能提升幅度为2.9%、4.3%。方案3对于舰载机、舰载直升机1、舰载直升机2等大目标检测性能的提升幅度为1.2%、0.6%、0.7%,对于牵引车、人员等小目标检测性能的提升幅度为1.6%、2.2%。

相比于方案1的算法性能表明特征融合改进策略和调整先验框改进策略对于舰载机、舰载直升机1、舰载直升机2等大目标检测性能提升幅度相当,但是特征融合改进策略对于小目标检测性能的提升效果明显优于调整先验框改进策略,可以推断特征融合改进策略对于小目标检测性能的提升起主要作用。与方案4的测试性能对比可知同时施加两个改进策略时,算法检测性能提升效果最好。

2)特征融合层对算法检测性能的影响

为了探究深层特征向浅层特征融合时对各个浅层特征检测性能影响的大小,设置如表6所示的实验方案。当特征融合层逐渐增多时,实验结果如下,首先设置基准测试方案,即在Conv11_2—Conv9_2三个特征层融合后的特征图上进行性能测试并将结果作为比较基准,后面依次融合增加更浅的特征层,并在融合后的特征层上进行性能测试。

表6 特征融合对各浅层特征层性能影响对比

实验结果表明,当融合的浅层特征层越多时,算法检测目标的平均准确率的均值越高,说明融合的层数越多,最终得到的特征层的信息越丰富,检测准确率也越高。

4.5 不同算法对比实验

实验对比Faster R-CNN、YOLO v3、FPN等目标检测算法与本文算法的性能,采用平均准确率的均值(mAP)和帧率(fps)来衡量算法的性能,如表7所示。

表7 同类目标检测算法对比

由实验对比结果可知,基于两阶段目标检测的Faster R-CNN检测平均准确率的均值为88.97%,均高于其他目标检测算法的准确率,但检测速率只有9帧每秒,处于较低水平。基于单阶段目标检测的YOLO v3和本文算法相比,本文算法平均准确率的均值比YOLO v3高出5.13%,检测速率两者相当,实时性较高。FPN算法检测准确率与检测实时性较本文算法均有一定差距,综合检测准确率和实时性考虑,本文算法的性能均处于较高水平。

5 结语

本文针对航母舰面复杂的多尺度目标检测环境,提出了改进SSD的航母舰面多尺度目标检测算法。通过对网络尺度以及先验框大小进行调整,增强了网络的多尺度目标检测能力,特别是提升了对小微目标的检测效果。然后在消融实验中探究了两个改进方案对算法性能提升的影响,并对网络各特征层融合时的性能效果进行了实验分析对比。最后与其他目标检测算法进行了实验比较,综合考虑检测准确性和实时性,本文算法性能都处于较高水平。

猜你喜欢

先验准确率尺度
环境史衰败论叙事的正误及其评判尺度
康德定言命令的演绎是一种先验演绎吗?——论纯粹知性与实践理性在先天原则证成方面之异同
基于暗通道先验的单幅图像去雾算法研究与实现
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
先验想象力在范畴先验演绎中的定位研究
先验的风
以长时间尺度看世界