(57)【特許請求の範囲】
【請求項１】
複数の店舗がそれぞれ発行したレシートの画像を認識することにより，レシートに印字された前記店舗ごとに異なることがあるレシート項目と該レシート項目に対応する金額の情報を取得し，取得した情報をもとに各店舗に共通な特定の基本管理項目と該基本管理項目に対応する金額の情報を含む基本管理データを収集するレシート認識システムが各店舗ごとのレシートの認識に用いるレシート定義データを作成するレシート定義データ作成装置であって，
レシート定義データの作成対象となる店舗が発行したレシートのイメージデータを含む画像データを記憶する画像データ記憶手段と，
あらかじめ定められた前記基本管理項目の情報を記憶する基本データ記憶手段と，
前記基本データ記憶手段に記憶された基本管理項目の情報の表示と前記画像データ記憶手段に記憶されたレシートのイメージデータの表示とを含む定義入力画面を表示する定義入力画面表示手段と，
前記定義入力画面に表示されたイメージデータにおいて操作員に選択されたレシート項目と，該レシート項目に対応する金額の位置の入力を受け付けるとともに，前記レシート項目と前記定義入力画面に表示された前記基本管理項目との対応情報の入力を受け付ける入力データ処理手段と，
前記入力データ処理手段が受け付けた情報をもとに，前記レシート項目，および前記イメージデータにおける前記レシート項目に対応する金額の位置，および前記レシート項目と前記基本管理項目との対応情報を含むレシート定義データを作成する定義データ作成手段と，
作成されたレシート定義データを記憶する定義データ記憶手段とを備える
ことを特徴とするレシート定義データ作成装置。
【請求項２】
請求項１記載のレシート定義データ作成装置において，
前記定義入力画面は，前記レシート項目に対する演算式を操作員に入力させるための演算式入力用領域を有し，
前記入力データ処理手段は，前記定義入力画面の演算式入力用領域に入力された前記レシート項目の演算式に従って一つまたは複数の前記レシート項目を一つの前記基本管理項目に対応づける対応情報を作成する手段を有する
ことを特徴とするレシート定義データ作成装置。
【請求項３】
請求項１または請求項２記載のレシート定義データ作成装置において，
前記入力データ処理手段は，前記定義入力画面に表示されるイメージデータのレシート内に前記レシート項目と同一名称の他のレシート項目が存在するかどうかを調べ，存在する場合に，前記基本管理項目に対応づけるべき前記レシート項目の位置を特定するための，他の名称のレシート項目を含む複数のレシート項目またはレシート内においてユニークな名称の他のレシート項目を前記定義入力画面を介して入力させる手段を有し，
前記定義データ作成手段は，前記基本管理項目に対応づけるべき前記レシート項目の位置を特定するための，他の名称のレシート項目を含む複数のレシート項目またはレシート内においてユニークな名称の他のレシート項目の情報を含むレシート定義データを作成する手段を有する
ことを特徴とするレシート定義データ作成装置。
【請求項４】
請求項１から請求項３までのいずれか１項に記載のレシート定義データ作成装置において，
前記入力データ処理手段は，前記定義入力画面に表示されたレシートのイメージデータにおいて操作員がレシート項目または該レシート項目に対応する金額の位置を指定する操作の入力を受け付け，前記イメージデータにおける該当するレシート項目の文字列が印字された領域または金額の文字列が印字された領域を定め，その領域を囲む枠線を表示またはその領域内の文字列を強調表示する手段を有する
ことを特徴とするレシート定義データ作成装置。
【請求項５】
請求項１から請求項４までのいずれか１項に記載のレシート定義データ作成装置において，
前記画像データ記憶手段は，前記レシート定義データの作成対象となる店舗が発行したレシートに印字された文字を認識した結果の文字認識精度の情報をさらに記憶しており，
前記入力データ処理手段は，入力された前記レシート項目の文字に対する文字認識精度が所定値以下であった場合に，前記レシート項目に代替する代替項目の指定を操作員に促すメッセージを出力し，操作員が指定した代替項目の入力を受け付ける手段を有し，
前記定義データ作成手段は，前記レシート項目に加えて前記代替項目の情報と，前記レシート項目に対応する金額の位置を前記イメージデータ内における前記代替項目からの相対距離で示す情報を含むレシート定義データを作成する手段を有する
ことを特徴とするレシート定義データ作成装置。
【請求項６】
請求項１から請求項５までのいずれか１項に記載のレシート定義データ作成装置において，
前記入力データ処理手段は，前記作成されたレシート定義データまたはその履歴データから抽出したデータを，前記定義入力画面に表示し，他のレシート定義データの作成時に操作員に参照させる手段を有する
ことを特徴とするレシート定義データ作成装置。
【請求項７】
コンピュータを，
請求項１から請求項６までのいずれか１項に記載のレシート定義データ作成装置が備える，前記画像データ記憶手段と，前記基本データ記憶手段と，前記定義入力画面表示手段と，前記入力データ処理手段と，前記定義データ作成手段と，前記定義データ記憶手段，
として機能させるためのレシート定義データ作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，レシート定義データ作成装置およびそのプログラムに関し，特に，例えばショッピングモールなどの複数の店舗の売上を管理するために，文字認識により読み取ったレシートデータから必要なデータを正確に抽出するときに必要となる定義データの作成を支援する技術に関するものである。
【背景技術】
【０００２】
ショッピングセンター，ショッピングモール等に出店するテナント（店舗を運営する会社など）の店舗を管理するテナント管理部門では，各店舗の一日の売上を収集し，現金売上，クーポン売上，…といった売上内訳（売上管理項目）を作成している。この売上内訳作成の際には，各店舗から提供される精算レシートが集められて，売上管理項目の数値を算出することが行われる。しかし，各店舗から提供される精算レシートの形式は，店舗ごとに導入されているＰＯＳシステムに依存するため，さまざまな形式で作成されているのが現状である。そのため，テナント管理部門が処理する精算レシートは，項目の種類，項目名，印字サイズ，印字字体などにおいて多種多様である。
【０００３】
例えば，精算レシートの項目の名称について，売上合計，売上計，合計売上，総売上，…等は，同等の内容を示すものであっても，ＰＯＳシステムによって異なる名称が印字されている。また，出店するテナントの店舗の入れ替えなどが頻繁に行われるため，新たな精算レシートの形式にも対応しなければならない。そのため，テナント管理部門では，精算レシートを統一された売上管理データとして集計する売上集計作業に莫大な労力を要し，そのための人的および時間的負担に多大なコストを要しているのが現状である。
【０００４】
なお，特許文献１には，レシート処理装置が開示されている。このレシート処理装置では，レシートの画像から文字を認識してテキストデータを生成し，テキストデータから所定の文字列を選択し，選択された所定の文字列が含まれる行位置を検出する。そして，検出された行位置に基づいて定まるテキストデータ上の所定の行範囲から行を単位とするラインデータを順に選択し，ラインデータから品目に関わるデータを抽出する。
【０００５】
また，特許文献２には，罫線がない不定型帳票を含む任意の帳票に対して，人手を介入することなく，自動的に帳票定義を作成する技術が開示されている。この技術では，レシートを画像として読み込み，印紙されている項目を表領域として切り出し，表領域ごとにｘ座標，ｙ座標を算出し，ｘ座標の度数分布表を作成する。それから位置揃えを判定して，商品欄，個数欄，価格欄を決定することにより，帳票定義を作成する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−１６４２１８号公報
【特許文献２】特開２００６−１７８８０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述したような，ショッピングセンター等の各店舗から提供される精算レシート（以下，レシートという）を集計するために，ショッピングセンター等を運営する会社（組織）のテナント管理部門では，従来，事務員が目視でレシートを読み取り，読み取ったデータを手作業でデータ処理装置に入力していた。この売上集計作業の作業量は，店舗数が１００店舗以上に及ぶこともあり，しかも毎日行わなければならない作業であるため，非常に負担が大きいものであった。
【０００８】
この負担を軽減するための一案としては，各店舗の売上データ（レシートデータ）を，各店舗の端末からネットワークを介して自動収集することが考えられる。しかし，一般に各店舗は企業体が異なるため，個々にネットワーク開設の許諾を得る必要があり，さらに導入されているシステムによって接続するネットワークの種類やアプリケーションの追加・修正の難易度が異なるなど，解決が困難な問題が存在する。
【０００９】
既存のシステムの変更，特に各店舗における端末などの情報機器の変更をできるだけ行わないで，前述した作業負担を軽減する他の案としては，レシートデータを人間が読み取るのではなく，文字画像の認識によって読み取る方法が考えられる。すなわち，各店舗のレシートを，例えばＯＣＲ（Optical Character Recognition ）機能を有する読取装置，スキャナー等で読み取り，読み取ったレシート項目とその数値データについて売上管理項目に必要なものを抽出し，売上管理データに入力し直す方法である。
【００１０】
このように，レシートの文字画像を認識して，売上管理データを自動で作成する場合，売上管理データとして必要な売上管理項目とレシートの読取項目とがどのように対応しているかの対応情報，また，レシートの読取項目の文字列（項目名称）およびその読取項目に対応する金額欄の画像上の位置情報を，レシート定義データとして事前に用意する必要がある。
【００１１】
このレシート定義データを一度作成して，レシート認識装置に登録すれば，ＯＣＲ機能を有する読取装置等によりレシート画像を読み取り，その読み取ったレシート画像から売上管理データの作成に必要なレシート項目を抽出し，毎日の売上管理データをある程度自動で収集することができると考えられる。
【００１２】
問題は，このレシート定義データをどのような方法により作成するかである。まず，人手により，レシート定義データを一つずつ入力することが考えられるが，大規模ショッピングモール等では，店舗数が１００店舗以上にもなることがざらであり，レシート定義データを人手により入力するのは大変な作業量となる。さらに，ショッピングモール等では，出店する店舗の入れ替えが頻繁にあり，新しい店舗が加入する都度，新しいレシート定義データを人手により入力するのは，煩雑な作業となる。
【００１３】
そこで，レシート定義データをできるだけ簡単に作成することができるコンピュータによる支援技術が望まれるが，特許文献２のレシート画像から自動的に帳票定義を作成する技術は，本発明が対象とするようなケースでは不十分であり，次の理由により用いることができない。
【００１４】
（１）特許文献２では，テナント部門が必要とする各店舗の売上の管理に共通する特定の売上管理項目群からなる売上管理データがまったく考慮されていない。
【００１５】
（２）また，特許文献２の技術では，個々のレシートごとの項目定義情報の作成は可能であるが，レシートに印字されている全ての項目を対象としており，必要な項目だけを選択することはできない。
【００１６】
（３）また，特にテナント管理部門が必要とする売上管理項目は，各店舗のレシートに印字されたレシート項目の項目名称と一致するとは限らず，また，必ずしも売上管理項目とレシート項目とが，一対一に対応しているとは限らない。
【００１７】
図２７は，売上管理項目とレシート項目との対応関係の例を示す図である。
【００１８】
テナント管理部門が必要とする売上管理項目は，例えば図２７（Ａ）に示すように，「現金売上」，「掛売上」，「クレジット売上」，……，「純売上」というような，各店舗に共通の統一された項目である。図２７（Ｂ）に示すレシートでは，第１４行目の「現金売上金額」が，第１番目の売上管理項目「現金売上」に対応しており，第２番目の売上管理項目「掛売上」に対応するレシート項目はなく，第１８行目の「その他金券金額」が，第３番目の売上管理項目「クレジット売上」に対応している。
【００１９】
一方，図示省略するが，他の店舗のレシートでは，例えばレシート項目「日報上現金有高」とレシート項目「感謝カード」の金額を加算したものが，第１番目の売上管理項目「現金売上」に対応しており，レシート項目「日報上掛売上」が，第２番目の売上管理項目「掛売上」に対応しており，…というように，各売上管理項目とレシート項目との対応関係が店舗ごとに全く異なる。
【００２０】
本発明は，このような背景において，売上管理データをレシートの認識により収集するためのレシート定義データを簡易に作成するための手段を提供することを目的とする。すなわち，本発明は，ショッピングモール等の複数の店舗から出力される形式の異なるレシートを読み込み，必要な売上管理項目だけを正確かつ効率的に取得するためのレシート定義データを簡易に効率よく作成する手段を提供することを目的としている。
【課題を解決するための手段】
【００２１】
上記課題を解決するための本発明の概要は，以下のとおりである。なお，以下ではレシートから収集する各店舗に共通な特定の基本管理項目として，売上管理項目を用いる場合を例に説明する。
（１）売上管理データを収集するためのレシート定義データの作成対象となる店舗が発行したレシートを画像として読み込み，画面上に表示し，画面操作によりレシート定義データを作成する。
（２）このとき，あらかじめ定められた必要な売上管理項目（精算項目ともいう）を画面に表示し，その項目ごとにレシートのイメージデータ上で対応する読取項目（レシート項目ともいう）を，マウス等の入力装置によるポイント操作またはドラッグ操作等により選択させ，位置情報を取得してレシート定義データを作成する。なお，マウス等でドラッグする場合には，厳密である必要はなく，該当する項目上のどこかにあればよい。例えば，ドラッグされた位置をシステム側で判断して，選択された項目を囲む枠線を自動的に表示し，操作員が正しく指定されたことが確認できるようにする。
（３）選択した項目を読取項目として表示するので，操作員は確認しながら作業ができる。
（４）選択した読取項目は，例えば四則演算の指定により，他の読取項目との演算を可能にする。演算式が指定された場合のその演算式をレシート定義データ内に設定することにより，一つの売上管理項目に複数の読取項目を対応づけることができる。
（５）また，レシート内において，選択した項目と同一名称の項目の存在をチェックする。同一名称の複数の項目が存在する場合，読取項目として特定するための複数のキーワードやマーカー項目（必要な項目位置の基準を定める項目）の設定を促す。
（６）また，読取項目がＯＣＲ認識困難（文字の潰れ，文字接触，罫線接触など）と想定される場合に，読取項目に代替するレシート項目を代替項目として定義し，代替項目からの相対位置の金額を認識できるようにする。
（７）また，例えば店舗情報を参照することにより，類似する業務のレシート定義データが既に存在する場合，その既存のレシート定義データを利用して，新しいレシート定義データを作成することを可能とする。
【００２２】
詳しくは，本発明は，複数の店舗がそれぞれ発行したレシートの画像を認識することにより，レシートに印字された前記店舗ごとに異なることがあるレシート項目と該レシート項目に対応する金額の情報を取得し，取得した情報をもとに各店舗に共通な特定の基本管理項目と該基本管理項目に対応する金額の情報を含む基本管理データを収集するレシート認識システムが各店舗ごとのレシートの認識に用いるレシート定義データを作成するレシート定義データ作成装置であって，レシート定義データの作成対象となる店舗が発行したレシートのイメージデータを含む画像データを記憶する画像データ記憶手段と，あらかじめ定められた前記基本管理項目の情報を記憶する基本データ記憶手段と，前記基本データ記憶手段に記憶された基本管理項目の情報の表示と前記画像データ記憶手段に記憶されたレシートのイメージデータの表示とを含む定義入力画面を表示する定義入力画面表示手段と，前記定義入力画面に表示されたイメージデータにおいて操作員に選択されたレシート項目と，該レシート項目に対応する金額の位置の入力を受け付けるとともに，前記レシート項目と前記定義入力画面に表示された前記基本管理項目との対応情報の入力を受け付ける入力データ処理手段と，前記入力データ処理手段が受け付けた情報をもとに，前記レシート項目，および前記イメージデータにおける前記レシート項目に対応する金額の位置，および前記レシート項目と前記基本管理項目との対応情報を含むレシート定義データを作成する定義データ作成手段と，作成されたレシート定義データを記憶する定義データ記憶手段とを備えることを特徴とする。
【００２３】
また，本発明の一態様においては，さらに，前記定義入力画面は，前記レシート項目に対する演算式を操作員に入力させるための演算式入力用領域を有し，前記入力データ処理手段は，前記定義入力画面の演算式入力用領域に入力された前記レシート項目の演算式に従って一つまたは複数の前記レシート項目を一つの前記基本管理項目に対応づける対応情報を作成する手段を有することを特徴とする。
【００２４】
また，本発明の他の一態様においては，前記入力データ処理手段は，前記定義入力画面に表示されるイメージデータのレシート内に前記レシート項目と同一名称の他のレシート項目が存在するかどうかを調べ，存在する場合に，前記基本管理項目に対応づけるべき前記レシート項目の位置を特定するための，他の名称のレシート項目を含む複数のレシート項目またはレシート内においてユニークな名称の他のレシート項目を前記定義入力画面を介して入力させる手段を有し，前記定義データ作成手段は，前記基本管理項目に対応づけるべき前記レシート項目の位置を特定するための，他の名称のレシート項目を含む複数のレシート項目またはレシート内においてユニークな名称の他のレシート項目の情報を含むレシート定義データを作成する手段を有することを特徴とする。
【００２５】
また，本発明の他の一態様においては，前記入力データ処理手段は，前記定義入力画面に表示されたレシートのイメージデータにおいて操作員がレシート項目または該レシート項目に対応する金額の位置を指定する操作の入力を受け付け，前記イメージデータにおける該当するレシート項目の文字列が印字された領域または金額の文字列が印字された領域を定め，その領域を囲む枠線を表示またはその領域内の文字列を強調表示する手段を有することを特徴とする。
【００２６】
また，本発明の他の一態様においては，前記画像データ記憶手段は，前記レシート定義データの作成対象となる店舗が発行したレシートに印字された文字を認識した結果の文字認識精度の情報をさらに記憶しており，前記入力データ処理手段は，入力された前記レシート項目の文字に対する文字認識精度が所定値以下であった場合に，前記レシート項目に代替する代替項目の指定を操作員に促すメッセージを出力し，操作員が指定した代替項目の入力を受け付ける手段を有し，前記定義データ作成手段は，前記レシート項目に加えて前記代替項目の情報と，前記レシート項目に対応する金額の位置を前記イメージデータ内における前記代替項目からの相対距離で示す情報を含むレシート定義データを作成する手段を有することを特徴とする。
【００２７】
また，本発明の他の一態様においては，前記入力データ処理手段は，前記作成されたレシート定義データまたはその履歴データから抽出したデータを，前記定義入力画面に表示し，他のレシート定義データの作成時に操作員に参照させる手段を有することを特徴とする。
【００２８】
以上により作成されるレシート定義データは，以下のデータを含む。
（１）基本管理項目とレシート内の読取項目との対応情報。すなわち，基本管理項目として計上する金額は，レシート内のどの読取項目に対する金額であるかを示す情報。
（２）レシート内の読取項目の文字列と，それに対応する金額欄の相対的な位置情報。
（３）基本管理項目の金額が，複数の読取項目の金額の四則演算によって算出される場合には，その演算式を示す情報。
（４）その他，レシート内に必要な読取項目と同一名称（同じ文字列）の項目が複数あった場合に，必要な読取項目を特定するための複数キーワードやマーカー項目などの文字情報および読取文字との位置関係を示す情報。
【発明の効果】
【００２９】
本発明の効果は以下のとおりである。
（１）レシートから基本管理項目に必要な読取項目を抽出する場合，どの基本管理項目にどの読取項目が対応するかを示すレシート定義データを，実際のレシートを用いて簡易に作成することができる。特に，操作員は，選択した読取項目を画面上で確認しながら，入力ミスを防いで容易に入力作業をすることができる。
（２）レシート定義データ中に読取項目の演算式を設定することができるので，一つの基本管理項目の金額を，複数の読取項目に対応する金額から算出することができ，レシート項目の内容が個々の店舗によって種々異なる場合でも，統一した基本管理項目のデータを収集することができる。
（３）レシートから基本管理項目に必要な読取項目について項目名称に同一の名称が複数存在する場合に，選択する読取項目を特定するための複数のキーワードとなる項目名称や読取項目に対する位置関係を特定する他のユニークな項目名称を持つマーカー項目の情報をレシート定義データに設定することができる。これにより，基本管理データの収集時におけるレシートデータの抽出の誤認識を回避することができる。
（４）画面上で基本管理項目に対応する読取項目を簡単な操作で選択することができ，また，指定された領域の自動調整機能を有することにより，その入力および確認が容易であり，効率よくレシート定義データを作成することができる。
（５）また，レシートの印字における文字の潰れ，文字接触，罫線接触などにより，読取項目についてＯＣＲ認識困難な場合があっても，レシート内の他の項目を読取項目の代替項目として定義できるので，読取精度のよいレシート定義データの作成が可能になる。
（６）また，同様な業務内容の店舗の新しいレシート定義データを作成する場合に，既存のレシート定義データを流用して，異なる読取項目の部分だけの入力でレシート定義データを作成することができるため，迅速にレシート定義データを作成することができる。
【００３０】
本発明によって作成されたレシート定義データを用いることにより，レシートの読取項目が異なる各種店舗のレシートデータから，テナントの管理部門が必要とする基本的なデータを統一的に収集し，売上管理データベースなどの基本データ管理データベースに保存することができるようになる。
【図面の簡単な説明】
【００３１】
【図１】レシート定義データ作成装置の構成例を示すブロック図である。
【図２】レシート定義データ作成装置の処理の概要を示すフローチャートである。
【図３】読取機によって読み取られるレシートの例を示す図である。
【図４】画像データ記憶部に格納される画像データの例を示す図である。
【図５】基本データ記憶部に格納される基本テーブルの例を示す図である。
【図６】店舗マスタの例を示す図である。
【図７】通常のレシート定義データ例を示す図である。
【図８】レシート内に同一名称の読取項目が複数存在する場合のレシート定義データの例を示す図である。
【図９】演算式を定義するレシート定義データの例を示す図である。
【図１０】履歴データ記憶部に格納される履歴データの例を示す図である。
【図１１】履歴データの辞書部の例を示す図である。
【図１２】レシート定義データ作成処理の全体のフローチャートである。
【図１３】レシート定義データ作成処理の全体のフローチャートである。
【図１４】レシート定義データ作成処理の全体のフローチャートである。
【図１５】定義入力画面の構成例を示す図である。
【図１６】売上管理項目一覧とＯＣＲ読取定義一覧の例を示す図である。
【図１７】読取項目の設定方法の例を示す図である。
【図１８】演算定義処理の詳細を示すフローチャートである。
【図１９】演算定義の例を示す図である。
【図２０】ある店舗のレシートと売上管理項目との対応関係が計算式によって定義されている例を示す図である。
【図２１】同一文字列処理の詳細を示すフローチャートである。
【図２２】マーカー項目の定義例を示す図である。
【図２３】複数キーワードの設定例を示す図である。
【図２４】代替項目の設定例を示す図である。
【図２５】類似データの有無を判断する処理の詳細を示すフローチャートである。
【図２６】履歴データ作成処理の詳細を示すフローチャートである。
【図２７】売上管理項目とレシート項目との対応関係の例を示す図である。
【発明を実施するための形態】
【００３２】
以下，図面を用いながら，本発明の実施の形態について詳細に説明する。なお，以下では，主に店舗売上を集計する装置の例について説明するが，本発明は売上集計に限られるわけではなく，仕入集計データやその他の伝票などに印字された実績データを集計するための装置などにも同様に適用することができる。
【００３３】
図１は，本発明の概要を説明するための装置構成例を示す。図１において，１はＣＰＵおよびハードディスクやメモリ等の記憶装置等から構成され，レシートから読み取った画像データをもとに，レシート定義データを作成する処理を実行するレシート定義データ作成装置，２はレシート定義データの作成対象となるレシート，３は表示装置，４はキーボードやマウス等の入力装置である。
【００３４】
レシート２は，透明なキャリアシート等に挟まれた状態で読取機１０に読み取られる。読取機１０は，光学方式などによる画像のスキャンニングにより，レシート２の画像を読み取る装置である。画像データ読込部１１は，周知のＯＣＲ処理機能を持ち，読取機１０により読み取った画像を所定の画像データに変換する。なお，読取機１０がＯＣＲ処理機能を有する場合には，画像データ読込部１１は，ＯＣＲ処理機能を持たなくてもよい。画像データは，例えばイメージデータが格納された画像ファイル，ＯＣＲによる認識文字データを含む。画像データ読込部１１は，ＯＣＲ処理結果の画像データを画像データ記憶部１０１に保存する。
【００３５】
定義入力画面表示部１２は，店舗マスタ１０３を参照し，指定された店舗のレシート定義データを作成するために，基本データ記憶部１０２に格納されている基本的な売上管理項目の情報と，画像データ記憶部１０１に格納されているレシートのイメージデータを含む画像データの表示領域を有する定義入力画面を，表示装置３に表示する。
【００３６】
入力データ処理部１３は，表示された定義入力画面から，レシートの読取項目と，イメージデータにおける読取項目に対応する金額欄の位置情報と，読取項目と売上管理項目との対応情報とを入力する。このため，入力データ処理部１３は，イメージデータにおける読取項目の位置の座標およびそれに対応する金額欄の位置の座標を入力装置４から取得する座標取得部１３１，複数の読取項目を一つの売上管理項目に対応づける演算式を定義する演算定義部１３２を備える。
【００３７】
また，入力データ処理部１３は，レシート内に読取項目と同一名称の他の項目が存在する場合に，読取項目を特定する基準となる複数キーワードを定義入力画面から入力して設定する複数キーワード設定部１３３および読取項目を特定する基準となる他のユニークな読取項目を定めるマーカー項目設定部１３４を備える。さらに，入力データ処理部１３は，入力した読取項目について認識エラーがあった場合や文字認識精度が悪い場合に，読取項目に代替する他のレシート項目を代替項目として操作員に指定させて代替項目を入力する代替項目処理部１３５を備える。
【００３８】
定義データ作成部１４は，入力データ処理部１３によって入力した情報をもとに，店舗ごとのレシート定義データを作成し，定義データ記憶部１０４に格納する。作成されるレシート定義データの具体例については後述する。レシート定義データは，レシートの読取項目における項目名称とそれに対応する金額項目の相対位置（相対的な金額欄の位置）などの情報を含むとともに，売上管理項目との対応関係情報を含んでいる。
【００３９】
履歴データ作成部１５は，定義データ作成部１４によって作成されたレシート定義データの履歴データを作成し，履歴データ記憶部１０５に格納する。この履歴データは，類似する他のレシートのレシート定義データを作成するときに参照して利用することができる。
【００４０】
図２は，図１に示すレシート定義データ作成装置１の処理の概要を示すフローチャートである。
【００４１】
ステップＳ１１では，画像データ読込部１１が，読取機１０により精算レシートを読み取る。精算レシートは，各店舗における１日分の売上情報の集計データであり，レシート項目は各店舗が使用しているＰＯＳシステムによって異なっている。画像データ読込部１１は，文字認識などによって得られた項目明細やレシートの全体イメージのデータを画像データ記憶部１０１に格納する。
【００４２】
ステップＳ１２では，定義入力画面表示部１２が，画像データ記憶部１０１，基本データ記憶部１０２，店舗マスタ１０３のデータから定義入力画面を作成し，表示装置３に表示する。定義入力画面には，レシートの全体イメージの表示も行われる。
【００４３】
ステップＳ１３では，入力データ処理部１３が，定義入力画面からの入力により，精算レシートの項目について，読取項目および演算式などを設定し，読取項目と売上管理項目との対応関係，読取項目とその読取項目に対応する金額欄の位置関係を定める。
【００４４】
ステップＳ１４では，定義データ作成部１４が，入力データ処理部１３により入力した情報をもとに，レシート定義データを作成し，定義データ記憶部１０４に格納する。
【００４５】
ステップＳ１５では，履歴データ作成部１５が，作成したレシート定義データについての履歴データを作成し，履歴データ記憶部１０５に保存する。
【００４６】
以上，レシート定義データ作成装置１が実行する大まかな処理を説明したが，以下では，具体的な処理内容やデータ構造について詳しく説明する。
【００４７】
図３は，読取機１０によって読み取られるレシート２の例を示す図である。読取機１０が図３に示すようなレシート２を読み取ると，読取機１０または画像データ読込部１１のＯＣＲ処理により，画像の解析による文字認識が行われる。この文字認識では，図３に示すレシート２における文字列＃１，＃２，…，＃１４，…のように，一連の文字列ごとに，文字列を構成する各認識文字の候補とその位置情報とが画像データとして抽出され，画像データ記憶部１０１に格納される。
【００４８】
図４は，画像データ記憶部１０１に格納される画像データの例を示す図である。画像データ記憶部１０１には，図４（Ａ）に示すように，レシート画像のイメージデータに関するデータと，図４（Ｂ）に示すように，レシートの文字認識結果のデータ（以下，認識文字データという）とが格納される。
【００４９】
レシート画像のイメージデータは，例えばレシート全体またはレシートにおける文字が印字された部分全体の矩形領域の画像イメージがビットマップ形式の画像ファイルとして格納され，また，このレシート２を発行した店舗を識別する店舗コードが付与される。この店舗コードは，入力装置４から事前に入力してもよいし，また，レシート２を読取機１０に読み取らせるときのレシート挟持用シート（キャリアシート）に付与された各店舗識別用の２次元コード等を解析して入力するようにしてもよい。
【００５０】
図４（Ｂ）に示す認識文字データは，一連の文字列＃ｎ（ｎ＝１，２，…）についての文字認識の結果が格納されるが，その内容を図３に示す文字列＃１４の例を用いて説明する。まず，文字列＃１４がレシート２における１４番目の文字列であり，識別番号がそれを示している。文字列＃１４の文字数は３（第１候補の並びは「総売上」）であり，文字列＃１４の座標は，（ｘ，ｙ）−（ｘ’，ｙ’）である。この座標は，あらかじめ定められたレシート２の画像の基準位置（例えばレシート画像の左上角または文字列群を囲む矩形領域の左上角など）を原点とした座標である。
【００５１】
さらに，認識文字データは，文字列＃１４を構成する各文字＃１４１，＃１４２，＃１４３の３文字について，各々の座標情報を持つ。また，認識結果の文字と認識用の辞書との相違度の小さい順に，認識結果のいくつかの文字が相違度とともに格納される。例えば，文字＃１４１の認識結果の第１番目の候補は「総」（相違度＝１３１１）であり，第２番目の候補は「脆」（相違度＝１５８１），第３番目の候補は「聡」（相違度＝１６４０）である。
【００５２】
ここで，画像データ読込部１１は，これらの認識結果の候補をすべて画像データ記憶部１０１に格納するのではなく，各文字列＃ｎを構成する認識候補の各文字の組み合わせと，すべての店舗に共通にあらかじめ用意された認識結果単語辞書であって，レシートに印字される可能性のある文字列があらかじめ格納されている辞書中の単語との照合により，認識結果の文字列を絞り込んで，その絞り込んだ結果だけを画像データ記憶部１０１に格納するようにしてもよい。
【００５３】
図５は，基本データ記憶部１０２に格納される基本テーブルの例を示す図である。この基本テーブルは，テナント管理部門が集計する売上管理項目の情報を格納している。具体的には，ショッピングセンターにおける売上管理データの管理を対象とした場合，ショッピングセンターを識別するショッピングセンターコード，ショッピングセンターの名称および所在地，ショッンピングセンター内の店舗数の情報を格納している。また，テナント管理に必要な各売上管理項目の項目名称が格納される。
【００５４】
この例では，売上管理項目として８個の項目があり，これらの各項目の名称が「現金売上」，「掛売上」，「クレジット売上」，「商品券」，「総売上」，「消費税」，「その他控除」，「純売上」である。本システムは，各店舗ごとに異なる各種のレシートの項目の中から，これらの売上管理項目の情報を自動で抽出するためのレシート定義データを，単純な操作で作成することができるようにすることを目的としている。
【００５５】
また，この基本テーブルには，各演算管理項目ごとにその演算管理項目が取り得る値の下限値と上限値とが定められ，格納されている。この下限値と上限値とは，レシート画像を文字認識することによってレシートから売上管理項目の金額を自動で抽出した場合に，，誤認識・誤入力を少なくするためのチェックに用いられる。
【００５６】
図６は，店舗マスタ１０３の例を示す図である。店舗マスタ１０３は，レシートを発行する個別の店舗の情報を格納するテーブルであり，あらかじめ用意される。１番目の設定項目である店舗コードは，店舗を識別する番号である。２番目の店舗名称は，店舗の名称である。３番目の業種コードは，店舗の業種を表すコードである。４番目の業種名は，業種の名称である。続いてＰＯＳシステム情報１，２，３として，順に，導入されているＰＯＳシステムの識別コード（例：Ｆ００１），ＰＯＳシステムのメーカー（例：ＡＡＡＡＡ），ＰＯＳシステムの導入年月日（例：２０００年１月１日）などの情報が格納される。また，精算レシート情報１，２，３，４として，順に，精算レシートの長さ，読込形式，精算レシート中の印字項目数，その他の必要な情報が格納される。読込形式の欄には，読取機１０がレシート２をそのまま形で読み込む場合には“０”，レシート２が長過ぎるため，レシート２を複数片にカットして読み込む場合には“１”の値が設定される。
【００５７】
本システムは，以上の画像データ記憶部１０１，基本データ記憶部１０２，店舗マスタ１０３に格納されているデータをもとに，レシート定義データを作成する。なお，店舗マスタ１０３は，店舗情報が既知であるか入力装置４から事前に入力される場合には必須ではない。
【００５８】
図７は，レシート定義データであって，もっとも基本的なデータの例を示している。店舗コードは，どの店舗のレシート定義データであるかを示す店舗の識別コードである。続いて，レシートから読み取るレシート項目の情報が，各項目ごとに格納される。読取項目１識別コードは，１番目の読取項目１の識別コードであり，レシート定義データ内で読取項目を一意に識別するコードである。
【００５９】
項目属性には，読取項目の属性が設定される。レシート内に同一名称（読取文字が同じ）の読取項目が存在しない場合，属性値＝１である。レシート内に同一名称の読取項目が存在したときに，マーカー項目を基準にして読取項目を特定する場合には，属性値＝２である。レシート内に同一名称の読取項目が存在したときに，複数キーワードをもとに読取項目を特定する場合には，属性値＝３である。読取文字の認識が困難で代替項目を設定した場合には，属性値＝４である。
【００６０】
図７（Ａ）のレシート定義データは，同一名称の読取項目が複数存在しない場合の例であり，項目属性の属性値は１となっている。１番目の読取項目の読取文字１は，この例では「総売上」となっている。金額欄の相対読取位置１は，「総売上」に対応する金額の文字列がどの部分に印字されているかを「総売上」の文字列の位置からの相対位置で示す。ここで相対位置とは，例えば「総売上」の文字列領域の左上角を原点としたときの金額欄の位置の座標である。金額欄の位置を読取文字１の位置からの相対位置で示すのは，同じレシートであっても，日によって実際にレシートに印字される行数が異なり，読取文字１の位置が可変であるからである。
【００６１】
２番目の読取項目の読取文字２「その他金券金額」，３番目の読取項目の読取文字３「現金売上」についても，同様に識別コード，項目属性，読取文字，金額欄の相対読取位置のデータがレシート定義データとして格納される。
【００６２】
図７（Ｂ）のレシート定義データは，読取項目の文字認識が困難な場合の例であり，項目属性の属性値は４となっている。この場合，読取項目（例えば消費税）の認識の代わりとなる項目を代替項目（例えば小計）として定義し，金額欄の相対読取位置として代替項目からの相対距離を設定する。
【００６３】
図８は，読取項目としてレシート内に同一名称が複数存在する場合のレシート定義データの例を示している。図８（Ａ）は，項目属性の属性値が２の場合の例，図８（Ｂ）は，項目属性の属性値が３の場合の例である。
【００６４】
レシート内に読取項目の名称が同じ項目が複数存在する場合（例えば，読取項目の項目名称が「消費税」であり，その「消費税」という用語が複数行に印字されている場合），どちらの金額を売上管理項目として抽出するかを特定する情報が必要となる。
【００６５】
項目属性の属性値が２の場合，読取項目の位置を特定する基準となる他のユニークな項目名称をマーカー項目として定義することにより，同一の名称の項目の一つを実際の読取項目として特定する。図８（Ａ）の例では，「総売上」が読取文字１であるが，レシート内に「総売上」の項目名称が複数存在するため，他のユニークなレシート上の印字名称である「貸在高」の項目をマーカー項目として定義している。また，読取文字１の読取位置およびその項目に対応する金額欄の相対読取位置１の他に，マーカー項目からの距離（方向を含む）の情報が定義される。このマーカー項目からの距離の情報は，マーカー項目「貸在高」の文字位置から読取文字１「総売上」の文字位置までの距離（ｘ座標，ｙ座標）の上限値を示しており，ｘ座標については，読取文字１が右方向に存在する場合には正の値，左方向に存在する場合には負の値をとる。また，ｙ座標については，読取文字１が上方向に存在する場合には正の値，読取文字１が下方向に存在する場合には負の値をとる。図８（Ａ）の例では，この値が「（−５０，＋１００）」であり，マーカー項目「貸在高」の文字位置からｘ座標で−５０（左方向），かつ，ｙ座標で＋１００（上方向）の範囲内に，収集対象となる読取文字１「総売上」が存在することを示している。
【００６６】
項目属性の属性値が３の場合，複数行に連続して並ぶ複数の項目名称をキーワードとして，それらの複数のキーワードがレシート内でユニークになるように定義することにより，同一の名称の項目の一つを実際の読取項目として特定する。図８（Ｂ）の例では，「総売上」が売上管理項目として必要な読取文字１であるが，レシート内に「総売上」の項目名称が複数存在するため，レシート内でユニークになる「総売上」，「純売上」，「現金有高」，「貸在高」の複数行にわたる一連の項目を，複数キーワードとして設定し，これらの一塊の文字列により，「総売上」の読取項目の位置を特定するようにしている。読取文字１の読取位置１は，「総売上」，「純売上」，「現金有高」，「貸在高」の複数キーワードが印字された最小矩形領域の左上と右下の座標である。また，金額欄の相対読取位置１は，読取文字１の読取位置１の左上の座標を原点として定義した座標である。
【００６７】
さらに，レシート定義データとして，図７および図８に示すレシート定義データによって定義された読取項目と，図５に示した基本テーブル中の売上管理項目との対応関係を示す演算式の定義情報が設定される。図９は，その演算式を定義するレシート定義データの例を示している。
【００６８】
演算式の定義情報は，図９に示すように，店舗を識別する店舗コードの他に，各売上管理項目と１または複数の読取項目識別コードとの対応情報を持つ。複数の読取項目が，１つの売上管理項目に対応づけられる場合には，複数の読取項目識別コードについての四則演算の演算式が用いられる。図９の例で説明すると，売上管理項目１「現金売上」に対応する読取項目識別コードは，「Ａ＋Ｂ」となっている。これは，読取項目識別コード＝Ａの読取項目に対応する金額欄に印字された数値と，読取項目識別コード＝Ｂの読取項目に対応する金額欄に印字された数値とを加算した値を，売上管理項目１「現金売上」の金額として計上することを示している。２番目の売上管理項目２「掛売上」については，読取項目識別コード「Ｃ」の読取項目を，そのまま「掛売上」の金額とすることを示している。他の売上管理項目についても同様に，読取項目識別コードの演算式（１対１対応の場合を含む）によって，各売上管理項目とレシートからの読取項目との対応情報が定義される。
【００６９】
次に，履歴データ作成部１５によって作成され，履歴データ記憶部１０５に格納される履歴データの例を，図１０に従って説明する。
【００７０】
履歴データは，定義データ作成部１４によって作成されたレシート定義データの内容を，他の同業種の店舗でのレシート定義データの作成に流用できるようにするために，まとめたものである。業種情報として，業種コード，業種名，ＰＯＳシステム情報１〜３，精算レシート情報１〜４などが格納される。また，項目情報として，各読取項目の識別コード，項目属性，読取文字等が格納される。また，演算情報として，各売上管理項目と，該当する読取項目識別コードを用いた演算式が格納される。これらの具体的な内容は，図７ないし図１０を用いて説明したレシート定義データの内容と同様である。
【００７１】
また，履歴データ作成部１５は，履歴データとして辞書情報を作成し，履歴データ記憶部１０５に格納する。図１１は，その履歴データの辞書部の例を示す。
【００７２】
履歴データの辞書部には，図１１に示すように，業種コード，ＰＯＳシステム情報，売上管理項目，読取文字，…などの実際にレシート定義データに利用された文字列情報（単語など）が格納される。この辞書部に格納された文字列情報は，作成済みのレシート定義データを用いて，新しい店舗のレシート定義データを作成する場合に，売上管理項目に該当する読取項目を類推するために用いられる。また，例えば図４で説明した文字認識結果の画像データにおいて，正しい認識結果の文字列を抽出するのに用いることができる。また，実際の売上管理データの収集作業において，自動で誤認識，誤入力を防止するのに用いることができる。
【００７３】
次に，レシート定義データ作成装置１が実行する処理について，さらに詳しく説明する。図１２〜図１４は，本実施形態に係るレシート定義データ作成処理の全体のフローチャートである。
【００７４】
まず，ステップＳ２０１では，入力装置４からの操作員の入力を待ち合わせる。操作員が，メニュー等により，レシート定義データを新規に作成するのか，または作成済みのレシート定義データを参照して作成するのかを指定すると，ステップＳ２０２へ進む。
【００７５】
ステップＳ２０２では，レシート定義データの新規作成か参照作成かを判定し，参照作成の場合，図１３のステップ２２０へ進み，新規作成の場合には，ステップＳ２０３へ進む。
【００７６】
ステップＳ２０３では，レシート定義データを作成するための定義入力画面の初期画面を表示装置３に表示する。
【００７７】
図１５に，定義入力画面の構成例を示す。定義入力画面３０には，レシート定義データを作成する施設とテナント（店舗）情報の表示領域の下に，売上管理項目一覧表示領域３１，ＯＣＲ読取定義一覧表示領域３２，レシート画像表示領域３３，マーカー定義一覧表示領域３４，計算式入力用領域３５が設けられる。
【００７８】
売上管理項目一覧表示領域３１には，図１６（Ａ）に示すように，売上管理項目一覧が表示される。売上管理項目一覧は，図５で説明した基本テーブルに格納されている売上管理項目の項目名称と，売上管理項目と読取項目とを対応づける計算式（演算式）が確定したときに，その計算式が表示される欄を持つ。
【００７９】
また，ＯＣＲ読取定義一覧表示領域３２には，図１６（Ｂ）に示すように，操作員の入力操作によって入力されるＯＣＲの読取項目や，レシート画像内においてその項目の領域情報が設定されたどうかを示す情報（項目領域），その項目に対応する金額欄の領域情報が設定されたかどうかを示す情報（金額情報）が表示される。
【００８０】
レシート画像表示領域３３には，読取機１０で読み取ったレシートの画像（イメージデータ）が表示される。この領域の表示においては，スクロール，拡大／縮小などの機能が設けられている。
【００８１】
マーカー定義一覧表示領域３４は，レシート内に同一名称の読取項目が複数存在する場合に，読取項目を特定するためのユニークなマーカー項目を定義するための情報が表示される。また，計算式入力用領域３５には，入力された売上管理項目と読取項目とを対応づける計算式が表示される。
【００８２】
ステップＳ２０３で，以上のような定義入力画面３０の初期画面を表示した後，ステップＳ２０４で，操作員の入力を待ち合わせる。ステップＳ２０５では，すべての項目の入力が終わると，操作員が「定義確定」のキーを押すので，その入力があったかどうかを判定し，「定義確定」の指示が入力されたならば，ステップＳ２０８へ進む。
【００８３】
「定義確定」の指示がない場合には，ステップＳ２０６へ進み，読取項目の入力と，項目領域の選択と，金額領域の選択処理を行う。この処理の例について，図１６および図１７を用いて説明する。
【００８４】
定義入力画面３０の初期画面では，ＯＣＲ読取定義一覧表示領域３２は，図１６（Ｂ１）に示すように自動で付与される読取項目ＩＤ（例えば，ａ）の表示と，空欄の読取項目，項目領域，金額領域の表示が行われている。ここで，読取項目として，例えば「純売上」が入力により設定されると，その「純売上」の項目に対するレシート内の項目領域および金額領域の領域が未設定であることを示す「未設定」の文字が，目立ちやすい表示色で，図１６（Ｂ２）に示すように表示される。そこで，操作員は，項目領域の設定操作と金額領域の設定操作を行う。
【００８５】
図１７は，項目領域の設定を説明する図である。ＯＣＲ読取定義一覧表示領域３２の表示が図１７（Ａ）に示すとおりであり，レシート画像表示領域３３には，図１７（Ｂ）に示すようなレシート画像が表示されているとする。操作員は，レシート画像表示領域３３における画像上で，マウス等の入力装置４により，「純売上」の文字列部分をポイントして，ドラッグまたはクリックする。入力データ処理部１３の座標取得部１３１は，この入力を検知し，レシート画像における「純売上」の文字列を枠線で囲んで表示する。このとき，例えば図１７（Ｃ）の左側の図に示す矢印のように，「純売上」の文字列部分を大きくドラッグしても，枠線の自動調整により，図１７（Ｃ）の右側の図に示す点線枠のように必要最小限の大きさで枠線が表示される。このようにして選択された項目領域の左上角座標と，右下角座標とが，内部メモリに記憶される。ＯＣＲ読取定義一覧では，図１７（Ｄ）に示すように，項目領域の欄が「未設定」から「○」に書き換えられ，項目領域の選択処理が済んだことが示される。枠線で囲む領域の大きさの自動調整は，図５で説明したＯＣＲによる認識結果の画像データを参照することにより行うことができる。
【００８６】
金額領域の選択処理についても，同様に，レシート画像における該当する金額欄に対するマウス等によるドラッグまたはクリックによって，枠線が表示され，その領域の座標情報が取り込まれることにより行われる。金額領域の設定により，ＯＣＲ読取定義一覧における金額領域の欄は，「未設定」から「○」に書き換えられ，「純売上」の読取項目に対する定義が終了する。入力欄は，次の行に移る。入力欄がなければ，新しい入力欄が自動的に追加される。なお，枠線の表示で領域を示す代わりに，背景や文字の表示色を変えて領域を示してもよい。
【００８７】
以上の読取項目の定義処理に続いて，ステップＳ２０７では，演算定義処理が行われる。演算定義処理は，売上管理項目とステップＳ２０６で定義された１または複数の読取項目との対応関係を示す計算式を定義する処理である。詳しくは後述する。その後，ステップＳ２０４へ戻り，同様に処理を繰り返す。
【００８８】
「定義確定」の指示があった場合，ステップＳ２０８へ進み，ステップＳ２０８では，読取項目の再チェックを行う。ここでは，読取項目の項目領域について再度，文字認識を行う。または，図４（Ｂ）で説明した画像データ記憶部１０１に格納されている認識文字データの中の読取項目の各認識文字に対する相違度の情報から，認識の精度を判定し，誤認識が生じていないかどうか，または認識の精度が所定の閾値より悪いかどうかをチェックする。
【００８９】
ステップＳ２０９の判定により，認識エラーがないと判定された場合，または認識の精度が悪くないと判定された場合には，図１４のステップＳ２３０へ進む。そうでない場合には，ステップＳ２１０へ進み，操作員に対して代替項目の入力を促す。代替項目は，本来の読取項目について，認識が困難であるか誤認識の可能性が大きいために，他のレシート項目を代替項目として認識対象とし，その代替項目からの相対位置情報によって，本来の読取項目に対する金額を取得することを目的とした項目である。操作員からの代替項目の入力操作があれば，ステップＳ２１１により，代替項目の定義処理を行う。その後に，ステップＳ２０４へ戻る。代替項目の具体例については，後に，図２４を用いて説明する。
【００９０】
ステップＳ２０２でレシート定義データの参照作成が指定された場合，ステップＳ２２０へ進み，参照するレシート定義データを手動で選択するか自動で選択するかの指示を入力する。手動で選択する場合，ステップＳ２２１へ進む。ステップＳ２２１では，既にレシート定義データを作成済みの店舗の店舗コードを指定する情報を入力し，その店舗コードに該当するレシート定義データを定義データ記憶部１０４から取得し，ステップＳ２２６へ進む。
【００９１】
参照するレシート定義データを自動で選択する場合，ステップＳ２２２へ進み，履歴データ記憶部１０５に格納されている履歴データを参照する。次に，ステップＳ２２３では，類似データの有無を判断する。この類似データの有無を判断する処理については，図２５を用いて後述する。
【００９２】
ステップＳ２２４の判定により，履歴データ中に，これから作成しようとする店舗のレシート定義データと類似するデータがない場合には，参照作成は不可であるので，ステップＳ２０３へ戻り，新規作成と同様な処理を実行する。
【００９３】
履歴データ中に，類似するデータがあると判定された場合には，ステップＳ２２５へ進み，その類似した店舗のレシート定義データを取得する。
【００９４】
ステップＳ２２６では，ステップＳ２２１またはステップＳ２２５で取得したレシート定義データから，取得した店舗の読取項目を類推し，定義入力画面３０の編集を行う。すなわち，定義入力画面３０の初期画面として，ＯＣＲ読取定義一覧が空欄の画面を表示するのではなく，参照するレシート定義データ中で定義されている読取項目のデータや，売上管理項目一覧における売上管理項目の計算式を埋め込んだ形の画面を作成し，表示する。その後，ステップＳ２０４に進む。ステップＳ２０４以降の処理は，前述した処理と同様である。これにより，参照作成の場合には，操作員は，参照する店舗のレシート定義データと異なる部分を必要に応じて修正するだけで，新しい店舗のレシート定義データを簡単に作成することができる。
【００９５】
上述したステップＳ２０９で，読取項目の認識エラーがない，または認識精度が悪くないと判断された場合，図１４のステップＳ２３０へ進む。ステップＳ２３０では，ステップＳ２０６で定義された読取項目について，レシート内に同一文字列の項目がないかをチェックする。続く，ステップ２３１の判定において，同一文字列があると判定された場合には，ステップＳ２３３へ進み，同一文字列がないと判定された場合には，ステップＳ２３２へ進む。
【００９６】
ステップＳ２３２では，履歴データを作成した後，処理を終了する。履歴データ作成処理についての詳細は後述する。
【００９７】
同一文字列があった場合，ステップＳ２３３により，必要な読取項目を特定するための同一文字列処理を行う。ここでは，マーカー項目の設定や複数キーワードの設定が行われるが，詳しくは後述する。同一文字列処理の後，ステップＳ２０４へ戻り，同様に処理を続ける。
【００９８】
図１８は，演算定義処理（図１２のステップＳ２０７）の詳細を示すフローチャートである。以下の処理は，入力データ処理部１３における演算定義部１３２が実行する。
【００９９】
ステップＳ３０１では，演算の定義に対する入力を待ち合わせる。入力があれば，ステップＳ３０２へ進み，その入力をもとに，演算を定義する売上管理項目と，その演算に使用する読取項目を選択する。読取項目は，読取項目ＩＤの指定によって選択することができる。読取項目の選択は１個でも複数個でもよい。
【０１００】
ステップＳ３０３では，四則演算の演算子を入力し，演算子の選択を行う。なお，％などの算術記号や演算の順序を指定する括弧記号等を用いることもできる。入力する演算子の数は，選択した読取項目の数による。１個の読取項目の場合には，演算子を入力する必要はない。
【０１０１】
ステップＳ３０４の判定処理により，必要なすべての読取項目および演算子の選択が終了するまで，ステップＳ３０１へ戻って同様に処理を繰り返す。
【０１０２】
読取項目および演算子の選択が終了したならば，ステップＳ３０５では，入力した演算子のチェックを行う。これは，以下のチェックである。
１）定義されていない読取項目ＩＤを使用していないか。
２）使用できない演算子が指定されていないか。
３）設定された計算式を用いて金額を計算した場合に，結果が許容範囲内か。
【０１０３】
なお，結果が許容範囲内であるかどうかは，実際にレシートの画像データから得られた金額の数値を用いて計算した場合に，基本テーブルに格納されいてる該当する売上管理項目の下限値から上限値までの範囲に入っているかどうかにより判断される。
【０１０４】
ステップＳ３０６によるチェック結果の判定により，エラーが検出されれば，ステップＳ３０１に戻って，読取項目の再選択または演算子の再入力を行う。エラーがなければ，売上管理項目一覧における該当する売上管理項目の計算式の欄に，入力された計算式を表示し，一つの売上管理項目に対する演算定義を終了する。演算定義は，基本的にはすべての売上管理項目に対して行うが，該当する読取項目が存在しない売上管理項目に対しては，未定義であってもよい。
【０１０５】
図１９は，演算定義の例を示している。図１９（Ａ）に示すように，ＯＣＲ読取定義一覧表示領域３２には，読取項目の純売上（ＩＤ＝ａ）と消費税（ＩＤ＝ｂ）と金券（ＩＤ＝ｃ）とが定義されていたとする。ここで，売上管理項目である「総売上」，「商品券」について，それぞれ図１９（Ｂ）に示すような読取項目との対応関係があった場合，図１９（Ｃ）に示すように，「総売上」に対して「ａ＋ｂ」の計算式の定義，「商品券」に対して「ｃ」の計算式の定義を行う。この計算式を演算定義として，レシート定義データに設定することにより，店舗が発行する実際のレシートから，売上管理項目の金額を算出することが可能になる。
【０１０６】
図２０は，ある店舗のレシートと売上管理項目との対応関係が，計算式によって定義されている例を示している。レシートの読取項目は，一般に店舗によって異なるので，テナント管理部門が必要とする売上管理項目と，各店舗のレシートの読取項目との対応関係は，店舗ごとに異なる。しかし，図２０に示すように，店舗ごとに計算式を定義することができるので，売上管理項目とレシートの項目との対応づけを柔軟に行うことができる。
【０１０７】
図２１は，同一文字列処理（図１４のステップＳ２３３）の詳細を示すフローチャートである。以下の処理は，入力データ処理部１３における複数キーワード設定部１３３およびマーカー項目設定部１３４が実行する。
【０１０８】
ステップＳ４０１では，ＯＣＲ読取定義一覧表示領域３２中で定義された読取項目に同一名称のものが複数あることを示すアラームを表示して，操作員からの入力を待ち合わせる。
【０１０９】
ステップＳ４０２では，操作員の入力に対して，複数の同一名称の中の読取項目をマーカー項目によって特定するか，複数キーワードによって特定するかを判定する。マーカー項目が選択された場合，ステップＳ４０３へ進み，複数キーワードが選択された場合，ステップＳ４０６へ進む。
【０１１０】
ステップＳ４０３では，マーカー項目の入力を待ち合わせる。マーカー項目の入力方法は，図１７で説明した項目領域の設定における入力方法と同様である。ステップＳ４０４では，指定されたマーカー項目の文字項目の座標を取得する。続いて，ステップＳ４０５では，同一文字列の読取項目の中で，実際に定義で用いる読取項目がマーカー項目の上方向にあるのか下方向にあるのかを示す方向と，マーカー項目からの距離を算出し，読取項目がマーカー項目の上方向にあれば距離を正の値，下方向にあれば距離を負の値で定義する。この距離の値には，実際に日々発行されるレシートにおける読取項目の行位置の変動を考慮して，所定の行数分の距離を余裕分として加算してもよい。
【０１１１】
図２２は，マーカー項目の定義例を示している。図２２（Ａ）に示すレシート画像表示領域３３に表示されたレシート画像において，実際に売上管理項目として必要になる読取項目が「消費税」であったとする。ここでは，「消費税」という同一名称の項目が複数存在するが，このうち，上方にある「消費税」が読取項目として定義したい項目であったとする。そこで，レシート内でユニークな他の項目（この例では「返品明細」）をマーカー項目として定義する。
【０１１２】
すなわち，図２２（Ｂ）に示すように，マーカー項目が「返品明細」であり，「消費税」への距離が右方向へ「１１０」，上方向へ「１００」であったとする。このとき，マーカー項目「返品明細」からの読取項目「消費税」への距離として，（１１０，１００）を定義する。
【０１１３】
マーカー項目は，１個に限らず複数個定義してもよい。図２２（Ｃ）の例では，「返品明細」をマーカー項目として定義する他に，「売上明細」についてもマーカー項目の定義を行っている。この場合，すべてのマーカー項目の定義による条件を満たした読取項目だけが，該当する読取項目として抽出され，読取項目がマーカー項目定義の条件を一つでも満たさない場合には，「該当読取項目なし」と認定されることになる。
【０１１４】
図２１のステップＳ４０２で，複数キーワードによって読取項目を特定すると判定された場合，ステップＳ４０６へ進み，複数キーワードの入力を待ち合わせる。複数キーワードの入力があれば，ステップＳ４０７では，複数キーワードの文字項目と金額領域の座標を取得し，複数キーワードの定義とする。
【０１１５】
図２３に，複数キーワードの設定例を示す。図２３の例では，読取項目「総売上」と同一名称の文字項目が，Ｓｔｒ＃１２，Ｓｔｒ＃２２，Ｓｔｒ＃３２の３個存在する。また，その各々に対応する金額の文字列もＤａｔ＃１２「￥１６８，７３５」，Ｄａｔ＃２２「￥４８，１９５」およびＤａｔ＃３２「￥３２，０２５」の３個存在する。
【０１１６】
ここで必要とする読取項目がＳｔｒ＃１２の「総売上」であったとすると，「総売上」の文字列だけではＳｔｒ＃１２の読取項目を特定できないので，Ｓｔｒ＃１２を含む複数の文字項目を複数キーワードＫｅｙ＃１として定義する。この例では，「総売上」，「純売上」，「現金在高」および「貸在高」を，複数のキーワードＫｅｙ＃１として定義している。このレシート定義データでは，項目属性＃１として複数キーワードを示す「３」を定義し，読取文字＃１として「総売上」，「純売上」，「現金在高」，「貸在高」を定義する。また，売上管理項目の収集に必要な，金額の文字列Ｄａｔ＃１２の金額欄の相対読取位置＃１についてもレシート定義データ中に定義する。これによって，レシート中に「総売上」の文字列が複数個存在しても，複数キーワードがユニークであれば，複数キーワードに一致する文字列に含まれる「総売上」の読取項目が特定されることになる。
【０１１７】
図２４は，代替項目の設定例を示す図である。前述した図１２のステップＳ２１０，Ｓ２１１において，代替項目処理部１３５が行う処理について説明する。
【０１１８】
今，図２４（Ａ）に示すように，ＯＣＲ読取定義一覧表示領域３２において，消費税の定義が行われ，また，その項目領域についても座標情報が取得されていたとする。ここで，図２４（Ａ）に示すレシート画像表示領域３３の表示元となったレシートの原画像について，再度この部分をＯＣＲ処理によって文字認識する。実際に操作員が入力した「消費税」と認識された場合には，正しいので代替項目の処理は行わない。違う文字に認識されて認識エラーがあった場合には，図２４（Ｂ）に示すように，「読取困難な文字列です。代替項目を指定してください。」という代替項目の入力を促す警告メッセージを出力する。なお，実際にＯＣＲ処理を行うのではなく，図４（Ｂ）に示した認識文字データから，認識精度を推定してもよい。
【０１１９】
操作員は，図２４（Ｂ）に示すような警告メッセージが出力された場合，図２４（Ｃ）のレシート画像表示領域３３における「小計」のような読取が容易なレシート項目を代替項目として指定する。代替項目は，本来の読取項目（消費税）の上側であっても下側であってもどちらでもよいが，行が近いほうが望ましい。この例のように，「小計」が代替項目として指定されると，消費税に対応する金額「￥７，２３４」の相対読取位置の情報は，レシート定義データ内において，「消費税」からの相対位置ではなく，読取が容易な「小計」からの相対位置が定義される。
【０１２０】
また，代替項目によって定義されたことを示すために，ＯＣＲ読取定義一覧表示領域３２内では，図２４（Ｄ）に示すように，代替項目「小計」と本来の読取項目「消費税」とが所定の区切記号「！」で連結されて表示される。レシート定義データ内においても，図７（Ｂ）に示すように，読取文字が「小計！消費税」と定義され，代替項目によって定義されたことが示される。
【０１２１】
図２５は，類似データの有無を判断する処理（図１３のステップＳ２２３）の詳細を示すフローチャートである。
【０１２２】
新しい店舗のレシート定義データの作成において，既に作成済みのレシート定義データを参照して作成に利用する場合に，履歴データから類似するレシート定義データを自動抽出する処理を行うために，類似データの有無を判断する。まず，ステップＳ５０１では，店舗マスタ１０３を参照する。また，ステップＳ５０２では，履歴データ記憶部１０５に格納された履歴データを参照する。
【０１２３】
ステップＳ５０１，Ｓ５０２で参照した結果，新たにレシート定義データを作成する新規店舗の業種コードと履歴データ中の業種コードとが等しく，かつ，新規店舗のＰＯＳシステム情報と履歴データ中のＰＯＳシステム情報とが等しいものがあるかどうかを，ステップＳ５０３およびステップＳ５０４で判定する。判定した結果，どちらも等しいものが存在した場合，ステップＳ５０６へ進む。どちらも等しいものが存在しない場合には，ステップＳ５０５へ進み，判断結果を「類似性無し」とする。
【０１２４】
一方，ステップＳ５０６では，「類似性有り」と判断し，ステップＳ５０７では，履歴データ（辞書部）を参照する。ステップＳ５０８では，履歴データ（辞書部）を参照した結果から，売上管理項目に該当する読取項目を類推する。
【０１２５】
図２６は，履歴データ作成処理（図１４のステップＳ２３２）の詳細を示すフローチャートである。
【０１２６】
ステップＳ６０１では，新しくレシート定義データを作成した店舗の店舗コードから店舗マスタ１０３を参照する。ステップＳ６０２では，店舗マスタ１０３から該当する業種コード，ＰＯＳシステム情報，精算レシート情報を取得する。ステップＳ６０３では，作成したレシート定義データから項目情報，演算情報を取得する。ステップＳ６０４では，図１０および図１１に示すような履歴データと履歴データの辞書部とを作成し，履歴データ記憶部１０５に格納する。
【０１２７】
以上のレシート定義データを作成する処理は，コンピュータとソフトウェアプログラムとによって実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも，ネットワークを通して提供することも可能である。
【符号の説明】
【０１２８】
１      レシート定義データ作成装置
１０    読取機
１１    画像データ読込部
１２    定義入力画面表示部
１３    入力データ処理部
１３１  座標取得部
１３２  演算定義部
１３３  複数キーワード設定部
１３４  マーカー項目設定部
１３５  代替項目処理部
１４    定義データ作成部
１５    履歴データ作成部
１０１  画像データ記憶部
１０２  基本データ記憶部
１０３  店舗マスタ
１０４  定義データ記憶部
１０５  履歴データ記憶部
２      レシート
３      表示装置
４      入力装置
【図１】
0005385349.tif 000002
【図２】
0005385349.tif 000003
【図３】
0005385349.tif 000004
【図４】
0005385349.tif 000005
【図５】
0005385349.tif 000006
【図６】
0005385349.tif 000007
【図７】
0005385349.tif 000008
【図８】
0005385349.tif 000009
【図９】
0005385349.tif 000010
【図１０】
0005385349.tif 000011
【図１１】
0005385349.tif 000012
【図１２】
0005385349.tif 000013
【図１３】
0005385349.tif 000014
【図１４】
0005385349.tif 000015
【図１５】
0005385349.tif 000016
【図１６】
0005385349.tif 000017
【図１７】
0005385349.tif 000018
【図１８】
0005385349.tif 000019
【図１９】
0005385349.tif 000020
【図２０】
0005385349.tif 000021
【図２１】
0005385349.tif 000022
【図２２】
0005385349.tif 000023
【図２３】
0005385349.tif 000024
【図２４】
0005385349.tif 000025
【図２５】
0005385349.tif 000026
【図２６】
0005385349.tif 000027
【図２７】
0005385349.tif 000028