(57)【特許請求の範囲】
【請求項１】
複数の標準文字が記憶された辞書ファイルから順に標準文字を選択し、当該標準文字と手書き入力された手書き文字とを、手書き文字の筆順が正しいとの前提下、所定の条件に従って比較して手書き文字を認識処理する手書き文字認識方法による手書き文字の認識を、当該手書き文字の筆順が誤ったものである場合にも可能とする手書き文字認識のための筆順処理方法であって、
入力された手書き文字と、前記辞書ファイルから順に選択された標準文字とを、仮想的に３次元空間において所定の間隔を隔てて対向させ、
前記手書き文字の各ストロークの略中点と、この手書き文字の各ストロークに対応する前記標準文字の各ストロークの略中点とを、仮想的に仮想線によって結び、組み合わせ可能な２本の仮想線と、この２本の仮想線のそれぞれの端部同士を仮想的に結ぶ仮想線によって形成されるすべての四辺形のうちのいずれかにねじれが生ずる場合、
又は、
入力された手書き文字と、辞書ファイルから順に選択された標準文字とを、仮想的に３次元空間において所定の間隔を隔てて対向させ、
前記手書き文字の各々のストロークの始点及び終点と、前記手書き文字の各々のストロークに対応する標準文字の各々のストロークの始点及び終点とを、それぞれ仮想的に仮想線によって結び、
手書き文字と標準文字の対応するストロークの始点及び終点とをそれぞれ結ぶ２本の仮想線と当該手書き文字及び標準文字のストロークとで形成されるすべての四辺形のうちのいずれかにねじれが生ずる場合に、手書き文字の筆順に誤り有りと判定することを特徴とする手書き文字認識のための筆順処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、手書き文字の認識に係り、特に、誤った筆順で入力された文字の認識を可能とするための、手書き文字認識における筆順処理方法及びその装置に関する。
【０００２】
【従来の技術】
従来、手書き文字認識技術としては、例えば、手書き文字の各ストロークの形状が認識対象となる文字によって、それぞれ異なり、基本的なパターンに分類することができる点に着目し、標準文字の各ストロークの形状と、認識対象となる手書き文字の各ストロークの形状との比較判断により文字の判定を行うようにしたいわゆるストロークマッチングと称されるものや、近年においては、従来から提案されている種々の手法に、いわゆるニューラル・ネットの概念を導入し、より認識率の向上を試みようとしたもの等種々提案されており、さらには、実用化されているものも種々ある。
【０００３】
【発明が解決しようとする課題】
ところで、手書き文字の認識において、認識対象である手書き文字が常に、正しい筆順のものとは限らず、文字認識方法が筆順も考慮するようなものである場合には、誤った筆順で書かれた手書き文字の筆順を如何に処理するかが高い認識率を得る上で重要な観点となる。
本願発明者は、従来の手書き文字認識技術を比較検討するなかで、従来にはない新しい観点に基づいた高い認識率を得ることのできる手書き文字認識方法及びその装置を発明するに至り、既に出願を行ったが、この手書き文字認識方法は、手書き文字の筆順が正しいとの前提の下で当初の効果を発揮するものであった。
しかしながら、先にも述べたように、現実には手書き文字の筆順が正しくないことも多く、実用性の高い手書き文字認識方法とするためには、手書き文字の筆順が正しくない場合にあっても認識可能とすることが必要である。
そこで、本願発明者は、鋭意研究の結果、誤った筆順の手書き文字に対しても手書き文字の認識を可能とする手書き文字認識のための筆順処理方法及び手書き文字認識装置を発明するに至ったものである。
【０００４】
本発明は、上記実状に鑑みてなされたもので、誤った筆順の手書き文字を認識可能とするための手書き文字認識のための筆順処理方法及び手書き文字認識装置を提供するものである。
本発明の他の目的は、手書き文字の筆順の誤りを、簡易に判断することのできる手書き文字認識のための筆順処理方法及び手書き文字認識装置を提供することにある。
【０００５】
【課題を解決するための手段】
本発明に係る手書き文字認識のための筆順処理方法は、
複数の標準文字が記憶された辞書ファイルから順に標準文字を選択し、当該標準文字と手書き入力された手書き文字とを、手書き文字の筆順が正しいとの前提下、所定の条件に従って比較して手書き文字を認識処理する手書き文字認識方法による手書き文字の認識を、当該手書き文字の筆順が誤ったものである場合にも可能とする手書き文字認識のための筆順処理方法であって、
入力された手書き文字と、前記辞書ファイルから順に選択された標準文字とを、仮想的に３次元空間において所定の間隔を隔てて対向させ、
前記手書き文字の各ストロークの略中点と、この手書き文字の各ストロークに対応する前記標準文字の各ストロークの略中点とを、仮想的に仮想線によって結び、組み合わせ可能な２本の仮想線と、この２本の仮想線のそれぞれの端部同士を仮想的に結ぶ仮想線によって形成されるすべての四辺形のうちのいずれかにねじれが生ずる場合、
又は、
入力された手書き文字と、辞書ファイルから順に選択された標準文字とを、仮想的に３次元空間において所定の間隔を隔てて対向させ、
前記手書き文字の各々のストロークの始点及び終点と、前記手書き文字の各々のストロークに対応する標準文字の各々のストロークの始点及び終点とを、それぞれ仮想的に仮想線によって結び、
手書き文字と標準文字の対応するストロークの始点及び終点とをそれぞれ結ぶ２本の仮想線と当該手書き文字及び標準文字のストロークとで形成されるすべての四辺形のうちのいずれかにねじれが生ずる場合に、手書き文字の筆順に誤り有りと判定するように構成されてなるものである。
【０００６】
かかる方法は、手書き文字の筆順が正しいとの前提下で手書き文字の認識を行う手書き文字認識方法によっても、誤った筆順の手書き文字の認識を可能とするために、手書き文字の認識処理の前になされるいわゆる前処理と言うべきものであり、本願発明者の独自の視点からなされたものである。
すなわち、この手書き文字認識のための筆順処理方法は、手書き文字と標準文字とを、仮想的に３次元空間で所定の距離を隔てて対向させ、それぞれのストロークの所定の点同士を仮想的な線で結び、この際に生ずる四辺形の内角の和の大きさに、手書き文字の筆順が正しい場合と誤っている場合とでは、一定の違いが生ずるという本願発明者が見出した独自の規則性に基づくもので、手書き文字の筆順が誤っていると判定できる場合には、標準文字側の筆順のデータを書き換えるようにすることで、その後における手書き文字認識処理を可能としたものである。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態について、図１乃至図１４を参照しつつ説明する。
なお、以下に説明する部材、配置等は本発明を限定するものではなく、本発明の趣旨の範囲内で種々改変することができるものである。
最初に、本発明の実施の形態における手書き文字認識装置（以下「本装置」と言う）の構成について、図１を参照しつつ説明する。
本装置は、入力部としての入力タブレット１と、ディジタイザ（図１においては「ＤＩＧ」と表記）２と、データ処理装置（図１においては「ＤＰＵ」と表記）３と、表示駆動回路（図１においては「ＤＩＲ」と表記）４と、表示装置（図１においては「ＤＩＳＰ」と表記）５とを主たる構成要素としてなるものである。
入力タブレット１は、入力用ペン１ａにより手書き文字を入力するためのもので、入力用ペン１ａにより、入力用窓１ｂの表面を所望の文字の形状になぞることにより、その入力用ペン１ａの移動位置情報が、Ｘ，Ｙ座標データとして出力されるようになっている公知・周知の構成を有するものである。このような手書き文字認識に用いられる入力タブレットとしては、例えば、電磁誘導型、静電誘導型等種々の方式のものがあるが、これら何れの方式のものでもよく、特定の方式に限定される必要はない。
【００１８】
ディジタイザ２は、入力タブレット１から出力されたアナログ信号形式のＸ，Ｙ座標データを所定の形式のディジタル信号に変換するもので、変換された信号は、データ処理装置３へ入力され、後述するような手書き文字認識のためのデータ処理に供されるようになっている。
データ処理装置３は、ディジタイザ２を介して入力された手書き文字に関するデータを後述するようにして処理して手書き文字の認識を行い、その結果を表示装置５や図示されない外部の装置へ出力するもので、例えば、いわゆるＣＰＵを主たる構成要素として構成されるものである。
【００１９】
表示装置５は、データ処理装置３において認識された手書き文字を表示するためのもので、例えば、ＣＲＴや液晶表示素子等を用いてなる公知・周知のものである。データ処理装置３における認識結果に対応する信号は、表示駆動回路４に入力され、ここで表示装置５による表示に必要な処理がなされることで、認識された文字が表示装置５にリアルタイムで表示されるようになっている。
【００２０】
次に、上記構成による本装置による手書き文字の認識動作について図２乃至図１４を参照しつつ説明する。
最初に、図２を参照しつつ本装置による手書き文字の認識動作について概括的に説明することとする。本装置による手書き文字認識は、手書き文字の筆順が正しいものであれば、図２に示されたステップ１５０乃至ステップ４５０の各処理は不要となるものであり、本来は、同図のステップ５００の認識処理によって手書き文字の認識が可能となるものである。
図２のステップ１５０乃至ステップ４５０の各処理は、手書き文字が正しい筆順でない場合であっても、ステップ５００における認識処理を可能とするためのいわば前処理であって、特に、筆順に関する処理が行われるようになっている。
【００２１】
以下、順を追って処理の流れを概説すれば、本装置が動作状態となり、入力用ペン１ａを用いて入力タブレット１上で文字が手書きされると、その入力用ペン１ａのペン先の位置情報がディジタイザ２を介してデータ処理装置３へデータ入力されることとなる（図２のステップ１００参照）。
ディジタイザ２からデータ処理装置３へ入力されるデータは、入力タブレット１上での入力用ペン１ａのペン先の時々刻々と変化するストロークに対応する位置情報がＸ・Ｙ座標で表されたもので、ディジタイザ２によるいわゆるサンプリング動作により、所定のサンプリング間隔で取得されたデータである。
【００２２】
さらに、入力用ペン１ａの入力タブレット１へ対する上げ下ろしの情報から、取り込まれたｘ，ｙ座標データが、手書き文字の何画目に対応するものであるかの情報が付加されるようになっている。したがって、例えば、あるサンプリング点におけるデータとしては、（ｘ1，ｙ1，ｎ）と３つのデータが１組として表されたものとなる。ここで、ｘ1は、当該サンプリング点におけるＸ座標値を、ｙ1は、当該サンプリング点におけるＹ座標値を、それぞれ表すものであり、ｎは、当該サンプリング点が、その手書き文字の何画目の部分のものであるか、すなわち何ストローク目のものかを表す数値である。
【００２３】
また、このデータ入力処理においては、各ストロークの切れ目の間についても、データが補間されるようになっている。
すなわち、例えば、図９に示されたような平仮名の「あ」を例にとれば、第１画目の部位と第２画目の部位の間、すなわち、第１ストロークと第２ストロークの間は、手書き入力された文字が続け字でないとすれば、第１ストロークの終点と、第２ストロークの始点との間では、入力用ペン１ａは、入力タブレット１から離されるために、この間のいわゆる実データの入力は無い。
本装置では、この第１ストロークの終点と、第２ストロークの始点とが直線で結ばれていると仮定して、その間でのサンプリング点となる所定の点（例えば、図９においては、正方形と共に「５」が記された点）のｘ，ｙ座標データがいわゆる補間により生成される。なお、この補間データについては、先に説明した通常のデータにおける画数に対応するデータはなく、補間データであることを識別できるようにしてあるだけである。
このようにして、データ処理装置３へ入力されたデータは、一旦所定の記憶領域（図示せず）に記憶され、後に所定のデータ変換が施される（詳細は後述）ようになっている。
【００２４】
上述のようにしてデータ入力がなされた後は、辞書画数合わせが行われる（図２のステップ１５０参照）。
本装置による手書き文字認識においては、データ処理装置３に比較の対象となる標準的な文字例が所定のデータ形式で辞書として予め記憶されており、後述するようにして手書き文字に関する所定のデータとの比較を行うことにより、文字認識が行われるようになっている。手書き文字との比較の対象となるのは、原則として辞書にある全ての標準文字であるが、手書き文字が誤った筆順である可能性もあることを考慮して、入力された手書き文字の画数と異なる画数の標準文字については、この後の筆順処理が行われる前に、手書き文字の画数と同一となるように、標準文字の画数の変更を行うこととしており、その処理がステップ１５０の辞書画数合わせと称している処理である。
例えば、手書き文字の画数が３画であったとすると、辞書にある３画以外の標準文字、例えば、４画の標準文字については、続け書きが可能な各ストロークの間について続け書きがなされたとして、それぞれの場合についてその標準文字のデータの書き換えを行い、擬似的に３画の標準文字とする。この処理は、４画以外の標準文字についても同様に行われる。
【００２５】
そして、辞書の中から所定の順に従って第１の筆順処理の対象となる標準文字の候補が選択され（図２のステップ２００参照）、後述するように第１の筆順処理が行われることとなる（図２のステップ２５０参照）。
第１の筆順処理が行われた後は、辞書の全ての標準文字が第１の筆順処理の候補として選択されたか否かが判定され（図２のステップ３００参照）、未だ全候補が選択されていないと判定された場合（ＮＯの場合）には、先のステップ２００へ戻り、上述した一連の処理が繰り返されることとなる。一方、全候補が選択され、それぞれについて第１の筆順処理がなされたと判定された場合（ＹＥＳの場合）には、第２の筆順処理の対象となる標準文字の候補が、辞書の中から所定の順に従って選択され（図２のステップ３５０参照）、後述するように第２の筆順処理が行われることとなる（図２のステップ４００参照）。
【００２６】
第２の筆順処理が行われた後は、辞書の全ての標準文字が第２の筆順処理の候補として選択されたか否かが判定され（図２のステップ４５０参照）、未だ全候補が選択されていないと判定された場合（ＮＯの場合）には、先のステップ３５０へ戻り、上述した一連の処理が繰り返されることとなる。一方、全候補が選択され、それぞれについて第２の筆順処理がなされたと判定された場合（ＹＥＳの場合）には、後述するような認識処理がなされ（図２のステップ５００参照）、それによって手書き文字が特定されることとなり、一連の処理が終了することとなる。
【００２７】
次に、第１の筆順処理（図２のステップ２５０参照）について図３乃び図４を参照しつつ具体的に説明する。
まず、この第１の筆順処理内容を概括的に言えば、入力タブレット１において入力された手書き文字と、予めデータ処理装置３に辞書として記憶されている標準文字とを図３に示されたように３次元空間で仮想的に対比させることで、手書き文字の筆順が正しいか否かを判定し、誤った筆順で入力されたと判定された場合には、比較の対象となった標準文字の筆順のデータを手書き文字の筆順に合わせて書き換える処理であると言うことができるものである。
【００２８】
以下、図を参照しつつ具体的に説明すれば、まず、入力された手書き文字は、漢字の「三」であるとし、その筆順は、図３において各ストロークの左端近傍にいわゆる丸数字で表された順であると仮定する。すなわち、この場合、手書き文字は、その第１ストロークが、本来は第３ストロークとなるべきものであり、第３ストロークが、本来は第１ストロークとなるべき筆順となっているものである。
一方、先の図２のステップ２００により選択された標準文字が、同じく「三」であるとする。
そして、図３に示されたように互いに直交するＸ，Ｙ，Ｚの３軸で表される３次元空間において、手書き文字は、原点０からＺ軸に沿って所定距離ｄだけ離れたＸＹ平面上の第１の仮想スクリーン１０に、また、標準文字は、原点におけるＸＹ平面上の第２の仮想スクリーン１１に、それぞれ書かれたものと仮定する。
【００２９】
そして、手書き文字の各ストロークの中点と、手書き文字のストロークに対して標準文字の対応する各ストロークの中点とを仮想線（図３において二点鎖線により表記）によって仮想的に結び、これら仮想線の可能な２本づつの組み合わせによって生ずる四辺形の内角の和を求める（図４のステップ２６０参照）。
すなわち、手書き文字の第１ストロークの略中心と、標準文字の第１ストロークの略中心とが、手書き文字の第２ストロークの略中心と、標準文字の第２ストロークの略中心とが、手書き文字の第３ストロークの略中心と、標準文字の第３ストロークの略中心とが、それぞれ仮想的に結ばれる。ここで、説明の都合上、各仮想線に順に符号イ，ロ，ハを付するものとする（図３参照）。
【００３０】
そして、仮想線イ，ロと、手書き文字の第１ストロークの略中心と第２ストロークの略中心とを結ぶ仮想的な線（図３においては図示を省略）と、標準文字の第１ストロークの略中心と第２ストロークの略中心とを結ぶ仮想的な線（図３においては図示を省略）とにより形成される四辺形の内角の和を求める。
また、仮想線ロ，ハと、手書き文字の第２ストロークの略中心と第３ストロークの略中心とを結ぶ仮想的な線（図３においては図示を省略）と、標準文字の第２ストロークの略中心と第３ストロークの略中心とを結ぶ仮想的な線（図３においては図示を省略）とによって形成される四辺形についても同様にして内角の和を求める。
さらに、仮想線ハ，イと、手書き文字の第３ストロークの略中心と第１ストロークの略中心とを結ぶ仮想的な線（図３においては図示を省略）と、標準文字の第３ストロークの略中心と第１ストロークの略中心とを結ぶ仮想的な線（図３においては図示を省略）とによって形成される四辺形についても同様に内角の和を求める。
【００３１】
ここで、手書き文字の筆順が正しい場合の上述のような四辺形の内角の和について考察すると、例えば、図３において、手書き文字及び標準文字の第１及び第２ストロークを例に採れば、相互の文字の第１及び第２のストロークの略中点を結ぶ仮想線（図示せず）は、略平行となる。したがって、その仮想線と、それぞれの文字の第１ストロークの略中点と第２ストロークの略中点とを結ぶ仮想的な線とによって形成される四辺形の内角の和は、略３６０度となる。
ところが、手書き文字に筆順の誤りがある場合には、図３に示されたように仮想線は平行とはならず、例えば、ＹＸ平面側で見れば、交差状態となり（換言すればねじれのある四辺形が形成されることとなる）、各内角の大きさは鋭角となることから、かかる場合の四辺形の内角の和は、３６０度より充分小さなものとなる。そこで、この発明の実施の形態においては、手書き文字に筆順の誤りがあるか否かの判断を、上述のようにして求められた四辺形の内角の和の大きさによることとしている。
【００３２】
すなわち、ステップ２６０により求められた各四辺形の内角の和に、３６０度より充分小さなものがあるか否かを判定し（図４のステップ２６２参照）、３６０度より充分小さなものがない場合には、手書き文字の筆順に誤り無しとして、この第１の筆順処理を終えることとなる。
一方、３６０度より充分小さいものがある場合には、その内、最小のものを選択する（図４のステップ２６４参照）。すなわち、図３に示された例では、仮想線ハ，イの組み合わせにおける内角の和が最小となるため、この組が抽出されることとなる。
そして、この仮想線ハ，イが結ばれる標準文字の第１ストロークと第３ストロークの筆順のデータが相互に振り替えられることとなる（図４のステップ２６６参照）。すなわち、標準文字の第１ストロークは、第３ストロークと、第３ストロークは、第１ストロークと、それぞれ辞書に記憶されているデータが書き換えられることとなる。
【００３３】
こようにして筆順振替が行われた後は、再び先のステップ２６０へ戻り、再度、２本の仮想線の可能な組み合わせについて、その２本の仮想線と第１及び第２の仮想スクリーン１０，１１とよって形成される全ての四辺形について、それぞれの内角の和が先に説明したと同様にして算出される。そして、それら内角の和について、先に説明したと同様にして角度判定が行われる（図４のステップ２６２参照）。図３の例では、手書き文字の筆順の間違いは、１箇所だけであるため、１回の標準文字の筆順振替によって、手書き文字の各ストロークの略中点と、筆順振替がなされた標準文字の各ストロークの略中点とを結ぶ仮想線イ，ロ，ハは、略平行状態となるため、この再度の角度判定においては、３６０度より充分小さくなる場合はないと判定され、一連の処理が終了することとなる。
【００３４】
一方、手書き文字の筆順の誤りが他にもある場合には、これまで説明した処理を同様に繰り返してゆき、他の筆順の誤りのあるストロークに対応する標準文字のストロークのデータの書き換えを上述したと同様に行い、最終的には、標準文字の筆順を手書き文字の筆順に合わせることによって一連の処理を終えることとなる。
なお、上述の説明は、基本的概念を説明したものであるが、データ処理装置３における実際の処理は、各仮想線イ，ロ，ハ及び各ストロークの中点同士を結ぶ仮想線をベクトルとして扱い、いわゆるベクトル演算を行うことによって各内角を求めるようにしてある。
【００３５】
例えば、仮想線イがベクトルＵ１（ｘ1，ｙ1，ｄ）で表され、図３における手書き文字の第１ストロークの中点と第２ストロークの中点とを結ぶ仮想線がベクトルＵ２（ｘ2，ｙ2，ｄ）で表され、これら２つの仮想線で作られる角Θは、ベクトルの内積を定義する式、すなわち、ベクトルＵ１・ベクトルＵ２＝｜Ｕ１｜・｜Ｕ２｜ｃｏｓΘの関係から求められることとなる。なお、ｄは、第１及び第２の仮想スクリーン１０，１１のＺ軸方向の距離であって、筆順が正しい場合と誤っている場合の四辺形の内角の和の違いを明確に判定できるようにする観点からは、このｄの値は比較的小さい方が望ましい。
【００３６】
上述したような第１の筆順処理において、文字によっては、仮想線と第１及び第２の仮想スクリーン１０，１１との間に形成される四辺形の内角の和によって手書き文字の筆順の誤りの有無を判定できない場合があるが、それについては、辞書側に何等処理を施すことなくこの第１の筆順処理を終了することになる。
【００３７】
次に、第２の筆順処理（図３のステップ４００参照）について図５乃び図６を参照しつつ具体的に説明する。
まず、この第２の筆順処理は、概括的に言えば、上述した第１の筆順処理によっては、手書き文字の筆順が正しいか否か判定できない文字があるため、そのような手書き文字の筆順の判定を可能とするための処理である。すなわち、第１の筆順処理と同様に３次元空間を想定し、手書き文字と標準文字とをストローク毎に所定の条件で比較する点は、第１の筆順処理と軌を一にするものであるが、第１の筆順処理においては、双方の文字の各ストロークの中点同士を仮想線で結ぶようにしたのに対し、この第２の筆順処理においては、各ストロークの始点と終点とを仮想線で結び、それによって形成される四辺形の内角の和を判定基準としたものである。
【００３８】
以下、具体的に説明する。
最初に、手書き文字が漢数字の「十」であるとし、その筆順は、図５において各ストロークの近傍にいわゆる丸数字で表された順であると仮定する。また、先の図２のステップ３５０により選択された標準文字が、同じく「十」であるとする。さらに、図５において、手書き文字の各ストロークに併記されている矢印は、各ストロークの始点から終点の方向を示すものであるとする。したがって、例えば、手書き文字の第１ストロークについては、図５において、その上端が始点であり、下端が終点となる。
なお、図５における座標、第１及び第２の仮想スクリーン１０，１１については、図３で説明したものと同一であるのでここでの詳細な説明は省略することとする。
【００３９】
かかる前提の下、まず、手書き文字と標準文字の各ストロークの始点及び終点同士を仮想線により仮想的に結び、それぞれのストロークと仮想線によって形成される四辺形の内角の和が算出されることとなる（図６のステップ４１０参照）。
すなわち、手書き文字と標準文字の第１ストロークの始点及び終点同士がそれぞれ仮想線ニ，ホにより仮想的に結ばれ、また、第２のストロークの始点及び終点同士がそれぞれ仮想線ヘ，トにより仮想的に結ばれ、手書き文字及び標準文字の各第１ストロークと仮想線ニ，ホとにより形成される四辺形の内角の和、手書き文字及び標準文字の各第２ストロークと仮想線ヘ，トとにより形成される四辺形の内角の和が、それぞれ算出されることとなる。
このように、手書き文字と標準文字の対応するストロークの始点同士及び終点同士を仮想線で結ぶようにしたのは、例えば、図５に示された漢数字「十」の場合、先の第１の筆順処理では、最悪の場合、手書き文字の各ストロークの中心と標準文字の中心とが略一致し、四辺形が形成されないことがあり、また、仮に四辺形が形成されたとしても、手書き文字の筆順が誤ったものであるにも関わらず、四辺形の内角の和が３６０度より小さくならないことがあり、筆順の誤りを判定することができないことがあるためで、その点、上述のようにストロークの始点同士及び終点同士を仮想的に結ぶ場合には、そのような不都合を生じないからである。
【００４０】
次に、上述のようにして算出された各四辺形の内角の和の大きさが判定され、その大きさに応じて所定の処理が施されることとなる（図６のステップ４１２参照）。
まず、四辺形の和が略１８０度となるものについては、筆順振替が行われることとなる（図６のステップ４１６参照）。
すなわち、図５に示された例の場合、手書き文字の第１ストロークがＹ軸に平行であるのに対して、標準文字の第１ストロークがＸ軸に平行であることから、手書き文字及び標準文字の各第１ストロークと仮想線ニ，ホにより形成される四辺形の内角の和並びに手書き文字及び標準文字の各第２ストロークと仮想線ヘ，トにより形成される四辺形の内角の和は、共に略１８０度となる。そこで、手書き文字の第１ストロークの筆順と、この第１のストロークと略直交する第２ストロークの筆順とが逆であると判断して、標準文字の第１ストロークを第２ストロークと、第２ストロークを第１ストロークと辞書データの書き換えを行う。
【００４１】
なお、ここでは、理解を容易とするために、この第２の筆順処理の対象となる文字として「十」を用いたが、文字によっては、四辺形の内角の和が略１８０度となる組が、上述の例のように２組だけではなく、それ以上となることもあるが、その場合には次のように処理する。
まず、略１８０度となる組が偶数組である場合には、各ストロークの中点が略近いストローク同士を選択し、その２つづつのストロークについて、上述したと同様にして標準文字の該当するストロークの筆順についての辞書データの書き換えを行う。
また、四辺形の内角の和が略１８０度となるものが奇数組である場合には、標準文字として適切でないものが選択されたとして何等処理を行わずに、この第２の筆順処理を終了する。
【００４２】
また、角度判定（図６のステップ４１２参照）において、四辺形の内角の和が１８０度より充分小さいと判定されたものについては、逆ストローク処理が施されることとなる（図６のステップ４１４参照）。
すなわち、この逆ストローク処理は、手書き文字のストロークの始点と終点とが、本来とは逆である場合に対処するための処理である。例えば、図７において、手書き文字の各ストロークの順番は正しいが、第１ストロークが紙面下側から上側へ向かって書かれた（図７において第１ストロークの矢印参照）ものであると仮定すると、手書き文字と標準文字の第１ストロークの始点同士及び終点同士をそれぞれ仮想線チ，リで結ぶと、同図に示されたように、この仮想線チ，リと手書き文字及び標準文字の第１ストロークとで形成される四辺形はねじれたものとなり、その内角の和は、１８０度より充分小さなものとなる。
【００４３】
このため、図６のステップ４１２の角度判定においては、１８０度より充分小さいと判定され、逆ストローク処理が施されることとなる（図６のステップ４１４参照）。すなわち、標準文字の第１ストロークのそれまでの始点が終点であるとして、また、それまでの終点が始点であるとして、辞書データの書き換えが行われることとなる。
上述のようにして角度判定の結果に応じて所定の処理が施された後は、この第２の筆順処理が一旦終了され、先のメインルーチン（図２参照）へ戻ることとなる。
【００４４】
次に、先の図２におけるステップ５００の認識処理について、図８乃至図１４を参照しつつ具体的に説明することとする。
データ処理装置３においては、先に図２において説明したようにデータ入力により記憶された手書き文字の個々のサンプリング点のｘ，ｙ座標データ及び画数のデータを基に、次述するようなデータ変換が行われることとなる（図８のステップ５１０参照）。
すなわち、ｘ，ｙ座標データを基に、各サンプリング点における当該手書き文字の書き始めの点からの距離ｓが求められると共に、各サンプリング点における接線角度θが求められる。
距離ｓは、認識対象となる手書き文字の最初の書き始めの点、例えば、図９の例で言えば、丸印と共に「１」が記された第１画の左端の点から筆の運びに沿って計測された距離であり、上述したように入力用ペン１ａが入力タブレット１から離れたことにより補間された部分も含む距離である。すなわち、例えば、図９において、サンプリング点として丸印と共に「７」が記された点における距離ｓは、第１画の書き終わりの点と第２画の書き始めの点とが直線で結ばれているとして、この「あ」の書き始めの点からの距離が算出されたものとなる。なお、図９におけるサンプリング間隔は、理解を容易にするため実際と比較して大となっている。
【００４５】
また、サンプリング点における接線角度θは、その点におけるｘ，ｙ座標から接線方程式を算出し、この方程式で表される接線のＸ軸からの角度として算出されるものである。
このデータ変換において、画数に関する情報は、そのまま保存されるため、あるサンプリング点における入力データを（ｘ1，ｙ1，ｎ）とすれば、このデータは上述したようなデータ変換により（ｓ1，θ1，ｎ）となる。
【００４６】
手書き入力された文字に関する入力データが全て上述のように変換された後は、距離ｓに関して正規化が行われることとなる（図８のステップ５１５参照）。すなわち、データ変換により得られた各サンプリング点のｓの値を、当該手書き文字の書き終わりの点におけるｓの値で除することにより正規化が行われることとなる。その結果、この正規化後のある手書き文字に関する距離ｓに対する接線角度θの変化特性をグラフ化すれば、例えば、図１０（ｂ）に示されたようなものとなる。なお、この正規化処理において、個々のサンプル点の距離ｓは、正規化された値となるが、接線角度及び画数に関するデータはそのまま保持されることとなる。
【００４７】
続いて、手書き文字を判定するための比較対象となる標準文字のデータを選択する辞書選択が行われる（図８のステップ５２０参照）。
すなわち、平仮名、カタカナ、漢字の標準的な文字について、予め調べられた適宜な複数のサンプル点における距離ｓ、接線角度θ及び画数のデータがデータ処理装置３の図示されないメモリ（または、外部の例えば、いわゆるハードディスクのような記憶装置）にいわば辞書として記憶されており、基本的にはこの辞書の中の全ての標準文字のデータと先の正規化された手書き文字のデータとの照合が行われるようになっているが、一つづつ照合を行うため、この辞書選択処理においては、適宜な順序で照合を行う対象となる上述したような標準文字が一つ選択されることとなるものである。
【００４８】
照合の対象となる標準文字が選択されると、次に、画数データが同一であるか否か、すなわち、手書き文字の画数と、辞書から適宜選択された標準文字の画数とが同一であるか否かが判定され（図８のステップ５２５参照）、同一であると判定された場合（ＹＥＳの場合）には、後述する画数合わせ処理（図８のステップ５３０参照）が行われることなく位置合わせ処理が行われることとなる（図８のステップ５３５参照）一方、同一画数ではないと判定された場合（ＮＯの場合）には、次述する画数合わせ処理が行われることとなる（図８のステップ５３０参照）。
【００４９】
まず、位置合わせ処理は、手書き文字のデータと、辞書選択により選択された標準文字のデータとの照合を行うに当たり、距離ｓについて、標準文字と手書き文字の各々の画数毎の位置を合わせる処理である。
例えば、選択された標準文字の距離ｓに対する接線角度θの変化特性をグラフ化したものが図１０（ａ）に示されたようなものであると仮定する。そして、同図において、距離ｓ1の位置は、この標準文字の第１画目の終点位置であり、距離ｓ2の位置は、第２画目の始点位置であり、距離ｓ3の位置は、第２画目の終点位置であり、距離ｓ4の位置は、第３画目の始点位置であり、距離１の位置は、第３画目の終点位置であると、それぞれ仮定する。なお、距離ｓ1,ｓ2の間は、第１画目の終点と第２画目の始点とが仮想的な直線で結ばれたと仮定した場合の距離ｓに対する接線角度θの変化が表された区間であり（二点鎖線で表示）、距離ｓ3,ｓ4の間は、第２画目の終点と第３画目の始点とが仮想的な直線で結ばれたと仮定した場合の距離ｓに対する接線角度θの変化が表された区間である（二点鎖線で表示）。
【００５０】
一方、手書き文字の正規化後における距離ｓと接線角度θとの変化特性を示すグラフは、図１０（ｂ）に示されたようなものであると仮定する。
ここで、距離ｓaの位置は、手書き文字の第１画目の終点位置であり、距離ｓbの位置は、第２画目の始点位置であり、距離ｓcの位置は、第２画目の終点位置であり、距離ｓdの位置は、第３画目の始点位置であり、距離１の位置は、第３画目の終点位置である。なお、距離ｓa,ｓbの間は、第１画目の終点と第２画目の始点とを仮想的な直線でつないだと仮定した場合の距離ｓに対する接線角度θの変化が表された区間であり（二点鎖線で表示）、距離ｓc,ｓdの間は、第２画目の終点と第３画目の始点とを仮想的な直線でつないだと仮定した場合の距離ｓに対する接線角度θの変化が表された区間である（二点鎖線で表示）。
【００５１】
手書き文字の距離ｓに対する接線角度θのデータと、標準文字の距離ｓに対する接線角度θのデータとの照合を行うためには、手書き文字の各画数の位置と、標準文字の各画数の位置とが同一である必要があり、このため、手書き文字のデータについて、図１０（ｂ）に示された例で言えば、まず、文字の書き始めの点（距離零の点）と距離ｓa（ｓa＞ｓ1）までのデータについては、文字の書き始めの点と距離ｓ1までの間のデータになるように距離座標Ｓの変換を行い、座標を圧縮する。次に、距離ｓa乃至ｓbの間のデータについては、距離ｓa乃至ｓbが距離ｓ1乃至ｓ2より大であるため、距離ｓ1乃至ｓ2の間のデータになるように上述したと同様に座標圧縮を行う。次いで、距離ｓb乃至ｓcの間のデータについては、距離ｓb乃至ｓcが距離ｓ2乃至ｓ3より小であるため、距離ｓ2乃至ｓ3の間のデータになるように座標伸張を行う。また、距離ｓc乃至ｓdの間のデータについては、距離ｓc乃至ｓdが距離ｓ3乃至ｓ4より大であるため、距離ｓ3乃至ｓ4の間のデータになるように座標圧縮を行う。そして、距離ｓd乃至１までのデータについては、距離ｓd乃至１が距離ｓ4乃至１より小であるため、距離ｓ4乃至１の間のデータになるように座標伸張を行うこととなる。なお、座標圧縮や座標伸張自体は、特に、本発明独自のものではなく、一般的な数学の一つであるので、その詳細についてのここでの説明は省略することとする。
このようにして位置合わせがなされた後の手書き文字の距離ｓに対する接線角度θの変化特性を表すグラフは、図１０（ｃ）に示されたように、手書き文字の第１乃至第３画までの各始点及び終点の位置が、標準文字のそれと一致したものとなる。
【００５２】
一方、画数合わせは、辞書選択により選択された標準文字の画数を手書き文字の画数に変更する処理であるということができるものである。
すなわち、この処理は、手書き文字がその一部にいわゆる続け書きの部分があるため、本来の正しい画数ではないと仮定し、その前提の下で、照合の対象となる標準文字の画数を手書き文字の画数に合わせ込み、その上で、２つのデータの照合を行うようにするためのものである。
以下、具体的に説明すれば、まず、前提として、手書き文字が３画の文字として入力されたものであって、距離ｓに対する接線角度θの変化特性を表すグラフが仮に、先に図１０（ｂ）に示されたようなものであり、また、辞書選択により選択された標準文字が仮に４画のもので、その距離ｓに対する接線角度θの変化特性を表すグラフが仮に図１１に示されたようなものであるとする。
【００５３】
かかる前提の下、この標準文字について、続け書きが可能な箇所について、それぞれ続け書きが行われたとして、その部分についての画数のデータの書き換えが行われる。例えば、図１１において、距離ｓ1の位置は、第１画目の終点であり、距離ｓ2の位置は、第２画目の始点であり、距離ｓ3の位置は、第２画目の終点であるが、まず、第１画目と第２画目が続け書きされたとして、図１１で第２画目とされていた距離ｓ2乃至ｓ3の間のデータが、第１画目であるとされる。すなわち、この処理前の距離ｓ2乃至ｓ3の間のデータが、例えば、（ｓn，θn，２）と表される（括弧内の「２」は第２画目であることを表す画数値である）とすると、処理後は、（ｓn，θn，１）と書き換えられることとなる。
その結果、距離ｓに対する接線角度θの変化特性を表すグラフは、先の図１１において、第１画目の終点と第２画目の始点の間であるとして二点鎖線で表された距離ｓ1乃至ｓ2の部分も文字の一部であるとされ、図１２に示されたように、実線で表されたものとなる。
【００５４】
さらに、図１１に示された特性曲線で表される標準文字については、第２画目の終点と、第３画目の始点とが続け書きされる場合が考えられる。
この場合も、上述と同様にして画数に関するデータの書き換えが行われ、距離ｓに対する接線角度θの変化特性を表すグラフは、図１３に示されたようなものとなる。すなわち、この場合、先の図１１において、二点鎖線で表された距離ｓ3乃至ｓ4部分が文字の一部であるとして、この部分が実線で表された特性曲線となる。
またさらに、図１１に示された特性曲線で表される標準文字については、第３画目の終点と第４画目の始点とが続け書きとされる場合が考えられ、先に説明したと同様にして該当する部分のデータの書き換えが行われ、その結果、図１４に示されたような距離ｓに対する接線角度θの変化特性が得られることとなる。すなわち、この場合、先の図１１において、二点鎖線で表された距離ｓ4乃至ｓ6の部分が文字の一部であるとして、この部分が実線で表された特性曲線が得られることとなる。
【００５５】
このようにして、続け書きがされる可能性のある箇所について、それぞれ続け書きが行われたと仮定して必要なデータの書き換えによる画数合わせが行われ、その各々の場合についてデータがデータ処理装置３の図示されないメモリに一時記憶されることとなる。なお、上述の説明においては、標準文字の画数が手書き文字の画数よりも一つ多い場合を例に採り説明したが、標準文字の画数がそれ以上多い場合にあっても基本的には上述したと同様に、手書き文字の画数と同一となるように、２つ以上の箇所について続け書きされたとして先に述べたようなデータ処理を施せばよい。
次に、上述のようにして画数合わせが行われたデータと、入力された手書き文字のデータとの比較を行うために、先に説明したようにして画数合わせがなされたそれぞれの標準文字のデータを基準として、先に説明したようにして手書き文字データの位置合わせが行われることとなる（図８のステップ５３５参照）。
そして、位置合わせが行われた手書き文字のデータと標準文字のデータとのデータ距離演算が行われることとなる（図８のステップ５４０参照）。
すなわち、このデータ距離演算は、標準文字の接線角度と手書き文字の接線角度との差を求めることであり、具体的には下記する演算式により算出されるようになっている。
【００５６】
データ距離ΔΘ＝∫Ａ(s)｛θ1(s)−θ2(s)｝ｄs
【００５７】
この積分の積分区間は、０乃至１の間である。また、式中、Ａ(s)は、重みづけ係数であり、例えば、実ストロークのデータに対しては「１」、補間ストロークのデータに対しては「０．８」と、それぞれ設定されるものである。さらに、θ1(s)は、手書き文字における距離ｓに対する接線角度であり、θ2(s)は、標準文字における距離ｓに対する接線角度である。
このようにして求められたデータ距離ΔΘは、データ処理装置３の図示されないメモリに一時記憶されることとなる。
なお、このデータ距離演算は、先のように、画数合わせにおいて、いわゆる複数のパターンが生じたものについては、勿論それぞれについて演算が行われ、それぞれ記憶されることとなる。
【００５８】
続いて、手書き文字との比較の対象となる複数の標準文字についてのデータが記憶された辞書の全てについて、上述のような処理により、データ距離ΔΘが求められたか否かが判定され（図８のステップ５４５参照）、未だ終了していなと判定された場合（ＮＯの場合）には、先の辞書選択処理（図８のステップ５２０参照）へ戻り、上述した一連の処理が繰り返されることとなる。
一方、辞書の全てについての処理が終了したと判定された場合（ＹＥＳの場合）には、上述したように一時的に記憶された複数のデータ距離ΔΘの中から、その数値が最も小さい場合の標準文字が入力された手書き文字に対応する候補であるとして、データ処理装置３から所定のデータ形式で外部へ出力されると同時に、表示駆動回路４へデータが出力され、その結果、表示装置５に当該標準文字が表示されることとなる（図８のステップ５５０参照）。
【００５９】
なお、上述の例においては、算出されたデータ距離ΔΘの内、最小のものを認識文字としての候補としたが、例えば、このデータ距離ΔΘの内、最小のものであって、所定値以下のものを認識文字の候補として、データ距離ΔΘが所定値以上である場合には、例えそれが算出された複数のデータ距離ΔΘの内、最小のものであっても、誤認識の可能性の高い場合には、認識文字無しとするようにしてもよい。
【００６０】
上述の例においては、図２に示された処理を行うためのプログラムが、データ処理装置３の図示されないメモリに記憶されていることを前提として説明したが、必ずしもこのような構成である必要はなく、次のような構成であってもよいものである。
例えば、データ処理装置３とは別体に設けられたいわゆるハードディスク（図示せず）に必要なプログラムを記憶させておき、このハードディスクからプログラムを読み出して実行するようにしてもよい。また、いわゆるフロピィーディスク（図示せず）に必要なプログラムを記憶させる一方、データ処理装置３にいわゆるフロピィードライブ（図示せず）を接続し、このフロピィードライブを介してフロピィーディスクのプログラムを読み出して実行するようにしてもよい。
さらには、この種のプログラムの記憶技術として公知・周知の他の技術、例えば、磁気テープを用いる方法、磁気ディスクを用いる方法、ＣＤ−ＲＯＭを用いる方法等によってプログラムの実行が行われるようにしてもよく、このようなことは、当該技術分野の技術者にとってすれば、通常の技術活動の範疇であることは言うに及ばないことである。
【００６１】
なお、上述した発明の実施の形態において、内角和算出手段は、データ処理装置３による図４に示されたステップ２６０の実行により、角度判定手段は、データ処理装置３による図４に示されたステップ２６２の実行により、最小角度抽出手段は、データ処理装置３による図４に示されたステップ２６４の実行により、筆順データ入れ替え手段は、データ処理装置３による図４に示されたステップ２６６の実行により、動作制御手段は、データ処理装置３により図４に示されたステップ２６６の実行の後にステップ２６０へ戻り一連の処理が繰り返されるように実行されることで、それぞれ実現されるようになっている。
また、交差文字内角和算出手段は、データ処理装置３による図６に示されたステップ４１０の実行により、交差筆順データ入替手段は、データ処理装置３による図６に示されたステップ４１２，４１６の実行により、逆ストロークデータ入替手段は、データ処理装置３による図６に示されたステップ４１２，４１４の実行により、それぞれ実現されるようになっている。
【００６２】
さらに、手書き文字入力手段は、入力タブレット１及びディジタイザ２により実現されている。
また、データ変換手段は、データ処理装置３による図８に示されたステップ５１０の実行により、記憶手段は、データ処理装置３により、画数判定手段は、データ処理装置３による図８に示されたステップ５２５の実行により、画数整合手段は、データ処理装置３による図８に示されたステップ５３０の実行により、位置合わせ手段は、データ処理装置３による図８に示されたステップ５３５の実行により、積算演算手段は、データ処理装置３による図８に示されたステップ５４０の実行により、判定抽出手段は、データ処理装置３による図８に示されたステップ５４５，５５０の実行により、それぞれ実現されるようになっている。
【００６３】
【発明の効果】
以上、述べたように、本発明によれば、手書き文字の筆順の誤りを独自の方法に基づいて判断し、その筆順の誤りを手書き文字と比較される標準文字側へフィードバックするような構成とすることにより、手書き文字の筆順の誤りを簡易に判断することができ、その後、手書き文字の筆順が正しいとの前提の下で、手書き文字の認識が可能な文字認識処理を行うことができ、そのような文字認識処理をより実用性の高いものとすることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態における手書き文字認識装置の構成例を示す構成図である。
【図２】図１に示された手書き文字認識装置によって実行される手書き文字認識の処理手順を示すメインフローチャートである。
【図３】第１の筆順処理における手書き文字と標準文字の対比を概念的に示す概念図である。
【図４】第１の筆順処理の手順を示すサブルーチンフローチャートである。
【図５】第２の筆順処理における手書き文字と標準文字の対比を概念的に示す概念図であって、特に、手書き文字のストロークの順序が正しくない場合の概念図である。
【図６】第２の筆順処理の手順を示すサブルーチンフローチャートである。
【図７】第２の筆順処理における手書き文字と標準文字の対比を概念的に示す概念図であって、特に、手書き文字のストロークの始点と終点とが本来とは逆の場合の概念図である。
【図８】認識処理の手順を示すサブルーチンフローチャートである。
【図９】手書き文字「あ」におけるサンプリング点を概念的に説明するための模式図である。
【図１０】仮想的なある文字の標準文字についての距離ｓに対する接線角度θの変化特性と、手書き文字についての距離ｓに対する接線角度θの変化特性とを対比的に表す特性線図であって、図１０（ａ）は、ある標準文字についての距離ｓに対する接線角度θの変化特性を示す正規化された特性線図であり、図１０（ｂ）はある手書き文字についての距離ｓに対する接線角度θの変化特性を示す位置合わせを行う前の特性線図であり、図１０（ｃ）は、ある手書き文字についての距離ｓに対する接線角度θの変化特性を示す位置合わせを行った後の特性線図である。
【図１１】仮想的な４画の標準文字についての距離ｓに対する接線角度θの変化特性を表す特性線図である。
【図１２】図１１に示された特性曲線を有する標準文字について、第１画目の終点と第２画目の始点とが続け書きされたと仮定した場合の距離ｓに対する接線角度θの変化特性を表す特性線図である。
【図１３】図１１に示された特性曲線を有する標準文字について、第２画目の終点と第３画目の始点とが続け書きされたと仮定した場合の距離ｓに対する接線角度θの変化特性を表す特性線図である。
【図１４】図１１に示された特性曲線を有する標準文字について、第３画目の終点と第４画目の始点とが続け書きされたと仮定した場合の距離ｓに対する接線角度θの変化特性を表す特性線図である。
【符号の説明】
１…入力タブレット
１ａ…入力用ペン
１ｂ…入力用窓
２…ディジタイザ
３…データ処理装置
４…表示駆動回路
５…表示装置
【図１】
0003977477.tif 000002
【図２】
0003977477.tif 000003
【図３】
0003977477.tif 000004
【図４】
0003977477.tif 000005
【図５】
0003977477.tif 000006
【図６】
0003977477.tif 000007
【図７】
0003977477.tif 000008
【図８】
0003977477.tif 000009
【図９】
0003977477.tif 000010
【図１０】
0003977477.tif 000011
【図１１】
0003977477.tif 000012
【図１２】
0003977477.tif 000013
【図１３】
0003977477.tif 000014
【図１４】
0003977477.tif 000015