本發(fā)明屬于模式識(shí)別領(lǐng)域,具體涉及一種基于模板匹配的脫機(jī)漢字筆畫(huà)提取方法。
背景技術(shù):所謂脫機(jī)漢字是指業(yè)已在紙張或其他靜態(tài)介質(zhì)上存在的漢字,一般包括印刷品上的漢字、傳統(tǒng)字帖、通常用戶書(shū)寫(xiě)在紙張等介質(zhì)上的漢字等。漢字筆畫(huà)提取主要應(yīng)用于脫機(jī)漢字識(shí)別領(lǐng)域。由于脫機(jī)漢字不能記錄漢字的動(dòng)態(tài)書(shū)寫(xiě)過(guò)程,難以把漢字的各筆畫(huà)區(qū)分開(kāi)來(lái),使脫機(jī)漢字識(shí)別的難度遠(yuǎn)大于聯(lián)機(jī)漢字的識(shí)別,部分脫機(jī)漢字的識(shí)別方案傾向于以筆畫(huà)拆分為基礎(chǔ)。目前對(duì)脫機(jī)漢字的筆畫(huà)提取分成以下幾種:1.采用水平極線段和垂直極線段描述漢字筆畫(huà)結(jié)構(gòu)把漢字拆分成“橫”、“豎”、“撇”、“捺”四種基本筆畫(huà),如中國(guó)發(fā)明專利“漢字筆畫(huà)自動(dòng)抽取方法及其裝置”(公開(kāi)號(hào):CN1271913A);2.大致保留被拆分的漢字里初始的筆畫(huà)連接狀態(tài),把有交叉部分的兩個(gè)或多個(gè)筆畫(huà)在交叉處拆分開(kāi)來(lái)。上述的方法大多用于脫機(jī)漢字的識(shí)別,雖然能粗略提取漢字的結(jié)構(gòu)信息,但不能實(shí)現(xiàn)以漢字筆畫(huà)類型為標(biāo)準(zhǔn)來(lái)提取漢字的筆畫(huà)信息。
技術(shù)實(shí)現(xiàn)要素:為了提取更準(zhǔn)確的漢字筆畫(huà)信息,便于漢字筆畫(huà)學(xué)習(xí),本發(fā)明提供一種基于模板匹配的脫機(jī)漢字筆畫(huà)提取方法,該方法能夠正確提取脫機(jī)漢字里的每個(gè)筆畫(huà)。本發(fā)明的提取方法提供了如下方案:一種基于模板匹配的脫機(jī)漢字筆畫(huà)的提取方法其步驟是:1.對(duì)所有類型的筆畫(huà),按照其書(shū)寫(xiě)方向拆分筆段,以筆段書(shū)寫(xiě)方向和筆段組成為表征,建立《筆畫(huà)編碼表》,作為模板:《筆畫(huà)編碼表》包括筆畫(huà)類型名稱(strDescription)、筆畫(huà)類型編號(hào)(strokeType)、筆畫(huà)類型鏈碼(linkCode)等字段,其中筆畫(huà)類型鏈碼由筆畫(huà)中每個(gè)筆段的方向碼順序組成,本方法中又稱其為“筆段碼”;2.給定漢字,按照其筆畫(huà)書(shū)寫(xiě)的書(shū)寫(xiě)方向拆分筆段,以筆段書(shū)寫(xiě)方向和筆段組成為表征,建立《漢字編碼表》,作為模板:《漢字編碼表》包括以筆段書(shū)寫(xiě)方向和筆段組成為表征的漢字(word)、漢字的筆畫(huà)鏈碼(strokeInclude)等字段,其中漢字的筆畫(huà)鏈碼由該漢字中的每個(gè)筆畫(huà)的筆畫(huà)類型編號(hào)順序組成;3.對(duì)該漢字的脫機(jī)圖像進(jìn)行二值化和歸一化處理,得到該脫機(jī)漢字的二值圖,對(duì)該脫機(jī)漢字的二值圖進(jìn)行提取骨架線的處理;二值化和歸一化是對(duì)漢字圖像的預(yù)處理過(guò)程,得到漢字二值圖后,對(duì)圖中的黑像素區(qū)域進(jìn)行層層剝離,最后得到一像素寬的漢字骨架線;4.將提取出的骨架線在其轉(zhuǎn)折、分叉點(diǎn)處切分為段,再將方向相同且首尾相鄰的段合并,將這些段視為筆段,以橫、豎、撇、捺四種筆畫(huà)的方向及走向?qū)P段的方向及走向特征進(jìn)行標(biāo)識(shí),賦予其“首”“尾”的意義:(1)以端點(diǎn)為起點(diǎn),分叉點(diǎn)為終點(diǎn),用像素跟蹤的方法,將漢字進(jìn)行切分為許多段,切分后對(duì)這些段用求最大距離法找拐點(diǎn),并在拐點(diǎn)處將該段分成兩段;(2)將這些段中所有方向相鄰且首尾相鄰的段合并,這些段即為筆段;(3)根據(jù)橫、豎、撇、捺四種筆畫(huà)對(duì)應(yīng)的四種方向,對(duì)這些段按方向進(jìn)行分類,并規(guī)定橫和捺方向的段中像素點(diǎn)的排列順序?yàn)閺淖笾劣?,豎和撇方向的段中像素點(diǎn)的排列順序?yàn)閺纳现料拢?.將骨架線中的筆段合成準(zhǔn)筆畫(huà),建立準(zhǔn)筆畫(huà)集:(1)筆段中,無(wú)與其他筆段首尾相鄰者,直接視為準(zhǔn)筆畫(huà),并以書(shū)寫(xiě)方向標(biāo)識(shí);(2)若某筆段與其他筆段有首尾相鄰,將它們按所有可能進(jìn)行連接,遍歷漢字的所有筆段,若筆段i的首點(diǎn)和筆段j的末點(diǎn)的距離小于給定閾值,則將筆段i和筆段j合并,經(jīng)過(guò)合并后的筆段即為準(zhǔn)筆畫(huà),以書(shū)寫(xiě)方向和筆段組成對(duì)其進(jìn)行標(biāo)識(shí);6.在準(zhǔn)筆畫(huà)集中標(biāo)記潛在相連準(zhǔn)筆畫(huà):遍歷漢字的所有準(zhǔn)筆畫(huà),若準(zhǔn)筆畫(huà)的首點(diǎn)和準(zhǔn)筆畫(huà)的末點(diǎn)的距離小于給定閾值,則將準(zhǔn)筆畫(huà)和準(zhǔn)筆畫(huà)都標(biāo)記為潛在相連準(zhǔn)筆畫(huà);7.以《筆畫(huà)編碼表》和《漢字編碼表》作為模板,將所得脫機(jī)漢字的準(zhǔn)筆畫(huà)與該字對(duì)應(yīng)的模板進(jìn)行三輪匹配,確認(rèn)哪些準(zhǔn)筆畫(huà)可以看成是該漢字的哪個(gè)筆畫(huà),三輪匹配分別為:(1)第一輪,匹配準(zhǔn)筆畫(huà),方法為:將待匹配漢字中所有筆段首尾相連后得到準(zhǔn)筆畫(huà)集,以《筆畫(huà)編碼表》和《漢字編碼表》為依據(jù),建立當(dāng)前漢字的標(biāo)準(zhǔn)筆畫(huà)集,再將準(zhǔn)筆畫(huà)集與該漢字的標(biāo)準(zhǔn)筆畫(huà)集進(jìn)行匹配;(2)第二輪,匹配潛在準(zhǔn)筆畫(huà),方法為:將成對(duì)的潛在相連準(zhǔn)筆畫(huà)相連,若標(biāo)準(zhǔn)筆畫(huà)集中存在與相連后準(zhǔn)筆畫(huà)對(duì)應(yīng)的筆畫(huà),則將潛在相連準(zhǔn)筆畫(huà)合并;若不存在,則取消該成對(duì)的潛在相連準(zhǔn)筆畫(huà)的合并;將經(jīng)過(guò)合并判斷以后的潛在相連準(zhǔn)筆畫(huà)與標(biāo)準(zhǔn)筆畫(huà)集進(jìn)行匹配;(3)第三輪,將剩余準(zhǔn)筆畫(huà)拆分后再行匹配,方法為:將準(zhǔn)筆畫(huà)集中未能匹配成功的準(zhǔn)筆畫(huà)按照標(biāo)準(zhǔn)筆畫(huà)集中沒(méi)有匹配成功的筆畫(huà)數(shù)進(jìn)行拆分,再將拆分后的準(zhǔn)筆畫(huà)集與標(biāo)準(zhǔn)筆畫(huà)集進(jìn)行匹配。每個(gè)準(zhǔn)筆畫(huà)的匹配過(guò)程為:如果在標(biāo)準(zhǔn)筆畫(huà)集strokes1中能找到與當(dāng)前準(zhǔn)筆畫(huà)si筆段碼相同的筆畫(huà)sj,表明si為正確筆畫(huà),則將si存入最終正確的筆畫(huà)集strokes中,并將其從strokes2中刪除,將sj從strokes1中刪除。本發(fā)明與現(xiàn)有技術(shù)相比的有益效果:(1)本方法采用模式匹配的方法,以漢字的標(biāo)準(zhǔn)筆畫(huà)類型為依據(jù),從漢字圖像中拆分出該漢字的所有筆畫(huà),對(duì)漢字練習(xí)過(guò)程中漢字書(shū)寫(xiě)評(píng)價(jià)有重要的應(yīng)用價(jià)值。(2)本方法中能夠提取漢字圖像中漢字的筆畫(huà)信息里,筆畫(huà)信息里包含了筆畫(huà)中點(diǎn)的走向信息,對(duì)漢字書(shū)寫(xiě)學(xué)習(xí)具有重要的應(yīng)用價(jià)值。(3)本發(fā)明通過(guò)骨架提取脫機(jī)漢字筆畫(huà)的方法,能夠幫助確認(rèn)脫機(jī)漢字里的每個(gè)筆畫(huà),可以為賦予該脫機(jī)漢字的筆畫(huà)乃至整字的動(dòng)態(tài)書(shū)寫(xiě)屬性,為研發(fā)新的漢字字體庫(kù)生成技術(shù)等應(yīng)用提供支持。附圖說(shuō)明下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。圖1是本發(fā)明的處理操作流程圖;圖2是《筆畫(huà)編碼表》;圖3是《漢字編碼表》的一部分;圖4是漢字樣本字體的二值圖;(a)是漢字樣本楷體“白”的二值圖;(b)是漢字樣本手寫(xiě)體“白”的二值圖。圖5是最終得到的漢字骨架圖;(a)是楷體“白”的骨架圖;(b)是手寫(xiě)體“白”的漢字骨架圖。圖6是圖4樣本字體骨架上的筆段劃分結(jié)果;(a)是圖4樣本楷體“白”骨架上的筆段劃分結(jié)果;(b)是圖4樣本手寫(xiě)體“白”骨架上的筆段劃分結(jié)果。圖7是賦予筆段方向碼的編碼規(guī)則示意圖。圖8是準(zhǔn)筆畫(huà)與標(biāo)準(zhǔn)筆畫(huà)匹配的流程圖。圖9是圖4的最終筆畫(huà)分解結(jié)果;(a)是圖4楷體“白”的最終筆畫(huà)分解結(jié)果;(b)是圖4手寫(xiě)體“白”的最終筆畫(huà)分解結(jié)果。具體實(shí)施方式一種基于模板匹配的脫機(jī)漢字筆畫(huà)提取方法包括以下步驟,其流程圖如圖1所示:1.對(duì)所有類型的筆畫(huà),將其拆分成橫、豎、撇、捺四種方向的筆段,以筆段書(shū)寫(xiě)方向和筆段組成為表征,建立《筆畫(huà)編碼表》作為模板;《筆畫(huà)編碼表》如圖2所示,包括筆畫(huà)類型名稱(strDescription)、筆畫(huà)類型編號(hào)(strokeType)、筆畫(huà)類型鏈碼(linkCode)等字段,其中筆畫(huà)類型鏈碼由筆畫(huà)中每個(gè)筆段的方向碼順序組成,本方法中又稱其為“筆段碼”,如“橫折”的筆畫(huà)類型編碼為“13”。筆段的方向碼是指:將筆畫(huà)拆分成橫、豎、撇、捺四種方向的筆段,橫、豎、撇、捺對(duì)應(yīng)的方向碼分別為1、3、4、2。2.給定漢字,按照其筆畫(huà)書(shū)寫(xiě)的書(shū)寫(xiě)方向拆分筆段,以筆段書(shū)寫(xiě)方向和筆段組成為表征,建立《漢字編碼表》,作為模板,如圖3所示:《漢字編碼表》包括以筆段書(shū)寫(xiě)方向和筆段組成為表征的漢字(word)、漢字的筆畫(huà)鏈碼(strokeInclude)等字段,其中漢字的筆畫(huà)鏈碼由該漢字中的每個(gè)筆畫(huà)的筆畫(huà)類型編號(hào)順序組成例如“王”對(duì)應(yīng)的筆畫(huà)鏈碼是“1_1_2_1”。3.對(duì)漢字圖像進(jìn)行二值化和歸一化處理,得到漢字的二值圖,如圖4所示,對(duì)該脫機(jī)漢字的二值圖進(jìn)行提取骨架線的處理。(1)二值化:①圖像灰度化,采用加權(quán)平均值法,對(duì)R、G、B三個(gè)分量進(jìn)行加權(quán)平均,得到合理的灰度圖像,加權(quán)規(guī)則如下:f(i,j)=0.30R(i,j)+0.59G(i,j)+0.11B(i,j)②求圖像二值化閾值,步驟為:A.建立圖像的灰度直方圖,即根據(jù)256種灰度值上像素點(diǎn)的數(shù)量建立灰度直方圖;B.求該圖像的最大灰度Hmax和圖像的最小灰度Hmin以及Hmax和Hmin的平均值Hmid;C.將灰度直方圖從Hmid處分開(kāi),Hmin到Hmid處的灰度平均值為新的Hmin,Hmid+1到Hmax處的灰度平均值為新的Hmax;D.Hmid的值為Hmax和Hmin的平均值;E.不斷執(zhí)行C和D,只到Hmid的值不再發(fā)生變化,Hmid的值即為二值化閾值。③圖像二值化,即將圖像中灰度值大于閾值Hmid的像素點(diǎn)設(shè)置成黑像素點(diǎn),灰度值小于Hmid的像素點(diǎn)設(shè)置為白像素點(diǎn)。(2)圖像歸一化,包括對(duì)位置歸一化和大小歸一化。①位置歸一化的方法:先計(jì)算出漢字的重心,再將重心移到漢字點(diǎn)陣的指定處。②大小歸一化的方法:計(jì)算出漢字點(diǎn)陣上、下、左、右的邊框,然后按比例將漢字線性縮放為指定大小。(3)取骨架:對(duì)漢字的二值圖進(jìn)行取骨架處理,圖像取骨架又稱圖像細(xì)化,是指在保持原圖像拓?fù)浣Y(jié)構(gòu)的情況下盡可能快地抽出一個(gè)單像素寬的骨架的過(guò)程。圖像細(xì)化方面已有廣泛的研究,細(xì)化算法有許多種,如Hilditch、Pavlidis、Rosenfeld、Zhang等細(xì)化算法、索引表細(xì)化算法、基于數(shù)學(xué)形態(tài)學(xué)的索引表細(xì)化算法,本實(shí)施方法以Zhang細(xì)化算法思想為基礎(chǔ)并進(jìn)行優(yōu)化:在保留端點(diǎn)和孤立點(diǎn)、保持交叉處的連續(xù)的前提下,分析當(dāng)前像素點(diǎn)的八鄰域,進(jìn)行第一次子迭代刪除東南的邊界點(diǎn),第二次子迭代刪除西北的邊界點(diǎn),執(zhí)行完兩個(gè)子迭代后,就完成了一次細(xì)化算法,多次迭代執(zhí)行上述過(guò)程,就得到最終的骨架圖。4.將提取出的骨架線在其轉(zhuǎn)折、分叉點(diǎn)處切分為段,以橫、豎、撇、捺四種筆畫(huà)的方向及走向?qū)Χ蔚姆较蚣白呦蛱卣鬟M(jìn)行標(biāo)識(shí),再將方向相同且首尾相鄰的段合并,將這些段視為筆段,劃分結(jié)果如圖6所示。(1)對(duì)骨架線進(jìn)行跟蹤,以端點(diǎn)為起點(diǎn),分叉點(diǎn)為終點(diǎn),將待處理漢字切分成由連續(xù)的像素點(diǎn)組成的段;(2)遍歷當(dāng)前漢字中的所有段,用求最大距離法找到的拐點(diǎn);找到筆段中的拐點(diǎn)方法為:遍歷該筆段中所有的點(diǎn),找到與該筆段首末點(diǎn)連線l距離最遠(yuǎn)的點(diǎn)p,設(shè)定閾值Dth為以l為對(duì)角線的矩形中其他對(duì)角點(diǎn)到此對(duì)角線的距離的判斷p到l的距離d(p)是否小于閾值Dth,若d(p)>Dth,則p點(diǎn)為拐點(diǎn)。(3)將有拐點(diǎn)的筆段在拐點(diǎn)處斷開(kāi),分成兩個(gè)段,對(duì)這兩個(gè)段進(jìn)行二次找拐點(diǎn)并分段;(4)給所有段賦方向碼,即根據(jù)段首尾點(diǎn)的連線與水平方向夾角來(lái)設(shè)置段的方向碼,橫、豎、撇、捺所在的方向分別對(duì)應(yīng)1、3、4、2,并規(guī)定橫和捺方向的段中,點(diǎn)的排列順序?yàn)閺淖笾劣?,豎和撇方向的段中,點(diǎn)的排列順序?yàn)閺纳现料略O(shè)置規(guī)則如圖7所示;(5)將這些段中所有方向相同且首尾相鄰的段合并,這些段即為筆段。5.筆段中,無(wú)與其他筆段首尾相鄰者,直接視為準(zhǔn)筆畫(huà),并以書(shū)寫(xiě)方向標(biāo)識(shí);若某筆段與其他筆段有首尾相鄰,將它們按所有可能進(jìn)行連接,合成準(zhǔn)筆畫(huà),以書(shū)寫(xiě)方向和筆段組成對(duì)其進(jìn)行標(biāo)識(shí),合并方法如下:(1)將已拆分出的筆段集substrokes中的每個(gè)筆段進(jìn)行走向標(biāo)準(zhǔn)化,橫(方向碼為1)和捺(方向碼為2)筆段上點(diǎn)集Si{p0(x,y),p1(x,y),p2(x,y),Λ,pn(x,y)}(i=0,1,2,Λ,substrokes.count()-1)的走向?yàn)橄袼攸c(diǎn)的x坐標(biāo)從小到大排列,即p0.x<p1.x<p2.x<Λ<pn.x;豎(方向碼為3)和撇(方向碼為4)筆段上點(diǎn)集Si{p0(x,y),p1(x,y),p2(x,y),Λ,pn(x,y)}(i=0,1,2,Λ,substrokes.count()-1)的走向?yàn)橄袼攸c(diǎn)的y坐標(biāo)從小到大排列,即p0.y<p1.y<p2.y<Λ<pn.y;(2)將筆段集substrokes中的筆段進(jìn)行尾首相連合成準(zhǔn)筆畫(huà)stri,這些準(zhǔn)筆畫(huà)組成準(zhǔn)筆畫(huà)集preStrokes{str1,str2,Λ,stri},每一個(gè)準(zhǔn)筆畫(huà)的合成步驟如下:①找到筆段集substrokes中第一個(gè)可以作為起始筆段的筆段,即找到第一個(gè)其起點(diǎn)沒(méi)有與其他筆段末點(diǎn)相鄰的筆段:按存儲(chǔ)順序獲取筆段集substrokes中第一個(gè)筆段Si;遍歷筆段集substrokes中的筆段Sj(0≤j<substrokes.count(),j≠i),若筆段集substrokes中存在Sj,Si的第一點(diǎn)與Sj最后一點(diǎn)的距離小于閾值t,則將Sj設(shè)為當(dāng)前筆段集的第一個(gè)筆段,即將Sj的值賦給Si,重新執(zhí)行步驟B,直到找不到符合條件的筆段Sj。②合并筆段集substrokes中從Si開(kāi)始的所有首尾相鄰的筆段,得到的筆段序列即為準(zhǔn)筆畫(huà)stri:遍歷筆段集substrokes中的筆段Sj(0≤j<substrokes.count(),且j≠i),若筆段集中存在Sj,使Si的最后一點(diǎn)與Sj的第一點(diǎn)的距離小于閾值t,則將Si存入當(dāng)前準(zhǔn)筆畫(huà)str的最后一個(gè)筆段之后,并將Si從筆段集substrokes中刪除,把Sj的值賦給Si,重新執(zhí)行步驟C,直到找不到符合條件的Sj。6.在準(zhǔn)筆畫(huà)集preStrokes中標(biāo)記潛在相連的準(zhǔn)筆畫(huà),即尾尾相連的準(zhǔn)筆畫(huà):遍歷筆段集preStrokes中的筆段strj(0≤j<preStrokes.count(),且j≠i),令當(dāng)前準(zhǔn)筆畫(huà)為stri,若筆段集中存在strj,使stri的最后一點(diǎn)與strj的最后一點(diǎn)的距離小于閾值t,則將stri和strj所在的準(zhǔn)筆畫(huà)都標(biāo)記為潛在相連準(zhǔn)筆畫(huà)。7.以《筆畫(huà)編碼表》和《漢字編碼表》作為模板,把該字的準(zhǔn)筆畫(huà)與該字對(duì)應(yīng)的模板進(jìn)行匹配,提取出漢字的正確筆畫(huà)信息,匹配流程圖如圖8所示。注:操作①將尾首相連的筆段合并、尾尾相連的筆段標(biāo)記;操作②將匹配成功的準(zhǔn)筆畫(huà)和標(biāo)準(zhǔn)筆畫(huà)分別從集合里刪去;操作③將尾尾相連的筆段合并;操作④根據(jù)剩余筆畫(huà)的筆段數(shù)對(duì)準(zhǔn)筆畫(huà)進(jìn)行拆分。(1)從《漢字編碼表》中讀取當(dāng)前漢字的筆畫(huà)類型鏈碼strokeInclude,對(duì)strokeInclude中組成該漢字的每個(gè)筆畫(huà),從《筆畫(huà)編碼表》中查找該筆畫(huà)類型的筆段碼linkCode,由每個(gè)筆畫(huà)的筆段碼建立當(dāng)前漢字的標(biāo)準(zhǔn)筆畫(huà)集strokes1{s1,s2,s3,Λ,sm},另外,建立strokes用于存儲(chǔ)提取的正確筆畫(huà)信息;①若當(dāng)前匹配為第一輪匹配,strokes1中存儲(chǔ)的數(shù)據(jù)為:組成筆畫(huà)類型鏈碼的每個(gè)筆畫(huà)類型的方向碼,例如,“里”的strokeInclude為“2_11_1_1_2_1_1”,筆畫(huà)類型編號(hào)strokeType為“2”的筆畫(huà)對(duì)應(yīng)的筆段碼為“3”,strokeType為“11”的筆畫(huà)對(duì)應(yīng)的筆段碼為“13”,strokeType為“1”的筆畫(huà)對(duì)應(yīng)的筆段碼為“1”,所以標(biāo)準(zhǔn)筆畫(huà)集為strokes1{"3","13","1","1","3","1","1"};②若當(dāng)前匹配不為第一輪匹配,strokes1中存儲(chǔ)的數(shù)據(jù)為:當(dāng)前strokes1中剩余的筆畫(huà)類型的筆段碼;(2)由分筆段后得到的準(zhǔn)筆畫(huà)集preStrokes,建立待匹配的準(zhǔn)筆畫(huà)集strokes2;①若當(dāng)前匹配為第一輪匹配,則strokes2中存儲(chǔ)的數(shù)據(jù)為preStrokes中所有非潛在相連準(zhǔn)筆畫(huà),例如,“里”中的準(zhǔn)筆畫(huà)“橫折”和“豎折”是潛在相連準(zhǔn)筆畫(huà),所以第一輪匹配中,這兩個(gè)準(zhǔn)筆畫(huà)不加入strokes2中進(jìn)行匹配;②若當(dāng)前匹配為第二輪匹配,則將preStrokes中所有潛在相連準(zhǔn)筆畫(huà)加入到strokes2中,把strokes2中所有相關(guān)聯(lián)的兩個(gè)潛在相連準(zhǔn)筆畫(huà)的筆段碼合并,令合并后的筆段碼為s0,如果能在strokes1中找到與s0筆段碼相同的筆畫(huà),則將兩個(gè)潛在相連準(zhǔn)筆畫(huà)合并成一個(gè)準(zhǔn)筆畫(huà),得到新的strokes2;③若當(dāng)前匹配為第三輪匹配,則將中剩余的準(zhǔn)筆畫(huà)按照中剩余的筆畫(huà)數(shù)進(jìn)行拆分,得到新的strokes2,如準(zhǔn)筆畫(huà)集中剩余的準(zhǔn)筆畫(huà)的筆段編碼為“31”,漢字筆畫(huà)鏈碼中剩余2個(gè)筆畫(huà)的信息,則將準(zhǔn)筆畫(huà)拆成兩個(gè)準(zhǔn)筆畫(huà),這兩個(gè)準(zhǔn)筆畫(huà)的的筆段碼分別為“3”和“1”;(3)每一輪準(zhǔn)筆畫(huà)集strokes2與標(biāo)準(zhǔn)筆畫(huà)集strokes1的匹配,即對(duì)strokes2中的每一個(gè)準(zhǔn)筆畫(huà)進(jìn)行遍歷,在strokes1中查找筆段碼與準(zhǔn)筆畫(huà)筆段碼相同的筆畫(huà);每個(gè)準(zhǔn)筆畫(huà)的匹配過(guò)程為:如果在標(biāo)準(zhǔn)筆畫(huà)集strokes1中能找到與當(dāng)前準(zhǔn)筆畫(huà)si筆段碼相同的筆畫(huà)sj,表明si為正確筆畫(huà),則將si存入最終正確的筆畫(huà)集strokes中,并將其從strokes2中刪除,將sj從strokes1中刪除;(4)strokes中存儲(chǔ)的為漢字正確的筆畫(huà)信息。以上實(shí)施方式僅為體現(xiàn)本發(fā)明內(nèi)容的較佳實(shí)施例,依據(jù)本發(fā)明的思想,在具體實(shí)施過(guò)程中實(shí)施流程會(huì)有改變之處,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。