專利名稱:手寫漢字首末筆段的聯(lián)機(jī)提取方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機(jī)系統(tǒng)的手寫漢字輸入,特別是嵌入式系統(tǒng)的手寫漢字首末筆段的聯(lián)機(jī)提取方法背景技術(shù)漢字手寫輸入是計算機(jī)系統(tǒng)漢字輸入的重要手段。特別是嵌入式系統(tǒng),由于鍵盤小,鍵數(shù)少,所以漢字輸入是嵌入式系統(tǒng)廣泛應(yīng)用的嚴(yán)重障礙。不同書寫習(xí)慣的人在書寫首末筆段相對規(guī)范,變形不大,例如人們在辨別草書時,首末筆劃的作用是很大的,因此首末筆段對于手寫漢字識別是相當(dāng)重要的。
本發(fā)明提出聯(lián)機(jī)首末筆段的提取方法。“信息交換用漢字編碼字符集(GB2312-1980)”的基本集是根據(jù)每個筆劃像素點和鄰域內(nèi)的像素點的方向像素長度(該方向上與該像素點相鄰的兩個筆劃輪廓點之間的像素距離)判別該像素點所屬“橫”、“豎”、“撇”和“捺”4種方向子模式的概率,作為識別整字的統(tǒng)計信息。本方法主要是利用漢字像素點的筆劃統(tǒng)計特征進(jìn)行整字識別,沒有涉及筆段提取內(nèi)容。
發(fā)明專利“手寫輸入筆劃分段的方法”(公開號為CN1128074A)通過在圖像的每個點彎曲度的導(dǎo)數(shù),然后選擇彎曲度導(dǎo)數(shù)高的點與彎曲度導(dǎo)數(shù)低的隨后的點之間中點上的某些像素作為筆劃邊界點,主要用于字符和阿拉伯?dāng)?shù)字,對于方塊漢字,因此筆段基本為直線,該法使用受到很大限制。
劉峽壁,賈云得提出的“漢字筆段形成規(guī)律及其提取方法”(計算機(jī)學(xué)報.2004年27卷3期.389-395)及發(fā)明專利“一種基于段化規(guī)律的漢字筆段提取方法”(公開號為CN1474350A)是根據(jù)漢字筆畫的粗細(xì)大小發(fā)生變化而且是漸變的這一特點,把并歸納出階梯型筆段和平行長筆段。其中,階梯型筆段對應(yīng)于撇和捺,平行長筆段對應(yīng)于橫和豎。利用該方法可將像素級漢字圖像轉(zhuǎn)變?yōu)橐怨P段為單位的圖像,主要面向漢字識別、細(xì)化及漢字字體的自動生成,但沒有涉及筆段的識別。
但是上面所述的三種方法都屬于脫機(jī)處理,沒有利用漢字書寫時的筆劃順序,因此不能識別首末筆段。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)存在的缺點,根據(jù)首末筆段組合對漢字進(jìn)行分類的要求,提供一種方便、快捷和實用的寫漢字首末筆段的聯(lián)機(jī)提取方法,提高手寫漢字識別的速度。
首末筆段組合對漢字進(jìn)行分類原理如下(1)在漢字的書寫中,一般按“緩-快-緩”的速度書寫,因此不同書寫習(xí)慣的人在書寫首末筆段相對變形不大。(2)在漢字的各種書體中,書寫速度比較快的行書和草書,其起筆和收筆一般與楷書變化不大,而連筆和簡化一般出現(xiàn)在字體結(jié)構(gòu)的中間,首末筆結(jié)構(gòu)不會簡化,這也在很大程度上影響了人的書寫習(xí)慣,使首末筆段比較規(guī)范。實際上,人們在辨別草書時,首末筆劃的作用是很大的。根據(jù)上述原理,可利用首末筆段的組合對漢字進(jìn)行分類和編碼,從而形成一個運用二級分類的思想加快漢字手寫體識別中搜索速度的方法。
根據(jù)漢字的特點,可將筆段的方向劃分為橫、豎、撇、捺4種,這4種首末筆段可兩兩組合成4×4=16類的組合,因此可把漢字就可以分為16類。這16類分別為橫橫、橫豎、橫撇、橫捺、豎橫、豎豎、豎撇、豎捺、撇橫、撇豎、撇撇、撇捺、捺橫、捺豎、捺撇、捺捺。編碼方法則是對橫、豎、撇、捺4種筆段取0、1、2、3四種,對16類的編碼方式為見表1。
表1.根據(jù)漢的首末筆段分類的編碼
在分類的過程中,考慮到漢字的手寫體風(fēng)格,某些字的筆段方向往往偏向于另一類型。例如以“辶”為根的漢字,末筆段是捺,但手寫時很大概率會偏向橫,又如以“月”為根的漢字,首筆段是撇,手寫時會偏向豎,這些情況都是以較大概率出現(xiàn)的??紤]到上述存在模糊筆段的情況,某些字歸劃到多個類中。如橫撇具體的分類情況如下橫撇(編碼02)102個扮,榜,磅,彬,勃,材,才,摻,場,廠,抄,趁,翅,蕩,刀,刁,動,坊,芳,防,芬,酚,功,拐,翰,夯,護(hù),劫,勁,九,均,勘,礦,擴(kuò),撈,勞,老,勒,楞,荔,勵,歷,力,蘆,擄,驢,茅,矛,募,耪,拋,彭,劈,砌,翹,切,琴,勤,勸,韌,刃,弱,薩,莎,砂,杉,聲,尸,勢,抒,塌,梯,萬,霧,習(xí),形,芽,牙,嚴(yán),楊,揚,尹,勇,予,羽,珍,拽,比,蓖,斃,輥,棍,花,掄,輪,尼,砒,批,琵,屁,陀,駝其它橫橫、橫豎、橫捺、豎橫等的分類情況同橫撇。經(jīng)過實驗和統(tǒng)計,形成了GB2312-80規(guī)定的3755個一級漢字的分類表。分類統(tǒng)計情況如表2。由表2可見,分類表總計為3998個,比3755個多了223個,這是分類交叉的結(jié)果。其中個數(shù)最多的一類為橫捺,共628個;最少的一類為“豎撇”,共43個??梢?,對一級漢字使用本發(fā)明的分類法,最大的一類的搜索速度只有原來的16.72%,平均而言,可搜索速度為原來的1/16左右。這使得識別時的搜索次數(shù)大大降低,從而大大提高識別速度。
表2.一級漢字的首末筆分類統(tǒng)計表(總計3998)
經(jīng)過實驗和統(tǒng)計,形成了GB2312-80規(guī)定的3008個二級漢字的分類表。分類情況如可見表3。由表3可知,分類表總計為3175個,比3008個多了168個,這是分類交叉的結(jié)果。個數(shù)最多的一類為橫捺,共414個;最少的一類為“豎撇”,共42個??梢?,對二級漢字使用本發(fā)明的分類法,最大的一類的搜索速度只有原來的13.76%,平均而言,可搜索速度為原來的1/16左右。這使得識別時的搜索次數(shù)大大降低,從而大大提高識別速度。
表3.二級漢字的首末筆分類統(tǒng)計表
完成首末筆段組合對漢字進(jìn)行分類后,如何提取漢字首末筆段成為在系統(tǒng)中按首末筆段輸入漢字的關(guān)鍵因素。因為首末筆段提取后則可利用常見的筆段識別方法對首末筆段進(jìn)行識別。本發(fā)明提出了利用聯(lián)機(jī)手寫輸入的采樣點的順序及間距提取首末筆段的方法。
手寫漢字輸入首末筆段的聯(lián)機(jī)提取方法,步驟如下(1)首筆段的提取方法,包括,a根據(jù)軌跡斷點確定首筆劃終點從筆劃軌跡的第一個采樣點開始往后搜索,當(dāng)任意兩相鄰點距離,大于閾值L1時,就判定這兩個點屬于不同的筆劃,記下分界點位置,作為首筆劃的終點,首筆段的終點最長截止于此;b根據(jù)首筆劃拐點提取首筆段連接筆伐第一個采樣點與步驟a確定的首筆劃終點形成首筆劃軌跡,并把該軌跡用長為I1的直線段擬合,從第1段直線段開始,并分別比較相鄰兩段直線的斜率,如果斜率相差大于設(shè)定的斜率閥D1值,則判定筆劃已經(jīng)轉(zhuǎn)向,此轉(zhuǎn)向點為拐點,根據(jù)首筆劃拐點數(shù)量,首筆劃可以分割為兩個以上的筆段,記下第一個筆劃方向突變的點,此時該點就是用戶寫的漢字的首筆劃的終點;如果整段軌跡沒有拐點,則取整段直線為首筆段;(2)末筆段的提取方法,包括,c根據(jù)軌跡斷點確定末筆劃起點從筆劃軌跡的最后一個采樣點開始往前搜索,當(dāng)任意兩相鄰點距離大于設(shè)置的距離閾值L2時,就判定這兩個點屬于不同的筆劃,記下分界點位置,作為末筆劃的起點,末筆段的起點最長截止于此;d根據(jù)最后末筆劃的拐點提取末筆段連接筆伐最后一個采樣點與步驟c確定的分界點,形成軌跡,并用長為l2的直線段擬合該軌跡,然后分別比較相鄰兩段直線的斜率,如果斜率相差大于設(shè)定的閾值D2,則判定筆劃已經(jīng)轉(zhuǎn)向,該轉(zhuǎn)向點為末筆劃的拐點,根據(jù)末筆劃的拐點數(shù)可以分割為兩個以上的筆段,記下末筆劃第一個拐點,該拐點就是用戶寫的漢字的末筆段的起點,如果整段軌跡沒有拐點,則取整段軌跡為末筆段。
所述的擬合為線性擬合。所述的閾值L1、L2是根據(jù)手寫板的采樣頻率和分辨率確定,取值為中速書寫相鄰采樣點之間距離的3~10倍。所述的閾值D1和D2是根據(jù)漢字結(jié)構(gòu)的統(tǒng)計特征確定,取值范圍為0.45~1。所述的I1和I2小于相鄰采樣點之間距離5倍。
本發(fā)明所述的筆劃是指漢字普通筆劃;筆段是筆劃的一部分,是筆劃中連續(xù)書寫,沒有拐點的部分。
本發(fā)明與現(xiàn)有技術(shù)相比,具有如下優(yōu)點1、首末筆段一般在書寫中變形不大,在快速書寫時簡化不大,不同的書寫者差異較小,因此可認(rèn)為是漢字識別最主要的結(jié)構(gòu)特征。本發(fā)明抓住漢字的主要特征。
2、本發(fā)明屬于聯(lián)機(jī)法,利用書寫者書寫時的筆劃順序信息,從而獲取漢字的主要特征。
3、本發(fā)明結(jié)合漢字的二級分類,可提高識別速度。
圖1是漢字首筆段提取方法流程圖。
圖2是漢字末筆段提取方法流程圖。
圖3是“發(fā)”字首筆段提取示意圖。
圖4是“發(fā)”字末筆段提取示意圖。
圖5是為“達(dá)”字首末筆段提取示意圖。
圖6是實施例中漢字首末筆段聯(lián)機(jī)提取裝置構(gòu)成的邏輯結(jié)構(gòu)圖。
具體實施例方式
下面結(jié)合附圖和實施例對本發(fā)明作進(jìn)一步的說明,但本發(fā)明要求保護(hù)的范圍并不局限于實施例表示的范圍。
本發(fā)明提出了利用聯(lián)機(jī)手寫輸入的采樣點的順序及間距提取首末筆段的方法。圖1是漢字首筆段提取方法流程圖。提取手寫漢字輸入首筆段的方法是根據(jù)漢字筆劃走向的特點,確定首筆段的起點和終點,其中L1為判斷軌跡斷點的閾值,I1為擬合輸入軌跡的直線段的長度,D1為在第一段軌跡根據(jù)直線段斜率劃分筆段的閾值,L1、l1、D1為預(yù)先設(shè)定的數(shù)值。
該方法分兩步。
步驟1為根據(jù)軌跡斷點確定首筆劃終點。步驟1-1是從筆劃軌跡的第一個采樣點開始往后搜索,到步驟1-2,當(dāng)任意兩相鄰點距離大于閾值L1時,就判定這兩個點屬于不同的筆劃,步驟1-3記下分界點位置作為首筆劃的終點,首筆段的終點最長截止于此。如果出現(xiàn)步驟1-4,即整段軌跡都沒有斷點,則取步驟1-3的整段軌跡為首筆段。
步驟2是根據(jù)首筆劃拐點提取首筆段。步驟2-1從把該軌跡用長為I1的直線段線性擬合(后同)。從步驟2-2第1段直線段開始,并分別比較相鄰兩段的方向,如果步驟2-3確定方向相差大于一定角度則判定筆劃已經(jīng)轉(zhuǎn)向,可以分割為兩個以上筆段。步驟2-4記下筆劃方向突變的點,考慮到筆段識別需要該筆段的方向,所以保存擬合直線段斜率,此時該點就是用戶寫的漢字的首筆的終點。如果經(jīng)步驟2-5確定,整段軌跡沒有拐點,則步驟2-6取各個直線段斜率的平均值。
提取手寫漢字輸入末筆段的方法與提取首筆段的方法類似。圖2是漢字末筆段提取方法流程圖,其中L2為判斷軌跡斷點的閾值,l2為擬合輸入軌跡的直線段的長度,D2為最后一段軌跡根據(jù)直線段斜率劃分筆段的閾值,L2、l2、D2為預(yù)先設(shè)定的數(shù)值。
該方法分兩步。
步驟3為根據(jù)軌跡斷點確定末筆劃起點步驟3-1從筆劃軌跡的最后一個采樣點開始往前搜索;步驟3-2判斷,當(dāng)任意兩相鄰點距離大于閾值L2時,就認(rèn)為這兩個點屬于不同的筆劃,步驟3-3記下分界點位置,作為最后一段軌跡的起點,末筆段的起點最長截止于此。步驟3-4判斷,如果整段軌跡都沒有斷點,則步驟3-3此時取整段軌跡。
步驟4根據(jù)最后末筆劃的拐點提取末筆段。其中,步驟4-1連接筆伐最后一個采樣點與步驟3確定的分界點,形成軌跡,該軌跡用長為l2的直線段擬合;步驟4-2從最后一段直線段開始,并分別比較相鄰兩段的方向,步驟4-3判斷,如果方向相差大于設(shè)定的角度閾值D2則判定筆劃已經(jīng)轉(zhuǎn)向,可以分割為兩個以上的筆段。步驟4-4記下筆劃方向突變點,考慮到筆段識別需要該筆段的方向,所以保存擬合直線段斜率,此時該點就是用戶寫的漢字的末筆段的起點。步驟4-5判斷,如果整段軌跡沒有拐點,步驟4-6則取各個直線段斜率的平均值。
實施例1“發(fā)”字首末筆段聯(lián)機(jī)提取。
圖3為“發(fā)”字聯(lián)機(jī)提取首筆段的例子。實施使用基于三星公司的ARM9處理器S3C2410X的嵌入式處理系統(tǒng)SBC-2410X,該系統(tǒng)配置帶液晶顯示的觸摸屏,其邏輯結(jié)構(gòu)見圖6。當(dāng)進(jìn)行手寫漢字識別時,ARM板通過觸摸屏采集輸入模擬信號,通過A/D轉(zhuǎn)換得到觸摸屏點擊的坐標(biāo),并經(jīng)過濾波和平滑,轉(zhuǎn)換為像素點序列。采用圖1的方法,第1步(參見圖1步驟1)先根據(jù)軌跡斷點確定首筆劃終點。方法是從第1個像素點序列開始往后搜索(參見圖1步驟1-2),在圖3軌跡斷點3-1處,兩相鄰點距離大于閾值L1,L1是根據(jù)手寫板的采樣頻率和分辨率確定,取值一般為中速書寫相鄰采樣點之間距離的3~10倍,該相鄰點距離大于閾值L1處取為首筆劃的終點(參見圖1步驟1-3)。第2步是根據(jù)首筆劃拐點提取首筆段。方法是使用長為I1的直線段線性擬合(參見圖2步驟2-1),I1原則上是越小越精確,一般取小于相鄰采樣點之間距離5倍,這里設(shè)置為相鄰采樣點之間距離4倍。從第1段直線段開始分別比較相鄰兩段的方向(參見圖2步驟2-2),在圖3軌跡拐點3-2處,兩直線斜率差1.015,大于閾值D1(預(yù)先設(shè)為0.56),(D1和D2是根據(jù)漢字結(jié)構(gòu)的統(tǒng)計特征確定,取值范圍一般為0.45~1),因此可判定筆劃已經(jīng)轉(zhuǎn)向,在拐點3-1把首筆劃分割為兩個筆段(參見圖2步驟2-3)。記下拐點3-2(參見圖2步驟2-4),從第1點到該點的軌跡即為首筆段,保存擬合直線段斜率用作筆段識別。
圖4為“發(fā)”字提取末筆段的例子。該字最后兩個筆段分別為捺、捺,這兩個筆段構(gòu)成了軌跡的斷點(4-1),但最后兩個字段之間沒有拐點。所以提取該字末筆段的第1步為找出最后1個筆段和倒數(shù)第2筆段之間的軌跡斷點,第2步為經(jīng)過檢測,因為最后兩個字段之間沒有拐點,所以可認(rèn)為去掉倒數(shù)第2筆段剩下的軌跡。其具體的提取方法同圖3為“發(fā)”字提取首筆段。完成上述兩步后即可提取“發(fā)”字首(末)筆段。
實施例2“達(dá)”字首末筆段聯(lián)機(jī)提取。
圖5為“達(dá)”字提取首末筆段的例子。該字前兩個筆段分別為橫、撇,其中第1筆段與第2筆段出現(xiàn)軌跡斷點(5-1),去掉第2筆段剩下的軌跡,沒有拐點,所以可取為第1筆段。該字的最后5個筆段分別為點、橫、豎、撇、捺,其中倒數(shù)第4和第5筆段之間出現(xiàn)軌跡斷點(5-2),而倒數(shù)第1和第2筆段出現(xiàn)拐點(5-3),所以倒數(shù)第1筆段為末筆段。具體的提取方法同實施例“發(fā)”字提取首筆段。
上述實施例1和例2結(jié)合漢字的二級分類,抓住首末筆段在書寫中變形不大,在快速書寫時簡化不大,不同的書寫者差異較小的主要特征,并利用書寫者書寫時的筆劃順序信息,從而獲取漢字的主要特征,達(dá)到了快速識別漢字的目的。
權(quán)利要求
1.手寫漢字輸入首末筆段的聯(lián)機(jī)提取方法,其特征在于包括如下步驟(1)首筆段的提取方法,包括,a根據(jù)軌跡斷點確定首筆劃終點從筆劃軌跡的第一個采樣點開始往后搜索,當(dāng)任意兩相鄰點距離,大于閾值L1時,就判定這兩個點屬于不同的筆劃,記下分界點位置,作為首筆劃的終點,首筆段的終點最長截止于此;b根據(jù)首筆劃拐點提取首筆段連接筆伐第一個采樣點與步驟a確定的首筆劃終點形成首筆劃軌跡,并把該軌跡用長為I1的直線段擬合,從第1段直線段開始,并分別比較相鄰兩段直線的斜率,如果斜率相差大于設(shè)定的斜率閥D1值,則判定筆劃已經(jīng)轉(zhuǎn)向,此轉(zhuǎn)向點為拐點,根據(jù)首筆劃拐點數(shù)量,首筆劃可以分割為兩個以上的筆段,記下第一個筆劃方向突變的點,此時該點就是用戶寫的漢字的首筆劃的終點;如果整段軌跡沒有拐點,則取整段直線為首筆段;(2)末筆段的提取方法,包括,c根據(jù)軌跡斷點確定末筆劃起點從筆劃軌跡的最后一個采樣點開始往前搜索,當(dāng)任意兩相鄰點距離大于設(shè)置的距離閾值L2時,就判定這兩個點屬于不同的筆劃,記下分界點位置,作為末筆劃的起點,末筆段的起點最長截止于此;d根據(jù)最后末筆劃的拐點提取末筆段連接筆伐最后一個采樣點與步驟c確定的分界點,形成軌跡,并用長為12的直線段擬合該軌跡,然后分別比較相鄰兩段直線的斜率,如果斜率相差大于設(shè)定的閾值D2,則判定筆劃已經(jīng)轉(zhuǎn)向,該轉(zhuǎn)向點為末筆劃的拐點,根據(jù)末筆劃的拐點數(shù)可以分割為兩個以上的筆段,記下末筆劃第一個拐點,該拐點就是用戶寫的漢字的末筆段的起點,如果整段軌跡沒有拐點,則取整段軌跡為末筆段。
2.根據(jù)權(quán)利要求1所述的手寫漢字輸入首末筆段的聯(lián)機(jī)提取方法,其特征在于所述的擬合為線性擬合。
3.根據(jù)權(quán)利要求1所述的手寫漢字輸入首末筆段的聯(lián)機(jī)提取方法,其特征在于所述的閾值L1、L2是根據(jù)手寫板的采樣頻率和分辨率確定,取值為中速書寫相鄰采樣點之間距離的3~10倍。
4.根據(jù)權(quán)利要求1所述的手寫漢字輸入首末筆段的聯(lián)機(jī)提取方法,其特征在于所述的閾值D1和D2是根據(jù)漢字結(jié)構(gòu)的統(tǒng)計特征確定,取值范圍為0.45~1。
5.根據(jù)權(quán)利要求1所述的手寫漢字輸入首末筆段的聯(lián)機(jī)提取方法,其特征在于所述的I1和I2小于相鄰采樣點之間距離5倍。
全文摘要
本發(fā)明公開了手寫漢字輸入首末筆段的聯(lián)機(jī)提取方法。包括首筆段的提取方法根據(jù)軌跡斷點確定首筆劃終點,從筆劃軌跡的第一個采樣點開始往后搜索,當(dāng)任意兩相鄰點距離,大于閾值L1時,就判定這兩個點屬于不同的筆劃,記下分界點位置,作為首筆劃的終點,首筆段的終點最長截止于此;以及根據(jù)首筆劃拐點提取首筆段。該方法還包括末筆段的提取方法根據(jù)軌跡斷點確定末筆劃起點,根據(jù)最后末筆劃的拐點提取末筆段。該方法結(jié)合漢字的首末筆段二級分類,抓住首末筆段在書寫中變形不大,在快速書寫時簡化不大,不同的書寫者差異較小的主要特征,并利用書寫者書寫時的筆劃順序信息,從而獲取漢字的主要特征,達(dá)到了快速識別漢字的目的。
文檔編號G06F3/023GK1920857SQ20061003757
公開日2007年2月28日 申請日期2006年9月8日 優(yōu)先權(quán)日2006年9月8日
發(fā)明者韋崗, 陸以勤, 呂錦 申請人:華南理工大學(xué)