沈文楓,張建蕾,周丁倩,陳圣波,邱 峰(上海大學計算機工程與科學學院,上海200444)
大數(shù)據(jù)時代的車牌漢字識別
沈文楓,張建蕾,周丁倩,陳圣波,邱峰
(上海大學計算機工程與科學學院,上海200444)
在大數(shù)據(jù)時代,交通信息成為網(wǎng)絡(luò)數(shù)據(jù)量最大的數(shù)據(jù)來源之一,智能交通成為必然需求.車牌識別是智能交通的基礎(chǔ),可廣泛應(yīng)用于車庫管理、交通監(jiān)控等工程中,然而識別的準確率還有待加強,已有算法對于字母、數(shù)字的識別準確率都非常高,而對于中國特有的漢字識別卻效果不佳.提出用受限玻爾茲曼機組成的深信度網(wǎng)絡(luò)算法來識別車牌字符,大大提升了漢字識別的準確率,使準確率達到99.44%.
車牌漢字識別;深信度網(wǎng)絡(luò);受限玻爾茲曼機;深度學習
在大數(shù)據(jù)時代,交通信息成為網(wǎng)絡(luò)數(shù)據(jù)量最大的數(shù)據(jù)來源之一,每天每個地市的每個十字路口要通過數(shù)以萬計的車輛,包含各種車型和牌照.隨著科技和經(jīng)濟的高速發(fā)展,購置汽車的人與日俱增,然而日益增多的車輛在給人們的出行帶來便捷的同時,也使得交通問題日益突出,因此發(fā)展智能交通系統(tǒng)(intelligent transportation system,ITS)成為迫切需要.對于交通堵塞和交通事故等問題,借助智能交通系統(tǒng)[1]能夠?qū)崿F(xiàn)交通的智能自動化管理,進而實現(xiàn)對交通環(huán)境的全面有效的監(jiān)管,幫助緩解交通堵塞、交通安全等方面的問題.
車輛牌照識別(license plate recognition,LPR)技術(shù)[2]作為ITS的基礎(chǔ),已廣泛應(yīng)用于違章車輛稽查、城市監(jiān)控系統(tǒng)、停車場、高速公路收費站等需要認證車牌的相關(guān)場合.該技術(shù)運用圖像分割和識別理論,分析處理汽車牌照號碼圖案以確定其位置,并通過進一步提取和識別獲取牌照字符信息,為科學有效地識別和管理車輛發(fā)揮積極作用,其重要性不言而喻.
車牌字符[3]包含漢字、字母和數(shù)字,相比字母和數(shù)字,漢字筆畫多并且結(jié)構(gòu)復雜,因此漢字識別是車牌字符識別的難點和重點.近幾年,國內(nèi)研究學者提出了多種車牌字符識別方法,但這些方法對字母和數(shù)字的識別率高于漢字.因此,研究車牌識別中的漢字識別方法,提高車牌漢字的識別率具有重要的理論意義和應(yīng)用價值.
從車牌中提取的漢字易受車牌提取過程中外界環(huán)境以及車牌本身完整性及清潔程度的影響,因此會存在模糊、污損及變形等問題,增加了識別難度.本文針對這些問題,對車牌中的漢字識別方法展開探討,主要貢獻如下.
(1)車牌漢字預處理:從車牌中切割出來的漢字圖像中,漢字所占比例的大小和所處位置均不相同,因此需要對圖像進行大小歸一化和位置歸一化處理.將漢字圖像統(tǒng)一調(diào)整為維度28×28,并保證漢字的大小和位置相同.
(2)漢字特征一維化:按維度8×28將漢字一維化為一個784維的特征向量,也就是本研究所使用的深度學習網(wǎng)絡(luò)的輸入層神經(jīng)元個數(shù).
(3)深度學習識別器設(shè)計:由于深度學習具有較強的抗干擾能力、容錯能力和自學習能力,因此嘗試利用深信度網(wǎng)絡(luò)(deep belief network,DBN)對漢字的特征向量進行訓練,而后采用訓練好的模型進行漢字識別.與神經(jīng)網(wǎng)絡(luò)方法相比,深度學習方法具有更高的識別率和更強的抗干擾能力.
自動車牌識別是交通領(lǐng)域中的一大應(yīng)用.雖然車牌定位技術(shù)逐漸成熟,車牌上的字符識別準確率卻遠未滿足要求.車牌字符識別的難點之一就是字符的特征提取,而國外的車牌都是由字母與數(shù)字組成,筆畫簡單,經(jīng)過圖像處理后的形變量較小,易識別.Wu等[4]利用BP神經(jīng)網(wǎng)絡(luò)算法識別車牌,字母識別準確率達到99.25%,數(shù)字識別準確率達到99.3%.Cheng等[5]利用一種混合算法對中國車牌中的漢字進行識別,準確率達到了95.96%.中國的車牌識別準確率關(guān)鍵在于對字符的識別.而在車牌字符識別中,與字母、數(shù)字識別相比,漢字的識別率是最低的,所以提高車牌中漢字的識別準確率,對于車牌識別準確率的提高將有很大的提升.由于漢字的筆畫較多,筆畫間的空隙較小,經(jīng)過處理后會發(fā)生形變,如少筆畫、多筆畫、斷筆、一塊黑、一塊白的情況,如圖1所示的贛、津、京、魯(1)、魯(2)、閩、蘇、皖、豫、粵,這使得車牌漢字識別的難度大大增加.最常用的直方圖特征算法[6]在提取特征時,易出現(xiàn)兩個紋理完全不一樣的圖被提取后其特征值一樣的問題(見圖2).
圖1 攝像頭拍攝的車牌漢字樣本Fig.1 Camera samples of license plate character
圖2 直方圖特征算法Fig.2 Histogram feature algorithm
漢字的特征比較復雜,很多字的直方圖特征差異不大,而有些相同字的樣本的直方圖差異卻特別大,如圖1(d)和(e).直方圖特征提取方法在識別數(shù)字和字母時,由于筆畫少、紋理容易辨別,所以準確率較高;但在識別漢字時,由于漢字的結(jié)構(gòu)復雜,筆畫多且密集,在將拍攝的圖片處理成漢字二值圖時,已經(jīng)出現(xiàn)缺筆畫或黑白不均的現(xiàn)象,使得不同漢字的直方圖特征可能相同,相同漢字的直方圖特征卻可能不同,說明該算法的魯棒性較差.
在很多情況下,尺度不變特征轉(zhuǎn)換(scale-invariant feature transform,SIFT)特征提取算法[7]被用來定位車牌,但該算法在車牌特征比較明顯簡單(矩形,有七個字符等特征)的情況下,識別效果比較理想.而對于漢字識別來說,由于拍攝的車牌漢字經(jīng)處理后與正規(guī)車牌漢字差異較大,所以識別效果并不理想.
神經(jīng)網(wǎng)絡(luò)分類算法[4,8]的分類效果較好,但依賴于有效的特征提取方法,如果直接用圖片像素直接進行分類,則訓練參數(shù)會非常大,訓練時間與訓練難度會大大增加,且容易出現(xiàn)分類錯誤或者過擬合情況.另一方面,由于車牌的拍攝角度、字符分割等的情況,每個字符圖像中字符的位置和傾斜程度不一,所以同一個漢字的不同樣本的像素值分布差異較大,造成神經(jīng)網(wǎng)絡(luò)算法對于拍攝車牌的漢字的識別準確率難以提升.因此神經(jīng)網(wǎng)絡(luò)算法不太適合用作車牌的漢字識別.
Google的開源軟件Tessact[9],是光學字符識別(optical character recognition,OCR)領(lǐng)域中準確率非常高的一款識別軟件,對于打印的圖片中字符(包括漢字)的識別率可以達到99.99%以上.但是對于手寫的字或者攝像頭拍攝的車牌的漢字識別,其測試準確率非常低,甚至不到80%.所以對于非規(guī)則字體,Tessact的識別準確率大幅下降.
綜上所述,各種算法都存在一定的缺陷,使得對于中國車牌特有的漢字的識別率較低.本研究采用的方法是深度學習中的深信度網(wǎng)絡(luò)算法,它由3個受限玻爾茲曼機和一個邏輯回歸網(wǎng)絡(luò)構(gòu)成.
深度學習[10-11]是模仿人腦進行分析學習的神經(jīng)網(wǎng)絡(luò),試圖模擬人腦的行為特征,對數(shù)據(jù)進行分析與解釋.深度學習網(wǎng)絡(luò)通常含有多個隱藏層,其排列分布與人腦相類似,通過對較低層特征的組合、分析、篩選,形成較高層的特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示.
深信度網(wǎng)絡(luò)[12-13]是深度學習網(wǎng)絡(luò)的一種,通常由數(shù)個受限彼爾茲曼機(restricted Boltzmann machine,RBM)層以及一個全連接的分類器組成.一方面,深信度網(wǎng)絡(luò)的權(quán)值共享網(wǎng)絡(luò)結(jié)構(gòu)使之更類似于生物神經(jīng)網(wǎng)絡(luò),具有更低的模型復雜度與更少的權(quán)值,從而可以直接輸入目標圖像,省去了繁瑣的特征提取過程;另一方面,深信度網(wǎng)絡(luò)將圖像的局部作為最低層輸入,從而獲取輸入圖像最為基礎(chǔ)的特征,所以對目標物體或圖像的形變、旋轉(zhuǎn)具有較好的抵抗性.與傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)相比,深信度網(wǎng)絡(luò)具有訓練參數(shù)少、可直接輸入二維圖像等優(yōu)點.受限玻爾茲曼機是深信度網(wǎng)絡(luò)的主要構(gòu)成部分,通過逐層特征提取得到所需結(jié)果.
2.1受限玻爾茲曼機
受限玻爾茲曼機[14-15]是由Hinton和Sejnowski于1986年提出的一種生成式隨機神經(jīng)網(wǎng)絡(luò)(generative stochastic neural network),該網(wǎng)絡(luò)由可見層和隱藏層構(gòu)成,各層的變量都是二值變量,即其狀態(tài)?。?,1}.整個網(wǎng)絡(luò)是一個二部圖,只有可見單元和隱藏單元之間才會存在邊,而可見單元之間以及隱藏單元之間都不會有邊連接(見圖3).
圖3 受限玻爾茲曼機原型Fig.3 Prototype of RBM
由圖3可見,RBM含有由9個可見單元構(gòu)成的向量V={v1,v2,···,v9}和由3個隱藏單元構(gòu)成的向量H={h1,h2,h3}.每個邊都有權(quán)值,共9×3個邊,用W矩陣表示,就是可見單元和隱藏單元之間的邊的權(quán)重.
RBM是一種基于能量(energy-based)的模型,其可見變量v和隱藏變量h的聯(lián)合配置(joint configuration)能量為
式中,θ為RBM的參數(shù){W,a,b},W為可見單元和隱藏單元之間的邊的權(quán)重,a和b分別為隱藏單元和可見單元的偏置(bias).
由v和h的聯(lián)合配置能量可以得到v和h的聯(lián)合概率為
式中,Z(θ)為歸一化因子,其函數(shù)原型為
通過最大化觀測數(shù)據(jù)的似然函數(shù)Pθ(v),可以使得RBM收斂,可由式(2)求Pθ(v,h)對h的邊緣分布得到
最大化Pθ(v)后即可得到RBM的參數(shù).最大化Pθ(v)等同于最大化logPθ(v)=L(θ),即式中,N為RBM個數(shù).這樣,通過訓練求得RBM的參數(shù)就可得到隱藏層,即特征提取層.
2.2深信度網(wǎng)絡(luò)
深信度網(wǎng)絡(luò)[15]是一個概率生成模型(見圖4),與傳統(tǒng)的判別模型的神經(jīng)網(wǎng)絡(luò)相比,生成模型是建立一個觀察數(shù)據(jù)和標簽之間的聯(lián)合分布,對已知標簽求觀察數(shù)據(jù)的概率PO/L和已知觀察數(shù)據(jù)求標簽的概率PL/O都作了評估.而深信度網(wǎng)絡(luò)的判別模型僅僅評估了后者,也就是PL/O.
基于淺度回收模式的發(fā)電廠接入價定價機制//叢野,張粒子,高磊,車文燕,陸繼東,唐虎//(11):163
圖4 深信度網(wǎng)絡(luò)構(gòu)成部件Fig.4 Deep belief network components
能量公式P(v,h1,h2,h3)=P(v|h1)P(h1|h2)P(h2|h3)由3個受限玻爾茲曼機層組成,這些網(wǎng)絡(luò)被“限制”為一個可視層和一個隱藏層,層間存在連接,但層內(nèi)的單元間不存在連接.隱藏單元被訓練去捕捉在可視層表現(xiàn)出來的高階數(shù)據(jù)的相關(guān)性.
初始通過一個非監(jiān)督貪婪逐層方法預訓練獲得生成模型的權(quán)值,非監(jiān)督貪婪逐層方法被Hinton等[13]證明是有效的,并被稱為對比分歧(contrastive divergence).在這個訓練階段,在可視層會產(chǎn)生向量V,通過V將神經(jīng)元的值傳遞到隱藏層.反之,可視層的輸入會被隨機選擇,以嘗試重構(gòu)原始輸入信號.新的可視的神經(jīng)元激活單元將前向傳遞重構(gòu)隱藏層激活單元,獲得向量H.這些后退和前進的步驟就是Gibbs采樣[16],而隱藏層激活單元和可視層輸入之間的相關(guān)性差別就將作為權(quán)值更新的主要依據(jù).
經(jīng)預訓練后,DBN可利用帶標簽數(shù)據(jù)通過邏輯回歸算法對判別性能作出調(diào)整.這里,一個標簽集將被附加到頂層,通過自下向上學習到的識別權(quán)值獲得一個網(wǎng)絡(luò)分類面.該性能比單純的邏輯回歸算法訓練的網(wǎng)絡(luò)更好.這可以很直觀地解釋為DBNs的邏輯回歸算法只需要對權(quán)值參數(shù)空間進行局部搜索,這比前向神經(jīng)網(wǎng)絡(luò)的訓練更快,而且收斂的時間也更短.
圖5為深信度網(wǎng)絡(luò)架構(gòu),可見輸入層的神經(jīng)元的值為一維化后的漢字二值圖向量,通過邊向上層傳播,相鄰兩層構(gòu)成RBM,通過逐個RBM的訓練后得到整個深信度網(wǎng)絡(luò)模型.
實驗數(shù)據(jù)來自攝像頭拍攝的車牌.采集大量車牌后,從中提取漢字,形成訓練集與測試集,數(shù)據(jù)來源過程如圖6所示.
圖5 深信度網(wǎng)絡(luò)架構(gòu)Fig.5 Deep belief network architecture
圖6 拍攝車牌的漢字提取過程Fig.6 Chinese character extraction process for shooting license plate
將拍攝到的車牌經(jīng)上述處理后,每個車牌可得到一個漢字樣本,共收集到5 000張車牌圖片,其中樣本數(shù)比較少的車牌漢字樣本(“川”、“贛”等)有十幾個,樣本數(shù)比較多的車牌漢字樣本(“京”、“滬”)有數(shù)百個,構(gòu)成可訓練和可測試的數(shù)據(jù)集.在中國,車牌漢字樣本種類有“軍北南廣沈成蘭濟空海京津冀晉蒙遼吉黑滬蘇浙皖閩贛魯豫鄂湘粵桂玉瓊川貴云藏陜甘青寧新”共41個漢字.個別的“空”、“?!钡葷h字由于數(shù)量太少而不作訓練,其他共34個字經(jīng)訓練處理后進行測試,驗證識別準確率.
將所得樣本重置大小為維度8×28,再進行一維化后生成一個784維向量,構(gòu)成輸入層,共784個神經(jīng)元.此時,輸入層和隱藏層1構(gòu)成一個RBM1,輸入層是RBM1的可視層,隱藏層1 為RBM1的隱藏層.同理,RBM1的隱藏層為RBM2的可視層,隱藏層2為RBM2的隱藏層(見圖7).
輸出層為34個神經(jīng)元,每個神經(jīng)元的值為0或1,且只有一個神經(jīng)元的值為1,標注為1的神經(jīng)元表示輸出結(jié)果為該類別.若正確,則分類成功;若錯誤,則分類失敗.
本研究提出的DBN算法基于Python的Theano科學計算庫,實驗環(huán)境是4核Intel(R)Core(TM)i5-4460 CPU@3.20 GHz,8 GB內(nèi)存DDR3.訓練過程如下:首先,通過預訓練對網(wǎng)絡(luò)參數(shù)進行初始化賦值;然后,進行調(diào)優(yōu),逐層訓練生成網(wǎng)絡(luò)的各個參數(shù),達到可以分類的功能.網(wǎng)絡(luò)由1 000×1 000×1 000的隱藏神經(jīng)元組成,有Softmax層、RBM層和輸入輸出層.預訓練的學習率為0.01,調(diào)優(yōu)的學習率為0.10.測試車牌字符的漢字準確率達到了99.44%.
圖7 深信度網(wǎng)絡(luò)實驗結(jié)構(gòu)Fig.7 Experimental structure of DBN
圖8中縱坐標為輸出結(jié)果與標簽的平方差的和,所以其值越小越好;橫坐標為訓練次數(shù),可見隨著訓練次數(shù)的增加,深信度網(wǎng)絡(luò)的代價函數(shù)值減小.通過預訓練來減小代價函數(shù)值,將使得調(diào)優(yōu)收斂快速且準確.在對網(wǎng)絡(luò)模型進行參數(shù)調(diào)優(yōu)訓練時,訓練次數(shù)與錯誤識別率的變化如圖9所示.
圖8 預訓練代價函數(shù)值變化Fig.8 Changes of Pre training cost function value with training
在用深信度網(wǎng)絡(luò)對車牌漢字進行訓練時,隨著深信度網(wǎng)絡(luò)訓練次數(shù)的增加,錯誤識別率逐漸減小,深信度網(wǎng)絡(luò)的識別準確率逐漸收斂于99.44%.在車牌漢字識別準確率方面,深信度網(wǎng)絡(luò)算法與神經(jīng)網(wǎng)絡(luò)算法和Tesseract算法的對比結(jié)果如圖10所示,訓練時間對比情況如表1所示.
圖9 錯誤識別率隨訓練次數(shù)的變化Fig.9 Change of error recognition rate with training
圖10 DBN、神經(jīng)網(wǎng)絡(luò)、Tesseract三種算法的識別準確率Fig.10 Accuracy of DBN,Neural Network and Tesseract
表1 三種算法的訓練時間對比Table 1 Training time comparison of three algorithms
可以看出,在保證識別準確率的情況下,深信度網(wǎng)絡(luò)算法所消耗的訓練時間比神經(jīng)網(wǎng)絡(luò)算法少得多.與神經(jīng)網(wǎng)絡(luò)算法和Tesseract算法相比,深信度網(wǎng)絡(luò)算法的車牌漢字識別準確率要高得多.
深度學習在人工智能領(lǐng)域的應(yīng)用已逐漸展開,在快速發(fā)展的信息時代,智能家居、智能交通等的發(fā)展也跟上了時代的腳步.車牌識別技術(shù)的發(fā)展為其在今后的車輛跟蹤、交通監(jiān)控等領(lǐng)域的應(yīng)用打下了良好的基礎(chǔ).
為了迎接大數(shù)據(jù)時代的到來,交通領(lǐng)域作為大數(shù)據(jù)的基礎(chǔ)部分,與其相關(guān)的大數(shù)據(jù)技術(shù)的研發(fā)成為重中之重.本研究分析了一些特征提取算法的優(yōu)缺點,用RBM構(gòu)建了DBN算法,通過在車牌漢字識別方面的應(yīng)用,驗證了所提出算法的準確率可達99.44%,比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)算法的準確率高得多,而且訓練復雜度也大幅降低.
雖然本研究提出的深信度網(wǎng)絡(luò)車牌漢字識別方法有較高的識別率,但僅限于PC機上的實驗.對于車牌漢字這類少量種類的訓練,完全可以將算法移植到樹莓派等小型處理機上.下一步工作將繼續(xù)改進算法,使算法準確率得到進一步提升的同時,加快訓練速度和識別速度,這樣有助于將算法移植到便捷式終端,使得智能車庫、智能交通成為現(xiàn)實.
本研究為2015年度上海大學電影學高峰學科成果.
[1]王笑京,沈鴻飛,汪林.中國智能交通系統(tǒng)發(fā)展戰(zhàn)略研究[J].交通運輸系統(tǒng)工程與信息,2006(4):9-12.
[2]吳佳.車輛牌照識別系統(tǒng)的設(shè)計與實現(xiàn)[D].北京:北京交通大學,2015.
[3]中華人民共和國公安部.GA36—2014中華人民共和國公共安全行業(yè)標準:中華人民共和國機動車號牌[S].北京:中國標準出版社,2014.
[4]WU F,WANG Y G,HOU X W.License plate character recognition based on framelet[C]// International Conference on Wavelet Analysis and Pattern Recognition.2007:673-676.
[5]CHENG R,BAI Y P.A novel approach for license plate slant correction,character segmentation and Chinese character recognition[J].International Journal of Signal Processing Image Processing and Pattern Recognition,2014,7(1):353-364.
[6]汪啟偉.圖像直方圖特征及其應(yīng)用研究[D].合肥:中國科學技術(shù)大學,2014.
[7]藺海峰,馬宇峰,宋濤.基于SIFT特征目標跟蹤算法研究[J].自動化學報,2010,36(8):1204-1208.
[8]CIRESAN D,MEIER U,MASCI J,et al.A committee of neural networks for traffic sign classification[C]//International Joint Conference on Neural Networks.2011:1918-1921.
[9]Google Tessact[EB/OL].[2015-10-19].http://sourceforge.net/projects/tesseract-ocr/.
[10]BENGIOY,COURVILLEA,VINCENTP.Representationlearning: areviewandnew perspectives[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2013,35(8):1798-1828.
[11]BENGIO Y.Learning deep architectures for AI[M]//JORDAN M.Foundations and trends in machine learning.Boston:Now Publishers Inc,2009:1-127.
[12]HINTON G E,OSINDERO S,TEH Y W.A fast learning algorithm for deep belief nets[J].Neural Computation,2006,18(7):1527-1554.
[13]HINTON G E.Deep belief networks[J].Scholarpedia,2009,4(5):5947.
[14]FISCHER A,IGEL C.Training restricted Boltzmann machines:an introduction[J].Pattern Recognition,2014,47(1):25-39.
[15]LE R N,BENGIO Y.Representational power of restricted Boltzmann machines and deep belief networks[J].Neural Computation,2008,20(6):1631-1649.
[16]劉忠,茆詩松.分組數(shù)據(jù)的Bayes分析——Gibbs抽樣方法[J].應(yīng)用概率統(tǒng)計,1997(2):211-216.
Recognition of Chinese characters on license plates based on big data
SHEN Wenfeng,ZHANG Jianlei,ZHOU Dingqian,CHEN Shengbo,QIU Feng
(School of Computer Engineering and Science,Shanghai University,Shanghai 200444,China)
Today,traffic provides sources of huge scale data sets on the network,calling for the development of intelligent traffic.The license plate recognition(LPR)techniques are an important basis of intelligent traffic,and widely applied in applications such as garage management and traffic monitoring.However,the current LPR algorithms are imperfect in terms of recognition accuracy.Although working well in recognizing English letters and digits,they are unsatisfactory in recognizing Chinese characters.This paper proposes a license plate recognition algorithm using a deep belief network(DBN)algorithm consisting of restricted Boltzmann machines(RBM).It greatly improves the quality of Chinese character recognition with accuracy rate up to 99.44%.
license plate of Chinese character recognition;deep belief network;restricted Boltzmann machine;deep learning
TP 391.4
A
1007-2861(2016)01-0088-09
10.3969/j.issn.1007-2861.2015.04.019
2015-11-30
上海市科委資助項目(14DZ2261200)
沈文楓(1968—),男,副研究員,博士,研究方向為并行計算、高性能計算、心電仿真計算. E-mail:wfshen@mail.shu.edu.cn