張連俊 張 誠
隨著經濟和社會的發展,汽車數量的迅速增加使得城市交通問題日益嚴重。車輛管理系統逐漸從人工管理轉變為自動化和智能化管理。車輛管理系統智能化的核心部分就是車牌信息的自動識別。本文提出了一種基于Matlab 的車牌識別的方案,并進行了仿真。
由于復雜天氣、光照強度等因素,自然環境下拍攝的車牌圖像質量或多或少都會發生變化,圖像的質量將直接影響后續車牌定位和識別,需對讀入的車牌圖像進行預處理,盡可能消除噪聲提高圖像質量。圖像預處理主要包括圖像灰度化、圖像增強、平滑處理等操作,并轉換為便于車牌定位的二值化圖像。本文重點研究的車牌為藍底類,針對黃底車牌、白底車牌,需要調整車牌定位算法并反轉圖像,在二值化后,可以轉化為白底黑字,再經過反轉變為黑底白字處理。
車牌定位部分,綜合考慮了常見的幾種車牌定位方法的優缺點,而選擇了基于灰度圖像紋理特征的車牌定位方法。對灰度圖像進行行列掃描工作,找出圖像的每一行所包含的車牌線段,把這些線段的起始坐標以及長度記錄下來,若有連續行都有不少于一個的牌照線段,且這些行數大于某一確定閾值,就認為在行方向上找到了關于此牌照的一個候選區域,也就確定了行方向的起始行以及高度。同理,進行列方向的掃描。最終確定完整車牌區域,步驟如圖1 所示。

圖1 車牌定位步驟圖
在進行字符分割之前,先在精確定位后的牌照區域上進行進一步的圖像處理工作,例如傾斜校正、均值濾波、膨脹腐蝕等。通過這一系列處理,使得最終在字符分割前的圖像更加清晰,更加利于字符的分割與識別。采用的校正方法是基于Radon 變換的傾斜校正。
采用基于先驗知識約束的垂直投影的車牌字符分割方法。首先對將牌照圖像進行灰度化、二值化圖像、開閉運算等預處理工作,然后從左到右對車牌圖像進行像素掃描,計算列方向像素值總和,確定較小的像素和閾值,找到字左端,然后根據字符與車牌的高與寬的比例關系找到漢字的右端,繼續重復此操作,找到所有剩余字符的左右位置,然后逐一分割字符。
采用了兩種比較典型的字符識別方法,分別是基于模板匹配的字符識別方法和基于BP 神經網絡的字符識別方法。首先將需要識別的字符標準化為模板庫中模板的大小,然后將要識別的字符與字符模板庫中所有模板進行比較,生成一個像素差距函數,接著去尋找這個差距函數的最小值,也就是通過計算比較輸入字符與模板庫中模板之間的相似程度,差距函數最小值即相似度最高的所對應的字符模板就是所要識別的字符,最后輸出匹配結果。

圖2 BP 神經網絡的應用過程圖
模板庫的創建是基于模板匹配的字符識別方法達到有效識別率的關鍵,在字符進行識別前必須把模板庫創建好。BP 神經網絡,通常指的是基于誤差逆向傳播訓練(也即BP 算法)的多層反饋神經網絡,設計BP 神經網絡最重要的部分是要有大量訓練樣本,以及一個高效、快速收斂的學習方法。它的實現過程的大致框圖如圖2 所示。

圖3 網絡訓練曲線狀態圖
將車牌圖像劃分為訓練樣本和測試樣本,將訓練樣本輸入到BP 網絡進行訓練,初始化BP 網絡后,正向傳播計算誤差,確定是否滿足設定條件。若不滿足,則需要調整權值及閾值,重復進行上述操作,最終將識別結果輸出。共使用了50 張車牌照片,這些照片全部為自行拍攝,保證訓練的真實性和實際性。在這50 張照片中,其中20 張作為訓練照片,即共訓練字符210張字符圖像,它們包括數字、字母以及漢字。
在收集好訓練字符后,開始BP 網絡初始化和BP 網絡訓練,程序通過函數封裝,返回訓練后的網絡net,在訓練圖中,可以查看到訓練曲線及訓練狀態圖,如圖3 所示。
仿真表明本文的綜合識別率在93.3%以上,其中字符識別率達95.6%,初步達到預期要求,提出的方法對簡單的車牌識別定位是完全有效的。但還需進一步研究提高,對存在污損、灰暗的車牌如何進行有效的定位識別時,可以使用神經網絡對車牌定位區域進行訓練,提升定位的效率和準確率;并用卷積神經網絡代替傳統的BP 神經網絡提高識別率。