張艷, 張宸嘉, 阿力非日, 劉丹
(1.西昌學(xué)院 語言和文化學(xué)院, 四川 西昌 615000; 2.云南電網(wǎng)公司, 云南 昆明 650000;3.西華師范大學(xué) 計算機(jī)學(xué)院, 四川 南充 637000)
車牌識別技術(shù)是目前智能交通系統(tǒng)中的核心技術(shù)之一,識別算法已經(jīng)成為越來越多的研究學(xué)者所研究的熱點,國內(nèi)外對車牌識別研究己達(dá)到較高水平。國外研究開始相對較早,取得了不錯的成就,但國外系統(tǒng)只適合于當(dāng)?shù)剀嚺?,對我國車牌中漢字識別準(zhǔn)確率低。國內(nèi)雖然起步晚,但車牌識別研究也取得了很好的發(fā)展,并且已經(jīng)開發(fā)了許多商用系統(tǒng)。國內(nèi)比較成熟的產(chǎn)品有北京漢王科技有限公司開發(fā)的“漢王眼”車牌識別系統(tǒng)、廈門宸天電子科技有限公司研發(fā)的Supplate系列、深圳吉通電子有限公司研發(fā)的“車牌通”車牌識別產(chǎn)品、亞洲視覺科技有限公司研發(fā)的 VECON-VIS 自動識別系統(tǒng)等。但國內(nèi)車牌識別系統(tǒng)需要近距離對車牌拍照,車牌圖像質(zhì)量要求高,如果車牌本身歪斜、磨損、臟污或者光線干擾等都將影響識別準(zhǔn)確率[1-3]。
早期學(xué)者使用簡單的方差閾值法進(jìn)行車牌二值化處理,這樣做雖然簡單快速,但當(dāng)有車牌本身歪斜、磨損、臟污或者有光線干擾時,該方法的識別效率難以提高。
臟污
基于模板匹配理論[4]提取字符特征作為模板進(jìn)行匹配,有效減少了像素點個數(shù),提高了識別效率,但是模板匹配法對于相似的字符區(qū)分能力差,同時受制于光線和天氣等復(fù)雜情況,在特征數(shù)據(jù)維數(shù)過大時效率較低。
BP神經(jīng)網(wǎng)絡(luò)[5]具有良好的容錯能力、分類能力、并行處理能力和自學(xué)習(xí)能力,但BP神經(jīng)網(wǎng)絡(luò)的性能與初始網(wǎng)絡(luò)權(quán)值、學(xué)習(xí)速率等參數(shù)的合理選擇相關(guān),如果參數(shù)選擇不當(dāng),就會出現(xiàn)學(xué)習(xí)速度慢、局部最優(yōu)和過擬合等缺陷,導(dǎo)致車牌識別錯誤率高。
卷積神經(jīng)網(wǎng)絡(luò)是近年發(fā)展起來,并引起廣泛重視的一種高效識別方法。目前,卷積神經(jīng)網(wǎng)絡(luò)已經(jīng)成為研究熱點之一,特別是在模式分類領(lǐng)域,由于卷積神經(jīng)網(wǎng)絡(luò)避免了對圖像復(fù)雜的前期預(yù)處理,可以直接輸入原始圖像,因而得到了廣泛的應(yīng)用。
由于CNN具有良好的特征提取性能,因此本文將采用CNN識別車牌。對車牌識別,研究者進(jìn)行了許多研究;文獻(xiàn)[6-7]采用深度神經(jīng)網(wǎng)絡(luò)進(jìn)行車牌識別;文獻(xiàn)[8]可視化了CNN學(xué)習(xí)到的特征,并且從這些特征中尋找改進(jìn)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的方法;文獻(xiàn)[9]利用盲分割車牌方式對模糊度較高的車牌進(jìn)行了分割研究;文獻(xiàn)[10]利用分階方式分別對車牌漢字字符識別模型與數(shù)字和字母識別模型做了研究。之后,又有學(xué)者對下述問題進(jìn)行了研究和探討:由于光照不均勻或者其他干擾因素過強(qiáng),容易出現(xiàn)字符分割不準(zhǔn)確的問題;基于現(xiàn)有方法的組合,對神經(jīng)網(wǎng)絡(luò)架構(gòu)和訓(xùn)練方法進(jìn)行了改進(jìn);對受到清晰度和照明條件影響的車牌識別;采用Faster R-CNN算法進(jìn)行車牌定位;采用卷積神經(jīng)網(wǎng)絡(luò)對具有復(fù)雜背景圖像的車牌識別進(jìn)行研究;研究基于深度學(xué)習(xí)的車牌識別系統(tǒng)的魯棒性等。本文針對車牌字符圖像形式多樣,導(dǎo)致收集一個完整的數(shù)據(jù)集異常艱難的角度出發(fā),提出了基于模糊切割的單個局部車牌字符識別對比試驗。實驗結(jié)果表明,不僅識別時間短,而且識別正確率更高。
清晰
卷積神經(jīng)網(wǎng)絡(luò) (CNN,Convolutional Neural Network)是一種深度學(xué)習(xí)架構(gòu),卷積神經(jīng)網(wǎng)絡(luò)能夠得出原始圖像的有效表征,這使得卷積神經(jīng)網(wǎng)絡(luò)能夠直接從原始像素中,經(jīng)過極少的預(yù)處理,識別視覺上的規(guī)律。
卷積神經(jīng)網(wǎng)絡(luò)思想開始于上世紀(jì)60年代,1980年Kunihiko Fukushima 提出了CNN的前身—Neocognitron。1998年LeCun等發(fā)表論文,提出了 LeNet-5模型,確立了CNN的現(xiàn)代結(jié)構(gòu)。作為CNN的早期版本,在手寫字符識別領(lǐng)域取得了突破性進(jìn)展,但是受制于硬件條件低以及數(shù)據(jù)過少等問題,使得LeNet-5模型并不能處理過于復(fù)雜的問題。但之后隨著硬件的不斷升級以及互聯(lián)網(wǎng)爆炸式的增長,卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)也開始越來越容易實現(xiàn)。在2012年的ImageNet競賽上,Hinton以及其學(xué)生Krizhevshy基于CNN提出的AlexNet結(jié)構(gòu)一舉獲得當(dāng)年競賽冠軍。這是一個網(wǎng)絡(luò)層數(shù)達(dá)5層,約65萬個神經(jīng)元的龐大的神經(jīng)網(wǎng)絡(luò),在視覺處理上獲得了非常好的效果,達(dá)到了84.7%的分類準(zhǔn)確率。至此,CNN獲得了社會上許多人的關(guān)注,越來越多的人開始研究CNN。隨后,研究人員不斷完善CNN結(jié)構(gòu),提出了基于候選區(qū)域的深度學(xué)習(xí)目標(biāo)檢測算法R-CNN(Regions with CNN),能夠進(jìn)行語義分割的全卷積網(wǎng)絡(luò)FCN(Fully Convolutional Network),還有許多表現(xiàn)優(yōu)秀的網(wǎng)絡(luò)結(jié)構(gòu)如VGGNet、GoogleNet、ResNet等。龐大的神經(jīng)網(wǎng)絡(luò),要耗費許多時間去訓(xùn)練參數(shù),而遷移學(xué)習(xí)概念的提出,使得CNN的應(yīng)用范圍獲得進(jìn)一步的提升。目前,CNN在目標(biāo)檢測、圖像識別分類、文字識別等方面都獲得了不俗的表現(xiàn),成為了當(dāng)下火熱的研究熱點之一。
實現(xiàn)基于CNN模型的端到端整體識別與單個模糊切割局部字符識別的對比研究具體方案流程圖,如圖1所示。
圖1 基于CNN端到端的多字符整體識別與單個模糊切割局部字符識別的對比研究實驗
步驟1:制作實驗所需車牌圖片(完整的和模糊切割保留字符局部信息的),樣例如圖2所示。
(b) 保留局部關(guān)聯(lián)信息分割后的車牌
步驟2:構(gòu)建相應(yīng)的CNN模型。針對不同實驗的車牌圖片特點,構(gòu)建CNN模型,設(shè)置相關(guān)參數(shù)。
步驟3:訓(xùn)練模型。使用訓(xùn)練集訓(xùn)練構(gòu)建的CNN模型,并保存訓(xùn)練好的模型。
步驟4: 測試模型準(zhǔn)確率、識別時間。使用測試集測試訓(xùn)練好的兩種網(wǎng)絡(luò)模型的性能。
實現(xiàn)基于CNN模型的端到端圖像整體識別與部分模糊切割識別的對比研究,本文以完整的車牌字符和模糊切割后車牌識別為例,對比分析兩者的準(zhǔn)確率、識別時間等差異,優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)。實驗的主要內(nèi)容如下。
2.1.1 訓(xùn)練和測試數(shù)據(jù)集準(zhǔn)備
使用OpenCV和標(biāo)準(zhǔn)車牌的字體來隨機(jī)制作有污跡、噪聲、畸變的車牌,包括不同環(huán)境、不同傾斜程度,不同模糊程度的車牌圖片,同時生成車牌標(biāo)簽;然后將對比試驗的車牌按字符區(qū)域進(jìn)行縮放切割,此外無需再做其他任何預(yù)處理。
2.1.2 構(gòu)建CNN模型
根據(jù)兩種車牌圖片的特點,構(gòu)建CNN模型訓(xùn)練整體車牌圖像與部分模糊切割后的車牌圖像,設(shè)計相應(yīng)的網(wǎng)絡(luò)結(jié)構(gòu),設(shè)置網(wǎng)絡(luò)相關(guān)參數(shù),訓(xùn)練網(wǎng)絡(luò),保存訓(xùn)練好的模型,本文所用的CNN網(wǎng)絡(luò)結(jié)構(gòu)如圖3、圖4所示。
圖3 完整車牌識別網(wǎng)絡(luò)
圖4 單個車牌識別網(wǎng)絡(luò)
2.1.3 測試網(wǎng)絡(luò)性能
測試網(wǎng)絡(luò)性能并對比研究兩種訓(xùn)練方式的準(zhǔn)確率和識別時間。使用測試集測試訓(xùn)練好的兩種網(wǎng)絡(luò)模型,記錄兩者的準(zhǔn)確率和識別時間。
本文所使用的實驗環(huán)境如下。
硬件平臺:處理器Intel(R)Xeon(R) CPU E5-2630 v2,16 GB內(nèi)存,1 TB硬盤,8 GB獨顯GPU NVIDIA Quadro K4000;操作系統(tǒng):windows 10;深度學(xué)習(xí)技術(shù)開發(fā)平臺:PyCharm。
語言工具:Python3.5+Mxnet。
(1) 實驗數(shù)據(jù)準(zhǔn)備,包括測試集和訓(xùn)練集
采用圖像融合技術(shù),將標(biāo)準(zhǔn)車牌背景、標(biāo)準(zhǔn)車牌字符、各種車身背景融合在一起,同時加入污跡、噪聲、不同光線、畸變圖像處理,模擬得到各種樣式的車牌。構(gòu)建包含52萬張完整車牌圖像的數(shù)據(jù)集,其中訓(xùn)練集包含50萬張,測試集包含2萬張。構(gòu)建包含70萬張(由10萬張完整車牌經(jīng)模糊切割得到)單個字符圖像的數(shù)據(jù)集,其中訓(xùn)練集63萬張(由9萬張完整車牌經(jīng)模糊切割得到),測試集7萬張(由1萬張完整車牌切割得到)。
(2) 基于CNN的端到端多字符整體識別
以中國車牌字符識別為例,由于我國車牌有7個固定字符,故將7個字符組成的車牌看作一個多字符組成的整體圖像,即看作帶有7個有序標(biāo)簽的圖像識別問題。在構(gòu)建CNN網(wǎng)絡(luò)模型時,設(shè)計7個全連接層,讓7個位置的車牌字符同時學(xué)習(xí),采用多標(biāo)簽分類的方法直接輸出多個標(biāo)簽,即直接輸出整張車牌的字符,準(zhǔn)確率計算需要7個字符全對才算此車牌圖像識別正確。
(3) 基于CNN的端到端單個字符識別
將車牌圖像按字符所在區(qū)域進(jìn)行模糊切割,保留單個字符完整信息和字符周圍局部關(guān)聯(lián)信息,得到7個包含單個字符的局部圖像。設(shè)計構(gòu)建識別單個字符的CNN網(wǎng)絡(luò)模型,將7個局部圖像分別輸入CNN網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練和識別。一張車牌7個字符識別正確才算成功識別車牌。
識別準(zhǔn)確率和識別時間對比如表1所示。
表1 識別準(zhǔn)確率和識別時間對比
傳統(tǒng)方法將單個字符準(zhǔn)確切割后再進(jìn)行識別,按傳統(tǒng)思想這樣準(zhǔn)確切割后字符更容易識別。目前我們的實驗結(jié)果表明,單個字符準(zhǔn)確切割后比整體識別準(zhǔn)確率更高。我國車牌由7位字符組成,包含代表31個省份的漢字,24個大寫英文字母和10個數(shù)字(共65個字符),純字符的組合形式高達(dá)765種,再加上車牌顏色、天氣情況、復(fù)雜背景、噪聲點、扭曲旋轉(zhuǎn)、遮擋等干擾因素,導(dǎo)致收集一個包含所有樣式的車牌圖像數(shù)據(jù)庫變得異常困難。在單個識別時嘗試采用模糊切割字符方式,每個字符圖像除了字符本身外,還包括周圍的圖像信息,這種方式可以提供更多的相同字符圖像的樣式,利于網(wǎng)絡(luò)訓(xùn)練。
本文在充分分析車牌字符特征的基礎(chǔ)上,針對字母和數(shù)字字符所組成的完整車牌和經(jīng)模糊切割后的單個字符車牌基于CNN分別進(jìn)行了識別實驗,對比分析多字符整體識別與模糊切割后保留局部信息的單字符識別的網(wǎng)絡(luò)結(jié)構(gòu)和識別性能,找出影響識別率的因素并優(yōu)化網(wǎng)絡(luò),為進(jìn)一步提高車牌識別率提供可行的改進(jìn)措施,最終獲得最優(yōu)的車牌識別方法。實驗表明,保留局部信息關(guān)聯(lián)的單個字符切割后比整體車牌字符的識別準(zhǔn)確率更高,識別時間短。由于所研究的字符數(shù)量有限,因此無法驗證保留局部信息的單個字符是否適合所有情形,比如一段連續(xù)的文字,今后將繼續(xù)收集其他方面的字符圖像對其進(jìn)行研究識別。