《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于自適應差分進化極限學習機的車牌識別算法
基于自適應差分進化極限學習機的車牌識別算法
2017年電子技術應用第1期
文 武1,,2,,喬龍輝1,何 鵬1
1.重慶郵電大學,,重慶400065,;2.重慶信科設計有限公司,重慶400065
摘要: 針對目前車牌識別算法中存在的模型訓練慢,、字符識別準確率低等問題,,研究了一種基于自適應差分進化極限學習機的車牌識別算法。綜合利用邊緣檢測和顏色定位的優(yōu)點來檢測車牌區(qū)域,,然后用改進后的垂直投影法對車牌區(qū)域進行分割,,最后將自適應差分進化極限學習機用于字符識別。研究結果表明,,所提出算法具有訓練速度快,、字符識別率高等優(yōu)點,可以應用于復雜的交通場景,。
中圖分類號: TP391
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.01.035
中文引用格式: 文武,,喬龍輝,何鵬. 基于自適應差分進化極限學習機的車牌識別算法[J].電子技術應用,,2017,,43(1):133-136,140.
英文引用格式: Wen Wu,,Qiao Longhui,,He Peng. License plate recognition based on self-adaptive evolutionary extreme learning machine[J].Application of Electronic Technique,2017,,43(1):133-136,,140.
License plate recognition based on self-adaptive evolutionary extreme learning machine
Wen Wu1,2,,Qiao Longhui1,,He Peng1
1.Chongqing University of Posts and Telecommunications,Chongqing 400065,,China,; 2.Chongqing Information Technology Designing Co.,Ltd.,,Chongqing 400065,,China
Abstract: Aiming at the problems of current license plate recognition algorithm, such as slow training speed, low recognition rate, the vehicle license plate recognition algorithm based on Self-adaptive Evolutionary Extreme Learning Machine(SaE-ELM) is studied. First, the advantages of edge detection and color positioning are used to detect the license plate region. Then improved vertical projection is applied for character segmentation. Finally, Self-adaptive Evolutionary Extreme Learning Machine is used for character recognition. Experimental results demonstrate that proposed algorithm has the advantages of high identification rate, fast speed, and good robustness to the complex traffic environment.
Key words : license plate location;character segmentation,;vertical projection,;character recognition,;adaptive differential evolution

0 引言

    作為智能交通系統(tǒng)的重要組成部分,車牌識別系統(tǒng)常用來監(jiān)視交通狀況,、監(jiān)督車輛行為,,還可以用于停車場出入管理。雖然過去十年車牌識別技術取得了很大的成就,,并在很多實際場合中得以應用,,但從復雜場景的圖像中識別車牌仍然是一個艱巨的任務[1]

    車牌識別一般由三部分組成:車牌定位,、字符分割字符識別,。車牌定位有兩種主要的實現(xiàn)方法:一種是基于車牌區(qū)域顏色信息的,根據(jù)車牌區(qū)域特定的顏色信息組合來定位車牌[2],;另一種是基于邊緣或紋理信息的,根據(jù)車牌區(qū)域邊緣信息較其他區(qū)域清晰來檢測車牌[3],。第一種方法對光照條件和照相機設置敏感,,第二種方法當車牌褪色嚴重時,會由于檢測不到邊緣而導致定位失敗,。投影法[4],、連通域法[5]和模板匹配法[6]是實現(xiàn)字符分割的主要方式。投影法要求字符字跡完整且沒有噪音干擾,,易受光照影響,。連通域法對車牌的傾斜不敏感,但不能用來處理字符斷裂和字符粘連,。常用的字符識別方法有:神經(jīng)網(wǎng)絡(BPNN和CNN),、SVM和模板匹配法。傳統(tǒng)的神經(jīng)網(wǎng)絡和SVM用于字符識別時有較高的正確率,,但如果參數(shù)選擇不合適會出現(xiàn)學習速度慢,、過擬合和局部最優(yōu)等缺陷[7]。模板匹配法簡單實用,,但在字符出現(xiàn)形變,、粘連等問題時會導致模板匹配法識別率降低[8]

    相較于其他常用車牌識別算法,,本文所用方法在以下幾點做出了改進:(1)綜合利用顏色定位和邊緣檢測的優(yōu)點,,克服了單一用其中一類方法的缺陷;(2)對垂直投影法做改進,,先粗分割,,再精確分割,有效解決了字符的粘連,、斷裂等問題,;(3)用SaE-ELM來訓練模型,,縮短了訓練時間,提升了字符識別率,。

1 車牌定位

    本文將車牌的面積,、紋理、顏色,、長寬比等多重特征結合起來,,提出一種車牌定位的改進算法,具體執(zhí)行步驟如下所示:

    (1)輸入彩色車牌圖像,,如圖1(a),,預處理(高斯模糊和灰度化)后得到灰度圖,然后用Sobel算子得到車牌圖像的垂直邊緣(由于車頭排氣孔,、車標等的影響,,檢測水平邊緣會影響最后的連接結果),接著用大津法對邊緣檢測圖進行二值化并做形態(tài)學閉運算,。此時可以獲得很多車牌候選區(qū),,如圖1(b)所示。

    (2)將輸入的彩色圖轉成HSV圖像,,若當前像素的H,、S、V分量分別滿足表1所示藍色對應的H,、S,、V分量,則灰度值置為255,。同理若滿足黃色各分量,,灰度值置為200;滿足白色各分量,,灰度值置為150,;滿足黑色各分量,灰度值置為100,;其他為0,。構造出的五級灰度圖如圖1(c)所示。依次取每級灰度圖,,分別做二值化和閉運算操作,。以藍色分量為例,255為閾值,,將灰度值不為255的全部置0,,可得藍色分量候選區(qū),如圖1(d)所示,其他分量的處理過程依此類推,。

jsj1-b1.gif

jsj1-t1.gif

    (3)將圖1(b)與圖1(d)做“與”運算可得圖1(e),,候選區(qū)數(shù)量大大減少,然后借助與車牌的面積,、長寬比等特征可以篩去部分偽車牌,,最后由SVM分類器對每個候選車牌做分類判斷操作即可得到真正的車牌,如圖1(f)所示,。對于一般場景下的車牌,,經(jīng)過上述3步即可定位到車牌區(qū)域。但對于某些特殊的場景,,步驟(1)或步驟(2)可能存在不同程度的失效,,導致最后的定位效果不佳。這里的解決辦法是用SVM對候選車牌進行判斷,,若SVM判斷結果大于1,,則定位結束。否則,,用顏色定位或邊緣檢測進行再次定位,。

    閉運算操作時,車牌可能會錯分成兩個區(qū)域,。這是因為車牌中的第2或第3個位置存在某些垂直邊緣不明顯的字符(比如“E”、“1”等),,解決辦法是對車牌區(qū)域進行擴展,,然后對擴展區(qū)域再進行一次邊緣檢測。對于低照度圖像,,使用Sobel算子可能會出現(xiàn)邊緣提取不清楚或缺失嚴重的問題,,可以改用Scharr算子來提取邊緣。完整的定位流程圖如圖2所示,。本文所用定位方法綜合多種因素,,具有較好的魯棒性。

jsj1-t2.gif

2 字符分割

2.1 初步分割

    傳統(tǒng)投影法對字符進行切分時,,需要字符字跡完整且沒有噪聲干擾,,此時二值圖像的垂直投影曲線會有清晰的波峰波谷,可以根據(jù)波峰波谷的跳變位置來確定字符分割點,。由于受到噪聲,、光照等影響,車牌垂直投影的波峰和波谷往往不明顯,,圖3所示為噪聲嚴重車牌以及它的垂直投影曲線,。

jsj1-t3.gif

    經(jīng)分析,字符的投影曲線多數(shù)為單峰,少數(shù)為雙峰和三峰,,如:H,、M和斷裂字符為雙峰,川為三峰,。利用該特征來對垂直投影法進行改進的步驟如下:

    (1)水平掃描車牌二值圖像,,根據(jù)字符區(qū)域跳變次數(shù)不小于14的經(jīng)驗去除上下邊框和鉚釘。求得字符高度charHeight,,單個字符寬度charWidth=2charHeight,。

    (2)列掃描車牌二值圖像,統(tǒng)計每一列白色像素點個數(shù),。設置投影閾值threshValue,,完成垂直投影,并將投影結果保存在arrayTotal數(shù)組中,。

    (3)創(chuàng)建字符類Character和動態(tài)鏈表listCharacter,,字符起點橫坐標記為start,中心點centerPoint,,終點end,。掃描arrayTotal數(shù)組,當arrayTotal[start]>0&&arrayTotal[end]=0,,記當前字符寬度width[m]=end-start,。依次執(zhí)行以下步驟:①若2charWidth<width[m]<3charWidth,則為2個字符粘連,,取其投影中點進行分割,;若3charWidth<width[m]<4charWidth,則為3個字符粘連,,根據(jù)charWidth確定分割的位置,。②若width[m]+width[m+1]<charWidth,同時滿足兩字符間距差小于(12/45)charWidth,,則判定字符發(fā)生斷裂,,需對字符做合并操作。③若width[m]<0.5charWidth<width[m+1],,寬度width[m]內(nèi)投影值大于0.8charHeight的像素個數(shù)為num,。當num小于預先設定閾值,則當前字符被判定為噪聲點,,否則就被判定為數(shù)字“1”,。

    (4)重復步驟(3),將字符寫入鏈表listCharacter,。直至遍歷邊界最右端且listCharacter中字符個數(shù)不小于7為止,。

2.2 精確分割

    上述步驟完成了車牌字符的初步分割,,解決了字符的斷裂和粘連問題。但仍然存在車牌左右邊框的干擾,,使得車牌的左右邊界并非車牌字符起始和結束位置,。因此還需根據(jù)先驗知識對字符坐標值進行修正,從而完成精確分割,,具體流程如下:

    (1)統(tǒng)計listCharacter中字符個數(shù)N及對應寬度Wi,,求出寬度的均值Wa與標準差Ws。 

    jsj1-gs1.gif

    jsj1-gs2.gif

    若Wi不滿足|Wi-Wa|<Ws,,則將其從listCharacter中剔除,,對其余字符求Wa和Ws,循環(huán)直至所有Wi都符合|Wi-Wa|<Ws,,則此時Wa為字符的統(tǒng)計標準寬度,。

    (2)選定優(yōu)先分割字符Cmin(與Wa差異最小的字符)。根據(jù)標準車牌字符寬度及間距等先驗信息(單字符寬45 mm,,高90 mm,,間隔符寬10 mm,第二和第三字符間隔34 mm,,其余字符間隔均為12 mm),,計算出Wa與標準寬度的比值p(如式(3)所示)。根據(jù)這一比值計算出Cmin的centerPoint在表2所處的坐標范圍,,從而確定Cmin在車牌字符排列中的序號,。

    jsj1-gs3.gif

    (3)以Cmin的centerPoint為基準點,Wa為尺度,,根據(jù)表2計算出所有字符的開始和結束坐標,,然后將所有坐標信息重新寫入listCharacter,字符的精確分割即可通過這些坐標值來完成,。分割效果如表3所示。

jsj1-b2.gif

jsj1-b3.gif

3 字符識別

3.1 SaE-ELM

    極限學習機是Huang Guangbin[9]提出的一種新的基于單隱層前饋神經(jīng)網(wǎng)絡的學習方法,。該方法只需訓練前設置好隱層節(jié)點數(shù)目,,執(zhí)行過程中隨機產(chǎn)生輸入權值與隱層偏差(無需通過迭代反復刷新調(diào)整),最終把復雜的問題轉化成求矩陣的Moore-Penrose廣義逆,。由于隨機產(chǎn)生網(wǎng)絡的輸入權值和隱層的偏置向量參數(shù),,所以不能保證訓練出的ELM模型能夠達到最優(yōu)。

    本文采用基于SaE-ELM的方法來識別車牌字符,。該方法利用自適應差分進化算法優(yōu)化ELM網(wǎng)絡的輸入權值與隱層偏差,,初始化后循環(huán)“突變→交叉→選擇”來生成最優(yōu)參數(shù)。接著通過測試設置最優(yōu)隱層節(jié)點數(shù)目,,選擇適當?shù)募詈瘮?shù)計算出隱層輸出,,并用最小二乘法計算出輸出權值。實驗驗證表明,該方法不僅保留了ELM算法訓練的快速性,,而且具有更好的泛化能力和準確性,,避免了ELM模型的隨機性。假設訓練集S包含了N個任意不同的樣本,,S={(xj,,tj)|xj∈Rn,tj∈Rm,,j=1,,2,…,,N},,具有L個隱層單元的SaE-ELM算法執(zhí)行步驟如下:

    (1)首先初始化原始種群,原始種群是包含了所有輸入權值與隱藏層偏差的NP組向量,,每組向量作為一個個體向量,,如式(4)所示。

    jsj1-gs4.gif

其中,,wi和bi是隨機賦值的,,wi是輸入權值,bi是隱層偏差(i=1,,2,,…,L),。L是隱層節(jié)點數(shù),,G是進化代數(shù),k=1,,2,,…,NP,,NP表示種群大小,,這里NP=10。

    (2)然后通過式(5)計算出隱層輸出矩陣Hk,,G,,輸出權值矩陣?茁k,G則可以通過式(6)得到,。

jsj1-gs5-8.gif

    (3)接著通過變異操作獲取變異個體向量vk,,G,變異過程中有4種變異策略可以選擇,,如表4所示,。通過Pl,,G可以實現(xiàn)變異策略的自適應選擇,Pl,,G是概率參數(shù),,表示在第G代變異操作中使用策略“l(fā)”的概率。

jsj1-b4.gif

    變異因子F用于控制步長,,服從N(0.6,,0.3)的正態(tài)分布,K在0~1區(qū)間隨機取值,,r1~r5是1~NP內(nèi)互不相等的隨機整數(shù),。概率參數(shù)Pl,G的更新規(guī)則可參考文獻[10],,變異操作完成后,,將變異向量jsj1-b4-x1.gif與θk,G進行交叉操作可得試驗向量jsj1-b4-x2.gifjsj1-b4-x3.gif交叉操作通過式(9)完成,。

    jsj1-gs9.gif

其中,,jrand是[1,L]隨機正整數(shù),,randj是0~1之間隨機數(shù),,交叉概率CR服從N(0.3,0.1)的正態(tài)分布,。重復突變,、交叉與選擇,直至最大迭代次數(shù)得到最優(yōu)θk,,G,,通過式(6)計算出輸出權值β,即可獲得模型,。

3.2 字符識別

    首先將字符尺寸統(tǒng)一為20×40,,然后用方向梯度直方圖來提取字符特征(單元10×10,塊大小20×20,,塊步長5×5,,每個單元對應的向量是9維),則可得180維的輸入特征向量,。接著用SaE-ELM訓練3個字符分類器,。漢字分類器用來識別第一個字符,,采用400個隱層節(jié)點和31個輸出節(jié)點,。字母分類器用來識別第二個字符,采用300個隱藏層節(jié)點和24個輸出節(jié)點,。字母數(shù)字分類器則用來識別剩下的5個字符,,采用300個隱層節(jié)點和34個輸出節(jié)點,。在2.50 GHz CPU、2 GB內(nèi)存,、vs2013編程的主機上進行測試,,用4 000個字符(1 435個中文字符,1 000個數(shù)字,,1 565個英文字符)來訓練,,訓練時間為144 s(訓練用時最長的時間)。取500個字符做測試,,這里是分開測試,,漢字分類器識別率為96.5%,字母數(shù)字分類器的識別率為97.5%,,字母分類器識別率為98.0%,。從表5可知(以字母為例),在識別率與BP神經(jīng)網(wǎng)絡和SVM區(qū)別不大的情況下,,基于SaE-ELM的車牌字符識別大大縮短了訓練時間,,且提高了字符識別的速度。本文算法可應用于實際復雜場景,,測試效果如圖4所示,。

jsj1-b5.gif

jsj1-t4.gif

4 結束語

    經(jīng)過大量測試,上述方法可以有效地識別各種復雜場景中的車牌,。但所提出的方法前提是要把彩色圖轉為灰度圖,,未來可考慮直接對彩色圖直接進行處理,終端完成圖像的采集工作,,然后通過云平臺,,把相對復雜的圖像計算部分分到多個服務器上同時進行處理。還可以考慮將深度學習用于模型的訓練,,提高中文字符和相似字符的識別準確率,。車牌識別技術的發(fā)展為其今后在車輛跟蹤、交通監(jiān)控,、停車場出入管理等領域的應用打下了良好的基礎,。

參考文獻

[1] TIAN B.Hierarchical and networked vehicle surveillance in its:A survey[J].IEEE Trans.Intell.Transp.Syst.,2015,,16(2):557-580.

[2] SHI X,,ZHAO W,SHEN Y.Automatic license plate recognition system based on color image processing[J].Lecture Notes in Computer Science,,2005,3483(4):1159-1168.

[3] ZHENG D,,ZHAO Y,WANG J.An efficient method of license plate location[J].Pattern Recog.Lett.,,2005,,26(15):2431-2438.

[4] 張學海.車牌字符分割方法研究與實現(xiàn)[D].成都:西南交通大學,,2010.

[5] 甘玲,林小晶.基于連通域提取的車牌字符分割算法[J].計算機仿真,,2011,,28(4):336-339.

[6] 穆麗娟,籍焱.基于新模板的算法在車牌字符分割中的應用[J].計算機工程與應用,,2012,,48(19):191-196.

[7] HONG T,GOPALAKRISHNAM A K.License plate extraction and recognition of a Thai vehicle based on MSER and BPNN[C].Knowledge and Smart Technology(KST),,2015 7th International Conference on,,Chonburi,2015:48-53.

[8] NEJATI M,,MAJIDI A,,JALALAT M.License plate recognition based on edge histogram analysis and classifier ensemble[C].2015 Signal Processing and Intelligent Systems Conference(SPIS),Tehran,,2015:48-52.

[9] HUANG G B,,WANG D H,LAN Y.Extreme learning machines:a survey[J].International Journal of Machine Learning and Cybernetics,,2011,,2(2):107-122.

[10] CAO J,LIN Z,,HUANG G B.Self-adaptive evolutionary extreme learning machine[J].Neural Process.Lett.,,2012,36(3):285-305.



作者信息:

文  武1,,2,,喬龍輝1,何  鵬1

(1.重慶郵電大學,,重慶400065,;2.重慶信科設計有限公司,重慶400065)

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載,。