以下では、チェックアウトシステムを例に本実施形態に係る情報処理装置、店舗システム及びプログラムについて、図面を参照して説明する。店舗システムは、一取引に係る商品の登録、精算を行うPOS端末を備えるチェックアウトシステム(POSシステム)等である。本実施形態は、スーパーマーケット等の店舗に導入されたチェックアウトシステムへの適用例である。
図1は、実施形態にかかるチェックアウトシステム1の一例を示す斜視図である。図1に示すように、チェックアウトシステム1は、商品に関する情報を読み取る商品読取装置101と、一取引に係る商品の登録、精算を行うPOS端末11とを備える。以下では、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には、商品Aを収納する買物カゴ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には、一取引に係る商品Aが収納される。第1の買物カゴ153a内の商品Aは、商品読取装置101を操作するオペレータにより第2の買物カゴ153bに移動される。この移動過程で、商品Aが商品読取装置101の読取窓103に向けられる。この際、読取窓103内に配置された撮像部164(図2参照)は商品Aを撮像する。
商品読取装置101では、撮像部164により撮像された画像に含まれる商品Aが、後述するPLUファイルF1(図3参照)に登録されたどの商品に対応するかを指定させるための画面を表示・操作部104に表示し、指定された商品の商品IDをPOS端末11に通知する。POS端末11では、商品読取装置101から通知される商品IDに基づき、当該商品IDに対応する商品の商品分類、商品名、単価等の売上登録に係る情報を、売上マスタファイル(図示しない)等に記録して売上登録を行う。
図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には、HDD64(Hard Disk Drive)が接続される。HDD64には、プログラムや各種ファイルが記憶される。HDD64に記憶されているプログラムや各種ファイルは、POS端末11の起動時に、その全部または一部がRAM63にコピーされてCPU61により実行される。HDD64に記憶されているプログラムの一例は、商品販売データ処理用プログラムPR1や商品認識精度チェック用プログラムPR2である。HDD64に記憶されているファイルの一例は、ストアコンピュータSCから配信されて格納されているPLUファイルF1である。
PLUファイルF1は、店舗に陳列して販売する商品Aの各々について、商品Aの売上登録に係る情報を格納する商品ファイルである。以下の説明では、PLUファイルF1を辞書として用いるが、辞書はPLUファイルF1と異なるファイルであっても良い。辞書は、撮像した画像データから抽出した商品Aを識別するための照合用データ(特徴量)を、複数の商品について記憶する。辞書は、PLUファイルF1と異なるファイルである場合、辞書に記憶される照合用データ(特徴量)と、PLUファイルF1の情報(識別情報)は紐付けられる。特徴量は、商品の標準的な形状、表面の色合い、模様、凹凸状況等の外観の特徴をパラメータ化したものである。
図3は、PLUファイルF1のデータ構成を例示する概念図である。図3に示すように、PLUファイルF1は、商品Aごとに、ユニークに割り当てられた識別情報である商品ID、商品Aが属する商品分類、商品名、品種、単価等の商品に関する情報と、その商品Aを示すイラスト画像と、撮像した商品画像から読み取られる色合いや表面の凹凸状況等の特徴量とを、その商品Aの商品情報として格納するファイルである。尚、特徴量は、後述する類似度の判定に用いられる照合用のデータである。なお、PLUファイルF1は、後述する接続インターフェース65を介し、商品読取装置101が読み出し可能に構成される。
図2に戻り、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(Flame Per Second)の動画像の撮像を行う。撮像部164が所定のフレームレートで順次撮像したフレーム画像(撮像画像)はRAM163に保存される。
音声出力部165は、予め設定された警告音等を発生するための音声回路とスピーカ等である。音声出力部165は、CPU161の制御の下で警告音や音声による報知を行う。
更に、CPU161には、POS端末11の接続インターフェース65に接続して、POS端末11との間でデータ送受信を可能にする接続インターフェース175が接続される。また、CPU161は、接続インターフェース175を介して、表示・操作部104との間でデータ送受信を行う。
次に、CPU61がプログラム(商品販売データ処理用プログラムPR1、商品認識精度チェック用プログラムPR2)を実行することで実現されるCPU61の機能構成について説明する。図4は、POS端末11の機能構成を示すブロック図である。
図4は、POS端末11の機能構成を示すブロック図である。図4に示すように、POS端末11のCPU61は、商品販売データ処理用プログラムPR1および商品認識精度チェック用プログラムPR2を実行することにより、画像取込部51、商品検出部52、類似度算出部53、類似度判定部54、商品提示部55、入力受付部57、情報入力部58、売上登録処理手段である売上登録部59、物品指定部91、報知部92、追加学習部93、としての機能を備える。
(商品登録処理および売上登録処理)
まず、POS端末11の画像取込部51、商品検出部52、類似度算出部53、類似度判定部54、商品提示部55、入力受付部57、情報入力部58による一般物体認識(オブジェクト認識)に応じた商品登録処理、および売上登録部59による売上登録処理についての概要を説明する。
画像取込部51は、撮像部164に撮像オン信号を出力して撮像部164に撮像動作を開始させる。画像取込部51は、撮像動作開始後に撮像部164が撮像してRAM163に保存されたフレーム画像を順次取り込む。画像取込部51によるフレーム画像の取り込みは、RAM163に保存された順に行われる。
図5は、画像取込部51によって取り込まれたフレーム画像の一例を示す図である。図5に示すように、オペレータが読取窓103に商品Aをかざすと、撮像部164の読取領域Rには商品Aの全部または一部が撮影されて商品読取装置101の表示デバイス106に表示される。
商品検出部52は、抽出手段として機能するものであって、撮像部164が撮像し、画像取込部51により取り込まれたフレーム画像に含まれる商品Aを検出して、特徴量を抽出する。商品検出部52は、フレーム画像に含まれる商品Aの全部または一部を、パターンマッチング技術等を用いて検出することにより、撮像された商品Aの特徴量を抽出する。具体的には、取り込まれたフレーム画像を2値化した画像から輪郭線等を抽出する。次いで、前回のフレーム画像から抽出された輪郭線と、今回のフレーム画像から抽出された輪郭線とを比較して、売上登録のために読取窓103に向けられた商品Aを検出する。
なお、商品Aを検出する別の方法としては、取り込まれたフレーム画像から肌色領域の有無を検出する。次いで、肌色領域が検出された場合、すなわち、店員の手が検出された場合は、この肌色領域の近傍において上述した輪郭線の検出を行うことで、店員の手が把持していると想定される商品Aの輪郭抽出を試みる。この時、手の形状を示す輪郭と、手の輪郭の近傍にそれ以外の物体の輪郭とが検出された場合に、商品検出部52は、この物体の輪郭から商品Aを検出する。
また、商品検出部52は、検出された商品Aの全部または一部の画像から、商品Aの色合いや表面の凹凸状況等の表面の状態を特徴量として読み取る。なお、商品検出部52は、処理時間の短縮を図るため、商品Aの輪郭や大きさは考慮しないものとする。
類似度算出部53は、類似度算出手段として機能するものであって、PLUファイルF1に登録されている各商品(以下、登録商品という)の商品画像の色合いや表面の凹凸状況等の表面の状態である特徴量と、商品検出部52が商品Aを検出し、抽出した特徴量とをそれぞれ比較することで、商品AとPLUファイルF1に登録された登録商品との類似度を算出する。ここで、類似度は、PLUファイルF1に記憶されている各商品の商品登録時の商品画像を100%=「類似度:1.0」とした場合に、商品Aの全部または一部の画像がどの程度類似しているかを示すものである。なお、例えば、色合いと表面の凹凸状況とでは、重み付けを変えて類似度を算出してもよい。
このように画像中に含まれる物体を認識することは一般物体認識(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=rep1&type=pdf >
なお、撮像された商品Aの画像と、PLUファイルF1に登録された登録商品との類似度の算出方法は特に問わないものとする。例えば、撮像された商品Aの画像と、PLUファイルF1に登録された各登録商品との類似度を絶対評価として算出してもよいし、相対評価として算出してもよい。
類似度を絶対評価として算出する場合、撮像された商品Aの画像と、PLUファイルF1に登録された各登録商品とを1対1で比較し、この比較の結果導出される類似度をそのまま採用すればよい。また、類似度を相対評価として算出する場合、PLUファイルF1に5つの登録商品(商品AA、AB、AC、AD、AE)が登録されていたとすると、撮像された商品Aは、商品AAに対して類似度が0.6、商品ABに対しては類似度が0.1、商品ACに対しては類似度が0.1、商品ADに対しては類似度が0.1、商品AEに対しては類似度が0.1等、各登録商品との類似度の総和が1.0(100%)となるよう算出すればよい。
類似度判定部54は、画像取込部51が取り込んだフレーム画像ごとに、商品Aの画像と、PLUファイルF1に登録されている登録商品との類似度を比較する。本実施形態では、登録商品の商品画像と商品Aの画像との類似度について複数の条件が段階的に設けられており、類似度判定部54は、満たされる条件に応じて登録商品の確定あるいは商品Aの候補の選定を行う。類似度に関する条件は特に限定されるものではないが、以下では条件a〜dを用いる場合について説明する。
ここで、条件aおよび条件bは、本実施形態に係る第1の条件であり、撮像部164が撮像した商品AをPLUファイルF1に登録された登録商品のうち一の商品として確定するための条件である。また、条件cは、本実施形態に係る第2の条件であり、PLUファイルF1に登録された登録商品中に同一のカテゴリ(商品)に属する異なる品種の物品が複数含まれていない場合に、撮像部164が撮像した商品Aの候補を抽出するための条件である。更に、条件dは、本実施形態に係る第3の条件であり、条件cを満たした商品Aの候補中に同一のカテゴリ(商品)に属する異なる品種の物品が複数含まれている場合に、撮像部164が撮像した商品Aの候補を抽出するための条件である。
類似度判定部54は、条件aまたは条件bを満たす登録商品を、撮像部164が撮像した商品Aに一対一で対応する商品(以下、確定商品という)であると判定(確定)する。また、類似度判定部54は、条件cを満たす登録商品については、確定商品ではなく、撮像部164が撮像した商品Aの候補(以下、商品候補という)であると判定する。そして、PLUファイルF1に登録された複数の登録商品から条件cを満たす登録商品を抽出することにより、商品Aに対する商品候補を抽出する。
また、類似度判定部54は、条件dを満たす登録商品(同一のカテゴリ(商品)に属する異なる品種の物品)についても、確定商品ではなく、撮像部164が撮像した商品Aの候補であると判定する。そして、PLUファイルF1に登録された複数の登録商品から条件dを満たす登録商品を抽出することにより、商品Aに対する商品候補を抽出する。
条件a〜cは類似度に応じて段階的に設定されればその詳細は特に限定されるものではないが、一例として、予め設定された複数の閾値によって条件a〜cを設けることができる。ここでは、第1閾値〜第3閾値によって条件a〜cを設定する場合について説明する。なお、第1〜3閾値の大小関係は、第1閾値>第2閾値>第3閾値とする。
類似度判定部54は、登録商品との類似度が予め定められた第1閾値(例えば90%)以上となった回数をカウントし、この回数が所定回数以上となった場合に条件aが満たされたと判定する。尚、第1閾値を誤判定が無いよう十分に高く設定した場合には、所定回数を1回として条件aを判定してもよい。
また、類似度判定部54は、登録商品との類似度が第1閾値(例えば90%)未満、かつ、第1閾値より小さい第2閾値(例えば75%)以上となった場合に条件bが満たされたと判定する。そして、条件bを満たした登録商品は、確定商品ではあるがオペレータによる確認操作を要すると判定する。なお、登録商品との類似度が第1閾値(例えば90%)未満、かつ、第1閾値より小さい第2閾値(例えば75%)以上となった回数をカウントし、この回数が所定回数以上となった場合に条件bが満たされたと判定してもよい。
更に、類似度判定部54は、登録商品との類似度が第2閾値(例えば75%)未満、かつ、第2閾値より小さい第3閾値(例えば10%)以上である場合に、条件cが満たされたと判定する。なお、更には登録商品との類似度が第2閾値(例えば75%)未満、かつ、第2閾値より小さい第3閾値(例えば10%)以上となった回数をカウントし、この回数が所定回数以上となった場合に条件cが満たされたと判定してもよい。
なお、各条件a〜cは、類似度の大きさ、判定回数等に応じて適宜設定可能であり、上述した例に限定されるものではない。また、条件a〜cの判断に用いる所定回数はそれぞれ条件毎に異なる回数を設けるものであってもよい。
加えて、類似度判定部54は、条件cを満たした登録商品中に同一のカテゴリ(商品)に属する異なる品種の物品が複数含まれている場合には、当該複数の品種の類似度を合算し、複数の品種の類似度を合算したカテゴリ(商品)の類似度が予め定められた第2閾値(例えば75%)以上となった場合、条件dが満たされたと判定する。
さらに、類似度判定部54は、登録商品について類似度の大きさで順位付けしたランキングを作成する。
商品提示部55は、撮像部164によって撮像された商品Aが、条件aまたは条件bを満たした登録商品であるとして一意的に確定されたことを、画像出力や音声出力等によってオペレータや客に報知する。
より詳細には、商品提示部55は、条件aを満たした登録商品が、撮像部164によって撮像された商品(確定商品)として一意的に確定されたことを示す確定画面71(図6参照)を表示デバイス106に表示させる。
図6は、確定画面71の一例を示す図である。条件aを満たす登録商品があった場合に、商品提示部55は読取領域R(図5参照)の撮像画像の表示を停止し、確定商品に対応するイラスト画像G1および商品名「にんじん」をPLUファイルF1から読み出して、確定画面71に表示する。また、商品提示部55は、PLUファイルF1から読み出した確定商品の商品名、商品価格(単価)を、商品名表示領域81、価格表示領域82にそれぞれ表示する。尚、商品提示部55は、イラスト画像G1の代わりに、PLUファイルF1から読み出した商品画像(写真)を表示してもよい。これに限らず、イラストや商品画像を表示せず、商品名を確定画面71に表示するようにしてもよい。この場合、音声出力部165によって、商品が確定したことを報知する。音声は事前に商品に紐付けられて登録された商品名であってもよいし、例えば「ピッ」という電子音であってもよい。
また、商品提示部55は、条件bを満たした登録商品(確定商品)が、撮像部164によって撮像された商品Aであるか否かの最終確認操作を受付ける確認画面72(図7参照)を表示デバイス106に表示させる。
図7は、確認画面72の一例を示す図である。条件bを満たす登録商品があった場合に、商品提示部55は確定商品に対応するイラスト画像G1をPLUファイルF1から読み出して、確認画面72に表示する。また、商品提示部55は、PLUファイルF1から読み出した確定商品の商品名を用いて、読み取られた商品Aがイラスト画像G1の商品であるか否かを問うメッセージを「にんじんですか?」等と表示する。また、確認画面72には、「はい/いいえ」等のボタンがタッチパネル105に対するタッチ操作によって選択操作可能に設けられる。
このように、確認画面72においては、類似度判定の結果、1つの商品Aに対して唯一に選別された登録商品(確定商品)の商品名や商品画像が示され、商品Aと登録商品とが一対一の関係を持って表示される。従って、確認画面72は、条件bを満たす登録商品が撮像部164によって撮像された商品Aとして一意的に確定されたことを報知する画面である。
加えて、商品提示部55は、条件cを満たした登録商品に関する情報を、商品候補として表示デバイス106に表示させる。より詳細には、商品提示部55は、条件cを満たした登録商品のイラスト画像および商品名をPLUファイルF1から読み出し、類似度算出部53が算出した類似度の高いものから、表示デバイス106に順次出力する。表示デバイス106は、商品候補提示領域83(図8参照)において、商品候補のイラスト画像および商品名を類似度の高いものから順に表示する。
図8は、商品候補のイラスト画像G1、G2、G3、G4が表示された画面例を示す図である。図8に示すように、商品候補提示領域83には、類似度の高い登録商品から順に、商品候補のイラスト画像G1、G2、G3、G4および各商品名が表示される。これらイラスト画像G1、G2、G3、G4はタッチパネル105に対する選択操作に応じて選択可能に構成される。また、商品候補提示領域83の下部には、商品リストから商品Aを選択するための選択ボタン84が設けられており、商品リストから選択された商品は上述した確定商品として処理される。なお、図8では、イラスト画像G1〜G4に対応する4つの商品候補が表示された例を示したが、商品候補の数や表示方法は特に限定されるものではない。また、イラスト画像に代えて商品画像(写真)を商品候補として表示してもよい。
加えて、商品提示部55は、条件dを満たした同一のカテゴリ(商品)に属する異なる品種の物品である登録商品に関する情報を、商品候補として表示デバイス106に表示させる。より詳細には、商品提示部55は、条件dを満たした登録商品(同一のカテゴリ(商品)に属する異なる品種の物品)のイラスト画像および商品名をPLUファイルF1から読み出し、類似度算出部53が算出した類似度の高いものから、表示デバイス106に順次出力する。
入力受付部57は、タッチパネル105またはキーボード107を介して表示デバイス106の表示に対応する各種入力操作を受付ける。例えば入力受付部57は、確認画面72(図7参照)に対する選択操作に基づいて、表示されたイラスト画像G1の商品が確定商品であることを最終確認した旨の入力操作(確認操作)を受付ける。なお、商品提示部55は、入力受付部57が確認操作を受付けた場合に、上述の確定画面71を表示デバイス106に表示する。
入力受付部57は、表示デバイス106に表示された商品候補のイラスト画像G1〜G4(図8参照)の中からいずれか1つのイラスト画像に対する選択操作を受付ける。入力受付部57は、選択されたイラスト画像の登録商品を、商品Aに対する確定商品であるとして受付ける。なお、商品検出部52が複数の商品Aを検出可能である場合には、入力受付部57は商品候補の中から、複数の商品候補の選択操作を受付けてもよい。なお、商品提示部55は、入力受付部57が選択操作を受付けた場合に、受付けた商品候補を確定商品として表示させた確定画面71を表示デバイス106に表示させる。
情報入力部58は、上述のようにして確定された確定商品について、その商品Aを示す情報(例えば、商品IDや商品名等)を、接続インターフェース175を介して入力する。
なお、情報入力部58は、タッチパネル105またはキーボード107を介して別途入力された販売個数を、商品ID等とともに入力するとしてもよい。
売上登録部59は、情報入力部58から入力された商品IDと販売個数とに基づいて、対応する商品Aの売上登録を行う。具体的に、売上登録部59は、PLUファイルF1を参照して、通知された商品ID及び当該商品IDに対応する商品分類、商品名、単価等を、販売個数とともに売上マスタファイル等に記録して売上登録を行う。
(オブジェクト認識に際しての商品認識精度チェック処理)
次いで、POS端末11の画像取込部51、商品検出部52、類似度算出部53、類似度判定部54、物品指定部91、報知部92、追加学習部93によるオブジェクト認識に際しての商品認識精度チェック処理について説明する。
上述したように、POS端末11は、撮像部164により撮像した画像データから抽出した対象となる物品(オブジェクト)の特徴量と、予め用意された辞書であるPLUファイルF1における照合用のデータ(特徴量)とを比較した類似度に応じて当該物品の種別等を認識(検出)する一般物体認識(オブジェクト認識)を採用している。
このような一般物体認識に用いる辞書であるPLUファイルF1においては、予め照合用のデータ(特徴量)が登録されている。しかしながら、辞書であるPLUファイルF1に登録されている照合用のデータ(特徴量)に不備がある場合は、商品Aを適切にかざした場合であっても類似度が低くなり、商品Aが認識されにくくなってしまう。
そこで、POS端末11は、辞書であるPLUファイルF1の照合用のデータの更新する追加学習機能を備えている。ところが、店舗の営業時間内における会計時に、照合用データ(特徴量)の不備に気が付くと、業務を一時中断して追加学習させなければならず、非常に手間である。
しかしながら、照合用データ(特徴量)の追加学習の要否については、判断基準が示されないことから、追加学習を行うか否かの判断が困難であった。
そこで、本実施形態のPOS端末11は、オブジェクト認識における照合用データ(特徴量)の追加学習の要否について報知することができるようにしたものである。すなわち、POS端末11のCPU61は、商品認識精度チェック用プログラムPR2を実行することにより、図4に示すように、画像取込部51、商品検出部52、類似度算出部53、類似度判定部54、物品指定部91、報知部92、追加学習部93としての機能を備える。以下において、オブジェクト認識に際しての商品認識精度チェック処理における各部について説明する。
物品指定部91は、選択手段として機能するものであって、予め用意された辞書であるPLUファイルF1から商品認識精度チェックの対象商品を選択させる。物品指定部91は、PLUファイルF1に格納された登録商品のリストから、オペレータが商品認識精度チェックの物品の商品名を選択させることで、商品認識精度チェックの対象商品の指定を行う。
報知部92は、商品認識精度チェック処理の結果について報知する。報知部92は、物品指定部91が指定した対象商品の類似度が、辞書として用いられるPLUファイルF1に登録された商品の中で、選択した登録商品の類似度におけるランキングの順位が高位でない場合に、選択された登録商品の照合用データ(特徴量)を追加学習させることについて報知する。その際、報知部92は、対象商品の類似度に応じて3段階で報知する。なお、報知の段階は、2段階であってもよいし、4段階以上であってもよい。
次に、報知部92が報知する3段階の詳細について説明する。
まず、商品認識精度チェック処理の対象に選択した登録商品の類似度におけるランキングの順位が高位の場合の報知について説明する。商品認識精度チェック処理の対象に選択した登録商品の類似度におけるランキングの順位が高位の場合に、報知部92は、追加学習による更新の必要がない旨の画面を表示して報知する。ここで、選択した登録商品の類似度におけるランキングの順位が高位とは、ランキングの順位が第1位または、確定商品の少なくとも何れか一方の条件を満たしていることを示す。
次に、商品認識精度チェック処理の対象に選択した登録商品の類似度におけるランキングの順位が中位の場合の報知について説明する。商品認識精度チェック処理の対象に選択した登録商品の類似度におけるランキングの順位が中位の場合に、報知部92は、追加学習による更新を推奨している旨の画面を表示して報知する。ここで、選択した登録商品の類似度におけるランキングの順位が中位とは、ランキング第1位を除いた候補商品であることを示す。すなわち、ランキングの順位が第2位から第4位などの順位である。なお、ランキング第1位を除いた候補商品は、第2位から第4位に限らず、第5位以下を含めてもよい。
次に、商品認識精度チェック処理の対象に選択した登録商品の類似度におけるランキングの順位が低位の場合の報知について説明する。商品認識精度チェック処理の対象に選択した登録商品の類似度におけるランキングの順位が低位の場合に、報知部92は、追加学習が必要である旨の画面を表示して報知する。ここで、選択した登録商品の類似度におけるランキングの順位が低位とは、候補商品より類似度が低いことを示す。すなわち、ランキングの順位が第5位以下などの順位である。なお、報知方法は、画面表示に限らず、音声により報知してもよい。
追加学習部93は、PLUファイルF1に予め登録されている商品の照合用のデータ(特徴量)を追加学習(追加登録)する。具体的には、追加学習部93は、照合用のデータ(特徴量)となる画像を再度、撮像し、取り込むことにより更新する。照合用データ(特徴量)は、一定量保存(記憶)することができる。照合用データ(特徴量)が一定量に達したら、古い照合用データ(特徴量)からデータを消去、あるいはランダムで照合用データ(特徴量)を消去する。
次に、商品認識精度チェック処理におけるチェックアウトシステム1の動作について詳細に説明する。図9は、チェックアウトシステム1が実行する商品認識精度チェック処理の流れを示すフローチャートである。なお、前提条件として、商品認識精度チェック用プログラムPR2が起動しているものとする。
図9に示すように、POS端末11のCPU61(物品指定部91)は、商品選択画面(不図示)を表示する(ステップS11)。商品選択画面は、辞書に登録されている登録商品のリストを表示して、商品認識精度チェック処理を行う対象の商品を登録商品から選択させる画面である。オペレータは、商品選択画面に表示された商品ボタンを押下することにより、商品認識精度チェック処理を行う商品Aを選択することができる。
次いで、POS端末11のCPU61(物品指定部91)は、商品ボタンの押下が検出されるか否かを判定する(ステップS12)。POS端末11のCPU61(物品指定部91)は、商品ボタンの押下を検出しない場合に(ステップS12;No)、POS端末11のCPU61(物品指定部91)は、ステップS12にて待機する。
商品ボタンの押下を検出した場合に(ステップS12;Yes)、POS端末11のCPU61は、精度チェック画面G5(図10参照)を表示させる(ステップS13)。
図10は、精度チェック画面G5の一例を示す説明図である。精度チェック画面G5は、商品認識精度チェック処理の状態および判定結果を表示する画面である。精度チェック画面G5は、大別すると、商品表示領域R51と、通常認識判定領域R52と、リアルタイム認識判定領域R53と、中止ボタンB51とを備える。
商品表示領域R51は、商品認識精度チェック処理の対象商品を撮像部164が撮像して画像取込部51によって取り込まれた画像を表示する領域である。商品表示領域R51は、商品名領域R511と、撮像領域R512とを備える。商品名領域R511は、予め選択した商品認識精度チェックを行う対象商品の商品名が表示される領域である。撮像領域R512は、撮像部164が撮像した画像を表示する領域である。撮像領域R512に画像を表示することで、オペレータは、撮像部164に商品Aを撮像させていることを確認することができる。
通常認識判定領域R52は、商品認識精度チェック処理の判定結果が表示される領域である。通常認識判定領域R52は、判定結果領域R521と、メッセージ表示領域R522とを備える。判定結果領域R521は、判定結果を表示する領域である。メッセージ表示領域R522は、商品認識精度チェック処理におけるメッセージを表示する領域である。よって、メッセージ表示領域R522は、初期状態には「商品をかざしてください」とのメッセージを表示する。
リアルタイム認識判定領域R53は、シングルフレームでの認識結果を表示することにより、リアルタイムで認識結果を表示する領域である。中止ボタンB51は、商品認識精度チェック処理を中止する場合に押下するボタンである。
次いで、POS端末11のCPU61は、撮像部164が撮像し、画像取込部51が取り込んだ撮像画像G51を、商品表示領域R51に表示させる(ステップS14)。
図11は、撮像画像G51の一例を示す説明図である。撮像画像G51は、撮像部164が撮像し、画像取込部51が取り込んだ画像である。また、撮像画像G51は、商品Aを枠線で囲って表示する。さらに、撮像画像G51は、撮像方法に不備がある場合に、商品Aを読み取ることが出来ない旨のメッセージを表示する。図11は、キャベツについて撮像しており、「読取NG」とのメッセージを表示している状態を示す。
次いで、POS端末11のCPU61は、精度チェック画面G5に備えられた中止ボタンB51の押下が検出されるか否かを判定する(ステップS15)。中止ボタンB51の押下が検出された場合に(ステップS15;Yes)、POS端末11のCPU61は、中止実行画面G6を表示させる(ステップS16)。
図12は、中止実行画面G6の一例を示す説明図である。中止実行画面G6は、中止ボタンB51が押下された場合に、商品認識精度チェック処理を中止することを確認する画面である。よって、中止実行画面G6は、「精度チェックを中止してもよろしいですか?」とのメッセージを表示する。中止実行画面G6は、はいボタンB61と、いいえボタンB62とを備える。はいボタンB61は、商品認識精度チェック処理を中止する場合に押下するボタンである。いいえボタンB62は、商品認識精度チェック処理の中止を取り止める場合に押下するボタンである。
次いで、POS端末11のCPU61は、中止実行画面G6に備えられたはいボタンB61の押下が検出されるか否かを判定する(ステップS17)。はいボタンB61の押下が検出された場合に(ステップS17;Yes)、POS端末11のCPU61は、商品認識精度チェック処理を終了する。
一方、はいボタンB61の押下が検出されない場合に(ステップS17;No)、POS端末11のCPU61は、中止実行画面G6に備えられたいいえボタンB62の押下が検出されるか否かを判定する(ステップS18)。
いいえボタンB62の押下が検出されない場合に(ステップS18;No)、POS端末11のCPU61は、ステップS17に戻る。一方、いいえボタンB62の押下が検出された場合に(ステップS18;Yes)、POS端末11のCPU61は、ステップS13に戻る。
精度チェック画面G5に備えられた中止ボタンB51の押下が検出されない場合に(ステップS15;No)、POS端末11のCPU61(商品検出部52)は、商品Aの特徴量の抽出が完了したか否かを判定する(ステップS19)。商品Aの特徴量の抽出が完了していない場合に(ステップS19;No)、POS端末11のCPU61(商品検出部52、類似度算出部53および類似度判定部54)は、ステップS14に戻る。
一方、商品Aの特徴量の抽出が完了した場合に(ステップS19;Yes)、POS端末11のCPU61(類似度算出部53)は、登録商品について類似度を算出する(ステップS20)。次いで、POS端末11のCPU61(類似度判定部54)は、登録商品について類似度の大きさで順位付けしたランキングを作成する(ステップS21)。
次いで、POS端末11のCPU61は、商品認識精度チェック処理の対象に選択した登録商品の類似度におけるランキングの順位が高位であるか否かを判定する(ステップS22)。ここで、ランキングの順位が高位とは、選択した登録商品の類似度におけるランキングの順位が第1位、または類似度が高い確定商品であることの少なくとも何れか一方の条件を満たしていることである。
選択した登録商品の類似度におけるランキングの順位が高位である場合に(ステップS22;Yes)、POS端末11のCPU61(報知部92)は、通常認識判定領域R52に高認識結果画面G52を表示する(ステップS23)。
図13は、高認識結果画面G52の一例を示す説明図である。高認識結果画面G52は、類似度が高い確定商品であり、追加学習が必要ない旨を表示した画面である。ここで、追加学習とは、照合用のデータ(特徴量)が登録されている辞書に、商品の照合用データ(特徴量)を追加して記憶させることである。高認識結果画面G52は、判定結果領域R521に、類似度が高いことを示すマークが表示される。そして、高認識結果画面G52は、メッセージ表示領域R522に、「追加学習の必要はありません(自動確定可能商品)」とのメッセージを表示する。
次いで、POS端末11のCPU61は、撮像部164が撮像し、画像取込部51が取り込んだ撮像画像G51から商品Aがフレームアウトしたか否かを判定する(ステップS24)。商品Aがフレームアウトしない場合に(ステップS24;No)、POS端末11のCPU61は、中止ボタンB51の押下が検出されるか否かを判定する(ステップS27)。一方、商品Aがフレームアウトした場合に(ステップS24;Yes)、POS端末11のCPU61は、再判定画面G55を撮像領域R512に表示する(ステップS25)。
図14は、再判定画面G55の一例を示す説明図である。再判定画面G55は、精度チェックを再度実施するか否かをオペレータに問う画面である。再判定画面G55は、精度チェック後に、商品Aがフレームアウトした場合に、撮像領域R512に表示される。再判定画面G55は、「再判定の場合[再判定]ボタンを押して商品をスキャナにかざしてください」とのメッセージを表示する。そして、再判定画面G55は、再判定ボタンB54を備える。再判定ボタンB54は、初期状態に戻し、再度、商品認識精度チェック処理における判定を行う場合に押下するボタンである。
次いで、POS端末11のCPU61は、再判定ボタンB54の押下が検出されるか否かを判定する(ステップS26)。再判定ボタンB54の押下が検出された場合に(ステップS26;Yes)、POS端末11のCPU61は、初期状態であるステップS13に戻る。一方、再判定ボタンB54の押下が検出されない場合に(ステップS26;No)、POS端末11のCPU61は、中止ボタンB51の押下が検出されるか否かを判定する(ステップS27)。
中止ボタンB51の押下が検出された場合に(ステップS27;Yes)、POS端末11のCPU61は、ステップS16に移行して中止実行画面G6を表示する。一方、中止ボタンB51の押下が検出されない場合に(ステップS27;No)、POS端末11のCPU61は、ステップS24に戻る。
選択した登録商品の類似度におけるランキングの順位が高位ではない場合に(ステップS22;No)、POS端末11のCPU61は、商品認識精度チェック処理の対象に選択した登録商品の類似度におけるランキングの順位が中位であるか否かを判定する(ステップS28)。ここで、ランキングの順位が中位とは、ランキング第1位を除いた商品候補であることを示す。具体的には、選択した登録商品の類似度におけるランキングの順位が第2位から第4位などである。
選択した登録商品の類似度におけるランキングの順位が中位である場合に(ステップS28;Yes)、POS端末11のCPU61(報知部92)は、通常認識判定領域R52に中認識結果画面G53を表示する(ステップS29)。
図15は、中認識結果画面G53の一例を示す説明図である。中認識結果画面G53は、類似度が第1位以外の商品候補であり、追加学習を推奨している旨を表示する画面である。
中認識結果画面G53は、判定結果領域R521に、類似度が許容範囲内にあることを示すマークが表示される。そして、中認識結果画面G53は、メッセージ表示領域R522に、「判定結果を上げる場合は追加学習してください」とのメッセージを表示する。また、中認識結果画面G53は、メッセージ表示領域R522に、追加学習実行ボタンB52aを表示する。追加学習実行ボタンB52aは、商品認識精度チェックの対象商品の特徴量の追加学習処理を開始する場合に押下するボタン(操作子)である。
選択した登録商品の類似度におけるランキングの順位が中位でない場合に(ステップS28;No)、POS端末11のCPU61(報知部92)は、選択した登録商品の類似度におけるランキングの順位が低位であるとして、通常認識判定領域R52に低認識結果画面G54を表示する(ステップS30)。ここで、選択した登録商品の類似度におけるランキングの順位が低位とは、商品候補より類似度が低いことを示す。具体的には、選択した登録商品の類似度におけるランキングの順位が第5位以下などである。
図16は、低認識結果画面G54の一例を示す説明図である。低認識結果画面G54は、類似度が商品候補より類似度が低く、追加学習が必要である旨を表示する画面である。また、低認識結果画面G54は、商品Aが検出できない場合に表示される。商品Aが検出できない場合とは、商品Aの全部または一部が撮像されていない場合や、商品Aを持つ手により、商品Aが隠れてしまっている場合などである。
低認識結果画面G54は、判定結果領域R521に、類似度が低いことを示すマークが表示される。そして、低認識結果画面G54は、メッセージ表示領域R522に、「追加学習が必要です」とのメッセージを表示する。また、低認識結果画面G54は、メッセージ表示領域R522に、追加学習実行ボタンB52bを表示する。追加学習実行ボタンB52bは、追加学習を行う場合に押下するボタンである。
次いで、POS端末11のCPU61は、選択した登録商品の類似度におけるランキングの順位が高位である場合に実行する処理(ステップS24からステップS27)と同様の処理を実行する(ステップS31からステップS34)。ランキングの順位が高位である場合に実行する処理との違いは、追加学習を行うための追加学習実行ボタンB52a、B52bの押下が検出されるか否かを判定することである。
具体的には、中止ボタンB51の押下が検出されない場合に(ステップS34;No)、POS端末11のCPU61は、追加学習実行ボタンB52a、B52bが押下されるか否かを判定する(ステップS35)。
追加学習実行ボタンB52a、B52bの押下が検出されない場合に(ステップS35;No)、POS端末11のCPU61は、ステップS31に戻る。一方、追加学習実行ボタンB52a、B52bの押下が検出された場合に(ステップS35;Yes)、POS端末11のCPU61(追加学習部93)は、追加学習準備画面G7を表示する(ステップS36)。
図17は、追加学習準備画面G7の一例を示す説明図である。追加学習準備画面G7は、オペレータに追加学習処理を開始する準備を促す画面である。よって、追加学習準備画面G7は、「学習する商品サンプルを3個用意してください」とのメッセージを表示する。また、追加学習準備画面G7は、用意する商品Aを表示する。図17は、用意する商品Aとしてキャベツを表示している。さらに、追加学習準備画面G7は、キャンセルボタンB71と、OKボタンB72とを備える。キャンセルボタンB71は、追加学習をキャンセルする場合に押下するボタンである。OKボタンB72は、準備が完了し、追加学習を開始する場合に押下するボタンである。
次いで、POS端末11のCPU61は、OKボタンB72の押下が検出されるか否かを判定する(ステップS37)。OKボタンB72の押下が検出されない場合に(ステップS37;No)、POS端末11のCPU61は、キャンセルボタンB71の押下が検出されるか否かを判定する(ステップS38)。
キャンセルボタンB71の押下が検出されない場合に(ステップS38;No)、POS端末11のCPU61は、ステップS37に戻る。一方、キャンセルボタンB71の押下が検出された場合に(ステップS38;Yes)、POS端末11のCPU61は、ステップS28に戻り、類似度に応じた画面を表示させる。
一方、OKボタンB72の押下が検出された場合に(ステップS37;Yes)、POS端末11のCPU61(追加学習部93)は、追加学習を開始(ステップS39)して処理を終了する。
以上のように、本実施形態によれば、物品指定部91は、PLUファイルF1から商品認識精度チェックの対象商品を選択させる。商品検出部52は、撮像部164が撮像し、画像取込部51により取り込まれたフレーム画像に含まれる商品Aを検出して特徴量を抽出する。そして、類似度算出部53は、PLUファイルF1に登録されている各商品の特徴量と、商品検出部52が抽出した特徴量とをそれぞれ比較することで、PLUファイルF1に登録された登録商品ごとに類似度を算出する。報知部92は、物品指定部91によって選択された商品Aの類似度が、PLUファイルF1の中で高位でない場合に、PLUファイルF1に記憶された照合用データ(特徴量)を追加学習による更新することについて報知する。よって、本実施形態は、照合用データ(特徴量)の追加学習の要否について報知することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
なお、上記実施形態では、情報処理装置としてPOS端末11を例にあげて説明している。しかし、情報処理装置は、POS端末11に限らない。例えば、パーソナルコンピュータやタブレット端末などであってもよい。この場合には、パーソナルコンピュータやタブレット端末に、スキャナなどの撮像装置を接続すればよい。
また、上記実施形態では、情報処理装置であるPOS端末11のCPU61は、画像取込部51、商品検出部52、類似度算出部53、類似度判定部54、商品提示部55、入力受付部57、情報入力部58、売上登録部59、物品指定部91、報知部92、及び追加学習部93としての機能を有していると説明した。しかし、これらの機能は、POS端末11のCPU61以外が備えていてもよい。例えば、商品読取装置101のCPU161に、前述の機能の全部または一部が備えられていてもよい。
また、上記実施形態では、照合用データを特徴量として説明したが、照合用データは、撮像された商品画像(基準画像)としてもよい。
また、上記実施形態では、店舗システムとしてPOS端末11と商品読取装置101とで構成されるチェックアウトシステム1を適用したがこれに限るものではなく、POS端末11及び商品読取装置101の機能を備えた1台構成の装置に適用するようにしてもよい。POS端末11及び商品読取装置101の機能を備えた1台構成の装置としては、スーパーマーケット等の店舗に設置されて用いられるセルフチェックアウト装置(以降、単にセルフPOSと称する)が挙げられる。
ここで、図18はセルフPOS200の構成を示す外観斜視図、図19はセルフPOS200のハードウェア構成を示すブロック図である。尚、以下では、図1および図2に示される同様の構成については同一の符号を付して示し、その重複する説明を省略する。図18および図19に示すように、セルフPOS200の本体202は、タッチパネル105が表面に配設された表示デバイス106や、商品Aの種別等を認識(検出)するために商品画像を読み取る商品読取部110を備えている。
表示デバイス106としては例えば液晶表示器が用いられる。表示デバイス106は、客にセルフPOS200の操作方法を知らせるための案内画面や、各種の入力画面や、商品読取部110で読み込んだ商品情報を表示する登録画面、商品Aの合計金額や預かり金額、釣銭額等を表示し、支払い方法の選択をする精算画面等を表示する。
商品読取部110は、客が商品Aに付されたコードシンボルを商品読取部110の読取窓103にかざすことで商品画像を撮像部164により読み取るものである。
また、本体202の右側にはかごに入った未精算の商品Aを置くための商品載置台203が設けられ、本体202の左側には精算済みの商品Aを置くための商品載置台204が設けられ、精算済みの商品Aを入れるための袋を掛ける袋掛けフック205や、精算済みの商品Aを袋に入れる前に一時的に置いておくための一時置き台206が設けられている。商品載置台203、204には計量器207、208がそれぞれ備えられており、精算の前後で商品Aの重量が同じであることを確認する機能を有している。
また、セルフPOS200の本体202には、精算用の紙幣の入金や釣り紙幣の受け取りを行うための釣り銭器201が設けられている。
このような構成のセルフPOS200を店舗システムに適用した場合、セルフPOS200が情報処理装置として機能することになる。
また、上記実施形態の各装置で実行されるプログラムは、各装置が備える記憶媒体(ROM又は記憶部)に予め組み込んで提供するものとするが、これに限らず、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。さらに、記憶媒体は、コンピュータ或いは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶又は一時記憶した記憶媒体も含まれる。
また、上記実施形態の各装置で実行されるプログラムをインターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよく、インターネット等のネットワーク経由で提供又は配布するように構成してもよい。