张余冉,段喜萍,李昀松,刘庭圆
(哈尔滨师范大学)
视频目标跟踪技术一直以来作为计算机视觉领域的一个重要分支,在许多实时视觉应用中起着至关重要的作用,如军事制导、赛事直播、游戏娱乐、以及医疗诊断等许多领域[1].跟踪是指仅给定视频第一帧中目标的状态,估计视频序列中目标的轨迹.理想的在线跟踪器应该具有精确性和鲁棒性,以适应复杂的跟踪任务.
目标跟踪模型可以总结为基于生成式模型、基于判别式模型以及基于深度学习方法的模型3个大类.其中,判别式相关滤波跟踪模型具有高效性和鲁棒性.2010 年MOSSE 跟踪器将相关滤波理论首次应用到目标跟踪领域[2].2012 年Henriques等引入了循环矩阵和核函数提出了CSK跟踪器[3],这两个跟踪器在特征选取方面都采用单通道灰度特征.2014 年Henriques等又提出的KCF 模型可以处理多通道特征,提高了特征的表示能力[4].Danelljan利用图像的多通道颜色名称(color names,CN)特征来应对目标遮挡、形变等问题[5].此时的研究表明,在跟踪算法中选用方向梯度直方图(HOG)特征和CN 特征相对于单通道灰度特征可以出色的对目标进行描述.之后的一些算法,如RPT[6]、DSST[7]、FDSST[8]、LMCF[9]等都采用了这两种特征作为图像特征.近年来,具有强大的特征学习能力的卷积神经网络开始应用到各个领域[10],许多结合深度卷积特征的CFTs 应运而生.2015 年,拥有更深的网络结构的VGGNet[11]提高了跟踪算法的准确率.Danelljan 等利用VGG-Net 提取的两层深度特征和原始彩色图像作为特征提出了学习连续卷积算子(learning continuous convolution operators,C-COT)[12]跟踪算法,所提取特征具有更强大特征表达能力、泛化能力和迁徙能力,虽然提升了精度,但是特征变得复杂从而影响了计算速度.ECO[13]在其基础上从模型尺度、样本集尺度和滤波器更新方法3 个方面进行改进,通过因式分解操作,对手工特征与深度特征的维度进行了不同级别的降维,减少了滤波器参数数量,使用高斯混合模型压缩训练样本集,有效提高了计算速度.很长一段时间在OTB2015上排名第一[14].随后,He 等学者使用加权的思想对ECO算法改进提出了(correlation filters with weighted convolution responses,CFWCR)[15]算法,此算法采用VGGNet 网络提取多尺度的卷积特征,对深、浅卷积特征的相关滤波响应结果进行加权处理,增加了算法的跟踪准确率.Goutam 等用ResNet50[16]替换ECO 中的VGG16[11],采用数据增强的方案,提出了利用深度卷积网络进行跟踪的(unveiling the power of deep tracking,UPDT)跟踪算法[17].CNN 体系结构设计的实际方法是基于离散卷积算子(例如,3×3 或5×5 卷积),这有效地施加了空间局部性和平移性等效性.然而,卷积这种操作缺乏对图像本身的全局理解,无法建模特征之间的依赖关系,从而不能充分地利用上下文信息[24].近年来,计算机视觉中的自注意力得到了快速的发展,并在图像生成和超分辨率领域颇具发展潜力[18-19].自注意力能够自适应的聚焦不同的区域,提取特征的长距离表示能力强,使得模型更具可解释性.早阶段的研究,如SENet[26]、CBAM[27]表明,自我注意力机制可以作为卷积模块的增强.Prajit Ramachandran等学者提出了一种独立的局部自我注意模块设计,它可以完全取代ResNet 架构中的空间卷积[22].
从特征提取网络结构出发,该文提出了一种基于ResNet-ACmix 改进的ECO 算法RAECT(ResNet-ACmix for efficient convolution tracker).ACmix模块是卷积和自注意力混合模块,能够享受两者带来的好处,相对于纯卷积与纯自注意力模块又有最小的计算开销.实验表明,在保持跟踪高准确率的同时,采用ResNet-ACmix 特征提取网络的RAECT算法模型在复杂度和计算量上有所降低,这为轻量化目标跟踪算法模型提供了参考.
ECO算法具有高效卷积特性,是以提高时间效率和空间效率为出发点的一种对C-COT 算法优化的目标跟踪算法.该算法从模型尺度、训练集尺度和滤波器更新频率3个角度考虑,采用了PCA降维、高斯混合模型和间隔帧更新滤波器的策略,实现了滤波器数量减少、训练样本集数量减少和滤波器更新频率的减少,提高了算法的跟踪性能.
ECO算法采用插值方法将搜索区域的多分辨率特征x进行如式(1)所示的运算转换到连续空间域:
ECO算法在C-COT算法的基础上,采用主成分分析法(principal component analysis,PCA)对其优化,计算新的响应得分为:
式中,f为通道d 的相关滤波核,*表示卷积运算,P表示主成分分析法D 行C 列的投影矩阵,SP,f{xd}表示响应得分.使用高斯混合模型(Gaussian mixture mode,GMM)方法压缩训练集,并对卷积响应得分与高斯标签的误差取L2范数,式(3)表示构造的损失函数:
式中,M为训练样本,μm和πm表示训练样本的均值和权重,SP,f{μm}表示训练样本与当前相关滤波核f的卷积响应得分,y0表示训练样本的高斯标签,ω是f的惩罚项.一般地,P在初始帧确定保持不变,式(3)每6帧使用共轭梯度更新.
1.2.1 卷积和注意力
卷积运算是一种有效的提取图像特征的方法.卷积运算是通过一个卷积核,以固定步长在输入图像上滑动,计算得到图像的卷积特征图.卷积核的深度应与图像的深度相同,卷积核的个数决定了卷积特征图的深度.卷积运算的过程如图1、图2所示.
图1 单通道图像的卷积运算过程:卷积核大小为3 × 3,个数为1,padding =0,stride =1
图2 多通道图像的卷积运算过程:卷积核大小为3 × 3,个数为3,padding =0,stride =1
自注意力是注意力机制的一种,同样包括Query、Key和Value 3个要素.在视觉应用中,自注意力模块通过对图像本身的计算,统计图像的全局信息,来确定要关注的部分,相对于卷积来说,自注意力拥有更广阔的感受野.自注意力特征的提取过程如图3所示.
图3 自注意力特征图计算过程
1.2.2 ACmix模块
深度卷积网络基于离散卷积算子移位聚合对图像进行投影,这些卷积算子权重在整个特征图中共享,固有特质为图像处理带来了感应偏差,因此并不能很好的建模图像内容和特征的长期依赖关系,而自注意力模块基于输入特征的上下文应用加权平均操作,更加擅长捕捉数据或特征的内部相关性.针对这个问题Pan Xuran,等学者首先证明了k × k卷积可以分解为k2个1 ×1卷积然后进行移位求和计算,并将自注意力模块中的查询、键和值视为多个1 × 1卷积,然后计算注意权重和值的聚合.如图4根据两个模块操作之间的强联系,提出了一种卷积与自注意力混合(ACmix)模块,该模块享受两个模块的好处,并有效避免了两次昂贵的投影操作[25].
图4 ACmix混合模型图示
1.2.3 ResNet-ACmix网络
ACmix的设计是一个自我注意与卷积融合模块,可以代替ConvNet中的标准卷积.在这里,使用集成了ACmix块的ResNet 体系结构,网络结构见表1.
表1 ResNet-ACmix50网络的详细结构
该文提出一种应用ResNet-ACmix网络提取混合特征对ECO 进行改进的目标跟踪算法RAECT,该算法主要由两大模块组成:特征提取模块、目标定位和滤波器更新模块.RAECT跟踪算法框架图如图5所示.特征提取模块对视频中的每一帧图像提取手工特征和卷积特征.为验证所提RAECT算法和原ECO算法在采用不同深度特征下的跟踪性能差异,故保持和ECO 算法一致的手工特征、相关计算过程以及滤波器更新方式.RAECT算法将ResNet-ACmix 网络提取的第一层卷积特征和res4提取的混合特征作为用于进行相关滤波运算的深度特征,在完成特征提取后,再由目标定位模块和滤波器更新模块实现整个视频的跟踪过程.
图5 RAECT跟踪算法框架图
RAECT跟踪算法步骤如下:
(1)读取视频的每一帧图像,根据视频的第一帧图像及给定目标位置确定搜索区域,裁剪子训练样本.
(2)初始化参数:降维矩阵P,相关滤波核f,高斯标签yc,余弦窗.
(3)利用ResNet-ACmix特征提取网络对裁剪的子训练样本提取特征,得到图像的深层和浅层特征,同时对子训练样本提取手工特征.之后将特征进行加窗、插值处理得到连续域特征J{x}.
(4)使用J{x}初始化训练集GMM产生第一组训练集.
(5)根据训练集GMM更新相关滤波核f的参数,并保存相关滤波核信息.
(6)读取视频的下一帧,同步骤(3)处理,得到新的J{x}.
(7)使用傅里叶变化将J{x}和当前相关滤波核f 转化到频域进行卷积计算,得到响应分数SP,f{μm},找到图中最高响应得分的位置,将其作为当前帧中目标位置进行保存.
(8)将上步得到的目标信息在当前帧中裁剪出子训练样本.
(9)将子训练样本的J{x}纳入训练集,并使用GMM更新训练集.
(10)判断是否更新滤波器,如需更新,执行步骤(5)的操作.
(11)对跟踪是否完成进行判断,如没有,执行步骤(6);如跟踪完成,输出目标信息,保存结果.
该文实验代码运行环境均为python3.6,深度学习框架为pytorch.所做实验在Google Colab平台进行,显存为16GB.所做实验在操作系统为64位的windows10系统上进行,显存为16GB.
(1)网络训练参数设置见表2.
表2 超参数值
(2)RAECT算法参数设置为下:采用ResNet- ACmix网络来提取深度特征,选择网络的第一卷积层和res4 的输出作为提取的浅层和深层特征,其余参数和原ECO算法保持一致.
3.3.1 特征提取网络参数量和计算量分析比较
对比VGG-16、ResNet50 网络与ResNet-ACmix50网络的参数量和计算量,以此来验证该文所提RAECT算法采用的特征提取网络具有轻量性.表3为统计的各网络参数量和计算量.表3中第1列表示ECO 算法在特征提取过程采用的网络模型,第2列表示网络的参数量,第3列表示网络的计算量.输入图像采用224 ×224像素的三通道彩色图像,分析可得ResNet-ACmix50的参数量为17.48Mbit,少于VGG-16的139.36Mbit和ResNet50的25.56Mbit.ResNet-ACmix50 的计算量为3.16GFLOPs 也少于VGG-16 的15.62GFLOPs和ResNet50的3.9GFLOPs.
表3 不同网络结构的参数量与计算量
3.3.2 网络有无预训练过程对结果的影响
通过对特征提取网络有无预训练过程进行实验,来比较无预训练的RAECT-NP 算法和有预训练的RAECT 算法在整个跟踪过程中的效果.特征网络训练数据集为imagenet-mini,训练超参数见表2.表4表示有无预训练的算法在数据集VOT2016 上的跟踪结果.RAECT 跟踪算法的准确率0.537 高于RAECT-NP 跟踪算法的0.534.鲁棒值0.331 低于RAECT-NP 算法的0.429.平均重叠期望(Expected average overlap,EAO)0.296高于RAECT-NP算法的0.24.实验结果表明,采用有预训练网络的RAECT 算法在目标跟踪的过程中有更好的表现.
表4 有无预训练过程在VOT2016的跟踪结果
3.3.3 特征可视化分析
为了研究该文所提RAECT算法在特征的表征能力并分析、选取有效的目标特征,将ResNet-ACmix50 特征提取网络提取的浅层特征和深层特征进行可视化输出,图6为ResNet-ACmix50特征提取网络可视化输出的imagenet-mini数据集中小鸟图像的特征图.结果表明,浅层特征注重图像的纹理,包含了更多的位置、细节信息,深层特征更注重图像的语义信息,对细节的感知能力比较差.目标跟踪算法利用用浅层的纹理信息进行位置匹配,同时利用高级语义信息适应目标状态的改变,因此该文采用第一层卷积输出特征和res4 提取的特征来完成目标位置相关匹配和训练更新滤波器.
图6 ResNet-ACmix50网络提取特征的可视化显示
3.3.4 跟踪速度分析
该文在VOT2016数据集上对比RAECT算法与ECO-ResNet50、ECO-VGG16算法,来验证RAECT算法时间性能上的提升.表5为各算法的运行速度,算法的运行速度用FPS 来表示,RAECT算法的速度为5.87FPS,相对于ECO-ResNet50 的速度提升了31%,相对于ECO-VGG16的速度提升了74.7%.结果表明,采用ResNet-ACmix作为特征提取网络的RAECT算法相比于采用ResNet50、VGG16 作为特征提取网络的ECO算法在速度上有明显的优势.
表5 采用不同特征提取网络的ECO算法在VOT2016上的跟踪速度对比
3.3.5 跟踪性能对比
为了验证RAECT跟踪算法的有效性,该文将RAECT算法与主流相关滤波算法在VOT2016和OTB50数据集上进行对比.对比的主流算法包括核相关滤波(kernel correlation filter,KCF)算法、基于线性核的对偶的相关滤波器(dual correlation filter,DCF)算法等算法.
(1)算法在数据集VOT2016 的跟踪结果比较.RAECT 算法与主流相关滤波算法在VOT2016的跟踪结果见表6.RAECT算法跟踪准确率为0.537,鲁棒值为0.331 以及EAO 为0.296,相对其他相关滤波算法具有更好的跟踪性能.实验结果表示,该文所提RAECT算法有较高的跟踪准确率,相比其他算法有最高的EAO综合评价指标,表明了RAECT 算法具有高准确性和高稳定性.
表6 算法在VOT2016上的跟踪结果对比
(2)算法在数据集OTB50的跟踪结果比较.RAECT算法与主流相关滤波算法在公开数据集OTB50上进行跟踪对比,评价方式选用一次跟踪评估OPE(one-pass evaluation).跟踪结果如图7所示.RAECT算法跟踪准确率和成功率稍低于ECO,高于实验中其他的目标跟踪算法.表明RAECT算法具有较高准确率和跟踪成功率.
图7 算法在OTB50数据集上的跟踪比较结果
该文中提出的算法采用一种轻量级的网络ResNet-ACmix作为主干特征提取网络,减小了目标跟踪算法特征提取网络的参数量和计算量,提高了目标跟踪算法的时间性能,同时也保持了跟踪的高准确率.随着深度学习的发展,轻量级网络的研究也取得了很大的进展,该论文为轻量级网络在目标跟踪算法中的应用提供了参考.