(57)【特許請求の範囲】
【請求項１】
入力された手書きデータから、個別の文字を認識し、
認識された前記文字の認識結果に応じて、複数の前記文字それぞれについて、文字間のスペースを判別する際の基準位置を設定し、
前記基準位置に基づき、前記複数の前記文字間のスペースの有無に関する情報を生成する、処理をコンピュータに実行させる認識プログラム。
【請求項２】
前記スペースの有無に関する情報に基づき、前記文字間のスペースの有無を判別する、処理を前記コンピュータに実行させる請求項１記載の認識プログラム。
【請求項３】
第一の文字と第二の文字との間のスペースの有無に関する情報と、
前記第一の文字の前に有ると判別されたスペースの次の文字から、前記第一の文字までの文字列と、単語群が格納された辞書データベースとを照合した結果と、
に基づき、前記第一の文字と前記第二の文字との間のスペースの有無を判別する処理を、前記コンピュータに実行させる請求項１又は２記載の認識プログラム。
【請求項４】
前記複数の文字毎に、前記文字の認識による前記文字を囲う枠の幅を示す値を取得し、
前記複数の文字のそれぞれを囲う前記枠の幅の平均値と、枠と枠との間の距離の平均値とを算出し、
前記複数の文字のそれぞれの前記基準位置の間の距離が、前記枠の幅の平均値以上であり、且つ前記枠と枠との間の距離の平均値以上であるとき、
前記文字間のスペースの有無に関する情報を生成する、処理を前記コンピュータに実行させる請求項１乃至３の何れか一項に記載の認識プログラム。
【請求項５】
前記基準位置は、
前記文字の重心軸の位置と、前記文字を囲う枠における文字と文字との境界の位置と、を含む請求項１乃至４の何れか一項に記載の認識プログラム。
【請求項６】
コンピュータによる認識方法であって、該コンピュータが、
入力された手書きデータから、個別の文字を認識し、
認識された前記文字の認識結果に応じて、複数の前記文字それぞれについて、文字間のスペースを判別する際の基準位置を設定し、
前記基準位置に基づき、前記複数の前記文字間のスペースの有無に関する情報を生成する、認識方法。
【請求項７】
入力された手書きデータから、個別の文字を認識する文字認識部と、
認識された前記文字の認識結果に応じて、複数の前記文字それぞれについて、文字間のスペースを判別する際の基準位置を設定する基準位置設定部と、
前記基準位置に基づき、前記複数の前記文字間のスペースの有無に関する情報を生成する位置情報生成部と、を有する認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手書きデータの認識を行う認識プログラム、認識方法及び認識装置に関する。
【背景技術】
【０００２】
近年では、タッチパネルを有する端末装置等の普及により、タッチパネル等に手書きで入力された個々の文字を判別し、認識された文字列から単語や文章を認識する技術が知られている。この技術では、単語や文章を認識するために、文字と文字との境界と、文字間に設けられたスペースと、を判別することが重要となる。
【０００３】
従来技術として、例えば、個別の文字を認識した後の認識文字枠同士の距離に基づいて、文字と文字との間の設けられたスペースを判別する技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平９−５００４７３号公報
【特許文献２】特開平６−２６６８９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、文字の中には、認識文字枠の境界と、文字の書き手が認識する文字の重心位置とが離れている文字が存在する。また、書き手が文字間にスペースを設ける際は、文字の境界同士を離すことよりも、文字の重心位置同士を離すものである。
【０００６】
したがって、たとえば、従来技術では、認識文字枠の境界と重心位置とが離れている文字については、文字間のスペースの有無の判別が困難となる。
【０００７】
１つの側面では、スペースの認識の精度を向上させることが可能な認識プログラム、認識方法及び認識装置を提供することを目的としている。
【課題を解決するための手段】
【０００８】
一様態によれば、入力された手書きデータから、個別の文字を認識し、認識された前記文字の認識結果に応じて、複数の前記文字それぞれについて、文字間のスペースを判別する際の基準位置を設定し、前記基準位置に基づき、前記複数の前記文字間のスペースの有無に関する情報を生成する、処理をコンピュータに実行させる。
【０００９】
上記各処理は、上記各処理を実現する機能部、上記各処理を手順としてコンピュータにより実行させる方法、プログラムを記憶したコンピュータ読み取り可能な記憶媒体とすることもできる。
【発明の効果】
【００１０】
スペースの認識の精度を向上させる。
【図面の簡単な説明】
【００１１】
【図１】文字間のスペースの判別を説明する図である。
【図２】第一の実施形態の認識システムのシステム構成の一例を示す図である。
【図３】第一の実施形態の認識装置のハードウェア構成の一例を示す図である。
【図４】第一の実施形態の特定文字データベースを説明する図である。
【図５】第一の実施形態の認識装置の機能構成を説明する図である。
【図６】第一の実施形態の認識装置の動作を説明するフローチャートである。
【図７】第一の実施形態のスペース検出処理部によるスペース検出処理を説明するフローチャートである。
【図８】認識装置に入力される手書きデータの一例を示す図である。
【図９】認識文字枠と文字情報を説明する図である。
【図１０】認識された文字に含まれる特定文字と、特定文字と隣り合う文字を示す図である。
【図１１】縦ストローク要素の抽出について説明する第一の図である。
【図１２】縦ストローク要素の抽出について説明する第二の図である。
【図１３】不要な縦ストローク要素がある場合と、縦ストローク要素がない場合について説明する図である。
【図１４】縦ストローク要素間の距離の算出について説明する図である。
【図１５】スペースの挿入位置を説明する図である。
【図１６】第二の実施形態の認識システムのシステム構成の一例を示す図である。
【図１７】第二の実施形態の認識装置の機能構成を説明する図である。
【図１８】第二の実施形態のスペース検出処理部によるスペース検出処理を説明するフローチャートである。
【図１９】認識システムのシステム構成の変形例を示す図である。
【図２０】端末装置の変形例を示す図である。
【発明を実施するための形態】
【００１２】
以下に図面を参照して実施形態について説明する。本実施形態における文字認識では、認識文字枠の境界と、文字の書き手が認識する文字の重心位置とが離れている特定の文字（たとえば、Ｊ、Ｌ、Ｔなど）について、認識された文字に応じてスペース有無の判別に用いる基準位置を設定することにより、文字間のスペースの認識精度を向上させる。
【００１３】
図１は、文字間のスペースの判別を説明する図である。図１（Ａ−１）、（Ａ−２）は、認識された文字に、特定の文字（以下、特定文字）として「ｙ」が含まれる場合を示しており、図１（Ｂ−１）、（Ｂ−２）は、認識された文字に、特定文字として「Ｊ」が含まれる場合を示している。
【００１４】
図１（Ａ−１）、（Ａ−２）では、手書き入力で「ｔｈｅｙ  ｌｉｖｅ」という文字列が入力された例を示している。この場合、認識結果としては、文字列「ｔｈｅｙ」と文字列「ｌｉｖｅ」がそれぞれ１つの単語であるため、両者の間、つまり、文字「ｙ」と文字「Ｌ」との間にスペースが挿入されることが望ましい。
【００１５】
ここで、文字「ｙ」は、図１（Ａ−１）に示すように、認識文字枠Ａ１におけるスペース側の境界Ｋ１と、文字の書き手が認識する文字の重心軸Ｇ１とが離れている。尚、重心軸Ｇ１とは、文字「ｙ」の重心と重なる縦方向（ＸＹ座標のＹ軸方向）の軸である。
【００１６】
このような特定文字において、書き手は、文字「ｙ」の重心軸Ｇ１と、文字「ｌ」の認識文字枠Ａ２におけるスペース側の境界Ｋ２との距離Ｌ１を離すことで、２つの文字の間にスペースを設けようとする傾向がある。
【００１７】
したがって、文字「ｙ」の認識文字枠Ａ１の境界Ｋ１と、文字「ｌ」の認識文字枠Ａ２の境界Ｋ２との間の距離Ｌ２は、認識文字枠同士の距離によりスペースの有無を判別しようとした場合、スペースが有ると判別されるほど十分な距離とならない場合が多い。
【００１８】
そこで、本実施形態では、ある文字と、ある文字と隣り合う文字との間のスペースの有無を判別する際に、ある文字が、上述した特定文字であるか否かを判定する。
【００１９】
そして、本実施形態では、ある文字が特定文字と判別された場合、この特定文字と、特定文字と隣り合う文字のそれぞれに、スペースの有無を判別するための基準位置を設定し、基準位置同士の距離に基づきスペースの有無を判別する。
【００２０】
図１（Ａ−２）の例では、文字「ｙ」の基準位置を重心軸Ｇ１とし、文字「ｌ」の基準位置を文字「ｌ」のストロークにおける縦方向の成分の位置を示す軸Ｇ２とした。よって、図１（Ａ−２）の例では、文字「ｙ」と文字「ｌ」との間のスペースの有無は、重心軸Ｇ１と軸Ｇ２との距離Ｌ１に基づき判別される。
【００２１】
本実施形態の特定文字は、他の文字と隣り合ったときに「ふところ」が広くなるとされる文字である。本実施形態の特定文字は、予め決められており、データベースに格納されている。本実施形態の「ふところ」とは、文字における画と画により形成される、画と画の内側の領域を示す。
【００２２】
図１（Ａ−２）では、文字「ｙ」における画Ｓ１と、文字「ｌ」における画Ｓ２の内側の領域Ｒ１がふところとなる。つまり、本実施形態では、ふところとなる領域Ｒ１の幅を含む距離Ｌ１に基づき、スペースの有無の判別が行われる。
【００２３】
図１（Ｂ−１）、（Ｂ−２）では、「Ｉ  ａｍ  Ｊａｐａｎｅｓｅ」という文字列が手書きで入力された例を示している。この場合、認識結果としては、文字「Ｉ」と文字列「ａｍ」の間、つまり、文字「Ｉ」と文字「ａ」との間にスペースが挿入されることが望ましい。
同様に、文字列「ａｍ」と文字列「Ｊａｐａｎｅｓｅ」の間、つまり、文字「ｍ」と文字「Ｊ」との間にスペースが挿入されることが望ましい。ここでは文字「ｍ」と文字「Ｊ」との間のスペースについて説明する。
【００２４】
文字「Ｊ」は、予め決められた特定の文字であり、文字「ｍ」の認識文字枠Ａ３のスペース側の境界Ｋ３と、文字「Ｊ」の認識文字枠Ａ４のスペース側の境界Ｋ４との距離Ｌ３は、スペースと判別するために十分な距離とならない。
【００２５】
そこで、本実施形態では、図１（Ｂ−２）に示すように、文字「ｍ」と文字「Ｊ」のそれぞれに、基準位置を設定する。ここでは、図１（Ｂ−２）に示すように、文字「ｍ」の基準位置をＧ３とし、文字「Ｊ」の基準位置をＧ４とした。
【００２６】
本実施形態の基準位置Ｇ３は、文字「ｍ」から得られる複数の縦方向のストロークのうち、最もスペース側にある成分であり、基準位置Ｇ４は、文字「Ｊ」から得られる縦方向のストロークである。本実施形態では、基準位置Ｇ３と基準位置Ｇ４の距離Ｌ４に基づき、文字「ｍ」と文字「Ｊ」との間のスペースの有無を判別する。
【００２７】
また、図１（Ｂ−２）では、文字「ｍ」における画Ｓ３と、文字「Ｊ」における画Ｓ４の内側の領域Ｒ２ふところとなる。したがって、図１（Ｂ−２）では、ふところとなる領域Ｒ２の幅を含む距離Ｌ４に基づき、スペースの有無の判別が行われる。
【００２８】
以上のように、本実施形態では、文字間のスペースの有無を判別する際に、２つの文字の画により形成される、ふところとなる領域を考慮して、スペースの有無を判別することができる。
【００２９】
したがって、本実施形態によれば、隣り合う文字間のスペースの認識の精度を向上させることができる。
【００３０】
（第一の実施形態）
図２は、第一の実施形態の認識システムのシステム構成の一例を示す図である。本実施形態の認識システム１００は、認識装置２００と、端末装置３００とを有する。本実施形態では、認識装置２００と端末装置３００とは、ネットワークＮを介して接続される。
【００３１】
本実施形態の認識装置２００は、特定文字データベース２１０と、認識処理部２２０と、を有する。
【００３２】
本実施形態の認識システム１００において、端末装置３００は、手書きデータの入力を受け付けると、入力された手書きデータを認識装置２００へ送信する。認識装置２００は、端末装置３００から手書きデータを受信すると、認識処理部２２０により、特定文字データベース２１０を参照して手書きデータの認識を行い、認識結果を端末装置３００へ出力する。端末装置３００は、認識装置２００から受信した認識結果を表示させる。
【００３３】
尚、本実施形態の端末装置３００には、手書きデータの入力を受け付ける入力画面と、手書きデータの認識結果を示す結果表示画面とを表示させる表示処理部を有していても良い。本実施形態の手書きデータとは、認識装置２００に対して認識させるデータであり、人の指やポインタ等により描かれるストロークを示す。本実施形態の手書きデータには、例えば文字、数字、文字列等が含まれる。また、本実施形態の手書きデータには、図形や記号等が含まれても良い。
【００３４】
図３は、第一の実施形態の認識装置のハードウェア構成の一例を示す図である。
【００３５】
本実施形態の認識装置２００は、それぞれバスＢで相互に接続されている入力装置２１、出力装置２２、ドライブ装置２３、補助記憶装置２４、メモリ装置２５、演算処理装置２６及びインターフェース装置２７を有する。
【００３６】
入力装置２１は、例えばマウスやキーボードであり、各種の情報を入力するために用いられる。出力装置２２は、例えばディスプレイ等であり、各種信号の表示（出力）に用いられる。インターフェース装置２７は、モデム，ＬＡＮカード等を含み、ネットワークに接続する為に用いられる。
【００３７】
認識プログラムは、認識装置２００を制御する各種プログラムの少なくとも一部である。認識プログラムは例えば記録媒体２８の配布やネットワークからのダウンロードなどによって提供される。認識プログラムを記録した記録媒体２８は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的，電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
【００３８】
また、認識プログラムを記録した記録媒体２８がドライブ装置２３にセットされると、認識プログラムは記録媒体２８からドライブ装置２３を介して補助記憶装置２４にインストールされる。ネットワークからダウンロードされた認識プログラムは、インターフェース装置２７を介して補助記憶装置２４にインストールされる。
【００３９】
補助記憶装置２４は、インストールされた認識プログラムを格納すると共に、必要なファイル、データ等を格納する。メモリ装置２５は、コンピュータの起動時に補助記憶装置２４から認識プログラムを読み出して格納する。そして、演算処理装置２６はメモリ装置２５に格納された各プログラムに従って、後述するような各種処理を実現している。
【００４０】
尚、本実施形態の認識装置２００がタブレット型のコンピュータやスマートフォン等である場合には、入力装置２１及び出力装置２２を兼ねた表示操作装置を有しても良い。表示操作装置は、例えば表示機能を有するタッチパネル等により実現される。
【００４１】
また、本実施形態の端末装置３００は、例えば上述した手書きデータの入力を受け付けるタッチパネル等を有するタブレット型のコンピュータやスマートフォン等である。
【００４２】
次に、図４を参照して本実施形態の特定文字データベース２１０について説明する。図４は、第一の実施形態の特定文字データベースを説明する図である。図４（Ａ）は、特定文字を説明する図であり、図４（Ｂ）は、特定文字データベースの一例を示す図である。
【００４３】
本実施形態では、隣り合う文字との間にふところが形成されたとき、ふところが広くなる可能性がある文字を特定文字としている。図４（Ａ）では、隣り合う文字との間に形成されるふところを黒丸で示し、黒丸が記されている文字を特定文字とした。特定文字は、例えば過去の手書きデータの文字認識において、隣り合う文字との間に形成されるふところが広く、文字間にあるスペースが認識されなかった文字を集計した結果等として、予め与えられている。
【００４４】
具体的には、特定文字は、例えばアルファベットの「ｆ」、「ｇ」、「Ｉ」、「７」等である。尚、本実施形態の特定文字は、アルファベットや数字以外の文字を含んでいて良い。例えば特定文字には、ひらがなやハングル文字等、各国の言語の文字が含まれていても良い。
【００４５】
本実施形態の特定文字データベース２１０には、図４（Ａ）に示す各種の特定文字が格納されている。
【００４６】
本実施形態では、特定文字に対してのみ、後述するスペースの有無の判定を行うことで、例えば「ｂ」や「ｄ」等の小さい縦の要素を除外した場合に、スペースの有無の判定を誤ることを抑制できる。
【００４７】
次に、図５を参照して本実施形態の認識装置２００の機能について説明する。図５は、第一の実施形態の認識装置の機能構成を説明する図である。
【００４８】
本実施形態の認識装置２００は、認識処理部２２０を有する。本実施形態の認識処理部２２０は、認識装置２００の演算処理装置２６により、メモリ装置２５に格納された認識プログラムが実行されることにより実現される。
【００４９】
本実施形態の認識処理部２２０は、入力受付部２３０、文字認識部２４０、スペース検出処理部２５０、文字列決定部２６０、認識結果出力部２７０を有する。
【００５０】
入力受付部２３０は、端末装置３００から送信される手書きデータの入力を受け付ける。文字認識部２４０は、入力された手書きデータに含まれる文字を認識する文字認識処理を行う。
【００５１】
本実施形態のスペース検出処理部２５０は、文字間のスペースを検出する。スペース検出処理部２５０の詳細は後述する。
【００５２】
文字列決定部２６０は、文字認識部２４０による文字認識の結果と、スペース検出処理部２５０によるスペースの検出の結果と、に応じた文字列を決定する。認識結果出力部２７０は、文字列決定部２６０により決定された文字列を、本実施形態の認識装置２００による認識結果として、端末装置３００に出力する。
【００５３】
本実施形態のスペース検出処理部２５０は、文字情報算出部２５１、特定文字照合部２５２、間隔判定部２５３、縦ストローク抽出部２５４、不要要素除去部２５５、基準位置設定部２５６、基準位置間隔算出部２５７、位置情報生成部２５８を有する。
【００５４】
本実施形態の文字情報算出部２５１は、文字認識部２４０による文字認識の結果から、認識された文字の高さ・幅等を含む文字情報を算出する。具体的には、本実施形態の文字情報は、平均文字間隔、平均文字幅である。
【００５５】
特定文字照合部２５２は、文字認識部２４０により認識された各文字と、特定文字データベース２１０とを照合する。
【００５６】
間隔判定部２５３は、文字認識部２４０により認識された各文字間の間隔が、スペースとみなされる距離であるか否かを判定する。
【００５７】
縦ストローク抽出部２５４は、文字認識部２４０により認識された文字に含まれるストロークにおける縦方向の成分を抽出する。以下の説明では、文字に含まれるストロークにおける縦方向の成分を縦ストローク要素と呼ぶ。
【００５８】
不要要素除去部２５５は、縦ストローク抽出部２５４により抽出さたれ縦ストローク要素から、スペースの検出において不要となる縦ストローク要素を除去し、スペースの検出において用いられる縦ストローク要素を残す。
【００５９】
基準位置設定部２５６は、スペースの検出において用いられる縦ストローク要素の位置を示す値を取得し、この値を、縦ストローク要素を抽出した文字の基準位置に設定する。
【００６０】
基準位置間隔算出部２５７は、隣り合う文字同士からそれぞれ抽出された縦ストローク要素の距離を算出する。言い換えれば隣り合う文字それぞれの基準位置の間の距離を算出する。位置情報生成部２５８は、スペース有りと判定された位置を示す情報を生成する。
【００６１】
本実施形態のスペース検出処理部２５０の有する各部の処理の詳細は後述する。
【００６２】
次に、図６を参照して、本実施形態の認識装置２００の動作について説明する。図６は、第一の実施形態の認識装置の動作を説明するフローチャートである。
【００６３】
本実施形態の認識装置２００は、入力受付部２３０により、端末装置３００から受信した手書きデータの入力を受け付ける（ステップＳ６１）。続いて認識装置２００は、文字認識部２４０により、手書きデータに対する文字認識を行う（ステップＳ６２）。
【００６４】
続いて、認識装置２００は、スペース検出処理部２５０は、認識結果の各文字を取得する（ステップＳ６３）。次に認識装置２００は、スペース検出処理部２５０により、文字間毎にスペース検出処理を行う（ステップＳ６４）。
【００６５】
続いて認識装置２００は、文字列決定部２６０により、文字認識部２４０による文字認識結果と、スペース検出処理部２５０によるスペース検出結果とを反映させた文字列を決定し、決定した文字列を端末装置３００に出力する（ステップＳ６５）。端末装置３００は、認識装置２００から出力された文字列を表示させる。
【００６６】
次に、図７を参照し、本実施形態のスペース検出処理部２５０によるスペース検出処理について説明する。図７は、第一の実施形態のスペース検出処理部によるスペース検出処理を説明するフローチャートである。
【００６７】
本実施形態のスペース検出処理部２５０は、文字情報算出部２５１により、認識された各文字を囲う認識文字枠に関する情報から、平均文字間隔α、平均文字幅βを含む文字情報を算出する（ステップＳ７０１）。
【００６８】
続いてスペース検出処理部２５０は、認識された文字列における文字の位置を示す変数を変数ｉとし（ステップＳ７０２）、ｉ＝０〜ｍまで、ステップＳ７０３以降の処理を行う。尚、ｍは文字間隔数であり、認識された文字数をｎとした場合、ｍ＝ｎ−１である。
【００６９】
本実施形態のスペース検出処理部２５０は、間隔判定部２５３は、文字間隔Ｓｉの距離が平均文字間隔α±標準偏差以上の間隔であり、且つ文字間隔Ｓｉが平均文字幅β±標準偏差以上の間隔であるか否かを判定する（ステップＳ７０３）。尚、ここで文字間隔Ｓｉは、文字列のｉ番目の文字とｉ＋１番目の文字との文字間隔である。
【００７０】
ステップＳ７０３において、文字間隔Ｓｉが条件を満たす場合、間隔判定部２５３は、文字間隔Ｓｉをスペースと判定し、該当文字間がスペース挿入位置であることを示す位置情報を生成し、文字列決定部２６０へ出力する（ステップＳ７０４）。すなわち、本実施形態では、ｉ番目の文字とｉ＋１番目の文字との文字間隔が、平均文字間隔α以上であり、且つ平均文字幅β以上である場合に、この文字間にスペースが有ると検出する。
【００７１】
ステップＳ７０３において、文字間隔Ｓｉが条件を満さない場合、スペース検出処理部２５０は、特定文字照合部２５２により、特定文字データベース２１０を参照し、ｉ番目の文字が特定文字であるか否かを判定する（ステップＳ７０５）。ステップＳ７０５において、ｉ番目の文字が特定文字でない場合、スペース検出処理部２５０は、ｉ番目とｉ＋１番目の文字の間にスペースは無いものと判定し、後述するステップＳ７１３へ進む。
【００７２】
ステップＳ７０５において、ｉ番目の文字が特定文字であった場合、スペース検出処理部２５０は、縦ストローク抽出部２５４は、スペースが入る可能性がある文字と、その前後の文字を１つのグループとし、グループ内の各文字から縦ストローク要素を抽出する（ステップＳ７０６）。すなわち、縦ストローク抽出部２５４は、ｉ−１番目の文字と、ｉ番目の文字と、ｉ＋１番目の文字から、それぞれ縦ストローク要素を抽出する。
【００７３】
続いて、スペース検出処理部２５０は、縦ストローク抽出部２５４により、各文字に縦ストローク要素が存在するか否かを判定する（ステップＳ７０７）。ステップＳ７０７において、各文字に縦ストローク要素が存在する場合、スペース検出処理部２５０は、不要要素除去部２５５により、各文字の無効な縦ストローク要素を除去し（ステップＳ７０８）、後述するステップＳ７１０へ進む。
【００７４】
ステップＳ７０７において、各文字に縦ストローク要素が存在しない場合、スペース検出処理部２５０は、縦ストローク抽出部２５４により、縦ストローク要素が存在しない文字の文字幅の中心値を縦ストローク要素の値とする（ステップＳ７０９）。
【００７５】
続いて、スペース検出処理部２５０は、基準位置設定部２５６により、各文字の縦ストローク要素の位置を示す値を取得して基準位置に設定し、基準位置間隔算出部２５７により、基準位置同士の間隔（距離）を算出する（ステップＳ７１０）。
【００７６】
尚、本実施形態では、ｉ−１番目の文字において最もｉ番目の文字に近い位置の縦ストローク要素と、ｉ番目の文字において最もｉ−１番目の文字に近い位置の縦ストローク要素との距離を算出する。同様に、本実施形態では、ｉ１番目の文字において最もｉ＋１番目の文字に近い位置の縦ストローク要素と、ｉ＋１番目の文字において最もｉ番目の文字に近い位置の縦ストローク要素との距離を算出する。また、本実施形態では、各縦ストローク要素の幅の中心の座標を縦ストローク要素の値とし、この値を用いて縦ストローク要素間の距離を算出する。
【００７７】
続いてスペース検出処理部２５０は、間隔判定部２５３により、縦ストローク要素間の距離が平均文字間隔α±標準偏差以上の間隔であり、且つ縦ストローク要素間の距離が平均文字幅β±標準偏差以上の間隔であるか否かを判定する（ステップＳ７１１）。
【００７８】
ステップＳ７１１において、縦ストローク要素の距離が条件を満たさない場合、スペース検出処理部２５０は、後述するステップＳ７１３へ進む。
【００７９】
ステップＳ７１１において、縦ストローク要素の距離が条件を満たす場合、間隔判定部２５３は、縦ストローク要素間の距離をスペースによるもの判定し、該当文字間がスペース挿入位置であることを示す位置情報を生成し、文字列決定部２６０へ出力する（ステップＳ７１２）。
【００８０】
尚、スペース挿入位置であることを示す位置情報とは、すなわち文字間のスペースの有無に関する情報である。尚、本実施形態では、縦ストローク要素間の間隔がスペースと判定されたとき、スペースの挿入位置を示す位置情報を生成するものとしたが、これに限定されない。本実施形態では、例えば縦ストローク要素間の間隔がスペースでないと判定されたとき、スペースの有無に関する情報として、スペースの挿入位置ではないことを示す情報を生成し、文字列決定部２６０に出力しても良い。
【００８１】
本実施形態のスペース検出処理部２５０は、ステップＳ７０３からＳ７１２までの処理を変数ｉ＝ｍとなるまで繰り返し（ステップＳ７１３）、処理を終了する。
【００８２】
次に、図８乃至図１６を参照し、スペース検出処理部２５０の処理を具体的に説明する。
【００８３】
図８は、認識装置に入力される手書きデータの一例を示す図である。図８に示す画面８１は、端末装置３００に表示された手書きデータの入力画面の一例である。
【００８４】
画面８１では、「ＩａｍＪａｐａｎｅｓｅ」という文字列が入力されている。この文字列が手書きデータとして認識装置２００に送信される。
【００８５】
本実施形態の認識装置２００は、文字認識部２４０により、手書きデータに含まれる各文字が認識されると、各文字を囲う認識文字枠に関する情報を取得する。認識文字枠に関する情報は、文字の高さや幅の情報を含む。
【００８６】
図９は、認識文字枠と文字情報を説明する図である。図９（Ａ）は、認識文字枠を説明する図であり、図９（Ｂ）は文字情報を説明する図である。
【００８７】
本実施形態では、文字認識部２４０が手書きデータに含まれる各文字を認識した際に、各文字を囲う認識文字枠に関する情報（以下、認識文字枠情報）が得られる。以下の説明では、認識文字枠情報は、文字を囲う認識文字枠の高さを示す値と、文字を囲う認識文字枠の幅を示す値とを含む。本実施形態では、認識文字枠の高さを文字の高さとし、認識文字枠の幅を文字の幅として用いる。
【００８８】
図９（Ａ）では、文字「ｍ」を囲う認識文字枠Ａを示している。文字「ｍ」は、ドットの集合として表されており、認識文字枠Ａは、ドットの集合を囲っている。
【００８９】
この認識文字枠Ａの高さを示す値Ｈと、幅を示す値Ｗが、認識文字枠Ａの認識文字枠情報であり、文字「ｍ」の高さと幅となる。
【００９０】
尚、認識文字枠Ａの高さを示す値Ｈと、幅を示す値Ｗとは、認識文字枠Ａの４点の座標から得られる。本実施形態では、例えば手書きデータの入力画面に設けられた基準点を起点に、認識文字枠Ａの４点の座標を取得しても良い。図９（Ａ）の例では、入力画面の左上の点を基準点Ｐ（０，０）として、認識文字枠Ａの高さＨと幅Ｗが求められる。
【００９１】
本実施形態の文字情報算出部２５１は、以上のようにして文字認識部２４０により認識された各文字の認識文字枠情報を取得する。そして、文字情報算出部２５１は、取得した認識文字枠情報から図９（Ｂ）に示すように文字情報を算出する。
【００９２】
本実施形態の文字情報は、手書きデータから認識された文字列に含まれる文字の平均文字間隔αと、平均文字幅βである。
【００９３】
本実施形態では、認識された文字列において、ｉ番目の文字の文字幅をＷｉとし、ｉ番目の文字とｉ＋１番目の文字との文字間隔をＳｉとし、文字列に含まれる文字の数をｎとし、文字間隔数をｍ（＝ｎ−１）としたきと、平均文字間隔αと、平均文字幅βは、それぞれ以下の図９（Ｂ）に示す式１、式２で求められる。
【００９４】
よって、本実施形態の文字情報算出部２５１は、認識文字枠情報及び式１、式２により、平均文字間隔α及び平均文字幅βを算出する。
【００９５】
図１０は、認識された文字に含まれる特定文字と、特定文字と隣り合う文字を示す図である。図１０の例では、手書きデータから認識された文字のうち、特定文字データベース２１０に含まれる文字は、「Ｉ」、「Ｊ」、「ｐ」である。
【００９６】
よって、図１０では、文字「Ｉ」、「Ｊ」、「ｐ」のそれぞれについて、各文字と、各文字と隣り合う文字とに基準位置を設定し、基準位置に基づくスペースの有無を判別する。
【００９７】
文字「Ｉ」と隣り合う文字は、文字「ａ」である。よって、文字「Ｉ」と文字「ａ」間のスペースの有無の判別は、グループＧｒ１内の文字「Ｉ」と文字「ａ」のそれぞれに基準位置を設けて行われる。基準位置は、グループＧｒ１内の各文字から抽出された縦ストローク要素により設定される。
【００９８】
尚、文字「Ｉ」は文字列の先頭の文字であるため、文字「Ｉ」の前の文字は存在しない。よって、文字「Ｉ」についてのスペースの有無の判別は、文字「Ｉ」と、文字「Ｉ」の後の文字「ａ」との間についてのみ行われる。
【００９９】
同様に、文字「Ｊ」と隣り合う文字は、文字「ｍ」と文字「ａ」である。よって、文字「Ｊ」と、文字「Ｊ」と隣り合う文字との間のスペースの有無の判別は、グループＧｒ２内の文字「Ｊ」と文字「ｍ」と文字「ａ」のそれぞれに基準位置を設けて行われる。基準位置は、グループＧｒ２内の各文字から抽出された縦ストローク要素により設定される。
【０１００】
また、文字「ｐ」と隣り合う文字は、文字「ａ」と文字「ａ」である。よって、文字「ｐ」と、文字「ｐ」と隣り合う文字との間のスペースの有無の判別は、グループＧｒ３内の文字「ｐ」と、文字「ｐ」の前の文字「ａ」と、文字「ｐ」の後の文字「ａ」のそれぞれに基準位置を設けて行われる。基準位置は、グループＧｒ３内の各文字から抽出された縦ストローク要素により設定される。
【０１０１】
図１１は、縦ストローク要素の抽出について説明する第一の図である。本実施形態では、特定文字と、特定文字と隣り合う文字とが抽出されると、縦ストローク抽出部２５４により、各文字から縦ストローク要素を抽出する。
【０１０２】
本実施形態の縦ストローク抽出部２５４は、基準となる基準ドットＤを決め、この基準ドットＤを通る縦方向の軸に対し、所定の角度±θ以内の範囲に入るドットにより表されるストロークを縦ストローク要素とする。尚、基準ドットＤを通る縦方向の軸とは、紙面上に示すＸＹ座標におけるｙ軸方向である。
【０１０３】
本実施形態では、基準ドットＤから所定の角度の範囲に入るストロークを縦ストローク要素と見なすことで、手書きの際の手先のゆれが反映されたストロークでも、縦ストローク要素として抽出することができる。
【０１０４】
図１１の例では、ストロークＳｔａとストロークＳｔｂは、基準ドットＤを通る縦方向の軸から所定の角度±θ以内の範囲に入るドットにより表されるストロークであるため、縦ストローク要素として抽出される。
【０１０５】
また、ストロークＳｔｃは、ストロークＳｔｃを示すドットが、基準ドットＤを通る縦方向の軸から所定の角度±θ以内の範囲に入っていないため、縦ストローク要素として抽出されない。
【０１０６】
図１２は、縦ストローク要素の抽出について説明する第二の図である。図１２では、グループＧｒ１、Ｇｒ２、Ｇｒ３のそれぞれの各文字から抽出された縦ストローク要素を示している。
【０１０７】
グループＧｒ１においては、文字「Ｉ」と文字「ａ」の縦ストローク要素が抽出される。文字「Ｉ」からは、縦ストローク要素Ｓｔ１が抽出される。文字「ａ」からは、縦ストローク要素Ｓｔ２、Ｓｔ３、Ｓｔ４が抽出される。
【０１０８】
また、グループＧｒ２においては、文字「ｍ」と文字「Ｊ」と文字「ａ」の縦ストローク要素が抽出される。文字「ｍ」からは、縦ストローク要素Ｓｔ５、Ｓｔ６、Ｓｔ７、Ｓｔ８が抽出される。文字「Ｊ」からは、縦ストローク要素Ｓｔ９、Ｓｔ１０が抽出される。文字「ａ」からは、縦ストローク要素Ｓｔ１１、Ｓｔ１２、Ｓｔ１３が抽出される。
【０１０９】
グループＧｒ３においては、文字「ａ」と文字「ｐ」と文字「ａ」の縦ストローク要素が抽出される。文字「ａ」からは、縦ストローク要素Ｓｔ１１、Ｓｔ１２、Ｓｔ１３が抽出される。文字「ｐ」からは、縦ストローク要素Ｓｔ１４、Ｓｔ１５が抽出される。文字「ａ」からは、縦ストローク要素Ｓｔ１６、Ｓｔ１７、Ｓｔ１８が抽出される。
【０１１０】
次に、図１３を参照し、縦ストローク要素の抽出において、不要な縦ストローク要素がある場合と、縦ストローク要素がない場合について説明する。図１３は、不要な縦ストローク要素がある場合と、縦ストローク要素がない場合について説明する図である。
【０１１１】
始めに、図１３（Ａ）を参照し、不要な縦ストローク要素がある場合について説明する。図１３（Ａ）は、不要な縦ストローク要素がある場合を示している。
【０１１２】
本実施形態では、１つの文字から複数の縦ストローク要素が抽出された場合、ある縦ストローク要素を示す領域の面積が、他の縦ストローク要素を示す領域の面積より所定値以上小さい場合に、その縦ストローク要素を無効とし、除去する。
【０１１３】
図１３（Ａ）では、文字「Ｊ」について示している。文字「Ｊ」からは、縦ストローク要素Ｓｔ９、Ｓｔ１０が抽出される。そこで、不要要素除去部２５５は、２つの縦ストローク要素Ｓｔ９、Ｓｔ１０それぞれの領域の面積を比較し、その差分が所定値より大きいか否かを判定する。つまり、不要要素除去部２５５は、縦ストローク要素Ｓｔ９の領域の面積が、縦ストローク要素Ｓｔ１０の領域の面積よりも所定値以上小さいか否かを判定している。
【０１１４】
ここでは、縦ストローク要素Ｓｔ９の領域の面積は、縦ストローク要素Ｓｔ１０の領域の面積より所定値以上小さいため、縦ストローク要素Ｓｔ９は無効と判断される。無効と判断された縦ストローク要素は、スペースの有無の判定に用いる基準位置に設定されることはない。
【０１１５】
尚、ここでは、不要要素除去部２５５は、縦ストローク要素の領域の面積の差分により縦ストローク要素が無効か否かを判定しているが、判定の仕方はこれに限定されない。例えば、文字毎に縦ストローク要素の位置と、スペースの有無の判別に用いられる確率とを対応付けておき、抽出された縦ストローク要素の位置と対応する確率が所定の閾値以下であった場合にもこの縦ストローク要素を無効としても良い。
【０１１６】
次に、図１３（Ｂ）を参照し、縦ストローク要素が存在しない場合について説明する。図１３（Ｂ）は、縦ストローク要素がない場合を示している。
【０１１７】
本実施形態では、縦ストローク要素が存在しない場合、認識文字枠の幅の中心値をスペースの有無の判別に用いる基準位置とする。
【０１１８】
図１３（Ｂ）では、文字「ｙ」について示している。文字「ｙ」には、縦ストローク要素が存在しない。したがって、縦ストローク抽出部２５４は、文字「ｙ」の認識文字枠ｙ１の幅Ｗｙの中心のｘ座標を通る軸Ｓｔ２０を文字「ｙ」の基準位置となる縦ストローク要素の値とする。
【０１１９】
次に、図１４を参照し、縦ストローク要素間の距離の算出について説明する。図１４は、縦ストローク要素間の距離の算出について説明する図である。
【０１２０】
図１４（Ａ）は、文字列「ＩａｍＪａｐａｎｅｓｅ」における縦ストローク要素間の距離の算出を説明する図である。
【０１２１】
本実施形態の基準位置間隔算出部２５７は、縦ストローク要素間の距離を算出する際に、左の文字の最も右側にある縦ストローク要素と、右の文字の最も左側にある縦ストローク要素と、の間隔を算出する。つまり、本実施形態の基準位置間隔算出部２５７は、ある文字の基準位置となる縦ストローク要素と、ある文字と隣り合っている文字から抽出された、ある文字の基準位置と最も近い位置にある縦ストローク要素との距離を算出する。
【０１２２】
また、本実施形態の基準位置間隔算出部２５７は、縦ストローク要素の幅の中心の座標値を、縦ストローク要素の位置を示す値とし、縦ストローク要素間の距離を算出する。
【０１２３】
図１４（Ａ）では、文字列に含まれる全ての特定文字に縦ストローク要素が存在した場合を示している。
【０１２４】
図１４（Ａ）において、グループＧｒ１では、文字「Ｉ」から縦ストローク要素Ｓｔ１が抽出される。文字「Ｉ」から抽出された縦ストローク要素は、縦ストローク要素Ｓｔ１のみであるため、この縦ストローク要素Ｓｔ１が基準位置となる。具体的には、縦ストローク要素Ｓｔ１の幅の中心の座標値が、縦ストローク要素Ｓｔ１の位置を示す値であり、文字「Ｉ」のスペース有無の判別に用いられる基準位置である。
【０１２５】
文字「ａ」からは、縦ストローク要素Ｓｔ２、Ｓｔ３、Ｓｔ４が抽出される。よって、文字「ａ」では、最も文字「Ｉ」と近い縦ストローク要素Ｓｔ２が、文字「Ｉ」と文字「ｍ」との間のスペースの有無の判定に用いられる。
【０１２６】
ここで、本実施形態の基準位置間隔算出部２５７は、縦ストローク要素Ｓｔ１の幅の中心の座標値と、縦ストローク要素Ｓｔ２の幅の中心の座標値とから、縦ストローク要素Ｓｔ１と縦ストローク要素Ｓｔ２との間の距離Ｌ１を算出する。
【０１２７】
そして、本実施形態では、間隔判定部２５３は、距離Ｌ１１の値が、平均文字間隔α以上であり、且つ、平均文字幅β以上であった場合に、文字「Ｉ」と文字「ｍ」の間にスペースが有ると判定する。
【０１２８】
グループＧｒ２では、文字「ｊ」から縦ストローク要素Ｓｔ１０が抽出される。文字「ｊ」から抽出された縦ストローク要素は、縦ストローク要素Ｓｔ１０のみであるため、この縦ストローク要素Ｓｔ１０が基準位置となる。具体的には、縦ストローク要素Ｓｔ１０の幅の中心の座標値が、縦ストローク要素Ｓｔ１０の位置を示す値であり、文字「Ｊ」のスペース有無の判別に用いられる基準位置である。
【０１２９】
文字「Ｊ」の前の文字である文字「ｍ」からは、縦ストローク要素Ｓｔ８を含む複数の縦ストローク要素が抽出される。よって、文字「ｍ」では、最も文字「Ｊ」と近い縦ストローク要素Ｓｔ８が、文字「ｍ」と文字「Ｊ」との間のスペースの有無の判定に用いられる。
【０１３０】
よって、本実施形態の基準位置間隔算出部２５７は、縦ストローク要素Ｓｔ８の幅の中心の座標値と、縦ストローク要素Ｓｔ１０の幅の中心の座標値とから、縦ストローク要素Ｓｔ８と縦ストローク要素Ｓｔ１０との間の距離Ｌ１２を算出する。
【０１３１】
グループＧｒ２において、文字「Ｊ」の後の文字である文字「ａ」からは、縦ストローク要素Ｓｔ１１を含む複数の縦ストローク要素が抽出される。よって、文字「ａ」では、最も文字「Ｊ」と近い縦ストローク要素Ｓｔ１１が、文字「Ｊ」と文字「ａ」との間のスペースの有無の判定に用いられる。
【０１３２】
よって、本実施形態の基準位置間隔算出部２５７は、縦ストローク要素Ｓｔ１０の幅の中心の座標値と、縦ストローク要素Ｓｔ１１の幅の中心の座標値とから、縦ストローク要素Ｓｔ１０と縦ストローク要素Ｓｔ１０との間の距離Ｌ１３を算出する。
【０１３３】
本実施形態の間隔判定部２５３は、距離Ｌ１２の値が、平均文字間隔α以上であり、且つ、平均文字幅β以上であった場合に、文字「ｍ」と文字「Ｊ」の間にスペースが有ると判定する。また、間隔判定部２５３は、距離Ｌ１３の値が、平均文字間隔α以上であり、且つ、平均文字幅β以上であった場合に、文字「Ｊ」と文字「ａ」の間にスペースが有ると判定する。
【０１３４】
グループＧｒ３でも、グループＧｒ１，Ｇｒ２と同様に、縦ストローク要素間の間隔を算出する。つまり、グループＧｒ３では、文字「ｐ」から抽出された縦ストローク要素Ｓｔ１４の幅の中心の座標値と、文字「ｐ」の前の文字「ａ」から抽出された縦ストローク要素Ｓｔ１３の幅の中心の座標値とから、縦ストローク要素Ｓｔ１３と縦ストローク要素Ｓｔ１４との間の距離Ｌ１４を算出する。また、グループＧｒ３では、文字「ｐ」から抽出された縦ストローク要素Ｓｔ１５の幅の中心の座標値と、文字「ｐ」の後の文字「ａ」から抽出された縦ストローク要素Ｓｔ１６の幅の中心の座標値とから、縦ストローク要素Ｓｔ１５と縦ストローク要素Ｓｔ１６との間の距離Ｌ１５を算出する。
【０１３５】
そして、間隔判定部２５３は、距離Ｌ１４の値が、平均文字間隔α以上であり、且つ、平均文字幅β以上であった場合に、文字「ａ」と文字「ｐ」の間にスペースが有ると判定する。また、間隔判定部２５３は、距離Ｌ１５の値が、平均文字間隔α以上であり、且つ、平均文字幅β以上であった場合に、文字「ｐ」と文字「ａ」の間にスペースが有ると判定する。
【０１３６】
図１４（Ａ）の例では、文字「Ｉ」と文字「ａ」の間と、文字「ｍ」と文字「Ｊ」の間にスペースが有ると判定される。
【０１３７】
図１４（Ｂ）では、文字列に含まれる特定文字に縦ストローク要素が存在しない場合を示している。図１４（Ｂ）では、手書きデータから「ｍｙｓｐｅａｓｅ」という文字列が認識された場合を示している。
【０１３８】
この場合、文字列に含まれる特定文字は、文字「ｙ」と文字「ｐ」である。よって、図１４（Ｂ）の文字列からは、文字「ｙ」と、文字「ｙ」の前後の文字「ｍ」、「ｓ」とがグループＧｒ１１とされ、文字「ｐ」と、文字「ｐ」の前後の文字「ｓ」、「ａ」とがグループＧｒ１２とされる。
【０１３９】
グループＧｒ１１において、文字「ｍ」から抽出された縦ストローク要素は、縦ストローク要素Ｓｔ２０、Ｓｔ２１、Ｓｔ２２である。よって、文字「ｍ」では、最も文字「ｙ」に近い縦ストローク要素Ｓｔ２２の幅の中心の座標値が、文字「ｍ」と文字「ｙ」との間のスペースの有無の判別に用いられる基準位置となる。
【０１４０】
また、文字「ｙ」から抽出された縦ストローク要素は、文字「ｙ」の認識文字枠の幅の中心値を通る軸Ｓｔ２３である。文字「ｙ」では、この中心値が、文字「ｍ」と文字「ｙ」との間のスペースの有無の判別に用いられる基準位置となる。
【０１４１】
よって、間隔判定部２５３は、縦ストローク要素Ｓｔ２２と軸Ｓｔ２３との間の距離Ｌ２１の値が、平均文字間隔α以上であり、且つ、平均文字幅β以上であった場合に、文字「ｍ」と文字「ｙ」の間にスペースが有ると判定する。
【０１４２】
また、グループＧｒ１１において、文字「ｓ」から抽出された縦ストローク要素は、縦ストローク要素Ｓｔ２４、Ｓｔ２５である。よって、文字「ｓ」では、最も文字「ｙ」に近い縦ストローク要素Ｓｔ２４の幅の中心の座標値が、文字「ｙ」と文字「ｓ」との間のスペースの有無の判別に用いられる基準位置となる。
【０１４３】
よって、間隔判定部２５３は、軸Ｓｔ２３と縦ストローク要素Ｓｔ２４との間の距離Ｌ２２の値が、平均文字間隔α以上であり、且つ、平均文字幅β以上であった場合に、文字「ｙ」と文字「ｓ」の間にスペースが有ると判定する。
【０１４４】
グループＧｒ１２でも、グループＧｒ１１と同様に、縦ストローク要素間の間隔を算出する。つまり、グループＧｒ１２では、文字「ｓ」から抽出された縦ストローク要素Ｓｔ２５の幅の中心の座標値と、文字「ｐ」から抽出された縦ストローク要素Ｓｔ２６の幅の中心の座標値とから、縦ストローク要素Ｓｔ２５と縦ストローク要素Ｓｔ２６との間の距離Ｌ２３を算出する。また、グループＧｒ１２では、文字「ｐ」から抽出された縦ストローク要素Ｓｔ２７の幅の中心の座標値と、文字「ａ」から抽出された縦ストローク要素Ｓｔ２８の幅の中心の座標値とから、縦ストローク要素Ｓｔ２７と縦ストローク要素Ｓｔ２８との間の距離Ｌ２４を算出する。
【０１４５】
そして、間隔判定部２５３は、距離Ｌ２３の値が、平均文字間隔α以上であり、且つ、平均文字幅β以上であった場合に、文字「ｓ」と文字「ｐ」の間にスペースが有ると判定する。また、間隔判定部２５３は、距離Ｌ２４の値が、平均文字間隔α以上であり、且つ、平均文字幅β以上であった場合に、文字「ｐ」と文字「ａ」の間にスペースが有ると判定する。
【０１４６】
図１４（Ｂ）の例では、文字「ｙ」と文字「ｓ」の間にスペースが有ると判定される。
【０１４７】
図１５は、スペースの挿入位置を説明する図である。図１５の例では、図１４（Ａ）で説明した処理の結果、検出されたスペースの挿入位置を示している。
【０１４８】
図１５では、文字「Ｉ」と文字「ａ」の間と、文字「ｍ」と文字「Ｊ」の間が、それぞれスペースの挿入位置である。したがって、位置情報生成部２５８は、スペースの挿入位置を示す位置情報として、認識された文字列「ＩａｍＪａｐａｎｅｓｅ」のうち、「１文字目と２文字目の間」と「３文字目と４文字目の間」という情報を生成し、文字列決定部２６０へ渡す。
【０１４９】
図１５において、スペースの挿入位置（スペースが有ると判別された位置）である文字「Ｉ」と文字「ａ」の間には、文字「Ｉ」と文字「ａ」の画により形成されるふところである領域Ｒ２１が含まれる。また、スペースの挿入位置である文字「ｍ」と文字「Ｊ」の間には、文字「ｍ」と文字「Ｊ」の画により形成されるふところである領域Ｒ２２が含まれる。
【０１５０】
このように、本実施形態では、文字間のスペースの有無の判別において、隣り合う文字の画により形成されるふところが考慮されていることがわかる。
【０１５１】
このように、本実施形態では、認識された文字列に、文字の書き手が認識する文字の重心位置と、認識文字枠の境界とが離れる特定文字が含まれている場合において、スペースの認識の精度を向上させることができる。
【０１５２】
（第二の実施形態）
以下に図面を参照して、第二の実施形態について説明する。第二の実施形態は、単語辞書データベースと認識後の文字列を参照する点が第一の実施形態と相違する。よって、以下の第二の実施形態の説明では、第一の実施形態との相違点についてのみ説明し、第一の実施形態と同様の機能構成を有するものには第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
【０１５３】
図１６は、第二の実施形態の認識システムのシステム構成の一例を示す図である。本実施形態の認識システム１００Ａは、認識装置２００Ａと、端末装置３００とを有する。
【０１５４】
本実施形態の認識装置２００Ａは、特定文字データベース２１０と、認識処理部２２０Ａと、単語辞書データベース２８０と、を有する。
【０１５５】
本実施形態の単語辞書データベース２８０は、例えば単語群が格納された辞書データベースであり、予め認識装置２００Ａに与えられていても良い。尚、本実施形態では、単語辞書データベース２８０は、認識装置２００Ａに設けられるものとしたが、これに限定されない。単語辞書データベース２８０は、ネットワークＮ上の認識装置２００Ａ以外の装置に設けられていても良い。この場合、認識装置２００Ａは、ネットワークＮを介して単語辞書データベース２８０を参照すれば良い。
【０１５６】
図１７は、第二の実施形態の認識装置の機能構成を説明する図である。本実施形態の認識装置２００Ａの有する認識処理部２２０Ａは、入力受付部２３０、文字認識部２４０、スペース検出処理部２５０Ａ、文字列決定部２６０、認識結果出力部２７０を有する。
【０１５７】
本実施形態のスペース検出処理部２５０Ａは、第一の実施形態のスペース検出処理部２５０の有する各部に加え、辞書照合部２５９を有する。
【０１５８】
本実施形態の辞書照合部２５９は、スペースの間にあると判別された文字列と、単語辞書データベース２８０とを照合する。
【０１５９】
以下に、図１８を参照して第二の実施形態のスペース検出処理部２５０Ａの処理について説明する。
【０１６０】
図１８は、第二の実施形態のスペース検出処理部によるスペース検出処理を説明するフローチャートである。
【０１６１】
図１８のステップＳ１８０１からステップＳ１８１２までの処理は、ステップＳ１８０４とステップＳ１８１２において、スペース挿入位置であることを示す位置情報を生成するに留まり、文字列決定部２６０に位置情報を出力しない点以外は、図７のステップＳ７０１からステップＳ７１２までの処理と同様であるから、説明を省略する。
【０１６２】
ステップＳ１８０４及びステップＳ１８１２に続いて、スペース検出処理部２５０Ａは、辞書照合部２５９により、前のスペース挿入位置から、次のスペース挿入位置までの文字列と、単語辞書データベース２８０とを照合する（ステップＳ１８１３）。続いて辞書照合部２５９は、単語辞書データベース２８０に文字列と一致する単語が存在するか否かを判定する（ステップＳ１８１４）。
【０１６３】
ステップＳ１８１４において、該当する単語が存在する場合、ステップＳ１８０４又はステップＳ１８１２において取得した、スペース挿入位置であることを示す位置情報を文字列決定部２６０に出力する（ステップＳ１８１５）。ステップＳ１８１４において、該当する単語が存在しない場合、ステップＳ１８１６へ進む。すなわち、本実施形態では、スペースとスペースとの間の文字列が単語辞書データベース２８０に存在しない場合、スペース検出処理部２５０Ａは、該当箇所にスペースがないものとし、スペースの挿入位置を示す位置情報を文字列決定部２６０に出力しない。
【０１６４】
以上のように、本実施形態では、スペースとスペースとの間の文字列と一致する単語が単語辞書データベース２８０内に存在するか否かを判定してから、スペースの挿入位置を示す位置情報を文字列決定部２６０に出力する。
【０１６５】
したがって、本実施形態によれば、手書きデータから認識された文字列に含まれる単語の認識精度を向上させる。
【０１６６】
尚、本実施形態では、スペースとスペースとの間の文字列が単語辞書データベース２８０内に存在しない場合は、該当箇所にスペースが無いと判断するものとしたが、これに限定されない。本実施形態では、例えばスペースとスペースとの間の文字列が単語辞書データベース２８０内に存在しない場合、この文字列を単語辞書データベース２８０に登録し、スペースの挿入位置を示す位置情報を文字列決定部２６０に出力しても良い。本実施形態では、このように、認識された文字列を単語辞書データベース２８０に登録していくことで、単語辞書データベース２８０を更新していくことができる。
【０１６７】
次に、図１９及び図２０を参照し、認識システム１００と端末装置３００の変形例について説明する。
【０１６８】
図１９は、認識システムのシステム構成の変形例を示す図である。図１９に示す認識システム１００Ｂは、認識装置２００Ｂと端末装置３００Ａと、を有する。
【０１６９】
認識システム１００Ｂでは、認識装置２００Ｂは、特定文字データベース２１０のみを有し、端末装置３００Ａが認識処理部２２０を有する。
【０１７０】
端末装置３００Ａは、認識処理部２２０のスペース検出処理部２５０の処理において、認識装置２００Ｂの特定文字データベース２１０を参照しても良い。尚、認識装置２００Ｂは、単語辞書データベース２８０を有していても良い。
【０１７１】
図２０は、端末装置の変形例を示す図である。図２０に示す端末装置３００Ｂは、特定文字データベース２１０と、認識処理部２２０とを有し、端末装置３００Ｂ自身が認識装置２００と同様の機能を果たす。尚、端末装置３００Ｂは、単語辞書データベース２８０を有していても良い。
【０１７２】
開示の技術では、以下に記載する付記のような形態が考えられる。
（付記１）
入力された手書きデータから、個別の文字を認識し、
認識された前記文字の認識結果に応じて、複数の前記文字それぞれについて、文字間のスペースを判別する際の基準位置を設定し、
前記基準位置に基づき、前記複数の前記文字間のスペースの有無に関する情報を生成する、処理をコンピュータに実行させる認識プログラム。
（付記２）
前記スペースの有無に関する情報に基づき、前記文字間のスペースの有無を判別する、処理を前記コンピュータに実行させる付記１記載の認識プログラム。
（付記３）
第一の文字と第二の文字との間のスペースの有無に関する情報と、
前記第一の文字の前に有ると判別されたスペースの次の文字から、前記第一の文字までの文字列と、単語群が格納された辞書データベースとを照合した結果と、
に基づき、前記第一の文字と前記第二の文字との間のスペースの有無を判別する処理を、前記コンピュータに実行させる付記１又は２記載の認識プログラム。
（付記４）
前記複数の文字毎に、前記文字の認識による前記文字を囲う枠の幅を示す値を取得し、
前記複数の文字のそれぞれを囲う前記枠の幅の平均値と、枠と枠との間の距離の平均値とを算出し、
前記複数の文字のそれぞれの前記基準位置の間の距離が、前記枠の幅の平均値以上であり、且つ前記枠と枠との間の距離の平均値以上であるとき、
前記文字間のスペースの有無に関する情報を生成する、処理を前記コンピュータに実行させる付記１乃至３の何れか一項に記載の認識プログラム。
（付記５）
前記基準位置は、
前記文字の重心軸の位置と、前記文字を囲う枠における文字と文字との境界の位置と、を含む付記１乃至４の何れか一項に記載の認識プログラム。
（付記６）
前記基準位置は、
前記認識された文字から抽出された縦方向のストロークが示す位置である付記５記載の認識プログラム。
（付記７）
前記第一の文字から抽出された縦方向のストロークのうち、前記第一の文字の次の文字である第二の文字に最も近い縦方向のストロークが示す位置を、第一の文字の基準位置とし、
前記第二の文字から抽出された縦方向のストロークのうち、前記第一の文字に最も近い位置にある縦方向のストロークが示す位置を、第二の文字の基準位置とする、付記６記載の認識プログラム。
（付記８）
前記縦方向のストロークが存在しない文字の場合、
前記文字を囲う前記枠の幅の中心の位置を、前記文字の基準位置とする、付記５乃至７の何れか一項に記載の認識プログラム。
（付記９）
コンピュータによる認識方法であって、該コンピュータが、
入力された手書きデータから、個別の文字を認識し、
認識された前記文字の認識結果に応じて、複数の前記文字それぞれについて、文字間のスペースを判別する際の基準位置を設定し、
前記基準位置に基づき、前記複数の前記文字間のスペースの有無に関する情報を生成する、認識方法。
（付記１０）
入力された手書きデータから、個別の文字を認識する文字認識部と、
認識された前記文字の認識結果に応じて、複数の前記文字それぞれについて、文字間のスペースを判別する際の基準位置を設定する基準位置設定部と、
前記基準位置に基づき、前記複数の前記文字間のスペースの有無に関する情報を生成する位置情報生成部と、を有する認識装置。
【０１７３】
本発明は、具体的に開示された実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０１７４】
１００、１００Ａ  認識システム
２００、２００Ａ、２００Ｂ  認識装置
２１０  特定文字データベース
２２０  認識処理部
２４０  文字認識部
２５０  スペース検出処理部
２５１  文字情報算出部
２５２  特定文字照合部
２５３  間隔判定部
２５４  縦ストローク抽出部
２５７  基準位置間隔算出部
２５８  位置情報生成部
２５９  辞書照合部
２６０  文字列決定部
２７０  認識結果出力部  
２８０  単語辞書データベース
３００、３００Ａ、３００Ｂ  端末装置
【図１】
0006492894.tif 000002
【図２】
0006492894.tif 000003
【図３】
0006492894.tif 000004
【図４】
0006492894.tif 000005
【図５】
0006492894.tif 000006
【図６】
0006492894.tif 000007
【図７】
0006492894.tif 000008
【図８】
0006492894.tif 000009
【図９】
0006492894.tif 000010
【図１０】
0006492894.tif 000011
【図１１】
0006492894.tif 000012
【図１２】
0006492894.tif 000013
【図１３】
0006492894.tif 000014
【図１４】
0006492894.tif 000015
【図１５】
0006492894.tif 000016
【図１６】
0006492894.tif 000017
【図１７】
0006492894.tif 000018
【図１８】
0006492894.tif 000019
【図１９】
0006492894.tif 000020
【図２０】
0006492894.tif 000021