(57)【要約】      （修正有）【課題】罫線の増減があっても正しく処理対象セルの特定を行うことが可能となる。【解決手段】罫線により構成される表構造を持つ帳票の基準表構造データを保持する表構造データ辞書と、帳票と同種別の帳票イメージが入力されると、対応する前記表構造データを用いて処理対象のセル領域を特定する処理対象領域決定部を有する帳票処理装置において、さらに前記基準表構造データのバリエーション情報を格納したサブパターン辞書を備え、処理対象領域決定部は、前記帳票イメージの表構造に含まれる罫線情報と前記基準表構造データに含まれる罫線情報が一致しない場合に、前記サブパターン辞書を参照し、処理対象領域の決定を行う。【選択図】図１
2006127451.tif 000002
【特許請求の範囲】
【請求項１】
罫線により構成される表構造を持つ帳票の基準表構造データを保持する表構造データ辞書と、前記帳票と同種別の帳票イメージが入力されると、対応する前記表構造データを用いて処理対象のセル領域を特定する処理対象領域決定部を有する帳票処理装置において、
さらに前記基準表構造データのバリエーション情報を格納したサブパターン辞書を備え、
前記処理対象領域決定部は、前記帳票イメージの表構造に含まれる罫線情報と前記基準表構造データに含まれる罫線情報が一致しない場合に、前記サブパターン辞書を参照し、処理対象領域の決定を行う、
帳票処理装置。
【請求項２】
前記表構造データは親セル領域ごとに複数の子セル領域の情報を含む階層構造からなり、親セル領域は子セル領域の構造にバリエーションがあるかどうかを示すサブパターン有無情報を持ち、サブパターン辞書に格納された前記バリエーション情報とは前記親セル領域に対応する部分の表構造からなるサブパターンデータであり、
前記処理対象領域決定部は、各親セル領域ごとに、前記帳票イメージの表構造に含まれる罫線の数が前記基準表構造データに含まれる罫線の数と一致しない場合、対応する前記サブパターンデータと比較を行う、
請求項１に記載の帳票処理装置。
【請求項３】
前記処理対象領域決定部は、
前記親セルごとに、前記帳票イメージの表構造と前記基準表構造データとを比較して子セルの罫線が一致するか否かを判定する対応関係判定手段と、
一致しない場合には、前記位置情報により正しい罫線を特定するサブパターン判定手段とを備えており、
前記サブパターン判定手段は、前記帳票イメージの各子セルを形成する罫線と、前記サブパターンデータに含まれる罫線とが一致する場合に該サブパターンを使用すべきことを判定する、
請求項２に記載の帳票処理装置。
【請求項４】
前記サブパターン辞書は１つの親セル領域ごとに１または２以上のサブパターンデータを登録可能であり、
前記サブパターン判定手段は、サブパターンデータが複数存在する場合には、前記帳票イメージの各子セルを形成する罫線と、各サブパターンデータとを順次比較し、一致するサブパターンを選択する、
請求項３に記載の帳票処理装置。
【請求項５】
前記表構造データは親セル領域ごとに複数の子セル領域の情報を含む階層構造からなり、親セル領域は子セル領域の構造にバリエーションがあるかどうかを示すサブパターン有無情報を持ち、サブパターン辞書に格納された前記バリエーション情報とは前記親セル領域に対応する部分の表構造からなるサブパターンデータであり、
前記処理対象領域決定部は、各親セル領域ごとに、前記帳票イメージの表構造に含まれる罫線の数が前記基準表構造データに含まれる罫線の数と罫線の位置の少なくともいずれか一方が一致しない場合、対応する前記サブパターンデータと比較を行う、
請求項１に記載の帳票処理装置。
【請求項６】
前記処理対象領域決定部は、
前記親セルごとに、前記帳票イメージの表構造と前記基準表構造データとを比較して子セルの罫線が一致するか否かを判定する対応関係判定手段と、
一致しない場合には、前記位置情報により正しい罫線を特定するサブパターン判定手段とを備えており、
前記サブパターン判定手段は、前記帳票イメージの各子セルを形成する罫線と、前記サブパターンデータに含まれる罫線の数と罫線の位置の少なくともいずれか一方が一致する場合に該サブパターンを使用すべきことを判定する、
請求項５に記載の帳票処理装置。
【請求項７】
前記サブパターン辞書は１つの親セル領域ごとに１または２以上のサブパターンデータを登録可能であり、
前記サブパターン判定手段は、サブパターンデータが複数存在する場合には、前記帳票イメージの各子セルを形成する罫線と、各サブパターンデータとを順次比較し、一致するサブパターンを選択する、
請求項６に記載の帳票処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、罫線により構成される表構造を持つ帳票の、文字認識等の処理対象領域を効率よく決定する帳票処理装置に関するものである。
【背景技術】
【０００２】
一般に複数の項目によって構成される帳票は、各項目を罫線によって区切ったセルとして表現した、表構造を持つことが多い。このような帳票を表形式帳票と呼ぶ。近年文字認識分野では、このような表形式の帳票に書かれた文字の認識も行われている。表形式の帳票の例としては、例えば以下の２種類の帳票がある。第１は、縦横の罫線で区分けされているセルの寸法や、帳票の基準点（例えば、画像左上端点）に対する各セルの位置が、所定通りに固定されている帳票（以下、書式固定帳票とする）である。第２は各セル寸法や各セルの帳票基準点に対する絶対的な位置は固定されていないが、各セルの並び順など、各セルの論理的な位置関係が所定通りとされている帳票（以下、様式固定帳票とする）である。具体的には、○○項目の欄の下には△△項目欄があり、かつこれらの項目欄の右側にはそれぞれ、記入欄があるというように論理的な位置関係が所定通りとされている帳票である。
【０００３】
従来方法として、帳票のセルを検出する方法として次のようなものがある。まず、文字認識等の処理を行うべきセル（処理対象セル）を持つ帳票の、基準となる帳票（基準帳票）の罫線情報・セル情報等を基準表構造データとして、予め表構造データ辞書に格納しておく。そして、同種別の帳票のイメージが入力されると、該帳票イメージから罫線を抽出する。そして、該帳票イメージの前記検出した罫線により区分けされるセル領域から、前記表構造データに基づいて、処理対象セル領域を特定する。
（例えば、非特許文献１参照）。
【非特許文献１】「沖電気研究開発」、沖電気工業株式会社、Ｖｏｌ．６５  ＮＯ．１  ＪＡＮ．１９９８、ｐ．５１、「ＯＣＲ制限緩和技術」（石川、清水、田辺）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、従来方法では、セルの構造の一部にバリエーションがある場合、すなわち罫線の増減がある場合には異なる表構造と扱われるので、基準表構造データでは処理対象セルの決定が出来なかった。このため、罫線が１本でも増減すると、そのような表構造を処理するには、新たな基準表構造データとして表構造データ辞書に登録しなくてはならない。このため、複数の基準表構造データに対して同じ処理を何度も繰り返す必要があった。
そこで、セルの構造の一部にバリエーションがある場合は、その部分のみのバリエーション情報を登録し、その情報より処理対象セルを特定する帳票処理装置が望まれていた。
【課題を解決するための手段】
【０００５】
本発明の帳票処理装置は以下の構成を備える。
＜構成１＞
罫線により構成される表構造を持つ帳票の基準表構造データを保持する表構造データ辞書と、前記帳票と同種別の帳票イメージが入力されると、対応する前記表構造データを用いて処理対象のセル領域を特定する処理対象領域決定部を有する帳票処理装置において、さらに前記基準表構造データのバリエーション情報を格納したサブパターン辞書を備え、前記処理対象領域決定部は、前記帳票イメージの表構造に含まれる罫線情報と前記基準表構造データに含まれる罫線情報が一致しない場合に、前記サブパターン辞書を参照し、処理対象領域の決定を行う。
＜構成２＞
前記表構造データは親セル領域ごとに複数の子セル領域の情報を含む階層構造からなり、親セル領域は子セル領域の構造にバリエーションがあるかどうかを示すサブパターン有無情報を持ち、サブパターン辞書に格納された前記バリエーション情報とは前記親セル領域に対応する部分の表構造からなるサブパターンデータであり、前記処理対象領域決定部は、各親セル領域ごとに、前記帳票イメージの表構造に含まれる罫線の数が前記基準表構造データに含まれる罫線の数と一致しない場合、対応する前記サブパターンデータと比較を行う。
＜構成３＞
前記処理対象領域決定部は、前記親セルごとに、前記帳票イメージの表構造と前記基準表構造データとを比較して子セルの罫線が一致するか否かを判定する対応関係判定手段と、一致しない場合には、前記位置情報により正しい罫線を特定するサブパターン判定手段とを備えており、前記サブパターン判定手段は、前記帳票イメージの各子セルを形成する罫線と、前記サブパターンデータに含まれる罫線一致する場合に該サブパターンを使用すべきことを判定する。
＜構成４＞
前記サブパターン辞書は１つの親セル領域ごとに１または２以上のサブパターンデータを登録可能であり、前記サブパターン判定手段は、サブパターンデータが複数存在する場合には、前記帳票イメージの各子セルを形成する罫線と、各サブパターンデータとを順次比較し、一致するサブパターンを選択する。
＜構成５＞
前記表構造データは親セル領域ごとに複数の子セル領域の情報を含む階層構造からなり、親セル領域は子セル領域の構造にバリエーションがあるかどうかを示すサブパターン有無情報を持ち、サブパターン辞書に格納された前記バリエーション情報とは前記親セル領域に対応する部分の表構造からなるサブパターンデータであり、前記処理対象領域決定部は、各親セル領域ごとに、前記帳票イメージの表構造に含まれる罫線の数が前記基準表構造データに含まれる罫線の数と罫線の位置の少なくともいずれか一方が一致しない場合、対応する前記サブパターンデータと比較を行う。
＜構成６＞
前記処理対象領域決定部は、
前記親セルごとに、前記帳票イメージの表構造と前記基準表構造データとを比較して子セルの罫線が一致するか否かを判定する対応関係判定手段と、一致しない場合には、前記位置情報により正しい罫線を特定するサブパターン判定手段とを備えており、前記サブパターン判定手段は、前記帳票イメージの各子セルを形成する罫線と、前記サブパターンデータに含まれる罫線の数と罫線の位置の少なくともいずれか一方が一致する場合に該サブパターンを使用すべきことを判定する。
＜構成７＞
前記サブパターン辞書は１つの親セル領域ごとに１または２以上のサブパターンデータを登録可能であり、前記サブパターン判定手段は、サブパターンデータが複数存在する場合には、前記帳票イメージの各子セルを形成する罫線と、各サブパターンデータとを順次比較し、一致するサブパターンを選択する。
【発明の効果】
【０００６】
辞書に表構造データを登録する際、各セル領域に分割する罫線の位置情報を登録し、その情報より表構造を推測し処理対象セルを特定することにより、罫線の増減があっても正しく処理対象セルの特定を行うことが可能となる。
【発明を実施するための最良の形態】
【０００７】
以下に、本発明の各実施例について説明する。
【実施例１】
【０００８】
本実施例において、処理対象セルに対して行う処理は文字認識であり、文字認識装置１０に、本実施例の処理対象セル決定処理を行う認識対象領域決定部２０を適応している。
【０００９】
＜実施例１の構成＞
図１は、本発明の第１の実施例を示す構成図である。
【００１０】
文字認識装置１０は、認識対象領域決定部２０を備える。認識対象領域決定部２０は、罫線に区分けされている多数のセルを含む表（すなわち決定対象である入力帳票内の表）のイメージから、特定の１又は複数のセルに対応する領域および又はセル以外の認識対象領域を決定する。
【００１１】
認識対象領域決定部２０は、表構造データ辞書２１、表別処理制御手段２３、罫線検出手段２２、対応関係判定手段２４、サブパターン判定手段２５、セル決定手段２６、サブパターン辞書２７を具える。
【００１２】
表構造データ辞書２１は、基準帳票内の表の罫線情報・セル情報等を基準表構造データとして格納している。表構造データについては後述する。
【００１３】
また、サブパターン辞書２７は、基準表構造データの一部にサブパターンが存在する場合に、当該部分のサブパターンデータを格納している。サブパターンは、特に処理対象セルを含む領域に対して設定される。処理対象セルを含まない部分にサブパターンを設定しても、処理対象セルの特定につながらないからである。
【００１４】
なお、基準帳票内の表数は複数の場合もあり得る。その場合は、表別処理制御手段２３にて、罫線検出手段２２、対応関係判定手段２４とセル決定手段２６を制御し、基準帳票内の各表ごとに罫線検出、対応関係判定を行う。
【００１５】
また、罫線検出手段２２は、処理対象領域を決定すべき入力帳票（入力帳票）のイメージから罫線を検出し、その罫線データを罫線データメモリ６１に格納する。
【００１６】
また、対応関係判定手段２４は罫線検出手段２２で検出し、罫線データメモリ６１に格納されている罫線と表構造データ辞書２１に格納してある基準表構造データとを比較し、罫線の数が正しいか判定する。
【００１７】
また、サブパターン判定手段２５は、対応関係判定手段２４が正しいと判定できなかった場合に、サブパターン辞書２７を参照し、一致するサブパターンがあるかを判定する。一致するサブパターンがあれば、当該セル領域に対して当該サブパターンを適用すべきことを図示しない記憶部に保存する。
【００１８】
また、セル領域決定手段２６は、罫線データメモリ６１の罫線データの罫線より区分けされる前記イメージ上の各セル領域から、表構造データ辞書２１に格納してある表構造データもしくはサブパターン辞書２７に格納押してあるサブパターンデータに基づいて、処理対象セル領域を決定し、その領域データを認識領域データメモリ６３に格納する。
【００１９】
また、文字認識手段４０は、認識対象領域決定部２０で決定され、認識領域データメモリ６３に格納されている領域データ内に記入されている文字を認識する。例えば、認識対象領域の文字列から文字を切り出し、該切り出した文字の特徴を抽出する。そして、該抽出した認識対象の文字の特徴を、予め用意した辞書内の各文字の特徴と照合して、候補文字を決定するという手段で構成できる。
【００２０】
また、ＣＰＵ５０は、認識対象領域決定部２０および文字認識手段３０を制御する。
【００２１】
また、罫線データメモリ６１、帳票イメージメモリ６２、認識領域データメモリ６３は、メモリやハードディスク等、任意好適な記憶媒体で構成されている。
【００２２】
また、この文字認識装置１０には、帳票のイメージを該帳票から読み取るためのスキャナ７１が備わっている。また、スキャナから読み取ったイメージを格納するための、帳票イメージメモリ７３を備えている。
【００２３】
以下、上記の構成についてさらに詳細に説明する。
【００２４】
図２は本発明において処理対象となる表形式帳票の基準帳票の例である。帳票イメージ２００は、処理対象となる帳票の基準帳票のイメージである。ここで基準帳票とは、処理対象となる帳票と同じ表構造を持つ帳票を指す。前述の書式固定帳票の場合は、例えば複数枚存在する中から１枚を選択して基準帳票とする。前述の様式固定帳票の場合は、罫線の長さや各セルのサイズがその様式の中で最も平均的な帳票を選択して基準帳票とする。
【００２５】
表領域２１０ａは、表全体を指す。罫線２２０ａ〜２２０ｄは、表領域２１０ａを各セル領域に区切っている。処理対象領域２３０ａは、セル領域の中で処理対象とすべき領域である。本実施例においては文字認識の対象とする領域であるが、例えば手入力によるデータ入力を行うシステムであれば、イメージを切り出す領域であっても良い。
【００２６】
次に、表構造データ辞書２１に格納する表構造データについて説明する。図３は、帳票イメージ２００における表領域２１０ａの表構造を解析する過程を示したものである。
【００２７】
まず、図３（ａ）第１階層では、表領域２１０ａは縦方向の３つのセル領域に分割される。それぞれのセル領域はＴ１、Ｔ２、Ｔ３と呼ぶ。次に、図３（ｂ）第２階層では、第１階層の３つのセル領域それぞれに対して、横方向にセル領域に分割する。ここではＴ１に対してＴ１１、Ｔ１２の２つのセル領域に、Ｔ２に対してＴ２１、Ｔ２２の２つのセル領域に分割される。Ｔ３は内部に罫線を含まないのでこれ以上分割されず、第２階層のセルは含まれない。同様にして、Ｔ２２はＴ２２１、Ｔ２２２の２つのセル領域に分割される。これ以上は内部に罫線を持たないので、この表の階層は３までとなる。また、この表での処理対象領域はＴ２２１である。
【００２８】
このように、それぞれのセルを親セルとし、その中に含まれたセルを子セルとし、このような関係を階層的に繰り返すことにより、表構造データを表現する。なお、第１階層のＴ１、Ｔ２、Ｔ３の親セル領域は表領域２１０ａが相当し、ここではＴ０として表現する。
【００２９】
ここで、サブパターンの例について説明する。図４は図２ないし図３に示した基準帳票に対するサブパターンを持つ、サブパターン帳票の例である。
図のとおり、サブパターン帳票は基準帳票のＴ２２に相当する部分４４０ａの子セル領域のパターンが異なっており、罫線４２０ｃと罫線４２０ｄにより３つの子セル領域に分割され、処理対象領域は真ん中のセルになっている。その他の部分は基準帳票と同じである。
【００３０】
図５（ａ）は、図３の前述したＴ０、Ｔ１、…Ｔ２２２までのセル領域の階層構造を示す概念図である。ここで、ＩＴｘｘｘは各セル領域のサイズ情報である。具体的には、各親セルにおける各子セルのサイズ情報であり、その子セルの罫線が、親セルの基準罫線からどの位置にあるかを示す情報である。また、どのセルが処理対象セルであるかの情報も含んでいる。この情報は表構造データとして表構造データ辞書２１に格納してある。また、Ｔ２２はサブパターンを持つことが示されている。
【００３１】
図５（ｂ）は、図４のサブパターン帳票のサブパターン部分４４０ａのサブパターンデータを示す概念図である。前述した３つの領域は、親セルＴ２２に対応する新たなＴ２２１´、Ｔ２２２´、Ｔ２２３´で示され、真ん中のセルであるＴ２２２´が処理対象セルである。この情報はサブパターンデータとしてサブパターン辞書２７に格納される。
【００３２】
図６は帳票イメージ２００における表構造データ辞書２１のデータ構成の例である。
各階層ごとに、親セル領域における子セル領域の解析方向、セル領域名、親セル領域名、孫セル領域の有無、サブパターン有無、処理対象セル情報の各情報を含んでいる。
【００３３】
セル領域名とは、親領域内に存在する子セルの領域を指す。例えば、Ｔ０内にはＴ１、Ｔ２、Ｔ３のセル領域が存在している。
【００３４】
孫セル領域有無とは、その階層における子セルがさらに子セルを持つかどうかを示す。「あり」の場合はさらに子セルが存在することを示し、「なし」の場合は、その階層が最後であることを示す。
【００３５】
サブパターン有無とは、当該セル領域が持つ子セル領域のパターンが、基準表構造データ以外にも存在する場合、その部分をサブパターン辞書２７にサブパターンデータとして登録してあることを示す情報であり、図６では、「○」で表現している。
【００３６】
処理対象セル情報は、そのセルが処理対象セルであることを示す情報であり、図６では「○」で表現している。なお、処理対象セルは、子セルを持たないセル領域に限られる。
【００３７】
図７は図５（ｂ）に示すサブパターンデータに対する、サブパターン辞書２７のデータ構成の例である。各データ構成は表構造データ辞書２１と同一である。
【００３８】
次に、サブパターン判定手段２５の処理について詳細を述べる。
処理対象セル領域を特定すべき入力帳票として、図４に示すサブパターン帳票が入力されたとする。図のとおり基準帳票と比べ、領域４４０ａの部分が異なっている。対応関係判定手段２４は入力帳票の罫線の方が多いので、領域４４０ａは領域Ｔ２２と一致しないと判定し、図示しない記憶部に当該領域が基準表構造データと一致しなかった旨を記録する。
【００３９】
サブパターン判定手段２５は、それまでの処理で処理対象セルが特定できたかどうかを確認する。特定できた場合は何も処理を行わない。特定できなかった場合は、表構造データ辞書２１を参照し、Ｔ２２がサブパターンを持つかどうかを確認する。図６に示すとおりＴ２２はサブパターンを持つので、サブパターン辞書２７を参照し、Ｔ２２に相当するサブパターンデータ（図７）を取得する。領域４４０ａに対してサブパターンデータを用いて再度比較を行う。その結果、サブパターンデータと一致するので、処理対象セルとしてＴ２２２´を選択することが出来る。
【００４０】
＜実施例１の動作＞
次に、本実施例の動作について説明する。図８は、本実施例のフローチャートである。
【００４１】
Ｓ１０１：変数ｉに１をセットする。変数ｉは現在の階層を示す。
【００４２】
Ｓ１０２：変数ｎに表構造データ辞書から、対照となる最下階層数をセットする。
【００４３】
Ｓ１０３：ｉがｎを超えたかどうかを確認する。超えた場合はＳ１１０に進む。そうでなければＳ１０４に進む。
【００４４】
Ｓ１０４：変数ｊに１をセットする。ｊは各階層内のセル数のカウンタである。
【００４５】
Ｓ１０５：変数ｍに変数ｉの階層におけるセルの数をセットする。
【００４６】
Ｓ１０６：ｊがｍを超えたかどうかを確認する。超えた場合は次の階層へ移る。なお、このときｉは１インクリメントされる。超えない場合はＳ４７へ進む。
【００４７】
Ｓ１０７：罫線検出手段２２は、入力帳票のイメージから罫線を検出する。なお、検出された罫線は、罫線データメモリ６１に保存されるとともに、必要な罫線情報が渡される。この処理は最初の１回行われる。２回目以降は実際には罫線検出処理は行わず、必要な罫線情報は罫線データメモリ６１から読み出して渡される。
【００４８】
Ｓ１０８：セル領域決定手段２６は、罫線検出手段２２が検出した罫線のうち、対応関係判定手段２４が正しいと判定した罫線より区分けされる前記イメージ上の各領域から、表構造データ辞書２１に格納してある表構造データに基づいて、処理対象セル領域を決定し、そのデータを認識領域データメモリ６３に格納する。文字認識手段４０は、認識領域データメモリ６３に格納されている入力帳票イメージの上記決定された読み取りフィールドに相当する部分から、公知の方法で文字を切り出し、さらに公知の方法で文字認識を行う。処理したセル中に処理対象セル領域が含まれない場合は、この処理は行われない。
【００４９】
Ｓ１０９：ｊを１インクリメントする。これにより、同一階層の次のセルに対してＳ１０６〜Ｓ１０８の処理が繰り返される。
【００５０】
Ｓ１１０：  上記の処理において処理対象セルが見つからなかった場合は、サブパターン検出処理を行う。
【００５１】
以下に、サブパターン検出処理について詳細に説明する。
【００５２】
Ｓ２０１：処理対象セルの検出に成功していた場合は、サブパターンを検出する必要がないため、Ｓ２０５に進む。
【００５３】
Ｓ２０２：表構造データ辞書２１を参照して、サブパターンがない場合は、サブパターン検出ができないので、Ｓ２０５に進む。
【００５４】
Ｓ２０３：サブパターン辞書を参照して、サブパターンデータを抽出する。
【００５５】
Ｓ２０４：当該サブパターンに対応する部分について再度比較を行い、処理対象セルを特定する。
【００５６】
Ｓ２０５：処理を終了する。
【００５７】
以上ように、処理対象セル領域が存在する領域にバリエーションがある場合、基準表構造データ以外にサブパターンデータを登録することにより、基準帳票と異なる帳票が入力された場合でも、同一の表構造を持つ部分についての処理を繰り返すことなくサブパターンデータにより処理対象セルを特定することが出来る。
【実施例２】
【００５８】
第２の実施例として、サブパターンが複数存在する場合について説明する。
＜実施例２の構成＞
本実施例の構成は、第１の実施例と同様である。
【００５９】
本実施例においては、第１の実施例のサブパターン（以降第１のサブパターン）に加え、図１０に示す第２のサブパターンが存在する。第１の実施例と同じく、基準帳票のＴ２２に相当する部分５４０ａの子セル領域のパターンが異なっており、罫線５２０ｃと罫線５２０ｄにより３つの子セル領域に分割されている。その他の部分は基準帳票と同じである。
【００６０】
前記第１、第２のサブパターンを第１の実施例と同様に解析した結果、サブパターンデータは図１１のとおりとなる。
【００６１】
サブパターン判定手段２５は、第１の実施例に加え、複数のサブパターンデータを切り替えて正しいサブパターンを選択する機能を有する。具体的には、サブパターン辞書２７を参照すると、対応するサブパターンが複数見つかるので、順次サブパターンデータを切り替えながら入力帳票と比較を行い、一致したサブパターンデータを選択する。なお、サブパターンデータがいくつ存在するかについては、表構造データ辞書２１のサブパターン有無フラグに変えて、サブパターン数を格納するようにしてもよい。
【００６２】
＜実施例２の動作＞
次に、本実施例の動作について説明する。本実施例の動作は、サブパターン検出を除き第１の実施例と同じである。図１２は、本実施例のサブパターン検出のフローチャートである。
【００６３】
以下に、サブパターン検出処理について詳細に説明する。
【００６４】
Ｓ３０１：変数Ｉに１をセットする。
【００６５】
Ｓ３０２：変数Ｎに、存在するサブパターン数をセットする。本実施例においては２である。
【００６６】
Ｓ３０３：処理対象セルの検出に成功していた場合は、サブパターンを検出する必要がないため、Ｓ２０５に進む。
【００６７】
Ｓ３０４：表構造データ辞書２１を参照して、サブパターンがない場合は、サブパターン検出ができないので、Ｓ２０５に進む。
【００６８】
Ｓ３０５：ＩがＮの値を超えたかどうかを確認する。超えた場合はすべてのサブパターンデータの処理を完了しているので、Ｓ３０９へ進む。超えていない場合は、サブパターンが残っているので、Ｓ３０６へ進む。
【００６９】
Ｓ３０６：サブパターン辞書を参照して、Ｉ番目のサブパターンデータを抽出する。
【００７０】
Ｓ３０７：当該サブパターンに対応する部分について再度比較を行う。一致した場合はＳ３０８へ進む。一致しない場合は、Ｓ３０５へ進む。なお、このときＩは１インクリメントされる。
【００７１】
Ｓ３０８：Ｓ３０７で一致したサブパターンデータを使用して、処理対象セルを特定する。
【００７２】
Ｓ２０５：処理を終了する。
【００７３】
以上ように、処理対象セル領域が存在する領域に複数のバリエーションがある場合、基準表構造データ以外に複数のサブパターンデータを登録しておき、基準帳票と異なる帳票が入力された場合でも、複数のサブパターンデータと順次比較することにより、同一の表構造を持つ部分についての処理を繰り返すことなく処理対象セルを特定することが出来る。
【実施例３】
【００７４】
本実施例は、実施例１に開示した構成に対し、さらに罫線の位置情報すなわちサイズ情報を参照するものである。
本実施例の構成は、実施例１と同様であるが、表構造データ辞書２１、サブパターン辞書２７、対応関係判定手段２４、サブパターン判定手段２５の構成が異なっている。これらの差異については後述する。
まず、サイズ情報について説明する。
図１３は図２に示した基準帳票のサイズ情報を表したものである。表中、Ｉｘｘｘで示しているものが各セルのサイズ情報である。これらのサイズ情報は、図５に示したものと同じものである。また、図１４は、図４に示したサブパターン帳票のサイズ情報をあらわしたものである。
図１５は、帳票イメージ２００における表構造データ辞書２１のデータ構成の例である。実施例１におけるデータ構造（図６）に対し、前述のサイズ情報が追加されている。そのほかは図６と同様である。
図１６は、帳票イメージ４００すなわちサブパターン帳票におけるサブパターン辞書２７のデータ構成の例である。実施例１におけるデータ構造（図７）に対し、前述のサイズ情報が追加されている。そのほかは図７と同様である。
【００７５】
対応関係判定手段２４は罫線検出手段２２で検出し、罫線データメモリ６１に格納されている罫線と表構造データ辞書２１に格納してある基準表構造データとを比較し、罫線の数およびサイズ情報を比較することにより、基準表構造データと同じ位置に罫線が存在するかを判定する。
【００７６】
次に、サブパターン判定手段２５の本実施例令における処理について詳細を述べる。
処理対象セル領域を特定すべき入力帳票として、図１３に示すサブパターン帳票が入力されたとする。図のとおり基準帳票と比べ、領域４４０ａの部分が異なっている。対応関係判定手段２４は入力帳票の罫線の方が多く、サイズ情報も一致しないのでので、領域４４０ａは領域Ｔ２２と一致しないと判定し、図示しない記憶部に当該領域が基準表構造データと一致しなかった旨を記録する。
【００７７】
サブパターン判定手段２５は、実施例１と同じくそれまでの処理で処理対象セルが特定できたかどうかを確認する。その結果、特定できていないことがわかるので、表構造データ辞書２１を参照し、Ｔ２２がサブパターンを持つかどうかを確認する。図１５に示すとおりＴ２２はサブパターンを持つので、サブパターン辞書２７を参照し、Ｔ２２に相当するサブパターンデータ（図１６）を取得する。領域４４０ａに対してサブパターンデータを用いて再度比較を行う。その結果、サブパターンデータは罫線の本数、サイズ情報ともに一致するので、処理対象セルとしてＴ２２２´を選択することが出来る。
【００７８】
次に、入力帳票として、図１８に示す帳票イメージ４０１が入力されたとする。
その場合、図１３に示すサブパターン帳票が入力された場合と同じく、サブパターン辞書２７が参照されるが、帳票イメージ４０１の場合、罫線の本数は一致するが、サイズ情報が一致しない。このため、サブパターン判定手段２５は、サブパターン決定を行わずに終了する。
【００７９】
＜実施例３の動作＞
次に、本実施例の動作について説明する。全体の流れは図８と同様であるが、上述のとおり対応関係判定手段２４が罫線のサイズ情報を判定基準に加えるところが異なっている。
図１７は、本実施例におけるサブパターン検出処理を表したフローチャートであり、実施例１の図９に対応するものである。
【００８０】
以下に、本実施例のサブパターン検出処理について詳細に説明する。
【００８１】
Ｓ４０１〜Ｓ４０３は、Ｓ２０１〜Ｓ２０３と同様である。
【００８２】
Ｓ４０４：当該サブパターンに対応する部分について再度比較を行い、処理対象セルを特定する。このとき、罫線の数に加え、サイズ情報が一致するか比較を行う。罫線の数、サイズ情報がともに一致する場合は、処理対象セルを特定する。それ以外の場合は、処理対象セルを特定しない。
【００８３】
Ｓ４０５：処理を終了する。
【００８４】
以上ように、処理対象セル領域が存在する領域にバリエーションがある場合、基準表構造データ以外にサブパターンデータを登録することにより、基準帳票と異なる帳票が入力された場合でも、同一の表構造を持つ部分についての処理を繰り返すことなくサブパターンデータにより処理対象セルを特定することが出来る。かつ、罫線の本数だけでなく罫線の位置情報すなわちサイズ情報を参照するようにしたので、罫線の数は一緒であるが位置が異なる帳票を誤って正しい帳票として処理することを防ぐことができる。
【実施例４】
【００８５】
第４の実施例として、サブパターンが複数存在する場合について説明する。
＜実施例４の構成＞
本実施例においては、実施例３の図１４に示すサブパターン（以降第１のサブパターン）に加え、図１８に示す第２のサブパターンが存在する。第１のサブパターンとの違いは、罫線の位置である。すなわち、サイズ情報が異なっている。
【００８６】
サブパターン判定手段２５は、実施例３に加え、第２の実施例と同じく複数のサブパターンデータを切り替えて正しいサブパターンを選択する機能を有する。具体的には、サブパターン辞書２７を参照すると、対応するサブパターンが複数見つかるので、順次サブパターンデータを切り替えながら入力帳票と比較を行い、一致したサブパターンデータを選択する。なお、サブパターンデータがいくつ存在するかについては、表構造データ辞書２１のサブパターン有無フラグに変えて、サブパターン数を格納するようにしてもよい。
図１９は、本実施例における第２のサブパターンのサブパターン辞書２７である。
【００８７】
＜実施例４の動作＞
次に、本実施例の動作について説明する。本実施例の動作は、サブパターン検出を除き第１の実施例と同じである。図１２は、本実施例のサブパターン検出のフローチャートである。
【００８８】
以下に、サブパターン検出処理について詳細に説明する。
【００８９】
Ｓ５０１：変数Ｉに１をセットする。
【００９０】
Ｓ５０２：変数Ｎに、存在するサブパターン数をセットする。本実施例においては２である。
【００９１】
Ｓ５０３：処理対象セルの検出に成功していた場合は、サブパターンを検出する必要がないため、Ｓ５０９に進む。
【００９２】
Ｓ５０４：表構造データ辞書２１を参照して、サブパターンがない場合は、サブパターン検出ができないので、Ｓ５０９に進む。
【００９３】
Ｓ５０５：ＩがＮの値を超えたかどうかを確認する。超えた場合はすべてのサブパターンデータの処理を完了しているので、Ｓ５０９へ進む。超えていない場合は、サブパターンが残っているので、Ｓ５０６へ進む。
【００９４】
Ｓ５０６：サブパターン辞書を参照して、Ｉ番目のサブパターンデータを抽出する。
【００９５】
Ｓ５０７：当該サブパターンに対応する部分について再度比較を行い、処理対象セルを特定する。このとき、罫線の数に加え、サイズ情報が一致するか比較を行う。罫線の数、サイズ情報がともに一致する場合は、Ｓ５０８へ進む。一致しない場合は、Ｓ５０５へ進む。なお、このときＩは１インクリメントされる。
【００９６】
Ｓ５０８：Ｓ３０７で一致したサブパターンデータを使用して、処理対象セルを特定する。
【００９７】
Ｓ５０９：処理を終了する。
【００９８】
以上のように、処理対象セル領域が存在する領域に複数のバリエーションがある場合、基準表構造データ以外に複数のサブパターンデータを登録しておき、基準帳票と異なる帳票が入力された場合でも、複数のサブパターンデータと順次比較することにより、同一の表構造を持つ部分についての処理を繰り返すことなく処理対象セルを特定することが出来る。かつ、罫線の本数だけでなく罫線の位置情報すなわちサイズ情報を参照するようにしたので、罫線の数は一緒であるが位置が異なる帳票を誤って正しい帳票として処理することを防ぐことができる。
【００９９】
なお、上記の４つの実施例において入力される帳票と基準表構造データとの関係については、入力される帳票の様式の種別が複数種類存在する場合、基準構造データを様式数分用意して表構造データ辞書２１に登録しておき、図示しない帳票識別手段によって帳票の様式を特定した後、該当する基準表構造データを選択して上述の処理を行なえばよい。帳票識別の方法には、既知の方式が使用可能である。入力される帳票の様式の種別が１つのみの場合は、帳票識別は必要なく、上述の方法のみで帳票処理を実現できる。
【図面の簡単な説明】
【０１００】
【図１】実施例１の構成
【図２】基準帳票
【図３】解析過程
【図４】サブパターン帳票
【図５】階層構造を示す概念図
【図６】表構造データ辞書のデータ構成
【図７】サブパターン辞書のデータ構成
【図８】実施例１のフローチャート
【図９】実施例１のフローチャート
【図１０】サブパターン帳票
【図１１】サブパターン辞書のデータ構成
【図１２】実施例２のフローチャート
【図１３】基準帳票のサイズ情報
【図１４】サブパターン帳票のサイズ情報
【図１５】第３実施襟の表構造データ辞書のデータ構成
【図１６】第３実施襟のサブパターン辞書のデータ構成
【図１７】実施例３のフローチャート
【図１８】サブパターン帳票
【図１９】第４実施例のサブパターン辞書のデータ構成
【図２０】実施例４のフローチャート
【符号の説明】
【０１０１】
１０  文字認識装置
２０  認識対象領域決定部
２１  表構造データ辞書
２３  表別処理制御手段
２２  罫線検出手段
２４  対応関係判定手段
２５  サブパターン判定手段
２６  セル決定手段
２７  サブパターン辞書
６１  罫線データメモリ
６３  認識領域データメモリ
７１  スキャナ
７３  帳票イメージメモリ
【図１】
2006127451.tif 000003
【図２】
2006127451.tif 000004
【図３】
2006127451.tif 000005
【図４】
2006127451.tif 000006
【図５】
2006127451.tif 000007
【図６】
2006127451.tif 000008
【図７】
2006127451.tif 000009
【図８】
2006127451.tif 000010
【図９】
2006127451.tif 000011
【図１０】
2006127451.tif 000012
【図１１】
2006127451.tif 000013
【図１２】
2006127451.tif 000014
【図１３】
2006127451.tif 000015
【図１４】
2006127451.tif 000016
【図１５】
2006127451.tif 000017
【図１６】
2006127451.tif 000018
【図１７】
2006127451.tif 000019
【図１８】
2006127451.tif 000020
【図１９】
2006127451.tif 000021
【図２０】
2006127451.tif 000022