论文发布时间:2010年
全文概括
该文是我看的第一篇有关于相关过滤器(Correlation Filterrs)的目标追踪方法。
目标追踪需要从单帧图像中训练处健壮的 robust 过滤器,并随着目标图像的改变而动态适应【这里通过指数移动平均得到之前的“输出历史”】。
本文提出基于 MOSSE(Minimum Output Sum of Squared Error)的过滤器,其能提供稳定的相关过滤器,对光照、尺度、姿势和变形健壮。
检测结果是依据 peak-to-sidelobe 来选择的,所以跟踪能在目标被遮挡的情况下暂停和恢复(如果在相似的位置出现的话)。如果 PSR 小于一个阈值的话,则判定为对象被遮挡或跟踪失败。
为啥用FFT运算,卷积运算相当于在图片上每个位置的窗口遍历,所以FFT运算用以寻找最大相应。至于卷积操作所需要的“环形”结构,则是所需要余弦窗口等预处理的原因。
简介
视觉跟踪的作用在视频处理时比较常见,当在一帧中检测到目标时,我们可以使用跟踪来处理接下来的数帧。而且跟踪的计算复杂度比目标检测要低,所以可以用来解决部分漏检和检测窗口抖动等问题。
本文提出的是一个相对简单的跟踪策略(从而达到高帧率),其依据相关适应性过滤器建模,由卷积来表达跟踪结果。
Peak-to-Sidelobe Ratio(PSR),度量着相关峰值的强度,可以用来检测遮挡。
Correlation Filter Based Tracking
跟踪的目标初始化为第一帧的目标中心的小跟踪窗口(即需要给定跟踪的目标,以完成以后数帧的追踪)。目标的跟踪和目标状态的更新是同步进行的:通过在图片上(也可以是以上一帧的目标中心为中心的“子图片”)的滑动窗口应用相关过滤器,找到响应值最大的点,即为跟踪目标的中心;然后基于新中心进行目标在线更新(基于中心点的一个子区域(一般两倍于目标框)和高斯框(认为目标和过滤器的卷积结果为高斯分布)的卷积)。
为了让跟踪过程更快,应用相关过滤器的过程在频域内,即使用傅里叶变换(FFT),其使卷积运算变成元素乘法运算。
该方法的瓶颈在于 FFT 和 IFFT 运算,整个过程的时间复杂度为 O(PlogP),其中 P 是跟踪窗口的元素总数。
预处理
FFT卷积算法的问题在于,在图片和过滤器应用上时,会将其变成环装的拓扑结构,换句话说,将图片的左边和右边连起来,上面和下面连起来。这样的环形会对相关性输出产生影响,所以要对FFT算法的输入做处理。
预处理如下:(1)用 l o g log log函数处理图像,使其具有低对比度照明情况(2)像素值将正则化到零均值、一方差;(3)应用余弦窗到图片上,这会让图像边缘元素值趋于零。
MOSSE Filters
过滤器的输出可以是任意形状,在这里输出 g i g_i gi为二维高斯形状【 σ = 2.0 \sigma=2.0 σ=2.0】。定义输入图片 f f f,过滤器为 h h h,傅里叶函数为 F \mathcal{F} F,则输入的傅里叶为 F = F ( f ) F = \mathcal{F}(f) F=F(f),过滤器的傅里叶为 H = F ( h ) H=\mathcal{F}(h) H=F(h),则输出g的傅里叶为 G = F ⊙ H ∗ G = F \odot H^* G=F⊙H∗,其中 ⊙ \odot ⊙为元素乘积。依据过滤器和输入,得到输出,其中相应值最大的地方是输出的中心。
过滤器的生成过程为 H i ∗ = G i F i H^*_i = \frac{G_i}{F_i} Hi∗=FiGi 这是通过历史的输出的移动平均以及输入更新得到的。
基于 MOSSE Filters 的目标是
m
i
n
H
∗
∑
i
∣
F
i
⊙
H
∗
−
G
i
∣
2
\mathop{min}\limits_{H^*}\sum\limits_{i}|F_i\odot H^*-G_i|^2
H∗mini∑∣Fi⊙H∗−Gi∣2
这东西后面的论文不用,就不写了。
Regularization of ASEF
当只有一张图片时,过滤器的准确率为 100 % 100\% 100%。此时,过滤器的生成公式为: H i ∗ = G i F i = G i ⊙ F i ∗ F i ⊙ F i ∗ H^*_i = \frac{G_i}{F_i}=\frac{G_i \odot F^*_i}{F_i \odot F_i^*} Hi∗=FiGi=Fi⊙Fi∗Gi⊙Fi∗ 多张图片时,采用平均的形式: H ∗ = 1 N ∑ i G i ⊙ F i ∗ F i ⊙ F i ∗ H^*=\frac1N \sum\limits_{i}\frac{G_i \odot F^*_i}{F_i \odot F_i^*} H∗=N1i∑Fi⊙Fi∗Gi⊙Fi∗
Filterr Initialization and Online Updates
过滤器要快速适应对象的旋转、尺度变换、姿势等问题,所以采用移动平均是一个比较合适的选择:
H
i
∗
=
η
G
i
⊙
F
i
∗
F
i
⊙
F
i
∗
+
(
1
−
η
)
H
i
−
1
∗
H^*_i=\eta \frac{G_i \odot F^*_i}{F_i \odot F_i^*}+(1-\eta)H^*_{i-1}
Hi∗=ηFi⊙Fi∗Gi⊙Fi∗+(1−η)Hi−1∗
所以,对于 MOSSE 过滤器:
H
i
∗
=
A
i
B
i
H_i^*=\frac{A_i}{B_i}
Hi∗=BiAi
A
i
=
η
G
i
⊙
F
i
∗
+
(
1
−
η
)
A
i
−
1
A_i=\eta G_i \odot F_i^* + (1-\eta)A_{i-1}
Ai=ηGi⊙Fi∗+(1−η)Ai−1
B
i
=
η
F
i
⊙
F
i
∗
+
(
1
−
η
)
B
i
−
1
B_i=\eta F_i\odot F_i^*+(1-\eta)B_{i-1}
Bi=ηFi⊙Fi∗+(1−η)Bi−1 其中
η
\eta
η 是学习率,论文中设为 0.125.
PSR
PSR的定义为: g m a x − μ s σ s \frac{g_{max}-\mu_s}{\sigma_s} σsgmax−μs其中 g m a x g_{max} gmax是 相应窗口的峰值, μ s 、 σ s \mu_s、\sigma_s μs、σs是窗口中均值和标准差。
经过实验,发现 PSR 在 7.0 7.0 7.0左右时,对象丢失或者被遮挡;PSR 在 3.0 − 10.0 3.0-10.0 3.0−10.0时,跟踪质量基本无效。