基于关键点检测的红外弱小目标检测

2023-06-27 11:35王强吴乐天王勇王欢杨万扣
航空学报 2023年10期
关键词:力图弱小中心点

王强,吴乐天,王勇,王欢,杨万扣,

1.东南大学 自动化学院,南京 210096

2.江苏自动化研究所,连云港 222061

3.西北工业大学 无人系统技术研究院,西安 710072

4.南京理工大学 计算机科学与工程学院,南京 210094

军事安全在国家安全中具有非常重要的地位,对敌方的飞机、坦克等目标的全天候检测跟踪具有很强的现实意义。作为一种新型技术,红外图像中的弱小目标检测技术由于红外成像只对温度和材料特性敏感,可以弥补可见光图像受光强等环境因素影响较大的缺点,成为传统可见光检测系统的有效补充。

红外弱小目标检测技术在军事上广泛应用于海上监视[1]、预警系统[2]、精确制导[3]等领域。因此红外弱小目标检测的精度与鲁棒性显得十分重要。但与一般的目标检测相比,红外弱小目标检测有以下几个特点[4]:

1) 目标尺寸小。由于成像距离远,目标尺寸一般在3×3~9×9像素大小之间。

2) 目标信号弱。图像的背景信息嘈杂,目标的信噪比较低,目标容易混入背景中。

3) 目标结构性特征不明显。目标不具备明显的纹理特征,目标的形状随目标不同而有很大差异。

由于红外弱小目标检测的巨大应用前景,关于红外弱小目标检测的方法很早就有学者研究。赵坤和孔祥维于2004年就提出了一种利用灰度差异的空域滤波器方法[5],Hou和Zhang于2007年提出了一种基于频谱残差的检测方法[6],龙云利等于2011年提出了一种基于时空域融合自适应红外背景杂波抑制算法[7],澳门大学Chen等于2014年提出了一种利用局部对比度差异的检测方法[8]。但这些基于手工设计的方法或多或少都存在着检测率低、虚警率高、鲁棒性差等缺点。

深度学习显著地推动了计算机视觉的发展,随着深度学习在目标检测、语义分割等领域的成功应用,越来越多的人尝试将深度学习的方法应用于红外弱小目标检测领域。Liu等提出了第一个基于卷积神经网络的红外弱小目标检测方法[9]。张凯等也提出了一种基于卷积网络的空中红外目标抗干扰识别算法[10]。目前,主流的检测方法是使用基于语义分割的方法,即通过分割输出目标。由于红外弱小目标数据集保密性强、公开数据集较少和本身目标尺寸小、信号弱等固有特点,把常规的基于深度学习的语义分割方法直接应用于该领域效果不理想[11]。专门为红外小目标检测设计的分割网络往往虽精度较高但结构复杂,如Li等提出的使用稠密连接的检测网络(DNANet)[12],Liu等提出的基于Transformer的红外弱小目标检测网络[13],这些网络往往无法满足轻量性与实时性要求,同时,基于语义分割的检测算法容易出现“过分割”和“欠分割”现象,从而影响检测结果。

在实际的应用中,红外弱小目标检测更加关注目标物体整体的检测率与虚警率。由于红外弱小目标相对于整张红外图像来说很小,受关键点检测在人体姿态估计等领域的成功应用的启发,尝试着把目标当作一个“点”,通过关键点检测的方法来进行定位研究,这是因为,基于语义分割的红外弱小目标检测方法,可以认为是“两阶段”的,即先获得目标分割轮廓,再根据目标分割轮廓计算目标中心点,继而计算目标检测率与虚警率。上述方法存在以下2点问题:① 该两阶段检测方法的检测精度受限于分割轮廓的精度,分割阶段的“过拟合”和“欠拟合”都会对后续判断目标中心点坐标造成影响;② 该两阶段检测方法的优化目标是使图像中每一个像素点的分类(背景或目标)损失之和最小,把原本属于同一个目标的像素块切分成了单独的像素点来优化网络,与实际情况存在一定的差异。由于红外图像中的弱小目标较小,用关键点表示简单便捷且符合实际,同时,在优化方法上,关键点检测把目标当作了一个“整体”,直接优化目标中心点坐标,与评估指标更加切合,避免了两阶段检测方法的劣势。本文后续的大量实验证明了基于关键点检测方法的有效性。基于此,提出了一种基于关键点检测的红外弱小目标检测方法(Keypoint-Net)。KeypointNet通过热力图(Heatmap)回归来优化目标中心点(关键点)坐标,不仅网络结构较为简单,而且也保证了检测结果具有较高的检测率与较低的虚警率。

1 图像语义分割

图像语义分割任务是对于一个单通道或多通道图像输入,输出与源图像相同分辨率的图像,该图像中的每个像素点都有一个分类标签[14]。2015年,Long等在经典分类网络的基础上首次提出全卷积网络(Fully Convolution Network,FCN)[15],采用编码器-解码器结构。该模型直接丢弃了最后用于分类的全连接层,转而用卷积层替代。同时添加反卷积层进行上采样,从而使输出恢复成原图分辨率,并对输出的特征图进行像素级别的分类。FCN可以进行密集学习并推理出每个像素点的类别,从而实现了端到端的分割输出。经典的分类网络结构与FCN结构如图1和图2所示。

图1 分类网络结构Fig.1 Structure of classification network

图2 全卷积结构Fig.2 Structure of fully convolution network

随着FCN在语义分割中的应用,语义分割有了突破性发展。随后有研究者基于此提出了Unet[16]、Segnet[17]、Deeplab[18]等结构,这些网络进一步研究了诸如如何充分利用上下文信息、如何进行特征融合等问题,使得分割的精度得到了显著提高。

2 关键点检测

关键点检测广泛应用于人体姿态估计、人脸关键点检测等任务。人体姿态估计是为了检测出人体的骨骼框架点(一般为17个),描绘出人体大致的骨骼框架。人脸关键点检测是人脸检测的重要组成部分,包括人脸部分五官区域的检测,并将人脸的轮廓描绘出来。关于关键点坐标的学习方式主要有以下2种:

1) 坐标直接回归法[19]。这是关键点检测领域初期使用的方法,直接回归关键点坐标,方式简单,但存在收敛速度慢、泛化能力差等问题。

2) 热力图回归法[20]。该方法是使用热力图作为关键点坐标的中间态,训练过程中以目标点坐标为中心生成热力图,让目标相似的位置输出高响应值。推理过程中对推理出的热力图结果直接提取其峰值坐标就可获得中心点坐标。该方法通过热力图作为中间态,提高了模型的泛化能力,减少了噪声的影响,鲁棒性更强。与“坐标直接回归法”相比也不需要再设置全连接层,减少了网络的参数。

3 算法介绍

针对基于语义分割网络来进行红外弱小目标检测中出现的精度与网络复杂度不可兼得等问题,受FCN及CenterNet[21]的启发,提出了一种通过热力图回归来直接定位目标中心点(关键点)坐标的网络KeypointNet,与CenterNet相比:① KeypointNet输入的是红外图像,针对红外弱小目标的固有特点,设计了特有的信息融合模块BST;② 通过编码器-解码器结构,KeypointNet最终预测的中心点的热力图与原图尺寸保持一致,不需要再将预测的偏移量转换回原始图像上的坐标。与PointNet相比,KeypointNet的输入是2D的红外图像,而非点云数据,因此,本文方法也没有诸如PointNet中根据点云特点设计的模块。KeypointNet通过热力图直接学习目标中心点的坐标,避免了语义分割网络的“欠分割”与“过分割”对检测结果造成的影响,从而保证了检测速度与检测精度。

红外弱小目标检测的重点是保证较高的目标检测率与较低的目标虚警率,而一般用于红外弱小目标检测的语义分割网络,均是通过间接方法,即先训练出目标的轮廓再求中心点进而判断上述指标,由于语义分割网络对于小目标和边界处的分割效果并不理想,容易造成目标“欠分割”和背景“过分割”,可能导致目标轮廓误差较大,进而影响后续目标中心点的坐标计算,检测效果较差。与语义分割网络的思路不同,关键点检测法直接获得目标中心的坐标,与评估指标更加匹配,避免了因语义分割方法分割不准对检测造成的影响,从而保证了检测精度。同时考虑到热力图回归比直接坐标点回归学习方式更加简单、鲁棒性更强,因此将利用编码器-解码器结构[15]来构建通过热力图回归的方式优化目标中心点坐标的网络。检测网络的主要步骤如下:

1) 输入一张图片,设计编码器进行特征提取得到中间特征图。

2) 设计编码器对中间特征图进行特征融合,输出最终的热力图。

3) 通过热力图的峰值来确定目标中心点坐标。

KeypointNet的整体结构设计如图3所示。网络的设计思想包含3点:

图3 KeypointNet结构Fig.3 Structure of KeypointNet

1) 依据经典的编码器-解码器结构[15],设计了一种由低层级显著特征与高层级特征相融合的模块(Bottom Salient to Top,BST),有效获取了多尺度信息,低层级的较精确的位置信息与高层级的高语义信息相融合,有效增强了特征提取与表达能力。

2) 编码器与解码器之间使用了金字塔池化模块(Pyramid Pooling Module, PPM)[22],提取了不同感受野下的全局特征,有效融合了上下文全局信息,增强了特征的表征能力。

3) 网络的标签是以目标中心点的坐标为中心,根据高斯分布计算而来的目标点热力图,同时使用热力图回归而不是坐标点回归来优化目标中心点坐标,泛化能力更强。

网络的模块如下:

1) BST模块。考虑到目标总体尺寸较小,而低层级的目标位置信息较为精确,受注意力机制[23-24]的启发,设计了从低层级到高层级的特征融合模块BST,如图4所示。

图4 BST模块结构Fig.4 Structure of BST module

首先使用不同尺寸的池化层对低层级的信息进行提取与融合,获得低层级的区域响应值最高的多尺度的显著信息,降低了因目标尺寸大小不同造成的影响,用提取后的信息对具有高语义信息的高层级进行注意力加权,使得高层级具备高语义信息的同时也拥有了较为精确的位置信息。

2) PPM模块[22]。如图5所示,采用4种不同的池化尺寸,将特征图池化到指定大小,再通过1×1卷积来降低特征图通道数并上采样到原特征图尺寸,最后将所有的特征图与原特征图按通道连接。PPM模块在池化过程中将特征图池化到了不同大小,从而获取了不同尺度下的全局信息。

图5 PPM模块结构Fig.5 Structure of PPM module

输入图像标记为I,输出结果标记为S,输入图像到输出图像之间的变换记为

网络的损失函数采用了SmoothL1Loss[25],网络的损失函数为

式中:S和G分别代表KeypointNet的热力图预测结果和热力图真值。

4 实 验

4.1 数据集

目前,公开的红外弱小目标检测数据集较少,主要有以下2个:

1) NJUST-SIRST数据集[26]。本数据包含1×104个训练样本与100个测试样本。本数据集中的红外弱小目标图像样本是用实际的或仿真的弱小目标与实际的天空、海面、建筑物背景图像随机组合的,用于训练的部分红外图像样本及真实标签图如图6所示。

图6 训练集样本及真实标签图Fig.6 Samples of training set and ground truth

2) NUAA-SIRST数据集[12]。本数据集包含256个训练集样本、85个验证集样本和86个测试集样本。本数据集中的红外弱小目标图像样本由真实的红外相机采集而来并加以人工标注,用于训练的部分红外图像样本及真实标签图如图7所示。

图7 训练集样本及真实标签图Fig.7 Samples of training set and ground truth

4.2 评价标准

考虑到红外弱小目标检测技术在实际中的应用特性,评价标准不宜采用关键点检测方法中的诸如对象关键点相似性(Object Keypoint Similarity, OKS)[27]等评价指标,而采用红外弱小目标检测技术领域常用的目标检测率与目标虚警率。

1) 检测率。检测率(Pd)是目标级别的评估指标,是检测正确的目标数量与所有目标数量的比值,计算公式为

式中:Tcorrect和Tall分别表示检测正确的目标数量与所有的目标数量。判断目标点是否检测正确的方法如下:如果预测的目标中心点坐标与实际的目标中心点坐标之间的像素偏差小于阈值,则认为该目标预测正确。

2) 虚警率。虚警率(Fa)是另一个目标级别的评估指标,仅仅追求检测率是不够的,检测率的提升难免会增加误检测的概率,因此用虚警率来对误检进行衡量。虚警率是指预测错误的目标数量与预测的所有目标数量的比值,计算公式为

式中:Pfalse是预测错误的目标数量;Pall是预测的所有目标数量,当预测的目标中心点坐标与实际的目标中心点坐标之间的像素偏差大于阈值,则认为该目标预测错误。

4.3 实验细节

4.3.1 数据标签的获取与处理

网络的输出是以弱小目标中心点为中心的热力图,而数据集中的标签是二值化图像,因此首先需要计算目标中心点坐标,并选择合适的高斯半径对中心点坐标按照高斯分布计算标签图,经处理后的目标标签可视化热力图如图8所示。

图8 可视化热力图Fig.8 Samples of visual heatmap

4.3.2 实验环境与参数

本实验中采用2.6 GHz inter CPUE5-2650处理器,TITAN XP GPU,12 GB RAM硬件环境;Ubuntu16.04系统、Python、Pytorch软件框架。判断目标是否检测正确的阈值设置为3个像素,用于计算高斯分布的高斯半径为5,初始学习率为3×10-4,每经过10个训练周期学习率降为10%,训练的样本批量大小为64,一共训练100个周期。针对NJUST-SIRST数据集,将图片的分辨率统一为128×128输入网络。针对NUAA-SIRST数据集,将图片的分辨率统一为256×256输入网络。

4.4 实验结果

对比了红外弱小目标领域的主流算法,包括传统的算法GST[28]、ILCM[29]、LIG[30]、NRAM[31]、PSTNN[32]、TLLCM[33],基于深度学习的算法DNANet[12]、MDvsFA[26]。不同算法的结果如表1所示。表1显示了在不同数据集上不同算法的Pd与Fa指标的大小,Pd指标越大越好,Fa指标越小越好。根据表1,KeypointNet检测效果明显优于传统算法,虽然KeypointNet在2个数据集上检测率分别比MDvsFA和DNANet差一些,但虚警率比它们低得多,综合来看,基于关键点检测的KeypointNet在目标级别的检测具有最优的效果。

表1 不同算法的结果对比Table 1 Experimental results by different algorithms

同时,测试了3种基于深度学习的算法在GPU上每100张图片(分辨率128×128)推理所需要的时间(表2)。根据表2,KeypointNet算法比DNANet和MDvsFA快的多,满足实时性要求。综合表1和表2,所提算法在检测率、虚警率和实时性上取得了最佳的平衡。

表2 不同算法的推理时间对比Table 2 Inference time by different algorithms

图9显示了KeypointNet网络的输出效果,从左到右依次是输入图像、二值化标签图、编码器的输出结果、网络输出可视化热力图、热力图的峰值、热力图峰值与二值化标签图(即定位结果,包括目标中心点坐标)的叠加图,可以看出,编码器初步关注了目标点的位置(第3列),再经过设计的解码器和特征融合模块后,得到的热力图输出(第4列)已经较为准确地关注到了目标区域,最终通过提取峰值(第5列)筛选掉了误检的目标,并在定位结果(第6列)中展示了预测的目标中心点的坐标数值。

图9 KeypointNet的输出结果Fig.9 Output results of KeypointNet

4.5 消融实验

为了证明基于关键点检测算法的有效性,将本文算法中采用关键点检测的部分替换为采用一般语义分割的算法进行性能对比实验,即将关键点检测头替换为分割头,其余部分均保持不变,从而验证基于关键点算法的有效性,如表3所示。从表3可以看出,虽然基于语义分割的算法检测率有一定的提升,但虚警率却无法保持较低水平,相反,基于关键点的检测算法既能保证较高的检测率,也能保证较低的虚警率,例如NJUST-SIRST上,虽然基于语义分割的方法比基于关键点的方法检测率高了0.7%,但虚警率足足提高了2倍多,基于关键点的方法能够在检测率与虚警率上获得最佳的平衡。

表3 不同检测算法实验结果Table 3 Experimental results by different algorithms

本实验分析了获取热力图标签时高斯半径的影响,如表4所示,包括高斯半径r=3,r=5,r=10与r=15。根据实验结果,高斯半径较小时检测率较低,容易漏检,高斯半径较大时虚警率较高,容易造成误检。综合检测率与虚警率2个方面来看,高斯半径r=5处于中间值,根据此半径进行高斯分布计算效果最好。

表4 不同高斯半径的KeypointNet效果Table 4 Influence of different Gaussian radius on KeypointNet

实验分析了网络中的模块(BST模块与PPM模块)对实验结果的影响。为了具体分析这2个模块作用,以不使用BST模块和PPM模块的网络为基本网络(Baseline),融合方式分别选取直接通道合并和使用BST模块,编码器与解码器部分连接方式分别选取直接连接和使用PPM模块,实验结果如表5所示。

表5 模块的KeypointNet影响Table 5 Influence of modules on KeypointNet

从表5可以看出,把目标看成点进行训练,在不增加其他模块时也具有相对较好的效果,这充分说明了基于关键点方法的红外弱小目标检测的可靠性。加入PPM与BST模块后,网络拥有了更高的检测率和更低的虚警率,这验证了相关模块的合理性。

同时,分析了不同的损失函数对实验结果的影响,选择了回归常用的MSE Loss,SmoothLl Loss[25]与人脸关键点检测中常用的Wing Loss[34]进行对比分析,计算方式分别为

式中:x=|pred-target|;C=ω-ωln(1+ω/ε);pred为预测值;target 为标签值。ω和ε是Wing Loss中可调节的超参数,本文尝试了ω=10,ε=2(Wing Loss 1)与ω=5,ε=2(Wing Loss 2)2种形式。各个损失函数的结果如表6所示。

表6 不同损失函数的KeypointNet效果Table 6 Influence of different loss functions on KeypointNet

从表6可以看出,Wing Loss在本网络中效果较差,在训练过程中收敛也很慢,这说明Wing Loss并不适合本网络。根据表中数据,最终选取了回归中广泛使用的SmoothL1 Loss作为损失函数。

4.6 实验分析

本文是对红外弱小目标检测领域的一种尝试,尝试将广泛运用于姿态估计领域的关键点检测技术运用于弱小目标检测领域,把目标当作“点”,预测“点”的坐标。依据编码器-解码器结构及注意力机制的思想,实验设计了Keypoint-Net网络,通过该网络提取特征并预测出热力图,根据热力图来获取目标的中心点坐标。与通过分割来预测弱小目标的做法相比,本网络把目标看作点,不仅减少了分割网络中“欠分割”与“过分割”对最后结果的影响,也加快了检测速度。

根据表1和表2中数据,部分传统算法误检率非常高,本网络的效果要明显优于传统算法;与深度学习算法相比,本网络也具有很好的效果,同时推理速度也快很多。表3显示了与基于语义分割算法对比,基于关键点的算法具有更好的效果。表4显示了高斯半径对网络效果的影响,本网络最重要的是通过预测热力图来获取目标点的中心坐标,在训练网络的过程中需要构建标签热力图,根据高斯分布来计算以目标点为中心的热力图,因此高斯半径的选择非常重要。表5显示了BST模块和PPM模块对网络效果的影响,验证了本文设计模块的有效性。表6显示了不同损失函数对实验效果的影响,人脸关键点检测领域的Wing Loss损失函数在本网络上效果不佳,经比较最终选取了回归中广泛使用的损失函数SmoothL1 Loss。

图10显示了传统方法中的NRAM、PSTNN、深度学习中的MDvsFA和本文所提出的KeypointNet算法的输出结果的比较,其中KeypointNet中左侧的图像为KeypointNet网络的可视化热力图,右侧的图像为热力图与真实标签图的叠加图。从图10可以看出,在背景较为复杂时,传统算法检测效果不理想,容易漏检,而基于语义分割的算法(MDvsFA)易出现“过分割”现象,导致虚警率偏高。相比于其他算法,本文所提出的算法有着更低的虚警率,有着更好的检测效果。

图10 不同算法的输出结果Fig.10 Results of different algorithms

4.7 未来展望

图11显示了部分预测失败的案例,第1行中,小目标与海面过于相似,KeypointNet出现了漏检;第2行中,KeypointNet误把塔吊的吊钩当成了小目标,出现了误检,这也是后期工作需要进一步研究的地方。

图11 部分预测失败的案例Fig.11 Samples of failed predictions

针对红外弱小目标检测,提出了一种基于关键点检测弱小目标检测算法,在军事方面具有重要应用价值,同时,航空遥感目标检测也是一个研究热点,研究人员针对高分辨率的遥感图像,提出了很多检测精度高、鲁棒性强的算法,如DEA-Net[35]和CG-Net[36]等。这些算法在高分辨率的遥感图像上检测效果较好,但是对于小目标(目标大小只有几个像素)的遥感图像检测效果仍有提升空间。未来,打算在已有基础上,进一步探究适合航空遥感中的小目标检测算法。

5 结 论

1) 本文从关键点检测的角度来解决红外弱小目标检测问题,直接优化目标中心点坐标,确保了检测速度,有效地保证了目标的检测率与虚警率。

2) 本文提出了基于关键点检测的红外弱小目标检测网络KeypointNet,避免了语义分割网络中“欠分割”与“过分割”对检测结果造成的影响,保证了检测速度与检测精度,设计了一种特征融合模块,有效提取了目标的多尺度信息,提高了检测效果。

3) 在红外弱小目标检测领域中广泛使用的NJUST-SIRST数据集和NUAA-SIRST数据集上的实验表明,KeypointNet网络能够有效地平衡红外弱小目标的漏检率和虚警率,同时也具备较快的检测速度,证明了算法的有效性,这也说明了关键点检测思想在多领域有着一定的可拓展性。

猜你喜欢
力图弱小中心点
乔·拜登力图在外交政策讲话中向世界表明美国回来了
强大与弱小
Scratch 3.9更新了什么?
血栓弹力图在恶性肿瘤相关静脉血栓栓塞症中的应用进展
如何设置造型中心点?
对人世的告白(组诗)
时空观指导下的模块整合教学——以《20世纪四五十年代力图称霸的美国》为例
汉字艺术结构解析(二)中心点处笔画应紧奏
寻找视觉中心点
柴的嘲笑