(57)【特許請求の範囲】
【請求項１】
コンピュータが、
認識対象の帳票の画像に含まれる複数の線分から選択した線分の組み合わせで構成される複数の第１の線分ペアを抽出し、
抽出した前記複数の第１の線分ペアのそれぞれを構成する線分同士の関係を表す第１の特徴量を算出し、
算出した前記第１の線分ペアの前記第１の特徴量と、予め登録された帳票識別子と対応付けられた複数の第２の線分ペアを構成する線分同士の第２の特徴量とに基づいて、前記認識対象の帳票の帳票識別子の候補を抽出し、
前記第１の線分ペアにおける各線分と、前記帳票識別子の候補と対応付けられた前記第２の線分ペアにおける各線分との対応関係に基づいて、前記帳票識別子の候補と対応付けられた線分と、前記認識対象の帳票の線分との対応線分ペアを抽出し、
前記対応線分ペアにおける前記認識対象の帳票から抽出した線分と、前記帳票識別子の候補と対応付けられた線分との重なり度合に基づいて、前記認識対象の帳票の帳票識別子を特定する、
処理を実行することを特徴とする帳票認識方法。
【請求項２】
前記第１の特徴量を算出する処理において、前記コンピュータは、前記線分ペアにおける各線分の長さと、前記線分同士の位置関係とに基づいて表される値を前記第１の特徴量として算出する、
ことを特徴とする請求項１に記載の帳票認識方法。
【請求項３】
前記帳票識別子には、前記第２の線分ペアにおける各線分の角度及び色のいずれかの情報が対応付けられており、
認識対象の帳票の画像から前記複数の第１の線分ペアを抽出する処理において、前記コンピュータは、抽出した前記線分の角度及び色を算出し、
前記帳票識別子の候補を抽出する処理において、前記コンピュータは、前記第１の特徴量と前記第２の特徴量とに基づいて抽出される前記帳票識別子の候補のうち、前記第１の線分ペアにおける線分と前記第２の線分ペアにおける線分との角度の差及び色の差が所定の閾値範囲内となる前記帳票識別子の候補のみを抽出する、
ことを特徴とする請求項１に記載の帳票認識方法。
【請求項４】
前記帳票識別子には、当該帳票識別子が付与された帳票における線分の数が対応付けられており、
前記認識対象の帳票の画像から前記複数の第１の線分ペアを抽出する処理において、前記コンピュータは、前記認識対象の帳票の画像に含まれる前記線分の数を算出し、
前記帳票識別子の候補を抽出する処理において、前記コンピュータは、前記第１の特徴量と前記第２の特徴量とに基づいて抽出される前記帳票識別子の候補のうち、前記認識対象の帳票の画像に含まれる前記線分の数と前記帳票識別子に対応付けられた前記線分の数との差が所定の閾値範囲内となる前記帳票識別子の候補のみを抽出する、
ことを特徴とする請求項１に記載の帳票認識方法。
【請求項５】
前記対応線分ペアを抽出する処理において、前記コンピュータは、
前記帳票識別子の候補と対応付けられた前記第２の線分ペアの線分毎に、前記第１の線分ペアの線分のうち、前記第２の線分ペアの線分と線分ペアとして対応付けられた線分及び対応付けられた回数を算出し、
前記第２の線分の線分ペアと前記第１の線分ペアの線分との線分ペアのうち、前記対応付けられた回数が多い線分同士の線分ペアから順に所定数の線分ペアを前記対応線分ペアとして抽出する、
ことを特徴とする請求項１に記載の帳票認識方法。
【請求項６】
前記対応線分ペアを抽出する処理において、前記コンピュータは、
前記帳票識別子の候補と対応付けられた前記第２の線分ペアの線分毎に、前記第１の線分ペアの線分のうち、前記第２の線分ペアの線分と線分ペアとして対応付けられた線分及び対応付けられた回数を算出し、
前記第２の線分の線分ペアと前記第１の線分ペアの線分との線分ペアのうち、前記対応付けられた回数が所定の回数よりも多い線分同士の線分ペアを前記対応線分ペアとして抽出する、
ことを特徴とする請求項１に記載の帳票認識方法。
【請求項７】
認識対象の帳票の画像に含まれる複数の線分から抽出した複数の第１の線分ペアのそれぞれを構成する線分同士の関係を表す第１の特徴量を算出し、前記第１の線分ペアの前記第１の特徴量と、予め登録された帳票識別子と対応付けられた複数の第２の線分ペアを構成する線分同士の第２の特徴量とに基づいて、前記認識対象の帳票の帳票識別子の候補を抽出する帳票識別子抽出部と、
前記第１の線分ペアにおける各線分と、前記帳票識別子の候補と対応付けられた前記第２の線分ペアにおける各線分との対応関係に基づいて、前記帳票識別子の候補と対応付けられた線分と、前記認識対象の帳票の線分との対応線分ペアを抽出する対応線分ペア抽出部と、
前記対応線分ペアにおける前記認識対象の帳票から抽出した線分と、前記帳票識別子の候補と対応付けられた線分との重なり度合いに基づいて、前記認識対象の帳票の帳票識別子を特定する特定部と、
を備えることを特徴とする帳票認識装置。
【請求項８】
認識対象の帳票の画像に含まれる複数の線分から選択した線分の組み合わせで構成される複数の第１の線分ペアを抽出し、
抽出した前記複数の第１の線分ペアのそれぞれを構成する線分同士の関係を表す第１の特徴量を算出し、
前記第１の線分ペアの前記第１の特徴量と、予め登録された帳票識別子と対応付けられた複数の第２の線分ペアを構成する線分同士の第２の特徴量とに基づいて、前記認識対象の帳票の帳票識別子の候補を抽出し、
前記第１の線分ペアにおける各線分と、前記帳票識別子の候補と対応付けられた前記第２の線分ペアにおける各線分との対応関係に基づいて、前記帳票識別子の候補と対応付けられた線分と、前記認識対象の帳票の線分との対応線分ペアを抽出し、
前記対応線分ペアにおける前記認識対象の帳票から抽出した線分と、前記帳票識別子の候補と対応付けられた線分との重なり度合いに基づいて、前記認識対象の帳票の帳票識別子を特定する、
処理をコンピュータに実行させる帳票認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票認識方法、帳票認識装置、帳票認識プログラム、及び帳票認識用辞書データに関する。
【背景技術】
【０００２】
イメージスキャナ等で作成した帳票の画像から帳票ＩＤ（帳票種）を認識する方法では、近年、認識可能な帳票種が増加するとともに、罫線のレイアウトが類似した帳票種が増加している。そのため、帳票の画像から帳票ＩＤ（帳票種）を認識する方法の１つとして、例えば、大まかな線分の対応付けにより多数の帳票ＩＤのなかから帳票の画像との類似度が高い帳票ＩＤ（帳票ＩＤの候補）を抽出する方法が知られている（例えば、特許文献１を参照）。この種の認識方法では、多数の帳票ＩＤのなかから抽出した帳票ＩＤの候補と認識対象の帳票とによる詳細な識別処理を行う。このため、全ての帳票ＩＤとの詳細な識別処理を行う場合に比べて、処理負荷を軽減するとともに、処理時間を短縮することが可能となる。
【０００３】
帳票ＩＤの候補を抽出する際には、帳票ＩＤが付与された帳票における線分ペアの特徴量と、認識対象の帳票における線分ペアの特徴量とに基づいて、帳票ＩＤと認識対象の帳票との対応付けを行う。線分ペアの特徴量には、例えば、線分ペアの各線分の長さと位置関係とに基づいて算出される線分同士の関係を表す値が用いられる。すなわち、この種の帳票認識方法では、線分ペアにおける線分同士の関係が類似している場合に、帳票ＩＤと認識対象の帳票との対応付けを行う。そして、線分ペア毎の対応付けにより認識対象の帳票と対応付けられた回数の多い帳票ＩＤが認識対象の帳票の帳票ＩＤの候補として抽出される。
【０００４】
また、帳票の認識方法における関連技術の１つとして、認識対象の帳票の画像における線分に歪が生じている場合に、その歪を修正して認識を行う技術が知られている（例えば、特許文献２を参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平０７−２８２１９３号公報
【特許文献２】特開２０１５−１６９９７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
多数の帳票ＩＤのなかから抽出した帳票ＩＤの候補と、認識対象の帳票の画像とよる詳細な識別処理を行う帳票認識方法は、上記のように、全ての帳票ＩＤで詳細な識別処理を行う場合に比べて、処理時間を短縮することが可能である。
【０００７】
しかしながら、１個の帳票ＩＤが付与された帳票における線分の数が多いと、帳票ＩＤの候補と認識対象の帳票の画像とよる詳細な識別処理を行う際に対応付ける、帳票ＩＤの候補における線分と認識対象の帳票における線分との線分ペアの数が非常に多くなる。しかも、詳細な識別処理を行う際に対応付ける線分ペアのなかには、実際には対応しない線分同士の線分ペアが含まれる。そのため、１個の帳票ＩＤの候補と認識対象の帳票の画像とよる詳細な識別処理に要する処理時間が長くなり、処理効率が低下する。
【０００８】
１つの側面において、本発明は、帳票の認識に要する処理時間を短縮することを目的とする。
【課題を解決するための手段】
【０００９】
１つの態様の帳票認識方法では、コンピュータが下記の処理を実行する。コンピュータは、まず、認識対象の帳票の画像に含まれる複数の線分から選択した線分の組み合わせで構成される複数の第１の線分ペアを抽出し、当該第１の線分ペアのそれぞれを構成する線分同士の関係を表す第１の特徴量を算出する。次に、コンピュータは、第１の特徴量と、予め登録された帳票識別子と対応付けられた複数の第２の線分ペアを構成する線分同士の第２の特徴量とに基づいて、帳票識別子の候補を抽出する。次に、コンピュータは、第１の線分ペアの各線分と、帳票識別子の候補と対応付けられた第２の線分ペアの各線分との対応関係に基づいて、帳票識別子の候補と対応付けられた線分と、認識対象の帳票の線分との対応線分ペアを抽出する。その後、コンピュータは、対応線分ペアにおける認識対象の帳票から抽出した線分と、帳票識別子の候補と対応付けられた線分との重なり度合い基づいて、認識対象の帳票の帳票識別子を特定する。
【発明の効果】
【００１０】
上述の態様によれば、帳票の認識に要する処理時間を短縮することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施形態に係る帳票認識装置の機能的構成を示す図である。
【図２】詳細識別辞書の例を示す図である。
【図３】線分のレイアウト情報を説明する図である。
【図４】大分類辞書テーブルの例を示す図である。
【図５】線分ペアに対する大分類辞書テーブルの座標の算出方法を説明する図である。
【図６】第１の実施形態に係る帳票認識処理で用いる大分類辞書テーブルの登録情報の例を示す図である。
【図７】大分類辞書を作成する情報処理装置の機能的構成を示す図である。
【図８Ａ】第１の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その１）である。
【図８Ｂ】第１の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その２）である。
【図９】第１の実施形態に係る帳票認識処理を説明するフローチャートである。
【図１０Ａ】第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その１）である。
【図１０Ｂ】第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その２）である。
【図１０Ｃ】第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その３）である。
【図１０Ｄ】第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その４）である。
【図１０Ｅ】第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その５）である。
【図１０Ｆ】第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その６）である。
【図１１】認識対象の帳票と大分類辞書に登録された帳票との例を示す図である。
【図１２】帳票内線分ペア同士の対応付けの結果を示す図である。
【図１３】認識対象の帳票と第１の帳票ＩＤを付与した帳票との対応付けから抽出される対応線分ペアを説明する図である。
【図１４】認識対象の帳票と第２の帳票ＩＤを付与した帳票との対応付けから抽出される対応線分ペアを説明する図である。
【図１５Ａ】第１の実施形態に係る詳細識別処理の内容を説明するフローチャート（その１）である。
【図１５Ｂ】第１の実施形態に係る詳細識別処理の内容を説明するフローチャート（その２）である。
【図１６】詳細識別処理における第１の帳票ＩＤを付与した帳票と入力画像の帳票との対応付けを説明する図である。
【図１７】対応線分ペアに基づいて行った第１の帳票ＩＤを付与した帳票の線分と入力画像の線分との対応付けの結果を示す図である。
【図１８】詳細識別処理における第２の帳票ＩＤを付与した帳票と入力画像の帳票との対応付けを説明する図である。
【図１９】対応線分ペアに基づいて行った第２の帳票ＩＤを付与した帳票の線分と入力画像の線分との対応付けの結果を示す図である。
【図２０】対応線分ペアとは別の線分ペアに基づいて行った第１の帳票ＩＤを付与した帳票の線分と入力画像の線分との対応付けの結果を示す図である。
【図２１】第１の実施形態に係る帳票認識装置の機能的構成の変形例を示す図である。
【図２２】帳票認識システムの構成例を示す図である。
【図２３】第２の実施形態に係る帳票認識処理で用いる大分類辞書テーブルの登録情報の例を示す図である。
【図２４Ａ】第２の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その１）である。
【図２４Ｂ】第２の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その２）である。
【図２５Ａ】第２の実施形態に係る候補抽出処理の一部を説明するフローチャート（その１）である。
【図２５Ｂ】第２の実施形態に係る候補抽出処理の一部を説明するフローチャート（その２）である。
【図２５Ｃ】第２の実施形態に係る候補抽出処理の一部を説明するフローチャート（その３）である。
【図２６】第３の実施形態に係る帳票認識処理で用いる大分類辞書テーブルの登録情報の例を示す図である。
【図２７Ａ】第３の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その１）である。
【図２７Ｂ】第３の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その２）である。
【図２８Ａ】第３の実施形態に係る候補抽出処理の一部を説明するフローチャート（その１）である。
【図２８Ｂ】第３の実施形態に係る候補抽出処理の一部を説明するフローチャート（その２）である。
【図２８Ｃ】第３の実施形態に係る候補抽出処理の一部を説明するフローチャート（その３）である。
【図２９】コンピュータのハードウェア構成を示す図である。
【発明を実施するための形態】
【００１２】
［第１の実施形態］
図１は、第１の実施形態に係る帳票認識装置の機能的構成を示す図である。
【００１３】
図１に示すように、本実施形態の帳票認識装置１は、帳票画像受付部１０１と、候補抽出部１０２と、帳票ＩＤ特定部１０３と、認識結果出力部１０４と、を備える。また、帳票認識装置１は、大分類辞書記憶部１１０と、詳細識別辞書記憶部１２０と、を備える。
【００１４】
帳票画像受付部１０１は、認識対象である帳票の画像データの入力を受け付ける。帳票の画像データは、イメージスキャナ２等を用いて作成される。以下の説明では、帳票の画像データのことを「帳票画像」ともいう。
【００１５】
候補抽出部１０２は、入力された帳票画像と、大分類辞書記憶部１１０に記憶させた大分類辞書とに基づいて、認識対象である帳票の帳票種（帳票識別子）の候補を抽出する。また、候補抽出部１０２は、入力された帳票画像における線分（罫線）と、候補として抽出した帳票識別子が付与された帳票における線分との対応関係に基づいて、対応線分ペアを抽出する。大分類辞書には、帳票種毎に、帳票識別子と、線分のレイアウト情報に基づいて作成した線分ペア情報とを対応付けて登録してある。また、対応線分ペアは、帳票識別子が付与された帳票における線分と、その線分と対応付けられた回数が最も多い帳票画像における線分とのペアである。以下の説明では、入力された帳票画像のことを「入力画像」ともいう。また、以下の説明では、帳票識別子のことを帳票ＩＤといい、帳票ＩＤが付与された帳票における線分のことを「帳票ＩＤの線分」ともいう。
【００１６】
候補抽出部１０２は、帳票ＩＤ抽出部１０２Ａと、対応線分ペア抽出部１０２Ｂと、を含む。
【００１７】
帳票ＩＤ抽出部１０２Ａは、入力画像に基づいて、認識対象である帳票における線分（罫線）のレイアウト情報を作成する。また、帳票ＩＤ抽出部１０２Ａは、作成したレイアウト情報に基づいて選択した線分の組み合わせで構成される線分ペア（帳票内線分ペア）と、大分類辞書に登録された線分ペア（帳票内線分ペア）との対応付けを行う。更に、帳票ＩＤ抽出部１０２は、帳票内線分ペア同士の対応付けの結果に基づいて、認識対象である帳票の帳票ＩＤの候補を抽出する。
【００１８】
対応線分ペア抽出部１０２Ｂは、帳票ＩＤ抽出部１０２Ａで抽出した帳票ＩＤの線分についてのレイアウト情報と、入力画像における線分のレイアウト情報とに基づいて、対応線分ペアを抽出する。対応線分ペアは、帳票ＩＤの線分と、入力画像の線分とのペア（帳票間線分ペア）である。対応線分ペアにおいて帳票ＩＤの線分とペアとなる入力画像の線分は、入力画像の全ての線分のうち、帳票ＩＤ抽出部１０２Ａにおいて帳票内線分ペア同士の対応付けを行った際に、帳票ＩＤの線分と対応付けられた回数が最も多い線分である。なお、対応線分ペア抽出部１０２Ｂが抽出する対応線分ペアの数は、帳票ＩＤの線分と入力画像の線分とにより生成し得る帳票間線分ペアの総数よりも少ない数とする。特に、抽出する対応線分ペアの数は、帳票ＩＤの線分の総数よりも少ない数とすることが好ましい。
【００１９】
帳票ＩＤ特定部１０３は、候補抽出部１０２が抽出した帳票ＩＤの候補及び対応線分ペアと、詳細識別辞書記憶部１２０に記憶させた詳細識別辞書とに基づいて、詳細な識別処理を行い、認識対象である帳票の帳票ＩＤを特定する。詳細識別辞書には、帳票種毎に、帳票ＩＤと、線分のレイアウト情報とを対応付けて登録してある。なお、１つの帳票種に対し大分類辞書で付与している帳票ＩＤと、詳細識別辞書で付与している帳票ＩＤとは、同じ値（識別子）である。
【００２０】
帳票ＩＤ特定部１０３は、対応線分ペアにおける認識対象である帳票の線分と帳票ＩＤの線分との重なり度合いに基づいて、認識対象の帳票の帳票ＩＤを特定する。帳票ＩＤ特定部１０３は、対応線分ペアの線分同士を一致させたときの、帳票ＩＤの線分のレイアウトと、入力画像の線分のレイアウトとを比較して、対応付けられた線分（一致した線分）の数を計数し、これを重なり度合いとする。また、帳票ＩＤ特定部１０３は、帳票ＩＤの候補毎に、対応線分ペアにおける線分同士を一致させたときに対応付けられた線分の数の最大値を求める。その後、帳票ＩＤ特定部１０３は、帳票ＩＤの候補のうちの、対応付けられた線分数の最大値が最も大きい候補を、入力画像（認識対象の帳票）の帳票種を表す帳票ＩＤに特定する。
【００２１】
認識結果出力部１０４は、入力画像と、帳票ＩＤ特定部１０３が特定した帳票ＩＤとを含む認識結果を、表示装置３等に出力する。
【００２２】
図２は、詳細識別辞書の例を示す図である。図３は、線分のレイアウト情報を説明する図である。
【００２３】
図２に示すように、詳細識別辞書１２１は、帳票ＩＤと、線分情報とを含む。帳票ＩＤは、帳票種を識別する値であり、帳票種毎に異なる値を付与している。図２では、帳票ＩＤとして、１から始まる正の整数を用いている。線分情報は、帳票に印刷された線分（罫線）のレイアウトを表す情報であり、線分を識別する線分ＩＤと、当該線分ＩＤの配下に登録された線分の方向、位置、及び長さを含む。図２では、線分ＩＤとして、１から始まる正の整数を用いている。線分の方向は、横線及び縦線のいずれで表す値である。線分の位置は、横線における左端の位置、或いは縦線における上端の位置を表す座標である。
【００２４】
例えば、図３に示した帳票４における罫線は、横線（ｘ方向にのびる直線）と、縦線（ｙ方向にのびる直線）との接点Ｐ１〜Ｐ８により１０本の線分ＬＳ１〜ＬＳ１０に分割される。１０本の線分ＬＳ１〜ＬＳ１０のうちの接点Ｐ１と接点Ｐ２とを結ぶ線分ＬＳ１の位置は、例えば、帳票４の左上角部を基準（原点（０，０））としたときの接点Ｐ１の位置で表す。また、線分ＬＳ１の長さは、例えば、接点Ｐ１から接点Ｐ２までの距離で表す。このため、詳細識別辞書１２１において帳票４の帳票ＩＤと対応付けられる線分情報では、線分ＬＳ１に付与した線分ＩＤの配下に、線分ＬＳ１が横線であることを表す値と、接点Ｐ１の位置と、長さ（接点Ｐ１から接点Ｐ２までの距離）とが登録される。また、帳票４の帳票ＩＤと対応付けられる線分情報では、他の線分ＬＳ２〜ＬＳ１０のそれぞれに付与された各線分ＩＤの配下に、横線又は縦線であることを表す値と、各線分における一方の接点の位置と、長さ（接点間の距離）と、が登録される。
【００２５】
図４は、大分類辞書テーブルの例を示す図である。図５は、線分ペアに対する大分類辞書テーブルの座標の算出方法を説明する図である。
【００２６】
大分類辞書は、例えば、図４に示すように、複数のセルが二次元配置されたテーブル（大分類辞書テーブル１１１）で与えられる。大分類辞書テーブル１１１の各セルには、帳票ＩＤが登録される。例えば、図４において、四隅のセル（Ｕ１，Ｖ１），（Ｕ１，Ｖｑ），（Ｕｐ，Ｖ１），（Ｕｐ，Ｖｑ）に記載した「１」は、これらのセルに１番の帳票ＩＤが登録されていることを意味する。
【００２７】
大分類辞書テーブル１１１における各セルは、１つの帳票内における２本の線分の関係を表す座標（ｕ，ｖ）と対応付けられている。２本の線分の関係を表す座標（ｕ，ｖ）は、２本の線分の長さと、位置関係とに基づいて算出される。大分類辞書テーブル１１１における各セルと座標（ｕ，ｖ）との対応付けは、既知の帳票認識処理で用いる大分類辞書テーブルにおける対応付けと同様の方法で行えばよい。
【００２８】
例えば、図５に示した帳票４における第１の線分ＬＳ１と第２の線分ＬＳ２とは、いずれも横線である。この２本の横線の関係を表す座標（ｕ，ｖ）は、第１の線分ＬＳ１の長さＬ１と、第２の線分ＬＳ２の長さＬ２と、２本の線分ＬＳ１及びＬＳ２の間隔ｄとに基づいて、例えば、下記式（１−１）及び式（１−２）により算出する。
ｕ＝５００×ｌｏｇ１０（Ｌ２／Ｌ１）  ・・・（１−１）
ｖ＝５００×ｌｏｇ１０（ｄ／Ｌ１）  ・・・（１−２）
【００２９】
図４に示した大分類辞書テーブル１１１では、例えば、−５００≦ｕ≦５００の範囲を１９等分し、それぞれの範囲を横方向に並んだ１９個のセルに割り当てている。同様に、図４に示した大分類辞書テーブル１１１では、例えば、−５００≦ｖ≦５００の範囲を１９等分し、それぞれの範囲を縦方向に並んだ１９個のセルに割り当てている。そのため、１つの帳票内における２本の線分のペア（帳票内線分ペア）は、座標（ｕ，ｖ）により１９×１９のセルのいずれかと対応付けられる。なお、式（１−１）により算出したｕの値が−５００よりも小さい場合はｕ＝−５００とし、ｕの値が５００よりも大きい場合はｕ＝５００とする。同様に、式（１−２）により算出したｖの値が−５００よりも小さい場合はｖ＝−５００とし、ｖの値が５００よりも大きい場合はｖ＝５００とする。
【００３０】
大分類辞書テーブル１１１のセルのうち、帳票内線分ペアの線分同士の関係を表す座標（ｕ，ｖ）と対応付けられたセルには、当該線分ペアの線分を含む帳票の帳票ＩＤが格納される。また、本実施形態で用いる大分類辞書テーブル１１１では、線分ペアの線分同士の関係を表す座標（ｕ，ｖ）と対応付けられたセルに格納された帳票ＩＤの配下に、その線分ペアを表す情報が登録される。すなわち、大分類辞書テーブル１１１における、図５に示した２本の線分ＬＳ１，ＬＳ２から算出した座標（ｕ，ｖ）と対応付けられたセルには、帳票の帳票ＩＤと、２本の線分ＬＳ１，ＬＳ２の線分ペアを表す情報とが対応付けられる。線分ペアを表す情報には、例えば、２本の線分ＬＳ１，ＬＳ２の線分ＩＤを用いる。この場合、大分類辞書テーブル１１１には、例えば、図６に示したような情報が登録される。図６は、第１の実施形態に係る帳票認識処理で用いる大分類辞書テーブルの登録情報の例を示す図である。
【００３１】
図６の大分類辞書テーブル１１１では、セルの座標と、登録情報とが対応付けられている。セルの座標と対応付けられる登録情報は、帳票ＩＤと、帳票ＩＤの配下に登録された線分ペアの情報と、を含む。帳票ＩＤの配下に登録された線分ペアの情報は、当該線分ペアの各線分の線分ＩＤを含む。また、１つのセルには、１つの帳票ＩＤにおける複数の線分ペアの情報を登録可能であるとともに、複数の帳票ＩＤの線分ペアを登録可能である。例えば、座標（Ｕ１，Ｖｑ）のセルには、帳票ＩＤが１である帳票における２組の線分ペアについての情報が帳票ＩＤの配下に登録されている。また、例えば、座標（Ｕｎ，Ｖｍ）のセルには、帳票ＩＤが１である帳票における線分ペアについての情報が帳票ＩＤの配下に登録されており、更に帳票ＩＤが２である帳票における線分ペアについての情報が帳票ＩＤの配下に登録されている。
【００３２】
このように、本実施形態に係る大分類辞書テーブル１１１の各セルには、帳票ＩＤだけでなく、その帳票ＩＤの線分ペアの情報が登録される。
【００３３】
なお、図４の大分類辞書テーブル１１１は、一例に過ぎず、セルの数や、座標（ｕ，ｖ）の範囲等は適宜変更可能である。また、座標（ｕ，ｖ）の算出方法は、式（１−１）及び式（１−２）に限らず、適宜変更可能である。
【００３４】
上記の大分類辞書テーブル１１１及び詳細識別辞書１２１は、例えば、帳票認識装置１とは別の情報処理装置で作成する。
【００３５】
図７は、大分類辞書を作成する情報処理装置の機能的構成を示す図である。
図７に示すように、大分類辞書を作成する情報処理装置５は、帳票画像受付部５０１と、帳票ＩＤ付与部５０２と、線分抽出部５０３と、登録部５０４と、記憶部５１０と、を備える。
【００３６】
帳票画像受付部５０１は、大分類辞書への登録対象である帳票の画像データ（帳票画像）の入力を受け付ける。帳票画像は、イメージスキャナ２０等を用いて作成される。
【００３７】
帳票ＩＤ付与部５０２は、登録対象の帳票に帳票ＩＤを付与する。帳票ＩＤは、大分類辞書に登録された複数の帳票を識別する値（識別子）である。帳票ＩＤには、例えば、１から始まる正の整数を用いる。
【００３８】
線分抽出部５０３は、入力された帳票画像に含まれる線分（罫線）を抽出し、抽出した線分に線分ＩＤを付与する。線分抽出部５０３は、例えば、既知の線分抽出方法のいずれかに従って、帳票画像から線分を抽出する。また、線分ＩＤは、帳票画像から抽出された複数の線分を識別する値（識別子）である。線分ＩＤには、例えば、１から始まる正の整数を用いる。
【００３９】
登録部５０４は、帳票画像から抽出した線分に基づいて生成される複数の線分ペアについて、線分ペア毎に大分類辞書テーブル１１１における座標（ｕ，ｖ）を算出し、算出した座標のセルに帳票ＩＤ及び線分ペアを登録する。大分類辞書テーブル１１１は、記憶部５１０に記憶させておく。登録部５０４は、記憶部５１０に記憶させた大分類辞書テーブル１１１のセルに、帳票ＩＤを登録するとともに、当該帳票ＩＤの配下に線分ペアの各線分の線分ＩＤを登録する。また、登録部５０４は、例えば、大分類辞書テーブル１１１に新規に登録した帳票の帳票画像や付与した帳票ＩＤ等を表示装置３０に出力する。なお、登録部５０４は、帳票ＩＤ及び線分ペアの情報を大分類辞書テーブル１１１に登録する処理に加え、帳票ＩＤ及び抽出した複数の線分を含む詳細識別辞書１２１を作成して記憶部５１０に記憶させるものであってもよい。
【００４０】
情報処理装置５で作成した大分類辞書テーブル１１１は、例えば、インターネット等の通信ネットワークを介して、或いは光ディスク等の可搬型記録媒体を介して、帳票認識装置１の大分類辞書記憶部１１０に記憶させる。また、情報処理装置５で詳細識別辞書１２１も作成した場合、作成した詳細識別辞書１２１は、例えば、インターネット等の通信ネットワークを介して、或いは光ディスク等の可搬型記録媒体を介して、帳票認識装置１の詳細識別辞書記憶部１２０に記憶させる。
【００４１】
図８Ａは、第１の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その１）である。図８Ｂは、第１の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その２）である。
【００４２】
大分類辞書テーブルを作成する情報処理装置５は、図８Ａに示すように、まず、帳票画像及び付与する帳票ＩＤを取得する（ステップＳ１０）。ステップＳ１０の処理は、帳票画像取得部５０１、及び帳票ＩＤ付与部５０２が行う。帳票画像取得部５０１は、例えば、イメージスキャナ２０が作成して出力した帳票画像の入力を受け付け、帳票ＩＤ付与部５０２に送信する。帳票ＩＤ付与部５０２は、例えば、記憶部５１０に記憶させた帳票ＩＤの付与情報を参照し、登録対象の帳票に付与する帳票ＩＤを決定してその帳票ＩＤを付与する。帳票ＩＤが１から始まる正の整数である場合、帳票ＩＤ付与部５０２は、付与済みの帳票ＩＤのうちの最大値に１を足した数を登録対象の帳票に付与する帳票ＩＤに決定する。
【００４３】
なお、ステップＳ１０で取得する帳票画像は、イメージスキャナ２を用いて作成した帳票の画像データでに限らず、例えば、情報処理装置５で動作するアプリケーション・ソフトウェアを用いて作成した原版の電子データ等でもよい。
【００４４】
次に、情報処理装置５は、帳票画像から罫線を表す線分を抽出する（ステップＳ１１）。ステップＳ１１の処理は、線分抽出部５０３が行う。線分抽出部５０３は、既知の罫線抽出方法のいずれかに従って、帳票画像に含まれる線分を抽出して位置及び長さを表す情報を算出する。抽出した線分には、線分毎に固有の線分ＩＤを付与する。線分ＩＤは、例えば、１から始まる正の整数とする。
【００４５】
次に、情報処理装置５は、抽出した線分をｙ座標の値の小さい順にソートする（ステップＳ１２）。ステップＳ１２以降の処理は、登録部５０４が行う。ステップＳ１２において、ｙ座標の値が同じ線分が複数存在する場合、登録部５０４は、それら線分を、例えば、線分ＩＤが小さい順、或いはｘ座標が小さい順にソートする。
【００４６】
次に、登録部５０４は、線分ペアにおける一方の線分のソート順位を表す変数ｉをｉ＝１に設定する（ステップＳ１３）。次に、情報処理装置５は、線分ペアにおける他方の線分のソート順位を表す変数ｊをｊ＝ｉ＋１に設定する（ステップＳ１４）。
【００４７】
次に、登録部５０４は、ソート順位がｉ番の線分とｊ番の線分との線分ペアに対する大分類辞書テーブルの座標（ｕ，ｖ）を算出する（ステップＳ１５）。ステップＳ１５において、登録部５０４は、例えば、式（１−１）及び式（１−２）等を用いて、ｉ番の線分とｊ番の線分との関係（特徴量）を表す座標（ｕ，ｖ）を算出する。
【００４８】
次に、登録部５０４は、大分類辞書テーブルにおける算出した座標のセルに帳票ＩＤを登録するとともに、その帳票ＩＤの配下に線分ペアの各線分の線分ＩＤを登録する（ステップＳ１６）。
【００４９】
次に、登録部５０４は、ソート順位がｊ＋１番の線分があるか否かを判定する（ステップＳ１７）。ｊ＋１番の線分がある場合（ステップＳ１７；ＹＥＳ）、登録部５０４は、変数ｊをｊ＋１に更新し（ステップＳ１８）、ステップＳ１５〜Ｓ１７の処理を繰り返す。
【００５０】
一方、ｊ＋１番の線分がない場合（ステップＳ１７；ＮＯ）、登録部５０４は、次に、ｉ＋２番の線分があるか否かを判定する（ステップＳ１９）。ｉ＋２番の線分がある場合（ステップＳ１９；ＹＥＳ）、登録部５０４は、変数ｉをｉ＋１に更新し（ステップＳ１１）、ステップＳ１４〜Ｓ１９の処理を繰り返す。そして、ｉ＋２番の線分がなくなると（ステップＳ１９；ＮＯ）、登録部５０４（情報処理装置５）は、大分類辞書を作成する処理を終了する。
【００５１】
大分類辞書テーブル１１１に登録する帳票が複数種類ある場合、情報処理装置５のオペレータは、帳票種毎に、図８Ａ及び図８Ｂに示す大分類辞書の作成処理を情報処理装置５に行わせる。
【００５２】
なお、図８Ａ及び図８Ｂに示した大分類辞書の作成処理は、詳細識別辞書１２１の作成処理とともに行われてもよい。すなわち、図８Ａに示した大分類辞書の作成処理におけるステップＳ１１の後、ステップＳ１１で抽出した各線分についての線分の方向、線分の位置、及び長さを表す情報を含むレイアウト情報を帳票ＩＤと対応付けて記憶部５０１の詳細識別辞書に登録してもよい。抽出した線分のレイアウト情報を詳細識別辞書に登録する処理は、ステップＳ１２以降の処理と並列に行ってもよいし、大分類辞書の作成処理が終了してから行ってもよい。また、大分類辞書の作成処理は、例えば、ステップＳ１０及びステップＳ１１の代わりに、既に詳細識別辞書に登録された帳票の線分のレイアウト情報を読み出して行ってもよい。
【００５３】
図９は、第１の実施形態に係る帳票認識処理を説明するフローチャートである。
図９に示すように、本実施形態の帳票認識装置１が行う帳票認識処理では、まず、認識対象である帳票の画像（帳票画像）の入力を受け付ける（ステップＳ１）。ステップＳ１は、帳票画像受付部１０１が行う。ステップＳ１の処理において、帳票画像受付部１０１は、例えば、イメージスキャナ２が作成して出力した帳票画像の入力を受け付ける。帳票画像受付部１０１は、入力された帳票画像（入力画像）を候補抽出部１０２に送信する。
【００５４】
なお、ステップＳ１において、帳票画像受付部１０１は、例えば、図示しない記憶部に記憶された帳票画像のなかからオペレータが指定した帳票画像を取得してもよい。
【００５５】
次に、候補抽出部１０２が、入力画像と、大分類辞書記憶部１１０に記憶させた大分類辞書テーブル１１１とに基づいて、認識対象である帳票の帳票ＩＤの候補を抽出する候補抽出処理（ステップＳ２）を行う。ステップＳ２において候補抽出部１０２が行う処理は、次の３つの処理を含む。１つ目の処理は、入力画像から線分（罫線）のレイアウト情報を抽出する処理である。２つ目の処理は、入力画像内の線分ペアと、大分類辞書テーブル１１１に登録された帳票ＩＤの線分ペアとに基づいて、認識対象である帳票の帳票ＩＤの候補を抽出する処理である。３つ目の処理は、帳票ＩＤの候補を抽出する処理の結果に基づいて、入力画像の線分と、候補として抽出した帳票ＩＤの線分とのペア（対応線分ペア）を抽出する処理である。帳票ＩＤの線分は、上記の通り、帳票ＩＤが付与された帳票の線分のことである。候補抽出処理を終えると、候補抽出部１０２は、入力画像の線分のレイアウト情報と、候補として抽出した帳票ＩＤと、抽出した対応線分ペアの情報とを帳票ＩＤ特定部１０３に送信する。
【００５６】
次に、帳票ＩＤ特定部１０３が、帳票ＩＤの候補のなかから、入力画像（認識対象の帳票）の帳票ＩＤを特定する詳細識別処理（ステップＳ３）を行う。ステップＳ３において、帳票ＩＤ特定部１０３は、対応線分ペアにおける認識対象の帳票の線分と、帳票ＩＤの候補と対応付けられた線分との重なり度合いに基づいて、認識対象の帳票の帳票ＩＤを特定する。より具体的には、帳票ＩＤ特定部１０３は、候補となった帳票ＩＤ毎に、入力画像の線分情報、詳細識別辞書１２１、及び対応線分ペアの情報に基づいて、入力画像の線分と帳票ＩＤの線分との対応付けを行う。その後、帳票ＩＤ特定部１０３は、帳票ＩＤの候補のうちの入力画像の線分と対応付けられた線分の数が最も多い帳票ＩＤを、認識対象である帳票の帳票ＩＤと特定し、特定した帳票ＩＤを認識結果出力部１０４に送信する。
【００５７】
次に、認識結果出力部１０４が、入力された帳票画像の認識結果として、詳細識別処理において特定された帳票ＩＤを、表示装置３等に出力する（ステップＳ４）。ステップＳ４において、認識結果出力部１０４は、例えば、認識結果（帳票ＩＤ）とともに入力された帳票画像を表示装置３等に出力し、帳票画像と帳票ＩＤとを表示装置３に表示させてもよい。また、ステップＳ４において、認識結果出力部１０４は、例えば、詳細識別処理の結果に基づいて、入力された帳票画像に対するOptical character recognition（ＯＣＲ）処理を行い、認識対象の帳票の帳票ＩＤとともに、ＯＣＲ処理の結果を出力してもよい。
【００５８】
図１０Ａは、第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その１）である。図１０Ｂは、第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その２）である。図１０Ｃは、第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その３）である。図１０Ｄは、第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その４）である。図１０Ｅは、第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その５）である。図１０Ｆは、第１の実施形態に係る候補抽出処理の内容を説明するフローチャート（その６）である。
【００５９】
本実施形態の帳票認識処理における候補抽出処理は、上記のように、帳票認識装置１の候補抽出部１０２が行う。候補抽出部１０２は、帳票画像受付部１０１から認識対象の帳票画像（入力画像）を受け取ると、ステップＳ２の候補抽出処理として、図１０Ａ〜図１０Ｆに示したような処理を行う。
【００６０】
候補抽出部１０２は、まず、図１０Ａに示すように、カウンタの値を初期化する（ステップＳ２０１）。ステップＳ２０１は、帳票ＩＤ抽出部１０２Ａが行う。ステップＳ２０１において、帳票ＩＤ抽出部１０２Ａは、例えば、下記のカウンタの値をそれぞれ０にする。
（１）大分類辞書に登録されている全帳票ＩＤのそれぞれについての、帳票ＩＤの線分と入力画像の線分との線分ペア（帳票間線分ペア）の対応付けの総数を計数するカウンタの値。
（２）帳票ＩＤの配下に登録された線分ペア（帳票内線分ペア）における線分のそれぞれについての、入力画像の線分と対応付けられた回数を計数するカウンタの値。
【００６１】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像から線分を抽出し（ステップＳ２０２）、抽出した線分をｙ座標の値が小さい順にソートする（ステップＳ２０３）。ステップＳ２０２の処理は、例えば、既知である罫線抽出処理のいずれかに従って行う。入力画像から抽出された線分には、線分ＩＤが付与されている。線分ＩＤは、１つの入力画像内における複数の線分を識別する値であり、例えば、１から始まる正の整数を用いる。また、ステップＳ２０３の処理においてｙ座標の値が同じ線分が複数存在する場合、それらの線分の並び順は、所定の規則（例えば、ｘ座標の値が小さい順にソートする等）に従って決定する。
【００６２】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像の線分ペアにおける一方の線分のソート順位を表す変数ｉをｉ＝１に設定する（ステップＳ２０４）。次に、帳票ＩＤ抽出部１０２Ａは、入力画像の線分ペアにおける他方の線分のソート順位を表す変数ｊをｊ＝ｉ＋１に設定する（ステップＳ２０５）。
【００６３】
次に、帳票ＩＤ抽出部１０２Ａは、図１０Ｂに示すように、ソート順位がｉ番の線分とｊ番の線分との線分ペアに対する大分類辞書テーブルの座標を算出する（ステップＳ２０６）。ステップＳ２０６において、帳票ＩＤ抽出部１０２Ａは、例えば、式（１−１）及び式（１−２）等により線分ペアについての座標（ｕ，ｖ）を算出する。
【００６４】
次に、帳票ＩＤ抽出部１０２Ａは、大分類辞書テーブルにおけるステップＳ２０６で算出した座標のセルを参照し、そのセルに帳票ＩＤが登録されているか否かを確認する（ステップＳ２０７）。帳票ＩＤが登録されていない場合（ステップＳ２０７；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、図１０Ｃに示すように、ｊ＋１番の線分があるか否かを判定する（ステップＳ２１３）。
【００６５】
一方、参照したセルに帳票ＩＤが登録されている場合（ステップＳ２０７；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、次に、セルに登録されている帳票ＩＤの１つを選択して参照する（ステップＳ２０８）。セルに登録されている帳票ＩＤが１つである場合、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０８において、その１つの帳票ＩＤを選択して参照する。また、セルに登録されている帳票ＩＤが複数である場合、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０８において、所定の選択規則に従って、ステップＳ２０９及びＳ２１０の処理を行っていない帳票ＩＤの１つを選択して参照する。選択規則は、例えば、ステップＳ２０９及びＳ２１０の処理を行っていない帳票ＩＤのうちの、帳票ＩＤの値が最も小さい帳票ＩＤを選択する、という規則にする。
【００６６】
次に、帳票ＩＤ抽出部１０２Ａは、選択した帳票ＩＤの配下に登録された線分ペアの１つを選択し、選択した線分ペアの各線分と、入力画像の線分ペアの各線分とを対応付ける（ステップＳ２０９）。選択した帳票ＩＤの配下に登録された線分ペアが１つである場合、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０９において、その１つの線分ペアを選択する。また、参照した帳票ＩＤの配下に登録された線分ペアが複数である場合、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０９において、所定の選択規則に従って、ステップＳ２０９の対応付けを行っていない線分ペアの１つを選択する。選択規則は、例えば、ステップＳ２０９の対応付けを行っていない線分ペアのうちの、登録順位が最も高い線分ペアを選択する、という規則にする。
【００６７】
次に、帳票ＩＤ抽出部１０２Ａは、帳票ＩＤの配下の線分ペアにおける各線分に対応付けられたカウンタの値、及び帳票ＩＤに対応付けられたカウンタの値に１を加算する（ステップＳ２１０）。帳票ＩＤの配下の線分ペアにおける各線分に対応付けられたカウンタの値は、上記（２）のカウンタの値、すなわち帳票ＩＤの配下に登録された線分ペアにおける線分のそれぞれについての、入力画像の線分と対応付けられた回数を計数するカウンタの値である。また、帳票ＩＤに対応付けられたカウンタの値は、上記（１）のカウンタの値、すなわち帳票ＩＤの線分と入力画像の線分との線分ペア（帳票間線分ペア）の対応付けの総数を計数するカウンタの値である。
【００６８】
次に、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０８で参照した帳票ＩＤの配下に登録されている線分ペアのなかに、入力画像の変数ｉ，ｊで表される線分ペアとの対応付けを行っていない線分ペアがあるか否かを判定する（ステップＳ２１１）。対応付けを行っていない線分ペアがある場合（ステップＳ２１１；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０９以降の処理を繰り返す。そして、全ての線分ペアで対応付けを行った場合（ステップＳ２１１；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、図１０Ｃに示すように、セル内にステップＳ２０８で参照していない帳票ＩＤがあるか否かを判定する（ステップＳ２１２）。セル内に参照していない帳票ＩＤがある場合（ステップＳ２１２；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０８以降の処理を繰り返す。
【００６９】
そして、セル内の全ての帳票ＩＤを参照してステップＳ２０９以降の処理を行った場合（ステップＳ２１２；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、入力画像から抽出した線分にｊ＋１番の線分があるか否かを判定する（ステップＳ２１３）。ｊ＋１番の線分がある場合（ステップＳ２１３；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、変数ｊをｊ＋１に更新し（ステップＳ２１４）、ステップＳ２０６以降の処理を繰り返す。一方、ｊ＋１番の線分がない場合（ステップＳ２１３；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、入力画像から抽出した線分にｉ＋２番の線分があるか否かを判定する（ステップＳ２１５）。ｉ＋２番の線分がある場合（ステップＳ２１５；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、変数ｉをｉ＋１に更新し（ステップＳ２１６）、ステップＳ２０５以降の処理を繰り返す。
【００７０】
そして、ｉ＋２番の線分がない場合（ステップＳ２１５；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、図１０Ｄに示すように、入力画像における最大線分番号ｊ_maxを取得するとともに、帳票ＩＤを指定する値を１とする（ステップＳ２１７）。なお、ステップＳ２１７において設定する、帳票ＩＤを指定する値は、全帳票ＩＤのうちの最も小さい帳票ＩＤの値とする。本実施形態では帳票ＩＤを１から始まる正の整数としているため、帳票ＩＤ抽出部１０２Ａは、ステップＳ２１７において、帳票ＩＤを指定する値を１としている。
【００７１】
次に、帳票ＩＤ抽出部１０２Ａは、帳票ＩＤの線分を表す変数ｉ、ｉ番の線分が入力画像における１個の線分と対応付けられた回数の最大値Ｃｉ＿ｍａｘ、及び帳票ＩＤの線分毎の最大値Ｃｉ＿ｍａｘのうちの最大値Ｃ＿ｍａｘを初期化する（ステップＳ２１８）。以下の説明では、ｉ番の線分が入力画像における１個の線分と対応付けられた回数の最大値Ｃｉ＿ｍａｘを第１の最大値といい、線分毎の最大値Ｃｉ＿ｍａｘのうちの最大値Ｃ＿ｍａｘを第２の最大値という。帳票ＩＤにおける線分の線分ＩＤが１から始まる正の整数である場合、帳票ＩＤ抽出部１０２Ａは、ステップＳ２１８において、変数ｉをｉ＝１とする。また、帳票ＩＤ抽出部１０２Ａは、ステップＳ２１８において、第１の最大値Ｃｉ＿ｍａｘ及び第２の最大値Ｃ＿ｍａｘを、それぞれ、Ｃｉ＿ｍａｘ＝０及びＣ＿ｍａｘ＝０とする。
【００７２】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像の線分を表す変数ｊを初期化する（ステップＳ２１９）。入力画像における線分の線分ＩＤが１から始まる正の整数である場合、帳票ＩＤ算出部１０２Ａは、ステップＳ２１９において、変数ｊをｊ＝１とする。
【００７３】
次に、帳票ＩＤ抽出部１０２Ａは、現在指定されている帳票ＩＤのｉ番の線分についてのカウンタのｊ番目の値Ｃを参照する（ステップＳ２２０）。ステップＳ２２０において、帳票ＩＤ抽出部１０２Ａは、ステップＳ２１０でカウントした帳票ＩＤのｉ番目の線分と対応付けられた入力画像の線分についてのカウンタ配列を参照する。すなわち、ステップＳ２２０において、帳票ＩＤ抽出部１０２Ａが参照する値Ｃは、帳票ＩＤのｉ番の線分が入力画像のｊ番の線分と対応付けられた回数である。
【００７４】
次に、帳票ＩＤ抽出部１０２Ａは、参照した値Ｃが、ｉ番の線分についての現時点における第１の最大値Ｃｉ＿ｍａｘよりも大きいか否かを判定する（ステップＳ２２１）。Ｃ＞Ｃｉ＿ｍａｘである場合（ステップＳ２２１；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、次に、第１の最大値Ｃｉ＿ｍａｘを値Ｃに更新するとともに、最多対応線分ＬＮｍａｘをｊに更新する（ステップＳ２２２）。ここで、最多対応線分ＬＮｍａｘは、現時点における、入力画像の線分のうちの、帳票ＩＤのｉ番の線分と対応付けられた回数が最も多い線分の線分ＩＤである。
【００７５】
ステップＳ２２２の後、帳票ＩＤ抽出部１０２Ａは、入力画像の線分を表す変数ｊが最大線分番号ｊ＿ｍａｘよりも小さいか否かを判定する（ステップＳ２２３）。また、値ＣがＣ≦Ｃｉ＿ｍａｘである場合（ステップＳ２２１；ＮＯ）、帳票ＩＤ算出部１０２Ａは、ステップＳ２２２を省略し、ステップＳ２２３の判定を行う。
【００７６】
ｊ＜ｊ＿ｍａｘである場合（ステップＳ２２３；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、変数ｊをｊ＋１に更新し（ステップＳ２２４）、ステップＳ２２０以降の処理を行う。一方、ｊ≧ｊ＿ｍａｘである場合（ステップＳ２２３；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、図１０Ｅに示すように、変数ｉ、最多対応線分ＬＮｍａｘ、及び第１の最大値Ｃｉ＿ｍａｘを、帳票ＩＤの配下に格納する（ステップＳ２２５）。
【００７７】
次に、帳票ＩＤ抽出部１０２Ａは、第１の最大値Ｃｉ＿ｍａｘが第２の最大値Ｃ＿ｍａｘよりも大きいか否かを判定する（ステップＳ２２６）。Ｃｉ＿ｍａｘ＞Ｃ＿ｍａｘである場合（ステップＳ２２６；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、次に、第２の最大値Ｃ＿ｍａｘを第１の最大値Ｃｉ＿ｍａｘに更新する（ステップＳ２２７）。
【００７８】
ステップＳ２２７の後、帳票ＩＤ抽出部１０２Ａは、帳票ＩＤの配下にｉ＋１番の線分があるか否かを判定する（ステップＳ２２８）。また、Ｃｉ＿ｍａｘ≦Ｃ＿ｍａｘである場合（ステップＳ２２６；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２２７を省略し、ステップＳ２２８の判定を行う。
【００７９】
帳票ＩＤの配下にｉ＋１番の線分がある場合（ステップＳ２２８；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、変数ｉをｉ＋１に更新するとともに、第１の最大値Ｃ＿ｉｍａｘを初期化し（ステップＳ２２９）、ステップＳ２１９以降の処理を繰り返す。
【００８０】
ｉ＋１番の線分がない場合（ステップＳ２２８；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、現在指定されている帳票ＩＤと、第２の最大値Ｃ＿ｍａｘとを保存する（ステップＳ２３０）。ステップＳ２３０において、帳票ＩＤ抽出部１０２Ａは、例えば、図１には示していないバッファ等に帳票ＩＤと第２の最大値Ｃ＿ｍａｘの組とを保存する。
【００８１】
ステップＳ２３０の後、帳票ＩＤ抽出部１０２Ａは、ステップＳ２１８以降の処理を行っていない帳票ＩＤがあるか否かを判定する（ステップＳ２３１）。未処理の帳票ＩＤがある場合（ステップＳ２３１；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、帳票ＩＤを指定する値を更新し（ステップＳ２３２）、ステップＳ２１８以降の処理を繰り返す。
【００８２】
一方、全ての帳票ＩＤに対してＳ２１８以降の処理を行った場合（ステップＳ２３１；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、次に、図１０Ｆに示すステップＳ２３３の処理を行う。すなわち、帳票ＩＤ抽出部１０２Ａは、次に、各帳票ＩＤの第２の最大値Ｃ＿ｍａｘ、最多対応線分ＬＮｍａｘ、及び第１の最大値Ｃｉ＿ｍａｘの組を読み出し、第２の最大値Ｃ＿ｍａｘの大きい順に帳票ＩＤをソートする。なお、第２の最大値Ｃ＿ｍａｘが同じ値である帳票ＩＤが複数存在する場合、帳票ＩＤ抽出部１０２Ａは、所定のソート規則に従って、第２の最大値Ｃ＿ｍａｘが同じ値である複数の帳票ＩＤの並び順を決定する。ソート規則は、例えば、帳票ＩＤを表す値が小さい帳票ＩＤから順に並べる、とする。
【００８３】
次に、帳票ＩＤ抽出部１０２Ａは、ソート後の帳票ＩＤの並び順における上位Ｎ個の帳票ＩＤを、認識対象の帳票の候補として抽出する（ステップＳ２３４）。ステップＳ２３４の後、帳票ＩＤ抽出部１０２Ａは、抽出したＮ個の帳票ＩＤについての帳票ＩＤと、第２の最大値Ｃ＿ｍａｘ、最多対応線分ＬＮｍａｘ、及び第１の最大値Ｃｉ＿ｍａｘの組とを候補抽出部１０２の対応線分ペア抽出部１０２Ｂに送信する。
【００８４】
帳票ＩＤ抽出部１０２ＡからＮ個の帳票ＩＤについての情報を受け取ると、対応線分ペア抽出部１０２Ｂは、図１０Ｆに示したステップＳ２３５〜Ｓ２３８の処理を行う。すなわち、対応線分ペア抽出部１０２Ｂは、まず、Ｎ個の帳票ＩＤのうちの１つを選択し、その帳票ＩＤの配下に格納された線分ペア（ｉ，ＬＮｍａｘ）を第１の最大値Ｃｉ＿ｍａｘの大きい順にソートする（ステップＳ２３５）。なお、第１の最大値Ｃｉ＿ｍａｘが同じ値である線分が複数存在する場合、対応線分ペア抽出部１０２Ｂは、所定のソート規則に従って、第１の最大値Ｃｉ＿ｍａｘが同じ値である複数の線分の並び順を決定する。ソート規則は、例えば、線分ＩＤを表す値が小さい線分から順に並べる（言い換えると、ソート前の並び順で上位となる線分から順に並べる）、とする。
【００８５】
次に、対応線分ペア抽出部１０２Ｂは、ソート後の線分ペア（ｉ，ＬＮｍａｘ）の並び順における上位Ｍ個の線分ペアを、対応線分ペアとして抽出する（ステップＳ２３６）。
【００８６】
次に、対応線分ペア抽出部１０２Ｂは、対応線分ペアを抽出していない帳票ＩＤ、すなわち上位Ｍ個の線分ペア（ｉ，ＬＮｍａｘ）を抽出していない帳票ＩＤがあるか否かを判定する（ステップＳ２３７）。対応線分ペアを抽出していない帳票ＩＤがある場合（ステップＳ２３７；ＹＥＳ）、対応線分ペア抽出部１０２Ｂは、ステップＳ２３５以降の処理を繰り返す。一方、全ての帳票ＩＤから対応線分ペアを抽出した場合（ステップＳ２３７；ＮＯ）、対応線分ペア抽出部１０２Ｂは、抽出したＮ個の帳票ＩＤについての、帳票ＩＤと対応線分ペアについての情報を帳票ＩＤ特定部１０３に出力する（ステップＳ２３８）。ステップＳ２３８を終えると、候補抽出部１０２は、１つの入力画像（認識対象である帳票）についての候補抽出処理を終了する（リターン）。
【００８７】
図１１は、認識対象の帳票と大分類辞書に登録された帳票との例を示す図である。図１２は、帳票内線分ペア同士の対応付けの結果を示す図である。
【００８８】
図１１の（ａ）には、認識対象の帳票４Ａの例を示している。認識対象の帳票４Ａには、７本の線分ＬＳ１〜ＬＳ７が印刷されている。認識対象の帳票４Ａにおけるこれら線分ＬＳ１〜ＬＳ７は、認識対象の帳票４Ａの画像に対し所定の罫線抽出処理を行うことにより抽出される。
【００８９】
図１１の（ｂ）には、大分類辞書に登録された第１の帳票４Ｂの例を示している。第１の帳票４Ｂには、７本の線分ＬＳａ〜ＬＳｇが印刷されている。第１の帳票４Ｂにおけるこれら線分ＬＳａ〜ＬＳｇは、第１の帳票４Ｂの画像に対し所定の罫線抽出処理を行うことにより抽出される。また、大分類辞書及び詳細識別辞書において、第１の帳票４Ｂには、第１の帳票ＩＤが付与されている。
【００９０】
認識対象の帳票４Ａと第１の帳票４Ｂとは、線分のレイアウトが類似している。認識対象の帳票４Ａには、４本の線分ＬＳ１，ＬＳ３，ＬＳ４，及びＬＳ６により形成される第１の矩形と、４本の線分ＬＳ２，ＬＳ４，ＬＳ５，及びＬＳ７により形成される第２の矩形とが、横方向（ｘ方向）で隣接している。同様に、第１の帳票４Ｂは、４本の線分ＬＳａ，ＬＳｃ，ＬＳｄ，及びＬＳｆにより形成される第１の矩形と、４本の線分ＬＳｂ，ＬＳｄ，ＬＳｅ，及びＬＳｇにより形成される第２の矩形とが、横方向で隣接している。また、認識対象の帳票４Ａ及び第１の帳票４Ｂは、いずれも、第１の矩形が縦長であり、第２の矩形が横長である。
【００９１】
図１１の（ｃ）には、大分類辞書に登録された第２の帳票４Ｃの例を示している。第２の帳票４Ｃには、７本の線分ＬＳＡ〜ＬＳＧが印刷されている。第２の帳票４Ｃにおけるこれら線分ＬＳＡ〜ＬＳＧは、第２の帳票４Ｃの画像に対し所定の罫線抽出処理を行うことにより抽出される。また、大分類辞書及び詳細識別辞書において、第２の帳票４Ｃには、第１の帳票ＩＤとは別の第２の帳票ＩＤが付与されている。
【００９２】
認識対象の帳票４Ａと第２の帳票４Ｃとは、線分のレイアウトが類似している。認識対象の帳票４Ａには、４本の線分ＬＳ１，ＬＳ３，ＬＳ４，及びＬＳ６により形成される第１の矩形と、４本の線分ＬＳ２，ＬＳ４，ＬＳ５，及びＬＳ７により形成される第２の矩形とが、横方向（ｘ方向）で隣接している。同様に、第２の帳票４Ｃは、４本の線分ＬＳＡ，ＬＳＣ，ＬＳＤ，及びＬＳＦにより形成される第１の矩形と、４本の線分ＬＳＢ，ＬＳＤ，ＬＳＥ，及びＬＳＧにより形成される第２の矩形とが、横方向で隣接している。ただし、認識対象の帳票４Ａでは第１の矩形が縦長であり第２の矩形が横長であるのに対し、第２の帳票４Ｃでは第１の矩形が横長であり第２の矩形が縦長である。
【００９３】
上記のように、大分類辞書テーブル１１１のセルには帳票ＩＤが登録されており、帳票ＩＤの配下には線分ペアが登録される。そのため、認識対象の帳票４Ａの画像（入力画像）を取得して上記の候補抽出処理を行うと、帳票ＩＤ抽出部１０２Ａは、入力画像の線分ペアと、大分類辞書テーブル１１１に登録された帳票ＩＤの線分ペアとの対応付けを行う（ステップＳ２０９）。認識対象の帳票４Ａと第１の帳票４Ｂとの線分ペアの対応付け、及び認識対象の帳票４Ａと第２の帳票４Ｃとの線分ペアの対応付けを行うと、図１２に示したテーブル１３１のような結果が得られる。
【００９４】
例えば、認識対象の帳票４Ａにおける線分ペア（ＬＳ１，ＬＳ２）は、横方向に伸びる線分ＬＳ１と、線分ＬＳ１の右端から右方に伸びる線分ＬＳ２とのペアであり、線分ＬＳ１と線分ＬＳ２とのｙ方向の間隔ｄが０である。また、線分ペア（ＬＳ１，ＬＳ２）は、線分ＬＳ１の長さＬ１と線分ＬＳ２の長さＬ２とがＬ１＜Ｌ２である。
【００９５】
第１の帳票４Ｂにおいて線分同士のｙ方向の間隔ｄが０である線分ペアには、（ＬＳａ，ＬＳｂ）と（ＬＳｆ，ＬＳｇ）とがある。線分ペア（ＬＳａ，ＬＳｂ）では線分ＬＳａの長さＬａと線分ＬＳｂの長さＬｂとの関係がＬａ＜Ｌｂであり、線分ペア（ＬＳｆ，ＬＳｇ）では線分ＬＳｆの長さＬｆと線分ＬＳｇの長さＬｇとの関係がＬｆ＜Ｌｇである。しかも、図１１の（ａ）及び（ｂ）に示した例では、Ｌｂ／Ｌａ及びＬｇ／Ｌｆが、いずれもＬ２／Ｌ１と略同一の値となる。そのため、式（１−１）及び式（１−２）により算出される線分ペア（ＬＳ１，ＬＳ２）についてのセルの座標は、配下に（ＬＳａ，ＬＳｂ）と（ＬＳｆ，ＬＳｇ）とを含む第１の帳票４Ｂの帳票ＩＤが登録されたセルの座標と略一致する。よって、第１の帳票４Ｂの線分ペアのうち、認識対象の帳票４Ａの線分ペア（ＬＳ１，ＬＳ２）と対応付けられるのは、（ＬＳａ，ＬＳｂ）及び（ＬＳｆ，ＬＳｇ）となる。
【００９６】
これに対し、第２の帳票４Ｃにおいて線分同士のｙ方向の間隔ｄが０である線分ペア（ＬＳＡ，ＬＳＢ）では、線分ＬＳＡの長さＬＡと線分ＬＳＢの長さＬＢとの関係がＬＡ＞ＬＢである。同様に、第２の帳票４Ｃにおける線分ペア（ＬＳＦ，ＬＳＧ）では、線分ＬＳＦの長さＬＦと線分ＬＳＧの長さＬＧとの関係がＬＦ＞ＬＧである。よって、第２の帳票４Ｃにおける線分ペアは、いずれも、認識対象の帳票４Ａの線分ペア（ＬＳ１，ＬＳ２）とは対応付けられない。
【００９７】
また、例えば、認識対象の帳票４Ａにおける線分ペア（ＬＳ１，ＬＳ３）は、横方向に伸びる線分ＬＳ１と、線分ＬＳ１の左端から下方に伸びる線分ＬＳ３とのペアである。また、線分ペア（ＬＳ１，ＬＳ３）は、線分ＬＳ１の長さＬ１と線分ＬＳ３の長さＬ３との関係がＬ１＜Ｌ３である。
【００９８】
第１の帳票４Ｂにおいて、横方向に伸びる線分と、その線分の左端から下方に伸びる線分とのペアには、（ＬＳａ，ＬＳｃ）と（ＬＳｂ，ＬＳｄ）とがある。線分ペア（ＬＳａ，ＬＳｃ）は、線分ＬＳａの長さＬａと線分ＬＳｃの長さＬｃとの関係がＬａ＜Ｌｃであり、かつＬｃ／ＬａがＬ３／Ｌ１と略同一の値となる。一方、線分ペア（ＬＳｂ，ＬＳｄ）は、線分ＬＳｂの長さＬｂと線分ＬＳｄの長さＬｄとの関係がＬｂ＞Ｌｄである。そのため、Ｌｄ／Ｌｂは、Ｌ３／Ｌ１とは大きく異なる。よって、第１の帳票４Ｂの線分ペアのうち、認識対象の帳票４Ａの線分ペア（ＬＳ１，ＬＳ３）と対応付けられるのは、線分ペア（ＬＳａ，ＬＳｃ）のみとなる。
【００９９】
また、第２の帳票４Ｃの線分ペアのうち、認識対象の帳票４Ａの線分（ＬＳ１，ＬＳ３）と対応付けられるのは、線分ペア（ＬＳＢ，ＬＳＤ）となる。
【０１００】
認識対象の帳票４Ａと第１の帳票４Ｂとの線分ペアの対応付け、及び認識対象の帳票４Ａと第２の帳票４Ｃとの線分ペアの対応付けを行った後、帳票ＩＤ抽出部１０２Ａは、図１０ＤのステップＳ２１７以降の処理を行う。
【０１０１】
図１３は、認識対象の帳票と第１の帳票ＩＤを付与した帳票との対応付けから抽出される対応線分ペアを説明する図である。図１４は、認識対象の帳票と第２の帳票ＩＤを付与した帳票との対応付けから抽出される対応線分ペアを説明する図である。
【０１０２】
本実施形態に係る候補抽出処理では、入力画像の線分ペアと対応する帳票ＩＤの線分ペアの対応付けの後、帳票ＩＤの線分ペアにおける各線分についての入力画像の線分と対応付けられた回数を計数する。例えば、図１２のような対応付けの結果が得られた場合、第１の帳票ＩＤ（第１の帳票４Ｂ）の各線分ＬＳａ〜ＬＳｇについての、入力画像（認識対象の帳票４Ａ）の線分ＬＳ１〜ＬＳ７と対応付けられた回数の計数結果は、図１３の（ａ）に示すテーブル１３２Ａのようになる。図１２の対応付けの結果において、第１の帳票ＩＤの線分ＬＳａを含む線分ペアは、（ＬＳａ，ＬＳｂ）、（ＬＳａ，ＬＳｃ）、及び（ＬＳａ，ＬＳｄ）の３個である。このうち線分ペア（ＬＳａ，ＬＳｂ）は、入力画像の線分ペア（ＬＳ１，ＬＳ２）及び（ＬＳ６，ＬＳ７）と対応付けられている。また、線分ペア（ＬＳａ，ＬＳｃ）は線分ペア（ＬＳ１，ＬＳ３）と対応付けられ、線分ペア（ＬＳａ，ＬＳｄ）は線分ペア（ＬＳ１，ＬＳ４）と対応付けられている。すなわち、第１の帳票ＩＤの線分ＬＳａは、図１３の（ａ）のテーブル１３２Ａのように、入力画像の線分ＬＳ１と３回対応付けられ、線分ＬＳ６と１回対応付けられている。このように線分ペアの対応付けを行う際に、第１の帳票ＩＤの各線分ＬＳａ〜ＬＳｇが入力画像のどの線分と何回対応付けられたかを計数することで、各線分ＬＳａ〜ＬＳｇについて図１３の（ａ）に示したテーブル１３２Ａのような結果が得られる。
【０１０３】
また、上記の候補抽出処理では、図１３の（ａ）に示した結果（テーブル１３２Ａ）に基づいて、第１の帳票ＩＤの線分ＬＳａ〜ＬＳｇと、その線分に対応付けられた回数が最多である入力画像の線分との線分ペア（帳票間線分ペア）を生成する。例えば、入力画像の線分ＬＳ１〜ＬＳ７のうち、第１の帳票ＩＤの線分ＬＳａと対応付けられた線分は、線分ＬＳ１及び線分ＬＳ６である。また、線分ＬＳ１が線分ＬＳａと対応付けられた回数は３回であり、線分ＬＳ６が線分ＬＳａと対応付けられた回数は１回である。そのため、第１の帳票ＩＤの線分ＬＳａについての帳票間線分ペアは、対応付けられた回数の多い線分ＬＳ１との線分ペア（ＬＳ１，ＬＳａ）となる。また、入力画像の線分のうち、第１の帳票ＩＤの線分ＬＳｂに対応付けられた回数が最多であるのは線分ＬＳ２であるため、線分ＬＳｂについての帳票間線分ペアは（ＬＳ２，ＬＳｂ）となる。同様に、線分ＬＳｃ〜ＬＳｇについても、それぞれの線分に対応付けられた回数が最多となる入力画像の線分を求めて対応線分ペアを作成すると、図１３の（ｂ）に示すテーブル１３３Ａのようになる。
【０１０４】
更に、上記の候補抽出処理では、対応線分ペア抽出部１０２Ｂが、ステップＳ２３４において候補として抽出された帳票ＩＤについての帳票間線分ペアのなかからＭ個の対応線分ペアを抽出する。対応線分ペアを抽出する際、対応線分ペア抽出部１０２Ｂは、ステップＳ２３５において、候補の帳票ＩＤにおける帳票間線分ペアを、線分ペアにおける帳票画像の線分と対応付けられた回数の多い順にソートする。図１３の（ａ）に示したように、第１の帳票ＩＤの線分ＬＳａ〜ＬＳｇのうち、帳票間線分ペアにおける入力画像の線分と対応付けられた回数が最多なのは、線分ＬＳ４と６回対応付けられた線分ＬＳｄである。よって、帳票間線分ペアのソート順位の１位は（ＬＳ４，ＬＳｄ）となる。また、第１の帳票ＩＤの他の線分ＬＳａ，ＬＳｃ〜ＬＳｇは、それぞれ、帳票間線分ペアにおける入力画像の線分と対応付けられた回数が３回である。したがって、帳票間線分ペアのソート順位の２位は、（ＬＳ１，ＬＳａ），（ＬＳ３，ＬＳｃ），（ＬＳ４，ＬＳｄ），（ＬＳ５，ＬＳｅ），（ＬＳ６，ＬＳｆ），（ＬＳ７，ＬＳｇ）となる。このように、対応付けられた回数が同じ帳票間線分ペアが存在する場合、それら線分ペアは、例えば、第１の帳票ＩＤにおける登録順位が上位の線分から順に並べる。そのため、第１の帳票ＩＤにおける線分ＬＳａ〜ＬＳｇの登録順位がＬＳａ，ＬＳｂ，ＬＳｃ，ＬＳｄ，ＬＳｅ，ＬＳｆ，ＬＳｇの順である場合、帳票間線分ペアの並び順は、テーブル１３３Ａのようになる。帳票間線分ペアをソートした後、対応線分ペア抽出部１０２Ｂは、上位Ｍ個の帳票間線分ペアを抽出して対応線分ペアとする。図１３の（ｂ）には、Ｍ＝３の場合の対応線分ペアの抽出例を示している。抽出した対応線分ペアは、詳細識別処理（ステップＳ３）で利用する。
【０１０５】
また、図１２のような対応付けの結果が得られた場合、第２の帳票ＩＤ（第２の帳票４Ｃ）の各線分ＬＳＡ〜ＬＳＧについての、入力画像（認識対象の帳票４Ａ）の線分ＬＳ１〜ＬＳ７と対応付けられた回数の計数結果は、図１４の（ａ）に示すテーブル１３２Ｂのような結果となる。図１２の対応付けの結果において、第２の帳票ＩＤの線分ＬＳＡを含む線分ペアは、（ＬＳＡ，ＬＳＣ）、及び（ＬＳＡ，ＬＳＤ）の２個である。この２個の線分ペアにおける線分ＬＳＡは、いずれも入力画像の線分ＬＳ２と対応付けられている。そのため、図１４の（ａ）のテーブル１３２Ｂのように、線分ＬＳＡには、線分ＬＳ２が２回対応付けられたという結果が得られる。また、第２の帳票ＩＤの他の線分ＬＳＢ〜ＬＳＧに対して同様の処理を行うと、それぞれ、図１４の（ａ）のテーブル１３２Ｂに示した結果が得られる。
【０１０６】
また、図１４の（ａ）に示した結果に基づいて、第２の帳票ＩＤの線分ＬＳＡ〜ＬＳＧと、その線分に対応付けられた回数が最多である入力画像の線分ＬＳ１〜ＬＳ７との帳票間線分ペアを生成すると、次の７個の帳票間線分ペアが生成される。すなわち、（ＬＳ２，ＬＳＡ），（ＬＳ１，ＬＳＢ），（ＬＳ４，ＳＣ），（ＬＳ５，ＬＳＤ），（ＬＳ４，ＬＳＥ），（ＬＳ７，ＬＳＦ），及び（ＬＳ６，ＬＳＧ）の７個の帳票間線分ペアが生成される。
【０１０７】
更に、帳票間線分ペアのなかから対応線分ペアを抽出するため入力画像の線分と対応付けられた回数の多い順に帳票間線分ペアをソートすると、図１４の（ｂ）に示したテーブル１３３Ｂのような並び順になる。そのため、上位Ｍ（＝３）個の帳票間線分ペアを抽出して対応線分ペアとする場合、（ＬＳ４，ＬＳＣ），（ＬＳ５，ＬＳＤ），及び（ＬＳ４，ＬＳＥ）の３個の帳票間線分ペアが、第２の帳票ＩＤについての対応線分ペアとなる。
【０１０８】
このように、本実施形態に係る帳票認識処理では、大分類辞書テーブルに基づいて認識対象である帳票（入力画像）との類似度の高い帳票ＩＤ（帳票ＩＤの候補）を抽出する際に、入力画像と、抽出した帳票ＩＤとの詳細な識別に用いる対応線分ペアも抽出する。そして、本実施形態に係る帳票認識処理では、詳細な識別処理を行う際に用いる帳票間線分ペアを、抽出した対応線分ペアのみに限定する。
【０１０９】
対応線分ペアとして抽出された帳票間線分ペアにおける入力画像の線分は、帳票間線分ペアにおける帳票ＩＤの線分と対応付けられた回数の多い線分である。そのため、詳細な識別処理を行う際には、対応線分ペアにおける帳票画像の線分と帳票ＩＤの線分とを一致させた場合（重ねた場合）に、両者の線分のパターンの一致度が高くなる可能性が高い。また、対応線分ペアの数は、帳票ＩＤの線分の総数よりも少ない。したがって、対応線分ペアに基づいて詳細な識別処理をした場合、全ての帳票間線分ペアを用いて詳細な識別処理をする場合に比べて、処理負荷を軽減し、処理に要する時間を短縮することが可能となる。
【０１１０】
図１５Ａは、第１の実施形態に係る詳細識別処理の内容を説明するフローチャート（その１）である。図１５Ｂは、第１の実施形態に係る詳細識別処理の内容を説明するフローチャート（その２）である。
【０１１１】
本実施形態の帳票認識処理における詳細識別処理は、上記のように、帳票認識装置１の帳票ＩＤ特定部１０３が行う。帳票ＩＤ特定部１０３は、候補抽出部１０２から入力画像、識別処理に用いる帳票ＩＤ、及び対応線分ペアについての情報を受け取ると、詳細識別処理（ステップＳ３）として、図１５Ａ及び図１５Ｂに示したような処理を行う。なお、図１５Ａ及び図１５Ｂに示した詳細識別処理は、既知の帳票認識処理における詳細な識別処理の一例である。
【０１１２】
帳票ＩＤ特定部１０３は、まず、帳票ＩＤの線分のうち入力画像の線分と対応付けられた線分の数の最大値Ｃｍａｘを初期化するとともに、対応付けに用いるテーブルを初期化する（ステップＳ３０１）。ステップＳ３０１において、帳票ＩＤ特定部１０３は、最大値Ｃｍａｘを０にする。また、対応付けに用いるテーブルは、例えば、セルを二次元配列させ、各セルに線分の位置及び長さの情報を割り当てたテーブルとする。
【０１１３】
次に、帳票ＩＤ特定部１０３は、候補抽出部１０２から受け取った帳票ＩＤの１つを選択する（ステップＳ３０２）。帳票ＩＤが複数存在する場合、帳票ＩＤ特定部１０３は、ステップＳ３０２において、所定の選択規則に従って、複数の帳票ＩＤのうちの１つの帳票ＩＤを選択する。選択規則は、例えば、入力画像との詳細な対応付けを行っていない帳票ＩＤのうち、帳票ＩＤを表す番号が最も小さい帳票ＩＤを選択する、という規則する。
【０１１４】
次に、帳票ＩＤ特定部１０３は、選択した帳票ＩＤと対応付けられた対応線分ペアの１つを選択する（ステップＳ３０３）。ステップＳ３０３において、帳票ＩＤ特定部１０３は、所定の選択規則に従って、複数の対応線分ペアのうちの１つの対応線分ペアを選択する。選択規則は、例えば、入力画像との詳細な対応付けに用いていない対応線分ペアのうち、線分ＩＤを表す番号が最も小さい帳票ＩＤを選択する、という規則する。
【０１１５】
次に、選択した帳票ＩＤの全ての線分を対応付けに用いるテーブルに登録する（ステップＳ３０４）。ステップＳ３０４において、帳票ＩＤ特定部１０３は、各線分の位置及び長さに基づいて、帳票ＩＤの各線分をテーブルの該当するセルに登録する。
【０１１６】
次に、帳票ＩＤ特定部１０３は、選択した対応線分ペアにおける入力画像の線分を基準として、入力画像の線分毎に対応付け用のテーブルを参照し、入力画像の線分と対応付いた帳票ＩＤの線分の数Ｃ１を算出する（ステップＳ３０５）。ステップＳ３０５において、帳票ＩＤ特定部１０３は、例えば、テーブルにおける、入力画像の線分のうちの対応線分ペアの線分のセルを、当該対応線分ペアにおける帳票ＩＤの線分のセルと一致させる。その後、帳票ＩＤ特定部１０３は、対応線分ペアのセルを基準とし、入力画像の線分毎に、線分の位置及び長さに基づいて対応するセルを算出し、算出したセルを参照して帳票ＩＤの線分が登録されているか否かを確認する。そして、参照したセルに帳票ＩＤの線分が登録されていた場合、帳票ＩＤ特定部１０３は、数Ｃ１をＣ１＝Ｃ１＋１に更新する。
【０１１７】
次に、帳票ＩＤ特定部１０３は、算出した線分の数Ｃ１が、最大値Ｃｍａｘよりも大きいか否かを判定する（ステップＳ３０６）。Ｃ１＞Ｃｍａｘである場合（ステップＳ３０６；ＹＥＳ）、帳票ＩＤ特定部１０３は、ＣｍａｘをＣ１に更新して線分対応付けの結果を保持するとともに、判別結果を表す値Ｆｍａｘを、選択された帳票ＩＤを表す値に更新する（ステップＳ３０７）。
【０１１８】
ステップＳ３０７の後、帳票ＩＤ特定部１０３は、選択した帳票ＩＤに対応付けられた全ての対応線分ペアで対応付けを行ったか否かを判定する（ステップＳ３０８）。また、Ｃ１≦Ｃｍａｘである場合（ステップＳ３０６；ＮＯ）、帳票ＩＤ特定部１０３は、ステップＳ３０７を省略しステップＳ３０８の判定を行う。
【０１１９】
対応付けを行っていない対応線分ペアがある場合（ステップＳ３０８；ＹＥＳ）、帳票ＩＤ特定部１０３は、ステップＳ３０３以降の処理を繰り返す。そして、全ての対応線分ペアで対応付けを行った場合（ステップＳ３０８；ＮＯ）、帳票ＩＤ特定部１０３は、次に、図１５Ｂに示すように、候補抽出部１０２から受け取った帳票ＩＤのなかに対応付けをしていない帳票ＩＤがあるか否かを判定する（ステップＳ３０９）。対応付けを行っていない帳票ＩＤがある場合（ステップＳ３０９；ＹＥＳ）、帳票ＩＤ特定部１０３は、対応付けに用いるテーブルを初期化し（ステップＳ３１０）、ステップＳ３０２以降の処理を繰り返す。そして、全ての帳票ＩＤで対応付けを行った場合（ステップＳ３０９；ＮＯ）、帳票ＩＤ特定部１０３は、判別結果を表す値Ｆｍａｘを入力画像の帳票ＩＤとして出力し（ステップＳ３１１）、詳細識別処理を終了する（リターン）。ステップＳ３１１で出力する値Ｆｍａｘは、最後に行ったステップＳ３０７の処理において、処理対象である帳票ＩＤを表す値に更新されている。ステップＳ３０７の処理は、対応線分ペアに基づいて入力画像の線分と対応付けられた帳票ＩＤの線分の数が、その時点での最大値Ｃｍａｘよりも大きい場合に行われる。すなわち、ステップＳ３１１で出力する値Ｆｍａｘは、候補抽出部１０２が抽出した複数の帳票ＩＤのうちの、入力画像の線分と対応付けられた線分の数が最多の帳票ＩＤを表す。
【０１２０】
図１６は、詳細識別処理における第１の帳票ＩＤを付与した帳票と入力画像の帳票との対応付けを説明する図である。図１７は、対応線分ペアに基づいて行った第１の帳票ＩＤを付与した帳票の線分と入力画像の線分との対応付けの結果を示す図である。
【０１２１】
図１６の（ａ）には、認識対象である帳票４Ａの例として、図１１の（ａ）と同じ帳票を示している。また、図１６の（ｂ）には、候補抽出部１０２（帳票ＩＤ抽出部１０２Ａ）が抽出した帳票ＩＤの帳票の例として、図１１の（ｂ）と同じ、第１の帳票ＩＤが付与された第１の帳票４Ｂを示している。
【０１２２】
候補抽出部１０２は、まず、認識対象である帳票４Ａの画像（入力画像）から、７個の線分ＬＳ１〜ＬＳ７を抽出する。次に、帳票抽出部１０２は、入力画像の線分ペア（帳票内線分ペア）と、大分類辞書テーブルに登録された各帳票ＩＤの線分ペア（帳票内線分ペア）とに基づいて、第１の帳票ＩＤ（第１の帳票４Ｂ）を、認識対象である帳票４Ａの帳票ＩＤの候補の１つとして抽出する。
【０１２３】
その後、候補抽出部１０２は、第１の帳票ＩＤについての対応線分ペアとして、例えば、図１６の（ｃ）のテーブル１３４Ａに示した（ＬＳ４，ＬＳｄ），（ＬＳ１，ＬＳａ），及び（ＬＳ２，ＬＳｂ）の３個の帳票間線分ペアを抽出する。そして、候補抽出処理の後に行われる詳細識別処理において、帳票ＩＤ特定部１０３は、対応線分ペア（ＬＳ４，ＬＳｄ），（ＬＳ１，ＬＳａ），及び（ＬＳ２，ＬＳｂ）に基づいて、入力画像と第１の帳票ＩＤとの詳細な対応付けを行う。
【０１２４】
入力画像と第１の帳票ＩＤとの詳細な対応付けにおいては、まず、対応線分ペアの１つを選択し、当該線分ペアにおける第１の帳票ＩＤの線分を基準として、第１の帳票ＩＤの全ての線分を対応付け用のテーブルに登録する。例えば、対応線分ペア（ＬＳ４，ＬＳｄ）を選択した場合、帳票ＩＤ特定部１０３は、第１の帳票ＩＤの線分ＬＳｄを基準として、図１７に示すように、第１の帳票ＩＤの全ての線分ＬＳａ〜ＬＳｇを対応付け用のテーブル１３５の対応するセルに登録する。
【０１２５】
次に、帳票ＩＤ特定部１０３は、選択した対応線分ペア（ＬＳ４，ＬＳｄ）における入力画像の線分ＬＳ４を基準として、対応付け用のテーブル１３５における入力画像の各線分Ｓ１〜Ｓ７と対応するセルを参照する。このとき、帳票ＩＤ特定部１０３は、テーブル１３５における入力画像の線分ＬＳ４と対応するセルを、第１の帳票ＩＤの線分ＬＳｄが登録されたセル１３６Ａとして、入力画像の各線分ＬＳ１〜ＬＳ７と対応するセルを決定する。
【０１２６】
図１６の（ａ）及び（ｂ）に示したように、入力画像（認識対象の帳票４Ａ）の線分ＬＳ１〜ＬＳ７のレイアウトと、第１の帳票ＩＤ（第１の帳票４Ｂ）の線分ＬＳａ〜ＬＳｇのレイアウトとは、略同一である。そのため、テーブル１３５における入力画像の線分ＬＳ４と対応するセルを、第１の帳票ＩＤの線分ＬＳｄを登録したセル１３６Ａとした場合、テーブル１３５における入力画像の各線分ＬＳ１〜ＬＳ７と対応するセルは、図１７に示したようになる。すなわち、入力画像の各線分ＬＳ１〜ＬＳ７と対応するセルは、それぞれ、第１の帳票ＩＤの線分ＬＳａ〜ＬＳｇが登録されたセルとなる。
【０１２７】
したがって、対応線分ペア（ＬＳ４，ＬＳｄ）を基準として入力画像の線分と第１の帳票ＩＤの線分との対応付けを行った場合、対応付けられた線分の数Ｃ１は「７」となる。また、対応線分ペア（ＬＳ１，ＬＳａ）を基準として入力画像の線分と第１の帳票ＩＤの線分との対応付けを行った場合も、対応付けられた線分の数Ｃ１は「７」となる。更に、対応線分ペア（ＬＳ２，ＬＳｂ）を基準として入力画像の線分と第１の帳票ＩＤの線分との対応付けを行った場合も、対応付けられた線分Ｃ１の数は「７」となる。すなわち、対応線分ペアに基づいて入力画像の線分と第１の帳票ＩＤの線分との対応付けを行った場合、対応付けられた線分の数の最大値Ｃｍａｘは、第１の帳票ＩＤにおける線分の総数と同じ「７」となる。
【０１２８】
図１８は、詳細識別処理における第２の帳票ＩＤを付与した帳票と入力画像の帳票との対応付けを説明する図である。図１９は、対応線分ペアに基づいて行った第２の帳票ＩＤを付与した帳票の線分と入力画像の線分との対応付けの結果を示す図である。
【０１２９】
図１８の（ａ）には、認識対象である帳票４Ａの例として、図１１の（ａ）と同じ帳票を示している。また、図１８の（ｂ）には、候補抽出部１０２（帳票ＩＤ抽出部１０２Ａ）が抽出した帳票ＩＤの帳票の例として、図１１の（ｃ）と同じ、第２の帳票ＩＤが付与された第２の帳票４Ｃを示している。
【０１３０】
例えば、帳票ＩＤ抽出部１０２Ａが、入力画像の線分ＬＳ１〜ＬＳ７による線分ペアと、大分類辞書テーブルに登録された各帳票ＩＤの線分ペアとに基づいて、第２の帳票ＩＤ（第２の帳票４Ｃ）を、認識対象である帳票４Ａの候補として抽出したとする。この場合、候補抽出部１０２は、第２の帳票ＩＤについての対応線分ペアとして、例えば、図１８の（ｃ）のテーブル１３４Ｂに示した（ＬＳ４，ＬＳＣ），（ＬＳ５，ＬＳＤ），及び（ＬＳ４，ＬＳＥ）の３個の帳票間線分ペアを抽出する。そうすると、候補抽出処理の後に行われる詳細識別処理において、帳票ＩＤ特定部１０３は、対応線分ペア（ＬＳ４，ＬＳＣ），（ＬＳ５，ＬＳＤ），及び（ＬＳ４，ＬＳＥ）に基づいて、入力画像と第２の帳票ＩＤとの詳細な対応付けを行う。
【０１３１】
入力画像と第２の帳票ＩＤとの詳細な対応付けにおいては、まず、対応線分ペアの１つを選択し、当該線分ペアにおける第２の帳票ＩＤの線分を基準として、第２の帳票ＩＤの全ての線分を対応付け用のテーブル１３５に登録する。例えば、対応線分ペア（ＬＳ４，ＬＳＣ）を選択した場合、帳票ＩＤ特定部１０３は、第２の帳票ＩＤの線分ＬＳＣを基準として、図１９に示すように、第２の帳票ＩＤの全ての線分ＬＳＡ〜ＬＳＧをテーブル１３５の対応するセルに登録する。
【０１３２】
次に、帳票ＩＤ特定部１０３は、選択した対応線分ペア（ＬＳ４，ＬＳＣ）における入力画像の線分ＬＳ４を基準として、対応付け用のテーブル１３５における入力画像の各線分ＬＳ１〜ＬＳ７と対応するセルを参照する。このとき、帳票ＩＤ特定部１０３は、テーブル１３５における入力画像の線分ＬＳ４と対応するセルを、第２の帳票ＩＤの線分ＬＳＣが登録されたセル１３６Ｂとして、入力画像の各線分ＬＳ１〜ＬＳ７と対応するセルを決定する。
【０１３３】
図１８の（ａ）及び（ｂ）に示したように、入力画像（認識対象の帳票４Ａ）の線分ＬＳ１〜ＬＳ７のレイアウトと、第２の帳票ＩＤ（第２の帳票４Ｂ）の線分ＬＳＡ〜ＬＳＧのレイアウトとでは、縦長の矩形と横長の矩形との位置関係が反対になっている。しかも、入力画像における線分ＬＳ４と、第２の帳票ＩＤにおける線分ＬＳＣとでは、接している線分の数が異なる。
【０１３４】
そのため、対応付け用のテーブル１３５における入力画像の線分ＬＳ４と対応するセルを、第２の帳票ＩＤの線分ＬＳＣが登録されたセルとした場合、テーブル１３５における入力画像の各線分Ｓ１〜Ｓ７と対応するセルは、図１９に示したようになる。すなわち、対応線分ペア（ＬＳ４，ＬＳＣ）を基準として入力画像の線分と第２の帳票ＩＤの線分との対応付けを行った場合、対応付けられた線分の数Ｃ１は「４」となる。また、対応線分ペア（ＬＳ５，ＬＳＤ）を基準として入力画像の線分と第２の帳票ＩＤの線分との対応付けを行った場合も、対応付けられた線分の数Ｃ１は「４」となる。更に、対応線分ペア（ＬＳ４，ＬＳＥ）を基準として入力画像の線分と第２の帳票ＩＤの線分との対応付けを行った場合も、対応付けられた線分Ｃ１の数は「４」となる。すなわち、対応線分ペアに基づいて入力画像（認識対象の帳票４Ａ）の線分と第２の帳票ＩＤ（第２の帳票４Ｃ）の線分との対応付けを行った場合、対応付けられた線分の数の最大値Ｃｍａｘは「４」となる。
【０１３５】
よって、候補抽出部１０２において抽出された帳票ＩＤが第１の帳票ＩＤ及び第２の帳票ＩＤの２つであった場合、帳票ＩＤ特定部１０３は、詳細識別処理の結果（値Ｆｍａｘ）として第１の帳票ＩＤを出力する。このように、本実施形態に係る詳細識別処理では、対応線分ペアにおける認識対象の帳票の線分と帳票ＩＤの線分との重なり度合いに基づき、重なり度合いが最も高い帳票ＩＤの候補を認識対象の帳票の帳票ＩＤに特定する。
【０１３６】
また、図１６の（ｂ）に示した第１の帳票４Ｂとの類似度が高い別の帳票の帳票ＩＤが大分類辞書に登録されている場合、その帳票ＩＤも候補として抽出されることがある。しかしながら、第１の帳票ＩＤが付与された帳票４Ｂと別の帳票ＩＤが付与された帳票とでは、線分のレイアウトに差異がある。そのため、認識対象の帳票４Ａと第１の帳票ＩＤ（第１の帳票４Ｂ）との線分のレイアウトが略同一である場合、入力画像と別の帳票ＩＤとで対応づく線分の数の最大値Ｃｍａｘは「６」以下となる。よって、本実施形態に係る帳票認識処理では、３個以上の帳票ＩＤが大分類辞書に登録されている場合でも、認識対象の帳票４Ａを正しく認識することができる。
【０１３７】
図２０は、対応線分ペアとは別の線分ペアに基づいて行った第１の帳票ＩＤを付与した帳票の線分と入力画像の線分との対応付けの結果を示す図である。
【０１３８】
図１６の（ａ）及び（ｂ）に示した認識対象の帳票４Ａの線分ＬＳ１〜ＬＳ７と、第１の帳票４Ｂの線分ＬＳａ〜ＬＳｇとの対応付けを行う場合、本実施形態に係る帳票認識処理では、上記のように、対応線分ペアのみに基づいて対応付けを行う。これに対し、特許文献１等に開示された帳票認識処理では、対応線分ペアに含まれない線分ペア（例えば、（ＬＳ３，ＬＳｄ）等）を基準とした対応付けも行い、それら線分ペアの対応付けの結果も含めて認識対象の帳票４Ａの帳票ＩＤを特定する。
【０１３９】
例えば、対応線分ペアに含まれない線分ペア（ＬＳ３，ＬＳｄ）を基準として対応付けを行う場合、まず、図２０に示すように、第１の帳票ＩＤの線分ＬＳｄを基準として第１の帳票ＩＤの各線分ＬＳａ〜ＬＳｇをテーブル１３５の対応するセルに登録する。その後、入力画像の線分ＬＳ３を基準として、テーブル１３５における入力画像の各線分ＬＳ１〜ＬＳ７と対応するセルを参照する。このとき、帳票ＩＤ特定部１０３は、テーブル１３５における入力画像の線分ＬＳ３と対応するセルを、第１の帳票ＩＤの線分ＬＳｄを登録したセル１３６Ａとして、入力画像の各線分ＬＳ１〜ＬＳ７と対応するセルを決定する。
【０１４０】
図１６の（ａ）及び（ｂ）からわかるように、入力画像（認識対象の帳票４Ａ）における線分ＬＳ１〜ＬＳ７のレイアウトと、第１の帳票ＩＤ（第１の帳票４Ｂ）における線分ＬＳａ〜ＬＳｇのレイアウトとは略同一である。しかしながら、入力画像の線分ＬＳ１〜ＬＳ７において第１の帳票ＩＤの線分ＬＳｄと対応するのは、線分ＬＳ４である。すなわち、対応付け用のテーブル１３５における入力画像の線分ＬＳ３と対応するセルを第１の帳票ＩＤの線分ＬＳｄが登録されたセル１３６Ａとするのは誤りである。このように基準とするセルの対応付けを誤った場合、図２０に示したように、入力画像の各線分ＬＳ１，ＬＳ２，ＬＳ４〜ＬＳ７と対応するセルには第１の帳票ＩＤの線分が登録されていない。よって、線分ペア（ＬＳ３，ＬＳｄ）を基準として入力画像の線分と第１の帳票ＩＤの線分との対応付けを行った場合、対応付けられた線分の数Ｃ１は「１」となる。また、対応線分ペアに含まれない他の線分ペアを基準とした場合も、図１３の（ｂ）に示した線分ペア（ＬＳ３，ＬＳｃ），（ＬＳ５，ＬＳｅ），（ＬＳ６，ＬＳｆ），及び（ＬＳ５，ＬＳｇ）を除き、対応付けられた線分の数Ｃ１は「６」以下となる。すなわち、対応線分ペアに含まれない線分ペアも含めて入力画像の線分と第１の帳票ＩＤの線分との対応付けを行った場合でも、対応付けられた線分の数Ｃ１の最大値Ｃｍａｘは「７」となる。したがって、本実施形態に係る帳票認識処理では、詳細識別処理において対応付けを行う帳票間線分ペアの数を少なくしても、入力画像に基づいて認識対象である帳票の帳票ＩＤを正しく認識することが可能となる。よって、帳票認識装置１の処理負荷を軽減することが可能となる。
【０１４１】
なお、本実施形態では、帳票認識装置１とは別の情報処理装置により作成した大分類辞書及び詳細識別辞書を、それぞれ、大分類辞書記憶部１１０及び詳細識別辞書記憶部１２０に記憶させている。しかしながら、大分類辞書及び詳細識別辞書は、帳票認識装置１を用いて作成してもよい。
【０１４２】
図２１は、第１の実施形態に係る帳票認識装置の機能的構成の変形例を示す図である。
本実施形態に係る帳票認識装置１は、図２１に示すように、帳票画像受付部１０１と、候補抽出部１０２と、帳票ＩＤ特定部１０３と、認識結果出力部１０４とに加え、処理選択部１０５と、辞書作成部１０６と、を備える装置であってもよい。図２１の帳票認識装置１における帳票画像受付部１０１、候補抽出部１０２、帳票ＩＤ特定部１０３、及び認識結果出力部１０４のそれぞれの機能は、上記の通りである。
【０１４３】
図２１の帳票認識装置１における処理選択部１０５は、例えば、帳票認識装置１の利用者（オペレータ）が図示しない入力装置を操作して入力した情報に基づいて、帳票を認識する処理と、辞書を作成する処理とのいずれを行うかを選択する。帳票を認識する処理と対応付けられた情報が入力された場合、処理選択部１０５は、候補抽出部１０２に図１０Ａ〜図１０Ｆに示したような候補抽出処理を行わせる。一方、辞書を作成する処理と対応付けられた情報が入力された場合、処理選択部１０５は、辞書作成部１０６に、図８Ａ及び図８Ｂに示したような大分類辞書テーブルの作成処理と、図示しない詳細識別辞書作成処理と、を行わせる。
【０１４４】
このように、帳票認識装置１に辞書作成部１０６を設けることで、帳票認識装置１において大分類辞書テーブル１１１及び詳細識別辞書１２１を作成することが可能となり、辞書データを適宜更新することが可能となる。そのため、例えば、既存の帳票における線分のレイアウトの一部を変更した帳票についての辞書データを独自に作成して追加することが可能となる。
【０１４５】
また、図１に示した帳票認識装置１における大分類辞書記憶部１１０及び詳細識別辞書記憶部１２０は、帳票認識装置１とは別の辞書サーバに設けられていてもよい。
【０１４６】
図２２は、帳票認識システムの構成例を示す図である。
図２２に示したように、帳票認識システム６は、帳票認識装置１と、イメージスキャナ２と、表示装置３と、辞書サーバ７とを含む。辞書サーバ７は、大分類辞書記憶部７１０と、詳細識別辞書記憶部７２０とを備える。
【０１４７】
帳票認識装置１は、帳票画像受付部１０１と、候補抽出部１０２と、帳票ＩＤ特定部１０３と、認識結果出力部１０３と、通信部１０７と、を備える。図２２の帳票認識装置１における帳票画像受付部１０１、候補抽出部１０２、帳票ＩＤ特定部１０３、及び認識結果出力部１０４のそれぞれの機能は、上記の通りである。帳票認識装置１は、イメージスキャナ２で作成した帳票画像を取得した後、図１０Ａ〜図１０Ｆに示したような候補抽出処理と、図１５Ａ及び図１５Ｂに示したような詳細識別処理とを行い、詳細識別処理の結果を表示装置３に出力する。また、帳票認識装置１は、通信部１０７により、Local Area Network（ＬＡＮ）或いはインターネット等の通信ネットワーク８と通信可能に接続されている。帳票認識装置１の通信部１０７は、通信ネットワーク８を介して辞書サーバ７にアクセスし、辞書サーバ７の大分類辞書記憶部７１０から大分類辞書テーブルを取得するとともに、詳細識別辞書記憶部７２０から詳細識別辞書を取得する。
【０１４８】
このように、大分類辞書テーブル及び詳細識別辞書を辞書サーバ７で保持することにより、複数の帳票認識装置１で、大分類辞書テーブル及び詳細識別辞書を共有することが可能となる。そのため、例えば、新たな帳票についての線分情報を、効率よく辞書データに登録することが可能となる。また、各帳票認識装置１に大分類辞書記憶部１１０及び詳細辞書記憶部１２０を設けなくてもよいので、辞書データの増大による、帳票認識装置１の記憶部の容量の圧迫を抑制することが可能となる。
【０１４９】
また、図８Ａ及び図８Ｂのフローチャートは、本実施形態に係る大分類辞書の作成処理の一例に過ぎない。本実施形態に係る大分類辞書は、図８Ａ及び図８Ｂに示した手順に限らず、図８Ａ及び図８Ｂに示した処理ステップの一部を変更した手順で作成してもよいし、図８Ａ及び図８Ｂとは異なる既知の手順により作成してもよい。
【０１５０】
また、図１０Ａ〜図１０Ｆのフローチャートは、本実施形態に係る候補抽出処理の一例に過ぎない。本実施形態に係る候補抽出処理は、図１０Ａ〜図１０Ｆに示した手順に限らず、図１０Ａ〜図１０Ｆに示した処理ステップの一部を変更した手順で行ってもよい。
【０１５１】
更に、図１５Ａ及び図１５Ｂのフローチャートは、本実施形態に係る詳細識別処理の一例に過ぎない。本実施形態に係る詳細識別処理は、図１５Ａ及び図１５Ｂに示した手順に限らず、図１５Ａ及び図１５Ｂに示した処理ステップの一部を変更した手順で作成してもよいし、図１５Ａ及び図１５Ｂとは異なる既知の手順により作成してもよい。
【０１５２】
また、入力画像の線分と帳票ＩＤの候補の線分との帳票間線分ペアから対応線分ペアを抽出する際には、対応付けられた回数の多い線分ペアから順に所定数の線分ペアを抽出する代わりに、対応付けられた回数が所定回数以上である帳票間線分ペアを抽出してもよい。
【０１５３】
［第２の実施形態］
図２３は、第２の実施形態に係る帳票認識処理で用いる大分類辞書テーブルの登録情報の例を示す図である。
【０１５４】
本実施形態の帳票認識処理では、図２３に示すように、大分類辞書テーブル１１２のセルに登録する帳票ＩＤの配下に、線分ペアの各線分の線分ＩＤとともに、線分の角度、及び線分の色を登録する。線分の角度は、例えば、登録時に用いた帳票画像等のデータにおける水平方向を０度とし、当該水平方向から反時計回り方向の角度を正として算出する。すなわち、右肩上がりの線分の角度は正の値とし、右肩下がりの線分の角度は負の値とする。また、垂直方向に伸びる線分の角度は＋９０度とする。一方、線分の色は、例えば、登録時に用いた帳票画像等のデータにおいて１個の線分を表す複数の画素のＲＧＢ値の平均値とする。
【０１５５】
図２４Ａは、第２の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その１）である。図２４Ｂは、第２の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その２）である。なお、図２４Ａ及び図２４Ｂにおいて、第１の実施形態に係る大分類辞書の作成処理（図８Ａ及び図８Ｂ参照）における処理ステップと同じ処理ステップには、同じステップ番号（例えば、Ｓ１０）を付している。
【０１５６】
本実施形態に係る大分類辞書テーブル１１２は、例えば、帳票認識装置１とは別の情報処理装置５（図７参照）を用いて作成する。大分類辞書テーブル１１２を作成する処理を開始すると、情報処理装置５は、図２４Ａに示すように、まず、帳票画像及び付与する帳票ＩＤとを取得する（ステップＳ１０）。なお、帳票画像は、イメージスキャナで作成した帳票の画像データに限らず、情報処理装置５で動作するアプリケーション・ソフトウェアを用いて作成した原版の電子データ等でもよい。
【０１５７】
次に、情報処理装置５は、帳票画像から罫線を表す線分を抽出し、抽出した各線分の角度及び色を算出する（ステップＳ２５）。ステップＳ２５において、情報処理装置５は、既知の罫線抽出方法のいずれかに従って、帳票画像に含まれる線分を抽出して位置及び長さを表す情報を算出する。抽出した線分には、線分毎に固有の線分ＩＤを付与する。また、情報処理装置５は、帳票画像における水平方向を０度とし、水平方向から反時計回りの方向を正として、線分の延びる方向を表す角度を算出する。更に情報処理装置５は、線分の色として、例えば、１本の線分を表す複数の画素のそれぞれにおけるＲＧＢ値の平均値を算出する。
【０１５８】
次に、情報処理装置５は、抽出した線分をｙ座標の値の小さい順にソートする（ステップＳ１２）。ステップＳ１２において、ｙ座標の値が同じ線分が複数存在する場合、情報処理装置５は、それら線分を、例えば、線分ＩＤが小さい順、或いはｘ座標が小さい順にソートする。
【０１５９】
次に、情報処理装置５は、線分ペアにおける一方の線分のソート順位を表す変数ｉをｉ＝１に設定する（ステップＳ１３）。次に、情報処理装置５は、図２４Ｂに示すように、線分ペアにおける他方の線分のソート順位を表す変数ｊをｊ＝ｉ＋１に設定する（ステップＳ１４）。
【０１６０】
次に、情報処理装置５は、ソート順位がｉ番の線分とｊ番の線分との線分ペアに対する大分類辞書テーブル１１２における座標を算出する（ステップＳ１５）。ステップＳ１５において、情報処理装置５は、例えば、式（１−１）及び式（１−２）等を用いて、ｉ番の線分とｊ番の線分との関係（特徴量）を表す座標（ｕ，ｖ）を算出する。
【０１６１】
次に、情報処理装置５は、大分類辞書テーブルにおける算出した座標のセルに帳票ＩＤを登録するとともに、その帳票ＩＤの配下に線分ペアの各線分の線分ＩＤ、角度、及び色を登録する（ステップＳ２６）。なお、該当するセルに既に同じ帳票ＩＤが登録されている場合、情報処理装置５は、ステップＳ２６おいて、登録済みの帳票ＩＤの配下に線分ペアの各線分の線分ＩＤ、角度、及び色を追加登録する処理を行う。
【０１６２】
次に、情報処理装置５は、入力画像の線分にソート順位がｊ＋１番の線分があるか否かを判定する（ステップＳ１７）。ｊ＋１番の線分がある場合（ステップＳ１７；ＹＥＳ）、情報処理装置５は、変数ｊをｊ＋１に更新し（ステップＳ１８）、ステップＳ１５以降の処理を繰り返す。
【０１６３】
一方、ｊ＋１番の線分がない場合（ステップＳ１７；ＮＯ）、情報処理装置５は、次に、入力画像の線分にソート順位がｉ＋２番の線分があるか否かを判定する（ステップＳ１９）。ｉ＋２番の線分がある場合（ステップＳ１９；ＹＥＳ）、情報処理装置５は、変数ｉをｉ＋１に更新し（ステップＳ２０）、ステップＳ１４以降の処理を繰り返す。ｉ＋２番の線分がない場合（ステップＳ１９；ＮＯ）、情報処理装置５は、大分類辞書を作成する処理を終了する。
【０１６４】
大分類辞書テーブル１１２に登録する帳票が複数種類ある場合、情報処理装置５のオペレータは、帳票種毎に、情報処理装置５に図２４Ａ及び図２４Ｂに示した大分類辞書の作成処理を行わせる。
【０１６５】
なお、図２４Ａ及び図２４Ｂに示した大分類辞書の作成処理は、詳細識別辞書の作成処理とともに行われてもよい。すなわち、図２４Ａに示した大分類辞書の作成処理におけるステップＳ２５の後、ステップＳ２５で算出した線分の方向、線分の位置、及び長さを表す情報を含むレイアウト情報を作成し、当該レイアウト情報を帳票ＩＤと対応付けて詳細識別辞書に登録してもよい。更に、詳細識別辞書に登録するレイアウト情報は、各線分の角度及び色を含むものでもよい。
【０１６６】
本実施形態に係る帳票認識装置の機能的構成は、図１に示した帳票認識装置１と同様の構成である。本実施形態の帳票認識装置は、帳票認識処理として、図９に示したステップＳ１〜Ｓ４の処理を行う。なお、本実施形態の帳票認識処理における候補抽出処理（ステップＳ２）では、第１の実施形態に係る候補抽出処理におけるステップＳ２０１〜Ｓ２１６と対応する処理（図１０Ａ〜図１０Ｃ参照）として、図２５Ａ〜図２５Ｃに示す処理を行う。
【０１６７】
図２５Ａは、第２の実施形態に係る候補抽出処理の一部を説明するフローチャート（その１）である。図２５Ｂは、第２の実施形態に係る候補抽出処理の一部を説明するフローチャート（その２）である。図２５Ｃは、第２の実施形態に係る候補抽出処理の一部を説明するフローチャート（その３）である。なお、図２５Ａ〜図２５Ｃにおいて、第１の実施形態に係る候補抽出処理（図１０Ａ〜図１０Ｃ参照）における処理ステップと同じ処理ステップには、同じステップ番号（例えば、Ｓ２０１）を付している。
【０１６８】
本実施形態の帳票認識処理における候補抽出処理は、帳票認識装置１の候補抽出部１０２が行う。候補抽出部１０２は、帳票画像受付部１０１から認識対象の帳票の画像（入力画像）を受け取ると、まず、図２５Ａに示したような処理を行う。
【０１６９】
候補抽出部１０２は、まず、カウンタの値を初期化する（ステップＳ２０１）。ステップＳ２０１は、帳票ＩＤ抽出部１０２Ａが行う。ステップＳ２０１において、帳票ＩＤ抽出部１０２Ａは、例えば、下記のカウンタの値をそれぞれ０にする。
（１）大分類辞書に登録されている全帳票ＩＤのそれぞれについての、帳票ＩＤの線分と入力画像の線分との線分ペア（帳票間線分ペア）の対応付けの総数を計数するカウンタの値。
（２）帳票ＩＤの配下に登録された線分ペア（帳票内線分ペア）における線分のそれぞれについての、入力画像の線分と対応付けられた回数を計数するカウンタの値。
【０１７０】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像から線分を抽出し、抽出した各線分の角度及び色を算出する（ステップＳ２５０）。ステップＳ２５０において、帳票ＩＤ抽出部１０２Ａは、例えば、既知である罫線抽出処理のいずれかに従って入力画像から線分を抽出し、各線分に線分ＩＤを付与する。線分ＩＤには、例えば、１から始まる正の整数を用いる。また、帳票ＩＤ抽出部１０２Ａは、抽出した線分毎に線分の角度θ、及び線分の色を算出し、線分ＩＤと、角度θと、色とを対応付ける。
【０１７１】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像から抽出した線分をｙ座標の値が小さい順にソートする（ステップＳ２０３）。ステップＳ２０３の処理において、ｙ座標の値が同じ線分が複数存在する場合、それらの線分の並び順は、所定の規則（例えば、ｘ座標の値が小さい順にソートする等）に従って決定する。
【０１７２】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像の線分ペアにおける一方の線分のソート順位を表す変数ｉをｉ＝１に設定する（ステップＳ２０４）。次に、帳票ＩＤ抽出部１０２Ａは、線分ペアにおける他方の線分のソート順位を表す変数ｊをｊ＝ｉ＋１に設定する（ステップＳ２０５）。
【０１７３】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像におけるソート順位がｉ番の線分とｊ番の線分との線分ペアに対する大分類辞書テーブルの座標を算出する（ステップＳ２０６）。ステップＳ２０６において、帳票ＩＤ抽出部１０２Ａは、例えば、式（１−１）及び式（１−２）等を用いて線分ペアについての座標（ｕ，ｖ）を算出する。
【０１７４】
次に、帳票ＩＤ抽出部１０２Ａは、大分類辞書テーブルにおける算出した座標のセルを参照し、そのセルに帳票ＩＤが登録されているか否かを確認する（ステップＳ２０７）。帳票ＩＤが登録されていない場合（ステップＳ２０７；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、図２５Ｃに示すように、ｊ＋１番の線分があるか否かを判定する（ステップＳ１３）。
【０１７５】
一方、参照したセルに帳票ＩＤが登録されている場合（ステップＳ２０７；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、次に、図２５Ｂに示すように、セルに登録されている帳票ＩＤの１つを選択して参照する（ステップＳ２０８）。セルに登録されている帳票ＩＤが１つである場合、帳票ＩＤ抽出部１０２Ａは、その１つの帳票ＩＤを選択する。また、セルに登録された帳票ＩＤが複数である場合、帳票ＩＤ抽出部１０２Ａは、所定の選択規則に従って、ステップＳ２５１以降の処理を行っていない帳票ＩＤの１つを選択する。
【０１７６】
次に、帳票ＩＤ抽出部１０２Ａは、選択した帳票ＩＤの配下に登録された線分ペアの１つを選択する（ステップＳ２５１）。帳票ＩＤの配下に登録された線分ペアが１つである場合、帳票ＩＤ抽出部１０２Ａは、その１つの線分ペアを選択する。また、帳票ＩＤの配下に登録された線分ペアが複数である場合、帳票ＩＤ抽出部１０２Ａは、所定の選択規則に従って、ステップＳ２５２以降の処理を行っていない線分ペアの１つを選択する。
【０１７７】
次に、帳票ＩＤ抽出部１０２Ａは、帳票ＩＤの配下から選択した線分ペアと、入力画像の線分ペアとに基づいて、対応する線分同士の角度差及び色差を算出する（ステップＳ２５２）。例えば、帳票ＩＤの配下から選択した線分ペアが（ＬＳａ，ＬＳｂ）であり、入力画像の線分ペアが（ＬＳ１，ＬＳ２）である場合、帳票ＩＤ抽出部１０２Ａは、線分ＬＳａと線分ＬＳ１との角度差、及び線分ＬＳｂと線分ＬＳ２との角度差を算出する。また、帳票ＩＤ抽出部１０２Ａは、線分ＬＳａと線分ＬＳ１との色差、及び線分ＬＳｂと線分ＬＳ２との色差を算出する。
【０１７８】
次に、帳票ＩＤ抽出部１０２Ａは、算出した角度差が第１の閾値ＴＨ１よりも小さく、かつ算出した色差が第２の閾値ＴＨ２よりも小さいか否かを判定する（ステップＳ２５３）。ステップＳ２５３において、帳票ＩＤ抽出部１０２Ａは、算出した２個の角度差の値がいずれも第１の閾値ＴＨ１よりも小さい場合に、角度差が第１の閾値ＴＨ１よりも小さいと判定する。同様に、ステップＳ２５３において、帳票ＩＤ抽出部１０２Ａは、算出した２個の色差の値がいずれも第２の閾値ＴＨ２よりも小さい場合に、色差が第２の閾値ＴＨ２よりも小さいと判定する。
【０１７９】
角度差が第１の閾値ＴＨ１よりも小さく、かつ色差が第２の閾値ＴＨ２よりも小さい場合（ステップＳ２５３；ＹＥＳ）、帳票ＩＤ抽出部１０２は、次に、帳票ＩＤの線分ペアの線分と入力画像の線分ペアの線分との対応付けを行う（ステップＳ２５４）。例えば、帳票ＩＤの配下から選択した線分ペアが（ＬＳａ，ＬＳｂ）であり、入力画像の線分ペアが（ＬＳ１，ＬＳ２）である場合、帳票ＩＤ抽出部１０２Ａは、線分ＬＳａと線分ＬＳ１とを対応付けるとともに、線分ＬＳｂと線分ＬＳ２とを対応付ける。
【０１８０】
次に、帳票ＩＤ抽出部１０２Ａは、帳票ＩＤの配下の線分ペアにおける各線分に対応付けられたカウンタの値、及び帳票ＩＤに対応付けられたカウンタの値に１を加算する（ステップＳ２１０）。帳票ＩＤの配下の線分ペアにおける各線分に対応付けられたカウンタの値は、上記（２）のカウンタの値、すなわち帳票ＩＤの配下に登録された線分ペアにおける線分のそれぞれについての、入力画像の線分と対応付けられた回数を計数するカウンタの値である。また、帳票ＩＤに対応付けられたカウンタの値は、上記（１）のカウンタの値、すなわち帳票ＩＤの線分と入力画像の線分との線分ペア（帳票間線分ペア）の対応付けの総数を計数するカウンタの値である。
【０１８１】
次に、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０８で参照した帳票ＩＤの配下に登録されている線分ペアのなかに、入力画像の変数ｉ，ｊで表される線分ペアとの対応付けを行っていない線分ペアがあるか否かを判定する（ステップＳ２１１）。また、ステップＳ２５３において角度差が第１の閾値ＴＨ以上、又は色差が第２の閾値ＴＨ２以上であった場合（ステップＳ２５３；ＮＯ）、帳票ＩＤ抽出部１０２は、ステップＳ２５４及びＳ２１０の処理を省略してステップＳ２１１の判定を行う。
【０１８２】
対応付けを行っていない線分ペアがある場合（ステップＳ２１１；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２５１以降の処理を繰り返す。そして、全ての線分ペアで対応付けを行った場合（ステップＳ２１１；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、図２５Ｃに示すように、セル内にステップＳ２０８で参照していない帳票ＩＤがあるか否かを判定する（ステップＳ２１２）。セル内に参照していない帳票ＩＤがある場合（ステップＳ２１２；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０８以降の処理を繰り返す。
【０１８３】
そして、セル内の全ての帳票ＩＤを参照してステップＳ２５１以降の処理を行った場合（ステップＳ２１２；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、入力画像から抽出した線分にｊ＋１番の線分があるか否かを判定する（ステップＳ２１３）。また、大分類辞書テーブルにおけるステップＳ２０６で算出した座標のセルに帳票ＩＤが登録されていない場合（ステップＳ２０７；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０８〜Ｓ２１１の処理を省略してステップＳ２１３の判定を行う。
【０１８４】
ｊ＋１番の線分がある場合（ステップＳ２１３；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、変数ｊをｊ＋１に更新し（ステップＳ２１４）、ステップＳ２０６以降の処理を繰り返す。一方、ｊ＋１番の線分がない場合（ステップＳ２１３；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、入力画像から抽出した線分にｉ＋２番の線分があるか否かを判定する（ステップＳ２１５）。ｉ＋２番の線分がある場合（ステップＳ２１５；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、変数ｉをｉ＋１に更新し（ステップＳ２１６）、ステップＳ２０５以降の処理を繰り返す。
【０１８５】
そして、ｉ＋２番の線分がない場合（ステップＳ２１５；ＮＯ）、帳票ＩＤ抽出部１０２Ａを含む候補抽出部１０２は、続けて、図１０Ｄ〜図１０Ｆに示したステップＳ２１７〜Ｓ２３８の処理を行う。ステップＳ２３８の処理を終えると、候補抽出部１０２は、１つの入力画像（認識対象である帳票）についての候補抽出処理を終了する（リターン）。
【０１８６】
また、候補抽出処理の後、帳票認識装置１では、帳票ＩＤ特定部１０３が、帳票ＩＤ毎に、対応線分ペアを表す情報と、詳細識別辞書の線分情報とを参照して、認識対象である帳票の帳票ＩＤを特定する詳細認識処理を行う。本実施形態に係る詳細認識処理は、例えば、第１の実施形態で説明した詳細認識処理（図１５Ａ及び図１５Ｂ参照）でよい。帳票ＩＤ特定部１０３は、詳細識別処理により特定した帳票ＩＤを認識結果出力部１０４に出力する。認識結果出力部１０４は、入力画像、特定された帳票ＩＤ等を表示装置３に表示させる。
【０１８７】
このように、本実施形態の候補抽出処理では、帳票ＩＤの線分ペアと、入力画像の線分ペアとの対応付けを行う際に、各線分ペアの線分の長さ及び位置関係に加え、線分同士の角度差及び色差を用いて対応付けを行う。そのため、帳票ＩＤの候補を抽出する段階における帳票ＩＤの抽出精度が向上する。
【０１８８】
なお、本実施形態に係る帳票認識処理は、図１に示した帳票認識装置１で行ってもよいしよいし、図２１に示した帳票認識装置１が行ってもよい。更に、本実施形態に係る帳票認識処理は、図２２に示した帳票認識システム６における帳票認識装置１が行ってもよい。
【０１８９】
また、図２４Ａ及び図２４Ｂのフローチャートは、本実施形態に係る大分類辞書の作成処理の一例に過ぎない。同様に、図２５Ａ〜図２５Ｃのフローチャートは、本実施形態に係る候補抽出処理の一例に過ぎない。本実施形態に係る帳票認識処理において用いる大分類辞書（大分類辞書テーブル）は、例えば、帳票ＩＤの配下に線分ペアの各線分の線分ＩＤとともに、角度及び色のいずれか一方を登録したものでもよい。
【０１９０】
また、本実施形態のように帳票に含まれる線分についての情報として、線分の角度や色の情報を抽出する場合、帳票ＩＤ特定部１０３が行う詳細識別処理において線分の角度や色の情報を利用してもよい。すなわち、対応線分ペアにおける認識対象の帳票の線分と帳票ＩＤの線分との重なり度合いを算出する際に、線分の角度の差や色の差に応じて重なり度合いを加減してもよい。
【０１９１】
［第３の実施形態］
図２６は、第３の実施形態に係る帳票認識処理で用いる大分類辞書テーブルの登録情報の例を示す図である。
【０１９２】
本実施形態の帳票認識処理では、図２６に示すように、大分類辞書テーブル１１３のセルに帳票ＩＤを登録する際に、第１の実施形態で説明したように、帳票ＩＤの配下に線分ペア（帳票内線分ペア）の各線分の線分ＩＤを登録する。また、本実施形態に係る大分類辞書テーブル１１３のセルに帳票ＩＤを付与する際には、当該帳票ＩＤが付与された帳票の線分数を対応付けて登録する。帳票ＩＤとともにセルに登録する帳票の線分数は、帳票画像から抽出した線分の総数である。
【０１９３】
図２７Ａは、第３の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その１）である。図２７Ｂは、第３の実施形態に係る大分類辞書の作成処理を説明するフローチャート（その２）である。なお、図２７Ａ及び図２７Ｂにおいて、第１の実施形態に係る大分類辞書の作成処理（図８Ａ及び図８Ｂ）における処理ステップと同じ処理ステップには、同じステップ番号（例えば、Ｓ１０）を付している。
【０１９４】
本実施形態に係る大分類辞書テーブル１１３は、例えば、帳票認識装置１とは別の情報処理装置５（図７参照）を用いて作成する。大分類辞書テーブル１１３を作成する処理を開始すると、情報処理装置５は、図２７Ａに示すように、まず、帳票画像及び付与する帳票ＩＤとを取得する（ステップＳ１）。帳票画像は、イメージスキャナを用いて作成した帳票の画像データに限らず、情報処理装置５で動作するアプリケーション・ソフトウェアを用いて作成した原版の電子データ等でもよい。
【０１９５】
次に、情報処理装置５は、帳票画像から罫線を表す線分を抽出し、抽出した線分の総数を算出する（ステップＳ３０）。ステップＳ３０において、情報処理装置５は、既知の罫線抽出方法のいずれかに従って、帳票画像に含まれる線分を抽出して位置及び長さを表す情報を算出する。抽出した線分には、線分毎に固有の線分ＩＤを付与する。また、情報処理装置５は、線分を抽出した後、例えば、付与した線分ＩＤの数を計数し、その数を帳票画像から抽出した線分の総数とする。
【０１９６】
次に、情報処理装置５は、抽出した線分をｙ座標の値の小さい順にソートする（ステップＳ１２）。ステップＳ１２において、ｙ座標の値が同じ線分が複数存在する場合、情報処理装置５は、それら線分を、例えば、線分ＩＤが小さい順、或いはｘ座標が小さい順にソートする。
【０１９７】
次に、情報処理装置５は、線分ペアにおける一方の線分のソート順位を表す変数ｉをｉ＝１に設定する（ステップＳ１３）。次に、情報処理装置５は、図２７Ｂに示すように、線分ペアにおける他方の線分のソート順位を表す変数ｊをｊ＝ｉ＋１に設定する（ステップＳ１４）。
【０１９８】
次に、情報処理装置５は、ソート順位がｉ番の線分とｊ番の線分との線分ペアに対する大分類辞書テーブルの座標を算出する（ステップＳ１５）。ステップＳ１５において、情報処理装置５は、例えば、式（１−１）及び式（１−２）等を用いて、ｉ番の線分とｊ番の線分との関係（特徴量）を表す座標（ｕ，ｖ）を算出する。
【０１９９】
次に、情報処理装置５は、大分類辞書テーブルにおける算出した座標のセルに、帳票ＩＤ及び線分数を登録するとともに、帳票ＩＤの配下に線分ペアの各線分の線分ＩＤを登録する（ステップＳ３１）。なお、該当するセルに既に同じ帳票ＩＤが登録されている場合、情報処理装置５は、ステップＳ３１おいて、登録済みの帳票ＩＤの配下に線分ペアの各線分の線分ＩＤを追加登録する処理を行う。
【０２００】
次に、情報処理装置５は、入力画像の線分にソート順位がｊ＋１番の線分があるか否かを判定する（ステップＳ１７）。ｊ＋１番の線分がある場合（ステップＳ１７；ＹＥＳ）、情報処理装置５は、変数ｊをｊ＋１に更新し（ステップＳ１８）、ステップＳ１５以降の処理を繰り返す。
【０２０１】
一方、ｊ＋１番の線分がない場合（ステップＳ１７；ＮＯ）、情報処理装置５は、次に、入力画像の線分にソート順位がｉ＋２番の線分があるか否かを判定する（ステップＳ１９）。ｉ＋２番の線分がある場合（ステップＳ１９；ＹＥＳ）、情報処理装置５は、変数ｉをｉ＋１に更新し（ステップＳ２０）、ステップＳ１４以降の処理を繰り返す。ｉ＋２番の線分がない場合（ステップＳ１９；ＮＯ）、情報処理装置５は、大分類辞書を作成する処理を終了する。
【０２０２】
大分類辞書テーブル１１３に登録する帳票が複数種類ある場合、情報処理装置５のオペレータは、帳票種毎に、情報処理装置５に図２７Ａ及び図２７Ｂに示した大分類辞書の作成処理を行わせる。
【０２０３】
なお、図２７Ａ及び図２７Ｂに示した大分類辞書の作成処理は、詳細識別辞書の作成処理とともに行われてもよい。すなわち、図２７Ａに示した大分類辞書の作成処理におけるステップＳ３０の後、ステップＳ３０で算出した線分の位置及び長さを表す情報を含むレイアウト情報を作成し、当該レイアウト情報を帳票ＩＤと対応付けて詳細識別辞書に登録してもよい。
【０２０４】
本実施形態に係る帳票認識装置の機能的構成は、図１に示した帳票認識装置１と同様の構成である。本実施形態の帳票認識装置は、帳票認識処理として、図９に示したステップＳ１〜Ｓ４の処理を行う。なお、本実施形態の帳票認識処理における候補抽出処理（ステップＳ２）では、第１の実施形態に係る候補抽出処理におけるステップＳ２０１〜Ｓ２１６と対応する処理（図１０Ａ〜図１０Ｃ参照）として、図２８Ａ〜図２８Ｃに示す処理を行う。
【０２０５】
図２８Ａは、第３の実施形態に係る候補抽出処理の一部を説明するフローチャート（その１）である。図２８Ｂは、第３の実施形態に係る候補抽出処理の一部を説明するフローチャート（その２）である。図２８Ｃは、第３の実施形態に係る候補抽出処理の一部を説明するフローチャート（その３）である。なお、図２８Ａ〜図２８Ｃにおいて、第１の実施形態に係る候補抽出処理（図１０Ａ〜図１０Ｃ参照）における処理ステップと同じ処理ステップには、同じステップ番号（例えば、Ｓ２０１）を付している。
【０２０６】
本実施形態の帳票認識処理における候補抽出処理は、帳票認識装置１の候補抽出部１０２が行う。候補抽出部１０２は、帳票画像受付部１０１から認識対象の帳票の画像（入力画像）を受け取ると、まず、図２８Ａに示したような処理を行う。
【０２０７】
候補抽出部１０２は、まず、カウンタの値を初期化する（ステップＳ２０１）。ステップＳ２０１は、帳票ＩＤ抽出部１０２Ａが行う。ステップＳ２０１において、帳票ＩＤ抽出部１０２Ａは、例えば、下記のカウンタの値をそれぞれ０にする。
（１）大分類辞書に登録されている全帳票ＩＤのそれぞれについての、帳票ＩＤの線分と入力画像の線分との線分ペア（帳票間線分ペア）の対応付けの総数を計数するカウンタの値。
（２）帳票ＩＤの配下に登録された線分ペア（帳票内線分ペア）における線分のそれぞれについての、入力画像の線分と対応付けられた回数を計数するカウンタの値。
【０２０８】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像から線分を抽出し、抽出した線分の数を算出する（ステップＳ２６０）。ステップＳ２６０において、帳票ＩＤ抽出部１０２Ａは、例えば、既知である罫線抽出処理のいずれかに従って入力画像から線分を抽出し、各線分に線分ＩＤを付与する。線分ＩＤには、例えば、１から始まる正の整数を用いる。また、帳票画像から線分を抽出した後、帳票ＩＤ抽出部１０２Ａは、例えば、抽出した線分に付与した線分ＩＤの数に基づいて、抽出した線分の総数を計数する。
【０２０９】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像から抽出した線分をｙ座標の値が小さい順にソートする（ステップＳ２０３）。ステップＳ２０３の処理において、ｙ座標の値が同じ線分が複数存在する場合、それらの線分の並び順は、所定の規則（例えば、ｘ座標の値が小さい順にソートする等）に従って決定する。
【０２１０】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像の線分ペアにおける一方の線分のソート順位を表す変数ｉをｉ＝１に設定する（ステップＳ２０４）。次に、帳票ＩＤ抽出部１０２Ａは、線分ペアにおける他方の線分のソート順位を表す変数ｊをｊ＝ｉ＋１に設定する（ステップＳ２０５）。
【０２１１】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像におけるソート順位がｉ番の線分とｊ番の線分との線分ペアに対する大分類辞書テーブルの座標を算出する（ステップＳ２０６）。ステップＳ２０６において、帳票ＩＤ抽出部１０２Ａは、例えば、式（１−１）及び式（１−２）等を用いて線分ペアについての座標（ｕ，ｖ）を算出する。
【０２１２】
次に、帳票ＩＤ抽出部１０２Ａは、大分類辞書テーブルにおける算出した座標のセルを参照し、そのセルに帳票ＩＤが登録されているか否かを確認する（ステップＳ２０７）。帳票ＩＤが登録されていない場合（ステップＳ２０７；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、図２８Ｃに示すように、ｊ＋１番の線分があるか否かを判定する（ステップＳ２１３）。
【０２１３】
一方、参照したセルに帳票ＩＤが登録されている場合（ステップＳ２０７；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、次に、図２８Ｂに示すように、登録されている帳票ＩＤの１つを選択し、当該帳票ＩＤと対応付けられた線分数を読み出す（ステップＳ２６１）。セルに登録されている帳票ＩＤが１つである場合、帳票ＩＤ抽出部１０２Ａは、その１つの帳票ＩＤを選択する。また、セルに登録されている帳票ＩＤが複数である場合、帳票ＩＤ抽出部１０２Ａは、所定の選択規則に従って、ステップＳ２６２の処理を行っていない帳票ＩＤの１つを選択する。
【０２１４】
次に、帳票ＩＤ抽出部１０２Ａは、入力画像の線分数と、選択した帳票ＩＤと対応付けられた線分数の差分の絶対値が閾値ＴＨ３よりも小さいか否かを判定する（ステップＳ２６２）。線分数の差の絶対値が閾値ＴＨ３以上である場合（ステップＳ２６２；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、ステップＳ２１１の判定を行う。
【０２１５】
差分の絶対値が閾値ＴＨ３よりも小さい場合（ステップＳ２６２；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、次に、帳票ＩＤの配下に登録された線分ペアの１つを選択し、選択した線分ペアの線分と入力画像の線分ペアの線分との対応付けを行う（ステップＳ２０９）。帳票ＩＤの配下に登録された線分ペアが１つである場合、帳票ＩＤ抽出部１０２Ａは、その１つの線分ペアを選択する。また、帳票ＩＤの配下に登録された線分ペアが複数である場合、帳票ＩＤ抽出部１０２Ａは、所定の選択規則に従って、ステップＳ２０９以降の処理を行っていない線分ペアの１つを選択する。
【０２１６】
次に、帳票ＩＤ抽出部１０２Ａは、帳票ＩＤの配下の線分ペアにおける各線分に対応付けられたカウンタの値、及び帳票ＩＤに対応付けられたカウンタの値に１を加算する（ステップＳ２１０）。帳票ＩＤの配下の線分ペアにおける各線分に対応付けられたカウンタの値は、上記（２）のカウンタの値、すなわち帳票ＩＤの配下に登録された線分ペアにおける線分のそれぞれについての、入力画像の線分と対応付けられた回数を計数するカウンタの値である。また、帳票ＩＤに対応付けられたカウンタの値は、上記（１）のカウンタの値、すなわち帳票ＩＤの線分と入力画像の線分との線分ペア（帳票間線分ペア）の対応付けの総数を計数するカウンタの値である。
【０２１７】
次に、帳票ＩＤ抽出部１０２Ａは、ステップＳ２６１で選択した帳票ＩＤの配下に登録されている線分ペアのなかに、入力画像の変数ｉ，ｊで表される線分ペアとの対応付けを行っていない線分ペアがあるか否かを判定する（ステップＳ２１１）。また、入力画像の線分数と帳票ＩＤの線分数との差分の絶対値が閾値ＴＨ３よりも小さい場合（ステップＳ２６２；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０９〜Ｓ２１１の処理を省略してステップＳ２１１の判定を行う。
【０２１８】
対応付けを行っていない線分ペアがある場合（ステップＳ２１１；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２０９以降の処理を繰り返す。そして、全ての線分ペアで対応付けを行った場合（ステップＳ２１１；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、図２８Ｃに示すように、セル内にステップＳ２６１で参照（選択）していない帳票ＩＤがあるか否かを判定する（ステップＳ２１２）。セル内に参照していない帳票ＩＤがある場合（ステップＳ２１２；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２６１以降の処理を繰り返す。
【０２１９】
そして、セル内の全ての帳票ＩＤを参照してステップＳ２５１以降の処理を行った場合（ステップＳ２１２；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、入力画像から抽出した線分にｊ＋１番の線分があるか否かを判定する（ステップＳ２１３）。また、大分類辞書テーブルにおけるステップＳ２０６で算出した座標のセルに帳票ＩＤが登録されていない場合（ステップＳ２０７；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、ステップＳ２６１〜Ｓ２１１の処理を省略してステップＳ２１３の判定を行う。
【０２２０】
ｊ＋１番の線分がある場合（ステップＳ２１３；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、変数ｊをｊ＋１に更新し（ステップＳ２１４）、ステップＳ２０６以降の処理を繰り返す。一方、ｊ＋１番の線分がない場合（ステップＳ２１３；ＮＯ）、帳票ＩＤ抽出部１０２Ａは、次に、入力画像から抽出した線分にｉ＋２番の線分があるか否かを判定する（ステップＳ２１５）。ｉ＋２番の線分がある場合（ステップＳ２１５；ＹＥＳ）、帳票ＩＤ抽出部１０２Ａは、変数ｉをｉ＋１に更新し（ステップＳ２１６）、ステップＳ２０５以降の処理を繰り返す。
【０２２１】
そして、ｉ＋２番の線分がない場合（ステップＳ２１５；ＮＯ）、帳票ＩＤ抽出部１０２Ａを含む候補抽出部１０２は、続けて、図１０Ｄ〜図１０Ｆに示したステップＳ２１７〜Ｓ２３８の処理を行う。ステップＳ２３８の処理を終えると、候補抽出部１０２は、１つの入力画像（認識対象である帳票）についての候補抽出処理を終了する（リターン）。
【０２２２】
また、候補抽出処理の後、帳票認識装置１では、帳票ＩＤ特定部１０３が、帳票ＩＤ毎に、対応線分ペアを表す情報と、詳細識別辞書の線分情報とを参照して、認識対象である帳票の帳票ＩＤを特定する詳細認識処理を行う。本実施形態に係る詳細認識処理は、例えば、第１の実施形態で説明した詳細認識処理（図１５Ａ及び図１５Ｂ参照）でよい。帳票ＩＤ特定部１０３は、詳細識別処理により特定した帳票ＩＤを認識結果出力部１０４に出力する。認識結果出力部１０４は、入力画像、特定された帳票ＩＤ等を表示装置３に表示させる。
【０２２３】
このように、本実施形態の候補抽出処理では、候補抽出処理において帳票ＩＤの線分ペアと、入力画像の線分ペアとの対応付けを行う前に、帳票ＩＤの線分数と、入力画像の線分数との差分の絶対値を算出する。認識対象である帳票が選択した帳票ＩＤを付与した帳票である場合、両者の線分数は同じ値である。すなわち、線分数の差分の絶対値が閾値ＴＨ３よりも小さい場合には、認識対象である帳票が、選択した帳票ＩＤを付与した帳票である可能性が高い。そのため、線分数の差分の絶対値が閾値ＴＨ３よりも小さい場合には、帳票ＩＤの線分ペアと入力画像の線分ペアとの対応付けを行う。逆に、入力画像の線分数と選択した帳票ＩＤの線分数との差が大きい場合、認識対象である帳票が、選択した帳票ＩＤを付与した帳票である可能性は低い。そのため、線分数の差分の絶対値が閾値ＴＨ３以上である場合には、帳票ＩＤの線分ペアと入力画像の線分ペアと対応付けを省略する。これにより、認識対象である帳票が、選択した帳票ＩＤを付与した帳票である可能性が低い場合に、帳票間線分ペアに基づいて対応付けられた回数をカウントすることがない。よって、本実施形態によれば、例えば、正しくない対応付けにより対応付けられた回数の増加を防止し、より適切な帳票ＩＤ及び対応線分ペアを抽出することが可能となる。
【０２２４】
更に、認識対象である帳票が、選択した帳票ＩＤを付与した帳票である可能性は低い場合、ステップＳ２０９〜Ｓ２１１の処理を省略するので、候補抽出処理の処理負荷を軽減することが可能となる。
【０２２５】
なお、本実施形態に係る帳票認識処理は、図１に示した帳票認識装置１が行ってもよいしよいし、図２１に示した帳票認識装置１が行ってもよい。更に、本実施形態に係る帳票認識処理は、図２２に示した帳票認識システム６における帳票認識装置１が行ってもよい。
【０２２６】
また、図２７Ａ及び図２７Ｂのフローチャートは、本実施形態に係る大分類辞書の作成処理の一例に過ぎない。同様に、図２８Ａ〜図２８Ｃのフローチャートは、本実施形態に係る候補抽出処理の一例に過ぎない。本実施形態に係る帳票認識処理において用いる大分類辞書（大分類辞書テーブル）は、例えば、第２の実施形態で説明したように、帳票ＩＤの配下に線分ペアの各線分の線分ＩＤとともに角度及び色を登録したものでもよい。
【０２２７】
また、上記の各実施形態に係る帳票認識装置１は、例えば、コンピュータと、当該コンピュータに実行させるプログラムとを用いて実現することが可能である。以下、コンピュータとプログラムとを用いて実現される帳票認識装置１について、図２９を参照して説明する。
【０２２８】
図２９は、コンピュータのハードウェア構成を示す図である。
図２９に示すように、コンピュータ１５は、プロセッサ１５０１と、主記憶装置１５０２と、補助記憶装置１５０３と、入力装置１５０４と、出力装置１５０５と、媒体駆動装置１５０６と、通信制御装置１５０７と、を備える。コンピュータ１５におけるこれらの要素１５０１〜１５０７は、バス１５１０により相互に接続されており、要素間でのデータの受け渡しが可能になっている。
【０２２９】
プロセッサ１５０１は、Central Processing Unit（ＣＰＵ）やMicro Processing Unit（ＭＰＵ）等である。プロセッサ１５０１は、オペレーティングシステムを含む各種のプログラムを実行することによりコンピュータ１５の全体の動作を制御する。また、プロセッサ１５０１は、例えば、図９、図１０Ａ〜図１０Ｆ、並びに図１５Ａ及び図１５Ｂに示した帳票認識処理における演算処理を含む各種の演算処理を行う。
【０２３０】
主記憶装置１５０２は、図示しないRead Only Memory（ＲＯＭ）及びRandom Access Memory（ＲＡＭ）を含む。主記憶装置１５０２のＲＯＭには、例えば、コンピュータ１５の起動時にプロセッサ１５０１が読み出す所定の基本制御プログラム等が予め記録されている。また、主記憶装置１５０２のＲＡＭは、プロセッサ１５０１が、各種のプログラムを実行する際に必要に応じて作業用記憶領域として使用する。主記憶装置１５０２のＲＡＭは、例えば、認識対象の帳票の画像（入力画像）、帳票ＩＤの候補及び対応線分ペア、対応付けられた回数等の一時的な記憶に利用可能である。
【０２３１】
補助記憶装置１５０３は、例えば、フラッシュメモリ等の不揮発性メモリ（Solid State Drive（ＳＳＤ）を含む）やHard Disk Drive（ＨＤＤ）である。補助記憶装置１５０３には、プロセッサ１５０１によって実行される各種のプログラムや各種のデータ等を記憶させることができる。補助記憶装置１５０３は、例えば、図９、図１０Ａ〜図１０Ｆ、並びに図１５Ａ及び図１５Ｂに示した処理等を含む帳票認識プログラム等の記憶に利用可能である。また、補助記憶装置１５０３は、例えば、入力画像、大分類辞書テーブル、詳細識別辞書、帳票ＩＤの候補及び対応線分ペア等の記憶に利用可能である。
【０２３２】
入力装置１５０４は、例えば、キーボード装置１５０４Ａ、マウス装置１５０４Ｂ、及びイメージスキャナ２を含む。コンピュータ１５のオペレータ（利用者）がキーボード装置１５０４Ａやマウス装置１５０４Ｂに対し所定の操作を行うと、これらの装置１５０４Ａ，１５０４Ｂは、その操作内容に対応付けられている入力情報をプロセッサ１５０１に送信する。また、イメージスキャナ２は、帳票画像の入力に利用可能である。
【０２３３】
出力装置１５０５は、例えば、液晶表示装置等のディスプレイ装置やプリンタを含む。出力装置１５０５は、例えば、コンピュータ１５の動作状態や、帳票認識処理の結果等の表示に利用可能である。
【０２３４】
媒体駆動装置１５０６は、可搬型記憶媒体１６に記録されているプログラムやデータの読み出し、補助記憶装置１５０３に記憶されたデータ等の可搬型記憶媒体１６への書き込みを行う。コンピュータ１５が媒体駆動装置１５０６として利用可能な光ディスクドライブを搭載している場合、当該光ディスクドライブで認識可能な各種の光ディスクを可搬型記録媒体１６として利用可能である。可搬型記録媒体１６として利用可能な光ディスクには、例えば、Compact Disc（ＣＤ）、Digital Versatile Disc（ＤＶＤ）、Blu-ray Disc（Blu-rayは登録商標）等がある。また、可搬型記憶媒体１６としては、例えば、Secure  Digital（ＳＤ）規格のメモリカード（フラッシュメモリ）や、Universal Serial Bus（ＵＳＢ）規格のコネクタを備えたフラッシュメモリが利用可能である。可搬型記録媒体１６は、上記の帳票認識プログラム、入力画像、大分類辞書、及び詳細識別辞書等の記憶に利用可能である。
【０２３５】
通信制御装置１５０７は、コンピュータ１５をネットワークに接続し、ネットワークを介したコンピュータ１５と他の電子機器との各種通信を制御する装置である。通信制御装置１５０７は、例えば、図２２に示した帳票認識システム６における大分類辞書及び詳細識別辞書の取得に利用可能である。
【０２３６】
コンピュータ１５は、オペレータが入力装置１５０４を用いて帳票認識処理を含むプログラムの開始命令を入力すると、プロセッサ１５０１が補助記憶装置１５０３等からプログラムを読み出して実行する。この際、プロセッサ１５０１は、帳票認識装置１の帳票画像受付部１０１、候補抽出部１０２、帳票ＩＤ特定部１０３、及び認識結果出力部１０４等として機能（動作）する。また、コンピュータ１５が帳票認識処理を含むプログラムを実行した際には、主記憶装置１５０２のＲＡＭ、補助記憶装置１５０３、及び可搬型記憶媒体１６等が、大分類辞書記憶部１１０、及び詳細識別辞書記憶部１２０として機能する。
【０２３７】
なお、帳票認識装置１として動作させるコンピュータ１５は、図１５に示した全ての要素１５０１〜１５０７を含む必要はなく、用途や条件に応じて一部の要素を省略することも可能である。例えば、コンピュータ１５は、媒体駆動装置１５０６や通信制御装置１５０７が省略されたものであってもよい。
【０２３８】
以上記載した各実施形態に関し、更に以下の付記を開示する。
（付記１）
コンピュータが、
認識対象の帳票の画像に含まれる複数の線分から選択した線分の組み合わせで構成される複数の第１の線分ペアを抽出し、
抽出した前記複数の第１の線分ペアのそれぞれを構成する線分同士の関係を表す第１の特徴量を算出し、
算出した前記第１の線分ペアの前記第１の特徴量と、予め登録された帳票識別子と対応付けられた複数の第２の線分ペアを構成する線分同士の第２の特徴量とに基づいて、前記認識対象の帳票の帳票識別子の候補を抽出し、
前記第１の線分ペアにおける各線分と、前記帳票識別子の候補と対応付けられた前記第２の線分ペアにおける各線分との対応関係に基づいて、前記帳票識別子の候補と対応付けられた線分と、前記認識対象の帳票の線分との対応線分ペアを抽出し、
前記対応線分ペアにおける前記認識対象の帳票から抽出した線分と、前記帳票識別子の候補と対応付けられた線分との重なり度合に基づいて、前記認識対象の帳票の帳票識別子を特定する、
処理を実行することを特徴とする帳票認識方法。
（付記２）
前記対応線分ペアを抽出する処理において、前記コンピュータは、前記帳票識別子の候補と対応付けられた線分の数よりも少ない数の前記対応線分ペアを抽出する、
ことを特徴とする付記１に記載の帳票認識方法。
（付記３）
前記第１の特徴量を算出する処理において、前記コンピュータは、前記線分ペアにおける各線分の長さと、前記線分同士の位置関係とに基づいて表される値を前記第１の特徴量として算出する、
ことを特徴とする付記１に記載の帳票認識方法。
（付記４）
前記帳票識別子には、前記第２の線分ペアにおける各線分の角度又は色の情報が対応付けられており、
認識対象の帳票の画像から前記複数の第１の線分ペアを抽出する処理において、前記コンピュータは、抽出した前記線分の角度及び色を算出し、
前記帳票識別子の候補を抽出する処理において、前記コンピュータは、前記第１の特徴量に基づいて抽出される前記帳票識別子の候補のうち、前記第１の線分ペアにおける線分と前記第２の線分ペアにおける線分との角度の差又は色の差が所定の閾値範囲内となる前記帳票識別子の候補のみを抽出する、
ことを特徴とする付記１に記載の帳票認識方法。
（付記５）
前記帳票識別子には、前記第２の線分ペアにおける各線分の角度及び色のいずれかの情報が対応付けられており、
認識対象の帳票の画像から前記複数の第１の線分ペアを抽出する処理において、前記コンピュータは、抽出した前記線分の角度及び色を算出し、
前記帳票識別子の候補を抽出する処理において、前記コンピュータは、前記第１の特徴量と前記第２の特徴量とに基づいて抽出される前記帳票識別子の候補のうち、前記第１の線分ペアにおける線分と前記第２の線分ペアにおける線分との角度の差及び色の差が所定の閾値範囲内となる前記帳票識別子の候補のみを抽出する、
ことを特徴とする付記１に記載の帳票認識方法。
（付記６）
前記帳票識別子には、当該帳票識別子が付与された帳票における線分の数が対応付けられており、
前記認識対象の帳票の画像から前記複数の第１の線分ペアを抽出する処理において、前記コンピュータは、前記認識対象の帳票の画像に含まれる前記線分の数を算出し、
前記帳票識別子の候補を抽出する処理において、前記コンピュータは、前記第１の特徴量と前記第２の特徴量とに基づいて抽出される前記帳票識別子の候補のうち、前記認識対象の帳票の画像に含まれる前記線分の数と前記帳票識別子に対応付けられた前記線分の数との差が所定の閾値範囲内となる前記帳票識別子の候補のみを抽出する、
ことを特徴とする付記１に記載の帳票認識方法。
（付記７）
前記対応線分ペアを抽出する処理において、前記コンピュータは、
前記帳票識別子の候補と対応付けられた前記第２の線分ペアの線分毎に、前記第１の線分ペアの線分のうち、前記第２の線分ペアの線分と線分ペアとして対応付けられた線分及び対応付けられた回数を算出し、
前記第２の線分の線分ペアと前記第１の線分ペアの線分との線分ペアのうち、前記対応付けられた回数が多い線分同士の線分ペアから順に所定数の線分ペアを前記対応線分ペアとして抽出する、
ことを特徴とする付記１に記載の帳票認識方法。
（付記８）
前記対応線分ペアを抽出する処理において、前記コンピュータは、
前記帳票識別子の候補と対応付けられた前記第２の線分ペアの線分毎に、前記第１の線分ペアの線分のうち、前記第２の線分ペアの線分と線分ペアとして対応付けられた線分及び対応付けられた回数を算出し、
前記第２の線分の線分ペアと前記第１の線分ペアの線分との線分ペアのうち、前記対応付けられた回数が所定の回数よりも多い線分同士の線分ペアを前記対応線分ペアとして抽出する、
ことを特徴とする付記１に記載の帳票認識方法。
（付記９）
認識対象の帳票の画像に含まれる複数の線分から抽出した複数の第１の線分ペアのそれぞれを構成する線分同士の関係を表す第１の特徴量を算出し、前記第１の線分ペアの前記第１の特徴量と、予め登録された帳票識別子と対応付けられた複数の第２の線分ペアを構成する線分同士の第２の特徴量とに基づいて、前記認識対象の帳票の帳票識別子の候補を抽出する帳票識別子抽出部と、
前記第１の線分ペアにおける各線分と、前記帳票識別子の候補と対応付けられた前記第２の線分ペアにおける各線分との対応関係に基づいて、前記帳票識別子の候補と対応付けられた線分と、前記認識対象の帳票の線分との対応線分ペアを抽出する対応線分ペア抽出部と、
前記対応線分ペアにおける前記認識対象の帳票から抽出した線分と、前記帳票識別子の候補と対応付けられた線分との重なり度合いに基づいて、前記認識対象の帳票の帳票識別子を特定する特定部と、
を備えることを特徴とする帳票認識装置。
（付記１０）
認識対象の帳票の画像に含まれる複数の線分から選択した線分の組み合わせで構成される複数の第１の線分ペアを抽出し、
抽出した前記複数の第１の線分ペアのそれぞれを構成する線分同士の関係を表す第１の特徴量を算出し、
前記第１の線分ペアの前記第１の特徴量と、予め登録された帳票識別子と対応付けられた複数の第２の線分ペアを構成する線分同士の第２の特徴量とに基づいて、前記認識対象の帳票の帳票識別子の候補を抽出し、
前記第１の線分ペアにおける各線分と、前記帳票識別子の候補と対応付けられた前記第２の線分ペアにおける各線分との対応関係に基づいて、前記帳票識別子の候補と対応付けられた線分と、前記認識対象の帳票の線分との対応線分ペアを抽出し、
前記対応線分ペアにおける前記認識対象の帳票から抽出した線分と、前記帳票識別子の候補と対応付けられた線分との重なり度合いに基づいて、前記認識対象の帳票の帳票識別子を特定する、
処理をコンピュータに実行させる帳票認識プログラム。
（付記１１）
帳票の画像に含まれる複数の線分から選択した線分の組み合わせで構成される複数の線分ペアのそれぞれにおける線分同士の関係を表す特徴量と対応付けられたセルに、前記帳票に付与した帳票識別子が登録されるとともに、当該帳票識別子の配下に前記線分ペアの各線分の線分識別子が登録されている、
ことを特徴とする帳票認識用辞書データ。
（付記１２）
前記線分識別子に、当該線分識別子が付与された線分の角度及び色のいずれかの情報が対応付けられている、
ことを特徴とする付記１１に記載の帳票認識用辞書データ。
（付記１３）
前記帳票識別子に、当該帳票識別子が付与された帳票における線分の数が対応付けられている、
ことを特徴とする付記１１に記載の帳票認識用辞書データ。
【符号の説明】
【０２３９】
１  帳票認識装置
１０１，５０１  帳票画像受付部
１０２  候補抽出部
１０２Ａ  帳票ＩＤ抽出部
１０２Ｂ  対応線分ペア抽出部
１０３  帳票ＩＤ特定部
１０４  認識結果出力部
１０５  処理選択部
１０６  辞書作成部
１０７  通信部
１１０，７１０  大分類辞書記憶部
１１１，１１２，１１３  大分類辞書テーブル
１２０，７２０  詳細識別辞書記憶部
１２１  詳細識別辞書
２，２０  イメージスキャナ
３，３０  表示装置
４，４Ａ，４Ｂ，４Ｃ  帳票
５  情報処理装置
５０２  帳票ＩＤ付与部
５０３  線分抽出部
５０４  登録部
５１０  記憶部
６  帳票認識システム
７  辞書サーバ
８  通信ネットワーク
１５  コンピュータ
１５０１  プロセッサ
１５０２  主記憶装置
１５０３  補助記憶装置
１５０４  入力装置
１５０４Ａ  キーボード装置
１５０４Ｂ  マウス装置
１５０５  出力装置
１５０６  媒体駆動装置
１５０７  通信制御装置
１６  可搬型記録媒体
【図１】
0006690089.tif 000002
【図２】
0006690089.tif 000003
【図３】
0006690089.tif 000004
【図４】
0006690089.tif 000005
【図５】
0006690089.tif 000006
【図６】
0006690089.tif 000007
【図７】
0006690089.tif 000008
【図８Ａ】
0006690089.tif 000009
【図８Ｂ】
0006690089.tif 000010
【図９】
0006690089.tif 000011
【図１０Ａ】
0006690089.tif 000012
【図１０Ｂ】
0006690089.tif 000013
【図１０Ｃ】
0006690089.tif 000014
【図１０Ｄ】
0006690089.tif 000015
【図１０Ｅ】
0006690089.tif 000016
【図１０Ｆ】
0006690089.tif 000017
【図１１】
0006690089.tif 000018
【図１２】
0006690089.tif 000019
【図１３】
0006690089.tif 000020
【図１４】
0006690089.tif 000021
【図１５Ａ】
0006690089.tif 000022
【図１５Ｂ】
0006690089.tif 000023
【図１６】
0006690089.tif 000024
【図１７】
0006690089.tif 000025
【図１８】
0006690089.tif 000026
【図１９】
0006690089.tif 000027
【図２０】
0006690089.tif 000028
【図２１】
0006690089.tif 000029
【図２２】
0006690089.tif 000030
【図２３】
0006690089.tif 000031
【図２４Ａ】
0006690089.tif 000032
【図２４Ｂ】
0006690089.tif 000033
【図２５Ａ】
0006690089.tif 000034
【図２５Ｂ】
0006690089.tif 000035
【図２５Ｃ】
0006690089.tif 000036
【図２６】
0006690089.tif 000037
【図２７Ａ】
0006690089.tif 000038
【図２７Ｂ】
0006690089.tif 000039
【図２８Ａ】
0006690089.tif 000040
【図２８Ｂ】
0006690089.tif 000041
【図２８Ｃ】
0006690089.tif 000042
【図２９】
0006690089.tif 000043