宋亞姬,戚曉艷,孫 艷
(空軍航空大學 航空基礎學院,吉林 長春)
近年來無論在現代防御還是海上和空中交通管制系統中運動目標跟蹤都是不可缺少的重要技術,隨著現代航空航天事業及現代信息化戰爭的發展,運動目標跟蹤技術得到了高度重視,成為計算機視覺領域的研究熱點問題。所謂的目標跟蹤是指在視頻序列中檢測目標,確定運動目標的位置、大小和目標運動軌跡,并實時估計其運動參數。由于目標跟蹤在實現上非常復雜,在許多技術方面還不是很完善,因此對目標跟蹤方法的研究具有重要的理論價值和廣闊的發展前景[1]。
連續自適應均值漂移算法(Camshift)是通過統計迭代運算來尋找目標位置,算法簡單容易實現,應用非常廣泛。但是當目標較小或快速移動時容易丟失目標,有遮擋的情況下不能自我恢復跟蹤。本文在此基礎上進行了改進優化,用核直方圖來計算目標的概率分布,應用Kalman 濾波來預測目標位置,并通過與Camshift 進行反復的跟蹤迭代,在連續圖像序列中實時搜索目標進行跟蹤。通過仿真實驗驗證了算法的可行性。
圖像中物體顏色的全局分布即不同顏色在圖像中出現的概率可用顏色直方圖來描述,應用顏色直方圖對運動目標進行跟蹤,不容易受到目標快速移動、旋轉等形狀尺寸發生變化的影響。將原始圖像通過顏色直方圖轉換為色彩概率分布圖像的過程被稱為直方圖背投影。應用Camshift 算法進行目標跟蹤首先要通過顏色直方圖來提取目標圖像的顏色特征[2],實驗中采集的圖像通常為RGB 格式,由于Camshift 算法只能識別HSV 格式圖像,因此要將圖像轉換為HSV格式。將目標的概率分布映射到觀測圖像,將顏色空間下的H 通道的灰度值反向投影,經過處理原圖像轉換成了灰度圖像。

其中qu表示直方圖中分量u 的像素值;c(xi)為像素xi的值;δ為Kronecker 函數。將直方圖的尺度從[0,max(q)]變成[0,255]:
通過以上處理,將視頻圖像中目標的原像素點x的灰度值u 由其所對應的概率值pu代替,先求出圖像的直方圖,得到反向投影矩陣,即為直方圖反向投影的過程。在此過程中將原來圖像的灰度直方圖經過計算出得出不同色度值的概率分布,就將原始圖像通過直方圖反向投影成了二維的色彩概率分布圖。
Kalman 濾波是一種高效率的遞歸濾波器,由狀態方程和觀測方程來進行描述,通過系統輸入輸出觀測數據,對系統狀態進行最優估計[3]。Kalman 濾波器由以下差分方程來描述系統的狀態:

Kalman 濾波對控制系統的最優化估計包括兩個關鍵環節:預測和修正。通過預測環節Kalman 濾波通過對當前系統狀態建立觀測模型到下一時刻系統狀態的先驗估計;在得到先驗估計后,通過對先驗估計和觀測值的分析得到后驗估計,此為修正環節。通過反復進行預測、修正,就實現了Kalman 濾波工作過程。
連續自適應均值漂移(Camshift)算法基于無參密度估計理論,在均值漂移算法的基礎上擴展而來。CamShift 是一種自適應算法,能夠對目標的大小和形狀進行自適應調整,在目標尺寸和形狀變化較大的情況下也能實現跟蹤。在d 維歐式空間Rd中,核核密度估計為:

為了提高在旋轉、遮擋等復雜情況下的目標跟蹤成功率,改善Camshift 算法圖像分割耗時長、計算量大等問題,同時為了減少尋找目標的時間,克服顏色干擾的問題,在跟蹤中引入了Kalman 濾波器。將Kalman濾波對當前幀圖像中目標的質心位置的預測值與CamShift 算法跟蹤結果進行比較分析來判定[4]。具體實現過程如下,其中i 為視頻序列中圖像的幀數:
(1) 計算直方圖背投影,在初始幀圖像中對搜索窗的位置和大小初始化,從搜索窗中的目標區域內提取目標的顏色直方圖,同時提取目標的質心坐標,記為(xi,yi),其中i=1,為初始幀圖像。

(5) 更新模型,獲取下一幀圖像,跳轉到第(2)步,重新執行搜索過程。
為驗證算法的可行性,用Matlab 軟件進行了仿真實驗。圖1 給出了直方圖背投影實驗的部分實驗結果。通過實驗結果可知,如果把整幅圖像設置為搜索區域,利用顏色直方圖計算顏色概率分布時,與跟蹤目標具有相似顏色特征的區域被一并保留,則跟蹤結果受到一定程度的干擾。而設置合適的搜索窗后,在比搜索窗稍大一些的區域進行搜索時,可將搜索窗外區域的顏色概率視為零,從而大大減少算法的計算量,在較大程度上削弱與目標具有相似顏色特征的景物所帶來的干擾問題。

圖1 直方圖背投影圖
當算法迭代超過15 次或相鄰兩次搜索得到的質心坐標差值在4 個像素以內時作為質心收斂的條件,將算法檢測中提取的二值圖像中目標的質心坐標與加入Kalman 濾波預測后實驗結果進行比較。圖2 給出了圖像序列中第50、51、52 幀圖像的跟蹤實驗結果。表1 給出了部分圖像中運動目標質心位置經Kalman 濾波預測的結果,坐標以像素為單位。

表1 Kalman 預測的目標質心部分實驗結果

圖2 跟蹤實驗結果
由圖2 可知,引入了Kalman 濾波后減少了跟蹤過程中對顏色的過分依賴,當目標遇到大面積顏色干擾時,可通過Kalman 濾波對目標質心位置的預測值來修正跟蹤結果,實現準確跟蹤。通過表1 數值可知,在同一幀圖像中,在應用Kalman 預測之后跟蹤結果的誤差基本在4 個像素以內,誤差符合預期目標,跟蹤效果較為理想。
本文針對運動目標跟蹤中常見問題進行了系統分析。應用顏色直方圖建立目標的顏色概率分布,當目標存在旋轉、變形等復雜情況下Camshift 算法跟蹤目標容易丟失,為減少目標尋找與匹配的時間,提高跟蹤效率,在算法中引入了Kalman 濾波器。在直方圖背投影實驗中,設置合適的搜索窗,搜索窗外的區域顏色概率視為零,在較大程度上削弱相似顏色特征帶來的干擾問題。利用目標的外接矩形框大小、質心等特征對目標進行特征匹配,應用Kalman 濾波器對目標位置進行預測,為Camshift 算法提供起始點,將算法的最終收斂點作為每幀的跟蹤結果,并將其返回給濾波器進行狀態更新,反復迭代實現了對運動目標的連續跟蹤。由于Kalman 濾波器具有計算量小,可實時處理等優點,引入Kalman 濾波后大大減少了算法的迭代次數,提高了算法的運算速度。仿真實驗表明,該算法能夠有效地抑制各自算法的不足,減少了算法的計算量,有效地提高了跟蹤的成功率。