杨子轩,肖 嵩,2,董文倩,曲家慧
(1.西安电子科技大学 综合业务网理论及关键技术国家重点实验室,陕西 西安 710071;2.北京电子科技学院 电子与通信工程系,北京 100070)
红外目标检测作为目标检测的子领域,由于其独特的成像方法,在夜间[1],医学扫描[2],电力监控[3]等特定场景有非常好的应用效果。区别于可见光检测,红外图像有纹理信息更少,以及分辨率差、对比度低、信噪比低、视觉效果模糊、灰度分布与目标反射特征无线性关系等特点,导致红外目标检测的方法性能较差。
近些年实现的一些红外目标检测算法,如基于小波的方法[4],基于导数熵的方法[5],基于导数差异度量的方法[6],基于多尺度灰度差的特定数理统计的方式[7]去获取更好的检测效果,搭配如模态阈值降噪的方式[8],双树小波去噪的方法[9],自动编码器[10]的方式以改善输入图片质量获取更好的检测性能。对于通常的目标检测方法来说,基于学习的检测算法主要分为单阶段和双阶段的方法,单阶段如基于回归的方法,yolo系列[11],基于关键点检测等方法[12],两阶段如基于RCNN的检测算法等[13]。在融合其他信息的红外检测任务上,可以通过可见光和红外图像做特征融合的方式进行检测[14],通过多模态的方法补充红外图像纹理细节缺失的问题[15],或者通过可见光训练,红外图像微调网络的方式,补充红外检测的纹理细节,但由于红外数据集较少,近些年相比于可见光检测算法,基于深度学习的红外检测算法研究较少。
红外图像由于其纹理细节弱的特点,笔者考虑使用注意力机制以增强红外的图像表征能力。注意力机制由于其易于嵌入已有网络的特点,近年来在分类,检测,分割等视觉任务上收到广泛的应用,作为一种即插即用提升模型表征能力的方法,可以缓解由于红外成像方法导致的空间信息含量较少的情况,可起到增强红外图像特征表达,同时起到过滤红外成像噪声的作用[16]。在注意力机制的设计上,通常设计思路分为通道注意力机制和空间注意力机制。通道注意力机制通常使用全局池化或卷积等方式将信息归纳到通道数目大小上,再通过全连接层捕捉通道的高阶非线性关系,如SENet[17],SKNet[18]引入缩减和扩张的方式,通过缩减方式降低参数量,提升泛化能力以提升网络性能,如ECANet[19],通过全连接分组正则的方式提升模型表现,这种思路通常从全局或局部的通道关系获取每个通道的注意力权重。空间注意力机制通过通道含有的空间信息进行权重抽取,通常会与通道注意力机制相结合,如NL-Net[20]通过通道间像素的关系获取重要性差异,再通过Softmax将对应通道的权重乘在原图上,GCNet[21]将获取通道长依赖的信息与通道注意力方法相结合,CBAM[22]使用多种全局池化方式进行特征融合,并在串行解耦结构上将通道和空间维度的注意力机制结合在一起,Dual Attention Network[23]使用并行方式分别计算通道注意力和空间注意力的相关关系来捕捉对应的权重参数,Double Attention Network[24]先获取一部分的重要特征信息,再将这些特征表达做外积建模高阶的通道关系,TripleNet[25]将通道,高度,宽度的注意力机制解耦开来,并基于全局池化的方式进行优化,在轻量化的设计上有较好的性能提升。还有一些特定方式的注意力机制设计方法,如FCANet[26]是基于频率的注意力机制设计,从离散余弦变换的角度对SENet进行了信息补充等。可以看到,注意力机制的演变方式是由简单的通道注意力,直到对空间注意力的细致建模,再到将具体模块解耦的方式进行演变的。
笔者提出在红外检测场景下基于注意力机制的Cascade-RCNN算法。其主要贡献如下:提出显隐性通道交互的注意力机制,从显性和隐性两个角度进行通道关系的建模,用因子分解机[27]补充全连接层引出的隐性建模方式;同时提出一种局部池化方式,替换常用的全局池化方式,以获取更多的红外空间信息;在空间维度使用多尺度的卷积方式,提取不同感受野的目标信息;由于空间注意力方式是在局部注意力机制后进行的,因此整个注意力机制是轻量化的设计。相比于常见的注意力机制方法,在不引入过多参数量的同时,使得整个网络的检测性能有一定性能的提升。
笔者提出的引入注意力机制的检测算法是在Cascade RCNN的骨干网络上添加注意力机制的方法,其整体框架如图1所示。检测方法沿用两阶段方法,首先使用骨干网络抽取高阶特征,区域建议网络召回可能存在目标的位置,再经过头部网络将边框和类别预测头分开,同时使用不同的IOU超参数,用逐层提高IOU阈值进行预测计算损失,改善预测边框的质量,红外场景的小目标通常较多。因此,笔者选择了Cascade-RCNN检测算法作为基准算法,并引入注意力机制提升网络检测性能。
图1 Cascade-RCNN算法框架图
笔者设计了一种显隐性通道交互的解耦注意力机制(Factor Decoupled Attention,FDA),其结构分为全局通道注意力,局部通道注意力和空间注意力。在全局通道注意力上引入因子分解机的方法补充通道的显性建模信息;在局部通道注意力上,提出了一种局部池化方法;对于空间注意力,引入多尺度卷积的方法,通过不同感受野以增进对不同大小目标的特征提取能力;在整理结构上采用串行解耦的结构,将通道注意力和空间注意力分解,并从宽度和高度分解,将多种池化方式融合,从更细粒度的建模方式上获取高质量的信息表达。
图2 显隐性通道交互的解耦注意力机制结构图
在机器学习领域,特征二阶非线性特征是一种非常重要的交叉特征,可以直接反馈特征间的紧密程度;在通道注意力机制上,通道二阶关系,即表征特征二阶关系;文中通过因子分解机引入一种显性建模通道关系的方法补充全连接层隐性建模不充分的问题。
因子分解机(Factor Machine,FM)是一种数学关系提取显性二阶特征交叉的方法,用于建模通道间的二阶显性建模,在显隐性的特征建模方式下,当输入为x,下层单节点为y时,有以下的关系:
(1)
其中,xi表示输入对应的通道,n表示输入通道的数目,wixi可以简单表示全连接层的隐性通道交互方式,wijxixj表示显性通道交互方式。对显性建模通道关系进行建模时,空间复杂度至少需要O(n2)个数目的权重参数,而当使用单权重向量时,可将空间复杂度降低至O(n)。因子分解机常会将特征表示为k维的空间表示,进行向量级别的特征交互;而在通道关系计算中如果将二阶显性交叉的结果通过相加统一到一个维度,容易出现特征表达不充分的问题,因此将因子分解机迁移到注意力机制建模中时,引入超参数k,用以控制显性交叉特征维度的充分表达,使用权重向量vi替换wi。二阶建模结点信息表示如下:
(2)
对于FM中独立节点,若按xi与xj的逐个计算,从时间复杂度上是O(n2),会造成比较大的计算负担,因此将FM独立项计算如下:
(3)
将FM中关于xixj的结构分解表示如下:
(4)
在式(4)中,分解后发现xi、xj的权重项是等价的,整理后公式如下:
(5)
通过上述的等价计算公式,将空间复杂度和时间复杂度从O(n2)均降低到了O(n)的程度,使得显性通道特征交叉在理论上产生了可能。
在通道的隐性特征交互方法中,笔者在测试SENet,ECANet等方法的过程中,发现缩减,扩张以及组正则化的方法会使得指标不稳定甚至下降,因此文中采用SAM注意力机制方法作为隐性特征交互的基本方法。其结构如图3(a)所示,即在缩减,扩张的卷积方式中加入了一层强化抽取特征的卷积层,基本卷积结构组成为卷积层、批量正则化层和激活函数;由于SENet缩减过程的存在,引入较少参数量的同时,提升了注意力机制的泛化效果。
(a) SAM结构图
在显隐性通道交互方式上,文中进行了多种实验,将原始输入通道信息与其他通道的交互信息按照每个通道的交互特征加到单个通道上,也尝试将因子分解机的结果直接引入到输出部分进行相加融合。经过多次实验,文中发现先用因子分解机先显性抽取一部分的通道关系表征,再将显性特征与经过全连接层的隐性特征结合在一起,将信息归纳到同一空间维度下的方式实验效果较好。单独使用显性特征的以及采用显隐性交互方式的网络结构如图3(b)和图3(c)所示。
为建模空间注意力机制且轻量化建模,同时提取更多红外图像信息,文中在空间注意力机制前引入局部通道注意力机制(Local Channel-wise Attention,LCA)以缓解全局池化带来的信息量极度下降的情况,同时将宽度和高度进行解耦,单独从宽高两个维度进行更细粒度的通道建模方式,公式如下:
pi=fpermute(x,n,m,l) ,
(6)
fLCA=fconv([favg(fsplit(pi)),fmax(fsplit(pi))]) ,
(7)
其中,pi表示解耦方式后的特征矩阵,n,m,l表示置换的维度,具体解耦方式将C(通道维度),H(高),W(宽)置换为H,C,W和W,H,C,并在后两个维度进行局部池化计算。计算过程中,首先将输入特征分解为s个子矩阵,在每个子矩阵上进行全局池化;这时矩阵宽高维度为s,再引入一层卷积核大小为s的卷积层,将整体维度统一到1的维度上。计算过程如图4所示。
(a) 全局池化方法
空间注意力机制使用卷积层以抽取矩阵像素的非线性关系,通过引入不同步长,补零或空洞方式等获取与输入矩阵相同大小的权重矩阵,表示在空间信息上的不同像素重要程度。在红外目标检测任务中,由于其特定应用场景,目标的尺度分布差异性更大,因此在这里引用多尺度卷积的方式进行优化。conui表示不同卷积核的卷积计算,公式如下:
(8)
笔者采用的数据集是公开的红外FLIR数据集[28],同时包括热图像和无注释的RGB图像。为了适配红外场景的注意力机制效果,实验只使用红外图像,共14 452帧,119 491个目标,有60%的日间场景和40%的夜间场景,包括晴到多云等多种天气的情形,且包括人、汽车等多种检测目标;评估算法的方式以COCO的评价指标为标准评估算法性能,在FLIR数据集,小目标约占据了58.3%,中目标约占据了35.7%,中小目标数目约占有数据集整体的94%。笔者使用平均精确率(mean Average Precision,mAP)作为主要的评价指标,并在骨干网络使用ILSVRC进行预训练以缓解检测网络过拟合的问题。
实验过程共包含注意力机制空间复杂度,注意力机制对比实验,不同骨干网的对比实验,不同超参数的对比实验,共4个部分;从多个角度验证提出方法在红外检测任务上的有效性。
笔者在理论上分析了算法的空间复杂度,其中FDA-light表示只使用局部通道和空间注意力,FDA-SAM,FDA-FM,FDA-SFAM表示在局部通道和空间注意力使用全局的方式下,对比FM的融合实验的对照,FDA表示使用所用模块的结构。C表示通道数目,γ表示缩减系数,k表示空间注意力机制的卷积核大小,g表示ECANet中分组维度,l表示因子分解机中的维度,s表示局部通道注意力机制的分割维度,其中k,g,l,s,γ远远小于C,在表1中,对于FDA-light,空间复杂度远远小于SENet的,FDA与SAM参数量基本相同,同时添加的FM时间空间复杂度都为O(n),模型的FPS基本不变。
表1 注意力机制空间复杂度表
在验证算法设计有效性的过程中,在resnet50的骨干网上测试多种注意力机制在Cascade RCNN上的表现,如表2所示。对SENet进行了多种缩减系数调参实验。对于红外目标检测任务,ECANet表明通道注意力机制效果较差,甚至由于表征能力不够准确而起到反向的作用;GCNet表明通道注意力和空间注意力机制相结合的方法的有效性;CBAM表明解耦的串行结构对特征提取起到辅助作用。
表2 注意力机制对比实验表
图5 夜间道路红外目标识别结果对比图
FDA-light表示只使用局部通道注意力和空间注意力机制的版本,在只引入0.01 M参数的情况下,相比于Cascade-RCNN提升了约1.6%的性能。为了获得更高的性能,FDA在FDA-light的基础上添加了SEFM模块,相比Cascade-RCNN提升了约1.9%。笔者也同时尝试了全连接层和FM的效果对比,在FDA-SFAM中发现,FM和全连接层确实提供了不同维度的信息,弥补了独立隐性通道交互方法的信息单一性。
为了消除设计注意力机制在纵向对比实验中的偶然性,笔者在resnet34和resnet101上进行了补充实验。对照组为Cascade-RCNN和GCNet,实验组为FDA和FDA-light;在不同的骨干网络上,Cascade-RCNN的指标浮动比较大,满足在不同性能下验证所提出方法的有效性假设。在表3中,FDA-light在resnet34上相比于Cascade-RCNN有轻微的指标浮动,在resnet101上FDA-light在各个指标上有约0.8%的提升,FDA在resnet34和resnet101都有约1.8%的提升,从多方面说明了FDA在红外图像检测任务上的有效性。
表3 不同骨干网络检测性能表
在表4中,笔者在所设计的SFAM模块上进行了超参数的测试实验。在FM的设计过程中,表征维度过低会导致性能退化现象,而过高则会引起表征冗余问题,都会导致性能变差;合适值不但可以同时引入显性的通道交互信息,同时可以给予模块设计正则化的效果,提升此部分对于模型拟合的泛化能力。在表4中给出了1,8,16,32,64共5种超参数,并在骨干网络为resnet50的Cascade-RCNN中验证,当特征维度为8时性能最佳。
表4 不同超参数检测性能表
4 结束语
笔者对比了多种注意力机制在Cascade-RCNN框架上的性能,如SENet,ECANet等方法,发现通道注意力机制在红外检测任务上较弱的性能表现,同时发现解耦结构和空间注意力对于任务优化的重要性。基于以上考虑,笔者提出的FDA方法在FLIR红外数据集上的不同骨干网络上,相比于Cascade-RCNN有约2%的精确率的提升;同时在理论和实际参数上进行实验比较,从各个方面充分说明了设计方法的有效性。在红外目标检测的任务上,相比可见光的应用场景,仍有许多挑战需要解决,如针对红外小目标检测,可见光红外图像多模态融合方法的研究等。经过实验研究,发现对于红外检测任务,针对红外图像进行细粒度的注意力机制设计显得尤为重要。