文献标识码: A
DOI:10.16157/j.issn.0258-7998.174811
中文引用格式: 马晓虹,尹向雷. 基于相关滤波器的目标跟踪方法综述[J].电子技术应用,2018,44(6):3-7,14.
英文引用格式: Ma Xiaohong,Yin Xianglei. Method of object tracking based on correlation filters:a survey[J]. Application of Elec-
tronic Technique,2018,44(6):3-7,14.
0 引言
视觉跟踪是计算机视觉中引人瞩目且快速发展的领域,主要用于获取运动目标的位置、姿态、轨迹等基本运动信息,是理解服务对象或对目标实施控制的前提和基础。其涉及许多具有挑战性的研究热点并常和其他计算机视觉问题结合出现,如导航制导、事件检测、行为识别、视频监控、自动驾驶、移动机器人等[1-4]。虽然跟踪方法取得了长足进展,但由于遮挡、目标的平面内/外旋转、快速运动、模糊、光照及变形等因素的存在使其仍然是非常具有挑战性的工作。
近年来,基于相关滤波器CF(Correlation Filter)的跟踪方法得到了极大关注[5-9]。CF最大的优点是计算效率高,这归结于其假设训练数据的循环结构,因为目标和候选区域能在频域进行表示并通过快速傅里叶变换(FFT)操作。Bolme[6]等首次将CF应用于跟踪提出MOSSE算法,其利用FFT的快速性使跟踪速度达到了600-700 fps。瑞典林雪平大学的Martin Danelljan在2016年ECCV上提出的相关滤波器跟踪算法C-COT[7]取得了VOT2016竞赛冠军,2017年其提出的改进算法ECO[8]在取得非常好的精度和鲁棒性的同时,显著提高运算速度至C-COT的6倍之多。
基于CF的跟踪算法如此优秀,已然成为研究热点。近年和相关滤波有关的论文层出不穷,很有必要对这些论文及相关滤波的发展等进行一个归纳和总结,以推动该方向的发展。文献[9]虽已做过综述并取得了一定效果,但有两点不足:(1)过多介绍现有几种方法的具体细节,没有对更多文献进行对比分析;(2)缺乏对基于相关滤波器跟踪方法的分类对比分析。基于此,本文的不同之处和特点在于:(1)分析更多更新的文献,注重分析各文献的特点及渊源;(2)对各文献根据CF跟踪方法的思路进行归类分析,让读者更加清楚各文献的初衷及问题所在。
本文首先给出了目标跟踪和CF的基本知识,之后对CF方法在朴素阶段、循环结构和核技巧、多特征通道、与深度特征的结合、尺度研究、边界效应以及其他信息的利用方面进行了详述,最后对基于CF方法的未来发展方向提出了几点看法。
1 目标跟踪及CF跟踪思想
目标跟踪可以被定义为:在第一帧中给出一个兴趣目标(常用方框表示)前提下,在后续的每一帧中对该目标定位的任务。一般地,目标跟踪可以分为生成式方法(Generative Method)、判别式方法(Discriminative Method)。生成方法的思路是,先提取目标特征学习出代表目标的外观模型,通过它搜索图像区域进行模式匹配,在图像中找到和模型最匹配的区域,即为目标。判别式跟踪方法将视觉目标跟踪视为一个二分类问题,其基本思路是寻求跟踪目标与背景间的决策边界,这类方法也常被称为基于检测的跟踪方法(Tracking by Detection)。判别式方法由于同时用到了前景和背景信息,近年显示出非常出色的跟踪性能。目前所有基于相关滤波器的算法都在判别式跟踪方法的框架下建立的。
本文主要对和相关滤波器有关的文献进行综述,想对视觉跟踪有全面了解的读者可以参考文献[9-12]。
和其他判别式方法类似,CF也需要一组训练样本以学习一个滤波器。在跟踪中,第一帧中的图像块是唯一可用的样本,跟踪器常从离该图像块较近的区域收集正例,而从离其较远的区域收集负例,计算复杂度会随着训练块数目的增加而快速上升。而基于CF的跟踪器通过循环移位收集稠密样本,这种移位近似为平移,从而构建了一个具有很好特性的循环矩阵。
CF首先通过最小化岭回归问题,并依据MOSSE滤波原理[6]寻找一个滤波器,然后以此滤波器和下一帧中的各搜索窗进行相关运算,其中输出值最大的搜索窗即为目标最佳位置,最后在下一帧中以线性插值方法对模型参数进行更新,以此循环操作,直至序列最后一帧。
2 基于CF跟踪的发展
2.1 CF方法的开创
CF在计算机视觉中最初被用于眼睛跟踪[13]和行人检测[14],由于需要大量训练数据,使得以往的CF在应用于跟踪时因速度太慢而无法使用。2010年,Bolme[6]等提出一种新型相关滤波器MOSSE(Minimum Output Sum of Squared Error),首次将CF应用于跟踪算法。该跟踪器框架建立在频域中,利用FFT的快速性使跟踪速度达到了600-700 fps,显著超过当时的先进算法(如表1所示),同时算法具有卓越性能,在CV界引起剧烈反响。
MOSSE的思想是,当初始化给定单帧后,其能产生一个稳定的相关滤波器,然后以自适应CF作为目标外观模型,通过卷积来跟踪。CF通过MOSSE算法显示出巨大潜力,从此CF跟踪算法得到瞩目,大量基于CF的跟踪算法相继出现。
2.2 循环结构和核技巧
基于检测的跟踪需要大量样本数据进行训练,这导致计算负担加重,和实时需求背道而驰。但限制样本数量又会牺牲算法性能。为了加快训练,此前基于CF的算法都采用稀疏采样策略,在每帧中,数个同目标大小一样的样本在目标临域内得到,样本之间很高的重叠率使得数据具有很大冗余,而如果采用下采样方法,会降低背景杂乱序列的跟踪性能。牛津大学的Joao F.Henriques提出样本之间潜在的结构信息并没有被有效利用,他发现[15],当有数千个平移样本时,数据矩阵是环状的,其依据循环矩阵的理论提出一种CSK(Circulant Structure Tracker)跟踪方法。CSK应用FFT达到非常快的学习和检测功能的Fourier分析思想(不同于迭代思想),以包括高斯和多项式等多个类型的核得到训练和检测的闭环解。该算法只通过简单几行代码就可以达到数百帧的运行速度,并且性能可媲美先进算法。
之后,Joao F.Henriques在CSK基础上提出一个新的核化相关滤波器KCF(Kernelized Correlation Filter)[16],同时,应用线性核提出一个快速多通道扩展的线性相关滤波器DCF(Dual Correlation Filter)。利用KCF的优点执行分类器的训练和候选样本的检测,再利用HOG特征达到精确、鲁棒且快速的跟踪效果。其精度和速度都超过了当时OTB50[17]上最好的Struck[18]算法。
这里要提到的一点是,文献[16]中虽然加了核技巧的KCF各属性的准确度都在DCF(没有核技巧)之上,但其平均精度仅提高了0.4%,而速度却降低了41%。Naiyan Wang等研究表明[19]当选择的特征为弱特征时,不同的观察模型确实影响着跟踪性能,然而,当选择的特征足够强时,不同模型间的性能基本没有差别(即使采用最简单的观察模型),即特征在跟踪中起着重要作用。因此对于核技巧的使用是一个开放的课题。
2.3 尺度估计研究
CF方法因使用FFT使得跟踪算法速度大大提高,但CF本身并不具备尺度估计能力。
文献[20]提出一种新的鲁棒尺度估计方法DSST(Discriminative Scale Space Tracker)。DSST使用HOG特征并在尺度金字塔表示基础上学习判别CF(MOSSE)。使用一维滤波器只估计尺度,二维滤波器只判断平移,三维滤波器穷举尺度空间以定位目标。其将平移滤波器和尺度估计分开学习使得该算法可以和任何不具备尺度估计的跟踪方法合作达到尺度估计,具有通用性。
文献[21]在KCF方法的基础上提出一种新型多特征集成尺度自适应核化相关滤波器跟踪器SAMF(Scale Adaptive with Multiple Features tracker)。算法以不同尺度对目标采样,并调整样本大小为一个固定尺寸以和每帧中的倾斜模型进行比较。同时算法采用一个多特征集成策略,该策略使用原始像素、梯度特征HOG以及颜色特征CN以进一步增强跟踪器处理复杂场景的能力。
对比DSST和SAMF方法可知[22],前者将跟踪分成两个问题看待,可以采用不同的方法和特征更加灵活,但需要额外训练一个滤波器,每帧尺度检测需要采样33个图像块,分别计算特征,加窗,FFT,尺度滤波器还要额外训练;SAMF只需要一个滤波器,不需要额外训练和存储,每个尺度检测就一次提特征和FFT,但在图像块较大时计算量比DSST高。
文献[23]提出一种自适应外观且不易漂移的在线跟踪器LCT(Long-term Correlation Tracking)。其将跟踪任务分解为平移估计和尺度估计两部分,其尺度估计应用HOG特征构建一个多尺度目标金字塔并穷尽搜索最优尺度。
常规金字塔尺度估计方法不得不包含几十层塔,且必须在跟踪前进行尺度估计。文献[24]提出一种基于快速特征金字塔(Dollar的图像尺度定律)的尺度估计方法。这应是首次利用真正的最小数量层特征金字塔并避免了在搜索合适尺度前构建金字塔,且优化的尺度估计具有通用性,可被用于任何不含尺度估计的跟踪器中。
为解决旋转运动跟踪问题,文献[25]提出RAJSSC(Rotation Adaptive Joint Scale-Spatial Correlation Tracking)跟踪器算法。主要做了两方面内容:(1)其以JSSC(Joint Scale-Spatial Correlation Tracking)滤波器进行尺度估计;(2)将笛卡尔坐标(Cartesian coordinator)变换成对数极坐标(Log-Polar coordinator)进行旋转估计。
文献[5]在KCF框架基础上提出一种快速可伸缩核相关滤波器sKCF(scalable Kernalized Correlation Filter)。由于目标的方框表示不能匹配目标的确切结构,引入一个关键点模型进行尺度估计,该尺度估计具有独立性,可集成到任何多项式以及线性CF中。
2.4 多特征通道思想
起初,CF方法受限于单通道特征。而任何特征都具有自己的区分能力,在跟踪中常使用具有不同谱位置的特征互补合作,使用单核的相关滤波跟踪算法不能充分发挥不同特征的区分能力。CF框架后来扩展到多通道特征图[26-27],多通道CF使得高维特征应用以提高跟踪性能成为可能。比如,颜色特征CN(Color Name)在某种程度上对光测不敏感,同时保持辨别能力,当和亮度结合时颜色特征能提高跟踪性能。瑞典林雪平大学的Martin Danelljan以CN颜色特征扩展CSK为多通道颜色跟踪器[28]。文献[28]提出了一个低维自适应颜色属性扩展,其应用映射原理将计算机中的RGB颜色映射为11维颜色表示的概率(概率总和为1),将这11中颜色规范化为10维正交基子空间,最后得到颜色特征。
此后CF框架下的多通道特征结合方法广泛使用。Ming TANG等人在KCF算法的基础上提出一种多核跟踪器MKCF(Multi-Kernel Correlation Filter)[24],其能同时发挥多通道和多核作用。
利用HOG和CN具有的互补性质,文献[29]提出一种简单的跟踪器Staple(Sum of Template And Pixel-wise LEarners),其在岭回归框架(ridge regression framework)下将这两种具有补充特性的线索合并。和其他将多模型预测融合的方法不同,Staples在稠密平移搜索下合并两个模型的得分,这两个模型的一个关键特性是他们的得分在幅度和可靠性表示上相似,因此,预测具有更高可信度,取得了很好的实验效果。此后HOG+CN在近两年的跟踪算法中成为了手工特征标配,如文献[7-8]等。
2.5 与深度特征的结合
近年来,为提高跟踪器的鲁棒性能,许多特征被提出,如LBP、Haar-like、HOG、CN等,这些手工特征并非适应所有通用目标,因此常需要更复杂的学习技术来提高其表示能力。而深度学习技术不需要手工干预能从原始数据直接学习得到特征,由于具有强大的特征处理、表示学习性能,近期得到瞩目关注,大量论文对深度学习进行探索并取得重要进展,如图像分类、目标识别以及检测和分割、跟踪等。对于CF方法来说深度特征有着巨大吸引力。
随着深度CNNs的到来,网络的全连接层被用于图像表示。不同于目标分类,视觉跟踪的目的是精确及时的跟踪目标,而不是要确定目标的语义类别[30]。
文献[31]研究了卷积特征在DCF和SRDCF中的影响,结果显示,不同于图像分类,和在图像分类方面表现出优秀性能的深层特征比较,来自第一层的激活提供了更好的跟踪性能。对CF框架来说,关键的问题是如何将CNNs的多个层进行融合。文献[7]提出C-COT(Continuous Convolution Operator Tracker)跟踪器,其是一种在连续空间域学习一个判别式卷积算子的理论框架,该卷积算子在联合学习框架下融合多个具有不同空间分辨率的卷基层。
2.6 边界效应
这里不得不提CF方法对快速运动目标的跟踪效果不好,这主要由边界效应(Boundary Effets)引起的[32]。边界效应产生错误样本会造成分类器判别力不够强,对跟踪性能有严重影响,主要因为以下因素[33]:(1)从限定移位块学习有可能导致滤波器训练过拟合而对变形等泛化能力变差。(2)由移位产生的负例训练样本如果不加窗,则除了原始样本,其他产生的样本都是合成的,实际负例训练样本的缺乏会显著降低跟踪器对杂乱背景的鲁棒性能。(3)从学习过程中丢弃背景信息会降低跟踪器在遮挡下辨别目标的能力。
一种直观的处理方法是加余弦窗,如文献[6]为解决因FFT的循环结构引起的边界效应,首先通过log函数将像素值转换为对比度较轻的状况,再以余弦窗和图像相乘将边界附近像素值逐渐减为零。但余弦窗具有局限性,如果目标变小,余弦窗会将背景信息加入到目标信号中,如果目标变大,余弦窗会丢掉目标部分信息,文献[5]引入一个可以调节的高斯窗函数代替余弦窗,达到了很好的效果。
在检测阶段,相关滤波器训练的图像块和检测的图像块大小必须一致,对于固定的检测块,如果目标移到了边界附近,加余弦窗后部分目标像素会丢失,使检测响应受到影响。如果目标大部分或者完全移出边界,则会导致检测失败。如果采用更大区域采集训练样本的措施不但能显著降低边界效应,而且更多数量的背景块可用于滤波器学习[32-33]。文献[33]提出基于灰度特征MOSSE的CFLB(Correlation Filters with Limited Boundaries)方法,采用更大的检测和更新图像块,训练作用域比较小的相关滤波器,对充滤波器边缘直接用0填充,应用ADMM(Alternating Direction Method of Multipliers)确保正确的滤波器大小。CFLB的不足是在每次ADMM迭代时空域和频域就有一次转换,这导致计算复杂度变大。
不同于CFLB,文献[32]提出了空间正则化判别相关滤波器SRDCF(Spatially Regularized Discriminative Correlation Filters)来进行跟踪,主要思路是既然边界效应发生在边界附近,那就忽略所有移位样本的边界部分像素,滤波器系数从中心到边缘平滑过渡到零。其学习过程中引入一个空间正则化成分,根据空间位置用其对相关滤波器的系数进行惩罚,SRDCF框架允许相关滤波器在不影响正例的情况下对相当数量的负例进行学习。虽然SRDCF方法在普通桌面电脑的MATLAB上运行的速率只有5帧/秒,但其精度较高并能处理快速移动的目标,且该方法获得了当年OpenCV跟踪挑战赛的冠军。SRDCF的主要不足是,正则化目标函数即便是在傅氏域中也会使优化难度加大,再者,为得到正则化权值,大量参数必须谨慎调节,否则会导致跟踪性能恶化。
为利用实际负例训练样本以符合实际,文献[34]提出BACF(Background-Aware Correlation Filters)方法,为实时目标跟踪学习背景信息。和常规CF跟踪器不同,BACF从背景中稠密抽取的实际负例训练样本进行学习,并以ADMM(Alternating Direction Method of Multipliers)方法在多通道特征(如HOG)上学习滤波器。该算法在PC上的运行速度达到了35 fps,精度比SRDCF高,且速度是其10倍。和C-COT精度相当,但速度是C-COT的100倍,在某些特殊序列上可以达到C-COT的400倍。
2.7 其他信息的利用
除过上述常见问题及处理方式外,为提高CF方法的性能,广大学者也从其他信息的利用方面进行了探索使基于CF方法的性能得到了进一步的提升。主要包括:
(1)上下文的利用。文献[35]提出STC(Spatio-Temporal Context)跟踪算法,在目标框周围使用一个较大的框以包括目标周围的背景信息,利用稠密的上下文信息达到快速鲁棒的跟踪效果(350 fps in Matlab)。该方法一方面包括目标和相邻背景的上下文具有判别模型特征,另一方面,目标和背景是一个整体,体现了生成方法的优点。
(2)长短时记忆跟踪。为应对跟踪过程中的目标外观变化,文献[36]提出一种跟踪器MUSTer(MUlti-Store Tracker)。其包含短时和长时两种记忆存储以配合处理图像输入和目标跟踪,其在短期存储和短时跟踪中应用高效的ICF(Intergrated Correlation Filter);作为补充,基于关键点匹配跟踪以及RANSAC估计形成的长时部分能影响长时记忆并为输出提供附加信息;另外,在跟踪过程中以遗忘曲线对记忆-遗忘循环进行建模并保留有用特征。
(3)空间结构信息的利用。文献[37]提出将目标分成5个部分,对各部分分别运行一个独立的KCF跟踪器并输出一个置信图(Confidence Map)以联合定位目标。然后多个置信图合并成一个置信图作为一个整体应用于贝叶斯推理框架,推理候选目标以最大后验概率作为跟踪结果。针对遮挡及鲁棒跟踪文献[38]提出一种SCF(Structural Correlation Filter)跟踪器。其首先将目标划分为一组块,每个块关联一个CF,对所有块的参数结合学习;在跟踪过程中,每部分的CF有一个响应图(response map),通过搜索响应图中的最大值能协助预测块的状态(位置);然后,目标的位置通过所有块的权值化平移平均来估计。
3 总结及展望
视觉跟踪对算法的要求是具有精确性、鲁棒性、通用性以及实时性。为此,除了从特征学习、外观表示、高效搜索以及更新策略等方面研究外,笔者认为从以下几个方向切入有助于提高算法性能。
(1)CF最大缺点是对快速变形和快速运动的目标跟踪性能较差,影响这方面的因素主要是边界效应,边界效应的有效解决也是一个切入点。
(2)CF有严格的移位假设,这种假设常常不符合实际场景。如在能放宽这种假设的同时处理好相关滤波器的要求,将使跟踪更符合实际应用。
(3)CF方法在精度及鲁棒性提高的同时,常常因为模型复杂等原因使得速度严重降低,这不符合跟踪的实时要求。这可从降低模型复杂度以及优化学习及更新机制方面入手解决。
(4)目前提到的很多CF算法,也包括VOT竞赛,都是针对短期跟踪问题。但在实际应用场合,我们希望达到长期跟踪目的,但除了文献[39]外,很少见到此方面的研究工作。
目标跟踪是计算机视觉方向的一个热点,每年都有大量优秀论文出现,作者所作的综述也只是管中窥豹,疏漏不可避免,但如能起到抛砖引玉的目的,对读者和作者来说都是一种幸事。
参考文献
[1] 王梦来,李想,陈奇,等.基于CNN的监控视频事件检测[J].自动化学报,2016,42(6):892-903.
[2] 刘亚伟,李小民,杨森.基于CamShift融合局部特征匹配的无人机目标跟踪研究[J].电子技术应用,2016,42(9):6-9.
[3] 张铁,马琼雄.人机交互中的人体目标跟踪算法[J].上海交通大学学报,2015,49(8):1213-1219,1230.
[4] 周杨,胡桂明,黄东芳.基于边缘自适应的Mean Shift目标跟踪方法[J].电子技术应用,2017,43(5):138-142.
[5] MONTERO A S,Lang Jochen,LAGANIERE R.Scalable kernel correlation filter with sparse feature integration[C].InIEEE ICCV,2015.
[6] BOLME D S,BEVERIDGE J R,DRAPER B A,et al.Visual object tracking using adaptive correlation filters[C].In IEEE CVPR,2010.
[7] DANELLJAN M,ROBINSON A,KHAN F S,et al.Beyond correlation filters: learning continuous convolution operators for visual tracking[C].In IEEE ECCV,2016.
[8] DANELLJAN M,BHAT G,KHAN F S, et al.ECO:Efficient Convolution Operators for Tracking[C].In IEEE CVPR,2017.
[9] 魏全禄,老松杨,白亮.基于相关滤波器的视觉目标跟踪综述[J].计算机科学,2016,43(11):1-5,18.
[10] YILMAZ A,JAVED O,SHAH M.Object tracking:A survey[J].ACM Computing Surveys,2006,38(4).
[11] LI X,HU W,SHEN C,et al.A survey of appearance models in visual object tracking[C].ACM TIST,2013,4(4):58.
[12] SMEULDERS A W M,CHU D M,CUCCHIARA R,et al.Visual tracking: An experimental survey[J].IEEE TPAMI,2014,36(7):1442-1468.
[13] BOLME D S,DRAPER B A,BEVERIDGE J R.Average of synthetic exact filters[C].In CVPR,2009.
[14] BOLME D S,LUI Y M,DRAPER B A,et al.Simple real-time human detection using a single correlation filter[C].In PETS,2009.
[15] HENRIQUES J F,CASEIRO R,MARTINS P,et al.Exploiting the circulant structure of tracking-by-detection with kernels[C].In IEEE ECCV,2012.
[16] HENRIQUES J F,CASEIRO R,MARTINS P,et al.High-speed tracking with kernelized correlation filters[C].IEEE TPAMI,2015.
[17] WU Y,LIM J,YANG M H.Online object tracking:A benchmark[C].In IEEE CVPR,2013.
文献[18]-[43]略
作者信息:
马晓虹1,尹向雷2
(1.陕西理工大学 电工电子实验中心,陕西 汉中723000;2.陕西理工大学 电气工程学院,陕西 汉中723000)