基于改进YOLOv7的机载红外弱小目标检测算法

2024-02-05 01:32张子林喻松林
激光与红外 2024年1期
关键词:弱小红外注意力

张子林,喻松林,王 戈,刘 彤

(华北光电技术研究所,北京100015)

1 引 言

目前探测成像的方式主要分为基于可见光的探测成像、基于红外系统[1]的探测成像和基于雷达的探测成像。基于可见光成像的目标纹理清晰、特征明显,目前大部分的目标检测算法研究都是基于可见光的,虽然基于可见光目标检测技术较为成熟,但难以满足部分军事领域全天候的环境需要,如航空领域;雷达能够获得图像更为精细的特征信息,但随着“电子对抗、反辐射导弹、超低空突破防守和新一代隐形战斗机”等反侦察技术的不断提出和改进,这严重影响了基于雷达在目标检测识别的应用;而红外探测成像具有很强的抗干扰能力、可以无视大部分常规复杂地形空间、并能进行全天工作,可以很好地提供稳定可靠的目标图像,具有先天的目标检测识别优势,随着红外探测技术发展,该技术在机载、舰载等领域获得了广泛的应用。

目标成像大小往往随着探测的距离成反比,距离越远,成像的目标就越小,轮廓就越小,能够更快更好的检测到红外小目标更是有利于快人一步发现对方。

国际光学工程学会定义弱小目标局部信噪比<5 dB,图像中的像素大小 ≤ 9×9,其所占一帧图像大小为 256×256 的 0.12 %。基于红外成像的弱小目标往往缺失色彩、特征模糊,可利用的信息更少,其次,红外图像通常会受到强背景杂波和噪声的影响,因此信杂比和信噪比较低,检测难度更大。传统的红外弱小目标检测算法针对红外小目标特性往往采用滤波、局部对比度测量(LCM[2]、MPCM[3]等)等单帧和基于序列的方法去分割图像中的噪声与小目标。目前已经形成了良好的体系,但缺点明显,没有很好的鲁棒性同时难以满足实时检测,而随着深度学习的火热兴起,基于深度学习的目标检测算法具有断层式的准确率和良好的实时性。目前深度学习目标检测算法主要以RCNN[4]系列为代表的两阶段检测算法与YOLO[5]、SSD[6]代表的一阶段检测算法组成,当然也有一些衍生的基于Transformer和基于关键点的一些目标检测算法也在逐渐崭露头角。

YOLO系列算法作为单阶段的目标检测算法,在具有较高的的检测准确率的同时具有较高的帧率,可以满足实时性。自提出以来便被研究人员应用于各大领域。在红外领域中,刘彤[7]提出Darknet-53骨干网络结合SPP进行特征提取的方法对YOLOv3改进,使其局部特征能够与全局特征融合,提高了特征图的表征能力,但准确率较低,且仅针对红外船舶场景;He[8]针对机载红外弱小目标提出了IRI-CNN检测算法,有效降低了虚警率,但难以满足实时性。Yang,R[9]针对小目标对YOLOv5算法改进,优化了目标锚框和引入注意力机制提高了检测精度,但依旧低于YOLOv7的实验结果。

针对以上不足,本文选择YOLOv7[10]作为目标检测的基础模型,对其进行改进以此提高对机载红外弱小目标检测的准确率。作为当前最为先进的YOLO系列的目标检测算法,YOLOv7自公布以来,就迅速被实验人员应用于各大领域。无论是检测精度还是检测速度都超越了已知的检测算法。本文主要内容主要包括:

(1)对YOLOv7网络结构进行修改,对其新增一个特征层获得尺寸较大的特征图,新增的特征层下采样较少,但分辨率高,有助于网络模型学习弱小目标的特征。

(2)针对红外弱小目标尺寸占比过小及信息特征较少问题,引入注意力机制,激励网络模型更加关注需要学习的特征信息。

(3)原先使用损失函数CIOU替换为EIOU[11]损失函数,使其网络模型能够更快的收敛。

2 YOLOv7模型

作为目前最为先进的单阶段目标检测模型,但YOLOv7网络结构和前几代几乎没有变化。按照功能划分主要包含三个模块,骨干网络(Backbone)、颈部网络(Neck)以及头部网络(Head)。

Backbone的主要作用是进行对输入的图像进行特征提取,并最终获得三个特征层。Backbone网络结构主要由CBS(Conv卷积+BN归一化+SiLU激活函数)模块、MP-1模块与YOLOv7独有的ElAN模块组成,ELAN模块结构图如图1所示。

图1 ELAN网络结构

YOLOv7设计的ELAN(E-ELAN)模块通过考虑最短梯度路径使得可以堆叠更多 Block,在不改变原始框架梯度传输路径的基础上,通过使用组卷积来增加特征的基数,并使用无序合并基数的方法组合出不同的特征。这种方式可以增强通过不同特征图学习的特征,并改进参数和计算的使用,提高了网络的学习能力。

Neck主要包含了SPPSCP模块和Panet模块,SPPSCP模块称为特殊的SPP结构:使用了具有CSP结构的SPP扩大感受野,SPPSCP模块主要作用是进行特征图融合,丰富特征信息,有助于检测出尺寸较小的目标物体。YOLOv7中依然使用了Panet结构,不仅对特征进行上采样实现特征融合,还会对特征再次进行下采样实现特征融合。

Yolo Head是YOLOv7的分类器与回归器,通过Backbone和FPN获得三个加强过的有效特征层,每一个特征层都有宽、高和通道数,此时可以将特征图看作一个又一个特征点的集合,每个特征点上有三个先验框,每一个先验框都有通道数个特征。Yolo Head所做的工作就是对特征点进行判断,判断特征点上的先验框是否有物体与其对应。YOLOv7使用的解耦头和以前的版本一样,把分类和回归都放在一个1×1卷积里实现。除此之外,YOLOv7借鉴了RepVGG的思想,在强化后的特征层输入Head之前添加了新设计的RepConv模块来进行辅助训练,RepConv的加入不仅降低了网络的复杂度,而且网络的预测性能没有出现下降。

因此,整个YOLOv7网络所作的工作就是-“特征提取-特征加强-预测先验框对应的物体情况”。利用FPN特征金字塔,获得三个加强特征,然后利用这三个shape的特征层传入Yolo Head进行分类与回归获得预测结果。

3 YOLOv7算法改进

3.1 改进后的YOLO网络结构

参考赵元龙[12]的针对小目标的修改网络设计,本次的网络设计也同样增加一个特征层以此来提高对小目标检测效果。除此之外,成浪对Backbone网络结构引入注意力机制,但经过实验发现如果把注意力机制添加到骨干网络中会影响初始化权值,进而导致检测准确率问题。故本文考虑把注意力机制添加到骨干网络输出的特征层后,以期来提高模型的准确率与稳定性。此次改进的网络结构图如图2所示。

图2 改进后的YOLOv7网络结构

如图所示,新增特征层(160×160)获取尺寸较大的特征图,由于感受野较小,故位置信息丰富,有助于提高对红外弱小目标的检测效果;然后对骨干网络Bakbone输出的特征层引入注意力机制CBAM[13],后面特征层进入Head之前加入通道注意力机制ECA[14],引入注意力机制模块使其网络更能关注于小目标特征,增大小目标的信息权重以此来提高网络模型对小目标的检测性能。

3.2 注意力机制

红外弱小目标尺寸所占图像比例较小,所以在卷积训练的时候不可避免会造成目标信息不明显问题,所以引入注意力机制,使模型更加关注感兴趣的区域和较为特殊的区域。

3.2.1 CBAM

CBAM将通道注意力机制和空间注意力机制进行一个结合,相比于SENet只关注通道的注意力机制可以取得更好的效果。其实现示意图如图3所示,CBAM会对输入进来的特征层,分别进行通道注意力机制的处理和空间注意力机制的处理。

图3 CBAM网络结构

通道注意力机制对输入进来的单个特征层同时进行最大池化和平均池化操作,然后把两者池化后的的结果放入共享的全连接层(即多层感知机)进行处理,然后对输出的结果进行相加,然后使用激活函数sigmoid得到(0,1)之间通道注意力特征权重系数,最后再和输入的特征进行相乘得到空间注意力模块所需的特征。

空间注意力机制对前面通道注意力机制获得的特征依次进行最大池化、平均池化和卷积运算,然后经过sigmoid激活函数,得到空间注意力特征权重系数,同样对系数与输入特征图像进行相乘操作,生成最终的特征。

3.2.2 ECA

ECANet按照实现形式属于通道注意力机制中的一种,网络结构设计如图4所示,它是一个非常轻量级的即插即用的模块。

图4 ECA网络结构

ECANet在SENet基础上进行改进,Wang Q实验发现对特征图进行通道压缩会影响学习通道之间的依赖关系,卷积具有良好的跨通道信息获取能力,故ECANet提出用1维卷积高效实现了局部跨通道交互,避免了降维,有助于学习有效的通道注意,提高了准确度。

3.3 损失函数

目标检测的有效性在很大程度上取决于损失函数的定义,损失函数的良好定义将为模型带来显著的性能改进。最初始的损失函数用于测量两个任意形状(体积)A,B⊆S∈Rn之间的相似性的IOU通过以下公式获得:

(1)

不过我们通常使用公式2进行计算(因此IOU损失函数有如下定义:)

(2)

YOLOv7使用CIOU作为损失函数,CIOU损失函数主要考虑了三个重要的几何因素,即重叠面积、中心点距离和纵横比。CIOU损失函数定义如下式所示:

(3)

图5 EIOU损失计算示意图

CIOU Loss虽然考虑了边界框回归的重叠面积、中心点距离、纵横比。但是通过其公式中的v反映的是纵横比的差异,而不是宽高分别与其置信度的真实差异,所以有时会阻碍模型有效的优化相似性。针对这一问题,YIFAN在CIOU的基础上将纵横比拆开,提出了EIOU Loss。

EIOU的惩罚项是在CIOU的惩罚项基础上将纵横比的影响因子拆开分别计算目标框和锚框的长和宽,该损失函数包含三个部分:重叠损失、中心距离损失和宽高损失,前两部分延续CIOU中的方法,但是宽高损失直接使目标盒与锚盒的宽度和高度之差最小,使得收敛速度更快。其定义的损失公式如下:

(4)

(5)

其中,hw和hc是覆盖这两个盒子的最小围框的宽度和高度。公式(4)将损失函数分为三部分:IOU损失LIOU、距离损失Ldis和方向损失Lasp。通过如此定义,既保留了CIOU损失的盈利特征。同时,EIOU损失直接减小了目标盒和锚盒的宽、高差,收敛速度更快,定位效果更好。

4 实验分析

4.1 数据集

使用本单位红外设备地对空采集了飞机数据,并使用labelimg软件自行标注6000张,标注的图片类型如图6所示,采集的飞机目标为单一目标,目标尺寸很小且没有轮廓和纹理信息。考虑到采集的数据较少及背景较为单一,仅对此红外数据进行训练很容易过拟合,故本次实验选取第二届全国“空天杯”创新创意大赛的“红外弱小目标检测跟踪”赛道的部分数据集来扩充本次实验数据集,如图7所示,选取的对地红外弱小目标和采集的飞机目标较为相似,不仅背景复杂丰富,而且数量较多有助于提高神经网络模型泛化性。

图6 机载目标数据

图7 空天杯数据

两个数据集具体细节如表1所示,空天杯的数据集选取了10000张作为扩充数据,图片尺寸为640×480,而使用红外探测采集的图像尺寸640×512,虽然尺寸不一,但放入神经网络前会统一resize为640×640。

表1 数据集目标信息

4.2 实验环境

本实验所需要的实验环境如表2所示。

表2 训练环境配置

表3 TP、TN、FP、FN的定义

4.3 评价指标

在算法模型评价指标方面,主要选择采用图像信噪比(SNR)、准确率(Precision)、召回率(Recall),平均精度均值(mean AP,mAP),以及每秒检测图片的帧数(frames per second,FPS)作为评价指标。

了解准确率(Precision)、召回率(Recall)之前我们需要了解TP、TN、FP、FN的含义,如表2所示。

(1)在局部信噪比不小于3下的检测率和虚警率,信噪比的定义如下:

(6)

其中,μ_T表示目标的灰度均值;μ_B表示背景的灰度均值;σ_B表示背景的标准差,由于整幅图像中不同区域的背景灰度差异较大,所以使用局部信噪比对背景的起伏程度进行描述,局部选取的背景尺度长和宽均为目标的3倍。经公式计算可得,机载红外图像的SNR约为3.5 dB。

(2)准确率的定义如下所示:

(7)

(3)召回率的定义如下所示:

(8)

(4)AP的定义如下:

这里使用插值法来计算AP,选取固定的K={0,0.1,0.2,…,1.0} 11个阈值,K为阈值索引,PR曲线下的面积表示召回率0~1的平均精度。其中PR曲线下面积越大表示模型的性能越好,AP的定义如下式所示:

(9)

(10)

Pintep(r)表示取第r个阈值所对应的样本点之后的样本中的最大值。

(5)mAP就是所有类别AP值的平均值,公式如下式所示:

(11)

我们通常设定多个 IOU 阈值(0.5~0.95,0.05为步长),在每一个IOU阈值下都有某一类别的 AP 值,然后求不同 IOU 阈值下的 AP 平均,就是所求的最终的某类别的AP值。

4.4 实验结果与分析

训练过程epoch为300轮,初始学习率Lr=0.01,并使用Adam优化器优化。Epoch前70轮默认使用Mosaic数据增强。训练过程中的损失函数结果如图8所示,各算法在红外数据集上的表现如表4所示。

表4 不同算法在红外数据集上的表现

图8 损失函数迭代对比

由图8可以看到,在网络模型训练中,本文使用得EIOU损失函数明显比原YOLOv7使用的CIOU损失函数收敛的更快更小,在Epoch为220轮次时,EIOU便基本收敛稳定,而CIOU损失函数需要250轮次才达到稳定。

各算法在红外数据集上的表现如表4所示,在模型评估中,改进后的YOLOv7算法相较于原始算法在检测精度上有所提升,对红外弱小目标检测的准确率对测试集可以达到98.50 %,mAP可以达到98.49 %,相较于原始算法提升了1.24 %,参数量也仅仅增加了2.515 M,FPS减少了5,数据说明,改进后的YOLOv7算法更适合红外弱小目标检测场景。图9(a)、(b)为检测效果对比图。

图9 算法对比图

5 结 结

针对机载红外弱小目标检测困难的问题,本文在YOLOv7算法模型的基础上进行改进,对骨干网络进行修改新增一个浅层特征层获取更多位置信息,然后对骨干网络Backbone输出的特征层引入CBAM注意力机制以及在输入Head之前引入ECA注意力机制以此来提高弱小目标的权重;并使用EIOU损失函数替换原损失函数,解决了CIOU纵横比的模糊定义,提高了回归精度和加快模型收敛。在目标检测性能测试中,改进后的YOLOv7算法平均检测精度在损失较少帧率的情况下可以达到98.49 %,提高了1.24 %,验证了模型的准确性,所以本文的实验对机载红外弱小目标检测领域具有一定的参考意义,有助于后续基于人工智能的目标检测算法部署到机载设备上去。

猜你喜欢
弱小红外注意力
啊!水手,上岸吧
网红外卖
让注意力“飞”回来
闪亮的中国红外『芯』
TS系列红外传感器在嵌入式控制系统中的应用
“扬眼”APP:让注意力“变现”
基于快速递推模糊2-划分熵图割的红外图像分割
A Beautiful Way Of Looking At Things
我有特别的喝水技巧
柴的嘲笑