(沈陽理工大學 遼寧 沈陽 110159)
智能視頻監控系統中運動行人跟蹤技術研究
劉釗
(沈陽理工大學 遼寧 沈陽 110159)
運動目標的跟蹤算法Camshift是在跟蹤問題時會被利用到的方法。不但在部分遮擋的情況下跟蹤目標,而且還能達到在原有基礎算法上智能的追蹤移動的目標,并且提高原算法的適用范圍和準確率。
行人跟蹤;MeanShift;目標檢測
針對時間跟蹤算法復雜的動態場景雖然有很多算法,但是目前對于跟蹤算法中很多算法的應用在復雜的動態場景中時并不是特別理想,很多時候會收到影響,比如會受到光線、天氣或雜亂背景等影響,這些算法只能在固定不變的背景或者是在特定的環境下才能夠使用。研究人員不得不提高算法的通用性能用來克服一些困難,尤其是大多算法應用在復雜的動態場景中的時候。因此運動目標智能檢測跟蹤算法仍然是現在研究人員的研究重點。
MeanShift算法屬于直方圖方法,它的計算過程是:將圖像中所有點的像素值作為統計數據,并將其分為相等的若干區間,然后從(0,0)坐標處開始統計,將所有的像素值分布到各自適合的區間,作出直方圖,以待觀察。假如圖像的像素值由256,256,256個數值組成,則計算維數過大,不適宜使用直方圖方法,所以可以采用抽樣算法把數值范圍減小到16,16,16即可滿足直方圖計算條件。
(一)目標模型的選取和描述。在MeanShift算法中,通常是用某一個隨機變量參數來表示目標區域中的像素點,然后確定一個中心點,這里可以參考核函數的原理。對于離中心點越遠的像素值通常對整體特征的影響較小,所有給予較小的權重。給不同區域的像素點不同的權重可以是算法更加準確的描述特征。算法用一個物體的灰度或色彩分布來描述這個物體,假設物體中心位于 ,則該物體可以表示為:
(4-1)
(二)候選模型的描述。跟蹤目標的根本原理就是需找不同幀中相同的特征部分,所有對于候選模型的描述應該采取與目標模型完全相同的描述方法。
(4-2)
(三)目標相似性度量
(4-3)
式(4-3)在目標點泰勒展開可得:
(4-4)
化簡后得到

(4-5)
即為Meanshift算法的迭代表達式,利用此式就可以在當前幀找到目標最匹配的區域。
(四)經典MeanShift跟蹤算法的優缺點。其中對目標區域以及后續候選區域的概率密度采用直方圖表示法,此方法簡單直接,且易于對比,所以基于此本算法有以下優點:算法計算量小、復雜度低、具有較高的魯棒性。
但與此同時,算法的使用范圍受到了較大的限制,主要原因如下:(1)缺乏更新機制,跟蹤全程都采用的是初始幀作為目標模型,對環境和突發狀況,如光照變化或者遮擋的處理欠佳,易導致跟蹤失敗。(2)統計數據單一,雖然算法簡單,可以大大提高跟蹤的速度,但是對背景的特定要求較高,一旦遇到背景顏色與目標顏色過于接近,算法設定的相似性參數很容易達到閾值范圍,對目標的跟蹤造成誤判,導致跟蹤失敗。(3)每幀圖像之間的關聯過大,在任意一次計算過程中,相鄰兩幀都存在很大的關聯性,當前幀搜素的開始位置即為前一幀目標圖像的質心。如果遇到跟蹤目標突然加速的情況,導致兩幀之間沒有重疊的部分,甚至出現較大的距離,此時對于當前幀開始的位置如果繼續采用前一幀的中心位置,必然會造成較大的誤差。(4)跟蹤窗口大小固定。
本文提出用高斯函數對無遮擋物的運動行人目標區域建立背景模型,通過分析監控視頻流的前幾幀建立運動行人目標區域的標準模型;在隨后的視頻流中,利用幀差法檢測出運動行人目標區域,分析該區域與標準模型的差異,可以確定有無遮擋物以及遮擋物的位置。發現區域中有遮擋物時,CamShift算法通過將遮擋物區域的H分量置0的方法消除了跟蹤偏移問題,從而較為準確地跟蹤了運動行人。算法的詳細過程如下:
(1)圈定初始目標區域,建立標準模型。在監控視頻流的前幾幀,使用手動方式圈定運動行人目標區域。根據不同圖像序列,對目標區域進行適當的擴展,以方便準確地感知遮擋物的存在。本文中向圈定的目標區域四周擴展了20個像素值。利用高斯模型對前幾幀目標區域進行背景建模,得到背景模型的二值化圖像。
(2)計算遮擋物區域。利用幀差法獲取當前幀的運動行人目標區域,將該區域的大小調整為背景模型的大小,假設該區域二值化圖像為cur。同樣,已取得的背景模型與每幀圖像中檢測到的運動行人區域也常常有重疊的部分。因此,將背景模型base與當前幀的目標區域圖像cur進行與運算,即base&cur,得到二者的公共部分,再將當前幀減去公共部分,即cur-(base&cur),得到當前幀目標區域與公共部分有差異的部分,并將此結果重新賦給背景模型base。
對當前幀的目標區域圖像cur進行顏色空間轉換,提取HSV空間的H分量,并重新賦給cur;利用目標區域H分量灰度圖cur和背景模型base再次計算cur-(cur&base),如果cur-(cur&base)中沒有明顯目標,則認為目標區域cur中沒有出現遮擋物,則CamShift算法不用做任何調整,繼續對運動目標進行跟蹤。
如果cur-(cur&base)中出現明顯目標,則認為目標區域中出現了遮擋物,cur-(cur&base)中的目標區域就是遮擋物的位置。根據遮擋物的位置,將當前幀H分量灰度圖中對應位置的值清零,得到當前幀的新的H分量灰度圖
在本小節中,利用運動物體和運動行人遇到遮擋物的視頻作為實驗對象。本文對原始的CamShift算法進行了改進,利用高斯模型對運動目標區域進行建模得到標準模型,跟蹤過程中每一幀圖像中運動目標區域對比標準模型可以有效地找到遮擋物的位置,忽略相應位置上的H分量灰度值,從而避免了遮擋物對CamShift算法跟蹤的干擾,得到了準確的運動目標位置。將改進的CamShift算法應用于小杯子(運動目標)逐漸接近大杯子(遮擋物)的視頻流,
重點部分介紹了MeanShift算法和CamShift算法的基本原理。CamShift算法的運行速度快,算法復雜度低,但是當運動目標目標的顏色與監控背景顏色一樣或者接近時,跟蹤的區域就會出現偏移。文中提出了一種改進的CamShift算法,它能夠解決運動行人目標路過遮擋物時,特別是運動行人目標的顏色跟遮擋物的顏色相似時,跟蹤出現明顯偏移的問題。接著通過兩組實驗比較分析了原始CamShift算法和改進的CamShift算法的有效性,證實了改進的CamShift算法能夠排除遮擋物的干擾,使跟蹤效果更好。
[1]宋路.基于模板匹配與線性預測的目標跟蹤算法[J].吉林大學學報(信息科學版).2015
劉釗,男,沈陽理工大學信息科學與工程學院,計算機技術專業碩士研究生,研究方向計算機技術。