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