(57)【特許請求の範囲】
【請求項１】
帳票処理装置のコンピュータを、
画像読取装置で読み込んだ帳票画像から罫線レイアウトを抽出する罫線抽出手段、
前記罫線抽出手段によって抽出された罫線レイアウトに基づいて、複数の帳票レイアウトが格納された帳票定義体データベースを参照し、前記抽出された罫線レイアウトと所定範囲内で一致する罫線レイアウトを含む帳票レイアウトを照合する罫線レイアウト照合手段、
前記罫線レイアウト照合手段によって照合された罫線レイアウトと帳票レイアウトについて、対応する文字認識項目の罫線同士を照合する文字認識項目照合手段、
前記文字認識項目照合手段によって照合された前記帳票レイアウトの文字認識項目の罫線の位置を、前記罫線レイアウトの文字認識項目の罫線の位置と一致するように補正する文字認識項目補正手段、
として機能させるための帳票処理プログラム。
【請求項２】
前記コンピュータを、更に、
前記文字認識項目補正手段によって補正された帳票レイアウトに従って、前記抽出された罫線レイアウト内の文字を認識する文字認識手段、
として機能させるための請求項１に記載の帳票処理プログラム。
【請求項３】
帳票処理装置において、
画像読取装置で読み込んだ帳票画像から罫線レイアウトを抽出する罫線抽出部と、
前記罫線抽出部によって抽出された罫線レイアウトに基づいて、複数の帳票レイアウトが格納された帳票定義体データベースを参照し、前記抽出された罫線レイアウトと所定範囲内で一致する罫線レイアウトを含む帳票レイアウトを照合する罫線レイアウト照合部と、
前記罫線レイアウト照合部によって照合された罫線レイアウトと帳票レイアウトについて、対応する文字認識項目の罫線同士を照合する文字認識項目照合部と、
前記文字認識項目照合部によって照合された前記帳票レイアウトの文字認識項目の罫線の位置を、前記罫線レイアウトの文字認識項目の罫線の位置と一致するように補正する文字認識項目補正部と、
を備えることを特徴とする帳票処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票ＩＤで管理されていない私製帳票を処理するための帳票処理プログラム及び帳票処理装置に関する。
【背景技術】
【０００２】
従来、金融機関や公共機関をはじめとする様々な組織において、各種の帳票が利用されている。例えば、紙の帳票をスキャナ等の読取装置で読み取り、読み取り結果の画像からＯＣＲ（光学式文字読取：Optical Character Reader）技術によりテキスト情報を得ることが行われている。これにより、データ入力などの事務処理を効率化させることが図られている。
【０００３】
ＯＣＲ処理は、帳票種類の特定後、帳票種類に対応する定義体情報を使用して文字認識を行う。帳票種類の特定は、一般的には帳票ＩＤ（帳票種類を特定するために帳票に印刷された数値等）が使用される。しかしながら、ＯＣＲ利用分野を拡大し、帳票ＩＤが無い帳票もＯＣＲ対象とするニーズが高まっている。このようなケースでは、帳票上の罫線レイアウト（本数、長さ、配置）や、帳票固有情報（帳票タイトル等）を定義体に登録し、認識対象イメージと突合して帳票種類の判別を行っている。そして、帳票種類の判別後、帳票種類に対応する定義体を参照して文字認識を行っている。
【０００４】
このような処理を行うには、認識対象の全帳票を事前に定義体登録する必要がある。しかしながら、帳票フォーマットが類似する帳票は多種類が流通しているため、全種類を定義体登録することはできない。このため、帳票種類を限定して定義体登録し、ＯＣＲを行うしかなく、ＯＣＲ利用分野拡大の妨げになっている。
【０００５】
また、帳票処理に関して、下記のような従来技術が開示されている。
例えば、帳票を複数の部分領域に分割し、部分領域ごとに予め登録された部分書式情報と比較し、部分領域ごとに最適な部分書式情報を選択する。そして、選択した部分書式情報を合成して帳票全体の書式情報を生成し、生成した書式情報に基づいて文字認識を行う技術が開示されている（例えば、特許文献１参照。）。
【０００６】
また、帳票の画像から罫線で区切られたセルの配置を決めるとともに見出し項目を抽出し、見出し項目を含むセルのうちの文字又は文字列が記入された記入済みセルを検出する。そして、画像中の記入済みセルのみを二値化して記入済みセルに記入された文字を認識する技術が開示されている（例えば、特許文献２参照。）。
【０００７】
また、帳票の種類を識別できなかった第１の帳票画像と、第１の帳票画像と類似する特徴を持つ既存の第２の帳票画像とを画面に表示し、第１の帳票画像又は第２の帳票画像に対する新たな特徴情報を入力し、入力された特徴情報を第１の帳票画像又は第２の帳票画像とを対応付けて登録する技術が開示されている（例えば、特許文献３参照。）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−０８７３７８号公報
【特許文献２】特開２０１２−１４１６７０号公報
【特許文献３】特開２０１１−１１８５１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述したように、ＯＣＲを行う帳票は全種類を定義体登録する必要があるが、流通する帳票は非常に種類が多く、定義体作成は利用者にとって大きな負荷となっている。また、類似する帳票では、利用者が帳票の相違箇所を見つけ出し、相違箇所を帳票固有情報として定義体に登録する必要があり、ノウハウが必要となるため、利用者が限定されてしまい、定義体登録を効率的に行うことができない、という問題点があった。
【００１０】
本発明は、上述のような実状に鑑みたものであり、ＯＣＲ処理において、帳票上の罫線、および帳票上の固有情報を利用して類似する帳票種類の判別を行い、その帳票種類に対応する定義体を使用して文字認識を行うことにより、帳票ＩＤで管理されていない私製帳票であっても、適切に処理することが可能な帳票処理プログラム及び帳票処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、上記課題を解決するため、下記のような構成を採用した。
すなわち、本発明の一態様によれば、本発明の帳票処理プログラムは、帳票処理装置のコンピュータを、画像読取装置で読み込んだ帳票画像から罫線レイアウトを抽出する罫線抽出手段、前記罫線抽出手段によって抽出された罫線レイアウトに基づいて、複数の帳票レイアウトが格納された帳票定義体データベースを参照し、所定範囲内で前記罫線レイアウトと一致する帳票レイアウトを照合する罫線レイアウト照合手段、前記罫線レイアウト照合手段によって照合された罫線レイアウトと帳票レイアウトについて、対応する文字認識項目を照合する文字認識項目照合手段、前記文字認識項目照合手段によって照合された前記帳票レイアウトの文字認識項目を前記罫線レイアウトの文字認識項目と一致するように補正する文字認識項目補正手段として機能させるための帳票処理プログラムである。
【００１２】
また、本発明の帳票処理プログラムは、更に、前記文字認識項目補正手段によって補正された帳票レイアウトに従って、前記罫線レイアウト内の文字を認識する文字認識手段として機能させることが望ましい。
【００１３】
また、本発明の一態様によれば、本発明の帳票処理装置は、画像読取装置で読み込んだ帳票画像から罫線レイアウトを抽出する罫線抽出部と、前記罫線抽出部によって抽出された罫線レイアウトに基づいて、複数の帳票レイアウトが格納された帳票定義体データベースを参照し、所定範囲内で前記罫線レイアウトと一致する帳票レイアウトを照合する罫線レイアウト照合部と、前記照合部によって照合された罫線レイアウトと帳票レイアウトについて、対応する文字認識項目を照合する文字認識項目照合部と、前記文字認識項目照合部によって照合された前記帳票レイアウトの文字認識項目を前記罫線レイアウトの文字認識項目と一致するように補正する文字認識項目補正部とを備えることを特徴とする帳票処理装置である。
【発明の効果】
【００１４】
本発明によれば、帳票フォーマットが類似している帳票群に対して１つの定義体で文字認識が可能となるため、定義体作成負荷を軽減できる。また、帳票の一部が変更された場合でも文字認識が可能となるため、定義体修正負荷も軽減できる。また、類似する帳票では、利用者が帳票の相違箇所を見つけ出し、相違箇所を帳票固有情報として定義体に登録する必要がなくなるため、高度なノウハウが不要となり、多くの利用者による定義体作成が可能となり、業務効率全般を向上させることが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本実施の形態における帳票処理装置を備えるシステム構成図である。
【図２】本実施の形態における帳票処理装置の機能ブロック図である。
【図３】本実施の形態における帳票処理装置のハードウェア構成図である。
【図４】本実施の形態において実行される帳票処理の流れを示すフローチャート（その１）である。
【図５】帳票イメージの例を示す図である。
【図６】帳票イメージから抽出した罫線レイアウトの例を示す図である。
【図７】罫線レイアウトから抽出した横罫線情報の例を示す図である。
【図８】罫線レイアウトから抽出した縦罫線情報の例を示す図である。
【図９】本実施の形態において実行される帳票処理の流れを示すフローチャート（その２）である。
【図１０】定義体に登録されている帳票イメージの例を示す図である。
【図１１】定義体に登録されている罫線レイアウトの例を示す図である。
【図１２】定義体に登録されている横罫線情報の例を示す図である。
【図１３】定義体に登録されている縦罫線情報の例を示す図である。
【図１４】サブルーチン「罫線レイアウト照合処理」の流れを示すフローチャート（その１）である。
【図１５】横罫線情報の照合の例を示す図である。
【図１６】サブルーチン「罫線レイアウト照合処理」の流れを示すフローチャート（その２）である。
【図１７】サブルーチン「文字認識項目照合／補正処理」の流れを示すフローチャートである。
【図１８】サブルーチン「文字項目罫線照合処理」の流れを示すフローチャートである。
【図１９】定義体に登録されている項目定義情報の例を示す図である。
【図２０】帳票と定義体の認識項目の比較を示す図である。
【図２１】項目情報の横罫線の比較を示す図である。
【図２２】項目情報の縦罫線の比較を示す図である。
【図２３】サブルーチン「文字項目定義補正処理」の流れを示すフローチャート（その１）である。
【図２４】項目情報の横罫線の補正を示す図である。
【図２５】定義体の補正を示す図である。
【図２６】サブルーチン「文字項目定義補正処理」の流れを示すフローチャート（その２）である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
図１は、本実施の形態における帳票処理装置を備えるシステム構成図である。
【００１７】
図１において、帳票処理システム１は、画像読取装置１０、画像読取装置１０と接続された帳票処理装置２０を備える。ここで、本実施の形態の帳票処理システム１は、例えば金融機関や公共機関等における帳票処理に用いられている。
【００１８】
画像読取装置１０は、例えば、イメージスキャナであり、帳票を光学的に読み取り、帳票処理装置２０に送出する。
【００１９】
帳票処理装置２０は、例えば、ワークステーション、サーバ、パーソナルコンピュータ等のコンピュータの機能を備えており、後述する帳票処理を実行する。
【００２０】
図２は、本実施の形態における帳票処理装置の機能ブロック図である。
図２において、帳票処理装置２０は、罫線抽出部２１、罫線レイアウト照合部２２、文字認識項目照合部２３、文字認識項目補正部２４及び文字認識部２５を備え、定義帳票情報データベース（ＤＢ）３０とアクセス可能に接続する。
【００２１】
罫線抽出部２１は、画像読取装置１０で読み込んだ帳票画像から罫線レイアウトを抽出する。
【００２２】
罫線レイアウト照合部２２は、前記罫線抽出部２１によって抽出された罫線レイアウトに基づいて、複数の帳票レイアウトが格納された定義帳票情報データベース３０を参照し、所定範囲内で前記罫線レイアウトと一致する帳票レイアウトを照合する。
【００２３】
文字認識項目照合部２３は、前記罫線レイアウト照合部によって照合された罫線レイアウトと帳票レイアウトについて、対応する文字認識項目を照合する。
【００２４】
文字認識項目補正部２４は、前記文字認識項目照合部２３によって照合された前記帳票レイアウトの文字認識項目を前記罫線レイアウトの文字認識項目と一致するように補正する。
【００２５】
文字認識部２５は、前記文字認識項目補正部２４によって補正された帳票レイアウトに従って、前記罫線レイアウト内の文字を認識する。
【００２６】
図３は、本実施の形態における帳票処理装置のハードウェア構成図である。
図３において、帳票処理装置２０は、ＣＰＵ（Central Processing Unit）２０１、入力装置２０２、出力装置２０３、ＲＯＭ（Read Only Memory）２０４、ＲＡＭ（Random Access Memory）２０５、インターフェース（Ｉ／Ｆ）２０６がバス２０７に接続されて構成されている。入力装置２０２は、例えば、キーボード、ジョイスティック、ライトペン、マウス、タッチパッド、タッチパネル、トラックボール等、各種のデータや信号等を入力する。出力装置２０３は、例えば、ＬＣＤ（Liquid Crystal Display）等の各種ディスプレイ、プリンタ等、画像やその他の情報を出力する。ＲＯＭ２０４は、帳票処理装置２０において実行する帳票処理を実行するプログラムの他、帳票処理装置２０の各機能を制御し実行するための制御プログラム及びテーブルデータなどを収納する。ＲＡＭ２０５は、出力装置２０３用のフレームバッファや一部のアプリケーションプログラム等を格納する。インターフェース２０６は、ＵＳＢ（Universal Serial Bus）等のシリアルインターフェースやイーサネット（登録商標）等のパラレルインターフェース等、外部機器と接続するためのユニットである。ＣＰＵ２０１は、これらの各部を制御している。
【００２７】
本実施の形態における帳票処理は、上述した帳票処理装置２０によって実行される。帳票処理装置２０によって実行される帳票処理は、まず、予め登録した定義体から、帳票の画像データにおける第１の罫線レイアウトとの一致度が高い第２の罫線レイアウトを有する定義体を抽出する。第１の罫線レイアウトと第２の罫線レイアウトとの間に相違があり、かつその相違箇所に文字認識項目が含まれている場合、第２の罫線レイアウトの相違箇所を第１の罫線レイアウトにおける文字認識項目が含まれるよう補正した定義体を作成する。そして、この補正した定義体を使用して帳票の画像データに対する文字認識を行う。これにより、帳票の一部分が異なる複数種類の類似帳票に対する文字認識を、１つの共通の定義体に基づいて行うことが可能となる。また、本実施の形態における帳票処理によれば、作成する定義体の数を減らすことができ、作成作業の負荷を軽減できる。
【００２８】
次に、図４乃至図２６を用いて、本実施の形態を詳細に説明する。
図４及び図９は、本実施の形態において実行される帳票処理の流れを示すフローチャートである。図５は、帳票イメージの例を示す図である。図６は、帳票イメージから抽出した罫線レイアウトの例を示す図である。図７は、罫線レイアウトから抽出した横罫線情報の例を示す図である。図８は、罫線レイアウトから抽出した縦罫線情報の例を示す図である。図１０は、定義体に登録されている帳票イメージの例を示す図である。図１１は、定義体に登録されている罫線レイアウトの例を示す図である。図１２は、定義体に登録されている横罫線情報の例を示す図である。図１３は、定義体に登録されている縦罫線情報の例を示す図である。図１４及び図１６は、サブルーチン「罫線レイアウト照合処理」の流れを示すフローチャートである。図１５は、横罫線情報の照合の例を示す図である。図１７は、サブルーチン「文字認識項目照合／補正処理」の流れを示すフローチャートである。図１８は、サブルーチン「文字項目罫線照合処理」の流れを示すフローチャートである。図１９は、定義体に登録されている項目定義情報の例を示す図である。図２０は、帳票と定義体の認識項目の比較を示す図である。図２１は、項目情報の横罫線の比較を示す図である。図２２は、項目情報の縦罫線の比較を示す図である。図２３及び図２６は、サブルーチン「文字項目定義補正処理」の流れを示すフローチャートである。図２４は、項目情報の横罫線の補正を示す図である。図２５は、定義体の補正を示す図である。
【００２９】
まず、帳票処理装置２０は、図４のステップＳ４０１において、オペレータからの指示として、帳票に対するイメージ読み取りの指示、及び読み取った帳票のＯＣＲ処理の指示を受け取る。
【００３０】
ステップＳ４０２において、ステップＳ４０１で受け取った指示に基づいて、イメージスキャナを用いて帳票を走査し、図５に示すような帳票イメージ（認識対象イメージ）を取得する。
【００３１】
ステップＳ４０３において、ステップＳ４０２で取得した帳票イメージから、図６に示すように、同一色の画素が縦、または横方向に連続して並んでいる箇所を罫線として検出する。そして、検出した罫線に関する罫線レイアウト情報を作成する。ここで、罫線レイアウト情報は、開始座標情報、終了座標情報、及び太さ情報を含む。また、ここで作成される罫線レイアウト情報は、所定の長さを超える罫線を対象にしており、例えば、金額欄の縦の罫線は対象外である。
【００３２】
ステップＳ４０４において、ステップＳ４０３で作成した罫線レイアウト情報から、帳票照合用に横罫線情報と縦罫線情報を取出し、それぞれに番号を付す。例えば、図７に示すように、取り出された９本の横罫線７０１乃至７０９に順に番号を付す。また、図８に示すように、取り出された４本の縦罫線８０１乃至８０４に順に番号を付す。
【００３３】
次に、帳票処理装置２０は、定義帳票情報データベース３０に格納された帳票について、図９のステップＳ９０１乃至Ｓ９０５のループ処理を実行する。
【００３４】
まず、ステップＳ９０１において、定義帳票情報データベース３０から、図１０に示すような帳票の定義体を順に取り出す。図１０に示すような帳票の定義体は、図１１に示すような罫線レイアウト、図１２に示すような横罫線情報、及び図１３に示すような縦罫線情報を含む。図１２に示すような定義体の横罫線情報には、９本の横罫線１２０１乃至１２０９に番号が順に付されている。また、図１３に示すような定義体の縦罫線情報には、４本の縦罫線１３０１乃至１３０４に番号が順に付されている。
【００３５】
そして、帳票処理装置２０は、ステップＳ９０２において、サブルーチン「罫線レイアウト照合処理」を実行し、イメージスキャナを用いて取得した帳票の罫線レイアウトと、ステップＳ９０１で定義帳票情報データベース３０から取り出した定義体の罫線レイアウトとを比較する。
【００３６】
サブルーチン「罫線レイアウト照合処理」について、図１４、図１５及び図１６を用いて説明する。
【００３７】
まず、定義体及び帳票の基準横罫線の組み合わせについて、図１４のステップＳ１４０１乃至Ｓ１４０５のループ処理を実行する。定義体をベースにして基準横罫線を変更しながら、一致率の高い横罫線を探索する。例えば、定義体の横罫線１２０１と帳票の横罫線７０１、定義体の横罫線１２０１と帳票の横罫線７０２、定義体の横罫線１２０１と帳票の横罫線７０３、・・・、定義体の横罫線１２０２と帳票の横罫線７０１等と、基準横罫線を変更しながら、図１４のステップＳ１４０１乃至Ｓ１４０５のループ処理をそれぞれ実行して探索する。
【００３８】
このループ処理内において、定義体の横罫線について、ステップＳ１４０１乃至Ｓ１４０３のループ処理を実行する。
【００３９】
ステップＳ１４０１において、「定義体の基準横罫線」と「定義体の横罫線」の差を求め、「帳票の基準横罫線」に求めた差を適用し、所定のマージン内にある帳票の横罫線を探索する。例えば、図１２に示した横罫線１２０１乃至１２０９の任意の１本、横罫線１２０１を定義体の基準横罫線とし、図７に示した横罫線７０１乃至７０９の任意の１本、横罫線７０１を帳票の基準横罫線とした場合を例にして説明する。まず、定義体の基準横罫線１２０１と、１番目の横罫線としての横罫線１２０１の差を求める。ここでは、図１５の（Ａ）中に記した（１）に示すように、縦方向の座標値の差を求める。横罫線１２０１は、基準横罫線１２０１そのものであるので、差は「０」となる。帳票の基準横罫線７０１に求めた差「０」を適用し、図１５の（Ｂ）中に記した（１）に示すように、所定のマージン内にある帳票の横罫線を探索する。例えば、「帳票の基準横罫線７０１の縦方向の座標値」＋「０」±「マージン」内にある帳票の横罫線を探索する。
【００４０】
ステップＳ１４０２において、ステップＳ１４０１で帳票の横罫線が探索できたか否かを判断する。探索できた場合（ステップＳ１４０２：Ｙｅｓ）、上述の例では、横罫線７０１が探索されるので、ステップＳ１４０３において、横罫線１２０１と横罫線７０１の一致した長さを算出し、記録する。ここでは、「定義側の罫線」と「帳票側の罫線」の長さの小さい方を一致と見なす。上述の例では、図１５の（Ｃ）に示すように、一致長さ「２３」を記録してステップＳ１４０１に戻る。ここで、１回目のループ処理から抜ける。
【００４１】
２回目のループ処理のステップＳ１４０１において、定義体の基準横罫線１２０１と、２番目の横罫線としての横罫線１２０２の差を求める。図１５の（Ａ）中に記した（２）に示すように、縦方向の座標値の差「１」を求める。帳票の基準横罫線７０１に求めた差「１」を適用し、図１５の（Ｂ）中に記した（２）に示すように、所定のマージン内にある帳票の横罫線７０２を探索する。そして、ステップＳ１４０２で探索すると（ステップＳ１４０２：Ｙｅｓ）、ステップＳ１４０３において、横罫線１２０２と横罫線７０２の一致した長さ「８」を算出し、図１５の（Ｃ）に示すように、一致長さ「８」を記録してステップＳ１４０１に戻る。
【００４２】
同様に、３回目のループ処理のステップＳ１４０１において、定義体の基準横罫線１２０１と、３番目の横罫線としての横罫線１２０３の差を求める。図１５の（Ａ）中に記した（３）に示すように、縦方向の座標値の差「３」を求める。帳票の基準横罫線７０１に求めた差「３」を適用し、図１５の（Ｂ）中に記した（３）に示すように、所定のマージン内にある帳票の横罫線７０３を探索する。そして、ステップＳ１４０２で探索すると（ステップＳ１４０２：Ｙｅｓ）、ステップＳ１４０３において、横罫線１２０３と横罫線７０３の一致した長さ「１２」を算出し、図１５の（Ｃ）に示すように、一致長さ「１２」を記録してステップＳ１４０１に戻る。
【００４３】
同様に、４回目のループ処理のステップＳ１４０１において、定義体の基準横罫線１２０１と、４番目の横罫線としての横罫線１２０４の差を求める。図１５の（Ａ）中に記した（４）に示すように、縦方向の座標値の差「５」を求める。帳票の基準横罫線７０１に求めた差「５」を適用し、図１５の（Ｂ）中に記した（４）に示すように、所定のマージン内にある帳票の横罫線７０４を探索する。そして、ステップＳ１４０２で探索すると（ステップＳ１４０２：Ｙｅｓ）、ステップＳ１４０３において、横罫線１２０４と横罫線７０４の一致した長さ「１２」を算出し、図１５の（Ｃ）に示すように、一致長さ「１２」を記録してステップＳ１４０１に戻る。
【００４４】
このような定義体の横罫線の数だけループを繰り返した後、ステップＳ１４０４に進む。
【００４５】
ステップＳ１４０４において、上述のようにして算出した一致長さの合計を算出し、バッファに一時的に退避した一致長さの合計と比較して大きいか否かを判断する。最初は、一致長さの合計が退避されていないので、例えば、初期値「０」と比較する。
【００４６】
そして、大きいと判断された場合（ステップＳ１４０４：Ｙｅｓ）、ステップＳ１４０５において、算出した一致長さの合計、及び基準罫線として使用した罫線を、バッファに一時的に退避する。他方、大きいと判断されなかった場合（ステップＳ１４０４：Ｎｏ）、ステップＳ１４０５をスキップする。
【００４７】
以上のステップＳ１４０１乃至Ｓ１４０５のループ処理を、定義体及び帳票の基準横罫線の組み合わせの数だけ繰り返す。
【００４８】
次に、ステップＳ１４０６において、一致長さの合計から一致率を算出する。例えば、一致長さの合計を定義体の横罫線の長さの合計で除算して求める。図１５の（Ｃ）に示した例の場合、一致率は、およそ９２．１％となる。
【００４９】
ステップＳ１４０７において、ステップＳ１４０６で算出した一致率が所定値以上であるか否か、例えば８０％以上であるか否かを判断する。
【００５０】
所定値以上でなければ（ステップＳ１４０７：Ｎｏ）、サブルーチン「罫線レイアウト照合処理」を終了し、イメージスキャナを用いて取得した帳票の罫線レイアウトと、定義帳票情報データベース３０から取り出した定義体の罫線レイアウトの比較結果が、「不一致」であるとして図９の「帳票処理」に戻る。
【００５１】
他方、所定値以上であれば（ステップＳ１４０７：Ｙｅｓ）、図１６のステップＳ１６０１に進む。
【００５２】
図１６のステップＳ１６０１乃至Ｓ１６０７は、横罫線について実行した図１４のステップＳ１４０１乃至１４０７と同様の処理を、縦罫線について実行する。
【００５３】
まず、定義体及び帳票の基準縦罫線の組み合わせについて、図１６のステップＳ１６０１乃至Ｓ１６０５のループ処理を実行する。定義体をベースにして基準縦罫線を変更しながら、一致率の高い縦罫線を探索する。例えば、定義体の縦罫線１３０１と帳票の縦罫線８０１、定義体の縦罫線１３０１と帳票の縦罫線８０２、定義体の縦罫線１３０１と帳票の縦罫線８０３、・・・、定義体の縦罫線１３０２と帳票の縦罫線８０１等と、基準横罫線を変更しながら、図１６のステップＳ１６０１乃至Ｓ１６０５のループ処理をそれぞれ実行して探索する。
【００５４】
このループ処理内において、定義体の縦罫線について、ステップＳ１６０１乃至Ｓ１６０３のループ処理を実行する。
【００５５】
ステップＳ１６０１において、「定義体の基準縦罫線」と「定義体の縦罫線」の差を求め、「帳票の基準縦罫線」に求めた差を適用し、所定のマージン内にある帳票の縦罫線を探索する。例えば、図１３に示した縦罫線１３０１乃至１３０４の任意の１本、縦罫線１３０１を定義体の基準縦罫線とし、図８に示した縦罫線８０１乃至８０４の任意の１本、縦罫線８０１を帳票の基準縦罫線とした場合を例にして説明する。まず、定義体の基準縦罫線１３０１と、１番目の縦罫線としての縦罫線１３０１の差を求める。ここでは、横方向の座標値の差を求める。縦罫線１３０１は、基準縦罫線１３０１そのものであるので、差は「０」となる。帳票の基準縦罫線８０１に求めた差「０」を適用し、所定のマージン内にある帳票の縦罫線を探索する。例えば、「帳票の基準縦罫線８０１の横方向の座標値」＋「０」±「マージン」内にある帳票の縦罫線を探索する。
【００５６】
ステップＳ１６０２において、ステップＳ１６０１で帳票の縦罫線が探索できたか否かを判断する。探索できた場合（ステップＳ１６０２：Ｙｅｓ）、上述の例では、縦罫線８０１が探索されるので、ステップＳ１６０３において、縦罫線１３０１と縦罫線８０１の一致した長さを算出し、記録する。ここでは、「定義側の罫線」と「帳票側の罫線」の長さの小さい方を一致と見なす。上述の例では、図１５の（Ｄ）に示すように、一致長さ「１９」を記録してステップＳ１６０１に戻る。ここで、１回目のループ処理から抜ける。
【００５７】
２回目のループ処理のステップＳ１６０１において、定義体の基準縦罫線１３０１と、２番目の縦罫線としての縦罫線１３０２の差を求める。例えば、横方向の座標値の差「１」を求める。帳票の基準縦罫線８０１に求めた差「１」を適用し、所定のマージン内にある帳票の縦罫線８０２を探索する。そして、ステップＳ１６０２で探索すると（ステップＳ１６０２：Ｙｅｓ）、ステップＳ１６０３において、縦罫線１３０２と縦罫線８０２の一致した長さ「１９」を算出し、図１５の（Ｄ）に示すように、一致長さ「１９」を記録してステップＳ１６０１に戻る。
【００５８】
同様に、３回目のループ処理のステップＳ１６０１において、定義体の基準縦罫線１３０１と、３番目の縦罫線としての縦罫線１３０３の差を求める。例えば、横方向の座標値の差「２」を求める。帳票の基準縦罫線８０１に求めた差「２」を適用し、所定のマージン内にある帳票の縦罫線８０３を探索する。そして、ステップＳ１６０２で探索すると（ステップＳ１６０２：Ｙｅｓ）、ステップＳ１６０３において、縦罫線１３０３と縦罫線８０３の一致した長さ「１６」を算出し、図１５の（Ｄ）に示すように、一致長さ「１６」を記録してステップＳ１６０１に戻る。
【００５９】
同様に、４回目のループ処理のステップＳ１６０１において、定義体の基準縦罫線１３０１と、４番目の縦罫線としての縦罫線１３０４の差を求める。例えば、横方向の座標値の差「１３」を求める。帳票の基準縦罫線８０１に求めた差「１３」を適用し、所定のマージン内にある帳票の縦罫線８０４を探索する。そして、ステップＳ１６０２で探索すると（ステップＳ１６０２：Ｙｅｓ）、ステップＳ１６０３において、縦罫線１３０４と縦罫線８０４の一致した長さ「１９」を算出し、図１５の（Ｄ）に示すように、一致長さ「１９」を記録してステップＳ１６０１に戻る。
【００６０】
このような定義体の縦罫線の数だけループを繰り返した後、ステップＳ１６０４に進む。
【００６１】
ステップＳ１６０４において、上述のようにして算出した一致長さの合計を算出し、バッファに一時的に退避した一致長さの合計と比較して大きいか否かを判断する。最初は、一致長さの合計が退避されていないので、例えば、初期値「０」と比較する。
【００６２】
そして、大きいと判断された場合（ステップＳ１６０４：Ｙｅｓ）、ステップＳ１６０５において、算出した一致長さの合計、及び基準罫線として使用した罫線を、バッファに一時的に退避する。他方、大きいと判断されなかった場合（ステップＳ１６０４：Ｎｏ）、ステップＳ１６０５をスキップする。
【００６３】
以上のステップＳ１６０１乃至Ｓ１６０５のループ処理を、定義体及び帳票の基準縦罫線の組み合わせの数だけ繰り返す。
【００６４】
次に、ステップＳ１６０６において、一致長さの合計から一致率を算出する。例えば、一致長さの合計を定義体の縦罫線の長さの合計で除算して求める。図１５の（Ｄ）に示した例の場合、一致率は、１００％となる。
【００６５】
ステップＳ１６０７において、ステップＳ１６０６で算出した一致率が所定値以上であるか否か、例えば８０％以上であるか否かを判断する。
【００６６】
所定値以上でなければ（ステップＳ１６０７：Ｎｏ）、サブルーチン「罫線レイアウト照合処理」を終了し、イメージスキャナを用いて取得した帳票の罫線レイアウトと、定義帳票情報データベース３０から取り出した定義体の罫線レイアウトの比較結果が、「不一致」であるとして図９の「帳票処理」に戻る。
【００６７】
他方、所定値以上であれば（ステップＳ１６０７：Ｙｅｓ）、サブルーチン「罫線レイアウト照合処理」を終了し、イメージスキャナを用いて取得した帳票の罫線レイアウトと、定義帳票情報データベース３０から取り出した定義体の罫線レイアウトの比較結果が、「一致」であるとして図９の「帳票処理」に戻る。
【００６８】
図９のステップＳ９０３において、サブルーチン「罫線レイアウト照合処理」で実行した帳票と定義体の罫線レイアウトの比較結果が「一致」であるか否（「不一致」である）かを判断する。
【００６９】
不一致であれば（ステップＳ９０３：Ｎｏ）、ステップＳ９０１において、定義帳票情報データベース３０から、次の帳票の定義体を順に取り出す。
【００７０】
他方、一致（ステップＳ９０３：Ｙｅｓ）であれば、ステップＳ９０４において、サブルーチン「文字認識項目照合／補正処理」を実行し、項目罫線を含む項目定義情報が登録された定義体と比較することにより、読み取った帳票の認識項目の項目罫線を補正する。
【００７１】
サブルーチン「文字認識項目照合／補正処理」について、図１７のフローチャートを用いて説明する。
【００７２】
まず、図１７のステップＳ１７０１において、サブルーチン「文字項目罫線照合処理」を実行し、定義体に登録された項目罫線と読み取った帳票の項目罫線を照合する。
【００７３】
サブルーチン「文字項目罫線照合処理」について、図１８、図１９、図２０、図２１及び図２２を用いて説明する。
【００７４】
図１８のフローチャートで示すサブルーチン「文字項目罫線照合処理」は、図２０に示すように、図６に示すような帳票の認識項目の項目罫線（図２０の（Ｂ））を、図１９に示すような定義体（図２０の（Ａ））と比較して照合する。図１９に示す定義体には、項目罫線を含む項目定義情報が登録されている。
【００７５】
項目の横罫線数で、図１８のステップＳ１８０１乃至Ｓ１８０２のループ処理を実行する。
【００７６】
まず、ステップＳ１８０１において、「定義体の基準横罫線」と「定義体の項目横罫線」の差を求め、「帳票の基準横罫線」に求めた差を適用し、所定のマージン内にある帳票の横罫線を探索する。例えば、図２１の（Ａ）に示すように、定義体の基準横罫線１２０１と、１番目の横罫線としての横罫線１２０１の縦方向の差を求める。横罫線１２０１は、基準横罫線１２０１そのものであるので、差は「０」となる。帳票の基準横罫線７０１に求めた差「０」を適用し、図２１の（Ｂ）に示すように、所定のマージン内にある帳票の横罫線を探索する。例えば、「帳票の基準横罫線７０１の縦方向の座標値」＋「０」±「マージン」内にある帳票の横罫線を探索する。
【００７７】
ステップＳ１８０２において、ステップＳ１８０１で帳票の横罫線が探索できたか否かを判断する。探索できた場合（ステップＳ１８０２：Ｙｅｓ）、上述の例では、図２１の（Ｂ）に示すように、横罫線７０１が探索されるので、ステップＳ１８０１に戻る。
【００７８】
２回目のループ処理のステップＳ１８０１において、定義体の基準横罫線１２０１と、２番目の横罫線としての横罫線１２０２の縦方向の座標値の差「１」を求める。帳票の基準横罫線７０１に求めた差「１」を適用し、所定のマージン内にある帳票の横罫線７０２を探索する。
【００７９】
同様に、３回目のループ処理のステップＳ１８０１において、定義体の基準横罫線１２０１と、３番目の横罫線としての横罫線１２０３の縦方向の座標値の差「３」を求める。帳票の基準横罫線７０１に求めた差「３」を適用し、所定のマージン内にある帳票の横罫線を探索する。図２１に示した例では、横罫線１２０３に対応する帳票の横罫線は探索できない（図２１の（Ｂ）を参照）。
【００８０】
ステップＳ１８０２で帳票の横罫線が探索できなかった場合（ステップＳ１８０２：Ｎｏ）、例えば、図２１に示した例のように、横罫線１２０３に対応する帳票の横罫線が探索できなかった場合、サブルーチン「文字項目罫線照合処理」を終了し、定義体に登録された項目罫線と読み取った帳票の項目罫線の照合結果が、「不一致」であるとして図１７のサブルーチン「文字認識項目照合／補正処理」に戻る。
【００８１】
次に、項目の縦罫線数で、図１８のステップＳ１８０３乃至Ｓ１８０４のループ処理を実行する。
【００８２】
まず、ステップＳ１８０３において、「定義体の基準縦罫線」と「定義体の項目縦罫線」の差を求め、「帳票の基準縦罫線」に求めた差を適用し、所定のマージン内にある帳票の縦罫線を探索する。例えば、図２２の（Ａ）に示すように、定義体の基準縦罫線１３０４と、１番目の縦罫線としての縦罫線１３０４の横方向の差を求める。縦罫線１３０４は、基準縦罫線１３０４そのものであるので、差は「０」となる。帳票の基準縦罫線８０４に求めた差「０」を適用し、図２２の（Ｂ）に示すように、所定のマージン内にある帳票の縦罫線を探索する。例えば、「帳票の基準縦罫線８０４の横方向の座標値」＋「０」±「マージン」内にある帳票の縦罫線を探索する。
【００８３】
ステップＳ１８０４において、ステップＳ１８０３で帳票の縦罫線が探索できたか否かを判断する。探索できた場合（ステップＳ１８０４：Ｙｅｓ）、上述の例では、図２２の（Ｂ）に示すように、縦罫線８０４が探索されるので、ステップＳ１８０３に戻る。
【００８４】
２回目のループ処理のステップＳ１８０３において、定義体の基準縦罫線１３０４と、２番目の縦罫線としての縦罫線２２０１の横方向の座標値の差「１」を求める。帳票の基準縦罫線８０４に求めた差「１」を適用し、図２２の（Ｂ）に示すように、所定のマージン内にある帳票の縦罫線２２１１を探索する。
【００８５】
同様に、３回目のループ処理のステップＳ１８０３において、定義体の基準縦罫線１３０４と、３番目の縦罫線としての縦罫線２２０２の横方向の座標値の差「２」を求める。帳票の基準縦罫線８０４に求めた差「２」を適用し、図２２の（Ｂ）に示すように、所定のマージン内にある帳票の縦罫線２２１２を探索する。
【００８６】
図２２に示した例では、同様にして、定義体の横罫線２２０９に対応する帳票の横罫線２２１９までの探索を繰り返し、全ての横罫線が探索できた場合（ステップＳ１８０４：Ｙｅｓ）、サブルーチン「文字項目罫線照合処理」を終了し、定義体に登録された項目罫線と読み取った帳票の項目罫線の照合結果が、「一致」であるとして図１７のサブルーチン「文字認識項目照合／補正処理」に戻る。
【００８７】
他方、ステップＳ１８０４で帳票の縦罫線が探索できなかった場合（ステップＳ１８０４：Ｎｏ）、サブルーチン「文字項目罫線照合処理」を終了し、定義体に登録された項目罫線と読み取った帳票の項目罫線の照合結果が、「不一致」であるとして図１７のサブルーチン「文字認識項目照合／補正処理」に戻る。
【００８８】
サブルーチン「文字項目罫線照合処理」が終了すると、ステップＳ１７０２において、定義体に登録された項目罫線と読み取った帳票の項目罫線の照合結果が、「一致」であるか否（「不一致」である）かを判断する。
【００８９】
一致であれば（ステップＳ１７０２：Ｙｅｓ）、定義体の次の項目について、ステップＳ１７０１のサブルーチン「文字項目罫線照合処理」を実行する。
【００９０】
他方、不一致であれば（ステップＳ１７０２：Ｎｏ）、ステップＳ１７０３において、サブルーチン「文字項目定義補正処理」を実行し、ステップＳ１７０３において、定義体の認識項目の項目罫線を補正する。なお、補正の対象である定義体は、本「帳票処理」が実行されている間だけ一時的にバッファに複製されたものを用いる。
【００９１】
サブルーチン「文字項目定義補正処理」について、図２３、図２４、図２５及び図２６を用いて説明する。
【００９２】
図２３及び図２６のフローチャートで示すサブルーチン「文字項目定義補正処理」は、上述したサブルーチン「文字項目罫線照合処理」で「不一致」となった定義体が対象となる。
【００９３】
項目の横罫線数で、図２３のステップＳ２３０１乃至Ｓ２３０６のループ処理を実行する。
【００９４】
まず、ステップＳ２３０１において、「定義体の基準横罫線」と「定義体の項目横罫線」の差を求め、「帳票の基準横罫線」に求めた差を適用し、所定のマージン内にある帳票の横罫線を探索する。例えば、図２４の（Ａ）に示すように、定義体の基準横罫線１２０１と、１番目の横罫線としての横罫線１２０１の縦方向の差を求める。横罫線１２０１は、基準横罫線１２０１そのものであるので、差は「０」となる。帳票の基準横罫線７０１に求めた差「０」を適用し、図２４の（Ｂ）に示すように、所定のマージン内にある帳票の横罫線を探索する。例えば、「帳票の基準横罫線７０１の縦方向の座標値」＋「０」±「マージン」内にある帳票の横罫線を探索する。
【００９５】
ステップＳ２３０２において、ステップＳ２３０１で帳票の横罫線が探索できたか否かを判断する。探索できた場合（ステップＳ２３０２：Ｙｅｓ）、上述の例では、図２４の（Ｂ）に示すように、横罫線７０１が探索されるので、ステップＳ２３０１に戻る。
【００９６】
２回目のループ処理のステップＳ２３０１において、定義体の基準横罫線１２０１と、２番目の横罫線としての横罫線１２０２の縦方向の座標値の差「１」を求める。帳票の基準横罫線７０１に求めた差「１」を適用し、所定のマージン内にある帳票の横罫線７０２を探索する。
【００９７】
同様に、３回目のループ処理のステップＳ２３０１において、定義体の基準横罫線１２０１と、３番目の横罫線としての横罫線１２０３の縦方向の座標値の差「３」を求める。帳票の基準横罫線７０１に求めた差「３」を適用し、所定のマージン内にある帳票の横罫線を探索する。図２４に示した例では、横罫線１２０３に対応する帳票の横罫線は探索できない（図２４の（Ｂ）を参照）。
【００９８】
ステップＳ２３０２で帳票の横罫線が探索できなかった場合（ステップＳ２３０２：Ｎｏ）、例えば、図２４に示した例のように、横罫線１２０３に対応する帳票の横罫線が探索できなかった場合、ステップＳ２３０３において、ステップＳ２３０１で用いたマージンを拡張したマージンを適用して、帳票の横罫線を探索する。
【００９９】
そして、ステップＳ２３０４において、ステップＳ２３０３で帳票の横罫線が探索できたか否かを判断する。
【０１００】
探索できなかった場合（ステップＳ２３０４：Ｎｏ）、サブルーチン「文字項目定義補正処理」を終了し、定義体の認識項目の項目罫線の補正が失敗したとして図１７のサブルーチン「文字認識項目照合／補正処理」に戻る。
【０１０１】
他方、検索できた場合（ステップＳ２３０４：Ｙｅｓ）、上述の例では、図２４の（Ｂ）に示すように、横罫線７０４が探索される。
【０１０２】
そして、ステップＳ２３０５において、補正値を算出し、算出した補正値で定義体の横罫線を補正する。補正した横罫線は、図２５の（Ａ）の横罫線２５０３となる。ここで、補正値は、例えば、（「ステップＳ２３０３で探索した帳票の横罫線７０４の縦方向の座標値」−「帳票の基準横罫線７０１の縦方向の座標値」）−（「検索により横罫線７０４と対応した定義体の横罫線１２０３の縦方向の座標値」−「定義体の基準横罫線１２０１の縦方向の座標値」）を算出して求める。
【０１０３】
次に、項目の縦罫線数で、ステップＳ２３０６のループ処理を実行する。
ステップＳ２３０６において、「項目の縦罫線」の縦方向の座標値に、ステップＳ２３０５で算出した補正値を加算する。
【０１０４】
次に、項目の縦罫線数で、図２６のステップＳ２６０１乃至Ｓ２６０６のループ処理を実行する。
【０１０５】
まず、ステップＳ２６０１において、「定義体の基準縦罫線」と「定義体の項目縦罫線」の差を求め、「帳票の基準縦罫線」に求めた差を適用し、所定のマージン内にある帳票の縦罫線を探索する。例えば、「帳票の基準縦罫線の横方向の座標値」＋「０」±「マージン」内にある帳票の縦罫線を探索する。
【０１０６】
ステップＳ２６０２において、ステップＳ２６０１で帳票の縦罫線が探索できたか否かを判断する。探索できた場合（ステップＳ２６０２：Ｙｅｓ）、ステップＳ２６０１に戻る。
【０１０７】
他方、ステップＳ２６０２で帳票の縦罫線が探索できなかった場合（ステップＳ２６０２：Ｎｏ）、ステップＳ２６０３において、ステップＳ２６０１で用いたマージンを拡張したマージンを適用して、帳票の縦罫線を探索する。
【０１０８】
そして、ステップＳ２６０４において、ステップＳ２６０３で帳票の縦罫線が探索できたか否かを判断する。
【０１０９】
探索できなかった場合（ステップＳ２６０４：Ｎｏ）、サブルーチン「文字項目定義補正処理」を終了し、定義体の認識項目の項目罫線の補正が失敗したとして図１７のサブルーチン「文字認識項目照合／補正処理」に戻る。
【０１１０】
他方、検索できた場合（ステップＳ２６０４：Ｙｅｓ）、ステップＳ２６０５において、補正値を算出し、算出した補正値で定義体の縦罫線を補正する。
【０１１１】
次に、項目の横罫線数で、ステップＳ２６０６のループ処理を実行する。
ステップＳ２６０６において、「項目の横罫線」の横方向の座標値に、ステップＳ２６０５で算出した補正値を加算する。
【０１１２】
そして、サブルーチン「文字項目定義補正処理」を終了し、定義体の認識項目の項目罫線の補正が成功したとして図１７のサブルーチン「文字認識項目照合／補正処理」に戻る。
【０１１３】
図１７のステップＳ１７０４において、サブルーチン「文字項目定義補正処理」により定義体の認識項目の項目罫線の補正が成功したか否（失敗）かを判断する。
【０１１４】
成功した場合（ステップＳ１７０４：Ｙｅｓ）、サブルーチン「文字認識項目照合／補正処理」を終了し、定義体に登録された項目罫線と読み取った帳票が補正により一致したとして図９の「帳票処理」に戻る。
【０１１５】
他方、失敗した場合（ステップＳ１７０４：Ｎｏ）、サブルーチン「文字認識項目照合／補正処理」を終了し、定義体に登録された項目罫線と読み取った帳票が補正によっても一致しなかった（不一致）であるとして図９の「帳票処理」に戻る。
【０１１６】
図９のステップＳ９０５において、定義体に登録された項目罫線と読み取った帳票が一致しているか否かを判断する。
【０１１７】
一致していない場合（ステップＳ９０５：Ｎｏ）、ステップＳ９０１に戻り、次の定義体を取り出す。
【０１１８】
他方、一致している場合（ステップＳ９０５：Ｙｅｓ）、ステップＳ９０６において、一致した定義体があるか否かを判断する。
【０１１９】
一致した定義体がない場合（ステップＳ９０６：Ｎｏ）、ステップＳ９０７において、認識対象イメージを新規の帳票として、その定義体を新規登録し帳票処理を終了する。
【０１２０】
他方、一致した定義体がある場合（ステップＳ９０６：Ｙｅｓ）、ステップＳ９０８において、一致した定義体に従い、項目内の文字認識を行った後、帳票処理を終了する。
【０１２１】
以上、本発明の実施の形態を、図面を参照しながら説明してきたが、本発明が適用される帳票処理装置は、上述の実施の形態に限定されない。
【０１２２】
上述してきた本発明の実施の形態は、帳票処理装置の一機能としてハードウェアまたはＤＳＰ（Digital Signal Processor）ボードやＣＰＵボードでのファームウェアもしくはソフトウェアにより実現することができる。
【０１２３】
また、本発明が適用される帳票処理装置は、その機能が実行されるのであれば、上述の実施の形態に限定されることなく、単体の装置であっても、複数の装置からなるシステムあるいは統合装置であっても、ＬＡＮ、ＷＡＮ等のネットワークを介して処理が行なわれるシステムであってもよいことは言うまでもない。
【０１２４】
また、バスに接続されたＣＰＵ、ＲＯＭやＲＡＭのメモリ、入力装置、出力装置、外部記録装置、媒体駆動装置、ネットワーク接続装置で構成されるシステムでも実現できる。すなわち、前述してきた実施の形態のシステムを実現するソフトェアのプログラムを記録したＲＯＭやＲＡＭのメモリ、外部記録装置、可搬記録媒体を、帳票処理装置に供給し、その帳票処理装置のコンピュータがプログラムを読み出し実行することによっても、達成されることは言うまでもない。
【０１２５】
この場合、可搬記録媒体等から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した可搬記録媒体等は本発明を構成することになる。
【０１２６】
プログラムを供給するための可搬記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、磁気テープ、不揮発性のメモリーカード、ＲＯＭカード、電子メールやパソコン通信等のネットワーク接続装置（言い換えれば、通信回線）を介して記録した種々の記録媒体などを用いることができる。
【０１２７】
また、コンピュータ（情報処理装置）がメモリ上に読み出したプログラムを実行することによって、前述した実施の形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが実際の処理の一部又は全部を行ない、その処理によっても前述した実施の形態の機能が実現される。
【０１２８】
さらに、可搬型記録媒体から読み出されたプログラムやプログラム（データ）提供者から提供されたプログラム（データ）が、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行ない、その処理によっても前述した実施の形態の機能が実現され得る。
【０１２９】
すなわち、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成又は形状を取ることができる。
【符号の説明】
【０１３０】
１          帳票処理システム
１０        画像読取装置
２０        帳票処理装置
２１        罫線抽出部
２２        罫線レイアウト照合部
２３        文字認識項目照合部
２４        文字認識項目補正部
２５        文字認識部
３０        定義帳票情報データベース（ＤＢ）
２０１      ＣＰＵ（Central Processing Unit）
２０２      入力装置
２０３      出力装置
２０４      ＲＯＭ（Read Only Memory）
２０５      ＲＡＭ（Random Access Memory）
２０６      インターフェース（Ｉ／Ｆ）
２０７      バス
７０１、７０２、７０３、７０４、７０５、７０６、７０７、７０８、７０９  横罫線
８０１、８０２、８０３、８０４  縦罫線
１２０１、１２０２、１２０３、１２０４、１２０５、１２０６、１２０７、１２０８、１２０９  横罫線
１３０１、１３０２、１３０３、１３０４  縦罫線
２２０１、２２０２、２２０９、２２１１、２２１２、２２１９  縦罫線
２５０３    横罫線
【図１】
0006342292.tif 000002
【図２】
0006342292.tif 000003
【図３】
0006342292.tif 000004
【図４】
0006342292.tif 000005
【図５】
0006342292.tif 000006
【図６】
0006342292.tif 000007
【図７】
0006342292.tif 000008
【図８】
0006342292.tif 000009
【図９】
0006342292.tif 000010
【図１０】
0006342292.tif 000011
【図１１】
0006342292.tif 000012
【図１２】
0006342292.tif 000013
【図１３】
0006342292.tif 000014
【図１４】
0006342292.tif 000015
【図１５】
0006342292.tif 000016
【図１６】
0006342292.tif 000017
【図１７】
0006342292.tif 000018
【図１８】
0006342292.tif 000019
【図１９】
0006342292.tif 000020
【図２０】
0006342292.tif 000021
【図２１】
0006342292.tif 000022
【図２２】
0006342292.tif 000023
【図２３】
0006342292.tif 000024
【図２４】
0006342292.tif 000025
【図２５】
0006342292.tif 000026
【図２６】
0006342292.tif 000027