蔡云泽,张彦军
(1.上海交通大学自动化系,上海 200240;2.系统控制与信息处理教育部重点实验室,上海 200240;3.上海工业智能管控工程技术研究中心,上海 200240;4.海洋智能装备与系统集成技术教育部实验室,上海交通大学,上海 200240;5.上海交通大学海洋装备研究院,上海, 200240)
与基于可见光图像和雷达图像的目标检测技术相比,基于红外图像的目标检测具有可全天时检测、隐蔽性好等优势[1-2]。在一般红外图像中,远处的导弹、战舰、天体等目标尺寸很小,甚至仅占成像平面上的几个像素,呈现为弱小目标的状态,缺乏形状、纹理等丰富的特征信息,在检测时难度很大。同时,陆地、海洋、天空等复杂多变、灰度分布不均的背景环境以及随机出现的噪声点都进一步增加了红外弱小目标的检测难度[3]。因此,红外弱小目标的检测成为红外图像探测技术的研究热点。
传统的单帧红外弱小目标检测算法可分为基于背景抑制的滤波算法、基于人类视觉系统(human vision system,HVS)的对比度算法和基于图像数据结构的分解算法[4]。基于背景抑制的滤波算法包括数学形态滤波[5]、高通模板滤波[6]等的空域下滤波算法和巴特沃斯滤波[7]、非下采样轮廓波变换滤波[8-9]等的频域下滤波算法,检测效果依赖阈值的设定,泛化性较差。基于人类视觉系统的对比度算法基本原理为根据小目标和邻域之间的灰度差异进行检测。Chen等[10]率先将对比度思想用于红外弱小目标检测,提出了基于局部对比度测量(local contrast measure,LCM)的红外弱小目标检测算法;Han 等[11]基于此进行改善,提出了改进局部对比度测量方法(improved local contrast measure,ILCM);其他研究者提出的相关算法[12-17]简单且鲁棒性很好,但检测效果同样依赖设定的阈值,易出现漏检误检。基于图像数据结构的分解算法可实现图像中目标和背景的分离,主要包括基于红外图像块(infrared patch-image,IPI)的算法[18]和基于超完备字典的算法[19-20],时效性较差,且环境复杂时检测效果欠佳。
基于深度学习的目标检测算法与传统目标检测算法相比具有更好的特征提取和信息抽象的能力。到目前为止,常规图像的目标识别和目标检测已取得很好的效果。但在红外弱小目标检测方面,考虑到目标微小、缺乏轮廓特征、灰度和大小起伏变化大,且目标所在的背景复杂多样等问题,基于深度CNN 的红外弱小目标检测算法较少。刘俊明等[4]基于编码器-解码器的架构提出了融合深度神经网络和视觉显著性的红外弱小目标检测算法。Dai等[21]针对当前红外弱小目标检测缺乏公开数据集的问题,贡献了具有高质量标注信息的公开数据集SIRST,并提出了基于非对称上下文调制网络结构(asymmetric contextual modulation network,ACMNet)的红外弱小目标检测算法。而后Dai 等[22]又将基于块的多尺度对比度测量小目标检测算法[15](multiscale patch-based contrast measure,MPCM)应用于深度网络结构,并结合注意力机制,提出了基于局部对比度注意力网络的红外弱小目标检测算法(attention local contrast network,ALCNet),这些算法与传统算法相比检测效果明显提升,但依然存在时效性较差、检测结果中噪音点较多的问题。
本文针对目前单帧红外弱小目标检测效果仍然有待改善的问题,基于特征增强和注意力机制,提出了双通道特征增强集成注意力网络(dual-channel feature-enhancement integrated attention network,DFIANet)的红外弱小目标检测算法。该算法基于端到端的思想进行设计,双通道特征提取模块和特征增强模块有助于丰富弱小目标的特征信息,并通过集成上下注意力模块自适应地增强目标特征和弱化背景噪音,从而实现更好的弱小目标检测效果。
本文检测算法的整体结构如图1所示。首先使用双通道的Resnet20 作为主干网络提取输入图像的特征;然后经过特征增强模块(feature enhanced module,FEM)来融合上下文特征,使得到的特征增强;再将得到的特征图输入集成上下注意力模块(integrated top bottom attention module,ITBAM),自适应地增强和减弱特征图的不同区域,从而更好地突出目标特征;最后经过预测模块(predict module,PM)输出包含红外弱小目标形状和位置信息的Mask二值图像。
图1 DFIANet检测算法的整体网络结构Fig.1 Overall network structure of DFIANet detection algorithm
双通道特征提取模块如图2所示。同文献[22]一样,本文采用Resnet20 作为骨干网络提取输入的红外图像特征。深层网络能降低图像中背景噪音的干扰,有利于红外弱小目标的检测,但深层网络容易出现梯度消失的问题。而用残差网络作为骨干网络提取图像特征,可以有效减少梯度消失出现的概率,使网络层次更深。同时通过复用浅层的特征,使得到的特征拥有更多的浅层细节信息。这对图像检测尤其是目标特征非常小的红外弱小目标检测非常重要。与文献[22]不同,本文使用双通道的主干网络提取输入图像的特征,将Backbone1 和Backbone2 提取到的对应尺度的特征分别进行融合,融合后得到的特征DualFeature1、DualFeature2 和DualFeature3 比融合前拥有更好的特征,噪音更少而目标特征信息更多,这对进一步的红外弱小目标检测尤为重要。
图2 DFIANet检测算法的双通道特征提取模块Fig.2 Dual-channel feature extraction module of DFIANet detection algorithm
双通道特征提取的计算公式如下:
式中:i=1,2,3。
特征增强模块如图3所示。文献[23]提出了一个经典的用于人脸检测的模型,该模型对大尺度和小尺度人脸目标均有很好的检测效果,其中起到重要作用的结构就是FEM,因此本文考虑使用该模块用于红外弱小目标检测。同文献[23]一样,首先将当前特征图和深一层的特征图进行点卷积操作,使当前特征图和深层特征图拥有相同的通道数,然后对深一层的特征图进行上采样,使深层特征尺度与当前层的特征尺度相同,接着使用加法器进行融合。但考虑到检测模型结构太大会影响检测的时效性,因此仅对得到的特征分别进行一次和两次膨胀卷积操作,最后再进行相加融合,得到增强后的特征。
图3 DFIANet检测算法的特征增强模块Fig.3 Feature enhancement module of DFIANet detection algorithm
集成上下注意力模块如图4 所示。图4 中的红色虚线框内是由对应特征自适应生成的注意力概率大小的结构,左边表示自下到上的注意力模块,右边表示自上到下的注意力模块。
自下到上注意力模块的自适应注意力大小计算公式为
自上到下注意力模块的自适应注意力大小计算公式为
式中:Fl、Fl+1分别表示第l层和第l+1 层的特征图;Al、Al+1分别表示第l特征层和第l+1 特征层计算得到的注意力大小特征图;PWConv1、PWConv2 分别表示第1 次点卷积和第2 次点卷积;σ(·)表示Sigmoid 激活函数;Up(·)和GAP2D(·)分别表示上采样操作和2维全局平均池化操作。
文献[21-22]提出的红外弱小目标检测网络中使用了从下到上的注意力结构,以浅层信息为指导,经过Sigmoid 激活函数映射得到不同区域的概率大小,再与深层特征相乘,从而指导深层特征得到具有浅层信息的深层语义特征。从上到下的注意力模块则与此相反,以深层信息为指导,再经过Sigmoid 激活函数映射得到不同区域的概率大小,再与浅层特征相乘,从而突出浅层特征的深层语义性。从下到上注意力网络结构和从上到下注意力网络结构均能起到突出目标特征、弱化非目标特征信息的作用。因此,若通过合理的结构设计来融合从下到上和从上到下的注意力网络结构,理论上得到的网络结构在进行红外弱小目标检测时可以取得更好的检测效果。实际上,文献[21]提出的非对称上下文信息调制网络结构可视为综合了从下到上和从上到下的集成注意力网络结构,经过实验验证具有很好的检测效果,因此本文考虑采用这种注意力网络结构。
集成上下注意力网络结构输出的特征图计算公式如下:
在目标检测中,IoU 是常用的一种损失函数,该函数不仅可以判断检测目标是否是真实目标,还可以估计检测目标与真实目标间的重合程度,并且这种损失计算方法具有尺度不变性,对大小尺度目标均适用。
IoU计算公式如下:
式中:P和T分别表示预测目标框和真实标签框。
文献[21-22]为了解决红外图像中弱小目标和背景之间的不平衡,使用Soft-IoU作为损失函数,能够更好地估计预测目标和真实目标的相似度,从而更好地训练网络。
Soft-IoU计算公式如下:
式中:pi,j和yi,j分别表示红外图像中(i,j)像素位置处的预测结果和真实值。Soft-IoU 损失计算方法可以更好地衡量预测结果与真实值之间的差异性,有利于神经网络模型的训练。
本文实验部分包括训练和测试,训练环境基于GPU1080Ti,测试环境基于CPU AMD Ryzen 7 4800U,深度学习框架为Mxnet,开发平台为Pycharm,开发语言为Python。训练时设置epoch为400,初始学习率为0.1,每隔100 个epoch 学习率减小为原来的1/10。
本文使用SIRST 数据集进行训练、验证和测试,该数据集由Dai 等[21]提出,是目前最大的公开性红外弱小目标检测数据集。SIRST 数据集共包括427 张红外图像,500 多个目标。目标所处的背景复杂多变,包括云层、海面、建筑等;目标尺度多样,大尺度目标长宽接近20 多个像素,小尺度目标长宽仅有1~2 个像素;目标亮度多样,有较亮的目标,也有与背景亮度很接近的较暗目标。进行实验时,427 张图像中256 张图像用于训练,85 张用于验证模型,86 张用于测试。
图5 展示了SIRST 数据集中一些典型的红外图像,为了能更好地看清目标,使用红色方框圈出了红外图像中各个目标的位置。
图5 SIRST数据集中典型的红外图像Fig.5 Typical infrared images in the SIRST dataset
评价红外弱小目标检测效果的常用指标包括单帧检测时间、信噪比增益、背景抑制因子等。考虑到本文检测算法的检测结果都是基于像素点的二值化图像,不方便使用信噪比增益和背景抑制因子作为评价指标,因此使用单帧检测时间、精确率、召回率、F1值和nIoU值作为评价指标来衡量各种算法的检测效果[21-22]。
单帧检测时间用来评价算法的时效性,精确率用来评价检测算法的准确性,召回率用来评价检测算法的查全性,单一的精确率和召回率不能合理地评价检测效果,而F1值则是综合考虑了精确率和召回率,可以更好地评价检测效果。nIoU 评价指标专为SIRST数据集设计,可以综合性地评价红外弱小目标检测结果中的漏检率和误检率。
F1值的计算公式如下:
式中:Pr和Re分别表示精确率和召回率。
nIoU值的计算公式如下:
式中:Ti、Pi分别表示第i张图像中红外小目标的真值标签和预测结果;N表示测试图像数目。
2.4.1 测试结果
图6 给出了86 张测试图像中典型的6 张红外图像Img1~Img6 及其对应的3 维灰度分布图与图像中目标的真实标签图像。从测试图像和3 维灰度分布图可以看出,图像背景较复杂,噪音波动起伏,且目标特征多样,包含多目标和单目标、大尺度目标和小尺度目标以及亮度较大的目标和信噪比较小的暗目标。
图6 给定的原红外图像与对应的3维灰度分布图和真实目标二值化图像Fig.6 The given original infrared images,and the corresponding 3D gray distribution maps and real target mask images
图7 给出了基于传统检测算法和深度学习检测算法的检测结果。通过对比各个检测算法的检测结果可以看出,传统算法RLCM、HBMLCM、TLLCM、MPCM、AAGD 和AMWLCM 等,可以较好地检测出小尺度目标,但形状大小信息不明显,且出现的噪音点较多;而对大尺度目标检测效果较差。HBMLCM、MPCM、AAGD 和AMWLCM 虽然可以检测到位置信息,但只能检测到一个点状,基本检测不到对应的尺度大小,更没有获得较好的形状信息,且在同一张图像中存在明暗不同的多目标时易出现漏检的问题。基于LCM 的检测算法可以较好地得到大尺度和中小尺度的目标,但检测到的目标形状失真严重,且对很弱小的目标易出现漏检的问题。基于深度学习的检测算法,能获得比传统检测算法更好的检测效果。从图7 中可以看出,ACMNet、ALCNet 和本文提出的DFIANet 检测算法对大尺度、小尺度和多目标均有较好的检测效果,且可以很好地检测出目标的尺度信息和形状信息。通过对比Img2 的检测结果可知,与ACMNet 和ALCNet 检测算法相比,DFIANet 检测算法得到目标形状信息更丰富,与真实目标的相似性更大。通过对比Img5 和Img6 的检测结果可知,DFIANet 检测算法能更充分地学习到图像的特征信息,更好地从复杂的背景图像中检测出呈现弱小特征的小目标,且检测出的虚警点很少。
图7 基于传统检测算法和深度学习检测算法的测试结果Fig.7 The test results based on traditional detection algorithms and deep learning detection algorithms
2.4.2 评价指标
表1 给出了各个检测算法基于测试集中86 张红外图像得到的nIoU、nFps、nP、nR 和nF1 值,分别表示平均IoU、平均单帧检测时间、平均精确率、平均召回率和平均F1值,其中加粗的值表示该算法对应的评价指标值最大。
表1 基于各个检测算法得到的nIoU、nFps、nP、nR和nF1值Tab.1 The values of nIoU,nFps,nP,nR and nF1 based on all detection algorithms
与传统检测方法相比,基于深度学习检测算法的nIoU 值大了很多。综合来看,基于深度学习的检测算法在红外弱小目标检测中漏检率和误检率都较低,检测效果更好,不易出现漏检点和虚警点。传统检测算法中,基于MPCM 检测算法的nIoU、nP 和nF1 值都是最大的,具有更好的检测效果,且同基于LCM、HBMLCM 和AAGD 等的检测算法一样,单帧检测时间很小,具有很好的时效性,可以做到实时检测目标。基于TLLCM、RLCM、MPCM 的检测算法,也具有较好的nIoU 和nF1 值,但单帧检测时间较大,时效性欠佳。深度学习检测算法中,本文提出的DFIANet 检测算法得到的nIoU 值最大,总体来看检测效果最好,精确率、召回率和F1值在3 种深度学习检测算法中基本上是最好的,且与ALCNet 检测算法相比,DFIANet 检测算法的单帧检测时间很小,具有更好的时效性。
2.4.3 存在的问题
DFIANet 检测算法还有待改善的地方,比如在一些测试图像中检测效果不够理想。图8给出了测试集中DFIANet 检测算法存在问题的测试结果及ACMNet、ALCNet检测算法的对应测试结果。
图8 DFIANet存在问题的测试结果及ACMNet和ALCNet的对应测试结果Fig.8 The problematic test results of DFIANet and the corresponding test results of ACMNet and ALCNet
从Img1 和Img3 的检测结果可以看出,DFIANet检测算法和ACMNet 检测算法没能很好地检测出图像中所有的目标,存在一些漏检的问题,而ALCNet较好地检测出了目标。从Img2、Img4 和Img5 的检测结果可以看出,DFIANet 检测算法和ACMNet 与ALCNet 检测算法一样,依然对图像中存在的亮噪音点有误检的可能性,但与ALCNet 检测算法相比,ACMNet 和DFIANet 检测算法的误检率更低,且DFIANet 检测算法可以获得更充分的目标特征,检测出的目标基本不会出现断裂的问题。针对DFIANet检测算法测试结果中存在的问题,以及对单帧检测时间的优化,在以后的研究中将从网络结构、模型训练和多帧检测3个角度进一步完善。
去掉Img1~Img5 后,基于剩余的81 张测试结果计算得到各评价指标值,如表2所示,其中加粗的值表示该算法对应的评价指标最大。
表2 基于各个检测算法得到的nIoU、nFps、nP、nR和nF1值Tab.2 The values of nIoU,nFps,nP,nR and nF1 based on all detection algorithms
可以进一步看出,DFIANet 检测算法与其他算法相比具有更好的检测效果。另外值得说明的是,ACMNet、ALCNet 和DFIANet 检测算法的评价指标之所以没有更高,是因为受背景环境的影响,检测得到的目标尺度和形状信息必然存在一定程度的变形,不可能做到与真实目标完全重合,如何降低这种影响,可以在后续研究中开展。
本文针对红外图像中弱小目标存在的成像面积小、特征信息少、深度学习中深层网络缺乏语义信息等问题,引入双通道特征提取模块和特征增强模块,并通过集成上下注意力模块进一步融合浅层特征和深层特征,提出了基于双通道特征增强集成注意力网络的红外弱小目标检测算法DFIANet。通过公开数据集SIRST 的测试表明,基于ACMNet、ALCNet 和DFIANet 等的深度学习算法要比传统红外弱小目标检测算法检测效果更好,而DFIANet算法是其中最优的,漏检点和虚警点更少,单帧检测时间也较快。