(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024153366
(43)【公開日】2024-10-29
(54)【発明の名称】商品特定システム
(51)【国際特許分類】
G07G 1/00 20060101AFI20241022BHJP
G07G 1/12 20060101ALI20241022BHJP
G07G 3/00 20060101ALI20241022BHJP
G06Q 30/06 20230101ALI20241022BHJP
【FI】
G07G1/00 311Z
G07G1/12 301E
G07G3/00
G06Q30/06
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023067222
(22)【出願日】2023-04-17
(71)【出願人】
【識別番号】000003562
【氏名又は名称】東芝テック株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】鈴木 勇貴
【テーマコード(参考)】
3E142
5L030
5L049
【Fターム(参考)】
3E142CA20
3E142DA11
3E142EA02
3E142EA04
3E142GA22
3E142GA35
3E142GA41
3E142JA01
3E142KA08
5L030BB72
5L049BB72
(57)【要約】
【課題】AIによる画像認識を利用して信頼性の高い商品登録を可能とする商品特定システムを提供しようとするものである。
【解決手段】特定部によって、カートに設けられた撮像部により取得された画像に基づいて、カートに投入された商品を特定する商品特定システムは、撮像部により取得された画像に含まれる商品の個数が規定の上限数を超えるとき、報知部により、特定部による商品の特定精度が低いことを報知する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
カートに設けられた撮像部と、
前記撮像部により取得された画像に基づいて、前記カートに投入された商品を特定する特定部と、
前記撮像部により取得された前記画像に含まれる商品の個数が規定の上限数を超えるとき、前記特定部による前記商品の特定精度が低いことを報知する報知部と、
を備える、商品特定システム。
【請求項2】
前記報知部は、更に、前記上限数を超えて投入された前記商品を前記カートから取り出し、前記上限数を超えない個数で再度前記商品を投入することを促すメッセージを出力する、
請求項1に記載の商品特定システム。
【請求項3】
前記撮像部は、前記画像を繰り返し取得し、
前記特定部は、前記撮像部により繰り返し取得された前記画像の間に変化が有ったとき、前記商品の特定を開始する、
請求項1に記載の商品特定システム。
【請求項4】
前記カートを利用するユーザによる確認操作を受ける操作部を更に備え、
前記報知部は、前記操作部が前記確認操作を受け付けたとき、前記報知を終了する、
請求項1乃至3の何れかに記載の商品特定システム。
【請求項5】
前記報知部は、更に、前記報知の開始後に前記特定部により商品が特定されたとき、前記報知を終了する、
請求項4に記載の商品特定システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、商品特定システムに関する。
【背景技術】
【0002】
ショッピングカートを装備した小売店向けに、カートPOS(Point Of Sales)システムが提案されている。このようなカートPOSにはショッピングカートにタッチパネル、スキャナ等を備えた情報端末を設ける。ショッピングカートを使用する客であるユーザは、購入しようとする商品、いわゆる購買商品をショッピングカートに載せる際に、その購買商品の識別コードをスキャナで読み取らせて商品登録を行う。このように、カートPOSシステムは、ユーザ自身が買い物をしながら商品登録を行うので、会計場、いわゆるレジの混雑を緩和できる。
【0003】
近年のAI(人工知能)の発展に伴い、このカートPOSシステムにおいても、AIの利用が試みられている。これは、フリクションレスカート、AIカート、スマートカート、インテリジェントカート、などと呼称されるもので、ユーザがカートに商品を投入するだけで、AIによる商品パッケージの画像認識により、カートに投入された商品の種別を自動的に識別し特定して、商品登録を自動で実行する(例えば、特許文献1を参照)。これにより、ユーザは、購買商品の識別コードをスキャナで読み取らせる必要がなくなる。
【0004】
このようなAIを利用したカートPOSシステムにおいては、例えば1つの商品をカートに投入した場合、比較的高い確率で商品登録することが可能である。
【0005】
しかしながら、1つより多い数の商品を同時に、つまり一緒に、カートに投入する場合には、商品の画像による識別精度つまり商品を特定する精度が極端に落ちるという課題があった。そのため、商品登録の信頼度が十分でない場合が有った。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明の実施形態が解決しようとする課題は、AIによる画像認識を利用して信頼性の高い商品登録を可能とする商品特定システムを提供しようとするものである。
【課題を解決するための手段】
【0008】
一実施形態において、商品特定システムは、撮像部と、特定部と、報知部と、を備える。撮像部は、カートに設けられる。特定部は、撮像部により取得された画像に基づいて、カートに投入された商品を特定する。報知部は、撮像部により取得された画像に含まれる商品の個数が規定の上限数を超えるとき、特定部による商品の特定精度が低いことを報知する。
【図面の簡単な説明】
【0009】
【
図1】第1実施形態に係る商品特定システムを適用したカートPOSシステムの全体構成図。
【
図2】モバイルコントローラの情報端末テーブルの主要なデータ構造を示す模式図。
【
図4】ショッピングカートへの情報端末の取り付け位置を示す模式図。
【
図5】情報端末における情報処理装置のプロセッサが、端末プログラムに従って実行する主要な情報処理の手順を示す流れ図の第1の部分を示す図。
【
図6】情報端末における情報処理装置のプロセッサが、端末プログラムに従って実行する主要な情報処理の手順を示す流れ図の第2の部分を示す図。
【
図7】第2実施形態に係るモバイルコントローラの要部回路構成を示すブロック図。
【
図8】モバイルコントローラのプロセッサが、カート制御プログラムに従って実行する主要な情報処理の手順を示す流れ図の第1の部分を示す図。
【
図9】モバイルコントローラのプロセッサが、カート制御プログラムに従って実行する主要な情報処理の手順を示す流れ図の第2の部分を示す図。
【発明を実施するための形態】
【0010】
以下、商品特定システムの実施形態について、図面を用いて説明する。なお、以下の実施形態は、カートPOSシステムに適用した場合である。
【0011】
[第1実施形態]
図1は、第1実施形態に係る商品特定システムを適用したカートPOSシステム1の全体構成図である。カートPOSシステム1は、店舗サーバ2、カートコントローラ3、アクセスポイント(
図1ではAPと示す)4及び会計機5を含む。店舗サーバ2、カートコントローラ3、アクセスポイント4及び会計機5は、LAN(Local Area Network)又は無線LAN等のネットワーク6に接続されている。カートPOSシステム1は、アクセスポイント4を介してネットワーク6に接続される複数の情報端末7を含む。
【0012】
情報端末7は、購買者である客が、購買商品の登録に係るデータの入力をセルフで行うことを可能とした機器である。情報端末7は、客が店舗内で買い物をする際に利用するショッピングカート8に設けられている。以下では、ショッピングカート8を単にカート8と称する。複数のカート8に、それぞれ情報端末7が設けられている。カート8は、そのカート8を利用する客の購買商品を搬送する搬送体の一例である。
【0013】
情報端末7は、カート8に設けられている。情報端末7は購買商品の登録に係る操作のためのユーザインタフェースとして機能する情報処理端末である。情報端末7は、無線ユニットを備えている。情報端末7は、アクセスポイント4と無線通信を行う。アクセスポイント4は、ネットワーク6に繋がる各機器、すなわち店舗サーバ2、カートコントローラ3及び会計機5と、情報端末7との通信を中継する。アクセスポイント4は、
図1では1台のみ示しているが、店舗の規模等により2台以上あってもよい。
【0014】
会計機5は、購買商品の会計を店員若しくは客が行うことを可能とした機器である。会計機5は、周知のセルフ式POS端末である。会計機5は、周知の対面式POS端末であってもよい。会計機5の台数は、特に制限されない。
【0015】
店舗サーバ2は、店舗業務を支援する。その支援のために店舗サーバ2は、商品データベース(DB)21、会員データベース(DB)22等を管理する。
【0016】
商品データベース21は、店舗で販売される商品毎に、商品データを記述した商品レコードを保存する。商品レコードは、商品コード、価格、商品名等を含む。商品コードは、商品の識別コードである。売上データベースは、商品、部門、時間帯、日付、週、月等の項目毎に売上データを記述した売上レコードを保存する。売上データは、売上点数、売上金額等を含む。
【0017】
また、本実施形態においては、商品データベース21は、当該商品データベース21に保存された商品をAIにより認識するための、予め学習された学習データ211を記憶している。この学習データ211は、店舗で販売される商品毎学習データの集合であり、商品毎学習データは、例えば商品コードに対応付けて、学習データ211に組み込まれている。学習データ211は、店舗で販売される商品の追加や入れ替えに応じた商品データベース21の更新に合わせて、当該商品に関する商品毎学習データを更新させることができる。各商品の商品毎学習データは、当該商品の提供元が作成して店舗に提供するものとしてもよいし、店舗において独自に作成してもよい。学習データ211は、上記の学習データの他に、人物の手のデータなど、商品以外のデータを学習させてもよい。
【0018】
会員データベース22は、会員毎に会員データを記述した会員レコードを保存する。会員データは、会員ID、氏名、性別、メールアドレス等を含む。会員IDは、各会員を個々に識別するために会員毎に設定された一意の会員番号等のコードである。会員は、会員IDが記録された記録媒体を所有する。記録媒体は、例えば磁気カード、接触式IC(Integrated Circuit)カード、非接触式ICカード、スマートフォン等である。
【0019】
なお、店舗サーバ2は、特に図示はしていないが、更に、会員決済データベースを管理するようにしてもよい。会員決済データベースは、会員毎に、代金の支払いに必要なデータを記述した会員決済レコードを保存する。会員決済レコードは、会員IDの他、代金の支払いに必要なデータとして電子マネー識別コードと電子マネーユーザIDを含む。本実施形態に係るカートPOSシステム1は、会員が会計機5を使用しない場合の代金支払い方法を電子マネーの1種類に制限する。電子マネー識別コードは、会員IDで識別される会員が代金支払いに使用するものとして事前に登録した電子マネーの識別コードである。電子マネーユーザIDは、電子マネーセンタEMCが電子マネーのユーザを識別するための識別コードであり、電子マネーセンタEMCによって付与される。会員は、電子マネーによる支払を可能とするために、例えば会員登録の際など事前に、これら電子マネー識別コードと電子マネーIDを登録する。なお、この電子マネーについての事前登録が行われていない場合、会員決済レコードの電子マネー識別コードと電子マネーIDには、NULL又は0000が記憶されるものとする。また、このように電子マネーを使用可能とする場合、店舗サーバ2は、通信サーバの機能を備える、又は、カートPOSシステム1が通信サーバを含む。店舗サーバ2又は通信サーバは、会計機5又はカートコントローラ3と電子マネーによる決済を支援する電子マネーセンタとの間で、インターネット又は電子マネー専用ネットワーク等の外部通信ネットワークを介して行われるデータ通信処理を支援する。
【0020】
カートコントローラ3は、情報端末7と協働することで、その情報端末7がPOS端末として機能しているように見せかけるための支援を行う。カートコントローラ3は、情報端末7それぞれに対応する情報端末テーブル31を有する。
図2は、情報端末テーブル31の一例を示す模式図である。
図2に示すように、情報端末テーブル31は、端末ID領域311、会員ID領域312、1乃至複数の購買商品データ領域313及び小計額領域314を有する。端末ID領域311は、当該情報端末テーブル31が対応する情報端末7を一意に識別するための端末番号等のコードである端末IDを記憶する。会員ID領域312は、会員IDを記憶する。購買商品データ領域313は、客が情報端末7で購入しようとする商品を登録する毎に、当該商品についての購買商品データを記憶する。購買商品データは、客が購入する購買商品の商品コード、単価、販売点数(個数)、商品名、販売金額、税額等からなる。小計額領域314は、購買商品データ領域313に記憶されている購買商品データに基づいて算出される、客が購入する購買商品全てについての販売金額と税額の合計金額を示す金額データである。これは、客が購入しようとする商品の登録操作を行う毎に、更新されることができる。
【0021】
図3は、情報端末7の要部回路構成を示すブロック図である。また、
図4は、カート8への情報端末7の取り付け位置を示す模式図である。情報端末7は、情報処理装置71、リーダ72及びカメラ73を含む。情報処理装置71は、専用の装置であってもよいし、タブレット型コンピュータ等の汎用の装置であってもよい。情報処理装置71は、プロセッサ711、メインメモリ712、補助記憶デバイス713、無線ユニット714、タッチパネル715、スピーカ716及びシステム伝送路717を備える。システム伝送路717は、アドレスバス、データバス、制御信号線等を含む。情報処理装置71は、システム伝送路717に、プロセッサ711、メインメモリ712、補助記憶デバイス713、無線ユニット714、タッチパネル715及びスピーカ716を接続する。リーダ72及びカメラ73は、図示しないインタフェースを介して、システム伝送路717に接続される。情報処理装置71では、プロセッサ711、メインメモリ712及び補助記憶デバイス713と、これらを接続するシステム伝送路717とによってコンピュータが構成される。
【0022】
プロセッサ711は、上記コンピュータの中枢部分に相当する。プロセッサ711は、オペレーティングシステム又はアプリケーションプログラムに従って、情報処理装置71としての各種の機能を実現するべく各部を制御する。プロセッサ711は、例えばCPU(Central Processing Unit)であるが、これに限定されない。プロセッサ711は、マルチコア/マルチスレッドのものであって良く、複数の処理を並行して実行することができる。また、プロセッサ711は、AIに特化したAIチップを含むことができる。さらに、プロセッサ711は、GPU(Graphics Processing Unit)、ASIC(Application Specific Integrated Circuit)、FPGA(field-programmable gate array)、DSP(Digital Signal processor)、等の集積回路を含む、他の多様な形式で実現されてもよい。
【0023】
メインメモリ712は、上記コンピュータの主記憶部分に相当する。メインメモリ712は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ712は、不揮発性のメモリ領域ではオペレーティングシステム又はアプリケーションプログラムを記憶する。メインメモリ712は、プロセッサ711が各部を制御するための処理を実行する上で必要なデータを不揮発性又は揮発性のメモリ領域で記憶する場合もある。メインメモリ712は、揮発性のメモリ領域を、プロセッサ711によってデータが適宜書き換えられるワークエリアとして使用する。不揮発性のメモリ領域は、例えばROM(Read Only Memory)である。揮発性のメモリ領域は、例えばRAM(Random Access Memory)である。
【0024】
補助記憶デバイス713は、上記コンピュータの補助記憶部分に相当する。例えばEEPROM(登録商標)(Electric Erasable Programmable Read-Only Memory)、HDD(Hard Disc Drive)、或いはSSD(Solid State Drive)等が補助記憶デバイス713となり得る。補助記憶デバイス713は、プロセッサ711が各種の処理を行う上で使用するデータ、或いはプロセッサ711での処理によって作成されたデータ等を保存する。補助記憶デバイス713は、上記のアプリケーションプログラムを記憶する場合もある。本実施形態では、アプリケーションプログラムとして、情報処理装置71、リーダ72及びカメラ73を実施形態に係る情報端末7として機能させるための端末プログラム7131を保存する。端末プログラム7131は、商品の同時投入数の上限値を規定する投入数上限値データ71311を含む。なお、端末プログラム7131は、メインメモリ712に記憶されてもよい。また、補助記憶デバイス713は、店舗サーバ2の商品データベース21に記憶されている店舗で販売される商品それぞれについて、AIによる商品認識のために学習された学習データ7132を記憶する。この学習データ7132は、店舗サーバ2の商品データベース21が含む学習データ211のコピーであってよい。この学習データ211を学習データ7132としてコピーするタイミングは、当該情報処理装置71の毎回の起動時といった特定のタイミングとしてもよいし、学習データ211の更新時に店舗サーバ2から各情報処理装置71に対して配信されるというように任意のタイミングであってもよい。
【0025】
無線ユニット714は、アクセスポイント4との間で無線通信プロトコルに従いデータの無線通信を行う。
【0026】
タッチパネル715は、情報端末7の入力デバイスと表示デバイスとを兼ね備えた機器である。タッチパネル715は、プロセッサ711から出力された画像データに基づく画像を表示し、また、表示された画像に対するタッチ位置を検出して、そのタッチ位置情報をプロセッサ711に出力する。
図4に示すように、情報処理装置71は、カート8を押しながら移動する客が、このタッチパネル715の表示を見たり、タッチ操作をしたりできるような位置及び向きに、カート8に取り付けられている。
【0027】
スピーカ716は、プロセッサ711から出力された音データに基づく音を再生する。再生する音は、確認音、アラート警報音等を含む。
【0028】
リーダ72は、記録媒体に記録されたデータを読み取り、読み取ったデータをプロセッサ711に出力する。リーダ72は、記録媒体が磁気カードの場合は磁気カードリーダであり、接触式ICカードの場合にはICカードリーダである。非接触式ICカード又はスマートフォン等のようにRFID(Radio Frequency Identification)を使用した記録媒体の場合には、RFIDリーダがリーダ72として使用される。このリーダ72のカート8への取付位置は特に規定しない。例えば、情報処理装置71の横に取り付けることができる。
【0029】
カメラ73は、
図4に示されるように、カート8の籠受部81を上方から撮影できるように、カート8に設けられている。カメラ73は、カート8の籠受部81又は籠受部81に置かれた籠に対する商品の投入又は返却を監視するためのものである。カメラ73には、照明用のLED(Light Emitting Diode)ランプ731が据え付けられることができる。カメラ73及びLEDランプ731の動作状態は、プロセッサ711がシステム伝送路717を介して制御可能となっている。なお、
図3及び
図4では、カメラ73を1台のみ示しているが、2台以上あってもよい。例えば、4台のカメラ73を、カート8の籠受部81の4辺或いは4隅に配置しても構わない。カメラ73の種類によっては、明るさが十分に確保されている場合があるので、LEDランプ731を据え付けないで運用しても構わない。
【0030】
また、情報端末7は、
図3に破線で示すように、システム伝送路717に図示しないインタフェースを介して接続され、プロセッサ711によって動作状態が制御されるパトランプ74を更に備えていてもよい。パトランプ74は、当該カート8を利用している客及び付近の店員に対して警告を報知するためのランプである。
【0031】
図5及び
図6は、情報端末7における情報処理装置71のプロセッサ711が、端末プログラム7131に従って実行する主要な情報処理の手順を示す流れ図である。
【0032】
以下、この流れ図を用いて、客がカート8の情報端末7を使用して購買商品の登録から決済までをセルフで行う場合のカートPOSシステム1の主要な動作について説明する。なお、以下に説明する動作は一例である。同様な結果が得られるのであれば、その手順は特に限定されるものではない。またここでは、リーダ72により記録媒体に記録されたデータを読み取り、既にログインが行われているものとする。すなわち、当該情報端末7に対応する、カートコントローラ3の情報端末テーブル31の会員ID領域312には、既に客の記録媒体から読み取った会員IDが記憶されている。
【0033】
情報処理装置71のプロセッサ711は、ACT11として、カメラ73のLEDランプ731を点灯させて、カメラ73により画像を撮影させる。撮影された画像の画像データは、メインメモリ712に記憶される。なお、メインメモリ712には、この画像データを複数フレーム分記憶する領域が確保され、プロセッサ711は、新しい画像データをその領域に記憶する際、最も古い画像データを消去して確保した領域に、その新しい画像データを記憶するものとする。その後、プロセッサ711は、ACT12へと進む。
【0034】
プロセッサ711は、ACT12として、メインメモリ712に記憶されている最新の画像データから、画像内の移動している商品を物体検出する。具体的には、プロセッサ711は、最新の画像中の物体に対して物体検出を行い、バウンディングボックスと称される矩形領域を設定し、補助記憶デバイス713に記憶された学習データ7132に基づいて、画像内の物体を検出する。検出された物体と画像データ中の当該物体の検出位置とは、メインメモリ712に記憶された画像データに関連付けて、メインメモリ712に記憶される。その後、プロセッサ711は、ACT13へと進む。
【0035】
プロセッサ711は、ACT13として、メインメモリ712に記憶されている最新の画像データの物体及び検出位置を古い画像データの物体及び検出位置と比較することで、変化が有るか否か判断する。カート8の籠受部81又は籠受部81に置かれた籠に対して商品が投入されたり、籠受部81又は籠から商品が取り出されるつまり商品の返却が有ったりすると、その投入又は返却のために移動中の商品がカメラ73により撮影される。よって、商品が投入又は返却された際には、最新の画像データの物体及び検出位置と古い画像データの物体及び検出位置との間には差異が発生するので、プロセッサ711は、変化が有ると判断することができる。変化が無いと判断した場合、プロセッサ711は、ACT13においてNOと判定し、上記ACT11へと進む。また、変化が有ると判断した場合には、プロセッサ711は、ACT13においてYESと判定し、ACT14へと進む。
【0036】
以上のACT11,ACT12,ACT13でなるループにより画像撮影を繰り返していく。そして、撮影した画像に変化が有ると、プロセッサ711は、ACT14へと進む。
【0037】
プロセッサ711は、ACT14として、画像中の移動している商品を認識する。具体的には、プロセッサ711は、補助記憶デバイス713に記憶された学習データ7132に基づいて、ACT12で検知してメインメモリ712に記憶している、バウンディングボックス内の物体に対して画像認識を行い、その物体が何れの商品であるのかを特定する。その後、プロセッサ711は、ACT15へと進む。
【0038】
プロセッサ711は、ACT15として、商品が特定できたか否か判断する。画像に写っている商品の部分が少ないと、その商品が何であるのか特定することができない。商品が特定できなかったと判断した場合には、プロセッサ711は、ACT15においてNOと判定し、上記ACT11へと進む。本実施形態では、カメラ73の画角と、ACT11,ACT12,ACT13でなるループで繰り返される画像の撮影周期及びACT11,ACT12,ACT13,ACT14,ACT15でなるループで繰り返される画像の撮影周期は、予め規定された最大サイズの商品が自由落下した場合に、その全体が写った画像を少なくとも1枚撮影できるように設定されている。勿論、複数枚の画像を合成することで商品全体が写った画像を生成した上で商品認識をするような構成としてもよい。商品が特定できたと判断した場合、プロセッサ711は、ACT15においてYESと判定し、ACT16へと進む。
【0039】
プロセッサ711は、ACT16として、カート8の籠受部81又は籠受部81に置かれた籠に商品が投入されたのか否か判断する。例えば、プロセッサ711は、最新の画像と過去の画像に写っている同一商品の移動方向により、その商品が投入されたのか取り出されたのか判断することができる。或いは、図示しない重量計をショッピングカート8の籠受部81の底面に配置しておき、重量が増加したのか減少したのかにより、商品の投入/取り出しを検出することも可能である。商品が投入されたのではない、つまり商品が取り出されたと判断した場合、プロセッサ711は、ACT16においてNOと判定し、ACT21へと進む。また、商品が投入されたと判断した場合、プロセッサ711は、ACT16においてYESと判定し、ACT17へと進む。
【0040】
プロセッサ711は、ACT17として、上記ACT14で認識し特定した商品の個数である商品投入数が、補助記憶デバイス713に投入数上限値データ71311として記憶されている商品の同時投入数上限値よりも少ないか否か判断する。本実施形態では、この商品の同時投入数上限値は「2」である。すなわち、このACT17は、複数個の商品が同時投入されていないかどうか判断するものである。商品投入数が同時投入数上限値より少ない、つまり投入された商品が1個であれば、商品は精度良く認識し特定される。これに対して、複数個の商品が同時投入されると、商品を特定する精度が極端に落ちる。そこで、このACT17において、プロセッサ711は、商品の投入数が同時投入数上限値を超えるか否か、つまり複数個の使用が投入されたか否かを判断するようにしている。なお、この商品の投入数は、画像認識に使用した画像に設定されたバウンディングボックスの数、つまりACT12で検知した物体の数とすることができる。商品投入数が同時投入数上限値以上である、つまり複数個の商品が投入されたと判断した場合、プロセッサ711は、ACT17においてNOと判定し、ACT24へと進む。また、商品投入数が同時投入数上限値より少ない、つまり投入された商品が1個であると判断した場合、プロセッサ711は、ACT17においてYESと判定し、ACT18へと進む。
【0041】
プロセッサ711は、上記ACT17において商品投入数が同時投入数上限値より少ない、つまり投入された商品が1個であると判断した場合、精度良く商品を特定できたと判定する。よって、この場合には、プロセッサ711は、ACT18として、無線ユニット714によりアクセスポイント4を介してカートコントローラ3へ商品投入通知を送信する。商品投入通知は、当該情報処理装置71を含む情報端末7に対して割り振られた端末IDと、上記ACT14で認識し特定した商品を示す商品コードと、を含むことができる。その後、プロセッサ711は、ACT19へと進む。
【0042】
商品投入通知を受信したカートコントローラ3は、その投入商品を登録する。すなわち、カートコントローラ3は、商品投入通知に含まれる商品コードにより商品情報を店舗サーバ2に問合せ、店舗サーバ2が管理する商品データベース21に記憶されている商品情報を取得する。そして、その取得した商品情報を、商品投入通知に含まれる端末IDを有する情報端末テーブル31の購買商品データ領域313に、新たな購買商品データとして追加記憶する。そして、カートコントローラ3は、購買商品データ領域313に記憶されている購買商品データに基づいて、登録されている商品を報知するための登録商品画面を作成し、その登録商品画面を商品投入通知の送信元へ送信する。
【0043】
プロセッサ711は、ACT19として、無線ユニット714により、アクセスポイント4を介してカートコントローラ3から送信されてきた登録商品画面を受信する。その後、プロセッサ711は、ACT20へと進む。
【0044】
プロセッサ711は、ACT20として、タッチパネル715により、カート8を利用している客に、受信した登録商品画面を提示する。その後、プロセッサ711は、上記ACT11へと進む。
【0045】
このようにして、情報端末7は、カート8の籠受部81又は籠受部81に置かれた籠に商品が1つ投入されると、画像認識によりその商品が何であるのかを特定し、特定した商品を示す商品コードを含む商品投入通知をカートコントローラ3に送信することで、カートコントローラ3に当該商品を購買商品として登録させることができる。
【0046】
また、プロセッサ711は、上記ACT16において商品が取り出されたと判断した場合、ACT21として、無線ユニット714により、アクセスポイント4を介してカートコントローラ3へ商品返却通知を送信する。商品返却通知は、当該情報処理装置71を含む情報端末7に対して割り振られた端末IDと、上記ACT14で認識し特定した商品を示す商品コードと、を含むことができる。その後、プロセッサ711は、ACT22へと進む。
【0047】
商品返却通知を受信したカートコントローラ3は、その返却商品を、登録されている購買商品から削除する。すなわち、カートコントローラ3は、商品返却通知に含まれる端末IDを有する情報端末テーブル31の購買商品データ領域313に記憶されている、商品返却通知に含まれる商品コードの購買商品データを、その購買商品データ領域313から削除する。そして、カートコントローラ3は、購買商品データ領域313に記憶されている購買商品データに基づいて、登録されている商品を報知するための登録商品画面を作成し、その登録商品画面を商品投入通知の送信元へ送信する。
【0048】
プロセッサ711は、ACT22として、無線ユニット714により、アクセスポイント4を介してカートコントローラ3から送信されてきた登録商品画面を受信する。その後、プロセッサ711は、ACT23へと進む。
【0049】
プロセッサ711は、ACT23として、タッチパネル715により、カート8を利用している客に、受信した登録商品画面を提示する。その後、プロセッサ711は、上記ACT11へと進む。
【0050】
このようにして、情報端末7は、カート8の籠受部81又は籠受部81に置かれた籠から商品が取り出されると、画像認識によりその商品が何であるのかを特定し、特定した商品を示す商品コードを含む商品返却通知をカートコントローラ3に送信することで、カートコントローラ3に当該商品を購買商品から削除させることができる。一般に、返却商品は1個ずつ取り出されて商品棚に戻されるため、商品投入時のような個数の判定は行っていない。もちろん、商品返却時にも個数判定を行うようにしても構わない。
【0051】
また、プロセッサ711は、上記ACT17において商品投入数が同時投入数上限値以上である、つまり複数個の商品が投入されたと判断した場合、ACT24として、アラートを発報する。このアラートの発報手法は、特に限定するものではないが、例えば、カメラ73に備え付けの照明用のLEDランプ731を点滅させてもよいし、スピーカ716により特定の報知音を再生させてもよく、或いはそれら両方を採用してもよい。また、カート8がパトランプ74を備える場合には、それらに代えて又はそれらと共に、そのパトランプ74を点灯さるようにしてもよい。その後、プロセッサ711は、ACT25へと進む。
【0052】
プロセッサ711は、ACT25として、タッチパネル715により、カート8を利用している客に、再度商品の投入を促すメッセージを提示する。このメッセージは、例えば、タッチパネル715に表示されている登録商品画面に重畳表示される。提示される再度商品の投入を促すメッセージとしては、例えば、[投入した商品を戻してください。取り出し後、OKボタンを押して、商品を一点ずつ投入してください。]等の具体的な行動を示すことが望ましい。プロセッサ711は、この再度商品の投入を促すメッセージと共にOKボタンの画像もタッチパネル715に表示させる。その後、プロセッサ711は、ACT26へと進む。
【0053】
プロセッサ711は、ACT26として、タッチパネル715に表示しているOKボタンが押下されたか否か判断する。すなわち、プロセッサ711は、タッチパネル715に表示されたOKボタンの画像に対する位置を客がタッチ操作したか否か判断する。OKボタンの画像に対する位置を客がタッチ操作したとき、プロセッサ711は、OKボタンが押下されたと判断する。OKボタンが押下されたと判断した場合、プロセッサ711は、ACT26においてYESと判定し、ACT33へと進む。また、OKボタンが押下されていないと判断した場合には、プロセッサ711は、ACT26においてNOと判定し、ACT27へと進む。
【0054】
プロセッサ711は、ACT27として、上記ACT11と同様に、カメラ73により画像を撮影し、撮影された画像の画像データを、メインメモリ712に記憶する。その後、プロセッサ711は、ACT28へと進む。
【0055】
プロセッサ711は、ACT28として、上記ACT12と同様に、メインメモリ712に記憶されている最新の画像データから、画像内の移動している商品を物体検出する。検出された物体と画像データ中の当該物体の検出位置とは、メインメモリ712に記憶された画像データに関連付けて、メインメモリ712に記憶される。その後、プロセッサ711は、ACT29へと進む。
【0056】
プロセッサ711は、ACT29として、上記ACT13と同様に、メインメモリ712に記憶されている最新の画像データの物体及び検出位置を古い画像データの物体及び検出位置と比較することで、変化が有るか否か判断する。変化が無いと判断した場合、プロセッサ711は、ACT29においてNOと判定し、上記ACT26へと進む。また、変化が有ると判断した場合には、プロセッサ711は、ACT29においてYESと判定し、ACT30へと進む。
【0057】
プロセッサ711は、ACT30として、上記ACT14と同様に、画像中の移動している商品を認識して特定する。その後、プロセッサ711は、ACT31へと進む。
【0058】
プロセッサ711は、ACT31として、上記ACT15と同様に、商品が特定できたか否か判断する。商品が特定できなかったと判断した場合には、プロセッサ711は、ACT31においてNOと判定し、上記ACT26へと進む。商品が特定できたと判断した場合、プロセッサ711は、ACT31においてYESと判定し、ACT32へと進む。
【0059】
プロセッサ711は、ACT32として、上記ACT16と同様に、カート8の籠受部81又は籠受部81に置かれた籠に商品が投入されたのか否か判断する。商品が投入されたと判断した場合には、プロセッサ711は、ACT32においてYESと判定し、ACT34へと進む。また、商品が投入されたのではない、つまり商品が取り出されたと判断した場合、プロセッサ711は、ACT32においてNOと判定し、上記ACT26へと進む。
【0060】
このACT32における商品が取り出されたという判断は、タッチパネル715に提示された所定のメッセージに従って、客が複数投入した商品を取り出した動作により生じたものと考えるのが妥当である。別の商品が取り出される可能性は小さい。そのため、プロセッサ711は、上記ACT21のようなカートコントローラ3への商品返却通知の送信を行うことなく、上記ACT26へと進む。こうして、商品を返却した後、客はタッチパネル715に提示された所定のメッセージに従って、OKボタンを押下する。これにより、プロセッサ711は、上記ACT26においてOKボタンが押下されたと判断し、ACT33へと進む。
【0061】
プロセッサ711は、ACT33として、LEDランプ731の点滅などのアラートの発報を終了すると共に、タッチパネル715に提示している、再度商品の投入を促すメッセージを消去する。その後、プロセッサ711は、上記ACT11へと進み、前述した次の商品の投入又は取り出しの判別動作を繰り返す。
【0062】
また、上記ACT32における商品が投入されたという判断は、タッチパネル715に提示された所定のメッセージに従って、客が複数投入した商品を取り出したが、OKボタンを押下することなく、その取り出した商品を投入したと推定される。よって、この場合には、プロセッサ711は、ACT34として、LEDランプ731の点滅などのアラートの発報を終了すると共に、タッチパネル715に提示している、再度商品の投入を促すメッセージを消去する。その後、プロセッサ711は、上記ACT17へと進み、前述した投入された商品の投入数の判断を行うこととなる。
【0063】
以上のようにして、購買商品の登録及び削除が行われる。そして、会計を行う際には、商品登録画面における会計ボタンの押下により、プロセッサ711は、会計処理に移行することができる。この会計処理については、実施形態の商品特定システムに係わる動作では無いので、以下、簡単に説明する。特に図示はしないが、会計処理では、例えば、プロセッサ711は、当該情報処理装置71を含む情報端末7に対して割り振られた端末IDに基づいてバーコードを生成し、そのパーコードをタッチパネル715に表示させる。会計機5は、そのバーコードを読み取り、端末IDを含む取引問合せコマンドをカートコントローラ3に送信する。カートコントローラ3は、その取引問合せコマンドに含まれる端末IDに対応する情報端末テーブル31の購買商品データ領域313に登録されている購買商品データに基づいて決済データを生成し、その決済データを取引問合せコマンドの送信元の会計機5に返信する。を受信する。会計機5は、その決済データに基づいて、購買商品の決済を行う。
【0064】
また、カートPOSシステム1が電子マネーによって決済可能なシステムとして構成した場合には、プロセッサ711は、無線ユニット714により、アクセスポイント4を経由してカートコントローラ3に端末IDを含む電子決済コマンドを送信する。カートコントローラ3は、電子決済コマンドに含まれる端末IDに対応する情報端末テーブル31の購買商品データ領域313に登録されている購買商品データに基づいて決済データを生成し、その決済データを同じく情報端末テーブル31の会員ID領域312に記憶された会員IDと共に店舗サーバ2に送信する。店舗サーバ2は、決済データと共に送られてきた会員IDにより、図示しない会員決済データベースにおける会員決済レコードから電子マネーユーザIDを取得し、この電子マネーユーザIDを使用して電子マネーセンタEMCとの間で、決済データに基づく決済を実施する。
【0065】
以上のように、本実施形態に係る商品特定システムにおいて、情報端末7のカメラ73は、カート8に設けられた撮像部として機能する。また、情報端末7の情報処理装置71が備えるプロセッサ711は、カメラ73により取得された画像に基づいて、具体的には、AIによる画像認識を利用して、カート8に投入された商品を特定する特定部、及び、カメラ73により取得された画像に含まれる商品の個数が、投入数上限値データ71311として記憶された規定の上限数を超えるとき、カメラ73に据え付けられたLEDランプ731及び/又は情報処理装置71が備えるスピーカ716により、また、情報端末7がパトランプ74を備える場合にはそのパトランプ74により、特定した商品の特定精度が低いことを示すアラートを報知する報知部、として機能する。
このように、本実施形態に係る商品特定システムでは、商品の画像による識別精度つまり商品を特定する精度が極端に落ちる場合には、そのことを商品をカート8に投入したユーザに報知することができる。よって、この報知を受けたユーザは、その商品を正しく特定させるために、一旦その商品を取り出して再度カート8に投入することができる。従って、AIによる画像認識を利用して信頼性の高い商品登録を可能とする商品特定システムを提供することができる。
【0066】
ここで、報知部として機能するプロセッサ711が行う報知は、情報処理装置71が備えるタッチパネル715により出力する、上限数を超えて投入された商品をカート8から取り出し、上限数を超えない個数で再度商品を投入することを促すメッセージを含むことができる。
これにより、カート8を利用するユーザは、何をすれば良いのかが判り、そのメッセージで示される動作を行うことが可能となる。
【0067】
なお、撮像部として機能するカメラ73は、画像を繰り返し取得し、特定部として機能するプロセッサ711は、カメラ73により繰り返し取得された画像の間に変化が有ったとき、商品の特定を開始する。
よって、カート8の籠受部81又はその籠受部81に置かれた籠に多数収容されたことで特定済みの商品がカメラ73によって撮影されたてとしても、時系列に取得される画像には変化が無いので、その特定済みの商品が再特定されることは無い。
【0068】
また、タッチパネル715は、カート8を利用するユーザによる確認操作であるOKボタン押下操作を受ける操作部として機能し、報知部として機能するプロセッサ711は、タッチパネル715がOKボタン押下操作を受け付けたとき、上記のアラート及びメッセージを含む報知を終了する。
よって、特定精度が低い商品の取り出し後のユーザによる確認操作を受けて報知を終了し、再投入される取り出された商品の特定を開始することができる。
【0069】
更に、報知部として機能するプロセッサ711は、報知の開始後に商品が特定されたときにも、上記のアラート及びメッセージを含む報知を終了する。
よって、特定精度が低い商品の取り出し後にユーザが確認操作を忘れて、取り出した商品を再投入した場合、その再投入された商品が特定されれば、報知を終了することができ、報知が継続されることを防止できる。
【0070】
なお、報知部として機能するプロセッサ711が報知を行うか否かを決定するための規定の上限数は、「1」である。
よって、複数個の商品が同時に投入されて画像にそれら複数の商品の画像が含まれているとき、つまり、商品を特定する精度が極端に落ちる複数個商品の同時投入時に、プロセッサ711は、報知を行うことができる。
【0071】
また、プロセッサ711は、特定した商品を示す商品コードを外部に送信する特定商品通知部として機能する。
よって、本実施形態に係る商品特定システムをカートPOSシステム1に適用した場合、この商品コードを受信したカートコントローラ3では、その特定した商品をユーザの購買商品として登録することができる。
【0072】
ここで、商品通知部として機能するプロセッサ711は、報知部として機能するプロセッサ711が報知を行う場合、つまり、上限数を超える商品が投入されたときには、特定した商品の商品コードを送信しない。
よって、特定精度が低い商品の商品コードは送信されないので、誤った商品がユーザの購買商品として登録されることを防止することができる。
【0073】
また、本実施形態に係る商品特定システムでは、特定部として機能するプロセッサ711は、カート8に投入された商品を特定するだけではなく、カメラ73により取得された画像に基づいて、カート8から取り出された商品を特定することもできる。そして、特定商品通知部として機能するプロセッサ711は、この特定した取り出された商品を示す商品コードを外部に送信する。
よって、本実施形態に係る商品特定システムをカートPOSシステム1に適用した場合、この商品コードを受信したカートコントローラ3では、その特定した商品をユーザの購買商品から削除することができる。
【0074】
[第2実施形態]
上記第1実施形態は、商品の認識を情報端末7で行っているが、本実施形態は、カートコントローラ3で商品の認識を行うようにしたものである。
【0075】
本実施形態における商品特定システムを適用したカートPOSシステムは、第1実施形態と同様、店舗サーバ2、カートコントローラ3、アクセスポイント4、複数の会計機5、ネットワーク6及びそれぞれ情報処理装置71を含む複数の情報端末7を含む。本実施形態は、カートコントローラ3及び情報端末7の情報処理装置71の構成及び動作が、第1実施形態と異なる。以下、第1実施形態と同様の部分には第1実施形態と同様の参照符号を付すことでその説明は省略し、第1実施形態と異なる部分について説明する。
【0076】
図7は、第2実施形態に係るカートコントローラ3の要部回路構成を示すブロック図である。カートコントローラ3は、プロセッサ32、メインメモリ33、補助記憶デバイス34、ネットワークインタフェース35及びシステム伝送路36を備える。システム伝送路36は、アドレスバス、データバス、制御信号線等を含む。カートコントローラ3は、システム伝送路36に、プロセッサ32、メインメモリ33、補助記憶デバイス34及びネットワークインタフェース35を接続する。カートコントローラ3では、プロセッサ32、メインメモリ33及び補助記憶デバイス34と、これらを接続するシステム伝送路36とによってコンピュータが構成される。
【0077】
プロセッサ32は、上記コンピュータの中枢部分に相当する。プロセッサ32は、オペレーティングシステム又はアプリケーションプログラムに従って、カートコントローラ3としての各種の機能を実現するべく各部を制御する。プロセッサ32は、例えばCPUであるが、AIチップ、GPU、ASIC、FPGA、DSP、等の集積回路を含む、他の多様な形式で実現されてもよい。
【0078】
メインメモリ33は、上記コンピュータの主記憶部分に相当する。メインメモリ33は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ33は、ROM等の不揮発性のメモリ領域とRAM等の揮発性のメモリ領域とを含む。揮発性のメモリ領域には、第1実施形態で説明したような情報端末7それぞれに対応する情報端末テーブル31が記憶される。
【0079】
補助記憶デバイス34は、上記コンピュータの補助記憶部分に相当する。例えばEEPROM、HDD、或いはSSD等が補助記憶デバイス34となり得る。本実施形態では、補助記憶デバイス34は、アプリケーションプログラムとして、カートコントローラ3に情報端末7を用いた商品登録機能を実行させるためのカート制御プログラム341を保存する。カート制御プログラム341は、第1実施形態で説明した投入数上限値データ71311と同様の、商品の同時投入数の上限値を規定する投入数上限値データ3411を含む。なお、カート制御プログラム341は、メインメモリ33に記憶されてもよい。また、補助記憶デバイス34は、第1実施形態における学習データ7132と同様の、店舗サーバ2の商品データベース21に記憶されている店舗で販売される商品それぞれについての学習データ342を記憶する。この学習データ342は、第1実施形態と同様、店舗サーバ2の商品データベース21が含む学習データ211のコピーであってよい。カートコントローラ3が投入数上限値データ3411及び学習データ342を記憶するので、情報端末7の情報処理装置71は、投入数上限値データ71311及び学習データ7132を記憶する必要は無い。
【0080】
ネットワークインタフェース35は、ネットワーク6用のインタフェースである。プロセッサ32は、このネットワークインタフェース35により、ネットワーク6を介して、店舗サーバ2、アクセスポイント4及び会計機5との間でデータの送受信を行うことができる。
【0081】
図8及び
図9は、カートコントローラ3のプロセッサ32が、カート制御プログラム341に従って実行する主要な情報処理の手順を示す流れ図である。この流れ図は、一つの情報端末7に対する処理手順を示しており、プロセッサ32は、複数の情報端末7のそれぞれについて、同様の処理を併行して実行する。
【0082】
以下、この流れ図を用いて、客がカート8の情報端末7を使用して購買商品の登録から決済までをセルフで行う場合のカートPOSシステム1の主要な動作について説明する。なお、以下に説明する動作は一例である。同様な結果が得られるのであれば、その手順は特に限定されるものではない。またここでは、情報端末7のリーダ72により記録媒体に記録されたデータを読み取り、既にログインが行われているものとする。すなわち、カートコントローラ3の、当該情報端末7に対応する情報端末テーブル31の会員ID領域312には、既に客の記録媒体から読み取った会員IDが記憶されている。
【0083】
カートコントローラ3のプロセッサ32は、ACT41として、ネットワークインタフェース35により、情報端末7からアクセスポイント4を経由して送信されてくる撮影画像の画像データを受信する。第1実施形態で説明したように、情報端末7では、カメラ73のLEDランプ731を点灯させて、カメラ73により画像を撮影する。そして、情報端末7は、その撮影した画像の画像データを、カートコントローラ3に送信する。プロセッサ32は、受信した画像データを、メインメモリ33に記憶させる。なお、メインメモリ33には、この画像データを複数フレーム分記憶する領域が確保され、プロセッサ32は、新しい画像データをその領域に記憶させる際、最も古い画像データを消去して確保した領域に、その新しい画像データを記憶させるものとする。その後、プロセッサ32は、ACT42へと進む。
【0084】
プロセッサ32は、ACT42として、メインメモリ33に記憶されている最新の画像データから、画像内の移動している商品を物体検出する。検出された物体と画像データ中の当該物体の検出位置とは、メインメモリ33に記憶された画像データに関連付けて、メインメモリ33に記憶される。その後、プロセッサ711は、ACT43へと進む。
【0085】
プロセッサ32は、ACT43として、メインメモリ33に記憶されている最新の画像データの物体及び検出位置を古い画像データの物体及び検出位置と比較することで、変化が有るか否か判断する。変化が無いと判断した場合、プロセッサ32は、ACT43においてNOと判定し、上記ACT41へと進む。また、変化が有ると判断した場合には、プロセッサ32は、ACT43においてYESと判定し、ACT44へと進む。
【0086】
以上のACT41,ACT42,ACT43でなるループにより、情報端末7から送信されてくる画像データを受信し、変化の有無を繰り返し確認していく。そして、画像に変化が有ると、プロセッサ32は、ACT44へと進む。
【0087】
プロセッサ32は、ACT44として、画像中の移動している商品を認識する。具体的には、プロセッサ32は、補助記憶デバイス34に記憶された学習データ342に基づいて、ACT42で検知してメインメモリ33に記憶している、バウンディングボックス内の物体に対して画像認識を行い、その物体が何れの商品であるのかを特定する。その後、プロセッサ32は、ACT45へと進む。
【0088】
プロセッサ32は、ACT45として、商品が特定できたか否か判断する。商品が特定できなかったと判断した場合には、プロセッサ32は、ACT45においてNOと判定し、上記ACT41へと進む。商品が特定できたと判断した場合、プロセッサ32は、ACT45においてYESと判定し、ACT46へと進む。
【0089】
プロセッサ32は、ACT46として、カート8の籠受部81又は籠受部81に置かれた籠に商品が投入されたのか否か判断する。例えば、プロセッサ32は、最新の画像と過去の画像に写っている同一商品の移動方向により、その商品が投入されたのか取り出されたのか判断することができる。商品が投入されたのではない、つまり商品が取り出されたと判断した場合、プロセッサ32は、ACT46においてNOと判定し、ACT51へと進む。また、商品が投入されたと判断した場合、プロセッサ32は、ACT46においてYESと判定し、ACT47へと進む。
【0090】
プロセッサ32は、ACT47として、上記ACT44で認識し特定した商品の個数である商品投入数が、補助記憶デバイス34に投入数上限値データ3411として記憶されている商品の同時投入数上限値よりも少ないか否か判断する。本実施形態においても、この商品の同時投入数上限値は「2」である。商品の投入数は、画像認識に使用した画像に設定されたバウンディングボックスの数、つまりACT42で検知した物体の数とすることができる。商品投入数が同時投入数上限値以上である、つまり複数個の商品が投入されたと判断した場合、プロセッサ32は、ACT47においてNOと判定し、ACT54へと進む。また、商品投入数が同時投入数上限値より少ない、つまり投入された商品が1個であると判断した場合、プロセッサ32は、ACT47においてYESと判定し、ACT48へと進む。
【0091】
プロセッサ32は、上記ACT47において商品投入数が同時投入数上限値より少ない、つまり投入された商品が1個であると判断した場合、精度良く商品を特定できたと判定する。よって、この場合には、プロセッサ32は、ACT48として、上記ACT44で認識し特定した商品を登録する。すなわち、プロセッサ32は、特定した商品の商品コードにより商品情報を店舗サーバ2に問合せ、店舗サーバ2が管理する商品データベース21に記憶されている商品情報を取得する。そして、その取得した商品情報を、対応する情報端末テーブル31の購買商品データ領域313に、新たな購買商品データとして追加記憶する。その後、プロセッサ32は、ACT49へと進む。
【0092】
プロセッサ32は、ACT49として、対応する情報端末テーブル31の購買商品データ領域313に記憶されている購買商品データに基づいて、登録されている商品を報知するための登録商品画面を作成する。その後、プロセッサ32は、ACT50へと進む。
【0093】
プロセッサ32は、ACT50として、ネットワークインタフェース35によりアクセスポイント4を介して、生成した登録商品画面を対応する情報端末7へ送信し、その情報端末7のタッチパネル715に登録商品画面を表示させる。その後、プロセッサ32は、上記ACT41へと進む。
【0094】
このようにして、カートコントローラ3は、対応する情報端末7が取り付けられたカート8の籠受部81又は籠受部81に置かれた籠に商品が1つ投入されると、情報端末7のカメラ73で撮影した画像に対する画像認識により、その商品が何であるのかを特定し、当該商品を購買商品として登録することができる。
【0095】
また、プロセッサ32は、上記ACT46において商品が取り出されたと判断した場合、ACT51として、その返却商品を、登録されている購買商品から削除する。すなわち、プロセッサ32は、対応する情報端末テーブル31の購買商品データ領域313に記憶されている、上記ACT44で認識し特定した商品の購買商品データを、その購買商品データ領域313から削除する。その後、プロセッサ32は、ACT52へと進む。
【0096】
プロセッサ32は、ACT52として、対応する情報端末テーブル31の購買商品データ領域313に記憶されている購買商品データに基づいて、登録されている商品を報知するための登録商品画面を作成する。その後、プロセッサ32は、ACT53へと進む。
【0097】
プロセッサ32は、ACT53として、ネットワークインタフェース35によりアクセスポイント4を介して、生成した登録商品画面を対応する情報端末7へ送信し、その情報端末7のタッチパネル715に登録商品画面を表示させる。その後、プロセッサ32は、上記ACT41へと進む。
【0098】
このようにして、カートコントローラ3は、対応する情報端末7が取り付けられたカート8の籠受部81又は籠受部81に置かれた籠から商品が取り出されると、情報端末7のカメラ73で撮影した画像に対する画像認識により、その商品が何であるのかを特定し、当該商品を購買商品から削除することができる。
【0099】
また、プロセッサ32は、上記ACT47において商品投入数が同時投入数上限値以上である、つまり複数個の商品が投入されたと判断した場合、ACT54として、ネットワークインタフェース35によりアクセスポイント4を介して、対応する情報端末7へアラート発報を指示する。その後、プロセッサ32は、ACT55へと進む。このアラート発報の指示を受信した情報端末7では、例えば、カメラ73に備え付けの照明用のLEDランプ731を点滅させたり、スピーカ716により特定の報知音を再生させたりする。或いは、カート8がパトランプ74を備える場合には、それらに代えて又はそれらと共に、そのパトランプ74を点灯さる。
【0100】
更に、プロセッサ32は、ACT55として、ネットワークインタフェース35によりアクセスポイント4を介して、情報端末7へ再度商品の投入を促すメッセージの提示を指示する。その後、プロセッサ32は、ACT56へと進む。この再度商品の投入を促すメッセージの提示の指示を受信した情報端末7では、タッチパネル715により、カート8を利用している客に、再度商品の投入を促すメッセージとOKボタンの画像を提示する。メッセージ及びOKボタンの画像は、例えば、タッチパネル715に表示されている登録商品画面に重畳表示される。なお、再度商品の投入を促すメッセージの提示を指示する代わりに、プロセッサ32は、メッセージ及びOKボタンの画像を重畳した登録商品画面を生成し、それを情報端末7に送信してタッチパネル715に表示させるようにしてもよい。
【0101】
プロセッサ32は、ACT56として、ネットワークインタフェース35により、情報端末7からアクセスポイント4を経由して送信されてくるOK通知を受信したか否か判断する。OK通知は、タッチパネル715に表示しているOKボタンが押下されたとき、情報端末7から送信されてくる。OK通知を受信したと判断した場合、プロセッサ32は、ACT56においてYESと判定し、ACT63へと進む。また、OK通知を受信していないと判断した場合には、プロセッサ32は、ACT56においてNOと判定し、ACT57へと進む。
【0102】
プロセッサ32は、ACT57として、上記ACT41と同様に、ネットワークインタフェース35により、情報端末7からアクセスポイント4を経由して送信されてくる撮影画像の画像データを受信する。その後、プロセッサ32は、ACT58へと進む。
【0103】
プロセッサ32は、ACT58として、上記ACT42と同様に、メインメモリ33に記憶されている最新の画像データから、画像内の移動している商品を物体検出する。検出された物体と画像データ中の当該物体の検出位置とは、メインメモリ33に記憶された画像データに関連付けて、メインメモリ33に記憶される。その後、プロセッサ32は、ACT59へと進む。
【0104】
プロセッサ32は、ACT59として、上記ACT43と同様に、メインメモリ33に記憶されている最新の画像データの物体及び検出位置を古い画像データの物体及び検出位置と比較することで、変化が有るか否か判断する。変化が無いと判断した場合、プロセッサ32は、ACT59においてNOと判定し、上記ACT56へと進む。また、変化が有ると判断した場合には、プロセッサ32は、ACT59においてYESと判定し、ACT60へと進む。
【0105】
プロセッサ32は、ACT60として、上記ACT44と同様に、画像中の移動している商品を認識する。その後、プロセッサ32は、ACT61へと進む。
【0106】
プロセッサ32は、ACT61として、上記ACT45と同様に、商品が特定できたか否か判断する。商品が特定できなかったと判断した場合には、プロセッサ32は、ACT61においてNOと判定し、上記ACT56へと進む。商品が特定できたと判断した場合、プロセッサ32は、ACT61においてYESと判定し、ACT62へと進む。
【0107】
プロセッサ32は、ACT62として、上記ACT46と同様に、カート8の籠受部81又は籠受部81に置かれた籠に商品が投入されたのか否か判断する。商品が投入されたと判断した場合には、プロセッサ32は、ACT62においてYESと判定し、ACT64へと進む。また、商品が投入されたのではない、つまり商品が取り出されたと判断した場合、プロセッサ32は、ACT62においてNOと判定し、上記ACT56へと進む。
【0108】
プロセッサ32は、ACT63として、ネットワークインタフェース35によりアクセスポイント4を介して、対応する情報端末7へ、アラートの発報の終了と提示しているメッセージの消去とを指示する。その後、プロセッサ32は、上記ACT41へと進み、前述した次の商品の投入又は取り出しの判別動作を繰り返す。このメッセージの消去の指示を受信した情報端末7では、タッチパネル715により提示している、再度商品の投入を促すメッセージを消去する。なお、メッセージの消去を指示する代わりに、プロセッサ32は、メッセージ及びOKボタンの画像を消去した登録商品画面を生成し、それを情報端末7に送信してタッチパネル715に表示させるようにしてもよい。
【0109】
プロセッサ32は、ACT64として、ネットワークインタフェース35によりアクセスポイント4を介して、対応する情報端末7へ、アラートの発報の終了と提示しているメッセージの消去とを指示する。その後、プロセッサ32は、上記ACT47へと進み、前述した投入された商品の投入数の判断を行うこととなる。このメッセージの消去の指示を受信した情報端末7では、タッチパネル715により提示している、再度商品の投入を促すメッセージを消去する。なお、メッセージの消去を指示する代わりに、プロセッサ32は、メッセージ及びOKボタンの画像を消去した登録商品画面を生成し、それを情報端末7に送信してタッチパネル715に表示させるようにしてもよい。
【0110】
このようにして、購買商品の登録及び削除が行われる。
【0111】
以上のように、本実施形態に係る商品特定システムにおいては、カートPOSシステム1におけるカートコントローラ3のプロセッサ32は、ネットワークインタフェース35により情報端末7と通信して、情報端末7のカメラ73により取得された画像を取得して、その画像に基づいて、具体的には、AIによる画像認識を利用して、カート8に投入された商品を特定する特定部、及び、カメラ73により取得された画像に含まれる商品の個数が、投入数上限値データ3411として記憶された規定の上限数を超えるとき、ネットワークインタフェース35により情報端末7と通信して、カメラ73に据え付けられたLEDランプ731及び/又は情報端末7の情報処理装置71が備えるスピーカ716により、また、情報端末7がパトランプ74を備える場合にはそのパトランプ74により、特定した商品の特定精度が低いことを示すアラートを報知する報知部、として機能する。
このように、本実施形態に係る商品特定システムにおいても、第1実施形態に係る商品特定システムと同様、商品の画像による識別精度つまり商品を特定する精度が極端に落ちる場合には、そのことを商品をカート8に投入したユーザに報知することができる。よって、この報知を受けたユーザは、その商品を正しく特定させるために、一旦その商品を取り出して再度カート8に投入することができる。従って、AIによる画像認識を利用して信頼性の高い商品登録を可能とする商品特定システムを提供することができる。
【0112】
ここで、報知部として機能するプロセッサ32が行う報知は、情報処理装置71が備えるタッチパネル715により出力させる、上限数を超えて投入された商品をカート8から取り出し、上限数を超えない個数で再度商品を投入することを促すメッセージを含むことができる。
これにより、カート8を利用するユーザは、何をすれば良いのかが判り、そのメッセージで示される動作を行うことが可能となる。
【0113】
なお、撮像部として機能するカメラ73は、画像を繰り返し取得し、特定部として機能するプロセッサ32は、カメラ73により繰り返し取得された画像の間に変化が有ったとき、商品の特定を開始する。
よって、カート8の籠受部81又はその籠受部81に置かれた籠に多数収容されたことで特定済みの商品がカメラ73によって撮影されたてとしても、時系列に取得される画像には変化が無いので、その特定済みの商品が再特定されることは無い。
【0114】
また、タッチパネル715は、カート8を利用するユーザによる確認操作であるOKボタン押下操作を受ける操作部として機能し、報知部として機能するプロセッサ32は、ネットワークインタフェース35によりタッチパネル715がOKボタン押下操作を受け付けたことを示すOK通知を受信したとき、情報端末7による上記のアラート及びメッセージを含む報知を終了する。
よって、特定精度が低い商品の取り出し後のユーザによる確認操作を受けて報知を終了し、再投入される取り出された商品の特定を開始することができる。
【0115】
更に、報知部として機能するプロセッサ32は、報知の開始後に商品が特定されたときにも、情報端末7による上記のアラート及びメッセージを含む報知を終了する。
よって、特定精度が低い商品の取り出し後にユーザが確認操作を忘れて、取り出した商品を再投入した場合、その再投入された商品が特定されれば、報知を終了することができ、報知が継続されることを防止できる。
【0116】
以上、上記第1及び第2実施形態について説明したが、実施形態はこれに限定されるものではない。
例えば、上記第1及び第2実施形態では、ACT14及びACT44での商品認識を開始するトリガを、画像に変化が有ったときとしたが、これに限定するものではない。例えば、カメラ73の視野内に存在する物体を例えば光学的に検出する少なくとも一つのセンサをカート8の任意の位置に配置し、このセンサがカート8に投入または取り出される物体を検出したことに応じて商品認識を開始するようにしてもよい。
【0117】
また、ACT16及びACT46における商品の投入/取り出しの判断についても、画像から判断するものに限定しない。例えば、重量計をショッピングカート8の籠受部81の底面に配置しておき、重量が増加したのか減少したのかにより、商品の投入/取り出しを判断することも可能である。
【0118】
なお、このような重量による商品の投入/取り出しを判断を可能とした場合、アラート及びメッセージに応じて同時投入された商品の取り出しが実施されたか否かを判別することも可能なる。これにより、同時投入された商品が取り出されることなく、更に商品が投入された場合には、その時点で或いは会計機5での会計の際に、店員に報知できるようになる。
【0119】
また、上記第1実施形態では、情報端末7の情報処理装置71の補助記憶デバイス713又はメインメモリ712に端末プログラム7131が事前に記憶されているものとした。この点に関しては、情報処理装置71が備える書き込み可能な記憶デバイスに、この情報処理装置71とは個別に譲渡された端末プログラムがユーザなどの操作に応じて書き込まれてもよい。同様に、上記第2実施形態では、カートコントローラ3の補助記憶デバイス34又はメインメモリ33にカート制御プログラム341が事前に記憶されているものとしたが、カートコントローラ3が備える書き込み可能な記憶デバイスに、このカートコントローラ3とは個別に譲渡されたカート制御プログラムがユーザなどの操作に応じて書き込まれてもよい。これら端末プログラム及びカート制御プログラム等の譲渡は、リムーバブルな記録媒体に記録して、或いはネットワークを介した通信により行うことができる。記録媒体は、CD-ROM,メモリカード等のようにプログラムを記憶でき、かつ装置が読み取り可能であれば、その形態は問わない。
【0120】
この他、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態及びその変形は、発明の範囲に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0121】
1…カートPOSシステム、 2…店舗サーバ、 3…カートコントローラ、 4…アクセスポイント(AP)、 5…会計機、 6…ネットワーク、 7…情報端末、 8…ショッピングカート(カート)、 21…商品データベース(DB)、 22…会員データベース(DB)、 31…情報端末テーブル、 32,711…プロセッサ、 33,712…メインメモリ、 34,713…補助記憶デバイス、 35…ネットワークインタフェース、 36,717…システム伝送路、 71…情報処理装置、 72…リーダ、 73…カメラ、 74…パトランプ、 81…籠受部、 211,342,7132…学習データ、 311…端末ID領域、 312…会員ID領域、 313…購買商品データ領域、 314…小計額領域、 341…カート制御プログラム、 714…無線ユニット、 715…タッチパネル、 716…スピーカ、 731…LEDランプ、 3411,71311…投入数上限値データ、 7131…端末プログラム。