賈小云, 潘德燃
(陜西科技大學(xué)電子信息與人工智能學(xué)院,西安 710021)
在一幅圖像中,如何定位車牌位置是車牌識(shí)別中的關(guān)鍵步驟。而目前常見的車牌定位方法大致可以分為下三類:一是基于車牌顏色特征的車牌定位方法[1],但該類方法只能適用于道路卡口或停車場(chǎng)管理等特定的應(yīng)用場(chǎng)景,在復(fù)雜環(huán)境中由于角度位置各異、光照不同、背景變化等原因,很難達(dá)到滿意的識(shí)別準(zhǔn)確度;二是基于連通域分析的方法,隨著自然場(chǎng)景文本檢測(cè)的不斷發(fā)展,應(yīng)用MSER(maximally stable extremal regions)與SWT(stroke width transform)算法的車牌定位方法[2-3]也不斷被提出。通過對(duì)連通域進(jìn)行合理的分析,從而能夠有效地定位車牌位置;三是基于滑動(dòng)窗口[4-5]的方法,該類方法綜合多種圖像特征,利用滑動(dòng)窗口結(jié)合機(jī)器學(xué)習(xí)或神經(jīng)網(wǎng)絡(luò),能夠精準(zhǔn)地定位車牌位置,但其運(yùn)算復(fù)雜,耗時(shí)較高。
本文提出一種基于MSER算法與DRLBP特征的復(fù)雜背景車牌定位方法。該方法充分利用車牌文本的上下文信息并設(shè)計(jì)出一種連通域分析器,該分析器通過對(duì)車牌字符進(jìn)行合并從而完成車牌定位,此外還利用 DRLBP 特征對(duì)定位出的車牌進(jìn)行再次檢驗(yàn)從而提高定位的準(zhǔn)確率。通過實(shí)驗(yàn)表明,該方法可以在多種場(chǎng)景下有效地對(duì)車牌進(jìn)行定位,且對(duì)計(jì)算資源需求較小,基本不受車牌格式、顏色的影響。
由于輸入圖像的分辨率不一,車牌的尺寸大小也會(huì)有較大差異,過大或者過小的車牌都會(huì)對(duì)檢測(cè)造成一定的誤判斷。因此預(yù)處理的第一步就是將圖像等比縮放到合適大小,所有圖像均等比縮放到400 000像素左右。第二步提取灰度圖像和紅通道圖像,由于車牌的字符顏色和車牌的底色具有明顯的差異因此不需要在全部通道上進(jìn)行MSER候選區(qū)域提取,而車牌底色和字符顏色又少有同時(shí)擁有紅色分量,故本文僅在灰度圖像和紅色通道圖像中進(jìn)行候選區(qū)域提取。第三步,由于在縮放后的圖像中車牌字符的筆畫寬度通常不超過5像素,因此用5×5的結(jié)構(gòu)元素分別對(duì)得到的灰度圖像和紅通道圖像進(jìn)行Top-Hat變換。Top-Hat變換可以消除不均勻的光照和增強(qiáng)暗的細(xì)節(jié),從而減少M(fèi)SER的漏檢測(cè)。第四步,分別對(duì)變換后的圖像提取Canny邊緣,并用Sobel算子對(duì)邊緣圖像提取其垂直方向的邊緣信息,從而消除掉大部分水平非字符邊緣,而字符通常擁有豐富的垂直邊緣信息,因此不會(huì)對(duì)車牌字符造成明顯影響。第五步,對(duì)上一步得到的垂直邊緣圖像圖進(jìn)行高斯模糊,以模糊圖中對(duì)應(yīng)像素點(diǎn)的灰度比上模糊圖中最大的灰度的比值乘以原圖中的相應(yīng)像素點(diǎn)的灰度值從而得到強(qiáng)調(diào)豎直邊緣的灰度圖像。第六步,由于處理后的圖像對(duì)比度會(huì)有所降低,故分別對(duì)圖像進(jìn)行直方圖均衡化,再進(jìn)行伽瑪變換以增強(qiáng)對(duì)比度。在實(shí)驗(yàn)中,由于光照強(qiáng)度不同伽瑪?shù)萌≈狄灿兴煌?,如在?shí)驗(yàn)中白天光照充分伽瑪取2.0~3.0,而在夜晚光照不充分時(shí)伽瑪取9.0~10.0可以得到較好的結(jié)果。如圖 1所示,分別是白天和夜晚的原圖和預(yù)處理后的圖。由圖1(b)、圖1(d)可以看到,預(yù)處理后圖像中大多數(shù)變化平滑的區(qū)域幾乎完全變?yōu)楹谏?,而車牌和一些豎直邊緣密集的區(qū)域仍有較高的對(duì)比度。
圖1 圖像預(yù)處理Fig.1 Image pre-processing
MSER算法是一種檢測(cè)圖像中最大穩(wěn)定極值區(qū)域的算法,最早應(yīng)用于3D場(chǎng)景重建,目前在自然場(chǎng)景文本檢測(cè)中也得到了廣泛的應(yīng)用。MSER算法的主要步驟是將一幅灰度圖像以閾值從0~255進(jìn)行多次二值化,從一幅純白圖像變?yōu)榧兒趫D像,或相反。其中每一幅二值圖像中的黑色或白色的連通區(qū)域就是一個(gè)極值區(qū)域Q,即在原圖像中該區(qū)域內(nèi)的像素的灰度值都小于或都大于區(qū)域邊界像素的灰度值。而在相鄰閾值的二值圖像中,極值區(qū)域Q1,Q2,…,Qi,…則構(gòu)成嵌套關(guān)系,即Qi?Qi+1。當(dāng)q(i)=|Qi+Δ/Qi-Δ|/|Qi|在i處取得最小值時(shí),Qi即為最大穩(wěn)定極值區(qū)域。而車牌字符又是顯著的最大穩(wěn)定極值區(qū)域,因此MSER算法能夠有效地提取到車牌字符區(qū)域。但是MSER算法也會(huì)提取到很多非車牌字符的候選區(qū)域,因此需要對(duì)提取到的候選區(qū)域用簡(jiǎn)單特征進(jìn)行篩選。文獻(xiàn)[6]中所描述的可以快速計(jì)算的簡(jiǎn)單特征能夠很好地除去大部分明顯非車牌字符候選區(qū)域。具體MSER候選區(qū)域提取的步驟如下。
第一步,利用MSER算法對(duì)預(yù)處理后的圖像進(jìn)行候選區(qū)域提取得到一組候選區(qū)域;第二步,分別計(jì)算每一個(gè)候選區(qū)域的寬度、高度、邊緣總長(zhǎng)度、長(zhǎng)寬比、占空比、緊密度這六個(gè)簡(jiǎn)單特征并排除掉不符合條件的候選區(qū)域,具體特征說明見表 1;第三步,用所有符合條件的候選區(qū)域?yàn)榍熬皹?gòu)造一幅二值圖像,以此合并掉重疊的候選區(qū)域,在該二值圖像中每一個(gè)連通區(qū)域即為一個(gè)候選區(qū)域;第四步,對(duì)其中的每一個(gè)候選區(qū)域用3×3的結(jié)構(gòu)元素進(jìn)行腐蝕運(yùn)算,以此消除候選區(qū)域中細(xì)小的突出并使區(qū)域邊界變得光滑;但如果腐蝕后連通域消失或者面積減小到1/9以下則說明候選區(qū)域的輪廓形狀已經(jīng)被顯著改變,因此對(duì)于這類候選區(qū)域則跳過該步驟;第五步,用6×6的結(jié)構(gòu)元素對(duì)面積小于500像素的候選區(qū)域進(jìn)行膨脹運(yùn)算以增大面積過小的候選區(qū)域;第六步,對(duì)每一個(gè)候選區(qū)域用3×3的結(jié)構(gòu)元素再次進(jìn)行閉運(yùn)算,以填充區(qū)域內(nèi)部的空洞、細(xì)小的裂痕并使得區(qū)域邊界更加光滑。
對(duì)圖 1中的兩幅圖像提取MSER候選區(qū)域的結(jié)果如圖 2所示,車牌字符區(qū)域已經(jīng)被提取出,但是由于場(chǎng)景復(fù)雜其中也包含很多非車牌字符區(qū)域。
表1 簡(jiǎn)單特征說明及其閾值Table 1 Description of simple characters and its threshold
圖2 車牌字符候選區(qū)提取Fig.2 License plate character candidate area extraction
在上步得到的二值圖像中包含了車牌字符區(qū)域以及其他非車牌字符區(qū)域。但是由于復(fù)雜場(chǎng)景帶來過多的噪聲區(qū)域使得一些基于MSER的車牌合并算法不再適用。如文獻(xiàn)[7]中通過構(gòu)造最近鄰對(duì)的方式進(jìn)行合并,但此方法無法應(yīng)對(duì)車牌區(qū)域過小而產(chǎn)生字符粘連的情況。由于車牌字符候選區(qū)域成線性排列、位置鄰近、大小近似具有一定的規(guī)律性,而非車牌字符區(qū)域的位置和大小則相對(duì)任意。因此本文提出一種新的基于車牌字符合并的車牌定位方法。首先對(duì)于每一個(gè)候選區(qū)域計(jì)算五個(gè)屬性,寬度、高度、面積、寬高比及方向。然后依據(jù)每?jī)蓚€(gè)區(qū)域的屬性來判斷是否將其合并。在判斷每?jī)蓚€(gè)候選區(qū)域時(shí),需要判斷面積、寬高比、重疊度、位置相關(guān)度、方向及距離這六個(gè)方面。
(1)面積和寬高比:由于圖像數(shù)據(jù)量在400 000像素左右,實(shí)驗(yàn)數(shù)據(jù)中車牌所占的像素尺寸通常在20 000像素以內(nèi)。面積大于20 000像素或者寬高比大于4.0 的通常是非車牌區(qū)域不對(duì)其進(jìn)行合并。
(2)重疊度:如果兩個(gè)區(qū)域并集像素個(gè)數(shù)除以其交集像素個(gè)數(shù)的值大于0.75,則說明這兩個(gè)區(qū)域具有較強(qiáng)的相關(guān)性,應(yīng)當(dāng)將其合并。
(3)位置相關(guān)度:該值為兩個(gè)候選區(qū)域的最小外接矩形面積之和除以包含這兩個(gè)候選區(qū)域的最小外接矩形面積,該比值用于評(píng)估兩個(gè)候選區(qū)域的鄰近度和相似度。當(dāng)該值為1時(shí),說明兩個(gè)候選區(qū)域的外接矩形緊鄰且形狀相似。當(dāng)兩個(gè)區(qū)域相距較遠(yuǎn)、或大小不一都會(huì)使得位置相關(guān)度降低。將其閾值設(shè)置為0.7,即大于0.7時(shí)滿足位置相關(guān)度條件。
(4)方向:候選區(qū)域的方向?yàn)槠渥钚⊥饨泳匦沃羞呴L(zhǎng)較長(zhǎng)的邊所指向的方向。能夠合并的兩個(gè)候選區(qū)域其方向需滿足平行條件或者垂直條件,即兩個(gè)方向最小夾角的角度需要在精度范圍內(nèi)。由于寬高比越小,其區(qū)域方向便越不穩(wěn)定,故當(dāng)兩個(gè)候選區(qū)域中存在一個(gè)候選區(qū)域?qū)捀弑刃∮?.0時(shí),精度范圍取35°以內(nèi),否則為20°以內(nèi)。即夾角小于35°或20°滿足平行條件,大于65°或70°滿足垂直條件。同時(shí)將候選區(qū)域面積小于2 000像素并且長(zhǎng)寬都小于60像素的區(qū)域作為單個(gè)字符區(qū)域,否則為非單個(gè)字符區(qū)域。符合合并條件的候選區(qū)域需滿足以下規(guī)則。
規(guī)則1若兩個(gè)候選區(qū)都是非單個(gè)字符區(qū)域,那么兩個(gè)候選區(qū)域的方向要滿足平行條件,兩個(gè)候選區(qū)域的中點(diǎn)的連線方向也要與兩候選區(qū)域的方向滿足平行條件。
規(guī)則2若兩個(gè)候選區(qū)域中有一個(gè)是單個(gè)字符區(qū)域,由于單個(gè)字符區(qū)域的寬高比接近1.0,因此其方向并不穩(wěn)定。此時(shí)只需兩個(gè)候選區(qū)域中點(diǎn)的連線方向與非單個(gè)字符區(qū)域的方向滿足平行條件即可合并。
規(guī)則3如果兩個(gè)候選區(qū)域都是單個(gè)字符區(qū)域,則不需要對(duì)方向進(jìn)行判斷。
(5)距離:在兩個(gè)候選區(qū)域面積相差較大的情況下,面積較小通常為噪聲區(qū)域。將這些區(qū)域進(jìn)行合并會(huì)意外增加另一個(gè)區(qū)域的面積,從而降低車牌字符合并的準(zhǔn)確度。因此,能夠合并的兩個(gè)候選區(qū)域還需滿足兩個(gè)候選區(qū)域的距離應(yīng)當(dāng)小于面積較小候選區(qū)域面積開方的1.0倍。
當(dāng)所有候選區(qū)域都不能再進(jìn)行合并時(shí),輸出所有面積在400~20 000像素之間且寬高比大于2.0的區(qū)域即為車牌候選區(qū)域。
通過基于MSER車牌字符合并的車牌定位方法能夠有效地定位車牌候選區(qū)域,但也會(huì)存在一些誤判的非車牌候選區(qū)域。而這些非車牌候選區(qū)域已經(jīng)難以用簡(jiǎn)單特征進(jìn)行有效的區(qū)分。因此本文在最后應(yīng)用DRLBP[8](dominant rotated local binary pattern)紋理特征結(jié)合支持向量機(jī)(support vector machine,SVM)分類完成最后的精確定位。
圖3 車牌定位結(jié)果Fig.3 The result of license plate location
DRLBP是LBP[9](local binary pattern)特征的擴(kuò)展,對(duì)LBP特征增加了旋轉(zhuǎn)不變特性并使用主要模式來代替uniform模式。LBP是一種基于圖像像素的紋理特征,該特征及其相關(guān)拓展在目標(biāo)檢測(cè)中有著廣泛的應(yīng)用,如人臉識(shí)別[10]。它以中心像素為原點(diǎn),以L為半徑,在其圓周上等分采樣P個(gè)頂點(diǎn)。如果采樣點(diǎn)p的坐標(biāo)不是整數(shù),則對(duì)其坐標(biāo)進(jìn)行向上和向下取整。用鄰近的四個(gè)像素的灰度對(duì)其進(jìn)行雙線性插值從而計(jì)算出點(diǎn)P的灰度。如果點(diǎn)P的灰度大于中心點(diǎn),那么該點(diǎn)則標(biāo)記為0否則為1。將這P個(gè)采樣點(diǎn)的標(biāo)記連接起來就是中點(diǎn)像素的LBP編碼,取L=1,P=8則LBP編碼共有256種。但是LBP編碼與圖像旋轉(zhuǎn)相關(guān),因此在不同起點(diǎn)得到的LBP編碼中以值最小的作為該中心點(diǎn)的LBP編碼,以增加旋轉(zhuǎn)不變性即RLBP(rotated local binary pattern)。又因?yàn)長(zhǎng)BP編碼的uniform模式只允許編碼中最多出現(xiàn)兩次0-1或1- 0跳變。當(dāng)圖像的紋理主要是由直線構(gòu)成或者彎折較少時(shí),uniform模式可以有力地代表其紋理特征。但是對(duì)于復(fù)雜的紋理,如字符通常擁有較多的曲線彎折時(shí),uniform模式則不能很好地表示其紋理特征。因此文字區(qū)域的特征采用DLBP(dominant local binary pattern),即使用主要模式代替uniform模式。DLBP是通過計(jì)算圖像全部的LBP編碼,根據(jù)不同LBP編碼的出現(xiàn)的數(shù)量建立統(tǒng)計(jì)直方圖,并對(duì)其進(jìn)行降序排列。當(dāng)前K個(gè)LBP編碼的數(shù)量占據(jù)總編碼數(shù)的80%時(shí),則將前K個(gè)編碼作為主要模式。根據(jù)Liao等[11]在Brodatz、Meastex、CUReT數(shù)據(jù)庫上進(jìn)行的測(cè)試,占全部編碼數(shù)量80%的模式種類大約只占所有編碼種類的20%左右。因此DLBP特征能夠在有效捕獲復(fù)雜紋理特征的同時(shí)只較少地增加數(shù)據(jù)維數(shù)。
結(jié)合RLBP與DLBP的特點(diǎn),采用DRLBP,即主要旋轉(zhuǎn)不變的局部二值模式作為候選區(qū)域的紋理特征并結(jié)合SVM分類實(shí)現(xiàn)對(duì)車牌候選區(qū)域的再次定位。結(jié)果如圖 3所示,紅色和綠色框即為基于MSER車牌字符合并的車牌定位方法的結(jié)果。通過應(yīng)用DRLBP特征進(jìn)行車牌再定位可以將非車牌區(qū)域排除,只保留最終的車牌區(qū)域,用綠色框標(biāo)出。
實(shí)驗(yàn)數(shù)據(jù)集包含400張白天不同場(chǎng)景的車牌圖像,其中300張作為訓(xùn)練圖像,其余100張作為測(cè)試圖像,另有300張夜晚的車牌圖像,其中200張作為訓(xùn)練圖像,其余100張作為測(cè)試圖像。使用f-measure作為測(cè)量評(píng)價(jià)標(biāo)準(zhǔn),其中包含召回率R、準(zhǔn)確率P及F。每幅圖像均包含一組真實(shí)的車牌區(qū)域T,用本文所述方法對(duì)其每幅進(jìn)行車牌定位也可得到一組評(píng)估的車牌區(qū)域E。在一幅圖像中任取一組(t,e)其中t∈T,e∈E,這兩個(gè)區(qū)域交集的像素個(gè)數(shù)比上其并集的像素個(gè)數(shù)的值即為其m。而當(dāng)m(t,e)=1時(shí)評(píng)估區(qū)域t則與真實(shí)區(qū)域e完全重合,當(dāng)m(t,e)=0時(shí),區(qū)域t與區(qū)域e則完全分開。召回率則是對(duì)每一個(gè)真實(shí)區(qū)域與所有評(píng)估區(qū)域計(jì)算其m,并取其最大值。然后所有真實(shí)區(qū)域的m相加并除以真實(shí)區(qū)域的個(gè)數(shù)。而準(zhǔn)確率則是對(duì)每一個(gè)評(píng)估區(qū)域與所有真實(shí)區(qū)域計(jì)算其m并取其最大值。然后將所有評(píng)估區(qū)域的m相加并除以評(píng)估區(qū)域的數(shù)量。
|t∈T}
(1)
|e∈E}
(2)
F的大小由召回率、準(zhǔn)確率和其權(quán)值α的大小共同決定。令α=0.5。F的計(jì)算方法如下:
F=1/[α/P+(1-α)/R]=2RP/(R+P)
(3)
實(shí)驗(yàn)采用以下四種算法進(jìn)行對(duì)照。一是僅利用本文提出的基于MSER車牌字符合并的車牌定位算法;二是在算法一的基礎(chǔ)上使用DRLBP結(jié)合SVM進(jìn)行車牌區(qū)域再定位;三是文獻(xiàn)[7]所提及的基于構(gòu)造最近鄰對(duì)的方法;四是文獻(xiàn)[5]中所采用的基于Faster R-CNN結(jié)合VGG網(wǎng)絡(luò)的車牌的定位方法。實(shí)驗(yàn)平臺(tái)為Ubuntu 16.04系統(tǒng),8G內(nèi)存,Intel i3-3225, 3.3 GHz CPU。相關(guān)實(shí)驗(yàn)結(jié)果如表2、表3所示。
對(duì)不同國(guó)家的車牌在多種場(chǎng)景中進(jìn)行定位的結(jié)果如圖 4所示。
通過上述實(shí)驗(yàn)可得以下結(jié)論。
(1)提出的基于MSER車牌字符合并的車牌發(fā)現(xiàn)方法能夠有效地定位車牌位置,在測(cè)試圖像中其召回率為95%。
表2 白天車牌定位結(jié)果Table 2 License plate location in the daylight
表3 夜晚車牌定位結(jié)果Table 3 License plate location in the night
圖4 對(duì)不同國(guó)家的車牌進(jìn)行定位的結(jié)果Fig.4 Locating license plate in different countries
(2)通過SVM結(jié)合DRLBP紋理特征進(jìn)行再次定位后,能夠顯著地提高定位準(zhǔn)確率而召回率只有略微的降低,顯示本文方法的有效性。
(3)本文方法基本不受車牌顏色、格式的影響,對(duì)國(guó)內(nèi)外各種車牌均有一定效果。
(4)文獻(xiàn)[7]所提及的構(gòu)造最近鄰對(duì)的方法在復(fù)雜場(chǎng)景中易受過多干擾的影響,因此其準(zhǔn)確率和召回率均低于本方法。其所設(shè)計(jì)的最近鄰對(duì)合并方法也只針對(duì)于中國(guó)車牌。
(5)基于神經(jīng)網(wǎng)絡(luò)的方法雖然在準(zhǔn)確率和召回率上均高于其他方法,但在缺乏GPU僅依靠CPU運(yùn)算時(shí),其耗時(shí)明顯高于其他方法,因此不適于計(jì)算資源有限的情況。
首先利用MSER算法以及自主設(shè)計(jì)的車牌字符合并算法進(jìn)行車牌定位,其次采用DRLBP特征對(duì)定位結(jié)果進(jìn)行進(jìn)一步驗(yàn)證。實(shí)驗(yàn)表明對(duì)多種車牌均有較好定位效果。但實(shí)際環(huán)境紛繁復(fù)雜,實(shí)驗(yàn)難以囊括全部,而通過調(diào)整本文所述方法的參數(shù),如預(yù)處理中的伽馬、MSER算法的相關(guān)參數(shù)、文本合并算法的相關(guān)閾值,則能夠使得本方法快速適應(yīng)不同的復(fù)雜環(huán)境并得到滿意的結(jié)果。
另一方面,本方法基于MSER算法。MSER算法的高召回率既是優(yōu)點(diǎn),也是缺點(diǎn)。在復(fù)雜場(chǎng)景中,MSER會(huì)帶來非常多的難以通過簡(jiǎn)單特征篩選掉的非字符候選區(qū)域。大量的非字符候選區(qū)域會(huì)使得車牌字符合并變得困難。后續(xù)會(huì)對(duì)MSER候選區(qū)域提取的篩選能力做進(jìn)一步提高。