谷明琴,蔡自興,黃振威,何芬芬
(中南大學 信息科學與工程學院,湖南 長沙,410083)
近年來,城市環(huán)境中的智能車輛環(huán)境感知研究引起了廣泛關(guān)注,而交通信號燈的識別為其重要研究方向之一。國內(nèi)外許多研究者已提出了一些檢測和識別交通信號燈算法。Yung等[1]在視頻序列中檢測紅色、黃色和綠色交通信號燈,且假定相機固定在車輛頂部正中間。由于該算法要求交通信號燈區(qū)域的顏色清晰,因此能夠檢測到交通燈的距離較近。Chung等[2]需預先估計交通信號燈的背景圖像及光照的平均時間,用形態(tài)學方法的模糊算法來檢測交通信號燈的候選區(qū)域。由于它需要估計背景圖像,因此不適用于移動的智能車輛。文獻[3]中的情況與文獻[2]類似,也不太適合智能車輛感知環(huán)境的需要,此外,交通信號燈的識別特征采用仿射不變矩,計算成本比較高。Hwang等[4]用6個顏色閾值來分割輸入圖像,得到候選區(qū)域。然而,它無法區(qū)分紅色和黃色交通信號燈,適應(yīng)性不強。Masako等[5-6]采用邊緣圖像檢測交通信號燈,由于邊緣圖像中包含大量類似交通信號燈的圓形區(qū)域,算法的誤檢率較高。Shen等[7]根據(jù)高斯分布構(gòu)建了色調(diào)和飽和度的模型,并用樣本訓練參數(shù);用參數(shù)和形狀信息來提取并判定測試圖像中的交通信號燈候選區(qū)域。但該方法需要對圖像進行模型化,需大量的矩陣運算,計算復雜度高。Gong等[8]采用HSV顏色空間的統(tǒng)計結(jié)果獲取分割閾值,對圖像進行分割,用基于CAMSHIFT算法對交通信號燈進行跟蹤。但該方法難以在較復雜環(huán)境中檢測和識別交通信號燈。Charette等[9]采用聚光燈檢測和模板匹配的方法來識別交通信號燈,雖然識別較為準確,但是預處理階段需要進行多次卷積運算,時間復雜度高。Levinson等[10]利用GPS數(shù)據(jù)信息及先驗的交通信號燈的位置,然后在線地檢測交通信號燈。這種方式需要大量的先驗信息作為支撐,對系統(tǒng)構(gòu)建的要求非常高。谷明琴等[11]研究了圓形交通信號燈的檢測和識別算法,未對箭頭型交通信號燈加以研究。Cai[12]則研究了箭頭型交通信號燈識別算法。箭頭型交通信號燈是城市環(huán)境中常見的信號燈類型,能為行駛的車輛提供有用的十字路口環(huán)境信息,而上述算法主要是檢測和識別圓形交通信號燈,很少涉及箭頭型交通信號燈。針對該問題,本文作者提出了一種檢測和識別城市環(huán)境中箭頭型交通信號燈的新方法。
圖1 城市環(huán)境中的箭頭型交通信號燈樣例Fig. 1 Examples of arrow traffic lights in urban environment
圖1所示為一些城市環(huán)境中較為常見的交通信號燈樣例,從圖1可以看出交通信號燈的背景比較復雜(交通標志,建筑物等),此外,由于光照,天氣條件及交通信號燈自身的發(fā)光性,檢測和識別交通信號燈較為困難。為此,本研究提出了如圖2所示框架來識別城市環(huán)境中的交通信號燈。
圖2 箭頭型交通信號燈的識別框架Fig. 2 Framework of traffic lights recognition
令 v(x,y)=[vR,vG,vB]是 RGB空間中的每個像素的顏色值,(x,y)是像素坐標。由下面 2種方法來分割圖像中的黑色區(qū)域:
其中:T1=50和T2=20是分割閾值。則圖像中的黑色區(qū)域可由二值圖像Bin1(x,y)和Bin2(x,y)的并組成。
用結(jié)構(gòu)元素相同的腐蝕和膨脹形態(tài)學操作對Bin(x,y)進行處理,以消除噪聲和斷裂區(qū)域。
對Bin(x,y)中像素個數(shù)大于300且小于3 000的連通區(qū)域進行標記,作為交通信號燈的候選區(qū)域。假設(shè)Bin(x,y)有Nr個候選區(qū)域,記為Ri,i=1,…,Nr。令Ri(height)和Ri(width)是候選區(qū)域Ri的高和寬,則區(qū)域的寬高比Ri(Rwh)定義如下:
令Ri(Saturation)表示區(qū)域Ri的凹形度,有
其中:Ri(Area)和Ri(ConvexArea)分別是區(qū)域Ri中的像素個數(shù)及其最小凸包中的像素個數(shù)。
對候選區(qū)域 Ri,由以下的形態(tài)濾波方法對其進行過濾:
其中:TBwh,TUwh和 TStrt是其對應(yīng)的閾值,這里分別取2,4,0.6。經(jīng)過形態(tài)濾波后,去除了不滿足燈板形態(tài)的區(qū)域,如圖3所示,二值圖像中僅保留了符合燈板形態(tài)的候選區(qū)域。
從輸入的原始圖像中剪切出候選燈板區(qū)域Ri的彩色圖像并轉(zhuǎn)換到Y(jié)CbCr顏色空間中。假設(shè)p(x,y)=[pY,pCb,pCr]是YCbCr空間中的每個像素的顏色值,(x,y)是其小圖像的坐標。由于紅色和黃色交通信號燈難以僅用顏色信息將其分開,在YCbCr空間中,用閾值Tred對Cb通道進行閾值分割:
由于燈板中的紅色和黃色的交通信號燈所處的位置不同(紅色信號燈在燈板的上1/3處,黃色信號燈在燈板的中1/3處),則可以用交通信號燈與燈板的相對位置來區(qū)分紅色和黃色交通信號燈。
標記二值圖像BRed(x,y)中像素個數(shù)大于50且小于1 000的連通區(qū)域,記為Rj,j=1,…,Ns,Ns是候選區(qū)域的個數(shù)。假設(shè)候選區(qū)域Rj的外接矩形框為Retcj={Rx,Ry,Rwidth,Rheight},如果 Rj的寬高比 Rj(Rwh)及與燈板Ri的相對位置滿足:
那么 Rj是一個交通信號燈候選區(qū)域。其中,Rj(Rwh)=Rheight/Rwidth,TRlower=0.5,TRupper=1.5。
圖3 交通信號燈檢測過程的結(jié)果Fig. 3 Results of detecting traffic light process
如果候選區(qū)域 Rj的左上角坐標(Rx,Ry)滿足 Ry<Ri(height)/3,那么Rj是一個紅色交通信號燈候選區(qū)域。否則,如果Rj的坐標(Rx,Ry)滿足:
則Rj是一個黃色交通信號燈候選區(qū)域,否則,Rj為非交通信號燈,并從候選區(qū)域列表中移除。
為了檢測綠色交通信號燈,用閾值Tgreen對Cr通道進行分割,得到二值圖像:
用標記BRed(x,y)候選區(qū)域相同的方法對Bgreen(x,y)進行處理,記候選區(qū)域為Rj,j=1,…,Ns,Ns是其個數(shù)。如果候選區(qū)域Rj的外接矩形框 Retcj={Rx,Ry,Rwidth,Rheight}滿足公式(10),且 Rj的左上角坐標(SRx,Ry)滿足 Ry>2Ri(width)/3,那么 Rj是綠色交通信號燈候選區(qū)域。
圖 3(d)顯示了檢測到的交通信號燈候選區(qū)域結(jié)果。從燈板圖像中剪切候選區(qū)域Rj的彩色圖像,并灰度化,歸一化為 30×30的圖像大小,記為 I(x,y),送入識別過程進行分類。
為了對交通信號燈候選圖像進行分類,用二維的Gabor小波變換及二維獨立分量分析來表示圖像和降低分類特征的冗余性,最近鄰分類器來判定交通信號燈的方向。
對檢測到的候選區(qū)域灰度圖像I(x,y),可以用文獻[13]定義的 Gabor函數(shù) ψu,v(x,y)與圖像 I(x,y)的卷積作為Gabor濾波后的圖像,即:
*表示卷積操作。
將幅值圖像Gu,v(x,y),u={0,1,…,5},v={0,1,…,5}隔2個像素點采樣,連接成為一個列向量χ,作為圖像的特征。
獨立分量分析能降低特征的冗余度,提高特征之間的獨立性[14],二維獨立分量分析是其改進方法,能大量減少特征的冗余性及相關(guān)性。
2.2.1 二維獨立分量分析算法
假設(shè)交通信號燈的模板庫特征為χ= { χ , i ∈ 1,2,… ,L }, χ ∈ Rn×n,L為其模板個數(shù),ii其協(xié)方差矩陣為:
其中:W是分離矩陣。為了得到矩陣W,令W={w1,…,wr}T,向量wi的更新步驟如下:
(1) 隨機選擇一個初始向量wi(L)。
(6) 更新結(jié)束,令wi=wi(N)。
其中:wi(L)和wi(N)分別是上一次和本次更新的向量,g=tanh(a1u),g′=1-(tanh(a1u))2,g′(u)是 g(u)的一階導數(shù),取a1=1。
2.2.2 特征提取
對于圖像特征 χi=(χi1,χi2,…,χin),用優(yōu)化特征向量矩陣S={s1,…,sr}來提取其特征:
映射特征向量Y1,…,Yr即為樣本特征χi的獨立主分量。樣本χi的特征矩陣可以降為n×r矩陣B=(Y1,Y2,…,Yr)。
城市中交通信號燈的類別 ci(i=1,2,…,9)有 9種,分別是紅色(禁止左轉(zhuǎn),禁止右轉(zhuǎn),禁止直行),綠色(左轉(zhuǎn),右轉(zhuǎn),直行),黃色(左轉(zhuǎn)警告,右轉(zhuǎn)警告,直行警告)。每類均有 Ni=200個訓練樣本是訓練樣本的總個數(shù)。
已檢測到的交通信號燈候選區(qū)域的特征為 B,由式(17)度量交通信號燈與樣本庫特征間的相似性:
其中:||·||2為2個向量間的歐式距離[14]。
令
其中:T為相似性閾值。
為了測試交通信號燈識別系統(tǒng)的性能,用配備工業(yè)相機的智能車在十字路口采集 25段有交通信號燈的視頻,幀率為25幀/s,分辨率為1 392×1 040,時長為16 s。
圖 4所示為本研究算法的檢測和識別結(jié)果,圖4(a)~(d)為一段在 4個交通信號燈路口采集的視頻序列的第1,172,210,701幀的實驗結(jié)果,圖4(e)~(h)則為有2個交通信號燈的視頻序列第1,95,110,608幀圖像的識別結(jié)果。交通信號燈的檢測結(jié)果用紅色矩形在圖中框出,識別結(jié)果則顯示在矩形框的左側(cè)。為了清楚起見,把交通信號燈區(qū)域的檢測和識別結(jié)果放大顯示在每幅圖的下方。實驗結(jié)果表明本研究算法能有效的檢測出紅色、黃色、綠色交通信號燈及其箭頭方向信息。
表1列出了不同天氣和光照條件下交通信號燈的檢測和識別效果,從表1可以看出:系統(tǒng)的檢測和識別率均在95%以上,而總體識別率(檢測率和識別率的乘積)超過了91%。交通信號燈識別失敗的主要原因是背景較為復雜,圖像曝光過度或者曝光不足等。
交通信號燈的識別系統(tǒng)用VC++.NET編寫,測試環(huán)境為2.5 GHz Pentium(R)雙核CPU,3 GB內(nèi)存。表2列出了交通信號燈識別過程的平均計算時間,單幅圖像的處理時間為152 ms,即可達到6.57幀/s的識別速度,滿足了交通信號燈進行實時識別的要求。
圖4 2段視頻中的交通信號燈的檢測和識別結(jié)果Fig. 4 Traffic Light detection and recognition results with 2 videos in urban scenes
表1 交通信號燈檢測和識別率Table 1 Detection and recognition rate of traffic light
表2 計算時間分析Table 2 Computation time analysis
(1) 從輸入圖像中分割出黑色區(qū)域,并根據(jù)交通信號燈的燈板形態(tài)特征,過濾明顯不符合的區(qū)域,以定位交通信號燈的黑色燈板區(qū)域。
(2) 從原圖中剪切出黑色燈板區(qū)域,并轉(zhuǎn)換到Y(jié)CbCr空間,以交通信號燈的顏色:對其進行分割,根據(jù)交通信號燈的形態(tài)特征,與燈板的相對位置來判斷是否為交通信號燈的候選區(qū)域。在不同的天氣條件下,檢測率在 96%以上,表明程序的穩(wěn)定檢測能力較高。
(3) 對獲得的交通信號燈候選區(qū)域,進行 Gabor小波變換,提取其特征信息,以二維獨立分量分析法來降低特征的冗余度,減少送入識別過程的特征數(shù)量。為提高算法的實時性,用簡單的最近鄰分類法來判斷交通信號燈的狀態(tài)信息。實驗表明該方法的識別率在95%以上,總共的計算時間為152 ms,能夠穩(wěn)定有效地識別城市環(huán)境中的箭頭型交通信號燈。
[1] Yung N H C, Lai A H S. An effective video analysis method for detecting red light runners[J]. IEEE Transactions on Vehicular Technology, 2001, 50(4): 1074-1084.
[2] Chung Y, Wang L, Chen S. A vision-based traffic light detection system at intersections[J]. Journal of National Taiwan Normal University: Mathematics, Science & Technology, 2002, 47:67-86.
[3] Shioyama T, Wu H, Nakamura N, et al. Measurement of the length of pedestrian crossing and detection of traffic lights from image data[J]. Measurement Science and Technology, 2002, 13:1450-1457.
[4] Hwang T H, Joo I H, Cho S I. Detection of traffic lights for vision-based car navigation systems[C]//Pacific-Rim Symposium on Image and Video Technology. Germany: Springer Verlag, 2006: 682-691.
[5] Masako O, Shinichiro O. Detection of traffic light using structural information[C]//2010 IEEE 10th International Conference on Signal Processing. Japan, USA: IEEE, 2010:809-812.
[6] Chinthaka H, Premachandra N, Yendo T, et al. Detection of LED traffic light by image processing for visible light communication system[C]//2009 IEEE on Intelligent Vehicles Symposium, USA.IEEE, 2009: 179-184.
[7] SHEN Yehu, Ozguner U, Redmill K, et al. A robust video based traffic light detection algorithm for intelligent vehicles[C]//2009 IEEE Intelligent Vehicles Symposium (IV). USA: IEEE, 2009:521-526.
[8] GONG Jianwei, JIANG Yanhua, XIONG Guangming, et al. The recognition and tracking of traffic lights based on color segmentation and CAMSHIFT for intelligent vehicles[C]//2010 IEEE Intelligent Vehicles Symposium. USA: IEEE, 2010:431-435.
[9] de Charette R, Nashashibi F. Real time visual traffic lights recognition based on spot light detection and adaptive traffic lights templates[C]//2009 IEEE Intelligent Vehicles Symposium(IV). USA: IEEE, 2009: 358-363.
[10] Levinson J, Askeland J, Dolson J, et al. Traffic light mapping,localization, and state detection for autonomous vehicles[C]//2011 IEEE International Conference on Robotics and Automation. USA: IEEE, 2011: 5784-5791.
[11] 谷明琴, 蔡自興, 李儀. 應(yīng)用圓形度和顏色直方圖的交通信號燈識別[J]. 計算機工程與設(shè)計, 2012, 33(1): 243-247.GU Mingqin, CAI Zixing, LI Yi. Traffic light recognition with circularity and color histogram[J]. Computer Engineering &Design, 2012, 33(1): 243-247.
[12] CAI Zixing, GU Mingqin, LI Yi. Real-time arrow traffic light recognition system for intelligent vehicle[C]//The 16th International Conference on Image Processing, Computer Vision,& Pattern Recognition. Las Vegas, 2012: 848-854.
[13] Daugman J G. Two dimensional spectral analysis of cortical receptive field profile[J]. Vision Research, 1980, 20(10):847-856.
[14] Hyvarinen A, Oja E. Independent component analysis:Algorithms and applications[J]. Neural Networks, 2000, 13(4/5):411-430.
[15] Theodoridis S, Koutroumbas K. 模式識別[M]. 第4版. 李晶皎,王愛俠, 王驕, 等譯. 北京: 電子工業(yè)出版社, 2010: 96-123.Theodoridis S, Koutroumbas K. Pattern recognition[M]. 4th ed.LI Jing-jiao, WANG Ai-xia, WANG Jiao, et al. transl. Beijing:Publishing House of Electronics Industry. 2010: 96-123