(57)【要約】手書き入力を受け付け可能な画面に、一部が重複する第１及び第２の入力領域のそれぞれについて前記第１及び第２の入力領域を示唆する表示を行い、又は、手書き入力による複数のストロークを前記一部が重複する第１及び第２の入力領域のいずれかに割り当てて、前記第１の入力領域及び前記第２の入力領域それぞれに対する手書き入力をそれぞれ異なる文字として認識することにより、手書き入力の文字認識精度及び速度を向上させることが可能な、文字認識方法が開示される。
2016181566.tif 000002
【特許請求の範囲】
【請求項１】
手書き入力を受け付け可能な画面に、一部が重複する第１および第２の入力領域のそれぞれについて、前記第１および第２の入力領域を示唆する表示を行い、  前記第１の入力領域および第２の入力領域それぞれに対する手書き入力を、それぞれ異なる文字として認識する、文字認識方法。
【請求項２】
一部が重複する第１及び第２の入力領域を有する画面への手書き入力による複数のストロークを受け付け、  前記複数のストロークを、前記第１又は第２の入力領域のいずれかに割り当て、第１及び第２の文字を認識する、文字認識方法。
【請求項３】
前記第１の入力領域と前記第２の入力領域の重複する領域の幅は、前記第１の入力領域の幅の半分より大きい、請求項１又は２に記載の文字認識方法。
【請求項４】
前記第１の入力領域と前記第２の入力領域の重複する領域の高さは、前記第１の入力領域の高さの半分より大きい、請求項１〜３のうちのいずれか１項に記載の文字認識方法。
【請求項５】
前記第１の入力領域と前記第２の入力領域の重複する領域の面積は、前記第１の入力領域の面積の４分の１より大きい、請求項１〜４のうちのいずれか１項に記載の文字認識方法。
【請求項６】
前記第１及び第２の入力領域は、前記画面の垂直方向及び水平方向のいずれにもシフトされている、請求項１〜５のうちのいずれか１項に記載の文字認識方法。
【請求項７】
前記手書き入力による複数のストロークのうちの、前記第１及び第２の入力領域の重複領域を通るストロークについては、該ストロークの座標情報と、該ストロークの前後のストロークの、前記第１又は第２の入力領域への割り当て状況とを参照して、前記第１又は第２の入力領域に割り当てる、請求項１〜６のうちのいずれか１項に記載の文字認識方法。
【請求項８】
前記第１及び第２の入力領域の重複領域を通るストロークの割り当てに、該ストロークの少なくとも始点座標又は終点座標を用いる、請求項７に記載の文字認識方法。
【請求項９】
前記複数のストロークのそれぞれの割り当てに、該ストロークの座標情報に基づく該ストロークの通過領域の情報を用いる、請求項７又は８に記載の文字認識方法。
【請求項１０】
前記通過領域の情報は、前記ストロークが通る領域を含む矩形領域の情報を含む、請求項９に記載の文字認識方法。
【請求項１１】
前記通過領域の情報を用いることは、該通過領域が前記第１及び第２の入力領域のそれぞれにどの程度含まれているかを表す指標値を算出することを含む、請求項９に記載の文字認識方法。
【請求項１２】
前記指標値は、前記通過領域における前記第１の入力領域に含まれる部分の、前記通過領域全体に対する第１比率と、同通過領域における前記第２の入力領域に含まれる部分の、前記通過領域全体に対する第２比率と、を含む、請求項１１に記載の文字認識方法。
【請求項１３】
前記通過領域の情報を用いることは、前記複数のストロークのそれぞれに対して、前記第１及び第２比率に基づいて、前記第１及び第２の入力領域の重複領域を通るストロークであるか否かを判定することを更に含む、請求項１２に記載の文字認識方法。
【請求項１４】
ある１つのストロークについて、前記第１及び第２比率の差が所定閾値以下である場合に、該ストロークを、前記重複領域を通るストロークと判定する、請求項１３に記載の文字認識方法。
【請求項１５】
前記割り当て状況を参照した割り当ては、前記重複領域を通る、あるストロークについて、該ストロークの前後のストロークが共に前記第１の入力領域に割り当てられている場合は、前記第１の入力領域を割り当て、該ストロークの前後のストロークが共に前記第２の入力領域に割り当てられている場合は、前記第２の入力領域を割り当てることを含む、請求項７に記載の文字認識方法。
【請求項１６】
前記割り当て状況を参照した割り当ては、前記複数のストロークに基づいて、第１の文字を表現する１以上のストロークと第２の文字を表現する１以上のストロークとの組み合わせの候補を複数作成し、作成した候補毎に、該候補に基づいて認識された文字の尤もらしさを表す評価点を算出し、算出した評価点が最も高い候補に基づいて、前記重複領域を通るストロークを前記第１又は第２の入力領域に割り当てることを更に含む、請求項１５に記載の文字認識方法。
【請求項１７】
前記評価点を算出することは、前記重複領域を通るストロークの始点座標又は終点座標が、前記第１の入力領域又は前記第２の入力領域における前記重複領域を除く領域に存在する場合は、存在しない場合に比べて前記評価点を高く算出することを含む、請求項１６に記載の文字認識方法。
【請求項１８】
前記重複領域を通るストロークについて、その前記始点座標又は終点座標が、前記第１の入力領域又は前記第２の入力領域における前記重複領域を除く領域に存在する場合は、存在しない場合に比べて、前記始点座標又は終点座標が存在する入力領域への割り当てがなされやすくする、請求項８に記載の文字認識方法。
【請求項１９】
前記手書き入力は、スタライス入力を含む、請求項１〜１８にいずれか１項に記載の文字認識方法。
【請求項２０】
手書き入力を受け付け可能な画面に、一部が重複する第１および第２の入力領域のそれぞれについて、前記第１および第２の入力領域を示唆する表示を与える部位又は処理部と、  前記第１の入力領域および第２の入力領域それぞれに対する手書き入力を、それぞれ異なる文字として認識する処理部と、  を備える、文字認識装置。
【請求項２１】
コンピューターに、  手書き入力を受け付け可能な画面に、一部が重複する第１および第２の入力領域のそれぞれについて、前記第１および第２の入力領域を示唆する表示を行い、  前記第１の入力領域および第２の入力領域それぞれに対する手書き入力を、それぞれ異なる文字として認識する、  処理を実行させる文字認識プログラム。
【請求項２２】
一部が重複する第１及び第２の入力領域を有する画面への手書き入力による複数のストロークを受け付け、  前記複数のストロークを、前記第１又は第２の入力領域のいずれかに割り当て、第１及び第２の文字を認識する、  処理部を備える、文字認識装置。
【請求項２３】
コンピューターに、  一部が重複する第１及び第２の入力領域を有する画面への手書き入力による複数のストロークを受け付け、  前記複数のストロークを、前記第１又は第２の入力領域のいずれかに割り当て、第１及び第２の文字を認識する、  処理を実行させる文字認識プログラム。
【請求項２４】
一部が重複する第１及び第２の入力領域が形成された画面への手書き入力による複数のストロークを受け付け、  前記複数のストロークのそれぞれを、それぞれの通過領域が前記第１及び第２の入力領域のそれぞれにどの程度含まれているかに基づいて、前記第１又は第２の入力領域に割り当て、  前記第１又は第２の入力領域にそれぞれ割り当てられた前記複数のストロークに基づき、第１及び第２の文字を認識する、処理を実行する、  処理部を備える文字認識装置。
【請求項２５】
コンピューターが、  一部が重複する第１及び第２の入力領域が形成された画面への手書き入力による複数のストロークを受け付け、  前記複数のストロークのそれぞれを、それぞれの通過領域が前記第１及び第２の入力領域のそれぞれにどの程度含まれているかに基づいて、前記第１又は第２の入力領域に割り当て、  前記第１又は第２の入力領域にそれぞれ割り当てられた前記複数のストロークに基づき、第１及び第２の文字を認識する、処理を実行する、文字認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本開示は、文字認識方法、文字認識装置及び文字認識プログラムに関する。
【背景技術】
【０００２】  複数の入力枠を用いた文字認識用の手書き入力エンジンでは、複数の入力枠のそれぞれ毎に、手書き入力されたときに得られるストロークに基づいて文字認識が行われる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2014-38384号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】  しかしながら、限られた画面サイズのデバイスにおいては、複数の入力枠を設定することが難しくなる。このため、デバイスの画面サイズの制約にあわせて、同じ入力枠に対する複数回の入力を行い、２以上の文字からなる文字列を入力する場合、１文字ごとの手書き入力の完了を確実に検知するための一定の待ち時間を確保することが必要となる。従って、かかる構成では、全ての文字の入力に、一括して入力するよりも時間が多くかかる。【０００５】  これに対して、１文字用の入力枠を用いて複数文字を手書き入力することを可能とするには、手書き入力されたときに得られる複数のストロークのそれぞれについて、各ストロークをどの文字に割り当てるのか、という組み合わせについて多数検討する必要がある。例えば、１文字用の入力枠を用いて複数文字を手書き入力することを可能とするには、手書き入力されたストロークの情報に基づいて、手書き入力された文字数（ストロークの切れ目）を判別する必要がある。【０００６】  １つの側面では、限られた画面サイズのデバイスにおいても、複数の文字の連続的な手書き入力を可能とすることを目的とする。
【課題を解決するための手段】
【０００７】  本開示の一局面によれば、手書き入力を受け付け可能な画面に、一部が重複する第１および第２の入力領域のそれぞれについて、前記第１および第２の入力領域を示唆する表示を行い、  前記第１の入力領域および第２の入力領域それぞれに対する手書き入力を、それぞれ異なる文字として認識する、入力受付方法が提供される。
【発明の効果】
【０００８】  本開示によれば、限られた画面サイズのデバイスにおいても、複数の文字の連続的な手書き入力が可能となる。
【図面の簡単な説明】
【０００９】
【図１】実施例１のプログラム構成を説明する図である。
【図２】文字認識装置の一形態を示す図である。
【図３】文字認識装置の他の一形態を示す図である。
【図４】文字認識装置のハードウェア構成の一例を示す図である。
【図５】文字認識装置の機能構成の一例を示す図である。
【図６】表示操作装置の画面の一例を示す図である。
【図７】文字認識装置による処理の一例を説明する概略フローチャートである。
【図８】ストローク情報の一例を示す図である。
【図９】一のストロークに係る座標情報の説明図である。
【図１０】割当結果情報の一例を示す図である。
【図１１】認識結果情報の一例を示す図である。
【図１２】認識文字が表示された画面の一例を示す図である。
【図１３】文字認識装置による処理の一例を説明する概略フローチャートである。
【図１４】入力枠割当処理の一例を説明する概略フローチャートである。
【図１５】矩形領域の説明図である。
【図１６】組み合わせ候補及びその平均評価値の説明図である。
【図１７】占有率の説明図である。
【図１８】組み合わせ候補の説明図である。
【図１９】平均評価値の説明図である。
【図２０】重複ストロークの割り当て方法の一例の説明図である。
【図２１】第１比較例による入力画面を示す図である。
【図２２】第２比較例による入力画面を示す図である。
【図２３】第２比較例における組み合わせ候補の説明図である。
【図２４】本実施例の効果の説明図である。
【図２５】本実施例の効果の説明図である。
【図２６】本実施例の効果の説明図である。
【図２７】第１変形例による入力枠の説明図である。
【図２８】第２変形例による入力枠の説明図である。
【図２９】第３変形例による入力枠の説明図である。
【図３０】第４変形例による入力枠の説明図である。
【図３１】第５変形例による入力枠の説明図である。
【図３２】第６変形例による入力枠の説明図である。
【図３３】第７変形例による入力枠の説明図である。
【図３４】第１の用途の説明図である。
【図３５】第２の用途の説明図である。
【図３６】第３の用途の説明図である。
【図３７】第１及び第２入力領域を示唆する表示の説明図である。
【発明を実施するための形態】
【００１０】  以下、添付図面を参照しながら各実施例について詳細に説明する。
【００１１】  以下の説明において、文字とは、ひらがな、カタカナ、アルファベット、漢字、数字のみならず、記号をも含む概念とする。
【００１２】  図１は、一実施例によるプログラム構成を説明する図である。
【００１３】  プログラム１００は、アプリケーション１０を含む。以下の説明では、アプリケーション１０を実行する装置を「文字認識装置１」と表す。
【００１４】  アプリケーション１０は、画面に対する手書き入力されたストロークに基づいて、手書き入力された文字を認識し、認識した文字を表示するプログラムを含む。手書き入力とは、手（以下の例では、指）を動かして入力したい文字を表現する入力方法であり、スタライスを用いた入力方法を含む概念である。具体的には、アプリケーション１０は、ユーザが画面に手書き入力したストロークに基づいて、手書き入力された文字を認識する。
【００１５】  手書き入力されたストロークとは、手書き入力されるときの指又はスタライスの軌跡（座標列）に対応する。ストロークの１単位は、座標軸且つ時間軸において連続した１つの軌跡（１画分の軌跡）である。座標軸とは、手書き入力される入力画面上の座標軸である。１文字は、１以上のストロークにより表現できる。
【００１６】  図２は、文字認識装置の一形態を示す図である。
【００１７】  文字認識装置１は、例えば図２に示すように、ユーザに装着可能な形態であることができる。図２に示す例では、文字認識装置１は、ベルトによりユーザの腕に装着できる腕時計型のデバイス２であり、タッチ操作可能な表示部２Ａを備える。この場合、表示部２Ａが、手書き入力される入力画面を形成する。
【００１８】  図３は、文字認識装置の他の一形態を示す図である。
【００１９】  文字認識装置１は、例えば図３に示すように、ユーザが携帯可能な端末の形態であることができる。図３に示す例では、文字認識装置１は、タブレット型のデバイス３であり、タッチ操作可能な表示部３Ａを備える。この場合、表示部３Ａが、手書き入力される入力画面を形成する。
【００２０】  図４は、文字認識装置のハードウェア構成の一例を示す図である。図４に示す例では、文字認識装置１は、一のコンピューターにより形成される。但し、文字認識装置１は、１つ以上のコンピューターの集合により形成されてもよい。
【００２１】  文字認識装置１は、それぞれバスＢで相互に接続されている表示操作装置１０１、ドライブ装置１０２、補助記憶装置１０３、メモリ装置１０４、演算処理装置１０５、インターフェース装置１０６を有する。
【００２２】  表示操作装置１０１は、例えばタッチパネル等であり、各種信号の入力と、各種信号の表示（出力）に用いられる。図３に示したデバイス２の場合、表示操作装置１０１は、表示部２Ａにより実現される。図４に示したデバイス３の場合、表示操作装置１０１は、表示部３Ａにより実現される。インターフェース装置１０６は、モデル、ＬＡＮカード等を含み、ネットワークに接続する為に用いられる。
【００２３】  アプリケーション１０は、文字認識装置１を制御する各種プログラムの少なくとも一部である。これらのプログラムは、例えば記録媒体１０７による配布やネットワークからのダウンロード等によって提供される。アプリケーション１０を記録した記録媒体１０７は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
【００２４】  また、アプリケーション１０を記録した記録媒体１０７がドライブ装置１０２にセットされると、各プログラムは記録媒体１０７からドライブ装置１０２を介して補助記憶装置１０３にインストールされる。ネットワークからダウンロードされた各プログラムは、インターフェース装置１０６を介して補助記憶装置１０３にインストールされる。
【００２５】  補助記憶装置１０３は、インストールされたアプリケーション１０を格納すると共に、基本ソフトウェアであるＯＳ（Operating System）、必要なファイル、データ等を格納する。メモリ装置１０４は、各プログラムの起動時に補助記憶装置１０３にそれぞれのプログラムを読み出して格納する。そして、演算処理装置１０５は、メモリ装置１０４に格納された各プログラムに従って、後述するような各種処理を実現している。
【００２６】  図５は、文字認識装置の機能構成の一例を示す図である。文字認識装置１は、手書き入力検知部１１と、入力枠割当処理部１２と、文字認識部１３と、認識文字表示部１４と、記憶部４１とを有する。
【００２７】  手書き入力検知部１１、入力枠割当処理部１２、文字認識部１３、及び認識文字表示部１４は、演算処理装置１０５がアプリケーション１０を実行することで実現される。記憶部４１は、補助記憶装置１０３やメモリ装置１０４により実現される。
【００２８】  手書き入力検知部１１は、表示操作装置１０１における手書き入力可能な領域に対する手書き入力を検知する。手書き入力検知部１１は、入力画面への手書き入力による複数のストロークを受け付ける。手書き入力可能な領域には、手書き入力用の入力枠（図６参照）が表示される。入力枠は、その入力枠内の領域で１文字に係る１以上のストロークを手書き入力を行うようにユーザを促すガイドとして機能する。尚、手書き入力可能な領域は、表示操作装置１０１の入力画面の全体に設定されてもよいし、入力画面の一部に設定されてもよい。以下では、一例として、手書き入力可能な領域は、表示操作装置１０１の画面サイズが比較的小さいが故に、入力画面全体に設定されているものとする。
【００２９】  図６は、入力枠が表示される表示操作装置１０１の入力画面の一例を示す図である。
【００３０】  図６に示す例では、表示操作装置１０１の入力画面９０には、一部が重複する第１入力枠９１及び第２入力枠９２が表示される。第１入力枠９１及び第２入力枠９２は、重複領域９３を有する。即ち、第１入力枠９１は、第２入力枠９２と重複する重複領域９３と、第２入力枠９２とは重複しない領域９４（以下、「第１非重複領域９４」とも称する）とからなる。また、第２入力枠９２は、重複領域９３と、第１入力枠９１とは重複しない領域９５（以下、「第２非重複領域９５」とも称する）とからなる。第１入力枠９１は、入力画面９０の左側且つ上側の角に配置され、第２入力枠９２は、入力画面９０の右側且つ下側の角に配置され、第１入力枠９１の右側且つ下側の角が、第２入力枠９２の左側且つ上側の角と重複する。
【００３１】  尚、手書き入力可能な領域に第１入力枠９１及び第２入力枠９２が表示されるとき、第１入力枠９１内の領域全体が手書き入力可能な領域（第１の入力領域の一例）であり、第２入力枠９２内の領域全体が手書き入力可能な領域（第２の入力領域の一例）である。
【００３２】  尚、第１入力枠９１の領域及び第２入力枠９２の領域を定める各座標値は、記憶部４１に保持される。以下では、一例として、図６に示すように、４０１×４０１点の座標値を持つ入力画面９０が想定される。座標系の原点は、例えば、図６に示すように、入力画面９０の左上の角に固定される。図６に示すように、第１入力枠９１が、４点の座標値（０，０）、（２９０，０）、（２９０，２９０）及び（０，２９０）を結ぶ線分で囲まれる領域である場合、これらの４点の座標値は、記憶部４１に保持される。同様に、同入力画面９０において、第２入力枠９２が、４点の座標値（１１０，１１０）、（４００，１１０）、（４００，４００）及び（１１０，４００）を結ぶ線分で囲まれる領域である場合、これらの４点の座標値は、記憶部４１に保持される。
【００３３】  図７は、入力画面９０に対して２文字"あ"及び"め"を手書き入力するときのストロークの説明図である。図７には、各ストロークが手書き入力されたときの入力画面９０の状態の一例が、左から右（紙上では下から上）の順に時系列で示されている。図７では、一番左から、第１入力枠９１に"あ"の１画目のストロークが入力された状態、第１入力枠９１に"あ"の２画目のストロークが入力された状態、及び、第１入力枠９１に"あ"の３画目のストロークが入力された状態が順に示されている。また、更に、第２入力枠９２に"め"の１画目のストロークが入力された状態、及び、第１入力枠９１に"め"の２画目のストロークが入力された状態が順に示されている。尚、図７に示すように、入力画面９０に手書き入力される各ストロークは、その座標情報に基づいて、入力画面９０上に描画される。
【００３４】  手書き入力検知部１１は、手書き入力を検知すると、その手書き入力に係るストロークを表すストローク情報を生成し、生成したストローク情報を記憶部４１に記憶する。ストローク情報は、各ストロークの座標情報を含む。図８に示す例では、座標情報は、得られたストローク毎にＩＤ（ストロークＩＤ）が付与され、ストロークＩＤ毎に管理される。ここでは、一例として、ストロークＩＤは、各ストローク間の時系列順も表す。但し、ストローク情報は、タイムスタンプのような時間情報を別途有してもよい。
【００３５】  例えば、図８に示す例では、"ｓ０１"、"ｓ０２"・・・がストロークＩＤに対応し、"ｓ"の後の数字（例えば"０１"等）が各ストロークの時系列順を表す。各ストロークに係る座標情報は、そのストロークを表す複数の点の座標列を含む。図８に示す例では、例えば、ストロークＩＤ＝ｓ０１に係る座標情報は、ｎ個の座標値の座標列（ｘ１１、ｙ１１）、・・・、（ｘｎ１、ｙｎ１）を含む。即ち、ストロークＩＤ＝ｓ０１に係るストロークは、座標列（ｘ１１，ｙ１１），・・・，（ｘｎ１，ｙｎ１）の各座標を結ぶことにより形成される。ｎ個の座標値は、図９に示すように、ストロークＩＤ＝ｓ０１に係るストロークＳを形成する各点Ｐ１・・・、Ｐｎの各座標値に対応する。尚、ｎは、変数であり、ストローク毎に異なり得る。
【００３６】  入力枠割当処理部１２は、入力枠割当処理を行う。入力枠割当処理は、手書き入力検知部１１で検知された複数のストロークのそれぞれを、第１入力枠９１及び第２入力枠９２のうちのいずれかに割り当てることを含む。例えば、入力枠割当処理部１２は、図１０に示すように、割り当てられたストロークと、入力枠との関係を表す割当結果情報を生成し、生成した割当結果情報を記憶部４１に記憶する。図１０に示す例では、割当結果情報は、３つのストロークＩＤ"ｓ０１"、"ｓ０２"、"ｓ０３"が第１入力枠９１に割り当てられ、且つ、２つのストロークＩＤ"ｓ０４"、"ｓ０５"が第２入力枠９２に割り当てられたことを表す。入力枠割当処理の具体例については後述する。
【００３７】  文字認識部１３は、手書き入力検知部１１で検知された複数のストロークと、それぞれのストロークが割り当てられた入力枠（第１入力枠９１又は第２入力枠９２）とに基づいて、入力枠ごとに手書き入力された１文字を認識する。例えば、文字認識部１３は、入力枠に割り当てられた１以上のストロークに基づいて１文字を認識する際して、該１以上のストロークにより形成されうる複数の候補を作成し、候補毎に、その候補の尤もらしさを表す評価値（スコア）を算出する。そして、文字認識部１３は、評価値の最も高い候補を、第１の候補（認識文字）として出力する。尚、認識文字は、一般的に、第１の候補（最も尤もらしい候補）に対応し、修正候補は、２番目以降に尤もらしい候補に対応する。
【００３８】  文字認識部１３は、例えば、図１１に示すように、認識結果を表す認識結果情報を生成し、生成した認識結果情報を記憶部４１に記憶する。認識結果情報は、認識に用いたストロークと、そのストロークにより認識された文字（認識文字）との対応関係を表す。図１１に示す例では、認識文字"あ"が、ストロークＩＤ"ｓ０１"、"ｓ０２"、"ｓ０３"に係る３つのストロークの組み合わせに基づいて認識されたことを表す。また、認識文字"め"が、ストロークＩＤ"ｓ０３"、"ｓ０４"に係る２つのストロークの組み合わせに基づいて認識されたことを表す。
【００３９】  尚、認識結果情報は、図１１に示すように、候補情報を含んでもよい。候補情報は、認識文字に対する修正候補の文字を表す。例えば、図１１に示す例では、各認識文字"あ"及び"め"に係る候補情報が示されている。図１１に示す例では、例えば、"あ"に係る候補情報は、ｎ個の修正候補の文字"Ｒ１１"、"Ｒ２１"、"Ｒ３１"、・・・、"Ｒｎ１"を含む。これは、認識文字"あ"を認識した際に、ｎ個の修正候補の文字"Ｒ１１"、"Ｒ２１"、"Ｒ３１"、・・・、"Ｒｎ１"が２番目以降の候補として得られたことを表す。
【００４０】  認識文字表示部１４は、認識結果情報に基づいて、認識文字を表示する。即ち、認識文字表示部１４は、認識結果情報に基づいて、１以上の認識文字を表示操作装置１０１の表示領域に表示する。図１２は、認識文字が表示された表示操作装置１０１の入力画面９０の一例を概略的に示す図である。図１２に示す例では、２つの認識文字"あ"、及び"め"が表示されている。認識文字の表示領域は、表示操作装置１０１の画面の任意の場所に出力されてもよい。また、入力画面９０における認識文字の表示可能な領域は、入力画面９０全体に設定されてもよいし、入力画面９０の一部に設定されてもよい。図１２に示す例では、認識文字"あ"及び"め"は、入力画面９０における第１入力枠９１内の領域に表示されている。尚、この状態においても、第１入力枠９１に対しては、新たな手書き入力が可能とされてよい。
【００４１】  次に、文字認識装置１の動作例について説明する。
【００４２】  図１３は、文字認識装置による処理の一例を説明する概略フローチャートである。
【００４３】  ステップＳ１３００では、手書き入力検知部１１は、手書き入力による１ストロークの開始（タッチダウンイベント）を検知する。タッチダウンイベントは、例えばタッチ入力が一定時間以上検知されていない状態において、入力画面９０に対するタッチ入力が検知されたときに検知される。
【００４４】  ステップＳ１３０２では、手書き入力検知部１１は、ステップＳ１３００で検知した１ストロークの終了（タッチアップイベント）を検知する。タッチアップイベントは、入力画面９０に対するタッチ入力が無くなったときに検知される。このようにして、入力検知部１１が１ストローク（１タッチイベント）を検知する毎に、該１ストロークを含む一連の手書き入力が終了するまで、ステップＳ１３０４乃至ステップＳ１３０８の処理が実行される。但し、ステップＳ１３０４乃至ステップＳ１３０８の処理は、複数のストロークが検知される毎に、該複数のストロークに対して一括的に実行されてもよい。
【００４５】  ステップＳ１３０４では、入力枠割当処理部１２は、入力枠割当処理を実行する。尚、入力枠割当処理部１２は、１ストロークに対して入力枠割当処理を行うごとに、今回の一連の手書き入力に係る割当結果情報（図１０参照）を更新する。今回の一連の手書き入力とは、ステップＳ１３００で検知されたタッチダウンイベントから、ステップＳ１３１０でタッチ入力が一定時間以上検知されないと判定されるまでに行われた手書き入力を意味する。一連の手書き入力は、１以上のストロークの連続的な入力を伴う。入力枠割当処理の具体例は、後述する。
【００４６】  ステップＳ１３０６では、文字認識部１３は、今回の一連の手書き入力に係る割当結果情報（図１０参照）に基づいて、入力枠ごとに手書き入力された文字を認識する。例えば、文字認識部１３は、今回の一連の手書き入力が継続している間、割当結果情報にストロークが追加される毎に、認識処理を行う。この場合、ストロークが追加される毎に、認識処理結果（認識文字）が変更されうる。但し、文字認識部１３は、一連の手書き入力が終了した段階（割当結果が確定した段階）で、認識処理を一括的に行ってもよい。
【００４７】  ステップＳ１３０８では、認識文字表示部１４は、ステップＳ１３０６で得られた認識処理結果に基づいて、認識文字を表示する。
【００４８】  ステップＳ１３１０では、手書き入力検知部１１は、タッチ入力が一定時間以上無いか否か、即ち一連の手書き入力が終了したか否かを判定する。例えば、手書き入力検知部１１は、手書き入力が一定時間検知されない場合に検知される。一定時間は、連続的に２以上のストロークを手書き入力する際に発生しうるストローク間の期間（タッチ入力が一時的に無くなる期間）よりも有意に長い。一連の手書き入力が終了したと判定した場合は、ステップＳ１３１２に進み、それ以外の場合（即ち新たなタッチダウンイベントを検知した場合）は、ステップＳ１３０２に戻り、新たなストロークの入力に対して上述の処理が実行される。
【００４９】  ステップＳ１３１２では、文字認識部１３は、今回の一連の手書き入力に対して現在の認識処理結果を確定させる。これに伴い、今回の一連の手書き入力に対する図１３の処理は終了となる。
【００５０】  図１４は、入力枠割当処理の一例を説明する概略フローチャートである。
【００５１】  図１４に示す処理は、以下で説明するように、第１入力枠９１及び第２入力枠９２の順に２文字だけ連続して手書き入力が行われる場合のみならず、第１入力枠９１及び第２入力枠９２に交互に３文字以上連続して手書き入力が行われる場合にも適用できる。後者の例としては、例えば、ユーザが、１文字目を第１入力枠９１に手書き入力し、２文字目を第２入力枠９２に手書き入力し、３文字目を第１入力枠９１に手書き入力し、４文字目を第２入力枠９２に手書き入力し、といった具合である。
【００５２】  図１４に示す処理は、以下で説明するように、一例として、第１入力枠９１及び第２入力枠９２に交互に３文字以上連続して手書き入力が行われる場合には、直近の２入力枠ごとに入力枠割当処理を行う。従って、以下の説明において、例えば「２つ前の入力枠」という用語は、第１入力枠９１、第２入力枠９２、第１入力枠９１、第２入力枠９２、といった具合に順に割り当てられていく状況を想定すれば理解できる。例えば、今回のストロークが３文字目のストロークであり、第１入力枠９１に割り当てられたとき、該ストロークが割り当てた第１入力枠９１の「２つ前の入力枠」とは、第１入力枠９１に当たる。
【００５３】  図１４に示す処理は、以下で説明するように、一連の手書き入力が開始され、後述の重複ストロークが発生するまでは、１入力枠（第１入力枠９１）への割り当てのみとなる。他方、図１４に示す処理は、以下で説明するように、重複ストロークが発生した後は、直近の２入力枠ごとに、同２入力枠に割り当てられた１以上のストロークに基づいて、入力枠割当処理を行う。
【００５４】  ステップＳ１４００では、入力枠割当処理部１２は、今回入力されたストロークの座標情報を記憶部４１から取得する（読み出す）。
【００５５】  ステップＳ１４０２では、入力枠割当処理部１２は、ステップＳ１４００で得た今回入力されたストロークの座標情報に基づいて、同ストロークに係る指標値を算出する。指標値は、対応するストロークの通過領域が第１入力枠９１及び第２入力枠９２のいずれにどの程度含まれているかを表す。
【００５６】  ストロークの通過領域は、ストロークが通る領域を表す限り任意であり、必ずしも、ストロークが通る領域そのものに精度良く合致する必要はない。例えば、ストロークの通過領域は、該ストロークが通る領域そのもの（該ストロークに一定の幅を持たせた領域）であってもよいし、該ストロークが通る領域を含む矩形領域であってもよい。あるストロークに係る指標値は、以下で説明すように、第１入力枠９１に対する同ストロークの占有率Ｑ１と、第２入力枠９２に対する同ストロークの占有率Ｑ２とを含んでよい。或いは、あるストロークに係る指標値は、占有率Ｑ１と占有率Ｑ２との比であってもよい。
【００５７】  以下では、一例として、各ストロークに係る指標値は、第１入力枠９１に対する同ストロークの占有率Ｑ１と、第２入力枠９２に対する同ストロークの占有率Ｑ２とを含むものとする。第１入力枠９１に対するストロークの占有率Ｑ１とは、該ストロークおける第１入力枠９１の含まれる部分の、該ストローク全体に対する比率（面積の比率）を表す。同様に、第２入力枠９２に対するストロークの占有率Ｑ２とは、該ストロークおける第２入力枠９２の含まれる部分の、該ストローク全体に対する比率を表す。例えば、占有率Ｑ１及び占有率Ｑ２は、以下のようにして算出される。占有率Ｑ１＝Ｎ１／Ｎtotal占有率Ｑ２＝Ｎ２／Ｎtotalここで、Ｎtotalは、占有率の算出対象のストロークに含まれる座標値の全数である。Ｎ１は、算出対象のストロークに係る全ての座標値のうちの、第１入力枠９１内の領域に位置する座標値の数である。Ｎ２は、算出対象のストロークに係る全ての座標値のうちの、第２入力枠９２内の領域に位置する座標値の数である。尚、上述のように、第１入力枠９１の領域及び第２入力枠９２の領域を定める各座標値は、既知である。
【００５８】  或いは、占有率Ｑ１及び占有率Ｑ２は、以下のようにして算出されてもよい。占有率Ｑ１＝ＳＳ１／Ｓtotal占有率Ｑ２＝ＳＳ２／Ｓtotalここで、Ｓtotalは、占有率の算出対象のストロークの通過領域の全面積である。ＳＳ１は、同通過領域における第１入力枠９１内に含まれる部分の面積である。ＳＳ２は、同通過領域における第２入力枠９２内に含まれる部分の面積である。例えば、通過領域は、算出対象のストロークに係る全ての各座標値を内包する矩形領域の面積として算出される。この場合、ＳＳ１は、同矩形領域における第１入力枠９１内に含まれる部分の面積である。ＳＳ２は、同矩形領域における第２入力枠９２内に含まれる部分の面積である。図１５は、矩形領域の説明図である。図１５に示す例では、ストロークｓ１０に係る矩形領域２０１と、ストロークｓ１１に係る矩形領域２０２とが示されている。図１５に示す例では、４００×４００の座標点を有する入力画面９０が示されている。図１５に示す例では、ストロークｓ１０の各座標値のうちのｘ座標の最大値が"２５０"、ｘ座標の最小値が"５０"、ｙ座標の最大値が"７０"、y座標の最小値が"５０"である。この場合、ストロークｓ１０に係る矩形領域２０１は、図１５に示すように、４点の座標値（５０，５０）、（２５０，５０）、（５０，７０）及び（２５０，７０）を結ぶ線分で囲まれる領域となる。。
【００５９】  例えば、図１５に示す例では、ストロークｓ１０に係る占有率Ｑ１は、１００％と算出され、ストロークｓ１０に係る占有率Ｑ２は、０％と算出される。また、図１５に示す例では、ストロークｓ１１に係る占有率Ｑ１は、９０％と算出され、ストロークｓ１１に係る占有率Ｑ２は、９０％と算出される。
【００６０】  尚、占有率Ｑ１及び占有率Ｑ２の算出には、矩形領域に代えて、算出対象のストロークに係る全ての各座標値を内包する多角形領域が用いられてもよい。また、矩形領域は、水平方向及び垂直方向の各辺を有する矩形の領域に限られず、例えば、水平方向及び垂直方向に対して斜め方向に延びる辺を有する矩形の領域であってもよい  ステップＳ１４０４では、入力枠割当処理部１２は、今回入力されたストロークが重複ストロークであるか否かを判定する。重複ストロークとは、重複領域９３を通ると判定されるストロークである。例えば、入力枠割当処理部１２は、占有率Ｑ１と占有率Ｑ２との差が所定閾値以下である場合に、今回入力されたストロークが重複ストロークであると判定する。所定閾値は、０以上の比較的小さい値（例えば０〜１０の間の値）に設定される。尚、以下では、重複ストロークでないストロークを特に表すときは、「非重複ストローク」と称する。今回入力されたストロークが重複ストロークであると判定した場合は、ステップＳ１４１０に進み、それ以外の場合は、ステップＳ１４０６に進む。
【００６１】  例えば、図１６には、"あ"の３画目のストロークＳ３０に係る矩形領域２０３が示されている。図１６に示す例では、矩形領域２０３に基づいて算出される占有率Ｑ１及び占有率Ｑ２は、それぞれ、同じ９０％である。この場合、占有率Ｑ１と占有率Ｑ２との差が０となるので、入力枠割当処理部１２は、ストロークＳ３０は重複ストロークであると判定する。
【００６２】  ステップＳ１４０６では、入力枠割当処理部１２は、今回入力されたストローク（ステップＳ１４０４で重複ストロークでないと判定された非重複ストローク）を、その占有率Ｑ１及び占有率Ｑ２のうちの高い方の占有率に係る入力枠に割り当てる。例えば、占有率Ｑ２よりも占有率Ｑ１が高い場合は、入力枠割当処理部１２は、第１入力枠９１に今回入力されたストロークを割り当てる。他方、占有率Ｑ１よりも占有率Ｑ２が高い場合は、入力枠割当処理部１２は、第２入力枠９２に今回入力されたストロークを割り当てる。このようにして実現される非重複ストロークの割当は、この時点で確定となる。
【００６３】  ステップＳ１４０８では、入力枠割当処理部１２は、重複ストロークフラグが"１"である重複ストロークが存在するか否かを判定する。重複ストロークフラグは、重複ストローク毎に用意される（ステップＳ１４１０参照）。重複ストロークフラグの初期値は"０"である。重複ストロークフラグが"１"である重複ストロークが存在することは、今回入力されたストロークの前に１以上の重複ストロークが存在し、且つ、該１以上の重複ストロークに係る入力枠の割り当てが確定されていないことを表す。重複ストロークフラグが"１"である重複ストロークが存在しないことは、今回入力されたストロークの前に重複ストロークが存在しないこと、又は、存在するが既に重複ストロークに係る割り当てが確定していることを表す。現時点で１以上の重複ストロークフラグが"１"である場合は、ステップＳ１４２４に進み、それ以外の場合は、今回入力されたストロークに対する処理はそのまま終了する。
【００６４】  ステップＳ１４１０では、入力枠割当処理部１２は、今回入力されたストローク（重複ストローク）に対して、重複ストロークフラグを"１"にセットする。重複ストロークフラグは、上述のように、重複ストローク毎に用意され、重複ストロークに対応付けられる。ある重複ストロークに係る重複ストロークフラグは、以下で説明するように、同重複ストロークの割り当てが確定されるまで、"１"に維持される。
【００６５】  ステップＳ１４１２では、入力枠割当処理部１２は、今回入力された重複ストロークと、該重複ストロークよりも前に入力された１以上のストロークとに基づいて、１文字の候補、又は２文字の組み合わせ候補（１以上の組み合わせ候補）を導出する。これは、現時点では、今回入力された重複ストロークの後に入力されうる１以上のストロークの割り当て状況を参照できないため、今回入力された重複ストロークを、高精度に第１入力枠９１又は第２入力枠９２に割り当てできないためである。ステップＳ１４１２が終了すると、ステップＳ１４１６に進む。
【００６６】  ステップＳ１４１４では、入力枠割当処理部１２は、今回入力された非重複ストロークと、該非重複ストロークの前に入力された１以上のストロークとに基づいて、２文字の組み合わせ候補（１以上の組み合わせ候補）を導出する。２文字の組み合わせ候補の導出には、今回入力された非重複ストロークに割り当てられた入力枠（第１入力枠９１又は第２入力枠９２）と、その１つ前の入力枠（第２入力枠９２又は第１入力枠９１）とに割り当てられた１以上のストロークが用いられる。即ち、入力枠割当処理部１２は、直近の２入力枠に割り当てられた１以上のストロークに基づいて、２文字の組み合わせ候補を導出する。
【００６７】  入力枠割当処理部１２が導出する２文字の組み合わせ候補の数は、例えば、重複ストロークフラグが"１"である重複ストロークの数に応じて決まる。例えば、重複ストロークフラグが"１"である重複ストロークの数が"１"であるとき、入力枠割当処理部１２は、該１重複ストロークを、第１入力枠９１及び第２入力枠９２のいずれに割り当てるかの相違によって、組み合わせ候補を２つ導出する。このようにして、入力枠割当処理部１２は、非重複ストロークの前に入力された１以上のストロークのうちの、重複ストロークを、第１入力枠９１及び第２入力枠９２のいずれに割り当てるかの相違によって、組み合わせ候補を複数導出する。
【００６８】  ここで、今回入力された非重複ストロークよりも前に入力された１以上のストロークには、１以上の重複ストロークが含まれる（ステップＳ１４０８の"ＹＥＳ"参照）。また、該１以上の重複ストロークの前に入力された１以上のストロークと、同重複ストロークの後に入力された１以上のストロークとは、それぞれ、第１入力枠９１及び第２入力枠９２の別々の入力枠に割り当てられている（ステップＳ１４２４の"ＮＯ"参照）。従って、この時点では、該１以上の重複ストロークの前後の非重複ストロークが、２文字分の手書き入力のストロークであることを高精度に判定できる。この理由から、ステップＳ１４１４では、上述のように、入力枠割当処理部１２は、２文字の組み合わせ候補のみを導出している（即ち１文字の候補は導出しない）。
【００６９】  ステップＳ１４１６では、入力枠割当処理部１２は、ステップＳ１４１２で導出した１文字の候補又は２文字の組み合わせ候補、若しくは、ステップＳ１４１４で導出した１以上の組み合わせ候補について、文字認識を行う。例えば、入力枠割当処理部１２は、ある組み合わせ候補については、その１文字目に係る１以上のストロークに基づいて、１文字目の文字を認識し、その２文字目に係る１以上のストロークに基づいて、２文字目の文字を認識する。入力枠割当処理部１２は、認識結果に基づいて、１認識文字毎の評価値を算出する（図１９の評価値参照）。尚、このステップＳ１４１６の処理（及び次のステップＳ１４１８の処理）は、文字認識部１３により実現されてもよい。
【００７０】  ステップＳ１４１８では、入力枠割当処理部１２は、ステップＳ１４１６での認識結果（認識文字に対する評価値）に基づいて、１文字当たり平均評価値（認識文字が１文字のときは該１文字の評価値）を算出する。
【００７１】  例えば、図１７には、"な"及び"し"という２文字が手書き入力されるときの各ストロークの一例が示されている。"な"は、第１入力枠９１に手書き入力され、"し"は、第２入力枠９２に手書き入力されている。ストロークＳ３１は、"な"の１画目のストロークを表し、ストロークＳ３２は、"な"の２画目のストロークを表し、ストロークＳ３３は、"な"の３画目のストロークを表し、ストロークＳ３４は、"な"の４画目のストロークを表す。ストロークＳ３５は、"し"のストロークを表す。図１７には、ストロークＳ３４の通過領域に対応する矩形領域２０４が示されている。尚、矩形領域２０４は、実際には入力画面９０上に表示されず、説明又は参考用に図示されているだけである（上述の他の矩形領域２０１乃至２０３も同様）。
【００７２】  図１７に示す例では、ストロークＳ３１乃至Ｓ３３は、占有率Ｑ１が１００％となり、占有率Ｑ２が０％となり、第１入力枠９１に割り当てられる。また、ストロークＳ３５は、占有率Ｑ１が０％となり、占有率Ｑ２が１００％となり、第２入力枠９２に割り当てられる。ストロークＳ３４は、占有率Ｑ１及び占有率Ｑ２が共に１００％となるので、重複ストロークと判定され、重複ストロークフラグが立てられる。このとき、重複ストロークＳ３４が第１入力枠９１及び第２入力枠９２のいずれに割り当てられるかによって、図１８に示すように、２つの組み合わせ候補Ｃ１及びＣ２が導出される。図１８には、組み合わせ候補Ｃ１及びＣ２のそれぞれに割り当てられた各ストロークＩＤが表形式で示されている。図１８において、ストロークＳ３１乃至Ｓ３５のそれぞれのストロークＩＤは、ｓ３１乃至ｓ３５であるとする。組み合わせ候補Ｃ１は、１文字目がストロークＳ３１、Ｓ３２、Ｓ３３及びＳ３４からなり、２文字目がＳ３５からなる。組み合わせ候補Ｃ２は、１文字目がストロークＳ３１、Ｓ３２及びＳ３３からなり、２文字目がＳ３４及びＳ３５からなる。この場合、図１９に示すように、組み合わせ候補Ｃ１の方が、組み合わせ候補Ｃ２よりも１文字目及び２文字目の評価値がそれぞれ高くなる。例えば、図１９に示す例では、組み合わせ候補Ｃ１の場合、１文字目及び２文字目の評価値はそれぞれ"９０"及び"９０"であり、平均評価値は"９０"である。他方、組み合わせ候補Ｃ１の場合、１文字目及び２文字目の評価値はそれぞれ"３０"及び"２０"であり、平均評価値は"２５"である。
【００７３】  ステップＳ１４２０では、入力枠割当処理部１２は、重複ストロークの始点座標と第１非重複領域９４との関係、及び重複ストロークの終点座標と第２非重複領域９５との関係、のうちの少なくともいずれか一方に基づいて、重複ストロークに関する加点処理を行う。これは、第１入力枠９１に文字を手書き入力しようとするユーザは、極力、第１非重複領域９４から開始するストロークを手書き入力しようとする傾向にあるためである。また、同様に、第２入力枠９２に文字を手書き入力しようとするユーザは、極力、第２非重複領域９５で終了するストロークを手書き入力しようとする傾向にあるためである。
【００７４】  例えば、入力枠割当処理部１２は、重複ストロークの始点座標が第１非重複領域９４内に位置する場合、該重複ストロークが第１入力枠９１に割り当てられる組み合わせ候補に係る平均評価値に対して、所定値Ｐｔ１（例えば、１０点）加点する。例えば図１６に示す例では、ストロークＳ３０は、始点座標Ｐｓが第１非重複領域９４内に位置する。この場合、ストロークＳ３０が第１入力枠９１に割り当てられる組み合わせ候補に係る平均評価値に対して、所定値Ｐｔ１が加点される。また、入力枠割当処理部１２は、重複ストロークの終了座標Ｐｅが第２非重複領域９５内に位置する場合、該重複ストロークが第２入力枠９２に割り当てられる組み合わせ候補に対して、所定値Ｐｔ２加点する。所定値Ｐｔ２は、所定値Ｐｔ１と同一であってもよいが、例えば小さい値（例えば５点）に設定される。尚、ストロークＳ３０のように、始点座標が第１非重複領域９４内に位置し且つ終点座標が第２非重複領域９５内に位置するストロークについては、終点座標に基づく加点はなされないようにしてよい。これは、例えば図１７に示すストロークＳ３０のように、第１入力枠９１に文字を手書き入力しようとする場合であっても、第２非重複領域９５にストロークの最終部分がはみ出してしまうことがあるためである。
【００７５】  ステップＳ１４２２では、入力枠割当処理部１２は、平均評価値が最も高い組み合わせ候補に基づいて、重複ストロークを第１入力枠９１及び第２入力枠９２のいずれかに割り当てる。例えば、図１９に示す例では、入力枠割当処理部１２は、組み合わせ候補Ｃ１に基づいて、重複ストロークＳ３４を第１入力枠９１に割り当てる。尚、ステップＳ１４２２の割り当てが完了しても、重複ストロークフラグは"０"にリセットされない。即ち、ステップＳ１４２２で実行される重複ストロークの割り当ては、仮決定状態であり、確定状態ではない。ステップＳ１４２２が終了すると、今回入力されたストロークに関する入力枠割当処理が終了となる。
【００７６】  ステップＳ１４２４では、入力枠割当処理部１２は、今回入力された非重複ストロークに割り当てられた入力枠と、該非重複ストロークの直前の１以上の重複ストロークの直前の非重複ストロークに割り当てられた入力枠とが、同じであるか否かを判定する。
【００７７】  例えば、図２０には、"謝"という１文字が第１入力枠９１に手書き入力されるときの各ストロークの一例が示されている。図２０に示す例では、言偏（部首）"言"に係る各ストロークＳ４１乃至Ｓ４７は、第１入力枠９１に割り当てられる（ステップＳ１４０６）。また、中央の"身"に係る１画目のストロークＳ４８は、第１入力枠９１に割り当てられる（ステップＳ１４０６）。"身"に係る２画目以降のストロークＳ４９乃至Ｓ５４は、重複ストロークと判定される（ステップＳ１４０４の"ＹＥＳ"）。旁の"寸"に係る１画目のストロークＳ５５は、占有率Ｑ１が占有率Ｑ２よりも大きく（占有率Ｑ１と占有率Ｑ２との差が所定閾値よりも大きく）、重複ストロークと判定されない（ステップＳ１４０４の"ＮＯ"）。このため、ストロークＳ５５は、第１入力枠９１に割り当てられる（ステップＳ１４０６）。また、ストロークＳ５５の直前の１以上の重複ストロークＳ４９乃至Ｓ５４の直前の非重複ストロークＳ４８に割り当てられた入力枠は、第１入力枠９１であり、ストロークＳ５５が割り当てられた入力枠と同じである。従って、この場合、ステップＳ１４２４の判定結果は"ＹＥＳ"となる。ステップＳ１４２４の判定結果が"ＹＥＳ"の場合は、ステップＳ１４２６に進み、それ以外の場合は、ステップＳ１４２８に進む。
【００７８】  尚、今回入力された非重複ストロークの前に入力された１以上のストロークには、非重複ストロークが含まれない場合もあり得る。即ち、今回入力された非重複ストロークよりも前に入力された１以上のストロークは、１以上の重複ストロークのみからなる場合があり得る。これは、例えば第１入力枠９１への手書き入力の１画目のストロークが重複ストロークである場合に生じる。この場合、入力枠割当処理部１２は、ステップＳ１４１４において、ステップＳ１４１２と同様に、１文字の候補、又は２文字の組み合わせ候補（１以上の組み合わせ候補）を導出することとしてよい。
【００７９】  ステップＳ１４２６では、入力枠割当処理部１２は、今回入力された非重複ストロークの直前の１以上の重複ストロークを、今回入力された非重複ストロークが割り当てられた入力枠と同じ入力枠に割り当てる。また、入力枠割当処理部１２は、今回入力された非重複ストロークの直前の１以上の重複ストロークに係る重複ストロークフラグを、"０"にリセットする。例えば、図２０に示す例では、ストロークＳ５５が入力されたときに、ストロークＳ５５の直前の１以上の重複ストロークＳ４９乃至Ｓ５４が第１入力枠９１に割り当てられる。これに伴い、入力枠割当処理部１２は、重複ストロークＳ４９乃至Ｓ５４に係る重複ストロークフラグを、"０"にリセットする。
【００８０】  ステップＳ１４２８では、入力枠割当処理部１２は、今回入力された非重複ストロークに割り当てられた入力枠に対して２つ前の入力枠に割り当てられた重複ストロークが存在するか否かを判定する。今回入力された非重複ストロークに割り当てられた入力枠に対して２つ前の入力枠とは、今回入力された非重複ストロークに割り当てられた入力枠と同一の入力枠となる。
【００８１】  例えば、上述のように、第１入力枠９１及び第２入力枠９２に交互に３文字以上連続して手書き入力が行われる場合があり得る。かかる場合、１文字目を第１入力枠９１に手書き入力したときの１以上のストロークに、重複ストロークが含まれ、当該重複ストロークが第１入力枠９１に割り当てられた場合を想定する。このとき、２文字目のストロークが第２入力枠９２に割り当てられていた状態から、３文字目に係る手書き入力が開始されると、新たに入力されたストロークが第１入力枠９１に割り当てられる。このとき、１文字目の重複ストロークは、２つ前の入力枠に割り当てられた重複ストロークとなる。ステップＳ１４２８の判定結果が"ＹＥＳ"の場合は、ステップＳ１４３０に進み、それ以外の場合は、ステップＳ１４１４に進む。
【００８２】  ステップＳ１４３０では、入力枠割当処理部１２は、今回入力された非重複ストロークに割り当てられた入力枠に基づいて、その２つ前の入力枠に割り当てられた重複ストロークに係る割り当てを確定する。即ち、入力枠割当処理部１２は、２つ前の入力枠に割り当てられた重複ストロークについて、ステップＳ１４２２で得られている現時点の割当結果を確定させる。ステップＳ１４３０が終了すると、ステップＳ１４１４に進む。この場合、今回入力された非重複ストロークに割り当てられた入力枠よりも２つ前の入力枠に係る割当結果が確定し、新たな直近の２つの入力枠に係る割り当てが開始される。例えば、第１入力枠９１及び第２入力枠９２に交互に３文字以上連続して手書き入力が行われる場合、３文字目が第１入力枠９１に手書き入力され始めたときに、１文字目に係る重複ストロークに対する割当は確定される。また、４文字目が第１入力枠９１に手書き入力され始めたときに、２文字目に係る重複ストロークに対する割当は確定される。
【００８３】  以上のように、本実施例による文字認識装置１によれば、限られた画面サイズのデバイス（例えば図２及び図３参照）においても、複数の文字の連続的な手書き入力が可能となる。具体的には、文字認識装置１によれば、重複領域９３を備える第１入力枠９１及び第２入力枠９２が設定される。これにより、画面サイズが比較的小さい場合でも、２つの入力枠を設定でき、複数の文字の連続的な手書き入力が可能となる。
【００８４】  次に、本実施例による文字認識装置１の更なる効果について、図２１及び図２２に示す各比較例と対比しつつ、説明する。
【００８５】  図２１は、第１比較例による入力画面を示す図である。第１比較例による入力画面の画面サイズは、文字認識装置１の入力画面９０と同じであるとする。第１比較例では、入力画面を左右に２分割する態様で２つの入力枠９０１及び９０２が設定される。尚、入力枠９０１及び９０２は、重複領域を有さない。
【００８６】  かかる第１比較例では、複数の文字の連続的な手書き入力が可能となる。しかしながら、第１比較例では、図２１に示すように、入力画面の限られたサイズに入力枠９０１及び９０２の各サイズが制約を受ける。図２１に示す例では、入力枠９０１及び９０２は、それぞれ、横方向の長さが不十分となり、例えば横幅のある文字を手書き入力する際に困難を伴う（又は、横方向で入力枠外へのストロークのはみ出しが生じて認識精度が悪くなりやすい）。
【００８７】  これに対して、本実施例による文字認識装置１によれば、重複領域９３を備える第１入力枠９１及び第２入力枠９２が設定される。これにより、画面サイズが比較的小さい場合でも、第１入力枠９１及び第２入力枠９２を適切なサイズに設定でき、第１比較例で生じる不都合を低減又は無くすことができる。
【００８８】  図２２は、第２比較例による入力画面を示す図である。第２比較例による入力画面の画面サイズは、文字認識装置１の入力画面９０と同じであるとする。第２比較例では、１文字用の入力枠９０３が入力画面全体に設定される。図２２には、"あ"及び"め"という２文字が重ね書きで手書き入力されるときの各ストロークが示されている。この場合、例えば、図２３に示すように、例えば４つの組み合わせ候補Ｃ３０乃至Ｃ３３が導出されうる。このとき、例えば組み合わせ候補Ｃ３０と組み合わせ候補Ｃ３２との間では、平均評価値に差が有意に発生しない。このように、第２比較例では、認識精度の観点から不都合が生じる。
【００８９】  これに対して、本実施例による文字認識装置１によれば、第２比較例で生じる不都合を低減又は無くすことができる。例えば、図２４に示す例では、ユーザが、"あ"及び"め"という２文字を、文字"あ"については第１入力枠９１に、文字"め"については第２入力枠９２に、それぞれ手書き入力したときの各ストロークの一例が示されている。この場合、"め"の１画目のストロークが第２入力枠９２に割り当てられたときに２文字であることが確定できるので、２文字の組み合わせ候補のみを生成すれば足りる。また、図２４に示す例では、重複ストロークが発生しないので、"め"の最後のストロークの入力が完了した段階で組み合わせ候補が１つだけとなる。この場合、文字認識を要することなく、各ストロークの割り当てを行うことができる。このように、本実施例による文字認識装置１によれば、第１入力枠９１及び第２入力枠９２に手書き入力された第１文字に係る１以上のストロークと、第２文字に係る１以上のストロークとの間の位置ずれを利用して、文字認識精度を高めることができる。尚、本実施例による文字認識装置１によれば、ユーザは、第１入力枠９１及び第２入力枠９２をガイドとして、２文字をそれぞれの文字を互いに対してずらした位置に手書き入力しやすくなる。
【００９０】  図２５に示す例では、ユーザが、"あ"及び"め"という２文字を、文字"あ"を第１入力枠９１に、文字"め"を第２入力枠９２に、それぞれ手書き入力したときの各ストロークの一例が示されている。但し、図２５に示す例では、図２４に示す例に比べて、文字"め"の各ストロークが第２入力枠９２の左上側に片寄って手書き入力されている。この場合、ストロークＳ５０が重複ストロークとして判定されるので、重複ストロークＳ５０の割り当て方によって、図２６に示すように、２つの組み合わせ候補Ｃ４０及びＣ４１が導出される。かかる場合でも、本実施例によれば、第２比較例に比べて、組み合わせ候補の数が少なくなるので、処理負荷を低減しつつ、認識精度を高めることができる。即ち、第２比較例では、何文字分のストロークが入力されたかを判定できないため、図２３に示したように、３文字の組み合わせ候補Ｃ３１乃至Ｃ３３が導出されうる。この点、本実施例によれば、"め"の最後のストロークが第２入力枠９２に割り当てられたときに２文字であることが確定できるので、２文字の組み合わせ候補のみを生成すれば足りる。このため、本実施例によれば、第２比較例に比べて組み合わせ候補を絞ることができ、処理負荷を低減しつつ、認識精度を高めることができる。
【００９１】  また、図２６に示す例では、図２２に示す例とは異なり、文字"め"の各ストロークが文字"あ"の各ストロークに対して完全に重なっておらず、依然として位置ずれがある。従って、本実施例によれば、かかる位置ずれに起因して、導出された２以上の組み合わせ候補間で平均評価値に差が出やすくなるので、認識精度が良好となる。例えば、図２６に示す例では、組み合わせ候補Ｃ４０の１文字目の評価値は低くなる（"め"の一画目を含むため）。このため、組み合わせ候補Ｃ４１の平均評価値が組み合わせ候補Ｃ４０の平均評価値よりも有意に大きくなる。この結果、組み合わせ候補Ｃ４１に基づいて割り当てが行われ、正確な認識結果が得られる。
【００９２】  また、図２２に示した第２比較例においても、ユーザに、文字毎に待ち時間を空けつつ複数の文字の連続的な手書き入力を行ってもらうことで、認識精度を高めることは可能である。例えば、図２２に示す例で、ユーザが、文字"あ"の各ストロークの手書き入力後に、待ち時間を空けて、文字"め"の各ストロークの手書き入力を行う場合、かかる待ち時間を利用して文字間の区切りを検知することで、認識精度を高めることは可能である。しかしながら、かかる構成では、待ち時間に起因して、複数の文字の連続的な手書き入力に要する時間が長くなる。
【００９３】  この点、本実施例による文字認識装置１によれば、重複領域９３を備える第１入力枠９１及び第２入力枠９２が設定されるので、ユーザに１文字毎に待ち時間を空けて手書き入力してもらう必要性が低減又は無くなる。この結果、ユーザにとっては、複数の文字の連続的な手書き入力に要する時間を短くできる。例えば、図７に示す例では、ユーザは、文字"あ"と文字"め"との間に待ち時間を空けずに、手書き入力できる。但し、重複領域９３を備える第１入力枠９１及び第２入力枠９２が設定される場合でも、ユーザは、第１入力枠９１での手書き入力後に、待ち時間を空けてから第２入力枠９２での手書き入力を開始する場合もありうる。この場合は、本実施例による文字認識装置１においても、かかる待ち時間を検知することで、認識精度を更に高めることも可能である。
【００９４】  ところで、本実施例による文字認識装置１によれば、上述のように、第１入力枠９１及び第２入力枠９２が重複領域９３を備える。このため、ユーザの手書き入力態様によっては重複ストロークが発生する。かかる重複ストロークを、第１入力枠９１及び第２入力枠９２のいずれかの入力枠に割り当てる際の割り当て精度が、認識精度を更に高める上で重要となる。尚、割り当て精度は、重複ストロークが、第１入力枠９１及び第２入力枠９２のいずれかの入力枠へのストロークであるかを判別する際の判別精度ともいえる。以下、「割り当て精度」は、「判別精度」と称する。
【００９５】  この点、本実施例による文字認識装置１によれば、重複ストロークを、第１入力枠９１及び第２入力枠９２のいずれかの入力枠に割り当てるかを決定する際に、重複ストロークの前後のストロークの同割り当て状況が参照される。例えば、図１４に示す例では、ステップＳ１４１４乃至Ｓ１４１８及びステップＳ１４２２において、重複ストロークは、その前後のストロークの割り当て状況に応じて決まる組み合わせ候補に基づいて、第１入力枠９１又は第２入力枠９２に割り当てられる。これにより、重複ストロークの前後のストロークを含めた組み合わせ候補の評価値を利用できるので、判別精度を更に高めることができる。また、図１４に示す例では、ステップＳ１４２４及びステップＳ１４２６において、重複ストロークは、その前後の非重複ストロークのそれぞれに割り当てられた入力枠が同じであるときに、その入力枠に割り当てられる。これにより、例えば図２０に示したような偏のほか、部首の冠、脚を持つ文字が手書き入力された場合でも、判別精度を更に高めることができる。
【００９６】  また、本実施例による文字認識装置１によれば、重複ストロークを、第１入力枠９１及び第２入力枠９２のいずれかの入力枠に割り当てるかを決定する際に、重複ストロークの始点座標及び/又は終点座標が利用される（ステップＳ１４２０）。これにより、重複ストロークを手書き入力する際のユーザの傾向（上述した傾向）を利用できるので、判別精度を更に高めることができる。
【００９７】  また、本実施例による文字認識装置１によれば、ストロークの通過領域が第１入力枠９１及び第２入力枠９２のいずれにどの程度含まれているかを表す指標値に基づいて、同ストロークが重複ストロークであるか否かが判定される。これにより、第１入力枠９１及び第２入力枠９２のいずれに割り当てるか、その通過領域の位置だけでは判断できない又は判断しがたいストロークだけを、重複ストロークと判定できる。この点、例えばストロークの通過領域が重複領域９３に含まれるか否かだけで同ストロークが重複ストロークであるか否かを判定する比較例が考えられる。かかる比較例では、例えば、図２４に示す例において、"め"の１画目のストローク及び"め"の２画目のストロークは、それぞれ、その通過領域が重複領域９３に含まれるので、重複ストロークと判定される。この場合、重複ストロークの数が多くなり、それに伴い組み合わせ候補の数が多くなり、処理負荷及び判別精度の観点から不利となる。これに対して、本実施例による文字認識装置１によれば、上述の指標値に基づいて、前後のストロークの割り当て状況の参照が必要なストロークだけを精度良く重複ストロークと判定できる。この結果、前後のストロークの割り当て状況の参照が不要なストロークまでも重複ストロークと判定されることが低減又は無くなるので、判別精度を更に高めることができる。［変形例］  次に、上述した実施例において、第１入力枠９１及び第２入力枠９２に代えて用いることができる入力枠の変形例を説明する。以下の各図において、同一の要素について同一の参照符号を付して説明を省略する。
【００９８】  図２７は、第１変形例による入力枠の説明図である。
【００９９】  第１変形例では、入力画面９０Ａには、第１入力枠９１１及び第２入力枠９２１が表示される。入力画面９０Ａの画面サイズは、入力画面９０と同じである。第１入力枠９１１及び第２入力枠９２１は、同様に、重複領域９３を備える。第１入力枠９１１及び第２入力枠９２１は、第１入力枠９１及び第２入力枠９２と同様、互いに対して、入力画面９０Ａの垂直方向（ｙ方向）及び水平方向（ｘ方向）のいずれにもシフトしている。第１入力枠９１１及び第２入力枠９２１は、上述した実施例による第１入力枠９１及び第２入力枠９２に対して、上下位置がそれぞれ異なる。具体的には、第１入力枠９１１は、入力画面９０Ａの左側且つ下側の角に配置され、第２入力枠９２１は、入力画面９０Ａの右側且つ上側の角に配置され、第１入力枠９１１の右側且つ上側の角が、第２入力枠９２１の左側且つ下側の角と重複する。
【０１００】  第１変形例によっても、上述した実施例と同様の効果が得られる。また、第１変形例によれば、第１入力枠９１１及び第２入力枠９２１の配置に起因して、以下の有利な効果が奏される。部首として「編」、「旁」、「冠」、「脚」等を持つ文字が手書き入力された場合でも、その際のストロークが重複領域９３からはみ出しやすく（例えば、図２０のストロークＳ４８，Ｓ５５参照）、判別精度が良好となる。尚、このような有利な点は、上述した実施例による第１入力枠９１及び第２入力枠９２についても同様である。
【０１０１】  尚、以下の変形例においても同様であるが、入力画面９０Ａの全領域のうちの、第１入力枠９１１及び第２入力枠９２１を除く領域についても、上述のように、手書き入力が可能である。従って、かかる領域にはみ出したストロークについても文字認識には用いられる。
【０１０２】  図２８は、第２変形例による入力枠の説明図である。
【０１０３】  第２変形例では、入力画面９０Ｂには、第１入力枠９１２及び第２入力枠９２２が表示される。入力画面９０Ｂの画面サイズは、入力画面９０と同じである。第１入力枠９１２及び第２入力枠９２２は、同様に、重複領域９３２を備える。第１入力枠９１２及び第２入力枠９２２は、互いに対して、入力画面９０Ｂの水平方向（ｘ方向）のみシフトしている。第１入力枠９１２は、入力画面９０Ｂの左側且つ上側の角に配置され、第２入力枠９２２は、入力画面９０Ｂの右側且つ上側の角に配置される。
【０１０４】  第２変形例によっても、重複領域９３２を有するので、上述した実施例と同様の効果が得られる。また、第２変形例によれば、第１入力枠９１２及び第２入力枠９２２の配置に起因して、横に長い領域を使用できる。
【０１０５】  図２９は、第３変形例による入力枠の説明図である。
【０１０６】  第３変形例では、入力画面９０Ｃには、第１入力枠９１３及び第２入力枠９２３が表示される。入力画面９０Ｃの画面サイズは、入力画面９０と同じである。第１入力枠９１３及び第２入力枠９２３は、同様に、重複領域９３３を備える。第１入力枠９１３及び第２入力枠９２３は、入力画面９０Ｃの垂直方向（ｙ方向）のみシフトしている。第１入力枠９１３は、入力画面９０Ｃの左側且つ上側の角に配置され、第２入力枠９２３は、入力画面９０Ｃの左側且つ下側の角に配置される。
【０１０７】  第３変形例によっても、重複領域９３３を有するので、上述した実施例と同様の効果が得られる。また、第３変形例によれば、第１入力枠９１３及び第２入力枠９２３の配置に起因して、縦に長い領域を使用できる。
【０１０８】  図３０は、第４変形例による入力枠の説明図である。
【０１０９】  第４変形例では、入力画面９０Ｄには、４つの入力枠が表示される。具体的には、入力画面９０Ｄには、第１入力枠９１及び第２入力枠９２と、第１入力枠９１２及び第２入力枠９２２とが表示される。入力画面９０Ｄの画面サイズは、入力画面９０と同じである。第１入力枠９１及び第２入力枠９２の配置は上述のとおりであり（上述した実施例参照）、第１入力枠９１２及び第２入力枠９２２は上述のとおりである（第１変形例参照）。
【０１１０】  第４変形例によっても、重複領域９３を有するので、上述した実施例と同様の効果が得られる。また、第４変形例によれば、上述した実施例よりも入力枠の数が多くなるので、ユーザは、複数の文字を少しずつずらすだけで手書き入力できる。このようにして、入力枠の数は、２つの限られず、３つ以上の任意の数であってよい。
【０１１１】  図３１は、第５変形例による入力枠の説明図である。
【０１１２】  第５変形例では、入力画面９０Ｅには、３つの入力枠が表示される。具体的には、入力画面９０Ｅには、第１入力枠９１５、第２入力枠９２５と、第３入力枠９４５とが表示される。入力画面９０Ｅの画面形状は、入力画面９０の画面形状（正方形）とは異なり、横長である。第１入力枠９１５及び第２入力枠９２５は、重複領域９３５を備え、第２入力枠９２５及び第３入力枠９４５は、重複領域９５５を備える。尚、第１入力枠９１５及び第３入力枠９４５は、重複領域を有さない。第１入力枠９１５及び第２入力枠９２５は、互いに対して、入力画面９０Ｅの垂直方向（ｙ方向）及び水平方向（ｘ方向）のいずれにもシフトしている。また、第２入力枠９２５及び第３入力枠９４５は、互いに対して、入力画面９０Ｅの垂直方向（ｙ方向）及び水平方向（ｘ方向）のいずれにもシフトしている。
【０１１３】  第５変形例によっても、重複領域９３５及び９５５を有するので、上述した実施例と同様の効果が得られる。第５変形例によれば、入力画面９０Ｅの形状を利用して、隣接する２つの入力枠を垂直方向（ｙ方向）及び水平方向（ｘ方向）のいずれにもずらしつつ、横に長い領域を使用できる。
【０１１４】  図３２は、第６変形例による入力枠の説明図である。
【０１１５】  第６変形例では、入力画面９０Ｆには、３つの入力枠が表示される。具体的には、入力画面９０Ｆには、第１入力枠９１５、第２入力枠９２６と、第３入力枠９４５とが表示される。入力画面９０Ｆの画面形状は、入力画面９０の画面形状（正方形）とは異なり、横長である。第１入力枠９１５及び第２入力枠９２６は、重複領域９３６を備え、第２入力枠９２６及び第３入力枠９４５は、重複領域９５６を備える。第１入力枠９１５及び第２入力枠９２６は、互いに対して、入力画面９０Ｆの水平方向（ｘ方向）のみシフトしている。また、第２入力枠９２６及び第３入力枠９４５は、互いに対して、入力画面９０Ｆの水平方向（ｘ方向）のみシフトしている。
【０１１６】  第６変形例によっても、重複領域９３６及び９５６を有するので、上述した実施例と同様の効果が得られる。第６変形例によれば、入力画面９０Ｆの形状を利用して、隣接する２つの入力枠を水平方向（ｘ方向）にずらしつつ、横に長い領域を使用できる。
【０１１７】  図３３は、第７変形例による入力枠の説明図である。
【０１１８】  第７変形例では、入力画面９０Ｇには、３つの入力枠が表示される。具体的には、入力画面９０Ｇには、第１入力枠９１７、第２入力枠９２７と、第３入力枠９４７とが表示される。入力画面９０Ｇの画面形状は、入力画面９０の画面形状（正方形）とは異なり、縦長である。第１入力枠９１７及び第２入力枠９２７は、重複領域９３７を備え、第２入力枠９２７及び第３入力枠９４７は、重複領域９５７を備える。第１入力枠９１７及び第２入力枠９２７は、互いに対して、入力画面９０Ｇの垂直方向（ｙ方向）のみシフトしている。また、第２入力枠９２７及び第３入力枠９４７は、互いに対して、入力画面９０Ｇの垂直方向（ｙ方向）のみシフトしている。
【０１１９】  第７変形例によっても、重複領域９３７及び９５７を有するので、上述した実施例と同様の効果が得られる。第７変形例によれば、入力画面９０Ｇの形状を利用して、隣接する２つの入力枠を垂直方向（ｙ方向）にずらしつつ、縦に長い領域を使用できる。尚、第７変形例においても、図３１に示した第５変形例と同様に、第１入力枠９１７及び第２入力枠９２７は、互いに対して、入力画面９０Ｇの垂直方向（ｙ方向）及び水平方向（ｘ方向）のいずれにもシフトしててもよい。同様に、第２入力枠９２７及び第３入力枠９４７は、互いに対して、入力画面９０Ｇの垂直方向（ｙ方向）及び水平方向（ｘ方向）のいずれにもシフトしててもよい。［用途］  次に、文字認識装置１の使い方（用途）の例について概説する。
【０１２０】  図３４は、第１の用途の説明図である。
【０１２１】  第１の用途では、上述した実施例と同様に、図３４に概念的に示すように、第１入力枠９１及び第２入力枠９２にそれぞれ手書き入力されたストロークは、文字認識され、認識された文字がそのまま表示される。例えば、図３４に示す例では、"あ"及び"い"と手書き入力されることで、"あ"及び"い"という文字が表示される。尚、認識された文字は、表示されずに、又は表示されるのに加えて、他の態様で出力されてもよい。例えば、認識された文字は、音声で出力されてもよい。
【０１２２】  図３５は、第２の用途の説明図である。
【０１２３】  第２の用途では、図３５に概念的に示すように、第１入力枠９１及び第２入力枠９２にそれぞれ手書き入力されたストロークは、文字認識され、認識された文字に応じたチェックボックス６１及び６２にチェックマークが描画される。このように、文字認識装置１は、複数の項目の選択を行う用途に使用できる。
【０１２４】  図３６は、第３の用途の説明図である。
【０１２５】  第３の用途では、図３６に概念的に示すように、第１入力枠９１及び第２入力枠９２にそれぞれ手書き入力されたストロークは、文字認識される。そして、認識された文字は、第１入力枠９１及び第２入力枠９２のそれぞれに対応付けられた入力欄６４及び６５に表示（入力）される。図３６に示す例では、第１入力枠９１は、第１入力欄６４に対応付けられ、第２入力枠９２は、第２入力欄６５に対応付けられている。このように、文字認識装置１は、区分された入力欄（入力領域）への入力を行う用途に使用できる。
【０１２６】  以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例の構成要素を全部又は複数を組み合わせることも可能である。
【０１２７】  例えば、第１入力枠９１及び第２入力枠９２の外形及び／又はサイズは、任意である。図６に示す例では、第１入力枠９１及び第２入力枠９２は、それぞれ、正方形であるが、例えば入力画面９０の画面形状等に応じて、例えば長方形、多角形、円形又は楕円形等のような他の形状であってもよい。また、図６に示す例では、第１入力枠９１及び第２入力枠９２は、同一のサイズであるが、サイズが異なってもよい。これらの事項は、上述した第１変形例等の他の変形例についても同様である。
【０１２８】  また、同様に、重複領域９３の外形及び／又はサイズは、任意である。また、第１入力枠９１に占められる重複領域９３の割合（第２入力枠９２に占められる重複領域９３の割合も同様）についても任意である。但し、好ましくは、重複領域９３の幅は、第１入力枠９１（又は第２入力枠９２、以下同じ）の幅の半分より大きい。また、好ましくは、重複領域９３の高さは、第１入力枠９１の高さの半分より大きい。また、好ましくは、重複領域９３の面積は、第１入力枠９１の面積の４分の１より大きい。かかる場合は、上述の判別精度が良好となるためである。これらの事項は、上述した第１変形例等の他の変形例についても同様である。
【０１２９】  また、第１入力枠９１及び第２入力枠９２は、枠として全体が表示される必要はなく、一部のみが表示されてもよい。例えば、第１入力枠９１及び第２入力枠９２は、点線や角の部分だけが表示されてもよい。また、第１入力枠９１及び第２入力枠９２は、表示操作装置１０１に画像として表示される必要はない。例えば、第１入力枠９１及び第２入力枠９２は、第１入力枠９１に係る第１入力領域及び第２入力枠９２に係る第２入力領域の境界の少なくとも一部を視覚的に示唆する表示を与えるもので代替えされてもよい。例えば、第１入力領域及び第２入力領域の境界は、表示操作装置１０１の画面自体に形成される枠線（物理的な線）や、凹凸、模様等により示唆されてもよいし、表示操作装置１０１の画面上に貼り付けられる画面保護シールに描画される枠線や、凹凸、模様等により示唆されてもよい。また、例えば、図３７に示すように、第１入力枠９１に係る第１入力領域及び第２入力枠９２に係る第２入力領域は、これらの境界に配置される＋マークや模様等の表示８０により示唆されてもよい。これらの事項は、上述した第１変形例等の他の変形例についても同様である。
【０１３０】  また、図１４に示す処理において、種々の変形及び変更が可能である。例えば、ステップＳ１４２２の処理は省略されてもよい。
【０１３１】  また、図１４に示す処理は、上述のように、直近の２入力枠ごとに入力枠割当処理を行うが、直近の第１入力枠９１及び第２入力枠９２のペアごとに入力枠割当処理を行うこととしてもよい。例えば、一連の手書き入力で入力されるストロークが、最初の２文字分のストロークＳａ１〜Ｓａｎと、次の２文字分のストロークＳｂ２〜Ｓｂｍを含むものとする。この場合、ストロークＳａ１〜Ｓａｎについて第１入力枠９１及び第２入力枠９２が割り当てられている状況下で、新たなストロークＳｂ１が入力されて該ストロークＳｂ１が第１入力枠９１に割り当てられた場合に、ペアの切り替えが実現されてもよい。即ち、ストロークＳｂ１が第１入力枠９１に割り当てられた時点で、その時点でのストロークＳａ１〜Ｓａｎのうちの重複ストロークの割当結果が確定される。そして、ストロークＳｂ１、及び、それ以後に入力されうるストロークＳｂ２〜Ｓｂｍの割り当ては、ストロークＳａ１〜Ｓａｎの割当結果から独立した態様で、新たなペアである第１入力枠９１及び第２入力枠９２に対して同様に実行される。具体的には、図１４に示す処理において、以下の変形を行うこととしてもよい。ステップＳ１４３０において、入力枠割当処理部１２は、現時点で重複ストロークフラグが"１"である全ての重複ストロークに係る割り当てを確定し、全ての重複ストロークフラグを"０"にリセットする。そして、ステップＳ１４３０を終了すると、今回入力されたストロークに対する処理はそのまま終了する。
【０１３２】  また、上述した実施例において、第１入力枠９１及び第２入力枠９２は、手書き入力される文字の属性（例えば、アルファベット、漢字、ひらがな等）に応じて変化されていないが、これに限られない。例えば、手書き入力される文字の属性が既知である場合、第１入力枠９１及び第２入力枠９２の各サイズは、該属性に応じて変化されてもよい。例えば、メールアドレスの入力欄の場合、そこに手書き入力される文字の属性は、アルファベット又は数字である。従って、このような場合は、第１入力枠９１及び第２入力枠９２の各サイズは、重複領域９３の面積が小さくなるように変化されてよい。これは、アルファベット又は数字の場合、ひらがなや漢字等に比べて、重複領域９３の面積が比較的大きいときは全てのストロークが重複ストロークとなってしまう可能性が高いためである。
【符号の説明】
【０１３３】  １  文字認識装置    １１  入力検知部  １２  入力枠割当処理部  １３  文字認識部  １４  認識文字表示部  ４１  記憶部  ９０（９０Ａ乃至９０Ｇ）  入力画面  ９１（９１１乃至９１７）  第１入力枠  ９２（９２１乃至９２７）  第２入力枠  ９３（９３２，９３３，９３５，９３６，９５６，９３７，９５７）  重複領域  ９４  第１非重複領域  ９５  第２非重複領域
【図１】
2016181566.tif 000003
【図２】
2016181566.tif 000004
【図３】
2016181566.tif 000005
【図４】
2016181566.tif 000006
【図５】
2016181566.tif 000007
【図６】
2016181566.tif 000008
【図７】
2016181566.tif 000009
【図８】
2016181566.tif 000010
【図９】
2016181566.tif 000011
【図１０】
2016181566.tif 000012
【図１１】
2016181566.tif 000013
【図１２】
2016181566.tif 000014
【図１３】
2016181566.tif 000015
【図１４】
2016181566.tif 000016
【図１５】
2016181566.tif 000017
【図１６】
2016181566.tif 000018
【図１７】
2016181566.tif 000019
【図１８】
2016181566.tif 000020
【図１９】
2016181566.tif 000021
【図２０】
2016181566.tif 000022
【図２１】
2016181566.tif 000023
【図２２】
2016181566.tif 000024
【図２３】
2016181566.tif 000025
【図２４】
2016181566.tif 000026
【図２５】
2016181566.tif 000027
【図２６】
2016181566.tif 000028
【図２７】
2016181566.tif 000029
【図２８】
2016181566.tif 000030
【図２９】
2016181566.tif 000031
【図３０】
2016181566.tif 000032
【図３１】
2016181566.tif 000033
【図３２】
2016181566.tif 000034
【図３３】
2016181566.tif 000035
【図３４】
2016181566.tif 000036
【図３５】
2016181566.tif 000037
【図３６】
2016181566.tif 000038
【図３７】
2016181566.tif 000039
【手続補正書】
【提出日】平成29年11月15日(2017.11.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
手書き入力を受け付け可能な画面に、一部が重複する第１および第２の入力領域のそれぞれについて、前記第１および第２の入力領域を示唆する表示を行い、
前記第１の入力領域および第２の入力領域それぞれに対する手書き入力を、それぞれ異なる文字として認識する、文字認識方法。
【請求項２】
一部が重複する第１及び第２の入力領域を有する画面への手書き入力による複数のストロークを受け付け、
前記複数のストロークを、前記第１又は第２の入力領域のいずれかに割り当て、第１及び第２の文字を認識する、文字認識方法。
【請求項３】
前記第１の入力領域と前記第２の入力領域の重複する領域の幅は、前記第１の入力領域の幅の半分より大きい、請求項１又は２に記載の文字認識方法。
【請求項４】
前記第１の入力領域と前記第２の入力領域の重複する領域の高さは、前記第１の入力領域の高さの半分より大きい、請求項１〜３のうちのいずれか１項に記載の文字認識方法。
【請求項５】
前記第１の入力領域と前記第２の入力領域の重複する領域の面積は、前記第１の入力領域の面積の４分の１より大きい、請求項１〜４のうちのいずれか１項に記載の文字認識方法。
【請求項６】
前記第１及び第２の入力領域は、前記画面の垂直方向及び水平方向のいずれにもシフトされている、請求項１〜５のうちのいずれか１項に記載の文字認識方法。
【請求項７】
前記手書き入力による複数のストロークのうちの、前記第１及び第２の入力領域の重複領域を通るストロークについては、該ストロークの座標情報と、該ストロークの前後のストロークの、前記第１又は第２の入力領域への割り当て状況とを参照して、前記第１又は第２の入力領域に割り当てる、請求項１〜６のうちのいずれか１項に記載の文字認識方法。
【請求項８】
前記第１及び第２の入力領域の重複領域を通るストロークの割り当てに、該ストロークの少なくとも始点座標又は終点座標を用いる、請求項７に記載の文字認識方法。
【請求項９】
前記複数のストロークのそれぞれの割り当てに、該ストロークの座標情報に基づく該ストロークの通過領域の情報を用いる、請求項７又は８に記載の文字認識方法。
【請求項１０】
前記通過領域の情報は、前記ストロークが通る領域を含む矩形領域の情報を含む、請求項９に記載の文字認識方法。
【請求項１１】
手書き入力を受け付け可能な画面に、一部が重複する第１および第２の入力領域のそれぞれについて、前記第１および第２の入力領域を示唆する表示を与える部位又は処理部と、
前記第１の入力領域および第２の入力領域それぞれに対する手書き入力を、それぞれ異なる文字として認識する処理部と、
を備える、文字認識装置。
【請求項１２】
コンピューターに、
手書き入力を受け付け可能な画面に、一部が重複する第１および第２の入力領域のそれぞれについて、前記第１および第２の入力領域を示唆する表示を行い、
前記第１の入力領域および第２の入力領域それぞれに対する手書き入力を、それぞれ異なる文字として認識する、
処理を実行させる文字認識プログラム。
【請求項１３】
一部が重複する第１及び第２の入力領域を有する画面への手書き入力による複数のストロークを受け付け、
前記複数のストロークを、前記第１又は第２の入力領域のいずれかに割り当て、第１及び第２の文字を認識する、
処理部を備える、文字認識装置。
【請求項１４】
コンピューターに、
一部が重複する第１及び第２の入力領域を有する画面への手書き入力による複数のストロークを受け付け、
前記複数のストロークを、前記第１又は第２の入力領域のいずれかに割り当て、第１及び第２の文字を認識する、
処理を実行させる文字認識プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
アプリケーション１０は、画面に対する手書き入力されたストロークに基づいて、手書き入力された文字を認識し、認識した文字を表示するプログラムを含む。手書き入力とは、手（以下の例では、指）を動かして入力したい文字を表現する入力方法であり、スタイラスを用いた入力方法を含む概念である。具体的には、アプリケーション１０は、ユーザが画面に手書き入力したストロークに基づいて、手書き入力された文字を認識する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
手書き入力されたストロークとは、手書き入力されるときの指又はスタイラスの軌跡（座標列）に対応する。ストロークの１単位は、座標軸且つ時間軸において連続した１つの軌跡（１画分の軌跡）である。座標軸とは、手書き入力される入力画面上の座標軸である。１文字は、１以上のストロークにより表現できる。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００８２
【補正方法】変更
【補正の内容】
【００８２】
ステップＳ１４３０では、入力枠割当処理部１２は、今回入力された非重複ストロークに割り当てられた入力枠に基づいて、その２つ前の入力枠に割り当てられた重複ストロークに係る割り当てを確定する。即ち、入力枠割当処理部１２は、２つ前の入力枠に割り当てられた重複ストロークについて、ステップＳ１４２２で得られている現時点の割当結果を確定させる。ステップＳ１４３０が終了すると、ステップＳ１４１４に進む。この場合、今回入力された非重複ストロークに割り当てられた入力枠よりも２つ前の入力枠に係る割当結果が確定し、新たな直近の２つの入力枠に係る割り当てが開始される。例えば、第１入力枠９１及び第２入力枠９２に交互に３文字以上連続して手書き入力が行われる場合、３文字目が第１入力枠９１に手書き入力され始めたときに、１文字目に係る重複ストロークに対する割当は確定される。また、４文字目が第２入力枠９２に手書き入力され始めたときに、２文字目に係る重複ストロークに対する割当は確定される。
【国際調査報告】
2016181566.tif 000040
2016181566.tif 000041
2016181566.tif 000042
2016181566.tif 000043