Opencv中实际应用camshift算法的条件

来源:互联网 发布:淘宝卖家如何开通团购 编辑:程序博客网 时间:2024/05/18 01:25

在一个实际项目中采用Opencv的camshift算法进行跟踪是基于一定条件的,在实时获取的图像中,使用带红外滤镜片的红外相机得到视频,可以有效减少干扰,而且适合光线不充足的环境,但此时得到的图像近似于灰度图,而灰度图中的RGB是相等的,由RGB->HSV的公式:

max=max(R,G,B)
min=min(R,G,B)
if R = max, H = (G-B)/(max-min)
if G = max, H = 2 + (B-R)/(max-min)
if B = max, H = 4 + (R-G)/(max-min)

H = H * 60
if H < 0, H = H + 360

V=max(R,G,B)
S=(max-min)/max

可知,在灰度图条件下,H近似于0,而在canshift算法中,正是利用H分量进行跟踪,因此,在这种情况失出效用,需要另找其它算法来实现。