以下、図面を用いて本発明の実施の形態を説明する。
<第1の実施形態>
図1は、本発明の第1の実施形態の施設モニタリングシステムの構成を示すブロック図である。
本実施形態の施設モニタリングシステムは、モニタリングサーバ100、画面表示装置120、一つ以上のセンサ130、一つ以上の移動体端末140、一つ以上の環境側測位装置150及びそれらを相互に接続するネットワーク160A及び160Bを備える。
モニタリングサーバ100は、監視区域内の移動体端末140の位置情報に基づいて、その移動体端末140を保持する監視対象者の行動を監視する。
ここで、監視区域とは、本実施形態の施設モニタリングシステムによる監視の対象の区域であり、例えば工場又は店舗等の施設である。監視区域が工場である場合、監視対象者は例えば工場の従業員であり、監視区域が店舗である場合、監視対象者は例えば店舗の従業員又は店舗の利用客である。なお、本実施形態では監視区域の典型例として工場内などの屋内を例示するが、屋外を監視する場合にも本発明を適用することができる。
監視区域の監視を行うために、モニタリングサーバ100は、センサ情報管理部101、測位記録管理部102、センサ・測位統合部103、動線解析部104、分析条件調整部105、分析条件設定画面生成部106、分析結果画面生成部107、センサ情報データベース(DB)111、測位DB112、屋内地図DB113、分析情報DB114及びユーザDB115を備える。これらの各部が実行する処理、各DBに格納されるデータ、及び、これらを実現するためのハードウェア構成については後述する。
画面表示装置120は、例えばCRT(Cathode Ray Tube)又は液晶表示装置等である。画面表示装置120に表示される画面の例については後述する。
図1の例では、センサ130がネットワーク160Aを介してモニタリングサーバ100に接続され、移動体端末140及び環境側測位装置150がネットワーク160Bを介してモニタリングサーバ100に接続される。このように、独立したネットワークが設けられてもよく、それらの種類が互いに異なっていてもよいが、単一のネットワークが共用されてもよい。これらのネットワークは、LAN(Local Area Network)、WAN(Wide Area Network)、公衆無線網、又はインターネット等であってもよい。また、ネットワークの形態は有線又は無線のいずれであってもよい。
移動体端末140は、各監視対象者が携行する装置である。本実施形態では、移動体端末140の位置情報が利用されるため、移動体端末140又は環境側測位装置150の少なくとも一方が移動体端末140の位置を計測する機能を備える必要がある。例えば、移動体端末140は、携帯電話機、PHS(Personal Handyphone System)、無線通信機能付きのコンピュータ、PDA(Personal Digital Assistants)又は少なくとも固有の識別情報を送信する無線タグ等である。
移動体端末140が例えばGPS(Global Positioning System)測位装置を備える携帯電話機又はPHSである場合、移動体端末140は、GPS測位装置によって取得された位置情報に、移動体端末140を識別する情報(ID情報、例えば電話番号)を付加し、ネットワーク160Bを介してそれらの情報をモニタリングサーバ100に送信する。移動体端末140は、GPS測位装置による測位の代わりに、例えば基地局から送信された信号を用いた測位を行ってもよい。この場合、測位のための信号を送信する基地局が環境側測位装置150であってもよい。
移動体端末140が例えばコンピュータ又はPDA等である場合、移動体端末140が監視区域内に設置された複数の無線LANアクセスポイント又は電波ビーコンから送信される電波、光ビーコンから放射される光信号の強度(又は受信タイミング)に基づいて移動体端末140の位置を計算し、計算された位置を示す情報に移動体端末140のID情報を付加し、それらの情報をモニタリングサーバ100に送信してもよい。この場合、無線LANアクセスポイント、電波ビーコン又は光ビーコンが環境側測位装置150であってもよい。
環境側測位装置150が無線LANアクセスポイントである場合、移動体端末140がID情報とともに測位信号を送信し、複数の環境側測位装置150が測位信号を受信した時刻を計測してもよい。各環境側測位装置150の位置が予め知られていれば、その位置と、測位信号の受信時刻の差とに基づいて、例えば三角測量と同様の方法を用いることによって、移動体端末140の位置を計算することができる。このような測位技術の一例として、AirLocation(登録商標)が知られている。
移動体端末140が無線タグである場合、環境側測位装置150は、移動体端末140にアクセスする送受信装置である。例えば、移動体端末140がいわゆるRFID(Radio Frequency Identification)タグである場合、複数の環境側測位装置150が監視区域の所定の位置に設置され、移動体端末140を身につけた監視対象者がいずれかの環境側測位装置150に接近すると、環境側測位装置150が無線信号を用いて移動体端末140のID情報を取得する。
そして、環境側測位装置150は、取得したID情報に自身の位置を特定できる情報を付加してそれらをモニタリングサーバ100に送信する。環境側測位装置150自身の位置を特定できる情報とは、例えばその環境側測位装置150のID情報であってもよいし、その環境側測位装置150の座標を示す情報であってもよい。各環境側測位装置150のID情報と座標との対応関係が予め知られていれば、ID情報から環境側測位装置150の位置を特定することができる。環境側測位装置150の位置に基づいて、そこに接近した移動体端末140の近似的な位置を特定することができる。
あるいは、移動体端末140は、所定の測位信号を送信する無線タグであってもよい。複数の環境側測位装置150が測位信号を受信した時刻を計測し、その時刻の差に基づいて移動体端末140の位置を特定することができる。測位信号に移動体端末140のID情報が含まれていれば、環境側測位装置150は、そのID情報と、計測された位置情報とをモニタリングサーバ100に送信することができる。
モニタリングサーバ100は、各移動体端末14のID情報と、それを携行する監視対象者の識別情報とを対応付ける情報を予め保持していれば、その情報に基づいて、受信した位置情報がどの監視対象者の位置を示しているかを特定することができる。
具体的には、ユーザDB115には、各監視対象者を識別する情報(例えば監視対象者の氏名又は従業員コード等)と、各監視対象者が保持する移動体端末140を識別する情報と、を対応付ける情報が登録される。
センサ130は、監視区域における監視対象者の行動を示す情報を取得して、取得した情報を、ネットワーク160Aを介してモニタリングサーバ100に送信する。以下、主に、センサ130が監視カメラである例について説明するが、センサ130は、その他のセンサ、例えばマイクロフォン、超音波センサ又は赤外線センサ等であってもよいし、販売履歴をモニタリングサーバ100に送信する機能を備える自動販売機等であってもよい。
センサ130が監視カメラである場合、各センサ130が、監視区域内の各センサ130に割り当てられた所定の範囲を所定のタイミングで(例えば定期的に)撮影し、それによって得られた画像データをモニタリングサーバ100に送信する。送信された画像データは、センサ情報管理部101によってセンサ情報DB111に格納される。この画像データは、静止画像データ又は動画像データのいずれであってもよい。動画像データの場合、所定のフレームレートでの撮影が連続的に行われてもよいし、一定時間の撮影が所定の時間間隔で断続的に繰り返されてもよい。このように撮影された画像を参照することによって、ある時間帯のある範囲における監視対象者の行動を把握することができる。
センサ130がマイクロフォンである場合、監視区域内の各マイクロフォンに割り当てられた所定の範囲の音が連続的に又は断続的に収録される。収録された音声データは、モニタリングサーバ100に送信され、センサ情報管理部101によってセンサ情報DB111に格納される。格納された音声データに基づいて、監視対象者の行動(例えば歩行、停止、物体を移動させる動作、ドアを開閉する動作、施錠・開錠動作、梱包・開梱動作等)を検出することができる。
図2は、本発明の第1の実施形態のモニタリングサーバ100のハードウェア構成を示すブロック図である。
本実施形態のモニタリングサーバ100は、相互に接続されたプロセッサ201、メインメモリ202、入力装置203、インターフェース(I/F)205及び記憶装置206を備える計算機である。
プロセッサ201は、メインメモリ202に格納されたプログラムを実行する。
メインメモリ202は、例えば半導体メモリであり、プロセッサ201によって実行されるプログラム及びプロセッサ201によって参照されるデータを格納する。具体的には、記憶装置206に格納されたプログラム及びデータの少なくとも一部が、必要に応じてメインメモリ202にコピーされる。
入力装置203は、施設モニタリングシステムの管理者(すなわち、モニタリングサーバ100を使用して監視対象者を監視する者)からの入力を受ける。入力装置203は、例えばキーボード及びマウス等を含んでもよい。
I/F205は、ネットワーク160A及び160Bに接続され、センサ130、移動体端末140及び環境側測位装置150と通信するインターフェースである。ネットワーク160A及び160Bが互いに独立したものである場合、モニタリングサーバ100は複数のI/F205を備え、それらのうち一つがネットワーク160Aに、別の一つがネットワーク160Bに接続される。
記憶装置206は、例えばハードディスク装置(HDD)又はフラッシュメモリのような不揮発性の記憶装置である。本実施形態の記憶装置206には、少なくとも、センサ情報管理部101、測位記録管理部102、センサ・測位統合部103、動線解析部104、分析条件調整部105、分析条件設定画面生成部106、分析結果画面生成部107、センサ情報データベース(DB)111、測位DB112、屋内地図DB113、分析情報DB114及びユーザDB115が格納される。
センサ情報管理部101、測位記録管理部102、センサ・測位統合部103、動線解析部104、分析条件調整部105、分析条件設定画面生成部106及び分析結果画面生成部107は、プロセッサ201によって実行されるプログラムである。以下の説明においてこれらの各部が実行する処理は、実際にはプロセッサ201によって実行される。
なお、図1に示すモニタリングサーバ100は、図2に示すように一つの計算機によって構成されてもよいが、相互に通信可能な複数の計算機によって構成されてもよい。例えば、一方の計算機がセンサ情報管理部101、測位記録管理部102、センサ情報DB111及び測位DB112を備え、もう一方の計算機が残りの部分を備えてもよい。あるいは、一方の計算機がセンサ情報管理部101等の処理部を備え、もう一方の計算機がセンサ情報DB111等のデータベースを備えてもよい。
図3は、本発明の第1の実施形態の施設モニタリングシステムの動作の全体を示すフローチャートである。
屋内地図DB113が整備された後に、図3に示す処理が開始される。屋内地図DB113の内容については後述する(図9及び図10参照)。
本実施形態の施設モニタリングシステムは、データ収集ステップ310及びデータ分析ステップ320を実行する。
データ収集ステップ310は、センシング結果及び測位結果を収集するために実行される。
具体的には、センサ130がセンシングを行い(ステップ331)、その結果をセンサ情報管理部101に送信する。移動体端末140又は環境側測位装置150は、測位を行い(ステップ332)、その結果を測位記録管理部102に送信する。送信される測位結果は、少なくとも移動体端末140の位置を示す情報を含む。送信される情報の詳細な内容については後述する(図6及び図7参照)。
センサ情報管理部101及び測位記録管理部102は、それぞれ、受信した情報をセンサ情報DB111及び測位DB112に格納する(ステップ311)。
データ分析ステップ320は、収集され、データベースに格納されたセンシング結果及び測位結果を分析するために実行される。例えば、モニタリングサーバ100は、所定の期間にわたってセンシング結果及び測位結果を収集し(データ収集ステップ310)、その後、収集されたセンシング結果及び測位結果を分析するためにデータ分析ステップ320を実行してもよい。
具体的には、最初に、動線解析部104が、測位DB112に格納された位置情報に基づいて動線解析処理を実行する(ステップ321)。この処理の詳細については後述する(図11等参照)。
次に、分析条件設定画面生成部106が動線解析処理の結果に基づいて分析状況提示処理を実行する(ステップ322)。管理者は、この処理によって提示された分析状況を参照して、指示を入力する(ステップ333)。分析条件設定画面生成部106は、入力された指示に基づいて、分析結果が妥当か否かを判定する(ステップ323)。分析結果が妥当であると判定された場合、分析結果提示処理が実行され(ステップ326)、処理が終了する。
分析結果が妥当でない(すなわち分析結果を補正する必要がある)と判定された場合、分析条件設定画面生成部106は、分析条件設定画面提示処理を実行する(ステップ324)。この処理の詳細については後述する。
次に、分析条件調整部105が分析条件調整処理を実行する(ステップ325)。そして、処理はステップ321に戻る。
図4は、本発明の第1の実施形態において実行される測位結果の送付処理を示すシーケンス図である。
具体的には、図4は、図3のデータ収集ステップ310のうち、測位結果の収集のために実行される処理を示す。
移動体端末140は、測位を行い、それによって得られた情報を含む測位結果を測位記録管理部102に送信する(ステップ401)。測位記録管理部102は、受信した情報を含む測位データを測位DB112に格納する(ステップ402)。これらの処理が繰り返し実行され(ステップ405、406)、測位DB112に測位データが蓄積される。
一方、環境側測位装置150も測位を行い、それによって得られた情報を測位記録管理部102に送信する(ステップ403)。測位記録管理部102は、受信した情報を測位DB112に格納する(ステップ404)。図4では省略されているが、これらの処理も繰り返し実行され、測位DB112に測位データが蓄積される。
なお、図4は、施設モニタリングシステムにおいて複数の測位方法が併用される例を示している。通常、監視区域を含む施設は複数の監視対象者によって使用されるため、監視区域内に複数の移動体端末140が存在しうる。それらの複数の移動体端末140が全て同種の装置であるとは限らない。例えば、ある移動体端末140がGPS測位装置を備える携帯電話機であり、別の移動体端末140が無線タグである場合もある。この場合、携帯電話機の位置情報を含む測位結果はステップ401に示すように携帯電話機自身から送信され、無線タグの位置情報を含む測位結果はステップ403に示すように環境側測位装置150から送信される。
なお、一つの測位方法のみが使用される場合には、測位結果は移動体端末140又は環境側測位装置150の一方のみから送信される。
図5は、本発明の第1の実施形態において実行されるセンサ情報の送付処理を示すシーケンス図である。
具体的には、図5は、図3のデータ収集ステップ310のうち、センシング情報の収集のために実行される処理を示す。
センサ130は、センシングを行い、それによって得られた情報をセンサ情報管理部101に送信する(ステップ501)。センサ情報管理部101は、受信したセンシング結果を含むセンサ情報をセンサ情報DB111に格納する(ステップ502)。センサ情報DB111に格納されるセンサ情報については後述する(図8参照)。これらの処理が繰り返し実行され(ステップ503〜506)、センサ情報DB111にセンシング結果が蓄積される。
次に、図6〜図10を参照して、本実施形態の施設モニタリングシステムにおいて使用されるデータの例を説明する。
図6は、本発明の第1の実施形態の移動体端末140又は環境側測位装置150から送信される測位結果の説明図である。
既に説明したように、移動体端末140又は環境側測位装置150は、移動体端末140の位置を計測し、その結果として得られた位置情報を、モニタリングサーバ100に送信する。このようにして送信される測位結果の例を図6に示す。
測位結果600は、歩行者ID601、測位系ID602、X座標603、Y座標604及び時刻605を含む。
歩行者ID601は、監視対象者を一意に識別する情報であり、例えば、電話番号、MAC(Media Access Control)アドレス又はRFIDタグの識別情報のような、監視対象者が携行する移動体端末140の識別情報であってもよい。
測位系ID602は、測位手段を示すコードである。例えば、GPS測位によって取得された座標値を含む測位結果600の測位系ID602として「0」が、環境側測位装置150によって取得された座標値を含む測位結果600の測位系ID602として「1」が付与されてもよい。
X座標603及びY座標604は、監視区域内における移動体端末140の(すなわちそれを携行する監視対象者の)位置を、二次元直交座標系中の座標値として特定する情報である。X座標603及びY座標604にさらにZ座標を加えて三次元の位置情報を扱ってもよい。これらの座標値は一例であり、必ずしも直交座標系を用いなくてもよい。例えば、移動体端末140がGPS測位装置を備える場合、X座標603及びY座標604として経度及び緯度を示す情報が含まれてもよい。さらに、必要があれば高度を示す情報が含まれてもよい。
時刻605は、測位が行われた時刻(言い換えると、測位結果600が取得された時刻)を示す。時刻605は、必要に応じて、測位が行われた年月日を示す情報を含んでもよい。
測位記録管理部102は、測位結果600を受信すると、測位データを生成して測位DB112に格納する。測位データは、少なくとも、測位結果600に含まれる位置情報を含む。ただし、測位系ごとに異なる座標系が使用される場合には、測位記録管理部102が測位結果600に含まれる座標値(すなわちX座標603及びY座標604)を変換することによって、測位データに含まれる座標値をいずれかの座標系に統一してもよい。このような変換は公知の方法によって実行できるため、詳細な説明は省略する。また、測位系ごとに異なる種類の歩行者ID(例えば電話番号、MACアドレス又はRFID等)が使用される場合には、測位記録管理部102がそれらのIDをモニタリングサーバ100内で使用される統一的な歩行者IDに変換してもよい。
このようにして生成された測位データのフォーマットは、基本的には測位結果600のフォーマットと同等であってよいが、上記のように測位系に応じた変換が終了しているため、測位データは測位系ID602を含まなくてよい。図6に示す一組の測位結果600は、一人の監視対象者の一つの時刻における位置情報を含み、これが一組の測位データに対応する。測位DB112には、複数の組の測位データ、すなわち、複数の監視対象者に関する複数の時刻における位置情報が格納される。
図7は、本発明の第1の実施形態のセンサ130から送信されるセンサ情報の説明図である。
既に説明したように、センサ130は、センシングを実行し、その結果(センシング結果)をモニタリングサーバ100に送信する。このようにして送信されるセンサ情報の例を図7に示す。
センサ情報700は、センサID701及びデータ702を含む。
センサID701は、センサ情報700を送信したセンサ130を一意に識別する情報である。
データ702は、センサ情報700を送信したセンサ130がセンシングの結果として取得したデータであり、例えば画像データ又は音声データである。このデータ702は、DSP(デジタル信号プロセッサ)によって処理されたデータであっても、処理されていない生のデータであってもよく、また、圧縮データであっても、非圧縮データであってもよい。
センサ130は、単にセンシングの結果である画像データ等を送信してもよいが、そのセンシング結果が前回のセンシング結果から変化したか否かを判定して、その判定の結果をデータ702に含めて送信してもよく、また、その判定の結果のみをデータ702として送信してもよい。
図8は、本発明の第1の実施形態のセンサ情報DB111に格納されるセンサ情報の説明図である。
センサ情報管理部101は、センサ情報700を受信すると、そのセンサ情報700に所定の処理を加えてセンサ情報DB111に格納する。少なくとも、センサ情報管理部101は、センサ情報700を時刻と関連付けて格納する必要がある。
センサ情報800は、センサID801、センサ種別802、時刻803及びデータ804を含む。これらのうち、センサID801及びデータ804は、図7のセンサID701及びデータ702に相当する。すなわち、センサ情報管理部101は、センサ情報700を受信すると、それに含まれるセンサID701及びデータ702をそれぞれセンサID801及びデータ804としてセンサ情報DB111に格納する。
センサ種別802は、センサ情報700を送信したセンサ130の種類、例えば、それが監視カメラであるか、マイクロフォンであるか、又はその他のセンサであるか、を示す。
時刻803は、センシングが行われた時刻を特定する情報である。例えばデータ804が静止画像データである場合、時刻803は、それが撮影された時刻であってもよい。データ804が動画像データ又は音声データのような、ある時間にわたって取得されたものである場合、時刻803は、例えばセンシングの開始時刻とセンシングの時間との組、センシングの開始時刻と終了時刻との組、そのセンシング時間を代表する時刻、又はそれらの組み合わせであってもよい。
なお、一つのセンサ130が取得した、一つの時刻に対応するセンシング結果が、一組のセンサ情報800として格納される。センサ情報DB111には、複数の組のセンサ情報800、すなわち、複数のセンサ130が複数の時刻にセンシングした結果を示す情報が格納される。
次に、屋内地図DB113に格納されるデータの例について説明する。屋内地図DB113には、地図情報900及びセンサパラメータ1000が格納される。
図9は、本発明の第1の実施形態の屋内地図DB113に格納される地図情報900の説明図である。
地図情報900は、地物ID901、種別コード902及び形状903を含む。
地物ID901は、監視区域又はその周辺に存在する地物を一意に識別する情報である。ここで地物とは、床、壁、柱、物体収納棚、パーティション、及び天井から吊り下げられた物体(例えば空調ダクト、スピーカーボックス又は照明器具)等を含む。
種別コード902は、地物の種類を示す情報である。種別コード902は、例えば地物が壁、柱、梁、棚、扉等のいずれであるかを識別する情報であってもよい。各地物の種別コード902に基づいて、その地物によってセンシングが阻害されるか否かを判定することができる。
形状903は、地物の形状及び寸法を特定する情報であり、例えば、その地物の形状を現す座標点列を含む。
一つの地物に関する情報が一組の地図情報900として格納される。屋内地図DB113には、複数の組の地図情報900、すなわち、複数の地物に関する地図情報900が格納される。
図10は、本発明の第1の実施形態の屋内地図DB113に格納されるセンサパラメータ1000の説明図である。
センサパラメータ1000は、センサID1001、種別コード1002、設置箇所1003及びセンサパラメータ1004を含む。
センサID1001は、監視区域内に設置された各センサ130を一意に識別する情報である。種別コード1002は、センサの種類を示す情報である。これらは、それぞれ、センサ情報800のセンサID801及びセンサ種別802と同様の情報であってよい。
設置箇所1003は、監視区域内におけるセンサ130の設置箇所を特定する情報であり、例えば二次元又は三次元の座標値である。
センサパラメータ1004は、センサ130によってセンシング可能な領域を特定する情報である。例えば、センサ130が監視カメラである場合、センサパラメータ1004は、監視カメラの向き、視野角及び解像度等を特定する情報を含んでもよい。センサ130がマイクロフォンである場合、センサパラメータ1004は、マイクロフォンの向き、指向性及び感度等を特定する情報を含んでもよい。
一つのセンサ130に関する情報が一組のセンサパラメータ1000として格納される。屋内地図DB113には、複数の組のセンサパラメータ1000、すなわち、複数のセンサ130に関するセンサパラメータ1000が格納される。
次に、図3に示したステップの詳細について説明する。
図11は、本発明の第1の実施形態のモニタリングサーバ100が実行する動線解析処理を示すフローチャートである。
図11に示す処理は、図3のステップ321において実行される。
最初に、動線解析部104は、測位データの特徴量を算出し、状態ラベルを生成する(ステップ1101)。具体的には、動線解析部104は、算出された特徴量についてクラスタリングを実行することによって、動線が示す監視対象者の行動を複数の状態に分類し、それらの状態にラベルを付与する。この詳細な手順については後述する(図12A〜図12D等参照)。
次に、動線解析部104は、状態ラベルの遷移列を統計モデルに当てはめる(ステップ1102)。この詳細な手順については後述する。
次に、動線解析部104は、統計モデルから情報を抽出する(ステップ1103)。この詳細な手順については後述する。
以上で動線解析処理が終了する。
ステップ1101において実行される特徴量の算出及び状態ラベルの生成について、図12A〜図12Dを参照して説明する。
図12Aは、本発明の第1の実施形態のモニタリングサーバ100が実行する特徴量の算出及び状態ラベルの生成処理を示すフローチャートである。
図12Bは、本発明の第1の実施形態における測位データの分割の説明図である。
図12Cは、本発明の第1の実施形態における特徴量の算出の説明図である。
図12Dは、本発明の第1の実施形態におけるクラスタリングの説明図である。
最初に、動線解析部104は、測位データを時間的に分離する(ステップ1201)。具体的には、例えばある時刻における測位データの特徴量を算出する場合、算出の対象であるその時刻の測位データと、その時刻を含む所定の時間範囲内の測位データと、を測位DB112から取得する。このようにして取得された測位データの例を図12Bに示す。図12Bの黒丸の位置が、算出の対象である測位データが示す位置に相当し、白丸の位置が、所定の時間範囲内の測位データが示す位置に相当する。
次に、動線解析部104は、ステップ1201において取得された測位データから特徴量を算出する(ステップ1202)。特徴量は、例えば、測位データに含まれる位置情報、その位置情報から算出された監視対象者の速度及び加速度、等である。
具体的には、ステップ1201において取得された測位データが複数の時刻における位置情報を含むため、それらに基づいて監視対象者の移動速度を計算することができ、さらに、その移動速度の変化から加速度を計算することができる。図12Cに例示する特徴量は、
(1)10秒前の速度
(2)10秒前の加速度
(3)現在の速度
(4)現在の加速度
(5)10秒後の速度
(6)10秒後の加速度
(7)平均速度
(8)10秒前の点と現在の点との間の距離
である。ここで、「現在」とは特徴量の取得対象である測位データが取得された時刻(すなわちその測位データに対応する時刻605)であり、「10秒前」及び「10秒後」の基準点は上記の「現在」である。
動線解析部104は、一つの測位データの特徴を示す値として、上記のように算出された特徴量のいずれか一つを使用してもよいが、通常は、複数の特徴量の組(例えば上記の8種類の特徴量の組)を使用する。このような複数の特徴量の組は、一般に、それらの特徴量を要素として含むベクトル(すなわち特徴量ベクトル)として扱われる。n次元(上記の例では8次元)の特徴量ベクトルは、n次元空間における点として表現することができる。以下、このような特徴量ベクトル(すなわち特徴量の組)を用いる例を説明する。
なお、上記のような特徴量は一例であり、他の特徴量が計算されてもよい。また、上記の8次元も一例であり、任意の次元の特徴量ベクトルを使用することができる。例えば、特徴量ベクトルの要素として、現在の位置を示す特徴量がさらに含まれてもよい。
次に、動線解析部104は、ステップ1202において算出された特徴量ベクトルを含む複数の特徴量ベクトルをクラスタリングし、状態ラベルを生成する(ステップ1203)。このクラスタリングは、後述するように(図13参照)、k−means法などの公知のアルゴリズムによって実行される。
例えば、動線解析部104は、上記のステップ1201及び1202を複数の監視対象者及び複数の時刻の各々について繰り返し実行することによって、各監視対象者に関する時刻ごとの特徴量ベクトルを算出することができる。このようにして算出された複数の特徴量ベクトルを対象として、クラスタリングが実行される。
例えば、n次元(図12Dの例では2次元)空間における複数の特徴量ベクトル(図12Dにプロットされた複数の黒点)が、複数のクラスタ(図12Dの例ではクラスタA、B及びC)に分類される。図12Dに示す「A」〜「C」は、生成された状態ラベルである。
二つの特徴量ベクトル間の距離が近いことは、それらの特徴量ベクトルが類似していることを意味する。二つの特徴量ベクトルが類似していることは、それらの特徴量ベクトルに対応する監視対象者の行動が同一である可能性が高いことを意味する。
このため、上記のクラスタリングによって一つのクラスタに属すると判定された複数の特徴量ベクトルは、例えばそれらが複数の監視対象者に関するものである場合、それらの監視対象者の同一の行動に対応する可能性が高い。言い換えると、本実施形態のクラスタリングは、監視対象者の行動を測位データに基づいて分類することに相当し、状態ラベルは、分類された行動を識別する標識である。
ここで、ある特徴量ベクトルに対応する監視対象者の行動とは、その特徴量ベクトルの算出の基礎となったある監視対象者に関する測位データが取得されたときに、その監視対象者が行っていた、と管理者によって判断される行動である。また、本実施形態において、同一の行動とは、同一の行動として分類される行動であり、必ずしも完全に同一な行動を意味しない。そして、既に説明したように、二つの行動が同一であるか否かを判定する基準は、監視対象者の行動を監視する目的によって左右される。言い換えると、一つのクラスタに属する複数の特徴量ベクトルは、互いに類似しているため、同一の行動に対応する可能性が高いが、実際には、異なる行動として分類されるべき行動に対応している可能性もある。
本実施形態では、k−means法などによるクラスタリングの結果をさらに調整することによって、クラスタと、管理者が分類したい行動とを適切に対応させることができる。この調整については後述する。
ところで、上記の(1)〜(8)に示すように、特徴量ベクトルが現在の位置を示す情報を含まない場合において、二つの特徴量ベクトルが互いに類似する場合、それらの特徴量ベクトルに対応する行動が監視区域内のどこで行われたかにかかわらず、それらの特徴量ベクトルが一つのクラスタに分類される可能性がある。これは、例えば、「階段を通過する」という行動が監視区域内のどの階段で行われてもそれらを同一の行動と分類することを意味する。このため、行動がどこで行われたかを行動の分類の判断基準に含めたい場合(例えばある位置にある階段を通過する行動と、そことは別の位置にある階段を通過する行動とを別の行動として分類したい場合)、行動が行われた位置そのものを考慮したクラスタリングを行う必要がある。
例えば、特徴量ベクトルに現在の位置を示す情報を含めてもよい。あるいは、動線解析部104は、まず測位データをそれが示す位置に基づいてクラスタリングし、これによって得られた空間的なクラスタごとに、それに含まれる測位データの特徴量ベクトルを算出し、それらのクラスタリングを行ってもよい。本実施形態は、上記のような位置を考慮したクラスタリングが実行されることを前提とする。
図13は、本発明の第1の実施形態のモニタリングサーバ100が実行するクラスタリング処理を示すフローチャートである。
図13に示す処理は、図12Aのステップ1203において実行される。
最初に、動線解析部104は、分析情報DB114を参照して、クラスタリングの対象である特徴量ベクトルに関するクラスタ情報があるか否か(すなわちそれらの特徴量ベクトルが既にクラスタリングされているか否か)を判定する(ステップ1301)。取得された特徴量ベクトルについて最初にクラスタリングを実行する場合、ステップ1301ではクラスタ情報がないと判定される。一方、後述するようにクラスタリング結果に対してパラメータ調整が行われた後、再度動線解析処理が行われる場合(図26参照)には、ステップ1301においてクラスタ情報があると判定される。
ステップ1301においてクラスタ情報がないと判定された場合、動線解析部104は、ランダムにクラスタ中心の初期値を決定する(ステップ1302)。例えば、動線解析部104は、管理者によって指定された数のクラスタ中心の初期値を決定してもよい。あるいは、動線解析部104は、AIC(赤池情報量基準)などの、クラスタ数の妥当性を評価する公知の基準を用い、当該基準が最適になるようにクラスタ数を決定してもよい。
次に、動線解析部104は、各特徴量ベクトルに対応する点とクラスタ中心との距離を算出し、各特徴量ベクトルがそれに最も近いクラスタ中心を含むクラスタ(すなわち最近傍クラスタ)に属するとの仮定に基づいて特徴量ベクトルをクラスタリングし、さらに、各クラスタに属する特徴量ベクトルの平均値を新たなクラスタ中心として決定する(ステップ1303)。
次に、動線解析部104は、ステップ1303においてクラスタ中心が変更されたか否か、すなわち、ステップ1303において決定された新たなクラスタ中心と、その直前のクラスタ中心とが異なるか否かを判定する(ステップ1304)。クラスタ中心が変更された場合、処理はステップ1303に戻り、新たなクラスタ中心を用いたクラスタリング及びその結果に基づくクラスタ中心の計算が実行される。
一方、クラスタ中心が変更されなかった場合、動線解析部104は、測位データから特徴量ベクトルを算出し、各特徴量ベクトルに、最近傍クラスタのIDを割り当てる。なお、以前に算出された特徴量ベクトルが残っていれば、それを使用してもよい。このようにして割り当てられたクラスタのIDが状態ラベルとして使用される。
ステップ1301においてクラスタ情報があると判定された場合、動線解析部104は、ステップ1302〜1304を実行せずにステップ1305を実行する。
以上でクラスタリング処理が終了する。
なお、ステップ1302〜1304は、従来からk−means法として知られたアルゴリズムである。本実施形態のクラスタリング処理は、公知の方法によって実行することができる。k−means法はその一例であるが、その他のアルゴリズム、例えばEM(Expectation-Maximization)法による混合正規分布の推定等が適用されてもよい。
図14は、本発明の第1の実施形態のモニタリングサーバ100によって取得された状態ラベルの説明図である。
図14は、監視区域のレイアウト図1401と、そのレイアウト図1401上に表示された複数の動線1402とを含む。
図14には、レイアウト図1401の例として、監視区域内の地物の平面図を示すが、地物の配置を把握できる図である限り、斜視図又は鳥瞰図等が使用されてもよい。図14に例示するレイアウト図1401には、地物として、部屋1411、廊下1412、部屋1411と廊下1412とを隔てる壁1413、壁1413に設けられた出入り口1414、及び、監視区域内に配置された物品1415(例えば店舗で販売される商品又は工場で使用される資材等)が表示される。さらに上記以外の地物(例えば監視区域が屋外であれば信号機又は横断歩道等)が表示されてもよい。
各動線1402は、一つの移動体端末140に関する測位データに含まれる座標値をレイアウト図1401上にプロットすることによって表示される。すなわち、一つの動線1402は、一人の監視対象者の移動軌跡に相当する。ただし、一人の監視対象者が監視区域を繰り返し通過した場合には、その監視対象者の移動軌跡を複数の動線1402として表示してもよい。図14には、複数の監視対象者の移動軌跡に相当する複数の動線1402が表示される。
楕円によって表示される状態1403A〜1403Lは、クラスタリングによって得られたクラスタに相当する。言い換えると、状態1403A〜1403Lの各々は、クラスタリングによって分類された監視対象者の行動に対応する。
図12B〜図12Dを参照して説明したように、各クラスタに含まれる特徴量ベクトルは、算出対象の測位データを含む複数の測位データから算出される。このため、各クラスタに含まれる特徴量ベクトルの算出対象の測位データが示す座標値をレイアウト図1401上にプロットすることができる。図14に表示される楕円は、各クラスタに含まれる特徴量ベクトルの算出対象の測位データが示す座標値がプロットされる範囲の概略を示す。
状態1403a〜1403lには、それぞれ、識別子「a」〜「l」が付与される。これらの識別子が状態ラベルであり、前述の図13のステップ1305において割り当てられたものである。
図15は、本発明の第1の実施形態のモニタリングサーバ100によって使用される統計モデルの説明図である。
具体的には、図15は、図11のステップ1102における状態ラベル遷移列に当てはめる統計モデルの例を示す。本実施形態では、統計モデルとして混合マルコフモデルが適用される例を示すが、他のモデル(例えば隠れマルコフモデル又はベイジアンネットワーク等)が適用されてもよい。
動線解析部104は、クラスタリングの結果に基づいて、各動線1402上の測位データがどの状態からどの状態に遷移するか、言い換えると、各動線1402に対応する監視対象者の行動がどの状態からどの状態に遷移するか、を特定することができる。さらに、動線解析部104は、このような状態遷移の特定を複数の動線について実行することによって、状態間の遷移確率を算出することができる。
ところで、監視対象者の行動の傾向は、一般に、その監視対象者の特徴によって左右される。そしてそのような行動の傾向を状態遷移の傾向として観測できる場合がある。ここで監視対象者の特徴とは、例えば、監視対象者が工場又は店舗の従業員である場合、監視対象者の作業目的等であり、監視対象者が店舗の利用客である場合、商品に対する監視対象者の好み等である。また、監視対象者が何らかの意図(例えば職務放棄又は窃盗の意図等)を持っている場合には、それも監視対象者の特徴になり得る。すなわち、監視対象者を状態遷移の傾向に従って分類することによって、類似した特徴を持った監視対象者のグループを特定できる場合がある。
また、このような監視対象者の特徴は、監視対象者の属性と関連する場合がある。ここで監視対象者の属性とは、例えば、監視対象者が工場又は店舗の従業員である場合、監視対象者の所属部署、担当業務又は役職等であり、監視対象者が店舗の利用客である場合、監視対象者の年齢層又は性別等である。より具体的に言えば、例えば女性客は店舗内の特定の売り場に頻繁に立ち寄るが、男性客はその売り場にほとんど立ち寄らない、といった行動の傾向の相違がありうる。このような場合には、上記のような状態遷移の傾向に基づく分類によって、監視対象者の属性とその行動の傾向との関連を分析することもできる。
本実施形態の動線解析部104は、複数の監視対象者に関する状態遷移を複数のパターンに分類することができる。
図15には、パターンごとの状態遷移図を示す。一つのパターンの状態遷移図は、図14に示す状態間の遷移を時刻ごとに表示する。例えば、状態1403a−1はある時刻における状態1403a(図14参照)に相当し、状態1403a−2は、その次の時刻における状態1403aに相当する。同様に、状態1403b−1はある時刻における状態1403bに相当し、状態1403b−2は、その次の時刻における状態1403bに相当する。状態1403k−1はある時刻における状態1403kに相当し、状態1403k−2は、その次の時刻における状態1403kに相当する。状態1403l−1はある時刻における状態1403lに相当し、状態1403l−2は、その次の時刻における状態1403lに相当する。このように、図14に示す状態1403a〜1403lが時刻ごとに表示され、それらの間の状態遷移が矢印によって表示される。そして、それぞれの状態遷移確率が計算される。
なお、状態1502Sは各監視対象者が監視区域内に入った瞬間の状態を、状態1502Gは各監視対象者が監視区域内から出た瞬間の状態を示す。以下、状態1502S及び状態1502Gを、単に状態S及び状態Gとも記載する。同様に、状態1403a〜1403lを、それぞれ、単に状態a〜状態lとも記載する
図15にはパターン1501aの状態遷移図のみを示すが、他のパターン(例えばパターン1501b及び1501c)も同様の状態遷移図によって表現することができる。ただし、状態遷移確率の値はパターンごとに異なる。なお、パターンの数としては、3個(パターン1501a〜1501c)に限らず、任意の数(例えばk個)を設定することができる。パターンの数は、例えば管理者によって指定されてもよい。
各パターンの遷移確率はマルコフモデルに従う。状態μから状態νへの遷移確率をP(μ,ν)=ωμνとすると、例えば、状態S−状態a−状態b−状態c−状態e−状態i−状態Gと遷移する動線が得られる確率は、P(S,a)P(a,b)P(b,c)P(c,e)P(e,i)P(i,G)の掛け算によって算出される。これによって算出された値Lは、動線が確率モデルのパターンに当てはまる度合いを示す。一般には、確率の対数を用いて、ΣlogPが計算される。
本実施形態のモデルは、k個のマルコフモデルの足し算によって表現される。πは、それらの各々に付けられる重みである。つまり、logΣ(πΠP)によって対数尤度が求められる。
状態遷移確率を示すパラメータは、例えばEM法によって算出される。例えば、動線解析部104は、各パターンにおける状態遷移確率の初期値としてランダムな値を設定する。そして、その値に基づいて、各動線の状態遷移がどのパターンに当てはまるかを推定する(Eステップ)。次に、動線解析部104は、Eステップの結果を用いてパラメータを再計算する(Mステップ)。さらに、動線解析部104は、再計算したパラメータを用いて再度Eステップを実行する。このように、パラメータが収束するまでEステップ及びMステップを繰り返す。
図16は、本発明の第1の実施形態のモニタリングサーバ100によって実行される状態遷移抽出処理の説明図である。
具体的には、図16は、図11のステップ1103において抽出される状態遷移の例を示す。
図16の例では、状態1403aから状態1403cへ向かう矢印1601が表示されている。これは、状態1403aから状態1403cへの遷移が発生していることを示す。すなわち、これらの状態間の遷移確率は0%より大きい。他の矢印(例えば状態1403cから状態1403d、1403e及び1403fのそれぞれへ向かう矢印)についても同様のことが言える。一方、状態1403aから状態1403dへ向かう矢印は表示されていない。これは、少なくとも図14に表示された動線において、状態1403aから状態1403dへの遷移が発生していないことを示す。すなわち、これらの状態間の遷移確率は0%である。
このようにして抽出された状態遷移を示す情報が分析情報DB114に格納される。その詳細を、図17及び図18を参照して説明する。
図17は、本発明の第1の実施形態の分析情報DB114に格納される状態遷移モデルの説明図である。
図15に示した方法によって計算された各パターンの状態遷移確率は図17に示すように格納される。具体的には、状態遷移モデル1700は、パターンID1701、始状態ラベル1702、終状態ラベル1703及び確率1704を含む。
パターンID1701は、統計モデルのパターンを識別する。例えば、パターンID1701の値は図15に示す「k」に対応する。
始状態ラベル1702及び終状態ラベル1703は、それぞれ、状態遷移の始点及び終点のラベル(すなわちID)である。これらは、例えば、図14〜図16に示す「S」、「G」及び「a」〜「l」に対応する。
確率1704は、パターンID1701、始状態ラベル1702及び終状態ラベル1703によって特定される状態遷移が発生する確率である。
図17に示す情報の一組は、一つの状態遷移、例えば、図15に示す1本の矢印に対応する。分析情報DB114には、各パターンの各状態遷移に対応する情報の組が格納される。
図18は、本発明の第1の実施形態の分析情報DB114に格納されるクラスタ情報の説明図である。
図18に示すクラスタ情報1800は、クラスタリングによって取得されたクラスタに関する情報である。具体的には、クラスタ情報1800は、クラスタ形状1801及びクラスタID1802を含む。
クラスタ形状1801は、各クラスタの中心位置を示す。
クラスタID1802は、各クラスタを識別する情報である。なお、既に説明したように原則的には一つのクラスタが一つの状態に対応するため、クラスタID1802の値は状態ラベル(例えば図14〜図16に示す「a」〜「l」)に対応する。
図18に示すクラスタ情報1800の一組は、一つの状態、例えば、図14に示す一つの楕円に対応する。分析情報DB114には、各状態に対応する情報の組が格納される。なお、図15に示すように統計モデルが複数のパターンに分類される場合であっても、各状態に対応するクラスタの中心位置は、パターンごとに相違しない。このため、クラスタ情報1800はパターンIDを含まない。
本実施形態及びその他の実施形態において説明するように、本発明では分析の粒度の調整が行われ、その結果、一つのクラスタが複数に分割されたり、複数のクラスタが統合されて一つの状態に対応付けられたりする場合がある。そのような調整の結果も全て図17及び図18に示す分析情報DB114に反映される。分析情報DB114に格納された情報は、必要に応じて読み出され、動線解析部104によって動線解析処理に使用される。さらに、必要に応じて画面表示装置120によって表示されてもよい。
図19は、本発明の第1の実施形態の画面表示装置120によって表示される分析状況提示処理の出力画面の説明図である。
分析条件設定画面生成部106は、図3のステップ322において、図19に示す画面1900を画面表示装置120に表示させる。画面1900は、レイアウト図1901、調整ボタン1903、終了ボタン1904及びパターン選択ボックス1905を含む。
レイアウト図1901は、図14に示したレイアウト図1401と同様である。レイアウト図1901上には、図14と同様の状態1403a〜1403l及び状態遷移を示す矢印1601が表示される。
管理者は、パターン選択ボックス1905を操作して、表示されるパターンを選択することができる。図19の例では「パターンA」が表示される。このパターンは、例えば、図15に示した複数のパターン1501a〜1501cのいずれかである。図16の例では状態1403eから状態1403iへの遷移が表示されているが、例えばパターンAにおいてその遷移が発生する確率が0%である場合、状態1403i及びそこに向かう矢印が表示されなくてもよい。他の状態及びそこに向かう矢印についても同様である。
管理者は、画面1900に表示された状態遷移を参照して、分析条件が妥当であると判定した場合(ステップ323)、終了ボタン1904を操作する。この場合、処理はステップ326に進む。一方、管理者は、分析条件が妥当でないと判定した場合、調整ボタン1903を操作する。この場合、処理はステップ324に進む。
例えば、画面1900に表示された状態1403a〜1403lのいずれかが大きすぎる(すなわちそれに対応するクラスタが大きすぎる)と管理者が考えた場合に、分析条件が妥当でないと判定してもよい。より詳細には、例えば、管理者が詳細に分析したいと考えている行動が行われる場所に、状態が一つしか表示されておらず、その状態を複数に分割したいと管理者が考えた場合に、分析条件が妥当でないと判定してもよい。
なお、調整ボタン1903、終了ボタン1904及びパターン選択ボックス1905の操作は、管理者による入力装置203の操作(例えばマウスクリック)である。
図20は、本発明の第1の実施形態のモニタリングサーバ100が実行する分析条件設定画面提示処理を示すフローチャートである。
図20に示す処理は、図3のステップ324において、分析条件設定画面生成部106によって実行される。
最初に、分析条件設定画面生成部106は、分析条件受付画面提示処理を実行する(ステップ2001)。この処理については、図21を参照して後述する。
次に、分析条件設定画面生成部106は、分析条件調整用画面提示処理を実行する(ステップ2002)。この処理については、図22等を参照して後述する。
以上で分析条件設定画面提示処理が終了する。
図21は、本発明の第1の実施形態のモニタリングサーバ100が実行する分析条件受付画面提示処理の説明図である。
分析条件設定画面生成部106は、図20のステップ2001において、図21に示す画面2100を画面表示装置120に表示させる。
画面2100は、レイアウト図2101、分析粒度設定部2102及び終了ボタン2104を含む。
レイアウト図2101は、図14に示したレイアウト図1401と同様である。レイアウト図2101上には、図14と同様に、状態1403a〜1403l及び複数の動線1402が表示される。さらに、レイアウト図2101上には、調整範囲2111及び範囲指定カーソル2112が表示される。
管理者は、入力装置203を用いて範囲指定カーソル2112を操作することによって、これから分析粒度を調整しようとするクラスタ(すなわち状態1403a〜1403lの少なくとも一つ)を含む調整範囲2111を指定することができる。すなわち、調整範囲2111に含まれる状態1403に対応するクラスタが、分析粒度を調整する対象として指定される。
例えば、管理者は、監視区域のうち、特に監視対象者の行動を詳細に分析したい領域(例えば店舗内の特定の商品の売り場等)を調整範囲2111として指定してもよい。
分析粒度設定部2102は、粒度設定ノブ2103を含む。管理者は、入力装置203を用いて粒度設定ノブ2103を操作することによって、分析粒度を指定することができる。例えば、分析粒度をより細かくしたい場合、管理者は、粒度設定ノブ2103を左に移動させてもよい。なお、このようなノブを用いた粒度の指定は一例であり、他の方法、例えば、粒度をより細かくする又はより粗くする指示に対応するアイコンを操作することによって粒度が指定されてもよい。
管理者は、調整範囲2111及び分析粒度の指定が終了すると、終了ボタン2104を操作する。これによって、図20のステップ2001、すなわち、調整対象のクラスタの指定及びそのクラスタの分析粒度の指定が終了する。
このようにして指定された調整範囲2111に含まれる全てのクラスタについて、指定された分析粒度の調整(すなわち粒度を細かくする又は粗くする)が実行されてもよいが、それらのうち少なくとも一つのクラスタについて、粒度を調整するか否かを管理者がセンサ情報に基づいて判定してもよい。このような判定及び粒度の調整の手順について以下に説明する。
図22は、本発明の第1の実施形態のモニタリングサーバ100が実行する分析条件調整用画面提示処理を示すフローチャートである。
図22に示す処理は、図20のステップ2002において実行される。
最初に、分析条件設定画面生成部106が対象歩行者選択処理を実行する(ステップ2201)。この処理については、図23を参照して後述する。なお、ここで歩行者とは、監視対象者を意味する。
次に、センサ・測位統合部103がセンサ・測位対応処理を実行する(ステップ2202)。この処理については、図24を参照して後述する。
次に、分析条件設定画面生成部106がセンサ情報提示画面生成処理を実行する(ステップ2203)。この処理については、図25を参照して後述する。
以上で分析条件調整用画面提示処理が終了する。
図23は、本発明の第1の実施形態のモニタリングサーバ100が実行する対象歩行者選択処理(ステップ2201)の説明図である。
最初に、分析条件設定画面生成部106は、調整範囲2111に含まれるクラスタのうち、複数の行動を含む可能性が最も高いクラスタ(言い換えると、含まれている行動を複数に分類できる可能性が最も高いクラスタ)を、変更対象の候補として選択する。
具体的には、例えば、調整範囲2111に含まれるクラスタのうち、大きさが所定の閾値を超える一つ以上のクラスタが選択されてもよいし、あるいは、最も大きいクラスタのみが選択されてもよい。クラスタの大きさは、例えば、クラスタの半径又はクラスタに含まれる特徴量ベクトルの数によって定められる。ここで、クラスタの半径とは、例えばクラスタの中心と、そのクラスタ内の中心から最も離れた特徴量ベクトルと、の間の距離であるが、特徴量ベクトルが示す座標値の偏差に基づく値(例えば標準偏差の値)がクラスタの半径として計算されてもよい。半径が大きいクラスタほど、相違の大きい特徴量ベクトルを含んでいる。二つの特徴量ベクトルの相違が大きいほど、それらに対応する行動が異なる可能性が高いとの推測に基づいて、半径が最も大きいクラスタが変更対象の候補として選択されてもよい。あるいは、含んでいる特徴量ベクトルの数が多いクラスタほど複数の行動を含む可能性が高いとの推測に基づいて、含んでいる特徴量ベクトルの数が最も多いクラスタが選択されてもよい。
次に、分析条件設定画面生成部106は、選択されたクラスタに含まれる複数の特徴量ベクトルから二つを選択する。例えば、選択されたクラスタに含まれる特徴量ベクトルのうち最も離れた二つが選択されてもよい。あるいは、選択されたクラスタに含まれる複数の特徴量ベクトルを対象として分析条件設定画面生成部106がさらにクラスタリングを実行して二つのクラスタを生成し、それぞれの中心に最も近い二つの特徴量ベクトルを選択してもよい。
なお、ここでは二つの特徴量ベクトルを選択する例を示したが、三つ以上の特徴量ベクトルが選択されてもよい。例えば、選択されたクラスタを対象として分析条件設定画面生成部106がクラスタリングを実行することによって三つ以上のクラスタを生成してもよい。
このようにして選択された特徴量ベクトルは、図14に示す方法によって算出されたものであるから、それらの特徴量ベクトルに対応する測位データを特定することができる。特定された測位データからは、その測位データが、どの時刻に、どの位置に、どの監視対象者がいたことを示すものであるかを特定することができる(図6参照)。
図24は、本発明の第1の実施形態のモニタリングサーバ100が実行するセンサ・測位対応処理を示すフローチャートである。
図24に示す処理は、図22のステップ2202において実行される。
最初に、センサ・測位統合部103は、監視区域に設置された各センサ130のセンシング領域を取得する(ステップ2401)。センシング領域とは、各センサ130によってセンシング可能な領域であり、具体的には、センサパラメータ1000に含まれる設置箇所1003及びセンサパラメータ1004に基づいて特定される。より具体的には、例えばセンサ130が監視カメラである場合、その監視カメラによって撮影される範囲が特定され、特定された範囲を示す情報がセンシング領域として取得される。
次に、センサ・測位統合部103は、図22のステップ2201において特定された測位データに対応するセンサ130を検索する(ステップ2402)。具体的には、センサ・測位統合部103は、ステップ2401において取得されたセンシング領域と、ステップ2201において特定された測位データが示す時刻及び位置と、に基づいて、当該測位データが示す時刻に、当該測位データが示す位置をセンシング可能であったセンサ130のセンサIDを特定する。
次に、センサ・測位統合部103は、特定されたセンサIDによって識別されるセンサ130が、当該測位データが示す時刻に取得したセンサ情報をセンサ情報DB111から取得する(ステップ2403)。例えば、特定されたセンサ130が監視カメラである場合、ステップ2403で取得されるセンサ情報は、当該測位データが示す時刻に当該監視カメラが撮影した画像データである。
以上でセンサ・測位対応処理が終了する。
図25は、本発明の第1の実施形態の画面表示装置120によって表示されるセンサ情報提示画面の説明図である。
分析条件設定画面生成部106は、図22のステップ2203において、センサ情報提示画面2500を画面表示装置120に表示させる。センサ情報提示画面2500は、第1センサ情報表示部2501、第1歩行者情報表示部2502、第2センサ情報表示部2503、第2歩行者情報表示部2504、「区別あり」ボタン2505、「不明」ボタン2506及び「区別なし」ボタン2507を含む。
既に説明したように、図22のステップ2201では二つの測位データが特定され、ステップ2202ではそれぞれの測位データに対応するセンサ情報が取得される。第1センサ情報表示部2501及び第2センサ情報表示部2503には、このようにして取得されたそれぞれの測位データに対応するセンサ情報(図25の例では監視カメラが撮影した画像)が表示される。
第1歩行者情報表示部2502及び第2歩行者情報表示部2504には、それぞれ、第1センサ情報表示部2501及び第2センサ情報表示部2503に表示されたセンサ情報に対応する監視対象者に関する情報が表示される。上記のように、それぞれのセンサ情報には測位データが対応付けられ、それぞれの測位データがどの監視対象者に関するものであるかを特定することができるため、第1歩行者情報表示部2502及び第2歩行者情報表示部2504には、それぞれの監視対象者に関する情報、例えば、各監視対象者の性別、各監視対象者が監視区域に入った時刻及び監視区域に滞在した時間等が表示される。
なお、監視対象者の性別を表示するためには、モニタリングサーバ100が各監視対象者の識別子(図6に示す歩行者ID)と、その監視対象者の性別とを対応付ける情報を保持する必要がある。同様に、各監視対象者とその年齢、性別、担当業務又は役職等の属性を対応付ける情報が保持されている場合、それらの属性が第1歩行者情報表示部2502及び第2歩行者情報表示部2504に表示されてもよい。
また、各監視対象者が監視区域に入った時刻及び監視区域に滞在した時間は、各監視対象者に対応する動線に含まれる測位データの取得時刻に基づいて特定することができる。
上記のように、第1センサ情報表示部2501及び第2センサ情報表示部2503には、図22のステップ2201で特定された二つの測位データに対応するセンサ情報、すなわち、それぞれの測位データが取得された時刻にそれぞれの測位データが示す位置を含む領域を監視カメラが撮影した画像が表示される。すなわち、それぞれの測位データに対応する監視対象者がそれらの画像に写っている可能性が高い。すなわち、管理者がそれらの画像を参照して、それぞれの監視対象者がどのような行動を行っているかを特定できる可能性が高い。
このため、管理者は、第1センサ情報表示部2501及び第2センサ情報表示部2503に表示された画像を参照して、ステップ2201において特定された二つの特徴量ベクトルに対応する二つの行動を異なる行動として区別すべきか、区別すべきでないか(すなわち同一の行動に分類すべきか)を判定する。管理者は、これらを区別すべきであると判定した場合、「区別あり」ボタン2505を操作し、区別すべきでないと判定した場合、「区別なし」ボタン2507を操作する。
一方、表示された画像に基づいて区別すべきか否かを判定することが困難であった場合、管理者は、「不明」ボタン2506を操作する。この場合、分析条件設定画面生成部106は、再びステップ2201を実行して、前回とは異なる二つの特徴量ベクトルを選択する。例えば、分析条件設定画面生成部106は、選択されたクラスタに含まれる特徴量ベクトルのうち、前回選択された特徴量ベクトルの次に距離が離れている特徴量ベクトルの組を選択してもよい。そして、再びステップ2202及び2203が実行され、新たに選択された特徴量ベクトルに対応するセンサ情報が表示される。
一般に、測位データのみから算出された特徴量ベクトルに基づいて監視対象者の行動を分析する場合、管理者が望んだとおりに行動を分類できるとは限らない。しかし、上記のように、測位データに対応付けられたセンサデータを管理者が参照して二つの行動を分類するか否かを判定することによって、管理者の目的に応じた適切な行動の分析を行うことが可能になる。
なお、図25にはセンサ情報として監視カメラが撮影した画像が表示される例を示したが、それ以外のセンサ情報が提示されてもよい。例えばセンサ130がマイクロフォンである場合、ステップ2203において音声が再生されてもよい(第2実施形態参照)。その場合、管理者は、再生された音声に基づいて各監視対象者が行った行動を特定し、それに基づいて二つの行動を区別するか否かを判定することができる。
あるいはセンサ130が販売履歴を記録する自動販売機である場合、センサ情報提示画面2500にはその販売履歴が表示されてもよい。その場合、管理者は、例えば、表示された販売履歴に基づいて監視対象者が商品を購入したか否かを判定し、それに基づいて二つの行動を区別するか否かを判定することができる。
また、管理者は、上記のようなセンサ情報を用いずに、二つの行動を区別すべきか否かを判定することもできる。例えば、モニタリングサーバ100は、ステップ2201において特定された二つの測位データの各々が、いつ、どこに、どの監視対象者がいたことを示す情報であるかを示す情報を管理者に提示してもよい。管理者は、このようにして特定された各監視対象者から、特定された時刻及び位置においてどのような行動を行っていたかを聞き出し、それに基づいて二つの行動を区別するか否かを判定してもよい。
図26は、本発明の第1の実施形態のモニタリングサーバ100が実行する分析条件調整処理を示すフローチャートである。
センサ情報提示画面2500において「区別あり」ボタン2505が操作されると、分析条件調整処理が実行される。
最初に、分析条件調整部105は、動線解析パラメータを算出する(ステップ2601)。具体的には、分析条件調整部105は、図22のステップ2201において選択されたクラスタを分割し、分割されたそれぞれのクラスタの中心位置を特定し、それらのクラスタに新たな識別子(すなわち状態ラベル)を付与する。
クラスタの分割は、種々の方法によって行うことができる。例えば、ステップ2201において、当該クラスタ内で最も離れた二つの特徴量ベクトルが選択された場合、分析条件調整部105は、当該クラスタを、選択された二つの特徴量ベクトルに対応する新たな二つのクラスタに分割し、当該クラスタ内の残りの特徴量ベクトルを、選択された二つの特徴量ベクトルのうち距離が近い方に対応するクラスタに分類してもよい。その場合、分析条件調整部105は、新たな二つのクラスタの中心位置を算出し、状態ラベルを付与する。
あるいは、動線解析部104が当該クラスタのみを対象として、当該クラスタをさらに二つのクラスタに分割するためのクラスタリングを実行し、分析条件調整部105が分割されたクラスタの中心位置を算出し、状態ラベルを付与してもよい。このとき、動線解析部104は、ステップ2201において選択された二つの特徴量ベクトルを初期クラスタ中心としてクラスタリングを実行してもよい。
次に、分析条件調整部105は、算出された動線解析パラメータを分析情報DB114に反映させる(ステップ2602)。具体的には、分析条件調整部105は、ステップ2601において算出した新たなクラスタの中心位置と、それらに付与された識別子とを、分析情報DB114にクラスタ情報1800として格納する。このとき、分割の対象となったクラスタ(すなわち分割される前のクラスタ)に関する情報は、分析情報DB114から削除される。
次に、分析条件調整部105は、動線解析部104に動線解析処理の再実行を要求する(ステップ2603)。この要求を受けた動線解析部104は、ステップ2602において更新された分析情報DB114に基づいて、動線解析処理(図11等)を実行する。ただし、この場合、上記のように更新されたクラスタ情報1800が既に分析情報DB114に格納されているため、クラスタリング処理(図13)のステップ1301において、「クラスタ情報がある」と判定される。このため、クラスタリングの実行(ステップ1302〜1304)は省略され、ステップ2602において更新された分析情報DB114がステップ1102以降の処理において参照される。
以上で分析条件調整処理が終了する。
管理者は、動線解析処理の再実行の結果を参照して(図19)、その結果が十分であるか、具体的には、管理者が区別したい行動がそれぞれ異なる状態(すなわちクラスタ)に対応しているか否かを判定することができる。この判定のために、既に説明した手順に従って、図25に示す画面を参照することもできる。再実行の結果が十分なものである(すなわちこれ以上行動を細かく分類する必要がない)と判定された場合、終了ボタン1904又は「区別なし」ボタン2507が操作され、図3に示した全ての処理が終了する。
以上の本発明の第1の実施形態によれば、監視対象者の行動を動線に基づいて分析するときに、クラスタリングによって自動的に行動を分類するだけでなく、管理者の指定に従って、分析の粒度(すなわち行動の分類の細かさ)を調整することができる。これによって、監視対象者の位置情報から、管理者の分析目的に応じて、必要な情報を抽出することができる。
<第2の実施形態>
続いて、本発明の第2の実施形態について説明する。第2の実施形態において第1の実施形態と共通する部分に関する説明は省略し、相違点についてのみ以下に説明する。
最初に、第2の実施形態の概要を説明する。
第1の実施形態では、既に説明したように、測位データから特徴量ベクトルが算出され、複数の特徴量ベクトルをクラスタリングすることによってクラスタ(すなわち、分類された行動に対応する「状態」)が特定され、状態間の遷移確率が計算される。さらに、管理者の指定に従って、クラスタをさらに分割することができる。
しかし、実際には、特定の状態遷移を一つの状態として扱うことが望ましい場合がある。一例として、屋外の監視区域において、監視対象者が信号機のある横断歩道を渡るという行動について述べる。この行動に対応する測位データから、上記のクラスタリングによって、信号機のある横断歩道の一方の端まで移動するという行動に対応する状態aと、その地点で(信号機が進行を表示するまで)停止したまま待つという行動に対応する状態bと、横断歩道をもう一方の端まで移動するという行動に対応する状態cと、が抽出され得る。しかし、このような一連の行動の各々に対応する状態を抽出する必要はなく、「横断歩道を渡る」という行動全体に対応する一つの状態Aを抽出したい場合もあり得る。
第2の実施形態では、上記のような一連の行動に対応する複数の状態ラベルの列(例えば「abc」)と、それに対応する一つの状態ラベル(例えば「A」)とを対応付ける情報(すなわち状態判定辞書)に基づいて、クラスタリングによって抽出された複数の状態から、一つの状態が推定される。
なお、以下の説明では、特徴量ベクトルのクラスタリングの結果として取得された上記の「a」「b」「c」のような状態及びその状態ラベルと、それらの列に割り当てられた「A」のような状態及びその状態ラベルとを区別するために、便宜上、前者を「移動状態」及び「移動状態ラベル」と記載し、後者を「状態」及び「状態ラベル」と記載する。「移動状態」及び「移動状態ラベル」は、第1の実施形態の「状態」及び「状態ラベル」に相当する。「状態ラベル」が割り当てられなかった「移動状態ラベル」は、後述する状態ラベルの遷移列の統計モデルへの当てはめ(図27のステップ1102)及び統計モデルからの情報抽出(図27のステップ1103)において、「状態ラベル」として扱われる。
続いて、第2の実施形態の詳細について図面を参照して説明する。
図27は、本発明の第2の実施形態のモニタリングサーバ100が実行する動線解析処理を示すフローチャートである。
図27に示す処理は、第1の実施形態の動線解析処理(図11)と同様、図3のステップ321において実行される。
最初に、動線解析部104は、測位データの特徴量を算出し、移動状態ラベルを生成する(ステップ1101)。この手順は第1の実施形態と同じである(図12A等参照)。
次に、動線解析部104は、ステップ1101において生成された移動状態ラベルと、状態判定辞書とを比較し、その結果に基づいて状態ラベルを推定する(ステップ2701)。
本実施形態の分析情報DB114には、図17及び図18に示した情報に加えて、状態判定辞書2800及び状態判定設定情報2900が格納される。これらの情報の詳細については図28及び図29を参照して、これらの情報に基づく状態ラベルの推定処理については図30A〜図32を参照して後述する。
次に、動線解析部104は、ステップ2701において推定された状態ラベルに基づいて、状態ラベル遷移列を統計モデルに当てはめる(ステップ1102)。次に、動線解析部104は、統計モデルから情報を抽出する(ステップ1103)。これらの手順は第1の実施形態と同じである(図15等参照)。
以上で第2の実施形態の動線解析処理が終了する。
図28は、本発明の第2の実施形態の分析情報DB114に格納される状態判定辞書の説明図である。
状態判定辞書2800は、状態ラベル2801、移動状態記号列2802、空間条件2803及び条件粒度2804を含む。
状態ラベル2801は、状態を一意に識別する情報である。これは、移動状態ラベルの列に割り当てられるべき状態ラベルであり、ステップ2701において推定された状態ラベルに相当する。上記の横断歩道の例で言えば、「A」が状態ラベル2801に相当する。
移動状態記号列2802は、状態ラベル2801によって識別される状態(すなわち当該状態)に対応する移動状態の記号列情報である。上記の横断歩道の例で言えば、「abc」が移動状態記号列2802に相当する。より詳細な例については後述する。
空間条件2803は、周囲の地物の条件を指定する文字列である。周囲の地物の条件として、例えば、状態判定辞書2800と比較される移動状態ラベルの列に対応する動線の周囲の地物の種類、その地物から当該動線までの距離及びその地物から当該動線上の点までの方向等を示す情報が含まれる。この文字列は、どのような文法によって記述されてもよい。その一例はXML(Extensible Markup Language)である。上記の横断歩道の例で言えば、地物の属性が信号機であること、その信号機からの距離、及びその信号機からの方向等を示す文字列が空間条件2803に相当する。
条件粒度2804は、条件の粒度(すなわち細かさ)を表現するレベルである。例えば、上記のように「横断歩道を渡る」という行動に対応する状態Aを抽出することが望まれる場合もあるが、さらに大きい(すなわち粗い)粒度で状態を抽出したい場合、より具体的には、例えば、ある地点から別のある地点に移動する(そしてその途中で上記の横断歩道を通過する)という行動に相当する状態Bを抽出することが望まれる場合もあり得る。このような場合には、当該「ある地点から別のある地点に移動する」という行動に対応する移動状態ラベルの列(すなわち上記の「abc」を含む、それより長い列)が移動状態記号列2802として登録され、それに対応する条件粒度2804として、上記の「横断歩道を渡る」に対応する条件粒度2804より大きい粒度を示す値が登録される。
ただし、粒度の大きさは、それに対応する移動状態ラベルの列の長さに必ずしも依存しない。例えば、「横断歩道を渡る」行動は、さらに、監視対象者が横断歩道の一方の端で停止した後、もう一方の端に移動するという行動と、停止せずに移動するという行動とに分類することができる場合がある。この場合、「横断歩道を渡る」行動に対応する粒度は、「一旦停止した後で横断歩道を渡る」行動の粒度及び「停止せずに横断歩道を渡る」行動の粒度より大きくなる。
条件粒度2804の値は、管理者が手動で設定してもよいが、モニタリングサーバ100が自動で設定してもよい。自動で設定する場合、例えば、空間条件2803によって指定された地物の大きさが小さいほど、細かい粒度を示す値を設定してもよいし、移動状態記号列2802の長さが短いほど、細かい粒度を示す値を設定してもよい。
上記のように、例えば空間条件2803として地物「信号機」からの距離及び方向の範囲が定められ、それに対応する状態ラベル2801及び移動状態記号列2802としてそれぞれ「A」及び「abc」が登録されている場合において、信号機からの距離及び方向が当該定められた範囲内にある動線から移動状態ラベルの列「abc」が抽出された場合、その動線が監視対象者の「横断歩道を渡る」という行動に対応すると判定される。
状態判定辞書2800として、上記のような状態ラベル2801〜条件粒度2804の複数の組が登録され得る。例えば、別の空間条件2803として地物「本棚」が登録され、それに対応する所定の移動状態記号列2802の値と、それに対応する行動「本棚から本を取る」に対応する状態ラベル2801の値と、それらに対応する条件粒度2804の値と、の組が登録されてもよい。以下の説明においてこれらの組の各々を辞書項目と記載する。
図29は、本発明の第2の実施形態の分析情報DB114に格納される状態判定設定情報の説明図である。
状態判定設定情報2900は、空間条件2901及び条件粒度2902を含む。これらは、それぞれ、状態判定辞書2800の空間条件2803及び条件粒度2804と同様のものである。ただし、初期状態において状態判定設定情報2900は空であり、条件粒度が設定されたときに、その結果が状態判定設定情報2900に格納される。
続いて、図27のステップ2701において実行される処理について説明する。ステップ2701では、まず、図30A〜図30Cに示すように、状態判定辞書に基づく状態ラベルの推定処理が実行される。
図30Aは、本発明の第2の実施形態のモニタリングサーバ100が実行する状態判定辞書に基づく状態ラベルの推定処理を示すフローチャートである。
図30Bは、本発明の第2の実施形態における状態判定辞書の項目の検索処理の説明図である。
図30Cは、本発明の第2の実施形態における状態ラベルの割り当ての説明図である。
最初に、動線解析部104は、ステップ1101において生成された移動状態ラベルの列に対応する動線の周囲の地物の配置が空間条件2803を満たす辞書項目を状態判定辞書2800から検索する(ステップ3001)。例えば、当該動線が本棚の近くを通り、部屋の中を通り、さらに別のいくつかの地物の近くを通る場合に、それらの地物と当該動線との位置関係が、状態判定辞書2800に登録された各辞書項目の空間条件2803を満たすか否かが判定され、満たすと判定された辞書項目が検索の結果として取得される(図30B参照)。
次に、動線解析部104は、ステップ3001において検索された辞書項目の移動状態記号列2802と、ステップ1101において生成された移動状態ラベルの列とを比較し、それらが類似する場合、その辞書項目の状態ラベル2801を当該移動状態ラベルの列に対応する状態ラベルとして割り当てる(ステップ3002)。
この比較、及び、類似するか否かの判定は、公知の方法によって行うことができる。例えば、当該移動状態ラベルの列から切り出された区間と、移動状態記号列2802との一致度が計算され、その一致度が所定の閾値より高ければ、その区間に、移動状態記号列2802に対応する状態ラベル2801が割り当てられてもよい(図30C参照)。このような比較を、移動状態ラベルの列から切り出された全区間について行い、最も一致度が高い区間が選択されてもよい。二つの区間の一致度は、例えば、それらの区間において一致する移動状態ラベルの個数等に基づいて算出される。
なお、状態判定設定情報2900の条件粒度2902として粒度が指定されている場合には、その指定された粒度に対応する辞書項目がステップ3001において検索される。しかし、初期状態においては、条件粒度2902として粒度が指定されていない。この場合には、最も粗い粒度の辞書項目が検索される。このため、図30A〜図30Cに示した状態ラベルの推定処理によって推定された状態ラベルの粒度が、管理者にとって望ましい粒度より大きい可能性がある。このため、動線解析部104は、より細かい粒度の状態ラベルを推定するか否かを管理者に判定させる処理を実行する。これについて図31A〜図32を参照して説明する。
図31Aは、本発明の第2の実施形態のモニタリングサーバ100が実行する分析パラメータ調整候補選択処理を示すフローチャートである。
図31Bは、本発明の第2の実施形態における同一状態ラベルが割り当てられた区間の検索処理の説明図である。
図31Cは、本発明の第2の実施形態におけるより細かい粒度の状態の特定処理の説明図である。
図31Dは、本発明の第2の実施形態における一致度が高い状態の選択処理の説明図である。
複数の動線について図30A〜図30Cに示した状態ラベルの推定処理が実行された後に分析パラメータ調整候補選択処理が実行される。
最初に、動線解析部104は、分析パラメータ調整候補選択処理によって同一の状態ラベルが割り当てられた移動状態ラベルの列の複数の区間を選択する(ステップ3101)。例えば、ある移動状態ラベルの列(すなわち移動状態遷移列)の区間「abbbabbbaa」に状態ラベル「A」が割り当てられ、別の区間「abbabbbbaa」にも状態ラベル「A」が割り当てられている場合、これらの区間が選択されてもよい(図31B参照)。
次に、動線解析部104は、ステップ3101において選択された各区間について、前回の状態ラベルの推定処理において適用されたものより細かい条件粒度2804に対応する移動状態記号列2802と一致するか否か(より正確には、一致度が所定の閾値より高いか否か)を判定する(ステップ3102)。図31Cの例では、上記の区間「abbbabbbaa」に、状態ラベル「A」より細かい条件粒度2804に対応する状態ラベル「C」に対応する移動状態記号列2802が一致すると判定され、区間「abbabbbbaa」には、状態ラベル「D」に対応する移動状態記号列2802が一致すると判定される。
動線解析部104は、同様の処理を、例えば状態ラベルの推定処理によって状態ラベル「A」が割り当てられた複数の区間について行う。その結果、例えば、それらの複数の区間のうちいくつかは状態ラベル「C」に対応する移動状態記号列2802と一致し、別のいくつかは状態ラベル「D」に対応する移動状態記号列2802と一致し、さらに別のいくつかは状態ラベル「E」に対応する移動状態記号列2802と一致すると判定されたと仮定する。この場合、動線解析部104は、一致すると判定された区間の数が多い順に二つの状態ラベル(例えば「C」及び「D」)を選択し、さらに、それぞれに対応する移動状態記号列2802との一致度が高い区間を選択する(ステップ3103及び図31D)。
そして、モニタリングサーバ100は、選択された区間に対応するセンサ情報を管理者に提示する。この提示処理は第1の実施形態と同様に実行される(図24参照)。これによって提示されるセンサ情報の例について、図32を参照して説明する。
図32は、本発明の第2の実施形態の画面表示装置120によって表示されるセンサ情報提示画面の説明図である。
図32に示すセンサ情報提示画面3200は、第1センサ情報表示部3201、第1歩行者情報表示部2502、第2センサ情報表示部3203、第2歩行者情報表示部2504、「区別あり」ボタン2505、「不明」ボタン2506及び「区別なし」ボタン2507を含む。これらのうち第1歩行者情報表示部2502、第2歩行者情報表示部2504、「区別あり」ボタン2505、「不明」ボタン2506及び「区別なし」ボタン2507は、第1の実施形態において説明したものと同じであるため、説明を省略する。
第1センサ情報表示部3201及び第2センサ情報表示部3203は、それぞれ、第1音声再生ボタン3202及び第2音声再生ボタン3204を含むことを除いて、第1の実施形態の第1センサ情報表示部2501及び第2センサ情報表示部2503と同じである。第1音声再生ボタン3202及び第2音声再生ボタン3204は、センサ130としてマイクロフォンが設置されている場合に使用される。管理者が第1音声再生ボタン3202及び第2音声再生ボタン3204を操作すると、それぞれに対応する音声(例えば、上記の選択された状態ラベル「C」及び「D」に対応する時刻及び位置において録音された音声)が再生される。
管理者は、提示された画像又は音声を参照して、例えば状態Aを状態C、D等に区別する必要があるか否かを判定する。区別する必要があると判定された場合、「区別あり」ボタン2505が操作され、動線解析部104は、ステップ3102の結果に従って、より粒度が細かい状態ラベルを割り当てる。例えば、状態ラベル「A」に代えて、状態ラベル「C」、「D」及び「E」等が割り当てられる。さらに、この場合、状態ラベル「C」等に対応する条件粒度2804の値が状態判定設定情報2900の条件粒度2902として登録される。
なお、第1の実施形態においても同様の方法によって音声が再生されてもよい。
上記の処理の結果、例えば、移動状態ラベルの列「abbbabbbaa」に状態ラベル「C」が割り当てられると判定された場合、移動状態a及び移動状態bが新たな状態Cに統合される。すなわち、移動状態aに対応するクラスタに含まれる全ての特徴量ベクトル、及び、移動状態bに対応するクラスタに含まれる全ての特徴量ベクトルを含む新たなクラスタが生成され、そのクラスタに対応する状態ラベルとして「C」が割り当てられる。そのクラスタの中心位置及び周囲のクラスタとの間の遷移確率等が計算され、分析情報DB114に格納される(図17及び図18参照)。
以上の本発明の第2の実施形態によれば、特定の移動状態の列に対応する、より粒度の大きい状態を自動的に抽出することができ、さらに、その粒度が大きすぎない適切な値となるように管理者が調整することができる。
<第3の実施形態>
続いて、本発明の第3の実施形態について説明する。第3の実施形態において第1又は第2の実施形態と共通する部分に関する説明は省略し、相違点についてのみ以下に説明する。
第1及び第2の実施形態では、複数の監視対象者の動線を分析するための粒度が調整された。これに対して、第3の実施形態では、一人の監視対象者の動線を分析するための粒度が調整される。
図33Aは、本発明の第3の実施形態のモニタリングサーバ100が実行する分析パラメータ調整候補選択処理を示すフローチャートである。
図33Bは、本発明の第3の実施形態におけるより細かい粒度の状態の特定処理の説明図である。
第2の実施形態と同様の方法によって、移動状態ラベルの列の区間(例えば「abbbabbbaa」)に対応する状態ラベル(例えば「A」)が特定されると、第3の実施形態の動線解析部104は、当該区間に一致するより粒度の細かい状態を特定する(ステップ3301)。例えば、状態判定辞書2800に、状態ラベル「F」、「G」及び「H」のそれぞれに対応する移動状態記号列「ab」、「bba」及び「bbbaa」が登録されている場合、上記の移動状態ラベルの列「abbbabbbaa」の先頭の二つが状態ラベル「F」に、次の三つが状態ラベル「G」に、残りの五つが状態ラベル「H」に対応する(図33B参照)。
例えば、状態Aが「横断歩道を渡る」という行動に対応する場合、状態Fが「横断歩道の一方の端まで移動する」という行動に対応し、状態Gが「信号機が進行を表示するまで停止したまま待つ」という行動に対応し、状態Hが「横断歩道をもう一方の端まで移動する」という行動に対応してもよい。
この場合、動線解析部104は、特定された状態ラベルのうち二つを選択する(ステップ3302)。図33Bに示した例では、いずれの状態の一致率も100%(すなわち完全一致であるが、一致率に差がある場合には一致率が高い方から二つが選択されてもよい。このようにして選択された二つの状態について、第2の実施形態と同様の手順によってセンサ情報が管理者に提示される。管理者は、提示されたセンサ情報を参照して、粒度を細かくするか否かを判定することができる。
以上の本発明の第3の実施形態によれば、一人の監視対象者の動線から状態を抽出する粒度を管理者が調整することができる。これによって、一人の人物が続けて行う行動をどのように切り分けて分析するかを決定することができる。
<第4の実施形態>
続いて、本発明の第4の実施形態について説明する。第4の実施形態において第1から第3の実施形態と共通する部分に関する説明は省略し、相違点についてのみ以下に説明する。
第1の実施形態では、クラスタリングによって取得されたクラスタ(すなわち状態)から、分割対象の候補が選択され、管理者が分割を指示した場合にはそのクラスタが二つに分割された。一方、第4の実施形態では、パターンの分類に寄与する可能性が低い二つのクラスタが統合される。
例えば、ある場所においてある行動を行った全ての監視対象者が、それに続いて別のある行動を必ず行うのであれば、それらの行動を区別したとしても、パターンの分類に寄与しない。第4の実施形態ではそのような行動を抽出して統合する。
図34は、本発明の第4の実施形態の分析情報DB114に格納される状態判定設定情報の説明図である。
図34に示す状態判定設定情報は、統合対象状態ラベル3401を含む。これは、統合対象として選択された状態ラベルの配列である。
次に、本実施形態の対象歩行者選択処理について説明する。本実施形態の対象歩行者選択処理は、第1の実施形態の対象歩行者選択処理の代わりに(またはそれと併せて)図22のステップ2201において実行されてもよい。
分析条件設定画面生成部106は、生成された状態ラベル遷移列を統計モデルに当てはめた結果を参照する。例えば、図15に示す統計モデルにおいて、各パターンにおける特定の状態遷移の確率を示すωの値の間の差が小さく、それらのωの値がほぼ1であり、かつ、その特定の状態遷移の前後の状態の平均位置が近い場合、それらの状態を区別することがパターンの分類に寄与しない可能性が高い。
より具体的には、分析条件設定画面生成部106は、特定のμ及びνに関するωμν(k)の値を、全てのkについて取得し、それらのωμν(k)の値の差(ばらつき)が所定の閾値以下であり、それらのωμν(k)の値が所定の閾値以上であり、かつ、それらのωμν(k)に対応する状態遷移の前後の状態に対応する測位データが示す位置の平均値の間の距離が所定の閾値以下である場合、それらの状態に対応するクラスタの中心に最も近い監視対象者を対象歩行者として選択する。
以後、選択された対象歩行者について、第1の実施形態と同様にセンサ情報が提示され(図25参照)、管理者が「区別なし」ボタン2507を選択した場合、それらの状態が一つの状態に統合される。
以上の本発明の第4の実施形態によれば、区別してもパターンの分類に寄与する可能性が低い二つのクラスタを統合することによって、状態遷移を整理することができる。