(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023163431
(43)【公開日】2023-11-10
(54)【発明の名称】計算機システム及び計測シミュレーションを行うための仮想空間の環境の設定方法
(51)【国際特許分類】
G06T 19/00 20110101AFI20231102BHJP
G06Q 99/00 20060101ALI20231102BHJP
【FI】
G06T19/00 A
G06Q99/00
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2022074349
(22)【出願日】2022-04-28
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001678
【氏名又は名称】藤央弁理士法人
(72)【発明者】
【氏名】山城 昌雄
(72)【発明者】
【氏名】木村 彰吾
【テーマコード(参考)】
5B050
5L049
【Fターム(参考)】
5B050BA09
5B050CA07
5B050EA07
5B050FA02
5L049DD02
(57)【要約】
【課題】センサを用いて計測を行う計測システムのシミュレーションを行う仮想空間の環境を設定する。
【解決手段】センサを用いて移動体に関する計測を行う計測システムの計測シミュレーションを行うための仮想空間の環境を設定する計算機システムは、計測システムを導入する3次元空間を表した空間情報を取得し、空間情報を用いて、3次元空間の構造を形成する面を識別し、面の識別結果に基づいて、移動体の配置及び移動が可能な領域である第1領域と、センサの配置が可能な領域である第2領域と、を特定し、第1領域及び第2領域を仮想空間の環境の情報として出力する。
【選択図】
図11
【特許請求の範囲】
【請求項1】
センサを用いて移動体に関する計測を行う計測システムの計測シミュレーションを行うための仮想空間の環境を設定する計算機システムであって、
プロセッサ及び前記プロセッサに接続される記憶装置を有する、少なくとも一つの計算機を備え、
前記計測システムを導入する3次元空間を表した空間情報を取得し、
前記空間情報を用いて、前記3次元空間の構造を形成する面を識別し、
前記面の識別結果に基づいて、前記3次元空間において前記移動体の配置及び移動が可能な領域である第1領域と、前記3次元空間において前記センサの配置が可能な領域である第2領域と、を特定し、
前記第1領域及び前記第2領域を前記仮想空間の環境の情報として出力することを特徴とする計算機システム。
【請求項2】
請求項1に記載の計算機システムであって、
前記第2領域に基づいて設定された複数のセンサ配置パターンについて、前記第1領域で前記移動体の移動をシミュレーションして、前記計測システムの計測結果を取得することを特徴とする計算機システム。
【請求項3】
請求項2に記載の計算機システムであって、
前記空間情報を用いて、前記面の座標、広さ、及び種別を特定し、
前記面の座標、広さ、及び種別に基づいて、前記第1領域及び前記第2領域を特定することを特徴とする計算機システム。
【請求項4】
請求項3に記載の計算機システムであって、
前記移動体の移動範囲に関する情報と、前記センサの設置場所に関する情報とを保持し、
前記移動体の移動範囲に関する情報と、前記面の座標、広さ、及び種別とに基づいて、前記第1領域を特定し、
前記センサの設置場所に関する情報と、前記面の座標、広さ、及び種別とに基づいて、前記第2領域を特定することを特徴とする計算機システム。
【請求項5】
請求項2に記載の計算機システムであって、
前記計測システムの計測結果を表示するインタフェースを提供することを特徴とする計算機システム。
【請求項6】
請求項2に記載の計算機システムであって、
前記第1領域及び前記第2領域を表示し、前記センサ配置パターンの設定を受け付けるためのインタフェースを提供することを特徴とする計算機システム。
【請求項7】
計算機システムが実行する、センサを用いて移動体に関する計測を行う計測システムの計測シミュレーションを行うための仮想空間の環境の設定方法であって、
前記計算機システムは、プロセッサ及び前記プロセッサに接続される記憶装置を有する、少なくとも一つの計算機を含み、
前記計測シミュレーションを行うための仮想空間の環境の設定方法は、
前記少なくとも一つの計算機が、前記計測システムを導入する3次元空間を表した空間情報を取得する第1のステップと、
前記少なくとも一つの計算機が、前記空間情報を用いて、前記3次元空間の構造を形成する面を識別する第2のステップと、
前記少なくとも一つの計算機が、前記面の識別結果に基づいて、前記3次元空間において前記移動体の配置及び移動が可能な領域である第1領域と、前記3次元空間において前記センサの配置が可能な領域である第2領域と、を特定する第3のステップと、
前記少なくとも一つの計算機が、前記第1領域及び前記第2領域を前記仮想空間の環境の情報として出力する第4のステップと、を含むことを特徴とする計測シミュレーションを行うための仮想空間の環境の設定方法。
【請求項8】
請求項7に記載の計測シミュレーションを行うための仮想空間の環境の設定方法であって、
前記少なくとも一つの計算機が、前記第2領域に基づいて設定された複数のセンサ配置パターンについて、前記第1領域で前記移動体の移動をシミュレーションして、前記計測システムの計測結果を取得するステップを含むことを特徴とする計測シミュレーションを行うための仮想空間の環境の設定方法。
【請求項9】
請求項8に記載の計測シミュレーションを行うための仮想空間の環境の設定方法であって、
前記第2のステップは、前記少なくとも一つの計算機が、前記空間情報を用いて、前記面の座標、広さ、及び種別を特定するステップを含み、
前記第3のステップは、前記少なくとも一つの計算機が、前記面の座標、広さ、及び種別に基づいて、前記第1領域及び前記第2領域を特定するステップを含むことを特徴とする計測シミュレーションを行うための仮想空間の環境の設定方法。
【請求項10】
請求項9に記載の計測シミュレーションを行うための仮想空間の環境の設定方法であって、
前記計算機システムは、前記移動体の移動範囲に関する情報と、前記センサの設置場所に関する情報とを保持し、
前記第3のステップは、
前記少なくとも一つの計算機が、前記移動体の移動範囲に関する情報と、前記面の座標、広さ、及び種別とに基づいて、前記第1領域を特定するステップと、
前記少なくとも一つの計算機が、前記センサの設置場所に関する情報と、前記面の座標、広さ、及び種別とに基づいて、前記第2領域を特定するステップと、を含むことを特徴とする計測シミュレーションを行うための仮想空間の環境の設定方法。
【請求項11】
請求項8に記載の計測シミュレーションを行うための仮想空間の環境の設定方法であって、
前記少なくとも一つの計算機が、前記計測システムの計測結果を表示するインタフェースを提供するステップを含むことを特徴とする計測シミュレーションを行うための仮想空間の環境の設定方法。
【請求項12】
請求項8に記載の計測シミュレーションを行うための仮想空間の環境の設定方法であって、
前記少なくとも一つの計算機が、前記第1領域及び前記第2領域を表示し、前記センサ配置パターンの設定を受け付けるためのインタフェースを提供するステップを含むことを特徴とする計測シミュレーションを行うための仮想空間の環境の設定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、センサを用いて計測を行う計測システムのシミュレーション技術に関する。
【背景技術】
【0002】
駅及び商業施設での人流の計測等を行う計測システムの導入に当たって、事前に計測システムの導入効果を検証したいというニーズがある。これに対して特許文献1に記載の技術が知られている。
【0003】
特許文献1には、「ロボットシステムのシミュレーション装置は、人生成モジュール(110)によって、3Dモデルデータベース(111)から3次元形状の歩行者を生成して仮想シミュレーション空間に投入する。オブジェクティブモデル(116)から実行するオブジェクティブを選択するとともに、シミュレーションパラメータを決定し、オブジェクティブ毎にジェスチャをジェスチャデータベース(113)から選択して、オブジェクティブに設定する。移動モジュール(114)は、歩行者を更新する。ソーシャルフォースモデル(118)に従って、歩行者の位置を更新するとともに、設定されたジェスチャに従って歩行者のジェスチャを再生する。歩行者の更新に応じて、真値ラベルとノイズモデルを適用したセンサデータとを結合したデータセットを出力する。」ことが記載されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
計測システムの効果の検証では様々なセンサの配置パターンを検証する必要がある。特許文献1に記載の技術では、センサの配置は固定されているため、計測システムの効果を十分に検証できない。
【0006】
様々なセンサの配置について計測システムの効果を検証するためには、センサの配置パターンを設定する必要がある。センサの配置パターンを設定するためには、事前に、センサの配置が可能な領域に関する情報が必要である。また、人及び車両等の移動体の配置及び移動の設定においても同様に、配置及び移動が可能な場所に関する情報が必要である。したがって、計測システムの導入効果を検証するための計測シミュレーションには、前述の領域に関する情報を、シミュレーションを行うための仮想空間の環境情報として設定する必要がある。
【0007】
本発明は、センサの配置が可能な領域と、移動体の配置及び移動が可能領域とを、仮想空間の環境情報として設定するシステム及び方法を実現することを目的とする。
【課題を解決するための手段】
【0008】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、センサを用いて移動体に関する計測を行う計測システムの計測シミュレーションを行うための仮想空間の環境を設定する計算機システムであって、プロセッサ及び前記プロセッサに接続される記憶装置を有する、少なくとも一つの計算機を備え、前記計測システムを導入する3次元空間を表した空間情報を取得し、前記空間情報を用いて、前記3次元空間の構造を形成する面を識別し、前記面の識別結果に基づいて、前記3次元空間において前記移動体の配置及び移動が可能な領域である第1領域と、前記3次元空間において前記センサの配置が可能な領域である第2領域と、を特定し、前記第1領域及び前記第2領域を前記仮想空間の環境の情報として出力する。
【発明の効果】
【0009】
本発明によれば、3次元空間の空間情報を用いて、センサの配置が可能な領域と、移動体の配置及び移動が可能領域とを、計測シミュレーションを行うための仮想空間の環境情報として設定できる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【0010】
【
図1】実施例1の計算機システムの構成例を示す図である。
【
図2A】実施例1の面設定情報の一例を示す図である。
【
図2B】実施例1の面設定情報の一例を示す図である。
【
図2C】実施例1の面設定情報の一例を示す図である。
【
図3】実施例1のセンサカタログの一例を示す図である。
【
図4】実施例1の3次元空間情報の一例を示す図である。
【
図5A】実施例1の面識別情報の一例を示す図である。
【
図5B】実施例1の面識別情報の一例を示す図である。
【
図5C】実施例1の面識別情報の一例を示す図である。
【
図5D】実施例1の面識別情報の一例を示す図である。
【
図6A】実施例1の移動体シミュレーションモデル情報の一例を示す図である。
【
図6B】実施例1の移動体シミュレーションモデル情報の一例を示す図である。
【
図6C】実施例1の移動体シミュレーションモデル情報の一例を示す図である。
【
図6D】実施例1の移動体シミュレーションモデル情報の一例を示す図である。
【
図6E】実施例1の移動体シミュレーションモデル情報の一例を示す図である。
【
図7】実施例1のセンサ配置パターン情報の一例を示す図である。
【
図8A】実施例1の計測条件情報の一例を示す図である。
【
図8B】実施例1の計測条件情報の一例を示す図である。
【
図9】実施例1の計測シミュレーション情報の一例を示す図である。
【
図10】実施例1の計測シミュレーション装置が提示する画面の一例を示す図である。
【
図11】実施例1の計測シミュレーション装置が実行する面識別処理の一例を説明するフローチャートである。
【
図12】実施例1の計測シミュレーション装置が実行するセンサ配置パターン登録処理の一例を説明するフローチャートである。
【
図13】実施例1の計測シミュレーション装置が提示する画面の一例を示す図である。
【
図14】実施例1の計測シミュレーション装置が提示する画面の一例を示す図である。
【
図15】実施例1の計測シミュレーション装置が実行する計測シミュレーション処理の一例を説明するフローチャートである。
【
図16】実施例1の計測シミュレーション装置が提示する画面の一例を示す図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施例を、図面を用いて説明する。ただし、本発明は以下に示す実施例の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。
【0012】
以下に説明する発明の構成において、同一又は類似する構成又は機能には同一の符号を付し、重複する説明は省略する。
【0013】
本明細書等における「第1」、「第2」、「第3」等の表記は、構成要素を識別するために付するものであり、必ずしも、数又は順序を限定するものではない。
【0014】
図面等において示す各構成の位置、大きさ、形状、及び範囲等は、発明の理解を容易にするため、実際の位置、大きさ、形状、及び範囲等を表していない場合がある。したがって、本発明では、図面等に開示された位置、大きさ、形状、及び範囲等に限定されない。
【実施例0015】
図1は、実施例1の計算機システムの構成例を示す図である。
【0016】
計算機システムは、計測シミュレーション装置100、外部システム101、及び外部端末102を含む。計測シミュレーション装置100は、LAN(Local Area Network)及びWAN(Wide Area Netwrok)等のネットワーク105を介して、外部システム101及び外部端末102と接続する。ネットワーク105の接続方式は有線及び無線のいずれでもよい。
【0017】
外部システム101及び外部端末102は、計測シミュレーション装置100に各種情報を入力し、また、計測シミュレーション装置100から出力を取得する。
【0018】
なお、計算機システムは、外部システム101及び外部端末102のいずれかのみを含んでもよい。また、計算機システムは、外部システム101及び外部端末102を含んでいなくてもよい。
【0019】
計測シミュレーション装置100は、計測システムを導入する3次元空間の構造を形成する面を識別し、計測システムによる計測をシミュレーションする計測シミュレーションを行うための仮想空間の環境を設定し、計測シミュレーションを実行する。ここで、3次元空間の構造を形成する面とは、床、壁、及び天井等である。計測シミュレーション装置100は、ハードウェアとして、プロセッサ110、入力装置111、出力装置112、通信装置113、主記憶装置114、及び副記憶装置115を有する。各ハードウェア要素は内部バス116を介して互いに接続される。
【0020】
プロセッサ110は、主記憶装置114に格納されるプログラムを実行する。プロセッサ110がプログラムにしたがって処理を実行することによって、特定の機能を実現する機能部(モジュール)として動作する。以下の説明では、機能部を主語に処理を説明する場合、プロセッサ110が機能部を実現するプログラムを実行していることを示す。
【0021】
入力装置111は、キーボード、マウス、及びタッチパネル等であり、各種情報を入力するために用いられる。出力装置112は、ディスプレイ及びプリンタ等であり、各種情報を出力するために用いられる。なお、計測シミュレーション装置100は、入力装置111及び出力装置112を有していなくてもよい。通信装置113は、ネットワーク105を介して、外部システム101及び外部端末102等と通信する。
【0022】
主記憶装置114は、メモリ等であり、プロセッサ110が実行するプログラム及びプログラムが使用する情報を格納する。また、主記憶装置114はワークエリアとしても用いられる。実施例1の主記憶装置114は、空間識別部120、センサ配置パターン設定部121、及びシミュレータ122を実現するプログラムを格納する。
【0023】
副記憶装置115は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等であり、プログラム及び情報を格納する。実施例1の副記憶装置115は、面設定情報130、センサカタログ131、3次元空間情報132、面識別情報133、移動体シミュレーションモデル情報134、センサ配置パターン情報135、計測条件情報136、及び計測シミュレーション情報137を格納する。なお、副記憶装置115に格納される情報は、主記憶装置114に格納されてもよい。
【0024】
なお、計測シミュレーション装置100が有する各機能部については、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。
【0025】
なお、計測シミュレーション装置100が有する機能は、複数の計算機から構成される計算機システムを用いて実現してもよい。また、計測シミュレーション装置100は、仮想化技術をもちいて実現してもよい。
【0026】
次に、計測シミュレーション装置100が保持する情報について説明する。
【0027】
【0028】
面設定情報130は、3次元空間の構造を形成する面を識別するために用いられる情報である。面設定情報130は、例えば、床面識別情報200、移動体移動範囲情報210、及びグリッド設定情報220を含む。
【0029】
図2Aに示す床面識別情報200は、識別された面に含まれる床面の種別を識別するための情報であり、床面種別201及び基準z座標202を含むエントリを格納する。一種類の床面に対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールド以外のフィールドを含んでもよい。
【0030】
床面種別201は、床面の種別を格納するフィールドである。基準z座標202は、3次元空間内の床面のz座標を格納するフィールドである。
【0031】
図2Bに示す移動体移動範囲情報210は、移動体が移動可能な高低差を管理するための情報であり、移動体種別211及び許容段差212を含むエントリを格納する。一つの移動体の種別に対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールド以外のフィールドを含んでもよい。
【0032】
移動体種別211は、移動体の種別を格納するフィールドである、許容段差212は、移動体が移動可能な高低差を格納するフィールドである。許容段差212に設定された高低差の範囲内に存在する床面群は、移動体が移動可能な床面として識別される。
【0033】
図2Cに示すグリッド設定情報220は、シミュレーションにおけるオブジェクトの位置を表すグリッドを識別された面に設定するための情報であり、端数処理基準値及びグリッド幅を含む。端数処理基準値は、座標の丸めに用いられる基準値である。グリッド幅はグリッド間の幅である。
【0034】
図3は、実施例1のセンサカタログ131の一例を示す図である。
【0035】
センサカタログ131は、センサのスペック等を管理するための情報であり、センサ名称301、種別302、計測距離303、画質304、消費電力305、価格306、設置可能面種別307、及び設置面積308を含むエントリを格納する。一種類のセンサに対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールドのいずれかを含まなくてもよいし、また、他のフィールドを含んでもよい。
【0036】
センサ名称301は、センサの名称を格納するフィールドである。種別302は、センサの種別を格納するフィールドである。計測距離303は、センサが計測可能な距離を格納するフィールドである。なお、画像を取得するセンサの計測距離303は空欄である。画質304は、計測結果として出力される画像の解像度を格納するフィールドである。なお、画質を出力しないセンサの画質304は空欄である。消費電力305は、センサの消費電力を格納するフィールドである。価格306は、センサの価格を格納するフィールドである。
【0037】
設置可能面種別307は、センサが設置可能な面の種別を格納するフィールドである。設置面積308は、センサの設置に必要な面積を格納するフィールドである。
【0038】
図4は、実施例1の3次元空間情報132の一例を示す図である。
【0039】
3次元空間情報132は、計測システムを導入する施設等の3次元空間に関する情報である。
図4に示す3次元空間情報132は、点群で3次元空間を表す情報であり、点ID401、x座標402、y座標403、z座標404、及び色405を含むエントリを格納する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールドのうち色405は含まなくてもよいし、また、他のフィールドを含んでもよい。
【0040】
点ID401は、3次元空間の点を一意に識別するための識別情報を格納するフィールドである。x座標402、y座標403、z座標404は、3次元空間の点の座標を格納するフィールドである。色405は、RGB値等、点の色を表す値を格納するフィールドである。
【0041】
【0042】
面識別情報133は、面の識別結果を管理するための情報である。面識別情報133は、例えば、面情報500、グリッド情報510、センサ配置可能領域情報520、及び、移動体移動可能領域情報530を含む。
【0043】
図5Aに示す面情報500は、3次元空間の面の識別結果を管理するための情報であり、面ID501、フロア502、面種別503、面積504、及び点IDリスト505を含むエントリを格納する。一つの面に対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、フロア502を含まなくてもよいし、前述したフィールド以外のフィールドを含んでもよい。
【0044】
面ID501は、面を一意に識別するための識別情報を格納するフィールドである。フロア502は、面が存在するフロアを格納するフィールドである。面種別503は、面の種別を格納するフィールドである。面積504は、面の面積を格納するフィールドである。点IDリスト505は、面を構成する点のリストである。点IDリスト505には、3次元空間情報132にて定義された点の識別情報が格納される。
【0045】
図5Bに示すグリッド情報510は、面に設定されたグリッドを管理するための情報であり、グリッドID511、面ID512、x座標513、y座標514、及びz座標515を含むエントリを格納する。一つのグリッドに対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールド以外のフィールドを含んでもよい。
【0046】
グリッドID511は、グリッドを一意に識別するための識別情報を格納するフィールドである。面ID512は、グリッドが設定された面の識別情報を格納するフィールドである。面ID512は面ID501に対応するフィールドである。x座標513、y座標514、及びz座標515は、3次元空間におけるグリッドの座標を格納するフィールドである。
【0047】
図5Cに示すセンサ配置可能領域情報520は、センサを配置できる面を管理するための情報であり、センサ名称521、フロア522、及び設置可能領域523を含むエントリを格納する。センサの種別及びフロアの組合せに対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、フロア522を含まなくてもよいし、また、前述したフィールド以外のフィールドを含んでもよい。フロア522を含まない場合、一種類のセンサに対して一つのエントリが存在することになる。
【0048】
センサ名称521は、センサの名称を格納するフィールドである。センサ名称521はセンサ名称301に対応するフィールドである。フロア522は、フロアを格納するフィールドである。フロア522はフロア502に対応するフィールドである。設置可能領域523は、フロア522に対応するフロアにおいてセンサを設置できる面の識別情報を格納するフィールドである。
【0049】
図5Dに示す移動体移動可能領域情報530は、移動体の配置及び移動が可能な面を管理するための情報であり、移動体種別531、フロア532、及び配置可能領域533を含むエントリを格納する。移動体の種別及びフロアの組合せに対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、フロア532を含まなくてもよいし、また、前述したフィールド以外のフィールドを含んでもよい。フロア532を含まない場合、一種類の移動体に対して一つのエントリが存在することになる。
【0050】
移動体種別531は、移動体の種別を格納するフィールドである。移動体種別531は移動体種別211に対応するフィールドである。フロア532は、フロアを格納するフィールドである。フロア532はフロア502に対応するフィールドである。配置可能領域533は、フロア532に対応するフロアにおいて移動体の設置及び移動が可能な面の識別情報を格納するフィールドである。
【0051】
なお、上述した面識別情報133に含まれる情報は一例であってこれに限定されない。例えば、二つの情報を統合した形式の情報でもよいし、一つの情報を分割した形式の情報でもよい。例えば、面情報500に、設置可能なセンサのフィールド、及び配置可能な移動体のフィールドを設けてもよい。
【0052】
【0053】
移動体シミュレーションモデル情報134は、移動体の移動をシミュレーションするためのモデルを管理するための情報である。移動体シミュレーションモデル情報134は、例えば、地点情報600、時刻表情報610、移動設定情報(人)620、移動設定情報(車両)630、及び移動モデル情報640を含む。
【0054】
図6Aに示す地点情報600は、移動体の配置し、また、移動体を移動させる地点を管理するための情報であり、地点601、x座標602、y座標603、及びz座標604を含むエントリを格納する。一つの地点に対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールド以外のフィールドを含んでもよい。
【0055】
地点601は、地点を一意に識別するための識別情報を格納するフィールドである。x座標602、y座標603、及びz座標604は、3次元空間における地点の座標を格納するフィールドである。
【0056】
図6Bに示す時刻表情報610は、車両等の運行スケジュールを管理するための情報であり、時刻表ID611、地点(1)出発時刻612、地点(2)到着時刻613、地点(2)出発時刻614、及び地点(3)到着時刻615を含むエントリを格納する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールドのいずれかを含まなくてもよいし、また、前述したフィールド以外のフィールドを含んでもよい。
【0057】
時刻表ID611は、時刻表を一意に識別するための識別情報を格納するフィールドである。地点(1)出発時刻612は、出発地点である地点(1)の出発時刻を格納するフィールドである。地点(2)到着時刻613及び地点(2)出発時刻614は、地点(2)の到着時刻及び出発時刻を格納するフィールドである。地点(3)到着時刻615は、地点(3)の到着時刻を格納するフィールドである。なお、地点(1)、地点(2)、及び地点(3)は、移動設定情報(車両)630にて定義される。
【0058】
図6Cに示す移動設定情報(人)620は、人又はロボット等の移動に関する設定を管理するための情報であり、OD ID621、移動体種別622、移動地点(1)623、移動地点(2)624、出願条件625、及び出現数624を含むエントリを格納する。一つの移動に関する設定に対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールドのいずれかを含まなくてもよいし、また、前述したフィールド以外のフィールドを含んでもよい。
【0059】
OD ID621は、設定を一意に識別するための識別情報を格納するフィールドである。移動体種別622は、移動体の種別を格納するフィールドである。移動体種別622は移動体種別211に対応するフィールドである。移動地点(1)623及び移動地点(2)624は、移動体を配置する地点及び移動地点を格納するフィールドである。出願条件625は、移動体の移動のシミュレーションの実行契機に関する条件を格納するフィールドである。出現数624は、移動のシミュレーションを行う移動体の数に関する条件を格納するフィールドである。
【0060】
図6Dに示す移動設定情報(車両)630は、車両の移動に関する設定を管理するための情報であり、移動体種別631、地点(1)632、地点(2)633、地点(3)634、及び時刻表ID635を含むエントリを格納する。一つの移動に関する設定に対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールドのいずれかを含まなくてもよいし、また、前述したフィールド以外のフィールドを含んでもよい。
【0061】
移動体種別631は、移動体の種別を格納するフィールドである。移動体種別631は移動体種別211に対応するフィールドである。地点(1)632、地点(2)633、及び地点(3)634は、移動体を配置する地点及び移動地点を格納するフィールドである。時刻表ID635は、移動体の運行スケジュールの識別情報を格納するフィールドである。時刻表ID635は時刻表ID611に対応するフィールドである。
【0062】
図6Eに示す移動モデル情報640は、移動体の移動のシミュレーションモデルを管理するための情報である。実施例1では、移動体の種別毎にシミュレーションモデルが管理される。
【0063】
なお、上述した移動体シミュレーションモデル情報134に含まれる情報は一例であってこれに限定されない。例えば、二つの情報を統合した形式の情報でもよいし、一つの情報を分割した形式の情報でもよい。例えば、時刻表情報610及び移動設定情報(車両)630を統合してもよい。
【0064】
図7は、実施例1のセンサ配置パターン情報135の一例を示す図である。
【0065】
センサ配置パターン情報135は、センサ配置パターンを管理するための情報であり、センサ配置パターン毎にセンサ配置パターンデータ700を格納する。センサ配置パターンデータ700は、配置ID701、センサ名称702、フロア703、面ID704、配置場所705、及び配置角度706を含むエントリを格納する。一つのセンサに対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、フロア703を含まなくてもよいし、また、前述したフィールド以外のフィールドを含んでもよい。
【0066】
配置ID701は、センサ配置パターンに含まれるセンサを一意に識別するための識別情報を格納するフィールドである。センサ名称702は、配置されたセンサの名称を格納するフィールドである。センサ名称702はセンサ名称301に対応するフィールドである。フロア703は、センサが配置されたフロアを格納するフィールドである。フロア703はフロア502に対応するフィールドである。面ID704は、センサが配置された面の識別情報を格納するフィールドである。面ID704は面ID501に対応するフィールドである。配置場所705は、3次元空間のセンサの配置場所を示す座標を格納するフィールドである。配置角度706は、センサの配置角度を格納するフィールドである。配置角度706には、例えば、ロール角、ピッチ角、及びヨー角が格納される。
【0067】
図8A及び
図8Bは、実施例1の計測条件情報136の一例を示す図である。
【0068】
計測条件情報136は、センサによる計測のシミュレーションの設定を管理するための情報である。計測条件情報136は、例えば、エリア情報800及び計測設定情報810を含む。
【0069】
図8Aに示すエリア情報800は、センサによる計測を行うエリアを管理するための情報であり、エリアID801及び構成面802を含むエントリを格納する。一つのエリアに対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールド以外のフィールドを含んでもよい。
【0070】
エリアID801は、エリアを一意に識別するための識別情報を格納するフィールドである。構成面802は、エリアを構成する面の識別情報を格納するフィールドである。
【0071】
図8Bに示す計測設定情報810は、計測に関する設定を管理するための情報であり、計測ID811、計測種別812、エリアID813、移動体814、及び計測時刻815を含むエントリを格納する。一つの計測に関する設定に対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールド以外のフィールドを含んでもよい。
【0072】
計測ID811は、設定を一意に識別するための識別情報を格納するフィールドである。計測種別812は、計測の内容及び種別を格納するフィールドである。エリアID813は、計測を行うエリアの識別情報を格納するフィールドである。エリアID813はエリアID801に対応するフィールドである。移動体814は、計測対象の移動体の種別を格納するフィールドである。移動体814には、一つ以上の移動体の種別が設定される。計測時刻815は、計測を行う時刻を格納するフィールドである。
【0073】
なお、上述した計測条件情報136に含まれる情報は一例であってこれに限定されない。例えば、二つの情報を統合した形式の情報でもよいし、一つの情報を分割した形式の情報でもよい。
【0074】
図9は、実施例1の計測シミュレーション情報137の一例を示す図である。
【0075】
計測シミュレーション情報137は、計測シミュレーションの結果を管理するための情報である。計測シミュレーション情報137は、計測ID901、計測値902、真値903、及び誤差904を含むエントリを格納する。一つのセンサの計測結果に対して一つのエントリが存在する。なお、エントリに含まれるフィールドは前述したものに限定されない。例えば、前述したフィールドのいずれかを含まなくてもよいし、また、センサID等、他のフィールドを含んでもよい。
【0076】
計測ID901は、計測結果を一意に識別するための識別情報を格納するフィールドである。計測値902は、計測値を格納するフィールドである。真値903は、シミュレーション空間における真値を格納するフィールドである。誤差904は、計測値及び真値の誤差を格納するフィールドである。
【0077】
以上が、計測シミュレーション装置100が保持する情報の説明である。次の、計測シミュレーション装置100が実行する処理について説明する。
【0078】
計測シミュレーション装置100は、
図10に示すような画面1000を提示し、3次元空間の情報、面の識別に用いる情報、及びセンサカタログ等の入力を受け付ける。画面1000は、設定欄1001、1002、1003、及び操作ボタン1004を含む。
【0079】
設定欄1001は、3次元空間情報132を設定するための欄である。設定欄1001には例えば、データ形式及びデータのパス等が入力される。設定欄1002は、面設定情報130を設定するための欄である。設定欄1002には、床面識別情報のパス、グリッドの設定値、及び移動体の移動範囲に関する情報が入力される。設定欄1003は、センサカタログ131を設定するための欄である。操作ボタン1004は、計測シミュレーション装置100に面の識別を指示するためのボタンである。
【0080】
ユーザが操作ボタン1004を操作した場合、計測シミュレーション装置100に面識別要求が送信される。面識別要求には、3次元空間情報132、面設定情報130、及びセンサカタログ131が含まれる。計測シミュレーション装置100は、面識別要求を受信した場合、3次元空間情報132、面設定情報130、及びセンサカタログ131を副記憶装置115に格納し、面識別処理を開始する。
【0081】
図11は、実施例1の計測シミュレーション装置100が実行する面識別処理の一例を説明するフローチャートである。
【0082】
計測シミュレーション装置100の空間識別部120は、副記憶装置115から、3次元空間情報132、面設定情報130、及びセンサカタログ131を取得する(ステップS101)。
【0083】
空間識別部120は、3次元空間情報132及び床面識別情報200を用いて面を識別する(ステップS102)。具体的には、以下のような処理が実行される。
【0084】
(S102-1)空間識別部120は、3次元空間情報132を用いて、3次元空間に含まれる面を特定する。空間識別部120は、面情報500に、特定した面の数だけエントリを追加し、各エントリの面ID501の識別情報を設定する。空間識別部120は、各エントリの点IDリスト505に面を構成する点群の識別情報を設定する。また、空間識別部120は、各面の面積を算出し、各エントリの面積504に値を設定する。
【0085】
(S102-2)空間識別部120は、面を構成する点群のz座標に基づいて床面識別情報200を参照して、床面を特定する。床面として特定された面のエントリのフロア502及び面種別503に値を設定する。なお、あるフロアの基準z座標との差が所定の範囲内の床面は当該フロアに分類される。
【0086】
(S102-3)空間識別部120は、床面に分類されていない面について、当該面と床面との位置関係等に基づいて、フロア及び種別を特定する。空間識別部120は、結果を各エントリに反映する。以上の処理によって面情報500が生成される。
【0087】
例えば、1Fの床面及び2Fの床面との間に存在、かつ、各床面と略垂直な面である場合、当該面は「1Fの壁」に分類される。また、1Fの床面及び2Fの床面との間に存在し、各床面と略平行であり、かつ、2Fの床面とのz座標の差が閾値より小さい面である場合、当該面は「1Fの天井」に分類される。
【0088】
(S102-4)空間識別部120は、グリッド設定情報220に基づいて、各面にグリッドを設定し、設定結果に基づいてグリッド情報510を生成する。
【0089】
以上がステップS102の処理の説明である。
【0090】
空間識別部120は、3次元空間情報132、移動体移動範囲情報210、センサカタログ131、及び面情報500に基づいて、センサ配置可能領域及び移動体移動可能領域を特定し(ステップS103)、その後、面識別処理を終了する。具体的には、以下のような処理にしたがって、センサ配置可能領域情報520及び移動体移動可能領域情報530が生成される。
【0091】
(S103-1)空間識別部120は、センサカタログ131からエントリを選択する。
【0092】
(S103-2)空間識別部120は、フロアを選択する。空間識別部120は、面情報500から、フロア502に選択されたフロアが設定されているエントリを取得する。
【0093】
(S103-3)空間識別部120は、S103-1で選択されたエントリの設置可能面種別307及び設置面積308と、S103-2で取得された各エントリの面種別503及び面積504とに基づいて、S103-1で選択されたエントリに対応する種別のセンサが設置可能な面を特定する。空間識別部120は、センサ配置可能領域情報520にエントリを追加し、S103-1で選択されたエントリのセンサ名称301の値をセンサ名称521に設定し、S103-2で選択されたフロアをフロア522に設定する。また、空間識別部120は、追加されたエントリの設置可能領域523に特定された面の識別情報を設定する。
【0094】
全てのフロアについて処理が完了していない場合、空間識別部120はS103-2に戻る。センサカタログ131の全てのエントリについて処理が完了していない場合、空間識別部120はS103-1戻る。
【0095】
S103-1からS103-3の処理を繰り返し実行することによってセンサ配置可能領域情報520が生成される。
【0096】
(S103-4)空間識別部120は、移動体移動範囲情報210からエントリを選択する。
【0097】
(S103-5)空間識別部120は、フロアを選択し、面情報500から、フロア502に選択したフロアが設定され、かつ、面種別503に床面が設定されるエントリを検索する。空間識別部120は、床面の中から基準床面を選択する。ここでは、床面のz座標と基準z座標202と差が最も小さい床面が基準床面として選択される。
【0098】
(S103-6)空間識別部120は、基準床面のz座標と他の床面のz座標との差を算出する。空間識別部120は、S103-4で選択されたエントリの許容段差212の値より差が小さい床面の組合せを検索する。
【0099】
(S103-7)空間識別部120は、移動体移動可能領域情報530にエントリを追加し、S103-4で選択されたエントリの移動体種別211の値を移動体種別531に設定し、S103-5で選択されたフロアをフロア532に設定する。また、空間識別部120は、追加されたエントリの配置可能領域533に、基準床面の識別情報、及びS103-5で検索された床面の識別情報を設定する。
【0100】
全てのフロアについて処理が完了していない場合、空間識別部120はS103-5に戻る。移動体移動範囲情報210の全てのエントリについて処理が完了していない場合、空間識別部120はS103-4に戻る。
【0101】
S103-4からS103-6の処理を繰り返し実行することによって移動体移動可能領域情報530が生成される。
【0102】
以上がステップS103の処理の説明である。
【0103】
計測シミュレーション装置100は、面識別処理が終了した後、センサ配置パターン登録処理を開始する。センサ配置パターン登録処理は、面識別処理の終了後自動的に開始してもよいし、ユーザの実行要求を受け付けた後に開始してもよい。
【0104】
図12は、実施例1の計測シミュレーション装置100が実行するセンサ配置パターン登録処理の一例を説明するフローチャートである。
図13は、実施例1の計測シミュレーション装置100が提示する画面の一例を示す図である。
【0105】
計測シミュレーション装置100のセンサ配置パターン設定部121は、副記憶装置115からセンサカタログ131及び面識別情報133を取得する(ステップS201)。
【0106】
センサ配置パターン設定部121は、画面1300を提示し(ステップS202)、センサ配置パターンに関する入力を受け付ける。
【0107】
画面1300は、表示欄1301、1302、設定欄1303、及び操作ボタン1304を含む。
【0108】
表示欄1301は、面の識別結果を表示する欄である。表示欄1301には、例えば、グリッド情報510及びセンサ配置可能領域情報520が表示される。表示欄1302は、センサカタログ131を表示する欄である。設定欄1303は、センサ配置パターンを設定するための欄である。操作ボタン1304は、センサ配置パターンを登録するためのボタンである。
【0109】
ユーザは、センサカタログ131を参照してセンサを選択し、センサ配置可能領域情報520を参照してセンサを設置する面を選択し、グリッド情報510を参照して選択した面におけるセンサの設置場所を設定し、また、設置角度を設定する。このように、センサ配置可能領域情報520及びグリッド情報510を提示することによって、センサの配置を容易に設定することができる。
【0110】
なお、グリッド情報510及びセンサ配置可能領域情報520を表示する代わりに、設置可能領域を強調表示した3次元画像を表示するようにしてもよい。この場合、ユーザは、3次元画像にセンサのアイコンを配置することによってセンサ配置パターンの設定を行う。
【0111】
操作ボタン1304が操作された場合、設定欄1303に設定されたセンサ配置パターンの情報を含む登録要求が計測シミュレーション装置100に送信される。
【0112】
センサ配置パターン設定部121は、登録要求を受信した場合、センサ配置パターン情報135にセンサ配置パターンデータ700を登録し(ステップS203)、その後、センサ配置パターン登録処理を終了する。なお、一度に複数のセンサ配置パターンが設定されてもよい。
【0113】
計測シミュレーション装置100は、計測シミュレーションを実行するために必要な情報を入力するために、
図14に示すような画面1400を提示する。画面1400は、表示欄1401、設定欄1402、1402、及び操作ボタン1404を含む。
【0114】
表示欄1401は、面の識別結果を表示する欄である。表示欄1401には、例えば、グリッド情報510及び移動体移動可能領域情報530が表示される。設定欄1402は、移動体シミュレーションモデル情報134に含める各種情報を設定するための欄である。設定欄1403は、計測条件情報136に含める各種情報を設定するための欄である。操作ボタン1404は、計測シミュレーションの実行を指示するためのボタンである。
【0115】
図14では、項目単位で設定する画面を表示しているが、予め生成した設定ファイルを入力するような画面でもよい。
【0116】
ユーザは、グリッド情報510及び移動体移動可能領域情報530を参照して、モデル及び計測条件等の設定を行う。このように、移動体移動可能領域情報530及びグリッド情報510を提示することによって、移動体の移動に関するシミュレーションのモデル、及び計測条件等を容易に設定することができる。
【0117】
操作ボタン1404が操作された場合、設定欄1402、1403に設定された情報を含む実行要求が計測シミュレーション装置100に送信される。
【0118】
計測シミュレーション装置100は、実行要求を受信した場合、実行要求に含まれる情報を副記憶装置に格納し、計測シミュレーション処理を開始する。
【0119】
図15は、実施例1の計測シミュレーション装置100が実行する計測シミュレーション処理の一例を説明するフローチャートである。
【0120】
計測シミュレーション装置100のシミュレータ122は、副記憶装置115から、計測シミュレーションに必要な情報を取得する(ステップS301)。
【0121】
具体的には、センサカタログ131、3次元空間情報132、面識別情報133、移動体シミュレーションモデル情報134、センサ配置パターン情報135、計測条件情報136を取得する。
【0122】
シミュレータ122は、取得した情報を用いて、計測シミュレーションを実行する(ステップS302)。例えば、以下のような手順で計測シミュレーションが実行される。
【0123】
シミュレータ122は、3次元空間情報132に基づいて仮想空間を生成する。シミュレータ122は、移動体シミュレーションモデル情報134に基づいて、仮想空間上で移動体の移動をシミュレーションする。シミュレータ122は、計測条件情報136、センサカタログ131、及びセンサ配置パターン情報135に基づいて、仮想空間上でセンサの計測をシミュレーションする。例えば、センサがカメラである場合、指定されたエリアの画像が取得され、センサが人数カウンタである場合、指定されたエリアに存在する人の数が取得され、センサがLiDARである場合、指定されたエリアのオブジェクトまでの距離情報が取得される。距離情報から移動体を検出し、移動体の数を計測結果として取得してもよい。
【0124】
シミュレータ122は、計測シミュレーション情報137に、計測シミュレーションの結果を保存し(ステップS303)、その後、計測シミュレーション処理を終了する。
【0125】
計測シミュレーション装置100は、計測シミュレーション情報137に基づいて、
図16に示すような画面1600を表示することができる。
【0126】
画面1600は、表示欄1601、1602を含む。表示欄1601は、仮想空間におけるセンサの位置、移動体の配置及び移動状態等を表示する欄である。表示欄1601には、センサ配置パターン及び計測条件等を変更するための操作ボタンが含まれてもよい。当該操作ボタンが操作された場合、画面1300及び画面1400が表示される。表示欄1602は、計測結果を表示する欄である。
図16では、画像と、画像からカウントされた人の数及び真値とが表示されている。
【0127】
以上で説明したように、実施例1の計測シミュレーション装置100は、3次元空間の構造を形成する面を識別し、面情報500、グリッド情報510、センサ配置可能領域情報520、及び、移動体移動可能領域情報530を生成する。これによって、計測シミュレーションの実行に必要な、センサの配置可能領域、及び移動体の移動可能領域を仮想空間の環境情報として自動的に設定できる。また、面情報500、グリッド情報510、センサ配置可能領域情報520、及び、移動体移動可能領域情報530等を用いることによって、計測シミュレーションに関する設定に要するコストを削減できる。また、様々な、センサ配置パターンについて計測シミュレーションを実行することができるため、検証システムの導入効果をより精度よく検証することができる。
【0128】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【0129】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD-ROM、DVD-ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD-R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
【0130】
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Python、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
【0131】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD-RW、CD-R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
【0132】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。