王磊
【摘 ? 要】 車牌識別主要包括車牌定位、分割和識別三部分。本文利用MATLAB軟件通過對車牌圖像進行預處理,采用垂直投影法進行字符切割,用模板匹配法進行字符識別完成了對采集的車牌圖像的準確識別。結合LabVIEW設計了簡單直觀的車牌識別系統(tǒng)。
【關鍵詞】 車牌識別;MATLAB;LabVIEW
License plate recognition system based on MATLAB and LabVIEW
Wang Lei
(chool of information and control engineering, jilin college of chemical engineering ? ?132022)
[Abstract] License plate recognition mainly includes three parts: license plate location, segmentation and recognition. In this paper, MATLAB software is used to preprocess the license plate image, use the vertical projection method for character cutting, and use the template matching method for character recognition to complete the accurate recognition of the collected license plate image. A simple and intuitive license plate recognition system was designed with LabVIEW.
[Keywords] license plate recognition; MATLAB; The LabVIEW
近幾年,智能交通作為物聯(lián)網(wǎng)信息化的一個重要應用得到了廣泛的應用,而車牌識別是智能交通的一個重要的研究與實現(xiàn)方向。車牌識別系統(tǒng)不只應用在智能交通管理系統(tǒng),在公共場所的停車場管理系統(tǒng)、智慧小區(qū)的車輛管理系統(tǒng)等各個領域有著非常廣泛的應用。一個操作簡單直觀的車牌識別系統(tǒng)在智能交通領域是非常重要的。
1 ?車牌識別系統(tǒng)框圖
傳統(tǒng)的車牌識別理論上一般包括:車牌圖像采集、車牌字符定位、車牌字符分割、車牌識別。一般情況下,我們首先是通過硬件(比如照相機)采集車牌圖像,而后對車牌圖像進行預處理,主要是對圖像進行去噪、增強等[1]。
2 ?圖像預處理
我們通過照相機拍攝到的車輛圖像由于車輛的移動往往存在一定的噪聲,因此在進行識別前要進行車輛圖像的預處理[2]。本文主要是通過對圖像進行灰度變換和邊緣檢測進行圖像增強處理。
3 ?車牌定位
車牌定位和分割的準確度直接關系到最后的字符識別的質(zhì)量。主要包括圖像的腐蝕和閉處理。
3.1 ?灰度圖的腐蝕
所謂腐蝕即一種消除邊界點,使邊界向內(nèi)部收縮的過程[3]。腐蝕處理在車牌識別中有非常重要的作用,利用它可以消除圖像中小而且無意義的“干擾”。腐蝕的規(guī)則是輸出圖像的像素值是輸入圖像鄰域的最小值,MATLAB中利用函數(shù)imerode()實現(xiàn)圖像腐蝕處理 。腐蝕處理主要是為了細化目標車牌的細節(jié)信息。
3.2 ?圖像的閉處理
采集的圖像本身會存在儀器誤差和噪聲,在圖像腳點的提取過程中會有一定的影響,因此我們在腳點提取之前進行了圖像的閉處理,本系統(tǒng)利用MATLAB圖像閉處理函數(shù)imclose( )進行閉處理,它與可以去掉圖像上的小洞,填補輪廓上的縫隙。
4 ?車牌分割
本系統(tǒng)利用彩色分割法進行常規(guī)的車牌分割。通過統(tǒng)計彩色的像素點,進一步確定車牌的底色藍色 所對應的灰度范圍,首先確定車牌在行方向上的區(qū)域,這里通過統(tǒng)計在行方向的顏色像素點的數(shù)量來實現(xiàn)。再在分割出的行區(qū)域內(nèi)對顏色像素點數(shù)量做列方向的統(tǒng)計,從而定位得到裁剪后的彩色車牌圖像。
5 ?字符切割
5.1 ?切割前圖像去噪
車牌定位的同時采集到的圖像噪點沒有完全去除,本系統(tǒng)對圖像的低頻部分進行處理來平滑圖像。采用較常見的均值濾波算法(即線性濾波),具體的實現(xiàn)方法是鄰域平均法。選取目標像素點為中心的周圍的8個像素點:
其中m為該模板中包含當前像素在內(nèi)的像素總個數(shù)(即8個)。
5.2 ?字符切割前的圖像膨脹和腐蝕處理
所謂的膨脹可以認為是腐蝕的對偶運算,都是為了對目標車牌進行進一步識別所進行的處理。膨脹的運算規(guī)則是輸出圖像的像素值是輸入圖像鄰域中的最大值,MATLAB中利用函數(shù)imdilate()實現(xiàn)圖像腐蝕處理 。圖像的腐蝕和膨脹一般是結合到一起使用的。膨脹或腐蝕處理得到的結果如圖3所示。
5.3 ?字符切割
車牌的進一步識別要利用字符分割來實現(xiàn)。本系統(tǒng)利用垂直投影法對汽車圖像中的字符進行分割。每一個字符在投影圖上都可以產(chǎn)生不同波形起伏變化的現(xiàn)象,通過按行從左到右的掃描投影圖上顯示的波形圖,根據(jù)峰和谷的特征判斷出每一個字符的具體位置,通過計算垂直峰,檢測合理的字符高度比例。字符切割圖并進行歸一化處理如圖4。
6 ?字符識別
最后需要對分割的字符進行識別,采用模板匹配法。我國的車牌字符主要包括省市簡稱、十個阿拉伯數(shù)字,二十六個英文大寫字母,字庫量較小,字符較規(guī)整,識別率較高,完全可以克服模板匹配法識別率低的問題。而且模板匹配法的實現(xiàn)簡單,計算量小,只有矩陣的加減與統(tǒng)計。因此本系統(tǒng)可以使用這種方法。最終實現(xiàn)車牌的正確識別。
為了設計簡單直觀的操作界面,利用MATLAB和LabVIEW的混合編程技術,設計了車牌識別系統(tǒng)。
7 ?結論
本文的系統(tǒng)實現(xiàn)了對汽車牌照的識別,系統(tǒng)的講述了系統(tǒng)各個部分的處理過程,以及圖像處理時使用的基本理論。在以往系統(tǒng)的基礎,本系統(tǒng)在進行車牌的字符切割之前,創(chuàng)造性的對車牌進行去噪和膨脹處理,從而大大提高了系統(tǒng)的準確性。
參考文獻:
[1] 冀小平.基于MATLAB的車牌識別系統(tǒng)研究[M].北京:電子 ? ? ?工業(yè)出版社,2009:69-78.
[2] 戚飛虎.模式識別與圖像處理[M].上海:上??茖W技術出版 ? ? ?社,1998:5-10.
[3] V. Torte,T. Poggio. On Edge Detection[J].IEEE Trans. On ? ? ? ? ? ? ?Pattern Analysis and Machine Inte- lligence,2006,8(2):647- ? ? ? ?663.