廖斌
摘要:分析目前運動目標檢測跟蹤中的經典方法,包括幀間差分法、背景差分法和Mean Shift法,探討其適用范圍及優(yōu)缺點,然后對3種算法進行驗證,給出實驗結果,并分析其優(yōu)缺點。
關鍵詞:幀間差分法;背景預測法;Mean Shift;視頻跟蹤;目標檢測
DOIDOI:10.11907/rjdk.143629
中圖分類號:TP317.4
文獻標識碼:A 文章編號文章編號:16727800(2015)001013603
0 引言
隨著計算機技術的發(fā)展和計算機視覺原理的廣泛應用,利用計算機圖像視頻處理技術對目標進行實時跟蹤成為當今的研究熱點。對目標進行動態(tài)實時跟蹤定位在智能化交通系統(tǒng)、智能監(jiān)控系統(tǒng)、軍事目標檢測及醫(yī)學導航手術中手術器械定位等方面具有很高的應用價值[13]。同時,運動目標跟蹤也是計算機視覺研究領域的一個重要課題,國內外已進行了大量研究工作。本文主要對這些研究工作中的經典方法包括背景預測法、幀間差分法和Mean Shift法[46]進行分析,介紹其基本思想和算法步驟,并根據實驗結果分析各自優(yōu)缺點。
1 運動目標跟蹤基本方法
1.1 背景預測法
背景預測算法的基本思想如圖1所示。圖像中的任何一個像素點,如果屬于背景,則其灰度值與屬于同一背景的其它像素點灰度值相關性較強,一定可以用周圍區(qū)域的背景點預測;如果屬于目標,其灰度值與周圍像素點的灰度值相關性較差,在圖像局部會形成一個或幾個異常點。利用這一差異分離目標與背景是背景預測方法的出發(fā)點。圖像中任何一個像素點灰度的背景預測值都可以利用其周圍區(qū)域的一些像素點灰度值經過加權組合產生,將圖像中所有像素點的實際灰度值與預測值相減得到預測殘差,然后在預測殘差圖像上進行閾值檢測。
1.2 幀間差分法
幀間差分法直接求取前后兩幀圖像之間的差別,如圖2所示。幀間差分法是將圖像序列中連續(xù)兩幀或三幀圖像所對應的像素灰度值相減,并且加以閾值化來分割圖像中的運動區(qū)域。其思想是通過幀間差分,利用運動序列圖像相鄰幀的強相關性進行變化檢測,進而通過對變化圖像的濾波確定運動目標。
傳統(tǒng)的幀間差分法是利用序列圖像中相鄰兩幀做幀差運算。運動目標運動速度緩慢時,差分后提取的運動目標內部則會存在空洞,嚴重的會使提取的運動目標區(qū)域局部邊緣產生缺口,這種情況采用圖像形態(tài)學也無法修復。
所以在本文中采用三幀差求取運動目標區(qū)域,使目標提取更加準確。對相鄰三幀中前兩幀和后兩幀分別利用傳統(tǒng)的幀間差提取運動區(qū)域,再對兩個結果取公共部分,即為中間幀的運動區(qū)域。
圖1 背景預測法流程
圖2 幀間差分法流程
1.3 Mean Shift法
Mean Shift算法是指一個迭代的步驟,即先算出當前點的偏移均值,移動該點到其偏移均值,然后以此為新的起始點,繼續(xù)移動,直到滿足一定條件結束。
對于跟蹤目標明候選區(qū)域,假設{Xi}i=1,...,n是以y為中心的像素點,k(x)依然是以h為半徑核函數的輪廓函數,u∈1…255,則候選區(qū)域的概率密度模型為:
u(y)=Ck∑nki=1k(y-xih2)δ[b(xi)-u](1)
于是問題轉化為找取離散位置y,使其密度函數u(y)與目標密度函數u具有最大相似度。為了定義相似性度量,Bhattachaxyya系數被用于評價直方圖的匹配程度。假設目標模型為m級直方圖,目標的離散密度函數估計為={u } u = 1,...,m,位置在y的候選目標的密度函數估計為={u }u=1,...,m,則目標與候選目標的相似性系數為:
(y)=ρ[(y),]=∑mω=1u(y)u(2)
為了計算Bhattacharyya系數(y)=ρ[(y),]的最大值,把ρ[(y),]在y0點泰勒展開為:
ρ[(y),]≈∑mω=1u(y0)u+12∑mu=1w(y)
u(y0)≈12∑mu=1u(y)u+Ck2∑mki=1ωik(y-xih2)(3)
其中ωi=∑mu=1δ[b(xi)-u]un(y0)為權系數,由于上式中第一項獨立于y常數,所以要使ρ[(y),]最大化需使后一項最大化。因此迭代求中心點的公式更新為:
1=∑nk i=1xi ωi g(y0 -i h2)∑nk i=1ωi g(y0 -i h2)(4)
不斷更新{u (1 )}u=1,…,m ,并估計Bhattacharyya系ρ[(y1),]=∑mu=1(1)n。當ρ[(y1),]<ρ[(y0),]時計算1←12(0+1)。當|1-0|<ε時,停止迭代,否則0←1。
2 實驗結果及分析
本文使用Visual C++作為可視化軟件開發(fā)工具, 以上3種方法實驗結果如下:
(1)背景預測法實驗結果如圖3所示。背景預測法能夠快速、準確地分割出運動物體,但容易受環(huán)境和光照的變化影響,而且如果運動目標與背景顏色相似,則檢測出來的運動目標通常不完整。另外,該方法沒有考慮到攝像機的抖動可能引起背景運動,造成差圖像中存在較多的偽運動信息。
圖3 背景預測法目標檢測
(2)幀間差分法實驗結果如圖4所示。
幀間差分法直接求取前后兩幀圖像之間的差別,其對物體運動比較敏感,實際上檢測到的是目標與背景發(fā)生相對運動的區(qū)域(包括運動目標和顯露區(qū)域),受光線影響較小。另外該算法易于實現且實時性較好,因而成為目前廣泛應用的目標檢測方法。但缺點是跟蹤連續(xù)性不夠,幀間差別較明顯,導致整個跟蹤過程不夠連貫。
圖4 幀間差分法目標檢測
(3)Mean Shift實驗結果如圖5所示。
該目標跟蹤的方法利用了圖像中目標自身的靜態(tài)特性及運動特性,可以不依賴操作人員,自動對符合條件的運動目標進行檢測和跟蹤,并在檢測和跟蹤過程中采用了多種特征的判據判斷與引入目標運動特征的跟蹤方法,不依賴于先驗知識和數據,自適應性非常好。但從實驗結果可以看出,檢測仍然不夠準確,跟蹤框范圍過大,無法及時鎖定運動目標,有一定滯后性。如果移動較快或移動范圍較大,甚至有可能丟失跟蹤目標。
圖5 Mean Shift目標跟蹤
3 三種方法比較
3.1 方法效率比較
度量一個程序的執(zhí)行時間通常有兩種方法,事后統(tǒng)計法和事前分析估計法。本文采取第一種方法對以上3種檢測跟蹤方法進行比較,結果如表1所示。
應用于該程序測試的視頻在正常情況下長19s,前兩種方法執(zhí)行時間較長,這樣可能導致在檢測運動較快的目標時,雖然能檢測到目標移動,但是跟蹤不夠及時。Mean Shift相對而言實時性較好,但在實際應用中,仍然存在較大誤差。
3.2 資源占有率比較
衡量一個軟件的好壞,占用資源的大小是一個非常重要的衡量指標。不同程序運行時的CPU占有率和所占有的內存資源如表2所示。
從表中可以看出,3種方法在占用系統(tǒng)資源方面差別不大,特別是前兩種方法。但其CPU占有率都超過一半,增大了系統(tǒng)負擔,如果有其它程序并行運行,將可能造成系統(tǒng)速度過慢。
4 結語
從實驗結果可以看出,背景預測法在運動目標所處環(huán)境過于復雜或當目標被遮擋時很難精確地分割出目標物體,所以運動目標的檢測和分割在很大程度上影響了跟蹤精度,同時也增加了跟蹤的復雜性;幀間差分法提高了對環(huán)境干擾的抵抗能力,改善了運動目標的邊緣特性,使檢測出來的目標更加完整,但實時性不強;Mean Shift雖然效率較高,但是當要跟蹤的目標運動過快時,Mean Shift在后一幀中則很難準確跟蹤到目標位置。