手寫粘連數字串的識別方法
【專利摘要】本發(fā)明公開了一種手寫粘連數字串的識別方法,包括了以下幾個主要步驟:(a)聯機手寫輸入數字串,獲取該數字串的筆畫數目m、每個筆畫所對應的軌跡坐標和該數字串的圖像;(b)計算每個筆畫各自的中心橫坐標;(c)將步驟a所得數字串的圖像進行初次分割;(d)將m個筆畫分類至M個區(qū)域;(e.f.g.h.i) 對M個初分割區(qū)域進行判斷,滿足條件直接識別;不滿足條件分段識別;(j)返回最終結果。與現有方法相比,本發(fā)明可以實現連續(xù)手寫數字字符串的識別,大大提高手寫數字的錄入效率。同時,本發(fā)明有很強的通用性,對于不同的粘連情況都有好的效果。
【專利說明】手寫粘連數字串的識別方法
【技術領域】
[0001]本發(fā)明屬于手寫體數字串的識別方法,特別是一種手寫粘連數字串的識別方法。
【背景技術】
[0002]光學字符識別(OCR)技術已經成為人們錄入文字信息的關鍵技術,一個OCR系統可以實現將影像中的文字信息轉化成相應的計算機文字,大大減少了影像資料的存儲空間。同時,提取出的計算機文字信息可以直接用于分析、傳輸、處理等。因此,OCR技術在各個領域都得到了廣泛的應用?,F有的OCR技術中,單個手寫數字的識別已經廣泛使用。但是,這些OCR技術都是基于單個字符的逐個識別,其識別效率太低,不能滿足對字符串識別的要求,尤其是字符串粘連時,其識別率就更低。
[0003]中國專利2012100769575公開了一種連筆手寫字符的識別方法,該方法包括下述步驟:(1)對輸入圖像進行降噪處理,消除數字噪聲;(2)通過基于邊緣的字數估計算法計算字數;(3)通過最小代價切分算法計算最佳字符分割方案;(4)通過基于筆畫的筆跡跟蹤算法確定是否存在需要再切分的塊,如果存在需要再切分的塊,則返回步驟(2)重新計算、分割;如果不存在,則進行下一步驟;(5)對分割后的字符圖像進行OCR識別,轉化為計算機文字。該方法能夠實現連筆字符的精確分割,提高對連筆字符識別的正確率。但是,該方法僅能夠對粘連較少的數字串進行識別,對于粘連較大的數字串的識別,還不能滿足實際要求。而且,對于手寫粘連數字串識別的通用性差,只能對于一些特定的粘連情況有好的效果O
【發(fā)明內容】
[0004]本發(fā)明的目的在于克服現有技術中存在的缺陷,提供一種手寫粘連數字串的識別方法。
[0005]為達到上述目的,本發(fā)明采用如下技術方案:
一種手寫粘連數字串的識別方法,其特征在于包括以下步驟:
a.聯機手寫輸入數字串,獲取該數字串的筆畫數目m、每個筆畫所對應的軌跡坐標和該數字串的圖像;
b.根據步驟a所得的每個筆畫所對應的軌跡坐標,計算每個筆畫各自的中心橫坐標,得到這m個筆畫的中心橫坐標數組avgX[i],i=l,......,m ;
c.將步驟a所得數字串的圖像進行初次分割,得到M個初分割區(qū)域,并記錄該M個初分割區(qū)域的左右邊界值(Lx[j],Rx[j] ),j=l,......,M ;
d.將m個筆畫所對應的軌跡坐標的中心橫坐標avgX[i],i=l,......,m與M個初分割區(qū)域的左右邊界值(Lx [j],Rx[j] ),j=l,......,M進行對比,若Lx[j]〈avgX[i]〈Rx[j],則將第
i個筆畫劃歸為初分割區(qū)域j,得到數組count [j],j=l,......,M,其中count[j]的值表示第j個初分割區(qū)域中包含的筆畫個數;得到筆畫數組V[j] [count [j]],保存第j個初分割區(qū)域對應不同筆畫i的數值; e.讀取步驟d所得數組V[j][Count[j]],j=l,……,M,判斷第j個初分割區(qū)域中的筆畫個數count[j]是否為1,若是則轉入步驟h ;否則轉入步驟f ;
f.若第j個初分割區(qū)域的筆畫個數count[j]>l,且該初分割區(qū)域的寬高比小于1,即初分割區(qū)域的寬度與初分割區(qū)域高度的比值小于1,若是則轉入步驟h ;否則轉入步驟g ;
g.數字串的分段識別:讀取前2個筆畫,采用神經網絡算法進行識別,若成功識別則刪除這2個筆畫,返回識別結果;若不能識別,則讀取前I個筆畫,采用神經網絡算法進行識另IJ,并刪除這個已識別的筆畫,同時返回識別結果,重復步驟g直至該初分割區(qū)域的筆畫全部識別完畢,轉入步驟i ;
h.采用神經網絡算法進行識別,并返回識別結果;
1.讀取筆畫數組中的下一個數值V[j+l][Count[j+l]],重復步驟e;直至筆畫數組中的所有數值均處理完畢;
j.返回最終識別結果,得到手寫粘連數字串所表示的數值。
[0006]上述的步驟a的具體步驟為:
a-Ι.檢測手寫數字之間的提筆和落筆,記錄字符串的筆畫數目m ;a-2.獲取m個筆畫相對應的軌跡坐標:筆畫的軌跡坐標用(Xn,Yn)點坐標序列表示:(X1J1), (X2, Y2),…,(Xn,Yn),其中η是筆畫的采樣點數。
[0007]a-3.得到軌跡坐標數組Datapoint [m] [n],m就是字符串的筆畫數目;Datapoint [i] [η]保存第i個筆畫的軌跡坐標,?=1,2,3...,ηι。
[0008]上述的步驟c的具體步驟為:
c-Ι.圖像的灰度化,圖像的灰度化采用加權平均的方法,公式如下:
Colorpoint = 0.30*R +0.59*G +0.11*B(1.1)
c-2.圖像的二值化,二值化時選取特定閾值A,A的取值范圍50~200 ;當某個點的灰度值大于A時,設該點為白色,否則為黑色;
c-3.圖像的初次分割:檢測字符之間的白色像素列來確定初分割區(qū)域的邊界,分別記錄M個初分割區(qū)域的左右邊界值(Lx [M],Rx [M])。
[0009]本發(fā)明通過獲取錄入字符串的筆畫信息,經過預處理、粗分割區(qū)域筆畫信息判斷、粗分割區(qū)域識別和未識別區(qū)域的分段依次識別,能夠實現對粘連較大數字串的識別。同時,本發(fā)明有很強的通用性,對于不同的粘連情況都有好的效果。
【專利附圖】
【附圖說明】
[0010]圖1是本發(fā)明手寫粘連數字串識別方法的總的流程示意圖;
圖2是本發(fā)明方法中數字識別的識別流程圖。
[0011]圖3為本發(fā)明方法中分段識別的識別流程圖。
[0012]圖4是本發(fā)明實施例中的手寫粘連數字串圖像。
[0013]圖5是本發(fā)明實施例中得到的初分割區(qū)域。
[0014]【具體實施方式】:
為了使本領域中的技術人員更好地理解本申請中的技術方案,下面將結合本申請實施例中的附圖,對本申請的技術方案進行更加清楚、完整的表述。本發(fā)明的優(yōu)選實例詳述如下: 實施例一:
參見圖1,一種手寫粘連數字串的識別方法,包括以下幾個主要步驟:a.聯機手寫輸入數字串,獲取該數字串的筆畫數目m、每個筆畫所對應的軌跡坐標和該數字串的圖像;
步驟a的具體步驟為:
a-Ι.檢測手寫數字之間的提筆和落筆,記錄字符串的筆畫數目m ;a-2.獲取m個筆畫相對應的軌跡坐標:筆畫的軌跡坐標用(Xn,Yn)點坐標序列表示:(X1J1), (X2, Y2),…,(Xn,Yn),其中η是筆畫的采樣點數。
[0015]a-3.得到軌跡坐標數組Datapoint [m] [n],m就是字符串的筆畫數目;Datapoint [i] [η]保存第i個筆畫的軌跡坐標,?=1,2,3...,ηι。
[0016]參見圖4,本實施例中手寫粘連數字串的筆畫數目m為7,取η為50。
[0017]b.根據步驟a所得的每個筆畫所對應的軌跡坐標,計算每個筆畫各自的中心橫坐標,得到這7個筆畫的中心橫坐標數組avgX[i],i=l,......,7 ;
c.將步驟a所得數字串的圖像進行初次分割,得到M個初分割區(qū)域,并記錄該M個初分割區(qū)域的左右邊界值(Lx[j],Rx[j] ),j=l,......,M ;
步驟c的具體步驟為:
c-Ι.圖像的灰度化,圖像的灰度化采用加權平均的方法,公式如下:
Colorpoint = 0.30*R +0.59*G +0.11*B(1.1)
c-2.圖像的二值化,二值化時選取特定閾值A,A的取值范圍50~200 ;當某個點的灰度值大于A時,設該點為白色,否則為黑色;
c-3.圖像的初次分割:檢測字符之間的白色像素列來確定初分割區(qū)域的邊界,分別記錄M個初分割區(qū)域的左右邊界值(Lx [M],Rx [M])。
[0018]參見圖5,本實施例中初分割區(qū)域的數目M為3。
[0019]d.將7個筆畫所對應的軌跡坐標的中心橫坐標avgX[7],i=l,……,7與3個初分割區(qū)域的左右邊界值(Lx[j],Rx[j] ),j=l,2,3進行對比,若Lx[j]〈avgX[i]〈Rx[j],則將第
i個筆畫劃歸為初分割區(qū)域j,得到數組count [j],j=l,......,M,其中count[j]的值表示第j個初分割區(qū)域中包含的筆畫個數;得到筆畫數組V[j] [count [j]],保存第j個初分割區(qū)域對應不同筆畫i的數值;
e.f.g.h.1.對3個初分割區(qū)域進行判斷,滿足條件直接識別;不滿足條件分段識別法識別;
j.返回最終識別結果,得到手寫粘連數字串所表示的數值。
[0020]實施例二:
參見圖2,數字串的識別方法,包括以下幾個主要步驟:
e.讀取步驟d所得數組V[j][Count[j]],j=l,2,3,判斷第j個初分割區(qū)域中的筆畫個數count[j]是否為1,若是則轉入步驟h ;否則轉入步驟f ;
f.若第j個初分割區(qū)域的筆畫個數count[j]>l,且該初分割區(qū)域的寬高比小于1,即初分割區(qū)域的寬度與初分割區(qū)域高度的比值小于1,若是則轉入步驟h ;否則轉入步驟g ;
g.數字串的分段識別,轉入步驟i;
h.采用神經網絡算法進行識別,并返回識別結果; 1.讀取筆畫數組中的下一個數值V[j+l][Count[j+l]],重復步驟e ;直至筆畫數組中的所有數值均處理完畢;
j.返回最終識別結果,得到手寫粘連數字串所表示的數值。
[0021]實施例三:
參見圖3,分段識別方法,步驟如下:
讀取前2個筆畫,采用神經網絡算法進行識別,若成功識別則刪除這2個筆畫,返回識別結果;若不能識別,則讀取前I個筆畫,采用神經網絡算法進行識別,并刪除這個已識別的筆畫,同時返回識別結果,重復步驟g直至該初分割區(qū)域的筆畫全部識別完畢。
【權利要求】
1.在一種手寫粘連數字串的識別方法,其特征在于包括以下步驟: a.聯機手寫輸入數字串,獲取該數字串的筆畫數目m、每個筆畫所對應的軌跡坐標和該數字串的圖像; b.根據步驟a所得的每個筆畫所對應的軌跡坐標,計算每個筆畫各自的中心橫坐標,得到這m個筆畫的中心橫坐標數組avgX[i],i=l,......,m ; c.將步驟a所得數字串的圖像進行初次分割,得到M個初分割區(qū)域,并記錄該M個初分割區(qū)域的左右邊界值(Lx[j],Rx[j] ),j=l,......,M ; d.將m個筆畫所對應的軌跡坐標的中心橫坐標avgX[i],i=l,......,m與M個初分割區(qū)域的左右邊界值(Lx [j],Rx[j] ),j=l,......,M進行對比,若Lx[j]〈avgX[i]〈Rx[j],則將第i個筆畫劃歸為初分割區(qū)域j,得到數組count [j],j=l,......,M,其中count[j]的值表示第j個初分割區(qū)域中包含的筆畫個數;得到筆畫數組V[j] [count [j]],保存第j個初分割區(qū)域對應不同筆畫i的數值; e.數字串的識別:讀取步驟d所得數組V[j][Count[j]],j=l,……,M,判斷第j個初分割區(qū)域中的筆畫個數count[j]是否為1,若是則轉入步驟h ;否則轉入步驟f ; f.若第j個初分割區(qū)域的筆畫個數count[j]>l,且該初分割區(qū)域的寬高比小于1,即初分割區(qū)域的寬度與初分割區(qū)域高度的比值小于1,若是則轉入步驟h ;否則轉入步驟g ; g.數字串的分段識別:讀取前2個筆畫,采用神經網絡算法進行識別,若成功識別則刪除這2個筆畫,返回識別結果;若不能識別,則讀取前I個筆畫,采用神經網絡算法進行識另IJ,并刪除這個已識別的筆畫,同時返回識別結果,重復步驟g直至該初分割區(qū)域的筆畫全部識別完畢,轉入步驟i ; h.采用神經網絡算法進行識別,并返回識別結果; 1.讀取筆畫數組中的下一個數值V[j+l][Count[j+l]],重復步驟e;直至筆畫數組中的所有數值均處理完畢; j.返回最終識別結果,得到手寫粘連數字串所表示的數值。
2.根據權利要求1所述的手寫粘連數字串的識別方法,其特征在于所述的步驟a的具體步驟為: a-Ι.檢測手寫數字之間的提筆和落筆,記錄字符串的筆畫數目m ; a-2.獲取m個筆畫相對應的軌跡坐標:筆畫的軌跡坐標用(Xn,Yn)點坐標序列表示:(X1, Y1), (X2, Y2),…,(Xn, Yn),其中η是筆畫的采樣點數; a-3.得到軌跡坐標數組Datapoint [m] [η],m就是字符串的筆畫數目;Datapoint [i][η]保存第i個筆畫的軌跡坐標,i=l,2,3…,m0
3.根據權利要求1所述的手寫粘連數字串的識別方法,其特征在于所述的步驟c的具體步驟為: c-Ι.圖像的灰度化,圖像的灰度化采用加權平均的方法,公式如下:
Colorpoint = 0.30*R +0.59*G +0.11*B(1.1) c-2.圖像的二值化,二值化時選取特定閾值A,A的取值范圍50~200 ;當某個點的灰度值大于A時,設該點為白色,否則為黑色; c-3.圖像的初次分割:檢測字符之間的白色像素列來確定初分割區(qū)域的邊界,分別記錄M個初分割區(qū)域的左右邊界值(Lx [M],Rx [M])。
【文檔編號】G06K9/20GK104504385SQ201410749989
【公開日】2015年4月8日 申請日期:2014年12月10日 優(yōu)先權日:2014年12月10日
【發(fā)明者】高新聞, 管奔博, 俞黎卿 申請人:上海大學