(57)【要約】【課題】位置推定及び向き推定を改善するとともに、没入感を改善したＶＲを生成する。【解決手段】  オブジェクトの動きを予測する方法が提供される。上記予測方法は、上記オブジェクトに取り付けられた位置センサの第１の時系列データに基づいて上記オブジェクトの位置を判断することと、上記オブジェクトに取り付けられた少なくとも１つの慣性センサの第２の時系列データに基づいて上記オブジェクトの向きを判断することとを含む。また、上記予測方法は、上記オブジェクトの上記位置と上記オブジェクトの上記向きとを用いた運動モデルであって、上記オブジェクトの上記位置に対して第１の重み係数を使用し、上記オブジェクトの上記向きに対して第２の重み係数を使用する運動モデルに基づいて上記オブジェクトの運動軌跡を推定することを含む。本開示のさらに別の態様は、センサストリームにおけるグラウンドトゥルースのモーメントを判断すること、及びユーザ用の仮想現実ビューを最適化することに関する。【選択図】図１
2021508886.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトの動きを予測する方法であって、
前記オブジェクトに取り付けられた位置センサの第１の時系列データに基づいて前記オブジェクトの位置を判断することと、
前記オブジェクトに取り付けられた少なくとも１つの慣性センサの第２の時系列データに基づいて前記オブジェクトの向きを判断することと、
前記オブジェクトの前記位置と前記オブジェクトの前記向きとを用いた運動モデルであって、前記オブジェクトの前記位置に対して第１の重み係数を使用し、前記オブジェクトの前記向きに対して第２の重み係数を使用する運動モデルに基づいて前記オブジェクトの運動軌跡を推定することと
を含む
予測方法。
【請求項２】
請求項１に記載の予測方法であって、さらに、
前記オブジェクトの前記位置の第１の信頼レベルを判断することと、
前記オブジェクトの前記向きの第２の信頼レベルを判断することと、
前記第１の信頼レベルに基づいて前記第１の重み係数を調整することと、
前記第２の信頼レベルに基づいて前記第２の重み係数を調整することと
を含む
予測方法。
【請求項３】
請求項２に記載の予測方法であって、さらに、
前記オブジェクトの前記動きに関連するコンテキスト情報に基づいて前記第１の重み係数の値の範囲及び／又は前記第２の重み係数の値の範囲を調整することを含む
予測方法。
【請求項４】
請求項１乃至３のいずれか１項に記載の予測方法であって、
前記運動モデルは、少なくとも３次の多項式に基づいている
予測方法。
【請求項５】
請求項４に記載の予測方法であって、
前記多項式は、コチャネク−バーテルズ（Kochanek-Bartels）スプライン又はキュービックエルミートスプラインである
予測方法。
【請求項６】
請求項４又は５に記載の予測方法であって、
前記オブジェクトの前記運動軌跡を推定することは、前記オブジェクトの前記重み付けされた位置及び前記オブジェクトの前記重み付けされた向きに基づいて前記多項式を接線方向に推定することを含む
予測方法。
【請求項７】
請求項１乃至６のいずれか１項に記載の予測方法であって、さらに、
前記第１の時系列データ及び／又は前記第２の時系列データに基づいて前記オブジェクトの運動状態を判断することと、
前記運動状態に基づいて前記第１の重み係数及び前記第２の重み係数を調整することと
を含む
予測方法。
【請求項８】
請求項１乃至７のいずれか１項に記載の予測方法であって、
前記第２の時系列データは、３次元加速度データ、３次元回転速度データ、３次元磁場強度データ、及び／又は気圧データのうち少なくとも１つを含む
予測方法。
【請求項９】
請求項１乃至８のいずれか１項に記載の予測方法であって、
前記第１の時系列データは、３次元位置データを含む
予測方法。
【請求項１０】
オブジェクトの動きを記述する運動モデルを調整する方法であって、
前記オブジェクトに取り付けられた複数のセンサの時系列データにおいて、前記オブジェクトの特定の動き、特定の位置、及び／又は特定の向きに関連する、所定のデータパターンを判断することと、
前記複数のセンサのうちの１つのセンサの時系列データの偏差を、前記所定のデータパターンに関連する、参照データに基づいて判断することと、
前記偏差に基づいて前記運動モデルを調整することと
を含む
調整方法。
【請求項１１】
請求項１０に記載の調整方法であって、
前記運動モデルは、少なくとも１つの調整可能なパラメータを有するフィルタを含み、
前記運動モデルを調整することは、前記偏差に基づいて前記パラメータを調整することを含む
調整方法。
【請求項１２】
請求項１０又は１１に記載の調整方法であって、
前記運動モデルは、ユーザ用の仮想現実ビューを生成するアルゴリズムの一部であり、
前記調整方法はさらに、前記偏差に基づいて前記仮想現実ビューを連続的に変化させることを含み、
前記仮想現実ビューの連続フレーム間の変化は前記ユーザの知覚閾値未満である
調整方法。
【請求項１３】
所定量を導出する方法であって、
前記所定量を導出することに関して、少なくとも１つのセンサの時系列データの信頼レベルを判断することと、
前記信頼レベルが閾値未満である場合、前記少なくとも１つのセンサの前記時系列データと、少なくとも１つの別のセンサの時系列データとを用いて前記所定量を導出することと
を含み、
前記少なくとも１つのセンサの前記時系列データの第１の重み係数と、前記少なくとも１つの別のセンサの前記時系列データの第２の重み係数とを使用して前記所定量を導出する
導出方法。
【請求項１４】
請求項１３に記載の導出方法であって、さらに、
前記少なくとも１つのセンサの前記時系列データの前記信頼レベル、前記少なくとも１つの別のセンサの前記時系列データの信頼レベル、前記少なくとも１つのセンサを備えるオブジェクトに関連する１つ以上の物理的制約、及び前記オブジェクトに関連するコンテキスト情報のうちの少なくとも１つを用いて前記第１の重み係数及び／又は前記第２の重み係数を判断することを含む
導出方法。
【請求項１５】
請求項１４に記載の導出方法であって、
機械学習アルゴリズムを用いて前記第１の重み係数及び／又は前記第２の重み係数を判断する
導出方法。
【請求項１６】
ユーザ用の仮想現実ビューを生成する方法であって、
請求項１乃至９のいずれか１項に記載の予測方法に従って前記ユーザの動きを判断することと、
前記ユーザの前記動きに基づいて前記仮想現実ビューを生成することと、
前記仮想現実ビューを前記ユーザに表示することと
を含む
生成方法。
【請求項１７】
請求項１６に記載の生成方法であって、さらに、
前記ユーザの所定の動きに対する前記位置センサの予想される第１の時系列データを計算することと、
前記ユーザに前記所定の動きを実行するよう促すために、前記ユーザに対して、前記仮想現実ビューを変化させ、音声を出力し、かつ／あるいは、匂いを発することと、
前記予想される第１の時系列データに対する前記ユーザの前記所定の動きの前記位置センサの実際の第１の時系列データの誤差を判断することと
を含む
生成方法。
【請求項１８】
請求項１７に記載の生成方法であって、さらに、
前記誤差に基づいて前記運動モデルを調整すること、及び／又は、
前記誤差に基づいて前記仮想現実ビューを連続的に変化させること
を含み、
前記誤差による前記仮想現実ビューの連続フレーム間の変化は、前記ユーザの知覚閾値未満である
生成方法。
【請求項１９】
請求項１６に記載の生成方法であって、さらに、
前記仮想現実ビューにおける向きの誤差及び／又は位置の誤差を判断することと、
前記ユーザに所定の動きを実行するよう促すために、前記ユーザに対して、前記仮想現実ビューを変化させ、音声を出力し、かつ／あるいは、匂いを発することと、
前記ユーザが前記所定の動きを実行している間、前記向きの誤差及び／又は前記位置の誤差に基づいて前記仮想現実ビューを連続的に変化させることと
を含み、
前記向きの誤差及び／又は前記位置の誤差による前記仮想現実ビューの連続フレーム間の変化は、前記ユーザの知覚閾値未満である
生成方法。
【請求項２０】
請求項１７又は１９に記載の生成方法であって、
前記仮想現実ビューを変化させることは、前記仮想現実ビューにおける視線の方向を変化させること又は前記仮想現実ビューの中にある少なくとも１つのオブジェクトの形状を変化させることを含み、
前記仮想現実ビューの連続フレーム間の前記視線の方向の変化又は前記少なくとも１つのオブジェクトの前記形状の変化は、前記ユーザの知覚閾値未満である
生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、時系列センサデータに基づく低遅延で長期安定の位置推定及び向き推定に関する。特に、本開示の実施例は、オブジェクトの動きを予測する方法、オブジェクトの動きを記述する運動モデルを調整する方法、所定量を導出する方法、及びユーザ用の仮想現実ビューを生成する方法に関する。本開示の別の実施例は、上記方法を実行するための装置に関する。
【背景技術】
【０００２】
自由な動きとともに、より大きな空間に仮想現実（ＶＲ）を拡張することが望まれている。しかし、大規模なＶＲの場合、カメラによる正確な追跡にはコストがかかりすぎる。空間のサイズとユーザの数に応じてコストが増大するからである。また、同時ローカリゼーションおよびマッピング（ＳＬＡＭ）に基づくインサイドアウトトラッキング方式では、高度にインタラクティブなマルチユーザ環境においてユーザの姿勢（すなわち、位置及び向き）を確実に推定することはできない。深度センサは低範囲に欠点があり、ソフトウェアは背景の高度に複雑なテクスチャ及び高度に複雑な形状の再現性に不足があるため、環境の動的変化に対して不安定であることが知られている。したがって、位置推定及び向き推定を改善するとともに、没入感を改善したＶＲを生成することが望まれる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
上記課題は、本明細書において説明する実施例により解決される。
【課題を解決するための手段】
【０００４】
実施例は、オブジェクトの動きを予測する方法に関する。上記方法は、上記オブジェクトに取り付けられた位置センサの第１の時系列データに基づいて上記オブジェクトの位置を判断することと、上記オブジェクトに取り付けられた少なくとも１つの慣性センサの第２の時系列データに基づいて上記オブジェクトの向きを判断することとを含む。また、上記予測方法は、上記オブジェクトの上記位置と上記オブジェクトの上記向きとを用いた運動モデルであって、上記オブジェクトの上記位置に対して第１の重み係数を使用し、上記オブジェクトの上記向きに対して第２の重み係数を使用する運動モデルに基づいて上記オブジェクトの運動軌跡を推定することを含む。
【０００５】
他の実施例は、オブジェクトの動きを記述する運動モデルを調整する方法に関する。上記調整方法は、上記オブジェクトに取り付けられた複数のセンサの時系列データにおける所定のデータパターンを判断することを含む。上記所定のデータパターンは、上記オブジェクトの特定の動き、特定の位置、及び／又は特定の向きに関連する。また、上記調整方法は、上記所定のデータパターンに関連する参照データに対する上記複数のセンサのうちの１つのセンサの時系列データの偏差を判断することを含む。上記調整方法は、さらに、上記偏差に基づいて上記運動モデルを調整することを含む。別の実施例は、所定量を導出する方法に関する。上記導出方法は、上記所定量を導出することに関して、少なくとも１つのセンサの時系列データの信頼レベルを判断することを含む。また、上記導出方法は、上記信頼レベルが閾値未満である場合、上記少なくとも１つのセンサの上記時系列データと、少なくとも１つの別のセンサの時系列データとを用いて上記所定量を導出することを含む。上記少なくとも１つのセンサの上記時系列データの第１の重み係数と、上記少なくとも１つの別のセンサの時系列データの第２の重み係数とを用いて上記所定量を導出する。さらに別の実施例は、ユーザ用の仮想現実ビューを生成する方法に関する。上記生成方法は、上記提案されたオブジェクトの動きを予測する方法に従って上記ユーザの動きを判断することを含む。また、上記生成方法は、上記ユーザの上記動きに基づいて上記仮想現実ビューを生成することと、上記仮想現実ビューを上記ユーザに表示することとを含む。実施例は、さらに、上記提案された方法のうちの１つを実行するように構成されたプロセッサを含むデータ処理システムに関する。別の実施例は、プロセッサ上で実行されるときに上記提案された方法のうちの１つを実行するためのプログラムコードを有するプログラムを記憶した非一過性の機械可読媒体に関する。さらに別の実施例は、プロセッサ上で実行されるときに上記提案された方法のうちの１つを実行するためのプログラムコードを有するプログラムに関する。
【０００６】
以下、単なる例示として、装置及び／又は方法のいくつかの実施例について、添付の図面を参照して説明する。
【図面の簡単な説明】
【０００７】
【図１】図１は、オブジェクトの動きを予測する方法の例のフローチャートを示す。
【図２】図２は、オブジェクトの動きを記述する運動モデルを調整する方法の例のフローチャートを示す。
【図３】図３は、所定量を導出する方法の例のフローチャートを示す。
【図４】図４は、ユーザ用の仮想現実ビューを生成する方法の例のフローチャートを示す。
【発明を実施するための形態】
【０００８】
ここで、いくつかの実施例が示されている添付の図面を参照して、様々な実施例について、より完全に説明する。各図において、線、層、及び／又は領域の太さは、明確にするために誇張されている場合がある。
【０００９】
別の実施例では様々な修正及び代替形態が可能であるが、いくつかの特定の実施例を各図に示しており、後に詳細に説明する。しかしながら、この詳細な説明は、説明される特定の形態に別の実施例を限定するものではない。別の実施例は、本開示の範囲内に含まれるすべての修正、等価物、及び代替物を包含する。各図の説明を通して、同様の番号は同様の構成要素を指し、同一又は同様の機能を提供しながら、相互に比較したときに同一又は修正した形態で実装されてもよい。
【００１０】
構成要素が別の構成要素に「接続」又は「連結」されていると記載されている場合、これら構成要素は直接接続又は連結されていてもよく、あるいは、１つ以上の介在構成要素を介して接続又は連結されていてもよいことを理解されたい。２つの構成要素Ａ及びＢが「又は」を使用して結合されている場合、これはすべての可能な組み合わせ、すなわち、Ａのみ、Ｂのみ、並びにＡ及びＢを開示していると理解される。これと同じ組み合わせの別の表現は、「Ａ及びＢのうちの少なくとも１つ」である。同じことが３つ以上の構成要素の組み合わせについても当てはまる。
【００１１】
特定の実施例を説明する目的で本明細書において使用する用語は、別の実施例を限定することを意図するものではない。単数形が使用され、単一の構成要素のみを使用することが明示的又は暗黙的に必須として定義されていない場合は、常に、別の実施例において、複数の構成要素を使用して同一の機能を実装してもよい。同様に、その後、機能が複数の構成要素を使用して実装されると説明されている場合、別の実施例においては、単一の構成要素又は処理エンティティを使用して同一の機能を実装してもよい。さらに、「具備する」、「具備する」、「含む」、及び／又は「含む」という用語の使用は、記載した機能、整数、ステップ、操作、プロセス、動作、構成要素、及び／又はコンポーネントの存在を明示するが、１つ以上の他の機能、整数、ステップ、操作、プロセス、動作、構成要素、コンポーネント、及び／又はこれらの組み合わせの存在又は追加を排除するものではないことを理解されたい。
【００１２】
他に定義されていない限り、すべての用語（技術用語及び科学用語を含む）は、本明細書において、実施例が属する技術における通常の意味で使用される。
【００１３】
図１は、オブジェクトの動きを予測する方法１００を示す。当該オブジェクトは、センサを備えることができる任意の移動体であってもよい。例えば、当該オブジェクトは、人間であってもよい。
【００１４】
方法１００は、オブジェクトに取り付けられた位置センサの第１の時系列データに基づいてオブジェクトの位置を判断すること１０２を含む（データはフィルタリングされていても、されていなくてもよい）。第１の時系列データは、位置センサ、すなわちオブジェクトの絶対位置又は相対位置に関する情報を含む。例えば、第１の時系列データは、３次元位置データを含んでもよい。一般に、時系列データは、連続する（かつ、例えば、等間隔の）時点で取得された一連のデータとして理解される。位置センサは、例えば、その位置を判断するために、１つ以上の無線周波数信号の往復時間（ＲＴＴ）又は到着時間差（ＴＤｏＡ）を判断してもよい。あるいは、位置センサは、その位置を判断するために、全地球的航法衛星システム又は磁場強度検出を利用してもよい。
【００１５】
また、方法１００は、オブジェクトに取り付けられた少なくとも１つの慣性センサの第２の時系列データに基づいてオブジェクトの向きを判断すること１０４を含む（データはフィルタリングされていても、されていなくてもよい）。第２の時系列データは、慣性センサ（すなわちオブジェクト）の比力に関する情報を含む。例えば、第２の時系列データは、３次元加速度データ、３次元回転速度データ及び／又は３次元磁場強度データのうちの少なくとも１つを含んでいてもよい。慣性センサは、例えば、加速度計、ジャイロスコープ、又は磁力計であってもよい。任意選択で、第２の時系列データの一部は、気圧計又は光センサ（例えば、ダイオード）から取得してもよい。したがって、第２の時系列データは、さらに、気圧データ又は環境の光構造を表すデータを含んでもよい。
【００１６】
方法１００は、さらに、オブジェクトの位置及びオブジェクトの向きを用いた運動モデルに基づいてオブジェクトの運動軌跡を推定すること１０６を含む。運動モデルは、オブジェクトの位置に対して第１の重み係数を使用し、オブジェクトの向きに対して第２の重み係数を使用する。運動モデルは、運動軌跡によってオブジェクトの動きを記述するモデルであり、空間を通るオブジェクトの動きを時間の係数として記述する。運動モデルは、オブジェクトの特別な運動特性を考慮してもよい。例えば、オブジェクトが人間である場合、運動モデルは、人間が視線の方向に歩く傾向があり、視覚に沿って運動を適合させることを考慮してもよい。
【００１７】
慣性センサ、例えば、加速度計又はジャイロスコープは、短期的には、更新周波数が高く（例えば、２００Ｈｚの更新周波数）、高精度である。しかし、加速度計又はジャイロスコープは、センサのドリフトにより、長期的な安定性に欠ける。位置センサ、例えば、無線周波数信号を利用した位置センサは、更新周波数が低い（例えば、５Ｈｚの更新周波数）が、短期的及び長期的に安定しているだけでなく、高精度である。位置センサ及び慣性センサの寄与を重み付けして運動軌跡を推定することができる運動モデルを使用すると、一方のセンサの欠点を他の（複数の）センサで補うことができる。これにより、全体的な性能、すなわち、運動推定の精度及び安定性（長期及び短期）を改善することができる。
【００１８】
方法１００は、さらに、オブジェクトの位置及びオブジェクトの向きに対するそれぞれの信頼レベルに基づいて重みを調整することを含んでもよい。例えば、方法１００は、オブジェクトの位置に対する第１の信頼レベルを判断すること、及びオブジェクトの向きに対する第２の信頼レベルを判断することを含んでもよい。したがって、方法１００は、さらに、第１の信頼レベル（及び、任意選択で、第２の信頼レベル）に基づいて上記第１の重み係数を調整すること、及び第２の信頼レベル（及び、任意選択で、第１の信頼レベル）に基づいて上記第２の重み係数を調整することを含んでもよい。上記のように、慣性センサは、短期的には高精度である（すなわち、短期的には信頼レベルが高い）が、長期的には高精度ではない（すなわち、長期的には信頼レベルが低い）。したがって、オブジェクトの向きに対する第２の信頼レベルは、例えば、最後のセンサ調整又はセンサ調整の最後のリセットから経過した時間に基づいて判断されてもよい。例えば、最後のリセットからわずかな時間しか経過していない場合、慣性センサの特定の特性を正確に考慮するため、長期間経過した場合よりも第２の重み係数を大きくしてもよい。同様に、第２の重み係数が小さくなった場合、（複数の）慣性センサの精度／安定性が低下しているので、運動モデルにおけるオブジェクトの位置の重み付けをさらに高くするために、第１の重み係数を大きくしてもよい。
【００１９】
いくつかの実施例では、運動モデルを適応させるために、コンテキスト情報をさらに使用してもよい。例えば、方法１００は、さらに、オブジェクトの動きに関連するコンテキスト情報に基づいて第１の重み係数の値の範囲（すなわち、第１の重み係数の値が取り得る範囲）及び／又は第２の重み係数の値の範囲（すなわち、第２の重み係数の値が取り得る範囲）を調整することを含んでもよい。オブジェクトの動きに関連するコンテキスト情報は、オブジェクトの動きに（潜在的に）影響するあらゆる情報である。例えば、コンテキスト情報は、オブジェクトを取り巻く環境を指してもよい。オブジェクトが人間である場合、人間の動きの傾向は、様々な状況で異なる。例えば、人間が板の上でバランスを取る場合、向きの変化は、ユーザがスラローム歩行をしている状況よりも、はるかに少なくなる。したがって、人間の特定の動きの傾向をよりよく考慮するために、運動モデルの重み付け係数を調整してもよい。
【００２０】
運動モデルは、動きの変化を適切にモデル化するために、少なくとも３次の多項式に基づいてもよい。運動モデルによって、向きと位置が結合されて、一つの位置を表すため、オブジェクトの動きを記述するには３次の多項式関数で十分である。例えば、多項式は、コチャネク-バーテルズ（Kochanek-Bartels）スプライン（ＴＣＢスプラインとしても知られる）、キュービックエルミートスプライン、又はキャットムル-ロムスプラインであってもよい。
【００２１】
したがって、オブジェクトの運動軌跡を推定することは、重み付けされたオブジェクトの位置と、重み付けされたオブジェクトの向きとに基づいて多項式を接線方向に推定することを含んでもよい。運動軌跡を接線方向に推定する方法により、運動軌跡の方向への伸長によって、人間の視線の方向と運動の方向を得ることが可能になる。例えば、位置に対する第１の重み係数は２５％であり、向きに対する第２の重み係数は７５％であってもよい。これにより、接線が多項式に接する角度を調整することができる。
【００２２】
また、オブジェクトの運動状態を用いて運動モデルを調整してもよい。運動状態は、オブジェクトによる特定の種類の運動を表す。例えば、運動状態は、静止（立っている）、運動、歩行、ランニング、静止からランニング／歩行への変化、ランニング／歩行から静止への変化、回転中に静止等である。したがって、方法１００は、さらに、第１の時系列データ及び／又は第２の時系列データに基づいてオブジェクトの運動状態を判断することを含んでもよい。例えば、加速度計及びジャイロスコープを慣性センサとして使用する場合、加速度計及びジャイロスコープのいずれもオブジェクトの（線形）加速度を示さなければ、オブジェクトが静止している（すなわち、位置変化なし）と判断することができる。例えば、運動状態は、グラウンドトゥルースのモーメントであってもよい。また、加速度の活性化閾値を使用して、ジッタを含んだ位置データを最適化してもよい。１つ以上の閾値を使用することにより、無線周波数を利用したオブジェクトの位置信号がオン／オフしてしまうのを平滑化し、防止することができる。すなわち、加速度センサと無線周波数を利用した位置信号を使用することにより、動きの大きさに基づいてジッタを除去することができる。したがって、方法１００は、運動状態に基づいて第１の重み係数及び第２の重み係数を調整することを含んでもよい。例えば、運動状態が物体の静止を表している場合は、位置変化が起こる可能性が低いので、第１の重み係数を小さくしてもよい。したがって、例えば、第１の時系列データ(すなわち、位置データ)がノイズを含んでいても、運動軌跡を高精度に推定することができる。
【００２３】
例えば、方法１００により、人間の頭部に取り付けられた単一の慣性センサを、少し不正確な位置追跡に組み合わせることで、人間の姿勢（位置及び向き）推定が可能になる。方法１００により、センサを現在の状況に適応させて、１つのセンサの強みを他のセンサの欠点を補うために利用することが可能になる。
【００２４】
例えば、方法１００は、ＶＲアプリケーションに使用してもよい。運動モデルは、ＴＣＢスプラインに基づいていてもよい。投影ブレンディングを利用して没入感をさらに改善し、その結果、ＶＲアプリケーションでの存在感をさらに向上させることができる。人間の動きをモデル化するために、ＴＣＢスプラインに加えて、キュービックスプライン又はキャットムル-ロムスプラインを使用してもよい。しかし、ＴＣＢスプラインは、運動シナリオや運動方向の急激な変化に対して適応性がより高く、また、パラメータ化することができる。
【００２５】
運動接線を適切に推定するために、方法１００は、現在の、胴体対頭部の姿勢（人間の向き及び位置によって記述される）に基づく接線関数の重み付けを用いる。通常の動きの状態においては、視線の方向（すなわち、向き）によって、現在の接線関数に最も高い重みが与えられてもよい。胴体対頭部の姿勢は、例えば、検出されたグラウンドトゥルースのモーメントから導出される。
【００２６】
上記のように、リセットポイント（例えば、向きの推定を信頼できるグラウンドトゥルースの向きに再調整できる時点）がない場合、調整を実施できるまでその位置の重み付けをさらに高くしてもよい。調整が行われたら、接線関数における位置に対して、再び、その方向の重み付けをさらに高くしてもよい。慣性センサの向きの安定性は、例えば、時間の経過に伴う頭部の動きの大きさ及びセンサ温度に依存させてもよい（どちらもオブジェクトの動きに関連するコンテキスト情報の例である）。
【００２７】
すなわち、方法１００は、位置を予測するとともに、現在の向きを推定する。例えば、ＴＣＢスプラインにおける現在の推定接線関数に対して、現在の向きを最も強く重み付けしてもよい。上記のように、（例えば、経時的なセンサドリフト、磁気干渉等により）現在の向き推定に確信がない／信用できない場合、推定方法において、位置の重み付けを強くしてもよい。したがって、運動モデルは推定によって構成される。
【００２８】
運動モデルは、３次の多項式であるため、動的運動に対しては精度が低いと考えられることがあるが、高速の動的変化を補償するために、ＴＣＢスプライン等を適切にパラメータ化することができる。方法１００は、向きと位置を組み合わせて１つの位置を表すので、３次の多項式でその位置を記述することができる。
【００２９】
さらに、第１及び第２の時系列データをフィルタリングするために、センサを携帯する人間に関連する（物理的）制約を設けてもよい。例えば、ＶＲでの人間の歩行中に、向きに補完フィルタ（あるいは、カルマンフィルタ又は粒子フィルタ）を使用して、現在の向き及びその異常値を監視してもよい。例えば、向きのフィルタは、短期間（例えば、５分）に９０°を超えてずれることはない。これは、そのような動きは物理的に人間の動きではないからである。また、人間は、自分の視線の方向に歩く傾向がある。このため、誰かが長時間真っすぐ歩いている場合、彼／彼女は歩いている方向を見ている可能性が高い。これは、例えば、ＶＲアプリケーションに当てはまる。人々は、次に何が起こるか（例えば、衝突等）恐れる傾向があるからである。
【００３０】
高度にパラメータ化可能なＴＣＢスプラインにより、人間のゆっくりとした、速い、静的な、又は動的な動きを正確に表現することができる。したがって、このタスクのパラメータの数をできる限り低く保ちながら、運動モデルをできる限りパラメータ化することができる。ＶＲアプリケーションにおいては、方法１００により、さらに、人間に失敗を気づかせることなく、将来のモーメントを推定、すなわち、予測することができる。
【００３１】
上記のように、グラウンドトゥルースのモーメントを用いて、運動モデルを調整してもよい。これについては、図２を参照してより詳細に説明する。図２は、オブジェクトの動きを記述する運動モデルを調整する方法２００を示す。
【００３２】
方法２００は、オブジェクトに取り付けられた複数のセンサの時系列データにおける所定のデータパターンを判断すること２０２を含む。当該所定のデータパターンは、オブジェクトの特定の動き、特定の位置、及び／又は特定の向きに関連する。オブジェクトの特定の動き、特定の位置、及び／又は特定の向きにより、センサデータにおける特定のデータパターンが作成される（例えば、センサは測定した加速度、位置等における特定の変化を示す）。したがって、オブジェクトの特定の動き、特定の位置、及び／又は特定の向きは、グラウンドトゥルースのモーメントとして解釈される。オブジェクトの特定の動き、特定の位置、及び／又は特定の向きに対して、センサの現在の物理的に正確な状態、すなわち、センサの現在の正確な出力データが分かっている。この既知のデータは、調整用の参照データとして使用することができる。例えば、分類等の機械学習の分野から得た方法を使用して、このようなモーメントを（再）識別することができる。言い換えれば、サポートベクターマシンやニューラルネットワークを用いて、センサストリームから抽出特徴を発見し、グラウンドトゥルースのモーメントを分類及び（再）識別することができる。
【００３３】
したがって、方法２００は、さらに、参照データに対する複数のセンサのうちの１つのセンサの時系列データの偏差を判断すること２０４を含む。参照データは、所定のデータパターン(すなわち、グラウンドトゥルースのモーメント)に関連する。言い換えれば、センサの実際の時系列データは、オブジェクトの所定のモーメントに対するセンサの予測出力データと比較される。
【００３４】
さらに、方法２００は、偏差に基づいて運動モデルを調整すること２０６を含む。例えば、運動モデルが少なくとも１つの調整可能なパラメータを有するフィルタ（例えば、ベイジアンフィルタ）を含む場合、運動モデルを調整すること２０６は、偏差に基づいてパラメータを調整することを含んでもよい。グラウンドトゥルースのモーメントを用いることにより、例えば、カルマンフィルタを修正し、かつ、安定させることができる。
【００３５】
したがって、方法２００により、運動モデルをリセット又は再調整することができる。例えば、オブジェクトが人間である場合、センサを（例えば、センサ位置に対する相対的な手の姿勢を提供する）頭部に取り付け、他のセンサを（例えば、手の動きの相対的な情報を提供する）手に取り付けてもよい。２つ以上のセンサを手に取り付けてもよい（例えば、一方のセンサがワールド空間における絶対位置を提供し、他方のセンサが絶対向きを提供する）。この構成では、各センサが異なる座標空間において情報を返信し、これらの情報は誤っており、かつ、ドリフトしているため、マッピングすることができない。しかし、頭部に取り付けられた慣性センサは、（センサデータにおける特性データパターンを判断し、その後、センサデータと参照データとを比較することにより）向きを修正するために、絶対位置ベクトルで補完することができる。最適な向きに基づいて、相対的な手の動きを判断することができ、したがって、手の姿勢を判断することができる。
【００３６】
また、ＶＲビューにおける視線の方向を修正するために、方法２００をＶＲアプリケーションに使用してもよい。例えば、運動モデルがユーザ用のＶＲビューを生成するアルゴリズムの一部である場合、方法２００は、さらに、偏差に基づいてＶＲビューを連続的に変化させることを含んでもよい。仮想現実ビューの連続フレーム間の変化は、ユーザの知覚閾値未満である。このため、方法２００を使用して、ユーザが気付かないようにＶＲビューを修正してもよい。その結果、ＶＲビューの没入感を維持することができる。
【００３７】
また、利用可能なセンサデータの相補効果を利用して、例えば、位置推定及び向き推定を改善することができる。これについては、図３を参照して、以下、さらに説明する。図３は、所定量を導出する方法３００を示す。
【００３８】
方法３００は、その所定量を導出することに関して、少なくとも１つのセンサの時系列データの信頼レベルを判断することを含む。信頼レベルは、その所定量の導出に関して、時系列データがどの程度適切であるか又は誤差を含みやすいかを示す。時系列データの信頼レベルは、例えば、センサの種類及び／又は所定量の種類に基づいて判断してもよい。例えば、人間の靴（又は他の任意の体の位置、例えば、頭部）に取り付けられた加速度センサの時系列データを使用して、人間が一歩歩いたこと（ステップ）、人間の歩数、人間の歩幅を判断してもよい。ステップ（例示的な所定量である）は、加速度センサの時系列データに基づいて高精度に判断することができる。一方、人間の歩幅（他の例示的な所定量である）は、誤差を含んで判断される可能性がある。したがって、人間の歩幅を導出するための信頼レベルは低いので、人間の歩幅を判断するために、加速度センサを単独で使用すべきではない。
【００３９】
信頼レベルが閾値未満である場合、方法３００は、少なくとも１つのセンサの時系列データと少なくとも１つの別のセンサの時系列データとを使用して所定量を導出すること３０４を含む。当該所定量は、少なくとも１つのセンサの時系列データの第１の重み係数と、少なくとも１つの別のセンサの時系列データの第２の重み係数とを使用して導出される。言い換えれば、少なくとも１つの別のセンサを使用して信頼レベルの低い（複数の）センサを安定させる。したがって、所定量を適応的に、高精度に導出することができる。
【００４０】
上記ステップ検出例を見ると、人によっては、ステップ検出が、人間の足のステップを完全に正確に識別するものだと思うかも知れない。しかし、歩幅の検出には誤差が入りやすい。このため、距離の増加に伴い、位置決め誤差が大きくなる場合がある。無線周波数信号を利用した位置センサは、精度が低い場合がある。しかし、距離の増加に伴い、位置測定の精度が向上する。このため、無線周波数信号を利用した位置センサのより長い距離での位置決め誤差はほぼゼロであるが、ステップ検出の誤差と歩幅の誤差とを組み合わせると非常に大きな誤差となる。したがって、方法３００では、無線周波数信号を利用した位置センサを使用して誤検出したステップ検出及び歩幅の組み合わせを修復し、歩幅を正しく補正する。
【００４１】
この点で、様々な情報を使用して、個々の時系列データの重み付け係数を調整してもよい。したがって、方法３００は、さらに、少なくとも１つのセンサの時系列データの信頼レベル、少なくとも１つの別のセンサの時系列データの信頼レベル、上記少なくとも１つのセンサを携帯するオブジェクトに関連する１つ以上の物理的な制約（例えば、動きの挙動、最小／最大加速度又は速度の可能範囲、最大頭部回転の可能範囲、最大頭部回転の加速度／速度、最大変位幅等）、及びオブジェクトに関連するコンテキスト情報のうち少なくとも１つを用いて、第１の重み係数及び／又は第２の重み係数を判断することを含んでもよい。オブジェクトに関連するコンテキスト情報は、オブジェクトの動きに影響する可能性のあるあらゆる情報（例えば、マップ、光の状態、昼間、周囲の人々の数等）である。
【００４２】
例えば、機械学習アルゴリズム（すなわち、明示的にプログラムされることなくコンピュータに学習する能力を与えるアルゴリズム）を用いて第１の重み係数及び／又は第２の重み係数を判断してもよい。これにより、所定量を適応的に判断することができる。
【００４３】
上記のように、上述の本開示の態様は、ＶＲのコンテキストで使用してもよい。以下、図４を参照して、ユーザ用のＶＲビューを生成する方法４００について詳細に説明する。方法４００は、上記オブジェクトの動きを予測する方法に従ってユーザの動き（すなわち、ユーザがオブジェクトである）を判断すること４０２を含む。これにより、ユーザの動きを長期に渡って高精度かつ安定的に判断することができる。
【００４４】
また、方法４００は、ユーザの動きに基づいてＶＲビューを生成すること４０４及び上記ユーザに対して上記ＶＲビューを表示すること４０６を含む。ユーザの動きは、ＶＲを生成するアルゴリズムによって、ＶＲにおけるユーザの位置、向き、又は動きに変換することができる。したがって、ＶＲビューはユーザの動きに基づいて更新される。ＶＲビューは、ヘッドマウントディスプレイ（ＨＭＤ）、ヘッドマウントディスプレイユニット、又はヘッドマウントユニット（ＨＭＵ）によって、ユーザに対して表示されてもよい。
【００４５】
ユーザの動きを長期にわたって高精度かつ安定的に判断することができるので、ＶＲの中に実際に入っているとのユーザの感覚を高めることができる。例えば、位置センサが無線周波数信号を利用している場合、第１の時系列データの位置誤差／ジャンプは、例えば、約５０ｃｍにもなる場合がある。したがって、ＶＲビュー生成のために位置センサの第１の時系列データのみを使用すると、ＶＲビューにおいてカメラのジャンプ／ジッタを生ずる可能性がある。ユーザはこれらの位置誤差をジャンプとして経験し、自由に歩き回れる存在という感覚が損なわれる。しかし、運動モデルは、第２の時系列データを加えて使用するので、これらジャンプは（複数の）慣性センサの相補的効果により補正される。例えば、第２の時系列データ及びユーザに基づいて運動状態を判断して、運動軌跡を安定させることができる。したがって、ＶＲビューにおいてジャンプが生じないため、ユーザの没入感が高められる。
【００４６】
上記のように、運動モデルを調整するために、ユーザの所定の／既知の／特定の動きを利用することができる。これらの動きは、例えば、ユーザに対する音響的、視覚的、嗅覚的、又は触覚的効果により引き起こされ得る。そのような効果を適用することにより、既知の動き動作（反応）をするようにユーザを誘導することができる。これらの動きは、センサを使用して検出され、位置、向き等の現在の推定値をリセット／調整するために、予想される測定データと比較されてもよい。
【００４７】
したがって、方法４００は、さらに、ユーザの所定の動きの位置センサの予想される第１の時系列データ（及び／又は少なくとも１つの慣性センサの予想される第２の時系列データ）を算出することを含んでもよい。また、方法４００は、ユーザが所定の動きを実行するよう促すために、ユーザに対して、仮想現実ビューを変化させ、音声を出力し、かつ／あるいは、匂いを発することを含んでもよい。さらに、方法４００は、予想される第１の時系列データに対するユーザの所定の動きの位置センサの実際の第１の時系列データ（及び／又は少なくとも１つの慣性センサの実際の第２の時系列データ）の誤差を判断することを含んでもよい。
【００４８】
上記のように、予想されるセンサデータと実際のセンサデータとを比較することにより、運動モデルを調整してもよい。したがって、方法４００は、さらに、誤差に基づいて運動モデルを調整することを含む。
【００４９】
また、ＶＲビューを修正／調整してもよい。したがって、方法４００は、さらに、誤差に基づいて仮想現実ビューを連続的に変化させることを含んでもよく、そのとき、誤差による仮想現実ビューの連続フレーム間の変化は、ユーザの知覚閾値未満である。知覚閾値は、連続フレーム間でユーザが検知できる最も弱い刺激／変化である。これにより、ユーザの没入感を維持しながらＶＲビューを修正することができる。
【００５０】
例えば、ユーザの左側から突然やってくる音声（例えば、サイレンの付いた車の接近）を当該ユーザに対して出力してもよく、その結果、ユーザは右側にジャンプする。このユーザの反応は既知であり、ユーザの動きも既知である。これにより、センサによる検出誤差を計算することができる。例えば、加速度計の軸が９０°ずれているとする。（直線運動の絶対位置軌跡に基づいて）上記効果を適用してユーザを音源と反対方向にジャンプさせれば、加速度計の向きがずれていることが分かる。これは、ユーザの実行可能な動作を制限する、人体運動学に関する知見に基づいている。これにより、向きの誤差（方向変化）等を推定することができる。
【００５１】
また、ユーザに人間の動き又は挙動が既知である既知のＶＲ地形を歩かせてもよい。この既知のＶＲ地形について、センサ誤差を判断するために、センサ測定値を予測し、実際のセンサ測定値と比較してもよい。例えば、木の板や、２軒の家の間に掛け渡された高いワイヤの上でバランスを取っているユーザは、非常に特異的で中心に寄った動き（速度及び向き変化）を示す。
【００５２】
同様に、ハチがユーザの後から迫って貫通するような音声効果を適用することにより、ユーザにより速く動く（速度変化）よう促してもよい。速度変化は、さらに、例えばＶＲビューにおけるチェスパターンのような床のテクスチャのサイズを増加又は減少させる等、視覚的に気を散らせることにより引き起こされてもよい。例えば、１ｍ×１ｍがＶＲビューにおける床のタイルの通常サイズである場合、当該サイズを０．１ｍ×０．１ｍに変化させるとユーザは移動速度を落とし、当該サイズを１０ｍ×１０ｍに変化させるとユーザは移動速度を上げる。ユーザの没入感を維持するために、連続フレーム間のＶＲビューにおける視覚的な要素の変化は、ユーザの知覚閾値未満とする。
【００５３】
ユーザの誘導された動きをさらに利用して、以前に判断した誤差に基づいてＶＲビューを修正してもよい。例えば、方法４００は、ＶＲビューにおける向きの誤差及び／又は位置の誤差を判断することを含んでもよい。したがって、方法４００は、さらに、ユーザに所定の動きを実行することを促すために、ユーザに対して、仮想現実ビューを変化させ、音声を出力し、かつ／あるいは、匂いを発することを含んでもよい。ユーザが所定の動きを実行している間、方法４００は、向きの誤差及び／又は位置の誤差に基づいて仮想現実ビューを連続的に変化させることを含んでもよく、向きの誤差及び／又は位置の誤差による仮想現実ビューの連続フレーム間の変化は、ユーザの知覚閾値未満である。例えば、向きの誤差及び／又は位置の誤差に対してＶＲビューを連続的に修正するために、所定の動きによるＶＲビューの変化を強めたり弱めたりしてもよい。
【００５４】
例えば、音響的変化又は視覚的変化により、ユーザを違う方向に向けてもよい。いくつかの実施例では、ユーザには気付かれないが、ユーザを直線でなく円形に歩かせる一定のドリフトをユーザのビュー（すなわち、ＶＲビュー）に適用してもよい。同じことが、ユーザがその音響知覚に基づいて向きを変える傾向がある音響効果にも当てはまる。
【００５５】
言い換えれば、ＶＲビューを変化させることは、仮想現実ビューにおける視線の方向を変化させること又は仮想現実ビューにおける少なくとも１つのオブジェクトの形状を変化させることを含んでもよく、仮想現実ビューの連続フレーム間における視線の方向の変化又は少なくとも１つのオブジェクトの形状の変化は、ユーザの知覚閾値未満である。
【００５６】
方法４００は、さらに、図１乃至図３を参照して上記で説明した１つ以上の本開示の態様を含んでもよい。
【００５７】
本開示の態様により、不正確なセンサの問題（ノイズ、不安定、軸のシフト、調整の欠如、経時的なドリフト）が解決される。さらに、本開示の態様により、非線形運動に基づく位置決めの問題が解決される。また、本開示の態様により、人間のヨー軸／体軸周りの不安定な頭部の向きの問題が解決される。本開示の態様では、特定の状況におけるセンサ情報のグラウンドトゥルースのモーメントを表すモーメントが利用される。また、本開示の態様により、様々なデータ及びグラウンドトゥルースのモーメントが補完され、ドリフトとバイアスが再調整される。さらに、本開示の態様により、重み付けが導入され、最終結果（信頼性）に至るまでの様々な寄与相互の重要度のバランスが取られる。本開示の態様により、さらに、視線方向対位置に基づいて重み付けされた接線に基づいて別の値を推定／予測することを可能にする高度にパラメータ化可能なＴＣＰスプラインに基づいて、ＶＲアプリケーションにおける没入感及び存在が改善される。また、本開示の態様では、人間の動きを「知っている」運動モデルが追加される。さらに、本開示の態様では、所定量をできる限り速く予測するために、自動学習が導入される。本開示の態様は、適応フィルタ構造に関する。また、本開示の態様では、予測可能な結果（例えば、加速／減速）を伴う効果によってユーザを無意識のうちに操作することで、運動モデルが最適化される。
【００５８】
上述した１つ以上の実施例及び図面とともに言及及び説明した本開示の態様及び特徴は、他の実施例の同様の機能を置き換えるため、又は他の実施例に当該機能を追加で導入するために、他の１つ以上の実施例と組み合わせてもよい。
【００５９】
実施例は、さらに、コンピュータ又はプロセッサ上で実行されるときに上記の１つ以上の方法を実行するためのプログラムコードを有する（コンピュータ）プログラムであってもよく、また、当該プログラムに関してもよい。上記の様々な方法のステップ、操作、又はプロセスは、プログラムされたコンピュータ又はプロセッサによって実行してもよい。実施例は、機械、プロセッサ、又はコンピュータ読取可能であり、命令の機械実行可能な、プロセッサ実行可能な、又はコンピュータ実行可能なプログラムを符号化するデジタルデータ記憶媒体等のプログラム記憶デバイスを含んでもよい。当該命令は、上記方法の動作の一部又はすべてを実行し、あるいは、実行させる。プログラム記憶デバイスは、例えば、デジタルメモリ、磁気ディスク及び磁気テープ等の磁気記憶媒体、ハードドライブ、又は光学的に読取可能なデジタルデータ記憶媒体を含んでもよく、あるいは、それら自体であってもよい。別の実施例は、上記方法の動作を実行するようにプログラムされたデータ処理システム、コンピュータ、プロセッサ、若しくは制御ユニット、又は上記方法の動作を実行するようにプログラムされた（フィールド）プログラム可能なロジックアレイ（（Ｆ）ＰＬＡ）若しくは（フィールド）プログラム可能なゲートアレイ（（Ｆ）ＰＧＡ）を含んでもよい。
【００６０】
説明及び図面は、単に本開示の原理を例示しているに過ぎない。さらに、本明細書で列挙したすべての実施例は、主に、読者が本開示の原理及び本発明者（ら）が技術を進歩させるために貢献した概念を理解するのに役立てるための教育的な目的のみを明示的に意図したものである。本開示の原理、態様、及び実施例、並びに本開示の特定の実施例を列挙する本明細書のすべての記述は、その同等物を包含することを意図している。
【００６１】
フローチャート、フロー図、状態遷移図、疑似コード等は、様々なプロセス、操作、又はステップを表してもよく、これらは、例えば、コンピュータ可読媒体で実質的に表され、したがって、コンピュータ又はプロセッサが明示的に示されているかどうかに関係なく、そのようなコンピュータ又はプロセッサで実行される。本明細書又は特許請求の範囲に開示されている方法は、これら方法のそれぞれの動作を実行するための手段を有するデバイスによって実行されてもよい。
【００６２】
本明細書又は特許請求の範囲に開示されている複数の動作、プロセス、操作、ステップ、又は機能の開示は、例えば、技術的な理由により明示的又は暗示的に述べられていない限り特定の順序で実行されるものと解釈してはならないことを理解されたい。したがって、複数の動作又は機能の開示は、このような動作又は機能が技術的な理由により交換可能でない場合を除いて、これらの実行順序を特定の順序に限定しない。さらに、いくつかの実施例では、単一の動作、機能、プロセス、操作、又はステップは、それぞれ、複数のサブ動作、サブ機能、サブプロセス、サブ操作、又はサブステップを含んでもよく、あるいは、それらに分割してもよい。このようなサブ動作は、明示的に除外されていない限り、この単一の動作の開示の一部に含まれてもよく、あるいは、当該開示の一部であってもよい。
【００６３】
さらに、これにより、以下の請求項が発明の詳細な説明に組み込まれ、各請求項は、個別の実施例として独立することができる。各請求項が個別の実施例として独立することができる一方、従属請求項は特許請求の範囲において他の１つ以上の請求項との特定の組み合わせを参照してもよく、他の実施例は従属請求項と他の各従属請求項又は独立請求項の対象との組み合わせを含んでもよいことを理解されたい。このような組み合わせは、特定の組合せを意図していないことが述べられてない限り、本明細書において明示的に提案される。さらに、請求項が直接に独立請求項に従属していない場合でも、当該請求項の特徴を他の独立請求項に含めることを意図している。
【図１】
2021508886.tif 000003
【図２】
2021508886.tif 000004
【図３】
2021508886.tif 000005
【図４】
2021508886.tif 000006
【手続補正書】
【提出日】令和2年7月7日(2020.7.7)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００４５
【補正方法】変更
【補正の内容】
【００４５】  ユーザの動きを長期にわたって高精度かつ安定的に判断することができるので、ＶＲの中に実際に入っているとのユーザの感覚を高めることができる。例えば、位置センサが無線周波数信号を利用している場合、第１の時系列データの位置誤差／ジャンプは、例えば、約５０ｃｍにもなる場合がある。したがって、ＶＲビュー生成のために位置センサの第１の時系列データのみを使用すると、ＶＲビューにおいてカメラのジャンプ／ジッタを生ずる可能性がある。ユーザはこれらの位置誤差をジャンプとして経験し、自由に歩き回れる存在という感覚が損なわれる。しかし、運動モデルは、第２の時系列データを加えて使用するので、これらジャンプは（複数の）慣性センサの相補的効果により補正される。例えば、第２の時系列データ及び第１の時系列データに基づいて運動状態を判断して、運動軌跡を安定させることができる。したがって、ＶＲビューにおいてジャンプが生じないため、ユーザの没入感が高められる。
【国際調査報告】
2021508886.tif 000007
2021508886.tif 000008
2021508886.tif 000009
2021508886.tif 000010