Monday, February 15, 2010

Meanshift视觉跟踪方法笔记

重新看这篇文章,发现之前很多地方理解的不对。

Meanshift几乎是最高效稳定的一种视觉跟踪方法,由于它用直方图作为目标特征,也可以较好的处理目标物体无规则形变等现象。
理论基础:给定一些观测数据样本x_i,可以用kernel的方式估计x的概率分布f(x),这个概率分布与定义的kernel函数k(d)(这里的d代表观测样本与x的距离的标量)有关。可以得到f(x)x的导数的估计值与下面两个数值的乘积成正比:
1.    g(d)=k’(d)作为kernelx进行概率分布估计的结果f_g(x)
2.    g(d)作为权重,所有样本点的平均重心(mean)x的距离。

跟踪方法:
1. 用目标区域的颜色/灰度分布直方图作为目标特征;
2. Bhattacharyya系数作为两个直方图之间相似性的度量,这个系数的定义:d(p,q)=\sum sqrt(p(i)*q(i))。其中qp是两个直方图;
3. 在上面的条件下可以推导得出,在目标帧中寻找跟踪匹配的迭代过程,相当于从一个起始位置开始,以某一已知的权重系数迭代寻找(shift)起始位置的平均重心(mean),直到重心稳定不再变化;
4. 在跟踪过程中目标的尺度的变化在每一次迭代之后单独进行优化。

论文原文发表于2000 CVPR
Real-time tracking of non-rigid objects using mean shift

有关利用Meanshift进行跟踪的著名的Camshift算法,可以参见之前的这一篇文章:
http://tonysh-thu.blogspot.com/2007/04/camshift_03.html

1 comment: