(57)【特許請求の範囲】
【請求項１】
接触を感知するタッチパネルと、
前記タッチパネルと一体に設けられ、文字認識されて確定した文字のビットマップデータを表示する表示エリアと前記タッチパネルが感知した接触により手書き文字入力する入力エリアとを有する表示部と、
前記文字のストローク情報を内蔵する文字認識辞書を参照して文字認識処理する文字認識処理部と、
前記表示エリアに表示された前記確定した文字のビットマップデータの前記入力エリアへの移動を制御する移動制御部と、
前記移動制御部の制御対象となる前記確定した文字の文字コードに基づき、前記文字認識処理部に内蔵された文字認識辞書から前記文字のストローク情報を逆引きして取得するストロークデータ取得部と、
前記表示エリアに新たに手書き入力された筆跡データを取得する筆跡データ取得部と、
前記ストロークデータ取得部が取得した前記文字のストローク情報及び前記筆跡データ取得部が取得した筆跡データを保持するバッファと、
前記表示部の表示を制御する表示制御部と、を備え、
前記文字認識処理部は、
前記表示エリアに表示された前記確定した文字のビットマップデータが前記入力エリアへ移動した場合に、前記バッファに保持された文字のストローク情報及び前記新たに手書き入力された筆跡データに基づき文字認識処理して、新たな文字コードを前記表示制御部へ出力し、
前記表示制御部は、
前記文字認識処理部から入力された前記新たな文字コードに対応する文字を前記表示エリアに表示するよう前記表示部を制御する、
手書き文字入力装置。
【請求項２】
接触を感知するタッチパネルと、
前記タッチパネルと一体に設けられ、文字認識されて確定した文字のビットマップデータを表示する表示エリアと前記タッチパネルが感知した接触により手書き文字入力する入力エリアとを有する表示部と、
前記文字のストローク情報を内蔵する文字認識辞書を参照して文字認識処理する文字認識処理部と、
前記表示エリアに表示された前記確定した文字のビットマップデータの前記入力エリアへの移動を制御する移動制御部と、
前記入力エリアに移動した文字のビットマップデータの大きさ又はその位置を編集するデータレタッチ制御部と 、
前記文字認識処理部に内蔵された文字認識辞書から前記確定した文字の文字コードに基づいて前記文字のストローク情報を逆引きして取得し、当該文字のストローク情報を前記データレタッチ制御部の編集操作に基づき変形するストロークデータ取得部と、
前記表示エリアに新たに手書き入力された筆跡データを取得する筆跡データ取得部と、
前記ストロークデータ取得部により変形済みの文字のストローク情報及び前記筆跡データ取得部が取得した筆跡データを保持するバッファと、
前記表示部の表示を制御する表示制御部と、を備え、
前記文字認識処理部は、
前記表示エリアに表示された前記確定した文字のビットマップデータが前記入力エリアへ移動した場合に、前記バッファに保持された前記変形済みの文字のストローク情報及び前記新たに手書き入力された筆跡データに基づき文字認識処理して、新たな文字コードを前記表示制御部へ出力し、
前記表示制御部は、
前記文字認識処理部から入力された前記新たな文字コードに対応する文字を前記表示エリアに表示するよう前記表示部を制御する、
手書き文字入力装置。
【請求項３】
接触を感知するタッチパネルと、
前記タッチパネルと一体に設けられ、文字認識されて確定した文字のビットマップデータを表示する表示エリアと前記タッチパネルが感知した接触により手書き文字入力する入力エリアとを有する表示部と、
前記文字のストローク情報を内蔵する文字認識辞書を参照して文字認識処理する文字認識処理部と、
前記表示エリアに表示された前記確定した文字のビットマップデータの前記入力エリアへの移動を制御する移動制御部と、
前記入力エリアに移動した文字のビットマップデータの位置と、当該文字の文字コードとに基づき、当該文字をその位置に表示される部首として認識し、当該部首に合わせて当該文字のビットマップデータを編集する部首認識部と、
前記文字認識処理部に内蔵された文字認識辞書から前記確定した文字の文字コードに基づいて前記文字のストローク情報を逆引きして取得し、当該文字のストローク情報を前記部首認識部の編集操作に基づき変形するストロークデータ取得部と、
前記表示エリアに新たに手書き入力された筆跡データを取得する筆跡データ取得部と、
前記ストロークデータ取得部により変形済みの前記文字のストローク情報及び前記筆跡データ取得部が取得した筆跡データを保持するバッファと、
前記表示部の表示を制御する表示制御部と、を備え、
前記文字認識処理部は、
前記表示エリアに表示された前記確定した文字のビットマップデータが前記入力エリアへ移動した場合に、前記バッファに保持された前記文字のストローク情報及び前記新たに手書き入力された筆跡データに基づき文字認識処理して、新たな文字コードを前記表示制御部へ出力し、
前記表示制御部は、
前記文字認識処理部から入力された前記新たな文字コードに対応する文字を前記表示エリアに表示するよう前記表示部を制御する、
手書き文字入力装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手書き文字入力装置に関する。
【背景技術】
【０００２】
特許文献１では、文字認識された後に画面上に表示された手書き文字を手書き文字入力用のデバイスでダブルタップすることで、手書き文字の入力エリアに、その文字の認識前の手書き文字を表示する手書き文字入力装置が開示されている。
【０００３】
また、特許文献２では、文字認識された後に画面上に表示された手書き文字を、画面上の訂正ボタンを押下して訂正文字の候補を選択する画面上の入力操作だけで、文字訂正することができる手書き文字入力装置が開示されている。
【０００４】
また、特許文献３では、入力エリアに手書き入力された漢字の非部首部分が、漢字の部首（たとえば、へん、かんむり）に対して小さい場合に、漢字の非部首部分を抽出して部分パターンを拡大生成し、所定の大きさに正規化することで文字認識率を上げる手書き文字入力装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−２４３４２１号公報
【特許文献２】特開２００８−１５８８８０号公報
【特許文献３】特開平９−１６１００５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、上述した従来の手書き文字入力装置では、例えば、ユーザが漢字である「閥」をタッチパネル上の筆跡入力エリアに入力する場合、途中の「門」まで入力してから残りの部分である「伐」を書き始めるまでに時間がかかると、「閥」の一部（部首）である「門（門がまえ）」だけが誤って自動的に文字認識される場合がある。その結果、タッチパネル上の表示エリアには、誤認識文字である「門」だけが表示される。したがって、従来の手書き文字入力装置では、ユーザが表示エリア上の「門」を消去するタッチパネル操作を行った後、改めて「閥」の筆跡入力を最初からやり直す必要がある。誤認識される毎に筆跡入力を最初からやり直すのでは、文字入力（特に、漢字）の際にユーザにとって大きな負担となってしまう。
【０００７】
本発明の目的は、一度文字認識処理されて確定した誤認識文字を、誤認識された時点の筆跡データの続きから手書き入力可能とする手書き文字入力装置を提供することである。
【課題を解決するための手段】
【０００８】
本発明の手書き文字入力装置は、接触を感知するタッチパネルと、前記タッチパネルと一体に設けられ、文字認識されて確定した文字のビットマップデータを表示する表示エリアと前記タッチパネルが感知した接触により手書き文字入力する入力エリアとを有する表示部と、前記文字のストローク情報を内蔵する文字認識辞書を参照して文字認識処理する文字認識処理部と、前記表示エリアに表示された前記確定した文字のビットマップデータの前記入力エリアへの移動を制御する移動制御部と、前記移動制御部の制御対象となる前記確定した文字の文字コードに基づき、前記文字認識処理部に内蔵された文字認識辞書から前記文字のストローク情報を逆引きして取得するストロークデータ取得部と、前記表示エリアに新たに手書き入力された筆跡データを取得する筆跡データ取得部と、前記ストロークデータ取得部が取得した前記文字のストローク情報及び前記筆跡データ取得部が取得した筆跡データを保持するバッファと、前記表示部の表示を制御する表示制御部と、を備え、前記文字認識処理部は、前記表示エリアに表示された前記確定した文字のビットマップデータが前記入力エリアへ移動した場合に、前記バッファに保持された文字のストローク情報及び前記新たに手書き入力された筆跡データに基づき文字認識処理して、新たな文字コードを前記表示制御部へ出力し、前記表示制御部は、前記文字認識処理部から入力された前記新たな文字コードに対応する文字を前記表示エリアに表示するよう前記表示部を制御する。
【０００９】
また、本発明の手書き文字入力装置は、接触を感知するタッチパネルと、前記タッチパネルと一体に設けられ、文字認識されて確定した文字のビットマップデータを表示する表示エリアと前記タッチパネルが感知した接触により手書き文字入力する入力エリアとを有する表示部と、前記文字のストローク情報を内蔵する文字認識辞書を参照して文字認識処理する文字認識処理部と、前記表示エリアに表示された前記確定した文字のビットマップデータの前記入力エリアへの移動を制御する移動制御部と、前記入力エリアに移動した文字のビットマップデータの大きさ又はその位置を編集するデータレタッチ制御部と、前記文字認識処理部に内蔵された文字認識辞書から前記確定した文字の文字コードに基づいて前記文字のストローク情報を逆引きして取得し、当該文字のストローク情報を前記データレタッチ制御部の編集操作に基づき変形するストロークデータ取得部と、前記表示エリアに新たに手書き入力された筆跡データを取得する筆跡データ取得部と、前記ストロークデータ取得部により変形済みの文字のストローク情報及び前記筆跡データ取得部が取得した筆跡データを保持するバッファと、前記表示部の表示を制御する表示制御部と、を備え、前記文字認識処理部は、前記表示エリアに表示された前記確定した文字のビットマップデータが前記入力エリアへ移動した場合に、前記バッファに保持された前記変形済みの文字のストローク情報及び前記新たに手書き入力された筆跡データに基づき文字認識処理して、新たな文字コードを前記表示制御部へ出力し、前記表示制御部は、前記文字認識処理部から入力された前記新たな文字コードに対応する文字を前記表示エリアに表示するよう前記表示部を制御する。
【００１０】
また、本発明の手書き文字入力装置は、接触を感知するタッチパネルと、前記タッチパネルと一体に設けられ、文字認識されて確定した文字のビットマップデータを表示する表示エリアと前記タッチパネルが感知した接触により手書き文字入力する入力エリアとを有する表示部と、前記文字のストローク情報を内蔵する文字認識辞書を参照して文字認識処理する文字認識処理部と、前記表示エリアに表示された前記確定した文字のビットマップデータの前記入力エリアへの移動を制御する移動制御部と、前記入力エリアに移動した文字のビットマップデータの位置と、当該文字の文字コードとに基づき、当該文字をその位置に表示される部首として認識し、当該部首に合わせて当該文字のビットマップデータを編集する部首認識部と、前記文字認識処理部に内蔵された文字認識辞書から前記確定した文字の文字コードに基づいて前記文字のストローク情報を逆引きして取得し、当該文字のストローク情報を前記部首認識部の編集操作に基づき変形するストロークデータ取得部と、前記表示エリアに新たに手書き入力された筆跡データを取得する筆跡データ取得部と、前記ストロークデータ取得部により変形済みの前記文字のストローク情報及び前記筆跡データ取得部が取得した筆跡データを保持するバッファと、前記表示部の表示を制御する表示制御部と、を備え、前記文字認識処理部は、前記表示エリアに表示された前記確定した文字のビットマップデータが前記入力エリアへ移動した場合に、前記バッファに保持された前記文字のストローク情報及び前記新たに手書き入力された筆跡データに基づき文字認識処理して、新たな文字コードを前記表示制御部へ出力し、前記表示制御部は、前記文字認識処理部から入力された前記新たな文字コードに対応する文字を前記表示エリアに表示するよう前記表示部を制御する。
【発明の効果】
【００１１】
本発明に係る手書き文字入力装置によれば、一度文字認識処理されて確定した誤認識文字を、誤認識された時点の筆跡データの続きから再度手書き入力可能にできる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１に係る手書き文字入力装置１００の動作を説明するための図
【図２】手書き文字入力装置１００の構成を示すブロック図
【図３】（ａ）手書き文字入力装置１００の手書き文字入力処理のフロー（１）、（ｂ）手書き文字入力装置１００の手書き文字入力処理のフロー（２）
【図４】実施の形態２に係る手書き文字入力装置３００の動作を説明するための図
【図５】手書き文字入力装置３００の構成を示すブロック図
【図６】（ａ）手書き文字入力装置３００の手書き文字入力処理のフロー（１）、（ｂ）手書き文字入力装置３００の手書き文字入力処理のフロー（２）
【図７】実施の形態３に係る手書き文字入力装置５００の動作を説明するための図
【図８】手書き文字入力装置５００の構成を示すブロック図
【図９】（ａ）手書き文字入力装置５００の手書き文字入力処理のフロー（１）、（ｂ）手書き文字入力装置５００の手書き文字入力処理のフロー（２）
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について、図面を参照して説明する。
【００１４】
（実施の形態１）
図１を参照して、手書き文字入力装置１００の動作の概要について説明する。図１は、実施の形態１に係る手書き文字入力装置１００の動作を説明するための図である。説明のため、図１ではタッチパネル１０１の画面だけ図示する。図１では、拙速誤認識文字として“門”を例にとって説明する。正しい文字は“閥”である。
【００１５】
ここで、拙速誤認識文字とは、手書き文字入力装置１００が、実際には手書き入力途中の文字を、手書き入力が中断した時点から所定時間経過後に文字認識処理して、自動的に確定した文字のことを言う。ユーザが手書き入力の途中で、たとえばタッチパネル１０１から指を離している間に所定時間が経過すると、手書き文字入力装置１００は、手書き入力途中の文字であってもその文字を文字認識処理して自動的に確定する。
【００１６】
タッチパネル１０１の画面（１−１）で、ユーザが指で拙速誤認識文字である“門”に触れると、ユーザは拙速誤認識文字をオブジェクトとして表示エリアＳ１で移動（たとえば、ドラッグ操作）できるようになる。
【００１７】
タッチパネル１０１の画面（１−２）で、ユーザが指で拙速誤認識文字である“門”を表示エリアＳ１からドラッグして、入力エリアＳ２へドロップする。そして、タッチパネル１０１の画面（１−３）で、入力エリアＳ２へドロップされた拙速誤認識文字である“門”が、入力エリアＳ２に表示される。この時、入力エリアＳ２は、拙速誤認識された時点の筆跡（すなわち“門”）の続きから手書き入力可能な状態で、拙速誤認識文字である“門”を表示する。そのため、タッチパネル１０１の画面（１−４）で、ユーザは拙速誤認識された時点の筆跡（すなわち、“門”）の続きから継続して筆跡を入力することができる。
【００１８】
実施の形態１に係る手書き文字入力装置１００は、ユーザが表示エリアＳ１から手書き入力可能な入力エリアＳ２に拙速誤認識文字をドラッグ＆ドロップすると、拙速誤認識文字を拙速誤認識時の筆跡データの続きから手書き入力可能な状態にできる。
【００１９】
図２を参照して、実施の形態１に係る手書き文字入力装置１００の構成について説明する。図２は、手書き文字入力装置１００の構成を示すブロック図である。図２に示す手書き文字入力装置１００は、タッチパネル１０１と、第２表示部１０３と、表示制御部１０５と、ドロップ機能制御部１０７と、第２バッファ１０９と、ストロークデータ取得部１１１と、筆跡データ取得部１１３と、認識エンジン１１５と、ストローク情報保持部１１６と、ＣＰＵ１１７と、第１表示部１２１と、ドラッグ機能制御部１２３と、第１バッファ１２５と、を備える。
【００２０】
タッチパネル１０１は、入力インタフェースとして機能する場合、指の接触などを検出し、その検出結果を筆跡データ取得部１１３と、ドラッグ機能制御部１２３とに出力する。
【００２１】
また、タッチパネル１０１は、認識文字などを表示する第１表示部１２１及び手書き文字入力エリアである第２表示部１０３を一体に備える。そのため、第２表示部１０３、第１表示部１２１は、タッチパネル上で検出された接触に応じた表示を行うことができる。
【００２２】
ここで、タッチパネル１０１が検出する接触とは、たとえば、ユーザの指の接触のことである。
【００２３】
第１表示部１２１（図１中、表示エリアＳ１に相当）は、表示制御部１０５の制御に基づき、第１バッファ１２５に保持されていた文字を表示する。
【００２４】
また、第１表示部１２１は、タッチパネル１０１と一体に設けられている。そのため、第１表示部１２１は、ユーザがタッチパネル１０１の第１表示部１２１に表示された文字をドラッグする場合、そのタッチパネル操作に応じた文字の移動を表示することができる。なお、第１表示部１２１に表示された文字の移動は、後述するドラッグ機能制御部１２３の制御に基づき制御される。
【００２５】
第１バッファ１２５は、第１表示部１２１に表示するためのデータなどを保持する。例えば、第１バッファ１２５は、後述する認識エンジン１１５の文字認識処理により確定された文字を保持する。
【００２６】
ドラッグ機能制御部１２３は、ユーザが第１表示部１２１に表示された文字をドラッグして移動させる場合、その文字の移動を制御する。上述のように、ユーザがドラッグして移動させる第１表示部１２１に表示された文字は、認識エンジン１１５の文字認識処理により一度確定された文字である。
【００２７】
そして、ドラッグ機能制御部１２３は、ユーザが第１表示部１２１でドラッグした文字を第２表示部１０３にドロップする場合、その文字のビットマップデータと、その文字に対応するＪＩＳコードとをドロップ機能制御部１０７に引き継ぐ。
【００２８】
以下、ドラッグ機能制御部１２３がドロップ機能制御部１０７に引き継ぐ文字を漢字として説明する。すなわち、ドラッグ機能制御部１２３は、その漢字のビットマップデータと、その漢字に対応するＪＩＳ漢字コードをドロップ機能制御部１０７に引き継ぐ。なお、漢字は文字の一例であり、これに限定されるものではない。
【００２９】
ドラッグ機能制御部１２３がドロップ機能制御部１０７に、漢字のビットマップデータと、その漢字に対応するＪＩＳ漢字コードを引き継ぐと、ドラッグ機能制御部１２３は第１バッファ１２５の移動したその漢字のビットマップデータを削除する。つまり、移動した漢字のビットマップデータが第１バッファ１２５からクリアされると、その漢字は、確定文字から解除される。上述のように、ドラッグ機能制御部１２３がドロップ機能制御部１０７へ引き継ぐ漢字は、認識エンジン１１５の文字認識処理により一度確定された文字である。
【００３０】
なお、ユーザが第１表示部１２１で漢字のビットマップデータをドラッグした指を離すと、ドラッグ機能制御部１２３は、その漢字のビットマップデータを元の位置に移動させる。漢字のビットマップデータは第１表示部１２１内の元の位置に戻るので、ドラッグ機能制御部１２３は、第１バッファ１２５にある漢字のビットマップデータを削除しない。つまり、元の位置に戻った漢字のビットマップデータが第１バッファ１２５からクリアされないので、その漢字は、確定文字として認識される。
【００３１】
ドロップ機能制御部１０７は、ユーザが第１表示部１２１でドラッグした文字を第２表示部１０３にドロップする場合、ドラッグ機能制御部１２３から引き継いだ漢字のビットマップデータを第２表示部１０３にドロップする。
【００３２】
そして、ドロップ機能制御部１０７は、ドラッグ機能制御部１２３から引き継いだ
その漢字に対応するＪＩＳ漢字コードをストロークデータ取得部１１１へ、その漢字のビットマップデータを第２バッファ１０９へ出力する。
【００３３】
ストロークデータ取得部１１１は、ユーザが第１表示部１２１でドラッグした文字を第２表示部１０３にドロップする場合、ドロップ機能制御部１０７から入力されたＪＩＳ漢字コード に基づき、そのＪＩＳ漢字コードに対応するストローク情報を認識エンジン１１５が保持するリファレンス用のストローク情報から逆引きして取得する。
【００３４】
通常、認識エンジン１１５は、認識エンジン１１５自体が保持するリファレンス用のストローク情報に基づき、第２表示部１０３に入力された手書き文字を文字認識して確定する。しかし、ストロークデータ取得部１１１は、一度文字認識処理された後の文字データに基づき、認識エンジン１１５が保持するリファレンス用のストローク情報を取得している。
【００３５】
つまり、認識エンジン１１５は、リファレンス用のストローク情報から手書き文字の文字認識処理を行っている一方、ストロークデータ取得部１１１は、一度文字認識処理された文字コードからストローク情報を取得している。つまり、本実施の形態に係る手書き文字入力装置１００は、通常の文字認識処理のフローに加えて、通常の文字認識処理のフローとは逆方向の文字認識処理フローを行っている。
【００３６】
上記構成により、本実施の形態に係る手書き文字入力装置１００は、一度認識エンジン１１５の文字認識処理により確定された文字データから認識エンジン１１５が保持するリファレンス用のストローク情報を逆引きして取得し、その取得したストローク情報の続きから文字を手書き入力可能にすることができる。
【００３７】
特に、認識エンジン１１５の文字認識処理により一度確定された文字が拙速誤認識文字である場合、ユーザは拙速誤認識された時点の筆跡の続きから手書き文字入力を再開することができる。そのため、ユーザは最初から拙速誤認識文字を入力し直なす等の煩わしい動作をしなくて済む。さらには、ユーザは拙速誤認識された時点の筆跡の続きから手書き文字入力を再開することができるので、再開した後の手書き文字入力装置１００の文字認識率を向上させることができる。
【００３８】
そして、ストロークデータ取得部１１１は、認識エンジン１１５から逆引きして得られたＪＩＳ漢字コードに対応する漢字のストローク情報をストローク情報保持部１１６へ出力する。
【００３９】
筆跡データ取得部１１３は、タッチパネル１０１の第２表示部１０３上で検出された一又は複数の接触から、新たに手書き入力された筆跡データを取得し、その新たな筆跡データを、入力済みの筆跡データが保持されている第２バッファ１０９に追記する。つまり、第２バッファ１０９には、漢字のビットマップデータに対して、新たに手書き入力された筆跡データが付け加えられる。更に、筆跡データ取得部１１３は、新たに手書き入力された筆跡データに基づき、この筆跡データに対応するストローク情報を、ストローク情報保持部１１６に追記する。
【００４０】
第２バッファ１０９は、ドロップ機能制御部１０７から入力された漢字のビットマップデータを保持する。さらに、第２バッファ１０９は、筆跡データ取得部１１３から入力された入力済みの筆跡データを保持する。第２バッファ１０９に保持された漢字のビットマップデータ及び入力済みの筆跡データは、第２表示部１０３に表示される。
【００４１】
表示制御部１０５は、第２バッファ１０９に保持された漢字のビットマップデータを、第２表示部１０３に表示する。上述のように、第２バッファ１０９には、ドロップ機能制御部１０７から入力された漢字のビットマップデータと、筆跡データ取得部１１３から入力された入力済みの筆跡データとが保持されている。
【００４２】
本実施の形態では、第２表示部１０３において、例えば、図１の画面（１−４）に示す部首「門（もんがまえ）」は、ドロップ機能制御部１０７から入力された漢字のビットマップデータであり、残りの「伐」は筆跡データ取得部１１３から入力された入力済みの筆跡データである。
【００４３】
ストローク情報保持部１１６には、（１）ストロークデータ取得部１１１が、ドロップ機能制御部１０７から入力されたＪＩＳ漢字コード に基づき、認識エンジン１１５から逆引きして取得したＪＩＳ漢字コードに対応するストローク情報と、（２）筆跡データ取得部１１３から入力された、新たに手書き入力済み筆跡データのストローク情報と、が保持されている。
【００４４】
また、認識エンジン１１５は、ストロークデータ取得部１１１及び筆跡データ取得部１１３からストローク情報保持部１１６に記入されたストローク情報に基づいて文字認識処理を行い、そのストローク情報に対応するＪＩＳ漢字コード を表示制御部１０５へ出力する。
【００４５】
また、認識エンジン１１５は、ユーザが手書き入力を中断してから所定時間が経過すると、手書き入力途中の文字であってもその筆跡データに基づき、文字認識処理して自動的に確定する。
【００４６】
表示制御部１０５は、認識エンジン１１５から出力されたＪＩＳ漢字コードに基づき、表示エリアＳ１である第１表示部１２１にＪＩＳ漢字コードに対応する漢字を表示させる制御を行う。
【００４７】
図３（ａ）を参照して、手書き文字入力装置１００の手書き文字入力処理のフロー（１）を示す。図３（ａ）に示す手書き文字入力処理のフロー（１）は、ユーザが入力エリアＳ２（第２表示部１０３）に手書きで文字を入力してから、表示エリアＳ１（第１表示部１２１）に手書きで入力された文字を表示するまでの処理である。
【００４８】
ステップＳＴ２００では、タッチパネル１０１が、第２表示部１０３（入力エリアＳ２）に入力された接触を検出する。そして、ステップＳＴ２０２へ遷移する。
【００４９】
ステップＳＴ２０２では、筆跡データ取得部１１３が、タッチパネル１０１の検出結果から筆跡データを取得する。そして、ステップＳＴ２０４へ遷移する。
【００５０】
ステップＳＴ２０４では、認識エンジン１１５が、文字認識辞書に基づき、筆跡データの文字認識処理を行い、筆跡データに対応する文字コードを出力する。そして、ステップＳＴ２０６へ遷移する。
【００５１】
ステップＳＴ２０６では、表示制御部１０５が認識エンジン１１５から出力された文字コードに対応する文字を第１表示部１２１（表示エリアＳ１）に表示させる制御を行う。そして、処理を終了する。
【００５２】
図３（ｂ）を参照して、手書き文字入力装置１００の手書き文字入力処理のフロー（２）を示す。図３（ｂ）に示す手書き文字入力処理のフロー（２）は、ユーザが表示エリアＳ１（第１表示部１２１）に表示された拙速誤認識文字をドラッグしてから、入力エリアＳ２（第２表示部１０３）に拙速誤認識文字を表示するまでの処理である。
【００５３】
ステップＳＴ２２０では、タッチパネル１０１が、ユーザが第１表示部１２１（表示エリアＳ１）に表示された拙速誤認識文字を選択したことを検出する。そして、ステップＳＴ２２２へ遷移する。
【００５４】
ステップＳＴ２２２では、ドラッグ機能制御部１２３が、ユーザがタッチパネル１０１上でドラッグする拙速誤認識文字の移動を制御する。そして、ステップＳＴ２２４へ遷移する。
【００５５】
ステップＳＴ２２４では、ドロップ機能制御部１０７が、ドラッグ機能制御部１２３から、ユーザがタッチパネル１０１上でドラッグする拙速誤認識文字のビットマップデータ、文字コードを引き継ぐ。そして、ステップＳＴ２２６へ遷移する。
【００５６】
ステップＳＴ２２６では、ドロップ機能制御部１０７が、ドラッグ機能制御部１２３から引き継いだ文字を第２表示部１０３にドロップする。そして、ステップＳＴ２２８へ遷移する。
【００５７】
ステップＳＴ２２８では、ストロークデータ取得部１１１が、表示エリアＳ１の文字から引き継がれた文字コードに基づき、認識エンジン１１５から逆引きして取得した、この文字コードに対応する文字のストローク情報をストローク情報保持部１１６に出力する。そして、ステップＳＴ２３０へ遷移する。
【００５８】
ステップＳＴ２３０では、筆跡データ取得部１１３は、新たに手書き入力された筆跡データに基づき、この筆跡データに対応するストローク情報を、ストローク情報保持部１１６に追記する。そして、ステップＳＴ２３２へ遷移する。
【００５９】
ステップＳＴ２３２では、認識エンジン１１５は、ストローク情報保持部１１６に保持されたストローク情報に基づき、文字認識処理を行い、このストローク情報に対応する文字コードを表示制御部１０５へ出力する。そして、ステップＳＴ２３４へ遷移する。
【００６０】
ステップＳＴ２３４では、表示制御部１０５は、認識エンジン１１５から出力された文字コードに基づき、表示エリアＳ１（第１表示部１２１）にこの文字コードに対応する文字を表示させる。
【００６１】
上述のように、実施の形態１に係る手書き文字入力装置１００は、ユーザがタッチパネル１０１上の表示エリアＳ１で選択した拙速誤認識文字を表示エリアＳ１からドラッグして手書き入力可能な入力エリアＳ２にドロップすると、拙速誤認識文字を拙速誤認識した時点の筆跡データの続きから手書き入力可能な状態にすることができる。
【００６２】
更に、本実施の形態に係る手書き文字入力装置１００は、認識エンジン１１５の文字認識処理により一度確定された文字コードから、この文字コードに対応するストローク情報を、認識エンジン１１５が保持するリファレンス用のストローク情報を逆引きして取得し、この逆引きして取得したストローク情報の続きから、文字を手書き入力することができる。特に、認識エンジン１１５の文字認識処理により一度確定された文字が上述した拙速誤認識文字である場合、ユーザは拙速誤認識された時点の筆跡の続きから手書き文字入力を再開することができる。そのため、ユーザは最初から文字を入力し直なすなどの煩わしい動作をしなくて済む。
【００６３】
なお、本実施の形態において、認識エンジン１１５はオンライン認識処理を行っているが、オフライン認識処理を行う場合には、ストロークデータ取得部１１１が、文字コードに基づき、認識エンジン１１５から逆引きして文字コードに対応するストローク情報を取得する必要はない。
【００６４】
ドロップ機能制御部１０７が、引き継いだ漢字のビットマップデータに新たな手書き入力の筆跡を追記し、認識エンジン１１５がオフライン認識すれば良い。
【００６５】
（実施の形態２）
図４を参照して、実施の形態２に係る手書き文字入力装置３００の動作の概要について説明する。図４は、本実施の形態に係る手書き文字入力装置３００の動作を説明するための図である。説明のため、図４ではタッチパネル１０１の画面だけ図示する。なお、図４では、拙速誤認識文字として“角”を例にとって説明する。正しい文字は“解”であるとする。
【００６６】
ここで、拙速誤認識文字とは、手書き文字入力装置３００が、実際には手書き入力途中の文字を、手書き入力が中断した時点から所定時間経過後に文字認識処理して、自動的に確定した文字のことを言う。ユーザが手書き入力の途中で、たとえばタッチパネル１０１から指を離している間に所定時間が経過すると、手書き文字入力装置３００は、手書き入力途中の文字であってもその文字を文字認識処理して自動的に確定する。
【００６７】
タッチパネル１０１の画面（４−１）で、ユーザが拙速誤認識文字である“角”に触れると、ユーザは、拙速誤認識文字をオブジェクトとして表示エリアＳ１でドラッグできるようになる。
【００６８】
タッチパネル１０１の画面（４−２）で、ユーザが拙速誤認識文字である“角”を表示エリアＳ１からドラッグして入力エリアＳ２へドロップする。そして、タッチパネル１０１の画面（４−３）で、入力エリアＳ２へドロップされた拙速誤認識文字である“角”は、その文字コードに基づき、入力エリアＳ２にビットマップデータとして表示される。ユーザは入力エリアＳ２に表示されたビットマップデータを編集することができる。
【００６９】
タッチパネル１０１の画面（４−４）で、ユーザは、入力エリアＳ２に表示されたビットマップデータ“角”を、例えば入力エリアＳ２内で左寄せして、正しい文字“解”の一部（例えば、部首“へん”）となるように編集する。この時、入力エリアＳ２は、拙速誤認識された時点の筆跡（すなわち“角”）の続きから手書き入力可能な状態で、拙速誤認識文字である“角”を表示する。そのため、タッチパネル１０１の画面（４−４）で、ユーザは拙速誤認識された時点の筆跡（すなわち、“角”）の続きから継続して筆跡を入力することができる。
【００７０】
なお、本実施の形態では、入力エリアＳ２に表示されたビットマップデータの編集操作として、“左寄せ”を一例にとって説明するがこれに限らない。左寄せ以外にも、右寄せ、上寄せ、下寄せなど、あらゆる方向への編集操作が考えられる。
【００７１】
なお、本実施の形態では、拙速誤認識文字のビットマップは、正しい文字の部首“へん”として説明しているが、これに限らない。部首としては、“へん”以外にも、“つくり”、“かんむり”、“あし”、“たれ”、“にょう”、“かまえ”などがある。本実施の形態では、部首の態様に合わせて拙速誤認識文字のビットマップデータを編集操作できる。
【００７２】
図５を参照して、実施の形態２に係る手書き文字入力装置３００の構成について説明する。図５は、手書き文字入力装置３００の構成を示すブロック図である。図５に示す手書き文字入力装置３００は、タッチパネル１０１と、第２表示部１０３と、表示制御部１０５と、第２バッファ１０９と、筆跡データ取得部１１３と、ＣＰＵ１１７と、第１表示部１２１と、第１バッファ１２５と、ドロップ機能制御部３０７と、ストロークデータ取得部３１１と、認識エンジン３１５と、ストローク情報保持部３１６と、筆跡データレタッチ制御部３１７と、ドラッグ機能制御部３２３と、を備える。
【００７３】
タッチパネル１０１は、入力インタフェースとして機能する場合、一又は複数の接触を同時に検出し、その検出結果を筆跡データ取得部１１３と、ドラッグ機能制御部３２３とに出力する。
【００７４】
また、タッチパネル１０１は、認識文字などを表示する第１表示部１２１及び手書き文字入力エリアである第２表示部１０３を一体に備える。そのため、第１表示部１２１、第２表示部１０３は、タッチパネル上で検出された接触に応じた表示を行うことができる。
【００７５】
ここで、タッチパネル１０１が検出する一又は複数の接触とは、たとえば、ユーザの一又は複数の指の接触のことである。
【００７６】
第１表示部１２１（図４中、表示エリアＳ１に相当）は、表示制御部１０５の制御に基づき、第１バッファ１２５に保持されていた文字を表示する。
【００７７】
また、第１表示部１２１は、タッチパネル１０１と一体に設けられている。そのため、第１表示部１２１は、ユーザがタッチパネル１０１の第１表示部１２１に表示された文字をドラッグする場合、そのタッチパネル操作に応じた文字の移動を表示することができる。なお、第１表示部１２１に表示された文字の移動は、後述するドラッグ機能制御部３２３の制御に基づき制御される。
【００７８】
第１バッファ１２５は、第１表示部１２１に表示するためのデータなどを保持する。例えば、第１バッファ１２５は、後述する認識エンジン３１５の文字認識処理により確定された文字を保持する。
【００７９】
ドラッグ機能制御部３２３は、ユーザが第１表示部１２１に表示された文字をビットマップデータとしてドラッグして移動させる場合、その文字の移動を制御する。上述のように、ユーザがドラッグして移動させる第１表示部１２１に表示された文字は、認識エンジン３１５の文字認識処理により一度確定された文字である。
【００８０】
そして、ドラッグ機能制御部３２３は、ユーザが第１表示部１２１でドラッグした文字を第２表示部１０３にドロップする場合、その文字のビットマップデータと、その文字に対応するＪＩＳコードをドロップ機能制御部３０７に引き継ぐ。
【００８１】
以下、ドラッグ機能制御部３２３がドロップ機能制御部３０７に引き継ぐ文字を漢字として説明する。すなわち、ドラッグ機能制御部３２３は、その漢字のビットマップデータと、その漢字に対応するＪＩＳ漢字コードをドロップ機能制御部３０７に引き継ぐ。なお、漢字は文字の一例であり、これに限定されるものではない。
【００８２】
ドラッグ機能制御部３２３がドロップ機能制御部３０７に、漢字のビットマップデータと、その漢字に対応するＪＩＳ漢字コードとを引き継ぐと、ドラッグ機能制御部３２３は第１バッファ１２５の移動したその漢字のビットマップデータを削除する。つまり、移動した漢字のビットマップデータが第１バッファ１２５からクリアされると、その漢字は、確定文字から解除される。上述のように、ドラッグ機能制御部３２３がドロップ機能制御部３０７へ引き継ぐ漢字は、認識エンジン３１５の文字認識処理により一度確定された文字である。
【００８３】
なお、ユーザが第１表示部１２１で漢字のビットマップデータをドラッグした指を離すと、ドラッグ機能制御部３２３は、その漢字のビットマップデータを元の位置に移動させる。漢字のビットマップデータは第１表示部１２１内の元の位置に戻るので、ドラッグ機能制御部３２３は、第１バッファ１２５にある漢字のビットマップデータを削除しない。つまり、元の位置に戻った漢字のビットマップデータが第１バッファ１２５からクリアされないので、その漢字は、確定文字として認識される。
【００８４】
ドロップ機能制御部３０７は、ユーザが第１表示部１２１でドラッグした文字を第２表示部１０３にドロップする場合、ドラッグ機能制御部３２３から引き継いだ漢字のビットマップデータを第２表示部１０３にドロップする。そして、ドロップ機能制御部３０７は、ドラッグ機能制御部３２３から引き継いだその漢字に対応するＪＩＳ漢字コードをストロークデータ取得部３１１へ、その漢字のビットマップデータを第２バッファ１０９へ出力する。
【００８５】
筆跡データレタッチ制御部３１７は、第２バッファ１０９内で漢字のビットマップデータを編集する制御を行う。例えば、ユーザがタッチパネル１０１の画面上で拙速誤認識文字である“角”のビットマップデータを正しい文字“解”の部首（“へん”）に編集するために、第２バッファ１０９内で左寄せする編集操作を行う。
【００８６】
例えば、ユーザが、図４に示す画面４−３、４−４のように入力エリアＳ２のビットマップデータを編集する場合には、筆跡データレタッチ制御部３１７が、ドロップ機能制御部３０７から出力された漢字のビットマップデータを第２バッファ１０９内で編集する制御を行う。
【００８７】
ストロークデータ取得部３１１は、ユーザが第１表示部１２１でドラッグした文字を第２表示部１０３にドロップする場合、ドロップ機能制御部３０７から入力されたＪＩＳ漢字コード に基づき、そのＪＩＳ漢字コードに対応するストローク情報を認識エンジン１１５が保持するリファレンス用のストローク情報から逆引きして取得する。
【００８８】
通常、認識エンジン３１５は、認識エンジン３１５自体が保持するリファレンス用のストローク情報に基づき、第２表示部１０３に入力された手書き文字を文字認識して確定する。しかし、ストロークデータ取得部３１１は、一度文字認識処理された後の文字データに基づき、認識エンジン３１５が保持するリファレンス用のストローク情報を取得している。
【００８９】
さらに、ストロークデータ取得部３１１は、筆跡データレタッチ制御部３１７がドロップ機能制御部３０７から出力された漢字のビットマップデータを第２バッファ１０９内で編集した場合には、逆引きして取得したストローク情報を、この筆跡データレタッチ制御部３１７による編集操作と同様の変更方法で変形する。そして、ストロークデータ取得部３１１は、この編集済みストローク情報を、ストローク情報保持部３１６へ出力する。
【００９０】
筆跡データ取得部１１３は、タッチパネル１０１の第２表示部１０３上で検出された一又は複数の接触から、新たに手書き入力された筆跡データを取得し、その新たな筆跡データを、入力済みの筆跡データが保持されている第２バッファ１０９に追記する。つまり、第２バッファ１０９には、編集済みの漢字のビットマップデータに対して、新たに手書き入力された筆跡データが付け加えられる。
【００９１】
更に、筆跡データ取得部１１３は、新たに手書き入力された筆跡データに基づき、この筆跡データに対応するストローク情報を、ストローク情報保持部３１６に追記する。
【００９２】
第２バッファ１０９は、筆跡データレタッチ制御部３１７により編集された編集済みの漢字のビットマップデータを保持する。さらに、第２バッファ１０９は、筆跡データ取得部１１３から入力された入力済みの筆跡データを保持する。第２バッファ１０９に保持された編集済みの漢字のビットマップデータと、入力済みの筆跡データとは、第２表示部１０３に表示される。
【００９３】
なお、筆跡データレタッチ制御部３１７により漢字のビットマップデータが編集される前には、ドラッグ機能制御部３２３から引き継いだ漢字のビットマップデータが、第２表示部１０３に表示される。
【００９４】
表示制御部１０５は、第２バッファ１０９に保持された漢字のビットマップデータを、第２表示部１０３に表示する。上述のように、第２バッファ１０９には、筆跡データレタッチ制御部３１７により編集された編集済みの漢字のビットマップデータと、筆跡データ取得部１１３から入力された入力済みの筆跡データとが保持されている。
【００９５】
本実施の形態では、第２表示部１０３において、例えば、図４の画面（４−４）に示す部首「角（つのへん）」は、筆跡データレタッチ制御部３１７により編集された編集済みの漢字のビットマップデータである。なお、正しい文字“解”から部首「角（つのへん）」を除いた部分が筆跡データ取得部１１３から入力された入力済みの筆跡データとして入力される。
【００９６】
ストローク情報保持部３１６には、（１）ストロークデータ取得部３１１から出力された編集済みストローク情報と、（２）筆跡データ取得部１１３から入力された、新たに手書き入力済み筆跡データのストローク情報と、が保持されている。
【００９７】
また、認識エンジン３１５は、ストロークデータ取得部３１１及び筆跡データ取得部１１３からストローク情報保持部３１６に記入されたストローク情報に基づいて文字認識処理を行い、そのストローク情報に対応するＪＩＳ漢字コード を表示制御部１０５へ出力する。
【００９８】
また、認識エンジン３１５は、ユーザが手書き入力を中断してから所定時間が経過すると、手書き入力途中の文字であってもその筆跡データに基づき、文字認識処理して自動的に確定する。
【００９９】
表示制御部１０５は、認識エンジン３１５から出力されたＪＩＳ漢字コードに基づき、表示エリアＳ１である第１表示部１２１にＪＩＳ漢字コードに対応する漢字を表示させる制御を行う。
【０１００】
図６（ａ）を参照して、手書き文字入力装置３００の手書き文字入力処理のフロー（１）を示す。図６（ａ）に示す手書き文字入力処理のフロー（１）は、ユーザが入力エリアＳ２（第２表示部１０３）に手書きで文字を入力してから、表示エリアＳ１（第１表示部１２１）に手書きで入力された文字を表示するまでの処理である。
【０１０１】
ステップＳＴ４００では、タッチパネル１０１が、第２表示部１０３（入力エリアＳ２）に入力された接触を検出する。そして、ステップＳＴ４０２へ遷移する。
【０１０２】
ステップＳＴ４０２では、筆跡データ取得部１１３が、タッチパネル１０１の検出結果から筆跡データを取得する。そして、ステップＳＴ４０４へ遷移する。
【０１０３】
ステップＳＴ４０４では、認識エンジン３１５が、文字認識辞書に基づき、筆跡データの文字認識処理を行い、筆跡データに対応する文字コードを出力する。そして、ステップＳＴ４０６へ遷移する。
【０１０４】
ステップＳＴ４０６では、表示制御部１０５が認識エンジン３１５から出力された文字コードに対応する文字を第１表示部１２１（表示エリアＳ１）に表示させる制御を行う。そして、処理を終了する。
【０１０５】
図６（ｂ）を参照して、手書き文字入力装置３００の手書き文字入力処理のフロー（２）を示す。図６（ｂ）に示す手書き文字入力処理のフロー（２）は、ユーザが表示エリアＳ１（第１表示部１２１）に表示された拙速誤認識文字をドラッグしてから、入力エリアＳ２（第２表示部１０３）に拙速誤認識文字を表示するまでの処理である。
【０１０６】
ステップＳＴ４２０では、タッチパネル１０１が、ユーザが第１表示部１２１（表示エリアＳ１）に表示された拙速誤認識文字を選択したことを検出する。そして、ステップＳＴ４２２へ遷移する。
【０１０７】
ステップＳＴ４２２では、ドラッグ機能制御部３２３が、ユーザがタッチパネル１０１上でドラッグする拙速誤認識文字のビットマップデータの移動を制御する。そして、ステップＳＴ４２４へ遷移する。
【０１０８】
ステップＳＴ４２４では、ドロップ機能制御部３０７が、ドラッグ機能制御部３２３から、ユーザがタッチパネル１０１上でドラッグする拙速誤認識文字に対応するビットマップデータと、その文字コードとを引き継ぐ。そして、ステップＳＴ４２６へ遷移する。
【０１０９】
ステップＳＴ４２６では、ドロップ機能制御部３０７が、ドラッグ機能制御部３２３から引き継いだ文字のビットマップデータを第２バッファ１０９に出力する。そして、ステップＳＴ４２８へ遷移する。
【０１１０】
ステップＳＴ４２８では、筆跡データレタッチ制御部３１７が、ドロップ機能制御部３０７から入力された拙速誤認識文字のビットマップデータを第２バッファ１０９内で編集する。そして、ステップＳＴ４３０へ遷移する。
【０１１１】
ステップＳＴ４３０では、ストロークデータ取得部３１１が、文字コードに基づき、この文字コードに対応するストローク情報を認識エンジン３１５から逆引きして取得する。そして、ステップＳＴ４３２へ遷移する。
【０１１２】
ステップＳＴ４３２では、ストロークデータ取得部３１１が、この逆引きして取得したストローク情報を、筆跡データレタッチ制御部３１７による編集操作と同様の変更方法で変形し、編集済みストローク情報としてストローク情報保持部３１６に出力する。そして、ステップＳＴ４３４へ遷移する。
【０１１３】
ステップＳＴ４３４では、筆跡データ取得部１１３が新たに手書き入力された筆跡データに基づき、この筆跡データに対応するストローク情報を、ストローク情報保持部３１６に追記する。そして、ステップＳＴ４３６へ出力する。
【０１１４】
ステップＳＴ４３６では、認識エンジン３１５は、ストローク情報保持部３１６に保持されたストローク情報に基づき、文字認識処理を行い、このストローク情報に対応する文字コードを表示制御部１０５へ出力する。そして、ステップＳＴ４３８へ遷移する。
【０１１５】
ステップＳＴ４３８では、表示制御部１０５は、認識エンジン３１５から出力された文字コードに基づき、表示エリアＳ１（第１表示部１２１）に文字コードに対応する文字を表示させる。そして、処理を終了する。
【０１１６】
本実施の形態に係る手書き文字入力装置３００は、一度認識エンジン３１５の文字認識処理により確定された文字データから認識エンジン３１５が保持するリファレンス用のストローク情報を逆引きして取得し、その取得したストローク情報の続きから文字を手書き入力することができる。
【０１１７】
特に、一度認識エンジン３１５の文字認識処理により確定された文字が拙速誤認識文字である場合、ユーザは拙速誤認識された時点の筆跡の続きから手書き文字入力を再開することができる。そのため、ユーザは最初から拙速誤認識文字を入力し直なす等の煩わしい動作をしなくて済む。さらには、ユーザは拙速誤認識された時点の筆跡の続きから手書き文字入力を再開することができるので、再開した後の手書き文字入力装置３００の文字認識率を向上させることができる。
【０１１８】
（実施の形態３）
図７を参照して、実施の形態３に係る手書き文字入力装置５００の動作の概要について説明する。図７は、本実施の形態に係る手書き文字入力装置５００の動作を説明するための図である。説明のため、図７ではタッチパネル１０１の画面だけ図示する。なお、図７では、拙速誤認識文字として“角”を例にとって説明する。正しい文字は“解”であるとする。
【０１１９】
ここで、拙速誤認識文字とは、手書き文字入力装置５００が、実際には手書き入力途中の文字を、手書き入力が中断した時点から所定時間経過後に文字認識処理して、自動的に確定した文字のことを言う。ユーザが手書き入力の途中で、たとえばタッチパネル１０１から指を離している間に所定時間が経過すると、手書き文字入力装置５００は、手書き入力途中の文字であってもその文字を文字認識処理して自動的に確定する。
【０１２０】
タッチパネル１０１の画面（７−１）で、ユーザが拙速誤認識文字である“角”に触れると、ユーザは、拙速誤認識文字をオブジェクトとして表示エリアＳ１でドラッグできるようになる。
【０１２１】
タッチパネル１０１の画面（７−２）で、ユーザが拙速誤認識文字である“角”を表示エリアＳ１からドラッグして入力エリアＳ２の左半分（入力エリアＳ２−１）にドロップすると、タッチパネル１０１の画面（７−３）で、入力エリアＳ２へドロップされた拙速誤認識文字である“角”は、その文字コード及び入力エリアＳ２のドロップ位置に基づき、正しい文字である“解”の部首としてビットマップデータで表示される。
【０１２２】
つまり、本実施の形態に係る手書き文字入力装置５００は、ユーザが入力エリアＳ２に表示されたビットマップデータを編集する操作を行わなくても、その文字コード及び入力エリアＳ２のドロップ位置に基づき、拙速誤認識文字である“角”を部首として内部認識して、ビットマップデータを部首として適切な位置（左寄せ）、大きさ（リサイズ）に自動的に編集することができる。
【０１２３】
タッチパネル１０１の画面（７−４）で、入力エリアＳ２は、拙速誤認識された時点の筆跡（すなわち“角”）の続きから手書き入力可能な状態で、拙速誤認識文字である“角”を表示する。そのため、タッチパネル１０１の画面（７−４）で、ユーザは拙速誤認識された時点の筆跡（すなわち、“角”）の続きから継続して、正しい文字である“解”の筆跡を入力することができる。
【０１２４】
なお、本実施の形態では、入力エリアＳ２に表示されたビットマップデータの編集操作として、“左寄せ”と“リサイズ”を一例にとって説明するがこれに限らない。左寄せ以外にも、右寄せ、上寄せ、下寄せなど、あらゆる方向への編集操作が考えられる。
【０１２５】
なお、本実施の形態では、拙速誤認識文字のビットマップは、正しい文字の部首“へん”として説明しているが、これに限らない。部首としては、“へん”以外にも、“つくり”、“かんむり”、“あし”、“たれ”、“にょう”、“かまえ”などがある。本実施の形態に係る手書き文字入力装置５００は、その文字コード及び入力エリアＳ２のドロップ位置に基づき、部首の態様に合わせて拙速誤認識文字のビットマップデータを自動的に編集できる。
【０１２６】
図８を参照して、実施の形態３に係る手書き文字入力装置５００の構成について説明する。図８は、手書き文字入力装置５００の構成を示すブロック図である。図８に示す手書き文字入力装置５００は、タッチパネル１０１と、第２表示部１０３と、表示制御部１０５と、第２バッファ１０９と、筆跡データ取得部１１３と、ＣＰＵ１１７と、第１表示部１２１と、第１バッファ１２５と、認識エンジン３１５と、ドラッグ機能制御部３２３と、ドロップ機能・ドロップ位置制御部５０７と、ストロークデータ取得部５１１と、ストローク情報保持部５１６と、部首認識部５１７と、を備える。
【０１２７】
タッチパネル１０１は、入力インタフェースとして機能する場合、一又は複数の接触を同時に検出し、その検出結果を筆跡データ取得部１１３と、ドラッグ機能制御部３２３とに出力する。
【０１２８】
また、タッチパネル１０１は、認識文字などを表示する第１表示部１２１及び手書き文字入力エリアである第２表示部１０３を一体に備える。そのため、第２表示部１０３、第１表示部１２１は、タッチパネル上で検出された接触に応じた表示を行うことができる。
【０１２９】
ここで、タッチパネル１０１が検出する一又は複数の接触とは、たとえば、ユーザの一又は複数の指の接触のことである。
【０１３０】
第１表示部１２１（図７中、表示エリアＳ１に相当）は、表示制御部１０５の制御に基づき、第１バッファ１２５に保持されていた文字を表示する。
【０１３１】
また、第１表示部１２１は、タッチパネル１０１と一体に設けられている。そのため、第１表示部１２１は、ユーザがタッチパネル１０１の第１表示部１２１に表示された文字をドラッグする場合、そのタッチパネル操作に応じた文字の移動を表示することができる。なお、第１表示部１２１に表示された文字の移動は、後述するドラッグ機能制御部３２３の制御に基づき制御される。
【０１３２】
第１バッファ１２５は、第１表示部１２１に表示するためのデータなどを保持する。例えば、第１バッファ１２５は、後述する認識エンジン３１５の文字認識処理により確定された文字を保持する。
【０１３３】
ドラッグ機能制御部３２３は、ユーザが第１表示部１２１に表示された文字をドラッグして移動させる場合、その文字の移動を制御する。上述のように、ユーザがドラッグして移動させる第１表示部１２１に表示された文字は、認識エンジン３１５の文字認識処理により一度確定された文字である。
【０１３４】
そして、ドラッグ機能制御部３２３は、ユーザが第１表示部１２１でドラッグした文字を第２表示部１０３にドロップする場合、その文字のビットマップデータと、その文字に対応する文字コード（たとえば、ＪＩＳコード）をドロップ機能・ドロップ位置制御部５０７に引き継ぐ。
【０１３５】
以下、ドラッグ機能制御部３２３がドロップ機能・ドロップ位置制御部５０７に引き継ぐ文字を漢字として説明する。すなわち、ドラッグ機能制御部３２３は、その漢字のビットマップデータと、その漢字に対応するＪＩＳ漢字コードとをドロップ機能・ドロップ位置制御部５０７に引き継ぐ。なお、漢字は文字の一例であり、これに限定されるものではない。
【０１３６】
ドラッグ機能制御部３２３が、漢字のビットマップデータと、その漢字に対応するＪＩＳ漢字コードとをドロップ機能・ドロップ位置制御部５０７に引き継ぐと、ドラッグ機能制御部３２３は、第１バッファ１２５の移動した漢字のビットマップデータを削除する。つまり、移動した漢字のビットマップデータが第１バッファ１２５からクリアされると、その漢字は、確定文字から解除される。上述のように、ドラッグ機能制御部３２３がドロップ機能・ドロップ位置制御部５０７へ引き継ぐ漢字は、認識エンジン３１５の文字認識処理により一度確定された文字である。
【０１３７】
なお、ユーザが第１表示部１２１で漢字のビットマップデータをドラッグした指を離すと、ドラッグ機能制御部３２３は、その漢字のビットマップデータを元の位置に移動させる。漢字のビットマップデータは第１表示部１２１内の元の位置に戻るので、ドラッグ機能制御部３２３は、第１バッファ１２５にある漢字のビットマップデータを削除しない。つまり、元の位置に戻った漢字のビットマップデータが第１バッファ１２５からクリアされないので、その漢字は、確定文字として認識される。
【０１３８】
ドロップ機能・ドロップ位置制御部５０７は、ユーザが第１表示部１２１でドラッグした文字を第２表示部１０３にビットマップデータとしてドロップする場合、ドラッグ機能制御部３２３のドラッグ操作に基づき、入力エリアＳ２内のどこでドロップされるか、そのドロップ位置を検出する。本実施の形態では、例えば図７を参照して説明したように、拙速誤認識文字である“角”は入力エリアＳ２の左半分（入力エリアＳ２−１）にドロップされる。つまり、本実施の形態では、拙速誤認識文字である“角”が正しい漢字の部首を構成する場合には、検出されるドロップ位置が、漢字の部首が本来入力されるエリアに含まれることを利用する。
【０１３９】
また、ドロップ機能・ドロップ位置制御部５０７は、ドラッグ機能制御部３２３から引き継いだ漢字に対応するＪＩＳ漢字コード及び検出されたドロップ位置（“Ｓ２−１”）を部首認識部５１７へ出力する。
【０１４０】
さらに、ドロップ機能・ドロップ位置制御部５０７は、ドラッグ機能制御部３２３から引き継いだその漢字に対応するＪＩＳ漢字コードをストロークデータ取得部５１１へ、その漢字のビットマップデータを第２バッファ１０９へ出力する。
【０１４１】
部首認識部５１７は、ドロップ機能・ドロップ位置制御部５０７から入力されたＪＩＳ漢字コード及びドロップ位置に基づき、ドラッグ機能制御部３２３から引き継いだ漢字を部首として自動的に認識し、第２バッファ１０９内で漢字のビットマップデータを編集する制御を行う。そのため、本実施の形態では、入力エリアＳ２内で編集作業がユーザによって行われなくても、ユーザが指定したドロップ位置に対応する部首を自動的に認識することができる。本実施の形態では、部首認識部５１７が認識する部首は、“角（つのへん）”である。
【０１４２】
ストロークデータ取得部５１１は、ユーザが第１表示部１２１でドラッグした文字を第２表示部１０３にドロップする場合、ドロップ機能・ドロップ位置制御部５０７から入力されたＪＩＳ漢字コードに基づき、そのＪＩＳ漢字コードに対応するストローク情報を認識エンジン３１５が保持するリファレンス用のストローク情報から逆引きして取得する。
【０１４３】
さらに、ストロークデータ取得部５１１は、部首認識部５１７が部首として自動的に認識した漢字のビットマップデータを第２バッファ１０９内で編集する場合には、逆引きして取得したストローク情報を、この部首認識部５１７が部首として自動的に認識した部首に合わせて変形する。そして、ストロークデータ取得部５１１は、この編集済みストローク情報を、ストローク情報保持部５１６へ出力する。
【０１４４】
通常、認識エンジン３１５は、認識エンジン３１５自体が保持するリファレンス用のストローク情報に基づき、第２表示部１０３に入力された手書き文字を文字認識して確定する。しかし、ストロークデータ取得部５１１は、一度文字認識処理された後の文字データに基づき、認識エンジン３１５が保持するリファレンス用のストローク情報を取得している。
【０１４５】
そして、ストロークデータ取得部５１１は、認識エンジン３１５から逆引きして得られたＪＩＳ漢字コードに対応する漢字のストローク情報をストローク情報保持部５１６へ出力する。
【０１４６】
筆跡データ取得部１１３は、タッチパネル１０１の第２表示部１０３上で検出された一又は複数の接触から、新たに手書き入力された筆跡データを取得し、その新たな筆跡データを、入力済みの筆跡データが保持されている第２バッファ１０９に追記する。つまり、第２バッファ１０９には、ドロップ機能・ドロップ位置制御部５０７から入力された漢字のビットマップデータに対して、新たに手書き入力された筆跡データが付け加えられる。
【０１４７】
更に、筆跡データ取得部１１３は、新たに手書き入力された筆跡データに基づき、新たに手書き入力されたストローク情報を、ストローク情報保持部５１６に追記する。
【０１４８】
第２バッファ１０９は、ドロップ機能・ドロップ位置制御部５０７から入力された漢字のビットマップデータを保持する。さらに、第２バッファ１０９は、筆跡データ取得部１１３から入力された入力済みの筆跡データを保持する。第２バッファ１０９に保持された編集済みの漢字のビットマップデータと、入力済みの筆跡データとは、第２表示部１０３に表示される。
【０１４９】
なお、ドロップ機能・ドロップ位置制御部５０７により漢字のビットマップデータが編集される前には、ドラッグ機能制御部３２３から引き継いだ漢字のビットマップデータが、第２表示部１０３に表示される。
【０１５０】
表示制御部１０５は、第２バッファ１０９に保持された漢字のビットマップデータを、第２表示部１０３に表示する。つまり、第２バッファ１０９に保持された部首として認識された漢字のビットマップデータと、入力済みの筆跡データとは、第２表示部１０３に表示される。
【０１５１】
本実施の形態では、第２表示部１０３において、例えば、図７の画面（７−３）に示す部首「角（つのへん）」は、部首認識部５１７により自動認識された漢字のビットマップデータである。また、図７の画面（７−４）に示すように、正しい文字“解”から部首「角（つのへん）」を除いた部分が筆跡データ取得部１１３から入力された入力済みの筆跡データとして入力される。
【０１５２】
ストローク情報保持部５１６には、（１）ストロークデータ取得部５１１から出力された編集済みストローク情報と、（２）筆跡データ取得部１１３から入力された、新たに手書き入力済み筆跡データのストローク情報と、が保持されている。
【０１５３】
また、認識エンジン３１５は、ストロークデータ取得部５１１及び筆跡データ取得部１１３からストローク情報保持部５１６に入力されたストローク情報に基づいて文字認識処理を行い、このストローク情報に対応するＪＩＳ漢字コード を表示制御部１０５へ出力する。
【０１５４】
また、認識エンジン３１５は、ユーザが手書き入力を中断してから所定時間が経過すると、手書き入力途中の文字であってもその筆跡データに基づき、文字認識処理して自動的に確定する。
【０１５５】
表示制御部１０５は、認識エンジン３１５から出力されたＪＩＳ漢字コードに基づき、表示エリアＳ１である第１表示部１２１にＪＩＳ漢字コードに対応する漢字を表示させる制御を行う。
【０１５６】
本実施の形態に係る手書き文字入力装置５００では、部首認識部５１７が、ドロップ機能・ドロップ位置制御部５０７から入力されたＪＩＳ漢字コード及びドロップ位置に基づき、文字データが正しい文字“解”の部首“角（つのへん）”であることを認識する。そのため、ユーザは、拙速誤認識文字“角”が正しい文字“解”の部首である場合には、入力エリアＳ２のうち正しい文字の部首として適切なエリアに、拙速誤認識文字のビットマップデータをドロップするだけで、拙速誤認識された時点の筆跡の続きから手書き文字入力を再開することができる。再開した後の手書き文字入力装置５００の文字認識率を向上させることができる。なお、本実施の形態では、辺やつくりなどの部首単体に対して、認識エンジン３１５が独自に認識可能な専用の文字コードを割り当てても良い。
【０１５７】
図９（ａ）を参照して、手書き文字入力装置５００の手書き文字入力処理のフロー（１）を示す。図９（ａ）に示す手書き文字入力処理のフロー（１）は、ユーザが入力エリアＳ２（第２表示部１０３）に手書きで文字を入力してから、表示エリアＳ１（第１表示部１２１）に手書きで入力された文字を表示するまでの処理である。
【０１５８】
ステップＳＴ６００では、タッチパネル１０１が、第２表示部１０３（入力エリアＳ２）に入力された接触を検出する。そして、ステップＳＴ６０２へ遷移する。
【０１５９】
ステップＳＴ６０２では、筆跡データ取得部１１３が、タッチパネル１０１の検出結果から筆跡データを取得する。そして、ステップＳＴ６０４へ遷移する。
【０１６０】
ステップＳＴ６０４では、認識エンジン３１５が、文字認識辞書に基づき、筆跡データの文字認識処理を行い、筆跡データに対応する文字コードを出力する。そして、ステップＳＴ６０６へ遷移する。
【０１６１】
ステップＳＴ６０６では、表示制御部１０５が認識エンジン３１５から出力された文字コードに対応する文字を第１表示部１２１（表示エリアＳ１）に表示させる制御を行う。そして、処理を終了する。
【０１６２】
図９（ｂ）を参照して、手書き文字入力装置５００の手書き文字入力処理のフロー（２）を示す。図９（ｂ）に示す手書き文字入力処理のフロー（２）は、ユーザが表示エリアＳ１（第１表示部１２１）に表示された拙速誤認識文字をドラッグしてから、入力エリアＳ２（第２表示部１０３）に拙速誤認識文字を表示するまでの処理である。
【０１６３】
ステップＳＴ６２０では、タッチパネル１０１が、ユーザが第１表示部１２１（表示エリアＳ１）に表示された拙速誤認識文字を選択したことを検出する。そして、ステップＳＴ６２２へ遷移する。
【０１６４】
ステップＳＴ６２２では、ドラッグ機能制御部３２３が、ユーザがタッチパネル１０１上でドラッグする拙速誤認識文字のビットマップデータの移動を制御する。そして、ステップＳＴ６２４へ遷移する。
【０１６５】
ステップＳＴ６２４では、ドロップ機能・ドロップ位置制御部５０７が、ドラッグ機能制御部３２３から、ユーザがタッチパネル１０１上でドラッグする拙速誤認識文字に対応するビットマップデータと、その文字コードとを引き継ぐ。そして、ステップＳＴ６２６へ遷移する。
【０１６６】
ステップＳＴ６２６では、ドロップ機能・ドロップ位置制御部５０７が、ドラッグ機能制御部３２３から引き継いだ文字のビットマップデータを第２バッファ１０９に出力する。そして、ステップＳＴ６２８へ遷移する。
【０１６７】
ステップＳＴ６２８では、ドロップ機能・ドロップ位置制御部５０７が、ドラッグ機能制御部３２３のドラッグ操作に基づき、入力エリアＳ２内のどこでドロップされるか、そのドロップ位置を検出する。そして、ステップＳＴ６３０へ遷移する。
【０１６８】
ステップＳＴ６３０では、部首認識部５１７は、ドロップ機能・ドロップ位置制御部５０７から入力されたＪＩＳ漢字コード及びドロップ位置に基づき、ドラッグ機能制御部３２３から引き継いだ漢字を部首として自動的に認識し、第２バッファ１０９内で漢字のビットマップデータを編集する制御を行う。そして、ステップＳＴ６３２へ遷移する。
【０１６９】
ステップＳＴ６３２では、ストロークデータ取得部５１１が、ドロップ機能・ドロップ位置制御部５０７から入力されたＪＩＳ漢字コードに基づき、そのＪＩＳ漢字コードに対応するストローク情報を認識エンジン３１５が保持するリファレンス用のストローク情報から逆引きして取得し、そのストローク情報をストローク情報保持部５１６に出力する。そして、ステップＳＴ６３４へ遷移する。
【０１７０】
ステップＳＴ６３４では、筆跡データ取得部１１３が、新たに手書き入力された筆跡データに基づき、新たに手書き入力されたストローク情報を、ストローク情報保持部５１６に出力する。そして、ステップＳＴ６３６へ出力する。
【０１７１】
ステップＳＴ６３６では、認識エンジン３１５は、ストロークデータ取得部５１１から入力されたストローク情報に基づき、ストローク情報に対応する文字コード（ＪＩＳ漢字コード）を表示制御部１０５へ出力する。そして、ステップＳＴ６３８へ遷移する。
【０１７２】
ステップＳＴ６３８では、表示制御部１０５は、認識エンジン３１５から出力された文字コードに基づき、表示エリアＳ１（第１表示部１２１）に文字コードに対応する文字を表示させる。そして、処理を終了する。
【０１７３】
なお、上記各実施の形態に係る手書き文字入力装置は、タッチパネルを備える携帯端末などの電子機器に適用することができる。
【０１７４】
なお、上記各実施の形態において、タッチパネル１０１は、容量性、抵抗性、赤外線、及び弾性表面波技術、並びにその他の近接センサアレイ、又は、タッチパネル１０１と接触点を決定するための複数のタッチセンシティビティ技術を用いて、タッチパネル１０１は上の接触及び接触による任意の動き又はその動きの中断を検出することができる。
【０１７５】
なお、上記各実施の形態に係る手書き文字入力装置では、タッチパネル１０１が検出する接触とは、たとえば、ユーザの一又は複数の指の接触であるとして説明したが、これに限らない。タッチパネル１０１が、タッチペンなどの入力デバイスの接触を検出しても良い。
【０１７６】
なお、上記各実施の形態において、ドラッグする拙速誤認識文字を１文字で説明したがこれに限らない。拙速誤認識文字を含む複数の文字を表示エリアＳ１上で選択しても良いし、拙速誤認識文字を含んで誤って入力された単語、文節、一文を選択しても良い。
【０１７７】
なお、上記各実施の形態において、拙速誤認識文字を例にとって説明したがこれに限らない。単に誤認識された文字であっても良い。
【産業上の利用可能性】
【０１７８】
本発明に係る手書き文字入力装置は、一度文字認識処理されて確定した誤認識文字を、誤認識された時点の筆跡データの続きから再度手書き入力可能にするという効果を有し、携帯端末等として有用である。
【符号の説明】
【０１７９】
１００、３００、５００    手書き文字入力装置
１０１                    タッチパネル
１０３                    第２表示部
１０５                    表示制御部
１０７、３０７            ドロップ機能制御部
１０９                    第２バッファ
１１１、３１１、５１１    ストロークデータ取得部
１１３                    筆跡データ取得部
１１５、３１５            認識エンジン
１１６、３１６、５１６    ストローク情報保持部
１１７                    ＣＰＵ
１２１                    第１表示部
１２３、３２３            ドラッグ機能制御部
１２５                    第１バッファ
３１７                    筆跡データレタッチ制御部
５０７                    ドロップ機能・ドロップ位置制御部
５１７                    部首認識部
Ｓ１                      表示エリア
Ｓ２                      入力エリア
【図１】
0005550598.tif 000002
【図２】
0005550598.tif 000003
【図３】
0005550598.tif 000004
【図４】
0005550598.tif 000005
【図５】
0005550598.tif 000006
【図６】
0005550598.tif 000007
【図７】
0005550598.tif 000008
【図８】
0005550598.tif 000009
【図９】
0005550598.tif 000010