(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024179621
(43)【公開日】2024-12-26
(54)【発明の名称】測位プログラム、測位方法、および情報処理装置
(51)【国際特許分類】
G08G 1/00 20060101AFI20241219BHJP
G06Q 30/06 20230101ALI20241219BHJP
【FI】
G08G1/00 C
G06Q30/06
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023098607
(22)【出願日】2023-06-15
(71)【出願人】
【識別番号】598057291
【氏名又は名称】エフサステクノロジーズ株式会社
(74)【代理人】
【識別番号】110003889
【氏名又は名称】弁理士法人酒井総合特許事務所
(72)【発明者】
【氏名】花田 満
(72)【発明者】
【氏名】川▲崎▼ 康平
【テーマコード(参考)】
5H181
5L030
5L049
【Fターム(参考)】
5H181AA21
5H181BB04
5H181CC04
5H181CC12
5H181DD02
5L030BB72
5L049BB72
(57)【要約】
【課題】対象領域での人物の位置を精度よく測定すること。
【解決手段】情報処理装置101は、端末102からのビーコン信号に基づき対象領域100への端末102を所持した人物105の進入を検知したことに応じて、第1のカメラ103aによって人物105が対象領域100に進入した際に撮影された画像120から、人物105の特徴量を抽出する。情報処理装置101は、端末102からのビーコン信号に含まれる端末識別子と対応付けて、抽出した特徴量を記憶部110に登録する。情報処理装置101は、複数のカメラ103のうちのカメラ103bの撮影範囲内への対象人物106の流入を検知したことに応じて、記憶部110を参照して、カメラ103bの画像130から抽出した対象人物106の特徴量に対応する第1の端末識別子を特定する。情報処理装置101は、特定した第1の端末識別子と、算出した対象人物106の位置とを対応付ける。
【選択図】
図1
【特許請求の範囲】
【請求項1】
端末からのビーコン信号に基づき対象領域への当該端末を所持した人物の進入を検知したことに応じて、前記対象領域内に設置された複数のカメラのうちの第1のカメラによって前記人物が前記対象領域に進入した際に撮影された画像から、前記人物の特徴量を抽出し、前記ビーコン信号に含まれる前記端末を識別する端末識別子と対応付けて、抽出した前記特徴量を記憶部に登録し、
前記複数のカメラのうちのいずれかのカメラの撮影範囲内への対象人物の流入を検知したことに応じて、前記記憶部を参照して、前記いずれかのカメラによって撮影された画像から抽出した前記対象人物の特徴量に基づいて、前記対象人物の特徴量に対応する第1の端末識別子を特定し、
前記いずれかのカメラによって撮像される画像に基づいて、前記対象人物の位置を算出し、特定した前記第1の端末識別子と、算出した前記対象人物の位置とを対応付ける、
処理をコンピュータに実行させることを特徴とする測位プログラム。
【請求項2】
前記対象領域内に設置された複数のビーコン通信機によって受信される、前記端末からのビーコン信号に基づいて、前記端末の位置を算出し、
前記ビーコン信号に含まれる前記端末を識別する端末識別子と対応付けて、算出した前記端末の位置を前記記憶部に記録する、
処理を前記コンピュータに実行させ、
前記第1の端末識別子を特定する処理は、
前記いずれかのカメラの撮影範囲内への対象人物の流入を検知した場合、前記記憶部を参照して、前記いずれかのカメラの所定範囲内に存在する端末の端末識別子に対応する特徴量を取得し、
前記いずれかのカメラによって撮影された画像から抽出した前記対象人物の特徴量と、取得した前記特徴量とに基づいて、前記第1の端末識別子を特定する、
ことを特徴とする請求項1に記載の測位プログラム。
【請求項3】
前記算出する処理は、
前記いずれかのカメラの撮影範囲からの前記対象人物の流出を検知するまで、前記いずれかのカメラによって撮像される画像に基づいて、前記対象人物の位置を算出する、ことを特徴とする請求項1に記載の測位プログラム。
【請求項4】
前記第1のカメラは、前記対象領域の入口付近に設置されたカメラである、ことを特徴とする請求項1~3のいずれか一つに記載の測位プログラム。
【請求項5】
端末からのビーコン信号に基づき対象領域への当該端末を所持した人物の進入を検知したことに応じて、前記対象領域内に設置された複数のカメラのうちの第1のカメラによって前記人物が前記対象領域に進入した際に撮影された画像から、前記人物の特徴量を抽出し、前記ビーコン信号に含まれる前記端末を識別する端末識別子と対応付けて、抽出した前記特徴量を記憶部に登録し、
前記複数のカメラのうちのいずれかのカメラの撮影範囲内への対象人物の流入を検知したことに応じて、前記記憶部を参照して、前記いずれかのカメラによって撮影された画像から抽出した前記対象人物の特徴量に基づいて、前記対象人物の特徴量に対応する第1の端末識別子を特定し、
前記いずれかのカメラによって撮像される画像に基づいて、前記対象人物の位置を算出し、特定した前記第1の端末識別子と、算出した前記対象人物の位置とを対応付ける、
処理をコンピュータが実行することを特徴とする測位方法。
【請求項6】
端末からのビーコン信号に基づき対象領域への当該端末を所持した人物の進入を検知したことに応じて、前記対象領域内に設置された複数のカメラのうちの第1のカメラによって前記人物が前記対象領域に進入した際に撮影された画像から、前記人物の特徴量を抽出し、前記ビーコン信号に含まれる前記端末を識別する端末識別子と対応付けて、抽出した前記特徴量を記憶部に登録し、
前記複数のカメラのうちのいずれかのカメラの撮影範囲内への対象人物の流入を検知したことに応じて、前記記憶部を参照して、前記いずれかのカメラによって撮影された画像から抽出した前記対象人物の特徴量に基づいて、前記対象人物の特徴量に対応する第1の端末識別子を特定し、
前記いずれかのカメラによって撮像される画像に基づいて、前記対象人物の位置を算出し、特定した前記第1の端末識別子と、算出した前記対象人物の位置とを対応付ける、
制御部を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、測位プログラム、測位方法、および情報処理装置に関する。
【背景技術】
【0002】
従来、スーパーマーケットなどのリテール業界では、売り上げを少しでも多くすることが利益につながる。売り上げを多くするためには、集客の強化と客単価を増やすことが重要である。集客の強化については、魅力的な品揃えや特売などが考えられる。一方、客単価の向上については、顧客ニーズを的確に判断し、その場で顧客にあと一品の購入を促すような施策が求められる。例えば、店内での顧客の購買行動を把握して、顧客がそのときに欲している商品のレコメンド情報をタイムリーに提供したり、クーポンを提供したりすることが考えられる。
【0003】
先行技術としては、端末により検知される情報から取得される移動情報と、端末を携帯するユーザの撮像画像から取得される1以上の人物の移動情報との照合、および、端末から取得されるユーザの状態情報と、撮像画像から取得される1以上の人物の状態情報との照合に基づいて、撮像画像に写る人物とユーザとを対応付ける制御を行うものがある。
【0004】
また、端末の位置を表す位置情報と端末を一意に識別可能な識別情報とを含む行動情報を取得し、所定の場所に設けられた撮像装置によって撮像された人物の特徴量を含む特徴情報を生成し、行動情報と特徴情報とが所定の条件を満たした場合に、所定の場所に端末の所有者が移動したと推定する推定情報を生成する技術がある。また、位置を示す第1の情報を取得し、当該位置から所定の範囲に存在する対象を第1の情報を用いて特定し、特定した対象に関する第2の情報を、当該対象の移動履歴を示す第3の情報を用いて生成する技術がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】国際公開第2021/240889号
【特許文献2】特開2020-4226号公報
【特許文献3】特開2018-147175号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来技術では、スーパーマーケットの店舗などでの顧客の正確な位置を測定することが難しい。
【0007】
一つの側面では、本発明は、対象領域での人物の位置を精度よく測定することを目的とする。
【課題を解決するための手段】
【0008】
1つの実施態様では、端末からのビーコン信号に基づき対象領域への当該端末を所持した人物の進入を検知したことに応じて、前記対象領域内に設置された複数のカメラのうちの第1のカメラによって前記人物が前記対象領域に進入した際に撮影された画像から、前記人物の特徴量を抽出し、前記ビーコン信号に含まれる前記端末を識別する端末識別子と対応付けて、抽出した前記特徴量を記憶部に登録し、前記複数のカメラのうちのいずれかのカメラの撮影範囲内への対象人物の流入を検知したことに応じて、前記記憶部を参照して、前記いずれかのカメラによって撮影された画像から抽出した前記対象人物の特徴量に基づいて、前記対象人物の特徴量に対応する第1の端末識別子を特定し、前記いずれかのカメラによって撮像される画像に基づいて、前記対象人物の位置を算出し、特定した前記第1の端末識別子と、算出した前記対象人物の位置とを対応付ける、測位プログラムが提供される。
【発明の効果】
【0009】
本発明の一側面によれば、対象領域での人物の位置を精度よく測定することができるという効果を奏する。
【図面の簡単な説明】
【0010】
【
図1】
図1は、実施の形態にかかる測位方法の一実施例を示す説明図である。
【
図2】
図2は、情報処理システム200のシステム構成例を示す説明図である。
【
図3】
図3は、測位サーバ201のハードウェア構成例を示すブロック図である。
【
図4】
図4は、端末Tiのハードウェア構成例を示すブロック図である。
【
図5】
図5は、情報管理テーブル220の記憶内容の一例を示す説明図である。
【
図7】
図7は、測位サーバ201の機能的構成例を示すブロック図である。
【
図8】
図8は、測位サーバ201の第1の動作例を示す説明図である。
【
図9】
図9は、測位サーバ201の第2の動作例を示す説明図である。
【
図10】
図10は、測位結果ファイルの具体例を示す説明図である。
【
図11】
図11は、測位サーバ201の情報登録処理手順の一例を示すフローチャートである。
【
図12】
図12は、測位サーバ201の情報更新処理手順の一例を示すフローチャートである。
【
図13】
図13は、測位サーバ201の測位処理手順の一例を示すフローチャート(その1)である。
【
図14】
図14は、測位サーバ201の測位処理手順の一例を示すフローチャート(その2)である。
【発明を実施するための形態】
【0011】
以下に図面を参照して、本発明にかかる測位プログラム、測位方法、および情報処理装置の実施の形態を詳細に説明する。
【0012】
(実施の形態)
図1は、実施の形態にかかる測位方法の一実施例を示す説明図である。
図1において、情報処理装置101は、対象人物の位置を測定するコンピュータである。ここで、対象人物は、対象領域に進入した人物である。対象領域は、人物が入退出する場所であり、例えば、商業施設、複合商業施設、レジャー施設、展示会会場などである。
【0013】
対象領域では、対象人物が、例えば、商品を購入したり、サービスの提供を受けたり、見学したりする。対象領域は、屋内の領域であってもよく、屋外の領域であってもよい。また、対象領域には、屋内の領域と、屋外の領域とが含まれていてもよい。対象人物の位置は、例えば、対象領域内での位置を特定する座標情報である。
【0014】
ここで、対象領域内での対象人物の行動を把握して、商品やサービスのレコメンド情報を提供したり、クーポンなどの購買促進情報を提供したりする場合がある。この場合、対象領域に進入した対象人物の位置情報を正確に捉えることは重要である。
【0015】
例えば、スーパーマーケットやデパートなどの商業施設において、店内での顧客の購買行動を把握するために、入店時に顧客にビーコンを持たせて、顧客の位置情報を採取することが考えられる。例えば、BLE(Bluetooth Low Energy)ビーコンは、比較的低コストかつ汎用性のあるデバイスであり、室内での測位として利用することができる。Bluetoothは、登録商標である。
【0016】
しかしながら、ビーコンの位置情報は、障害物や反射などにより、数m程度の誤差が発生する場合がある。このため、ビーコンによる測位では、例えば、店内のどの棚の前でどの程度滞留したかといった細かな動作軌跡を把握することができず、適切なレコメンド情報やクーポンの提供を行うことが難しい。
【0017】
また、顧客の動線を分析するための従来技術として、顧客が保持する端末側で位置測定や動線記録を行い、サーバ側でカメラから得られる動線と比較することで、カメラに写った人物と端末を保持する人物の照合を行うものがある。従来技術では、例えば、端末側でGPS(Global Positioning System)やUWB(Ultra Wide Band)で正確な位置測定が可能であって、端末側で加速度センサなどを用いて動線記録を行うことが求められる。
【0018】
しかし、実際の店舗では、屋内のためにGPSで正確な位置情報を採取することが難しい場合が多い。また、ショッピングカートや買い物かごなどを対象とする場合、UWBや導線記録ができるようなデバイスを付加することはコスト的に難しい。また、従来技術では、店舗内の複数のカメラ間を顧客が移動するような場合、顧客の同一性を担保するような考慮はされていない。
【0019】
そこで、本実施の形態では、人物が保持する端末からのビーコン信号と、対象領域内に設置されたカメラによって撮影される画像を利用して、対象領域での人物の位置を精度よく測定する測位方法について説明する。ここで、情報処理装置101の処理例について説明する。
【0020】
図1の例では、対象領域を「対象領域100」とする。対象領域100には、複数のカメラ103と、複数のビーコン通信機104とが設置される。
【0021】
(1)情報処理装置101は、端末102からのビーコン信号に基づいて、端末102を所持した人物105の対象領域100への進入を検知する。ここで、端末102からのビーコン信号は、端末102から発信される無線信号である。端末102からのビーコン信号には、端末識別子が含まれる。端末識別子は、端末102を一意に識別する端末IDなどの識別情報である。
【0022】
端末102からのビーコン信号は、例えば、対象領域100内のビーコン通信機104から定期的に発信されるスキャンリクエストを端末102が受信したことに応じて、端末102から発信されるスキャンレスポンスである。人物105がビーコン通信機104に近づくと、ビーコン通信機104から発信されたスキャンリクエストが端末102によって受信され、それに応じて端末102からスキャンレスポンスが発信される。
【0023】
具体的には、例えば、情報処理装置101は、第1のビーコン通信機104aによって端末102からのビーコン信号が最初に受信された際に、対象領域100への人物105の進入を検知する。第1のビーコン通信機104aは、対象領域100内に設置された複数の第1のビーコン通信機104に含まれる。第1のビーコン通信機104aは、例えば、対象領域100の入口付近に設置されたビーコン通信機である。
【0024】
(2)情報処理装置101は、対象領域100への人物105の進入を検知したことに応じて、第1のカメラ103aによって人物105が対象領域100に進入した際に撮影された画像120から、人物105の特徴量を抽出する。そして、情報処理装置101は、端末102からのビーコン信号に含まれる端末識別子と対応付けて、抽出した特徴量を記憶部110に登録する。
【0025】
ここで、第1のカメラ103aは、対象領域100内に設置された複数のカメラ103に含まれる。第1のカメラ103aは、例えば、対象領域100の入口付近に設置されたカメラである。人物105の特徴量は、画像120に写る人物105の特徴を表す数値情報である。人物105の特徴量は、例えば、画像120から特定される人物105の特徴を表す数値を組み合わせたベクトルデータである。
【0026】
なお、画像120からの人物検出(物体認識)や特徴量抽出には、既存のいかなる技術を用いてもよい。
【0027】
情報処理装置101は、例えば、対象領域100への人物105の進入を検知した時間近傍に、第1のカメラ103aによって撮影された画像120に写る人物105は、端末102を所持する人物であると判断する。そして、情報処理装置101は、端末102を識別する端末識別子と対応付けて、抽出した人物105の特徴量を記憶部110に登録する。
【0028】
(3)情報処理装置101は、複数のカメラ103のうちのいずれかのカメラ103bの撮影範囲内への対象人物106の流入を検知する。具体的には、例えば、情報処理装置101は、カメラ103bによって撮影された画像130に基づいて、既存の物体認識技術により、フレーム外からの新たな人物(対象人物106)の流入を検知する。
【0029】
(4)情報処理装置101は、対象人物106の流入を検知したことに応じて、記憶部110を参照して、カメラ103bによって撮影された画像130から抽出した対象人物106の特徴量に基づいて、対象人物106の特徴量に対応する第1の端末識別子を特定する。
【0030】
ここで特定される第1の端末識別子は、対象人物106が所持する端末107の端末識別子である。また、情報処理装置101は、カメラ103bによって撮像される画像(例えば、画像130)に基づいて、対象人物106の位置を算出する。そして、情報処理装置101は、特定した第1の端末識別子と、算出した対象人物106の位置とを対応付ける。
【0031】
カメラ103(例えば、カメラ103b)に写る物体(例えば対象人物106)の位置は、カメラ103によって撮像される画像から求めることができる。一方、その物体が、どの人物を表しているかは、画像だけでは一意に特定することができない。そこで、情報処理装置101は、記憶部110に端末識別子と対応付けて登録された特徴量を利用して、カメラ103に写る物体が、どの人物(端末を所持する人物)であるかを判別する。
【0032】
具体的には、例えば、情報処理装置101は、対象人物106の流入を検知した場合、画像130から抽出した対象人物106の特徴量と、記憶部110に登録された特徴量とを比較する。つぎに、情報処理装置101は、比較した比較結果に基づいて、対象人物106の特徴量との類似度が最も高い特徴量を特定する。そして、情報処理装置101は、特定した特徴量と対応付けて記憶部110に登録された端末識別子を、対象人物106の特徴量に対応する第1の端末識別子として特定する。
【0033】
また、情報処理装置101は、カメラ103bによって順次撮像される画像に基づいて、既存のトラッキング技術により、対象人物106の位置を順次算出する。なお、対象人物106の位置は、例えば、カメラ座標系の座標によって表されてもよく、また、グローバル座標系の座標によって表されてもよい。そして、情報処理装置101は、順次算出した対象人物106の位置を、第1の端末識別子と対応付ける。
【0034】
このように、情報処理装置101によれば、対象領域100への人物(例えば、人物105)の進入時に、人物が所持する端末(例えば、端末102)の端末識別子と、人物の特徴量とを対応付けることができる。例えば、情報処理装置101は、対象領域100への人物105の進入時に、人物105が入口付近に設置された第1のカメラ103aに写る可能性が高いことを利用して、端末102の端末識別子と、人物105の特徴量とを精度よく対応付けることができる。
【0035】
また、情報処理装置101によれば、対象領域100への進入時に端末識別子と対応付けて登録した人物の特徴量を利用して、カメラ103に写る対象人物を特定し、カメラ103の画像から対象人物のより正確な位置を測定することができる。例えば、情報処理装置101は、カメラ103bの画像130から抽出した対象人物106の特徴量をもとに、カメラ103bに写る対象人物106(端末107を所持する人物)を特定し、カメラ103bの画像から対象人物106のより正確な位置を測定することができる。
【0036】
これにより、情報処理装置101は、BLEビーコンによる測位に比べて、対象領域100内での人物の細かな動きを把握可能することができる。このため、情報処理装置101は、対象領域100内での人物の細かな動きに応じて適切な情報(例えば、レコメンド情報やクーポン)を提供可能にすることができる。
【0037】
(情報処理システム200のシステム構成例)
つぎに、実施の形態にかかる情報処理システム200のシステム構成例について説明する。ここでは、
図1に示した情報処理装置101を情報処理システム200内の測位サーバ201に適用した場合を例に挙げて説明する。情報処理システム200は、例えば、スーパーマーケットなどの店舗内の顧客の動線解析を行うためのコンピュータシステムに適用される。
【0038】
図2は、情報処理システム200のシステム構成例を示す説明図である。
図2において、情報処理システム200は、測位サーバ201と、管理端末202と、端末T1~Tn(n:2以上の自然数)と、ビーコンB1~Bm(m:2以上の自然数)と、カメラC1~Cp(l:2以上の自然数)と、を含む。情報処理システム200において、測位サーバ201、管理端末202、端末T1~Tn、ビーコンB1~BmおよびカメラC1~Cpは、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
【0039】
以下の説明では、端末T1~Tnのうちの任意の端末を「端末Ti」と表記する場合がある(i=1,2,…,n)。また、ビーコンB1~Bmのうちの任意のビーコンを「ビーコンBj」と表記する場合がある(j=1,2,…,m)。また、カメラC1~Cpのうちの任意のカメラを「カメラCk」と表記する場合がある(k=1,2,…,l)。
【0040】
測位サーバ201は、情報管理テーブル220を有し、対象者の位置を測定するコンピュータである。対象者は、対象領域TAに進入した人物(例えば、顧客)である。対象領域TAは、例えば、スーパーマーケット、デパートなどの商業施設である。情報管理テーブル220の記憶内容については、
図5を用いて後述する。
【0041】
管理端末202は、情報処理システム200の管理者が使用するコンピュータである。管理者は、例えば、対象領域TA内の対象者の動線解析を行う者である。管理端末202は、例えば、PC(Personal Computer)、タブレットPCなどである。
【0042】
端末Tiは、情報処理システム200のユーザが使用するコンピュータである。ユーザは、例えば、商品を購入したり、サービスの提供を受けたりする顧客である。端末Tiは、ユーザが所有するものであってもよく、店舗側から入店前(対象領域TAに進入する前)に貸し出されるものであってもよい。
【0043】
端末Tiは、例えば、スマートフォンであってもよく、無線通信機能を有する専用装置であってもよい。例えば、端末Tiがユーザのスマートフォンの場合、端末Tiには、本情報処理システム200を利用するためのアプリケーションがインストールされる。また、店舗側からの商品やサービスに関するレコメンド情報やクーポンを端末Tiに送信するためのユーザ登録が行われる。
【0044】
ビーコンB1~Bmは、対象領域TA内に設置された複数のビーコン通信機である。各ビーコンBjは、例えば、対象領域TA内の全領域を網羅するように所定間隔で設置され、BLEビーコン(スキャンリクエスト)を発信する。ビーコンB1~Bmのうち、対象領域TAの入口付近に設置されたビーコンを「ビーコンB1」とする。
【0045】
例えば、ビーコンB1は、ビーコンB1~Bmのうち入口に最も近い位置であって、対象領域TAの入口から進入してきた人物が所持する端末Tiと近距離無線通信可能な位置に設置される。ビーコンB1は、例えば、
図1に示した第1のビーコン通信機104aに対応する。
【0046】
カメラC1~Cpは、対象領域TA内に設置された複数のカメラ(撮像装置)である。各カメラCkは、画像(静止画または動画)を撮影して画像データを出力する。各カメラCkは、対象領域TA内を移動する人物を撮影可能な位置に設置される。また、各カメラCkは、それぞれの撮影範囲が重ならないように設置される。
【0047】
カメラC1~Cpは、対象領域TA内の全領域を網羅するように設置されてもよく、また、対象領域TA内の特定の領域(陳列棚の前など)を少なくとも撮影可能に設置されてもよい。カメラC1~Cpのうち、対象領域TAの入口付近に設置されたカメラを「カメラC1」とする。カメラC1は、対象領域TAの入口から進入してきた人物を撮影可能な位置に設置される。カメラC1は、例えば、
図1に示した第1のカメラ103aに対応する。
【0048】
なお、対象領域TAには、入口から1名ずつ進入する場合を想定する。
【0049】
情報処理システム200において、ビーコンBjは、定期的にスキャンリクエスト(ビーコン信号)を発信する。端末Tiは、ビーコンBjの通信範囲内に入り、ビーコンBjからスキャンリクエストを受信すると、スキャンレスポンス(ビーコン信号)を発信する。スキャンレスポンスには、端末Tiを一意に識別する端末IDが含まれる。
【0050】
ビーコンBjは、端末Tiからスキャンレスポンス(ビーコンBjからのスキャンリクエストに対する応答)を受信すると、測位サーバ201に端末情報を送信する。端末情報には、例えば、端末ID、ビーコンID、受信信号強度、受信時刻などが含まれる。端末IDは、端末Tiからのスキャンレスポンスに含まれる端末IDである。
【0051】
ビーコンIDは、ビーコンBjを一意に識別する識別子である。受信信号強度は、ビーコンBjが端末Tiからのスキャンレスポンスを受信した際の信号強度(RSSI:Received Signal Strength Indicator)を示す。受信時刻は、ビーコンBjが端末Tiからのスキャンレスポンスを受信した日時を示す。
【0052】
なお、ここでは測位サーバ201と管理端末202とを別々に設けることにしたが、これに限らない。例えば、測位サーバ201は、管理端末202により実現されてもよい。
【0053】
(測位サーバ201のハードウェア構成例)
つぎに、測位サーバ201のハードウェア構成例について説明する。
【0054】
図3は、測位サーバ201のハードウェア構成例を示すブロック図である。
図3において、測位サーバ201は、CPU(Central Processing Unit)301と、メモリ302と、ディスクドライブ303と、ディスク304と、通信I/F(Interface)305と、可搬型記録媒体I/F306と、可搬型記録媒体307と、を有する。また、各構成部は、バス300によってそれぞれ接続される。
【0055】
ここで、CPU301は、測位サーバ201の全体の制御を司る。CPU301は、複数のコアを有していてもよい。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMがOSのプログラムを記憶し、ROMがアプリケーションプログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
【0056】
ディスクドライブ303は、CPU301の制御に従ってディスク304に対するデータのリード/ライトを制御する。ディスク304は、ディスクドライブ303の制御で書き込まれたデータを記憶する。ディスク304は、例えば、磁気ディスク、光ディスクなどである。
【0057】
通信I/F305は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して外部のコンピュータ(例えば、
図2に示した管理端末202、ビーコンB1~Bm、カメラC1~Cp)に接続される。そして、通信I/F305は、ネットワーク210と装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。通信I/F305には、例えば、モデムやLANアダプタなどを採用することができる。
【0058】
可搬型記録媒体I/F306は、CPU301の制御に従って可搬型記録媒体307に対するデータのリード/ライトを制御する。可搬型記録媒体307は、可搬型記録媒体I/F306の制御で書き込まれたデータを記憶する。可搬型記録媒体307は、例えば、CD(Compact Disc)-ROM、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリなどである。
【0059】
なお、測位サーバ201は、上述した構成部のほかに、例えば、入力装置、ディスプレイなどを有してもよい。また、測位サーバ201は、上述した構成部のうち、例えば、可搬型記録媒体I/F306、可搬型記録媒体307を有さなくてもよい。
【0060】
(端末Tiのハードウェア構成例)
つぎに、端末Tiのハードウェア構成例について説明する。
【0061】
図4は、端末Tiのハードウェア構成例を示すブロック図である。
図4において、端末Tiは、CPU401と、メモリ402と、ビーコン通信回路403と、通信I/F404と、ディスプレイ405と、入力装置406と、を有する。また、各構成部はバス400によってそれぞれ接続される。
【0062】
ここで、CPU401は、端末Tiの全体の制御を司る。CPU401は、複数のコアを有していてもよい。メモリ402は、例えば、ROM、RAMおよびフラッシュROMなどを有する記憶部である。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU401のワークエリアとして使用される。メモリ402に記憶されるプログラムは、CPU401にロードされることで、コーディングされている処理をCPU401に実行させる。
【0063】
ビーコン通信回路403は、近距離無線通信によりビーコン信号(例えば、スキャンリクエスト)を受信したり、ビーコン信号(例えば、スキャンレスポンス)を発信したりする通信回路である。ビーコン通信回路403は、例えば、BLEのアドバタイズ信号をビーコン信号として利用する。
【0064】
通信I/F404は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して外部のコンピュータ(例えば、管理端末202)に接続される。そして、通信I/F404は、ネットワーク210と自装置内部とのインターフェースを司り、外部装置からのデータの入出力を制御する。
【0065】
ディスプレイ405は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する表示装置である。ディスプレイ405は、例えば、液晶ディスプレイや有機EL(Electroluminescence)ディスプレイなどである。
【0066】
入力装置406は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置406は、例えば、タッチパネル式の入力パッドやテンキーなどである。
【0067】
なお、端末Tiは、上述した構成部のほかに、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、可搬型記録媒体I/F、可搬型記録媒体、スピーカ、マイクロフォン、GPS(Global Positioning System)ユニットなどを有してもよい。また、
図2に示した管理端末202についても、端末Tiと同様のハードウェア構成により実現することができる。
【0068】
(情報管理テーブル220の記憶内容)
つぎに、
図5を用いて、測位サーバ201が有する情報管理テーブル220の記憶内容について説明する。情報管理テーブル220は、例えば、
図3に示したメモリ302、ディスク304などの記憶装置により実現される。
【0069】
図5は、情報管理テーブル220の記憶内容の一例を示す説明図である。
図5において、情報管理テーブル220は、端末ID、特徴量、おおよその位置、カメラIDおよびカメラ内の位置のフィールドを有し、各フィールドに情報を設定することで、端末管理情報(例えば、端末管理情報500-1~500-3)をレコードとして記憶する。
【0070】
ここで、端末IDは、端末Tiを一意に識別する識別子を示す。特徴量は、カメラCkによって撮影された画像から抽出された人物の特徴量を示す。人物の特徴量については、
図6を用いて後述する。おおよその位置は、端末Tiから発信されるビーコン信号に基づき測定された端末Tiの位置であり、端末Tiを所持する人物のおおよその位置に相当する。
【0071】
おおよその位置は、例えば、対象領域TAを表した平面上における1点を特定する座標情報であり、グローバル座標系の点(x、y)によって表される。なお、ビーコンによる測位では数m程度の誤差が発生する場合がある。このため、ここでは、ビーコン信号に基づき測定される位置を「おおよその位置」と表記している。
【0072】
カメラIDは、カメラCkを一意に識別する識別子を示す。カメラ内の位置は、カメラCkによって撮影された画像に基づき測定された人物の位置を示す。カメラ内の位置は、例えば、対象領域TAを表した平面上における1点を特定する座標情報であり、カメラ座標系の点(x、y)によって表される。
【0073】
ただし、カメラ内の位置は、グローバル座標系の点(x、y)によって表されてもよい。例えば、グローバル座標系の点(x、y)は、カメラ座標系の点(x、y)を座標変換することにより得ることができる。グローバル座標系は、基準となる座標系である。カメラ座標系は、カメラCkの設置位置を原点とする座標系である。
【0074】
(人物の特徴量)
つぎに、
図6を用いて、カメラCkによって撮影された画像から抽出される人物の特徴量について説明する。
【0075】
図6は、人物の特徴量を示す説明図である。
図6において、人物600は、カメラCkによって撮影された画像に写る人物を表している。特徴量Vは、カメラCkによって撮影された画像から抽出される人物600の特徴量を表す。特徴量Vは、複数の要素(例えば、要素e1,e2,e3,…)を含む特徴ベクトルである。
【0076】
特徴量Vは、人物600の色(R、G、B)の分布(ヒストグラム)によって表されてもよい。例えば、特徴量Vは、人物600を高さ方向に分割した区間ごとのRGB値(0~255の値)によって表されてもよい。例えば、人物600を6分割した場合、特徴量Vは、色(R、G、B)の分布に関する18個の要素を含む。
【0077】
また、特徴量Vは、人物600の骨格601~613に関する情報を用いて表されてもよい。例えば、特徴量Vは、骨格601~613の位置(例えば、カメラ内の位置)を要素として含むものであってもよい。また、特徴量Vは、異なる骨格間の距離を要素として含むものであってもよい。
【0078】
(測位サーバ201の機能的構成例)
つぎに、測位サーバ201の機能的構成例について説明する。
【0079】
図7は、測位サーバ201の機能的構成例を示すブロック図である。
図7において、測位サーバ201は、第1の検知部701と、抽出部702と、登録部703と、第1の算出部704と、第2の検知部705と、特定部706と、第2の算出部707と、対応付け/出力部708と、記憶部710と、を含む。第1の検知部701~対応付け/出力部708は制御部700となる機能であり、具体的には、例えば、
図3に示したメモリ302、ディスク304、可搬型記録媒体307などの記憶装置に記憶されたプログラムをCPU301に実行させることにより、または、通信I/F305により、その機能を実現する。各機能部の処理結果は、例えば、メモリ302、ディスク304などの記憶装置に記憶される。また、記憶部710は、例えば、メモリ302、ディスク304などの記憶装置により実現される。具体的には、例えば、記憶部710は、
図5に示した情報管理テーブル220を記憶する。
【0080】
第1の検知部701は、端末Tiからのビーコン信号に基づいて、端末Tiを所持した人物の対象領域TAへの進入を検知する。ここで、端末Tiからのビーコン信号は、端末Tiから発信される無線信号(電波)であり、端末Tiを一意に識別する端末IDを含む。端末Tiからのビーコン信号は、例えば、ビーコンBjからのスキャンリクエストを端末Tiが受信したことに応じて、端末Tiから発信されるスキャンレスポンスである。
【0081】
具体的には、例えば、第1の検知部701は、対象領域TAの入口付近に設置されたビーコンB1から端末情報を受信するのを待つ。端末情報には、例えば、端末ID、ビーコンID、受信信号強度、受信時刻などが含まれる。そして、第1の検知部701は、ビーコンB1から端末情報を受信した場合、受信した端末情報に含まれる端末IDが、記憶部710に登録されているか否かを判断する。
【0082】
ここで、記憶部710は、端末Tiを一意に識別する端末識別子(例えば、端末ID)と対応付けて、人物の特徴量を記憶する。より詳細に説明すると、例えば、第1の検知部701は、
図5に示した情報管理テーブル220を参照して、受信した端末情報に含まれる端末IDが登録されているか否かを判断する。
【0083】
ここで、端末IDが登録されていない場合、第1の検知部701は、端末Tiを所持した人物の対象領域TAへの進入を検知する。第1の検知部701は、端末IDが登録されていない場合、ビーコンB1によって端末Tiからのビーコン信号が最初に受信されたと判断して、端末Tiを所持した人物の対象領域TAへの進入を検知する。
【0084】
一方、端末IDが登録されている場合、第1の検知部701は、端末Tiを所持した人物の対象領域TAへの進入を検知しない。第1の検知部701は、端末IDが登録されている場合、ビーコンB1が端末Tiからのビーコン信号を今回受信するよりも前に、端末Tiを所持した人物が既に対象領域TAに進入していた人物であると扱う。
【0085】
抽出部702は、対象領域TAへの人物の進入を検知したことに応じて、対象領域TAの入口付近に設置されたカメラC1によって人物が対象領域TAに進入した際に撮影された画像から、人物の特徴量を抽出する。具体的には、例えば、抽出部702は、ビーコンB1から受信した端末情報に含まれる受信時刻を特定する。
【0086】
つぎに、抽出部702は、カメラC1によって撮影された画像のうち、撮影時刻が特定した受信時刻に最も近い画像をカメラC1から取得する。つぎに、抽出部702は、既存の人物検出(物体認識)技術を用いて、取得した画像から人物を検出する。そして、抽出部702は、取得した画像から、検出した人物の特徴量を抽出する。特徴量は、例えば、
図6に示したような特徴量Vである。
【0087】
なお、抽出部702は、例えば、カメラC1によって撮影された画像に複数の人物が含まれる場合、人物の特徴量を抽出しなくてもよい。
【0088】
登録部703は、端末Tiからのビーコン信号に含まれる端末識別子と対応付けて、抽出された特徴量を記憶部710に登録する。具体的には、例えば、登録部703は、ビーコンB1から受信された端末情報に含まれる端末IDと対応付けて、抽出された特徴量を情報管理テーブル220に登録する。
【0089】
この結果、情報管理テーブル220に端末管理情報が新規登録される。これにより、登録部703は、端末Tiの端末IDと、端末Tiを所持する人物の特徴量とを紐付けることができる。なお、この時点では、例えば、新たな端末管理情報のおおよその位置、カメラIDおよびカメラ内の位置フィールドは、Nullである。
【0090】
第1の算出部704は、対象領域TA内に設置されたビーコンB1~Bmによって受信される、端末Tiからのビーコン信号に基づいて、端末Tiの位置を算出する。位置算出対象となる端末Tiは、記憶部710(情報管理テーブル220)に端末識別子(端末ID)が登録されている端末である。
【0091】
具体的には、例えば、第1の算出部704は、端末Tiからのスキャンレスポンス(ビーコン信号)を受信したビーコンBjから端末情報を受信する。そして、第1の算出部704は、受信した端末情報に含まれる受信信号強度に基づいて、端末Tiの位置を算出する。
【0092】
より詳細に説明すると、例えば、第1の算出部704は、ビーコンBjの設置位置と、ビーコンBjから受信した端末情報に含まれる受信信号強度とに基づいて、三角測量方式によって端末Tiの位置を算出する。端末Tiの位置は、例えば、グローバル座標系の点(x、y)によって表される。
【0093】
なお、三角測量方式では、例えば、ビーコンB1~Bmのうちの少なくとも3台のビーコンBjからの端末情報に含まれる受信信号強度を用いる。端末Tiの位置の算出に用いられる端末情報は、例えば、受信時刻が略一致する端末情報である。また、ビーコンBjの設置位置は、例えば、ビーコンIDと対応付けて、メモリ302、ディスク304などの記憶装置に記憶されていてもよい。また、ビーコンBjの設置位置は、測位サーバ201からビーコンBjに問い合わせることにより特定されてもよい。
【0094】
また、登録部703は、端末Tiからのビーコン信号に含まれる端末識別子と対応付けて、第1の算出部704によって算出された端末Tiの位置を記憶部710に登録する。具体的には、例えば、登録部703は、ビーコンBjから受信された端末情報に含まれる端末IDを特定する。そして、登録部703は、情報管理テーブル220内の特定した端末IDに対応するおおよその位置に、算出された端末Tiの位置を登録する。
【0095】
これにより、登録部703は、端末Tiを所持する人物の対象領域TA内でのおおよその位置を登録することができる。
【0096】
第2の検知部705は、カメラC1~CpのうちのいずれかのカメラCkの撮影範囲内への対象人物の流入を検知する。具体的には、例えば、第2の検知部705は、カメラCkによって撮影された画像を順次取得し、既存の人物検出(物体認識)技術を用いて、順次取得した画像から人物を検出する。そして、第2の検知部705は、新たな人物のフレーム外からの流入があった場合に、カメラCkの撮影範囲内への対象人物の流入を検知する。
【0097】
特定部706は、カメラCkの撮影範囲内への対象人物の流入が検知されたことに応じて、記憶部710を参照して、カメラCkによって撮影された画像から抽出した対象人物の特徴量に基づいて、対象人物の特徴量に対応する第1の端末識別子を特定する。
【0098】
具体的には、例えば、特定部706は、カメラCkの撮影範囲内への対象人物の流入が検知された場合、カメラCkによって撮影された画像から、対象人物の特徴量を抽出する。つぎに、特定部706は、抽出した対象人物の特徴量と、情報管理テーブル220に登録された特徴量とを比較することにより、類似度を算出する。
【0099】
ここで、類似度は、対象人物の特徴量と類似する度合いを示す。類似度は、対象人物の特徴量(特徴ベクトル)と情報管理テーブル220に登録された特徴量(特徴ベクトル)とのユークリッド距離によって表される。そして、特定部706は、算出した類似度が最も高い特徴量(ユークリッド距離が最も近い)と対応付けて情報管理テーブル220に登録されている端末IDを、第1の端末識別子として特定する。
【0100】
ただし、記憶部710(情報管理テーブル220)に登録されている端末IDの数(端末数)が多くなると、特徴量の比較にかかる処理負荷が増大するおそれがある。
【0101】
そこで、特定部706は、カメラCkの撮影範囲内への対象人物の流入が検知された場合、記憶部710を参照して、カメラCkの所定範囲内に存在する端末の端末識別子に対応する特徴量を取得してもよい。そして、特定部706は、カメラCkによって撮影された画像から抽出した対象人物の特徴量と、取得した特徴量とに基づいて、第1の端末識別子を特定してもよい。
【0102】
具体的には、例えば、特定部706は、情報管理テーブル220を参照して、カメラCkの設置位置を中心とする所定範囲内におおよその位置が含まれる端末IDを特定する。所定範囲は、任意に設定可能であり、例えば、カメラCkの撮影範囲、BLEビーコンによる測位誤差などを考慮して、半径が数m~数十m程度の範囲に設定される。
【0103】
そして、特定部706は、情報管理テーブル220を参照して、特定した端末IDに対応する特徴量を特定する。つぎに、特定部706は、カメラCkによって撮影された画像から抽出した対象人物の特徴量と、取得した特徴量とを比較することにより、類似度を算出する。そして、特定部706は、算出した類似度が最も高い特徴量に対応する端末IDを、第1の端末識別子として特定する。
【0104】
これにより、特定部706は、各端末のおおよその位置を利用して、対象領域TA内に存在する端末群の中から特徴量の比較対象となる端末を絞り込んだ上で、対象人物の特徴量に対応する端末ID(第1の端末識別子)を特定することができる。また、特定部706は、例えば、情報管理テーブル220内の特定した端末ID(第1の端末識別子)に対応するカメラIDに、カメラCkのカメラIDを設定する。
【0105】
なお、カメラCkの設置位置は、例えば、カメラIDと対応付けて、メモリ302、ディスク304などの記憶装置に記憶されていてもよい。また、カメラCkの設置位置は、測位サーバ201からカメラCkに問い合わせることにより特定されてもよい。
【0106】
第2の算出部707は、カメラCkの撮影範囲内への対象人物の流入が検知された場合、カメラCkによって撮像される画像に基づいて、対象人物の位置を算出する。具体的には、例えば、第2の算出部707は、カメラCkによって順次撮像される画像に基づいて、既存のトラッキング技術により、対象人物の位置を順次算出する。
【0107】
より詳細に説明すると、例えば、第2の算出部707は、deepsortアルゴリズムを用いて、カメラCkに写る対象人物のトラッキングを行うことにより、対象人物の位置を順次算出する。対象人物の位置は、例えば、カメラ座標系の点(x、y)によって表される。トラッキングでは、例えば、フレーム間の物体の対応関係から、対象人物の動きの軌跡を求めることができる。
【0108】
第2の算出部707は、カメラCkの撮影範囲からの対象人物の流出を検知するまで、カメラCkによって撮像される画像に基づいて、対象人物の位置を算出する。具体的には、例えば、第2の算出部707は、カメラCkによって撮像された画像から対象人物が検出されなくなったら、カメラCkの撮影範囲から対象人物が流出したと判断する。
【0109】
そして、第2の算出部707は、カメラCkによって撮像される画像に基づく対象人物の位置算出(トラッキング)を終了する。これにより、第2の算出部707は、対象人物が移動してフレーム外となるまで、対象人物が移動した軌跡(カメラCk内の位置)を追跡することができる。
【0110】
対応付け/出力部708は、特定された第1の端末識別子と、第2の算出部707によって算出された対象人物の位置とを対応付ける。具体的には、例えば、対応付け/出力部708は、情報管理テーブル220内の特定された端末ID(第1の端末識別子)と対応付けて、算出された対象人物の位置をカメラ内の位置として記録する。
【0111】
なお、
図5の例では、情報管理テーブル220には、各端末IDに対応するカメラ内の位置が一つのみ表示されているが、これに限らない。例えば、情報管理テーブル220には、各端末IDに対応するカメラ内の位置として、算出された対象人物の位置が測位時刻とともに順次記録されてもよい。測位時刻は、対象人物の位置が測定された時刻を示す。測位時刻は、例えば、対象人物の位置の算出元の画像の撮影時刻に相当する。
【0112】
また、対応付け/出力部708は、対応付けた第1の端末識別子と対象人物の位置とを出力する。対応付け/出力部708の出力形式としては、例えば、メモリ302、ディスク304などの記憶装置への記憶、通信I/F305による他のコンピュータ(例えば、
図2に示した管理端末202)への送信、不図示のディスプレイへの表示、不図示のプリンタへの印刷出力などがある。
【0113】
出力される対象人物の位置は、例えば、情報管理テーブル220内のカメラ内の位置であってもよく、また、カメラ内の位置(カメラ座標系の位置)をグローバル座標系の位置に座標変換したものであってもよい。また、対象人物の位置の出力タイミングは、任意に設定可能である。
【0114】
例えば、対応付け/出力部708は、対象人物の位置が算出されると、その都度、対応付けた第1の端末識別子(端末ID)と対象人物の位置とを出力してもよい。
【0115】
これにより、情報処理システム200の管理者は、例えば、店舗内の対象人物(端末Tiを所持する人物)の正確な位置をリアルタイムに把握することが可能となる。また、管理者は、端末Tiに対して、対象人物の位置に応じたレコメンド情報やクーポンを提供することで、対象人物の購買意欲を促進することができる。
【0116】
また、対応付け/出力部708は、所定期間が経過するたびに、所定期間内に算出された対象人物の位置を第1の端末識別子と対応付けて出力してもよい。所定期間は、任意に設定可能であり、例えば、店舗の営業時間などに設定される。具体的には、例えば、対応付け/出力部708は、情報管理テーブル220を参照して、測位結果ファイルを作成する。
【0117】
ここで、測位結果ファイルは、例えば、端末ID(第1の端末識別子)と対応付けて、対象人物の位置(例えば、グローバル座標系の位置)および測位時刻を表す情報である。そして、対応付け/出力部708は、作成した測位結果ファイルを管理端末202に送信する。
【0118】
なお、測位結果ファイルの具体例については、
図10を用いて後述する。
【0119】
また、第1の検知部701は、ビーコンB1~Bmのいずれのビーコンも端末Tiからのビーコン信号を受信しない場合に、端末Tiを所持した人物の対象領域TAからの退出を検知する。退出検知の対象となる端末Tiは、記憶部710に登録された端末識別子により識別される端末である。
【0120】
具体的には、例えば、第1の検知部701は、ビーコンB1~Bmのいずれのビーコンからも端末Tiの端末IDを含む端末情報を受信しなかった場合に、端末Tiを所持した人物の対象領域TAからの退出を検知する。端末IDは、例えば、情報管理テーブル220に登録されている端末IDである。
【0121】
登録部703は、端末Tiを所持した人物の対象領域TAからの退出が検知された場合、記憶部710に登録された端末Tiの端末識別子を削除する。具体的には、例えば、削除部は、端末Tiを所持した人物の対象領域TAからの退出が検知された場合、情報管理テーブル220から端末Tiの端末IDに対応する端末管理情報を削除する。
【0122】
なお、上述した説明では、対象領域TAには、入口から1名ずつ進入する場合を想定したが、これに限らない。例えば、対象領域TAには、入口から2名以上が同時に進入可能であってもよい。この場合、ある人物が対象領域TAに進入した際にカメラC1によって撮影された画像に2名以上の人物が写ることがある。
【0123】
対象領域TAへの進入時は、カメラC1の画像に2名以上の人物が写っていると、端末IDと人物の特徴量との対応関係が一意に定まらない。このため、抽出部702は、メラC1によって撮影された画像に2名以上の人物が含まれる場合、人物の特徴量を抽出しないことにしてもよい。この場合、端末IDと人物の特徴量との対応付けは行われない。
【0124】
また、抽出部702は、カメラC1によって撮影された画像に2名以上の人物が含まれる場合であっても、各人物の特徴量を抽出してもよい。そして、登録部703は、端末Tiからのビーコン信号に含まれる端末IDと対応付けて、抽出された各人物の特徴量を登録してもよい。
【0125】
この場合、対象領域TAに同時に進入した各人物が所持する端末の端末IDに対して、2以上の特徴量がそれぞれ対応付けられる。このため、対象人物の特徴量に対応する端末ID(第1の端末識別子)を特定する際に、2以上の端末IDが特定される場合がある。この場合、対象人物が、どの端末を所持する人物であるか一意に特定できない。
【0126】
しかしながら、対象人物が、対象領域TAに同時に進入したいずれかの人物であることは絞り込むことができる。したがって、端末IDに対して2以上の特徴量が対応付けられることを許容した場合であっても、対象領域TAに同時に進入した少なくともいずれかの人物に対しては、適切な情報提供を行うことができるといえる。
【0127】
また、対象領域TAの入口から2名以上が同時に進入可能であっても、同時に進入する人物は、2,3人程度で多くないことが予想される。このため、カメラC1によって撮影された画像に2名以上の人物が含まれる場合であっても、抽出部702によって各人物の特徴量を抽出することにしてもよい。
【0128】
(測位サーバ201の動作例)
つぎに、測位サーバ201の動作例について説明する。ここでは、対象領域TAを「スーパーマーケットの店内」とし、ビーコンB1~Bmを「ビーコンB1~B5」とし、カメラC1~Cpを「カメラC1~C5」とする。
【0129】
まず、
図8を用いて、顧客の入店/退店時の測位サーバ201の動作例について説明する。
【0130】
図8は、測位サーバ201の第1の動作例を示す説明図である。
図8において、対象領域TA内に設置されたビーコンB1~B5とカメラC1~C5とが示されている。ビーコンB1~B5は、対象領域TA内の全領域を網羅するように設置されている。カメラC1~C5は、それぞれの撮影範囲が重ならないように設置されている。ビーコンB1およびカメラC1は、対象領域TAの出入口801付近に設置されている。
【0131】
ここで、端末T3を所持する人物Xが入店した場合を想定する。
【0132】
人物Xが出入口801から対象領域TAに入店すると、端末T3は、ビーコンB1からのスキャンリクエストを受信する。端末T3は、ビーコンB1からのスキャンリクエストを受信すると、端末ID「T3」を含むスキャンレスポンスを発信する。ビーコンB1は、端末T3からのスキャンレスポンスを受信すると、測位サーバ201に端末情報810を送信する。
【0133】
端末情報810は、端末ID「T3」、ビーコンID「B1」、受信信号強度、受信時刻を含む。受信信号強度は、ビーコンB1が端末T3からのスキャンレスポンスを受信した際の信号強度を示す。受信時刻は、ビーコンB1が端末T3からのスキャンレスポンスを受信した日時を示す。
【0134】
測位サーバ201は、ビーコンB1から端末情報810を受信すると、端末情報810から端末ID「T3」を読み込む。つぎに、測位サーバ201は、情報管理テーブル220を参照して、読み込んだ端末ID「T3」が登録されているか否かを判断する。ここでは、端末ID「T3」が登録されていない。
【0135】
この場合、測位サーバ201は、端末T3を所持した人物Xの対象領域TAへの進入を検知する。測位サーバ201は、対象領域TAへの人物Xの進入を検知したことに応じて、対象領域TAの出入口801付近に設置されたカメラC1から、対象領域TAに人物Xが進入した際に撮影された画像820を取得する。
【0136】
画像820は、端末情報810に含まれる受信時刻近傍にカメラC1によって撮影された画像である。このため、画像820には、対象領域TAに入店直後の人物Xが写っている可能性が高い。測位サーバ201は、取得した画像820から、人物Xの特徴量V3を抽出する。
【0137】
そして、測位サーバ201は、読み込んだ端末ID「T3」と対応付けて、抽出した特徴量V3を情報管理テーブル220に登録する。これにより、情報管理テーブル220に端末管理情報が新規登録され、端末T3の端末ID「T3」と、端末T3を所持する人物Xの特徴量V3とを紐付けることができる。
【0138】
また、ビーコンB1~B5の各ビーコンBjは、端末T3からのスキャンレスポンスを受信すると、測位サーバ201に端末情報を送信する。測位サーバ201は、各ビーコンBjから端末情報を受信すると、受信した端末情報に含まれる受信信号強度と、各ビーコンBjの設置位置とに基づいて、三角測量方式によって端末T3の位置を算出する。
【0139】
算出された端末T3の位置は、その都度、情報管理テーブル220内の新規登録された端末ID「T3」に対応する端末管理情報のおおよその位置に記録される。これにより、端末T3のおおよその位置が逐次更新される。
【0140】
また、入店時は、例えば、情報管理テーブル220内の新規登録された端末ID「T3」に対応する端末管理情報に、カメラC1のカメラID「C1」が設定される。そして、測位サーバ201は、カメラC1によって順次撮像される画像に基づいて、人物Xの位置を順次算出してもよい。
【0141】
算出された人物Xの位置は、その都度、情報管理テーブル220内の新規登録された端末ID「T3」に対応する端末管理情報のカメラ内の位置に記録される。これにより、人物Xのカメラ内の位置が逐次更新される。
【0142】
つぎに、端末T5を所持する人物Yが退店した場合を想定する。
【0143】
端末T5を所持する人物Yが対象領域TAから退店すると、ビーコンB1~B5のいずれのビーコンも端末T5からのビーコン信号を受信しない。この場合、測位サーバ201では、端末ID「T5」を含む端末情報が受信されない。このため、測位サーバ201は、端末T5を所持した人物Yの対象領域TAからの退出を検知する。
【0144】
そして、測位サーバ201は、情報管理テーブル220から端末ID「T5」に対応する端末管理情報を削除する。これにより、測位サーバ201は、対象領域TAから退店した人物Y(端末T5を所持する人物)を測位対象から除外することができる。
【0145】
つぎに、
図9を用いて、カメラCkの撮影範囲内に人物(対象人物)が現れたときの測位サーバ201の動作例について説明する。
【0146】
図9は、測位サーバ201の第2の動作例を示す説明図である。
図9において、ここでは、対象領域TA内に進入した人物Xが、カメラC4の撮影範囲内に現れた場合を想定する。なお、
図9では、対象領域TAの一部を抜粋して表示している。この場合、測位サーバ201は、カメラC4の撮影範囲内への対象人物(人物X)の流入を検知する。
【0147】
つぎに、測位サーバ201は、情報管理テーブル220を参照して、カメラC4の設置位置を中心とする所定範囲900内に、おおよその位置が含まれる端末IDを特定する。ここでは、端末ID「T1,T3,T21,T33」が特定された場合を想定する。端末T1は、人物901が所持する。端末T21は、人物902が所持する。端末T33は、人物903が所持する。
【0148】
測位サーバ201は、端末ID「T1,T3,T21,T33」のうち、情報管理テーブル220内のカメラIDに「C4」が設定されている端末IDを除外する。ここでは、端末ID「T33」に対応するカメラIDに「C4」が設定されている場合を想定する。この場合、端末T33を所持する人物903は、カメラC4の撮影範囲内に新たに流入した人物ではないため除外される。
【0149】
つぎに、測位サーバ201は、情報管理テーブル220を参照して、各端末ID「T1,T3,T21」に対応する特徴量V1,V3,V21を抽出する。また、測位サーバ201は、カメラC4によって撮影された画像から、流入を検知した対象人物(人物X)の特徴量を抽出する。
【0150】
そして、測位サーバ201は、抽出した対象人物の特徴量と、取得した特徴量V1,V3,V21とを比較することにより、類似度s1,s3,s21をそれぞれ算出する。類似度s1は、対象人物の特徴量と特徴量V1との類似度(例えば、ユークリッド距離)である。類似度s3は、対象人物の特徴量と特徴量V3との類似度である。類似度s21は、対象人物の特徴量と特徴量V21との類似度である。
【0151】
つぎに、測位サーバ201は、算出した類似度が最も高い特徴量に対応する端末ID(第1の端末識別子)を特定する。ここでは、類似度s1,s3,s21のうち類似度s3が最も高い(例えば、ユークリッド距離が最も近い)とする。この場合、測位サーバ201は、端末ID「T3」を特定する。
【0152】
これにより、測位サーバ201は、カメラC4の撮影範囲内に現れた対象人物(人物X)が、端末T3を所持する人物であると特定することができる。
【0153】
測位サーバ201は、情報管理テーブル220内の端末ID「T3」に対応する端末管理情報のカメラIDに「C4」を設定する。そして、測位サーバ201は、カメラC4の撮影範囲からの対象人物(人物X)の流出を検知するまで、カメラC4によって順次撮像される画像群910に基づいて、対象人物(人物X)の位置を順次算出する。
【0154】
測位サーバ201は、算出した対象人物(人物X)の位置を、情報管理テーブル220内の端末ID「T3」に対応する端末管理情報のカメラ内の位置に設定する。また、測位サーバ201は、カメラC4の撮影範囲からの対象人物(人物X)の流出を検知した場合、情報管理テーブル220内の端末ID「T3」に対応する端末管理情報のカメラIDをクリア(Null)する。
【0155】
これにより、測位サーバ201は、カメラC4の撮影範囲内に現れた対象人物(人物X)がフレーム外となるまで、カメラC4によって順次撮像される画像群910から、対象人物(人物X)の移動軌跡を算出することができる。また、測位サーバ201は、店内の複数のカメラ間(例えば、カメラC1,C4)を人物Xが移動するような場合であっても、端末IDと紐付けた特徴量を利用して、人物の同一性を担保することができる。
【0156】
(測位結果ファイルの具体例)
つぎに、
図10を用いて、測位結果ファイルの具体例について説明する。
【0157】
図10は、測位結果ファイルの具体例を示す説明図である。
図10において、測位結果ファイル1000は、複数の測位結果(例えば、測位結果1000-1~1000-11)を含む。各測位結果は、端末ID、測位時刻、xおよびyを含む。
【0158】
ここで、端末IDは、対象領域TA内の対象人物が所持する端末Tiを一意に識別する識別子である。測位時刻は、対象人物の位置が測定された時刻を示す。なお、ここでは、測位時刻として、時刻のみ表示したが、日時(日付+時刻)が表示されてもよい。xおよびyは、対象領域TAにおける対象人物の位置を示す。
【0159】
測位結果ファイル1000によれば、管理者は、例えば、店舗(対象領域TA)内での顧客(端末T3を所持する人物)の正確な移動軌跡を把握することができる。また、管理者は、例えば、顧客がどのような購買行動をしたのかの行動分析や、他の顧客を含む顧客全体の動線解析などを行って、店舗の売り上げをアップさせるための施策を講じることができる。
【0160】
(測位サーバ201の各種処理手順)
つぎに、測位サーバ201の各種処理手順について説明する。まず、
図11を用いて、測位サーバ201の情報登録処理手順について説明する。
【0161】
図11は、測位サーバ201の情報登録処理手順の一例を示すフローチャートである。
図11のフローチャートにおいて、まず、測位サーバ201は、対象領域TAの入口付近に設置されたビーコンB1から端末情報を受信したか否かを判断する(ステップS1101)。ここで、測位サーバ201は、ビーコンB1から端末情報を受信するのを待つ(ステップS1101:No)。
【0162】
そして、測位サーバ201は、ビーコンB1から端末情報を受信した場合(ステップS1101:Yes)、受信した端末情報から端末IDを読み込む(ステップS1102)。つぎに、測位サーバ201は、情報管理テーブル220を参照して、読み込んだ端末IDが登録されているか否かを判断する(ステップS1103)。
【0163】
ここで、読み込んだ端末IDが登録されていない場合(ステップS1103:No)、測位サーバ201は、対象領域TAの入口付近に設置されたカメラC1によって撮影された画像を取得する(ステップS1104)。つぎに、測位サーバ201は、取得した画像から、人物の特徴量を抽出する(ステップS1105)。
【0164】
そして、測位サーバ201は、読み込んだ端末IDと対応付けて、抽出した特徴量を情報管理テーブル220に登録することにより、新たな端末管理情報を登録して(ステップS1106)、本フローチャートによる一連の処理を終了する。また、ステップS1103において、読み込んだ端末IDが登録されている場合(ステップS1103:Yes)、測位サーバ201は、本フローチャートによる一連の処理を終了する。
【0165】
これにより、測位サーバ201は、端末Tiの端末IDと、端末Tiを所持する人物の特徴量とを紐付けることができる。
【0166】
なお、ステップS1104において取得された画像から人物を検出できなかった場合、測位サーバ201は、ステップS1104に戻って、カメラC1によって撮影された画像を再取得してもよい。また、ステップS1104において取得された画像から人物を検出できなかった場合、測位サーバ201は、本フローチャートによる一連の処理を終了してもよい。
【0167】
つぎに、
図12を用いて、測位サーバ201の情報更新処理手順について説明する。測位サーバ201の情報更新処理は、例えば、数秒程度の一定時間ごとに実行される。
【0168】
図12は、測位サーバ201の情報更新処理手順の一例を示すフローチャートである。
図12のフローチャートにおいて、まず、測位サーバ201は、情報管理テーブル220から選択されていない未選択の端末IDを選択する(ステップS1201)。つぎに、測位サーバ201は、選択した端末IDが全てのビーコンB1~Bmで非検出か否かを判断する(ステップS1202)。
【0169】
なお、全てのビーコンB1~Bmで非検出とは、例えば、ビーコンB1~Bmのいずれのビーコンからも端末Tiの端末IDを含む端末情報を受信しなかった場合に相当する。
【0170】
ここで、全てのビーコンB1~Bmで非検出ではない場合(ステップS1202:No)、測位サーバ201は、選択した端末IDの端末Tiのおおよその位置を算出する(ステップS1203)。具体的には、例えば、測位サーバ201は、各ビーコンBjの設置位置と、選択した端末IDの端末Tiからのスキャンレスポンス(ビーコン信号)を各ビーコンBjが受信した際の受信信号強度とに基づいて、三角測量方式によって端末Tiのおおよその位置を算出する。
【0171】
そして、測位サーバ201は、算出したおおよその位置を用いて、情報管理テーブル220内の選択した端末IDに対応する端末管理情報のおおよその位置を更新して(ステップS1204)、ステップS1206に移行する。
【0172】
また、ステップS1202において、全てのビーコンB1~Bmで非検出の場合(ステップS1202:Yes)、測位サーバ201は、情報管理テーブル220内の選択した端末IDに対応する端末管理情報を削除する(ステップS1205)。つぎに、測位サーバ201は、情報管理テーブル220から選択されていない未選択の端末IDがあるか否かを判断する(ステップS1206)。
【0173】
ここで、未選択の端末IDがある場合(ステップS1206:Yes)、測位サーバ201は、ステップS1201に戻る。一方、未選択の端末IDがない場合(ステップS1206:No)、測位サーバ201は、本フローチャートによる一連の処理を終了する。
【0174】
これにより、測位サーバ201は、情報管理テーブル220に登録された端末IDにより識別される端末Tiのおおよその位置を定期的に更新することができる。
【0175】
図13および
図14は、測位サーバ201の測位処理手順の一例を示すフローチャートである。
図13のフローチャートにおいて、まず、測位サーバ201は、カメラCkによって撮影された画像に基づいて、カメラCkの撮影範囲内への対象人物の流入を検知したか否かを判断する(ステップS1301)。
【0176】
ここで、測位サーバ201は、対象人物の流入を検知するのを待つ(ステップS1301:No)。そして、測位サーバ201は、対象人物の流入を検知した場合(ステップS1301:Yes)、情報管理テーブル220を参照して、カメラCkの設置位置から所定範囲内の端末IDを特定する(ステップS1302)。
【0177】
なお、カメラCkの設置位置から所定範囲内の端末IDは、例えば、カメラCkの設置位置を中心とする所定範囲内に、おおよその位置が含まれる端末IDである。
【0178】
つぎに、測位サーバ201は、複数の端末IDが特定されたか否かを判断する(ステップS1303)。ここで、端末IDが一つ特定された場合(ステップS1303:No)、測位サーバ201は、情報管理テーブル220内の特定した端末ID(第1の端末識別子)に対応するカメラIDに、カメラCkのカメラIDを設定して(ステップS1304)、
図14に示すステップS1401に移行する。
【0179】
また、ステップS1303において、複数の端末IDが特定された場合(ステップS1303:Yes)、測位サーバ201は、カメラCkによって撮影された画像から、対象人物の特徴量を抽出する(ステップS1305)。
【0180】
つぎに、測位サーバ201は、情報管理テーブル220を参照して、特定した複数の端末IDそれぞれに対応する特徴量を取得する(ステップS1306)。ただし、複数の端末IDのうち、端末IDに対応するカメラIDに、カメラCk(対象人物の流入が検知されたカメラ)のカメラIDが設定されている端末IDは除外してもよい。
【0181】
そして、測位サーバ201は、抽出した対象人物の特徴量と、取得した複数の端末IDそれぞれに対応する特徴量とを比較することにより、対象人物の特徴量との類似度を算出する(ステップS1307)。つぎに、測位サーバ201は、複数の端末IDのうち、算出した類似度が最も高い特徴量に対応する端末IDを特定する(ステップS1308)。
【0182】
これにより、測位サーバ201は、カメラCkの撮影範囲内に現れた対象人物の特徴量に対応する端末ID(第1の端末識別子)を特定することができる。
【0183】
そして、測位サーバ201は、情報管理テーブル220内の特定した端末ID(第1の端末識別子)に対応するカメラIDに、カメラCkのカメラIDを設定して(ステップS1309)、
図14に示すステップS1401に移行する。
【0184】
図14のフローチャートにおいて、まず、測位サーバ201は、ステップS1304またはS1309において設定したカメラIDのカメラCkにより撮影された画像を取得する(ステップS1401)。そして、測位サーバ201は、取得した画像に基づいて、カメラCkの撮影範囲内からの対象人物の流出を検知したか否かを判断する(ステップS1402)。
【0185】
ここで、対象人物の流出を検知していない場合(ステップS1402:No)、測位サーバ201は、取得した画像に基づいて、対象人物のカメラ内の位置を算出する(ステップS1403)。つぎに、測位サーバ201は、算出したカメラ内の位置を用いて、情報管理テーブル220内の端末ID(第1の端末識別子)に対応する端末管理情報のカメラ内の位置を更新する(ステップS1404)。
【0186】
そして、測位サーバ201は、端末ID(第1の端末識別子)に対応する測位結果を出力して(ステップS1405)、ステップS1401に戻る。測位結果は、端末ID(第1の端末識別子)と、対象人物の位置とを対応付けて表す情報である。対象人物の位置は、例えば、情報管理テーブル220内の端末ID(第1の端末識別子)に対応するカメラ内の位置(カメラ座標系の位置)をグローバル座標系の位置に座標変換したものである。
【0187】
また、ステップS1402において、対象人物の流出を検知した場合(ステップS1402:Yes)、測位サーバ201は、情報管理テーブル220内の端末ID(第1の端末識別子)に対応するカメラIDをクリアして(ステップS1406)、本フローチャートによる一連の処理を終了する。
【0188】
これにより、測位サーバ201は、カメラCkの撮影範囲内に現れた対象人物がフレーム外となるまで、カメラCkによって順次撮像される画像から、対象人物の移動軌跡を算出することができる。
【0189】
以上説明したように、実施の形態にかかる測位サーバ201によれば、端末Tiからのビーコン信号に基づいて、対象領域TAへの端末Tiを所持した人物の進入を検知することができる。また、測位サーバ201によれば、人物の進入を検知したことに応じて、カメラC1によって人物が対象領域TAに進入した際に撮影された画像から、人物の特徴量を抽出することができる。そして、測位サーバ201によれば、端末Tiからのビーコン信号に含まれる端末IDと対応付けて、抽出した特徴量を記憶部710に登録することができる。カメラC1は、例えば、対象領域TA内に設置されたカメラC1~Cpのうち、対象領域TAの入口付近に設置されたカメラである。
【0190】
これにより、測位サーバ201は、対象領域TAへの人物の進入時に、人物が所持する端末Tiの端末IDと、人物の特徴量とを紐付けることができる。例えば、測位サーバ201は、端末Tiからのビーコン信号(スキャンレスポンス)の受信状況によって、端末Tiを所持する人物の入店を検知することができる。また、測位サーバ201は、店舗への入店時に、入店した人物が入口付近に設置されたカメラC1に写る可能性が高いことを利用して、端末Tiの端末IDと、人物の特徴量とを精度よく紐付けることができる。
【0191】
また、測位サーバ201によれば、カメラC1~CpのうちのいずれかのカメラCkの撮影範囲内への対象人物の流入を検知したことに応じて、記憶部710を参照して、カメラCkによって撮影された画像から抽出した対象人物の特徴量に基づいて、対象人物の特徴量に対応する端末ID(第1の端末識別子)を特定することができる。そして、測位サーバ201によれば、カメラCkによって撮像される画像に基づいて、対象人物の位置を算出し、特定した端末ID(第1の端末識別子)と、算出した対象人物の位置とを対応付けることができる。
【0192】
これにより、測位サーバ201は、対象領域TAへの進入時に端末IDと対応付けて登録した人物の特徴量を利用して、カメラCkに写る対象人物を特定し、カメラCkの画像から対象人物のより正確な位置を測定することができる。例えば、測位サーバ201は、BLEビーコンによる測位に比べて、店舗内での顧客の細かな動きを把握可能することができる。
【0193】
また、測位サーバ201によれば、対象領域TA内に設置されたビーコンB1~Bmによって受信される、端末Tiからのビーコン信号に基づいて、端末Tiの位置を算出し、ビーコン信号に含まれる端末IDと対応付けて、算出した端末の位置を記憶部710に記録することができる。また、測位サーバ201によれば、カメラCkの撮影範囲内への対象人物の流入を検知した場合、記憶部710を参照して、カメラCkの所定範囲内に存在する端末の端末IDに対応する特徴量を取得することができる。そして、測位サーバ201によれば、カメラCkによって撮影された画像から抽出した対象人物の特徴量と、取得した特徴量とに基づいて、端末ID(第1の端末識別子)を特定することができる。
【0194】
これにより、測位サーバ201は、ビーコンB1~Bmを利用して測定される、対象領域TA内の各端末のおおよその位置を利用して、特徴量の比較対象となる端末を絞り込んだ上で、対象人物の特徴量に対応する端末ID(第1の端末識別子)を特定することができる。このため、測位サーバ201は、対象領域TA内の全ての端末を比較対象とする場合に比べて、対象人物の特徴量に対応する端末IDの特定にかかる処理負荷および処理時間を軽減することができる。
【0195】
また、測位サーバ201によれば、カメラCkの撮影範囲からの対象人物の流出を検知するまで、カメラCkによって撮像される画像に基づいて、対象人物の位置を算出することができる。
【0196】
これにより、測位サーバ201は、カメラCkに写る対象人物が移動してフレーム外となるまで、対象人物が移動した軌跡を追跡することができる。
【0197】
また、測位サーバ201によれば、対応付けた端末ID(第1の端末識別子)と対象人物の位置とを出力することができる。
【0198】
これにより、測位サーバ201は、情報処理システム200の管理者などに対して、対象領域TA内の対象人物(端末Tiを所持する人物)の正確な位置を示す測位結果を提供することができる。
【0199】
また、測位サーバ201によれば、ビーコンB1によって端末Tiからのビーコン信号が受信され、かつ、当該ビーコン信号に含まれる端末IDが記憶部710に登録されていない場合に、対象領域TAへの端末Tiを所持した人物の進入を検知することができる。ビーコンB1は、例えば、対象領域TA内に設置されたビーコンB1~Bmのうち、対象領域TAの入口付近に設置されたビーコンである。
【0200】
これにより、測位サーバ201は、端末Tiからのビーコン信号がビーコンB1によって最初に受信されたときに、端末Tiを所持した人物の対象領域TAへの進入を検知することができる。例えば、店舗への入店時は端末Tiからのビーコン信号(スキャンレスポンス)を、入口付近に設置されたビーコンB1によって最初に受信する可能性が高いことを利用して、端末Tiを所持した人物の入店をより早く確実に検知することができる。
【0201】
これらのことから、測位サーバ201によれば、スーパーマーケットなどの店舗内での顧客の細かな動きに応じて適切なレコメンド情報やクーポンを提供可能にして、顧客の購買意欲を促進することができる。例えば、管理者は、精肉コーナーで立ち止まっている顧客の端末Tiに対して、焼肉のタレのレコメンド情報やクーポンを送ることで、顧客が欲している商品の情報を適切なタイミングで提供可能となり、顧客の購買意欲を促進することができる。
【0202】
また、測位サーバ201によれば、端末側にUWBや導線記録可能なデバイスを付加することなく、比較的低コストで汎用性の高いビーコンと店内カメラを利用して、店舗内での顧客の細かな動きを捉えることができる。また、測位サーバ201によれば、人物が写るカメラCkが変わっても、端末IDと紐付けた人物の特徴量から、人物の同一性を確保できるため、複数のカメラにわたる顧客の動作軌跡を捉えることが可能となり、店舗での導線解析などに役立てることができる。
【0203】
また、上述した説明では、対象領域TAが、商業施設、複合商業施設、レジャー施設、展示会会場などである場合を想定したが、これに限らない。例えば、測位サーバ201は、対象領域TAを「工場」とし、端末Tiを所持する人物を「作業員」とすることで、工場内の安全管理に役立てることもできる。具体的には、例えば、測位サーバ201は、工場内での作業員の導線解析を行うことで、作業員が集中して、作業の妨げや危険な状態となっている箇所を精度よく特定することができる。
【0204】
なお、本実施の形態で説明した測位方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本測位プログラムは、ハードディスク、フレキシブルディスク、CD-ROM、DVD、USBメモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本測位プログラムは、インターネット等のネットワークを介して配布してもよい。
【0205】
また、本実施の形態で説明した情報処理装置101(測位サーバ201)は、スタンダードセルやストラクチャードASIC(Application Specific Integrated Circuit)などの特定用途向けICやFPGAなどのPLD(Programmable Logic Device)によっても実現することができる。
【0206】
上述した実施の形態に関し、さらに以下の付記を開示する。
【0207】
(付記1)端末からのビーコン信号に基づき対象領域への当該端末を所持した人物の進入を検知したことに応じて、前記対象領域内に設置された複数のカメラのうちの第1のカメラによって前記人物が前記対象領域に進入した際に撮影された画像から、前記人物の特徴量を抽出し、前記ビーコン信号に含まれる前記端末を識別する端末識別子と対応付けて、抽出した前記特徴量を記憶部に登録し、
前記複数のカメラのうちのいずれかのカメラの撮影範囲内への対象人物の流入を検知したことに応じて、前記記憶部を参照して、前記いずれかのカメラによって撮影された画像から抽出した前記対象人物の特徴量に基づいて、前記対象人物の特徴量に対応する第1の端末識別子を特定し、
前記いずれかのカメラによって撮像される画像に基づいて、前記対象人物の位置を算出し、特定した前記第1の端末識別子と、算出した前記対象人物の位置とを対応付ける、
処理をコンピュータに実行させることを特徴とする測位プログラム。
【0208】
(付記2)前記対象領域内に設置された複数のビーコン通信機によって受信される、前記端末からのビーコン信号に基づいて、前記端末の位置を算出し、
前記ビーコン信号に含まれる前記端末を識別する端末識別子と対応付けて、算出した前記端末の位置を前記記憶部に記録する、
処理を前記コンピュータに実行させ、
前記第1の端末識別子を特定する処理は、
前記いずれかのカメラの撮影範囲内への対象人物の流入を検知した場合、前記記憶部を参照して、前記いずれかのカメラの所定範囲内に存在する端末の端末識別子に対応する特徴量を取得し、
前記いずれかのカメラによって撮影された画像から抽出した前記対象人物の特徴量と、取得した前記特徴量とに基づいて、前記第1の端末識別子を特定する、
ことを特徴とする付記1に記載の測位プログラム。
【0209】
(付記3)前記算出する処理は、
前記いずれかのカメラの撮影範囲からの前記対象人物の流出を検知するまで、前記いずれかのカメラによって撮像される画像に基づいて、前記対象人物の位置を算出する、ことを特徴とする付記1または2に記載の測位プログラム。
【0210】
(付記4)前記第1のカメラは、前記対象領域の入口付近に設置されたカメラである、ことを特徴とする付記1~3のいずれか一つに記載の測位プログラム。
【0211】
(付記5)対応付けた前記第1の端末識別子と前記対象人物の位置とを出力する、
処理を前記コンピュータに実行させることを特徴とする付記1~4のいずれか一つに記載の測位プログラム。
【0212】
(付記6)前記検知する処理は、
前記対象領域内に設置された複数のビーコン通信機のうちの第1のビーコン通信機によって前記端末からのビーコン信号が受信され、かつ、当該ビーコン信号に含まれる端末識別子が前記記憶部に登録されていない場合に、前記対象領域への当該端末を所持した人物の進入を検知する、ことを特徴とする付記1~5のいずれか一つに記載の測位プログラム。
【0213】
(付記7)前記第1のビーコン通信機は、前記対象領域の入口付近に設置されたビーコン通信機である、ことを特徴とする付記6に記載の測位プログラム。
【0214】
(付記8)端末からのビーコン信号に基づき対象領域への当該端末を所持した人物の進入を検知したことに応じて、前記対象領域内に設置された複数のカメラのうちの第1のカメラによって前記人物が前記対象領域に進入した際に撮影された画像から、前記人物の特徴量を抽出し、前記ビーコン信号に含まれる前記端末を識別する端末識別子と対応付けて、抽出した前記特徴量を記憶部に登録し、
前記複数のカメラのうちのいずれかのカメラの撮影範囲内への対象人物の流入を検知したことに応じて、前記記憶部を参照して、前記いずれかのカメラによって撮影された画像から抽出した前記対象人物の特徴量に基づいて、前記対象人物の特徴量に対応する第1の端末識別子を特定し、
前記いずれかのカメラによって撮像される画像に基づいて、前記対象人物の位置を算出し、特定した前記第1の端末識別子と、算出した前記対象人物の位置とを対応付ける、
処理をコンピュータが実行することを特徴とする測位方法。
【0215】
(付記9)端末からのビーコン信号に基づき対象領域への当該端末を所持した人物の進入を検知したことに応じて、前記対象領域内に設置された複数のカメラのうちの第1のカメラによって前記人物が前記対象領域に進入した際に撮影された画像から、前記人物の特徴量を抽出し、前記ビーコン信号に含まれる前記端末を識別する端末識別子と対応付けて、抽出した前記特徴量を記憶部に登録し、
前記複数のカメラのうちのいずれかのカメラの撮影範囲内への対象人物の流入を検知したことに応じて、前記記憶部を参照して、前記いずれかのカメラによって撮影された画像から抽出した前記対象人物の特徴量に基づいて、前記対象人物の特徴量に対応する第1の端末識別子を特定し、
前記いずれかのカメラによって撮像される画像に基づいて、前記対象人物の位置を算出し、特定した前記第1の端末識別子と、算出した前記対象人物の位置とを対応付ける、
制御部を有することを特徴とする情報処理装置。
【符号の説明】
【0216】
100 対象領域
101 情報処理装置
102,107,T1~Tn,Ti 端末
103,103b,C1~Cp,Ck カメラ
105,600,901,902,903 人物
104 ビーコン通信機
106 対象人物
110,710 記憶部
120,130,820 画像
200 情報処理システム
220 情報管理テーブル
201 測位サーバ
202 管理端末
210 ネットワーク
300,400 バス
301,401 CPU
302,402 メモリ
303 ディスクドライブ
304 ディスク
305,404 通信I/F
306 可搬型記録媒体I/F
307 可搬型記録媒体
403 ビーコン通信回路
405 ディスプレイ
406 入力装置
601~613 骨格
700 制御部
701 第1の検知部
702 抽出部
703 登録部
704 第1の算出部
705 第2の検知部
706 特定部
707 第2の算出部
708 対応付け/出力部
801 出入口
810 端末情報
910 画像群
1000 測位結果ファイル
103a 第1のカメラ
104a 第1のビーコン通信機