知識補正プログラム、知識補正装置および知識補正方法
【課題】文字が分離して文字認識された場合にも、適正な文字列の特定精度を向上すること。
【解決手段】誤読候補情報記憶手段1aは、複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を各補正文字列に対応付けて定義した誤読候補情報を記憶する。認識結果文字列生成手段1bは、画像情報2に含まれる文字列の候補として認識結果文字列3を生成する。文字列比較手段1cは、誤読候補情報記憶手段1aに記憶された誤読候補情報を参照して、各誤読候補文字列のうち、認識結果文字列3に最も一致する誤読候補文字列を特定し、この誤読候補文字列に対応する補正文字列4を特定する。出力手段1dは、文字列比較手段1cが特定した補正文字列4を出力する。
【解決手段】誤読候補情報記憶手段1aは、複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を各補正文字列に対応付けて定義した誤読候補情報を記憶する。認識結果文字列生成手段1bは、画像情報2に含まれる文字列の候補として認識結果文字列3を生成する。文字列比較手段1cは、誤読候補情報記憶手段1aに記憶された誤読候補情報を参照して、各誤読候補文字列のうち、認識結果文字列3に最も一致する誤読候補文字列を特定し、この誤読候補文字列に対応する補正文字列4を特定する。出力手段1dは、文字列比較手段1cが特定した補正文字列4を出力する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像情報に含まれる文字列を認識する知識補正プログラム、知識補正装置および知識補正方法に関する。
【背景技術】
【0002】
従来、帳票を撮像して取得した画像に含まれる文字列を識別する文字認識装置が用いられている。文字認識装置を用いることで、帳票に記入された文字列の文字コードデータを効率的に取得することができる。例えば、金融機関の窓口では、顧客が帳票に記入した口座番号、氏名および住所などの情報が文字認識装置によって読み取られている。読み取られた情報は、金融取引のための入力データとして利用できる。
【0003】
文字認識装置は、例えば以下のようにして画像に含まれる文字列を特定する。
文字認識装置は、読み取りを行う対象文字のテンプレートを予め記憶している。文字認識装置は、文字列の認識対象とする画像を取得すると、その画像に含まれる文字を文字単位で抽出する。そして、文字認識装置は、画像から抽出した文字の特徴(例えば、線の傾き、形状、曲率および面積など)を取得する。文字認識装置は、この特徴とテンプレートの文字の特徴とを照合して、抽出した文字を特定する。文字認識装置は、画像に含まれる文字ごとに、このような処理を順次行って記入者が記入した文字列を特定する。
【0004】
ここで、文字認識では、文字に誤認識があると、正しい情報を得るためにオペレータが目視で確認作業を行うなどの必要が生じ、情報の取得効率が低減する。このため、文字の誤認識を軽減することが望まれる。
【0005】
これに対し、例えば、所定の項目(例えば、住所)に記入されうる文字列を予め登録しておき、この文字列(以下、登録文字列という)と画像から読み取った文字列の候補(以下、認識結果文字列という)とを照合して、帳票に記入された文字列を特定する方法(知識補正)が知られている(例えば、特許文献1参照)。具体的な方法として、金融機関の名称および該当の金融機関の支店名を組み合わせて生成した登録文字列と認識結果文字列とを照合することで、文字列を特定する方法が知られている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平04−188383号公報
【特許文献2】特開平09−097312号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、上記特許文献1,2に記載の方法を用いたとしても、記入時に記入者が意図した内容と認識結果文字列とが異なるほど、文字列の特定精度が低減する。例えば、記入者が“読取”という文字列を意図して記入したにも関わらず、部首間の間隔が広いなどの理由から認識結果文字列として“言売耳又”が取得されることが考えられる。この場合、登録文字列に“読取”が存在していたとしても、文字数の相違(認識結果文字列が4文字であるのに対し、登録文字列は2文字である)や、文字の特徴そのものの相違によって、適正な文字列を特定することが困難となる。
【0008】
本発明はこのような点に鑑みてなされたものであり、文字が分離して文字認識された場合にも、適正な文字列の特定精度を向上することができる知識補正プログラム、知識補正装置および知識補正方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記課題を解決するために、知識補正プログラムが提供される。この知識補正プログラムを実行するコンピュータは、文字列比較手段および出力手段として機能する。文字列比較手段は、複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を各補正文字列に対応付けて定義した誤読候補情報を記憶する誤読候補情報記憶手段に記憶された誤読候補情報を参照して、各誤読候補文字列のうち、認識結果文字列生成手段により画像情報に含まれる文字列の候補として生成された認識結果文字列に最も一致する誤読候補文字列を特定し、この誤読候補文字列に対応する補正文字列を特定する。出力手段は、文字列比較手段が特定した補正文字列を出力する。
【0010】
また、上記課題を解決するために、上記知識補正プログラムを実行するコンピュータと同様の機能を有する知識補正装置が提供される。また、上記課題を解決するために、上記知識補正プログラムを実行するコンピュータと同様の処理を行う知識補正方法が提供される。
【発明の効果】
【0011】
上記知識補正プログラム、知識補正装置および知識補正方法によれば、文字が分離して読み取られた場合にも、適正な文字列の特定精度を向上することができる。
【図面の簡単な説明】
【0012】
【図1】本実施の形態の概要を示す図である。
【図2】コンピュータのハードウェア構成を示す図である。
【図3】コンピュータの機能構成を示す図である。
【図4】帳票画像を例示する図である。
【図5】誤読候補情報記憶部が記憶するテーブルの例を示す図である。
【図6】都道府県テーブルのデータ構造例を示す図である。
【図7】認識結果文字列テーブルのデータ構造例を示す図である。
【図8】比較文字列テーブルの第1のデータ構造例を示す図である。
【図9】代替認識結果文字列テーブルのデータ構造例を示す図である。
【図10】比較文字列テーブルの第2のデータ構造例を示す図である。
【図11】調整定数テーブルのデータ構造例を示す図である。
【図12】確度定義テーブルのデータ構造例を示す図である。
【図13】文字認識処理の手順を示すフローチャートである。
【図14】比較文字列生成処理の手順を示す第1のフローチャートである。
【図15】比較文字列生成処理の手順を示す第2のフローチャートである。
【図16】代替相違度合計の算出処理の手順を示すフローチャートである。
【図17】評価結果の第1の具体例を示す図である。
【図18】評価結果の第2の具体例を示す図である。
【図19】文字認識結果確認ウィンドウの表示例を示す図である。
【発明を実施するための形態】
【0013】
以下、本実施の形態を図面を参照して詳細に説明する。
図1は、本実施の形態の概要を示す図である。コンピュータ1は、知識補正プログラムを実行し、画像情報2に含まれる文字列を認識する。画像情報2は、例えば撮像装置により帳票が撮像されて生成される。コンピュータ1は、誤読候補情報記憶手段1a、認識結果文字列生成手段1b、文字列比較手段1cおよび出力手段1dを有する。
【0014】
誤読候補情報記憶手段1aは、複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を各補正文字列に対応付けて定義した誤読候補情報を記憶する。
【0015】
認識結果文字列生成手段1bは、画像情報2に含まれる文字列の候補として認識結果文字列3を生成する。
文字列比較手段1cは、誤読候補情報記憶手段1aに記憶された誤読候補情報を参照して、認識結果文字列生成手段1bが生成した認識結果文字列3と誤読候補情報に登録された各誤読候補文字列とを比較・評価する。そして、文字列比較手段1cは、認識結果文字列3に最も一致する誤読候補文字列を特定し、この誤読候補文字列に対応する補正文字列4を特定する。
【0016】
出力手段1dは、文字列比較手段1cが特定した補正文字列4を出力する。
コンピュータ1によれば、文字列比較手段1cにより、誤読候補情報記憶手段1aに記憶された誤読候補情報が参照されて、各誤読候補文字列のうち、認識結果文字列生成手段1bが生成した認識結果文字列3に最も一致する誤読候補文字列が特定される。文字列比較手段1cにより、誤読候補情報に基づいて、特定された誤読候補文字列に対応する補正文字列4が特定される。出力手段1dにより、文字列比較手段1cが特定した補正文字列4が出力される。
【0017】
これにより、文字が分離して読み取られた場合にも、文字列の特定精度の向上を図ることができる。具体的には、誤読候補情報記憶手段1aが記憶する誤読候補情報には、例えば補正文字列4である“神奈川”という文字列に対応付けて、“神奈ノ11”や“神奈1リ”などの誤読候補文字列が定義される。この例では、“ノ11”や“1リ”が“川”に対する分離文字列に対応する。このとき、認識結果文字列生成手段1bが認識結果文字列3として、例えば“神奈111”を生成したとする。この場合、文字列比較手段1cは、誤読候補情報記憶手段1aに記憶された誤読候補情報を参照して、認識結果文字列3(“神奈111”)に最も一致する誤読候補文字列として、例えば“神奈ノ11”を特定する。そして、認識結果文字列生成手段1bは、誤読候補情報を参照して、誤読候補文字列“神奈ノ11”に対応付けられた“神奈川”という文字列を補正文字列4として特定する。このように、文字列比較手段1cは、誤読候補情報記憶手段1aに記憶された誤読候補情報を参照して補正文字列を特定することで、認識結果文字列に分離文字列が含まれている場合であっても、適正な補正文字列の特定精度を向上することができる。なお、誤読候補情報記憶手段1aには、補正文字列に含まれる文字のうち、分離文字列として認識され易い文字を、該当の分離文字列に置き換えた文字列が誤読候補文字列として予め登録される。
【0018】
ところで、コンピュータ1は、例えば金融機関などの窓口業務で、顧客が帳票に記入した文字を認識して、金融取引などの入力データとする場合に有用である。以下では、コンピュータ1をこのような用途に用いる場合を例に採り、更に具体的に説明する。
【0019】
図2は、コンピュータのハードウェア構成を示す図である。コンピュータ100は、金融機関の窓口などに設置され、オペレータによる帳票の情報の入力に用いられる。コンピュータ100は、CPU(Central Processing Unit)101、RAM(Random Access Memory)102、HDD103、グラフィック処理装置104、入力インタフェース105,106および通信インタフェース107を有する。
【0020】
CPU101は、コンピュータ100全体の動作を制御する。
RAM102は、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションソフトウェア(以下、アプリケーションという)のプログラムの少なくとも一部を一時的に記憶する。また、RAM102は、CPU101による処理に必要な各種データを記憶する。
【0021】
HDD103は、OSのプログラム、アプリケーションのプログラムを記憶する。また、HDD103は、CPU101による処理に必要な各種データを記憶する。なお、HDD103の代わりに例えばSSD(Solid State Drive)などの他の不揮発性の記憶装置を用いることもできる。
【0022】
グラフィック処理装置104は、モニタ11と接続される。グラフィック処理装置104は、CPU101からの命令に従って画像をモニタ11の画面に表示させる。
入力インタフェース105は、キーボード12とマウス13と接続される。入力インタフェース105は、キーボード12やマウス13から送られてくる信号をCPU101に送信する。
【0023】
入力インタフェース106は、撮像装置14と接続される。入力インタフェース106は、撮像装置14が帳票を撮像して生成した帳票画像を取得する。そして、入力インタフェース106は、CPU101の処理に応じて取得した帳票画像をRAM102やHDD103に格納する。
【0024】
通信インタフェース107は、ネットワーク20と接続され、他の情報処理装置との間でデータの送受信を行う。
図3は、コンピュータの機能構成を示す図である。コンピュータ100は、画像取得部110、認識結果文字列生成部120、誤読候補情報記憶部130、制御情報記憶部140、比較文字列生成部150、代替相違度算出部160、補正文字列特定部170および出力部180を有する。
【0025】
画像取得部110は、撮像装置14が帳票を撮像して生成した帳票画像を取得する。画像取得部110は、取得した帳票画像を認識結果文字列生成部120に出力する。
認識結果文字列生成部120は、画像取得部110から取得した帳票画像に含まれる文字を項目別(都道府県名や姓名など)に読み取り、読み取った文字に基づいて複数の認識結果文字列を生成する。認識結果文字列生成部120は、例えば、次のような手順により認識結果文字列を生成する。
【0026】
(1)認識結果文字列生成部120は、帳票画像に含まれる所定の項目の文字列のうち、1文字分と考えられる所定の領域を読み取って、該当の文字に対する特徴を取得する。ここで、特徴とは、例えば、画像に含まれる線の位置や線の傾きの度合いなどを評価したものである。
【0027】
(2)認識結果文字列生成部120は、図示しない読取文字テンプレート記憶部に予め記憶された読取対象文字のテンプレート(以下、テンプレート文字という)を参照して、帳票画像から抽出した文字の特徴と、各テンプレート文字の特徴とを比較する。認識結果文字列生成部120は、比較の結果、帳票画像から抽出した特徴と各テンプレート文字の特徴との食い違いの度合いを示す相違度を算出する。相違度の算出には、例えば、ベイズ法(Bayesian method)を採用することができる。相違度は、値が小さいほど、食い違いの度合いも小さいものとして求められる。すなわち、各テンプレート文字のうち、相違度が小さいものほど、読み取りの候補としての優先度は高い。
【0028】
(3)認識結果文字列生成部120は、帳票画像から抽出した各文字に対し各テンプレート文字について算出した相違度の小さいもの同士を順に組み合わせて、認識結果文字列を生成する。例えば、各文字につき最も相違度の小さいもの同士を組み合わせたものが最も優先度の高い第1候補の認識結果文字列となる。
【0029】
認識結果文字列生成部120は、このようにして、帳票画像から読み取った各文字の特徴から、複数の認識結果文字列を生成する。認識結果文字列生成部120は、生成した各認識結果文字列を制御情報記憶部140に格納する。
【0030】
誤読候補情報記憶部130は、認識結果文字列に含まれうる分離文字列を考慮した複数の誤読候補文字列を定義した誤読候補情報を記憶する。ここで、分離文字列とは、帳票に記入された文字の部首間の間隔が広いなどの理由で、1文字として認識されるべき文字が2文字以上の複数の文字として認識されてしまった文字列を示す。例えば、“神”という字に対しては、“ネ申”という分離文字列が考えられる。また、誤読候補情報には、帳票において該当の認識結果文字列が記入された項目に応じて、実際に記入されうる補正文字列が各誤読候補文字列に対応付けて登録されている。ここで、実際に記入されうる補正文字列とは、例えば、都道府県名という項目であれば、現実に存在する都道府県名を示す文字列である。
【0031】
制御情報記憶部140は、認識結果文字列生成部120が生成した認識結果文字列を記憶する。また、制御情報記憶部140は、比較文字列生成部150が生成した認識結果文字列との比較に用いる比較文字列を記憶する。また、制御情報記憶部140は、比較文字列生成部150が抽出した複数の誤読候補文字列と、それに対応する認識結果文字列と、を比較する際に用いる制御情報を記憶する。制御情報には、比較の結果を数値評価する際に用いる各種条件などが含まれる。
【0032】
比較文字列生成部150は、認識結果文字列生成部120による各項目の認識結果文字列の生成が完了すると、制御情報記憶部140に記憶された各項目の認識結果文字列から1つ(例えば、都道府県という項目に含まれる“神奈ノ11”)を取得する。比較文字列生成部150は、誤読候補情報記憶部130を参照して、取得した認識結果文字列に対応する誤読候補情報を取得する。更に、比較文字列生成部150は、誤読候補情報記憶部130に記憶された誤読候補情報を参照して、該当の認識結果文字列に含まれる文字数と一致または文字数±n(例えば、n=1)の範囲で一致する複数の誤読候補文字列を抽出する。そして、比較文字列生成部150は、取得した各誤読候補文字列に基づいて認識結果文字列との比較に用いる複数の比較文字列を生成する。
【0033】
比較文字列生成部150は、各誤読候補文字列につき以下の各場合に応じた比較文字列を生成する。
(第1の場合)比較文字列生成部150は、認識結果文字列の有効文字数が該当の誤読候補文字列の有効文字数と等しい場合である。この場合、該当の誤読候補文字列を比較文字列とする。
【0034】
ここで、有効文字数とは、各文字列のうち、項目を示す文字または文字列(“都”や“県”など)を除いた文字数をいうものとする。なお、認識結果文字列などで“都”や“県”などの文字が含まれない場合には、認識結果文字列の文字数が有効文字数となる。有効文字数は、特許請求の範囲における“文字数”に対応する。
【0035】
(第2の場合)比較文字列生成部150は、認識結果文字列の有効文字数が該当の誤読候補文字列の有効文字数よりも小さい場合である。この場合、該当の誤読候補文字列と認識結果文字列との文字差の分だけ、誤読候補文字列から文字を削除した文字列を比較文字列として生成する。例えば、認識結果文字列“神奈ノ11”(有効文字数が5)に対して、誤読候補文字列“ネ申奈111”(有効文字数が6)が抽出されている場合、“ネ申奈111”から(6−5=)1文字を除いた次の文字列が生成される。すなわち、先頭の文字を外した文字列である“申奈111”、最後尾の文字を外した文字列である“ネ申奈11”および中間の文字を外した文字列である“ネ奈111”、“ネ申111”、“ネ申奈11”が比較文字列として生成される。このようにして、誤読候補文字列の有効文字数が認識結果文字列の有効文字数よりも大きい場合には、比較文字列の有効文字数と認識結果文字列の有効文字数とが一致するようにする。これにより、両文字列の対応する位置にある文字同士(例えば、先頭から2文字目同士など)を容易に比較できるようになる。
【0036】
(第3の場合)比較文字列生成部150は、認識結果文字列の有効文字数が該当の誤読候補文字列の有効文字数よりも大きい場合である。この場合、該当の誤読候補文字列と認識結果文字列との文字差の分だけ、認識結果文字列から文字を削除した文字列を代替認識結果文字列として生成する。そして、比較文字列生成部150は、生成した各代替認識結果文字列を制御情報記憶部140に格納する。例えば、認識結果文字列“神奈ノ11”(有効文字数が5)に対して、誤読候補文字列“神奈11”(有効文字数が4)が抽出されている場合、“神奈ノ11”から(5−4=)1文字を除いた次の文字列が生成される。すなわち、先頭の文字を外した文字列である“奈ノ11”、最後尾の文字を外した文字列である“神奈ノ1”および中間の文字を外した文字列である“神ノ11”、“神奈11”が代替認識結果文字列として生成される。この場合、比較文字列生成部150は、該当の誤読候補文字列を比較文字列とする。このようにして、認識結果文字列の有効文字数が誤読候補文字列の有効文字数よりも大きい場合には、認識結果文字列の有効文字数と比較文字列の有効文字数とが一致するようにする。これにより、上記(第2の場合)と同様に、両文字列の対応する位置にある文字同士を容易に比較できるようになる。なお、代替認識結果文字列は、該当の文字差に関して一度だけ生成されればよい。例えば、“神奈ノ11”に対して有効文字数差1の分の代替認識結果文字列が1度生成されれば、その情報を保持することで、次に誤読候補文字列として有効文字数が4の文字列を抽出した際に、代替認識文字列の生成を行う必要はなくなる。
【0037】
(第4の場合)比較文字列生成部150は、認識結果文字列の有効文字数が該当の誤読候補文字列に対応する補正文字列の有効文字数よりも小さい場合である。この場合、該当の補正文字列と認識結果文字列との文字差の分だけ、補正文字列から文字を除外した文字列を比較文字列として生成する。例えば、認識結果文字列の有効文字部分が“神剛”(有効文字数が2)に対して、誤読候補文字列に対応する補正文字列が“神奈川”(有効文字数が3)である場合、比較文字列として、“神奈川”から(3−2=)1文字を除いた次の文字列が生成される。すなわち、先頭の文字を外した文字列である“奈川”、最後尾の文字を外した文字列である“神奈”および中間の文字を外した文字列である“神川”が比較文字列として生成される。統合文字の例としては、“神奈川”という認識対象文字に対して、先に例示した認識結果文字列“神剛”に含まれる“剛”(“奈川”が統合された統合文字)が考えられる。このようにして、補正文字列の有効文字数の方が、認識結果文字列の有効文字数よりも大きい場合に、比較文字列の有効文字数と認識結果文字列の有効文字数とが一致するものを生成する。このため、統合文字が含まれている場合にも、認識結果文字列と比較文字列との適合確率が向上する。これにより、認識結果文字列が、2文字が1文字に統合された統合文字を含む場合にも、この統合文字に対する補正を行うことができる。
【0038】
比較文字列生成部150は、生成した各比較文字列と、各比較文字列の比較文字数(有効文字数から削った分の文字数を減算したもの)と、該当の比較文字列に対応する補正文字列と、を制御情報記憶部140に格納する。
【0039】
代替相違度算出部160は、比較文字列生成部150による比較文字列の生成が完了すると、制御情報記憶部140に記憶された各比較文字列と対応する比較文字数とを取得する。そして、代替相違度算出部160は、認識結果文字列(または代替認識結果文字列)と各比較文字列とを比較する。代替相違度算出部160は、比較の結果、認識結果文字列生成部120が認識結果文字列に含まれる各文字について算出した相違度と、制御情報記憶部140に記憶された制御情報と、に基づいて、認識結果文字列(または代替認識結果文字列)の各文字に対する各比較文字列の各文字の代替相違度を決定する。ここで、代替相違度とは、認識結果文字列生成部120が算出した相違度と制御情報記憶部140に記憶された制御情報とに基づいて算出されるものであり、認識結果文字列の各文字と各比較文字列の各文字との食い違いの度合いを示す値である。すなわち、代替相違度は、両文字列の食い違いの度合いを“文字”単位で示す値である。相違度は、値が小さいほど、食い違いの度合いも小さいものとして求められる。
【0040】
また、代替相違度算出部160は、算出した各文字の代替相違度に基づいて、認識結果文字列(または代替認識結果文字列)に対する各比較文字列の食い違いの度合いを示す値(評価値)を算出する。すなわち、評価値は食い違いの度合いを“文字列”単位で示す値である。評価値は、値が小さいほど、食い違いの度合いも小さいものとして求められる。具体的には、まず、代替相違度算出部160は、比較文字列に含まれる各文字の代替相違度の和を求める。そして、代替相違度算出部160は、代替相違度の和を該当の比較文字列に対応する比較文字数で割った商を、その比較文字列の評価値とする。代替相違度算出部160は、算出した各比較文字列の評価値を補正文字列特定部170に出力する。
【0041】
補正文字列特定部170は、代替相違度算出部160から取得した評価値に基づいて、最も優先度の高い(すなわち、最も評価値の小さい)第1候補の誤読候補文字列を特定する。補正文字列特定部170は、誤読候補情報記憶部130に記憶された誤読候補情報を参照して、特定した第1候補の誤読候補文字列に対応する補正文字列を取得する。補正文字列特定部170は、取得した補正文字列を出力部180に出力する。
【0042】
出力部180は、補正文字列特定部170から取得した補正文字列を示す情報をモニタ11に表示させる。
なお、比較文字列生成部150、代替相違度算出部160、補正文字列特定部170の処理は、各項目単位で順次実行される。例えば、まず、都道府県名を示す項目について上記各部により補正文字列が特定される。そして、次に、市区町村名を示す項目について上記各部により補正文字列が特定される。更に、次に、地区・番地を示す項目について上記各部により補正文字列が特定される。
【0043】
このようにして、コンピュータ100は、全ての項目について補正文字列を特定し、その結果をオペレータに通知する。
図4は、帳票画像を例示する図である。帳票画像200には、領域211,212,221,222,231,232,・・・が設けられている。帳票画像200は、金融機関に設置された帳票に顧客が文字列を記入し、その帳票を撮像装置14が撮像することで生成される。そして、画像取得部110は、撮像装置14から帳票画像200を取得する。画像取得部110は、取得した帳票画像200を認識結果文字列生成部120に出力する。
【0044】
領域211は、都道府県名を示す文字列が記入された領域である。
領域212は、市区町村名を示す文字列が記入された領域である。
領域221は、姓を示す文字列が記入された領域である。
【0045】
領域222は、名を示す文字列が記入された領域である。
領域231は、銀行名を示す文字列が記入された領域である。
領域232は、支店名を示す文字列が記入された領域である。
【0046】
認識結果文字列生成部120は、生成した各認識結果文字列につき領域211,212,221,222,231,232,・・・の帳票上における読み取り位置によって、各認識結果文字列が何れの項目に該当するものであるかを特定することができる。認識結果文字列生成部120は、領域211に記入された文字列を都道府県の項目に該当するものと特定する。また、認識結果文字列生成部120は、領域212に記入された文字列を市区町村の項目に該当するものと特定する。以下、同様にして、認識結果文字列生成部120は、姓名や銀行名、支店名などの項目を特定する。
【0047】
図5は、誤読候補情報記憶部が記憶するテーブルの例を示す図である。誤読候補情報記憶部130には、都道府県テーブル131、市区町村テーブル132、地区テーブル133、姓テーブル134、・・・が予め格納される。都道府県テーブル131、市区町村テーブル132、地区テーブル133、姓テーブル134、・・・は、誤読候補情報に対応するものである。
【0048】
都道府県テーブル131は、都道府県名として記入されうる補正文字列と、その都道府県名に対する分離文字列を含む誤読候補文字列と、を対応付けて定義したものである。
市区町村テーブル132は、市区町村名として記入されうる補正文字列と、その市区町村名に対する分離文字列を含む誤読候補文字列と、を対応付けて定義したものである。
【0049】
地区テーブル133は、地区名として記入されうる補正文字列と、その地区名に対する分離文字列を含む誤読候補文字列と、を対応付けて定義したものである。
姓テーブル134は、姓として記入されうる補正文字列と、その姓に対する分離文字列を含む誤読候補文字列と、を対応付けて定義したものである。
【0050】
都道府県テーブル131、市区町村テーブル132、地区テーブル133、姓テーブル134、・・・には、分離文字列を含む誤読候補文字列が予め登録される。
図6は、都道府県テーブルのデータ構造例を示す図である。都道府県テーブル131には、誤読候補文字列を示す項目、補正文字列を示す項目および有効文字数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つ誤読候補文字列に関する情報を示す。なお、市区町村テーブル132、地区テーブル133、姓テーブル134、・・・に関しても同様のデータ構成となる。
【0051】
誤読候補文字列を示す項目には、該当の補正文字列に対する誤読候補文字列が設定される。補正文字列を示す項目には、現実に存在する都道府県名を示す文字列が設定される。有効文字数を示す項目には、誤読候補文字列のうち、区分を示す文字または文字列(“都”や“県”など)を除いた部分の文字数を示す値が設定される。
【0052】
都道府県テーブル131には、例えば、誤読候補文字列が“ネ申奈111県”、補正文字列が“神奈川県”、有効文字数が“6”という情報が設定される。これは、補正文字列“神奈川県”に分離文字列を含めた誤読候補として“ネ申奈111県”が認識結果文字列に含まれうることを示しており、“ネ申奈111県”の“県”を除いた部分の文字数が“6”であることを示している。
【0053】
図7は、認識結果文字列テーブルのデータ構造例を示す図である。認識結果文字列テーブル141a,141b,141c,・・・は、認識結果文字列生成部120により、帳票画像200に含まれる項目ごとに生成されて制御情報記憶部140に格納される。なお、以下では、認識結果文字列テーブル141aに関してのみ説明するが、認識結果文字列テーブル141b,141c,・・・に関しても同様の構成である。
【0054】
認識結果文字列テーブル141aは、都道府県を示す項目に対応付けられている。認識結果文字列テーブル141aには、優先順位を示す項目および認識結果文字列を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの認識結果文字列に関する情報を示す。
【0055】
優先順位を示す項目には、該当の認識結果文字列の優先度を示す情報が設定される。認識結果文字列を示す項目には、帳票画像200から読み取られた認識結果文字列が設定される。
【0056】
認識結果文字列テーブル141aには、例えば、優先順位が“第1候補”、認識結果文字列が“神奈ノ11”という情報が設定される。また、認識結果文字列に含まれる各文字のテンプレート文字との相違を示す相違度が設定される。例えば、“神”という文字に対して、相違度“135”が設定される。また、“奈”という文字に対して、相違度“157”が設定される。このように、認識結果文字列に含まれる全ての文字に対して相違度が設定される。
【0057】
なお、認識結果文字列生成部120は、各認識結果文字列に含まれる全ての文字について、相違度が最も小さいもの同士を組み合わせた認識結果文字列の優先順位を高く設定する。
【0058】
図8は、比較文字列テーブルの第1のデータ構造例を示す図である。比較文字列テーブル142aは、比較文字列生成部150によって生成され、制御情報記憶部140に格納される。比較文字列テーブル142aは、認識結果文字列“神奈ノ11”(有効文字数5)が取得された場合に生成されたものを例示している。
【0059】
比較文字列テーブル142aには、比較文字列を示す項目、補正文字列を示す項目および比較文字数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの比較文字列の情報を示す。
【0060】
比較文字列を示す項目には、認識結果文字列と比較するための比較文字列が設定される。補正文字列を示す項目には、該当の比較文字列に対応する補正文字列が設定される。比較文字数を示す項目には、該当の比較文字列に対応する比較文字数が設定される。
【0061】
比較文字列テーブル142aには、例えば、比較文字列が“(ネ)申奈111県”、補正文字列が“神奈川県”、比較文字数が“6”という情報が設定される。これは、比較文字列が、図3で説明した(第2の場合)に該当して生成され、誤読候補文字列の先頭文字が削除されて生成されたものである。括弧内の文字“ネ”は、削除された文字であり、比較対象としては用いられない。そして、この比較文字列の比較文字数が除外した1文字を有効文字数から減算した“6−1=5”であることを示している。
【0062】
比較文字列テーブル142aに例示したその他の比較文字列“神奈111県”や“香111県”などは、(第1の場合)に該当して誤読候補文字列がそのまま比較文字列として採用されたものである。この場合、有効文字数の値がそのまま比較文字数として設定される。
【0063】
図9は、代替認識結果文字列テーブルのデータ構造例を示す図である。代替認識結果テーブル142bは、比較文字列生成部150によって生成され、制御情報記憶部140に格納される。代替認識結果文字列テーブル142bは、認識結果文字列として“神奈ノ11”が取得された場合に生成されたものを例示している。
【0064】
代替認識結果文字列テーブル142bには、代替認識結果文字列を示す項目および対象文字数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの代替認識結果文字列の情報を示す。
【0065】
代替認識結果文字列を示す項目には、認識結果文字列に対して生成された代替認識結果文字列が設定される。対象文字数を示す項目には、該当の代替認識結果文字列の文字数が設定される。
【0066】
代替認識結果文字列テーブル142bには、例えば、代替認識結果文字列が“奈ノ11”、対象文字数が“4”という情報が設定される。これは、図3で説明した(第3の場合)に該当して、認識結果文字列“神奈ノ11”の先頭文字“神”を除いた“奈ノ11”が代替認識結果文字列として生成されたものである。そして、その代替認識結果文字列の文字数が“4”であることを示している。なお、“神奈ノ11”という認識結果文字列には“1”の文字列が連続して2つ含まれている。このため、比較文字列生成部150は、“神奈ノ1”という代替認識結果文字列が2つ生成されることになるが、そのうちの1つのみを優先して代替認識結果文字列テーブル142bに登録する。
【0067】
図10は、比較文字列テーブルの第2のデータ構造例を示す図である。比較文字列テーブル142cは、比較文字列生成部150によって生成され、制御情報記憶部140に格納される。比較文字列テーブル142cは、認識結果文字列として“神剛”が取得された場合に生成されたものを例示している。
【0068】
比較文字列テーブル142cの構成は、比較文字列テーブル142aの構成と同一であるため、説明を省略する。
比較文字列テーブル142cには、例えば、比較文字列が“奈川県”、補正文字列が“神奈川県”、比較文字数が“2”という情報が設定される。これは、比較文字列が図3で説明した(第4の場合)に該当して生成され、補正文字列の先頭の文字が除外されて生成されたものである。このとき、補正文字列の文字数から除外した分の文字数を減算した値が比較文字数となる。また、比較文字列“神奈県”も同様にして生成されたものである。
【0069】
比較文字列テーブル142cに例示したその他の比較文字列“香1県”は、(第1の場合)に該当して誤読候補文字列がそのまま比較文字列として採用されたものである。
図11は、調整定数テーブルのデータ構造例を示す図である。調整定数テーブル143は、制御情報記憶部140に予め格納される。調整定数テーブル143には、項目名を示す項目および調整定数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの調整定数に関する情報を示す。
【0070】
項目名を示す項目には、調整定数の項目名を示す情報が設定される。調整定数を示す項目には、該当の調整定数の値を示す情報が設定される。
調整定数テーブル143には、例えば、次のような項目名および調整定数が設定される。
【0071】
(a)“文字不一致相違度(V)”は、誤読候補文字列に含まれる該当の文字が、認識結果文字列(または代替認識結果文字列)に含まれない場合に、該当の文字の代替相違度とする値Vを示している。Vの値としては、例えば、V=1000が設定される。
【0072】
(b)“1文字分離相違度(W)”は、誤読候補文字列の有効文字数と認識結果文字列の有効文字数との差が1である場合に、誤読候補文字列に含まれる各文字の代替相違度の合計に加算する値Wを示している。Wの値としては、例えば、W=1100が設定される。なお、比較文字列生成部150は、誤読候補文字列として、認識結果文字列との有効文字数の差が2文字以上のものを抽出してもよい。この場合、代替相違度に対して2文字の相違があることを反映した値を代替相違度に加算する。この場合には、各文字の代替相違度の合計にWよりも更に大きな値として、例えば、10000を加算することも考えられる。
【0073】
(c)“文字単位調整相違度閾値(X)”および“文字単位調整相違度差閾値(Y)”は、誤読候補文字列に含まれる該当の文字が、認識結果文字列に含まれる場合に、該当の文字の代替相違度に優位な評価を与えるか否かを判定するための閾値X,Yを示している。例えば、該当の文字の代替相違度の値を小さく評価することで、該当の文字の確度が高いものとして取り扱うことができる。“文字単位調整相違度閾値(X)”は、認識結果文字列(または代替認識結果文字列)の該当の文字に対して認識結果文字列生成部120が算出した相違度がX以下の場合に、優位な評価を与えうることを示している。Xの値としては、例えば、X=200が設定される。また、“文字単位調整相違度差閾値(Y)”は、認識結果文字列の該当の文字に対して、認識結果文字列生成部120が生成した第2候補の認識結果文字列中の該当位置の文字との相違度差がY以上の場合に、優位な評価を与えうることを示している。本例では、上記の両条件が満たされたときに、代替相違度算出部160は、認識結果文字列生成部120が算出した相違度を1/10倍した値を、該当の文字の代替相違度とするものとする。このようにすると、認識結果文字列生成部120が第1候補の認識結果文字列を生成した段階で、他の認識結果文字列の同一文字位置の文字との相違度の差が大きい文字を優位に扱うことができる。
【0074】
図12は、確度定義テーブルのデータ構造例を示す図である。確度定義テーブル144は、制御情報記憶部140に予め格納される。確度定義テーブル144には、評価値を示す項目、評価値差を示す項目および確度を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの確度に関する情報を示す。
【0075】
評価値を示す項目には、評価値の範囲を示す情報が設定される。評価値差を示す項目には、第1候補の誤読候補文字列と第2候補の誤読候補文字列との評価値の差の範囲を示す情報が設定される。確度を示す項目には、該当の評価値範囲かつ評価値差である場合の第1候補の誤読候補文字列の確度を示す情報が設定される。
【0076】
確度定義テーブル144には、例えば、評価値が“600以下”、評価値差が“50以上”、確度が“高”という情報が設定される。これは、評価値が“600以下”であり、評価値差が“50以上”である場合、該当の第1候補の誤読候補文字列の確度を“高”とすることを示している。
【0077】
代替相違度算出部160は、確度定義テーブル144に基づいて、第1候補の誤読候補文字列の確度を決定することができる。
調整定数テーブル143および確度定義テーブル144には、利用環境に応じた最適な各パラメータが予め設定される。
【0078】
次に、以上のような構成を有するコンピュータ100の処理に関して説明する。
図13は、文字認識処理の手順を示すフローチャートである。以下、図13に示す処理をステップ番号に沿って説明する。
【0079】
[ステップS11]画像取得部110は、撮像装置14が帳票を撮像して生成した帳票画像200を取得する。画像取得部110は、取得した帳票画像200を認識結果文字列生成部120に出力する。
【0080】
[ステップS12]認識結果文字列生成部120は、画像取得部110から取得した帳票画像200に含まれる領域211,212,221,222,231,232,・・・に記入された文字列を読み取り、認識結果文字列テーブル141a,141b,141c,・・・を生成して、これらを制御情報記憶部140に格納する。
【0081】
[ステップS13]比較文字列生成部150は、次に処理対象とする項目を特定する。例えば、各項目で処理対象とする順番は予め定められる。具体的には、帳票画像200に含まれる各項目について、住所であれば、都道府県名、市区町村名、地区名、番地、建物名などの順に処理していくことが考えられる。また、氏名であれば、姓、名の順に処理していくことが考えられる。更に、金融機関名であれば、金融機関名、支店名の順で処理していくことが考えられる。
【0082】
[ステップS14]比較文字列生成部150は、制御情報記憶部140に記憶された認識結果文字列テーブル141aを参照して、処理対象とした項目の認識結果文字列(例えば、“神奈ノ11”)を取得する。そして、比較文字列生成部150は、抽出した認識結果文字列の有効文字数(例えば、“神奈ノ11”に対して“5”)を取得する。比較文字列生成部150は、例えば、帳票画像200において該当の文字列を認識した位置によって、各文字列の項目を特定することができる。また、例えば、都道府県名と市区町村名とが「神奈川県相模原市」のように連続して認識されるような場合には、該当の文字に含まれる“県”という文字や、“市”という文字を識別して、都道府県名や市区町村名を特定し、対応する文字列を取得することが考えられる。また、氏名であれば、姓名が連続されて記載されている場合には、姓と名との間の空白などのデリミタを識別して、姓、名を区別することも考えられる。
【0083】
[ステップS15]比較文字列生成部150は、誤読候補情報記憶部130に記憶された誤読候補情報(都道府県テーブル131など)を参照し、上記ステップS14で取得した有効文字数に基づいて、処理対象の項目に対応する誤読候補文字列を抽出する。具体的には、比較文字列生成部150は、取得した有効文字数±nの範囲の有効文字数となる誤読候補文字列を誤読候補情報から抽出する。なお、nの値としては、以降の処理の精度および処理速度を考慮して最適な値が決められる。ここでは、このようなnの値として、n=1が選択されるものとする。この場合、例えば、有効文字数“5”の認識結果文字列に対して、比較文字列生成部150は、誤読候補情報に登録された有効文字数が“6”、“5”、“4”である誤読候補文字列群を取得する。なお、比較対象を増やして照合の精度を更に向上する場合には、nを2以上の整数としてもよい。
【0084】
[ステップS16]比較文字列生成部150は、取得した誤読候補文字列群に対応する補正文字列群を取得する。
[ステップS17]比較文字列生成部150は、取得した認識結果文字列、誤読候補文字列群および補正文字列群に基づいて、比較文字列テーブルを生成する。比較文字列生成部150は、生成した比較文字列テーブルを制御情報記憶部140に格納する。
【0085】
[ステップS18]代替相違度算出部160は、制御情報記憶部140に格納された比較文字列テーブルに含まれる各比較文字列の各文字について、認識結果文字列の各文字に対する代替相違度を算出する。そして、算出した各代替相違度合計Tを求める。
【0086】
[ステップS19]代替相違度算出部160は、各比較文字列についての代替相違度合計Tを該当の比較文字列に対応する比較文字数で割った商を各比較文字列の評価値として算出する。
【0087】
[ステップS20]代替相違度算出部160は、算出した評価値に基づき、各比較文字列の優先順位を決定する。優先順位は、評価値が小さいほど優位であるとして順位付けされる。代替相違度算出部160は、各比較文字列に対して算出した評価値の情報を補正文字列特定部170に出力する。
【0088】
[ステップS21]補正文字列特定部170は、代替相違度算出部160が算出した各比較文字列の評価値のうち優先順位の最も高い第1候補の比較文字列を取得し、これに対応する補正文字列を特定する。補正文字列特定部170は、制御情報記憶部140に記憶された確度定義テーブル144を参照して、特定した補正文字列の確度を決定する。補正文字列特定部170は、特定した補正文字列と対応する確度とを出力部180に出力する。
【0089】
[ステップS22]比較文字列生成部150は、現在処理対象としている項目中に次の処理対象となる項目が存在するか否かを判定する。存在する場合、処理がステップS13に移される。存在しない場合、処理がステップS23に移される。比較文字列生成部150は、例えば、予め定められた順序の最終となる項目(例えば、都道府県名、市区町村名、地区名、・・・の系列の最後の項目)まで処理を完了したか否かを検知することで、上記判定を行うことができる。
【0090】
[ステップS23]出力部180は、補正文字列特定部170から取得した補正文字列と確度との一覧をモニタ11に表示するための画面を生成し、モニタ11に生成した画面を表示させる。
【0091】
このようにして、コンピュータ100は、帳票画像200から読み取られた認識結果文字列に分離文字列が含まれていることを考慮した知識補正を行う。
図14は、比較文字列生成処理の手順を示す第1のフローチャートである。以下、図14に示す処理をステップ番号に沿って説明する。なお、以下の処理は、図13のステップS17の処理を詳細に示すものである。
【0092】
[ステップS31]比較文字列生成部150は、図13のステップS15で取得した誤読候補文字列群から比較文字列を未生成の誤読候補文字列を1つ抽出する。
[ステップS32]比較文字列生成部150は、認識結果文字列と抽出した誤読候補文字列とを比較する。
【0093】
[ステップS33]比較文字列生成部150は、認識結果文字列の有効文字数と、誤読候補文字列の有効文字数とが一致しているか否かを判定する。一致している場合、処理がステップS34に移される。一致していない場合、処理がステップS35に移される。
【0094】
[ステップS34]比較文字列生成部150は、抽出した誤読候補文字列を比較文字列として、制御情報記憶部140に記憶された比較文字列テーブル142aに登録する。このとき、比較文字列生成部150は、該当の比較文字列につき、対応する補正文字列と、比較文字列の比較文字数とを比較文字列テーブル142aに登録する。そして、処理がステップS44に移される。
【0095】
[ステップS35]比較文字列生成部150は、誤読候補文字列の有効文字数の方が、認識結果文字列の有効文字数よりも大きいか否かを判定する。大きい場合、処理がステップS36に移される。大きくない場合、処理がステップS39に移される。
【0096】
[ステップS36]比較文字列生成部150は、認識結果文字列の有効文字数と誤読候補文字列の有効文字数との差を取得する。ここでは、有効文字数の差として1が取得される。
【0097】
[ステップS37]比較文字列生成部150は、誤読候補文字列から取得した差の分の文字を除いた文字列を生成する。
[ステップS38]比較文字列生成部150は、上記ステップS37で生成した文字列を比較文字列として、比較文字列テーブル142aに登録する。このとき、比較文字列生成部150は、該当の比較文字列につき、対応する補正文字列と、比較文字列の比較文字数とを比較文字列テーブル142aに登録する。
【0098】
[ステップS39]比較文字列生成部150は、認識結果文字列と誤読候補文字列との有効文字数の差を取得する。
[ステップS40]比較文字列生成部150は、該当の有効文字数差の代替認識結果文字列を未生成であるか否かを判定する。未生成である場合、処理がステップS41に移される。生成済みである場合、処理がステップS43に移される。比較文字列生成部150は、例えば、認識結果文字列の有効文字数が5で、誤読候補文字列の有効文字数が4である場合に、制御情報記憶部140に記憶された代替認識結果文字列テーブル142bを参照して、対象文字列“4”の代替認識結果文字列が存在するか否かにより上記判定を行うことができる。
【0099】
[ステップS41]比較文字列生成部150は、認識結果文字列から取得した差の分の文字を除いた文字列を生成する。
[ステップS42]比較文字列生成部150は、生成した文字列を代替認識結果文字列として制御情報記憶部140に記憶された代替認識結果文字列テーブル142bに登録する。
【0100】
[ステップS43]比較文字列生成部150は、抽出した誤読候補文字列を比較文字列として、制御情報記憶部140に記憶された比較文字列テーブル142aに登録する。このとき、比較文字列生成部150は、該当の比較文字列につき、対応する補正文字列と、比較文字列の比較文字数とを比較文字列テーブル142aに登録する。
【0101】
[ステップS44]比較文字列生成部150は、誤読候補文字列群に含まれる全ての誤読候補文字列に対して、比較文字列を生成済みであるか否かを判定する。生成済みである場合、処理がステップS45に移される。生成済みでない場合、処理がステップS31に移される。
【0102】
図15は、比較文字列生成処理の手順を示す第2のフローチャートである。以下、図15に示す処理をステップ番号に沿って説明する。なお、以下の処理は、図14のステップS44の処理から続けて実行されるものである。
【0103】
[ステップS45]比較文字列生成部150は、図13のステップS16で取得した補正文字列群から未抽出の補正文字列を1つ抽出する。
[ステップS46]比較文字列生成部150は、認識結果文字列と抽出した補正文字列とを比較する。
【0104】
[ステップS47]比較文字列生成部150は、補正文字列の有効文字数が認識結果文字列の有効文字数よりも小さい否かを判定する。小さい場合(有効文字数が同じ場合も含む)、処理がステップS51に移される。小さくない場合、すなわち、補正文字列の有効文字数の方が、認識結果文字列の有効文字数よりも大きい場合、処理がステップS48に移される。
【0105】
[ステップS48]比較文字列生成部150は、認識結果文字列の有効文字数と補正文字列の有効文字数との差を取得する。例えば、認識結果文字列が“神剛”であれば、その有効文字数は“2”であり、補正文字数が“神奈川県”であれば、その有効文字数は“3”であるので、有効文字数の差は、“3−2=1”となる。
【0106】
[ステップS49]比較文字列生成部150は、補正文字列から取得した差の分の文字を除いた文字列を生成する。
[ステップS50]比較文字列生成部150は、上記ステップS49で生成した文字列を比較文字列として、比較文字列テーブル142aに登録する。このとき、比較文字列生成部150は、該当の比較文字列につき、対応する補正文字列と、比較文字列の比較文字数とを比較文字列テーブル142aに登録する。
【0107】
[ステップS51]比較文字列生成部150は、補正文字列群に含まれる全ての補正文字列を抽出済みであるか否かを判定する。全て抽出済みである場合、処理が完了する。全て抽出済みでない場合、処理がステップS45に移される。
【0108】
このようにして、コンピュータ100は、認識結果文字列と誤読候補文字列との有効文字数の差および認識結果文字列と補正文字列との有効文字数の差に応じて、比較文字列を生成する。そして、比較文字列と認識結果文字列とについて、同じ文字位置(例えば、先頭から2文字目など)にある文字同士を比較する。
【0109】
なお、図14のステップS34,S38において比較文字列生成部150が比較文字列として比較文字列テーブル142aに登録しようとする際に、該当の比較文字列と同一の比較文字列が既に登録済みの場合も考えられる。この場合には、既に取得されている文字列のみを比較文字列とし、新たに登録しようとしている比較文字列は破棄する。例えば、既に“ネ申奈11”が比較文字列として登録されている場合には、新たに登録しようとしている“ネ申奈11”は破棄される。これにより、同一の比較文字列について重複した比較処理が行われないようにすることができる。
【0110】
図16は、代替相違度合計の算出処理の手順を示すフローチャートである。以下、図16に示す処理をステップ番号に沿って説明する。なお、以下の処理は、図13のステップS18の処理を詳細に示すものである。
【0111】
[ステップS61]代替相違度算出部160は、制御情報記憶部140に記憶された比較文字列テーブル142aに含まれる比較文字列のうち、代替相違度を未算出の比較文字列を1つ抽出する。
【0112】
[ステップS62]代替相違度算出部160は、抽出した比較文字列の比較文字数を取得する。
[ステップS63]代替相違度算出部160は、認識結果文字列の有効文字数と比較文字数とが等しいか否かを判定する。等しい場合、処理がステップS64に移される。等しくない場合、処理がステップS65に移される。
【0113】
[ステップS64]代替相違度算出部160は、比較文字列と比較する比較元の文字列として認識結果文字列を抽出する。そして、処理がステップS66に移される。すなわち、以降の処理は、認識結果文字列に対して実行されることになる。
【0114】
[ステップS65]代替相違度算出部160は、比較文字列と比較する比較元の文字列として、制御情報記憶部140に記憶された代替認識結果文字列テーブル142bから比較文字数と対象文字数が等しい代替認識結果文字列を1つ抽出する。
【0115】
[ステップS66]代替相違度算出部160は、カウンタi=0とする。
[ステップS67]代替相違度算出部160は、認識結果文字列および比較文字列に含まれる文字のうち、先頭からi番目の文字を抽出する。そして、抽出した双方の文字が一致しているか否かを判定する。一致している場合、処理がステップS68に移される。一致していない場合、処理がステップS69に移される。
【0116】
[ステップS68]代替相違度算出部160は、該当の文字に対して認識結果文字列生成部120が算出した相違度を代替相違度として取得する。代替相違度算出部160は、制御情報記憶部140に記憶された処理対象としている項目の認識結果文字列テーブルを参照して、この相違度を取得できる。
【0117】
[ステップS69]代替相違度算出部160は、制御情報記憶部140に記憶された調整定数テーブル143を参照して、該当の文字に対する代替相違度を文字不一致相違度(V)とする。なお、図11の例では、V=1000である。
【0118】
[ステップS70]代替相違度算出部160は、取得した代替相違度が調整定数テーブル143に設定された文字単位調整相違度閾値(X)以下であるか否かを判定する。X以下である場合、処理がステップS71に移される。Xより大きい場合、処理がステップS73に移される。なお、図11の例では、X=200である。
【0119】
[ステップS71]代替相違度算出部160は、処理対象としている項目の認識結果文字列テーブルを参照して、該当の文字と、第2候補の認識結果文字列の先頭からi番目の文字との相違度差を算出する。例えば、認識結果文字列テーブル141aにおいて、先頭から2番目の文字を比較する場合、第1候補の文字列に含まれる“奈”という文字に対し、第2候補の文字列に含まれる“合”という文字の相違度差“241−157=84”が算出される。そして、代替相違度算出部160は、算出した相違度差が文字単位調整相違度差閾値(Y)以上であるか否かを判定する。Y以上である場合、処理がステップS72に移される。Yよりも小さい場合、処理がステップS73に移される。なお、図11の例では、Y=100である。
【0120】
[ステップS72]代替相違度算出部160は、該当の文字について取得した代替相違度を1/10倍した値を代替相違度として改めて取得する。
[ステップS73]代替相違度算出部160は、上記ステップS61で抽出した比較文字列について代替相違度を未算出の文字があるか否かを判定する。未算出の文字がある場合、処理がステップS74に移される。未算出の文字がない場合、処理がステップS75に移される。代替相違度算出部160は、例えば、カウンタiの値が該当の比較文字列の“(比較文字数)−1”の値と等しいか否かを判定することで、この判定を行うことができる。
【0121】
[ステップS74]代替相違度算出部160は、カウンタiをインクリメントする。そして、処理がステップS67に移される。
[ステップS75]代替相違度算出部160は、該当の比較文字列に含まれる各文字について取得した代替相違度の和Kを算出する。
【0122】
[ステップS76]代替相違度算出部160は、認識結果文字列の有効文字を取得する。また、代替相違度算出部160は、比較文字列テーブル142aを参照して、該当の比較文字列の有効文字数を取得する。ここで、比較文字列テーブル142aに含まれる比較文字列のうち、例えば“神奈111県”の有効文字数は“5”である。また、“(ネ)申奈111県”の有効文字数は“6”である。代替相違度算出部160は、取得した各有効文字数に差があるか否かを判定する。差がある場合、処理がステップS77に移される。差がない場合、代替相違度算出部160は、代替相違度合計T=Kとして、処理がステップS78に移される。
【0123】
[ステップS77]代替相違度算出部160は、代替相違度の和Kに1文字分離相違度(W)を加算する。図11の例では、W=1100である。代替相違度算出部160は、この値を代替相違度合計T(=K+W)とする。なお、本例では、認識結果文字列と比較文字列との有効文字数に差がある場合、その差は1である。したがって、ここでは1文字分の差が存在することを反映した値WをTに加算するものとしている。ただし、有効文字数の差が2以上の比較文字列が抽出されるような場合には、その差に応じた値を加算することが考えられる。
【0124】
[ステップS78]代替相違度算出部160は、該当の代替相違度合計Tが代替認識結果文字列について求められたものであって、代替認識結果文字列テーブル142bに登録された該当の対象文字数である全ての代替認識結果文字列に関して算出済みであるか否かを判定する。該当の代替相違度合計Tが認識結果文字列について算出されたものである場合、または、対象となる全ての代替認識結果文字列に関して算出済みである場合、処理がステップS79に移される。代替認識結果文字列について求められたものであって、対象となる代替認識結果文字列に未算出のものがある場合、処理がステップS65に移される。
【0125】
[ステップS79]代替相違度算出部160は、比較文字列テーブル142aに含まれる全ての比較文字列について代替相違度合計Tを算出済みであるか否かを判定する。算出済みである場合、処理が完了する。算出済みでない場合、処理がステップS61に移される。
【0126】
このようにして、コンピュータ100は、各比較文字列の代替相違度合計Tを算出する。このとき、コンピュータ100は、認識結果文字列と比較文字列との同じ文字位置にある文字を比較して、それらの文字が一致するか否かを判定し、制御情報記憶部140に記憶された調整定数テーブル143を参照して、代替相違度を決定する。更に、各文字の代替相違度の和に加えて、認識結果文字列の有効文字数と比較文字列に対応する有効文字数との差に応じた調整値を加算して、代替相違度合計を算出する。
【0127】
なお、上記ステップS69において決定した代替相違度が文字単位調整相違度(X)よりも明らかに大きい値の場合には、上記ステップS69に続いて上記ステップS73を実行する手順としてもよい。
【0128】
図17は、評価結果の第1の具体例を示す図である。評価結果テーブル310は、代替相違度算出部160によって生成され、補正文字列特定部170に出力される。評価結果テーブル310は、認識結果文字列が“神奈ノ11”である場合を例示している。
【0129】
評価結果テーブル310には、順位を示す項目、比較元文字列を示す項目、比較文字列を示す項目、代替相違度合計を示す項目、評価値を示す項目および補正文字列を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて1つの比較文字列の評価結果に関する情報を示す。
【0130】
順位を示す項目には、比較の結果求められた優先度を示す順位が設定される。対応する評価値が小さいほど、優先度は高くなる。比較元文字列を示す項目には、比較の元となる文字列として、認識結果文字列または代替認識結果文字列が設定される。比較文字列を示す項目には、比較元文字列と比較するための比較文字列が設定される。代替相違度合計を示す項目には、代替相違度合計の値が設定される。評価値を示す項目には、評価値が設定される。補正文字列を示す項目には、該当の比較文字列に対応する補正文字列が設定される。
【0131】
評価結果テーブル310には、例えば、順位“1”の比較文字列として“神奈111県”が示されている。このときの比較元文字列には、認識結果文字列と同一の文字列である“神奈ノ11”が示されている。代替相違度算出部160は、比較元文字列“神奈ノ11”に対する“神奈111県”(ただし、“県”は比較対象外)の評価値を、次のようにして求める。
【0132】
(a1)代替相違度算出部160は、先頭の文字同士を比較する。比較元文字列の“神”という文字と比較文字列の“神”という文字は一致する。このため、比較元文字列の“神”に対して認識結果文字列生成部120が算出した相違度“135”を比較文字列の“神”に対する代替相違度とする。なお、文字の一致または不一致の判定は、例えば、文字コードが一致するか否かにより行うことができる。
【0133】
(a2)代替相違度算出部160は、2番目の文字同士を比較する。比較元文字列の“奈”という文字と比較文字列の“奈”という文字は一致する。このため、比較元文字列の“奈”に対して認識結果文字列生成部120が算出した相違度“157”を比較文字列の“奈”に対する代替相違度とする。
【0134】
(a3)代替相違度算出部160は、3番目の文字同士を比較する。比較元文字列の“ノ”という文字と比較文字列の“1”という文字は一致しない。このため、比較文字列の3番目の“1”に対する代替相違度を文字不一致相違度V=“1000”とする。
【0135】
(a4)代替相違度算出部160は、4番目の文字同士を比較する。比較元文字列の4番目の“1”という文字と比較文字列の4番目の“1”という文字は一致する。このため、比較元文字列の4番目の“1”に対して認識結果文字列生成部120が算出した相違度“102”を比較文字列の4番目の“1”に対する代替相違度とする。ここで、認識結果文字列テーブル141aを参照すると、第1候補の“神奈ノ11”に対して、第2の候補の“伸合1、1”の4番目の文字同士の相違度差が“215−102=113”であり、文字単位調整相違度差閾値(Y)=100以上を満たしている。また、代替相違度“102”は、文字単位調整相違度閾値(X)=200以下を満たしている。このため、代替相違度算出部160は、代替相違度102を1/10にした値を改めて代替相違度として取得する。すなわち、4番目の“1”に対する代替相違度を“(102/10)=10”(小数点切捨て)とする。
【0136】
(a5)代替相違度算出部160は、5番目の文字同士を比較する。比較元文字列の5番目の“1”という文字と比較文字列の5番目の“1”という文字は一致する。このため、比較元文字列の5番目の“1”に対して認識結果文字列生成部120が算出した相違度“108”を比較文字列の5番目の“1”に対する代替相違度とする。
【0137】
(a6)代替相違度算出部160は(a1)〜(a5)で求めた各文字の代替相違度を合計して代替相違度合計T=“1410”を得る。
(a7)代替相違度算出部160は、代替相違度合計Tを比較文字列“神奈111県”に対応する比較文字数“5”で割った商である“282”を評価値とする。
【0138】
また、評価結果テーブル310には、例えば、順位“2”の比較文字列として“神奈11県”が示されている。代替相違度算出部160は、比較元文字列“神奈11”に対する“神奈11県”(ただし、“県”は比較対象外)の評価値を、次のようにして求める。
【0139】
(b1)代替相違度算出部160は、先頭の文字同士を比較する。比較元文字列の“神”という文字と比較文字列の“神”という文字は一致する。このため、比較元文字列の“神”に対して認識結果文字列生成部120が算出した相違度“135”を比較文字列の“神”に対する代替相違度とする。
【0140】
(b2)代替相違度算出部160は、2番目の文字同士を比較する。比較元文字列の“奈”という文字と比較文字列の“奈”という文字は一致する。このため、比較元文字列の“奈”に対して認識結果文字列生成部120が算出した相違度“157”を比較文字列の“奈”に対する代替相違度とする。
【0141】
(b3)代替相違度算出部160は、3番目の文字同士を比較する。比較元文字列の3番目の“1”という文字と比較文字列の3番目の“1”という文字は一致する。このため、比較元文字列の3番目の“1”に対して認識結果文字列生成部120が算出した相違度“102”を比較文字列の3番目の“1”に対する代替相違度とする。ここで、認識結果文字列テーブル141aを参照すると、第1候補の“神奈ノ11”に対して、第2の候補の“伸合1、1”の4番目の文字同士の相違度差が“215−102=113”であり、文字単位調整相違度差閾値(Y)=100以上を満たしている。なお、この第1候補の4番目の文字は、比較元文字列“神奈11”の3番目の“1”に対応している。また、代替相違度“102”は、文字単位調整相違度閾値(X)=200以下を満たしている。このため、代替相違度算出部160は、代替相違度102を1/10にした値を改めて代替相違度として取得する。すなわち、3番目の“1”に対する代替相違度を“(102/10)=10”(小数点切捨て)とする。
【0142】
(b4)代替相違度算出部160は、(b1)〜(b3)で求めた各文字の代替相違度の和に有効文字数の差を反映した1文字分離相違度W=1100を合計して代替相違度合計T=“1402”を得る。
【0143】
(b5)代替相違度算出部160は、代替相違度合計Tを比較文字列“神奈11県”に対応する比較文字数“4”で割った商である“350”を評価値とする。
また、評価結果テーブル310には、例えば、順位“10”の比較文字列として“(ネ)申奈111県”が示されている。このときの比較元文字列には、比較元文字列と同一の文字列である“神奈ノ11”が示されている。代替相違度算出部160は、比較元文字列“神奈ノ11”に対する“(ネ)申奈111県”(ただし、“県”は比較対象外)の評価値を、次のようにして求める。なお、“(ネ)申奈111県”は、“ネ申奈111県”という誤読候補文字列に対応して生成されたものであり、“(ネ)”は、比較の対象外となっていることを示している。
【0144】
(c1)代替相違度算出部160は、先頭の文字同士を比較する。比較元文字列の“申”という文字と比較文字列の“神”という文字は一致しない。このため、比較元文字列の“申”に対する代替相違度を文字不一致相違度V=“1000”とする。
【0145】
(c2)代替相違度算出部160は、2番目の文字同士を比較する。比較元文字列の“奈”という文字と比較文字列の“奈”という文字は一致する。このため、比較元文字列の“奈”に対して認識結果文字列生成部120が算出した相違度“157”を比較文字列の“奈”に対する代替相違度とする。
【0146】
(c3)代替相違度算出部160は、3番目の文字同士を比較する。比較元文字列の“ノ”という文字と比較文字列の“1”という文字は一致しない。このため、比較文字列の3番目の“1”に対する代替相違度を文字不一致相違度V=“1000”とする。
【0147】
(c4)代替相違度算出部160は、4番目の文字同士を比較する。比較元文字列の4番目の“1”という文字と比較文字列の4番目の“1”という文字は一致する。このため、比較元文字列の4番目の“1”に対して認識結果文字列生成部120が算出した相違度“102”を比較文字列の4番目の“1”に対する代替相違度とする。ここで、認識結果文字列テーブル141aを参照すると、第1候補の“神奈ノ11”に対して、第2の候補の“伸合1、1”の4番目の文字同士の相違度差が“215−102=113”であり、文字単位調整相違度差閾値(Y)=100以上を満たしている。また、代替相違度“102”は、文字単位調整相違度閾値(X)=200以下を満たしている。このため、代替相違度算出部160は、代替相違度102を1/10にした値を改めて代替相違度として取得する。すなわち、4番目の“1”に対する代替相違度を(102/10)=10(小数点切捨て)とする。
【0148】
(c5)代替相違度算出部160は、5番目の文字同士を比較する。比較元文字列の5番目の“1”という文字と比較文字列の5番目の“1”という文字は一致する。このため、比較元文字列の5番目の“1”に対して認識結果文字列生成部120が算出した相違度“108”を比較文字列の5番目の“1”に対する代替相違度とする。
【0149】
(c6)代替相違度算出部160は(c1)〜(c5)で求めた各文字の代替相違度の和に更に有効文字数の差を反映した1文字分離相違度W=1100を合計して代替相違度合計T=“3375”を得る。
【0150】
(c7)代替相違度算出部160は、代替相違度合計Tを比較文字列“(ネ)申奈11県”に対応する比較文字数“5”で割った商である“562”を評価値とする。
代替相違度算出部160は、上記のようにして、各比較文字列の評価値を算出し、評価値の小さい比較文字列ほど優先順位の高いものとして評価結果テーブル310に設定する。
【0151】
評価結果テーブル310により、分離文字列が含まれる認識結果文字列に対して、最も優先度の高い比較文字列を特定することができる。
図18は、評価結果の第2の具体例を示す図である。評価結果テーブル320は、代替相違度算出部160によって生成され、補正文字列特定部170に出力される。評価結果テーブル320は、認識結果文字列が“神剛”である場合を例示している。
【0152】
評価結果テーブル320の構成は、図17に示した評価結果テーブル310の構成と同一であるため説明を省略する。
評価結果テーブル320には、例えば、順位“1”の比較文字列として“神奈県”が示されている。代替相違度算出部160は、認識結果文字列“神剛”に対する“神奈県”(ただし“県”は比較対象外)の評価値を、次のようにして求める。なお、“神奈県”は、認識結果文字列“神剛”の有効文字数“2”が補正文字列“神奈川県”の有効文字数“3”よりも小さいために、比較文字列生成部150により生成されたものである。
【0153】
(d1)代替相違度算出部160は、先頭の文字同士を比較する。認識結果文字列の“神”という文字と比較文字列の“神”という文字は一致する。このため、認識結果文字列の“神”に対して認識結果文字列生成部120が算出した相違度“135”を比較文字列の“神”に対する代替相違度とする。
【0154】
(d2)代替相違度算出部160は、2番目の文字同士を比較する。認識結果文字列の“剛”という文字と比較文字列の“奈”という文字は一致しない。このため、認識結果文字列の“奈”に対する代替相違度を文字不一致相違度V=“1000”とする。
【0155】
(d3)代替相違度算出部160は、(d1)、(d2)で求めた各文字の代替相違度を合計して代替相違度合計T=“1135”を得る。
(d4)代替相違度算出部160は、代替相違度合計Tを比較文字列“神奈県”に対応する比較文字数“2”で割った商である“567”を評価値とする。
【0156】
なお、比較文字列“奈川県”および“香1県”についても同様にして評価値が算出される。ここで、両比較文字列ともに認識結果文字列と一致する文字が存在しないので、評価値の値が“1000”と算出される。このため、両比較文字列ともに同じ優先順位となる。
【0157】
図19は、文字認識結果確認ウィンドウの表示例を示す図である。文字認識結果確認ウィンドウ400は、出力部180により生成され、モニタ11に表示される。
文字認識結果確認ウィンドウ400には、候補表示領域410、確定ボタン表示領域420および他候補選択ボタン表示領域430が設けられている。
【0158】
候補表示領域410には、知識補正の結果、最も確度の高い補正文字列が表示される。このとき、該当の補正文字列に関する知識補正の確度を示す情報も表示される。確度を示す情報は、補正文字列特定部170によって生成される。
【0159】
補正文字列特定部170は、例えば、代替相違度算出部160から評価結果テーブル310を取得すると、優先順位の最も高い比較文字列に対応する補正文字列“神奈川県”を取得する。そして、補正文字列特定部170は、制御情報記憶部140に記憶された確度定義テーブル144を参照して、取得した補正文字列“神奈川県”に対する確度を特定する。具体的には、第1候補の“神奈111県”に対する評価値が“282”で“350”以下であり、かつ、第2候補の“神奈11県”の評価値“562”との評価値差が“350−282=68”で“50”以上であるので、確度を“高”と特定する。
【0160】
このようにして、補正文字列特定部170は、各項目に表示する補正文字列の確度を特定し、出力部180に通知する。出力部180は、補正文字列特定部170から取得した各項目の補正文字列と共に確度の情報を候補表示領域410に含める。
【0161】
確定ボタン表示領域420は、候補表示領域410に表示された各項目の候補を入力データとして確定するためのボタンである。
他候補選択ボタン表示領域430は、候補表示領域410に表示された文字列とは別の文字列の表示を出力部180に指示するためのボタンである。出力部180は、この指示を受け付けると、補正文字列特定部170から他の補正文字列を取得して、モニタ11に表示させる。
【0162】
オペレータは、文字認識結果確認ウィンドウ400を閲覧し、キーボード12やマウス13を用いて各ボタンに操作入力を行うことで、文字認識結果の確認を行い、必要に応じて再補正することができる。
【0163】
なお、例えば、認識結果文字列生成部120により、認識結果文字列として“神奈ノ11”が生成され、この認識結果文字列が、誤読候補情報記憶部130に記憶された都道府県テーブル131に未登録である場合が考えられる。この場合、上記確定ボタンが押下されたタイミングで、都道府県テーブル131に“神奈川”という補正文字列に対応付けて“神奈ノ11”という誤読候補文字列を新たに登録することが考えられる。このようにすると、以後の知識補正において、“神奈ノ11”が比較対象に加わることになり、補正の精度を向上することができる。
【0164】
以上、説明したように、コンピュータ100によれば、単一の文字が複数の文字に分離して認識された分離文字列を考慮した誤読候補情報を用いて知識補正を行う。誤読候補情報には、補正文字列に対応付けて、分離文字列を含む誤読候補文字列が登録される。コンピュータ100は、この誤読候補文字列と帳票画像200から読み取られた認識結果文字列とを比較することで補正文字列の特定精度を向上することができる。
【0165】
このとき、コンピュータ100は、認識結果文字列との比較に用いる比較文字列を、認識結果文字列の有効文字数と誤読候補文字列の有効文字数との差に応じて生成する。これにより、比較文字列に対する認識結果文字列の比較を、同一文字位置(例えば、先頭から2番目の位置など)の文字同士の比較により容易に行うことができる。
【0166】
また、認識結果文字列と比較文字列との食い違いの度合い(代替相違度)を文字ごとの一致または不一致、有効文字数の相違、認識結果文字列生成時の他の候補に対する優位性などによって評価する。このように代替相違度を詳細に評価することで、より確度の高い比較文字列を精度良く特定することができる。
【0167】
また、コンピュータ100は、認識結果文字列の有効文字数に比べて、誤読候補文字列に対応する補正文字列の有効文字数の方が大きい場合には、補正文字列から文字数差の分の文字を除いた文字列を比較文字列として生成する。これにより、複数の文字が単一の文字に統合された統合文字に対する補正を行うことができる。
【0168】
なお、コンピュータ100が有すべき機能は、知識補正プログラムをコンピュータ100で実行することにより実現される。処理内容を記述したプログラムは、コンピュータ100で読み取り可能な記録媒体に記録しておくことができる。コンピュータ100で読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。
【0169】
プログラムを流通させる場合には、例えば、そのプログラムが記録された光ディスクなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、そのプログラムを、サーバコンピュータからネットワークを介して他のコンピュータに転送することもできる。
【0170】
コンピュータ100は、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータ100は、自己の記憶装置からプログラムを読み取り、そのプログラムに従った処理を実行する。なお、コンピュータ100は、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータ100は、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0171】
以上、本発明の知識補正プログラム、知識補正装置および知識補正方法を図示の実施の形態に基づいて説明したが、これらに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置き換えることができる。また、他の任意の構成物や工程が付加されてもよい。また、本発明は前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
【符号の説明】
【0172】
1 コンピュータ
1a 誤読候補情報記憶手段
1b 認識結果文字列生成手段
1c 文字列比較手段
1d 出力手段
2 画像情報
3 認識結果文字列
4 補正文字列
【技術分野】
【0001】
本発明は、画像情報に含まれる文字列を認識する知識補正プログラム、知識補正装置および知識補正方法に関する。
【背景技術】
【0002】
従来、帳票を撮像して取得した画像に含まれる文字列を識別する文字認識装置が用いられている。文字認識装置を用いることで、帳票に記入された文字列の文字コードデータを効率的に取得することができる。例えば、金融機関の窓口では、顧客が帳票に記入した口座番号、氏名および住所などの情報が文字認識装置によって読み取られている。読み取られた情報は、金融取引のための入力データとして利用できる。
【0003】
文字認識装置は、例えば以下のようにして画像に含まれる文字列を特定する。
文字認識装置は、読み取りを行う対象文字のテンプレートを予め記憶している。文字認識装置は、文字列の認識対象とする画像を取得すると、その画像に含まれる文字を文字単位で抽出する。そして、文字認識装置は、画像から抽出した文字の特徴(例えば、線の傾き、形状、曲率および面積など)を取得する。文字認識装置は、この特徴とテンプレートの文字の特徴とを照合して、抽出した文字を特定する。文字認識装置は、画像に含まれる文字ごとに、このような処理を順次行って記入者が記入した文字列を特定する。
【0004】
ここで、文字認識では、文字に誤認識があると、正しい情報を得るためにオペレータが目視で確認作業を行うなどの必要が生じ、情報の取得効率が低減する。このため、文字の誤認識を軽減することが望まれる。
【0005】
これに対し、例えば、所定の項目(例えば、住所)に記入されうる文字列を予め登録しておき、この文字列(以下、登録文字列という)と画像から読み取った文字列の候補(以下、認識結果文字列という)とを照合して、帳票に記入された文字列を特定する方法(知識補正)が知られている(例えば、特許文献1参照)。具体的な方法として、金融機関の名称および該当の金融機関の支店名を組み合わせて生成した登録文字列と認識結果文字列とを照合することで、文字列を特定する方法が知られている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平04−188383号公報
【特許文献2】特開平09−097312号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、上記特許文献1,2に記載の方法を用いたとしても、記入時に記入者が意図した内容と認識結果文字列とが異なるほど、文字列の特定精度が低減する。例えば、記入者が“読取”という文字列を意図して記入したにも関わらず、部首間の間隔が広いなどの理由から認識結果文字列として“言売耳又”が取得されることが考えられる。この場合、登録文字列に“読取”が存在していたとしても、文字数の相違(認識結果文字列が4文字であるのに対し、登録文字列は2文字である)や、文字の特徴そのものの相違によって、適正な文字列を特定することが困難となる。
【0008】
本発明はこのような点に鑑みてなされたものであり、文字が分離して文字認識された場合にも、適正な文字列の特定精度を向上することができる知識補正プログラム、知識補正装置および知識補正方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記課題を解決するために、知識補正プログラムが提供される。この知識補正プログラムを実行するコンピュータは、文字列比較手段および出力手段として機能する。文字列比較手段は、複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を各補正文字列に対応付けて定義した誤読候補情報を記憶する誤読候補情報記憶手段に記憶された誤読候補情報を参照して、各誤読候補文字列のうち、認識結果文字列生成手段により画像情報に含まれる文字列の候補として生成された認識結果文字列に最も一致する誤読候補文字列を特定し、この誤読候補文字列に対応する補正文字列を特定する。出力手段は、文字列比較手段が特定した補正文字列を出力する。
【0010】
また、上記課題を解決するために、上記知識補正プログラムを実行するコンピュータと同様の機能を有する知識補正装置が提供される。また、上記課題を解決するために、上記知識補正プログラムを実行するコンピュータと同様の処理を行う知識補正方法が提供される。
【発明の効果】
【0011】
上記知識補正プログラム、知識補正装置および知識補正方法によれば、文字が分離して読み取られた場合にも、適正な文字列の特定精度を向上することができる。
【図面の簡単な説明】
【0012】
【図1】本実施の形態の概要を示す図である。
【図2】コンピュータのハードウェア構成を示す図である。
【図3】コンピュータの機能構成を示す図である。
【図4】帳票画像を例示する図である。
【図5】誤読候補情報記憶部が記憶するテーブルの例を示す図である。
【図6】都道府県テーブルのデータ構造例を示す図である。
【図7】認識結果文字列テーブルのデータ構造例を示す図である。
【図8】比較文字列テーブルの第1のデータ構造例を示す図である。
【図9】代替認識結果文字列テーブルのデータ構造例を示す図である。
【図10】比較文字列テーブルの第2のデータ構造例を示す図である。
【図11】調整定数テーブルのデータ構造例を示す図である。
【図12】確度定義テーブルのデータ構造例を示す図である。
【図13】文字認識処理の手順を示すフローチャートである。
【図14】比較文字列生成処理の手順を示す第1のフローチャートである。
【図15】比較文字列生成処理の手順を示す第2のフローチャートである。
【図16】代替相違度合計の算出処理の手順を示すフローチャートである。
【図17】評価結果の第1の具体例を示す図である。
【図18】評価結果の第2の具体例を示す図である。
【図19】文字認識結果確認ウィンドウの表示例を示す図である。
【発明を実施するための形態】
【0013】
以下、本実施の形態を図面を参照して詳細に説明する。
図1は、本実施の形態の概要を示す図である。コンピュータ1は、知識補正プログラムを実行し、画像情報2に含まれる文字列を認識する。画像情報2は、例えば撮像装置により帳票が撮像されて生成される。コンピュータ1は、誤読候補情報記憶手段1a、認識結果文字列生成手段1b、文字列比較手段1cおよび出力手段1dを有する。
【0014】
誤読候補情報記憶手段1aは、複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を各補正文字列に対応付けて定義した誤読候補情報を記憶する。
【0015】
認識結果文字列生成手段1bは、画像情報2に含まれる文字列の候補として認識結果文字列3を生成する。
文字列比較手段1cは、誤読候補情報記憶手段1aに記憶された誤読候補情報を参照して、認識結果文字列生成手段1bが生成した認識結果文字列3と誤読候補情報に登録された各誤読候補文字列とを比較・評価する。そして、文字列比較手段1cは、認識結果文字列3に最も一致する誤読候補文字列を特定し、この誤読候補文字列に対応する補正文字列4を特定する。
【0016】
出力手段1dは、文字列比較手段1cが特定した補正文字列4を出力する。
コンピュータ1によれば、文字列比較手段1cにより、誤読候補情報記憶手段1aに記憶された誤読候補情報が参照されて、各誤読候補文字列のうち、認識結果文字列生成手段1bが生成した認識結果文字列3に最も一致する誤読候補文字列が特定される。文字列比較手段1cにより、誤読候補情報に基づいて、特定された誤読候補文字列に対応する補正文字列4が特定される。出力手段1dにより、文字列比較手段1cが特定した補正文字列4が出力される。
【0017】
これにより、文字が分離して読み取られた場合にも、文字列の特定精度の向上を図ることができる。具体的には、誤読候補情報記憶手段1aが記憶する誤読候補情報には、例えば補正文字列4である“神奈川”という文字列に対応付けて、“神奈ノ11”や“神奈1リ”などの誤読候補文字列が定義される。この例では、“ノ11”や“1リ”が“川”に対する分離文字列に対応する。このとき、認識結果文字列生成手段1bが認識結果文字列3として、例えば“神奈111”を生成したとする。この場合、文字列比較手段1cは、誤読候補情報記憶手段1aに記憶された誤読候補情報を参照して、認識結果文字列3(“神奈111”)に最も一致する誤読候補文字列として、例えば“神奈ノ11”を特定する。そして、認識結果文字列生成手段1bは、誤読候補情報を参照して、誤読候補文字列“神奈ノ11”に対応付けられた“神奈川”という文字列を補正文字列4として特定する。このように、文字列比較手段1cは、誤読候補情報記憶手段1aに記憶された誤読候補情報を参照して補正文字列を特定することで、認識結果文字列に分離文字列が含まれている場合であっても、適正な補正文字列の特定精度を向上することができる。なお、誤読候補情報記憶手段1aには、補正文字列に含まれる文字のうち、分離文字列として認識され易い文字を、該当の分離文字列に置き換えた文字列が誤読候補文字列として予め登録される。
【0018】
ところで、コンピュータ1は、例えば金融機関などの窓口業務で、顧客が帳票に記入した文字を認識して、金融取引などの入力データとする場合に有用である。以下では、コンピュータ1をこのような用途に用いる場合を例に採り、更に具体的に説明する。
【0019】
図2は、コンピュータのハードウェア構成を示す図である。コンピュータ100は、金融機関の窓口などに設置され、オペレータによる帳票の情報の入力に用いられる。コンピュータ100は、CPU(Central Processing Unit)101、RAM(Random Access Memory)102、HDD103、グラフィック処理装置104、入力インタフェース105,106および通信インタフェース107を有する。
【0020】
CPU101は、コンピュータ100全体の動作を制御する。
RAM102は、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションソフトウェア(以下、アプリケーションという)のプログラムの少なくとも一部を一時的に記憶する。また、RAM102は、CPU101による処理に必要な各種データを記憶する。
【0021】
HDD103は、OSのプログラム、アプリケーションのプログラムを記憶する。また、HDD103は、CPU101による処理に必要な各種データを記憶する。なお、HDD103の代わりに例えばSSD(Solid State Drive)などの他の不揮発性の記憶装置を用いることもできる。
【0022】
グラフィック処理装置104は、モニタ11と接続される。グラフィック処理装置104は、CPU101からの命令に従って画像をモニタ11の画面に表示させる。
入力インタフェース105は、キーボード12とマウス13と接続される。入力インタフェース105は、キーボード12やマウス13から送られてくる信号をCPU101に送信する。
【0023】
入力インタフェース106は、撮像装置14と接続される。入力インタフェース106は、撮像装置14が帳票を撮像して生成した帳票画像を取得する。そして、入力インタフェース106は、CPU101の処理に応じて取得した帳票画像をRAM102やHDD103に格納する。
【0024】
通信インタフェース107は、ネットワーク20と接続され、他の情報処理装置との間でデータの送受信を行う。
図3は、コンピュータの機能構成を示す図である。コンピュータ100は、画像取得部110、認識結果文字列生成部120、誤読候補情報記憶部130、制御情報記憶部140、比較文字列生成部150、代替相違度算出部160、補正文字列特定部170および出力部180を有する。
【0025】
画像取得部110は、撮像装置14が帳票を撮像して生成した帳票画像を取得する。画像取得部110は、取得した帳票画像を認識結果文字列生成部120に出力する。
認識結果文字列生成部120は、画像取得部110から取得した帳票画像に含まれる文字を項目別(都道府県名や姓名など)に読み取り、読み取った文字に基づいて複数の認識結果文字列を生成する。認識結果文字列生成部120は、例えば、次のような手順により認識結果文字列を生成する。
【0026】
(1)認識結果文字列生成部120は、帳票画像に含まれる所定の項目の文字列のうち、1文字分と考えられる所定の領域を読み取って、該当の文字に対する特徴を取得する。ここで、特徴とは、例えば、画像に含まれる線の位置や線の傾きの度合いなどを評価したものである。
【0027】
(2)認識結果文字列生成部120は、図示しない読取文字テンプレート記憶部に予め記憶された読取対象文字のテンプレート(以下、テンプレート文字という)を参照して、帳票画像から抽出した文字の特徴と、各テンプレート文字の特徴とを比較する。認識結果文字列生成部120は、比較の結果、帳票画像から抽出した特徴と各テンプレート文字の特徴との食い違いの度合いを示す相違度を算出する。相違度の算出には、例えば、ベイズ法(Bayesian method)を採用することができる。相違度は、値が小さいほど、食い違いの度合いも小さいものとして求められる。すなわち、各テンプレート文字のうち、相違度が小さいものほど、読み取りの候補としての優先度は高い。
【0028】
(3)認識結果文字列生成部120は、帳票画像から抽出した各文字に対し各テンプレート文字について算出した相違度の小さいもの同士を順に組み合わせて、認識結果文字列を生成する。例えば、各文字につき最も相違度の小さいもの同士を組み合わせたものが最も優先度の高い第1候補の認識結果文字列となる。
【0029】
認識結果文字列生成部120は、このようにして、帳票画像から読み取った各文字の特徴から、複数の認識結果文字列を生成する。認識結果文字列生成部120は、生成した各認識結果文字列を制御情報記憶部140に格納する。
【0030】
誤読候補情報記憶部130は、認識結果文字列に含まれうる分離文字列を考慮した複数の誤読候補文字列を定義した誤読候補情報を記憶する。ここで、分離文字列とは、帳票に記入された文字の部首間の間隔が広いなどの理由で、1文字として認識されるべき文字が2文字以上の複数の文字として認識されてしまった文字列を示す。例えば、“神”という字に対しては、“ネ申”という分離文字列が考えられる。また、誤読候補情報には、帳票において該当の認識結果文字列が記入された項目に応じて、実際に記入されうる補正文字列が各誤読候補文字列に対応付けて登録されている。ここで、実際に記入されうる補正文字列とは、例えば、都道府県名という項目であれば、現実に存在する都道府県名を示す文字列である。
【0031】
制御情報記憶部140は、認識結果文字列生成部120が生成した認識結果文字列を記憶する。また、制御情報記憶部140は、比較文字列生成部150が生成した認識結果文字列との比較に用いる比較文字列を記憶する。また、制御情報記憶部140は、比較文字列生成部150が抽出した複数の誤読候補文字列と、それに対応する認識結果文字列と、を比較する際に用いる制御情報を記憶する。制御情報には、比較の結果を数値評価する際に用いる各種条件などが含まれる。
【0032】
比較文字列生成部150は、認識結果文字列生成部120による各項目の認識結果文字列の生成が完了すると、制御情報記憶部140に記憶された各項目の認識結果文字列から1つ(例えば、都道府県という項目に含まれる“神奈ノ11”)を取得する。比較文字列生成部150は、誤読候補情報記憶部130を参照して、取得した認識結果文字列に対応する誤読候補情報を取得する。更に、比較文字列生成部150は、誤読候補情報記憶部130に記憶された誤読候補情報を参照して、該当の認識結果文字列に含まれる文字数と一致または文字数±n(例えば、n=1)の範囲で一致する複数の誤読候補文字列を抽出する。そして、比較文字列生成部150は、取得した各誤読候補文字列に基づいて認識結果文字列との比較に用いる複数の比較文字列を生成する。
【0033】
比較文字列生成部150は、各誤読候補文字列につき以下の各場合に応じた比較文字列を生成する。
(第1の場合)比較文字列生成部150は、認識結果文字列の有効文字数が該当の誤読候補文字列の有効文字数と等しい場合である。この場合、該当の誤読候補文字列を比較文字列とする。
【0034】
ここで、有効文字数とは、各文字列のうち、項目を示す文字または文字列(“都”や“県”など)を除いた文字数をいうものとする。なお、認識結果文字列などで“都”や“県”などの文字が含まれない場合には、認識結果文字列の文字数が有効文字数となる。有効文字数は、特許請求の範囲における“文字数”に対応する。
【0035】
(第2の場合)比較文字列生成部150は、認識結果文字列の有効文字数が該当の誤読候補文字列の有効文字数よりも小さい場合である。この場合、該当の誤読候補文字列と認識結果文字列との文字差の分だけ、誤読候補文字列から文字を削除した文字列を比較文字列として生成する。例えば、認識結果文字列“神奈ノ11”(有効文字数が5)に対して、誤読候補文字列“ネ申奈111”(有効文字数が6)が抽出されている場合、“ネ申奈111”から(6−5=)1文字を除いた次の文字列が生成される。すなわち、先頭の文字を外した文字列である“申奈111”、最後尾の文字を外した文字列である“ネ申奈11”および中間の文字を外した文字列である“ネ奈111”、“ネ申111”、“ネ申奈11”が比較文字列として生成される。このようにして、誤読候補文字列の有効文字数が認識結果文字列の有効文字数よりも大きい場合には、比較文字列の有効文字数と認識結果文字列の有効文字数とが一致するようにする。これにより、両文字列の対応する位置にある文字同士(例えば、先頭から2文字目同士など)を容易に比較できるようになる。
【0036】
(第3の場合)比較文字列生成部150は、認識結果文字列の有効文字数が該当の誤読候補文字列の有効文字数よりも大きい場合である。この場合、該当の誤読候補文字列と認識結果文字列との文字差の分だけ、認識結果文字列から文字を削除した文字列を代替認識結果文字列として生成する。そして、比較文字列生成部150は、生成した各代替認識結果文字列を制御情報記憶部140に格納する。例えば、認識結果文字列“神奈ノ11”(有効文字数が5)に対して、誤読候補文字列“神奈11”(有効文字数が4)が抽出されている場合、“神奈ノ11”から(5−4=)1文字を除いた次の文字列が生成される。すなわち、先頭の文字を外した文字列である“奈ノ11”、最後尾の文字を外した文字列である“神奈ノ1”および中間の文字を外した文字列である“神ノ11”、“神奈11”が代替認識結果文字列として生成される。この場合、比較文字列生成部150は、該当の誤読候補文字列を比較文字列とする。このようにして、認識結果文字列の有効文字数が誤読候補文字列の有効文字数よりも大きい場合には、認識結果文字列の有効文字数と比較文字列の有効文字数とが一致するようにする。これにより、上記(第2の場合)と同様に、両文字列の対応する位置にある文字同士を容易に比較できるようになる。なお、代替認識結果文字列は、該当の文字差に関して一度だけ生成されればよい。例えば、“神奈ノ11”に対して有効文字数差1の分の代替認識結果文字列が1度生成されれば、その情報を保持することで、次に誤読候補文字列として有効文字数が4の文字列を抽出した際に、代替認識文字列の生成を行う必要はなくなる。
【0037】
(第4の場合)比較文字列生成部150は、認識結果文字列の有効文字数が該当の誤読候補文字列に対応する補正文字列の有効文字数よりも小さい場合である。この場合、該当の補正文字列と認識結果文字列との文字差の分だけ、補正文字列から文字を除外した文字列を比較文字列として生成する。例えば、認識結果文字列の有効文字部分が“神剛”(有効文字数が2)に対して、誤読候補文字列に対応する補正文字列が“神奈川”(有効文字数が3)である場合、比較文字列として、“神奈川”から(3−2=)1文字を除いた次の文字列が生成される。すなわち、先頭の文字を外した文字列である“奈川”、最後尾の文字を外した文字列である“神奈”および中間の文字を外した文字列である“神川”が比較文字列として生成される。統合文字の例としては、“神奈川”という認識対象文字に対して、先に例示した認識結果文字列“神剛”に含まれる“剛”(“奈川”が統合された統合文字)が考えられる。このようにして、補正文字列の有効文字数の方が、認識結果文字列の有効文字数よりも大きい場合に、比較文字列の有効文字数と認識結果文字列の有効文字数とが一致するものを生成する。このため、統合文字が含まれている場合にも、認識結果文字列と比較文字列との適合確率が向上する。これにより、認識結果文字列が、2文字が1文字に統合された統合文字を含む場合にも、この統合文字に対する補正を行うことができる。
【0038】
比較文字列生成部150は、生成した各比較文字列と、各比較文字列の比較文字数(有効文字数から削った分の文字数を減算したもの)と、該当の比較文字列に対応する補正文字列と、を制御情報記憶部140に格納する。
【0039】
代替相違度算出部160は、比較文字列生成部150による比較文字列の生成が完了すると、制御情報記憶部140に記憶された各比較文字列と対応する比較文字数とを取得する。そして、代替相違度算出部160は、認識結果文字列(または代替認識結果文字列)と各比較文字列とを比較する。代替相違度算出部160は、比較の結果、認識結果文字列生成部120が認識結果文字列に含まれる各文字について算出した相違度と、制御情報記憶部140に記憶された制御情報と、に基づいて、認識結果文字列(または代替認識結果文字列)の各文字に対する各比較文字列の各文字の代替相違度を決定する。ここで、代替相違度とは、認識結果文字列生成部120が算出した相違度と制御情報記憶部140に記憶された制御情報とに基づいて算出されるものであり、認識結果文字列の各文字と各比較文字列の各文字との食い違いの度合いを示す値である。すなわち、代替相違度は、両文字列の食い違いの度合いを“文字”単位で示す値である。相違度は、値が小さいほど、食い違いの度合いも小さいものとして求められる。
【0040】
また、代替相違度算出部160は、算出した各文字の代替相違度に基づいて、認識結果文字列(または代替認識結果文字列)に対する各比較文字列の食い違いの度合いを示す値(評価値)を算出する。すなわち、評価値は食い違いの度合いを“文字列”単位で示す値である。評価値は、値が小さいほど、食い違いの度合いも小さいものとして求められる。具体的には、まず、代替相違度算出部160は、比較文字列に含まれる各文字の代替相違度の和を求める。そして、代替相違度算出部160は、代替相違度の和を該当の比較文字列に対応する比較文字数で割った商を、その比較文字列の評価値とする。代替相違度算出部160は、算出した各比較文字列の評価値を補正文字列特定部170に出力する。
【0041】
補正文字列特定部170は、代替相違度算出部160から取得した評価値に基づいて、最も優先度の高い(すなわち、最も評価値の小さい)第1候補の誤読候補文字列を特定する。補正文字列特定部170は、誤読候補情報記憶部130に記憶された誤読候補情報を参照して、特定した第1候補の誤読候補文字列に対応する補正文字列を取得する。補正文字列特定部170は、取得した補正文字列を出力部180に出力する。
【0042】
出力部180は、補正文字列特定部170から取得した補正文字列を示す情報をモニタ11に表示させる。
なお、比較文字列生成部150、代替相違度算出部160、補正文字列特定部170の処理は、各項目単位で順次実行される。例えば、まず、都道府県名を示す項目について上記各部により補正文字列が特定される。そして、次に、市区町村名を示す項目について上記各部により補正文字列が特定される。更に、次に、地区・番地を示す項目について上記各部により補正文字列が特定される。
【0043】
このようにして、コンピュータ100は、全ての項目について補正文字列を特定し、その結果をオペレータに通知する。
図4は、帳票画像を例示する図である。帳票画像200には、領域211,212,221,222,231,232,・・・が設けられている。帳票画像200は、金融機関に設置された帳票に顧客が文字列を記入し、その帳票を撮像装置14が撮像することで生成される。そして、画像取得部110は、撮像装置14から帳票画像200を取得する。画像取得部110は、取得した帳票画像200を認識結果文字列生成部120に出力する。
【0044】
領域211は、都道府県名を示す文字列が記入された領域である。
領域212は、市区町村名を示す文字列が記入された領域である。
領域221は、姓を示す文字列が記入された領域である。
【0045】
領域222は、名を示す文字列が記入された領域である。
領域231は、銀行名を示す文字列が記入された領域である。
領域232は、支店名を示す文字列が記入された領域である。
【0046】
認識結果文字列生成部120は、生成した各認識結果文字列につき領域211,212,221,222,231,232,・・・の帳票上における読み取り位置によって、各認識結果文字列が何れの項目に該当するものであるかを特定することができる。認識結果文字列生成部120は、領域211に記入された文字列を都道府県の項目に該当するものと特定する。また、認識結果文字列生成部120は、領域212に記入された文字列を市区町村の項目に該当するものと特定する。以下、同様にして、認識結果文字列生成部120は、姓名や銀行名、支店名などの項目を特定する。
【0047】
図5は、誤読候補情報記憶部が記憶するテーブルの例を示す図である。誤読候補情報記憶部130には、都道府県テーブル131、市区町村テーブル132、地区テーブル133、姓テーブル134、・・・が予め格納される。都道府県テーブル131、市区町村テーブル132、地区テーブル133、姓テーブル134、・・・は、誤読候補情報に対応するものである。
【0048】
都道府県テーブル131は、都道府県名として記入されうる補正文字列と、その都道府県名に対する分離文字列を含む誤読候補文字列と、を対応付けて定義したものである。
市区町村テーブル132は、市区町村名として記入されうる補正文字列と、その市区町村名に対する分離文字列を含む誤読候補文字列と、を対応付けて定義したものである。
【0049】
地区テーブル133は、地区名として記入されうる補正文字列と、その地区名に対する分離文字列を含む誤読候補文字列と、を対応付けて定義したものである。
姓テーブル134は、姓として記入されうる補正文字列と、その姓に対する分離文字列を含む誤読候補文字列と、を対応付けて定義したものである。
【0050】
都道府県テーブル131、市区町村テーブル132、地区テーブル133、姓テーブル134、・・・には、分離文字列を含む誤読候補文字列が予め登録される。
図6は、都道府県テーブルのデータ構造例を示す図である。都道府県テーブル131には、誤読候補文字列を示す項目、補正文字列を示す項目および有効文字数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つ誤読候補文字列に関する情報を示す。なお、市区町村テーブル132、地区テーブル133、姓テーブル134、・・・に関しても同様のデータ構成となる。
【0051】
誤読候補文字列を示す項目には、該当の補正文字列に対する誤読候補文字列が設定される。補正文字列を示す項目には、現実に存在する都道府県名を示す文字列が設定される。有効文字数を示す項目には、誤読候補文字列のうち、区分を示す文字または文字列(“都”や“県”など)を除いた部分の文字数を示す値が設定される。
【0052】
都道府県テーブル131には、例えば、誤読候補文字列が“ネ申奈111県”、補正文字列が“神奈川県”、有効文字数が“6”という情報が設定される。これは、補正文字列“神奈川県”に分離文字列を含めた誤読候補として“ネ申奈111県”が認識結果文字列に含まれうることを示しており、“ネ申奈111県”の“県”を除いた部分の文字数が“6”であることを示している。
【0053】
図7は、認識結果文字列テーブルのデータ構造例を示す図である。認識結果文字列テーブル141a,141b,141c,・・・は、認識結果文字列生成部120により、帳票画像200に含まれる項目ごとに生成されて制御情報記憶部140に格納される。なお、以下では、認識結果文字列テーブル141aに関してのみ説明するが、認識結果文字列テーブル141b,141c,・・・に関しても同様の構成である。
【0054】
認識結果文字列テーブル141aは、都道府県を示す項目に対応付けられている。認識結果文字列テーブル141aには、優先順位を示す項目および認識結果文字列を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの認識結果文字列に関する情報を示す。
【0055】
優先順位を示す項目には、該当の認識結果文字列の優先度を示す情報が設定される。認識結果文字列を示す項目には、帳票画像200から読み取られた認識結果文字列が設定される。
【0056】
認識結果文字列テーブル141aには、例えば、優先順位が“第1候補”、認識結果文字列が“神奈ノ11”という情報が設定される。また、認識結果文字列に含まれる各文字のテンプレート文字との相違を示す相違度が設定される。例えば、“神”という文字に対して、相違度“135”が設定される。また、“奈”という文字に対して、相違度“157”が設定される。このように、認識結果文字列に含まれる全ての文字に対して相違度が設定される。
【0057】
なお、認識結果文字列生成部120は、各認識結果文字列に含まれる全ての文字について、相違度が最も小さいもの同士を組み合わせた認識結果文字列の優先順位を高く設定する。
【0058】
図8は、比較文字列テーブルの第1のデータ構造例を示す図である。比較文字列テーブル142aは、比較文字列生成部150によって生成され、制御情報記憶部140に格納される。比較文字列テーブル142aは、認識結果文字列“神奈ノ11”(有効文字数5)が取得された場合に生成されたものを例示している。
【0059】
比較文字列テーブル142aには、比較文字列を示す項目、補正文字列を示す項目および比較文字数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの比較文字列の情報を示す。
【0060】
比較文字列を示す項目には、認識結果文字列と比較するための比較文字列が設定される。補正文字列を示す項目には、該当の比較文字列に対応する補正文字列が設定される。比較文字数を示す項目には、該当の比較文字列に対応する比較文字数が設定される。
【0061】
比較文字列テーブル142aには、例えば、比較文字列が“(ネ)申奈111県”、補正文字列が“神奈川県”、比較文字数が“6”という情報が設定される。これは、比較文字列が、図3で説明した(第2の場合)に該当して生成され、誤読候補文字列の先頭文字が削除されて生成されたものである。括弧内の文字“ネ”は、削除された文字であり、比較対象としては用いられない。そして、この比較文字列の比較文字数が除外した1文字を有効文字数から減算した“6−1=5”であることを示している。
【0062】
比較文字列テーブル142aに例示したその他の比較文字列“神奈111県”や“香111県”などは、(第1の場合)に該当して誤読候補文字列がそのまま比較文字列として採用されたものである。この場合、有効文字数の値がそのまま比較文字数として設定される。
【0063】
図9は、代替認識結果文字列テーブルのデータ構造例を示す図である。代替認識結果テーブル142bは、比較文字列生成部150によって生成され、制御情報記憶部140に格納される。代替認識結果文字列テーブル142bは、認識結果文字列として“神奈ノ11”が取得された場合に生成されたものを例示している。
【0064】
代替認識結果文字列テーブル142bには、代替認識結果文字列を示す項目および対象文字数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの代替認識結果文字列の情報を示す。
【0065】
代替認識結果文字列を示す項目には、認識結果文字列に対して生成された代替認識結果文字列が設定される。対象文字数を示す項目には、該当の代替認識結果文字列の文字数が設定される。
【0066】
代替認識結果文字列テーブル142bには、例えば、代替認識結果文字列が“奈ノ11”、対象文字数が“4”という情報が設定される。これは、図3で説明した(第3の場合)に該当して、認識結果文字列“神奈ノ11”の先頭文字“神”を除いた“奈ノ11”が代替認識結果文字列として生成されたものである。そして、その代替認識結果文字列の文字数が“4”であることを示している。なお、“神奈ノ11”という認識結果文字列には“1”の文字列が連続して2つ含まれている。このため、比較文字列生成部150は、“神奈ノ1”という代替認識結果文字列が2つ生成されることになるが、そのうちの1つのみを優先して代替認識結果文字列テーブル142bに登録する。
【0067】
図10は、比較文字列テーブルの第2のデータ構造例を示す図である。比較文字列テーブル142cは、比較文字列生成部150によって生成され、制御情報記憶部140に格納される。比較文字列テーブル142cは、認識結果文字列として“神剛”が取得された場合に生成されたものを例示している。
【0068】
比較文字列テーブル142cの構成は、比較文字列テーブル142aの構成と同一であるため、説明を省略する。
比較文字列テーブル142cには、例えば、比較文字列が“奈川県”、補正文字列が“神奈川県”、比較文字数が“2”という情報が設定される。これは、比較文字列が図3で説明した(第4の場合)に該当して生成され、補正文字列の先頭の文字が除外されて生成されたものである。このとき、補正文字列の文字数から除外した分の文字数を減算した値が比較文字数となる。また、比較文字列“神奈県”も同様にして生成されたものである。
【0069】
比較文字列テーブル142cに例示したその他の比較文字列“香1県”は、(第1の場合)に該当して誤読候補文字列がそのまま比較文字列として採用されたものである。
図11は、調整定数テーブルのデータ構造例を示す図である。調整定数テーブル143は、制御情報記憶部140に予め格納される。調整定数テーブル143には、項目名を示す項目および調整定数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの調整定数に関する情報を示す。
【0070】
項目名を示す項目には、調整定数の項目名を示す情報が設定される。調整定数を示す項目には、該当の調整定数の値を示す情報が設定される。
調整定数テーブル143には、例えば、次のような項目名および調整定数が設定される。
【0071】
(a)“文字不一致相違度(V)”は、誤読候補文字列に含まれる該当の文字が、認識結果文字列(または代替認識結果文字列)に含まれない場合に、該当の文字の代替相違度とする値Vを示している。Vの値としては、例えば、V=1000が設定される。
【0072】
(b)“1文字分離相違度(W)”は、誤読候補文字列の有効文字数と認識結果文字列の有効文字数との差が1である場合に、誤読候補文字列に含まれる各文字の代替相違度の合計に加算する値Wを示している。Wの値としては、例えば、W=1100が設定される。なお、比較文字列生成部150は、誤読候補文字列として、認識結果文字列との有効文字数の差が2文字以上のものを抽出してもよい。この場合、代替相違度に対して2文字の相違があることを反映した値を代替相違度に加算する。この場合には、各文字の代替相違度の合計にWよりも更に大きな値として、例えば、10000を加算することも考えられる。
【0073】
(c)“文字単位調整相違度閾値(X)”および“文字単位調整相違度差閾値(Y)”は、誤読候補文字列に含まれる該当の文字が、認識結果文字列に含まれる場合に、該当の文字の代替相違度に優位な評価を与えるか否かを判定するための閾値X,Yを示している。例えば、該当の文字の代替相違度の値を小さく評価することで、該当の文字の確度が高いものとして取り扱うことができる。“文字単位調整相違度閾値(X)”は、認識結果文字列(または代替認識結果文字列)の該当の文字に対して認識結果文字列生成部120が算出した相違度がX以下の場合に、優位な評価を与えうることを示している。Xの値としては、例えば、X=200が設定される。また、“文字単位調整相違度差閾値(Y)”は、認識結果文字列の該当の文字に対して、認識結果文字列生成部120が生成した第2候補の認識結果文字列中の該当位置の文字との相違度差がY以上の場合に、優位な評価を与えうることを示している。本例では、上記の両条件が満たされたときに、代替相違度算出部160は、認識結果文字列生成部120が算出した相違度を1/10倍した値を、該当の文字の代替相違度とするものとする。このようにすると、認識結果文字列生成部120が第1候補の認識結果文字列を生成した段階で、他の認識結果文字列の同一文字位置の文字との相違度の差が大きい文字を優位に扱うことができる。
【0074】
図12は、確度定義テーブルのデータ構造例を示す図である。確度定義テーブル144は、制御情報記憶部140に予め格納される。確度定義テーブル144には、評価値を示す項目、評価値差を示す項目および確度を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの確度に関する情報を示す。
【0075】
評価値を示す項目には、評価値の範囲を示す情報が設定される。評価値差を示す項目には、第1候補の誤読候補文字列と第2候補の誤読候補文字列との評価値の差の範囲を示す情報が設定される。確度を示す項目には、該当の評価値範囲かつ評価値差である場合の第1候補の誤読候補文字列の確度を示す情報が設定される。
【0076】
確度定義テーブル144には、例えば、評価値が“600以下”、評価値差が“50以上”、確度が“高”という情報が設定される。これは、評価値が“600以下”であり、評価値差が“50以上”である場合、該当の第1候補の誤読候補文字列の確度を“高”とすることを示している。
【0077】
代替相違度算出部160は、確度定義テーブル144に基づいて、第1候補の誤読候補文字列の確度を決定することができる。
調整定数テーブル143および確度定義テーブル144には、利用環境に応じた最適な各パラメータが予め設定される。
【0078】
次に、以上のような構成を有するコンピュータ100の処理に関して説明する。
図13は、文字認識処理の手順を示すフローチャートである。以下、図13に示す処理をステップ番号に沿って説明する。
【0079】
[ステップS11]画像取得部110は、撮像装置14が帳票を撮像して生成した帳票画像200を取得する。画像取得部110は、取得した帳票画像200を認識結果文字列生成部120に出力する。
【0080】
[ステップS12]認識結果文字列生成部120は、画像取得部110から取得した帳票画像200に含まれる領域211,212,221,222,231,232,・・・に記入された文字列を読み取り、認識結果文字列テーブル141a,141b,141c,・・・を生成して、これらを制御情報記憶部140に格納する。
【0081】
[ステップS13]比較文字列生成部150は、次に処理対象とする項目を特定する。例えば、各項目で処理対象とする順番は予め定められる。具体的には、帳票画像200に含まれる各項目について、住所であれば、都道府県名、市区町村名、地区名、番地、建物名などの順に処理していくことが考えられる。また、氏名であれば、姓、名の順に処理していくことが考えられる。更に、金融機関名であれば、金融機関名、支店名の順で処理していくことが考えられる。
【0082】
[ステップS14]比較文字列生成部150は、制御情報記憶部140に記憶された認識結果文字列テーブル141aを参照して、処理対象とした項目の認識結果文字列(例えば、“神奈ノ11”)を取得する。そして、比較文字列生成部150は、抽出した認識結果文字列の有効文字数(例えば、“神奈ノ11”に対して“5”)を取得する。比較文字列生成部150は、例えば、帳票画像200において該当の文字列を認識した位置によって、各文字列の項目を特定することができる。また、例えば、都道府県名と市区町村名とが「神奈川県相模原市」のように連続して認識されるような場合には、該当の文字に含まれる“県”という文字や、“市”という文字を識別して、都道府県名や市区町村名を特定し、対応する文字列を取得することが考えられる。また、氏名であれば、姓名が連続されて記載されている場合には、姓と名との間の空白などのデリミタを識別して、姓、名を区別することも考えられる。
【0083】
[ステップS15]比較文字列生成部150は、誤読候補情報記憶部130に記憶された誤読候補情報(都道府県テーブル131など)を参照し、上記ステップS14で取得した有効文字数に基づいて、処理対象の項目に対応する誤読候補文字列を抽出する。具体的には、比較文字列生成部150は、取得した有効文字数±nの範囲の有効文字数となる誤読候補文字列を誤読候補情報から抽出する。なお、nの値としては、以降の処理の精度および処理速度を考慮して最適な値が決められる。ここでは、このようなnの値として、n=1が選択されるものとする。この場合、例えば、有効文字数“5”の認識結果文字列に対して、比較文字列生成部150は、誤読候補情報に登録された有効文字数が“6”、“5”、“4”である誤読候補文字列群を取得する。なお、比較対象を増やして照合の精度を更に向上する場合には、nを2以上の整数としてもよい。
【0084】
[ステップS16]比較文字列生成部150は、取得した誤読候補文字列群に対応する補正文字列群を取得する。
[ステップS17]比較文字列生成部150は、取得した認識結果文字列、誤読候補文字列群および補正文字列群に基づいて、比較文字列テーブルを生成する。比較文字列生成部150は、生成した比較文字列テーブルを制御情報記憶部140に格納する。
【0085】
[ステップS18]代替相違度算出部160は、制御情報記憶部140に格納された比較文字列テーブルに含まれる各比較文字列の各文字について、認識結果文字列の各文字に対する代替相違度を算出する。そして、算出した各代替相違度合計Tを求める。
【0086】
[ステップS19]代替相違度算出部160は、各比較文字列についての代替相違度合計Tを該当の比較文字列に対応する比較文字数で割った商を各比較文字列の評価値として算出する。
【0087】
[ステップS20]代替相違度算出部160は、算出した評価値に基づき、各比較文字列の優先順位を決定する。優先順位は、評価値が小さいほど優位であるとして順位付けされる。代替相違度算出部160は、各比較文字列に対して算出した評価値の情報を補正文字列特定部170に出力する。
【0088】
[ステップS21]補正文字列特定部170は、代替相違度算出部160が算出した各比較文字列の評価値のうち優先順位の最も高い第1候補の比較文字列を取得し、これに対応する補正文字列を特定する。補正文字列特定部170は、制御情報記憶部140に記憶された確度定義テーブル144を参照して、特定した補正文字列の確度を決定する。補正文字列特定部170は、特定した補正文字列と対応する確度とを出力部180に出力する。
【0089】
[ステップS22]比較文字列生成部150は、現在処理対象としている項目中に次の処理対象となる項目が存在するか否かを判定する。存在する場合、処理がステップS13に移される。存在しない場合、処理がステップS23に移される。比較文字列生成部150は、例えば、予め定められた順序の最終となる項目(例えば、都道府県名、市区町村名、地区名、・・・の系列の最後の項目)まで処理を完了したか否かを検知することで、上記判定を行うことができる。
【0090】
[ステップS23]出力部180は、補正文字列特定部170から取得した補正文字列と確度との一覧をモニタ11に表示するための画面を生成し、モニタ11に生成した画面を表示させる。
【0091】
このようにして、コンピュータ100は、帳票画像200から読み取られた認識結果文字列に分離文字列が含まれていることを考慮した知識補正を行う。
図14は、比較文字列生成処理の手順を示す第1のフローチャートである。以下、図14に示す処理をステップ番号に沿って説明する。なお、以下の処理は、図13のステップS17の処理を詳細に示すものである。
【0092】
[ステップS31]比較文字列生成部150は、図13のステップS15で取得した誤読候補文字列群から比較文字列を未生成の誤読候補文字列を1つ抽出する。
[ステップS32]比較文字列生成部150は、認識結果文字列と抽出した誤読候補文字列とを比較する。
【0093】
[ステップS33]比較文字列生成部150は、認識結果文字列の有効文字数と、誤読候補文字列の有効文字数とが一致しているか否かを判定する。一致している場合、処理がステップS34に移される。一致していない場合、処理がステップS35に移される。
【0094】
[ステップS34]比較文字列生成部150は、抽出した誤読候補文字列を比較文字列として、制御情報記憶部140に記憶された比較文字列テーブル142aに登録する。このとき、比較文字列生成部150は、該当の比較文字列につき、対応する補正文字列と、比較文字列の比較文字数とを比較文字列テーブル142aに登録する。そして、処理がステップS44に移される。
【0095】
[ステップS35]比較文字列生成部150は、誤読候補文字列の有効文字数の方が、認識結果文字列の有効文字数よりも大きいか否かを判定する。大きい場合、処理がステップS36に移される。大きくない場合、処理がステップS39に移される。
【0096】
[ステップS36]比較文字列生成部150は、認識結果文字列の有効文字数と誤読候補文字列の有効文字数との差を取得する。ここでは、有効文字数の差として1が取得される。
【0097】
[ステップS37]比較文字列生成部150は、誤読候補文字列から取得した差の分の文字を除いた文字列を生成する。
[ステップS38]比較文字列生成部150は、上記ステップS37で生成した文字列を比較文字列として、比較文字列テーブル142aに登録する。このとき、比較文字列生成部150は、該当の比較文字列につき、対応する補正文字列と、比較文字列の比較文字数とを比較文字列テーブル142aに登録する。
【0098】
[ステップS39]比較文字列生成部150は、認識結果文字列と誤読候補文字列との有効文字数の差を取得する。
[ステップS40]比較文字列生成部150は、該当の有効文字数差の代替認識結果文字列を未生成であるか否かを判定する。未生成である場合、処理がステップS41に移される。生成済みである場合、処理がステップS43に移される。比較文字列生成部150は、例えば、認識結果文字列の有効文字数が5で、誤読候補文字列の有効文字数が4である場合に、制御情報記憶部140に記憶された代替認識結果文字列テーブル142bを参照して、対象文字列“4”の代替認識結果文字列が存在するか否かにより上記判定を行うことができる。
【0099】
[ステップS41]比較文字列生成部150は、認識結果文字列から取得した差の分の文字を除いた文字列を生成する。
[ステップS42]比較文字列生成部150は、生成した文字列を代替認識結果文字列として制御情報記憶部140に記憶された代替認識結果文字列テーブル142bに登録する。
【0100】
[ステップS43]比較文字列生成部150は、抽出した誤読候補文字列を比較文字列として、制御情報記憶部140に記憶された比較文字列テーブル142aに登録する。このとき、比較文字列生成部150は、該当の比較文字列につき、対応する補正文字列と、比較文字列の比較文字数とを比較文字列テーブル142aに登録する。
【0101】
[ステップS44]比較文字列生成部150は、誤読候補文字列群に含まれる全ての誤読候補文字列に対して、比較文字列を生成済みであるか否かを判定する。生成済みである場合、処理がステップS45に移される。生成済みでない場合、処理がステップS31に移される。
【0102】
図15は、比較文字列生成処理の手順を示す第2のフローチャートである。以下、図15に示す処理をステップ番号に沿って説明する。なお、以下の処理は、図14のステップS44の処理から続けて実行されるものである。
【0103】
[ステップS45]比較文字列生成部150は、図13のステップS16で取得した補正文字列群から未抽出の補正文字列を1つ抽出する。
[ステップS46]比較文字列生成部150は、認識結果文字列と抽出した補正文字列とを比較する。
【0104】
[ステップS47]比較文字列生成部150は、補正文字列の有効文字数が認識結果文字列の有効文字数よりも小さい否かを判定する。小さい場合(有効文字数が同じ場合も含む)、処理がステップS51に移される。小さくない場合、すなわち、補正文字列の有効文字数の方が、認識結果文字列の有効文字数よりも大きい場合、処理がステップS48に移される。
【0105】
[ステップS48]比較文字列生成部150は、認識結果文字列の有効文字数と補正文字列の有効文字数との差を取得する。例えば、認識結果文字列が“神剛”であれば、その有効文字数は“2”であり、補正文字数が“神奈川県”であれば、その有効文字数は“3”であるので、有効文字数の差は、“3−2=1”となる。
【0106】
[ステップS49]比較文字列生成部150は、補正文字列から取得した差の分の文字を除いた文字列を生成する。
[ステップS50]比較文字列生成部150は、上記ステップS49で生成した文字列を比較文字列として、比較文字列テーブル142aに登録する。このとき、比較文字列生成部150は、該当の比較文字列につき、対応する補正文字列と、比較文字列の比較文字数とを比較文字列テーブル142aに登録する。
【0107】
[ステップS51]比較文字列生成部150は、補正文字列群に含まれる全ての補正文字列を抽出済みであるか否かを判定する。全て抽出済みである場合、処理が完了する。全て抽出済みでない場合、処理がステップS45に移される。
【0108】
このようにして、コンピュータ100は、認識結果文字列と誤読候補文字列との有効文字数の差および認識結果文字列と補正文字列との有効文字数の差に応じて、比較文字列を生成する。そして、比較文字列と認識結果文字列とについて、同じ文字位置(例えば、先頭から2文字目など)にある文字同士を比較する。
【0109】
なお、図14のステップS34,S38において比較文字列生成部150が比較文字列として比較文字列テーブル142aに登録しようとする際に、該当の比較文字列と同一の比較文字列が既に登録済みの場合も考えられる。この場合には、既に取得されている文字列のみを比較文字列とし、新たに登録しようとしている比較文字列は破棄する。例えば、既に“ネ申奈11”が比較文字列として登録されている場合には、新たに登録しようとしている“ネ申奈11”は破棄される。これにより、同一の比較文字列について重複した比較処理が行われないようにすることができる。
【0110】
図16は、代替相違度合計の算出処理の手順を示すフローチャートである。以下、図16に示す処理をステップ番号に沿って説明する。なお、以下の処理は、図13のステップS18の処理を詳細に示すものである。
【0111】
[ステップS61]代替相違度算出部160は、制御情報記憶部140に記憶された比較文字列テーブル142aに含まれる比較文字列のうち、代替相違度を未算出の比較文字列を1つ抽出する。
【0112】
[ステップS62]代替相違度算出部160は、抽出した比較文字列の比較文字数を取得する。
[ステップS63]代替相違度算出部160は、認識結果文字列の有効文字数と比較文字数とが等しいか否かを判定する。等しい場合、処理がステップS64に移される。等しくない場合、処理がステップS65に移される。
【0113】
[ステップS64]代替相違度算出部160は、比較文字列と比較する比較元の文字列として認識結果文字列を抽出する。そして、処理がステップS66に移される。すなわち、以降の処理は、認識結果文字列に対して実行されることになる。
【0114】
[ステップS65]代替相違度算出部160は、比較文字列と比較する比較元の文字列として、制御情報記憶部140に記憶された代替認識結果文字列テーブル142bから比較文字数と対象文字数が等しい代替認識結果文字列を1つ抽出する。
【0115】
[ステップS66]代替相違度算出部160は、カウンタi=0とする。
[ステップS67]代替相違度算出部160は、認識結果文字列および比較文字列に含まれる文字のうち、先頭からi番目の文字を抽出する。そして、抽出した双方の文字が一致しているか否かを判定する。一致している場合、処理がステップS68に移される。一致していない場合、処理がステップS69に移される。
【0116】
[ステップS68]代替相違度算出部160は、該当の文字に対して認識結果文字列生成部120が算出した相違度を代替相違度として取得する。代替相違度算出部160は、制御情報記憶部140に記憶された処理対象としている項目の認識結果文字列テーブルを参照して、この相違度を取得できる。
【0117】
[ステップS69]代替相違度算出部160は、制御情報記憶部140に記憶された調整定数テーブル143を参照して、該当の文字に対する代替相違度を文字不一致相違度(V)とする。なお、図11の例では、V=1000である。
【0118】
[ステップS70]代替相違度算出部160は、取得した代替相違度が調整定数テーブル143に設定された文字単位調整相違度閾値(X)以下であるか否かを判定する。X以下である場合、処理がステップS71に移される。Xより大きい場合、処理がステップS73に移される。なお、図11の例では、X=200である。
【0119】
[ステップS71]代替相違度算出部160は、処理対象としている項目の認識結果文字列テーブルを参照して、該当の文字と、第2候補の認識結果文字列の先頭からi番目の文字との相違度差を算出する。例えば、認識結果文字列テーブル141aにおいて、先頭から2番目の文字を比較する場合、第1候補の文字列に含まれる“奈”という文字に対し、第2候補の文字列に含まれる“合”という文字の相違度差“241−157=84”が算出される。そして、代替相違度算出部160は、算出した相違度差が文字単位調整相違度差閾値(Y)以上であるか否かを判定する。Y以上である場合、処理がステップS72に移される。Yよりも小さい場合、処理がステップS73に移される。なお、図11の例では、Y=100である。
【0120】
[ステップS72]代替相違度算出部160は、該当の文字について取得した代替相違度を1/10倍した値を代替相違度として改めて取得する。
[ステップS73]代替相違度算出部160は、上記ステップS61で抽出した比較文字列について代替相違度を未算出の文字があるか否かを判定する。未算出の文字がある場合、処理がステップS74に移される。未算出の文字がない場合、処理がステップS75に移される。代替相違度算出部160は、例えば、カウンタiの値が該当の比較文字列の“(比較文字数)−1”の値と等しいか否かを判定することで、この判定を行うことができる。
【0121】
[ステップS74]代替相違度算出部160は、カウンタiをインクリメントする。そして、処理がステップS67に移される。
[ステップS75]代替相違度算出部160は、該当の比較文字列に含まれる各文字について取得した代替相違度の和Kを算出する。
【0122】
[ステップS76]代替相違度算出部160は、認識結果文字列の有効文字を取得する。また、代替相違度算出部160は、比較文字列テーブル142aを参照して、該当の比較文字列の有効文字数を取得する。ここで、比較文字列テーブル142aに含まれる比較文字列のうち、例えば“神奈111県”の有効文字数は“5”である。また、“(ネ)申奈111県”の有効文字数は“6”である。代替相違度算出部160は、取得した各有効文字数に差があるか否かを判定する。差がある場合、処理がステップS77に移される。差がない場合、代替相違度算出部160は、代替相違度合計T=Kとして、処理がステップS78に移される。
【0123】
[ステップS77]代替相違度算出部160は、代替相違度の和Kに1文字分離相違度(W)を加算する。図11の例では、W=1100である。代替相違度算出部160は、この値を代替相違度合計T(=K+W)とする。なお、本例では、認識結果文字列と比較文字列との有効文字数に差がある場合、その差は1である。したがって、ここでは1文字分の差が存在することを反映した値WをTに加算するものとしている。ただし、有効文字数の差が2以上の比較文字列が抽出されるような場合には、その差に応じた値を加算することが考えられる。
【0124】
[ステップS78]代替相違度算出部160は、該当の代替相違度合計Tが代替認識結果文字列について求められたものであって、代替認識結果文字列テーブル142bに登録された該当の対象文字数である全ての代替認識結果文字列に関して算出済みであるか否かを判定する。該当の代替相違度合計Tが認識結果文字列について算出されたものである場合、または、対象となる全ての代替認識結果文字列に関して算出済みである場合、処理がステップS79に移される。代替認識結果文字列について求められたものであって、対象となる代替認識結果文字列に未算出のものがある場合、処理がステップS65に移される。
【0125】
[ステップS79]代替相違度算出部160は、比較文字列テーブル142aに含まれる全ての比較文字列について代替相違度合計Tを算出済みであるか否かを判定する。算出済みである場合、処理が完了する。算出済みでない場合、処理がステップS61に移される。
【0126】
このようにして、コンピュータ100は、各比較文字列の代替相違度合計Tを算出する。このとき、コンピュータ100は、認識結果文字列と比較文字列との同じ文字位置にある文字を比較して、それらの文字が一致するか否かを判定し、制御情報記憶部140に記憶された調整定数テーブル143を参照して、代替相違度を決定する。更に、各文字の代替相違度の和に加えて、認識結果文字列の有効文字数と比較文字列に対応する有効文字数との差に応じた調整値を加算して、代替相違度合計を算出する。
【0127】
なお、上記ステップS69において決定した代替相違度が文字単位調整相違度(X)よりも明らかに大きい値の場合には、上記ステップS69に続いて上記ステップS73を実行する手順としてもよい。
【0128】
図17は、評価結果の第1の具体例を示す図である。評価結果テーブル310は、代替相違度算出部160によって生成され、補正文字列特定部170に出力される。評価結果テーブル310は、認識結果文字列が“神奈ノ11”である場合を例示している。
【0129】
評価結果テーブル310には、順位を示す項目、比較元文字列を示す項目、比較文字列を示す項目、代替相違度合計を示す項目、評価値を示す項目および補正文字列を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて1つの比較文字列の評価結果に関する情報を示す。
【0130】
順位を示す項目には、比較の結果求められた優先度を示す順位が設定される。対応する評価値が小さいほど、優先度は高くなる。比較元文字列を示す項目には、比較の元となる文字列として、認識結果文字列または代替認識結果文字列が設定される。比較文字列を示す項目には、比較元文字列と比較するための比較文字列が設定される。代替相違度合計を示す項目には、代替相違度合計の値が設定される。評価値を示す項目には、評価値が設定される。補正文字列を示す項目には、該当の比較文字列に対応する補正文字列が設定される。
【0131】
評価結果テーブル310には、例えば、順位“1”の比較文字列として“神奈111県”が示されている。このときの比較元文字列には、認識結果文字列と同一の文字列である“神奈ノ11”が示されている。代替相違度算出部160は、比較元文字列“神奈ノ11”に対する“神奈111県”(ただし、“県”は比較対象外)の評価値を、次のようにして求める。
【0132】
(a1)代替相違度算出部160は、先頭の文字同士を比較する。比較元文字列の“神”という文字と比較文字列の“神”という文字は一致する。このため、比較元文字列の“神”に対して認識結果文字列生成部120が算出した相違度“135”を比較文字列の“神”に対する代替相違度とする。なお、文字の一致または不一致の判定は、例えば、文字コードが一致するか否かにより行うことができる。
【0133】
(a2)代替相違度算出部160は、2番目の文字同士を比較する。比較元文字列の“奈”という文字と比較文字列の“奈”という文字は一致する。このため、比較元文字列の“奈”に対して認識結果文字列生成部120が算出した相違度“157”を比較文字列の“奈”に対する代替相違度とする。
【0134】
(a3)代替相違度算出部160は、3番目の文字同士を比較する。比較元文字列の“ノ”という文字と比較文字列の“1”という文字は一致しない。このため、比較文字列の3番目の“1”に対する代替相違度を文字不一致相違度V=“1000”とする。
【0135】
(a4)代替相違度算出部160は、4番目の文字同士を比較する。比較元文字列の4番目の“1”という文字と比較文字列の4番目の“1”という文字は一致する。このため、比較元文字列の4番目の“1”に対して認識結果文字列生成部120が算出した相違度“102”を比較文字列の4番目の“1”に対する代替相違度とする。ここで、認識結果文字列テーブル141aを参照すると、第1候補の“神奈ノ11”に対して、第2の候補の“伸合1、1”の4番目の文字同士の相違度差が“215−102=113”であり、文字単位調整相違度差閾値(Y)=100以上を満たしている。また、代替相違度“102”は、文字単位調整相違度閾値(X)=200以下を満たしている。このため、代替相違度算出部160は、代替相違度102を1/10にした値を改めて代替相違度として取得する。すなわち、4番目の“1”に対する代替相違度を“(102/10)=10”(小数点切捨て)とする。
【0136】
(a5)代替相違度算出部160は、5番目の文字同士を比較する。比較元文字列の5番目の“1”という文字と比較文字列の5番目の“1”という文字は一致する。このため、比較元文字列の5番目の“1”に対して認識結果文字列生成部120が算出した相違度“108”を比較文字列の5番目の“1”に対する代替相違度とする。
【0137】
(a6)代替相違度算出部160は(a1)〜(a5)で求めた各文字の代替相違度を合計して代替相違度合計T=“1410”を得る。
(a7)代替相違度算出部160は、代替相違度合計Tを比較文字列“神奈111県”に対応する比較文字数“5”で割った商である“282”を評価値とする。
【0138】
また、評価結果テーブル310には、例えば、順位“2”の比較文字列として“神奈11県”が示されている。代替相違度算出部160は、比較元文字列“神奈11”に対する“神奈11県”(ただし、“県”は比較対象外)の評価値を、次のようにして求める。
【0139】
(b1)代替相違度算出部160は、先頭の文字同士を比較する。比較元文字列の“神”という文字と比較文字列の“神”という文字は一致する。このため、比較元文字列の“神”に対して認識結果文字列生成部120が算出した相違度“135”を比較文字列の“神”に対する代替相違度とする。
【0140】
(b2)代替相違度算出部160は、2番目の文字同士を比較する。比較元文字列の“奈”という文字と比較文字列の“奈”という文字は一致する。このため、比較元文字列の“奈”に対して認識結果文字列生成部120が算出した相違度“157”を比較文字列の“奈”に対する代替相違度とする。
【0141】
(b3)代替相違度算出部160は、3番目の文字同士を比較する。比較元文字列の3番目の“1”という文字と比較文字列の3番目の“1”という文字は一致する。このため、比較元文字列の3番目の“1”に対して認識結果文字列生成部120が算出した相違度“102”を比較文字列の3番目の“1”に対する代替相違度とする。ここで、認識結果文字列テーブル141aを参照すると、第1候補の“神奈ノ11”に対して、第2の候補の“伸合1、1”の4番目の文字同士の相違度差が“215−102=113”であり、文字単位調整相違度差閾値(Y)=100以上を満たしている。なお、この第1候補の4番目の文字は、比較元文字列“神奈11”の3番目の“1”に対応している。また、代替相違度“102”は、文字単位調整相違度閾値(X)=200以下を満たしている。このため、代替相違度算出部160は、代替相違度102を1/10にした値を改めて代替相違度として取得する。すなわち、3番目の“1”に対する代替相違度を“(102/10)=10”(小数点切捨て)とする。
【0142】
(b4)代替相違度算出部160は、(b1)〜(b3)で求めた各文字の代替相違度の和に有効文字数の差を反映した1文字分離相違度W=1100を合計して代替相違度合計T=“1402”を得る。
【0143】
(b5)代替相違度算出部160は、代替相違度合計Tを比較文字列“神奈11県”に対応する比較文字数“4”で割った商である“350”を評価値とする。
また、評価結果テーブル310には、例えば、順位“10”の比較文字列として“(ネ)申奈111県”が示されている。このときの比較元文字列には、比較元文字列と同一の文字列である“神奈ノ11”が示されている。代替相違度算出部160は、比較元文字列“神奈ノ11”に対する“(ネ)申奈111県”(ただし、“県”は比較対象外)の評価値を、次のようにして求める。なお、“(ネ)申奈111県”は、“ネ申奈111県”という誤読候補文字列に対応して生成されたものであり、“(ネ)”は、比較の対象外となっていることを示している。
【0144】
(c1)代替相違度算出部160は、先頭の文字同士を比較する。比較元文字列の“申”という文字と比較文字列の“神”という文字は一致しない。このため、比較元文字列の“申”に対する代替相違度を文字不一致相違度V=“1000”とする。
【0145】
(c2)代替相違度算出部160は、2番目の文字同士を比較する。比較元文字列の“奈”という文字と比較文字列の“奈”という文字は一致する。このため、比較元文字列の“奈”に対して認識結果文字列生成部120が算出した相違度“157”を比較文字列の“奈”に対する代替相違度とする。
【0146】
(c3)代替相違度算出部160は、3番目の文字同士を比較する。比較元文字列の“ノ”という文字と比較文字列の“1”という文字は一致しない。このため、比較文字列の3番目の“1”に対する代替相違度を文字不一致相違度V=“1000”とする。
【0147】
(c4)代替相違度算出部160は、4番目の文字同士を比較する。比較元文字列の4番目の“1”という文字と比較文字列の4番目の“1”という文字は一致する。このため、比較元文字列の4番目の“1”に対して認識結果文字列生成部120が算出した相違度“102”を比較文字列の4番目の“1”に対する代替相違度とする。ここで、認識結果文字列テーブル141aを参照すると、第1候補の“神奈ノ11”に対して、第2の候補の“伸合1、1”の4番目の文字同士の相違度差が“215−102=113”であり、文字単位調整相違度差閾値(Y)=100以上を満たしている。また、代替相違度“102”は、文字単位調整相違度閾値(X)=200以下を満たしている。このため、代替相違度算出部160は、代替相違度102を1/10にした値を改めて代替相違度として取得する。すなわち、4番目の“1”に対する代替相違度を(102/10)=10(小数点切捨て)とする。
【0148】
(c5)代替相違度算出部160は、5番目の文字同士を比較する。比較元文字列の5番目の“1”という文字と比較文字列の5番目の“1”という文字は一致する。このため、比較元文字列の5番目の“1”に対して認識結果文字列生成部120が算出した相違度“108”を比較文字列の5番目の“1”に対する代替相違度とする。
【0149】
(c6)代替相違度算出部160は(c1)〜(c5)で求めた各文字の代替相違度の和に更に有効文字数の差を反映した1文字分離相違度W=1100を合計して代替相違度合計T=“3375”を得る。
【0150】
(c7)代替相違度算出部160は、代替相違度合計Tを比較文字列“(ネ)申奈11県”に対応する比較文字数“5”で割った商である“562”を評価値とする。
代替相違度算出部160は、上記のようにして、各比較文字列の評価値を算出し、評価値の小さい比較文字列ほど優先順位の高いものとして評価結果テーブル310に設定する。
【0151】
評価結果テーブル310により、分離文字列が含まれる認識結果文字列に対して、最も優先度の高い比較文字列を特定することができる。
図18は、評価結果の第2の具体例を示す図である。評価結果テーブル320は、代替相違度算出部160によって生成され、補正文字列特定部170に出力される。評価結果テーブル320は、認識結果文字列が“神剛”である場合を例示している。
【0152】
評価結果テーブル320の構成は、図17に示した評価結果テーブル310の構成と同一であるため説明を省略する。
評価結果テーブル320には、例えば、順位“1”の比較文字列として“神奈県”が示されている。代替相違度算出部160は、認識結果文字列“神剛”に対する“神奈県”(ただし“県”は比較対象外)の評価値を、次のようにして求める。なお、“神奈県”は、認識結果文字列“神剛”の有効文字数“2”が補正文字列“神奈川県”の有効文字数“3”よりも小さいために、比較文字列生成部150により生成されたものである。
【0153】
(d1)代替相違度算出部160は、先頭の文字同士を比較する。認識結果文字列の“神”という文字と比較文字列の“神”という文字は一致する。このため、認識結果文字列の“神”に対して認識結果文字列生成部120が算出した相違度“135”を比較文字列の“神”に対する代替相違度とする。
【0154】
(d2)代替相違度算出部160は、2番目の文字同士を比較する。認識結果文字列の“剛”という文字と比較文字列の“奈”という文字は一致しない。このため、認識結果文字列の“奈”に対する代替相違度を文字不一致相違度V=“1000”とする。
【0155】
(d3)代替相違度算出部160は、(d1)、(d2)で求めた各文字の代替相違度を合計して代替相違度合計T=“1135”を得る。
(d4)代替相違度算出部160は、代替相違度合計Tを比較文字列“神奈県”に対応する比較文字数“2”で割った商である“567”を評価値とする。
【0156】
なお、比較文字列“奈川県”および“香1県”についても同様にして評価値が算出される。ここで、両比較文字列ともに認識結果文字列と一致する文字が存在しないので、評価値の値が“1000”と算出される。このため、両比較文字列ともに同じ優先順位となる。
【0157】
図19は、文字認識結果確認ウィンドウの表示例を示す図である。文字認識結果確認ウィンドウ400は、出力部180により生成され、モニタ11に表示される。
文字認識結果確認ウィンドウ400には、候補表示領域410、確定ボタン表示領域420および他候補選択ボタン表示領域430が設けられている。
【0158】
候補表示領域410には、知識補正の結果、最も確度の高い補正文字列が表示される。このとき、該当の補正文字列に関する知識補正の確度を示す情報も表示される。確度を示す情報は、補正文字列特定部170によって生成される。
【0159】
補正文字列特定部170は、例えば、代替相違度算出部160から評価結果テーブル310を取得すると、優先順位の最も高い比較文字列に対応する補正文字列“神奈川県”を取得する。そして、補正文字列特定部170は、制御情報記憶部140に記憶された確度定義テーブル144を参照して、取得した補正文字列“神奈川県”に対する確度を特定する。具体的には、第1候補の“神奈111県”に対する評価値が“282”で“350”以下であり、かつ、第2候補の“神奈11県”の評価値“562”との評価値差が“350−282=68”で“50”以上であるので、確度を“高”と特定する。
【0160】
このようにして、補正文字列特定部170は、各項目に表示する補正文字列の確度を特定し、出力部180に通知する。出力部180は、補正文字列特定部170から取得した各項目の補正文字列と共に確度の情報を候補表示領域410に含める。
【0161】
確定ボタン表示領域420は、候補表示領域410に表示された各項目の候補を入力データとして確定するためのボタンである。
他候補選択ボタン表示領域430は、候補表示領域410に表示された文字列とは別の文字列の表示を出力部180に指示するためのボタンである。出力部180は、この指示を受け付けると、補正文字列特定部170から他の補正文字列を取得して、モニタ11に表示させる。
【0162】
オペレータは、文字認識結果確認ウィンドウ400を閲覧し、キーボード12やマウス13を用いて各ボタンに操作入力を行うことで、文字認識結果の確認を行い、必要に応じて再補正することができる。
【0163】
なお、例えば、認識結果文字列生成部120により、認識結果文字列として“神奈ノ11”が生成され、この認識結果文字列が、誤読候補情報記憶部130に記憶された都道府県テーブル131に未登録である場合が考えられる。この場合、上記確定ボタンが押下されたタイミングで、都道府県テーブル131に“神奈川”という補正文字列に対応付けて“神奈ノ11”という誤読候補文字列を新たに登録することが考えられる。このようにすると、以後の知識補正において、“神奈ノ11”が比較対象に加わることになり、補正の精度を向上することができる。
【0164】
以上、説明したように、コンピュータ100によれば、単一の文字が複数の文字に分離して認識された分離文字列を考慮した誤読候補情報を用いて知識補正を行う。誤読候補情報には、補正文字列に対応付けて、分離文字列を含む誤読候補文字列が登録される。コンピュータ100は、この誤読候補文字列と帳票画像200から読み取られた認識結果文字列とを比較することで補正文字列の特定精度を向上することができる。
【0165】
このとき、コンピュータ100は、認識結果文字列との比較に用いる比較文字列を、認識結果文字列の有効文字数と誤読候補文字列の有効文字数との差に応じて生成する。これにより、比較文字列に対する認識結果文字列の比較を、同一文字位置(例えば、先頭から2番目の位置など)の文字同士の比較により容易に行うことができる。
【0166】
また、認識結果文字列と比較文字列との食い違いの度合い(代替相違度)を文字ごとの一致または不一致、有効文字数の相違、認識結果文字列生成時の他の候補に対する優位性などによって評価する。このように代替相違度を詳細に評価することで、より確度の高い比較文字列を精度良く特定することができる。
【0167】
また、コンピュータ100は、認識結果文字列の有効文字数に比べて、誤読候補文字列に対応する補正文字列の有効文字数の方が大きい場合には、補正文字列から文字数差の分の文字を除いた文字列を比較文字列として生成する。これにより、複数の文字が単一の文字に統合された統合文字に対する補正を行うことができる。
【0168】
なお、コンピュータ100が有すべき機能は、知識補正プログラムをコンピュータ100で実行することにより実現される。処理内容を記述したプログラムは、コンピュータ100で読み取り可能な記録媒体に記録しておくことができる。コンピュータ100で読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。
【0169】
プログラムを流通させる場合には、例えば、そのプログラムが記録された光ディスクなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、そのプログラムを、サーバコンピュータからネットワークを介して他のコンピュータに転送することもできる。
【0170】
コンピュータ100は、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータ100は、自己の記憶装置からプログラムを読み取り、そのプログラムに従った処理を実行する。なお、コンピュータ100は、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータ100は、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0171】
以上、本発明の知識補正プログラム、知識補正装置および知識補正方法を図示の実施の形態に基づいて説明したが、これらに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置き換えることができる。また、他の任意の構成物や工程が付加されてもよい。また、本発明は前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
【符号の説明】
【0172】
1 コンピュータ
1a 誤読候補情報記憶手段
1b 認識結果文字列生成手段
1c 文字列比較手段
1d 出力手段
2 画像情報
3 認識結果文字列
4 補正文字列
【特許請求の範囲】
【請求項1】
コンピュータを、
複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を前記各補正文字列に対応付けて定義した誤読候補情報を記憶する誤読候補情報記憶手段に記憶された前記誤読候補情報を参照して、前記各誤読候補文字列のうち、認識結果文字列生成手段により画像情報に含まれる文字列の候補として生成された認識結果文字列に最も一致する前記誤読候補文字列を特定し、当該誤読候補文字列に対応する前記補正文字列を特定する文字列比較手段、
前記文字列比較手段が特定した前記補正文字列を出力する出力手段、
として機能させることを特徴とする知識補正プログラム。
【請求項2】
前記文字列比較手段は、前記各誤読候補文字列のうち、前記誤読候補文字列の文字数に対して所定の値だけ増減した文字数範囲に含まれる文字数である誤読候補文字列の中から、前記認識結果文字列に最も一致する前記誤読候補文字列を特定することを特徴とする請求項1記載の知識補正プログラム。
【請求項3】
前記文字列比較手段は、前記認識結果文字列に含まれる各文字と前記各誤読候補文字列に含まれる各文字とにつき、同じ文字位置にある文字同士の一致または不一致を比較して、前記認識結果文字列と前記各誤読候補文字列との相違の度合いを示す所定の評価値を算出し、当該評価値に基づいて、前記認識結果文字列に最も一致する前記誤読候補文字列を特定することを特徴とする請求項2記載の知識補正プログラム。
【請求項4】
前記文字列比較手段は、前記相違の度合いが大きくなるほど前記評価値も大きくなるように算出し、前記認識結果文字列の文字数と前記誤読候補文字列の文字数との間に差がある場合、前記評価値に当該文字数の差に応じた値を加算することを特徴とする請求項3記載の知識補正プログラム。
【請求項5】
前記文字列比較手段は、前記認識結果文字列の文字数よりも前記誤読候補文字列の文字数の方が大きい場合、当該文字数の差を取得し、前記誤読候補文字列から前記文字数の差と同じ数の文字を除いた複数の第1比較文字列を前記誤読候補文字列に対応する前記補正文字列に対応付けて生成し、前記認識結果文字列と前記各第1比較文字列との前記評価値を算出することを特徴とする請求項3または4の何れか1項に記載の知識補正プログラム。
【請求項6】
前記文字列比較手段は、前記認識結果文字列の文字数よりも前記誤読候補文字列の文字数の方が小さい場合、当該文字数の差を取得し、前記認識結果文字列から前記文字数の差と同じ数の文字を除いた複数の比較元文字列を前記認識結果文字列に対応付けて生成し、前記各比較元文字列と前記誤読候補文字列との前記評価値を算出することを特徴とする請求項3乃至5の何れか1項に記載の知識補正プログラム。
【請求項7】
前記文字列比較手段は、前記認識結果文字列の文字数よりも前記誤読候補文字列に対応する前記補正文字列の文字数の方が大きい場合、当該文字数の差を取得し、前記補正文字列から前記文字数の差と同じ数の文字を除いた複数の第2比較文字列を当該補正文字列に対応付けて生成し、前記認識結果文字列と前記各第2比較文字列との前記評価値を算出することを特徴とする請求項3乃至6の何れか1項に記載の知識補正プログラム。
【請求項8】
前記出力手段は、前記補正文字列を取得すると、前記評価値に応じた確度情報を記憶する確度定義情報記憶手段を参照して、前記文字列比較手段が当該補正文字列につき算出した前記評価値に応じた前記確度情報を取得し、前記補正文字列と共に前記確度情報を表示装置に表示させることを特徴とする請求項3乃至7の何れか1項に記載の知識補正プログラム。
【請求項9】
画像情報に含まれる文字列を認識する知識補正装置であって、
複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を前記各補正文字列に対応付けて定義した誤読候補情報を記憶する誤読候補情報記憶手段に記憶された前記誤読候補情報を参照して、前記各誤読候補文字列のうち、認識結果文字列生成手段により画像情報に含まれる文字列の候補として生成された認識結果文字列に最も一致する前記誤読候補文字列を特定し、当該誤読候補文字列に対応する前記補正文字列を特定する文字列比較手段と、
前記文字列比較手段が特定した前記補正文字列を出力する出力手段と、
を有することを特徴とする知識補正装置。
【請求項10】
画像情報に含まれる文字列を認識する知識補正装置の知識補正方法であって、
文字列比較手段が、複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を前記各補正文字列に対応付けて定義した誤読候補情報を記憶する誤読候補情報記憶手段に記憶された前記誤読候補情報を参照して、前記各誤読候補文字列のうち、認識結果文字列生成手段により画像情報に含まれる文字列の候補として生成された認識結果文字列に最も一致する前記誤読候補文字列を特定して、当該誤読候補文字列に対応する前記補正文字列を特定し、
出力手段が、前記文字列比較手段により特定された前記補正文字列を出力する、
ことを特徴とする知識補正方法。
【請求項1】
コンピュータを、
複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を前記各補正文字列に対応付けて定義した誤読候補情報を記憶する誤読候補情報記憶手段に記憶された前記誤読候補情報を参照して、前記各誤読候補文字列のうち、認識結果文字列生成手段により画像情報に含まれる文字列の候補として生成された認識結果文字列に最も一致する前記誤読候補文字列を特定し、当該誤読候補文字列に対応する前記補正文字列を特定する文字列比較手段、
前記文字列比較手段が特定した前記補正文字列を出力する出力手段、
として機能させることを特徴とする知識補正プログラム。
【請求項2】
前記文字列比較手段は、前記各誤読候補文字列のうち、前記誤読候補文字列の文字数に対して所定の値だけ増減した文字数範囲に含まれる文字数である誤読候補文字列の中から、前記認識結果文字列に最も一致する前記誤読候補文字列を特定することを特徴とする請求項1記載の知識補正プログラム。
【請求項3】
前記文字列比較手段は、前記認識結果文字列に含まれる各文字と前記各誤読候補文字列に含まれる各文字とにつき、同じ文字位置にある文字同士の一致または不一致を比較して、前記認識結果文字列と前記各誤読候補文字列との相違の度合いを示す所定の評価値を算出し、当該評価値に基づいて、前記認識結果文字列に最も一致する前記誤読候補文字列を特定することを特徴とする請求項2記載の知識補正プログラム。
【請求項4】
前記文字列比較手段は、前記相違の度合いが大きくなるほど前記評価値も大きくなるように算出し、前記認識結果文字列の文字数と前記誤読候補文字列の文字数との間に差がある場合、前記評価値に当該文字数の差に応じた値を加算することを特徴とする請求項3記載の知識補正プログラム。
【請求項5】
前記文字列比較手段は、前記認識結果文字列の文字数よりも前記誤読候補文字列の文字数の方が大きい場合、当該文字数の差を取得し、前記誤読候補文字列から前記文字数の差と同じ数の文字を除いた複数の第1比較文字列を前記誤読候補文字列に対応する前記補正文字列に対応付けて生成し、前記認識結果文字列と前記各第1比較文字列との前記評価値を算出することを特徴とする請求項3または4の何れか1項に記載の知識補正プログラム。
【請求項6】
前記文字列比較手段は、前記認識結果文字列の文字数よりも前記誤読候補文字列の文字数の方が小さい場合、当該文字数の差を取得し、前記認識結果文字列から前記文字数の差と同じ数の文字を除いた複数の比較元文字列を前記認識結果文字列に対応付けて生成し、前記各比較元文字列と前記誤読候補文字列との前記評価値を算出することを特徴とする請求項3乃至5の何れか1項に記載の知識補正プログラム。
【請求項7】
前記文字列比較手段は、前記認識結果文字列の文字数よりも前記誤読候補文字列に対応する前記補正文字列の文字数の方が大きい場合、当該文字数の差を取得し、前記補正文字列から前記文字数の差と同じ数の文字を除いた複数の第2比較文字列を当該補正文字列に対応付けて生成し、前記認識結果文字列と前記各第2比較文字列との前記評価値を算出することを特徴とする請求項3乃至6の何れか1項に記載の知識補正プログラム。
【請求項8】
前記出力手段は、前記補正文字列を取得すると、前記評価値に応じた確度情報を記憶する確度定義情報記憶手段を参照して、前記文字列比較手段が当該補正文字列につき算出した前記評価値に応じた前記確度情報を取得し、前記補正文字列と共に前記確度情報を表示装置に表示させることを特徴とする請求項3乃至7の何れか1項に記載の知識補正プログラム。
【請求項9】
画像情報に含まれる文字列を認識する知識補正装置であって、
複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を前記各補正文字列に対応付けて定義した誤読候補情報を記憶する誤読候補情報記憶手段に記憶された前記誤読候補情報を参照して、前記各誤読候補文字列のうち、認識結果文字列生成手段により画像情報に含まれる文字列の候補として生成された認識結果文字列に最も一致する前記誤読候補文字列を特定し、当該誤読候補文字列に対応する前記補正文字列を特定する文字列比較手段と、
前記文字列比較手段が特定した前記補正文字列を出力する出力手段と、
を有することを特徴とする知識補正装置。
【請求項10】
画像情報に含まれる文字列を認識する知識補正装置の知識補正方法であって、
文字列比較手段が、複数の補正文字列それぞれに含まれる文字を複数の文字に分離した1つ以上の分離文字列を含む誤読候補文字列を前記各補正文字列に対応付けて定義した誤読候補情報を記憶する誤読候補情報記憶手段に記憶された前記誤読候補情報を参照して、前記各誤読候補文字列のうち、認識結果文字列生成手段により画像情報に含まれる文字列の候補として生成された認識結果文字列に最も一致する前記誤読候補文字列を特定して、当該誤読候補文字列に対応する前記補正文字列を特定し、
出力手段が、前記文字列比較手段により特定された前記補正文字列を出力する、
ことを特徴とする知識補正方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公開番号】特開2010−237909(P2010−237909A)
【公開日】平成22年10月21日(2010.10.21)
【国際特許分類】
【出願番号】特願2009−84228(P2009−84228)
【出願日】平成21年3月31日(2009.3.31)
【出願人】(000237639)富士通フロンテック株式会社 (667)
【Fターム(参考)】
【公開日】平成22年10月21日(2010.10.21)
【国際特許分類】
【出願日】平成21年3月31日(2009.3.31)
【出願人】(000237639)富士通フロンテック株式会社 (667)
【Fターム(参考)】
[ Back to top ]