專利名稱:創(chuàng)建用于識別的字符表示法的方法和裝置的制作方法
技術領域:
本發(fā)明一般涉及創(chuàng)建用于識別的字符表示法的方法和裝置。
背景技術:
諸如中文和日文等亞洲語言具有幾千種字符。在中國,所使用的字符集為簡化漢字,國標(GB)編碼標準定義了大約6800種字符。GB編碼標準為當今的計算機系統中所支持的所有簡化漢字定義了兩字節(jié)碼。臺灣和香港等所使用的字符集是傳統中文的地方,Big 5編碼標準定義了將近13000種漢字。Big 5編碼標準為當今計算機系統中所支持的所有傳統中文字符定義了兩字節(jié)碼。日本工業(yè)標準208(JIS 208)編碼標準定義了將近6300種日文漢字字符。當字符的數目太大時,字符的鍵盤輸入變得很麻煩。在這種情況下,基于手寫識別的輸入方法是一種有吸引力的可選擇方案。
可通過比較手寫輸入和詞匯表中感興趣的所有字符的模型集合來實現手寫識別系統,計算輸入和所存模型中每一個的距離尺寸,并從與手寫輸入具有最小距離的模型中選出一個或多個備選字符。對于可應用于中文及日文漢字字符識別的手寫識別,可存在幾種檢索結果。在第一種方法中,分級表示被用于模型字符。在這種方案中,字符被表示為許多被稱為字根的以特定順序寫入的小單元的集合。這些字根本身被作成筆順序列的模型。識別通常包括將手寫輸入分割為幾個字根,之后將它們與所存根的模型相比。雖然這種方案有效地存儲了字符模型,但在識別前的分割處理限制了識別器的精確性。
在第二種方法中,模型作為整個字符存儲。因為這種方法并不依賴于在識別前將輸入分割成若干字根,所以通常能夠得到更精確的識別器。但是,用于存儲這些字符模型所需的存儲器數量,以及計算量要求相對較大,并在一些應用中受到重大限制。
另外,用于中文及日文漢字字符的手寫識別系統可以解決筆畫順序變化問題,也可解決筆畫數目變化問題,這些筆畫都是用來寫同一個字符的。通常用于以筆畫順序處理變化的一種方法是,依據一些啟發(fā)而重新排列這些筆畫。通過這樣作,避免使所寫筆畫必須具有精確的先后順序。使用這樣一種方案的缺點是重新排列筆畫很困難,且通常是識別系統中的錯誤源。
另一種方法是為每一個字符保留單獨的模型,并在識別系統運行期間產生幾種筆畫順序的變化。然而,這種方法,會需要額外的計算資源來從基本字符模型中產生筆畫順序的變化。
其它方法包括為每個字符保留單獨的模型以及在運行期間產生新模型,產生新模型是通過連接一個或多個筆畫,或者是,使用更多的依據隨機編程的有效的匹配算法,以便甚至是在筆畫數目不同的情況下,也能將手寫輸入與所存字符模型相比。然而,這兩種技術在識別系統的運行期間內都需要額外的計算能力。
當今市場上的小手持設備不斷增長。這些裝置執(zhí)行的功能從保存地址和相關信息一直到諸如尋呼及蜂窩式電話等更高級的功能。在許多這樣的手持設備中,其有效處理能力與在傳統個人計算機中的相比非常小。這樣,在個人計算機上的手寫識別所使用的算法就不能很好地用在大多數這種手持設備上。
發(fā)明內容
這樣,對于手寫識別器存在一種需求,即在一筆一筆地寫入字符或用有限的筆畫連貫性寫入字符時,該手寫識別器要有非常高的處理速度、合適的存儲器需求以及高精確度,同時也能解決寫同一個字符所用的筆畫順序的變化問題,以及寫同一個字符所用的筆畫數目的變化問題。
本發(fā)明提供一種創(chuàng)建用于識別的字符表示法的方法,包括識別具有第一數目筆畫的第一字符,以及具有第二數目筆畫的第二字符,其中第一數目大于第二數目;將第一字符的每一筆畫與第一組筆畫模型相比;以及將第二字符的每一筆畫與第二組筆畫模型相比,其中第一組筆畫模型比第二組筆畫模型少。
本發(fā)明還提供一種創(chuàng)建用于識別的字符表示法的方法一種創(chuàng)建用于識別的字符表示法的方法,包括導出用于若干字符的字符模型;將字符模型分組;從該組內每個字符模型中提取筆畫;根據從該組內字符模型中提取出的筆畫,創(chuàng)建用于該組的筆畫模型;以及對于該組內每個字符模型中的每一筆畫,存儲最接近該筆畫的筆畫模型的索引。
本發(fā)明還提供一種一種用于創(chuàng)建用來識別的字符表示法的裝置,包括導出用于若干字符的字符模型的裝置;對字符模型進行分組的裝置;用于從該組內每個字符模型中提取出筆畫模型的裝置;根據從該組內的字符模型中提取出的筆畫,創(chuàng)建該組的筆畫模型的裝置;以及對該組內每個字符模型中的每一筆畫,用于存儲與該筆畫最接近的筆畫模型索引的一個存儲器,其中該組內每個字符模型的筆畫數都在一個特定范圍內。
以下,將通過僅參照了附圖所舉的例子來說明本發(fā)明的最佳實施例,其中圖1說明了筆畫數目的變化;圖2說明了摘錄出來用于表示本發(fā)明最佳實施例中的筆畫的14種特征;圖3說明了一對中文字符的表示方法;圖4說明了字符模型中筆畫數目變化的例子;圖5說明了字符模型中筆畫順序變化的例子;圖6說明了依據本發(fā)明最佳實施例所描畫的筆畫模型;圖7說明了一個依據本發(fā)明最佳實施例描繪了筆畫模型的特征的表;圖8說明了依據本發(fā)明最佳實施例,如何將字符模型中的筆畫用與之最相近的筆畫模型來表示;圖9說明了相對于傳統中文字符筆畫的標準數目而描繪的大量的字符圖;圖10說明了相對于簡化中文字符筆畫的標準數目而描繪的大量的字符圖;圖11說明了依據本發(fā)明最佳實施例的具有多分辨率字符模型的識別系統的流程圖;圖12說明了依據本發(fā)明最佳實施例的,用于字符模型的存儲器裝置的方框圖;圖13說明了依據本發(fā)明最佳實施例的識別設備的方框圖;以及圖14說明了依據本發(fā)明最佳實施例的圖13中的識別設備的流程圖。
具體實施例方式
下面,將說明使用多分辨率模型的用于手寫字符識別的方法。本發(fā)明提供了一種新穎的用于識別手寫字符(例如中文或日文漢字字符)的技術,它能在一筆一筆地寫入字符或用有限的筆畫連貫性寫入字符時,具有很高的處理速度、合適的存儲器需求及高精確度。本發(fā)明也解決用來寫同一個字符的筆畫順序的變化問題以及筆畫數目的變化問題。本發(fā)明說明了如何導出一個字符模型集合以及筆畫模型集合,并使用該字符模型集合以及該筆畫模型集合,以方便手寫識別。
在最佳實施例中,用于字符的模型以可變分辨率的方式存儲。字符被作成一個若干筆畫的組合(即集合或序列)。將一個字符想象為,但又不僅限于此的,可表示成單個筆畫或一個筆畫序列的書寫語言的一個單個元素,這是很方便的。一畫是在鐵筆接觸書寫面(例如一個數字板)到鐵筆被抬離書寫面時墨水的片段。使用一個聚合過程(或其它裝置),就可得到小量的筆畫模型。將筆畫模型想象成,但并不僅僅限于,一個連續(xù)墨水的模板,這是很方便的。依次使用這些筆畫模型,以便能以壓縮形式存儲字符模型。將字符模型想象成,但并不僅僅限于,被表示為筆畫模型序列的字符,這是很方便的。通過改變筆畫模型的數目,以及改變得到該筆畫模型所使用的數據,就可得到幾種筆畫模型的集合。當筆畫模型的數目增加時,用于表示筆畫的分辨率也增加了。這樣,可根據需要在不同的分辨率處存儲特征模型。以下所說明的例子針對中文及日文漢字字符。然而,本發(fā)明也能應用于以任意語言寫入的手寫字符及/或輸入。
中文和日文漢字字符的最基本的單元是筆畫。對于每個字符,其筆畫的標準數目是確定的。與英文中的草書相似,在書寫中文及日文漢字字符時,連續(xù)的字符也經常是連在一起的。例如,圖1顯示了以不同的筆畫數表示的中文字符的兩個模型10和12。第一個模型10顯示了用四畫寫出的中文字符,該四畫是這個字符的標準筆畫數目。第二個模型12顯示了一種通用書寫字體,即僅使用三畫就寫出該中文字符。
當用來寫一個字符的筆畫數符合該字符的標準筆畫數,則該書寫字體被稱作書寫的“印刷”或“一筆一畫”的字體。當兩個或更多個連續(xù)的筆畫被連在一起時,該書寫字體被稱作書寫的“草”或“連筆”字體。中文字符的第一個模型10顯示了印刷體字,而中文字符的第二個模型12則顯示了書寫同一個字符的草體字。在這個特定的例子中,將第一模型10中標記為2和3的筆畫合并,就可得到第二模型12中標記為2的單個筆畫。
筆畫由特征集合來表示。以下說明代表了兩種特征類型的組合,一種是基于筆畫的大小,另一種是基于筆畫的形狀。由數字板上收集到的手寫輸入在被提取出筆畫特征之前,先要經過預處理。數字板一般收集墨水,并將這些墨水反映為點的集合。對于每個點,能反映出鐵筆尖的x和y坐標,以及相關的鐵筆的上/下狀態(tài)。預處理包括以下步驟大小的標準化、平滑、重復采樣以及方框濾波。
預處理的第一步是大小的標準化。將輸入的墨水標刻,以便該輸入墨水能符合標準大小的方框。在執(zhí)行標準化的同時,輸入的縱橫比被保留下來。標準化所用的方框的大小為16383,所以用14比特足以表示一個坐標值。使用的方框大小為16383,所以對于預處理的平滑階段(步驟2)有充足的分辨率。除了能夠適應14比特(14比特的最大無符號數為16383)外,對于方框的大小為16383沒有什么特別的意義。一般來說,從數字板上收集的墨水坐標位于0到500的范圍內。選擇大小為16383的方框,以便該方框能比典型的坐標值大許多。這使得平滑步驟更有效。
預處理的第二步是平滑。平滑是這樣實現的,即通過順序將當前點、緊挨著當前點的前面兩個點和緊隨當前點的后兩個點加權平均,來及時替代當前點。數學上,可將上述操作表示為Xi,new=Σj=i-2i+2wj×xjΣj=i-2i+2wj]]>(等式1)其中wj是用來計算加權平均的加權術語。所使用的加權矢量為 (等式2)注意這樣選擇的加權,使得在計算機中使用移動就可實現等式1中的乘法和除法。等式1中的分母增加到8,它是通過右移3位而實現的。
預處理的第三步是重復采樣。重復采樣是在每一對連續(xù)點之間線性內插三個點而實現。
預處理的第四步是方框濾波。方框濾波是這樣實現的,即開始于第一點,并用包圍該第一點的固定尺寸定義一個方框。任何落入該方框內的后續(xù)點被簡單地除去。落在該方框外的第一點被保留,且該方框也被移動,以使該方框成為圍繞新點的中心。在看過原始墨水中的所有點之前,一直重復進行這種方框濾波處理。方框濾波對于消除墨水中的抖動是很有用的。方框濾波還具有額外的益處,即能產生在空間上或多或少是等間距的連續(xù)的墨水點。
在預處理之后,14個特征被提取出來,以用于輸入的每個筆畫。必須注意的是所提取出的特征數并不僅限于14個,而可以是任意數目。圖2說明了提取出的用來表示本發(fā)明最佳實施例中一個筆畫的14個筆畫特征。在圖2中,dx 14和dy 16是筆畫的大小特征,同時也是x和y面積的擴展。余下的12個特征都是依據筆畫的形狀。該筆畫被按照大致相等的弧長分為12段。由于方框濾波器在預處理時產生了在空間上大致相等的連續(xù)的墨水點,所以將每個筆畫分為12段是經濟合算的。12個形狀特征是直線與12條線段中每一個的末端點用直線連接所形成的夾角,在圖2中它們被顯示為[θ1、θ2、**、θ12]。大小特征和形狀特征都在0到255的范圍內被刻度,這樣每個特征值都能用1字節(jié)進行存儲。這樣,使用14個特征的筆畫就可用14字節(jié)進行存儲。必須注意,由于不存在依賴于字符內筆畫的絕對位置的特征,所以筆畫的特征是平移不變的。
可使用各種公制單位來測量兩個筆畫間的相似處。兩個筆畫之間特征矢量的Euclidean或Manhattan距離是可以使用的公制單位的實例。在這一實施例中,本發(fā)明使用了Manhattan米來測量筆畫間的相似性。如果兩個筆畫分別具有特征矢量[dx dyθ1、θ2、......、θ12]以及[dx dy θ1、θ2、......、θ12],則其Manhattan距離是d=|dx-dx‾|+|dy-dy‾|+Σi=112|θi-θi‾|]]>(等式3)必須注意也可使用加權的Manhattan距離。例如,不會希望對外形特征和大小特征進行不同的加權。
字符是由一個或多個筆畫以特定順序書寫而成的。數量上,可使用特征矢量來表示一個字符,所述特征矢量是構成該字符每個筆畫的連續(xù)的特征矢量。
在中文和日文漢字字符中,有幾組字符看起來非常相象。例如,圖3中說明了一對看起來非常象的中文字符18和20。由于用來代表一個筆畫的特征并未含有該筆畫在字符內的位置信息,所以圖3所示的兩個字符18和20的特征矢量是完全相同的。如圖所示,本發(fā)明增加了一些特征,以便能區(qū)分這些看起來相似的字符,這是通過將每個筆畫的末端點與下一個筆畫的起始點用直線連接起來作為一個附加的、假想的筆畫而實現的。這樣,在圖3所示的例子中,四條附加的直線筆畫22、24、26、28以及30、32、34、36被分別包括在對該字符的表示中,并用虛線圈出。
插在筆畫4和5之間的直線筆畫28或36為圖3所示的兩個字符提供了一種區(qū)別。當手寫字符有n個筆畫時,在每對連續(xù)筆畫之間需要插入n-1條直線筆畫。因為對于每個筆畫有14個特征,所以用來表示具有n個筆畫的一個字符的特征數目為14(2n-1)。注意,手寫字符的特征矢量依賴于書寫筆畫的順序。使用同一個筆畫集合但使用不同的筆畫順序所寫的字符會產生不同的特征矢量。
對于具有相同數目筆畫的兩個手寫字符,可通過計算這兩個字符中相應筆畫之間的筆畫距離總和而在數量上比較它們。當計算兩個字符之間的距離度量時,對插入每對連續(xù)筆畫之間的直線筆畫的處理與對所寫的真實筆畫的處理相同。
通過對收集到的來自不同書寫者的手寫采樣的統計分析,可得到每個字符的字符模型。本發(fā)明模仿手寫中文和日文漢字字符的兩個主要的變化用來寫該字符的筆畫數目的變化,以及寫這些筆畫的順序的變化。
從技術上說,任何字符都可用一個單獨的筆畫寫出,而不管為該字符所指定的筆畫的標準數目。然而,實際上筆畫并不是隨意連接的,而且還可以發(fā)現筆畫連貫性的特定圖案。再參見圖1,圖1顯示了使用不同筆畫數目書寫一個中文字符的例子。正如先前所說明的那樣,第一模型10是使用標準數目的筆畫,該數目為4,所寫的中文字符,而第二模型12顯示了通常所用的手寫體,這種手寫體只用3畫書寫該中文字符。通過分析收集到的來自不同書寫者的手寫采樣,可得到每個字符最常用筆畫的數目,而且可用該信息創(chuàng)建字符模型。
用相同的筆畫數目所寫的同一個字符的兩個手寫采樣也可能會由于所寫筆畫順序不同而不同。另一個變化來自連筆書寫,在這種書寫中,兩個或更多個筆畫集合連在一起,并被寫為一個單獨的筆畫。在這種情況下,通過筆畫連接的位置可引入附加變化。為創(chuàng)建字符模型,以便能計算筆畫順序以及筆畫連續(xù)圖案的變化,需要再次分析來自不同書寫者的手寫采樣以提取出一些通用的書寫體。執(zhí)行上述操作使用了眾所周知的聚合分析技術。例如,一個分配器算法是一種聚合過程。在分配器算法中,將每個采樣一開始就隨意地分配給K束中的一個,束的數目K是預先確定的。聚合集的好壞程度F是由以下等式表示的F=Σk=1K1Sk-1Σp,q∈Ckd(p,q)]]>(等式4)在等式4中,Sk是第k束中的采樣數目,Ck指第k束,p和q第k束中的兩個普通采樣,d(p,q)是采樣p和q之間的距離。在聚合的一個周期中或其一個時間段開始時,每個采樣被從其當前束移到能引起等式4所示“良好”程度F最大程度地減小的束處。如果將采樣移動到其它任意的束并不能使值F減小,則該采樣不能被簡單地移動到另一個新束處。在一個時間段結束時,檢測移動的采樣數。如果移動的采樣數大于零,則聚合的另一個時間段就開始了。如果一個時間段結束時的移動的數目為零,則聚合過程就停止了。在聚合結束時,所有相似的采樣都被收集在同一束內,這里相似性被定義為用采樣間的距離d(p,q)表示。這樣,來自每一束的典型采樣被選作一個字符模型。這樣,就創(chuàng)建了K個字符模型,這里K是聚合算法中所用束的數目。
對每個字符的模型數的選擇是致關重要的一環(huán)。具有很多模型將允許許多不同的手寫體能夠被識別出。然而,具有許多模型,通常意味著大的存儲器及大的計算需求。本發(fā)明使用兩種試探法來限制為每個字符所創(chuàng)模型的數目。使用第一種試探法,K的幾個值試圖從1開始,并且每次增加K。當經適當標準化的分數F在一個集合門限之下時,聚合處理停止,使用K的當前值。使用第二種試探法時,對K的最大限制受每個字符的制約。甚至是在經適當標準化的分數F大于集合門限時,也不允許聚合數目超過最大限制。通過分析來自不同書寫者的手寫采樣,創(chuàng)建了簡化手寫模型及傳統字符模型。除了筆畫的標準數目外,只要需要,就可將具有最多為一畫連接的各種變型也制成模型。
圖4說明了字符模型中筆畫數目變化的例子。在圖4中的第一模型38顯示了使用8畫所寫中文字符,這8畫是書寫該字符的標準筆畫數。第二模型40和圖4的第三模型42都顯示了用7畫所寫的同一個中文字符。雖然第二模型40和第三模型42都具有相同數目的筆畫,但它們筆畫的連接位置是不同的。在第二模型40中,在第一模型38中標記為1和2的筆畫連在一起,并被寫成一個單獨的筆畫44。在第三模型42中,在第一模型38中標記為6和7的筆畫連在一起,并被寫成一個單獨的筆畫46。
圖5說明了一個按字符模型中的筆畫順序變化的例子。圖5顯示了用6畫書寫的一個中文字符的兩個模型48和50。這兩個模型48和50的區(qū)別在于所寫的標記為3和4的筆畫順序不同。
在手寫識別系統中,存儲字符模型,以用于單詞表中所需的所有字符。為存儲一個字符模型,需要存儲該模型中所有筆畫的特征。為解決這個問題,本發(fā)明創(chuàng)建了小量的筆畫模型,所以能依據筆畫模型表示字符模型。這樣,在接收到手寫輸入之后,筆畫就被從手寫輸入中提取出來了。計算一組特征,以用于手寫輸入中的每個筆畫。存儲字符模型,以用于若干字符。至少有一個字符模型是由一些筆畫組成的,而這些筆畫又是從至少一組筆畫模型中選出的。最后,計算從手寫輸入中提取出的筆畫之間,以及至少一個字符模型的筆畫之間的距離度量。
如上所述,通過對收集到的來自字符模型的筆畫進行聚合分析,從而得到筆畫模型。使用K均值聚合算法來創(chuàng)建筆畫模型。然而,也可使用其它聚合算法來得到相似的結果。為使模型的筆畫更加完善,本發(fā)明使用一種增加的聚合方案,該方案推導出了預定數目的筆畫模型。對于每個筆畫,計算該筆畫和最近的一個筆畫間的距離度量,并根據這一距離度量,按增加的順序對這些筆畫進行分類。這樣,將具有最大數目模型誤差的固定百分比的筆畫分開。通過聚合,可將具有最大數目模型誤差的固定百分比的筆畫用來推導出附加的筆畫模型。例如,可使用在分類表末尾的百分之五十的數據來推導出附加筆畫模型??墒褂镁酆希瑥亩蛛x具有最大數目模型誤差的固定百分比的筆畫,并能使用固定百分比的筆畫以推導出附加筆畫模型,這種聚合可重復進行。
在一個實施例中,使用標準數目的筆畫以及使用一筆畫連接來創(chuàng)建用于簡化的及傳統的中文字符。首先,創(chuàng)建38個筆畫模型,之后,筆畫模型的數目逐漸增加到85個、125個,最后達到141個。以兩種不同方式顯示了這個例子的結果。圖6顯示了141個筆畫模型的繪圖版。所有的筆畫模型都被繪制成相同的比例,而小弧線表示該筆畫的開始。圖7中顯示了141個筆畫的真實特征。頭兩個特征是該筆畫的x和y維,剩余的12個特征是標度的角度,以便其范圍能從0至255。必須注意也可使用人工插在筆鋒向下的筆畫間的直線筆畫來創(chuàng)建模型。在筆鋒向下和筆鋒向上的直線筆畫之間沒有區(qū)別,這樣,就允許筆鋒向下和筆鋒向上的直線筆畫共享該模型。
對于具有大量筆畫的手寫字符的機器識別通常要比對具有小量筆畫的字符的識別容易。對具有大量筆畫的手寫字符的機器識別通常較容易的原因是筆畫數目越多,該字符越不會與其它字符混淆。一般來說,由于具有大量筆畫的字符與具有小量筆畫的字符相比,更易識別,所以,最好希望將表示字符模型所需的分辨率制成依賴于該字符的筆畫數目。將用于具有大數目筆畫字符的模型以低分辨率存儲,這樣節(jié)省了用來識別該字符的存儲器和處理時間。
創(chuàng)建多分辨率模型的第一實施例具有幾組筆畫模型,這些筆畫模型是以被制作成模型的字符內的筆畫數目為基礎的。在導出用于若干字符的模型后,將字符模型分組。例如,可將字符模型分類為三組,其中每組內字符模型的筆畫數目都在一個指定范圍內。具有1到5畫之間的小數目筆畫的字符模型落入第一組。具有6到10畫之間的中等數目筆畫的字符模型落入第二組。最后,具有大于10畫的所有字符模型落入第三組。創(chuàng)建三組分離的筆畫模型使用了如上所述的聚合技術,這種創(chuàng)建是以從三組字符模型中的每一個提取出的筆畫數據為基礎的。因為第一組中任意一個字符模型的筆畫數目都比第二組中任何一個字符模型的筆畫數目要小,所以在第一集合中的筆畫模型數目要比第二集合中的筆畫模型的數目要大。在同一個方面,由于第二組內任何一個字符模型的筆畫數目比第三組內任何一個字符模型的筆畫數目要小,所以第二集合內的筆畫模型數目大于第三集合內的筆畫模型的數目。這樣,依據該字符筆畫的用來表示字符模型的分辨率直接與筆畫模型的數目相關。筆畫模型的數目越多,分辨率也越高。
為每一組字符模型創(chuàng)建的筆畫模型的數目與該組內字符模型中的筆畫數目相反。對每個字符模型,則選擇用于那組字符的筆畫模型的集合。對于一組之中每個字符模型的每一畫,存儲了最好地近似了該筆畫的筆畫模型的索引。
在上述例子中,由于第一組具有最少的筆畫數,所以可以通過創(chuàng)建一個更大數目的筆畫模型,從而用更高的分辨率來表示該字符模型。第三組具有最多數目的筆畫,這樣,少量的筆畫模型足以表示這一組內的字符模型。在上述例子中,字符模型被分為三組,這剛好說明了多分辨率模型的思想。從上述的說明中,對本技術領域人員來說,可以很顯然地看出可使用多于三個組來創(chuàng)建多分辨率模型。在極端的情況下,對于有可能的筆畫數目,可創(chuàng)建分離的筆畫模型集合。
創(chuàng)建多分辨率模型的第二實施例是直接存儲筆畫特征,而不論筆畫和最近的筆畫模型之間的距離度量是否超過了門限值。用任何一個筆畫模型都不能模擬得很好時,這種方法對于模擬該外形筆畫是尤其有用的。
在本發(fā)明的最佳實施例中,對于那些筆畫數目小于三的字符模型,根本不會使用筆畫模型。代替這些筆畫模型的是,直接存儲用于每個字符模型內的每畫的14個特征。對于那些具有三個或更多筆畫的字符模型,使用圖6所示的141個筆畫模型來表示這些筆畫。
圖8顯示了一個例子,該例子顯示了依據本發(fā)明最佳實施例,一個字符模型中的筆畫是如何被與它們最接近的筆畫模型所表示的。在圖8中所示的字符模型52具有四個筆鋒向下的筆畫,它總共給出7畫,包括插在連續(xù)的筆鋒向下的筆畫之間的直線筆畫。集合54中分別顯示了模型52中的7畫中的每個。與圖6中所示的141個筆畫模型中的每個筆畫最接近的筆畫模型顯示在集合65中。由于筆畫模型的數目小于256,因此使用一個單個的字節(jié)對該筆畫模型進行索引。因此,使用了7個字節(jié)來表示圖8所示的字符模型。如果是直接存儲筆畫模型,則需要大約98個字節(jié)來存儲該字符模型。
如上所述,用于中文和日文漢字字符的手寫識別系統必須訪問以下兩個結果按筆畫順序的用來寫同一字符的變量,以及按筆畫數的用來寫同一字符的變量。為訪問這個結果,本發(fā)明為每個字符模型存儲了許多字符模型以便能計算出書寫體中的變化,所以通用的筆畫連接都被考慮在內了。通過對來自不同書寫者的大量的手寫采樣進行統計分析,本發(fā)明已經確定了通用筆畫的連接方法。
所存儲的模型是用于用標準數目的筆畫所寫的字符,或用于使用少于標準數目筆畫所寫的字符。識別出一個字符的處理時間依賴于手寫輸入中的筆畫數。當筆畫數既不太少也不太多時,處理時間相對較少。這與簡化的和傳統的中文字符中筆畫的分配有關。圖9顯示了與傳統中文字符的標準筆畫數相對的字符數目的一張圖。
對于傳統的中文,標準筆畫數在1至36個之間變化。如圖9所示,字符數目的峰值在12畫處。當手寫輸入的筆畫數目小于12或大于12,則與此相比對照的字符模型的數目相應地變小。直觀地說,處理時間應該依賴于被比較的筆畫的總數,它是字符模型數和每個模型中筆畫數的乘積。對于圖9所示的分配方案,對于筆畫數為15的字符,其筆畫的總數是最大的。這樣,對于具有大約為15畫的手寫輸入的處理時間應該是最多的。
圖10中顯示了相似的用于簡化中文字符的標準筆畫數的一個方案。圖10中顯示了相對于簡化中文字符的字符數目的一張圖。對于簡化的中文,筆畫數的變化為1至30,而字符數目的峰值出現在9畫處。對于處理時間,最糟的情況出現在字符輸入為11畫時。在所存儲的字符模型內搜索那些筆畫,其中的存儲是按照小數目的筆畫模型對這些字符模型作索引而進行的。如下所述,這充分地減少了識別手寫輸入的處理時間。對于輸入的每一畫,計算并存儲它與所有筆畫模型的距離度量。如果在輸入中有m畫,并有n個筆畫模型,則計算并在距離陣列中存儲了m×n個距離。對于手寫輸入和一個字符模型之間的距離度量是這樣計算的,即將輸入的和模型中的相應筆畫間的距離度量加在一起。字符模型中的每一畫都被依據該n個筆畫模型作索引,并且來自輸入中相應筆畫的其距離度量也被從預計算的距離陣列中讀出。這樣,在輸入和所存儲的字符模型之間的距離度量就被以非??斓姆绞接嬎愠鰜?。由于計算出的如上所述的距離陣列僅用于一組筆畫模型,所以多分辨率字符模型的使用并不影響處理速度。
在本發(fā)明的最佳實施例中,當手寫輸入僅有一畫或二畫時,就不用計算距離陣列。取而代之的是,根據它們的特征直接將輸入的筆畫和字符模型相比。由于具有一畫或二畫的字符模型的數目非常少,所以這種做法是可行的。僅在手寫輸入的筆畫數多于二時,才使用預計算的距離陣列。圖11說明了依據本發(fā)明最佳實施例的具有多分辨率字符模型的識別系統的流程圖。
雖然該最佳實施例在其執(zhí)行過程中具有單獨的一組141個模型,但也可以使用多組筆畫模型。依據在步驟58處手寫輸入的筆畫數,就可在步驟62處用來自存儲器60的一組合適的筆畫模型計算該距離陣列。依據手寫輸入的筆畫數目,從字符模塊存儲器63中選出了合適的存儲器塊(以下,將參照圖12進行更詳細的討論)。計算所選存儲器模塊內的對所有字符模型的距離度量,以便能在步驟64處創(chuàng)建一個距離陣列。這個計算步驟可以進一步包括在預計算的個別筆畫距離的距離陣列時,執(zhí)行搜尋的過程。一旦對與輸入字符具有相同筆畫數的字符模型的距離度量被計算出來,則在步驟66處對該陣列的距離分類,以便在步驟68處創(chuàng)建一個分類表。至少能從該分類表中選出一個備選者,而且在該分類表中至少有一個備選者可由該識別系統報出。在步驟58處,如果筆畫數目少于或等于門限值(例如兩畫),則與使用距離陣列相反,在步驟70處,使用筆畫特征計算來自所有字符模型的距離度量。
圖12說明了依據本發(fā)明第一實施例的用于字符模型的一個存儲器裝置(存儲器)的方框圖。若干字符模型被存儲在若干存儲器塊中,其中一個存儲器塊包括具有指定數目筆畫的字符模型。最好是沒有兩個存儲器塊能包含相同筆畫數的字符模塊。然而,本發(fā)明適用于這種情況,即多于一個存儲器塊包含具有相同筆畫數的字符模塊。然而,可將用于同一字符的模型存儲在多于一個的存儲器塊內。例如,用兩種不同筆畫數所寫的同一字符的模型被分別存儲在兩個分離的存儲器塊中。
這樣,參見圖13和圖14,圖中顯示了在其中存儲了一組指令的一個存儲器媒體72,當將該指令調入微處理器74時,會使微處理器74執(zhí)行以下功能在步驟76處,從若干字符中提取筆畫;在步驟78處,根據從若干字符提取出的筆畫模型,得出預定數目的筆畫模型;并在步驟80處,將若干字符表示為筆畫模型序列。
雖然對本發(fā)明所作的說明是參照特定實施例進行的,但是對本技術領域人員來說可很容易理解其附加的優(yōu)點,也能容易地進行多種修改。例如,可通過使用不同數目的特征,或通過改變特征本身來創(chuàng)建多分辨率模型。與在高分辨率時所用的特征數相比,處于低分辨率時所使用的特征數較小。本發(fā)明的另一個擴充是能以7種分辨率存儲同一字符模型??墒褂玫头直媛誓P妥鲙追N快速匹配,以便能對輸入限制為一組可能的匹配,而最高的分辨率模型來作最后的逐條的匹配。因此,對于稍寬一點的方面來說,本發(fā)明并不僅限于特定的細節(jié)、圖示或所說明的典型的裝置及例證性的例子。根據前面所作的說明,各種更正、修改和變化對本技術領域人員來說都是顯而易見的。
權利要求
1.一種創(chuàng)建用于識別的字符表示法的方法,包括識別具有第一數目筆畫的第一字符,以及具有第二數目筆畫的第二字符,其中第一數目大于第二數目;將第一字符的每一筆畫與第一組筆畫模型相比;以及將第二字符的每一筆畫與第二組筆畫模型相比,其中第一組筆畫模型比第二組筆畫模型少。
2.一種創(chuàng)建用于識別的字符表示法的方法,包括導出用于若干字符的字符模型;將字符模型分組;從該組內每個字符模型中提取筆畫;根據從該組內字符模型中提取出的筆畫,創(chuàng)建用于該組的筆畫模型;以及對于該組內每個字符模型中的每一筆畫,存儲最接近該筆畫的筆畫模型的索引。
3.依據權利要求2的所述方法,其特征在于組內每個字符模型筆畫數在一個特定范圍內。
4.一種用于創(chuàng)建用來識別的字符表示法的裝置,包括導出用于若干字符的字符模型的裝置;對字符模型進行分組的裝置;用于從該組內每個字符模型中提取出筆畫模型的裝置;根據從該組內的字符模型中提取出的筆畫,創(chuàng)建該組的筆畫模型的裝置;以及對該組內每個字符模型中的每一筆畫,用于存儲與該筆畫最接近的筆畫模型索引的一個存儲器,其中該組內每個字符模型的筆畫數都在一個特定范圍內。
全文摘要
字符模型被導出以用于若干字符。該字符模型被分為幾組。從該組內每個字符模型中提取出筆畫。根據從該組內字符模型中提取出的筆畫,創(chuàng)建用于該組的筆畫模型。對該組內每個字符模型中的每一畫,都存儲了與該筆畫最接近的筆畫模型的索引。
文檔編號G06K9/46GK1516061SQ0313650
公開日2004年7月28日 申請日期1999年2月9日 優(yōu)先權日1998年2月9日
發(fā)明者卡南·帕塞薩拉斯, 卡南 帕塞薩拉斯 申請人:摩托羅拉公司