時(shí)書(shū)政 火箭軍士官學(xué)校
CamShift算法是基于連續(xù)圖像顏色動(dòng)態(tài)變化的概率分布獲得的一種有效的目標(biāo)跟蹤算法,具有魯棒性強(qiáng)和實(shí)時(shí)性好等優(yōu)點(diǎn)。它利用目標(biāo)的顏色特征在視頻圖像中找到運(yùn)動(dòng)目標(biāo)所在的位置和大小,在下一幀視頻圖像中,用運(yùn)動(dòng)目標(biāo)當(dāng)前的位置和大小初始化搜索窗口,重復(fù)這個(gè)過(guò)程就可以實(shí)現(xiàn)對(duì)目標(biāo)的連續(xù)跟蹤。當(dāng)追蹤有色目標(biāo)時(shí),CamShift算法從圖像的顏色直方圖獲得顏色概率分布。當(dāng)目標(biāo)隨時(shí)間運(yùn)動(dòng)時(shí),圖像的顏色概率分布也隨著變化,因此可以根據(jù)圖像顏色的概率分布變化來(lái)追蹤目標(biāo)。
CamShift算法的整個(gè)過(guò)程如圖1所示,虛框部分是CamShift算法的核心,也就是MeanShift算法,目的是在視頻圖像中找到運(yùn)動(dòng)目標(biāo)所在的位置。MeanShift算法是基于圖像顏色的靜態(tài)概率分布進(jìn)行的,而CamShift算法則基于圖像顏色的動(dòng)態(tài)概率分布。在連續(xù)的視頻圖像序列中,運(yùn)動(dòng)目標(biāo)的大小和位置的變化容易導(dǎo)致相應(yīng)的概率分布動(dòng)態(tài)變化,CamShift算法建立被跟蹤目標(biāo)的顏色概率模型后,可將視頻圖像轉(zhuǎn)化為顏色概率分布圖,然后在第一幀圖像初始化一個(gè)矩形搜索窗,對(duì)以后的每一幀圖像,CamShift能夠自動(dòng)調(diào)節(jié)搜索窗的大小和位置,定位被跟蹤目標(biāo)的中心和大小,并用當(dāng)前幀定位的結(jié)果來(lái)預(yù)測(cè)下一幀圖像中目標(biāo)的中心和大小。其算法實(shí)現(xiàn)步驟如下:
1)將整幅圖像設(shè)為搜尋區(qū)域;
2)初始化搜索窗口的初始位置;
3)計(jì)算搜索窗口內(nèi)的彩色概率分布,此區(qū)域的大小比搜索窗口要稍微大一點(diǎn);
4)運(yùn)行MeanShift,獲得搜索窗口新的位置和大??;
5)在下一幀視頻圖像中,用步驟4獲得的值初始化搜索窗口的位置和大小,跳轉(zhuǎn)到步驟3繼續(xù)運(yùn)行直至收斂(或者形心移動(dòng)的距離小于事先設(shè)定的閾值)。
設(shè)(x ,y)為搜索窗口中的像素位置,I (x ,y)是投影圖中(x ,y)處的像素值。定義搜索窗口的零階矩和一階矩分別如下:
目標(biāo)中長(zhǎng)軸的方向角為: