帳票認識装置および帳票認識方法
【課題】
多種レイアウトが混在する帳票群に対して、読取対象文字列の記載位置および属性の事前定義なしに、文字認識誤りに頑健に、かつ文字列配置の曖昧性のある帳票を誤り少なく、文字列を読み取る。
【解決手段】
帳票認識装置において、帳票画像から文字列領域を検出し(S120)、検出された文字列に対し、項目名らしさを表す項目名尤度と、項目値らしさを表す項目値尤度を計算し(S140,S150)、検出された前記文字列の組み合わせからなる文字列ペアに対し、前記文字列ペアの配置関係の項目名−項目値関係としての妥当さを表す配置尤度を計算し(S160)、項目名尤度、前記項目値尤度、配置尤度の値から、項目名−項目値関係の評価値を計算し(S170)、帳票画像内の項目名−項目値関係を決定する(S180)。
多種レイアウトが混在する帳票群に対して、読取対象文字列の記載位置および属性の事前定義なしに、文字認識誤りに頑健に、かつ文字列配置の曖昧性のある帳票を誤り少なく、文字列を読み取る。
【解決手段】
帳票認識装置において、帳票画像から文字列領域を検出し(S120)、検出された文字列に対し、項目名らしさを表す項目名尤度と、項目値らしさを表す項目値尤度を計算し(S140,S150)、検出された前記文字列の組み合わせからなる文字列ペアに対し、前記文字列ペアの配置関係の項目名−項目値関係としての妥当さを表す配置尤度を計算し(S160)、項目名尤度、前記項目値尤度、配置尤度の値から、項目名−項目値関係の評価値を計算し(S170)、帳票画像内の項目名−項目値関係を決定する(S180)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、帳票認識装置および帳票認識方法に係り、特に帳票画像上に記載される文字列の属性の理解と文字列認識の技術に関する。
【背景技術】
【0002】
従来の帳票認識装置は、あらかじめ読取対象文字列の帳票画像上での記載位置とその属性をユーザが事前に装置に登録しておく「帳票定義」により、読取対象文字列の読取および当該文字列の属性の理解を行っていた。
【0003】
帳票処理業務において、処理する帳票のレイアウト、すなわち文字列の記載位置や枠の記載位置、枠の並びが統一されており、帳票画像における読取対象文字列の記載位置が固定である場合には、前記の帳票定義を事前に装置に登録することで読取対象文字列の位置検出および該文字列の属性の理解を行っていた。一方で、多種レイアウトが混在する帳票処理業務や、処理する帳票のレイアウトが未知である帳票処理業務が存在する。多種レイアウトとは、図2に示す帳票例200,201のように、読取対象文字列の記載位置が帳票ごとに異なることである。図2の例は、帳票画像内から「振込先口座番号」「納入金額」「納入期限日付」を読み取る例であるが、それぞれ記載位置が異なるため、帳票ごとに帳票定義を作成する必要がある。業務によっては帳票レイアウトの種類が数万種類に及ぶ場合もあり、帳票定義による認識は、帳票定義の作成コストが膨大になり利用できなかった。
【0004】
多種レイアウト帳票を帳票定義を用いずに認識する技術として、例えば特許文献1に開示の技術のように、帳票画像内の文字列と、項目名辞書に登録された項目名単語とを照合し、項目名単語照合に成功した文字列を項目名、項目名単語照合に失敗した文字列を項目値(特許文献1では「データ」と表現している)候補と判定し、項目名と項目値候補の配置関係から、項目名と項目値の対応関係を決定し、項目名辞書に登録された項目名の属性から、対応する項目値の属性を判定する方式がある。
【0005】
また、特許文献2の方式では、帳票を論理的に構成する論理要素(項目名や項目値)からなる論理構造を、論理要素となる文字列と当該文字列の出現頻度および論理要素間の相対位置に関する頻度によって定義した辞書を帳票種ごとに作成し、帳票画像内の文字列と辞書内の論理構造を照合することにより、帳票画像内の文字列が論理構造内の論理要素である確率により、帳票画像内から読取対象の文字列を読み取る。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2008−204226号公報
【特許文献2】特開2008−33830号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1では、帳票画像のノイズや低画質などの悪影響により、文字列認識誤りが発生した場合に、項目名単語照合において照合誤りが発生し、帳票画像内の文字列が正しい項目名であるにもかかわらず、項目名でないと判定されることがある。さらに、特許文献1の方式では、項目名と判定された文字列と項目値候補と判定された文字列の配置関係から、項目名−項目値対応関係を決定するため、項目名となる文字列の判定を誤ると、その誤りが項目名−項目値対応関係の判定誤りに直結してしまう。また、1つの項目名に対し、配置関係上対応付けられる項目値候補が複数存在する場合に、項目名−項目値関係の対応付け誤りが発生する恐れがある。
【0008】
また、特許文献2の方式では、帳票種ごとに、論理構造辞書内の論理要素の出現頻度や論理要素間の相対位置の頻度を定義するため、辞書の作成コストが膨大になってしまう。また、論理構造辞書と整合性のとれないレイアウトの帳票の場合、正しい認識結果が得られず、汎用性が低下する。
【0009】
本発明は、このような問題に鑑みてなされたものである。
すなわち、本発明は、項目名照合の前段階の処理である文字列認識処理において、文字列認識誤りが発生した場合にも、帳票画像内から正しく項目名−項目値関係を抽出する帳票認識方式を提供することを第1の課題とする。
また、本発明は、項目名−項目値関係の配置関係に曖昧性がある場合、つまり1つの項目名に対し、配置関係上対応付けられる項目値候補が複数存在する場合にも、対応付け誤りを少なく、項目名−項目値関係を抽出する帳票認識方式を提供することを第2の課題とする。
また、本発明は、辞書の作成コストを極力少なくかつ様々なレイアウトの帳票に対しても、汎用性高く認識できる帳票認識方式を提供することを第3の課題とする。
【課題を解決するための手段】
【0010】
上記課題を解決するために、本発明の帳票認識装置は、帳票画像を入力し、当該帳票画像内の文字列の認識処理を行う帳票認識装置であって、前記帳票画像から文字列領域を検出する文字列検出部と、前記文字列領域の個々の文字を認識する文字列認識部と、帳票画像内の文字列に対し、当該文字列が項目名である確率を表す項目名尤度を計算する項目名尤度計算部と、帳票画像内の文字列に対し、当該文字列が項目値である確率を表す項目値尤度を計算する項目値尤度計算部と、帳票画像内の文字列ペアに対し、当該文字列ペアの配置関係が項目名−項目値関係として妥当であるかを表す配置尤度を計算する配置尤度計算部と、前記項目名尤度、項目値尤度、配置尤度を基に、当該文字列ペアの項目名−項目値としての尤もらしさを表す評価値を計算する項目名−項目値関係評価値計算部と、前記項目名−項目値関係評価値計算部の出力する前記評価値により、帳票画像内での項目名−項目値関係の対応付けを決定する項目名−項目値関係決定部を有することを特徴とするものである。
【0011】
また、本発明の帳票認識装置において、前記配置尤度計算部は、前記文字列ペアの項目名文字列と項目値文字列の枠の配置関係やサイズ、または文字列矩形の配置関係やサイズの項目名−項目値関係の非妥当さを表すルールであるペナルティルールに基づき、前記配置尤度を計算するものである。
【0012】
また、本発明の帳票認識装置において、前記項目名尤度計算部は、項目名単語を記載した項目名辞書との照合により、前記文字列に対し前記項目名尤度を計算し、前記項目値尤度計算部は、項目値単語や文字列の文法表記ルールを記載した表記辞書との照合により、前記文字列に対し前記項目値尤度を計算するものである。
【発明の効果】
【0013】
本発明により、多種レイアウトの帳票が混在する帳票処理業務において、厳密な帳票定義なしに帳票を認識することができる。また、文字認識誤りに頑健に、ならびに項目名−項目値関係に曖昧性のある帳票を誤りが少なく認識することができる。
【図面の簡単な説明】
【0014】
【図1】本発明の実施例における、帳票認識処理のフロー図である。
【図2】多種レイアウト帳票の例を示す図である。
【図3】本発明の実施例における、帳票認識装置の構成図である。
【図4】本発明の実施例における、帳票認識部のブロック構成図である。
【図5】項目名辞書の記載構造の例を示す図である。
【図6】本発明の実施例における、項目名尤度計算のフローチャートである。
【図7】本発明の実施例における、項目名尤度テーブルのデータ構造例を示す図である。
【図8】表記辞書の記載構造の例を示す図である。
【図9】本発明の実施例における、項目値尤度計算のフローチャートである。
【図10】本発明の実施例における、項目名尤度テーブルのデータ構造例を示す図である。
【図11】本発明の実施例における、配置尤度計算のフローチャートである。
【図12】配置尤度計算における、ペナルティルールの例である。
【図13】本発明の実施例における、配置尤度テーブルのデータ構造例を示す図である。
【図14】本発明の実施例における、項目名−項目値関係評価値テーブルのデータ構造例を示す図である。
【図15】帳票画像の例を示す図である
【発明を実施するための形態】
【0015】
以下、本発明の実施の形態を説明する。なお、これにより本発明が限定されるものではない。具体的な処理の内容を説明する前に、本発明の概略について説明する。
【0016】
本発明は、多種レイアウトが混在する帳票群を、読取対象文字列の記載位置および当該文字列の属性を事前に登録する帳票定義なしに、読取対象文字列の読取および当該文字列の属性の判定を行うものである。このためには、項目値とそれに対応する項目名のペアを帳票画像内から抽出することが必要である。本実施例では、帳票画像内の全文字列に対し、当該文字列が項目名である確率を表す項目名尤度、項目値である確率を表す項目値尤度を計算し、帳票画像内の全文字列ペアに対し、当該文字列ペアをなす2つの文字列の配置関係が項目名−項目値関係として妥当であるかを表した配置尤度を計算する。さらに、項目名尤度と項目値尤度と配置尤度を基に計算した項目名−項目値関係評価値の値を基に、帳票画像内の項目名−項目値関係の対応付けを決定する。
【0017】
具体的には、以下の順序により、帳票画像内の項目名−項目値関係の対応付けを決定する。
(1)ユーザが事前に登録した項目名のリストである項目名辞書内の項目名単語と、帳票画像内の文字列とを照合し、項目名辞書内の全ての項目名単語と、帳票画像内の全ての文字列の組み合わせに対して、項目名尤度を計算する。
(2)例えば、日付、金額、口座番号などの汎用的に利用できる文法表記ルールによって定義される表記辞書と、帳票画像内の文字列とを照合し、全ての表記辞書と、帳票画像内の全ての文字列の組み合わせに対して、項目値尤度を計算する。
(3)2つの文字列の配置関係が項目名−項目値関係として非妥当な配置関係となるルールを記載したペナルティルールと、帳票画像内の2つの文字列の組み合わせからなる全ての文字列ペアの配置関係を参照し、帳票画像内の全ての文字列ペアに対して、配置尤度を計算する。
(4)項目名尤度、項目値尤度、配置尤度を基に、帳票画像内の全ての文字列ペアに対して、当該文字列ペアが項目名−項目値関係にあるかを表す評価値を計算し、前記評価値を基に帳票画像内から項目名−項目値関係を抽出する。
なお、(1)(2)(3)はそれぞれ独立に処理されるため、順序は上記の順に依らない。
【実施例】
【0018】
以下、本発明の一実施例になる帳票認識装置および帳票認識方法について、図面を用いて詳細に説明する。
【0019】
図3は、本発明の帳票認識装置のハードウェア構成例である。本実施例の帳票認識装置は、命令コマンドやデータなどを入力するための入力装置301、認識対象の帳票を入力する画像入力装置302、文字列の検出や文字列認識、項目名−項目値関係の解析を行う帳票認識部300、文字認識辞書や項目名単語辞書を格納する認識辞書303、帳票画像の認識結果を表示する表示装置304を備える。帳票認識部300と、入力装置301、画像入力装置302、認識辞書303、表示装置304は、物理的な接続手段に依らず、ネットワークなどを介して接続されてもよい。
【0020】
図4に、帳票認識部300の詳細なブロック構成図を示す。帳票認識部300は、文字列検出部420、文字列認識部430、項目名尤度計算部440、項目値尤度計算部450、配置尤度計算部460、項目名−項目値関係評価値計算部470、項目名−項目値関係決定部480などから構成されている。
【0021】
ここで、文字列検出部420は、帳票画像から文字列領域を検出するものである。文字列認識部430は、文字列領域の個々の文字を認識するものである。項目名尤度計算部440は、帳票画像内の文字列に対し、当該文字列が項目名辞書に登録された単語である確率を表す項目名尤度を計算するものである。項目値尤度計算部450は、帳票画像内の文字列に対し、当該文字列が表記辞書に登録された単語や、金額、日付、口座番号などの文法ルールに一致する確率である項目値尤度を計算するものである。配置尤度計算部460は、帳票画像内の文字列ペアに対し、当該文字列ペアの配置関係の項目名−項目値関係としての妥当さである配置尤度を計算するものである。項目名−項目値関係評価値計算部470は、前記項目名尤度、項目値尤度、配置尤度を基に、当該文字列ペアの項目名−項目値としての尤もらしさを表す評価値を計算するものである。項目名−項目値関係決定部480は、前記項目名−項目値関係評価値計算部の出力する評価値により、帳票画像内での項目名−項目値関係を決定するものである。
【0022】
図1に、帳票認識部300における帳票認識の処理フロー図を示す。まず、ステップS110において、入力された帳票画像から枠を検出する。次に、ステップS120において、文字列検出部420で、帳票画像から文字列領域を検出する。文字列領域とは、ある1つの文字列を含む矩形領域である。ステップS110およびS120の具体例として、例えば、特開平11−53466号公報に開示の技術のように、帳票画像から罫線を抽出し、2本の罫線の交点と端点を抽出し、矩形枠の四隅に相当する右上角、左上角、右下角、左下角を検出することにより、帳票画像内から枠を検出する方式を利用することができる。ステップS130では、文字列認識部430において、ステップS120において検出された文字列領域の個々の文字を文字認識辞書131を用いて認識する。ステップS130の具体例として、例えば、非特許文献:F.Kimura et. al. “Modified quadratic discriminant functions and the application to chinese character recognition” IEEE Transaction on Pattern Analysis and Machine Intelligence、 vol.9、 pp.149-153 に開示の技術のように、ベイズの定理から導かれる距離尺度である識別関数を文字カテゴリごとに定め、識別関数の出力する値に基づいて、未知の文字を文字カテゴリに分類することで、個々の文字を認識する方式などがある。
【0023】
ステップS140では、項目名尤度計算部440で、ステップS130において認識された各文字列の文字列認識結果ごとに、項目名辞書141と照合し、当該文字列が項目名辞書141に登録された単語である確率を表す項目名尤度を計算する。また、ステップS150では、項目値尤度計算部450で、ステップS130において認識された各文字列の文字列認識結果ごとに、表記辞書151と照合し、当該文字列が表記辞書151に記載された単語や文字列の文法表記ルールに一致する確率を表す項目値尤度を計算する。ステップS140、ステップS150の処理は、後に詳細に説明する。
【0024】
ステップS160では、配置尤度計算部460で、ステップS110において検出された枠の座標およびステップS120において検出された文字列領域の座標を基に、帳票画像内の文字列ペアをなす2つの文字列の配置関係の項目名−項目値関係としての妥当さを表す配置尤度を計算する。配置尤度は、2つの文字列が属する枠のサイズおよび配置関係や、2つの文字列矩形のサイズおよび配置関係を基に計算する。ステップS160の処理は、後に詳細に説明する。
【0025】
ステップS170では、項目名−項目値関係評価値計算部470で、ステップS140において計算された項目名尤度、ステップS150において計算された項目値尤度、ステップS160において計算された配置尤度を基に、各尤度の数値から2つの文字列の項目名−項目値関係の評価値を計算する。評価値の計算には、例えば、項目名尤度、項目値尤度、配置尤度を代入することで評価値を出力する評価関数を用いる方法などがある。また、項目名尤度、項目値尤度、配置尤度が全て事前に定義したある閾値を超える場合に評価値を1(フラグを立てる)にする方法などがある。ステップS170の処理は、後に詳細に説明する。
【0026】
ステップS180では、項目名−項目値関係決定部480において、ステップS170で計算された評価値を基に、帳票画像内での項目名−項目値関係を決定する。例えば、評価値がある閾値以上となる文字列ペアを項目名−項目値関係と決定するなどがある。また、同一属性の項目名−項目値関係候補のうち、最大の評価値を持つ文字列ペアを項目名−項目値関係と決定するなどがある。項目名−項目値関係を決定することにより、文字列の認識結果および該文字列の属性が決定される。
【0027】
図1において、ステップS140、ステップS150、ステップS160はそれぞれ独立に並列に計算する。なお、ステップS110の後段にステップS120、ステップS120の後段にステップS130、ステップS130の後段にステップS140とS150、ステップS120の後段にステップS160、ステップS140とS150とS160の後段にステップS170、ステップS170の後段にステップS180が処理される構成であれば、処理フローは図1の形式に依らない。
【0028】
以下、図1のステップS140の項目名尤度計算の処理フロー、ステップS150の項目値尤度計算の処理フロー、ステップS160の配置尤度計算の処理フロー、およびステップS170の項目名−項目値関係評価値計算の計算例について詳細に説明する。
【0029】
まず、ステップS140の項目名尤度計算の処理フローについて、図5と図6と図7を用いて説明する。
図5は項目名辞書の例、図6は項目名尤度計算のフローチャート、図7は項目名尤度テーブルの例である。図6のステップS1401では、帳票画像内の項目名尤度を計算していない文字列の有無を判定する。残り文字列がない場合は、項目名尤度計算処理を終了する。ステップS1402では、当該文字列に対して、照合を行っていない項目名単語の有無を判定する。ステップS1403では、帳票画像内の文字列と項目名辞書内の項目名の照合を行い、項目名尤度を計算する。ステップS1403における単語照合の具体例としては、例えば、特開2004−171316号公報に開示の技術を利用することができる。また、項目名尤度の計算方法として、例えば、図1のステップS130における文字列認識結果が各個別文字の文字識別尤度を有し、単語照合により求まった文字列パスの各個別文字の文字識別尤度の平均値を項目名尤度とする方法が利用できる。また、これに依らず、個別文字の識別尤度、個別文字への切出し尤度、個別文字矩形のサイズおよびアスペクト比等を基に項目名尤度を計算する方式であってもよい。ステップS1404では、ステップS1403で得られた項目名尤度が最大のものを図7の項目名尤度テーブルに記録する。図5の項目名辞書を用いて、図15の帳票画像内の文字列に対して項目名尤度を計算する場合、項目名尤度テーブルの例は図6のようになる。図7の項目名尤度テーブルの場合、帳票画像内のN個(本実施例の場合N=3)の文字列に対し、全ての項目名単語との照合を行い、項目名尤度を計算する。
【0030】
次に、図1のステップS150の項目値尤度計算の処理フローについて、図8と図9と図10を用いて説明する。基本的な概念は前記の項目名尤度計算と同じである。
図9のステップS1501では、帳票画像内に項目値尤度の計算を行っていない文字列があるか判定する。残り文字列がなければ、項目値尤度計算処理を終了する。ステップS1502では、当該文字列に対し、照合を行っていない表記辞書があるか否かを判定する。残り辞書がなければ、帳票画像内の次の文字列の項目値尤度計算に移行する。ステップS1503では、帳票画像内の文字列と表記辞書との照合を行い、項目値尤度を計算する。ステップS1503における単語照合の具体的な実施例としては、例えば、非特許文献:高橋他、「回帰的遷移ネットワークを用いた文字経路探索方式の開発」、電子情報通信学会技術研究報告 Vol.109 No.418 pp.141-146、に開示の技術のように、個別文字の識別候補をノードと見立てた識別候補文字ネットワークと状態遷移ネットワークで表現した表記辞書のマッチングにより、状態遷移ネットワークから最適な文字列パスを選択し、文字列認識結果を得る方法がある。項目値尤度の計算例として、前述の項目名尤度と同様に、個別文字の識別尤度、個別文字への切出し尤度、個別文字矩形のサイズおよびアスペクト比等を基に項目名尤度を計算する方式がある。ステップS1504では、ステップS1503で得られた項目値尤度が最大のものを、項目値尤度テーブルに登録する。以上のステップS1503、S1504の処理を全ての帳票画像内の文字列と表記辞書の組み合わせに対して行う(ステップS1505、S1506)。表記辞書の例として、例えば、図8の801に示すような文字列の表記ルールの正規表現、802に示す単語ネットワーク、803に示す項目値単語リストなどがある。図8の表記辞書801を用いて、図15の帳票画像内の文字列に対して項目値尤度を計算する場合、項目値尤度テーブルは図10のようになる。
【0031】
次に、図1のステップS160の配置尤度計算の処理フローについて、図11と図12を用いて説明する。図11のステップS1701では、配置尤度を計算していない帳票画像内の文字列ペアの有無を判定する。残り文字列ペアがなければ配置尤度計算処理を終了する。ステップS1702では、配置尤度の初期化を行う。本方式では、例えば配置尤度は、配置尤度が取り得る値の最大値で初期化し、文字列ペアをなす2つの文字列の配置関係が項目名−項目値関係として非妥当であると判断できる配置パターンをペナルティルールとして定義し、初期値からペナルティルールによって得られたペナルティ値を減算した値として計算する方法がある。そのため、ステップS1702では、配置尤度の初期値を配置尤度が取り得る値の最大値と設定する。ステップS1704では、2つの文字列の配置関係が参照しているペナルティルールに該当するか否かを判断する。該当した場合、ステップS1705で、ペナルティ値を計算し、現在の配置尤度から減算する。以上、ステップS1703、ステップS1704、ステップS1705をペナルティルールの数だけ繰り返し、当該文字列ペアの配置尤度を計算する。以上の処理を帳票画像内の全文字列ペアに対して実行する。
【0032】
ペナルティルールの例を図12に示す。ペナルティルールは2つの文字列の属する枠の配置関係やサイズ、2つの文字列矩形の配置関係やサイズを基に計算する。例えば、ルール1101の場合、2つの文字列が相互に隣接する枠内に存在する場合に、項目名となる文字列の中心座標が、枠の中心座標からずれがある場合に、ずれの距離に応じてペナルティを付加する。これは、本来2つの文字列が項目名−項目値関係にある場合には、項目名となる文字列は枠の中心付近に存在するといった仮定によるものである。ルール1102の場合、項目名となる文字列の属する枠の高さが、項目値となる文字列の属する枠の高さよりも大きい場合に、枠高さの比率に応じてペナルティを付加する。これは、本来は、項目名の属する枠の高さより、項目値の属する枠高さが大きいといった仮定に基づくものである。ルール1103の場合、2つの文字列が同一枠に存在する場合に、項目名となる文字列よりも、項目値となる文字列が左もしくは上に存在する場合に、左もしくは上方向へのはみ出し距離に応じてペナルティを付加する。これは、本来、2つの文字列が項目名−項目値関係にある場合には、項目名となる文字列の右下方向に項目値が存在するといった仮定に基づくものである。ルール1104の場合、2つの文字列が帳票画像内のいずれの枠にも属さず、枠の外かつ相互に近くに存在する場合に、項目名となる文字列の高さと、項目値となる文字列の高さが異なる場合に、文字列高さの比率に応じて、ペナルティを付加する。これは、本来は、項目名と項目値の文字列の高さは互いにほぼ等しいという仮定に基づくものである。ルール1105は、項目名となる文字列と、項目値となる文字列の距離が離れている場合に、2つの文字列の距離に応じてペナルティを付加する。これは、2つの文字列が項目名−項目値関係にある場合には、2つの文字列は相互に近くにあるといった仮定に基づくものである。ルール1106は、項目名となる文字列より、項目値となる文字列が左上方向に存在する場合に、そのずれの距離に応じてペナルティを付加するものである。これは、本来は、項目名の右下方向に項目値が存在するといった仮定に基づくものである。
【0033】
以上のように、ペナルティルールは、2つの文字列が項目名−項目値関係にある場合の尤もらしい配置関係を仮定し、その仮定から外れる配置関係に2つの文字列が配置される場合に、ペナルティが付加されるように生成される。なお、ペナルティルールは図12に示した1101から1106に限定されるものではなく、2つの文字列の属する枠の配置関係やサイズ、2つの文字列矩形の配置関係やサイズなどから計算されるものであり、2つの文字列が項目名−項目値関係にある場合に尤もらしい配置関係を仮定し、その仮定から外れる場合に付加される計算方法であれば、これに依らない。
【0034】
図12のペナルティルールを用いて、図15の帳票画像内の文字列ペアに対して配置尤度を計算する場合、配置尤度テーブルは図13のようになる。例えば、項目名文字列番号「1」−項目値文字列番号「2」の文字列ペアの場合、図12の1101から1106のペナルティルールのいずれにも該当しないため、配置尤度は初期値として定めた「1.00」となる。また、項目名文字列番号「1」−項目値文字列番号「3」の文字列ペアの場合、図12のペナルティルール1101に該当するため、ペナルティルール1101にて計算されたペナルティが初期値から減算され、配置尤度は「0.90」となる。
【0035】
次に、図1のステップS170の項目名−項目値関係評価値計算の処理フローについて、図14を用いて説明する。項目名−項目値関係評価値は、例えば、項目名尤度、項目値尤度、配置尤度を入力とする評価関数によって計算する。LLを項目名尤度、VLを項目値尤度、ALを配置尤度としたときに、評価関数E(LL、 VL、 AL)の例として、例えば式(1)、式(2)、式(3)に示すものがある。
【0036】
E(LL、 VL、 AL) = (LL + VL) × AL ・・・(1)
E(LL、 VL、 AL) = LL + VL + AL ・・・(2)
E(LL、 VL、 AL) = √(LL × VL) × AL ・・・(3)
なお、評価関数は上記(1)(2)(3)に限るものではなく、項目名尤度、項目値尤度、配置尤度の値から、2つの文字列が項目名−項目値関係にある確からしさを算出できる形式であれば、これに限らない。
【0037】
図7の項目名尤度テーブル、図10の項目値尤度テーブル、図13の配置尤度テーブルが得られた場合、上記式(1)により求めた図15の帳票画像に対する項目名−項目値評価値テーブルは、図14のようになる。項目名−項目値関係評価値は、図5の項目名辞書、図8の表記辞書において、事前に定義した属性ごとに計算し、項目名−項目値評価値テーブルに登録する。本実施例では、項目名尤度、項目値尤度、配置尤度のいずれかが「0.00」となる場合は、項目名−項目値評価値の計算は行わない。例えば、項目名文字列番号「1」、項目値文字列番号「2」の場合は、属性ID「002」に対し、E(LL、 VL、 AL) = (0.25+0.85)×1.00=1.10、属性ID「003」に対し、E(LL、 VL、 AL) = (0.28+0.20)×1.00=0.48となる。項目名文字列番号「1」、項目値文字列番号「3」の場合は、属性ID「003」に対して、E(LL、 VL、 AL) = (0.28+0.92)×0.90=1.08となる。上記のような評価関数による項目名−項目値評価値計算を帳票画像内の全文字列ペアに対して行い、項目名−項目値評価値テーブルに登録する。図15の帳票画像に対する項目名−項目値関係の候補は、項目名文字列番号「1」と項目値文字列番号「2」の「納付額」−「17,420」および、項目名文字列番号「1」と項目値文字列番号「3」の「納期限」−「21.11.13」となる。この場合、両候補において項目名文字列番号「1」が重複するため、評価値の高い文字列ペアが選択され(図1のステップ180)、最終的な項目名−項目値関係抽出結果は、項目名文字列番号「1」と項目値文字列番号「2」の「納付額」−「17,420」(属性ID:002)となる。
【0038】
以上述べた通り、本発明によれば、帳票画像内の文字列の項目名らしさの項目名尤度、項目値らしさの項目値尤度を全文字列に対して計算し、帳票画像内の文字列ペアの配置関係の項目名−項目値らしさの配置尤度を全文字列ペアに対して計算し、項目名尤度、項目値尤度、配置尤度に基づいて計算される項目名−項目値関係評価値によって、帳票画像内の項目名−項目値関係を抽出する帳票認識方式により、文字認識誤りに頑健に、項目名−項目値関係の配置関係の曖昧性のある非表形式レイアウト帳票を誤り少なく認識することができる。また、項目名尤度、項目値尤度、配置尤度をそれぞれ独立に計算するモジュール構成により、少ない定義で汎用性の高い帳票認識方式を提供することができる。
【符号の説明】
【0039】
131・・・文字認識辞書、141・・・項目名辞書、151・・・表記辞書、200,201・・・帳票例、300・・・帳票認識部、301・・・入力装置、302・・・画像入力装置、303・・・認識辞書、304・・・表示装置、420・・・文字列検出部、430・・・文字列認識部、440・・・項目名尤度計算部、450・・・項目値尤度計算部、460・・・配置尤度計算部、470・・・項目名−項目値関係評価値計算部、480・・・項目名−項目値関係決定部、801・・・文字列の表記ルールの正規表現、802・・・単語ネットワーク、803・・・項目値単語リスト、1101〜1106・・・ペナルティルール。
【技術分野】
【0001】
本発明は、帳票認識装置および帳票認識方法に係り、特に帳票画像上に記載される文字列の属性の理解と文字列認識の技術に関する。
【背景技術】
【0002】
従来の帳票認識装置は、あらかじめ読取対象文字列の帳票画像上での記載位置とその属性をユーザが事前に装置に登録しておく「帳票定義」により、読取対象文字列の読取および当該文字列の属性の理解を行っていた。
【0003】
帳票処理業務において、処理する帳票のレイアウト、すなわち文字列の記載位置や枠の記載位置、枠の並びが統一されており、帳票画像における読取対象文字列の記載位置が固定である場合には、前記の帳票定義を事前に装置に登録することで読取対象文字列の位置検出および該文字列の属性の理解を行っていた。一方で、多種レイアウトが混在する帳票処理業務や、処理する帳票のレイアウトが未知である帳票処理業務が存在する。多種レイアウトとは、図2に示す帳票例200,201のように、読取対象文字列の記載位置が帳票ごとに異なることである。図2の例は、帳票画像内から「振込先口座番号」「納入金額」「納入期限日付」を読み取る例であるが、それぞれ記載位置が異なるため、帳票ごとに帳票定義を作成する必要がある。業務によっては帳票レイアウトの種類が数万種類に及ぶ場合もあり、帳票定義による認識は、帳票定義の作成コストが膨大になり利用できなかった。
【0004】
多種レイアウト帳票を帳票定義を用いずに認識する技術として、例えば特許文献1に開示の技術のように、帳票画像内の文字列と、項目名辞書に登録された項目名単語とを照合し、項目名単語照合に成功した文字列を項目名、項目名単語照合に失敗した文字列を項目値(特許文献1では「データ」と表現している)候補と判定し、項目名と項目値候補の配置関係から、項目名と項目値の対応関係を決定し、項目名辞書に登録された項目名の属性から、対応する項目値の属性を判定する方式がある。
【0005】
また、特許文献2の方式では、帳票を論理的に構成する論理要素(項目名や項目値)からなる論理構造を、論理要素となる文字列と当該文字列の出現頻度および論理要素間の相対位置に関する頻度によって定義した辞書を帳票種ごとに作成し、帳票画像内の文字列と辞書内の論理構造を照合することにより、帳票画像内の文字列が論理構造内の論理要素である確率により、帳票画像内から読取対象の文字列を読み取る。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2008−204226号公報
【特許文献2】特開2008−33830号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1では、帳票画像のノイズや低画質などの悪影響により、文字列認識誤りが発生した場合に、項目名単語照合において照合誤りが発生し、帳票画像内の文字列が正しい項目名であるにもかかわらず、項目名でないと判定されることがある。さらに、特許文献1の方式では、項目名と判定された文字列と項目値候補と判定された文字列の配置関係から、項目名−項目値対応関係を決定するため、項目名となる文字列の判定を誤ると、その誤りが項目名−項目値対応関係の判定誤りに直結してしまう。また、1つの項目名に対し、配置関係上対応付けられる項目値候補が複数存在する場合に、項目名−項目値関係の対応付け誤りが発生する恐れがある。
【0008】
また、特許文献2の方式では、帳票種ごとに、論理構造辞書内の論理要素の出現頻度や論理要素間の相対位置の頻度を定義するため、辞書の作成コストが膨大になってしまう。また、論理構造辞書と整合性のとれないレイアウトの帳票の場合、正しい認識結果が得られず、汎用性が低下する。
【0009】
本発明は、このような問題に鑑みてなされたものである。
すなわち、本発明は、項目名照合の前段階の処理である文字列認識処理において、文字列認識誤りが発生した場合にも、帳票画像内から正しく項目名−項目値関係を抽出する帳票認識方式を提供することを第1の課題とする。
また、本発明は、項目名−項目値関係の配置関係に曖昧性がある場合、つまり1つの項目名に対し、配置関係上対応付けられる項目値候補が複数存在する場合にも、対応付け誤りを少なく、項目名−項目値関係を抽出する帳票認識方式を提供することを第2の課題とする。
また、本発明は、辞書の作成コストを極力少なくかつ様々なレイアウトの帳票に対しても、汎用性高く認識できる帳票認識方式を提供することを第3の課題とする。
【課題を解決するための手段】
【0010】
上記課題を解決するために、本発明の帳票認識装置は、帳票画像を入力し、当該帳票画像内の文字列の認識処理を行う帳票認識装置であって、前記帳票画像から文字列領域を検出する文字列検出部と、前記文字列領域の個々の文字を認識する文字列認識部と、帳票画像内の文字列に対し、当該文字列が項目名である確率を表す項目名尤度を計算する項目名尤度計算部と、帳票画像内の文字列に対し、当該文字列が項目値である確率を表す項目値尤度を計算する項目値尤度計算部と、帳票画像内の文字列ペアに対し、当該文字列ペアの配置関係が項目名−項目値関係として妥当であるかを表す配置尤度を計算する配置尤度計算部と、前記項目名尤度、項目値尤度、配置尤度を基に、当該文字列ペアの項目名−項目値としての尤もらしさを表す評価値を計算する項目名−項目値関係評価値計算部と、前記項目名−項目値関係評価値計算部の出力する前記評価値により、帳票画像内での項目名−項目値関係の対応付けを決定する項目名−項目値関係決定部を有することを特徴とするものである。
【0011】
また、本発明の帳票認識装置において、前記配置尤度計算部は、前記文字列ペアの項目名文字列と項目値文字列の枠の配置関係やサイズ、または文字列矩形の配置関係やサイズの項目名−項目値関係の非妥当さを表すルールであるペナルティルールに基づき、前記配置尤度を計算するものである。
【0012】
また、本発明の帳票認識装置において、前記項目名尤度計算部は、項目名単語を記載した項目名辞書との照合により、前記文字列に対し前記項目名尤度を計算し、前記項目値尤度計算部は、項目値単語や文字列の文法表記ルールを記載した表記辞書との照合により、前記文字列に対し前記項目値尤度を計算するものである。
【発明の効果】
【0013】
本発明により、多種レイアウトの帳票が混在する帳票処理業務において、厳密な帳票定義なしに帳票を認識することができる。また、文字認識誤りに頑健に、ならびに項目名−項目値関係に曖昧性のある帳票を誤りが少なく認識することができる。
【図面の簡単な説明】
【0014】
【図1】本発明の実施例における、帳票認識処理のフロー図である。
【図2】多種レイアウト帳票の例を示す図である。
【図3】本発明の実施例における、帳票認識装置の構成図である。
【図4】本発明の実施例における、帳票認識部のブロック構成図である。
【図5】項目名辞書の記載構造の例を示す図である。
【図6】本発明の実施例における、項目名尤度計算のフローチャートである。
【図7】本発明の実施例における、項目名尤度テーブルのデータ構造例を示す図である。
【図8】表記辞書の記載構造の例を示す図である。
【図9】本発明の実施例における、項目値尤度計算のフローチャートである。
【図10】本発明の実施例における、項目名尤度テーブルのデータ構造例を示す図である。
【図11】本発明の実施例における、配置尤度計算のフローチャートである。
【図12】配置尤度計算における、ペナルティルールの例である。
【図13】本発明の実施例における、配置尤度テーブルのデータ構造例を示す図である。
【図14】本発明の実施例における、項目名−項目値関係評価値テーブルのデータ構造例を示す図である。
【図15】帳票画像の例を示す図である
【発明を実施するための形態】
【0015】
以下、本発明の実施の形態を説明する。なお、これにより本発明が限定されるものではない。具体的な処理の内容を説明する前に、本発明の概略について説明する。
【0016】
本発明は、多種レイアウトが混在する帳票群を、読取対象文字列の記載位置および当該文字列の属性を事前に登録する帳票定義なしに、読取対象文字列の読取および当該文字列の属性の判定を行うものである。このためには、項目値とそれに対応する項目名のペアを帳票画像内から抽出することが必要である。本実施例では、帳票画像内の全文字列に対し、当該文字列が項目名である確率を表す項目名尤度、項目値である確率を表す項目値尤度を計算し、帳票画像内の全文字列ペアに対し、当該文字列ペアをなす2つの文字列の配置関係が項目名−項目値関係として妥当であるかを表した配置尤度を計算する。さらに、項目名尤度と項目値尤度と配置尤度を基に計算した項目名−項目値関係評価値の値を基に、帳票画像内の項目名−項目値関係の対応付けを決定する。
【0017】
具体的には、以下の順序により、帳票画像内の項目名−項目値関係の対応付けを決定する。
(1)ユーザが事前に登録した項目名のリストである項目名辞書内の項目名単語と、帳票画像内の文字列とを照合し、項目名辞書内の全ての項目名単語と、帳票画像内の全ての文字列の組み合わせに対して、項目名尤度を計算する。
(2)例えば、日付、金額、口座番号などの汎用的に利用できる文法表記ルールによって定義される表記辞書と、帳票画像内の文字列とを照合し、全ての表記辞書と、帳票画像内の全ての文字列の組み合わせに対して、項目値尤度を計算する。
(3)2つの文字列の配置関係が項目名−項目値関係として非妥当な配置関係となるルールを記載したペナルティルールと、帳票画像内の2つの文字列の組み合わせからなる全ての文字列ペアの配置関係を参照し、帳票画像内の全ての文字列ペアに対して、配置尤度を計算する。
(4)項目名尤度、項目値尤度、配置尤度を基に、帳票画像内の全ての文字列ペアに対して、当該文字列ペアが項目名−項目値関係にあるかを表す評価値を計算し、前記評価値を基に帳票画像内から項目名−項目値関係を抽出する。
なお、(1)(2)(3)はそれぞれ独立に処理されるため、順序は上記の順に依らない。
【実施例】
【0018】
以下、本発明の一実施例になる帳票認識装置および帳票認識方法について、図面を用いて詳細に説明する。
【0019】
図3は、本発明の帳票認識装置のハードウェア構成例である。本実施例の帳票認識装置は、命令コマンドやデータなどを入力するための入力装置301、認識対象の帳票を入力する画像入力装置302、文字列の検出や文字列認識、項目名−項目値関係の解析を行う帳票認識部300、文字認識辞書や項目名単語辞書を格納する認識辞書303、帳票画像の認識結果を表示する表示装置304を備える。帳票認識部300と、入力装置301、画像入力装置302、認識辞書303、表示装置304は、物理的な接続手段に依らず、ネットワークなどを介して接続されてもよい。
【0020】
図4に、帳票認識部300の詳細なブロック構成図を示す。帳票認識部300は、文字列検出部420、文字列認識部430、項目名尤度計算部440、項目値尤度計算部450、配置尤度計算部460、項目名−項目値関係評価値計算部470、項目名−項目値関係決定部480などから構成されている。
【0021】
ここで、文字列検出部420は、帳票画像から文字列領域を検出するものである。文字列認識部430は、文字列領域の個々の文字を認識するものである。項目名尤度計算部440は、帳票画像内の文字列に対し、当該文字列が項目名辞書に登録された単語である確率を表す項目名尤度を計算するものである。項目値尤度計算部450は、帳票画像内の文字列に対し、当該文字列が表記辞書に登録された単語や、金額、日付、口座番号などの文法ルールに一致する確率である項目値尤度を計算するものである。配置尤度計算部460は、帳票画像内の文字列ペアに対し、当該文字列ペアの配置関係の項目名−項目値関係としての妥当さである配置尤度を計算するものである。項目名−項目値関係評価値計算部470は、前記項目名尤度、項目値尤度、配置尤度を基に、当該文字列ペアの項目名−項目値としての尤もらしさを表す評価値を計算するものである。項目名−項目値関係決定部480は、前記項目名−項目値関係評価値計算部の出力する評価値により、帳票画像内での項目名−項目値関係を決定するものである。
【0022】
図1に、帳票認識部300における帳票認識の処理フロー図を示す。まず、ステップS110において、入力された帳票画像から枠を検出する。次に、ステップS120において、文字列検出部420で、帳票画像から文字列領域を検出する。文字列領域とは、ある1つの文字列を含む矩形領域である。ステップS110およびS120の具体例として、例えば、特開平11−53466号公報に開示の技術のように、帳票画像から罫線を抽出し、2本の罫線の交点と端点を抽出し、矩形枠の四隅に相当する右上角、左上角、右下角、左下角を検出することにより、帳票画像内から枠を検出する方式を利用することができる。ステップS130では、文字列認識部430において、ステップS120において検出された文字列領域の個々の文字を文字認識辞書131を用いて認識する。ステップS130の具体例として、例えば、非特許文献:F.Kimura et. al. “Modified quadratic discriminant functions and the application to chinese character recognition” IEEE Transaction on Pattern Analysis and Machine Intelligence、 vol.9、 pp.149-153 に開示の技術のように、ベイズの定理から導かれる距離尺度である識別関数を文字カテゴリごとに定め、識別関数の出力する値に基づいて、未知の文字を文字カテゴリに分類することで、個々の文字を認識する方式などがある。
【0023】
ステップS140では、項目名尤度計算部440で、ステップS130において認識された各文字列の文字列認識結果ごとに、項目名辞書141と照合し、当該文字列が項目名辞書141に登録された単語である確率を表す項目名尤度を計算する。また、ステップS150では、項目値尤度計算部450で、ステップS130において認識された各文字列の文字列認識結果ごとに、表記辞書151と照合し、当該文字列が表記辞書151に記載された単語や文字列の文法表記ルールに一致する確率を表す項目値尤度を計算する。ステップS140、ステップS150の処理は、後に詳細に説明する。
【0024】
ステップS160では、配置尤度計算部460で、ステップS110において検出された枠の座標およびステップS120において検出された文字列領域の座標を基に、帳票画像内の文字列ペアをなす2つの文字列の配置関係の項目名−項目値関係としての妥当さを表す配置尤度を計算する。配置尤度は、2つの文字列が属する枠のサイズおよび配置関係や、2つの文字列矩形のサイズおよび配置関係を基に計算する。ステップS160の処理は、後に詳細に説明する。
【0025】
ステップS170では、項目名−項目値関係評価値計算部470で、ステップS140において計算された項目名尤度、ステップS150において計算された項目値尤度、ステップS160において計算された配置尤度を基に、各尤度の数値から2つの文字列の項目名−項目値関係の評価値を計算する。評価値の計算には、例えば、項目名尤度、項目値尤度、配置尤度を代入することで評価値を出力する評価関数を用いる方法などがある。また、項目名尤度、項目値尤度、配置尤度が全て事前に定義したある閾値を超える場合に評価値を1(フラグを立てる)にする方法などがある。ステップS170の処理は、後に詳細に説明する。
【0026】
ステップS180では、項目名−項目値関係決定部480において、ステップS170で計算された評価値を基に、帳票画像内での項目名−項目値関係を決定する。例えば、評価値がある閾値以上となる文字列ペアを項目名−項目値関係と決定するなどがある。また、同一属性の項目名−項目値関係候補のうち、最大の評価値を持つ文字列ペアを項目名−項目値関係と決定するなどがある。項目名−項目値関係を決定することにより、文字列の認識結果および該文字列の属性が決定される。
【0027】
図1において、ステップS140、ステップS150、ステップS160はそれぞれ独立に並列に計算する。なお、ステップS110の後段にステップS120、ステップS120の後段にステップS130、ステップS130の後段にステップS140とS150、ステップS120の後段にステップS160、ステップS140とS150とS160の後段にステップS170、ステップS170の後段にステップS180が処理される構成であれば、処理フローは図1の形式に依らない。
【0028】
以下、図1のステップS140の項目名尤度計算の処理フロー、ステップS150の項目値尤度計算の処理フロー、ステップS160の配置尤度計算の処理フロー、およびステップS170の項目名−項目値関係評価値計算の計算例について詳細に説明する。
【0029】
まず、ステップS140の項目名尤度計算の処理フローについて、図5と図6と図7を用いて説明する。
図5は項目名辞書の例、図6は項目名尤度計算のフローチャート、図7は項目名尤度テーブルの例である。図6のステップS1401では、帳票画像内の項目名尤度を計算していない文字列の有無を判定する。残り文字列がない場合は、項目名尤度計算処理を終了する。ステップS1402では、当該文字列に対して、照合を行っていない項目名単語の有無を判定する。ステップS1403では、帳票画像内の文字列と項目名辞書内の項目名の照合を行い、項目名尤度を計算する。ステップS1403における単語照合の具体例としては、例えば、特開2004−171316号公報に開示の技術を利用することができる。また、項目名尤度の計算方法として、例えば、図1のステップS130における文字列認識結果が各個別文字の文字識別尤度を有し、単語照合により求まった文字列パスの各個別文字の文字識別尤度の平均値を項目名尤度とする方法が利用できる。また、これに依らず、個別文字の識別尤度、個別文字への切出し尤度、個別文字矩形のサイズおよびアスペクト比等を基に項目名尤度を計算する方式であってもよい。ステップS1404では、ステップS1403で得られた項目名尤度が最大のものを図7の項目名尤度テーブルに記録する。図5の項目名辞書を用いて、図15の帳票画像内の文字列に対して項目名尤度を計算する場合、項目名尤度テーブルの例は図6のようになる。図7の項目名尤度テーブルの場合、帳票画像内のN個(本実施例の場合N=3)の文字列に対し、全ての項目名単語との照合を行い、項目名尤度を計算する。
【0030】
次に、図1のステップS150の項目値尤度計算の処理フローについて、図8と図9と図10を用いて説明する。基本的な概念は前記の項目名尤度計算と同じである。
図9のステップS1501では、帳票画像内に項目値尤度の計算を行っていない文字列があるか判定する。残り文字列がなければ、項目値尤度計算処理を終了する。ステップS1502では、当該文字列に対し、照合を行っていない表記辞書があるか否かを判定する。残り辞書がなければ、帳票画像内の次の文字列の項目値尤度計算に移行する。ステップS1503では、帳票画像内の文字列と表記辞書との照合を行い、項目値尤度を計算する。ステップS1503における単語照合の具体的な実施例としては、例えば、非特許文献:高橋他、「回帰的遷移ネットワークを用いた文字経路探索方式の開発」、電子情報通信学会技術研究報告 Vol.109 No.418 pp.141-146、に開示の技術のように、個別文字の識別候補をノードと見立てた識別候補文字ネットワークと状態遷移ネットワークで表現した表記辞書のマッチングにより、状態遷移ネットワークから最適な文字列パスを選択し、文字列認識結果を得る方法がある。項目値尤度の計算例として、前述の項目名尤度と同様に、個別文字の識別尤度、個別文字への切出し尤度、個別文字矩形のサイズおよびアスペクト比等を基に項目名尤度を計算する方式がある。ステップS1504では、ステップS1503で得られた項目値尤度が最大のものを、項目値尤度テーブルに登録する。以上のステップS1503、S1504の処理を全ての帳票画像内の文字列と表記辞書の組み合わせに対して行う(ステップS1505、S1506)。表記辞書の例として、例えば、図8の801に示すような文字列の表記ルールの正規表現、802に示す単語ネットワーク、803に示す項目値単語リストなどがある。図8の表記辞書801を用いて、図15の帳票画像内の文字列に対して項目値尤度を計算する場合、項目値尤度テーブルは図10のようになる。
【0031】
次に、図1のステップS160の配置尤度計算の処理フローについて、図11と図12を用いて説明する。図11のステップS1701では、配置尤度を計算していない帳票画像内の文字列ペアの有無を判定する。残り文字列ペアがなければ配置尤度計算処理を終了する。ステップS1702では、配置尤度の初期化を行う。本方式では、例えば配置尤度は、配置尤度が取り得る値の最大値で初期化し、文字列ペアをなす2つの文字列の配置関係が項目名−項目値関係として非妥当であると判断できる配置パターンをペナルティルールとして定義し、初期値からペナルティルールによって得られたペナルティ値を減算した値として計算する方法がある。そのため、ステップS1702では、配置尤度の初期値を配置尤度が取り得る値の最大値と設定する。ステップS1704では、2つの文字列の配置関係が参照しているペナルティルールに該当するか否かを判断する。該当した場合、ステップS1705で、ペナルティ値を計算し、現在の配置尤度から減算する。以上、ステップS1703、ステップS1704、ステップS1705をペナルティルールの数だけ繰り返し、当該文字列ペアの配置尤度を計算する。以上の処理を帳票画像内の全文字列ペアに対して実行する。
【0032】
ペナルティルールの例を図12に示す。ペナルティルールは2つの文字列の属する枠の配置関係やサイズ、2つの文字列矩形の配置関係やサイズを基に計算する。例えば、ルール1101の場合、2つの文字列が相互に隣接する枠内に存在する場合に、項目名となる文字列の中心座標が、枠の中心座標からずれがある場合に、ずれの距離に応じてペナルティを付加する。これは、本来2つの文字列が項目名−項目値関係にある場合には、項目名となる文字列は枠の中心付近に存在するといった仮定によるものである。ルール1102の場合、項目名となる文字列の属する枠の高さが、項目値となる文字列の属する枠の高さよりも大きい場合に、枠高さの比率に応じてペナルティを付加する。これは、本来は、項目名の属する枠の高さより、項目値の属する枠高さが大きいといった仮定に基づくものである。ルール1103の場合、2つの文字列が同一枠に存在する場合に、項目名となる文字列よりも、項目値となる文字列が左もしくは上に存在する場合に、左もしくは上方向へのはみ出し距離に応じてペナルティを付加する。これは、本来、2つの文字列が項目名−項目値関係にある場合には、項目名となる文字列の右下方向に項目値が存在するといった仮定に基づくものである。ルール1104の場合、2つの文字列が帳票画像内のいずれの枠にも属さず、枠の外かつ相互に近くに存在する場合に、項目名となる文字列の高さと、項目値となる文字列の高さが異なる場合に、文字列高さの比率に応じて、ペナルティを付加する。これは、本来は、項目名と項目値の文字列の高さは互いにほぼ等しいという仮定に基づくものである。ルール1105は、項目名となる文字列と、項目値となる文字列の距離が離れている場合に、2つの文字列の距離に応じてペナルティを付加する。これは、2つの文字列が項目名−項目値関係にある場合には、2つの文字列は相互に近くにあるといった仮定に基づくものである。ルール1106は、項目名となる文字列より、項目値となる文字列が左上方向に存在する場合に、そのずれの距離に応じてペナルティを付加するものである。これは、本来は、項目名の右下方向に項目値が存在するといった仮定に基づくものである。
【0033】
以上のように、ペナルティルールは、2つの文字列が項目名−項目値関係にある場合の尤もらしい配置関係を仮定し、その仮定から外れる配置関係に2つの文字列が配置される場合に、ペナルティが付加されるように生成される。なお、ペナルティルールは図12に示した1101から1106に限定されるものではなく、2つの文字列の属する枠の配置関係やサイズ、2つの文字列矩形の配置関係やサイズなどから計算されるものであり、2つの文字列が項目名−項目値関係にある場合に尤もらしい配置関係を仮定し、その仮定から外れる場合に付加される計算方法であれば、これに依らない。
【0034】
図12のペナルティルールを用いて、図15の帳票画像内の文字列ペアに対して配置尤度を計算する場合、配置尤度テーブルは図13のようになる。例えば、項目名文字列番号「1」−項目値文字列番号「2」の文字列ペアの場合、図12の1101から1106のペナルティルールのいずれにも該当しないため、配置尤度は初期値として定めた「1.00」となる。また、項目名文字列番号「1」−項目値文字列番号「3」の文字列ペアの場合、図12のペナルティルール1101に該当するため、ペナルティルール1101にて計算されたペナルティが初期値から減算され、配置尤度は「0.90」となる。
【0035】
次に、図1のステップS170の項目名−項目値関係評価値計算の処理フローについて、図14を用いて説明する。項目名−項目値関係評価値は、例えば、項目名尤度、項目値尤度、配置尤度を入力とする評価関数によって計算する。LLを項目名尤度、VLを項目値尤度、ALを配置尤度としたときに、評価関数E(LL、 VL、 AL)の例として、例えば式(1)、式(2)、式(3)に示すものがある。
【0036】
E(LL、 VL、 AL) = (LL + VL) × AL ・・・(1)
E(LL、 VL、 AL) = LL + VL + AL ・・・(2)
E(LL、 VL、 AL) = √(LL × VL) × AL ・・・(3)
なお、評価関数は上記(1)(2)(3)に限るものではなく、項目名尤度、項目値尤度、配置尤度の値から、2つの文字列が項目名−項目値関係にある確からしさを算出できる形式であれば、これに限らない。
【0037】
図7の項目名尤度テーブル、図10の項目値尤度テーブル、図13の配置尤度テーブルが得られた場合、上記式(1)により求めた図15の帳票画像に対する項目名−項目値評価値テーブルは、図14のようになる。項目名−項目値関係評価値は、図5の項目名辞書、図8の表記辞書において、事前に定義した属性ごとに計算し、項目名−項目値評価値テーブルに登録する。本実施例では、項目名尤度、項目値尤度、配置尤度のいずれかが「0.00」となる場合は、項目名−項目値評価値の計算は行わない。例えば、項目名文字列番号「1」、項目値文字列番号「2」の場合は、属性ID「002」に対し、E(LL、 VL、 AL) = (0.25+0.85)×1.00=1.10、属性ID「003」に対し、E(LL、 VL、 AL) = (0.28+0.20)×1.00=0.48となる。項目名文字列番号「1」、項目値文字列番号「3」の場合は、属性ID「003」に対して、E(LL、 VL、 AL) = (0.28+0.92)×0.90=1.08となる。上記のような評価関数による項目名−項目値評価値計算を帳票画像内の全文字列ペアに対して行い、項目名−項目値評価値テーブルに登録する。図15の帳票画像に対する項目名−項目値関係の候補は、項目名文字列番号「1」と項目値文字列番号「2」の「納付額」−「17,420」および、項目名文字列番号「1」と項目値文字列番号「3」の「納期限」−「21.11.13」となる。この場合、両候補において項目名文字列番号「1」が重複するため、評価値の高い文字列ペアが選択され(図1のステップ180)、最終的な項目名−項目値関係抽出結果は、項目名文字列番号「1」と項目値文字列番号「2」の「納付額」−「17,420」(属性ID:002)となる。
【0038】
以上述べた通り、本発明によれば、帳票画像内の文字列の項目名らしさの項目名尤度、項目値らしさの項目値尤度を全文字列に対して計算し、帳票画像内の文字列ペアの配置関係の項目名−項目値らしさの配置尤度を全文字列ペアに対して計算し、項目名尤度、項目値尤度、配置尤度に基づいて計算される項目名−項目値関係評価値によって、帳票画像内の項目名−項目値関係を抽出する帳票認識方式により、文字認識誤りに頑健に、項目名−項目値関係の配置関係の曖昧性のある非表形式レイアウト帳票を誤り少なく認識することができる。また、項目名尤度、項目値尤度、配置尤度をそれぞれ独立に計算するモジュール構成により、少ない定義で汎用性の高い帳票認識方式を提供することができる。
【符号の説明】
【0039】
131・・・文字認識辞書、141・・・項目名辞書、151・・・表記辞書、200,201・・・帳票例、300・・・帳票認識部、301・・・入力装置、302・・・画像入力装置、303・・・認識辞書、304・・・表示装置、420・・・文字列検出部、430・・・文字列認識部、440・・・項目名尤度計算部、450・・・項目値尤度計算部、460・・・配置尤度計算部、470・・・項目名−項目値関係評価値計算部、480・・・項目名−項目値関係決定部、801・・・文字列の表記ルールの正規表現、802・・・単語ネットワーク、803・・・項目値単語リスト、1101〜1106・・・ペナルティルール。
【特許請求の範囲】
【請求項1】
帳票画像を入力し、当該帳票画像内の文字列の認識処理を行う帳票認識装置であって、
前記帳票画像から文字列領域を検出する文字列検出部と、
前記文字列領域の個々の文字を認識する文字列認識部と、
帳票画像内の文字列に対し、当該文字列が項目名である確率を表す項目名尤度を計算する項目名尤度計算部と、
帳票画像内の文字列に対し、当該文字列が項目値である確率を表す項目値尤度を計算する項目値尤度計算部と、
帳票画像内の文字列ペアに対し、当該文字列ペアの配置関係が項目名−項目値関係として妥当であるかを表す配置尤度を計算する配置尤度計算部と、
前記項目名尤度、項目値尤度、配置尤度を基に、当該文字列ペアの項目名−項目値としての尤もらしさを表す評価値を計算する項目名−項目値関係評価値計算部と、
前記項目名−項目値関係評価値計算部の出力する前記評価値により、帳票画像内での項目名−項目値関係の対応付けを決定する項目名−項目値関係決定部を有することを特徴とする帳票認識装置。
【請求項2】
請求項1に記載の帳票認識装置であって、
前記配置尤度計算部は、前記文字列ペアの項目名文字列と項目値文字列の枠の配置関係やサイズ、または文字列矩形の配置関係やサイズの項目名−項目値関係の非妥当さを表すルールであるペナルティルールに基づき、前記配置尤度を計算することを特徴とする帳票認識装置。
【請求項3】
請求項1に記載の帳票認識装置であって、
前記項目名尤度計算部は、項目名単語を記載した項目名辞書との照合により、前記文字列に対し前記項目名尤度を計算し、
前記項目値尤度計算部は、項目値単語や文字列の文法表記ルールを記載した表記辞書との照合により、前記文字列に対し前記項目値尤度を計算することを特徴とする帳票認識装置。
【請求項4】
帳票画像を入力し、当該帳票画像内の文字列の認識処理を行う帳票認識方法であって、
前記帳票画像から文字列領域を検出する文字列検出ステップと、
前記文字列領域の個々の文字を認識する文字列認識ステップと、
帳票画像内の文字列に対し、当該文字列が項目名である確率を表す項目名尤度を計算する項目名尤度計算ステップと、
帳票画像内の文字列に対し、当該文字列が項目値である確率を表す項目値尤度を計算する項目値尤度計算ステップと、
帳票画像内の文字列ペアに対し、当該文字列ペアの配置関係が項目名−項目値関係として妥当であるかを表す配置尤度を計算する配置尤度計算ステップと、
前記項目名尤度、項目値尤度、配置尤度を基に、当該文字列ペアの項目名−項目値としての尤もらしさを表す評価値を計算する項目名−項目値関係評価値計算ステップと、
前記項目名−項目値関係評価値計算ステップの出力する前記評価値により、帳票画像内での項目名−項目値関係の対応付けを決定する項目名−項目値関係決定ステップを有することを特徴とする帳票認識方法。
【請求項5】
請求項4に記載の帳票認識方法であって、
前記配置尤度計算ステップは、前記文字列ペアの項目名文字列とデータ文字列の枠の配置関係やサイズ、または文字列矩形の配置関係やサイズの項目名−項目値関係の非妥当さを表すルールであるペナルティルールに基づき、前記配置尤度を計算することを特徴とする帳票認識方法。
【請求項6】
請求項4に記載の帳票認識方法であって、
前記項目名尤度計算ステップは、項目名単語を記載した項目名辞書との照合により、前記文字列に対し前記項目名尤度を計算するものであり、
前記項目値尤度計算ステップは、項目値単語や文字列の文法のルールを記載した表記辞書との照合により、前記文字列対し前記項目値尤度を計算することを特徴とする帳票認識方法。
【請求項1】
帳票画像を入力し、当該帳票画像内の文字列の認識処理を行う帳票認識装置であって、
前記帳票画像から文字列領域を検出する文字列検出部と、
前記文字列領域の個々の文字を認識する文字列認識部と、
帳票画像内の文字列に対し、当該文字列が項目名である確率を表す項目名尤度を計算する項目名尤度計算部と、
帳票画像内の文字列に対し、当該文字列が項目値である確率を表す項目値尤度を計算する項目値尤度計算部と、
帳票画像内の文字列ペアに対し、当該文字列ペアの配置関係が項目名−項目値関係として妥当であるかを表す配置尤度を計算する配置尤度計算部と、
前記項目名尤度、項目値尤度、配置尤度を基に、当該文字列ペアの項目名−項目値としての尤もらしさを表す評価値を計算する項目名−項目値関係評価値計算部と、
前記項目名−項目値関係評価値計算部の出力する前記評価値により、帳票画像内での項目名−項目値関係の対応付けを決定する項目名−項目値関係決定部を有することを特徴とする帳票認識装置。
【請求項2】
請求項1に記載の帳票認識装置であって、
前記配置尤度計算部は、前記文字列ペアの項目名文字列と項目値文字列の枠の配置関係やサイズ、または文字列矩形の配置関係やサイズの項目名−項目値関係の非妥当さを表すルールであるペナルティルールに基づき、前記配置尤度を計算することを特徴とする帳票認識装置。
【請求項3】
請求項1に記載の帳票認識装置であって、
前記項目名尤度計算部は、項目名単語を記載した項目名辞書との照合により、前記文字列に対し前記項目名尤度を計算し、
前記項目値尤度計算部は、項目値単語や文字列の文法表記ルールを記載した表記辞書との照合により、前記文字列に対し前記項目値尤度を計算することを特徴とする帳票認識装置。
【請求項4】
帳票画像を入力し、当該帳票画像内の文字列の認識処理を行う帳票認識方法であって、
前記帳票画像から文字列領域を検出する文字列検出ステップと、
前記文字列領域の個々の文字を認識する文字列認識ステップと、
帳票画像内の文字列に対し、当該文字列が項目名である確率を表す項目名尤度を計算する項目名尤度計算ステップと、
帳票画像内の文字列に対し、当該文字列が項目値である確率を表す項目値尤度を計算する項目値尤度計算ステップと、
帳票画像内の文字列ペアに対し、当該文字列ペアの配置関係が項目名−項目値関係として妥当であるかを表す配置尤度を計算する配置尤度計算ステップと、
前記項目名尤度、項目値尤度、配置尤度を基に、当該文字列ペアの項目名−項目値としての尤もらしさを表す評価値を計算する項目名−項目値関係評価値計算ステップと、
前記項目名−項目値関係評価値計算ステップの出力する前記評価値により、帳票画像内での項目名−項目値関係の対応付けを決定する項目名−項目値関係決定ステップを有することを特徴とする帳票認識方法。
【請求項5】
請求項4に記載の帳票認識方法であって、
前記配置尤度計算ステップは、前記文字列ペアの項目名文字列とデータ文字列の枠の配置関係やサイズ、または文字列矩形の配置関係やサイズの項目名−項目値関係の非妥当さを表すルールであるペナルティルールに基づき、前記配置尤度を計算することを特徴とする帳票認識方法。
【請求項6】
請求項4に記載の帳票認識方法であって、
前記項目名尤度計算ステップは、項目名単語を記載した項目名辞書との照合により、前記文字列に対し前記項目名尤度を計算するものであり、
前記項目値尤度計算ステップは、項目値単語や文字列の文法のルールを記載した表記辞書との照合により、前記文字列対し前記項目値尤度を計算することを特徴とする帳票認識方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2011−248609(P2011−248609A)
【公開日】平成23年12月8日(2011.12.8)
【国際特許分類】
【出願番号】特願2010−120751(P2010−120751)
【出願日】平成22年5月26日(2010.5.26)
【出願人】(504373093)日立オムロンターミナルソリューションズ株式会社 (1,225)
【Fターム(参考)】
【公開日】平成23年12月8日(2011.12.8)
【国際特許分類】
【出願日】平成22年5月26日(2010.5.26)
【出願人】(504373093)日立オムロンターミナルソリューションズ株式会社 (1,225)
【Fターム(参考)】
[ Back to top ]