劉雄飛,喻格英
(中南大學(xué) 物理與電子學(xué)院,湖南 長沙410083)
車牌識別系統(tǒng)中,車牌定位和字符分割的精確程度會直接影響到最終的檢測結(jié)果。目前對車牌定位和字符分割的研究都是獨立開來的。車牌定位目前常用的方法主要包括基于投影分割[1]、紋理檢測、顏色特征檢測[2]混合特征檢測[3]以及基于神經(jīng)網(wǎng)絡(luò)[4]、小波分析[5]等幾種算法。而字符分割有基于先驗知識[6]、模板匹配[7]、連通域分析[8]以及機器視覺[9]等方法。可以發(fā)現(xiàn),車牌定位與字符分割的算法關(guān)聯(lián)性較小,這會使得整個車牌識別流程的時間變長,耗費更多的運算資源。本文提出一種基于字符包圍盒特征參數(shù)的車牌字符定位分割算法,將車牌定位和字符分割的過程合二為一。該方法采用二維高斯-拉普拉斯算子對車牌圖像進行平滑處理和邊緣檢測,對生成的二值圖像進行連通區(qū)域分析(Connected Component Analysis,CCA)來標(biāo)定相連區(qū)域,之后使用二維軸對齊包圍盒(Aixs Aligned Bounding Box,AABB)來表征每個連通域,根據(jù)車牌字符的實際分布規(guī)律來篩選出車牌字符對應(yīng)的包圍盒,并使用包圍盒中心點矯正車牌圖像并分割車牌字符。
中國常見的機動車車牌尺寸規(guī)格如圖1 所示。由中國國家機動車車牌行業(yè)標(biāo)準(zhǔn)GA36—2007[10]可知,這種類型的車牌存在以下特征:
1)車牌的幾何特征為矩形,長度與高度有固定的比值。
2)車牌內(nèi)容包含7 個字符,這些字符在矩形框中基本水平均勻排列,擁有比較豐富的邊緣信息。同時,這些字符具有相同的高度寬度比值且相互之間有一定的間隔。
3)車牌的底色和字符顏色存在較強的對比度。
本文根據(jù)我國主流車牌的以上規(guī)格特性,設(shè)計字符特性參數(shù),在此基礎(chǔ)上設(shè)計車牌識別算法。

圖1 我國主流車牌的規(guī)格
由CCD 攝像機所采集到的車輛圖像不可避免的會受到噪聲的影響,因噪聲而產(chǎn)生的誤差會累計傳遞從而會嚴重影響到后續(xù)的邊緣檢測、特征提取和識別過程。CCD 攝像機的噪聲通常被建模成獨立于信號均勻分布的零均值高斯白噪聲[11]。高斯濾波器對這類噪聲具有良好的濾除效果。與此同時,本文的車牌字符提取方法要求檢測到的邊緣能良好的反應(yīng)實際的字符輪廓,既不能增加太多的無關(guān)細節(jié),又需要在各個方向上保持邊緣的完整性。邊緣檢測常用的Canny 算子會給圖像帶來額外的無關(guān)細節(jié)[12],Sobel 算子不具備各向同性的性質(zhì),所得邊緣有一定程度的斷開,而拉普拉斯算子則能滿足這些要求,但其對離散噪聲點比較敏感[13],需要現(xiàn)對圖像進行平滑濾波處理。基于以上分析,本文采用二維高斯-拉普拉斯算子對車輛圖像進行邊緣檢測。
對圖像進行高斯濾波一般采用二維離散高斯函數(shù)

式中:G(x,y)為經(jīng)過高斯濾波之后圖像;σ 表示高斯濾波器的寬度;k 為規(guī)范化系數(shù)。
采用拉普拉斯算子對高斯濾波后的圖像進行邊緣檢測可表示為

對于離散的數(shù)字圖像來說,通常可以使用一個近似于高斯拉普拉斯算子的離散高斯拉普拉斯模板對其進行邊緣檢測。本文使用式(3)所示高斯拉普拉斯模板對源圖像進行卷積操作來識別圖像邊緣。

對比三種檢測算子對車牌區(qū)域的檢測結(jié)果,使用高斯拉普拉斯算子的結(jié)果如圖2b 所示,在高斯濾波之后對同一圖像進行Sobel 和Canny 邊緣檢測的結(jié)果如圖2c 和2d 所示。可以看到,使用高斯拉普拉斯算子檢測不會產(chǎn)生額外的細節(jié),同時也能最大程度保證邊緣的完整。

圖2 邊緣檢測算子檢測結(jié)果對比
考慮到一個字符的空間范圍主要依靠邊緣像素來標(biāo)定,為了更快速準(zhǔn)確地計算每一個字符的包圍盒,本文采用8-鄰域種子填充法(seed filling)搜索具有相同像素值的相鄰區(qū)域。搜索算法如下:
1)考慮到車牌區(qū)域通常位于一幅車輛圖片的下半部分,并且車牌區(qū)域的左右下三個方向都擁有相對更少的邊緣信息,本文從二值圖像的左下方開始,以先往右后往上的方向,向右上方掃描整幅圖像,直到找到第一個值為1 的前景像素P1。
2)把P1 編號為1,然后從左下方開始掃描8 個相鄰像素點,將其中所有像素值為1 的像素編號為1 并入棧。
3)彈出棧頂像素,掃描其8 個相鄰像素點,將像素值為1且未編號的像素壓入棧中,若8 鄰域像素值均為0,則彈出棧中下一個像素并重復(fù)步驟(3),直到棧為空。此時所有標(biāo)記為1 的像素點組成了1 號連通域。
4)重復(fù)步驟1)~3),搜索出2 ~n 號連通域。
二維AABB 是一個矩形包圍盒,其定義為包圍一個連通域且四邊與坐標(biāo)軸平行的最小矩形。通常使用包圍盒的左上頂點坐標(biāo)(Xlu,Ylu)和右下頂點坐標(biāo)(Xrd,Yrd)來表征其在平面坐標(biāo)系中的具體位置。本文利用這兩個坐標(biāo)設(shè)計一組包圍盒參數(shù)來篩選車牌字符所對應(yīng)的包圍盒。
定義包圍盒的高度Height、寬度Length 分別為

則包圍盒的寬高比為R=Length/Height。本文利用包圍盒的中心點Mi 作為字符的定位點,其坐標(biāo)可表示為

兩個相鄰包圍盒M1、M2 之間的距離定義D 為

車牌字符區(qū)域的具體篩選流程如下:
1)車輛上正常安裝的車牌都具有固定的寬高比,因此在清晰的車輛圖像中,車牌上每一個字符的寬高比大都是相接近的。考慮到可能存在的噪聲、車牌傾斜等影響寬高比的因素,本文預(yù)先設(shè)置寬高比的上下限,高度上限值和寬度下限值,遍歷整幅圖像并標(biāo)記包圍盒寬高比不在此區(qū)間內(nèi)的連通域。若高寬比落在此區(qū)域中,則進一步比較高度值和寬度值并標(biāo)記不符條件的連通域。掃描完成后將所有被標(biāo)記的連通域內(nèi)的像素值都置為0。這樣可以濾除圖片中大部分不屬于車牌部分的干擾區(qū)域。
2)通過對多張車輛車牌圖像分析發(fā)現(xiàn),即使在車牌傾斜的情況下,字符包圍盒的中心點高度坐標(biāo)值仍然落在相鄰包圍盒的兩頂點高度坐標(biāo)值(Ylu,Yrd)之間,利用這一特性,結(jié)合字間距的大小規(guī)律可以對剩下的連通域做進一步的篩選。從左下方開始選擇第一個連通域包圍盒,以其中心點M1 為起始點,在y=Ylu1和y=Yrd1區(qū)間內(nèi)向右搜索是否有其他包圍盒的中心點落在此區(qū)間內(nèi)。如果沒有,則認為此連通域是孤立區(qū)域,將此連通域內(nèi)所有像素值置0,并選擇下一個中心點作為起始點繼續(xù)搜索。如果有中心點M2 存在,繼續(xù)檢驗M1 是否在M2 包圍盒的高度區(qū)間內(nèi),并進一步對比兩個包圍盒的高度、寬度。只有滿足兩個中心點都在對方包圍盒高度區(qū)間,并且包圍盒的高度值、寬度值都比較接近這兩個條件,才認為這兩個包圍盒相關(guān),并計算包圍盒距離D。否則將起始點退回到M1 并在M1 包圍盒高度空間內(nèi)繼續(xù)搜索。
3)在步驟2)中M2 包圍盒高度區(qū)間y=Ylu2和y=Yrd2內(nèi)繼續(xù)重復(fù)步驟(2)中搜索方式。當(dāng)計算得到的若干個距離值滿足上文所述的車牌字符間距關(guān)系時,提取對應(yīng)的所有包圍盒作為最終搜索到的車牌區(qū)域。
在實際車輛圖像中,車牌的左右方以及下方通常都是顏色相同的平滑區(qū)域,這些區(qū)域包含的邊緣信息較少。執(zhí)行完步驟1)之后,這些區(qū)域中只包含很少量的包圍盒。考慮到車牌定位的實時性要求,本文從左下方開始檢測,只需花費少量時間即可檢測出目標(biāo)包圍盒。將所有目標(biāo)包圍盒合并成一個大包圍盒,其所對應(yīng)的區(qū)域即為車牌區(qū)域。由于邊緣檢測會不可避免漏掉少量的邊緣信息,造成靠近車牌兩邊的一部分字符信息沒有被包含進來,因此需要將大包圍盒擴展一個較小的比例,以保證提取到完整的車牌圖像。
使用本方法對圖3a 所示車輛進行檢測,檢測到的字符連通域如圖3b 所示,最終檢測到的車牌圖像如圖3c 所示。
由于攝像機拍攝角度等原因,車牌圖像可能會出現(xiàn)一定傾斜角,這會對后續(xù)字符分割和識別造成影響。使用Hough變換矯正傾斜圖像存在運算量大的缺點,而使用首尾字符包圍盒中心點連線來檢測傾斜角度的方法簡單快速,但若首尾任一字符的中心點過度偏移于實際位置,則會使檢結(jié)果產(chǎn)生較大偏差。因此,使用最小二乘法將每個字符包圍盒的中心點擬合成一次函數(shù)y=ax+b 的形式,則車牌傾斜角度為式中,a 為擬合得到直線的斜率。若α 為負,則將車牌圖像逆時針旋轉(zhuǎn)角度|α|,反之則順時針旋轉(zhuǎn)α。


圖3 車牌區(qū)域定位結(jié)果
以圖3 為例,圖3b 中7 個字符包圍盒的中心點分別為(166,365),(177,365),(191.5,364.5),(202,364.5),(212,363.5),(223,363.5),(233,363)。經(jīng)過最小二乘法擬合得到的結(jié)果為y=-0.031 6x+370.491 7。進一步求解得到車牌的傾角為α=arctan ( -0. )031 6 =-1.81°。以第四個字符中心點為原點將車牌圖像逆時針旋轉(zhuǎn)1.81°,得到如圖4 所示的圖像。

4 傾斜矯正后的車牌圖像
旋轉(zhuǎn)圖像的同時計算包圍盒中心點的新位置。假設(shè)第i個字符包圍盒中心點位置為,若以第四個字符中心點為原點,則其坐標(biāo)可表示為,其離原點的距離為,旋轉(zhuǎn)α 角度后其新位置坐標(biāo)可表示為


圖5 字符分割結(jié)果
車牌圖像的質(zhì)量會受到角度傾斜、車牌污損、曝光過度等因素影響。但只要車牌部分的邊緣信息足夠完整,本文算法就可以有效地檢測車牌區(qū)域分割車牌字符。本文對不同條件下所拍攝的200 張樣本圖像進行實驗,定位結(jié)果如表1 所示。

表1 車牌定位結(jié)果
由表1 可知,本文算法對大部分車輛車牌圖像都有良好的定位和分割效果。能定位到車牌圖像就能準(zhǔn)確分割圖像中的每一個字符。這是因為本文算法中車牌的定位也是通過預(yù)先檢測車牌字符包圍盒的方法實現(xiàn)的,如果能準(zhǔn)確檢測到車牌字符的包圍盒,就可以順利實現(xiàn)后續(xù)的定位和分割操作。本文算法對具有復(fù)雜紋理信息的圖像也有良好的檢測效果。而在夜間進行檢測也能取得很不錯的效果,這是因為車牌具有良好的反光特性,在夜間被燈光照射的車牌往往擁有更明顯的邊緣信息。不同條件下車牌檢測結(jié)果如圖6 所示。

圖6 不同條件下車牌檢測結(jié)果
過曝、曝光不足或者車牌發(fā)生較明顯的污損等因素會造成車輛圖像模糊從而丟失邊緣信息,漏檢的那一部分圖像就是屬于這種類型。
1)本文提出基于CCA 和AAB 包圍盒的車牌字符定位分割算法,使用連通域分析和AAB 包圍盒來標(biāo)定和表征圖像中的連通區(qū)域,并根據(jù)車牌字符的實際分布規(guī)律來篩選出屬于車牌區(qū)域的連通域,使用包圍盒中心點定位矯正車牌圖像并進行字符分割。
2)仿真實驗結(jié)果表明,本算法對不同條件下的車牌圖像具有良好的檢測和分割效果,成功率達到93.5%。
3)此外,本算法基于同一種參數(shù)即可實現(xiàn)車牌定位和字符檢測,在實際應(yīng)用中,這可以有效簡化系統(tǒng)流程設(shè)計,提高了檢測效率。
[1]SU J R,MA Z.Car license plate location based on the density and projection[C]//第三屆中國智能計算大會論文集.濟南:中國運籌學(xué)會智能計算分會,2009:409-412.
[2]李強,汪洋,李偉博,等. 基于藍色車牌背景的車牌精確定位實現(xiàn)方法[J].電視技術(shù),2011,35(15):4-6.
[3]趙兵,魯敏,匡綱要,等. 基于混合特征的車牌定位算法[J].計算機工程與設(shè)計,2008,28(23):5668-5670.
[4]ZHAO W,GAO M Y,HE Z W.Character recognition based on improved BP neural network[C]//Proc.2013 Third International Conference on Instrumentation,Measurement,Computer,Communication and Control(IMCCC).[S.l.]:IEEE Press,2013:754-757.
[5]WANG Y R,LIN W H,HORNG S J. A sliding window technique for efficient license plate localization based on discrete wavelet transform[J]. Expert Systems with Applications,2011,38(4):3142-3146.
[6]方興林,方云樓.一種基于先驗知識約束的車牌字符分割新算法[J].重慶工商大學(xué)學(xué)報:自然科學(xué)版,2012,29(8):42-46.
[7]甘玲,林小晶.基于連通域提取的車牌字符分割算法[J].計算機仿真,2011,28(4):336-339.
[8]張金林,胡宏健,方虎生,等. 基于字符連通域特征的車牌定位方法[J].電視技術(shù),2012,36(7):140-142.
[9]林川,吳正茂,覃金飛. 基于機器視覺的分級車牌字符識別方法[J].電視技術(shù),2014,38(11):198-201.
[10]中華人民共和國公安部. GA36—2007 中華人民共和國機動車號牌[S].2007.
[11]郭彩虹,陳衛(wèi)鋼.一種噪聲方差自適應(yīng)的連續(xù)消除方法[J].計算機工程與應(yīng)用,2010,46(7):208-212.
[12]岡薩雷斯. 數(shù)字圖像處理(MATLAB 版)[M]. 電子工業(yè)出版社,2009.
[13]朱媛媛,楊文杰. 噪聲對拉普拉斯算子邊界檢測影響的分析[J].北京印刷學(xué)院學(xué)報,2013,21(6):38-41.