摘 要:針對Mean Shift算法在目標跟蹤過程中因核窗寬不變導致目標尺度變化時定位不精確的問題,提出了融入邊緣檢測的方法計算目標大小,從而實現自適應調整核窗寬的改進算法。當目標丟失和發生遮擋時,結合Kalman濾波器對下一幀中目標位置進行預測,提出改進的跟蹤算法,有效提高了跟蹤的準確性和魯棒性。
關鍵詞: 目標跟蹤; Mean Shift算法; Canny邊緣檢測; Kalman濾波
Mean Shift算法是一種典型的無參估計目標跟蹤算法,適合非線性運動目標跟蹤,具有快速高效的特點[1],廣泛應用于運動目標跟蹤[2]。Mean Shift最先由FUKUNAGA和HOSTELER提出,之后COMANICIU D將其應用在計算機視覺領域[3]。該算法對目標變形、旋轉、邊緣遮擋等不敏感,魯棒性較強[4]。Mean Shift算法整個跟蹤過程中核窗寬始終不變,且無運動預測模塊,易造成定位不準、目標丟失等問題[5]。本文提出融入邊緣檢測的方法對傳統Mean Shift算法進行改進,并融合Kalman濾波器對目標狀態進行預測,提高了跟蹤的準確性和魯棒性。
1 自適應核窗帶寬的Mean Shift算法
自適應核帶寬窗口的調整主要是滿足目標大小變化,而不考慮目標圖像的紋理特征,當前視頻幀跟蹤結束后,在確定Mean Shift跟蹤窗口大小時,采用背景相似度算法在當前目標位置周圍提取目標最優特征后進行邊緣檢測(Canny算子)確定跟蹤窗口寬度,根據檢測到的目標邊緣計算目標形心。
2 改進的目標跟蹤算法
Kalman濾波器能對運動目標位置和速度進行準確預測[6],因此本文采用基于顏色直方圖的Mean Shift算法,同時綜合考慮目標運動方向和速度信息。把Kalman濾波器預測的下一幀中目標的位置作為迭代初始位,利用Kalman濾波器根據以往的目標位置信息預測目標在本幀圖像中可能的位置,Mean Shift算法就可以在這個位置的鄰域內找到目標的真實位置。
從上面實驗可得:傳統算法在第158幀跟蹤窗口發生偏移,到第187幀時跟蹤窗口被完全偏移到近似物體上,目標丟失。本文算法跟蹤窗口隨目標尺度的減小而縮小,取得了很好的效果。
場景2: 目標遮擋且運動方向改變,兩種算法跟蹤結果如圖3、圖4所示。
從上面實驗可得:傳統算法從第462至第515幀,目標發生遮擋,改變運動方向,造成跟蹤失敗。改進算法在第462幀實現目標連貫跟蹤,具有較好的實時性和魯棒性。
場景3:光線較弱,特征不明顯的小目標仍能實現對行人的跟蹤,但是在該行人打開車門時,由于環境和車的顏色的干擾, 跟蹤窗口稍微發生了偏移, 實驗效果如圖5所示。
其中,場景2目標跟蹤過程中傳統算法和改進算法的迭代次數曲線圖如圖6所示,本文算法有效減少了跟蹤過程中的Mean Shift迭代次數。
n:統計跟蹤過程中丟失幀數目,n=0;
N:判斷目標是否丟失;
θ:衡量相似性函數值[0,1]。
(1)自動初始化,讀取視頻幀進行Canny邊緣檢測,計算出目標幾何中心。
(2)用目標形心作為迭代起始點進行迭代跟蹤。
(3)計算相似性函數值d(y)。
若d(y)<θ,目標與候選模型匹配, 跟蹤有效,更新坐標及目標模型且n=0,繼續下一次迭代;若d(y)>θ,目標跟蹤框偏移目標較大,目標丟失,對丟失幀計數變量n進行累加計數,轉到步驟(4)。
(4)記當前幀為k,使用Kalman濾波對k+1幀目標位置進行預測輸出跟蹤點位置。計算k+1幀在此點的特征分布并與保留的目標特征分布進行迭代匹配。
(5)Kalman預測跟蹤的位置一直不能與原目標特征分布匹配,所統計的丟失幀數目n超過設定值N時判斷目標丟失,之后重新定位目標。轉到步驟(1),對目標進行定位,重新初始化跟蹤。
改進算法流程圖如圖7 所示。
從實驗結果可知,本文的改進算法在目標進行快速運動、微弱光照下特征不明顯時以及背景中發生短時間的遮擋時,都能準確地跟蹤到目標,并且能夠滿足實時性和可靠性的要求。
參考文獻
[1] FUKANAGA K, HOSTETLER L D. The estimation of the gradient of a density function,with applications in pattern recognition[J].IEEE Transactions on Information Theory,1975,21(1):32-40.
[2] Yang Ge,Liu Hong. Survey of visual tracking algorithms[J]. Transactions on Intelligent Systems,2010,5(2):95-105.
[3] COMANICIU D, RAMESH V, MEER P. Kernel-based object tracking[J]. IEEE Transactions on Pattern Analysis Machine Intelligence,2003,25(5):564-575.
[4] 許煥明, 高向東. 行人輪廓檢測算法研究[J]. 微型機與應用,2012,31(22):38-41,43.
[5] 孫建偉,薛秀萍,劉曉東,等.基于OpenCV的視頻序列目標檢測與跟蹤技術研究[J].電子技術,2013,42(6):19-23.
[6] KHAN Z H, GU I Y H, WANG T, BACKHOUSE A. Joint anisotropic Mean Shift and consensus point feature correspondences for object tracking in video[C]. Proceedings IEEE International Conference Multi-media and Expo,2009:1270-1273.