向 榮 周慧娟
(浙江大學(xué)數(shù)字技術(shù)及儀器研究所 杭州 310027)
機(jī)動(dòng)車牌照作為機(jī)動(dòng)車車輛的惟一標(biāo)識(shí),在車輛標(biāo)識(shí)、車輛管理中發(fā)揮著關(guān)鍵作用.因而車牌識(shí)別系統(tǒng)(license plate recognition,LPR)作為智能交通系統(tǒng)的核心組成部分在停車場(chǎng)管理系統(tǒng)、高速公路超速自動(dòng)化管理系統(tǒng)、公路布控、電子警察和小區(qū)車輛門禁系統(tǒng)等領(lǐng)域有著極其廣泛的應(yīng)用前景[1].從車牌識(shí)別系統(tǒng)進(jìn)入中國(guó)以來(lái),國(guó)內(nèi)有大量的學(xué)者在從事這方面的研究,提出了很多新穎快速的算法.但就目前實(shí)際商用以及實(shí)驗(yàn)室的識(shí)別率來(lái)看,目前中國(guó)車牌識(shí)別系統(tǒng)的準(zhǔn)確性還有待提高.因此,本文基于大量的實(shí)際車牌圖像的測(cè)試,提出了一種高識(shí)別率的車牌識(shí)別系統(tǒng).該系統(tǒng)中在定位以及傾斜校正中提出了若干新算法,最后的實(shí)驗(yàn)結(jié)果表明,這些算法效果顯著,整個(gè)系統(tǒng)對(duì)隨機(jī)背景下車牌的正確識(shí)別率達(dá)到了90%以上.
車牌識(shí)別技術(shù)主要利用每一輛汽車牌照的惟一性和互異性2個(gè)特點(diǎn),將采集到的車輛圖像經(jīng)過(guò)一系列的處理,識(shí)別出車牌號(hào)碼.按照模塊設(shè)計(jì)原則,該識(shí)別系統(tǒng)分為車牌定位、傾斜校正、字符分割以及字符識(shí)別4個(gè)模塊.各個(gè)模塊之間功能相對(duì)獨(dú)立,依次串聯(lián)成整個(gè)識(shí)別系統(tǒng),整體框圖見圖1.
圖1 車牌識(shí)別系統(tǒng)總體框圖
車牌定位之前,要首先將彩色圖像灰度化,考慮到我國(guó)車牌的背景顏色與字符顏色的對(duì)比特點(diǎn),本系統(tǒng)采用了獨(dú)創(chuàng)的區(qū)分度更大的灰度化公式
本系統(tǒng)采用3級(jí)定位,逐步求精,現(xiàn)分述如下.
1)粗定位 在粗定位階段,依次進(jìn)行Gauss-Laplace邊緣檢測(cè),閾值二值化,連通域?yàn)V波處理,最后利用車牌區(qū)域的邊緣信息進(jìn)行粗定位,粗定位算法過(guò)程如下:(1)搜索水平方向跳變數(shù)與每行字符點(diǎn)總數(shù);(2)跳變數(shù)差分,搜索車牌上下邊;(3)將取間隔大于車牌高度的相鄰兩邊為上下邊候選組;(4)將過(guò)于接近的上下邊組從候選車牌可能組中剔除;(5)掃描可能的車牌上下邊的車牌字符垂直投影并進(jìn)行鄰域3列均值濾波;(6)用一個(gè)寬度為60像素,高度為候選車牌上下邊距的抽樣框進(jìn)行垂直投影值掃描,得出左右邊界;(7)利用牌寬高比的先驗(yàn)知識(shí)將候選組中車牌寬高比不符合一定范圍內(nèi)的比例關(guān)系的組進(jìn)行濾除.
2)二次定位 在二次定位階段,依次進(jìn)行水平頂帽變換,去噪處理,力圖將車牌的準(zhǔn)確位置確定出來(lái).二次定位算法過(guò)程如下:(1)逐行掃描并統(tǒng)計(jì)處跳變數(shù);(2)對(duì)跳變數(shù)矩陣進(jìn)行鄰域平均,使用[-3,2,1]模板對(duì)每行跳變數(shù)進(jìn)行卷積操作,再用[1,2,-3]模板對(duì)每行跳變數(shù)進(jìn)行卷積操作,檢測(cè)出該車牌候選組的上下邊;(3)再?gòu)淖笸覓呙?,將每列的水平跳變點(diǎn)數(shù)累加.然后再次從左向右掃描,將跳變數(shù)進(jìn)行左右鄰域均值處理,取出大于某個(gè)閾值的列為該車牌候選組的左邊界,同樣的方式得到右邊界[2].
3)最終定位 最終定位是在傾斜校正后完成,它的作用是獲取精確的車牌信息,力求將所有字符區(qū)域識(shí)別出來(lái)而不帶來(lái)任何其他的干擾.在傾斜校正后,對(duì)其進(jìn)行改進(jìn)的Otsu二值化處理.最終定位過(guò)程如下:(1)求出每行背景像素所占的百分比;(2)求出每行水平跳變數(shù)以及相鄰上下行間的跳變數(shù)的差;(3)按照17×1的模板進(jìn)行水平腐蝕,求出相鄰兩行的前景像素值的特征;(4)再次進(jìn)行水平頂帽變換,并求出上下兩行的跳變數(shù),采用[-3,2,1]與[1,2,-3]模板進(jìn)行鄰域跳變數(shù)卷積操作;(5)對(duì)(1),(2),(3),(4)步中求得的特征值進(jìn)行融合,從而求出車牌的精確上下邊界;(6)掃描以車牌既定高度的1/3為寬,車牌高度為高的抽樣框內(nèi)的垂直投影,確定最終車牌左右邊界.最終定位完畢.結(jié)果參見圖2.
圖2 二次定位
在車牌水平的情況下,車牌的水平投影具有2個(gè)明顯的波谷,這是由車牌字符與邊框中間的間隙形成.本文考慮采用水平投影方差為判斷依據(jù),求出傾斜角度并進(jìn)行校正.該算法的具體過(guò)程如下:(1)將車牌以1°為單位,以逆時(shí)針方向?yàn)檎?,依次傾斜-15°~15°;(2)求出每次傾斜后每行的投影點(diǎn)數(shù);(3)求出每行投影點(diǎn)數(shù)的均值和方差;(4)搜索方差最大時(shí)的傾斜角度;(5)調(diào)用C#的函數(shù)RotateTransform來(lái)對(duì)圖形對(duì)象進(jìn)行旋轉(zhuǎn)進(jìn)行傾斜校正,處理效果見圖3.
圖3 傾斜校正
本文提出一種將車牌標(biāo)準(zhǔn)尺寸的先驗(yàn)知識(shí)與車牌垂直投影特征的后驗(yàn)知識(shí)相結(jié)合的分割思想.具體步驟如下:(1)根據(jù)車牌標(biāo)準(zhǔn)尺寸,計(jì)算每一個(gè)字符的列標(biāo)與車牌寬度的比例;(2)將比例系數(shù)乘以定位車牌子圖像的寬,求出車牌中的字符邊界大致位置,以該位置在某一鄰域內(nèi)進(jìn)行搜索.根據(jù)車牌字符的垂直投影,判斷精確的車牌字符邊界,同時(shí)還要驗(yàn)證車牌中是否存在“1”;(3)依據(jù)所求車牌字符邊界,將車牌字符分割成為7個(gè)字符子圖像;(4)將子圖像歸一化為35×70的尺寸[3-5].
本文采用了多種統(tǒng)計(jì)模式識(shí)別綜合法,首先采用了模板匹配的方法,計(jì)算字符與模板中最為相似的即為識(shí)別結(jié)果.匹配過(guò)程的數(shù)學(xué)描述為
由于模板匹配對(duì)相似的字符之間的識(shí)別率很差,如“8”和“B”,“O”和“Q”,“5”和“S”,“Z”和“2”,等等.仔細(xì)比對(duì)這些相似的車牌字符可以發(fā)現(xiàn),雖然從形狀上很難區(qū)分這些相似字,但是英文字符的4個(gè)角通常與數(shù)字有著很大的不同.利用這一點(diǎn),本系統(tǒng)使用4個(gè)角的小區(qū)域相似度來(lái)對(duì)模板匹配進(jìn)行修正.整個(gè)識(shí)別過(guò)程如下:(1)利用上述計(jì)算公式算出車牌字符與每一個(gè)模板的相似百分比;(2)同時(shí)計(jì)算車牌字符與每個(gè)模板的4個(gè)角的相似度,將加權(quán)后的角相似度加上相似百分比作為判定依據(jù),將最大的相似百分比作為識(shí)別結(jié)果.
測(cè)試樣本為隨機(jī)背景含車牌的圖片200張,其中圖片的分辨率從5萬(wàn)~80萬(wàn)像素不等,車牌傾斜角度各異,光線明暗程度有別,圖4為經(jīng)過(guò)定位和分割的部分車牌識(shí)別結(jié)果.
圖4 定位及分割結(jié)果
由圖4可見,本系統(tǒng)提出的3級(jí)定位策略有效降低了定位的虛警率,最終定位的大多數(shù)區(qū)域?yàn)榫_的車牌區(qū)域.另外,粗定位以后的略微放大車牌定位區(qū)域,也在一定程度上降低了第一次定位中的偏差,而在后續(xù)定位中達(dá)到將車牌區(qū)域準(zhǔn)確的切分出來(lái).在保留字符完整的同時(shí),切分到字符的邊緣,這樣的定位結(jié)果為之后的分割提供了十分有利的處理目標(biāo),定位準(zhǔn)確率為93.5%.
從圖4還可以發(fā)現(xiàn),本系統(tǒng)的分割結(jié)果相較于其他系統(tǒng)無(wú)疑精確很多.特別要指出的是,對(duì)于“1”字符的分割一直是個(gè)易錯(cuò)點(diǎn),圖4充分證明了本系統(tǒng)的分割策略行之有效,分割效果良好.
圖5是從本系統(tǒng)的結(jié)果顯示區(qū)截取的圖像.前19幅均識(shí)別無(wú)誤,但最后一幅出現(xiàn)了識(shí)別錯(cuò)誤.在這些錯(cuò)誤中,大部分是相似字的識(shí)別錯(cuò)誤,在最后一幅圖中,漢字二值化的結(jié)果不夠清晰,結(jié)果也發(fā)生了很大的偏差,這是由二值化閾值不當(dāng)造成.最終識(shí)別準(zhǔn)確率為91%.
圖5 識(shí)別結(jié)果
本文以Visual Studio為開發(fā)工具,C#為開發(fā)語(yǔ)言完成了一套完整的車牌識(shí)別系統(tǒng)的設(shè)計(jì)開發(fā),并對(duì)車牌識(shí)別中傳統(tǒng)算法中存在的不足進(jìn)行了分析,提出了一些新的識(shí)別方法.實(shí)驗(yàn)證明,整個(gè)系統(tǒng)可識(shí)別的圖像分辨率從5萬(wàn)~80萬(wàn)像素不等,車牌傾斜角度各異,光線明暗程度有別,單幅圖像識(shí)別時(shí)間在0.7~2s以內(nèi).該算法滿足實(shí)際需要,具有一定可靠性與可用性.在接下來(lái)的研究工作中,本課題還可在以下幾個(gè)方面進(jìn)行深入的研究.考慮與圖像采集端進(jìn)行綜合設(shè)計(jì),以便更好的發(fā)揮先驗(yàn)知識(shí)的定位效果,最終有利于形成算法產(chǎn)品化,實(shí)用化.優(yōu)化現(xiàn)有的識(shí)別算法,使得系統(tǒng)的準(zhǔn)確率更高,魯棒性更好.在系統(tǒng)實(shí)時(shí)性方面,盡量簡(jiǎn)化冗余步驟,使速度更快,更具實(shí)用化.
[1]白晶心.車牌識(shí)別系統(tǒng)的實(shí)現(xiàn)[D].北京:北京郵電大學(xué),2009.
[2]王 葉.車牌識(shí)別系統(tǒng)中字符切分和識(shí)別技術(shù)的研究[D].北京:北京郵電大學(xué),2009.
[3]ACONCI J A,CARVALHO E R,RAUBER T R.A complete system for vehicle plate localization,Segmentation and recognition in real life scene[J].IEEE Latin America Transactions,2009,7(5):110-119.
[4]何鐵軍,張 寧,黃 衛(wèi).車牌識(shí)別算法的研究與實(shí)現(xiàn)[J].公路交通科技,2006,23(8):147-149.
[5]劉 興,蔣天發(fā).智能車牌識(shí)別系統(tǒng)中消除圖像干擾的方法[J].武漢理工大學(xué)學(xué)報(bào):交通科學(xué)與工程版,2005,29(5):805-806.