引言
近些年来,目标追踪备受关注。一系列较鲁棒的追踪策略被提出,来适应目标外观的变化。最近的算法有增量目标追踪 IVT,鲁棒的基于目标分块的跟踪 Frag Track,甄别学习 GBDL 以及多实例学习。这些技术是有效的,但是技术实现上并不简单。他们通常包括复杂的外观模型和优化算法,并且,实时性也保证不了,适应不了 25帧或者30帧的摄像头。见下表:
本文提出一种更简单的追踪策略。通过自适应相关滤波器对目标外形进行建模,并通过卷积进行跟踪。创建滤波器有几种简单的方法,比如,从一帧图像中裁剪模板,为目标生成强大的峰值,但是也会对背景产生响应。因此,对于目标外观的变化,跟踪结果不是特别鲁棒,在一些具有挑战性的追踪场景上会失败。ASEF ,UMACE以及本文提出的 MOSSE产生的滤波器,对目标外观的改变更加鲁棒,同时,区分目标和背景的效果也更好。如下图所示:
相关工作
在20世纪八九十年代,相关滤波器有很多变体。比如综合判别函数 SDF,最小化方差综合判别函数 MVSDF,最小化平均相关能(MACE),最优全局滤波器(OTF),最小化平方差综合判别函数(MSESDF),这些滤波器的训练依赖目标物体的外观变化和一些硬约束,因此,总是产生相同高度的峰值。其中最好的是产生尖锐峰值和高的PSRS的MACE滤波器。
基于像MACE那类方法的包含硬约束的 SDF 滤波器,会造成失真容差问题。解决方法就是消除硬约束,而不是使滤波器产生较高的平均相关响应。这种新型的无约束的相关滤波器被称为最大化 MACH,这也使得 MACE 的进化版称为 UMACE。
之前的方法仅仅指定了一个峰值,而ASEF对每一帧训练图像都明确指定整个的相关输出。 ASEF 在眼部追踪和行人检测上表现良好。遗憾的是,在这两项研究中,ASEF 需要大量的训练样本图像,这使得跟踪速度非常慢。
方法
基于追踪的滤波器以物体的外观作为模型。在第一帧中选择一个追踪窗口,来初始化目标。从此时开始,追踪模块和滤波器训练模块同时开始工作。通过将滤波器与下一帧的搜索窗口关联起来,进行目标追踪。与相关输出中的最大值相对应的位置,就是下一帧目标的位置。
为了创建更快速的追踪器,相关性的计算是通过快速傅里叶变换(FFT),首先,先对输入的图像计算 2D 的傅里叶变换F = F(f)和滤波器H = F(h)。卷积定理指出,在傅里叶域,相关性可以表示成对应元素相乘。本文使用表示对应元素相乘。*表示共轭复数。相关性的任务可以被描述成:
先介绍在追踪窗口上的预处理方法是:首先,使用一个log函数对像素进行转换,有助于应对低对比度照明。这些像素值被归一化:均值为0,标准差为1。最后,将图像乘以一个余弦窗,逐渐将图像边缘的像素值减小为0。这还有一个好处就是,将更多的重点放在目标的中心位置。
然后介绍MOSSE滤波器:MOSSE 算法可以从较少的训练样本中,产生类似于ASEF的滤波器。首先,它需要一系列训练图像fi和训练输出gi,一般而言,gi可以取任何形状。在这种情况下,gi是从ground truth中生成的,因此,在训练图像的目标物体上,会产生一个非常紧凑的标准差为2的2D高斯尖峰。滤波器H的计算为:
为了找到一个滤波器来使训练图片输出接近于ground true,MOSSE来找一个H使得实际输出和ground true输出之间误差平方和最小。最小化问题如下:
对H的每个元素进行独立求导运算分别得出结果:
最后近似求解为:
UMACE是MOSSE的一个特殊形式,公式可以表达为:
ASEF公式为:
在追踪过程中,目标经常会改变外观,比如旋转、尺度、姿态、光照,甚至通过非刚性变换。利用平均值就是为了解决此类问题。比如,从第 i 帧图像中学习 ASEF 滤波器可以这样被计算;
MOSSE 滤波器:
其中,η 是学习率。这给最近的一些帧增加了一些权重,并且,之前的若干帧对滤波器的影响,是随着时间的推移呈指数式衰减。实际上,我们在实践中发现,η = 0.125,能让滤波器快速适应目标外观的变化,同时也能保证滤波器比较鲁棒。
最后介绍一种对峰值强度的一种简单测量方法:Peak to Sidelobe Ratio(PSR),为了计算PSR,将相关性输出g分为两部分:峰值和旁瓣,峰值即为最大值,旁瓣是峰值周围的11×11窗口内,除峰值以外的其余像素。然后将PSR定义为(g_max-μ_sl)/σ_sl ,其中g_max是峰值,而μ_sl和σ_sl是旁瓣的平均值和标准差。
这里文章有一段原话翻译后如下:“根据我们的经验,在正常跟踪条件下,用于UMACE,ASEF和MOSSE的PSR通常在20.0至60.0之间,这表示非常强的峰值。我们发现,当PSR降至7.0左右时,表明该对象被遮挡或跟踪失败。对于朴素的实施(最一般的方法),PSR的范围是3.0到10.0,对于预测轨道质量没有用。”
实验
在七个测试视频序列里对滤波器进行了测评, 这些视频都是灰度的,并且在光照,姿势和外观上都具有挑战性。存在摄像机运动,这增加了目标的不稳定运动。这七个序列分别是car4,car11,fish,sylv,davidin300,dudek和trellis70。
上图评估UMACE,ASEF和MOSSE滤波器的跟踪质量。将这些与朴素滤波器进行比较,该滤波器基于在线更新的平均预处理跟踪窗口。跟踪输出被手动标记为良好跟踪、偏离中心的跟踪或跟踪失败,其中绿色表示跟踪良好,黄色表示跟踪偏离中心,红色表示跟踪失败。黑线表示将PSR剪切到[0,20]范围,并表示视频每一帧的跟踪质量。
定性实验表明,包括朴素滤波器在内的所有滤波器,在对象存在比例变化,旋转以及光照变化时,都能够以很小的漂移定位到目标。但是当目标发生超出画面之外的大面积旋转时(非平面旋转),窗口大漂移和故障就会发生。当旋转目标时,跟踪点将移向目标边界,并且跟踪器最终处于大部分跟踪窗口被背景覆盖的状态。滤波器会适应这半个背景窗口,并且当目标旋转回正面姿势时移至新位置,否则它们可能会丢失目标,反而跟踪背景。下图举了一例有关davidin300序列的测试结果
总结
这是第一篇将Correlation filter引入Tracking领域内的文章,提出基于 MOSSE(Minimum Output Sum of Squared Error)的滤波器,其能提供稳定的相关滤波器,对光照、尺度、姿势和变形具有健壮性,同时实现极快的跟踪速度,在作者的实验中可以达到669FPS。当目标发生遮挡时,可以根据PSR值来判断目标跟踪是否失败来决定是否更新滤波器参数,当目标再次出现在视野中时,可以再次跟上目标。
这篇论文存在许多数学描述和公式推导,这一点想要读懂花费了大量时间;而且在全文结构上,我一开始认为有一点不太明白:在摘要中,是说ASEF、UMACE等滤波器很优秀,但需求不适用于跟踪,然后在正文中虽然也有提到说ASEF需要大量的训练图像,但是本文却引入正则化降低其数据要求影响,并且在后面UMACE,ASEF和MOSSE三个相关滤波的算法基本是一起出现,即使是在后面的对比实验中,也仅在dudek序列上,三个滤波器之间存在显着差异,显得MOSSE会更好一点,并且即使PSR,也只是说对于传统滤波器无效果,而不只是MOSSE专属。这一系列让我迷惑:这难道不是介绍MOSSE优点的论文吗?咋感觉是在看综述文章,然后在网上搜索为什么也看不到有人心存疑虑的博客,甚至怀疑过是不是我下的论文是草稿版,后面再对着论文看几遍,发现可能是我一开始想错了,并不一定得单讲一个提出来的算法比其他好在哪,该论文的贡献点就是在于作为第一篇将相关滤波引入目标跟踪的论文,并提出了MOSSE滤波器。