JP3817281B2 - 情報処理装置及び方法 - Google Patents
情報処理装置及び方法 Download PDFInfo
- Publication number
- JP3817281B2 JP3817281B2 JP19523395A JP19523395A JP3817281B2 JP 3817281 B2 JP3817281 B2 JP 3817281B2 JP 19523395 A JP19523395 A JP 19523395A JP 19523395 A JP19523395 A JP 19523395A JP 3817281 B2 JP3817281 B2 JP 3817281B2
- Authority
- JP
- Japan
- Prior art keywords
- point
- stroke
- vector
- feature
- comparison
- 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 - Fee Related
Links
Images
Landscapes
- Character Discrimination (AREA)
Description
【発明の属する技術分野】
本発明は情報処理装置及び方法、詳しくは、入力された手書きストロークから、当該ストロークを構成する点データ群の中の特徴点を抽出し、当該特徴点に基づく情報を下位の処理に渡す情報処理装置及び方法に関するものである。
【0002】
【従来の技術】
従来、入力された筆跡を文字認識して、文字コードに変換する文字認識方法には数々の手法が考案されている。その手法の中にベクトルマッチング方式と呼ばれるものがある。この手法は以下のとおりである。
【0003】
まず、入力された筆跡に対し、ペンダウン情報とペンアップ情報によって区切られた座標点列を1ストロークと呼び、そのストロークをベクトル化してストロークベクトルとして表現する。次に、複数のストロークベクトルの個々について、予め認識辞書に納められている標準ストロークベクトルと比較し、相違度を計算する。さらに、認識辞書には文字を構成するいくつかの標準ベクトルが定義されており、この定義された標準ストロークベクトル集合を参照して、入力されたストロークベクトル集合との一致度を計算して最も類似していると判断される文字を認識結果として出力するというものである。
【0004】
ここで、ストロークをベクトル化する方法は、一般的に、入力された座標点を始点から終点までつないでストローク化した後、ストローク線分全体をn分割することによりn本のベクトルを作成している。このベクトル列がストローク特徴として抽出されている。n分割の方法はストロークの全長をnで割り、ストロークを等距離間隔で分割するものであった。
【0005】
【発明が解決しようとする課題】
しかしながら、上記従来例のような、オンライン手書き文字認識方法ではストロークの全長をn等分した距離を元に分割点を決定していたが、類似文字、例えば「る」と「ろ」、「ぬ」と「め」のようにストロークの最終点近辺にその文字の特徴がある場合、単なる等距離間隔の分割では精度の良い分割ができず、その分割点によるベクトル列も類似文字間で識別が困難であるという問題点があった。
【0006】
【課題を解決するための手段】
本発明は上記問題点に鑑みなされたものであり、入力された手書きストローク情報から、当該ストロークの精度良い特徴情報を抽出して下位の処理に渡す情報処理装置及び方法を提供しようとするものである。
【0007】
この課題を解決するため、例えば本発明の情報処理装置は以下に示す構成を備える。すなわち、
所定の入力装置より入力された手書きストロークから、当該ストロークを構成する点データ群P(0), …, P(k)から特徴点を抽出し、当該特徴点に基づく情報を下位の処理に渡す情報処理装置であって、
前記入力装置より入力された手書きストローク情報である点データP(0)、…、P(k)を記憶するストローク記憶手段と、
該ストローク記憶手段に記憶された点データにおいて、
前記点データの起点P(i)(初期値i=0)、
参照点P(i+1+j)(初期値j=1)とし、
起点P(i)とP(i+1)で定められるベクトルを基準ベクトル、P(i+1)と前記参照点P(i+1+j)で定められるベクトルを参照ベクトルと定義したとき、
前記基準ベクトルと参照ベクトルとの成す角度θと所定閾値とを比較する比較手段と、
該比較手段の比較結果、前記角度θが所定閾値以下である場合には、点P(i+j)を削除対象に設定すると共に、前記変数jを“1”だけ増加させて前記比較手段を再実行し、
前記比較手段の比較結果、前記角度θが所定閾値を越えた場合、点P(i+j)を特徴点として判断し、その際の変数jに基づいて前記変数iを更新すると共に、前記変数jを“1”で再初期化し、前記比較手段を再実行する第1の制御手段と、
前記第1の制御手段で得られた特徴点の個数が、注目ストロークに関してn個の連続したベクトル列を特定し得る数になったか否かを判別する判別手段と、
該判別手段によって、n個の連続したベクトル列を特定し得る数より少ないと判別した場合は、前記所定閾値を減じた後、前記第1の制御手段による処理を再度実行する第2の制御手段とを備える。
【0009】
また、この場合には、更に、前記判別手段によって、連続したベクトルの数が前記n個を越えたと判別された場合は、前記第1の制御手段で得られた特徴点のうち、前記角度θの大きいものから上位n+1個の特徴点データを抽出する抽出手段を備えることが望ましい。これによって常にn本のベクトルデータを抽出できるようになる。
【0010】
また、下位処理は、文字認識処理であることが望ましい。これによって、文字認識率を向上させることが可能になる。
【0011】
【発明の実施の形態】
以下、添付図面にしたがって本発明にかかる実施形態の例を詳細に説明する。
【0012】
<第1の実施形態>
図1は本第1の実施形態におけるオンライン手書き文字認識装置の機能構成を示すブロック図である。図示において、101は座標入力ペンを操作することで座標を入力するダブレット、ディジタイザ等の座標入力装置であり、本実施形態では、入力された文字データを獲得する文字入力部である。102はストローク格納部で、101の文字入力部にて得られた座標点を用いて、ペンダウン情報とペンアップ情報の間の座標点集合を一本のストロークとして格納する。103は特徴抽出部であって、ストローク格納部102中のストロークデータの中から特徴点となるデータを抽出する。また、104は特徴点消去部であり、特徴点抽出部104で得られた特徴点データからn個のベクトルを構成するためのn+1個の点データを生成するため、不要なデータを消去する特徴点消去部である。105はベクトル化部であって、特徴点消去部105から得られたn+1個の点データに基づきn個のベクトルデータを生成する。以上の如く、文字入力部101でもって1文字分の手書き文字を入力した場合、ペンダウンからペンアップまでのストローク情報が順次取り出され、ベクトル化部105には、各ストロークに対するn本のベクトルが格納される。
【0013】
106は認識部であり、ベクトル化部105から各ストロークに対するベクトルデータを入力し、認識辞書部108に納められている基本ベクトルとの間で比較演算処理して文字認識する。107は、認識部106から出力された認識結果(文字コード)を出力する結果出力部である。尚、文字認識処理では、通常、最も確からしい候補を第1候補とし、次いで第2候補、第3候補、…として出力する。本実施形態でもこれに準拠する。
【0014】
上記構成における特徴抽出部103の処理内容を図2、図3のフローチャートを用いて説明する。
【0015】
図2は記入されたストローク(ペンダウンとペンアップの間の筆跡)の図であり、構成する座標点を図示している。座標点P0は始点、座標点Pkは終点となる。従って座標点の個数は全部でk+1個になる。
【0016】
図3はストロークの特徴点を抽出する処理内容を示すフローチャートである。尚、以下の説明で、点Pnから点P(n+1)に向かうベクトルをV(PnP(n+1))として表わす。
【0017】
まず、ステップS301にて開始点カウンタiを0にセットする。ステップS302にて対象点カウンタjを1にセットする。そして、ステップS303では、変数i,jの合計値がk以下であるか否か、すなわち、本処理が終了したか否かを判断する。否の場合には、以下のステップS304に進む。
【0018】
ステップS304では、ベクトルV(PiP(i+1))とベクトルV(P(i+1)P(i+1+j))の成す角度θが予め設定された閾値角度θt以下であるか否かを判断する。θ≦θtであれば、ステップS305に進み、座標点P(i+j)を削除対象点としてマーキングし、ステップS306では対象点カウンタjをインクリメントして次の座標点の削除チェックを行うためにステップS303に戻る。
【0019】
以下、この処理を繰り返していくが、この期間中、2つのベクトルのなす角度θとθtの関係が、θ>θt、という関係になっていると判断した場合には、ステップS307に進み、変数iを“i+1+j”で更新し、ステップS302に戻る。
【0020】
さて、ステップS305にて全ての座標点のチェックを終了すると、本処理は完了する。この処理終了後、マーキングされた座標点は、角度変化の少ない連続している座標点であるので、この点群を削除して残されたものは角度の大きい部分の座標点となる。尚、始点P0と終点Pkは共に特徴点とみなすこととする。また、尚、上記処理における閾値角度θtはパラメータ化されており、可変である。理由は後述する。
【0021】
上記処理内容を図4に従ってより詳しく説明する。今、点Piを基点とし、j=1の場合を想定する。この場合、2つのベクトルは、
V(PiP(i+1))、V(P(i+1)P(i+2))
となる。
【0022】
これら2つのベクトルのなす角度θ1が閾値角度θt以下であるとした場合、2つ目のベクトルV(P(i+1)P(i+2))の終点P(i+2)の1つ手前の点P(i+1)は削除対象として設定される。この結果、変数jが1つインクリメントされるので(j=2となる)、次に、
V(PiP(i+1))、V(P(i+1)P(i+3))
のなす角度θ2と閾値角度θtと比較されることになる。ここでθ2も閾値角度θt以下である場合には、点P(i+2)が削除対象として設定され、変数jがインクリメントされる(j=3)。この結果、次の2つのベクトルのなし角度θ3と閾値角度θtとが比較される。すなわち、
V(PiP(i+1))、V(P(i+1)P(i+4))
このθ3が閾値角度θtより大きい場合には、点P(i+3)は特徴点(特異点)として設定される。
【0023】
以上の結果、θ1,θ2が共に閾値角度θt以下であって、θ3が閾値角度θtより大きい場合、点P(i+1),P(i+2)が削除対象として設定されることになる。すなわち、ストロークを構成している各座標点の並びの曲がり具合が小さい場合には、それぞれの点が削除対象として設定されることになる。
【0024】
尚、ステップS307では、変数iを“i+1+j”で更新し、ステップS302で変数jを“1”で初期化するので、点Piは図4における点“P(i+4)”の位置に移動し、そこから上述した処理が繰り返し実行されることになる。
【0025】
さて、ストロークをn分割するためには(1ストロークからn個のベクトルを抽出するためには)、特徴点の個数はn+1個必要になる。ところが、上記の処理を行った場合には、閾値角度θtや注目しているストロークに依存して得られる個数が不定であり、一律にn+1の点を得ることができない。そこで、本実施形態では、上記図3の処理を行う場合の閾値θtを可変にし、それでもって適当な数の特徴点を抽出するようにした。この処理を図5のフローチャートに従って説明する。
【0026】
先ず、ステップS501では特徴抽出処理で用いた閾値角度θtに初期値として180°にセットする。ステップS502では、設定されている閾値角度θtを用いて図3で説明した特徴抽出処理を行う。
【0027】
この後、処理はステップS503に進んで、ステップS502で得られた特徴点の個数をチェックし、n+1個以上の特徴点数になったか否かを判断する。ここで、抽出された特徴点の個数がn+1に満たない場合には、ステップS504に進み、閾値角度θtを所定角度(例えば1°)減じ、ステップS502に戻る。
【0028】
以下、閾値角度θtを順次減じ、特徴点抽出部103による処理を行うと、得られる特徴点の数は増えていき、ついにはn+1個以上の特徴点が得られることになる。このとき、処理はステップS503からステップS505に進み、得られた特徴点データを特徴点消去部104に出力し、本処理を終える。
【0029】
次に、特徴点消去部145の処理動作を図6のフローチャートを用いて説明する。
【0030】
先に説明した様に、特徴点抽出部103からは、少なくともn+1個の特徴点が出力される(n+1個以上のの特徴点が得られる)。しかし、注目ストロークからn個のベクトルを抽出する場合、特徴点がn+1個より多い場合には、その分の特徴点を除去することが望まれる。そこで、特徴点消去部104では、図6に示すフローチャートに従って処理することで、余分な特徴点を消去した。
【0031】
先ず、ステップS601では特徴点の個数チェックを行い、特徴点の個数がn+1個となった時点で終了する。特徴点の個数がn+1個より多い場合は、ステップS602にて、隣接する特徴点の角度変化が最も少ない点は特徴点から外す処理を行う。この処理は特徴点抽出処理で用いている手法を利用しても良い。
【0032】
以上の結果、特徴点消去部104からは、ストロークデータで表される軌跡の曲率が大きい付近の点は最終的に残り、曲率が小さい部分の点は消去され、最終的にn個のベクトルデータを生成するためのデータのみが生成される。
【0033】
次に、ベクトル化部105の処理動作を図7のフローチャートに従って説明する。
【0034】
ステップS701にてカウンタiを“0”で初期化する。次いで、ステップS702ではn+1個の特徴点すべてに対してベクトル処理したかどうかのチェックをしている。このチェック結果が否の場合には、以下のステップS703〜705の処理を行う。
【0035】
先ず、ステップS703では隣接する特徴点2点を通る直線の方向ベクトルを求める。方向ベクトルは図8に示す8方向ベクトルとする。求められた方向ベクトルはステップS704でベクトル値として保存される。ステップS705にて次の特徴点に移る処理を行ない、ステップS02に戻る。
【0036】
こうして、全ての特徴点に対してベクトル値が求められると、ステップS706にてn本のベクトル値が生成される。
【0037】
文字認識部106は1つの文字入力に対する全ストロークの入力が完了した段階で、ベクトル化部105から送られてきた全ベクトルデータに基づき文字認識処理を行なう。すなわち、入力した各ストロークのベクトルデータと辞書部108内の標準的なベクトルデータとを比較し、最も類似するとされる文字から順番に第1候補、第2候補、…とし、最終結果として結果出力部107に送る。
【0038】
尚、説明が前後するが、入力されたストロークデータを構成している時系列な座標データがほぼ直線上に並んでいる場合(例えば直線もしくはそれに近い線を手書き入力した場合)、両端点は特徴点として処理されるものの、中間に位置する点の中では特徴点を特定することが難しい。しかし、ベクトル化部105から出力される注目ストロークに対するベクトルデータ(図8参照)としては、同じベクトルコードが連続するものとなるわけであるから、どの点を特徴点としても結果は同じである。従って、図5の処理では、1つの閾値角度θt(ほとんど0°に近い値)で一挙に多くの特徴点が抽出され、図6の処理に渡されるがステップS602では同じ角度のものが複数あった場合には、単純にいずれか1つを特徴点として決定すれば対処できるので、何等問題はない。
【0039】
また、上記実施形態において、結果出力部107は、文字認識結果として、下位の処理部に渡す処理を行う。下位の処理としては、例えば文書処理等がある。要は、文字認識処理して得られた結果に基づいて処理するものであれば如何なるものであっても良い。
【0040】
以上説明した様に、曲がりの程度が大きい、或いは曲がりの程度が大きい部分を有するストロークのデータ(座標データ群)については、その曲率が大きい付近の座標データを積極的に有効な点として処理するので、例えば平かなの「る」と入力した場合には最後の部分はもとより、ベクトルの向きが大きい部分に関しては確実に保持されるので、手書き文字の精度良い特徴ベクトルを常に得ることができ、結果として認識率を上げることが可能になる。
【0041】
なお、本実施形態では、特徴抽出処理にベクトル角度を用いて特徴点を抽出したが、角度に限らず、ある一定距離内の座標点を消去して座標点を間引く処理を使用、併用してもかまわない。
【0042】
<第2の実施の形態>
上述した実施形態(第1の実施形態)ではストロークの特徴を抽出する抽出処理を用いてn分割する手法を説明したが、本第2の実施形態ではストローク内のある範囲内における座標点密度を計算し、この密度に応じて分割数を変化させてn分割する手法を説明する。
【0043】
図9は本第2の実施形態におけるオンライン手書き文字認識方法の機能構成を示すブロック図である。図9において901、902、906、907、908はそれぞれ、図1の101、102、106、107、108とほぼ同等の処理をするので、その動作の説明は省略する。
【0044】
異なるのは、点密度計算部903を新たに設けた点である。以下、この点密度計算部903の処理内容を図10のフローチャートに従って説明する。
【0045】
まず、ステップS1001では、ストロークの全長を計算する。ストロークの全長算出はストロークを構成する隣接座標二点間のユークリッド距離を求め、始点座標から開始して終点座標まで加算していくことで得られる。そっして、求まった全長をn等分し、その値をlとする。
【0046】
ステップS1002でストローク上に長さlを持つ座標点をマッピングし、この座標点をn分割点Pi(0≦i≦n+1)と呼ぶことにする。ここで言う、「ストローク上」とは座標点を結んでできる直線のことを指している(図11参照)。
【0047】
次にステップS1003で第1のn分割点Piと第2のn分割点Pi+1(0≦i≦n+1)の区間をRj(0<=j<=n)とし、区間Rj内の座標点数をカウントする。カウントされた座標点数が点密度となる。いま、あるストロークの場合の4分割(nが4)の分割の様子と、区間別の点密度を図12、図13で示す。
【0048】
次に分割点決定部904の動作を図14を用いて説明する。
【0049】
先ず、ステップS1401にて、点密度計算部で得られた各区間から点密度(全体の点数に対する区間の点数)が最大のものを探し出す。ステップS1402で、その区間の点密度が予め定められたしきい値より大きければステップS1403に進み、閾値以下の場合はその処理を終える。
【0050】
さて、処理がステップS1403に進んだ場合には、点密度が閾値以下になるように再分割する。例えば、その区間の長さを求めて2等分し、新たな区間を作成して区間の点密度をそれぞれ算出する。点密度の算出方法は点密度算出部と同様の処理とする。この処理で分割数が増えたので(n+1個の区間が発生したので)、ステップS1404では点密度が最小の区間を探し出し、ステップS1405でそれに隣接する区間(両側にある場合には、点密度の低い区間)と合併する。また、合併した両区間を元々分割していたn分割点は削除する。これによって、再び注目ストロークはn分割状態に戻す。また、合併後の点密度は両区間の点密度平均を算出して求める。以下、このような動作を繰り返し、処理が終了すると、新しく生成されたn分割点が求まる。そして、分割点の両端にある点座標をベクトルとして有効な座標データとして出力する。この結果、人間が無意識にストロークの方向が変化する部分で筆記速度が遅くなり、その部分で多くの座標点が検出されることに対処し、精度良く分割することが可能になる。これ以降、求まったn分割点を用いてベクトル化し、第1の実施形態と同様の処理を行う。
【0051】
<第3の実施の形態>
上記第1、第2の実施形態では、図1或いは図9に示す構成を有する装置で実現させたが、本発明はこれに限るものではなく、プログラムでもって実現させても良い。
【0052】
図15に第3の実施形態における装置のブロック構成を示す。図示において、1は装置全体の制御を司るCPU、2はブートプログラム等を記憶しているROM、3はCPU1が処理するプログラムやデータを記憶するRAMである。4は座標入力板であって、5は座標入力板4上で操作者による不図示の入力ペンでなぞった座標を検出する座標検出部である。尚、入力ペンには、座標入力板4に対して押下したか否かを検出するためのスイッチが設けられており、このスイッチの押下状況はCPU1に出力されるようになっている。6は、座標入力板4の下面に設けられた液晶表示器(LCD)であって、7は液晶表示器6の駆動を制御するLCDドライバである。
【0053】
ここで、CPU1は、ペンダウンを検出している間に、座標検出部5から順次入力される点座標データを線分で結ぶようLCDドライバ7を制御することで、あたかも紙上に文字を書くかのごとく、LCD6にはその筆跡を表示することが可能になっている。
【0054】
8は例えばフロッピーディスクやハードディスク装置等の外部記憶装置であって、オペレーティングシステム、各種アプリケーションプログラムをはじめ、本実施形態にかかる文字認識処理にかかるプログラムを記憶している。そして、認識処理するときに参照される文字認識辞書や認識結果(文字コード)を記憶する領域も確保されている。
【0055】
上記構成において、CPU1は文字認識を行う場合には、文字認識にかかるプログラムをRAM3にロードし、そのロードしたプログラムに従って文字認識処理を行うことになる。
【0056】
外部記憶装置8に記憶されている文字認識プログラムの例を図16に示す。尚、図示では記憶媒体160を示しており、上記実施形態における外部記憶装置8に適合するものであるが、具体的には、フロッピーディスク、ハードディスク、CD−ROM等情報を記憶する媒体であれば如何なる物であっても良いのは勿論である。
【0057】
図示において、161は、入力したストロークの点データ群のベクトル方向の変化の度合を検出する検出モジュールであり、162は、検出されたベクトル方向の変化が所定の閾値と比較する比較モジュール、163は比較結果によりベクトル方向の変化が前記閾値以上の場合、当該ベクトルを構成する一部の点データを有効とし、所定変化以下の場合には当該ベクトルを構成する点データを構成する一部の点データを除去する制御モジュールである。
【0058】
ここで、更に、記憶媒体には、更に、制御モジュールで得られた有効な点データの個数が、注目ストロークに関してn個の連続したベクトル列を特定し得るだけの数になったか否かを判別する判別モジュールと、n個の連続したベクトル列を特定し得るだけの数が得られないと判別した場合、閾値を調整して、検出モジュール、比較モジュール、及び制御モジュールを再度実行する第2の制御モジュールを備えることが望ましい。
【0059】
また、更に、記憶媒体は、第2の制御モジュールでもって調整された閾値に基づいて得られた有効な点データの数がn+1個以上あると判別モジュールが判別した場合、得られた特徴点のベクトル変化の大きいものから上位のn+1個の点データを抽出するモジュールを備えることが望ましい。
【0060】
また、更に、下位処理として文字認識処理モジュールを備えることが望ましい。
【0061】
以上の記憶媒体160は第1の実施形態に対応するものであるが、第2の実施形態に適応するものであれば、入力したストロークの点データ群の密度分布を検出する点密度検出モジュールと、得られた点密度の高低に基づいて区画を設定する区画設定モジュール、設定された各区画の両端点を特徴点として抽出する抽出モジュールを備えることになるのは、上記例からすれな容易に想到できよう。
【0062】
この場合、点密度検出モジュールには、入力されたストロークの時系列の点座標データで表されるストローク長をn等分する分割モジュールと、分割した各区画に含まれる座標点の個数を計数する計数モジュールとを含むことが望ましい。
【0063】
また、区画設定モジュールには、点密度検出モジュールで検出された各区画のうちの最大点密度と所定密度とを比較する比較モジュールと、最大点密度が所定密度以上であるとした場合、当該最大点密度の区画を、当該区画長で2等分することでn+1個の区画を生成する第1の区画補正モジュールと、生成されたn+1個の区画のうち、最低点密度の区画とその隣接する区画とを結合してn個の区画を再設定すると共に比較モジュールを再度実行する第2の区画補正モジュールを備えることが望ましい。
【0064】
また、この場合にも、文字認識装置として機能させるためには、下位処理としての文字認識モジュールを備えることが望ましい。
【0065】
以上説明した様に、本実施形態によれば、オンライン手書き文字を認識する場合に、入力されたストロークデータから精度の良いベクトルデータを抽出することが可能になる。
【0066】
尚、実施形態では、文字入力部を介して直接手書き情報が入力されるものとして説明したが、手書き情報を記憶した記憶媒体から、或いは、通信を介して手書き情報を入力しても良いので、上記実施形態に限定されるものではない。
【0067】
また、上記第3実施形態で説明した様に、本発明は、入力したストローク情報から特徴点を抽出して、その特徴点に対応する情報を下位の処理に渡す技術に関するものであり、下位処理としてはどのようなものであっても構わない。しかしながら、下位処理として文字認識処理を採用した場合には、その認識率を向上させることが可能なので、文字認識処理に適応するのが望ましい。
【0068】
また、上記の如く、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明はシステム或は装置にプログラムを供給することによって実施される場合にも適用できることは言うまでもない。この場合、本発明にかかるプログラムを格納した記憶媒体が、本発明を構成することになる。そして、該記憶媒体からそのプログラムをシステム或は装置に読み出すことによって、そのシステム或は装置が、予め定められたし方で動作する。
【0069】
【発明の効果】
以上説明したように本発明によれば、入力された手書きストローク情報から、当該ストロークの精度良い特徴情報を抽出して下位の処理に渡すことが可能になる。
【0070】
【図面の簡単な説明】
【図1】本実施形態におけるオンライン手書き文字認識方法の機能構成を示すブロック図である。
【図2】本実施形態における記入されたストロークの例を示す図である。
【図3】第1の実施形態における特徴抽出処理を示すフローチャートである。
【図4】特徴抽出処理の原理を説明するための図である。
【図5】第1の実施形態における特徴点数の制御を示すフローチャートである。
【図6】第1の実施形態における特徴点消去部の動作を示すフローチャートである。
【図7】本実施形態におけるベクトル化部の動作を示すフローチャートである。
【図8】本実施形態における方向ベクトルを示す図である。
【図9】第2の実施形態におけるオンライン手書き文字認識装置の機能ブロック図である。
【図10】第2の実施形態における点密度計算部の動作を示すフローチャートである。
【図11】第2の実施形態におけるn分割点を示す図である。
【図12】第2の実施形態におけるストローク分割の様子を示す図である。
【図13】第2の実施形態におけるストローク分割後の点密度を示す図である。
【図14】第2の実施形態における分割点決定部の動作を示すフローチャートである。
【図15】第3の実施形態における具体的な装置構成を示すブロック図である。
【図16】第3の実施形態における記憶媒体に記憶されているプログラムモジュールを示す図である。
【符号の説明】
101、901 文字入力部
102、902 ストローク格納部
103 特徴抽出部
104 特徴点消去部
105、905 ベクトル化部
106、906 認識部
107、907 結果出力部
108、908 辞書部
903 点密度計算部
904 分割点決定部
Claims (6)
- 所定の入力装置より入力された手書きストロークから、当該ストロークを構成する点データ群P(0), …, P(k)から特徴点を抽出し、当該特徴点に基づく情報を下位の処理に渡す情報処理装置であって、
前記入力装置より入力された手書きストローク情報である点データP(0)、…、P(k)を記憶するストローク記憶手段と、
該ストローク記憶手段に記憶された点データにおいて、
前記点データの起点P(i)(初期値i=0)、
参照点P(i+1+j)(初期値j=1)とし、
起点P(i)とP(i+1)で定められるベクトルを基準ベクトル、P(i+1)と前記参照点P(i+1+j)で定められるベクトルを参照ベクトルと定義したとき、
前記基準ベクトルと参照ベクトルとの成す角度θと所定閾値とを比較する比較手段と、
該比較手段の比較結果、前記角度θが所定閾値以下である場合には、点P(i+j)を削除対象に設定すると共に、前記変数jを“1”だけ増加させて前記比較手段を再実行し、
前記比較手段の比較結果、前記角度θが所定閾値を越えた場合、点P(i+j)を特徴点として判断し、その際の変数jに基づいて前記変数iを更新すると共に、前記変数jを“1”で再初期化し、前記比較手段を再実行する第1の制御手段と、
前記第1の制御手段で得られた特徴点の個数が、注目ストロークに関してn個の連続したベクトル列を特定し得る数になったか否かを判別する判別手段と、
該判別手段によって、n個の連続したベクトル列を特定し得る数より少ないと判別した場合は、前記所定閾値を減じた後、前記第1の制御手段による処理を再度実行する第2の制御手段と
を備えることを特徴とする情報処理装置。 - 更に、前記判別手段によって、連続したベクトルの数が前記n個を越えたと判別された場合は、前記第1の制御手段で得られた特徴点のうち、前記角度θの大きいものから上位n+1個の特徴点データを抽出する抽出手段を備えることを特徴とする請求項第1項に記載の情報処理装置。
- 前記下位処理は文字認識処理であることを特徴とする請求項第1項に記載の情報処理装置。
- 所定の入力装置より入力された手書きストロークから、当該ストロークを構成する点データ群P(0), …, P(k)から特徴点を抽出し、当該特徴点に基づく情報を下位の処理に渡す情報処理方法であって、
前記入力装置より入力された手書きストローク情報である点データP(0)、…、P(k)をストローク記憶手段に格納する格納工程と、
該ストローク記憶手段に記憶された点データにおいて、
前記点データの起点をP(i)(初期値i=0)、
参照点をP(i+1+j)(初期値j=1)とし、
起点P(i)とP(i+1)で定められるベクトルを基準ベクトル、P(i+1)と前記参照点P(i+1+j)で定められるベクトルを参照ベクトルと定義したとき、
前記基準ベクトルと参照ベクトルとの成す角度θと所定閾値とを比較する比較工程と、
該比較工程の比較結果、前記角度θが所定閾値以下である場合には、点P(i+j)を削除対象に設定すると共に、前記変数jを“1”だけ増加させて前記比較工程を再実行し、
前記比較工程の比較結果、前記角度θが所定閾値を越えた場合、点P(i+j)を特徴点として判断し、その際の変数jに基づいて前記変数iを更新すると共に、前記変数jを“1”で再初期化し、前記比較工程を再実行する第1の制御工程と、
前記第1の制御工程で得られた特徴点の個数が、注目ストロークに関してn個の連続したベクトル列を特定し得る数になったか否かを判別する判別工程と、
該判別工程によって、n個の連続したベクトル列を特定し得る数より少ないと判別した場合は、前記所定閾値を減じた後、前記第1の制御手段による処理を再度実行する第2の制御工程と
を備えることを特徴とする情報処理方法。 - 更に、前記判別工程によって、連続したベクトルの数が前記n個を越えたと判別された場合は、前記第1の制御工程で得られた特徴点のうち、前記角度θの大きいものから上位n+1個の特徴点データを抽出する抽出工程を備えることを特徴とする請求項第4項に記載の情報処理方法。
- 前記下位処理は文字認識処理であることを特徴とする請求項第4項に記載の情報処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19523395A JP3817281B2 (ja) | 1995-07-31 | 1995-07-31 | 情報処理装置及び方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19523395A JP3817281B2 (ja) | 1995-07-31 | 1995-07-31 | 情報処理装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0944599A JPH0944599A (ja) | 1997-02-14 |
JP3817281B2 true JP3817281B2 (ja) | 2006-09-06 |
Family
ID=16337704
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19523395A Expired - Fee Related JP3817281B2 (ja) | 1995-07-31 | 1995-07-31 | 情報処理装置及び方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3817281B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009042970A (ja) * | 2007-08-08 | 2009-02-26 | Dainippon Printing Co Ltd | 端末装置、プログラム及び電子ペン処理システム |
EP3100145B1 (en) * | 2014-01-27 | 2018-12-19 | Tactual Labs Co. | Decimation strategies for input event processing |
-
1995
- 1995-07-31 JP JP19523395A patent/JP3817281B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0944599A (ja) | 1997-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7302099B2 (en) | Stroke segmentation for template-based cursive handwriting recognition | |
JP5071914B2 (ja) | 認識グラフ | |
JP3176023B2 (ja) | 手書き入力照合方法および装置 | |
US5854855A (en) | Method and system using meta-classes and polynomial discriminant functions for handwriting recognition | |
US7437001B2 (en) | Method and device for recognition of a handwritten pattern | |
US5841902A (en) | System and method for unconstrained on-line alpha-numerical handwriting recognition | |
US7630551B2 (en) | Method and system for line extraction in digital ink | |
US5768417A (en) | Method and system for velocity-based handwriting recognition | |
US7369702B2 (en) | Template-based cursive handwriting recognition | |
CA2481828C (en) | System and method for detecting a hand-drawn object in ink input | |
EP1854047A1 (en) | Segmentation-based recognition | |
JP3761937B2 (ja) | パターン認識方法及び装置及びコンピュータ制御装置 | |
CN111492407A (zh) | 用于绘图美化的***和方法 | |
Chiang et al. | Recognizing arbitrarily connected and superimposed handwritten numerals in intangible writing interfaces | |
JP2015099566A (ja) | 特徴算出装置、方法及びプログラム | |
JP3817281B2 (ja) | 情報処理装置及び方法 | |
CN115311674A (zh) | 手写处理方法、装置、电子设备和可读存储介质 | |
Nguyen et al. | Semi-incremental recognition of on-line handwritten Japanese text | |
JP3977473B2 (ja) | 手書き文字認識方法及び手書き文字認識装置 | |
JPH09319828A (ja) | オンライン文字認識装置 | |
JP3419251B2 (ja) | 文字認識装置及び文字認識方法 | |
JP2785438B2 (ja) | 文字認識方式 | |
JP3146046B2 (ja) | オンライン文字認識装置 | |
JP2658137B2 (ja) | 文字認識方式 | |
JP3290097B2 (ja) | ストロークの判定方法および判定装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050804 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050812 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051011 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060120 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060317 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060602 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060612 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090616 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100616 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110616 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120616 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120616 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130616 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |