Camshift算法

CamShift算法,即"Continuously Apative Mean-Shift"算法,是一种运动跟踪算法。它是MeanShift算法的改进,称为连续自适应的MeanShift算法

Camshift算法的过程由下面步骤组成

(1)确定初始目标及其区域;

(2)计算出目标的色度(Hue)分量的直方图;

(3)利用直方图计算输入图像的反向投影图(后面做进一步的解释);

 (4)利用MeanShift算法在反向投影图中迭代收索,直到其收敛或达到最大迭代次数。并保存零次矩;

(5)从第(4)步中获得收索窗口的中心位置和计算出新的窗口大小,以此为参数,进入到下一幀的目标跟踪。(即跳转到第(2)步);


http://blog.sina.com.cn/s/blog_5d1476580101a57j.html

http://www.cnblogs.com/smhh/p/3604561.html


优点:算法的效率比较高,如果能利用多少特征做出来的统计直方图,我估计实验效果会更好。

缺点:

(1)只利用颜色统计做的跟踪,在背景有相似颜色时,会出现跟踪错误的情况。

(2)不能做多目标跟踪。

(3)由于它只在初始位置(而不是从每个像素点)开始迭代,所以有可能在初始位置错了后,收敛的位置还是原位置(即跟丢了后,可能会找不回来)。


对于OPENCV中的CAMSHIFT例子,是通过计算目标HSV空间下的HUE分量直方图,通过直方图反向投影得到目标像素的概率分布,然后通过调用CV库中的CAMSHIFT 算法,自动跟踪并调整目标窗口的中心位置与大小。

这个算法对于纯色物体在黑白背景下的跟踪效果是很好的,但是如果背景的颜色与目标相近,或者目标附近有与目标的色调相近的算法比较物体,则CAMSHIFT会自动将其包括在内,导致跟踪窗口扩大,甚至有时会将跟踪窗口扩大到整个视频框架。


Camshift算法原理及其Opencv实现

http://blog.csdn.net/leixiaohua1020/article/details/12236091


阅读更多
个人分类: 图形图像
上一篇Hog特征、Haar特征
下一篇压缩跟踪Compressive Tracking
想对作者说点什么? 我来说一句

CamShift算法详解

2009年07月10日 1.07MB 下载

Camshift目标跟踪matlab实现

2014年05月31日 18KB 下载

没有更多推荐了,返回首页

关闭
关闭