(57)【要約】【課題】多種の帳票が混在する場合においても、コストの増大を抑制しつつ、帳票の読取り精度を向上させる。【解決手段】位置照合部１０４は、帳票画像データ１１３および帳票定義データ１１０ｂを入力とし、帳票定義データ１１０ｂに含まれる位置情報１１１ｂに基づいて、読取り対象文字列の候補となる文字列画像１１４を帳票画像データ１１３から抽出し、文字認識部１０５は、文字列画像１１４と入力とし、その文字列画像１１４に基づいて文字認識処理を実施し、属性照合部１０６は、文字コード１１５と帳票定義データ１１０ｂを入力とし、簡易帳票定義データ１１０ｂに含まれる属性情報１１２ｂを用いた文字コード１１５に対する照合結果に基づいて読取結果１１６を決定する。【選択図】図１
2020087112.tif 000002
【特許請求の範囲】
【請求項１】
帳票画像データから抽出された文字列画像の位置情報と、読取り対象文字列に対して定義された位置情報との照合結果に基づいて、前記読取り対象文字列の候補となる文字列画像を決定する位置照合部と、
前記読取り対象文字列の候補となる文字列画像に基づいて文字認識を行う文字認識部と、
前記文字認識部による文字認識結果の属性と、前記読取り対象文字列に対して定義された属性情報との照合結果に基づいて、前記読取り対象文字列の候補となる文字列画像の読取結果を決定する属性照合部とを備える帳票処理装置。
【請求項２】
前記位置照合部は、前記帳票画像データから抽出された文字列画像の位置と前記読取り対象文字列に対して定義された位置との距離に基づいて、前記読取り対象文字列の候補となる文字列画像を決定する請求項１に記載の帳票処理装置。
【請求項３】
前記位置照合部は、前記文字列画像が帳票画像に複数存在する場合、前記読取り対象文字列との距離が最も小さい文字列画像を前記読取り対象文字列の候補として決定する請求項２に記載の帳票処理装置。
【請求項４】
前記読取り対象文字列の位置と属性の指定に基づいて、前記読取り対象文字列の位置情報と属性情報とが定義された帳票定義データを作成する帳票定義データ作成部をさらに備える請求項１に記載の帳票処理装置。
【請求項５】
前記読取り対象文字列の位置情報と属性情報とが定義された帳票定義データを、前記帳票画像データの特徴量に紐付けて格納する帳票定義データベースと、
前記帳票画像データの特徴量を抽出する特徴抽出部とを備え、
前記帳票定義データベースは、前記帳票画像データの特徴量に基づいて前記帳票定義データを選択し、前記位置照合部に出力する請求項４に記載の帳票処理装置。
【請求項６】
前記帳票定義データベースは、前記帳票画像データの第１特徴量と、前記帳票定義データに紐付けられた第２特徴量との間の距離が閾値以下の前記第２特徴量に対応する帳票定義データを選択し、前記位置照合部に出力する請求項５に記載の帳票処理装置。
【請求項７】
前記帳票定義データが複数選択された場合、前記位置照合部は、前記帳票画像データから抽出された文字列画像の位置と前記読取り対象文字列に対して定義された位置との距離に基づいて前記帳票定義データごとに評価値を計算し、前記評価値が最も小さい帳票定義データに基づく文字列画像を前記読取り対象文字列の候補として決定する請求項６に記載の帳票処理装置。
【請求項８】
前記帳票画像データから抽出された項目名を含む文字列画像の文字認識結果に基づいて、前記文字列画像の読取結果を決定する定義レス読取部さらに備える請求項５に記載の帳票処理装置。
【請求項９】
前記位置照合部が、前記位置情報の照合に失敗したときか、
前記文字認識部が、前記文字認識に失敗したときか、
前記属性照合部が、前記属性情報の照合に失敗したときか、
前記帳票定義データベースが、前記帳票定義データの選択に失敗したとき、
前記定義レス読取部は、前記帳票画像データの読取りを実行する請求項８に記載の帳票処理装置。
【請求項１０】
前記位置照合部が、前記位置情報の照合に失敗したときか、
前記文字認識部が、前記文字認識に失敗したときか、
前記属性照合部が、前記属性情報の照合に失敗したときか、
前記帳票定義データベースが、前記帳票定義データの選択に失敗したときか、
前記定義レス読取部が、前記帳票画像データの読取りに失敗したとき、
前記帳票定義データ作成部は、前記帳票定義データの作成を実行する請求項８に記載の帳票処理装置。
【請求項１１】
プロセッサにより実行される帳票処理方法であって、
前記プロセッサは、
帳票画像データから抽出された文字列画像の位置情報と、読取り対象文字列に対して定義された位置情報との照合結果に基づいて、前記読取り対象文字列の候補となる文字列画像を決定し、
前記読取り対象文字列の候補となる文字列画像に基づいて文字認識を行い、
前記文字認識結果の属性と、前記読取り対象文字列に対して定義された属性情報との照合結果に基づいて、前記読取り対象文字列の候補となる文字列画像の読取結果を決定する帳票処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票を読取り可能な帳票処理装置および帳票処理方法に関する。
【背景技術】
【０００２】
従来、帳票上の文字列を認識するとき、認識すべき文字列の位置、属性、文字種、文字列の周囲の枠線のサイズや種類、枠線中に書かれているプレ印刷文字などを帳票定義データとして予め登録し、その帳票定義データに基づいて文字領域を決定して認識を行っていた。
【０００３】
また、多数の種類の帳票が混在した環境で処理を行う場合には、帳票定義データを複数登録し、処理対象の帳票種を特定した上で、適切な帳票定義データを選択する必要があった。一方、帳票定義データを利用せずに、帳票中の項目名や項目値の候補を自動的に抽出し、それらの位置関係などから尤もらしい読取り項目を決定する技術もあった。
【０００４】
帳票定義データを作成する技術に関しては、例えば、特許文献１に記載の技術がある。特許文献１には、「指定された読取り領域周辺あるいは内部のプレ印刷文字、記入文字と定義画像データ入力時に自動抽出した枠、罫線等のレイアウト情報を基にして定義データの自動作成を行う」という記載がある。
【０００５】
帳票種を特定する技術に関しては、例えば、特許文献２に記載の技術がある。特許文献２には、「本発明では、登録用カラー帳票画像の画素値の度数分布と、処理対象のカラー帳票画像の画素値の度数分布を作成する。各色成分毎に度数分布の相関係数を算出し、相関係数からカラー画像間の類似度を算出する。最も高い類似度が所定値以上のとき、類似度が最高値をとる登録カラー画像が、処理対象のカラー帳票画像と同一種であると判定する」という記載がある。
【０００６】
帳票定義データを用いることなく帳票上の文字列を認識する技術に関しては、例えば、特許文献３に記載の技術がある。特許文献３には、「帳票画像から文字列領域を検出する文字列検出部と、前記文字列領域の個々の文字を認識する文字列認識部と、帳票画像内の文字列に対し、当該文字列が項目名である確率を表す項目名尤度を計算する項目名尤度計算部と、帳票画像内の文字列に対し、当該文字列が表記辞書に登録された単語や文字列の文法表記ルールに一致する確率を表す項目値尤度を計算する項目値尤度計算部と、帳票画像内の文字列ペアに対し、当該文字列ペアの文字列の枠または文字列矩形に基づいて、当該文字列ペアの配置関係が項目名−項目値関係として妥当であるかを表す配置尤度を計算する配置尤度計算部と、前記項目名尤度、項目値尤度、配置尤度を基に、当該文字列ペアの項目名−項目値としての尤もらしさを表す評価値を計算する項目名−項目値関係評価値計算部と、前記項目名−項目値関係評価値計算部の出力する前記評価値により、帳票画像内での項目名−項目値関係の対応付けを決定する項目名−項目値関係決定部を有することを特徴とする」という記載がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００４−２５８７０６号公報
【特許文献２】特開２００２−２４８２９号公報
【特許文献３】特開２００２−２４８２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１、２の技術では、処理の対象となる帳票種の多様な状況が想定されていない。
【０００９】
すなわち、特許文献１の技術においては、帳票定義データ作成の一部自動化が実現されているものの、多種の帳票定義を作成するためには、高いコストが発生していた。特許文献２の技術においては、帳票種が多く、多種の帳票が混在する場合に精度良く文字列を見分けることが困難だった。
【００１０】
特許文献３では、項目名が存在せず、項目値のみが書かれた帳票については読取りが困難だった。また、項目名に対応する尤もらしい項目値の候補が複数存在する場合に帳票の読取り精度が低下することがあった。
【００１１】
本発明は、上記事情に鑑みなされたものであり、その目的は、多種の帳票が混在する場合においても、コストの増大を抑制しつつ、帳票の読取り精度を向上させることが可能な帳票処理装置および帳票処理方法を提供することにある。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、第１の観点に係る帳票処理装置は、帳票画像データから抽出された文字列画像の位置情報と、読取り対象文字列に対して定義された位置情報との照合結果に基づいて、前記読取り対象文字列の候補となる文字列画像を決定する位置照合部と、前記読取り対象文字列の候補となる文字列画像に基づいて文字認識を行う文字認識部と、前記文字認識部による文字認識結果の属性と、前記読取り対象文字列に対して定義された属性情報との照合結果に基づいて、前記読取り対象文字列の候補となる文字列画像の読取結果を決定する属性照合部とを備える。
【発明の効果】
【００１３】
本発明によれば、多種の帳票が混在する場合においても、コストの増大を抑制しつつ、帳票の読取り精度を向上させることができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、第１実施形態に係る帳票処理装置の構成を示すブロック図である。
【図２】図２は、帳票定義データの作成者に提示される帳票画像データの画面表示例を示す図である。
【図３】図３は、第１実施形態に係る帳票処理装置で用いられる簡易帳票定義データのデータ構造の一例を示す図である。
【図４】図４は、帳票画像データから抽出された特徴量と帳票定義データとの対応関係を示す図である。
【図５】図５は、第１実施形態に係る帳票処理装置の処理を示すフローチャートである。
【図６】図６は、第２実施形態に係る帳票処理装置の構成を示すブロック図である。
【図７】図７は、第２実施形態に係る帳票処理装置の処理を示すフローチャートである。
【図８】図８は、第３実施形態に係る帳票処理装置のハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【００１５】
実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また、実施形態の中で説明されている諸要素およびその組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１６】
図１は、第１実施形態に係る帳票処理装置の構成を示すブロック図である。
図１において、帳票処理装置は、スキャナ１０１、特徴抽出部１０２、帳票定義データベース１０３、位置照合部１０４、文字認識部１０５、属性照合部１０６、読取結果データベース１０７および帳票定義データ作成部１０８を備える。帳票定義データ作成部１０８は、ディスプレイ１０９に接続されている。
【００１７】
スキャナ１０１は、帳票を入力とし、図示しないランプを用いて光を帳票に照射し、その透過光を図示しない撮像素子を利用して電気信号へと変換し、帳票画像データ１１３として出力する。帳票画像データ１１３は、帳票に記入されている文字列の文字列画像を含む。スキャナ１０１は、カラー帳票画像データを出力してもよいし、モノクロ帳票画像データを出力してもよい。スキャナ１０１は、ノイズ、モアレおよび裏写りなどを軽減する前処理を帳票画像データ１１３に適用してもよい。
【００１８】
特徴抽出部１０２は、帳票画像データ１１３を入力とし、予め定められた複数の特徴に関する特徴量１１４ａ、１１４ｂを帳票画像データ１１３から抽出し、帳票定義データベース１０３に出力する。帳票画像データ１１３の特徴としては、例えば、帳票全体の輝度ヒストグラム情報、帳票に記載された枠線の接続関係、枠線の交点の接続関係などを設定することができる。特徴抽出部１０２は、帳票画像データ１１３に含まれる特徴を数値化することで特徴量１１４ａ、１１４ｂを抽出する。
【００１９】
特徴量１１４ａは、帳票定義データ作成部１０８で作成された帳票定義データ１１０ａと紐付けされた状態で帳票定義データベース１０３に格納される。特徴量１１４ｂは、位置照合部１０４および属性照合部１０６に出力する帳票定義データ１１０ｂを帳票定義データ１１０ａから選択するために用いられる。このとき、帳票定義データベース１０３は、特徴量１１４ｂを特徴量１１４ａと比較し、その比較結果に基づいて帳票定義データ１１０ｂを選択することができる。
【００２０】
帳票定義データベース１０３は、特徴量１１４ａと特徴量１１４ｂとの比較結果に基づいて帳票定義データ１１０ｂを選択することにより、帳票定義データ１１０ｂの抽出の信頼性を向上させることが可能になる。
【００２１】
特徴抽出部１０２は、機械学習を用いて帳票画像データ１１３から特徴を抽出してもよい。例えば、多数の帳票画像データ１１３を収集し、帳票種でカテゴリ分けする。次に、前段が畳み込み層、後段が全結合層のニューラルネットワークモデルを設定し、入力を帳票画像データ１１３、出力を帳票種として、収集した帳票画像データを教師データとして用いて多クラス識別器を構築する。以上の手順で構築したニューラルネットワークモデルの畳み込み層を特徴抽出器として利用できる。このとき、ニューラルネットワークモデルの畳み込み層に帳票画像データ１１３を入力すると、特徴量１１４ａ、１１４ｂが出力される。
【００２２】
このように、機械学習を用いて特徴を抽出することで、特徴の選択と特徴抽出器の構築を自動化することができる。また、多クラス識別器を精度良く構築できた場合には、多クラス識別器から取り出した畳み込み層も、帳票画像の特徴を精度良く抽出する特徴抽出器であることが期待できる。
【００２３】
帳票定義データ作成部１０８は、帳票画像データ１１３を入力として、帳票画像データ１１３を帳票定義データ１１０ａの作成者に提示する。そして、帳票定義データ作成部１０８は、作成者の読取り対象文字列の位置と属性の指定に基づいて、帳票定義データ１１０ａを作成し、帳票定義データベース１０３に出力する。
【００２４】
図２は、帳票定義データの作成者に提示される帳票画像データの画面表示例を示す図である。
図２において、画面３０１は、図１のディスプレイ１０９に表示される。画面３０１は、帳票画像データ１１３、カーソル３０３および確定ボタン３０４を表示する。
【００２５】
帳票定義データ１１０ａの作成者は、図示しないポインティングデバイスを用いてカーソル３０３を画面３０１上で移動させることができる。ポインティングデバイスとしては、例えば、マウス、タッチペンまたはタッチパネルなどを用いることができる。
【００２６】
帳票定義データ１１０ａの作成者は、例えば、帳票画像データ１１３の位置Ｐ１〜Ｐ４に記入された文字列が読取り対象文字列として定義された帳票定義データ１１０ａを作成するものとする。
【００２７】
このとき、帳票定義データ１１０ａの作成者は、帳票画像データ１１３の各位置Ｐ１〜Ｐ４と、各位置Ｐ１〜Ｐ４の文字列の属性を指定する。
【００２８】
例えば、帳票定義データ１１０ａの作成者は、帳票画像データ１１３の位置Ｐ２と、位置Ｐ２の文字列の属性を指定するものとする。このとき、帳票定義データ１１０ａの作成者は、位置Ｐ２の左上座標Ｐ２−１をカーソル３０３で指し示し、ポインティングデバイスのボタンを押下することで、帳票画像データ１１３の位置Ｐ２の左上座標Ｐ２−１が、位置Ｐ２の読取り対象文字列の位置情報１１１ａとして定義される。また、帳票定義データ１１０ａの作成者は、位置Ｐ２の右下座標Ｐ２−２をカーソル３０３で指し示し、ポインティングデバイスのボタンを押下することで、帳票画像データ１１３の位置Ｐ２の右下座標Ｐ２−２が、位置Ｐ２の読取り対象文字列の位置情報１１１ａとして定義される。
【００２９】
このとき、画面３０１は、位置情報１１１ａが示す範囲を矩形で表示する。例えば、画面３０１は、位置Ｐ２の読取り対象文字列について、対向する頂点として左上座標Ｐ２−１および右下座標Ｐ２−２を持つ矩形を表示する。
【００３０】
次に、帳票定義データ１１０ａの作成者は、例えば、位置Ｐ２の読取り対象文字列について、左上座標Ｐ２−１および右下座標Ｐ２−２が設定された状態で、位置Ｐ２を表す矩形内をカーソル３０３で指し示し、ポインティングデバイスのボタンを押下することで、予め決められた属性群を表示させる。そして、帳票定義データ１１０ａの作成者は、その属性群から属性を指定することで、その指定した属性が、位置Ｐ２の読取り対象文字列の属性情報１１２ａとして定義される。このとき、位置Ｐ２の読取り対象文字列の属性情報１１２ａが、位置Ｐ２を表す矩形の近辺に表示される。例えば、位置Ｐ２の読取り対象文字列の属性情報１１２ａが支店名である場合、支店名という属性情報１１２ａが、位置Ｐ２を表す矩形の近辺に表示される。
【００３１】
また、帳票定義データ１１０ａの作成者は、読取り対象文字列について、属性情報１１２ａが設定された状態で、位置情報１１１ａを表す矩形をカーソル３０３で指し示し、ポインティングデバイスのボタンを押下することで、予め決められた属性群を表示させる。そして、帳票定義データ１１０ａの作成者は、その属性群から、現在設定されている属性情報１１２とは異なる属性を指定することで、現在設定されている属性情報１１２ａとは異なる属性が、カーソル３０３で指し示した位置の読取り対象文字列の属性情報１１２ａとして定義される。このとき、新たに定義された属性情報１１２ａが、カーソル３０３で指し示した位置を表す矩形の近辺に表示される。
【００３２】
帳票定義データ１１０ａの作成者は、以上の操作を繰り返すことで、帳票画像データ１１３の各位置Ｐ１〜Ｐ４について、各読取り対象文字列の位置情報１１１ａと属性情報１１２ａとの組を定義する。
【００３３】
そして、帳票定義データ１１０ａの作成者は、帳票画像データ１１３の各位置Ｐ１〜Ｐ４について、読取り対象文字列の位置情報１１１ａと属性情報１１２ａとの組を設定すると、確定ボタン３０４をカーソル３０３にて指し示し、ポインティングデバイスのボタンを押下することにより、読取り対象文字列の位置情報１１１ａと属性情報１１２ａとの組を確定させる。
【００３４】
帳票定義データ作成部１０８は、読取り対象文字列の位置情報１１１ａと属性情報１１２ａとの組が確定されると、読取り対象文字列の位置情報１１１ａと属性情報１１２ａとの組が定義された帳票定義データ１１０ａを作成し、帳票定義データベース１０３に出力する。
【００３５】
このように、図２の画面構成をとることで、帳票定義データ１１０ａの作成者は、ポインティングデバイスを用いた簡単な操作で位置情報１１１と属性情報１１２を簡単に設定することが可能となり、帳票定義データ１１０ａを低コストで作成することができる。
【００３６】
帳票定義データベース１０３は、帳票定義データ１１０ａの作成時には、帳票画像データ１１３の特徴量１１４ａに紐付けて、その帳票画像データ１１３についての帳票定義データ１１０ａを格納する。また、帳票定義データベース１０３は、帳票の読取り時には、帳票画像データ１１３の特徴量１１４ｂに基づいて、帳票定義データ１１０ｂを選択する。そして、帳票定義データ１１０ｂに含まれる位置情報１１１ｂを位置照合部１０４に出力し、帳票定義データ１１０ｂに含まれる属性情報１１２ｂを属性照合部１０６に出力する。
【００３７】
すなわち、帳票定義データベース１０３は、帳票定義データ１１０ａの作成時には、帳票定義データ１１０ａと、帳票定義データ１１０ａを作成したときに利用した帳票画像データ１１３から特徴抽出部１０２で抽出された特徴量１１４ａを入力とし、帳票定義データ１１０ａと特徴量１１４ａを紐付けて記憶する。
【００３８】
帳票定義データベース１０３は、帳票定義データ１１０ａと特徴量１１４ａが新たに入力される度に、帳票定義データ１１０ａと特徴量１１４ａを紐付けて追記することで、複数の帳票定義データ１１０ａを格納する。
【００３９】
また、帳票定義データベース１０３は、帳票の読取り時には、特徴量１１４ｂを入力とし、その入力された特徴量１１４ｂに基づいて、帳票定義データ１１０ａの中から帳票定義データを１つ以上抽出し、帳票定義データ１１０ｂとして出力する。
【００４０】
すなわち、帳票定義データベース１０３は、すべての記憶した特徴量１１４ａに対し、入力された特徴量１１４ｂとの距離Ｄを数式１に従って算出し、特徴量１１４ｂとの距離Ｄが予め設定された閾値ＴＤ以下の特徴量１１４ａに紐付けられた帳票定義データ１１０ａを帳票定義データ１１０ｂとして出力する。
【００４１】
【数１】
2020087112.tif 000003
【００４２】
ここで、Ｆａは特徴量１１４ａを示すベクトル、Ｆｂは特徴量１１４ｂを示すベクトル、・はドット積を示す。
【００４３】
このとき、帳票定義データベース１０３は、特徴量の観点で類似した帳票画像データ１１３に紐付けられた帳票定義データタ１１０ｂを抽出することができる。
【００４４】
帳票定義データベース１０３は、帳票定義データ１１０ｂを１つ以上抽出できなかった場合、帳票定義データ１１０ｂの取得に失敗したとみなしてもよい。帳票定義データ１１０ｂの取得に失敗した場合の動作は、図５のフローチャートを用いて後述する。
【００４５】
位置照合部１０４は、帳票画像データ１１３および帳票定義データ１１０ｂを入力とし、帳票定義データ１１０ｂに含まれる位置情報１１１ｂに基づいて、読取り対象文字列の候補となる文字列画像１１４を帳票画像データ１１３から抽出し、文字認識部１０５に出力する。
【００４６】
このとき、位置照合部１０４は、帳票画像データ１１３に含まれるすべての文字列を抽出する必要はなく、帳票定義データ１１０ｂで定義された読取り対象文字列を漏れなく抽出できればよい。言い換えれば、位置照合部１０４は、通常では読取り対象文字列にはならない帳票名、表中の項目名、各種注意書きに関する文字列画像などは抽出しなくてもよい。また、一般に帳票の端部付近に読取り対象文字列が含まれることは少ないため、位置照合部１０４は、帳票の端部以外から文字列画像１１４を抽出するようにしてもよい。
【００４７】
このように、読取り対象文字列の位置を定義することにより、帳票画像データ１１３から抽出される文字列画像１１４を減少させることができ、読取り精度を維持しつつ、処理の高速化を図ることができる。
【００４８】
位置照合部１０４における帳票画像データ１１３からの文字列画像の抽出は任意の方法を用いることができる。例えば、特許２９９１７６１号公報に記載されている方法を用いるようにしてもよい。
【００４９】
次に、位置照合部１０４は、帳票画像データ１１３から抽出した文字列画像に対し、位置情報１１１ｂで指定される位置から最短距離となる文字列画像１１４を数式２に従って決定し、文字認識部１０５に出力する。すなわち、位置照合部１０４は、位置情報１１１ｂで指定される位置の最も近くに存在する文字列画像１１４を抽出し、文字認識部１０５に出力する。
【００５０】
【数２】
2020087112.tif 000004
【００５１】
ここで、Ｌａは、文字列画像の抽出元の中心座標、Ｌｂは、帳票定義データ１１０ｂに含まれる位置情報１１１ｂの中心座標である。この中心座標は、位置情報１１１ｂに含まれる左上座標Ｐ２−１と左上座標Ｐ２−２の平均値で求められる。なお、帳票画像データ１１３から抽出した文字列画像が複数存在する場合、それらの文字列画像を添字ｉで区別する。
【００５２】
帳票定義データ１１０ｂに複数の位置情報１１１ｂが含まれている場合、位置照合部１０４は、それぞれの位置情報１１１ｂに対して、数式２に従って最短距離となる文字列画像１１４を決定し、文字認識部１０５に出力する。
【００５３】
帳票定義データベース１０３から出力された帳票定義データ１１０ｂが複数存在するとき、位置照合部１０４は、前述の方法でそれぞれの帳票定義データ１１０ｂに対して最短距離となる文字列画像を決定する。
【００５４】
次に、位置照合部１０４は、それぞれの帳票定義データ１１０ｂに対して数式３に従って評価値Ｅを算出し、評価値Ｅが最小となる帳票定義データ１１０ｂに基づいた文字列画像１１４を決定し、文字認識部１０５に出力する。
【００５５】
【数３】
2020087112.tif 000005
【００５６】
ここで、Ｌ´ａは、各帳票定義データ１１０ｂに対して決定された文字列画像の抽出元の中心座標、Ｌｂは、位置情報１１１ｂの中心座標を示す。この中心座標は、位置情報１１１ｂに含まれる左上座標Ｐ２−１と左上座標Ｐ２−２の平均値で求められる。帳票定義データ１１０ｂに位置情報１１０ｂが複数存在する場合、添字ｊで区別する。
【００５７】
位置照合部１０４は、その処理の途中経過および結果が信頼できないとみなされる状況になったならば、位置の照合に失敗したとみなしてもよい。例えば、位置照合部１０４は、、最小の評価値Ｅが、予め設定された閾値ＴＥを超えた場合、位置の照合に失敗したものとみなすことができる。位置の照合に失敗した場合の動作は、図５のフローチャートを用いて後述する。
【００５８】
文字認識部１０５は、文字列画像１１４と入力とし、その文字列画像１１４に基づいて文字認識処理を実施し、文字認識結果を文字コード１１５として出力する。
【００５９】
すなわち、文字認識部１０５は、文字列画像１１４を文字単位に切り出した後、それぞれの文字を特徴量に変換し、図示しない文字データベースに登録されている文字の特徴量との距離を計算し、最短距離の文字コード１１５を属性照合部１０６に出力する。
【００６０】
文字認識部１０５は、その処理の途中経過および結果が信頼できないとみなされる状況になったならば、文字認識に失敗したとみなしてもよい。例えば、文字認識部１０５は、特徴量間の最短距離が、予め設定された閾値を越えた場合に、信頼度が高い文字認識ができなかったものとし、文字認識に失敗したとみなすことができる。文字認識に失敗した場合の動作は、図５のフローチャートを用いて後述する。
【００６１】
属性照合部１０６は、文字コード１１５と帳票定義データ１１０ｂを入力とし、簡易帳票定義データ１１０ｂに含まれる属性情報１１２ｂを用いた文字コード１１５に対する照合結果に基づいて読取結果１１６を決定し、読取結果データベース１０７に出力する。
【００６２】
すなわち、属性照合部１０６は、読取り対象文字列の属性の種類に応じた検証処理を予め用意しておき、属性情報１１２ｂに従って文字コード１１５の照合処理を行い、文字コード１１５が示す属性が確からしい場合には、その文字コード１１５を読取結果１１６として出力する。
【００６３】
例えば、属性照合部１０６は、属性「銀行名」の検証処理として、「図示しない全国の銀行名を格納した銀行名データベースに対して文字列を問い合わせ、その銀行名データベースに文字列が含まれていたならば、文字列が属性「銀行名」として確からしいとみなす」検証処理を用意することができる。
【００６４】
また、例えば、属性照合部１０６は、属性「口座番号」の検証処理として、「文字列が７桁以下の数字で構成されていれば、文字列が確からしいとみなす」検証処理を用意することができる。
【００６５】
属性照合部１０６は、その処理の途中経過および結果が信頼できないとみなされる状況になったならば、属性の照合に失敗したとみなしてもよい。例えば、属性照合部１０６は、属性「銀行名」の検証処理において、銀行名データベースに文字列が含まれていなかった場合に、属性の照合に失敗したとみなすことができる。属性の照合に失敗した場合の動作は、図５のフローチャートを用いて後述する。
【００６６】
読取結果データベース１０７は、読取結果１１６を入力とし、その読取結果１１６を記憶する。また、読取結果データベース１０７は、読取結果１１６をユーザに提示し、ユーザによって修正された読取結果を読取結果データベース１０７に格納する読取結果修正部（図示しない）から、読取結果１１６の呼び出しあるいは格納の要求があれば、それぞれの要求に従う。
【００６７】
図３は、第１実施形態に係る帳票処理装置で用いられる簡易帳票定義データのデータ構造の一例を示す図である。
図３において、帳票定義データ１１０ａは、読取り対象文字列の位置情報１１１ａと属性情報１１２ａの組を複数個格納したデータ構造を持つ。例えば、図２の帳票画像データ１１３の各位置Ｐ１〜Ｐ４に記入されている文字列を読取り対象文字列１〜４とすることができる。このとき、帳票定義データ１１０ａには、読取り対象文字列１〜４ごとに、位置情報１１１ａと属性情報１１２ａの組が登録される。
【００６８】
位置情報１１１ａは、読取り対象文字列の左上座標Ｐ２−１および左上座標Ｐ２−２をそれぞれ帳票画像データ１１３の解像度における１ピクセル単位で表現することができる。
【００６９】
ただし、位置情報１１１ａは、１ピクセル単位に限定されるものではない。例えば、位置情報１１１は、帳票画像データ１１３の解像度より荒い単位、例えば２ピクセル単位または５ピクセル単位で、左上座標Ｐ２−１および左上座標Ｐ２−２を保持してもよい。このとき、画面３０１は、位置情報１１１ａの保持に用いられる単位で、読取り対象文字列の位置を示す矩形を表示するようにしてもよい。
【００７０】
また、位置情報１１１ａは、図１のスキャナ１０１に入力された帳票を基準としてミリメートル単位で保持してもよい。この場合、画面３０１は、適切なスケーリング処理を実施して、読取り対象文字列の位置を示す矩形を表示するようにしてもよい。この単位の設定は、帳票読取装置全体における読取り精度と関連し、単位を荒くすれば帳票定義を素早く行うことができるようになるが、読取り精度は低下するため、このバランスをみて設定するのがよい。
【００７１】
このように読取り対象文字列の位置情報１１１ａを設定することにより、帳票定義データ１１０ａの情報量を低減し、記録量が低減できるだけでなく、帳票定義データ生成部１０８において、必要以上に高い精度で手間をかけて帳票定義データ１１０ａが生成されるのを抑制できる。
【００７２】
属性情報１１２ａは、読取り対象文字列の種類を示す情報である。例えば、金融分野の帳票では、銀行名、支店名、口座種別、口座番号、振込日、名義および住所などを属性情報１１２ａとして設定することができる。
【００７３】
このように、帳票定義データ１１０ａは、位置情報１１１ａと属性情報１１２ａを含み、通常の定義データに含まれるような、枠形状、文字数、手書き・活字、プレ印刷文字および文字ピッチなどの情報を含まない。このため、帳票定義データ作成部１０８によって帳票定義データ１１０ａを容易に作成でき、帳票定義データ１１０ａの作成にかかる手間およびコストを削減できる。
【００７４】
図４は、帳票画像データから抽出された特徴量と帳票定義データとの対応関係を示す図である。なお、図４の例では、個々の特徴量１１４ａ、１１４ｂが２つの特徴量Ａ、Ｂのから構成される場合を示した。
図４において、帳票定義データベース１０３は、各帳票定義データ１１０ａを、その帳票定義データ１１０ａの作成に用いた帳票画像データ１１３の特徴量１１４ａと紐付けて記憶する。そして、帳票定義データベース１０３は、特徴抽出部１０２から特徴量１１４ｂが入力されると、特徴量１１４ｂとの距離Ｄが閾値ＴＤ以下の特徴量１１４ａに紐付けられた帳票定義データ１１０ａを選択し、その選択した帳票定義データ１１０ａを帳票定義データ１１０ｂとして出力する。
【００７５】
図５は、第１実施形態に係る帳票処理装置の処理を示すフローチャートである。
図５において、ステップＳ１０１では、スキャナ１０１は、帳票をスキャンし、帳票画像データ１１３に変換し、帳票画像データ１１３を特徴抽出部１０２、位置照合部１０４および帳票定義データ作成部１０８に出力する。
【００７６】
次に、ステップＳ１０２において、特徴抽出部１０２は、帳票画像データ１１３から特徴量１１４ａ、１１４ｂを抽出し、帳票定義データベース１０３に出力する。
【００７７】
次に、ステップＳ１０３ａにおいて、帳票定義データベース１０３は、特徴量１１４ｂに対応する帳票定義データ１１０ｂを１つ以上抽出する。
【００７８】
次に、ステップＳ１０３ｂにおいて、帳票定義データベース１０３は、ステップＳ１０３ａにおける帳票定義データ１１０ｂの取得に失敗したかどうかを判断する。帳票定義データ１１０ｂの取得に成功した場合、ステップＳ１０４ａに進み、帳票定義データ１１０ｂの取得に失敗した場合、ステップＳ１０８ａに進む。
【００７９】
次に、ステップＳ１０４ａにおいて、位置照合部１０４は、帳票定義データ１１０ｂに含まれる位置情報１１１ｂに基づいて、帳票画像データ１１３から文字列画像１１４を抽出する。
【００８０】
次に、ステップＳ１０４ｂにおいて、位置照合部１０４は、ステップＳ１０４ａにおける位置の照合に失敗したかどうかを判断する。位置の照合に成功した場合、ステップＳ１０５ａに進み、位置の照合に失敗した場合、ステップＳ１０８ａに進む。
【００８１】
次に、ステップＳ１０５ａにおいて、文字認識部１０５は、文字列画像１１４を文字認識し、文字コード１１５へ変換する。
【００８２】
次に、ステップＳ１０５ｂにおいて、文字認識部１０５は、ステップＳ１０５ａにおける文字の認識に失敗したかどうかを判断する。文字の認識に成功した場合、ステップＳ１０６ａに進み、文字の認識に失敗した場合、ステップＳ１０８ａに進む。
【００８３】
次に、ステップＳ１０６ａにおいて、属性照合部１０６は、帳票定義データ１１０ｂに含まれる属性情報１１２ｂに基づいて文字コード１１５を検証し、文字コード１１５の読取結果１１６を得る。
【００８４】
次に、ステップＳ１０６ｂにおいて、属性照合部１０６は、ステップＳ１０６ａにおける属性の照合に失敗したかどうかを判断する。属性の照合に成功した場合、ステップＳ１０７に進み、位置の照合に失敗した場合、ステップＳ１０８ａに進む。
【００８５】
次に、ステップＳ１０７において、読取結果データベース１０７は、属性照合部１０６から出力された読取り結果１１６を格納する。
【００８６】
次に、ステップＳ１０８ａにおいて、帳票定義作成部１０８は、帳票定義データ１１０ａを作成する必要があるか判断する。帳票定義データ１１０ａを作成する必要がある場合、ステップＳ１０８ｂに進み、帳票定義データ１１０ａを作成する必要がない場合、処理を終了する。
【００８７】
帳票定義データを作成する必要があるのは、帳票が正しく読取りできなかったと推定される場合である。具体的には、次の場合である。
（１）ステップＳ１０３ａにおいて、帳票定義データ１１０ｂの取得に失敗した場合。
（２）ステップＳ１０４ａにおいて、位置の照合に失敗した場合。
（３）ステップＳ１０５ａにおいて、文字認識に失敗した場合。
（４）ステップＳ１０６ａにおいて、属性の照合に失敗した場合。
（５）ステップＳ１０３ａにおいて、出力された帳票定義データ１１０ｂが信頼できない場合。すなわち、ＴＤ’＜ＴＤなる閾値ＴＤ’を予め設定したとき、閾値ＴＤ’＜距離Ｄ＜閾値ＴＤの関係を満たす場合。
（６）ステップＳ１０４ａにおいて、出力された文字列画像１１４が信頼できない場合。すなわち、ＴＥ’＜ＴＥなる閾値ＴＥ’を予め設定したとき、閾値ＴＥ’＜距離Ｅ＜閾値ＴＥの関係を満たす場合。
（７）図示しない読取結果の修正ステップにおいて、読取結果データベース１０７に格納された読取結果１１６が修正された場合。
【００８８】
次に、ステップＳ１０８ｂにおいて、帳票定義作成部１０８は、帳票画像データ１１３に基づいて、帳票定義データ１１０ａを生成する。
【００８９】
次に、ステップＳ１０３ｃにおいて、帳票定義データベース１０３は、帳票定義データ１１０ａを格納し、処理を終了する。
【００９０】
なお、ステップＳ１０４ｂあるいはステップＳ１０５ｂあるいはステップＳ１０６ｂに関しては、それぞれ省略することも可能である。この動作を採用したとき、読取り対象文字列が複数ある場合に、一部の文字列の読取に失敗しても、処理を完遂させることが可能である。
【００９１】
以上説明したように、上述した第１実施形態によれば、多種の帳票が混在する環境下でも、低コストで高精度の帳票読取りが実現できる。すなわち、位置情報１１１ａと属性情報１１２ａのみから成る帳票定義データ１１０ａを簡便な方法で生成することで、帳票定義データ１１０ａの作成のコストを削減することが可能となる。また、帳票定義データ１１０ｂの位置情報１１１ｂに基づいて候補となる文字列を帳票から抽出し、帳票定義データ１１０ｂの属性情報１１２ｂに基づいて文字列を検証することで、読取りの精度を担保することができる。ここで、帳票定義データ１１０ｂで定義された位置情報１１１ｂと属性情報１１２ｂに基づいて、帳票から抽出された文字列画像の読取結果１１６を決定でき、項目名が帳票にない場合においても、帳票読取りが実現できる。また、読取処理に失敗した場合に、帳票定義データ１１０ａを新たに生成することで、同様の帳票が次に入力されたときに読取りに成功する可能性を上げることができる。
【００９２】
また、ステップＳ１０３ｂあるいはステップＳ１０４ｂあるいはステップＳ１０５ｂあるいはステップＳ１０６ｂにおいて処理に失敗した場合、ステップＳ１０３ｃにおいて、新たな帳票定義データ１１０ａを帳票定義データベース１０３に格納した後、ステップＳ１０２に進み、同じ帳票画像データ１１３に対して処理するようにしてもよい。
【００９３】
本動作によって、帳票定義データ１１０ａを新たに作成するだけで、一度読取りに失敗した帳票に対して自動的に再読取り処理が実行されるため、失敗した読取結果をユーザが手作業で修正する手間を削減することができ、さらに新たに作成した帳票定義データ１１０ａによって帳票が読めるようになったのか即座に確認することが可能になる。また、帳票が読めるようになるまで、帳票定義データ１１０ａを修正することも容易にできるようになるため、帳票定義データ１１０ａの品質の向上も図ることができる。
【００９４】
図６は、第２実施形態に係る帳票処理装置の構成を示すブロック図である。
図６の帳票処理装置には、図１の帳票処理装置に定義レス読取部２０１が追加されている。図５のステップＳ１０３ｂ、Ｓ１０４ｂ、Ｓ１０５ｂ、Ｓ１０６ｂのいずれかで処理に失敗したと判断された時に、定義レス読取部２０１は動作する。
【００９５】
定義レス読取部２０１は、帳票画像データ１１３を入力として、予め定められ帳票中の読取項目を文字コード化して、読取結果１１６として出力する。定義レス読取部２０１は、帳票中の項目名などのキーワードを利用したり、文字認識結果を予め作成した属性ごとの辞書と突合することで、帳票定義データ１１０ｂを用いることなく、読取項目を推定する。定義レス読取部２０１は、例えば、特許第５６２１１６９号公報に記載の方法で実現することができる。
【００９６】
定義レス読取部２０１は、その処理の途中経過および結果が信頼できないとみなされる状況になったならば、帳票の読取りに失敗したとみなしてもよい。帳票の読取りに失敗した場合の動作は、図７のフローチャートを用いて後述する。
【００９７】
例えば、特許第５６２１１６９号公報に記載の方法で定義レス読取部２０１を実現した場合、定義レス読取部２０１は、特許第５６２１１６９号公報のステップＳ１７０で計算された評価値が、予め定めた閾値以下であったときに、信頼できる帳票読取りができなかったものとし、帳票の読取に失敗したとみなすことができる。
【００９８】
図７は、第２実施形態に係る帳票処理装置の処理を示すフローチャートである。
図７の処理には、図５の処理にステップＳ２０１ａ、Ｓ２０１ｂが追加されている。
【００９９】
ステップＳ１０３ｂにおいて、帳票定義データベース１０３は、ステップＳ１０３ａに帳票定義データの取得に失敗したとき、ステップＳ２０１ａに進む。ステップＳ１０４ｂにおいて、位置照合部１０４は、ステップＳ１０４ａにおける位置の照合に失敗したとき、ステップＳ２０１ａに進む。ステップＳ１０５ｂにおいて、文字認識部１０５は、ステップＳ１０５ａにおける文字の認識に失敗したとき、ステップＳ２０１ａに進む。ステップＳ１０６ｂにおいて、属性照合部１０６は、ステップＳ１０６ａにおける属性の照合に失敗したとき、ステップＳ２０１ａに進む。
【０１００】
次に、ステップＳ２０１ａにおいて、定義レス読取部２０１は、帳票画像データ１１３の読取項目を文字コード化し、読取結果１１６を得る。
【０１０１】
次に、ステップＳ２０１ｂにおいて、定義レス読取部２０１は、ステップＳ２０１ａにおける帳票の読取りに失敗したかどうかを判断する。帳票の読取りに成功した場合、ステップＳ１０７に進み、帳票の読取りに失敗した場合、ステップＳ１０８ａに進む。
【０１０２】
次に、ステップＳ１０８ａにおいて、帳票定義作成部１０８は、帳票定義データ１１０ａを作成する必要があるか判断する。帳票定義データ１１０ａを作成する必要がある場合、ステップＳ１０８ｂに進み、帳票定義データ１１０ａを作成する必要がない場合、処理を終了する。
【０１０３】
帳票定義データを作成する必要があるのは、帳票が正しく読取りできなかったと推定される場合である。具体的には、次の場合である。
（１）ステップＳ１０３において、帳票定義データ１１０ｂの取得に失敗した場合。
（２）ステップＳ１０４ａにおいて、位置の照合に失敗した場合。
（３）ステップＳ１０５ａにおいて、文字認識に失敗した場合。
（４）ステップＳ１０６ａにおいて、属性の照合に失敗した場合。
（５）ステップＳ１０３ａにおいて、出力された帳票定義データ１１０ｂが信頼できない場合。すなわち、ＴＤ’＜ＴＤなる閾値ＴＤ’を予め設定したとき、閾値ＴＤ’＜距離Ｄ＜閾値ＴＤの関係を満たす場合。
（６）ステップＳ１０４において、出力された文字列画像が信頼できない場合。すなわち、ＴＥ’＜ＴＥなる閾値ＴＥ’を予め設定したとき、閾値ＴＥ’＜距離Ｅ＜閾値ＴＥの関係を満たす場合。
（７）図示しない読取結果の修正ステップにおいて、読取結果データベース１０７に格納された読取結果１１６が修正された場合。
（８）ステップＳ２０１ａにおいて、帳票の読取りに失敗した場合。
【０１０４】
以上説明したように、上述した第２実施形態によれば、定義レス読取部２０１を設けることにより、処理対象の帳票に対応する帳票定義データ１１０ａが作成されていなくても、帳票の読取りが行うことが可能となる。例えば、帳票読取装置の運用初期に帳票定義データ１１０ａが十分に作成できていなくても、帳票読取装置の運用を開始することができる。あるいは、帳票読取装置の運用中に、新たな種類の帳票が入力されても、その帳票の読取りを行うことができる。
【０１０５】
また、ステップＳ１０３ｂおよびステップＳ１０４ｂおよびステップＳ１０５ｂおよびステップＳ１０６ｂおよびステップＳ２０１ｂを省略し、ステップＳ２０１ａをステップＳ１０６ａの後、ステップＳ１０７の前に実行するように動作を変更してもよい。
【０１０６】
このとき、位置照合部１０４は、位置の照合結果の評価値に相当する情報を算出し、文字列画像１１４とともに出力するように構成を変更する。文字認識部１０５は、文字の認識結果の評価値に相当する情報を算出し、入力された評価値と合算して、文字コード１１５とともに出力するように構成を変更する。属性照合部１０６は、属性の照合結果の評価値に相当する情報を算出し、入力された評価値と合算して、読取結果１１６として出力するように構成を変更する。定義レス読取部２０１は、定義レス読取りの評価値に相当する情報を算出し、読取結果１１６とともに出力するように構成を変更する。読取結果データベース１０７は、属性照合部１０６から出力された評価値と、定義レス読取部２０１から出力された評価値を比較し、評価値が高い方の読取結果１１６を採用して、読取結果データベース１０７に格納するように構成を変更する。
【０１０７】
この変更により、帳票定義データ１１０ａを活用して読取りを行った場合と、帳票定義データ１１０ａを用いずに読取りを行った場合で、より正しいと考えられる読取結果を採用することが可能となる。
【０１０８】
なお、上述した実施形態では、医療分野における帳票読取装置を例にとり説明したが、それ以外の各種読取装置に適用してもよい。例えば、領収書、医療レセプト、小切手または伝票などの読取装置に適用してもよい。
【０１０９】
図８は、第３実施形態に係る帳票処理装置のハードウェア構成を示すブロック図である。
図８において、帳票処理装置１１０は、プロセッサ１１、通信制御デバイス１２、通信インターフェース１３、主記憶デバイス１４および外部記憶デバイス１５を備える。プロセッサ１１、通信制御デバイス１２、通信インターフェース１３、主記憶デバイス１４および外部記憶デバイス１５は、内部バス１６を介して相互に接続されている。主記憶デバイス１４および外部記憶デバイス１５は、プロセッサ１１からアクセス可能である。
【０１１０】
また、帳票処理装置１１０の外部には、ポインティングデバイス２０、ディスプレイ２１およびスキャナ２２が設けられている。ポインティングデバイス２０、ディスプレイ２１およびスキャナ２２は、入出力インターフェース１７を介して内部バス１６に接続されている。
【０１１１】
プロセッサ１１は、帳票処理装置１１０全体の動作制御を司るハードウェアである。主記憶デバイス１４は、例えば、ＳＲＡＭまたはＤＲＡＭなどの半導体メモリから構成することができる。主記憶デバイス１４には、プロセッサ１１が実行中のプログラムを格納したり、プロセッサ１１がプログラムを実行するためのワークエリアを設けたりすることができる。
【０１１２】
外部記憶デバイス１５は、大容量の記憶容量を有する記憶デバイスであり、例えば、ハードディスク装置やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）である。外部記憶デバイス１５は、各種プログラムの実行ファイルやプログラムの実行に用いられるデータを保持することができる。外部記憶デバイス１５には、帳票処理プログラム１５Ａおよび帳票定義データ１５Ｂを格納することができる。帳票処理プログラム１５Ａは、帳票処理装置１１０にインストール可能なソフトウェアであってもよいし、帳票処理装置１１０にファームウェアとして組み込まれていてもよい。
【０１１３】
通信制御デバイス１２は、外部との通信を制御する機能を有するハードウェアである。通信制御デバイス１２は、通信インターフェース１３を介してネットワーク１９に接続される。ネットワーク１９は、インターネットなどのＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）であってもよいし、ＷｉＦｉなどのＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）であってもよいし、ＷＡＮとＬＡＮが混在していてもよい。
【０１１４】
入出力インターフェース１７は、ポインティングデバイス２０、ディスプレイ２１およびスキャナ２２から入力されるデータをプロセッサ１１が処理可能なデータ形式に変換したり、プロセッサ１１から出力されるデータをポインティングデバイス２０およびディスプレイ２１が処理可能なデータ形式に変換したりする。
【０１１５】
プロセッサ１１が帳票処理プログラム１５Ａを主記憶デバイス１４に読み出し、帳票処理プログラム１５Ａを実行することにより、帳票定義データ１５Ｂに含まれる位置情報に基づいて、読取り対象文字列の候補となる文字列画像を帳票画像データから抽出し、その抽出した文字列画像の文字認識処理を実施し、簡易帳票定義データ１５Ｂに含まれる属性情報に基づいて文字認識結果の属性を照合することにより読取結果１１６を決定することができる。この時、帳票処理プログラム１５Ａは、図１の位置照合部１０４、文字認識部１０５および属性照合部１０６の機能を実現することができる。文字認識結果の属性の照合では、プロセッサ１１は、ネットワーク１９を介し、属性の検証処理に用いるデータベースにアクセスし、属性の検証処理に用いる情報を取得するようにしてもよい。
【０１１６】
なお、帳票処理プログラム１５Ａの実行は、複数のプロセッサやコンピュータに分担させてもよい。あるいは、プロセッサ１１は、ネットワーク１９を介してクラウドコンピュータなどに帳票処理プログラム１５Ａの全部または一部の実行を指示し、その実行結果を受け取るようにしてもよい。
【０１１７】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。
【符号の説明】
【０１１８】
１０１  スキャナ、１０２  特徴抽出部、１０３  帳票定義データベース、１０４  位置照合部、１０５  文字認識部、１０６  属性照合部、１０７  読取結果データベース、１０８  帳票定義データ作成部
【図１】
2020087112.tif 000006
【図２】
2020087112.tif 000007
【図３】
2020087112.tif 000008
【図４】
2020087112.tif 000009
【図５】
2020087112.tif 000010
【図６】
2020087112.tif 000011
【図７】
2020087112.tif 000012
【図８】
2020087112.tif 000013