(57)【特許請求の範囲】
【請求項１】
レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶部と，
レシートに印字される項目名称の文字列と，レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と，レシート内に同一の項目名称を持つ他の文字列が存在する場合に，前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列であるアンカー文字と，前記項目名称の文字列と前記アンカー文字間の距離の情報とを，レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶部と，
前記画像データ記憶部に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出部と，
抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に，対応する前記アンカー文字に一致する認識文字の位置を取得し，その位置と前記抽出された認識文字の位置との距離を算出する同一名称判定部と，
前記抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に，前記算出された距離と，前記定義データにおいて定義されている距離の情報とを比較し，最も近い距離の認識文字を，読取り対象の項目名称として特定し，前記抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に，前記抽出された認識文字を，読取り対象の項目名称として特定するレシートデータ特定部と，
前記読取り対象の項目名称と，その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから，認識結果のデータを生成し，認識結果のデータを出力または記憶するデータ生成部とを備える
ことを特徴するレシートデータ認識装置。
【請求項２】
レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶部と，
レシートに印字される項目名称の文字列と，レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と，レシート内に同一の項目名称を持つ他の文字列が存在する場合に，前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列である複数のキーワードの情報とを，レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶部と，
前記画像データ記憶部に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出部と，
抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に，その項目名称に対して定義されている前記複数のキーワードに一致する複数の認識文字が存在するか否かを判定する同一名称判定部と，
前記複数のキーワードに一致する複数の認識文字が存在する場合に，前記複数のキーワードに一致する複数の認識文字の中の前記定義データに定義された項目名称の文字列に一致する認識文字を，読取り対象の項目名称として特定し，前記抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に，前記抽出された認識文字を，読取り対象の項目名称として特定するレシートデータ特定部と，
前記読取り対象の項目名称と，その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから，認識結果のデータを生成し，認識結果のデータを出力または記憶するデータ生成部とを備える
ことを特徴するレシートデータ認識装置。
【請求項３】
請求項１または請求項２記載のレシートデータ認識装置において，
前記レシートは，店舗ごとに異なるフォーマットで印刷されたレシートであり，
前記定義データ記憶部には，店舗ごとに前記定義データが記憶され，
レシートを発行した店舗ごとに異なる定義データを用いて，前記レシートデータ抽出部と，前記同一名称判定部と，前記レシートデータ特定部と，前記データ生成部とによる処理を実行する
ことを特徴とするレシートデータ認識装置。
【請求項４】
請求項３記載のレシートデータ認識装置において，
前記定義データ記憶部に記憶される定義データは，前記レシートに印字される項目名称の文字列に対応して，複数の店舗の売上管理に共通に用いられる管理項目名称のデータを含み，
前記データ生成部は，前記項目名称に一致する認識文字を，前記定義データに定義された対応する管理項目名称に変換した認識結果のデータを生成する
ことを特徴とするレシートデータ認識装置。
【請求項５】
コンピュータを，
レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶手段と，
レシートに印字される項目名称の文字列と，レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と，レシート内に同一の項目名称を持つ他の文字列が存在する場合に，前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列であるアンカー文字と，前記項目名称の文字列と前記アンカー文字間の距離の情報とを，レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶手段と，
前記画像データ記憶手段に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出手段と，
抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に，対応する前記アンカー文字に一致する認識文字の位置を取得し，その位置と前記抽出された認識文字の位置との距離を算出する同一名称判定手段と，
前記抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に，前記算出された距離と，前記定義データにおいて定義されている距離の情報とを比較し，最も近い距離の認識文字を，読取り対象の項目名称として特定し，前記抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に，前記抽出された認識文字を，読取り対象の項目名称として特定するレシートデータ特定手段と，
前記読取り対象の項目名称と，その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから，認識結果のデータを生成し，認識結果のデータを出力または記憶するデータ生成手段として
機能させるためのレシートデータ認識プログラム。
【請求項６】
コンピュータを，
レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶手段と，
レシートに印字される項目名称の文字列と，レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と，レシート内に同一の項目名称を持つ他の文字列が存在する場合に，前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列である複数のキーワードの情報とを，レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶手段と，
前記画像データ記憶手段に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出手段と，
抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に，その項目名称に対して定義されている前記複数のキーワードに一致する複数の認識文字が存在するか否かを判定する同一名称判定手段と，
前記複数のキーワードに一致する複数の認識文字が存在する場合に，前記複数のキーワードに一致する複数の認識文字の中の前記定義データに定義された項目名称の文字列に一致する認識文字を，読取り対象の項目名称として特定し，前記抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に，前記抽出された認識文字を，読取り対象の項目名称として特定するレシートデータ特定手段と，
前記読取り対象の項目名称と，その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから，認識結果のデータを生成し，認識結果のデータを出力または記憶するデータ生成手段として
機能させるためのレシートデータ認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，レシートデータ認識装置およびそのプログラムに関し，特に，例えばショッピングモールなどの複数の店舗の売上を管理するために，文字認識により読み取ったレシートデータから必要なデータを正確に抽出する技術に関するものである。
【背景技術】
【０００２】
ショッピングセンター，ショッピングモール等に出店するテナント（店舗を運営する会社など）の店舗を管理するテナント管理部門では，各店舗の一日の売上を収集し，現金売上，クーポン売上，…といった売上内訳（売上管理項目）を作成している。この売上内訳作成の際には，各店舗から提供される精算レシートが集められて，売上管理項目の数値を算出することが行われる。しかし，各店舗から提供される精算レシートの形式は，店舗ごとに導入されているＰＯＳシステムに依存するため，さまざまな形式で作成されているのが現状である。そのため，テナント管理部門が処理する精算レシートは，項目の種類，項目名，印字サイズ，印字字体などにおいて多種多様である。
【０００３】
例えば，精算レシートの項目の名称について，売上合計，売上計，合計売上，総売上，…等は，同等の内容を示すものであっても，ＰＯＳシステムによって異なる名称が印字されている。また，出店するテナントの店舗の入れ替えなどが頻繁に行われるため，新たな精算レシートの形式にも対応しなければならない。そのため，テナント管理部門では，精算レシートを統一された売上データとして集計する売上集計作業に莫大な労力を要し，そのための人的および時間的負担に多大なコストを要しているのが現状である。
【０００４】
なお，特許文献１には，文書画像認識装置が開示されている。この文書画像認識装置では，文書画像を参照して文字を構成する成分の集合を抽出し，これをもとに横および縦の行候補を抽出し，行候補に対して信頼度を推定する。その後，推定した行信頼度に基づいて確度の高い行の集合を抽出し，その結果をもとに確度の高い行の集合の文字成分の配置を用いて傾きを推定する。そして，文書画像を構成する基礎要素の集合から行方向の確定した行集合を抽出し，行同士の関連付けによる段抽出と段を制約とした行抽出とを相互に実行して行と段を抽出する。
【０００５】
また，特許文献２には，レシート処理装置が開示されている。このレシート処理装置では，レシートの画像から文字を認識してテキストデータを生成し，テキストデータから所定の文字列を選択し，選択された所定の文字列が含まれる行位置を検出する。そして，検出された行位置に基づいて定まるテキストデータ上の所定の行範囲から行を単位とするラインデータを順に選択し，ラインデータから品目に関わるデータを抽出する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１１−２１９４０７号公報
【特許文献２】特開２００４−１６４２１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述したような，ショッピングセンター等の各店舗から提供される精算レシート（以下，レシートという）を集計するために，ショッピングセンター等を運営する会社（組織）のテナント管理部門では，従来，事務員が目視でレシートを読み取り，読み取ったデータを手作業でデータ処理装置に入力していた。この売上集計作業の作業量は，店舗数が１００店舗以上に及ぶこともあり，しかも毎日行わなければならない作業であるため，非常に負担が大きいものであった。
【０００８】
この負担を軽減するための一案としては，各店舗の売上データ（レシートデータ）を，各店舗の端末からネットワークを介して自動収集することが考えられる。しかし，一般に各店舗は企業体が異なるため，個々にネットワーク開設の許諾を得る必要があり，さらに導入されているシステムによって接続するネットワーク種類やアプリケーションの追加・修正の難易度が異なるなど，解決が困難な問題が存在する。
【０００９】
既存のシステムの変更，特に各店舗における端末などの情報機器の変更をできるだけ行わないで，前述した作業負担を軽減する他の案としては，レシートデータを人間が読み取るのではなく，文字画像の認識によって読み取る方法が考えられる。すなわち，各店舗のレシートを，例えばＯＣＲ（Optical Character Recognition ）機能を有する読取装置，スキャナー等で読み取り，読み取ったレシート項目とその数値データについて売上管理項目に必要なものを抽出し，売上管理データに入力し直す方法である。
【００１０】
しかし，この方法の場合にも，一般的な従来の文字画像の認識では解決できない問題を解決しなければならない。次に，この問題について説明する。
【００１１】
ＯＣＲ機能を有する読取装置等によりレシートを読み取らせる場合，売上管理データを集計するために必要なレシートに印字されるレシート項目と，売上管理項目との対応関係を予め登録し，読取装置等から読み取ったレシート画像から必要なレシート項目を抽出する必要がある。例えば，その場合の解決できない問題を，図１６および図１７に従って，以下に説明する。
【００１２】
図１６および図１７は，レシート項目と売上管理項目との対応関係の一例を説明する図である。特に，図１６では，レシート内にレシート項目の項目名称に同一名称がない場合の例を示し，図１７では，レシート内にレシート項目の項目名称（レシート項目名称）に同一名称が複数存在する場合の例を示す。
【００１３】
例えば，図１６に示すように，印字されたレシート２２ｕには，売上管理項目１００１ｕの「総売上」に対応するレシート項目名称「総売上」が，レシート２２ｕ内の行Ｌｉｎｅ＃１０１のみに印字されている。また，同様に，売上管理項目１００１ｕの「商品券」に対応するレシート項目名称「商品券」が，レシート２２ｕ内の行Ｌｉｎｅ＃１０２のみに印字されている。売上管理項目１００１ｕのその他の「クレジット売上」および「消費税」に対応するレシート項目名称についても，レシート２２ｕ内の行Ｌｉｎｅ＃１０３および行Ｌｉｎｅ＃１０４にのみ，各々，「クレジット」および「税合計」が印字されている。すなわち，図１６に示すレシート２２ｕには，売上管理項目の対象となるレシート項目について，同一名称のレシート項目名称が存在しない。
【００１４】
一方，図１７に示すレシート２２ｖでは，売上管理項目１００１ｖの「総売上」に対応するレシート項目名称「総売上」が，レシート２２ｖ内の行Ｌｉｎｅ＃２０１，＃２０４，＃２０６の複数の箇所（異なる行）に印字されている。また，売上管理項目１００１v の「商品券」に対応するレシート項目名称「商品券在高」が，レシート２２ｖ内の行Ｌｉｎｅ＃２０２のみに印字されている。売上管理項目１００１v の「クレジット売上」については，レシート２２ｖ内の行Ｌｉｎｅ＃２０３，＃２０５，＃２０７に，「クレジット在高」という名称で複数の箇所（３箇所）に印字されている。すなわち，図１７に示すレシート２２ｖには，売上管理項目の対象となるレシート項目について同一名称のレシート項目名称が複数存在している。なお，売上管理項目１００１ｖの「消費税」に対応するレシート項目名称は，レシート２２ｖに印字されていないものとする。
【００１５】
図１７では，売上管理項目として本来抽出すべきレシート項目名称に対応する金額項目は，グループＧ＃１の行Ｌｉｎｅ＃２０１〜２０３にある金額項目である。グループＧ＃２およびＧ＃３の行Ｌｉｎｅ＃２０４〜２０７にある「総売上」および「クレジット在高」は，店舗内の担当者グループごとの内訳を示しており，これらは，テナント管理部門が売上管理項目として必要とするレシート項目ではない。レシート項目名称が同一の名称で，かつ，金額内容が異なるものが複数存在する場合，例えば図１７に示すレシート２２ｖでは，複数の段落ごとの小計として印字されており，売上管理項目１００１ｖの「総売上」に対応するレシート項目名称「総売上」として，ＯＣＲ処理による文字認識だけでは，その中の抽出すべきレシート項目と区別できない。すなわち，レシート項目名称だけでは，売上管理項目として抽出すべきレシートデータか否かを判断できない。
【００１６】
これらを区別するために，例えば上端のレシート印字位置を基準とした位置データを用いることも考えられる。しかし，固定位置を基準とする位置データを用いる場合には，その日のレシートの印字内容で，空行や複数のレシート項目の増減が生じるような，位置データが変わるＰＯＳシステムには対応できない。実際には，店舗ごとの精算レシートは，その日の印字内容で，空行や複数のレシート項目の増減する場合が多い。
【００１７】
上述したように，レシートに印字されるレシート項目名称に，同一名称が複数存在し，その各々に対応する金額が異なる内容の金額項目である場合に，このようなレシートを読取装置等で読み取り，レシートの数値データをＯＣＲ処理すると，本来抽出すべきレシート項目名称と対応しない金額項目が抽出されて処理されることがあり，売上管理データに集計エラーが発生することになる。これを回避するために，上述したような同一名称のレシート項目が存在するような店舗の精算レシートは，売上管理項目を手作業で集計しなければならず，またそのように手作業で集計した場合でも，同一名称であるため，作業者が集計箇所を誤認することもある。そのために，精算レシートを照合する作業が必要となり，人的負担が軽減されない。
【００１８】
本発明は，以上の点に鑑み，各店舗の情報機器などの現状のシステムを大幅に変えることなく，各テナントの店舗のレシートから売上管理データを正確かつ効率よく収集し，売上管理業務におけるスピード化，効率化を図ることを目的としている。
【課題を解決するための手段】
【００１９】
本発明は，例えば店舗ごとに印刷されたレシートを，統一された売上管理項目に集計し直すために，レシート画像を読み取り得られた認識文字について，レシートを発行した店舗ごとに異なる定義データに登録されたレシート内の項目名称の文字列と，読取り対象の項目名称と同一の名称が存在するか否かの情報と，レシート内に同一の項目名称を持つ他の文字列が存在する場合に，当該項目名称とレシート印字位置が関連付けられている他の項目名称の文字列との位置情報とから，レシート内の項目名称において同一である項目名称が複数存在する場合に，売上管理項目として抽出すべきレシートデータか否かを判断して，必要な認識文字を抽出し，抽出された認識文字の位置データから，認識文字とその位置データから金額項目を表す認識文字を抽出し，項目名称に一致する認識文字と金額項目を表す認識文字とから，認識結果のデータを出力または記憶することを特徴とする。
【００２０】
すなわち，レシート画像を読取機で読み取るときに，正確にレシート内の項目と金額を読み取ることができるようにしたものであり，複数の異なる形式で印刷されたレシートから，読取り対象となる項目名称と同一の項目名称が複数存在した場合であっても，売上管理項目として必要な項目のみを正確に抽出して，売上管理に必要なレシート内の項目と金額を，認識結果のデータとして出力または記憶することができるようにしている。詳しくは，本発明は以下の手段を備える。
【００２１】
（１）本発明は，レシートデータ認識装置が，レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶部と，レシートに印字される項目名称の文字列と，レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と，レシート内に同一の項目名称を持つ他の文字列が存在する場合に，前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列であるアンカー文字と，前記項目名称の文字列と前記アンカー文字間の距離の情報とを，レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶部と，前記画像データ記憶部に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出部と，抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に，対応する前記アンカー文字に一致する認識文字の位置を取得し，その位置と前記抽出された認識文字の位置との距離を算出する同一名称判定部と，前記抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に，前記算出された距離と，前記定義データにおいて定義されている距離の情報とを比較し，最も近い距離の認識文字を，読取り対象の項目名称として特定し，前記抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に，前記抽出された認識文字を，読取り対象の項目名称として特定するレシートデータ特定部と，前記読取り対象の項目名称と，その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから，認識結果のデータを生成し，認識結果のデータを出力または記憶するデータ生成部とを備えることを特徴とする。
【００２２】
これによって，レシートを読み取り得られるレシート画像について，読取り対象となる各項目名称ごとに，レシート内の項目名称の文字列と，読取り対象の項目名称と同一の名称が存在するか否かの情報と，レシート内の項目名称において同一である項目名称が複数存在する場合に，定義データにレシート内の項目名称と関連付けられたユニークな項目名称であるアンカー文字との位置情報の関連付けとが定義データに登録されているため，レシート内の項目名称において同一である項目名称が複数存在する場合であっても，レシート画像を読み取り得られた認識文字について，アンカー文字に一致する認識文字を抽出することにより，抽出された認識文字と読取り対象の項目名称と一致する認識文字の位置データの関係を用いて，読取り対象の項目名称とそれに対応する金額項目を表す認識文字を正確に抽出し，認識結果のデータを出力または記憶することができる。
【００２３】
（２）また，本発明は，レシートデータ認識装置が，レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶部と，レシートに印字される項目名称の文字列と，レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と，レシート内に同一の項目名称を持つ他の文字列が存在する場合に，前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列である複数のキーワードの情報とを，レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶部と，前記画像データ記憶部に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出部と，抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に，その項目名称に対して定義されている前記複数のキーワードに一致する複数の認識文字が存在するか否かを判定する同一名称判定部と，前記複数のキーワードに一致する複数の認識文字が存在する場合に，前記複数のキーワードに一致する複数の認識文字の中の前記定義データに定義された項目名称の文字列に一致する認識文字を，読取り対象の項目名称として特定し，前記抽出された認識文字に該当する項目名称が，前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に，前記抽出された認識文字を，読取り対象の項目名称として特定するレシートデータ特定部と，前記読取り対象の項目名称と，その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから，認識結果のデータを生成し，認識結果のデータを出力または記憶するデータ生成部とを備えることを特徴とする。
【００２４】
これによって，レシート内の項目名称の文字列と，読取り対象の項目名称と同一の名称が存在するか否かの情報と，レシート内の項目名称において同一である項目名称が複数存在する場合に，定義データにレシート内の項目名称と関連付けられた複数のキーワードの一群との位置情報の関連付けとが定義データに登録されているため，レシート内の項目名称において同一である項目名称が複数存在する場合であっても，レシート画像を読み取り得られた認識文字について，複数のキーワードに一致する認識文字を抽出することにより，抽出された認識文字と読取り対象の項目名称と一致する認識文字の位置データの関係を用いて，読取り対象の項目名称とそれに対応する金額項目を表す認識文字を正確に抽出し，認識結果のデータを出力または記憶することができる。
【００２５】
（３）また，本発明は，さらに前記発明のいずれかにおいて，前記レシートは，店舗ごとに異なるフォーマットで印刷されたレシートであり，前記定義データ記憶部には，店舗ごとに前記定義データが記憶され，レシートを発行した店舗ごとに異なる定義データを用いて，前記レシートデータ抽出部と，前記同一名称判定部と，前記レシートデータ特定部と，前記データ生成部とによる処理を実行することを特徴とする。
【００２６】
これによって，店舗ごとに印刷されたレシートの項目名称や印字位置が異なる場合であっても，店舗ごとに項目名称とそれに対応する金額欄の相対位置とを定義データに登録するため，店舗ごとのレシート項目名称およびそれに対応する金額欄の位置の相違に関係なく，レシート画像から必要なレシートデータを読み取ることができる。
【００２７】
（４）また，本発明は，さらに前記発明において，前記定義データ記憶部に記憶される定義データは，前記レシートに印字される項目名称の文字列に対応して，複数の店舗の売上管理に共通に用いられる管理項目名称のデータを含み，前記データ生成部は，前記項目名称に一致する認識文字を，前記定義データに定義された対応する管理項目名称に変換した認識結果のデータを生成することを特徴とする。
【００２８】
これによって，店舗ごとに印刷されたレシートの項目名称や印字位置が異なる場合であっても，事前に入力された売上管理項目に変換すべきレシート項目について，店舗ごとに項目名称とそれに対応する金額欄の相対位置とを定義データに登録するため，店舗ごとのレシート項目名称およびそれに対応する金額欄の位置の相違に関係なく，レシート画像から必要なレシートデータを読み取り，統一した売上管理データを生成することができる。
【発明の効果】
【００２９】
本発明の効果は以下のとおりである。
（１）レシートから売上管理項目に必要なレシート項目を予め定義データに登録することにより，それらを用いて自動的に必要なレシートデータを抽出することができるため，売上情報の入力作業の省力化およびスピード化が達成できる。
（２）レシートから売上管理項目に必要なレシート項目について項目名称に同一の名称が複数存在する場合に，その中で売上管理項目に必要な金額に関する相対位置を，他のユニークな項目名称または複数のキーワードとなる項目名称の一群の位置情報に関連付けて定義データに登録できるため，レシートデータの抽出の誤認識を回避し，正しいレシートデータを抽出することができる。このため，チェック作業の省力化およびスピード化が達成できる。
（３）予め店舗ごとに登録，設定された定義データによって，どのような種類のレシートであるか，どのような項目名称を有し，金額に関する相対位置などの情報を画像の解析に利用することができ，文字認識などを含めて読み取りの精度を高めることができる。
（４）また，レシートの項目が異なる各店舗のレシートデータから，売上管理部門が必要とする基本的なデータを統一的に収集し，売上管理データベースなどに保存することができるようになる。
【図面の簡単な説明】
【００３０】
【図１】本発明の実施形態の装置構成例を示す図である。
【図２】レシート挟持用シートを説明する図である。
【図３】売上管理項目とレシート項目との対応関係の例を示す図である。
【図４】本発明の実施形態に係るレシートデータ認識装置の処理フローチャートである。
【図５】レシート画像の例を示す図である。
【図６】認識文字データの一例を示す図である。
【図７】認識文字テーブルの例を示す図である。
【図８】定義データテーブルを説明する図である。
【図９】レシートデータ処理のフローチャートである。
【図１０】同一名称判定処理のフローチャートである。
【図１１】同一名称判定処理のフローチャートである。
【図１２】レシートとそれに対応する定義データの一例を示す図である。
【図１３】レシートとそれに対応する定義データの一例を示す図である。
【図１４】売上管理データ生成処理のフローチャートである。
【図１５】売上管理ＤＢの例を示す図である。
【図１６】本発明の課題を説明する図である。
【図１７】本発明の課題を説明する図である。
【発明を実施するための形態】
【００３１】
以下，図面を用いながら，本発明の実施の形態について詳細に説明する。なお，以下では，主に店舗売上を集計する装置の例について説明するが，本発明は売上集計に限られるわけではなく，仕入集計データやその他の伝票などに印字された実績データを集計するための装置などにも同様に適用することができる。
【００３２】
図１は，本発明の概要を説明するための装置構成例を示す。図１において，１はＣＰＵおよびハードディスクやメモリ等の記憶装置等から構成され，レシートから読み取ったデータをもとに売上の集計に関する処理を実行するレシートデータ認識装置，２０は各店舗に対応付けられた識別コード２１（図２に示す）がマーキングされ，各店舗のレシート２２を挟持するレシート挟持用シートである。レシート２２は，店舗ごとに異なるフォーマットで印刷されたレシートである。
【００３３】
なお，レシート２２は，テナントの店舗ごとに，例えば一日の店舗の売上を各店舗に備えられたキャッシュレジスタなどで集計した結果が印刷されたものである。また，これらのレシート２２は，売上集計に関する一例として示したものであり，売上集計以外にも，仕入集計，その他帳票処理に関するものであってもよい。
【００３４】
最初に，レシート挟持用シート２０について説明する。図２は，レシート挟持用シート２０の一実施態様の構成を示す図である。特に，図２（Ａ）は，レシート挟持用シート２０を透明フィルム２３１側から見た上面図であり，図２（Ｂ）は，レシート挟持用シート２０においてレシート２２が透明シート２３に挟持される前の状態を説明する斜視図である。
【００３５】
図２（Ａ）に示すように，例えばレシート挟持用シート２０は各店舗のレシート２２を台紙付の透明シート２３に挟持する。透明シート２３の上右端隅には，当該店舗に対応する識別コード２１（ＱＲコード（登録商標）などの２次元コード等）が印刷，またはシールなどでマーキングされる。
【００３６】
図２（Ｂ）に示すように，透明シート２３は，例えば透明フィルム（シート）２３１と台紙２３２とが一端２３３で接続（粘着等）されており，レシート２２を挟持する前の状態では透明シート２３が半開封状態にある。この半開封状態の透明シート２３の台紙２３２上にレシート２２が載せられ，例えば密着面が多少粘着性を有する透明フィルム２３１と台紙２３２とが貼り合わされることにより，レシート２２が挟持される。なお，前述の識別コード２１は，例えば台紙２３２の上右端隅に位置決めされた範囲で，印刷，シールなどによりマーキングされる。
【００３７】
次に，レシートデータ認識装置１が処理する，店舗ごとのレシート２２におけるレシート項目と，テナント管理部門が集計する売上管理項目との対応関係について説明する。
【００３８】
図３は，売上管理項目とレシート項目との対応関係の一例を示す図である。図３の例では，テナント管理部門が店舗の売上管理に実際に必要な売上集計のデータは，Ｎｏ．１の現金売上からＮｏ．１１の客数までの１１個の売上管理項目である。しかし，これらの売上管理項目が各店舗のレシート２２のレシート項目として，そのまま１対１の関係で印字されていることはない。そこで，店舗ごとの対応関係情報１０２２（１０２２ａ）を用いて，各店舗のレシート項目から１１個の各売上管理項目を算出する処理を行う。
【００３９】
図３に示すレシート２２ａの場合，１４番目のレシート項目の「現金売上金額」が，Ｎｏ．１の売上管理項目の「現金売上」に相当することが，対応関係情報１０２２（１０２２ａ）に示されている。その他の売上管理項目についても，それぞれ対応関係情報１０２２によって対応付けられる。なお，図３に示すような店舗ごとの売上管理項目とレシート項目との対応関係情報１０２２（１０２２ａ）は，定義データ記憶部１０２（図１に示す）に予め登録され，格納される。
【００４０】
図３では，レシート２２ａに示すレシート項目が，例えば１４番目に「現金売上金額」等と示しているが，実際には，１４番目（ｎ番目）がレシート内の最上段の位置から固定した行の位置にあるわけではない。店舗の当日のレシート集計結果により，ｎ番目以前のレシート項目で印字行数が増えたり，また印刷時に省かれるレシート項目などがある。このため，レシートデータ認識装置１では，レシート項目におけるレシート項目名称とそれに対応する金額項目の相対位置（相対的な金額欄の位置）とを含む定義データを予め登録し，対応関係情報１０２２（１０２２ａ）と共に用いることで，上記課題の解決を図っている。
【００４１】
レシートデータ認識装置１は，以上のような定義データおよび対応関係情報１０２２（１０２２ａ）に従って，店舗コードごとに，「売上日付」，売上管理項目Ｎｏ．１「現金売上」，Ｎｏ．２「掛売上」，Ｎｏ．３「クレジット売上」，…などの売上に関する項目に対応する金額を集計し，売上管理データ記憶部１０３に格納する。そのために，レシートデータ認識装置１は，以下に説明する処理を実行する。
【００４２】
レシートデータ認識装置１は，レシート挟持用シート２０からレシート２２を読み取る。レシートデータ認識装置１は，レシート２２についての定義データを用いて，レシート項目中の項目名称および金額を含むレシートデータを抽出する。レシートデータ認識装置１は，売上管理項目とレシート項目との対応関係情報１０２２（１０２２ａ）を用いて，抽出したレシートデータの項目を売上管理データに変換する。すなわち，売上管理データに必要となるレシート項目が抽出され，レシート項目の金額が売上管理データとして集計される。
【００４３】
以上のように，レシートデータ認識装置１は，レシート２２を発行した店舗ごとに定義データを用いて，レシートデータ認識処理を実行する。
【００４４】
以下，上述したレシートデータ認識処理を実行するための，図１に示すレシートデータ認識装置１の構成について，具体的に説明する。
【００４５】
画像データ記憶部１０１は，読取機１０により読み取られたレシート挟持用シート２０の画像データを記憶する。画像データは，レシート２２の画像をＯＣＲ処理することにより得られた認識文字およびその座標（位置データ）を含むデータである。さらに，画像データは，識別コード２１を含んでもよい。また，画像データ記憶部１０１は，画像データに関連付けて，レシート挟持用シート２０の画像ファイル，例えばビットマップ形式ファイル等を格納してもよい。
【００４６】
定義データ記憶部１０２は，レシートデータ認識装置１に用いられる定義データを格納する記憶手段である。定義データは，店舗ごとにレシート２２のレシート項目および金額の位置などの情報を含む。
【００４７】
具体的には，定義データには，レシート２２に印字されるレシート項目名称の文字列に対応して，複数の店舗の売上管理に共通に用いられる売上管理項目名称が登録される。例えば，定義データは，レシート２２に印字されるレシート項目名称の文字列と，レシート項目名称のレシート内位置からの，そのレシート項目名称に対応する金額項目の相対位置データとを含み，レシート２２における読取り対象となるレシート項目の項目名称（レシート項目名称）ごとに定義される。このような定義データは，集計する店舗のレシート２２ごとに，予め作成され，定義データ記憶部１０２に格納される。なお，定義データの詳細は，図８を用いて後述する。
【００４８】
さらに，定義データには，レシート２２に印字されるレシート項目名称の文字列と，レシート２２内に同一のレシート項目名称を持つ他の文字列が存在するか否かを示す情報と，レシート２２内に同一のレシート項目名称を持つ他の文字列が存在する場合に，レシート項目名称とレシート印字位置が関連付けられている他のレシート項目名称の文字列であるアンカー文字と，レシート項目名称の文字列とアンカー文字間の距離の情報とが，レシートにおける読取り対象となるレシート項目名称ごとに，登録される。
【００４９】
もしくは，定義データには，レシート２２に印字されるレシート項目名称の文字列と，レシート２２内に同一のレシート項目名称を持つ他の文字列が存在するか否かを示す情報と，レシート２２内に同一のレシート項目名称を持つ他の文字列が存在する場合に，レシート項目名称とレシート印字位置が関連付けられている他のレシート項目名称の文字列である複数のキーワードの情報とが，レシート２２における読取り対象となるレシート項目名称ごとに，登録される。
【００５０】
売上管理データ記憶部１０３は，レシートデータ認識装置１が生成する売上管理データを保存する記憶手段である。売上管理データは，店舗ごとに異なるレシート項目を統一した売上管理項目に対応させて，各店舗のレシート項目の金額を収集した結果のデータである。なお，売上管理データの詳細は，図１５を用いて後述する。
【００５１】
読取機１０は，画像のスキャンニングに光学方式などを用いて，レシート挟持用シート２０の画像を読み取る装置である。読取機１０は，レシート挟持用シート２０が入力されると，レシート挟持用シート２０を画像データに変換する。画像データは，例えば画像ファイル，ＯＣＲによる認識文字データを含む。読取機１０は，変換した画像データを画像データ記憶部１０１に保存する。例えば，読取機１０は，スキャナー，ＯＣＲ処理装置などの周知の技術によるものである。
【００５２】
画像データ読込部１１は，画像データ記憶部１０１に保存された画像データを読み出す。なお，画像データ読込部１１が，レシートデータ認識装置１の外部の入力装置から画像データを入力してもよい。外部の入力装置は，読取装置，ネットワーク装置などである。この場合には，例えばネットワーク等を介して，レシートデータ認識装置１の設置場所以外に設置されている読取装置で入力されたレシート挟持用シート２０の画像データを，入力装置（図示しない）が入力し，画像データ記憶部１０１に保存する。
【００５３】
店舗特定部１２は，レシート挟持用シート２０の識別コード２１を識別して，店舗コード（または店舗）を特定する。なお，図１の構成例では，店舗コードのための識別コード２１がレシート挟持用シート２０上に認識マーク化されているが，店舗コードの読み取り方法は本実施例に限定されない。例えば，レシート２２の読み取りの際に，ユーザが，店舗コードをテンキー，カードリーダなどの外部の入力装置を介して入力してもよい。その場合には，外部の入力装置から入力された店舗コードを店舗特定部１２が受ける。また，読取機１０がレシート挟持用シート２０の識別コード２１を読み取り，店舗特定部１２がその読み取られた識別コード２１から店舗コードを特定してもよい。
【００５４】
定義データ読込部１３は，店舗特定部１２により特定された店舗コードを受けると，定義データ記憶部１０２から店舗コードに対応付けられた定義データを検索する。定義データ読込部１３は，定義データ記憶部１０２から検索した定義データを読み出し，読み出した定義データをレシートデータ処理部１４に送る。
【００５５】
レシートデータ処理部１４は，店舗コードごとの定義データを用いて，画像データからレシート項目名称およびその金額を含むレシートデータを抽出し，抽出したレシートデータから売上管理項目に必要となるレシートデータを特定する。そのために，レシートデータ処理部１４は，図１に示すように，以下の機能部を含む。
【００５６】
レシートデータ抽出部１４１は，画像データ記憶部１０１に記憶された画像データの認識文字データから，定義データに定義されたレシート項目名称の文字列に一致する認識文字を検索し，その認識文字データを抽出する。認識文字データは，予めレシートデータ認識装置１が備える辞書（図示しない）による候補文字と，ＯＣＲ処理による認識文字との相違度を示す値と，文字の範囲を示す相対的な座標位置（相対位置）を含む。なお，認識文字データについては，図６を用いて後述する。
【００５７】
同一名称判定部１４０は，レシートデータ抽出部１４１により画像データから抽出された認識文字について，該当するレシート項目名称がレシート２２内に同一名称の項目名称を含むか否か，定義データを用いて判定する。
【００５８】
具体的には，同一名称判定部１４０は，抽出された認識文字に該当するレシート項目名称が，定義データ中でレシート２２内に同一のレシート項目名称を持つ他の文字列が存在すると定義されている場合に，そのレシート項目名称に対して定義されている，例えばアンカー文字または複数のキーワードに一致する認識文字が存在するか否かを判定する。
【００５９】
ここで，アンカー文字とは，売上管理項目の対象となるレシート項目名称に，レシート印字位置などの位置情報と関連付けられた，他のレシート項目名称の中でユニークな項目名称である。複数のキーワードとは，売上管理項目の対象となるレシート項目名称を含み，かつレシート印字位置などの位置情報と関連付けられた，他のレシート項目名称を１または複数含むキーワードの一群であり，当該キーワードの一群が，例えばレシート行として連続となるものである。
【００６０】
同一名称判定部１４０は，画像データからアンカー文字および複数のキーワードを検出するために，アンカー文字検出部１４２およびキーワード検出部１４３を有する。以下，アンカー文字検出部１４２およびキーワード検出部１４３について説明する。
【００６１】
（１）アンカー文字検出処理
アンカー文字検出部１４２は，読み取ったレシート２２に対応する定義データについて，読取り対象のレシート項目の項目名称が，定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義され，かつアンカー文字が定義されている場合に，以下のように，アンカー文字の検出処理を実行する。
【００６２】
アンカー文字検出部１４２は，定義データの読取文字に関連付けられてアンカー文字が設定されている場合に，画像データ記憶部１０１に記憶された画像データから，設定されているアンカー文字に一致する認識文字の位置を取得し，その位置と抽出された認識文字の位置との距離を算出する。
【００６３】
（２）複数のキーワード検出処理
キーワード検出部１４３は，読み取ったレシート２２に対応する定義データについて，読取り対象のレシート項目の項目名称が，定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義され，かつ複数のキーワードが定義されている場合に，以下のように，複数のキーワード検出処理を実行する。
【００６４】
キーワード検出部１４３は，定義データの読取文字に関連付けられて複数のキーワードが設定されている場合に，画像データ記憶部１０１に記憶された画像データから，設定されている複数のキーワードに一致する複数の認識文字が存在するか否かを判定する。
【００６５】
（３）レシート２２内に同一名称が存在し，かつアンカー文字が検出された場合
レシートデータ特定部１４４は，アンカー文字検出部１４２によりアンカー文字が検出された場合に，算出された距離と，定義データにおいて設定されている距離の情報とを比較し，検出されたアンカー文字の認識文字に最も近い距離の認識文字を，読取り対象のレシート項目の項目名称（レシート項目名称）として特定する。
【００６６】
（４）レシート２２内に同一名称が存在し，かつ複数キーワードが検出された場合
レシートデータ特定部１４４は，キーワード検出部１４３により複数のキーワードが検出された場合に，複数のキーワードの中で一つのレシート項目名称の文字列に一致する認識文字を，読取り対象のレシート項目の項目名称として特定する。
【００６７】
（５）レシート２２内に同一名称が存在しない場合
一方，レシートデータ特定部１４４は，レシートデータ抽出部１４１により抽出された認識文字に該当するレシート項目名称が，定義データ中でレシート内に同一のレシート項目名称を持つ他の文字列が存在しないと定義されている場合に，抽出された認識文字を，読取り対象のレシート項目の項目名称として特定する。
【００６８】
（６）特定された認識文字をレシートデータとして特定
レシートデータ特定部１４４は，（３）〜（５）のいずれかで特定した認識文字の位置データと，読取り対象のレシート項目の項目名称に対応する金額項目の相対位置データとから，その金額項目を表す認識文字を抽出する。
【００６９】
以上説明したように，レシートデータ特定部１４４は，レシートデータ抽出部１４１または同一名称判定部１４０から，レシート項目名称に対応する金額項目の相対位置を受けると，画像データ記憶部１０１に記憶された認識文字の中から，その金額項目の相対位置に対応する認識文字を抽出する。これにより，レシートデータ特定部１４４は，レシート項目名称に対応する金額項目を正確に特定することができる。すなわち，レシート項目に関する，レシート項目名称の文字列と，それに対応する金額欄の金額項目の文字列とを含むレシートデータを特定することができる。
【００７０】
以上のように，レシート２２に印字される読取り対象のレシート項目名称に同一の名称が複数存在する場合であっても，定義データに設定されるアンカー文字または複数のキーワードの情報により，これらの他の項目名称との相対位置を判定することにより，読取り対象のレシート項目名称に対応する金額項目を正確に読み取ることができる。
【００７１】
売上管理データ生成部１５は，レシートデータ処理部１４により特定されたレシートデータを用いて，売上管理データを生成する。具体的には，売上管理データ生成部１５は，レシート項目名称に一致する認識文字と，定義データに定義された対応する売上管理項目名称とに対応付けられる対応関係情報１０２２とを用いて，認識結果における金額項目の数値データを演算（変換）し，売上管理データを生成する。売上管理データは，店舗コード，売上管理項目および売上管理項目に対応する金額を含む。
【００７２】
例えば，売上管理データ生成部１５は，売上管理項目とレシート項目との対応関係情報１０２２に従って，店舗コードごとに，「売上日付」，売上管理項目Ｎｏ．１「現金売上」，Ｎｏ．２「掛売上」，Ｎｏ．３「クレジット売上」，…などの売上に関する項目に対応する金額に変換し，これらを売上管理データ記憶部１０３に記憶する。
【００７３】
以下に，図４，図９，図１０，図１１および図１４の処理フローチャートに従って，その他の図も用いながら，図１に示すレシートデータ認識装置１の詳細な機能について説明する。
【００７４】
図４は，本発明の実施形態に係るレシートデータ認識装置１の処理フローチャートである。図４に従って，レシートデータ認識装置１が実行する処理について具体的に説明する。
【００７５】
レシートデータ認識装置１が起動されて，本処理が開始される。読取機１０にレシート挟持用シート２０が入力されると，読取機１０がレシート挟持用シート２０を読み取り，読み取ったレシート挟持用シート２０の画像データを，画像データ記憶部１０１に保存する（ステップＳ１１）。
【００７６】
具体的に説明するために，図５〜図７を用いて，レシートの画像データからＯＣＲ処理される文字列を説明する。
【００７７】
図５は，読取機１０により読み取られたレシート２２ｂの画像の例を示している。読取機１０により生成された画像データは，ＯＣＲ処理による認識文字データを含む。読取機１０は，レシート２２（２２ｂ）の画像をＯＣＲ処理すると，認識文字データを生成し，画像データ読込部１１に記憶する。認識文字データは，認識文字からなる文字列の文字数および文字列の座標，文字列を構成する文字の座標および辞書からの候補文字とされる認識文字リストを含む。ＯＣＲ処理による認識文字の対象は，レシート２２ｂに印刷されている文字列＃１，文字列＃２，…，文字列＃１４，…等である。例えば，文字列＃１４は，「総売上」である。
【００７８】
図６は，ＯＣＲ処理による認識文字データの一例を示す図である。特に，図６には，図５に示す文字列＃１４「総売上」の認識文字データ１１０について示す。
【００７９】
図６において，認識文字データ１１０は，文字列＃１４「総売上」の文字数３，座標（ｘ，ｙ）−（ｘ’，ｙ’）を含む。また，認識文字データ１１０は，文字列＃１４を構成する文字＃１４１「総」，＃１４２「売」および＃１４３「上」の３文字について，各々の座標を含む。例えば，文字＃１４１「総」の座標は，（ｘ１，ｙ１）−（ｘ’１，ｙ’１）であり，その他の文字についても，図示のとおりである。なお，（ｘ，ｙ）−（ｘ’，ｙ’）等は，図示の長方形枠の座標を表すものであり，紙面上から見て（ｘ，ｙ）が左上，（ｘ’，ｙ’）が右下に対応する座標である。例えば，左上が座標原点へ向かう方向であり，右下が原点座標から離れる方向である。座標原点は，例えばレシート挟持用シート２０における画像の特定位置とされる。
【００８０】
さらに，認識文字データ１１０は，文字＃１４１「総」，＃１４２「売」および＃１４３「上」の３文字の認識文字リストを含む。認識文字リストは，辞書からの候補文字とされる認識順位に応じて，その候補とされる認識文字と，その認識文字と読み取られた文字の相違度（または一致度）とが格納される。例えば，文字＃１４１「総」の認識文字リストでは，順位「１」が，認識文字「総」，相違度「１３１１」であり，順位「２」が，「脆」，相違度「１５８１」であり，その他の順位についても同様に示される。相違度は，例えば０に近い数値ほど，予め備えられた辞書（図示しない）の候補文字と一致する度合いが大きく，その値が大きいほど，辞書の候補文字と相違する度合いが大きいことを示す。文字＃１４２「売」および＃１４３「上」の認識文字リストについても，図６に示すとおりである。
【００８１】
図７は，画像データ記憶部１０１に保存される認識文字テーブル１０１１の一例を示す図である。認識文字テーブル１０１１は，読み込まれた画像データごとに，認識文字データを格納するテーブルである。さらに，認識文字テーブル１０１１は，レシート２２の認識された文字列ごとに，認識文字データを含む。認識文字データは，前述したとおりである。
【００８２】
図７に示す認識文字テーブル１０１１は，図５で示す文字列＃１〜＃１４，…等の認識文字データを格納する。例えば，前述した文字列＃１４「総売上」，文字列＃１４を構成する文字＃１４１「総」，＃１４２「売」および＃１４３「上」が，認識文字テーブル１０１１に格納されている。その他の文字列についても同様に格納されている。なお，図７に示す認識文字テーブル１０１１における項目，設定等の定義は，図６の認識文字データのそれらと同様であるため，ここでは説明を省く。
【００８３】
次に，画像データ読込部１１が，画像データ記憶部１０１から画像データを読み込むと，店舗特定部１２は，画像データからレシート挟持用シート２０の識別コード２１を判別し，判別した識別コード２１から店舗コードを読み取る（ステップＳ１２）。
【００８４】
具体的には，店舗特定部１２は，例えばＱＲコード等を復号し，復号したデータから店舗コード，もしくは，店舗コードに対応付けられた識別番号などを特定する。なお，読取機１０によりＱＲコードを復号し，店舗特定部１２が復号したデータから店舗コードを特定してもよく，その特定方法は限定されない。
【００８５】
次に，定義データ読込部１３は，店舗特定部１２により特定された店舗コードを受けると，店舗コードに対応付けられた定義データを，定義データ記憶部１０２から取得する（ステップＳ１３）。
【００８６】
図８は，定義データテーブル１０２１を説明する図である。以下，図８を用いて，定義データ読込部１３が取得する定義データの一例を説明する。
【００８７】
図８に示すレシート２２ｔは，ある店舗の定義データの作成のために用意されるレシート２２（基準レシートとする）の画像の一部である。また，図８において，定義データテーブル１０２１は，予め作成された定義データを格納し，定義データ記憶部１０２に記憶されるデータである。なお，レシート２２ｔには，行番号と，レシート項目名称と，金額とが表示されている。このレシート２２ｔから，１４行目（ＢＸ１４）の「現金売上金額」と，１８行目（ＢＸ１８）の「その他金券金額」とが抽出対象のレシート項目であるとする。
【００８８】
定義データテーブル１０２１では，抽出対象のレシート項目が，定義データとして登録される。定義データを予め作成するために，店舗ごとの基準とされる基準レシート（レシート２２ｔ）が用いられ，基準レシートをもとにして店舗ごとのレシート２２に対する定義データが作成される。
【００８９】
定義データテーブル１０２１には，対象の店舗コードと，抽出するレシート項目ごとに，「読取項目」，「項目属性」，「読取文字」および「金額欄の読取位置」とが格納される。「店舗コード」は，対象となるレシートの店舗に対応する店舗ごとの識別番号である。「読取項目」は，売上管理項目の名称である。「項目属性」は，読み取るべきレシート項目名称の属性である。その属性は，例えば“１”，“２”または“３”のいずれかの値である。“１”は売上管理項目に対応するレシート項目名称が基準レシートに重複していない（通常の項目）場合，“２”は重複している同一名称がありかつアンカー文字を設定する場合，“３”は重複している同一名称がありかつ複数キーワードを設定する場合の属性とされる。「読取文字」は，売上管理項目に対応する基準レシート上に印字されるレシート項目名称である。「金額欄の読取位置」は，読取文字からのレシート項目の金額（数値文字，通貨記号などを含む）の相対位置である。
【００９０】
図８に示す基準レシートとされるレシート２２ｔにおいて，画像位置ＢＸ１４には，「現金売上金額」および「￥１３９，６３９」とされる文字列Ｓｔｒ＃１およびＤａｔ＃１がある。また，文字列Ｓｔｒ＃１と文字列Ｄａｔ＃１との相対距離は，Ｄｉｓ＃１とする。画像位置ＢＸ１８には，「その他金券金額」および「￥８，０００」とされる文字列Ｓｔｒ＃２およびＤａｔ＃２がある。また，文字列Ｓｔｒ＃２と文字Ｄａｔ＃２との相対距離は，Ｄｉｓ＃２とする。
【００９１】
図８に示す定義データテーブル１０２１は，図８に示すレシート２２ｔから作成される定義データを格納する。図８に示すように，定義データテーブル１０２１には，「店舗コード」：“１００００１”が，基準レシートの対象となる店舗コードとして設定される。「読取項目＃１」：“現金売上”は，売上管理項目Ｎｏ．１の項目名称“現金売上”が設定された結果である。「項目属性＃１」：“１”は，前述した通常の項目が設定された結果である。「読取文字＃１」：“現金売上金額”は，レシート２２ｔの画像位置ＢＸ１４における文字列Ｓｔｒ＃１が設定された結果である。「金額欄の読取位置＃１」：“（ｘ１１，ｙ１１）−（ｘ’１１，ｙ’１１）”は，文字列Ｓｔｒ＃１と文字列Ｄａｔ＃１との相対距離Ｄｉｓ＃１として，文字列Ｓｔｒ＃１の位置から文字列Ｄａｔ＃１の位置の相対位置が設定された結果である。なお，相対位置として，図示された文字列Ｄａｔ＃１の長方形枠の左上の座標（ｘ１１，ｙ１１），同じく右下の座標（ｘ’１１，ｙ’１１）が格納されていることを示す。なお，これらの座標は，相対的な座標である。その他の定義データについても同様に格納されている。なお，図８に示す定義データテーブル１０２１における＃ｎは，複数の定義データの設定項目を区別するための識別子であり，ｎは１，２，…等の整数とする。
【００９２】
以上説明した定義データテーブル１０２１は，レシートデータ抽出部１４１がレシートデータを抽出する際に，定義データ読込部１３を介して参照される。レシートデータ抽出部１４１は，定義データテーブル１０２１に格納された定義データに基づき，読み込んだ画像データ（レシート２２の認識文字）について，レシート項目を抽出する。すなわち，レシートデータ抽出部１４１は，基準レシートの定義データにより，抽出すべきレシート項目を判断することができる。
【００９３】
なお，実際には，精算レシート（レシート２２）は，同じＰＯＳシステムで印刷した場合であっても，その時々の出力により，途中のレシート項目の一部を飛ばして（抜かして）印刷する場合がある。従って，定義データテーブル１０２１における「金額欄の読取位置」を固定座標で作成すると，このような一部のレシート項目を飛ばして印刷する場合に対応できない。そのため，図８に示す定義データテーブル１０２１のように，レシート項目名称の文字列位置からの相対位置の座標位置を定義データとして用いることにより，このような一部のレシート項目を飛ばして印刷する場合に対応することができる。また，図８においては，レシート項目の項目名称とそれに対応する金額が，同じ行に印刷されている例で説明しているが，レシート項目の項目名称とそれに対応する金額が，異なる行であっても良い。その場合には，定義データにその異なる行の金額の相対位置などが登録される。
【００９４】
次に，レシートデータ処理部１４は，定義データ読込部１３から店舗コードに対応付けられた定義データを受けると，レシートデータ処理を実行する（ステップＳ１４）。このレシートデータ処理の詳細なフローについては，図９を用いて後述する。
【００９５】
レシートデータ処理部１４によりレシートデータ処理された後に，売上管理データ生成部１５は，処理されたレシートデータから売上管理データを生成する。売上管理データ生成部１５は，生成した売上管理データを売上管理データ記憶部１０３に保存する（ステップＳ１５）。売上管理データを保存後，レシートデータ認識装置１は，本処理を終了する。なお，ステップＳ１５の詳細な処理フローについては，図１４を用いて後述する。
【００９６】
以上説明した処理フローが，レシートデータ認識装置１が実行する処理全体のフローである。
【００９７】
図９は，図４に示すステップＳ１４におけるレシートデータ処理の詳細な処理フローチャートである。図９に従って，レシートデータ処理部１４が実行するレシートデータ処理について具体的に説明する。
【００９８】
レシートデータ抽出部１４１は，画像データの中からレシート２２の対象とする行の項目名称のみを抽出する（ステップＳ２１）。
【００９９】
具体的には，レシートデータ抽出部１４１は，画像データ読込部１１から画像データ（認識文字データ）を受けると，レシート２２の１行目から項目名称のみを抽出する。例えば，図５の画像データである場合，レシート２２ｂの文字列＃１「２０１０年１０月１０日（日）  ２２：３０  Ｎｏ：０００２」が抽出され，文字列＃２「＊＊」，…，文字列＃７「売計」，文字列＃８「２９７点」，文字列＃９「￥２２６，７０１」，…等が抽出され，空行などは抽出されない。なお，このステップＳ２１では，項目名称として，レシート項目名称，金額，記号（例えば「＊＊」）なども含めて抽出される。
【０１００】
次に，レシートデータ抽出部１４１は，定義データテーブル１０２１に格納された定義データを参照する（ステップＳ２２）。
【０１０１】
具体的には，定義データ読込部１３が，定義データ記憶部１０２に格納された定義データテーブル１０２１から店舗コードに対応する定義データを読み出す。定義データ読込部１３は，読み出した定義データをレシートデータ抽出部１４１に送る。レシートデータ抽出部１４１は，ステップＳ２３以降の処理において，定義データ読込部１３から送られた定義データを用いる。なお，レシートデータ抽出部１４１は，定義データ読込部１３から送られた定義データを，ワークメモリ（図示しない）に保存し，ワークメモリ上で定義データを参照する。
【０１０２】
次に，レシートデータ抽出部１４１は，抽出した項目名称が定義データに設定されているかをチェックする（ステップＳ２３）。
【０１０３】
具体的には，レシートデータ抽出部１４１は，図５に示す文字列＃１４「総売上」について，定義データテーブル１０２１の読取文字＃ｎ（ｎは整数）の中に一致するものがあるかをチェックする。
【０１０４】
次に，抽出した項目名称が定義データに設定されている場合（ステップＳ２３：Ｙｅｓ），同一名称判定部１４０は，読取り対象のレシート項目名称の項目属性を参照する（ステップＳ２４）。一方，抽出した項目名称が定義データに設定されていない場合（ステップＳ２３：Ｎｏ），ステップＳ２８に処理を移す。
【０１０５】
次に，同一名称判定部１４０は，定義データに同一名称のレシート項目名称があると定義されているか否かチェックする（ステップＳ２５）。定義データに同一名称のレシート項目名称があると定義されている場合に（ステップＳ２５：Ｙｅｓ），同一名称判定部１４０は，同一名称判定処理を実行する（ステップＳ２６）。一方，定義データに同一名称のレシート項目名称がないと定義されている場合に（ステップＳ２５：Ｎｏ），同一名称判定部１４０は，ステップＳ２７に処理を移す。
【０１０６】
図１０および図１１は，ステップＳ２６における同一名称判定処理の詳細な処理フローチャートである。以下，図１０および図１１に従って，同一名称判定部１４０が実行する同一名称判定処理について具体的に説明する。
【０１０７】
アンカー文字検出部１４２は，定義データから，読取り対象のレシート項目名称の項目属性がアンカー文字か否か判定する（ステップＳ２６１）。項目属性がアンカー文字である場合に（ステップＳ２６１：Ｙｅｓ），ステップＳ２６２に処理を移す。一方，項目属性がアンカー文字でない場合（ステップＳ２６１：Ｎｏ），すなわち，項目属性が複数のキーワードである場合に，ステップＳ２６７に処理を移す。
【０１０８】
ステップＳ２６１から処理が移ると，アンカー文字検出部１４２は，レシート項目名称に一致する認識文字の位置データを取得する（ステップＳ２６２）。
【０１０９】
具体的に説明するため，図１２に，レシート２２ｃと，それに対応するアンカー文字が設定された定義データテーブル１０２１ｃとの例を示す。なお，図１２に示すレシート２２ｃでは，例えばレシート項目名称「総売上」に一致する認識文字として，レシート２２ｃ上に文字列Ｓｔｒ＃１１，Ｓｔｒ＃２１，Ｓｔｒ＃３１がある場合を示している。また，その各々に対応する金額項目（金額の文字列）Ｄａｔ＃１１「￥１６８，７３５」，Ｄａｔ＃２１「￥４８，１９５」およびＤａｔ＃３１「￥３２，０２５」とする。以下，図１２を用いて，ステップＳ２６２〜Ｓ２６６の処理を，具体例と共に説明する。
【０１１０】
図１２に示す定義データテーブル１０２１ｃは，例えば店舗コード「１００００１」に対応する定義データが格納されたテーブルである。図１２に示す定義データテーブル１０２１ｃにおいて，読取項目＃１：「総売上」は，売上管理項目Ｎｏ．５の項目名称であり，レシート２２ｃのレシート項目名称「総売上」に対応する。そして，項目属性＃１：「２」は，読取項目の属性として，読取り対象のレシート項目名称に同一名称があり，アンカー文字が設定されていることを示す。読取文字＃１：「総売上」は，レシート２２ｃのレシート項目名称「総売上」が読取文字として設定されている。金額欄の読取位置＃１は，（ｘ１１，ｙ１１）−（ｘ’１１，ｙ’１１）であり，レシート２２ｃ上では，例えば文字列Ｓｔｒ＃１１「総売上」から金額欄にある金額項目Ｄａｔ＃１１「￥１６８，７３５」までの相対距離を示す。
【０１１１】
また，図１２に示す定義データテーブル１０２１ｃにおいて，アンカー文字は，レシート２２ｃ内の他のレシート項目名称であり，かつ，ユニークな文字である。例えば，アンカー文字「貸在高」は，読取文字＃１：「総売上」に関連付けられたユニークな文字である。アンカー文字の距離は，レシート２２上のアンカー文字とされる文字列から，レシート２２上のレシート項目名称に該当する読取文字＃１までのｙ座標を基準とする距離である。例えば，アンカー文字の距離「＋１００」は，アンカー文字とされるレシート２２ｃ上の文字列Ｓｔｒ＃４１「貸在高」から，レシート２２ｃ上のレシート項目名称の文字列Ｓｔｒ＃１１「総売上」までのｙ座標を基準とする距離「＋１００」であり，文字列Ｓｔｒ＃１１「総売上」が，文字列Ｓｔｒ＃４１「貸在高」よりも行の上端側にｙ座標の差として相対値「１００」であることを意味する。
【０１１２】
例えば，前述のステップＳ２６２においては，アンカー文字検出部１４２は，図１２に示すレシート２２ｃの画像データから，レシート項目名称「総売上」に一致する認識文字として，文字列Ｓｔｒ＃１１，Ｓｔｒ＃２１，Ｓｔｒ＃３１の位置データを取得する。
【０１１３】
次に，アンカー文字検出部１４２は，画像データからアンカー文字に一致する認識文字の位置データを取得する（ステップＳ２６３）。
【０１１４】
具体的には，アンカー文字検出部１４２は，画像データ読込部１１を介して，画像データ記憶部１０１に格納されたレシート２２ｃの画像データから，アンカー文字に一致する文字列Ｓｔｒ＃４１「貸在高」に該当する認識文字の位置データを取得する。
【０１１５】
次に，アンカー文字検出部１４２は，レシート項目名称に一致する認識文字の位置と，アンカー文字に一致する認識文字の位置とから，各々の距離を算出する（ステップＳ２６４）。
【０１１６】
具体的には，図１２に示すように，定義データテーブル１０２１ｃでは，金額欄の読取位置＃１は，（ｘ１１，ｙ１１）−（ｘ’１１，ｙ’１１）であり，レシート２２ｃ内の文字列Ｓｔｒ＃１１「総売上」から金額項目Ｄａｔ＃１１までの相対距離を示す。アンカー文字「貸在高」は，読取文字＃１「総売上」に関連付けられたユニークな文字である。アンカー文字の距離Ｒｅｆ＃１は，レシート２２ｃ上のレシート項目名称に該当する読取文字＃１までのｙ座標を基準とする距離である。
【０１１７】
例えば，アンカー文字の距離Ｒｅｆ＃１は，レシート２２ｃ上の文字列Ｓｔｒ＃４１「貸在高」から，レシート２２ｃ上の文字列Ｓｔｒ＃１１「総売上」までのｙ座標を基準とする距離「＋１００」であるとする。すなわち，文字列Ｓｔｒ＃１１「総売上」が，文字列Ｓｔｒ＃４１「貸在高」よりも行の上端側にｙ座標の差として相対値「１００」であることを意味する。その他の認識文字については，例えば，文字列Ｓｔｒ＃２１「総売上」とアンカー文字Ｓｔｒ＃４１「貸在高」と間の距離Ｒｅｆ＃２であり，文字列Ｓｔｒ＃３１「総売上」とアンカー文字Ｓｔｒ＃４１「貸在高」と間の距離Ｒｅｆ＃３である。距離Ｒｅｆ＃２およびＲｅｆ＃３は，図１２に示すように，文字列Ｓｔｒ＃４１「貸在高」の行よりも下端側のｙ座標である。
【０１１８】
次に，アンカー文字検出部１４２は，定義データに設定されたアンカー文字との距離と，算出した各々の距離とを比較し，差分が小さいものを該当する（売上管理項目の対象となる）レシート項目の項目名称と判定する（ステップＳ２６５）。
【０１１９】
具体的には，図１２に示すように，アンカー文字検出部１４２は，距離Ｒｅｆ＃２および距離Ｒｅｆ＃３については負の距離であり，「＋１００」に近い値ではないと判断し，文字列Ｓｔｒ＃２１「総売上」およびＳｔｒ＃３１「総売上」は，読取文字＃１「総売上」の読取り対象でないと判断する。一方，アンカー文字検出部１４２は，距離Ｒｅｆ＃１が距離「＋１００」に最も近い値であるため，文字列Ｓｔｒ＃１１「総売上」が，読取文字＃１「総売上」の読取り対象であると判断する。すなわち，アンカー文字検出部１４２は，アンカー文字Ｓｔｒ＃４１「貸在高」およびアンカー文字との距離「＋１００」から，文字列Ｓｔｒ＃１１「総売上」が，読取り対象のレシート項目名称であることを検出する。
【０１２０】
次に，レシートデータ特定部１４４は，該当すると判定されたレシート項目名称の位置情報を用いて，画像データから金額項目を表す認識文字を抽出する（ステップＳ２６６）。
【０１２１】
具体的には，レシートデータ特定部１４４は，アンカー文字検出部１４２により該当すると判定されたレシート項目名称の位置データと，定義データに設定されたそのレシート項目名称に対応する金額項目の相対位置データとから，画像データの中から金額項目を表す認識文字を抽出する。
【０１２２】
例えば，図１２に示すように，定義データテーブル１０２１ｃでは，金額欄の読取位置＃１は，（ｘ１１，ｙ１１）−（ｘ’１１，ｙ’１１）であり，レシート２２ｃ内の文字列Ｓｔｒ＃１１「総売上」から金額項目Ｄａｔ＃１１までの相対距離を示す。レシートデータ特定部１４４は，この相対距離を，定義データテーブル１０２１ｃから取得する。また，レシートデータ特定部１４４は，文字列Ｓｔｒ＃１１「総売上」に対応する認識文字の位置データを，画像データ記憶部１０１に記憶されている画像データから取得する。これにより，レシートデータ特定部１４４は，この相対距離と，文字列Ｓｔｒ＃１１「総売上」に対応する認識文字の位置データとを用いて，画像データ記憶部１０１に記憶されている画像データから，文字列Ｓｔｒ＃１１「総売上」からの距離Ｄｉｓ＃１１にある金額項目Ｄａｔ＃１１「￥１６８，７３５」を抽出する。
【０１２３】
この金額項目を表す認識文字を抽出後，本処理を終了する。すなわち，ステップＳ２６（ステップＳ２６１〜Ｓ２６１０）の処理が終了する。
【０１２４】
他方，ステップＳ２６１から処理が移ると，キーワード検出部１４３は，定義データの設定から複数のキーワードを取得する（ステップＳ２６７）。
【０１２５】
具体的に説明するため，図１３に，レシート２２ｄと，それに対応する複数のキーワードが設定された定義データテーブル１０２１ｄとの例を示す。なお，図１３に示すレシート２２ｄでは，例えばレシート項目名称「総売上」に一致する認識文字として，レシート２２ｄ上に文字列Ｓｔｒ＃１２，Ｓｔｒ＃２２，Ｓｔｒ＃３２がある場合を示している。また，その各々に対応する金額項目（金額の文字列）Ｄａｔ＃１２「￥１６８，７３５」，Ｄａｔ＃２２「￥４８，１９５」およびＤａｔ＃３２「￥３２，０２５」とする。以下，図１３を用いて，ステップＳ２６８〜Ｓ２６１０の処理を，具体例と共に説明する。
【０１２６】
例えば，キーワード検出部１４３は，図１３に示すように，定義データテーブル１０２１ｄの項目属性＃１：「３」であることから，読取文字＃１：「総売上」，「純売上」，「現金在高」および「貸在高」を含む複数のキーワードＫｅｙ＃１を取得する。
【０１２７】
次に，キーワード検出部１４３は，画像データの中で，複数のキーワードと一致する認識文字の一群を検索する（ステップＳ２６８）。
【０１２８】
具体的には，キーワード検出部１４３は，画像データ読込部１１を介して，画像データ記憶部１０１に格納されたレシート２２ｄの画像データから，複数のキーワードＫｅｙ＃１「総売上」，「純売上」，「現金在高」および「貸在高」に一致する認識文字の一群を検索する。キーワード検出部１４３は，検索したこれらの認識文字データを取得する。
【０１２９】
次に，キーワード検出部１４３は，検索した複数のキーワードと一致する認識文字の一群の中から，レシート項目名称に一致する認識文字を該当するレシート項目の項目名称であると判定する（ステップＳ２６９）。
【０１３０】
具体的には，図１３に示すように，キーワード検出部１４３は，文字列Ｓｔｒ＃２２「総売上」に一致する認識文字の位置データと，複数のキーワードＫｅｙ＃１に含まれる認識文字の位置データとの関係から，文字列Ｓｔｒ＃２２「総売上」が複数のキーワードＫｅｙ＃１と一群とされる行でないと判定する。同様に，文字列Ｓｔｒ＃３２「総売上」についても，一群とされる行でないと判定する。
【０１３１】
一方，キーワード検出部１４３は，文字列Ｓｔｒ＃１２「総売上」に一致する認識文字の位置データと，複数のキーワードＫｅｙ＃１に含まれる認識文字の位置データとの関係から，文字列Ｓｔｒ＃１２「総売上」が複数のキーワードＫｅｙ＃１の一群に含まれる行の位置にあると判定する。すなわち，キーワード検出部１４３は，複数のキーワードＫｅｙ＃１「総売上」，「純売上」，「現金在高」および「貸在高」から，文字列Ｓｔｒ＃１２「総売上」が，読取り対象のレシート項目の項目名称であることを検出する。
【０１３２】
なお，図１３に示すレシート２２ｄでは，複数のキーワードＫｅｙ＃１の一群のキーワード間に，空行がない場合を示したが，一群のキーワード間に空行やレシート項目名称の存在しない行等を含んでもよい。その場合には，空行やレシート項目名称の存在しない（印字されない）行等を除いて，複数のキーワードＫｅｙ＃１を一群のキーワードと見なしてもよい。また，図１３に示す定義データテーブル１０２１ｄでは，読取り文字＃１：「総売上」を上段の行に位置するものとして，複数のキーワードの一群を設定する例を示したが，複数のキーワードの一群の中で上から２段目の行であってもよく，その他の行であってもよい。その場合には，複数のキーワードの中のいずれの項目名称が売上管理項目に対応する項目名称かの情報を有すればよい。
【０１３３】
次に，レシートデータ特定部１４４は，該当すると判定されたレシート項目名称の位置情報を用いて，画像データから金額項目を表す認識文字を抽出する（ステップＳ２６１０）。
【０１３４】
具体的には，レシートデータ特定部１４４は，キーワード検出部１４３により該当すると判定したレシート項目名称の位置データと，定義データに設定されたそのレシート項目名称に対応する金額項目の相対位置データとから，画像データの中から金額項目を表す認識文字を抽出する。
【０１３５】
例えば，図１３に示すように，定義データテーブル１０２１ｄでは，金額欄の読取位置＃１は，（ｘ１１，ｙ１１）−（ｘ’１１，ｙ’１１）であり，レシート２２ｄ内の文字列Ｓｔｒ＃１２「総売上」から金額項目Ｄａｔ＃１２までの相対距離を示す。レシートデータ特定部１４４は，この相対距離を，定義データテーブル１０２１ｄから取得する。また，レシートデータ特定部１４４は，文字列Ｓｔｒ＃１２「総売上」に対応する認識文字の位置データを，画像データ記憶部１０１に記憶されている画像データから取得する。これにより，レシートデータ特定部１４４は，この相対距離と，文字列Ｓｔｒ＃１２「総売上」に対応する認識文字の位置データとを用いて，画像データ記憶部１０１に記憶されている画像データから，文字列Ｓｔｒ＃１２「総売上」からの距離Ｄｉｓ＃１２にある金額項目Ｄａｔ＃１２「￥１６８，７３５」を抽出する。
【０１３６】
この金額項目を表す認識文字を抽出後，本処理を終了する。すなわち，ステップＳ２６（ステップＳ２６１〜Ｓ２６１０）の処理が終了する。
【０１３７】
次に，レシートデータ抽出部１４１は，レシート項目の最終行の処理が終了したかを判断する（ステップＳ２８）。レシート項目の最終行の処理が終了していない場合（ステップＳ２８：Ｎｏ），ステップＳ２１に処理を戻し，次のレシート項目の行からのステップＳ２１〜Ｓ２７の処理を繰り返す。一方，レシート項目の最終行の処理が終了した場合（ステップＳ２８：Ｙｅｓ），本処理を終了する。
【０１３８】
以上の同一名称判定処理などにより，図１２または図１３に示すように，レシートデータ特定部１４４は，例えばレシート項目名称「総売上」に対応する金額項目「￥１６８，７３５」を特定することができる。
【０１３９】
以上のように，レシートデータ処理部１４は，登録された定義データを用いて，レシート画像から読み取ったレシート項目の認識文字に対して，必要なレシートデータを抽出することができる。
【０１４０】
また，レシートデータ処理部１４は，売上管理データに必要なレシートデータを抽出することができ，抽出したレシートデータのレシート項目名称および金額を，予め定めた対応関係で売上管理項目の売上管理データに変換（集計）することができる。
【０１４１】
以上説明したレシートデータ認識処理によって，レシート２２内に読取り対象となるレシート項目の項目名称と同一名称が存在する場合であっても，定義データを用いて，項目名称に関連付けられたユニークなアンカー文字，または，複数のキーワードを検索することにより，売上管理項目に必要なレシート項目の項目名称および対応する金額項目を正確に抽出することができる。これにより，売上管理データを正確に集計することができる。
【０１４２】
図１４は，ステップＳ１５における売上管理データ生成処理の詳細な処理フローチャートを示す。図１４に従って，売上管理データ生成部１５が実行する売上管理データ生成処理について具体的に説明する。
【０１４３】
売上管理データ生成部１５は，レシートデータ特定部１４４から売上集計に必要となるレシートデータを取得する（ステップＳ３１）。
【０１４４】
具体的には，売上管理データ生成部１５は，店舗コードと，認識文字データから特定したレシート項目名称およびその金額を含むデータと，図３に示す対応関係情報１０２２（１０２２ａ）とを含むレシートデータを，レシートデータ特定部１４４から取得する。
【０１４５】
次に，売上管理データ生成部１５は，対応関係情報１０２２（１０２２ａ）を用いて，売上管理項目の売上管理データを集計する（ステップＳ３２）。
【０１４６】
具体的には，売上管理データ生成部１５は，対応関係情報１０２２（１０２２ａ）から売上管理項目とレシート項目の対応関係に基づいて，レシート項目名称に対応する金額を，売上管理項目の売上管理データとして集計する。以上により，レシート項目の金額（数値データ）が，売上管理項目の数値データに変換される。
【０１４７】
次に，売上管理データ生成部１５は，保存対象となる店舗コードの売上管理データを，売上管理データ記憶部１０３の売上管理ＤＢ１０３１に保存する（ステップＳ３３）。
【０１４８】
例えば，図１５に，売上管理ＤＢ（データベース）１０３１の例を示す。売上管理ＤＢ１０３１には，図１５に示すように，店舗コードごとに，「売上日付」，売上管理項目Ｎｏ．１「現金売上」，Ｎｏ．２「掛売上」，Ｎｏ．３「クレジット売上」，…などの売上に関する精算項目に対応する数値（金額）が格納される。
【０１４９】
以上により，売上管理ＤＢ１０３１には，店舗ごとにまったく異なるフォーマット（シート形式）であったレシート２２のレシート項目が一元化され，各テナントの店舗により出力されたレシートで統一の取れないレシート項目，名称，数値などが，統一性のとれた売上管理項目による売上管理データとして，手入力による作業なしに自動的に収集できるようになる。これにより，テナント管理部門の業務担当者は，自動的に店舗ごとの売上を集計することができるため，店舗の売上管理業務を効率よく，スピーディに行うことができる。
【０１５０】
また，各店舗に備えられたキャッシュレジスタなどのレシート出力装置を変更する必要がないため，テナント側にとっては余計な出費を抑えることができる。
【０１５１】
以上のレシートデータ認識装置が行う処理は，コンピュータとソフトウェアプログラムとによって実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも，ネットワークを通して提供することも可能である。
【符号の説明】
【０１５２】
１      レシートデータ認識装置
１０    読取機
１１    画像データ読込部
１２    店舗特定部
１３    定義データ読込部
１４    レシートデータ処理部
１５    売上管理データ生成部
２０    レシート挟持用シート
２２    レシート
１０１  画像データ記憶部
１０２  定義データ記憶部
１０３  売上管理データ記憶部
１４０  同一名称判定部
１４１  レシートデータ抽出部
１４２  アンカー文字検出部
１４３  キーワード検出部
１４４  レシートデータ特定部
【図１】
0005216890.tif 000002
【図２】
0005216890.tif 000003
【図３】
0005216890.tif 000004
【図４】
0005216890.tif 000005
【図５】
0005216890.tif 000006
【図６】
0005216890.tif 000007
【図７】
0005216890.tif 000008
【図８】
0005216890.tif 000009
【図９】
0005216890.tif 000010
【図１０】
0005216890.tif 000011
【図１１】
0005216890.tif 000012
【図１２】
0005216890.tif 000013
【図１３】
0005216890.tif 000014
【図１４】
0005216890.tif 000015
【図１５】
0005216890.tif 000016
【図１６】
0005216890.tif 000017
【図１７】
0005216890.tif 000018