亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于混合特征與灰度投影的車牌識別方法與流程

文檔序號:12124203閱讀:708來源:國知局
一種基于混合特征與灰度投影的車牌識別方法與流程

本發(fā)明涉及計(jì)算機(jī)視覺領(lǐng)域,特指一種基于混合特征與灰度投影的車牌識別方法。



背景技術(shù):

隨著現(xiàn)代化交通的發(fā)展,車輛牌照自動識別技術(shù)越來越受到人們的重視,是近年來計(jì)算機(jī)視覺與模式識別技術(shù)在智能交通領(lǐng)域的重要研究課題之一。車輛牌照自動識別系統(tǒng)可用于公路收費(fèi)站、停車場、十字路口等場所的車輛管理,對于道路交通和停車場車輛管理具有重要的促進(jìn)作用。

車牌識別技術(shù)包括車牌定位、字符分割和字符識別3個基本環(huán)節(jié),其中車牌定位是字符分割和字符識別的前提,而車牌字符分割是車牌識別的基礎(chǔ)。

車牌識別系統(tǒng)在國內(nèi)外研究都有一段時間了,國外的車牌識別系統(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í)中,在實(shí)際路口采集所得的圖片與停車場和小區(qū)中采集的圖片有很大的不同。小區(qū)中的圖片背景單一,光照均勻,分辨率高。與此不同的是,在十字路口采集的圖片背景復(fù)雜、光照不均、分辨率低、車牌舊、車牌臟等,這些都給車牌識別帶來了很大的困難,針對這些實(shí)際的特定問題,本發(fā)明提出了一種車牌自動定位、分割以及識別方法。

本系統(tǒng)算法車牌字符讀取可靠性高,識別度好,魯棒性好,同時步驟計(jì)算簡單,能保持高效率,實(shí)時性也能滿足需求。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明要解決的技術(shù)問題在于:針對現(xiàn)行車牌識別系統(tǒng)存在的這些特定難點(diǎn)問題,為了提高監(jiān)控系統(tǒng)的車牌識別的準(zhǔn)確程度,并使其滿足實(shí)時性需求,提出一種基于混合特征和灰度投影的車牌識別方法。

包括如下步驟:

S1)車牌定位;

S1.1)獲取車牌彩色圖像,所述車牌彩色圖像的顏色空間轉(zhuǎn)換為HSV顏色空間;

S1.2)實(shí)現(xiàn)車牌區(qū)域粗定位,實(shí)現(xiàn)彩色圖像的二值化;

S1.3)實(shí)現(xiàn)車牌區(qū)域精確定位,獲取車牌的水平坐標(biāo)和垂直坐標(biāo)位置;

S1.4)將精確定位后輸出的圖像進(jìn)行非極大值抑制處理,將處理結(jié)果進(jìn)行基于霍夫變換的傾斜校正得到二次定位后的車牌圖像;

S2)車牌字符分割;

S2.1)去除輸入車牌區(qū)域圖像的車牌邊框;

S2.2)先對去除邊框后的車牌圖像進(jìn)行字符的對比度增強(qiáng)和濾波,再基于灰度投影算法進(jìn)行車牌字符分割;

S3)車牌字符分割后的字符識別并輸出。

作為本發(fā)明技術(shù)方案的進(jìn)一步改進(jìn),所述步驟S3)采用基于聯(lián)合HOG特征的車牌字符識別方法對車牌字符分割后的字符進(jìn)行識別,具體包括以下步驟:

S3.1)首先確定字符的分類器;

S3.2)分別提取漢字、數(shù)字字母的灰度方向梯度直方圖HOG特征、二值HOG特征、16值HOG特征,將它們組合成聯(lián)合HOG特征,將得到的聯(lián)合HOG特征用核主成分分析法進(jìn)行降維;

S3.3)將漢字和數(shù)字字母的聯(lián)合HOG特征送入所述分類器進(jìn)行訓(xùn)練和預(yù)測,將漢字和數(shù)字字母的識別結(jié)果進(jìn)行組合,得到最終的車牌字符識別結(jié)果并輸出。

作為本發(fā)明技術(shù)方案的進(jìn)一步改進(jìn),所述步驟S1.4)中,所述(1)將初始檢測窗口按照檢測分?jǐn)?shù)從高到低排序;

(2)將第1個初始檢測窗口作為當(dāng)前的抑制窗口;

(3)非極大值抑制。將所有檢測分?jǐn)?shù)比當(dāng)前抑制窗口低的初始窗口作為被抑制窗口。計(jì)算當(dāng)前抑制窗口與被抑制窗口的重合面積比率:面積的交集/面積的并集。剔除重合面積比率高于設(shè)定閾值的窗口;

(4)如果只剩最后一個初始檢測窗口則結(jié)束,否則按照排好的順序,取下一個未被抑制的窗口作為抑制窗口,轉(zhuǎn)到步驟(3)。

作為本發(fā)明技術(shù)方案的進(jìn)一步改進(jìn),所述步驟S2.1)包括:

S2.1.1)上下邊框的去除:

獲得車牌候選區(qū)域的二值化閾值,得到候選區(qū)域的二值圖像,求取該二值圖像中間部分的行和,然后將行和處理如下:

從中間向兩端開始尋找rowsum的上下方向上有一段距離為零的邊界,采用該距離為0.75×height,從而得到車牌的上下邊界;

S2.1.2)左右邊框的去除:

用去除上下邊框相同的方法來找到一個左右邊框的邊界:left1,right1;

重新構(gòu)建一個二值圖像,再用去除上下邊框相同的方法來找到另一個左右邊框的邊界left2,right2;

最后確定的邊界可以用下面式子表示:

left=max(left1,left2),

right=min(right1,right2)。

作為本發(fā)明技術(shù)方案的進(jìn)一步改進(jìn),所述步驟S2.2)中對比度增強(qiáng)步驟如下:

步驟1:統(tǒng)計(jì)整個車牌區(qū)域內(nèi)像素點(diǎn)的最大像素值和最小像素值maxvalue,minvalue;

步驟2:設(shè)置需要增強(qiáng)的像素點(diǎn)數(shù)占全部像素點(diǎn)數(shù)的比例系數(shù)coef,比例系數(shù)范圍在0-1之間;

步驟3:統(tǒng)計(jì)0-255像素值上對應(yīng)出現(xiàn)的像素點(diǎn)的個數(shù),并存儲在1×255的數(shù)組count(1,i)里面;

步驟4:從count(1,i),i=255開始往下統(tǒng)計(jì)像素點(diǎn)的個數(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):

作為本發(fā)明技術(shù)方案的進(jìn)一步改進(jìn),所述步驟S2.2)中基于灰度投影算法進(jìn)行車牌字符分割方法步驟如下:

步驟1:根據(jù)車牌的灰度投影曲線圖可得,車牌后面最多出現(xiàn)五個雙峰結(jié)構(gòu),故搜索出前五個最大波谷點(diǎn),然后判斷這些點(diǎn)是否為雙峰結(jié)構(gòu)中的波谷點(diǎn),如果是,則將該雙峰結(jié)構(gòu)的起止位置記下。

步驟2:確定車牌字符寬度characterwidth。如果步驟1檢測到了雙峰結(jié)構(gòu),則字符寬度就取為檢測到的所有雙峰結(jié)構(gòu)的平均值,否則字符寬度就取前3個單峰寬度中的最大值。

步驟3:設(shè)置字符起始點(diǎn)為第二字符和第三字符的分割點(diǎn),設(shè)置結(jié)束點(diǎn)為車牌最后一個波谷點(diǎn)。如果在步驟1中檢測到了雙峰結(jié)構(gòu)則進(jìn)行步驟4,否則進(jìn)行步驟5。

步驟4:設(shè)置字符臨時分割段起始點(diǎn)為字符起始點(diǎn),字符臨時分割段終點(diǎn)為一個雙峰結(jié)構(gòu)起始位置,然后在字符臨時分割段里進(jìn)行檢測,如果該字符臨時分割段里有一個峰結(jié)構(gòu),則該峰結(jié)構(gòu)就單獨(dú)為一個字符,如果該字符臨時分割段里有兩個峰結(jié)構(gòu),則先判斷這兩個峰結(jié)構(gòu)是一個雙峰字符還是兩個單峰字符,具體判斷規(guī)則就利用這兩個峰結(jié)構(gòu)的寬度,以及該兩個峰結(jié)構(gòu)的寬度和字符寬度進(jìn)行比較。如果這兩個峰結(jié)構(gòu)的寬度之和小于字符寬度的1.2倍且這兩個峰結(jié)構(gòu)的寬度相差很小。否則這兩個峰結(jié)構(gòu)就不是一個雙峰字符的投影,且可以肯定前面一個峰結(jié)構(gòu)就是一個字符,所以可以將這兩個峰結(jié)構(gòu)前面的一個峰結(jié)構(gòu)分割出來,然后更新字符臨時分割段如下:將字符臨時分割段的起點(diǎn)更新到被分割出來的峰后面,字符臨時分割段終點(diǎn)不變,但是如果此時字符臨時分割段的起點(diǎn)等于終點(diǎn)時則將字符臨時分割段起點(diǎn)更新到先前的雙峰結(jié)構(gòu)的終止位置,并將臨時分割段的終點(diǎn)更新到下一個雙峰結(jié)構(gòu)的起點(diǎn),如果后面沒有雙峰結(jié)構(gòu)了則將臨時分割段的終點(diǎn)更新為字符結(jié)束點(diǎn),然后重復(fù)步驟4直到分割到字符結(jié)束點(diǎn)為止。

步驟5:進(jìn)行到步驟5說明在檢測雙峰結(jié)構(gòu)時并未檢測到,但是并不代表該車牌內(nèi)不存在雙峰結(jié)構(gòu)的字符,并不能排除存在有雙峰結(jié)構(gòu)的字符。此時分割就直接從字符起始點(diǎn)開始分割直到分割出5個字符。在分割中需要檢測的就是檢測相鄰的兩個峰結(jié)構(gòu)是不是一個字符的雙峰曲線。檢測所利用的方法和步驟4中雙峰結(jié)構(gòu)檢測方法相同,利用兩個峰結(jié)構(gòu)的寬度和該兩個峰結(jié)構(gòu)的寬度與字符寬度之間的關(guān)系進(jìn)行判斷。

步驟6:根據(jù)分割出的后面五個字符來分割前面兩個字符。首先將分割出來的后面五個字符中的最大寬度作為前面兩個字符的寬度。前面兩個字符為字母或者漢字,而字符也為雙峰結(jié)構(gòu)的,所以用后面五個字符中的最大寬度作為前面字符的寬度是合理的。分割前面兩個字符的方法為:從第二字符和第三字符的分割點(diǎn)向前移動字符寬度個像素,然后將離該向前移動后的分割點(diǎn)的最近一個波谷值作為車牌第一字符和第二字符的分割點(diǎn)。利用同樣方法也可以確定第一個字符的開始位置。

步驟7:對分割出來的字符序列進(jìn)行檢測,看該字符序列是否符合車牌字符序列的特征。車牌字符序列的特征可以用下面表達(dá)式來表示,假設(shè)dis1為前面兩個字符的寬度向量,dis2為后面五個字符的寬度向量,width為車牌寬度,height為車牌高度,則一個合理的車牌字符序列必須滿足下面的表達(dá)式:

min(min(dis1),min(dis2))>width/10

max(dis2)>width/5

height/min(dis1)<3

根據(jù)上述車牌字符分割方法步驟1-7從車牌區(qū)域中分割出字符序列。

作為本發(fā)明技術(shù)方案的進(jìn)一步改進(jìn),所述步驟S3)中所述訓(xùn)練器為SVM訓(xùn)練器,在車牌字符樣本中選擇訓(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進(jìn)行訓(xùn)練分類;訓(xùn)練分類后,將分割好的字符輸入訓(xùn)練器中,輸出識別的車牌字符。

與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:

1、本發(fā)明采用字符豎直紋理的分割方法,能夠?qū)Ω黝愜嚺茍D像實(shí)現(xiàn)很好的分割效果。

2、本發(fā)明在車牌定位中對二值化圖像選用了的線形結(jié)構(gòu)元素,進(jìn)行了運(yùn)算,填充了空洞和刪除了噪聲點(diǎn)并且可以去除汽車牌照的邊框部分,使得定位更加準(zhǔn)確。

3、本發(fā)明所采用的字符分割方法是基于灰度投影的算法,由于原本字符對比度不明顯,其灰度投影圖的波峰、波谷特征也不是很明顯,但是經(jīng)過圖像增強(qiáng)后,其灰度投影圖就能夠很好的表現(xiàn)其波峰波谷特征,有利用對字符的精確分割。

4、本發(fā)明提出了聯(lián)合方向梯度直方圖和核主成分分析法的特征,它綜合了二值圖、灰度圖、16值圖的方向梯度直方圖特征的優(yōu)點(diǎn),能夠較好提取漢字結(jié)構(gòu)特征。方向梯度直方圖特征進(jìn)行聯(lián)合后,HOG特征維數(shù)增加,此時為了縮短特征提取時間,本系統(tǒng)用核主成分分析法方法進(jìn)行降維。字符識別方法采用的是對小樣本問題有較好分類效果的支持向量機(jī)。

附圖說明

圖1是本實(shí)施例所述整體算法流程圖;

圖2是本實(shí)施例所述霍夫變換傾斜校正的車牌圖像;

圖3是本實(shí)施例所述車牌圖像增強(qiáng)算法效果圖;

圖4是本實(shí)施例所述車牌分割算法流程圖;

圖5是本實(shí)施例所述車牌投影曲線的濾波前后的效果圖;

圖6是本實(shí)施例所述基于聯(lián)合HOG的車牌識別流程圖。

具體實(shí)施方式

以基于混合特征和灰度投影的車牌識別系統(tǒng)為例,結(jié)合附圖對本發(fā)明做進(jìn)一步詳細(xì)說明。

本實(shí)施例為一種基于混合特征和灰度投影的車牌識別方法,其具體包括以下步驟S1至S3。

S1.車牌定位;

S1.1顏色空間轉(zhuǎn)換

一般通過CCD攝像機(jī)或數(shù)碼相機(jī)獲得的彩色圖像都是基于RGB模型,它將紅(R)、綠(G)、藍(lán)(B)3種顏色按照加法混合得到人眼能看到的大部分色彩。但是RGB模型并不適合人們對彩色信息的肉眼直觀鑒別判斷,計(jì)算機(jī)處理也比較困難。而HSI色彩模型是從人的視覺出發(fā),用色調(diào)(H),飽和度(S)和亮度(I)來描述色彩。它把圖像的顏色信息與亮度信息分離開來,3個分量之間的相關(guān)性較RGB空間3分量要小的多,因此更加適合于顏色特征的表達(dá)。從RGB模型轉(zhuǎn)化為HSI模型的基本方法為:

Imax=max(R,G,B)

Imin=min(R,G,B)

V=Imax

if H<0then H=H+360

式中:Hmax——色調(diào)的個數(shù),通常取值60。H取值在0~360之間,S在0~1之間,V在0~1之間。

S1.2車牌區(qū)域粗定位

根據(jù)已知的我國車牌主要顏色,我們可以很好的利用車牌的彩色信息對車牌位置進(jìn)行粗定位。定義HSV色彩空間中兩色彩C1(H1,S1,V1)與C2(H2,S2,V2)之間的距離為:

兩種色彩之間的相似度定義為:

通常來說,藍(lán)色車牌的HSV色彩空間取值為:

H=240,S=0.8,V=0.6

白色車牌取值通常為:

H=0,S=0,V=0.6

根據(jù)給出的標(biāo)準(zhǔn)值以及計(jì)算色彩距離和相似度的公式可以得到一組色彩距離圖譜,相似度閾值Th通常為根據(jù)已知環(huán)境給定,為一個常數(shù)。小于閾值Th的設(shè)置為背景,大于閾值Th的預(yù)設(shè)為車牌區(qū)域,從而實(shí)現(xiàn)彩色圖像的二值化。

隨后對二值化后包含車牌區(qū)域的圖像采用數(shù)學(xué)形態(tài)學(xué)的方法進(jìn)行處理,數(shù)學(xué)形態(tài)學(xué)的開運(yùn)算能濾除較小的區(qū)域,同時平滑區(qū)域的輪廓、閉運(yùn)算能填充區(qū)域的空洞,同時平滑區(qū)域的輪廓。在本發(fā)明中選用了的線形結(jié)構(gòu)元素,進(jìn)行了運(yùn)算,填充了空洞和刪除了噪聲點(diǎn)并且可以去除汽車牌照的邊框部分,使得定位更加準(zhǔn)確。

S1.3車牌區(qū)域精確定位

我國車牌的一個顯著紋理特征是車牌區(qū)域垂直邊緣比水平邊緣密集,且車牌一般來說大都懸掛在車身較低的位置,其下方?jīng)]有明顯的邊緣密集區(qū)域。從紋理特征看,車牌字符間隔有一定的規(guī)則性,采用字符豎直紋理的分割方法,能夠?qū)Ω黝愜嚺茍D像實(shí)現(xiàn)很好的分割效果。本發(fā)明使用Soble垂直算子實(shí)現(xiàn)圖像的邊緣增強(qiáng)。

對邊緣增強(qiáng)的圖像沿水平方向進(jìn)行投影,確定車牌的水平位置,得到統(tǒng)計(jì)圖像。水平定位算法具體實(shí)現(xiàn)時在水平投影圖中從下向上搜索直到找到一個較大的投影值(約為最小值的10倍)的行號,并儲存為L(0),繼續(xù)搜索直到找到離L(0)最近的一個小于較大投影值的行號,并儲存到L(1)。若L(0)-L(1)>d,d位為預(yù)設(shè)的車牌高度,則判定為車牌的水平位置,停止搜索,否則將L(0)、L(1)清空,依照此法繼續(xù)搜索。

確定車牌的垂直位置,基于水平定位圖像,采用1×3的線性結(jié)構(gòu)元素對圖像進(jìn)行膨脹處理,目的是使得車牌底色和字符的顏色在較小的范圍內(nèi)變化頻繁且對比強(qiáng)烈這一特點(diǎn)得到充分的利用。而后對其在豎直方向上進(jìn)行累加得到垂直投影圖。依照水平投影的方法,并根據(jù)車牌的幾何特征,已知車牌的寬高比大約為3.14左右,搜索一個大于預(yù)定車牌寬度約3.1倍的區(qū)域,即可得到垂直坐標(biāo)位置,結(jié)合己獲取的水平坐標(biāo)即可在原圖像中得到車牌的準(zhǔn)確定位。

最后,將精確定位后的車牌圖像進(jìn)行截取,并輸出。

S1.4將精確定位后輸出的圖像進(jìn)行非極大值抑制處理后的結(jié)果進(jìn)行基于霍夫變換的傾斜校正得到二次定位后的車牌圖像;

非極大值抑制在物體檢測中應(yīng)用十分廣泛,主要目的是為了消除多余干擾因素,找到最佳的物體檢測的位置。非極大值抑制是檢測的后處理過程,是關(guān)鍵環(huán)節(jié)之一。

啟發(fā)式窗口融合算法對非重合目標(biāo)檢測效果很好,但對于車輛車牌檢測并不適合。啟發(fā)式窗口融合算法,將初始檢測窗口劃分為若干個不重合的子集,然后計(jì)算每個子集的中心,最后每個子集只保留一個檢測窗口,顯然該算法容易造成大量漏檢。

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個初始檢測窗口作為當(dāng)前的抑制窗口;

(3)非極大值抑制。將所有檢測分?jǐn)?shù)比當(dāng)前抑制窗口低的初始窗口作為被抑制窗口。計(jì)算當(dāng)前抑制窗口與被抑制窗口的重合面積比率:面積的交集/面積的并集。剔除重合面積比率高于設(shè)定閾值的窗口;

(4)如果只剩最后一個初始檢測窗口則結(jié)束,否則按照排好的順序,取下一個未被抑制的窗口作為抑制窗口,轉(zhuǎn)到步驟(3)。

本發(fā)明同樣使用的是簡單高效的基于貪心策略的非極大值抑制算法。經(jīng)過非極大值抑制處理后的車牌圖像再進(jìn)行基于霍夫變換的傾斜校正。

霍夫變換是一種強(qiáng)有力的特征提取方法,它利用局部圖像信息有效的積累所有可能的模型實(shí)例的依據(jù),這使得它既能方便的從外部數(shù)據(jù)中獲得額外的信息,又能敏銳的從只有一部分的實(shí)例中呈現(xiàn)出有效信息。霍夫變換普遍應(yīng)用在計(jì)算機(jī)視覺中形狀,位置,幾何變換參數(shù)的判斷中。自霍夫變換提出以來,其得到了廣泛的應(yīng)用。近些年,專家學(xué)者們對霍夫變換的理論性質(zhì)與應(yīng)用方法又進(jìn)行了進(jìn)一步的探討?;舴蜃儞Q作為一種有效的識別直線的算法,具有良好的抗干擾性及魯棒性。

霍夫變換方法包含一個從圖像空間中的特征到參數(shù)空間中點(diǎn)的集合的映射。每一個參數(shù)空間中的點(diǎn)表征著圖像空間中模型的一個實(shí)例,圖像特征利用一個函數(shù)被映射到參數(shù)空間當(dāng)中去,這個函數(shù)產(chǎn)生能夠兼容觀察到的圖像特征與假設(shè)的模型的所有的參數(shù)組合。每一個圖像特征將在多維的參數(shù)空間中產(chǎn)生一個不同的平面,但是由所有圖像特征產(chǎn)生的屬于同一個模型的實(shí)例的一切平面都會相交在描繪共同的實(shí)例的點(diǎn)?;舴蜃儞Q的根本是產(chǎn)生這些平面并且識別與之相交的參數(shù)點(diǎn)。

經(jīng)過基于霍夫變換的傾斜校正后的車牌圖像為系統(tǒng)二次定位后的圖像?;舴蜃儞Q傾斜校正的車牌圖像示例如圖2所示。

S2車牌字符分割;

S2.1.去除輸入車牌區(qū)域圖像的車牌邊框;

對于車牌圖像來說,在定位出來后的車牌圖像有兩種,一種是有邊框的車牌,而另一種是沒有邊框的車牌。我們將車牌候選區(qū)域旋轉(zhuǎn)至水平后就可以對車牌進(jìn)行精確定位了,也就是對車牌邊框的去除。對測試數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析可以得出:經(jīng)過定位旋轉(zhuǎn)后的車牌候選區(qū)域邊框有兩種,一種是車牌本身的邊框,而另一種是車牌周圍的白色背景與車牌一起被當(dāng)作候選車牌區(qū)域,此時該白色背景也可以被看作是車牌的邊框。

車牌邊框的處理分為車牌上下邊框的處理和車牌左右邊框的處理。車牌的上下邊框的處理比較簡單,車牌的上下邊框分為兩種:一種是車牌本身的白色邊框,另一種是車牌上下位置的白色背景。而車牌的左右邊界也可以歸為這兩類,不過由于圖像本身的特征,一般來說車牌的上下邊框要寬于左右邊框,并且車牌左右邊框要復(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)確,故我們采用圖形高度來做參考距離。此時我們得到的邊界就是最后所需要的車牌上下邊界。

經(jīng)過上面處理后,對于大多數(shù)圖片我們就可以將其上下邊框進(jìn)行處理掉,然后我們就可以對該車牌區(qū)域進(jìn)行去除左右邊框了。

對于車牌的左右邊框的去除,本發(fā)明采取了下面步驟來處理:

S2.1.2左右邊框的去除;

S2.1.2.1用去除上下邊框相同的方法來找到一個左右邊框的邊界:left1,right1。

S2.1.2.2重新構(gòu)建一個二值圖像,再用和第一步相同的方法來尋找邊界left2,right2。此時構(gòu)建的二值圖像根據(jù)車牌區(qū)域HSV模型的H值來二值化圖像。首先對車牌區(qū)域的中間區(qū)域來統(tǒng)計(jì)其H值的范圍,然后根據(jù)該H值的范圍對全部車牌區(qū)域進(jìn)行二值化,就得到了我們需要的二值化圖像。

S2.1.2.3根據(jù)S2.1.2.1和S2.1.2.2得到的兩個邊界信息來確定最后的邊界。最后確定的邊界可以用下面式子表示:

left=max(left1,left2)

right=min(right1,right2)

按照上述步驟去邊框處理后,得到的車牌區(qū)域比原來定位出來原始車牌區(qū)域精確了些,但是并不是絕對的精確,我們可以將其看作是邊框去除過程中引入的誤差。本發(fā)明采用的分割算法能夠容忍在車牌邊框去除時存在的少許誤差。也就是說在去除車牌左右邊框時,邊框沒有完全去除并不影響我們隊(duì)字符的正確分割。

S2.2.車牌字符分割;

在進(jìn)行分割字符前,必須要注意一個問題,那就是由于不同光照、和車牌臟舊等原因使得車牌的灰度圖像中背景和字符對比度不強(qiáng),這對于后一步用投影法來進(jìn)行字符分割會帶來一定的難度,故而在分割前需要先對車牌圖像進(jìn)行字符的對比度增強(qiáng)。

一個完整的車牌區(qū)域字符像素占整個車牌區(qū)域像素的20%,對于某些圖片來說,雖然由于其他原因使得車牌中字符和背景的差異不是很大,但是總體上來說字符的像素值也比背景像素值高一些。故可以利用該特點(diǎn)來對車牌區(qū)域中前20%像素進(jìn)行增強(qiáng)而對其他的像素進(jìn)行抑制,從而到達(dá)增強(qiáng)目標(biāo)字符抑制背景的目的。對此本發(fā)明采用車牌增強(qiáng)算法如下:

步驟1:統(tǒng)計(jì)整個車牌區(qū)域內(nèi)像素點(diǎn)的最大像素值和最小像素值maxvalue,minvalue。

步驟2:設(shè)置需要增強(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)的個數(shù),并存儲在1×255的數(shù)組count(1,i)里面。

步驟4:從count(1,i),i=255開始往下統(tǒng)計(jì)像素點(diǎn)的個數(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)過以上的變換也不會使圖像的效果變差,其效果圖如圖3所示。

從圖5的效果可以看出,前兩幅由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)右邊的五個字符中除了字符就是數(shù)字,當(dāng)然還有少數(shù)車牌為漢字。對于字符和數(shù)字來說,其投影曲線不是雙峰結(jié)構(gòu)就是單峰結(jié)構(gòu)。所以本發(fā)明在對字符進(jìn)行分割充分利用該特征改進(jìn)了投影分割算法。本發(fā)明字符分割算法流程圖如圖4所示。

進(jìn)行字符分割前,對前面增強(qiáng)的車牌圖像,按列累加圖像的像素值,就可以得到車牌的投影曲線,但是得到的投影曲線有很多噪聲使其并不平滑,這影響系對字符的分割,所以首先需要將投影曲線進(jìn)行平滑,在本算法中采用高斯濾波來平滑投影曲線,用于濾波的核為[0.25,0.5,1,0.5,0.25]。圖5為車牌投影曲線的濾波前后的效果圖。從圖5中可以很明顯的看出經(jīng)過濾波后的投影曲線比原曲線平滑了很多,且原曲線中的一些由噪聲引起的峰值也在濾波后消失了,這樣在檢測波峰波谷時就不會檢測出因噪聲產(chǎn)生的波峰波谷點(diǎn)。

由濾波后的車牌灰度投影圖,就可以根據(jù)該投影曲線來進(jìn)行字符分割。本發(fā)明采用的是改進(jìn)的投影法來進(jìn)行字符分割。一般的投影法分割字符是直接利用波谷點(diǎn)來對字符進(jìn)行分割,而本發(fā)明的投影法在分割字符時充分考慮了車牌字符的投影特征,具體步驟如下:

步驟1:根據(jù)車牌的灰度投影曲線圖可得,車牌后面最多出現(xiàn)五個雙峰結(jié)構(gòu),故搜索出前五個最大波谷點(diǎn),然后判斷這些點(diǎn)是否為雙峰結(jié)構(gòu)中的波谷點(diǎn),如果是,則將該雙峰結(jié)構(gòu)的起止位置記下。

步驟2:確定車牌字符寬度characterwidth。如果步驟1檢測到了雙峰結(jié)構(gòu),則字符寬度就取為檢測到的所有雙峰結(jié)構(gòu)的平均值,否則字符寬度就取前3個單峰寬度中的最大值。

步驟3:設(shè)置字符起始點(diǎn)為第二字符和第三字符的分割點(diǎn),設(shè)置結(jié)束點(diǎn)為車牌最后一個波谷點(diǎn)。如果在步驟1中檢測到了雙峰結(jié)構(gòu)則進(jìn)行步驟4,否則進(jìn)行步驟5。

步驟4:設(shè)置字符臨時分割段起始點(diǎn)為字符起始點(diǎn),字符臨時分割段終點(diǎn)為一個雙峰結(jié)構(gòu)起始位置,然后在字符臨時分割段里進(jìn)行檢測,如果該字符臨時分割段里有一個峰結(jié)構(gòu),則該峰結(jié)構(gòu)就單獨(dú)為一個字符,如果該字符臨時分割段里有兩個峰結(jié)構(gòu),則先判斷這兩個峰結(jié)構(gòu)是一個雙峰字符還是兩個單峰字符,具體判斷規(guī)則就利用這兩個峰結(jié)構(gòu)的寬度,以及該兩個峰結(jié)構(gòu)的寬度和字符寬度進(jìn)行比較。如果這兩個峰結(jié)構(gòu)的寬度之和小于字符寬度的1.2倍且這兩個峰結(jié)構(gòu)的寬度相差很小。否則這兩個峰結(jié)構(gòu)就不是一個雙峰字符的投影,且可以肯定前面一個峰結(jié)構(gòu)就是一個字符,所以可以將這兩個峰結(jié)構(gòu)前面的一個峰結(jié)構(gòu)分割出來,然后更新字符臨時分割段如下:將字符臨時分割段的起點(diǎn)更新到被分割出來的峰后面,字符臨時分割段終點(diǎn)不變,但是如果此時字符臨時分割段的起點(diǎn)等于終點(diǎn)時則將字符臨時分割段起點(diǎn)更新到先前的雙峰結(jié)構(gòu)的終止位置,并將臨時分割段的終點(diǎn)更新到下一個雙峰結(jié)構(gòu)的起點(diǎn),如果后面沒有雙峰結(jié)構(gòu)了則將臨時分割段的終點(diǎn)更新為字符結(jié)束點(diǎn),然后重復(fù)步驟4直到分割到字符結(jié)束點(diǎn)為止。

步驟5:進(jìn)行到步驟5說明在檢測雙峰結(jié)構(gòu)時并未檢測到,但是并不代表該車牌內(nèi)不存在雙峰結(jié)構(gòu)的字符,并不能排除存在有雙峰結(jié)構(gòu)的字符。此時分割就直接從字符起始點(diǎn)開始分割直到分割出5個字符。在分割中需要檢測的就是檢測相鄰的兩個峰結(jié)構(gòu)是不是一個字符的雙峰曲線。檢測所利用的方法和步驟4中雙峰結(jié)構(gòu)檢測方法相同,利用兩個峰結(jié)構(gòu)的寬度和該兩個峰結(jié)構(gòu)的寬度與字符寬度之間的關(guān)系進(jìn)行判斷。

步驟6:根據(jù)分割出的后面五個字符來分割前面兩個字符。首先將分割出來的后面五個字符中的最大寬度作為前面兩個字符的寬度。前面兩個字符為字母或者漢字,而字符也為雙峰結(jié)構(gòu)的,所以用后面五個字符中的最大寬度作為前面字符的寬度是合理的。分割前面兩個字符的方法為:從第二字符和第三字符的分割點(diǎn)向前移動字符寬度個像素,然后將離該向前移動后的分割點(diǎn)的最近一個波谷值作為車牌第一字符和第二字符的分割點(diǎn)。利用同樣方法也可以確定第一個字符的開始位置。

步驟7:對分割出來的字符序列進(jìn)行檢測,看該字符序列是否符合車牌字符序列的特征。車牌字符序列的特征可以用下面表達(dá)式來表示,假設(shè)dis1為前面兩個字符的寬度向量,dis2為后面五個字符的寬度向量,width為車牌寬度,height為車牌高度,則一個合理的車牌字符序列必須滿足下面的表達(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ù)增加,此時為了縮短特征提取時間,本系統(tǒng)用核主成分分析法方法進(jìn)行降維。字符識別方法采用的是對小樣本問題有較好分類效果的支持向量機(jī)。

本實(shí)施例采用基于聯(lián)合HOG特征的車牌字符識別算法來對車牌分割字符進(jìn)行識別;

常見車牌有7個字符,文中是將分割下來的7個字符進(jìn)行識別。車牌字符由英文字母、漢字和數(shù)字組成,中文和英文數(shù)字的特點(diǎn)不一樣:中文漢字筆畫稠密、輪廓復(fù)雜;數(shù)字和英文則輪廓清晰,結(jié)構(gòu)簡單。因此文中對漢字和英文數(shù)字采用不同的分類器,對它們分別提取特征。

本發(fā)明車牌識別過程是:

S3.1首先確定字符的分類器。

S3.2然后分別提取漢字、數(shù)字字母的灰度方向梯度直方圖(HOG)特征、二值HOG特征、16值HOG特征,將它們組合成聯(lián)合HOG特征,將得到的聯(lián)合HOG特征用核主成分分析法進(jìn)行降維。

S3.3最后將漢字和數(shù)字字母的聯(lián)合HOG特征送入支持向量機(jī)進(jìn)行訓(xùn)練和預(yù)測,將漢字和數(shù)字字母的識別結(jié)果進(jìn)行組合,得到最終的車牌字符識別結(jié)果。

基于聯(lián)合HOG的車牌識別流程如圖6所示。

方向梯度直方圖:

方向梯度直方圖的核心思想是計(jì)算圖像中被檢測目標(biāo)的局部梯度的統(tǒng)計(jì)信息。由于梯度是針對邊緣輪廓,因此,目標(biāo)的外形輪廓可以由梯度分布所描述。因此,HOG特征就是通過將分割下來的單個字符分割成小的連通區(qū)域,成為細(xì)胞單元,每個細(xì)胞單元中的每個像素生成一個梯度直方圖,這些直方圖的串聯(lián)就可表示出所檢測目標(biāo)的特征。為了提高光照變化的適應(yīng)性,將這些直方圖在分割下來的單個字符中的一個較大區(qū)域內(nèi)進(jìn)行對比度歸一化,具體來說就是計(jì)算每個局部直方圖在塊中的密度,所述塊為整個分割下來的較大區(qū)域圖像塊,根據(jù)密度來對這個塊中的每個細(xì)胞單元進(jìn)行歸一化。經(jīng)過歸一化后,HOG特征對光照變化和陰影可以獲得更好的適應(yīng)能力。

HOG具體實(shí)現(xiàn)過程如下:

(1)計(jì)算圖像梯度:先用模板[-1,0,1]對分割下來的單個字符做卷積運(yùn)算,得到水平方向梯度分量Gh(x,y),如式(1)所示;再用模板[-1,0,1]對分割下來的單個字符做卷積運(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ì)胞單元中的每個像素點(diǎn)都要為基于某個梯度方向的直方柱投票,梯度方向可取0~180°或者0~360°,在以往的實(shí)驗(yàn)證明0~180°效果較好。單個字符圖像被分為若干個細(xì)胞單元,每個細(xì)胞單元包括8*8個像素,將梯度范圍分為9個方向角度,因此利用9個方向角度對8*8個像素的梯度信息進(jìn)行投票。特別指出,直方圖投票采取加權(quán)投票,即每個像素的梯度幅值作為投票權(quán)重。

(3)將細(xì)胞單元組合成塊:塊的結(jié)構(gòu)有兩種,矩形塊(R-HOG)和環(huán)形塊(C-HOG)。本發(fā)明采用矩形塊來進(jìn)行目標(biāo)檢測,矩形塊一般包含3個參數(shù):每個塊中細(xì)胞單元的數(shù)目,每個細(xì)胞單元中像素點(diǎn)的數(shù)目以及每個細(xì)胞單元的方向角數(shù)目。

(4)塊內(nèi)歸一化計(jì)算公式如下所示:

L2_hys:先計(jì)算L2_norm,然后將v的最大值限定為0.2,再進(jìn)行歸一化。

其中,v表示包含給定塊統(tǒng)計(jì)直方圖信息的未歸一化向量;δ是一個很小的常數(shù),作用是為了避免分母為0;||v||k是v的k階范數(shù)。在Dalal的實(shí)驗(yàn)中發(fā)現(xiàn)L2_hys,L2_norm,L1_sqrt效果差不多,L1_norm字符識別效果要差一些,但這4個歸一化方法在識別性能上對比未歸一化都有明顯提高。本發(fā)明中采用的是L2_norm進(jìn)行歸一化。

假設(shè)將車牌字符歸一化到64*128,每8*8個像素組成一個細(xì)胞單元,每2*2個細(xì)胞單元組成一個塊,當(dāng)塊的滑動步長為8時,掃描垂直方向可以滑動15次,水平方向可以滑動7次,因此可以得到36*7*15=3780位的特征算子。單個車牌字符處理效果如圖4所示,車牌字符灰度圖的梯度幅值圖和梯度角度圖包含的細(xì)節(jié)信息多,但缺點(diǎn)在于角度圖中的字符輪廓不明顯,影響了車牌字符識別率。為了克服上述缺點(diǎn),提出了聯(lián)合HOG特征,將灰度圖的HOG特征、二值圖的HOG特征和16值圖的HOG特征聯(lián)合起來。

聯(lián)合方向梯度直方圖:

聯(lián)合HOG方法,即將灰度圖和二值圖分別計(jì)算HOG并組合成聯(lián)合特征,如下所示:Ht代表是得到的聯(lián)合特征,hi表示灰度圖和二值圖的HOG特征,ωi代表的是灰度圖和二值圖HOG的權(quán)重值,權(quán)重之和為1。權(quán)重分布的不同對后來的識別結(jié)果有很大影響。經(jīng)實(shí)驗(yàn)證明,權(quán)重值都為0.5時,識別效果是最好的,并且對比單獨(dú)的灰度圖或二值圖的識別效果好:

其中∑ωi=1

同時將16值圖的HOG特征加入聯(lián)合HOG特征,即分別進(jìn)行車牌字符的灰度圖、二值圖和16值圖的HOG計(jì)算,將結(jié)果以某種關(guān)系線性組合起來得到的聯(lián)合HOG特征,組合如下式所示:

Ht=ωgrayhgray2h216h16

Ht代表最終的聯(lián)合HOG特征,hgray,h2,h16分別代表車牌字符灰度圖、二值圖和16值圖的HOG特征,ωi代表權(quán)重。

聯(lián)合HOG將灰度圖、二值圖和16值圖的特點(diǎn)結(jié)合起來,能夠一定程度的彌補(bǔ)單獨(dú)進(jìn)行灰度圖或者二值圖的HOG運(yùn)算造成的不足,對識別率有也有一定程度的提高。

車牌字符特征分類:

車牌字符分類主要是指將待識別的字符特征與經(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ī)的核心思想在于利用一個分類超平面當(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í)時輸出圖像功能的車牌識別功能的相機(jī)或攝像機(jī)監(jiān)控系統(tǒng)中。

本領(lǐng)域技術(shù)人員將清楚本發(fā)明的范圍不限制于以上討論的示例,有可能對其進(jìn)行若干改變和修改,而不脫離所附權(quán)利要求書限定的本發(fā)明的范圍。盡管己經(jīng)在附圖和說明書中詳細(xì)圖示和描述了本發(fā)明,但這樣的說明和描述僅是說明或示意性的,而非限制性的。本發(fā)明并不限于所公開的實(shí)施例。

通過對本發(fā)明的研究,在實(shí)施本發(fā)明時本領(lǐng)域技術(shù)人員可以理解和實(shí)現(xiàn)所公開的實(shí)施例的變形。在本發(fā)明中,術(shù)語“包括”不排除其他步驟或元素,而不定冠詞“一個”或“一種”不排除多個。在彼此不同的從屬權(quán)利要求中引用的某些措施的事實(shí)不意味著這些措施的組合不能被有利地使用。權(quán)利要求書中的任何參考標(biāo)記不構(gòu)成對本發(fā)明的范圍的限制。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1