趙曉娜,王夏黎,武 琦,王博學(xué)
(長(zhǎng)安大學(xué) 信息工程學(xué)院,陜西 西安 710064)
基于視覺(jué)的計(jì)算機(jī)交通標(biāo)志識(shí)別系統(tǒng)[1]主要包括交通標(biāo)志的檢測(cè)和識(shí)別兩個(gè)部分。其中交通標(biāo)志檢測(cè)是要解決的關(guān)鍵問(wèn)題,是實(shí)現(xiàn)交通標(biāo)志正確判別的前提。交通標(biāo)志檢測(cè)系統(tǒng)[2]不僅可以應(yīng)用到無(wú)人駕駛和輔助駕駛中,還可以應(yīng)用到日常交通標(biāo)志的維護(hù)當(dāng)中,具有一定的研究和應(yīng)用價(jià)值。
目前國(guó)內(nèi)外交通標(biāo)志檢測(cè)算法[3]的研究對(duì)象,大多數(shù)都是針對(duì)同一類型且數(shù)量較少的若干標(biāo)志,對(duì)于樣本數(shù)量較多的標(biāo)志進(jìn)行檢測(cè)的實(shí)時(shí)性[4]和準(zhǔn)確率明顯下降很多。這類型的交通標(biāo)志檢測(cè)方法基本上都只是單方面考慮交通標(biāo)志的顏色特征[5]或者形狀特征[6],忽略了顏色和形狀之間的關(guān)聯(lián)關(guān)系。因此文中提出一種快速有效的交通標(biāo)志檢測(cè)算法,將交通標(biāo)志的顏色和形狀特征相結(jié)合,首先根據(jù)交通標(biāo)志的顏色信息對(duì)交通標(biāo)志進(jìn)行粗檢測(cè),再根據(jù)交通標(biāo)志的形狀輪廓信息對(duì)交通標(biāo)志進(jìn)行最終的檢測(cè)和分割[7]。
現(xiàn)實(shí)場(chǎng)景中復(fù)雜的道路狀況使得交通標(biāo)志很難被檢測(cè)到。因此有必要通過(guò)預(yù)處理以提高圖像的質(zhì)量和可辨識(shí)度,使圖像有利于進(jìn)一步處理,為接下來(lái)的檢測(cè)做準(zhǔn)備。預(yù)處理過(guò)程分為尺寸縮小、圖像增亮[8]和濾波處理。
(1)尺寸縮小。
通過(guò)降采樣的抽樣過(guò)程[9]對(duì)圖像尺寸進(jìn)行縮減,這樣可以提高檢測(cè)的速率。文中通過(guò)雙線性插值算法對(duì)實(shí)際場(chǎng)景中的道路圖像進(jìn)行運(yùn)算后,將原始圖像尺寸1 920*1 080縮小為298*225。
(2)圖像增亮。
文中采用直方圖均衡化的方法[10]對(duì)圖像進(jìn)行亮度增強(qiáng)處理。其基本思想是:統(tǒng)計(jì)直方圖中每個(gè)灰度級(jí)的次數(shù),然后歸一化,最后計(jì)算出新的灰度值。
(3)濾波處理。
中值濾波[11]是圖像處理中的一個(gè)常用步驟,通過(guò)保存邊緣的特性使它在不希望出現(xiàn)邊緣模糊的場(chǎng)合也很有用。這樣可以很好地保存圖像和其他細(xì)節(jié)信息。
(1)HSV色彩模型檢測(cè)。
通過(guò)顏色模型[12]對(duì)交通標(biāo)志進(jìn)行檢測(cè)是常用的檢測(cè)方法?,F(xiàn)在的大部分視頻圖像設(shè)備都是使用的RGB來(lái)表示顏色。但在RGB中,紅、綠、藍(lán)三個(gè)分量之間相互關(guān)聯(lián),更加符合人眼特征的顏色中的亮度和飽和度卻不能明確地表達(dá)出來(lái),不利于圖像的分割。HSV(hue,saturation,value)顏色模型檢測(cè)算法能準(zhǔn)確地表達(dá)飽和度和亮度這兩個(gè)量,其次這三個(gè)量相對(duì)獨(dú)立,沒(méi)有RGB中那么大的相關(guān)性。因此文中采HSV[5]顏色模型檢測(cè)算法,算法中各參數(shù)范圍如表1所示。
表1 HSV值的范圍
(2)形態(tài)學(xué)處理。
形態(tài)學(xué)基本操作包括腐蝕、膨脹、開(kāi)放操作和封閉操作四部分。對(duì)顏色分割后的噪聲二值圖像進(jìn)行形態(tài)學(xué)處理得到形態(tài)學(xué)處理圖。
(3)區(qū)域填充。
區(qū)域填充[13]是基于集合的形態(tài)操作以及補(bǔ)碼和交集。填充圖像需要通過(guò)區(qū)域閾值刪除非目標(biāo)項(xiàng)目。填充后得到粗檢測(cè)圖。
(4)所得結(jié)果。
結(jié)果圖像如圖1所示。
通過(guò)基于顏色的交通標(biāo)志檢測(cè)后的圖像仍存在一定的噪聲,接下來(lái)可以根據(jù)交通標(biāo)志的形狀特征對(duì)其進(jìn)行精確的檢測(cè)和分割。
圖1 結(jié)果圖像
通過(guò)輪廓檢測(cè)形狀[14]:根據(jù)整個(gè)感興趣區(qū)域的輪廓來(lái)檢測(cè),可以得到整個(gè)區(qū)域的外接矩形,通過(guò)這個(gè)外接矩形來(lái)分割交通標(biāo)志。矩形四個(gè)頂點(diǎn)設(shè)為左上角(xmin,ymin)、右上角(xmax,y)、左下角(xmin,ymax)、右下角(xmax,ymax)。矩形的高h(yuǎn)=ymax-ymin,寬w=xmax-xmin。
(1)三角形標(biāo)志檢測(cè)。
過(guò)矩形上邊的中點(diǎn)作一個(gè)高為h的等邊三角形。可能會(huì)出現(xiàn)的三角形如圖2所示。
圖2 三角形情況
如果該區(qū)域?yàn)橐粋€(gè)三角形標(biāo)志,那么它的輪廓點(diǎn)一定在這個(gè)三角形的三邊上。由于實(shí)際情況有一些誤差,所以可以不完全在三邊上,可以設(shè)置一個(gè)范圍。設(shè)這個(gè)范圍限制為20。如果要這區(qū)域?yàn)槿切螛?biāo)志,那么它的輪廓點(diǎn)(x,y)應(yīng)當(dāng)滿足以下三個(gè)條件之一:
(1)y-k1×x+[ymin-k1×(xmin+w/2)]<20andy-k1×x+[ymin-k1×(xmin+w/2)]>-20;
(2)y-k2×x+[ymin-k2×(xmin+w/2)]<20andy-k2×x+[ymin-k2×(xmin+w/2)]>-20;
(3)y-ymax<20 andy-ymax>-20。
否則該區(qū)域不是三角形。
(2)矩形標(biāo)志檢測(cè)。
如果該區(qū)域?yàn)橐粋€(gè)矩形標(biāo)志,由于有一些誤差,那么它的輪廓點(diǎn)一定在這個(gè)區(qū)域外接矩形和小這個(gè)矩形一個(gè)較小范圍(比如范圍為20)的矩形所組成的矩形框內(nèi)。矩形情況如圖3所示。
圖3 矩形情況
所以這些輪廓點(diǎn)(x,y)需要滿足以下條件中的一個(gè):
(1)y-ymin<20;
(2)y-ymax>-20;
(3)x-xmin<20;
(4)x-xmax>-20。
否則該區(qū)域不是矩形。
(3)圓形標(biāo)志檢測(cè)。
如果該區(qū)域是一個(gè)圓形的話,那么它的輪廓點(diǎn)一定在圓周上。以矩形的中心點(diǎn)為圓心,h/2為半徑做一個(gè)圓,該圓的公式為:(x-h/2)2+(y-h/2)2=(h/2)2,會(huì)出現(xiàn)如圖4所示的情況。
圖4 圓形情況
由于會(huì)有誤差,設(shè)這個(gè)誤差范圍為20。如果該區(qū)域是一個(gè)圓形的話,那么它的輪廓點(diǎn)(x,y)需要滿足以下條件:
(1)(x-h/2)2+(y-h/2)2>(h/2-20)2;
(2)(x-h/2)2+(y-h/2)2<(h/2+20)2。
否則該區(qū)域不是圓形。
形狀檢測(cè)最終圖和最終提取得到的交通標(biāo)志分割圖如圖5所示。
圖5 結(jié)果圖
實(shí)驗(yàn)采用Windows 7平臺(tái)運(yùn)行,編譯環(huán)境為VS2010,主要采用的技術(shù)為C++、MFC和OpenCV。實(shí)驗(yàn)以車(chē)載視頻錄像作為處理對(duì)象,分別使用文中方法和原始的只依靠顏色為特征的分割方法和只依靠形狀特征進(jìn)行分割的方法進(jìn)行對(duì)比。實(shí)驗(yàn)結(jié)果表明,同時(shí)采用顏色和形狀線索的道路標(biāo)志檢測(cè)分割[15]方法準(zhǔn)確率有所提高,識(shí)別速度也達(dá)到15 f/s的實(shí)時(shí)性要求。實(shí)驗(yàn)標(biāo)志檢測(cè)對(duì)比如表2所示。
表2 標(biāo)志檢測(cè)對(duì)比 %
交通標(biāo)志最明顯的特征就是顏色和形狀[16],文中綜合顏色和形狀對(duì)視頻流中的交通標(biāo)志進(jìn)行檢測(cè)分割。通過(guò)大量的車(chē)載視頻實(shí)驗(yàn)證明,文中方法能夠正確檢測(cè)95%的面板,而只有3%被錯(cuò)誤地檢測(cè)到。交通標(biāo)志檢測(cè)的準(zhǔn)確率和實(shí)時(shí)性提高了很多。隨著人工智能和機(jī)器學(xué)習(xí)的不斷深入,相信在不遠(yuǎn)的將來(lái)可以完全實(shí)現(xiàn)道路標(biāo)志的自動(dòng)檢測(cè)和識(shí)別[17]。