智能交通系統(tǒng)是一個熱點(diǎn)研究領(lǐng)域,受到日益廣泛的關(guān)注。車牌識別系統(tǒng)(LPR)是計(jì)算機(jī)視覺、模式識別技術(shù)在智能交通領(lǐng)域的一個重要應(yīng)用,包括車牌定位、車牌字符分割、字符識別三部分。其中車牌定位是整個系統(tǒng)中的關(guān)鍵步驟。
目前車牌定位方法主要有:
(1)基于Hough變換的方法,分析車牌具有明顯的矩形邊框,利用Hough變換檢測區(qū)域邊界實(shí)現(xiàn)定位。
(2)基于邊緣檢測的方法,利用了車牌字符邊緣豐富的特征,結(jié)合數(shù)學(xué)形態(tài)學(xué)或區(qū)域生長方法實(shí)現(xiàn)牌照定位。
(3)基于神經(jīng)網(wǎng)絡(luò)的方法,利用圖像的顏色或紋理特征訓(xùn)練神經(jīng)網(wǎng)絡(luò),然后用訓(xùn)練好的分類器對圖像各個像素進(jìn)行分類,再對分類結(jié)果綜合,得到牌照的準(zhǔn)確定位。然而由于光照不均、污染等因素影響,可能使得牌照區(qū)域邊界不明顯或存在多個干擾區(qū)域,從而增加了準(zhǔn)確定位的難度。
要提高車牌定位的精度,應(yīng)充分利用他自身提供的信息,突出車牌區(qū)域而抑制非車牌區(qū)域。車牌區(qū)域有著豐富的紋理,尋找一種良好性能的分類器,凸現(xiàn)這種紋理特征,使他與其他區(qū)域區(qū)別開來。支持向量機(jī)(Support Vector Machine,SVM)正是這樣一種分類學(xué)習(xí)機(jī)制,建立在結(jié)構(gòu)風(fēng)險(xiǎn)最小化(Structural Risk Minimization,SRM)準(zhǔn)則之上,已經(jīng)在文本識別,人臉識別,紋理分類等模式識別領(lǐng)域取得了成功。
本文使用SVM機(jī)制自動定位車牌區(qū)域,首先對每幅訓(xùn)練圖像切分成若干個N×N大小的圖像子塊,把每個字塊分別標(biāo)注為車牌和非車牌區(qū)域兩類,提取子塊圖像的特征向量訓(xùn)練SVM分類器;然后使用該分類器對測試圖像中的各個像素進(jìn)行分類,最后通過后期處理結(jié)合車牌的先驗(yàn)知識實(shí)現(xiàn)車牌區(qū)域的定位。
2 SVM原理
SVM基于SRM準(zhǔn)則構(gòu)造最優(yōu)超平面,使每類數(shù)據(jù)之間間隔最大,同時保持分類誤差盡可能小。Cover定理指出:一個復(fù)雜的模式識別分類問題,在高維空間比低維空間更容易線性可分。實(shí)際上SVM實(shí)現(xiàn)了這樣的思想:通過某種事先選擇的非線性映射將向量x映射到一個高維特征空間,然后在這個空間中構(gòu)造最優(yōu)分類超平面。
對于兩類模式分類問題,在非線性可分的情況下,通過一個非線性變換φ:x→φ (x),將給定的模式數(shù)據(jù)映射到高維特征空間,再構(gòu)造分類超平面,表示為決策面:
?
考慮到兩類樣本離決策面都應(yīng)有一定距離,決策面應(yīng)滿足不等式約束:
?
完全滿足式(2)的超平面是不存在的??紤]到存在一些樣本不能被決策面正確分類,引入松弛變量ξi(≥0),約束條件式(2)變?yōu)椋?/p>
?
滿足要求的超平面不止一個,尋找最優(yōu)超平面可以歸結(jié)為二次規(guī)劃問題:
?
其中C被稱為懲罰因子,通過C可以在分類器的泛化能力和誤分率之間進(jìn)行折衷。利用拉格朗日函數(shù)求解可得優(yōu)化問題(4)的對偶形式,最大化函數(shù):
?
求解式(5)可以得到ai,代入式(7)可以確定ω,分類函數(shù)可表示為:
?
3 SVM定位車牌區(qū)域
車牌區(qū)域準(zhǔn)確定位是一種非線性可分的模式分類問題。
關(guān)鍵字:向量機(jī) 車牌定位
3.1 特征提取
利用SVM自身結(jié)構(gòu)可以實(shí)現(xiàn)有效的特征提取,選擇直接提取像素灰度特征。圖像像素點(diǎn)之間不是孤立的,相互之間存在著相關(guān)性,體現(xiàn)了一種紋理??梢酝ㄟ^提取一些特定像素的灰度值作為整幅圖像的特征,同時減少了計(jì)算量。首先將每幅圖像切割成若干個N×N子塊,再將每一子塊標(biāo)注為牌照區(qū)域(+1)和非牌照區(qū)域(-1)兩類,然后使用圖1所示“米”字型模型提取像素灰度值(圖中陰影為要提取的像素點(diǎn))。這樣每幅子圖的特征維數(shù)由N×N減少到4N-3,提高了訓(xùn)練和分類速度。
3.2 SVM分類器
SVM分類器分為三層結(jié)構(gòu),結(jié)構(gòu)示意見圖2。輸入層的維數(shù)為子圖的特征維數(shù)4N-3,輸入值是灰度值。隱含層的維數(shù)是由訓(xùn)練獲得的支持向量決定,即由訓(xùn)練階段自動獲得,而且二次規(guī)劃在凸集下的解是全局最優(yōu)解,避免陷入局部最小。隱含層計(jì)算輸入向量與支持向量之間的內(nèi)積,完成非線性映射,通過核函數(shù)一步來實(shí)現(xiàn)的。輸出層的輸出就是對隱層的輸出與權(quán)值ωi的乘積求和,權(quán)值aiyi也是在訓(xùn)練中獲得的。
?
SVM中研究最多的核函數(shù)主要有三類:多項(xiàng)式、徑向基函數(shù)(RBF)和多層Sigmoid神經(jīng)網(wǎng)絡(luò)。實(shí)驗(yàn)中使用的是多項(xiàng)式核函數(shù),形式為:
?
作為一種基于樣本學(xué)習(xí)的方法,我們希望訓(xùn)練樣本集盡可能地大,以獲得比較充分的代表性。然而考慮到實(shí)際的限制,這個尺寸又必須是適中的。因此,問題就是如何構(gòu)造一個全面又可行的訓(xùn)練樣本集。對于車牌定位問題,所有包含牌照區(qū)域的圖像可以作為正樣本,困難點(diǎn)是收集負(fù)樣本,因?yàn)閷?shí)際上存在太多的不包含牌照的圖像可以作為負(fù)樣本。如何在這些圖像中選取具有代表性的子集,實(shí)驗(yàn)中采用了一種叫“自舉”(bootstrap)的方法,他已被Sung和Poggio成功地應(yīng)用于人臉識別。主要思想就是一些負(fù)樣本(非牌照)是在訓(xùn)練中獲得而不是在訓(xùn)練以前,具體實(shí)現(xiàn)步驟如下:
(1)建立包含正樣本(牌照區(qū)域)和負(fù)樣本(非牌照區(qū)域)的訓(xùn)練集合N1;
(2)用N1訓(xùn)練SVM;
(3)用訓(xùn)練好的SVM分類器對隨機(jī)選取的非牌照樣本進(jìn)行分類測試,收集那些被錯分為牌照的樣本;
(4)隨機(jī)選取20%的錯分類樣本加入到訓(xùn)練集N1;
(5)重復(fù)(2)~(4)步直至沒有再發(fā)現(xiàn)錯分的樣本;
(6)使用最終獲得的N1訓(xùn)練SVM。
關(guān)鍵字:向量機(jī) 車牌定位
圖3顯示了一些用于訓(xùn)練的樣本。
?
最后,用訓(xùn)練好的SVM分類器掃描全圖,根據(jù)輸出類別,對每個N×N小窗口的中心像素做出判斷。如果輸出+1就認(rèn)為他是牌照區(qū)域,賦值為255;否則,則認(rèn)為他不是牌照區(qū)域,賦值為0。如圖4(a)所示。
SVM通過訓(xùn)練選擇對分類超平面起決定作用的支持向量,就像選擇了一組特定的濾波器,突出了牌照區(qū)域。在SVM分類器中濾波器的數(shù)目和系數(shù)是在訓(xùn)練中自動獲得的。
3.3 分割牌照區(qū)域
對每個像素做出分類判斷后,得到一個二值圖像,還必須進(jìn)行一些處理,其目的是合并感興趣區(qū)域和去除噪聲。本文采用數(shù)學(xué)形態(tài)學(xué)對二值圖像進(jìn)行處理,在此基礎(chǔ)之上再做水平和垂直兩個方向的投影,最后,根據(jù)投影并結(jié)合車牌自身的一些先驗(yàn)知識,如長寬比、車牌的字符數(shù)、字符間距,實(shí)現(xiàn)牌照區(qū)域的定位。分割過程主要包括以下幾個步驟:
(1)首先訓(xùn)練SVM分類器,用他掃描圖像,對像素進(jìn)行分類,獲得分類后的二值圖像。
(2)應(yīng)用數(shù)學(xué)形態(tài)學(xué)方法對分類結(jié)果所得圖像進(jìn)行處理、去除噪聲。
(3)再對圖像做水平投影和高斯迭代平滑處理。
(4)確定牌照水平區(qū)域:在平滑處理后的水平投影圖中,獲取峰值點(diǎn)以及與這些峰值點(diǎn)最接近的左右側(cè)谷值點(diǎn),由左右側(cè)谷值點(diǎn)確定一個水平區(qū)域的高度g,峰值大于車牌最小寬度F時,該區(qū)域是車牌可能所在的水平區(qū)域。其中:F=Rmin×g,Rmin為標(biāo)準(zhǔn)車牌寬高比的最小值。
(5)確定牌照垂直區(qū)域:對于車牌可能所在的水平區(qū)域進(jìn)行垂直投影(同樣采取高斯疊代平滑),由垂直投影圖將水平區(qū)域分成一塊塊較小的區(qū)域,計(jì)算出最大字符間距D,將間距小于等于D的區(qū)域合并。其中:D=Tmax×Rmax×g,Rmax為標(biāo)準(zhǔn)車牌寬高比的最大值,Tmax為標(biāo)準(zhǔn)車牌最大字符間距與車牌寬度之比。合并后區(qū)域的寬高比大于Rmin的為車牌可能所在的區(qū)域。
(6)牌照的確定與分割:根據(jù)標(biāo)準(zhǔn)車牌的字符個數(shù)和筆劃數(shù)的范圍,檢測各區(qū)域水平方向上的跳變化次數(shù),若在該范圍內(nèi)則認(rèn)為該區(qū)域?yàn)檐嚺扑诘膮^(qū)域,然后在含有牌照的原圖中切出與(4)中相應(yīng)的區(qū)域。
4 實(shí)驗(yàn)結(jié)果分析
實(shí)驗(yàn)收集了200幅車牌圖像,任意選取100幅作為訓(xùn)練樣本,還收集了一些不包含車牌的圖像作為自舉訓(xùn)練方法的樣本。
程序使用Microsoft VC++6.0編寫。訓(xùn)練和識別所用的圖像子塊尺寸N取15,特征數(shù)據(jù)歸一化在0~1之間。核函數(shù)多項(xiàng)式的次數(shù)d的值取5,SVM的懲罰因子C取100,訓(xùn)練SVM的算法采用的是JohnC.Platt提出的序列最小優(yōu)化算法。剩余100幅圖像作為測試樣本,其中能正確定位的有93幅,有7幅沒有正確定位。引起錯誤的原因主要有圖像中相似的字符區(qū)域過多或者圖像本身過于模糊,相似區(qū)域過多干擾了牌照區(qū)域,而圖像模糊則損失了牌照區(qū)域有用的紋理信息。實(shí)驗(yàn)結(jié)果表明,SVM在小樣本下可以獲得較好的識別效果。
?
?
圖4給出了圖3(b)中示例圖像車牌定位過程,圖4(a)為經(jīng)過SVM分類輸出的二值圖,圖4(b)為數(shù)學(xué)形態(tài)學(xué)濾波處理后的結(jié)果,圖4(c)為最終車牌定位結(jié)果。
5 結(jié) 語
車牌定位是一種非線性可分問題,牌照區(qū)域包含了豐富的紋理信息,利用這個特征可以實(shí)現(xiàn)牌照區(qū)域的定位。本文使用SVM對含牌照的汽車圖像中像素進(jìn)行分類,再經(jīng)過數(shù)學(xué)形態(tài)學(xué)處理并結(jié)合牌照先驗(yàn)知識實(shí)現(xiàn)定位。實(shí)驗(yàn)表明該方法取得了較好的定位效果。
評論
查看更多