(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0014】
以下、実施の形態について図面を参照して説明する。
[第1の実施の形態]
POS端末装置は、商品の画像を取得し、取得した画像に商品識別子が含まれていない場合に、所定画像に対する商品の画像の画像変動量に応じて、商品の識別情報の読み取りが完了したことを判定することができるものである。
【0015】
このようなPOS端末装置について
図1を用いて説明する。
図1は、第1の実施の形態に係るPOS端末装置の概念図である。
なお、
図1(A)はPOS端末装置10の概念図、
図1(B),(C)は後述する画像取得部11により各種バーコードが読み取られる商品の動き、
図1(D),(E)はPOS端末装置10の読み取り方法を説明するための図をそれぞれ表している。また、
図1(D)は時間経過に伴って、各種バーコードを検出した時点を黒色または白色の逆三角形で示している。
【0016】
POS端末装置10は、
図1(A)に示すように、画像取得部11と、画像判定部12、読取完了判定部13を備え、商品に付された商品識別子から商品を識別する識別情報を読み取ることができる。
【0017】
画像取得部11は、商品の画像を取得する画像スキャナ等の撮像装置である。画像取得部11は、所定の時間間隔おきに画像の取得を行っている。
画像判定部12は、画像取得部11が取得した画像に商品識別子が含まれているか否かを判定する。商品識別子は、例えば、1次元バーコードであって、当該1次元バーコードが付された商品を識別する識別情報(商品コード)が対応付けられている。
【0018】
読取完了判定部13は、画像判定部12が画像に商品識別子が含まれていないことを判定すると、所定画像に対する画像の画像変動量に応じて、商品の識別情報の読み取りが完了したことを判定する。
【0019】
なお、少なくともPOS端末装置10の画像判定部12及び読取完了判定部13は、POS端末装置10が備える図示しないCPU(Central Processing Unit)によって読み取りプログラムが実行されることにより、その処理機能が実現される。
【0020】
次に、このようなPOS端末装置10による読み取り方法について
図1(B)〜(E)を用いて説明する。
ここでは、
図1(B),(C)に示すように、1次元バーコードa1及び2次元バーコードb1が付された商品1と、1次元バーコードa2のみが付された商品2とを連続して読み取る場合を例に挙げて説明する。
【0021】
なお、1次元バーコードa1,a2はそれぞれ商品1,2を識別する識別情報(商品コード)がそれぞれ対応付けられている。また、2次元バーコードb1は、商品1の販売価格に対して、所定の金額の値引き(割引き)(値引きコード)が対応付けられている。
【0022】
まず、POS端末装置10の画像取得部11は、
図1(B)に示すように、オペレータによって画像取得部11の所定の撮像領域に向けてかざされた商品1の画像を取得する。画像判定部12は、画像取得部11が取得した画像に1次元バーコードa1が含まれているか否かを判定する。画像判定部12は、
図1(B)の場合には、1次元バーコードa1が含まれていることを判定して、POS端末装置10は、1次元バーコードa1から商品1の商品コードを、2次元バーコードb1から商品1に対する値引きコードをそれぞれ復調し、1次元バーコートa1及び2次元バーコードb1をそれぞれ検出する。
【0023】
POS端末装置10では、画像取得部11が取得した画像に含まれる各種バーコードの読み取りを完了するまでに、当該各種バーコードの検出を複数回行う。商品1の場合には、
図1(D)に示すように、1次元バーコードa1から商品コードを、2次元バーコードb1から値引きコードをそれぞれ2回(
図1(D)中の1次元及び2次元バーコードの黒色逆三角形)復調して、検出する。
【0024】
POS端末装置10がこのようにして商品1の読み取りを行うと、オペレータは、商品1に代わって商品2を画像取得部11の撮像箇所に向けてかざす。この際、画像取得部11は、
図1(C)に示すように、商品1に代わって商品2がかざされるまでに撮像対象がない状態(非読み取り時間帯)で、画像を取得する。画像判定部12は、画像取得部11が取得した当該画像に1次元バーコードが含まれていないことを判定する。
【0025】
ここで、画像取得部11が取得した画像の画像変動量について
図1(E)を用いて説明する。
図1(E)の横軸は時間を、縦軸は画像変動量をそれぞれ表している。画像変動量は、基準となる画像に対する、対象となる画像の変動量を示す。基準となる画像は、例えば、撮像対象がない状態で取得された画像、全てが白色等の単一色の画像等が用いられる。商品1の1次元バーコードa1及び2次元バーコードb1の画像の画像変動量は、撮像対象がない場合に取得された画像の画像変動量よりも大きい。
【0026】
また、非読み取り時間帯の後に、商品2が画像取得部11の撮像領域に向けてかざされると、後述するように、商品2の画像が取得されて、商品2の1次元バーコードa2の画像の画像変動量は、撮像対象がない場合に取得された画像の画像変動量よりも大きくなる。
【0027】
画像のこのような画像変動量に基づいて、画像取得部11が取得した商品1の各種バーコードの読み取りが完了して、商品2の画像が新たに取得されることが分かる。
そこで、POS端末装置10の読取完了判定部13は、画像判定部12が画像に1次元バーコードが含まれていないことを判定すると、当該画像の画像変動量に応じて、例えば、画像変動量が所定の閾値を下回り、基準となる画像に対して取得した画像が十分変動していない場合には、商品1の商品コードの読み取りが完了したことを判定する。
【0028】
次いで、画像取得部11は、オペレータによって画像取得部11の所定の撮像領域に向けてかざされた商品2の画像を取得して、商品1の場合と同様に、1次元バーコードa2から商品2の商品コードを復調する(
図1(D),(E))。
【0029】
以上により、POS端末装置10による、商品1,2に対する読み取りが完了する。
上記のPOS端末装置10は、画像取得部11が商品の画像を取得して、画像判定部12が画像取得部11により取得された画像に商品識別子が含まれていないことを判定すると、読取完了判定部13が所定画像に対する画像の画像変動量に応じて、商品の識別情報の読み取りが完了したことを判定する。
【0030】
例えば、POS端末装置10が、画像変動量が用いられずに、例えば、読み取り時間のみが設定されている場合(
図1(D)参照)には、商品1の2次元バーコードb1の2回目の検出は時間超過となり、商品1に対する商品コードの読み取りはエラーとなっていた。また、商品1の読み取り時間内に1次元バーコードa1のみが検出されると商品1の2次元バーコードb1が商品2に合成され、また、2次元バーコードが付されていない読み取り対象の商品の読み取り時間内に、次に読み取られる商品の2次元バーコードが読み取られて合成されて、適切に値引きが実行されていなかった。
【0031】
しかし、上記のPOS端末装置10では、画像変動量に応じて当該商品に対する読み取り完了を判定するために、このような読み取りエラー、誤って生じる値引きがそれぞれ防止され、読み取り対象商品に対する読み取り率が向上する。
【0032】
なお、第1の実施の形態では、各種バーコードが商品の同一面に付されている場合について説明している。しかし、各種バーコードは商品の同一面に限らず、連続する多面に渡って付されている場合でも上記の読み取りを行うことができる。
【0033】
[第2の実施の形態]
第2の実施の形態では第1の実施の形態をより詳細に説明する。
まず、POSシステム100の構成について
図2を用いて説明する。
【0034】
図2は、第2の実施の形態に係るPOSシステムの構成例を示す図である。
POSシステム100は、POSサーバ130と1台または複数台のPOS端末101(
図2では1台のPOS端末101を図示)を備え、販売時点情報管理を行う。POSサーバ130とPOS端末101とは、ネットワーク131を介して通信可能に接続される。
【0035】
POSサーバ130は、POS端末101により登録された販売情報を一元管理する。また、POSサーバ130は、商品を識別するための商品コード、価格等を登録した商品マスタを管理する。
【0036】
POS端末101は、キャッシャユニット102と、チェッカユニット103とを有する。
キャッシャユニット102は、主として販売代金の受領作業を行うためのユニットである。キャッシャユニット102は、制御ユニット140と、キーボード105、自動釣銭機106、キャッシュドロア107、自動釣札機108、磁気カードリーダ109、タッチパネル110、ディスプレイ111、カスタマディスプレイ112、プリンタ113を有する。
【0037】
制御ユニット140は、キャッシャユニット102を制御すると共に、POS端末101を統括的に制御するコンピュータである。
自動釣銭機106は、顧客から受け取った硬貨の入金と、釣銭の出金とを行う。自動釣札機108は、顧客から受け取った紙幣の入金と、釣札の出金とを行う。キャッシュドロア107は、硬貨及び紙幣を収納する収納庫である。
【0038】
ディスプレイ111は、取引作業を行うための所定のGUI(Graphical User Interface)を表示する。また、ディスプレイ111は、例えば、液晶ディスプレイである。ディスプレイ111は、タッチパネル110の下層に位置している。ディスプレイ111の表示する画像は、タッチパネル110を透過して、オペレータから視認可能である。オペレータは、ディスプレイ111によって表示された画像を見ながら、タッチパネル110に対するタッチ操作を行うことができる。キーボード105は、ディスプレイ111に表示されたGUIを操作するための入力装置である。カスタマディスプレイ112は、顧客側に取引情報を表示する表示装置であり、例えば、商品購入代金の合計額、顧客からの預かり金額、釣銭金額等を表示する。磁気カードリーダ109は、クレジットカード、会員カード等が備える磁気ストライプに記録された情報を読み取る。プリンタ113は、顧客の精算処理結果をロール紙に印字してレシートを発行する印字手段である。
【0039】
チェッカユニット103は、主として商品コードの入力作業を行うためのユニットである。チェッカユニット103は、レーン台115と、支柱116、画像スキャナ200、スピーカ118、多項目キーボード119、ディスプレイ120、カスタマディスプレイ121、タッチパネル122を有する。
【0040】
レーン台115は、支柱116を支持する。また、レーン台115には、顧客が持参した買い物かごや、買い物かごに投入された商品が載置される。支柱116は、画像スキャナ200と、スピーカ118、多項目キーボード119、ディスプレイ120、カスタマディスプレイ121、タッチパネル122を支持する。
【0041】
画像スキャナ200は、商品に付与されたバーコード(1次元バーコード)を読み取るための装置である。オペレータは、商品に付されたバーコードを画像スキャナ200に向けてかざすことで、画像スキャナ200を入力装置とした商品コードの入力を行う。商品コードの入力結果は、ディスプレイ120に表示されて、オペレータが商品コードの入力結果を確認することができる。また、画像スキャナ200は、商品にバーコードと共に付された2次元バーコードで表される値引きバーコードについても、バーコードと同様に読み取り、値引きコードの入力を行う。
【0042】
タッチパネル122は、バーコードの付されていない商品(例えば、ばら売りの野菜や魚等の生鮮食料品や、惣菜等)をディスプレイ120に表示される商品群から選択する入力装置である。カスタマディスプレイ121は、顧客側に取引情報を表示する表示装置であり、例えば、商品コードを入力した商品の名称、単価等を表示する。また、スピーカ118により音声で入力結果を報知する。例えば、スピーカ118は、入力が正常になされたときと、入力についてオペレータに注意喚起をする必要があるとき等状態に応じて異なる態様の音声出力を行う。より具体的には、例えば、正常時は、「ピッ」という単発音で、注意喚起時は、「ピピッ」という連続音のようにオペレータが容易に区別可能な音声出力を行う。多項目キーボード119は、オペレータの操作を受け付ける。例えば、多項目キーボード119は、スピーカ118からの音声出力で注意喚起されたときに、操作の誤りを識別したオペレータによる訂正操作を受け付ける。
【0043】
次に、キャッシャユニット102のハードウェア構成の一例について
図3を用いて説明する。
図3は、第2の実施の形態に係るキャッシャユニットのハードウェア構成例を示す図である。
【0044】
キャッシャユニット102は、制御ユニット140に各種入出力装置を接続する。制御ユニット140は、CPU140aによって装置全体が制御されている。CPU140aには、バス140gを介してRAM(Random Access Memory)140bと、HDD(Hard Disk Drive:ハードディスクドライブ)140c、通信インタフェース140d、グラフィック処理装置140e、入出力インタフェース140fが接続されている。
【0045】
RAM140bには、CPU140aに実行させるOS(Operating System)のプログラム、POS業務を実行するためのアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM140bにはCPU140aによる処理に必要な各種データが格納される。HDD140cにはOS、アプリケーションプログラムが格納される。
【0046】
グラフィック処理装置140eには、ディスプレイ111及びカスタマディスプレイ112が接続されている。グラフィック処理装置140eはCPU140aからの命令に応じて、画像をディスプレイ111及びカスタマディスプレイ112の画面に表示させる。
【0047】
入出力インタフェース140fには、キーボード105と、自動釣銭機106、キャッシュドロア107、自動釣札機108、磁気カードリーダ109、タッチパネル110、プリンタ113が接続されている。また、入出力インタフェース140fは、可搬型記録媒体123への情報の書込み、並びに、可搬型記録媒体123への情報の読出しが可能な可搬型記録媒体インタフェースと接続可能になっている。入出力インタフェース140fは、キーボード105と、自動釣銭機106、キャッシュドロア107、自動釣札機108、磁気カードリーダ109、タッチパネル110、プリンタ113、可搬型記録媒体インタフェースからそれぞれ送られてくる信号をバス140gを介してCPU140aに送信する。
【0048】
通信インタフェース140dは、例えば、RS−232C(Recommended Standard 232 version C)、USB(Universal Serial Bus)接続の接続形式でチェッカユニット103に接続されている。通信インタフェース140dは、チェッカユニット103との間でデータの送受信を行う。
【0049】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
次に、チェッカユニット103のハードウェア構成の一例について
図4を用いて説明する。
【0050】
図4は、第2の実施の形態に係るチェッカユニットのハードウェア構成例を示す図である。
チェッカユニット103は、制御ユニット104を備え、制御ユニット104によって各種入出力装置を統括的に制御している。制御ユニット104は、CPU104aによって装置全体が制御されている。CPU104aには、バス104gを介してRAM104bと、HDD104c、通信インタフェース104d、グラフィック処理装置104e、入出力インタフェース104fが接続されている。なお、RAM104bと、HDD104c、通信インタフェース104d、グラフィック処理装置104e、入出力インタフェース104fは、キャッシャユニット102が備えるRAM140bと、HDD140c、通信インタフェース140d、グラフィック処理装置140e、入出力インタフェース140fと同様の構成であるために、これらの詳細な説明については省略する。
【0051】
但し、入出力インタフェース104fには、画像スキャナ200と、スピーカ118、多項目キーボード119、タッチパネル122が接続されている。
画像スキャナ200は、例えば、撮像素子(CCD(Charge Coupled Device)イメージセンサ、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等)を備え、撮像素子が出力する画像情報から各種情報を取得する。また、入出力インタフェース104fは、可搬型記録媒体124への情報の書込み、及び可搬型記録媒体124への情報の読出しが可能な可搬型記録媒体インタフェースと接続可能になっている。入出力インタフェース104fは、画像スキャナ200と、スピーカ118、多項目キーボード119、タッチパネル122、並びに、可搬型記録媒体インタフェースから送られてくる信号を、バス104gを介してCPU104aに送信する。
【0052】
さらに、チェッカユニット103の画像スキャナ200のハードウェア構成の一例について
図5を用いて説明する。
図5は、第2の実施の形態に係るチェッカユニットの画像スキャナのハードウェア構成例を示す図である。
【0053】
画像スキャナ200は、CPU200aによって装置全体が制御されている。CPU200aには、バス200gを介してRAM200bと、HDD200c、通信インタフェース200d、画像素子200hが接続されている。なお、RAM200bと、HDD200c、通信インタフェース200dは、キャッシャユニット102が備えるRAM140bと、HDD140c、通信インタフェース140dと同様の構成であるために、これらの詳細な説明については省略する。
【0054】
但し、画像素子200hは、上記の通り、CCDイメージセンサ、CMOSイメージセンサ等であって、バス200gを介してCPU200aからの制御信号に基づき、外部入力光を受光して、バス200gを介してCPU200aに画像情報を出力する。
【0055】
また、通信インタフェース200dは、例えば、RS−232C、USB接続の接続形式でチェッカユニット103の入出力インタフェース104fに接続されている。通信インタフェース200dは、チェッカユニット103の入出力インタフェース104fとの間でデータの送受信を行う。
【0056】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
また、キャッシャユニット102及びチェッカユニット103は、それぞれFPGA(Field Programmable Gate Array)やDSP(Digital Signal Processer)等からなるモジュールを含んで構成することもでき、CPU140a,104aを有しない構成とすることもできる。その場合、制御ユニット140,104は、それぞれ不揮発性メモリ(例えば、EEPROM(Electrically Erasable and Programmable Read Only Memory)、フラッシュメモリ、フラッシュメモリ型メモリカード等)を備え、モジュールのファームウェアを記憶する。不揮発性メモリは、可搬型記録媒体123,124、あるいは通信インタフェース140d,104dを介してファームウェアを書き込むことができる。このように制御ユニット140,104は、不揮発性メモリに記憶されているファームウェアを書き換えることにより、ファームウェアの更新をすることもできる。
【0057】
なお、POSサーバ130も、このようなキャッシャユニット102及びチェッカユニット103と同様のハードウェア構成で実現できる。
次に、キャッシャユニット102及びチェッカユニット103による商品精算処理について、
図6を用いて説明する。
【0058】
図6は、第2の実施の形態に係るチェッカユニット及びキャッシャユニットの商品精算処理のシーケンス図である。
POS端末101は、顧客の買い物ごとに商品コードの入力と精算を行う。商品精算処理は、チェッカユニット103が商品に付されたバーコードを読み取って精算対象を特定し、キャッシャユニット102が精算を行う処理である。
【0059】
[ステップS11] キャッシャユニット102は、画像スキャナ200の初期化を指示する。画像スキャナ200の初期化の指示は、例えば、オペレータによるキーボード105またはタッチパネル110の操作に基づいて行われる。例えば、キャッシャユニット102は、顧客の買い物一回ごとに登録済商品リストの初期化指示を行う。
【0060】
[ステップS21] チェッカユニット103は、キャッシャユニット102からの初期化指示を受けて買い物単位のデータを記憶する記憶領域の初期化を行う。
[ステップS22] チェッカユニット103は、商品コードの入力を終了するか否かを判定する。商品コードの入力の終了判定は、キャッシャユニット102からの終了指示を受けて判定する。チェッカユニット103は、商品コードの入力を終了すると判定した場合は、商品コードの入力を終了する。一方、チェッカユニット103は、商品コードの入力を終了しないと判定した場合は、ステップS23に進む。
【0061】
[ステップS23] チェッカユニット103は、画像スキャナ200が読み取った商品に付された各種バーコードを受け付ける。なお、バーコードの付されていない商品については、チェッカユニット103は、多項目キーボード119またはタッチパネル122からオペレータにより商品種別等が入力される。
【0062】
なお、ステップS23の処理の詳細については後述する。
[ステップS24] チェッカユニット103は、商品の数量等の入力データ(画像スキャナ200から読み取ったバーコード、多項目キーボード119またはタッチパネル122からの入力データ)をキャッシャユニット102に通知する。
【0063】
また、この際、商品に値引きシールが付されている場合にはオペレータがタッチパネル122からの入力データとして商品に対する値引きの操作入力をキャッシャユニット102に通知する。
【0064】
[ステップS12] キャッシャユニット102は、チェッカユニット103からの入力データの通知または小計キーの押下を待ち受ける。キャッシャユニット102は、チェッカユニット103からの入力データの通知があった場合には、ステップS13に進む。一方、キャッシャユニット102は、小計キーの押下があった場合には、ステップS14に進む。
【0065】
[ステップS13] キャッシャユニット102は、精算対象となる商品を登録する商品登録処理を実行する。
[ステップS14] キャッシャユニット102は、キーボード105により小計キーが押下されたことで、チェッカユニット103にバーコード入力処理の終了を指示して、バーコード入力処理を終了する。
【0066】
このように、チェッカユニット103は、キャッシャユニット102からの終了指示を受けるまでバーコードの読み取りと入力データの通知とを行う。
[ステップS15] キャッシャユニット102は、支払対象(精算対象)となる商品を確定させる支払登録処理を実行する。
【0067】
[ステップS16] キャッシャユニット102は、支払対象として商品を確定した商品について、顧客から支払いを受け付けて、また当該支払いに対する釣銭を払い出して精算処理を実行する。
【0068】
次に、チェッカユニット103が備える画像スキャナ200が備える上記のステップS23のバーコード読み取り処理を実行するための機能について
図7を用いて説明する。
図7は、第2の実施の形態に係るチェッカユニットの画像スキャナが備える機能を表す機能ブロック図である。
【0069】
画像スキャナ200は、データ格納部201を備える。データ格納部201は、画像素子200hが取得した画像データ、後述するように取得した画像データの各種バーコードから復調した各コードを保持する。データ格納部201は、さらに、各種バーコードにおける復調して検出した検出回数の情報も保持する。なお、バーコードの種類としては、1次元バーコード、2次元バーコード等がある。
【0070】
また、画像スキャナ200は、画像取得部202と、画像判定部203、データ処理部204、時間計測部205、一致回数チェック処理部206、情報通知部207、初期化処理部208を備える。
【0071】
画像取得部202は、画像素子200hが撮像した商品の画像を取得する。
画像判定部203は、画像取得部202が取得した商品の画像に各種バーコードが含まれているか否かを判定する。
【0072】
データ処理部204は、取得したバーコードがJANコードであるか否かを判定する。データ処理部204は、取得したバーコードを復調してデータ格納部201に格納すると共に、取得した各種バーコードを復調して検出した検出回数の情報をデータ格納部201に格納する。データ処理部204は、取得した画像の画像変化量の所定の閾値に対する比較を行う。
【0073】
時間計測部205は、読み取り時間の計測を行う。
一致回数チェック処理部206は、データ格納部201を参照して、各種バーコードから各コードを復調して検出した検出回数が所定回数に一致したか否か等を判定する。
【0074】
情報通知部207は、一致回数チェック処理部206の処理結果に応じて、復調して得られた各コードをチェッカユニット103の入出力インタフェース104fに通知する。また、情報通知部207は、各種バーコードの読み取りが完了したことをチェッカユニット103の入出力インタフェース104fに通知する。
【0075】
初期化処理部208は、データ格納部201に格納されている各種バーコード、各コード等のデータを初期化する。
次に、このような機能を有する画像スキャナ200が実行するステップS23のバーコード読み取り処理のフローチャートについて
図8及び
図9を用いて説明する。
【0076】
図8及び
図9は、第2の実施の形態に係るチェッカユニットの画像スキャナの読み取り処理のフローチャートである。
なお、以下では、商品に対して、商品コードが対応付けられたJANコード(1次元バーコード)が付されており、値引き対象の商品には、さらに、値引きバーコードとしてQRコード(2次元バーコード)が付されている。
【0077】
[ステップS31] 画像取得部202は、画像素子200hによる商品の撮像を待ち受ける。
画像取得部202が、画像素子200hが撮像した画像を取得すると、ステップS32の処理が実行される。
【0078】
例えば、オペレータが各種バーコード側を画像スキャナ200に向けて商品をかざすと、画像素子200hは当該商品の画像を撮像し、画像取得部202は撮像された画像を取得する。
【0079】
[ステップS32] 画像判定部203は、画像取得部202が取得した画像に各種バーコードが含まれているか否かを判定する。
画像に各種バーコードが含まれており、当該バーコードを検出できた場合には、ステップS33の処理が実行され、各種バーコードが含まれておらず、当該バーコードを検出できない場合には、ステップS36の処理が実行される。
【0080】
[ステップS33] データ処理部204は、ステップS32で検出した各種バーコードがJANコード(1次元バーコード)であるか否かを判定する。
検出した各種バーコードがJANコードである場合には、ステップS34の処理が実行され、JANコードではない(即ち、2次元バーコードである)場合には、ステップS35の処理が実行される。
【0081】
[ステップS34] データ処理部204は、検出したJANコード(1次元バーコード)を復調して、復調したコードをデータ格納部201に格納すると共に、当該バーコードの検出回数に1を追加する。
【0082】
[ステップS35] データ処理部204は、検出したJANコードではないバーコード(2次元バーコード)を復調して、復調したコードをデータ格納部201に格納すると共に、当該バーコードの検出回数に1を追加する。
【0083】
[ステップS36] データ処理部204は、ステップS31で取得した画像をデータ格納部201に格納する。
[ステップS37] 時間計測部205は、時間の計測を開始する。
【0084】
[ステップS38] 画像判定部203は、画像取得部202が、ステップS31で取得した画像に各種バーコードがさらに含まれているか否かを判定する。
画像から各種バーコードを検出できない(即ち、各種バーコードが含まれない)場合には、ステップS39の処理が実行され、各種バーコードが検出できた(即ち、各種バーコードが含まれる)場合には、ステップS41の処理が実行される。
【0085】
[ステップS39] 時間計測部205は、計測時間が所定の読み取り時間を超えたか否かを判定する。
計測時間が読み取り時間を超えていない場合には、ステップS40の処理が実行され、計測時間が読み取り時間を超えている場合には、ステップS47の処理が実行される。
【0086】
[ステップS40] データ処理部204は、画像の画像変動量が所定の閾値未満であるか否かを判定する。
画像変動量が所定の閾値未満ではない(即ち、所定の閾値以上である)場合には、ステップS38の処理が再び実行され、閾値未満(即ち、撮像対象がない状態の画像)である場合には、商品の画像の読み取りが完了したものとみなされ、ステップS47の処理が実行される。
【0087】
[ステップS41] データ処理部204は、ステップS38で検出した各種バーコードがJANコードであるか否かを判定する。
検出した各種バーコードがJANコードである場合には、ステップS42の処理が実行され、JANコードではない場合には、ステップS43の処理が実行される。
【0088】
[ステップS42] データ処理部204は、検出したJANコード(1次元バーコード)を復調して、復調したコードをデータ格納部201に格納すると共に、当該バーコードの検出回数に1を追加する。
【0089】
[ステップS43] データ処理部204は、検出したJANコードではないバーコード(2次元バーコード)を復調して、復調したコードをデータ格納部201に格納すると共に、当該バーコードの検出回数に1を追加する。
【0090】
[ステップS100] 一致回数チェック処理部206が、データ格納部201を参照して、これまでに検出したバーコードの検出回数が、所定の検出回数(例えば、2回)と一致したか否か等の判定を行う一致回数チェック処理を実行する。
【0091】
なお、一致回数チェック処理の詳細については後述する。
[ステップS43] 一致回数チェック処理部206の判定の結果、検出回数が一致しなかった場合には、ステップS44の処理が実行され、検出回数が一致した場合には、ステップS45の処理が実行される。
【0092】
[ステップS44] 時間計測部205は、再び、時間の計測を開始する。
[ステップS45] 情報通知部207は、ステップS43で検出回数が一致したバーコードのコードをチェッカユニット103の入出力インタフェース104fに通知する。
【0093】
例えば、商品に1次元バーコード及び2次元バーコードが付されている場合に、これらのバーコードがそれぞれ2回ずつ検出されて、検出回数が一致と判定されると、1次元バーコード及び2次元バーコードからそれぞれ復調されたコードがチェッカユニット103の入出力インタフェース104fに通知される。
【0094】
[ステップS46] 情報通知部207は、読み取りが完了したことをチェッカユニット103の入出力インタフェース104fに通知する。
なお、チェッカユニット103はこのような通知がされると、スピーカ118、ディスプレイ120を介して読み取り完了をオペレータに報知する。
【0095】
[ステップS47] 初期化処理部208は、データ格納部201に格納されている画像、コード等の情報を消去してデータ格納部201を初期化する。
ステップS47の処理後、再び、ステップS31の処理が実行される。
【0096】
次に、一致回数チェック処理部206が実行する上記の一致回数チェック処理(ステップS100)の詳細について
図10及び
図11を用いて説明する。
図10及び
図11は、第2の実施の形態に係るチェッカユニットの画像スキャナの一致回数チェック処理のフローチャートである。
【0097】
[ステップS101] 一致回数チェック処理部206は、検出した全ての各種バーコードの中にJANコード(1次元バーコード)が含まれるか否かを判定する。
JANコードが含まれる場合には、ステップS102の処理が実行され、含まれない場合には、ステップS112の処理が実行される。
【0098】
[ステップS102] 一致回数チェック処理部206は、値引きバーコードの読み取りが可能として設定されているか否かを判定する。
値引きバーコードの読み取りが可能として設定されている場合には、ステップS103の処理が実行され、読み取りが可能として設定されていない場合には、ステップS109の処理が実行される。
【0099】
例えば、値引きバーコードが付された商品の読み取りの場合には、値引きバーコードの読み取りが可能として設定されている。
[ステップS103] 一致回数チェック処理部206は、検出した各種バーコードに値引きバーコードが含まれているか否かを判定する。
【0100】
値引きバーコードが含まれている場合には、ステップS104の処理が実行され、値引きバーコードが含まれていない場合には、ステップS108の処理が実行される。
[ステップS104] 一致回数チェック処理部206は、値引きバーコードを2回以上検出しているか否かを判定する。
【0101】
2回以上検出を行っている場合にはステップS105の処理が実行され、2回以上検出を行っていない(即ち、1回以下の読み取りを行っている)場合にはステップS107の処理が実行される。
【0102】
[ステップS105] 一致回数チェック処理部206は、JANコードを2回以上検出しているか否かを判定する。
2回以上検出を行っている場合にはステップS106の処理が実行され、2回以上検出を行っていない(即ち、1回以下の読み取りを行っている)場合にはステップS107の処理が実行される。
【0103】
[ステップS106] 一致回数チェック処理部206は、一致回数チェック結果として、検出回数一致を判定する。
[ステップS107] 一致回数チェック処理部206は、一致回数チェック結果として、検出回数不一致を判定する。
【0104】
なお、ステップS106,S107の処理後は、
図9のステップS43の処理が実行される。
[ステップS108] 時間計測部205は、計測時間が読み取り時間を超えたか否かを判定する。
【0105】
計測時間が読み取り時間を超えた場合には、ステップS109の処理が実行され、計測時間が読み取り時間を超えていない場合には、ステップS111の処理が実行される。
[ステップS109] 一致回数チェック処理部206は、JANコードについて2回以上検出を行っているか否かを判定する。
【0106】
2回以上検出を行っている場合にはステップS110の処理が実行され、2回以上検出を行っていない(即ち、1回以下の読み取りを行っている)場合にはステップS111の処理が実行される。
【0107】
[ステップS110] 一致回数チェック処理部206は、一致回数チェック結果として、検出回数一致を判定する。
[ステップS111] 一致回数チェック処理部206は、一致回数チェック結果として、検出回数不一致を判定する。
【0108】
なお、ステップS110,S111の処理後は、
図9のステップS43の処理が実行される。
[ステップS112] 一致回数チェック処理部206は、検出した各種バーコードに値引きバーコードが含まれているか否かを判定する。
【0109】
値引きバーコードが含まれていない場合には、ステップS113の処理が実行され、値引きバーコードが含まれている場合には、ステップS115の処理が実行される。
[ステップS113] 一致回数チェック処理部206は、各種バーコードに対して2回以上検出を行っているか否かを判定する。
【0110】
2回以上検出を行っている場合にはステップS114の処理が実行され、2回以上検出を行っていない(1回以下の読み取りを行っている)場合にはステップS115の処理が実行される。
【0111】
[ステップS114] 一致回数チェック処理部206は、一致回数チェック結果として、検出回数一致を判定する。
[ステップS115] 一致回数チェック処理部206は、一致回数チェック結果として、検出回数不一致を判定する。
【0112】
なお、ステップS114,S115の処理後は、
図9のステップS43の処理が実行される。
POS端末101におけるチェッカユニット103の画像スキャナ200では、上記の処理により、商品から1次元バーコードを、必要に応じて2次元バーコードと共に読み取って、読み取った各種バーコードの情報をキャッシャユニット102に通知することができる。
【0113】
上記のPOS端末101におけるチェッカユニット103の画像スキャナ200は、商品に付された各種バーコードの読み取りでは、取得した画像から各種バーコードを検出できないことを判定する。さらに、画像スキャナ200は、当該画像の所定画像に対する画像変動量が所定の閾値未満であることを判定すると、当該画像は撮像対象がない状態の画像であることから、当該商品の読み取りは完了していることが考えられて、初期化処理を実行する。このような読み取りにより、画像スキャナ200は読み取りに時間を要する2次元バーコードを、読み取り時間を延長して、確実に読み取ることができるようになり、読み取りエラーが防止される。また、画像スキャナ200で順に読み取られる商品に付された各種バーコードの情報が、読み取りの後先の商品の情報に対して合成することが防止されるようになる。したがって、画像スキャナ200では、読み取りエラー、誤って生じる値引きがそれぞれ防止され、読み取り対象商品に対する読み取り率が向上する。
【0114】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、コンピュータが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
【0115】
処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体には、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、HDD、フレキシブルディスク(FD)、磁気テープ(MT)などがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc - Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、MO(Magneto - Optical disk)などがある。半導体メモリには、USB(Universal Serial Bus)メモリなどのフラッシュメモリがある。
【0116】
上記プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータに格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0117】
上記プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラム若しくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0118】
また、プログラムで記述された処理の一部または全てを、電子回路に置き換えることが可能である。例えば、上記の処理機能の少なくとも一部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。