本發(fā)明涉及計(jì)算機(jī)視覺領(lǐng)域,特指一種基于積分特征通道與灰度投影的車牌識別系統(tǒng)。
背景技術(shù):
隨著現(xiàn)代化交通的發(fā)展,車輛牌照自動識別技術(shù)越來越受到人們的重視,是近年來計(jì)算機(jī)視覺與模式識別技術(shù)在智能交通領(lǐng)域的重要研究課題之一。車輛牌照自動識別系統(tǒng)可用于公路收費(fèi)站、停車場、十字路口等場所的車輛管理,對于道路交通和停車場車輛管理具有重要的促進(jìn)作用。
車牌識別技術(shù)包括車牌定位、字符分割和字符識別3個(gè)基本環(huán)節(jié),其中車牌定位是字符分割和字符識別的前提,而車牌字符分割是車牌識別的基礎(chǔ)。
車牌識別系統(tǒng)在國內(nèi)外研究都有一段時(shí)間了,國外的車牌識別系統(tǒng)有一定的應(yīng)用,但是國內(nèi)的車牌識別系統(tǒng)總體上來說還處于實(shí)驗(yàn)室階段,離實(shí)際的工程應(yīng)用還有一段距離。其原因是因?yàn)閲鴥?nèi)的車牌不統(tǒng)一、漢字識別難度大等因素。但車牌其自身的特點(diǎn)為我們研究車牌識別系統(tǒng)提供了突破口。
現(xiàn)實(shí)中,通過由本公司提供的部分監(jiān)控系統(tǒng)數(shù)據(jù)源可以看出,在實(shí)際路口采集所得的圖片與停車場和小區(qū)中采集的圖片有很大的不同。小區(qū)中的圖片背景單一,光照均勻,分辨率高。與此不同的是,在十字路口采集的圖片背景復(fù)雜、光照不均、分辨率低、車牌舊、車牌臟等,這些都給車牌識別帶來了很大的困難,針對這些實(shí)際的特定問題,本發(fā)明提出了一種車牌自動定位、分割以及識別系統(tǒng)。
本系統(tǒng)算法車牌字符讀取可靠性高,識別度好,魯棒性好,同時(shí)步驟計(jì)算簡單,能保持高效率,實(shí)時(shí)性也能滿足需求。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題在于:針對現(xiàn)行車牌識別系統(tǒng)存在的這些特定難點(diǎn)問題,為了提高監(jiān)控系統(tǒng)的車牌識別的準(zhǔn)確程度,并使其滿足實(shí)時(shí)性需求,提出一種基于積分通道特征和灰度投影的車牌識別系統(tǒng),其具體技術(shù)方案如下:
包括以下步驟:
S1)車牌定位;
S1.1)訓(xùn)練車牌樣本特征提取及特征組織;
S1.2)車牌檢測定位;
S2)車牌字符分割;
S2.1)去除輸入車牌區(qū)域圖像的車牌邊框;
S2.2)車牌字符的分割;
S3)車牌字符分割后的字符識別并輸出。
作為本發(fā)明技術(shù)方案的進(jìn)一步優(yōu)化,
所述步驟S1.1)具體包括:
S1.1.1)手動獲取原始車牌圖像,手動摳取出任意正常國標(biāo)車牌;
S1.1.2)對摳取出的車牌圖像提取積分通道特征;
S1.1.3)基于Adaboost算法訓(xùn)練檢測器;
所述步驟S1.2)具體包括:
S1.2.1)對目標(biāo)圖像進(jìn)行掃描,獲取初定位車牌圖像;
S1.2.2)將檢測器輸出的圖像進(jìn)行非極大值抑制處理后的初定位結(jié)果進(jìn)行傾斜校正;
S1.2.3)將輸出的二次定位后的車牌輸入檢測器,得出最終定位車牌結(jié)果;
所述步驟S2.1)具體包括:
S2.1.1)車牌上下邊框的去除;
S2.1.2)車牌左右邊框的去除;
所述步驟S2.2)具體包括:
S2.2.1)對車牌圖像進(jìn)行字符的對比度增強(qiáng);
S2.2.2)對前面增強(qiáng)的車牌圖像,按列累加圖像的像素值,得到車牌的投影曲線,并采用濾波平滑所述投影曲線;
S2.2.3)采用投影法進(jìn)行字符分割;
所述步驟S3)具體包括:
基于聯(lián)合HOG特征的車牌字符識別算法;對漢字和英文數(shù)字采用不同的分類器,對漢字和英文數(shù)字分別提取特征;首先確定字符的分類器,然后分別提取漢字、數(shù)字字母的灰度方向梯度直方圖(HOG)特征、二值HOG特征、16值HOG特征,將提取的特征組合成聯(lián)合HOG特征,將得到的聯(lián)合HOG特征用核主成分分析法進(jìn)行降維,最后將漢字和數(shù)字字母的聯(lián)合HOG特征送入支持向量機(jī)進(jìn)行訓(xùn)練和預(yù)測,將漢字和數(shù)字字母的識別結(jié)果進(jìn)行組合,得到最終的車牌字符識別結(jié)果。
作為本發(fā)明技術(shù)方案的進(jìn)一步優(yōu)化,所述步驟S1.1.2)中,積分通道特征提取為三個(gè)通道特征提取,用以下公式分別計(jì)算通道特征:
S1.1.2.1)LUV通道的建立,將圖像從RGB顏色空間轉(zhuǎn)為LUV顏色空間,RGB轉(zhuǎn)LUV通道公式如下:
最后計(jì)算得到LUV色彩空間中的L、U、V通道;
S1.1.2.2)梯度幅值通道的建立,一副圖像中每個(gè)像素點(diǎn)具有八領(lǐng)域和四個(gè)邊緣檢測方向,采用在窗口中分別計(jì)算X方向、Y方向、Z方向的一階偏導(dǎo)有限差分均值來確定像素點(diǎn)的梯度幅值,四個(gè)方向梯度幅值計(jì)算公式如下:
M[i,j]=(|Px[i,j]|+|P45°[i,j]|+|Py[i,j]+|P135°[i,j]|)
其中I[i,j]是坐標(biāo)為3×3窗口中心像素點(diǎn)的灰度值,M[i,j]為中心像素點(diǎn)的梯度幅值,由上述公式最后得到整幅圖像的梯度幅值圖;
S1.1.2.3)梯度直方圖通道的建立,梯度直方圖特征提取過程步驟如下:
一、以圖像I[i,j]為中心取3×3的像素鄰域作為采樣窗口;
二、計(jì)算該像素點(diǎn)的梯度方向θ[i,j]和梯度幅值M[i,j],
三、將梯度方向分為6個(gè)方向,即將180°平均分成6份,平均間隔30°;按照橢圓圈的高斯加權(quán)范圍將該像素鄰域上所有點(diǎn)梯度方向角度相同像素點(diǎn)梯度幅值相加;
四、最后統(tǒng)計(jì)6個(gè)方向上的梯度幅值累加和,得到整幅圖像6個(gè)方向上的梯度幅值圖。
作為本發(fā)明技術(shù)方案的進(jìn)一步優(yōu)化,所述步驟S1.1.3)包括:
訓(xùn)練階段,利用Adaboost對提取的積分通道特征訓(xùn)練出強(qiáng)分類器;從大量特征中挑選出最優(yōu)特征并制作成弱分類器,再通過弱分類器集成獲得高精度的強(qiáng)分類器;
弱分類器的定義為:
其中,fj表示一個(gè)特征,pj表示不等式方向,θj表示閾值;
判別階段,計(jì)算檢測出定位車牌窗口的積分通道特征,運(yùn)用強(qiáng)分類器進(jìn)行“打分”,即是判別車牌位置的自信度,最后存儲一段視頻中分?jǐn)?shù)最高的那一幀或者幾幀圖像;
具體訓(xùn)練算法步驟如下:
(1)、給定n個(gè)樣本圖像,xi是輸入樣本圖像,yi是類別標(biāo)志,其中yi=0表示為負(fù)樣本,yi=1表示為正樣本;
(2)、初始化權(quán)重:
其中m和l分別為非正確車牌樣本和正確車牌樣本的數(shù)量,n=m+l;
(3)、For t=1,2,3,…,T
歸一化權(quán)重:其中ωt為統(tǒng)計(jì)分布;
隨機(jī)選擇積分通道特征j:
隨機(jī)選擇通道索引bink(k=1,2,…,10);
隨機(jī)選擇矩形區(qū)域Rectj并計(jì)算像素值之和;
對每個(gè)特征j,訓(xùn)練一個(gè)弱分類器hj,計(jì)算相應(yīng)的ωt的錯(cuò)誤率:εj=Σiωi|hj(xi)-yi|;
選擇最小錯(cuò)誤率εt的弱分類器ht;
更新權(quán)重:其中,當(dāng)xi被正確分類時(shí),ei=0,反之,ei=1;
(4)、最終強(qiáng)分類器為h(x):
其中,
作為本發(fā)明技術(shù)方案的進(jìn)一步優(yōu)化,所述步驟S1.2.1)中,根據(jù)國內(nèi)車牌的固定比例,設(shè)定一個(gè)固定大小的滑窗,從從獲取視頻圖像頂端開始進(jìn)行逐一掃描,將每次掃描截取的圖像進(jìn)行積分通道特征計(jì)算,與AdaBoost算法訓(xùn)練出的強(qiáng)檢測器進(jìn)行比對,得到相似度最高的圖像區(qū)域,即初步判定為車牌位置,截取該區(qū)域初定位圖像并輸出檢測器;
所述步驟S1.2.2)中,采用基于貪心策略的非極大值抑制方法,所述非極大值抑制方法步驟如下:
S1.2.2.1)將初始檢測窗口按照檢測分?jǐn)?shù)從高到低排序,相似度越高,分?jǐn)?shù)越高;
S1.2.2.2)將第1個(gè)初始檢測窗口作為當(dāng)前的抑制窗口;
S1.2.2.3)非極大值抑制;將所有檢測分?jǐn)?shù)比當(dāng)前抑制窗口低的初始窗口作為被抑制窗口;計(jì)算當(dāng)前抑制窗口與被抑制窗口的重合面積比率:面積的交集/面積的并集;剔除重合面積比率高于設(shè)定閾值的窗口;
S1.2.2.4)如果只剩最后一個(gè)初始檢測窗口則結(jié)束,否則按照排好的順序,取下一個(gè)未被抑制的窗口作為抑制窗口,轉(zhuǎn)到步驟S1.2.1.3)。
作為本發(fā)明技術(shù)方案的進(jìn)一步優(yōu)化,所述步驟S2.2.3)采用投影法進(jìn)行字符分割中,具體包括如下步驟:
S2.2.3.1):根據(jù)車牌的灰度投影曲線圖可得,車牌后面最多出現(xiàn)五個(gè)雙峰結(jié)構(gòu),故搜索出前五個(gè)最大波谷點(diǎn),然后判斷該前五個(gè)最大波谷點(diǎn)是否為雙峰結(jié)構(gòu)中的波谷點(diǎn),如果是,則將該雙峰結(jié)構(gòu)的起止位置記下;
S2.2.3.2):確定車牌字符寬度characterwidth;如果步驟S2.3.1)檢測到了雙峰結(jié)構(gòu),則字符寬度就取為檢測到的所有雙峰結(jié)構(gòu)的平均值,否則字符寬度就取前3個(gè)單峰寬度中的最大值;
S2.2.3.3):設(shè)置字符起始點(diǎn)為第二字符和第三字符的分割點(diǎn),設(shè)置結(jié)束點(diǎn)為車牌最后一個(gè)波谷點(diǎn);如果在步驟S2.2.3.1)中檢測到了雙峰結(jié)構(gòu)則進(jìn)行步驟S2.2.3.4),否則進(jìn)行步驟S2.2.3.5);
S2.2.3.4):設(shè)置字符臨時(shí)分割段起始點(diǎn)為字符起始點(diǎn),字符臨時(shí)分割段終點(diǎn)為一個(gè)雙峰結(jié)構(gòu)起始位置,然后在字符臨時(shí)分割段里進(jìn)行檢測,如果該字符臨時(shí)分割段里有一個(gè)峰結(jié)構(gòu),則該峰結(jié)構(gòu)就單獨(dú)為一個(gè)字符,如果該字符臨時(shí)分割段里有兩個(gè)峰結(jié)構(gòu),則先判斷這兩個(gè)峰結(jié)構(gòu)是一個(gè)雙峰字符還是兩個(gè)單峰字符,具體判斷規(guī)則就利用這兩個(gè)峰結(jié)構(gòu)的寬度,以及該寬度和字符寬度進(jìn)行比較;如果這兩個(gè)峰結(jié)構(gòu)寬度之和小于字符寬度的1.2倍且這兩個(gè)峰結(jié)構(gòu)寬度相差很小,則這兩個(gè)峰結(jié)構(gòu)為一個(gè)雙峰字符的投影,反之為兩個(gè)單峰字符,且可以肯定兩個(gè)單峰字符前面一個(gè)峰結(jié)構(gòu)就是一個(gè)字符,將其前面的一個(gè)峰結(jié)構(gòu)分割出來然后更新字符臨時(shí)分割段如下:將字符臨時(shí)分割段的起點(diǎn)更新到被分割出來的峰后面,字符臨時(shí)分割段終點(diǎn)不變,但是如果此時(shí)字符臨時(shí)分割段的起點(diǎn)等于終點(diǎn)時(shí)則將其起點(diǎn)更新到先前的雙峰結(jié)構(gòu)的終止位置,并將臨時(shí)分割段的終點(diǎn)更新到下一個(gè)雙峰結(jié)構(gòu)的起點(diǎn),如果后面沒有雙峰結(jié)構(gòu)了則將臨時(shí)分割段的終點(diǎn)更新為字符結(jié)束點(diǎn),然后重復(fù)步驟S2.2.3.4)直到分割到字符結(jié)束點(diǎn)為止;
S2.2.3.5):從字符起始點(diǎn)開始分割直到分割出5個(gè)字符;在分割中需要檢測相鄰的兩個(gè)峰結(jié)構(gòu)是不是一個(gè)字符的雙峰曲線,檢測所利用的方法和步驟S2.2.3.4)中相同,利用兩個(gè)峰的寬度和該寬度與字符寬度之間的關(guān)系進(jìn)行判斷;
S2.2.3.6):根據(jù)分割出的后面五個(gè)字符來分割前面兩個(gè)字符;首先將分割出來的后面五個(gè)字符中的最大寬度作為前面兩個(gè)字符的寬度;前面兩個(gè)字符為字母或者漢字,使用后面五個(gè)字符中的最大寬度作為前面字符的寬度;分割前面兩個(gè)字符的方法為:從第二字符和第三字符的分割點(diǎn)向前移動字符寬度個(gè)像素,然后將離該第二字符和第三字符的分割點(diǎn)的最近一個(gè)波谷值作為車牌第一字符和第二字符的分割點(diǎn),利用同樣方法也可以確定第一個(gè)字符的開始位置;
S2.2.3.7):對分割出來的字符序列進(jìn)行檢測,看該字符序列是否符合車牌字符序列的特征,該特征可以用下面表達(dá)式來表示,假設(shè)dis1為前面兩個(gè)字符的寬度向量,dis2為后面五個(gè)字符的度向量,width為車牌寬度,height為車牌高度,則一個(gè)合理的車牌字符序列必須滿足下面的表達(dá)式:
min(min(dis1),min(dis2))>width/10
max(dis2)/width/5
height/min(dis1)<3
根據(jù)上述表達(dá)式從車牌區(qū)域中分割出字符序列。
相對于現(xiàn)有技術(shù)而言,本發(fā)明具有以下有益效果:
本發(fā)明有效克服了采集得到的圖像背景復(fù)雜、光照不均、分辨率低、車牌舊、車牌臟等在圖像處理中的困難,本發(fā)明提出的識別方法,車牌字符讀取可靠性高,識別度好,魯棒性好,同時(shí)步驟計(jì)算簡單,能保持高效率,實(shí)時(shí)性也能滿足需求對于道路交通和停車場車輛管理具有重要的促進(jìn)作用。
附圖說明
圖1是本發(fā)明實(shí)施例所述整體算法流程圖;
圖2是本發(fā)明實(shí)施例所述車牌圖像三種積分特征通道圖像;
圖3是本發(fā)明實(shí)施例所述四個(gè)方向梯度算子示意圖;
圖4是本發(fā)明實(shí)施例所述像素點(diǎn)方向示意圖;
圖5是本發(fā)明實(shí)施例所述霍夫變換傾斜校正的車牌圖像;
圖6是本發(fā)明實(shí)施例所述車牌圖像增強(qiáng)算法效果圖;
圖7是本發(fā)明實(shí)施例所述車牌分割算法流程圖;
圖8是本發(fā)明實(shí)施例所述車牌投影曲線的濾波前后的效果圖;
圖9是本發(fā)明實(shí)施例所述基于聯(lián)合HOG的車牌識別流程圖。
具體實(shí)施方式
以基于積分通道特征和灰度投影的車牌識別系統(tǒng)為例,結(jié)合附圖對本發(fā)明做進(jìn)一步詳細(xì)說明。
S1.車牌定位;
S1.1訓(xùn)練車牌樣本特征提取及特征組織;
S1.1.1手動摳取出任意正常國標(biāo)車牌;
S1.1.2對摳取出的車牌圖像進(jìn)行積分通道特征提??;
積分通道特征由Dollár P等人在2009年提出,最早通常用于行人檢測,是目前評估效果較好的檢測算子。其基本思想是通過對輸入圖形進(jìn)行各種線性和非線性的變換,圖像的很多常用特征,例如局部求和、直方圖、Haar以及它們的變種,可以借助積分圖來快速、高效地計(jì)算。給定一個(gè)輸入圖像矩陣I,其對應(yīng)的通道指的是原始輸入圖像的某種輸出響應(yīng)。對于灰度圖,其對應(yīng)的通道矩陣C=I,即原圖本身;
對于彩圖,其每個(gè)顏色通道都對應(yīng)一個(gè)通道。其他類似的通道可以通過各種線性和非線性的方法計(jì)算得到。令Ω代表圖像的某種通道計(jì)算函數(shù),則對應(yīng)的通道C=Ω(I)。
在計(jì)算中,不同的變換可以形成不同的通道類型,本發(fā)明中選取3種不同的通道作為積分通道特征,以保證其準(zhǔn)確性。其中LUV顏色通道能夠很好地描述車牌亮度及色度變化,梯度幅值通道很好地反映了車牌的輪廓,梯度直方圖通道則從不同梯度方向上綜合對車牌位置姿態(tài)變化進(jìn)行描述。3種通道變換如圖2所示。
S1.1.2.1 LUV通道的建立
在圖像處理中,LUV色彩空間(全稱CIE1976(L*,U*,V*))優(yōu)于RGB色彩空間。LUV色彩空間的目的是建立與人的視覺統(tǒng)一的色彩空間,具備一致性和均勻性且各色彩分量之間不相關(guān)。在LUV色彩空間中,L表示亮度,U、V表示色度。一般圖像顏色都是RGB顏色空間的,通過下面的公式可以轉(zhuǎn)換到LUV顏色空間中。
最后計(jì)算得到LUV色彩空間中的L、U、V通道。
S1.1.2.2梯度幅值通道
梯度幅值是一種用于圖像邊緣檢測的描述方法。一幅圖像中每個(gè)像素點(diǎn)具有八鄰域以及四個(gè)邊緣檢測方向。為了能夠在像素點(diǎn)X方向、Y方向、Z方向上檢測邊緣,本文使用在窗口中分別計(jì)算X方向Y方向、Z方向的一階偏導(dǎo)數(shù)有限差分均值來確定像素點(diǎn)的梯度幅值的方法。四個(gè)方向的梯度算子分別為圖3所示。其中I[i,j]是坐標(biāo)為3×3窗口中心像素點(diǎn)的灰度值,M[i,j]為中心像素點(diǎn)的梯度幅值,其計(jì)算公式如下所示,對應(yīng)四個(gè)方向上的計(jì)算公式為:
M[i,j]=(IPx[i,j]|+|P45°[i,j]|+|Py[i,j]|+|P135°[i,j]|)
由上述公式最后得到整幅圖像的梯度幅值圖。
S1.1.2.3梯度直方圖通道
梯度直方圖思想來源于梯度方向直方圖(Histograms of Oriented Gradients,HOG)是2005年Dalal等人將它用于行人識別而得名。HOG作為一種局部特征描述子,對方向、尺度、光照不敏感。后來Deniz等人將HOG成功應(yīng)用于人臉識別,得到了比較好的效果。梯度直方圖特征提取過程如下:
步驟1以圖像I[i,j]為中心取3×3的像素鄰域作為采樣窗口。
步驟2計(jì)算該像素點(diǎn)的梯度方向θ[i,j]和梯度幅值M[i,j]。
θ[i,j]=arctan(I[i,j+1]-I[i,j-1])/I[i+1,j]-I[i-1,j]
如圖4所示,箭頭代表該像素點(diǎn)的方向。
步驟3將梯度方向分為6個(gè)方向,即將180°平均分成6份,平均間隔30°。按照橢圓圈的高斯加權(quán)范圍將該像素鄰域上所有點(diǎn)梯度方向角度相同像素點(diǎn)梯度幅值相加。
步驟4最后統(tǒng)計(jì)6個(gè)方向上的梯度幅值累加和,得到整幅圖像6個(gè)方向上的梯度幅值圖。
最后得到的10個(gè)通道的圖像如圖2所示。
S1.1.3基于Adaboost算法訓(xùn)練檢測器
訓(xùn)練階段,利用Adaboost對提取的積分通道特征訓(xùn)練出強(qiáng)分類器,在判別階段,計(jì)算檢測出定位車牌窗口的積分通道特征,運(yùn)用強(qiáng)分類器進(jìn)行“打分”,即是判別車牌位置的自信度,自信度是識別的時(shí)候系統(tǒng)可信程度,最后存儲一段視頻中分?jǐn)?shù)最高的那一幀或者幾幀圖像。
AdaBoost算法由Schapire、Freund等人于1996年提出,其實(shí)質(zhì)是弱分類器的分類學(xué)習(xí)過程,是集成機(jī)器學(xué)習(xí)方法的一種,具有計(jì)算效率高、調(diào)節(jié)參數(shù)少、針對弱分類器的構(gòu)造兼容性強(qiáng),且對樣本先驗(yàn)知識和數(shù)據(jù)格式要求低等優(yōu)點(diǎn),因此,得到廣泛推廣。AdaBoost中每個(gè)特征都對應(yīng)一個(gè)弱分類器,但并不是每一個(gè)特征都能很好地描述前景目標(biāo)的特點(diǎn)。如何從大量特征中挑選出最優(yōu)特征并制作成弱分類器,再通過弱分類器集成,最終獲得高精度的強(qiáng)分類器,是AdaBoost算法訓(xùn)練過程所要解決的關(guān)鍵問題。
弱分類器的定義為:
其中,fj表示一個(gè)特征,pj表示不等式方向,θj表示閾值。
S1.1.3.1具體訓(xùn)練算法
給定n個(gè)樣本圖像,xi是輸入樣本圖像,yi是類別標(biāo)志,其中yi=0表示為負(fù)樣本,yi=1表示為正樣本。
初始化權(quán)重:
其中m和l分別為非正確車牌樣本和正確車牌樣本的數(shù)量,n=m+l。
(1)For t=1,2,3,…,T
歸一化權(quán)重:其中ωt為統(tǒng)計(jì)分布。
隨機(jī)選擇積分通道特征j:
隨機(jī)選擇通道索引bink(k=1,2,…,10);
隨機(jī)選擇矩形區(qū)域Rectj并計(jì)算像素值之和
對每個(gè)特征j,訓(xùn)練一個(gè)弱分類器hj,計(jì)算相應(yīng)的ωt的錯(cuò)誤率:εj=Σiωi|hj(xi)-yi|
選擇最小錯(cuò)誤率εt的弱分類器ht。
更新權(quán)重:其中,當(dāng)xi被正確分類時(shí),ei=0,反之,ei=1;
最終強(qiáng)分類器為h(x):
其中,
S1.2.車牌的檢測定位;
S1.2.1用滑窗法對目標(biāo)圖像進(jìn)行掃描,獲取初定位車牌圖像;
本發(fā)明方法根據(jù)國內(nèi)車牌的固定比例,設(shè)定一個(gè)固定大小的滑窗,從獲取視頻圖像頂端開始進(jìn)行逐一掃描,為了提高掃描準(zhǔn)確度,通常設(shè)置滑窗步長為4個(gè)像素,將每次掃描截取的圖像進(jìn)行積分通道特征計(jì)算,與AdaBoost算法訓(xùn)練出的強(qiáng)檢測器進(jìn)行比對,得到得分最高的(即相似度最高的)圖像區(qū)域,即初步判定為車牌位置,截取該圖像區(qū)域初定位圖像并輸出檢測器。
S1.2.2將檢測器輸出的圖像進(jìn)行非極大值抑制處理后的初定位結(jié)果進(jìn)行基于霍夫變換的傾斜校正得到二次定位后的車牌圖像;
非極大值抑制在物體檢測中應(yīng)用十分廣泛,主要目的是為了消除多余干擾因素,找到最佳的物體檢測的位置。非極大值抑制是檢測的后處理過程,是關(guān)鍵環(huán)節(jié)之一。
啟發(fā)式窗口融合算法對非重合目標(biāo)檢測效果很好,但對于車輛車牌檢測并不適合。啟發(fā)式窗口融合算法,將初始檢測窗口劃分為若干個(gè)不重合的子集,然后計(jì)算每個(gè)子集的中心,最后每個(gè)子集只保留一個(gè)檢測窗口,顯然該算法容易造成大量漏檢。
Dalal等提出了均值漂移非極大值抑制,這種方法不僅計(jì)算復(fù)雜,需要將檢測窗口在3維空間(橫坐標(biāo),縱坐標(biāo),尺度)表示,檢測分?jǐn)?shù)轉(zhuǎn)換,計(jì)算不確定性矩陣,迭代優(yōu)化,而且還需要調(diào)整很多與檢測器的步長等相關(guān)聯(lián)的參數(shù),因此,目前較少使用。
當(dāng)前,大多數(shù)的目標(biāo)檢測普遍使用基于貪心策略的非極大值抑制算法,因?yàn)樗唵胃咝?,主要步驟如下:
(1)將初始檢測窗口按照檢測分?jǐn)?shù)從高到低排序;
(2)將第1個(gè)初始檢測窗口作為當(dāng)前的抑制窗口;
(3)非極大值抑制。將所有檢測分?jǐn)?shù)比當(dāng)前抑制窗口低的初始窗口作為被抑制窗口。計(jì)算當(dāng)前抑制窗口與被抑制窗口的重合面積比率:面積的交集/面積的并集。剔除重合面積比率高于設(shè)定閾值的窗口;
(4)如果只剩最后一個(gè)初始檢測窗口則結(jié)束,否則按照排好的順序,取下一個(gè)未被抑制的窗口作為抑制窗口,轉(zhuǎn)到步驟(3)。
本發(fā)明同樣使用的是簡單高效的基于貪心策略的非極大值抑制算法。經(jīng)過非極大值抑制處理后的車牌圖像再進(jìn)行基于霍夫變換的傾斜校正。
霍夫變換是一種強(qiáng)有力的特征提取方法,它利用局部圖像信息有效的積累所有可能的模型實(shí)例的依據(jù),這使得它既能方便的從外部數(shù)據(jù)中獲得額外的信息,又能敏銳的從只有一部分的實(shí)例中呈現(xiàn)出有效信息?;舴蜃儞Q普遍應(yīng)用在計(jì)算機(jī)視覺中形狀,位置,幾何變換參數(shù)的判斷中。自霍夫變換提出以來,其得到了廣泛的應(yīng)用。近些年,專家學(xué)者們對霍夫變換的理論性質(zhì)與應(yīng)用方法又進(jìn)行了進(jìn)一步的探討?;舴蜃儞Q作為一種有效的識別直線的算法,具有良好的抗干擾性及魯棒性。
霍夫變換方法包含一個(gè)從圖像空間中的特征到參數(shù)空間中點(diǎn)的集合的映射。每一個(gè)參數(shù)空間中的點(diǎn)表征著圖像空間中模型的一個(gè)實(shí)例,圖像特征利用一個(gè)函數(shù)被映射到參數(shù)空間當(dāng)中去,這個(gè)函數(shù)產(chǎn)生能夠兼容觀察到的圖像特征與假設(shè)的模型的所有的參數(shù)組合。每一個(gè)圖像特征將在多維的參數(shù)空間中產(chǎn)生一個(gè)不同的平面,但是由所有圖像特征產(chǎn)生的屬于同一個(gè)模型的實(shí)例的一切平面都會相交在描繪共同的實(shí)例的點(diǎn)。霍夫變換的根本是產(chǎn)生這些平面并且識別與之相交的參數(shù)點(diǎn)。
經(jīng)過基于霍夫變換的傾斜校正后的車牌圖像為系統(tǒng)二次定位后的圖像?;舴蜃儞Q傾斜校正的車牌圖像示例如圖5所示。
S1.2.3將輸出的二次定位后的車牌輸入強(qiáng)檢測器,得出最終定位車牌結(jié)果。
將經(jīng)過上述兩種車牌圖像后處理后的圖像輸出后再次進(jìn)行積分通道特征提取后輸入強(qiáng)檢測器進(jìn)行二次定位。定位后輸出最終的定位結(jié)果。
S2車牌字符分割;
S2.1.去除輸入車牌區(qū)域圖像的車牌邊框;
對于車牌圖像來說,在定位出來后的車牌圖像有兩種,一種是有邊框的車牌,而另一種是沒有邊框的車牌。我們將車牌候選區(qū)域旋轉(zhuǎn)至水平后就可以對車牌進(jìn)行精確定位了,也就是對車牌邊框的去除。對測試數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析可以得出:經(jīng)過定位旋轉(zhuǎn)后的車牌候選區(qū)域邊框有兩種,一種是車牌本身的邊框,而另一種是車牌周圍的白色背景與車牌一起被當(dāng)作候選車牌區(qū)域,此時(shí)該白色背景也可以被看作是車牌的邊框。
車牌邊框的處理分為車牌上下邊框的處理和車牌左右邊框的處理。車牌的上下邊框的處理比較簡單,車牌的上下邊框分為兩種:一種是車牌本身的白色邊框,另一種是車牌上下位置的白色背景。而車牌的左右邊界也可以歸為這兩類,不過由于圖像本身的特征,一般來說車牌的上下邊框要寬于左右邊框,并且車牌左右邊框要復(fù)雜一些。
對于車牌的上下邊框的去除,本發(fā)明采取了下面步驟來處理:
S2.1.1上下邊框的去除;
S2.1.1.1用OTSU(大津算法)方法獲得車牌候選區(qū)域的二值化閾值,從而得到候選區(qū)域的二值圖像,為了排除車牌傾斜角度的影響我們求取該二值圖像中間部分的行和,然后將行和處理如下:
S2.1.1.2從中間向兩端開始尋找rowsum的上下方向上有一段距離為零的邊界,本發(fā)明算法中采用該距離為0.75×height,因?yàn)橐话丬嚺频纳舷逻吙蛉コ谋容^準(zhǔn)確,故我們采用圖形高度來做參考距離。此時(shí)我們得到的邊界就是最后所需要的車牌上下邊界。
經(jīng)過上面處理后,對于大多數(shù)圖片我們就可以將其上下邊框進(jìn)行處理掉,然后我們就可以對該車牌區(qū)域進(jìn)行去除左右邊框了。
對于車牌的左右邊框的去除,本發(fā)明采取了下面步驟來處理:
S2.1.2左右邊框的去除;
S2.1.2.1用去除上下邊框相同的方法來找到一個(gè)左右邊框的邊界:left1,right1。
S2.1.2.2重新構(gòu)建一個(gè)二值圖像再用和第一步相同的投影法來尋找邊界left2,right2。此時(shí)構(gòu)建的二值圖像根據(jù)車牌區(qū)域HSI模型的h值來二值化圖像。首先對車牌區(qū)域的中間區(qū)域來統(tǒng)計(jì)其h值的范圍,然后根據(jù)該范圍對全部車牌區(qū)域進(jìn)行二值化,就得到了我們需要的二值化圖像。
S2.1.2.3根據(jù)第一和第二步得到的兩個(gè)邊界信息來確定最后的邊界。最后確定的邊界可以用下面式子表示:
left=max(left1,left2)
right=min(right1,right2)
按照上述兩個(gè)步驟去邊框處理后,得到的車牌區(qū)域比原來定位出來原始車牌區(qū)域精確了些,但是并不是絕對的精確,我們可以將其看作是邊框去除過程中引入的誤差。本發(fā)明采用的分割算法能夠容忍在車牌邊框去除時(shí)存在的少許誤差。也就是說在去除車牌左右邊框時(shí),邊框沒有完全去除并不影響我們隊(duì)字符的正確分割。
S2.2.車牌字符分割;
在進(jìn)行分割字符前,必須要注意一個(gè)問題,那就是由于不同光照、和車牌臟舊等原因使得車牌的灰度圖像中背景和字符對比度不強(qiáng),這對于后一步用投影法來進(jìn)行字符分割會帶來一定的難度,故而在分割前需要先對車牌圖像進(jìn)行字符的對比度增強(qiáng)。
一個(gè)完整的車牌區(qū)域字符像素占整個(gè)車牌區(qū)域像素的20%,對于某些圖片來說,雖然由于其他原因使得車牌中字符和背景的差異不是很大,但是總體上來說字符的像素值也比背景像素值高一些。故可以利用該特點(diǎn)來對車牌區(qū)域中前20%像素進(jìn)行增強(qiáng)而對其他的像素進(jìn)行抑制,從而到達(dá)增強(qiáng)目標(biāo)字符抑制背景的目的。對此本發(fā)明采用車牌增強(qiáng)算法如下:
步驟1:統(tǒng)計(jì)整個(gè)車牌區(qū)域內(nèi)像素點(diǎn)的最大像素值和最小像素值maxvalue,minvalue。
步驟2:置需要增強(qiáng)的像素點(diǎn)數(shù)占全部像素點(diǎn)數(shù)的比例系數(shù)coef,所述比例系數(shù)范圍在0-1之間,根據(jù)實(shí)際需要調(diào)整,通常原始車牌圖像較清晰,比例系數(shù)就較小,原始車牌圖像模糊,比例系數(shù)就大。
步驟3:統(tǒng)計(jì)0-255像素值上對應(yīng)出現(xiàn)的像素點(diǎn)的個(gè)數(shù),并存儲在1×255的數(shù)組count(1,i)里面。
步驟4:從count(1,i),i=255開始往下統(tǒng)計(jì)像素點(diǎn)的個(gè)數(shù),如果統(tǒng)計(jì)的像素點(diǎn)pixelnum<width*height*coef則將i-1繼續(xù)統(tǒng)計(jì),否則停止統(tǒng)計(jì)并記下當(dāng)前的像素值index。
步驟5:車牌區(qū)域每一點(diǎn)按下面的方法進(jìn)行增強(qiáng):
經(jīng)過上面的變換后,就可以將圖像進(jìn)行增強(qiáng),如果原圖已有很好的對比度,經(jīng)過以上的變換也不會使圖像的效果變差,其效果圖如圖6所示。
從圖6的效果可以看出,前兩幅由RGB直接轉(zhuǎn)換為灰度圖像的車牌區(qū)域其對比度不是很明顯,經(jīng)過增強(qiáng)后背景和字符的對比度明顯好轉(zhuǎn),而原本對比度一般的車牌區(qū)域經(jīng)過增強(qiáng)后其效果也變得更好了。這樣的增強(qiáng)對下一步分割字符有利。因?yàn)楸景l(fā)明所采用的字符分割方法是基于灰度投影的算法,由于原本字符對比度不明顯,其灰度投影圖的波峰、波谷特征也不是很明顯,但是經(jīng)過圖像增強(qiáng)后,其灰度投影圖就能夠很好的表現(xiàn)其波峰波谷特征,有利用對字符的精確分割。
本發(fā)明所用的灰度投影分割字符充分利用了車牌字符的特點(diǎn),與一般的投影分割相比有很大的優(yōu)越性。普通的投影分割就是利用灰度投影曲線的波谷點(diǎn)來對字符進(jìn)行分割。本發(fā)明對這種普通的投影算法進(jìn)行了改進(jìn)大大提高了字符分割正確率。由車牌字符投影曲線可以看出,車牌圓點(diǎn)右邊的五個(gè)字符中除了字符就是數(shù)字,當(dāng)然還有少數(shù)車牌為漢字。對于字符和數(shù)字來說,其投影曲線不是雙峰結(jié)構(gòu)就是單峰結(jié)構(gòu)。所以本發(fā)明在對字符進(jìn)行分割充分利用該特征改進(jìn)了投影分割算法。本發(fā)明字符分割算法流程圖如圖7所示。
進(jìn)行字符分割前,對前面增強(qiáng)的車牌圖像,按列累加圖像的像素值,就可以得到車牌的投影曲線,但是得到的投影曲線有很多噪聲使其并不平滑,這影響系對字符的分割,所以首先需要將投影曲線進(jìn)行平滑,在本算法中采用高斯濾波來平滑投影曲線,用于濾波的核為[0.25,0.5,1,0.5,0.25]。圖8為車牌投影曲線的濾波前后的效果圖。從圖中可以很明顯的看出經(jīng)過濾波后的投影曲線比原曲線平滑了很多,且原曲線中的一些由噪聲引起的峰值也在濾波后消失了,這樣在檢測波峰波谷時(shí)就不會檢測出因噪聲產(chǎn)生的波峰波谷點(diǎn)。
由濾波后的車牌灰度投影圖,就可以根據(jù)該投影曲線來進(jìn)行字符分割。本發(fā)明采用的是改進(jìn)的投影法來進(jìn)行字符分割。一般的投影法分割字符是直接利用波谷點(diǎn)來對字符進(jìn)行分割,而本發(fā)明的投影法在分割字符時(shí)充分考慮了車牌字符的投影特征,具體步驟如下:
步驟1:根據(jù)車牌的灰度投影曲線圖可得,車牌后面最多出現(xiàn)五個(gè)雙峰結(jié)構(gòu),故搜索出前五個(gè)最大波谷點(diǎn),然后判斷這些點(diǎn)是否為雙峰結(jié)構(gòu)中的波谷點(diǎn),如果是,則將該雙峰結(jié)構(gòu)的起止位置記下。
步驟2:確定車牌字符寬度characterwidth。如果步驟1檢測到了雙峰結(jié)構(gòu),則字符寬度就取為檢測到的所有雙峰結(jié)構(gòu)的平均值,否則字符寬度就取前3個(gè)單峰寬度中的最大值。
步驟3:設(shè)置字符起始點(diǎn)為第二字符和第三字符的分割點(diǎn),設(shè)置結(jié)束點(diǎn)為車牌最后一個(gè)波谷點(diǎn)。如果在步驟1中檢測到了雙峰結(jié)構(gòu)則進(jìn)行步驟4,否則進(jìn)行步驟5。
步驟4:設(shè)置字符臨時(shí)分割段起始點(diǎn)為字符起始點(diǎn),字符臨時(shí)分割段終點(diǎn)為一個(gè)雙峰結(jié)構(gòu)起始位置,然后在字符臨時(shí)分割段里進(jìn)行檢測,如果該段里有一個(gè)峰結(jié)構(gòu),則該峰就單獨(dú)為一個(gè)字符,如果該段里有兩個(gè)峰結(jié)構(gòu),則先判斷這兩個(gè)峰是一個(gè)雙峰字符還是兩個(gè)單峰字符,具體判斷規(guī)則就利用這兩個(gè)峰的寬度,以及該寬度和字符寬度進(jìn)行比較。如果這兩個(gè)峰寬度之和小于字符寬度的1.2倍且這兩個(gè)峰寬度相差很小,則這兩個(gè)峰結(jié)構(gòu)為一個(gè)雙峰字符的投影,反之為兩個(gè)單峰字符,且可以肯定兩個(gè)單峰字符的前面一個(gè)峰結(jié)構(gòu)就是一個(gè)字符,所以可以將其前面的一個(gè)峰結(jié)構(gòu)分割出來然后更新字符臨時(shí)分割段如下:將字符臨時(shí)分割段的起點(diǎn)更新到被分割出來的峰后面,字符臨時(shí)分割段終點(diǎn)不變,但是如果此時(shí)字符臨時(shí)分割段的起點(diǎn)等于終點(diǎn)時(shí)則將其起點(diǎn)更新到先前的雙峰結(jié)構(gòu)的終止位置,并將臨時(shí)分割段的終點(diǎn)更新到下一個(gè)雙峰結(jié)構(gòu)的起點(diǎn),如果后面沒有雙峰結(jié)構(gòu)了則將臨時(shí)分割段的終點(diǎn)更新為字符結(jié)束點(diǎn),然后重復(fù)步驟4直到分割到字符結(jié)束點(diǎn)為止。
步驟5:進(jìn)行到該步驟說明在檢測雙峰結(jié)構(gòu)時(shí)并未檢測到,但是并不代表該車牌內(nèi)不存在雙峰結(jié)構(gòu)的字符,并不能排除存在有雙峰結(jié)構(gòu)的字符。此時(shí)分割就直接從字符起始點(diǎn)開始分割直到分割出5個(gè)字符。在分割中需要檢測的就是檢測相鄰的兩個(gè)峰結(jié)構(gòu)是不是一個(gè)字符的雙峰曲線。檢測所利用的方法和步驟4中相同,利用兩個(gè)峰的寬度和該寬度與字符寬度之間的關(guān)系進(jìn)行判斷。
步驟6:根據(jù)分割出的后面五個(gè)字符來分割前面兩個(gè)字符。首先將分割出來的后面五個(gè)字符中的最大寬度作為前面兩個(gè)字符的寬度。前面兩個(gè)字符為字母或者漢字,而字符也為雙峰結(jié)構(gòu)的,所以用后面五個(gè)字符中的最大寬度作為前面字符的寬度是合理的。分割前面兩個(gè)字符的方法為:從第二字符和第三字符的分割點(diǎn)向前移動字符寬度個(gè)像素,然后將離該點(diǎn)的最近一個(gè)波谷值作為車牌第一字符和第二字符的分割點(diǎn)。利用同樣方法也可以確定第一個(gè)字符的開始位置。
步驟7:對分割出來的字符序列進(jìn)行檢測,看該序列是否符合車牌字符序列的特征。該特征可以用下面表達(dá)式來表示,假設(shè)dis1為前面兩個(gè)字符的寬度向量,dis2為后面五個(gè)字符看寬度向量,width為車牌寬度,height為車牌高度,則一個(gè)合理的車牌字符序列必須滿足下面的表達(dá)式:
min(min(dis1),min(dis2))>width/10
max(dis2)/width/5
height/min(dis1)<3
這樣就可以從車牌區(qū)域中分割出字符序列,從上面的算法步驟中可以看出,對于還有部分左右邊框的車牌,本發(fā)明的分割算法對其有很高的魯棒性。
S3車牌分割字符識別;
對于已經(jīng)分割好的車牌字符,需要進(jìn)行識別才能輸出,本發(fā)明提出了聯(lián)合方向梯度直方圖和核主成分分析法特征,它綜合了二值圖、灰度圖、16值圖的方向梯度直方圖特征的優(yōu)點(diǎn),能夠較好提取漢字結(jié)構(gòu)特征。方向梯度直方圖特征進(jìn)行聯(lián)合后,HOG特征維數(shù)增加,此時(shí)為了縮短特征提取時(shí)間,本系統(tǒng)采用核主成分分析法方法進(jìn)行降維。字符識別方法采用的是對小樣本問題有較好分類效果的支持向量機(jī)。
S3.1基于聯(lián)合HOG特征的車牌字符識別算法
常見車牌有7個(gè)字符,文中是將分割下來的7個(gè)字符進(jìn)行識別。車牌字符由英文字母、漢字和數(shù)字組成,中文和英文數(shù)字的特點(diǎn)不一樣:中文漢字筆畫稠密、輪廓復(fù)雜;數(shù)字和英文則輪廓清晰,結(jié)構(gòu)簡單。因此文中對漢字和英文數(shù)字采用不同的分類器,對它們分別提取特征。本發(fā)明車牌識別過程是:首先確定字符的分類器。然后分別提取漢字、數(shù)字字母的灰度方向梯度直方圖(HOG)特征、二值HOG特征、16值HOG特征,將它們組合成聯(lián)合HOG特征,將得到的聯(lián)合HOG特征用核主成分分析法進(jìn)行降維。最后將漢字和數(shù)字字母的聯(lián)合HOG特征送入支持向量機(jī)進(jìn)行訓(xùn)練和預(yù)測,將漢字和數(shù)字字母的識別結(jié)果進(jìn)行組合,得到最終的車牌字符識別結(jié)果?;诼?lián)合HOG的車牌識別流程如圖9所示。
S3.1.1方向梯度直方圖
方向梯度直方圖的核心思想是計(jì)算圖像中被檢測目標(biāo)的局部梯度的統(tǒng)計(jì)信息。由于梯度是針對邊緣輪廓,因此目標(biāo)的外形輪廓可以由梯度分布所描述。因此,HOG特征就是通過將分割下來的單個(gè)字符分割成小的連通區(qū)域,成為細(xì)胞單元,每個(gè)細(xì)胞單元中的每個(gè)像素生成一個(gè)梯度直方圖,這些直方圖的串聯(lián)就可表示出所檢測目標(biāo)的特征。為了提高光照變化的適應(yīng)性,將這些直方圖在分割下來的單個(gè)字符中的一個(gè)較大區(qū)域內(nèi)進(jìn)行對比度歸一化,具體來說就是計(jì)算每個(gè)局部直方圖在塊中的密度,根據(jù)密度來對這個(gè)塊中的每個(gè)細(xì)胞單元進(jìn)行歸一化。經(jīng)過歸一化后,HOG特征對光照變化和陰影可以獲得更好的適應(yīng)能力。
HOG具體實(shí)現(xiàn)過程如下:
(1)計(jì)算圖像梯度:先用模板[-1,0,1]對分割下來的單個(gè)字符做卷積運(yùn)算,得到水平方向梯度分量Gh(x,y),如式(1)所示;再用模板[-1,0,1]對分割下來的單個(gè)字符做卷積運(yùn)算,得到豎值方向梯度分量Gv(x,y),如式(2)所示;最后,計(jì)算該像素點(diǎn)的梯度幅值M(x,y)和θ(x,y)梯度方向,如式(3)、式(4)所示,f(x,y)表示該點(diǎn)的像素值,計(jì)算公式為:
Gh(x,y)=f(x+1,y)-f(x-1,y) (1)
Gv(x,y)=f(x,y+1)-f(x,y-1)(2)
M(x,y)≈|Gh(x,y)|+|Gv(x,y)| (3)
(2)構(gòu)建梯度方向直方圖:在細(xì)胞單元中的每個(gè)像素點(diǎn)都要為基于某個(gè)梯度方向的直方柱投票,梯度方向可取0~180°或者0~360°,在以往的實(shí)驗(yàn)證明0~180°效果較好。單個(gè)字符圖像被分為若干個(gè)細(xì)胞單元,每個(gè)細(xì)胞單元包括8*8個(gè)像素,將梯度范圍分為9個(gè)方向角度,因此利用9個(gè)方向角度對8*8個(gè)像素的梯度信息進(jìn)行投票。特別指出,直方圖投票采取加權(quán)投票,即每個(gè)像素的梯度幅值作為投票權(quán)重。
(3)將細(xì)胞單元組合成塊:塊的結(jié)構(gòu)有兩種:矩形塊(R-HOG)和環(huán)形塊(C-HOG)。本發(fā)明采用矩形塊來進(jìn)行目標(biāo)檢測,矩形塊一般包含3個(gè)參數(shù):每個(gè)塊中細(xì)胞單元的數(shù)目,每個(gè)細(xì)胞單元中像素點(diǎn)的數(shù)目以及每個(gè)細(xì)胞單元的方向角數(shù)目。
(4)塊內(nèi)歸一化計(jì)算公式如下所示:
L2_hys:先計(jì)算L2_norm,然后將v的最大值限定為0.2,再進(jìn)行歸一化。
其中,v表示包含給定塊統(tǒng)計(jì)直方圖信息的未歸一化向量;δ是一個(gè)很小的常數(shù),作用是為了避免分母為0;||v||k是v的k階范數(shù)。在Dalal的實(shí)驗(yàn)中發(fā)現(xiàn)L2_hys,L2_norm,L1_sqrt效果差不多,L1_norm字符識別效果要差一些,但這4個(gè)歸一化方法在識別性能上對比未歸一化都有明顯提高。本發(fā)明中采用的是L2_norm進(jìn)行歸一化。
假設(shè)將車牌字符歸一化到64*128,每8*8個(gè)像素組成一個(gè)細(xì)胞單元,每2*2個(gè)細(xì)胞單元組成一個(gè)塊,當(dāng)塊的滑動步長為8時(shí),掃描垂直方向可以滑動15次,水平方向可以滑動7次,因此可以得到36*7*15=3780位的特征算子。單個(gè)車牌字符處理效果如圖4所示,車牌字符灰度圖的梯度幅值圖和梯度角度圖包含的細(xì)節(jié)信息多,但缺點(diǎn)在于角度圖中的字符輪廓不明顯,影響了車牌字符識別率。為了克服上述缺點(diǎn),提出了聯(lián)合HOG特征,將灰度圖的HOG特征、二值圖的HOG特征和16值圖的HOG特征聯(lián)合起來。
S3.1.2聯(lián)合方向梯度直方圖
聯(lián)合HOG方法,即將灰度圖和二值圖分別計(jì)算HOG并組合成聯(lián)合特征,如下所示:H代表是得到的聯(lián)合特征,hi表示灰度圖和二值圖的HOG特征,ωi代表的是灰度圖和二值圖HOG的權(quán)重值,權(quán)重之和為1。權(quán)重分布的不同對后來的識別結(jié)果有很大影響。經(jīng)實(shí)驗(yàn)證明,權(quán)重值都為0.5時(shí),識別效果是最好的,并且對比單獨(dú)的灰度圖或二值圖的識別效果好:
其中∑ωi=1
同時(shí)將16值圖的HOG特征加入聯(lián)合HOG特征,即分別進(jìn)行車牌字符的灰度圖、二值圖和16值圖的HOG計(jì)算,將結(jié)果以某種關(guān)系線性組合起來得到的聯(lián)合HOG特征,組合如下式所示:
H=ωgrayhgray+ω2h2+ω16h16
H代表最終的聯(lián)合HOG特征,hgray,h2,h16分別代表車牌字符灰度圖、二值圖和16值圖的HOG特征,ωi代表權(quán)重。
聯(lián)合HOG將灰度圖、二值圖和16值圖的特點(diǎn)結(jié)合起來,能夠一定程度的彌補(bǔ)單獨(dú)進(jìn)行灰度圖或者二值圖的HOG預(yù)案算造成的不足,對識別率有也有一定程度的提高。
S3.1.3車牌字符特征分類
車牌字符分類主要是指將待識別的字符特征與經(jīng)過學(xué)習(xí)的訓(xùn)練字符特征通過某一算法進(jìn)行對比來進(jìn)行識別。常用的分類器主要包括最小距離分類器、k-最近鄰分類器、貝葉斯分類器、決策樹、Adaboost級聯(lián)分類器、人工神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)(SVM)。根據(jù)需要訓(xùn)練分類的車牌字符特性及不同分類器的特點(diǎn),本發(fā)明主要采用支持向量機(jī)進(jìn)行分類。支持向量機(jī)的核心思想在于利用一個(gè)分類超平面當(dāng)作決策的曲面,來最大化正類和負(fù)類兩者的邊緣距離??紤]到本文中車牌字符識別中訓(xùn)練樣本的數(shù)量有限,而且生成的HOG維數(shù)較多,因此本發(fā)明采用的對小樣本問題有較好分類效果的支持向量機(jī)。針對多分類的問題,本文采用的“一對一”的方式進(jìn)行劃分。SVM在處理樣本并進(jìn)行訓(xùn)練預(yù)測識別的過程大致為以下幾步:在車牌字符樣本中選擇訓(xùn)練樣本集和測試樣本集,分別對訓(xùn)練集和測試集進(jìn)行預(yù)處理,并提取HOG等特征,然后利用交叉驗(yàn)證法選擇最優(yōu)參數(shù)c和g,最后利用最佳參數(shù)訓(xùn)練SVM,獲得訓(xùn)練模型,利用訓(xùn)練模型對測試集進(jìn)行預(yù)測,得到預(yù)測分類準(zhǔn)確率。SVM中常用的核函數(shù)包括線性核函數(shù),徑向基核函數(shù),多項(xiàng)式核函數(shù),sigmoid核函數(shù)。對于不同的核函數(shù)測試集的分類準(zhǔn)確率也會不同,車牌字符識別中采用徑向基核函數(shù)的分類準(zhǔn)確率最高。因此,本發(fā)明SVM的核函數(shù)采用的是RBF核函數(shù)。
綜上所述,在提取特征以后,利用SVM進(jìn)行訓(xùn)練分類。訓(xùn)練分類后,將分割好的字符輸入訓(xùn)練器中,輸出識別的車牌字符。
本發(fā)明中提出的方法實(shí)際上可嵌入FPGA實(shí)現(xiàn),運(yùn)用于具有實(shí)時(shí)輸出圖像功能的車牌識別功能的相機(jī)或攝像機(jī)監(jiān)控系統(tǒng)中。
本領(lǐng)域技術(shù)人員將清楚本發(fā)明的范圍不限制于以上討論的示例,有可能對其進(jìn)行若干改變和修改,而不脫離所附權(quán)利要求書限定的本發(fā)明的范圍。盡管己經(jīng)在附圖和說明書中詳細(xì)圖示和描述了本發(fā)明,但這樣的說明和描述僅是說明或示意性的,而非限制性的。本發(fā)明并不限于所公開的實(shí)施例。
通過對附圖,說明書和權(quán)利要求書的研究,在實(shí)施本發(fā)明時(shí)本領(lǐng)域技術(shù)人員可以理解和實(shí)現(xiàn)所公開的實(shí)施例的變形。在權(quán)利要求書中,術(shù)語“包括”不排除其他步驟或元素,而不定冠詞“一個(gè)”或“一種”不排除多個(gè)。在彼此不同的從屬權(quán)利要求中引用的某些措施的事實(shí)不意味著這些措施的組合不能被有利地使用。權(quán)利要求書中的任何參考標(biāo)記不構(gòu)成對本發(fā)明的范圍的限制。