(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0009】
本実施形態は、小売店の店舗会計システムに含まれる商品認識装置に本発明に係る機能を適用した場合である。
【0010】
はじめに、本実施形態の商品認識装置は、一般物体認識(generic object recognition)の技術を採用する。一般物体認識とは、対象となる物品(オブジェクト)をカメラで撮像した画像データから当該物品の種別等を認識する技術である。コンピュータは、画像データからこの画像に含まれる物品の外観特徴量を抽出する。そしてコンピュータは、認識辞書ファイルに登録された基準画像の特徴量データと照合して類似度を算出し、この類似度に基づいて当該物品の種別等を認識する。画像中に含まれる物品を認識する技術については、下記の文献に解説されている。
柳井 啓司,“一般物体認識の現状と今後”,情報処理学会論文誌,Vol.48,No.SIG16[平成22年8月10日検索],インターネット< URL: http://mm.cs.uec.ac.jp/IPSJ-TCVIM-Yanai.pdf >
また、画像をオブジェクト毎に領域分割することによって一般物体認識を行う技術については、下記の文献に解説されている。
Jamie Shottonら,“Semantic Texton Forests for Image Categorization and Segmentation”,[平成22年8月10日検索],インターネット< URL: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.145.3036&rep=repl&type=pdf >
[第1の実施形態]
図1は、店舗会計システムの外観図である。このシステムは、顧客が買い上げる商品を認識する商品認識装置1と、商品認識装置1で認識された商品の販売データを登録するPOS端末2とを含む。商品認識装置1は、会計カウンタ3の上に取り付けられる。POS端末2は、レジ台4の上にドロワ5を介して設置される。POS端末2は、決済に必要なデバイスとしてキーボード21、オペレータ用ディスプレイ22、客用ディスプレイ23及びレシートプリンタ24を備える。商品認識装置1とPOS端末2とは、通信ケーブル400(
図2を参照)によって電気的に接続される。
【0011】
会計カウンタ3は、その奥側の顧客通路に沿って細長い形状である。レジ台4は、会計カウンタ3に沿って移動する顧客の移動方向に対して下流側の会計カウンタ3の端部手前側に、会計カウンタ3に対して略垂直に置かれる。そして、この会計カウンタ3の手前側とレジ台4の手前側が、会計担当の店員いわゆるキャッシャのスペースとなる。
【0012】
商品認識装置1は、キーボード11、タッチパネル12及び客用ディスプレイ13を備える。これらの表示・入力デバイス(キーボード11、タッチパネル12、客用ディスプレイ13)は、商品認識装置1の本体を構成するハウジング1Aに取り付けられる。薄型の矩形形状を有するハウジング1Aは、会計カウンタ3の略中央に立設される。キーボード11とタッチパネル12は、それぞれ操作面をキャッシャ側に向けてハウジング1Aに取り付けられる。客用ディスプレイ13は、表示面を顧客通路側に向けてハウジング1Aに取り付けられる。
【0013】
ハウジング1Aには、カメラ14が内蔵される。また、矩形状の読取窓1Bが、ハウジング1Aの正面(キャッシャ側)に形成される。カメラ14は、エリアイメージセンサであるCCD(Charge Coupled Device)撮像素子及びその駆動回路と、撮像領域の画像をCCD撮像素子に結像させるための撮像レンズとを備える。撮像領域とは、読取窓1Bから撮像レンズを通してCCD撮像素子のエリアに結像するフレーム画像の領域を指す。カメラ14は、撮像レンズを通ってCCD撮像素子に結像した撮像領域の画像を出力する。
【0014】
なお、カメラ14は、上記構成のものに限定されるものではない。本実施形態では、商品を撮像する機能を有しているものは全てカメラ14の範疇に入る。
【0015】
会計カウンタ3の商品認識装置1を挟んで一方の荷受面、すなわち顧客移動方向に対して上流側の荷受面は、買物客が購入する未登録の商品Mが入れられた買物カゴ6を置くためのスペースとなる。他方の荷受面、すなわち顧客移動方向に対して下流側の荷受面は、商品認識装置1により認識された商品Mを入れるための買物カゴ7を置くためのスペースとなる。
【0016】
図2は、商品認識装置1とPOS端末2とのハードウェア構成を示すブロック図である。商品認識装置1は、主制御部、主記憶部及び入出力部で構成される。CPU(Central Processing Unit)111は主制御部である。ROM(Read Only Memory)112及びRAM(Random Access Memory)113は主記憶部である。画像インターフェース114、デバイスインターフェース115及び接続インターフェース116は入出力部である。CPU111は、アドレスバス,データバス等のバスライン117を介して、ROM112、RAM113及び各インターフェース114,115,116を接続する。
【0017】
なお、主制御部は、CPU以外のプロセッサであってもよい。また、入出力部にその他のインターフェースが含まれることを妨げるものではない。
【0018】
画像インターフェース114には、前記カメラ14が接続される。このカメラ14によって撮像された画像は、画像インターフェース114介して商品認識装置1に取り込まれ、RAM113に格納される。デバイスインターフェース115には、前記キーボード11、タッチパネル12及び客用ディスプレイ13が接続される。タッチパネル12は、パネル表示部12aとタッチパネルセンサ12bとからなる。タッチパネルセンサ12bは、パネル表示部12aの画面の上に重ねて配置される。
【0019】
POS端末2は、主制御部、主記憶部、補助記憶部及び入出力部で構成される。CPU211は主制御部である。ROM212及びRAM213は主記憶部である。HDD(Hard Disk Drive)214は補助記憶部である。デバイスインターフェース215、通信インターフェース216及び接続インターフェース217は入出力部である。CPU211は、アドレスバス,データバス等のバスライン218を介して、前記ROM212、RAM213、HDD214及び各インターフェース215,216,217を接続する。
【0020】
なお、主制御部は、CPU以外のプロセッサであってもよい。また、入出力部にその他のインターフェースが含まれることを妨げるものではない。また、補助記憶部は、HDD214に限定されない。例えば、SSD(Solid State Drive)を補助記憶部として用いてもよい。
【0021】
デバイスインターフェース215には、
図2では省略するが、前記キーボード21、オペレータ用ディスプレイ22、客用ディスプレイ23、プリンタ24及びドロワ5が接続される。
【0022】
通信インターフェース216には、LAN(Local Area Network)等のネットワークを介して、店舗の中枢を担うストアコンピュータ300が接続される。この接続により、POS端末2は、ストアコンピュータ300とデータの送受信が可能となる。例えばPOS端末2は、通信インターフェース216を介してストアコンピュータ300から後述する認識辞書ファイル500を受信する。認識辞書ファイル500は、HDD214に保存される。
【0023】
接続インターフェース217には、通信ケーブル400を介して、商品認識装置1の接続インターフェース116が接続される。この接続により、POS端末2は、商品販売データを商品認識装置1のタチッパネル12及び客用ディスプレイ13に表示させる。商品認識装置1は、POS端末2のHDD214に保存される認識辞書ファイル500に対してアクセスが可能となる。
【0024】
本実施形態では、バーコードが付されていない商品を認識対象商品とする。認識辞書ファイル500は、認識対象商品毎に辞書データを保存する。
図3は、辞書データの構造を示す模式図である。
図3に示すように、認識辞書ファイル500には、認識対象商品毎に、商品ID及び商品名と関連付けて、複数対の商品画像データ0〜Nと特徴量データ0〜Nとが保存される。商品IDは、商品を識別する商品識別コードである。因みに、商品に付されるバーコードには、上記商品IDが含まれる。
【0025】
商品画像データ0〜Nは、対応する商品IDで識別される商品を様々な方向から撮影した画像のデータである。特徴量データ0〜Nは、対応する商品画像0〜Nから、その商品の表面情報(外観形状、色合い、模様、凹凸具合等)である外観上の特徴量を抽出し、この外観特徴量をパラメータ化したデータである。
【0026】
なお、1つの商品に対する画像データ及び特徴量データの数(n+1)は、固定ではない。画像データ及び特徴量データの数(n+1)は商品によって異なる。また、画像データ0〜Nを全て認識辞書ファイル500で保存するのでなく、いずれか1つの画像データを認識辞書ファイル500が保存してもよい。
【0027】
商品認識装置1は、カメラ14の撮像領域に翳された商品Mを販売商品として確定するまでの機能として、読取機能、特徴量抽出機能、類似度算出機能、候補登録機能、候補出力機能及び確定機能を有する。
【0028】
読取機能は、カメラ14で撮影された商品の画像から、その商品に付されたバーコードを読み取る。なお、読取機能は、バーコードの代わりに他のデータコード、例えば二次元データコードを読み取るものであってもよい。
【0029】
特徴量抽出機能は、カメラ14で撮影された商品の画像からその商品の外観特徴量を抽出する。類似度算出機能は、特徴量抽出機能により抽出された外観特徴量を、認識辞書ファイル500に記憶されている認識対象商品毎の特徴量データと照合する。そして類似度算出機能は、外観特徴量が特徴量データに対してどの程度類似しているかを示す類似度を認識対象商品毎に算出する。
【0030】
候補登録機能は、類似度算出機能により算出された類似度の大きい順に認識対象商品を販売商品候補として抽出する。そしてこの機能は、販売商品候補となった商品の情報を後述する候補商品メモリ600に登録する。候補出力機能は、販売商品候補となった商品の画像をタッチパネル12に表示出力する。確定機能は、タッチパネル12に表示された商品画像の中から、タッチ操作により選択された商品を販売商品として確定させる。
【0031】
かかる機能を実現させるために、商品認識装置1は、ROM112に商品認識プログラムを保存する。また商品認識装置1は、RAM113に候補商品メモリ600としての領域を確保する。候補商品メモリ600は、
図4に示すように、1位から5位までの順位毎に、商品ID、商品名、商品画像及び類似度の各データを格納する。なお、候補商品メモリ600において、順位は1位から5位までに限定されるものではない。例えば何位までのデータを格納するのかを、システムのユーザが任意に設定できるようにしてもよい。
【0032】
商品認識装置1のCPU111は、商品認識プログラムに従って、
図5の流れ図に示す手順の情報処理を実行する。はじめに、CPU111は、タッチパネル12のパネル表示部12aに登録画面700を表示させる(ST1)。
【0033】
登録画面700の一例が
図7に示される。登録画面700は、明細エリア701と、合計エリア702と、候補エリア703とを含む。明細エリア701には、販売商品として登録された商品の商品名、単価、数量、金額が表示される。合計エリア702には、登録された商品の合計点数及び合計金額が表示される。候補エリア703には、候補商品メモリ600に格納された商品名及び商品画像が、1位から順番に表示される。
【0034】
登録画面700が表示された後、CPU111は、キーボード11が操作されたか否かを確認する(ST2)。キーボードが操作されると、操作キーに対応したキーコードがRAM113のキーバッファに操作順に格納される。そこでCPU111は、キーバッファにキーコードが格納されているか否かを確認する。
【0035】
キーバッファにキーコードが格納されていない場合、CPU111は、キー入力なしと判定する(ST2にてNO)。この場合、CPU111は、カメラ14で撮影されている画像(フレーム画像)を、画像インターフェース114を介して取り込む(ST3)。取り込まれた画像は、RAM113の画像バッファに格納される。
【0036】
CPU111は、画像バッファに格納された画像を解析してバーコードを読み取る(ST4:読取機能)。画像解析によるバーコードの読取技術は、例えば特開2008−033640号公報に記載されている。
【0037】
CPU111は、画像からバーコードを読み取ることができたか否かを判定する(ST5)。バーコードを読み取ることができなかった場合(ST5にてNO)、CPU111は、商品認識処理を実行する(ST6)。
【0038】
図6は、商品認識処理の手順を具体的に示す流れ図である。先ず、CPU111は、画像バッファに格納された画像を再度解析して、この画像から商品を検出できるか否かを確認する(ST61)。具体的には、CPU111は、フレーム画像を二値化した画像から輪郭線等を抽出する。そしてCPU111は、画像に映し出されている物体の輪郭抽出を試みる。物体の輪郭が抽出されると、CPU111は、その輪郭内の画像を商品とみなす。画像から商品を検出できない場合(ST61にてNO)、商品認識処理は終了する。
【0039】
画像から商品を検出できた場合(ST61にてYES)、CPU111は、その輪郭内の画像から商品の外観特徴量を抽出する(ST62:特徴量抽出機能)。外観特徴量には、商品の形状、表面の色合い、模様、凹凸状況等が含まれる。商品の外観特徴量が抽出されると、CPU111は、POS端末2のHDD214にアクセスして、認識辞書ファイル500を検索する(ST63)。そしてCPU111は、認識辞書ファイル500から1商品のデータレコード(商品ID、商品名、商品画像0〜n、特徴量データ0〜n)を読み込む(ST64)。
【0040】
1商品のデータレコードが読み込まれたならば、CPU111は、当該レコードの特徴量データ0〜n毎に類似度を算出する。類似度は、特徴量データ0〜nがステップST62の処理で抽出された商品の外観特徴量とどの程度類似しているかを示す値である。CPU111は、特徴量データ0〜n毎に算出された類似度の最大値を、当該レコードの商品IDで特定される認識対象商品と、カメラ14で撮影された商品との類似度として決定する(ST65:類似度算出機能)。なお、特徴量データ0〜n毎に算出された類似度の合計値あるいは平均値を、認識対象商品と撮影された商品との類似度として決定してもよい。
【0041】
CPU111は、ステップST65の処理で決定された類似度が、予め設定された候補閾値Lminを超えるか否かを確認する(ST66)。候補閾値Lminは、認識対象商品を候補商品として残す類似度の下限値である。類似度が候補閾値Lminを超えていない場合(ST66にてNO)、CPU111は、ステップST68の処理に進む。
【0042】
類似度が候補閾値Lminを超えている場合には(ST66にてYES)、CPU111は、この類似度を、当該レコードの商品ID、商品名及び商品画像とともにRAM113の候補バッファに格納する(ST67)。商品画像は、例えば類似度が最大となった特徴量データと対になっている画像が選択される。しかる後、CPU111は、ステップST68の処理に進む。
【0043】
ステップST68では、CPU111は、認識辞書ファイル500に未処理のデータレコードが存在するか否かを確認する。存在する場合(ST68にてYES)、CPU111は、ステップST64の処理に戻る。すなわちCPU111は、認識辞書ファイル30から未処理のデータレコードを読み込み、前記ステップST65〜ST67の処理を再度実行する。
認識辞書ファイル500に未処理のデータレコードが存在しない場合(ST68にてNO)、商品認識処理は終了する。
【0044】
商品認識処理が終了すると、CPU111は、撮影画像から商品を認識できたか否かを確認するために候補バッファを検索する(ST7)。候補バッファにデータが格納されていない場合、商品が認識されていない。この場合(ST7にてNO)、CPU111は、ステップST2の処理に戻る。すなわちCPU111は、キーボード11が操作されたか否かを確認し、操作されていない場合には、前記ステップST3以降の処理を再度実行する。
【0045】
候補バッファに少なくとも1商品のデータ(商品ID、商品名、画像、類似度)が格納されていた場合(ST7にてYES)、CPU111は、候補バッファのデータを類似度の大きい順に並べ替える。そしてCPU111は、類似度が1位から5位までのデータ(商品ID、商品名、画像、類似度)を選択し、1位から順に候補商品メモリ600に登録する(ST8:候補登録機能)。またCPU111は、候補商品メモリ600に登録された順に候補商品の画像を候補エリア703に表示させる(ST9:候補出力機能)。
【0046】
候補商品画像を表示した登録画面700の一例が
図8に示される。この例は、候補商品として「リンゴ」、「柿」及び「モモ」が認識された場合である。類似度は、「リンゴ」が最も大きく、「モモ」が最も小さい。この場合、
図8に示すように、「リンゴ」を選択するためのボタン画像711と、「柿」を選択するためのボタン画像712と、「モモ」を選択するためのボタン画像713とが、候補エリア703に表示される。
【0047】
候補商品のボタン画像711,712,713が表示されると、CPU111は、候補商品の中からいずれか1商品が選択されたか否かを確認する(ST10)。いずれか1つのボタン画像がタッチ入力されると、CPU111は、そのボタン画像に表示されている商品が選択されたとみなす。
【0048】
商品が選択されない場合(ST10にてNO)、CPU111は、ステップST2の処理に戻る。すなわちCPU111は、キーボード11が操作されたか否かを確認し、操作されていない場合には、前記ステップST3以降の処理を再度実行する。
【0049】
タッチパネルセンサ12bからの信号により商品が選択された場合(ST10にてYES)、CPU111は、候補商品メモリ600に記憶されている商品の候補をリセットするために、候補商品メモリ600をクリアする(ST11)。またCPU111は、候補エリア703に表示された候補商品のボタン画像711,712,713を消去する(ST12)。さらにCPU111は、選択された商品の商品IDを販売商品の商品IDとして確定する(確定機能)。そしてCPU111は、この確定された商品IDを、通信ケーブル400を介してPOS端末2に送信する(ST13)。
【0050】
商品IDが送信された後、CPU111は、ステップST2の処理に戻る。すなわちCPU111は、キーボード11が操作されたか否かを確認し、操作されていない場合には、前記ステップST3以降の処理を再度実行する。
【0051】
ステップST5にて画像からバーコードを読み取ることができた場合(ST5にてYES)、CPU111は、ステップST11の処理に進む。すなわちCPU111は、候補商品メモリ600に記憶されている商品の候補をリセットするために、候補商品メモリ600をクリアする(ST11)。またCPU111は、候補エリア703に表示された候補商品のボタン画像711,712,713を消去する(ST12)。さらにCPU111は、バーコードに含まれる商品IDを販売商品の商品IDとして確定する。そしてCPU111は、この確定された商品IDを、通信ケーブル400を介してPOS端末2に送信する(ST13)。
【0052】
ステップST2にてキーバッファにキーコードが格納されている場合(ST2にてYES)、CPU111は、そのキーコードを解析して、商品IDが入力されたか否かを確認する(ST14)。商品ID以外の入力の場合(ST14にてNO)、CPU111は、入力に応じた処理を実行する。
【0053】
商品IDが入力されている場合(ST14にてYES)、CPU111は、ステップST11の処理に進む。すなわちCPU111は、候補商品メモリ600に記憶されている商品の候補をリセットするために、候補商品メモリ600をクリアする(ST11)。またCPU111は、候補エリア703に表示された候補商品のボタン画像711,712,713を消去する(ST12)。さらにCPU111は、キー入力された商品IDを販売商品の商品IDとして確定する。そしてCPU111は、この確定された商品IDを、通信ケーブル400を介してPOS端末2に送信する(ST13)。
【0054】
商品IDを受信したPOS端末2のCPU211は、その商品IDで識別される商品の商品名、単価等の商品情報を取得するために商品マスタファイルを検索する。そしてCPU211は、商品マスタファイルから検出した商品情報に基づいて、販売数量、販売金額を含む商品販売データを登録処理する。またCPU211は、商品名、単価、数量、金額の各データを、接続インターフェース217を介して商品認識装置1に送信する。商品認識装置1のCPU111は、パネル表示部12aに表示されている登録画面700の明細エリア701と客用ディスプレイ13とに、POS端末2から受信した商品名、単価、数量、金額の各データを表示させる。
【0055】
なお、商品認識装置1のCPU111が実行する前記ステップST11,ST12,ST13の処理手順は限定されるものではない。例えば、候補商品のボタン画像711,712,713を消去してから候補商品メモリ600をクリアしてもよい。あるいは、確定された商品IDをPOS端末2に送信してから、候補商品メモリ600をクリアし、候補商品のボタン画像711,712,713を消去してもよい。
【0056】
ここにCPU111は、画像インターフェース114を介して取り込まれた商品画像から商品識別コード(商品ID)の読取りを試行し、商品識別コードを読取ると、候補商品メモリ600に記憶されている商品の候補をリセットするプロセッサとして機能する。またCPU111は、商品識別コードを読取ると、ディスプレイ(パネル表示部12a)に表示されている商品の候補を消去するプロセッサとして機能する。キーボード11は、商品識別コードを入力可能な入力デバイスとして機能する。そしてCPU111は、入力デバイスを介して商品識別コードが入力されると、候補商品メモリ600に記憶されている商品の候補をリセットするプロセッサとして機能する。
【0057】
本実施形態において、商品認識装置1のオペレータは、買物カゴ6から商品Mを1品ずつ取り出す毎に、その商品Mにバーコートが付されているか否かを確認する。バーコードが付されている場合には、オペレータは、商品Mのバーコードが付されている面を読取窓1Bに翳す。バーコードが付されていない場合には、オペレータは、商品Mのいずれか1面を読取窓1Bに翳す。
【0058】
読取窓1Bに翳された商品Mは、カメラ14によって撮影される。商品認識装置1においては、カメラ14で撮影されたフレーム画像からバーコードの読取処理が実行され、バーコードが読み取られない場合には商品認識処理が実行される。そして、候補商品が認識されない場合には、次のフレーム画像が取り込まれ、バーコード読取処理と商品認識処理が実行される。
【0059】
一方、商品認識処理によって候補商品が認識された場合には、候補商品メモリ600に候補商品のデータが格納される。また、候補商品の画像がタッチパネル12に表示される。ただし、候補商品の中から商品が選択されない場合、商品認識装置1においては、次のフレーム画像が取り込まれ、バーコード読取処理と商品認識処理が実行される。
【0060】
したがって、バーコードが付されていない商品Mに対しては、オペレータが読取窓1Bに翳している間に撮影される複数のフレーム画像から候補商品が認識されて、商品Mの画像がタッチパネル12に表示される。そこでオペレータは、候補商品として商品Mが表示されたならば、その商品Mの画像にタッチする。そうすると、この商品Mの商品IDが販売商品のIDとしてPOS端末2に送信され、商品販売データが登録処理される。
【0061】
オペレータが候補商品の中から商品Mを選択すると、候補商品メモリ600がクリアされる。また、タッチパネル12に表示されていた候補商品の画像が消去される。したがって、オペレータが次の商品を買物カゴ6から取り出して読取窓1Bに翳す際には、直前の候補商品がリセットされているので、スムーズに次の商品の処理に入ることができる。
【0062】
一方、バーコードが付されている商品についても、オペレータが読取窓1Bに翳している間に撮影される複数のフレーム画像からバーコードが読み取られる。そしてこのバーコードに含まれる商品IDが販売商品のIDとしてPOS端末2に送信され、商品販売データが登録処理される。
【0063】
商品の画像からバーコードが読み取られると、候補商品メモリ600がクリアされる。また、タッチパネル12に表示されていた候補商品の画像が消去される。したがって、オペレータが次の商品を買物カゴ6から取り出して読取窓1Bに翳す際には、直前の候補商品がリセットされているので、やはりスムーズに次の商品の処理に入ることができる。
【0064】
ところで、オペレータがバーコード付きの商品を読取窓1Bに翳しているにも拘らず、バーコードが読み取られない場合がある。例えばバーコードが汚れていた場合に、このような事象が発生する。その場合、オペレータは、キーボード11を操作して商品IDを入力する。
【0065】
このように商品IDがキー入力された場合にも、商品認識装置1では、候補商品メモリ600がクリアされる。また、タッチパネル12に表示されていた候補商品の画像が消去される。したがって、オペレータが次の商品を買物カゴ6から取り出して読取窓1Bに翳す際には、直前の候補商品がリセットされているので、やはりスムーズに次の商品の処理に入ることができる。
【0066】
したがって、本実施形態の商品認識装置1によれば、商品にバーコードが付されているか否かに係らず、商品が認識されるまでに要するオペレータの負担を軽減できる効果を奏する。
【0067】
[第2の実施形態]
前記第1の実施形態では、商品認識装置1のCPU111は、先にバーコードの読取処理を実行し(ST4)、後から商品認識処理を実行する(ST6)。これらの処理は、いずれもカメラ14で撮影された同一フレームの画像を用いる。したがって、先に商品認識処理を実行し、後からバーコードの読取処理を実行してもよい。第2の実施形態は、商品認識装置1のCPU111が先に商品認識処理を実行し、後からバーコードの読取処理を実行する場合である。
【0068】
図9は、第2の実施形態において、CPU111が商品認識プログラムに従って実行する情報処理の手順を示す流れ図である。はじめに、CPU111は、タッチパネル12のパネル表示部12aに登録画面700を表示させる(ST21)。次に、CPU111は、キーボード11が操作されたか否かを確認する(ST22)。
【0069】
キー入力なしと判定した場合(ST22にてNO)、CPU111は、商品認識処理を実行する(ST24)。この商品認識処理の具体的手順は、第1の実施形態と同様である。したがって、第2の実施形態でも
図6を用い、その説明は省略する。
【0070】
商品認識処理が終了すると、CPU111は、撮影画像から商品を認識できたか否かを確認する(ST25)。商品が認識されていない場合(ST25にてNO)、CPU1111は、ステップST27の処理に進む。
【0071】
商品が認識されている場合には(ST25にてYES)、CPU111は、候補バッファのデータを類似度の大きい順に並べ替える。そしてCPU111は、類似度が1位から5位までのデータ(商品ID、商品名、画像、類似度)を選択し、候補商品メモリ600に順に登録する(ST26)。しかる後、CPU1111は、ステップST27の処理に進む。
【0072】
ステップST27では、CPU111は、バーコード読取処理を実行する。すなわちCPU111は、画像バッファに格納された画像を解析してバーコードを読み取る。バーコードを読み取ることができなかった場合(ST28にてNO)、CPU111は、候補商品メモリ600に登録された順に候補商品の画像を候補エリア703に表示させる(ST29)。そしてCPU111は、候補商品の中からいずれか1商品が選択されたか否かを確認する(ST30)。
【0073】
商品が選択されない場合(ST30にてNO)、CPU111は、ステップST22の処理に戻る。すなわちCPU111は、キーボード11が操作されたか否かを確認し、操作されていない場合には、前記ステップST23以降の処理を再度実行する。
【0074】
商品が選択された場合(ST10にてYES)、CPU111は、ステップST31〜ST33として、第1の実施形態のステップST11〜ST13と同一の処理を実行する。画像からバーコードを読み取ることができた場合(ST28にてYES)、あるいは商品IDがキー入力された場合にも(ST34にてYES)、CPU111は、ステップST31〜ST33として、第1の実施形態のステップST11〜ST13と同一の処理を実行する。したがって、第2の実施形態の商品読取装置においても、第1の実施形態の商品読取装置1と同様の作用効果を奏し得る。
【0075】
なお、本発明は、前記実施形態に限定されるものではない。
例えば前記実施形態では、商品認識装置1のCPU111が、プロセッサとしての機能を全て有する。商品認識装置1のCPU111とPOS端末2のCPU211とが、プロセッサとしての機能を分散して有してもよい。あるいは、商品認識装置1をPOS端末2に組み込んで一体的に構成し、POS端末2のCPU211がプロセッサとしての機能を有してもよい。この場合、候補商品メモリ600としての領域は、POS端末2のRAM213に確保される。
【0076】
また、前記実施形態では、商品識別コードを入力可能な入力デバイスとしてキーボード11を例示する。商品識別コードを入力可能であれば、キーボード以外の入力デバイスをキーボード11の代わりに用いてもよい。あるいは、ハンディ式のバーコードスキャナを入力デバイスとして用いることも可能である。
【0077】
また、前記実施形態は、装置内部のプログラム記憶部であるROM112に発明の機能を実現させる制御プログラムが予め記録されているものとした。しかしこれに限らず、同様のプログラムがネットワークから装置にダウンロードされてもよい。あるいは、記録媒体に記録された同様のプログラムが、装置にインストールされてもよい。記録媒体は、CD−ROM,メモリカード等のようにプログラムを記憶でき、かつ装置が読み取り可能であれば、その形態は問わない。また、プログラムのインストールやダウンロードにより得る機能は、装置内部のOS(オペレーティング・システム)等と協働してその機能を実現させるものであってもよい。また、本実施形態のプログラムを、通信機能を有する携帯電話やいわゆるPDAのような携帯情報端末に組み込んで、その機能を実現させるものであってもよい。
【0078】
この他、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[1]カメラによって撮影された商品画像を取り込む画像インターフェースと、前記画像インターフェースを介して取り込まれた前記商品画像から認識される商品の候補を記憶するメモリと、前記画像インターフェースを介して取り込まれた前記商品画像から商品識別コードの読取りを試行し、前記商品識別コードを読取ると、前記メモリに記憶されている商品の候補をリセットするプロセッサと、を具備したことを特徴とする商品認識装置。
[2]前記メモリに記憶されている商品の候補を表示するディスプレイ、をさらに具備し、前記プロセッサはさらに、前記商品識別コードを読取ると、前記ディスプレイに表示されている商品の候補を消去することを特徴とする付記[1]記載の商品認識装置。
[3]前記商品識別コードを入力可能な入力デバイス、をさらに具備し、前記プロセッサはさらに、前記入力デバイスを介して前記商品識別コードが入力されると、前記メモリに記憶されている商品の候補をリセットすることを特徴とする付記[1]または[2]記載の商品認識装置。
[4]カメラによって撮影された商品画像を取り込む画像インターフェースと、前記画像インターフェースを介して取り込まれた前記商品画像から認識される商品の候補を記憶するメモリとを備えたコンピュータに、前記画像インターフェースを介して取り込まれた前記商品画像から商品識別コードの読取りを試行する機能と、前記画像インターフェースを介して取り込まれた前記商品画像からその画像に含まれる商品の候補を認識する機能と、前記商品画像から認識された商品の候補を前記メモリに登録する機能と、商品識別コードの読取りを試行した結果、前記商品識別コードを読取ると、前記メモリに記憶されている商品の候補をリセットする機能と、を実現させるための商品認識プログラム。
[5]当該コンピュータに、商品識別コードの読取りを試行した結果、前記商品識別コードを読取ると、前記メモリに記憶されている商品の候補を表示するディスプレイに表示されている商品の候補を消去する機能をさらに実現させるための付記[4]記載の商品認識プログラム。