日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

一種車牌字符切割方法與流程

文檔序號:11143311閱讀:1031來源:國知局
一種車牌字符切割方法與制造工藝

本發(fā)明屬于智能交通技術(shù)領(lǐng)域,具體是一種在車牌圖像預(yù)處理之后的基于投影的單行車牌字符切割的車牌字符切割方法。



背景技術(shù):

車牌字符切割是車牌識別系統(tǒng)重的重要環(huán)節(jié),字符切割的準(zhǔn)確率直接決定車牌字符識別的準(zhǔn)確率。垂直投影法是解決車牌字符切割問題的一種方法,該方法主要用到了車牌二值化圖像的水平以及垂直投影直方圖,根據(jù)直方圖中的波峰波谷的變換規(guī)律確定每個字符的邊界。該方法的缺點是無法直接處理字符粘連、字符斷裂、錯誤字符等情況,用于切割清晰度不高或是污漬較多的車牌效果較差。

為了改善車牌字符切割的準(zhǔn)確度,國內(nèi)許多學(xué)者提出了改進(jìn)的基于投影的車牌字符切割方法,與本發(fā)明最為相近的方案包括:冉令峰(基于垂直投影的車牌字符切割方法[J].通信技術(shù),2012,45(04):89-91)首先通過垂直投影切割法得到所有可能的字符,然后根據(jù)獲得的字符個數(shù),判斷是否存在字符粘連或是字符斷裂的情況,如果字符數(shù)小于7,則認(rèn)為存在字符粘連的情況,然后找到該粘連字符投影值最小的區(qū)域進(jìn)行字符切割,如果字符數(shù)大于7,則認(rèn)為切割結(jié)果存在字符斷裂情況,通過合并中心點距離最小且中心點距離小于先驗字符寬度的字符對,解決字符斷裂問題。該方法的不足之處是:(1)該方法沒有給出車牌上下邊界精確定位的方法,直接進(jìn)行車牌切割會受到車牌邊框的干擾,導(dǎo)致切割結(jié)果不準(zhǔn)確;(2)該方法在沒有進(jìn)行錯誤字符的篩選前提下,直接根據(jù)字符數(shù)判斷是否存在字符粘連或是斷裂是不可靠的;(3)該方法根據(jù)粘連字符區(qū)域中的最小投影點進(jìn)行粘連字符的切割是不準(zhǔn)確的,因為粘連區(qū)域不一定就是投影值最小的區(qū)域,同時部分字符也存在投影值較小的區(qū)域,如“H”;(4)該方法通過將距離較近的字符對進(jìn)行合并解決字符斷裂問題,沒有考慮車牌可能存在污漬的情況,會造成斷裂字符、“1”與邊框、污漬錯誤合并的情況。路敬祎等(基于改進(jìn)的連通域算法與垂直投影相結(jié)合的車牌字符分割[J].模式識別與仿真,2015,34(12):93-97)首先通過分析車牌二值化圖像的行黑白跳變數(shù)以及行像素值進(jìn)行車牌水平切割,精確定位車牌上下邊界,然后利用連通域算法進(jìn)行車牌字符的粗略定位,利用垂直投影法進(jìn)行車牌字符的精確定位,同時對可能出現(xiàn)的字符粘連和字符斷裂情況給出了解決方案,與本發(fā)明的不同之處在于:(1)該方法的水平切割方法是對整個車牌二值化圖像進(jìn)行分析,而本發(fā)明的水平切割方法是以車牌二值化圖像的中心區(qū)域為感興趣的區(qū)域進(jìn)行分析,避免了邊框干擾,同時本發(fā)明還進(jìn)行了車牌上下邊界的二次定位,字符區(qū)域的定位更加準(zhǔn)確;(2)該方法沒有給出錯誤字符篩選的方案;(3)該方法根據(jù)粘連字符的投影值結(jié)合計算得到的字符標(biāo)準(zhǔn)寬度進(jìn)行粘連字符切割;(4)該方法通過試探合并法進(jìn)行斷裂字符修復(fù),如果合并后字符寬度滿足要求,則保留合并結(jié)果,沒有進(jìn)行錯誤字符的篩選,會出現(xiàn)字符與污漬、邊框錯誤合并的情況。陳濤等(基于投影和固有特征的車牌字符分割方法[J].計算機技術(shù)與發(fā)展,2009,19(5):45-47)首先通過黑白跳變法進(jìn)行定位車牌上下邊界的定位,然后根據(jù)車牌的固有特征,估算出第三個字符左邊界的大概位置,進(jìn)而根據(jù)車牌的垂直投影信息將該位置右邊的字符切割出來,并對切割出來的字符集進(jìn)行字符篩選、粘連字符的分割、斷裂字符的合并,從而得到車牌后5個字符,然后根據(jù)后5個字符估算出字符的標(biāo)準(zhǔn)寬度,用于前兩個字符定位。與本發(fā)明的不同之處在于:(1)該方法的水平切割方法只是基于黑白跳變法,而本發(fā)明的水平切割方法是以圖像中心區(qū)域為感興趣區(qū)域,結(jié)合黑白跳變法和投影值閾值法進(jìn)行分析的,同時還進(jìn)行了上下邊框的二次定位;(2)該方法取車牌寬度的一定比例長度作為字符先驗寬度,同時第三個字符左邊界也是按照車牌寬度的一定比例進(jìn)行估算,如果車牌定位不準(zhǔn)確,則字符先驗寬度和字符位置估算誤差較大,直接影響字符切割的準(zhǔn)確度;(3)該方法通過找到粘連字符區(qū)域中兩個最大投影點中間的最小投影點作為切割點,進(jìn)行粘連字符的切割,對于特殊的字符會存在誤切情況;(4)該方法處理斷裂字符的方法是,通過將寬度過小,間距過小的字符對進(jìn)行合并,如果合并后的字符滿足字符寬度要求,則進(jìn)行保留,會出現(xiàn)字符與污漬、邊框錯誤合并的情況。發(fā)明專利(申請?zhí)枺?01110454129.6,名稱:一種車牌字符分割的方法)首先通過逐行逐列分析投影值,找到車牌的上下左右邊框,進(jìn)行車牌精確定位,然后根據(jù)像素點間距逐行進(jìn)行像素點聚類,確定所有可能字符,并去除高度過小的字符,對于超過設(shè)定的寬度閾值的粘連字符,根據(jù)字符區(qū)域投影值最小點進(jìn)行粘連字符切割,如果字符集數(shù)量大于7,則選取字符集方差最小的7個字符作為正確的字符,最后對寬度過大的字符進(jìn)行位置調(diào)整,與本發(fā)明的不同之處在于:(1)該方法的水平切割方法是基于投影值閾值法;(2)該方法通過像素點聚類的方法確定可能字符;(3)該方法根據(jù)粘連字符區(qū)域的投影值最小點進(jìn)行字符切割,會造成誤切割的情況;(4)該方法通過找到方差最小的字符集進(jìn)行字符篩選,可靠性不高;(5)該方法沒有給出斷裂字符的處理方案。發(fā)明專利(申請?zhí)枺?01510459955.8,名稱:一種車牌字符分割的方法及裝置)首先采用垂直投影法進(jìn)行字符粗定位,然后對大于預(yù)設(shè)寬高比閾值的粘連字符進(jìn)行二次切割,切割方法為首先對粘連字符區(qū)域進(jìn)行二值化、腐蝕操作,然后使用垂直投影法進(jìn)行切割,同時該方法還給出了解決斷裂字符的方案,即首先找出所有小于一定寬高比閾值的過切割字符,然后根據(jù)字符間距,合并后的字符寬度判斷是否進(jìn)行字符合并,同時還對邊框、間隔點切割快進(jìn)行了剔除,最后該方法還給出了判斷車牌類型的方法,與本發(fā)明不同之處在于:(1)該方法沒有給出水平切割的處理方案;(2)通過投影法進(jìn)行粘連字符的處理,會造成誤切割的情況;(3)判斷斷裂字符和篩選錯誤字符的方法與本發(fā)明不同。發(fā)明專利(申請?zhí)枺?01110405227.0,名稱:一種車牌字符分割方法)首先根據(jù)黑白跳變法進(jìn)行車牌上下邊框的精確定位,然后根據(jù)車牌圖像的垂直投影信息,動態(tài)調(diào)整閾值進(jìn)行字符分割,直至切割出來的字符集數(shù)量在[7,15]范圍內(nèi),然后將字符集中寬度過小和像素點過小的字符進(jìn)行剔除,最后根據(jù)字符寬度和字符中心點距離,找到第一個或是第二個字符,進(jìn)而推算出其他字符,與本發(fā)明的不同之處在于:(1)該方法的水平切割方法是基于黑白跳變法;(2)該方法通過動態(tài)調(diào)整閾值進(jìn)行字符切割,以保證切割結(jié)果不存在字符粘連的情況,但該方法不能保證成功分割粘連字符,而且當(dāng)在閾值過大時,會造成正確字符誤切割的情況;(3)該方法沒有給出除漢字之外的其他字符的斷裂字符修復(fù)方案;(4)該方法在找到第一個或是第二個字符后,對于其后的切割塊直接進(jìn)行順序保留,沒有考慮到字符斷裂和字符缺失的情況。

綜上所述,當(dāng)前字符切割方法存在著如下不足之處:(1)部分方法沒有進(jìn)行車牌水平切割,或是切割方法不夠精確,這直接影響后續(xù)字符切割的準(zhǔn)確度;(2)部分方法沒有進(jìn)行錯誤字符的篩選,這會導(dǎo)致后續(xù)粘連字符和斷裂字符的誤處理;(3)大多數(shù)方法通過最小投影值點分割法處理粘連字符,對于粘連嚴(yán)重的字符和特殊字符存在誤切割的情況;(4)部分方法對于找到的7個切割塊直接進(jìn)行保留,沒有考慮字符可能卻在雜質(zhì)粘連、字符缺失、定位不精確等問題;(5)部分方法參考的的字符標(biāo)準(zhǔn)寬度、字符間距等數(shù)據(jù)是固定的或是按照車牌寬度的一定比例確定,如果車牌定位不準(zhǔn)確,則這些數(shù)據(jù)會出現(xiàn)較大誤差,直接影響算法的精度。



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

為了克服基于投影的直接切割方式的不足,本發(fā)明的目的是提供一種一種車牌字符切割方法,它是基于投影的字符切割方法,該方法在切分字符的基礎(chǔ)上實現(xiàn)了斷裂字符的修復(fù)、粘連字符分割、字符的精確定位等過程,該方法不包括車牌圖像預(yù)處理過程,如車牌圖像的灰度、濾波、二值化、傾斜校正等。

所述的一種車牌字符切割方法,其特征在于包括如下步驟:

步驟1:獲得經(jīng)過車牌定位、傾斜校正、灰度、濾波和二值化算法處理后的白底黑字的車牌二值化圖像D,其中圖像的寬度為wh1,高度為ht1,單位為像素;

步驟2:用基于投影的水平切割方法進(jìn)行車牌字符區(qū)域的精確定位,確定車牌字符區(qū)域Dc;

步驟3:進(jìn)行字符切割,得到字符集C={ci|ci=(li,ri,ai,bi);i=0,1,…,N-1},其中,li,ri,ai,bi分別表示字符ci的左右上下邊界,N表示集合C中元素的個數(shù);

步驟4:根據(jù)字符集C重新調(diào)整車牌字符區(qū)域Dc,具體為:

步驟4.1:計算出字符集C對應(yīng)的字符寬度集W和字符的最適寬度具體為:

步驟4.1.1:根據(jù)公式(14),得到字符集C對應(yīng)的字符寬度集W;

W={wi|wi=ci.r-ci.l+1,ci∈C,i=0,1,…,N-1} (14)

步驟4.1.2:根據(jù)公式(15)-(16),得到字符寬度集W',N'w表示集合W'中元素的個數(shù);

wa=cN-1.r-c0.l+1;cN-1,c0均∈C (15)

其中,wa表示最右側(cè)字符的右邊界和最左側(cè)字符的左邊界的距離;

步驟4.1.3:將字符寬度集W'中元素按照從小到大的順序進(jìn)行排序,然后不斷剔除掉W'中最大和最小的元素,直至W'中元素的個數(shù)小于5,根據(jù)公式(17)得到集合W'中元素的平均值,記為aw0;

步驟4.1.4:根據(jù)公式(17)-(19),計算出集合W'中所有元素的方差集Vw和標(biāo)準(zhǔn)差sw;

Vw={vi|vi=(wi-aw)2,wi∈W',i=0,1,…,N'w-1} (18)

其中,aw表示W(wǎng)'中所有字符寬度的平均值;

步驟4.1.5:若標(biāo)準(zhǔn)差sw<0.6且N'w>1,則跳至步驟4.2執(zhí)行;若標(biāo)準(zhǔn)差sw<0.6且N'w=1,則跳至步驟4.2執(zhí)行;若標(biāo)準(zhǔn)差sw≥0.6,則繼續(xù)執(zhí)行步驟4.1.6;

步驟4.1.6:剔除掉W'中對應(yīng)方差最大的元素,然后返回步驟4.1.4執(zhí)行;

步驟4.2:根據(jù)公式(20)得到字符集C1,字符集C1中元素個數(shù)為N1;

步驟4.3:統(tǒng)計出集合C1中滿足ci.a=0的字符個數(shù)Na以及滿足ci.b=htc-1的字符個數(shù)Nb;

步驟4.4:若則根據(jù)公式(21)計算出車牌上邊界a,否則令a=0;若則根據(jù)公式(22)計算得出車牌上邊界b,否則令b=htc-1;若且則直接跳至步驟6執(zhí)行;

步驟4.5:根據(jù)公式(23)調(diào)整車牌所在區(qū)域Dc,根據(jù)公式(24)更新區(qū)域Dc的高度htc;

Dc={(x,y)|x∈[a,b],y∈[0,wh1),(x,y)∈Dc} (23)

htc=b-a+1 (24)

步驟5:對步驟4確定的車牌區(qū)域Dc,根據(jù)步驟3重新進(jìn)行字符集定位,得到新的字符集C={ci=(li,ri,ai,bi)|i=0,1,…,N-1},N表示集合C中元素的個數(shù);

步驟6:解決字符斷裂問題,具體為:

步驟6.1:根據(jù)步驟4.1,得到字符集C對應(yīng)的字符寬度集W和字符最適寬度

步驟6.2:計算得到字符集C對應(yīng)的字符中心點間距集合M和最適字符中心點間距具體為:

步驟6.2.1:根據(jù)公式(25),得到字符中心點間距集合M,集合M的元素個數(shù)為Nm

步驟6.2.2:根據(jù)公式(26),得到中心點間距集合M′,并根據(jù)公式(27),得到集合M′中元素的平均值,記為am0;

步驟6.2.3:根據(jù)公式(27)-(29),得到集合M′中所有元素的方差集Vm和標(biāo)準(zhǔn)差sm;

Vm={vi|vi=(mi-am)2,mi∈W',i=0,1,…,Nm-1} (28)

其中,am表示M′中所有字符寬度的平均值;

步驟6.2.4:若集合M′中元素的個數(shù)3,則更新am0=am;

步驟6.2.5:若標(biāo)準(zhǔn)差sm<1.2且Nm>1,則跳至步驟6.3執(zhí)行;若標(biāo)準(zhǔn)差sm<1.2且Nm=1,則跳至步驟6.3執(zhí)行;若標(biāo)準(zhǔn)差sm≥1.2,則繼續(xù)執(zhí)行步驟6.2.6;

步驟6.2.6:剔除掉集合M′對應(yīng)方差最大的元素,然后返回步驟6.2.3執(zhí)行。

步驟6.3:根據(jù)字符對的中心點間距、字符高度和字符寬度分析出斷裂字符和錯誤字符,并實現(xiàn)斷裂字符的修復(fù)和錯誤字符的剔除,具體為:順序遍歷集合M中除首尾元素外的元素mi,i=1,2,…,Nm-2,若則ci和ci+1是斷裂字符對或存在錯誤字符,需進(jìn)一步根據(jù)滿足式(30)-(34)判斷字符對屬于何種情況,若滿足式(32),則需要剔除字符ci;若滿足式(33),則需要剔除字符ci+1;若滿足式(33),則字符ci和ci+1可以進(jìn)行合并;

hx=cx.b-cx.a+1;cx∈C,x=0,1,…,N-1 (30)

Y(x,y)=cy.r-cx.l+1;cx,cy∈C,x=0,1,…,N-1,y=0,1,…,N-1 (31)

其中,hx表示字符cx的高度,Y(x,y)表示集合C中字符cx的左邊界和字符cy的右邊界之間的距離;

步驟6.4:對字符集C進(jìn)行更新,得到解決了斷裂問題后的字符集C,字符集C中元素的個數(shù)為N;

步驟7:解決字符粘連問題,具體為:

步驟7.1:根據(jù)步驟4.1,得到字符集C對應(yīng)的字符寬度集W和字符最適寬度

步驟7.2:根據(jù)步驟6.2,得到字符集C對應(yīng)的字符中心點間距集合M和最適字符中心點間距

步驟7.3:順序遍歷字符集C中所有字符ci,i=0,1,…,N-1,若字符ci滿足式(38),則字符ci是粘連字符,進(jìn)一步根據(jù)滿足式(40)-(43)判斷該字符屬于何種字符粘連情況,再分別進(jìn)行處理:

A.若字符ci滿足式(40),則認(rèn)為該字符是錯誤字符,不進(jìn)行分割;

B.若字符ci滿足式(41),則認(rèn)為該字符是二字符粘連字符,需要進(jìn)一步根據(jù)滿足式(44)-(46)判斷該字符是何種二字符粘連情況,再分別進(jìn)行處理:

a.若字符ci滿足式(44),則認(rèn)為該字符是兩個“1”字符粘連的情況,將字符ci分割為和兩個字符;

b.若字符ci滿足式(44),則認(rèn)為該字符為“1”字符和非“1”字符粘連的情況,將字符ci分割為和兩個字符;

c.若字符ci滿足式(45),則認(rèn)為該字符為非“1”字符和“1”字符粘連的情況,將字符ci分割為和兩個字符;

d.若字符ci滿足則認(rèn)為該字符為兩個非“1”字符粘連的情況,將字符ci分割為和兩個字符;

C.若字符ci滿足式(42),則認(rèn)為該字符是三字符粘連字符,將字符ci分割為三個字符;

D.若字符ci滿足式(43),則認(rèn)為該字符是四字符粘連字符,將字符ci分割為四個字符;

(i=0或i=N-1)且(hi<0.6×htc或ti>0.8×wi×htc);wi∈W (40)

其中,di表示字符ci左側(cè)字符的右邊界與其右側(cè)字符的左邊界的距離,dLi表示字符ci左邊界與其左側(cè)字符右邊界的距離,dRi表示字符ci右邊界與其右側(cè)字符左邊界的距離,ti表示字符ci中黑色像素點的個數(shù),hi根據(jù)公式(30)計算得到,表示字符ci的高度;

步驟7.4:對字符集C進(jìn)行更新,得到解決了字符粘連問題后的字符集C,字符集C中元素的個數(shù)為N;

步驟8:若N>7,則需要進(jìn)行字符篩選,轉(zhuǎn)至步驟9執(zhí)行;否則,直接轉(zhuǎn)至步驟10執(zhí)行;

步驟9:篩選出正確的7個字符,具體為:

步驟9.1:根據(jù)步驟4.1,得到字符集C對應(yīng)的字符寬度集W和字符最適寬度

步驟9.2:根據(jù)步驟6.2,得到字符集C對應(yīng)的字符中心點間距集合M和最適字符中心點間距

步驟9.3:根據(jù)步驟3.2,更新字符集C中所有字符的上下邊界;

步驟9.4:確定中心字符cf,cf為字符集C中下標(biāo)為f的字符,具體為:順序遍歷中心點距離集合M,找到第一個滿足的元素,則f可由公式(47)確定;

步驟9.5:篩選出正確的7個字符,保存至字符集C2中,具體為:

步驟9.5.1:若字符cf不符合滿足式(48),則認(rèn)為該字符為正確的字符,將其保存至字符集C2中;

步驟9.5.2:順序交替的遍歷字符集C中位于字符cf兩邊的字符ci,若字符ci不符合滿足式(48),則認(rèn)為字符ci為正確字符,將其保存至字符集C2中;其中,字符的遍歷方式為順序交替的遍歷字符cf兩邊的字符,即所遍歷字符的下標(biāo)順序為f-1,f+1,f-2,f+2…,如果完成一側(cè)字符的遍歷,則結(jié)束交替遍歷,繼續(xù)進(jìn)行另一側(cè)字符的順序遍歷;每分析完一個字符,需要判斷判別式lc+rc+tc=7是否正確,若正確,則默認(rèn)剩余未判斷的字符都為正確字符,直接順序加到集合C2中;其中,lc表示字符cf左側(cè)未分析的字符數(shù)量,rc表示字符cf右側(cè)未分析的字符數(shù)量,tc表示當(dāng)前字符集C2中正確字符的數(shù)量;

其中,hi根據(jù)公式(30)計算得到,表示字符ci的高度;

步驟9.5.3:對字符集C2中字符按照ci.l從小到大的順序進(jìn)行排序,并更新C=C2

步驟10:若N<6,則表示車牌字符切割失敗,不再執(zhí)行下面的步驟;否則,繼續(xù)執(zhí)行步驟11;

步驟11:找到字符集C中位置存在位置偏差的字符進(jìn)行位置修正,實現(xiàn)字符的精確定位,集合U{ui|i=0,1,…,N-1}表示字符集C中字符位置的正確性,ui=-1表示字符ci位置存在偏差,ui=1表示字符ci位置正確,初始ui都為-1,算法的具體過程為:

步驟11.1:根據(jù)步驟4.1,得到字符集C對應(yīng)的字符寬度集W和字符最適寬度

步驟11.2:根據(jù)步驟6.2,得到字符集C對應(yīng)的字符中心點間距集合M和最適字符中心點間距

步驟11.3:若N=6且則認(rèn)為是第一個字符缺失的情況,估算出第一個字符的位置為并將其加到字符集C的最前端,并重新執(zhí)行步驟11.1和步驟11.2;

步驟11.4:順序遍歷字符集C,找到字符寬度合理的非粘連字符,即若字符ci滿足!Z(i)且則認(rèn)為該字符位置正確,令ui=1,其中Z(i)返回為true表示ci是由粘連算法分割出來的字符;

步驟11.5:順序遍歷字符集C,若字符ci符合滿足式(49),則將該字符下標(biāo)添加集合K中;

步驟11.6:順序遍歷集合K,若字符cki符合滿足式(50),則置ui=1,并將元素ki從集合K中剔除,同時若字符cki-1、cki+1符合滿足式(49),則將該字符下標(biāo)添加至集合K中,不斷分析集合K中元素所對應(yīng)的字符,直至集合K為空;

步驟11.7:首先對車牌后五個字符進(jìn)行位置修正,具體為:

步驟11.7.1:順序遍歷字符集C,若字符ci符合滿足式(51),則將該字符下標(biāo)添加集合K中;

步驟11.7.2:順序遍歷集合K,若字符符合滿足式(52),則可將字符調(diào)整為若字符符合滿足式(53),則可將字符調(diào)整為若字符符合滿足式(54),則可將字符調(diào)整為若不滿足以上條件,且符合條件(i=2或(i>2且i<6且ui+1=1且ui-1=-1)),則可將字符調(diào)整為若不滿足以上條件,且符合條件(i=6或(i>2且i<6且ui+1=-1且ui-1=1)),則可將字符調(diào)整為對完成字符位置修正后,置將元素ki從集合K中剔除,并重新執(zhí)行步驟11.2,同時若字符符合滿足式(51),則將該字符下標(biāo)添加至集合K中;不斷調(diào)整集合K中元素所對應(yīng)的字符,直至集合K為空;

i?。?且i?。?且且ui+1=1且ui-1=1 (54)

步驟11.8:若u0=1且u1=1,則直接跳至步驟12執(zhí)行,否則對車牌前兩個字符進(jìn)行位置修正,具體為:

步驟11.8.1:若u0=-1且u1=-1,則將字符c1的位置調(diào)整為同時置u1=1;

步驟11.8.2:若u0=1且u1=-1,則將字符c1的位置調(diào)整為同時置u1=1;

步驟11.8.2:若u0=-1且u1=1,則需根據(jù)滿足式(55)-(56)進(jìn)行分情況處理;若字符c0符合滿足式(55),則可將字符c0調(diào)整為若字符c0符合滿足式(56),則可將字符c0調(diào)整為否則,可將字符c0調(diào)整為

步驟11.9:將字符集C中所有字符ci,i=0,1,…,N-1調(diào)整為(ci.a,ci.b,0,htc-1);

步驟12:根據(jù)字符集C,確定各個字符在車牌圖像區(qū)域Dc中的位置,進(jìn)行字符切割。

所述的一種車牌字符切割方法,其特征在于步驟2中的用基于投影的水平切割方法進(jìn)行車牌字符區(qū)域的精確定位確定車牌字符區(qū)域Dc的具體步驟為:

步驟2.1:根據(jù)公式(1),得到圖像中心區(qū)域D1

其中,(x,y)表示區(qū)域D1的像素坐標(biāo);

步驟2.2:根據(jù)公式(2)-(3),得到區(qū)域D1中所有行的行像素值集Ph和行黑白跳變數(shù)集J,行像素值是指該行黑色像素點個數(shù),黑白跳變是指相鄰像素對的灰度值不同,即相鄰的兩個像素點分別為白色、黑色,或者黑色、白色,行黑白跳變數(shù)是該行滿足黑白跳邊的像素對個數(shù);

其中,px表示區(qū)域D1中第x行的行像素值,ptxy表示區(qū)域D1中點(x,y)的灰度值,jx表示區(qū)域D1中第x行的黑白跳變數(shù);

步驟2.3:確定車牌上邊界aL,即從區(qū)域D1的中線開始順序向上遍歷區(qū)域D1上半?yún)^(qū)域中的所有行,若第x行滿足式(4),則x+1行可以確定為車牌上邊界,令aL=x+1;若找不到上邊界,則令aL=0;

px>0.8×wh1或px<0.1×wh1或jx<8,其中px∈Ph,jx∈J(4)

步驟2.4:確定車牌下邊界bL,即從區(qū)域D1的中線開始順序向下遍歷區(qū)域D1下半?yún)^(qū)域中的所有行,若第x行滿足式(4),則x-1行可以確定為車牌下邊界,令bL=x-1;若找不到下邊界,則令bL=ht1-1;

步驟2.5:根據(jù)公式(5)確定車牌字符所在區(qū)域Dc,根據(jù)公式(6)確定區(qū)域Dc的高度htc;

Dc={(x,y)|x∈[aL,bL],y∈[0,wh1),(x,y)∈D} (5)

htc=bL-aL+1 (6)。

所述的一種車牌字符切割方法,其特征在于步驟3:進(jìn)行字符切割的具體步驟為:

步驟3.1:確定所有字符的左右邊界,具體為:

步驟3.1.1:根據(jù)公式(7),得到車牌區(qū)域Dc所有列的列像素值集Pv,圖像第y列的列像素值py表示y列中黑色像素點的個數(shù);

其中,ptxy表示區(qū)域Dc中點(x,y)的灰度值;

步驟3.1.2:順序遍歷列像素值集Pv,確定所有候選字符的滿足式(8)的左邊界集L={li|i=0,1,…,m}和滿足式(9)的右邊界集R={ri|i=0,1,…,m};

步驟3.1.3:順序組合集合L、R中的元素li,ri確定可能字符的左右邊界,如果該字符滿足式(10),則將該字符(li,ri,0,htc-1)加入到字符集C中;

其中,ptxy表示區(qū)域Dc中點(x,y)的灰度值,pci表示li,ri確定字符區(qū)域中的黑色像素點個數(shù);

步驟3.2:順序確定字符集C中所有字符ci的上下邊界,i=0,1,…,N-1,具體為:

步驟3.2.1:根據(jù)公式(11),得到字符ci所在區(qū)域的行像素值集

其中,ptxy表示區(qū)域Dc中點(x,y)的灰度值,ci.l表示字符ci的左邊界,ci.r表示字符ci的右邊界;

步驟3.2.2:順序遍歷行像素值集根據(jù)式(12)確定字符ci在垂直方向上的連續(xù)字符段集的上邊界集Ai={aj|j=0,1,…,mi};根據(jù)式(13)確定字符ci在垂直方向上的連續(xù)字符段集的下邊界集Bi={bj|j=0,1,…,mi},然后將集合A,B中元素兩兩組合,確定符ci在垂直方向上的連續(xù)字符段集Hi={hj|hj=(aj,bj),aj∈Ai,bj∈Bi,j=0,1…,mi};

步驟3.2.3:順序遍歷連續(xù)字符段集Hi,找到其中bj-aj最大的字符段,記為hk=(ak,bk),則ak、bk就是字符ci的上下邊界,即ci.a=ak,ci.b=bk。

本發(fā)明針對車牌字符切割過程中可能遇到的各種問題給出了解決方案,顯著改善了車牌字符切割的準(zhǔn)確率,為后續(xù)字符的正確識別提供了保障,與其他方法相比,本發(fā)明的優(yōu)點在于:1)通過分析黑白跳變數(shù)和行像素值進(jìn)行車牌水平切割,并通過切割出來的字符集的上下邊界對車牌字符區(qū)域進(jìn)行二次定位,所確定的車牌字符區(qū)域更加精確,可以有效避免由于上下邊框造成的字符粘連情況;2)根據(jù)估算出來的字符寬度進(jìn)行粘連字符的粗定位,最后通過字符集位置修正的方法,對存在位置偏移的字符進(jìn)行調(diào)整,可以較好的解決字符對粘連問題;3)本發(fā)明的字符集篩選步驟是首先找到車牌中間字符,然后從中間字符開始往兩邊按照交替遍歷的順序進(jìn)行字符判斷,這種方式可以避免對容易誤判的邊框切割塊進(jìn)行訪問,從而快速的找到正確的7個字符;4)本發(fā)明給出了字符集位置修正的方案,對存在污漬粘連的較寬字符塊、存在缺失的較窄字符塊,存在位置偏移的粘連字符塊進(jìn)行位置調(diào)整,使字符集定位更加準(zhǔn)確;5)本發(fā)明對容易遺漏的漢字字符給出了修復(fù)方案;6)本發(fā)明用于定位和分析的字符參考寬度、中心點距離都是用基于統(tǒng)計的方法動態(tài)獲取的,更加精確。

附圖說明

圖1為根據(jù)步驟1得到的白底黑字的車牌二值化圖像;

圖2為根據(jù)步驟2.1確定的車牌圖像中心區(qū)域D1

圖3:根據(jù)步驟2.2-2.4確定的車牌區(qū)域Dc;

圖4:根據(jù)步驟3得到的字符集定位結(jié)果;

圖5:根據(jù)步驟4重新定位確定的車牌區(qū)域Dc;

圖6:執(zhí)行步驟5之前的字符集定位結(jié)果;

圖7:根據(jù)步驟5進(jìn)行字符集重新定位后得到的字符集定位結(jié)果;

圖8:執(zhí)行步驟6之前的字符集定位結(jié)果;

圖9:根據(jù)步驟6進(jìn)行斷裂字符修復(fù)后得到的字符集定位結(jié)果;

圖10:執(zhí)行步驟7之前的字符集定位結(jié)果1;

圖11:根據(jù)步驟7進(jìn)行粘連字符切分后得到的字符集定位結(jié)果1;

圖12:執(zhí)行步驟7之前的字符集定位結(jié)果2;

圖13:根據(jù)步驟7進(jìn)行粘連字符切分后得到的字符集定位結(jié)果2;

圖14:執(zhí)行步驟7之前的字符集定位結(jié)果3;

圖15:根據(jù)步驟7進(jìn)行粘連字符切分后得到的字符集定位結(jié)果4;

圖16:執(zhí)行步驟9之前的字符集定位結(jié)果;

圖17:根據(jù)步驟9進(jìn)行字符篩選后得到的字符集定位結(jié)果;

圖18:執(zhí)行步驟11之前的字符集定位結(jié)果1;

圖19:根據(jù)步驟11進(jìn)行字符位置修正后得到的字符集定位結(jié)果1;

圖20:執(zhí)行步驟11之前的字符集定位結(jié)果2;

圖21:根據(jù)步驟11進(jìn)行字符位置修正后得到的字符集定位結(jié)果2;

圖22:執(zhí)行步驟11之前的字符集定位結(jié)果3;

圖23:根據(jù)步驟11進(jìn)行字符位置修正后得到的字符集定位結(jié)果3;

圖24:執(zhí)行步驟11之前的字符集定位結(jié)果4;

圖25:根據(jù)步驟11進(jìn)行字符位置修正后得到的字符集定位結(jié)果4;

圖26:執(zhí)行步驟11之前的字符集定位結(jié)果5;

圖27:根據(jù)步驟11進(jìn)行字符位置修正后得到的字符集定位結(jié)果5。

具體實施方式

下面結(jié)合實例來詳細(xì)闡述本發(fā)明,因為本發(fā)明涉及車牌切割過程中多個問題的處理,無法通過單一實例進(jìn)行說明,因此下面將通過多張車牌進(jìn)行算法的說明。

本發(fā)明的一種車牌字符切割方法,其特征在于包括如下步驟:

步驟1:獲得經(jīng)過車牌定位、傾斜校正、灰度、濾波和二值化算法處理后的白底黑字的車牌二值化圖像D,其中圖像的寬度為wh1,高度為ht1,單位為像素;

根據(jù)步驟1得到的白底黑字的車牌二值化圖像D,如圖1所示。

步驟2:用基于投影的水平切割方法進(jìn)行車牌字符區(qū)域的精確定位,確定車牌字符區(qū)域Dc,具體為:

步驟2.1:根據(jù)公式(1),得到圖像中心區(qū)域D1;

以圖1車牌為例,根據(jù)步驟2.1得到的用于水平切割的圖像中心區(qū)域D1,為圖2灰色線條中央的區(qū)域。

步驟2.2:根據(jù)公式(2)-(3),得到區(qū)域D1中所有行的行像素值集Ph和行黑白跳變數(shù)集J,行像素值是指該行黑色像素點個數(shù),黑白跳變是指相鄰像素對的灰度值不同,即相鄰的兩個像素點分別為白色、黑色,或者黑色、白色,行黑白跳變數(shù)是該行滿足黑白跳邊的像素對個數(shù);

其中,px表示區(qū)域D1中第x行的行像素值,ptxy表示區(qū)域D1中點(x,y)的灰度值,jx表示區(qū)域D1中第x行的黑白跳變數(shù);

步驟2.3:確定車牌上邊界aL,即從區(qū)域D1的中線開始順序向上遍歷區(qū)域D1上半?yún)^(qū)域中的所有行,若第x行符合滿足式(4),則x+1行可以確定為車牌上邊界,令aL=x+1;若找不到上邊界,則令aL=0;

步驟2.4:確定車牌下邊界bL,即從區(qū)域D1的中線開始順序向下遍歷區(qū)域D1下半?yún)^(qū)域中的所有行,若第x行符合滿足式(4),則x-1行可以確定為車牌下邊界,令bL=x-1;若找不到下邊界,則令bL=ht1-1;

px>0.8×wh1或px<0.1×wh1或jx<8;px∈Ph,jx∈J (4)

步驟2.5:根據(jù)公式(5)確定車牌字符所在區(qū)域Dc,根據(jù)公式(6)確定區(qū)域Dc的高度htc;

Dc={(x,y)|x∈[aL,bL],y∈[0,wh1),(x,y)∈D} (5)

htc=bL-aL+1 (6)

以圖2所示車牌為例,根據(jù)步驟2.2-2.5進(jìn)行車牌字符區(qū)域的定位,得到的車牌字符區(qū)域Dc為圖3灰色線條中央的區(qū)域。

步驟3:進(jìn)行字符切割,得到字符集C={ci|ci=(li,ri,ai,bi);i=0,1,…,N-1},其中,li,ri,ai,bi分別表示字符ci的左右上下邊界,N表示集合C中元素的個數(shù),具體為:

步驟3.1:確定所有字符的左右邊界,具體為:

步驟3.1.1:根據(jù)公式(7),得到車牌區(qū)域Dc所有列的列像素值集Pv,圖像第y列的列像素值py表示y列中黑色像素點的個數(shù);

其中,ptxy表示區(qū)域Dc中點(x,y)的灰度值;

步驟3.1.2:順序遍歷列像素值集Pv,確定所有候選字符的滿足式(8)的左邊界集L={li|i=0,1,…,m}和滿足式(9)的右邊界集R={ri|i=0,1,…,m};

步驟3.1.3:順序組合集合L、R中的元素li,ri確定可能字符的左右邊界,如果該字符符合滿足式(10),則將該字符(li,ri,0,htc-1)加入到字符集C中;

其中,ptxy表示區(qū)域Dc中點(x,y)的灰度值,pci表示li,ri確定字符區(qū)域中的黑色像素點個數(shù);

步驟3.2:順序確定字符集C中所有字符ci,i=0,1,…,N-1的上下邊界,具體為:

步驟3.2.1:根據(jù)公式(11),得到字符ci所在區(qū)域的行像素值集

其中,ptxy表示區(qū)域Dc中點(x,y)的灰度值;

步驟3.2.2:順序遍歷行像素值集根據(jù)滿足式(12),確定字符ci在垂直方向上的連續(xù)字符段集的上邊界集Ai={aj|j=0,1,…,mi},根據(jù)滿足式(13),確定字符ci在垂直方向上的連續(xù)字符段集的下邊界集Bi={bj|j=0,1,…,mi},然后將集合A,B中元素兩兩組合,確定符ci在垂直方向上的連續(xù)字符段集Hi={hj|hj=(aj,bj),aj∈Ai,bj∈Bi,j=0,1…,mi};

步驟3.2.3:順序遍歷連續(xù)字符段集Hi,找到其中bj-aj最大的字符段,記為hk=(ak,bk),則ak、bk就是字符ci的上下邊界,即ci.a=ak,ci.b=bk

以圖3所示車牌為例,根據(jù)步驟3,對由步驟2得到的車牌字符區(qū)域Dc進(jìn)行字符定位,字符集的定位結(jié)果如圖4所示,紅框表示每個字符區(qū)域的邊界。

步驟4:根據(jù)字符集C重新調(diào)整車牌字符區(qū)域Dc,具體為:

步驟4.1:計算出字符集C對應(yīng)的字符寬度集W和字符的最適寬度具體為:

步驟4.1.1:根據(jù)公式(14),得到字符集C對應(yīng)的字符寬度集W;

W={wi|wi=ci.r-ci.l+1,ci∈C,i=0,1,…,N-1} (14)

步驟4.1.2:根據(jù)公式(15)-(16),得到字符寬度集W',N'w表示集合W'中元素的個數(shù);

wa=cN-1.r-c0.l+1;cN-1,c0均∈C (15)

其中,wa表示最右側(cè)字符的右邊界和最左側(cè)字符的左邊界的距離;

步驟4.1.3:將字符寬度集W'中元素按照從小到大的順序進(jìn)行排序,然后不斷剔除掉W'中最大和最小的元素,直至W'中元素的個數(shù)小于5,根據(jù)公式(17)得到集合W'中元素的平均值,記為aw0;

步驟4.1.4:根據(jù)公式(17)-(19),計算出集合W'中所有元素的方差集Vw和標(biāo)準(zhǔn)差sw;

Vw={vi|vi=(wi-aw)2,wi∈W',i=0,1,…,N'w-1} (18)

其中,aw表示W(wǎng)'中所有字符寬度的平均值;

步驟4.1.5:若標(biāo)準(zhǔn)差sw<0.6且N'w>1,則跳至步驟4.2執(zhí)行;若標(biāo)準(zhǔn)差sw<0.6且N'w=1,則跳至步驟4.2執(zhí)行;若標(biāo)準(zhǔn)差sw≥0.6,則繼續(xù)執(zhí)行步驟4.1.6;

步驟4.1.6:剔除掉W'中對應(yīng)方差最大的元素,然后返回步驟4.1.4執(zhí)行;

步驟4.2:根據(jù)公式(20)得到字符集C1,字符集C1中元素個數(shù)為N1

步驟4.3:統(tǒng)計出集合C1中滿足ci.a=0的字符個數(shù)Na以及滿足ci.b=htc-1的字符個數(shù)Nb;

步驟4.4:若則根據(jù)公式(21)計算出車牌上邊界a,否則令a=0;若則根據(jù)公式(22)計算得出車牌上邊界b,否則令b=htc-1;若且則直接跳至步驟6執(zhí)行;

步驟4.5:根據(jù)公式(23)調(diào)整車牌所在區(qū)域Dc,根據(jù)公式(24)更新區(qū)域Dc的高度htc;

Dc={(x,y)|x∈[a,b],y∈[0,wh1),(x,y)∈Dc} (23)

htc=b-a+1 (24)

以圖5車牌為例,圖中綠線為步驟2確定的車牌字符區(qū)域的上下邊界,而灰色線條為步驟4重新定位確定的車牌字符區(qū)域的上下邊界可以看出,因為兩次定位結(jié)果的區(qū)域下邊界是重疊的,所以在圖中一紅綠交替的線標(biāo)出,可以看出經(jīng)過步驟4的重新定位得到的車牌字符區(qū)域Dc更加精確。

步驟5:對步驟4確定的車牌區(qū)域Dc,根據(jù)步驟3重新進(jìn)行字符集定位,得到新的字符集C={ci=(li,ri,ai,bi)|i=0,1,…,N-1},N表示集合C中元素的個數(shù);

以圖5所示車牌為例,由步驟3處理得到的字符集定位結(jié)果如圖6所示,由于上下邊框的干擾,存在多個粘連字符;對步驟4確定的更加精確的車牌字符區(qū)域進(jìn)行字符集定位,得到的字符集定位結(jié)果如圖7所示,定位結(jié)果不再存在粘連字符。

步驟6:解決字符斷裂問題,具體為:

步驟6.1:根據(jù)步驟4.1,得到字符集C對應(yīng)的字符寬度集W和字符最適寬度

步驟6.2:計算得到字符集C對應(yīng)的字符中心點間距集合M和最適字符中心點間距具體為:

步驟6.2.1:根據(jù)公式(25),得到字符中心點間距集合M,集合M的元素個數(shù)為Nm;

步驟6.2.2:根據(jù)公式(26),得到中心點間距集合M′,并根據(jù)公式(27),得到集合M′中元素的平均值,記為am0;

步驟6.2.3:根據(jù)公式(27)-(29),得到集合M′中所有元素的方差集Vm和標(biāo)準(zhǔn)差sm;

Vm={vi|vi=(mi-am)2,mi∈W',i=0,1,…,Nm-1} (28)

其中,am表示M′中所有字符寬度的平均值;

步驟6.2.4:若集合M′中元素的個數(shù)3,則更新am0=am;

步驟6.2.5:若標(biāo)準(zhǔn)差sm<1.2且Nm>1,則跳至步驟6.3執(zhí)行;若標(biāo)準(zhǔn)差sm<1.2且Nm=1,則跳至步驟6.3執(zhí)行;若標(biāo)準(zhǔn)差sm≥1.2,則繼續(xù)執(zhí)行步驟6.2.6;

步驟6.2.6:剔除掉集合M′對應(yīng)方差最大的元素,然后返回步驟6.2.3執(zhí)行。

步驟6.3:根據(jù)字符對的中心點間距、字符高度和字符寬度分析出斷裂字符和錯誤字符,并實現(xiàn)斷裂字符的修復(fù)和錯誤字符的剔除,具體為:順序遍歷集合M中除首尾元素外的元素mi,i=1,2,…,Nm-2,若則ci和ci+1是斷裂字符對或存在錯誤字符,需進(jìn)一步根據(jù)滿足式(30)-(34)判斷字符對屬于何種情況,若滿足式(32),則需要剔除字符ci;若滿足式(33),則需要剔除字符ci+1;若滿足式(33),則字符ci和ci+1可以進(jìn)行合并;

hx=cx.b-cx.a+1;cx∈C,x=0,1,…,N-1 (30)

Y(x,y)=cy.r-cx.l+1;cx,cy∈C,x=0,1,…,N-1,y=0,1,…,N-1 (31)

其中,hx表示字符cx的高度,Y(x,y)表示集合C中字符cx的左邊界和字符cy的右邊界之間的距離;

步驟6.4:對字符集C進(jìn)行更新,得到解決了斷裂問題后的字符集C,字符集C中元素的個數(shù)為N;

以圖8所示車牌為例,在經(jīng)過步驟5處理后得到的字符集定位結(jié)果中,第5個字符“0”因為斷裂被切割成兩個字符;經(jīng)過步驟6算法的處理,字符集的定位結(jié)果如圖9所示,斷裂字符“0”修復(fù)成功。

步驟7:解決字符粘連問題,具體為:

步驟7.1:根據(jù)步驟4.1,得到字符集C對應(yīng)的字符寬度集W和字符最適寬度

步驟7.2:根據(jù)步驟6.2,得到字符集C對應(yīng)的字符中心點間距集合M和最適字符中心點間距

步驟7.3:順序遍歷字符集C中所有字符ci,i=0,1,…,N-1,若字符ci符合滿足式(38),則字符ci可能是粘連字符,進(jìn)一步根據(jù)滿足式(40)-(43)判斷該字符屬于何種字符粘連情況,再進(jìn)行分情況處理:

A.若字符ci符合滿足式(40),則認(rèn)為該字符是錯誤字符,不進(jìn)行分割;

B.若字符ci符合滿足式(41),則認(rèn)為該字符是二字符粘連字符,需要進(jìn)一步根據(jù)滿足式(44)-(46)判斷該字符是何種二字符粘連情況,再進(jìn)行分情況處理:

a.若字符ci符合滿足式(44),則認(rèn)為該字符是兩個“1”字符粘連的情況,可將字符ci分割為和兩個字符;

b.若字符ci符合滿足式(44),則認(rèn)為該字符為“1”字符和非“1”字符粘連的情況,可將字符ci分割為和兩個字符;

c.若字符ci符合滿足式(45),則認(rèn)為該字符為非“1”字符和“1”字符粘連的情況,可將字符ci分割為和兩個字符;

d.若字符ci滿足則認(rèn)為該字符為兩個非“1”字符粘連的情況,可將字符ci分割為和兩個字符;

C.若字符ci符合滿足式(42),則認(rèn)為該字符是三字符粘連字符,可將字符ci分割為三個字符;

D.若字符ci符合滿足式(42),則認(rèn)為該字符是四字符粘連字符,可將字符ci分割為四個字符;

(i=0或i=N-1)且(hi<0.6×htc或ti>0.8×wi×htc);wi∈W (40)

其中,di表示字符ci左側(cè)字符的右邊界與其右側(cè)字符的左邊界的距離,dLi表示字符ci左邊界與其左側(cè)字符右邊界的距離,dRi表示字符ci右邊界與其右側(cè)字符左邊界的距離,ti表示字符ci中黑色像素點的個數(shù),hi根據(jù)公式(30)計算得到,表示字符ci的高度;

步驟7.4:對字符集C進(jìn)行更新,得到解決了字符粘連問題后的字符集C,字符集C中元素的個數(shù)為N;

以圖10所示車牌為例,該車牌存在二字符粘連字符,第4和第5個字符沒有切分成功,經(jīng)過步驟7粘連字符切分算法的處理后,字符集的定位結(jié)果如圖11所示,粘連字符成功切分,且定位較為準(zhǔn)確;以圖12所示車牌為例,該車牌存在二字符粘連和三字符粘連字符,經(jīng)過步驟7粘連字符切分算法的處理后,字符集的定位結(jié)果如圖11所示,粘連字符成功切分,但是第一個字符的定位存在偏差,后續(xù)將通過步驟11的位置修正算法進(jìn)行字符位置的修正;以圖14所示車牌為例,該車牌存在四字符粘連字符,經(jīng)過步驟7粘連字符切分算法的處理后,字符集的定位結(jié)果如圖15所示,粘連字符成功切分,但個別字符的定位存在偏差,后續(xù)將通過步驟11的位置修正算法進(jìn)行字符位置的修正。

步驟8:若N>7,則需要進(jìn)行字符篩選,轉(zhuǎn)至步驟9執(zhí)行;否則,直接轉(zhuǎn)至步驟10執(zhí)行;

以圖16所示車牌為例,該車牌定位確定了9個切割塊,因此需要進(jìn)行字符篩選。

步驟9:篩選出正確的7個字符,具體為:

步驟9.1:根據(jù)步驟4.1,得到字符集C對應(yīng)的字符寬度集W和字符最適寬度

步驟9.2:根據(jù)步驟6.2,得到字符集C對應(yīng)的字符中心點間距集合M和最適字符中心點間距

步驟9.3:根據(jù)步驟3.2,更新字符集C中所有字符的上下邊界;

步驟9.4:確定中心字符cf,cf為字符集C中下標(biāo)為f的字符,具體為:順序遍歷中心點距離集合M,找到第一個滿足的元素,則f可由公式(47)確定;

步驟9.5:篩選出正確的7個字符,保存至字符集C2中,具體為:

步驟9.5.1:若字符cf不符合滿足式(48),則認(rèn)為該字符為正確的字符,將其保存至字符集C2中;

步驟9.5.2:順序交替的遍歷字符集C中位于字符cf兩邊的字符ci,若字符ci不符合滿足式(48),則認(rèn)為字符ci為正確字符,將其保存至字符集C2中;其中,字符的遍歷方式為順序交替的遍歷字符cf兩邊的字符,即所遍歷字符的下標(biāo)順序為f-1,f+1,f-2,f+2…,如果完成一側(cè)字符的遍歷,則結(jié)束交替遍歷,繼續(xù)進(jìn)行另一側(cè)字符的順序遍歷;每分析完一個字符,需要判斷判別式lc+rc+tc=7是否正確,若正確,則默認(rèn)剩余未判斷的字符都為正確字符,直接順序加到集合C2中;其中,lc表示字符cf左側(cè)未分析的字符數(shù)量,rc表示字符cf右側(cè)未分析的字符數(shù)量,tc表示當(dāng)前字符集C2中正確字符的數(shù)量;

其中,hi根據(jù)公式(30)計算得到,表示字符ci的高度;

步驟9.5.3:對字符集C2中字符按照ci.l從小到大的順序進(jìn)行排序,并更新C=C2;

以圖16所示車牌為例,根據(jù)步驟9進(jìn)行字符篩選,首先可以確定遍歷起點字符cf為第5個字符“3”,然后順序交替遍歷字符cf兩邊字符,分析保留正確的7個字符,最終的篩選結(jié)果如圖13所示,首尾的錯誤字符成功被剔除。

步驟10:若N<6,則表示車牌字符切割失敗,不再執(zhí)行下面的步驟;否則,繼續(xù)執(zhí)行步驟11;

步驟11:找到字符集C中位置存在位置偏差的字符進(jìn)行位置修正,實現(xiàn)字符的精確定位,集合U{ui|i=0,1,…,N-1}表示字符集C中字符位置的正確性,ui=-1表示字符ci位置存在偏差,ui=1表示字符ci位置正確,初始ui都為-1,算法的具體過程為:

步驟11.1:根據(jù)步驟4.1,得到字符集C對應(yīng)的字符寬度集W和字符最適寬度

步驟11.2:根據(jù)步驟6.2,得到字符集C對應(yīng)的字符中心點間距集合M和最適字符中心點間距

步驟11.3:若N=6且則認(rèn)為是第一個字符缺失的情況,估算出第一個字符的位置為并將其加到字符集C的最前端,并重新執(zhí)行步驟11.1和步驟11.2;

步驟11.4:順序遍歷字符集C,找到字符寬度合理的非粘連字符,即若字符ci滿足!Z(i)且則認(rèn)為該字符位置正確,令ui=1,其中Z(i)返回為true表示ci是由粘連算法分割出來的字符;

步驟11.5:順序遍歷字符集C,若字符ci符合滿足式(49),則將該字符下標(biāo)添加集合K中;

步驟11.6:順序遍歷集合K,若字符符合滿足式(50),則置ui=1,并將元素ki從集合K中剔除,同時若字符符合滿足式(49),則將該字符下標(biāo)添加至集合K中,不斷分析集合K中元素所對應(yīng)的字符,直至集合K為空;

步驟11.7:首先對車牌后五個字符進(jìn)行位置修正,具體為:

步驟11.7.1:順序遍歷字符集C,若字符ci符合滿足式(51),則將該字符下標(biāo)添加集合K中;

步驟11.7.2:順序遍歷集合K,若字符符合滿足式(52),則可將字符調(diào)整為若字符符合滿足式(53),則可將字符調(diào)整為若字符符合滿足式(54),則可將字符調(diào)整為

若不滿足以上條件,且符合條件(i=2或(i>2且i<6且ui+1=1且ui-1=-1)),則可將字符調(diào)整為若不滿足以上條件,且符合條件(i=6或(i>2且i<6且ui+1=-1且ui-1=1)),則可將字符調(diào)整為對完成字符位置修正后,置將元素ki從集合K中剔除,并重新執(zhí)行步驟11.2,同時若字符符合滿足式(51),則將該字符下標(biāo)添加至集合K中;不斷調(diào)整集合K中元素所對應(yīng)的字符,直至集合K為空;

i?。?且i?。?且且ui+1=1且ui-1=1 (54)

步驟11.8:若u0=1且u1=1,則直接跳至步驟12執(zhí)行,否則對車牌前兩個字符進(jìn)行位置修正,具體為:

步驟11.8.1:若u0=-1且u1=-1,則將字符c1的位置調(diào)整為同時置u1=1;

步驟11.8.2:若u0=1且u1=-1,則將字符c1的位置調(diào)整為同時置u1=1;

步驟11.8.2:若u0=-1且u1=1,則需根據(jù)滿足式(55)-(56)進(jìn)行分情況處理;若字符c0符合滿足式(55),則可將字符c0調(diào)整為若字符c0符合滿足式(56),則可將字符c0調(diào)整為否則,可將字符c0調(diào)整為

步驟11.9:將字符集C中所有字符ci,i=0,1,…,N-1調(diào)整為(ci.a,ci.b,0,htc-1);

以圖18所示車牌為例,該車牌的第一個字符被誤剔除,經(jīng)過步驟11處理后,字符集的定位結(jié)果如圖19所示,第一個字符修復(fù)成功;以圖20所示車牌為例,因為“皖”字是左右偏旁的字,定位時只切割出字符的右部,存在字符缺失,經(jīng)過步驟11處理后,字符集的定位結(jié)果如圖21所示,“皖”字修復(fù)成功;以圖22所示車牌為例,該車牌的第6個字符“7”因為本身殘缺導(dǎo)致定位不準(zhǔn)確,經(jīng)過步驟11處理后,字符集的定位結(jié)果如圖23所示,字符“7”的定位更加精確;以圖24所示車牌為例,該車牌第一個和最后一個字符存在雜質(zhì)粘連,導(dǎo)致字符定位過寬,經(jīng)過步驟11處理后,字符集的定位結(jié)果如圖25所示,粘連的雜質(zhì)剔除成功;以圖26所示車牌為例,該車牌最后兩個字符是由步驟7的粘連字符切分算法處理得到的字符,字符的定位存在偏差,經(jīng)過步驟11處理后,字符集的定位結(jié)果如圖27所示,定位修正了存在定位偏差的字符。

步驟12:根據(jù)字符集C,確定各個字符在車牌圖像區(qū)域Dc中的位置,進(jìn)行字符切割。

本說明書實施方法中所列舉的處理對象,僅用于說明本發(fā)明的實現(xiàn)過程,本發(fā)明所能處理的對象情況并非僅限于所舉實例。

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