本發(fā)明涉及智能車輛的環(huán)境感知領(lǐng)域與交通安全領(lǐng)域,特別涉及一種基于卷積網(wǎng)絡(luò)的交通信號(hào)燈識(shí)別算法。
背景技術(shù):
近年來,全國(guó)民用汽車保有量持續(xù)增加,但是許多駕駛員并沒有養(yǎng)成良好的駕駛操作習(xí)慣,因此導(dǎo)致交通事故的頻繁發(fā)生。所以,提高交通運(yùn)行安全成為了社會(huì)上的熱點(diǎn)問題,有關(guān)車載輔助駕駛系統(tǒng)的研究也成為了熱點(diǎn)。
在車載輔助駕駛系統(tǒng)中,交通信號(hào)燈識(shí)別尤為重要,它既可以輔助駕駛員駕駛,也可以幫助色盲、色弱者了解前方道路交通信號(hào)燈的狀態(tài)。但是交通信號(hào)燈識(shí)別受距離影響而導(dǎo)致其遠(yuǎn)近尺度大小不一,再加上易受到外界條件(如遮擋、光照)的影響,所以實(shí)現(xiàn)魯棒性檢測(cè)與識(shí)別非常困難。
申請(qǐng)?zhí)枮?01610902205.8的中國(guó)發(fā)明專利申請(qǐng)公開了一種基于紅外線的檢測(cè)識(shí)別交通信號(hào)燈的方法及裝置。利用車輛、交通信號(hào)燈周圍安裝的紅外線裝置、控制臺(tái)三者來實(shí)現(xiàn)當(dāng)前路口當(dāng)前的信號(hào)燈信息傳遞。首先,車輛通過安裝在路口的紅外線發(fā)射裝置來確定自己的位置,然后接受控制臺(tái)發(fā)射的對(duì)應(yīng)路口的交通信號(hào)燈信息。
但是該方法需要大量資金來建設(shè)基礎(chǔ)設(shè)置,同時(shí)不能保證在任一城市該系統(tǒng)都可運(yùn)用。
申請(qǐng)?zhí)枮?01510181832.2的中國(guó)發(fā)明專利申請(qǐng)公開了一種交通信號(hào)燈的定位方法。通過對(duì)交通信號(hào)燈圖像進(jìn)行擴(kuò)展,并計(jì)算出圖像的二值圖,從中提取亮區(qū)面積、小面積亮區(qū)數(shù)目等多種信息,計(jì)算出當(dāng)前為白天還是夜晚。若是白天,再結(jié)合黑色框架來定位信號(hào)燈。若是晚上則利用亮度信息。
該發(fā)明在白天需要標(biāo)準(zhǔn)的黑色背景框架信息,但是在很多地區(qū)交通信號(hào)燈背景板并不標(biāo)準(zhǔn)。所以,因此設(shè)計(jì)一個(gè)高效的實(shí)時(shí)的交通信號(hào)燈識(shí)別算法,具有重要的意義。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種基于卷積網(wǎng)絡(luò)的交通信號(hào)燈識(shí)別算法,以在車載環(huán)境下快速、精確的識(shí)別前方交通信號(hào)燈的顏色與形狀,輔助車輛駕駛員駕駛,同時(shí)向色盲與色弱者提供當(dāng)前道路的交通信號(hào)燈信息。
說明:
1)根據(jù)我國(guó)《gb14886-2006道路交通信號(hào)燈設(shè)置與安裝規(guī)范》,對(duì)智能汽車駕駛具有意義的信號(hào)燈主要是:機(jī)動(dòng)車信號(hào)燈與方向指示信號(hào)燈。因此,本發(fā)明中所述的交通信號(hào)燈僅為機(jī)動(dòng)車信號(hào)燈與方向指示信號(hào)燈;
2)本發(fā)明中所述的交通信號(hào)燈一級(jí)分類包括橫向交通信號(hào)燈、豎向交通信號(hào)燈、非交通信號(hào)燈;
3)本發(fā)明中所述的區(qū)域均為矩形;
4)本發(fā)明中所述的顏色包括紅色、綠色、黃色;
5)本發(fā)明中所述的交通信號(hào)燈形狀包括圓形、左轉(zhuǎn)箭頭、直行箭頭、右轉(zhuǎn)箭頭。
本發(fā)明實(shí)施例提供了一種基于卷積網(wǎng)絡(luò)的交通信號(hào)燈識(shí)別算法,所述算法包括:
原始圖像采集與處理模塊,用于采集車輛行駛前方的圖像數(shù)據(jù),并對(duì)圖像分辨率進(jìn)行處理,得到rgb色彩空間的輸入圖像。
輸入圖像特征提取模塊,用于依靠多層卷積特征提取器從所述的輸入圖像中提取特征,得到卷積特征圖。
候選區(qū)域獲取模塊,用于依靠滑動(dòng)窗口從所述的卷積特征圖中獲取信息,并將滑動(dòng)窗口與所述的輸入圖像中的某一塊區(qū)域建立映射關(guān)系,以此得到圖像區(qū)域集合,同時(shí)獲取所述每個(gè)圖像區(qū)域中交通信號(hào)燈區(qū)域的精確位置。最終從所述的圖像區(qū)域集合中挑選出最有可能包含交通信號(hào)燈的圖像區(qū)域,生成候選區(qū)域集合。
交通信號(hào)燈候選區(qū)域獲取模塊,結(jié)合滑動(dòng)窗口信息以及全連接與奇異值分解,得到所述的候選區(qū)域集合中每個(gè)候選區(qū)域的特征向量,進(jìn)而從中分離出含有交通信號(hào)燈的候選區(qū)域,生成交通信號(hào)燈候選區(qū)域集合。
交通信號(hào)燈檢測(cè)模塊,用于通過位置回歸器來確定所述的每個(gè)交通信號(hào)燈候選區(qū)域在輸入圖像中的精確位置,結(jié)合模塊13,最終得到每個(gè)交通信號(hào)燈候選區(qū)域中交通信號(hào)燈區(qū)域在所述的輸入圖像中的精確位置。所述的精確位置包括矩形框的中點(diǎn)坐標(biāo)、矩形框的長(zhǎng)與寬。顏色與形狀識(shí)別模塊,用于將所述的交通信號(hào)燈區(qū)域從rgb色彩空間轉(zhuǎn)化為hsv色彩空間,分割出交通信號(hào)燈背景板的二值圖像,并根據(jù)交通信號(hào)燈背景板的特征、交通信號(hào)燈發(fā)光部分的特征以及交通信號(hào)燈一級(jí)分類,確定交通信號(hào)燈的顏色與形狀。所述交通信號(hào)燈背景板的特征包括交通信號(hào)燈背景板區(qū)域的明度、幾何特征。所述的交通信號(hào)燈發(fā)光部分的特征包括圓形度、幾何特征、連通域大小以及發(fā)光部分相對(duì)于所述的交通信號(hào)燈背景板的二值圖像的相對(duì)位置。
識(shí)別結(jié)果輸出模塊,用于產(chǎn)生相應(yīng)的語音、文字等提示信息,輸出識(shí)別結(jié)果。
本發(fā)明的優(yōu)點(diǎn)為:
本發(fā)明充分運(yùn)用了卷積計(jì)算的優(yōu)點(diǎn),能夠降低光照、遮擋、車輛運(yùn)動(dòng)對(duì)識(shí)別精度的影響,提高抗干擾能力。
本發(fā)明中的多層卷積特征提取器可根據(jù)實(shí)際需求擴(kuò)大、縮小、更新。
本發(fā)明的應(yīng)用場(chǎng)景為任意含有交通信號(hào)燈的道路。
本發(fā)明不會(huì)影響車輛結(jié)構(gòu),對(duì)使用車輛無限制。
本發(fā)明提供音頻信息,可完成輔助駕駛功能,同時(shí)向色盲與色弱者提供當(dāng)前交通信號(hào)燈信息。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例中交通信號(hào)燈識(shí)別系統(tǒng)結(jié)構(gòu)示意圖;
圖2為本發(fā)明實(shí)施例中多層卷積特征提取器示意圖;
圖3為本發(fā)明實(shí)施例中豎向交通信號(hào)燈的示意圖;
圖4為本發(fā)明實(shí)施例中箭頭信號(hào)燈形狀判斷示意圖。
具體實(shí)施方式
如圖1所示,交通信號(hào)燈識(shí)別算法包含原始圖像采集與處理模塊11、輸入圖像特征提取模塊12、候選區(qū)域獲取模塊13、交通信號(hào)燈候選區(qū)域獲取模塊14、交通信號(hào)燈檢測(cè)模塊15、顏色與形狀識(shí)別模塊16以及識(shí)別結(jié)果輸出模塊17。
原始圖像采集與處理模塊11,用于采集車輛行駛前方的圖像數(shù)據(jù),并對(duì)圖像分辨率進(jìn)行處理,得到rgb色彩空間的輸入圖像。
原始圖像由固定于車輛前端的車載攝像頭拍攝,,用于采集車輛行駛前方的圖像數(shù)據(jù)。模塊將對(duì)所述原始圖像的分辨率進(jìn)行調(diào)整,得到系統(tǒng)的輸入圖像。
采用以下公式對(duì)所述的原始圖像分辨率進(jìn)行調(diào)整:
其中pw、ph為所述的原始圖像的長(zhǎng)與高,npw、nph是所述的輸入圖像的長(zhǎng)與高。
輸入圖像特征提取模塊12,用于依靠多層卷積特征提取器從所述的輸入圖像中提取特征,得到卷積特征圖。
將所述的輸入圖像輸入到所述的多層卷積特征提取器中,多層卷積特征提取器結(jié)構(gòu)如圖2所示,可得到所述輸入圖像的n張卷積特征圖,優(yōu)選地,n可以為512。所述的卷積特征圖的長(zhǎng)與高相比于所述的輸入圖像的長(zhǎng)與高均縮小了16倍。
多層卷積特征提取器中主要包含卷積、特征抽取、網(wǎng)絡(luò)激活三個(gè)操作。采用以下公式對(duì)所述輸入圖像進(jìn)行卷積操作:
其中
其中
采用以下公式對(duì)所述輸入圖像進(jìn)行網(wǎng)絡(luò)激活:
f(x)=max(0,x)
候選區(qū)域獲取模塊13,靠滑動(dòng)窗口從所述的卷積特征圖中獲取信息,并將滑動(dòng)窗口與所述的輸入圖像中的某一塊區(qū)域建立映射關(guān)系,以此得到圖像區(qū)域集合,同時(shí)獲取所述圖像區(qū)域中交通信號(hào)燈區(qū)域的精確位置。最終從所述的圖像區(qū)域集合中挑選出最有可能包含交通信號(hào)燈的圖像區(qū)域,生成候選區(qū)域集合。
利用大小為x*x的滑動(dòng)窗口從所述的卷積特征圖中得到信息,優(yōu)選地,x可以為3根據(jù)輸入圖像與卷積特征圖的坐標(biāo)關(guān)聯(lián)性(即輸入圖像的某像素點(diǎn)坐標(biāo)參數(shù)除以16,則可得到其在卷積特征圖中所對(duì)應(yīng)的坐標(biāo)),利用三種不同尺寸以及三種不同長(zhǎng)寬比將滑動(dòng)窗口與輸入圖像之間建立映射關(guān)系。即用滑動(dòng)窗口的信息來代表輸入圖像中的某一塊區(qū)域。
所述的不同長(zhǎng)寬比分別為1:1,1:2,2:1,所述的不同尺寸其長(zhǎng)與寬均大于等于48,且為16的倍數(shù)即可,例如48x48,96x192等。進(jìn)而,可以得到一組圖像區(qū)域的集合。
根據(jù)圖像區(qū)域滑動(dòng)窗口的信息,目標(biāo)判別器(cls)將得到所述的圖像區(qū)域中可能含有交通信號(hào)燈的概率,而坐標(biāo)回歸器(reg)將得到所述的圖像區(qū)域中交通信號(hào)燈區(qū)域的精確位置。
采用以下公式得到所述的圖像區(qū)域中交通信號(hào)燈區(qū)域的精確位置:
其中x,xa分別表示交通信號(hào)燈區(qū)域的中點(diǎn)的x軸坐標(biāo)值,圖像區(qū)域的中點(diǎn)的x軸坐標(biāo)值,wa,tx為坐標(biāo)預(yù)測(cè)參數(shù)。y、w、h三個(gè)參數(shù)組則代表縱軸、寬、高。
從所述的圖像區(qū)域集合中選取交通信號(hào)燈概率排名前m的區(qū)域,結(jié)合相應(yīng)的位置信息,組成候選區(qū)域集合。優(yōu)選地,m可以為200。
在實(shí)施例中,模塊12依靠多層卷積特征提取器來提取所述輸入圖像的特征,模塊13依靠目標(biāo)判別器、坐標(biāo)回歸器來得到所述的某一圖像區(qū)域包含交通信號(hào)燈的概率以及交通信號(hào)燈區(qū)域。為了使系統(tǒng)能更好的獲取這些信息,在實(shí)際設(shè)計(jì)時(shí)具體包括:訓(xùn)練部分和檢測(cè)部分。訓(xùn)練部分具體為:首先,選取大量的包含交通信號(hào)燈的圖像,并對(duì)這些圖像中的交通信號(hào)燈區(qū)域進(jìn)行標(biāo)注,得到交通信號(hào)燈的真實(shí)區(qū)域。系統(tǒng)將根據(jù)標(biāo)注信息與交通信號(hào)燈的真實(shí)區(qū)域,自動(dòng)生成大量的正樣本與負(fù)樣本,然后不斷將這些正負(fù)樣本帶入多層卷積特征提取器、目標(biāo)判別器、坐標(biāo)回歸器中優(yōu)化其中的參數(shù)值,以此得到系統(tǒng)所使用的多層卷積特征提取器、目標(biāo)判別器、坐標(biāo)回歸器。舉個(gè)例子,某一圖像中包含交通信號(hào)燈,通過標(biāo)注,系統(tǒng)將得到所述圖像中交通信號(hào)燈的真實(shí)區(qū)域,滑動(dòng)窗口則將不斷向系統(tǒng)提供圖像中的某一區(qū)域。若所述的圖像中的某一區(qū)域與真實(shí)區(qū)域的交集除以它們的并集大于0.7,系統(tǒng)將這一區(qū)域認(rèn)定為正樣本,小于0.3則認(rèn)定為負(fù)樣本。目標(biāo)判別器可根據(jù)所述的正負(fù)樣本信息與滑動(dòng)窗口提供的信息,優(yōu)化參數(shù),以更好的判斷所述圖像中的某一區(qū)域中可能含有交通信號(hào)燈的概率。經(jīng)過訓(xùn)練,使各類判別器的參數(shù)達(dá)到收斂。檢測(cè)部分:利用已經(jīng)確定參數(shù)的系統(tǒng),從所述輸入圖像中得到候選區(qū)域集合。
交通信號(hào)燈候選區(qū)域獲取模塊14,用于從候選區(qū)域所對(duì)應(yīng)的滑動(dòng)窗口中獲取信息,然后利用全連接與奇異值分解得到所述的候選區(qū)域集合中每個(gè)候選區(qū)域的特征向量,進(jìn)而從中分離出交通信號(hào)燈候選區(qū)域集合。
首先,將所述的候選區(qū)域所對(duì)應(yīng)的滑動(dòng)窗口特征輸入到全連接網(wǎng)絡(luò)中,得到目標(biāo)候選區(qū)域的4096維特征向量。
在特征向量計(jì)算中利用奇異值分解,加快計(jì)算速度。
采用以下公式完成奇異值分解:
w≈u∑tvt
其中w是權(quán)重矩陣,u是左奇異向量,∑t是對(duì)角矩陣,vt是右奇異向量。
將目標(biāo)候選區(qū)域的特征向量輸入到softmax分類器中,得到每個(gè)候選區(qū)域的一級(jí)分類及各種分類的概率,通過閾值θ分離出交通信號(hào)燈的候選區(qū)域及其一級(jí)類別。
采用以下公式進(jìn)行softmax概率判斷:
其中,wk表示交通信號(hào)燈候選區(qū)域?yàn)轭悇ek的概率,xk表示交通信號(hào)燈候選區(qū)域?yàn)轭悇ek的參數(shù)。當(dāng)wk大于閾值θ時(shí),則將所述的交通信號(hào)燈候選區(qū)域認(rèn)定為類別k。
上述的閾值θ為多次計(jì)算后的經(jīng)驗(yàn)值。優(yōu)選地,θ可以為0.85。
交通信號(hào)燈檢測(cè)模塊15,用于通過位置回歸器來確定所述的每個(gè)交通信號(hào)燈候選區(qū)域在輸入圖像中的精確位置,結(jié)合模塊13,最終得到每個(gè)交通信號(hào)燈候選區(qū)域中交通信號(hào)燈區(qū)域在所述的輸入圖像中的精確位置。所述的精確位置包括矩形框的中點(diǎn)坐標(biāo)、矩形框的長(zhǎng)與寬。
通過將所述的交通信號(hào)燈的候選區(qū)域在輸入圖像中的粗略位置信息輸入位置回歸器中,得到交通信號(hào)燈的候選區(qū)域在輸入圖像中的精確位置。
采用以下公式得到所述交通信號(hào)燈的候選區(qū)域在輸入圖像中的精確位置:
其中,p表示候選區(qū)域在輸入圖像中的粗略位置,f表示候選區(qū)域在輸入圖像中的精確位置。x,y,w,h分別表示交通信號(hào)燈的候選區(qū)域的中點(diǎn)x、y、長(zhǎng)與度。d*(p)表示位置調(diào)整函數(shù)。
在得到交通信號(hào)燈的候選區(qū)域在輸入圖像中的精確位置后,結(jié)合模塊13,可最終得到每個(gè)交通信號(hào)燈候選區(qū)域中交通信號(hào)燈區(qū)域在輸入圖像中的精確位置。顏色與形狀識(shí)別模塊,用于將所述的交通信號(hào)燈區(qū)域從rgb色彩空間轉(zhuǎn)化為hsv色彩空間,分割出交通信號(hào)燈背景板的二值圖像,并根據(jù)交通信號(hào)燈背景板的特征、交通信號(hào)燈發(fā)光部分的特征以及交通信號(hào)燈一級(jí)分類,確定交通信號(hào)燈的顏色與形狀。所述交通信號(hào)燈背景板的特征包括交通信號(hào)燈背景板區(qū)域的明度、幾何特征。所述的交通信號(hào)燈發(fā)光部分的特征包括圓形度、幾何特征、連通域大小以及發(fā)光部分相對(duì)于所述的交通信號(hào)燈背景板的二值圖像的相對(duì)位置。
hsv是色彩空間的一種,其中v通道代表了色彩的明度。
采用以下公式將所述的交通信號(hào)燈區(qū)域轉(zhuǎn)換到hsv色彩空間:
所述交通信號(hào)燈背景板的特征包括背景板的顏色,發(fā)光情況,且豎向交通信號(hào)燈長(zhǎng)寬比大于3,如圖3所示,a/b一般情況下大于3。橫狀向通信號(hào)燈長(zhǎng)寬比小于0.33。
采用以下公式將交通信號(hào)燈區(qū)域二值化:
其中point(x,y)表示交通信號(hào)燈區(qū)域的一個(gè)像素點(diǎn),(x,y)是像素點(diǎn)的坐標(biāo),r,b,g表示該像素在rbg色彩空間的值,v表示該像素在hsv中v通道的值。
t2與t1是統(tǒng)計(jì)后得到的閾值。通常的,t1可以為160,t2可以為80。
以豎向交通信號(hào)燈為例,如圖3:
在得到交通信號(hào)燈區(qū)域二值圖像后,從中分割出交通信號(hào)燈背景板二值圖,并得到輸入圖像中對(duì)應(yīng)的交通信號(hào)燈背景板的原圖,然后將所述的交通信號(hào)燈背景板的原圖的大小調(diào)整為51*15。
再次利用hsv色彩空間對(duì)所述交通信號(hào)燈背景板的原圖做二值化處理,此時(shí)僅將t2<200作為約束條件,得到背景板二值圖。
將所述的背景板二值圖,從上到下分割為3部分,分別代表紅色發(fā)光區(qū)域、黃色發(fā)光區(qū)域、綠色發(fā)光區(qū)域,如圖3所示。
采用以下公式計(jì)算三種區(qū)域內(nèi)各自的發(fā)光像素值:
li=sum(point(xi,yi))(i∈area(i))
其中,i代表由上到下的3個(gè)區(qū)域,l代表區(qū)域內(nèi)的像素值和,area代表區(qū)域范圍。最后,l值最大的區(qū)域即為交通信號(hào)燈發(fā)光區(qū)域,由此可得到所述的交通信號(hào)燈區(qū)域的顏色信息,并獲取所述的交通信號(hào)燈發(fā)光區(qū)域在輸入圖像中的原圖。利用hsv色彩空間對(duì)交通信號(hào)燈發(fā)光區(qū)域在輸入圖像中的原圖進(jìn)行二值化操作,僅將t2<160作為約束條件,得到發(fā)光區(qū)域二值圖。
對(duì)所述的發(fā)光區(qū)域二值圖進(jìn)行預(yù)處理,包括形態(tài)學(xué)處理以及幾何特征過濾。
對(duì)所述的發(fā)光區(qū)域二值圖進(jìn)行閉運(yùn)算,獲取連通域,再選取其中面積最大的連通域,此連通域?yàn)榘l(fā)光信號(hào)燈。
通過圓形度信息,利用閾值t3對(duì)所述的發(fā)光信號(hào)燈的形狀是否為圓形進(jìn)行判斷,優(yōu)選地,t3可以為0.85。
當(dāng)t3小于閾值時(shí),所述的發(fā)光信號(hào)燈的形狀為直行箭頭或左轉(zhuǎn)箭頭或右轉(zhuǎn)箭頭。
根據(jù)所述的交通信號(hào)燈幾何特征,假設(shè)所述的發(fā)光區(qū)域二值圖橫軸軸長(zhǎng)度為a,縱軸寬度為b,如圖4所示。
在第一行中找到發(fā)光像素點(diǎn),得到上端發(fā)光像素點(diǎn)的列均值。
采用以下公式得到上端發(fā)光像素點(diǎn)的列均值:
其中ul為上端發(fā)光像素點(diǎn)的列均值,li表示發(fā)光像素點(diǎn)為第幾列,n為第一行發(fā)光像素點(diǎn)的總數(shù)。同理可得到下端發(fā)光像素點(diǎn)的列均值dl,以及圖像中點(diǎn)bl=b/2。
根據(jù)ul、dl、bl,將所述的發(fā)光區(qū)域二值圖分割為四個(gè)部分,計(jì)算該部分的參數(shù)si。
采用以下公式計(jì)算si:
其中,nlie表示該部分所包含列數(shù),i表示該部分左端的列號(hào),n表示該部分右端的列號(hào)。對(duì)s1與s2來說,dii表示該列最上端的發(fā)光像素點(diǎn)距離第一行的行數(shù)差。對(duì)s3與s4來說,dii表示該列最下端的發(fā)光像素點(diǎn)距離最后行的行數(shù)差。
最后,根據(jù)si的大小關(guān)系來確定箭頭狀交通信號(hào)燈的形狀。
s1>s2ands4>s3,為左轉(zhuǎn)箭頭。
s1<s2ands4<s3,為右轉(zhuǎn)箭頭。
s1>s4ands2>s3,為直行箭頭。
最終得到交通信號(hào)燈的顏色與形狀。
識(shí)別結(jié)果輸出模塊17,用于產(chǎn)生相應(yīng)的語音、文字等提示信息,輸出識(shí)別結(jié)果。
根據(jù)所述的交通信號(hào)燈顏色與形狀,在識(shí)別出交通信號(hào)燈的狀態(tài)時(shí)給予對(duì)應(yīng)的聲音等提示信息。如“左轉(zhuǎn)方向?yàn)榫G燈,直行方向?yàn)榧t燈”等相似的語音信息。
綜上所述,本發(fā)明通過對(duì)交通信號(hào)燈的識(shí)別,可以輔助駕駛員駕駛,并幫助色盲、色弱者了解前方交通信號(hào)燈的信息。