(四川大學 計算機學院, 四川 成都 610064)
摘 要: 介紹一種基于視頻圖像像素點陣的車輛檢測技術。該方法找出車輛圖像中因與背景幀不同而觸發的像素點,通過分析這些觸發像素點所組成的像素點陣進行對車輛的自動識別和追蹤。將每輛車作為一個檢測對象,求出每個檢測對象的觸發像素點陣中存在連通性的最大像素區域,并將這個區域作為該檢測對象識別和追蹤的唯一標準。該技術具有適應性好、計算量少、識別結果準確等優點。
關鍵詞: 視頻圖像; 像素點陣; 觸發穩定區; 車輛對象; 車輛檢測
中圖法分類號: TP391文獻標識碼: A
文章編號: 1001 3695(2006)08 0183 03
Vehicle Examination Method that Based on Video Pixel matrix
WANG Qi, YOU Zhi sheng, QIN Shu jian
(College of Computer Science, Sichuan University, Chengdu Sichuan 610064, China)
Abstract: This text introduce a vehicle examination method that base on the video frequency pictures that grasp to clap. This method find out the triggered pixels because of different from the background. Through analytical these pixel matrixes that constitute of triggered pixels to identify and track the vehicle automatically. And be the each vehicle as an examination object, find out a biggest pixel district in pixel matrix of each examination object, and this district is the unique standard of identifying and tracking a vehicle object. That system has many advantages, such as good adaptability, little calculation, identifying result is accurate etc.
Key words: Video Pictures; Pixel matrix; Triggered Stability Region; Vehicle Object; Vehicle Examination
視頻車輛檢測技術是電子警察系統、電子車輛治安卡口系統、視頻交通事故偵測系統等智能交通產品的核心技術之一。車輛檢測技術的準確率與算法復雜度直接影響著系統整體效率和最后的識別結果。與傳統的感應線圈車輛檢測技術相比,視頻車輛檢測技術具有環境適應性強、結果直觀、系統便于擴充、造價低、工期短、不破壞路面等優點。
現行的視頻車輛檢測技術主要是利用虛擬線圈觸發技術檢測,或是利用邊緣檢測技術檢測。虛擬線圈觸發技術算法復雜度低,對系統硬件要求低,但其檢測區域小,檢測數據的準確度較低,且系統二次開發困難。利用邊緣檢測技術檢測算法復雜度高,對系統硬件要求高,其檢測區域較大,數據較準確。
本文提出一種基于視頻觸發像素點陣的視頻車輛檢測技術。該技術利用攝像機拍攝的圖像,對由車輛觸發的像素點所組成的點陣進行處理和追蹤,可較準確地得到車頭位置并以此求出車輛位置。同時還可獲得每輛車的車速、流量等交通參數數據。該技術檢測區域大、結果直觀、系統擴容性好、對硬件要求低,可在此基礎上方便地開發其他智能交通產品。
1 概述
1.1 對抓拍圖像的分析
由于攝像機架設在橫跨車道的高桿上,以一定角度向下俯拍車道,因此抓拍的連續圖像有以下特征:
(1)車輛圖像在整幅抓拍圖像中由遠及近,不斷膨脹,逐漸清晰。當車輛即將離開攝像機可視區域時車輛圖像達到最清晰(攝像機鏡頭面向車流的情況,以后無特殊說明均默指此情況)。
(2)車輛的運動是有規律的,即自抓拍圖像頂端向圖像底端運動。
(3)車輛圖像與預先設定的無車輛的背景幀比較后可檢測出差異。但由于光線和其他原因,有時檢測出的差異并不能準確地描述整個車輛圖像。車輛圖像中有一部分始終是與背景幀明顯不同的,它們與背景幀的差異只會隨著車輛的運動越來越明顯,越來越清晰,并且面積越來越大,因此稱之為差異穩定擴大區。
(4)在車輛距攝像機較遠時,前面的車輛往往會遮擋后面的車輛。但隨著它們與攝像機距離的縮短,這種遮擋也越來越少直至消失。當一輛車在比較靠近攝像機時,一般是不會遮擋后面的車輛。
基于以上特點,可以將檢測區域內每個像素點均設為檢查點與背景幀進行比較,以決定該像素點是否觸發。也可以按照一定的模板形狀選取像素點進行檢查以提高效率。但本文主要討論對像素點觸發后所組成的點陣的處理和識別。限于篇幅,像素點選取與背景幀提取的問題將不在此討論。同樣,像素點觸發可采用多種技術,也將不在這里討論。
1.2 基本概念及原理
由于車輛圖像上差異穩定擴大區的存在,因此在車輛圖像與背景幀比較后觸發的像素點陣中必然有一部分是穩定的,并且其面積隨著車輛的靠近而不斷增大。這個由觸發像素所組成的點陣區域稱為觸發穩定區,它定義為在一個由車輛圖像觸發像素點所組成的點陣中存在連通性的且包含最多像素點的區域。這里存在連通性的區域是指從區域內的任一觸發像素點出發均可按某一遍歷方法的要求來遍歷區域內的其他所有觸發像素點。
顯然,對于抓拍圖像上存在的每一個觸發像素點陣都存在兩種情況:①在其中存在唯一的Ln,同時亦可由Ln的存在確知與其有包含關系的唯一的Qn存在;②由于該點陣的觸發像素點太少,在該點陣中不存在連通區域或者是存在連通區域但其中包含的觸發像素點數≤α,這種情況可認定該點陣不是車輛圖像觸發像素點所組成的點陣,即不存在Qn。 。
由此可根據不同的Ln來確定不同的車輛,并對其進行追蹤。盡管Ln不能準確地覆蓋車輛的全部,但Ln與車輛的相對位置關系穩定。特別是Ln的最前端相對于車輛圖像(Qn)的位置關系是始終不變的,以此為依據計算出的車輛位置也是準確的。因此對車輛的識別簡化為對Ln的識別。該技術在車輛整體的某些部分不觸發,或者是錯誤觸發的情況下仍能很好地完成檢測。這樣就避免了在使用虛擬線圈技術時,由于車輛整體各部分顏色及反光情況不同所造成的觸發問題;由于每次計算的Ln只是車輛的一部分,因此減少了運算的次數。圖1紅線框內為觸發穩定區。該圖采用灰度觸發,觸發閾值設定得很高。從圖1中可以看出盡管車輛的很多部分都沒有準確觸發,但不會影響對該車輛的識別、追蹤和準確獲得該車輛的相關數據。Vn17是車輛對象編號,41.76是該對象的速度,程序自動將對象的參數標注在觸發穩定區的左上角。
1.3 算法簡介
由于 Ln是車輛存在的充分必要條件,所以可以將進入檢測區域的每輛車看作一個車輛對象。 Ln作為車輛對象的主要屬性,是車輛對象存在與否的唯一判別條件。車輛對象其他屬性可包括如方向、位置、速度等參數。其主要數據結構如下:
Class Vehicle
{
public:
//判斷L<sub>n</sub>是否符合要求
void CheckL(COLORREF *);
//獲取車輛對象的速度
int GetSpeed( );
…
private:
//存放車輛對象的L<sub>n</sub>
COLORREF L[];
//存放車輛對象的速度
int Speed;
…
}
算法的基本流程圖如圖2所示。
通過對車輛對象的不斷追蹤,就可以得到每個車輛對象的各項參數。以面向對象的方式進行車輛檢測,進一步為基于本技術的智能交通產品開發提供了可靠便利的基礎。
2 技術要點
本車輛檢測技術的要點主要集中在對車輛對象的識別(初始化)、追蹤、分割和消除上。
2.1 車輛對象的識別
當車輛進入檢測區后,由于其車輛圖像與背景幀圖像的差異使預先設定的像素點觸發,形成一個觸發像素點陣。在該點陣中找出 Ln并檢測其是否符合預先設定的條件。若符合即可生成一個車輛對象Vn,并將相對應的像素點位置記錄下來。
通過計算記錄下的像素點陣,可求出 Ln的最前端位置,并把這一位置作為車輛對象的位置。通過比較連續多幀圖片的 Ln 最前端位置就可求出車輛對象的多項參數,如速度、位置、方向等。 由于 L′n相對于Ln的變化不會出現在Ln的最前端(靠近攝像機的一端),即Ln 的最前端位置相對于車輛對象總是保證穩定的,因此運用此技術獲得的車輛位置數據是準確的。
2.2 車輛對象的追蹤
在相鄰的兩幀圖像中,在一輛車輛的圖像向前移動的可能范圍內不可能出現在該車輛之后的其他車輛圖像。同時,一輛車輛圖像向前移動的可能范圍可以根據該車輛對象記錄下的歷史速度而不斷修正,當該對象歷史速度低時,這個范圍縮?。划斣搶ο髿v史速度高時,這個范圍加大。因此可避免由于該車輛之前車輛的圖像造成的追蹤錯誤。
所以,從 Lp 的最前端出發,向前(向攝像機鏡頭方向)在一個設定區域內搜索到的第一個 L′n 是L′p ,即L′p-1 ,L′p ,L′ p+1 ,…=L′n-1 ,L′n ,L′n+1 。由此,通過對Ln 的追蹤就實現了對車輛對象的追蹤。
2.3 車輛對象的分割
當車輛距離攝像機較遠時,有可能出現前面的車輛遮擋尾隨車輛的情況。這時,系統會將之視為一個車輛對象。但隨著其距離與攝像機的接近,前后兩輛車逐漸分離。當徹底分離時,就出現了一前一后兩個觸發穩定區,繼而生成兩個車輛對象。前面的一個車輛對象繼承了分離前原車輛對象的屬性;后面的一個車輛對象則視為新生成的對象,重新計算自己的各項屬性并依次調整在其后的各個車輛對象的相關屬性。這樣處理雖然在前半程計算上有失準確,但由于車輛在檢測區域內不會一直遮擋,因此不會對最終車輛檢測數據造成影響。
2.4 車輛對象的消除
當車輛開始駛出檢測區域時,車輛對象的觸發像素點陣開始減少, Ln也隨之開始減少、消亡。當某車輛對象的Ln 小于預先設定的某個閾值時即可認定該車輛對象已經消亡,該車輛已全部駛出檢測區。
3 試驗
通過對攝像機抓拍回的視頻圖像進行試驗發現:
(1)本技術能有效地檢測出各種類型的車輛。檢測準確率明顯高于虛擬線圈觸發檢測技術,略高于基于邊緣檢測的幀差法。
(2)本技術在處理超車等情況時檢測結果尤為準確。圖3為非正常超車情況。該圖采用灰度觸發,觸發的閾值設定較低,有一些噪聲干擾,但不會影響檢測。
(3)本技術在處理大型車輛,超長車輛和異型工程車輛時檢測數據準確度明顯高于其他方法。
(4)當圖像質量不好時仍能較準確地定位出車輛位置并進行追蹤,完成檢測。
(5)適應性好。無論觸發閾值設定過高或過低的情況均能有較好的識別結果。
用同一組抓拍視頻圖像與虛擬線圈檢測和基于邊緣檢測 的幀差法檢測相比較,其結果如表1所示。
4 結束語
本方法基于視頻圖像的觸發像素點陣,計算量小,準確度高。通過對核心算法的求精還可以進一步提供本方法的準確率,降低運算量。
同時,利用本方法可以方便地開發其他智能交通產品,如電子警察系統、視頻交通事故檢測系統等,具有非常廣闊的應用前景。
參考文獻:
[1] K R Castleman.數字圖像處理[M].朱志剛,等. 北京:電子工業出版社,1998.
[2] Johan Billow,H K Chan. A New Vision[C].Traffic Technology International Annual Review 2001 Issue, 2001.50-56.
[3] Meyer M, Hotter M, Ohmacht T. A New System for Video based Detection of Moving Objects and Its Integration into Digital Networks[C]. Lexington,KY,USA:Security Technology , the 30th Annual 1996 International Carnahan Conference,1996.
[4] 孫家廣,等. 計算機圖形學[M]. 北京:清華大學出版社,1998.
[5] 何斌,馬天予,等. Visual C+ + 數字圖像處理(第2版)[M].北京:人民郵電出版社, 2002.
作者簡介:王祺(1979-),男,四川成都人,研究生,主要研究方向為圖像圖形處理;游志勝(1945-),男,四川成都人,所長,中國圖像圖形學會副理事長,教授,博導,主要研究方向為計算機視覺、圖像處理與模式識別等;覃樹建(1975-),男,重慶大足人,研究生,主要研究方向為實時軟件工程。
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。