以下、図面を参照して実施形態の登録装置、情報処理装置、およびプログラムについて説明する。なお、以下に説明する実施形態によりこの発明が限定されるものではない。例えば、以下に説明する実施形態では、登録装置を情報処理装置と撮像機能を備えたスキャナとカメラ(撮像部)とで構成する例について説明するが、1つの撮像装置を兼用してスキャナの撮像機能と撮像部の動作を実行するとしてもよい。また、登録装置は、商品情報等の読取機能、取引情報の登録機能、撮像機能を備えた情報機器であってもよく、例えば商品登録用のアプリケーションプログラムがインストールされたスマートフォンやタブレット端末などで構成してもよい。
(第1の実施形態)
以下、第1の実施形態の登録装置、情報処理装置およびプログラムについて、図面を参照して説明する。図1は、登録装置を含む会計システムの概略を示す図である。本実施形態の会計システム1は、例えば、生鮮食料品等を販売するスーパーマーケットなどに適用される。会計システム1は、複数の会計装置2、店舗サーバ3、および登録装置20が取り付けられた複数のショッピングカート10を備える。会計装置2および店舗サーバ3は、LAN(Local Area Network)等のネットワークを介して互いに通信可能に接続されている。また、各登録装置20は、無線LAN等を介して会計装置2および店舗サーバ3と通信可能に接続されている。
会計装置2は、例えば顧客Cが自身で会計操作を行う、いわゆるセルフ式の会計装置である。会計装置2は、登録装置20から受信した取引情報に基づいて、現金決済、あるいはクレジット決済などのキャッシュレス決済による支払に係る会計処理を実行する。会計処理とは、顧客Cが購入する商品の代金の支払を行うための処理である。なお、会計装置2は、店員が操作するPOS端末であってもよい。
店舗サーバ3は、各会計装置2から、会計処理にて支払された商品の商品情報や決済方法等に関する決済情報を受信する。また、店舗サーバ3は、各会計装置2から、所定期間(例えば一日)の売上金額を示した売上情報を受信する。店舗サーバ3は、各会計装置2から受信した商品情報、決済情報、売上情報等を集中的に管理して、一店舗での売上管理等を行う。また、店舗サーバ3は、店舗で取り扱っている商品について、商品コードと商品情報(商品名、価格等)とを対応づけた商品マスタを記憶し、適宜登録装置20に送信する。
ショッピングカート10は、店舗の売り場に設置されて顧客Cが購入する商品の運搬に用いられる。顧客Cは、ショッピングカート10を押して売り場内を移動させながら、購入する商品を登録装置20で商品登録してショッピングカート10に載置されるカゴ(図示せず)に収納する。
図2は、登録装置20が取り付けられたショッピングカート10の外観を示す図である。ショッピングカート10は、ハンドル11、カゴ載置部12、およびキャスター13を備え、登録装置20が取り付けられている。ハンドル11は、顧客Cが把持してショッピングカート10を移動させるためのものである。カゴ載置部12は、上下2段構成となっていて、それぞれ顧客Cが購入する商品を収納するカゴを載置可能となっている。なお、ショッピングカート10に一体的にカゴを設けてもよい。キャスター13は、ショッピングカート10の下部の四隅にそれぞれ設けられている。これらキャスター13が個別に回転することで、ショッピングカート10は店内を自由に移動することができる。ショッピングカート10は、登録装置20を備える移動体である。
登録装置20は、商品の取引情報を登録するもので、タブレット端末30、撮像機能を備えたスキャナ40、およびカメラ50(撮像部)を備える。スキャナ40が備える撮像機能は、商品の識別情報の読み取り、フラグシールの読み取り、及び値引きシールの読み取りといった商品の登録処理を行うためのものである。カメラ50はスキャナ40で登録処理を行う商品の動きを撮像する。スキャナ40は読取部の一例であり、カメラ50は撮像部の一例である。また、上記取引情報とは、顧客Cが購入する商品の代金の支払を行うために必要な情報で、商品情報(商品名、価格等)と特典情報(値引額等)とを含む。値引額等の値引に関する値引情報は、特典情報の一例である。特典情報は、値引情報に限らず、例えば特別に加算されるポイントの付与等を示す情報であってもよい。
タブレット端末30は、ディスプレイ31、タッチパネル32、およびカードリーダ33を備える。タブレット端末30は、情報処理装置の一例である。
ディスプレイ31は、例えば液晶パネルで構成されており、各種情報を表示する表示部として機能する。ディスプレイ31は、例えば、商品登録された商品の商品情報や使用者である顧客Cが操作するための操作子等を表示する。
タッチパネル32は、ディスプレイ31の表面に設けられて、触れた位置に応じた情報をタブレット端末30の制御部300(図3参照)に入力するもので、使用者である顧客Cの操作に応じた情報を入力する操作入力部として機能する。タッチパネル32は、例えば、会計装置2に対する取引情報の送信を指示するための会計指示を制御部300に入力する。
カードリーダ33は、顧客Cの会員カードあるいはポイントカード等の媒体から会員コードを読み取る。また、カードリーダ33は、登録装置20が決済機能を備えている場合、顧客Cのクレジットカードからクレジット情報を読取ることもできる。カードリーダ33は、磁気カードから情報を読取る磁気カードリーダでもよいし、ICチップを内蔵したカードから情報を読取るICカードリーダでもよい。
スキャナ40は、ショッピングカート10のハンドル11に設けられている。スキャナ40は、撮像機能を備え、商品を識別する商品識別情報を読取る。具体的には、スキャナ40は、撮像された画像の特定のエリアをバーコード認識する。例えば、スキャナ40は、顧客Cが購入する商品に付されたバーコードA(図6参照)等のコードシンボルを読取窓41に面して配置すると、撮像された画像から当該バーコードAを認識する。そして、スキャナ40は、認識したコードシンボルをデコードし、コードシンボルが示す商品コードを読み取る。商品コードは、商品を識別する商品識別情報の一例である。なお、スキャナ40は、色や凹凸等の商品の特徴量に基づいて商品を認識するオブジェクト認識方式で商品を特定して商品コードを読取るものであってもよい。
また、スキャナ40は、商品の特典に関する特典情報を読取る。例えば、スキャナ40は、商品に貼り付けられた値引シールB(図5参照)に印字された文字情報をOCR(Optical Character Reader)等の文字認識処理によって読取る、又は画像認識処理によって値引きシールの値引額または割引率を認識する。
ここで、商品の特典に関する特典情報を読み取る処理の一例を説明する。まず、スキャナ40は、特典情報を示すラベルが商品に付されていることを示すフラグ情報を読取る。具体的には、スキャナ40は、商品のバーコードAを読み取る際に、商品に貼り付けられたフラグシールD(図6参照)を撮像された画像から検出することによって、上記フラグ情報を読取る。スキャナ40は、撮像した画像から所定形状(本実施形態では二重丸)を検出する画像処理を行ってフラグシールDを検出する。値引シールBは特典情報を示すラベルの一例であり、フラグシールDが示す情報はフラグ情報の一例である。
フラグシールDは、商品コードを示すバーコードAに近接して貼り付けられる。これにより、顧客Cが商品コードを読取らせるために読取窓41にバーコードAを近づけると、スキャナ40はバーコードAだけでなくフラグシールDも認識することができる。このとき、ディスプレイ31に、顧客に対して値引シールを読取らせることを促す表示をしてもよい。スキャナ40は、フラグシールDを認識した場合、続いて、値引シールを読み取る。スキャナ40は、値引シールを含む画像を撮像し、撮像した画像の特定のエリアから値引シールを検出し、値引情報を認識する。
なお、スキャナ40の撮像機能によって撮像したバーコードを読み取る処理(バーコードシンボルのデコード含む。以下、バーコード認識処理ともいう)、フラグシールを読み取る処理(以下、フラグシール認識処理ともいう)、および/または値引きシールを読み取る処理(以下、値引シール認識処理ともいう)は、タブレット端末30の制御部300で行ってもよい。この場合、バーコード認識処理、フラグシール認識処理、および/または値引シール認識処理を実行する読取部は、制御部300を含めて構成されることとなる。
ところで、値引シールBは顧客Cが認識しやすいように商品の上面に張り付けられる。このため、バーコードAが商品の上面以外に付された商品においては商品コードの読取と値引情報の読取を別に行う必要がある。この場合に商品コードを読取らせた商品とは異なる商品の値引情報を読取らせる等の不正行為が行われやすく、本実施形態の登録装置20は当該不正行為を抑制するようにしたものである。
なお、以下の説明において、スキャナ40がバーコードAから商品コードを読取ることを「バーコードAを読取る」、フラグシールDからフラグ情報を読取ることを「フラグシールDを読取る」、値引シールBから値引情報を読取ることを「値引シールBを読取る」、と、それぞれいう場合がある。また、スキャナ40が商品コードや値引情報を読取可能な範囲を読取エリアという。
カメラ50は、撮像部を構成し、スキャナ40の読取エリアを含む撮像エリアを撮像する。言い換えれば、カメラ50は、顧客Cが読取エリアで商品登録する動作を撮像可能である。カメラ50は、スキャナ40が商品コードを読取ってから値引情報を読取るまでの間、所定間隔(例えば、20回/秒)で撮像エリアを撮像し、撮像データ(フレーム画像)を順次タブレット端末30に送信する。
図3は、登録装置20のハードウェア構成を示すブロック図である。上述したとおり、登録装置20は、タブレット端末30と、スキャナ40と、カメラ50とを備える。タブレット端末30は、制御部300と、メモリ部310と、ディスプレイ31と、タッチパネル32と、カードリーダ33と、通信部320と、を備えている。制御部300、メモリ部310、ディスプレイ31、タッチパネル32、カードリーダ33、および通信部320は、バス330等を介して互いに接続されている。
制御部300は、CPU(Central Processing Unit)301、ROM(Read Only Memory)302、RAM(Random Access Memory)303を備えたコンピュータで構成されている。CPU301、ROM302、およびRAM303は、バス330を介して互いに接続されている。
CPU301はタブレット端末30の全体の動作を制御する。ROM302は、CPU301の駆動に用いられるプログラムなどの各種プログラムや各種データを記憶する。RAM303は、撮像データ記憶部304および取引情報記憶部305を備える。撮像データ記憶部304は、カメラ50が撮像した撮像データを記憶するエリアであり、カメラ50から連続的に受信したフレーム画像が時系列に記憶される。取引情報記憶部305は、スキャナ40が読取った商品コードや値引情報に基づく取引情報を記憶するエリアである。また、RAM303は、CPU301のワークエリアとして使用され、ROM302やメモリ部310に記憶された各種プログラムや各種データを展開する。制御部300は、CPU301がROM302や、メモリ部310に記憶されRAM303に展開された制御プログラムに従って動作することによって、タブレット端末30の各種制御処理を実行する。
メモリ部310は、HDD(Hard Disk Drive)やフラッシュメモリ等の記憶媒体で構成されており、電源を遮断しても記憶内容を維持する。メモリ部310は、制御プログラム311および商品マスタ312を記憶する。
制御プログラム311は、スキャナ40が読取った商品コードや値引情報等に基づいて商品登録する機能、カメラ50が撮像した撮像データに基づいてスキャナ40が読取った値引情報を有効とするか無効とするかを判定する機能等を実現するためのプログラムなどである。
商品マスタ312は、店舗で取り扱っている商品の情報を記憶したマスタファイルである。商品マスタ312に登録される各データは、商品コード、商品名、および価格等が対応づけられている。なお、店舗で取り扱う商品は日々変化するため、商品マスタ312は、通信部320を介して接続される店舗サーバ3によって適宜更新される。
ディスプレイ31、タッチパネル32、およびカードリーダ33の構成および機能については上述したとおりである。通信部320は、スキャナ40、カメラ50、および店舗サーバ3と通信するためのインターフェイスである。制御部300は、通信部320を介してスキャナ40、カメラ50、および店舗サーバ3の各装置と接続されることで、当該各装置と情報(データ)の送受信が可能となる。なお、スキャナ40およびカメラ50も互いに通信可能に接続されている。
続いて、タブレット端末30の制御部300の機能構成について説明する。図4は、タブレット端末30の制御部300の機能構成を示すブロック図である。制御部300は、CPU301がROM302やメモリ部310に記憶された制御プログラムにしたがって動作することで、第1の入力部3001、第2の入力部3002、記憶部3003、画像処理部3004、判定部3005、登録部3006、報知部3007、および出力部3008として機能する。なお、これら各機能を専用回路等のハードウェアで構成してもよい。
第1の入力部3001には、商品を識別する商品識別情報および商品の特典に関する特典情報を読取るスキャナ40から、当該商品識別情報および当該特典情報が入力される。具体的には、第1の入力部3001には、スキャナ40が商品に付されたバーコードAから読取った商品コードが入力される。また、第1の入力部3001には、スキャナ40が商品に付された値引シールBから読取った値引情報が入力される。さらには、スキャナ40がフラグシールDから読み取ったフラグ情報や、顧客Cによるタッチパネル32の操作に伴う各種情報が入力される。
第2の入力部3002には、スキャナ40の読取可能エリアを含む撮像エリアを撮像するカメラ50の撮像データであって、スキャナ40が商品識別情報を読取ってから特典情報を読取るまでの間に撮像された撮像データが入力される。具体的には、第2の入力部3002には、スキャナ40の読取可能エリアを含む撮像エリアを撮像するカメラ50から、スキャナ40が商品コードを読取ってから値引情報を読取るまでの間の撮像データが入力される。図7は、スキャナ40の読取エリアSAとカメラ50の撮像エリアCAのレイアウトデータを示す図である。レイアウトデータは、メモリ部310に記憶されている。カメラ50の撮像エリアCAは、スキャナ40の読取エリアSAを含む範囲に設定されている。したがって、カメラ50は、スキャナ40で商品コード、フラグ情報、および値引情報が読取られている商品を撮像することができる。なお、スキャナ40の読取エリアSAとカメラ50の撮像エリアCAとを同一エリアに設定してもよい。
記憶部3003は、第1の入力部3001に商品コードが入力されるとRAM303に当該商品コードを記憶する。また、記憶部3003は、撮像データを撮像データ記憶部304に記憶する。具体的には、記憶部3003は、第2の入力部3002に入力されたフレーム画像を時系列に撮像データ記憶部304に記憶する。
画像処理部3004は、撮像データ記憶部304に記憶された撮像データを画像処理して、スキャナ40によって商品コード、フラグ情報、および値引情報が読取られる商品の撮像エリアCA内の移動軌跡を生成する。画像処理部3004は、スキャナ40が商品コードを読取った時点のフレーム画像から、読取エリアSAに位置する商品画像の輪郭および重心位置を算出する。商品画像の輪郭および重心位置の算出は、一般的な画像処理技術を用いて行う。画像処理部3004は、スキャナ40が値引情報を読取るまでの間の各フレーム画像についても商品の重心位置を算出して、これら重心位置をレイアウトデータにプロットすることで移動軌跡データを生成する。なお、移動軌跡データの生成は、商品の輪郭等に基づいて行うことも可能である。
例えば、図5、図6に示す商品のように、バーコードAおよびフラグシールDと、値引シールBとが異なる面に付されている場合、顧客Cは、スキャナ40にバーコードAおよびフラグシールDを読取らせた後、商品を回転させて値引シールBを読取らせる。このような場合、商品の回転に伴い商品画像の輪郭は変化するが、画像処理部3004は、商品画像の重心位置も算出しているので当該商品の移動軌跡を生成することができる。
判定部3005は、第2の入力部3002に入力された撮像データに基づいて、第1の入力部3001に入力された特典情報を有効とするか無効とするか判定する。具体的には、判定部3005は、画像処理部3004によって生成された商品の移動軌跡を示す移動軌跡データに基づいて、第1の入力部3001に入力された値引情報を有効とするか無効とするか判定する。
より詳細には、本実施形態において判定部3005は、以下の(1)および(2)の条件を満たす場合に値引情報を有効と判定する。(1)スキャナ40が商品の商品コードを読取ってから値引情報を読取るまでの間(以下、「判定対象期間」ともいう)において、当該商品の移動軌跡が撮像エリアCA内に収まっていること、(2)スキャナ40が値引情報を読取った時点において当該商品と異なる別商品が読取エリアSA内に位置しないこと。判定部3005は、少なくとも上記(1)または(2)のいずれかの条件を満たさない場合、商品コードが読取られた商品と値引情報が読取られた商品とが同一でない可能性があるとして、値引情報を無効と判定する。
図8は、判定部3005が値引情報を有効と判定する場合の商品の移動軌跡の一例を示す図である。図8~図11において、商品Mはスキャナ40で商品コードを読取られた商品を示す。t=0はスキャナ40が商品コードおよびフラグ情報を読取った時点における商品Mの位置を示し、t=10はスキャナ40が値引情報を読取った時点における商品Mの位置を示したものである。また、t=1からt=9は、t=0からt=10に至るまでの商品Mの位置を時系列に示したものである。商品Mの移動軌跡が図8に示される場合、上記(1)、(2)の条件を満たすので、判定部3005は、値引情報を有効と判定する。
図9は、スキャナ40が値引情報を読取らない場合の商品の移動軌跡の一例を示す図である。商品Mの移動軌跡が図9に示される場合、t=0でスキャナ40によって商品コードおよびフラグ情報が読み取られた後、値引情報が読取られておらず判定対象期間が特定できないため、判定部3005は値引情報を有効とは判定しない。この場合、顧客Cが値引情報を読取らせることなく商品Mをカゴに収納されたと考えられるので、例えば、報知部3007が顧客Cに対して値引情報の読取を促す報知を行う。また、スキャナ40がフラグ情報を読取っていなければ、スキャナ40が商品コードを読取った商品は値引対象商品でないとして登録部3006は商品登録を行う。商品登録の詳細は後述する。
図10は、判定部3005が値引情報を無効と判定する場合の商品の移動軌跡の一例を示す図である。商品Mの移動軌跡が図10に示される場合、判定対象期間において、商品Mの移動軌跡が撮像エリアCA内に収まっているものの、スキャナ40が値引情報を読取った時点t=10において商品Mと異なる別商品mが読取エリアSA内に位置しているため、判定部3005は値引情報を無効とする。商品Mの取引情報として、別商品mの値引情報が読取られないようにするためである。
図11は、判定部3005が値引情報を無効と判定する場合の商品の移動軌跡の他の一例を示す図である。図11の例では、図10の例と同様に、スキャナ40が値引情報を読取った時点t=10において商品Mと異なる別商品mが読取エリアSA内に位置しているため、判定部3005は値引情報を無効とする。
なお、判定部3005は、(2)の条件に代えてあるいは加えて、スキャナ40が値引情報を読取った時点t=10において撮像エリアCA内に複数の商品を認識していないこと、という条件を設定してもよい。スキャナ40が値引情報を読取った時点t=10において撮像エリアCA内に複数の商品を認識している場合、スキャナ40が商品コードを読取った商品とは別商品の値引情報が読取られた可能性があると認められるからである。
図4に戻って制御部300の機能構成を説明する。登録部3006は、スキャナ40が読取った商品識別情報および特典情報に基づいて、当該商品識別情報で識別される商品の取引に関する取引情報を登録する。具体的には、登録部3006は、第1の入力部3001に入力された商品コードに対応付けられた商品名や価格などの商品情報を商品マスタ312から取得する。なお、登録部3006は、第1の入力部3001に商品コードが入力された際に、商品マスタを格納した店舗サーバ3に対して当該商品コードに基づく商品情報の問合せを出力し、店舗サーバ3から商品情報を取得するようにしてもよい。この場合、メモリ部310は商品マスタ312を記憶しなくてよい。そして、登録部3006は、取得した商品情報と第1の入力部3001に入力された値引情報とを対応付けた取引情報を取引情報記憶部305に登録する。第1の入力部3001に値引情報が入力されない場合、登録部3006は、商品情報を取引情報として取引情報記憶部305に登録する。登録部3006が取引情報記憶部305に取引情報を登録することを商品登録という。
なお、上記取引情報には値引情報に基づいて算出された値引後の金額が含まれていてもよい。値引後の金額の算出は、タブレット端末30で実行されてもよいし、店舗サーバ3で実行されてもよい。店舗サーバ3で実行される場合、タブレット端末30は店舗サーバ3に商品コードと値引情報を含むコードを送信し、店舗サーバ3は当該コードをデコードし、値引後の金額を算出する。タブレット端末30は、店舗サーバ3で算出された値引後の金額を取得して取引情報記憶部305に記憶する。
また、登録部3006は、判定部3005がスキャナ40によって読取られた商品識別情報で識別される商品の特典情報を無効と判定した場合、当該商品の取引情報の登録を行わない。具体的には、登録部3006は、判定部3005が第1の入力部3001に入力された商品コードに対応する値引情報を無効と判定した場合、当該商品コードで識別される商品の商品登録を行わない。
さらに、登録部3006は、スキャナ40がフラグ情報を読取らない場合、商品識別情報で識別される商品に特典がないものとして取引情報を登録する。具体的には、登録部3006は、第1の入力部3001に商品コードと併せてフラグ情報が入力されない場合、当該商品コードで識別される商品が値引対象商品でないと判断し、商品コードに基づいて商品登録を行う。登録部3006のこの機能は、図6に示すように、値引販売される商品に付されたバーコードAと近接してフラグシールDを貼り付ける運用で値引販売を行う場合に設定される。
一方、フラグシールDを用いずに値引販売を行う運用においては、登録部3006は、スキャナ40が商品識別情報を読取ってから所定時間経過しても特典情報を読取らない場合、当該商品識別情報で識別される商品に特典がないものとして取引情報を登録する。具体的には、登録部3006は、第1の入力部3001に商品コードが入力されてから所定時間経過しても第1の入力部3001に値引情報が入力されない場合、当該商品は値引対象商品でないと判断して商品コードに基づいて商品登録を行う。言い換えれば、フラグシールDを用いない運用においては、第1の入力部3001に商品コードが入力されてから所定時間経過後に第1の入力部3001に値引情報が入力されるか否かによって、値引対象商品か否かを判断する。
報知部3007は、判定部3005が第1の入力部3001に入力された値引情報を無効と判定した場合に、顧客Cに対して商品登録のやり直しを促す報知を行う。例えば、報知部3007は、ディスプレイ31に再度商品登録を行うことを促すメッセージを表示する。報知部3007による報知は音声によるものであってもよい。報知部3007は、第1の入力部3001にフラグ情報が入力されたにも拘わらず、第1の入力部3001に値引情報が入力されない場合も同様に商品登録のやり直しを促す報知を行う。
出力部3008は、第1の入力部3001にタッチパネル32から会計指示が入力されると、取引情報記憶部305に記憶されている1取引分の取引情報を会計装置2に出力する。取引情報を受信した会計装置2は会計処理を実行することができる。
上記構成に基づく登録装置20の動作について説明する。図12は、スキャナ40、カメラ50、およびタブレット端末30の動作の流れを説明するシーケンスチャートである。図12のシーケンスチャートは、スキャナ40によって商品コード、フラグ情報、および値引情報が読取られ、かつ判定部3005により値引情報が有効であると判定された場合の動作を示している。
顧客Cは、ショッピングカート10を押して売り場内を移動し、購入しようとする商品に付されたバーコードAおよびフラグシールDをスキャナ40に近づける。スキャナ40は、バーコードAから商品コードを、フラグシールDからフラグ情報を、それぞれ読取る(S1)。スキャナ40は、読取った商品コードおよびフラグ情報をタブレット端末30に出力するとともに(S2)、カメラ50に撮像開始指示を出力する(S3)。
タブレット端末30は、受信した商品コードとフラグ情報を対応付けてRAM303に記憶する(S4)。言い換えると、タブレット端末30は値引対象商品の商品コードが入力されたことを示す情報をRAM303に記憶する。カメラ50は、所定間隔(例えば、20回/秒)で撮像エリアCAを撮像し(S5)、撮像データ(フレーム画像)を順次タブレット端末30に送信する(S6)。タブレット端末30は、受信したフレーム画像を時系列に撮像データ記憶部304に記憶していく(S7)。
スキャナ40は、値引シールBから値引情報を読取ると(S8)、カメラ50に撮像停止指示を出力するとともに(S9)、タブレット端末30に値引情報を出力する(S10)。撮像停止指示を受信したカメラ50は、撮像を停止する(S11)。
値引情報を受信したタブレット端末30は、撮像データ記憶部304に時系列に記憶されたフレーム画像に基づいて判定処理を実行し(S12)、値引情報が有効であると判定されると商品情報および値引情報を対応付けた取引情報を取引情報記憶部305に登録して商品登録を実行する(S13)。次いで、タブレット端末30は、会計指示が入力されると(S14)、1取引分の取引情報を会計装置2に出力する(S15)。これにより、顧客Cは、会計装置2で商品の代金の支払いを行うことができる。
次に、タブレット端末30の制御部300が実行する登録処理について説明する。図13は、タブレット端末30の制御部300による登録処理の流れを示すフローチャートである。
まず、制御部300は、第1の入力部3001に商品コードが入力されたか否か判断し(S21)、入力されないと(S21のN)、S21の処理に戻って待機する。言い換えると、制御部300は、スキャナ40が商品に付されたバーコードAから商品コードを読取ったか否か判断する。
第1の入力部3001に商品コードが入力されると(S21のY)、制御部300は、第1の入力部3001にフラグ情報が入力されたか否か判断する(S22)。言い換えると、制御部300は、スキャナ40が商品に貼られたフラグシールDからフラグ情報を読取ったか否か判断する。
第1の入力部3001にフラグ情報が入力されると(S22のY)、記憶部3003は、入力された商品コードをRAM303に記憶する(S23)。続いて、制御部300は、第2の入力部3002に撮像データが入力されたか否か判断し(S24)、入力されないと(S24のN)、S24の処理に戻る。第2の入力部3002に撮像データが入力されると(S24のY)、記憶部3003は、入力された撮像データを撮像データ記憶部304に記憶する(S25)。
次いで、制御部300は、第1の入力部3001に値引情報が入力されたか否か判断する(S26)。言い換えると、制御部300は、スキャナ40が商品に貼られた値引シールBから値引情報を読取ったか否か判断する。
第1の入力部3001に値引情報が入力されると(S26のY)、画像処理部3004は、撮像データ記憶部304に記憶された撮像データ、すなわち、判定対象期間中の複数のフレーム画像に基づいて、スキャナ40で商品コードを読取られた商品の移動軌跡を示す移動軌跡データを生成する(S27)。次いで、判定部3005は、生成された移動軌跡データに基づき、判定処理を実行する(S28)。判定処理は、第1の入力部3001に入力された値引情報を有効とするか無効とするかを判定する処理である。判定処理の詳細については後述する。
制御部300は、判定処理の結果、第1の入力部3001に入力された値引情報が有効であると判定されたか否か判断する(S29)。値引情報が有効であると判定された場合(S29のY)、登録部3006は、商品登録を行う(S30)。すなわち、登録部3006は、第1の入力部3001に入力された商品コードに基づいて商品マスタ312から取得した商品情報と、第1の入力部3001に入力された値引情報と、を対応付けた取引情報を取引情報記憶部305に登録する。
なお、S22の処理においてフラグ情報が入力されない場合(S22のN)、制御部300はS23~S29の処理をスキップしてS30の処理に移行する。フラグ情報が入力されない場合、登録部3006は、商品コードが入力された商品が値引対象商品でないと判断して商品登録を行う。この場合、登録部3006は、入力された商品コードに基づいて商品マスタ312から取得した商品情報を取引情報として取引情報記憶部305に登録する。つまり、取引情報には値引情報は含まれない。
続いて、制御部300は、第1の入力部3001に会計指示が入力されたか否か判断し(S31)、入力されない場合(S31のN)、S21の処理に戻って次の商品コードが入力されるまで待機する。会計指示が入力されると(S31のY)、出力部3008は、取引情報記憶部305に記憶されている取引情報を会計装置2に出力する(S32)。
なお、S26の処理において第1の入力部3001に値引情報が入力されない場合(S26のN)、制御部300は、第1の入力部3001に商品コードが入力されてから所定時間経過したか否か判断する(S33)。所定時間経過すると(S33のY)、報知部3007は、顧客Cが値引情報を読取らせることなく商品をカゴに収容したと判断してディスプレイ31にエラーメッセージを表示する(S34)。表示されるエラーメッセージは、例えば「値引情報を読取れませんでした。商品登録のやり直しをお願いします」など、商品登録のやり直しを促すメッセージである。続いて、制御部300は、S31の処理に移行する。また、S29で値引情報が無効であると判定された場合(S29のN)、制御部300はS34の処理に移行する。この場合、入力された値引情報が不正行為に基づくものである可能性があるので、報知部3007は、エラーメッセージを表示して商品登録のやり直しを促す。
出力部3008による取引情報の出力に続いて、記憶部3003は、撮像データ記憶部304に記憶されたフレーム画像および取引情報記憶部305に記憶された取引情報を消去する(S35)。そして、制御部300は登録処理を終了する。
次に、第1の入力部3001に入力された値引情報を有効とするか無効とするかを判定する判定処理について説明する。図14は、タブレット端末30の制御部300による判定処理の流れを示すフローチャートである。
判定部3005は、画像処理部3004が生成した移動軌跡データを取得する(S41)。続いて、判定部3005は、移動軌跡データで示された商品の移動軌跡が撮像エリアCA内に収まっているか否か判断し(S42)、収まっていなければ(S42のN)、値引情報を無効と判定し(S43)、判定処理を終了する。例えば、図9に示す移動軌跡において、商品Mが撮像エリアCAから外れた後、読取エリアSAに戻って値引情報が読取られた場合、判定部3005は値引情報を無効とする。スキャナ40で商品コードが読取られた商品Mが一旦撮像エリアCAから外れたので、値引情報を読取った商品が商品コードを読取った商品とは異なることが疑われるからである。
移動軌跡データで示された商品の移動軌跡が撮像エリアCA内に収まっていると(S42のY)、判定部3005は、値引情報を読取った時点t=10で別商品が読取エリアSA内にないか否か判断し(S44)、別商品が読取エリアSA内にあれば(S44のN)、S43の処理に移行する。例えば、商品の移動軌跡が図10、図11に示す状態と判断される場合、判定部3005は値引情報を無効とする。別商品が読取エリア内になければ(S44のY)、判定部3005は、値引情報を有効と判定し(S45)、判定処理を終了する。例えば、商品の移動軌跡が図8に示す状態と判断される場合、判定部3005は値引情報を有効とする。本実施形態においては、別商品が読取エリアSA内にないか否かは、撮像エリアCA内および読取エリアSA内に認識される商品の輪郭と重心位置を用いて判断される。
第1の実施形態によれば、登録装置20は、スキャナ40が商品コードを読取った商品と値引情報を読取った商品とが同一でないと疑われる場合に値引情報を無効として、商品登録を行わずに顧客Cに対して商品登録のやり直しを促す。これにより、登録装置20が顧客Cによって操作されるものであっても、値引販売に関して顧客Cによる不正行為を抑制することができる。
(第2の実施形態)
次に、第2の実施形態について説明する。第2の実施形態は、フラグシールDを用いない点で第1の実施形態と異なる。なお、第1の実施形態と同様の点については重複する説明は省略する。
図15は、本実施形態の値引対象商品について、値引シールBが貼られた上面を示す図である。値引対象商品にはフラグシールDが貼られておらず、値引きシールが貼られている。なお、図15は、バーコードAと値引シールBが同一面に付されている例を示すが、商品によっては図5、図6に示すようにバーコードAと値引シールBが異なる面に設けられる商品も存在する。
タブレット端末30の制御部300が実行する登録処理について説明する。図15は、タブレット端末30の制御部300による登録処理の流れを示すフローチャートである。
まず、制御部300は、第1の入力部3001に商品コードが入力されたか否か判断し(S51)、入力されないと(S51のN)、S51の処理に戻って待機する。言い換えると、制御部300は、スキャナ40が商品に付されたバーコードAから商品コードを読取ったか否か判断する。
第1の入力部3001に商品コードが入力されると(S51のY)、記憶部3003は、入力された商品コードをRAM303に記憶する(S52)。続いて、制御部300は、第2の入力部3002に撮像データが入力されたか否か判断し(S53)、入力されないと(S53のN)、S53の処理に戻る。第2の入力部3002に撮像データが入力されると(S53のY)、記憶部3003は、入力された撮像データを撮像データ記憶部304に記憶する(S54)。
次いで、制御部300は、第1の入力部3001に値引情報が入力されたか否か判断する(S55)。言い換えると、制御部300は、スキャナ40が商品に貼られた値引シールBから値引情報を読取ったか否か判断する。
第1の入力部3001に値引情報が入力されると(S55のY)、画像処理部3004は、撮像データ記憶部304に記憶された撮像データ、すなわち、判定対象期間中の複数のフレーム画像に基づいて、スキャナ40で商品コードを読取られた商品の移動軌跡を示す移動軌跡データを生成する(S56)。次いで、判定部3005は、生成された移動軌跡データに基づき、判定処理を実行する(S57)。判定処理は、第1の実施形態と同様である。
制御部300は、判定処理の結果、第1の入力部3001に入力された値引情報が有効であると判定されたか否か判断する(S58)。値引情報が有効であると判定された場合(S58のY)、登録部3006は、商品登録を行う(S59)。すなわち、登録部3006は、第1の入力部3001に入力された商品コードに基づいて商品マスタ312から取得した商品情報と、第1の入力部3001に入力された値引情報と、を対応付けた取引情報を取引情報記憶部305に登録する。
続いて、制御部300は、第1の入力部3001に会計指示が入力されたか否か判断し(S60)、入力されない場合(S60のN)、S51の処理に戻って次の商品コードが入力されるまで待機する。会計指示が入力されると(S60のY)、出力部3008は、取引情報記憶部305に記憶されている取引情報を会計装置2に出力する(S61)。
なお、S55の処理において第1の入力部3001に値引情報が入力されない場合(S55のN)、制御部300は、第1の入力部3001に商品コードが入力されてから所定時間経過したか否か判断する(S62)。所定時間経過すると(S62のY)、制御部300は、S59の処理に移行する。すなわち、登録部3006は、第1の入力部3001に商品コードが入力されてから所定時間経過しても第1の入力部3001に値引情報が入力されない場合、当該商品コードで識別される商品は値引対象商品でないと判断して商品登録を行う。なお、本実施形態の所定時間は第1の実施形態の所定時間と同じ時間であってもよいし、異なる時間でもよい。所定時間経過していない場合(S62のN)、制御部300は、S53の処理に移行する。
また、S58の処理において値引情報が無効である場合(S58のN)、入力された値引情報が不正行為に基づくものである可能性があるとので、報知部3007は、エラーメッセージを表示して商品登録のやり直しを促す(S63)。そして、制御部300は、S59の処理をスキップしてS60に移行する。
出力部3008による取引情報の出力に続いて、記憶部3003は、撮像データ記憶部304に記憶されたフレーム画像および取引情報記憶部305に記憶された取引情報を消去する(S64)。そして、制御部300は登録処理を終了する。
第2の実施形態によれば、第1の実施形態と同様に、登録装置20が顧客Cによって操作されるものであっても、値引販売に関して顧客Cによる不正行為を抑制することができる。加えて、スキャナ40によって商品コードが読取られてから所定時間経過しても値引情報が入力されない場合、値引対象商品でないとして商品登録を行う。これにより、フラグシールを用いなくても値引販売を行うことが行うことができる。
以上説明したとおり、上記実施形態の登録装置20は、商品を識別する商品識別情報および商品の特典に関する特典情報を読取るスキャナ40と、スキャナ40の読取可能エリアSAを含む撮像エリアCAを撮像するカメラ50と、スキャナ40が読取った前記商品識別情報および前記特典情報に基づいて、当該商品識別情報で識別される商品の取引に関する取引情報を登録する登録部3006と、スキャナ40が前記商品識別情報を読取ってから前記特典情報を読取るまでの間にカメラ50が撮像した撮像データに基づいて、当該特典情報を有効とするか無効とするか判定する判定部3005と、を備える。
これにより、登録装置20は、スキャナ40が商品コードを読取った商品と値引情報を読取った商品とが同一でないと疑われる場合に値引情報を無効とするので、値引販売に関する顧客Cによる不正行為の抑制効果を高めることができる。
また、上記実施形態の登録装置20は、登録部3006は、判定部3005がスキャナ40によって読取られた商品識別情報で識別される商品の特典情報を無効と判定した場合、当該商品の取引情報の登録を行わない。
これにより、登録装置20は、値引販売に関する顧客Cによる不正行為の抑制効果をより高めることができる。
さらに、上記実施形態の登録装置20は、スキャナ40は、特典情報を示すラベルが商品に付されていることを示すフラグ情報を読取り可能であり、登録部3006は、スキャナ40が前記フラグ情報を読取らない場合、商品識別情報で識別される商品に特典がないものとして取引情報を登録する。
これにより、登録装置20は、フラグシールDを用いて値引販売を行う場合、値引対象商品と値引対象商品でない商品とを区別して認識することができる。このため、登録装置20は、正しく商品登録を行うことができる。
また、上記実施形態の登録装置20は、登録部3006は、スキャナ40が商品識別情報を読取ってから所定時間経過しても特典情報を読取らない場合、当該商品識別情報で識別される商品に特典がないものとして取引情報を登録する。
これにより、登録装置20は、フラグシールDを用いずに値引販売を行う場合、値引対象商品と値引対象商品でない商品とを区別して認識することができる。このため、登録装置20は、正しく商品登録を行うことができる。
なお、上記実施形態において、タブレット端末30、スキャナ40、およびカメラ50の各装置で実行される制御プログラムは、CD-ROM等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、上記実施形態の各装置で実行される制御プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良く、さらには、インターネット等のネットワーク経由で提供するように構成しても良い。
以上、本発明の実施形態を説明したが、この実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。例えば、上述したように、1つの撮像装置で、スキャナ40の撮像機能とカメラ50(撮像部)の機能とを兼用することも可能である。つまり、1つのカメラで撮像エリアCAを撮像し、撮像エリアCA内にバーコード、フラグシール、および値引シールを認識するための読取エリアSAを設定することもできる。さらに、カメラ機能を有するスマートフォンやタブレット端末に商品登録用のアプリケーションプログラムをインストールすることによって、当該スマートフォンやタブレット端末1台で登録装置、スキャナ、およびカメラを兼用することができる。
また、この実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。この実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。