JP2016051339A - 帳票認識装置及び方法 - Google Patents

帳票認識装置及び方法 Download PDF

Info

Publication number
JP2016051339A
JP2016051339A JP2014176400A JP2014176400A JP2016051339A JP 2016051339 A JP2016051339 A JP 2016051339A JP 2014176400 A JP2014176400 A JP 2014176400A JP 2014176400 A JP2014176400 A JP 2014176400A JP 2016051339 A JP2016051339 A JP 2016051339A
Authority
JP
Japan
Prior art keywords
item value
score
item
character string
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014176400A
Other languages
English (en)
Other versions
JP6406932B2 (ja
Inventor
広 新庄
Hiroshi Shinjo
広 新庄
寿一 高橋
Juichi Takahashi
寿一 高橋
英輔 浅野
Eisuke Asano
英輔 浅野
司 安江
Tsukasa Yasue
司 安江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Omron Terminal Solutions Corp
Original Assignee
Hitachi Omron Terminal Solutions Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Omron Terminal Solutions Corp filed Critical Hitachi Omron Terminal Solutions Corp
Priority to JP2014176400A priority Critical patent/JP6406932B2/ja
Publication of JP2016051339A publication Critical patent/JP2016051339A/ja
Application granted granted Critical
Publication of JP6406932B2 publication Critical patent/JP6406932B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Character Input (AREA)
  • Character Discrimination (AREA)

Abstract

【課題】帳票に記載された文字列を制御部によって認識する技術に関する。
【解決手段】帳票画像から検出され認識された文字列に対し、項目値表記スコアを計算した後、項目値候補ペアの配置関係に対し、異なる属性の項目値同士の配置関係としての妥当さを表す項目値候補配置スコアを計算し、更に、項目値候補スコアと項目値候補配置スコアの値に基づいて、異なる属性の項目値同士のペアとしての妥当さを表す項目値候補ペアスコアを計算することにより、項目値グループの項目値を決定する。
【選択図】図3

Description

本発明は、様々な様式の帳票を認識する技術に関する。
従来の帳票認識装置は、帳票画像上における読取対象文字列の記載位置とその属性を登録した「帳票定義」を用い、読取対象文字列の読み取りとその属性の認識を行っている。なお、帳票定義は、ユーザによって事前に、帳票認識装置に登録される。従来の帳票認識装置の代表例には、光学式文字認識装置(OCR)がある。
従来技術は、処理対象である帳票のレイアウト(すなわち、文字列の記載位置、枠の記載位置、枠の配置)が統一されており、かつ、帳票画像上における読取対象文字列の記載位置が固定であることを前提としている。しかし、現実には、多種レイアウトが混在する帳票処理業務や、処理対象とする帳票のレイアウトが未知である帳票処理業務が存在する。
多種レイアウトとは、例えば読取対象文字列の記載位置が帳票ごとに異なる場合を意味する。多種レイアウトを従来装置で扱うためには、帳票ごとに帳票定義を作成しておく必要がある。ところが、業務分野によっては、帳票レイアウトの種類が数万種類に及ぶことがある。この場合、帳票定義の作成コストが膨大になるため、従来装置を利用することができない。
帳票定義を用いずに、多種レイアウトの帳票を認識するための技術として、例えば特許文献1に開示の技術がある。特許文献1には、「帳票認識装置において、帳票画像から文字列領域を検出し(S120)、検出された文字列に対し、項目名らしさを表す項目名尤度と、項目値らしさを表す項目値尤度を計算し(S140,S150)、検出された前記文字列の組み合わせからなる文字列ペアに対し、前記文字列ペアの配置関係の項目名−項目値関係としての妥当さを表す配置尤度を計算し(S160)、項目名尤度、前記項目値尤度、配置尤度の値から、項目名−項目値関係の評価値を計算し(S170)、帳票画像内の項目名−項目値関係を決定する(S180)。」と記載されている(要約参照)。
特開2011−248609号公報
しかし、特許文献1の方式では、項目名と項目値のペアの検出を必須とするため、項目名が記載されていない場合には項目値を正しく抽出することはできないという技術上の課題がある。ここで、項目名とはデータの属性を表す文字列であり、項目値とは項目名に対するデータの文字列である。
図1に示す帳票画像の例を用い、従来技術の技術上の課題を説明する。ここでは、帳票例100から「銀行」、「支店」、「預金種別」、「口座番号」で与えられる各項目名に対する項目値を抽出する場合を考える。帳票例100の場合、これら4つの項目名と対応する項目値が記載されているため、項目名と項目値のペアを抽出することで4つの項目値を抽出することができる。しかし、帳票例101には「支店」と「預金種別」の項目名の記載がないため「YYY支店」と「普通」を抽出することが難しい。
そこで、発明者は、多種レイアウトの帳票が混在する帳票処理業務において、厳密な帳票定義なしに帳票を認識することができる仕組みの提供を技術課題とする。
上記課題を解決するために、例えば特許請求の範囲に記載の構成を採用する。本明細書は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、以下の(1)〜(8)に示す処理部を有する帳票認識装置である。なお、当該帳票認識装置は、コンピュータその他の装置を用いて実行される帳票認識方法としても実現される。
(1)画像入力部
画像入力部は、データの属性を表す文字列である項目名と、項目名に対するデータの文字列である項目値を含む帳票画像を入力する。
(2)項目値表記スコア計算部
項目値表記スコア計算部は、前記帳票画像から認識された、前記帳票画像内の文字列に対し、該文字列が項目値である確率を表す項目値表記スコアを計算する。
(3)項目値単語スコア計算部
項目値単語スコア計算部は、前記帳票画像内の文字列に対し、該文字列が予め登録された詳細な項目値を示す項目値単語である確率を表す項目値単語スコアを計算する。
(4)項目値候補選択部
項目値候補選択部は、前記項目値表記スコアと前記項目値単語スコアの両方を含むスコアを項目値スコア(Sv)とし、前記項目値スコアが予め定められた閾値より高い文字列を項目値候補として選択し、選択された項目値候補に対する項目値候補スコア(Sc)として前記項目値スコア(Sv)を与える。
(5)項目値候補配置スコア計算部
項目値候補配置スコア計算部は、前記帳票画像内の前記項目値候補の文字列ペアに対し、前記帳票画像内において互いに関係する複数の属性の項目値の組合せを項目値グループとした場合に、該文字列ペアの配置関係が各項目値グループの項目値として妥当であるか否かを表す項目値候補配置スコア(Sca)を計算する。
(6)項目値候補ペアスコア計算部
項目値候補ペアスコア計算部は、前記帳票画像内の項目値候補の文字列ペアに対し、前記項目値スコア(Sv)、前記項目値候補配置スコア(Sca)を基に、前記文字列ペアが前記項目値グループの項目値としての尤もらしさを表す評価値である項目値候補ペアスコア(Scp)を計算する。
(7)項目値グループ評価部
項目値グループ評価部は、前記項目値候補ペアスコア(Scp)により、前記帳票画像内の文字列と前記項目値グループとの対応付けを評価することで項目値の文字列を認識する。
(8)出力部
出力部は、前記帳票画像内の文字列の認識結果を出力する。認識結果の出力先には、記憶部も含まれる。
本発明によれば、多種レイアウトの帳票が混在する帳票処理業務において、厳密な帳票定義なしに帳票を認識することができる。前述した以外の課題、構成及び効果は、以下の実施の形態の説明により明らかにされる。
多種レイアウトの帳票例を説明する図。 帳票認識装置の構成例を示す図。 帳票認識処理1及び2の概要を説明するフローチャート。 帳票認識処理3及び4の概要を説明するフローチャート。 制御部の機能構成例を示す図。 入力対象とする帳票画像の一例を示す図。 文字列認識結果と辞書との照合処理の概略を示す図。 項目名表記辞書、項目値表記辞書、項目値キーワード辞書、項目値単語辞書の例を示す図。 項目名スコアを格納するテーブル例と項目値表記スコアを格納するテーブル例を示す図。 帳票画像から抽出された項目名文字列、項目値表記文字列、項目値キーワード文字列を示す図。 項目値単語照合対象の文字列を選択する際に利用するスコア計算手法の例と各セルに対する重み付の例を示す図。 スコアの計算結果を示す図。 スコアの計算結果を示す図。 スコアの計算結果を示す図。 項目値スコアを格納するテーブルを示す図。 項目値スコアから選択された項目値表記文字列及び項目値単語文字列を示す図。 配置スコアの計算に使用するペナルティルールの例を示す図。 項目名−項目値ペアスコアから選択された項目名―項目値ペアを示す図。 項目名−項目値ペアと単独で存在する項目値の抽出例を示す図。 項目値候補の認識結果格納テーブルを示す図。 項目値候補配置スコアのペナルティ定義の例を示す図。 項目値候補配置スコアの計算例を示す図。 項目値候補配置スコアを用いた項目値グループのネットワーク表現の概略と項目値候補ペアスコアを用いた項目値グループのネットワーク表現の概略を示す図。 項目値候補ペアスコアテーブルと項目値グループ評価結果を示す図。 項目値グループ評価結果と認識結果を示す図。 認識結果の表示画面例を示す図。 項目値候補ペアスコアを用いた項目値グループのネットワーク表現の概略を示す図。 帳票画像に複数の項目値グループが含まれる例と、項目値グループのネットワーク表現の概略を示す図。 図28(A)に示す項目値グループのネットワーク表現の概略を示す図。 帳票認識処理6の概要を説明するフローチャート。 項目値配置の整列性評価処理を説明するフローチャート。 文字列間の整列性判定の例と全ての項目値文字列の外接矩形領域内に他の文字列が存在しないか否かを判定する例を示す図。 項目値グループを求める際のネットワークのデータテーブルの例を示す図。 項目値グループの出力結果のデータテーブルの例を示す図。 帳票認識処理6における複数グループ間の配置規則性評価処理を説明するフローチャート。 図28(A)の帳票画像に対する項目値グループのネットワークにおける配置スコアと、図28(A)の帳票画像に対する項目値グループのネットワークに規則性があるリンクと規則性がないリンクを示す図。 配置スコアのベクトルとベクトル間の距離を示す図。 項目値グループの配置を指定する表示画面の例を示す図。 認識対象領域を限定する表示画面の例を示す図。
以下、図面に基づいて、本発明の実施形態を説明する。なお、本発明の実施態様は、後述する形態例に限定されるものではなく、その技術思想の範囲において、種々の変形が可能である。まず、各実施形態の概要を説明する。
A.概要
各実施形態に係る装置は、多種レイアウトが混在する帳票群から、それらの帳票定義を使用することなく、読取対象文字列の読取および当該文字列の属性の認識が可能な機能を備えている。また、各実施形態に係る装置は、読取対象とする項目名が記載されていない帳票が処理対象の場合でも、読取対象の項目名に対応する属性の認識が可能な機能も備えている。
これらの機能の実現のため、各装置は、互いに関係する複数の項目値の組合せを「項目値グループ」とし、その属性の組合せを予め指定する。また、各装置は、帳票上の複数の文字列と項目値グループとの照合を通じ、各項目値に該当する文字列を判定する。各実施形態において、「項目名」とは、例えばデータの属性を表す文字列である。「項目値」とは、例えば項目名に対するデータの文字列である。図1の例の場合、項目値グループを構成する属性は「銀行」、「支店」、「口座種別」、「口座番号」の4項目であり、それぞれの項目値は「XXX銀行」、「YYY支店」、「普通」、「1234567」である。
これらの機能の実現には、帳票画像から抽出された文字列から項目値グループを特定する処理が必要である。そこで、各装置は、帳票画像内の全文字列、又は、一部の文字列(例えば予め定められた範囲の文字列、予め定められた個数の文字列)に対し、当該文字列が項目値である確率に相当する項目値スコアを計算し、項目値スコアが既定の値を超えたものを各属性における項目値の候補とする(以下「項目値候補」と記載する)。次に、各装置は、属性の異なる2つの項目値候補の配置関係が妥当であるか否かを評価する評価尺度である項目値候補配置スコアを計算する。さらに、全ての項目値スコアと項目値候補配置スコアを評価することにより、項目値グループを構成する文字列を決定する。
具体的には、以下の処理手順(1)〜(6)により、各装置は、帳票内の項目値グループの文字列を決定する。
(1)処理1
全ての文字列内の文字を識別し、文字の確からしさを表す文字スコアを計算する。
(2)処理2
項目値のうち、「XXX銀行」や「普通」などの単語で記載されるものについては、ユーザが事前に登録した項目値の単語リストである項目値単語辞書内の項目値単語と、帳票画像内の文字列とを照合し、項目値単語辞書内の全ての項目値単語と、帳票画像内の全文字列との組み合わせに対して、「項目値単語スコア」を計算する。
(3)処理3
項目値のうち、日付や、金額、口座番号などの汎用的に利用できる文法表記ルールによって記載されるものについては、ユーザが事前に文法表記ルールを定義した項目値表記辞書内の項目値表記と、帳票画像内の文字列とを照合し、項目値表記辞書内の全ての又は予め定められた項目値表記と、帳票画像内の全文字列との組み合わせに対して、「項目値表記スコア」を計算する。
(4)処理4
前記(2)と(3)の結果から、項目値単語辞書を定義した属性については項目値単語スコアを、項目値表記辞書を定義した属性については項目値表記スコアを「項目値候補スコア」とする。この値が閾値を超える文字列を「項目値候補」とする。
(5)処理5
2つの項目値の配置関係が項目値グループ内の文字列として妥当な配置関係であるかを評価するルールを用いて、属性の異なる2つの項目値候補の組み合わせからなる全ての項目値候補ペアに対して、「項目値候補配置スコア」を計算する。
(6)処理6
項目値単語スコア、項目値表記スコア、項目値候補配置スコアを基に、全ての項目値候補ペアに対して、当該項目値候補ペアが項目値グループ内で妥当な関係にあるかを表す評価値を計算し、前記評価値を基に帳票画像内から項目値グループ内の各項目値に相当する文字列を抽出する。
前記機能を実現するため、入力された帳票画像から文字列を認識する帳票認識装置の1つには、以下の(1)〜(8)に示す処理部を搭載する。
(1)文字列検出部
文字列検出部は、前記帳票画像から文字列領域を検出する。
(2)文字列認識部
文字列認識部は、前記文字列領域の個々の文字を認識する。
(3)項目値表記スコア計算部
項目値表記スコア計算部は、帳票画像内の文字列に対し、当該文字列が項目値の表記である確率を表す項目値表記スコアを計算する。
(4)項目値単語スコア計算部
項目値単語スコア計算部は、帳票画像内の文字列に対し、当該文字列が項目値の単語である確率を表す項目値単語スコアを計算する。
(5)項目値候補選択部
項目値候補選択部は、項目値表記スコアと項目値単語スコアの両方を項目値スコアとし、項目値スコアが高い文字列を項目値候補として選択する。
(6)項目値候補配置スコア計算部
項目値候補配置スコア計算部は、帳票画像内の項目値候補の文字列ペアに対し、帳票内において互いに関係する複数の属性の項目値の組合せを項目値グループとした場合に、当該文字列ペアの配置関係が項目値グループの項目値として妥当であるか否かを表す項目値候補配置スコアを計算する。
(7)項目値候補ペアスコア計算部
項目値候補ペアスコア計算部は、帳票画像内の項目値候補の文字列ペアに対し、前記項目値スコア、項目値配置スコアを基に、当該文字列ペアが項目値グループの項目値としての尤もらしさを表す評価値を計算する。
(8)項目値グループ評価部
項目値グループ評価部は、前記項目値候補ペアスコアにより、帳票画像内の文字列と項目値グループとの対応付けを評価ことで項目値の文字列を決定する。
B.装置例
図2に、各実施形態に係る帳票認識装置のハードウェア構成例を示す。例えば帳票認識装置200は、操作部210と、表示部220と、画像入力部230と、記憶部240と、制御部250と、インターフェース(IF)260とを備えるコンピュータとして実現される。操作部210は、ユーザが数字や文字の入力操作を行う際に利用するキーボード、スキャンの開始を指示するためのボタン等を含む。表示部220は、入力画像や認識結果等を表示する液晶ディスプレイその他の表示装置である。画像入力部230は、フラットベッドスキャナ、オートシートフィーダ付きスキャナ、CCD(Charge Coupled Device)等の撮像素子を用いて画像を撮像するデジタルカメラ等である。もっとも、入力画像には、画像入力部230から取り込まれる画像データの他、記憶部240に記録されている画像データを用いても良い。記憶部240は、メモリやハードディスク装置等からなる記憶デバイスであり、画像入力部230から取り込まれた画像、各種内部処理用のプログラム、各種設定データを記憶する。また、記憶部240には、文字識別辞書、項目値単語辞書、項目値表記辞書等も記憶される。制御部250は、文字列の検出や認識、項目値グループの解析を行う帳票認識や装置全体の制御を行う。IF260は、他の装置とデータを入出力する。
C.帳票認識処理例(概略動作)
以下、図3及び図4を用い、制御部250において実行される帳票認識処理1〜4の概要を説明する。
(帳票認識処理1)
図3(A)に、制御部250において実行される帳票認識処理1の概略を示す。
・ステップ305
制御部250は、画像入力部230を通じて帳票画像を入力する。
・ステップ310
制御部250は、入力された帳票画像から枠(セル)を検出する。
・ステップ315
制御部250は、帳票画像から文字列領域を検出する。文字列領域とは、ある1つの文字列を含む矩形領域である。ステップ310及び315の具体例には、例えば特開平11−53466号公報に記載の技術がある。当該技術では、帳票画像から縦と横の罫線を抽出した後、2本の罫線の交点を抽出し、更に、交点の形状と配置関係に基づいて矩形枠の四隅に相当する右上角、左上角、右下角、左下角を検出することにより帳票画像内から枠を検出し、更に、検出された枠の内外の文字列領域を検出する。
・ステップ320
制御部250は、前記のステップ315で検出された文字列領域を個々の文字領域に分割し、個々の文字領域のパターンを、文字識別辞書を用いて識別する。この文字識別の具体例には、例えばF.Kimura et. al. “Modified quadratic discriminant functions and the application to chinese character recognition” IEEETransaction on Pattern Analysis and Machine Intelligence、 vol.9、 pp.149-153に記載の技術(改良型投影距離:MQDF)がある。当該技術では、大量の文字パターンを用いて文字識別辞書を作成する際にベイズの定理から導かれる距離尺度である識別関数を文字カテゴリ毎に導出し、入力された文字パターンを識別する際には、識別関数の出力する値に基づいて文字カテゴリに分類することで、個々の文字を識別する。
・ステップ325
制御部250は、ステップ320において認識された文字列の認識結果毎に、項目値表記辞書と照合し、当該文字列が項目値表記辞書に登録された文字列の文法表記ルールとの一致度を表す項目値表記スコアを計算する。当該ステップの処理動作の詳細は後述する。
・ステップ330
制御部250は、ステップ320において認識された文字列の認識結果毎に、項目値単語辞書と照合し、当該文字列が項目値単語辞書に登録された単語である確率を表す項目値単語スコアを計算する。当該ステップの処理動作の詳細は後述する。なお、ステップ325とステップ330はどちらを先に実行しても構わない。
・ステップ335
制御部250は、ステップ325で計算された項目値表記スコアとステップ330で計算された項目値単語スコアが共に閾値を超えた文字列を項目値候補として選定する。当該ステップの処理動作の詳細は後述する。
・ステップ340
制御部250は、ステップ335で選定された項目値候補に対し、互いに属性が異なる2つの項目値候補の配置関係の妥当さを表す項目値候補配置スコアを計算する。項目値候補配置スコアは、2つの文字列が属する枠の配置関係や、2つの文字列の配置関係に基づいて計算される。当該ステップの処理動作の詳細は後述する。
・ステップ345
制御部250は、ステップ325で計算された項目値表記スコア、ステップ330で計算された項目値単語スコア、ステップ340で計算された項目値候補配置スコアに基づいて、各スコアの数値から2つの項目値候補のペアが項目値グループの一部としての妥当さを表す項目値候補ペアスコアを計算する。項目値候補ペアスコアの計算には、例えば「項目値表記スコア」、「項目値単語スコア」、「項目値候補配置スコア」を代入することで評価値を出力する評価関数を用いる方法などがある。当該ステップの処理動作の詳細は後述する。
・ステップ350
制御部250は、ステップ345で計算された評価値に基づいて、帳票画像内での項目値候補から項目値グループを構成する文字列を決定する。制御部250は、例えば、項目値グループを構成する全ての属性を満たす項目値候補ペアの組合せ(例えば「銀行−支店ペア」、「支店−口座種別ペア」、「口座種別−口座番号ペア」の組合せ)のうち、項目値候補ペアスコアの総和が最大となるものを選択する。もしくは、制御部250は、項目値候補ペアスコアがある閾値以上となる組合せを選択する。項目値候補ペアの組合せを決定することにより、文字列の認識結果および該文字列の属性が決定される。当該ステップの処理動作の詳細は後述する。
・ステップ355
制御部250は、ステップ345までの処理で求めた認識結果や途中結果を記憶部240に記憶し、表示部220、及び/又はIF260に出力する。なお、制御部250は、別のタイミングで認識結果や途中結果を記憶部240から読み出し、表示部220及び/又はIF260に出力してもよい。
以上のように、本認識処理によれば、帳票画像に項目名が記載されていなくても、認識対象である項目名に対応する項目値を抽出することができる。また、認識処理によれば、辞書の作成コストを極力少なく、かつ、様々なレイアウトの帳票に対しても、汎用性高く認識できる帳票認識方式を提供することができる。
(帳票認識処理2)
図3(B)に、制御部250において実行される帳票認識処理2の概略を示す。なお、図3(B)には、図3(A)との共通部分に同一の符号を付して示している。前述した帳票認識処理1との違いは、項目値表記スコア計算処理(ステップ325)と項目値単語スコア計算処理(ステップ330)の間に、項目値キーワード検出処理(ステップ360)と項目値単語照合対象文字列選択処理(ステップ365)が追加されている点である。追加された2つの処理は、項目値単語照合の処理時間の削減を目的とする。例えば、銀行名の属性の項目値単語は非常に多いため、帳票中の全ての文字列に対して照合処理を行うと処理時間がかかる。これに対し、銀行名は「XXX銀行」、「AAA信用金庫」など、「銀行」や「信用金庫」などの属性に応じて記載されるキーワード(以降、「項目値キーワード」と記載する)が存在する。しかも、項目値キーワードの単語数は項目値単語よりも少ないため、まず項目値キーワードを検出して項目値単語が記載される領域を推定し、その領域内についてのみ項目値単語を照合する。
・ステップ360
制御部250は、ステップ320において認識された各文字列の認識結果を、項目値キーワード辞書と照合し、当該文字列が項目値キーワード辞書に登録されたキーワード単語である確率を表す項目値キーワードスコアを計算し、スコアが閾値以上の文字列を項目値キーワードであると判定する。当該ステップの処理動作の詳細は後述する。
・ステップ365
制御部250は、ステップ360において項目値キーワードと判定された文字列の周囲の文字列を項目値単語照合の候補として選択する。選択方法には、項目値キーワードが照合された文字列を基準として、その基準文字列の上下左右方向で閾値以内の距離にある文字列を選択する方法、基準文字列を含む枠の上下左右方向に基準以内の枠内の文字列を選択する方法などがある。当該ステップの処理動作の詳細は後述する。
なお、ステップ325と、ステップ360−ステップ365−ステップ330に示す一連の処理とは、いずれを先に実行してもかまわない。以上のように、本認識処理によれば、前述した帳票認識処理1の効果に加え、項目値単語照合の処理時間の削減を実現できる。
(帳票認識処理3)
図4(A)に、制御部250において実行される帳票認識処理3の概要を示す。なお、図4(A)には、図3(A)及び(B)との共通部分に同一の符号を付して示している。前述した帳票認識処理2との違いは、項目名スコア処理(ステップ370)、項目名−項目値配置スコア計算処理(ステップ375)、項目名−項目値ペアスコア計算処理(ステップ380)、項目名−項目値ペア検出処理(ステップ385)が追加されている点と、ステップ335が項目値候補選択処理(ステップ390)に変更されている点である。これらの処理は、項目名が記載されている項目値の認識率を向上させることを目的としている。例えば帳票画像のノイズやかすれなどの悪影響により、文字列認識誤りが発生し、項目値表記スコアや項目値単語スコアが低い値になることがある。このような事象が発生した場合、前述したステップ335(項目値候補選択処理)では、項目値の文字列のスコアが低くなる場合や選択できない場合があり、結果的に、後段の処理で正しく項目値グループを決定できない可能性がある。
本認識処理では、この技術課題を、項目名と項目値のペアを求めることで対応する。なお、当該処理には、例えば特開2011−248609号公報に記載された技術を利用できる。当該技術では、項目名と項目値の両方を評価するため、仮に項目値のスコアが低い場合でも、項目名のスコアにより項目名―項目値ペアを抽出することができる。ところで、本認識処理では、項目値だけでなく項目名―項目値ペアも項目値候補とする。
・ステップ370
制御部250は、ステップ320で認識された各文字列の認識結果を、項目名となりうる単語のリストである「項目名辞書」と照合し、当該文字列が項目名辞書に登録された単語である確率を表す項目名スコアSnを計算する。当該ステップの具体例には、例えば特開2011−248609号公報に記載の技術を利用できる。当該ステップの処理動作の詳細は後述する。
・ステップ375
制御部250は、ステップ310で検出された枠の座標およびステップ315で検出された文字列領域の座標に基づいて、帳票画像内の文字列ペアをなす2つの文字列間の配置に対して、項目名−項目値関係としての妥当さを表す項目名―項目値配置スコアSaを計算する。例えば、項目名スコアSnと項目値単語スコアの両方を含むスコアを項目値スコアSvとし、当該項目値スコアを使用して項目名―項目値配置スコアSaを計算してもよい。この他、当該処理には、例えば特開2011−248609号公報に記載の技術を利用できる。当該ステップの処理動作の詳細は後述する。
・ステップ380
制御部250は、ステップ370で計算した項目名スコアSnと、ステップ325で計算した項目値表記スコアと、ステップ330で計算した項目値単語スコアと、ステップ375で計算された項目名―項目値配置スコアSaに基づいて、各スコアの数値から2つの文字列の項目名−項目値関係の評価値である項目名−項目値ペアスコアSpを計算する。評価値の計算には、例えば「項目名スコア」、「項目値単語スコア」、「項目値表記スコア」、「項目名―項目値配置スコア」を代入することで評価値を出力する評価関数を用いる方法などがある。当該処理には、例えば特開2011−248609号公報に記載の技術を利用できる。当該ステップの処理動作の詳細は後述する。
・ステップ385
制御部250は、ステップ380で計算した項目名―項目値ペアスコアが閾値を超えた場合に、当該文字列の組合せを項目名と項目値のペアであると判定する。当該処理には、例えば特開2011−248609号公報に記載の技術を利用できる。当該ステップの処理動作の詳細は後述する。
・ステップ390
制御部250は、ステップ325で計算した項目値表記スコアと、ステップ330で計算した項目値単語スコアが閾値を超えた文字列、および、ステップ385で計算した項目名―項目値ペアスコアSpが閾値を超えた文字列ペアを項目値候補として選定する。当該処理の詳細は後述する。
なお、ステップ370と、ステップ325、ステップ360−ステップ365−ステップ330までの一連の処理、ステップ375は、いずれを先に実行してもかまわない。以上のように、本認識処理によれば、前述した帳票認識処理2の効果に加え、項目名が記載されている項目値の認識率を向上させることができる。
(帳票認識処理4)
図4(B)に、制御部250において実行される帳票認識処理4の概要を示す。なお、図4(B)には、図4(A)との共通部分に同一の符号を付して示している。前述した帳票認識処理3との違いは、ステップ360とステップ365の処理が削除されている点である。すなわち、本認識処理の場合、制御部250が、項目値キーワード検出による項目値単語照合の削減を実行しない点で相違する。ちなみに、帳票認識処理1(図3(A))との比較では、ステップ370、ステップ375、ステップ380、ステップ385、ステップ390が追加されている点で相違する。ここで、ステップ370、ステップ325、ステップ330、ステップ375、ステップ380は、いずれを先に実行してもかまわない。以上のように、本認識処理によれば、前述した帳票認識処理3に比して、照合処理を簡易化することができる。
D.帳票認識処理例(詳細動作)
以下では、前述した処理ステップのうち一部処理の詳細動作について説明する。なお、後述する処理機能は、図5に示す機能構成を有する制御部250において実行されるものとする。すなわち、制御部250は、枠検出部310Aと、文字列検出部315Aと、文字列認識部320Aと、項目名スコア計算部370Aと、項目値表記スコア計算部325Aと、項目値キーワード検出部360Aと、項目値単語照合対象文字列選択部365Aと、項目値単語スコア計算部330Aと、項目名―項目値配置スコア計算部375Aと、項目名―項目値ペアスコア計算部380Aと、項目名―項目値ペア検出部385Aと、項目値候補選択部335A(390A)と、項目値候補配置スコア計算部340Aと、項目値候補ペアスコア計算部345Aと、項目値グループ評価部350Aと、を有している。図5に示す個々の処理機能部は、前述の帳票認識処理3(図4(A))で実行される各処理に対応している。従って、帳票認識処理1、2、4を実行する制御部250では、これらの処理機能部のうち各処理で必要とされる処理機能部だけで構成すれば良い。
図6に、以下の説明で使用する帳票例600を示す。表601は、帳票例600の各文字列に、S101からS129までの文字列番号を付けた図である。以降の説明では、表601内の文字列番号を参照する。ここでは、項目値グループを構成する読取対象の属性(項目名)が、「銀行」、「支店」、「口座種別」、「口座番号」の4つであるものとする。帳票例600の場合、「XXX銀行」、「YYY支店」、「普通」、「1234567」の項目値文字列を抽出することが正解(目標)となる。図7に、文字列認識結果と辞書との照合処理の概略を示す。文字列認識結果と辞書との照合処理は、図4(A)のステップ370、ステップ325、ステップ360、ステップ330に関連する。
・ステップ320
まず、制御部250(文字列認識部320A)は、ステップ315で抽出された文字列画像740に対し、ステップ700の文字切出し処理を実行する。この処理の実行により、制御部250は、1文字単位の切出し方の候補を全て検出してネットワークで表現した切出し仮説ネットワーク750を作成する。次に、制御部250は、ステップ710において、全ての切出し候補の文字パターンを文字識別する。文字識別結果は、確からしさに応じてスコア付けされた第1位から第N位(Nは任意の数)までの候補を持っている(候補文字ネットワーク760)。次の、ステップ720(文字列照合)は、ステップ370、ステップ325、ステップ360、ステップ330に相当する処理であり、制御部250は、ステップ760のネットワークに対して予め用意した文字列辞書730を照合して認識結果770を求める。文字列の照合とは、ネットワーク中の最適なパスを探索する問題とみなすことができる。このため、文字列照合スコアの計算方法として、例えば、文字列照合により求まった文字列パスの切出しパターンの文字識別スコアの平均値を文字列スコアとする方法が利用できる。なお、ネットワークを用いず、文字識別の前に切出し方を一意に決めてから文字識別と照合を行ってもよい。
・ステップ370
次に、制御部250(項目名スコア計算部370A)の動作を、図8(A)及び図9(A)を用いて説明する。図8(A)は、項目名辞書の例であり、図9(A)は、項目名辞書を用いて文字列毎に計算された項目名スコアSnを示す項目名スコアテーブルの例である。制御部250は、帳票画像内の文字列と項目名辞書とを照合し、項目名スコアSnを計算する。項目名スコアの計算には、例えば特開2004−171316号公報に記載の技術を利用することができる。図9(A)は、図6に示す帳票画像内の文字列を処理対象として項目名スコアSnを計算することで得られる項目名スコアテーブルの例である。この項目名スコアテーブルの場合、制御部250は、帳票画像内のN個(本実施例の場合、N=29(S101〜S129))の文字列に対し、全ての項目名単語との照合を行い、項目名スコアを計算する。図6に示す帳票画像において、S128の「電話番号」が項目名文字列として検出されるのは、項目名辞書内の「口座番号」や「番号」の単語と照合しているためである。図9(A)の項目名スコアテーブルにおいて、S128の「電話番号」はS113の「口座番号」と比べて低いスコアとなっていることがわかる。同様に、S117の「口座名」も「口座番号」と照合した結果である。図10に抽出結果を示す。図10では、帳票画像内から項目名単語として抽出された「電話番号」、「口座名」、「口座番号」等を実線で囲んで示している。
・ステップ325
次に、制御部250(項目値表記スコア計算部325A)の動作を、図8(B)及び図9(B)を用いて説明する。基本的な概念は、前述した項目名スコアの計算処理と同じである。図8(B)は、項目値表記辞書の例、図9(B)は、項目値表記スコアテーブルの例である。制御部250は、帳票画像内の文字列と項目値表記辞書を照合し、項目値表記スコアを計算する。項目値表記スコアの計算には、例えば、高橋他による「回帰的遷移ネットワークを用いた文字経路探索方式の開発」(電子情報通信学会技術研究報告 Vol.109 No.418 pp.141-146)に記載の技術を利用することができる。因みに、この技術は、個別文字の識別候補をノードと見立てた識別候補文字ネットワークと状態遷移ネットワークで表現した表記辞書のマッチングにより、状態遷移ネットワークから最適な文字列パスを選択し、文字列認識結果を取得する。項目値表記辞書の例として、例えば図8(B)の項目値表記辞書800に示すような文字列の表記ルールの正規表現がある。口座番号については、1桁から7桁の数字列の表記が登録されている。口座番号以外の項目値表記辞書の例としては、項目値表記辞書810に示す金額や日付などがある。図8(B)の表記辞書800を用いて、図6の帳票画像内の文字列に対して項目値表記スコアを計算すると、項目値表記スコアテーブルは図9(B)のようになる。図9(B)では、項目値表記辞書には口座番号の属性しか登録されていないため、銀行、支店、口座種別の属性は0となっている。図10に抽出結果を示す。図10では、帳票画像内から項目値表記文字列として抽出された「25年12月1日」、「10000円」等を破線で囲んで示している。
・ステップ360
次に、制御部250(項目値キーワード検出部360A)の動作を、図8(C)を用いて説明する。基本的な概念は、前述した項目名スコアの計算処理と同じである。図8(C)は、項目値キーワード辞書の例である。制御部250は、帳票画像内の文字列と項目値キーワード辞書を照合し、項目値キーワードスコアを計算する。項目値キーワードの計算には、ステップ370と同様、特開2004−171316号公報に記載の技術を利用することができる。図8(C)の項目値キーワード辞書を用いて、図6の帳票画像内の文字列に対して項目値キーワードスコアを計算する。図10に抽出結果を示す。図10では、帳票画像内から項目値キーワード文字列として抽出された「銀行」、「支店」等を点線で囲んで示している。
・ステップ365
次に、制御部250(項目値単語照合対象文字列選択部365A)の動作を、図11〜図14を用いて説明する。制御部250は、項目値グループの文字列は互いに近接した範囲に記載されているという前提(条件)に従い、抽出済みの項目名文字列1000(図10)、項目値表記文字列1010(図10)、項目値キーワード文字列1020(図10)を利用して、項目値単語照合処理の対象となる文字列を選択する。本例では、項目値表記文字列と項目値キーワード文字列のみを利用してこの処理を行うものとする。本例の場合、制御部250は、例えば図11(A)の表に示すように、照合単語を含む枠とその隣接枠との配置に従って設定した重みを用い、図11(B)の表に示すスコア計算を用いることにより実現できる。ここで、隣接する枠とは、枠の辺を共有する枠同士を指す。上側の隣接枠を図11(C)の例を用いて説明すると、枠C100の上側に隣接する枠はC101、同様にC102の上側隣接枠はC103〜C105、C106の上側隣接枠はC107からC109である。他の辺についても同様である。文字列のスコア(Sw)は、例えば数1や数2を利用することができる。
[数1]
文字列の種類とスコア値(Swi)の例1
Figure 2016051339
[数2]
文字列の種類とスコア値(Swi)の例2
Figure 2016051339
数1と数2のそれぞれにおいて、3つの式を選択する際には、それぞれ上段の式が優先される。数1では、項目値単語照合の対象となる文字列に近い文字列ほどスコアが高くなるように値を設定している。また、数2のように前段で求めた照合のスコアを乗算することで文字認識結果を考慮することも可能である。
図12は、前段までに抽出された全ての項目名文字列、項目値表記文字列、項目値キーワード文字列に対して、図11を用いて枠のスコア計算を行い、枠ごとにスコアの総和を計算した結果である。項目値グループの項目値が記載されている枠とその周辺が高い値になっていることがわかる。項目値単語照合文字列として、例えば図12のスコアの上位1/2(6.45以上)の枠内の文字列を選択することができる。図12において濃い網掛け部分が選択した枠である。さらに、この範囲では適切に全ての項目値をカバーできない場合を想定して、選択された枠を上下左右に所定の範囲拡大した薄い網掛け部分の枠内の文字列も含めてもよい。また、枠がない帳票については、文字列間の空白を仮想的に罫線とみなすことにより、前述の処理を適用することができる。
図12の例では、項目名文字列、項目値表記文字列、項目値キーワード文字列を用いたが、必ずしも全て利用する必要はない。図13は、項目名文字列と項目値キーワード文字列のみを利用して図12と同様のスコア計算をした結果である。図13では、上位1/2(5.7以上)を濃い網掛けで示し、その上下左右に対象枠を拡大した部分を薄い網掛けで示している。
さらに、図13を用いて選択された文字列を削減する方法について説明する。もっとも、この処理は必ずしも実施する必要はない。図13では、図6の文字列S125を含む枠(スコア5.7)が、他の選択された枠とは孤立して選択されている。1つの文字列のみから複数の項目値を得られないと判断して候補から除外し、更にそれを上下左右に拡大した結果が図14である。
・ステップ330
次に、制御部250(項目値単語スコア計算部330A)の動作を、図8(D)、図15、図16を用いて説明する。基本的な概念は、前記の項目名スコア計算と同じである。図8(D)は、項目値単語辞書の例であり、図15は、項目値スコアテーブルの例であり、図16は、項目値単語文字列の抽出結果の例である。制御部250は、先のステップ365で選択された文字列と項目値単語辞書を照合し、項目値単語スコアを計算する。項目値単語スコアの計算には、ステップ370と同様、特開2004−171316号公報に記載の技術を利用することができる。図8(D)に示す項目値単語辞書を用いて、図6の帳票画像内の文字列に対して項目値単語スコアを計算する場合、項目値スコアテーブルの例は図15のようになる。図15に示すテーブルには、ステップ325で計算された項目値表記スコアとステップ330で計算された項目値単語スコアが記録されている。なお、口座種別の属性については、ステップ360の項目値キーワード検出と同じ内容であるため、ステップ330では省略することができる。また、文字列選択を行わない図3(A)と図4(B)のステップ325では、帳票上の全ての文字列に対して照合処理を行う。
・ステップ375
次に、制御部250(項目名―項目値配置スコア計算部375A)の動作を、図17を用いて説明する。制御部250は、2つの文字列間の配置関係を評価することにより、項目名と項目値のペアとして妥当な配置に高い項目名―項目値配置スコアSaを設定し、妥当でない配置に低い項目名−項目値配置スコアSaを設定する。制御部250は、項目名−項目値配置スコアSaを、2つの文字列が属する枠のサイズおよび配置関係、及び/又は、2つの文字列矩形のサイズおよび配置関係に基づいて計算する。項目名−項目値配置スコアSaの計算には、例えば特開2011−248609号公報に記載の技術を利用することができる。この技術では、例えば項目名−項目値配置スコアSaは、項目名−項目値配置スコアSaが取り得る値の最大値で初期化し、文字列ペアをなす2つの文字列の配置関係が項目名−項目値関係として非妥当であると判断できる配置パターンをペナルティルールとして定義し、初期値からペナルティルールによって得られたペナルティ値を減算した値として計算する。この処理を帳票画像内の全文字列ペアに対して実行する。
図17に、特開2011−248609号公報に開示の技術を用いたペナルティルールの例を示す。制御部250は、ペナルティルールは2つの文字列の属する枠の配置関係やサイズ、2つの文字列矩形の配置関係やサイズを基に計算する。制御部250は、例えば、ルール1710の場合(2つの文字列が相互に隣接する枠内に存在し、かつ、項目名となる文字列の中心座標が枠の中心座標からずれがある場合)、ずれの距離に応じてペナルティを付加する。これは、本来2つの文字列が項目名−項目値関係にある場合には、項目名となる文字列は枠の中心付近に存在するといった仮定によるものである。ルール1720の場合、制御部250は、項目名となる文字列の属する枠の高さが、項目値となる文字列の属する枠の高さよりも大きい場合に、枠高さの比率に応じてペナルティを付加する。これは、本来は、項目名の属する枠の高さより、項目値の属する枠高さが大きいといった仮定に基づくものである。
ルール1730の場合、制御部250は、2つの文字列が同一枠に存在し、かつ、項目名となる文字列よりも、項目値となる文字列が左もしくは上に存在する場合、左もしくは上方向へのはみ出し距離に応じてペナルティを付加する。これは、本来、2つの文字列が項目名−項目値関係にある場合には、項目名となる文字列の右下方向に項目値が存在するといった仮定に基づくものである。ルール1740の場合、制御部250は、2つの文字列が帳票画像内のいずれの枠にも属さず、枠の外かつ相互に近くに存在し、かつ、項目名となる文字列の高さと、項目値となる文字列の高さが異なる場合に、文字列高さの比率に応じて、ペナルティを付加する。これは、本来は、項目名と項目値の文字列の高さは互いにほぼ等しいという仮定に基づくものである。
ルール1750は、制御部250は、項目名となる文字列と、項目値となる文字列の距離が離れている場合に、2つの文字列の距離に応じてペナルティを付加する。これは、2つの文字列が項目名−項目値関係にある場合には、2つの文字列は相互に近くにあるといった仮定に基づくものである。ルール1760は、制御部250は、項目名となる文字列より、項目値となる文字列が左上方向に存在する場合に、そのずれの距離に応じてペナルティを付加するものである。これは、本来は、項目名の右下方向に項目値が存在するといった仮定に基づくものである。
以上のように、ペナルティルールは、2つの文字列が項目名−項目値関係にある場合の尤もらしい配置関係を仮定し、その仮定から外れる配置関係に2つの文字列が配置される場合に、ペナルティが付加されるように生成される。なお、ペナルティルールは図17に示したルール1710から1760に限定されるものではなく、2つの文字列の属する枠の配置関係やサイズ、2つの文字列矩形の配置関係やサイズなどから計算されるものであり、2つの文字列が項目名−項目値関係にある場合に尤もらしい配置関係を仮定し、その仮定から外れる場合に付加される計算方法であれば、これに限定しない。
・ステップ380
次に、制御部250(項目名−項目値ペアスコア計算部380A及び項目名−項目値ペア検出部385A)の動作を、図18を用いて説明する。これらの処理には、例えば特開2011−248609号公報に記載の技術を利用することができる。図18は、項目名−項目値ペア検出結果の例である。項目名−項目値ペアスコア計算では、制御部250は、例えば項目名スコア、項目値スコア(項目値表記スコアもしくは項目値単語スコア)、項目名−項目値配置スコアを入力とする評価関数によって計算する。Snを項目名スコア、Svを項目値スコア、Saを項目名−項目値配置スコアとしたときに、評価関数Sp(Sn、Sv、Sa)の例として、例えば数3、数4、数5に示すものがある。
[数3]
Sp(Sn,Sv,Sa)=(Sn+Sv)Sa
[数4]
Sp(Sn,Sv,Sa)=Sn+Sv+Sa
[数5]
Sp(Sn,Sv,Sa)=Sa・√(Sn+Sv)
なお、評価関数は、数3、数4、数5に限るものではなく、項目名スコア、項目値スコア、項目名−項目値配置スコアの値から、2つの文字列が項目名−項目値関係にある確からしさを算出できる形式であれば、これに限らない。制御部250は、このような評価関数による項目名−項目値評価値計算を帳票画像内の全文字列ペアに対して行い、評価関数Spの値が閾値を超えたペアを項目名−項目値ペアとして検出する。図18では、「先方銀行」と「XXX銀行」のペアが銀行の属性として、「口座番号」と「1234567」のペアが口座番号の属性として、「電話番号」と「042−1234−5678」のペアが口座番号の属性として検出されている。
・ステップ390
次に、制御部250(項目値候補選択部390A)の動作を、図19を用いて説明する。制御部250は、項目値候補として、ステップ325で求めた項目値表記スコアが閾値以上の項目値表記文字列、ステップ330で求めた項目値単語スコアが閾値以上の項目値単語文字列、およびステップ385で求めた項目名−項目値ペアスコアが閾値以上の項目名−項目値ペアを使用する。制御部250は、項目値候補スコアScとして、数6に示すように、項目値候補として選択した文字列に応じて、項目値単語スコア、項目値表記スコア、項目名−項目値ペアスコアのいずれかを選択する。
[数6]
Figure 2016051339
数6の3つの式を選択する際には、前述の式が優先される。すなわち、項目名−項目値ペアが検出されている場合には1つ目の式を、項目名−項目値ペアが検出されず項目値単語が検出されている場合には2つ目の式を、項目名−項目値ペアも項目値単語も検出されず項目値表記が検出されている場合には3つ目の式を用いる。図19は、項目値候補の選定結果であり、図20は、選定結果を格納したテーブルである。なお、文字列S108は、2つの項目値単語が検出されたため、図20では、文字列S108aと文字列S108bに分割している。この項目値候補を用いて、後段のステップ349〜ステップ350の処理を行う。なお、図4(A)と図4(B)のステップ335における項目値候補選択では、項目名−項目値ペア検出をしていないため、項目値候補選択には項目値表記文字列と項目値単語文字列のみを用いる。
・ステップ340
次に、制御部250(項目値候補配置スコア計算部340A)の動作を、図21及び図22を用いて説明する。制御部250は、互いに属性の異なる2つの項目値候補間の配置関係を評価することにより、項目値グループの項目値として妥当な配置に高い項目値候補配置スコア(Sca)を設定し、妥当でない配置に低い項目値候補配置スコアを設定する。ここでは、2つの文字列を含む枠の配置、もしくは文字列間の配置に応じてスコアを計算する。図21に、具体的な計算方式の一例を示す。図21には、4種類の配置スコアの計算方法を示している。ルール(1)は2つの文字列が異なる枠に含まれている場合である。ルール(2)は、2つの文字列が同じ枠内に含まれている場合である。ルール(3)は、一方が枠内、もう一方が枠外の場合である。ルール(4)は、2つの文字列とも枠外の場合である。
図22は、ルール(1)のペナルティを利用して、文字列S113を基準として計算した項目値候補配置スコアの例である。2つの文字列が異なる枠内に含まれている場合、1.0を初期値として2つの文字列に至るまでに枠を経由する(跨ぐ)ごとに、ルール(1)に従って、ペナルティ値を減算する。例えば、文字列S113と文字列S106の項目値候補配置スコア(Sca(S113,S106))を計算する場合、経由する枠は文字列S113、S108、S105、S106となる。文字列S113からS108へは上方向へ移動するため、ルール(1)に従って、0.3を減算して0.7となる。同様に、S105に上方向へ移動して0.4となる。S106へは右方向への移動であるため、0.1を減算して0.3となる。従って、項目値候補配置スコアSca(S113,S106)は0.3となる。同様に、項目値候補配置スコアSca(S113,S123)は0.7となる。なお、2つの枠の間に複数の経路が存在する場合には、スコアが最大となる経路を選択してもよい。もしくは、先に縦方向に移動してから横方向に移動する場合と、先に横方向に移動してから縦方向に移動する場合を比較し、スコアが大きい方を選択してもよい。
ルール(2)、ルール(3)、ルール(4)の計算方法についても、図22と同様に枠又は文字列を経由するたびにスコアを減算することで項目値候補配置スコアScaを求めることができる。なお、項目値候補配置スコアScaの計算方法は、図21に示した方法に限定されるものではなく、2つの項目値候補の属する枠の配置関係やサイズ、項目値候補の文字列矩形の配置関係やサイズなどから計算されるものであれば、これに限らない。
図23(A)は、項目値候補配置スコアScaの計算結果をネットワークで表現した図である。角に丸みを付けた矩形は、項目値候補を表すノードであり、行番号と認識結果、項目値候補スコアScが記載されている。ノード間のリンクに付した数字は、項目値候補配置スコアScaを表している。図23(A)では、項目値候補スコアScが閾値を超えた文字列又は文字列のペアがノードとして登録されており、異なる属性のノード間にリンクを設定している。なお、図23(A)では、銀行、支店、口座種別、口座番号の順にリンクを設定しているが、全ての属性間(例えば銀行と口座種別や、銀行と口座番号など)にリンクを設定してもよい。
・ステップ345
次に、制御部250(項目値候補ペアスコア計算部345A)の動作を、図23(B)と図24(A)を用いて説明する。制御部250は、互いに属性の異なる2つの項目値候補の文字列のペアに対して、項目値候補スコアScと項目値候補配置スコアScaを用いて項目値候補ペアスコアScpを計算する。2つの項目値候補の文字列(又は、文字列ペア)iと文字列(又は、文字列ペア)jとの間の項目値候補ペアスコアを求める評価関数Scp(文字列i,文字列j)の計算方法の一例としては、数7がある。
[数7]
Scp(文字列i,文字列j)
=(Sc(文字列i)+Sc(文字列j))Sca(文字列i,文字列j)
なお、ステップ385の項目名−項目値ペア検出の評価関数に数3から数5を用いたように、ステップ345の評価関数も数7に限定しない。
図23(B)は、図23(A)のネットワーク表現に基づいて項目値候補ペアスコアScpを計算した結果である。リンク上の数字が項目値候補ペアスコアScpである。また、図24(A)は、項目値候補ペアスコアScpの計算結果を格納したテーブルを表す図である。図24(A)では、例えば、銀行の属性の項目値候補文字列S107と支店の属性の項目値候補文字列S108bとのスコアが1.57となっている。空欄はスコア0.0である。
・ステップ350
次に、制御部250(項目値グループ評価部350A)の動作を、図24(B)と図25を用いて説明する。制御部250は、ステップ345で計算した項目値候補ペアスコアを用いて、最適な文字列の組を決定する。決定方法の一例としては、図23(B)のネットワークにおいて全ての属性を満たすパスの中で項目値候補ペアスコアScpの総和が最大となるパスを選択することや、総和が閾値を超えるパスを選択することが挙げられる。最大値の代わりに平均値を用いることや、その他の評価基準を用いてもよい。また、本実施例ではネットワーク表現を用いているが、その他の方法で実現してもよい。
図24(B)は、図23(B)のネットワークからスコアの総和が最大となるパスを太線で示した図である。この結果、図25(A)において太線で示した項目値候補が選択される。銀行と口座番号の属性については項目名−項目値ペアが選択されているため、制御部250が、項目値の文字列のみを抽出して認識結果として作成したテーブルが図25(B)である。
図4(A)のステップ355の処理では、制御部250は、図25(B)のように作成したデータを記憶部240に記憶する。また、制御部250は、記憶部240からそのデータを適宜読み出して、表示部220に表示することができ、及び/又は、IF260により他の装置へ出力することができる。例えば、表示部220に表示されるユーザインタフェース画面には、図25(B)のうち「属性」と「認識結果」に対応する情報が表示される。なお、制御部250は、表示や出力データの例として、記憶部240に記憶されたデータから、他にも後述する図26等に示した表示画面を作成することができる。
また、図23(B)のネットワークでは、銀行と支店や支店と口座種別など属性の順序に従ってリンクを設定したが、制御部250は、それ以外のリンクを設定してもよい。図27(A)は、銀行と口座種別や支店と口座番号の属性の間にリンクを設定した例である。このリンクは、帳票上のかすれやノイズ等に起因した文字識別の誤りに対応したものである。文字識別を誤ったために、正しい項目値候補が抽出されない場合でも、無理にスコアの低い項目値候補を経由したパスを選択しないようにすることを目的としている。例えば図27(B)は、文字列S108bの「YYY支店」が認識されずに項目値候補とならなかった場合のネットワークである。最適パスを示す太線は、支店の属性の項目値候補をスキップしたパスとなっている。
さらに、項目値グループ評価において、最適なパスだけでなく閾値を超えたパスを複数選択する場合では、図28(A)に示すように、帳票上に複数の項目値グループが列記されている場合にも対応することができる。図28(A)の表2800は、3つの項目値グループが列記されている例である。表2810は文字列番号を示す図であり、表2820は項目値候補の抽出結果をもとに文字列を分割した文字列番号である。図28(B)は、項目値グループ評価(ステップ350)において、図28(A)に対して作成したネットワークの例である。制御部250は、詳細なスコアについては省略するが、閾値を超えた3つのパスを選択することにより、正しく3つの項目値グループを決定することができる。
図29(A)は、文字認識の誤りなどによりS203cが項目値候補にならなかったネットワークの例である。2つ目の項目値グループの文字列は、S203a、S203b、S202c、S203dとなり、文字列S202cが別の項目値グループのパスと重複している。このような場合は、制御部250は、パスのスコアが高い方を優先し、2つ目の項目値グループから文字列S202cを除いてもよい。また、図29(B)に示すように、図27(B)と同様にリンクを増やすことにより解決することもできる。また、項目値グループが列記されている場合には、制御部250は、同じ属性の項目値候補同士の配置を評価することにより、誤りを削減すること可能である。
さらに、1つの枠内に複数の項目名グループが列記されている場合、制御部250は、図21のルール(2)のペナルティルールを使用する。一方、複数の項目名グループが枠外に列記されている場合、制御部250は、図21のルール(4)のペナルティルールを使用することにより、スコアの値は異なるがリンク構造が図28(B)や図29(B)と同じネットワークを作成することにより、項目値グループを決定することができる。
(帳票認識処理5)
帳票認識処理2(図3(B))及び帳票認識処理3(図4(A))では、制御部250は、項目値キーワード検出処理(ステップ360)の後、項目値単語照合対象文字列選択処理(ステップ365)を実行し、さらに項目値単語スコア計算処理(ステップ330)を実行している。この場合、銀行と支店の照合を独立して行うため、実際にはない銀行と支店の組合せを求めることがある。この技術課題を解決するため、本実施形態では、項目値単語の照合にあらかじめ優先度を設定し、項目値単語の照合処理を複数の段階に分ける。一例として、優先度1を「銀行」、優先度2を「支店」、優先度3を「口座種別」とすることができる。
まず、制御部250は、「銀行」の項目値単語の照合処理を行って銀行の候補を絞る。制御部250は、「支店」の項目値単語の照合処理では、銀行ごとに分類された支店の項目値単語辞書を用いる。そして、制御部250は、絞られた候補の銀行ごとに、その銀行の支店の項目値単語辞書を用いて項目値単語照合を行う。以上のように、本実施形態によると、さらに、優先度毎の辞書により、単語照合の処理コストを一層少なくすることができる。
(帳票認識処理6)
本実施形態は、項目値候補ペアスコアの算出(ステップ345)と項目値グループ評価処理(ステップ350)の後、項目値グループ内の項目値の配置に基づいて認識結果の確からしさを判定し、判定結果に応じて、先に求めた項目値候補ペアスコア等を修正した後、項目値グループ評価を再度実行する。項目値グループ評価までの方式は、帳票認識処理1〜5のいずれを使用してもよい。また、項目値候補間のスコアを求めることができるのであれば、帳票認識処理1〜5に限らない。
配置に基づいた評価を実行する本形態例の目的は、項目値候補ペアスコアのみでパスを評価することによる誤認識を低減することである。例えば文字認識や照合に誤りがあると、項目値以外の文字列に対して大きなスコア値を算出することがある。この場合、項目値候補ペアスコアは隣接する項目値候補間の局所的なスコアであるため、誤ったパスを選択する可能性がある。この問題を解決するために、本実施形態では、項目値グループ内の全ての項目値における配置の妥当性を評価して誤ったパスの選択を抑制する。
また、本形態例の別の目的は、例えば図28(A)のように、複数の項目値グループが帳票上に記載されている例(複数列挙型)において、複数の項目値グループを高精度に認識することである。通常、複数の項目値グループを認識するには、項目値グループ評価によって選択したパスのうちの上位パスを選択することが考えられる。しかし、記載された複数の項目値グループが上位になる保証はないため、単純に1位からN位のパスを選択することで解決できない。例えば、2位以下のパスが1位のパスと一部の項目値のみ異なる類似したパスになることが多い。さらに、文字の潰れやかすれなどで文字認識や単語照合の類似度が低い場合には、より下位になる場合もある。
図30に、制御部250における帳票認識の別の処理フローを示す。図30では、項目値グループを認識した後、項目値の配置に基づいて認識結果の確からしさを評価し、評価結果に応じて項目値グループの算出方式を変更する。まず、ステップ305の画像入力処理において、制御部250は、画像入力部230から画像を入力する。次に、ステップ3000のレイアウト解析において、制御部250は、入力された帳票画像から枠(セル)や行の座標や配置関係を検出する。この処理の具体例には、図3(A)のステップ310と315がある。
次のステップ3010(項目値候補ペアスコア算出処理)において、制御部250は、帳票画像から文字認識や照合処理を用いて項目値候補ペアスコアを計算する。この処理の具体例には、図3(A)のステップ320〜345がある。続くステップ350(項目値グループ評価処理)において、制御部250は、図3(A)について説明した通り、項目値候補ペアスコアに基づいて、帳票画像内での項目値候補から項目値グループを構成する文字列を決定する。
次のステップ3020(項目値グループのレイアウト評価処理)において、制御部250は、項目値グループ内の項目値の配置が、グループとして妥当か否かを判定する。この処理の詳細は、図31〜図37(B)を用いて後述する。次のステップ3030(レイアウトに基づくスコア修正処理)において、制御部250は、ステップ3020における評価結果に基づいて、項目値候補ペアスコア等のスコアを変更する。この処理の詳細は図36(B)を用いて後述する。
次のステップ3040(項目値グループ再評価処理)において、制御部250は、ステップ3030で修正したスコアを用い、再度項目値グループを選択する。ステップ355(記憶および出力処理)において、制御部250は、ステップ3040までの処理で求めた認識結果や途中結果を記憶部240に記憶する、又は、表示部220もしくはIF260に出力する。なお、制御部250は、別のタイミングで認識結果や途中結果を記憶部240から読み出し、表示部220又はIF260に出力してもよい。
・ステップ3020
当該ステップ(項目値グループのレイアウト評価処理)において、制御部250は、ステップ3021(項目値配置の整列性評価処理)、ステップ3022(複数グループ間の配置規則性評価処理)、3023(同一属性の配置規則性評価処理)に示す3つの評価処理を実行する。もっとも、ステップ3020では、これら3つの評価処理の全てを実行しても1つのみ実行してもよい。
・ステップ3021
図31及び図32を用い、項目値配置の整列性評価処理の詳細を説明する。当該ステップにおいて、制御部250は、項目値グループ内の各項目について、グループ全体としての配置の妥当性を評価する。本ステップにおいて、制御部250は、例えば全ての項目値の文字列が横又は縦方向に整列していることや同一枠内に記載されていること等を評価する。
図31は、ステップ3021の詳細処理の一例を示す。制御部250は、ステップ3100〜3170において、異なる観点で整列性を判定する。なお、ステップ3100〜3170の全てのステップを実行する必要はない。また、整列性が判定された時点で、評価処理を終了してもよい。さらに、評価の実行順序は変更してもよい。
・ステップ3100及び3110
ステップ3100において、制御部250は、項目値グループ内の各項目値文字列が横方向に整列しているか否かを評価し、条件を満たしていれば整列性ありと判定する。制御部250は、例えば図28(A)のS202aからS202dの文字列は横方向に整列しているため、この条件を満たすと判定する。縦方向の整列性についても同様である。
因みに、図32(A)は、横方向の整列性判定の一例を示す図である。文字列1と文字列2の整列性を評価する場合、文字列1の中心線が文字列2の上下端の間にあれば整列性ありと判定する。文字列1と文字列2を入れ替えても同様である。ステップ3110における文字列の縦方向の整列性判定も同様である(図32(B))。この文字列の整列性判定は、項目値グループ内の各項目値文字列が全て枠外、全て同一枠内、別枠内等のいずれの場合でも判定可能である。
・ステップ3120及び3130
当該ステップにおいて、制御部250は、項目値グループ内の各項目値文字列を含む枠が、横方向もしくは縦方向に整列しているか否かを評価する。枠の整列性の評価方法としては、例えば横方向であれば枠の上下端、縦方向であれば枠の左右端が揃っているか否かを評価する。
・ステップ3140
当該ステップにおいて、制御部250は、項目値グループ内の各項目値文字列が同一枠内に記載されているか否かを評価する。
・ステップ3150
当該ステップにおいて、制御部250は、項目値グループ内の項目値文字列が記載されている全ての枠が互いに隣接しているか否かを評価する。この評価は、グループとして纏まって表記されているか否かを評価するものである。枠同士が離れている場合には、誤った項目値を選択している可能性が高いためである。例えば図6において、「XXX銀行」「YYY支店」と「普通」の項目値文字列を含む枠は互いに隣接しており、「XXX銀行」「YYY支店」と「1234567」の項目値文字列を含む枠は互いに隣接している。一方、「YYY支店」の代わりに文字列S125中の「BBB支店」を含む項目値グループを選択した場合、「BBB支店」の枠は他の項目値文字列の枠と隣接していない。このように、項目値文字列を含む枠が互いに隣接関係にあるか否かを判定する。
・ステップ3160
当該ステップにおいて、制御部250は、項目値グループ内の全ての項目値文字列を含む外接矩形領域内に他の文字列が存在しないか否かを評価する。当該ステップも、ステップ3150と同様、グループとして纏まって表記されているか否かを評価する処理である。図32(C)に示すように、項目値文字列1から項目値文字列4を囲む外接矩形内に他の文字列が存在しない場合は整列性ありと判定する。図32(D)に示すように、外接矩形内に項目値グループとは関係のない文字列が存在する場合には整列性なしと判定する。ただし、図32(E)に示すように、項目値文字列の項目名に相当する文字列であれば整列性ありと判定する。
・ステップ3170
当該ステップにおいて、制御部250は、全ての項目値文字列の文字サイズが同じか否かを判定する。同じ項目値グループの文字列は同じサイズの文字で記載されることが多いためである。
・ステップ3022
次に、ステップ3020の第2ステップを説明する。当該ステップは、複数グループ間の配置の規則性を評価するステップである。以下では、図33〜図37を用いて説明する。当該ステップでは、2つの項目値グループを比較して配置の規則性の有無が判定される。この判定は、図28(A)に示すように、複数の項目値グループが列挙されている場合には、項目値文字列の配置が類似していることに基づく。
当該ステップの詳細を説明する前に、本形態例におけるネットワークのデータテーブルの例と項目値グループを表す答えテーブルの例を、図33と図34を用いて説明する。図33は、図28(A)の記載例をネットワークで表現した例である。ネットワークは、項目値候補を表すノードとノード間のリンクで表現される。ノードのデータ構造の例としては、ノードのID、「銀行」や「支店」等の属性、単語照合などで得られた項目値候補スコア、文字列の認識結果、文字列の座標、文字列が含まれる枠の座標等がある。枠に含まれていない場合は枠座標のデータは格納されない。リンクのデータ構造の例としては、リンクの両端のノードID、2つの文字列間の配置スコア、ノードの項目値候補スコアとリンクの配置スコアから算出した項目値候補ペアスコア等がある。
図34は、図33のネットワークから求めた項目値グループのデータテーブルの例である。このデータテーブルは、項目値グループを表すパスが経由するノードの情報と、パスのスコア等を記録する。例えば、パスIDの項目値グループはノード数が4つであり、S202aからS202dの文字列から構成されている。このテーブルをパススコアについて降順に格納すれば、上位のパスほど信頼性が高いとみなすことができる。
図35は、ステップ3022の処理の一例である。まず、ステップ3500において、制御部250は、答えテーブルからパス1を選択する。次のステップ3510において、制御部250は、パス1の項目値文字列の配置を数値化(V1)する。数値化の方法については後述する。制御部250は、次のステップ3520においてパス2を選択し、続くステップ3530でパス2の項目値文字列の配置を数値化(V2)する。制御部250は、ステップ3540においてV1とV2を比較し、続くステップ3550で規則性ありの条件を満たすか否かを判定する。規則性がある場合、制御部250は、ステップ3560に進み、パス1とパス2に規則性があることを登録する。制御部250は、ステップ3570とステップ3580を経て、パス2が答えテーブルから選択できなくなるまで3520から3560を繰り返す。
同様に、ステップ3590とステップ3600を経て、パス1が答えテーブルから選択できなくなるまで、制御部250は、ステップ3500から3580を繰り返す。なお、3570と3590では、全てのパスを評価せず、あらかじめ決められた順位までのパスや、パススコアが基準以上のパスに限定することも可能である。また、一度規則性があると判定されたパスについては、ステップ3500やステップ3520で選択しなくてもよい。
次に、図36〜図37を用い、ステップ3510と3530における配置の数値化と、ステップ3540における比較評価の例を説明する。この例では、図3(A)のステップ340で算出するノード間の配置スコアを用いる。図36(A)は、図28(A)の記載例に対して図21の配置スコア算出ルールに基づいて算出した配置スコアをリンク上に記載した例である。図37(A)は、ステップ3510と3530における配置の数値化の例として、配置スコアをリンクの順に並べてベクトル化したものである。図37(B)は、ステップ3540でパスを比較した結果を格納した例である。この例では、ベクトル間のユークリッド距離を算出している。この結果から、距離が基準値以下であればステップ3550で規則性があると判定することができる。
なお、数値化のその他の例としては、各項目値文字列の中心や左上角等の座標値を直接用いてもよい。また、ベクトル間の比較は、ユークリッド距離だけでなく、街区距離や内積値を利用してもよい。なお、内積値の場合は、基準値以上を規則性ありとする。さらに、パス1とパス2のノード数が異なる場合には、両者に共通する属性のノードのみを用いて評価してもよい。これにより、図29(B)のように項目値の認識に失敗した場合でも、パスの規則性を判定することができる。
・ステップ3023
次に、ステップ3020の第3ステップを説明する。当該ステップは、同一属性の配置の規則性を評価するステップである。当該ステップは、2つの項目値グループを比較して同じ属性の項目値文字列間において、配置の規則性の有無を判定するものである。具体的には、同一属性の項目値文字列の位置関係が、全て同じか否かを判定する。
図34においてパス1とパス2を比較する場合、S202aとS204a、S202bとS204b、S202cとS204c、S202dとS204dの相対的な位置関係が同じであるか否かを判定する。判定方法としては、同一属性の2つの文字列の座標値の差分値や配置スコアの一致度を判定すればよい。
・ステップ3030
ここでは、図36(B)を用い、ステップ3030(レイアウトに基づくスコア修正処理)について説明する。このステップでは、ステップ3020において判定したパスの規則性に基づいて、ネットワークの項目値候補ペアスコアを修正する。この処理により、ステップ3040の項目値グループ再評価において、パスの再計算をする際に、規則性のあるパスが上位のスコア値となり、複数の項目値グループが列挙されている場合でも、上位のパスを選択することで答えを得ることができる。
スコアの修正例には、次の2つがある。第1の例は、規則性があるパスの項目値候補ペアスコアを増加させることである。第2の例は、規則性があるパスのノードに対して、該当するパス以外のリンクの項目値候補ペアスコアを減少させることである。図36(B)のパス1に着目した場合、パス1を経由するノードのリンクのうち、パス1に関係ないリンクのスコアを減少させる。S202cに関するリンクでは、点線で示したリンクのスコアを減少させる。スコアの増減値は、ステップ3020の判定内容によって変化させてよい。判定が複数の場合、最も増減値が高い判定のみ利用してもよいし、全ての判定を利用してもよい。
・ステップ3040
ここでは、ステップ3040(項目値グループの再評価処理)について説明する。この処理は、ステップ3030でスコアを修正したネットワークを用いてパスを求める以外、ステップ350と同じである。さらに、ステップ3020の判定内容に基づいて、規則性があると判定されたパスに対してパススコアを増加させてもよい。
以上のように、本形態例では、項目値グループの項目値文字列の配置の規則性を用いて、高精度に項目値グループを求めることができる。なお、ステップ3020から3040を繰り返し実行してもよい。
(帳票認識処理7)
本実施形態では、帳票認識処理1〜帳票認識処理6のいずれかの画像処理装置200を利用した金融機関の営業店窓口に設置される営業店窓口端末装置について説明する。金融機関などでは、営業店窓口に設置された端末装置に接続されたスキャナによって、顧客が記入した取引帳票の画像を撮像し、得られた画像データを保存したり、画像データについて文字認識を行ったりしている。営業店窓口端末装置は、例えば操作部210と、表示部220と、スキャナなどの画像入力部230と、利用者との授受のための現金を取り扱う現金入出金部と、通帳に取引内容を印字する通帳プリンタ部と、レシートなどに印字するプリンタ部と、端末記憶部とこれらを制御する端末制御部とによって構成することができる。なお、端末制御部は図2の制御部250に対応し、端末記憶部は図2の記憶部240に対応する。
以下、営業店窓口端末装置を利用した業務フローについて説明する。営業店窓口端末装置は、利用者から取引科目別の取引帳票を受け取ったオペレータが、帳票と対応する取引データ入力画面を呼び出すための画面番号を操作部210から入力し、表示部220である端末画面に表示された取引画面の各入力フィールドに取引金額等、帳票上の記入データをキーボード入力することにより、目的の取引を実行する。
さらに、端末制御部は、画像入力部230であるスキャナによって採取した取引帳票の画像を採取し、その画像に基づいてOCR(Optical Character Recognition)機能により記載内容を読取り、取引内容の確認画面を表示部220に表示する。この場合、取引内容の確認画面には、帳票からOCRで読取られた各データ項目の内容、例えば、店番、口座番号、入金額などが表示され、確認画面の表示データに問題がなければ、これらのデータが記録データとして管理装置に送信処理される。このように、営業店窓口端末装置によれば、撮像部230によって採取した画像上からOCR処理を実行することができる。
(表示画面の例)
次に、表示部220に表示される表示画面の例について説明する。例えば図26は、ステップ350において、制御部250が、図24(B)、図25(A)、図25(B)で決定した項目値グループの認識結果を表示した例である。領域2600が帳票画像を表示する領域である。領域2610をはじめとする太い線で囲まれた文字列は、項目値として抽出された結果を表す。領域2620は項目値グループを表示する枠である。一例として、抽出された項目値を含む枠の外接矩形等で表現できる。領域2630は認識結果を表示する領域である。領域2640をはじめとする網掛け領域には項目値の属性が表示される。領域2650をはじめとする枠内には項目値の文字認識結果が表示される。文字認識結果が誤っている場合には、その項目値の文字認識結果表示領域を選択して文字を修正することも可能である。
なお、領域2630に認識できていない項目値がある場合(例えば「銀行」の属性に対応する項目値が認識できなかった場合)、制御部250は、操作部210又は画像入力部230を通じ、認識されていない項目値の選択を受け付けると共に、選択された項目値の入力を受け付けることも可能である。さらに、操作部210又は画像入力部230を通じ、項目値キーワードを追加することも可能である。項目値キーワードに「信用金庫」が登録されていなかった場合、この帳票の銀行名である「ZZZ信用金庫」は認識できない。そこで、表示画面内の「キーワード追加」ボタンを選択することによりキーワードを追加できるようにしても良い。
キーワードの追加には、文字認識を利用する方法と手入力による方法が可能である。文字認識を利用する場合は、領域2600で認識したい領域を選択することにより、制御部250は、領域2630に認識結果を表示部220に表示する。利用者は、例えば領域2630内に属性(例えば「銀行」)を入力することにより、キーワードを登録することができる。さらに、領域2630にキーワードの文字を直接入力することも可能である。例えば、信用金庫の略称である「信金」もキーワードとして考えられるため、「信金」を入力する。キーワードを追加した後に表示画面内の「再認識」ボタンを選択することにより、再度項目値グループの認識を行うことができる。
図38は、ステップ3021(図30)の整列性判定を、ユーザが直接指定するための画面である。複数列挙型の帳票を正しく認識できない場合に利用することができる。図38(A)は、整列性がある項目値グループの領域を指定した例である。項目値グループの領域指定は、マウスやタッチパッド、タッチパネルなどを用いて行うことができる。この項目値グループの配置を利用して、ステップ3022、ステップ3023、ステップ3030、ステップ3040の処理を経て認識した結果が図38(B)である。
図39は、複数列挙型の帳票において、1個の項目値グループのみ認識対象とする場合のユーザ指定の画面である。図39(A)は、認識したい項目値グループの位置を指定した例である。図39(A)のように項目値グループ内の一点を指定する。その点を含む範囲で最も確からしい項目値グループを認識した結果が図39(B)である。領域指定は、マウスやタッチパッド、タッチパネルなどを用いて行うことができる。なお、図38(A)のように、認識したい領域全てを指定してもよい。
このように、図3(A)、図3(B)、図4(A)、図4(B)、図30に示す処理フローによれば、項目名が記載されていない項目値を認識することができる。
E.他の形態例
本明細書において提案する発明は、前述した実施形態に限定されるものではなく、前述した以外にも様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
本発明に係る帳票認識方法及び帳票認識装置は、その各手順をコンピュータに実行させるための帳票認識プログラム、帳票認識プログラムを記録したコンピュータ読み取り可能な記録媒体、帳票認識プログラムを含みコンピュータの内部メモリにロード可能なプログラム製品、そのプログラムを含むサーバ等のコンピュータ、等により提供されることができる。
100、101…帳票例、
200…帳票認識装置、
210…操作部、
220…表示部、
230…画像入力部、
240…記憶部、
250…制御部、
260…インターフェース(IF)、
Sv…項目値スコア、
Sc…項目値候補スコア、
Sca…項目値候補配置スコア、
Scp…項目値候補ペアスコア、
Sn…項目名スコア、
Sa…項目名−項目値配置スコア、
Sp…項目名−項目値ペアスコア。

Claims (15)

  1. 帳票に記載された文字列を認識する帳票認識装置において、
    データの属性を表す文字列である項目名と、前記項目名に対するデータの文字列である項目値を含む帳票画像を入力する画像入力部と、
    前記帳票画像から認識された、前記帳票画像内の文字列に対し、該文字列が前記項目値である確率を表す項目値表記スコアを計算する項目値表記スコア計算部と、
    前記帳票画像内の文字列に対し、該文字列が予め登録された詳細な項目値を示す項目値単語である確率を表す項目値単語スコアを計算する項目値単語スコア計算部と、
    前記項目値表記スコアと前記項目値単語スコアの両方を含むスコアを項目値スコア(Sv)とし、前記項目値スコアが予め定められた閾値より高い文字列を項目値候補として選択し、選択された項目値候補に対する項目値候補スコア(Sc)として前記項目値スコア(Sv)を与える項目値候補選択部と、
    前記帳票画像内の前記項目値候補の文字列ペアに対し、前記帳票画像内において互いに関係する複数の属性の項目値の組合せを項目値グループとした場合に、該文字列ペアの配置関係が各項目値グループの項目値として妥当であるか否かを表す項目値候補配置スコア(Sca)を計算する項目値候補配置スコア計算部と、
    前記帳票画像内の項目値候補の文字列ペアに対し、前記項目値スコア(Sv)、前記項目値候補配置スコア(Sca)を基に、前記文字列ペアが前記項目値グループの項目値としての尤もらしさを表す評価値である項目値候補ペアスコア(Scp)を計算する項目値候補ペアスコア計算部と、
    前記項目値候補ペアスコア(Scp)により、前記帳票画像内の文字列と前記項目値グループとの対応付けを評価することで項目値の文字列を認識する項目値グループ評価部と、
    前記帳票画像内の文字列の認識結果を出力する出力部と
    を有する帳票認識装置。
  2. 請求項1に記載の帳票認識装置において、
    前記帳票画像内の文字列に対し、該文字列が項目値に比較的頻出する項目値キーワードである確率を表す項目値キーワードスコアを計算し、計算された前記項目値キーワードスコアが閾値より大きい文字列を項目値キーワードとして検出する項目値キーワード検出部と、
    前記項目値表記スコアと前記項目値キーワードスコアを用いて、項目値の単語を検出する際の対象文字列を選択する項目値単語照合対象文字列選択部と
    を更に有し、
    前記項目値単語スコア計算部は、前記項目値単語照合対象文字列選択部で選択された文字列に対し、前記項目値単語スコアを計算する
    ことを特徴とする帳票認識装置。
  3. 請求項2に記載の帳票認識装置において、
    前記帳票画像内の文字列に対し、該文字列が項目名である確率を表す項目名スコア(Sn)を計算する項目名スコア計算部と、
    前記項目名スコア(Sn)と前記項目値単語スコアの両方を含むスコアを前記項目値スコア(Sv)とし、前記帳票画像内の文字列ペアに対し、該文字列ペアの配置関係が項目名−項目値関係として妥当であるか否かを表す項目名―項目値配置スコア(Sa)を計算する項目名―項目値配置スコア計算部と、
    前記項目名スコア(Sn)、前記項目値スコア(Sv)、前記項目名―項目値配置スコア(Sa)を基に、該文字列ペアの項目名−項目値としての尤もらしさを表す評価値である項目名−項目値ペアスコア(Sp)を計算する項目名−項目値ペアスコア計算部と、
    前記項目名−項目値ペアスコア計算部の出力する前記項目名−項目値ペアスコア(Sp)により、前記帳票画像内での項目名−項目値関係の対応付けを決定する項目名−項目値ペア検出部と
    を更に有し、
    前記項目値候補選択部は、前記項目値スコア(Sv)が高い文字列と、前記項目名−項目値ペアスコア(Sp)が高い文字列のペアを項目値候補として選択する
    ことを特徴とする帳票認識装置。
  4. 請求項1に記載の帳票認識装置において、
    前記帳票画像内の文字列に対し、該文字列が項目名である確率を表す項目名スコア(Sn)を計算する項目名スコア計算部と、
    前記項目名スコア(Sn)と前記項目値単語スコアの両方を含むスコアを前記項目値スコア(Sv)とし、前記帳票画像内の文字列ペアに対し、該文字列ペアの配置関係が項目名−項目値関係として妥当であるかを表す項目名―項目値配置スコア(Sa)を計算する項目名―項目値配置スコア計算部と、
    前記項目名スコア(Sn)、前記項目値スコア(Sv)、前記項目名―項目値配置スコア(Sa)を基に、該文字列ペアの項目名−項目値としての尤もらしさを表す評価値である項目名−項目値ペアスコア(Sp)を計算する項目名−項目値ペアスコア計算部と、
    前記項目名−項目値ペアスコア計算部の出力する前記項目名−項目値ペアスコア(Sp)により、前記帳票画像内での項目名−項目値関係の対応付けを決定する項目名−項目値ペア検出部と
    を更に有し、
    前記項目値候補選択部は、前記項目値スコア(Sv)が高い文字列と、前記項目名−項目値ペアスコア(Sp)が高い文字列のペアを項目値候補として選択する
    ことを特徴とする帳票認識装置。
  5. 請求項1に記載の帳票認識装置において、
    前記項目値候補ペアスコア計算部は、前記項目値候補スコア(Sc)が高い項目値候補の文字列をノードとし、項目値候補同士のリンクのスコアを前記項目値候補配置スコア(Sca)とするネットワークを作成し、前記項目値候補スコア(Sc)及び前記項目値候補配置スコア(Sca)により前記項目値候補ペアスコア(Scp)を計算し、
    前記項目値グループ評価部は、前記ネットワーク内で2つの文字列間の前記項目値候補ペアスコア(Scp)が高いパスを選択することにより、前記帳票画像内の文字列と項目値グループとの対応付けを評価することで項目値の文字列を決定する
    ことを特徴とする帳票認識装置。
  6. 請求項3に記載の帳票認識装置において、
    項目名となりうる単語のリストである項目名辞書を更に有し、
    前記項目名スコア計算部は、帳票画像内の文字列と前記項目名辞書を照合し、前記項目名スコア(Sn)を計算する
    ことを特徴とする帳票認識装置。
  7. 請求項1に記載の帳票認識装置において、
    文字列の数字又は記号の表記ルールのリストである項目値表記辞書を更に有し、
    前記項目値表記スコア計算部は、帳票画像内の文字列と前記項目値表記辞書を照合し、前記項目値表記スコアを計算する
    ことを特徴とする帳票認識装置。
  8. 請求項2に記載の帳票認識装置において、
    属性に応じて記載されるキーワードである項目値キーワードのリストである項目値キーワード辞書を更に有し、
    前記項目値キーワード検出部は、帳票画像内の文字列と前記項目値キーワード辞書との照合を行い、前記項目値キーワードスコアを計算する
    ことを特徴とする帳票認識装置。
  9. 請求項2に記載の帳票認識装置において、
    前記項目値単語照合対象文字列選択部は、項目値グループの文字列は互いに近接した範囲に記載されているという条件に従い、抽出済みの文字列を利用して項目値単語照合処理の対象となる文字列を選択する
    ことを特徴とする帳票認識装置。
  10. 請求項1に記載の帳票認識装置において、
    事前に登録した項目値の単語リストである項目値単語辞書を更に有し、
    前記項目値単語スコア計算部は、選択された文字列と前記項目値単語辞書を照合し、前記項目値単語スコアを計算する
    ことを特徴とする帳票認識装置。
  11. 請求項3に記載の帳票認識装置において、
    前記項目名―項目値配置スコア計算部は、前記項目名―項目値配置スコア(Sa)を、該項目名―項目値配置スコアが取り得る値の最大値で初期化し、文字列ペアをなす2つの文字列の配置関係が項目名−項目値関係として非妥当であると判断できる配置パターンをペナルティルールとして定義し、初期値からペナルティルールによって得られたペナルティ値を減算した値として計算する
    ことを特徴とする帳票認識装置。
  12. 請求項3に記載の帳票認識装置において、
    前記項目値候補選択部は、項目値候補を、前記項目値表記スコアが閾値以上の項目値表記文字列、前記項目値単語スコアが閾値以上の項目値単語文字列、前記項目名―項目値ペアスコアが閾値以上の項目名―項目値ペアとし、項目値候補スコア(Sc)を、項目名―項目値ペアスコア、項目値単語スコア、項目値表記スコア、の順にいずれかを選択して求める
    ことを特徴とする帳票認識装置。
  13. 請求項1に記載の帳票認識装置において、
    事前に登録した項目値の単語リストである項目値単語辞書は、項目名にあらかじめ優先度が設定され、第1優先度の項目名の項目値ごとに第2優先度の項目名の項目値のリストを設け、
    前記項目値単語スコア計算部は、優先度が設定された前記項目値単語辞書を参照して、優先度の順に項目値単語照合を行って各優先度の項目値の候補を絞る
    ことを特徴とする帳票認識装置。
  14. 請求項1に記載の帳票認識装置において、
    前記帳票画像から、前記帳票画像内の文字列や枠を抽出するレイアウト解析部と、
    前記項目値グループ評価部による前記項目値候補ペアスコア(Scp)の前記評価の結果に基づいて検出された項目値グループを構成する文字列の配置関係を評価し、さらに、前記配置関係に基づいて、前記文字列の項目値候補としての確からしさのスコアを修正するスコア修正部と
    を更に有し、
    前記項目値候補配置スコア計算部は、修正された前記スコアに基づいて、該文字列の配置関係が各前記項目値グループの項目値として妥当であるか否かを評価する
    ことを特徴とする帳票認識装置。
  15. 帳票に記載された文字列を制御部によって認識する帳票認識方法であって、
    前記制御部が、データの属性を表す文字列である項目名と、項目名に対するデータの文字列を含む帳票画像を記憶部に入力する処理と、
    前記制御部が、前記帳票画像から認識した文字列に対し、該文字列が項目値である確率を表す項目値表記スコアを計算する処理と、
    前記制御部が、前記帳票画像から認識した文字列に対し、該文字列が予め登録された詳細な項目値を示す項目値単語である確率を表す項目値単語スコアを計算する処理と、
    前記制御部が、前記項目値表記スコアと前記項目値単語スコアの両方を含むスコアを項目値スコア(Sv)とし、前記項目値スコアが予め定められた閾値より高い文字列を項目値候補として選択し、前記項目値スコア(Sv)を項目値候補スコア(Sc)とする処理と、
    前記制御部が、前記帳票画像内の前記項目値候補の文字列ペアに対し、前記帳票画像内において互いに関係する複数の属性の項目値の組合せを項目値グループとした場合に、該文字列ペアの配置関係が各前記項目値グループの項目値として妥当であるかを表す項目値候補配置スコア(Sca)を計算する処理と、
    前記制御部が、前記帳票画像内の項目値候補の文字列ペアに対し、前記項目値スコア(Sv)、前記項目値候補配置スコア(Sca)を基に、前記文字列ペアが前記項目値グループの項目値としての尤もらしさを表す評価値である項目値候補ペアスコア(Scp)を計算する処理と、
    前記制御部が、前記項目値候補ペアスコア(Scp)により、前記帳票画像内の文字列と前記項目値グループとの対応付けを評価することで項目値の文字列を認識する処理と、
    前記制御部が、前記帳票画像内の文字列の認識結果を出力する処理と
    実行することを特徴とする帳票認識方法。
JP2014176400A 2014-08-29 2014-08-29 帳票認識装置及び方法 Active JP6406932B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014176400A JP6406932B2 (ja) 2014-08-29 2014-08-29 帳票認識装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014176400A JP6406932B2 (ja) 2014-08-29 2014-08-29 帳票認識装置及び方法

Publications (2)

Publication Number Publication Date
JP2016051339A true JP2016051339A (ja) 2016-04-11
JP6406932B2 JP6406932B2 (ja) 2018-10-17

Family

ID=55658789

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014176400A Active JP6406932B2 (ja) 2014-08-29 2014-08-29 帳票認識装置及び方法

Country Status (1)

Country Link
JP (1) JP6406932B2 (ja)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018036998A (ja) * 2016-09-02 2018-03-08 株式会社アイリックコーポレーション 保険証券画像解析システム、記載内容解析装置、携帯端末および携帯端末用のプログラム
JP2018037017A (ja) * 2016-09-02 2018-03-08 株式会社日立製作所 分析装置、分析方法、および分析プログラム
JP2018128996A (ja) * 2017-02-10 2018-08-16 キヤノン株式会社 情報処理装置、制御方法、およびプログラム
WO2019026147A1 (ja) * 2017-07-31 2019-02-07 株式会社Pfu 情報処理装置、情報処理システム、制御方法及び制御プログラム
JP2019070955A (ja) * 2017-10-10 2019-05-09 株式会社フロンティア・フィールド 読取システム及び読取プログラム
US11151373B2 (en) 2018-07-20 2021-10-19 Ricoh Company, Ltd. Information processing apparatus and information processing method
US11416674B2 (en) 2018-07-20 2022-08-16 Ricoh Company, Ltd. Information processing apparatus, method of processing information and storage medium
US11574490B2 (en) 2019-08-21 2023-02-07 Fujifilm Business Innovation Corp. Information processing apparatus and non-transitory computer readable medium storing information processing program
US11588945B2 (en) 2020-06-29 2023-02-21 Canon Kabushiki Kaisha Data input support apparatus that displays a window with an item value display area, an overview image display area, and an enlarged image display area
WO2023062798A1 (ja) * 2021-10-14 2023-04-20 株式会社Pfu 情報処理システム、項目値抽出方法、モデル生成方法及びプログラム
US11804055B2 (en) 2020-06-12 2023-10-31 Ricoh Company, Ltd. Information processing apparatus, information processing method, and information processing system
US11875587B2 (en) 2020-03-06 2024-01-16 Ricoh Company, Ltd. Information processing system, information processing method, and non-transitory recording medium
US11887390B2 (en) 2020-07-14 2024-01-30 Ricoh Company, Ltd. Information processing apparatus, information processing system, information processing method, and non-transitory recording medium
US11941672B2 (en) 2019-11-29 2024-03-26 Ricoh Company, Ltd. Information processing system, information processing method, and non-transitory recording medium
JP7463675B2 (ja) 2019-09-03 2024-04-09 富士フイルムビジネスイノベーション株式会社 情報処理装置、及び情報処理プログラム
US11960949B2 (en) 2020-12-09 2024-04-16 Ricoh Company, Ltd. Information processing apparatus, information processing system, and information processing method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009169844A (ja) * 2008-01-18 2009-07-30 Hitachi Software Eng Co Ltd 表認識方法及び表認識装置
JP2010140204A (ja) * 2008-12-10 2010-06-24 Sharp Corp 文字認識装置、文字認識方法、文字認識プログラムおよび記録媒体
WO2011104754A1 (ja) * 2010-02-24 2011-09-01 三菱電機株式会社 検索装置及び検索プログラム
JP2011248609A (ja) * 2010-05-26 2011-12-08 Hitachi Omron Terminal Solutions Corp 帳票認識装置および帳票認識方法
JP2015102938A (ja) * 2013-11-22 2015-06-04 日立オムロンターミナルソリューションズ株式会社 帳票認識装置、帳票認識方法、及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009169844A (ja) * 2008-01-18 2009-07-30 Hitachi Software Eng Co Ltd 表認識方法及び表認識装置
JP2010140204A (ja) * 2008-12-10 2010-06-24 Sharp Corp 文字認識装置、文字認識方法、文字認識プログラムおよび記録媒体
WO2011104754A1 (ja) * 2010-02-24 2011-09-01 三菱電機株式会社 検索装置及び検索プログラム
JP2011248609A (ja) * 2010-05-26 2011-12-08 Hitachi Omron Terminal Solutions Corp 帳票認識装置および帳票認識方法
JP2015102938A (ja) * 2013-11-22 2015-06-04 日立オムロンターミナルソリューションズ株式会社 帳票認識装置、帳票認識方法、及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
関 峰伸 他: "多重仮説文書構造ネットワークを用いたデータ抽出方式の開発", FIT2013 第12回情報科学技術フォーラム 講演論文集, vol. 第2分冊, JPN6018005049, 20 August 2013 (2013-08-20), JP, pages 3 - 10, ISSN: 0003739898 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018037017A (ja) * 2016-09-02 2018-03-08 株式会社日立製作所 分析装置、分析方法、および分析プログラム
JP2018036998A (ja) * 2016-09-02 2018-03-08 株式会社アイリックコーポレーション 保険証券画像解析システム、記載内容解析装置、携帯端末および携帯端末用のプログラム
JP2018128996A (ja) * 2017-02-10 2018-08-16 キヤノン株式会社 情報処理装置、制御方法、およびプログラム
WO2019026147A1 (ja) * 2017-07-31 2019-02-07 株式会社Pfu 情報処理装置、情報処理システム、制御方法及び制御プログラム
JP2019070955A (ja) * 2017-10-10 2019-05-09 株式会社フロンティア・フィールド 読取システム及び読取プログラム
US11151373B2 (en) 2018-07-20 2021-10-19 Ricoh Company, Ltd. Information processing apparatus and information processing method
US11416674B2 (en) 2018-07-20 2022-08-16 Ricoh Company, Ltd. Information processing apparatus, method of processing information and storage medium
US11574490B2 (en) 2019-08-21 2023-02-07 Fujifilm Business Innovation Corp. Information processing apparatus and non-transitory computer readable medium storing information processing program
JP7463675B2 (ja) 2019-09-03 2024-04-09 富士フイルムビジネスイノベーション株式会社 情報処理装置、及び情報処理プログラム
US11941672B2 (en) 2019-11-29 2024-03-26 Ricoh Company, Ltd. Information processing system, information processing method, and non-transitory recording medium
US11875587B2 (en) 2020-03-06 2024-01-16 Ricoh Company, Ltd. Information processing system, information processing method, and non-transitory recording medium
US11804055B2 (en) 2020-06-12 2023-10-31 Ricoh Company, Ltd. Information processing apparatus, information processing method, and information processing system
US11588945B2 (en) 2020-06-29 2023-02-21 Canon Kabushiki Kaisha Data input support apparatus that displays a window with an item value display area, an overview image display area, and an enlarged image display area
US11887390B2 (en) 2020-07-14 2024-01-30 Ricoh Company, Ltd. Information processing apparatus, information processing system, information processing method, and non-transitory recording medium
US11960949B2 (en) 2020-12-09 2024-04-16 Ricoh Company, Ltd. Information processing apparatus, information processing system, and information processing method
WO2023062798A1 (ja) * 2021-10-14 2023-04-20 株式会社Pfu 情報処理システム、項目値抽出方法、モデル生成方法及びプログラム

Also Published As

Publication number Publication date
JP6406932B2 (ja) 2018-10-17

Similar Documents

Publication Publication Date Title
JP6406932B2 (ja) 帳票認識装置及び方法
JP6938228B2 (ja) 計算機、文書識別方法、及びシステム
US8891871B2 (en) Form recognition apparatus, method, database generation apparatus, method, and storage medium
JP5621169B2 (ja) 帳票認識装置および帳票認識方法
US10885325B2 (en) Information processing apparatus, control method, and storage medium
JP2004139484A (ja) 帳票処理装置、該装置実行のためのプログラム、及び、帳票書式作成プログラム
US20090226090A1 (en) Information processing system, information processing apparatus, information processing method, and storage medium
JP6174466B2 (ja) 帳票認識装置、帳票認識方法、及びプログラム
US11475688B2 (en) Information processing apparatus and information processing method for extracting information from document image
JP2014182477A (ja) プログラム及び帳票処理装置
JP4549400B2 (ja) 文書認識プログラム、文書認識装置、および文書認識方法
CN109389050A (zh) 一种流程图连接关系识别方法
JP2015069256A (ja) 文字識別システム
JP5942361B2 (ja) 画像処理装置及び画像処理プログラム
JP2009093305A (ja) 帳票認識装置
JP2021196686A (ja) 情報処理装置、及び情報処理方法
JP4466241B2 (ja) 文書処理手法及び文書処理装置
JP5134383B2 (ja) Ocr装置、証跡管理装置及び証跡管理システム
JP3898645B2 (ja) 帳票書式編集装置および帳票書式編集プログラム
JP5712415B2 (ja) 帳票処理システム及び帳票処理方法
JP2009087378A (ja) 帳票処理装置
US11704921B2 (en) Image processing apparatus, image processing method, and storage medium
JP4521377B2 (ja) 帳票処理装置、該装置実行のためのプログラム、及び、帳票書式作成プログラム
WO2023042270A1 (ja) 文字認識プログラム、文字認識システム、及び文字認識方法
JP2021071911A (ja) 帳票認識装置、帳票認識システム及び帳票認識方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20180220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180416

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180904

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180918

R150 Certificate of patent or registration of utility model

Ref document number: 6406932

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350