计算机视觉之跟踪算法——相关滤波器Correlation Filter


ASEF相关滤波器:

Average of Synthetic Exact Filters
David S. Bolme, Bruce A. Draper, J. Ross Beveridge
CVPR, 2009

相关滤波器可以用于物体定位。相关滤波器算法的思想是学习一个滤波器 h ,然后和图像 fi 进行卷积操作

gi=fih
得到相关信息图,图中值最大的点就是物体的位置。

训练数据中要提供图片对应的相关图 gi ,怎么生成呢?最粗暴的办法就是把目标的中心位置设成1,其他为0。本文中作者将 g 看作是以目标位置 (xi,yi) 为中心的二维高斯分布:

gi(x,y)=e(xxi)2+(yyi)2σ2

那么现在有了一组图片 fi 及相关图 gi ,怎么学习 h 呢?

我们知道,空间上的卷积操作经过傅里叶变换在频域上就变成按元素相乘的操作(关于卷积)。所以对上式左右两边进行离散傅里叶变换DFT:

G(ω,ν)=F(ω,ν)H(ω,ν)

这里不知道为什么是H的共轭???????
所以对每幅图片就有:
Hi(ω,ν)=Gi(ω,ν)Fi(ω,ν)

这里的除也是按元素相除。
ASEF最终得到的滤波器为
H(ω,ν)=1Ni=1NHi(ω,ν)=1NiGiFi(1)

h(x,y)=1Ni=1Nhi(x,y)


MOSSE相关滤波器:

Visual objecting tracking using adaptive correlation filters
David S. Bolme, J. Ross Beveridge, Bruce A. Draper, Yui Man Lui
CVPR, 2010

这篇文章也出自ASEF的作者之手。本文作者针对的问题是目标跟踪,并且构造滤波器的方法和上文有所差别。
对一幅图片,仍然有:

Hi(ω,ν)=Gi(ω,ν)Fi(ω,ν)

但是最终的滤波器不是采用平均,而是通过最小化误差平方和:
H=minHi|FiHGi|2

怎么求解这个最优化问题? H 的每个元素都是独立的,所以可以单独求解:
Hων=minHωνi|FiωνHωνGiων|2

这个误差函数是凸函数,所以有一个最小值,那么可以令:

Hωνi|FiωνHωνGiων|2=0

于是:
Hωνi(FiωνHωνGiων)(FiωνHωνGiων)=0

展开后得到:
HωνiFiωνFiωνHωνHωνFiωνGiωνHωνFiωνGiωνHων+GiωνGiων=0

iFiωνFiωνHωνFiωνGiων=0

Hων=iFiωνGiωνiFiωνFiων

于是有
H=iFiGiiFiFi

H=iGiFiiFiFi(2)

上式用于在处理一个视频时对滤波器进行初始化,具体做法是对首帧图片,对跟踪窗口做仿射变换得到8个图片 fi ,并得到对应的相关图片 gi 。而在跟踪的时候,需要不断根据当前帧来调整滤波器,即在线更新

Hi=AiBi(3)

Ai=ηGiFi+(1η)Ai1

Bi=ηFiFi+(1η)Bi1

本文取 η=0.125 。训练和测试过程都要进行滤波器初始化和在线更新。

那么ASEF是否可以用在跟踪问题上呢?作者告诉你是可以滴。不同之处在于初始化使用的是公式(1),并且在线更新使用的是下面的公式:

Hi=ηGiFi+(1η)Hi1(4)

你可能感兴趣的:(计算机视觉)