顧幸方
(南京理工大學自動化學院,江蘇南京210094)
視頻中的運動目標跟蹤是計算機視覺的一個重要研究領域,它在智能監(jiān)控、人機交互、機器人導航和基于運動的識別等領域有著廣泛的應用前景[1]。至今已經有許多視頻跟蹤算法被提出,其中基于Mean Shift的跟蹤框架[2]自提出起就受到研究者的廣泛關注。該框架利用空間加權的顏色直方圖作為目標模型,用Bhattacharrya距離度量目標與候選目標之間的差異度。它將跟蹤問題轉化為最大化相似度量的優(yōu)化問題,通過Mean Shift迭代來找到目標函數(shù)的局部最優(yōu)值。該方法具有計算負荷小、跟蹤效果較好的優(yōu)點,自提出以來吸引了大批研究者的關注。但是,此跟蹤框架也具有明顯的缺陷。由于目標模型是建立在全局顏色直方圖上,因而丟失了目標各個部分的位置信息。所以在遇到遮擋問題時目標位置會產生漂移,當遮擋面積大于一定程度時甚至會丟失目標。文獻3提出了將目標分塊以克服遮擋的思想,文中采用了窮搜索的方式來跟蹤目標,當目標尺寸稍大時難以保證實時性。另一方面,跟蹤窗口中難免摻雜背景象素,目標中也可能存在與背景顏色相似的部分,這些都對跟蹤的穩(wěn)健性造成影響。本文采用目標分塊的Mean Shift跟蹤,并且通過對前景與背景直方圖的分析來抑制目標中與背景相似象素的權重,從而提高了跟蹤的穩(wěn)健性,并且具有較好的實時性。
首先將跟蹤目標分為若干不重疊的子塊,3種分塊方式如圖1所示。選擇某種分塊方式與實際目標尺寸、遮擋出現(xiàn)的位置和遮擋面積大小等因素相關。分塊過多會影響跟蹤的實時性,分塊過少使抗遮擋的性能下降。
文獻4采用圖1(b)、(c)結合的分塊方式。對類似人臉形狀目標,本文采用圖1(a)所示分塊方式,而對于行人采用圖1(b)所示分塊方式。對于遮擋面積在70%以上的情況,圖1(a)中仍可保證2個子塊能夠獲得比較好的跟蹤效果。如果分塊過多,每個子目標覆蓋的面積太小以至直方圖模型易受干擾產生漂移,影響跟蹤效果。
圖1 目標分塊方式
基于分塊的Mean Shift跟蹤框架下每個分塊成為一個獨立的目標。每個分塊跟蹤結束后,計算候選子目標與原子目標之間的相似度。設ρj表示第j個分塊的Bhattacharyya系數(shù)。選出候選目標與原目標最相似,也就是Bhattacharyya系數(shù)最大的子塊的位移作為整個目標的移動方向和距離。然后以整個目標的新位置更新其他分塊的位置,再進行下一幀的處理。但是,當目標受到遮擋時僅僅依賴一個子塊的跟蹤來確定整體的位置是有風險的,有時會產生目標漂移,所以需要綜合考慮多個子塊的跟蹤情況。當ρj<ρ_th時認為所在子塊j所在區(qū)域有遮擋出現(xiàn),本文取ρ_th=0.7。記錄沒有被遮擋子塊的個數(shù)Nnon,若Nnon≥1,則候選目標的位置由相似度最高子塊j*的位置與其他未發(fā)生遮擋子塊(ρj≥ρ_th,j≠j*)的位置加權決定:
式中,yj是每個分塊在Mean Shift迭代收斂后的位置,devij是每個分塊的中心相對整體目標中心的偏移,λ表示其權重,本文取λ=0.8。當Nnon=0,即所有候選目標中分塊與原分塊之間的相似度都較小,候選目標位置由所有分塊按各自相似度加權決定:
在視頻目標跟蹤系統(tǒng)中,如果目標模型(前景)與背景環(huán)境有比較好的區(qū)分度,那么簡單的跟蹤算法就能獲得比較好的跟蹤效果。文獻5提出一種計算跟蹤窗口中象素隸屬目標概率的方法,其主要思想為在跟蹤窗口外設置一個背景窗口分析前景與背景的直方圖信息。如圖2(a)所示,紅色窗口為跟蹤窗口,綠色與紅色窗之間是背景窗口。設hob和hbg分別表示跟蹤窗口和背景窗口的歸一化顏色直方圖,則跟蹤窗口中的象素xi屬于前景的隸屬度為:
式中,u=b( xi)表示象素xi的灰度值(彩色圖像中為RGB值在直方圖中的索引值)。ε是為了保證分母和對數(shù)函數(shù)的自變量不為零。
由式3的定義,L(xi)>0表示顏色b(xi)屬于目標的概率較大,反之屬于背景的概率較大。當L(xi)接近0時,顏色b( xi)在目標與背景中有相似分布。采用sigmoid函數(shù)將L(xi)的值限定在區(qū)間(0,1)之間,即令λu=1/(1+e-Lu/0.5)。將λu作為象素屬于目標的隸屬度引入直方圖的計算,用來抑制直方圖中屬于背景的分量。因此,目標與候選目標的直方圖模型如:
式中,k(x)為核函數(shù)的輪廓函數(shù),常用Epanechnikov核、高斯核等,C與Ch分別為歸一化系數(shù)。在跟蹤結束后,以整體目標位置及其周圍背景重新計算{λu}u=1,…,m更新直方圖分量的權重系數(shù)。圖2(b)~(d)顯示了上述前景與背景分割方法的效果,為了能直觀地展示效果將窗口內滿足L(xi)≤0的象素點設置為白色,滿足L(xi)>0的象素點保持不變。
圖2 前景與背景的分割
本文的實驗在VC++6.0環(huán)境,以及內存1G、主頻1.83GHz的筆記本上完成。并實現(xiàn)了經典的Mean Shift跟蹤算法與文獻6所述分塊跟蹤算法用于和本文算法進行對比。目標RGB顏色直方圖模型的分辨率為16×16×16。本文算法在兩段測試視頻上的跟蹤效果如圖3、4所示。根據目標形狀不同,對人臉采用3×3的分塊(如圖1(a)),而對行人采用如圖1(b)所示分塊。圖3顯示了各個子塊的跟蹤情況,圖中小矩形框是滿足ρj≥ρ_th的分塊。圖3(a)~(d)顯示隨著遮擋面積的增大能滿足上述條件的分塊個數(shù)逐漸減少。但是,整體目標的定位仍不受遮擋的影響。
圖3 子塊跟蹤結果
一段行人跟蹤的測試結果如圖4所示,由于行人姿態(tài)變化、背景變化和攝像機移動等不利因素,所以這段視頻更具挑戰(zhàn)。圖4中紅色與綠色窗口分別表示本文算法與經典Mean Shift跟蹤算法。從結果中可以看到,本文方法能夠比較穩(wěn)健地跟蹤行人,在其受到遮擋以及漸遠的過程中基本能保證目標定位的準確性,而經典方法下目標位置有較大偏移。
圖4 行人跟蹤結果對比
此外,與文獻6提出的分塊Mean Shift跟蹤算法相比,本文算法具有更準確的目標定位能力。如圖5(a)所示,文獻6算法在受到不同方向的遮擋干擾情況下目標窗口有相應偏移,而本文算法的偏移量相對較小。圖5(b)顯示了3種算法的跟蹤偏差,其中真實位置由文獻3提供。圖中每隔5幀記錄上述算法結果與真實位置的歐式距離。從圖中可以看到本文算法明顯優(yōu)于經典Mean Shift算法,而且在絕大多數(shù)幀中偏差小于文獻6算法。
本文提出了一種基于目標分塊與前景/背景信息的Mean Shift跟蹤算法。分塊表達提供了目標各個部分的位置信息,而前景與背景直方圖的分析抑制了跟蹤窗口內摻雜的背景象素和與背景相似的目標象素對跟蹤效果的干擾。實驗結果顯示本文方法能夠有效克服短時遮擋問題,具有較強穩(wěn)健性,并且能夠滿足實時性的要求。另外,對目標尺度的估計是未來研究的重點與難點,使跟蹤窗口與實際目標尺度保持一致可以進一步增加跟蹤的穩(wěn)健性。
圖5 本文算法與經典Mean Shift及文獻6算法的對比
[1] Alper Yilmaz,Omar Javed,Mubarak Shah.Object tracking:A survey[J].ACM Computing Surveys,2006,38(4):1 -45.
[2] Comaniciu D,Ramesh V,Meer P.Kernel-based object tracking[J].IEEE Trans on Pattern Analysis and Machine Intelligence,2003,25(5):564-575.
[3] Amit Adam,Ehud Rivlin,Ilan Shimshioni.Robust Fragments-based Tracking using the Integral Histogram[C].New York:Proceedings of IEEE conference on Computer Vision and Pattern Recognition,2006:798-805.
[4] 顏佳,吳敏淵,陳淑珍.應用Mean Shift和分塊的抗遮擋跟蹤[J].光學精密工程,2010,18(6):1 413-1 418.
[5] Robert Collins,Yanxi Liu,Marius Leordeanu.Online Selection of Discriminative Tracking Features[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2005,27(10):1 631-1 643.
[6] Fanglin Wang,Shengyang Yu,Jie Yang.A novel fragments- based tracking algorithm using mean shift[C].Hanoi:Proceedings of IEEE International Conference on Control Automation Robotics and Vision,2008:694-698.