相关滤波目标跟踪算法鲁棒性提升研究
2022-07-09王录涛文成江
王 奇,王录涛,江 山,文成江
(成都信息工程大学 计算机学院,成都 610225)
0 引言
目标跟踪是一个只给予初始状态来评估一个目标在一段视频中轨迹位置的问题,在现实生活中有很多应用,比如汽车自动驾驶,军事上的反导系统等[1],但是这个问题十分复杂,因为在线学习目标外观模型时训练数据获得受到限制(仅有第一帧的目标信息)[2],现有的方法几乎都依赖特征表现来处理这个问题,而在深度特征广泛应用之前,手工特征(浅层特征)的特征表现是处理上述问题的主流方法[3],虽然手工特征在准确性上表现优秀,但其在复杂场景中的鲁棒性较差。随着深度神经网络(convolutional neural networks)CNN的发展,研究人员发现深度特征相较于浅层特征具有编码高层信息的能力,所以现今深度特征也被用于处理上述问题并且提升跟踪算法鲁棒性。
我们通过对本文基准算法ECO及ECO-HC(手工特征ECO算法)代码和结果的分析,在用同一环境下运行具有各种挑战因素的数据集,采用深度特征的ECO并不比采用手工特征的ECO-HC效果好,原因可能是网络模型的深度不够并且没有选择适合特征表现的参数。如果我们能够在原有浅层特征和参数的基础上加入合适的深度网络和参数,那么算法的鲁棒性能获得一定提升,这是本文所要探讨的内容。
1 研究现状
目标跟踪算法现今大致可分为三类,基于生成式模型的方法,基于判别式模型的方法和基于深度学习的方法[4]。生成式模型提取目标特征构建表观模型,在图像中搜索与模型最匹配的区域作为跟踪结果;与生成式模型不同的是,判别式模型同时考虑了目标和背景信息。判别式模型将跟踪问题看做分类或者回归问题,目的是寻找一个判别函数,将目标从背景中分离出来,从而实现对目标的跟踪;基于深度学习的目标跟踪方法主要是利用深度特征强大的表征能力来实现跟踪。按照利用深度特征的方式,可分为基于预训练深度特征的跟踪和基于离线训练特征的跟踪。本文是相关滤波类的跟踪方法,是典型的基于回归判别模型的跟踪算法。
相关滤波类的跟踪算法已经发展到比较成熟的阶段,最初的MOSSE[5]的基本思想是:越是相似的两个目标相关值越大,也就是视频帧中与初始化目标越相似,得到的响应也就越大,MOSSE算法的跟踪效果不好,但是开辟了新的道路来研究目标跟踪;后来极为成功的C-COT[6]提出了将不同分辨率的特征图通过插值操作扩展到同一周期的连续空间域,再应用Hessian矩阵可以求得亚像素精度的目标位置,还解决了在连续空间域进行训练的问题,但是由于计算量增大,C-COT算法的运行速度十分缓慢;C-COT的后作,ECO旨在解决前身的速度慢的问题[1],在解决速度问题的同时兼顾提升了跟踪效果,ECO算法没有区别的使用浅层特征和深度特征,在复杂环境中不能稳定的跟踪目标;之后的UPDT[7]算法提出了区别的处理深度特征和浅层特征来提升跟踪效果,但是UPDT算法采用的网络模型深度不够,虽然在跟踪效果相比ECO有了提升,但是在复杂场景的跟踪鲁棒性未能完全领先[8-9];同年的MFT[10]算法采用了和UPDT类似的方法,并且引用了两个深度网络来提升跟踪效果,MFT和UPDT存在同样的问题,网络深度不够导致跟踪鲁棒性未能更进一步。怎样提高算法鲁棒性,这是目前目标跟踪领域研究的热点。
2 对比测试及改进方法
2.1 深度特征和浅层特征
目标跟踪中很重要的两个标准,即准确性(accuracy)和鲁棒性(robustness),准确性就是测量在跟踪过程中对目标定位的精度,鲁棒性则是跟踪器在挑战性场景中的故障恢复能力,换而言之,鲁棒性就是测量目标被准确定位的频率。在过往的目标跟踪发展中,浅度特征被认为在处理跟踪准确性上有很大作用,而深度特征则在鲁棒性上作用明显,这由它们的特性决定。
深度特征主要是CNN的高层特征[11],优点是包含高层语义,对旋转和变形等外观变化具有不变性,基本是任何时间任何空间都能找到目标,也就是上文提到的鲁棒性很好;但缺点也很明显,即空间分辨率低,对平移和尺度存在不变性,无法精确定位目标,会造成目标漂移和跟踪失败,即准确性很差[12]。
浅层特征主要是颜色特征(RGB,red-green-blue),方向梯度直方图(HOG,histogram of oriented gradient),颜色名(CN,color name),和CNN的底层特征。优点主要是包含纹理信息和颜色信息,空间分辨率高,适合高精度定位目标,即准确性很高;但是不变性很差,目标只要稍微形变就不能识别,尤其对旋转十分敏感,也就是鲁棒性很差。
图1是OTB-2015视频序列CarScale运行是的截图,我们选取的是几个代表性场景帧,93帧是目标在相对良好的背景下运动的状态,而161帧是在复杂场景运动的状态,190帧脱离复杂场景的状态。
图1 CarScale视频序列在场景中效果框图
对于图1,我们用更加直观的特征通道响应值图(由于各个特征分辨率不同,现在的算法都将不同分辨率插值处理,表现为不同的分辨率对应不同的通道,深层特征和浅层特征处于不同通道,可用Matlab提取作图)来反映深度特征(图2第一列)和浅层特征(图2第二列)的在此过程的受影响而产生的变化[13]。首先,图2(a)对应图1第93帧,图中目标还没有进入复杂背景的区域,深层特征最大波峰显著高于其余波峰,周围环境噪声虽然也产生影响,但不明显;而(b)图(也为93帧的时候)显示浅层特征波峰明显,周围几乎没有噪声影响;(c)图对应图1第161帧,当目标进入复杂背景区域后,深层特征周围噪声明显增加,但是目标产生的波峰依旧十分明显;(d)(也为161帧)图显示此时浅层特征明显受环境干扰,目标波峰周围出现明显的噪声;(e)图(对应图1第190帧)显示目标脱离背景复杂区域后,从坐标轴数据看深层特征波峰恢复并且超越之前的水平,(f)图对应浅层特征峰值则并未恢复到之前水平。对此我们得出结论,浅层特征在背景环境复杂时受影响较大,深层特征受影响则相对较小;深层特征恢复能力较强,但是浅层特征在无明显干扰的环境下精度较高,即深层特征鲁棒性较高(稳健性),浅层特征准确性较高[14]。
图2 特征通道响应值对比图
图3(a)是视频序列Basketball的第一帧图像,我们把它作为原始图像来进行分析,(b)图对应HOG特征图,HOG特征对应的特征图纹理比较明显,图像中目标的轮廓大致清晰,这也对应了上面我们提到的浅层特征空间分辨率高,包含纹理信息和颜色信息,对目标定位的精度高,准确性好。(c)图对应的是CNN的高层特征图,在第一行单位已经到了千分之一的级别,目标在图中已经凝聚成块状,轮廓不明显,但是它将目标的范围缩小了,虽然分辨率不高,但是不易受环境干扰而且层次更深,这是鲁棒性高的表现。(d)图对应的是CNN的底层特征,与CNN的高层特征相比,底层特征图纹理更加明显,目标反映成点状,精度更高;但是和HOG特征相比,其没有HOG特征在处理光照,纹理信息方面优秀[15]。
图3 原始图和ECO特征可视化图
2.2 具体方法
ECO采用了VGGNet[16]网络模型,虽然取得了不错的跟踪效果,但是由于深度的限制无法对复杂的场景进行更进一步的分析,所以在面对一些复杂的场景时会出现效果变差或者丢失目标的情况,也即鲁棒性(稳健性)不够。对于此问题我们首先想到了层次更深的网络模型ResNet-50[17]和ResNet-101[17]。表1显示3个网络模型各自的层数和在官方验证错误率。
表1 3个网络模型对比表
ECO之后的跟踪算法普遍都采用了层次更深的ResNet-50网络模型来提升跟踪效果,我们则测试了更深层次的ResNet-101网络模型,当我们单纯把ResNet-101应用到ECO算法上时发现效果不佳甚至不如之前的表现,图4是单纯将不同网络(ResNet-50,ResNet-101)应用到算法中的效果图(图4、图5都采用目标跟踪基准数据库OTB-2015的SRE指标来做验证,SRE是空间鲁棒性评估,满足我们鲁棒性评估的要求,我们选用的视频序列都是第三章中OTB-2015满足4种挑战的视频序列)。
图4 只修改两种网络效果图
图5 修改σ后和之前对比图
表2单纯对比更改网络和参数在OTB-2015中的AUC(area under curve)分值(AUC为成功率图的曲线下面积,分值越高效果越好),它证实了单纯修改网络和单独修改参数σ无法提高跟踪效果,必须从以上两个方面进行改进。
表2 各种修改后测试的AUC分值
表3 各种修改后测试的AUC分值
我们将原本的σ由单个参数修改为一个参数集,这个参数集既适宜深度特征发挥作用也能够使原本的浅层特征发挥作用。
变换为:
计算过程中在利用手工特征时,会调用σ数组的第二个元素;在运用深度特征时,会调用σ2数组的第一个元素,达到最好的鲁棒性效果。
ECO采用高斯函数中的高斯混合模型(GMM),这也是我们修改参数σ所起作用的地方。单高斯模型中,一维数据:
(1)
样本多维时,∑为协方差,u为数据均值,D为数据维度,σ在参与了协方差的计算,用来给定正负样本比例:
(2)
混合模型中:
(3)
在此参数θ由每个子模型的期望、方差(或协方差)、在混合模型中发生的概率组成,我们修改的参数σ表示为协方差。在ECO中则是表现在对式(4)y值的影响,即对特征通道响应值的影响,式(4)中σ是我们修改的参数集,u∈[0,t)是目标估计的位置,y是以u为中心的高斯函数е(-(t-u)2/2σ2)的周期重复。
(4)
而y在ECO中参与期望E的运算。
(5)
式中,期望E是对联合样本的值分布的评估,Sf{X}是对目标检测的分值,Y是对样本的标记检测分值。W表示权重,fd表示多通道卷积滤波器,L表示高斯组件的数量。
3 运行结果对比及分析
基于目标跟踪基准数据库OTB-2015,采用SRE(空间鲁棒评估)的指标进行评测[18],由于验证算法鲁棒性的需要,我们选取Liquor,Dudek,Lemming这几个测试视频序列,这几个视频序列包含我们用于评测的4种挑战因素(背景杂波(BC),尺度变化(SV),光照变化(IV),低分辨率(LR))。我们选取的都是各个视频序列具有代表性的帧,它们可以很好的代表我们想测试的4种挑战因素。参与比较的3种算法分别是ECO,ECO-HC,我们改进的算法(命名为OURS),分别采用不同的曲线代表,即直线,虚线和点线,这可以很好的区分图中的3种算法,使比较结果更加清晰。ECO是我们的基准算法,ECO-HC使手工特征的ECO版本,和他们对比可以体现出我们改进算法在效果方面的提升。
由图6的几张效果评测图可以看出,在以上4种挑战因素的场景中,我们的算法始终能定位目标,与我们改进算法相对比的基准算法出现了不能稳定跟踪甚至丢失目标的情况,具体来说,3种算法的定位框清晰的显示,在上图所展示的挑战因素中,我们的改进算法的定位框始终能将目标大体包裹,而其他两种对比算法出现了包裹部分减小甚至完全未包裹目标,这在实际应用中就已经丢失了目标。在场景不太复杂的情况下,如图6第二行两幅图,虽然另外两种算法也可以对目标进行有效的跟踪,定位框也基本能包裹目标,但是我们改进的算法定位更加精准,表现在定位框能够完全的包裹目标。此定性分析说明我们改进的算法对比基准算法鲁棒性有所提升,在几种挑战因素的场景中比基准算法的跟踪效果和稳定性更好。
图6 算法定性效果评测
OTB-2015拥有100个视频序列,包含12个挑战因素[19],每个视频序列可以用于验证一个或者多个挑战因素。OTB-2015是目标跟踪领域应用广泛的基准数据库,几乎所有最新提出的算法都会放在该数据库上进行评测,评测结果会作为算法效果的重要参照,OTB-2015也是十分科学的平台,在该平台的评测数据基本能够反映一个算法的可行性,对此我们改进算法选择在OTB-2015标准数据库评测。图8在低分辨率,背景杂波,光照变化,尺度变化用成功率(Success plots)曲线作了对比,表4列举了除以上我们演示的挑战因素外OTB-2015中在各个挑战因素具有代表性的4个视频序列,这也是用于验证我们算法的一部分视频序列。
表4 各种挑战因素验证视频序列
图7是我们改进算法在OTB-2015中选取包括表4中验证序列的运行结果。
图7 算法定量分析效果评测
我们将数据以表格的形式展示(只对比OURS,ECO,ECO-HC),从表5我们可以更直观地看到,我们改进的算法在这4种挑战因素中表现比基准算法有所提高。
表5 实验结果定量分析表格
我们的方法在这几种挑战因素的鲁棒性测试中略优于ECO与ECO-HC,对此我们对这几种挑战因素[20]的视频序列分析发现:
1)低分辨率(LR)[19]的视频序列目标都比较小而且图像相对模糊,这种情况底层特征的作用就会被减弱,层次不够深的网络模型也会处理困难,但是我们的方法涉及的网络模型层次足够,这也是为什么我们的方法在评分上领先ECO-HC和ECO大约0.1的原因。
2)背景杂波(BC)[19]的视频序列大多都有相同物体的干扰或者图片的背景信息丰富,这会导致浅层特征在纹理,背景信息处理出现困难,但是深层特征可以很好的应对这种状况。在数据上,我们的方法领先ECO大约0.03分值,领先ECO-HC大约0.075。
3)测试光照变化(IV)[19]的视频序列基本都是图像光线较暗或者黑夜环境,我们对底层特征参数的应用对这种情况起到了作用,底层特征对光流信息比较敏感,但是对比ECO-HC我们还多了CNN的底层特征,这是我们改进算法优于ECO和ECO-HC的原因。
4)测试尺度变化(SV)[19]场景的视频序列大多有一个共同点,那就是目标会由远及近,尺寸会存在变化,这是深度特征和浅层特征共同起作用的地方,目标尺寸小的时候会很模糊,这就依赖于深度特征来实现定位目标,在目标尺寸变大的时候,浅层特征可以较好处理目标的边界和形状信息。所以在数据上我们的方法领先ECO大约0.02。
4 结束语
本文旨在提升跟踪算法的鲁棒性(稳健性)用以提升跟踪算法在复杂环境中跟踪目标的能力,同时我们对算法原有的准确性也有一定提升,我们不仅采用了目前深度较深的ResNet-101网络模型,而且也设置了适宜此网络模型的σ参数,我们还保持了ECO-HC原有的σ参数来延续浅层特征跟踪过程中对准确性所起的作用。我们的方法在OTB-2015基准数据库中效果相比原算法有所进步。深层次网络训练需要采用数据增强,数据增强可以在不采用巨大样本集的前提下提供深度网络更多的样本,通过翻转,平移等方法。在深层特征的选用上,更深层次的网络已经存在,如果运用ResNet-152或者更深层次的Inception-ResNetV2网络模型可能会取得更好的效果,即随着网络层次深度变化,跟踪算法或许会取得更加优秀的成果,但是随着网络模型深度的增加,跟踪算法的运行时间也会随之增加,这是因为深度越深的网络模型越需要大量的样本,而从大量样本中提取特征会增加运行时间。如何把运行速度提高以缩短运行时间,这是我们今后的研究要解决的问题。
在ECO算法中我们就发现传统的跟踪算法很多都是只在第一帧学习,然后将学习的结果在后面许多帧保持并利用,这种方式在复杂环境中很难保证跟踪质量[21]。如果在复杂的环境中除了目标还有与目标类型相似的物体,那么跟踪效果往往会很差甚至丢失目标。现在已有研究者提出了能够部分处理此问题的方法,但是效果还未在正式的平台展示,将他们的研究和我们的发现结合,我们大致得出结论,如果我们在第一帧学习并且逐帧采集背景信息不断向后面帧传播我们收集的信息或许对解决上述问题有所帮助[22-23],这也是我们今后进一步研究的另一个方向。