(57)【要約】【課題】商品棚位置登録プログラム、及び情報処理装置において、店員ができるだけ少ない工数で、現在の商品棚位置情報を登録する。【解決手段】商品棚位置登録プログラムが実装されたスマートフォンは、商品棚の撮影画像に写り込んだ各商品の商品ＩＤ情報を認識し（Ｓ８）、認識した商品ＩＤ情報ｄ＿ｘに対応した商品（の商品タグ）の３次元位置ｄｐ＿ｘを算出する（Ｓ９）。そして、撮影画像に写り込んだ各商品について、これらの商品の商品ＩＤ情報と３次元位置を、これらの商品が陳列された商品棚と関連付けて、商品棚位置情報ＥＬの一部又は全部として登録する（Ｓ１０）。これにより、従来の小売店における商品の棚位置管理方法と比べて、店員が現在の商品棚位置情報を登録するのに必要な工数を減らすことができる。【選択図】図３
2019174959.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置を、
商品棚の撮影画像に写り込んだ各商品の商品ＩＤ情報を認識する商品ＩＤ情報認識部、
前記撮影画像に基づいて、前記商品ＩＤ情報認識部により認識した商品ＩＤ情報に対応した商品の３次元位置を算出する商品３次元位置算出部、及び
前記撮影画像に写り込んだ各商品について、前記商品ＩＤ情報認識部により認識した商品ＩＤ情報と、前記商品３次元位置算出部により算出した商品の３次元位置とを、前記商品ＩＤ情報に対応した商品が陳列された商品棚と関連付けて、商品棚位置情報の一部又は全部として登録する商品棚位置情報登録部、
として機能させるための、商品棚位置登録プログラム。
【請求項２】
前記情報処理装置を、さらに、
前記撮影画像に写り込んだ各商品の商品ＩＤ情報を認識して、この商品ＩＤ情報の認識が最初に成功したときに、認識に成功した商品ＩＤ情報に対応した商品が陳列された商品棚を、前記商品棚位置情報登録部により登録した商品棚位置情報に基づいて、判別する商品棚判別部と、
前記商品棚判別部によって、前記認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品のうち、前記撮影画像に写り込んだ各商品について、これらの商品の商品ＩＤ情報に対応した商品情報を、前記商品棚位置情報に基づいて、前記撮影画像における前記各商品の３次元位置に対応した位置に表示するように制御する表示制御部として機能させることを特徴とする請求項１に記載の商品棚位置登録プログラム。
【請求項３】
前記情報処理装置を、さらに、
前記撮影画像に写り込んだ各商品の領域を検出する商品領域検出部として機能させ、
前記表示制御部は、前記商品棚判別部によって、前記認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品の領域のうち、前記商品領域検出部による検出に成功した商品の領域に、マーカーを付して表示することを特徴とする請求項２に記載の商品棚位置登録プログラム。
【請求項４】
前記商品ＩＤ情報は、各商品の商品タグに記載された商品ＩＤ情報であり、
前記情報処理装置を、さらに、
前記撮影画像の撮影時における、カメラの３次元位置と、前記カメラの撮影方向とを推定するカメラ位置姿勢推定部と、
前記撮影画像に写り込んだ前記各商品の商品タグの２次元位置とサイズを検出する商品タグ領域検出部として機能させ、
前記商品３次元位置算出部は、前記カメラ位置姿勢推定部により推定した、前記カメラの３次元位置と、前記カメラの撮影方向とに加えて、前記商品タグ領域検出部により検出した各商品の商品タグの２次元位置とサイズに基づいて、前記撮影画像に写り込んだ各商品の商品タグの３次元位置を算出することを特徴とする請求項１乃至請求項３のいずれか一項に記載の商品棚位置登録プログラム。
【請求項５】
商品棚の撮影画像に写り込んだ各商品の商品ＩＤ情報を認識する商品ＩＤ情報認識部と、
前記撮影画像に基づいて、前記商品ＩＤ情報認識部により認識した商品ＩＤ情報に対応した商品の３次元位置を算出する商品３次元位置算出部と、
前記撮影画像に写り込んだ各商品について、前記商品ＩＤ情報認識部により認識した商品ＩＤ情報と、前記商品３次元位置算出部により算出した商品の３次元位置とを、前記商品ＩＤ情報に対応した商品が陳列された商品棚と関連付けて、商品棚位置情報の一部又は全部として登録する商品棚位置情報登録部とを備える情報処理装置。
【請求項６】
前記撮影画像に写り込んだ各商品の商品ＩＤ情報を認識して、この商品ＩＤ情報の認識が最初に成功したときに、認識に成功した商品ＩＤ情報に対応した商品が陳列された商品棚を、前記商品棚位置情報登録部により登録した商品棚位置情報に基づいて、判別する商品棚判別部と、
前記商品棚判別部によって、前記認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品のうち、前記撮影画像に写り込んだ各商品について、これらの商品の商品ＩＤ情報に対応した商品情報を、前記商品棚位置情報に基づいて、前記撮影画像における前記各商品の３次元位置に対応した位置に表示するように制御する表示制御部とをさらに備えることを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記撮影画像に写り込んだ各商品の領域を検出する商品領域検出部をさらに備え、
前記表示制御部は、前記商品棚判別部によって、前記認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品の領域のうち、前記商品領域検出部による検出に成功した商品の領域に、マーカーを付して表示することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記商品ＩＤ情報は、各商品の商品タグに記載された商品ＩＤ情報であり、
前記撮影画像の撮影時における、カメラの３次元位置と、前記カメラの撮影方向とを推定するカメラ位置姿勢推定部と、
前記撮影画像に写り込んだ前記各商品の商品タグの２次元位置とサイズを検出する商品タグ領域検出部とをさらに備え、
前記商品３次元位置算出部は、前記カメラ位置姿勢推定部により推定した、前記カメラの３次元位置と、前記カメラの撮影方向とに加えて、前記商品タグ領域検出部により検出した各商品の商品タグの２次元位置とサイズに基づいて、前記撮影画像に写り込んだ各商品の商品タグの３次元位置を算出することを特徴とする請求項５乃至請求項７のいずれか一項に記載の情報処理装置。
【請求項９】
前記情報処理装置は、前記カメラをさらに備えることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記情報処理装置は、表示装置をさらに備えることを特徴とする請求項５乃至請求項９のいずれか一項に記載の情報処理装置。
【請求項１１】
前記情報処理装置は、携帯可能な情報処理装置であることを特徴とする請求項５乃至請求項１０のいずれか一項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、商品棚位置情報（各商品が、どの商品棚の、どの位置に陳列されているかという情報）を登録するための商品棚位置登録プログラム、及び商品棚位置情報を登録する機能を有する情報処理装置に関する。
【背景技術】
【０００２】
従来の小売店では、商品棚やバックヤード（店舗のうち、売場に供さないスペース）における商品の配置の情報（特に、上記の商品棚位置情報）が、リアルタイムにデータ化されていない。このため、商品が店内のどこに配置されているかは、人が目視して探すしかなく、店員の負担が大きかった。
【０００３】
もし、商品棚やバックヤードにおける商品の位置をリアルタイムにデータ化することができれば、ＰＯＳシステムと連動させて、店員への商品棚出しの指示を自動化させたり、コンシューマー向けアプリケーションを利用した、顧客の商品への誘導（商品位置案内）をすることができる。また、上記の商品位置のリアルタイムデータ化を行うことができれば、棚位置の価値（商品が置かれている棚の位置が、どれ位の価値（メリット）をもたらすか）を算出することが可能になる。
【０００４】
そこで、従来から、一部の小売店では、ＲＦＩＤ（Radio Frequency Identification）タグを用いて、店舗内における商品位置を管理するようにしている（例えば、特許文献１等参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−１７２６０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところが、上記のような従来のＲＦＩＤタグを用いた商品位置管理システムでは、各商品にＲＦＩＤタグを取り付ける必要があるため、コストが嵩むだけはなく、各商品にＲＦＩＤタグを取り付けるのに必要な手間（工数）が大きい。
【０００７】
本発明は、上記課題を解決するものであり、店員ができるだけ少ない工数で、現在の商品棚位置情報を登録することが可能な商品棚位置登録プログラム、及び情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の第１の態様による商品棚位置登録プログラムは、情報処理装置を、商品棚の撮影画像に写り込んだ各商品の商品ＩＤ情報を認識する商品ＩＤ情報認識部、前記撮影画像に基づいて、前記商品ＩＤ情報認識部により認識した商品ＩＤ情報に対応した商品の３次元位置を算出する商品３次元位置算出部、及び前記撮影画像に写り込んだ各商品について、前記商品ＩＤ情報認識部により認識した商品ＩＤ情報と、前記商品３次元位置算出部により算出した商品の３次元位置とを、前記商品ＩＤ情報に対応した商品が陳列された商品棚と関連付けて、商品棚位置情報の一部又は全部として登録する商品棚位置情報登録部、として機能させる。
【０００９】
この商品棚位置登録プログラムにおいて、前記情報処理装置を、さらに、前記撮影画像に写り込んだ各商品の商品ＩＤ情報を認識して、この商品ＩＤ情報の認識が最初に成功したときに、認識に成功した商品ＩＤ情報に対応した商品が陳列された商品棚を、前記商品棚位置情報登録部により登録した商品棚位置情報に基づいて、判別する商品棚判別部と、前記商品棚判別部によって、前記認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品のうち、前記撮影画像に写り込んだ各商品について、これらの商品の商品ＩＤ情報に対応した商品情報を、前記商品棚位置情報に基づいて、前記撮影画像における前記各商品の３次元位置に対応した位置に表示するように制御する表示制御部として機能させることが望ましい。
【００１０】
この商品棚位置登録プログラムにおいて、前記情報処理装置を、さらに、前記撮影画像に写り込んだ各商品の領域を検出する商品領域検出部として機能させ、前記表示制御部は、前記商品棚判別部によって、前記認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品の領域のうち、前記商品領域検出部による検出に成功した商品の領域に、マーカーを付して表示することが望ましい。
【００１１】
この商品棚位置登録プログラムにおいて、前記商品ＩＤ情報は、各商品の商品タグに記載された商品ＩＤ情報であり、前記情報処理装置を、さらに、前記撮影画像の撮影時における、カメラの３次元位置と、前記カメラの撮影方向とを推定するカメラ位置姿勢推定部と、前記撮影画像に写り込んだ前記各商品の商品タグの２次元位置とサイズを検出する商品タグ領域検出部として機能させ、前記商品３次元位置算出部は、前記カメラ位置姿勢推定部により推定した、前記カメラの３次元位置と、前記カメラの撮影方向とに加えて、前記商品タグ領域検出部により検出した各商品の商品タグの２次元位置とサイズに基づいて、前記撮影画像に写り込んだ各商品の商品タグの３次元位置を算出するようにしてもよい。
【００１２】
本発明の第２の態様による情報処理装置は、商品棚の撮影画像に写り込んだ各商品の商品ＩＤ情報を認識する商品ＩＤ情報認識部と、前記撮影画像に基づいて、前記商品ＩＤ情報認識部により認識した商品ＩＤ情報に対応した商品の３次元位置を算出する商品３次元位置算出部と、前記撮影画像に写り込んだ各商品について、前記商品ＩＤ情報認識部により認識した商品ＩＤ情報と、前記商品３次元位置算出部により算出した商品の３次元位置とを、前記商品ＩＤ情報に対応した商品が陳列された商品棚と関連付けて、商品棚位置情報の一部又は全部として登録する商品棚位置情報登録部とを備える。
【００１３】
この情報処理装置において、前記撮影画像に写り込んだ各商品の商品ＩＤ情報を認識して、この商品ＩＤ情報の認識が最初に成功したときに、認識に成功した商品ＩＤ情報に対応した商品が陳列された商品棚を、前記商品棚位置情報登録部により登録した商品棚位置情報に基づいて、判別する商品棚判別部と、前記商品棚判別部によって、前記認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品のうち、前記撮影画像に写り込んだ各商品について、これらの商品の商品ＩＤ情報に対応した商品情報を、前記商品棚位置情報に基づいて、前記撮影画像における前記各商品の３次元位置に対応した位置に表示するように制御する表示制御部とをさらに備えることが望ましい。
【００１４】
この情報処理装置において、前記撮影画像に写り込んだ各商品の領域を検出する商品領域検出部をさらに備え、前記表示制御部は、前記商品棚判別部によって、前記認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品の領域のうち、前記商品領域検出部による検出に成功した商品の領域に、マーカーを付して表示することが望ましい。
【００１５】
この情報処理装置において、前記商品ＩＤ情報は、各商品の商品タグに記載された商品ＩＤ情報であり、前記撮影画像の撮影時における、カメラの３次元位置と、前記カメラの撮影方向とを推定するカメラ位置姿勢推定部と、前記撮影画像に写り込んだ前記各商品の商品タグの２次元位置とサイズを検出する商品タグ領域検出部とをさらに備え、前記商品３次元位置算出部は、前記カメラ位置姿勢推定部により推定した、前記カメラの３次元位置と、前記カメラの撮影方向とに加えて、前記商品タグ領域検出部により検出した各商品の商品タグの２次元位置とサイズに基づいて、前記撮影画像に写り込んだ各商品の商品タグの３次元位置を算出するようにしてもよい。
【００１６】
この情報処理装置は、前記カメラをさらに備えることが望ましい。
【００１７】
この情報処理装置は、表示装置をさらに備えることが望ましい。
【００１８】
この情報処理装置は、携帯可能な情報処理装置であることが望ましい。
【発明の効果】
【００１９】
本発明によれば、店員が店内に配置された商品棚を撮影して回るだけで、情報処理装置が、自動的に、これらの商品棚の撮影画像に写り込んだ各商品の商品ＩＤ情報を認識し、認識した商品ＩＤ情報に対応した商品の３次元位置を算出した上で、上記の撮影画像に写り込んだ各商品について、これらの商品の商品ＩＤ情報と３次元位置を、これらの商品が陳列された商品棚と関連付けて、商品棚位置情報（各商品が、複数の商品棚のうち、どの商品棚の、どの位置に陳列されているかという情報）の一部又は全部として登録する。これにより、上記特許文献１に記載された商品（物品）管理システムを含む、従来の小売店における商品の棚位置の管理方法と比べて、店員が現在の商品棚位置情報を登録するのに必要な工数の低減を図ることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態の商品棚位置登録プログラムを実装したスマートフォンの概略のブロック構成図。
【図２】同商品棚位置登録プログラムにより実装された、スマートフォンのＣＰＵの機能ブロック構成図。
【図３】同スマートフォンにおける商品棚位置情報登録処理のフローチャート。
【図４】図３中の表示処理のフローチャート。
【図５】同スマートフォンのカメラによる商品棚の撮像画像と、この撮像画像に写り込んだ各商品の商品タグの説明図。
【図６】図５中の撮像画像に、商品棚の各商品の商品名を重ね合わせて表示した図。
【図７】ある商品棚の撮像時における、カメラの位置、姿勢（撮影方向）、及び画角を示す図。
【図８】図７に示す状態において、現在撮影中の商品棚における商品タグ（の商品名）のみを表示した様子を示す説明図。
【図９】図７に示す状態において、現在撮影中の商品棚を意識せずに、スクリーン表示領域における３次元空間内に、各商品の商品タグ（の商品名）を配置して表示した様子を示す説明図。
【図１０】ｔ＿１の時点における商品棚位置情報の登録状況を示す図。
【図１１】ｔ＿２の時点における商品棚位置情報の登録状況を示す図。
【図１２】ｔ＿３の時点における商品棚位置情報の登録状況を示す図。
【発明を実施するための形態】
【００２１】
以下、本発明を具体化した実施形態による商品棚位置登録プログラム、及び情報処理装置について、図面を参照して説明する。図１は、本実施形態による商品棚位置登録プログラムを実装したスマートフォン（請求項における「情報処理装置」、及び「携帯可能な情報処理装置」）の概略の内部構成を示すブロック図である。このスマートフォン１は、通信部３を有しており、通信部３とネットワーク（例えば、インターネット）とを介して、学習用サーバ２、及びＰＯＳ（Ｐｏｉｎｔ  ｏｆ  Ｓａｌｅｓ）システムのサーバであるＰＯＳサーバ１４と接続されている。通信部３は、通信制御用ＩＣとアンテナを備えている。後述する商品タグの領域検出を行うための学習は、学習用サーバ２側で行われ、スマートフォン１側は、学習用サーバ２側から、商品タグ領域検出用の物体検出エンジンの学習済みのパラメータデータを受信（ダウンロード）することで、スマートフォン１側で学習することなく、商品タグ（の領域）を検出することができる。なお、この商品タグ領域検出用の物体検出エンジンは、例えば、Ｒ−ＣＮＮ（Ｒｅｇｉｏｎｓ ｗｉｔｈ Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ ｆｅａｔｕｒｅｓ）ベースの物体検出エンジンである。また、本明細書において、「エンジン」とは、情報処理装置を使用して、様々な情報処理を行う機構（システム）を意味する。
【００２２】
また、後述するバーコード認識を行うための学習も、学習用サーバ２側で行われ、スマートフォン１側は、学習用サーバ２側から、バーコード認識エンジンの学習済みのパラメータデータを受信（ダウンロード）することで、スマートフォン１側で学習することなく、バーコードを認識することができる。なお、このバーコード認識エンジンは、例えば、ＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）と、再帰的なつながりを持つネットワークであるＲＮＮ（Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）とを組み合わせたエンジンであり、ＣＮＮとＲＮＮとを連動させることで、一種のシーケンス情報（連続性のあるデータ）であるバーコードを認識することができる。
【００２３】
さらに、スマートフォン１は、ＰＯＳサーバ１４の商品詳細情報ＤＢから、商品詳細情報（バーコードに対応した商品ＩＤ情報、商品名、金額等から構成される情報）を取得する。上記の商品詳細情報ＤＢは、各バーコードの商品ＩＤ情報と、商品名や金額等の商品情報とを対応付けたテーブルデータのデータベースである。ここで、上記の商品ＩＤ情報とは、例えば、バーコードが、ＪＡＮ（Ｊａｐａｎｅｓｅ  Ａｒｔｉｃｌｅ  Ｎｕｍｂｅｒ）コードの場合は、商品識別番号である。
【００２４】
スマートフォン１は、さらに、装置全体の制御と各種演算を行うＣＰＵ４と、各種のデータやプログラムを記憶するメモリ５とを備えている。メモリ５に記憶されているプログラムには、商品棚位置登録プログラム６が含まれている。この商品棚位置登録プログラム６には、上記のＲ−ＣＮＮベースの物体検出エンジン、及び上記のＣＮＮとＲＮＮとを組み合わせたバーコード認識エンジンが含まれている。また、メモリ５は、上記の物体検出エンジン及びバーコード認識エンジンのパラメータデータ７と、後述する商品棚位置情報ＥＬを記憶している。上記のパラメータデータ７は、上記の学習用サーバ２から受信したパラメータ更新用データにより更新される。
【００２５】
また、スマートフォン１は、カメラ８と、ディスプレイ９（請求項における表示装置）と、操作ボタン１０と、マイクロフォン１１と、スピーカ１２と、二次電池１３とを備えている。カメラ８は、商品棚の商品の撮影等に用いられる。ディスプレイ９は、いわゆるタッチパネルタイプのディスプレイであり、カメラ８により撮影された画像（撮影画像）の表示や、後述する商品タグ領域の検出結果の表示や、後述するバーコードの認識結果の表示（具体的には、バーコードに対応した商品名の表示）等に用いられる。操作ボタン１０は、ユーザ（店員）による電源オン／オフ等の指示入力に用いられる。また、二次電池１３は、リチウムイオン電池等の、充電により繰り返し使用することが可能な電池であり、スマートフォン１の各部に電力を供給する。
【００２６】
図２は、上記の商品棚位置登録プログラム６により実装された、ＣＰＵ４の機能ブロックを示す。ＣＰＵ４内の各ブロック（カメラ位置姿勢推定部２１、カメラ位置姿勢固定判定部２２、商品タグ領域検出部２３、バーコード認識部２４、商品タグ位置算出部２５、商品棚位置情報登録部２６、商品棚位置表示制御部２７、表示用商品タグ領域検出部２８、商品棚判別部２９、表示制御部３０）の機能は、ＣＰＵ４がメモリ５に記憶された商品棚位置登録プログラム６を実行することにより実現される。ただし、この構成に限られず、例えば、上記の各ブロックの機能の少なくとも一つを、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等によって構成される個別のハードウェアによって実現してもよい。上記の表示用商品タグ領域検出部２８は、請求項における商品領域検出部に相当し、商品タグ位置算出部２５は、請求項における商品３次元位置算出部に相当し、バーコード認識部２４は、請求項における商品ＩＤ情報認識部に相当する。
【００２７】
上記のカメラ位置姿勢推定部２１は、商品棚の画像の撮影時における、カメラ８の３次元位置と、カメラ８の撮影方向とを推定する。カメラ位置姿勢固定判定部２２は、カメラ位置姿勢推定部２１により推定した、直近の数フレーム分の撮影画像におけるカメラ８の３次元位置と撮影方向に基づいて、直近の数フレームにおけるカメラ移動量を検出し、この移動量に基づいてカメラ８が静止している（固定されている）状態であるか否かを判定する。商品タグ領域検出部２３は、カメラ８による撮影画像に写り込んだ各商品の商品タグの２次元位置とサイズを検出する。バーコード認識部２４は、上記の商品棚の撮影画像に写り込んだ各商品の商品タグにバーコードの形式で記載された商品ＩＤ情報を、認識する（読み取る）。すなわち、バーコード認識部２４は、上記の商品棚の撮影画像に写り込んだ各商品の商品ＩＤ情報を認識する。商品タグ位置算出部２５は、上記の商品棚の撮影画像に基づいて、バーコード認識部２４により認識した商品ＩＤ情報が記載された商品タグの３次元位置を算出することにより、バーコード認識部２４により認識した商品ＩＤ情報に対応した商品の３次元位置を算出する。
【００２８】
また、上記の商品棚位置情報登録部２６は、上記の撮影画像に写り込んだ各商品について、バーコード認識部２４により認識した商品ＩＤ情報と、商品タグ位置算出部２５により算出した商品タグの３次元位置（商品の３次元位置）とを、上記の商品ＩＤ情報に対応した商品が陳列された商品棚と関連付けて、商品棚位置情報ＥＬ（各商品が、複数の商品棚のうち、どの商品棚の、どの位置に陳列されているかという情報）の一部又は全部として登録する。
【００２９】
また、上記の商品棚位置表示制御部２７は、表示用商品タグ領域検出部２８、商品棚判別部２９、及び表示制御部３０から構成される。上記の表示用商品タグ領域検出部２８は、カメラ８による現在の撮影画像に写り込んだ各商品の領域を検出する。具体的には、表示用商品タグ領域検出部２８は、カメラ８による現在の撮影画像に写り込んだ各商品の商品タグの２次元位置とサイズを検出する。商品棚判別部２９は、上記の現在の撮影画像に写り込んだ各商品の（商品タグに記載されたバーコード形式の）商品ＩＤ情報を認識して、この商品ＩＤ情報の認識が最初に成功したときに、認識に成功した商品ＩＤ情報に対応した商品が陳列された商品棚を、上記の商品棚位置情報登録部２６により登録した商品棚位置情報ＥＬに基づいて、判別する。表示制御部３０は、商品棚判別部２９によって、認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品のうち、上記の撮影画像に写り込んだ各商品について、これらの商品の商品ＩＤ情報に対応した商品情報を、上記の商品棚位置情報ＥＬに基づいて、上記撮影画像における各商品の３次元位置に対応した位置に表示するように制御する。具体的には、表示制御部３０は、商品棚判別部２９によって、認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚の商品のうち、上記の撮影画像に写り込んだ各商品について、これらの商品の商品タグに記載されたバーコード形式の商品ＩＤ情報に対応した商品名を、上記の商品棚位置情報に基づいて、上記撮影画像における各商品の商品タグの３次元位置に対応した位置に表示するように制御する。
【００３０】
次に、上記図１及び図２に加えて、図３のフローチャートを参照して、上記のスマートフォン１における商品棚位置情報登録処理について説明する。店員が、タッチパネルタイプのディスプレイ９をタッチ操作することにより、商品棚位置情報登録処理の開始を指示すると、ＣＰＵ４は、商品棚位置登録プログラム６に基づき、商品棚位置情報登録処理を開始する。
【００３１】
具体的には、まず、ＣＰＵ４は、単眼カメラであるカメラ８により、撮影画像を取得（撮影）した上で（Ｓ１）、ＡＲＫｉｔ（ｉＰｈｏｎｅ（登録商標）・ｉＰａｄ（登録商標）向けのＡＲ（Ａｕｇｍｅｎｔｅｄ Ｒｅａｌｉｔｙ）対応アプリケーションのためのフレームワーク）等の既存の技術を用いて、各フレームの撮影画像から特徴点を抽出し、各フレームの撮影画像間の特徴点の動きから、カメラ８の３次元位置と、カメラ８の撮影方向（撮影姿勢）とを推定する。この特徴点は、撮影画像中の物のエッジ等に相当する点（ポイント）であり、光源（照明）の向きが変わっても、特徴が変わり難い部分である。より詳細に説明すると、ＣＰＵ４（のカメラ位置姿勢推定部２１）は、直近の撮影画像ｖ＿ｔに基づいて、直近の撮影画像ｖ＿ｔにおける特徴点情報ｃ＿ｔを計算する（Ｓ２）。この特徴点情報は、メモリ５に、ｎフレーム分保持（記憶）される。そして、ＣＰＵ４（のカメラ位置姿勢推定部２１）は、メモリ５に保持されたｎフレーム分の特徴点情報Ｃ（Ｃ＝｛ｃ＿ｔ，ｃ＿ｔ−１，・・・，ｃ＿ｔ−ｎ−１｝）から、直近の撮影画像ｖ＿ｔの撮影時における、カメラ位置（カメラ８の3次元位置）ｌ＿ｔと、姿勢（カメラ８の撮影方向）ｐ＿ｔとを計算する（Ｓ３）。メモリ５は、直近のｍフレーム分のカメラ位置Ｌ（Ｌ＝｛ｌ＿ｔ，ｌ＿ｔ−１，・・・，ｌ＿ｔ−ｍ−１｝）と、姿勢Ｐ（Ｐ＝｛ｐ＿ｔ，ｐ＿ｔ−１，・・・，ｐ＿ｔ−ｍ−１｝）とを、保持する。
【００３２】
次に、ＣＰＵ４は、メモリ５に保持されたｍフレーム分のカメラ位置Ｌと姿勢Ｐより、ｍフレームにおける（ｍフレームの間の）カメラ移動量ΔＬＰを計算する（Ｓ４）。そして、ＣＰＵ４の商品棚位置表示制御部２７が、図４の説明で後述する表示処理を行った後に（Ｓ５）、ＣＰＵ４のカメラ位置姿勢固定判定部２２は、Ｓ４で求めたカメラ移動量ΔＬＰが、一定の閾値以下であるか否か（カメラ８が静止している（固定されている）状態であるか否か）を判定する（Ｓ６）。
【００３３】
ここで、画像認識を利用する場合には、バーコード読み取りは、（カメラの）手ブレに弱い（手ブレがあると、バーコードを正確に読み取る（認識する）ことが難しい）。特に、多数の商品タグ（のバーコード）が写り込むように、店員が引いて（遠くから）撮影している場合は、なおさら、手ブレに弱い。従って、上記Ｓ６の判定処理（カメラ８が静止している状態であるか否かの判定処理）の役割が重要になる。
【００３４】
ＣＰＵ４は、上記のカメラ移動量ΔＬＰが一定の閾値以下になる（カメラ８が静止した状態になる）までは（Ｓ６でＮＯ）、上記Ｓ１乃至Ｓ５の処理を繰り返す。そして、ＣＰＵ４（のカメラ位置姿勢固定判定部２２）が、カメラ移動量ΔＬＰが一定の閾値以下になった（カメラ８が静止した状態になった）と判定すると（Ｓ６でＹＥＳ）、ＣＰＵ４（の商品タグ領域検出部２３）は、カメラ８による（直近の）撮影画像ｖ＿ｔに写り込んだ（ｉ個の）各商品の商品領域情報Ｒ＝｛ｒ＿１，・・・，ｒ＿ｉ｝を検出する（Ｓ７）。ここで、上記の各商品の商品領域情報とは、図５に示される商品棚３１の撮影画像ｖ＿ｔに写り込んだ各商品３２の商品タグ３３の２次元位置とサイズの情報である。従って、上記Ｓ７の商品領域情報検出（抽出）処理は、撮影画像ｖ＿ｔに写り込んだ各商品３２の商品タグ３３の領域の抽出処理と言い換えることができる。そして、この商品タグ３３の領域の抽出処理は、商品棚位置登録プログラム６に組み込まれた、Ｒ−ＣＮＮベースの物体検出エンジンにより行われる。なお、ＣＰＵ４は、上記Ｓ６の静止状態判定処理において、カメラ８が静止した状態になったと判定した場合に、「バーコードを読み取りますか？」という確認メッセージをディスプレイ９に表示して、店員が、タッチパネルタイプのディスプレイ９のタッチ操作等により、バーコード読み取りを指示した場合に限り、Ｓ７以降の処理に進むようにしてもよい。
【００３５】
図５に示されるように、本実施形態における商品タグ３３には、商品名３４と、値段３５と、ＪＡＮコード等の一次元のバーコード３６と、ヒューマンリーダブル文字３７とが記載されている。ここで、ヒューマンリーダブル文字３７は、バーコード３６の内容を人が読める文字で表したもので、何らかの原因 （バーコードの汚れ・損傷、バーコードリーダーの故障など）でバーコード３６が読み取れなかった場合に、店員が目で見て、ポスレジ等に打ち込むためのものである。
【００３６】
次に、ＣＰＵ４（のバーコード認識部２４）は、上記のＣＮＮとＲＮＮとを組み合わせたバーコード認識エンジンを用いて、直近の撮影画像ｖ＿ｔと上記の各商品の商品領域情報Ｒから、撮影画像ｖ＿ｔに写り込んだ各商品３２の商品タグ３３にバーコード３６の形式で記載された商品ＩＤ情報Ｄ＝｛ｄ＿１，・・・，ｄ＿ｎ｝を認識する（読み取る）（Ｓ８）。ただし、上記の認識処理に失敗した商品ＩＤ情報ｄ＿ｘには、−１をセットする。なお、上記のように、バーコード３６の形式で記載された商品ＩＤ情報の認識（読み取り）に、通常のバーコードリーダーではなく、ＣＮＮとＲＮＮとを組み合わせたバーコード認識エンジンを用いた理由は、通常のバーコードリーダーによる読み取り（認識）は、光源の明るさや位置の相違への対応力が弱く、また、カメラのブレの問題にも弱いからである。バーコード認識部２４は、上記のバーコード認識エンジンを内包しており、このバーコード認識エンジンに含まれるＣＮＮとＲＮＮとを連動させることにより、バーコード３６の形式で記載された商品ＩＤ情報Ｄを認識する。
【００３７】
次に、ＣＰＵ４（の商品タグ位置算出部２５）は、商品ＩＤ情報Ｄの配列に格納された要素のうち、上記Ｓ８の認識処理に成功した（−１がセットされていない）商品ＩＤ情報ｄ＿ｘについて、この商品ＩＤ情報ｄ＿ｘに対応した商品タグ３３の商品領域情報ｒ＿ｘと、上記Ｓ３の処理で求めた直近の撮影画像ｖ＿ｔのカメラ位置ｌ＿ｔ及び姿勢ｐ＿ｔとから、各商品ＩＤ情報ｄ＿ｘに対応した商品タグ３３の３次元位置ｄｐ＿ｘを算出する（Ｓ９）。すなわち、ＣＰＵ４の商品タグ位置算出部２５は、ＣＰＵ４のカメラ位置姿勢推定部２１により推定したカメラ位置ｌ＿ｔと姿勢ｐ＿ｔとに加えて、ＣＰＵ４の商品タグ領域検出部２３により検出した各商品の商品タグ３３の商品領域情報ｒ＿ｘ（商品タグ３３の２次元位置とサイズ）に基づいて、直近の撮影画像ｖ＿ｔに写り込んだ各商品の商品タグ３３の３次元位置ｄｐ＿ｘを算出する。そして、ＣＰＵ４は、算出した各商品タグ３３の３次元位置ｄｐ＿ｘと、上記Ｓ８で生成した商品ＩＤ情報Ｄの配列の各要素ｄ＿ｘとから、直近の撮影画像ｖ＿ｔに写りこんだ各商品タグ３３についての、商品ＩＤ情報と３次元位置との対応関係を表す商品位置情報Ｅの配列（Ｅ＝｛ｅ＿ｘ＝（ｄ＿ｘ，ｄｐ＿ｘ），．．．｝を生成する。すなわち、バーコード３６の読み込みで特定した各商品３２の商品ＩＤ情報と、各商品３２の商品タグ３３の検出位置（３次元位置）との紐づけを行う。
【００３８】
次に、ＣＰＵ４（の商品棚位置情報登録部２６）は、メモリ５に記憶された既存の（これまでに作成済の）商品棚位置情報ＥＬに対して、以下の商品棚位置情報登録処理を行う（Ｓ１０）。すなわち、ＣＰＵ４（の商品棚位置情報登録部２６）は、メモリ５から読み出した既存の商品棚位置情報ＥＬ＝｛Ｅ＿１，・・・，Ｅ＿ｊ｝の配列中の要素の中に、上記の商品位置情報Ｅの配列中の商品ＩＤ情報の要素ｄ＿ｘを含むものが無い場合は、上記の商品位置情報Ｅを、商品棚位置情報ＥＬに、一つの要素として追加する。また、ＣＰＵ４（の商品棚位置情報登録部２６）は、既存の商品棚位置情報ＥＬの配列中の要素の中に、上記の商品位置情報Ｅの配列中のいずれかの商品ＩＤ情報の要素ｄ＿ｘを含むものが一つある場合、この要素ｄ＿ｘを含む（商品棚位置情報ＥＬの配列中の）要素Ｅ＿ｙの配列に、商品位置情報Ｅの配列中の要素のうち、未だＥ＿ｙの配列に登録されていない要素を追加する。また、ＣＰＵ４（の商品棚位置情報登録部２６）は、既存の商品棚位置情報ＥＬの配列中の要素の中に、上記の商品位置情報Ｅの配列中のいずれかの商品ＩＤ情報の要素を含むものが二つ以上ある場合、この商品ＩＤ情報の要素を含む（商品棚位置情報ＥＬの配列中の）要素Ｅ＿ｙ１，・・・，Ｅ＿ｙｎを、商品棚位置情報ＥＬの配列から削除した上で、元の要素Ｅ＿ｙ１，・・・，Ｅ＿ｙｎの配列の要素のうち、未だ商品位置情報Ｅの配列に登録されていない要素を、商品位置情報Ｅの配列に追加して、この商品位置情報Ｅを、商品棚位置情報ＥＬに、一つの要素として追加する。
【００３９】
上記の処理により、ＣＰＵ４（の商品棚位置情報登録部２６）は、上記Ｓ８の処理で認識した（読み取った）商品ＩＤ情報と、上記Ｓ９の処理で算出した各商品３２の商品タグ３３の3次元位置とを、上記の商品ＩＤ情報に対応した商品３２が陳列された商品棚３１と関連付けて（紐づけて）、商品棚位置情報ＥＬの一部又は全部として登録する。ＣＰＵ４は、このＳ１０の商品棚位置情報登録処理が終了すると、上記Ｓ１のステップに戻る。
【００４０】
なお、本実施形態では、商品陳列位置が変わっても、変わった部分をスマートフォン１で撮影する（変わった部分にスマートフォン１をかざす）だけで、商品棚位置情報ＥＬを更新する（登録し直す）ことができる。しかしながら、商品棚位置情報ＥＬの登録に要する時間を短縮する（登録処理の高速化を図る）という観点からは、上記Ｓ７〜Ｓ１０の処理において、同じ個所の商品タグ３３の商品ＩＤ情報（バーコード３６）を何度も認識しないよう、認識済み位置のバーコード３６については、バーコード読み取り（認識）を行わないようにすることが望ましい。従って、Ｓ８の認識処理において、撮影画像ｖ＿ｔに写り込んだ各商品３２の商品タグ３３に記載されたバーコード３６のうち、既に認識済の位置のバーコード３６については、バーコード読み取り（商品ＩＤ情報の認識）を行わないようにして、店員が、タッチパネルタイプのディスプレイ９等を用いて、「再登録」を指示した場合に限り、既に認識済の位置のバーコード３６についても、再度、バーコード３６の読み取り（商品ＩＤ情報の認識）処理と、上記Ｓ９及びＳ１０の処理とをやり直してもよい。
【００４１】
また、上記Ｓ８に示すように、本実施形態では、バーコード形式で記載された商品ＩＤ情報を認識する（読み取る）方法を用いたが、ディープラーニング等の人工知能の技術を用いて、商品棚３１に陳列された各商品３２そのものの検出と認識（分類）を行う方法も考えられる。しかしながら、現時点の技術では、商品そのものの正確な認識（分類）を行うことが難しい。また、この認識方法では、商品棚に陳列される可能性のある全商品の画像、又はこれらの画像の特徴が必要になるが、陳列される可能性のある商品３２の数が多く、商品３２のパッケージ等が更新されることも多いため、商品そのものを認識（分類）する方法は、効率が悪い。
【００４２】
次に、図４のフローチャートを参照して、図３中のＳ５の表示処理について説明する。ＣＰＵ４（の商品棚位置表示制御部２７）は、まず、現在の（直近の撮影画像ｖ＿ｔの撮影時における）カメラ位置ｌ＿ｔと姿勢ｐ＿ｔとから、現在ディスプレイ９上に表示している（カメラ８で写している）領域であるスクリーン表示領域ＳＣを計算する（Ｓ１１）。このスクリーン表示領域ＳＣは、現在のカメラ位置と姿勢から見えている部分の領域であり、３次元グラフィックスで一般的に用いられている、３次元位置をスクリーン面上に投影するという技術を用いて求められる。ＣＰＵ４（の商品棚位置表示制御部２７）は、スクリーン表示領域ＳＣに、既に、商品名（請求項における「商品情報」）がある（配置されている）状態の場合は（Ｓ１２でＹＥＳ）、後述するＳ１７のステップに進む。上記のスクリーン表示領域ＳＣに既に商品名がある状態とは、図６に示すように、ディスプレイ９上に、既に、商品名４２が表示されている状態を意味する。
【００４３】
これに対して、スクリーン表示領域ＳＣに、商品名がない（配置されていない）状態の場合（ディスプレイ９上に、未だ、商品名４２が表示されていない場合）は（Ｓ１２でＮＯ）、ＣＰＵ４（のカメラ位置姿勢固定判定部２２）は、上記図３中のＳ６と同様に、上記Ｓ４で求めたカメラ移動量ΔＬＰが、一定の閾値以下であるか否かの判定を行う（Ｓ１３）。上記のスクリーン表示領域ＳＣに商品名がない（ディスプレイ９上に、未だ商品名４２が表示されていない）状態は、例えば、ある商品棚３１に陳列された各商品３２についての商品棚位置情報の登録処理を完了して、別の商品棚３１に陳列された各商品３２についての商品棚位置情報の登録処理を開始した時（店員がこれまでの商品棚３１とは別の商品棚３１を撮影した時）に生じ得る。
【００４４】
上記Ｓ１３の判定において、カメラ移動量ΔＬＰが一定の閾値を超える（カメラ８が静止していない状態）のときは（Ｓ１３でＮＯ）、ＣＰＵ４（の商品棚位置表示制御部２７）は、図４に示すルーチンの処理を抜ける。
【００４５】
これに対して、カメラ移動量ΔＬＰが一定の閾値以下のとき（カメラ８が静止した状態のとき）は（Ｓ１３でＹＥＳ）、ＣＰＵ４（の表示用商品タグ領域検出部２８）は、上記Ｓ７の処理と同様に、カメラ８による現在の撮影画像ｖ＿ｔに写り込んだ各商品３２の商品領域情報Ｒ＝｛ｒ＿１，・・・，ｒ＿ｉ｝（各商品の商品タグ３３の２次元位置とサイズ）を検出（抽出）する（Ｓ１４）。
【００４６】
上記Ｓ１４の処理が完了すると、ＣＰＵ４（の商品棚判別部２９）は、上記の物体検出エンジンを用いて、直近の撮影画像ｖ＿ｔと上記の各商品の商品領域情報Ｒから、撮影画像ｖ＿ｔに写り込んだ商品３２の商品タグ３３にバーコード３６の形式で記載された商品ＩＤ情報ｄを認識する（読み取る）（Ｓ１５）。ここで、上記の商品ＩＤ情報ｄは、商品領域情報Ｒの配列における最初の商品領域情報の要素ｒ＿１に対応する位置のバーコード３６（の商品ＩＤ情報）から順に認識していき、最初に認識できたバーコード３６の商品ＩＤ情報である。
【００４７】
次に、ＣＰＵ４（の商品棚判別部２９）は、上記Ｓ１５の認識処理で認識に成功したバーコード３６の商品ＩＤ情報ｄに対応した商品３２が陳列された商品棚３１を、上記Ｓ１０で登録した商品棚位置情報ＥＬに基づいて判別する。すなわち、ＣＰＵ４（の商品棚判別部２９）は、Ｓ１６の処理に進んで、まず、メモリ５に記憶された商品棚位置情報ＥＬの配列に含まれる要素のうち、商品ＩＤ情報の要素として上記のｄを含む要素Ｅ＿ｘを検索する。ここで、商品棚位置情報ＥＬ＝｛Ｅ＿１，・・・，Ｅ＿ｊ｝の配列中の各要素Ｅ＿１，Ｅ＿２，・・・は、各商品棚３１に対応したものであり、各商品棚３１毎に、その棚に陳列された各商品３２についての情報（各商品３２の商品ＩＤ情報と商品タグ３３の３次元位置とが格納された配列ｅ＿ｘ＝（ｄ＿ｘ，ｄｐ＿ｘ））を格納した配列である。従って、上記のように、商品棚位置情報ＥＬの配列に含まれる要素のうち、商品ＩＤ情報の要素として上記のｄを含む要素を検索することにより、直近の撮影画像ｖ＿ｔに写り込んだ商品棚３１を判別して、この商品棚３１に陳列された各商品３２についての情報を格納した配列Ｅ＿ｘを求めることができる。
【００４８】
そして、ＣＰＵ４（の表示制御部３０）は、上記の配列Ｅ＿ｘに含まれる各商品３２の要素のうち、各商品３２の（商品タグ３３の）３次元位置の要素に基づいて、スクリーン表示領域ＳＣにおける３次元空間内に、配列Ｅ＿ｘに含まれる各商品３２の商品ＩＤ情報の要素に対応した商品名を配置する（Ｓ１６）。すなわち、ＣＰＵ４（の表示制御部３０）は、認識に成功した商品ＩＤ情報ｄに対応した商品が陳列されていると判別された商品棚３１の商品３２のうち、直近の撮影画像ｖ＿ｔに写り込んだ各商品３２について、これらの商品３２の商品タグ３３に記載された商品ＩＤ情報に対応した商品名を、商品棚位置情報ＥＬ（の配列Ｅ＿ｘ）に基づいて、直近の撮影画像ｖ＿ｔにおける各商品の商品タグ３３の３次元位置に対応した位置に配置する。
【００４９】
上記Ｓ１６の処理において、ＣＰＵ４（の表示制御部３０）は、上記の配列Ｅ＿ｘに含まれる各商品３２の商品ＩＤ情報（の要素）をキーにして、図１中のＰＯＳサーバ１４の商品詳細情報ＤＢを検索することにより、配列Ｅ＿ｘに含まれる各商品３２の商品ＩＤ情報に対応する商品名を取得し、これらの商品名を、スクリーン表示領域ＳＣにおける３次元空間内に配置する（スクリーン表示領域ＳＣにおける、各商品の商品タグ３３の３次元位置に対応した位置に配置する）。そして、ＣＰＵ４（の表示制御部３０）は、現在ディスプレイ９上に表示しているスクリーン表示領域ＳＣに、直近の撮影画像ｖ＿ｔに写り込んだ商品棚３１に対応する配列Ｅ＿ｘの内容（商品名）を重ね合わせて表示する（Ｓ１７）。
【００５０】
ＣＰＵ４（の表示制御部３０）は、上記Ｓ１６及びＳ１７の処理により、図６に示すように、Ｓ１５の認識処理で認識に成功したバーコードの商品ＩＤ情報ｄに対応した商品が陳列されていると判別された商品棚３１の商品３２のうち、直近の撮影画像ｖ＿ｔに写り込んだ各商品３２の商品タグ３３に記載された（バーコード形式の）商品ＩＤ情報に対応した商品名４２（請求項における商品情報）を、商品棚位置情報ＥＬ（の配列Ｅ＿ｘ）に基づいて、直近の撮影画像ｖ＿ｔにおける各商品３２の商品タグ３３の３次元位置に対応した位置に表示するように制御する。
【００５１】
図６は、上記Ｓ１７の処理後に、スマートフォン１のディスプレイ９に表示される検出結果画像４０を示す。ＣＰＵ４（の表示制御部３０）は、上記Ｓ１６の処理において、Ｓ１５の認識処理で認識に成功した（バーコード３６の）商品ＩＤ情報ｄに対応した商品３２が陳列されていると判別された商品棚３１の商品タグ３３のうち、上記Ｓ１４の商品領域情報検出に成功した商品タグ３３ａを、図６中の検出結果画像４０に破線で示すように、赤色等の枠４１で囲んだ状態で表示する。すなわち、ＣＰＵ４（の表示制御部３０）は、商品領域情報検出に成功した商品タグ３３ａに、マーカーを付して表示する。
【００５２】
これに対して、ＣＰＵ４（の表示制御部３０）は、上記の商品ＩＤ情報ｄに対応した商品３２が陳列されていると判別された商品棚３１の商品タグ３３のうち、上記Ｓ１４の商品領域情報検出に失敗した商品タグ３３ｂについては、枠４１で囲まずに表示する。また、図６中の商品タグ３３ｃは、上記の商品ＩＤ情報ｄに対応した商品３２が陳列されていると判別された商品棚３１の商品タグ３３のうち、上記Ｓ８の認識処理で認識に失敗した商品ＩＤ情報に対応するバーコード３６が記載された商品タグ３３ではあるが、上記Ｓ１４の商品領域情報検出に成功した商品タグ３３である。ＣＰＵ４（の表示制御部３０）は、図６に示すように、この商品タグ３３ｃについても、枠４１で囲んだ状態で表示するが、商品名４２については、表示しない（表示できない）。
【００５３】
上記図４及び図６に示す表示処理を行うことにより、店員は、商品名４２が表示されていない商品タグ３３ｂ、３３ｃについては、これらの商品タグに記載されたバーコード３６の商品ＩＤ情報を認識できていない（読み取れていない）ことが、簡単に（一目で）分かる。従って、店員は、直近の撮影画像ｖ＿ｔに写り込んだ全ての商品タグ３３に記載されたバーコード３６の商品ＩＤ情報を認識できるまで（撮影画像ｖ＿ｔに写り込んだ全ての商品３２の商品名４２が表示されるようになるまで）、スマートフォン１（のカメラ８）を静止させて、上記図３に示される商品棚位置情報登録処理を行えばよい。
【００５４】
上記図４及び図６に示す表示処理では、現在のカメラ位置ｌ＿ｔと姿勢ｐ＿ｔとから、現在、店員に見えている（カメラ８により撮影されている）部分の商品タグ３３の商品名４２を表示するようにした。具体的には、直近の撮影画像に写りこんでいるバーコード３６の商品ＩＤ情報と、既に登録済の商品棚位置情報ＥＬとから、現在撮影中の商品棚３１を判別して、この商品棚３１以外の商品棚（現在撮影中の商品棚３１の裏側の商品棚を含む）の商品についての商品名４２を表示しないようにした。ここで、商品棚位置情報ＥＬの配列中の全ての商品ＩＤ情報の要素に対応した商品名４２を、撮影画像ｖ＿ｔにおける各商品の商品タグ３３の３次元位置に対応した位置に配置して表示してしまうと、現在撮影中の商品棚３１に陳列された商品３２の商品名４２だけではなく、現在撮影中の商品棚３１の裏側の商品棚等に陳列された商品３２の商品名４２も、表示されてしまう。
【００５５】
そこで、本実施形態では、ＣＰＵ４（の商品棚位置情報登録部２６）が、撮影画像に同時に写りこむバーコード３６の商品ＩＤ情報を、同一の商品棚３１の商品ＩＤ情報として、商品棚位置情報ＥＬに登録（記憶）するようにした。これにより、現在撮影中の商品棚３１の商品のバーコード３６（の商品ＩＤ情報）を一つでも認識することができれば、その商品と同じ商品棚３１の商品名４２を、スクリーン表示領域ＳＣにおける３次元空間内に配置して表示することで、現在撮影中の商品棚３１の裏側の商品棚の商品３２等の不要な商品３２の商品名４２の表示を防ぐことができる。
【００５６】
上記の不要な商品３２の商品名４２の表示を防ぐための工夫について、図７乃至図１２を参照して説明する。ただし、図７乃至図１２では、記載を簡単にするために、上記の商品名４２の代わりに、商品タグ３３を記載している。カメラ位置ｌ＿ｔ、姿勢（撮影方向）ｐ＿ｔ、及び（水平）画角αが、図７に示す状態の時には、ディスプレイ９上に、図８に示すように、現在撮影中の（商品棚３１における）１と２の商品タグ３３の商品名４２のみを表示すべきである。ところが、商品棚３１を意識せずに、スクリーン表示領域ＳＣにおける３次元空間内に、各商品棚３１に陳列された各商品３２の商品タグ３３の商品名４２を配置すると、図９に示すように、１と２の商品タグ３３の商品名４２だけではなく、４や９の商品タグ３３の商品名４２も表示されてしまう。何故なら、上記図４に示される表示処理時には、各商品の商品ＩＤ情報Ｄの認識をせず、単に、商品棚位置情報ＥＬに既に登録されている商品ＩＤ情報と商品タグ３３の３次元位置とに基づいて、商品棚位置情報ＥＬに登録済の商品ＩＤ情報に対応した商品名を、これらの商品ＩＤ情報に対応した商品タグ３３の３次元位置に配置して、これらの商品名を、カメラ位置ｌ＿ｔ、姿勢ｐ＿ｔ、及び画角αに応じて、表示するだけだからである。
【００５７】
そこで、現在表示（撮影）中の商品棚３１を意識した以下の処理手順により、今、スマートフォン１を持った店員の目の前にある商品棚３１の商品タグ３３に対応する商品名のみを、スクリーン表示領域ＳＣにおける３次元空間内に配置して表示するようにした。
【００５８】
以下の説明では、商品棚位置情報ＥＬの登録処理が、図１０に示すｔ＿１の時点から始まったものとする。まず、図１０に示すｔ＿１の時点では、現在表示（撮影）中の商品棚３１は、棚（３）である。また、図１０に示すカメラ位置ｌ＿ｔ、姿勢ｐ＿ｔ、及び画角αの状態では、撮影画像ｖ＿ｔに写り込む商品タグ３３が、１と２の商品タグ３３だけである。このため、上記図３のＳ７の処理で検出される商品領域情報Ｒの要素は、１の商品タグ３３の商品領域情報ｒ＿１と、２の商品タグ３３の商品領域情報ｒ＿２である。ここで、図１０乃至図１２中の各商品領域情報ｒ＿１、ｒ＿２の配列に含まれる要素は、各商品タグ３３の２次元位置（図８及び９における横方向の位置ｘ、及び縦方向の位置ｙ）と、商品タグ３３のサイズ（幅ｗ及び高さｈ）である。
【００５９】
また、図１０に示すｔ＿１の時点では、図３のＳ８の処理で認識されるバーコード３６の商品ＩＤ情報Ｄの要素は、１と２の商品タグ３３の商品ＩＤ情報ｄ＿１、ｄ＿２であり、図３のＳ９の処理で商品位置情報Ｅの配列に格納される要素は、１と２の商品タグ３３の商品位置情報ｅ＿１、ｅ＿２である。ここで、図１０乃至図１２中の各商品位置情報ｅ＿１、ｅ＿２の配列に含まれる要素は、各商品タグ３３の商品ＩＤ情報と３次元位置（ｘ，ｙ，ｚ）である。また、ｔ＿１の時点では、図３のＳ１０の処理で商品棚位置情報ＥＬの配列に格納される要素は、現在表示（撮影）中の棚（３）の商品位置情報Ｅ、すなわち、商品棚位置情報Ｅ＿１である。そして、現在表示（撮影）中の棚（３）の商品棚位置情報Ｅ＿１に格納された商品ＩＤ情報に対応する商品名のみが、表示対象となる。従って、図１０に示すｔ＿１の時点では、１と２の商品タグ３３の商品ＩＤ情報に対応する商品名４２のみが、表示される。
【００６０】
図１１に示すｔ＿２の時点になると、その時点で表示（撮影）中の商品棚３１は、棚（４）になる。また、図１１に示すカメラ位置ｌ＿ｔ、姿勢ｐ＿ｔ、及び画角αの状態では、撮影画像ｖ＿ｔに写り込む商品タグ３３は、７の商品タグ３３だけである。このため、上記のＳ７の処理で検出される商品領域情報Ｒの要素は、７の商品タグ３３の商品領域情報ｒ＿１だけになり、Ｓ８の処理で認識される商品ＩＤ情報Ｄの要素は、７の商品タグ３３の商品ＩＤ情報ｄ＿１だけになる。従って、上記Ｓ９の処理で商品位置情報Ｅの配列に格納される要素は、７の商品タグ３３の商品位置情報ｅ＿１だけになる。また、上記Ｓ１０の処理で商品棚位置情報ＥＬの配列に追加（登録）される要素は、現在表示（撮影）中の棚（４）の商品位置情報Ｅ、すなわち、商品棚位置情報Ｅ＿２だけになる。そして、現在表示（撮影）中の棚（４）の商品棚位置情報Ｅ＿２に格納された商品ＩＤ情報に対応する商品名のみが、表示対象となる。従って、図１１に示すｔ＿２の時点では、７の商品タグ３３の商品ＩＤ情報に対応する商品名４２のみが、表示される。
【００６１】
図１２に示すｔ＿３の時点でも、表示（撮影）中の商品棚３１は、棚（４）のままである。けれども、図１１の場合と異なり、図１２に示すカメラ位置ｌ＿ｔ、姿勢ｐ＿ｔ、及び画角αの状態では、撮影画像ｖ＿ｔに写り込む商品タグ３３は、６と７の商品タグ３３になる（６の商品タグ３３が追加される）。このため、上記のＳ７の処理で検出される商品領域情報Ｒの要素は、６の商品タグ３３の商品領域情報ｒ＿１と、７の商品タグ３３の商品領域情報ｒ＿２になり、Ｓ８の処理で認識される商品ＩＤ情報Ｄの要素は、６と７の商品タグ３３の商品ＩＤ情報ｄ＿１、ｄ＿２になる。従って、上記Ｓ９の処理で商品位置情報Ｅの配列に格納される要素は、６と７の商品タグ３３の商品位置情報ｅ＿１、ｅ＿２になる。また、上記Ｓ１０の商品棚位置情報登録処理では、現在表示（撮影）中の棚（４）の商品棚位置情報Ｅ＿２の配列に、商品位置情報Ｅの配列中の要素のうち、未だＥ＿２の配列に登録されていない要素（６の商品タグ３３の商品位置情報ｅ＿２）が追加される。そして、現在表示（撮影）中の棚（４）の商品棚位置情報Ｅ＿２に格納された商品ＩＤ情報に対応する商品名のみが表示される。従って、図１２に示すｔ＿３の時点では、６と７の商品タグ３３の商品ＩＤ情報に対応する商品名４２が、表示される。
【００６２】
上記の処理手順により、例えば、図７に示す状態（カメラ位置ｌ＿ｔ、姿勢ｐ＿ｔ、及び画角α）のときは、図８に示すように、今、スマートフォン１を持った店員の目の前にある商品棚３１（棚（３））の商品タグ３３（現在撮影中の１と２の商品タグ）の商品名のみが、ディスプレイ９上に表示される。これにより、この商品棚３１（棚（３））の裏側の商品棚（棚（１）や棚（２））に陳列された商品３２の商品名（４や９の商品タグ３３の商品名）が表示されてしまうことを防ぐことができる。
【００６３】
上記のように、本実施形態の商品棚位置登録プログラム６を実装したスマートフォン１（以下、「本実施形態のスマートフォン１」と略す）によれば、店員が店内に配置された商品棚３１を撮影して回るだけで、スマートフォン１（のＣＰＵ４）が、自動的に、これらの商品棚３１の撮影画像に写り込んだ各商品３２の（商品タグ３３にバーコード３６の形式で記載された）商品ＩＤ情報を認識し、認識した商品ＩＤ情報が記載された商品タグ３３の３次元位置を算出する。そして、上記の撮影画像に写り込んだ各商品３２について、これらの商品３２の商品ＩＤ情報と商品タグ３３の３次元位置とを、これらの商品３２が陳列された商品棚３１と関連付けて、商品棚位置情報ＥＬの一部又は全部として登録する。これにより、上記特許文献１に記載された商品（物品）管理システムを含む、従来の小売店における商品の棚位置の管理方法と比べて、店員が現在の商品棚位置情報ＥＬを登録するのに必要な工数の低減を図ることができる。
【００６４】
また、本実施形態のスマートフォン１によれば、商品３２の陳列位置が変わっても、変わった部分をスマートフォン１で撮影する（変わった部分にスマートフォン１をかざす）だけで、商品棚位置情報ＥＬを更新する（登録し直す）ことができる。従って、商品棚位置情報ＥＬの更新に必要な工数も低減することができる。
【００６５】
また、認識されたバーコード３６の商品ＩＤ情報は、対応する商品３２がどの商品棚３１にあるかという情報、及びその商品３２の（商品タグ３３の）３次元位置と組み合わせて、商品棚位置情報ＥＬに保存される。従って、この商品棚位置情報ＥＬは、店員向けの商品棚管理の目的だけではなく、ＡＲ（Ａｕｇｍｅｎｔｅｄ Ｒｅａｌｉｔｙ）による顧客の商品への誘導（商品位置案内）等の目的に利用することができる。上記のＡＲによる顧客の商品への誘導方法としては、例えば、スマートフォン１のディスプレイ９に、商品３２の位置への案内を表示する方法や、スマートフォン１のスピーカ１２により、商品３２の位置への音声案内を行う方法等が考えられる。
【００６６】
また、本実施形態のスマートフォン１によれば、ＣＰＵ４の商品タグ位置算出部２５は、カメラ位置姿勢推定部２１により推定した、カメラ８の３次元位置と、カメラ８の撮影方向とに加えて、商品タグ領域検出部２３により検出した各商品３２の商品タグ３３の２次元位置とサイズ（商品タグ３３が、撮影画像の２次元空間における、どの位置に、どのサイズで写っていたのかという情報）に基づいて、撮影画像に写り込んだ各商品３２の商品タグ３３の３次元位置を算出するようにした。これにより、撮影画像に写り込んだ商品タグ３３の３次元位置を正確に求めることができる。
【００６７】
また、本実施形態のスマートフォン１によれば、撮影画像に写り込んだ各商品３２の（商品タグ３３に記載された）商品ＩＤ情報を認識して、この商品ＩＤ情報の認識が最初に成功したときに、認識に成功した商品ＩＤ情報に対応した商品が陳列された商品棚３１を、商品棚位置情報ＥＬに基づいて判別する。そして、この商品棚３１の商品のうち、撮影画像に写り込んだ各商品３２について、これらの商品３２の商品ＩＤ情報に対応した商品名４２を、商品棚位置情報ＥＬに基づいて、撮影画像における各商品３２の（商品タグ３３の）３次元位置に対応した位置に表示するようにした。これにより、現在撮影中の商品棚３１の裏側の商品棚の商品３２等の不要な商品３２の商品名４２の表示を防ぐことができる。また、上記のように、（その時点で登録済の）商品棚位置情報ＥＬに基づいて、撮影画像に写り込んだ各商品３２の（商品タグ３３に記載された）商品ＩＤ情報に対応した商品名４２を表示するようにしたことにより、店員は、商品名４２が表示されていない商品３２については、これらの商品３２の商品ＩＤ情報を認識できていないことを、簡単に（一目で）判別することができる。
【００６８】
また、本実施形態のスマートフォン１によれば、ＣＰＵ４の商品棚判別部２９によって、最初に認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚３１の商品３２の商品タグ３３（請求項における「商品の領域」）のうち、表示用商品タグ領域検出部２８による（２次元位置とサイズの）検出に成功した商品タグ３３を、図６に示す枠４１で囲んだ状態で（マーカーを付して）表示するようにした。これにより、店員は、撮影画像において枠４１で囲んでいない（マーカーを付していない）状態で表示された商品タグ３３ｂについては、上記の表示用商品タグ領域検出部２８による検出に失敗した商品タグ３３であると判別することができる。
【００６９】
変形例：
なお、本発明は、上記の各実施形態の構成に限られず、発明の趣旨を変更しない範囲で種々の変形が可能である。次に、本発明の変形例について説明する。
【００７０】
変形例１： 
上記の実施形態では、請求項における商品ＩＤ情報が、一次元バーコード形式で記載された商品ＩＤ情報である場合の例について説明したが、商品ＩＤ情報は、ＱＲコード等の二次元バーコード形式で記載された商品ＩＤ情報であってもよい。また、請求項における商品ＩＤ情報は、商品名やヒューマンリーダブル文字（図５参照）等の文字情報であってもよい。この場合は、請求項における商品ＩＤ情報認識部は、スマートフォンのカメラ等により読み取った文字情報を、ＯＣＲ（Ｏｐｔｉｃａｌ Ｃｈａｒａｃｔｅｒ Ｒｅｃｏｇｎｉｔｉｏｎ/Ｒｅａｄｅｒ）の技術を用いて、スマートフォンを含む情報処理装置が利用可能な文字コードの形式に変換することにより、上記の文字情報を認識するものであってもよい。また、上記の実施形態では、請求項における商品ＩＤ情報が、商品タグに記載された商品ＩＤ情報である場合の例について説明したが、商品ＩＤ情報は、これに限られず、例えば、商品（商品のパッケージを含む）自体に記載された商品ＩＤ情報であってもよい。
【００７１】
変形例２： 
上記の実施形態では、ＣＰＵ４の商品棚判別部２９によって、最初に認識に成功した商品ＩＤ情報に対応した商品が陳列されていると判別された商品棚３１の商品３２の商品タグ３３のうち、表示用商品タグ領域検出部２８による（２次元位置とサイズの）検出に成功した商品タグ３３を、赤色等の枠４１で囲んだ状態で表示するようにした。けれども、ＣＰＵの表示用商品タグ領域検出部による検出に成功した商品タグに付するマーカーは、これに限られず、例えば、星印や丸印のマーカーであってもよい。また、商品タグを検出する代わりに、商品自体の領域を検出して、上記の商品棚の商品の領域のうち、検出に成功した商品の領域に、マーカーを付して表示するようにしてもよい。
【００７２】
変形例３： 
上記の実施形態では、撮影画像に写り込んだ各商品３２の商品タグ３３に記載された商品ＩＤ情報を認識して、最初に認識に成功した商品ＩＤ情報に対応した商品が陳列された商品棚３１の商品のうち、撮影画像に写り込んだ各商品３２について、これらの商品３２の商品タグ３３に記載された商品ＩＤ情報に対応した商品名４２を、撮影画像における各商品３２の商品タグ３３の３次元位置に対応した位置に表示するようにした。けれども、上記の商品ＩＤ情報に対応した商品名の代わりに、商品ＩＤ情報に対応した他の商品情報（例えば、商品の識別コードや識別番号）を表示するようにしてもよい。
【００７３】
変形例４： 
上記の実施形態では、スマートフォン１が、撮影画像に写り込んだ各商品３２の商品タグ３３に記載された商品ＩＤ情報を認識して、この商品ＩＤ情報の認識が最初に成功したときに、認識に成功した商品ＩＤ情報に対応した商品が陳列された商品棚３１を、商品棚位置情報ＥＬに基づいて判別するようにした。けれども、撮影画像に写り込んだ各商品の商品タグに記載された商品ＩＤ情報の認識が複数回成功したときに、これらの認識に成功した商品ＩＤ情報に対応した商品が陳列された商品棚を、商品棚位置情報ＥＬに基づいて判別するようにしてもよい。
【００７４】
変形例５： 
上記の実施形態では、本発明の情報処理装置が、スマートフォン１である場合の例を示したが、本発明の情報処理装置は、これに限られず、例えば、カメラを備えたタブレット型コンピュータであってもよい。
【００７５】
変形例６： 
上記の実施形態では、商品棚位置登録プログラム６を実装した情報処理装置（スマートフォン１）自体が、表示装置（ディスプレイ９）とカメラ８を備える場合の例を示した。けれども、本発明の商品棚位置登録プログラムを実装した情報処理装置自体が、必ずしも、表示装置とカメラを備える必要はなく、例えば、商品棚位置登録プログラムを実装したパーソナルコンピューター（情報処理装置）と、表示装置及びカメラを備えたスマートフォン又はタブレット型コンピュータとを組み合わせて用いても良い。
【符号の説明】
【００７６】
１    スマートフォン（情報処理装置、携帯可能な情報処理装置）
６    商品棚位置登録プログラム
８    カメラ
９    ディスプレイ（表示装置）
２１  カメラ位置姿勢推定部
２３  商品タグ領域検出部（登録用商品タグ領域検出部）
２４  バーコード認識部（商品ＩＤ情報認識部）
２５  商品タグ位置算出部（商品３次元位置算出部）
２６  商品棚位置情報登録部
２８  表示用商品タグ領域検出部（商品領域検出部）
２９  商品棚判別部
３０  表示制御部
３１  商品棚
３２  商品
３３  商品タグ（商品の領域）
４１  枠（マーカー）
４２  商品名（商品情報）
ＥＬ  商品棚位置情報
ｌ＿ｔ  カメラ位置（カメラの３次元位置）
ｐ＿ｔ  姿勢（カメラの撮影方向）
【図１】
2019174959.tif 000003
【図２】
2019174959.tif 000004
【図３】
2019174959.tif 000005
【図４】
2019174959.tif 000006
【図５】
2019174959.tif 000007
【図６】
2019174959.tif 000008
【図７】
2019174959.tif 000009
【図８】
2019174959.tif 000010
【図９】
2019174959.tif 000011
【図１０】
2019174959.tif 000012
【図１１】
2019174959.tif 000013
【図１２】
2019174959.tif 000014