余桂蘭
(廣東石油化工學院 計算機與電子信息學院,廣東 茂名 525000)
智能視頻監控在安全領域發揮著越來越重要的作用,成為近年來智能交通、模式識別等領域中的研究熱點。許多學者對行人或者其他目標進行了研究,專門針對車輛的跟蹤識別還為數不多,隨著車輛數量的增多,車輛跟蹤監控也應該越來越被人們所重視。Lin Liu[1]等針對攝像頭的透視問題,利用道路上的交通標志和斑馬線等信息,計算圖像的消失點和單應性變換,對視頻圖像進行整流修正;文獻[2]提出了基于投影的曲線模型匹配方法,利用投影的完整度、匹配點、偏移量期望和方差的加權和作為相似性度量,利用車輛模型匹配進行車輛的檢測和跟蹤;文獻[3]針對小角度、偏離道路中心的攝像頭下車輛的跟蹤,開展了有關粘連車輛的分割及跟蹤方法的研究;文獻[4]利用卡爾曼殘差來控制卡爾曼濾波器,并與MeanShift算法相結合來對車輛進行跟蹤。本文則針對連續自適應均值漂移 (CamShift)算法在目標顏色與背景相似,特別是在光照變化及建筑物、數木等陰影的影響下,幾乎無法對車輛進行跟蹤的情況進行改進,提出了一種針對特定車輛的跟蹤算法,該算法在CamShift算法的基礎上,采用Kalman濾波對車輛運動趨勢進行預測,并通過空間區域劃分和特征融合等手段,實現對目標車輛的有效跟蹤。
連續自適應均值漂移(Continuously AdaptiveMean-Shift,ComShift)算法是基于MeanShift的改進算法,它是基于顏色概率分布的非參數迭代技術算法,它通過計算視頻圖像序列中運動目標的顏色信息直方圖,然后將直方圖反向投影轉化成色彩概率分布,最后將視頻圖像上一幀的搜索中心和窗口大小作為下一幀MeanShift算法的搜索窗口的初始值進行迭代計算,并自動調整搜索窗口的大小,從而實現對目標的跟蹤,具有較好的實時性和穩健性。該算法在沒有光照影響的情況下,或者目標顏色與背景色差別較大時跟蹤效果良好,但如果背景的顏色與目標顏色相近,或者目標附近有與目標色調相近的物體時,算法會將其包含在內,導致跟蹤窗口擴大,跟蹤失效,因此必須對其進行改進。
Kalman濾波是基于最小方差的最佳線性遞歸濾波算法,它不需要全部過去的觀察數據,只根據前一個估計值x^k-1和最近一個觀察數據就可以估計出當前值。即在前一時刻狀態估計值的基礎上,根據當前時刻的測量值,遞推得到當前時刻的狀態估計值。設目標動態系統的狀態空間模型為:

其中狀態向量 X(k)=[x(k),y(k),vx(k),vy(k)],觀測向量Z(k)=[vx(k),vy(k)],x(k),y(k)分別表示目標車輛質心在 x 軸和 y 軸上的坐標,vx(k)=[x(k)-x(k-1)]/Δt,vy(k)=[y(k)-y(k-1)]/Δt分別表示目標車輛運動速度在x軸和y軸上的分量,為時間間隔,這里取相鄰兩個時間的幀數差1。則系統的狀態轉移矩陣為觀測矩陣為w(k),μ(k)分別為過程噪聲和觀測噪聲,是均值為零的高斯白噪聲且相互獨立,其協方差分別為單位矩陣Q(k)和R(k)。Kalman濾波正是由于采用遞推算法,速度快,在控制系統中處理實時信息有很大的優勢。
傳統的CamShift算法只提取了目標的顏色特征,然而車輛顏色雖然有好多種,但路面上的相似顏色車輛卻非常多,因而單取顏色特征是不合適的。本文針對道路情況及攝像頭對路面車輛的拍攝情況,將目標車輛進行了空間區域劃分,并且從不同角度提取目標車輛的三種不同的特征,進行加權融合。下面分三步對算法改進過程進行具體描述。
不管車輛是在行駛中還是靜止不動,攝像頭通常都比較難從一個角度獲得整個車輛的影像,因此很有必要將車輛在空間上進行劃分。Lazebnik等提出了空間金字塔匹配模型[5],首先將圖像進行分層,每層對上一層圖像塊進行n?n塊劃分,對子圖像塊進行局部特征量化,在二維圖像空間建立金字塔,然后計算加權的子圖像區域局部特征直方圖交叉,該方法能夠較準確表達圖像塊的空間位置信息,在圖像分類上獲得更好的性能。本文借鑒空間金字塔匹配模型思想,根據車輛特性,把車輛劃分成幾個區域:前臉、后部、側面、頂部,建立車輛特性模型, 則特定車輛目標圖像可表達為:Y={Y1,Y2,Y3,Y4},然后對各子塊圖像統計直方圖特征并賦予一定的權值。
車輛是典型的剛體目標,而且每輛車都有固定不變的車牌號碼,但如果距離太遠或者目標太小,車牌識別則失去意義。因此車輛的顏色及形狀特征是較魯棒的特征,但顏色特征受光照條件、相似背景的干擾很大。只采用目標顏色H分量直方圖作為特征,目標的特異性不明顯,有可能在搜索過程中誤將干擾區域判定為目標,導致跟蹤失效。如果將紋理特征、目標輪廓邊緣與顏色特征進行融合,可以有效補償單一顏色特性的不足,從而使目標在反向投影圖上明顯區別于其他區域。
1)顏色特征
顏色特征在車輛識別中雖然是最容易被干擾的,但也是不可或缺的特征。本文將RGB空間轉化為HSV空間后,提取Hue分量建立顏色特征模型:

2)紋理特征
紋理通常情況下不會受光照和背景色影響,是圖像分析中一個較為穩定的特征。局部二值模式[6](Local Binary Pattern,LBP)紋理由于計算簡單、具有旋轉不變性和灰度不變性特征獲得了廣泛應用,但其閾值是中心像素的值,易受噪聲干擾。因此在LBP的基礎上進行改進形成三值編碼的局部三元模式[7](Local Ternary Patterns, LTP)紋理,在領域寬度±T 內,對圖像中每個像素gc的8領域進行采樣,每個采樣點x與中心像素gc作灰度值三值化運算:

設模版窗口為3n,權值為2i,則LTP編碼的計算公式為:

考慮到人為給定閾值T不是很科學,本文將局部區域像素灰度值的標準差σ作為T的值,它能隨著圖像數據的變化自適應調整。對輸入圖像進行LTP編碼和計算,將得到的紋理信息參與到后續的算法流程。
3)邊緣特征
車輛是典型的剛體性目標,具有邊緣不變的特性,因此可以將其邊緣特征作為算法的一個比較魯棒的特征。用來做邊緣檢測的算法有Hu矩、Canny算子、Sobel算子、拉普拉斯算子等,其中Hu矩具有旋轉、平移等的不變特性,在函數連續情況下還具有尺度縮放不變性。目標視頻跟蹤實際上是對視頻圖像幀序列進行識別,屬于離散數據,Hu矩對于離散數據不具備縮放不變性,因此本文利用改進后的6個Hu不變矩:ψ1=φ2/(φ1)2、ψ2=φ3/(φ1)3、ψ3=φ4/(φ1)3、ψ4=φ5/(φ1)6、ψ5=φ6/(φ4)2、ψ6=φ1/(φ1)6及其快速計算方法對 ψ1~ψ6 進行計算[8]。 改進后的6個Hu不變矩在目標特征提取上具有平移、旋轉和尺度縮放不變性。
鑒于CamShift算法在目標顏色與背景相近時跟蹤目標丟失問題,本文對三種特征的權值進行了限定。采用Euclidean Distance公式對前后兩幀圖像的特征點,進行相似性計算根據計算結果更新各特征的聯合概率分布:

的權值, 其中 α=D1/(D1+D2+D3)、β=D2/(D1+D2+D3)、?=D3/(D1+D2+D3),q1(t)、q2(t)、q3(t)分別代表第 t幀顏色、紋理、邊緣特性的概率密度分布。根據式(5)的融合規則可知,當某一特征在跟蹤過程中的變化較大時,其歐式距離相對較大,也即相似性較小,對跟蹤過程的貢獻也較小,因此該特征被賦予較小的權值,對跟蹤的影響也相對較小。反之亦可,起到自適應調整的作用。
算法首先根據2.1節的空間區域劃分思想,將目標車輛在空間上進行劃分。劃分分兩步進行,第一步將目標車輛劃分成四個子區域,在每一子區域上取若干個子區域塊進行顏色和紋理特征提取;第二步在第一步均衡提取的基礎上進行補償性特征提取,在四個子區域的交叉處(即Y1和Y3之間、Y1和 Y4之間、Y2和 Y3之間、Y2和 Y4之間)進行特征提取,以補充區域交叉處的顏色和紋理特征缺失。然后將顏色特征、紋理特征及邊緣特征進行加權融合。最后引入Kalman濾波對目標車輛運動趨勢進行預測,在一定程度上克服車輛運動速度快、相似背景及遮擋等問題。改進后的算法步驟描述如下:
Step1讀取視頻幀,初始化跟蹤窗口的位置和大小,并用目標質心的x、y坐標和初始速度(本文設置為當前道路規定時速的2/3)來初始化Kalman濾波器的初始狀態向量X(0);
Step2計算跟蹤窗口的Hue、LTP和Hu矩,并用式(5)計算得到特征的聯合概率分布q(t);
Step3根據式(1)對窗口的位置進行預測,執行MeanShift獲得目標質心的新位置,并作為觀測值來修正預測值;
Step4取下一視頻幀,用Step3的值更新窗口的位置和大小,同時更新Kalman濾波器的狀態向量X(k);
Step5返回Step2。
實驗首先采用傳統的CamShift算法對視頻中的車輛進行跟蹤,但車輛行駛至樹陰位置時,跟蹤窗口擴大為樹陰影大小,并且固定不動,跟蹤直接失效,因此本文不給出對比結果圖,而只給出改進的CamShift算法 (區域特征融合后的CamShift算法,這里暫稱為RCF-C算法)和本文算法(基于卡爾漫濾波的區域特征融合算法,簡稱RCFK-C算法)的跟蹤結果。視頻序列取自安裝在某二樓一角對準路口的攝像頭所采集的數據,幀圖像大小為360?240。實驗在Winsow7系統下安裝Visual Studio 2010,并配置OpenCV2.4.8視覺庫,采用C++語言編寫完成。
實驗結果如圖1和圖2所示。車輛正常行駛,并緩慢拐彎逐漸進入樹蔭中,光照產生了變化,RCF-C算法受陰影影響小,基本能夠正確跟蹤,只是在陰影中目標車輛拐彎時搜索窗口稍微擴大;RCFK-C算法因為有Kalman濾波對目標運動趨勢進行了預測,因此跟蹤情況良好,兩種算法運行結果分別如圖1和圖2的a)到c)所示。當目標車輛行駛經過顏色、紋理等特征相似的停止車輛時,RCF-C算法開始將非目標車輛包含進搜索窗口,并且在目標車輛駛離停靠車輛后,搜索窗口仍然停止在非目標車輛,跟蹤失效;而RCFK-C算法則很好地避免了這種情況,盡管在兩輛車完全并排時(從攝像頭的角度,兩輛車之間沒有縫隙),也將非目標車輛包含進搜索窗口,但由于有運動趨勢預測,在目標車輛逐漸與非目標車輛分開時,算法能夠正確判斷目標車輛并且繼續跟蹤。

圖1 RCF-C算法Fig.1 RCF-Calgorithm

圖2 RCFK-C算法Fig.2 RCFK-Calgorithm
本文對行駛中的車輛易受樹蔭或建筑物等陰影的影響以及顏色相近車輛的干擾等問題進行研究,通過均衡提取和補償性提取兩種不同的方式來提取目標車輛的三種特征,采用歐式距離對前后兩幀圖像的特征點進行相似性計算,并對其進行自適應加權融合,從而更新特征點的聯合概率分布函數,使得跟蹤窗口不受單個特征變化的影響;最后引入Kalman濾波對目標車輛的運動趨勢進行預測,減弱了相似車輛的干擾。實驗結果表明該算法是有效的,實現了較為準確的跟蹤。
[1]LIU Lin,WANG Xiu-ping.Vehicles Tracking Based on Im-ages Perspective Rectification[C].Proceedings of 2011 IEEE International Conference on Intelligent Computing and Intelligent Systems(ICIS 2011),2011(3):24-27.
[2]胡銦,楊靜宇.基于模型的車輛檢測與跟蹤[J].中國圖象圖形學報,2008,13(3):450-455.HU Yin,YANG Jing-yu.Model based vehicl e detection and tracking[J].Journal of Image and Graphics,2008,13(3):450-455.
[3]劉詩慧.視頻中粘連車輛的分割與跟蹤技術研究[D].哈爾濱:哈爾濱工業大學,2013.
[4]張秀林.基于卡爾曼濾波與MeanShift的運動車輛跟蹤[J].電子設計工程,2013,21(5):15-17.ZHANG Xiu-lin,WANGHao-quan,LIUYu,et al.Tracking of the moving vehicles based on kalman filtering and mean shift[J].Electronic Design Engineering,2013,21(5):15-17.
[5]Lazebnik S,Schmid C,Ponce J.Beyond bags of features:Spatial pyramid matching for recognizing natural scene categories[C]//2006 Conference on Computer Vision and Pattern Recognition,2006:2169-2178.
[6]Zhao G Y,Pietikainen M.Improving Rotation Invariance of the Volume Local Binary PatternOperator[C]//IAPR Conference on Machine Vision Applications,2007:327-330.
[7]TAN Xiao-yang,TRIGGS B.Enhanced local texturefeaturesets forface recognition under difficult lighting conditions[C]//Proc ofAnalysis andModelling of Faces and Gestures Conference.[S..l].Springer,2007:168-182.
[8]張琳.基于加權HU不變矩的監控視頻人體行為識別方法的研究與實現[D].西安:西北大學,2011.