基于虛擬線的交通信息視頻檢測技術(shù)及應(yīng)用
摘要:提出一種基于虛擬線的交通參數(shù)(車速、車輛計(jì)數(shù)等)視頻檢測方法。通過檢測在實(shí)時(shí)圖像序列中設(shè)置的虛擬線,檢測車輛存在,進(jìn)而計(jì)算出車速、車流量等交換信息。該方法自適應(yīng)更新背景和閾值,具有較高的檢測精度和良好的抗干擾性,避免了大量乘法運(yùn)算,有效地提高了檢測速度,具有良好的實(shí)時(shí)性。
關(guān)鍵詞:虛擬線 背景估計(jì) 閾值更新 存在檢測線 速度檢測區(qū)
目前,交通問題已成為城市發(fā)展的主要制約因素之一。ITS(Intelligent Transportation System)智能交通系統(tǒng),是指將先進(jìn)的信息技術(shù)、數(shù)據(jù)通訊技術(shù)、自動控制技術(shù)、計(jì)算機(jī)處理技術(shù)等應(yīng)用于交通運(yùn)輸,實(shí)現(xiàn)交通信息管理現(xiàn)代化。目前國內(nèi)外對ITS已經(jīng)有了較深入的研究和實(shí)踐。近20年的研究表明:實(shí)行ITS,可以使道路的通行能力提高2~3倍,將產(chǎn)生巨大的經(jīng)濟(jì)效益和社會效益。
交通視頻檢測設(shè)備是ITS的重要組成部分,它實(shí)時(shí)地檢測交通參數(shù),進(jìn)行數(shù)據(jù)處理并傳送至交管中心。傳統(tǒng)的檢測方法是在車道下埋置磁感應(yīng)線圈,當(dāng)有車輛經(jīng)過時(shí),產(chǎn)生一個(gè)電信號,檢測出這輛車正在感應(yīng)線圈的位置。根據(jù)一車輛通過不同的感應(yīng)線圈的時(shí)間間隔Δt和兩個(gè)感應(yīng)線圈之間的距離L,求得車速v=L/Δt。
本文提出的視頻檢測方法,首先在圖像上設(shè)置虛擬線,虛擬線的作用與上述磁感應(yīng)線圈類似。根據(jù)虛擬線上像素點(diǎn)的數(shù)值變化判斷是否有車經(jīng)過檢測線。如果當(dāng)前檢測線上的數(shù)值大于背景估計(jì)值,則認(rèn)為有車輛經(jīng)過檢測線,從而檢測出車輛。由于背景的變化,必須實(shí)時(shí)更新背景的估計(jì)值,才能夠保證檢測的精度。
1 虛擬線檢測算法
視頻車輛檢測流程如圖1所示,用一個(gè)架設(shè)在車道上方的攝像頭同時(shí)監(jiān)視多個(gè)車道,攝像頭采集的圖像以25幀/秒(PAL)的速度進(jìn)入圖像采集模塊,得到數(shù)字化的圖像(YUV 4:2:2),數(shù)字圖像數(shù)據(jù)進(jìn)入圖像處理模塊,這個(gè)模塊是整個(gè)系統(tǒng)的核心,實(shí)現(xiàn)對實(shí)時(shí)動態(tài)圖像的分析處理,檢測出多項(xiàng)交通信息。圖像處理流程如圖2所示。
1.1 攝像機(jī)的安裝與虛擬線的實(shí)際距離
圖3中:φ為攝像機(jī)的視場(FOV)角度;
φ/r為一條檢測線對應(yīng)的角度;
D是一條檢測線對應(yīng)的實(shí)際距離;
r是圖像的垂直分辨率(一幅圖像的行數(shù))。
實(shí)際應(yīng)用中,根據(jù)圖3所示的視頻角度(FOV),攝像機(jī)比較理想的安裝高度應(yīng)該在7.5m~10m的范圍內(nèi),并且保證監(jiān)視的視場能夠覆蓋1~4條車道。
在機(jī)器視覺系統(tǒng)中,一行掃描線代表的實(shí)際距離與攝像機(jī)的安裝密切相關(guān),本系統(tǒng)中由三個(gè)參數(shù)確定,分別是攝像機(jī)的安裝高度(h)、光軸與垂直方向的角度及視場(FOV),各參數(shù)間的關(guān)系如圖3。式(1)為每條檢測線代表的實(shí)際距離:
D=htan[arctan(d/h) φ/r]-d (1)
由圖3所示幾何關(guān)系,容易得到圖像覆蓋的實(shí)際最大距離為:
dmax=htan[arctan(dmin/h) φ] (2)
顯然攝像機(jī)能夠監(jiān)視的最大距離dmax用安裝高度h、最小距離dmix和FOV角度φ決定。
1.2 背景估計(jì)和車輛檢測
一條道路通常被分為幾條車道,在每條車道上分別設(shè)置如圖4(圖中數(shù)字1,2,3…表示像素點(diǎn))所示的檢測區(qū)。每個(gè)檢測區(qū)由一條車輛存在檢測線和緊跟其后的速度檢測區(qū)構(gòu)成。存在檢測線長度為50pixel/line,速度檢測區(qū)由30條30pixel/line檢測線構(gòu)成。
判斷存在檢測線上是否有車通過的基本原理是:如果當(dāng)前幀檢測上像素點(diǎn)的灰度值明顯大于背景的估計(jì)值,認(rèn)為這一時(shí)刻檢測線上有車輛存在,否則認(rèn)為此刻檢測線上無車輛存在。
由于環(huán)境的變化,必須實(shí)時(shí)更新存在檢測線的背景估計(jì)值。把一條檢測線上對應(yīng)五個(gè)不同時(shí)刻(相鄰時(shí)刻的間隔是10幀)的像素點(diǎn)的灰度值存入緩沖區(qū),用lineTn(n=1,2…)表示第n時(shí)刻檢測線上的數(shù)據(jù)。這樣連續(xù)5個(gè)時(shí)刻的數(shù)據(jù)為一組,通過對連續(xù)兩組數(shù)據(jù)的比較計(jì)算來更新背景的估計(jì)值。例如,當(dāng)前緩沖區(qū)存的是lineT1到linet5,那么輸入的lineT6與lineT1的間隔是50幀(2s,PAL制),這樣在車速大于20km/h,車長小于1lm的條件下(通常情況下滿足此條件),不可能有同一車輛既經(jīng)過lineT1又經(jīng)過lineT6,定義一個(gè)變量如(3)式:
式(3)中s'I是lineT(1 j)是第i個(gè)像素點(diǎn)的灰度值,si是lineT(6 j)的第i個(gè)像素點(diǎn)的灰度值(j=0,1,2,3,4)。把第一組數(shù)據(jù)和第二組數(shù)據(jù)比較,即lineT1與6,2與7,3與8,4與9,5與10分別逐像素點(diǎn)地比較,由式(3)得到5個(gè)變量,然后lineT6~10覆蓋lineT1~5存入緩沖區(qū),用lineT6~10和lineT11~15重復(fù)上述計(jì)算過程。通過比較lineT1~5和lineT6~10兩組數(shù)據(jù)得到的5個(gè)變量中,第j個(gè)變量Vj最小,令Vmin=Vj,與這個(gè)最小值對應(yīng)的后一組數(shù)據(jù)中的lineT(6 j)用于存在檢測線的背景估計(jì)。檢測線的背景估計(jì)通過式(4)的經(jīng)驗(yàn)公式更新。
R'i=ωRi (1-ω)Bi i=1,…,50 (4)
式(4)中Ri是檢測線上第i點(diǎn)的背景估計(jì)值,Ri是該點(diǎn)上一次的估計(jì)值,Bi是后一組數(shù)據(jù)中對應(yīng)于最小變量值Vmin的檢測線上第i點(diǎn)的值。ω是權(quán)系數(shù),它決定了上一次的背景估計(jì)值對當(dāng)前背景估計(jì)值的影響,(1-ω)決定了對應(yīng)于Vmin的檢測線數(shù)據(jù)對于背景估計(jì)的影響。如果ω=1,當(dāng)前背景估計(jì)等于上一次背景估計(jì);如果ω=0,當(dāng)前背景估計(jì)完全被對應(yīng)于Vmin的檢測線數(shù)據(jù)代替。為了達(dá)到實(shí)時(shí)更新背景的目的,ω的值應(yīng)該較小,但是為了提高抗干擾能力,ω的值應(yīng)該較大,綜合兩方面的考慮,實(shí)際系統(tǒng)中取固定值ω=0.8。通過上述計(jì)算過程,檢測線上的背景估計(jì)值每隔2s更新一次,對于緩慢變化的環(huán)境,能夠得到實(shí)時(shí)準(zhǔn)確的背景估計(jì)。
如果一條檢測線上像素點(diǎn)的值比與它比較的檢測線上相應(yīng)點(diǎn)的值高得多(或低得多),由(3)式得到V',而兩條檢測線上對應(yīng)點(diǎn)的值基本相同時(shí)得到V’’,那么V'會明顯大于V'',這就是進(jìn)行車輛檢測的基本依據(jù)。定義變量:
式(5)中Li是當(dāng)前時(shí)刻檢測線上第I點(diǎn)的值,R'i是背景估計(jì)值。
當(dāng)VD大于選定的閾值時(shí),認(rèn)為檢測線上有車輛存在。式(6)是閾值表達(dá)式:
T=kVmin (6)
式(6)中Vmin是當(dāng)前最小的變化值,對應(yīng)于Bi,k是常數(shù),如果
VD>T (7)
說明當(dāng)前時(shí)刻檢測線上的值大于背景估計(jì)值,此時(shí)檢測出有車輛經(jīng)過存在檢測線。
1.3 速度檢測
如圖4所示,速度檢測區(qū)緊跟在存在檢測線之后,當(dāng)存在檢測線檢測到有車輛經(jīng)過時(shí),觸發(fā)速度檢測區(qū)工作。為了避免車高的影響,當(dāng)車輛相對攝像機(jī)的監(jiān)視方向運(yùn)動時(shí),應(yīng)該按照車頭的位置計(jì)算速度。而當(dāng)車輛運(yùn)動方向與攝像機(jī)的監(jiān)視方向相同時(shí),應(yīng)該按照車尾的位置計(jì)算速度。
以前一種情況為例,一旦檢測到車輛進(jìn)入速度檢測區(qū),速度檢測模塊依次檢測每條虛擬線(從Line0開始),方法與存在檢測算法相同,當(dāng)檢測到連續(xù)兩條虛擬線都沒有車輛存在停止。認(rèn)為這兩條線的前一條就是車頭的位置l0,下一幀的檢測就從這條線開始。一幀一幀重復(fù)上述過程,直到車頭位置超出了速度檢測區(qū),那么上一幀得到的車頭位置ln就是車頭最后的位置。車速為:
Vf=[(ln-lo)/n]25(lines/s) (8)
計(jì)算ln-l0是必須的,因?yàn)檐囶^的開始位置和最后位置在每次測量時(shí)并不是固定的。適當(dāng)設(shè)置30條虛擬線組成的速度檢測區(qū),使ln-l0的最小值是20,則由檢測線引起的最大量化誤差是1/20。
由圖3所示的幾何關(guān)系,(8)式的速度值能夠轉(zhuǎn)換成m/s為單位的實(shí)際速度,與ln-l0對應(yīng)的實(shí)際距離為:
D=D0-Dn (9)
式(9)中Δθ=φ/r
θ為line0與垂直方向的角度,則實(shí)際速度為:
V=(D/n)25(m/s) (10)
評論