摘 要:通過分析攝像頭采集的現場交通彩色視頻數據,將視頻檢測應用到交通流量檢測和交通控制。運用圖像處理的方法提取圖像中通行車輛的車速以及通過視場內的車流量,在研究視頻流的基于彩色直方圖的通行車輛識別算法后,提出一種新的基于彩色視頻流的直方圖分析的車流量檢測算法。本算法通過計算視頻流中的每一幀RGB值的直方圖,通過做差值來統計視頻中的車輛數量,并根據變化的快慢頻率來計算車輛行駛的速度。該算法改進了已有的利用黑白視頻流灰度直方圖的方法,擴展了算法應用的靈活性,滿足了應用系統的實時的要求,確保了檢測數據的精度,在算法準確度和速度方面均有比較好的效果。
關鍵詞:直方圖;交通流量;視頻流;彩色視頻數據
中圖分類號:TP391文獻標識碼:A
文章編號:1004-373X(2010)02-112-03
Vehicle Flow Detection Algorithm Based on Colour Histogram from Video
WANG Xiaomin1,2,SHEN Guangrong1
(1.Shanghai Jiaotong University,Shanghai,200240,China;
2.National Engineering Research Center for Information Technology in Agriculture,Beijing,100097,China)
Abstract:By analyzing the video data of the spot traffic flow,the goal of vehicle flow detection and traffic control are achieved.A method based on colour histogram from video and image processing is proposed,the velocity of the vehicles and the vehicle flow through the field of vision can be extracted from the video image.After getting color histogram of each frame in the video,the differential value of these histograms can be computed to count the vehicles quantity,and calculate the speed according to the frequency shift.This algorithm extends the existing histogram analytical method of monochrome video,increases the flexibility,satisfies real_time demand of the application system,guarantees the precision of detection data,and it has a desirable effect in the accuracy and the speed.
Keywords:histogram;traffic flow;video flow;color video data
0 引 言
交通流量信息是交通控制中的重要信息。要實現交通流數據的提取,先要進行車輛檢測。目前國內常見的交通流檢測的方法有超聲波檢測、紅外檢測、環形感應圈檢測和計算機視覺檢測。超聲波檢測精度不高,容易受車輛遮擋和行人的影響,檢測的距離短 (一般不超過12 m);紅外檢測受到車輛本身熱源的影響較大,抗噪聲的能力不強,檢測精度也不高;環形感應圈檢測精度高,但要求設置于路面土木結構中;對路面有損壞,施工和安裝不便,而且需要安裝的數量多。
已有學者將視頻檢測應用到交通流量的檢測和交通控制上,獲得了很大的成功[1,2]。這是一種基于視頻圖像的檢測技術,也稱為計算機視覺或機器視覺檢測,是一種結合數字視頻圖像和人工模式識別的技術。與傳統的檢測方式相比,視頻檢測具有明顯的優勢,主要體現在:具有完備的檢測手段,能夠檢測出絕大多數的交通流數據,其中包括交通流量、車輛速度以及占有率等,還能夠實現交通事故的自動檢測;具有大區域檢測的特點,有利于交通的管理和控制;使用安裝無需接觸公路實體,維護方便[3]。本文在借鑒國內外相關技術的研究成果后,提出一種利用彩色直方圖分析視頻對交通流量進行檢測的算法,并用Matlab進行了模擬仿真,取得了比較好的效果。
1 直方圖及彩色圖像的處理
在數字圖像處理中,一種最簡單且最有用的工具是直方圖。它概括了一幅圖像的可觀信息,某些類型的圖像還可以由其直方圖完全描述。直方圖的計算很簡單,特別是當一幅圖從一個地方被復制到另一個地方時,直方圖可以用非常低的代價來完成。灰度級為[0,L-1]范圍的數字圖像的直方圖是離散函數h(rk)=nk。式中:rk是第k級灰度;nk是圖像中灰度級為rk的像素個數。直方圖是多種空間域處理技術的基礎。直方圖操作能有效地用于圖像增強、圖像壓縮與分割等。
人們經常發現構造高維直方圖比一維直方圖更為有用,特別是研究彩色圖像時。在分析多光譜數字圖像的時候,有二維直方圖的概念。在不同光譜下同一個景像可得到不同顏色的(如紅光或藍光)圖像如圖1所示。二維直方圖表示像素值在兩種灰度級(紅、藍)的組合分布的情況。二維直方圖是兩個變量的函數:紅光圖像灰度值DR和藍光圖像灰度值DB的函數。如圖2所示,二維直方圖中,坐標(DR,DB)處的值表示在紅光圖像中具有灰度值DR,同時在藍光圖像中具有灰度值DB的像素(對)的個數,故是組合分布的情況。
圖1 不同光譜圖
圖2 二維直方圖
若紅光、藍光圖像完全相同,則二維直方圖僅在45°斜線上有值。如果每個像素(對)中紅光灰度值大于藍光的值,則直方圖就分布在45°的斜線之上,反之亦然[4]。
Matlab的RGB數組可以是雙精度的浮點數類型、8位或16位無符號的整數類型。在RGB的雙精度型數組中,每一種顏色用在0~1之間的數值表示。例如,顏色值是(0,0,0)的像素,顯示的是黑色;顏色值是(1,1,1)的像素,顯示的是白色。每一像素的三個顏色值保存在數組的第三維中。例如,像素(10,5)的紅、綠、藍顏色值分別保存在RGB(10,5,1),RGB(10,5,2),RGB(10,5,3)中[5]。
這里,將利用彩色圖像的直方圖變化來進行流量的統計。由于彩色圖像是由三個分量組成的,可以分別按三個分量的進行直方圖處理[6]。其直方圖具有紅(R)、綠(G)和藍(B)三個變量:FR,FG和FB。這是一種多光譜的數字圖像,在每一個采樣點有一個像素,每個像素有三個表示各基色灰度值的變量。但是,用二維平面圖表示三維直方圖是很困難的,所以,可以簡單地按照三個基色各自的灰度值函數分別處理,或者將彩色圖像的灰度值看成是由兩個空間變量和一個光譜變量的函數,也就是多光譜圖像。彩色像素點的亮度等于對應三個基色的刺激值的加權和,即:Y=aT1+bT2+cT3。式中Ti(i=1,2,3)為紅、綠、藍三個刺激值;a,b,c為常數[7]。有些學者利用彩色直方圖進行視頻監控錄像的分析[8],用于監控系統。
2 視頻的處理
視頻涉及到圖示信息,其中包括靜態圖像和時變圖像。靜態圖像其信息密度隨空間分布,且相對于時間為常量。而時變圖像其空間密度特性是隨時間變化的,所以時變圖像是一種時空密度模式,它可表示為sc(x1,x2,t),其中:x1和x2是空間變量;t是時間變量。實際上也可以用靜止幀圖像的一個時間序列表示一個時變圖像。視頻信號通常涉及到一維模擬或數字的時間信號。其中時空信息是作為一種時間函數,按照預先的采樣約定排序的。
由于sc(x1,x2,t)是將一個時變的三維(3D)空間場景投影到二維(2D)圖像平面而形成的。三維場景中的時間變化通常是由于該場景中的實體的運動所至。因而,時變圖像反映了三維運動實體向二維圖像平面的一個作為時間函數的投影。數字視頻對應于這種時變圖像的時空采樣類型[9]。
3 算法原理
當一幅圖像被壓縮為直方圖后,所有的空間信息都丟失了。直方圖描述了每個灰度級具有的像素個數,但不能為這些像素在圖像中的位置提供任何線索。因此,一幅特定的圖像有惟一的直方圖;反之不成立,因為不相同的圖像可以有相同的直方圖。在圖像中移動物體一般對直方圖沒有影響,但如果將物體移出圖像外將對直方圖有著很大的影響。對于交通視頻來說,車輛不斷進入特定區域時和離開該區域直方圖都會有很大的影響。
算法的設計目標是從視頻圖像中提取車輛的即時速度和統計車流量。該算法通過計算視頻流中每一幀RGB值的直方圖,并通過做差值來統計視頻中的車輛數量。根據變化頻率的快慢計算車輛行駛的速度。
車速的測量和車流量的統計首先要對攝像機視場內的通行車輛進行識別,車輛通過視場時,計算機只要識別事先放置的虛擬檢測器,就可以啟動系統開始記錄個數和車輛通過的時刻,然后計算通行車輛的速度。車輛通過標定距離的識別采用閾值檢測的算法。該算法原理為:當車輛通過檢測線時,統計檢測線區域內的灰度變化,就可以確定目標車輛進入或離開檢測線,對車輛計數或記錄通過的時間。
4 實驗結果及分析
圖3(a)~圖3(f)表示的是兩條車道上兩條虛擬檢測線范圍內車輛通過前后的像素RGB直方圖。圖3(c)為兩車道的前面各有一輛淺色車,右車道的后面有一輛深色車。圖3(d)為兩車道的后面各有一輛淺色車,左車道前面有一輛深色車。
圖3 固定背景和目標出現的圖像及相應彩色直方圖
由圖3中各圖可以看出,在有車輛通過兩條檢測線區域內時,RGB值分布發生了明顯的變化。當沒有車輛通過時,背景路面的像素RGB的分布是個定值,當有車輛通過時,不管是深色車還是淺色車,不管是左車道有車還是右車道有車或是都有車,都會對RGB的分布產生很大影響,根據前一幀和后一幀的RGB變化,可進行統計計算。
使用本文方法對已有的兩車道道路的車輛進行流量統計,得到的結果見表1。
表1 二車道統計結果
實際車流 /輛算法計算結果 /輛誤差度百分比 /%
車道130313.3
車道231303.2
5 結 語
由彩色視頻流的RGB直方圖,給出了仿真結果,驗證了模型的正確性。該算法改進了已有的利用黑白視頻流灰度直方圖的方法,擴展了算法應用的靈活性。基于視頻流RGB直方圖統計的通行車輛識別算法簡化了計算機的處理運算,滿足了應用系統的實時要求,確保了檢測數據的精度。
參考文獻
[1]Michalopoulos P G.Field Deployment of Autoscopetm in the Fast_TracATMS/ATIS Program[J].Traffic Engineering and Control,1992(9):475-483.
[2]James M Ferryman,Stephen J Maybank,Anthony D.Visual Surveillance for Moving Vehicles\\.International Journal of Computer Vision,2000,37(2):187-197.
[3]巨永鋒,朱輝,潘勇.基于計算機視覺的車流量檢測算法\\.長安大學學報:自然科學版,2004,24(1):92-95.
[4]Castleman K R.Digital Image Processing\\.New Jersey:Prentice Hall,2004.
[5]飛思科技產品研發中心.Matlab 6.5輔助圖像處理\\.北京:電子工業出版社,2003.
[6]Gonzalez R C.Digital Image Processing[M].Second Edition.Beijing:Publishing House of Electronics Industry,2003.
[7]陳傳波,金先級.數字圖像處理\\.北京:機械工業出版社,2004.
[8]張便利,常勝江,李江衛,等.基于彩色直方圖分析的智能視頻監控系統\\.物理學報,2006(12):6 399-6 403.
[9]A Murat Tekalp.Digital Video Processing\\.Prentice Hall,1998.