專利名稱:字符識別裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于識別字符的裝置和方法。
由于非英語國家和西方國家之間的貿(mào)易飛速增長,它們之間通訊的重要性也隨之增長。過去當(dāng)英語國家和漢語國家之間進行通訊時,例如在中國接收到一份用英文撰寫的文件時,首先要將該文件轉(zhuǎn)送到國家政府翻譯中心。該文件要翻譯并用手抄寫成中文,最后送交該文件的收件人。當(dāng)準(zhǔn)備好對該翻譯文件的回答時,該回答也要在該政府翻譯中心由中文翻譯成英文再轉(zhuǎn)發(fā)給相應(yīng)的英語國家。然而,這種使用存在一個問題,即翻譯者將文件抄寫為中文(或反之)將在通訊過程中增加一個顯著的延遲。
為了克服這個問題,研制了一種具有漢語表意字符表示鍵的打字機裝置。對此打字機,可以雇用一位熟悉漢語并能夠使用該打字機的操作員來硬拷貝用中文撰寫的文件。但這種情況下也存在一個問題,即由于漢語大約有50,000個以上不同的表意字符,因而在這種打字機裝置上則需很大數(shù)目的鍵。對這種類型裝置的改進是采用插入某些功能鍵以減少所需的鍵的數(shù)目;但既使這樣,上述問題依然存在。此外,還存在其它的問題,即當(dāng)使用這種打字機裝置時,需要對操作員進行多方面的培訓(xùn),以便學(xué)會如何恰當(dāng)?shù)厥褂迷撴I盤裝置。這個學(xué)習(xí)過程所需的費用昂貴并且相當(dāng)耗時間。
為了克服當(dāng)使用這種鍵盤裝置時所遇到的這些問題,研制了一種接收并識別手寫表意字符的檢測裝置。該裝置需要將表意字符寫在輸入裝置上并要求所寫的字符由預(yù)定的基本筆劃或由每個用表意語言寫入的人所使用的基本典型筆劃所構(gòu)成。而后,把表意字符送入該裝置。該裝置檢查構(gòu)成所寫入的表意字符的基本筆劃并將所寫入的基本筆劃與檢查表中的內(nèi)容相比較。該檢查表中存貯了許多種預(yù)定的基本筆劃的各種不同的筆跡,以便適應(yīng)用戶手寫的各種不同的筆體。由于存貯在表中的每個基本筆劃的各種不同筆跡的數(shù)目很大,因而構(gòu)成該字符的各種基本筆劃通常是由該裝置進行檢測的。該表還存貯了若干組在該表意語言中用來構(gòu)成每個字符的基本筆劃。如果構(gòu)成該寫入字符的一組基本筆劃對應(yīng)于該檢查表中所存貯的若干組基本筆劃中的一組,則產(chǎn)生一個與該組基本筆劃相關(guān)聯(lián)的輸出代碼,并送至輸出裝置。這種裝置能對一個寫入表意字符的圖象形成硬拷貝。但這里還存在一個問題,即由于存貯在表中的每個基本筆劃的各種不同筆跡的數(shù)目很大,因而該裝置的處理速度大為降低,以致該裝置不適于實時應(yīng)用。
此外,在這種裝置中所使用的預(yù)定基本筆劃或基本筆劃的數(shù)目一般選擇的是5或少于5或者20或大于20。由于在構(gòu)成該語言中每個表意字符的子組中僅用5種基本筆劃,所以這里還存在的一個問題是,既使該表意字符的外形并不相同,但是由同一組基本筆劃卻可構(gòu)成大量不同的表意字符。這樣一來,就降低了該裝置在不同表意字符之間進行識別的能力。
為了克服這個問題,在小組中包括了20種或更多不同的基本筆劃。但是,在這種情況下仍然存在同樣的問題,即盡管出現(xiàn)由一系列基本筆劃表示一個以上的表意字符的情況減少了,但還有若干不同的表意字符仍然由相同系列的基本筆劃所構(gòu)成。并且,在小組中增加基本筆劃的數(shù)目的情況下,又存在另一個該裝置的處理時間進一步增加的問題。
此外,還存在其它的問題,即這類典型裝置能夠檢測用一種語言寫成的字符,但不能檢測多種語言字符。因此,需要一種改進的字符識別裝置。
本發(fā)明的目的是排除或減緩上述的一些不足。
根據(jù)本發(fā)明提供了一種用于辨別由若干基本筆劃構(gòu)成的字符的字符識別裝置。該字符和基本筆劃是由預(yù)定的集合組成的。該裝置包括有輸入裝置,用以連續(xù)地接收構(gòu)成該字符的每個基本筆劃并對每個所接收到的基本筆劃產(chǎn)生輸入信號;
處理裝置,接收上述輸入信號并識別輸入裝置所接收的每個基本筆劃;該處理裝置產(chǎn)生一個字符代碼;該字符代碼對應(yīng)于依據(jù)上述基本筆劃所識別的字符;
存貯裝置,在上述集合組內(nèi),對每個字符存貯一個字符代碼及一個相關(guān)聯(lián)著的輸出代碼;
比較裝置,將對上述寫入的字符所產(chǎn)生的字符代碼與在該存貯裝置中的每個字符代碼相比較,以便識別上述寫入的字符;以及輸出裝置,與比較裝置相連通,并根據(jù)該比較裝置的識別,產(chǎn)生出一個重現(xiàn)的寫入字符。
更可取的是,該裝置還進一步包括有微分裝置,用來檢查每個上述基本筆劃所產(chǎn)生的輸入信號,并在其上面當(dāng)上述字符代碼與多個輸出代碼相關(guān)聯(lián)的一個字符代碼相同時,則去執(zhí)行與上述字符相關(guān)聯(lián)的輸出代碼的識別操作。
更可取的是,當(dāng)輸入字符代碼與存貯裝置中所存貯的任何字符代碼不相同時,該裝置提供了置換裝置用以選擇在存貯裝置中存貯的具有最可能與寫入字符產(chǎn)生的字符代碼相同的那些字符代碼。再有,在包括有打印機、音頻合成器或視頻顯示終端的一組器件中,其輸出裝置至少由一種上述器件組成,從而能以再現(xiàn)被接收的所要形成的表意字符或音頻再現(xiàn)所要產(chǎn)生的表意字符。
更可取的是,該字符識別裝置可以識別用所有表意語言寫出的字符、大寫英語字符以及俄語字符。
最好是把所預(yù)置的基本筆劃組選擇為包括有20種不同的基本筆劃。在多種不同語言中,這些基本筆劃組的各種組合將構(gòu)成該語言中的絕大多數(shù)的字符,同時也減少了由相同序列的基本筆劃所構(gòu)成的不同字符的出現(xiàn)。因此,20種不同的基本筆劃可減少與多個國際輸出代碼相關(guān)聯(lián)的一個字符代碼相同的那些字符代碼所表示的寫入字符的出現(xiàn),因而能以檢測出正確的表意字符的可能性大為提高。
現(xiàn)將參照如下附圖,僅以舉例方式,對本發(fā)明的一個實施方案予以說明。
圖1是用來識別字符的一種裝置的方框圖;
圖2是對一個表意字符的說明;
圖3是說明用于圖1所示裝置的基本筆劃圖;
圖4a至圖4c是說明用圖3所示的基本筆劃構(gòu)成圖2所示的字符的方法示意圖;
圖5是圖1中所表明的裝置的詳細方框圖;
圖6是圖1中所表明的部分裝置的詳細方框圖;
圖7是說明用于圖1所示裝置中的一種編碼方法示意圖;
圖8a和圖8b是說明寫入基本筆劃的示意圖;
圖9a和圖9b是說明另一些表意字符的示意圖;
圖10是說明用于圖1所示裝置中的一種概率矩陣示意圖;
圖11是一個英文字符的說明;
圖12是多個英文字符的說明。
參見圖1,示出了一種用于識別手寫字符的裝置10。裝置10包括有與數(shù)據(jù)處理器14相連接的輸入裝置12。輸入裝置12接收手寫字符并將該字符變換為一系列的信號,再傳送給數(shù)據(jù)處理器14。數(shù)據(jù)處理器14對接收的信號進行處理,以便檢測送到輸入裝置12上的字符。輸出裝置16與數(shù)據(jù)處理器14相連接并接收相應(yīng)于由輸入裝置12所接收的手寫字符的國際ASCII輸出代碼。這就可重現(xiàn)所產(chǎn)生的手寫字符。
裝置10可在多個模式上工作,其中的每個模式都可識別并重現(xiàn)不同語言的手寫字符。選擇裝置18允許用戶在所操作的裝置10中選擇語言。因此,根據(jù)由選擇裝置18所選擇的模式,處理器14響應(yīng)于選擇裝置18并被劃分為14a、14b……、14n部分;這樣,就可以一個一個地存貯并存取適當(dāng)?shù)男畔⒘恕?br>
為簡單起見,將描述圖1所示的裝置,當(dāng)處理裝置14處于檢測表意字符狀態(tài)時,雖然選擇裝置18處于不同的模式狀態(tài),但對其它語言字符的檢測可用同一種類似的方式實現(xiàn)。
參見圖2,示出了表意字符IC??梢钥闯觯摫硪庾址鸌C是由一系列基本筆劃構(gòu)成的。這些基本筆劃分別標(biāo)記為Pr1至Pr3。當(dāng)用表意語言書寫時,將基本筆劃Pr1至Pr3用作為基礎(chǔ)筆劃。
對于表意字符,其筆劃的書寫順序主要基于邏輯功能、經(jīng)驗和人的固有習(xí)慣。根據(jù)多次研究發(fā)現(xiàn),當(dāng)書寫表意字符時,存在著一系列的基本規(guī)律。這些基本規(guī)律是
上-下左-右外-內(nèi)橫-豎撇-捺先入-后封每個漢字都可以采用上述規(guī)律的一個或多個規(guī)律來構(gòu)成該字。
以下表1舉例說明表意字符的基本筆順表1
為了減少當(dāng)構(gòu)成一個表意字符時用戶必須按要求撰寫的基本筆劃數(shù)目,同時為了減少必須由處理器14處理的數(shù)據(jù)的總數(shù),把在圖3中說明的二十種基本筆劃中的十五種Pra至Pro用于裝置10。這十五種基本筆劃Pra至Pro是用于構(gòu)成表意字符的典型基本筆劃的組成部分。因為在各種語言中所有的表意字符都可以由基本筆劃Pra至Pro的不同組合而構(gòu)成,所以可以選擇這種基本筆劃的子組。如將要描述的那樣,當(dāng)該裝置正工作于檢測用其它語言書寫的字符時,則將基本筆劃Pra至Prt同某些基本筆劃Pra至Pro合為一起使用。
現(xiàn)在參見圖5,將更好地說明該裝置10。輸入裝置12包括一個帶有記錄筆20a的聯(lián)機數(shù)字轉(zhuǎn)換器圖形輸入板20。把要識別的表意字符用記錄筆20a寫在圖形輸入板20上。這就導(dǎo)致對于被寫入的構(gòu)成表意字符IC的每個基本筆劃Pra至Pro均產(chǎn)生一連串笛卡兒坐標(biāo)數(shù)據(jù)點信號PNo至PNN。該數(shù)據(jù)點信號的大寫字母“N”表示當(dāng)構(gòu)成字符IC時寫入基本筆劃的順序,而角標(biāo)“N”表示沿基本筆劃取樣點的編號。然后,將該數(shù)據(jù)點信號傳送到數(shù)據(jù)處理器14。
將位于數(shù)據(jù)處理器14內(nèi)的存貯器22連接到數(shù)字轉(zhuǎn)換器圖形輸入板20上。該存貯器22接收未處理的笛卡兒坐標(biāo)數(shù)據(jù)點信號,并在處理之前將它們存貯起來。預(yù)處理器24接收每個寫入基本筆劃的笛卡兒坐標(biāo)數(shù)據(jù)點信號PNo至PNN的拷貝,并處理該數(shù)據(jù),以便除去冗余數(shù)據(jù)和偽數(shù)據(jù)。將預(yù)處理的笛卡兒坐標(biāo)數(shù)據(jù)點信號從預(yù)處理器24送至特征抽取部分26。該特征抽取部分26將每個基本筆劃Pr的笛卡兒坐標(biāo)數(shù)據(jù)點信號轉(zhuǎn)換為矢量代碼和一系列標(biāo)量。
把由該特征抽取部分26產(chǎn)生的矢量代碼和標(biāo)量系列送到基本筆劃檢測部分28。該基本筆劃檢測部分28將每個構(gòu)成字符IC寫入的基本筆劃Pra至Pro產(chǎn)生的矢量代碼與檢查表或字典中的內(nèi)容相比較。該處理器14檢測寫入的基本筆劃是否是15種基本筆劃Pra至Pro的組成部分。在矢量代碼的構(gòu)成中,當(dāng)一個寫入的基本筆劃Pr僅與在基本筆劃檢測部分28中所存貯的15種基本筆劃中的一種筆劃相關(guān)聯(lián)的矢量代碼相同時,則產(chǎn)生一個基本筆劃代碼a至o,并傳送至存貯器30。對構(gòu)成寫入表意字符IC的表示每一個基本筆劃Pr的每個矢量代碼都進行這一比較過程。因而,對于表示表意字符IC的寫入字符產(chǎn)生一系列基本筆劃代碼或一個字符代碼。然而,如果對于一個寫入的基本筆劃Pr所產(chǎn)生的矢量代碼與一個同15種基本筆劃Pra至Pro中的一種以上筆劃相關(guān)聯(lián)的矢量代碼相同時,則檢測部分28就要對與產(chǎn)生矢量代碼相關(guān)聯(lián)的一系列標(biāo)量進行檢測,以便檢測出正確的寫入基本筆劃。
把所產(chǎn)生的字符代碼從存貯器30傳送到字符檢測部分32,并與第二檢查表或字典中的內(nèi)容進行比較。字符檢測部分32存貯該語言中表示每個表意字符的字符代碼。所存貯的字符代碼基本上要求該表意字符由圖3中說明的15種基本筆劃的組合而成,并且該字符是用上述規(guī)則所確定的筆順寫入圖形輸入板20上的。由于寫入表意語言時,上述規(guī)則是普遍使用的,所以這些字符代碼是可以表示表意字符的字符代碼的,但從一種不正確的方式寫入的基本筆劃之中構(gòu)成的那些字符代碼,則在檢查表中略去。
對于寫入表意字符IC所產(chǎn)生的字符代碼和在字符檢測部分32中出現(xiàn)的字符代碼相同時,則輸出一個相關(guān)的輸出代碼或國際ASCII輸出代碼。然而,如果該字符代碼和表示一個以上的表意字符的字符代碼相同時,則字符檢測部分32對存貯在存貯器22中的未處理的笛卡兒坐標(biāo)數(shù)據(jù)點信號進行處理,以便判定字符代碼所表示的正確的表意字符IC。這樣,就使得正確的國際ASCII代碼能夠輸出到存貯器34。
當(dāng)寫入字符代碼與存貯在字符檢測部分28中的一個字符代碼不同時,則還提供了一個替換和校正裝置36,以便對寫入的字符代碼進行檢查。替換裝置36替換該寫入的字符代碼。把認為是最有可能的字符代碼去表示該寫入的字符代碼,并且再將該字符代碼送回到字符檢測部分32,在那里完成上述過程。
將存貯在存貯器34中的表示表意字符IC的國際ASCII代碼送到輸出裝置或輸出裝置組16。該輸出裝置或輸出裝置組16包括有視頻顯示終端(VDT)16a、打印機16b及/或視頻合成器16c。該視頻合成器內(nèi)可進行表意字符IC的音頻及/或視頻的再現(xiàn)。
參見圖6可更清楚地說明處理裝置14。預(yù)處理器24包括有比較器24a和存貯器24b。該予處理器的作用是清除冗余的和偽笛卡兒坐標(biāo)數(shù)據(jù)點信號。特征抽取部分26包括有第二比較器26a和檢查表或字典26b。該特征抽取部分的作用是對構(gòu)成每個基本筆劃Pr的那些緊挨著的笛卡兒坐標(biāo)數(shù)據(jù)點信號產(chǎn)生出矢量。存貯器26c接收該矢量并將該矢量依次送至第二比較器26a。該比較器26a檢查該矢量并消除冗余信息以構(gòu)成用于每個基本筆劃Pr的一系列單元矢量或矢量代碼及標(biāo)量系列。對于每個基本筆劃產(chǎn)生的矢量代碼中,該標(biāo)量表示在每個基本筆劃所產(chǎn)生的矢量代碼里每個單元矢量的長度。將每個基本筆劃Pr所產(chǎn)生的矢量代碼和標(biāo)量序列送至存貯器26c,并將其在送到基本筆劃檢測部分28之前就存貯起來。
基本筆劃檢測部分28包括一個連接到第二檢查表或字典28b的第四比較器28a。該檢查表28b存貯了對于每個基本筆劃Pra至Pro的一個基本筆劃代碼和預(yù)定矢量代碼的清單。該矢量代碼表示15種基本筆劃Pra至Pro中的一種或幾種。該基本筆劃檢測部分28還包括一個存貯器28c和檢測部分28d。該存貯器28c存有對每個矢量代碼所產(chǎn)生出的標(biāo)量。如果與此相關(guān)聯(lián)的矢量代碼與一個由15種基本筆劃中的一種以上的筆劃所表示的矢量代碼相同時,則該檢測部分28d執(zhí)行該標(biāo)量序列上的操作。這就得以確定正確的基本筆劃了。當(dāng)寫入的基本筆劃Pr的每個矢量代碼位于字典28b中時,則與此相關(guān)聯(lián)的基本筆劃代碼a至o送入存貯器30。
把該寫入的表意字符IC所產(chǎn)生的一系列基本筆劃代碼或字符代碼送至字符檢測部分32。該字符檢測部分32包括有第五比較器32a及第三檢查表或字典32b。該字典32b存貯了構(gòu)成該語言每個表意字符的字符代碼和有關(guān)的國際輸出代碼的清單。該比較器32a和字典32b的作用是檢測表示該寫入的表意字符IC的字符代碼是否與表示一個或多個表意字符的一個字符代碼相同。字符檢測部分32還包括有微分器32c。如果該字符代碼與表示多個表意字符的字符代碼相同時,則該微分器32c執(zhí)行對未處理的笛卡兒坐標(biāo)數(shù)據(jù)點信號的檢測。這就使得能夠檢測出正確的表意字符了。當(dāng)識別出該正確的表意字符時,將與此相關(guān)聯(lián)的國際ASCII代碼送至存貯器34,并依次送至輸出裝置16。
如上所述之,當(dāng)該字符代碼與在字典32b中查找的字符代碼不相同時,則要用到替換及校正裝置36。替換部分36包括有概率矩陣36a、第六比較器36b及存貯器36c??偟恼f來,它們的作用是確定把針對該寫入的表意字符IC所產(chǎn)生的字符代碼認為是最有可能的字符代碼。這就提高了所檢測的寫入數(shù)字轉(zhuǎn)換器圖形輸入板20上的表意字符IC的概率。
當(dāng)一個表意字符IC通過數(shù)字轉(zhuǎn)換器圖形輸入板20寫入裝置10時,把記錄筆20a放置在圖形輸入板20上,并且把構(gòu)成表意字符IC的每個基本筆劃Pr都分別由記錄筆20寫出來。如上所述之,用來構(gòu)成表意字符IC的基本筆劃必須要和15種基本筆劃Pra至Pro中的一種基本相同。然而,這種限制并未造成多少問題,因為這15種基本筆劃是每一個能夠書寫表意語言的人均使用的基本筆劃。此外,當(dāng)把寫入的字符送入裝置時,選擇基本筆劃Pra至Pro,使得產(chǎn)生相同字符代碼的那些寫入字符的數(shù)目能夠減少,從而簡化在部分14中的處理。當(dāng)寫入一個基本筆劃Pr之后,記錄筆20a將在預(yù)定持續(xù)期內(nèi)被移出數(shù)字轉(zhuǎn)換器圖形輸入板20。這就導(dǎo)致產(chǎn)生出一個暫停信號。該信號使得數(shù)據(jù)處理器14去識別那些已完全被寫入的基本筆劃Pr。之后,把構(gòu)成該字符的下一個基本筆劃再寫入并又產(chǎn)生一個暫停信號。這種過程一直延續(xù)到把構(gòu)成該字符的每個基本筆劃都寫進裝置10為止。
當(dāng)記錄筆20a沿數(shù)字轉(zhuǎn)換器圖形輸入板20移動,以構(gòu)成基本筆劃Pr時,則產(chǎn)生一系列的笛卡兒坐標(biāo)數(shù)據(jù)點信號。數(shù)據(jù)處理器14以大約每秒100個取樣數(shù)據(jù)的取樣速度對每個基本筆劃產(chǎn)生的笛卡兒坐標(biāo)數(shù)據(jù)點信號進行取樣,并將所取樣的坐標(biāo)數(shù)據(jù)信號存貯在存貯器22中。對于每個基本筆劃該被取樣的數(shù)據(jù)連續(xù)地存貯在各個寄存器中,直至數(shù)據(jù)處理器14接收到一個意味著所有的基本筆劃已全部寫入的暫停信號為止。當(dāng)在數(shù)字轉(zhuǎn)換器圖形輸入板20上正在形成下一個基本筆劃Pr2時,在處理器14檢測到下一個暫停信號之前,則分別把取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號存貯在存貯器22中各個不同的寄存器里。這個過程一直延續(xù)到把構(gòu)成表意字符的每個基本筆劃都寫進去,并且為此也把所產(chǎn)生的笛卡兒坐標(biāo)數(shù)據(jù)點信號一個一個地存貯在存貯器22中為止。為了向數(shù)據(jù)處理器14指出已經(jīng)把完整的表意字符IC寫入完畢,必須按下在數(shù)字轉(zhuǎn)換器圖形輸入板20上的“字符結(jié)束”(EOC)鍵。這就防止了在數(shù)字轉(zhuǎn)換器圖形輸入板20上再寫入同先前已寫入的與表意字符相關(guān)聯(lián)的數(shù)據(jù)相混淆的一些數(shù)據(jù)。
因為使用了數(shù)字轉(zhuǎn)換器圖形輸入板20,由于記錄筆20a同數(shù)字轉(zhuǎn)換器圖形輸入板表面20的錯誤接觸將會在取樣過程中出現(xiàn)暫時的無規(guī)噪聲。此外,由于操作員手移動上的不平滑,在所取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號同理想的笛卡兒坐標(biāo)數(shù)據(jù)點信號之間也會引入偏差,因而出現(xiàn)小幅度的噪聲。再有,記錄筆20a以比相對于處理器14的取樣速度慢的速度在數(shù)字轉(zhuǎn)換器圖形輸入板20表面移動時,會導(dǎo)致太量的冗余數(shù)據(jù)點信號。這些冗余數(shù)據(jù)點信號,隨之也就需要大量的存貯空間,并且增加了裝置10的處理時間。因此,如上所述之,采用預(yù)處理器24來減少這些冗余數(shù)據(jù)和偽數(shù)據(jù)。
為了履行這一功能,將被取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號的拷貝送到比較器24a。為了減小由記錄筆20a同數(shù)字轉(zhuǎn)換器圖形輸入板20的偶然分離而引起的噪聲,將被取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號進行各個分析。如果檢測出任何被取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號的坐標(biāo)系位置超出了數(shù)字轉(zhuǎn)換器圖形輸入板20的邊界,則刪除該笛卡兒坐標(biāo)數(shù)據(jù)點信號。再者,為了減少冗余數(shù)據(jù)的數(shù)目,并因此加快裝置10的處理速度,在比較器24a中對前二個笛卡兒坐標(biāo)數(shù)據(jù)點信號進行比較。如果這二個笛卡兒坐標(biāo)數(shù)據(jù)點信號之間的距離小于預(yù)定的閾值時,則刪除第二個被取樣的數(shù)據(jù)點信號;而后,對第一和第三個被取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號進行檢查。這個過程一直延續(xù)到兩個數(shù)據(jù)點信號之間的距離大于該閾值為止。當(dāng)該距離大于該閾值時,把該第一個數(shù)據(jù)點信號送至存貯器24b,并且將另外的數(shù)據(jù)點信號同緊接著上述的數(shù)據(jù)點信號進行比較。
另外,如果這兩個笛卡兒坐標(biāo)數(shù)據(jù)點信號之間的距離大于第二個預(yù)定閾值時,則將第二個笛卡兒坐標(biāo)數(shù)據(jù)點信號同第三個數(shù)據(jù)點信號進行比較。如果第二個和第三個數(shù)據(jù)點信號之間的距離大于第二閾值時,則認為第二個數(shù)據(jù)點信號是由于記錄筆20a同數(shù)字轉(zhuǎn)換器圖形輸入板20之間的偶然錯誤接觸所產(chǎn)生的,并且將第二個數(shù)據(jù)點信號刪除。但是,如果第二個數(shù)據(jù)點信號和第三個數(shù)據(jù)點信號之間的距離小于第二閾值時,則認為第一個數(shù)據(jù)點信號是偶然產(chǎn)生的,并且將第一個數(shù)據(jù)點信號刪除。這種過程是在被取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號上針對每個構(gòu)成寫入字符的寫入基本筆劃而執(zhí)行的,因而減少了需要處理的數(shù)據(jù)的數(shù)目。
例如,如果把由圖2表明的表意字符IC寫入裝置10,則將構(gòu)成該字符IC的基本筆劃Pr1至Pr3一個一個地寫到數(shù)字轉(zhuǎn)換器圖形輸入板20上。數(shù)據(jù)處理器14取樣由數(shù)字轉(zhuǎn)換器圖形輸入板20產(chǎn)生的第一個基本筆劃Pr1的笛卡兒坐標(biāo)數(shù)據(jù),并將如圖4a至圖4c所示的被取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號P11至P15存入存貯器22中。同樣,處理器14取樣分別由下面兩個基本筆劃Pr2和Pr3所產(chǎn)生的笛卡兒坐標(biāo)數(shù)據(jù)點信號P21至P28和P31至P38,并將該取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號存入存貯器22中。
此后,將這些笛卡兒坐標(biāo)數(shù)據(jù)點信號分別送到預(yù)處理器24。其中,再把它們存貯在比較器24a中。首先,對第一個基本筆劃Pr1取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號P11同數(shù)字轉(zhuǎn)換器圖形輸入板20的外部邊界笛卡兒坐標(biāo)系進行比較。如果檢測到該取樣的數(shù)據(jù)點信號是處在數(shù)字轉(zhuǎn)換器圖形輸入板20的邊界之外,則刪除該數(shù)據(jù)點信號。其次,將每一個剩余的數(shù)據(jù)點信號P12至P15同前面的數(shù)據(jù)點信號P11進行比較。例如,若數(shù)據(jù)點P12同P11之間的距離小于預(yù)定值時,則刪除數(shù)據(jù)點信號P12,并且再將數(shù)據(jù)點信號P13同數(shù)據(jù)點信號P11進行比較。若數(shù)據(jù)點信號P13同P11之間的距離大于其閾值時,則將數(shù)據(jù)點信號P11存貯在存貯器24b中,并且重新開始如上過程,去檢查數(shù)據(jù)點信號P13和P14。這個過程對按第一個基本筆劃Pr1取樣的每個數(shù)據(jù)點信號進行處理,直至表示輸入的基本筆劃Pr1的坐標(biāo)數(shù)據(jù)減少為止。這個過程還對每一個其它被寫入的基本筆劃Pr2和Pr3所取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號進行處理,因而存貯器24b存貯每個寫入基本筆劃的被減少的笛卡兒坐標(biāo)數(shù)據(jù)點信號。
當(dāng)把針對每個寫入的基本筆劃的假的及冗余的被取樣的笛卡兒坐標(biāo)數(shù)據(jù)點信號移除之后,再將所得到的數(shù)據(jù)點信號從存貯器24b送至特征抽取部分26。
在特征抽取部分26中,為了簡化檢測寫在數(shù)字轉(zhuǎn)換器圖形輸入板20上的基本筆劃的過程,將每個寫入的基本筆劃的笛卡兒坐標(biāo)數(shù)據(jù)點信號轉(zhuǎn)換成矢量代碼及標(biāo)量序列。但是,在對寫入的基本筆劃構(gòu)成矢量代碼和標(biāo)量之前,檢查該笛卡兒坐標(biāo)數(shù)據(jù),用以檢測它是否已由預(yù)處理器24簡化為一個單一的坐標(biāo)系對了。如果基本筆劃Pre寫入數(shù)字轉(zhuǎn)換器圖形輸入板20,就出現(xiàn)這種情況。如果檢測到這種基本筆劃,則把基本筆劃代碼e輸出到存貯器,而且無需任何進一步的處理。當(dāng)構(gòu)成矢量代碼和標(biāo)量以確定其它的基本筆劃時,特征抽取部分26采用了一種在圖7中說明的改進的Freeman(付雷曼)代碼系統(tǒng)Fo。付雷曼代碼系統(tǒng)使一系列笛卡兒坐標(biāo)數(shù)據(jù)點信號(P0,P1,……,Pi,Pi+1)轉(zhuǎn)換成一系列的單位矢量,而且它的每個矢量都有一個相應(yīng)的長度。在上述一系列的笛卡兒坐標(biāo)數(shù)據(jù)點信號中,P0等于(x0,y0),而Pi等于(xi,yi)。該單位矢量是用相鄰的笛卡兒坐標(biāo)數(shù)據(jù)點信號Pi和Pi+1之間所畫的一條線與在付雷曼代碼Fc中的8個付雷曼單位矢量FV1至FV8中的一個相比較而形成的。
然而,由于在數(shù)字轉(zhuǎn)換器圖形輸入板20上寫入的基本筆劃具有多角度的外形,這就需要在一對笛卡兒坐標(biāo)數(shù)據(jù)點信號Pi和Pi+1之間形成一條有公差的線。該線不與付雷曼單位矢量相重合也被認為是正確的付雷曼單位矢量。為了適應(yīng)寫入的基本筆劃的這些差異,對于每個付雷曼單位矢量FVN,付雷曼代碼系統(tǒng)FC采用了一個20°的公差,因而任何在一對笛卡兒坐標(biāo)數(shù)據(jù)點信號之間形成的線,均落入A1至A8界限里的一個界限之中時,就可認為是與該界限相關(guān)的正確的付雷曼單位矢量FVN。
為了產(chǎn)生對每個基本筆劃的每對相鄰的笛卡兒坐標(biāo)數(shù)據(jù)點信號之間形成的每條線的付雷曼單位矢量FVN,將預(yù)處理的笛卡兒坐標(biāo)數(shù)據(jù)點信號送至比較器26a。在比較器26a中,檢查相鄰的笛卡兒坐標(biāo)數(shù)據(jù)點信號,并在它們之間形成一條線。為了減小由于操作員偶然移動記錄筆20a而引起的被取樣的笛卡兒坐標(biāo)數(shù)據(jù)的誤差,將每相鄰的數(shù)據(jù)點信號之間所形成的線的長度與一個閾值進行比較。如果這個長度小于預(yù)定閾值的長度,則認為第二個數(shù)據(jù)點信號是由操作員造成的假性手移動形成的,因而刪去該數(shù)據(jù)。這種處理保證能濾除由操作員畫出的一條水平線中所帶有的少許不希望有的非水平成份,從而產(chǎn)生出表示理想水平線的數(shù)據(jù)。
在移除偶然性數(shù)據(jù)點信號之后,所保留的相鄰數(shù)據(jù)點信號之間所形成的線,將與修正的付雷曼代碼FC相比較。如果該線落入公差范圍A1至A8中的一個范圍之內(nèi),則將與此相關(guān)的付雷曼單位矢量FV1至FV8送至存貯器26c。如果兩個笛卡兒坐標(biāo)數(shù)據(jù)點信號之間所形成的線落入付雷曼代碼Fc中無效范圍X1至X8中的一個范圍內(nèi),則該第二個笛卡兒坐標(biāo)數(shù)據(jù)點信號被下一個上述笛卡兒坐標(biāo)數(shù)據(jù)點信號所置換,并在它們之間形成一條新的線。同樣,將這條線與付雷曼代碼Fc進行比較,俅渭觳饈欠窀孟嘰τ謨行Х段1至A8中的一個范圍之內(nèi)。如果其結(jié)果是該線落入一個有效范圍AN,則將與該范圍AN有關(guān)的付雷曼單位矢量FVN送至存貯器26c。然而,如果沒有檢測到一個有效的付雷曼單位矢量,則將這一對中的第二個數(shù)據(jù)點信號用下一個上述數(shù)據(jù)點來置換,并重復(fù)以上同樣的過程。如果在置換了對于寫入的基本筆劃所產(chǎn)生的每個剩余的笛卡兒坐標(biāo)數(shù)據(jù)之后,還未檢測到一條落入有效范圍AN內(nèi)的線,則該笛卡兒坐標(biāo)用一個無效付雷曼單位矢量U′來表示,并且將該無效付雷曼矢量送至存貯器26c。
因此,對每一個寫入的基本筆劃形成一系列付雷曼單位矢量FVi至FVN或U′,并且一個一個地存貯在存貯器26c中。而后,再把該單位矢量序列一個一個地送至比較器26d。比較器26d將每個單位矢量FVi+1與前面的單位矢量FVi相比較,如果它們相同,則對這個單位矢量有一個增長的標(biāo)量計數(shù),并且刪除單位矢量FVi+1。這個過程是對每個寫入的基本筆劃Pr所產(chǎn)生的單位矢量而執(zhí)行處理的。這一操作的結(jié)果形成了一系列被簡化了的構(gòu)成該字符的每個寫入基本筆劃的單位矢量或矢量代碼,其每個矢量代碼均有一個相關(guān)的標(biāo)量序列。該標(biāo)量序列表示在矢量代碼中每個單位矢量的長度。
例如,如果把由圖1和圖4所表明的表意字符IC寫入裝置10,則比較器26a首先檢查與第一個基本筆劃Pr1相關(guān)的笛卡兒坐標(biāo)數(shù)據(jù)點并在每兩個相鄰數(shù)據(jù)點P11至P15之間分別形成線L11至L14。然后,將線L11至L14與付雷曼代碼FC相比較,并把所相關(guān)的付雷曼矢量FVi至FVN賦予這些線上。因為線L11至L14的每條線都落入界限A3(假設(shè)每條線的長度都大于該閾值),所以如圖4中所表明的基本筆劃Pr1由笛卡兒坐標(biāo)數(shù)據(jù)點P11至P15及所產(chǎn)生的線L11至L14所構(gòu)成。
隨著基本筆劃Pr1每個矢量的產(chǎn)生,將其矢量序列送至存貯器26c,并存貯在該存貯器之中。然后,在與基本筆劃Pr2及Pr3相關(guān)的笛卡兒坐標(biāo)數(shù)據(jù)點上執(zhí)行上面所描述的處理,并由此而形成的結(jié)果矢量也送至存貯器26c。接著,將每個基本筆劃Pr的付雷曼矢量送到比較器26d。之后,對每個基本筆劃產(chǎn)生的相鄰付雷曼矢量進行比較。如果相鄰矢量相同,則刪除其中的一個矢量,并且因而將該標(biāo)量計數(shù)增1。然后,將比較器26d的結(jié)果送至存貯器26e。
例如,當(dāng)把圖4a所示的基本筆劃Pr1處理為形成付雷曼矢量序列FV3、FV3、FV3、FV3時,則比較器26d將該矢量序列簡化為具有一個標(biāo)量為4的矢量代碼FV3。例如,如果寫入一個基本筆劃,并且因此而產(chǎn)生付雷曼矢量序列為FV3、FV3、FV3、FV4、FV4、FV4、FV5、FV5、FV3,則將該單位矢量簡化為矢量代碼FV3、FV4、FV5、FV3,并且將產(chǎn)生一個等于3、3、2、1的標(biāo)量序列。
該矢量代碼及相關(guān)的構(gòu)成寫入字符的每個基本筆劃的標(biāo)量序列從存貯器26e被送到基本筆劃檢測部分28。將該矢量代碼送至比較器28a,并把該標(biāo)量序列存貯在存貯器28c中。由比較器28a所接收的矢量代碼同存貯在基本筆劃字典28b中的矢量代碼相比較。將字典28b劃分成16個基本筆劃部分。它的前15個部分只與Pra至Pro這15個基本筆劃中的一個相關(guān),并且只存貯與那個基本筆劃相關(guān)的矢量代碼。而第16個部分則容納可表示一個以上基本筆劃的含糊的矢量代碼。該第16個部分還容納每個含糊矢量代碼唯一的測試信息,用以能夠斷定寫入的是正確的基本筆劃。
如果一個寫入基本筆劃代碼的矢量代碼與字典28b的前15個部分中的一個部分所存有的一個矢量代碼相同,則將與此相關(guān)的基本筆劃代碼a至o送到存貯器30。對構(gòu)成該寫入字符的每個基本筆劃所產(chǎn)生的每個矢量代碼都執(zhí)行這種處理。因而,產(chǎn)生了一系列的基本筆劃代碼或一個字符代碼。該字符代碼表示了在數(shù)字轉(zhuǎn)換器圖形輸入板20上寫入的表意字符。
但是,當(dāng)一個基本筆劃所產(chǎn)生的一個矢量代碼與字典28b的內(nèi)容相比較后,是與第16部分中存有的一個矢量代碼相同時,則將與該含糊矢量代碼相關(guān)的測試信息送至測試部分28d。該測試部分28d接收測試信息,并對它進行檢查,以便確定正在被檢查的矢量代碼是哪一個。之后,該測試部分28d接收與該檢查過的矢量代碼相關(guān)的標(biāo)量序列,并在該測試部分28d上完成由該唯一測試信息所確定的操作。將該測試結(jié)果再回送到字典28b,后者再選擇表示寫入基本筆劃的正確筆劃代碼。雖然該矢量代碼是含糊的,而標(biāo)量序列仍可在每個含糊的矢量代碼之間提供出適當(dāng)?shù)挠靡澡b別的信息,但在該序列中每個標(biāo)量的值是極不相同的。
例如,如果將圖8a所表明的基本筆劃Pra寫入圖形輸入板20,則會產(chǎn)生一個等效于FV1、FV2、FV1的矢量代碼。由于這個矢量代碼也用來表示圖8b所表明的基本筆劃Prb,所以該矢量代碼將在字典28b的第16個部分上被檢測。雖然兩個基本筆劃的矢量代碼等值,但與此相關(guān)的標(biāo)量序列卻很不相同??梢钥吹?,與基本筆劃Pra相關(guān)的標(biāo)量序列是3、1、3;而與基本筆劃Prb相關(guān)的標(biāo)量序列卻是1、5、1。因此,利用比較在該序列中的前面兩個標(biāo)量之間的相對長度,就可以確定出正確的基本筆劃代碼。
如果將該矢量代碼與字典28b的內(nèi)容相比較找不出在該字典中相等的矢量代碼,則將該矢量代碼作為是一個無法識別的基本筆劃代碼U,并且同樣也把它送到存貯器30。因此,基本筆劃檢測部分28的輸出包括一個表示輸入的表意字符IC的基本筆劃代碼序列或字符代碼。
將存貯在存貯器30中的字符代碼加到字符代碼識別部分32,并由比較器32a所接收。該比較器32a將字符代碼同用于該寫入字符所產(chǎn)生的字符字典32b的內(nèi)容相比較。如前所述,字典32b存貯該語言中每一個可能的表意字符的字符代碼以及它所相應(yīng)的國際ASCII輸出代碼。在國際上均采用國際ASCII輸出代碼表示表意字符。因為許多表意字符是由相同寫入筆順的相同基本筆劃所構(gòu)成的,雖然在兩個寫入基本筆劃之間的相對位置很不相同,但某些表意字符卻具有相同的字符代碼。當(dāng)接收到一個含糊的字符代碼時,為了能使裝置10檢測出正確的表意字符,該字符字典32b還包含與每個含糊的字符代碼唯一相關(guān)的測試信息。
當(dāng)從存貯器30中接收一個字符代碼時,則將該字符代碼通過比較器32a與字典32b中的內(nèi)容進行比較。如果所接收到的字符代碼與在字典32b中發(fā)現(xiàn)的一個唯一只和一個表意字符相關(guān)的字符代碼相同時,則將與此相關(guān)的國際ASCII輸出代碼從字典32b中輸出,并存貯在存貯器34里。但是,當(dāng)該寫入的表意字符所產(chǎn)生的字符代碼與一個同多個表意字符相關(guān)的含糊的字符代碼相同時,則把與此相關(guān)的唯一的測試信息送至字符微分器32c。
為了確定表示輸入的表意字符的國際ASCII輸出代碼,根據(jù)所接收到的測試信息,微分器32c從存貯器22中取出未處理的笛卡兒坐標(biāo)數(shù)據(jù),并執(zhí)行由該測試信息所確定的操作。當(dāng)執(zhí)行這一測試操作時,所使用的未處理的笛卡爾坐標(biāo)數(shù)據(jù)點與為此而形成的標(biāo)量序列相反,因為未處理的笛卡爾坐標(biāo)數(shù)據(jù)包含有關(guān)每一個寫入的基本筆劃相對位置的信息。當(dāng)確定出正確的國際ASCII輸出代碼時,同樣也把它送至存貯器34。
例如,如果把如圖1所示的表意字符寫入該裝置,則將產(chǎn)生一個相當(dāng)于“aba”的字符代碼,并且與字典32b中的內(nèi)容進行比較。但是,由于圖9a和圖9b分別表明的表意字符IC2和IC3也是由相同的字符代碼“aba”來表示的,因而該字符代碼是作為含糊的字符代碼被檢測到的。把與該字符代碼“aba”相關(guān)的唯一的測試信息同來自存貯器22的未處理的笛卡爾坐標(biāo)數(shù)據(jù)將一起送至微分器32c。對于這個例子來說,該測試信息將導(dǎo)致微分器32c去檢查第二個基本筆劃Pr2相對于第一個基本筆劃Pr1的位置,以便確定第二個基本筆劃Pr2是否穿過第一個基本筆劃Pr1。如果這個測試結(jié)果是負的,則微分器32c將證實寫入的表意字符IC與表意字符IC2不相同,因為在字符IC2中這個特征不存在。為了在表意字符IC和IC3之間進行區(qū)分,將第三個基本筆劃Pr3與構(gòu)成寫入的表意字符IC的第一個基本筆劃Pr1進行比較,并檢查它們之間的相對尺寸。因為基本筆劃Pr1比基本筆劃Pr3小,所以這個比較結(jié)果使微分器32c能夠選擇出正確的國際ASCII輸出代碼。字典32b接收由微分器32c所產(chǎn)生的結(jié)果,并將正確的國際ASCII輸出代碼送至存貯器34。
當(dāng)確定了該國際ASCII輸出代碼并存貯在存貯器34中之后,為了產(chǎn)生一個輸入表意字符的枷螅山偷街釗绱蠐』 6a、VDT終端16b或音頻合成器16c之類的輸出裝置。
但是,如果由一個或多個基本筆劃的一連串基本筆劃代碼構(gòu)成的字符代碼被認為是無法識別的基本筆劃代碼U或者如果該字符代碼與在字符字典32b中所查找的任何字符代碼都不相同時,則將該字符代碼送至置換和校正部分36。該轉(zhuǎn)換和校正部分36包括有概率矩陣36a。該概率矩陣是由16行乘16列寄存器36a′所組成的陣列。如圖10所示,該矩陣的每一行與包括無法識別的基本筆劃代碼U在內(nèi)的可能的16種基本筆劃代碼a至o中的一種相關(guān),而該矩陣的每一列與15種可能的基本筆劃代碼a至o中的一種相關(guān)。每一個寄存器36a′都存有表示對于列的基本筆劃代碼來說,行基本筆劃代碼可能出錯的概率數(shù)。
因此,存貯在寄存器中的概率值沿著該矩陣的對角線從左至右都為值1,因為把一個基本筆劃代碼作為其本身進行檢測的概率就是高值的。至于將兩個極不相似的基本筆劃互相弄錯,這幾乎是不可能的情況,因而在一個寄存器中存貯的與兩個不相似的基本筆劃相關(guān)的概率值為零。例如,觀查矩陣36a的第一行是與基本筆劃Pra相關(guān)的,所以基本筆劃Pa的實際上可能被弄錯為基本筆劃Prc的概率為O.O。因為這些基本筆劃在它們的構(gòu)成方式上非常不同。把與另外的基本筆劃具有某些相似的那些基本筆劃的概率值指定為在0.1至0.9的范圍內(nèi)。這要取決于它們之間的相似程度。
當(dāng)在比較器36b中所接收到的一個字符代碼其中至少具有一個無法識別的基本筆劃代碼U時,則檢查與該基本筆劃代碼U相關(guān)的那行中的概率。當(dāng)在該行中檢測出最高概率值時,則用那列的基本筆劃代碼置換該無法識別的基本筆劃代碼U。將所得到的字符代碼回送到比較器32a,并與字符字典32b的內(nèi)容相比較,從而檢測該所得到的字符代碼是否與其中所查找的一個字符代碼相同。如果所得到的字符代碼與字典中的一個字符代碼相同,則從字典32b中取出國際ASCII輸出代碼,并將它送到存貯器34中存貯起來。如果所得到的輸入字符代碼與一個含糊字符代碼相同,則用與上相同的方法對存貯在存貯器22中的笛卡爾坐標(biāo)數(shù)據(jù)執(zhí)行測試,從而確定出正確的國際ASCII輸出代碼。
然而,如果所得到的字符代碼與在字典32b中所查找的一個字符代碼不相同或者如果該原來寫入的字符代碼與在字典32b中查找的一個字符代碼不相符時,則執(zhí)行第二次置換。當(dāng)上述情況中的一種情況出現(xiàn)時,則將該字符代碼送至比較器36b,并檢查識別構(gòu)成該字符代碼的基本筆劃代碼的數(shù)目。接著,把由同樣數(shù)目的基本筆劃代碼構(gòu)成的字符字典32b中的每個字符代碼傳送到比較器36b,并與未識別出的字符代碼相比較。在這個比較期間里,檢查構(gòu)成每個字符代碼的基本筆劃代碼和構(gòu)成未識別出的字符代碼的基本筆劃代碼之間的差數(shù)。如果檢查出在字符代碼和未識別出的字符代碼之間的差數(shù)大于閾值時,則丟棄該字符代碼。
但是,應(yīng)記下每一個具有與閾值差數(shù)較小的字符代碼,并且把它們所相關(guān)的國際ASCII輸出代碼存貯在存貯器36c中。選取存貯在存貯器36c中的國際輸出代碼的次序,使在該存貯器中與該字符代碼相關(guān)的第一個國際ASCII輸出代碼同未識別的字符代碼最為相似。然后,把存貯在存貯器36c中的國際輸出代碼從存貯器36c中取出,并送至VDT終端,借此對用戶顯示出與寫入的表意字符最為相象的每一個表意字符。用戶通過編輯軟件可以選擇相應(yīng)于寫入裝置10的表意字符的那個表意字符。如果置換部分36沒有產(chǎn)生出所希望要的表意字符,則可用編輯程序從字典32b中取出正確的國際ASCII輸出代碼。
可把存貯在存貯器34中的表意字符信號送至打印機16a,從而重現(xiàn)所要產(chǎn)生的已輸入的表意字符。另外,可把該字符信號送到VDT熒光屏,以便用戶見到已寫入裝置10的字符。裝置10還能夠利用已知的編輯程序使用戶改變存貯在存貯器34中的表意字符。
當(dāng)把裝置10調(diào)節(jié)到處于其它模式之一,使該裝置還可以識別不同語言的字符時,則用圖3中所示的同樣的基本筆劃來構(gòu)成字符。很顯然,圖3中所示的基本筆劃在構(gòu)成表意字符和大寫英文字符時,是非常有用的。因為這些語言中的所有字符都可以由這些基本筆劃來構(gòu)成。當(dāng)然,也可增加另外一些基本筆劃,以便可以構(gòu)成所有文種語言的所有字符。但一般很少這樣做,因為20種基本筆劃基本上已經(jīng)可以構(gòu)成各種文種語言中的所有字符了。
如上所述,對于其它文種語言中的每個大寫字符,把處理器14中各種字典劃分為各個存有各種基本筆劃代碼、字符代碼及ASCII輸出代碼的部分。把該大寫字符存貯在該裝置中,因為這些字符一般都是由精通該文種語言的每個人以相同的方式和筆順寫入的。在該處理器中的不同部分里,還包括用以識別產(chǎn)生相同字符代碼的不同字符的測試信息。
對于使用和基本筆劃Prp至Prt相似的筆劃的文種語言來說,當(dāng)構(gòu)成字符時,除了把基本筆劃Prp至Prt中的一個筆劃寫入圖形輸入板20之外,該基本筆劃的檢測及基本筆劃代碼的確定,均是由上述利用付雷曼代碼相同的方式來實現(xiàn)的。因此,當(dāng)把一個基本筆劃寫入圖形輸入板20時,在使用付雷曼代碼之前,特征抽取部分26檢查取樣點之間所形成的線的切線,并沿著該基本筆劃確定該基本筆劃的彎曲度(即180°、270°、360°)。
如果檢測該基本筆劃為具有基本為270°或360°的曲率時,則立即確定與寫入基本筆劃Prs或Prt相關(guān)的基本筆劃代碼s或t,而且無需進一步處理。如果檢測該基本筆劃的曲率大約為180°,則沿著切線方向(即順時針或反時針方向)檢查基本筆劃的起始和終止坐標(biāo)數(shù)據(jù)信號。這將不需要進一步處理就可以把基本筆劃Prp至Prr區(qū)分開來。否則,當(dāng)檢查該切線時,如果已寫入的基本筆劃具有一個基本恒定的梯度,則不必檢測該基本筆劃,并利用付雷曼代碼去處理那些預(yù)處理的坐標(biāo)數(shù)據(jù)信號,從而確定出正確的基本筆劃代碼。
例如,參考圖11,如果將該裝置調(diào)節(jié)到處于識別英文字符的狀態(tài),并且把字符“M”寫到圖形輸入板20上,則利用基本筆劃Prb、Prg、Prc及Prb構(gòu)成該字符。這些基本筆劃用上述同樣的方法由特征抽取部分26及基本筆劃檢測部分進行處理。因此,將產(chǎn)生出一個為“bgcb”的字符代碼。因為這個代碼僅與英文中的字符“M”相關(guān),所以將會輸出這個相關(guān)的ASCII輸出代碼。
例如,如果把如圖12所示的英文字符“D”及“P”寫到圖形輸入板20上,因為構(gòu)成這兩個字符的基本筆劃是Prb及Prq,所以每個字符所產(chǎn)生的字符代碼將是“bq”。因此,如果寫入這些字符中的一個字符,則按照上述類似的方法使用存貯在字符字典中的測試信息,并檢查基本筆劃Prb的長度及基本筆劃Prp的起始點與終止點之間的長度。即使對這兩個字符所產(chǎn)生的字符代碼相同,但用這種方法也能把這兩個字符區(qū)分開來。
對于其它文種的語言,例如德語、法語等,雖然該裝置必須通過裝置18調(diào)節(jié)到處于適當(dāng)?shù)哪J缴希珯z測手寫字符的方法也是相同的。這種調(diào)節(jié)對于像德語、法語、英語這些文種語言尤其更為必要,因為在這些文種的語言中,構(gòu)成的字符相同,但ASCII輸出代碼卻可以不同。對于另外的各種語言,也可使用置換矩陣。由于在非表意語言中所使用的字符數(shù)目往往是很少的,所以使用置換矩陣也并不是必須的。
另外,當(dāng)把裝置10調(diào)節(jié)到處于檢測一種語言的大寫字符的狀態(tài)時,如果要求的話,該裝置還可以包括有輸出等效于所檢測的大寫字符的小寫字符ASCII代碼的軟件。雖然說,檢測小寫字母可用類似于檢測大寫字母的方法來進行,但各人書寫小寫字母的筆體各不相同,因而實現(xiàn)其檢測處理確實非常困難,并且需要更多的存貯空間,以便適應(yīng)對多種可能的書寫手法所寫的字符的檢測。
本裝置用于由國際商用機器公司制造的IBMPCXT個人計算機中,該計算機提供有20兆位的硬磁盤,用它來存貯各個字典的信息。為了實現(xiàn)上述識別處理,該計算機配備有適當(dāng)?shù)能浖?。該軟件能使輸入的笛卡爾坐?biāo)數(shù)據(jù)點信號能按上述方法進行處理。由于把大量的數(shù)據(jù)存貯在字典32b中,即大約50,000個不同的表意字符的字符代碼及所相關(guān)的國際輸出代碼,并使用了本技術(shù)領(lǐng)域內(nèi)已公知的B-樹算法,所以提高了在由已輸入的表意字符所產(chǎn)生的字符代碼及其中所存貯的字符代碼之間進行檢測的速度。雖然B-樹算法提高了處理速度,但它也提高了對存貯器的要求,因為它要求有索引文件。
本裝置10還可以制造在一塊很小的能夠連接到普通的個人計算機上去的集成電路板上。這塊集成電路板上提供有存貯各種字典內(nèi)容的ROM部件及包括有適當(dāng)軟件以完成數(shù)據(jù)處理功能的微處理器。
因此,本裝置的優(yōu)點是能夠在以相同筆順寫入由相同的基本筆劃所構(gòu)成的字符之間進行區(qū)分。這就減少了操作員為了選擇正確的表意字符而不得不暫停數(shù)據(jù)寫入操作的困擾。此外,如果在裝置10中沒有查找齦檬淙胱址蛭咀爸媚芄謊≡癯鲆桓鲇胍研慈胱址拇胱釵嗨頻牟煌址拇?,因而譀]蛔爸每梢越徊郊跎偕鮮齙睦懦魷幀4送猓捎詒咀爸每捎萌砑迪鄭蛘咭部捎糜布圃歟愿米爸鎂哂卸嘀鐘猛靜⒖稍詬髦只肪誠率褂謾 本裝置再一個優(yōu)點是在本裝置中用這種方法寫入的被處理的筆劃,除了少數(shù)產(chǎn)生出含糊的字符代碼的字符之外,在圖形輸入板板面上的任何地方均可寫進筆劃。再有,在確定構(gòu)成字符的基本筆劃之前,所采用的處理除少數(shù)例外之外,允許要被確定的已寫入的字符與已寫入的基本筆劃的長度不相關(guān)。此外,這種簡單的方法和處理幾乎可以很快地識別所有文種語言的手寫字符,因此可使該裝置付諸實時應(yīng)用。
顯然,本專業(yè)領(lǐng)域內(nèi)的普通技術(shù)人員可對本裝置作出改型,以便檢測任何輸入字符,只要有關(guān)于此待檢測字符的洽當(dāng)信息已被存入該裝置的字典里。
權(quán)利要求
1.一種用于識別由一定數(shù)目的基本筆劃構(gòu)成的字符的字符識別裝置,該字符及基本筆劃是由預(yù)定集合組成的,該裝置包括用于接收構(gòu)成該字符的每個連續(xù)的基本筆劃及對每個接收到的基本筆劃產(chǎn)生出輸入信號的輸入裝置;接收該輸入信號并識別由上述輸入裝置接收到的每個基本筆劃的處理裝置,該處理裝置根據(jù)所識別的基本筆劃產(chǎn)生一個表示上述字符的字符代碼;在上述裝置中,存貯一個字符代碼及一個對每個字符相關(guān)的輸出代碼的存貯裝置;將上述已寫入的字符產(chǎn)生的上述字符代碼與上述存貯裝置中的每個字符代碼相比較,用以識別上述已寫入的字符的比較裝置;以及與上述比較裝置相連通,并根據(jù)上述比較裝置的識別產(chǎn)生出重現(xiàn)已寫入的字符的輸出裝置。
2.如權(quán)利要求1所規(guī)定的字符識別裝置,進一步包括檢查每個上述基本筆劃所產(chǎn)生的輸入信號,并當(dāng)上述字符代碼與一個同多個輸出代碼相關(guān)的字符代碼相同時,執(zhí)行操作,以便識別與上述字符相關(guān)的輸出代碼的微分裝置。
3.如權(quán)利要求2所規(guī)定的字符識別裝置,其中上述基本筆劃能構(gòu)成多種語言的每個字符,上述存貯裝置能存貯所有上述語言的每個字符的字符代碼及輸出代碼。
4.如權(quán)利要求3所規(guī)定的字符識別裝置,其中上述存貯裝置進一步存貯字符測試信息;該測試信息為每個與多個輸出代碼相關(guān)的字符代碼所提供,上述微分裝置包括有用來接收字符測試信息及輸入信號,并按上述測試信息執(zhí)行操作,以便檢測與上述字符相關(guān)的輸出代碼的處理器。
5.如權(quán)利要求2所規(guī)定的裝置,其中上述預(yù)定的基本筆劃的集合包括20種不同的基本筆劃;該20種基本筆劃的各種不同組合可構(gòu)成上述語言中的任何字符。
6.如權(quán)利要求3所定義的裝置,其中上述處理裝置產(chǎn)生一個對每個被識別的基本筆劃的基本筆劃代碼;該裝置進一步包括置換裝置;該置換裝置當(dāng)上述字符代碼與在上述存貯裝置中的任何字符代碼不相同時,則接收上述字符代碼;該轉(zhuǎn)換裝置包括用來將構(gòu)成上述字符代碼的每個基本筆劃代碼與在該存貯裝置中相應(yīng)的每個字符代碼的基本筆劃代碼相比較的比較裝置;該存貯裝置具有與所接收字符而產(chǎn)生的字符代碼同樣數(shù)目的基本筆劃代碼;以及用于存貯與上述存貯裝置中每個字符代碼相關(guān)的輸出代碼的存貯器;上述存貯裝置當(dāng)與上述所產(chǎn)生的字符代碼相比較時,具有比預(yù)定差數(shù)較小的差數(shù)。
7.如權(quán)利要求6所定義的裝置,其中上述轉(zhuǎn)換裝置進一步包括一個概率矩陣,當(dāng)上述轉(zhuǎn)換裝置接收一個具有至少一個未識別的基本筆劃代碼時,該矩陣則產(chǎn)生一個最為相似于未識別基本筆劃代碼的轉(zhuǎn)換的基本筆劃代碼,并且對未識別的基本筆劃代碼轉(zhuǎn)換上述轉(zhuǎn)換了的基本筆劃代碼,以便試圖形成一個與存貯在上述存貯裝置中的字符代碼相同的字符代碼,并且最能代表上述字符。
8.如權(quán)利要求1所規(guī)定的裝置,其中上述輸入裝置是一個聯(lián)機的數(shù)字轉(zhuǎn)換器圖形輸入板,從中提供構(gòu)成上述字符的每個基本筆劃的笛卡爾坐標(biāo)數(shù)據(jù);上述處理裝置進一步包括用以檢查每個上述基本筆劃的笛卡爾坐標(biāo)數(shù)據(jù)并構(gòu)成一系列單位矢量的編碼裝置。
9.如權(quán)利要求8所規(guī)定的裝置,其中上述編碼裝置是一個修正的付雷曼(Freeman)編碼器;它包括有多個付雷曼單位矢量。
10.如權(quán)利要求9規(guī)定的裝置,其中上述處理裝置進一步包括用于接收每個上述基本筆劃單位矢量序列并刪除冗余單位矢量,以便構(gòu)成矢量代碼及與每個上述基本筆劃相關(guān)的標(biāo)量序列的特征抽取裝置;在上述兼有未識別基本筆劃代碼的集合中,用于存貯矢量代碼及表示每個上述基本筆劃的相關(guān)基本筆劃代碼的保持裝置;以及用來將上述字符產(chǎn)生的矢量代碼與在保持裝置中存貯的矢量代碼相比較的比較裝置;上述比較裝置當(dāng)上述矢量代碼與存貯在上述保持裝置中的矢量代碼相同時,則輸出上述基本筆劃代碼;而當(dāng)上述矢量代碼與存貯在上述保持裝置中的矢量代碼不相同時,則輸出上述未識別的基本筆劃代碼。
11.如權(quán)利要求10規(guī)定的裝置,其中上述保持裝置進一步裝備有基本筆劃測試信息,該信息唯一與表示多個基本筆劃的矢量代碼相關(guān);上述處理裝置進一步包括有接收上述基本筆劃測試信息并與上述矢量代碼相關(guān)的標(biāo)量序列測試部分,并在其中執(zhí)行操作,以便當(dāng)該矢量代碼與表示多個基本筆劃代碼的矢量代碼相同時,檢測出與上述矢量代碼相關(guān)的正確的基本筆劃代碼。
12.如權(quán)利要求11規(guī)定的裝置,其中上述輸出裝置是從如下組成的輸出裝置組中進行選擇的,該組包括打印機、音頻合成器及視頻顯示終端。
13.如權(quán)利要求8規(guī)定的裝置,進一步包括用來接收上述笛卡兒坐標(biāo)數(shù)據(jù)的預(yù)處理裝置;該預(yù)處理裝置比較第一個及緊接著的第二個坐標(biāo)之間的距離;如果上述距離小于預(yù)定閾值時,則移除上述第二個坐標(biāo),借此減少冗余數(shù)據(jù)的數(shù)目。
14.一種識別由一定數(shù)目的基本筆劃構(gòu)成的字符的方法;該字符及該基本筆劃是由預(yù)定集合組成的;上述方法包括如下步驟連續(xù)接收構(gòu)成上述字符的每個基本筆劃及每個基本筆劃產(chǎn)生的輸入信號;檢查上述輸入信號;以便識別構(gòu)成該字符的每個寫入的基本筆劃;根據(jù)構(gòu)成該字符的基本筆劃的識別產(chǎn)生出對每個基本筆劃的基本筆劃代碼,從而構(gòu)成一個字符代碼;按上述集合存貯字符代碼及與每個上述字符相關(guān)的輸出代碼;當(dāng)該字符代碼同一個僅與輸出代碼相關(guān)的字符代碼相同時,則將該字符代碼與存貯的每個字符代碼相比較,從而檢測上述輸出代碼;檢查上述字符代碼產(chǎn)生的基本筆劃代碼,并且當(dāng)該字符代碼與一個和多個輸出代碼相關(guān)的字符代碼相同時,則在其中執(zhí)行操作,以便檢測出與該已寫入的字符相關(guān)的輸出代碼;以及通過刪除上述相關(guān)的輸出代碼,產(chǎn)生出上述字符圖象。
15.如權(quán)利要求14規(guī)定的方法,其中提供有字符測試信息;該信息唯一與字符代碼相關(guān),并與多個字符信號相關(guān);該方法進一步包括如下步驟接收上述字符測試信息及輸入信號,并根據(jù)該字符測試信息執(zhí)行操作,以便檢測出相應(yīng)字符的輸出代碼。
16.如權(quán)利要求15規(guī)定的方法,進一步包括從20種不同的基本筆劃中構(gòu)成上述基本筆劃組成部分的步驟,上述20種基本筆劃的組合可構(gòu)成多種語言中的任何字符。
17.如權(quán)利要求16規(guī)定的方法,進一步包括如下步驟當(dāng)它與任何上述存貯的字符代碼不相同時,則接收上述字符代碼;將構(gòu)成上述字符代碼的每個基本筆劃代碼與所存貯的具有相同數(shù)目基本筆劃代碼的字符代碼所相應(yīng)的基本筆劃代碼相比較,從中產(chǎn)生出如同上述已寫入的字符的字符代碼;以及當(dāng)上述存貯的字符代碼與上述字符代碼相比較,具有比預(yù)定差數(shù)較小的差數(shù)時,將同每個上述存貯的字符代碼相關(guān)的那個輸出代碼進行存貯。
18.如權(quán)利要求17規(guī)定的方法,進一步包括如下步驟接收其中具有至少一個未識別基本筆劃代碼的一個輸入字符代碼;轉(zhuǎn)換上述未識別基本筆劃代碼,所替換的基本筆劃代碼與上述未識別基本筆劃代碼最為想象,以試圖構(gòu)成一個與存貯的字符代碼相同的字符代碼。
19.如權(quán)利要求18規(guī)定的方法,進一步包括如下步驟提供一個數(shù)字轉(zhuǎn)換器圖形輸入板,用以產(chǎn)生構(gòu)成上述表意字符的每個基本筆劃的笛卡爾坐標(biāo)數(shù)據(jù);以及對上述笛卡兒坐標(biāo)數(shù)據(jù)進行編碼,從而構(gòu)成每個基本筆劃的連續(xù)的單位矢量。
20.如權(quán)利要求19規(guī)定的方法,其中所說的編碼是由一個修正的付雷曼(Freeman)編碼器實現(xiàn)的;該編碼器包括多個付雷曼矢量。
21.如權(quán)利要求20規(guī)定的方法,進一步包括如下步驟檢查每個基本筆劃的單位矢量序列,并且除掉冗余單位矢量,根據(jù)一個相關(guān)的對每個基本筆劃的標(biāo)量序列構(gòu)成矢量代碼;按上述預(yù)定集合,存貯表示每個基本筆劃的矢量代碼及上述相關(guān)的基本筆劃代碼;將每個基本筆劃的矢量代碼與上述存貯的矢量代碼相比較;以及當(dāng)上述矢量代碼與所存貯的矢量代碼相同時,則產(chǎn)生上述基本筆劃代碼;而當(dāng)上述矢量代碼與任何上述存貯的矢量代碼不相同時,則產(chǎn)生上述未識別基本筆劃代碼。
22.如權(quán)利要求21規(guī)定的方法,進一步包括如下步驟提供與矢量代碼相關(guān)的表示多個基本筆劃代碼的基本筆劃測試信息;以及當(dāng)上述矢量代碼與一個表示多個基本筆劃代碼相等時,根據(jù)該測試信息,在與上述矢量代碼相關(guān)的標(biāo)量序列上執(zhí)行操作,從而檢測出與此相關(guān)的正確的基本筆劃代碼。
23.如權(quán)利要求22規(guī)定的方法,進一步包括如下步驟確定第一個和第二個相鄰的笛卡爾坐標(biāo)數(shù)據(jù)點之間的距離;將上述距離與預(yù)定閾值相比較;以及如果上述距離小于上述預(yù)定閾值時,則移除該第二個相鄰的笛卡爾坐標(biāo)數(shù)據(jù)點。
全文摘要
一種字符識別裝置和方法,其輸入裝置對輸入字符的各基本筆劃產(chǎn)生輸入信號后,送入處理器檢查和識別,產(chǎn)生對應(yīng)于識別和未識別的基本筆劃的基本筆劃代碼和未識別基本筆劃代碼,將它們組合成輸入字符代碼后,用以在比較器中與存貯器供給的每個字符代碼相比較,當(dāng)它與僅同一個輸出代碼相關(guān)的字符代碼相同時,可通過輸出裝置而重現(xiàn)該輸入字符;當(dāng)它與一個同多個輸出代碼相關(guān)的字符代碼相同時,則通過微分器檢測功能可重現(xiàn)該輸入字符。
文檔編號G06K9/22GK1035195SQ8810928
公開日1989年8月30日 申請日期1988年12月12日 優(yōu)先權(quán)日1987年12月11日
發(fā)明者駱守昌 申請人:駱守昌