劉 潔
(西安工業(yè)大學(xué),陜西 西安 710032)
基于序列圖像視覺(jué)跟蹤技術(shù)的人體運(yùn)動(dòng)研究*
劉 潔
(西安工業(yè)大學(xué),陜西 西安 710032)
針對(duì)當(dāng)前常用的視覺(jué)目標(biāo)跟蹤算法容易受到類目標(biāo)顏色干擾的問(wèn)題,提出在傳統(tǒng)的ABCshift算法中引入 Kalman濾波器,從而通過(guò)CAMShift算法降低運(yùn)動(dòng)目標(biāo)和其類似顏色物體的顏色相似度,并通過(guò)Kalman濾波器解決目標(biāo)被遮擋干擾的問(wèn)題。人體運(yùn)動(dòng)試驗(yàn)驗(yàn)證表明,該算法可有效實(shí)現(xiàn)對(duì)目標(biāo)的跟蹤,并具有很好的魯棒性和實(shí)時(shí)性。
序列圖像;CamShift算法; ABCshift算法;Kalman濾波器;視覺(jué)跟蹤
序列圖像是指其在不同時(shí)間、不同方位對(duì)某個(gè)目標(biāo)進(jìn)行連續(xù)觀測(cè),從而獲取系列圖像的過(guò)程。在序列圖像中,目標(biāo)跟蹤被廣泛地應(yīng)用在醫(yī)學(xué)和智能交通等各個(gè)領(lǐng)域,如基于濾波理論的Kalman算法和基于迭代搜索的 MeanShift算法、基于顏色特征的CamShift 算法等都是常用的目標(biāo)跟蹤算法;但是,傳統(tǒng)的CamShift算法在對(duì)目標(biāo)進(jìn)行運(yùn)動(dòng)跟蹤的過(guò)程中很容易受到顏色背景的干擾,從而失去對(duì)目標(biāo)的跟蹤,同時(shí)通過(guò)ABCshift算法對(duì)其進(jìn)行改進(jìn)存在嚴(yán)重遮擋,會(huì)使得跟蹤失敗。對(duì)此,本文提出了一種新型的、改進(jìn)的目標(biāo)跟蹤算法,并通過(guò)人體運(yùn)動(dòng)試驗(yàn)對(duì)其進(jìn)行了論證[1]。
1.1 算法的提出
針對(duì)傳統(tǒng)MeanShift算法存在不能自動(dòng)調(diào)節(jié)窗口大小的問(wèn)題,引入了CamShift 算法,通過(guò)其中的目標(biāo)顏色特征信息來(lái)實(shí)現(xiàn)對(duì)目標(biāo)的跟蹤。對(duì)上述算法進(jìn)行改進(jìn),通過(guò)利用顏色特征的方式對(duì)目標(biāo)進(jìn)行跟蹤,但是當(dāng)存在著類似顏色的時(shí)候,采用MeanShift算法當(dāng)中的迭代搜索則使得計(jì)算出的候選目標(biāo)出現(xiàn)錯(cuò)誤,并偏離了目標(biāo),導(dǎo)致最后的跟蹤結(jié)果與實(shí)際存在真大的差異;同時(shí),當(dāng)目標(biāo)受到嚴(yán)重遮擋時(shí),在搜索框內(nèi)的顏色概率密度直方圖會(huì)發(fā)生變化,其迭代搜索時(shí)搜索的窗口也同樣會(huì)出現(xiàn)偏離,使跟蹤失敗。為解決上述問(wèn)題,在現(xiàn)有算法的基礎(chǔ)上,結(jié)合Kalman濾波算法,提出跟蹤目標(biāo)當(dāng)前幀的大概位置方法,也就是自適應(yīng)的ABCshift算法。
1.2 CamShift算法的改進(jìn)
CamShift算法主要以顏色作為特征,結(jié)合其中目標(biāo)顏色直方圖的反向投影作為其匹配的模板,在當(dāng)前的幀當(dāng)中確定其目標(biāo)的大小和位置,并在下一幀的視頻圖像中,通過(guò)當(dāng)前目標(biāo)大小的搜索窗口,重復(fù)上述過(guò)程。其具體的步驟如下[2]。
1)構(gòu)建RGB模型并轉(zhuǎn)換為HSV模型。在任意 [0,1]內(nèi),R、G、B有與其相對(duì)應(yīng)的HSV模型的分量:
V=max(R,G,B)
(1)
S=(V-min(R,G,B))/V(當(dāng)V=0時(shí),S=0)
(2)
(3)
if(H<0)thenH=H+360
(4)
2)反向投影。在當(dāng)前的跟蹤算法中,通過(guò)直方圖特征獲取2幅直方圖的匹配程度,利用直方圖特征跟蹤算法,通過(guò)目標(biāo)模型中的顏色直方圖,求取概率,并將其反向投入到原來(lái)的圖中。此處目標(biāo)概率顏色的概率密度為:
(5)
式中,P(O|C)是顏色C作為其目標(biāo)顏色概率;P(C|O)是目標(biāo)顏色的概率分布;P(O)是目標(biāo)區(qū)域在搜索區(qū)域內(nèi)的先驗(yàn)概率,并且該值為恒定不變。通過(guò)上述描述,在該算法中,整個(gè)搜索窗內(nèi)顏色概率密度的計(jì)算為:
P(C)=P(C|O)P(O)+P(C|B)P(B)
(6)
式中,P(C|B)是背景顏色占整個(gè)搜索區(qū)域內(nèi)整體的概率。
假設(shè)其中的搜索區(qū)域?yàn)檎w目標(biāo)區(qū)域的r倍,則有P(B)=1-1/r,P(O)=1/r。當(dāng)其搜索窗口的位置出現(xiàn)變化時(shí),其在新搜索窗的位置中重新建立顏色直方圖的模型,此時(shí)在搜索窗內(nèi)的顏色概率密度P(C)出現(xiàn)了變化。通過(guò)這種方式,解決了目標(biāo)在跟蹤過(guò)程中出現(xiàn)的受到相似顏色干擾而失敗的問(wèn)題。
ABCshift算法原理為通過(guò)引入貝葉斯估計(jì)方法對(duì)搜索窗口當(dāng)中的某種顏色屬于目標(biāo)顏色的概率密度進(jìn)行計(jì)算,與目標(biāo)某種顏色相似的背景顏色的概率在通過(guò)上述貝葉斯公式進(jìn)行計(jì)算之后,其概率會(huì)被降低,屬于目標(biāo)并且和背景不相似的顏色概率通過(guò)貝葉斯計(jì)算后概率增加,解決了類似目標(biāo)顏色受到干擾的問(wèn)題;但是,上述方法在目標(biāo)受到短暫、嚴(yán)重的遮擋時(shí),其中的搜索窗口屬于目標(biāo)顏色的概率密度出現(xiàn)降低,非目標(biāo)顏色的概率密度會(huì)增加,如果僅僅通過(guò)現(xiàn)在的顏色的信息來(lái)實(shí)現(xiàn)對(duì)目標(biāo)的跟蹤,往往會(huì)出現(xiàn)失敗[3-4]。
為解決上述問(wèn)題,本文提出通過(guò)結(jié)合Kalman 濾波的方法,對(duì)ABCshift 跟蹤算法進(jìn)行改進(jìn)。在實(shí)際應(yīng)用中,Kalman 濾波能夠準(zhǔn)確預(yù)測(cè)圖像中目標(biāo)位置,如果將Kalman和ABCshift結(jié)合起來(lái),可以在目標(biāo)被嚴(yán)重遮擋時(shí),通過(guò)Kalman 預(yù)測(cè)值的功能代替原始ABCshift算法計(jì)算的最優(yōu)值,并作為對(duì)Kalman更新的觀測(cè)值。通過(guò)上述方法,既利用了其中的目標(biāo)顏色信息,同時(shí)也應(yīng)用到了其中的目標(biāo)空間信息,增加了跟蹤的準(zhǔn)確性,解決了目標(biāo)出現(xiàn)遮擋失敗的問(wèn)題??梢姡瑢alman濾波與ABCshift 算法相結(jié)合,可同時(shí)解決背景干擾和目標(biāo)遮擋的問(wèn)題。
具體算法改進(jìn)流程如圖1所示。該流程的步驟為:1)通過(guò)鼠標(biāo)選取目標(biāo)的大小,并將統(tǒng)計(jì)目標(biāo)區(qū)域內(nèi)的顏色直方圖作為目標(biāo)區(qū)域的顏色概率模型P(C|O),此時(shí)的初始窗口位置信息則為Kalman濾波當(dāng)中的初始狀態(tài);2)通過(guò)公式計(jì)算出目標(biāo)區(qū)域質(zhì)心的位置,此時(shí)移動(dòng)搜索窗中心和目標(biāo)區(qū)域質(zhì)心兩者重合,然后將搜索窗的大小根據(jù)目標(biāo)區(qū)域的大小進(jìn)行調(diào)整,調(diào)整倍數(shù)為r倍,此時(shí)窗口的顏色直方圖模型為P(C);3)根據(jù)公式計(jì)算出搜索區(qū)域當(dāng)中屬于目標(biāo)的顏色概率密度為P(O|C),并重新對(duì)計(jì)算搜索區(qū)域內(nèi)的顏色分布圖進(jìn)行搜索,計(jì)算該新搜索區(qū)域內(nèi)的質(zhì)心并調(diào)整其中窗口的大小;4)在滿足收斂的條件之下,更新Kalman濾波狀態(tài);5)重復(fù)上述步驟2~步驟4,直到視頻結(jié)束。
圖1 改進(jìn)算法流程圖
為驗(yàn)證上述算法在顏色相似和被遮擋情況的跟蹤效果,對(duì)目標(biāo)進(jìn)行了跟蹤試驗(yàn)。采用室外人行走運(yùn)動(dòng)的視頻對(duì)其進(jìn)行跟蹤試驗(yàn),圖像的分辨率為320 ×240,其中的幀率為30幀/s。
選取藍(lán)衣男子在日光燈下行走運(yùn)動(dòng)的視頻(見圖2),在跟蹤中伴隨著目標(biāo)的形變,在第23幀跟蹤窗口搜索到該目標(biāo),并且搜索窗口隨著目標(biāo)的變化而變化,具有很好的跟蹤效果。同時(shí),驗(yàn)證在有遮擋的情況下,加入Kalman 濾波的效果(見圖3)??柭鼮V波首先充分利用其先前的目標(biāo)運(yùn)行狀態(tài)信息及當(dāng)前時(shí)刻的目標(biāo)位置觀測(cè)值,對(duì)目標(biāo)運(yùn)動(dòng)狀態(tài)進(jìn)行估計(jì),即使出現(xiàn)目標(biāo)受到物體遮擋的情況,還能繼續(xù)保持對(duì)目標(biāo)的跟蹤,從而較好地保證了跟蹤效果的魯棒性和穩(wěn)定性。
圖2 改進(jìn)CamShift 算法的運(yùn)動(dòng)目標(biāo)跟蹤效果圖
圖3 遮擋情況下的改進(jìn)算法效果
CamShift算法作為一種基于顏色信息的匹配算法,針對(duì)單純采用CamShift算法對(duì)快速移動(dòng)的目標(biāo)存在魯棒性不強(qiáng),并且跟蹤時(shí)容易丟失的問(wèn)題,結(jié)合卡爾曼濾波改進(jìn)的CamShift方法,實(shí)現(xiàn)了在嚴(yán)重遮擋情況和顏色相似下的目標(biāo)跟蹤,保證了目標(biāo)在空間運(yùn)動(dòng)中的一致性及連貫性,具有很高的應(yīng)用價(jià)值。
[1] 劉惟錦,章毓晉.基于Kalman濾波和邊緣直方圖的實(shí)時(shí)目標(biāo)跟蹤[J].清華大學(xué)學(xué)報(bào):自然科學(xué)版,2008,48(7):1104-1107.
[2] 吳良健,況璐,鄧慶林,等.基于Camshift和Kalman濾波結(jié)合的改進(jìn)多目標(biāo)跟蹤算法[J].現(xiàn)代科學(xué)儀器,2010,2(1):29-33.
[3] 汪東,謝少榮.基于ABCshift算法的目標(biāo)檢測(cè)與跟蹤[J].計(jì)算機(jī)工程,2011,37(4):203-205.
[4] 劉智強(qiáng),汪紅波. 基于類神經(jīng)網(wǎng)絡(luò)的磁流變主動(dòng)振動(dòng)控制研究[J].2014(10):99-101.
*西安市科技計(jì)劃創(chuàng)新基金計(jì)劃資助項(xiàng)目(CX12189)
責(zé)任編輯李思文
ResearchonHumanMotionImageSequenceTrackingTechnologybasedonVision
LIU Jie
(Xi′an Technological University, Xi′an 710032, China)
In view of the current visual target tracking algorithms commonly used in susceptible class target color interference problems, put forward by the filter in the traditional algorithm, thus reduced the color similarity of moving target and its similar color objects through the algorithm, and through the filter, solved the target occluded interference problem. Finally, by the motion of a human body experiments, it was showed that this algorithm can effectively achieve the target tracking, real-time, and has good robustness.
image sequence, algorithm, algorithm, filter, visual tracking
G 804.66
:A
劉潔(1978-),女,碩士,講師,主要從事運(yùn)動(dòng)生物力學(xué)等方面的研究。
2015-01-14