蔡麗娟
摘要:本文提出了一種基于粒子濾波的交通視頻車輛跟蹤和計數(shù)方法。該方法采用圖像處理模式,利用粒子濾波和運動相關(guān)性原理,分析視頻中凸形形狀和背景信息,確定待測車輛輪廓,計算分組視頻中的車輛粒子。當(dāng)在一輛車被確定后,使用集中在粒子位置窗口的顏色直方圖相似性進行車輛的跟蹤和計數(shù)。
關(guān)鍵詞:圖像處理 粒子簇 車輛計算 車輛跟蹤
1 概述
交通智能系統(tǒng)可以有效改善交通狀況,幫助用戶選擇最佳路徑并幫助政府合理實現(xiàn)交通規(guī)劃。車輛數(shù)據(jù)在交通管理規(guī)劃中非常重要,比如車流量、速度和軌道占用率等。通常,我們采用安裝感應(yīng)線圈、超聲波傳感器等方法來獲得這些信息。但這些方法費時費力,且實現(xiàn)復(fù)雜、成本高?;诖耍杀镜?、易操作等特點的視頻處理方法在業(yè)內(nèi)推廣起來,但如何準確、高效提取視頻中的有效信息,是研究人員必須解決的難題。
本文提出一種簡單、易實現(xiàn)的視頻車輛跟蹤和計數(shù)方法,其核心是依據(jù)粒子理論[1],視頻中屬于同一車輛的粒子具有運動空間和位置相干性的特點進行分組,其難點在
于一是光照和背景迅速變化,如何獲得前景;二是被跟蹤車輛的多樣性識別;三是被其他車輛或障礙物遮擋時跟蹤。
2 基于粒子濾波的檢測算法
同一輛車粒子的判別條件是:①空間相干性,即屬于同一輛車的顆粒彼此接近,而屬于不同車輛的粒子簇間有一定的間隔。②時間連貫性,在給定幀初始位置的車輛在下一幀中不會消失,且車距保持在一定的范圍內(nèi)。③屬于同一車輛的顆粒應(yīng)該具有相同的移動方向和相似的移動速度。
粒簇分組的依據(jù)是它們的空間位置和運動矢量,后續(xù)幀的聚類中心延展可以保證粒子的時間相干性。通過驗證這些粒簇的形狀和背景相似性來檢測車輛,用直方圖的相似性來跟蹤該車輛。最后,計算粒簇與虛擬線條的交匯次數(shù)來進行車輛統(tǒng)計。
2.1 背景和粒子的獲取
以大小為240×320像素的視頻為例,它被分為若干3000幀的塊。如果這些塊的背景沒有發(fā)生明顯的變化,我們認為是相同背景的視頻。
第一步,去除背景噪音。該步驟不需要任何背景信息,這是因為根據(jù)閾值,在空間中保持靜止的粒子會被當(dāng)做與車輛無關(guān)的噪聲被刪掉。第二步,將從9×9的像素視窗中得到的顏色直方圖與已知的背景顏色進行比較,與背景有相似直方圖的粒子被丟棄。圖片1顯示了從實驗視頻中所獲得的粒子和粒子濾波處理的結(jié)果。將集中于每個粒子窗口與下一幀中集中于搜索區(qū)域像素的窗口做比較,通過采用塊與窮盡搜索匹配,使每個粒子合成估計運動矢量。
2.2 粒簇分組
本文使用K-means算法[2]對視頻幀中的粒子進行分組,以確定初始簇數(shù)。假設(shè)Nmin是一輛車必須有的最少粒簇數(shù),則每幀中最大簇數(shù)為Nparticles/Nmin,其中Nparticles為幀中的粒子總數(shù)。但由于空間粒子間距離和粒子位移,有紋理的大型汽車可能會被誤認有很多粒簇。同時,在車輛具有相同的速度和彼此靠近情況下,車輛的粒子具有相似的空間位置和運動矢量,可能會被誤認為同一車輛。因此,對于難確定的粒子簇,需要信息融合。首先,處理視頻幀得到背景;然后,考慮由兩簇粒子形成的凸集區(qū)域,對不同的灰度圖片應(yīng)用不同的距離閾值。接下來,使用二進制圖像處理消除這些區(qū)域中的噪聲或者極小區(qū)域。當(dāng)兩個形心之間的歐幾里得距離小于該粒子和它們各自的簇的質(zhì)心之間的最大距離的總和時,觸發(fā)粒子簇合并。當(dāng)兩車靠得很近并以相同的速度朝著同一方向運動時,易將其誤認為一輛車。因此,當(dāng)發(fā)現(xiàn)大規(guī)模粒子群形成凸集區(qū)域過大時,需將粒子群重新聚類分割。如圖1中所示,集群合并和簇集分裂。
2.3 車輛的檢測和跟蹤
本文依據(jù)顏色直方圖的相似度原理來實現(xiàn)車輛追蹤,對車輛構(gòu)成的粒簇凸集,通過9x9像素視窗計算區(qū)域顏色直方圖,并在運動向量指引下由前一幀下移動到當(dāng)前幀。在此區(qū)域逐漸地擴大規(guī)模以覆蓋更多的粒子。計算出與前一幀或者已處理的幀中各個像素視窗相對應(yīng)的顏色直方圖。并將當(dāng)前幀中區(qū)域顏色直方圖與前一幀中的各個顏色直方圖相比較,利用巴氏系數(shù)計算相似度,如公式(1)所示
s(h1,h2)=■■(1)
式中,s是標準化直方圖h1和h2的相似度,L是顏色粒子區(qū)域數(shù)量。
當(dāng)粒簇凸集相似度大于0.8時,認為當(dāng)前幀粒子簇與前一幀相應(yīng)簇代表同一車輛,不滿足此條件,認為是不同車輛。在追蹤過程中,根據(jù)前一幀中粒簇,與當(dāng)前幀中擁有最大相似度粒簇進行一一對應(yīng)的標記。如果粒簇在對應(yīng)過程中,出現(xiàn)了非一一對應(yīng)的情況,相交區(qū)域的每一個粒簇的相似度都要用公式2中的馬氏距離來測試,以確定對應(yīng)關(guān)系。將間距最短的粒簇選為一組。
Md(x)=■(2)
式中x=(x1,x2,…,xn)T是帶有空間位置信息和運動矢量的粒子,μ=(μ1,μ2,…,μn)T是平均值,S是x的協(xié)方差矩陣。
2.4 車輛計數(shù)
■
圖1 車輛粒子合并、分裂與計數(shù)過程
車輛計數(shù)是在代表車輛的粒簇凸集通過虛擬線條過程中實現(xiàn)的。當(dāng)一輛車通過全部虛擬線條時,車輛計數(shù)便增加一次,如圖1所示。
3 實驗分析
本實驗通過虛擬線條與粒簇凸集的交匯次數(shù)來計算車流量,并與Kim[3]算法進行對比。
實驗環(huán)境配置為CPU英特爾酷睿i5-2400和金士頓DDR3代8G內(nèi)存,通過Matlab7.13進行處理,每個畫面的平均處理時間為7.18s。對視頻中每個車道的車輛實際數(shù)目、車輛實驗計數(shù)以及兩數(shù)目的偏差進行分析。本方法平均相對偏差-4.9%,比實際數(shù)目少53輛;用Kim所提的方法所測得車輛數(shù)比實際多66輛,比實際高6.1%;兩種方法效果相近。當(dāng)涉及到識別大型車輛時,本文提出的方法比Kim中的方法要好。這是因為在不同背景中檢測車輛時,確保了屬于同一車輛的粒子能夠合并到一個粒子簇中。對于背景相似或粒子簇彼此空間距離很遠的車輛可能被誤分或看成多輛車。本方法把大型車輛最多分成兩個或三個車,而Kim方法會分成五個以上的車輛,導(dǎo)致了更大誤差。
4 結(jié)束語
近年來,視頻車輛跟蹤作為城市智能交通系統(tǒng)(ITS)的一個關(guān)鍵技術(shù)受到關(guān)注。針對傳統(tǒng)測量方式可能導(dǎo)致跟蹤過程的不準確性,本文提出了一種基于粒子濾波的車輛跟蹤計數(shù)方法,該算法利用基于重要區(qū)域的目標顏色直方圖統(tǒng)計模型對視頻車輛目標進行建模,對車輛的運行軌跡進行校正,實現(xiàn)了局部線性濾波,實現(xiàn)了在保持跟蹤系統(tǒng)整體上的非線性、非高斯性的同時,兼顧其局部的線性高斯特性。實驗結(jié)果表明,本文方法與傳統(tǒng)方法相比,即使在復(fù)雜的環(huán)境下,也能夠較準確地對車輛進行跟蹤。
參考文獻:
[1]Tian,B.Video processing techniques for traffic flow monitoring:Survey[J].Intelligent Transportation Systems(ITSC),pp.1103 1108,5-7,2011.
[2]Kanungo,T.Anefficient k-mean sclustering algorithm: analysisand implementation[J].Pattern Analysis and Machine Intelligence, IEEE Transactionson, vol.24, no.7, pp.881-892,
2002.
[3]KimZ.W.Real time object tracking based on dynamic feature grouping with background subtraction[J].Computer
Vision and Pattern Recognition,2008,vol1(5),pp.1-8,23-28,
2008.