顧剛,尚思捷,丁堯
(1.中博信息技術(shù)研究院有限公司,南京210000;2.南京大學(xué)金陵學(xué)院,南京210089)
基于神經(jīng)網(wǎng)絡(luò)的車牌識(shí)別技術(shù)研究
顧剛1,尚思捷2,丁堯2
(1.中博信息技術(shù)研究院有限公司,南京210000;2.南京大學(xué)金陵學(xué)院,南京210089)
車輛號(hào)牌識(shí)別作為人工智能的一個(gè)具體應(yīng)用,正越來越向著成熟化、產(chǎn)品化方向發(fā)展,如何兼顧號(hào)牌智能識(shí)別的準(zhǔn)確性和實(shí)時(shí)性,是該領(lǐng)域的一個(gè)研究熱點(diǎn)。在對(duì)車輛號(hào)牌圖像識(shí)別技術(shù)和人工智能研究的基礎(chǔ)上,提出一種改良的Otus算法,可以較快地識(shí)別車輛號(hào)牌中的字符信息,準(zhǔn)確性和實(shí)時(shí)性較好,為該技術(shù)的產(chǎn)品化奠定一定的技術(shù)基礎(chǔ)。
號(hào)牌識(shí)別;BP模型;Otus算法;MATLAB仿真
車牌識(shí)別(Licence Plate Recognition,簡(jiǎn)稱LPR)技術(shù)是圖像處理、機(jī)器視覺、模式識(shí)別等技術(shù)的綜合運(yùn)用,其主要目標(biāo)是對(duì)已獲取的汽車抓拍圖像進(jìn)行分析,從中獲得車輛的號(hào)牌信息,進(jìn)而在需要進(jìn)行車輛管理的環(huán)境中有所應(yīng)用。對(duì)于一個(gè)合格的車牌識(shí)別系統(tǒng)的要求,是能快速且準(zhǔn)確的從一幅圖像中自主定位到車牌圖像的位置,并對(duì)車牌圖像的信息進(jìn)行單個(gè)字符的切分,最后完成字符的正確識(shí)別[1]。其基本流程如圖1所示。
圖1 基于圖像的車牌識(shí)別流程
車牌定位系統(tǒng)和車牌字符識(shí)別系統(tǒng)是車牌識(shí)別系統(tǒng)中兩個(gè)重要的子系統(tǒng),車牌定位是車牌字符識(shí)別的首要步驟,其準(zhǔn)確性影響后面的字符切分與識(shí)別操作。常用的車牌定位方法主要包括基于邊緣的定位方法、基于形態(tài)學(xué)的定位方法、基于紋理特征的定位方法以及基于顏色劃分的定位方法[2]。在定位成功后,需要對(duì)定位后的區(qū)域進(jìn)行字符切分與識(shí)別,切分就是利用某種方法獲得車牌中每個(gè)字符間的間隔,再根據(jù)這個(gè)間隔將車牌區(qū)域進(jìn)行切分。
從當(dāng)前來看,雖然關(guān)于車牌識(shí)別的算法研究相對(duì)較多,但由于諸多不確定的因素,特別是環(huán)境光和背景的復(fù)雜程度,都會(huì)影響車牌識(shí)別算法的精度,而過多地強(qiáng)調(diào)車牌識(shí)別的精準(zhǔn)度,就需要大量的數(shù)值計(jì)算。總的來說,影響車牌識(shí)別技術(shù)精度的原因大概有幾個(gè)方面:復(fù)雜環(huán)境光下的識(shí)別、圖像質(zhì)量的不確定性,車牌中的字符不統(tǒng)一性、車牌底色不唯一,車牌離地距離的不一致性以及在準(zhǔn)確性與實(shí)時(shí)性的協(xié)調(diào)兼顧上的問題。
近年來,由于計(jì)算機(jī)仿生技術(shù)的興起,部分研究人員將人工神經(jīng)網(wǎng)絡(luò)技術(shù)引入車牌識(shí)別領(lǐng)域,使車牌識(shí)別能夠模仿人類儲(chǔ)存信息以及對(duì)于信息進(jìn)行比較、分析的功能,以此來解決因信息不完整而無法識(shí)別的問題。與一般的識(shí)別方法相比較,基于人工神經(jīng)網(wǎng)絡(luò)的識(shí)別技術(shù),可以避開紛繁復(fù)雜的數(shù)學(xué)建模的工作,同時(shí)進(jìn)行信息的存儲(chǔ)和分析,由此加快系統(tǒng)的運(yùn)算速率。本課題采用基于前饋型神經(jīng)網(wǎng)絡(luò)的模式識(shí)別技術(shù)作為識(shí)別方法,對(duì)比傳統(tǒng)的車牌識(shí)別技術(shù),開展相關(guān)研究,最終實(shí)現(xiàn)在保證實(shí)時(shí)性的基礎(chǔ)上提高識(shí)別率的目標(biāo)。
車牌定位是車牌識(shí)別的首要步驟,其定位方法涉及車牌的紋理、幾何形狀以及圖像灰度等信息,常用的方法主要包括基于邊緣的定位方法、基于形態(tài)學(xué)的定位方法、基于紋理特征的定位方法以及基于顏色劃分的定位方法[3]。圖像預(yù)處理、車牌檢測(cè)和車牌識(shí)別是車牌定位的三個(gè)主要步驟,具體如圖2所示。本課題圍繞基于邊緣的檢測(cè)方法進(jìn)行相關(guān)定位技術(shù)研究。
圖2 車牌定位過程
精確定位車牌邊緣和抑制噪聲是邊緣檢測(cè)的主要目的,思路如下:首先凸顯出圖像中的車牌邊緣,然后定義邊緣強(qiáng)度,最后設(shè)置閾值來獲取邊緣點(diǎn)的集合。Roberts算子、Sobel算子、Prewitt算子、Laplacian算子和Canny算子是幾種常見的傳統(tǒng)邊緣檢測(cè)算子,其作用便是凸顯出圖像的局部邊緣[4]。但傳統(tǒng)的邊緣檢測(cè)存在一些不足,特別是在噪點(diǎn)會(huì)通過檢測(cè)算子擴(kuò)散,從而影響檢測(cè)的準(zhǔn)確性??紤]到上述原因,加上環(huán)境光影響的因素,本課題將小波變換引入邊緣檢測(cè),把對(duì)車輛抓拍的圖像信息分解為圖像基本信息的低頻分量和細(xì)節(jié)信息的高頻分量,由于車牌區(qū)域靠近汽車前柵,邊緣點(diǎn)較密集,故圖像的高頻區(qū)域應(yīng)為車牌區(qū)域。圖3為經(jīng)過圖像預(yù)處理后車輛的采集圖像,為一幅720×288的灰度圖。取車牌中間區(qū)域X=213處的數(shù)據(jù)線S(k),k∈(1,768),對(duì)其采用HAAR小波5層分解,其數(shù)據(jù)分析如圖4所示。
圖3 預(yù)處理后的車輛灰度圖
圖4 HAAR小波五層分解結(jié)果
從圖4可以看出,相對(duì)密集的高頻紋理區(qū)域是車牌區(qū)域,其他區(qū)域則是一個(gè)低頻區(qū)。前三層分解中,車牌區(qū)域信號(hào)特征明顯且易分離,第四層和第五層干擾嚴(yán)重且區(qū)別不明顯,因此選擇兩層分解的小波細(xì)節(jié)信號(hào)進(jìn)行車牌定位。圖5為經(jīng)過小波分解得到的圖像,可以看出,汽車前柵的干擾信息被包含在了水平分量中,對(duì)角線分量在除去干擾信息的同時(shí),也除去了一些車牌信息,而垂直分量表現(xiàn)相對(duì)較好。因此,本課題對(duì)車輛抓拍圖像進(jìn)行小波分解,使用其垂直分量進(jìn)行邊緣識(shí)別,具體如圖6所示,車牌位置紋理相對(duì)清晰,車輛前柵干擾較小,噪點(diǎn)干擾較小,且只需要對(duì)高頻圖像進(jìn)行檢索就可以完成定位,運(yùn)行時(shí)間大大減縮。
圖5 車牌圖像小波分解圖
圖6 小波分解的垂直分量提取邊緣
小波變換識(shí)別車牌的邊緣信息并不連續(xù),通過形態(tài)學(xué)處理后,讓它成為一個(gè)連續(xù)的整體,以便于后期定位。首先對(duì)水平相鄰的邊緣采用閉運(yùn)算使其變成連通區(qū)域,隨后在其垂直邊緣做兩次開運(yùn)算[5]。其結(jié)果如圖7所示,車牌區(qū)域與非車牌區(qū)域有著顯著的區(qū)別。
圖7 經(jīng)過開閉運(yùn)算后的結(jié)果
由于我國(guó)車輛拍照為制式拍照,尺寸為440mm× 140mm,比例為400/140≈3.14,結(jié)合圖片尺寸,區(qū)域篩選的條件為:長(zhǎng)度在150~50之間,高度在50~20之間。通常在水平方向上采用一階差分運(yùn)算來突出頻繁變化的區(qū)域,車牌表面字符與車牌的背景灰度對(duì)比值差異明顯,水平方向灰度變化相對(duì)頻繁是其兩個(gè)主要原因。差分思想如式1所示。
其中i=1,2,3,…,m為圖像行,j=1,2,3,…,n為圖像列。
將差分后的圖像g(i,j)的灰度值沿水平方向做累加投影得到為方便車牌精確定位,對(duì)水平方向采用均值法進(jìn)行平滑,思想如式2所示。
圖8 平滑后的水平累加差分投影圖
如圖8所示,由于車牌上下邊框水平且在邊緣提取時(shí)已被除去,故而在檢測(cè)上下邊緣時(shí)只需從上下分別檢測(cè)到首個(gè)不為0的點(diǎn),其兩點(diǎn)之間即是車牌的上下邊界,效果如圖9所示。
垂直方向也采用相似的處理方法,在對(duì)水平定位后得車牌信息進(jìn)行垂直處理,得到如圖10所示結(jié)果。
經(jīng)過水平定位和垂直定位,對(duì)車牌進(jìn)行準(zhǔn)確劃分,為接下來的的字符切分做好基礎(chǔ)。
圖9 水平定位后的車牌信息
圖10 經(jīng)過垂直定位后的車牌信息
二值化、圖像矯正和字符切分是車牌的字符切分流程的三個(gè)主要步驟。二值化是把圖像中各點(diǎn)灰度值設(shè)為0或255,這樣得到的信息將表現(xiàn)為黑白色彩但仍可以反映其整體特征和局部特征[6]。本課題采用一種改良型Otsu算法,其思想如圖11所示。
圖11 改良Otsu二維算法示意圖
將二維直方圖按照?qǐng)D11方式進(jìn)行分塊,僅計(jì)算與對(duì)角線平行的f=g+N和f=g-N兩條線段之間的點(diǎn),其他的點(diǎn)視為值為0的點(diǎn),當(dāng)N取一定值時(shí),就可以將所有概率不為0的點(diǎn)都包含進(jìn)來。令二值化閾值為(s,t),利用經(jīng)過該點(diǎn)且和對(duì)角線相互垂直的直線l進(jìn)行分割,其直線方程為l=s+t-g,l左側(cè)的點(diǎn)對(duì)應(yīng)背景信息C0,l右側(cè)的點(diǎn)為目標(biāo)信息C1。該分類方法僅同s+t相關(guān),故可把s+t看做一個(gè)整體,將二維閾值變?yōu)橐痪S閾值進(jìn)行計(jì)算,因此需要進(jìn)行2L次循環(huán),每次循環(huán)需要N2+2N(L-N)個(gè)點(diǎn)做累加運(yùn)算,當(dāng)L=256,N=40時(shí),將全部非零點(diǎn)都包括,總累加次數(shù)與傳統(tǒng)二維Otsu算法相比仍減少很多。經(jīng)過該算法二值化的結(jié)果如圖12所示。
圖12 改良后Otsu算法結(jié)果
在實(shí)際工作時(shí),車輛的前行方向與圖像抓拍設(shè)備不總是在同一直線上,因此抓拍到的車牌信息可能會(huì)存在一定的傾斜與扭曲,因此需要對(duì)圖像進(jìn)一步矯正,主要分為找出傾斜角度和對(duì)其坐標(biāo)變換。
圖13 二值化后車牌及其投影
圖13為經(jīng)過二值化后的投影圖,采用線性擬合的方法計(jì)算出車牌上下邊圖像值為1的點(diǎn)的集合直線,計(jì)算其與X軸的夾角,得出車牌的傾斜角度α。若α= 0,則不需要進(jìn)行旋轉(zhuǎn)矯正,否則進(jìn)行旋轉(zhuǎn)。設(shè)旋轉(zhuǎn)前坐標(biāo)為(x,y),旋轉(zhuǎn)后的坐標(biāo)(x',y'),兩者關(guān)系如式3所示,通過旋轉(zhuǎn)矯正后的車牌信息如圖14所示。
圖14 旋矯正后的車牌信息
從圖14可以看出,經(jīng)過矯正后的車牌信息已經(jīng)基本滿足字符切分的需要。通常我們使用垂直投影法對(duì)車牌表面字符進(jìn)行切分,由于該字符區(qū)域相對(duì)集中,同時(shí)字符之間存在空白間隙,因此在垂直方向的投影就會(huì)有幾個(gè)相對(duì)密集的投影峰值群,此時(shí)對(duì)這幾個(gè)密集的投影峰值群進(jìn)行切分,便能得到車牌單個(gè)字符。車牌垂直投影如圖15所示。依據(jù)垂直投影切分后得到的圖像如圖16所示。
圖15 車牌字符投影結(jié)果
圖16 車牌字符切分后效果
反向傳播(Back-Propagation,BP)模型是一種多層前饋型神經(jīng)網(wǎng)絡(luò)模式,其神經(jīng)元的傳遞函數(shù)是S型函數(shù),特點(diǎn)是能夠?qū)崿F(xiàn)由輸入到輸出的任意非線性映射,且其輸出的是0~1區(qū)間的連續(xù)量[7]。該模型主要用于數(shù)值逼近、模式識(shí)別等方面??紤]到該算法可靠性,本課題引入有動(dòng)量的梯度下降法來對(duì)BP模型進(jìn)行改良,其思路如式4所示。
其中D(k)為k時(shí)刻的負(fù)梯度,η為學(xué)習(xí)率,α為動(dòng)量因子,取值范圍[0,1],當(dāng)α=0,權(quán)值修正僅與此時(shí)負(fù)梯度相關(guān),當(dāng)α=1,權(quán)值修正僅與前一個(gè)負(fù)梯度相關(guān)。根據(jù)不同類型的問題,η和α取值范圍也各不相同,通常學(xué)習(xí)率η的取值范圍為(0.1,0.3),當(dāng)問題復(fù)雜時(shí),選用較大的值。動(dòng)量因子α與收斂的速度相關(guān),取值范圍一般為(0.9,1)。
由于車牌中包括漢字、英文、數(shù)字三種字符,因此本課題使用四個(gè)BP網(wǎng)絡(luò)來進(jìn)行識(shí)別和分類。每個(gè)BP網(wǎng)絡(luò)均采用三層結(jié)構(gòu),其中輸入層節(jié)點(diǎn)數(shù)要匹配圖像預(yù)處理后的輸出特征維數(shù),隱層節(jié)點(diǎn)數(shù)與輸入/輸出層節(jié)點(diǎn)數(shù)和問題復(fù)雜度等因素有關(guān),輸出層節(jié)點(diǎn)數(shù)取決于輸出標(biāo)準(zhǔn),即輸出信息編碼[8]。
在對(duì)數(shù)字識(shí)別的網(wǎng)絡(luò)中,共有0~9共十個(gè)對(duì)象,可以參照8421碼來對(duì)其編碼,因此數(shù)字字符識(shí)別輸出層的神經(jīng)元數(shù)目為4。英文字符識(shí)別共有A~Z共26個(gè)對(duì)象,全部為大寫字母,因此需要5位二進(jìn)制數(shù)對(duì)其編碼,即從00000~11001分別代表A~Z,因此英文字符識(shí)別輸出層的神經(jīng)元數(shù)目為5。漢字字符依據(jù)《中華人民共和國(guó)機(jī)動(dòng)車號(hào)牌》的有關(guān)規(guī)定,漢字字符多于32個(gè)且少于64個(gè),故漢字字符識(shí)別輸出層的神經(jīng)元數(shù)目為6。車牌字符共分為漢字、英文和數(shù)字三種類型,因此識(shí)別輸出層的神經(jīng)元數(shù)目為2。基于上述分析,我們對(duì)其進(jìn)行網(wǎng)絡(luò)訓(xùn)練,在訓(xùn)練過程中,根據(jù)初始權(quán)值不同,可能會(huì)出現(xiàn)網(wǎng)絡(luò)無法收斂的情況,這種情況下,需要更新權(quán)值,直到網(wǎng)絡(luò)收斂為止。
為驗(yàn)證模型的改良效果,本課題通過MATLAB對(duì)其進(jìn)行仿真,根據(jù)需求設(shè)計(jì)了車牌定位模塊location. m,號(hào)牌字符切分模塊segmentation.m和號(hào)牌字符識(shí)別模塊ocr.m。主體思想如下程序所示:
[bw,grounding]=location(image);
%從汽車抓拍圖像中識(shí)別出車牌圖像
seg=segmentation(bw);
%對(duì)識(shí)別出的車牌圖像各字符切分
load net.mat;
%導(dǎo)入訓(xùn)練好的改進(jìn)BP網(wǎng)絡(luò)
number=ocr(bw,seg,net);
%根據(jù)切分的字符識(shí)別出具體車牌號(hào)
為檢測(cè)模型效果,本課題選取了266張監(jiān)控抓拍圖像進(jìn)行測(cè)試,測(cè)試對(duì)象全部為民用車牌,圖像包括過曝光(A)、過傾斜(B)、字符缺損(C)、網(wǎng)格前柵干擾(D)等不確定因素,如圖17所示。
圖17 部分典型圖像采集信息及檢測(cè)結(jié)果
圖18 識(shí)別錯(cuò)誤和無法識(shí)別的圖像采集信息
從圖17可以看出,本模型具有較好的普適性,可以對(duì)采集到的大部分圖像信息進(jìn)行較好的識(shí)別,但仍存在一些不足,如圖18所示,在18a中,由于汽車前柵為垂直狀,加之圖像信息較模糊,從而無法較好地識(shí)別。18b中,將字母D識(shí)別成字母O,說明在英文字符識(shí)別層采用的模板不能夠較好地區(qū)分O和D,需要改變權(quán)值來達(dá)到較好的識(shí)別效果。266次測(cè)驗(yàn)結(jié)果如表1所示。從表1可以看出,車牌定位和車牌識(shí)別的準(zhǔn)確率都在98%以上,綜合正確率達(dá)到97.37%。
表1
本課題就車牌識(shí)別中的部分算法進(jìn)行相關(guān)研究工作,將投影法和小波變換結(jié)合,通過兩次定位,可以精準(zhǔn)的定位車牌位置,利用改進(jìn)的Otsu算法,在保證二值化效果的基礎(chǔ)上縮短計(jì)算時(shí)間,通過一維線性擬合來計(jì)算車牌傾斜角度方法簡(jiǎn)單效果好,最后利用BP神經(jīng)網(wǎng)絡(luò)模型對(duì)字符進(jìn)行識(shí)別,取得一定的優(yōu)化效果。下一步擬就本課題所研究的算法與監(jiān)控相機(jī)相連接,改進(jìn)該算法,使得算法可以產(chǎn)品化。同時(shí)就一幅抓拍圖像中的多個(gè)車牌識(shí)別開展相關(guān)研究工作。
[1]白璐.基于圖像處理的車牌識(shí)別系統(tǒng)的研究[D].長(zhǎng)安大學(xué),2010.
[2]張銀蘋,葛廣英.基干HALCON的車牌識(shí)別研究[J].現(xiàn)代電子技術(shù),2014.16:92-95.
[3]徐勤燕.復(fù)雜背景中基于紋理和顏色的車牌定位研究[D].東華大學(xué),2013.
[4]李軍成.利用1~2階分?jǐn)?shù)階微分掩模的邊緣檢測(cè)[J].計(jì)算機(jī)工程與應(yīng)用,2014.21:14-18.
[5]張吉斌.基于圖像處理及支持向量機(jī)的車牌識(shí)別技術(shù)研究[D].蘭州交通大學(xué),2013.
[6]金雨,李紅莉.基于LabVIEW和USB攝像頭的圖像采集與處理[J].現(xiàn)代電子技術(shù),2015.20:67-70.
[7]柴燕茹,馬巖.淺談BP人工神經(jīng)網(wǎng)絡(luò)[J].學(xué)理論,2008.22:39-40.
[8]李武林,郝玉潔.BP網(wǎng)絡(luò)隱節(jié)點(diǎn)數(shù)與計(jì)算復(fù)雜度的關(guān)系[J].成都信息工程學(xué)院學(xué)報(bào),2006.1:70-73.
Research on License Plate Recognition Technology Based on Artificial Neural Network
GU Gang1,SANG Si-jie2,DING Yao2
(1.ZhongBo Information Technology Reseach Institute Co.Ltd,Nanjing 210000;2.Nanjing University,Jinling College,Nanjing 210089)
The vehicle license plate recognition as a specific application of artificial intelligence,is becoming more and more mature,toward the direction of the development of the product,how to balance the accuracy of license plate recognition and intelligent real-time,is a hotspot in this field.This subject is based on the vehicle license plate image recognition technology and artificial intelligence research,proposes an improved Otus algorithm,the character information recognition of vehicle license plate can faster the accuracy and good real-time performance,and laid a foundation for the technology of products.
License Plate Recognition;BP Model;Otus;Simulation
1007-1423(2016)23-0075-06DOI:10.3969/j.issn.1007-1423.2016.23.018
顧剛(1975-),男,江蘇南京人,碩士,工程師,研究方向?yàn)閳D像處理
2016-05-26
2016-08-10
丁堯(1981-),男,江蘇南京人,碩士,高級(jí)工程師,研究方向?yàn)闄C(jī)器視覺尚思捷(1994-),男,江蘇淮安人,本科在讀,機(jī)電工程專業(yè)