田曉霞,王學(xué)軍
(石家莊鐵道大學(xué) 信息科學(xué)與技術(shù)學(xué)院,河北 石家莊 050043)
社會(huì)經(jīng)濟(jì)的快速發(fā)展使得私有汽車的數(shù)量急劇增加,智能交通系統(tǒng)(ITS)作為一種實(shí)時(shí)、高效的交通管理系統(tǒng)以其能夠有效地解決交通擁堵問題得到世界的認(rèn)可。車流量檢測(cè)方法的研究在智能交通系統(tǒng)的研究中占有很重要的地位,而車輛檢測(cè)和車輛跟蹤是智能交通系統(tǒng)中獲取車流量信息的第一步。
作為全天候交通視頻監(jiān)控的一部分,夜晚情況下由于照明條件差,車身可見度低并且車燈光暈會(huì)引起背景的混亂從而極大地加深了檢測(cè)的難度,因此夜間車輛檢測(cè)因其復(fù)雜的光照條件一直是個(gè)棘手的難題。
為了解決夜間車輛檢測(cè)這一難題,相關(guān)學(xué)者主要從以下兩個(gè)方面著手進(jìn)行了研究,一是在硬件上,采用高性能的攝像機(jī),這種方法在檢測(cè)道路行人時(shí)有效但是在檢測(cè)夜間車輛時(shí)會(huì)受到車燈光暈及車燈投射光線的影響。目前常用的方法仍然是通過CCD攝像機(jī)拍攝夜間視頻,通過檢測(cè)車輛中的車頭燈對(duì)夜間車輛進(jìn)行檢測(cè)[1]。二是針對(duì)夜間車輛檢測(cè)算法進(jìn)行了研究,一些學(xué)者考慮到在夜間受車燈光暈及其路面反射光線影響嚴(yán)重,因此試圖采用幀差法[2]來消除車燈光暈和路面反射光線,而幀差法本身就有不能完整的檢測(cè)車輛前景的缺陷。一些學(xué)者根據(jù)夜間車燈所具有的明亮、穩(wěn)定且不受路燈投射光線和天氣情況影響這幾個(gè)特征做了大量的研究工作。在夜間,車燈無外乎車前燈[3]和車尾燈[4,5]這兩種。田齊在文章中提取出的明亮的車前燈是采用灰度值形態(tài)學(xué)變換的方法,然后對(duì)同一車燈進(jìn)行匹配進(jìn)而對(duì)車輛進(jìn)行檢測(cè),但是這種方法也不能準(zhǔn)確地提取出車前燈因?yàn)榇朔椒ù嬖谥荒芎芎玫慕鉀Q車燈投射光線及路面反射光線的問題。還有一些學(xué)者利用車燈顏色信息來提取車燈,考慮到車尾燈呈偏紅色進(jìn)而利用車尾燈中心區(qū)域像素的偏紅程度這個(gè)特性來提取車尾燈,然后再對(duì)車燈進(jìn)行配對(duì)和跟蹤。該算法雖然計(jì)算量小但并不是每輛車的車尾燈都呈現(xiàn)偏紅色,因而不能只利用夜間車尾燈呈偏紅色這一特征來實(shí)現(xiàn)車燈的提取。
夜間交通視頻圖像中,要提取的完整的車輛目標(biāo)由于車輛與背景的對(duì)比度過低變得較為困難,這時(shí)夜間道路識(shí)別車輛具有顯著且穩(wěn)定的特征就非車燈莫屬。夜間道路上基本每輛車都有兩個(gè)明亮的車燈,但是存在部分車尾燈因受到其它車輛車前燈照射變得不是十分明顯而且顏色特征也不穩(wěn)定。綜上考慮,本文提出了一種提取車前燈的夜間車流量檢測(cè)算法。圖1給出了夜間車流量檢測(cè)流程圖。
圖1 夜間車輛檢測(cè)流程圖
從交通現(xiàn)場(chǎng)傳來的實(shí)時(shí)視頻幀一般是通過彩色攝像機(jī)采集的數(shù)字彩色圖像,彩色圖像的每個(gè)像素是由紅、綠、藍(lán)3種基本色調(diào)按不同比例組合而成的。為了減少工作量用以下公式對(duì)圖像進(jìn)行灰度化:
其中0.299、0.587、0.114為實(shí)驗(yàn)推導(dǎo)出的合理的權(quán)值[6]。其彩色圖和灰度圖分別如圖2,3所示:
圖2 彩色圖像
圖3灰度圖像
本文采用直接對(duì)圖像二值化的方法來提取車燈,將耀眼的車前燈從背景中分離開來,對(duì)圖3進(jìn)行二值化后的圖像如4所示。從圖4可以看出對(duì)視頻幀進(jìn)行二值化后的車燈前景是不規(guī)則的,除了車燈外還有大面積的車燈投射光線,而且還存在噪聲,這是由于夜間車燈光暈或路面反光引起的。對(duì)于既要消除噪聲又要保持圖像細(xì)節(jié)的視頻幀來說,中值濾波器能夠很好的解決。
中值濾波器[7]是一種非線性濾波器,它的主要功能是讓某一像素與周圍像素值之差較大的像素改變,然后取與周圍像素值相近的值從而消除噪聲點(diǎn)。對(duì)圖4進(jìn)行中值濾波后的圖像如圖5所示:
圖4 二值化
圖5 中值濾波
從以上兩圖可以看出,中值濾波后可以較好地濾除視頻幀中的噪聲。接下來就需要在圖像前景中識(shí)別出車燈。
通過上一節(jié)分析可知,應(yīng)用圖像二值化的方法從夜間交通圖像中分割出來的包括車燈和大面積的車燈投射光線。所以,需要從前景中查找出車燈。本文經(jīng)過分析比較了車燈和車燈投射光線之間的差異[8]:(1)車燈呈橢圓形而投射光線的形狀不規(guī)則;(2)車燈的面積比投射光線的面積小并且車燈面積在一定范圍內(nèi)。
為了量化這兩點(diǎn)差異,簡單介紹一下與夜間車輛檢測(cè)算法相關(guān)的形態(tài)學(xué)特征,包括面積(S)、周長(P)、圓形度(SP)。
(1)面積(S)和周長(P)。
形態(tài)學(xué)中常用來表示一個(gè)物體大小的參數(shù)是面積和周長。車燈連通區(qū)域的面積是指該車燈連通區(qū)域所有像素的總和,周長是指該連通區(qū)域邊界上的所有像素的總和。對(duì)圖像中的像素點(diǎn)進(jìn)行領(lǐng)域判斷,將特定區(qū)域中有前景點(diǎn)又有背景點(diǎn)的像素點(diǎn)稱為邊界點(diǎn)[9]。
(2)圓形度(SP)
SP是指物體接近圓的程度[6],即物體越接近圓,圓形度越接近于1.
對(duì)本文視頻幀中分割出的每個(gè)連通區(qū)域計(jì)算其S、P和SP等參數(shù),然后設(shè)置一些閾值,假設(shè)某個(gè)區(qū)域的參數(shù)在閾值范圍內(nèi),那么該區(qū)域?yàn)檐嚐簦駝t認(rèn)為是非車燈并且將其在前景圖像中去除。圖6為提取出的車前燈,車燈邊緣線在視頻幀中用紅色標(biāo)出。從圖中可以看出,該算法可以較好的從夜間交通視頻幀中將車前燈提取出來。
圖6 提取出的車前燈
只提取出車前燈并不能實(shí)現(xiàn)車流量的統(tǒng)計(jì),因?yàn)榻煌ǖ缆分写嬖谥鞣N類型的車輛,如公交車、摩托車、小轎車,可能還有故障車等,這些車輛的車前燈數(shù)不但各不相同而且還會(huì)出現(xiàn)某些故障車車前燈壞掉的現(xiàn)象,所以不能簡單的利用所有車燈數(shù)減半的方法來計(jì)算車流量。所以,還需要對(duì)車燈進(jìn)行幀內(nèi)匹配和幀間跟蹤從而得到準(zhǔn)確的車流量數(shù)據(jù)。車燈匹配解決的是車燈屬于哪一輛車的問題,而車燈跟蹤解決的是車流量統(tǒng)計(jì)的問題。
采用以下規(guī)則進(jìn)行幀內(nèi)車燈配對(duì):
(1)屬于一個(gè)車燈對(duì)的車燈在距離上應(yīng)在一定的范圍之內(nèi),即滿足下面兩式:
其中(xi,yi)是一個(gè)車燈的坐標(biāo),(xj,yj)是與該車燈配對(duì)的另一個(gè)車燈坐標(biāo)。
(2)屬于同一個(gè)車燈對(duì)的車燈運(yùn)動(dòng)軌跡相差不多,也就是要配對(duì)的兩車燈連線的斜率接近于0。中心連線的斜率為:
(3)要配對(duì)的兩個(gè)車燈大小相似。
(4)與一個(gè)車燈配對(duì)的只能有一個(gè)車燈,對(duì)于故障車、摩托車或電動(dòng)車有可能找不到匹配的車燈,那么將該車燈的信息保存在跟蹤數(shù)組中。
根據(jù)以上規(guī)則,可確定幀內(nèi)車燈的配對(duì)的算法:
(1)計(jì)算當(dāng)前幀兩車燈之間的橫坐標(biāo)之差distanc_X和縱坐標(biāo)之差distanc_Y。
(2)若兩個(gè)車燈i和j之間的距離滿足公式(2)式和公式(3)式,則他們可能屬于同一輛車。
(3)若對(duì)該車燈可能屬于同一輛車的車燈數(shù)為1,則匹配成功。否則根據(jù)距離和車燈大小在幀中選取最佳匹配車燈,完成幀內(nèi)車燈匹配。
(4)對(duì)于落單的車燈,進(jìn)行單獨(dú)標(biāo)定,認(rèn)為這是一輛車。
前面章節(jié)中已較完整的論述了將車燈提取出來的過程,而且實(shí)現(xiàn)了幀內(nèi)車燈的配對(duì),也就是說每一組車燈代表一輛車,接下來要實(shí)現(xiàn)幀間車燈的匹配就要對(duì)配對(duì)好的車燈進(jìn)行跟蹤。由于交通視頻幀率快并且相鄰兩幀時(shí)間間隔很短,一定時(shí)間內(nèi)車輛運(yùn)動(dòng)的距離較短并且車燈面積變化不大,因此設(shè)計(jì)了以下三個(gè)匹配準(zhǔn)則:
(1)計(jì)算車燈對(duì)的中心坐標(biāo)(x,y),也就是車燈對(duì)連線的中心坐標(biāo),假如只有一個(gè)車燈,那么該車燈中心即為車燈對(duì)的中心。在相鄰兩幀圖像中,車燈對(duì)的中心移動(dòng)距離在一定的范圍內(nèi)。設(shè)車燈對(duì)的兩車燈的坐標(biāo)分別為(x1,y1)、(x2,y2),那么中心坐標(biāo)(x,y)為:
(2)計(jì)算每個(gè)車燈對(duì)的平均面積(avgS),假設(shè)只有一個(gè)車燈,那么該車燈的面積即為平均面積。相鄰兩幀中車燈對(duì)的平均面積相似。
(3)車燈對(duì)中的車燈數(shù)目保持不變。并用特征向量LPi=(x,y,avgS)表示當(dāng)前幀中各車燈對(duì)的中心坐標(biāo)和平均面積。
根據(jù)以上匹配準(zhǔn)則,車燈對(duì)幀內(nèi)跟蹤算法如下:
(1)用特征向量LPi= (x,y,avgS)T表示當(dāng)前幀中的各個(gè)車燈對(duì)的信息,如果當(dāng)前幀是第一幀,則將幀中的所有車燈對(duì)信息保存在目標(biāo)鏈中,分別另每個(gè)車燈對(duì)的跟蹤次數(shù)為1.并將下一幀中各個(gè)車燈對(duì)與目標(biāo)鏈中的各個(gè)車燈對(duì)進(jìn)行匹配。
(2)如果當(dāng)前幀不是第一幀則將當(dāng)前幀中各車燈對(duì)信息與目標(biāo)鏈中的各個(gè)車燈對(duì)進(jìn)行匹配。
(3)若匹配成功,則用當(dāng)前幀中該車燈對(duì)信息更新目標(biāo)鏈中該車燈對(duì)的信息,并另跟蹤次數(shù)加1,否則轉(zhuǎn)為(1)。
(4)若連續(xù)跟蹤次數(shù)超過一定的閾值T(本文中設(shè)置為6),則認(rèn)為該車燈對(duì)屬于同一車輛,車輛計(jì)數(shù)加1,否則車輛計(jì)數(shù)不變。
(5)檢測(cè)目標(biāo)鏈幀中的所有車燈對(duì),對(duì)于連續(xù)數(shù)幀都沒有跟蹤到的車燈對(duì)(設(shè)置閾值TT,本文中設(shè)置為10),認(rèn)為該車燈離開了場(chǎng)景并刪除該車燈對(duì)的信息。
(6)保存目標(biāo)鏈中各個(gè)車燈對(duì)的計(jì)數(shù)結(jié)果,即統(tǒng)計(jì)車流量。
采用了一種基于車前燈的夜間車流量檢測(cè)算法,提出了利用圖像二值化的方法提取車燈,并根據(jù)車燈的形狀特征識(shí)別車燈,然后設(shè)計(jì)了車燈幀內(nèi)配對(duì)和幀間匹配準(zhǔn)則并給出車燈對(duì)跟蹤算法的流程。該算法能過較好地進(jìn)行夜間車輛檢測(cè)并且有很高的實(shí)時(shí)性。然而針對(duì)復(fù)雜環(huán)境(如雨天、存在大型車輛、交通擁堵)下的夜間車流量檢測(cè)并非簡單的車燈配對(duì)、跟蹤就能解決,還需要考慮時(shí)域信息的利用,這將是下一步的研究工作。
[1]王圣男,郁梅,蔣剛毅.智能交通系統(tǒng)中基于視頻圖像處理的車輛檢測(cè)與跟蹤方法綜述.計(jì)算機(jī)應(yīng)用研究[J].2005,9(7):9-14.
[2]唐佳林,李熙瑩,羅東華.一種基于幀差法的夜間車輛檢測(cè)方法.計(jì)算機(jī)測(cè)量與控制[J].2008,16(12):1811-1813.
[3]田齊.基于汽車前照燈的夜間車輛定位方法研究[J].交通信息與安全.2010,2(28):58-60.
[4]劉勃,周荷琴,魏銘旭.基于顏色和運(yùn)動(dòng)信息的夜間車輛檢測(cè)方法[J].中國圖象圖形學(xué)報(bào).2005,10(2):187-191.
[5]劉尊洋,葉慶,李菲,等.基于亮度與顏色四閾值的尾燈檢測(cè)算法.計(jì)算機(jī)工程[J].2010,36(21):201-206.
[6]吳海濤.復(fù)雜環(huán)境下的夜間車輛檢測(cè)與交通視頻晝夜亮度變化模型研究[D].上海:上海交通大學(xué).2007.
[7]楊高波,杜青松著.圖像/視頻處理應(yīng)用及實(shí)例[M].北京:電子工業(yè)出版社.2010.
[8]吳志偉.基于視頻的車流量檢測(cè)技術(shù)研究[D].廣州:華南理工大學(xué).2012.
[9]宋國云.數(shù)字化鐵譜圖像自動(dòng)分割與識(shí)別技術(shù)研究[D].廣州:華南理工大學(xué).2007.