(57)【特許請求の範囲】
【請求項１】
対象空間における第１位置に割り当てられたセンサから取得したセンサデータに基づき、前記第１位置についての混雑度である第１混雑度を推定する第１推定部と、
前記第１推定部によって推定された前記第１混雑度に基づき、前記対象空間における移動体の移動経路上の位置であって、前記第１位置とは異なる位置である第２位置についての混雑度である第２混雑度を推定する第２推定部と、
前記第１混雑度と、前記第２推定部によって推定された前記第２混雑度とに基づき、前記対象空間における前記第１位置及び前記第２位置以外の第３位置についての混雑度である第３混雑度を推定する第３推定部と、
前記第１位置及び前記第２位置をノードとし、前記移動体が移動可能な前記ノードの間をエッジにより接続したグラフであって、前記第１位置を表すノードをデータノードとし、前記第２位置を表すノードを補間ノードとしたグラフを取得する構造情報取得部と
を備え、
前記第２推定部は、前記グラフにおいて前記補間ノードから他のデータノードを経由することなく到達可能な各データノードを対象として、前記補間ノードから対象のデータノードまでの距離と、前記対象のデータノードが表す前記第１位置についての前記第１混雑度とから、前記補間ノードが表す前記第２位置についての前記第２混雑度を推定し、
前記第３推定部は、前記グラフの各エッジを対象として、対象のエッジ上にある前記第３位置であるエッジ上位置について、前記対象のエッジの両端のノードそれぞれから前記エッジ上位置までの距離と、前記両端のノードが表す位置についての混雑度とから、前記エッジ上位置についての前記第３混雑度を推定する混雑度推定装置。
【請求項２】
前記第２推定部は、前記補間ノードから対象のデータノードまでの距離から第１重みを計算し、前記対象のデータノードが表す前記第１位置についての前記第１混雑度に前記第１重みを乗じて得られた値から、前記補間ノードが表す前記第２位置についての前記第２混雑度を推定する
請求項１に記載の混雑度推定装置。
【請求項３】
前記第３推定部は、前記両端のノードそれぞれを対象として、対象のノードから前記エッジ上位置までの距離を第２重みとして、前記対象のノードが表す位置についての混雑度に前記第２重みを乗じて得られた値から、前記エッジ上位置についての前記第３混雑度を推定する
請求項１又は２に記載の混雑度推定装置。
【請求項４】
前記第３推定部は、前記グラフのエッジ上にない前記第３位置であるエッジ外位置について、前記第１混雑度と、前記第２混雑度と、前記エッジ上位置についての前記第３混雑度とのうちの少なくともいずれかから、前記エッジ外位置についての前記第３混雑度を推定する
請求項１から３までのいずれか１項に記載の混雑度推定装置。
【請求項５】
前記第３推定部は、前記グラフにおいて前記エッジで囲まれた閉領域の内部に前記エッジ外位置がある場合には、前記エッジ外位置を囲む前記閉領域を構成するノードが表す位置の混雑度から、前記エッジ外位置についての前記第３混雑度を推定する
請求項４に記載の混雑度推定装置。
【請求項６】
前記第３推定部は、前記グラフにおいて前記エッジで囲まれた閉領域の外部に前記エッジ外位置がある場合には、前記エッジ外位置から最も近いノード又はエッジが表す位置についての混雑度から、前記エッジ外位置についての前記第３混雑度を推定する
請求項４又は５に記載の混雑度推定装置。
【請求項７】
第１推定部が、対象空間における第１位置に割り当てられたセンサから取得したセンサデータに基づき、前記第１位置についての混雑度である第１混雑度を推定し、
第２推定部が、前記第１混雑度に基づき、前記対象空間における移動体の移動経路上の位置であって、前記第１位置とは異なる位置である第２位置についての混雑度である第２混雑度を推定し、
第３推定部が、前記第１混雑度と前記第２混雑度とに基づき、前記対象空間における前記第１位置及び前記第２位置以外の第３位置についての混雑度である第３混雑度を推定し、
構造情報取得部が、前記第１位置及び前記第２位置をノードとし、前記移動体が移動可能な前記ノードの間をエッジにより接続したグラフであって、前記第１位置を表すノードをデータノードとし、前記第２位置を表すノードを補間ノードとしたグラフを取得し、
前記第２推定部が、前記グラフにおいて前記補間ノードから他のデータノードを経由することなく到達可能な各データノードを対象として、前記補間ノードから対象のデータノードまでの距離と、前記対象のデータノードが表す前記第１位置についての前記第１混雑度とから、前記補間ノードが表す前記第２位置についての前記第２混雑度を推定し、
前記第３推定部が、前記グラフの各エッジを対象として、対象のエッジ上にある前記第３位置であるエッジ上位置について、前記対象のエッジの両端のノードそれぞれから前記エッジ上位置までの距離と、前記両端のノードが表す位置についての混雑度とから、前記エッジ上位置についての前記第３混雑度を推定する混雑度推定方法。
【請求項８】
対象空間における第１位置に割り当てられたセンサから取得したセンサデータに基づき、前記第１位置についての混雑度である第１混雑度を推定する第１推定処理と、
前記第１推定処理によって推定された前記第１混雑度に基づき、前記対象空間における移動体の移動経路上の位置であって、前記第１位置とは異なる位置である第２位置についての混雑度である第２混雑度を推定する第２推定処理と、
前記第１混雑度と、前記第２推定処理によって推定された前記第２混雑度とに基づき、前記対象空間における前記第１位置及び前記第２位置以外の第３位置についての混雑度である第３混雑度を推定する第３推定処理と、
前記第１位置及び前記第２位置をノードとし、前記移動体が移動可能な前記ノードの間をエッジにより接続したグラフであって、前記第１位置を表すノードをデータノードとし、前記第２位置を表すノードを補間ノードとしたグラフを取得する構造情報取得処理と
を行い、
前記第２推定処理では、前記グラフにおいて前記補間ノードから他のデータノードを経由することなく到達可能な各データノードを対象として、前記補間ノードから対象のデータノードまでの距離と、前記対象のデータノードが表す前記第１位置についての前記第１混雑度とから、前記補間ノードが表す前記第２位置についての前記第２混雑度を推定し、
前記第３推定処理では、前記グラフの各エッジを対象として、対象のエッジ上にある前記第３位置であるエッジ上位置について、前記対象のエッジの両端のノードそれぞれから前記エッジ上位置までの距離と、前記両端のノードが表す位置についての混雑度とから、前記エッジ上位置についての前記第３混雑度を推定する混雑度推定装置としてコンピュータを機能させる混雑度推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、対象空間における混雑度を推定する技術に関する。
【背景技術】
【０００２】
駅と空港と商業施設等の大規模な施設と、市街地の街区といった、人又は車両による混雑が発生する空間においては、混雑度の定量的又は定性的な計測が求められている。
過度な混雑は、快適性及び経済性を損なうとともに、群集事故の発生要因にもなる。そのため、適切な誘導案内及び群集警備といった対応をとることによる混雑の解消又は混雑発生の抑制が重要である。上述した対応をとるために混雑度を計測する必要がある。【０００３】
混雑度の計測方法としては、監視カメラと赤外線センサとレーザセンサといったセンサによって得られるセンサデータを解析して、センサのセンシング範囲の混雑度を計測する技術が存在する。警備員の目視及び主観に依存していた混雑度の計測を、センサデータに基づき自動化することにより、計測の精度及び安定性を高められるとともに、時間的に連続した計測が可能となる。
大規模な施設又は街区といった空間で混雑度の計測を行う場合には、計測結果をユーザに提示する手段も重要である。ユーザとは、監視員、警備担当者、又は当該空間に来域している一般人等である。混雑は空間内に粗密をもって分布する。そのため、混雑度の分布は、対象空間の地図上にヒートマップ形式で重畳させて表示するというように、直感的に把握しやすい形態で提示されることが望ましい。【０００４】
特許文献１には、監視カメラの映像を解析することにより、カメラ画角内の混雑度を計測する技術が記載されている。混雑度を計測するセンサとして監視カメラを用いる方法は、多数の監視カメラが設置されている場所では、既設の監視カメラ設備を流用できるため有効である。一方、監視カメラのようなセンサを用いた方式は、センサの検知範囲の混雑度しか計測することができない。
上述の通り、混雑度は対象空間の地図上にヒートマップ形式で重畳させて表示するといった形態で提示されることが望ましい。しかし、センサの検知範囲のみを計測しただけでは、地図上のセンサ設置位置についてしか混雑度を表示できない。つまり、混雑度の分布を直感的に把握しやすい形態で提示することができない。【０００５】
センサ設置位置において得られた混雑度データから、センサ未設置位置の混雑度を推定することが考えられる。特許文献２には、一部の観測点のデータから、その他の未観測点のデータを空間的に補間することにより推定する技術が記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１９−５０５５６８号公報
【特許文献２】特開２００９−２９１０４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献２に記載された技術は、補間が全方向に一様に行われる。混雑度は、群集の移動によって周囲に伝搬する。そのため、観測点のデータの影響範囲は、通路の移動方向及び壁による空間の分断の影響を受ける。したがって、全方向に一様な補間では実際に即した補間結果を得られない。
この発明は、対象空間における混雑度を適切に推定可能することを目的とする。
【課題を解決するための手段】
【０００８】
この発明に係る混雑度推定装置は、
対象空間における第１位置に割り当てられたセンサから取得したセンサデータに基づき、前記第１位置についての混雑度である第１混雑度を推定する第１推定部と、
前記第１推定部によって推定された前記第１混雑度に基づき、前記対象空間における移動体の移動経路上の位置であって、前記第１位置とは異なる位置である第２位置についての混雑度である第２混雑度を推定する第２推定部と、
前記第１混雑度と、前記第２推定部によって推定された前記第２混雑度とに基づき、前記対象空間における前記第１位置及び前記第２位置以外の第３位置についての混雑度である第３混雑度を推定する第３推定部と
を備える。
【発明の効果】
【０００９】
この発明では、センサデータに基づき推定された第１混雑度から、移動体の移動経路上の位置についての第２混雑度が推定される。そして、第１混雑度及び第２混雑度から、その他の位置についての第３混雑度が推定される。これにより、対象空間における混雑度を適切に推定可能である。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１に係る混雑度推定装置１０の構成図。
【図２】実施の形態１に係る対象空間５０の上面図。
【図３】実施の形態１に係る混雑度推定装置１０の全体的な動作を示すフローチャート。
【図４】実施の形態１に係る混雑度推定処理のフローチャート。
【図５】実施の形態１に係るマスク画像３２の例を示す図。
【図６】実施の形態１に係るグラフ３３の例を示す図。
【図７】実施の形態１に係る第２推定処理のフローチャート。
【図８】実施の形態１に係る距離計算処理の説明図。
【図９】実施の形態１に係る距離計算処理の説明図。
【図１０】実施の形態１に係る第３推定処理のフローチャート。
【図１１】変形例２に係る混雑度推定装置１０の構成図。
【発明を実施するための形態】
【００１１】
実施の形態１．
＊＊＊構成の説明＊＊＊
図１を参照して、実施の形態１に係る混雑度推定装置１０の構成を説明する。
混雑度推定装置１０は、コンピュータである。
混雑度推定装置１０は、プロセッサ１１と、メモリ１２と、ストレージ１３と、通信インタフェース１４とのハードウェアを備える。プロセッサ１１は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【００１２】
プロセッサ１１は、プロセッシングを行うＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）である。プロセッサ１１は、具体例としては、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
【００１３】
メモリ１２は、データを一時的に記憶する記憶装置である。メモリ１２は、具体例としては、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
【００１４】
ストレージ１３は、データを保管する記憶装置である。ストレージ１３は、具体例としては、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）である。また、ストレージ１３は、ＳＤ（登録商標，Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリカード、ＣＦ（ＣｏｍｐａｃｔＦｌａｓｈ，登録商標）、ＮＡＮＤフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ（登録商標）ディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）といった可搬記録媒体であってもよい。
【００１５】
通信インタフェース１４は、外部の装置と通信するためのインタフェースである。通信インタフェース１４は、具体例としては、Ｅｔｈｅｒｎｅｔ（登録商標）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、ＨＤＭＩ（登録商標，Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）のポートである。
【００１６】
混雑度推定装置１０は、機能構成要素として、構造情報取得部２１と、センサデータ取得部２２と、第１推定部２３と、分布推定部２４と、出力部２５とを備える。分布推定部２４は、機能構成要素として、第２推定部２６と、第３推定部２７とを備える。混雑度推定装置１０の各機能構成要素の機能はソフトウェアにより実現される。
ストレージ１３には、混雑度推定装置１０の各機能構成要素の機能を実現するプログラムが格納されている。このプログラムは、プロセッサ１１によりメモリ１２に読み込まれ、プロセッサ１１によって実行される。これにより、混雑度推定装置１０の各機能構成要素の機能が実現される。
【００１７】
ストレージ１３には、空間構造情報３１が記憶されている。
【００１８】
図１では、プロセッサ１１は、１つだけ示されていた。しかし、プロセッサ１１は、複数であってもよく、複数のプロセッサ１１が、各機能を実現するプログラムを連携して実行してもよい。
【００１９】
混雑度推定装置１０は、通信インタフェース１４を介して、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ハブ４１と接続されている。ＩＰハブ４１は、複数のセンサ４２と接続されている。図１では、ＩＰハブ４１は、センサ４２−１からセンサ４２−ＮまでのＮ個のセンサ４２と接続されている。
【００２０】
ＩＰハブ４１は、各センサ４２から出力されたセンサデータを受信し、混雑度推定装置１０に配信する装置である。
なお、図１では、ＩＰハブ４１は、混雑度推定装置１０の外部に設けられているが、混雑度推定装置１０がＩＰハブ４１を備えていてもよい。また、各センサ４２が公衆回線を用いてインターネットに接続され、インターネットにセンサデータを出力している場合もある。この場合には、インターネットをＩＰハブ４１とみなして、混雑度推定装置１０がインターネット経由でセンサデータを受信してもよい。また、センサ４２によるデータ出力の方法がＩＰ以外のプロトコルである場合には、ＩＰハブ４１は当該プロトコルに対応した集約装置となる。
【００２１】
各センサ４２は、混雑度の計測に活用可能なセンサデータを取得し、センサデータを有線又は無線で出力する装置である。
各センサ４２は、混雑度の計測に活用可能なセンサデータを取得でき、かつ、センサデータを有線又は無線でネットワーク出力できる機能を有していれば、どのようなセンサであってもよい。具体例としては、各センサ４２は、監視カメラ、赤外線センサ、レーザセンサ、超音波センサ、又は、集音マイクである。また、センサ４２は、特定の信号を発信するビーコンと、ビーコンに接近した携帯端末の個数を計数可能な装置と、携帯端末を含む計数システムであってもよい。
【００２２】
＊＊＊動作の説明＊＊＊
図２から図１０を参照して、実施の形態１に係る混雑度推定装置１０の動作を説明する。
実施の形態１に係る混雑度推定装置１０の動作手順は、実施の形態１に係る混雑度推定方法に相当する。また、実施の形態１に係る混雑度推定装置１０の動作を実現するプログラムは、実施の形態１に係る混雑度推定プログラムに相当する。
【００２３】
図２を参照して、実施の形態１において混雑度を推定する対象空間５０について説明する。
対象空間５０は、移動体が移動可能な範囲が限られている空間である。具体的には、対象空間５０は、壁等によって区切られた通路及び広場によって構成された空間である。対象空間５０は、広場だけで構成され、移動体が自由に移動できる空間であってもよい。移動体は、具体例としては、人と車両と等である。実施の形態１では、移動体は人であるとする。
対象空間５０には、計測地点５１（図２の黒点）が離散的かつ非格子状に配置されている。計測地点５１についてのみ、センサ４２から混雑度に関するセンサデータを取得可能である。
【００２４】
実施の形態１では、１つの計測地点５１に対して１つのセンサ４２が対応して設けられているものとする。しかし、１つの計測地点に対して複数のセンサ４２が対応して設けられてもよいし、複数の計測地点に対して１つのセンサ４２が対応して設けられてもよい。また、実施の形態１では、全てのセンサ４２は設置場所に固定された固定型であるとする。しかし、センサ４２は、移動可能な移動型であってもよい。
【００２５】
図３を参照して、実施の形態１に係る混雑度推定装置１０の全体的な動作を説明する。
混雑度推定装置１０は、起動すると、混雑度推定処理を実行する条件を満たすまで待機する（ステップＳ０１）。混雑度推定処理を実施する条件とは、起動または前回の混雑度推定処理実施から一定時間が経過する、所定の時刻を迎える、装置外部から混雑度推定処理の実行を指示する信号を受信する、などであってもよい。また、混雑度推定処理を実施する条件とは、これらを複数組み合わせた条件であってもよいし、またはそれ以外の条件であってもよい。
混雑度推定装置１０は、混雑度推定処理を実行する条件を満たすと、次に混雑度推定処理を実行する（ステップＳ０２）。混雑度推定処理は、センサ４２から受信したセンサデータに基づき、混雑度を推定して出力する処理である。混雑度推定処理の詳細は後述する。
混雑度推定装置１０は、混雑度推定処理が終了すると、終了条件を満たすかどうか判定する（ステップＳ０３）。終了条件を満たす場合は混雑度推定装置１０は動作を停止し、満たさない場合は再度混雑度推定処理の実行待機状態となる。終了条件は、装置外部から終了を指示する信号を受信する、所定の時刻を迎える、などであってもよい。また、終了条件は、これらを複数組み合わせた条件であってもよいし、またはそれ以外の条件であってもよい。
【００２６】
総合すると、混雑度推定装置１０は、起動後、一定の時間間隔または所定の条件を満たす度に混雑度推定結果を出力する動作を継続し、所定の条件を満たすと終了するという動作を行う。
【００２７】
図４を参照して、混雑度推定処理（図３のステップＳ０２）の詳細な動作を説明する。
（図４のステップＳ１１：構造情報取得処理）
構造情報取得部２１は、空間構造情報３１をストレージ１３から読み出す。構造情報取得部２１は、読み出された空間構造情報３１を分布推定部２４に出力する。
実施の形態１では、空間構造情報３１は、事前に作成されており、ストレージ１３に記憶されているものとする。しかし、空間構造情報３１は、ステップＳ１１が実行された際に、外部から入力されてもよい。また、空間構造情報３１は、ステップＳ１１が実行された際に、構造情報取得部２１によって元となる情報から生成されてもよい。
【００２８】
図５及び図６を参照して、実施の形態１に係る空間構造情報３１を説明する。
図５及び図６は、図２に示す対象空間５０に対応する空間構造情報３１を示している。
空間構造情報３１は、対象空間５０の形状と、計測地点５１の位置と、対象空間５０を構成する領域間の接続関係とを示す情報である。実施の形態１では、空間構造情報３１は、マスク画像３２と、グラフ３３とを備える。対象空間５０の形状は、マスク画像３２によって表される。計測地点５１の位置は、グラフ３３によって表される。対象空間５０を構成する領域間の接続関係は、マスク画像３２及びグラフ３３によって表される。
【００２９】
図５に示すように、マスク画像３２は、対象空間５０を表す画像データである。マスク画像３２における座標は、対象空間５０の２次元座標に対応している。図５では、白で表された領域が対象空間５０であり、黒で表された領域が対象空間５０ではない領域である。白で表された連結した領域は、空間的に接続していることを表している。
【００３０】
図６に示すように、グラフ３３は、ノード３４と、ノード３４間を接続するエッジ３５とから構成される。ノード３４は、センサ４２が割り当てられた計測地点５１である第１位置と、対象空間５０における移動体の移動経路上の位置であって、第１位置とは異なる位置である第２位置とに設けられる。第２位置は、移動体の移動経路上の位置のうち、対象空間５０における空間的な接続関係をグラフ３３が適切に表すことができる位置が設定される。例えば、対象空間５０に通路が存在する場合には、通路の中心部分に沿ってエッジ３５が設定されるように第２位置が設定される。
第１位置を表すノード３４をデータノード３６（図６で黒点で示すノード３４）と呼び、第２位置を表すノード３４を補間ノード３７（図６で白点で示すノード３４）と呼ぶ。データノード３６には、そのデータノード３６が表す第１位置に対応付けられたセンサ４２の識別子であるセンサＩＤ（ＩＤｅｎｔｉｆｅｒ）が割り当てられている。
ノード３４は、空間構造情報３１と同一座標系で、対象空間５０における座標が定義されている。そのため、グラフ３３をマスク画像３２に重ねた場合には、ノード３４は、必ず図５の白で表された領域に存在する。また、ノード３４間を結ぶエッジ３５の長さは、ノード３４間の対象空間５０における距離に相当する。例えば、通路の中心部分に沿ってエッジ３５が設定されるように第２位置が設定される。そのため、通路の両端のノード３４間のエッジ３５の長さは、通路に沿った距離を表している。
【００３１】
グラフ３３におけるエッジは、移動体が移動可能なノード間に設けられている。そのため、エッジは、両端のノードがある領域が空間的に接続していることを表している。
【００３２】
なお、対象空間５０を構成する領域間の接続関係は、グラフ３３だけでなく、マスク画像３２によっても表されている。しかし、マスク画像３２では例外的に表されない接続関係がある。
例えば、図２において、領域Ｘは１階のフロアであり、領域Ｙは２階のフロアである。つまり、領域Ｘと領域Ｙとは隣接した領域ではない。そのため、図５に示すマスク画像３２では、領域Ｘと領域Ｙとは接続されていないように見える。しかし、図６に示すグラフ３３では、エレベータといった手段により領域Ｘと領域Ｙとの間を移動可能である。そのため、領域Ｘのノード３４と領域Ｙのノード３４とがエッジ３５によって接続されている。これにより、領域Ｘと領域Ｙとが空間的に接続していることが表されている。
【００３３】
逆に、グラフ３３では例外的に表されない接続関係がある。
例えば、図２におけるエリアＺの付近は、複数の通路状の領域が存在し、通路状の領域の間に対象空間５０ではない領域が存在する。このような場所では、細かくノード３４が設定されない場合がある。そして、図６に示すように、グラフ３３は、対象空間５０ではない領域を跨いでエッジ３５が設定される場合がある。その結果、グラフ３３では、対象空間５０ではない領域が存在しないように見える。しかし、図５に示すマスク画像３２では、通路状の領域の間に対象空間５０ではない領域が存在することが表されている。
【００３４】
マスク画像３２は、ＢＭＰ（ビットマップ）と、ＰＮＧ（Ｐｏｒｔａｂｌｅ  Ｎｅｔｗｏｒｋ  Ｇｒａｐｈｉｃｓ）と、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）といった形式の画像ファイルで与えられる。
グラフ３３は、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）と、ＪＳＯＮ（ＪａｖａＳｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ）と、ＣＳＶ（Ｃｏｍｍａ−Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅｓ）といった形式の構造化テキストファイルで与えられる。
【００３５】
ステップＳ１１の処理は、混雑度推定装置１０の初期化処理に相当する。そのため、ステップＳ１１の処理は、混雑度推定装置１０の初回起動時及び設定変更時だけに実行されるようにしてもよい。
【００３６】
（図４のステップＳ１２：センサデータ取得処理）
センサデータ取得部２２は、各センサ４２から出力されたセンサデータを、ＩＰハブ４１を介して取得する。
具体的には、センサデータ取得部２２は、ＩＰハブ４１からセンサデータが送信されると、センサデータを取得する。センサデータ取得部２２は、取得されたセンサデータを、センサデータの出力元のセンサ４２のセンサＩＤとともに第１推定部２３に出力する。
【００３７】
センサデータの出力元のセンサ４２のセンサＩＤは、方法１又は方法２によって特定される。
（方法１）
センサデータ取得部２２は、予めセンサ４２のネットワークにおけるアドレスと、センサＩＤとを対応付けたテーブルを保持しておく。センサデータ取得部２２は、センサデータとともにセンサデータの出力元のアドレスを取得する。センサデータ取得部２２は、テーブルを参照して、取得されたアドレスに対応するセンサＩＤを特定する。
（方法２）
センサ４２は、センサデータとともにセンサＩＤを特定可能な付加情報を出力する。センサデータ取得部２２は、センサデータとともにセンサＩＤを特定可能な付加情報を取得する。センサデータ取得部２２は、付加情報からセンサＩＤを特定する。
付加情報は、具体例としては、センサ４２の位置を示すＧＮＳＳ（Ｇｌｏｂａｌ  Ｎａｖｉｇａｔｉｏｎ  Ｓａｔｅｌｌｉｔｅ  Ｓｙｓｔｅｍ）情報である。センサデータ取得部２２は、付加情報としてＧＮＳＳ情報を取得した場合には、空間構造情報３１における各計測地点５１の位置と、ＧＮＳＳ情報が示す位置とを比較することにより、ＧＮＳＳ情報に対応するデータノード３６を特定する。そして、センサデータ取得部２２は、特定されたデータノード３６に対応するセンサ４２のセンサＩＤを特定する。
【００３８】
（図４のステップＳ１３：第１推定処理）
第１推定部２３は、ステップ１２で取得されたセンサデータに基づき、第１位置についての混雑度である第１混雑度を推定する。
具体的には、第１推定部２３は、ステップ１２で取得されたセンサＩＤに対応する計測地点５１である第１位置を特定する。第１推定部２３は、センサデータに基づき、特定された第１位置についての第１混雑度を推定する。第１推定部２３は、特定された第１混雑度をセンサＩＤとともに分布推定部２４に出力する。
【００３９】
センサデータから第１混雑度を推定する方法は、どのような方法であってもよい。
例えば、センサ４２が監視カメラであるとする。この場合には、第１推定部２３は、予め登録された背景画像データと、センサデータである画像データとを比較して、前景部分を抽出する。そして、第１推定部２３は、前景部分の面積から人数を推定することにより、第１混雑度を推定する。あるいは、第１推定部２３は、機械学習を用いてセンサデータである画像データから人を検出する。そして、第１推定部２３は、検出された人の数をカウントすることにより、第１混雑度を推定する。
また、例えば、センサ４２がレーザセンサといった測距センサであるとする。この場合には、第１推定部２３は、センサデータである測距データを時空間的に統合して得られたセンシング範囲の物体の形状から、人を検出する。そして、第１推定部２３は、検出された人の数をカウントすることにより、第１混雑度を推定する。
なお、第１混雑度を推定する際に、センサデータに加えて事前調整済のパラメータが必要な場合がある。事前調整済のパラメータは、具体例としては、上述した背景画像データである。この場合には、第１推定部２３は、事前調整済のパラメータをセンサＩＤと対応付けてストレージ１３に記憶しておき、ステップＳ１２で取得されたセンサＩＤから対応する事前調整済のパラメータを特定すればよい。
【００４０】
（図４のステップＳ１４：制御処理）
第１推定部２３は、ステップＳ１２で対象空間５０に設置された全てのセンサ４２からセンサデータを取得した場合、又は、基準時間が経過した場合には、処理をステップＳ１５に進める。一方、第１推定部２３は、いずれでもない場合には、処理をステップＳ１２に戻す。
【００４１】
（図４のステップＳ１５：第２推定処理）
分布推定部２４の第２推定部２６は、ステップＳ１３で推定された各第１位置についての第１混雑度に基づき、対象空間５０における移動体の移動経路上の位置であって、第１位置とは異なる位置である第２位置についての混雑度である第２混雑度として推定する。第２推定部２６は、各第１位置についての第１混雑度と、各第２位置の第２混雑度とを第３推定部２７に出力する。
具体的には、第２推定部２６は、各補間ノード３７を対象として、グラフ３３における補間ノード３７から各データノード３６までの距離を計算する。そして、第２推定部２６は、各補間ノード３７を対象として、対象の補間ノード３７から各データノード３６までの距離と、各データノード３６が表す第１位置についての第１混雑度とから、対象の補間ノード３７が表す第２位置についての第２混雑度を推定する。
【００４２】
（図４のステップＳ１６：第３推定処理）
分布推定部２４の第３推定部２７は、ステップＳ１３で推定された各第１位置についての第１混雑度と、ステップＳ１５で推定された各第２位置についての第２混雑度とに基づき、対象空間５０における第１位置及び第２位置以外の第３位置についての混雑度である第３混雑度を推定する。第３推定部２７は、各第１位置についての第１混雑度と、各第２位置についての第２混雑度と、各第３位置についての第３混雑度とを出力部２５に出力する。
具体的には、まず、第３推定部２７は、グラフ３３の各エッジ３５を対象として、対象のエッジ３５上にある第３位置であるエッジ上位置について、対象のエッジの両端のノード３４それぞれからエッジ上位置までの距離を計算する。そして、第３推定部２７は、両端のノード３４それぞれからエッジ上位置までの距離と、両端のノード３４が表す位置についての混雑度とから、エッジ上位置についての第３混雑度を推定する。
次に、第３推定部２７は、グラフ３３のエッジ３５上にない第３位置であるエッジ外位置について、第１混雑度と、第２混雑度と、エッジ上位置についての第３混雑度とのうちの少なくともいずれかから、エッジ外位置についての第３混雑度を推定する。
【００４３】
（図４のステップＳ１７：出力処理）
出力部２５は、ステップＳ１３で推定された第１混雑度と、ステップＳ１５で推定された他の位置の混雑度とから、対象空間５０における混雑度の分布を示すデータを生成する。出力部２５は、混雑度の分布を示すデータを出力する。
具体的には、出力部２５は、混雑度の分布を示すデータとして、表示用のデータと加工用の数値データとの少なくともいずれかを生成する。
表示用のデータを生成する場合には、出力部２５は、対象空間５０の各位置について、その位置の混雑度の値に応じて色付けした画像データを生成する。出力部２５は、生成された画像データを、対象空間５０の上面図に重畳させてヒートマップ画像を生成する。出力部２５は、ヒートマップ画像を出力信号として表示装置に出力する、あるいは、画像ファイルとして外部の装置に出力する。なお、出力部２５は、画像ファイルをストレージ１３に出力してもよい。
数値データを生成する場合には、出力部２５は、対象空間５０の各位置についての混雑度を表す数値を基準となるフォーマットで記述する。出力部２５は、混雑度を表す数値を記述した数値ファイルを、外部の装置に出力する。なお、出力部２５は、数値ファイルをストレージ１３に出力してもよい。
【００４４】
ステップＳ１２からステップＳ１４の処理と、ステップＳ１５からステップＳ１７の処理とは、非同期に実行されてもよい。つまり、ステップＳ１２からステップＳ１４の処理は、センサデータの受信をトリガとして実行される。ステップＳ１２からステップＳ１４の処理では、第１混雑度をメモリ１２又はストレージ１３におけるバッファ領域に書き込む。ステップＳ１５からステップＳ１６の処理は、バッファ領域に書き込まれたデータ量が基準量を超えた場合、又は、前回実行時から基準時間が経過した場合に実行される。ステップＳ１５からステップＳ１６の処理では、バッファ領域に記憶された第１混雑度から他の位置についての混雑度を推定し、混雑度の分布を示すデータを出力する。
【００４５】
図７を参照して、実施の形態１に係る第２推定処理（図４のステップＳ１５）を説明する。
（図７のステップＳ２１：距離計算処理）
第２推定部２６は、まだ処理対象となっていない補間ノード３７を対象として、対象の補間ノード３７と、各データノード３６との間の距離を計算する。
具体的には、第２推定部２６は、グラフ３３において、対象の補間ノード３７から他のデータノード３６を経由することなく到達可能な全てのデータノード３６を特定する。第２推定部２６は、特定された各データノード３６を対象として、対象の補間ノード補間ノード３７から対象のデータノード３６までのグラフ３３上の最短距離を計算する。
【００４６】
図８及び図９を参照して具体的に説明する。
対象の補間ノード３７がＮＩ１であるとする。この場合には、図８に示すように、データノード３６のうち、ＮＤ１及びＮＤ２については、ＮＩ１から他のデータノード３６を経由することなく到達可能である。しかし、ＮＤ３については、ＮＩ１からＮＤ２を経由しないと到達することはできない。したがって、図８では、ＮＩ１については、ＮＤ１及びＮＤ２が他のデータノード３６を経由することなく到達可能なデータノード３６として特定される。そして、ＮＩ１からＮＤ１及びＮＤ２それぞれまでの最短距離が計算される。すると、図９に示すように、ＮＩ１からＮＤ１までの最短距離は３と計算され、ＮＩ１からＮＤ２までの最短距離は２．７と計算される。
【００４７】
後述する処理では、補間ノード３７が表す第２位置についての第２混雑度を推定する際、データノード３６が表す第１位置の第１混雑度から補間を行う。ここで、他のデータノード３６を経由しなければ到達できないデータノード３６について距離を計算しないのは、補間ノード３７が表す第２位置についての第２混雑度を計算する際、そのデータノード３６が表す第１位置についての第１混雑度は考慮しないためである。
これは、他のデータノード３６を経由しなければ到達できないデータノード３６が表す第１位置についての第１混雑度を考慮しなくても、他のデータノード３６が表す第１位置についての第１混雑度を考慮すれば十分であるためである。例えば、図８では、ＮＤ３は、ＮＩ１から見てＮＤ２を超えた先にある。そのため、ＮＤ３からＮＩ１に流入する移動体は、ＮＤ２が表す第１位置についての混雑度に反映されていると考えられる。したがって、ＮＤ３が表す第１位置についての混雑度は考慮しなくても、ＮＤ２が表す第１位置についての混雑度を考慮すれば十分であると考えられる。
【００４８】
（図７のステップＳ２２：未処理判定処理）
第２推定部２６は、ステップＳ２１の処理の対象とされていない補間ノード３７が存在するか否かを判定する。
第２推定部２６は、対象とされていない補間ノード３７が存在する場合には、処理をステップＳ２１に戻す。一方、第２推定部２６は、対象とされていない補間ノード３７が存在しない場合には、処理をステップＳ２３に進める。
【００４９】
なお、ステップＳ２１及びステップＳ２２の処理は、分布推定処理（図４のステップＳ１５）で実行されるのではなく、事前に実行され空間構造情報３１に含めて記憶されていてもよい。
【００５０】
（図７のステップＳ２３：更新判定処理）
第２推定部２６は、第１混雑度を更新可能なデータノード３６が存在するか否かを判定する。言い換えると、第２推定部２６は、第１推定処理（図４のステップＳ１３）で出力された第１混雑度をまだ設定していない第１位置を表すデータノード３６が存在するか否かを判定する。
第２推定部２６は、第１混雑度を更新可能なデータノード３６が存在する場合には、処理をステップＳ２４に進める。一方、第２推定部２６は、第１混雑度を更新可能なデータノード３６が存在しない場合には、処理をステップＳ２５に進める。
【００５１】
（図７のステップＳ２４：混雑度更新処理）
第２推定部２６は、第１混雑度を更新可能なデータノード３６が表す第１位置の第１混雑度を、第１推定処理（図４のステップＳ１３）で出力された第１混雑度により更新する。
【００５２】
なお、分布推定処理（図４のステップＳ１５）を実行する前提として、全てのデータノード３６が表す第１位置についての第１混雑度が第１推定処理（図４のステップＳ１３）で出力されていることが原則である。しかし、第１推定処理（図４のステップＳ１３）はセンサデータの受信をトリガに実行される。そのため、分布推定処理（図４のステップＳ１５）が実行されるときに、一部のセンサ４２からセンサデータが受信されていない場合も起こり得る。この場合には、一部のデータノード３６が表す第１位置の第１混雑度が第１推定処理（図４のステップＳ１３）で出力されていない。
このように、一部のデータノード３６が表す第１位置について第１混雑度が第１推定処理（図４のステップＳ１３）で出力されていない場合には、第２推定部２６は、第１混雑度が出力された第１位置についてのみ第１混雑度の更新をする。第２推定部２６は、残りの第１位置については、過去の第１混雑度をそのまま用いる、あるいは、過去の第１混雑度を何らかの方法により補正した第１混雑度を用いる。
また、第２推定部２６は、残りの第１位置を表すデータノード３６については、一時的に補間ノード３７として扱ってもよい。この場合には、第２推定部２６は、残りの第１位置を表すデータノード３６を補間ノード３７に変更した上で、処理をステップＳ２１に戻してやり直す。
【００５３】
（図７のステップＳ２５：第２混雑度推定処理）
第２推定部２６は、まだ処理対象となっていない補間ノード３７を対象として、対象の補間ノード３７が表す第２位置の第２混雑度を推定する。
具体的には、第２推定部２６は、対象の補間ノード３７から他のデータノード３６を経由することなく到達可能な全てのデータノード３６を対象のデータノード３６に設定する。第２推定部２６は、ステップＳ２１で計算された対象の補間ノード３７から対象のデータノード３６までのグラフ３３上の最短距離と、対象のデータノード３６が表す第１位置についての第１混雑度とから、対象の補間ノード３７が表す第２位置についての第２混雑度を推定する。
この際、第２推定部２６は、対象の補間ノード３７から対象のデータノード３６までの最短距離から第１重みを計算する。対象の補間ノード３７に近いデータノード３６ほど対象の補間ノード３７に似た混雑度になると考えられる。そのため、第１重みは、最短距離が近いほど大きな重みになるように計算される。第２推定部２６は、対象のデータノード３６が表す第１位置についての第１混雑度に第１重みを乗じて得られた値から、対象の補間ノード３７が表す第２位置についての第２混雑度を推定する。例えば、第２推定部２６は、対象のデータノード３６について得られた値の合計値を第２混雑度とする。つまり、第２推定部２６は、対象の補間ノード３７から対象のデータノード３６までの最短距離を用いた逆距離加重法と呼ばれる計算法により、第２混雑度を計算する。
【００５４】
また、第２推定部２６は、２点間の線形補間の式を拡張した数１を用いて、第２混雑度を計算してもよい。
【数１】
0006837606.tif 000002
数１において、ｓ（ＮＩ１）は、対象の補間ノード３７であるＮＩ１が表す第２位置についての混雑度である。ｓ（ＮＤｃ）は、対象の補間ノード３７から他のデータノード３６を経由することなく到達可能なデータノード３６が表す第１位置についての第１混雑度である。１≦ｃ≦Ｃであり、Ｃは、対象の補間ノード３７から他のデータノード３６を経由することなく到達可能なデータノード３６の数である。ｗ（ｃ）は、ＮＤｃに割り当てられた第２重みである。ｗ（ｃ）は、数２によって計算される。
【数２】
0006837606.tif 000003
数２において、α（ｃ）及びα（ｋ）は、数３によって計算される。
【数３】
0006837606.tif 000004
数３は、ｋ＝ｃを除く、ｋ＝１からｋ＝Ｃまでについてｄ（ｋ）の積をα（ｃ）とするという意味である。また、数３において、ｄ（ｋ）は、対象の補間ノード３７であるＮＩ１と、対象のデータノード３６であるＮＤｋとの間の最短距離である。
【００５５】
なお、上記の説明では、ｓ（ＮＤｃ）は、直前に実行されたステップＳ１３の処理により推定された第１混雑度を用いる構成である。しかし、図４に示す混雑度推定処理は、図３に示すとおり、繰り返し実行される処理である。そのため、過去に混雑度推定処理を実行した際に推定した第１混雑度を、ｓ（ＮＤｃ）として用いる構成を取ることもできる。
その際に、どれだけの過去の第１混雑度を用いるかは、任意に決定することができる。具体例としては、固定的な時間だけ過去の第１混雑度を用いてもよい。また、対象の補間ノード３７であるＮＩ１と、対象のデータノード３６であるＮＤｋとの間の最短距離であるｄ（ｋ）に比例する値だけ過去の第１混雑度を用いてもよい。また、データノードに対応するセンサ４２のセンサデータを用いて、何らかの方法により、センサ範囲の群集の移動方向や移動速度が推定できる場合、それらの情報を用いて、使用する過去の第１混雑度を適応的に決定してもよい。
【００５６】
（図７のステップＳ２６：未処理判定処理）
第２推定部２６は、ステップＳ２５の処理の対象とされていない補間ノード３７が存在するか否かを判定する。
第２推定部２６は、対象とされていない補間ノード３７が存在する場合には、処理をステップＳ２５に戻す。一方、第２推定部２６は、対象とされていない補間ノード３７が存在しない場合には、処理をステップＳ２７に進める。
【００５７】
図１０を参照して、実施の形態１に係る第３推定処理（図４のステップＳ１６）を説明する。
（ステップＳ３１：エッジ上推定処理）
第３推定部２７は、まだ処理対象となっていないエッジ３５を対象として、対象のエッジ３５上にある第３位置であるエッジ上位置について第３混雑度を推定する。
具体的には、第３推定部２７は、対象のエッジ３５上の各位置を順に対象のエッジ上位置に設定する。第３推定部２７は、対象のエッジ３５の両端のノード３４が表す位置についての混雑度から、線形補間といった補間方式により、対象のエッジ上位置についての第３混雑度を推定する。ここで、両端のノード３４は、データノード３６である場合もあるし、補間ノード３７である場合もある。
【００５８】
実施の形態１では、まず、第３推定部２７は、対象のエッジ３５の両端のノード３４それぞれから対象のエッジ上位置までの距離を計算する。第３推定部２７は、両端のノード３４それぞれについて、距離から第２重みを計算する。対象のエッジ上位置に近いノード３４ほど対象のエッジ上位置に似た混雑度になると考えられる。そのため、第２重みは、距離が近いほど大きな重みになるように計算される。第３推定部２７は、両端のノード３４が表す位置についての混雑度に第２重みを乗じて得られた値から、対象のエッジ上位置が表す第３位置についての第３混雑度を推定する。例えば、第３推定部２７は、両端のノード３４について得られた値の合計値を第３混雑度とする。ここで、両端のノード３４は、データノード３６である場合もあるし、補間ノード３７である場合もあるので、両端のノード３４が表す位置は、第１位置の場合もあるし、第２位置の場合もある。したがって、両端のノード３４が表す位置の混雑度は、第１混雑度の場合もあるし、第２混雑度の場合もある。
【００５９】
例えば、長さＬＥのエッジＥの一方の端のノード３４をＮｓとし、他方の端のノード３４をＮｅとする。エッジＥ上のエッジ上位置であるＮＬのＮｓから距離がＬ（０≦Ｌ≦ＬＥ）であったとする。この場合には、ＮＬの第３混雑度は、数４によって計算される。
【数４】
0006837606.tif 000005
数４において、ｓ（Ｎｓ）はＮｓの混雑度であり、ｓ（Ｎｅ）はＮｅの混雑度である。
【００６０】
（ステップＳ３２：未処理判定処理）
第３推定部２７は、ステップＳ３１の処理の対象とされていないエッジ３５が存在するか否かを判定する。
第３推定部２７は、対象とされていないエッジ３５が存在する場合には、処理をステップＳ３１に戻す。一方、第３推定部２７は、対象とされていないエッジ３５が存在しない場合には、処理をステップＳ３３に進める。
【００６１】
ステップＳ３３からステップＳ３５では、第３推定部２７は、グラフ３３のエッジ３５上にない第３位置でありエッジ外位置について第３混雑度を推定する。エッジ外位置についての第３混雑度の推定方法は、エッジ外位置が対象空間５０におけるどの位置であるかによって２つの方法に分けられる。そこで、第３推定部２７は、まず対象のエッジ外位置の対象空間５０における位置によって場合分けする。
【００６２】
（ステップＳ３３：位置判定処理）
第３推定部２７は、まだ処理対象となっていないエッジ外位置を対象として、グラフ３３においてエッジ３５で囲まれた閉領域の内部に対象のエッジ外位置があるか否かを判定する。
第３推定部２７は、閉領域の内部に対象のエッジ外位置がある場合には、処理をステップＳ３４に進める。一方、第３推定部２７は、閉領域の内部に対象のエッジ外位置がない場合には、処理をステップＳ３５に進める。
【００６３】
閉領域の内部にエッジ外位置がある場合には、エッジ外位置は、明確な移動方向が定義されていない広場のような場所に存在することを意味する。そのため、第３推定部２７は、近傍の位置についての混雑度を用いた、全方向に均一な補間方式を用いて第３混雑度を推定する。
閉領域の内部にエッジ外位置がない場合には、エッジ外位置は、移動方向がエッジに沿った方向に限定される通路のような場所、又は、グラフ３３で定義される空間構造の外部に存在することを意味する。グラフ３３で定義される空間構造の外部とは、広場のような場所の外縁である。そのため、第３推定部２７は、最近傍の位置についての混雑度を用いた補間方式を用いて第３混雑度を推定する。
【００６４】
なお、図５及び図６を参照して説明したように、マスク画像３２又はグラフ３３では例外的に表されない接続関係が対象空間５０に含まれている場合がある。
この場合には、第３推定部２７は、閉領域の内部にエッジ外位置があるか否かに加え、エッジ外位置が内部にある閉領域の内部に対象空間５０外の領域が含まれているか否かを判定する必要がある。閉領域の内部に対象空間５０外の領域が含まれているかを判定することは、グラフ３３をマスク画像３２に重ねた場合に、閉領域の内部にマスク画像３２の黒で表された領域が含まれているか否かを判定することを意味する。
第３推定部２７は、閉領域の内部にエッジ外位置があり、かつ、閉領域の内部に対象空間５０外の領域が含まれていない場合には、処理をステップＳ３４に進める。一方、第３推定部２７は、閉領域の内部にエッジ外位置がない場合と、閉領域の内部に対象空間５０外の領域が含まれている場合との少なくともいずれかの場合には、処理をステップＳ３５に進める。
【００６５】
（ステップＳ３４：閉領域内推定処理）
第３推定部２７は、対象のエッジ外位置を囲む閉領域を構成するノード３４が表す位置の混雑度から、対象のエッジ外位置についての第３混雑度を推定する。閉領域を構成するノード３４は、データノード３６である場合もあるし、補間ノード３７である場合もある。ノード３４が表す位置は、第１位置である場合もあるし、第２位置である場合もある。そして、ノード３４が表す位置の混雑度は、第１混雑度である場合もあるし、第２混雑度である場合もある。
具体例としては、第３推定部２７は、閉領域を構成するノード３４が表す位置の混雑度を用いて、三角形補間法と呼ばれる三角形要素内の補間を行う場合の方式と、ユークリッド距離を用いた逆距離加重法と呼ばれる方式といった補間方式により第３混雑度を推定する。
三角形要素内の補間を行う場合の方式は、閉領域が三角形である場合にはそのまま適用可能である。しかし、閉領域が三角形でない場合には、閉領域を複数の三角形の領域に分割する。そして、エッジ外位置が含まれる三角形の領域を構成するノード３４が表す位置の混雑度を用いて、三角形要素内の補間を行う場合の方式を適用すればよい。
【００６６】
（ステップＳ３５：閉領域外推定処理）
第３推定部２７は、対象のエッジ外位置と同じ領域にあり、かつ、対象のエッジ外位置に最も近いノード３４が表す位置又はエッジ上位置の混雑度から、対象のエッジ外位置についての第３混雑度を推定する。ここでの領域は、マスク画像３２における白で表された領域を意味する。例えば、図２における領域Ｘと領域Ｙとは異なる領域である。
具体例としては、第３推定部２７は、対象のエッジ外位置と同じ領域にあり、かつ、対象のエッジ外位置に最も近いノード３４又はエッジ上位置の混雑度をそのまま第３混雑度と推定する。あるいは、補間ノード３７は、最も近いノード３４又はエッジ上位置の混雑度に対して、エッジ外位置からの距離に反比例した重みを乗じて、第３混雑度を推定してもよい。
ここで、対象のエッジ外位置に最も近いエッジ上位置は次のように特定される。まず、対象のエッジ外位置から周囲のエッジ３５に対して垂線が引かれる。エッジ外位置から垂線とエッジ３５との交点までの垂線の長さが最も短い垂線が特定される。特定された垂線に最も近いエッジ３５におけるエッジ上位置が、エッジ外位置に最も近いエッジ上位置として特定される。
【００６７】
エッジ外位置と同じ領域にあるという条件を加えることにより、補間に用いるノード３４及びエッジ３５が同じ領域に限定される。これにより、空間的に接続されていないノード３４及びエッジ３５の混雑度に基づき混雑度が推定されることがなくなる。
【００６８】
（ステップＳ３６：未処理判定処理）
第３推定部２７は、ステップＳ３３の処理の対象とされていないエッジ外位置が存在するか否かを判定する。
第３推定部２７は、対象とされていないエッジ外位置が存在する場合には、処理をステップＳ３３に戻す。一方、第３推定部２７は、対象とされていないエッジ外位置が存在しない場合には、処理を終了する。
【００６９】
＊＊＊実施の形態１の効果＊＊＊
以上のように、実施の形態１に係る混雑度推定装置１０は、センサデータに基づき推定された第１混雑度から、移動体の移動経路上の第２位置についての第２混雑度を推定する。そして、混雑度推定装置１０は、第１混雑度及び第２混雑度から、その他の位置についての第３混雑度を推定する。
これにより、対象空間における移動体の移動を想定した適切な混雑度の推定が可能である。
【００７０】
＊＊＊他の構成＊＊＊
＜変形例１＞
実施の形態１における混雑度推定装置１０において、第２混雑度は、図４に示す一連の処理の中でセンサデータ取得部２２がセンサ４２から取得したセンサデータに基づいて推定された第１混雑度から推定された。しかしながら、図４に示す一連の処理を、一定時間周期で繰り返し実施するような構成を取る場合、過去の処理実行において取得したセンサデータに基づく第１混雑度を用いて推定する構成を取ってもよい。
【００７１】
＜変形例２＞
実施の形態１では、各機能構成要素がソフトウェアで実現された。しかし、変形例２として、各機能構成要素はハードウェアで実現されてもよい。この変形例２について、実施の形態１と異なる点を説明する。
【００７２】
図１１を参照して、変形例２に係る混雑度推定装置１０の構成を説明する。
各機能構成要素がハードウェアで実現される場合には、混雑度推定装置１０は、プロセッサ１１とメモリ１２とストレージ１３とに代えて、電子回路１５を備える。電子回路１５は、各機能構成要素と、メモリ１２と、ストレージ１３との機能とを実現する専用の回路である。
【００７３】
電子回路１５としては、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ（Ｇａｔｅ  Ａｒｒａｙ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）が想定される。
各機能構成要素を１つの電子回路１５で実現してもよいし、各機能構成要素を複数の電子回路１５に分散させて実現してもよい。
【００７４】
＜変形例３＞
変形例３として、一部の各機能構成要素がハードウェアで実現され、他の各機能構成要素がソフトウェアで実現されてもよい。
【００７５】
プロセッサ１１とメモリ１２とストレージ１３と電子回路１５とを処理回路という。つまり、各機能構成要素の機能は、処理回路により実現される。
【００７６】
以上、この発明の実施の形態及び変形例について説明した。これらの実施の形態及び変形例のうち、いくつかを組み合わせて実施してもよい。また、いずれか１つ又はいくつかを部分的に実施してもよい。なお、この発明は、以上の実施の形態及び変形例に限定されるものではなく、必要に応じて種々の変更が可能である。
【符号の説明】
【００７７】
１０  混雑度推定装置、１１  プロセッサ、１２  メモリ、１３  ストレージ、１４  通信インタフェース、１５  電子回路、２１  構造情報取得部、２２  センサデータ取得部、２３  第１推定部、２４  分布推定部、２５  出力部、２６  第２推定部、２７  第３推定部、３１  空間構造情報、３２  マスク画像、３３  グラフ、３４  ノード、３５  エッジ、３６  データノード、３７  補間ノード、４１  ＩＰハブ、４２  センサ、５０  対象空間、５１  計測地点。
【要約】
第１推定部（２３）は、対象空間における第１位置に割り当てられたセンサ（４２）から取得したセンサデータに基づき、第１位置についての混雑度である第１混雑度を推定する。第２推定部（２６）は、第１混雑度に基づき、対象空間における移動体の移動経路上の位置であって、第１位置とは異なる位置である第２位置についての混雑度である第２混雑度として推定する。第３推定部（２７）は、第１混雑度及び第２混雑度に基づき、対象空間における第１位置及び第２位置以外の第３位置についての混雑度である第３混雑度を推定する。【図１】
0006837606.tif 000006
【図２】
0006837606.tif 000007
【図３】
0006837606.tif 000008
【図４】
0006837606.tif 000009
【図５】
0006837606.tif 000010
【図６】
0006837606.tif 000011
【図７】
0006837606.tif 000012
【図８】
0006837606.tif 000013
【図９】
0006837606.tif 000014
【図１０】
0006837606.tif 000015
【図１１】
0006837606.tif 000016