孫溢成
隨著現代計算機科學技術的快速發展,智能化的出行方式也漸漸融入到了人們的日常生活中,為了減少駕駛車輛出行的道路壓力,有秩序的監管出現的交通違規問題,自動化的交通管理也成為了當代的主流解決方式。現代智能化交通系統(Intelligent Transportation System)中車輛牌照識別(License Plate Recognition,LPR)技術是計算機領域視覺與模式識別技術在交通行業應用的重要研究課題之一。在1980年美國研究所就很多圖像處理、識別的方法提出了初級理論,但由于當時計算機性能,車輛普及率及自動化監控的實時性等原因阻礙了車牌識別智能化的發展。90年代隨著科技的發展,A.S.Johnson、EunRyung Lee等優秀學者提出了許多在圖像特征提取和字符識別上的經典理論意見。近幾年國內武漢大學的喻曉、張礽婧、李幕龍等學者也提出了十分經典的基于車牌顏色和紋理特征定位車牌的理論,推動了國內在該領域的發展進程。
現代的智能化圖像處理主要利用圖像的多媒體信息作為傳遞媒介,在圖像、文字信息中包含了許多豐富的高層語義識別的理解及表達方式。準確的提取并識別圖片或文字中的字符,對于圖像高層語義的理解和研究起到了至關重要的作用。本文將對圖像中的文字字符進行提取、識別、辨認,將其轉變為人工文字。為了防止樣本字體過于復雜,加重樣本庫的負擔,將以車牌識別為例,車牌的組成由漢字、英文字母(除I和O)、數字3個部分組成。本次識別方法主要利用神經網絡,使用模板匹配法完成,但由于場景圖像種類豐富,拍攝角度復雜以及色差等問題,模板匹配法識別準確率仍然需要進一步完善。
車牌識別系統主要由獲取原圖像、圖像處理、車牌文字定位、字符分割、字符識別五大步驟組成,具體設計步驟如圖1所示:

圖1 車牌系統流程圖
車牌識別系統運行時,當車輛到達指定位置時,會進行信息捕獲,所獲取的車牌圖像大小、方位角度、圖像清晰程度等都要符合事先設定好的要求。獲取原圖像是通過觸發模塊在車輛到達預定區域時,控制攝像機進行快速拍攝獲取車牌的原圖像。生活中常見的觸發裝置有埋設于地下的感應線,優點是成本低、可靠性高,缺點是安裝時需要埋于地面,對于不同型號的車輛會存在一定的定位偏差。之后通過圖像預處理操作,對獲取的原圖像進行處理并調整及修改圖像的某些參數為了使后幾步驟的運作簡便化。最后在經過車牌文字定位、字符分割、字符識別一步一步的將車牌圖像中所需要獲取的信息結果輸出。
在車牌識別系統中,由于存在不同的外界條件因素,對其實際使用會產生不同的影響。其中包括背景復雜程度、車牌污染損壞、拍攝角度、光照條件變化等因素導致車牌形變模糊從而無法識別。
字符識別是車牌系統的關鍵運作模塊,其選擇合適的算法能進一步提升識別效果。文字圖像先通過分割,提取圖像特征對車牌圖像字符位置和符號區域進行定位識別后分割處理,以提高后續識別的質量。識別預處理功能是將上一步分割出來的文字圖像信息進行分析處理,將圖像中可能出現的空缺、污漬遮擋等問題處理掉。還增強圖像中文字符號的大小規格、位置角度等進行處理識別化,方便判斷復雜性。識別判斷是根據所獲得的圖像文字特征,通過識別將識別好的字符進行分類,處理好后完成識別目的。
文字識別原理圖如圖2所示:

圖2 文字識別原理圖
人工神經網絡(Artificial Neural Network,Artificial Neural Network)是一種網絡結構,它基于由大量簡單神經元組件(相互連接的基本組件)組成的自適應非線性動力學系統,模擬人腦中的神經元細胞。
神經網絡的工作階段可以分為學習訓練期和工作識別期,其作用是調節整個神經元之間的連接權重和確定連接權重。在學習訓練期間,已知類別的輸入會隨機輸入到神經網絡中。通過固定學習規則調整和組合更改的每個輸入都可以使PE之間的連接權重和網絡輸出朝正確的方向移動。當學習期到工作期結束時,權重系數保持不變,神經網絡的輸入變為未知向量,輸入信息被神經元多次傳輸,最終在輸出層產生輸出向量,并可以通過根據輸出矢量將對象劃分為特定類別來實現對對象的識別。
本文中對車牌進行字符識別采用BP神經網絡算法,BP(back propagation)神經網絡是一種網絡結構,它基于由大量簡單神經元組件(相互連接的基本組件)組成的自適應非線性動力學系統,模擬人腦中的神經元細胞。BP神經網絡原理是由神經元正、方向傳播之間用過誤差來判斷識別信息并加以分類學習的過程。BP神經網絡由輸入層、輸出層和隱含層組合,相鄰每層之間的神經元是相連的,是誤差傳播算法學習訓練的多層前饋網絡也是應用最多的神經網絡模型之一,圖3就是一個典型的三層BP神經網絡模型:

圖3 典型的三層BP神經網絡模型

本文將介紹通過MATLAB(R2020a)軟件進行仿真,通過上文介紹的車牌識別系統的各項步驟結合BP神經網絡的算法。具體實現步驟如圖4所示:

圖4 車牌識別系統具體實現流程圖
圖像預處理是車牌識別系統的第一步,只有先將所獲原圖像的參數預先處理才會為后續的車牌識別系統提高準確率和可靠性。其中圖像預處理能去除復雜環境背景、噪音干擾,使存儲空間的利用率大大提高。圖像處理則包含了:灰度處理、二值化、腐蝕膨脹、邊緣化等。
3.1.1 灰度處理
在獲取的車牌圖像中,數字圖像分為灰度圖像和彩色圖像,灰度處理技術與RGB彩色圖像向灰度轉換技術基本相似。其中灰度處理技術通過求平均值、最大值和加權平均值三種方式進行處理識別。具體實現如圖5所示。

圖5 原圖像(左)和灰度圖(右)
3.1.2 圖像二值化
圖像二值化是將獲取到圖片轉變為只有黑白兩種顏色。其原理是按照原圖中識別到的車牌區域與背景的灰度值不相同,例如:假設一個灰度值x,當圖像中的某一快區域圖像的亮度值高于所設定的x值時,則該區域圖像的像素值為1,反之,該區域圖像的像素值為0。由此原圖像中的其它顏色就將由白色和黑色代替(所需目標顏色為白色,不需要的背景為黑色)。則關于灰度值x的選擇方式有局部閾值法、動態閾值法、全局閾值法等。本文使用較為常見的二值化處理方法。在MATLAB仿真中車牌圖像通過二值化處理圖像如圖6所示。

圖6 車牌圖像二值化
3.1.3 圖像中值濾波
在車牌的圖像獲取過程中,會受到很多外在因素的影響,其中復雜環境下的噪音為主要影響因素,所以在車牌圖像預處理中首先要解決嘈雜環境下噪音對車牌圖像影響的問題。需要對圖像中低頻信息、高頻信息的各項特征都需要不同方式的處理方法。低通濾波的方式是在過去對車牌圖像的噪音處理中最為常見的。但缺點是圖像中邊緣部分存在一定的高頻信息,若只使用低通濾波處理方式的話,會造成車牌圖像邊緣變得更加模糊從而無法識別。通過中值濾波后圖像在Matlab仿真中如圖7所示:

圖7 車牌圖像中值濾波前(上)后(右)對比圖
由于基于顏色空間的定位法主要是通過顏色來判斷及分割定位車牌各個區域的信息,但現實生活中,受到外界條件的影響會出現比較復雜的背景環境,然而使用基于顏色空間定位法,必然是大大的影響實際的識別效果。
然后基于數學形態與HSV顏色空間結合車牌定位技術是通過形態學運算、刪除干擾因子、圖像邊緣檢測、HSV顏色空間選定區域等多項技術結合識別來完成分割和定位的功能。本文就采用了基于數學形態與HSV顏色空間結合的車牌定位技術,通過將獲取的原圖像灰度化、二值化等圖像預處理,加上邊緣邊框識別檢測、形態學操作等步驟精確的定位車牌。
經過二值化處理后,車牌邊框會因為螺絲釘或者漂浮在空中遮擋車牌的物體出現圖片撕裂,這時候就需要掃描車牌的字符之間的距離來判斷相對應的區域。最后,經過邊框和螺絲釘區域識別的結果,對其進行處理清除最終提取車牌字符。車牌邊框與螺絲釘清除如圖8所示。

圖8 定位剪切后的彩色車牌圖像
在現實中存在很多復雜條件的背景環境,車牌上的字符信息就很容易受到遮擋或者損壞污染。這樣就給車牌識別系統的字符分割運作增加了很多難度,所以本文將通過聚類分析的方式來進行車牌字符在復雜的背景環境下的字符分割,其算法步驟:首先將第一步經過預處理的精準的定位出車輛牌照的區域圖像,然后除掉邊框和螺絲釘,再進行灰度處理、二值化、膨脹腐蝕將圖像優化處理,接著根據面積大小過濾噪音與污點、聚類分析、識別計算每一個聚類的形狀的數據信息(長寬比例、面積大小),最終將所需字符進行分割,總體流程圖如圖9所示。

圖9 字符分割總體流程圖
本次文章將運用多個車牌字符通過放大或縮小的形式來完成統一,其具體操作如下:
1)將車牌字符的原圖像設為f(x,y),圖像的長度為h0,寬為w0,圖像上任意一點為(x0,y0):進過字符圖像統一化的圖像為g(x,y),其長度為h1,寬度為w1,其圖像上任意一點為(x1,y1),兩者之間的公式為:

2)車牌字符圖像統一化后,若圖像上的(x0,y0)為整數,其灰度值與原字符圖像上(x0,y0)的灰度值一一對應;若圖像上(x0,y0)不為整數,該點的像素還要通過插值算法來進行變換。因此,本文字符圖像統一化技術中使用的插值算法為雙線性算法。
3)若使用雙線性算法,圖像統一化后的點(x1,y1)的灰度值計算是通過原字符圖像上(x0,y0)相鄰的4個點取整求取近似值,計算公式如下:

(4)分割出來的字符會存在著大小差距,因此需要進一步的處理,以便提高接下來的字符識別準確度。本文對分割出來的字符進行了歸一化處理,歸一化切割出來的字符圖像的大小為40×20,與模板中字符圖像的大小相匹配。
最終統一化完成字符圖像的大小為40×20,其結果圖如圖10所示。

圖10 字符分割效果圖
字符識別是車輛牌照識別系統中最重要的環節,選擇合理有效的識別方式十分重要。因為在實際拍攝中受到場外復雜環境的影響,車牌識別系統的檢測與識別存在噪音、字體模糊、字符斷裂、拍攝角度傾斜等問題。由于傳統的模板匹配識別技術方法及特征統計匹配識別法容錯率較低,不能很好的識別車牌照,本文采用神經網絡識別方法。
基于神經網絡識別車輛牌照,第一步提取字符的特征,用BP神經網絡進行識別。將導入車牌字符的模板庫通過神經網絡對其學習訓練,經過學習訓練后得到的數據對其識別分割好的字符,進行測試提取結果。本文采用BP神經網絡識別車輛牌照字符流程圖如圖11所示。

圖11 BP神經網絡車牌字符識別流程圖
BP神經網絡的學習方法是利用誤差反方向傳播,通過多次修改網絡權重值的矩陣格式的組合。在針對BP神經網絡對車牌識別進行學習時,需要有相對應的訓練樣本庫。如圖12所示。

圖12 數字0~9、字符A~Z和各省份開頭漢字樣本庫
在進行車牌字符識別前需要先設定各個參數,然后對網絡進行學習訓練,BP神經網絡對于識別數字方面的識別率和高效性較強。識別結果如圖13所示。

圖13 BP神經網絡識別Matlab仿真結果圖
在現實生活中勢必有不同的自然情況及其車輛型號不同、受損不同、復雜的背景等多方面因素的影響,車牌識別系統的識別率就會有所下降從而達不到指定的要求。其中主要因素有:車牌的特性;復雜的外部環境條件。
本文基于BP神經網絡的車輛牌照識別系統設計的學習與研究,分析和實驗了車牌識別系統的關鍵技術并加以應用。其中包含了車牌圖像的圖像預處理技術、字符定位技術、字符的分割技術和字符的識別技術,對其進行分析理解并加以闡述。經過對這些車牌識別技術的學習與了解,進一步提高了車牌識別系統的可靠性、穩定性和高效性,使得車牌識別系統的相關技術得到進一步的實現和應用,對車牌識別智能化能實現自動識別、自動感應做出貢獻。在一定程度上適應較為簡單的需求環境,也希望通過更加嚴謹高效的研究提高汽車管理的正規化、高效化和智能化水平,對今后汽車交通自動化管理的研究前景和推廣應用意義。