(57)【特許請求の範囲】
【請求項１】
特定語句と、前記特定語句の文字数の長さとの関係を記憶する特定語句記憶手段と、
手書き入力された文字列を取得する文字列取得手段と、
前記文字列取得手段により取得した前記文字列を複数個のユニットに仮切出しする仮切出手段と、
前記仮切出手段により切り出された各ユニット毎に複数の文字パターン候補を構成する文字パターン候補構成手段と、
前記文字パターン候補構成手段により構成された各文字パターン候補を連結する文字パターン候補連結手段と、
前記文字パターン候補連結手段により連結された前記各文字パターン候補における終端までの文字数の長さを算出する文字数算出手段と、
前記文字数算出手段により文字パターン候補毎に算出された終端までの文字数の長さと同一の終端までの文字数の長さを有する特定語句を、前記特定語句記憶手段に記憶された前記特定語句から選別し、選別した前記特定語句を構成する各文字を、前記文字パターン候補構成手段により構成された文字パターン候補の認識字種として限定する文字パターン候補限定手段と、
前記文字パターン候補限定手段により限定された前記文字パターン候補の認識字種に基づいて文字の認識を行う文字認識手段と、
を備える文字認識装置。
【請求項２】
前記文字パターン候補限定手段による文字パターン候補の認識字種としての限定は、前記仮切出手段により切出したユニットの順番で行う請求項１に記載の文字認識装置。
【請求項３】
文字の認識を行う制御を実行する文字認識装置の文字認識方法であって、
特定語句と、前記特定語句の文字数の長さとの関係を記憶する特定語句記憶ステップと、
手書き入力された文字列を取得する文字列取得ステップと、
前記文字列取得ステップにおいて取得された前記文字列を複数個のユニットに仮切出しする仮切出ステップと、
前記仮切出ステップにおいて切り出された各ユニット毎に複数の文字パターン候補を構成する文字パターン候補構成ステップと、
前記文字パターン候補構成ステップにおいて構成された各文字パターン候補を連結する文字パターン候補連結ステップと、
前記文字パターン候補連結ステップにおいて連結された前記各文字パターン候補における終端までの文字数の長さを算出する文字数算出ステップと、
前記文字数算出ステップにおいて文字パターン候補毎に算出された終端までの文字数の長さと同一の終端までの文字数の長さを有する特定語句を、前記特定語句記憶ステップにおいて記憶された前記特定語句から選別し、選別した前記特定語句を構成する各文字を、前記文字パターン候補構成ステップにより構成された文字パターン候補の認識字種として限定する文字パターン候補限定ステップと、
前記文字パターン候補限定ステップにおいて限定された前記文字パターン候補の認識字種に基づいて文字の認識を行う文字認識ステップと、
を含む文字認識方法。
【請求項４】
文字の認識を行う制御を実行する文字認識手段を備える文字認識装置を制御するコンピュータに、
特定語句と、前記特定語句の文字数の長さとの関係を記憶する特定語句記憶機能と、
手書き入力された文字列を取得する文字列取得機能と、
前記文字列取得機能により取得した前記文字列を複数個のユニットに仮切出しする仮切出機能と、
前記仮切出機能により切り出された各ユニット毎に複数の文字パターン候補を構成する文字パターン候補構成機能と、
前記文字パターン候補構成機能により構成された各文字パターン候補を連結する文字パターン候補連結機能と、
前記文字パターン候補連結機能により連結された前記各文字パターン候補における終端までの文字数の長さを算出する文字数算出機能と、
前記文字数算出機能により文字パターン候補毎に算出された終端までの文字数の長さと同一の終端までの文字数の長さを有する特定語句を、前記特定語句記憶機能に記憶された前記特定語句から選別し、選別した前記特定語句を構成する各文字を、前記文字パターン候補構成機能により構成された文字パターン候補の認識字種として限定する文字パターン候補限定機能と、
前記文字パターン候補限定機能により限定された前記文字パターン候補の認識字種に基づいて文字の認識を行う文字認識機能と、
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字認識装置、文字認識方法及びプログラムに関し、特に特定語句認識において類似字種への誤認識を防ぐとともに、認識速度を著しく向上する技術に関する。
【背景技術】
【０００２】
近年、手書き入力が可能なタブレット型のコンピュータの普及に伴い、ペンやマーカ、指などによる入力できる手書き入力システムが拡大する兆しを見せている。このような手書き入力システムを用いることにより、ユーザは、キーボードを用いずに手書きで文字を入力することができる。このような手書き入力においては、特定語句の認識が頻出する。住所、人名、日付、部署名などはその例である。
【０００３】
このような手書き入力された特定語句を電子データとして認識させるために、様々な手書き文字列認識方式が提供されている。
また、このような特定語句認識方式に関しては、予め作成したトライ（ｔｒｉｅ）辞書の中でビームサーチによりサーチスペースを展開する文字同期方式を適用することで各文字パターン候補の認識字種を限定し、認識精度と認識速度の向上を図る方法も提案されている（例えば、非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】C.-L.  Liu,  M.  Koga,  and  H.  Fujisawa,  “Lexicon-Driven  Segmentation  and  Recognition  of  Handwritten  Character  Strings  for  Japanese  Address  Reading,”  IEEE  Trans.  Pattern  Analysis  and  Machine  Intelligence,  24(11),  pp.  1425-1437,  2002.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
汎用の手書き文字列認識方式を特定語句の認識に適用すると、特定語句の語彙集合に含まれない語句と誤認識されることがよくあった。
例えば、図１９に示すように、「Ａ型肝炎」の手書き文字列に対し汎用の手書き文字列認識方式により文字認識を行った場合、「Ａ」の文字の類似字種である「八」と誤認識することがあった。これにより、「Ａ型肝炎」の手書き文字列を特定語句の語彙集合に含まれない「八型肝炎」と誤認識する場合があるという問題点があった。
また、特定語句を１つの単語と見なし英語などの単語認識方式を適用することもできるが、文字認識の対象となる特定語句を全ての単語と比較する必要があるため、多くの処理時間を要するという問題点があった。
【０００６】
本発明は、上述の課題に鑑みてなされたものであり、類似字種への誤認識を防ぐとともに、認識速度を著しく向上することができるようにすることにある。即ち、本発明は、以下の技術的事項から構成される。
【課題を解決するための手段】
【０００７】
（１）  特定語句と、前記特定語句の文字数の長さとの関係を記憶する特定語句記憶手段と、
手書き入力された文字列を取得する文字列取得手段と、
前記文字列取得手段により取得した前記文字列を複数個のユニットに仮切出しする仮切出手段と、
前記仮切出手段により切り出された各ユニット毎に複数の文字パターン候補を構成する文字パターン候補構成手段と、
前記文字パターン候補構成手段により構成された各文字パターン候補を連結する文字パターン候補連結手段と、
前記文字パターン候補連結手段により連結された前記各文字パターン候補における終端までの文字数の長さを算出する文字数算出手段と、
前記文字パターン候補構成手段により構成された文字パターン候補を、前記特定語句記憶手段に記憶された前記特定語句と、前記文字数算出手段により文字パターン候補毎に算出された終端までの文字数の長さと、に基づき限定する文字パターン候補限定手段と、
前記文字パターン候補限定手段により限定された前記文字パターン候補に基づいて文字の認識を行う文字認識手段と、
を備える文字認識装置。
【０００８】
（１）の文字認識装置によると、手書き入力された特定語句の文字列の認識を行う際に、文字パターン候補構成手段により構成された文字パターン候補を、文字数算出手段により文字パターン候補毎に算出された終端までの文字数の長さに基づいて、予め特定語句記憶手段に記憶された特定語句により限定する。
これにより、手書き入力した文字を認識する際において、類似する字種が手書き入力された場合であっても、予め記憶された特定語句のみに基づき限定されるため、他の字種と誤認識するという問題を解消することができる。また、文字の認識に際し、予め記憶された特定語句の中から、文字の認識が行われるため、認識速度を著しく向上させることができる。
【０００９】
（２）  前記文字パターン候補限定手段は、
前記文字数算出手段により文字パターン候補毎に算出された終端までの文字数の長さと同一の終端までの文字数の長さを有する特定語句を、前記特定語句記憶手段に記憶された前記特定語句から選別し、
選別した前記特定語句を構成する各文字を、前記文字パターン候補構成手段により構成された文字パターン候補の認識字種として限定する（１）に記載の文字認識装置。
【００１０】
（２）の文字認識装置によると、語句の限定に際し、終端までの文字数の長さが同一の語句に基づき特定語句を選別し、その選別された語句に基づき文字パターン候補の認識字種を限定することができる。これにより、終端までの長さに基づき語句の限定が行われるため、類似する字種が存在した場合であっても、他の字種と誤認識される可能性を大幅に低減することができる。また、終端までの文字数の長さに基づき認識字種の対象を限定することで、認識対象を減少させ、認識速度を著しく向上させることができる。
【００１１】
（３）  前記文字パターン候補限定手段による文字パターン候補の限定は、前記仮切出手段により切出したユニットの順番で行う（１）に記載の文字認識装置。
【００１２】
（３）の文字認識装置によると、語句の限定に際し、仮切出手段による切出しポイント毎に、文字パターン候補を限定することができる。これにより、探索を限定して認識率と処理速度の向上を図ることができる。
【００１３】
（４）  文字の認識を行う制御を実行する文字認識装置の文字認識方法であって、
特定語句と、前記特定語句の文字数の長さとの関係を記憶する特定語句記憶ステップと、
手書き入力された文字列を取得する文字列取得ステップと、
前記文字列取得ステップにより取得した前記文字列を複数個のユニットに仮切出しする仮切出ステップと、
前記仮切出ステップにより切り出された各ユニット毎に複数の文字パターン候補を構成する文字パターン候補構成ステップと、
前記文字パターン候補構成ステップにより構成された各文字パターン候補を連結する文字パターン候補連結ステップと、
前記文字パターン候補連結ステップにより連結された前記各文字パターン候補における終端までの文字数の長さを算出する文字数算出ステップと、
前記文字パターン候補構成ステップにより構成された文字パターン候補を、前記特定語句記憶ステップに記憶された前記特定語句と、前記文字数算出ステップにより文字パターン候補毎に算出された終端までの文字数の長さと、に基づき限定する文字パターン候補限定ステップと、
前記文字パターン候補限定ステップにより限定された前記文字パターン候補に基づいて文字の認識を行う文字認識ステップと、
を含む文字認識方法。
【００１４】
（４）の文字認識方法によると、手書き入力された文字列の認識を行う際に、文字パターン候補構成ステップにより構成された文字パターン候補を、文字数算出ステップにより文字パターン候補毎に算出された終端までの文字数の長さに基づいて、予め特定語句記憶ステップに記憶された特定語句により限定する。
これにより、手書き入力した文字を認識する際において、類似する字種が手書きされた場合であっても、予め記憶された特定語句のみに基づき限定されるため、他の字種と誤認識するという問題を解消することができる。また、文字の認識に際し、予め記憶された特定語句の中から、文字の認識が行われるため、認識速度を著しく向上させることができる。
【００１５】
（５）  文字の認識を行う制御を実行する文字認識手段を備える文字認識装置を制御するコンピュータに、
特定語句と、前記特定語句の文字数の長さとの関係を記憶する特定語句記憶機能と、
手書き入力された文字列を取得する文字列取得機能と、
前記文字列取得機能により取得した前記文字列を複数個のユニットに仮切出しする仮切出機能と、
前記仮切出機能により切り出された各ユニット毎に複数の文字パターン候補を構成する文字パターン候補構成機能と、
前記文字パターン候補構成機能により構成された各文字パターン候補を連結する文字パターン候補連結機能と、
前記文字パターン候補連結機能により連結された前記各文字パターン候補における終端までの文字数の長さを算出する文字数算出機能と、
前記文字パターン候補構成機能により構成された文字パターン候補を、前記特定語句記憶機能に記憶された前記特定語句と、前記文字数算出機能により文字パターン候補毎に算出された終端までの文字数の長さと、に基づき限定する文字パターン候補限定機能と、
前記文字パターン候補限定機能により限定された前記文字パターン候補に基づいて文字の認識を行う文字認識機能と、
を実現させるプログラム。
【００１６】
（５）のプログラムによると、手書き入力された文字列の認識を行う際に、文字パターン候補構成機能により構成された文字パターン候補を、文字数算出機能により文字パターン候補毎に算出された終端までの文字数の長さに基づいて、予め特定語句記憶機能に記憶された特定語句により限定する。
これにより、手書き入力した文字を認識する際において、類似する字種が手書きされた場合であっても、予め記憶された特定語句のみに基づき限定されるため、他の字種と誤認識するという問題を解消することができる。また、文字の認識に際し、予め記憶された特定語句の中から、文字の認識が行われるため、認識速度を著しく向上させることができる。
【発明の効果】
【００１７】
本発明によれば、類似字種への誤認識を防ぐとともに、認識速度を著しく向上することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態に係る文字認識装置の機能的構成を示す機能ブロック図である。
【図２】本実施形態の文字認識装置で利用するトライ辞書を構築するための特定語句の語彙集合を含むリストを示す図である。
【図３】本実施形態の文字認識装置で利用するトライ辞書の構成を示す図である。
【図４】トライ辞書構築処理の流れを説明するフローチャートである。
【図５】文字認識処理の流れを説明するフローチャートである。
【図６】文字認識処理の具体的な処理結果を説明する図である。
【図７】文字認識処理の具体的な処理結果を説明する図である。
【図８】文字認識処理の具体的な処理結果を説明する図である。
【図９】文字認識処理の具体的な処理結果を説明する図である。
【図１０】文字認識処理の具体的な処理結果を説明する図である。
【図１１】文字認識処理の具体的な処理結果を説明する図である。
【図１２】文字認識処理の具体的な処理結果を説明する図である。
【図１３】文字認識処理の具体的な処理結果を説明する図である。
【図１４】図２のリストに含まれる特定語句の語長とその比率との関係を示す図である。
【図１５】図３のトライ辞書に含まれる特定語句の文字順位置とその文字順位置における平均分岐数との関係を示す図である。
【図１６】本実施形態に係る文字認識装置を利用した文字認識方法と、汎用の手書き日本語文字列認識方法と、における認識率及び認識速度の比較結果を示す図である。
【図１７】手書き入力された文字例である。
【図１８】手書き入力された文字例である。
【図１９】従来の文字認識結果を示す図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態について図を用いながら説明する。なお、これはあくまでも一例であって、本発明の技術的範囲はこれに限定されるものではない。
【００２０】
［文字認識方法の概要］
はじめに、本発明の実施の形態に係る文字認識装置を用いた文字認識方法の手法の概要について説明する。
はじめに、第１実施形態に係る文字認識装置を用いた文字認識方法の手法の概要について説明する。
【００２１】
［文字認識装置の機能的構成］
図１を参照して、本発明の一実施形態に係る文字認識装置１の機能的構成について説明する。
文字認識装置１は、取得した手書きの文字列に対し、文字認識処理を実行することができる。
文字認識処理とは、取得した文字列を複数個のユニットに切出して、各ユニット毎に文字パターン候補を構成し、各文字パターン候補における終端までの文字数の長さに基づき、文字パターン候補を限定して文字認識を行う処理をいう。
図１に示す文字認識装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０と、記憶部２０と、を備えている。
文字認識装置１のＣＰＵ１０は、このような文字認識処理を実行すべく、文字列取得部３１と、仮切出部３２と、文字パターン候補構成部３３と、文字パターン候補連結部３４と、文字数算出部３５と、文字パターン候補限定部３６と、文字認識部３７と、を備えている。
また、文字認識装置１の記憶部２０は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やハードディスクドライブ（Ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ）により構成され、特定語句を構成する各文字と、各文字における終端までの文字数の長さとの関係を記憶する特定語句記憶部４１を備えている。
更に、ＣＰＵ１０は、特定語句記憶部４１に記憶されている後述のトライ辞書を構築するための辞書構築部５１を備えている。
【００２２】
文字列取得部３１は、ユーザがペンで手書き入力した文字列を取得するためのものであり、その機能は、タブレット（図示せず）などにより入力された手書きの文字列のデータを取得する。文字列取得部３１は、取得した文字列のデータを仮切出部３２に供給する。
【００２３】
仮切出部３２は、複数の切出しポイントＳ０〜Ｓ５に基づいて文字列取得部３１により取得した文字列を複数個のユニットに仮切出しする。ユニットの切出しは、隣接ストローク間の空間情報などの特徴値に基づいて複数個の原始切出しユニットに切出す。切出しポイントＳ０〜Ｓ５は、仮切出部３２により切り出された１つの切出しポイントを示す。仮切出部３２は、切出した各ユニットの情報を文字パターン候補構成部３３に供給する。
【００２４】
文字パターン候補構成部３３は、仮切出部３２により切り出された各ユニット毎に複数の文字パターン候補を構成する。仮切出部３２による切出しは、確定的な切出しと非確定的な切出しとがあり、非確定的な切出しである場合には、各ユニットを分割した場合と結合した場合の両方を想定して各文字パターン候補を構成する。文字パターン候補構成部３３は、構成した各文字パターン候補の情報を文字パターン候補連結部３４に供給する。
【００２５】
文字パターン候補連結部３４は、文字パターン候補構成部３３により構成された各文字パターン候補を連結し、後述する図６乃至図１３に示すような切出し候補ラティスを構築する。
切出し候補ラティスにおいては、各ノードＮＤ（後述の図６乃至図１３において丸数字１〜丸数字７と表記する（以下、それぞれ「ノードＮＤ（１）」〜「ノードＮＤ（７）」と呼ぶ））は、文字パターン候補構成部により構成された１つの文字パターン候補を示す。
【００２６】
文字数算出部３５は、文字パターン候補連結部３４により連結して構築された切出し候補ラティスの各ノードＮＤ（文字パターン候補）から終端に至るまでに取り得ることが可能な文字数の長さ（以下、「可能長」と呼ぶ）を算出する。尚、可能長の算出は、切出し候補ラティスの終端から反対方向（始端）へ向かって行う。文字数算出部３５は、算出した各ノードＮＤにおける可能長の情報を文字パターン候補限定部３６に供給する。
【００２７】
文字パターン候補限定部３６は、文字パターン候補構成部３３により構成された文字パターン候補の認識字種を、特定語句記憶部４１に記憶された特定語句を構成する各文字と、文字数算出部３５により文字パターン候補毎に算出された終端までの文字数の長さと、に基づき限定する。
具体的には、文字パターン候補限定部３６は、文字数算出部３５により文字パターン候補毎に算出された可能長と同一の可能長を有する特定語句を、特定語句記憶部４１に記憶された特定語句から選別する。
そして、文字パターン候補限定部３６は、特定語句記憶部４１の中から選別した特定語句を構成する各文字を、文字パターン候補構成部３３により構成された文字パターン候補の認識字種として限定する。前記文字パターン候補限定部３６による文字パターン候補の限定は、前記仮切出部３２により切出したユニットの順番で行う。文字パターン候補限定部３６は、限定した文字パターン候補の認識字種を文字認識部３７に供給する。
【００２８】
文字認識部３７は、文字パターン候補限定部３６により限定された文字パターン候補に基づいて文字の認識を行う。
具体的には、文字認識部３７は、次に述べる評価尺度により切出し候補とその対応の文字列候補の尤度とに基づき、文字パターン候補限定部３６により限定された文字パターン候補に至る文字列候補の経路（文字列候補経路、以下簡略して経路と呼ぶ）の評価を行う。
経路の評価尺度は、重みパラメータを持つ文字認識と幾何的な特徴（文字パターンサイズ、文字パターン内分割、シングル文字パターン位置、ペア文字パターン位置、文字切出しポイント）の確からしさからなるスコアを結合する。遺伝的アルゴリズムにより学習パターンを利用し重みパラメータを学習する。
そして、文字認識部３７は、評価した経路を評価順にソートして上位Ｍ個の経路だけを選択し、それ以外の経路を削除する。
即ち、文字認識部３７は、経路評価尺度に基づいて文字列候補を削除することで、文字パターン候補連結部３４により構築された切出し候補ラティスのサーチ経路を限定して文字の認識を行うことができる。即ち、本実施形態では、特定語句記憶部４１に記憶されている特定語句の語彙集合、即ち後述の図３のトライ辞書に基づいて、最適な語句を選び文字の認識を行うことができる。
順番に切り出された切出しポイントＳ０〜ＳLがあり、最初から最後への順で各切出しポイントについてその後の文字パターン候補を文字パターン候補限定部３６により処理し、そして、それに至る全ての文字列候補経路を文字認識部３７により評価を行う。
【００２９】
辞書構築部５１は、特定語句記憶部４１において、後述の図２の特定語句の語彙集合のリストから図３のトライ辞書を構築する。トライ辞書の構築については、図４のトライ辞書構築処理を参照して後述する。
【００３０】
［トライ辞書の構築］
図２乃至図４を参照して、特定語句を構成する各文字と、各文字における終端までの文字数の長さとの関係を示すトライ辞書の構築について説明する。
【００３１】
図２は、本実施形態の文字認識装置１で利用するトライ辞書を構築するための特定語句の語彙集合を含むリストを示す図である。本実施形態においては、トライ辞書を構築するための特定語句の語彙集合は病名を用いて行う。
【００３２】
図３は、本実施形態の文字認識装置１で利用するトライ辞書の構成を示す図である。
トライ辞書は、特定語句と、特定語句の文字数の長さとの関係が記述され、特定語句を構成する各文字をキーとして下位の各文字を子ノードＮＤに分岐して構成されている。トライ辞書において、特定語句を構成する各文字は、子ノードＮＤの数に応じて段数毎に構成されている。
【００３３】
［トライ辞書構築処理］
次に、図４を参照して、図２の特定語句の語彙集合を含むリストからトライ辞書を構築するトライ辞書構築処理の詳細な流れについて説明する。
【００３４】
図４は、トライ辞書構築処理の流れを説明するフローチャートである。
【００３５】
はじめに、ユーザがトライ辞書の構築開始の操作をすることによって、トライ辞書構築処理が開始され、図４のステップＳ１１において、辞書構築部５１は、図２の特定語句の語彙集合を含むリストを取得する。
【００３６】
ステップＳ１２において、辞書構築部５１は、トライの現検索位置ノードpos＝トライ辞書のルート、Ｎ＝１に初期化する。Ｎは、構築対象の特定語句の文字の位置及び現在構築している子ノードＮＤの段数を示す値であり、後述のステップＳ１４及びステップＳ１６において参照される。
【００３７】
ステップＳ１３において、辞書構築部５１は、図２の特定語句の語彙集合のリストの中から構築対象とする一の特定語句をセットする。
【００３８】
ステップＳ１４において、辞書構築部５１は、ステップＳ１３においてセットした特定語句のＮ個目の文字がトライ辞書のトライの現検索位置ノードposの子ノードに存在するか否かを判定する。Ｎ個目の文字がトライ辞書のposの子ノードに存在していると判定した場合には、処理はステップＳ１６に進む。
これに対して、Ｎ個目の文字がトライ辞書のposの子ノードに存在していないと判定した場合には、処理はステップＳ１５に進む。
【００３９】
ステップＳ１５において、辞書構築部５１は、当該文字をキーとする新しい子ノードをトライ辞書のposの子ノードに追加する。posに新しい子ノードを更新する。即ち、この処理では、辞書構築部５１は、ステップＳ１３においてセットした特定語句の該当する段数の文字がトライ辞書に登録されていない場合には、新たなキーとして登録する。
【００４０】
ステップＳ１６において、辞書構築部５１は、Ｎに１を加算し、pos=検索ノードをし、ステップＳ１７の処理に進む。
【００４１】
ステップＳ１７において、辞書構築部５１は、ステップＳ１３においてセットした特定語句の全ての文字についてステップＳ１４乃至ステップＳ１５の判断をしたか否かを判定する。全ての文字について判断したと判定した場合には、処理はステップＳ１８に進む。これに対して、全ての文字ついて判断していないと判定した場合には、処理はステップＳ１４に戻る。ステップＳ１３においてセットした特定語句の全ての文字についてステップＳ１４乃至ステップＳ１５の判断が終了していない場合、即ち、トライ辞書に記憶されているか否かの判断が終了していない場合には、次の文字に対してステップＳ１４乃至ステップＳ１６の判断が行われる。そして、ステップＳ１３においてセットした特定語句の全ての文字についてステップＳ１４乃至ステップＳ１５の判断が行われるまで、ステップＳ１４乃至ステップＳ１７の処理が繰り返し行われる。
【００４２】
ステップＳ１８において、辞書構築部５１は、全ての特定語句を検索したか否かを判定する。全ての特定語句を検索していないと判定した場合には、処理はステップＳ１２に戻る。即ち、この処理では、ステップＳ１１において取得したリストに含まれる全ての特定語句に対してステップＳ１４乃至ステップＳ１５の判断が終了していない場合、即ち、トライ辞書に記憶されているか否かの判断が終了していない場合には、全ての特定語句についてステップＳ１４乃至ステップＳ１５の判断が行われるまで、ステップＳ１２乃至ステップＳ１８の処理が繰り返し行われる。これに対して全ての特定語句についてステップＳ１４乃至ステップＳ１５の判断が終了したと判定した場合には、トライ辞書構築処理を終了する。
【００４３】
［文字認識処理］
次に、図５を参照して、図４のトライ辞書構築処理において構築したトライ辞書を用いて、文字認識を行う文字認識処理の詳細な流れについて説明する。
【００４４】
図５は、文字認識処理の流れを説明するフローチャートである。
【００４５】
はじめに、ユーザが文字認識処理の開始の操作をすることによって、文字認識処理が開始され、図５のステップＳ３１において、文字列取得部３１は、タブレットにより手書き入力された文字列を取得する。文字列取得部３１は、取得した文字列のデータを仮切出部３２に供給する。
【００４６】
ステップＳ３２において、仮切出部３２は、文字列取得部３１により取得した文字列を複数個のユニットに仮切出しする。仮切出部３２は、切出した各ユニットの情報を文字パターン候補構成部３３に供給する。
【００４７】
ステップＳ３３において、文字パターン候補構成部３３は、仮切出部３２により切り出された各ユニット毎に複数の文字パターン候補、即ち、複数のノードＮＤを構成する。文字パターン候補構成部３３は、構成した各ノードＮＤの情報を文字パターン候補連結部３４に供給する。
【００４８】
ステップＳ３４において、文字パターン候補連結部３４は、文字パターン候補構成部３３により構成された各ノードＮＤを連結し、切出し候補ラティスを構築する。
【００４９】
ステップＳ３５において、文字数算出部３５は、文字パターン候補連結部３４により連結して構築された切出し候補ラティスの各ノードＮＤにおける可能長を算出する。文字数算出部３５は、算出した各ノードＮＤにおける可能長の情報を文字パターン候補限定部３６に供給する。
【００５０】
ステップＳ３６において、i＝１に初期化する。iは、順番に切り出されたL個の切出しポイントＳ０〜ＳLのインデックスであり、後述のステップＳ３７乃至ステップＳ３９において参照される。
【００５１】
ステップＳ３７において、終端切出しポイントの前の全ての切出しポイントについてステップＳ３８乃至ステップＳ３９の処理をしたか否かを判定する。処理したと判定した場合には、処理はステップＳ４１に進む。これに対して、処理していないと判定した場合には、処理はステップＳ３８に進む。
【００５２】
ステップＳ３８において、文字列の先端からＳiの前の全ての文字パターン候補に至る全ての経路を評価し上位Ｍ個の経路を選択し、それ以外の経路を削除する。
【００５３】
ステップＳ３９において、文字パターン候補限定部３６は、文字パターン候補構成部３３により構成されたＳiの後の全てのノードＮＤの認識字種を、ステップＳ３８で選択した上位Ｍ個の経路とトライ辞書の特定語句を構成する各文字と、文字数算出部３５によりノードＮＤ毎に算出された可能長と、に基づき限定する。
具体的には、文字パターン候補限定部３６は、ステップＳ３８で選択した上位Ｍ個の経路へ続くトライ辞書の特定語句について、文字数算出部３５によりノードＮＤ毎に算出された可能長と同一の可能長を有する特定語句を構成する各文字を、特定語句記憶部４１に記憶されたトライ辞書の特定語句から選別する。
そして、文字パターン候補限定部３６は、トライ辞書の中から選別した特定語句を構成する各文字を、文字パターン候補構成部３３により構成されたノードＮＤの認識字種として限定する。文字パターン候補限定部３６は、限定したノードＮＤの認識字種を文字認識部３７に供給する。
【００５４】
ステップＳ４０において、iに１を加算し、ステップＳ３７の処理に戻る。
【００５５】
ステップＳ４１において、文字認識部３７は、先端から終端切出しポイントＳLに至るすべての経路について経路評価尺度に従い評価を行う。そして、処理は終端に至るすべてのサーチ経路のうち認識スコアが最も高い最優の経路を文字認識の認識結果とする。
従って、ノードＮＤの可能長に基づきサーチ経路を限定することにより、認識精度と文字認識の速度を向上することができる。この限定は、病名に限らず特定語彙集合の特殊性に依存しない。つまり、どのような種類の語彙集合にも適応できる。
【００５６】
［文字認識処理の具体例］
更に、図６乃至図１３を参照して、文字認識処理について具体的に説明する。
図６乃至図１３は、文字認識処理の具体的な処理結果を説明する図である。
【００５７】
図６、図７の上方には、文字列取得部３１により取得された手書き入力された文字列が示されている。本実施形態においては、ユーザにより手書き入力された文字列として「腰椎炎」が示されている。
文字列の上方には、仮切出部３２により切り出された各切出しポイントＳ０〜Ｓ５が示されている。
文字列の下方には、各切出しポイントＳ０〜Ｓ５において分割する場合と結合する場合の両方を想定した文字パターン候補が示されている。そして、考えられる全ての文字パターン候補を連結して切出し候補ラティスが構築される。切出し候補ラティスにおいては、各ノードＮＤは１つの文字パターン候補を示す。図６乃至図１３の図においては、各ノードＮＤ（１）〜（７）が示されている。図８〜図１３には、それぞれ切出しポイントＳ０〜Ｓ５おいて認識字種を設定する場合の例が示されている。
図７には、ノード（１）、（２）、（３）・・・（７）で示される７個のノードＮＤを持つ切出し候補ラティスが示されている。
切出し候補ラティスの各ノードＮＤについて終端までの文字数の可能な長さ（可能長）の算出の概略について図７を参照して説明する。
各ノードＮＤのボックスに示される数字はそのノードＮＤの終端までの可能長を示す。
ノード（７）は、文字数は「１」しかあり得ない。ノード（６）では、それ自身とノード（７）の分を含めて文字数は「２」である。ノード（５）も同様に「２」である。ノード（４）では、それ自身とノード（６），ノード（７）の分を含めて文字数は「３」である。ノード（３）では、その分とノード（５），ノード（７）の分を含めて文字数が「３」になる場合と、それ自身とノード（４），ノード（６），ノード（７）の分を含めて文字数が「４」になる場合がある。従って可能長は｛３，４｝である。一般に、あるノードに後続するノードの可能長の集合に「１」を加えればよい。同様にして、ノード（２）の可能性は｛３，４｝、ノード（１）の可能長は｛４，５｝になる。このように、可能長は切出し候補らティスの終端から反対方向に求められる。
【００５８】
上述したように、ユーザが文字認識処理の開始の操作をすることによって、文字認識処理が開始され、図５のステップＳ３１の処理で、ユーザが手書き入力した文字列「腰椎炎」の取得が行われる。
【００５９】
次に、ステップＳ３２の処理で、取得された文字列「腰椎炎」が複数の切出しポイントＳ０〜Ｓ５の順に基づき、複数個のユニットに仮切出しされる。
【００６０】
はじめに、図６を参照して、切出しポイントＳ０について考えると、切出しポイントＳ０は先頭であるから、その前にはノードＮＤが存在せず、その後には、２つのノードＮＤ（１）（２）が存在する。
図３のトライ辞書に基づき、トライ辞書の先頭位置でサーチを開始すると、図３のトライ辞書の先頭の子ノードは、「腰」、「耳」「日」であり、それらをノード（１）（２）の認識字種に設定する。
【００６１】
ノードＮＤ（１）について考えると、ノードＮＤ（１）から終端までの可能長は、ノードＮＤ（１）、（３）、（５）、（７）を選択した場合の「４」又は、ノードＮＤ（１）、（３）、（４）、（６）、（７）を選択した場合の「５」である。（図７乃至１３において、ノードＮＤ内の数字は、各ノードＮＤにおける可能長を示す）
これに対し、図３のトライ辞書を参照すると、認識字種「耳」と「日」に続く語句は、その終端までの文字の長さが「３」であるからノードＮＤ（１）おける可能長には合わないため削除し、終端までの文字の長さが「４」を取り得る認識字種「腰」のみを保留し、「腰」に対する認識スコアを文字認識エンジンから得る。
【００６２】
同様に、ノードＮＤ（２）について考えると、ノードＮＤ（２）から終端までの可能長は、ノードＮＤ（２）、（５）、（７）を選択した場合の「３」又は、ノードＮＤ（２）、（４）、（６）、（７）を選択した場合の「４」である。
これに対し、図３のトライ辞書を参照すると、認識字種「腰」に続く語句は、その終端までの文字の長さは「３」又は「４」であり、認識字種「耳」と「日」に続く語句は、その終端までの文字の長さが「３」である。
従って、「腰」、「耳」「日」の全ての認識字種において可能長を満たすため、３つの認識字種「腰」「耳」「日」を保留し、各認識字種に対する認識スコアを文字認識エンジンより得る。
【００６３】
次に、図９を参照して、切出しポイントＳ１について考えると、その前には１つのノードＮＤ（１）が存在しており、その後には、１つのノードＮＤ（３）が存在する。
各切出しポイントに至るすべての経路について経路評価尺度に従って評価し、そしてそれらをソートし、上位M個の経路だけ選択し、その以外の経路を削除する。個数Mをビームバンドと呼ぶ。ここでの例においてはビームバンドが2であり、Ｓ１においては[腰]を保留している1つの経路しかない。
従って、保留している経路と同一の文字列に続く経路に続く字種は、図３のトライ辞書においては、「椎」「痛」「部」「腹」であり、それらをノード（３）の認識字種に設定する。
【００６４】
ノードＮＤ（３）について考えると、ノードＮＤ（３）から終端までの可能長は、ノードＮＤ（３）、（５）、（７）を選択した場合の「３」又は、ノードＮＤ（３）、（４）、（６）、（７）を選択した場合の「４」である。
これに対し、図３のトライ辞書を参照すると、認識字種「痛」と「腹」に続く語句は、その終端までの文字の長さが「２」であるからノードＮＤ（３）おける可能長には合わないため削除し、終端までの文字長さが「３」を取り得る認識字種「椎」と「部」のみを保留し、「椎」と「部」に対する認識スコアを文字認識エンジンから得る。
【００６５】
同様の処理を図１０乃至図１２に示すように、切出しポイントＳ２、Ｓ３、Ｓ４の順に適用し、図１３に示すように、最後の切出しポイントＳ５において文字認識処理を行う。そして、最初の切出しポイントＳ０から最終の切出しポイントＳ５に至る全てのノード（１）乃至（７）の経路について経路評価尺度に従って評価を行い、評価に基づき全ての経路をソートして最良の評価を有する経路を選択し、当該認識結果を算出する。本実施形態においては、最優の評価を有する経路として、ノード（１）において「腰」が選択され、ノード（５）において「椎」が選択され、ノード（７）において「炎」が選択され、それら最優の経路を選択した「腰椎炎」の文字列が文字認識処理の認識結果として算出されている。
【００６６】
［特定語句の特徴］
図１４及び図１５を参照して、文字認識処理において取り扱う特定語句の特徴について説明する。
図１４は、図２のリストに含まれる特定語句（病名）の語長（文字数の長さ）と、その比率と、の関係を示す図である。
図１４の図において、横軸は特定語句の文字数の長さを示し、縦軸は、該当する文字数の長さを有する特定語句の比率を示す。
本実施形態において特定語句の平均長は「６．９」である。
【００６７】
図１５は、図３のトライ辞書に含まれる特定語句（病名）の文字順位置（ｎ文字目に対する位置）と、その文字順位置における平均分岐数（ｎ文字目位置での分岐数）と、の関係を示す図である。
図１５に示すように、図３のトライ辞書を参照して可能長に基づきサーチ経路上の認識字種を限定することにより、本来数千個の認識字種から候補を大幅に削減することができ、類似字種への誤認識を防ぐとともに、認識速度の著しい向上を期待することができる。
【００６８】
［実施例］
図１６乃至図１８を参照して、文字認識処理を適用した実施例について説明する。
【００６９】
本実施形態においては、オンライン手書き日本語文字データベースNakayosi(M.  Nakagawa,  K.  Matsumoto,  “Collection  of  on-line  handwritten  Japanese  character  pattern  databases  and  their  analysis,”  Int.  J.  Document  Analysis  and  Recognition  (IJDAR),  7(1),  pp.  69-81,  2004  参照）により文字認識と幾何的な特徴の評価関数を学習した。文字列方向と文字方向自由のオンライン手書きパターンデータベースHANDS-Kondate_t_bf-2001-1を利用し、仮切出しポイントの確かさしさのためのＳＶＭモデルと経路評価の重みパラメータを学習した。それらの詳細については、B.  Zhu,  X.-D.  Zhou,  C.-L.  Liu  and  M.  Nakagawa,  “A  Robust  Model  for  On-line  Handwritten  the  Japanese  Text  Recognition,”  Int.  J.  Document  Analysis  and  Recognition  (IJDAR),  Vol.  13,  No.  2,  pp.121-131,  2010.（以下、非特許文献２と呼ぶ）を参照されたい。
これらの学習後、総文字数3,803からなる1,112のオンライン手書き病名を用いて、本実施形態における文字認識装置１を利用した文字認識方法の評価を行った。実験環境はGenuine  Intel(R)  CPU  U1400  1.20  GHz  with  1.49  GBメモリである。
本実施形態に係る文字認識装置１を利用した文字認識方法と汎用の手書き日本語文字列認識方式（非特許文献２参照）を利用した文字認識方法との性能を比較した。公平に比較するために２つの方式とも同じ文字認識と幾何的な特徴の評価関数を使用した。本実施形態に係る文字認識方法では図２で示した病名リストにより図３のトライ辞書を構築した。非特許文献１に記載の汎用の手書き日本語文字列認識方式を利用した文字認識方法の経路評価では、図３のトライ辞書の代わりにtri-gramによる言語の文脈確からしさのスコアを使用した。このtri-gram表は，1993年の朝日新聞と2002年の日経新聞の記事から作成した。
【００７０】
図１６は、これら本実施形態に係る文字認識装置１を利用した文字認識方法と、汎用の手書き日本語文字列認識方法と、における認識率及び認識速度の比較結果を示す図である。図１６において、認識時間は1,112全ての病名を認識するための時間である。
図１７及び図１８は手書き入力された文字例である。
【００７１】
図１６に示すように、本実施形態の文字認識方法は、汎用認識方式と比べて，認識率は94.56%から99.97%へ向上し，認識速度は9m37sから40m33sへ4.3倍高速化したことが分かる。
認識率について検討すると、図１７に示すような手書き入力された文字列を本実施形態に係る文字認識方法により認識すると、「うっ血肝」と正しく認識できたのに対し、汎用認識方式により認識した場合には、「う。血肝」と誤認識された。従って、「うっ血肝」のような汎用認識方式で誤認識しやすい病名の文字列であっても、本実施形態の文字認識方法においては認識字種の限定を行うことで，類似字種間の誤認識を削減し認識率を向上することができる。
また、図１８に示すような手書き入力された文字列を本実施形態に係る文字認識方法により認識すると、「１８常染色体異常」と正しく認識されたのに対し、汎用認識方式により認識した場合には、認識ができなかった。従って、正しく語句を手書き入力できていない場合であっても、図３のトライ辞書に基づき可能長から認識字種を選択し、一番類似している認識字種を選択することで認識率を向上することができる。
【００７２】
以上のことから、本実施形態に係る文字認識装置１を利用した文字認識方法では、特定語句のトライ辞書と語句の可能長とから認識字種を限定することにより本来数千個の認識字種から候補を大幅に削減できる。これにより、認識字種を大幅に限定することで、類似字種への誤認識を防ぐとともに認識速度を著しく向上させることができる。
また，正しく記入されていない特定語句に対しても，本方式はトライ辞書の中から一番類似しているものを選択するために正しく認識することができる。
【００７３】
なお本発明は、上述の実施の形態に限定されるものでは無く、その趣旨を逸脱しない範囲で、上述の実施形態に種々の変形を加えた形態とすることができる。
【００７４】
具体的に、上述の実施形態では、トライ辞書を構築するための特定語句の語彙集合は病名を用いて行うが、特定語句の種類は特にこれに限定されるものではなく、住所、氏名などの特定語句のリストを用いてトライ辞書を構築してもよい。
【００７５】
また、上述の実施形態では、文字列取得部３１により取得する文字列のデータは、タブレットにより入力された手書きの文字列のデータを用いて行うが、特にこれに限定されるものではなく、スキャナーや、手書き入力された筆跡をメモリ上に記憶するペンによって入力される文字列のデータであってもよい。
【００７６】
また、上述の実施形態においては、ＣＰＵ１０と記憶部２０とを備えた文字認識装置１について文字認識方法を行っているがこれに限られない。例えば、ＣＰＵ１０と記憶部２０とを備えた文字認識システムに適用することもできる。
【００７７】
また、上述した一連の処理は、ハードウェア及びソフトウェアの何れにより実行させることもできる。上述の一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータの記憶媒体からインストールされる。
【符号の説明】
【００７８】
１    文字認識装置
１０  ＣＰＵ
２０  記憶部
３１  文字列取得部
３２  仮切出部
３３  文字パターン候補構成部
３４  文字パターン候補連結部
３５  文字数算出部
３６  文字パターン候補限定部
３７  文字認識部
４１  特定語句記憶部
５１  辞書構築部
【図１】
0005252596.tif 000002
【図２】
0005252596.tif 000003
【図３】
0005252596.tif 000004
【図４】
0005252596.tif 000005
【図５】
0005252596.tif 000006
【図６】
0005252596.tif 000007
【図７】
0005252596.tif 000008
【図８】
0005252596.tif 000009
【図９】
0005252596.tif 000010
【図１０】
0005252596.tif 000011
【図１１】
0005252596.tif 000012
【図１２】
0005252596.tif 000013
【図１３】
0005252596.tif 000014
【図１４】
0005252596.tif 000015
【図１５】
0005252596.tif 000016
【図１６】
0005252596.tif 000017
【図１７】
0005252596.tif 000018
【図１８】
0005252596.tif 000019
【図１９】
0005252596.tif 000020