字符結構知識在車牌識別中的應用
對于一條豎筆畫的字符,判斷該筆畫的位置是在左邊(C和K)、中間(1和Y)還是在右邊(J),即可識別出廠。根據有無右斜筆畫區分C和K,按照中間豎筆畫的長短區分1和Y。
.由于字符N有一右斜筆畫,以此將其從M和U中識別出來。對于M和U,依靠結構特征已無法識別,本文使用字符圖像中前景像素個數與背景像素個數的比值來判斷。根據這兩個字符的特點,只計算字符上半部分即可。 · 識別5、E、F、G、H、I和T。這些字符中,只有E具有三條橫筆畫,F有兩條橫筆畫,其余為一條橫筆畫。剩下的字符中,按照豎筆畫的數量分為兩組: 5、L和T為一條豎筆畫,G和H為兩條豎筆畫。H的兩條豎筆畫長度相同,而G的兩條豎筆畫則一長一短,這是區分G和H的標志。T的豎筆畫在中間,5和L的豎筆畫在左邊。L的豎筆畫長,5的豎筆畫短,這樣就完成了5、T和L的識別。
搜索封閉環實際上就是在字符圖像中搜索連通域。在字符的二值圖像中,假定字符像素值1,背景像素值為0,則:
(1)無封閉環的字符圖像中只有兩個連通域,即字符連通域和背景連通域,圖2(a)中的B和F。
(2)只有一個封閉環的字符圖像中有三個連通域,即一個字符連通域和兩個背景連通域,圖2(c)中的B1、B2和F。
(3)有兩個封閉環的字符圖像中有四個連通域,即一個字符連通域和三個背景連通域,圖2(b)中的B1she、B2、B3和F。
搜索封閉環的算法如下:
(1)讀入二值字符圖像。
(2)找到一個像素值為0的背景像素點B。
(3)搜索B的連通域,并將該連通域內的像素全部標記為背景1。
(4)遍歷圖像中像素值為0的像素。
(5)若所有0像素都已標記為背景1,則該圖像內封閉環個數為0,跳轉到(11)。
(6)若存在沒有標記為背景1的0像素點B1,則有封閉環。
(7)搜索B1的連通域,并將該連通域內的像素全部標記為背景2。
(8)遍歷圖像中像素值為0的像素。
(9)若所有0像素都已標記為背景1或背景2該圖像內封閉環個數為1,跳轉到(11)。
(10)若存在沒有標記為背景1或背景2的0像素,則該圖像內封閉環個數為2。
(11)結束搜索,返回封閉環個數。
字符的筆畫抽取可參見文獻[1]
2 識別測試
利用本識別方法,筆者對從車牌中分割出的字符進行了識別測試。所測試的字符包括了車牌中所使用的全部35個數字和字母共7000幅圖像,其中圖幅最大的為l00xl00像素,而最小的是20x20像素。正確識別的有6946幅,正確率超過99%。其中識別錯誤的圖像主要集中在字母0和D。通過對這些容易識別錯誤的字符進行二次識別,可以大大提高識別準確率
本文提出的字符識別方法的核心就是通過判定樹對字符群體層層分類,從樹干開始逐步縮小識別范圍,直到最后只有一類字符,即識別成功。
該方法具有如下特點:
(1)不需要建立識別樣本庫,完全依據字符自身的結構特征進行逼近識別。
(2)不需要將待識別字符與全部字符進行匹配識別,因而提高了識別速度和準確率。
評論