JPS6261990B2 - - Google Patents

Info

Publication number
JPS6261990B2
JPS6261990B2 JP56007150A JP715081A JPS6261990B2 JP S6261990 B2 JPS6261990 B2 JP S6261990B2 JP 56007150 A JP56007150 A JP 56007150A JP 715081 A JP715081 A JP 715081A JP S6261990 B2 JPS6261990 B2 JP S6261990B2
Authority
JP
Japan
Prior art keywords
stroke
character
pen
coordinate
strokes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP56007150A
Other languages
Japanese (ja)
Other versions
JPS57121770A (en
Inventor
Yasuo Ichinoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP56007150A priority Critical patent/JPS57121770A/en
Publication of JPS57121770A publication Critical patent/JPS57121770A/en
Publication of JPS6261990B2 publication Critical patent/JPS6261990B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition

Description

【発明の詳細な説明】[Detailed description of the invention]

本発明はタブレツト上で描かれる手書文字を認
識する手書文字認識方法に関する。 従来のこの種の認識方法においては、各文字を
記入する領域がタブレツト上で規定されており、
タブレツトのペン座標を判別することによつて、
文字切出しを行つていた。従つて、記入枠が印刷
された用紙をタブレツト上にセツトし、記入枠内
に文字を書く必要があつた。 本発明の目的は、文字を記入枠内に書かなくて
も、或いは記入枠から飛び出して書いても、文字
切出しが行える手書文字認識方法を提供すること
にあり、これを、文字判定は特定個数のストロー
クについて行わせ、且つ、判定結果に基づいて次
に判定すべき文字ストロークを切り出すことによ
つて達成したものである。 本発明においても従来と同様に、手書文字にお
けるペンダウンからペンアツプまでのペン座標軌
跡をストロークとして、順々にストローク毎に区
分けして座標メモリに記憶する。 本発明においては、文字切出しを先行させるこ
となく、時間的に先行する特定個数のストローク
を単位として選択し、その単位内で時間的に最も
先行するストロークの属する文字を判定する。単
位として選択するストロークの個数は認識対象の
最大ストローク数で決定され、数字、英字、カナ
等の認識対象の種類、個人差等による変形筆順や
変形文字を考慮して決定する。数字認識の場合は
2ストロークを単位とすることができ、文字判別
のために選択される単位は2ストロークの数字、
例えば「4」や「5」並びに1ストロークの数字
の組合せ、「11」、「12」等であり、「12」のように
2数字の組合せの場合は時間的に先行するストロ
ークの属する数字「1」が判定される。文字の判
定は従来と同様にできるが、判定辞書における特
徴事項、従つてそれに必要な特徴抽出において若
干異なる。例えば、特定個数のストロークを単位
としているために、文字のストローク数自体は文
字判定の特徴事項とはならない。また、例えば、
「7」のように先行するストロークが他の数字
「1」に類似している場合は、数字「1」を含む
2ストロークの組合せ、例えば「11」と区別する
ための特徴事項が必要となる。次の文字を認識す
るための特定個数のストロークの選択はストロー
ク数テーブルメモリの出力に基づいて行われ、こ
れが文字切出しに相当する。ストローク数テーブ
ルメモリには、変形文字や変形筆順を考慮して文
字コード対応のストローク数が予め記憶されてい
る。直前に認識された文字コードに対応したスト
ローク数が読み出され、このストローク数によ
り、座標メモリの決定済のストロークを判別し、
残余の未決定、ストロークの中から、時間的に先
行する特定個数のストロークを選択し、次の文字
を認識する。なお、座標メモリに一定時間以上新
しいストロークが入力されない場合は、残余のス
トロークについて文字認識を行う。 第1図は本発明による文字認識方法を適用した
手書文字認識装置の一実施例である。第1図にお
いて、10は文字入力タブレツト、20はデータ
レジスタ(R)、30は座標メモリである。40
は、書き込みカウンタ(WC)41と、状態表示
レジスタ(FLAG)42と、有効座標判定部43
とを有する入力データ書き込み制御部である。5
0は、セグメント部51と、特徴計算部52と、
文字判定部53とからなる文字認識部である。前
記セグメント部51は折線近似器、回転量計算
器、セグメント検出器、セグメント登録メモリと
を備える。前記特徴計算部52は特徴計算器、特
徴ROM、特徴計算結果メモリを備える。なお
ROMとは読み出し専用メモリを意味するものと
する。前記文字判定部53は文字判定器、判定
ROMを備える。60はストローク数テーブル
ROMで、70は、読み出しカウンタ(RC)71
と、第1ストローク先頭番地格納レジスタ(SR
1)72と、第2ストローク先頭番地格納レジス
タ(SR2)73とを有する文字切り出し認識制
御部である。 第1図の手書文字入力用のタブレツト10、デ
ータレジスタ20、座標メモリ30、入力データ
書き込み制御部40によるペン座標データ入力処
理を第2図に示したペン座標データ入力処理の流
れ図を併用して説明する。 入力データ書き込み制御部40は文字入力タブ
レツトに押圧されるペン位置の座標を座標メモリ
に書き込むための制御を行うものであり、後述の
如く、文字切り出し認識制御部に対して、随時割
り込んで制御するものである。入力データ書き込
み制御部40では、処理段階2Aでまず、ある一
定周期毎に文字入力タブレツト10からペンアツ
プ、ペンダウン信号を引き込み、処理段階
(2B)でペンアツプ、ペンダウンの判定を行うも
のであり、このペンアツプ、ペンダウン信号が
“1”であればペンダウン状態、“0”であればペ
ンアツプ状態と判定する。又、前回入力処理時の
ペンアツプ、ペンダウンの状態は状態表示レジス
タ(FLAG)に設定されるが、前回ペンアツプ状
態であればFLAG=0、前回ペンダウン状態であ
ればFLAG=1となつている。このペン座標デー
タ入力処理の処理内容としては次の5種があり、
それぞれの処理の内容を次記する。 処理状態1 本装置の起動後、全くデータ入力がない状態
であるか、或いは文字ストロークの終点データ
入力後、データ入力がない状態である。すなわ
ち、ペンアツプダウン信号=“0”、FLAG=
“0”の場合であり、まず一定周期毎に割込処
理を開始して、ペンアツプダウン信号=0、
FLAG=0を識別して割込処理を終了する。 処理状態2 文字ストロークの始点であるストロークの最
初の文字座標データ検出時の処理である。すな
わち、ペンアツプダウン信号=“1”、FLAG=
“0”の場合であり、この場合ペンアツプダウ
ン信号=“1”、FLAG=“0”を識別した後、
FLAGに“1”をセツトすると共に、検出され
た文字入力の座標データ(直交座標x、y)を
データレジスタ20にセツトする。 処理状態3 ペンダウン状態が連続していて、文字ストロ
ークが描かれている場合の処理であり、ペンア
ツプダウン信号=“1”、FLAG=“1”の状態
で、有効座標判定部での判定結果、今回入力の
座標データが前回の座標データと一定値以上相
違する場合の処理である。有効座標であるかど
うかの判定はデータレジスタ(R)20に格納
された前回入力のペン座標データと今回入力さ
れたペン座標データを入力データ書き込み制御
部40に引き込んで判定する。この場合ペンア
ツプダウン信号=“1”、FLAG=“1”を識別
し、更に有効座標データであることを識別した
後、データレジスタ10に格納された前回入力
のペン座標データを書き込みカウンタWCの指
す座標メモリ30の所定の番地に書き込み、且
つ、今回入力されたペン座標データをデータレ
ジスタ(R)20にセツトする。更に、書き込
みカウンタ(WC)を+1すると共に、その+
1した書き込みカウンタ(WC)の内容でアド
レス指定される座標メモリ30の所定の番地に
未書き込み領域の先頭を示すため“−1”を書
き込む。 処理状態4 ペンダウン状態が連続しているが、ペン座標
位置データが前回入力のペン座標位置データと
の差が一定値以内である場合であり、この場
合、ペンアツプダウン信号=“1”、FLAG=
“1”と識別するが、無効座標データと識別し
て、座標メモリ30への前回入力のペン座標デ
ータの書き込み、並びに今回入力のペン座標デ
ータのデータレジスタ(R)20へのセツトは
行われない。 処理状態5 文字ストロークの終点であるストロークの最
後の文字座標データ検出時の処理である。すな
わち、ペンアツプダウン信号=“0”、FLAG=
1の場合であり、ペンアツプダウン信号=
“0”、FLAG=“1”と識別した後、データレ
ジスタ(R)20にセツトされている前回入力
のペン座標データをストロークエンドと判定し
て、データレジスタ(R)20のペン座標デー
タ付加された特定ビツトにストロークエンドビ
ツトを立てる。更に、FLAG=“0”とし、次
にデータレジスタ(R)20にセツトされたス
トロークエンドのペン座標を書き込みカウンタ
41の示す座標メモリ30の所定の番地に書き
込む。現在のペンアツプしたペン座標をデータ
レジスタ(R)20にセツトし、更に書き込み
カウンタ(WC)を+1して、+1した書き込
みカウンタ(WC)の示す座標メモリ30の所
定の番地に“−1”をセツトする。 第3図は座標メモリ30を示したものであり、
第2図に示されるペン座標データ入力処理に基づ
いて、入力されたペン座標データ(x座標、y座
標)を格納するものである。この座標メモリ30
は各入力データ毎にストロークエンドビツトを有
し、前記処理状態5でセツトされたストロークエ
ンドビツトを格納して後述する切出認識処理時に
必要となる文字の各ストロークの終点を示すため
に用いている。 文字の切り出し認識処理は座標メモリ30に格
納された文字ストロークの座標データを、文字切
り出し識別制御部70の制御のもとに、文字切り
出し識別部50に入力して処理を進め、文字の判
定を行うものである。この処理を第4図に示した
文字切り出し認識処理の流れ図を併用して説明す
る。 第4図において、本装置の起動、すなわち、ス
タートを行うと文字切り出し識別制御部は初期設
定を行う。すなわち、内部の座標メモリのアドレ
ス設定のための読み出しカウンタ(RC)71、
座標メモリに格納された第1ストロークの先頭番
地を示すための第1ストローク先頭番地格納レジ
スタ(SR1)72に座標メモリの先頭番地を格
納させ、読み出しカウンタ(RC)71の示す座
標メモリ30の番地(すなわち先頭番地)に未書
き込み領域の先頭番地を示すための「−1」を書
き込む。そして、ストローク数を計算するストロ
ークカウンタ(SCNT)、並びに前回ペン位置入
力処理時のペンアツプ・ペンダウンを示すための
状態表示レジスタ(FLAG)をそれぞれ「0」に
セツトする。更に、入力データ書き込み制御部4
0内の書き込みカウンタ(WC)41に座標メモ
リ30の先頭番地をセツトする。このように、本
装置の各レジスタ、各カウンタ等を切期設定した
後、文字切り出し識別制御部70は読み出しカウ
ンタ(RC)71の指示座標メモリの番地の内容
を順次読み出し、「−1」であるかどうかの判定
を行う。「−1」であればそれ以上の座標データ
が入力されていないと判断して、繰り返し同一番
地の読み出しを行い、次の座標データの入力まで
待つこととなる。「−1」でない場合には座標デ
ータの入力があつたと判断して、次に文字ストロ
ークのエンドであるかどうかの判断を行う。これ
は座標メモリのストロークエンドビツトを参照し
て行う。ストロークエンドビツトが立つていなけ
れば1ストロークが終わつていないということで
読み出しカウンタ(RC)を「+1」して次の座
標データの入力まで待つこととなる。ストローク
エンドビツトが立つていればストロークの終点と
判断してストロークカウンタ(SCNT)を「+
1」し、ストローク数が「2」であるかどうかの
判定を行う。ストローク数、すなわち、ストロー
クカウンタ(SCNT)の値が1である場合には、
読み出しカウンタ(RC)の値を「+1」してこ
れを第2ストローク先頭番地格納レジスタ(SR
2)に格納する。これは次の読み出し番地が座標
メモリにおける第2ストロークを格納した先頭番
地を示すためである。この場合、引き続いて読み
出しカウンタの内容そのものも「+1」して、次
の座標データの入力まで待つこととなる。ストロ
ーク数が「2」である場合には、文字切り出し認
識制御部70から文字認識部50に対し、起動信
号を送る。これにより、文字認識部50内のセグ
メント部51でセグメント検出処理を、特徴計算
部52で特徴計算処理を、文字判定部53で文字
判定処理を、それぞれ続けて実行する。 まず、セグメント検出処理では、文字切り出し
認識制御部70内の第1ストローク先頭番地格納
レジスタ(SR1)に格納された第1ストローク
の先頭番地を読み出しカウンタにセツトして、順
次座標メモリ30の内容を読み出し、折線近似器
において、折線近似処理を実行し、その結果、入
力文字ストロークを8の方向量子係数を有する直
線によつて折線近似化する。第5図に折線近似し
た方向量子係数を示す。この入力ストロークを直
線で折れ線近似する技術は広く行われている手法
であるので、ここでは省略する。 次に、折れ線近似されたパターのセグメント化
を行うために、まず、回転量計算器において、同
一ストローク内の隣接する直線間の回転量を計算
する。ここに折れ線近似したパターンにおけるn
番目の直線をLn、直線Lnの方向を第5図に示す
ごとき8分割した方向コードであらわしたものを
(Ln)として、連続する2つの直線における
方向変化を符号をもつ量であらわし、これを回転
量として、回転量G(Ln、Lo+1)を次のごとく
定義する。 |(Lo+1)−(Ln)|<4のとき G(Ln、Lo+1)=(Lo+1)−(Ln) (Lo+1)−(Ln)>4のとき G(Ln、Ln+1)=(Lo+1)−(Ln)−8 (Lo+1)−(Ln)<−4のとき G(Ln、Lo+1)=(Lo+1)−(Ln)+8 但し、|(Lo+1)−(Ln)|=4のときは
次の2通りある。第6図に示すごとく、直線Ln
に対する隣接する直線Lo+1の反時計方向の相対
角度を各直線の始点及び終点の座標位置データよ
り算出して180゜以下のとき G(Ln、Lo+1)=4 前記Lnに対するLo+1の反時計方向相対角度が
180゜をこえるとき G(Ln、Lo+1)=−4 とする。 以上の回転量の定義に従い、回転量計算器は連
続する2つの直線の回転量を計算する。セグメン
ト検出器4は回転量G(Ln、Lo+1)とG(Lo+
、Lo+2)とがその符号において異なる場合に
直線Lo+1の終点をセグメントの分割点とし、そ
れぞれのセグメントに関する回転量G、始直線方
向、終直線方向、セグメント始点座標位置格納ア
ドレス、セグメント終点座標位置格納アドレスを
セグメント登録メモリに格納する。更に、各スト
ロークの第1セグメントに対しては、ストローク
開始ビツドをセグメント登録メモリに立てる。第
7図はセグメント登録メモリを示したものであ
る。セグメント分割の1例を第8図に示す。この
セグメント登録メモリに設定された各データを用
いて、特徴計算部52において、特徴計算処理を
行う。 ここで本実施例は例えば、数字0〜9の認識処
理を行うものであり、その筆順を第9図に示す如
く、書く場合について考えるものとする。 特徴計算器では、第9図に示した数字0〜9の
筆順の特徴に対応させて、次の9種の特徴を各ス
トローク、セグメントにおいて計算する。この特
徴の数は筆順が異なる場合、カナ文字の場合、英
文字の場合等、更に多種類必要となるものであ
る。 第1特徴 N(ST1)=1 これは第1ストローク内のセグメント数が1
つであることを示す。 第2特徴 R(ST1、SG1)>1 これは第1ストローク内の、第1セグメント
内の、隣接する直線どおしのなす回転量の総和
が1以上であることを示す。 第3特徴 R(ST1、SG1)>4 これは第2特徴の回転量の総和を4以上に置
きかえたものである。 第4特徴 R(ST1、SG1)<−1 これは第2特徴の回転量の総和を−1以下に
置きかえたものである。 第5特徴 R(ST1、SG2)<−1 これは第1ストローク内の第2セグメント内
の隣接する直線どおしのなす回転量の総和が−
1以下であることを示す。 第6特徴 R(ST2、SG1)<−1 これは第2ストローク内の第1セグメントの
隣接する直線どおしのなす回転量の総和が−1
以下であることを示す。 第7特徴 D(ST1、SG1、1 ;ST1、SG1、2) >{L(ST1、SG1)/4} これは第1ストローク内の第1セグメントの
始点から第1ストローク内の第1セグメントの
終点までの距離が第1ストローク内の第1セグ
メント内の全直線の総延長の1/4以下であるこ
とを示している。 第8特徴 D(ST1、SG1、1 ;ST2、SG1、1) <{L(ST1、SG1)/3} ∧R(ST2、SG1) <−1∧N(ST2)=1 これは第1ストローク内の第1セグメントの
始点から第2ストロークの第1セグメントの始
点までの距離が第1ストローク内の、第1セグ
メント内の全直線の総延長の1/3以下であり、
且つ、第2ストローク内の第1セグメント内の
隣接する直線どおしのなす回転量の総和が−1
以下であり、且つ、第2ストローク内のセグメ
ント数が1であることを示す。 第9特徴 D(ST1、SG1、1 ;ST2、SG2、1) <{L(ST2、SG1)/3} ∧R(ST2、SG1)=0 ∧F(ST2、SG1、1 ;ST2、SG1、2)=0 これは第1ストローク内の第1セグメントの
始点と第2ストロークの第2セグメントの始点
までの距離が第2ストロークの第1セグメント
への内の全直線の総延長の1/3以下であり、且
つ、第2ストローク内の第1セグメント内の隣
接する直線どおしのなす回転量の総和が0で、
且つ、第2ストローク内の第1セグメントの始
点から第2ストロークの第1セグメントの終点
までの方向が第5図に示した0方向であること
を示す。 1〜9の特徴に対して、各文字のパターンがそ
の条件を満足する場合には特徴有り(1)、そうでな
い場合には(0)として下記のごとき判定辞書を
作成する。ただし、×は1か0かについて着目し
ないことを意味する。
The present invention relates to a handwritten character recognition method for recognizing handwritten characters drawn on a tablet. In this type of conventional recognition method, an area for writing each character is defined on the tablet.
By determining the pen coordinates of the tablet,
I was cutting out characters. Therefore, it was necessary to set a sheet of paper with a writing frame printed on the tablet and write characters within the writing frame. An object of the present invention is to provide a handwritten character recognition method that can extract characters even when the characters are not written within the writing frame or even when the characters are written outside the writing frame. This was achieved by making the character strokes perform the same number of strokes, and then cutting out the next character stroke to be determined based on the determination results. In the present invention, as in the prior art, the pen coordinate locus from pen down to pen up in a handwritten character is treated as a stroke, and is sequentially divided into strokes and stored in a coordinate memory. In the present invention, without preceding character extraction, a specific number of temporally preceding strokes are selected as a unit, and the character to which the temporally most preceding stroke belongs within that unit is determined. The number of strokes selected as a unit is determined by the maximum number of strokes of the recognition target, and is determined by taking into account the type of recognition target such as numbers, alphabets, kana, etc., and modified stroke order and modified characters due to individual differences. In the case of number recognition, the unit can be two strokes, and the unit selected for character recognition is two strokes of numbers,
For example, combinations of numbers such as "4", "5", and one stroke, "11", "12", etc., and in the case of a combination of two numbers such as "12", the number to which the temporally preceding stroke belongs "1" is determined. Characters can be judged in the same way as before, but the feature items in the judgment dictionary and the feature extraction necessary for this are slightly different. For example, since a specific number of strokes is used as a unit, the number of strokes of a character itself is not a feature of character determination. Also, for example,
If the preceding stroke is similar to another digit ``1'', such as ``7'', a feature is required to distinguish it from a two-stroke combination that includes the digit ``1'', such as ``11''. . Selection of a specific number of strokes for recognizing the next character is performed based on the output of the stroke number table memory, and this corresponds to character segmentation. Stroke numbers corresponding to character codes are stored in advance in the stroke number table memory, taking into account modified characters and modified stroke order. The number of strokes corresponding to the character code recognized immediately before is read out, and based on this number of strokes, the determined stroke in the coordinate memory is determined,
A specific number of temporally preceding strokes are selected from the remaining undetermined strokes, and the next character is recognized. Note that if no new strokes are input to the coordinate memory for a certain period of time or more, character recognition is performed for the remaining strokes. FIG. 1 shows an embodiment of a handwritten character recognition device to which the character recognition method according to the present invention is applied. In FIG. 1, 10 is a character input tablet, 20 is a data register (R), and 30 is a coordinate memory. 40
is a write counter (WC) 41, a status display register (FLAG) 42, and a valid coordinate determination unit 43.
An input data write control section having the following. 5
0 includes a segment unit 51, a feature calculation unit 52,
This is a character recognition section consisting of a character determination section 53. The segment unit 51 includes a polygonal line approximator, a rotation amount calculator, a segment detector, and a segment registration memory. The feature calculation unit 52 includes a feature calculator, feature ROM, and feature calculation result memory. In addition
ROM shall mean read-only memory. The character determination unit 53 is a character determiner, a determination
Equipped with ROM. 60 is the stroke number table
In ROM, 70 is read counter (RC) 71
and the first stroke start address storage register (SR
1) 72 and a second stroke start address storage register (SR2) 73. The pen coordinate data input process by the handwritten character input tablet 10, data register 20, coordinate memory 30, and input data writing control unit 40 shown in FIG. 1 is combined with the flowchart of the pen coordinate data input process shown in FIG. I will explain. The input data writing control section 40 performs control to write the coordinates of the pen position pressed on the character input tablet into the coordinate memory, and as described later, interrupts and controls the character cutting recognition control section at any time. It is something. In the input data writing control section 40, in the processing step 2A, first, the pen-up and pen-down signals are drawn in from the character input tablet 10 at certain regular intervals, and in the processing step (2B), the pen-up and pen-down signals are determined. If the pen down signal is "1", it is determined that the pen is down, and if it is "0", it is determined that the pen is up. Further, the pen-up and pen-down states at the time of the previous input processing are set in the status display register (FLAG), and if the pen is in the previous pen-up state, FLAG=0, and if it is the previous pen-down state, FLAG=1. There are five types of processing contents for this pen coordinate data input processing:
The details of each process are described below. Processing state 1: After the device is started, there is no data input, or after the end point data of a character stroke is input, there is no data input. That is, pen up/down signal = “0”, FLAG =
In the case of "0", interrupt processing is started at regular intervals, pen up/down signal = 0,
Identify FLAG=0 and end the interrupt processing. Processing state 2 This is processing when the first character coordinate data of a stroke, which is the starting point of a character stroke, is detected. In other words, pen up/down signal = “1”, FLAG =
In this case, after identifying the pen up-down signal = “1” and FLAG = “0”,
"1" is set in FLAG, and the coordinate data (orthogonal coordinates x, y) of the detected character input is set in the data register 20. Processing state 3 This is a process when the pen-down state is continuous and a character stroke is drawn, and when the pen-up-down signal = “1” and FLAG = “1”, the judgment result in the effective coordinate judgment unit This process is performed when the currently input coordinate data differs from the previous coordinate data by a certain value or more. Whether the coordinates are valid or not is determined by inputting the previously inputted pen coordinate data stored in the data register (R) 20 and the currently inputted pen coordinate data into the input data writing control section 40. In this case, after identifying the pen up-down signal = "1" and FLAG = "1" and further identifying that it is valid coordinate data, write the previously input pen coordinate data stored in the data register 10 to the counter WC. The pen coordinate data pointed to is written to a predetermined address in the coordinate memory 30, and the pen coordinate data input this time is set in the data register (R) 20. Furthermore, the write counter (WC) is incremented by 1, and the +
In order to indicate the beginning of the unwritten area, "-1" is written at a predetermined address in the coordinate memory 30 that is addressed by the contents of the write counter (WC) that has been set to 1. Processing state 4 This is a case where the pen down state continues, but the difference between the pen coordinate position data and the previously input pen coordinate position data is within a certain value. In this case, the pen up down signal = "1", FLAG =
However, it is identified as invalid coordinate data, and the pen coordinate data input last time is written to the coordinate memory 30, and the pen coordinate data input this time is set to the data register (R) 20. do not have. Processing state 5 This is processing when the last character coordinate data of a stroke, which is the end point of a character stroke, is detected. That is, pen up/down signal = “0”, FLAG =
1, and the pen up/down signal =
After identifying "0" and FLAG="1", the pen coordinate data of the previous input set in the data register (R) 20 is determined to be the stroke end, and the pen coordinate data of the data register (R) 20 is added. Set the stroke end bit at the specified bit. Further, FLAG="0" is set, and then the pen coordinates of the stroke end set in the data register (R) 20 are written to a predetermined address in the coordinate memory 30 indicated by the write counter 41. Set the current pen coordinates of the pen up in the data register (R) 20, further increment the write counter (WC) by 1, and write "-1" to the predetermined address of the coordinate memory 30 indicated by the +1 write counter (WC). Set. FIG. 3 shows the coordinate memory 30,
The input pen coordinate data (x coordinate, y coordinate) is stored based on the pen coordinate data input process shown in FIG. This coordinate memory 30
has a stroke end bit for each input data, stores the stroke end bit set in processing state 5, and uses it to indicate the end point of each stroke of a character required during the cutout recognition process described later. There is. In the character cutout recognition process, the coordinate data of the character stroke stored in the coordinate memory 30 is input to the character cutout identification unit 50 under the control of the character cutout identification control unit 70 to proceed with the process and determine the character. It is something to do. This process will be explained with reference to the flowchart of the character cutout recognition process shown in FIG. In FIG. 4, when the apparatus is activated, that is, started, the character cutout identification control section performs initial settings. That is, a read counter (RC) 71 for setting the address of the internal coordinate memory;
The start address of the coordinate memory is stored in the first stroke start address storage register (SR1) 72 for indicating the start address of the first stroke stored in the coordinate memory, and the address of the coordinate memory 30 indicated by the read counter (RC) 71 is stored. (ie, starting address), "-1" is written to indicate the starting address of the unwritten area. Then, a stroke counter (SCNT) for calculating the number of strokes and a status display register (FLAG) for indicating pen-up/pen-down during the previous pen position input processing are each set to "0". Furthermore, the input data write control section 4
The start address of the coordinate memory 30 is set in the write counter (WC) 41 in 0. In this way, after setting each register, each counter, etc. of this device to OFF, the character cutting identification control unit 70 sequentially reads out the contents of the address of the designated coordinate memory of the reading counter (RC) 71, and sets it to "-1". Determine whether it exists. If it is "-1", it is determined that no more coordinate data has been input, and the same location is read out repeatedly, waiting until the next coordinate data is input. If it is not "-1", it is determined that coordinate data has been input, and then it is determined whether it is the end of the character stroke. This is done by referring to the stroke end bit in the coordinate memory. If the stroke end bit is not set, it means that one stroke has not been completed, and the read counter (RC) is incremented by 1 and the process waits until the next coordinate data is input. If the stroke end bit is set, it is determined that the stroke is at the end point, and the stroke counter (SCNT) is set to "+".
1" and determines whether the number of strokes is "2". When the number of strokes, that is, the value of the stroke counter (SCNT) is 1,
Add 1 to the value of the read counter (RC) and store it in the second stroke start address storage register (SR).
2). This is because the next read address indicates the first address in the coordinate memory where the second stroke is stored. In this case, the contents of the read counter are subsequently incremented by 1, and the process waits until the next coordinate data is input. When the number of strokes is "2", a start signal is sent from the character cutout recognition control section 70 to the character recognition section 50. As a result, the segment section 51 in the character recognition section 50 executes segment detection processing, the feature calculation section 52 executes feature calculation processing, and the character determination section 53 executes character determination processing, respectively. First, in the segment detection process, the first stroke start address stored in the first stroke start address storage register (SR1) in the character cutout recognition control unit 70 is set in a read counter, and the contents of the coordinate memory 30 are sequentially read. After reading, a polygonal line approximation process is executed in the polygonal line approximator, and as a result, the input character stroke is approximated on a polygonal line by a straight line having a directional quantum coefficient of 8. FIG. 5 shows directional quantum coefficients approximated by broken lines. Since this technique of approximating the input stroke using a straight line as a polygonal line is a widely used technique, it will be omitted here. Next, in order to segment the putter approximated by polygonal lines, first, a rotation amount calculator calculates the amount of rotation between adjacent straight lines within the same stroke. n in the pattern approximated by a polygonal line
The direction of the straight line Ln is expressed as Ln, and the direction of the straight line Ln is expressed by a direction code divided into 8 parts as shown in Figure 5 as (Ln).The direction change in two consecutive straight lines is expressed as a quantity with a sign, and this is expressed as (Ln). As the amount of rotation, the amount of rotation G (Ln, Lo +1 ) is defined as follows. |(L o+1 )−(Ln) | When <4 G(Ln, Lo +1 )=(L o+1 )−(Ln) When (L o+1 )−(Ln)>4 G(Ln, Ln+1)=(L o+1 )−(Ln)−8 When (L o+1 )−(Ln)<−4, G(Ln, L o+1 )=(L o+1 ) −(Ln)+8 However, when |(L o+1 )−(Ln)|=4, there are the following two cases. As shown in Figure 6, the straight line Ln
When the relative angle in the counterclockwise direction of the adjacent straight line L o+1 to the line is 180° or less calculated from the coordinate position data of the starting and ending points of each straight line, G (Ln, L o+1 ) = 4 L with respect to the above Ln The counterclockwise relative angle of o+1 is
When the angle exceeds 180°, G(Ln, L o+1 )=-4. According to the above definition of the rotation amount, the rotation amount calculator calculates the rotation amount of two consecutive straight lines. The segment detector 4 detects the amount of rotation G(Ln, L o+1 ) and G(L o+
1 , Lo +2 ) are different in sign, the end point of the straight line Lo +1 is set as the dividing point of the segment, and the rotation amount G, starting line direction, ending line direction, and segment starting point coordinate position for each segment are stored. Store the address and segment end point coordinate position storage address in the segment registration memory. Additionally, for the first segment of each stroke, a stroke start bit is set in the segment registration memory. FIG. 7 shows the segment registration memory. An example of segment division is shown in FIG. Using each data set in the segment registration memory, the feature calculation section 52 performs feature calculation processing. Here, in this embodiment, for example, recognition processing of numbers 0 to 9 is performed, and the case where the stroke order is written as shown in FIG. 9 will be considered. The feature calculator calculates the following nine types of features for each stroke and segment in correspondence with the stroke order features numbered 0 to 9 shown in FIG. The number of these features is required to be even greater in cases where the stroke order is different, in the case of kana characters, in the case of English characters, etc. First feature N(ST 1 )=1 This means that the number of segments in the first stroke is 1.
Indicate that it is. Second characteristic R(ST 1 , SG 1 )>1 This indicates that the sum of the rotation amounts of adjacent straight lines within the first segment within the first stroke is 1 or more. Third feature R(ST 1 , SG 1 )>4 This is the second feature in which the total amount of rotation is replaced with 4 or more. Fourth feature R(ST 1 , SG 1 )<-1 This is the result of replacing the sum of the rotation amounts of the second feature with -1 or less. Fifth feature R (ST 1 , SG 2 ) <-1 This means that the total amount of rotation between adjacent straight lines in the second segment within the first stroke is -
Indicates that it is 1 or less. 6th feature R (ST 2 , SG 1 ) <-1 This means that the sum of the rotation amounts between adjacent straight lines of the first segment in the second stroke is -1
Indicates that: Seventh feature D(ST 1 , SG 1 , 1 ; ST 1 , SG 1 , 2) > {L(ST 1 , SG 1 )/4} This is the first stroke from the starting point of the first segment in the first stroke This indicates that the distance to the end point of the first segment in the first stroke is 1/4 or less of the total length of all straight lines in the first segment in the first stroke. Eighth feature D(ST 1 , SG 1 , 1 ; ST 2 , SG 1 , 1) <{L(ST 1 , SG 1 )/3} ∧R(ST 2 , SG 1 ) <−1∧N(ST 2 ) = 1 This means that the distance from the start point of the first segment in the first stroke to the start point of the first segment in the second stroke is 1/3 of the total length of all straight lines in the first segment in the first stroke. The following is
And, the total amount of rotation between adjacent straight lines in the first segment in the second stroke is -1
and the number of segments in the second stroke is one. Ninth feature D(ST 1 , SG 1 , 1 ; ST 2 , SG 2 , 1) <{L(ST 2 , SG 1 )/3} ∧R(ST 2 ,SG 1 )=0 ∧F(ST 2 , SG 1 , 1 ; ST 2 , SG 1 , 2) = 0 This means that the distance between the start point of the first segment in the first stroke and the start point of the second segment in the second stroke is is 1/3 or less of the total length of all straight lines in
It also indicates that the direction from the start point of the first segment in the second stroke to the end point of the first segment in the second stroke is the 0 direction shown in FIG. For the features 1 to 9, if the pattern of each character satisfies the condition, the feature is determined to be present (1), otherwise it is determined to be (0), and the following judgment dictionary is created. However, × means that no attention is paid to whether it is 1 or 0.

【表】 特徴ROMには1〜9の特徴データが格納され
ていて、特徴計算器はそれを1特徴ずつ読み出
し、特徴計算に必要なストローク群のデータを座
標メモリ1、またはセグメント登録メモリから読
み出して計算し、特徴あり(1)またはなし(0)を
判定する。結果は1特徴毎に全特徴分が特徴計算
結果メモリに格納される。次に文字判定部におい
て、文字判定処理が行われるが、文字判定ROM
には判定辞書が格納されていて、文字判定器はこ
の判定辞書と特徴判定結果を遂次読み出し(1)と
(0)が全て一致した文字を認識結果として出力
する。 以上の如くして、文字認識部50における処理
が終了し、識別結果が文字コードとして出力され
るが、この識別結果である文字コードをストロー
ク数テーブルROM60に入力する。このストロ
ーク数テーブルROM60には文字コードに対応
するストローク数が格納されていて、入力される
文字コード対応のストローク数を出力して、文字
切り出し認識制御部70に入力する。文字切り出
し認識制御部70では判定文字のストローク数が
「1」であれば、第2ストローク先頭番地格納レ
ジスタSR2に格納された第2ストローク先頭番
地を第1ストローク先頭番地格納レジスタSR
1、及び読み出しカウンタ(RC)にセツトする
と共に、ストロークカウンタ(SCNT)を「1」
として連続的に次の文字の切り出し認識処理に移
る。又、判定文字のストローク数が「2」であれ
ば、読み出しカウンタ(RC)の内容を「+1」
した値を第1ストローク先頭番地格納レジスタ
SR1にセツトし、且つ、ストロークカウンタの
内容を「0」として、更に、読み出しカウンタ自
身の値も「+1」して更新を行い、連続的に次の
文字の切り出し認識処理に移る。 以上、数字を識別する場合に、1文字最大2ス
トロークの場合について説明を行つたが、単位の
ストローク数を増すことによつて、第9図の筆順
と異なる数字、或いはカナ文字、或いは英字を認
識できるのはもちろんである。 以上説明したように、本実施例では、必ずしも
1文字単位のデータで認識を行う必要がないた
め、特別の切り出し処理を必要とせず、判定文字
のストローク数を描出して座標メモリの次に処理
を行うデータの番地を決定して、処理することが
できるため、連続的に文字の切り出し認識処理を
行うことができる。 従つて、文字ピツチの変動が許され、記入枠の
ない帳票(例えばけい線だけしかないもの)によ
る文字入力が可能となるという利点がある。
[Table] Feature data 1 to 9 are stored in the feature ROM, and the feature calculator reads them one feature at a time, and reads the stroke group data required for feature calculation from coordinate memory 1 or segment registration memory. and determine whether the feature is present (1) or absent (0). All the results are stored in the feature calculation result memory for each feature. Next, character determination processing is performed in the character determination section, but the character determination ROM
A judgment dictionary is stored in , and the character judger sequentially reads out this judgment dictionary and the feature judgment results and outputs characters in which all (1) and (0) match as recognition results. As described above, the processing in the character recognition section 50 is completed, and the identification result is output as a character code. The character code that is the identification result is input into the stroke number table ROM 60. The stroke number corresponding to the character code is stored in this stroke number table ROM 60, and the stroke number corresponding to the input character code is outputted and inputted to the character cutting recognition control section 70. If the number of strokes of the determined character is "1", the character extraction recognition control unit 70 sets the second stroke start address stored in the second stroke start address storage register SR2 to the first stroke start address storage register SR.
1, and the read counter (RC), and set the stroke counter (SCNT) to "1".
The process then continues to cut out and recognize the next character. Also, if the number of strokes of the judged character is "2", the content of the read counter (RC) is set to "+1".
The value is stored in the first stroke start address storage register.
SR1, the content of the stroke counter is set to ``0'', and the value of the read counter itself is also updated by ``+1'', and the process continues to cut out and recognize the next character. Above, when identifying numbers, we have explained the case where each character requires a maximum of two strokes, but by increasing the number of strokes per unit, it is possible to identify numbers, kana characters, or alphabetic characters that differ from the stroke order shown in Figure 9. Of course it can be recognized. As explained above, in this embodiment, since it is not necessary to perform recognition using data for each character, there is no need for special extraction processing, and the number of strokes of the determined character is depicted and processed next in the coordinate memory. Since the address of the data to be processed can be determined and processed, character cutout recognition processing can be performed continuously. Therefore, there are advantages in that character pitch is allowed to vary, and characters can be input using a form without an entry frame (for example, one with only horizontal lines).

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明による文字認識方法を適用した
手書文字認識装置の一実施例、第2図はペン座標
データ入力処理の流れ図、第3図は座標データ等
を格納した座標メモリを示した図、第4図は文字
切り出し認識処理の流れ図、第5図は折線近似し
た方向量子係数を示した図、第6図は隣接する直
線間の回転方向による回転量の正負の符号を説明
するための図、第7図は各種データを格納したセ
グメント登録メモリを示した図、第8図はセグメ
ント分割の1例を示した図、第9図は本発明の文
字認識方法を実施する場合の数字0〜9の筆順の
1例を示した図である。 10……文字入力タブレツト、20……データ
レジスタ、30……座標メモリ、40……入力デ
ータ書き込み制御部、50……文字認識部、60
……ストローク数テーブルROM、70……文字
切り出し認識制御部。
Fig. 1 shows an embodiment of a handwritten character recognition device to which the character recognition method according to the present invention is applied, Fig. 2 shows a flowchart of pen coordinate data input processing, and Fig. 3 shows a coordinate memory storing coordinate data, etc. Figure 4 is a flowchart of the character extraction recognition process, Figure 5 is a diagram showing directional quantum coefficients approximated by broken lines, and Figure 6 is for explaining the positive and negative signs of the rotation amount depending on the rotation direction between adjacent straight lines. , FIG. 7 is a diagram showing a segment registration memory storing various data, FIG. 8 is a diagram showing an example of segment division, and FIG. 9 is a diagram showing numbers when implementing the character recognition method of the present invention. It is a figure showing an example of stroke order of 0-9. DESCRIPTION OF SYMBOLS 10...Character input tablet, 20...Data register, 30...Coordinate memory, 40...Input data writing control section, 50...Character recognition section, 60
...Stroke number table ROM, 70...Character cutout recognition control unit.

Claims (1)

【特許請求の範囲】 1 手書文字におけるペンダウンからペンアツプ
までのペン座標軌跡をストロークとして、ストロ
ークを順々に座標メモリに記憶させ、 前記座標メモリに1もしくは複数文字に属する
一定個数以上の未決定ストロークが記憶された状
態において、時間的に先行する前記一定個数の未
決定ストロークを単位として選択させ、選択され
た単位のストロークに基づいて時間的に最も先行
するストロークの属する文字を決定させ、 決定された文字の文字コードに対応して予め定
められているストローク数に基づいて、次の文字
の認識に関するストローク単位を選択させること
を特徴としたオンライン手書文字認識方法。
[Claims] 1. A pen coordinate trajectory from pen down to pen up in a handwritten character is stored as a stroke in a coordinate memory in order, and a certain number or more of undetermined characters belonging to one or more characters are stored in the coordinate memory. In a state where the strokes are stored, select the predetermined number of temporally preceding undetermined strokes as a unit, and determine the character to which the temporally most preceding stroke belongs based on the selected unit of strokes; 1. An online handwritten character recognition method characterized by selecting a stroke unit for recognition of the next character based on a predetermined number of strokes corresponding to the character code of the character.
JP56007150A 1981-01-22 1981-01-22 On-line handwriting character recognizing method Granted JPS57121770A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56007150A JPS57121770A (en) 1981-01-22 1981-01-22 On-line handwriting character recognizing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56007150A JPS57121770A (en) 1981-01-22 1981-01-22 On-line handwriting character recognizing method

Publications (2)

Publication Number Publication Date
JPS57121770A JPS57121770A (en) 1982-07-29
JPS6261990B2 true JPS6261990B2 (en) 1987-12-24

Family

ID=11658036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56007150A Granted JPS57121770A (en) 1981-01-22 1981-01-22 On-line handwriting character recognizing method

Country Status (1)

Country Link
JP (1) JPS57121770A (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59176884A (en) * 1983-03-26 1984-10-06 Nippon Telegr & Teleph Corp <Ntt> Eliminating system of undesired input of pressure- sensitive drawn picture input device
US7756337B2 (en) 2004-01-14 2010-07-13 International Business Machines Corporation Method and apparatus for reducing reference character dictionary comparisons during handwriting recognition
US7298904B2 (en) 2004-01-14 2007-11-20 International Business Machines Corporation Method and apparatus for scaling handwritten character input for handwriting recognition
US20050152600A1 (en) * 2004-01-14 2005-07-14 International Business Machines Corporation Method and apparatus for performing handwriting recognition by analysis of stroke start and end points
US7490033B2 (en) 2005-01-13 2009-02-10 International Business Machines Corporation System for compiling word usage frequencies
TW200809660A (en) * 2006-03-01 2008-02-16 Zi Decuma Ab A method for additive character recognition and an apparatus thereof

Also Published As

Publication number Publication date
JPS57121770A (en) 1982-07-29

Similar Documents

Publication Publication Date Title
US5161245A (en) Pattern recognition system having inter-pattern spacing correction
US5732154A (en) Handwriting and character recognition system
US5940532A (en) Apparatus for and method of recognizing hand-written characters
JPS6261990B2 (en)
US7133556B1 (en) Character recognition device and method for detecting erroneously read characters, and computer readable medium to implement character recognition
KR940007345B1 (en) On-line recognitin method of hand-written korean character
JPS592191A (en) Recognizing and processing system of handwritten japanese sentence
JPH0567988B2 (en)
JP2519782B2 (en) Character separation method
JP3190776B2 (en) Online handwritten character recognition device
JP3817281B2 (en) Information processing apparatus and method
JPS56145472A (en) Recognizing method of on-line handwritten character
JPS5835674A (en) Extracting method for feature of online hand-written character
JPH1049631A (en) Method and device for on-line handwritted character recognition
JP2742263B2 (en) Character segmentation device in online continuous character recognition device
JP2991909B2 (en) Document processing apparatus and document processing method
JPH10214312A (en) Online hand-written character recognition device
JP2972443B2 (en) Character recognition device
JPH0436435B2 (en)
JPH06301819A (en) Online handwritten character recognition device
JPS6327753B2 (en)
JP2851865B2 (en) Character recognition device
JPS6215681A (en) Recognizing system for on-line handwritten character
JPH0355874B2 (en)
JPH0830717A (en) Character recognition method and device therefor