(57)【要約】【課題】オペレータの作業負担を軽減することができる。【解決手段】対象文字に対する複数の文字読込エンジンによる読込結果に対して多数決を取り、多数決結果を出力する多数決結果出力部と、前記多数決結果および前記対象文字に対する文字認識エンジンによる認識結果に基づいて得られる推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、前記対象文字を推定して検証確定した確定文字列を生成する、検証確定部と、を備える文字認識システムが提供される。【選択図】図１
2020095374.tif 000002
【特許請求の範囲】
【請求項１】
対象文字に対する複数の文字読込エンジンによる読込結果に対して多数決を取り、多数決結果を出力する多数決結果出力部と、
前記多数決結果および前記対象文字に対する文字認識エンジンによる認識結果に基づいて得られる推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、前記対象文字を推定して検証確定した確定文字列を生成する、検証確定部と、を備える文字認識システム。
【請求項２】
前記検証確定部は、前記推定文字列に基づいて、前記データベース文字列から実績文字列を抽出し、前記推定文字列と前記実績文字列を用いて、前記マッチングを行う、請求項１に記載の文字認識システム。
【請求項３】
前記推定文字列は、前記多数決結果、前記認識結果、または前記多数決結果および前記認識結果の一部を含む混合結果、の少なくとも一つ以上を含む、請求項１または２に記載の文字認識システム。
【請求項４】
前記検証確定部は、前記推定文字列と、前記実績文字列と、の類似率を用いて前記マッチングを行う、請求項２に記載の文字認識システム。
【請求項５】
前記検証確定部は、前記類似率が閾値以上である場合、
最も類似率の高い前記実績文字列を前記確定文字列として生成する、請求項４に記載の文字認識システム。
【請求項６】
前記検証確定部は、
前記類似率が閾値未満である場合、かつ前記推定文字列が認識または読込が不能であったリジェクト文字を含まない場合、前記推定文字列を前記確定文字列として生成する、請求項４または５に記載の文字認識システム。
【請求項７】
前記検証確定部は、
前記データベース文字列から実績文字列を抽出不可の場合、かつ前記推定文字列が認識または読込が不能であったリジェクト文字を含まない場合、前記推定文字列を前記確定文字列として生成する、請求項１に記載の文字認識システム。
【請求項８】
前記文字認識エンジンは、ユーザが書いた文字の筆跡画像に対する機械学習結果を用いて前記認識結果を導出する、請求項１〜７のいずれか一項に記載の文字認識システム。
【請求項９】
前記対象文字は、銀行で使用される帳票に記載された文字である、請求項１〜８のいずれか一項に記載の文字認識システム。
【請求項１０】
対象文字に対する複数の文字読込エンジンによる読込結果に対して多数決を取り、多数決結果を出力する多数決結果出力部と、
前記多数決結果および前記対象文字に対する文字認識エンジンによる認識結果に基づいて得られる推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、前記対象文字を推定して検証確定した確定文字列を生成する、検証確定部と、を備える文字認識装置。
【請求項１１】
コンピュータを、
対象文字に対する複数の文字読込エンジンによる読込結果に対して多数決を取り、多数決結果を出力する多数決結果出力部と、
前記多数決結果および前記対象文字に対する文字認識エンジンによる認識結果に基づいて得られる推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、前記対象文字を推定して検証確定した確定文字列を生成する、検証確定部と、として機能させるためのプログラム。
【請求項１２】
プロセッサが、
対象文字に対する複数の文字読込エンジンによる読込結果に対して多数決を取り、多数決結果を出力することと、
前記多数決結果および前記対象文字に対する文字認識エンジンによる認識結果に基づいて得られる推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、前記対象文字を推定して検証確定した確定文字列を生成することと、を含む、文字認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字認識システム、文字認識装置、プログラム及び文字認識方法に関する。
【背景技術】
【０００２】
従来、文書、帳票等に記載された対象文字をコンピュータシステムに入力する方法として、文字読込装置を用いた入力方法があった。特許文献１には、複数の文字読込装置を用いて、各文字読込装置の多数決結果を用いて対象文字を認識する技術が開示されている。
【０００３】
また、特許文献２には、複数の文字読込装置を用いて、各文字読込装置の多数決結果を用いて対象文字を認識する手法に加えて、過去の多数決結果による正解データを用いて対象文字を認識する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２９７３０６号公報
【特許文献２】特開平１１−２８２９６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１および２に記載の技術では、対象文字の筆跡の状態に依存して、認識結果にバラつきが生じるという問題があった。認識結果にバラつきが生じると、オペレータによる確認を要するため、オペレータへの作業負担が大きい。そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、オペレータの作業負担を軽減することが可能な、新規かつ改良された文字認識システムを提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある観点によれば、対象文字に対する複数の文字読込エンジンによる読込結果に対して多数決を取り、多数決結果を出力する多数決結果出力部と、前記多数決結果および前記対象文字に対する文字認識エンジンによる認識結果に基づいて得られる推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、前記対象文字を推定して検証確定した確定文字列を生成する、検証確定部と、を備える文字認識システムが提供される。
【０００７】
前記検証確定部は、前記推定文字列に基づいて、前記データベース文字列から実績文字列を抽出し、前記推定文字列と前記実績文字列を用いて、前記マッチングを行ってもよい。
【０００８】
前記推定文字列は、前記多数決結果、前記認識結果、または前記多数決結果および前記認識結果の一部を含む混合結果、の少なくとも一つ以上を含んでもよい。
【０００９】
前記検証確定部は、前記推定文字列と、前記実績文字列と、の類似率を用いて前記マッチングを行ってもよい。
【００１０】
前記検証確定部は、前記類似率が閾値以上である場合、最も類似率の高い前記実績文字列を前記確定文字列として生成してもよい。
【００１１】
前記検証確定部は、前記類似率が閾値未満である場合、かつ、前記推定文字列が認識または読込が不能であったリジェクト文字を含まない場合、前記推定文字列を前記確定文字列として生成してもよい。
【００１２】
前記検証確定部は、前記データベース文字列から実績文字列を抽出不可の場合、かつ前記推定文字列が認識または読込が不能であったリジェクト文字を含まない場合、前記推定文字列を前記確定文字列として生成してもよい。
【００１３】
前記文字認識エンジンは、ユーザが書いた文字の筆跡画像に対する機械学習結果を用いて前記認識結果を導出してもよい。
【００１４】
前記対象文字は、銀行で使用される帳票に記載された文字であってもよい。
【００１５】
また、上記課題を解決するために、本発明の別の観点によれば、対象文字に対する複数の文字読込エンジンによる読込結果に対して多数決を取り、多数決結果を出力する多数決結果出力部と、前記多数決結果および前記対象文字に対する文字認識エンジンによる認識結果に基づいて得られる推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、前記対象文字を推定して検証確定した確定文字列を生成する、検証確定部と、を備える文字認識装置が提供される。
【００１６】
また、上記課題を解決するために、本発明の別の観点によれば、コンピュータを、対象文字に対する複数の文字読込エンジンによる読込結果に対して多数決を取り、多数決結果を出力する多数決結果出力部と、前記多数決結果および前記対象文字に対する文字認識エンジンによる認識結果に基づいて得られる推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、前記対象文字を推定して検証確定した確定文字列を生成する、検証確定部と、として機能させるためのプログラムが提供される。
【００１７】
また、上記課題を解決するために、本発明の別の観点によれば、プロセッサが、対象文字に対する複数の文字読込エンジンによる読込結果に対して多数決を取り、多数決結果を出力することと、前記多数決結果および前記対象文字に対する文字認識エンジンによる認識結果に基づいて得られる推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、前記対象文字を推定して検証確定した確定文字列を生成することと、を含む、文字認識方法が提供される。
【００１８】
上記構成により、複数の文字読込エンジンによる読込結果の多数決に加えて、文字認識エンジンの認識結果に基づいて、推定文字列を生成し、さらに推定文字列とデータベース文字列とをマッチングするため、確定文字列の精度が上昇する。
【発明の効果】
【００１９】
以上説明したように本発明によれば、オペレータの作業負担を軽減することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施形態に係る機能と構成を示すブロック図である。
【図２】同実施形態に係る動作フローを示すフロー図である。
【図３】同実施形態に係る動作処理の一例を示す模式図である。
【図４】同実施形態に係る動作処理の一例を示す模式図である。
【図５】同実施形態に係る動作処理の一例を示す模式図である。
【図６】同実施形態に係る動作処理の一例を示す模式図である。
【図７】同実施形態に係るハードウェア構成の一例を示したブロック図である。
【発明を実施するための形態】
【００２１】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００２２】
（１．技術概要）
オペレータの作業負担を軽減する文字認識システムの技術概要を説明する。文字認識システムは、対象文字に対する複数の文字読込装置から得られる読込結果と、該文字読込装置とは異なる文字認識装置から得られる認識結果と、を用いる。さらに、文字認識システムは、それらの読込結果および認識結果から推定される推定文字列を生成し、該推定文字列と、過去に入力されたことのある文字列とをマッチングして、対象文字を推定して検証を行う。この検証にて確定された確定文字列は、コンピュータシステム等に入力され得る。
【００２３】
（２．実施形態）
図１〜６を参照して、本実施形態にかかる文字認識システムに関して説明する。本実施形態においては、文字認識システムの機能および構成が文字認識装置に集約される場合を説明する。文字認識システムの機能および構成は、かかる例に限定されず、複数の装置に分散して設けられてもよい。
【００２４】
（２．１．機能と構成）
まず、図１を参照して、文字認識システムの機能と構成を説明する。図１は、本実施形態にかかる文字認識システムを含めた情報処理システム１０００の機能および構成の一例を示したブロック図である。
【００２５】
情報処理システム１０００は、文字読込エンジン１１０と、文字認識エンジン１２０と、文字認識装置１３０と、表示装置１４０と、を有する。情報処理システム１０００は、文字読込エンジン１１０および文字認識エンジン１２０から得られる情報を文字認識装置１３０にて処理して、対象文字に対する推定結果を検証して、確定文字列を生成する。確定文字列または、確定文字列から得られる情報は、例えば、表示装置１４０を用いて、ユーザに呈示される。
【００２６】
文字読込エンジン１１０は、第１読込エンジン１１２と、第２読込エンジン１１４と、第３読込エンジン１１６と、を有する。文字読込エンジン１１０は、第１読込エンジン１１２と、第２読込エンジン１１４と、第３読込エンジン１１６と、から得られた情報を文字認識装置１３０に出力する機能を有する。第１読込エンジン１１２と、第２読込エンジン１１４と、第３読込エンジン１１６と、は、それぞれ読込のアルゴリズムが異なる読込装置であり、それぞれの読込アルゴリズムにより、対象文字を読み込む。なお、本実施形態では、３つの読込エンジンを例に挙げたが、数はかかる例に限られず、４つ以上であってもよい。
【００２７】
文字読込エンジン１１０を構成する第１読込エンジン１１２〜第３読込エンジン１１６は、対象文字を読み込んで、それぞれ文字を想定する機能を有する。具体的に、第１読込エンジン１１２〜第３読込エンジン１１６は、手書き、または印刷された文字等の筆跡画像を読込み、想定される文字の特徴情報へ変換する。そして、文字読込エンジン１１０は、記憶している文字の集合体である辞書を用いて、第１読込エンジン１１２〜第３読込エンジン１１６から得られた特徴情報を使用して、該辞書から特徴情報に対応する文字を抽出して、ユーザが理解可能な文字へ変換する。例えば、第１読込エンジン１１２〜第３読込エンジン１１６は、光学式文字読取装置ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ）であってもよい。このようにして第１読込エンジン１１２〜第３読込エンジン１１６が、対象文字を読み込んで取得した情報を読込結果と称する。
【００２８】
第１読込エンジン１１２〜第３読込エンジン１１６は、ユーザが理解可能な文字へ変換できた場合には、読込結果として該文字を出力する。第１読込エンジン１１２〜第３読込エンジン１１６は、対象文字の存在を検知しなかった場合には、検知しなかったことを示す情報を読込結果として出力する。また、第１読込エンジン１１２〜第３読込エンジン１１６が、対象文字を検知しなかった場合には、読込結果を出力しなくともよい。第１読込エンジン１１２〜第３読込エンジン１１６が、対象文字の存在を検知したものの、認識不能であった場合には、認識不能であったことを示すリジェクト情報を読込結果として出力する。具体的には、認識不能であった文字をリジェクト文字として出力する。すなわち読込結果とは読み込んだ文字画像を予め用意した辞書により認識した結果データである。文字読込エンジン１１０は、このような上記読込結果を文字認識装置１３０へ出力する。
【００２９】
一方、文字認識エンジン１２０は、対象文字を画像解析して認識して、認識結果を文字認識装置１３０に出力する機能を有する。そして、文字認識エンジン１２０は、対象文字であるユーザが書いた文字の筆跡画像に対する機械学習結果を用いて認識結果を導出する。文字認識エンジン１２０は、ユーザが書いた文字の筆跡画像を取得して、該筆跡画像を３次元画像に変換して、文字を立体画像として記憶し、文字の体積および高さを特徴として記憶する。文字認識エンジン１２０は、この特徴と正解文字とを蓄積および機械学習し、機械学習結果を用いて、認識結果を出力する。すなわち認識結果とは対象文字の文字画像を機械学習により蓄積した機械学習結果により認識した結果データである。正解文字は、テキストデータとして、筆跡画像と紐づけられてもよい。
【００３０】
文字認識装置１３０は、取得部１３２と、多数決結果出力部１３４と、推定文字列生成部１３６と、検証確定部１３８と、を有する。文字認識装置１３０は、文字読込エンジン１１０から得られる読込結果と、文字認識エンジン１２０から得られる認識結果とを処理することで、推定される対象文字の文字列を確定文字列として確定する機能を有する。
【００３１】
取得部１３２は、文字読込エンジン１１０が出力した読込結果と、文字認識エンジン１２０が出力した認識結果と、を取得する機能を有する。また、取得部１３２は、上記確定文字列を確定する際に使用されるパラメータ、ユーザ指示等を取得する機能も有する。
【００３２】
多数決結果出力部１３４は、文字読込エンジン１１０が出力した読込結果に基づいて、多数決を取り、多数決結果を出力する機能を有する。読込結果には、第１読込エンジン１１２〜第３読込エンジン１１６が対象文字を読み込んだ結果が含まれている。多数決結果出力部１３４は、これらの結果に対して多数決を取り、より読込結果が一致する文字を多数決結果として出力する。多数決結果の出力に関する詳細は後述する。
【００３３】
推定文字列生成部１３６は、多数決結果と、文字認識エンジン１２０より得られた認識結果に基づいて推定される推定文字列を生成する機能を有する。また、推定文字列生成部１３６は、生成された推定文字列を、検証確定部１３８に出力する機能も有する。
【００３４】
推定文字列生成部１３６は、多数決結果、認識結果、または多数決結果および認識結果の一部を含む混合結果、の少なくとも一つ以上を含む推定文字列を生成する。推定文字列生成部１３６は、例えば、ユーザが設定する条件に応じて、推定文字列として、多数決結果、認識結果、多数決結果および認識結果の一部を含む混合結果を生成する。各条件と、生成される推定文字列と、に関しては後述する。このように、条件に応じて多様な推定文字列が生成され得る。
【００３５】
推定文字列生成部１３６は、一つの推定文字列を生成してもよく、複数の推定文字列を生成してもよい。推定文字列生成部１３６は、複数の推定文字列を検証確定部１３８に出力してもよい。
【００３６】
検証確定部１３８は、上記推定文字列と、履歴データベースが保有するデータベース文字列と、のマッチングを行い、対象文字を推定して検証確定した確定文字列を生成する機能を有する。履歴データベースとは、対象文字をコンピュータシステム等に入力する際に用いられた文字列を記憶しているデータベースである。履歴データベースに記憶されている文字列をデータベース文字列と称する。
【００３７】
検証確定部１３８は、推定文字列に基づいて、データベース文字列を検索して、推定文字列として想定され得る実績文字列を抽出する。検証確定部１３８は、抽出可能な実績文字列がない場合、実績文字列の該当がないとして処理を行う。一方、検証確定部１３８は、抽出可能な実績文字列がある場合、推定文字列と実績文字列とを用いて、マッチングを行う。なお、検証確定部１３８は、一つの実績文字列を抽出してもよく、複数の実績文字列を抽出してもよい。
【００３８】
検証確定部１３８は、推定文字列と、実績文字列と、の類似率を用いてマッチングを行ってよい。類似率は、公知な手法で求められ得る。具体的には、検証確定部１３８は、後述するレーベンシュタイン距離を使用した類似率を用いてもよい。レーベンシュタイン距離を使用した類似率の算出方法の詳しくは、後述する。
【００３９】
表示装置１４０は、文字認識装置１３０にて生成された確定文字列をユーザに呈示する機能を有する。表示装置１４０は、文字認識装置１３０にて出力された確定結果をユーザに呈示する機能も有してよい。
【００４０】
表示装置１４０は、例えば、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイ装置、液晶ディスプレイ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：ＬＣＤ）装置、ＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）装置などの表示装置であってよい。
【００４１】
さらに、表示装置１４０にて呈示された確定文字列は、ユーザにより正読か、または誤読かが判断されてよい。
【００４２】
（２．２．動作フロー）
以上までで、文字認識システムを含む情報処理システムの機能と構成の一例の説明を行った。本項では、図２を参照して、上記の構成が動作する動作フローＳ１００に関して説明する。
【００４３】
まず、取得部１３２が、文字読込エンジン１１０による読込結果を取得する（Ｓ１０２）。
【００４４】
次に、取得部１３２が、文字認識エンジン１２０による認識結果を取得する（Ｓ１０４）。なお、取得部１３２が取得する順番はかかる例に限られない。また、同時に読込結果と認識結果とが取得されてもよい。
【００４５】
次に、多数決結果出力部１３４が、読込結果に基づいて、多数決結果を出力する（Ｓ１０６）。
【００４６】
次に、推定文字列生成部１３６が、多数決結果と認識結果とに基づいて、推定文字列を生成する（Ｓ１０８）。
【００４７】
次に、検証確定部１３８が、推定文字列とデータベース文字列とを用いて、マッチングを行い、対象文字を推定して検証確定した確定文字列を生成する（Ｓ１１０）。なお、確定文字列は、コンピュータシステム等に出力されて登録され得る。確定文字列の生成過程において、文字認識装置１３０等が処理を中断した場合には、コンピュータシステム等に出力されず、処理が中断された旨が呈示される。
【００４８】
また、確定文字列が表示装置１４０等でユーザに呈示されることで、確定文字列が正読されているか、誤読されているか、をユーザは確認可能である。ユーザはこのように確認作業を行うことにより、確定文字列生成の動作を修正したり、既に登録された確定文字列に対して、修正作業等をしたりすることが可能となる。
【００４９】
このようにして、文字認識システムは確定文字列を生成して、対象文字を精度高くコンピュータシステム等に入力可能である。そして、確定文字列の精度が高くなることにより、オペレータの負担を軽減することができる。
【００５０】
（２．３．多数決結果の出力）
本項では、図３および図４を参照して、多数決結果の出力に関して説明する。図３および図４は、多数決結果を決める際の場合分けを示した図である。
【００５１】
図３および図４に示したように、多数決結果を決める際の場合分けは例えば７ケース考えられる。ここでは、それぞれのケースに関して説明する。図３および図４に示したケースはすべて、対象文字を、「あいうえお」の文字列としている。多数決結果出力部１３４は、第１読込エンジン１１２と、第２読込エンジン１１４と、第３読込エンジン１１６と、読込結果の多数決により、多数決結果を生成し出力する。
【００５２】
多数決結果出力部１３４は、３つの読込エンジンの読込結果が同じ文字であれば、その文字を多数決結果として出力する。多数決結果出力部１３４は、３つの読込エンジンのうち、２つの読込結果が同じ文字であれば、２つの読込結果が同じであった文字を多数決結果として出力する。多数決結果出力部１３４は、３つの読込エンジンのそれぞれの読込結果が異なる文字であれば、リジェクトである旨を多数決結果として出力する。以下では、多数決結果の様々なケースを例示して説明する。
【００５３】
ケース１は、第１読込エンジン１１２と、第２読込エンジン１１４と、第３読込エンジン１１６と、がそれぞれ、対象文字を「あいうえお」と読み込んでいる。ケース１は、全ての読込エンジンの対象文字に対する読込結果が一致している。ケース１では、多数決結果出力部１３４は、多数決結果として「あいうえお」を出力する。
【００５４】
ケース２は、第１読込エンジン１１２が対象文字を「あいきえお」と読込み、第２読込エンジン１１４が対象文字を「かいうえお」と読込み、第３読込エンジン１１６が対象文字を「あいうけお」と読込んでいる。多数決結果出力部１３４は、各列の文字に対して、多数決を取り、多数決結果を出力する。具体的に、多数決結果出力部１３４は、１列目に対して多数決を取り、第１読込エンジン１１２と第３読込エンジン１１６とが読み込んだ「あ」を多数決結果としている。この手法を３列目、４列目に対しても用いることで、各列で一部の文字が異なるケース２では、多数決結果出力部１３４は、多数決結果として「あいうえお」を出力する。
【００５５】
ケース３は、第１読込エンジン１１２が対象文字を「あいうえお」と読込み、第２読込エンジン１１４が対象文字を「あいう」と読込み、第３読込エンジン１１６が対象文字を「あいうえお」と読込んでいる。第２読込エンジン１１４は、対象文字の「えお」の文字を検知しておらず読込んでいない。多数決結果出力部１３４は、読み込んだ文字数が一部異なる場合には、読み込んだ文字数が異なる読込エンジンの読込結果を多数決評価の対象外として、残りの読込エンジンの読込結果に対して多数決結果を取ってもよい。ケース３では、多数決結果出力部１３４は、多数決結果として「あいうえお」を出力する。
【００５６】
ケース４は、第１読込エンジン１１２が対象文字を「あい」と読込み、第２読込エンジン１１４が対象文字を「あいう」と読込み、第３読込エンジン１１６が対象文字を「あいうえお」と読込んでいる。このように、全ての読込エンジンによる読込結果の文字数がすべて異なる場合には、多数決結果出力部１３４は、複数の読込エンジンの中から、任意の読込エンジンを選択し、任意の読込エンジンの読込結果を多数決結果として出力してよい。ケース４は、第１読込エンジン１１２による読込結果が選択され、多数決結果出力部１３４は、多数決結果として「あい」を出力する。
【００５７】
ケース５は、第１読込エンジン１１２が対象文字を「あ？うえお」と読込み、第２読込エンジン１１４が対象文字を「あいうえお」と読込み、第３読込エンジン１１６が対象文字を「あいう？お」と読込んでいる。このように一部の文字がリジェクトされて読み込まれている場合には、多数決結果出力部１３４は、リジェクト文字を除いて多数決を取り、多数決結果を出力してもよい。ケース５は、各列に対して、リジェクト文字を除く読込結果で多数決がとられており、多数決結果出力部１３４は、多数決結果として「あいうえお」を出力する。
【００５８】
ケース６は、第１読込エンジン１１２が対象文字を「？？うえお」と読込み、第２読込エンジン１１４が対象文字を「？？？かお」と読込み、第３読込エンジン１１６が対象文字を「あ？う？お」と読込んでいる。４列目ように各読込エンジンによる読込結果がすべて異なる場合には、多数決結果出力部１３４は、リジェクト文字として多数決結果を出力してもよい。なお、ケース６の４列目以外の列は、それぞれ多数決を取り、多数決結果を出力する。よって、ケース６では、多数決結果出力部１３４は、多数決結果として「？？う？お」を出力する。
【００５９】
ケース７は、第１読込エンジン１１２が対象文字を「あいうえお」と読込み、第２読込エンジン１１４が対象文字を「かきくけこ」と読込み、第３読込エンジン１１６が対象文字を「さしすせそ」と読込んでいる。このようにリジェクト文字は無く、読込結果が全て異なる場合には、多数決結果出力部１３４は、リジェクト文字として多数決結果を出力してもよい。よって、ケース７では、多数決結果出力部１３４は、多数決結果として「？？？？？」を出力する。
【００６０】
このようにして、多数決結果出力部１３４は、多数決結果を出力する。なお、本実施形態において説明した上記の多数決結果の出力の場合分けは、ユーザにより適宜場合分け手法が決定されてよく、上記の例は一例に過ぎない。
【００６１】
（２．４．推定文字列の生成と検証確定）
本項では、図５および図６を参照して、推定文字列の生成と検証確定とに関して説明する。図５および図６は、推定文字列の生成と検証確定とに関して説明する図である。
【００６２】
図５および図６に示したように、例えば推定文字列の生成と検証確定とのケースとして１２ケース考えられる。ここでは、それぞれのケースに関して説明する。図５および図６に示したケースはすべて、対象文字を、「あいうえお」の文字列としている。推定文字列生成部１３６は、多数決結果と、文字認識エンジン１２０による認識結果と、に基づいて推定文字列を生成する。そして、検証確定部１３８は、推定文字列とデータベース文字列とをマッチングする。
【００６３】
ケース１は、多数決結果が「あいうえお」であり、認識結果が「あいうえお」である。ケース１は、多数決結果と認識結果とがともに、各列がすべて一致している。この場合には、推定文字列生成部１３６は、多数決結果を選択して、推定文字列として、「あいうえお」を生成する。そして、検証確定部１３８は、推定文字列とデータベース文字列とをマッチングする。
【００６４】
ケース２は、多数決結果が「あいうえお」であり、認識結果が「あかうけお」である。このように、多数決結果と認識結果とで一部の文字が異なる場合には、推定文字列生成部１３６は、多数決結果の文字列と認識結果の文字列との両方を推定文字列として生成してもよい。推定文字列生成部１３６は、複数の文字列を推定文字列として生成する場合、検証確定部１３８に、優先して処理される推定文字列を選択して出力してもよい。
【００６５】
具体的には、ケース２では、推定文字列生成部１３６は、優先的に多数決結果を選択して検証確定部１３８に出力する。このとき、検証確定部１３８における処理で、推定文字列に基づいて抽出される実績文字列があるか否かにより、残りの推定文字列である認識結果が出力されるか否かが判断されてもよい。また、検証確定部１３８で得られる類似率を用いて、残りの推定文字列である認識結果が出力されるか否かが判断されてもよい。例えば、ケース２では、検証確定部１３８が多数決結果に基づいて実績文字列を抽出する場合に、該当する実績文字列が０件であるときに、推定文字列生成部１３６は、認識結果を検証確定部１３８に出力する。
【００６６】
ケース３は、多数決結果が「あいう」であり、認識結果が「あいうえお」である。このように、リジェクト文字はなく、それぞれの結果の文字数が異なる場合には、推定文字列生成部１３６は、ケース２と同様に多数決結果の文字列と認識結果の文字列との両方を推定文字列として生成してもよい。推定文字列生成部１３６は、複数の文字列を推定文字列として生成する場合、検証確定部１３８に、優先して処理される推定文字列を選択して出力してもよい。
【００６７】
ケース３は、ケース２と同様に、推定文字列生成部１３６は、優先的に多数決結果を選択して検証確定部１３８に出力する。このとき、検証確定部１３８における処理で、推定文字列に基づいて抽出される実績文字列があるか否かにより、残りの推定文字列である認識結果が出力されるか否かが判断されてもよい。また、検証確定部１３８で得られる類似率を用いて、残りの推定文字列である認識結果が出力されるか否かが判断されてもよい。例えば、ケース３では、検証確定部１３８が多数決結果に基づいて実績文字列を抽出する場合に、該当する実績文字列が０件であるときに、推定文字列生成部１３６は、認識結果を検証確定部１３８に出力する。
【００６８】
さらに、検証確定部１３８により多数決結果に基づいて実績文字列を抽出する場合の、該当する実績文字列の件数と、類似率とに応じて、推定文字列生成部１３６は、認識結果を出力してもよい。具体的には、多数決結果で、実績文字列の抽出が１件である場合に、推定文字列生成部１３６は、類似率が８０％以上であれば、認識結果を検証確定部１３８に出力せず実績文字列を出力し、類似率が８０％未満であれば、認識結果を検証確定部１３８に出力してもよい。また、多数決結果で、実績文字列の抽出が２件以上である場合には、推定文字列生成部１３６は、多数決結果と認識結果との両方を検証確定部１３８に出力してもよい。検証確定部１３８は、多数決結果と認識結果とのそれぞれの結果に基づいて抽出される実績文字列の全てに対して類似率を算出し、最も高い類似率である実績文字列を確定文字列として生成してよい。
【００６９】
ケース４は、多数決結果が「あ？う？お」であり、認識結果が「あいうえお」である。このように、多数決結果の一部の文字がリジェクト文字であり、かつ、リジェクト文字以外の多数決結果は、認識結果と一致する場合には、推定文字列生成部１３６は、リジェクト文字を認識結果にて補正して推定文字列を生成してもよい。具体的には、推定文字列生成部１３６は、多数決結果のリジェクト文字を認識結果で補完して、推定文字列として「あいうえお」を生成してよい。そして、検証確定部１３８は、推定文字列とデータベース文字列とをマッチングする。
【００７０】
ケース５は、多数決結果が「あ？う？お」であり、認識結果が「かいきえお」である。このように、多数決結果の一部の文字がリジェクト文字であり、かつリジェクト文字以外の文字が認識結果と少なくとも一部が一致しない場合には、推定文字列生成部１３６は、多数決結果のリジェクト文字となった箇所をリジェクト文字の存在を示す記号「＿」へ変換して、検証確定部１３８へ出力してもよい。これにより、検証確定部１３８は、リジェクト文字を考慮して、推定文字列とデータベース文字列とのマッチングを行える。
【００７１】
また、この場合、推定文字列生成部１３６は、上記のような多数決結果の一部を変換した文字列と認識結果との文字列の両方を推定文字列として生成してもよい。推定文字列生成部１３６は、複数の文字列を推定文字列として生成する場合、検証確定部１３８に、優先して処理される推定文字列を選択して出力してもよい。
【００７２】
具体的には、ケース５では、推定文字列生成部１３６は、多数決結果の一部を変換した推定文字列を優先的に選択して検証確定部１３８に出力してもよい。このとき、検証確定部１３８における処理で、推定文字列に基づいて抽出される実績文字列があるか否かにより、残りの推定文字列である認識結果が出力されるか否かが判断されてもよい。また、実績文字列が抽出される件数に応じて、残りの推定文字列である認識結果が検証確定部１３８に出力されるか否かが判断されてもよい。例えば、ケース５では、検証確定部１３８が多数決結果の一部を変換した推定文字列に基づいて実績文字列を抽出する場合に、該当する実績文字列が０件であるときに、推定文字列生成部１３６は、認識結果を検証確定部１３８に出力してもよい。
【００７３】
ケース５では、さらに検証確定についても詳しく説明する。ケース５では、検証確定部１３８は、多数決結果の一部を変換した推定文字列に基づいて実績文字列を抽出するときに、該当する実績文字列が１件以上抽出された場合には、多数決結果の一部を変換した推定文字列に対して類似率を算出し、さらに認識結果を用いた推定文字列に対して類似率を算出してもよい。また、検証確定部１３８は、多数決結果および認識結果を用いた推定文字列に対して、抽出された実績文字列の全てに対して、類似率を算出しそれらの類似率で最も高い実績文字列を確定文字列として生成してよい。
【００７４】
ケース６は、多数決結果が「？？？？？」であり、認識結果が「あいうえお」である。このように、多数決結果の全ての文字がリジェクト文字である場合には、推定文字列生成部１３６は、認識結果を選択して推定文字として生成してよい。そして、検証確定部１３８は、推定文字列とデータベース文字列とをマッチングする。
【００７５】
ケース７は、多数決結果が「あいうえお」であり、認識結果が「あ？？えお」である。このように、多数決結果にリジェクト文字が無く、認識結果にはリジェクト文字があり、認識結果のリジェクト文字以外の文字が多数決結果と一致している場合には、推定文字列生成部１３６は、多数決結果を推定文字列として生成してよい。そして、検証確定部１３８は、推定文字列とデータベース文字列とをマッチングする。
【００７６】
ケース８は、多数決結果が「あいうえお」であり、認識結果が「か？？えこ」である。このように、多数決結果にリジェクト文字が無く、認識結果にはリジェクト文字があり、認識結果のリジェクト文字以外で多数決結果と一部異なる文字がある場合には、推定文字列生成部１３６は、多数決結果を推定文字列として生成してよい。そして、検証確定部１３８は、推定文字列とデータベース文字列とをマッチングする。
【００７７】
ケース９は、多数決結果が「あいうえお」であり、認識結果が「？？？？？」である。このように、多数決結果にリジェクト文字が無く、認識結果が全てリジェクト文字である場合には、推定文字列生成部１３６は、多数決結果を推定文字列として生成してよい。そして、検証確定部１３８は、推定文字列とデータベース文字列とをマッチングする。
【００７８】
ケース１０は、多数決結果が「あ？うえお」であり、認識結果が「あき？え？」である。このように、多数決結果の一部にリジェクト文字を含み、認識結果の一部にもリジェクト文字を含み、それぞれのリジェクト文字の位置が異なる場合には、推定文字列生成部１３６は、多数決結果の一部および認識結果の一部を含む混合結果を用いて、推定文字列を生成してよい。この時、推定文字列生成部１３６は、多数決結果と認識結果とが一致する文字はその文字を生成し、リジェクト文字の箇所は、リジェクト文字となっていない方の結果を使用して文字を生成してよい。具体的にケース１０で説明すると、推定文字列生成部１３６は、「あきうえお」を推定文字列として生成してよい。そして、検証確定部１３８は、推定文字列とデータベース文字列とをマッチングする。
【００７９】
ケース１１は、多数決結果が「あ？うえお」であり、認識結果が「か？？えお」である。このように、多数決結果の一部にリジェクト文字を含み、認識結果の一部にもリジェクト文字を含み、かつリジェクト文字以外の文字で多数決結果と認識結果とに不一致がある場合、推定文字列生成部１３６は、多数決結果を推定文字列として生成してよい。また、この場合に、推定文字列生成部１３６は、多数決結果でのリジェクト文字を変換して、推定文字列として生成する。具体的に、推定文字列生成部１３６は、「あ＿うえお」を推定文字列として生成する。
【００８０】
ケース１１に関してさらに説明すると、推定文字列生成部１３６が多数決結果のリジェクト文字を変換した推定文字列を検証確定部１３８に出力すると、検証確定部１３８は、推定文字列に基づいて、実績文字列を抽出する。このとき、実績文字列の抽出が０件の場合には、推定文字列生成部１３６は、認識結果をさらに検証確定部１３８に出力してよい。検証確定部１３８は、さらに認識結果から生成された推定文字列に基づいて、実績文字列を抽出する。このとき、実績文字列の抽出が１件の場合には、多数決結果および認識結果ともにリジェクト文字を含んでいるため、類似率を算出しても確定文字列として正しい文字を認識している可能性が低下していることがある。よって、ケース１１では、認識結果に対する実績文字列の抽出が１件である場合には、検証確定部１３８は、文字認識装置１３０の処理を中断してもよい。さらに、実績文字列の抽出が２件以上の場合には、リジェクト文字を除いた実績文字列に対して、類似率を算出する。この場合、検証確定部１３８は、類似率の最も高い実績文字列を確定文字列として生成する。
【００８１】
ケース１２は、多数決結果が「？？？？？」であり、認識結果が「？？？？？」である。このように、多数決結果および認識結果がともに全部リジェクト文字である場合、推定文字列生成部１３６は、推定文字列を生成せず、文字認識装置１３０の処理を中断してよい。
【００８２】
このようにして、推定文字列生成部１３６は、推定文字列生成し、検証確定部１３８は、推定文字列とデータベース文字列とをマッチングさせ、確定文字列を生成する。なお、本実施形態において説明した上記のケースは、ユーザにより適宜ケースが定義されてよく、上記の例は一例に過ぎない。
【００８３】
（２．５．類似率の算出）
本項では、レーベンシュタイン距離を使用した類似率の算出に関して詳しく説明する。この類似率は、類似率を算出する評価文字と正解文字とを用いて算出する。ここでいう評価文字が推定文字列であり、正解文字が実績文字列である。
【００８４】
検証確定部１３８は、推定文字列にリジェクト文字を含まない場合には、推定文字列と実績文字列とをそのまま使用して、類似率を算出する。検証確定部１３８は、推定文字列にリジェクト文字を含む場合には、リジェクト文字を除いた推定文字列と実績文字列とを使用して、類似率を算出する。
【００８５】
具体的に説明するため、ユーザが書いた対象文字を「イライニン」としたときの類似率の算出を一例として説明する。推定文字列生成部１３６で生成された推定文字列が「１ラクニン」であり、実績文字列が「イライニン」とする。この時、検証確定部１３８は、推定文字列である「１ラクニン」が、実績文字列である「イライニン」になるまでの文字変換の数をカウントする。この回数が編集距離と呼ばれる。この場合、推定文字列中の「１」が実績文字列中の「イ」になるのに１回、推定文字列中の「ク」が実績文字列中の「イ」になるのに１回とカウントされ編集距離は、２となる。
【００８６】
検証確定部１３８は、この編集距離に加えて指数関数を使用することで、類似率を求める。検証確定部１３８は、例えば、自然対数の底を（編集距離／（−５））の値で累乗した値を類似率としてよい。上記具体例にて、自然対数の底であるネイピア数は２．７１８２であり、編集距離が２であるため、類似率は０．６７０３２（≒６７．０３％）となる。このようにして、検証確定部１３８は類似率を求めてよい。なお、係数の（−５）はユーザにより適宜設定されてよい。
【００８７】
検証確定部１３８は、上記具体例の他に、リジェクト文字を除いた推定文字列と実績文字列とを使用して、類似率を算出する場合がある。以下では、その場合に関して説明する。
【００８８】
具体的に説明するため、ユーザが書いた対象文字を「イライニンジロウタロウ」とし、「ジロウ」部分が取り消し線で消されたときの類似率の算出を一例として説明する。推定文字列生成部１３６で生成された推定文字列が「イライニン？？？タロウ」であり、ジロウ部分は認識不能であるためリジェクト文字を示す？により示されている。また、実績文字列が「イライニンタロウ」とする。
【００８９】
このとき検証確定部１３８は、リジェクト文字を認識して、リジェクト文字を削除して、リジェクト文字を含まない推定文字列と実績文字列とを用いて類似率を算出する。つまり、検証確定部１３８は、推定文字列である「イライニンタロウ」が、実績文字列である「イライニン▲タロウ」になるまでの文字変換の数をカウントする。実績文字列は、空白情報を含み、姓名の間が区別可能である。ここで、▲は空白であることを示している。この場合、推定文字列の「イライニンタロウ」が実績文字列の「イライニン▲タロウ」になるまでに空白を削除する編集が必要なため、編集距離は１である。こうして求められた編集距離を用いて、上記の具体例と同様に類似率を算出する。本具体例にて、自然対数の底であるネイピア数は２．７１８２であり、編集距離が１であるため、類似率は０．８１８７３（≒８１．８７％）となる。このようにして、検証確定部１３８は類似率を求めてよい。
【００９０】
検証確定部１３８は、上記で求めたような類似率が閾値以上である場合、最も類似率の高い実績文字列を確定文字列として生成する。つまり、検証確定部１３８は、複数の実績文字列が抽出される場合には、各実績文字列と推定文字列との類似率を算出して、最も類似率の高い実績文字列を確定文字列として生成する。閾値は、ユーザにより適宜決定されてよく、例えば８０％であってよい。８０％を閾値とすることで、検証確定部１３８は、より精度高く確定文字列を生成できる。
【００９１】
検証確定部１３８は、上記類似率と、推定文字列および実績文字列の生成過程と、を検証して、確定文字列と、確定文字列に関する情報と、を含む確定結果を出力する機能も有する。具体的には、以下の５パターンの確定結果の出力であってよい。確定文字列に関する情報とは、確定文字列に関するパラメータまたは値等の情報であってよい。
【００９２】
検証確定部１３８は、実績文字列の該当があり、かつ類似率が閾値以上である場合には、類似率の最も高い実績文字列を確定文字列として生成してよい。この場合、確定文字列と確定文字列に関する情報を確定結果として出力してよい。出力された確定結果に含まれる確定文字列は、新たに履歴データベースに登録されてもよい。
【００９３】
また、検証確定部１３８は、実績文字列の該当があり、かつ類似率が閾値未満であり、かつ推定文字列にリジェクト文字が無い場合には、類似率の最も高い実績文字列を確定文字列として生成してよい。この場合、確定文字列と確定文字列に関する情報とを確定結果として出力してよい。出力された確定結果に含まれる確定文字列は、新たに履歴データベースに登録されてもよい。
【００９４】
また、検証確定部１３８は、実績文字列の該当があり、かつ類似率が閾値未満であり、かつ推定文字列にリジェクト文字がある場合には、確定結果を出力しなくともよい。検証確定部１３８が確定結果を出力しない場合には、文字認識装置１３０が行う処理が中断され得る。
【００９５】
また、検証確定部１３８は、実績文字列の該当がなく、かつ推定文字列にリジェクト文字が無い場合には、推定文字列を確定文字列として生成してよい。この場合、検証確定部１３８は、確定文字列と確定文字列に関する情報とを確定結果として出力してよい。出力された確定結果に含まれる確定文字列は、新たに履歴データベースに登録されてもよい。
【００９６】
また、検証確定部１３８は、実績文字列の該当がなく、かつ推定文字列にリジェクト文字がある場合には、確定結果を出力しなくともよい。検証確定部１３８が確定結果を出力しない場合には、文字認識装置１３０が行う処理が中断され得る。
【００９７】
このようにして、文字認識装置１３０は確定文字列を生成する。また、生成された確定文字列は、様々な態様で、ユーザに呈示され得る。
【００９８】
（３．帳票を用いた確定文字列の生成）
以上までで、文字認識システムの詳細に関して説明した。本項では、銀行における帳票に書かれた文字を対象文字として、文字認識システムによる処理を行う一例を説明する。銀行にて使用される帳票には振込依頼書がある。
【００９９】
履歴データベースには、振込依頼書に記載される依頼人に関する情報が記憶されている。履歴データベースには、依頼人に関する情報を格納する依頼人マスタと受取人に関する情報を格納する受取人マスタが記憶されている。依頼人マスタに登録される情報とは、依頼人が過去為替取引をした履歴の情報、依頼人の氏名および電話番号等が含まれる。依頼人の氏名はカナで記憶されている。
【０１００】
また、受取人マスタには、一人の依頼人に対して、例えば、最大で９人の受取人を登録可能である。受取人マスタに登録される情報は、依頼人と同様に受取人の氏名および電話番号等が含まれ得る。受取人の氏名はカナで記憶されている。
【０１０１】
帳票に記載される項目は、依頼人の電話番号、依頼人の氏名カナ、科目、口座番号、受取人氏名カナ、振込銀行名カナ、振込支店名カナ、振込指定日等が挙げられる。文字認識システムはこれらの情報が手書きされた文字を認識する。
【０１０２】
依頼人の電話番号は、依頼人マスタから依頼人情報を検索する際に検索キーとして用いられる。依頼人の氏名カナは、電話番号により検索された依頼人マスタからデータベース文字列の取得が可能である。ここで一般に、数字のみからなる電話番号は、カナよりも文字認識の精度が高くなる。このため、電話番号を文字認識した結果に基づき依頼人マスタから取得した依頼人の氏名カナの文字列により、文字認識した依頼人の氏名カナを検証または置換することで精度を向上することが可能である。科目は、普通、当座、貯蓄、その他の科目種別を示しており、受取人マスタを検索する際に検索キーとして用いられる。受取人氏名カナ、振込銀行名カナ、振込支店名カナ、は、受取人マスタからデータベース文字列の取得が可能である。
【０１０３】
まず、文字読込エンジン１１０が帳票全体を読み込む。文字読込エンジン１１０が帳票に記載される対象文字を読み込む際には、文字読込エンジン１１０は文字の読込に不要な線などは削除して、文字を読込やすくする。
【０１０４】
文字読込エンジン１１０は、対象文字を項目毎にイメージに切り出して、記憶している文字の集合体である辞書と対象文字とを照合させて対象文字の読込結果を生成する。対象文字が数字である場合には、文字読込エンジン１１０は、読み込んだ数字の文字画像と辞書に記憶される数字とを照合させて、読込結果を生成する。対象文字がカナである場合には、文字読込エンジン１１０は、読み込んだカナの文字画像と辞書に記憶されるカナとを照合させて、読込結果を生成する。文字読込エンジン１１０は、対象文字が漢字である場合、読み込んだ漢字の文字画像と辞書に記憶される漢字とを照合して、カナに変換して読込結果を生成する。この時カナへの変換は、辞書中に１つまたは複数の漢字の組み合わせからなる単語と対応するカナの情報を予め記憶しておき、読み込んだ漢字の組み合わせと辞書中の単語とを比較し、一致する単語のカナを取得することによって行う。文字読込エンジン１１０は、対象文字が図形等によるマークである場合、読み込んだ図形の位置等を使用して、マーク変換を行い図形の位置に対応する数字を読込結果として生成する。あるいは、図形の位置に対応する文字列を読込結果として生成してもよい。例えば、科目については、マーク変換が行われ得る。
【０１０５】
次に、文字認識エンジン１２０は、対象文字を項目ごとにイメージに切り出して、機械学習の結果を用いて、認識結果を生成する。具体的には、対象文字が文字列であれば、１文字単位に分割して、それぞれの文字に対して、認識結果を生成する。文字認識エンジン１２０は、さらに、各文字のイメージを２値化する。具体的には、グレースケールあるいはモノクロで筆跡のある部分を黒として１とし、筆跡の無い部分を白として０とする。
【０１０６】
文字認識エンジン１２０は、２値化した情報から、機械学習の結果を用いて筆跡が近い文字を１文字単位で複数選択する。文字認識エンジン１２０は、選択した文字と選択した文字の確信度とを出力する。文字認識エンジン１２０は、閾値以上の確信度を示す文字を認識結果として出力する。文字認識エンジン１２０は、選択した文字が複数ある場合には、閾値以上でありかつ最も高い確信度を示す文字を認識結果として出力する。なお、文字認識エンジン１２０は、選択した文字の確信度が全て閾値未満である場合には、リジェクト文字として認識結果を出力する。閾値はユーザにより適宜設定されるが、例えば、８０％であってよい。
【０１０７】
以上のように得られた、文字読込エンジンの読込結果と文字認識エンジンの認識結果と、に基づいて、検証確定部１３８が推定文字列を生成し、推定文字列とデータベース文字列とをマッチングして、確定文字列を生成する。
【０１０８】
（依頼人の電話番号に対する適用例）
具体的に、依頼人の電話番号に対して、文字認識システムを適用する。この場合、文字認識システムに基づいて、確定された確定文字列である電話番号を用いて、依頼人のマスタ情報を特定する。
【０１０９】
例えば、依頼人の電話番号を、文字読込エンジン１１０と文字認識エンジン１２０とが読み込んで、読込結果と認識結果とを出力する。文字認識装置１３０は、これらの読込結果と認識結果を取得する。文字認識装置１３０は、読込結果と認識結果とを用いて、推定文字列生成部１３６にて、推定文字列を生成する。推定文字列は、多数決結果を優先的に選択して、検証確定部１３８に出力する。
【０１１０】
ここで、検証確定部１３８が、多数決結果に基づいて、データベース文字列から実績文字列を抽出する。抽出された実績文字列が、１件である場合には、検証確定部１３８は、さらに推定文字列と実績文字列との類似率を求める。類似率が８０％以上であれば、認識結果を使用することなく、多数決結果がそのまま確定文字列として生成される。一方、類似率が８０％未満であれば、推定文字列生成部１３６から認識結果が新たに検証確定部１３８に出力され、検証確定部１３８は、認識結果に基づいて、データベース文字列から実績文字列を抽出する。そして、類似率を新たに求める。
【０１１１】
また、検証確定部１３８が、多数決結果に基づいて、データベース文字列から実績文字列を抽出し、抽出された実績文字列が２件以上である場合を説明する。この場合には、検証確定部１３８は、多数決結果に基づいた実績文字列の抽出と、認識結果に基づいて実績文字列の抽出とを行い、抽出されたすべての実績文字列に対して、類似率の算出を行う。この場合には、類似率の最も高かった実績文字列が、確定文字列として生成される。
【０１１２】
検証確定部１３８における実績文字列の抽出は、例えば、推定文字列生成部１３６が依頼人の電話番号を、「０９０？？？？？？？？」と生成した場合、検証確定部１３８は、変換された「０９０＿＿＿＿＿＿＿＿」を履歴データベースから検索し、実績文字列を抽出する。このように、検証確定部１３８では、０９０から始まる任意の８文字を含む実績文字列を抽出する。例えば、２件の実績文字列が抽出されれば、その２件に対して、検証確定部１３８が、類似率を算出する。
【０１１３】
リジェクト文字を含まず、実績文字列が抽出されない場合には、検証確定部１３８は、文字認識装置１３０における処理を中断してよい。処理が中断されたことは、表示装置１４０等でユーザへ呈示され得る。また、リジェクト文字を含まず、実績文字列が抽出されたが類似率が８０％未満である場合にも、検証確定部１３８は、文字認識装置１３０における処理を中断してよい。
【０１１４】
（依頼人の電話番号、受取人の口座の科目と番号とに対する適用例）
上記の適用例では、文字認識システムが依頼人の電話番号を確定させる例に関して説明した。しかしながら、同じ電話番号に対して、複数の口座が登録されていたりすることがある。この時には、電話番号以外の口座情報等に対して、文字認識システムを適用して、確定文字列を生成して、口座を特定することができる。
【０１１５】
例えば、依頼人の電話番号に加え、受取人の口座の科目と番号と、に対して、文字認識システムを適用する。履歴データベースには、具体的に、銀行コード、銀行名カナ、銀行名漢字、支店コード、支店名カナ、支店名漢字等が登録されている。文字認識システムは、依頼人の電話番号に加え、受取人の口座の科目と番号と、を文字認識して、履歴データベースのデータベース文字列から実績文字列を抽出する。さらに、文字認識システムは、依頼人の電話番号と受取人の口座の科目および番号等の他に、帳票に記載されたカナを文字認識する。具体的には、文字認識システムは、銀行名カナ、支店名カナ受取人名カナ等に対して、上記の適用例と同様に、推定文字列を生成し、履歴データベース（全銀ファイルとも称する）から実績文字列を抽出して、類似率を算出する。言い換えると、銀行名漢字、支店名漢字に関しては、文字認識システムにより、類似率等は算出されない。
【０１１６】
このように、文字認識システムは、例えば、銀行の帳票に適用され得る。銀行の帳票に適用されることにより、銀行の行員が帳票に記載されたユーザの筆跡から、コンピュータシステムに入力された文字列を再度確認する負担をより軽減できる。
【０１１７】
（４．ハードウェア構成例）
本発明の上記実施形態に係る文字認識装置１３０を主とした情報処理システム１０００のハードウェア構成について説明する。
【０１１８】
図７は、本発明の実施形態に係る文字認識装置１３０のハードウェアを構成し得る情報処理装置９００のハードウェア構成を示す図である。情報処理装置９００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０３と、ホストバス９０４と、ブリッジ９０５と、外部バス９０６と、インタフェース９０７と、入力装置９０８と、出力装置９０９と、ストレージ装置９１０と、通信装置９１１と、を備える。
【０１１９】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、各種プログラムに従って情報処理装置９００内の動作全般を制御する。また、ＣＰＵ９０１は、マイクロプロセッサであってもよい。ＲＯＭ９０２は、ＣＰＵ９０１が使用するプログラムや演算パラメータ等を記憶する。ＲＡＭ９０３は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。これらはＣＰＵバス等から構成されるホストバス９０４により相互に接続されている。例えば、ＣＰＵ９０１は、図１に示す文字認識装置１３０の多数決結果出力部１３４、推定文字列生成部１３６、検証確定部１３８の機能を実行し得る。
【０１２０】
ホストバス９０４は、ブリッジ９０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バス等の外部バス９０６に接続されている。なお、必ずしもホストバス９０４、ブリッジ９０５および外部バス９０６を分離構成する必要はなく、１つのバスにこれらの機能を実装してもよい。
【０１２１】
入力装置９０８は、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチおよびレバー等ユーザが情報を入力するための入力手段と、ユーザによる入力に基づいて入力信号を生成し、ＣＰＵ９０１に出力する入力制御回路等から構成されている。情報処理装置９００を操作するユーザは、この入力装置９０８を操作することにより、情報処理装置９００に対して各種のデータを入力したり処理動作を指示したりすることができる。例えば、入力装置９０８は、図１に示す表示装置１４０に搭載され、ユーザ等の支持を文字認識装置１３０等に出力する等の機能を実行し得る。
【０１２２】
出力装置９０９は、例えば、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイ装置、液晶ディスプレイ（ＬＣＤ）装置、ＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）装置、ランプ等の表示装置およびスピーカ等の音声出力装置を含む。例えば、出力装置９０９は、図１に示す表示装置１４０の機能を実行し得る。
【０１２３】
ストレージ装置９１０は、データ格納用の装置である。ストレージ装置９１０は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置等を含んでもよい。ストレージ装置９１０は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）で構成される。このストレージ装置９１０は、ハードディスクを駆動し、ＣＰＵ９０１が実行するプログラムや各種データを格納する。例えば、ストレージ装置９１０は、図１に示す文字認識装置１３０が取得部１３２により取得した各種情報を記憶する機能を実行し得る。
【０１２４】
通信装置９１１は、例えば、ネットワークに接続するための通信デバイス等で構成された通信インタフェースである。また、通信装置９１１は、無線通信または有線通信のどちらに対応してもよい。例えば、通信装置９１１は、図１に示す文字認識装置１３０および文字読込エンジン１１０間の各種情報の送受、文字認識装置１３０および文字認識エンジン１２０間の各種情報の送受、文字認識装置１３０および表示装置１４０間の各種情報の送受の機能を実行し得る。
【０１２５】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【０１２６】
１１０    文字読込エンジン
１１２    第１読込エンジン
１１４    第２読込エンジン
１１６    第３読込エンジン
１２０    文字認識エンジン
１３０    文字認識装置
１３２    取得部
１３４    多数決結果出力部
１３６    推定文字列生成部
１３８    検証確定部
１４０    表示装置
【図１】
2020095374.tif 000003
【図２】
2020095374.tif 000004
【図３】
2020095374.tif 000005
【図４】
2020095374.tif 000006
【図５】
2020095374.tif 000007
【図６】
2020095374.tif 000008
【図７】
2020095374.tif 000009