复杂背景下红外图像弱小目标检测
2021-09-23徐佩伟杨志勇蒋昕昊
蔡 伟,徐佩伟,杨志勇,蒋昕昊,姜 波
(火箭军工程大学 兵器发射理论与技术国家重点学科实验室,陕西 西安 710025)
引言
由于红外成像系统可以全天候提供清晰图像,且能够穿透雾、烟和其他大气条件等障碍物,在民用与军事领域都有着广泛应用。红外弱小目标检测作为目标识别与跟踪领域的重要内容,近年来已成为研究热点[1]。根据国际光学工程学会(SPIE)的定义,把面积不大于9×9 像素的红外目标称为红外弱小目标[2-3]。红外弱小目标检测的研究对象通常为距离较远的机动目标——红外弱小目标,往往占有像素少,缺少颜色、形状和纹理等细节信息,检测难度较大。而且红外图像获取受环境因素和设备的影响,会产生背景噪声和固有噪声,难以区分噪声和弱小目标,使得红外弱小目标检测更加困难[4-6]。
随着计算机视觉的不断发展,基于深度学习的目标检测算法由于其突出的学习和表征能力,已经广泛应用于各类目标检测任务中[7]。李小宁等人[8]提出一种用于检测车辆小目标的方法,采取浅层与深层特征融合的策略来提高检测效果,但在复杂背景下算法性能有待提高。受到可见光目标检测领域的启发,深度学习也被一些学者用于红外目标检测。Zhao 等人[9]设计了一种用于红外弱小目标检测卷积神经网络TBC-Net,使用语义约束提取目标特征,解决了背景和目标不平衡导致的特征学习困难问题。总的来说,基于深度学习的检测算法有更好的适应性和更高的准确性,但在复杂背景下弱小目标检测仍然会存在虚警的情况。
本文提出一种基于深度学习的网络模型YOLO-FCSP,对于不同复杂背景下的红外弱小目标检测,具有良好的准确性和实时性。首先,对YOLOv3 网络采取减少下采样次数的操作,并借鉴残差学习和跨阶段局部网络构建特征提取网络,以保证弱小目标特征不丢失。其次,利用多路径聚合网络融合浅层和深层的特征,充分利用重要的目标细节信息,同时使用两个检测输出层负责检测小目标,提高了红外弱小目标的检测效果。
1 有关方法
为了提高目标检测的速度,J.Redmon 等人提出将目标检测任务视作回归问题的端到端检测算法YOLO。由于YOLO 集成了检测的全流程,运行速度快,但检测精度有待提高。原作者受锚框策略的启发提出了YOLOv2,有效地平衡了检测速度和精度,但难以探测一些小目标。为有效解决小目标的检测问题,又进一步提出了改进版本YOLOv3。该网络包含多个残差模块,能够减少梯度消失的问题,提高了检测精度。YOLOv3 与前一版本不同,有9 个预测矩形框,并被分成了3 种不同尺度。此外,为了检测到更多的细节特征,用上采样的方式使特征图尺寸变大获取更多的深层语义信息。再对不同层融合,得到的特征图包含更丰富的特征信息,提高了对小目标的检测准确率。对于特征提取的骨干网络,借鉴残差网络设计了Darknet-53 代替Darknet-19,加深网络的层数,增强了特征提取能力。
由于YOLOv3 网络层数较深和参数量巨大,检测速度有待提升,因此轻量级网络YOLOv3-tiny 被提出。相较于原始YOLOv3 网络,特征提取部分没有采用复杂的Darknet-53,而是使用了池化操作和卷积简化网络结构,使检测速度得到大幅提升。特征融合部分将3 个不同尺度的特征层减少至2 个尺度,分别用于大、小目标的独立检测。YOLOv3-tiny 通过减少网络层数和检测分支,减少网络参数量和计算量,使得检测速度大幅提升,适合对实时性要求比较高的场景。但由于其网络深度较浅,高层次语义信息提取能力不足,网络检测精度受到一定影响。
2 YOLO-FCSP 网络
YOLO-FCSP 网络模型的设计主要从特征提取网络和特征融合网络2 个方面进行考虑,网络结构如图1所示。在特征提取阶段,考虑弱小目标信息的完整性而使用8 倍下采样,并通过使用CSPRBlock模块增强信息传递,以更好地适应红外弱小目标的检测任务。在特征融合阶段,使用多路径聚合[10]对浅层空间位置信息和深层语义信息进行融合,进一步降低虚警,提高网络检测性能。
图1 YOLO-FCSP 网络结构Fig.1 Structure of YOLO-FCSP network
2.1 特征提取网络
由于弱小目标在红外图像中像素少,特征细节不明显,过深的网络容易丢失特征信息,加之网络模型参数量大而造成推理速度变慢,因此相对较浅的网络更适合红外弱小目标的实时检测。此外,下采样会使特征图缩小,无法判定目标与原图像素的对应关系,从而影响定位精度。为提高检测精度和速度,将YOLOv3[11]的32 倍下采样调整至8 倍,避免弱小目标空间位置信息过度丢失。
考虑到下采样会导致目标部分信息损失的问题,在网络的第一层引入Focus 结构,如图2所示,该结构对数据进行切片操作,间隔采样得到4 个特征图,输入通道数扩充了4 倍。然后将得到的特征图再经过卷积操作进行通道信息融合,最终得到没有信息丢失的2 倍下采样特征图。不仅减少了网络模型的参数量和计算量,还将图像的宽度和高度信息整合到通道空间中去,为后续的特征提取保留了更完整的图像信息,能够进一步提高网络模型的检测性能。
图2 Focus 结构Fig.2 Structure of Focus
受到跨阶段局部网络[12]启发,设计了网络组件CSPRBlock 模块,能够增强网络特征提取能力,并减少模型参数量和推理时间。CSPRBlock 模块结构如图3所示,由跳跃连接和主体路径两部分构成,主体路径由1×1 卷积、n个堆叠的残差学习模块和1×1 卷积组成,其中2 个1×1 卷积作用是调整通道数实现降维,降低网络参数量。跳跃连接部分经过一次点卷积跨层连接到网络的拼接层,与主体部分拼接,然后采用点卷积调整通道数与输入一致,实现通道信息的融合。包含CSPResen 的特征提取网络能够保证检测性能不下降,且比YOLOv3 的骨干网络Darknet 拥有更少的参数量和计算量。
图3 CSPRBlock 模块Fig.3 CSPRBlock module
将空间金字塔池化(spatial pyramid pooling,SPP)作为特征提取网络的最后一层,主要目的是分离上下文特征,增加感受野,便于后续融合全局特征信息,改进后的SPP 如图4所示。具体过程如下:首先对输入特征进行卷积操作,实现通道数减半;然后分别进行不同大小的最大池化(maxpooling),池化核大小分别为5、9 和13,步长均为1;最后将3 个池化层和上一层的输出特征图合并,输入到下一个卷积层进行特征学习,得到更为丰富的局部特征。SPP 结构几乎不会降低网络推理速度,同时还能提高网络检测精度。
图4 改进的SPP 模块Fig.4 Improved SPP module
2.2 特征融合网络
浅层特征图具有分辨率高、空间位置信息丰富的特点,而较深的网络层特征图的细节信息少,且存在像素错位的问题,但后者能够高效地提取丰富的语义信息。为充分利用深层特征图语义信息,同时不损失浅层特征图的空间位置信息,需要将浅层与深层进行特征融合,融合后的特征图兼具丰富的语义信息和位置信息。鉴于红外弱小目标的特殊性,结合PANet 优化特征融合网络,充分融合浅层和深层的特征图,增强各个网络层的信息传递,形成自下而上和自上而下的网络路径,实现特征信息的重复利用,结构如图1所示。
特征融合网络的输入来自3 个部分,其中2 个来自特征提取网络的2 倍和4 倍下采样的特征图,另一个是经过SPP 处理的8 倍下采样特征图。特征融合网络的输出,又称检测头,是目标检测的输入。由于弱小目标特征细节少,特征图感受野越大,越容易将噪点和强干扰误认为目标。通过对比实验分析,去除128×128 像素大小的检测输出层,保留32×32 像素和64×64 像素大小的检测输出层。
锚框(anchor boxes)是一组宽高固定的初始先验框,对目标的检测精度和速度有影响,故重新设置了检测头对应的初始锚框。根据红外弱小目标数据集中的先验框,利用K-means 聚类算法进行聚类,表1 为检测输出层特征图的尺度参数。
表1 检测输出层的尺度Table 1 Scale of detected output layer
3 实验结果与分析
为验证本文提出的检测网络在复杂背景下红外弱小目标检测的检测效果,实验在不同背景下的红外弱小目标的数据集进行测试,设计消融实验证明网络模型所采用策略的有效性,并与其他典型的网络模型检测结果进行对比。
3.1 数据集
实验所采用的是红外序列图像中弱小飞机目标检测跟踪数据集[13],由国防科技大学和中国航天科工二院合作制作。从中选取5 个复杂背景下的红外序列图像作为实验数据集,图像尺寸大小为256×256 像素,共3 299 张,利用Labelme 软件对图像进行矩形框标注,将数据集按照9:1 的比例分为训练集和测试集。图5 展示了部分数据集图像,可以看出目标尺寸均小于9×9 像素,符合红外弱小目标定义。表2 为5 个红外弱小目标序列详细情况,涵盖了地面、天空和地空交界多种复杂环境背景。
表2 5 个红外弱小目标序列详细情况Table 2 Detailed information of 5 infrared dim-small target sequences
图5 红外弱小目标数据集Fig.5 Infrared dim-small target dataset
3.2 网络训练
选择Python 作为实验编程语言,实验基于Pytorch1.8,训练和测试在Pycharm 中实现,硬件平台配置见表3。实验中,模型输入图像大小均为256×256 像素,不进行压缩、扩大和裁剪等处理,采用马赛克增强来增强训练数据[14],以保证网络模型对弱小目标的检测效果。
表3 实验硬件平台配置Table 3 Configuration of experimental hardware platform
网络训练使用Adam 作为优化器,将衰减权重设置为0.000 5,批次大小为16,初始学习率设置为0.01。采用余弦函数衰减法,学习率衰减至0.002左右,学习率曲线如图6所示。图7 为模型训练的损失下降曲线,约在500 次迭代后损失值稳定。图8 为平均准确率曲线,检测精度随训练迭代次数增加而提升,最后基本保持稳定,其中YOLO-FCSP的平均准确率增幅比YOLOv3 更快。根据训练曲线和和检测精度情况,可以看出训练结果比较理想,证明了网络模型结构的有效性。
图6 学习率衰减曲线Fig.6 Decay curve of learning rate
图7 损失值下降曲线Fig.7 Descent curve of loss value
图8 平均准确率曲线Fig.8 Average precision curve
3.3 评估指标
为了评估红外弱小目标的检测效果,使用以下评估指标:
1)精度、召回率和平均准确率
精度(precision,P)是被预测为正样本中实际为正样本的比例,召回率(recall,R),也称查全率,是实际的正样本被预测为正样本的比例,两者公式如下:
式中:TP 为目标被正确预测为正样本的数量;FP为目标被错误预测为正样本的数量,即误检;FN为目标被错误预测为负样本的数量,即漏检。
平均准确率(average precision,AP)指的是精度的平均值,越大检测精度越高。其值是P-R 曲线同坐标轴所围成的面积,最大值为1,公式如下:
2)FPS
每秒帧数(frame per second,FPS),指的是每秒可以检测到的图像数量,是用来评估检测速度的常用指标,FPS 值越大检测速度越快。
3)参数量和计算量
参数量(parameters)对应于模型的空间复杂度,占用显存的量,包括模型总参数量和各层输出特征图大小。模型的参数量越多,需要训练的数据量越大,训练时容易导致过拟合。计算量(GFLOPS)又称为时间复杂度,指网络模型完成一次前向传播所需要的总计算量,通常用每秒浮点运算次数来表示。计算量越大,训练和检测的时间越长。
3.4 结果分析
3.4.1 消融实验
为验证特征提取网络改进的有效性和可靠性,将本文算法模型拆分成5 组进行训练,分别在5 个不同背景下的序列图像上进行测试,测试结果如表4所示。第1 组为原始YOLOv3 算法;第2 组为将YOLOv3 的特征提取网络下采样次数由32 倍改为8 倍;第3 组在前一组的基础上加入CSPRBlock组件;第4 组在第3 组的基础上加入改进的Focus结构;第5 组在第4 组的基础上,将改进的SPP 模块加入特征提取网络的最后阶段。
由表4 可以看出:第1 组各个序列的AP 分别为89.8%、87.6%、90.9%、81.8%和91.5%,FPS 均在80 左右。由于YOLOv3 网络模型层数较多,参数量和计算量十分巨大,分别为61 M 和154 GFLOPS。第2 组考虑到红外弱小目标信号弱特征少,调整网络32 倍下采样至8 倍,模型参数量和计算量大幅降低,且检测速度提升较大。与第1 组相比,5 个背景下检测的平均准确率均有所下降,这与网络的深度变浅有关。第3 组引入借鉴跨阶段局部网络设计的CSPRBlock 模块,各个序列的AP 值均大幅上升,网络模型参数量与第2 组相比降低20%,计算量减少一半,这是因为CSPRBlock能够增强网络学习能力,有效消除网络存在的计算瓶颈和减少内存占用,从而提高了检测网络的推理速度和准确性。第4 组将第一层卷积下采样替换为Focus 结构,实验结果表明,针对占有少量像素的小目标,Focus 结构可以在一定程度上减少模型参数量和计算量,提升网络检测精度和速度。第5 组是在第4 组的基础上添加了改进的SPP 结构,网络参数量和计算量分别增加了0.05 M 和0.5 GFLOPS,FPS 小幅降低,但各个序列的AP值分别提升了2.0%、0.4%、1.9%、2.6%和1.5%。
表4 消融实验结果Table 4 Results of ablation experiments
为验证多路径聚合的特征融合对网络模型检测性能的提升,将使用FPN 融合策略的网络模型YOLO-FCSF 和结合PANet 的YOLO-FCSP 算法进行对比,实验结果如表5所示。
表5 加入PANet 的效果对比Table 5 Effect comparison of add PANet
可以看出,使用结合多路径聚合网络的方法有效地融合了不同层的特征,精度、召回率和平均准确率分别提升了54.4%、4.7%和8.7%,其FPS 小幅下降了30。综合以上实验结果,本文设计的网络模型可以有效提升复杂背景下的红外弱小目标检测效果,且有着良好的实时性。
3.4.2 检测网络的对比实验
为进一步验证本文提出算法的检测性能,与经典的Faster R-CNN[15]、SSD[16]、YOLO-V3 和YOLOTiny 进行了对比,测试结果如表6所示。
表6 算法对比实验结果Table 6 Experimental results of methods comparison
从表6 可以看出,与经典的深度学习算法YOLOv3、Faster R-CNN 和SSD 相比,YOLO-FCSP检测准确率、召回率和平均准确率最高,分别达到91.9%、94.6%和92.6%,检测速度大幅提高至170,红外弱小目标检测效果提升显著。在复杂背景条件下,YOLO-FCSP 各项指标均能够取得较好的结果,这表明相对较浅的网络更适合特征不明显的红外弱小目标。与轻量化网络YOLO-Tiny 相比,检测速度有小幅下降,但检测性能提升较为明显。尽管YOLO-FCSP 检测结果比较突出,但检测精度也并未达到100%,这主要是由于图像中存在高亮边缘、噪声和大幅明暗变化的背景,与小目标极其类似而产生少量虚警。
为了能够更加直观地分析模型检测性能,对复杂背景下5 种不同序列进行红外弱小目标检测,结果如图9所示。结果表明,在背景亮度剧烈变化的复杂背景下,YOLO-FCSP 可在一定程度上区分较强迷惑性的斑点状背景和目标,对红外弱小目标具有较好的检测性能,且能够做到较低的虚警率。
图9 5 种不同序列中YOLO-FCSP 算法的检测结果Fig.9 Detection results of YOLO-FCSP in 5 different sequences
4 结论
为解决复杂条件下红外弱小目标的检测问题,本文设计了一种基于深度学习的目标检测算法,利用结合跨阶段局部模块的网络高效提取弱小目标特征,通过自下而上和自上而下的融合路径将浅层细节和位置特征传递到高层。以红外序列图像中的弱小飞机目标为研究对象进行实验,结果表明,本文提出的算法能够有效解决检测过程中弱小目标细节丢失和虚警率高的问题,提高了复杂背景下检测红外弱小目标的准确性和实时性。此外,网络模型复杂度大幅降低,能够又快又准地检测出红外弱小目标,满足了部署到移动硬件平台和嵌入式设备的条件。在后续工作中,将考虑加入注意机制来增强检测算法的特征学习能力,继续优化网络结构,使用生成对抗网络对红外弱小目标的数据集进行数据扩充。