朱文軒
[摘? ? ? ? ? ?要]? 近年來(lái)深度學(xué)習(xí)已經(jīng)成為人工智能領(lǐng)域中的熱門話題,將深度學(xué)習(xí)應(yīng)用到傳統(tǒng)車牌識(shí)別系統(tǒng)中,可以解決車牌識(shí)別中常遇到的定位、分割的難點(diǎn),有效提高識(shí)別速度與準(zhǔn)確率。
[關(guān)? ? 鍵? ?詞]? ?Faster R-CNN;深度學(xué)習(xí);車牌識(shí)別系統(tǒng)
[中圖分類號(hào)]? U495? ? ? ? ? ? ? ?[文獻(xiàn)標(biāo)志碼]? A? ? ? ? ? ? ? ? ? ? ? [文章編號(hào)]? 2096-0603(2019)33-0138-02
本文所研究的Faster R-CNN是基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)的模型,它解決了CNN在訓(xùn)練中步驟繁瑣、占用空間大、運(yùn)行速度慢的缺點(diǎn),將邊框回歸加入CNN訓(xùn)練中去,并將目標(biāo)檢測(cè)CNN和產(chǎn)生建議窗口CNN信息共享,提高檢測(cè)的效率。
本文對(duì)車牌識(shí)別系統(tǒng)創(chuàng)新的提出Faster R-CNN結(jié)構(gòu),根據(jù)實(shí)驗(yàn)測(cè)試,最終識(shí)別率達(dá)到97.3%,顯著提高了識(shí)別的精度,具有研究的意義。
一、實(shí)驗(yàn)環(huán)境
本次實(shí)驗(yàn)的軟件環(huán)境在Spyder(Python 3.6)中進(jìn)行,硬件配置16核心,32線程,內(nèi)存大小為16G,GPU為 GTX 660TI 4G。
二、訓(xùn)練集實(shí)驗(yàn)數(shù)據(jù)
本次實(shí)驗(yàn)訓(xùn)練數(shù)據(jù)為0~9十個(gè)數(shù)字以及A-Z 26個(gè)英文字母,和全國(guó)各個(gè)省的簡(jiǎn)寫漢字如圖1所示。
三、參數(shù)討論
在該訓(xùn)練深度網(wǎng)絡(luò)的實(shí)驗(yàn)中,有Bacth_Size,學(xué)習(xí)率,迭代次數(shù),權(quán)值初始值,這個(gè)幾個(gè)關(guān)鍵的參數(shù),由于本文的訓(xùn)練樣本大小為256×256,結(jié)合考慮到計(jì)算機(jī)顯卡大小,設(shè)定Bacth_Size=128,因?yàn)閰?shù)設(shè)置過(guò)大會(huì)導(dǎo)致梯度計(jì)算爆炸,使MSDG算法失效,學(xué)習(xí)率會(huì)影響算法收斂速度,本文設(shè)置為0.005,迭代次數(shù)與Bacth_Size和學(xué)利率有關(guān),權(quán)值初始值參數(shù)采用權(quán)值和等于0的隨機(jī)數(shù)構(gòu)成。
本文中的深度網(wǎng)絡(luò)簡(jiǎn)稱V9。在V9網(wǎng)絡(luò)中沒(méi)有過(guò)多的卷積和池化層,主要是由于數(shù)據(jù)本身的特殊性,特殊在于數(shù)據(jù)本身紋理不算復(fù)雜、易于辨識(shí),沒(méi)必要使用大規(guī)模的卷積層來(lái)提取更深層的特征,因?yàn)檫@樣會(huì)大大增加訓(xùn)練時(shí)間,增加網(wǎng)絡(luò)的復(fù)雜度。該網(wǎng)絡(luò)的詳細(xì)參數(shù)可以在Tensorboard里面進(jìn)行詳細(xì)的可視化展示。
在訓(xùn)練的時(shí)候首先將所有圖像數(shù)據(jù)全部歸一化到128×128×3,為了驗(yàn)證訓(xùn)練的效果同時(shí)隨機(jī)采樣25%的數(shù)據(jù)為驗(yàn)證數(shù)據(jù),在參數(shù)設(shè)置方面,網(wǎng)絡(luò)神經(jīng)元130,圖像塊大小為64,學(xué)習(xí)率為3×10e-5。訓(xùn)練過(guò)程如圖2所示。
訓(xùn)練過(guò)程的示意圖中,上半部分為訓(xùn)練的精度,下半部分為L(zhǎng)oss function 的值,由圖可知,訓(xùn)練的精度震蕩上行,逐漸逼近100%的準(zhǔn)確率,而Loss function 的值震蕩下行,逐漸趨于0,所有該訓(xùn)練過(guò)程達(dá)到了車牌識(shí)別的目的,與傳統(tǒng)的檢測(cè)不同的是,F(xiàn)aster R-CNN使用了RPN網(wǎng)絡(luò),輸入一個(gè)與訓(xùn)練圖像大小一致的測(cè)試圖像,能得到一個(gè)矩形回歸的Region Proposal值,然后依據(jù)Region Proposal中,所有分類的得分對(duì)該RPN網(wǎng)絡(luò)進(jìn)行排序,把前300個(gè)得分高的Region Proposal作為Fast R-CNN 的矩形框輸入進(jìn)行目標(biāo)識(shí)別,未來(lái)提高計(jì)算速度,在該網(wǎng)絡(luò)中采用小規(guī)模的SVM網(wǎng)絡(luò)層或Softmax對(duì)每一塊圖像進(jìn)行分類,分類的目的是得到需要的目標(biāo)區(qū)域,最后再利用矩形框回歸得到最后的檢測(cè)框,對(duì)車牌字符識(shí)別,通過(guò)得到檢查框里面包含的圖像Softmax的輸入得到車牌字符。
四、數(shù)據(jù)測(cè)試
數(shù)據(jù)測(cè)試使用不同角度下的車牌數(shù)據(jù)直接對(duì)車牌進(jìn)行定位以及識(shí)別,該深度網(wǎng)絡(luò)的識(shí)別與傳統(tǒng)圖像處理不同,傳統(tǒng)的圖像處理算法只能識(shí)別同一種底色的車牌,而基于Faster R-CNN的識(shí)別算法可以識(shí)別常見(jiàn)底色的車牌,比如藍(lán)牌與黃牌。
本文基于Python語(yǔ)言,采用Faster R-CNN對(duì)目標(biāo)進(jìn)行訓(xùn)練并自動(dòng)定位捕捉,F(xiàn)aster R-CNN使用Bounding box回歸,再利用GoogLeNet深度網(wǎng)絡(luò)進(jìn)行車牌特征提取,最后通過(guò)SVM進(jìn)行識(shí)別,具體的測(cè)試界面如圖3所示。
五、分析與討論
測(cè)試所使用的車牌庫(kù)為開(kāi)源車牌識(shí)別系統(tǒng)EasyPR中的general_test測(cè)試集,共有256張來(lái)自全國(guó)各地的車牌,車牌庫(kù)的測(cè)試結(jié)果如下表所示。
在General_test測(cè)試集中,共有256張車牌,成功識(shí)別249張,錯(cuò)誤7張,識(shí)別率達(dá)到97.3%,錯(cuò)誤的原因主要有以下兩點(diǎn)。
1.噪點(diǎn)清除不徹底,在監(jiān)控中有部分車牌會(huì)顯示文件名或監(jiān)控時(shí)間,本系統(tǒng)在識(shí)別過(guò)程中有一定幾率把這部分錯(cuò)誤信息進(jìn)行捕捉定位,導(dǎo)致車牌識(shí)別錯(cuò)誤。
2.在對(duì)視頻監(jiān)控中的車牌進(jìn)行定位是,僅能定位特征最明顯的一個(gè)車牌,無(wú)法對(duì)多個(gè)車牌同時(shí)進(jìn)行定位。
本文制定了一個(gè)Faster R-CNN模型,相較于傳統(tǒng)的CNN,本文采用的Faster R-CNN,它克服了CNN在訓(xùn)練中步驟繁瑣、占用空間大、運(yùn)行速度慢的缺點(diǎn),將邊框回歸加入了CNN訓(xùn)練中去,并將目標(biāo)檢測(cè)CNN和產(chǎn)生建議窗口CNN信息共享,提高了檢測(cè)的效率。通過(guò)實(shí)驗(yàn)論證可知,本文所用車牌識(shí)別系統(tǒng)完全是可行的,能夠在實(shí)際應(yīng)用中起到良好的效果。在車牌的研究技術(shù)之中,合理發(fā)現(xiàn)識(shí)別的難點(diǎn),通過(guò)技術(shù)分析,可以十分準(zhǔn)確地識(shí)別車牌號(hào)碼。本文在256個(gè)車牌中成功識(shí)別了249個(gè)車牌,識(shí)別準(zhǔn)確率為97.3%。
編輯 張 慧