翟永前,于惠芬,趙 力,鄒采榮
(1.南京鐵道職業(yè)技術(shù)學(xué)院,江蘇 南京 210015 2.東南大學(xué)信息科學(xué)與工程學(xué)院,江蘇 南京 210096)
智能交通系統(tǒng)ITS(Intelligent Transportation System)以及交通智能管理技術(shù)成為近年來的研究熱點(diǎn)車輛跟蹤是基于視頻技術(shù)的智能交通檢測(cè)系統(tǒng)中最關(guān)鍵的技術(shù)之一,也是計(jì)算機(jī)視覺研究領(lǐng)域的一個(gè)重要課題[1]。視頻的目標(biāo)跟蹤是對(duì)視頻序列中目標(biāo)的時(shí)空變化進(jìn)行監(jiān)控,包括位置和大小等。在一段交通視頻中,若想獲得特定的某輛車的一些交通參數(shù)和特征,就必須將它與同幅圖片中所有檢測(cè)出來的其它車輛區(qū)別開來。跟蹤等價(jià)于在連續(xù)的視頻幀之間創(chuàng)建基于位置、顏色和大小等有關(guān)特征的匹配問題。常用的基于視頻跟蹤方法主要有模板匹配、基于特征的跟蹤、基于區(qū)域匹配的跟蹤和Kalman濾波器預(yù)測(cè)方法[2-5]。本文提出一種使用Kalman濾波器預(yù)測(cè)車輛位置,并用距離和顏色信息輔助識(shí)別車輛的跟蹤方法,還用實(shí)際城市道路的視序列對(duì)該算法進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,該算法能夠有效地對(duì)多個(gè)運(yùn)動(dòng)車輛進(jìn)行跟蹤。
車輛跟蹤算法以車輛區(qū)域的外接矩形對(duì)車輛目標(biāo)進(jìn)行標(biāo)識(shí),對(duì)已經(jīng)出現(xiàn)在視場(chǎng)內(nèi)并且已進(jìn)入跟蹤狀態(tài)的目標(biāo),均對(duì)其跟蹤窗口賦予一個(gè)固定標(biāo)號(hào)。Kalman濾波器能較好的預(yù)測(cè)目標(biāo)在下一幀出現(xiàn)的位置,縮小搜索范圍,但是Kalman濾波跟蹤的缺點(diǎn)也非常明顯,當(dāng)運(yùn)動(dòng)目標(biāo)是非線性運(yùn)動(dòng)時(shí),就很難用它來進(jìn)行跟蹤,它的抗干擾能力也比較差。因此,在實(shí)際應(yīng)用中,很少把Kalman濾波器單獨(dú)用來跟蹤,而是結(jié)合其它算法一起使用。因此,本文在采用Kalman濾波器預(yù)測(cè)目標(biāo)車輛在下一幀的位置和大小后,利用中心點(diǎn)的距離和顏色信息的匹配來輔助目標(biāo)的跟蹤。
我們首先利用Kalman濾波預(yù)測(cè)車輛位置。Kalman濾波器對(duì)于平滑或近似平滑有很好的預(yù)測(cè)效果,預(yù)測(cè)具有無偏、穩(wěn)定和最有的特點(diǎn),而且簡(jiǎn)單易行。對(duì)于在交通環(huán)境不太復(fù)雜的路況,可以近似認(rèn)為是直線勻速運(yùn)動(dòng)的,因此在本文的車輛跟蹤算法中,采用Kalman濾波器完成車輛位置的預(yù)測(cè)部分。根據(jù)Kalman濾波器的原理和運(yùn)動(dòng)車輛的特點(diǎn),我們必須首先建立車輛勻速運(yùn)動(dòng)的Kalman濾波器模型。
對(duì)于實(shí)時(shí)視頻序列,每?jī)蓭瑫r(shí)間間隔比較小,可以認(rèn)為目標(biāo)在相鄰幀間運(yùn)動(dòng)變化緩慢,近似為勻速運(yùn)動(dòng)。根據(jù)動(dòng)力學(xué)則有
其中,x(t)和x(t-1)分別表示質(zhì)點(diǎn)在t和t-1時(shí)刻的位置,Δt為兩幀時(shí)間間隔,v為車輛的速度,可見系統(tǒng)為線性動(dòng)態(tài)模型。
定義系統(tǒng)的狀態(tài)向量X(t)和觀測(cè)向量Y(t)分別是由表示車輛的外接矩形框的中心點(diǎn)在t時(shí)刻的坐標(biāo)的x(t)和y(t)值,表示矩形框的寬度w(t)和高度h(t)值,以及前4個(gè)分量的運(yùn)動(dòng)速度vx(t),vy(t),vw(t)和vh(t)組成。根據(jù)Kalman濾波器方程有
式中,X(t)和X(t-1)是t和t-1時(shí)刻的狀態(tài)向量;Y(t)是t時(shí)刻的觀測(cè)向量;A和H分別是系統(tǒng)的參數(shù)矩陣;V表示觀測(cè)噪聲,呈高斯分布,其均值為零;協(xié)方差矩陣為R(可用背景圖像中某點(diǎn)在一段時(shí)間內(nèi)的像素值的方差表示)。
如果在檢測(cè)到新出現(xiàn)的一輛車時(shí),就產(chǎn)生一個(gè)Kalman濾波器,并以檢測(cè)到的車輛的外接矩形框的中心點(diǎn)的位置、寬、高作為初始狀態(tài)輸入濾波器。Kalman濾波器具有自適應(yīng)功能,即使設(shè)置的初始狀態(tài)不對(duì),它也可以從這個(gè)不太準(zhǔn)確的狀態(tài)開始自動(dòng)進(jìn)入到正確狀態(tài)。因?yàn)楸疚某跏紶顟B(tài)的速度難以準(zhǔn)確地獲得,人為設(shè)置的值可能和實(shí)際狀態(tài)存在較大偏差。因此,在開始時(shí)可以將預(yù)測(cè)誤差的協(xié)方差矩陣設(shè)置比較大的數(shù)值,讓濾波器得知,此時(shí)存在較大誤差,應(yīng)當(dāng)縮短收斂時(shí)間。
我們采用距離信息為主、顏色信息為輔的策略進(jìn)行匹配幀間車輛匹配,用Kalman預(yù)測(cè)來確定搜索區(qū)域的范圍。距離信息用于目標(biāo)的跟蹤,顏色信息用于判別跟蹤是否正確。
在距離匹配過程中,跟蹤需要保存的量包括:Kalman濾波器和上一幀中檢測(cè)到的目標(biāo)車輛矩形,由上一幀的結(jié)果對(duì)當(dāng)前幀的預(yù)測(cè)矩形和當(dāng)前檢測(cè)出來的矩形。
應(yīng)用Kalman濾波器預(yù)測(cè)矩形后,分別計(jì)算檢測(cè)到的車輛區(qū)域矩形與預(yù)測(cè)矩形之間距離,將在視頻幀中檢測(cè)或跟蹤到的車輛目標(biāo)記為C(xnk·ynk)。其中xnk和ynk分別是第n幀中k第個(gè)車輛目標(biāo)的外接矩形的中心點(diǎn)所在的位置。根據(jù)Kalman濾波器對(duì)當(dāng)前幀預(yù)測(cè)的目標(biāo)記為)。其中和分別是對(duì)第n幀中第j個(gè)車輛目標(biāo)進(jìn)行預(yù)測(cè)得到的中心點(diǎn)位置。該中心點(diǎn)與當(dāng)前幀中檢測(cè)出來的車輛的外接矩形的中心點(diǎn)之間的距離為
利用這個(gè)公式,可以計(jì)算出通過上一幀的檢測(cè)結(jié)果得到的利用Kalman預(yù)測(cè)的車輛外接矩形與當(dāng)前幀中檢測(cè)出來的車輛外接矩形中心點(diǎn)的距離,當(dāng)矩形間距離等于0或者小于某個(gè)閾值時(shí)就賦值為1,即檢測(cè)矩形與預(yù)測(cè)矩形匹配;否則就賦值為0,即不匹配。由于在一幀視頻中出現(xiàn)的目標(biāo)數(shù)目不會(huì)很多,所以使用窮舉的方法來搜索幀間距離的計(jì)算量不會(huì)太大。經(jīng)過這樣的計(jì)算就可以得到如表1形式的矩陣。
表1 跟蹤匹配表
其中,檢測(cè)矩形a、b、c、d代表當(dāng)前幀中檢測(cè)出來的車輛外接矩形的標(biāo)號(hào),預(yù)測(cè)矩形①、②、③、④代表通過上一幀的檢測(cè)結(jié)果得到的利用Kalman預(yù)測(cè)的車輛外接矩形的標(biāo)號(hào)。
將預(yù)測(cè)的矩形框與檢測(cè)出來的矩形框做匹配,可能有以下幾種情況。
(1)理想情況下,預(yù)測(cè)矩形與檢測(cè)矩形只有一個(gè)對(duì)應(yīng)關(guān)系。一對(duì)匹配(如預(yù)測(cè)矩形②與檢測(cè)矩形a)說明檢測(cè)矩形所代表的車輛屬于預(yù)測(cè)矩形對(duì)應(yīng)的跟蹤,此時(shí)僅對(duì)跟蹤模板更新,無須進(jìn)一步處理;
(2)沒有對(duì)應(yīng)匹配(如檢測(cè)矩形d)的檢測(cè)矩形,表示這是新進(jìn)入的車輛,剛被檢測(cè)出來,隨之將產(chǎn)生一個(gè)新跟蹤;
(3)沒有對(duì)應(yīng)匹配(如預(yù)測(cè)矩形①)的預(yù)測(cè)矩形,表示該跟蹤中止,即車輛駛出觀測(cè)范圍;
(4)一個(gè)預(yù)測(cè)對(duì)應(yīng)著兩個(gè)或更多的檢測(cè)矩形,即有一對(duì)多匹配(如預(yù)測(cè)矩形③和檢測(cè)矩形b和c),表示預(yù)測(cè)的矩形位置和周圍多個(gè)檢測(cè)矩形都很靠近,這種情況通常是預(yù)測(cè)誤差較大或有些車輛突然加速和靠近其它車輛所致。
對(duì)于這種一對(duì)多的匹配,我們可以引入顏色特征來輔助判斷目標(biāo)是否匹配,在位置比較靠近預(yù)測(cè)矩形的幾個(gè)檢測(cè)矩形中,顏色與上一幀的檢測(cè)結(jié)果最相似的才認(rèn)為是最匹配的。
在顏色匹配中,首先計(jì)算顏色的相似度可以通過計(jì)算矩形內(nèi)的顏色直方圖獲得。自從1991年Swain和Ballard提出的將顏色直方圖作為圖像的索引以來[5],在基于內(nèi)容的圖像檢索中得到了廣泛的關(guān)注。其主要思想是根據(jù)顏色直方圖統(tǒng)計(jì)顏色空間中每種顏色出現(xiàn)的概率,然后對(duì)顏色之間的距離采用直方圖相交來度量顏色直方圖之間的相似性。顏色直方圖反映的是圖像中顏色的組成分布、出現(xiàn)了哪些顏色以及各種顏色出現(xiàn)的概率。其數(shù)學(xué)描述為H(i)=ni/N。其中,i表示圖像顏色取值,n表示圖像中具有顏色值為i的像素個(gè)數(shù),N是圖像像素的總數(shù)。
顏色直方圖表現(xiàn)的是圖像的一種全局特性,每一幅圖像具有唯一的顏色直方圖,但不同的圖像可能具有相同的顏色直方圖。顏色直方圖對(duì)于圖像質(zhì)量的變化(如模糊)也不甚敏感,顏色直方圖的這種特性使得它比較適合用于檢索圖像的全局顏色相似性的場(chǎng)合。因此,本文籍此進(jìn)行顏色直方圖來進(jìn)行顏色匹配。
對(duì)于檢測(cè)出來的一個(gè)目標(biāo)車輛的矩形框參數(shù)為r(x,y,w,h)。其中:x和y為矩形的左上角頂點(diǎn)的坐標(biāo),w和h是矩形的寬和高。矩形框的初始速度無法準(zhǔn)確獲得,而Kalman濾波器具有自適應(yīng)功能,即使初始狀態(tài)設(shè)置的不對(duì),它也可以從這個(gè)不太準(zhǔn)確的狀態(tài)開始逐漸進(jìn)入到正確狀態(tài),因此初始速度都設(shè)為0,因此有
對(duì)于Kalman濾波器的參數(shù)A矩陣中的Δt設(shè)置,本文所使用的視頻幀率為每秒15幀,Δt為幀間時(shí)間間隔,則Δt取為0.067秒。并且把后驗(yàn)錯(cuò)誤估計(jì)的協(xié)方差矩陣P和觀測(cè)噪聲的協(xié)方差矩陣R的初始值設(shè)為單位矩陣。
我們采用Kalman濾波器預(yù)測(cè),結(jié)合距離和顏色匹配的方法對(duì)運(yùn)動(dòng)車輛進(jìn)行跟蹤的部分實(shí)驗(yàn)效果如圖1所示。其中,度量距離的閾值采用預(yù)測(cè)矩形框的對(duì)角線長(zhǎng)度,而應(yīng)用顏色信息時(shí),設(shè)定顏色直方圖相似度為0.75。
圖1 對(duì)車輛進(jìn)行連續(xù)跟蹤
在上面的實(shí)驗(yàn)結(jié)果中每輛車有個(gè)單獨(dú)的標(biāo)號(hào),跟蹤過程中認(rèn)為是相同的車就用相同的數(shù)字來標(biāo)識(shí)。例如,在第292幀中,標(biāo)號(hào)為2的車和上一幀中標(biāo)號(hào)也為2的車被認(rèn)為是同一輛車。在第293幀中,新出現(xiàn)了一輛車,標(biāo)為5號(hào)。在第294幀中,標(biāo)號(hào)也為5的車輛就是通過跟蹤技術(shù),將同一輛車識(shí)別出來的。
為了比較本文提出的方法與其它傳統(tǒng)方法的性能和效果,我們把提出的方法與模板匹配法、區(qū)域匹配的跟蹤法以及傳統(tǒng)Kalman濾波器方法進(jìn)行了比較實(shí)驗(yàn)。在跟蹤樣本數(shù)是954的條件下,實(shí)驗(yàn)結(jié)果如圖2所示。
通過比較實(shí)驗(yàn)可以證明,在本實(shí)驗(yàn)場(chǎng)景車流量不太多和實(shí)驗(yàn)場(chǎng)景較簡(jiǎn)單的情況下,采用本文提出的Kalman濾波器預(yù)測(cè)和距離、顏色信息匹配相結(jié)合的方法,算法簡(jiǎn)單,跟蹤效果比較穩(wěn)定,正確率也較高,并且能夠?qū)崿F(xiàn)對(duì)車輛進(jìn)行穩(wěn)定的跟蹤。
圖2 跟蹤樣本數(shù)為954的車輛跟蹤實(shí)驗(yàn)結(jié)果
交通事件自動(dòng)檢測(cè)是以車輛檢測(cè)和跟蹤為基礎(chǔ)的,本文提出了一種新的基于視頻的交通事件自動(dòng)檢測(cè)與跟蹤技術(shù),主要使用Kalman濾波器預(yù)測(cè)車輛位置,并用距離和顏色信息輔助識(shí)別車輛的跟蹤方法。我們通過實(shí)際城市道路的視序列對(duì)該算法進(jìn)行的實(shí)驗(yàn)。結(jié)果表明,該方法具有較好的效果,能夠?qū)崿F(xiàn)對(duì)車輛進(jìn)行穩(wěn)定的跟蹤。
[1]張敬磊,王曉原.交通事件檢測(cè)算法研究進(jìn)展[J].武漢:武漢理工大學(xué)學(xué)報(bào),2005,(2):30-34
[2]Staufer C,Grimson W E L.Learning patterns of activity using real-time tracking[J].IEEE Transactions on Pattern Analysis/& Machine Intelligence,2000,22(8):747-757
[3]Jang D-S and Choi H-I.Active models for tracking moving objects[J].Pattern Recognition,2000,33(7):1135-1146
[4]Shoichi Araki,Takashi Matsuoaka,Naokazu Yokoya,et al.Realtime tracking of multiple moving object contours in a moving camera image sequence.IEICE Trans Inf&Syst,2000,E83-D(7):102-112
[5]Kalman R E,A new approach to linear filtering and prediction problems[J].Transaction of the ASMF:Journal of Basic Engineering,1960(3):35-45
[6]Swain M J,Ballard D H.Color indexing[J].International Journal of Computer Vision,1991,7(1):11-32