摘要:針對(duì)目前車牌識(shí)別算法中存在的模型訓(xùn)練慢、字符識(shí)別準(zhǔn)確率低等問題,研究了一種基于自適應(yīng)差分進(jìn)化極限學(xué)習(xí)機(jī)的車牌識(shí)別算法。綜合利用邊緣檢測和顏色定位的優(yōu)點(diǎn)來檢測車牌區(qū)域,然后用改進(jìn)后的垂直投影法對(duì)車牌區(qū)域進(jìn)行分割,最后將自適應(yīng)差分進(jìn)化極限學(xué)習(xí)機(jī)用于字符識(shí)別。研究結(jié)果表明,所提出算法具有訓(xùn)練速度快、字符識(shí)別率高等優(yōu)點(diǎn),可以應(yīng)用于復(fù)雜的交通場景。 中文引用格式: 文武,喬龍輝,何鵬. 基于自適應(yīng)差分進(jìn)化極限學(xué)習(xí)機(jī)的車牌識(shí)別算法[J].電子技術(shù)應(yīng)用,2017,43(1):133-136,140. 作為智能交通系統(tǒng)的重要組成部分,車牌識(shí)別系統(tǒng)常用來監(jiān)視交通狀況、監(jiān)督車輛行為,還可以用于停車場出入管理。雖然過去十年車牌識(shí)別技術(shù)取得了很大的成就,并在很多實(shí)際場合中得以應(yīng)用,但從復(fù)雜場景的圖像中識(shí)別車牌仍然是一個(gè)艱巨的任務(wù)[1]。 車牌識(shí)別一般由三部分組成:車牌定位、字符分割和字符識(shí)別。車牌定位有兩種主要的實(shí)現(xiàn)方法:一種是基于車牌區(qū)域顏色信息的,根據(jù)車牌區(qū)域特定的顏色信息組合來定位車牌[2];另一種是基于邊緣或紋理信息的,根據(jù)車牌區(qū)域邊緣信息較其他區(qū)域清晰來檢測車牌[3]。第一種方法對(duì)光照條件和照相機(jī)設(shè)置敏感,第二種方法當(dāng)車牌褪色嚴(yán)重時(shí),會(huì)由于檢測不到邊緣而導(dǎo)致定位失敗。投影法[4]、連通域法[5]和模板匹配法[6]是實(shí)現(xiàn)字符分割的主要方式。投影法要求字符字跡完整且沒有噪音干擾,易受光照影響。連通域法對(duì)車牌的傾斜不敏感,但不能用來處理字符斷裂和字符粘連。常用的字符識(shí)別方法有:神經(jīng)網(wǎng)絡(luò)(BPNN和CNN)、SVM和模板匹配法。傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)和SVM用于字符識(shí)別時(shí)有較高的正確率,但如果參數(shù)選擇不合適會(huì)出現(xiàn)學(xué)習(xí)速度慢、過擬合和局部最優(yōu)等缺陷[7]。模板匹配法簡單實(shí)用,但在字符出現(xiàn)形變、粘連等問題時(shí)會(huì)導(dǎo)致模板匹配法識(shí)別率降低[8]。 相較于其他常用車牌識(shí)別算法,本文所用方法在以下幾點(diǎn)做出了改進(jìn):(1)綜合利用顏色定位和邊緣檢測的優(yōu)點(diǎn),克服了單一用其中一類方法的缺陷;(2)對(duì)垂直投影法做改進(jìn),先粗分割,再精確分割,有效解決了字符的粘連、斷裂等問題;(3)用SaE-ELM來訓(xùn)練模型,縮短了訓(xùn)練時(shí)間,提升了字符識(shí)別率。 本文將車牌的面積、紋理、顏色、長寬比等多重特征結(jié)合起來,提出一種車牌定位的改進(jìn)算法,具體執(zhí)行步驟如下所示: (1)輸入彩色車牌圖像,如圖1(a),預(yù)處理(高斯模糊和灰度化)后得到灰度圖,然后用Sobel算子得到車牌圖像的垂直邊緣(由于車頭排氣孔、車標(biāo)等的影響,檢測水平邊緣會(huì)影響最后的連接結(jié)果),接著用大津法對(duì)邊緣檢測圖進(jìn)行二值化并做形態(tài)學(xué)閉運(yùn)算。此時(shí)可以獲得很多車牌候選區(qū),如圖1(b)所示。 (2)將輸入的彩色圖轉(zhuǎn)成HSV圖像,若當(dāng)前像素的H、S、V分量分別滿足表1所示藍(lán)色對(duì)應(yīng)的H、S、V分量,則灰度值置為255。同理若滿足黃色各分量,灰度值置為200;滿足白色各分量,灰度值置為150;滿足黑色各分量,灰度值置為100;其他為0。構(gòu)造出的五級(jí)灰度圖如圖1(c)所示。依次取每級(jí)灰度圖,分別做二值化和閉運(yùn)算操作。以藍(lán)色分量為例,255為閾值,將灰度值不為255的全部置0,可得藍(lán)色分量候選區(qū),如圖1(d)所示,其他分量的處理過程依此類推。 (3)將圖1(b)與圖1(d)做“與”運(yùn)算可得圖1(e),候選區(qū)數(shù)量大大減少,然后借助與車牌的面積、長寬比等特征可以篩去部分偽車牌,最后由SVM分類器對(duì)每個(gè)候選車牌做分類判斷操作即可得到真正的車牌,如圖1(f)所示。對(duì)于一般場景下的車牌,經(jīng)過上述3步即可定位到車牌區(qū)域。但對(duì)于某些特殊的場景,步驟(1)或步驟(2)可能存在不同程度的失效,導(dǎo)致最后的定位效果不佳。這里的解決辦法是用SVM對(duì)候選車牌進(jìn)行判斷,若SVM判斷結(jié)果大于1,則定位結(jié)束。否則,用顏色定位或邊緣檢測進(jìn)行再次定位。 閉運(yùn)算操作時(shí),車牌可能會(huì)錯(cuò)分成兩個(gè)區(qū)域。這是因?yàn)檐嚺浦械牡?或第3個(gè)位置存在某些垂直邊緣不明顯的字符(比如“E”、“1”等),解決辦法是對(duì)車牌區(qū)域進(jìn)行擴(kuò)展,然后對(duì)擴(kuò)展區(qū)域再進(jìn)行一次邊緣檢測。對(duì)于低照度圖像,使用Sobel算子可能會(huì)出現(xiàn)邊緣提取不清楚或缺失嚴(yán)重的問題,可以改用Scharr算子來提取邊緣。完整的定位流程圖如圖2所示。本文所用定位方法綜合多種因素,具有較好的魯棒性。 2.1 初步分割 傳統(tǒng)投影法對(duì)字符進(jìn)行切分時(shí),需要字符字跡完整且沒有噪聲干擾,此時(shí)二值圖像的垂直投影曲線會(huì)有清晰的波峰波谷,可以根據(jù)波峰波谷的跳變位置來確定字符分割點(diǎn)。由于受到噪聲、光照等影響,車牌垂直投影的波峰和波谷往往不明顯,圖3所示為噪聲嚴(yán)重車牌以及它的垂直投影曲線。 經(jīng)分析,字符的投影曲線多數(shù)為單峰,少數(shù)為雙峰和三峰,如:H、M和斷裂字符為雙峰,川為三峰。利用該特征來對(duì)垂直投影法進(jìn)行改進(jìn)的步驟如下: (1)水平掃描車牌二值圖像,根據(jù)字符區(qū)域跳變次數(shù)不小于14的經(jīng)驗(yàn)去除上下邊框和鉚釘。求得字符高度charHeight,單個(gè)字符寬度charWidth=2charHeight。 (2)列掃描車牌二值圖像,統(tǒng)計(jì)每一列白色像素點(diǎn)個(gè)數(shù)。設(shè)置投影閾值threshValue,完成垂直投影,并將投影結(jié)果保存在arrayTotal數(shù)組中。 (3)創(chuàng)建字符類Character和動(dòng)態(tài)鏈表listCharacter,字符起點(diǎn)橫坐標(biāo)記為start,中心點(diǎn)centerPoint,終點(diǎn)end。掃描arrayTotal數(shù)組,當(dāng)arrayTotal[start]>0&&arrayTotal[end]=0,記當(dāng)前字符寬度width[m]=end-start。依次執(zhí)行以下步驟:①若2charWidth<width[m]<3charWidth,則為2個(gè)字符粘連,取其投影中點(diǎn)進(jìn)行分割;若3charWidth<width[m]<4charWidth,則為3個(gè)字符粘連,根據(jù)charWidth確定分割的位置。②若width[m]+width[m+1]<charWidth,同時(shí)滿足兩字符間距差小于(12/45)charWidth,則判定字符發(fā)生斷裂,需對(duì)字符做合并操作。③若width[m]<0.5charWidth<width[m+1],寬度width[m]內(nèi)投影值大于0.8charHeight的像素個(gè)數(shù)為num。當(dāng)num小于預(yù)先設(shè)定閾值,則當(dāng)前字符被判定為噪聲點(diǎn),否則就被判定為數(shù)字“1”。 (4)重復(fù)步驟(3),將字符寫入鏈表listCharacter。直至遍歷邊界最右端且listCharacter中字符個(gè)數(shù)不小于7為止。 2.2 精確分割 上述步驟完成了車牌字符的初步分割,解決了字符的斷裂和粘連問題。但仍然存在車牌左右邊框的干擾,使得車牌的左右邊界并非車牌字符起始和結(jié)束位置。因此還需根據(jù)先驗(yàn)知識(shí)對(duì)字符坐標(biāo)值進(jìn)行修正,從而完成精確分割,具體流程如下: (1)統(tǒng)計(jì)listCharacter中字符個(gè)數(shù)N及對(duì)應(yīng)寬度Wi,求出寬度的均值Wa與標(biāo)準(zhǔn)差Ws。
若Wi不滿足|Wi-Wa|<Ws,則將其從listCharacter中剔除,對(duì)其余字符求Wa和Ws,循環(huán)直至所有Wi都符合|Wi-Wa|<Ws,則此時(shí)Wa為字符的統(tǒng)計(jì)標(biāo)準(zhǔn)寬度。 (2)選定優(yōu)先分割字符Cmin(與Wa差異最小的字符)。根據(jù)標(biāo)準(zhǔn)車牌字符寬度及間距等先驗(yàn)信息(單字符寬45 mm,高90 mm,間隔符寬10 mm,第二和第三字符間隔34 mm,其余字符間隔均為12 mm),計(jì)算出Wa與標(biāo)準(zhǔn)寬度的比值p(如式(3)所示)。根據(jù)這一比值計(jì)算出Cmin的centerPoint在表2所處的坐標(biāo)范圍,從而確定Cmin在車牌字符排列中的序號(hào)。
(3)以Cmin的centerPoint為基準(zhǔn)點(diǎn),Wa為尺度,根據(jù)表2計(jì)算出所有字符的開始和結(jié)束坐標(biāo),然后將所有坐標(biāo)信息重新寫入listCharacter,字符的精確分割即可通過這些坐標(biāo)值來完成。分割效果如表3所示。 3.1 SaE-ELM 極限學(xué)習(xí)機(jī)是Huang Guangbin[9]提出的一種新的基于單隱層前饋神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方法。該方法只需訓(xùn)練前設(shè)置好隱層節(jié)點(diǎn)數(shù)目,執(zhí)行過程中隨機(jī)產(chǎn)生輸入權(quán)值與隱層偏差(無需通過迭代反復(fù)刷新調(diào)整),最終把復(fù)雜的問題轉(zhuǎn)化成求矩陣的Moore-Penrose廣義逆。由于隨機(jī)產(chǎn)生網(wǎng)絡(luò)的輸入權(quán)值和隱層的偏置向量參數(shù),所以不能保證訓(xùn)練出的ELM模型能夠達(dá)到最優(yōu)。 本文采用基于SaE-ELM的方法來識(shí)別車牌字符。該方法利用自適應(yīng)差分進(jìn)化算法優(yōu)化ELM網(wǎng)絡(luò)的輸入權(quán)值與隱層偏差,初始化后循環(huán)“突變→交叉→選擇”來生成最優(yōu)參數(shù)。接著通過測試設(shè)置最優(yōu)隱層節(jié)點(diǎn)數(shù)目,選擇適當(dāng)?shù)募?lì)函數(shù)計(jì)算出隱層輸出,并用最小二乘法計(jì)算出輸出權(quán)值。實(shí)驗(yàn)驗(yàn)證表明,該方法不僅保留了ELM算法訓(xùn)練的快速性,而且具有更好的泛化能力和準(zhǔn)確性,避免了ELM模型的隨機(jī)性。假設(shè)訓(xùn)練集S包含了N個(gè)任意不同的樣本,S={(xj,tj)|xj∈Rn,tj∈Rm,j=1,2,…,N},具有L個(gè)隱層單元的SaE-ELM算法執(zhí)行步驟如下: (1)首先初始化原始種群,原始種群是包含了所有輸入權(quán)值與隱藏層偏差的NP組向量,每組向量作為一個(gè)個(gè)體向量,如式(4)所示。
其中,wi和bi是隨機(jī)賦值的,wi是輸入權(quán)值,bi是隱層偏差(i=1,2,…,L)。L是隱層節(jié)點(diǎn)數(shù),G是進(jìn)化代數(shù),k=1,2,…,NP,NP表示種群大小,這里NP=10。 (2)然后通過式(5)計(jì)算出隱層輸出矩陣Hk,G,輸出權(quán)值矩陣?茁k,G則可以通過式(6)得到。 (3)接著通過變異操作獲取變異個(gè)體向量vk,G,變異過程中有4種變異策略可以選擇,如表4所示。通過Pl,G可以實(shí)現(xiàn)變異策略的自適應(yīng)選擇,Pl,G是概率參數(shù),表示在第G代變異操作中使用策略“l(fā)”的概率。 變異因子F用于控制步長,服從N(0.6,0.3)的正態(tài)分布,K在0~1區(qū)間隨機(jī)取值,r1~r5是1~NP內(nèi)互不相等的隨機(jī)整數(shù)。概率參數(shù)Pl,G的更新規(guī)則可參考文獻(xiàn)[10],變異操作完成后,將變異向量與θk,G進(jìn)行交叉操作可得試驗(yàn)向量交叉操作通過式(9)完成。
其中,jrand是[1,L]隨機(jī)正整數(shù),randj是0~1之間隨機(jī)數(shù),交叉概率CR服從N(0.3,0.1)的正態(tài)分布。重復(fù)突變、交叉與選擇,直至最大迭代次數(shù)得到最優(yōu)θk,G,通過式(6)計(jì)算出輸出權(quán)值β,即可獲得模型。 3.2 字符識(shí)別 首先將字符尺寸統(tǒng)一為20×40,然后用方向梯度直方圖來提取字符特征(單元10×10,塊大小20×20,塊步長5×5,每個(gè)單元對(duì)應(yīng)的向量是9維),則可得180維的輸入特征向量。接著用SaE-ELM訓(xùn)練3個(gè)字符分類器。漢字分類器用來識(shí)別第一個(gè)字符,采用400個(gè)隱層節(jié)點(diǎn)和31個(gè)輸出節(jié)點(diǎn)。字母分類器用來識(shí)別第二個(gè)字符,采用300個(gè)隱藏層節(jié)點(diǎn)和24個(gè)輸出節(jié)點(diǎn)。字母數(shù)字分類器則用來識(shí)別剩下的5個(gè)字符,采用300個(gè)隱層節(jié)點(diǎn)和34個(gè)輸出節(jié)點(diǎn)。在2.50 GHz CPU、2 GB內(nèi)存、vs2013編程的主機(jī)上進(jìn)行測試,用4 000個(gè)字符(1 435個(gè)中文字符,1 000個(gè)數(shù)字,1 565個(gè)英文字符)來訓(xùn)練,訓(xùn)練時(shí)間為144 s(訓(xùn)練用時(shí)最長的時(shí)間)。取500個(gè)字符做測試,這里是分開測試,漢字分類器識(shí)別率為96.5%,字母數(shù)字分類器的識(shí)別率為97.5%,字母分類器識(shí)別率為98.0%。從表5可知(以字母為例),在識(shí)別率與BP神經(jīng)網(wǎng)絡(luò)和SVM區(qū)別不大的情況下,基于SaE-ELM的車牌字符識(shí)別大大縮短了訓(xùn)練時(shí)間,且提高了字符識(shí)別的速度。本文算法可應(yīng)用于實(shí)際復(fù)雜場景,測試效果如圖4所示。 經(jīng)過大量測試,上述方法可以有效地識(shí)別各種復(fù)雜場景中的車牌。但所提出的方法前提是要把彩色圖轉(zhuǎn)為灰度圖,未來可考慮直接對(duì)彩色圖直接進(jìn)行處理,終端完成圖像的采集工作,然后通過云平臺(tái),把相對(duì)復(fù)雜的圖像計(jì)算部分分到多個(gè)服務(wù)器上同時(shí)進(jìn)行處理。還可以考慮將深度學(xué)習(xí)用于模型的訓(xùn)練,提高中文字符和相似字符的識(shí)別準(zhǔn)確率。車牌識(shí)別技術(shù)的發(fā)展為其今后在車輛跟蹤、交通監(jiān)控、停車場出入管理等領(lǐng)域的應(yīng)用打下了良好的基礎(chǔ)。 參考文獻(xià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] 張學(xué)海.車牌字符分割方法研究與實(shí)現(xiàn)[D].成都:西南交通大學(xué),2010. [5] 甘玲,林小晶.基于連通域提取的車牌字符分割算法[J].計(jì)算機(jī)仿真,2011,28(4):336-339. [6] 穆麗娟,籍焱.基于新模板的算法在車牌字符分割中的應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用,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.重慶郵電大學(xué),重慶400065; 2.重慶信科設(shè)計(jì)有限公司,重慶400065
|
|