JP3897999B2 - 手書き文字認識方法 - Google Patents
手書き文字認識方法 Download PDFInfo
- Publication number
- JP3897999B2 JP3897999B2 JP2001183717A JP2001183717A JP3897999B2 JP 3897999 B2 JP3897999 B2 JP 3897999B2 JP 2001183717 A JP2001183717 A JP 2001183717A JP 2001183717 A JP2001183717 A JP 2001183717A JP 3897999 B2 JP3897999 B2 JP 3897999B2
- Authority
- JP
- Japan
- Prior art keywords
- character
- stroke
- handwritten
- writing
- line feed
- 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 Input (AREA)
- Character Discrimination (AREA)
Description
【発明の属する技術分野】
本発明は、タブレットや電子黒板などの手書き文字入力装置から入力された手書き文字を認識する手書き文字列認識方法に関するものである。
【0002】
【従来の技術】
従来、この種の手書き文字認識方法あるいは認識装置として、次のようなものが提案されている。
(1)特開昭61−29982号(名称:オンライン手書き文字列認識方式)
(2)特開平5−174185号(名称:日本語文字認識装置)
(3)特開平6−162269号(名称:手書き文字認識装置)
(4)特開平8−50632号(名称:手書き文字切り出し方法および装置)
【0003】
特開昭61−29982号公報に開示されたオンライン手書き文字列認識方法は、データタブレット上に自由形式で筆記された文字列を認識する際の制約を解消すると共に、文字のセグメンテーションを正しく行うことを目的とし、データタブレットから入力されたストローク列を複数の基本セグメント列に分割し、次に、その基本セグメントを組み合わせて候補文字を生成し、次に、生成された候補文字を標準文字との照合によって逐次認識し、認識結果の文字名称と相違度を蓄積する処理を、全ての候補文字に対して反復実行し、入力ストローク列に対し相違度の総和を最小とする文字名称の系列を最小経路探索アルゴリズムを用いて割り当てるようにしたものである。
【0004】
特開平5−174185号公報に開示された日本語文字認識装置は、スキャナなどからオンラインもしくはオフラインで入力された日本語文字列の誤切り出しおよび誤認識を最小限にすることを目的とし、分離文字あるいは半角文字が並んでいる可能性のある文字列の範囲を検出し、その範囲で全ての切り出し候補を求め、認識を行い、切り出し優先順位と認識類似度との相互判断で最も確からしい認識文字コードを出力するために、文字部分の連結部分の外接図形を抽出し、隣接する外接図形が、横書き文書ならば上下方向に、縦書き文書ならば左右方向に重なっている場合に統合を行って基本矩形を作成し、その基本矩形が単独で1文字として決定できるか否かを判定し、決定できない場合、その基本矩形の範囲を検出し、この範囲に対し、切り出し候補として隣接する基本矩形の統合の組合せを求め、夫々に優先順位を付け、全切り出し候補を認識し、切り出し優先順位および認識類似度より最も確からしい認識文字コードを出力するようにしたものである。
【0005】
特開平6−162269号公報に開示された手書き文字認識装置は、任意の位置に任意の速度で円滑に手書き文字を入力可能にすることを目的とし、入力された手書き文字のストローク間の距離および方向、始点の位置を検出し、座標データを文字単位で識別し、文字単位の座標データによって該ストロークが表現する文字を認識するようにしたものである。
【0006】
特開平8−50632号公報に開示された手書き文字切り出し方法および装置は、入力枠を設けずに文字の切り出しを可能にすることを目的とし、入力された手書き文字列の高さHを求め、この文字列高さHに基づいて幅Lを決定し、基点Oから水平方向に幅Lの範囲を予備探索範囲とし、その予備探索範囲内においてストロークの数Sと最大高さhと形状特徴量x(空白長の最大のもの)を求め、変数S,h,xに応じて探索範囲を決定し、その探索範囲内でヒストグラムが最小値をとる区間を探索し、その区間のうち最長のものが後続の文字との間の切れ目であるとして1文字の切り出しを行うようにしたものである。
【0007】
【発明が解決しようとする課題】
しかしながら、前述の各公報に記載された手書き文字認識方法にあっては、いずれも、筆記方向が横書きまたは縦書きとして予め指定されるか、固定されていることを前提とし、さらに改行位置も指定されることを前提としているため、筆記方向や改行位置が指定されない手書き文字文書、例えば、電子黒板に筆記された複数行の手書き文書をオンラインで取り込み、これを一括して認識することができないという問題がある。
【0008】
また、特開昭61−29982号公報に開示されたオンライン手書き文字列認識方式にあっては、入力されたストローク列を基本セグメント列に区分する手法として、横書きの手書き入力文字パターンに対して、各ストロークの横軸への投影の重なり具合と手書き入力文字パターンの外接図形の高さの比と閾値とを比較してストロークを分割し、分割された各ストロークの組を基本セグメントとしているため、手書き文字が斜め方向に傾いて筆記された場合、外接図形の高さが文字高さより異常に大きくなってしまい、その結果として、隣の文字を構成するセグメント列を含んだ形で1つの組の基本セグメント列として区分してしまう。
この結果、斜め方向に傾いて筆記された手書き入力文字を正しく認識することができなくなるという問題がある。
【0009】
また、特開平5−174185号公報に開示された日本語文字認識装置にあっては、横書きの場合は縦方向に、縦書きの場合は横方向に重なり合うストローク同士を結合し、1つの文字を構成し得る基本セグメントとしているため、すなわち、重なりが有るか無いかという決定論的な手法によって基本セグメントに分割しているため、文字間隔が狭くて隣接する文字との外接図形が重なっている場合には、複数の文字のストロークを1つの文字の基本セグメントに統合してしまう危険性があり、文字間隔の狭い手書き入力文字を正しく認識できなくなる恐れがある。
【0010】
また、特開平6−162269号公報に開示された手書き文字認識装置にあっては、複数の手書き文字を1文字づつ切り出す際に、第1ストロークの始点に注目し、直前の文字の最後のストロークの始点位置が予め定めた閾値よりも下部に有り、かつ当該文字の第1ストロークの始点位置が前記閾値より上部に有ることを検出したならば、この部分を1文字の境界候補とした後、直前の文字の第1ストロークと注目文字の第1ストロークの始点間距離および方向を調べ、その始点間距離が閾値より大きく、かつ文字入力方向と同一であれば、1文字の切り出し候補に決定し、その切り出し候補の外接ボックスを作成し、直前に作成した外接ボックスとの重なり関係を調べ、重なる場合は2つの外接ボックスを同一文字のストローク群として統合し、重ならない場合は1つ前の切り出し候補のストローク群を1文字分として切り出すようにしているため、第1ストロークの始点位置が直前の文字の最後のストロークの始点位置よりも常に下部になる縦書き形式の手書き文字認識には適用できないという問題がある。
また、横書き形式であっても、同様の理由により、1行全体の文字が右下がり方向に傾いた斜め書き形式の手書き文字の場合に、注目文字の第1ストロークの始点位置が直前の文字の最後のストロークの始点位置より下部になっていれば、当該第1ストロークは直前の文字を構成するストロークとして区分されてしまい、切り出しが正しく行われなくなるという問題がある。
【0011】
また、特開平8−50632号公報に開示された手書き文字切り出し方法にあっては、入力された手書き文字列の高さHを求め、この文字列高さHに基づいて幅Lを決定し、基点Oから水平方向に幅Lの範囲を予備探索範囲とし、その予備探索範囲内においてストロークの数Sと最大高さhと形状特徴量x(空白長の最大のもの)を求め、変数S,h,xに応じて探索範囲を決定し、その探索範囲内でヒストグラムが最小値をとる区間を探索し、その区間のうち最長のものが後続の文字との間の切れ目であるとして1文字の切り出しを行うようにしているため、例えば、3桁の数字「111」を縦長に筆記した場合、これらの数字が1つの文字を構成するストローク列として切り出され、漢字の「川」という文字に誤認識されてしまう恐れがある。
また、複数行の手書き文字については改行位置で行の区分を行うようにしているが、改行位置をどのようにして検出するかについては考慮されていない。このため、複数行に渡って筆記された手書き文字をそれぞれの行別に一括して認識することができないという問題がある。
【0012】
本発明は、前記従来技術の問題点を解決するためになされたものであり、本発明の目的は、電子黒板等に改行位置が指定されずに筆記された手書き文字をオンラインで取り込み、その手書き文字の改行位置を正確に判定し、その判定結果に従って複数行に渡る手書き文字を一括して認識することが可能な手書き文字認識方法を提供することにある。
【0013】
また、本発明の他の目的は、電子黒板等に筆記方向が指定されずに筆記された手書き文字をオンラインで取り込み、その手書き文字の筆記方向を正確に判定し、その判定結果に従って手書き文字を一括して認識することが可能な手書き文字認識方法を提供することにある。
【0014】
また、本発明の他の目的は、斜め書きや文字間隔が狭い手書き文字であっても、各文字の切り出しを正確に行い、その切り出し結果に従って任意行の手書き文字を一括して認識することが可能な手書き文字認識方法を提供することにある。
【0015】
また、本発明の他の目的は、縦書き横書きの種別、行数、筆記枠の有無に関係なく、電子黒板等に筆記された手書き文字をオンラインで取り込み、その手書き文字を一括して認識することが可能な手書き文字認識方法を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
【0016】
【課題を解決するための手段】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。
即ち、本発明は、手書き文字入力装置からストローク順に入力された複数ストローク群から成る複数の手書き文字列を認識する手書き文字認識方法であって、前記複数ストローク群を対象として、縦書きの場合はヒストグラムを用いて筆点分布度数が小さい部分をまたぐ左上方向の裏ストロークを、横書きの場合は左下方向の裏ストロークを改行位置候補に選定し、さらに、前記ストローク群の中のストローク入力時刻において隣り合うストロークの終点から始点へのベクトルおよびそのベクトルの長さの平均を求め、前記選定された改行位置候補内のベクトルの長さと前記ベクトルの長さの平均を比較し、改行判定用の閾値を超えるベクトルの位置を改行位置として判定し、この改行位置の判定結果に従って前記複数ストローク群から成る手書き文字列を認識することを特徴とする。
【0017】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
なお、実施の形態を説明するための全図において、同一機能を有するものは同一符号を付け、その繰り返しの説明は省略する。
図1は、本発明を適用した手書き文字認識装置の実施の形態を示すブロック構成図であり、タブレットあるいは電子黒板等で構成され、ペン1で入力面に筆記された手書き文字の筆点座標をストローク順に出力する手書き文字入力装置2と、手書き文字の認識結果を表示する表示装置3と、手書き文字入力装置2から入力された手書き文字の複数ストローク群を文字要素候補別に結合/分割し、辞書との照合によって認識する中央処理装置(CPU)4と、認識処理に必要な各種のパラメータやコマンドを入力するキーボード5、手書き文字認識プログラム61や辞書62等を記憶した記憶装置6とで構成されている。
【0018】
ここで、手書き文字入力装置2は、電子黒板やタブレットに限定されるものではなく、手書き文字の筆点座標をストローク順に出力する構成のものであれば全て使用することができる。また、透明タブレットの下面に表示画面を実装した構造の入力装置を使用することもできる。
【0019】
本実施形態の手書き文字認識装置にあっては、図2に示すように、手書き文字入力装置2の入力面21上には手書き文字の入力枠は設けられておらず、入力面21上でペン1によって、例えば、図2に示すような任意の手書き文字「枠無し手書き文字の認識について」を任意の位置に複数行に渡って入力した後、「認識」のコマンドボタン22を選択操作すると、入力面21上に筆記された手書き文字が一括して認識され、その認識結果が表示装置3の表示画面に文字表示される。
この場合、認識結果に誤りがあったならば、「再認識」のコマンドボタン23を選択操作することにより、筆記方向を認識する処理から始まる一連の処理が再度実行され、再認識結果が表示される。また、誤った手書き文字を筆記した場合、「取消し」のコマンドボタン24を選択操作することにより、1文字単位で取り消すことができる。
【0020】
ここで、本明細書中で使用する用語の定義について説明する。
(1)ストローク
ストロークとは、ペン1が入力装置2の入力面21に接触してから離れるまでに書かれる1本の手書き線を意味し、日本語でいうところの「一画」に対応する。1つの手書き文字は、句読点などを除き複数のストロークで構成される。
(2)筆点
筆点とは、それぞれのストロークを構成する最小単位の点を意味し、入力面21におけるペン1の押圧座標値、あるいはその押圧座標値から導き出される論理的な座標値で表現され、ストロークの始点や終点といった属性を備える。
【0021】
(3)文字要素
文字要素とは、1文字に含まれることが明らかなストロークの集合のことを指し、任意のストロークの集合に対して交点を持つストローク同士の結合、距離の近いストローク同士の結合等の処理を経ることによって得られる。
ストローク、文字要素の区別を図3に例示する。
(4)手書きパターン
手書きパターンとは、図3に例示するように、入力装置2の入力面に筆記された認識対象の手書き文字を構成するストローク群の全体を指し、何処までを認識対象とするかは、ユーザが区切りであることをボタンやメニュー等で明示的に指示する方法、あるいはペン1が入力面21から離れて一定時間以上接触操作が行われなかった時点を区切りとして指示する方法がある。
【0022】
(5)裏ストローク
裏ストロークとは、あるストロークの終点から次のストロークの始点へのベクトルを意味し、本発明では、文字内裏ストローク、文字間裏ストローク、改行裏ストロークに細分される。
(6)文字内裏ストローク
文字内裏ストロークとは、1文字内に含まれる連続した2ストローク間で発生する裏ストロークを意味する。
(7)文字間裏ストローク
文字間裏ストロークとは、ある文字の最後のストロークの終点と次の文字の始点との間で発生する裏ストロークを意味する。
(8)改行裏ストローク
改行裏ストロークとは、ある行の最後の文字の最後のストロークの終点と次の行の先頭の文字の最初のストロークの始点との間で発生する裏ストロークを意味する。
【0023】
図4は、本実施形態の手書き文字入力装置の機能構成図であり、入力装置2の入力面21で手書き文字が筆記されると、その手書き文字の各ストロークを構成する複数の筆点の座標データ列が入力装置2からストローク順に出力される。この各ストロークの筆点座標データ列は、記憶装置6に順次格納される。
任意の手書き文字の入力が終了し、ユーザが「認識」のコマンドボタン22を選択操作すると、手書き文字認識プログラム61が起動され、記憶装置6に格納された手書き文字の筆点座標データ列を読出し、筆記方向の判別処理、改行位置の判別処理、文字サイズの判別処理、ストローク群の分割/結合処理、文字要素の分割/結合処理、辞書62を用いた認識処理を行う。
手書き文字認識プログラム61は、筆記方向取得部611、改行位置取得部612、標準文字サイズ取得部613、枠無し手書き文字列認識部614とから構成される。
このうち、枠無し手書き文字列認識部614は、図5に示すように、仮結合処理部615、仮分割処理部616、評価・探索処理部617とから構成される。
【0024】
以下、この手書き文字認識プログラム61を構成する各部の構成および処理内容について詳細に説明する。
(1)記憶装置6に格納される筆点座標データ列の構成
入力装置2から出力される手書き文字の各ストローク筆点座標データ列は、図6に示すように、基本的にはストローク番号631と各筆点のx,y座標値632とから構成され、認識処理の過程で各ストロークが何文字目のストロークに属するかなどのストローク間関係属性633、改行位置に相当するストロークであることを示す改行位置フラグ634などが付加されるようになっている。
【0025】
(2)筆記方向取得部611
筆記方向取得部611は、図7および図8で示される手順に従って手書きパターンが縦書きか、横書きかを判定する。
図7は、裏ストローク及び縦書き横書き判別ベクトルの説明図である。
裏ストロークとは、前述したように、あるストロークの終点から次のストロークの始点へのベクトルである。
直感的には、手書きパターンの入力中のタブレットから離れた状態でのペン1の移動が裏ストロークであり、裏ストロークは、さらに文字内裏ストロークと文字間裏ストロークに分類できる。
文字内裏ストロークとは、1文字に含まれるストローク間に生じる裏ストロークであり、文字間裏ストロークとは、ある文字の最後のストロークの終点から次の文字の最初のストロークの始点への裏ストロークである。
図7の手書きパターンでは、BS1,BS2,BS4,BS6が文字内裏ストローク、BS3,BS5が文字間裏ストロークである。
【0026】
筆記方向取得部611は、認識対象の手書きパターンの全てのストローク群を対象として、各裏ストロークに含まれる右方向の成分R3,R4,R5と下方向の成分D6のみを加算し、縦書き横書き判別ベクトルを求める。
図7では、Vtotalが縦書き横書き判別ベクトルである。
日本語の場合、横書きの文字列では文字間裏ストロークは、右方向の成分を多く含み、縦書きの文字列では文字間裏ストロークは下方向の成分を多く含む。
この性質を利用し、筆記方向取得部611は、図8のような手順で縦書き横書きの判定を行なっている。
【0027】
まず、図7で示した縦書き横書き判別ベクトルを求める(ステップ801)。
次に、縦書き横書き判別ベクトルの右方向の成分を下方向の成分で割った値A(下方向成分に対する右方向成分の比)と、横書き判定用の閾値Th及び縦書き判定用の閾値Tvとを比較し、前記の値AがTh以上であれば横書き、Tv以下であれば縦書きとして判定する(ステップ802)。
前述の処理で判定できなかった場合は、筆記された文字数が少ないと判断し、筆記された手書きパターン全体の外接矩形の縦横比(高さに対する幅の比)が「1」以上か否かを調べ、「1」以上ならば横書き、「1」未満ならば縦書きとして判定する(ステップ803)。
従って、図7に示したように、判別ベクトルの下方向成分に対する右方向成分の比が横書き判定用の閾値Thを超えるものについては、正確に「横書き」として判定される。
このようにして横書きか、縦書きかを判定することにより、ユーザは予め筆記方向を指定する必要がなくなり、手書き文字を筆記する際の煩わしさから解放される。
【0028】
(3)改行位置取得部612
改行位置取得部612は、入力装置2から入力された手書き文字の複数ストローク群を対象とし、その筆記方向へのヒストグラムを求め、そのヒストグラムにより筆記点が少ない部分を改行位置候補に選定し、さらに前記ストローク群の中のストローク入力時刻において隣合うストロークの終点から始点へのベクトルおよびそのベクトルの長さの平均を求め、前記改行位置候補内のベクトルの長さと前記ベクトルの長さの平均を比較し、改行判定用の閾値を超えるベクトルの位置を改行位置として判定する。
即ち、改行位置取得部612は、図11のフローチャートに示すように、筆記方向取得部611が判定した筆記方向の判定結果に基づき、ストローク群の筆記方向へのヒストグラムを求める(ステップ1101)。
横書きの場合、図9に示すように、ヒストグラム901の「谷」に相当する位置が改行位置であると推定される。
そこで、ヒストグラム901で筆点分布度数が小さい部分(谷の部分)をまたぐ裏ストロークを改行位置候補に選定する(ステップ1102)。
【0029】
改行裏ストロークとは、文字間裏ストロークの一種であり、図10に示すように、ある行の末尾の文字の最後のストロークの終点から次の行の先頭の文字の最初のストロークの始点への裏ストロークという意味である。
日本語の場合、横書きの文章中の改行裏ストロークは左下方向、縦書きの文章中の裏ストロークは左上方向である。
そこで、縦書きの場合は、ヒストグラム901で筆点分布度数が小さい部分(谷の部分)をまたぐ左上方向の裏ストロークを、横書きの場合は左下方向の裏ストロークを改行裏ストローク候補として選択する。
次に、横書きの場合、前述処理で選択した裏ストロークの左方向水平成分Wcrが、改行判定用の閾値を超えるものを改行裏ストロークと判定し、縦書きの場合は、上記処理で選択した裏ストロークの上方向鉛直成分Hcrが改行判定用の閾値を超えるものを改行裏ストロークと判定する(ステップ1103)。
【0030】
この場合、改行裏ストロークの水平成分Wcrおよび鉛直成分Hcrの大きさは、1行の文字数によって異なる。
そこで、手書き文字の1文字の標準サイズが、図10に示すように既知であるか、推定できる場合、その標準文字サイズの幅Wsで水平成分Wcrを割った値が閾値を超えるものを横書きの場合の改行裏ストロークとして選定し、また標準文字サイズの高さHsで鉛直成分Hcrを割った値が閾値を超えるものを縦書きの場合の改行裏ストロークとして選定することにより、判定精度がさらに向上する。
【0031】
ところで、手書き文字が斜め方向に傾いて筆記された場合、水平成分Wcrおよび鉛直成分Hcrが算定できなくなる恐れがあるが、斜め書きの場合は、手書き文字パターンを正規直交座標系に変換する補正処理を施すことによって水平成分Wcrおよび鉛直成分Hcrを正常に算定することが可能である。
この場合、斜め書きであるか否かは、例えば、各手書き文字の外接矩形の中心を結ぶ線を求め、その線の傾斜によって判定することができる。
このようにして改行位置を判定することにより、ユーザは筆記途中で改行位置を指定する必要がなくなり、手書き文字を筆記する際の煩わしさから解放される。
【0032】
(4)標準文字サイズ取得部613
標準文字サイズ取得部613は、入力装置2から入力された手書き文字の複数ストローク群を構成する各ストローク間の距離を、予め定めた関係式に従って評価し、その評価した距離が仮結合用の閾値よりも小さいストローク同士を結合する仮結合処理を、結合可能なストロークがなくなるまで繰り返すことにより、複数ストローク群を複数の文字要素に分割した後、各文字要素の外接矩形を求め、その外接矩形の高さの最大値または平均値と幅の最大値または平均値を手書き文字の標準文字サイズとして推定する。
仮結合処理におけるストローク間の距離は、図12および図13に示すような各パラメータに係数を乗じて加算した値で評価する。
【0033】
ここで、Lは、図12(a)に示すように1つのストロークの標準サイズ(1辺の長さ)、Sは1つのストロークの標準の面積である。
1つのストロークの標準サイズLおよび標準面積Sは、図12(b)に破線で示すような各ストロークの外接矩形を求め、その外接矩形の高さおよび幅のうち、長い方の値のみを選択し、さらに全てのストロークの高さおよび幅のうち最大のものを選択し、これから1つのストロークの標準サイズLおよび標準面積S推定する。
なお、後述する文字要素間の結合処理においては、Lは1つの文字要素の標準サイズ、Sは1つの文字要素の標準面積となる。
【0034】
(a)評価パラメータ=d/L
図12(b)に示すように、隣合うストロークの外接図形(破線で図示)の筆記方向の変位dの1文字の標準サイズLに対する割合い、
(b)評価パラメータ=c/S
図12(c)に示すように、隣合うストロークの外接図形(破線で図示)の重なり部分の面積cの1文字の標準面積Sに対する割合い、
(c)評価パラメータ=d/L
図12(d)に示すように、隣合うストロークの重心座標のユークリッド距離dの1文字の標準サイズLに対する割合い、
(d)評価パラメータ=d/L
図13(a)に示すように、隣合うストロークの重心座標の筆記方向の変位dの1文字の標準サイズLに対する割合い、
(e)評価パラメータ=d/L
図13(b)に示すように、先のストロークの末尾の筆点と後のストロークの先頭の筆点のユークリッド距離dの1文字の標準サイズLに対する割合い、
(f)評価パラメータ=d/L
図13(c)に示すように、先のストロークの末尾の筆点と後のストロークの先頭の筆点の筆記方向の変位dの1文字の標準サイズLに対する割合い。
【0035】
これらの評価パラメータの中から少なくとも2つを予め選定しておき、その選定した複数の評価パラメータによる評価値が求まったならば、その各評価値に所定の係数を乗じて加算し、その加算値と仮結合用の閾値と比較する。
この比較処理の結果、加算値が小さいものについては、1文字の中に含まれると判定し、その1対のストロークを同一集合に結合し、1つの文字要素候補に選定する。
この仮結合処理は、閾値以下のストロークがいずれかの文字要素に全て結合されるまで再帰的に繰り返す。
【0036】
例えば、図14(a)に示すように「ソフト」というカナ文字が入力された場合、このカナ文字を構成するストロークST1〜ST5について、互いに隣接するストローク同士で図12(b)〜図13(c)に示す評価パラメータを求め、その評価パラメータを全部使って総合評価を行い、どのストロークを結合して1つの文字要素とするかを決定する。
図14(b)に各評価パラメータの値の例を示している。
ここで、図14(b)における評価パラメータ(a)〜(c)は、図12(a)〜(c)の評価パラメータ、評価パラメータ(d)〜(f)は図13(a)〜(c)の評価パラメータに該当する。
算出した各評価パラメータは、小さいほど結合の度合いが強いことを示している。
【0037】
図14(b)の評価パラメータに対し、「仮結合の閾値=−4.0」、「仮分割の閾値=−5.0」を設定した場合、総合評価はストロークST1,ST2間が「−3.2」、ストロークST2,ST3間が「−5.45」、ストロークST3,ST4間が「−7.4」、ストロークST4,ST5間が「−1.41」であるので、ストロークST1,ST2間は「結合」、ストロークST2,ST3間は「分割」、ストロークST3,ST4間は「分割」、ストロークST4,ST5間は「結合」となる。
【0038】
ここで、X軸方向(横書き方向)の単なる重なり度合いによって「結合」か「分割」かを、従来の決定論的な方法によって判断するようにした場合、例えば、ストロークST2,ST3間の距離d2よりも小さい距離を、仮結合用の閾値に設定した場合、ストロークST4,ST5間の距離d3は、d2>d3であるのでストロークST4,ST5は「結合」となる。
しかし、ストロークST1,ST2間の距離d1は、d1>d2であるので、これらストロークST1,ST2間は「分割」となり、ストロークST2,ST3間は「結合」となり、ストローク同士の結合および分割が正しく行われなくなる。
【0039】
一方、本発明のように、複数の評価パラメータの総合評価によってストローク同士の結合および分割を決定することにより、ストローク同士の結合および分割を精度良く行うことができる。
標準文字サイズ取得部613は、以上のようにしてストロークの結合および分割を行い、文字要素となる候補を定めるこの結果、入力装置2から入力された手書き文字の複数ストローク群は、図15に破線で囲んで示すように、複数の文字要素に分割される。
【0040】
そこで、次に、図15に破線で示すような各文字要素の外接矩形を求め、その外接矩形の大きさから1文字の大きさを推定する。
文字の大きさは、高さと幅をそれぞれ別個に計算し、計算には、各外接矩形の高さおよび幅のうち、長い方の値のみを利用する。
図14のような手書きパターンが与えられた時は、高さの計算には、H1,H3,H4,H5,H6を、幅の計算にはW2,W7を利用する。
計算に用いるデータを選択した後、それぞれのデータの平均値と標準偏差を求め、平均値との差を標準偏差で割った値が閾値以上のものはノイズを含んでいるものと見做してデータから削除する。
最後に残ったデータの最大値もしくは平均値を標準文字の高さ、あるいは幅の推定値とする。
【0041】
この場合、最終的にデータ不足で、高さHあるいは幅Wの片方が算出できなかった場合、算出できた方の値を算出できなかった方の値にも利用する。
例えば、高さHだけが算出でき、幅Wが求められなかった場合は、幅W=高さHとする。図14の例では、文字の高さ=H6、幅=W7として算出している。
このようにすることにより、筆記方向や行数の指定が無い場合でも、文字の大きさの推定が可能になる。
そして、筆記方向や行数の情報が筆記方向判別処理および改行位置判別処理で判明すれば、仮結合処理の精度がさらに向上し、結果として、手書き文字の標準サイズの推定精度が向上するという利点がある。
【0042】
特に、斜め書きや文字間隔が狭い手書き文字であっても、各文字要素の切り出しを行うための標準文字サイズを正確に推定することができる。
例えば、図16(a)に示すように斜め書きの手書き文字が入力された場合、仮結合処理によって図16(b)に示すように結合または分割された文字要素単位に、その文字要素の外接矩形を求め、その外接矩形の大きさから1文字の大きさを推定するため、標準文字サイズを斜め書きの場合であっても正確に推定することができる。
【0043】
(5)枠無し手書き文字列認識部614
枠無し手書き文字列認識部614は、図5に詳細を示したように仮結合処理部615、仮分割処理部616、評価・探索処理部617とで構成される。
仮結合処理部615における処理は、標準文字サイズ取得部613における仮結合処理と全く同様である。
但し、標準文字サイズ取得部613における仮結合処理は個々のストロークを結合し、「1つの文字に含まれることが明らかな状態の文字要素」を作成することであるのに対し、仮結合処理部615における仮結合処理は標準文字サイズの推定値を参照し、各文字要素をさらに結合することである。
この場合、文字要素を結合する際に用いる評価パラメータおよび手順は、標準文字サイズ取得部613における仮結合処理と全く同様のものを用いることができる。
但し、標準サイズLは、1つの文字要素の外接矩形の長さの大きい方の値、標準面積Sは標準サイズLの正方形の面積を使用する点が異なる。
なお、文字要素の結合に専用に設定した評価パラメータを用いてもよい。
【0044】
この文字要素の再帰的な仮結合処理によって、例えば、図17に示すように「問」という漢字については、「門構え」内の「口」という文字要素は最後に筆記された文字要素であるにも拘らず、「門構え」内に結合され、「問」という1つの漢字の文字要素集合となる。
文字要素がさらに結合され、新たな文字要素集合が作成されたならば、仮分割処理部616において仮分割処理を行う。
仮分割処理とは、文字要素間の距離を評価し、仮分割用の閾値よりも大きい距離の文字要素間に、そこが文字の区切りであることを示す属性フラグを設定するという処理である。
この場合、文字要素間の距離の評価方法は前述した仮結合処理と同様である。
【0045】
この処理によって、文字区切りの属性フラグが設定された2つの文字要素のうち先に筆記された文字要素の末尾のストロークと、後に筆記された文字要素の先頭のストロークの間は「文字の区切りであることが明らかな状態」になる。
図6においては、この属性フラグを文字の順番号で例示している。属性フラグの表現方法としては、他の方法を用いても何等構わない。
この枠無し文字列認識部614における仮結合処理および仮分割処理は、後続の評価・探索処理部617における探索空間を小さくするための処理であるので、処理時間が問題にならない場合(高速の処理時間を必要としない場合)は省略することができる。
【0046】
次に、評価・探索処理部617において、各文字要素集合によって辞書62を探索し、辞書62に登録された手書き文字パターンに対する評価値が最大になる文字を判定し、その文字のコードを認識結果として表示装置3に出力し、表示装置3において文字コードに対応した文字を表示させる。
前記の仮分割処理部616の処理が終了した段階では、入力装置2から入力された手書きパターンに含まれる全ての隣接したストローク間の状態は、「1文字に含まれることが明らかな状態」、「文字の区切りであることが明らかな状態」、「曖昧な状態」のいずれかである。
この段階で存在する「曖昧な状態」についてそれぞれ、1文字に含まれていると見做すか、文字の区切りであると見做すかによって、1つの「切り出しパターン」が定義できる。
探索空間にある「切り出しパターン」の数は「あいまいな状態」の数をnとすると、2のn乗である。
【0047】
この評価・探索処理は、探索空間に含まれる「全切り出しパターン」の中から以下で説明する評価値を最大にする「切り出しパターン」を探索するという処理である。
この場合の探索手法には、動的計画法、全探索、ビーム探索等の既存の探索手法が利用可能である。
本実施形態では、探索空間を図18に示すように2分木で表現し、その2分木に対するビーム探索を行うようにしている。
切り出しパターンの評価値は、次に示す評価パラメータに係数を乗じて加算した値を用いている。
【0048】
(a)切り出された各手書きパターンと辞書に登録されている手書きパターンとの距離から得られる評価パラメータ、
(b)各認識結果文字間の遷移確率から得られる評価パラメータ、
(c)切り出された各手書きパターンのサイズの標準の文字サイズに対する割合から得られる評価パラメータ、
(d)1文字に含まれると判断した隣接のストローク間の、文字要素間の距離の評価値と、仮結合の閾値から得られる評価パラメータ、
(e)文字の区切りであると判断した隣接ストローク間の、文字要素間の距離の評価値と、仮分割処理の閾値から得られる評価パラメータ。
【0049】
図18において、1点鎖線は区切りになるかどうかが曖昧な部分を示し、破線矢印は分割処理、実線矢印は結合処理によって各文字要素が分割または結合されることを示している。
例えば、手書き文字「晴れ」を▲1▼の曖昧部分で結合した後、▲2▼の曖昧部分で分割した場合は「晴れ」という文字に認識される。しかし、▲2▼の曖昧部分も結合した場合は認識不可能であることを示している。
評価・探索処理部617は、各文字要素間の結合関係が曖昧な部分を左から順に、文字の区切りと判断する場合は左側に、1文字に含まれると判断する場合は右側に進むものとすると、図18の2分木の各ノードの日本語の文字列としての確からしさを以下に述べる手法で評価しながら、2分木の葉の中から最も確からしい葉を探索し、その葉に相当する文字列を認識結果とする。これは、上記(c)の評価方法に該当する。
ある手書きパターンXが文字列Cである確率は、ベイズの定理により次の「数1」によって表すことができる。
【0050】
【数1】
【0051】
ここで、P(X)は事象Xの起こる確率、P(X│Y)は事象Yのもとで事象Xの起きる条件つき確率である。すなわち、
である。
ここで、P(C)は近似的に、「数2」によって表すことができる。
【0052】
【数2】
【0053】
但し、P(Ci+1│Ci)は、i番目の文字と(i+1)番目の文字が連続して書かれる確率のことで、予め統計を取って用意して有る表から求める。Nは文字数である。
P(X│C)は近似的に、「数3」によって表すことができる。
【0054】
【数3】
但し、P(Xi│Ci)は文字列C中のi番目の文字Ciが、手書きパターンXを1文字毎に分割した中のi番目の手書きパターンXiのように書かれる確率であり、文字Ciに対応する辞書パターンと手書きパターンXiをオンライン枠有り文字認識装置で比較することにより求めている。
【0055】
P(区切りor結合│dk)はk番目の文字要素と(k+1)番目の文字要素間の距離がdkの場合にその2つの文字要素間が、文字の区切りに成っている確率、あるいは1文字に含まれている確率である。どちらの確率を求めるかは、手書きパターンXの分割の仕方に依存する。
評価中の手書きパターンの分割法で、k番目の文字要素と(k+1)番目の文字要素が、1文字に含まれていなければ文字になる確率を、1文字に含まれていれば1文字に含まれる確率を求める。
P(SIZEi│標準サイズ)は、1文字の標準の大きさが標準サイズである時の、i番目の文字の大きさSIZEiの確からしさである。
【0056】
次に、コンピュータで計算することを考慮した場合、「数3」では乗算が多く、(2i+k)回の乗算が必要になる。
そこで、「数3」を「数4」に示すような対数項を持つ計算式に置き換え、この「数4」の計算結果を統計的評価値として採用する。
【0057】
【数4】
【0058】
このように日本語としての確からしさを評価し、その評価値が最大となる文字を認識結果として出力することにより、文字間隔が不揃いな手書き文字、斜めに傾いて筆記された手書き文字が存在したとしても、複数行にわたる文字列の文脈に適合する認識結果が得られ、文字単位の認識では得られない高精度の認識結果を一括して得ることができる。
例えば、図16(a)の手書き文字は同図(c)に示すような文字要素の結合によって正しく認識される。
【0059】
なお、本発明は、上記実施形態に限定されるものではなく、筆記方向取得部611、改行位置取得部612、標準文字サイズ取得部612、枠無し手書き文字認識部614における処理を新規の要素技術として、既存の文字認識処理の中に組み込んで構成することができる。
また、手書き文字認識プログラムは、CD・ROM等の記録媒体に格納されてユーザに提供される。または、インタネット等の通信媒体を通じて有償で提供される。
【0060】
以上説明したように、本実施の形態によれば、電子黒板等に筆記方向が指定されずに筆記された手書き文字の筆記方向を正確に判定し、その判定結果に従って手書き文字を認識することができる。
また、電子黒板等に改行位置が指定されずに筆記された手書き文字の改行位置を正確に判定し、その判定結果に従って複数行に渡る手書き文字を認識することができる。
さらに、斜め書きや文字間隔が狭い手書き文字であっても、各文字要素の切り出しを正確に行い、その切り出し結果に従って任意行の手書き文字を認識することができる。
また、縦書き横書きの種別、行数、筆記枠の有無に関係なく、電子黒板等に筆記された手書き文字を高精度で認識することができる。
以上、本発明者によってなされた発明を、前記実施の形態に基づき具体的に説明したが、本発明は、前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【0061】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。
本発明によれば、電子黒板等に改行位置が指定されずに筆記された手書き文字の改行位置を正確に判定し、その判定結果に従って複数行に渡る手書き文字を認識することが可能となる。
【図面の簡単な説明】
【図1】本発明を適用した手書き文字認識装置の実施形態を示すブロック構成図である。
【図2】手書き文字入力装置の入力面に筆記された手書き文字の一例を示す説明図である。
【図3】手書き文字の中のデータの単位を示す説明図である。
【図4】図1の手書き文字認識装置の機能構成図である。
【図5】枠無し文字列認識部の詳細構成図である。
【図6】記憶装置に格納される手書き文字のデータ構成の一例を示す図である。
【図7】縦書き横書き判別ベクトルの説明図である。
【図8】縦書き横書きの判別処理を示すフローチャートである。
【図9】改行位置の判別に使用するヒストグラムの例を示す説明図である。
【図10】改行裏ストロークの説明図である。
【図11】改行位置の判定処理を示すフローチャートである。
【図12】ストローク間の仮結合処理に用いる評価パラメータの説明図である。
【図13】ストローク間の仮結合処理に用いる評価パラメータの説明図である。
【図14】ストロークの仮結合処理の対象となる入力ストロークの例と評価パラメータの算出例を示す説明図である。
【図15】文字要素の外接矩形から標準文字サイズを推定する処理の説明図である。
【図16】斜め書きの手書き文字の文字要素への仮結合処理の一例を示す図である。
【図17】文字要素の再帰的な処理によって結合可能な手書き文字の一例を示す説明図である。
【図18】手書き文字を辞書内で探索する際に用いる2分木の一例を示す説明図である。
【符号の説明】
1…ペン、2…手書き文字入力装置、3…表示装置、4…CPU、6…記憶装置、21…手書き文字の入力面、61…手書き文字認識プログラム、62…辞書、611…筆記方向取得部、612…改行位置取得部、613…標準文字サイズ取得部、614…枠無し手書き文字列認識部、615…仮結合処理部、616…仮分割処理部、617…評価・探索処理部。
Claims (1)
- 手書き文字入力装置からストローク順に入力された複数ストローク群から成る複数の手書き文字列を認識する手書き文字認識方法であって、
前記複数ストローク群を対象として、
縦書きの場合はヒストグラムを用いて筆点分布度数が小さい部分をまたぐ左上方向の裏ストロークを、横書きの場合は左下方向の裏ストロークを改行位置候補に選定し、
さらに、前記ストローク群の中のストローク入力時刻において隣り合うストロークの終点から始点へのベクトルおよびそのベクトルの長さの平均を求め、前記選定された改行位置候補内のベクトルの長さと前記ベクトルの長さの平均を比較し、改行判定用の閾値を超えるベクトルの位置を改行位置として判定し、この改行位置の判定結果に従って前記複数ストローク群から成る手書き文字列を認識することを特徴とする手書き文字認識方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001183717A JP3897999B2 (ja) | 2001-06-18 | 2001-06-18 | 手書き文字認識方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001183717A JP3897999B2 (ja) | 2001-06-18 | 2001-06-18 | 手書き文字認識方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP22684297A Division JP3216800B2 (ja) | 1997-08-22 | 1997-08-22 | 手書き文字認識方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002063547A JP2002063547A (ja) | 2002-02-28 |
JP3897999B2 true JP3897999B2 (ja) | 2007-03-28 |
Family
ID=19023615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001183717A Expired - Fee Related JP3897999B2 (ja) | 2001-06-18 | 2001-06-18 | 手書き文字認識方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3897999B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105654082B (zh) * | 2014-11-12 | 2019-04-12 | 佳能株式会社 | 字符识别后处理方法、设备及包括该设备的图像拾取设备 |
CN114691009A (zh) * | 2022-03-14 | 2022-07-01 | 深圳汉王友基科技有限公司 | 将手写笔迹数据始终正向显示的方法、系统、装置及介质 |
-
2001
- 2001-06-18 JP JP2001183717A patent/JP3897999B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002063547A (ja) | 2002-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5687254A (en) | Searching and Matching unrecognized handwriting | |
EP1598770B1 (en) | Low resolution optical character recognition for camera acquired documents | |
US7302099B2 (en) | Stroke segmentation for template-based cursive handwriting recognition | |
US7630551B2 (en) | Method and system for line extraction in digital ink | |
EP0690408B1 (en) | Handwriting recognition system | |
JP2973944B2 (ja) | 文書処理装置および文書処理方法 | |
JP3452774B2 (ja) | 文字認識方法 | |
JP3345224B2 (ja) | パターン抽出装置、パターン再認識用テーブル作成装置及びパターン認識装置 | |
US20010041006A1 (en) | Ruled line extracting apparatus for extracting ruled line from normal document image and method thereof | |
JPH0844826A (ja) | 手書き入力照合方法 | |
KR20060049081A (ko) | 계층적 리스트 및 아웃라인을 파싱하기 위한 방법 및시스템 | |
JP3216800B2 (ja) | 手書き文字認識方法 | |
JP3917349B2 (ja) | 文字認識結果を利用して情報を検索する検索装置および方法 | |
JP2015099566A (ja) | 特徴算出装置、方法及びプログラム | |
JP2002063548A (ja) | 手書き文字認識方法 | |
JP2008225695A (ja) | 文字認識誤り修正装置およびプログラム | |
JP3232991B2 (ja) | 文字読取り方法及び住所読取り方法 | |
JP3897999B2 (ja) | 手書き文字認識方法 | |
US20030123730A1 (en) | Document recognition system and method using vertical line adjacency graphs | |
JP3179280B2 (ja) | 表を含む帳票処理装置 | |
JP4810853B2 (ja) | 文字画像切出装置、文字画像切出方法およびプログラム | |
JP4194020B2 (ja) | 文字認識方法、該方法の実行に用いるプログラム及び文字認識装置 | |
Bhardwaj et al. | An OCR based approach for word spotting in Devanagari documents | |
JP3374762B2 (ja) | 文字認識方法及びその装置 | |
AU764561B2 (en) | Method and apparatuses for handwriting recognition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20031211 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060915 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060920 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061012 |
|
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: 20061218 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061220 |
|
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: 20130105 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |