APP下载

基于混合注意力机制的目标跟踪算法*

2022-03-22冯琪堯张惊雷

计算机工程与科学 2022年2期
关键词:训练样本注意力卷积

冯琪堯,张惊雷

(1.天津理工大学电气工程与自动化学院,天津 300384;2.天津市复杂系统控制理论及应用重点实验室,天津 300384)

1 引言

随着卷积神经网络和深度学习在目标检测领域取得成功,越来越多的研究者将其运用到目标跟踪中,并取得了很好的效果[1]。深度学习方法的优势在于使用深度特征对图像信息进行编码,而深度特征有较强的特征表达能力和泛化能力[2],相比传统手工特征更加精确,能减小复杂外观和背景的影响,适应不同的跟踪场景。

目前,目标跟踪算法主要分为基于相关滤波的算法和基于深度学习的算法。基于相关滤波的算法中以核化相关滤波器KCF (Kernelized Correlation Filters)[3]为代表,使用循环矩阵采集正负样本,利用脊回归训练目标检测器,取得了良好的效果。后续的区别尺度空间跟踪器DSST (Discriminative Scale Space Tracker )[4]、时域正则相关滤波SRDCF (Spatially Regularized Discriminative Correlation Filters)[5]、高效卷积算子ECO (Efficient Convolution Operators )[6]等算法均在此基础上进行改进,但都以增加算法复杂度的方式提升跟踪效果,导致速度大幅降低。基于深度学习类算法中,孪生网络类算法因其在速度与精度上取得了良好的平衡,受到学者们的广泛关注[7,8]。该类算法以全卷积孪生SiamFC (Fully-Convolutional Siamese) 网络目标跟踪算法[9]为代表,将目标跟踪看作图像匹配任务,将标记的跟踪目标作为模板,在后续帧中寻找匹配的样本,取得了良好的效果,此类算法仅需进行离线训练,使速度得到保证。孪生实例搜索跟踪器SINT (Siamese InNstance search for Tracker)[10]在孪生网络框架下重新设计了特征提取网络,将目标跟踪任务看作一个定位问题,加入了感兴趣区域池化层,并利用光流进一步提升了跟踪效果。DSiam (Dynamic Siamese)[11]是一种动态孪生网络模型,可在线学习目标外观变化,并在网络中融合多层特征,提升了网络特征表达能力。早停跟踪器EAST (EArly-Stopping Tracker)[12]提出一种根据特征提取网络中每层的特征表达质量“早停”迭代策略,若浅层网络中表达质量满足需求则不向深层传递,降低了算法复杂度。相关滤波器孪生网CFNet (Correlation Filter siamese Network)[13]将相关滤波器作为孪生网络中的一个分层进行训练,提升了算法性能,但为保证速度缩减了网络步长和特征通道数,降低了特征表达质量。

针对孪生网络类算法易导致算法在光照变化、目标形变和遮挡等复杂场景中跟踪失败的问题,本文提出一种混合注意力机制,以抑制图像中的干扰信息,使跟踪算法在复杂场景中具有更好的跟踪精度。另外,在训练阶段本文提出一种自对抗训练样本对的构建方法,以模拟复杂场景,并利用多个损失函数进行联合训练,提升了算法的泛化性。在多个公开测试集上的实验表明,本文算法较经典算法取得了更好的跟踪精度与更强的泛化性,同时速度满足实时跟踪需求。

2 SiamFC算法原理

SiamFC是一种基于深度学习的目标跟踪算法,包括离线训练和在线跟踪2个阶段。

2.1 离线训练

离线训练阶段采用图像对进行训练,从视频序列图像中取距离小于阈值D的2帧构建训练样本对,较前一帧作为示例图像z,较后一帧作为搜索图像x,分别输入孪生网络的2个分支;利用骨干网络进行特征提取,骨干网络使用调整后的AlexNet[14],得到模板特征图和搜索区域特征图,对二者进行卷积操作,得到最终的响应得分图。该过程表示如式(1)所示:

fSiamFC(z,x)=φ(z)*φ(x)

(1)

其中,φ表示骨干网络,*表示卷积操作。

训练阶段将得分图与标签(数据集中使用一个矩形框在每帧图像中标出目标位置,以矩形框区域作为目标,以像素点为单位,在每帧图像上生成目标的概率分布图,即为标签)进行对比,若得分图上某一像素点与标签相差小于阈值R时,视为正样本,否则视为负样本,如式(2)所示:

(2)

其中,p是得分图中某个位置的正负样本属性,u是该位置对应的标签,c是该位置在得分图中的响应值,k是网络步长。

训练过程利用Logistic loss定义损失,如式(3)所示:

L(p,u)=log(1+exp(-pu))

(3)

以所有像素点损失的平均值作为该图像对的总损失。SiamFC应用随机梯度下降法最小化损失函数,来训练孪生网络参数θ,如式(4)所示:

(4)

其中,E表示期望,L(·)表示Logistic loss。

训练阶段使用127*127的示例图像和255*255的搜索图像,按照式(5)构建图像对:

(5)

Figure 1 Image pair build图1 图像对构建

示例图像与搜索图像均输入权重共享的骨干网络进行特征提取,骨干网络结构如表1所示。

Table 1 Structure of backbone network

2.2 在线跟踪

在线跟踪阶段从初始帧中选定目标区域作为跟踪模板,输入孪生网络示例分支,算法运行时无需调整跟踪模板及网络参数,后续帧输入孪生网络搜索图像分支。所有图像均使用式(5)方式裁剪后输入网络,其中搜索图像分支裁剪时使用前一帧目标框的中心位置,利用训练好的端到端的网络模型直接获得跟踪框。

3 SiamMA算法

本文提出一种基于混合注意力机制的孪生网络目标跟踪SiamMA (Siamese network object tracking based on Mixed Attention mechanism) 算法,算法结构如图2所示。该算法在训练阶段使用堆叠裁剪法构建训练样本对,在骨干网络后添加通道注意力CA(Channel Attention)和空间注意力SA(Spatial Attention)混合的注意力机制,同时调整损失函数,使算法性能得到有效提升。

Figure 2 Structure of SiamMA algorithm 图2 SiamMA算法结构

3.1 自对抗训练样本对

如图3b所示,经典SiamFC算法构建训练样本对时,使用像素均值填充图像裁剪时尺寸不足部分,该方法易在训练图像中出现大量均值填充区域,与实际跟踪场景不符。

Figure 3 Training sample pairs图3 训练样本对

本文提出一种构建自对抗训练样本对的数据增强方法,利用图像自身信息通过堆叠裁剪法提高训练样本的复杂度。数据增强是提高深度学习算法性能的常用方法,即人为增加输入图像的复杂度,提升网络鲁棒性[15]。通过堆叠裁剪法构建自对抗样本的方法如图4所示,将图像自身信息作为尺寸不足部分的填充元素,首先将训练图像堆叠成3*3的图像阵列,然后以中心图像左下角为坐标原点,利用式(5)对图像进行裁剪。

Figure 4 Stacking and cropping图4 堆叠裁剪法

目标跟踪任务需在图像序列首帧选取感兴趣目标,可人工剔除干扰因素,获得较纯净的示例图像,而后续帧中的干扰因素无法依赖人工处理。本文在网络训练阶段模拟这一现象,在构建训练样本对时,对孪生网络搜索分支的输入图像使用堆叠裁剪法进行处理,为搜索图像引入更多干扰因素,模拟实际跟踪时的复杂场景,使训练的网络模型获得更强的鲁棒性和泛化性。

堆叠裁剪法为搜索图像引入大量语义背景,导致训练中前景与背景的类不均衡,为此本文引入Focal loss来平衡前景与背景,如式(6)所示:

(6)

其中,p是得分图中某个位置的正负样本属性,γ为常数调节因子。算法总损失LSiamMA如式(7)所示:

LSiamMA=L(p,u)+FL(p,u)

(7)

3.2 注意力模块

计算机视觉中的注意力机制是模仿人类大脑处理视觉信号的机制。当人观察场景时,首先快速扫视整个场景,然后会发现感兴趣区域进行重点观察。同理在深度学习中,浅层卷积神经网络提取到的信息以相同权重向深层传递,但当知道某些先验信息后,就能相应调整权重,抑制某些干扰因素,提高深度特征的编码质量,增强网络的特征表达能力[16]。

卷积神经网络的核心是卷积运算,卷积是跨通道和空间提取特征的,因此卷积神经网络中的注意力机制主要从通道和空间2个维度进行权重建模,以提高特征表达质量。本文根据目标跟踪任务特点,提出一种通道-空间混合注意力机制,如式(8)和式(9)所示:

CA(n1,n2)=σ(S2δ(S1n1)+S2δ(S1n2))

(8)

SA(m1,m2)=σ(Conv(m1⊙m2))

(9)

通道注意力(CA)机制如式(8)所示,其中,n1和n2分别是将特征图逐通道进行全局最大池化GMP (Global Maximum Pooling)和全局平均池化GAP (Global Average Pooling)的结果,S1和S2是全连接层,δ是ReLU函数,σ是Sigmoid函数。CA模块结构如图5所示,其对骨干网络输出的特征图(Feature map)同时进行GAP和GMP操作,FC1和FC2是全连接层,再以获得的数组为特征图逐通道重新分配权重(Rewight)。

Figure 5 Channel attention module图5 通道注意力模块

空间注意力(SA)机制如式(9)所示,m1和m2分别是将特征图上的像素点逐空间位置进行全局最大池化(GMP)和全局平均池化(GAP)的结果;⊙是连接操作,将获得的2个单通道特征图连接成1个两通道特征图;Conv()是卷积操作,将两通道特征图映射到同一特征空间,以获得的矩阵为输入的特征图逐像素位置重新分配权重(Rewight)。SA模块结构如图6所示。

Figure 6 Spatial attention module图6 空间注意力模块

此时算法的相似度匹配过程可表示如式(10)所示:

fSiamMA(z,x)=CA(φ(z))*SA(CA(φ(x)))

(10)

在孪生网络示例分支中仅包含目标信息和少量的背景信息,这对于跟踪任务同样重要。因此,本文算法仅在示例分支中添加通道注意力模块,使包含目标信息更丰富的通道在网络中获得更大权重;而在搜索分支中,除目标信息外通常包含更多的背景信息和干扰信息,本文算法使用空间注意力模块,抑制搜索图像中多余的背景信息和干扰信息,同时使用通道注意力模块调整各个通道权重。

4 实验与结果分析

为评估改进后的SiamMA算法的性能,本文使用OTB2015[17]、GOT-10k[18]、UAV123[19]和Temple Color 128[20]等关注点不同的数据集进行测试,并将改进算法与SiamFC[9]、区域候选孪生网络SiamRPN (Siamese Region Proposal Network)[7]、SINT[10]、DSiam[11]和CFNet[13]等孪生网络类算法,以及KCF[3]、DSST[4]、SRDCF[5]和ECO[6]等经典相关滤波类算法进行对比。本文算法使用Python 3.6实现,深度学习框架使用PyTorch 1.1.0,实验平台为NVIDIA GeForce 1080Ti的Ubuntu服务器,使用GOT-10k训练集进行训练。

GOT-10k是一个含10 000个训练集视频和180个测试集视频的大型数据集,包含563个目标种类,评价指标包括:平均重合度AO(Average Overlap)、成功跟踪的准确度SR(Success Rate,取0.5和0.75这2个阈值)和速度(fps)。OTB2015包含100个涵盖外观变形、光照变化、快速运动、运动模糊等经典挑战性场景的视频序列,评价指标为精度Pre(即跟踪框和真实目标框中心位置平均欧氏距离小于20像素值帧数占总帧数之比)和成功率Suc(即跟踪框和真实目标框的重叠部分面积与二者总面积之比)。UAV123由123个1 000帧以上无人机拍摄的长视频序列组成,其中UAV20L包含20个5 000帧以上的超长序列,包括目标尺度和拍摄角度剧烈变化、目标被完全遮挡的情况。Temple Color 128包含128个彩色视频序列,与其他标准数据集不同,该数据集注重算法对色彩的识别能力。

4.1 实验结果

实验结果如表2所示。GOT-10k测试结果展示了算法对不同目标类别跟踪的泛化性,如图7所示,本文SiamMA算法的AO较SiamFC提升了21.7%,在0.5和0.75这2个阈值下也分别提升了23.9%和17%。同时速度达到60.47 fps(较SiamFC下降1.17 fps),表明本文提出的混合注意力机制在提升了算法对不同类别目标的泛化性的同时,仅增加极小的计算成本。OTB2015测试结果展示了算法在复杂跟踪场景中的性能,本文SiamMA算法较SiamFC性能指标分别提升4.5%和3.3%,但与ECO等相关滤波算法仍有差距,然而ECO算法运行速度仅为2.62 fps,难以满足实时性要求,而本文SiamMA算法在运行速度较快的同时保证了一定的精确度与成功率,取得了良好的速度与性能的平衡。本文SiamMA算法在UAV123上较SiamFC成功率提升1.3%。在超长跟踪序列UAV20L上相比对照算法,精度和成功率均为最优,且较SiamFC性能分别提升7.9%和6.2%。在Temple Color 128数据集上,本文SiamMA算法较SiamFC性能指标分别提升3.4%和2.2%,表明本文提出的混合注意力机制在复杂色彩场景中也能有效提升算法性能。SiamRPN是目前孪生网络类最先进的算法之一,在实验中其与本文算法的精度和成功率十分接近。ECO在多个常规数据集上的精度和成功率高于本文SiamMA算法的,但其速度差距明显。

Table 2 Experimental results of different algorithms

Figure 7 Average overlap (AO) normalization results of different algorithms on GOT-10k图7 不同算法在GOT-10k上平均重合度(AO)归一化结果

4.2 结果可视化

算法可视化结果如图8所示。图8a中,由于第23帧目标快速移动,SiamFC跟踪框已经发生偏移,第81帧由于尺度突然变化,SiamFC跟踪框已经完全偏移目标,而本文SiamMA算法仍能框定目标。在无人机拍摄图像(图8b)中,从首帧时的远处小尺度目标,到第243帧开始目标逐渐接近镜头,到第785帧大尺度,本文SiamMA算法都能准确框定目标,SiamFC仅能标定目标的一部分,至第1 051帧结束也未能完全框定目标,表明本文算法对目标尺度变化和目标角度变化跟踪时有较强的鲁棒性。图8c中,第 906帧目标被部分遮挡,所有算法均未被影响,在第1 085帧中,目标左侧行人移动至目标右侧,过程中目标被完全遮挡,SiamFC跟踪框发生偏移,至第1 536帧完全偏移目标,而本文SiamMA算法全程可精确框定目标。图8d中,银白色的打火机由于其本身像素值较高,对卷积神经网络中目标响应值造成了一定影响,初始帧中目标遮挡住打火机,第56帧时目标离开打火机位置,SiamFC跟踪框完全偏移目标,至最终第370帧始终未能框定目标,而本文SiamMA算法始终都能准确框定目标。图8e中,视频中目标发生剧烈形变,由弯曲逐渐伸展,本文SiamMA算法较SiamFC可更加精确地标定整个目标,更加接近真实值。

Figure 8 Visualization results of different algorithms图8 不同算法可视化结果

5 结束语

本文在经典SiamFC算法的基础上,提出了一种基于混合注意力机制的孪生网络目标跟踪算法(SiamMA),有效抑制了跟踪中的背景干扰,在训练阶段提出构建自对抗训练样本对的数据增强方法,使训练的网络模型具有更强的泛化性。实验表明,本文算法在多个数据集上获得了更好的精度与成功率,然而与部分相关滤波算法相比仍有差距,在保证算法运行速度前提下提升跟踪效果仍是今后需完善的工作。

猜你喜欢

训练样本注意力卷积
让注意力“飞”回来
基于3D-Winograd的快速卷积算法设计及FPGA实现
如何培养一年级学生的注意力
人工智能
卷积神经网络的分析与设计
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
基于小波神经网络的网络流量预测研究
宽带光谱成像系统最优训练样本选择方法研究
A Beautiful Way Of Looking At Things