(57)【要約】【課題】棚板を利用して配置される全ての情報コードが１つの撮像画像にて撮像されないような陳列棚に陳列される各物品であっても、各物品の位置関係を検出可能な構成を提供する。【解決手段】一部未検出状態であると判定された撮像画像について、１つの検出済コードの回転角度θが検出され、検出された回転角度θが当該検出済コードに関して記憶部２５に記憶される回転角度θとなるように撮像画像を回転射影変換させた後の、未検出コードの相対位置情報と回転角度θとが検出される。そして、ガイドコードＣｇの回転角度θが検出された場合に、当該検出までに記憶部２５に記憶された相対位置情報及び回転角度θに応じて各情報コードが仮想配置された仮想平面Ｓが、検出されたガイドコードＣｇの回転角度θが規定角度となるように回転射影変換させて補正され、補正後の仮想平面Ｓに仮想配置される各情報コードの相対位置情報及び回転角度θに応じて、記憶部２５に記憶される相対位置情報及び回転角度θが更新される。【選択図】図１３
2020102072.tif 000002
【特許請求の範囲】
【請求項１】
複数の棚板にて仕切られた陳列棚に陳列される複数種類の物品の位置関係を検出する位置関係検出装置であって、
それぞれの種類の物品が陳列される位置ごとに前記棚板を利用して当該物品の種類を特定可能な特定情報が記録された情報コードがそれぞれ配置され、さらに、前記棚板に対する回転角度が規定角度となるように配置された情報コードであることを示す規定配置情報が記録されたガイドコードが、前記棚板に対して前記回転角度が前記規定角度となるように配置され、
撮像部と、
前記撮像部により撮像された撮像画像に含まれる前記情報コードを読み取る読取部と、
前記撮像部により撮像された１つの撮像画像に前記読取部にて前記特定情報が読み取られる前記情報コードが２以上含まれる複数コード撮像時に、当該２以上の情報コードについて、いずれか１つの情報コードの回転角度を検出し、検出された前記回転角度が前記規定角度となるように前記撮像画像を回転射影変換させた後の、各情報コード間での相対位置に関する相対位置情報と各情報コードの回転角度とを検出可能な検出部と、
前記検出部により前記相対位置情報及び前記回転角度が検出された情報コードの前記特定情報が、検出済コードの情報として前記検出部による検出結果とともに記憶される記憶部と、
前記記憶部に記憶される前記相対位置情報及び前記回転角度を、前記撮像部により撮像した前記ガイドコードの撮像状態に応じて更新可能な更新部と、
前記複数コード撮像時に、少なくとも１つの前記検出済コードとともに、前記記憶部に前記特定情報が記憶されていない前記情報コードが未検出コードとして含まれる一部未検出状態であるか否かについて判定する判定部と、
を備え、
前記検出部は、
前記記憶部に前記検出済コードが記憶されていない状態にて前記複数コード撮像時に、撮像された前記２以上の情報コードについて、各情報コード間での前記相対位置情報と各情報コードの回転角度とを検出し、
前記判定部により前記一部未検出状態であると判定された前記撮像画像について、１つの前記検出済コードの回転角度を検出し、検出された前記回転角度が当該検出済コードに関して前記記憶部に記憶される前記回転角度となるように前記撮像画像を回転射影変換させた後の、前記未検出コードの前記相対位置情報と前記回転角度とを検出し、
前記更新部は、
前記検出部により前記ガイドコードの回転角度が検出された場合に、当該検出までに前記記憶部に記憶された前記相対位置情報及び前記回転角度に応じて各情報コードが仮想配置された仮想平面を、検出された前記ガイドコードの回転角度が前記規定角度となるように回転射影変換させて補正し、補正後の前記仮想平面に仮想配置される各情報コードの前記相対位置情報及び前記回転角度に応じて、前記記憶部に記憶される前記相対位置情報及び前記回転角度を更新することを特徴とする位置関係検出装置。
【請求項２】
前記情報コードには、前記特定情報に加えて、当該情報コードのサイズに関する情報が記録されることを特徴とする請求項１に記載の位置関係検出装置。
【請求項３】
前記情報コードは、全て同じサイズに形成されることを特徴とする請求項１又は２に記載の位置関係検出装置。
【請求項４】
前記陳列棚の長手方向一端に位置する前記棚板の部位には、当該長手方向一端を示す一端側情報が記録された情報コードが配置され、前記陳列棚の長手方向他端に位置する前記棚板の部位には、当該長手方向他端を示す他端側情報が記録された情報コードが配置され、
前記記憶部には、前記読取部により読み取られた前記一端側情報が記憶されるとともに、前記読取部により読み取られた前記他端側情報が記憶されることを特徴とする請求項１〜３のいずれか一項に記載の位置関係検出装置。
【請求項５】
前記一端側情報及び前記他端側情報の少なくともいずれか一方には、前記陳列棚を特定する情報が含まれることを特徴とする請求項４に記載の位置関係検出装置。
【請求項６】
前記検出部は、
前記記憶部に前記検出済コードが記憶されていない状態にて前記複数コード撮像時に、撮像された前記２以上の情報コードについて、いずれか１つの情報コードの前記撮像画像に占める画像サイズとなる基準コードサイズを検出し、各情報コード間での前記相対位置情報と各情報コードの回転角度とを検出するとともに、残りの情報コードの前記基準コードサイズに対するサイズ比を検出し、
前記判定部により前記一部未検出状態であると判定された前記撮像画像について、１つの前記検出済コードの回転角度を検出し、検出された前記回転角度が当該検出済コードに関して前記記憶部に記憶される前記回転角度となるように前記撮像画像を回転射影変換させた後の、前記未検出コードの前記相対位置情報と前記回転角度とを検出するとともに、前記未検出コードの前記基準コードサイズに対するサイズ比を検出することを特徴とする請求項１に記載の位置関係検出装置。
【請求項７】
前記記憶部に記憶される複数の前記相対位置情報に基づいて各情報コード間の実際の距離を算出する算出部を備え、
前記陳列棚の長手方向一端に位置する前記棚板の部位には、当該長手方向一端を示す一端側情報が記録された情報コードとして一端側コードが配置され、前記陳列棚の長手方向他端に位置する前記棚板の部位には、当該長手方向他端を示す他端側情報が記録された情報コードとして他端側コードが配置され、
前記一端側情報及び前記他端側情報の少なくともいずれか一方には、前記陳列棚の前記長手方向の長さに関する情報が含まれ、
前記算出部は、前記一端側コードと前記他端側コードとの間の前記長手方向の実際の距離が前記読取部の読み取りにより得られた前記陳列棚の前記長手方向の長さに一致することを前提に、複数の前記相対位置情報に基づいて各情報コード間の実際の距離を算出することを特徴とする請求項６に記載の位置関係検出装置。
【請求項８】
前記記憶部に記憶される２以上の前記検出済コードからそれぞれ特定される物品の種類を示す情報が、前記相対位置情報に応じて第１表示領域にそれぞれ表示され、前記撮像部により撮像されている現在の撮像画像が、第２表示領域に表示される表示部を備えることを特徴とする請求項１〜７のいずれか一項に記載の位置関係検出装置。
【請求項９】
請求項１〜８のいずれか一項に記載の位置関係検出装置と、
前記位置関係検出装置を管理するサーバと、
を備える位置関係検出システムであって、
前記位置関係検出装置は、
前記記憶部に記憶される情報の少なくとも一部を所定のタイミングにて前記サーバに送信する送信部を備え、
前記サーバは、
前記送信部により送信された情報を受信する受信部と、
前記受信部による受信結果を利用して前記陳列棚に陳列される複数種類の物品の位置関係を管理する管理部と、
を備えることを特徴とする位置関係検出システム。
【請求項１０】
複数の棚板にて仕切られた陳列棚に陳列される複数種類の物品の位置関係を検出する位置関係検出システムであって、
撮像部を有する携帯端末と、前記撮像部により撮像された撮像画像を利用して前記複数種類の物品の位置関係を検出する処理を行うサーバとを備え、
それぞれの種類の物品が陳列される位置ごとに前記棚板を利用して当該物品の種類を特定可能な特定情報が記録された情報コードがそれぞれ配置され、さらに、前記棚板に対する回転角度が規定角度となるように配置された情報コードであることを示す規定配置情報が記録されたガイドコードが、前記棚板に対して前記回転角度が前記規定角度となるように配置され、
前記携帯端末は、前記撮像部の撮像画像を含めた情報を所定のタイミングにて前記サーバに送信する送信部を備え、
前記サーバは、
前記送信部により送信された情報を受信する受信部と、
前記受信部により受信された撮像画像に含まれる前記情報コードを読み取る読取部と、
前記受信部により受信された１つの撮像画像に前記読取部にて前記特定情報が読み取られる前記情報コードが２以上含まれる複数コード撮像時に、当該２以上の情報コードについて、いずれか１つの情報コードの回転角度を検出し、検出された前記回転角度が前記規定角度となるように前記撮像画像を回転射影変換させた後の、各情報コード間での相対位置に関する相対位置情報と各情報コードの回転角度とを検出可能な検出部と、
前記検出部により前記相対位置情報及び前記回転角度が検出された情報コードの前記特定情報が、検出済コードの情報として前記検出部による検出結果とともに記憶される記憶部と、
前記記憶部に記憶される前記相対位置情報及び前記回転角度を、前記受信部により受信された撮像画像に含まれる前記ガイドコードの撮像状態に応じて更新可能な更新部と、
前記複数コード撮像時に、少なくとも１つの前記検出済コードとともに、前記記憶部に前記特定情報が記憶されていない前記情報コードが未検出コードとして含まれる一部未検出状態であるか否かについて判定する判定部と、
を備え、
前記検出部は、
前記記憶部に前記検出済コードが記憶されていない状態にて前記複数コード撮像時に、撮像された前記２以上の情報コードについて、各情報コード間での前記相対位置情報と各情報コードの回転角度とを検出し、
前記判定部により前記一部未検出状態であると判定された前記撮像画像について、１つの前記検出済コードの回転角度を検出し、検出された前記回転角度が当該検出済コードに関して前記記憶部に記憶される前記回転角度となるように前記撮像画像を回転射影変換させた後の、前記未検出コードの前記相対位置情報と前記回転角度とを検出し、
前記更新部は、
前記検出部により前記ガイドコードの回転角度が検出された場合に、当該検出までに前記記憶部に記憶された前記相対位置情報及び前記回転角度に応じて各情報コードが仮想配置された仮想平面を、検出された前記ガイドコードの回転角度が前記規定角度となるように回転射影変換させて補正し、補正後の前記仮想平面に仮想配置される各情報コードの前記相対位置情報及び前記回転角度に応じて、前記記憶部に記憶される前記相対位置情報及び前記回転角度を更新することを特徴とする位置関係検出システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報コードを利用して陳列棚に陳列される各物品の位置関係を検出する位置関係検出装置及び位置関係検出システムに関するものである。
【背景技術】
【０００２】
従来、陳列棚に陳列される商品等の管理に関して、陳列棚における商品ごとの位置関係を把握したいという要求があり、このように陳列棚に陳列される商品等の位置関係を検出する位置関係検出装置に関連する技術として、例えば、下記特許文献１に開示される商品陳列位置の判定処理方法が知られている。この商品陳列位置の判定処理方法では、商品陳列棚の各棚板の前側面に、商品陳列棚の各位置を識別する位置識別情報を付した位置ラベルと、商品陳列棚に陳列される各商品を識別する商品識別情報を付した商品ラベルとが取り付けられている。そして、商品陳列棚の撮像画像が取得されると、この撮像画像から検出された位置識別情報及び商品識別情報の撮像画像上での座標が特定される。そして、隣り合う一組の位置識別情報が選択されて、この選択した一組の位置識別情報の間に商品識別情報が検出されると、選択した一組の位置識別情報に対応付けられた２つの位置の間に、検出した商品識別情報に対応付けられた商品が陳列されているとして、商品陳列位置マスタに記録される。これにより、ユーザは、商品陳列棚を撮像するだけで、煩雑な位置登録作業を行うことなく、商品陳列位置マスタを作成することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１９４８３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上記特許文献１のような構成では、一組の位置識別情報が撮像されないとそれらの間にある商品識別情報の位置を特定できないという問題がある。このため、各位置識別情報を短い間隔で配置すると、商品識別情報を配置するスペースが狭くなるという問題が生じる。特に、店舗内に設けられる陳列棚は通路に沿って長くなるように設置される場合が多く、このように設置される陳列棚が１つの撮像画像に写らない場合には、各商品等がどのような位置関係にあるかを把握することができない。
【０００５】
例えば、パノラマ画像のように、連続して撮像される複数の撮像画像を連結して１つの大きな画像を生成してそれぞれの位置関係を検出する方法も考えられるが、各撮像画像を連結する時点では陳列棚に設置された全ての情報コードが読み取り可能に撮像されているか把握が困難である。そうすると、全ての撮像画像を連結し終えた後に、各情報コードから位置関係を取得しようとしても、取得できない位置が発生する場合がある。このような場合には、また最初から画像を撮りなおす必要があり、効率が悪いという問題がある。
【０００６】
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、棚板を利用して配置される全ての情報コードが１つの撮像画像にて撮像されないような陳列棚に陳列される各物品であっても、各物品の位置関係を検出可能な構成を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、特許請求の範囲の請求項１に記載の発明は、
複数の棚板（２ａ〜２ｃ）にて仕切られた陳列棚（１，１ａ）に陳列される複数種類の物品（Ｇ１〜Ｇ９）の位置関係を検出する位置関係検出装置（１０）であって、
それぞれの種類の物品が陳列される位置ごとに前記棚板を利用して当該物品の種類を特定可能な特定情報が記録された情報コード（Ｃ１〜Ｃ９，Ｃ１１〜Ｃ１３，Ｃｓ１〜Ｃｓ４）がそれぞれ配置され、さらに、前記棚板に対する回転角度（θ）が規定角度となるように配置された情報コードであることを示す規定配置情報が記録されたガイドコード（Ｃｇ）が、前記棚板に対して前記回転角度が前記規定角度となるように配置され、
撮像部（２２）と、
前記撮像部により撮像された撮像画像に含まれる前記情報コードを読み取る読取部（２１）と、
前記撮像部により撮像された１つの撮像画像に前記読取部にて前記特定情報が読み取られる前記情報コードが２以上含まれる複数コード撮像時に、当該２以上の情報コードについて、いずれか１つの情報コードの回転角度を検出し、検出された前記回転角度が前記規定角度となるように前記撮像画像を回転射影変換させた後の、各情報コード間での相対位置に関する相対位置情報と各情報コードの回転角度とを検出可能な検出部（２１）と、
前記検出部により前記相対位置情報及び前記回転角度が検出された情報コードの前記特定情報が、検出済コードの情報として前記検出部による検出結果とともに記憶される記憶部（２５）と、
前記記憶部に記憶される前記相対位置情報及び前記回転角度を、前記撮像部により撮像した前記ガイドコードの撮像状態に応じて更新可能な更新部（２１）と、
前記複数コード撮像時に、少なくとも１つの前記検出済コードとともに、前記記憶部に前記特定情報が記憶されていない前記情報コードが未検出コードとして含まれる一部未検出状態であるか否かについて判定する判定部（２１）と、
を備え、
前記検出部は、
前記記憶部に前記検出済コードが記憶されていない状態にて前記複数コード撮像時に、撮像された前記２以上の情報コードについて、各情報コード間での前記相対位置情報と各情報コードの回転角度とを検出し、
前記判定部により前記一部未検出状態であると判定された前記撮像画像について、１つの前記検出済コードの回転角度を検出し、検出された前記回転角度が当該検出済コードに関して前記記憶部に記憶される前記回転角度となるように前記撮像画像を回転射影変換させた後の、前記未検出コードの前記相対位置情報と前記回転角度とを検出し、
前記更新部は、
前記検出部により前記ガイドコードの回転角度が検出された場合に、当該検出までに前記記憶部に記憶された前記相対位置情報及び前記回転角度に応じて各情報コードが仮想配置された仮想平面を、検出された前記ガイドコードの回転角度が前記規定角度となるように回転射影変換させて補正し、補正後の前記仮想平面に仮想配置される各情報コードの前記相対位置情報及び前記回転角度に応じて、前記記憶部に記憶される前記相対位置情報及び前記回転角度を更新することを特徴とする。
【０００８】
請求項９に記載の発明は、
請求項１〜８のいずれか一項に記載の位置関係検出装置（１０）と、
前記位置関係検出装置を管理するサーバ（４）と、
を備える位置関係検出システム（３）であって、
前記位置関係検出装置は、
前記記憶部に記憶される情報の少なくとも一部を所定のタイミングにて前記サーバに送信する送信部（２６）を備え、
前記サーバは、
前記送信部により送信された情報を受信する受信部（８）と、
前記受信部による受信結果を利用して前記陳列棚に陳列される複数種類の物品の位置関係を管理する管理部（５）と、
を備えることを特徴とする。
【０００９】
請求項１０に記載の発明は、
複数の棚板（２ａ〜２ｃ）にて仕切られた陳列棚（１，１ａ）に陳列される複数種類の物品（Ｇ１〜Ｇ９）の位置関係を検出する位置関係検出システム（３）であって、
撮像部（２２）を有する携帯端末（１０）と、前記撮像部により撮像された撮像画像を利用して前記複数種類の物品の位置関係を検出する処理を行うサーバ（４）とを備え、
それぞれの種類の物品が陳列される位置ごとに前記棚板を利用して当該物品の種類を特定可能な特定情報が記録された情報コード（Ｃ１〜Ｃ９，Ｃ１１〜Ｃ１３，Ｃｓ１〜Ｃｓ４）がそれぞれ配置され、さらに、前記棚板に対する回転角度（θ）が規定角度となるように配置された情報コードであることを示す規定配置情報が記録されたガイドコード（Ｃｇ）が、前記棚板に対して前記回転角度が前記規定角度となるように配置され、
前記携帯端末は、前記撮像部の撮像画像を含めた情報を所定のタイミングにて前記サーバに送信する送信部（２６）を備え、
前記サーバは、
前記送信部により送信された情報を受信する受信部（８）と、
前記受信部により受信された撮像画像に含まれる前記情報コードを読み取る読取部（５）と、
前記受信部により受信された１つの撮像画像に前記読取部にて前記特定情報が読み取られる前記情報コードが２以上含まれる複数コード撮像時に、当該２以上の情報コードについて、いずれか１つの情報コードの回転角度を検出し、検出された前記回転角度が前記規定角度となるように前記撮像画像を回転射影変換させた後の、各情報コード間での相対位置に関する相対位置情報と各情報コードの回転角度とを検出可能な検出部（５）と、
前記検出部により前記相対位置情報及び前記回転角度が検出された情報コードの前記特定情報が、検出済コードの情報として前記検出部による検出結果とともに記憶される記憶部（６）と、
前記記憶部に記憶される前記相対位置情報及び前記回転角度を、前記受信部により受信された撮像画像に含まれる前記ガイドコードの撮像状態に応じて更新可能な更新部（５）と、
前記複数コード撮像時に、少なくとも１つの前記検出済コードとともに、前記記憶部に前記特定情報が記憶されていない前記情報コードが未検出コードとして含まれる一部未検出状態であるか否かについて判定する判定部（５）と、
を備え、
前記検出部は、
前記記憶部に前記検出済コードが記憶されていない状態にて前記複数コード撮像時に、撮像された前記２以上の情報コードについて、各情報コード間での前記相対位置情報と各情報コードの回転角度とを検出し、
前記判定部により前記一部未検出状態であると判定された前記撮像画像について、１つの前記検出済コードの回転角度を検出し、検出された前記回転角度が当該検出済コードに関して前記記憶部に記憶される前記回転角度となるように前記撮像画像を回転射影変換させた後の、前記未検出コードの前記相対位置情報と前記回転角度とを検出し、
前記更新部は、
前記検出部により前記ガイドコードの回転角度が検出された場合に、当該検出までに前記記憶部に記憶された前記相対位置情報及び前記回転角度に応じて各情報コードが仮想配置された仮想平面を、検出された前記ガイドコードの回転角度が前記規定角度となるように回転射影変換させて補正し、補正後の前記仮想平面に仮想配置される各情報コードの前記相対位置情報及び前記回転角度に応じて、前記記憶部に記憶される前記相対位置情報及び前記回転角度を更新することを特徴とする。
なお、上記各括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係を示すものである。
【発明の効果】
【００１０】
請求項１の発明では、陳列棚において、それぞれの種類の物品が陳列される位置ごとに棚板を利用して当該物品の種類を特定可能な特定情報が記録された情報コードがそれぞれ配置されるとともに、規定配置情報を記録したガイドコードがその回転角度が規定角度となるように配置される。そして、記憶部に検出済コードが記憶されていない状態にて複数コード撮像時に、検出部により各情報コード間での相対位置情報と各情報コードの回転角度とが検出される。また、判定部により少なくとも１つの検出済コードとともに未検出コードが含まれる一部未検出状態であると判定された撮像画像について、検出部により、１つの検出済コードの回転角度が検出され、検出された回転角度が当該検出済コードに関して記憶部に記憶される回転角度となるように撮像画像を回転射影変換させた後の、未検出コードの相対位置情報と回転角度とが検出される。そして、検出部によりガイドコードの回転角度が検出された場合に、当該検出までに記憶部に記憶された相対位置情報及び回転角度に応じて各情報コードが仮想配置された仮想平面が、検出されたガイドコードの回転角度が規定角度となるように回転射影変換させて補正され、補正後の仮想平面に仮想配置される各情報コードの相対位置情報及び回転角度に応じて、更新部により、記憶部に記憶される相対位置情報及び回転角度が更新される。
【００１１】
これにより、最初に撮像部に撮像された２以上の情報コードの相対位置情報及び回転角度が検出された後に、撮像部による撮像領域を陳列棚の長手方向に沿って移動させるように撮像することで、新たな情報コード、すなわち、未検出コードが撮像されるごとに、その未検出コードの相対位置情報及び回転角度が検出されて検出済コードの情報として記憶部に記憶される。さらに、検出済コードの回転角度が記憶部に記憶される回転角度となるように撮像画像を回転射影変換させた後に、未検出コードの相対位置情報と回転角度とが検出されるので、各情報コードがそれぞれ異なる回転角度で棚板に配置される場合や撮像ごとに陳列棚に対する撮像部の傾きが変わる場合であっても、各情報コードの相対位置情報を正確に検出することができる。特に、ガイドコードが検出されると、このガイドコードの回転角度が規定角度となるように記憶部に記憶される相対位置情報及び回転角度が更新されるため、実際の陳列棚に対する各情報コードの配置状態に合った回転角度を検出できるので、各情報コードの相対位置情報をより正確に検出することができる。このため、全ての情報コードを読み取った後、記憶部に記憶される各検出済コードの相対位置情報に基づいて、検出済コードの特定情報から特定される種類の物品の位置関係、すなわち、陳列棚に陳列される各物品の位置関係を検出することができる。したがって、棚板を利用して配置される全ての情報コードが１つの撮像画像にて撮像されないような陳列棚に陳列される各物品であっても、各物品の位置関係を検出することができる。
【００１２】
請求項２の発明では、情報コードには、特定情報に加えて、当該情報コードのサイズに関する情報が記録される。このため、相対位置関係を検出するための情報コードのサイズを正確に取得できるので、各物品の位置関係を精度良く検出することができる。
【００１３】
請求項３の発明では、情報コードは、全て同じサイズに形成されるため、１つの情報コードのサイズを把握することで他の情報コードのサイズを把握する必要がないため、相対位置関係の検出に関して検出処理負荷を軽減することができる。
【００１４】
請求項４の発明では、陳列棚の長手方向一端に位置する棚板の部位には、当該長手方向一端を示す一端側情報が記録された情報コードが配置され、陳列棚の長手方向他端に位置する棚板の部位には、当該長手方向他端を示す他端側情報が記録された情報コードが配置される。そして、記憶部には、読取部により読み取られた一端側情報が記憶されるとともに、読取部により読み取られた他端側情報が記憶される。これにより、記憶部に一端側情報及び他端側情報の双方が記憶されていることで、陳列棚の長手方向一端から他端まで撮像領域を移動させた状態であると判断でき、陳列棚に配置される全ての情報コードが読み取られたことを容易に推定することができる。
【００１５】
請求項５の発明では、一端側情報及び他端側情報の少なくともいずれか一方には、陳列棚を特定する情報が含まれるため、陳列棚の長手方向一端から他端までを把握できるだけでなく、どの陳列棚の物品の位置関係を検出しているかを容易に把握することができる。
【００１６】
請求項６の発明では、検出部は、記憶部に検出済コードが記憶されていない状態にて複数コード撮像時に、撮像された２以上の情報コードについて、いずれか１つの情報コードの基準コードサイズを検出し、各情報コード間での相対位置情報と各情報コードの回転角度とを検出するとともに、残りの情報コードの基準コードサイズに対するサイズ比を検出する。また、検出部は、判定部により一部未検出状態であると判定された撮像画像について、１つの検出済コードの回転角度を検出し、検出された回転角度が当該検出済コードに関して記憶部に記憶される回転角度となるように撮像画像を回転射影変換させた後の、未検出コードの相対位置情報と回転角度とを検出するとともに、未検出コードの基準コードサイズに対するサイズ比を検出する。
【００１７】
これにより、陳列棚に配置されるそれぞれの情報コードのサイズ（実寸法）を把握していない場合でも、最初に回転角度を検出した情報コードの画像サイズである基準コードサイズを基準に、残りの情報コードのサイズ比を検出できるので、サイズ比をも考慮した各情報コード間での相対位置関係を検出することができる。
【００１８】
請求項７の発明では、陳列棚の長手方向一端に位置する棚板の部位には、当該長手方向一端を示す一端側情報が記録された情報コードとして一端側コードが配置され、陳列棚の長手方向他端に位置する棚板の部位には、当該長手方向他端を示す他端側情報が記録された情報コードとして他端側コードが配置され、一端側情報及び他端側情報の少なくともいずれか一方には、陳列棚の長手方向の長さに関する情報が含まれる。そして、算出部は、一端側コードと他端側コードとの間の上記長手方向の実際の距離が読取部の読み取りにより得られた陳列棚の長手方向の長さに一致することを前提に、複数の相対位置情報に基づいて各情報コード間の実際の距離を算出する。
【００１９】
記憶部に記憶される複数の相対位置情報から各情報コード間での相対位置関係を比率的に把握できても、撮像画像だけで実際の距離や寸法を正確に算出することは困難である。一方で、一端側コードと他端側コードとの間の長手方向の実際の距離は、一端側コード又は他端側コードの読み取りにより得られた陳列棚の長手方向の長さに一致するとみなすことができる。このため、実際の距離を把握できた一端側コードと他端側コードとの間での相対位置関係を基準とすることで、他の相対位置関係に基づく各情報コード間の実際の距離を算出することができる。
【００２０】
請求項８の発明では、記憶部に記憶される２以上の検出済コードからそれぞれ特定される物品の種類を示す情報が、相対位置情報に応じて第１表示領域にそれぞれ表示され、撮像部により撮像されている現在の撮像画像が、第２表示領域に表示される表示部が設けられる。これにより、第２表示領域に表示される現在の撮像画像を見ながらその撮像領域を陳列棚の長手方向に移動させると、撮像領域となった順に、陳列棚に陳列される物品の種類を示す情報がその相対位置に対応するよう第１表示領域に追加されて表示される。このため、各物品の位置関係の検出状況を、逐次視覚的に把握することができる。
【００２１】
請求項９の発明では、請求項１と同様の効果を奏する位置関係検出システムを実現できる。
請求項１０の発明では、請求項１と同様の効果を奏する位置関係検出システムを実現できる。
【図面の簡単な説明】
【００２２】
【図１】第１実施形態に係る携帯端末及び位置関係検出システムと検出対象の陳列棚とを示す説明図である。
【図２】図２（Ａ）は、ガイドコードの配置状態を説明する説明図であり、図２（Ｂ）は、矩形状の撮像画像において検出される情報コードの回転角度を説明する説明図である。
【図３】携帯端末の電気的構成を概略的に例示するブロック図である。
【図４】４つの情報コードの配置状態と２つの撮像領域との関係を説明する説明図である。
【図５】図５（Ａ）は、図４における撮像領域Ｐｓ１の撮像画像を説明する説明図であり、図５（Ｂ）は、図４における撮像領域Ｐｓ２の撮像画像を説明する説明図である。
【図６】図５（Ｂ）に関して回転射影変換を行うことなく検出された情報コードＣｓ４の相対位置情報と、回転射影変換を行うことで検出された情報コードＣｓ４の相対位置情報との関係を説明する説明図である。
【図７】図７（Ａ）は、回転射影変換前の仮想平面を説明する説明図であり、図７（Ｂ）は、回転射影変換後の仮想平面を説明する説明図である。
【図８】第１実施形態において制御部にて行われる位置関係検出処理の流れを例示するフローチャートである。
【図９】記憶部に記憶される特定情報と相対位置情報及び回転角度とを説明する説明図であり、図９（Ａ）は、図１の撮像領域Ｐ１を撮像したときの記憶状態を示し、図９（Ｂ）は、図１の撮像領域Ｐ１から撮像領域Ｐ２まで移動させながら撮像したときの記憶状態を示し、図９（Ｃ）は、図１の撮像領域Ｐ１から撮像領域Ｐ３まで移動させながら撮像したときの記憶状態を示す。
【図１０】ガイドコードの回転角度に応じて図９（Ｃ）の状態から更新された相対位置情報及び回転角度を説明する説明図である。
【図１１】図９（Ａ）の記憶状態での第１表示領域の表示状態を説明する説明図である。
【図１２】図９（Ｂ）の記憶状態での第１表示領域の表示状態を説明する説明図である。
【図１３】図９（Ｃ）の記憶状態での第１表示領域の表示状態を説明する説明図である。
【図１４】情報コードＣ８のみを読み飛ばした状態での第１表示領域の表示状態を説明する説明図である。
【図１５】第２実施形態に係る携帯端末及び位置関係検出システムと検出対象の陳列棚とを示す説明図である。
【図１６】第２実施形態において制御部にて行われる位置関係検出処理の流れを例示するフローチャートである。
【図１７】第２実施形態において第３表示領域の表示状態を説明する説明図である。
【図１８】第３実施形態に係る検出対象の陳列棚を示す説明図である。
【図１９】第３実施形態において制御部にて行われる位置関係検出処理の流れを例示するフローチャートである。
【図２０】図２０（Ａ）は、図１８における撮像領域Ｐ１１の撮像画像を説明する説明図であり、図２０（Ｂ）は、図１８における撮像領域Ｐ１２の撮像画像を説明する説明図である。
【図２１】図２１（Ａ）は、図１８における撮像領域Ｐ１３の撮像画像を説明する説明図であり、図２１（Ｂ）は、図１８における撮像領域Ｐ１４の撮像画像を説明する説明図である。
【図２２】図２０及び図２１の各撮像画像を基準コードサイズを基準に基準平面に変換した状態を説明する説明図である。
【発明を実施するための形態】
【００２３】
［第１実施形態］
以下、本発明に係る位置関係検出装置及び位置関係検出システムの第１実施形態について、図面を参照して説明する。
図１に示す携帯端末１０は、情報コードを利用して陳列棚１に陳列される複数種類の物品の位置関係を検出する位置関係検出装置として構成される。また、図１に示す位置関係検出システム３は、携帯端末１０とサーバ４とを備え、携帯端末１０を利用して陳列棚１に陳列される複数種類の物品の位置関係を検出するシステムとして構成される。本実施形態では、図１に示すような陳列棚１に陳列される各商品の位置関係を検出対象としており、陳列棚１は、３つの棚板２ａ〜２ｃにて上下に仕切られて、通路に沿って左右に長くなるように構成されている。
【００２４】
この陳列棚１には、商品Ｇ１としてクッキングシートと、商品Ｇ２としてフライパンホイルと、商品Ｇ３としてアルミホイルと、商品Ｇ４としてタッパー容器と、商品Ｇ５としてフリーザーバッグ（大）と、商品Ｇ６としてフリーザーバッグ（中）と、商品Ｇ７としてフリーザーバッグ（小）と、商品Ｇ８としてラップフィルムと、商品Ｇ９としてポリ袋とが陳列されている。
【００２５】
そして、各商品Ｇ１〜Ｇ９が陳列される位置ごとに、各棚板２ａ〜２ｃを利用して当該物品の種類を特定可能な特定情報が記録された情報コードＣ１〜Ｃ９がそれぞれ規定のサイズにて配置されている。具体的には、商品Ｇ１の種類としてクッキングシートを特定可能な特定情報が記録された情報コードＣ１が、棚板２ａの前面に設けられるラベル貼付部の左側であって各種のクッキングシートが陳列される範囲の中央近傍に配置されている。また、商品Ｇ２の種類としてフライパンホイルを特定可能な特定情報が記録された情報コードＣ２が、棚板２ａの前面に設けられるラベル貼付部の中央左側であって各種のフライパンホイルが陳列される範囲の中央近傍に配置されている。また、商品Ｇ３の種類としてアルミホイルを特定可能な特定情報が記録された情報コードＣ３が、棚板２ａの前面に設けられるラベル貼付部の中央右側であって各種のアルミホイルが陳列される範囲の中央近傍に配置されている。また、商品Ｇ４の種類としてタッパー容器を特定可能な特定情報が記録された情報コードＣ４が、棚板２ａの前面に設けられるラベル貼付部の右側であって各種のタッパー容器が陳列される範囲の中央近傍に配置されている。また、商品Ｇ５の種類としてフリーザーパック（大）を特定可能な特定情報が記録された情報コードＣ５が、棚板２ｂの前面に設けられるラベル貼付部の左側であって各種のフリーザーパック（大）が陳列される範囲の中央近傍に配置されている。また、商品Ｇ６の種類としてフリーザーバッグ（中）を特定可能な特定情報が記録された情報コードＣ６が、棚板２ｂの前面に設けられるラベル貼付部の中央であって各種のフリーザーバッグ（中）が陳列される範囲の中央近傍に配置されている。また、商品Ｇ７の種類としてフリーザーバッグ（小）を特定可能な特定情報が記録された情報コードＣ７が、棚板２ｂの前面に設けられるラベル貼付部の左側であって各種のフリーザーバッグ（小）が陳列される範囲の中央近傍に配置されている。また、商品Ｇ８の種類としてラップフィルムを特定可能な特定情報が記録された情報コードＣ８が、棚板２ｃの前面に設けられるラベル貼付部の左側であって各種のラップフィルムが陳列される範囲の中央近傍に配置されている。また、商品Ｇ９の種類としてポリ袋を特定可能な特定情報が記録された情報コードＣ９が、棚板２ｃの前面に設けられるラベル貼付部の右側であって各種のポリ袋が陳列される範囲の中央近傍に配置されている。各情報コードＣ１〜Ｃ９は、３つの位置検出パターンを有するＱＲコード（登録商標）であって、全て同じコードサイズとなるように正方形状に形成されている。
【００２６】
また、本実施形態では、各情報コードＣ１〜Ｃ９と異なるＱＲコードを利用した情報コードとして、ガイドコードＣｇが陳列棚１に配置されている。具体的には、ガイドコードＣｇは、陳列棚１の長手方向（左右方向）をＸ方向、上下方向をＹ方向とするＸＹ平面において、図２（Ａ）に示すように、位置検出パターンが対角にない位置検出パターンＦＰ１を基準に、位置検出パターンＦＰ１と位置検出パターンＦＰ２とが並ぶ方向がＸ方向に沿い、位置検出パターンＦＰ１と位置検出パターンＦＰ３とが並ぶ方向がＹ方向に沿う方向（以下、正対方向ともいう）にて棚板２ａの右端近傍に配置されている。
【００２７】
次に、本実施形態に係るサーバ４の構成について、図面を参照して説明する。
サーバ４は、図１に示すように、主に、記憶部６、表示部７および通信部８と、これらを統括的に制御する制御部５とを備えている。制御部５は、マイコンを主体として構成されるものであり、ＣＰＵ、システムバス、入出力インタフェース等を有し、記憶部６とともに情報処理装置として機能している。記憶部６は、ＲＯＭ、ＲＡＭ、不揮発性メモリなどの公知の半導体メモリなどによって構成されている。この記憶部６には、所定のアプリケーションプログラムやデータベース等が、制御部５により利用可能に予め格納されている。表示部７は、例えば、液晶モニタ等として構成されており、その表示内容が制御部５により制御されるように構成されている。通信部８は、制御部５により制御されて、インターネット等の所定のネットワークを介して、携帯端末１０等の外部機器と通信を行うように構成されている。
【００２８】
次に、本実施形態に係る携帯端末１０の構成について、図面を参照して説明する。
携帯端末１０は、陳列棚１の陳列状態等を確認する作業者が携帯するタブレット端末やスマートフォンなどの携帯型の情報端末として構成されている。この携帯端末１０は、撮像部及び表示部等を有し、撮像した情報コードの読み取り結果を利用して陳列棚１に陳列される各商品の位置関係等を画面表示するための所定のアプリケーションプログラム（以下、位置関係検出アプリともいう）がインストールされて構成されるものである。
【００２９】
この携帯端末１０は、図３に示すように、ＣＰＵからなる制御部２１、受光センサ（例えば、Ｃ−ＭＯＳエリアセンサ、ＣＣＤエリアセンサ等）を二次元状に配置することで矩形状の撮像画像を撮像可能なカメラとして構成される撮像部２２、液晶表示器などからなる表示部２３、各種操作キーやタッチパネル等（図示略）によって構成される操作部２４、ＲＯＭ，ＲＡＭ、不揮発性メモリなどからなる記憶部２５、インターネット等の所定のネットワークを介してサーバ４等の外部機器と無線または有線にて通信可能な通信インタフェースとして構成される通信部２６などを備えている。
【００３０】
制御部２１は、撮像部２２にて撮像された情報コードの画像データに対して公知のデコード処理を行うことで、情報コードに記録された情報を読み取る読取部として機能する。また、表示部２３は、制御部２１により制御されて、その表示画面２３ａに後述する第１表示領域２３ｂ及び第２表示領域２３ｃや所定の情報を画面表示可能な表示手段として機能する。
【００３１】
このように構成される携帯端末１０は、制御部２１にてなされる位置関係検出処理により、各情報コードＣ１〜Ｃ９及びガイドコードＣｇを撮像することで得た当該各情報コードＣ１〜Ｃ９の相対位置情報（相対的なＸＹ座標情報）等と、各情報コードＣ１〜Ｃ９の読取結果とを利用して、各商品Ｇ１〜Ｇ９の位置関係を示す情報が表示部２３の表示画面２３ａに表示される。
【００３２】
特に、本実施形態では、各情報コードＣ１〜Ｃ９の撮像時において、陳列棚１に対する携帯端末１０の傾きの変化による影響を除くため、検出される情報コードの回転角度θに応じて撮像画像を回転射影変換等して各情報コードＣ１〜Ｃ９の相対位置情報を検出する。回転角度θは、図２（Ｂ）に示すように、左右方向をＸｂ方向、上下方向をＹｂ方向とする矩形状の撮像画像において、位置検出パターンＦＰ１と位置検出パターンＦＰ２とが並ぶ方向とＸｂ方向との角度として検出される。
【００３３】
例えば、図４に示すように配置された４つの情報コードＣｓ１〜Ｃｓ４の相対位置関係を検出する際、情報コードＣｓ１，Ｃｓ２，Ｃｓ３を撮像した撮像画像（図５（Ａ）参照）の撮像領域Ｐｓ１に対して、その後に情報コードＣｓ３，Ｃｓ４を撮像した撮像画像（図５（Ｂ）参照）の撮像領域Ｐｓ２が傾いている場合がある。このような撮像状態において、検出された回転角度θに応じて撮像画像を回転射影変換等することなく、撮像領域Ｐｓ２の撮像画像において情報コードＣｓ３の相対位置情報に基づいて情報コードＣｓ４の相対位置情報を検出すると、図６からわかるように、情報コードＣｓ４の相対位置情報が誤検出されてしまうからである。なお、図６では、誤検出された相対位置情報に基づく情報コードＣｓ４を実線にて図示し、正しい相対位置情報に基づく情報コードＣｓ４を、一点鎖線にて図示している。
【００３４】
このため、最初に撮像された２以上の情報コードの回転角度θを相対位置情報とともに検出して記憶部２５に記憶し、新たに情報コードが撮像されるごとに、その撮像画像を既読の情報コードの形状が所定サイズの正方形状であって当該既読の情報コードの回転角度θが記憶部２５に記憶されている回転角度θに一致するように回転射影変換等（以下、単に回転射影変換ともいう）して各情報コードの相対位置情報及び回転角度θを検出する。例えば、図５（Ｂ）の例では、既読の情報コードである情報コードＣｓ３の回転角度θが記憶部２５に記憶されている回転角度θに一致するように撮像領域Ｐｓ２の撮像画像を回転射影変換させた後の、情報コードＣｓ３を基準とする情報コードＣｓ４の相対位置情報と回転角度θとを検出して記憶部２５に記憶する。
【００３５】
そして、上述のように検出されて記憶部２５に記憶される相対位置情報及び回転角度θは、検出されたガイドコードＣｇの回転角度θ等に基づいて更新される。ここで、ガイドコードＣｇの回転角度θ等に基づいて記憶部２５に記憶される相対位置情報及び回転角度θを更新する理由について以下に説明する。
【００３６】
検出対象となる各情報コードＣ１〜Ｃ９は、陳列棚１の陳列状態の影響等によって、回転角度θがばらついて配置される場合が多い。また、最初に２以上の情報コードを撮像した撮像画像が、Ｘ方向とＸｂ方向とが一致していない状態で撮像されている場合もある。このような場合には、実際に配置されている回転角度、すなわち、位置検出パターンＦＰ１と位置検出パターンＦＰ２とが並ぶ方向と陳列棚１の長手方向（Ｘ方向）との角度を実回転角度とするとき、最初に記憶部２５に記憶されることで回転射影変換での基準となる回転角度θが実回転角度と異なってしまう。このように実回転角度と異なった回転角度θを基準に回転射影変換すると、情報コードの回転角度θが実回転角度と異なるように検出されて記憶されてしまうという問題が生じる。
【００３７】
そこで、本実施形態では、ガイドコードＣｇが撮像されると、ガイドコードＣｇの回転角度θを規定角度（本実施形態では０°）とする回転射影変換を利用して、それまでに記憶部２５に記憶される相対位置情報及び回転角度θを更新する。ガイドコードＣｇは、その実回転角度が上記規定角度となるように配置されているためであり、このガイドコードＣｇには、棚板に対する回転角度θが規定角度となるように配置された情報コードであることを示す規定配置情報が記録される。
【００３８】
具体的には、ガイドコードＣｇの回転角度θが検出された場合に、当該検出までに記憶部２５に記憶された相対位置情報及び回転角度θに応じて各情報コードが仮想配置された仮想平面を、検出されたガイドコードＣｇの回転角度θが上記規定角度となるように回転射影変換させて補正し、補正後の仮想平面に仮想配置される各情報コードの相対位置情報及び回転角度θに応じて、記憶部２５に記憶される相対位置情報及び回転角度θを更新する。
【００３９】
例えば、ガイドコードＣｇの回転角度θの検出までに、情報コードＣｓ１〜Ｃｓ４の相対位置情報及び回転角度θが記憶部２５に記憶されていると、図７（Ａ）に示すように、これらの情報に基づいて各情報コードＣｓ１〜Ｃｓ４とガイドコードＣｇとが仮想配置された仮想平面Ｓを求める。そして、図７（Ｂ）に示すように、仮想平面Ｓを、検出されたガイドコードＣｇの回転角度θが上記規定角度となるように回転射影変換させて補正する。このように補正された仮想平面Ｓでは、各情報コードＣｓ１〜Ｃｓ４の回転角度θは実回転角度に一致しているため、この補正後の仮想平面Ｓに仮想配置される各情報コードＣｓ１〜Ｃｓ４の相対位置情報及び回転角度θに応じて、記憶部２５に記憶される相対位置情報及び回転角度θを更新することができる。
【００４０】
以下、携帯端末１０を利用して陳列棚１に陳列される各商品Ｇ１〜Ｇ９の位置関係を検出する際に、携帯端末１０の制御部２１にて実行される位置関係検出処理について、図８に示すフローチャート等を参照して説明する。
【００４１】
利用者の操作部２４に対する所定の操作に応じて位置関係検出アプリが起動されることで制御部２１にて位置関係検出処理が開始されると、まず、図８のステップＳ１０１に示す撮像処理がなされ、撮像部２２にて撮像された撮像画像が取得される。続いて、ステップＳ１０３に示すデコード処理がなされ、撮像画像に含まれる情報コードを公知のデコード方法により解読するための処理がなされる。
【００４２】
次に、ステップＳ１０５に示す判定処理がなされ、１つの撮像画像に、上記特定情報が記録された情報コードが２以上含まれる複数コード撮像時であるか否かについて判定される。ここで、１つの撮像画像に、上記特定情報が記録された情報コードが含まれていないか、上記特定情報が記録された情報コードが１つ含まれる場合には、複数コード撮像時でないとして上記ステップＳ１０５にてＮｏと判定されて、上記ステップＳ１０１からの処理がなされる。
【００４３】
利用者が撮像部２２による撮像領域を陳列棚１に向けることで、１つの撮像画像に、上記特定情報が記録された情報コードが２以上含まれると、複数コード撮像時であるとして（Ｓ１０５でＹｅｓ）、ステップＳ１０７の判定処理にて、基準コードが設定されているか否かについて判定される。ここで、上記基準コードは、最初に撮像された２以上の情報コードのうちの１つに設定されるもので、今回初めて１つの撮像画像に上記特定情報が記録された情報コードが２以上含まれていると、ステップＳ１０７にてＮｏと判定される。そして、ステップＳ１０９の基準コード設定処理により、最初に撮像された２以上の情報コードのうちの１つが基準コードに設定される。例えば、図１の撮像領域Ｐ１が撮像されていることから、最初に情報コードＣ１、Ｃ５、Ｃ８が撮像されていると、撮像画像の左上側に位置することで最初に読み取られた情報コードＣ１が基準コードとして設定される。
【００４４】
次に、ステップＳ１１１に示す相対位置情報及び回転角度検出処理がなされる。この処理では、撮像される情報コードの形状に基づく射影変換等を利用して、基準コードが所定サイズの正方形状となるように基準平面に変換した各情報コードについて、基準コードのサイズ（一辺の長さ）を基準に、基準コードに対する相対位置情報が検出される。さらに、この処理では、基準平面での各情報コードの回転角度θが検出される。
【００４５】
例えば、図１に示す撮像領域Ｐ１を撮像していると、基準平面に変換した後に、基準コードに設定された情報コードＣ１のサイズを基準に、情報コードＣ５の相対位置情報が（２６，２５）として検出され、情報コードＣ８の相対位置情報が（２９，４６）として検出される。また、情報コードＣ１の回転角度θが１０°として検出され、情報コードＣ５の回転角度θが３５°として検出され、情報コードＣ８の回転角度θが−１０°として検出される。このように、基準平面に変換した後に、情報コードのサイズを基準に相対位置情報を検出するので、各情報コードに予め位置情報等を記録する必要もなく、各情報コードの相対位置情報を検出することができる。なお、相対位置情報は、情報コードのサイズを基準に、例えば、情報コードの一辺の長さを所定値とするように検出されてもよいし、「ｃｍ」の単位で検出されてもよい。なお、上記ステップＳ１１１の相対位置情報及び回転角度検出処理及び後述するステップＳ１２３の相対位置情報及び回転角度検出処理を行う制御部２１は、２以上の情報コードについて相対位置情報及び回転角度θを検出可能な「検出部」の一例に相当し得る。
【００４６】
上述のように各情報コードについて相対位置情報及び回転角度θが検出されると、ステップＳ１１３に示す記憶処理がなされ、相対位置情報及び回転角度θが検出された情報コードの特定情報等が、検出済コードの検出結果として、相対位置情報及び回転角度θとともに記憶部２５に記憶される。上述のように情報コードＣ１、Ｃ５、Ｃ８が撮像されていると、図９（Ａ）に示すように、各情報コードＣ１、Ｃ５、Ｃ８の特定情報が相対位置情報及び回転角度θとともに記憶部２５に記憶される。
【００４７】
続いて、ステップＳ１１５の判定処理にて、今回読み取った情報コードにガイドコードＣｇが含まれているか否かについて判定され、ガイドコードＣｇが含まれていない場合には（Ｓ１１５でＮｏ）、ステップＳ１１９に示す表示処理がなされる。この処理では、表示画面２３ａの第１表示領域２３ｂに、記憶部２５に記憶される各検出済コードからそれぞれ特定される商品の種類を示す種類名が、相対位置情報に応じてそれぞれ表示される。さらに、表示画面２３ａの第２表示領域２３ｃに、撮像部２２により撮像されている現在の撮像画像が表示される。
【００４８】
例えば、図９（Ａ）に示すように検出済コードの特定情報等が記憶部２５に記憶されている場合には、図１１に例示するように、第１表示領域２３ｂにおいて、情報コードＣ１の特定情報から特定される商品Ｇ１の種類名「クッキングシート」が、情報コードＣ１の中心を下端中央とするように表示される。同様に、第１表示領域２３ｂにおいて、情報コードＣ５の特定情報から特定される商品Ｇ５の種類名「フリーザーバッグ（大）」が、情報コードＣ５の中心を下端中央とするように表示され、情報コードＣ８の特定情報から特定される商品Ｇ８の種類名「ラップフィルム」が、情報コードＣ８の中心を下端中央とするように表示される。なお、第１表示領域２３ｂでは、所定の操作に応じて、拡大・縮小表示等がなされてもよい。
【００４９】
そして、所定の終了操作等がなされない場合には（Ｓ１２５でＮｏ）、上述のような表示状態にて、再度ステップＳ１０１からの処理がなされて、他の情報コードを撮像可能な状態になる。その後に撮像された１つの撮像画像に、上記特定情報が記録された情報コードが２以上含まれる複数コード撮像時であり（Ｓ１０５でＹｅｓ）、既に基準コードが設定されていると（Ｓ１０７でＹｅｓ）、ステップＳ１２１に示す判定処理がなされる。この判定処理では、記憶部２５に特定情報が記憶されていない情報コードを未検出コードとするとき、１つの撮像画像に含まれる２以上の情報コードの一部が検出済コードであって残りが未検出コードとなる状態（以下、一部未検出状態ともいう）であるか否かについて判定される。
【００５０】
ここで、１つの撮像画像に含まれる２以上の情報コードの全てが検出済コードであると、一部未検出状態でないとして（Ｓ１２１でＮｏ）、上記ステップＳ１２５の判定処理がなされる。また、１つの撮像画像に含まれる２以上の情報コードの全てが未検出コードであっても、一部未検出状態でないとして（Ｓ１２１でＮｏ）、上記ステップＳ１２５の判定処理がなされる。
【００５１】
一方、撮像部２２による撮像領域が図１の撮像領域Ｐ１から撮像領域Ｐ２となるように利用者が携帯端末１０を移動させたことから、１つの撮像画像に、未検出コードとなる情報コードＣ２と検出済コードとなる情報コードＣ５，Ｃ８とが含まれていると、一部未検出状態であるとして、上記ステップＳ１２１にてＹｅｓと判定される。
【００５２】
この場合には、ステップＳ１２３に示す相対位置情報及び回転角度検出処理がなされる。この処理では、撮像画像を、１つの検出済コードの形状が所定サイズの正方形状であって当該検出済コードの回転角度θが記憶部２５に記憶されている回転角度に一致するように回転射影変換した後に、この変換後の未検出コードについて、上記検出済コードのサイズを基準に、当該検出済コードに対する相対位置情報が検出される。さらに、この処理では、上記変換後の未検出コードの回転角度θが検出される。なお、上記ステップＳ１２１の判定処理を行う制御部２１は、「判定部」の一例に相当し得る。
【００５３】
上述のように、図１に示す撮像領域Ｐ２での撮像状態であれば、検出済コードのいずれか１つ（例えば、情報コードＣ５）を基準に回転射影変換した後に、情報コードＣ２の相対位置情報が（７１，１３）として検出されるとともに、回転角度θが５°として検出される。このように、検出済コードが所定サイズの正方形状となるように変換されるため、図１の撮像領域Ｐ１にて撮像される範囲の大きさと撮像領域Ｐ２にて撮像される範囲の大きさとが異なる場合でも、未検出コードの検出済コードに対する相対位置を正確に検出することができる。
【００５４】
上述のように未検出コードについて相対位置情報及び回転角度θが検出されると、ステップＳ１１３の記憶処理にて、相対位置情報及び回転角度θが検出された未検出コードの特定情報が、検出済コードの特定情報として、相対位置情報及び回転角度θとともに記憶部２５に追加されて記憶される。上述のように情報コードＣ２が撮像されている場合には、図９（Ｂ）に示すように、情報コードＣ２の特定情報が相対位置情報及び回転角度θとともに追加されるように記憶部２５に記憶される。
【００５５】
そして、今回読み取った情報コードにガイドコードＣｇが含まれていない場合には（Ｓ１１５でＮｏ）、ステップＳ１１９の表示処理にて、この追加された検出済コードから特定される商品の種類を示す種類名が、その相対位置情報に応じて追加されるように表示画面２３ａの第１表示領域２３ｂに表示される。
【００５６】
上述のように、図９（Ｂ）に示す検出済コードの特定情報等が記憶部２５に記憶されている場合には、図１２に例示するように、第１表示領域２３ｂにおいて、情報コードＣ２の特定情報から特定される商品Ｇ２の種類名「フライパンホイル」が、情報コードＣ２の中心を下端中央とするように追加表示される。すなわち、撮像部２２による撮像領域を移動させることで、その撮像領域の移動に応じてそれまでに撮像された各情報コードの相対位置関係がリアルタイムに検出されて、第１表示領域２３ｂに表示される。そして、所定の終了操作等がなされない場合には（Ｓ１２５でＮｏ）、上述のような表示状態にて、再度ステップＳ１０１からの処理がなされる。
【００５７】
そして、各情報コードＣ１〜Ｃ９のうち陳列棚１において最も右側に配置される情報コードＣ４を撮像するように利用者が携帯端末１０を移動させたことから、情報コードＣ４の相対位置情報及び回転角度θが検出されることで、図９（Ｃ）に示すように、全ての情報コードＣ１〜Ｃ９の特定情報が相対位置情報及び回転角度θとともに追加されるように記憶部２５に記憶される。
【００５８】
また、撮像部２２による撮像領域が図１の撮像領域Ｐ３となるまで利用者が携帯端末１０を移動させたことから、ガイドコードＣｇが読み取られると、上記ステップＳ１１５にてＹｅｓと判定されて、ステップＳ１１７の更新処理がなされる。この処理では、特定情報等が記憶されている各情報コードとガイドコードＣｇとが仮想配置された仮想平面Ｓが、ガイドコードＣｇの回転角度θを上記規定角度とする回転射影変換によって補正され、この補正後の仮想平面Ｓに仮想配置される各情報コードの相対位置情報及び回転角度θに応じて、記憶部２５に記憶される相対位置情報及び回転角度θが更新される。
【００５９】
上述のように、図９（Ｃ）に示す検出済コードの特定情報等が記憶部２５に記憶されている場合には、上述のような補正後の仮想平面Ｓに仮想配置される各情報コードの相対位置情報及び回転角度θに応じて、図１０に例示するように、記憶部２５に記憶される相対位置情報及び回転角度θが更新される。これにより、回転角度θが実回転角度に一致するように相対位置情報を更新することができる。なお、上記ステップＳ１１７の更新処理を行う制御部２１は、相対位置情報及び回転角度θをガイドコードＣｇの撮像状態に応じて更新可能な「更新部」の一例に相当し得る。また、ステップＳ１１５の判定処理では、ステップＳ１１７での更新処理が行われたか否かを示すフラグを利用して、１度更新処理が行われるとそれ以降Ｎｏと判定することで、複数回更新処理が行われないようにして処理時間を短縮してもよい。
【００６０】
このように、相対位置情報及び回転角度θが更新された後になされるステップＳ１１９の表示処理では、図１３に例示するように、それまでに読み取った全ての情報コードについて、商品の種類を示す種類名が更新された相対位置情報に応じて表示画面２３ａの第１表示領域２３ｂに表示される。そして、利用者により終了操作等がなされると（Ｓ１２５でＹｅｓ）、このように検出された各情報コードの相対位置関係等に関する情報が、陳列棚１に陳列される各商品の位置関係を把握するためのデータとして、通信部２６を介してサーバ４に送信されて（Ｓ１２７）、本位置関係検出処理が終了する。
【００６１】
サーバ４では、制御部５にてなされる管理処理において、上述のように携帯端末１０から送信された情報を通信部８を介して受信すると、この受信結果を利用して陳列棚１に陳列される各物品の位置関係を管理するための処理を行う。なお、制御部５は、「管理部」の一例に相当し、通信部８は、「受信部」の一例に相当し、通信部２６は、「送信部」の一例に相当し得る。
【００６２】
以上の説明では、撮像部２２による撮像領域が図１の撮像領域Ｐ１から撮像領域Ｐ３となるまで利用者が携帯端末１０を移動させた場合の例について説明したが、このような撮像領域の変位と異なるように携帯端末１０を移動させても、各情報コードの相対位置情報及び回転角度θを検出することができる。例えば、撮像部２２による撮像領域が図１の撮像領域Ｐ３から撮像領域Ｐ１となるまで利用者が携帯端末１０を移動させたような場合には、撮像領域Ｐ３にて撮像されることで最初に読み取られた情報コードＣ３が基準コードとして設定されて、この基準コードを基準に各未検出コード等の相対位置が検出される。
【００６３】
また、例えば、情報コードＣ８を除く各情報コードを読み取っており情報コードＣ８を読み飛ばしている場合には、図１４に示すように、表示画面２３ａの第１表示領域２３ｂには、商品Ｇ８の種類名を除く各商品の種類名が表示されることとなる。このような表示状態になるため、利用者は、情報コードＣ８を読み飛ばしていることを容易に把握することができる。このような場合には、その読み飛ばした情報コードＣ８と少なくとも他の１つの検出コードとを１つの撮像画像にて撮像することで、図１３に示すように、全ての情報コードＣ１〜Ｃ９について、商品の種類を示す種類名をその相対位置情報に応じて表示画面２３ａの第１表示領域２３ｂに表示することができる。
【００６４】
以上説明したように、本実施形態に係る携帯端末１０では、陳列棚１において、それぞれの種類の物品が陳列される位置ごとに棚板２ａ〜２ｃを利用して当該物品の種類を特定可能な特定情報が記録された情報コードＣ１〜Ｃ９がそれぞれ配置されるとともに、規定配置情報を記録したガイドコードＣｇがその回転角度θが規定角度となるように配置される。そして、記憶部２５に検出済コードが記憶されていない状態にて複数コード撮像時に、各情報コード間での相対位置情報と各情報コードの回転角度θとが検出される。また、少なくとも１つの検出済コードとともに未検出コードが含まれる一部未検出状態であると判定された撮像画像について（Ｓ１２１でＹｅｓ）、１つの検出済コードの回転角度θが検出され、検出された回転角度θが当該検出済コードに関して記憶部２５に記憶される回転角度θとなるように撮像画像を回転射影変換させた後の、未検出コードの相対位置情報と回転角度θとが検出される。そして、ガイドコードＣｇの回転角度θが検出された場合に、当該検出までに記憶部２５に記憶された相対位置情報及び回転角度θに応じて各情報コードが仮想配置された仮想平面Ｓが、検出されたガイドコードＣｇの回転角度θが規定角度となるように回転射影変換させて補正され、補正後の仮想平面Ｓに仮想配置される各情報コードの相対位置情報及び回転角度θに応じて、記憶部２５に記憶される相対位置情報及び回転角度θが更新される（Ｓ１１７）。
【００６５】
これにより、最初に撮像部２２に撮像された２以上の情報コードの相対位置情報及び回転角度θが検出された後に、撮像部２２による撮像領域を陳列棚１の長手方向に沿って移動させるように撮像することで、新たな情報コード、すなわち、未検出コードが撮像されるごとに、その未検出コードの相対位置情報及び回転角度θが検出されて検出済コードの情報として記憶部２５に記憶される。さらに、検出済コードの回転角度θが記憶部２５に記憶される回転角度θとなるように撮像画像を回転射影変換させた後に、未検出コードの相対位置情報と回転角度θとが検出されるので、各情報コードがそれぞれ異なる回転角度θで棚板に配置される場合や撮像ごとに陳列棚１に対する撮像部２２の傾きが変わる場合であっても、各情報コードの相対位置情報を正確に検出することができる。特に、ガイドコードＣｇが検出されると、このガイドコードＣｇの回転角度θが規定角度となるように記憶部２５に記憶される相対位置情報及び回転角度θが更新されるため、実際の陳列棚１に対する各情報コードの配置状態に合った回転角度θを検出できるので、各情報コードの相対位置情報をより正確に検出することができる。このため、全ての情報コードを読み取った後、記憶部２５に記憶される各検出済コードの相対位置情報に基づいて、検出済コードの特定情報から特定される種類の物品の位置関係、すなわち、陳列棚１に陳列される各物品の位置関係を検出することができる。したがって、棚板２ａ〜２ｃを利用して配置される全ての情報コードが１つの撮像画像にて撮像されないような陳列棚１に陳列される各物品であっても、各物品の位置関係を検出することができる。
【００６６】
さらに、各情報コードＣ１〜Ｃ９は、全て同じサイズに形成されるため、１つの情報コード（基準コード）のサイズを把握することで他の情報コードのサイズを把握する必要がないため、相対位置関係の検出に関して検出処理負荷を軽減することができる。
【００６７】
特に、表示部２３の表示画面２３ａでは、記憶部２５に記憶される２以上の検出済コードからそれぞれ特定される物品の種類を示す情報が、相対位置情報に応じて第１表示領域２３ｂにそれぞれ表示され、撮像部２２により撮像されている現在の撮像画像が、第２表示領域２３ｃに表示される。これにより、第２表示領域２３ｃに表示される現在の撮像画像を見ながらその撮像領域を陳列棚１の長手方向に移動させると、撮像領域となった順に、陳列棚１に陳列される物品の種類を示す情報がその相対位置に対応するよう第１表示領域２３ｂに追加されて表示される（図１１〜図１３参照）。このため、各物品の位置関係の検出状況を、逐次視覚的に把握することができる。
【００６８】
なお、陳列棚１の各棚板２ａ〜２ｃに配置される情報コードＣ１〜Ｃ９には、特定情報に加えて、当該情報コードのサイズに関する情報が記録されてもよい。このような構成では、相対位置関係を検出するための情報コードのサイズを、その情報コードを読み取ることで正確に取得できるので、各物品の位置関係を精度良く検出することができる。このような構成であれば、各情報コードＣ１〜Ｃ９は、全て同じコードサイズで形成されることに限らず、一部が異なるサイズで形成されてもよい。
【００６９】
［第２実施形態］
次に、第２実施形態に係る位置関係検出装置及び位置関係検出システムについて、図面を参照して説明する。
本第２実施形態では、陳列棚１の長手方向（Ｘ方向）における両端を示す２つの情報コードをさらに追加して配置する点が、上記第１実施形態と主に異なる。したがって、第１実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
【００７０】
本実施形態では、図１５に例示するように、陳列棚１の長手方向一端に位置する棚板２ａの部位には、当該長手方向一端を示す一端側情報が記録された情報コードとして一端側コードＣａが配置されている。また、陳列棚１の長手方向他端に位置する棚板２ｃの部位には、当該長手方向他端を示す他端側情報が記録された情報コードとして他端側コードＣｂが配置されている。また、一端側情報及び他端側情報には、陳列棚１を特定するための棚情報が含まれている。なお、一端側情報及び他端側情報には、情報コードＣ１〜Ｃ９に記憶されるような特定情報が記録されてないため、一端側コードＣａ及び他端側コードＣｂの他の情報コードＣ１〜Ｃ９に対する相対位置関係が検出されることもない。
【００７１】
そして、制御部２１にてなされる位置関係検出処理では、図１６に示すフローチャートのように、ステップＳ１０３のデコード処理がなされた際、一端側コードＣａ及び他端側コードＣｂの少なくとも一方の端側コードがデコードされていると（Ｓ１０４でＹｅｓ）、そのデコードされた端側コード（一端側コードＣａ又は他端側コードＣｂ）が記憶部２５に記憶される（Ｓ１０４ａ）。
【００７２】
そして、ステップＳ１１９ａに示す表示処理では、第３表示領域２３ｄとして、一端側コードＣａ又は他端側コードＣｂから読み取った棚情報が表示される。例えば、棚情報として「棚１」が一端側コードＣａ及び他端側コードＣｂに記録されている場合には、図１７に示すように、第３表示領域２３ｄに「棚１」が表示される。
【００７３】
そして、ステップＳ１２５ａの判定処理では、一端側コードＣａ及び他端側コードＣｂの双方が記憶部２５に記憶されているか否かについて判定される。ここで、一端側コードＣａ及び他端側コードＣｂの双方が記憶部２５に記憶されていないか、一方のみが記憶部２５に記憶されている場合には、ステップＳ１２５ａにてＮｏと判定されて、全ての情報コードの相対位置関係が検出されていないとして、上記ステップＳ１０１からの処理がなされる。一方、一端側コードＣａ及び他端側コードＣｂの双方が記憶部２５に記憶されていると、陳列棚１に設けられる各情報コードＣ１〜Ｃ９が読み取られることで全ての情報コードの相対位置関係が検出されているとして、ステップＳ１２５ａにてＹｅｓと判定されて、上記ステップＳ１２７の処理がなされる。
【００７４】
以上説明したように、本実施形態に係る携帯端末１０では、陳列棚１の長手方向一端に位置する棚板２ａの部位には、一端側情報が記録された一端側コードＣａが配置され、陳列棚１の長手方向他端に位置する棚板２ｃの部位には、他端側情報が記録された他端側コードＣｂが配置される。そして、記憶部２５には、読み取られた一端側情報や他端側情報が記憶される（Ｓ１０４ａ）。これにより、記憶部２５に一端側情報及び他端側情報の双方が記憶されていることで、陳列棚１の長手方向一端から他端まで撮像領域を移動させた状態であると判断でき、陳列棚１に配置される全ての情報コードＣ１〜Ｃ９が読み取られたことを容易に推定することができる。
【００７５】
特に、一端側情報及び他端側情報には、陳列棚１を特定する棚情報が含まれるため、陳列棚の長手方向一端から他端までを把握できるだけでなく、第３表示領域２３ｄでの表示を見ることで、どの陳列棚の物品の位置関係を検出しているかを容易に把握することができる。
【００７６】
［第３実施形態］
次に、第３実施形態に係る位置関係検出装置及び位置関係検出システムについて、図面を参照して説明する。
本第３実施形態では、陳列棚に配置されるそれぞれの情報コードのサイズ（実寸法）を取得していない状態で各情報コードの実際の距離等を算出する点が、上記第２実施形態と主に異なる。したがって、第２実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
【００７７】
本実施形態では、陳列棚に配置されるそれぞれの情報コードのサイズを直接取得していない状態であっても、上述した基準コードの撮像画像での基準コードサイズ（撮像画像に占める基準コードの領域の大きさ）を基準に、残りの情報コードの基準コードに対するサイズ比を算出するとともに、各情報コードの相対位置を検出する。
【００７８】
また、本実施形態では、一端側コードＣａ及び他端側コードＣｂも他の情報コードと同様に相対位置関係等の検出対象となっており、撮像画像だけで実際の距離や寸法を正確に算出するため、一端側情報及び他端側情報には、棚情報の一部として陳列棚の長手方向（Ｘ方向）の長さに関する情報が含まれている。この理由について以下に説明する。
【００７９】
陳列棚のどの段にどのような商品が陳列しているかを把握する目的であれば、実際の各情報コード間の距離や寸法を把握する必要はないが、陳列棚に陳列される商品がどの程度のエリアを利用しているか等、詳細な情報を得たい場合には実際の各情報コード間の距離や寸法を把握する必要がある。しかしながら、陳列棚に配置されるそれぞれの情報コードのサイズを直接取得していない状態では、記憶部２５に記憶される複数の相対位置情報から各情報コード間での相対位置関係を比率的に把握できても、撮像画像だけで実際の距離や寸法を正確に算出することは困難である。また、例えば、各情報コードにその情報コードのサイズに関する情報を追加して記録すると、記録する情報量によってコードサイズも異なるため、商品ごとにサイズを入力する必要があり、手間がかかるという問題もある。また、全ての情報コードのコードサイズを同じサイズにすると、記録する情報量がばらつく場合には、より多い情報量が記録される情報コードにあわせてコードサイズを統一する必要があるため、情報コードをなるべく小さくしたいという要望に対応できない場合がある。
【００８０】
一方で、一端側コードＣａと他端側コードＣｂとの間のＸ方向の実際の距離は、一端側コードＣａ又は他端側コードＣｂの読み取りにより得られた陳列棚のＸ方向の長さに一致するとみなすことができる。このため、実際の距離を把握できた一端側コードＣａと他端側コードＣｂとの間での相対位置関係を基準とすることで、他の相対位置関係に基づく各情報コード間の実際の距離を算出することができる。
【００８１】
以下、本実施形態における位置関係検出処理について、図１８に例示するような、３つの情報コードＣ１１〜Ｃ１３と一端側コードＣａ及び他端側コードＣｂとが配置された陳列棚１ａを例に、図１９に示すフローチャートを参照して説明する。なお、本実施形態では、説明の便宜上、各情報コードＣ１１〜Ｃ１３と一端側コードＣａ及び他端側コードＣｂとは、正対方向となるように配置されており、Ｘ方向とＸｂ方向とが一致するように各情報コードが撮像されているものとする。また、情報コードＣ１１〜Ｃ１３と一端側コードＣａ及び他端側コードＣｂとは、正方形状のＱＲコードとして形成されており、一端側コードＣａ及び他端側コードＣｂには、上述した棚情報に加えて、陳列棚１ａのＸ手方向の長さに関する情報として、陳列棚１ａのＸ方向における実際の長さを示す数値（例えば、１００ｃｍ）が記録されている。このため、図１８に示すように、一端側コードＣａは、その一端側の外縁が陳列棚１ａの一端側の外縁に一致するように配置され、他端側コードＣｂは、その他端側の外縁が陳列棚１ａの他端側の外縁に一致するように配置されている。
【００８２】
制御部２１にて位置関係検出処理が開始され、１つの撮像画像に、上記特定情報が記録された情報コードＣ１１〜Ｃ１３、一端側コードＣａ及び他端側コードＣｂのいずれか２つ以上が含まれる複数コード撮像時であると（図１９のＳ１０５でＹｅｓ）、基準コードが設定されていない場合には（Ｓ１０７でＮｏ）、撮像された２以上の情報コードのうちの１つが基準コードに設定される（Ｓ１０９）。その際、一端側コードＣａが撮像されてそのデコードが成功していると（Ｓ１０４でＹｅｓ）、一端側コードＣａから読み取った一端側情報が記憶部２５に記憶される（Ｓ１０４ａ）。また、例えば、図１８の撮像領域Ｐ１１が撮像されていることから、図２０（Ａ）に例示するように、最初に一端側コードＣａ及び情報コードＣ１１が撮像されていると、情報コードＣ１１が基準コードとして設定される。
【００８３】
続いて、ステップＳ１１１ａにて相対位置情報及び回転角度等検出処理がなされる。この処理では、上述した基準コード（情報コードＣ１）に対する相対位置情報及び各情報コードの回転角度θの検出に加えて、基準コードのサイズを基準に、具体的には、基準コードの一辺の長さをＸとして、基準コードの中心から一端側コードＣａの中心までのＸｂ方向（Ｘ方向）の長さと、一端側コードＣａの基準コードに対するサイズ比とが算出される。図２０（Ａ）の例では、基準コードの中心から一端側コードＣａの中心までのＸｂ方向（Ｘ方向）の長さが３．７Ｘとして算出されるとともに、一端側コードＣａの基準コードに対するサイズ比が１．２として算出される。なお、本実施形態では、最初に撮像された２以上の情報コードのうち一端側コードＣａ及び他端側コードＣｂを除く情報コードが基準コードに設定されるが、これに限らず、一端側コードＣａ及び他端側コードＣｂのいずれか一方が基準コードに設定されてもよい。
【００８４】
そして、その後に撮像された１つの撮像画像に、上記特定情報が記録された情報コードが２以上含まれる複数コード撮像時であり（Ｓ１０５でＹｅｓ）、既に基準コードが設定され（Ｓ１０７でＹｅｓ）、一部未検出状態であると（Ｓ１２１でＹｅｓ）、ステップＳ１２３ａにて相対位置情報及び回転角度等検出処理がなされる。この処理では、上述した未検出コードの相対位置情報及び回転角度θの検出に加えて、基準コード又は検出済コードのサイズ比を基準に、基準コードの中心又は検出済コードの中心から未検出コードの中心までのＸｂ方向（Ｘ方向）の長さと、未検出コードの基準コードに対するサイズ比とが算出される。例えば、撮像部２２による撮像領域が図１２の撮像領域Ｐ１１から撮像領域Ｐ１２に変わることで情報コードＣ１２が新たに撮像されると、図２０（Ｂ）に例示するように、基準コードである情報コードＣ１１の中心から未検出コードである情報コードＣ１２の中心までのＸｂ方向（Ｘ方向）の長さが５．７Ｘとして算出されるとともに、情報コードＣ１２の基準コードに対するサイズ比が０．８として算出される。
【００８５】
以降、同様に、撮像部２２による撮像領域が図１８の撮像領域Ｐ１２から撮像領域Ｐ１３に変わることで情報コードＣ１３が新たに撮像されると、一部未検出状態であると判定される（Ｓ１２１でＹｅｓ）。この場合には、図２１（Ａ）に例示するように、検出済コードである情報コードＣ１２の中心から未検出コードである情報コードＣ１３の中心までのＸｂ方向（Ｘ方向）の長さが５．４Ｘとして算出されるとともに、情報コードＣ１３の基準コードに対するサイズ比が１．２として算出される（Ｓ１２３ａ）。
【００８６】
さらに、撮像部２２による撮像領域が図１８の撮像領域Ｐ１３から撮像領域Ｐ１４に変わることで他端側コードＣｂが新たに撮像されてデコードされると、他端側コードＣｂから読み取った他端側情報が記憶部２５に記憶されて（Ｓ１０４ａ）、一部未検出状態であると判定される（Ｓ１１７でＹｅｓ）。この場合には、図２１（Ｂ）に例示するように、検出済コードである情報コードＣ１３の中心から他端側コードＣｂの中心までのＸｂ方向（Ｘ方向）の長さが４．０Ｘとして算出されるとともに、他端側コードＣｂの基準コードに対するサイズ比が１．２として算出される（Ｓ１２３ａ）。
【００８７】
そして、一端側コードＣａ及び他端側コードＣｂが読み取られるために一端側情報及び他端側情報の双方が記憶部２５に記憶されていると（Ｓ１２５ａでＹｅｓ）、ステップＳ１２６に示す実距離等算出処理がなされる。この処理では、一端側情報又は他端側情報に含まれる陳列棚のＸ方向の長さに関する情報に基づいて、読み取った各情報コード間の実際の距離やサイズが算出される。
【００８８】
具体的には、図２０及び図２１のように基準コードに対する各情報コード間の比率的な長さやサイズ比が算出されると、図２０及び図２１の各撮像画像を基準コードサイズを基準に基準平面に変換した図２２からわかるように、陳列棚１ａ全体にて、各情報コード間での相対位置関係を比率的に把握することができる。さらに、基準コードのサイズＸを基準として一端側コードＣａから他端側コードＣｂまでの比率的な長さも算出でき、この比率的な長さは、一端側情報又は他端側情報に含まれる陳列棚のＸ方向における実際の長さに一致するとして、各情報コード間の実際の距離や各情報コードの実際の大きさを算出することができる。
【００８９】
上述したように、陳列棚１ａのＸ方向における実際の長さを示す数値として１００ｃｍが一端側コードＣａ及び他端側コードＣｂに記録されていると、一端側コードＣａから他端側コードＣｂまでの比率的な長さが２０Ｘであることから、基準コードの一辺の長さＸが５ｃｍであると算出することができる。このように基準コードの一辺の長さＸが算出されることで、他の情報コード間の実際の距離や各情報コードの実際の大きさを算出することができる。例えば、情報コードＣ１１の中心から情報コードＣ１２の中心までの実際の距離は、比率的な長さが５．７Ｘであることから、２８．５ｃｍであると算出することができる。なお、上記ステップＳ１２２の実距離等算出処理を行う制御部２１は、「算出部」の一例に相当し得る。
【００９０】
その後、このように算出（検出）された各情報コードの相対位置関係等に関する情報が、陳列棚１ａに陳列される各商品の位置関係を把握するためのデータとして、通信部２６を介してサーバ４に送信されて（Ｓ１２７）、本位置関係検出処理が終了する。
【００９１】
以上説明したように、本実施形態に係る携帯端末１０では、制御部２１にてなされる位置関係検出処理において、記憶部２５に検出済コードが記憶されていない状態にて複数コード撮像時に、撮像された２以上の情報コードについて、いずれか１つの情報コードの基準コードサイズが検出され、各情報コード間での相対位置情報と各情報コードの回転角度θとが検出されるとともに、残りの情報コードの基準コードサイズに対するサイズ比が検出される。また、位置関係検出処理では、一部未検出状態であると判定された撮像画像について、１つの検出済コードの回転角度θが検出され、検出された回転角度θが当該検出済コードに関して記憶部２５に記憶される回転角度θとなるように撮像画像を回転射影変換させた後の、未検出コードの相対位置情報と回転角度θとが検出されるとともに、未検出コードの基準コードサイズに対するサイズ比が検出される。
【００９２】
これにより、陳列棚に配置されるそれぞれの情報コードのサイズ（実寸法）を把握していない場合でも、最初に回転角度θを検出した情報コードの画像サイズである基準コードサイズを基準に、残りの情報コードのサイズ比を検出できるので、サイズ比をも考慮した各情報コード間での相対位置関係を検出することができる。
【００９３】
特に、陳列棚の長手方向一端に位置する棚板の部位には、当該長手方向一端を示す一端側情報が記録された情報コードとして一端側コードＣａが配置され、陳列棚の長手方向他端に位置する棚板の部位には、当該長手方向他端を示す他端側情報が記録された情報コードとして他端側コードＣｂが配置され、一端側情報及び他端側情報の少なくともいずれか一方には、陳列棚のＸ方向の長さに関する情報が含まれる。そして、ステップＳ１２６の実距離等算出処理にて、一端側コードＣａと他端側コードＣｂとの間のＸ方向の実際の距離が読み取りにより得られた陳列棚のＸ方向の長さに一致することを前提に、複数の相対位置情報に基づいて各情報コード間の実際の距離が算出される。
【００９４】
このように、実際の距離を把握可能な一端側コードＣａと他端側コードＣｂとの間での相対位置関係を基準とすることで、他の相対位置関係に基づく各情報コード間の実際の距離を算出することができる。
【００９５】
なお、上記ステップＳ１２６の実距離等算出処理では、各情報コードに関してＸ方向の相対位置関係について検出しているが、これに限らず、さらに、Ｙ方向（図２２等の上下方向：短手方向）の相対位置関係についても検出することができる。この場合、一端側情報及び他端側情報の少なくともいずれか一方に、陳列棚のＹ方向の実際の長さ（一端側コードＣａと他端側コードＣｂとのＹ方向の実際の長さ）に関する情報を含めることで、上記実距離等算出処理における算出精度を高めることができる。
【００９６】
また、陳列棚のＸ方向の実際の長さは、その数値が一端側コードＣａ及び他端側コードＣｂに記録されることで取得されることに限らず、一端側コードＣａ及び他端側コードＣｂに記録される棚情報を利用して取得されてもよい。すなわち、携帯端末１０は、棚情報とその陳列棚のＸ方向の長さとが関連付けられて記録されるデータベースを利用して、一端側コードＣａ又は他端側コードＣｂから読み取った棚情報に基づいてその陳列棚のＸ方向の長さを取得することができる。この場合、陳列棚を特定するための棚情報は、陳列棚のＸ方向の長さに関する情報の一例に相当し得る。
【００９７】
［第４実施形態］
次に、第４実施形態に係る位置関係検出装置及び位置関係検出システムについて、図面を参照して説明する。
本第４実施形態では、携帯端末１０にてなされる位置関係検出処理の主要部をサーバ４にて行い、携帯端末１０は撮像画像を単にサーバ４に送信する点が、上記第１実施形態と主に異なる。
【００９８】
すなわち、本実施形態に係る位置関係検出システム３は、撮像部２２を有する携帯端末１０と、撮像部２２により撮像された撮像画像を利用して複数種類の物品の位置関係を検出する処理を行うサーバ４とを備えるように構成される。そして、携帯端末１０の通信部２６は、撮像部２２の撮像画像を含めた情報を所定操作のタイミング等にてサーバ４に送信する送信部として機能する。
【００９９】
このため、サーバ４は、上述した位置関係検出処理と同等の処理を実行するため、送信部により送信された情報を受信する受信部として機能する通信部８と、通信部８により受信された撮像画像に含まれる情報コードを読み取る読取部として機能する制御部５と、通信部８により受信された１つの撮像画像に読取部にて特定情報が読み取られる情報コードが２以上含まれる複数コード撮像時に、当該２以上の情報コードについて、いずれか１つの情報コードの回転角度を検出し、検出された回転角度が規定角度となるように撮像画像を回転射影変換させた後の、各情報コード間での相対位置に関する相対位置情報と各情報コードの回転角度とを検出可能な検出部として機能する制御部５と、検出部により相対位置情報及び回転角度が検出された情報コードの特定情報が、検出済コードの情報として検出部による検出結果とともに記憶される記憶部６と、記憶部６に記憶される相対位置情報及び回転角度を、通信部８により受信された撮像画像に含まれるガイドコードの撮像状態に応じて更新可能な更新部として機能する制御部５と、複数コード撮像時に、少なくとも１つの検出済コードとともに、記憶部６に特定情報が記憶されていない情報コードが未検出コードとして含まれる一部未検出状態であるか否かについて判定する判定部として機能する制御部５とを備えるように構成される。そして、検出部は、記憶部６に検出済コードが記憶されていない状態にて複数コード撮像時に、撮像された２以上の情報コードについて、各情報コード間での相対位置情報と各情報コードの回転角度とを検出し、判定部により一部未検出状態であると判定された撮像画像について、１つの検出済コードの回転角度を検出し、検出された回転角度が当該検出済コードに関して記憶部６に記憶される回転角度となるように撮像画像を回転射影変換させた後の、未検出コードの相対位置情報と回転角度とを検出する。また、更新部は、検出部によりガイドコードの回転角度が検出された場合に、当該検出までに記憶部６に記憶された相対位置情報及び回転角度に応じて各情報コードが仮想配置された仮想平面を、検出されたガイドコードの回転角度が規定角度となるように回転射影変換させて補正し、補正後の仮想平面に仮想配置される各情報コードの相対位置情報及び回転角度に応じて、記憶部６に記憶される相対位置情報及び回転角度を更新する。
【０１００】
このようにしても、上記第１実施形態と同様の効果を奏する位置関係検出システム３を実現することができる。また、サーバ４と通信可能な他の端末は、記憶部６に記憶される相対位置情報及び回転角度等をサーバ４から取得することで、陳列棚１に陳列される各物品の位置関係等を管理するための処理を行うことができる。
【０１０１】
なお、本発明は上記各実施形態等に限定されるものではなく、例えば、以下のように具体化してもよい。
（１）本発明は、上述のように陳列された商品Ｇ１〜Ｇ９の相対位置関係を情報コードを用いて検出する携帯端末（位置関係検出装置）に適用されることに限らず、食品や雑貨等、他の種別の物品について陳列された状態での相対位置関係を情報コードを用いて検出する携帯端末（位置関係検出装置）に適用されてもよい。また、本発明は、上述したような位置関係検出装置と各情報コードが設置された陳列棚とを備える位置関係検出システムにも適用することができる。
【０１０２】
（２）ガイドコードＣｇは、棚板２ａの右端近傍に配置されることに限らず、例えば、棚板２ｂ，２ｃの右端近傍や棚板２ａ〜２ｃの左端近傍に配置されてもよいし、棚板２ａ〜２ｃの長手方向中央近傍に配置されてもよい。また、ガイドコードＣｇは、陳列棚１に対して１つ配置されることにかぎらず、複数配置されてもよい。また、ガイドコードＣｇは、棚板に対して正対方向となるように配置されることに限らず、棚板に対する回転角度θが０°と異なるように予め設定される規定角度（例えば、４５°）となるように配置されてもよい。
【０１０３】
（３）上記位置関係検出処理では、撮像画像の左上側に位置することで最初に読み取られた情報コードが基準コードとして設定されることに限らず、撮像されたいずれかの任意の情報コードが基準コードとして設定されてもよい。また、撮像領域を移動させることで基準コードが撮像されなくなると、その時点で撮像されている複数の情報コードの１つを基準コードとして新たに設定し直してもよい。この場合、それまでに算出されて記憶部２５に記憶される各相対位置情報を、新たに設定した基準コードに応じて更新することができる。
【０１０４】
（４）表示画面２３ａでは、第１表示領域２３ｂ及び第２表示領域２３ｃの双方が表示されることに限らず、例えば、画面サイズが小さな携帯端末では、第２表示領域２３ｃを表示しないことで第１表示領域２３ｂが広く表示されてもよい。
【０１０５】
（５）上記位置関係検出処理における基準平面への変換処理では、例えば、１つの情報コードが正対方向でかつ実際のコードサイズと同じサイズになるような変換行列を計算し、行列で他も変換すれば正対方向、かつ、サイズが実物と同じ画像に変換する処理を行ってもよい。これを他の画像でも同様に行えば、それぞれの画像における位置情報が等価となるため、簡単に連結することができる。他にも、撮像部２２からの位置を推定するような一般的な手法でそれぞれの情報コードの位置を把握するような手法でもよい。また、SURFやSIFTのような特徴量でマッチングする手法や、情報コードに記録される情報のマッチングによって連結の基準となる位置を検出してもよい。
【０１０６】
（６）陳列棚１は、３つの棚板２ａ〜２ｃにより仕切られるように構成されることに限らず、例えば、２つの棚板により仕切られるように構成されてもよいし、４つ以上の棚板により仕切られるように構成されてもよい。また、情報コードは、陳列棚１を上下に仕切る複数の棚板を利用して配置されることに限らず、例えば、陳列棚１を左右に仕切る棚板や側板を構成する棚板を利用して配置されてもよい。
【０１０７】
（７）本発明は、左右方向に長い陳列棚に陳列される複数種類の物品の位置関係を検出する位置関係検出装置に適用されることに限らず、上下方向に長い陳列棚に陳列される複数種類の物品の位置関係を検出する位置関係検出装置に適用されてもよいし、上下方向にも長く左右方向にも長い陳列棚に陳列される複数種類の物品の位置関係を検出する位置関係検出装置に適用されてもよい。
【０１０８】
（８）各情報コードＣ１〜Ｃ９に記録される特定情報は、対応する商品の種類名そのものであってもよいし、予め用意される対応表から対応する商品の種類名を特定するための固有の番号等であってもよい。
【０１０９】
（９）陳列棚１に設けられる各情報コードは、ＱＲコードとして形成されることに限らず、回転角度θを検出可能な情報コード、例えば、バーコード等の一次元コードやデータマトリックスコード、マキシコード等の二次元コードなどの他のコード種別の情報コードとして形成されてもよい。また、各情報コードは、上述したようにコードのサイズに関する情報が記録されることを前提に、一部の情報コードのコード種別が異なるように形成されてもよい。
【符号の説明】
【０１１０】
１，１ａ…陳列棚
２ａ〜２ｃ…棚板
３…位置関係検出システム
４…サーバ
５…制御部（管理部）
６…記憶部
８…通信部（受信部）
１０…携帯端末（位置関係検出装置）
２１…制御部（読取部，検出部，更新部，判定部，算出部）
２２…撮像部
２３…表示部
２３ａ…表示画面
２３ｂ…第１表示領域
２３ｃ…第２表示領域
２５…記憶部
２６…通信部（送信部）
Ｃ１〜Ｃ９，Ｃ１１〜Ｃ１３，Ｃｓ１〜Ｃｓ４…情報コード
Ｃａ…一端側コード
Ｃｂ…他端側コード
Ｃｇ…ガイドコード
Ｇ１〜Ｇ９…商品（物品）
θ…回転角度
【図１】
2020102072.tif 000003
【図２】
2020102072.tif 000004
【図３】
2020102072.tif 000005
【図４】
2020102072.tif 000006
【図５】
2020102072.tif 000007
【図６】
2020102072.tif 000008
【図７】
2020102072.tif 000009
【図８】
2020102072.tif 000010
【図９】
2020102072.tif 000011
【図１０】
2020102072.tif 000012
【図１１】
2020102072.tif 000013
【図１２】
2020102072.tif 000014
【図１３】
2020102072.tif 000015
【図１４】
2020102072.tif 000016
【図１５】
2020102072.tif 000017
【図１６】
2020102072.tif 000018
【図１７】
2020102072.tif 000019
【図１８】
2020102072.tif 000020
【図１９】
2020102072.tif 000021
【図２０】
2020102072.tif 000022
【図２１】
2020102072.tif 000023
【図２２】
2020102072.tif 000024