(57)【要約】  本技術に係る情報処理装置は、制御部を有する。上記制御部は、判定部と、モデルデータ生成部とを有する。上記判定部は、移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定する。上記モデルデータ生成部は、上記判定部により上記所定のモデリング条件を満たすと判定された場合に、上記センサデータを用いて床面に関するモデルデータを生成する。【選択図】図２
2019215997.tif 000002
【特許請求の範囲】
【請求項１】
移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定する判定部と、
前記判定部により前記所定のモデリング条件を満たすと判定された場合に、前記センサデータを用いて床面に関するモデルデータを生成するモデルデータ生成部と
を有する制御部
を具備する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記制御部は、床面上を移動可能な前記移動体の移動に伴って、前記モデルデータを生成するために必要なセンサデータを所定時間毎に取得するデータ取得部をさらに有する
情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記制御部は、前記データ取得部により取得されたセンサデータに基づき、前記移動体の移動量と前記移動体の姿勢の変位量とを算出する演算部をさらに有し、
前記判定部は、前記演算部の演算結果から、前記移動量が所定の第１の条件を満たすか否か、且つ、前記変位量が所定の第２の条件を満たすか否かを判定し、
前記モデルデータ生成部は、前記判定部により前記第１及び第２の条件を満たすと判定された判定結果に基づくセンサデータを用いて前記モデルデータを生成する
情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記演算部は、第１の姿勢の前記移動体の重力方向における床面からの高さと、第２の姿勢の前記移動体の重力方向における当該床面からの高さとの差分を前記移動量として算出し、
前記判定部は、前記差分が所定の閾値以下である場合に、前記第１の条件が満たされたと判定する
情報処理装置。
【請求項５】
請求項３に記載の情報処理装置であって、
前記演算部は、前記データ取得部により取得されたセンサデータから前記移動体の重力加速度ベクトルを算出し、当該重力加速度ベクトルに基づき、前記変位量を算出する
情報処理装置。
【請求項６】
請求項３に記載の情報処理装置であって、
前記演算部は、第１の姿勢の前記移動体の重力加速度ベクトルと、第２の姿勢の前記移動体の重力加速度ベクトルとのなす角度を前記変位量として算出し、
前記判定部は、前記角度が所定の閾値以下である場合に、前記第２の条件が満たされたと判定する
情報処理装置。
【請求項７】
請求項３に記載の情報処理装置であって、
前記演算部は、前記移動体の重力加速度ベクトルと、床面と平行な仮想平面とが直交する座標位置を前記移動体の初期位置として算出し、
前記モデルデータ生成部は、前記仮想平面から重力方向に所定距離だけ離れた位置に前記モデルデータを生成する
情報処理装置。
【請求項８】
請求項３に記載の情報処理装置であって、
前記演算部は、床面に載置されたマーカーを基準としたマーカー座標系における前記移動体の座標位置から、前記マーカーが載置された床面と前記移動体との間の距離を算出し、
前記モデルデータ生成部は、前記移動体から重力方向に当該距離だけ離れた位置に前記モデルデータを生成する
情報処理装置。
【請求項９】
請求項２に記載の情報処理装置であって、
前記制御部は、前記データ取得部により取得されたセンサデータに基づき、前記移動体を有するユーザが歩行状態であるか否かを判定する歩行状態判定部をさらに有する
情報処理装置。
【請求項１０】
請求項９に記載の情報処理装置であって、
前記制御部は、前記歩行状態判定部により前記ユーザが歩行状態であると判定されている期間が所定の閾値以上である場合に、前記移動体が基準姿勢時に検出されたセンサデータとは異なるセンサデータを新たな基準姿勢のセンサデータとする更新処理を実行する更新部をさらに有する
情報処理装置。
【請求項１１】
移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定し、
前記所定のモデリング条件を満たすと判定された場合に、前記センサデータを用いて床面に関するモデルデータを生成する
情報処理方法。
【請求項１２】
移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定するステップと、
前記所定のモデリング条件を満たすと判定された場合に、前記センサデータを用いて床面に関するモデルデータを生成するステップと
を情報処理装置に実行させるプログラム。
【請求項１３】
床面上を移動する移動体に搭載され、前記移動体の三次元空間における位置を推定可能に構成された自己位置推定装置と、
前記移動体に搭載された加速度センサと、
前記移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定する判定部と、
前記判定部により前記所定のモデリング条件を満たすと判定された場合に、前記センサデータを用いて床面に関するモデルデータを生成するモデルデータ生成部と
を有する制御部を有する情報処理装置と
を具備する床面モデリングシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、実世界の床面をコンピュータで処理可能なモデルデータとして生成する情報処理装置、情報処理方法、プログラム及び床面モデリングシステムに関する。
【背景技術】
【０００２】
従来、没入感のあるＡＲ／ＶＲアプリケーションをユーザに提供する装置として、種々のＨＭＤ（Head Mounted Display）が提案されている。このようなＨＭＤは、実世界に即した仮想情報を重畳表示したり、ＨＭＤを装着したユーザの頭部の動きに合わせて表示情報を変えたりする機能を持つ。一般に、ＨＭＤは、ユーザの頭部の動きを把握するための自己位置推定装置や、自己位置推定装置の推定精度を向上させるためのセンサ群を備えているものが多い。【０００３】
ＨＭＤに実世界に即した仮想情報を表示させるためには、実世界の三次元情報を取得する必要がある。例えば特許文献１には、モデリングの対象（例えば床面）をカメラにより撮像することで対象の実世界における三次元情報を取得し、この情報を用いて対象をコンピュータで処理可能なモデルデータとして表現する技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−９２８２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
没入感のあるＡＲ／ＶＲアプリケーションをユーザに提供するためには、床面を正確にモデリングする必要がある。そのためには、モデリングの対象である床面の三次元情報を正確に取得する必要がある。しかしながら、引用文献１に記載されたような技術を利用して、床面の三次元情報を正確に取得するためには、例えば、カメラを搭載したＨＭＤを装着したユーザに特定の姿勢を取らせ続ける必要があり、ユーザの負担が大きくなるおそれがある。【０００６】
以上のような事情に鑑み、本技術の目的は、ユーザ負荷を低減させつつ、床面を正確にモデリング可能な情報処理装置、情報処理方法、プログラム及び床面モデリングシステムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本技術の一形態に係る情報処理装置は、制御部を有する。
上記制御部は、判定部と、モデルデータ生成部とを有する。
上記判定部は、移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定する。
上記モデルデータ生成部は、上記判定部により上記所定のモデリング条件を満たすと判定された場合に、上記センサデータを用いて床面に関するモデルデータを生成する。【０００８】
本技術の情報処理装置は、所定のモデリング条件が満たされていれば、床面に関するモデルデータを自動的に生成する。これにより、モデリングの対象である床面を直接観測することなく、当該床面に関するモデルデータが生成可能となる。よって、床面を観測するために、例えば、ユーザに常に床面側を向かせる等の特定の姿勢を取らせ続ける必要がなくなるので、ユーザ負荷の低減が図られる。【０００９】
また、本技術の情報処理装置は、所定のモデリング条件を満たす場合にのみ、移動体の移動に伴って床面に関するモデルデータを生成する。これにより、移動体が物理的に正しい床面上のみを移動することによって、床面以外の領域が床面と認識される誤認識がなくなり、床面を正確にモデリングすることができる。【００１０】
これらのことから、本技術によれば、ユーザ負荷を低減させつつ、床面を正確にモデリング可能な情報処理装置を提供することができる。【００１１】
上記制御部は、床面上を移動可能な上記移動体の移動に伴って、上記センサデータを所定時間毎に取得するデータ取得部をさらに有してもよい。【００１２】
上記制御部は、上記データ取得部により取得された上記センサデータに基づき、上記移動体の移動量と上記移動体の姿勢の変位量とを算出する演算部をさらに有し、
上記判定部は、上記演算部の演算結果から、上記移動量が所定の第１の条件を満たすか否か、且つ、上記変位量が所定の第２の条件を満たすか否かを判定し、
上記モデルデータ生成部は、上記判定部により上記第１及び第２の条件を満たすと判定された判定結果に基づくセンサデータを用いて上記モデルデータを生成してもよい。
これにより、移動体が所定の姿勢ではない状態のときに、床面がモデリングされることが回避される。即ち、移動体が所定の姿勢に近い状態の時のみ床面をモデリングすることが可能となり、物理的に正しい床面のみをモデリングすることができる。【００１３】
上記演算部は、第１の姿勢の上記移動体の重力方向における床面からの高さと、第２の姿勢の上記移動体の重力方向における当該床面からの高さとの差分を上記移動量として算出し、
上記判定部は、上記差分が所定の閾値以下である場合に、上記第１の条件が満たされたと判定してもよい。【００１４】
上記演算部は、上記データ取得部により取得されたセンサデータから上記移動体の重力加速度ベクトルを算出し、当該重力加速度ベクトルに基づき、上記変位量を算出してもよい。【００１５】
上記演算部は、第１の姿勢の上記移動体の重力加速度ベクトルと、第２の姿勢の上記移動体の重力加速度ベクトルとのなす角度を上記変位量として算出し、
上記判定部は、上記角度が所定の閾値以下である場合に、上記第２の条件が満たされたと判定してもよい。【００１６】
上記演算部は、上記移動体の重力加速度ベクトルと、床面と平行な仮想平面とが直交する座標位置を上記移動体の初期位置として算出し、
上記モデルデータ生成部は、上記仮想平面から重力方向に所定距離だけ離れた位置に上記モデルデータを生成してもよい。
これにより、仮想平面から重力方向に所定距離だけ離れた位置に床面に関するモデルデータが生成される。従って、常に仮想平面から一定の距離にモデルデータが生成されることから、階段や坂等を含まない平滑な平面のみから床面が構成される環境下において、当該床面により即したモデリングが可能となる。【００１７】
上記演算部は、床面に載置されたマーカーを基準としたマーカー座標系における上記移動体の座標位置から、上記マーカーが載置された床面と上記移動体との間の距離を算出し、
上記モデルデータ生成部は、上記移動体から重力方向に当該距離だけ離れた位置に上記モデルデータを生成してもよい。
これにより、ユーザの身長を利用せずとも床面をモデリングすることが可能となり、ユーザの身長がそれぞれ異なることに起因したモデリング精度のバラツキが抑制される。【００１８】
上記制御部は、上記データ取得部により取得されたセンサデータに基づき、上記移動体を有するユーザが歩行状態であるか否かを判定する歩行状態判定部をさらに有してもよい。
これにより、坂等が存在する環境下であっても、継続的に床面をモデリングすることが可能となる。【００１９】
上記制御部は、上記歩行状態判定部により上記ユーザが歩行状態であると判定されている期間が所定の閾値以上である場合に、上記移動体が基準姿勢時に検出されたセンサデータとは異なるセンサデータを新たな基準姿勢のセンサデータとする更新処理を実行する更新部をさらに有してもよい。
これにより、坂や階段等といった高低差が存在する環境下において、基準姿勢に対応する高さ以外の高さの床面もモデリング可能となる。【００２０】
上記目的を達成するため、本技術の一形態に係る情報処理方法は、移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かが判定される。
上記モデリング条件を満たすと判定された場合に、上記センサデータを用いて床面に関するモデルデータが生成される。【００２１】
上記目的を達成するため、本技術の一形態に係るプログラムは、情報処理装置に以下のステップを実行させる。
移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定するステップ。
上記所定のモデリング条件を満たすと判定された場合に、上記センサデータを用いて床面に関するモデルデータを生成するステップ。【００２２】
上記目的を達成するため、本技術の一形態に係る床面モデリングシステムは、自己位置推定装置と、加速度センサと、情報処理装置とを有する。
上記自己位置推定装置は、床面上を移動する移動体に搭載され、上記移動体の三次元空間における位置を推定可能に構成される。
上記加速度センサは、上記移動体に搭載される。
上記情報処理装置は、制御部を有する。
上記制御部は、判定部と、モデルデータ生成部とを有する。
上記判定部は、上記移動体の移動体に伴って取得された上記センサデータに基づき、所定のモデリング条件を満たすか否かを判定する。
上記モデルデータ生成部は、上記判定部により上記所定のモデリング条件を満たすと判定された場合に、上記センサデータを用いて床面に関するモデルデータを生成する。
【発明の効果】
【００２３】
以上のように、本技術によれば、ユーザ負荷を低減させつつ、床面を正確にモデリング可能な情報処理装置、情報処理方法及び床面モデリングシステムを提供することができる。なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、又は、上記の効果に代えて、本明細書に示されたいずれかの効果又は本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【００２４】
【図１】本技術の第１の実施形態に係る床面モデリングシステムの構成例を示すブロック図である。
【図２】上記床面モデリングシステムの床面をモデリングする方法を示すフローチャートである。
【図３】条件１を説明するための概念図である。
【図４】条件２を説明するための概念図である。
【図５】本技術の床面モデリングシステムが床面に関するモデルデータを生成する一例を示す概念図である。
【図６】本技術の床面モデリングシステムが床面に関するモデルデータを生成する一例を示す概念図である。
【図７】本技術の床面モデリングシステムが床面に関するモデルデータを生成する一例を示す概念図である。
【図８】本技術の床面モデリングシステムが床面に関するモデルデータを生成する一例を示す概念図である。
【図９】本技術の第２の実施形態に係る床面モデリングシステムの床面をモデリングする方法を示すフローチャートである。
【図１０】上記実施形態の床面モデリング方法を説明するための概念図である。
【図１１】本技術の第２の実施形態に係る床面モデリングシステムの構成例を示すブロック図である。
【図１２】上記床面モデリングシステムの床面をモデリングする方法を示すフローチャートである。
【図１３】上記実施形態の床面モデリング方法を説明するための概念図である。
【図１４】本技術の第４の実施形態に係る床面モデリングシステムの構成例を示すブロック図である
【図１５】上記床面モデリングシステムの床面をモデリングする方法を示すフローチャートである。
【図１６】上記実施形態の床面モデリング方法を説明するための概念図である。
【図１７】一般的な特化型ＡＩの処理手順を簡略的に示すブロック図である。
【図１８】本技術の第５の実施形態に係る床面モデリングシステムの構成例を示すブロック図である。
【図１９】上記床面モデリングシステムの床面をモデリングする方法を示すフローチャートである。
【図２０】上記実施形態の床面モデリング方法を説明するための概念図である。
【発明を実施するための形態】
【００２５】
以下、図面を参照しながら、本技術に係る床面モデリングシステムを、床面上を移動する移動体の一例であるヘッドマウントディスプレイ（以下、ＨＭＤ）に適用した実施形態について説明する。
【００２６】
１．第１の実施形態
［床面モデリングシステムの構成］
図１は、本技術の一実施形態に係る床面モデリングシステム１００の構成例を示すブロック図である。床面モデリングシステム１００は、図１に示すように、情報処理装置２０と、自己位置推定装置３０と、加速度センサ４０とを有する。
【００２７】
情報処理装置２０は、制御部２１（ＣＰＵ）、記憶部２２、Ｉ／Ｏインターフェース２３及びバス２４等のコンピュータに必要なハードウェアを有する。記憶部２２は、ＲＯＭ２２１及びＲＡＭ２２２を有する。
【００２８】
ＲＯＭ２２１は、情報処理装置２０に用いられる各種のデータやプログラム等が固定的に格納されたメモリデバイスである。
【００２９】
ＲＡＭ２２２は、制御部２１のための作業領域及び履歴データの一時保存空間等として用いられる。ＲＡＭ２２２は、例えば、ＳＲＡＭ（Static Random Access Memory）、ＤＲＡＭ（Dynamic Random Access Memory）又はＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）等である。
【００３０】
また、記憶部２２は、ＨＤＤ（Hard Disc Drive）及びフラッシュメモリ（ＳＳＤ：Solid State Drive）等の不揮発性メモリを有していてもよい。記憶部２２は、自己位置推定装置３０及び加速度センサ４０から出力されたセンサデータや、制御部２１から出力されたモデルデータ等を記憶する。
【００３１】
制御部２１は、ＲＯＭ２２１に格納された本技術に係るプログラムをＲＡＭ２２２にロードして実行する。これにより、床面モデリングシステム１００の全体動作と、後述する床面をモデリングする方法が制御される。プログラムは、例えば種々の記憶媒体（内部メモリ）を介して情報処理装置２０にインストールされる。あるいは、インターネット等を介してプログラムのインストールが実行されてもよい。
【００３２】
また、制御部２１は、図１に示すように、機能的に、データ取得部２１１と、演算部２１２と、判定部２１３と、モデルデータ生成部２１４とを有する。
【００３３】
データ取得部２１１は、自己位置推定装置３０及び加速度センサ４０から出力されたセンサデータを所定時間毎に取得する。
【００３４】
演算部２１２は、データ取得部２１１により取得されたセンサデータに基づき、ＨＭＤの移動量と、ＨＭＤの姿勢の変位量を算出する。判定部２１３は、データ取得部２１１により取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定する。
【００３５】
モデルデータ生成部２１４は、判定部２１３により所定のモデリング条件を満たすと判定された場合に、データ取得部２１１が取得したセンサデータを用いて床面に関するモデルデータを生成する。
【００３６】
Ｉ／Ｏインターフェース２３は、バス２４を介して、制御部２１及び記憶部２２に接続される。Ｉ／Ｏインターフェース２３は、情報処理装置２０の入出力インターフェースとして機能する。従って、自己位置推定装置３０及び加速度センサ４０から出力されたセンサデータは、Ｉ／Ｏインターフェース２３を介して、制御部２１及び記憶部２２に出力される。
【００３７】
バス２４は、情報処理装置２０の各部の間で各種の信号を入出力するための信号伝送経路である。上記の制御部２１、ＲＯＭ２２１、ＲＡＭ２２２及びＩ／Ｏインターフェース２３は、相互にバス２４を通じて互いに接続される。
【００３８】
自己位置推定装置３０は、ＨＭＤに搭載され、ＨＭＤの三次元空間における位置を推定可能に構成される。自己位置推定装置３０は、例えば、カメラセンサを用いたＳＬＡＭ（Simultaneous Localization and Mapping）等である。
【００３９】
加速度センサ４０は、ＨＭＤに搭載され、ＨＭＤの三次元空間における位置を表す座標系を構成する３軸方向の加速度を測定可能に構成される。加速度センサ４０としては、圧電型加速度センサ、サーボ型加速度センサ、ひずみ型加速度センサ及び半導体式加速度センサ等が採用可能であり、その種類は問わない。
【００４０】
［床面モデリング方法］
図２は、床面モデリングシステム１００の床面をモデリングする方法を示すフローチャートである。以下、本技術の床面をモデリングする方法について、図２を適宜参照しながら説明する。
【００４１】
先ず、ＨＭＤの三次元空間における座標位置を適当な座標系で初期化する（ステップＳ１０１）。ステップＳ１０１では、例えば、任意の世界座標系におけるＸ，Ｙ及びＺ軸方向に沿った移動パラメータと、Ｘ，Ｙ及びＺ軸周りの回転パラメータのキャリブレーションが実行される。これにより、ＨＭＤの三次元空間における位置が上記座標系で表現される。
【００４２】
次に、ＨＭＤの基準姿勢（第１の姿勢）を登録する（ステップＳ１０２）。具体的には、ＨＭＤを装着したユーザが直立した状態において、自己位置推定装置３０及び加速度センサ４０から出力されたセンサデータと、任意の入力部（図示略）から出力されたユーザの身長に関する情報がデータ取得部２１１に入力される。そして、データ取得部２１１はこれらの情報を演算部２１２に出力し、演算部２１２により演算処理が実行される。
【００４３】
これにより、基準姿勢時のＨＭＤの座標位置及び重力加速度ベクトルＶｂと、基準姿勢時のＨＭＤと床面との間の距離ｈ（図５参照）が算出され、これらが記憶部２２に記憶される。
【００４４】
なお、基準姿勢とは、ＨＭＤを装着したユーザが直立した状態でのＨＭＤの姿勢であり、以下の説明においても同義である。基準姿勢時のＨＭＤの座標位置は、任意の世界座標系におけるＸ，Ｙ及びＺ軸方向に沿った移動パラメータをｔとし、Ｘ，Ｙ及びＺ軸周りの回転パラメータをＲとした場合に、（Ｒｂ，ｔｂ）と表される。
【００４５】
ＨＭＤと床面と間の距離ｈは、ＨＭＤを装着したユーザの身長に基づき算出される。ここで、距離ｈは、ユーザの身長と一致しないため、ユーザの頭頂とＨＭＤとの間の距離を考慮して算出される。例えば、記憶部２２に記憶された、ユーザの頭頂とＨＭＤとの間の距離のサンプル集合から平均値を求め、ユーザの身長と当該平均値との差分を算出することにより距離ｈが得られる。
【００４６】
続いて、ステップＳ１０２が実行されてから所定時間経過後に、自己位置推定装置３０及び加速度センサ４０からセンサデータが出力される。このセンサデータは、Ｉ／Ｏインターフェース４５を介してデータ取得部２１１に出力される（ステップＳ１０３）。データ取得部２１１は、自己位置推定装置３０及び加速度センサ４０から出力されたセンサデータを演算部２１２に出力する。
【００４７】
データ取得部２１１からセンサデータを取得した演算部２１２は、当該センサデータに基づき、基準姿勢から移動後のＨＭＤ（第２の姿勢時のＨＭＤ）の座標位置及び重力加速度ベクトルＶｇを算出し、これらが記憶部２２に記憶される。基準姿勢から移動後のＨＭＤの座標位置は、任意の世界座標系におけるＸ，Ｙ及びＺ軸方向に沿った移動パラメータをｔとし、Ｘ，Ｙ及びＺ軸周りの回転パラメータをＲとした場合に（Ｒ，ｔ）と表され、基準姿勢時の座標位置（Ｒｂ，ｔｂ）と同じ座標系で表現される。
【００４８】
次に、演算部２１２は、ＨＭＤの移動量と、ＨＭＤの姿勢の変位量とを算出する（ステップＳ１０４）。具体的には、演算部２１２は、先のステップＳ１０２において算出された、基準姿勢時のＨＭＤの座標位置（Ｒｂ，ｔｂ）と、基準姿勢から移動後のＨＭＤの座標位置（Ｒ，ｔ）とを利用して、ＨＭＤの移動量を算出する。この移動量とは、基準姿勢から移動後のＨＭＤと床面との間の距離と、基準姿勢時のＨＭＤと床面との間の距離の差分Δｈである（図３参照）。
【００４９】
さらに、演算部２１２は、先のステップＳ１０２において算出された、基準姿勢時のＨＭＤの重力加速度ベクトルＶｂと、基準姿勢から移動後のＨＭＤの重力加速度ベクトルＶｇとを利用して、ＨＭＤの姿勢の変位量を算出する。この変位量とは、重力加速度ベクトルＶｂと重力加速度ベクトルＶｇのなす角度θである。演算部２１２によって算出された差分Δｈ及び角度θに関する情報は、判定部２１３に出力される。
【００５０】
次いで、判定部２１３は、先のステップＳ１０４において算出された移動量及び変位量が所定のモデリング条件を満たすか否かを判定する（ステップＳ１０５）。このモデリング条件とは、差分Δｈが所定の閾値以下であるか否か（条件１）、且つ、角度θが所定の閾値以下であるか否か（条件２）を意味する。
【００５１】
図３は、条件１を説明するための概念図である。条件１では、ＨＭＤの床面からの高さが、基準姿勢時のＨＭＤの床面からの高さに近いかが確認される。なお、条件１及び２の閾値は、ユーザにより任意に設定されてよい。この場合、条件１及び２の一方又は両方の閾値は、機械学習を利用して算出されてもよい。具体的には、例えば、過去に設定された閾値を機械学習アルゴリズムに学習させることにより得られた学習済みモデルに対して、ユーザからの任意の入力データを適用させることにより算出されてもよい（図１７参照）。
【００５２】
また、図４は、条件２を説明するための概念図である。条件２では、基準姿勢から移動後のＨＭＤの回転パラメータが、基準姿勢時のＨＭＤの回転パラメータに近いかが確認される。なお、条件２の閾値は、ユーザにより任意に設定されてよい。
【００５３】
次に、判定部２１３により、ステップＳ１０４において算出された移動量が条件１を見たし（差分Δｈが所定の閾値以下）、且つ、変位量が条件２を満たす（角度θが所定の閾値以下）と判定された場合（Ｓ１０５のＹＥＳ）、モデルデータ生成部２１４は、この判定結果に基づくセンサデータを記憶部２２から読み出し、当該センサデータを用いてＨＭＤから重力方向にｈだけ離れた位置に床面に関するモデルデータを生成する（ステップＳ１０６）。
【００５４】
一方、判定部２１３により、ステップＳ１０４において算出された移動量が条件１を満たし、且つ、変位量が条件２を満たすと判定されなかった場合（ステップＳ１０５のＮＯ）、モデルデータ生成部２１４は、この判定結果に基づくセンサデータを利用せず、床面に関するモデルデータを生成しない（ステップＳ１０７）。
【００５５】
以降、ユーザが所望エリア内の全てを歩行するまで、ステップＳ１０３からステップＳ１０７までの一連の動作（ステップＳ１０３→ステップＳ１０４→ステップＳ１０５→ステップＳ１０６（ステップＳ１０７））が所定時間毎に繰り返され、ＨＭＤを装着したユーザの歩行に伴い床面のモデリングが実行される（図１６参照）。
【００５６】
ここで、本技術におけるモデリングとは、物理的に実際に存在する床面が数値データ化された情報が計算処理されることで、当該床面に即したモデルデータが生成されることを意味する。図５〜図８は、本技術に係る床面モデリングシステムが床面に関するモデルデータを生成する一例を示す概念図である。
【００５７】
本技術におけるモデルデータは、任意の座標位置を中心とした半径ｒの領域として定義され（図６参照）、この領域内の床面がモデリングされた床面となる。この際、任意の時刻ＴにおけるＨＭＤの三次元空間上の座標位置をｍＰｃ［Ｘ，Ｙ，Ｚ］Ｔとし、重力方向単位ベクトルをｅｇとし、ＨＭＤから床面までの距離をｈとすると、モデルデータの中心位置は、下記式（１）で表される。なお、ｒは任意のパラメータであり、ユーザにより任意に設定されてもよく、周囲の環境を認識することで設定されてもよい。
【００５８】
ｍＰｆｃ＝ｍＰｃ＋ｈ・*ｅｇ・・・（１）
（ｍ：model data coordinates，ｃ：camera，ｆｃ：center of floor model）
【００５９】
モデルデータの表現方法としては、例えば、ポイントクラウドで表現する方法やポリゴンデータで表現する方法等が挙げられる。
【００６０】
モデルデータをポイントクラウドで表現する場合、このモデルデータ（床面がモデリングされた領域）は、中心位置ｍＰｆｃから半径ｒで定義された仮想領域を構成する３次元の点群からなる（図７参照）。図７中の矢印は、各点に対応づけられた法線ベクトルである。
【００６１】
また、モデルデータをポリゴンデータで表現する場合、このモデルデータ（床面がモデリングされた領域）は、中心位置ｍＰｆｃから半径ｒで定義された仮想領域を構成する面群からなる（図８参照）。この面は、上記仮想領域内に任意の密度で充填された点群（頂点データ）からなる。図８中の矢印は、各点及び面に対応づけられた法線ベクトルである。
【００６２】
［作用］
本実施形態の床面モデリングシステム１００は、上記した条件１及び２が満たされていれば、床面に関するモデルデータを自動的に生成する。即ち、ＨＭＤが基準姿勢に近い状態のときのみ、ユーザが直立している状態であるとみなされ、当該ユーザの足元に対してモデルデータが生成される。
【００６３】
これにより、モデリングの対象である床面を直接観測することなく、当該床面に関するモデルデータを生成可能となる。従って、床面に関するモデルデータを生成するために、例えば、ＨＭＤを装着したユーザに常に床面側を向かせる等の特定の姿勢を取らせ続ける必要がなくなるので、ユーザ負荷の低減が図られる。
【００６４】
また、床面を直接観測する必要がないことから、床面を観測するための高視野角センセン等のセンサ類が不要となるので、床面モデリングシステム１００を構成する上でのデバイスコストひいては電力使用量の削減が可能となる。
【００６５】
さらに、本実施形態の床面モデリングシステム１００では、移動体の移動量が第１の条件を満たし、且つ、移動体の姿勢の変位量が第２の条件を満たせば、床面観測用のセンサを用いずとも床面のモデリングが実行される。これにより、一般的なセンサでの観測が困難である床面のモデリングも可能となる。このような床面としては、例えば、ステレオ法による三次元構造の推定に不向きなtexture-lessな床面や、アクティブデプスセンサによる観測に不向きな黒色の床面、あるいは、光の反射率や透過率の高い素材からなる床面等が挙げられる。
【００６６】
加えて、床面モデリングシステム１００では、条件１及び２が満たされている時のみ、移動体の移動に伴って床面に関するモデルデータが生成される。換言すると、条件１及び２が満たされている状態で、ＨＭＤを装着したユーザが移動することで、床面に関するモデルデータが累積的に生成される（図１６参照）。
【００６７】
これにより、ＨＭＤを装着したユーザがモデリングしたい床面の上だけを歩くことによって、当該床面に関するモデルデータのみが生成される。この場合、ＨＭＤを装着したユーザが物理的に正しい床面上のみを移動することによって、床面以外の領域が床面と認識される誤認識がなくなり、床面を正確にモデリングすることができる。
【００６８】
例えば、床面の上に椅子が置かれている場合に、ＨＭＤを装着したユーザがこの床面の上を歩かなければ、椅子が置かれた床面がモデリングされることが回避される。仮に、上記ユーザが椅子に座ったとしても、条件１が満たされなくなるため、いずれにしろ椅子が置かれた床面がモデリングされることが回避される。
【００６９】
２．第２の実施形態
［床面モデリング方法］
図９は本技術の第２の実施形態に係る床面モデリングシステム１００の床面をモデリングする方法を示すフローチャートであり、図１０は第２の実施形態の床面モデリング方法を説明するための概念図である。以下、図９を適宜参照しながら、第２の実施形態の床面モデリング方法について説明する。なお、第１の実施形態と同様のステップについては同様の符号を付し、その説明を省略又は簡略化する。
【００７０】
先ず、ＨＭＤを装着したユーザが床面に起立している状態において、加速度センサ４０から出力されたセンサデータと、任意の入力部（図示略）から出力されたユーザの身長に関する情報がデータ取得部２１１に入力される。そして、データ取得部２１１は、これらの情報を演算部２１２に出力し、演算部２１２により演算処理が実行される。これにより、ＨＭＤが基準姿勢時の重力加速度ベクトルＶｂと、基準姿勢時のＨＭＤと床面との間の距離ｈが算出され、これらが記憶部２２に記憶される（ステップＳ２０１）。
【００７１】
次いで、演算部２１２は、先のステップＳ２０１において重力加速度ベクトルＶｂの算出に利用されたセンサデータを用いて、当該重力加速度ベクトルＶｂに直交し、ＨＭＤを装着したユーザが起立している床面と平行な仮想平面Ｐを算出し、さらに、この仮想平面Ｐと重力加速度ベクトルＶｂとが直交する座標位置をＨＭＤの初期位置として算出する（ステップＳ２０２）。これにより、ＨＭＤの三次元空間における位置が、重力加速度ベクトルＶｂと仮想平面Ｐとが直交する座標位置を初期位置（原点位置）とする座標系で表現される。なお、仮想平面Ｐは、例えば任意の世界座標系を構成する３軸（Ｘ軸，Ｙ軸，Ｚ軸）のうち、床面に平行な二軸（Ｘ軸，Ｙ軸）上に設定される（図１０参照）。
【００７２】
次に、判定部２１３により、ステップＳ１０４において算出された移動量が条件１を見たし（差分Δｈが所定の閾値以下）、且つ、変位量が条件２を満たす（角度θが所定の閾値以下）と判定された場合（ステップＳ１０５のＹＥＳ）、モデルデータ生成部２１４は、この判定結果に基づくセンサデータを記憶部２２から読み出し、当該センサデータを用いて仮想平面Ｐから重力方向にｈだけ離れた位置に床面に関するモデルデータを生成する（ステップＳ２０３）。
【００７３】
以降、ユーザが所望エリア内の全てを歩行するまで、ステップＳ１０３からステップＳ１０７までの一連の動作（ステップＳ１０３→ステップＳ１０４→ステップＳ１０５→ステップＳ２０３（ステップＳ１０７））が所定時間毎に繰り返され、ＨＭＤを装着したユーザの歩行に伴い床面のモデリングが実行される（図１６参照）。
【００７４】
［作用］
第２の実施形態の床面モデリングシステム１００は、ＨＭＤを装着したユーザの歩行に伴い、仮想平面Ｐから重力方向にｈだけ離れた位置に床面に関するモデルデータが生成される。これにより、常に仮想平面Ｐから一定の距離にモデルデータが生成されることとなる。よって、階段や坂等を含まない平滑な平面のみから床面が構成される環境において、当該床面により即したモデリングが可能となる。また、常に仮想平面Ｐから一定の距離にモデルデータが生成されることから、ＨＭＤを装着したユーザの頭部がぶれる場合であっても、このぶれに起因したモデリング精度の低下が抑制される。
【００７５】
３．第３の実施形態
［床面モデリングシステムの構成］
図１１は、本技術の第３の実施形態に係る床面モデリングシステム２００の構成例を示すブロック図である。以下、上記実施形態と同様の構成については、同様の符号を付し、その詳細な説明は省略する。
【００７６】
第３の実施形態の床面モデリングシステム２００は、図１１に示すように、撮像装置５０をさらに有する点で、第１の実施形態と異なる。
【００７７】
撮像装置５０は、例えば、ＣＣＤ（Charge Couple Device）やＣＭＯＳ（Complementary Metal Oxide Semiconductor）等のイメージセンサを備えたデジタルカメラあるいはビデオカメラである。
【００７８】
撮像装置５０の撮像により、例えば、ＪＰＥＧ，ＭＰＥＧ２，ＭＰＥＧ４等の撮像画像（または、所定のフレームレートで撮像された動画）が生成され、情報処理装置２０に出力される。なお、第３の実施形態では、撮像装置として、典型的には単眼カメラが採用される。
【００７９】
［床面モデリング方法］
図１２は本技術の第３の実施形態に係る床面モデリングシステム２００の床面をモデリングする方法を示すフローチャートであり、図１３は第３の実施形態の床面モデリング方法を説明するための概念図である。以下、図１２を適宜参照しながら、第３の実施形態の床面モデリング方法について説明する。なお、上記実施形態と同様のステップについては同様の符号を付し、その説明を省略又は簡略化する。
【００８０】
先ず、撮像装置５０が床面に載置された既知の物体（マーカーＭ）を撮像する（ステップＳ３０１）。撮像装置５０は、マーカーＭを撮像することにより生成された画像データをデータ取得部２１１に出力する。データ取得部２１１は、撮像装置５０から取得した画像データを演算部２１２に出力し、演算部２１２による演算処理（画像処理）が実行される。
【００８１】
これにより、マーカーＭを基準としたマーカー座標系におけるＨＭＤの三次元的な座標位置が算出される。即ち、ＨＭＤの三次元空間における位置が、マーカー座標系で表現（初期化）される。なお、マーカーＭは、典型的には物理的な構造体であるが、これに限られず、バーコード等の識別子であってもよい。
【００８２】
次に、ＨＭＤを装着したユーザが床面に直立している状態においてトリガー操作を実行することにより、ＨＭＤの基準姿勢を登録する（ステップＳ３０２）。これにより、ユーザが直立姿勢時のＨＭＤと床面との間の距離Ｈｍが記憶部２２に記憶される。
また、ＨＭＤの基準姿勢の登録時には、ＨＭＤを装着したユーザが床面に直立している状態において、自己位置推定装置３０及び加速度センサ４０から出力されたセンサデータがデータ取得部２１１に入力される。そして、データ取得部２１１はこれらのセンサデータを演算部２１２に出力し、演算部２１２により演算処理が実行される。これにより、ＨＭＤを装着したユーザが直立した状態でのマーカー座標系における基準姿勢時のＨＭＤの座標位置（Ｒｂ，ｔｂ）と重力加速度ベクトルＶｂとが算出され、これらも記憶部２２に記憶される。
【００８３】
次に、判定部２１３により、ステップＳ１０４において算出された移動量が条件１を見たし（差分Δｈが所定の閾値以下）、且つ、変位量が条件２を満たす（角度θが所定の閾値以下）と判定された場合（Ｓ１０５のＹＥＳ）、モデルデータ生成部２１４は、この判定結果に基づくセンサデータを記憶部２２から読み出し、当該センサデータを用いてＨＭＤから重力方向にＨｍだけ離れた位置に床面に関するモデルデータを生成する（ステップＳ３０３）。
【００８４】
以降、ユーザが所望エリア内の全てを歩行するまで、ステップＳ１０３からステップＳ１０７までの一連の動作（ステップＳ１０３→ステップＳ１０４→ステップＳ１０５→ステップＳ３０３（ステップＳ１０７））が所定時間毎に繰り返され、ＨＭＤを装着したユーザの歩行に伴い床面のモデリングが実行される（図１６参照）。
【００８５】
［作用］
第３の実施形態の床面モデリングシステム２００は、床面に載置されたマーカーＭを利用してＨＭＤから床面までの距離Ｈｍを算出し、ＨＭＤから距離Ｈｍだけ離れた位置に床面に関するモデルデータを生成する。これにより、ＨＭＤを装着したユーザの身長を利用せずとも床面をモデリングすることが可能となる。よって、ユーザの身長がそれぞれ異なることに起因したモデリング精度のバラツキが抑制される。
【００８６】
４．第４の実施形態
［床面モデリングシステムの構成］
図１４は、本技術の第４の実施形態に係る床面モデリングシステム３００の構成例を示すブロック図である。以下、上記実施形態と同様の構成については同様の符号を付し、その詳細な説明は省略する。
【００８７】
第４の実施形態の床面モデリングシステム３００は、図１４に示すように、歩行状態判定部２１５を機能的に有する点で、上記実施形態と異なる。
【００８８】
歩行状態判定部２１５は、データ取得部２１１により取得されたセンサデータに基づき、ＨＭＤを装着したユーザが歩行状態であるか否かを判定する。
【００８９】
［床面モデリング方法］
図１５は本技術の第４の実施形態に係る床面モデリングシステム３００の床面をモデリングする方法を示すフローチャートであり、図１６は第４の実施形態の床面モデリング方法を説明するための概念図である。以下、図１５を適宜参照しながら、第４の実施形態の床面モデリング方法を説明する。なお、上記実施形態と同様のステップについては同様の符号を付し、その説明を省略又は簡略化する。
【００９０】
加速度センサ４０から出力されたセンサデータがデータ取得部２１１に入力される（ステップＳ４０１）。データ取得部２１１は、このセンサデータを歩行状態判定部２１５に出力する。
【００９１】
データ取得部２１１からセンサデータを取得した歩行状態判定部２１５は、当該センサデータに基づき、ＨＭＤを装着したユーザが歩行状態であるか否かを判定する（ステップＳ４０２）。この場合、歩行状態判定部２１５は、ユーザの知的作業を代替する、所謂特化型ＡＩ（Artificial Intelligence）を利用して、ユーザが歩行状態であるか否かを判定する。図１７は、一般的な特化型ＡＩの処理手順を簡略的に示すブロック図である。
【００９２】
特化型ＡＩは、大まかな仕組みとして、学習用プログラムとして機能するアルゴリズムに学習データを組み込むことより構築された学習済みモデルに対して、任意の入力データを適用することにより結果物が得られる仕組みである。以下、図１７を適宜参照しながらステップＳ４０２について説明する。
【００９３】
先ず、予め記憶部２２に記憶されている、加速度センサ４０から出力されたセンサデータから抽出された特徴量（平均、分散、歪度、尖度、信号パワー、零交差数又は最大ピーク周波数等）を、歩行状態判定部２１５が記憶部２２から読み出す。この特徴量は、例えば、予め定められた時間幅で加速度センサ４０から出力されたセンサデータを切り出すことで抽出され、図１７の「学習データ」に相当する。
【００９４】
次いで、歩行状態判定部２１５は、予め設定されているアルゴリズムに記憶部２２から読み出した学習データを組み込むことによって状態判定器２１５ａを構築する。これにより、歩行状態判定部２１５は、状態判定器２１５ａを有する構成となる。
【００９５】
なお、上記したアルゴリズムは、図１７の「アルゴリズム」に相当し、例えば機械学習アルゴリズムとして機能する。また、状態判定器２１５ａは、図１７の「学習済みモデル」に相当する。状態判定器２１５ａは典型的には単一の学習済みモデルからなる構成であるが、これに限られず、例えば複数の学習済みモデルが組み合わさった構成であってもよい。
【００９６】
機械学習アルゴリズムの種類としては特に限定されず、例えばＲＮＮ（Recurrent Neural Network：再帰型ニューラルネットワーク）、ＣＮＮ（Convolutional Neural Network:畳み込みニューラルネットワーク）又はＭＬＰ（Multilayer Perceptron：多層パーセプトロン）等のニューラルネットワークを用いたアルゴリズムであってもよく、その他、教師あり学習法、教師なし学習法、半教師あり学習法、強化学習法等を実行する任意のアルゴリズムであってもよい。
【００９７】
次いで、歩行状態判定部２１５は、データ取得部２１１から取得したセンサデータから上記したような特徴量を抽出する。そして、この特徴量に関する情報を状態判定器２１５ａに適用することで、ＨＭＤを装着したユーザが歩行状態であるか否かを判定する。この判定結果は記憶部２２に出力され、新たな学習データとして記憶部２２に記憶される。
【００９８】
続いて、歩行状態判定部２１５により、ＨＭＤを装着したユーザが歩行状態であると判定された場合（ステップＳ４０２のＹＥＳ）、モデルデータ生成部２１４は、この判定結果に基づくセンサデータを記憶部２２から読み出し、当該センサデータを用いてＨＭＤから重力方向にｈだけ離れた位置に床面に関するモデルデータを生成する（ステップＳ４０３）。
【００９９】
一方、歩行状態判定部２１５により、ＨＭＤを装着したユーザが歩行状態であると判定されなかった場合（ステップＳ４０２のＮＯ）、モデルデータ生成部２１４は、この判定結果に基づくセンサデータを利用せず、床面に関するモデルデータを生成しない（ステップＳ４０４）。
【０１００】
なお、ステップＳ４０２において、データ取得部２１１から取得したセンサデータから抽出された特徴量は、図１７の「入力データ」に相当し、歩行状態判定部２１５の判定結果は、図１７の「結果物」に相当する。
【０１０１】
以降、ユーザが所望エリア内の全てを歩行するまで、Ｓ４０１からＳ４０４までの一連の動作（ステップＳ４０１→ステップＳ４０２→ステップＳ４０３（ステップＳ４０４））が所定時間毎に繰り返され、ＨＭＤを装着したユーザの歩行に伴い床面のモデリングが実行される（図１６参照）。
【０１０２】
［作用］
第４の実施形態の床面モデリングシステム３００は、ＨＭＤを装着したユーザが歩行しているときのみ、床面のモデリングが実行される。これにより、ユーザが大きく移動した場合にのみ床面がモデリングされることになるため、床面以外の領域をモデリングすることが回避される。また、坂等が存在する環境下であっても継続的に床面をモデリングするができる。
【０１０３】
この際、自己位置推定装置３０の出力の変化に応じて、坂のように滑らかに高さが変化する床面としてモデリングするか、あるいは、階段のように離散化した高さを持つ床面としてモデリングするか決定してもよいし、状態判定器２１５ａに平面歩行、坂歩行、階段歩行のラベルを出力させ、それに応じてモデリング方法を変更してもよい。
【０１０４】
５．第５の実施形態
［床面モデリングシステムの構成］
図１８は、本技術の第５の実施形態に係る床面モデリングシステム４００の構成例を示すブロック図である。以下、上記実施形態と同様の構成については、同様の符号を付し、その詳細な説明は省略する。
【０１０５】
第５の実施形態の床面モデリングシステム４００は、図１８に示すように、更新部２１６を機能的に有する点で上記実施形態と異なる。
【０１０６】
更新部２１６は、歩行状態判定部２１５によりユーザが歩行状態であると判定されている期間が所定の閾値以上である場合に、ＨＭＤの基準姿勢時に検出されたセンサデータとは異なるセンサデータを新たな基準姿勢のセンサデータとする更新処理を実行する。
【０１０７】
［床面モデリング方法］
図１９は本技術の第５の実施形態に係る床面モデリングシステム４００の床面をモデリングする方法を示すフローチャートであり、図２０は第５の実施形態の床面モデリング方法を説明するための概念図である。以下、図１９を参照しながら、第５の実施形態の床面モデリング方法について説明する。なお、上記実施形態と同様のステップについては同様の符号を付し、その説明を省略又は簡略化する。
【０１０８】
歩行状態判定部２１５により、ユーザが歩行していると判定されている期間が所定の閾値以上（例えば３秒〜１０秒以上）の場合（ステップＳ５０１のＹＥＳ）、更新部２１６は、先のステップＳ１０２が実行されてから所定期間経過後に自己位置推定装置３０及び加速度センサ４０から取得したセンサデータを記憶部２２から読み出し、当該センサデータを新たな基準姿勢のセンサデータとして、演算部２１２に出力する（ステップＳ５０２）。なお、歩行状態判定部２１５による更新処理の時間間隔は、ユーザにより任意に設定されてよい。
【０１０９】
更新部２１６からセンサデータを取得した演算部２１２は、このセンサデータに基づき、新たな基準姿勢時のＨＭＤの座標位置（Ｒｂ，ｔｂ）及び重力加速度ベクトルＶｂを算出し、これらが記憶部２２に記憶される。
【０１１０】
次に、演算部２１２は、ＨＭＤの移動量と、ＨＭＤの姿勢の変位量とを算出する（ステップＳ５０３）。具体的には、演算部２１２は、新たな基準姿勢時のＨＭＤの座標位置（Ｒｂ，ｔｂ）と、先のステップＳ１０３において取得されたセンサデータに基づき算出されたＨＭＤの座標位置（Ｒ，ｔ）とを利用して、ＨＭＤの移動量を算出する。この移動量とは、新たな基準姿勢から移動した後のＨＭＤと床面との間の距離と、新たな基準姿勢時のＨＭＤと床面との間の距離との差分Δｈである。
【０１１１】
さらに、演算部２１２は、新たな基準姿勢時のＨＭＤの重力加速度ベクトルＶｂと、先のステップＳ１０３において取得されたセンサデータに基づき算出されたＨＭＤの重力加速度ベクトルＶｇとを利用して、ＨＭＤの姿勢の変位量を算出する。この変位量とは、新たな基準姿勢時のＨＭＤの重力加速度ベクトルＶｂと、新たな基準姿勢から移動後のＨＭＤの重力加速度ベクトルＶｇとのなす角度θである。
【０１１２】
一方、歩行状態判定部２１５により、ユーザが歩行していると判定されている期間が所定の閾値未満（例えば３秒未満）の場合（ステップＳ５０１のＮＯ）、上記第１の実施形態で説明した演算処理（ステップＳ１０４）が実行される。
【０１１３】
次いで、判定部２１３により、ステップＳ５０３（ステップＳ１０４）において算出された移動量が条件１を見たし（差分Δｈが所定の閾値以下）、且つ、変位量が条件２を満たす（角度θが所定の閾値以下）と判定された場合（Ｓ１０５のＹＥＳ）、モデルデータ生成部２１４は、この判定結果に基づくセンサデータを記憶部２２から読み出し、このセンサデータを用いてＨＭＤから重力方向にｈだけ離れた位置に床面に関するモデルデータを生成する（ステップＳ１０６）。
【０１１４】
以降、ユーザが所望エリア内の全てを歩行するまで、Ｓ１０３からＳ１０７までの一連の動作（ステップＳ１０３→ステップＳ４０２→ステップＳ５０１→ステップＳ５０２→ステップＳ５０３→ステップＳ１０５→ステップＳ１０６（ステップＳ１０７）、または、ステップＳ１０３→ステップＳ４０２→ステップＳ１０７、または、ステップＳ１０３→ステップＳ４０２→ステップＳ５０１→ステップＳ１０４→ステップＳ１０５→ステップＳ１０６（ステップＳ１０７））が所定時間毎に繰り返され、ＨＭＤを装着したユーザの歩行に伴い床面のモデリングが実行される（図１６参照）。
【０１１５】
［作用］
第５の実施形態の床面モデリングシステム４００は、ＨＭＤを装着したユーザの移動に伴って基準姿勢の座標位置（Ｒｂ，ｔｂ）と重力加速度ベクトルＶｂを更新する更新処理を所定時間毎に実行する。
【０１１６】
これにより、時間の経過に伴ってＨＭＤの欠けズレが発生することによって基準姿勢が機能しなくなることが抑制される。また、坂や階段等といった高低差が存在する環境下において、基準姿勢に対応する高さ以外の高さの床面もモデリング可能となる。
【０１１７】
以上、本技術の実施形態について説明したが、本技術は上述の実施形態に限定されるものではなく種々変更を加え得ることは勿論である。
【０１１８】
例えば、上記実施形態では、典型的には自己位置推定装置３０としてカメラセンサを用いたＳＬＡＭが採用されるが、これに限られず、デプスセンサやミリ波センサ等を用いたＳＬＡＭが採用されてもよい。また、本技術における床面モデリングシステム１００，２００，３００，４００は、自己位置推定装置３０及び加速度センサ４０だけではなく、ジャイロセンサや水準器等を有する構成であってもよい。
【０１１９】
さらに、上記の第４の実施形態では、ユーザが歩行しているか否かに基づき、床面に関するモデルデータが生成されるか否かが判定されるがこれに限られず、モデルデータを生成する際の判断基準が、ユーザが歩行しているか否か、且つ、条件１及び２の少なくとも１つを満たしているか否かであってもよい。
【０１２０】
加えて、上記の第５の実施形態では、基準姿勢のＨＭＤの座標位置（Ｒｂ，ｔｂ）と重力加速度ベクトルＶｂが所定時間毎に自動的に更新されるがこれに限られず、ユーザからの意思に応じて更新されてもよい。
【０１２１】
また、上記実施形態では、床面モデリングシステム１００，２００，３００，４００をＨＭＤに適用した例について説明したがこれに限られず、床面に対して相対的に移動する移動体全般（例えば、動物、乗り物、自律移動型ロボット等）に適用してもよく、その用途は問わない。
【０１２２】
なお、本技術は以下のような構成もとることができる。
【０１２３】
（１）
移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定する判定部と、
上記判定部により上記所定のモデリング条件を満たすと判定された場合に、上記センサデータを用いて床面に関するモデルデータを生成するモデルデータ生成部と
を有する制御部と
を具備する情報処理装置。
（２）
上記（１）に記載の情報処理装置であって、
上記制御部は、床面上を移動可能な上記移動体の移動に伴って、上記モデルデータを生成するために必要なセンサデータを所定時間毎に取得するデータ取得部をさらに有する
情報処理装置。
（３）
上記（２）に記載の情報処理装置であって、
上記制御部は、上記データ取得部により取得されたセンサデータに基づき、上記移動体の移動量と上記移動体の姿勢の変位量とを算出する演算部をさらに有し、
上記判定部は、上記演算部の演算結果から、上記移動量が所定の第１の条件を満たすか否か、且つ、上記変位量が所定の第２の条件を満たすか否かを判定し、
上記モデルデータ生成部は、上記判定部により上記第１及び第２の条件を満たすと判定された判定結果に基づくセンサデータを用いて上記モデルデータを生成する
情報処理装置。
（４）
上記（３）に記載の情報処理装置であって、
上記演算部は、第１の姿勢の上記移動体の重力方向における床面からの高さと、第２の姿勢の上記移動体の重力方向における当該床面からの高さとの差分を上記移動量として算出し、
上記判定部は、上記差分が所定の閾値以下である場合に、上記第１の条件が満たされたと判定する
情報処理装置。
（５）
上記（３）又は（４）に記載の情報処理装置であって、
上記演算部は、上記データ取得部により取得されたセンサデータから上記移動体の重力加速度ベクトルを算出し、当該重力加速度ベクトルに基づき、上記変位量を算出する
情報処理装置。
（６）
上記（３）から（５）のいずれか１つに記載の情報処理装置であって、
上記演算部は、第１の姿勢の上記移動体の重力加速度ベクトルと、第２の姿勢の上記移動体の重力加速度ベクトルとのなす角度を上記変位量として算出し、
上記変位量は、上記角度が所定の閾値以下である場合に、上記第２の条件が満たされたと判定する
情報処理装置。
（７）
上記（３）から（６）のいずれか１つに記載の情報処理装置であって、
上記演算部は、上記移動体の重力加速度ベクトルと、床面と平行な仮想平面とが直交する座標位置を上記移動体の初期位置として算出し、
上記モデルデータ生成部は、上記仮想平面から重力方向に所定距離だけ離れた位置に上記モデルデータを生成する
情報処理装置。
（８）
上記（３）から（７）のいずれか１つに記載の情報処理装置であって、
上記演算部は、床面に載置されたマーカーを基準としたマーカー座標系における上記移動体の座標位置から、上記マーカーが載置された床面と上記移動体との間の距離を算出し、
上記モデルデータ生成部は、上記移動体から重力方向に当該距離だけ離れた位置に上記モデルデータを生成する
情報処理装置。
（９）
上記（２）から（８）のいずれか１つに記載の情報処理装置であって、
上記制御部は、上記データ取得部により取得されたセンサデータに基づき、上記移動体を有するユーザが歩行状態であるか否かを判定する歩行状態判定部をさらに有する
情報処理装置。
（１０）
上記（９）に記載の情報処理装置であって、
上記制御部は、上記歩行状態判定部により上記ユーザが歩行状態であると判定されている期間が所定の閾値以上である場合に、上記移動体が基準姿勢時に検出されたセンサデータとは異なるセンサデータを新たな基準姿勢のセンサデータとする更新処理を実行する更新部をさらに有する
情報処理装置。
（１１）
移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定し、
上記所定のモデリング条件を満たすと判定された場合に、上記センサデータを用いて床面に関するモデルデータを生成する
情報処理方法。
（１２）
移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定するステップと、
上記所定のモデリング条件を満たすと判定された場合に、上記センサデータを用いて床面に関するモデルデータを生成するステップと
を情報処理装置に実行させるプログラム。
（１３）
床面上を移動する移動体に搭載され、上記移動体の三次元空間における位置を推定可能に構成された自己位置推定装置と、
上記移動体に搭載された加速度センサと、
上記移動体の移動に伴って取得されたセンサデータに基づき、所定のモデリング条件を満たすか否かを判定する判定部と、
上記判定部により上記所定のモデリング条件を満たすと判定された場合に、上記センサデータを用いて床面に関するモデルデータを生成するモデルデータ生成部と
を有する制御部を有する情報処理装置と
を具備する床面モデリングシステム。
【符号の説明】
【０１２４】
２０・・・・情報処理装置
３０・・・・自己位置推定装置
４０・・・・加速度センサ
２１１・・・データ取得部
２１２・・・演算部
２１３・・・判定部
２１４・・・モデルデータ生成部
２１５・・・歩行状態判定部
２１６・・・更新部
１００，２００，３００，４００・・・床面モデリングシステム
【図１】
2019215997.tif 000003
【図２】
2019215997.tif 000004
【図３】
2019215997.tif 000005
【図４】
2019215997.tif 000006
【図５】
2019215997.tif 000007
【図６】
2019215997.tif 000008
【図７】
2019215997.tif 000009
【図８】
2019215997.tif 000010
【図９】
2019215997.tif 000011
【図１０】
2019215997.tif 000012
【図１１】
2019215997.tif 000013
【図１２】
2019215997.tif 000014
【図１３】
2019215997.tif 000015
【図１４】
2019215997.tif 000016
【図１５】
2019215997.tif 000017
【図１６】
2019215997.tif 000018
【図１７】
2019215997.tif 000019
【図１８】
2019215997.tif 000020
【図１９】
2019215997.tif 000021
【図２０】
2019215997.tif 000022
【国際調査報告】
2019215997.tif 000023
2019215997.tif 000024
2019215997.tif 000025
2019215997.tif 000026