宋永超,巨永鋒,杜 凱,韓宜軒
(長安大學(xué) 電子與控制工程學(xué)院,西安 710064)
自動駕駛技術(shù)已成為智能交通系統(tǒng)最受關(guān)注的領(lǐng)域,諸如車輛自主定位、交通對象檢測等領(lǐng)域已獲得廣泛關(guān)注[1-2].作為自動駕駛系統(tǒng)和無人地面車輛的重要組成部分,紅綠燈的識別同樣具有很大的研究價值和現(xiàn)實意義[3-4].實際駕駛環(huán)境中,紅綠燈的識別也能為駕駛員提供駕駛策略,以及更安全、更智能的駕駛模式[5].
目前,基于紅綠燈的識別主要集中在視頻圖像領(lǐng)域,通過車載攝像頭自動捕獲紅綠燈圖像幀的檢測、特征提取及分類3個過程,實現(xiàn)紅綠燈的狀態(tài)識別[4].具體方法可以歸納總結(jié)為基于模型的方法和基于學(xué)習(xí)的方法兩類.基于模型的方法廣泛采用不同的顏色空間,文獻[6]提出基于分層視覺架構(gòu)的實時紅綠燈識別算法,使用歸一化RGB和HIS的聯(lián)合顏色空間確定紅綠燈候選區(qū)域,使用多層HOG特征識別紅綠燈.文獻[7]采用自適應(yīng)背景抑制濾波的實時紅綠燈識別方法,獲取紅綠燈候選區(qū)域,融合HOG與RGB顏色直方圖信息實現(xiàn)紅綠燈識別.文獻[8]提出基于語義分割的紅綠燈識別方法,通過語義分割方法產(chǎn)生紅綠燈候選區(qū)域,采用基于幾何和顏色特征分類器確認紅綠燈類別.文獻[9]提出使用顏色密度的實時紅綠燈識別方法,通過閾值化HSV顏色通道實現(xiàn)候選區(qū)域聚類,使用長寬比及經(jīng)驗閾值實現(xiàn)非燈區(qū)域濾除,利用顏色密度實現(xiàn)紅綠燈分類識別.文獻[10]提出基于貝葉斯統(tǒng)計框架的紅綠燈識別方法,使用時空一致性條件,保持識別過程的時空連續(xù)性,通過對顏色、形狀、非活動透鏡模式及GIS線索建模實現(xiàn)紅綠燈識別.在基于學(xué)習(xí)的方法方面,文獻[11]提出基于深度學(xué)習(xí)和顯著圖結(jié)合的紅綠燈識別方法,使用卷積神經(jīng)網(wǎng)絡(luò)提取和識別視覺圖像特征,使用正常光照識別產(chǎn)生的顯著圖輔助識別低光照條件下的紅綠燈.文獻[12]提出基于多重曝光圖像的紅綠燈識別算法,通過整合低曝光和正常曝光圖像的多重曝光技術(shù)解決了色彩飽和問題,利用基于方向梯度直方圖的SVM實現(xiàn)紅綠燈的分類.文獻[13]提出多類學(xué)習(xí)和多對象追蹤的紅綠燈識別方法,使用HSV顏色空間和塊檢測確定紅綠燈候選區(qū)域,使用訓(xùn)練好的PCANet實現(xiàn)紅綠燈逐幀識別.文獻[14]通過HSV顏色空間分割紅綠燈候選區(qū)域,使用最大穩(wěn)定極值區(qū)域定位正確的紅綠燈結(jié)構(gòu),提取紅綠燈候選區(qū)域和紅綠燈結(jié)構(gòu)的HOG特征,使用SVM實現(xiàn)紅綠燈分類.文獻[5]提出結(jié)合先驗特征和幀間分析的紅綠燈識別方法,以縱橫比、面積、位置及上下文信息為先驗,通過特征選擇、訓(xùn)練多檢測器并利用幀間相關(guān)分析實現(xiàn)紅綠燈識別.
然而,以上基于模型的研究中沒有充分考慮運用顏色空間理論時不同幀紅綠燈的光照差異(背光、朝光)及同一幀中不同位置處紅綠燈的光照變化對識別結(jié)果的影響;而基于學(xué)習(xí)的研究中,對于普通學(xué)習(xí)方法學(xué)習(xí)的樣本數(shù)量及種類存在局限,導(dǎo)致結(jié)果普適性較差,對于深度學(xué)習(xí)方法則需要大量的樣本做支撐,同時需要較長的執(zhí)行時間和昂貴的硬件成本,應(yīng)用前景較差.基于以上,本文作者提出基于色度方向角的離線道路紅綠燈識別算法,采用地平線確定算法,獲取紅綠燈待識別區(qū)域,提出采用手工標定不同場景紅燈、綠燈色塊,求取紅燈、綠燈色塊集合圖色度方向角,獲得各自的色度方向圖的方法,建立紅綠燈識別分類器,最后通過識別分類器識別不同圖像序列中的紅綠燈.
傳統(tǒng)光學(xué)傳感器模型表明,圖像采集設(shè)備獲取數(shù)據(jù)是經(jīng)過光源光譜功率分布、物體表面反射和光譜傳感器成像呈現(xiàn)的能量結(jié)果.光譜功率分布用E(λ)表示,表面反射函數(shù)用S(λ)表示,相機感光函數(shù)用Qk(λ)表示[15],則RGB彩色圖像三通道值為
k=R,G,B
(1)
式中σ為朗伯特陰影.
假設(shè)相機感光函數(shù)Qk(λ)是狄拉克δ函數(shù)[16],即Qk=qkδ(λ-λk),則式(1)變?yōu)?/p>
Rk=σE(λk)S(λk)qk,
k=R,G,B
(2)
假設(shè)光照近似為普朗克法則[16],則
(3)
式中:k1和k2是常量;T表示光照顏色;I表示光照總強度.
由式(3)近似得到RGB彩色三通道為
k=R,G,B或k=1,2,3
(4)
定義2維色度為
(5)
ρk=ln(ck)=ln(sk/sp)+(ek-ep)/T
(6)
式(6)是以T為參數(shù)的直線,二維矢量e=ek-ep的方向獨立于物體的表面,對于不同的物體表面,其直線有不同的偏移量,偏移量依賴于sk.
理想狀況下,e的方向是相機的固有參數(shù),在普朗克光源,朗伯特反射,窄帶傳感器3個假設(shè)條件同時滿足的情況下呈現(xiàn)的結(jié)果.但現(xiàn)實中大多數(shù)圖像傳感器都不是窄帶類型,使用假設(shè)條件存在太多的限制.對使用消費相機拍攝的麥克白顏色方格的校準試驗中,很明顯沒有占主導(dǎo)的方向e,盡管每個顏色表面產(chǎn)生線性細長的點云,但每個主軸的方向并不一致,如圖1中l(wèi)og色度圖所示.實際測量中e的方向根據(jù)圖像內(nèi)容發(fā)生變化,把每個顏色方向ei(i為顏色類型)對應(yīng)的角度θi(0≤θi≤180)稱為色度方向角.
色度方向角具有以下特性:
1)每種顏色的主軸方向不一致,有利于差異化區(qū)分不同種類的顏色類型;
2)紅色、綠色的色度方向角差異明顯,為準確區(qū)分紅燈、綠燈提供基礎(chǔ);
3)采用對數(shù)色度空間獲取色度方向角,有利于提高光照變化對識別結(jié)果影響的魯棒性.
正是基于色度方向角的上述特性,本文提出將色度方向角應(yīng)用于城市紅綠燈識別研究中.
圖1 識別框架整體流程圖Fig.1 Overall flow chart for identification framework
本文提出的紅綠燈識別算法主要包括紅綠燈分類器獲取和紅綠燈識別兩部分.分類器獲取階段:利用幾何均值對數(shù)色度空間,根據(jù)香農(nóng)熵確定紅燈、綠燈各自的色度方向角θ,得到色度方向圖Iθ,設(shè)定分割閾值建立紅綠燈識別分類器.識別階段:通過地平線確定算法獲取紅綠燈待識別區(qū)域,將色度方向圖輸入建立的分類器中進行分類識別,并加入幾何特征限制因素獲取最終識別結(jié)果.本文算法整體流程圖如圖1所示.
采用基于平行坐標系參數(shù)化的級聯(lián)霍夫變換方法獲取道路消失點.首先通過級聯(lián)霍夫變換算法把原本無限大的空間轉(zhuǎn)變?yōu)橐粋€有限的菱形空間,接著對空間進行柵格化處理,采用投票方法找出消失點[17].
消失點位置確定后,其所在的水平線即為所求地平線位置,圖像中地平線以上區(qū)域即為紅綠燈識別感興趣區(qū)域.消失點及地平線確定示意圖見圖2.
圖2 消失點及地平線示意圖Fig.2 Vanishing point and horizon sketch map
由于每種顏色對應(yīng)的色度方向角θ不同,對于紅綠燈識別研究,本文選擇紅色和綠色兩種顏色作為目標顏色進行色度方向角的標定.
1)獲取N幀紅燈、綠燈圖像序列:N應(yīng)足夠大,包含不同道路場景、不同光照條件、不同位置情景下的紅綠燈圖像.
2)紅燈、綠燈樣本采集:本文收集不同環(huán)境,不同道路場景下的紅綠燈圖,將兩種顏色進行分類,組成紅燈和綠燈集合圖,分別用PR=(RRi,RGi,RBi),PG=(GRi,GGi,GBi)代替,i=1,2,…,N,如圖1中所示.分別將兩種組合圖作為輸入,依據(jù)色度方向角理論求取紅燈和綠燈對應(yīng)的色度方向角θ.
3)求解最小熵:本文引入香農(nóng)熵[15]確定θ.
η=-∑pi(Pθ)ln(pi(Pθ))
(7)
式中:η為熵值;Pθ為將二維對數(shù)色度ρk(k=1,2)投影到e⊥(與e正交的二維矢量)方向的投影結(jié)果圖;pi是Pθ灰度直方圖中灰度值落入第i個條內(nèi)的概率;Pθ灰度直方圖的條帶寬w用Scott法則[10]確定
w=3.5std(Pθ)W-1/3
(8)
式中:W是圖像的尺寸大?。?/p>
由熵的定義可知,若Pθ灰度直方圖中所包含的bin越多,則pi越小,熵越大.因此,最小熵值對應(yīng)的角度即為紅燈、綠燈圖像的色度方向θ,如圖3所示.
圖3 紅燈和綠燈熵值角度曲線Fig.3 Entropy angle graphs about red and green light
為進一步去除復(fù)雜環(huán)境下不利噪聲對結(jié)果的影響,基于色度方向角,引入幾何均值對數(shù)色度空間獲取色度方向圖.設(shè)Cref為紅燈、綠燈集合圖像RGB三通道Rk(k=1,2,3)的幾何均值,則
(9)
則色度為
ck=Rk/Cref
(10)
對式(10)取對數(shù)得
ρk=ln(ck)
(11)
(12)
式中:χ是2維列向量,U=[v1,v2]T,
由此,色度方向圖為
Iθi=χ1cosθi+χ2sinθi
(13)
2.4.1 識別分類器建立
分別選取n幀紅燈、綠燈色度方向圖圖像,手工標定紅燈、綠燈所在區(qū)域,構(gòu)建紅燈、綠燈模型,通過計算置信區(qū)間,建立紅燈、綠燈識別分類器,實現(xiàn)紅燈、綠燈狀態(tài)識別.
本文采用正態(tài)分布模型對手工標定紅、綠燈區(qū)域樣本集進行擬合,并分別建立紅、綠燈置信區(qū)間分類器.取紅燈區(qū)域正態(tài)分布中心90%的數(shù)據(jù)為紅燈色度特征,置信區(qū)間為
[λ1,λ2]=[μR-1.65σR,μR+1.65σR].
色度方向圖中值介于[λ1,λ2]范圍內(nèi)的點為紅燈;取綠燈區(qū)域正態(tài)分布中心可信度為1-α=0.90的特征,建立綠燈置信區(qū)間[λ3,λ4]=[μG-1.65σG,μG+1.65σG].紅綠燈識別分類器可定義為
(14)
2.4.2 識別過程
輸入待識別圖像序列,通過地平線確定算法獲取紅綠燈待識別區(qū)域,分別求取紅燈、綠燈色度方向圖,將色度方向圖輸入建立的紅綠燈識別分類器中進行分類識別,獲取最終識別結(jié)果.
識別過程中會存在噪聲干擾,本文加入幾何特征限制因素,對閾值分割結(jié)果使用圓形度進行判定,設(shè)圓形度為
SC=(4πs)/(p·p)
(15)
式中:s代表區(qū)域塊的面積;p代表區(qū)域塊的周長.
設(shè)定圓形度閾值為TC,對閾值分割結(jié)果實行圓形度判斷得
(16)
本文將提出的基于色度方向角的識別框架應(yīng)用于兩個公開的紅綠燈標準集上:LARA標準集[18]和LISA標準集[4],兩個標準集道路環(huán)境均為城市道路環(huán)境,試驗設(shè)定N為200,n為100.
LARA標準集是專門用于紅綠燈識別的標準數(shù)據(jù)集,利用未校準相機采集自法國巴黎市中心,包含了大量復(fù)雜的道路場景(多車、多干擾、多抖動),每幀圖像分辨率為640×480像素,共11 179幀,包含了5 280個紅燈,3 381個綠燈.
LISA紅綠燈數(shù)據(jù)集采集自美國加利福尼亞州圣地亞哥市,序列場景切換幅度大,光照變化強烈,場景干擾較多,本文選用其中的Day Test 數(shù)據(jù)集作為實驗集,圖像分辨率為1 280×960像素,共4 061幀,包含了2 545個紅燈,3 306個綠燈.兩個數(shù)據(jù)集的具體信息如表1所示.
表1 實驗數(shù)據(jù)集信息
實驗采用Windows 7旗艦版64位操作系統(tǒng),CPU為IntelCore i5-4570,3.2 GHz,內(nèi)存為8 G的PC機作為實驗平臺,實驗環(huán)境為Matlab2017b.
本文僅考慮圓形紅綠燈的識別過程,而LARA標準集也僅包含圓形紅綠燈.實驗設(shè)定紅燈色度方向圖閾值范圍為[λ1,λ2]=[-0.57,-0.22],綠燈色度方向圖閾值范圍為[λ3,λ4]=[0.42,1.01],圓形度閾值TC為0.7.為了說明本文提出的紅綠燈識別框架的準確性與優(yōu)良性,本文對比了同樣使用LARA標準集的文獻[7-8,19]識別方法,使用統(tǒng)計測量中的精確率、召回率參數(shù)來評估所提出的方法與另外3種方法的性能,圖4描繪了4種紅綠燈識別方法的精確率、召回率對比結(jié)果.
圖4 四種紅綠燈識別方法的精確率和召回率對比Fig.4 Comparisons of four traffic light identification methods’ precision and recall
通過對比4種識別方法的準確率和召回率直方圖,可以直觀發(fā)現(xiàn)本文提出的識別方法相比于文獻[8]、文獻[19]識別方法存在較大優(yōu)勢,相比于文獻[7]識別結(jié)果相當(dāng),主要由于文獻[7]使用了較復(fù)雜的AdaBSF模型和SVM分類器.本文采用離線的紅綠燈識別方法,實時性大大增強,平均每幀的識別時間約為27 ms.
對本實驗圖集進行基于色度方向角的離線城市道路紅綠燈識別算法實驗.部分典型場景識別結(jié)果如圖5所示,其中,第1、3列為原圖,2、4列為識別結(jié)果圖.場景主要包括:背景復(fù)雜情況下的識別,距離相對較遠時的識別,車輛較多干擾下的識別,同時出現(xiàn)多個紅綠燈的識別等.
圖5 LARA數(shù)據(jù)集典型場景識別結(jié)果Fig.5 Recognition results of LARA data set typical scene
為了進一步說明本文識別系統(tǒng)的優(yōu)良性,本文在一個最新的紅綠燈數(shù)據(jù)集LISA上進行測試.實驗設(shè)定紅燈和綠燈色度方向圖閾值范圍[λ1,λ2],[λ3,λ4]不變,圓形度閾值TC不變.
實驗使用精確率P、召回率R和綜合評價指標F測定識別框架在LISA數(shù)據(jù)集上的性能,其中,F(xiàn)=2PR/(P+R),表2描述了本文提出的紅綠燈識別框架在LISA數(shù)據(jù)集上的識別結(jié)果.
表2 本文方法在LISA數(shù)據(jù)集上的識別結(jié)果
實驗結(jié)果發(fā)現(xiàn),本文提出的識別框架具有很好的精確率,召回率和綜合評價指標,平均精確率為91.08%,平均召回率為86.38%,可得綜合評價指標為88.67%.注意到,LISA數(shù)據(jù)集使用了與LASA數(shù)據(jù)集相同的實驗參數(shù),盡管對LISA數(shù)據(jù)集的識別沒有任何的先驗知識,但識別方法一直有較穩(wěn)健的性能輸出,且實時性也滿足實際要求,因此本文提出的識別框架具有很好的可擴展性.
對本實驗圖集進行識別實驗.部分典型城市道路場景識別結(jié)果如圖6所示,其中,第1、3列為原圖,2、4列為識別結(jié)果圖.1~2行為紅燈識別結(jié)果,3~4行為綠燈識別結(jié)果,同種顏色不同位置的紅綠燈存在明顯的顏色差異.1、3行為面光條件下,光照較強情形的識別結(jié)果;2、4行為背光條件下,光照相對較暗情形下的識別結(jié)果.場景也包括了背景復(fù)雜、距離相對較遠、車輛較多干擾等典型情況.
圖6 LISA數(shù)據(jù)集典型場景識別結(jié)果Fig.6 Recognition results of LISA data set typical scene
1)提出了利用色度方向角的離線紅綠燈識別框架,在紅燈、綠燈色塊標定,色度方向角確定,色度方向圖獲取,識別分類器建立,實驗驗證等方面做了充實的工作.
2)充分考慮了不同幀紅綠燈的光照差異(背光、朝光)以及同一幀中不同位置處紅綠燈的光照變化引起的顏色差異對識別結(jié)果的影響,將色度方向角應(yīng)用于紅路燈檢測識別分類中,跳出傳統(tǒng)顏色空間的固有思維,獲得了較為準確的檢測識別結(jié)果.
3)算法在公共標準數(shù)據(jù)集(LARA,LISA)下進行了實驗,該數(shù)據(jù)集包含了各種典型的紅綠燈交通情景.實驗結(jié)果表明:相較于已有文獻的識別方法,本文提出的算法在LARA和LISA數(shù)據(jù)集的測試中均能獲得較好的準確率P、召回率R和綜合評價指標F,同時本文采用離線的紅綠燈識別框架,識別速率大大提升,能滿足實際道路場景紅綠燈識別的實時性要求.
下一步工作考慮引入跟蹤算法,在保證識別準確率的前提下進一步簡化識別流程,節(jié)省檢測時間.同時,將車道檢測與紅綠燈識別相結(jié)合,確定出不同車道對應(yīng)的紅綠燈結(jié)果.