(57)【要約】【課題】物品を適切に認識することができる物品認識装置及び商品決済装置を提供する。【解決手段】実施形態によれば、物品認識装置は、インターフェースと、メモリと、プロセッサと、を備える。インターフェースは、撮影画像を取得する。メモリは、物品の特徴点の特徴量を示す辞書情報を格納する。プロセッサは、前記撮影画像から特徴点の特徴量を示す特徴点情報を抽出し、前記撮影画像から第１の物品に添付された識別情報を読み取り、前記メモリから前記第１の物品の辞書情報を取得し、前記辞書情報及び前記特徴点情報に基づいて前記第１の物品の物品領域を特定し、前記物品領域外の特徴点情報に基づいて第２の物品を認識する。【選択図】      図１
2019128826.tif 000002
【特許請求の範囲】
【請求項１】
撮影画像を取得するインターフェースと、
物品の特徴点の特徴量を示す辞書情報を格納するメモリと、
前記撮影画像から特徴点の特徴量を示す特徴点情報を抽出し、
前記撮影画像から第１の物品に添付された識別情報を読み取り、
前記メモリから前記第１の物品の辞書情報を取得し、
前記辞書情報及び前記特徴点情報に基づいて前記第１の物品の物品領域を特定し、
前記物品領域外の特徴点情報に基づいて第２の物品を認識する、
プロセッサと、
を備える物品認識装置。
【請求項２】
前記メモリは、物品の外形を示す外形情報を格納し、
前記プロセッサは、
前記メモリから前記第１の物品の外形情報を取得し、
前記外形情報にさらに基づいて前記物品領域を特定する、
前記請求項１に記載の物品認識装置。
【請求項３】
前記プロセッサは、前記物品領域に前記識別情報が写る識別情報領域が含まれない場合に、エラーを出力する、
前記請求項１又は２に記載の物品認識装置。
【請求項４】
前記識別情報は、バーコードである、
前記請求項１乃至３の何れか１項に記載の物品認識装置。
【請求項５】
撮影画像を取得するインターフェースと、
商品の特徴点の特徴量を示す辞書情報を格納するメモリと、
前記撮影画像から特徴点の特徴量を示す特徴点情報を抽出し、
前記撮影画像から第１の商品に添付された識別情報を読み取り、
前記メモリから前記第１の商品の辞書情報を取得し、
前記辞書情報及び前記特徴点情報に基づいて前記第１の商品の商品領域を特定し、
前記商品領域外の特徴点情報に基づいて第２の商品を認識する、
前記第１の商品及び前記第２の商品を決済する、
プロセッサと、
を備える商品決済装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、物品認識装置及び商品決済装置に関する。
【背景技術】
【０００２】
物品認識装置には、バーコードなどの識別情報を読み取って物品を認識した後に、識別情報の読取に失敗した物品を画像認識で認識するものがある。そのような物品認識装置は、識別情報で認識した商品が写る領域を除外して画像認識を行う。
【０００３】
しかしながら、従来、物品認識装置には、識別情報の位置から適切に商品が写る領域を特定できないことがある。その結果、物品認識装置は、物品を適切に認識できないおそれがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−１２３１６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記の課題を解決するため、物品を適切に認識することができる物品認識装置及び商品決済装置を提供する。
【課題を解決するための手段】
【０００６】
実施形態によれば、物品認識装置は、インターフェースと、メモリと、プロセッサと、を備える。インターフェースは、撮影画像を取得する。メモリは、物品の特徴点の特徴量を示す辞書情報を格納する。プロセッサは、前記撮影画像から特徴点の特徴量を示す特徴点情報を抽出し、前記撮影画像から第１の物品に添付された識別情報を読み取り、前記メモリから前記第１の物品の辞書情報を取得し、前記辞書情報及び前記特徴点情報に基づいて前記第１の物品の物品領域を特定し、前記物品領域外の特徴点情報に基づいて第２の物品を認識する。
【図面の簡単な説明】
【０００７】
【図１】図１は、実施形態に係るチェックアウト装置の構成例を概略的に示す図である。
【図２】図２は、実施形態に係るチェックアウト装置の構成例を示すブロック図である。
【図３】図３は、実施形態に係る撮影画像の例を示す図である。
【図４】図４は、実施形態に係る特徴点の例を示す図である。
【図５】図５は、実施形態に係る特徴点の例を示す図である。
【図６】図６は、実施形態に係るチェックアウト装置の動作例を示すフローチャートである。
【図７】図７は、実施形態に係るチェックアウト装置の動作例を示すフローチャートである。
【図８】図８は、実施形態に係るチェックアウト装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、実施形態について、図面を参照して説明する。  
実施形態に係るチェックアウト装置（物品認識装置、商品決済装置）は、商品（物品）を決済する。チェックアウト装置は、商品を撮影した撮影画像から商品を認識し決済する。チェックアウト装置は、商品を販売する店舗などに設置される。たとえば、チェックアウト装置は、商品が所定の位置に配置された場合又はチェックアウト装置が所定の操作を受け付けた場合に、商品について決済処理を実行する。チェックアウト装置は、利用者が自ら決済処理を行うセルフレジとして設置されてもよい。また、チェックアウト装置は、店舗の店員が決済処理をする通常のレジとして設置されてもよい。
【０００９】
図１は、チェックアウト装置１の構成例を示すブロック図である。図１が示すように、チェックアウト装置１は、筐体２、カメラ３、ディスプレイ４、操作部５及び設置台６などを備える。
【００１０】
筐体２は、チェックアウト装置１の外形を形成するフレームである。筐体２は、商品１０を設置することができるように形成される。図１が示す例においては、筐体２は、コの字型であり、商品１０を積載することができるように形成される。
【００１１】
カメラ３は、設置台６上の商品１０を撮影する。図１が示す例においては、カメラ３は、設置台６を上方から撮影するように設置される。カメラ３は、斜め上方から設置台６を撮影するように設置されてもよい。カメラ３が設置される位置及び向きは、特定の構成に限定されるものではない。
【００１２】
なお、チェックアウト装置１は、複数個のカメラ３を備えてもよい。この場合、複数のカメラ３は、それぞれ異なる位置及び角度で設置台６上の商品を撮影するように設置されてもよい。
【００１３】
たとえば、カメラ３は、ＣＣＤカメラなどである。また、カメラ３は、不可視光を撮影するものであってもよい。カメラ３の構成は、特定の構成に限定されるものではない。  
ディスプレイ４は、後述するプロセッサ２１が出力する画像を表示する表示装置である。ディスプレイ４は、たとえば、液晶モニタなどである。
【００１４】
操作部５は、チェックアウト装置１の利用者によって、種々の操作指示が入力される。操作部５は、利用者に入力された操作指示のデータをプロセッサ２１へ送信する。操作部５は、たとえば、キーボード、テンキー又はタッチパネルなどである。また、操作部５は、利用者からジェスチャーの入力を受け付けてもよい。  
ここでは、操作部５は、タッチパネルであり、ディスプレイ４と一体的に形成されているものとする。
【００１５】
設置台６は、商品１０を設置する台である。設置台６は、利用者が商品１０を配置することができるように筐体２上に設置される。なお、設置台６は、商品１０が配置されたことを検知するセンサを備えてもよい。センサは、商品１０が配置されたことを示す信号をプロセッサ２１に送信する。
【００１６】
商品１０は、利用者が決済する商品である。商品１０は、所定の面に識別情報を備える。識別情報は、商品１０を特定する情報である。たとえば、識別情報は、バーコード、ＱＲコード（登録商標）、文字、数字又はマークなどである。ここでは、識別情報は、バーコードであるものとする。バーコードは、商品１０を特定する商品コードをエンコードしたものである。なお、商品１０は、識別情報を備えないものであってもよい。
【００１７】
なお、カメラ３、ディスプレイ４、操作部５又は設置台６は、筐体２と一体的に形成されてもよい。  
また、チェックアウト装置１は、商品１０を照らす照明などを備えてもよい。
【００１８】
次に、チェックアウト装置１の構成例について説明する。  
図２は、チェックアウト装置１の構成例を示すブロック図である。  
図２が示すように、チェックアウト装置１は、カメラ３、ディスプレイ４、操作部５、プロセッサ２１、ＲＯＭ２２、ＲＡＭ２３、ＮＶＭ２４、カメラインターフェース２５、ディスプレイインターフェース２６、操作部インターフェース２７及び通信インターフェース２８などを備える。プロセッサ２１と、ＲＯＭ２２、ＲＡＭ２３、ＮＶＭ２４、カメラインターフェース２５、ディスプレイインターフェース２６、操作部インターフェース２７及び通信インターフェース２８とは、データバスなどを介して互いに接続される。
【００１９】
カメラインターフェース２５とカメラ３とは、データバスなどを介して互いに接続される。ディスプレイインターフェース２６とディスプレイ４とは、データバスなどを介して互いに接続される。操作部インターフェース２７と操作部５とは、データバスなどを介して互いに接続される。
【００２０】
なお、チェックアウト装置１は、図２が示すような構成の他に必要に応じた構成を具備したり、特定の構成を除外したりしてもよい。
【００２１】
カメラ３、ディスプレイ４及び操作部５は、前述の通りである。  
プロセッサ２１は、チェックアウト装置１全体の動作を制御する機能を有する。プロセッサ２１は、内部メモリ及び各種のインターフェースなどを備えても良い。プロセッサ２１は、内部メモリ、ＲＯＭ２２又はＮＶＭ２４などに予め記憶したプログラムを実行することにより種々の処理を実現する。
【００２２】
なお、プロセッサ２１がプログラムを実行することにより実現する各種の機能のうちの一部は、ハードウエア回路により実現されるものであっても良い。この場合、プロセッサ２１は、ハードウエア回路により実行される機能を制御する。
【００２３】
ＲＯＭ２２は、予め制御用のプログラム及び制御データなどを記憶する不揮発性のメモリである。ＲＯＭ２２は、製造段階で制御プログラム及び制御データなどを記憶した状態でチェックアウト装置１に組み込まれる。即ち、ＲＯＭ２２に記憶される制御プログラム及び制御データは、予めチェックアウト装置１の仕様に応じて組み込まれる。
【００２４】
ＲＡＭ２３は、揮発性のメモリである。ＲＡＭ２３は、プロセッサ２１の処理中のデータなどを一時的に格納する。ＲＡＭ２３は、プロセッサ２１からの命令に基づき種々のアプリケーションプログラムを格納する。また、ＲＡＭ２３は、アプリケーションプログラムの実行に必要なデータ及びアプリケーションプログラムの実行結果などを格納してもよい。
【００２５】
ＮＶＭ２４は、データの書き込み及び書き換えが可能な不揮発性のメモリである。ＮＶＭ２４は、たとえば、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）、ＥＥＰＲＯＭ（登録商標）又はフラッシュメモリなどから構成される。ＮＶＭ２４は、チェックアウト装置１の運用用途に応じて制御プログラム、アプリケーション及び種々のデータなどを格納する。
【００２６】
ＮＶＭ２４は、商品情報を格納する。商品情報は、商品に関する情報である。商品情報は、商品コードと辞書情報と外形情報とを対応付けて格納する。  
辞書情報は、局所特徴量を用いて商品を特定するための情報である。辞書情報は、商品画像の特徴点及び特徴量を格納する。たとえば、辞書情報は、複数の特徴点の位置と特徴量とを対応付けて特徴点セットとして格納する。
【００２７】
外形情報は、辞書情報の特徴点の座標系における商品の外形を示す。たとえば、外形情報は、商品の四隅の座標を示す。
【００２８】
また、商品情報は、商品の外寸、商品名及び価格などを備えてもよい。商品情報の構成は、特定の構成に限定されるものではない。
【００２９】
ＮＶＭ２４は、予め各商品に関する商品情報を格納する。たとえば、プロセッサ２１は、外部装置から商品情報を受信し、ＮＶＭ２４に格納する。また、商品情報は、適宜更新されてもよい。
【００３０】
カメラインターフェース２５は、プロセッサ２１がカメラ３と通信するためのインターフェースである。たとえば、プロセッサ２１は、カメラインターフェース２５を通じて、カメラ３に画像を取得させる信号を送信する。また、プロセッサ２１は、カメラインターフェース２５を通じて撮影のためのカメラパラメータをカメラ３に設定してもよい。
【００３１】
また、カメラインターフェース２５は、カメラ３が撮影した画像を取得する。カメラインターフェース２５は、取得した画像をプロセッサ２１へ送信する。プロセッサ２１は、カメラインターフェース２５からカメラ３が撮影した画像を取得する。
【００３２】
ディスプレイインターフェース２６は、プロセッサ２１がディスプレイ４と通信するためのインターフェースである。たとえば、プロセッサ２１は、ディスプレイインターフェース２６を通じて、ディスプレイ４に表示画面を送信する。
【００３３】
操作部インターフェース２７は、プロセッサ２１が操作部５と通信するためのインターフェースである。たとえば、プロセッサ２１は、操作部インターフェース２７を通じて、操作部５に入力された操作を示す信号を受信する。
【００３４】
通信インターフェース２８は、外部装置とデータを送受信するためのインターフェースである。たとえば、通信インターフェース２８は、ＬＡＮ（Local Area Network）等のネットワークを介して外部装置とデータを送受信する。また、通信インターフェース２８は、ＵＳＢ接続をサポートするインターフェースであってもよい。
【００３５】
次に、チェックアウト装置１が実現する機能について説明する。チェックアウト装置１が実現する機能は、プロセッサ２１がＮＶＭ２４などに格納されるプログラムを実行することで実現される。
【００３６】
まず、プロセッサ２１は、商品が配置された所定の場所を撮影した画像（撮影画像）を取得する機能を有する。ここでは、プロセッサ２１は、設置台６上に配置された商品を撮影した画像を取得する。
【００３７】
たとえば、プロセッサ２１は、設置台６上に利用者によって商品１０が配置されたことを検知する。たとえば、プロセッサ２１は、設置台６からの信号に基づいて設置台６上に商品１０が配置されたことを検知する。なお、プロセッサ２１は、カメラ３からの画像に基づいて設置台６上に商品１０が配置されたことを検知してもよい。また、プロセッサ２１は、利用者から商品１０を設置台６上に配置したことを示す操作を受け付けてもよい。
【００３８】
プロセッサ２１は、商品１０が配置されたことを検知すると、商品１０を含む画像を撮影する。たとえば、プロセッサ２１は、カメラ３に対して撮影を行う信号を送信する。プロセッサ２１は、カメラ３から撮影画像を取得する。なお、プロセッサ２１は、画像を撮影するために、撮影パラメータをカメラ３に設定してもよい。  
なお、プロセッサ２１は、外部装置から撮影画像を取得してもよい。
【００３９】
図３は、撮影画像の例を示す。図３が示す例では、撮影画像は、商品４０１乃至４０４を写す。また、商品４０１（第１の商品、第１の物品）は、バーコード４０５を上面となるように配置される。バーコード４０５は、商品４０１を示す識別情報である。また、商品４０２及び４０３（第２の商品、第２の物品）は、バーコードが上面とならない姿勢で配置される。なお、商品４０２及び４０３は、バーコードを添付されない商品であってもよい。
【００４０】
また、商品４０４（第１の商品、第１の物品）は、バーコード４０６を上面となるように配置される。バーコード４０６は、商品４０４を示す識別情報である。
【００４１】
また、プロセッサ２１は、撮影画像から特徴点情報を抽出する機能を有する。  
即ち、プロセッサ２１は、撮影画像から特徴点を抽出し、各特徴点の特徴量を算出する。特徴点情報は、特徴点及び特徴量などの情報を含む。
【００４２】
たとえば、特徴点は、画像のコーナー部分の点、又は、画像濃度の２次微分関数の極点（極大・極小点）など局所領域内で一意に定められる点である。特徴点は、位置を表す座標（ｘ、ｙ）によって示される。
【００４３】
特徴量は、特徴点又は特徴点周辺の画像から算出される値である。たとえば、特徴量は、特徴点近傍の濃度パターンなどに基づいて算出される。
【００４４】
また、特徴点情報は、特徴量を算出する画像の大きさ、方向を示すスケール又はオリエンテーションなどの情報を含んでもよい。  
特徴点情報の構成は、特定の構成に限定されるものではない。
【００４５】
プロセッサ２１は、抽出した特徴点情報を特徴点リストに格納する。
【００４６】
図４は、プロセッサ２１が抽出した特徴点情報の例を示す。図４では、黒点は、特徴点を示す。図４が示すように、商品４０１乃至４０４上に特徴点が抽出される。たとえば、黒点５０１は、商品４０１上に抽出される。
【００４７】
また、プロセッサ２１は、撮影画像の識別情報を読み取って商品を認識する機能を有する。ここでは、プロセッサ２１は、撮影画像から識別情報としてバーコードを読み取る。
【００４８】
たとえば、プロセッサ２１は、所定の画像処理によってバーコードが写るバーコード領域（識別情報領域）を抽出する。バーコード領域を特定すると、プロセッサ２１は、バーコード領域内のバーコードをデコードする。即ち、プロセッサ２１は、バーコードから商品を特定する商品コードを読み取る。プロセッサ２１は、商品コードを読み取った商品を認識する。
【００４９】
プロセッサ２１は、商品コードとバーコード領域の位置とを対応付けて検出バーコードリストに格納する。
【００５０】
なお、プロセッサ２１は、商品コードがＮＶＭ２４に格納される商品情報のいずれかに含まれるか判定してもよい。プロセッサ２１は、商品情報の何れかに含まれる商品コードとバーコード領域の位置とを検出バーコードリストに格納してもよい。
【００５１】
また、プロセッサ２１は、識別情報を読み取った商品が写る商品領域（物品領域）を撮影画像から特定する機能を有する。  
プロセッサ２１は、特徴点リストの特徴点情報に基づいて商品領域を特定する。たとえば、プロセッサ２１は、バーコード（識別情報）から得られた商品コードを含む商品情報をＮＶＭ２４から取得する。商品情報を取得すると、プロセッサ２１は、商品情報の辞書情報を取得する。
【００５２】
プロセッサ２１は、特徴点リストの特徴点情報と辞書情報とをマッチングする。たとえば、プロセッサ２１は、特徴点リストから辞書情報の特徴点セットと最も近い特徴点を抽出する。即ち、プロセッサ２１は、特徴点セットに対応する特徴点を特徴点リストから抽出する。
【００５３】
なお、プロセッサ２１は、バーコード領域から所定の距離内又はバーコード領域の位置に基づいて設定される所定の領域内の特徴点から特徴点セットに対応する特徴点を抽出してもよい。
【００５４】
特徴点セットと最も近い特徴点を抽出すると、プロセッサ２１は、特徴点セットの特徴点を抽出した特徴点に最も多く重ねる変換行列Ｍを算出する。変換行列Ｍは、辞書特徴点の座標系から商品画像の特徴点の座標系への変換行列を表す。
変換行列Ｍを算出すると、プロセッサ２１は、変換行列Ｍに基づいて両特徴点の類似率Ｒを算出する。たとえば、プロセッサ２１は、変換行列Ｍで特徴点セットの座標を変換した場合に位置が一致する（又は、両特徴点が所定の距離内にある）特徴点の個数を特徴点セットの個数で割った値を類似率Ｒとする。
【００５５】
類似率Ｒを算出すると、プロセッサ２１は、類似率Ｒが所定の閾値Ｒｔｈｒを超えるか判定する。閾値Ｒｔｈｒは、両特徴点がマッチした（商品を認識した）と判定するための閾値である。
【００５６】
類似率Ｒが閾値Ｒｔｈｒを超えると判定すると、プロセッサ２１は、商品情報の外形情報に基づいて商品領域を特定する。たとえば、プロセッサ２１は、変換行列Ｍを外形情報の座標に掛けて商品領域の座標を算出する。
【００５７】
プロセッサ２１は、以下の式に従って商品領域の座標を算出する。
Ｐ１（ｘ，ｙ）＝Ｍ・Ｐｄ１（ｘ，ｙ）
Ｐ２（ｘ，ｙ）＝Ｍ・Ｐｄ２（ｘ，ｙ）
Ｐ３（ｘ，ｙ）＝Ｍ・Ｐｄ３（ｘ，ｙ）
Ｐ４（ｘ，ｙ）＝Ｍ・Ｐｄ４（ｘ，ｙ）
ここで、Ｐｄ１（ｘ，ｙ）、Ｐｄ２（ｘ，ｙ）、Ｐｄ３（ｘ，ｙ）及びＰｄ４（ｘ，ｙ）は、商品情報の外形情報の座標である。ここでは、外形情報は、４隅の座標を示す。また、Ｐ１（ｘ，ｙ）、Ｐ２（ｘ，ｙ）、Ｐ３（ｘ，ｙ）及びＰ４（ｘ，ｙ）は、商品領域の４隅の座標を示す。
【００５８】
なお、プロセッサ２１は、特定された商品領域にバーコード領域があるか判定する。プロセッサ２１は、商品領域にバーコード領域がない場合、商品領域の特定に失敗したものと判定する。プロセッサ２１は、商品領域の特定に失敗するとエラーを出力してもよい。
【００５９】
また、プロセッサ２１は、特徴点リストから商品領域内にある特徴点情報を削除する機能を有する。  
プロセッサ２１は、特徴点リストの各特徴点情報の特徴点が商品領域内にあるか判定する。プロセッサ２１は、商品領域内にあると判定した特徴点の特徴点情報を特徴点リストから削除する。
【００６０】
図５は、プロセッサ２１が特徴点情報を削除する動作例を示す図である。図５では、プロセッサ２１は、バーコードを読み取って商品４０１を認識したものとする。プロセッサ２１は、特徴点リストの特徴点情報などから商品４０１の商品領域６０１を特定する。商品領域６０１を特定すると、プロセッサ２１は、商品領域６０１内の特徴点情報を削除する。
【００６１】
プロセッサ２１は、バーコードを読み取って認識した各商品について上記の動作を行う。
【００６２】
また、プロセッサ２１は、残りの特徴点リストから商品を認識する機能を有する。即ち、プロセッサ２１は、商品領域外の特徴点から商品を認識する。  
プロセッサ２１は、ＮＶＭ２４から１つの商品情報を取得する。商品情報を取得すると、プロセッサ２１は、商品情報の特徴点セットと特徴点リストとに基づいて特徴点セットの類似率Ｒを算出する。類似率Ｒの算出方法は、前述の通りである。
【００６３】
プロセッサ２１は、ＮＶＭ２４が格納する各商品情報について類似率Ｒを算出する。各商品情報の類似率Ｒを算出すると、プロセッサ２１は、類似率Ｒの中から最も高い類似率Ｒｍａｘを特定する。類似率Ｒｍａｘを特定すると、プロセッサ２１は、類似率Ｒｍａｘが閾値Ｒｔｈｒを超えるか判定する。類似率Ｒｍａｘが閾値Ｒｔｈｒを超えると判定すると、プロセッサ２１は、類似率Ｒｍａｘの商品情報に対応する商品を認識する。商品を認識すると、プロセッサ２１は、類似率Ｒｍａｘを算出した変換行列Ｍｍａｘに基づいて認識した商品の商品領域を特定する。
【００６４】
たとえば、プロセッサ２１は、変換行列Ｍｍａｘを認識した商品の外形情報の座標に掛けて商品領域の座標を算出する。
【００６５】
プロセッサ２１は、以下の式に従って商品領域の座標を算出する。
Ｐ１（ｘ，ｙ）＝Ｍｍａｘ・Ｐｄ１（ｘ，ｙ）
Ｐ２（ｘ，ｙ）＝Ｍｍａｘ・Ｐｄ２（ｘ，ｙ）
Ｐ３（ｘ，ｙ）＝Ｍｍａｘ・Ｐｄ３（ｘ，ｙ）
Ｐ４（ｘ，ｙ）＝Ｍｍａｘ・Ｐｄ４（ｘ，ｙ）
ここで、Ｐｄ１（ｘ，ｙ）、Ｐｄ２（ｘ，ｙ）、Ｐｄ３（ｘ，ｙ）及びＰｄ４（ｘ，ｙ）は、商品情報の外形情報の座標である。ここでは、外形情報は、４隅の座標を示す。また、Ｐ１（ｘ，ｙ）、Ｐ２（ｘ，ｙ）、Ｐ３（ｘ，ｙ）及びＰ４（ｘ，ｙ）は、商品領域の４隅の座標を示す。
【００６６】
商品領域を特定すると、プロセッサ２１は、特徴点リストから当該商品領域内の特徴点情報を削除する。
【００６７】
プロセッサ２１は、上記の動作を類似率Ｒｍａｘが閾値Ｒｔｈｒ以下になるまで繰り返し、商品画像の商品を認識する。
【００６８】
また、プロセッサ２１は、認識された商品を決済する機能を有する。  
プロセッサ２１は、認識された商品の商品情報などから代金を取得する。また、プロセッサ２１は、外部装置から認識された商品の代金を取得してもよい。
【００６９】
プロセッサ２１は、商品の代金に基づいて商品を決済する。たとえば、プロセッサ２１は、利用者からクレジットカード情報の入力を受け付ける。たとえば、プロセッサ２１は、クレジットカードリーダなどを用いてクレジットカード情報を取得してもよい。プロセッサ２１は、クレジットカード情報に基づいて商品を決済する。
【００７０】
また、プロセッサ２１は、現金、デビットカード又は電子マネーなどを用いて商品を決済してもよい。プロセッサ２１が商品を決済する方法は、特定の方法に限定されるものではない。
【００７１】
次に、チェックアウト装置１の動作例について説明する。  
図６は、チェックアウト装置１の動作例について説明するためのフローチャートである。ここでは、利用者は、設置台６に商品をセットするものとする。
【００７２】
まず、プロセッサ２１は、カメラ３を用いて商品が写る商品画像を取得する（ＡＣＴ１１）。商品画像を取得すると、プロセッサ２１は、商品画像から特徴点情報を抽出して特徴点リストに格納する（ＡＣＴ１２）。
【００７３】
特徴点情報を特徴点リストに格納すると、プロセッサ２１は、バーコードを読み取って商品を認識する（ＡＣＴ１３）。バーコードを読み取って商品を認識すると、プロセッサ２１は、特徴点情報を用いて商品を認識する（ＡＣＴ１４）。
【００７４】
特徴点情報を用いて商品を認識すると、プロセッサ２１は、ＡＣＴ１３及びＡＣＴ１４で認識された商品を決済する（ＡＣＴ１５）。商品を決済すると、プロセッサ２１は、動作を終了する。
【００７５】
次に、プロセッサ２１がバーコードを読み取って商品を認識する動作例（ＡＣＴ１３）について説明する。  
図７は、プロセッサ２１がバーコードを読み取って商品を認識する動作例について説明するためのフローチャートである。
【００７６】
まず、プロセッサ２１は、ｉをリセットする（ＡＣＴ２１）。即ち、プロセッサ２１は、ｉ＝１とする。ｉをリセットすると、プロセッサ２１は、１つのバーコード領域からバーコードを読み取って商品を認識する（ＡＣＴ２２）。
【００７７】
商品を認識すると、プロセッサ２１は、当該商品の商品情報から特徴点セットを取得する（ＡＣＴ２３）。特徴点セットを取得すると、プロセッサ２１は、特徴点リストから特徴点セットに対応する特徴点を特定する（ＡＣＴ２４）。
【００７８】
対応する特徴点を特定すると、プロセッサ２１は、変換行列Ｍを算出する（ＡＣＴ２５）。変換行列Ｍを算出すると、プロセッサ２１は、変換行列Ｍを用いた類似率Ｒが閾値Ｒｔｈｒを超えるか判定する（ＡＣＴ２６）。
【００７９】
類似率Ｒが閾値Ｒｔｈｒを超えると判定すると（ＡＣＴ２６、ＹＥＳ）、プロセッサ２１は、対応する特徴点などに基づいて商品領域を特定する（ＡＣＴ２７）。商品領域を特定すると、プロセッサ２１は、商品領域にバーコード領域が含まれるか判定する（ＡＣＴ２８）。
【００８０】
商品領域にバーコード領域が含まれると判定すると（ＡＣＴ２８、ＹＥＳ）、プロセッサ２１は、特徴点リストから対応する特徴点の特徴点情報を削除する（ＡＣＴ２９）。特徴点情報を削除すると、プロセッサ２１は、ｉをインクリメントする（ＡＣＴ３０）。
【００８１】
ｉをインクリメントすると、プロセッサ２１は、ｉがＮｂを超えるか判定する（ＡＣＴ３１）。ここで、Ｎｂは、特定されたバーコード領域の個数である。
【００８２】
ｉがＮｂ以下であると判定すると（ＡＣＴ３１、ＮＯ）、プロセッサ２１は、ＡＣＴ２２に戻る。
【００８３】
類似率Ｒが閾値Ｒｔｈｒ以下であると判定した場合（ＡＣＴ２６、ＮＯ）、又は、商品領域にバーコード領域が含まれないと判定した場合（ＡＣＴ２８、ＹＥＳ）、プロセッサ２１は、ＡＣＴ３０に進む。
【００８４】
ｉがＮｂを超えると判定すると（ＡＣＴ３１、ＹＥＳ）、プロセッサ２１は、動作を終了する。
【００８５】
なお、プロセッサ２１は、類似率Ｒが閾値Ｒｔｈｒ以下であると判定した場合（ＡＣＴ２６、ＮＯ）、又は、商品領域にバーコード領域が含まれないと判定した場合（ＡＣＴ２８、ＮＯ）、動作を終了してもよい。
【００８６】
次に、プロセッサ２１が特徴点情報を用いて商品を認識する動作例（ＡＣＴ１４）について説明する。  
図８は、プロセッサ２１が特徴点情報を用いて商品を認識する動作例について説明するためのフローチャートである。
【００８７】
まず、プロセッサ２１は、ｉ、Ｒｍａｘ及びｉｍａｘをリセットする（ＡＣＴ４１）。即ち、プロセッサ２１は、ｉ＝１、Ｒｍａｘ＝０及びｉｍａｘ＝０とする。ｉ、Ｒｍａｘ及びｉｍａｘをリセットすると、プロセッサ２１は、ｉ番目の商品情報から特徴点セットを取得する（ＡＣＴ４２）。ここで、ｉは、ＮＶＭ２４に所定の順序で格納される商品情報の番号を示す。
【００８８】
特徴点セットを取得すると、プロセッサ２１は、変換行列Ｍを算出し特徴点リストの対応する特徴点と特徴点セットとの類似率Ｒを算出する（ＡＣＴ４３）。類似率Ｒを算出すると、プロセッサ２１は、類似率ＲがＲｍａｘを超えるか判定する（ＡＣＴ４４）。
【００８９】
類似率ＲがＲｍａｘを超えると判定すると（ＡＣＴ４４、ＹＥＳ）、プロセッサ２１は、Ｒｍａｘ、ｉｍａｘ及びＭｍａｘを更新する（ＡＣＴ４５）。即ち、プロセッサ２１は、Ｒｍａｘ＝類似率Ｒ、ｉｍａｘ＝ｉ及びＭｍａｘ＝Ｍとする。
【００９０】
Ｒｍａｘ、ｉｍａｘ及びＭｍａｘを更新すると、プロセッサ２１は、ｉをインクリメントする（ＡＣＴ４６）。ｉをインクリメントすると、プロセッサ２１は、ｉがＮｍを超えるか判定する（ＡＣＴ４７）。ここで、Ｎｍは、辞書に登録されている商品情報の個数である。
【００９１】
ｉがＮｍ以下であると判定すると（ＡＣＴ４７、ＮＯ）、プロセッサ２１は、ＡＣＴ４２に戻る。
【００９２】
ｉがＮｍを超えると判定すると（ＡＣＴ４７、ＹＥＳ）、プロセッサ２１は、Ｒｍａｘが閾値Ｒｔｈｒを超えるか判定する（ＡＣＴ４８）。Ｒｍａｘが閾値Ｒｔｈｒを超えると判定すると（ＡＣＴ４８、ＹＥＳ）、プロセッサ２１は、ｉ番目の商品情報の商品を認識する（ＡＣＴ４９）。
【００９３】
ｉ番目の商品情報の商品を認識すると、プロセッサ２１は、特徴点リストから当該商品の商品領域内の特徴点情報を削除する（ＡＣＴ５０）。特徴点情報を削除すると、プロセッサ２１は、ＡＣＴ４１に戻る。
【００９４】
Ｒｍａｘが閾値Ｒｔｈｒ以下であると判定すると（ＡＣＴ４８、ＮＯ）、プロセッサ２１は、動作を終了する。
【００９５】
なお、プロセッサ２１は、類似率Ｒが閾値Ｒｔｈｒを超えた場合に当該類似率Ｒの特徴点セットの商品を認識してもよい。
【００９６】
また、チェックアウト装置１は、決済処理を行わなくともよい。たとえば、チェックアウト装置１は、認識された商品を示す情報（商品コードなど）を外部装置に送信してもよい。
【００９７】
また、商品は、矩形でなくともよい。商品情報は、外形情報として商品の外形を示す線の情報を含んでもよい。
【００９８】
以上のように構成されたチェックアウト装置は、バーコードなどの識別情報を用いて商品を認識する。また、チェックアウト装置は、特徴点情報に基づいて当該商品が写る商品領域を特定する。その結果、チェックアウト装置は、商品領域を適切に特定することができる。
【００９９】
また、チェックアウト装置は、商品領域外の特徴点情報に基づいて物品を認識する。その結果、チェックアウト装置は、すでに認識した商品の特徴点情報を適切に除外して物品を認識することができる。従って、チェックアウト装置は、物品を適切に認識することができる。
【０１００】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１０１】
１…チェックアウト装置、２…筐体、３…カメラ、６…設置台、１０…商品、２１…プロセッサ、２４…ＮＶＭ、２５…カメラインターフェース、４０１…商品、４０２…商品、４０４…商品、４０５…バーコード、４０６…バーコード、５０１…黒点、６０１…商品領域。
【図１】
2019128826.tif 000003
【図２】
2019128826.tif 000004
【図３】
2019128826.tif 000005
【図４】
2019128826.tif 000006
【図５】
2019128826.tif 000007
【図６】
2019128826.tif 000008
【図７】
2019128826.tif 000009
【図８】
2019128826.tif 000010