(57)【要約】【課題】一文字について１ストローク単位で手書き文字の認識を行う際、ストローク群ではなく画像として文字を認識することにより、手書き文字の描画入力誤り補正を手書き文字への上書き描画で行うこと。【解決手段】本発明の文字認識装置は、操作者の手書き入力を検知し、座標値を出力する座標入力処理部４０２と、前記座標値をストロークとして記憶する座標値メモリ４０３と、座標値メモリ４０３に記憶されているストロークを利用して手書き文字を認識する手書き文字認識処理部４０６と、手書き文字認識処理部４０６で得られた認識結果を記憶する結果メモリ４１１と、結果メモリ４１１に記憶されている認識結果に対して文字修正を行う文字修正処理部４０８と、手書き文字認識を実行するか、認識結果の文字修正を行うかを判別するコマンド判別処理部４０５と、前記各処理部の出力を表示部１０２に表示させる表示処理部４０４と、を含み構成される。【選択図】        図４
2005092257.tif 000002
【特許請求の範囲】
【請求項１】
操作者の手書き入力を検知し、座標値を出力する座標入力手段と、
前記座標値をストロークとして記憶するストローク記憶手段と、
該ストローク記憶手段に記憶されているストロークを利用して、操作者の１ストローク分の手書き描画入力ごとに文字画像に変換する手書き文字画像変換手段と、
該手書き文字画像変換手段で得られた前記文字画像を記憶する画像記憶手段と、
該画像記憶手段に記憶されている文字画像を読み出し、操作者の１ストローク分の手書き描画入力ごとの文字画像を認識する手書き画像一文字認識手段と、
該手書き画像一文字認識手段で得られた認識結果を記憶する結果記憶手段と、
該結果記憶手段に記憶されている認識結果に対して文字修正を行う文字修正手段と、
手書き文字認識を実行するか、認識結果の文字修正を行うかを判別するコマンド判別手段と、
前記各手段の出力を表示する表示手段と、を含み構成されていることを特徴とする文字認識装置。
【請求項２】
さらに、前記手書き画像一文字認識手段で得られた認識結果の送信先アプリケーションを指定する認識文字送信先指定手段と、
該認識文字送信先指定手段で指定された送信先アプリケーションを確定する確定手段と、
前記ストローク記憶手段、前記結果記憶手段および前記画像記憶手段を初期化するクリア手段と、を備えていることを特徴とする請求項１に記載の文字認識装置。
【請求項３】
前記認識文字送信先指定手段は、前記表示手段に表示されるアクティブウィンドウを所定のタイミングで監視し、自画面以外のアクティブウィンドウを検知した場合に、検知したアクティブウィンドウを送信先に指定した後に、前記アクティブウィンドウの監視を終了することを特徴とする請求項２に記載の文字認識装置。
【請求項４】
前記認識文字送信先指定手段は、前記表示手段に表示されるアクティブウィンドウを所定の時間間隔で監視し、自画面以外のアクティブウィンドウを検知した場合に、検知したアクティブウィンドウを送信先に指定することを特徴とする請求項２に記載の文字認識装置。
【請求項５】
前記確定手段は、前記手書き画像一文字認識手段からの初めてのデータ送信時には、前記結果記憶手段に記憶されている認識結果の一つである認識文字のみを送信し、前記手書き画像一文字認識手段からの二回目以降のデータ送信があるまでは文字後退コードを送信してから前記結果記憶手段に記憶されている認識結果の一つである認識文字のみを送信することを特徴とする請求項２〜４のいずれか一つに記載の文字認識装置。
【請求項６】
前記コマンド判別手段は、前記表示手段の所定の位置に表示された送信先指定ボタンの押下を検知した場合に前記認識文字送信先指定手段を作動させることを特徴とする請求項２〜５のいずれか一つに記載の文字認識装置。
【請求項７】
前記コマンド判別手段は、前記ストローク記憶手段に記憶されている座標の数が所定値以下の場合は前記確定手段を作動させ、前記ストローク記憶手段に記憶されている座標の数が所定値より多い場合は前記手書き画像一文字認識手段を作動させることを特徴とする請求項２〜５のいずれか一つに記載の文字認識装置。
【請求項８】
前記コマンド判別手段は、前記表示手段に表示された画像の所定領域を操作者が指示した場合に前記クリア処理手段を作動させることを特徴とする請求項２〜５のいずれか一つに記載の文字認識装置。
【請求項９】
前記画像の所定領域は、操作者が手書き文字を描画入力する領域の周辺部に所定の幅で表示されることを特徴とする請求項８に記載の文字認識装置。
【請求項１０】
前記表示手段は、前記手書き画像一文字認識手段によって得られる結果の１つである認識候補を操作者の１ストローク分の手書き描画入力ごとに画面表示することを特徴とする請求項１〜９のいずれか一つに記載の文字認識装置。
【請求項１１】
前記表示手段は、前記認識文字送信先指定手段で指定された送信先ウィンドウのタイトルを自画面のタイトル領域に表示することを特徴とする請求項１〜１０のいずれか一つに記載の文字認識装置。
【請求項１２】
操作者の手書き入力を検知し、座標値を出力する座標入力処理工程と、
前記座標値をストロークとして記憶するストローク記憶工程と、
該ストローク記憶工程で記憶されたストロークを利用して、操作者の１ストローク分の手書き描画入力ごとの文字画像に変換する手書き文字画像変換処理工程と、
該手書き文字画像変換処理工程で得られた文字画像を記憶する画像記憶工程と、
該画像記憶工程で記憶された手書き文字画像を読み出し、操作者の１ストローク分の手書き描画入力ごとの手書き文字を認識する手書き画像一文字認識処理工程と、
該手書き画像一文字認識処理工程で得られた認識結果を記憶する結果記憶工程と、
該結果記憶工程で記憶された認識結果に対して文字修正を行う文字修正処理工程と、
文字認識を実行するか、認識結果の文字修正を行うかを判別するコマンド判別処理工程と、
前記各工程での処理結果の出力を表示する表示処理工程と、を含むことを特徴とする文字認識方法。
【請求項１３】
さらに、前記手書き画像一文字認識処理工程での認識結果の送信先アプリケーションを指定する認識文字送信先指定処理工程と、
該認識文字送信先指定処理工程で指定された送信先アプリケーションを確定する確定処理工程と、
前記ストローク記憶工程、前記結果記憶工程および前記画像記憶工程で記憶された結果をクリアするクリア処理工程と、を備えていることを特徴とする請求項１２に記載の文字認識方法。
【請求項１４】
前記認識文字送信先指定処理工程は、前記表示処理工程で表示されるアクティブウィンドウを所定のタイミングで監視し、自画面以外のアクティブウィンドウを検知した場合に、検知したアクティブウィンドウを送信先に指定した後に、前記アクティブウィンドウの監視を終了することを特徴とする請求項１３に記載の文字認識方法。
【請求項１５】
前記認識文字送信先指定処理工程は、前記表示処理工程で表示されるアクティブウィンドウを所定の時間間隔で監視し、自画面以外のアクティブウィンドウを検知した場合に、検知したアクティブウィンドウを送信先に指定することを特徴とする請求項１３に記載の文字認識方法。
【請求項１６】
前記確定処理工程は、前記手書き画像一文字認識処理工程実行後の初めてのデータ送信時には、前記結果記憶工程で記憶された認識結果の一つである認識文字のみを送信し、前記手書き画像一文字認識処理工程における二回目以降のデータ送信があるまでは文字後退コードを送信してから前記結果記憶工程で記憶された認識結果の一つである認識文字のみを送信することを特徴とする請求項１３〜１５のいずれか一つに記載の文字認識方法。
【請求項１７】
前記コマンド判別処理工程は、前記表示処理工程で表示された画像の所定の位置に配置される送信先指定ボタンの押下を検知した場合に、前記認識文字送信先指定処理工程を実行させることを特徴とする請求項１３〜１６のいずれか一つに記載の文字認識方法。
【請求項１８】
前記コマンド判別処理工程は、前記ストローク記憶工程で記憶された座標の数が所定値以下の場合には次に前記確定処理工程を実行させ、前記ストローク記憶工程で記憶された座標の数が所定値より多い場合には次に前記手書き画像一文字認識処理工程を実行させることを特徴とする請求項１３〜１６のいずれか一つに記載の文字認識方法。
【請求項１９】
前記コマンド判別処理工程は、前記表示処理工程で表示される画像の所定領域を操作者が指示した場合に前記クリア処理を実行させることを特徴とする請求項１３〜１６のいずれか一つに記載の文字認識方法。
【請求項２０】
前記画像の所定領域は、操作者が手書き文字を描画入力する領域の周辺部に所定の幅で表示されることを特徴とする請求項１９に記載の文字認識方法。
【請求項２１】
前記表示処理工程は、前記手書き画像一文字認識処理工程で得られる結果の１つである認識候補を操作者の１ストローク分の手書き描画入力ごとに画面表示することを特徴とする請求項１２〜２０のいずれか一つに記載の文字認識方法。
【請求項２２】
前記表示処理工程は、前記認識文字送信先指定処理工程で指定された送信先ウィンドウのタイトルを自画面のタイトル領域に表示することを特徴とする請求項１２〜２１のいずれか一つに記載の文字認識方法。
【請求項２３】
請求項１２〜２２のいずれか一つに記載の文字認識方法をコンピュータに実行させることを特徴とする文字認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タブレットやマウスなどの座標入力装置を備え、操作者が手書き文字を入力する際、入力された１ストロークごとに画像として文字認識を行い、指定した送信先に認識結果および文字修正結果を送信する文字認識装置、この装置を用いた文字認識方法、および文字認識プログラムに関する。
【背景技術】
【０００２】
従来より、手書き文字認識、特にそのユーザインターフェースに関する技術が数多く提案されている。手書き文字認識のユーザインターフェースは、大きく分けて２種類存在する。その一つは、ある固定枠を設け、ユーザに一文字単位でその枠内に文字を記入させる方法（いわゆる固定枠手書き文字認識）であり、現在最も一般的な方法である。この方法は、一文字単位の切り出し処理が不要であり、切り出しミスによる誤認識がない。しかし、ユーザの負担が多く、使い難いインターフェースである。もう一つは、入力枠がなく、手書き領域内に自由に文字を書き、一文字切り出し処理を行なって、文字を認識する方法（いわゆる自由手書き認識）である。この方法は、一文字単位の切り出し処理による誤認識はあるものの、ユーザにとっては普通に鉛筆を走らせるのと同じ感覚で文字入力ができるメリットがある（下記特許文献１〜４を参照。）。
【０００３】
また、従来の代表的な認識エンジンとしては、ストローク型認識エンジンと画像型認識エンジンがある。ストローク型認識エンジンは、手書き文字の構成要素をストロークとして取り扱い、筆順などを認識の補助情報として利用することで認識率を向上させるものである。しかし、その反面、筆順を利用しているため、ユーザが間違った筆順で記入した場合、あるいは書き終えた手書き文字にストロークを追加した場合、誤認識するおそれがある。一方、画像型認識エンジンは、手書き文字の構成要素は必要とせず、文字の形状だけを認識するための情報として利用するため、ビットマップやｊｐｅｇなどの２値画像を認識するものである。この画像型認識エンジンは、筆順などの補助情報が利用できないので、ストローク型よりも認識率が悪いといわれていたが、近年様々なアルゴリズムが提案、改良され、ストローク型と変わらない認識率を得ている。
【０００４】
【特許文献１】特開平９−３１９５０３号公報
【特許文献２】特開２０００−７６３８０号公報
【特許文献３】特開２０００−９９２２３号公報
【特許文献４】特開２００１−１４１０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の文字認識方法において、特に前記固定枠手書き文字認識では、限られた枠の中に文字を描画し、文字ごとに確定や修正を行うユーザインターフェースが複雑な点に問題がある。例えば、前記固定枠手書き文字認識の代表的なものにＭｉｃｒｏｓｏｆｔ（Ｒ）社のＩＭＥがある。このＩＭＥに搭載されているＩＭＥパッドの手書きツールには、一文字について１ストローク単位で手書き文字を認識し、その候補をリストアップし選択すると、アプリケーションへ文字を送信できる機能がある反面、次のような問題点がある。まず、手書き文字の描画入力を誤った場合、戻すボタンか消去ボタンを押してから書き直さなければならない。また、リスト中から文字を選択しなければ確定できない。送信した文字がかな漢字変換状態となった場合には、アプリケーション側で確定作業が必要である。リスト中から文字を選ぶと次々に文字が追加送信されるため、送信文字の修正をアプリケーション側で行わなければならない。さらに、複数のボタンが配置されており、操作が複雑である。
【０００６】
本発明は、上述した従来技術による問題点を解消するため、一文字について１ストローク単位で手書き文字認識を行う際、ストローク群ではなく画像として文字を認識することにより、手書き文字の描画入力誤り補正を手書き文字への上書き描画で行うことが可能な文字認識装置、文字認識方法、および文字認識プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するため、請求項１の発明にかかる文字認識装置は、操作者の手書き入力を検知し、座標値を出力する座標入力手段と、前記座標値をストロークとして記憶するストローク記憶手段と、該ストローク記憶手段に記憶されているストロークを利用して、操作者の１ストローク分の手書き描画入力ごとに文字画像に変換する手書き文字画像変換手段と、該手書き文字画像変換手段で得られた文字画像を記憶する画像記憶手段と、該画像記憶手段に記憶されている文字画像を読み出し、操作者の１ストローク分の手書き描画入力ごとの文字画像を認識する手書き画像一文字認識手段と、該手書き画像一文字認識手段で得られた認識結果を記憶する結果記憶手段と、該結果記憶手段に記憶されている認識結果に対して文字修正を行う文字修正手段と、手書き文字認識を実行するか、認識結果の文字修正を行うかを判別するコマンド判別手段と、前記各手段の出力を表示する表示手段と、を含み構成されていることを特徴とする。
【０００８】
この請求項１に記載の発明によれば、一文字について１ストローク単位に手書き文字の認識を行う際、ストローク群ではなく画像として文字を認識することにより、手書き文字の描画入力誤り補正を手書き文字への上書き描画で行うことができる。
【０００９】
また、請求項２の発明にかかる文字認識装置は、請求項１に記載の発明において、さらに、前記手書き画像一文字認識手段で得られた認識結果の送信先アプリケーションを指定する認識文字送信先指定手段と、該認識文字送信先指定手段で指定された送信先アプリケーションを確定する確定手段と、前記ストローク記憶手段、前記結果記憶手段および前記画像記憶手段を初期化するクリア手段と、を備えていることを特徴とする。
【００１０】
この請求項２に記載の発明によれば、認識文字の送信先指定や、送信先への認識文字の送信、各記憶手段の初期化処理が可能になる。
【００１１】
また、請求項３にかかる文字認識装置は、請求項２に記載の発明において、前記認識文字送信先指定手段は、前記表示手段に表示されるアクティブウィンドウを所定のタイミングで監視し、自画面以外のアクティブウィンドウを検知した場合に、検知したアクティブウィンドウを送信先に指定した後に、前記アクティブウィンドウの監視を終了することを特徴とする。
【００１２】
この請求項３に記載の発明によれば、ユーザの所望するタイミングで認識文字情報の送信先を指定することができる。
【００１３】
また、請求項４にかかる文字認識装置は、請求項２に記載の発明において、前記認識文字送信先指定手段は、前記表示手段に表示されるアクティブウィンドウを所定の時間間隔で監視し、自画面以外のアクティブウィンドウを検知した場合に、検知したアクティブウィンドウを送信先に指定することを特徴とする。
【００１４】
この請求項４に記載の発明によれば、前記アクティブウィンドウが常に監視されているため、前記アクティブウィンドウが変わった際に自動的に文字情報の送信先を再指定することができる。
【００１５】
また、請求項５にかかる文字認識装置は、請求項２〜４のいずれか一つに記載の発明において、前記確定手段は、前記手書き画像一文字認識手段からの初めてのデータ送信時には、前記結果記憶手段に記憶されている認識結果の一つである認識文字のみを送信し、前記手書き画像一文字認識手段からの二回目以降のデータ送信があるまでは文字後退コードを送信してから前記結果記憶手段に記憶されている認識結果の一つである認識文字のみを送信することを特徴とする。
【００１６】
この請求項５に記載の発明によれば、認識文字を初めて確定した際はアプリケーションへ認識文字を追加送信し、２回目以降の確定では送信文字の訂正を行うために前回送信した文字を削除（Ｂａｃｋｓｐａｃｅ）した後に認識文字を送信することができる。
【００１７】
また、請求項６にかかる文字認識装置は、請求項２〜５のいずれか一つに記載の発明において、前記コマンド判別手段は、前記表示手段の所定の位置に表示された送信先指定ボタンの押下を検知した場合に前記認識文字送信先指定手段を作動させることを特徴とする。
【００１８】
この請求項６に記載の発明によれば、画面上に表示される送信先設定ボタンを押下することで、ユーザ所望のタイミングで認識文字の送信が可能になる。
【００１９】
また、請求項７にかかる文字認識装置は、請求項２〜５のいずれか一つに記載の発明において、前記コマンド判別手段は、前記ストローク記憶手段に記憶されている座標の数が所定値以下の場合は前記確定手段を作動させ、前記ストローク記憶手段に記憶されている座標の数が所定値より多い場合は前記手書き画像一文字認識手段を作動させることを特徴とする。
【００２０】
この請求項７に記載の発明によれば、認識候補一覧に表示された認識文字の第一候補の確定を簡易に行うことができる。
【００２１】
また、請求項８にかかる文字認識装置は、請求項２〜５のいずれか一つに記載の発明において、前記コマンド判別手段は、前記表示手段に表示された画像の所定領域を操作者が指示した場合に前記クリア処理手段を作動させることを特徴とする。
【００２２】
この請求項８に記載の発明によれば、画面表示の初期化、記憶手段の初期化などの初期化処理を、クリアボタン以外の表示手段上に表示された画像に対するクリック処理で行うことができる。
【００２３】
また、請求項９にかかる文字認識装置は、請求項８に記載の発明において、操作者が手書き文字を描画入力する領域の周辺部に所定の幅で表示されることを特徴とする。
【００２４】
この請求項９に記載の発明によれば、前記手書き文字描画領域の周辺部をクリックすることで、前記記憶手段の初期化処理を行うことができる。
【００２５】
また、請求項１０にかかる文字認識装置は、請求項１〜９のいずれか一つに記載の発明において、前記表示手段は、前記手書き画像一文字認識手段によって得られる結果の１つである認識候補を操作者の１ストローク分の手書き描画入力ごとに画面表示することを特徴とする。
【００２６】
この請求項１０に記載の発明によれば、認識候補の表示を１ストローク単位で行うことで、認識候補の選択性と視認性を向上することができる。
【００２７】
また、請求項１１にかかる文字認識装置は、請求項１〜１０のいずれか一つに記載の発明において、前記表示手段は、前記認識文字送信先指定手段で指定された送信先ウィンドウのタイトルを自画面のタイトル領域に表示することを特徴とする。
【００２８】
この請求項１１に記載の発明によれば、認識文字送信先のウィンドウタイトルを自画面のタイトルバーに表示することにより、認識文字の送信先を簡易に確認することができる。
【００２９】
また、請求項１２にかかる文字認識方法は、操作者の手書き入力を検知し、座標値を出力する座標入力処理工程と、前記座標値をストロークとして記憶するストローク記憶工程と、該ストローク記憶工程で記憶されたストロークを利用して、操作者の１ストローク分の手書き描画入力ごとの文字画像に変換する手書き文字画像変換処理工程と、該手書き文字画像変換処理工程で得られた文字画像を記憶する画像記憶工程と、該画像記憶工程で記憶された手書き文字画像を読み出し、操作者の１ストローク分の手書き描画入力ごとの手書き文字を認識する手書き画像一文字認識処理工程と、該手書き画像一文字認識処理工程で得られた認識結果を記憶する結果記憶工程と、該結果記憶工程で記憶された認識結果に対して文字修正を行う文字修正処理工程と、文字認識を実行するか、認識結果の文字修正を行うかを判別するコマンド判別処理工程と、前記各工程での処理結果の出力を表示する表示処理工程と、を含むことを特徴とする。
【００３０】
この請求項１２に記載の発明によれば、一文字について１ストローク単位に手書き文字の認識を行う際、ストローク群ではなく画像として文字を認識することにより、手書き文字の描画入力誤り補正を手書き文字への上書き描画で行うことができる。
【００３１】
また、請求項１３にかかる文字認識方法は、請求項１２に記載の発明において、さらに、前記手書き画像一文字認識処理工程での認識結果の送信先アプリケーションを指定する認識文字送信先指定処理工程と、該認識文字送信先指定処理工程で指定された送信先アプリケーションを確定する確定処理工程と、前記ストローク記憶工程、前記結果記憶工程および前記画像記憶工程で記憶された結果をクリアするクリア処理工程と、を備えていることを特徴とする。
【００３２】
この請求項１３に記載の発明によれば、認識文字の送信先指定や、送信先への認識文字の送信、記憶された認識文字のクリア処理が可能になる。
【００３３】
また、請求項１４にかかる文字認識方法は、請求項１３に記載の発明において、前記認識文字送信先指定処理工程は、前記表示処理工程で表示されるアクティブウィンドウを所定のタイミングで監視し、自画面以外のアクティブウィンドウを検知した場合に、検知したアクティブウィンドウを送信先に指定した後に、前記アクティブウィンドウの監視を終了することを特徴とする。
【００３４】
この請求項１４に記載の発明によれば、ユーザの所望するタイミングで認識文字情報の送信先を指定することができる。
【００３５】
また、請求項１５にかかる文字認識方法は、請求項１３に記載の発明において、前記認識文字送信先指定処理工程は、前記表示処理工程で表示されるアクティブウィンドウを所定の時間間隔で監視し、自画面以外のアクティブウィンドウを検知した場合に、検知したアクティブウィンドウを送信先に指定することを特徴とする。
【００３６】
この請求項１５に記載の発明によれば、前記アクティブウィンドウが常に監視されているため、前記アクティブウィンドウが変わった際に自動的に文字情報の送信先を再指定することができる。
【００３７】
また、請求項１６にかかる文字認識方法は、請求項１３〜１５のいずれか一つに記載の発明において、前記確定処理工程は、前記手書き画像一文字認識処理工程実行後の初めてのデータ送信時には、前記結果記憶工程で記憶された認識結果の一つである認識文字のみを送信し、前記手書き画像一文字認識処理工程における二回目以降のデータ送信があるまでは文字後退コードを送信してから前記結果記憶工程で記憶された認識結果の一つである認識文字のみを送信することを特徴とする。
【００３８】
この請求項１６に記載の発明によれば、認識文字を初めて確定した際はアプリケーションへ認識文字を追加送信し、２回目以降の確定では送信文字の訂正を行うために前回送信した文字を削除（Ｂａｃｋｓｐａｃｅ）した後に認識文字を送信することができる。
【００３９】
また、請求項１７にかかる文字認識方法は、請求項１３〜１６のいずれか一つに記載の発明において、前記コマンド判別処理工程は、前記表示処理工程で表示された画像の所定の位置に配置される送信先指定ボタンの押下を検知した場合に、前記認識文字送信先指定処理工程を実行させることを特徴とする。
【００４０】
この請求項１７に記載の発明によれば、画面上に表示される送信先設定ボタンを押下することで、ユーザ所望のタイミングで認識文字の送信が可能になる。
【００４１】
また、請求項１８にかかる文字認識方法は、請求項１３〜１６のいずれか一つに記載の発明において、前記コマンド判別処理工程は、前記ストローク記憶工程で記憶された座標の数が所定値以下の場合には次に前記確定処理工程を実行させ、前記ストローク記憶工程で記憶された座標の数が所定値より多い場合には次に前記手書き画像一文字認識処理工程を実行させることを特徴とする。
【００４２】
この請求項１８に記載の発明によれば、認識候補一覧に表示された認識文字の第一候補の確定を簡易に行うことができる。
【００４３】
また、請求項１９にかかる文字認識方法は、請求項１３〜１６のいずれか一つに記載の発明において、前記コマンド判別処理工程は、前記表示処理工程で表示される画像の所定領域を操作者が指示した場合に前記クリア処理を実行させることを特徴とする。
【００４４】
この請求項１９に記載の発明によれば、画面表示の初期化、記憶手段の初期化などの初期化処理を、クリアボタン以外の表示手段上に表示された画像に対するクリック処理で行うことができる。
【００４５】
また、請求項２０にかかる文字認識方法は、請求項１９に記載の発明において、前記画像の所定領域は、操作者が手書き文字を描画入力する領域の周辺部に所定の幅で表示されることを特徴とする。
【００４６】
この請求項２０に記載の発明によれば、前記手書き文字描画領域の周辺部をクリックすることで、前記初期化処理を行うことができる。
【００４７】
また、請求項２１にかかる文字認識方法は、請求項１２〜２０のいずれか一つに記載の発明において、前記表示処理工程は、前記手書き画像一文字認識処理工程で得られる結果の１つである認識候補を操作者の１ストローク分の手書き描画入力ごとに画面表示することを特徴とする。
【００４８】
この請求項２１に記載の発明によれば、認識候補の表示を１ストローク単位で行うことで、認識候補の選択性と視認性を向上することができる。
【００４９】
また、請求項２２にかかる文字認識方法は、請求項１２〜２１のいずれか一つに記載の発明において、前記表示処理工程は、前記認識文字送信先指定処理工程で指定された送信先ウィンドウのタイトルを自画面のタイトル領域に表示することを特徴とする。
【００５０】
この請求項２１に記載の発明によれば、認識文字送信先のウィンドウタイトルを自画面のタイトルバーに表示することにより、認識文字の送信先を簡易に確認することができる。
【００５１】
また、請求項２３にかかる文字認識プログラムは、請求項１２〜２２のいずれか一つに記載の文字認識方法をコンピュータに実行させることを特徴とする。
【００５２】
この請求項２３に記載の発明によれば、請求項１２〜２２のいずれか一つに記載の文字認識方法をコンピュータに実行させることができる。
【発明の効果】
【００５３】
本発明にかかる文字認識装置、文字認識方法、および文字認識プログラムによれば、一文字について１ストローク単位で手書き文字の認識を行う際、ストローク群ではなく画像として文字を認識することにより、手書き文字の描画入力誤り補正を手書き文字への上書き描画で行うことができるという効果を奏する。
【発明を実施するための最良の形態】
【００５４】
以下に添付図面を参照して、本発明にかかる文字認識装置、文字認識方法、および文字認識プログラムの好適な実施の形態を詳細に説明する。
【００５５】
（実施の形態）
図１は、本発明の文字認識装置の概観図である。この文字認識装置は、座標入力部１０１を備えた表示装置１００と制御装置１１０とにより構成される。表示装置１００としては、例えば図２に示す図表に記載されている各機能を備えている装置を用いることができる。座標入力部１０１としては、マウスやタブレットを用いてもよい。また、表示装置１００としては、ＣＲＴやプロジェクタなどを用いても構わない。座標入力部１０１は、図１に示すように、操作者が指あるいはペンなどの指示部１２０を使って座標入力部１０１へ入力した信号を座標値として検出し、それを制御装置１１０へ送る。制御装置１１０は、送り込まれた座標値の集合（以下、ストロークという）に対して所定の処理を行い、得られた処理内容を表示装置１００の表示部１０２に表示する。なお、表示装置１００において、座標入力部１０１と表示部１０２は同一画面上に配置されているため、この二つをまとめて手書き入力画面と呼ぶ場合がある。また、制御装置１１０における各処理の結果得られた情報を表示部１０２に表示したものをオブジェクトと呼ぶことにする。
【００５６】
図３は、表示部１０２に座標入力部１０１として表示されるユーザインターフェース３００の一例を示す図である。このユーザインターフェース３００は、ユーザの手書き文字の入力を受け付ける手書き文字描画領域３０１、手書き文字認識処理の結果の一つである認識候補（手書き文字認識実行直後は第一候補を認識文字と設定）を縦方向に並べてリスト表示する認識候補一覧領域３０２、手書き文字描画領域３０１周辺に位置する画面クリア領域３０３、送信先を再選択する送信先再選択ボタン３０４、プログラムを終了する終了ボタン３０５、および送信先アプリケーションのタイトルを表示するタイトル領域３０６の６つの領域から構成される。
【００５７】
図４は、制御装置１１０の概略構成を示すブロック図である。図中、太線の矢印は、各処理後のデータの流れを示しており、細線の矢印は各手段間の信号の入出力またはメモリへのデータアクセスを示している。
【００５８】
文字データ送信先指定処理部４０１は、座標入力部１０１から入力情報を認識すると、この結果（認識文字）をどのアプリケーションへ送信するかを指定するための、文字データ送信先指定処理を行う。この処理は、文字データ送信先指定処理をプログラム起動時、および、後述するコマンド判別処理部４０５から処理データを渡された場合にのみ行うのが原則であるが、バックグラウンドで文字データ送信先指定処理を繰り返し実行していき、送信先を自動的に指定することも可能である。文字データ送信先指定処理部４０１において送信先が指定されると、座標入力処理部４０２は、座標入力部１０１から出力された座標値を順次座標値メモリ４０３に記憶させると同時に表示処理部４０４へ送る。表示処理部４０４は、取得した座標値の前後の座標値を線分で結び、表示部１０２に出力する。また、座標入力処理部４０２は、１ストローク分の座標値を得ると、これをコマンド判別処理部４０５へ送る。
【００５９】
コマンド判別処理部４０５は、ユーザインターフェース３００への入力からユーザの所望する処理の判別を行う。すなわち、手書き文字描画領域３０１にストロークを描画し手書き文字認識を選択したのか、手書き文字描画領域３０１で確定を選択したのか、認識候補一覧領域３０２で認識候補を選択したのか、画面クリア領域３０３で画面およびメモリの初期化を選択したのか、送信先の再指定を選択したのか、プログラムの終了を選択したのかを判別する。この判別結果に基づき、次の動作を行う手段を選択する。例えば、手書き文字描画領域３０１にストロークを描画し手書き文字認識を選択した場合は、手書き文字認識処理部４０６を選択する。手書き文字描画領域３０１で確定を選択した場合は、確定処理部４０７を選択する。認識候補一覧領域３０２で認識候補を選択した場合は、文字修正処理部４０８を選択する。画面クリア領域３０３で画面およびメモリの初期化を選択した場合は、クリア処理部４０９を選択する。送信先の再指定を選択した場合は、文字データ送信先指定処理部４０１を選択する。プログラムの終了を選択した場合は、処理終了になる。なお、いずれにも該当しない場合は、再度座標入力処理部４０２での処理が行われる。
【００６０】
手書き文字認識処理部４０６では、表示処理部４０４によって手書き文字描画領域３０１に描画された手書き文字を画像として画像メモリ４１０に記憶し、同画像を認識し、結果を結果メモリ４１１へ記憶するとともに表示処理部４０４へ送る。確定処理部４０７では、結果メモリ４１１に記憶されている認識文字を送信先アプリケーションへ送信し、同時に表示処理部４０４へも送信する。文字修正処理部４０８では、認識候補一覧領域３０２内で選択された文字を認識文字として把握し、これを確定処理部４０７と表示処理部４０４へ送る。クリア処理部４０９は、各メモリに記憶されたデータを消去する。最後に、表示処理部４０４では、手書き文字描画領域３０１、認識候補一覧領域３０２および画面クリア領域３０３の描画のクリアを行う、あるいは、各処理部で得られた結果を各メモリから取得し、各領域へ表示を行う。そして、座標入力処理部４０２からの新たな指示を待つ。
【００６１】
以下に、本発明の文字認識装置を用いて行う文字認識方法について詳細に説明する。まず、文字データ送信先指定処理について説明する。図５は、文字データ送信先指定処理の手順を示すフローチャートである。この処理は、プログラムの起動直後、あるいはコマンド処理で図３に示した送信先再選択ボタン３０４が押下された場合に、文字データ送信先指定処理部４０１において開始される。まず、自ウィンドウ（自画面、つまり図３に示した画面）以外のアクティブなウィンドウの検索を開始する（ステップＳ５０１）。自ウィンドウがアクティブの場合は、他のウィンドウがアクティブになるまで検索を繰り返す。次に、送信先ウィンドウの設定を行う（ステップＳ５０２）。具体的には、ユーザが図６に示すようにユーザインターフェース３００の「無題−メモ帳」というタイトルのアプリケーションをアクティブにすると、当該ウィンドウハンドルを取得し、同ハンドルを送信先ウィンドウとして設定する。その後、座標入力処理、表示処理へ移る。なお、詳しくは後述するが、表示処理では図６のように自ウィンドウのタイトル領域送信先アプリケーションのタイトル文字、例えば「無題−メモ帳」を表示する。
【００６２】
次に、座標入力処理について説明する。この座標入力処理は、座標入力処理部４０２によって実行される。表示装置１００の座標入力部１０１を制御するドライバは、座標を検知すると、Ｗｉｎｄｏｗｓ（Ｒ）のマウスイベントへの対応付けを行っている。すなわち、操作者が指やペンなどの指示部１２０で座標入力部１０１に触れることにより、マウス左ボタンのＤＯＷＮイベントに対応付ける。また、操作者が指示部１２０で座標入力部１０１に触れた状態のまま移動することにより、マウス左ボタンのＭＯＶＥイベントに対応付ける。さらに、操作者が指示部１２０を座標入力部１０１から離すことにより、マウス左ボタンのＵＰイベントに対応付ける。このようにして、座標入力部１０１を制御するドライバは、得られた座標値とマウスイベントの情報を座標入力処理部４０２に対して送ることができるようになる。
【００６３】
図７は、座標入力処理の手順を示すフローチャートである。座標入力処理部４０２は常にマウスイベント（イベント）を監視している。そして、マウスイベントの有無を検出する（ステップＳ７０１）。マウスイベントがない場合（ステップＳ７０１：Ｎｏ）は、マウスイベントの監視でループし続ける。手書き入力画面でマウスイベントがあった場合（ステップＳ７０１：Ｙｅｓ）は、座標値を座標値メモリ４０３に保存する（ステップＳ７０２）。そして、ＵＰイベントか否かの検出を行う（ステップＳ７０３）。ＵＰイベントでない場合（ステップＳ７０３：Ｎｏ）は、ステップＳ７０１へ戻り、処理を続行する。ＵＰイベントである場合（ステップＳ７０３：Ｙｅｓ）は、コマンド処理へ移行する（ステップＳ７０４）。なお、ステップＳ７０２において座標値メモリ４０３に保存する座標値は、図８に示すように、手書き文字描画領域３０１においてマウスのＤＯＷＮからＭＯＶＥを経てＵＰまでのイベントで得られた座標値群を１ストロークとして記憶する。ここで、ストローク単位を操作者に明示するために、図８に示すように各座標点間を直線で結び表示することが一般的である。そして、座標値メモリ４０３に座標値を保存させる一方で、表示処理へ移行し（ステップＳ７０５）、表示部１０２に線分を表示することになる。
【００６４】
ここで、図９に座標値メモリ４０３の構造について示す。座標値メモリ４０３にはマウスのＤＯＷＮからＵＰまでに得られた座標値がすべて記憶されている。ただし、ＤＯＷＮおよびＵＰイベントは１回ずつしか発生しないため、図９の座標値１がＤＯＷＮイベント時の座標値、座標値ｎがＵＰイベント時の座標値であり、その他はＭＯＶＥイベント時の座標値ということになる。
【００６５】
次に、コマンド判別処理について説明する。この処理は、前記座標入力処理後、コマンド判別処理部４０５によって実行される。図１０は、コマンド判別処理の手順を示すフローチャートである。まず、手書き文字描画領域へ入力があったか否かを検出する（ステップＳ１００１）。入力があった場合（ステップＳ１００１：Ｙｅｓ）は、ステップＳ１００２へ進む。入力がない場合（ステップＳ１００１：Ｎｏ）は、ステップＳ１００３へ進む。
【００６６】
ステップＳ１００１において入力があった場合は（ステップＳ１００１：Ｙｅｓ）、座標値メモリ４０３に記憶されている座標値が所定値以上の値であるか否かを検出する（ステップＳ１００２）。当該座標値が所定値以上の値である場合（ステップＳ１００２：Ｙｅｓ）は、手書き文字認識処理へ移行する。一方、当該座標値が所定値以上の値でない場合（ステップＳ１００２：Ｎｏ）は、確定処理へ移行する。ここで、例えば、図９に示した例では座標の数はｎ個である。ｎが所定値以上であった場合、座標値メモリ４０３に記憶されている座標群は手書き文字を構成する１ストロークであると判断し、この後手書き文字認識処理へ移行する。一方、ｎが所定値以上でなかった場合、座標値メモリ４０３に記憶されている座標群は手書き文字描画領域をクリックした動作であると判断し、この後確定処理へ移行する。
【００６７】
ステップＳ１００１において手書き文字描画領域への入力がなかった場合（ステップＳ１００１：Ｎｏ）は、認識候補一覧領域への入力があったか否かを検出する（ステップＳ１００３）。認識候補一覧領域への入力があった場合（ステップＳ１００３：Ｙｅｓ）は、表示した認識候補のいずれかをユーザが選択したとみなし、この後文字修正処理へ移行する。認識候補一覧領域への入力がなかった場合（ステップＳ１００３：Ｎｏ）は、ステップＳ１００４へ進む。
【００６８】
ステップＳ１００３において認識候補一覧領域への入力がなかった場合は、画面クリア領域への入力があったか否かを検出する（ステップＳ１００４）。画面クリア領域への入力があった場合（ステップＳ１００４：Ｙｅｓ）は、メモリおよび画面の消去をユーザが選択したとみなし、この後クリア処理へ移行する。画面クリア領域への入力がなかった場合（ステップＳ１００４：Ｎｏ）は、ステップＳ１００５へ進む。
【００６９】
ステップＳ１００４において画面クリア領域への入力がなかった場合（ステップＳ１００４：Ｎｏ）は、送信先再選択ボタンが押下されたか否かを検出する（ステップＳ１００５）。送信先再選択ボタンが押下された場合（ステップＳ１００５：Ｙｅｓ）は、ユーザが送信先を再選択すると判断し、この後文字データ送信先指定処理へ移行する。送信先再選択ボタンが押下されなかった場合（ステップＳ１００５：Ｎｏ）は、ステップＳ１００６へ進む。
【００７０】
ステップＳ１００５において送信先再選択ボタンが押下されなかった場合（ステップＳ１００５：Ｎｏ）は、終了ボタンが押下されたか否かを検出する（ステップＳ１００６）。終了ボタンが押下された場合（ステップＳ１００６：Ｙｅｓ）は、ユーザがプログラムの終了を選択したとみなし、プログラムを終了する。終了ボタンが押下されなかった場合（ステップＳ１００６：Ｎｏ）は、いずれの処理にも該当しないと判断し、この後座標入力処理へ戻る。
【００７１】
以上述べたように、コマンド判別処理からの移行先は、手書き文字認識処理、確定処理、文字修正処理、クリア処理、文字データ送信先指定処理、終了および座標入力処理の７つになる。文字データ送信先指定処理、座標入力処理および終了処理については説明済みであるので、以下に、残りの４つの処理について説明する。
【００７２】
まず、手書き文字認識処理について説明する。この処理は、手書き文字認識処理部４０６によって実行される。図１１は、手書き文字認識処理の手順を示すフローチャートである。まず、ｒｌａｇが０であるか否かを検出する（ステップＳ１１０１）。なお、ｒｆｌａｇは、手書き文字認識処理後に確定処理が行われるまでは０を、確定処理が行われ、次の文字の手書き文字認識処理が行われるまでは１を値として持つフラグである。すなわち、次の文字の手書き文字認識処理を開始するかどうかを示すフラグである。ｒｆｌａｇ検出の結果、ｒｆｌａｇが０でない場合（ステップＳ１１０１：Ｎｏ）は、次の文字の手書き文字認識処理を開始すると判断し、ｒｆｌａｇを０に設定するとともに、結果メモリ４１１を初期化した後（ステップＳ１１０２）、ステップＳ１１０３へ進む。ｒｆｌａｇが０の場合（ステップ１１０１：Ｙｅｓ）は、現在の文字にストロークが追加されたと判断し、結果メモリ４１１の初期化は行わず、そのままステップＳ１１０３へ進む。
【００７３】
次に、手書き文字描画領域の線画を画像記憶する（ステップＳ１１０３）。この画像記憶工程では、表示処理によって手書き描画領域に線分で描画した手書き文字が画像として画像メモリ４１０に記憶される。以降、記憶された画像を手書き文字画像と呼ぶことにする。そして、画像メモリ４１０を参照し、手書き文字画像を読み出し（ステップＳ１１０４）、認識エンジンに画像を渡し、認識エンジンからの出力である認識文字および認識候補を結果メモリ４１１に記憶させる（ステップＳ１１０５）。なお、認識エンジンは、これまでに様々な手法が提案されており、画像型認識エンジンであればいずれの認識エンジンを利用しても構わない。また、結果メモリ４１１に記憶される認識文字および認識候補の構造の一例を図１２に示す。この後、表示処理へ移行する。
【００７４】
図１３−１〜図１３−３は、手書き文字認識処理を説明するための図である。図１３−１に示すように、ユーザインターフェース３００の手書き文字描画領域３０１へストロークを描画すると、即座に手書き文字認識処理を実行し、認識候補一覧領域３０２に認識候補をリストアップする。認識候補一覧領域３０２の表示は、上から第一候補、第二候補、・・・第十候補の順であり、手書き文字認識処理直後は第一候補が選択状態となる。続いて、図１３−２に示すようにストロークを追加すると、即座に手書き文字認識処理を実行し、認識候補一覧領域３０２のリストが更新される。さらに、図１３−３に示すようにストロークを追加していくと、認識候補一覧領域３０２のさらなる更新が行われる。
【００７５】
また、手書き文字描画領域３０１の一度描画した手書き文字上にストロークを追加して再認識することもできる。例えば、図１４−１に示すように、手書き文字描画領域３０１にひらがなの「て」を書いたつもりが、認識候補一覧領域３０２に「て」が表示されなかったとする。従来方式であれば、画面をクリアするか、Ｕｎｄｏ処理のようにストロークを１本消すといった処理が必要となり、ユーザは対応するボタンを押してから書き直さなければならなかった。しかし、本発明では、図１４−２に示すように、手書き文字描画領域３０１の手書き文字上に上書きでストロークを追加するだけで、認識候補一覧領域３０２に所望の文字「て」を出力できる。
【００７６】
次に、文字修正処理について説明する。この処理は、文字修正処理部４０８により実行される。図１５は、この文字修正処理の手順を示すフローチャートである。図１３−３に示した状態で後述する確定処理を実行すると、図１６−１に示すような画面になる。ここではひらがなの「あ」が選択され、送信先アプリケーションに送られたが、これをひらがなの「お」に修正したい場合は図１６−２に示すように認識候補一覧領域３０２で認識候補の「お」をクリックする。この処理は、前記コマンド判別処理において認識候補一覧領域３０２内がクリックされたことで判断できる。文字修正処理では、まず、どの認識候補が選択されたかを選定する（ステップＳ１５０１）。この工程では、座標値メモリ４０３に記憶されている座標値を参照し、クリックされた位置を調べ、その位置が認識候補一覧領域３０２を１０等分したうちの何番目に相当するかを算出する。図１６−２では、３番目ということになる。そして、結果メモリ４１１に記憶されている認識候補を参照し、３番目の文字を取り出し、これを変更後の認識文字として結果メモリ４１１に記憶する（ステップＳ１５０２）。このようにして、結果メモリ４１１に記憶されている認識文字を「あ」から「お」へ修正することができる。この後、修正した結果を送信先アプリケーションに送信するために確定処理へ移行するとともに、認識候補一覧領域３０２の選択状態の表示を「あ」から「お」へ変更するために表示処理へ移行する。
【００７７】
次いで、確定処理について説明する。この処理は、確定処理部４０７により実行される。図１７は、確定処理の手順を示すフローチャートである。この確定処理は、コマンド処理で手書き文字描画領域３０１をユーザがクリックした場合、あるいは文字修正処理で認識候補一覧領域３０２内の認識候補のいずれかが選択され、結果メモリ４１１の認識文字が修正された場合に実行される。まず、ｒｆｌａｇが０か否かを検出する（ステップＳ１７０１）。ｒｆｌａｇが０の場合（ステップＳ１７０１：Ｙｅｓ）は、手書き文字認識処理後初めての確定処理であるので、ｒｆｌａｇを１に設定し、画像メモリを初期化した後（ステップＳ１７０２）、ステップＳ１７０４へ進む。一方、ｒｆｌａｇが０でない場合（ステップＳ１７０１：Ｎｏ）は、以前に確定処理が１度以上行われているため、送信先の文字の修正（文字の置換）であると判断し、文字の削除（Ｂａｃｋｓｐａｃｅ）を送信先アプリケーションに送信した後（ステップ１７０３）、ステップＳ１７０４へ進む。そして、結果メモリ４１１に記憶されている認識文字を送信先アプリケーションへ送信する（ステップＳ１７０４）。この後、表示処理へ移行する。
【００７８】
この確定処理を具体例を用いて説明する。図１８−１に示したように確定処理を実行すると、手書き文字認識処理後初めての確定処理であるので、図１８−２に示すように送信先アプリケーションに結果メモリ４１１内の認識文字を送信する。次に、図１６−２に示したように、認識候補一覧領域３０２から認識候補を選択し、「あ」を「お」に修正すると、図１８−２に示したようにすでに出力されている「あ」を削除し、図１９−１、図１９−２に示すように「お」を送信し直す。なお、従来方法では、図１９−２に表示される文字は「あお」となってしまう。
【００７９】
次に、クリア処理について説明する。この処理は、クリア処理部４０９によって実行される。図２０は、このクリア処理の手順を示すフローチャートである。クリア処理は、メモリの初期化および画面の初期化を行う。ただし、実際には画面の初期化は後述の表示処理に委ねられる。まず、フラグｒｆｌａｇを０に設定する（ステップＳ２００１）。この工程は、手書き文字認識処理および確定処理で誤作動が起こらないようにするためのものである。次に、座標値メモリ４０３、画像メモリ４１０および結果メモリ４１１に記憶されているデータを削除し、各メモリの初期化を行う（ステップＳ２００２）。この後、表示処理へ移行する。
【００８０】
続いて、表示処理について説明する。この処理は、表示処理部４０４によって実行される。図２１は、この表示処理の手順を示すフローチャートである。表示処理は、座標入力処理、手書き文字認識処理、文字修正処理、確定処理、クリア処理および文字データ送信先指定処理に続いて実行されることになる。座標入力処理から表示処理に移行した場合は、座標値メモリ４０３に記憶されている座標値を参照し、各座標間（図９に示した座標値１（ｘ１，ｙ１）から座標値２（ｘ２，ｙ２），座標値２（ｘ２，ｙ２）から座標値３（
ｘ３，ｙ３），・・・）を線分で結び表示部１０２に表示する（ステップＳ２１０１）。
また、手書き文字認識処理から表示処理に移行した場合は、認識候補一覧領域の認識候補文字を全て消去し（ステップＳ２１０２）、新たに認識した結果である認識候補を結果メモリ４１１から読み出して表示部１０２に表示する（ステップＳ２１０３）。そして、座標値メモリ４０３を次のストローク入力に備えて初期化する（ステップＳ２１０４）。文字修正処理から表示処理に移行した場合は、認識候補一覧領域の過去に選択された文字を解除し、新たな文字を選択可能な状態にして表示部１０２に表示する（ステップＳ２１０５）。そして、座標値メモリ４０３を初期化する（ステップＳ２１０４）。
【００８１】
確定処理から表示処理に移行した場合は、手書き文字描画領域の描画をクリアする（ステップＳ２１０６）。そして、座標値メモリ４０３を初期化する（ステップＳ２１０４）。クリア処理から表示処理に移行した場合は、手書き文字描画領域の描画をクリアし（ステップＳ２１０７）、続けて認識候補一覧領域の認識候補文字を全て消去する（ステップＳ２１０８）。文字データ送信先指定処理から表示処理に移行した場合は、タイトル領域に送信先アプリケーションのタイトル文字を表示する（ステップＳ２１０９）。この後、再度座標入力処理へ移行する（ステップＳ２１１０）。なお、この表示処理における文字の表示方法は、ＶｉｓｕａｌＢａｓｉｃ（Ｒ）に代表されるようなＴｅｘｔＢｏｘあるいはＬｉｓｔＢｏｘなどで行う。
【００８２】
次に、この表示処理で行われる表示部１０２の画面初期化イメージを図２２−１，図２２−２を用いて説明する。まず、図２２−１の画面クリア領域３０３をクリックすると、前記コマンド処理工程でクリア処理が選択されたと判断し、前記クリア処理の工程でフラグおよびメモリの初期化を行う。次に、前記表示処理で手書き文字描画領域３０１および認識候補一覧領域３０２に描かれた線分および文字を消去すると、図２２−２に示すように画面的にも初期化された状態となる。
【００８３】
以上説明したように、文字認識装置、文字認識方法、および文字認識プログラムによれば、一文字について１ストローク単位で手書き文字の認識を行う際、ストローク群ではなく画像として文字を認識することにより、手書き文字の描画入力誤り補正を手書き文字への上書き描画で行うことができる。
【００８４】
なお、本実施の形態で説明した文字認識法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【産業上の利用可能性】
【００８５】
以上のように、本発明にかかる文字認識装置、文字認識方法、および文字認識プログラムは、表示部と一体化された入力部に文字などを入力できる文字入力装置に有用であり、特に、文字入力が必要な各種コンピュータなどに適している。
【図面の簡単な説明】
【００８６】
【図１】本発明の文字認識装置の概観図である。
【図２】本発明の文字認識装置に用いる表示装置が備える各機能を示す図表である。
【図３】表示部に座標入力部として表示されるユーザインターフェースの一例を示す図である。
【図４】制御装置の概略構成を示すブロック図である。
【図５】文字データ送信先指定処理の手順を示すフローチャートである。
【図６】ユーザインターフェース上で送信先ウィンドウの設定を行う場合を説明するための図である。
【図７】座標入力処理の手順を示すフローチャートである。
【図８】座標値メモリに記憶する座標値のイメージを示す図である。
【図９】座標値メモリの構造を示す図である。
【図１０】コマンド判別処理の手順を示すフローチャートである。
【図１１】手書き文字認識処理の手順を示すフローチャートである。
【図１２】結果メモリに記憶される認識文字および認識候補の構造の一例を示す図である。
【図１３−１】手書き文字認識処理を説明するための図である。
【図１３−２】手書き文字認識処理を説明するための図である。
【図１３−３】手書き文字認識処理を説明するための図である。
【図１４−１】手書き文字認識処理を説明するための図である。
【図１４−２】手書き文字認識処理を説明するための図である。
【図１５】文字修正処理の手順を示すフローチャートである。
【図１６−１】文字修正処理を説明するための図である。
【図１６−２】文字修正処理を説明するための図である。
【図１７】確定処理の手順を示すフローチャートである。
【図１８−１】確定処理を説明するための図である。
【図１８−２】確定処理を説明するための図である。
【図１９−１】確定処理を説明するための図である。
【図１９−２】確定処理を説明するための図である。
【図２０】クリア処理の手順を示すフローチャートである。
【図２１】表示処理の手順を示すフローチャートである。
【図２２−１】表示処理で行われる表示部の画面初期化を説明するための図である。
【図２２−２】表示処理で行われる表示部の画面初期化を説明するための図である。
【符号の説明】
【００８７】
１００  表示装置
１０１  座標入力部
１０２  表示部
１１０  制御装置
３００  ユーザインターフェース
３０１  手書き文字描画領域
３０２  認識候補一覧領域
３０３  画面クリア領域
３０４  送信先再選択ボタン
３０５  終了ボタン
３０６  タイトル領域
４０１  文字データ送信先指定処理部
４０２  座標入力処理部
４０３  座標値メモリ
４０４  表示処理部
４０５  コマンド判別処理部
４０６  手書き文字認識処理部
４０７  確定処理部
４０８  文字修正処理部
４０９  クリア処理部
４１０  画像メモリ
４１１  結果メモリ
【図１】
2005092257.tif 000003
【図２】
2005092257.tif 000004
【図３】
2005092257.tif 000005
【図４】
2005092257.tif 000006
【図５】
2005092257.tif 000007
【図６】
2005092257.tif 000008
【図７】
2005092257.tif 000009
【図８】
2005092257.tif 000010
【図９】
2005092257.tif 000011
【図１０】
2005092257.tif 000012
【図１１】
2005092257.tif 000013
【図１２】
2005092257.tif 000014
【図１３−１】
2005092257.tif 000015
【図１３−２】
2005092257.tif 000016
【図１３−３】
2005092257.tif 000017
【図１４−１】
2005092257.tif 000018
【図１４−２】
2005092257.tif 000019
【図１５】
2005092257.tif 000020
【図１６−１】
2005092257.tif 000021
【図１６−２】
2005092257.tif 000022
【図１７】
2005092257.tif 000023
【図１８−１】
2005092257.tif 000024
【図１８−２】
2005092257.tif 000025
【図１９−１】
2005092257.tif 000026
【図１９−２】
2005092257.tif 000027
【図２０】
2005092257.tif 000028
【図２１】
2005092257.tif 000029
【図２２−１】
2005092257.tif 000030
【図２２−２】
2005092257.tif 000031