図1は、本実施形態に係るチェックアウトシステム1(店舗システム)の一例を示す斜視図である。図1に示すように、チェックアウトシステム1は、商品に関する情報を読み取るコード読取装置101と、一取引に係る商品の登録、精算を行うPOS装置11とを備える。以下では、コード読取装置101を本実施形態にかかるコード読取装置として適用し、POS装置11を本実施形態にかかる販売登録装置として適用する例について説明する。尚、以下では、複数の図面に示される同様の構成については同一の符号を付して示し、その重複する説明を省略する場合がある。
POS装置11は、チェックアウト台41上のドロワ21上面に載置されている。ドロワ21は、POS装置11によって開放動作の制御を受ける。POS装置11の上面には、オペレータ(店員)によって押下操作されるキーボード22が配置されている。キーボード22を操作するオペレータから見てキーボード22よりも奥側には、オペレータに向けて情報を表示する表示デバイス23が設けられている。表示デバイス23は、その表示面23aに情報を表示する。表示面23aには、タッチパネル26が積層されている。表示デバイス23よりもさらに奥側には、顧客用表示デバイス24が回転可能に立設されている。顧客用表示デバイス24は、その表示面24aに情報を表示する。なお、図1に示す顧客用表示デバイス24は、表示面24aを図1中手前側に向けているが、表示面24aが図1中奥側に向くように顧客用表示デバイス24を回転させることによって、顧客用表示デバイス24は顧客に向けて情報を表示する。
POS装置11が載置されているチェックアウト台41とL字を形成するようにして、横長テーブル状のカウンタ台151が配置されている。カウンタ台151の上面には、荷受け面152が形成されている。荷受け面152には、商品Gを収納する買物カゴ153が載置される。買物カゴ153は、顧客によって持ち込まれる第1の買物カゴ153aと、第1の買物カゴ153aからコード読取装置101を挟んだ位置に載置される第2の買物カゴ153bとに分けて考えることができる。なお、買物カゴ153は、いわゆるカゴ形状のものに限るものではなく、トレー等であってもよい。また、買物カゴ153(第2の買物カゴ153b)は、いわゆるカゴ形状のものに限らず、箱状や袋状等であってもよい。
カウンタ台151の荷受け面152には、POS装置11とデータ送受信可能に接続されたコード読取装置101が設置されている。コード読取装置101は、薄型矩形形状のハウジング102を備える。ハウジング102の正面には読取窓103が配置されている。ハウジング102の上部には、表示・操作部104が取り付けられている。表示・操作部104には、タッチパネル105が表面に積層された表示デバイス106が設けられている。表示デバイス106の右隣にはキーボード107が配設されている。キーボード107の右隣には、カードリーダのカード読取溝108が設けられている。オペレータから見て表示・操作部104の裏面左奥側には、顧客に情報を提供するための顧客用表示デバイス109が設置されている。
このようなコード読取装置101は、スキャナ110(図2参照)を備えている。スキャナ110は、読取窓103の奥側に撮像部164(図2参照)を配置している。
顧客によって持ち込まれた第1の買物カゴ153aには、一取引に係る商品Gが収納されている。第1の買物カゴ153a内の商品Gは、コード読取装置101を操作するオペレータにより第2の買物カゴ153bに移動される。この移動過程で、商品Gがコード読取装置101の読取窓103に向けられる。この際、読取窓103内に配置された撮像部164(図2参照)は商品G及び商品Gに付されたバーコードや二次元コード等のコードシンボルを撮像する。
図2は、POS装置11及びコード読取装置101のハードウェア構成を示すブロック図である。POS装置11は、情報処理を実行する情報処理部としてのマイクロコンピュータ60を備える。マイクロコンピュータ60は、各種演算処理を実行し各部を制御するCPU(Central Processing Unit)61に、ROM(Read Only Memory)62とRAM(Random Access Memory)63とがバス接続されて構成されている。
POS装置11のCPU61には、前述したドロワ21、キーボード22、表示デバイス23、タッチパネル26、顧客用表示デバイス24がいずれも各種の入出力回路(いずれも図示せず)を介して接続されている。これらは、CPU61による制御を受ける。
キーボード22は、「1」、「2」、「3」…等の数字や「×」という乗算の演算子が上面に表示されているテンキー22d、仮締めキー22e、及び締めキー22fを含む。
POS装置11のCPU61には、HDD(Hard Disk Drive)64が接続されている。HDD64には、プログラムや各種ファイルが記憶されている。HDD64に記憶されているプログラムや各種ファイルは、POS装置11の起動時に、その全部又は一部がRAM63にコピーされてCPU61により実行される。HDD64に記憶されているプログラムの一例は、商品販売データ処理用のプログラムPRである。HDD64に記憶されているファイルの一例は、ストアコンピュータSCから配信されて格納されているPLUファイルF1である。
PLUファイルF1は、店舗に陳列して販売する商品の各々について、商品の売上登録にかかる情報として、商品コード、商品名、商品価格等が設定された商品ファイルである。PLUファイルF1は、商品ごとに、ユニークに割り当てられた商品コード、商品が属する商品分類、商品名、単価等の商品に関する情報等の情報を、その商品の商品情報として格納するファイルである。
POS装置11のCPU61には、ストアコンピュータSCとデータ通信を実行するための通信インターフェース25が入出力回路(図示せず)を介して接続されている。ストアコンピュータSCは、店舗のバックヤード等に設置されている。ストアコンピュータSCのHDD(図示せず)には、POS装置11に配信されるPLUファイルF1が格納されている。
さらに、POS装置11のCPU61には、コード読取装置101との間でデータ送受信を可能にする接続インターフェース65が接続されている。接続インターフェース65には、コード読取装置101が接続されている。また、POS装置11のCPU61には、レシート等に印字を行うプリンタ66が接続されている。POS装置11は、CPU61の制御の下、一取引の取引内容をレシートに印字する。
コード読取装置101も、マイクロコンピュータ160を備える。マイクロコンピュータ160は、CPU161にROM162とRAM163とがバス接続されて構成されている。ROM162には、CPU161によって実行されるプログラムが記憶されている。CPU161には、撮像部164、音声出力部165が各種の入出力回路(いずれも図示せず)を介して接続されている。撮像部164、音声出力部165は、CPU161によって動作が制御される。表示・操作部104は接続インターフェース176を介して、スキャナ110及びPOS装置11に接続されている。表示・操作部104は、スキャナ110のCPU161、POS装置11のCPU61によって動作が制御される。
撮像部164は、カラーCCDイメージセンサやカラーCMOSイメージセンサ等であり、CPU161の制御の下で読取窓103からの撮像を行う撮像手段である。例えば撮像部164では30fpsの動画像の撮像を行う。撮像部164が所定のフレームレートで順次撮像したフレーム画像(撮像画像)はRAM163の画像保存エリアに保存される。
音声出力部165は、予め設定された警告音等を発生するための音声回路とスピーカ等である。音声出力部165は、CPU161の制御の下で警告音や音声による報知を行う。
さらに、CPU161には、POS装置11の接続インターフェース65に接続して、POS装置11との間でデータ送受信を可能にする接続インターフェース175が接続されている。また、CPU161は、接続インターフェース175を介して、表示・操作部104との間でデータ送受信を行う。
次に、CPU61、CPU161がそれぞれプログラムを実行することで実現されるPOS装置11、コード読取装置101の機能構成について、図3を参照して説明する。
図3は、POS装置11及びコード読取装置101の機能的構成を示すブロック図である。図3に示すように、コード読取装置101のCPU161は、ROM162が格納するプログラムを実行することにより、コード読取装置101の動作を制御する制御部50として機能する。制御部50は、画像取込部51と、領域抽出部52と、情報読取部53と、バーコード選択部54と、表示制御部55と、選択受付部56と、情報出力部57との機能を主に備えている。また、同様に、POS装置11のCPU61は、プログラムPRを実行することにより、POS装置11の動作を制御する制御部80として機能する。制御部80は、販売登録部81としての機能を主に備えている。
画像取込部51は、撮像部164に撮像オン信号を出力して撮像部164に撮像動作を開始させる。画像取込部51は、撮像動作開始後に撮像部164が撮像してRAM163に保存されたフレーム画像をワークメモリ内に順次取り込む。画像取込部51によるフレーム画像の取り込みは、RAM163に保存された順に行われる。
ここで、見切り販売時に商品に貼付されるバーコードについて、図4〜図6を用いて説明する。図4は、商品を店頭に初めに並べる際に当該商品に貼付される商品ラベル(初期ラベルL1)の一例を示す図である。初期ラベルL1には、商品名、商品価格とともに、商品コード等のコードデータが格納されているバーコードB1が印刷される。また、バーコードB1の下部にはバーコードB1に格納されているコードデータを示すコード表示N1が、数字またはアルファベットで表示されている。
そして、図5は、商品を見切り販売する際に、店頭に並べられている商品に貼付される商品ラベル(値引き販売ラベルL2)の一例を示す図である。値引き販売ラベルL2には、商品名と、当該商品が値引き品であることを示す表示情報(例えば、「お買い得品」や「タイムセール」、「値引き」など)と、値引き後の価格などが印刷される。値引き販売ラベルL2に印刷されるバーコードB2には、商品コードとともに、値引き情報を含むコードデータが格納されている。
値引き情報は、値引きする額や値引き率、値引き後の価格など、その商品が値引きされていることを示す情報であればよく、特に限定されるものではない。そして、バーコードB2にはバーコードB1に含まれるコードデータとは異なるコードデータが含まれることとなるので、バーコードB2の下部に印刷されるコード表示N2が示す値はバーコードB1の下部に印刷されるコード表示N1が示す値とは異なる値となる。
尚、各商品ラベルにおいて、コード表示N1、N2はバーコードB1、B2の下部近傍に印刷される。ここで、バーコードの下部近傍とは、バーコードを表示する際の一般的な規格に則った配置に従って、コード表示N1、N2をそれぞれバーコードB1、B2の下部近傍に配置される場合の位置のことである。
図6は、画像取込部51によって取り込まれた1フレームの画像の一例を示す図であり、初期ラベルL1の上に値引き販売ラベルL2が重ね貼りされている場合の撮像画像を示す図である。図6に示すように、初期ラベルL1の大半の部分は値引き販売ラベルL2によって覆われており、客やオペレータは一目でこの商品が150円であると判別することができる。しかしながら、初期ラベルL1のバーコードB1の一部(図6ではバーコードB1の上部)が値引き販売ラベルL2によって隠し切れずに露出した状態となっている。そして、図6のようにバーコードB1の全桁分が露出している場合、バーコードB1はデコード可能な状態となる。
このような場合、従来のコード読取装置は、バーコードB1から値引き前の通常販売時の商品コードをデコードしてしまい、デコードした商品コードをPOS装置に出力してしまう。従って従来のPOS装置は、通常販売時の商品コードに基づいてPLUファイルF1から値引きされていない通常販売時の商品価格を読み込んでこの商品に適用する処理を開始してしまうので、商品に対する値引き販売を的確に行うことができないという課題があった。また、従来、複数のバーコードからオペレータが1つを選択できるコード読取装置に関する技術があるが、オペレータが逐一判断して選択しなくてはならず操作をより簡易化したいという課題があった。
そこで、本実施形態のコード読取装置101は、図6に例示するように、フレーム画像内に複数のバーコードが重なって検出された場合に、最も後から商品に付されたバーコードを選択して、当該選択されたバーコードからコードデータを読み取ることを特徴の1つとしている。
図3に戻って、領域抽出部52は、画像取込部51が取り込んだ1フレームの画像において、バーコードが含まれる領域(以下では、単にバーコード領域と称する)を抽出する。一例として、領域抽出部52は、画像取込部51が取り込んだ1フレームの画像にエッジ抽出処理を施し、抽出されたエッジ画像からバーコード領域を抽出する。尚、バーコード領域の抽出処理およびその詳細は特に限定されない。その他の抽出方法として、領域抽出部52は、画像取込部51が取り込んだ1フレームの画像を黒色部分、白色部分に2値化し、2値化した画像から、バーコード領域を抽出してもよい。
また、領域抽出部52は、1フレームの画像にバーコード領域が複数含まれる場合にはそれら複数のバーコード領域をそれぞれ抽出する。領域抽出部52は、図6に示すように、画像取込部51が取り込んだ1フレームの画像70内から、バーコードB1を含むバーコード領域A1と、バーコードB2を含むバーコード領域A2とを抽出する。また、領域抽出部52は、画像70内の位置情報(座標情報等)に対応付けて各バーコード領域A1、A2を抽出する。
また、領域抽出部52(コード表示検出手段)は、バーコード領域の近傍で当該バーコードに含まれるコードデータを示しているコード表示を検出する。即ち、図6の例では、領域抽出部52は、バーコード領域A2の形状からバーコードB2のバー方向、バー方向とは垂直な方向、及び、バーコードB2の上端、下端を判定する。そして、領域抽出部52は、バーコードB2の下端から所定の距離以内の領域から、所定桁数の数字またはアルファベットで構成されるコード表示N2の画像を検出する。
情報読取部53は、領域抽出部52が抽出した各バーコード領域に含まれるバーコードをデコードして、そのバーコードに含まれるコードデータをバーコード領域ごとに読み取る。また、情報読取部53は、各バーコード領域から読み取ったコードデータをそのバーコード領域の位置情報と対応付けてワーキングメモリ内に格納する。
バーコード選択部54は、1フレームの画像において複数のバーコードが重なっている場合に、当該バーコードの画像または情報読取部53の読取結果に基づいて、複数のバーコードのうち後から商品に付されたバーコードを選択するバーコード選択処理を行う。以下の(1)〜(2)ではバーコード選択処理の一例について説明するが、バーコード選択処理及びその詳細はこれらの例に限定されるものではなく、下記の(1)〜(2)を適宜組み合わせてバーコード選択処理を行うとしてもよいし、その他の方法を加えたり、(1)〜(2)以外の方法によってバーコード選択処理を行ったりしてもよい。
(1)バーコードの画像に基づくバーコードの選択方法
(1−1)バーコード高さに基づく選択
バーコード選択部54は、複数のバーコード領域についてバー方向の長さ(即ちバーコード領域の高さともいえる)を比較し、バー方向の長さが長い(即ちバーコード領域の高さが高い)方のバーコード領域に含まれるバーコードを、後から商品に付されたバーコードとして選択する。
図6に示す例では、バーコード選択部54は、バーコード領域A1、A2の位置情報(座標情報)等に基づいて、バーコード領域A1のバー方向の長さh1と、バーコード領域A2のバー方向の長さh2とを比較する。図6の例では長さh1より長さh2の方が長いので、バーコード選択部54は、バーコード領域A2に対応するバーコードB2を、後から商品に付されたバーコードとして選択する。
バーコードB1、B2が重ね貼りされていると、先に貼られたバーコードB1の一部は後から貼られたバーコードB2によって隠されてしまうため、バーコード領域A1のバー方向の長さh1はバーコード領域A2のバー方向の長さh2より短くなることが多い。従って、上述のような選択方法により、後から商品に付されたバーコードを選択することができる。
尚、上述では、バーコード領域A1、A2のバー方向の長さh1、h2を比較したが、バーコード選択部54は、バーコードB1、B2に含まれるバーの長さの平均値を求めて、長さの平均値が大きい方を後から商品に付されたバーコードとして選択してもよい。或いはその他の方法によってバーコードB1、B2の高さが高い方を選択し、これを後から商品に付されたバーコードとしてもよい。
(1−2)コード表示の有無に基づく選択方法
バーコード選択部54は、領域抽出部52が上述のようにバーコード領域の近傍に当該バーコードに対応するコード表示を検出した場合に、当該コード表示が検出されたバーコードを、後から商品に付されたバーコードとして選択する。図6に示す例では、上述のように領域抽出部52によってバーコード領域A2の下端近傍にバーコード領域A2に付随するコード表示N2が検出されている。従って、バーコード選択部54は、バーコードB2を後から商品に選択されたバーコードとして選択する。
バーコードB1、B2が重ね貼りされていると、先に貼られたバーコードB1の一部は後から貼られたバーコードB2によって隠されてしまうため、バーコードB1のコード表示N1の一部または全部は読み取れない場合が多い。これに対して後から貼られたバーコードB2のコード表示N2は全部が読み取れる状態であるため、上述のような選択方法により、後から商品に付されたバーコードを選択することができる。
尚、バーコードとコード表示との対応付けは、上述のように互いの配置によって判別されてもよいし、バーコードから読み込まれたコードデータと、コード表示の画像に対してOCR(Optical Character Recognition)の文字認識処理で得られたコードデータとを比較することによって互いの対応が判別されるとしてもよい。
(2)情報読取部53の読取結果に基づくバーコードの選択方法
バーコード選択部54は、情報読取部53によって読み取られたコードデータに上述した値引き情報が含まれている場合に、当該値引き情報を含むバーコードを、後から商品に付されたバーコードとして選択する。即ち、バーコードの重ね貼りは、その商品を値引き販売する際に行われることが多い。従って、上述のような選択方法により、後から商品に付されたバーコードを選択することができる。
表示制御部55は、バーコード選択部54によって複数のバーコードから1つのバーコードが選択されなかった場合に、これら複数のバーコードのうち1つを選択するためのバーコード選択画面90(図7参照)を表示デバイス106に表示させる。
尚、バーコード選択処理によって1つのバーコードが選択できない場合とは、例えば、(1−1)においてバーコード領域A1のバー方向の長さh1とバーコード領域A2のバー方向の長さh2が略同一でその差が所定の誤差範囲である場合等である。或いは、(1−2)において双方のバーコード領域A1、A2の近傍にコード表示が検出されなかった場合等である。或いは、(2)において双方のバーコードB1、B2に値引き情報が含まれていた場合にも、1つのバーコードが選択できない場合がある。ただし、バーコード選択処理は上述した例に限定されず、(1)〜(2)の方法を組合わせたりさらにその他の方法が付加される場合もあるため、ここで述べた1つのバーコードが選択できない場合の例はあくまでも一例であり、これらの例に限定されるものではない。
図7は、バーコード選択画面90の一例を示す図である。図7に示すように、バーコード選択画面90には、画像取込部51によって取り込まれた画像70が表示され、さらに画像70上には、領域抽出部52によって抽出されたバーコード領域A1、A2を囲う枠が表示される。そして、それぞれの枠近傍には、各バーコードB1、B2に対応する商品価格が「200円」「150円」などと表示される。
初期ラベルL1(図4参照)に印刷されるバーコードB1のコードデータには通常商品コードが格納され、この商品コードに対応する商品価格がPLUファイルF1から読み込まれて商品登録等に用いられる。従って、情報読取部53はバーコードB1から商品コードを読み取り、PLUファイルF1からこの商品コードに対応する商品価格「200円」を読み込む。そして、表示制御部55は、バーコード領域A1の枠内または枠に近接する場所に、バーコードB1に対応する価格として「200円」を表示する。
一方、値引き販売ラベルL2(図5参照)に印刷されるバーコードB2のコードデータには、商品コードとともに値引き価格等の値引き情報が格納される。ここでは、バーコードB2のコードデータに、商品コードと、値引き情報として値引き分の価格差分「−50円」とが格納されている場合について説明する。情報読取部53はバーコードB2から商品コードと価格差分とを読み取り、商品コードに対応する商品価格「200円」をPLUファイルF1から読み込む。そして、商品価格「200円」と価格差分「−50円」とに基づいて、値引き後の価格を150円と計算する。表示制御部55は、バーコード領域A2の枠内または枠に近接する場所に、バーコードB2に対応する価格として「150円」を表示する。
尚、バーコードB2に含まれるコードデータは上述した例に限定されず、例えば値引き後の値引き価格(上述の例では150円)が格納されてもよい。この場合、情報読取部53はバーコードB2から値引き価格「150円」を読み取り、表示制御部55はバーコード領域A2の枠内または枠に近接する場所に「150円」を表示する。
バーコード選択画面90において、商品価格「200円」、「150円」の表示領域、および、各バーコード領域A1、A2は、バーコードB1またはB2を選択するためのガイド表示となっており、オペレータはこのガイド表示を選択操作することにより、いずれか1つのバーコードを選択することができる。
選択受付部56は、バーコード選択画面90(図7参照)においてガイド表示が選択操作された場合に、選択されたガイド表示に対応するバーコードの選択を受付ける。例えば、図7に示す例においてバーコード領域A2内に対するタッチ操作を受付けた場合、選択受付部56はバーコードB2が選択されたことを受付ける。
情報出力部57は、情報読取部53がバーコードから読み取ったコードデータ、PLUファイルF1から読み取った情報、値引き価格の計算結果などの情報を、接続インターフェース175を介してPOS装置11に出力する。また、情報出力部57は、上述のようにバーコード選択部54または選択受付部56によって1つのバーコードが選択された場合には、選択されたバーコードについてコードデータまたはその他の情報を出力する。
POS装置11の販売登録部81は、コード読取装置101の情報出力部57から出力されたコードデータやその他の情報を用いて商品の販売登録を行う。販売登録部81は、コード読取装置101から商品コードが出力された場合には、PLUファイルF1から商品コードに対応する商品分類、商品名、単価等を読み出し、売上マスタファイルに記録して当該商品の販売登録を行う。また、販売登録部81は、コード読取装置101から値引き後の商品価格等の値引き情報が出力された場合には、当該値引き情報に基づいてその商品に値引き価格を適用し、PLUファイルF1から読み出された商品分類、商品名、単価等とともに、売上マスタファイルに記録して当該商品の販売登録を行う。
次に、チェックアウトシステム1の動作について詳細に説明する。先ず、図8を参照してコード読取装置101の動作について説明する。図8は、コード読取装置101が実行するコード読取処理の手順を示すフローチャートである。
POS装置11が商品登録開始等のコマンドをコード読取装置101に送出し業務起動を指令すると、コード読取装置101の制御部50はステップS1以下のコード読取処理を開始する。画像取込部51は、撮像部164に撮像オン信号を出力して撮像部164に撮像動作を開始させる(ステップS1)。また、画像取込部51は、撮像部164が撮像したフレーム画像の画像データを順次取り込む(ステップS2)。
次に、領域抽出部52は、画像取込部51が取り込んだ1フレームの画像において、バーコードを含むバーコード領域を抽出する(ステップS3)。情報読取部53は、1フレームの画像において複数のバーコード領域が抽出されたか否かを判定する(ステップS4)。
バーコード領域が1つのみ抽出された場合(ステップS4:No)には、情報読取部53は、その1つのバーコード領域に含まれるバーコードからコードデータを読み取る(ステップS5)。そして、情報出力部57は、ステップS5で読み取られたコードデータをPOS装置11に出力し(ステップS6)、ステップS12に移行する。
一方、バーコード領域が複数抽出された場合(ステップS4:Yes)には、バーコード選択部54は、複数のバーコードのうち後から商品に付されたバーコードを選択するバーコード選択処理を行う(ステップS7)。バーコード選択処理は、例えば上述した(1)〜(2)のうちいずれか1つの方法を用いて行うことができる。
バーコード選択部54は、バーコード選択処理によって1つのバーコードが選択できたか否かを判定する(ステップS8)。1つのバーコードが選択できた場合(ステップS8:Yes)には、情報出力部57は、選択されたバーコードに関する情報として、コードデータ、PLUファイルF1から読み取られた情報、値引き価格等の情報をPOS装置11に出力し(ステップS9)、ステップS12に移行する。
1つのバーコードが選択できなかった場合(ステップS8:No)には、表示制御部55は、バーコード選択画面90(図7参照)を表示デバイス106に表示させる(ステップS10)。そして、選択受付部56は、バーコード選択画面90において1つのバーコードの選択を受付けたか否かを判定する(ステップS11)。選択を受付けた場合(ステップS11:Yes)には、情報出力部57は、選択されたバーコードに関する情報として、コードデータ、PLUファイルF1から読み取られた情報、値引き価格等の情報をPOS装置11に出力する(ステップS9)。選択を受付けない場合(ステップS11:No)には、ステップS2に戻る。
ステップS12において、制御部50はPOS装置11から業務終了が指令されたか否かを判定する(ステップS12)。業務終了が指令されていない場合(ステップS12:No)には、ステップS2に戻ってステップS2以降の処理を続ける。業務終了が指令された場合(ステップS12:Yes)には、画像取込部51は、撮像部164に撮像オフ信号を出力して撮像部164に撮像動作を終了させて(ステップS13)、コード読取処理を終了する。
次に、図9を参照してPOS装置11の動作について説明する。図9は、POS装置11が実行する販売登録処理の手順を示すフローチャートである。
POS装置11の制御部80は、キーボード22からの入力等に基づいて、ステップS21以下の販売登録処理を開始する。販売登録部81は、コード読取装置101が図8のステップS6またはS9で出力したコードデータまたはその他の情報(PLUファイルF1から読み取られた情報、値引き価格等の情報)を受信する(ステップS21)。販売登録部81は、ステップS21で受信したコードデータまたはその他の情報に基づいて、適宜PLUファイルF1から商品種別、商品名、単価等を読み出し、該当する商品の売上(販売)を売上マスタファイルに登録する販売登録処理を行う(ステップS22)。続いて制御部80は、キーボード22からの入力等に基づいて、業務終了の指示が有るか否かを判定する(ステップS23)。業務終了の指示が無い場合(ステップS23:No)には、ステップS21に戻ってステップS21〜S23の処理を続ける。業務終了の指示が有った場合(ステップS23:Yes)には、制御部80はコード読取装置101に業務終了の指示を出力して、販売登録処理を終了する。
以上、本発明の一実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
例えば、上記実施形態ではPOS装置11とコード読取装置101との2台構成としたが、これに限らず、POS装置11及びコード読取装置101の機能を備えた1台構成の装置としてもよい。一例として、客自身が商品のチェックアウトを行うセルフPOS装置に、上述のPOS装置11およびコード読取装置101の機能構成を適用してもよい。
なお、本実施形態のコード読取装置101、POS装置11で実行されるプログラムは、ROM等に予め組み込まれて提供される。本実施形態のコード読取装置101、POS装置11で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
さらに、本実施形態のコード読取装置101、POS装置11で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態のコード読取装置101、POS装置11で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
本実施形態のコード読取装置101で実行されるプログラムは、上述した各部(画像取込部51、領域抽出部52、情報読取部53、バーコード選択部54、表示制御部55、選択受付部56、情報出力部57)を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記ROMからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、画像取込部51、領域抽出部52、情報読取部53、バーコード選択部54、表示制御部55、選択受付部56、情報出力部57が主記憶装置上に生成されるようになっている。
尚、コード読取装置101が有する上記各部の機能について、一部の機能(例えば、画像取込部51、領域抽出部52、情報読取部53、バーコード選択部54、表示制御部55、選択受付部56等の機能)をPOS装置11に備える形態としてもよい。また、POS装置11に表示制御部55、選択受付部56を備える形態とする場合には、バーコード選択画面90をPOS装置11の表示デバイス23(図1参照)に表示させて、選択受付部56はタッチパネル26に対する選択操作によってバーコードの選択を受付けてもよい。
また、上述では、バーコードB1、B2が商品名や価格などとともに商品ラベル(初期ラベルL1、値引き販売ラベルL2)に印刷されて用いられる場合について説明したが、バーコードの表示形態はこれに限られない。例えば、バーコードB1、B2がそれぞれ単独でラベルに印刷されて用いられる場合においても、上記本実施形態を適用してよい。
また、上述では、重ね貼りされた2枚のバーコードB1、B2から1つのバーコードB2を選択する場合について説明したが、3枚以上複数のバーコードが重ね貼りされている場合においても、上述と同様に1つのバーコードを選択してよい。
また、1フレームの画像において、重ね貼りされたバーコード群が複数組撮像されている場合(例えば、バーコードB1上に重ね貼りされたバーコードB2、及び、バーコードB3上に重ね貼りされたバーコードB4の画像が撮像されている場合)には、それぞれのバーコード群についてバーコード選択処理を行い、後から貼付されたバーコードB2とバーコードB4とから情報を読み込んでPOS装置11に出力してもよい。
以上説明したとおり、上記実施形態によれば、撮像された画像において複数のバーコードが重なっている場合に、当該バーコードの画像または当該バーコードの画像から読み取られた情報に基づいて後から商品に付されたバーコードを選択する。これにより、オペレータが選択操作をせずとも適切なバーコードを選択することができ、より少ない操作で適切なバーコードを選択できるコード読取装置、販売登録装置およびプログラムを提供することができる。