摘 要:對車牌識別(LPR)系統(tǒng)中字符分割與字符識別方法進行探討#65377;根據(jù)車牌字符的特點,首先利用投影法采用水平掃描和垂直掃描進行字符分割,接著對字符圖像進行歸一化處理,實現(xiàn)對字符的完全分割#65377;在此基礎上,利用BP神經(jīng)網(wǎng)絡識別算法實現(xiàn)車牌字符的識別,從而提高系統(tǒng)的識別速度和識別率#65377;數(shù)字仿真的識別結果驗證了該方法的正確性和有效性#65377;
關鍵詞:車牌識別(LPR);字符分割;字符識別; BP網(wǎng)絡
中圖分類號:TP391.41文獻標識碼:A
1 引 言
隨著國民經(jīng)濟的不斷發(fā)展,國內的高速公路,收費站#65380;停車場越來越多,為了加強這一領域的管理自動化,智能交通系統(tǒng) (Intelligent Transportation Systems, ITS) 的發(fā)展也就顯得日益迫切#65377;車牌識別(License Plate Recognition, LPR) 是ITS 的一個重要組成部分,它能從一幅圖像中自動提取車牌圖像,自動分割字符圖像,進而對字符進行識別#65377;車牌識別系統(tǒng)的成功開發(fā)必將大大加速ITS 的進程#65377;智能車牌自動識別是一項利用車輛的動態(tài)視頻或靜態(tài)圖像進行車牌號碼#65380;車牌顏色自動識別的神經(jīng)網(wǎng)絡識別技術[1]#65377; 其硬件基礎一般包括觸發(fā)設備(監(jiān)測車輛是否進入視野)#65380;攝像設備#65380;照明設備#65380;圖像采集設備#65380;識別車牌號碼的處理機(如計算機)等,其軟件核心包括車牌定位算法#65380;車牌字符分割算法和神經(jīng)網(wǎng)絡字符識別算法等#65377;
2 智能車牌自動識別系統(tǒng)
一個完整的車牌識別系統(tǒng)應包括車輛檢測#65380;圖像采集#65380;車牌識別等幾部分#65377;字符分割和字符識別是智能車牌自動識別過程中的兩個關鍵步驟,已有的處理方法或多或少地都存在一定的不足和局限性#65377;文獻[2]采用閾值分割的方法分割車牌字符,僅僅考慮了圖像的灰度信息,忽略了空間信息,難以解決背景復雜的圖像分割問題;文獻[3][4]采用邊緣檢測方法測得車牌邊緣,分割車牌字符,該方法要求圖像邊緣的連續(xù)性好,但是實際系統(tǒng)中攝像頭拍攝的車牌邊框往往是時斷時續(xù)的;另外,Paolo Comelli以收費站實時拍攝的汽車準靜態(tài)圖象為處理對象[5],但系統(tǒng)的成功實現(xiàn)大大受益于國外牌照的規(guī)范統(tǒng)一#65377;本文主要對字符分割和字符識別方法進行探討#65377;
計算技術與自動化2007年6月第26卷第2期張 劍等:一種基于字符分割與字符識別的LPR方法
3 車牌字符分割
3.1 車牌區(qū)域特征
根據(jù)1992年中華人民共和國機動車號牌GA36-92標準,汽車前車牌有以下特征:
1)外廓尺寸:440×140(mm);
2)顏色:小功率汽車所用的藍底白字牌照,大功率汽車所用的黃底黑字牌照,軍用或警用的白底黑字#65380;紅字牌照及國外駐華機構用的黑底白字牌照;
3)標準樣式:·x1x2·x3x4x5x6x7,其中x1是各省#65380;直轄市的簡稱,如“京\"#65380;“津\"#65380;“滬\"#65380;“魯\"等,x2是大寫英文字母,如“A\",“B\",“C\"等,x3x4x5x6x7可能是英文字母A-Z,也可能是阿拉伯數(shù)字0-9,每個字寬45mm,字長90mm,間隔符寬10mm,每個單元間隔12mm#65377;
所有牌照圖像都有一些共同特征,歸納如下:
1)圖像上有大量長短不一類似直線與長方形的區(qū)域,還有一些灰度特征類似于文字區(qū)域的汽車廠商標志區(qū)域,如奧迪車的圖像類似于4個O組成的標志#65377;
2)車牌文字周圍有一個類似于長方形的邊框,其厚度不一,而且有斷裂處,有時候彎曲度比較大#65377;
3)文字大小統(tǒng)一,排列成行,由于拍攝原因有一定程度傾斜,文字與背景之間有明顯灰度比#65377;
3.2 車牌字符分割方法
系統(tǒng)在讀進來的圖像(如圖2)中一般會含有多個數(shù)字,識別的時候只能根據(jù)每個字符的特征來進行判斷,所以還要進行字符分割的工作,這一步工作就是把圖像中的字符獨立的分割出來#65377;字符分割是字符識別的基礎,它決定孤立字符的狀況#65377;
通常的字符切分有以下幾種方法:
1)間距#65380;間隙切分法
利用字符間隙(相鄰字符間的間隔)和字符間距(相鄰字符中心的距離)進行字符切分#65377;這里要求字符的寬度和字符間隙基本相同,故對輸入圖像質量的依賴性很大#65377;
2) 投影法
利用水平和垂直投影來進行字符切分#65377;水平投影特征是每一行中心黑色素點的總和;垂直投影特征是每一列中心黑色素點的總和#65377;這種切分有速度快的特點,但對不規(guī)范的字符會出現(xiàn)誤切分的情況#65377;
3)識別切分法
其切分標準是識別的信度,其信度由單字符識別模塊給出[6]#65377;一般,識別信度還可以由后處理的詞法#65380;句法#65380;語義分析給出#65377;
本文主要利用二值化后的投影信息,輔以各種判斷條件來進行字符分割,也就是上面介紹的第二種方法#65377;由于車牌字符區(qū)有一定的高度,所以事先進行水平投影,這樣可以利用水平投影信息將相當一部分非字符候選點抹去,再經(jīng)過歸一化使之成為規(guī)范圖像輸出給字符識別部分#65377;
3.3 字符分割的具體算法
第1步,先自下向上對圖像進行逐行掃描直至遇到第一個黑色的像素點#65377;記錄下來#65377;然后再由上向下對圖像進行逐行掃描直至找到第一個黑色像素,這樣就找到圖像大致的高度范圍#65377;
第2步,在這個高度范圍之內在自左向右逐列進行掃描,遇到第一個黑色像素時認為是字符分割的起始位置,然后繼續(xù)掃描,直至遇到有一列中沒有黑色像素,則認為這個字符分割結束,然后繼續(xù)掃描,按照上述的方法一直掃描直至圖像的最右端#65377;這樣就得到了每個字符的比較精確寬度范圍#65377;
第3步,在已知的每個字符比較精確的寬度范圍內,按照第一步的方法,分別進行自上而下和自下而上的逐行掃描來獲取每個字符精確的高度范圍#65377;
3.4 過寬塊和過窄塊的處理
具體過程如下:
1)求出區(qū)域的平均寬度,算法類似于求字符的平均寬度,或是以字符寬度代替區(qū)域的平均寬度#65377;
2)分析過大的區(qū)域,看其是否由兩個字符組成,如是則將其分成兩塊區(qū)域#65377;
3)分析過小的區(qū)域,看其是否可以跟左右區(qū)域合并#65377;
通過以上步驟可以得到分割的字符,然后對字符定出鄰接矩形,對其歸一化處理#65377;
3.5 圖像的歸一化處理
因為掃描進來的圖像中字符大小存在較大的差異,而相對來說,統(tǒng)一尺寸的字符識別的標準性更強,準確率自然也更高,標準化圖像就是要把原來各不相同的字符統(tǒng)一到同一尺寸,在本系統(tǒng)中是統(tǒng)一到同一高度,然后根據(jù)高度來調整字符的寬度#65377;具體算法如下:先得到原來字符的高度,并與系統(tǒng)要求的高度做比較,得出要變換的系數(shù),然后根據(jù)得到的系數(shù)求得變換后應有的寬度#65377;在得到寬度高度之后,把新圖像里面的點按照插值的方法映射到圖像中#65377;車牌字符歸一化結果如圖3所示#65377;
4 車牌字符識別
字符識別方法目前主要有基于模板匹配算法和基于人工神經(jīng)網(wǎng)絡算法#65377;基于模板匹配算法首先把待識別字符二值化并將其尺寸大小縮放為字符數(shù)據(jù)庫中模板的大小,然后與所有的模板進行匹配,最后選最佳匹配作為結果#65377;由于這種匹配算法穩(wěn)定性較差#65380;時間花費也較大,因此在此基礎上提出了基于關鍵點的匹配算法#65377;此算法先對待識別字符進行關鍵點提取,然后對關鍵點去噪,最后再確定字符的分類#65377;這種匹配算法只利用了字符的關鍵點進行匹配,因此提高了識別速度又具有較高的識別率#65377;基于人工神經(jīng)網(wǎng)絡的算法主要有兩種:一種是先對待識別字符進行特征提取,然后用所獲得的特征來訓練神經(jīng)網(wǎng)絡分類器;另一種方法是直接把待處理圖像輸入網(wǎng)絡,由網(wǎng)絡自動實現(xiàn)特征提取直至識別出結果#65377;前一種方法識別結果與特征提取有關,而特征提取比較耗時,因此特征提取是關鍵#65377;后一種方法無須特征提取和模板匹配,隨著相關技術的進步,這種方法更實用#65377;鑒于以上兩種識別方法的比較,本文采用基于人工神經(jīng)網(wǎng)絡進行字符識別#65377;
4.1 人工神經(jīng)網(wǎng)絡的概述
人工神經(jīng)網(wǎng)絡是指利用工程技術手段模擬人腦神經(jīng)網(wǎng)絡的結構和功能的一種技術,它的目的是使機器具有人腦那樣的感知#65380;學習和推理功能[7]#65377;
神經(jīng)網(wǎng)絡用于圖像識別具有以下優(yōu)點:神經(jīng)網(wǎng)絡的信息分布式存儲于聯(lián)結權值系數(shù)中,使網(wǎng)絡具有很高的容錯性,而圖像識別中往往存在噪聲或輸入圖像部分損失,因此神經(jīng)網(wǎng)絡可以較好地解決圖像識別問題#65377;另外,神經(jīng)網(wǎng)絡的自組織和自學習功能,大大放松了傳統(tǒng)圖像識別方法所需的約束條件,使其對圖像識別問題顯示出極大的優(yōu)越性#65377;
網(wǎng)絡不僅有輸入節(jié)點,輸出節(jié)點,而且有隱層節(jié)點(可以是一層或多層),如圖4所示#65377;對于輸入信號,要先向前傳播到隱節(jié)點,經(jīng)過作用函數(shù)后,再把隱節(jié)點的輸出信息傳播到輸出節(jié)點,最后給出輸出結果#65377;節(jié)點作用函數(shù)通常選取Sigmoid函數(shù):
4.2BP神經(jīng)網(wǎng)絡算法
BP算法的過程,由正向傳播和反向傳播組成#65377;在正向傳播過程中,輸入信息從輸入層經(jīng)隱單元層逐層處理,并傳向輸出層,每一層神經(jīng)元的狀態(tài)只影響下一層神經(jīng)元的狀態(tài)#65377;如果在輸出層不能得到期望的輸出,則轉入反向傳播,將誤差信號沿原來的連接通路返回,通過修改各層神經(jīng)元的權值,使得誤差信號最小#65377;神經(jīng)網(wǎng)絡的反饋調節(jié),在誤差信號的反向傳播中,網(wǎng)絡不斷地修正各個節(jié)點的權值#65377;
設有n個節(jié)點的BP網(wǎng)絡,采用S型激勵函數(shù)#65377;為簡單起見,可以假設網(wǎng)絡只有一個輸出y,任一節(jié)點的輸出為Oi,并設有N個樣本(xk,yk),k=1,2,3,…,N,對某一輸入xk,網(wǎng)絡的輸出為yk,節(jié)點i的輸出為Oik,節(jié)點j的輸入為:
使用平方型誤差函數(shù):
其中,yk為網(wǎng)絡之實際輸出,定義如下:
設計BP網(wǎng)絡的關鍵之處在于高效的特征提取方法#65380;大量有代表性的訓練樣本#65380;高速穩(wěn)定收斂的學習方法#65377;
4.3 識別效果
由于缺少配套的圖像采集設備,所采集到的車輛圖像不十分理想,并且得到的圖像是在陰雨天氣下拍攝的,所以在識別過程中難免會出現(xiàn)誤差#65377;此外,神經(jīng)網(wǎng)絡結構也有待優(yōu)化,需要進一步探討和研究#65377;對于圖1所示車牌圖像,其識別效果如圖5所示,能夠完全實現(xiàn)車牌字符的識別#65377;
圖5 識別效果[JZ)]
5 結 論
智能車牌自動識別技術主要包括圖像預處理#65380;車牌的定位與分割#65380;字符分割和字符識別四大部分,本文著重對字符分割與字符識別方法進行了探討#65377;
字符分割是將車牌區(qū)域分割成單個字符#65377;本文采用水平掃描和垂直掃描進行字符分割,獲得較好的效果#65377;字符識別是對分割的字符進行識別,這里采用BP神經(jīng)網(wǎng)絡算法,提高系統(tǒng)的識別速度和識別率#65377;
智能車牌自動識別系統(tǒng)是解決公路交通配套設施效率瓶頸問題的有效措施之一,具有廣泛的應用前景和商業(yè)價值,必將為我國公路交通事業(yè)的發(fā)展做出更為重大的貢獻#65377;
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。