多尺度特征融合的Anchor-Free 轻量化舰船要害部位检测算法
2022-11-09李晨瑄顾佼佼王磊钱坤冯泽钦
李晨瑄 顾佼佼 王磊 钱坤 冯泽钦
(1. 海军航空大学 岸防兵学院, 烟台 264001; 2. 中国人民解放军 91900 部队, 青岛 266041)
随着高新技术的不断迭新,未来战争形式发生深刻变革。 高精度、全方位的海战场态势感知能力与精确制导、快速突防能力等,是提升装备打击效能、建设海洋强国的重要保障。 传统的飞航式导弹打击效果易受到目标姿态、命中点位置影响,无法发挥最大作战效能。 如何以最小的弹药消耗实现对敌最大毁伤,具有重大研究意义。
已有的舰船目标打击方法多将舰船视为质点,导引头无法检测命中点。 若命中点非要害部位,无法有效遏制敌舰作战能力。 若命中敌舰雷达、驾驶舱、天线等要害部位,可瘫痪敌舰作战能力,较好地降低敌舰对我方火力威慑。 为实现“发现即打击”的战略目标,亟须提升轻型反舰导弹或无人武器对舰船要害部位的精确检测能力。传统利用滑窗提取区域建议框的目标检测算法,如SIFT、HOG[1]等,检测特征依靠人工设定,鲁棒性差,漏检、错检较多;深度卷积神经网络的出现,优化了复杂特征的检测算法,有效促进了诸如舰船目标检测[2]等任务的工程实现。 基于卷积神经网络的目标检测算法按算法实现可划分为两阶段算法与单阶段算法。 两阶段[3]的检测算法先生成目标区域建议框,再对区域建议框实现回归与分类,文献[4]基于Faster-RCNN 实现了合成孔径雷达(synthetic aperture radar,SAR)图像的舰船目标检测,利用特征聚合与模型迁移提高了弱小目标检测性能;文献[5]引入编码-解码块及空洞卷积,改进了输入层结构,利用舰船自身与环境特性,实现了近岸复杂背景下舰船目标检测。 单阶段[6-7]算法不生成区域建议框,利用神经网络直接回归目标的类别与位置。 针对多分辨率成像条件下的舰船目标,文献[8]引入了特征金字塔与Focal-Loss 提升网络对不同尺度目标检测的鲁棒性;文献[9]基于SSD 网络,针对噪声影响下的小目标,融合高层与低层特征,有效利用特征图关联性提升检测精度。 两阶段算法精度优于单阶段算法,但网络结构复杂,用于轻型反舰导弹快速突防过程中的检测任务,实时性有待改进。 单阶段算法无需生成区域建议框,牺牲部分检测精度使得速度得到提升。 上述两阶段与单阶段检测算法均为Anchor-Based 算法。
Anchor-Based 算法计算网络生成的锚框与真实框之间的评价函数实现目标检测,但锚框不可避免地引入了冗余的超参数与不平衡的正负样本。 为弱化重复堆叠的锚框对检测精度的影响,Anchor-Based 算法引入非极大抑制(non-maximum suppression, NMS)。 NMS 虽提高了检测精度,但计算量与复杂性严重阻碍了检测速度的提升。Anchor-Free[10-11]算法直接利用关键点特征热力图进行目标检测,不依赖锚框,提升检测精度的同时,加快了检测速度,适用于反舰导弹突防过程中导引头对舰船要害部位的快速精确检测任务。
上述算法均可实现不同任务背景下的舰船目标识别,但仍存在以下不足:①将舰船视为整体目标,难以准确检测舰船要害部位,无法为反舰导弹提供准确的目标指示信息;②算法对不同尺度的目标特征利用率较低,对不同特征图通道间的关联性分析不足;③神经网络对数据集质量要求较高,军舰数据获取困难,仅训练少量的军舰数据,网络难以学习到有效的特征表达,可能导致无法收敛。 基于舰船要害部位特征关键点的检测算法受舰船姿态影响较小,直接利用算法生成的特征热力图,回归要害部位的类别与位置,能够保证较高的检测精度与实时性。
综合考虑轻型反舰导弹对舰船要害部位的检测精度与实时性要求,以及弹载设备的运算能力,受CenterNet[12]网络启发,本文提出了一种多尺度特征融合的Anchor-Free 轻量化舰船要害部位检测算法ECAs-Hourglass。 利用感受野模块(receptive field block,RFB),即多尺度特征融合模块提取不同尺度感受野的特征信息,提升多尺度要害部位检测精度;引入轻量化的高效通道注意力机制(efficient channel attention,ECA)改进Hourglass网络,有效利用不同通道间的关联性,仅增添极少运算量,改善编码与解码过程造成的检测信息损失,并结合迁移学习提升网络收敛效果。 使用无人机模拟轻型反舰导弹低空掠海飞行时,获取到的多尺度、多角度的可见光舰船数据,建立了舰船要害部位检测数据集。 实验结果表明,ECAs-Hourglass 算法可在不依赖锚框的情况下,准确检测舰船要害部位,在小样本、多尺度数据条件下,满足导引头检测速度与精度要求,算法可扩展性较好。
1 数据集的构建
当前基于舰船目标检测的数据集多为SAR图像数据,数据集标注整体舰船目标,多用于实现舰船类型识别与位置检测任务。 轻型反舰导弹或无人武器执行敌舰精确打击任务时,多为低空掠海飞行,导引头视角以正舷或侧舷为主。 综合分析反舰导弹突防与精确打击任务需求,打击雷达能够遏制舰船对来袭目标探测能力;打击驾驶舱可实现较大毁伤效能,瘫痪敌舰指挥作战能力;打击舰船天线可阻碍信息传输,破坏敌方数据链;打击水线能够击沉舰船,使其失去作战能力,已有的公开标注数据集无法实现舰船要害部位检测。 结合轻型反舰导弹作战任务需求,数据集定义舰船要害部位分别为雷达、驾驶舱、天线桅杆与水线。
使用无人机模拟轻型反舰导弹低空掠海飞行,拍摄不同视角、不同尺度的军舰、海警船可见光图像,并利用爬虫收集公开舰船图像,制作了舰船要害部位检测数据集,经翻转、平移实现数据增强,数据集信息如表1 所示,舰船要害部位检测数据集如图1 所示。 数据集为PASCAL VOC 格式,使用开源工具labelImg 人工标注,文献[13]指出对于具有狭长的带状结构或离散分布的待检测目标,利用卷积与池化操作提取特征时,不可避免会受到无关区域信息的干扰,检测难度较高。 前期对检测框标注算法进行测试,实验结果表明,过于狭长的水线标注框不利于算法提取有效特征信息。 当导引头视角为舰首或舰尾时,水线特征与侧舷视角时的舰船水线相似,但标注框长宽比差异大,导致检测精度难以提升。 考虑到用于特征提取的卷积核与池化内核多为正矩形,导引头获取的舰船图像水线多与海天线平行,结合前期标注实验测试结果,改进水线这类要害部位的标注框。 框定接近水平且环境噪声干扰较小的水线特征,避免使用过于狭长的矩形框标注水线,同时避免覆盖大面积舰船;雷达、驾驶舱、天线桅杆等舰船要害部位以框选目标边缘为基准进行标注,改进后的要害部位检测框标注示例如图2 所示。 数据集标注类别为雷达、驾驶舱、天线桅杆、水线,共包含6 402 张图像。
图1 数据集部分样本Fig.1 Partial samples of dataset
图2 舰船要害部位标注样例Fig.2 Labeled samples of warships’ vital parts
表1 舰船要害部位检测数据集信息Table 1 Dataset information of warships’ vital parts
图像像素为512 ×384,按照8∶1∶1 划分训练集、测试集、验证集,小尺度要害部位(像素小于50)占数据集的56%,中等尺度要害部位(50 ~130 像素)占35%,大尺度要害部位(大于130 像素)占9%。 训练集与验证集中,要害目标类别与要害部位数量关系如图3 所示。
图3 数据集要害目标类别与数量Fig.3 Categories and quantities of vital parts in dataset
2 算法实现与优化
2.1 算法框架与损失函数
CenterNet[12]是一种端到端的Anchor-Free 算法,兼具检测速度与精度优势。 输入图像I∈RW×H×3,W和H分别为舰船要害部位的宽和高。 经由检测网络运算生成关键点热力图(heatmap)如下:
式中:R为下采样率;c为要害部位类别数。
算法借助式(2)所示高斯核函数将目标转换成关键点,通过热力图表征检测要害部位信息:
式中:Yxyc为图像真实标签值;˜px、˜py为要害部位坐标;σ为方差。
CenterNet 算法对比了3 种不同的编码-解码(encoder-decoder)结构,包括卷积残差网络(upconvolutional residual networks,ResNet)[14]、深层特征融合网络(deep layer aggregation,DLA)[15]及沙漏网络(Hourglass network)。 如图4 所示,算法将卷积处理后生成的特征热力图输入检测模块,检测模块具有3 个预测分支:目标中心点预测分支用于检测热力图目标中心点,目标尺度预测分支用于检测舰船要害部位的宽与高,基于中心点生成预测框,中心点偏移量预测分支用于回归目标中心点的偏移量。
卷积神经网络中的池化操作可实现图像下采样,降低网络参数,与不同尺度的卷积核共同作用,能够增大卷积核的局部感受野。 卷积神经网络底层特征具有较高的空间分辨率,包含图像局部细节信息较多,低分辨率的特征图含有的细节信息较少,语义特征较丰富。 对于小尺度的舰船要害部位检测而言,经过下采样后,要害部位目标可能会变成一个像素甚至消失,大量的空间特征损失易导致小目标的漏检。
针对轻型反舰导弹突防过程中,导引头对舰船要害部位检测任务需求,综合考虑弹载设备运算能力,要害部位检测算法需兼顾检测精度与检测速度,因此,设计了一种基于跨通道特征增强与多尺度感受野特征融合的Anchor-Free 轻量化舰船要害部位检测算法ECAs-Hourglass,算法结构如图4 所示。 算法主要由3 部分构成:①在预处理模块引入RFB 融合多尺度特征参数,使用多种尺度空洞率的空洞卷积提取高质量特征,融合不同尺度感受野下舰船要害部位的特征信息,在获取更多特征信息的同时,可用于提升算法对多尺度、多角度舰船要害部位的检测鲁棒性;②利用深度可分离卷积降低运算量与参数冗余,提升检测速度;特征提取主干网络(图4 中ECAs-Hourglass)中,ECAs-Hourglass 算法并行地使用高效轻量化注意力机制ECA 改进Hourglass 网络中简单的跨层连接,如图4 中红色虚线所示;③ECA 能够增强有效特征,抑制无用特征,降低算法编码与解码过程造成的特征映射损失,在保证检测速度的同时,使ECAs-Hourglass 获取到更高质量的特征热力图,提升多尺度舰船要害部位的检测精度;④检测模块将融合后的特征图输入预测分支,求解要害部位中心点坐标、检测框宽高及目标中心点偏移量,从而实现舰船要害部位的精确检测。
图4 ECAs-Hourglass 算法结构Fig.4 Structure of ECAs-Hourglass algorithm
依据ECAs-Hourglass 算法原理与舰船要害部位检测任务需求,定义损失函数。
1) 目标中心点预测分支。 单个要害部位中心点唯一,非目标位置易产生较多中心点,训练过程存在正负样本分布不均衡等问题,故使用改进的Focal-Loss 损失函数,改善正负样本分布不均。目标中心点预测损失函数如下:
式中:α、β为损失函数惩罚系数;N为图像目标中心点个数;Yxyc为图像真实标签值;Y^xyc为预测值。
2) 目标尺度预测分支。 通过回归热力图与特征图,求得每个要害部位的宽高。 目标尺度预测损失函数如下:
式中:S^lq为利用算法回归得到的预测目标尺寸;sq为目标真实尺寸,q为求和运算中的第q个目标。
3) 中心点偏移预测分支。 特征提取模块处理R倍下采样后的特征图,将所得特征图与原图建立映射,映射期间会产生像素偏移误差,故定义目标中心点偏移损失函数如下:
式中:p/R为R倍下采样后目标中心点实际坐标;˜p为回归得到中心点预测坐标;p/R- ˜p为目标中心点真实坐标偏移量;O^˜p为中心点预测坐标偏移量。
3 类损失函数分别与不同权重相乘,即得到ECAs-Hourglass 算法的总体损失函数如下:
由于检测数据类型与检测框类型不影响预测分支惩罚系数,参照原CenterNet 网络,分别设置目标中心点预测分支逻辑回归惩罚系数α= 2,β=4,中心点偏移损失权重λoff=0.1,目标尺度预测损失权重λsize=1。
2.2 多尺度感受野特征融合
导引头不断接近舰船的过程中,待检测要害部位的图像分辨率随距离发生变化,舰船要害检测任务需适应不同尺度、不同类别的目标。 为增强算法对不同尺度舰船要害部位的检测鲁棒性,进一步提升检测精度,引入RFB 模块,分别利用空洞率为1、3、5 的空洞卷积,提取不同尺度的特征信息,再利用通道叠加操作(Concat)与1 ×1 的卷积实现特征融合,有效利用不同感受野的特征信息,在增加较少计算量的同时,增强对多尺度舰船要害部位的检测性能。 RFB 多尺度特征融合模块如图5 所示。
图5 多尺度特征融合模块Fig.5 Multi-scale feature fusion module
空洞卷积能够有效增加感受野。 常规卷积求取图像相应位置像素的加权和,空洞卷积在相邻采样点间增加间隔,在扩大感受野的同时,保持与常规卷积相同的计算量,适用于提取不同尺度的特征信息。 空洞卷积的卷积核计算如下:
式中:K为空洞率为rate 时的空洞卷积核尺寸;rate 为空洞率;k为原卷积核尺寸。
对于多尺度成像的舰船要害部位检测任务,距检测要害部位目标中心点越近的特征,具备的信息越重要,需要用小尺度的卷积核进行特征提取;对于尺度较大的要害部位或距离中心点较远的采样点,所需的卷积核空洞率也越大。 RFB 卷积结构如图6 所示。 1 ×1 的卷积用于跨通道的信息融合;利用2 个连续的3 ×3 卷积替代5 ×5的卷积,能够在降低计算量的同时,有效提取舰船要害部位特征,增强小目标的特征表达;引入深度可分离卷积能够减少网络参数,提升检测效率。输入图像经不同空洞率的卷积实现特征提取后,可得到不同尺度的特征图,再通过Concat 与1 ×1的卷积实现多尺度特征融合,有效改善网络对小尺度要害部位空间位移的检测鲁棒性,对不同尺度要害部位的检测效果均有提升。
图6 RFB 卷积结构Fig.6 Structure of RFB
2.3 轻量化高效的注意力机制
Hourglass 网络生成多分辨率特征图的过程中,不可避免会损失部分特征信息,利用卷积处理不同感受野的特征图,会产生对最终检测结果有效的特征,同时也会产生大量干扰检测效果的特征。ECAs-Hourglass 采用了单级Hourglass 作为主干网络以保证检测速度,网络先利用卷积核与池化操作逐层抽取有效特征,实现特征降维。 在解码阶段利用学习到的特征参数获取高分辨率特征热力图,而特征提取与重建操作等不可避免会导致特征映射过程的精度损失。 分析网络结构可知,Hourglass 具有较好的对称性,如图7 所示,跨层连接的左侧与右侧特征图具有相同的分辨率。 若引入注意力机制改进原Hourglass 网络中简单的跨层连接,可使算法获取更高质量的检测特征图,能够增强特征映射过程中的有效特征权重,同时抑制无效特征,可用于改善特征提取与重建过程导致的检测信息损失。 对比不同注意力模块在相同的主干网络(即ResNet 网络)下的性能,如表2所示[16],TOP-1 准确率表示不同算法在ImageNet数据集测试时排名第一的类别与实际结果是否匹配的准确率。
图7 ECA 改进的HourglassFig.7 Hourglass improved by ECA
表2 不同注意力机制性能指标[16]Table 2 Performance indicators of different attention mechanism[16]
如表2 所示,相对于不添加注意力机制的原始网络,SE 模块、CBAM 模块、AA 模块分别使参数增加了4.52 ×106、4.52 ×106、2.91 ×106,添加ECA 模块后参数与运算量几乎不增加。 结合TOP-1 准确率测试结果可知,ECA 能够在引入极少运算负担的同时,实现较高的检测精度提升,具备轻量化特性,且运行高效。
SE 模块利用全局平均池化与加权因子,增强了通道维度上的特征表达,高质量的检测特征有利于提升目标检测精度。 CBAM 利用全局最大池化与全局平均池化等,得到特征图中每个像素点与显著特征点的反馈,在空间与通道维度完成了特征增强。 ECA 利用一维卷积增强有效特征权重,仅引入极少参数与运算量,相对于其他注意力模块,检测效果提升明显,具有更好的轻量级应用特性。
现有算法多将注意力模块串行使用,即在大部分卷积层后串行叠加注意力机制,此举会造成参数爆炸与庞大的计算开销[17],考虑到舰船要害部位检测模型需部署到弹载计算机移动端进行测试,ECAs-Hourglass 用 ECANet[16]并 行 地 改 进Hourglass 网络中简单的跨通道连接,如图7 所示。 ECA 能够降低编码与解码过程造成的检测信息损失,抑制无效特征,增强有效参数,同时避免了串行连接时导致过多的参数与运算开销,有效利用了不同分辨率的特征信息,使算法生成更高质量的特征图。 ECAs-Hourglass 能够在引入极少运算参数的情况下,较好地提升检测精度,有助于实现舰船要害部位的精确检测。
数据集包含多尺度的舰船要害部位目标,传统注意力机制多使用特征降维,往往损失了用于小尺度目标检测的关键信息;而使用全连接层所需参数量与计算量较大,无法有效利用各通道间关联性。 ECA 先进行特征整合,引入全局平均池化,获取每个特征图的重要检测信息,输出的特征维度为C×1 ×1,C为特征通道数。 ECA 直接利用卷积核数为k的一维卷积获取特征信息,避免降维过程造成的信息损失,卷积核尺度k由通道参数自适应确定,如式(8)所示,无需交叉验证对k手动调优;再利用Sigmoid 激活函数输出维度为C的新的权重参数,权重参数较好反映了不同通道的重要性与相互关联度;将新的权重参数与输入特征图进行乘积运算,重新分配不同通道特征权重,较好抑制无效特征,增强了有效特征的权重,与SENet[18]等注意力模块相比,ECA 模块更加轻量、高效。
ECA 结构如图8 所示。
图8 ECA 结构Fig.8 Structure of ECA
2.4 迁移学习
由于军舰数据获取困难,仅利用小样本数据集从头训练,算法无法学习到有效特征,网络收敛性较差。 迁移学习[19]包括实例迁移(instancebased transfer)与参数迁移(parameter-transfer)等多种迁移学习算法。 实例迁移指将具有相似特征的数据作为正样本辅助训练,经参数微调后,可用于改善小样本数据集的特征学习效果。 参数迁移指源域与目标域中存在有利于提升实验效果的、可共享的参数或先验知识,将这些参数作为初始值训练得到的目标模型,比使用随机初始化所得模型更有效[19]。 文献[4,20]将迁移学习用于舰船目标检测,检测精度均得到了不同程度的改善。基于迁移学习数据分布理论,ECAs-Hourglass 利用与军舰具有较高相似度要害部位特征的海警船、民用船等作为辅助样本,与军舰一同作为正样本训练。 数据集舰船样本数量较少,无法实现网络的重新训练。 为进一步提升检测效果,利用参数迁移算法,先冻结检测器模块,加载ImageNet数据集上训练得到的模型参数,应用于ECAs-Hourglass 算法;再利用公开的Seaships 数据集训练特征提取模块与ECA 改进后的Hourglass 特征提取主干网络,迭代500 次后保存模型参数;最后,整体网络解冻,利用所建立的舰船要害部位检测数据集训练,同时微调网络参数,从而达到更好的收敛效果。
3 实验结果
3.1 数据集与实验环境
为验证ECAs-Hourglass 算法有效性,分别使用舰船要害部位检测数据集、公开的PASCAL VOC 数据集进行实验。 实验环境如表3 所示。
表3 实验环境Table 3 Experimental environment
初始输入图像的下采样率为R。R取值较小可以保留更多的细粒度特征信息,但会引入较大的运算负担;R取值较大可降低计算量,但会造成一定检测精度损失。 为较好地平衡检测效率与检测精度,实验设置R=4。 使用Adam 优化器迭代训练,输入图像统一缩放为512 ×512 分辨率。 训练过程学习率逐步下降,初始学习率为1. 25 ×10-4,在训练第50 次与第75 次下降为先前的1/10,设置初始迭代次数为160,批训练规模(batch size)设置为8。
3.2 评价指标
采用每秒处理帧数(frame per second,FPS)评价检测速度,采用平均准确率的均值(mean average precision,mAP)评价算法检测性能,mAP 能够更全面地衡量多召回率下的算法检测精度,计算如式(9)所示。 FPS、mAP 值越大,表征算法检测性能越好。 交并比(intersection over union, IoU)阈值设定为0.5,即当IoU 大于0.5时,认为检测成功。
式中:P为准确率;r为召回率。
3.3 实验分析
3.3.1 舰船要害部位检测数据集实验结果
用舰船要害部位检测数据集训练ECAs-Hourglass 算法,待网络收敛后,即得到舰船要害部位检测模型。 为验证算法检测性能,在相同实验平台、相同训练数据下,与不同检测网络性能对比测试,测试结果如表4 所示。
表4 舰船要害部位检测数据集测试结果Table 4 Test results of warships’ vital parts dataset
与其他目标检测算法对比可知,ECAs-Hourglass 算法准确率为77.68%,检测速度为28 FPS,相较于SSD、Mask R-CNN、ResNet18、CenterNet-Hourglass(simple),mAP 分别提升了5.34%、4.03%、5.17%、4.41%。 由于舰船要害部位检测数据集是关于舰船目标的小型数据集,与ImageNet 等通用数据集差异较大。 仅迁移原CenterNet 网络参数时,mAP 为71.95%,若使用2.4 节改进后的迁移学习算法,mAP 提升了1.32%,几乎不影响检测速度。 从而验证了迁移学习有助于小样本数据检测效果的改善。
由于ECAs-Hourglass 算法采用了多尺度特征融合与并行的高分辨率注意力机制,可实现多尺度的特征提取,扩大了特征图感受野,充分利用了不同分辨率特征图的有效信息,抑制了无效信息,适用于多尺度的舰船目标要害检测任务。 ECAs-Hourglass 算法检测速度为28 FPS,略低于SSD 算法,这是由于ECAs-Hourglass 引入不同空洞率的空洞卷积,有效融合了多尺度检测信息,实现了更有效的特征提取与特征融合,导致检测速度略有下降,但检测准确率明显提升,对不同尺度的舰船要害部位目标检测效果较好。
不同要害部位检测精度如图9 所示。 天线桅杆多为小尺度目标,分辨率低,不同舰船的天线存在差异,利用矩形框标注的天线桅杆包含大部分背景信息,部分舰船图像天线背景为近岸岛礁,背景噪声严重干扰算法提取有效特征,因此天线桅杆的检测精度低于其他类别要害部位的检测精度;结合图1 与图3 可知,不同舰船的雷达目标特征差异性较大,不同角度拍摄的雷达要害部位图像差异较大,且雷达图像数量较少,神经网络的特征学习效果与数据质量密切相关,故雷达这类要害部位的检测精度相对较低;水线类要害部位多为狭长条状,较为狭长的检测框不利于卷积核提取有效特征,检测难度较大。 由于导引头获取的舰船图像水线多与海天线平行,结合前期数据集标注算法相关实验,对标注算法进行改进,改进算法参阅第1 节所述,避免使用过于狭长的矩形框标注水线,框定接近水平且环境噪声干扰较小的水线特征(标注实例见图2),在满足导引头对舰船水线这类要害部位检测任务要求的情况下,水线的检测效果得到改善;驾驶舱目标尺度大,特征较为清晰,不同角度成像差异较小,故在4 类要害部位中检测精度最高。
图9 不同要害目标检测精度Fig.9 Detection accuracy of different vital targets
由图9 可知,ECAs-Hourglass 算法对4 类要害部位检测精度均有提升,其中驾驶舱、水线、雷达、天线桅杆要害部位检测精度分别提升4.54%、6.71%、3. 21%、3. 18%,证明了ECAs-Hourglass算法改进的有效性。
部分舰船数据检测结果及热力图如图10 所示。 由表4 与图10 可知,ECAs-Hourglass 算法对不同角度、不同尺度获取的舰船要害部位,均可较好地实现多尺度、多角度要害部位检测,无需传统的基于海陆分割与杂波建模等预处理,可实现端到端的检测,检测速度满足任务需求;且检测特征无需人工设计,鲁棒性较好,精度较高。
图10 部分舰船要害部位检测结果及热力图Fig.10 Detection results and heat-map of warships’ vital parts
ECAs-Hourglass 算法训练损失函数变化曲线如图11 所示。 由于数据集包含多尺度舰船要害部位,训练初期,目标尺度预测损失较大,迭代20轮后,由14 降低至4。 当迭代轮数大于70 时,热力图目标中心点与目标尺度预测损失曲线均实现较好收敛;当迭代轮数大于90 时,要害部位中心点偏移损失曲线由0.28 降低至0.22 左右,曲线趋于稳定,总体偏移损失取值较小,检测精度较高。 由图11 可知,随迭代轮数的增加,损失函数变化曲线逐渐降低,训练结果趋于稳定,算法可达到较好的收敛效果。
图11 损失函数曲线Fig.11 Curves of loss function
为进一步测试ECAs-Hourglass 算法的鲁棒性,重新划分舰船要害部位检测数据中训练集与测试集比例,分别设置为7 ∶2、6 ∶3,计算mAP 如表5所示。 可知,3 种划分比例下的算法mAP 均可达75%以上,说明ECAs-Hourglass 算法适应性较好,检测结果较准确。
表5 不同比例训练集与测试集测试结果Table 5 Test results with different ratio of training set and validation set
3.3.2 参数与运算量对比分析
综合考虑弹载设备运算能力及其对舰船要害部位检测的实时性要求,算法需兼具检测速度与检测精度,对ECAs-Hourglass 与不同网络的参数与运算量,即浮点运算次数(floating point of operations,FLOPs)进行对比分析,参数与运算量如表6所示,表6 所示为整体检测网络所需参数与总体运算量,包括数据输入、主干特征提取与检测器输出等。 表中:“*”表示原CenterNet 模型特征预处理算法,即利用核数为7、步长为2 的二维卷积,以及步长为2 的残差块实现输入图像的预处理,由于舰船要害部位检测数据集中,不足50 像素的小尺度要害部位目标较多,原特征处理方式易损失较多信息,不利于提升检测精度;“**”表示利用核数为5、步长为1 的深度可分离卷积与步长为2 的残差块对输入图像预处理,利用深度可分离卷积改进图像预处理模块,能够在降低算法参数的同时,较好地保留利于小尺度舰船要害部位检测的底层特征,有助于提升检测精度与检测速度。
由表6 可知,双级Hourglass 参数量显著高于单级Hourglass 网络,无法满足弹载嵌入式设备硬件要求,因此,选取单级Hourglass 作为主干特征提取网络。 深度可分离卷积[21]改进了二维卷积,能够在保证检测精度的同时,大幅度降低网络计算参数。 利用深度可分离卷积改进初始特征层中的核数为7 的普通卷积,能够在不增加运算参数的同时,保留较多特征信息;空洞卷积利用不同空洞率的卷积核提取特征,在不增加额外运算量的同时,有效利用多尺度感受野,获取更多的检测信息,RFB 模块能够较好融合不同尺度的特征信息,适用于舰船要害部位等多尺度检测任务;ECA模块添加在主干网络中,导致算法增加了较多的参数量,检测精度提升幅度较低;ECAs-Hourglass算法利用ECA 并行的改进原Hourglass 结构中的跨层连接(见图8),提升更多检测精度的同时引入的参数与运算量更少。 改进后的ECAs-Hourglass 算法能够充分利用不同通道间的关联性,降低了下采样造成的特征损失,在保证检测速度的同时,有助于提升检测精度,模型参数更少,硬件负担更低。
表6 网络模型参数与运算量Table 6 Parameters and operands of models
综上,利用深度可分离卷积替换原始二维卷积能够降低算法参数规模与运算量,利用ECA 注意力机制并行改进原Hourglass 结构中的跨层连接,与现有串行使用注意力机制的算法相比,算法总参数更低,同时利于改善算法编码-解码过程造成的特征损失;ECAs-Hourglass 算法在参数量、总体运算量上,具有较好的轻量化算法特性。 利用舰船要害部位检测数据集测试,检测速度为28 FPS,mAP 为77.68%,满足轻型反舰导弹弹载嵌入式设备的检测效果与应用要求。
3.3.3 消融实验设计
设计消融实验,进一步评估不同模块对检测结果的影响,利用公开的PASCAL VOC 数据集测试算法性能,实验参数同3.1 节,对比测试与消融实验结果如表7 所示。
由表7 可知, 在相同实验环境下, 利用VOC2007 + 2012 数据集测试,ECAs-Hourglass 算法mAP 可达66.63%,检测速度为29 FPS。 相较于SPP-Net、YOLO 与单级Hourglass 网络,mAP 分别提升了7.13%、0.84%、5.57%。 Mask R-CNN网络检测精度较高,但检测速度仅为15 FPS,无法满足检测速度要求。 由于ECAs-Hourglass 引入RFB 融合了多尺度特征,添加了高效注意力机制ECA,算法复杂度提升,检测速度略有下降,由33 FPS降低至29 FPS,但仍可满足实时性要求。
表7 对比测试与消融实验Table 7 Comparison test and ablation experiment
单级Hourglass 网络引入RFB 后,mAP 提升了4.12%,检测速度由33 FPS 下降至25 FPS。 RFB提取并融合了不同尺度感受野的特征信息,提升了检测精度,对多尺度目标检测性能较好,但损耗了一定的检测速度;ECA 模块植入主干网络中,mAP 仅提升了2.25%,检测速度下降为23 FPS,将ECA 并行置于Hourglass 不同特征图的跨层连接部位,mAP 由61.06% 提升到63.99%,检测速度为30 FPS,说明利用ECA 并行的改进Hourglass网络跨层连接,相对于串行叠加注意力等方式,检测精度提升幅度更大,引入的运算量更少。 进一步说明,并行添加ECA 模块后,使得算法能够充分利用不同通道的关联性,在增强有用特征的同时,有效抑制无用特征,有助于检测准确率的提高。
对比ECAs-Hourglass 算法与原始SSD 算法检测效果,如图12 所示。 与原始SSD 算法相比,ECAs-Hourglass 算法对不同舰船要害部位检测精度均有提升,由图12 第3 行2 幅图可知,SSD 算法存在部分漏检现象,ECAs-Hourglass 算法可准确检测出远距离的舰船要害部位;ECAs-Hourglass算法生成的检测框可准确框选出要害部位,比SSD 算法生成预测框更准确。 由表4 与图12 可知,ECAs-Hourglass 算法对舰船要害部位检测效果更好,更适用于轻型反舰导弹对舰船要害部位的精确检测任务。
图12 原始SSD 算法与ECAs-Hourglass 算法对比Fig.12 Comparison of original SSD and ECAs-Hourglass algorithms
消融实验中,tensorboardX 记录的不同模块改进后的算法损失函数变化曲线如图13 所示。 图中:原始CenterNet 网络为单级Hourglass 结构。
综合以上策略,ECAs-Hourglass 算法将舰船要害部位检测mAP 提升到77. 68%,提升了4.41%,检测速度可达28 FPS。 与使用单级Hourglass 结构的原CenterNet 算法相比,在PASCAL VOC 数据集上测试ECAs-Hourglass 算法,mAP 提升了5.57%,检测速度为29 FPS。 由表6与表7 可知,ECAs-Hourglass 算法可在损耗较少检测速度的同时,有效提升检测精度,算法参数与运算量较低,满足弹载设备配置要求,可实现舰船要害部位的精确检测。
4 结 论
反舰导弹打击舰船要害部位能够以最少的弹药消耗,实现对敌最大毁伤。 针对现有算法无法准确检测舰船要害部位、检测模型参数冗余等问题,构建了舰船要害部位检测数据集进行实验,提出了一种多尺度特征融合的Anchor-Free 轻量化舰船要害部位检测算法。
1) 引入多尺度特征融合、高效轻量化注意力机制改进Hourglass 网络,在舰船要害部位检测数据集上测试,mAP 为77.68%,速度为28 FPS,相比SSD、Mask R-CNN、CenterNet-Res18,mAP 分别提升了5.34%、4.03%、5.17%。
2) RFB 利用空洞卷积融合多尺度特征,仅增加较少运算量,有效增强了多尺度舰船要害部位检测精度,mAP 提升了4.12%;特征降维易损失检测精度,利用ECA 改进Hourglass 中的跨层连接,mAP 提升了2.93%,模型总参数量更少,满足弹载设备配置要求。
如何进一步提升算法在复杂海岸背景下的检测精度是后续工作的重点研究方向。