"レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶部と,レシートに印字される項目名称の文字列と,レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と,レシート内に同一の項目名称を持つ他の文字列が存在する場合に,前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列であるアンカー文字と,前記項目名称の文字列と前記アンカー文字間の距離の情報とを,レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶部と,前記画像データ記憶部に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出部と,抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に,対応する前記アンカー文字に一致する認識文字の位置を取得し,その位置と前記抽出された認識文字の位置との距離を算出する同一名称判定部と,前記抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に,前記算出された距離と,前記定義データにおいて定義されている距離の情報とを比較し,最も近い距離の認識文字を,読取り対象の項目名称として特定し,前記抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に,前記抽出された認識文字を,読取り対象の項目名称として特定するレシートデータ特定部と,前記読取り対象の項目名称と,その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから,認識結果のデータを生成し,認識結果のデータを出力または記憶するデータ生成部とを備えることを特徴するレシートデータ認識装置。レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶部と,レシートに印字される項目名称の文字列と,レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と,レシート内に同一の項目名称を持つ他の文字列が存在する場合に,前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列である複数のキーワードの情報とを,レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶部と,前記画像データ記憶部に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出部と,抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に,その項目名称に対して定義されている前記複数のキーワードに一致する複数の認識文字が存在するか否かを判定する同一名称判定部と,前記複数のキーワードに一致する複数の認識文字が存在する場合に,前記複数のキーワードに一致する複数の認識文字の中の前記定義データに定義された項目名称の文字列に一致する認識文字を,読取り対象の項目名称として特定し,前記抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に,前記抽出された認識文字を,読取り対象の項目名称として特定するレシートデータ特定部と,前記読取り対象の項目名称と,その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから,認識結果のデータを生成し,認識結果のデータを出力または記憶するデータ生成部とを備えることを特徴するレシートデータ認識装置。請求項1または請求項2記載のレシートデータ認識装置において,前記レシートは,店舗ごとに異なるフォーマットで印刷されたレシートであり,前記定義データ記憶部には,店舗ごとに前記定義データが記憶され,レシートを発行した店舗ごとに異なる定義データを用いて,前記レシートデータ抽出部と,前記同一名称判定部と,前記レシートデータ特定部と,前記データ生成部とによる処理を実行することを特徴とするレシートデータ認識装置。請求項3記載のレシートデータ認識装置において,前記定義データ記憶部に記憶される定義データは,前記レシートに印字される項目名称の文字列に対応して,複数の店舗の売上管理に共通に用いられる管理項目名称のデータを含み,前記データ生成部は,前記項目名称に一致する認識文字を,前記定義データに定義された対応する管理項目名称に変換した認識結果のデータを生成することを特徴とするレシートデータ認識装置。コンピュータを,レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶手段と,レシートに印字される項目名称の文字列と,レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と,レシート内に同一の項目名称を持つ他の文字列が存在する場合に,前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列であるアンカー文字と,前記項目名称の文字列と前記アンカー文字間の距離の情報とを,レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶手段と,前記画像データ記憶手段に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出手段と,抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に,対応する前記アンカー文字に一致する認識文字の位置を取得し,その位置と前記抽出された認識文字の位置との距離を算出する同一名称判定手段と,前記抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に,前記算出された距離と,前記定義データにおいて定義されている距離の情報とを比較し,最も近い距離の認識文字を,読取り対象の項目名称として特定し,前記抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に,前記抽出された認識文字を,読取り対象の項目名称として特定するレシートデータ特定手段と,前記読取り対象の項目名称と,その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから,認識結果のデータを生成し,認識結果のデータを出力または記憶するデータ生成手段として機能させるためのレシートデータ認識プログラム。コンピュータを,レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶手段と,レシートに印字される項目名称の文字列と,レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と,レシート内に同一の項目名称を持つ他の文字列が存在する場合に,前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列である複数のキーワードの情報とを,レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶手段と,前記画像データ記憶手段に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出手段と,抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に,その項目名称に対して定義されている前記複数のキーワードに一致する複数の認識文字が存在するか否かを判定する同一名称判定手段と,前記複数のキーワードに一致する複数の認識文字が存在する場合に,前記複数のキーワードに一致する複数の認識文字の中の前記定義データに定義された項目名称の文字列に一致する認識文字を,読取り対象の項目名称として特定し,前記抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に,前記抽出された認識文字を,読取り対象の項目名称として特定するレシートデータ特定手段と,前記読取り対象の項目名称と,その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから,認識結果のデータを生成し,認識結果のデータを出力または記憶するデータ生成手段として機能させるためのレシートデータ認識プログラム。前述したような,ショッピングセンター等の各店舗から提供される精算レシート以下,レシートというを集計するために,ショッピングセンター等を運営する会社組織のテナント管理部門では,従来,事務員が目視でレシートを読み取り,読み取ったデータを手作業でデータ処理装置に入力していた。この売上集計作業の作業量は,店舗数が100店舗以上に及ぶこともあり,しかも毎日行わなければならない作業であるため,非常に負担が大きいものであった。この負担を軽減するための一案としては,各店舗の売上データレシートデータを,各店舗の端末からネットワークを介して自動収集することが考えられる。しかし,一般に各店舗は企業体が異なるため,個々にネットワーク開設の許諾を得る必要があり,さらに導入されているシステムによって接続するネットワーク種類やアプリケーションの追加修正の難易度が異なるなど,解決が困難な問題が存在する。既存のシステムの変更,特に各店舗における端末などの情報機器の変更をできるだけ行わないで,前述した作業負担を軽減する他の案としては,レシートデータを人間が読み取るのではなく,文字画像の認識によって読み取る方法が考えられる。すなわち,各店舗のレシートを,例えばOCROpticalCharacterRecognition機能を有する読取装置,スキャナー等で読み取り,読み取ったレシート項目とその数値データについて売上管理項目に必要なものを抽出し,売上管理データに入力し直す方法である。しかし,この方法の場合にも,一般的な従来の文字画像の認識では解決できない問題を解決しなければならない。次に,この問題について説明する。OCR機能を有する読取装置等によりレシートを読み取らせる場合,売上管理データを集計するために必要なレシートに印字されるレシート項目と,売上管理項目との対応関係を予め登録し,読取装置等から読み取ったレシート画像から必要なレシート項目を抽出する必要がある。例えば,その場合の解決できない問題を,図16および図17に従って,以下に説明する。図16および図17は,レシート項目と売上管理項目との対応関係の一例を説明する図である。特に,図16では,レシート内にレシート項目の項目名称に同一名称がない場合の例を示し,図17では,レシート内にレシート項目の項目名称レシート項目名称に同一名称が複数存在する場合の例を示す。例えば,図16に示すように,印字されたレシート22uには,売上管理項目1001uの総売上に対応するレシート項目名称総売上が,レシート22u内の行Line101のみに印字されている。また,同様に,売上管理項目1001uの商品券に対応するレシート項目名称商品券が,レシート22u内の行Line102のみに印字されている。売上管理項目1001uのその他のクレジット売上および消費税に対応するレシート項目名称についても,レシート22u内の行Line103および行Line104にのみ,各々,クレジットおよび税合計が印字されている。すなわち,図16に示すレシート22uには,売上管理項目の対象となるレシート項目について,同一名称のレシート項目名称が存在しない。一方,図17に示すレシート22vでは,売上管理項目1001vの総売上に対応するレシート項目名称総売上が,レシート22v内の行Line201,204,206の複数の箇所異なる行に印字されている。また,売上管理項目1001vの商品券に対応するレシート項目名称商品券在高が,レシート22v内の行Line202のみに印字されている。売上管理項目1001vのクレジット売上については,レシート22v内の行Line203,205,207に,クレジット在高という名称で複数の箇所3箇所に印字されている。すなわち,図17に示すレシート22vには,売上管理項目の対象となるレシート項目について同一名称のレシート項目名称が複数存在している。なお,売上管理項目1001vの消費税に対応するレシート項目名称は,レシート22vに印字されていないものとする。図17では,売上管理項目として本来抽出すべきレシート項目名称に対応する金額項目は,グループG1の行Line201~203にある金額項目である。グループG2およびG3の行Line204~207にある総売上およびクレジット在高は,店舗内の担当者グループごとの内訳を示しており,これらは,テナント管理部門が売上管理項目として必要とするレシート項目ではない。レシート項目名称が同一の名称で,かつ,金額内容が異なるものが複数存在する場合,例えば図17に示すレシート22vでは,複数の段落ごとの小計として印字されており,売上管理項目1001vの総売上に対応するレシート項目名称総売上として,OCR処理による文字認識だけでは,その中の抽出すべきレシート項目と区別できない。すなわち,レシート項目名称だけでは,売上管理項目として抽出すべきレシートデータか否かを判断できない。これらを区別するために,例えば上端のレシート印字位置を基準とした位置データを用いることも考えられる。しかし,固定位置を基準とする位置データを用いる場合には,その日のレシートの印字内容で,空行や複数のレシート項目の増減が生じるような,位置データが変わるPOSシステムには対応できない。実際には,店舗ごとの精算レシートは,その日の印字内容で,空行や複数のレシート項目の増減する場合が多い。上述したように,レシートに印字されるレシート項目名称に,同一名称が複数存在し,その各々に対応する金額が異なる内容の金額項目である場合に,このようなレシートを読取装置等で読み取り,レシートの数値データをOCR処理すると,本来抽出すべきレシート項目名称と対応しない金額項目が抽出されて処理されることがあり,売上管理データに集計エラーが発生することになる。これを回避するために,上述したような同一名称のレシート項目が存在するような店舗の精算レシートは,売上管理項目を手作業で集計しなければならず,またそのように手作業で集計した場合でも,同一名称であるため,作業者が集計箇所を誤認することもある。そのために,精算レシートを照合する作業が必要となり,人的負担が軽減されない。本発明は,以上の点に鑑み,各店舗の情報機器などの現状のシステムを大幅に変えることなく,各テナントの店舗のレシートから売上管理データを正確かつ効率よく収集し,売上管理業務におけるスピード化,効率化を図ることを目的としている。本発明は,例えば店舗ごとに印刷されたレシートを,統一された売上管理項目に集計し直すために,レシート画像を読み取り得られた認識文字について,レシートを発行した店舗ごとに異なる定義データに登録されたレシート内の項目名称の文字列と,読取り対象の項目名称と同一の名称が存在するか否かの情報と,レシート内に同一の項目名称を持つ他の文字列が存在する場合に,当該項目名称とレシート印字位置が関連付けられている他の項目名称の文字列との位置情報とから,レシート内の項目名称において同一である項目名称が複数存在する場合に,売上管理項目として抽出すべきレシートデータか否かを判断して,必要な認識文字を抽出し,抽出された認識文字の位置データから,認識文字とその位置データから金額項目を表す認識文字を抽出し,項目名称に一致する認識文字と金額項目を表す認識文字とから,認識結果のデータを出力または記憶することを特徴とする。すなわち,レシート画像を読取機で読み取るときに,正確にレシート内の項目と金額を読み取ることができるようにしたものであり,複数の異なる形式で印刷されたレシートから,読取り対象となる項目名称と同一の項目名称が複数存在した場合であっても,売上管理項目として必要な項目のみを正確に抽出して,売上管理に必要なレシート内の項目と金額を,認識結果のデータとして出力または記憶することができるようにしている。詳しくは,本発明は以下の手段を備える。1本発明は,レシートデータ認識装置が,レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶部と,レシートに印字される項目名称の文字列と,レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と,レシート内に同一の項目名称を持つ他の文字列が存在する場合に,前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列であるアンカー文字と,前記項目名称の文字列と前記アンカー文字間の距離の情報とを,レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶部と,前記画像データ記憶部に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出部と,抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に,対応する前記アンカー文字に一致する認識文字の位置を取得し,その位置と前記抽出された認識文字の位置との距離を算出する同一名称判定部と,前記抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に,前記算出された距離と,前記定義データにおいて定義されている距離の情報とを比較し,最も近い距離の認識文字を,読取り対象の項目名称として特定し,前記抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に,前記抽出された認識文字を,読取り対象の項目名称として特定するレシートデータ特定部と,前記読取り対象の項目名称と,その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから,認識結果のデータを生成し,認識結果のデータを出力または記憶するデータ生成部とを備えることを特徴とする。これによって,レシートを読み取り得られるレシート画像について,読取り対象となる各項目名称ごとに,レシート内の項目名称の文字列と,読取り対象の項目名称と同一の名称が存在するか否かの情報と,レシート内の項目名称において同一である項目名称が複数存在する場合に,定義データにレシート内の項目名称と関連付けられたユニークな項目名称であるアンカー文字との位置情報の関連付けとが定義データに登録されているため,レシート内の項目名称において同一である項目名称が複数存在する場合であっても,レシート画像を読み取り得られた認識文字について,アンカー文字に一致する認識文字を抽出することにより,抽出された認識文字と読取り対象の項目名称と一致する認識文字の位置データの関係を用いて,読取り対象の項目名称とそれに対応する金額項目を表す認識文字を正確に抽出し,認識結果のデータを出力または記憶することができる。2また,本発明は,レシートデータ認識装置が,レシート画像を文字認識することにより得られた認識文字とその位置データとを記憶する画像データ記憶部と,レシートに印字される項目名称の文字列と,レシート内に同一の項目名称を持つ他の文字列が存在するか否かを示す情報と,レシート内に同一の項目名称を持つ他の文字列が存在する場合に,前記項目名称とレシート印字位置が関連付けられている他の項目名称の文字列である複数のキーワードの情報とを,レシートにおける読取り対象となる各項目名称ごとに定義した定義データを記憶する定義データ記憶部と,前記画像データ記憶部に記憶された認識文字から前記定義データに定義された項目名称の文字列に一致する認識文字を抽出するレシートデータ抽出部と,抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義されている場合に,その項目名称に対して定義されている前記複数のキーワードに一致する複数の認識文字が存在するか否かを判定する同一名称判定部と,前記複数のキーワードに一致する複数の認識文字が存在する場合に,前記複数のキーワードに一致する複数の認識文字の中の前記定義データに定義された項目名称の文字列に一致する認識文字を,読取り対象の項目名称として特定し,前記抽出された認識文字に該当する項目名称が,前記定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在しないと定義されている場合に,前記抽出された認識文字を,読取り対象の項目名称として特定するレシートデータ特定部と,前記読取り対象の項目名称と,その項目名称に一致する認識文字に対応する金額項目を表す認識文字とから,認識結果のデータを生成し,認識結果のデータを出力または記憶するデータ生成部とを備えることを特徴とする。これによって,レシート内の項目名称の文字列と,読取り対象の項目名称と同一の名称が存在するか否かの情報と,レシート内の項目名称において同一である項目名称が複数存在する場合に,定義データにレシート内の項目名称と関連付けられた複数のキーワードの一群との位置情報の関連付けとが定義データに登録されているため,レシート内の項目名称において同一である項目名称が複数存在する場合であっても,レシート画像を読み取り得られた認識文字について,複数のキーワードに一致する認識文字を抽出することにより,抽出された認識文字と読取り対象の項目名称と一致する認識文字の位置データの関係を用いて,読取り対象の項目名称とそれに対応する金額項目を表す認識文字を正確に抽出し,認識結果のデータを出力または記憶することができる。3また,本発明は,さらに前記発明のいずれかにおいて,前記レシートは,店舗ごとに異なるフォーマットで印刷されたレシートであり,前記定義データ記憶部には,店舗ごとに前記定義データが記憶され,レシートを発行した店舗ごとに異なる定義データを用いて,前記レシートデータ抽出部と,前記同一名称判定部と,前記レシートデータ特定部と,前記データ生成部とによる処理を実行することを特徴とする。これによって,店舗ごとに印刷されたレシートの項目名称や印字位置が異なる場合であっても,店舗ごとに項目名称とそれに対応する金額欄の相対位置とを定義データに登録するため,店舗ごとのレシート項目名称およびそれに対応する金額欄の位置の相違に関係なく,レシート画像から必要なレシートデータを読み取ることができる。4また,本発明は,さらに前記発明において,前記定義データ記憶部に記憶される定義データは,前記レシートに印字される項目名称の文字列に対応して,複数の店舗の売上管理に共通に用いられる管理項目名称のデータを含み,前記データ生成部は,前記項目名称に一致する認識文字を,前記定義データに定義された対応する管理項目名称に変換した認識結果のデータを生成することを特徴とする。これによって,店舗ごとに印刷されたレシートの項目名称や印字位置が異なる場合であっても,事前に入力された売上管理項目に変換すべきレシート項目について,店舗ごとに項目名称とそれに対応する金額欄の相対位置とを定義データに登録するため,店舗ごとのレシート項目名称およびそれに対応する金額欄の位置の相違に関係なく,レシート画像から必要なレシートデータを読み取り,統一した売上管理データを生成することができる。本発明の効果は以下のとおりである。1レシートから売上管理項目に必要なレシート項目を予め定義データに登録することにより,それらを用いて自動的に必要なレシートデータを抽出することができるため,売上情報の入力作業の省力化およびスピード化が達成できる。2レシートから売上管理項目に必要なレシート項目について項目名称に同一の名称が複数存在する場合に,その中で売上管理項目に必要な金額に関する相対位置を,他のユニークな項目名称または複数のキーワードとなる項目名称の一群の位置情報に関連付けて定義データに登録できるため,レシートデータの抽出の誤認識を回避し,正しいレシートデータを抽出することができる。このため,チェック作業の省力化およびスピード化が達成できる。3予め店舗ごとに登録,設定された定義データによって,どのような種類のレシートであるか,どのような項目名称を有し,金額に関する相対位置などの情報を画像の解析に利用することができ,文字認識などを含めて読み取りの精度を高めることができる。4また,レシートの項目が異なる各店舗のレシートデータから,売上管理部門が必要とする基本的なデータを統一的に収集し,売上管理データベースなどに保存することができるようになる。以下,図面を用いながら,本発明の実施の形態について詳細に説明する。なお,以下では,主に店舗売上を集計する装置の例について説明するが,本発明は売上集計に限られるわけではなく,仕入集計データやその他の伝票などに印字された実績データを集計するための装置などにも同様に適用することができる。図1は,本発明の概要を説明するための装置構成例を示す。図1において,1はCPUおよびハードディスクやメモリ等の記憶装置等から構成され,レシートから読み取ったデータをもとに売上の集計に関する処理を実行するレシートデータ認識装置,20は各店舗に対応付けられた識別コード21図2に示すがマーキングされ,各店舗のレシート22を挟持するレシート挟持用シートである。レシート22は,店舗ごとに異なるフォーマットで印刷されたレシートである。なお,レシート22は,テナントの店舗ごとに,例えば一日の店舗の売上を各店舗に備えられたキャッシュレジスタなどで集計した結果が印刷されたものである。また,これらのレシート22は,売上集計に関する一例として示したものであり,売上集計以外にも,仕入集計,その他帳票処理に関するものであってもよい。最初に,レシート挟持用シート20について説明する。図2は,レシート挟持用シート20の一実施態様の構成を示す図である。特に,図2Aは,レシート挟持用シート20を透明フィルム231側から見た上面図であり,図2Bは,レシート挟持用シート20においてレシート22が透明シート23に挟持される前の状態を説明する斜視図である。図2Aに示すように,例えばレシート挟持用シート20は各店舗のレシート22を台紙付の透明シート23に挟持する。透明シート23の上右端隅には,当該店舗に対応する識別コード21QRコード登録商標などの2次元コード等が印刷,またはシールなどでマーキングされる。図2Bに示すように,透明シート23は,例えば透明フィルムシート231と台紙232とが一端233で接続粘着等されており,レシート22を挟持する前の状態では透明シート23が半開封状態にある。この半開封状態の透明シート23の台紙232上にレシート22が載せられ,例えば密着面が多少粘着性を有する透明フィルム231と台紙232とが貼り合わされることにより,レシート22が挟持される。なお,前述の識別コード21は,例えば台紙232の上右端隅に位置決めされた範囲で,印刷,シールなどによりマーキングされる。次に,レシートデータ認識装置1が処理する,店舗ごとのレシート22におけるレシート項目と,テナント管理部門が集計する売上管理項目との対応関係について説明する。図3は,売上管理項目とレシート項目との対応関係の一例を示す図である。図3の例では,テナント管理部門が店舗の売上管理に実際に必要な売上集計のデータは,No.1の現金売上からNo.11の客数までの11個の売上管理項目である。しかし,これらの売上管理項目が各店舗のレシート22のレシート項目として,そのまま1対1の関係で印字されていることはない。そこで,店舗ごとの対応関係情報10221022aを用いて,各店舗のレシート項目から11個の各売上管理項目を算出する処理を行う。図3に示すレシート22aの場合,14番目のレシート項目の現金売上金額が,No.1の売上管理項目の現金売上に相当することが,対応関係情報10221022aに示されている。その他の売上管理項目についても,それぞれ対応関係情報1022によって対応付けられる。なお,図3に示すような店舗ごとの売上管理項目とレシート項目との対応関係情報10221022aは,定義データ記憶部102図1に示すに予め登録され,格納される。図3では,レシート22aに示すレシート項目が,例えば14番目に現金売上金額等と示しているが,実際には,14番目n番目がレシート内の最上段の位置から固定した行の位置にあるわけではない。店舗の当日のレシート集計結果により,n番目以前のレシート項目で印字行数が増えたり,また印刷時に省かれるレシート項目などがある。このため,レシートデータ認識装置1では,レシート項目におけるレシート項目名称とそれに対応する金額項目の相対位置相対的な金額欄の位置とを含む定義データを予め登録し,対応関係情報10221022aと共に用いることで,上記課題の解決を図っている。レシートデータ認識装置1は,以上のような定義データおよび対応関係情報10221022aに従って,店舗コードごとに,売上日付,売上管理項目No.1現金売上,No.2掛売上,No.3クレジット売上,...などの売上に関する項目に対応する金額を集計し,売上管理データ記憶部103に格納する。そのために,レシートデータ認識装置1は,以下に説明する処理を実行する。レシートデータ認識装置1は,レシート挟持用シート20からレシート22を読み取る。レシートデータ認識装置1は,レシート22についての定義データを用いて,レシート項目中の項目名称および金額を含むレシートデータを抽出する。レシートデータ認識装置1は,売上管理項目とレシート項目との対応関係情報10221022aを用いて,抽出したレシートデータの項目を売上管理データに変換する。すなわち,売上管理データに必要となるレシート項目が抽出され,レシート項目の金額が売上管理データとして集計される。以上のように,レシートデータ認識装置1は,レシート22を発行した店舗ごとに定義データを用いて,レシートデータ認識処理を実行する。以下,上述したレシートデータ認識処理を実行するための,図1に示すレシートデータ認識装置1の構成について,具体的に説明する。画像データ記憶部101は,読取機10により読み取られたレシート挟持用シート20の画像データを記憶する。画像データは,レシート22の画像をOCR処理することにより得られた認識文字およびその座標位置データを含むデータである。さらに,画像データは,識別コード21を含んでもよい。また,画像データ記憶部101は,画像データに関連付けて,レシート挟持用シート20の画像ファイル,例えばビットマップ形式ファイル等を格納してもよい。定義データ記憶部102は,レシートデータ認識装置1に用いられる定義データを格納する記憶手段である。定義データは,店舗ごとにレシート22のレシート項目および金額の位置などの情報を含む。具体的には,定義データには,レシート22に印字されるレシート項目名称の文字列に対応して,複数の店舗の売上管理に共通に用いられる売上管理項目名称が登録される。例えば,定義データは,レシート22に印字されるレシート項目名称の文字列と,レシート項目名称のレシート内位置からの,そのレシート項目名称に対応する金額項目の相対位置データとを含み,レシート22における読取り対象となるレシート項目の項目名称レシート項目名称ごとに定義される。このような定義データは,集計する店舗のレシート22ごとに,予め作成され,定義データ記憶部102に格納される。なお,定義データの詳細は,図8を用いて後述する。さらに,定義データには,レシート22に印字されるレシート項目名称の文字列と,レシート22内に同一のレシート項目名称を持つ他の文字列が存在するか否かを示す情報と,レシート22内に同一のレシート項目名称を持つ他の文字列が存在する場合に,レシート項目名称とレシート印字位置が関連付けられている他のレシート項目名称の文字列であるアンカー文字と,レシート項目名称の文字列とアンカー文字間の距離の情報とが,レシートにおける読取り対象となるレシート項目名称ごとに,登録される。もしくは,定義データには,レシート22に印字されるレシート項目名称の文字列と,レシート22内に同一のレシート項目名称を持つ他の文字列が存在するか否かを示す情報と,レシート22内に同一のレシート項目名称を持つ他の文字列が存在する場合に,レシート項目名称とレシート印字位置が関連付けられている他のレシート項目名称の文字列である複数のキーワードの情報とが,レシート22における読取り対象となるレシート項目名称ごとに,登録される。売上管理データ記憶部103は,レシートデータ認識装置1が生成する売上管理データを保存する記憶手段である。売上管理データは,店舗ごとに異なるレシート項目を統一した売上管理項目に対応させて,各店舗のレシート項目の金額を収集した結果のデータである。なお,売上管理データの詳細は,図15を用いて後述する。読取機10は,画像のスキャンニングに光学方式などを用いて,レシート挟持用シート20の画像を読み取る装置である。読取機10は,レシート挟持用シート20が入力されると,レシート挟持用シート20を画像データに変換する。画像データは,例えば画像ファイル,OCRによる認識文字データを含む。読取機10は,変換した画像データを画像データ記憶部101に保存する。例えば,読取機10は,スキャナー,OCR処理装置などの周知の技術によるものである。画像データ読込部11は,画像データ記憶部101に保存された画像データを読み出す。なお,画像データ読込部11が,レシートデータ認識装置1の外部の入力装置から画像データを入力してもよい。外部の入力装置は,読取装置,ネットワーク装置などである。この場合には,例えばネットワーク等を介して,レシートデータ認識装置1の設置場所以外に設置されている読取装置で入力されたレシート挟持用シート20の画像データを,入力装置図示しないが入力し,画像データ記憶部101に保存する。店舗特定部12は,レシート挟持用シート20の識別コード21を識別して,店舗コードまたは店舗を特定する。なお,図1の構成例では,店舗コードのための識別コード21がレシート挟持用シート20上に認識マーク化されているが,店舗コードの読み取り方法は本実施例に限定されない。例えば,レシート22の読み取りの際に,ユーザが,店舗コードをテンキー,カードリーダなどの外部の入力装置を介して入力してもよい。その場合には,外部の入力装置から入力された店舗コードを店舗特定部12が受ける。また,読取機10がレシート挟持用シート20の識別コード21を読み取り,店舗特定部12がその読み取られた識別コード21から店舗コードを特定してもよい。定義データ読込部13は,店舗特定部12により特定された店舗コードを受けると,定義データ記憶部102から店舗コードに対応付けられた定義データを検索する。定義データ読込部13は,定義データ記憶部102から検索した定義データを読み出し,読み出した定義データをレシートデータ処理部14に送る。レシートデータ処理部14は,店舗コードごとの定義データを用いて,画像データからレシート項目名称およびその金額を含むレシートデータを抽出し,抽出したレシートデータから売上管理項目に必要となるレシートデータを特定する。そのために,レシートデータ処理部14は,図1に示すように,以下の機能部を含む。レシートデータ抽出部141は,画像データ記憶部101に記憶された画像データの認識文字データから,定義データに定義されたレシート項目名称の文字列に一致する認識文字を検索し,その認識文字データを抽出する。認識文字データは,予めレシートデータ認識装置1が備える辞書図示しないによる候補文字と,OCR処理による認識文字との相違度を示す値と,文字の範囲を示す相対的な座標位置相対位置を含む。なお,認識文字データについては,図6を用いて後述する。同一名称判定部140は,レシートデータ抽出部141により画像データから抽出された認識文字について,該当するレシート項目名称がレシート22内に同一名称の項目名称を含むか否か,定義データを用いて判定する。具体的には,同一名称判定部140は,抽出された認識文字に該当するレシート項目名称が,定義データ中でレシート22内に同一のレシート項目名称を持つ他の文字列が存在すると定義されている場合に,そのレシート項目名称に対して定義されている,例えばアンカー文字または複数のキーワードに一致する認識文字が存在するか否かを判定する。ここで,アンカー文字とは,売上管理項目の対象となるレシート項目名称に,レシート印字位置などの位置情報と関連付けられた,他のレシート項目名称の中でユニークな項目名称である。複数のキーワードとは,売上管理項目の対象となるレシート項目名称を含み,かつレシート印字位置などの位置情報と関連付けられた,他のレシート項目名称を1または複数含むキーワードの一群であり,当該キーワードの一群が,例えばレシート行として連続となるものである。同一名称判定部140は,画像データからアンカー文字および複数のキーワードを検出するために,アンカー文字検出部142およびキーワード検出部143を有する。以下,アンカー文字検出部142およびキーワード検出部143について説明する。1アンカー文字検出処理アンカー文字検出部142は,読み取ったレシート22に対応する定義データについて,読取り対象のレシート項目の項目名称が,定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義され,かつアンカー文字が定義されている場合に,以下のように,アンカー文字の検出処理を実行する。アンカー文字検出部142は,定義データの読取文字に関連付けられてアンカー文字が設定されている場合に,画像データ記憶部101に記憶された画像データから,設定されているアンカー文字に一致する認識文字の位置を取得し,その位置と抽出された認識文字の位置との距離を算出する。2複数のキーワード検出処理キーワード検出部143は,読み取ったレシート22に対応する定義データについて,読取り対象のレシート項目の項目名称が,定義データ中でレシート内に同一の項目名称を持つ他の文字列が存在すると定義され,かつ複数のキーワードが定義されている場合に,以下のように,複数のキーワード検出処理を実行する。キーワード検出部143は,定義データの読取文字に関連付けられて複数のキーワードが設定されている場合に,画像データ記憶部101に記憶された画像データから,設定されている複数のキーワードに一致する複数の認識文字が存在するか否かを判定する。3レシート22内に同一名称が存在し,かつアンカー文字が検出された場合レシートデータ特定部144は,アンカー文字検出部142によりアンカー文字が検出された場合に,算出された距離と,定義データにおいて設定されている距離の情報とを比較し,検出されたアンカー文字の認識文字に最も近い距離の認識文字を,読取り対象のレシート項目の項目名称レシート項目名称として特定する。4レシート22内に同一名称が存在し,かつ複数キーワードが検出された場合レシートデータ特定部144は,キーワード検出部143により複数のキーワードが検出された場合に,複数のキーワードの中で一つのレシート項目名称の文字列に一致する認識文字を,読取り対象のレシート項目の項目名称として特定する。5レシート22内に同一名称が存在しない場合一方,レシートデータ特定部144は,レシートデータ抽出部141により抽出された認識文字に該当するレシート項目名称が,定義データ中でレシート内に同一のレシート項目名称を持つ他の文字列が存在しないと定義されている場合に,抽出された認識文字を,読取り対象のレシート項目の項目名称として特定する。6特定された認識文字をレシートデータとして特定レシートデータ特定部144は,3~5のいずれかで特定した認識文字の位置データと,読取り対象のレシート項目の項目名称に対応する金額項目の相対位置データとから,その金額項目を表す認識文字を抽出する。以上説明したように,レシートデータ特定部144は,レシートデータ抽出部141または同一名称判定部140から,レシート項目名称に対応する金額項目の相対位置を受けると,画像データ記憶部101に記憶された認識文字の中から,その金額項目の相対位置に対応する認識文字を抽出する。これにより,レシートデータ特定部144は,レシート項目名称に対応する金額項目を正確に特定することができる。すなわち,レシート項目に関する,レシート項目名称の文字列と,それに対応する金額欄の金額項目の文字列とを含むレシートデータを特定することができる。以上のように,レシート22に印字される読取り対象のレシート項目名称に同一の名称が複数存在する場合であっても,定義データに設定されるアンカー文字または複数のキーワードの情報により,これらの他の項目名称との相対位置を判定することにより,読取り対象のレシート項目名称に対応する金額項目を正確に読み取ることができる。売上管理データ生成部15は,レシートデータ処理部14により特定されたレシートデータを用いて,売上管理データを生成する。具体的には,売上管理データ生成部15は,レシート項目名称に一致する認識文字と,定義データに定義された対応する売上管理項目名称とに対応付けられる対応関係情報1022とを用いて,認識結果における金額項目の数値データを演算変換し,売上管理データを生成する。売上管理データは,店舗コード,売上管理項目および売上管理項目に対応する金額を含む。例えば,売上管理データ生成部15は,売上管理項目とレシート項目との対応関係情報1022に従って,店舗コードごとに,売上日付,売上管理項目No.1現金売上,No.2掛売上,No.3クレジット売上,...などの売上に関する項目に対応する金額に変換し,これらを売上管理データ記憶部103に記憶する。以下に,図4,図9,図10,図11および図14の処理フローチャートに従って,その他の図も用いながら,図1に示すレシートデータ認識装置1の詳細な機能について説明する。図4は,本発明の実施形態に係るレシートデータ認識装置1の処理フローチャートである。図4に従って,レシートデータ認識装置1が実行する処理について具体的に説明する。レシートデータ認識装置1が起動されて,本処理が開始される。読取機10にレシート挟持用シート20が入力されると,読取機10がレシート挟持用シート20を読み取り,読み取ったレシート挟持用シート20の画像データを,画像データ記憶部101に保存するステップS11。具体的に説明するために,図5~図7を用いて,レシートの画像データからOCR処理される文字列を説明する。図5は,読取機10により読み取られたレシート22bの画像の例を示している。読取機10により生成された画像データは,OCR処理による認識文字データを含む。読取機10は,レシート2222bの画像をOCR処理すると,認識文字データを生成し,画像データ読込部11に記憶する。認識文字データは,認識文字からなる文字列の文字数および文字列の座標,文字列を構成する文字の座標および辞書からの候補文字とされる認識文字リストを含む。OCR処理による認識文字の対象は,レシート22bに印刷されている文字列1,文字列2,...,文字列14,...等である。例えば,文字列14は,総売上である。図6は,OCR処理による認識文字データの一例を示す図である。特に,図6には,図5に示す文字列14総売上の認識文字データ110について示す。図6において,認識文字データ110は,文字列14総売上の文字数3,座標x,y-x’,y’を含む。また,認識文字データ110は,文字列14を構成する文字141総,142売および143上の3文字について,各々の座標を含む。例えば,文字141総の座標は,x1,y1-x’1,y’1であり,その他の文字についても,図示のとおりである。なお,x,y-x’,y’等は,図示の長方形枠の座標を表すものであり,紙面上から見てx,yが左上,x’,y’が右下に対応する座標である。例えば,左上が座標原点へ向かう方向であり,右下が原点座標から離れる方向である。座標原点は,例えばレシート挟持用シート20における画像の特定位置とされる。さらに,認識文字データ110は,文字141総,142売および143上の3文字の認識文字リストを含む。認識文字リストは,辞書からの候補文字とされる認識順位に応じて,その候補とされる認識文字と,その認識文字と読み取られた文字の相違度または一致度とが格納される。例えば,文字141総の認識文字リストでは,順位1が,認識文字総,相違度1311であり,順位2が,脆,相違度1581であり,その他の順位についても同様に示される。相違度は,例えば0に近い数値ほど,予め備えられた辞書図示しないの候補文字と一致する度合いが大きく,その値が大きいほど,辞書の候補文字と相違する度合いが大きいことを示す。文字142売および143上の認識文字リストについても,図6に示すとおりである。図7は,画像データ記憶部101に保存される認識文字テーブル1011の一例を示す図である。認識文字テーブル1011は,読み込まれた画像データごとに,認識文字データを格納するテーブルである。さらに,認識文字テーブル1011は,レシート22の認識された文字列ごとに,認識文字データを含む。認識文字データは,前述したとおりである。図7に示す認識文字テーブル1011は,図5で示す文字列1~14,...等の認識文字データを格納する。例えば,前述した文字列14総売上,文字列14を構成する文字141総,142売および143上が,認識文字テーブル1011に格納されている。その他の文字列についても同様に格納されている。なお,図7に示す認識文字テーブル1011における項目,設定等の定義は,図6の認識文字データのそれらと同様であるため,ここでは説明を省く。次に,画像データ読込部11が,画像データ記憶部101から画像データを読み込むと,店舗特定部12は,画像データからレシート挟持用シート20の識別コード21を判別し,判別した識別コード21から店舗コードを読み取るステップS12。具体的には,店舗特定部12は,例えばQRコード等を復号し,復号したデータから店舗コード,もしくは,店舗コードに対応付けられた識別番号などを特定する。なお,読取機10によりQRコードを復号し,店舗特定部12が復号したデータから店舗コードを特定してもよく,その特定方法は限定されない。次に,定義データ読込部13は,店舗特定部12により特定された店舗コードを受けると,店舗コードに対応付けられた定義データを,定義データ記憶部102から取得するステップS13。図8は,定義データテーブル1021を説明する図である。以下,図8を用いて,定義データ読込部13が取得する定義データの一例を説明する。図8に示すレシート22tは,ある店舗の定義データの作成のために用意されるレシート22基準レシートとするの画像の一部である。また,図8において,定義データテーブル1021は,予め作成された定義データを格納し,定義データ記憶部102に記憶されるデータである。なお,レシート22tには,行番号と,レシート項目名称と,金額とが表示されている。このレシート22tから,14行目BX14の現金売上金額と,18行目BX18のその他金券金額とが抽出対象のレシート項目であるとする。定義データテーブル1021では,抽出対象のレシート項目が,定義データとして登録される。定義データを予め作成するために,店舗ごとの基準とされる基準レシートレシート22tが用いられ,基準レシートをもとにして店舗ごとのレシート22に対する定義データが作成される。定義データテーブル1021には,対象の店舗コードと,抽出するレシート項目ごとに,読取項目,項目属性,読取文字および金額欄の読取位置とが格納される。店舗コードは,対象となるレシートの店舗に対応する店舗ごとの識別番号である。読取項目は,売上管理項目の名称である。項目属性は,読み取るべきレシート項目名称の属性である。その属性は,例えば1,2または3のいずれかの値である。1は売上管理項目に対応するレシート項目名称が基準レシートに重複していない通常の項目場合,2は重複している同一名称がありかつアンカー文字を設定する場合,3は重複している同一名称がありかつ複数キーワードを設定する場合の属性とされる。読取文字は,売上管理項目に対応する基準レシート上に印字されるレシート項目名称である。金額欄の読取位置は,読取文字からのレシート項目の金額数値文字,通貨記号などを含むの相対位置である。図8に示す基準レシートとされるレシート22tにおいて,画像位置BX14には,現金売上金額および139,639とされる文字列Str1およびDat1がある。また,文字列Str1と文字列Dat1との相対距離は,Dis1とする。画像位置BX18には,その他金券金額および8,000とされる文字列Str2およびDat2がある。また,文字列Str2と文字Dat2との相対距離は,Dis2とする。図8に示す定義データテーブル1021は,図8に示すレシート22tから作成される定義データを格納する。図8に示すように,定義データテーブル1021には,店舗コード:100001が,基準レシートの対象となる店舗コードとして設定される。読取項目1:現金売上は,売上管理項目No.1の項目名称現金売上が設定された結果である。項目属性1:1は,前述した通常の項目が設定された結果である。読取文字1:現金売上金額は,レシート22tの画像位置BX14における文字列Str1が設定された結果である。金額欄の読取位置1:x11,y11-x’11,y’11は,文字列Str1と文字列Dat1との相対距離Dis1として,文字列Str1の位置から文字列Dat1の位置の相対位置が設定された結果である。なお,相対位置として,図示された文字列Dat1の長方形枠の左上の座標x11,y11,同じく右下の座標x’11,y’11が格納されていることを示す。なお,これらの座標は,相対的な座標である。その他の定義データについても同様に格納されている。なお,図8に示す定義データテーブル1021におけるnは,複数の定義データの設定項目を区別するための識別子であり,nは1,2,...等の整数とする。以上説明した定義データテーブル1021は,レシートデータ抽出部141がレシートデータを抽出する際に,定義データ読込部13を介して参照される。レシートデータ抽出部141は,定義データテーブル1021に格納された定義データに基づき,読み込んだ画像データレシート22の認識文字について,レシート項目を抽出する。すなわち,レシートデータ抽出部141は,基準レシートの定義データにより,抽出すべきレシート項目を判断することができる。なお,実際には,精算レシートレシート22は,同じPOSシステムで印刷した場合であっても,その時々の出力により,途中のレシート項目の一部を飛ばして抜かして印刷する場合がある。従って,定義データテーブル1021における金額欄の読取位置を固定座標で作成すると,このような一部のレシート項目を飛ばして印刷する場合に対応できない。そのため,図8に示す定義データテーブル1021のように,レシート項目名称の文字列位置からの相対位置の座標位置を定義データとして用いることにより,このような一部のレシート項目を飛ばして印刷する場合に対応することができる。また,図8においては,レシート項目の項目名称とそれに対応する金額が,同じ行に印刷されている例で説明しているが,レシート項目の項目名称とそれに対応する金額が,異なる行であっても良い。その場合には,定義データにその異なる行の金額の相対位置などが登録される。次に,レシートデータ処理部14は,定義データ読込部13から店舗コードに対応付けられた定義データを受けると,レシートデータ処理を実行するステップS14。このレシートデータ処理の詳細なフローについては,図9を用いて後述する。レシートデータ処理部14によりレシートデータ処理された後に,売上管理データ生成部15は,処理されたレシートデータから売上管理データを生成する。売上管理データ生成部15は,生成した売上管理データを売上管理データ記憶部103に保存するステップS15。売上管理データを保存後,レシートデータ認識装置1は,本処理を終了する。なお,ステップS15の詳細な処理フローについては,図14を用いて後述する。以上説明した処理フローが,レシートデータ認識装置1が実行する処理全体のフローである。図9は,図4に示すステップS14におけるレシートデータ処理の詳細な処理フローチャートである。図9に従って,レシートデータ処理部14が実行するレシートデータ処理について具体的に説明する。レシートデータ抽出部141は,画像データの中からレシート22の対象とする行の項目名称のみを抽出するステップS21。具体的には,レシートデータ抽出部141は,画像データ読込部11から画像データ認識文字データを受けると,レシート22の1行目から項目名称のみを抽出する。例えば,図5の画像データである場合,レシート22bの文字列12010年10月10日日22:30No:0002が抽出され,文字列2,...,文字列7売計,文字列8297点,文字列9226,701,...等が抽出され,空行などは抽出されない。なお,このステップS21では,項目名称として,レシート項目名称,金額,記号例えばなども含めて抽出される。次に,レシートデータ抽出部141は,定義データテーブル1021に格納された定義データを参照するステップS22。具体的には,定義データ読込部13が,定義データ記憶部102に格納された定義データテーブル1021から店舗コードに対応する定義データを読み出す。定義データ読込部13は,読み出した定義データをレシートデータ抽出部141に送る。レシートデータ抽出部141は,ステップS23以降の処理において,定義データ読込部13から送られた定義データを用いる。なお,レシートデータ抽出部141は,定義データ読込部13から送られた定義データを,ワークメモリ図示しないに保存し,ワークメモリ上で定義データを参照する。次に,レシートデータ抽出部141は,抽出した項目名称が定義データに設定されているかをチェックするステップS23。具体的には,レシートデータ抽出部141は,図5に示す文字列14総売上について,定義データテーブル1021の読取文字nnは整数の中に一致するものがあるかをチェックする。次に,抽出した項目名称が定義データに設定されている場合ステップS23:Yes,同一名称判定部140は,読取り対象のレシート項目名称の項目属性を参照するステップS24。一方,抽出した項目名称が定義データに設定されていない場合ステップS23:No,ステップS28に処理を移す。次に,同一名称判定部140は,定義データに同一名称のレシート項目名称があると定義されているか否かチェックするステップS25。定義データに同一名称のレシート項目名称があると定義されている場合にステップS25:Yes,同一名称判定部140は,同一名称判定処理を実行するステップS26。一方,定義データに同一名称のレシート項目名称がないと定義されている場合にステップS25:No,同一名称判定部140は,ステップS27に処理を移す。図10および図11は,ステップS26における同一名称判定処理の詳細な処理フローチャートである。以下,図10および図11に従って,同一名称判定部140が実行する同一名称判定処理について具体的に説明する。アンカー文字検出部142は,定義データから,読取り対象のレシート項目名称の項目属性がアンカー文字か否か判定するステップS261。項目属性がアンカー文字である場合にステップS261:Yes,ステップS262に処理を移す。一方,項目属性がアンカー文字でない場合ステップS261:No,すなわち,項目属性が複数のキーワードである場合に,ステップS267に処理を移す。ステップS261から処理が移ると,アンカー文字検出部142は,レシート項目名称に一致する認識文字の位置データを取得するステップS262。具体的に説明するため,図12に,レシート22cと,それに対応するアンカー文字が設定された定義データテーブル1021cとの例を示す。なお,図12に示すレシート22cでは,例えばレシート項目名称総売上に一致する認識文字として,レシート22c上に文字列Str11,Str21,Str31がある場合を示している。また,その各々に対応する金額項目金額の文字列Dat11168,735,Dat2148,195およびDat3132,025とする。以下,図12を用いて,ステップS262~S266の処理を,具体例と共に説明する。図12に示す定義データテーブル1021cは,例えば店舗コード100001に対応する定義データが格納されたテーブルである。図12に示す定義データテーブル1021cにおいて,読取項目1:総売上は,売上管理項目No.5の項目名称であり,レシート22cのレシート項目名称総売上に対応する。そして,項目属性1:2は,読取項目の属性として,読取り対象のレシート項目名称に同一名称があり,アンカー文字が設定されていることを示す。読取文字1:総売上は,レシート22cのレシート項目名称総売上が読取文字として設定されている。金額欄の読取位置1は,x11,y11-x’11,y’11であり,レシート22c上では,例えば文字列Str11総売上から金額欄にある金額項目Dat11168,735までの相対距離を示す。また,図12に示す定義データテーブル1021cにおいて,アンカー文字は,レシート22c内の他のレシート項目名称であり,かつ,ユニークな文字である。例えば,アンカー文字貸在高は,読取文字1:総売上に関連付けられたユニークな文字である。アンカー文字の距離は,レシート22上のアンカー文字とされる文字列から,レシート22上のレシート項目名称に該当する読取文字1までのy座標を基準とする距離である。例えば,アンカー文字の距離100は,アンカー文字とされるレシート22c上の文字列Str41貸在高から,レシート22c上のレシート項目名称の文字列Str11総売上までのy座標を基準とする距離100であり,文字列Str11総売上が,文字列Str41貸在高よりも行の上端側にy座標の差として相対値100であることを意味する。例えば,前述のステップS262においては,アンカー文字検出部142は,図12に示すレシート22cの画像データから,レシート項目名称総売上に一致する認識文字として,文字列Str11,Str21,Str31の位置データを取得する。次に,アンカー文字検出部142は,画像データからアンカー文字に一致する認識文字の位置データを取得するステップS263。具体的には,アンカー文字検出部142は,画像データ読込部11を介して,画像データ記憶部101に格納されたレシート22cの画像データから,アンカー文字に一致する文字列Str41貸在高に該当する認識文字の位置データを取得する。次に,アンカー文字検出部142は,レシート項目名称に一致する認識文字の位置と,アンカー文字に一致する認識文字の位置とから,各々の距離を算出するステップS264。具体的には,図12に示すように,定義データテーブル1021cでは,金額欄の読取位置1は,x11,y11-x’11,y’11であり,レシート22c内の文字列Str11総売上から金額項目Dat11までの相対距離を示す。アンカー文字貸在高は,読取文字1総売上に関連付けられたユニークな文字である。アンカー文字の距離Ref1は,レシート22c上のレシート項目名称に該当する読取文字1までのy座標を基準とする距離である。例えば,アンカー文字の距離Ref1は,レシート22c上の文字列Str41貸在高から,レシート22c上の文字列Str11総売上までのy座標を基準とする距離100であるとする。すなわち,文字列Str11総売上が,文字列Str41貸在高よりも行の上端側にy座標の差として相対値100であることを意味する。その他の認識文字については,例えば,文字列Str21総売上とアンカー文字Str41貸在高と間の距離Ref2であり,文字列Str31総売上とアンカー文字Str41貸在高と間の距離Ref3である。距離Ref2およびRef3は,図12に示すように,文字列Str41貸在高の行よりも下端側のy座標である。次に,アンカー文字検出部142は,定義データに設定されたアンカー文字との距離と,算出した各々の距離とを比較し,差分が小さいものを該当する売上管理項目の対象となるレシート項目の項目名称と判定するステップS265。具体的には,図12に示すように,アンカー文字検出部142は,距離Ref2および距離Ref3については負の距離であり,100に近い値ではないと判断し,文字列Str21総売上およびStr31総売上は,読取文字1総売上の読取り対象でないと判断する。一方,アンカー文字検出部142は,距離Ref1が距離100に最も近い値であるため,文字列Str11総売上が,読取文字1総売上の読取り対象であると判断する。すなわち,アンカー文字検出部142は,アンカー文字Str41貸在高およびアンカー文字との距離100から,文字列Str11総売上が,読取り対象のレシート項目名称であることを検出する。次に,レシートデータ特定部144は,該当すると判定されたレシート項目名称の位置情報を用いて,画像データから金額項目を表す認識文字を抽出するステップS266。具体的には,レシートデータ特定部144は,アンカー文字検出部142により該当すると判定されたレシート項目名称の位置データと,定義データに設定されたそのレシート項目名称に対応する金額項目の相対位置データとから,画像データの中から金額項目を表す認識文字を抽出する。例えば,図12に示すように,定義データテーブル1021cでは,金額欄の読取位置1は,x11,y11-x’11,y’11であり,レシート22c内の文字列Str11総売上から金額項目Dat11までの相対距離を示す。レシートデータ特定部144は,この相対距離を,定義データテーブル1021cから取得する。また,レシートデータ特定部144は,文字列Str11総売上に対応する認識文字の位置データを,画像データ記憶部101に記憶されている画像データから取得する。これにより,レシートデータ特定部144は,この相対距離と,文字列Str11総売上に対応する認識文字の位置データとを用いて,画像データ記憶部101に記憶されている画像データから,文字列Str11総売上からの距離Dis11にある金額項目Dat11168,735を抽出する。この金額項目を表す認識文字を抽出後,本処理を終了する。すなわち,ステップS26ステップS261~S2610の処理が終了する。他方,ステップS261から処理が移ると,キーワード検出部143は,定義データの設定から複数のキーワードを取得するステップS267。具体的に説明するため,図13に,レシート22dと,それに対応する複数のキーワードが設定された定義データテーブル1021dとの例を示す。なお,図13に示すレシート22dでは,例えばレシート項目名称総売上に一致する認識文字として,レシート22d上に文字列Str12,Str22,Str32がある場合を示している。また,その各々に対応する金額項目金額の文字列Dat12168,735,Dat2248,195およびDat3232,025とする。以下,図13を用いて,ステップS268~S2610の処理を,具体例と共に説明する。例えば,キーワード検出部143は,図13に示すように,定義データテーブル1021dの項目属性1:3であることから,読取文字1:総売上,純売上,現金在高および貸在高を含む複数のキーワードKey1を取得する。次に,キーワード検出部143は,画像データの中で,複数のキーワードと一致する認識文字の一群を検索するステップS268。具体的には,キーワード検出部143は,画像データ読込部11を介して,画像データ記憶部101に格納されたレシート22dの画像データから,複数のキーワードKey1総売上,純売上,現金在高および貸在高に一致する認識文字の一群を検索する。キーワード検出部143は,検索したこれらの認識文字データを取得する。次に,キーワード検出部143は,検索した複数のキーワードと一致する認識文字の一群の中から,レシート項目名称に一致する認識文字を該当するレシート項目の項目名称であると判定するステップS269。具体的には,図13に示すように,キーワード検出部143は,文字列Str22総売上に一致する認識文字の位置データと,複数のキーワードKey1に含まれる認識文字の位置データとの関係から,文字列Str22総売上が複数のキーワードKey1と一群とされる行でないと判定する。同様に,文字列Str32総売上についても,一群とされる行でないと判定する。一方,キーワード検出部143は,文字列Str12総売上に一致する認識文字の位置データと,複数のキーワードKey1に含まれる認識文字の位置データとの関係から,文字列Str12総売上が複数のキーワードKey1の一群に含まれる行の位置にあると判定する。すなわち,キーワード検出部143は,複数のキーワードKey1総売上,純売上,現金在高および貸在高から,文字列Str12総売上が,読取り対象のレシート項目の項目名称であることを検出する。なお,図13に示すレシート22dでは,複数のキーワードKey1の一群のキーワード間に,空行がない場合を示したが,一群のキーワード間に空行やレシート項目名称の存在しない行等を含んでもよい。その場合には,空行やレシート項目名称の存在しない印字されない行等を除いて,複数のキーワードKey1を一群のキーワードと見なしてもよい。また,図13に示す定義データテーブル1021dでは,読取り文字1:総売上を上段の行に位置するものとして,複数のキーワードの一群を設定する例を示したが,複数のキーワードの一群の中で上から2段目の行であってもよく,その他の行であってもよい。その場合には,複数のキーワードの中のいずれの項目名称が売上管理項目に対応する項目名称かの情報を有すればよい。次に,レシートデータ特定部144は,該当すると判定されたレシート項目名称の位置情報を用いて,画像データから金額項目を表す認識文字を抽出するステップS2610。具体的には,レシートデータ特定部144は,キーワード検出部143により該当すると判定したレシート項目名称の位置データと,定義データに設定されたそのレシート項目名称に対応する金額項目の相対位置データとから,画像データの中から金額項目を表す認識文字を抽出する。例えば,図13に示すように,定義データテーブル1021dでは,金額欄の読取位置1は,x11,y11-x’11,y’11であり,レシート22d内の文字列Str12総売上から金額項目Dat12までの相対距離を示す。レシートデータ特定部144は,この相対距離を,定義データテーブル1021dから取得する。また,レシートデータ特定部144は,文字列Str12総売上に対応する認識文字の位置データを,画像データ記憶部101に記憶されている画像データから取得する。これにより,レシートデータ特定部144は,この相対距離と,文字列Str12総売上に対応する認識文字の位置データとを用いて,画像データ記憶部101に記憶されている画像データから,文字列Str12総売上からの距離Dis12にある金額項目Dat12168,735を抽出する。この金額項目を表す認識文字を抽出後,本処理を終了する。すなわち,ステップS26ステップS261~S2610の処理が終了する。次に,レシートデータ抽出部141は,レシート項目の最終行の処理が終了したかを判断するステップS28。レシート項目の最終行の処理が終了していない場合ステップS28:No,ステップS21に処理を戻し,次のレシート項目の行からのステップS21~S27の処理を繰り返す。一方,レシート項目の最終行の処理が終了した場合ステップS28:Yes,本処理を終了する。以上の同一名称判定処理などにより,図12または図13に示すように,レシートデータ特定部144は,例えばレシート項目名称総売上に対応する金額項目168,735を特定することができる。以上のように,レシートデータ処理部14は,登録された定義データを用いて,レシート画像から読み取ったレシート項目の認識文字に対して,必要なレシートデータを抽出することができる。また,レシートデータ処理部14は,売上管理データに必要なレシートデータを抽出することができ,抽出したレシートデータのレシート項目名称および金額を,予め定めた対応関係で売上管理項目の売上管理データに変換集計することができる。以上説明したレシートデータ認識処理によって,レシート22内に読取り対象となるレシート項目の項目名称と同一名称が存在する場合であっても,定義データを用いて,項目名称に関連付けられたユニークなアンカー文字,または,複数のキーワードを検索することにより,売上管理項目に必要なレシート項目の項目名称および対応する金額項目を正確に抽出することができる。これにより,売上管理データを正確に集計することができる。図14は,ステップS15における売上管理データ生成処理の詳細な処理フローチャートを示す。図14に従って,売上管理データ生成部15が実行する売上管理データ生成処理について具体的に説明する。売上管理データ生成部15は,レシートデータ特定部144から売上集計に必要となるレシートデータを取得するステップS31。具体的には,売上管理データ生成部15は,店舗コードと,認識文字データから特定したレシート項目名称およびその金額を含むデータと,図3に示す対応関係情報10221022aとを含むレシートデータを,レシートデータ特定部144から取得する。次に,売上管理データ生成部15は,対応関係情報10221022aを用いて,売上管理項目の売上管理データを集計するステップS32。具体的には,売上管理データ生成部15は,対応関係情報10221022aから売上管理項目とレシート項目の対応関係に基づいて,レシート項目名称に対応する金額を,売上管理項目の売上管理データとして集計する。以上により,レシート項目の金額数値データが,売上管理項目の数値データに変換される。次に,売上管理データ生成部15は,保存対象となる店舗コードの売上管理データを,売上管理データ記憶部103の売上管理DB1031に保存するステップS33。例えば,図15に,売上管理DBデータベース1031の例を示す。売上管理DB1031には,図15に示すように,店舗コードごとに,売上日付,売上管理項目No.1現金売上,No.2掛売上,No.3クレジット売上,...などの売上に関する精算項目に対応する数値金額が格納される。以上により,売上管理DB1031には,店舗ごとにまったく異なるフォーマットシート形式であったレシート22のレシート項目が一元化され,各テナントの店舗により出力されたレシートで統一の取れないレシート項目,名称,数値などが,統一性のとれた売上管理項目による売上管理データとして,手入力による作業なしに自動的に収集できるようになる。これにより,テナント管理部門の業務担当者は,自動的に店舗ごとの売上を集計することができるため,店舗の売上管理業務を効率よく,スピーディに行うことができる。また,各店舗に備えられたキャッシュレジスタなどのレシート出力装置を変更する必要がないため,テナント側にとっては余計な出費を抑えることができる。以上のレシートデータ認識装置が行う処理は,コンピュータとソフトウェアプログラムとによって実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも,ネットワークを通して提供することも可能である。"