葉 瑞,陳超波
(西安工業大學 電子信息工程學院,陜西 西安 710021)
為了對視頻序列中的動態目標進行有效地跟蹤,一個良好的跟蹤系統就要求能夠克服目標因各種運動而導致的形變、遮擋等外觀變化。然而當目標尺寸有明顯的變化時,常常會導致跟蹤失敗,丟失動態目標。本文通過在CamShift算法基礎上對搜索窗口的尺寸進行預測并自動更新窗口的方法來解決跟蹤窗口尺寸的自動調整問題。
Mean-Shift算法作為一種高效的模式匹配算法,已經成功地運用到對實時性要求高的跟蹤算法中。但使用該方法對存在明顯尺度變化和旋轉運動的目標進行跟蹤時,由于跟蹤窗口尺寸固定而往往導致目標的跟偏甚至跟丟?,F在也出現了許多改進算法。文獻[2]通過前后兩幀中目標的角點來匹配獲得放射變換參數從而更改核函數帶寬,但該方法不適用非剛性目標的跟蹤,文獻[3]通過在下一幀中迭代更新上一幀中目標橢圓描述的五維參數從而更改目標尺度和角度,但該方法存在計算量大的不足。文獻[4]提出用大小不同的窗口去跟蹤目標,個窗口大小相差10%,最后根據各檢測的Bhattachayya系數大小決定選用相應的窗口大小。但在實驗室中常常因為窗口不斷減小而丟失目標。因為這個方法可以有效地阻止窗口過大,但不能防止窗口縮小,因為較小的窗口可以和正常窗口有同樣的Bhattachayya系數。文獻[5-6]對目標核函數直方圖進行Kalman濾波來更新目標模型,但其尺度更新方法主要還是基于文獻[4]的方法。
首先確定初始目標及其區域,設定初始搜索窗口,然后計算出目標的色度(Hue)分量的直方圖,并以此作為目標的顏色模型;在跟蹤的過程中,對視頻圖像中的每一個像素,通過查詢顏色模型,得到目標像素的概率,圖像處理區域外的其他區域做為概率為0的區域。經過上述處理,將視頻圖像轉換為概率投影圖。則設(x,y)是投影圖中(x,y)處的像素值。定義搜索窗口的零階矩M00和一階矩M01、M10分別如下:

則窗口的質心位置為:

然后根據M00調整搜索窗口的大小,設S為搜索窗口的尺寸,定義:

將搜索窗口的中心移動到質心位置,如果移動距離大于預先設定的閾值,則進行新一輪的窗口位置和尺寸調整。若小于預設閾值,認為收斂條件滿足,則處理下一幀圖像。我們從上面的分析得知CamShift跟蹤算法能夠實時給出目標的質心位置,在目標形變時,能夠自適應的調整搜索窗口的尺寸大小。
跟蹤過程中,如果跟蹤窗口過大,跟蹤窗內就可能包含過多的背景而影響跟蹤結果。另外,在多目標跟蹤中,一個跟蹤窗內就可能會包含多個跟蹤目標等。但若窗口過小,跟蹤窗口內過少的目標信息不能有效跟蹤目標,從而可能使得目標丟失。因此,在跟蹤過程中自動更新跟蹤窗口是改進跟蹤算法的關鍵。
跟蹤窗口位置及尺度的預測的主要思想是,用目標在前幾幀的位置預測下一幀的位置。假設xt、yt、wt分別為t時刻搜索窗口中心的橫坐標、縱坐標和尺寸。則窗口中心橫向運動速度、縱向運動速度、橫向運動加速度、縱向運動加速度以及窗 口 尺 寸 變 化 速 度 和 變 化 加 速 度 分 別 為 Vxt、Vyt、axt、ayt、VWt、aWt。 用 xt+1、yt+1、wt+1表示質心橫坐標、縱坐標、及窗口尺寸在t時刻的預測值。
那么

在跟蹤過程中,每一幀都要計算|Wt+1-Wt|,設ε為設定的閾值,若|Wt+1-Wt|>ε,則說明背景像素對跟蹤效果影響比較大,窗口的位置和大小尺寸需要修正。相反,則用預測值替代原算法的實際計算結果,減小背景對跟蹤結果的影響。
實驗結果在Windows XP系統下采用Visual C++與Opencv函數庫編程實現。
該視頻是一組行人由近及遠運動的視頻,該視頻中動態目標尺寸逐漸變小。如圖2所示,原始算法不能對目標進行有效跟蹤,甚至丟失動態目標。而改進算法能根據目標的尺寸變化自適應調整窗口大小,對運動目標進行有效的跟蹤,如圖1所示。

圖1 改進算法的跟蹤結果Fig.1 Results of improved algorithm

圖2 原始算法的跟蹤結果Fig.2 Results of original algorithm
該視頻是一組行人跟蹤的視頻序列,視頻中運動目標由遠及近行走,尺寸逐漸增大。如圖4所示,在改進的算法中,跟蹤窗口能夠根據目標尺寸的變化而自適應增大,進行良好的跟蹤。而原始算法窗口也在逐漸變換,但是并不能對目標進行有效的跟蹤,如圖3所示。

圖3 原始算法跟蹤結果Fig.3 Results of original algorithm

圖4 改進算法的跟蹤結果Fig.4 Results of improved algorithm
跟蹤尺度不變的算法可能因為目標尺寸的逐漸變化丟失運動目標,而本文方法能通過預測窗口尺寸和目標質心的位置自適應改變跟蹤窗口,實驗結果表明該改進算法可以自動選擇合適的跟蹤窗口大小,取得良好效果。另外,本文的尺度更新算法具有通用性,它也可以用來改進其它跟蹤算法。進一步的研究方向為加入一定的目標圖像的幾何結構信息,使目標跟蹤的魯棒性加強。
[1]Comaniciu D,Ramesh V,Meer P.Real-time tracking of nonrigid objects using mean shift[J].In:IEEE International Proceeding on Computer Vision and Pattern Recognition,2000(2):142-149.
[2]彭寧嵩,楊杰,劉志,等.Mean Shift跟蹤算法中核函數帶寬的自動選取[J].軟件學報,2005,16(9);1542-1550.PENG Ning-song,YANG Jie,LIU Zhi,et al.Automatic selection of kernel-bandwidth for mean-shift object tracking[J].Journal of Software,2005,16(9):1542-1550.
[3]張恒,李立春,于起豐.尺度方向自適應 Mean Shift跟蹤算法[J].光學精密工程,2008,16(16):167~173 ZHANG Heng,LI Li-chun,YU Qi-feng.Scale and direction adaptive mean shift tracking algorithm[J].Optics and Precision Engineering,2008,16(16):167-173.
[4]Bradski G R.Computer vision face tracking for use in a perceptual user inerface[J].IEEE Workshop on Applications of Computer Vision,1998,18(4):214-219.
[5]彭寧嵩,楊杰,等.Mean-Shift跟蹤算法中目標模型的自適應更新[J].數據采集與處理,2005,20(2):125-129.PENG Ning-Song,YANG Jie,et al.Mean-Shift tracking with adaptivemodelupdatemechanism[J].JournalofDataAcquisition&Processing,2005,20(2):125-129.
[6]PENG Ning-Song,YANG Jie,LIU Zhi.Mean-Shift blob tracking with kernel histogram filtering and hypothesis testing[J].Pattern Recognition letters,2005,26(5):605-614.