(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-03-14
(54)【発明の名称】高感度角度検出器を含むヘッドマウントディスプレイシステムのための位置追跡システム
(51)【国際特許分類】
H04N 5/64 20060101AFI20230307BHJP
G06T 7/00 20170101ALI20230307BHJP
【FI】
H04N5/64 511A
G06T7/00 350B
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022526749
(86)(22)【出願日】2021-01-14
(85)【翻訳文提出日】2022-07-14
(86)【国際出願番号】 US2021013444
(87)【国際公開番号】W WO2021150423
(87)【国際公開日】2021-07-29
(32)【優先日】2020-01-24
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】517160525
【氏名又は名称】バルブ コーポレーション
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ハッドマン、ジョシュア
(72)【発明者】
【氏名】イェーツ、アラン
(72)【発明者】
【氏名】ストール、ゴードン ウェイン
(72)【発明者】
【氏名】フレッチャー、エヴァン
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA09
5L096CA04
5L096CA17
5L096DA01
5L096FA69
5L096HA05
5L096HA11
5L096KA04
5L096KA15
(57)【要約】
装着可能なHMDデバイスまたはハンドヘルドコントローラのようなヘッドマウントディスプレイ(HMD)システムコンポーネントの位置を追跡するためのシステムおよび方法である。HMDコンポーネントは、光源から発せられた光の到達角度を検出可能な複数の高感度角度検出器を保持する支持構造を含んでよい。プロセッサは、指定されたパターンに従って光源に発光させ、複数の高感度角度検出器からセンサデータを受信する。プロセッサは、機械学習または他の技術を用いて受信されたセンサデータを処理し、受信されたセンサデータの処理に基づいて、ヘッドマウントディスプレイコンポーネントの位置を追跡してよい。
【特許請求の範囲】
【請求項1】
ユーザによって装着可能な第1ヘッドマウントディスプレイシステムコンポーネントと、
前記第1ヘッドマウントディスプレイシステムコンポーネントによって保持される複数の高感度角度検出器であって、動作中に、前記複数の高感度角度検出器の各々は、1または複数の光源から発せられた光の到達角度を示すセンサデータを捕捉する、複数の高感度角度検出器と、
プロセッサ実行可能命令またはデータの少なくとも1つを格納する少なくとも1つの非一時的プロセッサ可読記憶媒体と、
前記複数の高感度角度検出器および前記少なくとも1つの非一時的プロセッサ可読記憶媒体と動作可能に結合された少なくとも1つのプロセッサと
を備え、
動作中に、前記少なくとも1つのプロセッサは、
前記複数の高感度角度検出器から前記センサデータを受信し、
前記受信されたセンサデータを処理し、
前記受信されたセンサデータの前記処理に少なくとも部分的に基づいて、前記第1ヘッドマウントディスプレイシステムコンポーネントの位置を追跡する、ヘッドマウントディスプレイシステム。
【請求項2】
前記第1ヘッドマウントディスプレイシステムコンポーネントは、前記ユーザの頭に装着可能なヘッドマウントディスプレイデバイスまたはハンドヘルドコントローラを含む、請求項1に記載のヘッドマウントディスプレイシステム。
【請求項3】
前記複数の高感度角度検出器の各々は、フォトダイオード検出器または高感度位置検出器のうちの1つを含む、請求項1または2に記載のヘッドマウントディスプレイシステム。
【請求項4】
前記複数の高感度角度検出器の各々は、少なくとも4つのセルを有するフォトダイオード検出器を含む、請求項1から3のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項5】
複数の光源を含む第2ヘッドマウントディスプレイシステムコンポーネントをさらに備える、請求項1から4のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項6】
前記第1ヘッドマウントディスプレイシステムコンポーネントは、ヘッドマウントディスプレイデバイス、コントローラ、または基地局のうちの1つを含み、前記第2ヘッドマウントディスプレイシステムコンポーネントは、ヘッドマウントディスプレイデバイス、コントローラ、または基地局のうち別のものを含む、請求項5に記載のヘッドマウントディスプレイシステム。
【請求項7】
前記第2ヘッドマウントディスプレイシステムコンポーネントは、前記ヘッドマウントディスプレイシステムが動作する環境に近接した位置に固定されているコンポーネントを含む、請求項5または6に記載のヘッドマウントディスプレイシステム。
【請求項8】
前記複数の光源はLED光源を含む、請求項5から7のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項9】
動作中に、前記第2ヘッドマウントディスプレイシステムコンポーネントは、前記複数の光源のサブセットを所与の時間照射し、前記サブセットは、前記第2ヘッドマウントディスプレイシステムコンポーネントの前記複数の光源の全ては含まない、請求項5から8のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項10】
動作中に、前記第2ヘッドマウントディスプレイシステムコンポーネントは、前記複数の光源を順次照射する、請求項5から9のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項11】
動作中に、前記第2ヘッドマウントディスプレイシステムコンポーネントは、多重化を用いて前記複数の光源を照射する、請求項5から10のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項12】
前記多重化は、時間多重、波長多重、周波数多重、または分極化多重の少なくとも1つを含む、請求項11に記載のヘッドマウントディスプレイシステム。
【請求項13】
前記複数の光源の各々は、レンズ、フィルタ、または偏光板の少なくとも1つを含む光学サブシステムを含む、請求項5から12のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項14】
前記複数の高感度角度検出器の各々は、レンズ、フィルタ、または偏光板の少なくとも1つを含む光学サブシステムを含む、請求項1から13のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項15】
前記複数の高感度角度検出器の各々は、前記高感度角度検出器の高感度素子において、軸上光と比較して、軸外光に同様の寸法を有させるレンズを含む、請求項1から14のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項16】
前記受信されたセンサデータを処理するために、前記少なくとも1つのプロセッサは、前記受信されたセンサデータをトレーニングされた機械学習モデルへの入力として提供する、請求項1から15のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項17】
前記プロセッサは、トレーニングデータを受信し、前記トレーニングデータを用いて前記機械学習モデルをトレーニングするように構成される、請求項16に記載のヘッドマウントディスプレイシステム。
【請求項18】
前記第1ヘッドマウントディスプレイシステムコンポーネントは、前記少なくとも1つのプロセッサと動作可能に結合された慣性測定装置(IMU)センサを含み、動作中に、前記少なくとも1つのプロセッサは、
前記IMUセンサからIMUセンサデータを受信し、
前記IMUセンサデータおよび前記複数の高感度角度検出器から受信された前記センサデータを処理し、
前記受信されたIMUセンサデータおよび前記受信されたセンサデータの前記処理に少なくとも部分的に基づいて、前記第1ヘッドマウントディスプレイシステムコンポーネントの前記位置を追跡する、
請求項1から17のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項19】
前記複数の高感度角度検出器のフレームレートは、毎秒1000フレームより大きいまたはこれに等しい、請求項1から18のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項20】
ヘッドマウントディスプレイシステムを動作させる方法であって、前記ヘッドマウントディスプレイシステムは、ユーザによって装着可能な第1ヘッドマウントディスプレイシステムコンポーネントと、前記第1ヘッドマウントディスプレイシステムコンポーネントによって保持される複数の高感度角度検出器とを備え、前記方法は、
前記複数の高感度角度検出器の各々を介して、光源から発せられた光の到達角度を示すセンサデータを捕捉する段階と、
少なくとも1つのプロセッサによって、前記複数の高感度角度検出器から前記センサデータを受信する段階と、
前記少なくとも1つのプロセッサによって、前記受信されたセンサデータを処理する段階と、
前記少なくとも1つのプロセッサによって、前記受信されたセンサデータの前記処理に少なくとも部分的に基づいて、前記第1ヘッドマウントディスプレイシステムコンポーネントの位置を追跡する段階と
を備える方法。
【請求項21】
ユーザによって装着可能な第1ヘッドマウントディスプレイシステムコンポーネントと、
前記第1ヘッドマウントディスプレイシステムコンポーネントによって保持される複数の高感度角度検出器であって、動作中に、前記複数の高感度角度検出器の各々は、光源から発せられた光の到達角度を示すセンサデータを捕捉する、複数の高感度角度検出器と、
複数の光源を含む第2ヘッドマウントディスプレイシステムコンポーネントと、
プロセッサ実行可能命令またはデータの少なくとも1つを格納する少なくとも1つの非一時的プロセッサ可読記憶媒体と、
前記複数の高感度角度検出器、前記複数の光源、および前記少なくとも1つの非一時的プロセッサ可読記憶媒体と動作可能に結合された少なくとも1つのプロセッサと
を備え、
動作中に、前記少なくとも1つのプロセッサは、
前記複数の光源に発光させ、
前記複数の高感度角度検出器からセンサデータを受信し、
前記受信されたセンサデータを処理し、
前記受信されたセンサデータの前記処理に少なくとも部分的に基づいて、前記第1ヘッドマウントディスプレイシステムコンポーネントおよび前記第2ヘッドマウントディスプレイシステムコンポーネントの少なくとも1つの位置を追跡する、ヘッドマウントディスプレイシステム。
【請求項22】
前記複数の高感度角度検出器の各々は、フォトダイオード検出器または高感度位置検出器のうちの1つを含む、請求項21に記載のヘッドマウントディスプレイシステム。
【請求項23】
前記第1ヘッドマウントディスプレイシステムコンポーネントは、ヘッドマウントディスプレイデバイス、コントローラ、または基地局のうちの1つを含み、前記第2ヘッドマウントディスプレイシステムコンポーネントは、ヘッドマウントディスプレイデバイス、コントローラ、または基地局のうち別のものを含む、請求項21または22に記載のヘッドマウントディスプレイシステム。
【請求項24】
前記複数の光源は、非可視光を発するLED光源を含む、請求項21から23のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項25】
動作中に、前記第2ヘッドマウントディスプレイシステムコンポーネントは、前記複数の光源のサブセットを所与の時間照射し、前記サブセットは、前記第2ヘッドマウントディスプレイシステムコンポーネントの前記複数の光源の全ては含まない、請求項21から24のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項26】
動作中に、前記第2ヘッドマウントディスプレイシステムコンポーネントは、前記複数の光源を順次照射する、請求項21から25のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項27】
動作中に、前記第2ヘッドマウントディスプレイシステムコンポーネントは、多重化を用いて前記複数の光源を照射する、請求項21から26のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項28】
前記多重化は、時間多重、波長多重、周波数多重、または分極化多重の少なくとも1つを含む、請求項27に記載のヘッドマウントディスプレイシステム。
【請求項29】
前記複数の光源の各々は、レンズ、フィルタ、または偏光板の少なくとも1つを含む光学サブシステムを含む、請求項21から28のいずれか一項に記載のヘッドマウントディスプレイシステム。
【請求項30】
前記複数の高感度角度検出器の各々は、レンズ、フィルタ、または偏光板の少なくとも1つを含む光学サブシステムを含む、請求項21から29のいずれか一項に記載のヘッドマウントディスプレイシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概して、ヘッドマウントディスプレイおよびヘッドマウントディスプレイに関連付けられたコントローラのような対象物のための位置追跡に関する。
【背景技術】
【0002】
1つの現実世代の仮想現実(「VR」)または拡張現実(「AR」)エクスペリエンスは、ヘッドマウントディスプレイ(「HMD」)を用いて形成され、それは、(パーソナルコンピュータ(「PC」)、ラップトップ、またはゲームコンソールのような)静止型のコンピュータに結合可能であり、スマートフォンおよび/またはそれと関連付けられたディスプレイと組み合わせおよび/または統合可能であり、または自己完結型であることができる。概して、HMDは、ユーザの頭部に装着され、一方の目(単眼HMD)または各目(双眼HMD)の前方に小さなディスプレイデバイスを有するディスプレイデバイスである。このディスプレイユニットは、典型的には小型化されており、例えば、CRT、LCD、シリコン上液晶(LCos)、またはOLED技術を含んでよい。双眼HMDは、各目に対して異なる画像を表示する可能性を有する。この機能は、立体画像を表示するために使用される。
【0003】
スマートフォン、高精細テレビ、および、他の電子デバイスの進歩により、より高性能なディスプレイの需要が拡大している。特にHMDを用いた仮想現実および拡張現実システムの人気の高まりは、このような需要をさらに増大させる。仮想現実システムは、典型的に、装着者の目を完全に包含し、装着者の前における実際のまたは物理的な視野(または実際の現実)を、"仮想"現実で置換しつつ、拡張現実システムは、典型的に、装着者の目の前における1または複数のスクリーンの半透明または透明なオーバーレイを提供して、これにより、実際の視界が追加の情報によって拡張され、媒介現実システムは、現実世界の要素を仮想要素と組み合わせた情報を視聴者に同様に提示してよい。仮想現実および拡張現実システムの多くにおいて、このようなヘッドマウントディスプレイの装着者の動きは、表示されている画像がユーザの動きを反映可能にし、かつ、インタラクティブ環境を可能とするために、例えば、ヘッドマウントディスプレイ内のセンサ、コントローラ、または、外部センサを介して様々な方式で追跡されてよい。
【0004】
位置追跡により、HMDシステムは、1または複数のコンポーネントの互いおよび周辺環境に対する位置を推定することを可能にする。位置追跡は、ハードウェアおよびソフトウェアの組み合わせを利用して、HMDシステムのコンポーネントの絶対的位置検出を実現してよい。位置追跡は、ARまたはVRシステムにとって重要な技術であり、6自由度(6DOF)のHMD(および/またはコントローラまたは他の周辺機器)の動きを追跡可能にする。
【0005】
位置追跡技術は、ジャンプまたはクラウチングのような異なるアクションを反映するようにユーザの視点を変化させるために用いられてよく、仮想環境内におけるユーザの手や他の対象物の正確な表現を可能としてよい。位置追跡は、また、例えば、手の位置を用いて仮想オブジェクトをタッチにより動かすことによって、物理的環境と仮想環境との間の接続を拡大させてよい。位置追跡は、視差のためユーザの仮想環境の3D認識を向上させ、距離の認識を支援する。また、位置追跡は、目で見ているものの入力と、ユーザの耳の前庭系により感じているものの入力との間の断絶により生じる乗り物酔いを最小化するまたは減らすことを支援してよい。
【0006】
位置追跡の異なる方法が存在している。このような方法は、音響トラッキング、慣性トラッキング、磁気式トラッキング、光学トラッキング、これらの組み合わせなどを含んでよい。
【発明の開示】
【0007】
ヘッドマウントディスプレイシステムは、ユーザによって装着可能な第1ヘッドマウントディスプレイシステムコンポーネントと、第1ヘッドマウントディスプレイシステムコンポーネントによって保持される複数の高感度角度検出器であって、動作中に、複数の高感度角度検出器の各々は、1または複数の光源から発せられた光の到達角度を示すセンサデータを捕捉する、複数の高感度角度検出器と、プロセッサ実行可能命令またはデータの少なくとも1つを格納する少なくとも1つの非一時的プロセッサ可読記憶媒体と、複数の高感度角度検出器および少なくとも1つの非一時的プロセッサ可読記憶媒体と動作可能に結合された少なくとも1つのプロセッサとを含むものとして要約されてよく、動作中に、少なくとも1つのプロセッサは、複数の高感度角度検出器からセンサデータを受信し、受信されたセンサデータを処理し、受信されたセンサデータの処理に少なくとも部分的に基づいて、第1ヘッドマウントディスプレイシステムコンポーネントの位置を追跡する。第1ヘッドマウントディスプレイシステムコンポーネントは、ユーザの頭に装着可能なヘッドマウントディスプレイデバイスまたはハンドヘルドコントローラを含んでよい。複数の高感度角度検出器の各々は、フォトダイオード検出器または高感度位置検出器のうちの1つを含んでよい。複数の高感度角度検出器の各々は、少なくとも4つのセルを有するフォトダイオード検出器を含んでよい。
【0008】
ヘッドマウントディスプレイシステムは、複数の光源を含む第2ヘッドマウントディスプレイシステムコンポーネントをさらに含んでよい。第1ヘッドマウントディスプレイシステムコンポーネントは、ヘッドマウントディスプレイデバイス、コントローラ、または基地局のうちの1つを含んでよく、第2ヘッドマウントディスプレイシステムコンポーネントは、ヘッドマウントディスプレイデバイス、コントローラ、または基地局のうち別のものを含んでよい。第2ヘッドマウントディスプレイシステムコンポーネントは、ヘッドマウントディスプレイシステムが動作する環境に近接した位置に固定されているコンポーネントを含んでよい。複数の光源は、LED光源を含んでよい。動作中に、第2ヘッドマウントディスプレイシステムコンポーネントは、所与の時間だけ複数の光源のサブセットを照射してよく、サブセットは、第2ヘッドマウントディスプレイシステムコンポーネントの複数の光源の全てを含まない。動作中に、第2ヘッドマウントディスプレイシステムコンポーネントは、複数の光源を順次照射してよい。動作中に、第2ヘッドマウントディスプレイシステムコンポーネントは、多重化を用いて複数の光源を照射してよい。多重化は、時間多重、波長多重、周波数多重、または分極化多重の少なくとも1つを含んでよい。光源の各々は、レンズ、フィルタ、または偏光板の少なくとも1つを含む光学サブシステムを含んでよい。高感度角度検出器の各々は、レンズ、フィルタ、または偏光板の少なくとも1つを含む光学サブシステムを含んでよい。高感度角度検出器の各々は、高感度角度検出器の高感度素子において、軸上光と比較して、軸外光に同様の寸法を有させるレンズを含んでよい。受信されたセンサデータを処理するために、少なくとも1つのプロセッサは、受信されたセンサデータをトレーニングされた機械学習モデルへの入力として提供してよい。プロセッサは、トレーニングデータを受信し、トレーニングデータを用いて機械学習モデルをトレーニングするように構成されてよい。第1ヘッドマウントディスプレイシステムコンポーネントは、少なくとも1つのプロセッサと動作可能に結合された慣性測定装置(IMU)センサを含んでよく、動作中に、少なくとも1つのプロセッサは、IMUセンサからIMUセンサデータを受信し、IMUセンサデータおよび複数の光学高感度角度検出器から受信されたセンサデータを処理し、受信されたIMUセンサデータおよび受信されたセンサデータの処理に少なくとも部分的に基づいて、第1ヘッドマウントディスプレイシステムコンポーネントの位置を追跡する。高感度角度検出器のフレームレートは、毎秒1000フレームより大きいまたはこれに等しくてよい。
【0009】
ヘッドマウントディスプレイシステムを動作させる方法であって、ヘッドマウントディスプレイシステムは、ユーザによって装着可能な第1ヘッドマウントディスプレイシステムコンポーネントと、第1ヘッドマウントディスプレイシステムコンポーネントによって保持される複数の高感度角度検出器とを含み、方法は、複数の高感度角度検出器の各々を介して、光源から発せられた光の到達角度を示すセンサデータを捕捉する段階と、少なくとも1つのプロセッサによって、複数の高感度角度検出器からセンサデータを受信する段階と、少なくとも1つのプロセッサによって、受信されたセンサデータを処理する段階と、少なくとも1つのプロセッサによって、受信されたセンサデータの処理に少なくとも部分的に基づいて、第1ヘッドマウントディスプレイシステムコンポーネントの位置を追跡する段階とを含むものとして要約されてよい。
【0010】
ヘッドマウントディスプレイシステムは、ユーザによって装着可能な第1ヘッドマウントディスプレイシステムコンポーネントと、第1ヘッドマウントディスプレイシステムコンポーネントによって保持される複数の高感度角度検出器であって、動作中に、複数の高感度角度検出器の各々は、光源から発せられた光の到達角度を示すセンサデータを捕捉する、複数の高感度角度検出器と、複数の光源を含む第2ヘッドマウントディスプレイシステムコンポーネントと、プロセッサ実行可能命令またはデータの少なくとも1つを格納する少なくとも1つの非一時的プロセッサ可読記憶媒体と、複数の高感度角度検出器、複数の光源、および少なくとも1つの非一時的プロセッサ可読記憶媒体と動作可能に結合された少なくとも1つのプロセッサとを含むものとして要約されてよく、動作中に、少なくとも1つのプロセッサは、複数の光源に発光させ、複数の高感度角度検出器からセンサデータを受信し、受信されたセンサデータを処理し、受信されたセンサデータの処理に少なくとも部分的に基づいて、第1ヘッドマウントディスプレイシステムコンポーネントおよび第2ヘッドマウントディスプレイシステムコンポーネントの少なくとも1つの位置を追跡する。複数の高感度角度検出器の各々は、フォトダイオード検出器または高感度位置検出器のうちの1つを含んでよい。第1ヘッドマウントディスプレイシステムコンポーネントは、ヘッドマウントディスプレイデバイス、コントローラ、または基地局のうちの1つを含んでよく、第2ヘッドマウントディスプレイシステムコンポーネントは、ヘッドマウントディスプレイデバイス、コントローラ、または基地局のうち別のものを含んでよい。複数の光源は、非可視光を発するLED光源を含んでよい。動作中に、第2ヘッドマウントディスプレイシステムコンポーネントは、所与の時間だけ複数の光源のサブセットを照射してよく、サブセットは、第2ヘッドマウントディスプレイシステムコンポーネントの複数の光源の全てを含まない。動作中に、第2ヘッドマウントディスプレイシステムコンポーネントは、複数の光源を順次照射してよい。動作中に、第2ヘッドマウントディスプレイシステムコンポーネントは、多重化を用いて複数の光源を照射してよい。多重化は、時間多重、波長多重、周波数多重、または分極化多重の少なくとも1つを含んでよい。光源の各々は、レンズ、フィルタ、または偏光板の少なくとも1つを含む光学サブシステムを含んでよい。高感度角度検出器の各々は、レンズ、フィルタ、または偏光板の少なくとも1つを含む光学サブシステムを含んでよい。
【図面の簡単な説明】
【0011】
図面において、同一の参照符号は同様の要素または動作を特定する。図面における要素のサイズおよび相対位置は、必ずしも縮尺通りに描写されていない。例えば、様々な要素の形状および角度は、必ずしも縮尺通りに描写されておらず、これらの要素のうちのいくつかは、図面の読みやすさを向上すべく、任意に拡大および配置されてよい。さらに、これらの要素が描写されている具体的形状は、それら具体的要素の実際の形状に関する何らかの情報を伝えることを必ずしも意図するものではなく、単に図面における認識を容易にするために選択されたものに過ぎないことがある。
【0012】
【
図1】追跡サブシステムの実施形態を含む、本開示で説明される少なくともいくつかの技術を実行するの適した1または複数のシステムを含むネットワーク環境の概略図である。
【0013】
【
図2】ビデオレンダリングコンピューティングシステムにテザリングされ、ユーザに仮想現実ディスプレイを提供する例示的なヘッドマウントディスプレイデバイスを有する、説明される技術の少なくともいくつかが用いられる例示的な環境を示す図である。
【0014】
【
図3】双眼表示サブシステムおよび複数の高感度角度検出器を有するHMDデバイスの絵図である。
【
図4】HMDデバイスと共に用いられてよいコントローラの絵図である。
【0015】
【
図5】本開示の例示的な実施形態によるHMDデバイスの概略ブロック図である。
【0016】
【
図6】機械学習技術が1つの非限定的な図示された実装によるHMDデバイスの追跡サブシステムを実装するために用いられてよい環境の概略図である。
【0017】
【
図7】本開示の例示的な実施形態による、使用中のHMDシステムのコンポーネントの位置、向きおよび/または動きを追跡するようにHMDシステムの位置追跡システムを動作させる方法のためのフロー図である。
【0018】
【
図8A】本開示の実装の1または複数において用いられてよい例示的な高感度角度検出器の上面図である。
【0019】
【
図9】光源および高感度角度検出器を使用して、1つの非限定的な図示された実装によるHMDシステムのコンポーネントの位置を決定することを示す簡略化された図である。
【0020】
【
図10】1つの非限定的な図示された実装による光源および高感度角度検出器の例示的な光学システムを描写する図である。
【発明を実施するための形態】
【0021】
以下の説明において、開示された様々な実装の完全な理解を提供するために、特定の具体的な詳細が説明される。しかしながら、これらの具体的詳細の1または複数が無くとも、または他の方法、コンポーネント、材料などによっても、これらの実装が実施され得ることを当業者は認識するであろう。他の例において、これらの実装の説明を不要に曖昧にすることを回避すべく、コンピュータシステム、サーバコンピュータ、および/または通信ネットワークに関連付けられた周知の構造は示されていない、または、詳細に説明されていない。
【0022】
文脈が別段必要としない限り、下記の明細書および特許請求の範囲を通じて、"備える"という単語は"含む"と同義であり、包括的またはオープンエンド(すなわち、追加の、記載されていない要素または方法の動作を排除しない)。
【0023】
本明細書を通して"一実装"または"実装"への参照は、実装に関連して説明された具体的特徴、構造、または、特性が少なくとも1つの実装に含まれることを意味する。従って、本明細書を通して様々な箇所における"一実装において"または"実装において"という表現の出現は、必ずしも、全てが同じ実装を指すものではない。さらに、具体的特徴、構造、または特性は、1または複数の実装において、任意の適切な方式で組み合わせられてよい。
【0024】
本明細書および添付の特許請求の範囲で使用されるように、単数形"a"、"an"、および"the"は、文脈が明確に別段の規定をしていない限り、複数の指示対象を含む。 "または"という用語は、概して、文脈が明確に別段の規定をしていない限り、その意味において"および/または"を含むように用いられることもまた、留意されるべきである。
【0025】
本明細書で提供される見出しおよび要約書は、便宜上のためのみのものであり、実装の範囲または意味を解釈するためものではない。
【0026】
本開示の1または複数の実装は、コンポーネント(例えば、ヘッドマウントディスプレイ(HMD)システムのHMD、コントローラ、周辺機器)の位置を正確に追跡するためのシステムおよび方法に関する。少なくともいくつかの実装において、HMDは、前面カメラ(「前方カメラ」または「前カメラ」)および複数の高感度角度検出器または光源を保持する支持構造を含む。同様に、1または複数のコントローラは、複数の高感度角度検出器または光検出器を含んでよい。他の実装において、HMDは、前方カメラを含まない。前方カメラは、前方カメラ視野において、第1フレームレート(例えば、30Hz、90Hz)で画像センサデータを捕捉してよい。
【0027】
動作中に、1または複数の固定または可動光源(例えば、IR LED)は、さらに後述されるように、発光させられてよい。光源は、HMD、コントローラ、環境に配置された固定対象物(例えば、基地局)などに結合されてよい。複数の高感度角度検出器の各々は、複数の高感度角度検出器視野のそれぞれにおいて、前方カメラ(存在する場合)の第1フレームレートより大きくてよい第2フレームレート(例えば、1000Hz、2000Hz)でセンサデータを捕捉する。少なくともいくつかの実装において、高感度角度検出器視野は、前方カメラ視野よりも狭くてよいが、これは必須ではない。例えば、前方カメラは、比較的広い90°、120°、または150°の前方カメラ視野を有してよく、高感度角度検出器の各々は、比較的狭いセンサIC視野(例えば、25°、45°、75°)を有してよい。少なくともいくつかの実装において、高感度角度検出器視野は、高感度角度検出器視野の各々が前方カメラ視野の異なる部分と重なることにより、前方カメラ視野の少なくとも大部分、または前方カメラ視野よりもはるかに大きい部分を、集合的にカバーしてよい。
【0028】
動作中に、複数の高感度角度検出器と動作可能に結合された少なくとも1つのプロセッサは、複数の光源(例えば、LED、レーザ、他の光源)からの光を捕捉するセンサデータを受信してよい。少なくとも1つのプロセッサは、受信された画像センサデータを処理し、受信された画像センサデータの処理に少なくとも部分的に基づいて、ヘッドマウントディスプレイのコンポーネントの位置を追跡してよい。例えば、少なくとも1つのプロセッサは、高感度角度検出器からのセンサデータを結合し、環境内に存在する1または複数の特徴を追跡してよい。少なくとも1つのプロセッサは、機械学習技術、ソルバー、またはセンサデータを処理する別の方法を利用して、HMDシステムの1または複数のコンポーネントの位置(例えば、位置、向き、動き)を決定してよい。少なくともいくつかの実装において、センサデータは、前方カメラまたはHMDシステムコンポーネントの慣性測定装置(IMU)からのセンサデータのような、他のセンサからのセンサデータと結合されてよい。本開示の実装の様々な特徴は、図を参照して詳細に後述される。
【0029】
図1は、ローカルコンピューティングシステム120、ディスプレイデバイス180(例えば、2つのディスプレイパネルを有するHMDデバイス)、および本明細書で説明される少なくともいくつかの技術を実行するのに適した1または複数のコントローラ182を含むローカルメディアレンダリング(LMR)システム110(例えば、ゲーミングシステム)を含むネットワーク環境100の概略図である。
図1の図示された実施形態において、ローカルコンピューティングシステム120は、伝送リンク115(例えば、
図2に示されるように1または複数のケーブル(ケーブル220)を介して有線またはテザリングされていてよく、またはこれに代えて無線であってよい)を介して、ディスプレイデバイス180と通信可能に接続されている。コントローラ182は、適切な有線または無線リンク186および184をそれぞれ介して、ローカルコンピューティングシステム120またはディスプレイデバイス180と結合されていてよい。他の実施形態において、ローカルコンピューティングシステム120は、HMDデバイス180に加えて、またはこれに代えて、パネル表示装置(例えば、テレビ、コンソールまたはモニタ)への表示のために、有線または無線リンクを介して、エンコードされた画像データを提供してよく、各ディスプレイデバイスは、1または複数のアドレス指定可能な画素アレイを含む。様々な実施形態において、ローカルコンピューティングシステム120は、汎用用途向けコンピューティングシステム、ゲーミングコンソール、ビデオストリーム処理デバイス、モバイルコンピューティングデバイス(例えば、携帯電話、PDA、または他のモバイルデバイス)、VRまたはAR処理デバイス、または他のコンピューティングシステムを含んでよい。
【0030】
示された実施形態において、ローカルコンピューティングシステム120は、1または複数のハードウェアプロセッサ(例えば、中央処理ユニット、または「CPU」)125、メモリ130、様々なI/O(「入力/出力」)ハードウェアコンポーネント127(例えば、キーボード、マウス、1または複数のゲーミングコントローラ、スピーカ、マイク、IR送信機および/または受信機など)、1または複数の特別用途向けハードウェアプロセッサ(例えば、グラフィック処理ユニット、または「GPU」)144およびビデオメモリ(VRAM)148を含むビデオサブシステム140、コンピュータ可読ストレージ150、およびネットワーク接続160を含むコンポーネントを有する。また、示された実施形態において、追跡サブシステム135の実施形態は、説明される技術の少なくともいくつかを実行するために、例えば、CPU125および/またはGPU144を用いて、それらの説明される技術を実装する自動化動作を実行することによって、メモリ130において実行する。メモリ130は、任意選択的に、(例えば、ゲームプログラムのような、表示されるビデオまたは他の画像を生成するための)1または複数の他のプログラム133をさらに実行してよい。本明細書で説明される少なくともいくつかの技術を実装するための自動化動作の一部として、メモリ130において実行する追跡サブシステム135および/またはプログラム133は、例示的なデータベースにおいて、ストレージ150のデータ構造を含む、様々な種類のデータを格納または検索してよい。本例において、用いられるデータは、データベース(「DB」)154では様々な種類の画像データ情報、DB152では様々な種類のアプリケーションデータ、DB157では様々な種類の構成データを含んでよく、システムデータまたは他の情報のような追加の情報を含んでよい。
【0031】
LMRシステム110もまた、図示された実施形態において、1または複数のコンピュータネットワーク101およびネットワークリンク102を介して、例示的なネットワークアクセス可能メディアコンテンツプロバイダ190と通信可能に接続されている。これは、LMRシステム110に、画像生成プログラム133に加えて、またはこれに代えて、表示のためのコンテンツをさらに提供してよい。メディアコンテンツプロバイダ190は、1または複数のコンピューティングシステム(不図示)を含んでよい。これらの各々は、ローカルコンピューティングシステム120のものと同様の、1または複数のハードウェアプロセッサ、I/Oコンポーネント、ローカルストレージデバイスおよびメモリを含むコンポーネントを有してよい。ただし、ネットワークアクセス可能メディアコンテンツプロバイダについて、いくつかの詳細は、簡潔性のために図示されていない。
【0032】
ディスプレイデバイス180は、
図1に示された実施形態において、ローカルコンピューティングシステム120とは別個かつ分離されたものとして図示されているが、特定の実施形態では、ローカルメディアレンダリングシステム110のいくつかまたは全てのコンポーネントは、モバイルゲーミングデバイス、ポータブルVRエンターテインメントシステム、HMDデバイスなどのような単一のデバイス内に統合または収容されてよいことが理解されよう。このような実施形態において、伝送リンク115は、例えば、1または複数のシステムバスおよび/またはビデオバスアーキテクチャを含んでよい。
【0033】
ローカルメディアレンダリングシステム120によってローカルに実行される動作を伴う一例として、ローカルコンピューティングシステムはゲーミングコンピューティングシステムであり、これにより、アプリケーションデータ152は、CPU125を介してメモリ130を用いて実行される1または複数のゲーミングアプリケーションを含む、かつ、様々なビデオフレーム表示データが、例えば、ビデオサブシステム140のGPU144と共に、画像生成プログラム133によって生成および/または処理されるものと仮定する。質の高いゲーミングエクスペリエンスを提供するために、多量のビデオフレームデータ(各ビデオフレームに対して、毎秒約60-180のこのようなビデオフレームという高い「フレームレート」と共に、高い画像解像度に対応する)が、ローカルコンピューティングシステム120によって生成され、有線または無線伝送リンク115を介して、ディスプレイデバイス180に提供される。
【0034】
コンピューティングシステム120およびディスプレイデバイス180は、単に例示に過ぎず、本開示の範囲を限定することを意図するものではないこともまた理解されよう。コンピューティングシステム120は、代わりに、複数のインタラクトコンピューティングシステムまたはデバイスを含んでよく、インターネットのような1または複数のネットワークを通して、ウェブを介して、またはプライベートネットワーク(例えば、移動通信ネットワークなど)を介して接続されることを含め、図示されていない他のデバイスに接続されていてよい。より一般的には、コンピューティングシステムまたは他のコンピューティングノードは、ハードウェアまたはソフトウェアの任意の組み合わせを含んでよい。これらは、説明される種類の機能をインタラクトおよび実行することが可能であり、限定的ではないが、デスクトップまたは他のコンピュータ、ゲームシステム、データベースサーバ、ネットワークストレージデバイス、および他のネットワークデバイス、PDA、携帯電話、無線電話、ページャ、電子手帳、インターネット機器、テレビベースのシステム(例えば、セットトップボックスおよび/またはパーソナル/デジタルビデオレコーダを用いた)、ならびに適切な通信機能を含む様々な他の消費財を含む。ディスプレイデバイス180は、同様に、1または複数の様々な種類および形式のディスプレイパネルを有する1または複数のデバイスを含んでよく、任意選択的に、様々な他のハードウェアおよび/またはソフトウェアコンポーネントを含んでよい。
【0035】
さらに、追跡サブシステム135によって提供される機能は、いくつかの実施形態において、1または複数のコンポーネント(例えば、ローカルおよびリモートコンピューティングシステム、HMD、コントローラ、基地局)に分散されていてよく、いくつかの実施形態において、追跡サブシステム135の機能のいくつかは提供されなくてよく、および/または、他の追加の機能が利用可能であってよい。様々なアイテムが、使用中に、メモリ内またはストレージ上に格納されているものとして示されているが、これらのアイテムまたはこれらの一部は、メモリ管理またはデータ完全性の目的のために、メモリと他のストレージデバイスとの間で転送されてよいこともまた理解されよう。従って、いくつかの実施形態において、説明される技術のいくつかまたは全ては、1または複数のプロセッサを含むハードウェアまたは他の構成されたハードウェア回路またはメモリまたはストレージによって、例えば、1または複数のソフトウェアプログラムによって(例えば、追跡サブシステム135またはそのコンポーネントによって)、および/またはデータ構造によって(例えば、1または複数のソフトウェアプログラムのソフトウェア命令の実行によって、および/またはこのようなソフトウェア命令および/またはデータ構造のストレージによって)構成された場合に、実行されてよい。コンポーネント、システムおよびデータ構造のいくつかまたは全てはまた、ハードディスクまたはフラッシュドライブまたは他の不揮発性ストレージデバイス、揮発性または不揮発性メモリ(例えば、RAM)、ネットワークストレージデバイス、または、適切なドライブ(例えば、DVDディスク、CDディスク、光ディスクなど)、または適切な接続を介して読み込まれるポータブルメディア製品のような非一時的コンピュータ可読記憶媒体に(例えば、ソフトウェア命令または構造化データとして)格納されてもよい。システム、コンポーネントおよびデータ構造はまた、いくつかの実施形態において、生成されたデータ信号として(例えば、搬送波、または他のアナログまたはデジタル伝搬信号の一部として)無線ベースおよび有線/ケーブルベースの媒体を含む様々なコンピュータ可読伝送媒体で伝送されてよく、(例えば、単一または多重化アナログ信号の一部として、または、複数の別個のデジタルパケットまたはフレームとして)様々な形式を取ってよい。このようなコンピュータプログラム製品はまた、他の実施形態においては他の形式をとってもよい。従って、本発明は、他のコンピュータシステム構成によって実施されてよい。
【0036】
図2は、説明される技術の少なくともいくつかが、テザリング接続220(または他の実施形態においては無線接続)を介してビデオレンダリングコンピューティングシステム204と結合された例示的なHMDデバイス202と共に用いられ、仮想現実ディスプレイを人間のユーザ206に提供する、例示的な環境200を示す。ユーザは、HMDデバイス202を装着し、HMDデバイスを介して、実際の物理的環境とは異なるシミュレーション環境のコンピューティングシステム204から、表示された情報を受信する。ここで、コンピューティングシステムは、シミュレーション環境の画像を、ユーザへの表示のためにHMDデバイスに供給する画像レンダリングシステムとして動作する。例えば、画像は、コンピューティングシステム上で実行するゲームプログラムおよび/または他のソフトウェアプログラムによって生成される。ユーザは、本例において、実際の物理的環境200の追跡量201内で動き回ることがさらに可能であり、ユーザがシミュレーション環境とインタラクトすることをさらに可能にする1または複数のI/O(「入力/出力」)デバイスをさらに有してよい。これは、本例において、ハンドヘルドコントローラ208および210を含む。
【0037】
示される例において、環境200は、1または複数の基地局214(2つが示されており、基地局214aおよび214bが付されている)を含んでよい。これは、HMDデバイス202またはコントローラ208および210の追跡を容易にしてよい。ユーザが位置を移動するまたはHMDデバイス202の向きを変化させると、HMDデバイスの位置が追跡され、例えば、シミュレーション環境の対応する部分が、HMDデバイス上でユーザに表示可能となる。コントローラ208および210は、コントローラの位置追跡において用いるための(かつ、任意選択的に、HMDデバイスの位置決定または検証を支援する情報を用いるための)同様の技術をさらに採用してよい。HMDデバイス202の追跡された位置が知られた後、対応する情報が、テザリング220または無線を介してコンピューティングシステム204に伝送される。これは、追跡された位置情報を用いて、シミュレーション環境の1または複数の次の画像を生成し、ユーザに表示する。
【0038】
本開示の様々な実装において用いられてよい位置追跡の多数の異なる方法が存在し、限定されるものではないが、音響トラッキング、慣性トラッキング、磁気式トラッキング、光学トラッキング、これらの組み合わせなどを含む。
【0039】
少なくともいくつかの実装において、HMDデバイス202およびコントローラ208および210の少なくとも1つは、1または複数の光学受信機またはセンサを含んでよく、これは、本開示の追跡機能または他の態様を実装するために用いられてよい。少なくともいくつかの実装において、HMDデバイス202、コントローラ208および210、または他のコンポーネントの少なくとも1つは、1または複数の光源(例えば、LED)を含んでよく、これは、光学受信機の1または複数によって検出される光を発してよい。光源は、固定された位置にあってよく、または、HMDデバイスまたはコントローラのような可動式コンポーネント上にあってよい。
【0040】
少なくともいくつかの実装において、固定された点光源を生成することに加えて、またはこれに代えて、各基地局214は、追跡量201にわたって光学信号をスイープしてよい。各具体的実装の要件に応じて、各基地局214は、1よりも多くの光学信号を生成してよい。例えば、単一の基地局214が典型的には自由度6追跡に十分であれば、複数の基地局(例えば、基地局214a、214b)は、いくつかの実施形態において、HMDデバイスおよび周辺機器にロバストなルームスケールの追跡を提供するために必要とされる、または望ましいことがある。本例において、光学受信機は、HMDデバイス202および/またはコントローラ208および210のような他の追跡対象物に組み込まれている。少なくともいくつかの実装において、光学受信機は、各追跡されるデバイス上の加速度計およびジャイロスコープ慣性測定装置(「IMU」)と対をなし、低レイテンシなセンサフュージョンをサポートしてよい。
【0041】
少なくともいくつかの実装において、各基地局214は、2つのロータを含み、これは、鉛直軸上の追跡量201にわたって線形ビームをスイープする。各スイープサイクルの開始時に、基地局214は、追跡対象物上の全センサに可視な全方向光パルス(「同期信号」と称される)を発してよい。従って、各センサは、同期信号とビーム信号との間の期間を計測することによって、スイープ量における固有の角度位置を計算する。センサ距離および向きは、単一の剛体に固定された複数のセンサを用いて導出されてよい。
【0042】
追跡対象物(例えば、HMDデバイス202、コントローラ208および210)上に配置された1または複数のセンサは、ロータから変調光を検出可能な光電子デバイスを含んでよい。可視光または近赤外(NIR)光には、シリコンフォトダイオードおよび適した増幅器/検出器回路が用いられてよい。環境200は、基地局214信号の信号と同様の波長を有する静的および時間変化信号(光学ノイズ)を含むことがあるので、少なくともいくつかの実装において、基地局光は、あらゆる干渉信号からの区別を容易にし、および/または基地局信号のもの以外のあらゆる放射波長からセンサをフィルタリングするための方式で変調されてよい。さらに後述されるように、少なくともいくつかの実装において、HMDシステムの1または複数のコンポーネントを追跡するために、高感度角度検出器が用いられる。
【0043】
インサイドアウトトラッキングもまた、一種の位置追跡であり、HMDデバイス202および/または他の対象物(例えば、コントローラ208および210、タブレットコンピュータ、スマートフォン)の位置を追跡するために用いられてよい。インサイドアウトトラッキングは、HMDコンポーネントの位置を決定するために用いられるカメラまたは他のセンサの位置で、アウトサイドイントラッキングと異なる。インサイドアウトトラッキングでは、カメラまたはセンサは、HMDコンポーネントまたは追跡される対象物上に配置され、アウトサイドイントラッキングでは、カメラまたはセンサは環境内の静止した位置に配置される。
【0044】
インサイドアウトトラッキングを利用するHMDは、1または複数のセンサを利用して「ルックアウト」し、環境に対してその位置がどのように変化するかを決定する。HMDが動く場合、センサは、部屋内でのそれらの配置を再調節し、仮想環境は、それに従ってリアルタイムに応答する。この種類の位置追跡は、環境内に配置されるマーカの有無にかかわらず実現され得る。HMD上に配置されたカメラは、周辺環境の特徴を観察する。マーカを用いる場合、マーカは、追跡システムによって容易に検出されるように設計され、特定の領域に配置される。「マーカのない」インサイドアウトトラッキングでは、HMDシステムは、環境内に元々存在する顕著な特性(例えば、自然の特徴)を用いて、位置および向きを決定する。HMDシステムのアルゴリズムは、特定の画像または形状を識別し、それらを用いて空間内でのデバイスの位置を算出する。加速度計およびジャイロスコープからのデータもまた、位置追跡の精度を向上させるために用いられてよい。
【0045】
図3は、ユーザ342の頭に装着された場合の例示的なHMDデバイス344の前方視野を示す情報300を示す。HMDデバイス344は、前面または前方カメラ346をサポートする前面構造343と、1または複数の種類の複数の高感度角度検出器348a-348f(集合的に348)とを含む。一例として、高感度角度検出器348のいくつかまたは全て、例えば、1または複数の外部デバイス(不図示、例えば
図2の基地局214、コントローラ)から発せられた光情報を検出および使用する光センサは、空間におけるデバイス344の位置および向きの決定を支援してよい。高感度角度検出器348は、光源から発せられた光の到達角度を検出するように動作可能な任意の種類の検出器であってよい。高感度角度検出器の非限定的な例は、フォトダイオード検出器(例えば、バイセル検出器、クアドランドセル検出器)、抵抗性シートを用いる高感度位置検出器などを含む。
【0046】
示されるように、前方カメラ346および高感度角度検出器348は、ユーザ342がHMDデバイス344を動作させる実際のシーンまたは環境(不図示)に向かって、前方に方向づけられる。より一般的には、高感度角度検出器348は、他の領域(例えば、上方、下方、左、右、後方)に向かって方向づけられ、コントローラまたは様々な位置(例えば、壁、天井)に搭載された対象物のような様々な源からの光を検出する。実際の物理的環境は、例えば、1または複数の対象物(例えば、壁、天井、家具、階段、車、木、追跡マーカ、光源、または任意の他の種類の対象物)を含んでよい。センサ348の具体的な数は、図示されるセンサの数より少なくてよく(例えば、2、4)、または多くてもよい(例えば、10、20、30、40)。HMDデバイス344は、前面構造(例えば、HMDデバイスの内部)に取り付けられていない1または複数の追加のコンポーネントをさらに含んでよい。例えば、IMU(慣性測定装置)347は、(例えば、加速度計およびジャイロスコープ、および任意選択的に磁力計の組み合わせを用いて)電子デバイスHMDデバイス344の特定の力、角速度、および/またはHMDデバイス周囲の磁場を測定および報告する。HMDデバイス344は、不図示の追加のコンポーネントをさらに含んでよい。これは、ユーザの目(不図示)に向かって方向付けられ、任意選択的に、HMDデバイス内の光学レンズ系および/またはディスプレイパネルのうち1または複数のアラインメントまたは他のポジショニングを変化させる1または複数の取り付け式内部モータを有する1または複数のディスプレイパネルおよび光学レンズ系を含む。
【0047】
HMDデバイス344の示された例は、HMDデバイス344のハウジングに取り付けられた、ユーザの頭を全体的にまたは部分的に延びる1または複数のストラップ345に少なくとも部分的に基づいて、ユーザ342の頭にサポートされる。ここでは図示されていないが、HMDデバイス344は、例えば、ストラップ345の1または複数に取り付けられた1または複数の外部モータをさらに有してよい。自動化された補正アクションは、ユーザの頭上のHMDデバイスのアラインメントまたは他のポジショニングを修正するために、このようなモータを用いてこのようなストラップを調整することを含んでよい。HMDデバイスは、示されたストラップに加えてまたはこれに代えて、ここでは図示されていない他の支持構造(例えば、ノーズピース、顎ストラップなど)を含んでよく、いくつかの実施形態は、1または複数のこのような他の支持構造に取り付けられ、これらの形状および/または位置を同様に調整し、ユーザの頭におけるHMDデバイスのアラインメントまたは他のポジショニングを修正するモータを含んでよいことが理解されよう。ユーザの頭に固定されていない他のディスプレイデバイスが、同様に、ディスプレイデバイスのポジショニングに影響する1または複数の構造に取り付けられ、またはその一部であってよく、少なくともいくつかの実施形態において、モータまたは他の機械的アクチュエータを含んでよく、これにより同様に、これらの形状および/または位置を修正し、ディスプレイデバイスの1または複数のユーザの1または複数の瞳に対して、ディスプレイデバイスのアラインメントまたは他のポジショニングを修正する。
【0048】
図4は、ハンドコントローラ400の一例をさらに詳細に示す。実際には、HMDシステムは、
図4のハンドコントローラ400と同様または同一の2つのハンドコントローラを含んでよく、これらは、上述したコントローラ182、208および210と同様または同一であってよい。示されるように、コントローラ400は、高感度角度検出器402が配置される様々な面を有する。高感度角度検出器402は、様々な異なる方向から光学信号を受信するように配置されている。コントローラ400は、ボタン、センサ、光、制御、ノブ、インジケータ、ディスプレイなどを有してよく、ユーザによる様々な方式でのインタラクションを可能にする。さらに、上述したように、少なくともいくつかの実装において、コントローラ400およびHMDデバイス344のうちの1つは複数の光源を含んでよく、コントローラおよびHMDデバイスの他方は複数の高感度角度検出器または他の種類の検出器またはセンサを含んでよい。本明細書で説明される技術は、様々な種類の位置追跡に用いられてよく、限定されるものではないが、HMD、コントローラなどである。
【0049】
図5は、本開示の1または複数の実装によるHMDデバイス500の概略ブロック図を示す。HMDデバイス500は、本明細書の他の箇所で説明されるHMDデバイスと同様または同一であってよい。従って、HMDデバイスに関して上述した説明は、HMDデバイス500にもまた適用されてよい。さらに、HMDデバイス500のコンポーネントの少なくともいくつかは、コントローラ、基地局などのようなHMDシステムの他のコンポーネントに存在してよい。従って、以下の説明の少なくともいくつかは、このような他のコンポーネントに適用可能であってよい。
【0050】
HMDデバイス500は、プロセッサ502と、前面または前方カメラ504と、複数の高感度角度検出器506(例えば、クアッドセルフォトダイオード、高感度位置検出器)とを含み、任意選択的に、IMU507または複数の光源509を含む。いくつかの実装において、HMDデバイス500は、高感度角度検出器または光源のうちの1つを含んでよく、他のコンポーネント(例えば、コントローラ、基地局)は、他の高感度角度検出器または光源を含んでよい。HMDデバイス500は、表示サブシステム508(例えば、2つのディスプレイおよび対応する光学システム)を含んでよい。HMDデバイス500はまた、位置追跡512のための命令またはデータ、表示機能514(例えば、ゲーム)のための命令またはデータ、および/または他のプログラム516を格納し得る非一時的データストレージ510をも含んでよい。HMDシステム500は、
図1に示す、上述したローカルコンピューティングシステム120またはメディアコンテンツプロバイダ190の機能のいくつかまたは全てを含んでよい。
【0051】
HMDデバイス500はまた、様々なI/Oコンポーネント518をも含んでよく、これらは、1または複数のユーザインタフェース(例えば、ボタン、タッチパッド、スピーカ)、1または複数の有線または無線通信インタフェースなどを含んでよい。一例として、I/Oコンポーネント518は、HMDデバイス500が有線または無線通信リンク522を介して外部デバイス520と通信することを可能とする通信インタフェースを含んでよい。非限定的な例として、外部デバイス520は、ホストコンピュータ、サーバ、モバイルデバイス(例えば、スマートフォン、ウェアラブルコンピュータ)、コントローラなどを含んでよい。HMDデバイス500の様々なコンポーネントは、単一のハウジングに収容されてよく、分離されたハウジング(例えば、ホストコンピュータ)に収容されてよく、またはこれらの任意の組み合わせであってよい。
【0052】
示されたコンピューティングシステムおよびデバイスは、単に例示に過ぎず、本開示の範囲を限定することを意図するものではないことが理解されよう。例えば、HMD500および/または外部デバイス520は、インターネットのような1または複数のネットワークを通して、またはウェブを介して接続されることを含め、図示されていない他のデバイスに接続されてよい。より一般的には、このようなコンピューティングシステムまたはデバイスは、例えば、デスクトップコンピュータ、ラップトップコンピュータ、スレートコンピュータ、タブレットコンピュータ、または、他のコンピュータ、スマートフォンコンピューティングデバイス、および、他の携帯電話、インターネット機器、PDA、および、他の電子手帳、データベースサーバ、ネットワークストレージデバイス、および、他のネットワークデバイス、無線電話、ページャ、テレビベースのシステム(例えば、セットトップボックス、および/または、パーソナル/デジタルビデオレコーダ、および/または、ゲームコンソール、および/または、メディアサーバの使用)、および、適切な相互通信機能を含む様々な他の消費財を含むがこれらに限定されない適切なソフトウェアでプログラムされたまたは別段構成された場合、説明された種類の機能をインタラクトおよび実行できるハードウェアの任意の組み合わせを含んでよい。例えば、例示のシステム500および520は、少なくともいくつかの実施形態において、具体的なコンピューティングシステムまたはデバイスによりロードおよび/または実行された場合に、例えば、それらシステムまたはデバイスのプロセッサを構成するように、それらシステムまたはデバイスをプログラムまたは別段構成するために用いられてよい、実行可能ソフトウェア命令および/またはデータ構造を含んでよい。代替的に、他の実施形態においては、ソフトウェアシステムのいくつかまたは全ては、別のデバイス上のメモリで実行され、コンピュータ間通信を介して、図示されたコンピューティングシステム/デバイスと通信してよい。さらに、様々なアイテムが様々な時間(例えば使用中)にメモリまたはストレージに格納されるように示されているが、これらアイテムまたはそれらの一部は、メモリ管理および/またはデータ完全性の目的で、メモリとストレージとの間および/または(例えば、異なる位置の)ストレージデバイス間で転送されることができる。
【0053】
従って、少なくともいくつかの実施形態において、例示のシステムは、プロセッサおよび/または他のプロセッサ手段により実行された場合に、システムのための説明された動作を自動的に実行するようにプロセッサをプログラムするソフトウェア命令を含むソフトウェアベースシステムである。さらに、いくつかの実施形態において、システムのいくつかまたは全ては、限定されるものではないが、1または複数の特定用途向け集積回路(ASIC)、標準的な集積回路、コントローラ(例えば、適切な命令を実行し、マイクロコントローラおよび/または埋め込みコントローラを含むことによって)、フィールドプログラマブルゲートアレイ(FPGA)、コンプレックスプログラマブルロジックデバイス(CPLD)などを含む、少なくとも部分的にはファームウェアおよび/またはハードウェア手段のような、他の方式で実装または提供されてよい。システムまたはデータ構造のいくつかまたは全てはまた、ハードディスクまたはフラッシュドライブまたは他の不揮発性ストレージデバイス、揮発性または不揮発性メモリ(例えば、RAM)、ネットワークストレージデバイス、または適切なドライブによりまたは適切な接続を介して読み取られるポータブルメディア製品(例えば、DVDディスク、CDディスク、光ディスク、フラッシュメモリデバイスなど)のような非一時的コンピュータ可読記憶媒体に(例えば、ソフトウェア命令コンテンツまたは構造化データコンテンツとして)格納されてよい。システム、モジュール、および、データ構造はまた、いくつかの実施形態において、無線ベースおよび有線/ケーブルベースの媒体を含み、様々な形式(例えば、単一のまたは多重化されたアナログ信号または複数の別個のデジタルパケットまたはフレームの一部として)をとることができる様々なコンピュータ可読伝送媒体上で、生成されたデータ信号として(例えば、搬送波または他のアナログまたはデジタル伝搬信号の一部として)伝送されてよい。このようなコンピュータプログラム製品はまた、他の実施形態においては他の形式をとってもよい。従って、本開示は、他のコンピュータシステム構成によって実施されてよい。
【0054】
図6は、1つの非限定的な図示された実装による、本明細書で説明される追跡サブシステムのような、HMDデバイス、1または複数のコントローラ、または他のコンポーネントを追跡する追跡サブシステムを実装するために、機械学習技術が用いられてよい環境600の概略図である。環境600は、モデル化されたトレーニング部601および推論部603を含む。トレーニング部601において、トレーニングデータ602が機械学習アルゴリズム604に供給され、トレーニングされた機械学習モデル606を生成する。トレーニングデータは、例えば、1または複数の光源(例えばLED)に対して具体的な対象物の位置および/または向きを指定する高感度角度検出器からのラベリングされたデータを含んでよい。非限定的な例として、30の高感度角度検出器を有するコンポーネント(例えば、HMD、コントローラ)を含む実施形態において、各トレーニングサンプルは、高感度角度検出器の各々またはサブセットからの出力、既知または推論されたコンポーネントの位置または向き、および1または複数の光源の位置または方向についての情報を含んでよい。後述されるように、各高感度角度検出器は、単一のデータポイント(例えば、角度)を出力してよく、または、その各々が、高感度角度検出器の具体的な能動要素(例えば、サブ検出器またはセル、抵抗性シートなど)において受信された光の電力または強度を示す、2または4の信号のような複数のデータポイントを出力してよい。
【0055】
トレーニングデータ602は、複数のユーザから、および/またはHMDシステムの単一のユーザから、取得されてよい。トレーニングデータ602は、制御された環境において、および/または、ユーザによる実際の使用(「フィールドトレーニング」)中に、取得されてよい。さらに、少なくともいくつかの実装において、モデル606は、正確な位置追跡予測を提供するために、時々(例えば、定期的に、連続的に、特定の事象後に)更新または較正されてよい。
【0056】
推論部603において、トレーニングされた機械学習モデル606への入力としてランタイムデータ608が提供され、位置追跡予測610を生成する。上述の例を続けると、高感度角度検出器の出力データ(例えば、強度データ、角度データ)と、任意選択的に、1または複数の光源についての情報が、トレーニングされた機械学習モデル606への入力として提供されてよく、これは、データを処理して、コンポーネントの位置を予測してよい。追跡予測610は、次に、例えば、1または複数のVRまたはARアプリケーション、1または複数のディスプレイまたはレンダリングモジュール、1または複数の機械的制御、1または複数の追加の位置追跡サブシステムなどのような、HMDデバイスに関連付けられた1または複数のコンポーネントに提供されてよい。
【0057】
本明細書で説明される特徴を実装するために用いられる機械学習技術は、任意の種類の好適な構造または技術を含んでよい。非限定的な例として、機械学習モデル606は、決定木、統計階層モデル、サポートベクタマシン、畳み込みニューラルネットワーク(CNN)または再帰型ニューラルネットワーク(RNN)(例えば、長短期記憶(LSTM)ネットワーク)、混合密度ネットワーク(MDN)、隠れマルコフモデルのような人工ニューラルネットワーク(ANN)の1または複数を含んでよく、または他のモデルが利用可能である。RNNを利用する実装のような、少なくともいくつかの実装において、機械学習モデル606は、過去の入力(メモリ、フィードバック)情報を利用して、1または複数のHMDコンポーネントの位置を予測してよい。このような実装は、有利には、シーケンシャルデータを利用して、より正確なリアルタイム位置予測を提供し得る動き情報または前の位置予測を決定してよい。
【0058】
図7は、HMDシステムを動作させて、使用中にHMDコンポーネントの位置を追跡する例示的な方法700のフロー図である。方法700は、例えば、
図5に示すHMDシステム500の位置追跡システムまたはモジュール512によって実行されてよい。上述したように、方法700は、HMDデバイス、1または複数のコントローラなどのような、任意のコンポーネントの位置を追跡するために用いられてよい。
【0059】
方法700の示された実装は、動作702で開始し、複数の高感度角度検出器を有する第1HMDシステムコンポーネントが提供される。複数の高感度角度検出器は、固定配置(例えば、壁または天井に搭載される)または可動式(例えば、HMDまたはコントローラに結合される)であってよい1または複数の光源から発せられた光を検出するように動作可能であってよい。動作中に、複数の高感度角度検出器の各々は、複数の高感度角度検出器視野のそれぞれにおいて、フレームレートでセンサデータを捕捉する。センサデータは、プロセッサが高感度角度検出器に対する光源の存在および方向を検出するために使用可能な任意の種類のデータを含んでよい。少なくともいくつかの実装において、高感度角度検出器の各々は、画像感知回路および画像処理回路を有する1または複数のセンサ(例えば、フォトダイオード)を含んでよい。高感度角度検出器は、比較的生のデータ(例えば、光強度または電力データ)または処理済みデータ(例えば、入射角データ)を出力してよい。
【0060】
704において、複数の光源(例えば、近赤外線LED)を含む第2HMDシステムコンポーネントが提供されてよい。第2HMDシステムコンポーネントは、例えば、コントローラ、HMDデバイス、または固定位置(例えば、天井、壁)に配置された光源を含んでよい。
【0061】
706において、HMDシステムの少なくとも1つのプロセッサは、光源を発光させてよい。光源は、各高感度角度検出器が単一の光源からの光を一度に検出し得る方式で、または、より一般的には、システムが高感度角度検出器によって検出された光がどの光源から受信されたかを決定し得る方式で、照射してよい。これは、時間多重、波長多重、周波数多重、分極化多重のような任意の好適な種類の多重化、または、システムが使用中に高感度角度検出器の各々から受信された光の源を知ることを可能にする他の技術を用いて、光源の照明を多重化することによって実現されてよい。
【0062】
時間多重の一例として、少なくとも1つのプロセッサは、一度に光源のサブセット(例えば、1、2、4)のみを照射してよい。例えば、少なくとも1つのプロセッサは、一度に1つ光源を順次照射し、光源の各々に応答するセンサデータを収集してよい。
【0063】
波長多重の一例として、光源の異なるサブセットは、異なる波長の光を発してよく、高感度角度検出器の異なるサブセットは、異なる波長の光を感知するように動作可能であってよい。従って、異なる波長を有する光源は、同時に照射され、対応する波長高感度検出器によって検出されてよい。
【0064】
周波数多重の一例として、光源のサブセットは、光の具体的な光源を識別するように高感度角度検出器によって検出可能な、決定されたパターンまたは周波数で照射されてよい。
【0065】
分極化多重の一例として、光源のサブセットは、異なるように(例えば、線形、円形に)分極化されてよく、高感度角度検出器の対応するサブセットは、特定の偏光を検出するように構成されてよく、これにより、複数の光源が同時に照射されることを可能にする。
【0066】
708において、HMDシステムに関連付けられた少なくとも1つのプロセッサは、複数の高感度角度検出器からセンサデータを受信してよい。上述したように、各高感度角度検出器に対して、センサデータは、既知の光源から発せられた光の到達角度を示してよい。710において、HMDシステムに関連付けられた少なくとも1つのプロセッサは、任意選択的に、慣性トラッキング機能を提供するように動作可能な慣性測定装置(IMU)からのセンサデータ、または1または複数の追加のセンサからのセンサデータを受信してよい。
【0067】
712において、HMDシステムに関連付けられた少なくとも1つのプロセッサは、受信されたセンサデータを処理してよい。例えば、少なくとも1つのプロセッサは、センサデータのいくつかまたは全てをともに結合し、HMDシステムが動作する環境に存在する1または複数の特徴を追跡してよい。センサデータは、複数の高感度角度検出器からのセンサデータを含んでよく、任意選択的に、IMUから、またはカメラからのセンサデータを含んでよい。少なくとも1つのプロセッサは、例えば、機械学習モデル(例えば、モデル化606)または別のソルバーを用いて、センサデータを処理してよい。
【0068】
714において、HMDシステムに関連付けられた少なくとも1つのプロセッサは、HMDシステムのコンポーネントの位置(例えば、位置、向き、または動き)を、ユーザが環境においてHMDシステムを使用する間にリアルタイムで追跡してよい。方法700は、HMDの動作中継続し、上述したように、HMDシステムのコンポーネントの位置を連続的に追跡してよい。
【0069】
図8Aおよび
図8Bは、それぞれ、本開示の実装の1または複数において用いられてよい例示的な高感度角度検出器800の上面図および斜視図を示す。本例において、高感度角度検出器800は、クアドランドセル(「クアッドセル」)フォトダイオードを含む。これは、4つの分離したフォトダイオード活性領域または要素802A-802Dを含み、これらは、共通の基板804上で、小さい間隙によって分離されている。より少ないまたは多いセルを有するフォトダイオード検出器、高感度位置検出器などのような、他の種類の高感度角度検出器もまた用いられてよいことを理解されたい。
【0070】
非限定的な図示の例において、各要素802A-802Dの活性領域(例えば、アノード)は、単一の象限を照射する光スポットがその象限のみにあるものとして電気的に特徴づけることが可能となるように、個別に利用可能である。光スポットが高感度角度検出器800にわたって並進すると、光スポットのエネルギーは、隣接要素802A-802Dとの間で分散され、各要素への電気的寄与における差が、高感度角度検出器の中心に対する光スポットの相対位置を定義する。要素802A-802Dに対する相対的強度プロファイルは、光スポットの位置を決定するために用いられてよい。
【0071】
この簡略化された例において、高感度角度検出器800は、その中に開口808を有するカバー810を含み、光源812からの光814がそこを通過することを可能にする。示されるように、開口808を通過して光スポット806を形成する光814は、光814の角度、従って、高感度角度検出器800に対する光源812の角度を決定するように電気的に特徴づけられてよい。後述するように、本開示のシステムおよび方法は、複数の光源および高感度角度検出器を利用して、HMDシステムのコンポーネントの位置を決定してよい。
【0072】
本開示の高感度角度検出器は、クアッドセルフォトダイオード検出器、抵抗性シートを利用した高感度位置検出器(PSD)、より少ない(例えば、2個)またはより多くの(例えば、16個)独立した高感度素子を有するフォトダイオード検出器、または光源から発せられた光の到達角度を検出可能な任意の他の検出器を含む、任意の好適な種類の検出器の1または複数を含んでよいことを理解されたい。さらに、後述するように、少なくともいくつかの実装において、本開示の高感度角度検出器または光源は、フィルタ、レンズ、偏光板などのような様々な光学コンポーネントを利用して、本明細書で説明されるシステムおよび方法の機能性を向上させてよい。
【0073】
図9は、1つの非限定的な図示された実装による、光源および高感度角度検出器を用いてHMDシステムのコンポーネントの位置を決定するHMDシステムの環境900の簡略化された図である。本例において、HMDのような第1コンポーネント902は、複数の光源906(906a-906bの2つが示される)を含み、HMDシステムのコントローラのような第2コンポーネント904は、複数の高感度角度検出器908(908a-908bの2つが示される)を含む。高感度角度検出器908aおよび908bは、第2コンポーネント904上で、既知の距離d
1だけ互いから分離されており、光源906aおよび906bは、第1コンポーネント902上で、既知の距離d
2だけ互いから分離されている。第1および第2コンポーネントは、HMD、コントローラ、基地局、静止または移動式光源、静止または移動式高感度角度検出器などのような、HMDシステムの任意のコンポーネントであってよい。
【0074】
本例において、高感度角度検出器908aは、光が光源906aから角度910で到達し、光が光源906bから角度912で到達すると決定するように動作可能である。同様に、高感度角度検出器908bは、光が光源906bから角度914で到達し、光が光源906aから角度916で到達すると決定するように動作可能である。理解され得るように、到達角度910、912、914および916および光源906と検出器908との間の既知の幾何学的関係(例えば距離d1およびd2)を考慮すると、第1コンポーネント902と第2コンポーネント904との間の相対位置、向き、または動きを決定するための方法(例えば、三角測量)が用いられてよい。上述したように、1または複数ソルバーまたは機械学習方法が、高感度角度検出器からのセンサデータおよび/またはHMDシステムの光源に関する情報を示す光源データを用いて、コンポーネントの位置を決定するために用いられてよい。
【0075】
図10は、本開示の光源1002および高感度角度検出器1004の一例の例示1000である。光源1002および高感度角度検出器1004は、本明細書で説明される光源および高感度角度検出器のいずれかと同様または同一であってよく、本開示の実装のいずれかにおいて用いられてよい。図示された例において、光源1002は、光学サブシステム1006を含んでよく、高感度角度検出器1004は、光学サブシステム1008を含んでよい。光学サブシステム1006および1008は、互いに同じまたは互いとは異なっていてよく、各々が1または複数の光学コンポーネントを含んでよい。光学サブシステム1006および1008は、光源1002および高感度角度検出器1004と統合されていてよく、または、分離されたコンポーネントであってよい。光学コンポーネントの非限定的な例は、1または複数のレンズ、1または複数の偏光板、1または複数のフィルタ、1または複数の開口などを含む。少なくともいくつかの実装において、光源のサブセットは、1種類の光学サブシステムを含んでよく、光源の1または複数の他のサブセットは、別の種類の光学サブシステムを含んでよい。同様に、高感度角度検出器のサブセットは、1種類の光学サブシステムを含んでよく、高感度角度検出器の1または複数の他のサブセットは、別の種類の光学サブシステムを含んでよい。一例として、光学サブシステムは、可視光または他の種類の光を除外するフィルタを含んでよい。さらに、上述したように、光学サブシステムは、発せられた光の源に関して混乱を招くことなく、複数の光源が同時に照射することを可能にする、上述した様々な種類の多重化の1または複数を容易にするコンポーネントを含んでよい。
【0076】
前述の詳細な説明は、ブロック図、概略図、および例の使用を介して、デバイスおよび/または処理の様々な実装を示している。このようなブロック図、概略図、および例が1または複数の機能および/または動作を含む限りにおいて、当業者は、このようなブロック図、フローチャート、または例の範囲内における各機能および/または動作が広範囲のハードウェア、ソフトウェア、ファームウェア、または仮想的に、それらのいずれかの組み合わせにより個別に、および/または集合的に実装され得ることを理解するであろう。一実装において、本主題は、特定用途向け集積回路(ASIC)を介して実装されてよい。しかしながら、当業者は、本明細書に開示された実装が、1または複数のコンピュータ上で動作する1または複数のコンピュータプログラムとして(例えば、1または複数のコンピュータシステム上で動作する1または複数のプログラムとして)、1または複数のコントローラ(例えば、マイクロコントローラ)上で動作する1または複数のプログラムとして、1または複数のプロセッサ(例えば、マイクロプロセッサ)上で動作する1または複数のプログラムとして、ファームウェアとして、または、回路の設計および/またはソフトウェアまたはファームウェアのコードの書き込みが本開示に照らして当業者の技能の十分な範囲内である仮想的にそれらの任意の組み合わせとして、全体的または部分的に、標準的な集積回路で同等に実装できることを認識するであろう。
【0077】
当業者は、本明細書に記載された方法またはアルゴリズムセットの多くが、追加の動作を採用し得、いくつかの動作を省略し得、および/または指定とは異なる順序で動作を実行し得ることを認識するであろう。
【0078】
さらに、当業者は、本明細書で教示される機構が、様々な形式でプログラム製品として配布可能であり、例示的な実装は、実際に配布を実行するために用いられる信号担持媒体の具体的種類にかかわらず等しく適用されることを理解するであろう。信号担持媒体の例は、フロッピディスク、ハードディスクドライブ、CD-ROM、デジタルテープ、およびコンピュータメモリのような記録可能な種類の媒体を含むが、これらに限定されるものではない。
【0079】
上述した様々な実装が、組み合わせられてさらなる実装を提供してよい。本明細書における特定の教示および定義と矛盾しない範囲で、2020年1月24日に出願された米国特許出願第16/752,478号を含む、本明細書で言及されている全ての米国特許、米国特許出願公報、米国特許出願、外国特許、外国特許出願、および、非特許文献の全体が、参照により本明細書に組み込まれる。必要に応じて、実装の態様を修正して、様々な特許、出願、および公報のシステム、回路、および概念を採用し、さらに別の実装を提供することができる。
【0080】
上記の詳細な説明に照らして、これらおよび他の変更を実装に加えることができる。概して、以下の特許請求の範囲において使用される用語は、特許請求の範囲を明細書および特許請求の範囲に開示された特定の実装に限定するものと解釈されるべきではなく、このような特許請求の範囲が権利を付与される均等物の全範囲に沿って可能な実装の全てを含むものと解釈されるべきである。従って、特許請求の範囲は、本開示によって限定されるものではない。
【国際調査報告】