APP下载

基于双模态融合网络的目标检测算法

2023-03-06孙颖侯志强杨晨马素刚范九伦

光子学报 2023年1期
关键词:编码器红外模态

孙颖,侯志强,杨晨,马素刚,范九伦

(1 西安邮电大学 计算机学院,西安 710121)

(2 陕西省网络数据分析与智能处理重点实验室,西安 710121)

0 引言

目标检测是计算机视觉领域的基本任务之一,在安防监控、自动驾驶和军事领域等都有重要的应用[1-2]。近年来,基于深度学习的目标检测已经成为主流,根据检测步骤的不同,算法可以分为两类:两阶段检测算法和单阶段检测算法。两阶段检测算法首先对图像提取候选框,然后基于候选区域进行修正得到检测结果,如区域卷积神经网络(Region-based Convolutional Neural Network,R-CNN)[3]、Fast-RCNN[4]和Faster-RCNN[5]等。单阶段检测算法直接对图像生成检测结果,如Single Shot Multibox Detector(SSD)[6]和You Only Look Once(YOLO)系列[7-10]等。其中,YOLOv5 在检测精度和速度上具有明显的优势。此外,无锚框(Anchor-free)的检测算法近年来也逐渐兴起,如CornerNet[11]、CenterNet[12]和Fully Convolutional One-Stage(FCOS)[13]等,该类算法不用锚框,将目标检测转化为关键点的定位组合问题,摆脱了使用锚框而带来的计算量,提高检测实时性。

目前,目标检测算法主要用与检测任务相关的单模态图像作为训练数据[14-15],然而仅用单模态图像在实际的复杂场景中有时很难检测到目标。为了解决上述问题,许多研究者提出了用多模态图像作为训练数据的方法[16-17]。多模态图像,例如红外图像和可见光图像,具有互补优势。红外图像的优点是依赖目标物体产生的热源,不受照明条件的影响,但无法捕捉到目标的细节信息。可见光图像的优点是能清晰地捕捉目标的纹理特征和细节信息,但容易受到光照条件的影响。因此,基于多模态目标检测研究已成为当前的研究热点[18-23]。DEVAGUPTAPU C 等[18]利用CycleGAN 创建合成红外图像的策略,并利用照明感知融合框架融合可见光和红外图像,以提升红外图像中目标检测的性能;YANG L 等[19]采用照明子网分配权重,联合可见光和红外图像检测行人;赵明等[20]提出了一种跨域融合网络结构,采用红外域和伪可见光域双通道的多尺度特征金字塔获取每个模态的特征图,对多尺度特征进行双模态特征融合;WANG Q 等[21]设计了一种冗余信息抑制网络,能抑制跨模态冗余信息,有助于融合可见光和红外的互补信息;GENG X 等[22]通过信道信息交换实现跨模态人员再识别和利用可见光红外双摄像头跟踪;周涛等[23]设计了三编码器提取多模态医学图像特征,解决单模态图像提取能力不足的问题。

对于流行的卷积神经网络,多模态图像特征融合通常有三种融合方式:早期融合、中期融合和后期融合。早期融合是指在第一个卷积层后,将多个分支特征映射融合,ZHANG Y 等[24]提出一种基于注意力的多层融合网络用于多光谱行人检测;CAO Z 等[25]利用多光谱通道特征融合模块,根据照明条件融合可见光和红外图像特征。中期融合是指在骨干网络提取特征后进行融合,KONIG D 等[26]利用新的多光谱区域建议网络(Region Proposal Networks,RPN)来有效融合多光谱图像中的红外和可见光信息;FU L 等[27]提出一种自适应空间像素级特征融合网络,可以自适应地从红外和可见光图像中提取特征进行融合。后期融合即决策级融合,执行结果的融合,WAGNER J 等[28]提出两个融合架构并分析其在多光谱数据上的性能;白玉等[29]利用两种检测结果决策出最优结果,提出一种基于决策级融合的目标检测算法。但这些方法没有分别提取多模态图像的特征,且融合多模态特征时并不充分,还需要进一步提高多模态特征信息之间的互补优势。

为此,本文提出一种基于双模态融合网络的目标检测算法,采用早期融合,并嵌入了一个门控融合网络,使模型能够确定两种模态图像在不同场景中对检测的贡献。首先,由于红外图像中的特征信息较少,采用设计的红外编码器中对空间信息进行编码;其次,设计了一个可见光编码器,从垂直和水平两个空间方向聚合特征,通过精确的位置信息对通道关系进行编码;最后,引入多任务学习的思想,提出门控融合网络,自适应调节权重分配,实现跨模态特征融合。并在公开数据集和自建数据集上进行验证。

1 本文算法

提出的基于双模态融合网络的目标检测算法框架如图1 所示,整个算法由双模态编码器(Dual Mode Encoder)、门控融合网络(Gated Fusion Network)和检测器(Detector)三部分组成。双模态编码器由两部分构成,分别是红外编码器(Encoder-Infrared,EIR)和可见光编码器(Encoder-Visible,EVS),其中,红外图像XIR通过红外编码器EIR 获取特征FIR,可见光图像XVS通过可见光编码器EVS 得到特征FVS。选择早期融合方式,设计门控融合网络计算红外特征FIR和可见光特征FVS的权重,自适应加权得到融合后的特征FD。同时,通过两个最大池化(MaxPool)残差保留单模态图像的细节特征信息,防止因权重分配过低导致单模态部分特征信息损失。FIR和FVS分别通过MaxPool 层获取更突出的前景特征,将特征FD与其按通道维度拼接得到特征FM,实现双模态特征信息的互补。选用YOLOv5 作为基准检测器,将门控融合网络的输出特征FM作为输入,输入至YOLOv5 骨干网络的第二层,后续通过该检测器进行目标分类和定位。

图1 算法整体框架Fig.1 Overall algorithm architecture

1.1 双模态编码器

由于红外图像和可见光图像的成像差异及各自的特点,使用不同的网络来提取特征。设计的双模态编码器如图2 所示,由红外编码器EIR 和可见光编码器EVS 两部分构成。

图2 左半部分是红外编码器(EIR),输入为红外图像XIR,整个编码器旨在提取红外图像的空间信息,以弥补复杂场景下可见光图像信息的缺失。迷你残差(Mini Residual)模块由MaxPool 层和两个连续的1×1卷积层构成,MaxPool 层能减少特征中的无用背景信息,连续两个1×1 卷积层将多个特征图线性组合,实现跨通道的信息整合。构建残差,对冗余网络层的特征信息进行恒等映射,能在后续层中补充丢失的特征信息。红外图像通常细节信息不明显,但能提取到空间位置信息,在一些夜间、遮挡等场景下,可以发挥优势对目标定位。故在红外编码器EIR 中引入SimAM模块[30]来提取通道中不同的局部空间信息。该模块基于神经科学理论优化了一个能量函数,从而计算出每个神经元的重要性。能量函数为特征层映射计算出特征图的三维注意权重,即考虑了空间和通道权重,由于不在网络层中添加参数,因此对速度没有影响。

图2 双模态编码器结构Fig.2 Dual-mode encoder structure

能量函数见式(1),用于度量神经元之间的区分性,能量越低,当前神经元与周围神经元区别越大。

式中,λ是超参数,实验中设默认值为10-4,t为目标神经元单一通道输入特征,xi是其他神经元的单一通道输入特征和为能量函数因子,M=H×W是某个通道上的神经元数量,H和W分别是通道的长和宽。

图2 右半部分是可见光编码器(EVS),输入为可见光图像XVS,整个编码器旨在提取可见光图像丰富的细节特征来弥补红外图像信息的缺失。迷你残差(Mini Residual)模块由MaxPool 层、1×1 卷积层和3×3 卷积层构成,利用3×3 卷积增大感受野,提取细节特征信息。然而提取的特征通道总体的平均值信息不足以代表每个单独通道的个体性,会损失丰富的局部信息,导致特征缺乏多样性。因此,在EVS 中引入坐标注意力机制(Coordinate Attention,CoordAtt)[31]提取跨通道信息,获得方向和位置信息,使模型更准确地提取到目标特征信息。为了能够获得具有精确位置信息的空间特征信息,从垂直(X)和水平(Y)两个方向利用全局平均池化(AvgPool)操作分别提取特征,得到两个一维向量。沿着两个空间方向提取特征,能够获取通道之间的关系,有助于网络更准确地定位感兴趣的目标。将从X和Y两个方向提取的特征按通道维度进行拼接(Concat),然后利用1×1 卷积压缩通道。为了加快网络训练时的收敛速度,将特征通过批标准化(Batch Normalization,BN)和非线性激活函数(Non-Linear)层。再将特征平分为两部分,通过1×1 卷积将通道数调整到与输入特征相同的通道数。处理后的可见光特征FVS计算过程为

式中,将原始特征信息记为X,i为垂直方向,j为水平方向,gx和gy表示在两个空间方向上的权重。最后通过激活函数Sigmoid 归一化后将特征重新赋予权重,与原始的特征逐像素相乘得到特征FVS。

本文算法在双模态编码器中将两个模态图像的特征信息进行融合,尽管可见光图像对比度高且能反映真实目标环境,具有丰富的图像空间及细节特征信息,但是当有遮挡或者光照不足时,就无法观察到目标。而红外图像虽然不能清晰地观察目标,但能够显示目标的位置信息及粗略的轮廓信息。最后,将EIR 和EVS 提取的特征FIR和FVS拼接,得到输出特征XF。

1.2 门控融合网络

借助多任务学习中的多门混合专家思想[32](Multi-gate Mixture of Experts,MMoE),提出门控融合网络,结构如图3 所示。门控融合网络用于学习单模态特征FIR和FVS对检测的贡献。根据MMoE,将提取红外图像特征和提取可见光特征看作两个任务,即EIR 和EVS 是专家模块,EIR 只用于提取红外图像的特征FIR,同理,EVS 仅用于提取可见光图像的特征FVS,将两个专家模块的结果融合。在融合过程中,需要对某个任务有一定的偏向性,即将专家模块EIR 和EVS 的输出结果FIR和FVS映射到概率。

图3 门控融合网络结构Fig.3 Gated fusion network structure

为了充分利用红外和可见光图像特征的互补性,考虑计算两种模态特征对检测的贡献,为红外特征FIR和可见光特征FVS生成计算概率的门G1和G2。首先将FIR和FVS两个特征按通道维度拼接得到XF,以在空间方向组合它们的特征。利用两个门控模块G1和G2产生权重,实现自适应融合。门控网络是一个两层模块,即1×1 卷积层和Softmax 层。将XF分为两组向量,记为FMIR和FMVS,每组向量由1 到n,记作V1到Vn。G1中V1到Vn通过1×1 卷积层削减通道数得到权重Q1,G2中V1到Vn通过1×1 卷积层得到权重Q2。将原始向量和Q1、Q2分别逐像素相乘加权,输出由后续的Softmax 层归一化得到SIR和SVS,Softmax 函数在G1和G2两个门中的计算过程分别为

式中,Q1∈R1×H×W是分配给红外特征的权重,Q2∈R1×H×W是分配给可见光特征的权重。

归一化后的权值SIR和SVS与FMi,i∈IR,VS,逐元素相乘自适应加权,得到输出特征Y1和Y2,即

对红外图像和可见光图像的特征重新加权,逐像素相加得到合并的特征Y1+Y2,实现多模态特征融合。Softmax 的可分性会使权重向量类内紧凑,类间分离,类内即同一个编码器提取的特征,类间即不同编码器提取的特征。因此,门控融合网络中的Softmax 层会丢失同等重要但不同类的特征信息。为了解决这个问题,利用两个MaxPool 层来弥补丢失的特征信息。MaxPool 操作能够提取特征中的边缘和纹理信息并抑制背景信息,将FIR和FVS通过MaxPool 跳连至输出处,补充丢失的特征信息。原始输入特征FIR和FVS通过MaxPool后,产生新的特征,与门控融合后的加权特征Y1+Y2按通道维度拼接(Concat)得到最终特征FM,即

2 实验结果及分析

2.1 实验条件

实验的操作系统为Ubuntu 16.04,CPU 为i5-8400,GPU 为NVIDIA GeForce GTX 1080Ti(显 存11 GB),CUDA 以及CUDNN 的版本为10.0 和CUDNN7.4.2。实验采用Python 和PyTorch 平台。训练过程中使用SGD 优化器对网络参数进行迭代更新,动量参数设为0.937,BatchSize 设为8,共训练150 个Epoch,在加载数据时将所有图像的分辨率统一调整到640×640,再对整体网络进行端到端训练。

2.2 数据集与评价指标

用公开的KAIST 行人数据集[33]和自建的GIR 数据集对算法进行评估。

KAIST 行人数据集共有95 328 张图片,每张图片都包含红外和可见光图像两个版本,图像尺寸为640×512,包括校园、街道以及乡下等常规交通场景。由于原数据集标注较差且数据集是取自视频连续帧图片,相邻图片相差不大,故进行一定程度的数据集清洗。清洗规则为:训练集每隔2 张图片取一张,并去掉所有不包含任何行人的图片,可得到7 601 张训练集[34]图片,4 755 张白天图片,2 846 张夜晚图片。测试集每隔19 张取一张,保留负样本,可得到2 252 张测试集[35]图片,1 455 张白天图片,797 张夜晚图片。原数据集的标签中包含person、people 和cyclist 三个类别,当照明条件差或分辨率低时,很难区分这三类,故将标签类别仅标注为person 一类。

GIR 数据集是自行创建的通用目标数据集。图像来源于李成龙团队建立的RGBT210 数据集[36],每张图片包含红外和可见光彩色图像两个版本,图像尺寸为630×460。从该数据集中选取5 105 张图片,划分为训练图像4 084 张,测试图像1 021 张。对图片进行标注,确定10 类目标为person、dog、car、bicycle、plant、motorcycle、umbrella、kite、toy 和ball。

两种数据集每张图片均包含红外和可见光两个版本。通过对成像硬件设备捕捉的图片进行高度对齐裁剪,每个图像对是已经配准好的两张图像。对红外图像、可见光图像和两者组成的图像对分别进行训练和测试,所有类型图像共享一套标签。

实验使用的算法评价指标是平均检测精度(Average Precision,AP)、每秒帧数(Frames Per Second,FPS)、精确度(Precision,P)和召回率(Recall,R)。其中AP0.50:0.95指IoU 从0.50 到0.95 每隔0.05 计算的所有类别的AP 平均值。

2.3 消融实验与定性分析

本文算法在KAIST 数据集和GIR 数据集上分别进行消融实验,并与基准算法的n 和s 两个模型进行对比,评估提出模块对检测器的贡献,以验证所提出方法的有效性。

2.3.1 KAIST 数据集

在训练之前,使用k-means++聚类标签框,得到合适的预设框尺寸。常见的输入图像尺寸有416×416、512×512、608×608、640×640,考虑到输入不同尺寸的图像对可能会影响检测器性能,使用本文算法的n 和s 两个模型在KAIST 数据集上进行实验,结果见表1 和2。从表中可以看出,输入图片的尺寸对检测模型的性能影响相当明显。在基础网络部分常常会生成比原图小数十倍的特征图,导致小目标的特征不容易被检测网络捕捉。通过输入大尺寸但不超过数据集原图大小的图片进行训练,能够在一定程度上提高检测模型对目标大小的鲁棒性。网络结构不变,网络的感受野是一定的。输入图像的分辨率提高,即尺寸小,感受野在图像中的占比会下降,导致网络提取的局部信息无法有效预测所有尺度的前景物体,从而造成检测准确率下降。因此,实验中输入图像对尺寸均为640×640。

表1 n 模型上不同输入图像对尺寸的检测器性能Table 1 Detector performance for different input image pairs sizes on n-model

表2 s 模型上不同输入图像对尺寸的检测器性能Table 2 Detector performance for different input image pairs sizes on s-model

为了更好地分析编码器和门控融合网络对检测器性能的贡献,在KAIST 数据集上进行消融实验,结果见表3。可以看出,在YOLOv5-n 模型上,仅输入可见光图像(VS)时,检测精度为58.7%;仅输入红外图像(IR)时,检测精度为71%。用可见光编码器取代YOLOv5-n 的第一层卷积,检测精度由58.7%提升到59.1%;同理,利用红外编码器替换后,检测精度由71%提升为71.3%。当输入为双模态图像时,利用可见光和红外编码器提取特征后,使用门控融合网络分配权重,检测精度达到73.8%,较基准模型单独检测可见光和红外图像分别提升了15.1%和2.8%。在YOLOv5-s 模型上,仅输入可见光图像或红外图像时检测精度分别为59.8%和71.5%。加入可见光编码器检测精度提升到60.2%;加入红外编码器后,检测精度提升为71.9%。当输入为双模态图像时,检测精度达到74.5%,较基准模型单独检测可见光和红外图像分别提升了14.7%和3%。虽然所提算法较基准算法的速度稍微有所下降,但在检测精度有显著提高。

表3 不同模型在KAIST 数据集上的消融实验结果Table 3 Ablation experimental results of different models on the KAIST dataset

图4 为目标person 在不同模型上的精准率与召回率(Precision-Recall,P-R)曲线。可以看出利用双模态图像互补后的特征信息算法,AP 有大幅提升。

图4 不同模态输入在两种模型的P-R 曲线Fig.4 P-R curves of the two models with different modal inputs

为更直观地比较与基准算法的检测结果,部分可视化结果如图5所示。图5(a)和(b)是在双模态图像上的真实框(Ground Truth,GT),图5(c)是基准算法在可见光图片训练后结果,图5(d)是在红外图像上的结果,图5(e)是本文算法的可视化结果。考虑到该数据集可见光图像的背景较清晰,因此将可视化结果展示在可见光图像上。

图5 在KAIST 数据集上的检测结果Fig.5 Detection results on the KAIST dataset

第一行是白天场景,可见光图像光照充足,目标明显,相反,红外图像目标不明显,本文算法将可见光特征补充后能准确检测到目标且置信度分数较高。第二行在可见光图像上错检,通过与红外特征互补后,本文算法能够改善错检问题。第三行基准算法YOLOV5-s 在两种图像上均未检测到小目标,而本文算法的s模型能准确地检测。第四行可见光图像光照不足,很难检测到目标,但红外图像可以解决此类场景的漏检问题,本文算法将红外特征补充后,能够准确地检测到目标。第五行是夜晚场景,此类场景下可见光图像处于劣势,相反,红外图像很有优势,因此,结合双模态图像的特征后,能够检测到目标且置信度分数比单模态图像高。

2.3.2 GIR 数据集

同理使用k-means++聚类标签框设置预设框尺寸。在GIR 数据集上进行消融实验,结果见表4。可以看出,在YOLOv5-n 模型上,仅输入可见光图像时,检测精度为88.8%;仅输入红外图像时,检测精度为75.5%。用可见光编码器取代YOLOv5-n 的第一层卷积,检测精度由提升到89.1%;用红外编码器取代YOLOv5-n 的第一层卷积,检测精度提升为76.3%。当输入为双模态图像时,利用可见光和红外编码器提取特征后,使用门控融合网络分配权重,检测精度达到89.8%,较基准模型单独检测可见光和红外图像提升了1%和14.3%。在YOLOv5-s 模型上,仅输入可见光图像或红外图像时检测精度分别为89.9%和76.8%。加入可见光编码器检测精度提升到90.1%;加入红外编码器后,检测精度提升为77%。当输入为双模态图像时,检测精度达到90.5%,较基准模型单独检测可见光和红外图像提升了0.7%和13.7%。

表4 不同模型在GIR 数据集上的消融实验结果Table 4 Ablation experimental results of different models on the GIR dataset

表5 为在GIR 数据集上10 类目标在不同模型上的检测精度结果。可以看出在两个模型上利用双模态图像的特征信息后,算法大部分类别的检测精度有一定程度的提升,尤其是目标ball 和kite 的精度有大幅提升。

表5 所提算法和基准算法各类的检测精度(AP0.5%)Table 5 The detection accuracy of the proposed algorithm and the baseline algorithm(AP0.5%)

为更直观地比较与基准算法的检测结果,部分可视化结果如图6 所示。本文算法具有灵活性,在该数据集上的可视化结果将展示在红外图像上。第一行,可见光图像误检,相反,红外图像检测准确,本文算法也能准确检测到目标且置信度分数比红外图像高。第二行可见光图像在夜间场景错检,通过与红外特征互补后,本文算法能够改善错检问题。第三行可见光能在光线充足时检测到球,但红外图像未能检测到球,双模态图像特征互补后,本文算法能准确地检测到目标球。第四行可见光错检,但红外图像可以解决此类场景的错检问题,本文算法能够准确地检测到目标且置信度较高。

图6 在GIR 数据集上的检测结果Fig.6 Detection results on the GIR dataset

2.4 对比实验与定量分析

将本文算法运用于KAIST 数据集和GIR 数据集,并利用目标检测常用指标,如AP0.5:0.95、AP0.5等,评估所提网络。最后与近几年具有代表性的目标检测算法比较,验证本文方法的有效性。

2.4.1 KAIST 数据集

表6 给出本文算法与ATSS、YOLOX 等部分主流通用目标检测算法的对比结果。与原基准算法相比,本文算法在检测精度上取得一定优势。与部分经典的双模态检测算法对比,如MMTOD[18]、CMDet[37]、RISNet[38],本文算法有较高的检测精度和较快的检测速度。改进后的算法既可以单独训练红外或可见光图像,也能同时训练红外和可见光图像对,且效果均优于原算法。

表6 在KSIAT 数据集上的对比实验结果Table 6 Comparative experimental results on the KSIAT dataset

2.4.2 GIR 数据集

表7 给出本文算法与YOLOv3、YOLOv4、YOLOv5、YOLOX 等部分主流目标检测算法的对比结果。与部分经典的双模态检测算法相比,本文算法在检测精度和速度上均有一定优势。

表7 在GIR 数据集上的对比实验结果Table 7 Comparative experimental results on the GIR dataset

3 结论

本文提出了一种基于双模态融合网络的目标检测算法,有效结合了红外和可见光图像特征互补的优势,在白天或夜间条件下都能较准确地检测到目标。

算法能对同时输入的红外和可见光图像对进行目标检测,其中,由于红外图像中的特征信息较少,对红外图像采用红外编码器中的迷你残差块对空间信息进行编码,增强了目标在复杂背景中的空间信息;对可见光图像采用设计的可见光编码器从垂直和水平两个空间方向聚合特征,通过精确的位置信息对通道关系进行建模。引入多任务学习的思想,提出门控融合网络,计算不同模态的特征对检测的贡献概率,自适应调节两路特征的权重分配,实现跨模态特征融合。

该算法在KAIST 和GIR 数据集上的检测效果显著。在KAIST 行人数据集上,与基准算法YOLOv5-n单独检测可见光图像和红外图像的结果相比,所提算法检测精度分别提升15.1%和2.8%;与基准算法YOLOv5-s 相比,检测精度分别提升14.7%和3%;同时,检测速度在两个不同基准算法模型上分别达到117.6 FPS 和102 FPS。在自建的GIR 数据集上,所提算法的检测精度和速度也同样具有明显优势。与多个经典的双模态目标检测算法实验对比结果验证了本文的方法具有较好的检测性能,同时具有良好的实时性和鲁棒性。此外,所提算法还能对单独输入的可见光或红外图像进行目标检测,且检测性能与基准算法相比有明显提升。

猜你喜欢

编码器红外模态
基于BERT-VGG16的多模态情感分析模型
融合CNN和Transformer编码器的变声语音鉴别与还原
网红外卖
多模态超声监测DBD移植肾的临床应用
闪亮的中国红外『芯』
TS系列红外传感器在嵌入式控制系统中的应用
基于FPGA的同步机轴角编码器
应用旋转磁场编码器实现角度测量
基于快速递推模糊2-划分熵图割的红外图像分割
车辆CAE分析中自由模态和约束模态的应用与对比