(57)【要約】  ヘッドマウントディスプレイ（ＨＭＤ）が、局所エリアのイメージおよび／またはビデオをキャプチャするように構成される。ＨＭＤは、撮像アセンブリと、コントローラとを含む。撮像アセンブリは、ＨＭＤでの異なるロケーションに位置決めされ、ＨＭＤを取り巻く局所エリアの異なる部分のイメージをキャプチャするように向きを定められた複数のカメラを含む。コントローラは、イメージ情報を使用して各カメラに関する撮像命令を生成する。撮像命令は、各カメラに関する露出時間のそれぞれの中点を、キャプチャされたイメージのそれぞれに関して同じ時間値で生じさせる。カメラは、撮像命令に従って局所エリアのイメージをキャプチャする。コントローラは、キャプチャされたイメージを使用して局所エリア内でのＨＭＤのロケーションを決定し、局所エリアの深度および露出設定のマッピング関数を表すモデルを更新する。【選択図】図１
2020537383.tif 000002
【特許請求の範囲】
【請求項１】
ヘッドマウントディスプレイ（ＨＭＤ）での異なるロケーションに位置決めされ、前記ＨＭＤを取り巻く局所エリアの異なる部分のイメージをキャプチャするように向きを定められた複数のカメラを含む撮像アセンブリであって、前記複数のカメラがそれぞれ、隣接するカメラとの重畳視野を有し、前記撮像アセンブリが、
前記複数のカメラのそれぞれに関して露出設定を生成すること、および
撮像命令に従って前記局所エリアのイメージをキャプチャすること
を行うように構成された、撮像アセンブリと、
前記露出設定を使用して撮像命令を生成することであって、前記撮像命令が、前記複数のカメラのそれぞれに関する露出時間のそれぞれの中点を、前記キャプチャされたイメージのそれぞれに関して同じ時間値で生じさせる、前記露出設定を使用して撮像命令を生成すること、
前記撮像命令を前記撮像アセンブリに提供すること、および
前記キャプチャされたイメージを使用して前記局所エリア内でのＨＭＤのロケーションを決定すること
を行うように構成されたコントローラと、
を備えるヘッドマウントディスプレイ（ＨＭＤ）。
【請求項２】
前記撮像アセンブリが４つのカメラを備え、各カメラが１２０〜１８０度の範囲内の視野を有する、請求項１に記載のＨＭＤ。
【請求項３】
第１のカメラと第２のカメラとが実質的に平行な向きを有し、前記第１のカメラおよび前記第２のカメラの前記視野が、前記局所エリアの一部分の立体視撮像を提供する、請求項２に記載のＨＭＤ。
【請求項４】
前記第１のカメラと前記第２のカメラとが前記ＨＭＤの底部に位置され、前記第１のカメラと前記第２のカメラとの前記視野が、静止して前記ＨＭＤを着用しているユーザをキャプチャする、請求項３に記載のＨＭＤ。
【請求項５】
前記第３のカメラと前記第４のカメラとが異なる向きを有し、前記第３のカメラと前記第４のカメラとの前記視野の一部分のみが重畳する、請求項３に記載のＨＭＤ。
【請求項６】
前記撮像命令が、前記複数のカメラのそれぞれに関するプログラムされた時間遅延を含み、前記時間遅延が、基準時点と前記カメラに関する露出の開始との間の期間であり、前記基準時点が、前記ＨＭＤによって検出される同期パルスによって制御される、請求項１に記載のＨＭＤ。
【請求項７】
前記同期パルスが、周辺デバイスによって放出される光のパルスである、請求項６に記載のＨＭＤ。
【請求項８】
前記局所エリア内での前記ＨＭＤのロケーションが変化するときに、前記複数のカメラのそれぞれに関する前記露出設定が変わり、前記コントローラが、前記変更された露出設定に基づいて、更新された撮像命令を生成する、請求項１に記載のＨＭＤ。
【請求項９】
前記コントローラが、前記複数のカメラのそれぞれの前記露出設定と、前記キャプチャされたイメージからの深度情報とを使用してモデルを更新し、前記モデルが、前記局所エリアのマッピング関数を表す、請求項１に記載のＨＭＤ。
【請求項１０】
前記モデルと、前記ＨＭＤ内の慣性測定ユニットからの情報とを使用して、前記コントローラが、
前記慣性測定ユニットからの情報を使用して、前記局所エリア内での前記ＨＭＤの将来のロケーションを予測すること、および
前記予測された将来のロケーションと前記モデルとに基づいて、前記複数のカメラのそれぞれに関する露出設定を決定すること
を行うようにさらに構成された、請求項９に記載のＨＭＤ。
【請求項１１】
前記コントローラが、
前記複数のカメラのうちの１つのカメラの視野内にどちらもある、前記局所エリア内の高優先度の領域と前記局所エリア内の低優先度の領域とを識別することであって、前記高優先度エリアが、第１の露出値に関連付けられ、前記低優先度エリアが、異なる露出値に関連付けられる、前記局所エリア内の高優先度の領域と前記局所エリア内の低優先度の領域とを識別すること、および
前記露出設定が前記第１の露出値に関する露出を行うように、前記高優先度エリアのための前記カメラに関する露出設定を決定すること
を行うように構成された、請求項１に記載のＨＭＤ。
【請求項１２】
前記コントローラが、
前記複数のカメラのそれぞれの露出長さの中点を決定すること、
各カメラに関する前記決定された中点を同じ時点に合わせること、および
各カメラに関する時間遅延を決定することを行うようにさらに構成され、前記時間遅延が、基準時点と前記カメラの前記露出長さの開始との間の期間であり、各カメラに、各カメラの前記露出長さの中点が同じ時点で生じるようにイメージキャプチャを開始させる、
請求項１に記載のＨＭＤ。
【請求項１３】
ヘッドマウントディスプレイ（ＨＭＤ）での撮像アセンブリの複数のカメラに関するイメージ情報を生成することであって、前記複数のカメラのそれぞれが、前記ＨＭＤでの異なるロケーションに位置決めされ、前記ＨＭＤを取り巻く局所エリアの異なる部分のイメージをキャプチャするように向きを定められ、前記複数のカメラがそれぞれ、隣接するカメラとの重畳視野を有する、ヘッドマウントディスプレイ（ＨＭＤ）での撮像アセンブリの複数のカメラに関するイメージ情報を生成すること、
前記複数のカメラのそれぞれに関する前記イメージ情報に基づいてモデルを更新することであって、前記モデルが、前記局所エリア内での前記ＨＭＤのロケーションに基づく前記局所エリアのマッピング関数を表す、前記複数のカメラのそれぞれに関する前記イメージ情報に基づいてモデルを更新すること、
前記撮像アセンブリによってキャプチャされたイメージを使用して、前記局所エリア内の前記ＨＭＤのロケーションを決定すること、
前記ＨＭＤの前記決定されたロケーションを前記モデルに入力することによって、前記複数のカメラのそれぞれに関する露出設定を決定すること、
前記決定された露出設定に基づいて、前記複数のカメラのそれぞれに関する撮像命令を生成すること、
前記撮像アセンブリに前記撮像命令を提供すること、
前記撮像命令に従って前記局所エリアの複数のイメージをキャプチャすること、および
前記複数のキャプチャされたイメージを使用して前記ＨＭＤの前記ロケーションを更新すること、
を含む方法。
【請求項１４】
前記複数のカメラのそれぞれに関する撮像命令を生成することが、
前記複数のカメラのそれぞれの露出長さの中点を決定すること、
各カメラに関する前記決定された中点を同じ時点に中心合わせすること、および
各カメラに関する時間遅延を決定することをさらに含み、前記時間遅延が、基準時点と前記カメラの前記露出長さの開始との間の期間であり、各カメラに、各カメラの前記露出長さの中点が同じ時点で生じるようにイメージキャプチャを開始させる、
請求項１３に記載の方法。
【請求項１５】
前記基準時点が、前記ＨＭＤによって検出される同期パルスによって制御される、請求項１４に記載の方法。
【請求項１６】
前記ＨＭＤの動きに応答して慣性測定ユニット（ＩＭＵ）を使用して測定信号を生成すること
をさらに含む、請求項１３に記載の方法。
【請求項１７】
前記ＩＭＵおよび前記モデルからの情報を使用して、前記局所エリア内での前記ＨＭＤの将来のロケーションを予測すること
をさらに含む、請求項１６に記載の方法。
【請求項１８】
前記予測された将来のロケーションに基づいて、前記複数のカメラのうちの１つのカメラに関する露出設定を決定すること
をさらに含む、請求項１７に記載の方法。
【請求項１９】
前記複数のカメラのうちの１つのカメラの視野内にどちらもある、前記局所エリア内の高優先度の領域と前記局所エリア内の低優先度の領域とを識別することであって、前記高優先度エリアが、第１の露出値に関連付けられ、前記低優先度エリアが、異なる露出値に関連付けられる、前記局所エリア内の高優先度の領域と前記局所エリア内の低優先度の領域とを識別すること、および
前記露出設定が前記第１の露出値に関する露出を行うように、前記高優先度エリアのための前記カメラに関する露出設定を決定すること
をさらに含む、請求項１３に記載の方法。
【請求項２０】
１つまたは複数のプロセッサによって実行されるときに、１つまたは複数のプロセッサに、
ヘッドマウントディスプレイ（ＨＭＤ）での撮像アセンブリの複数のカメラに関するイメージ情報を生成することであって、前記複数のカメラのそれぞれが、前記ＨＭＤでの異なるロケーションに位置決めされ、前記ＨＭＤを取り巻く局所エリアの異なる部分のイメージをキャプチャするように向きを定められ、前記複数のカメラがそれぞれ、隣接するカメラとの重畳視野を有する、ＨＭＤでの撮像アセンブリの複数のカメラに関するイメージ情報を生成すること、
前記複数のカメラのそれぞれに関する前記イメージ情報に基づいてモデルを更新することであって、前記モデルが、前記局所エリア内での前記ＨＭＤのロケーションに基づく前記局所エリアのマッピング関数を表す、前記複数のカメラのそれぞれに関する前記イメージ情報に基づいてモデルを更新すること、
前記撮像アセンブリによってキャプチャされたイメージを使用して、前記局所エリア内の前記ＨＭＤのロケーションを決定すること、
前記ＨＭＤの前記決定されたロケーションを前記モデルに入力することによって、前記複数のカメラのそれぞれに関する露出設定を決定すること、
前記決定された露出設定に基づいて、前記複数のカメラのそれぞれに関する撮像命令を生成すること、
前記撮像アセンブリに前記撮像命令を提供すること、
前記撮像命令に従って前記局所エリアの複数のイメージをキャプチャすること、および
前記複数のキャプチャされたイメージを使用して前記ＨＭＤの前記ロケーションを更新すること
を含む動作を実施させる命令を格納する非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
背景
本開示は、一般にヘッドマウントディスプレイに関し、詳細には、ヘッドマウントディスプレイ追跡システムに関する。
【背景技術】
【０００２】
仮想現実（ＶＲ）システムは、ユーザが着用しているヘッドセットのポジションおよび移動を決定するための外部デバイスを含むことが多い。それに従って、そのようなシステムに関する動作は、外部デバイスを含む特定の領域（例えば、部屋）に制限される。さらに、そのような外部デバイスは、一般に、何らかの種類のアクティブな照明源（例えば、構造化された光）を使用してユーザのポジションを決定し、これは、システムに関する複雑さおよび電力要件を高める。
【発明の概要】
【０００３】
概要
ヘッドマウントディスプレイ（ＨＭＤ）は、少なくとも一部がステレオでの局所エリアのイメージおよび／またはビデオをキャプチャするように構成される。ＨＭＤは、撮像アセンブリと、コントローラとを含む。
【０００４】
撮像アセンブリは、ＨＭＤでの異なるロケーションに位置決めされ、ＨＭＤを取り巻く局所エリアの異なる部分のイメージをキャプチャするように向きを定められた複数のカメラを含む。複数のカメラはそれぞれ、隣接するカメラとの重畳視野を有する。複数のカメラでの各カメラは、各カメラに関する撮像命令を生成するためにコントローラによって使用される露出設定を生成する。各カメラは、撮像命令に従って局所エリアのイメージをキャプチャする。
【０００５】
コントローラは、対応する露出設定を使用して各カメラに関する撮像命令を生成するように構成される。撮像命令は、複数のカメラのそれぞれに関する露出時間のそれぞれの中点を、キャプチャされたイメージのそれぞれに関して同じ時間値で生じさせる。コントローラは、カメラが局所エリアのイメージをキャプチャすることができるように、撮像命令を撮像アセンブリに提供する。コントローラは、キャプチャされたイメージを使用して、局所エリア内でのＨＭＤのロケーションを決定する。
【図面の簡単な説明】
【０００６】
【図１】一実施形態による、ヘッドマウントディスプレイ（ＨＭＤ）を示す図である。
【図２Ａ】一実施形態による、ＨＭＤの正面図である。
【図２Ｂ】一実施形態による、ＨＭＤの側面図である。
【図３】一実施形態による、ＨＭＤシステムの実施形態を示すブロック図である。
【図４】一実施形態による、ＨＭＤでの複数のカメラに関する視野を示す図である。
【図５】一実施形態による、ＨＭＤでの複数のカメラのイメージキャプチャを同期させるための方法を示す図である。
【図６】一実施形態による、局所エリア内でのＨＭＤのロケーションを決定するプロセスを示す流れ図である。
【発明を実施するための形態】
【０００７】
図は、例証のためだけに本開示の実施形態を描写する。本明細書において示される構造および方法の代替実施形態は、本明細書において説明される本開示の原理またはうたわれる利益から逸脱することなく用いられることが可能であるということを当業者は以下の説明から容易に認識するであろう。
詳細な説明
【０００８】
本発明の実施形態は、人工現実システムを含むことがあり、または人工現実システムと併せて実装されることがある。人工現実は、ユーザに提示する前に何らかの様式で調節されている一形態の現実であり、例えば、仮想現実（ＶＲ）、拡張現実（ＡＲ）、複合現実（ＭＲ）、ハイブリッド現実、またはそれらの何らかの組合せおよび／もしくは導出形態を含むことがある。人工現実コンテンツは、完全に生成されたコンテンツ、または生成されたコンテンツとキャプチャされた（例えば実世界の）コンテンツとの組合せを含むことがある。人工現実コンテンツは、ビデオ、オーディオ、触覚フィードバック、またはそれらの何らかの組合せを含むことがあり、それらの任意のものが、単一のチャネルまたは複数のチャネル（観察者に対して３次元効果を生み出すステレオビデオなど）で提示されることがある。追加として、いくつかの実施形態では、人工現実は、例えば人工現実でのコンテンツを作成するために使用される、および／または他の形で人工現実において使用される（例えば人工現実において活動を実施する）アプリケーション、製品、アクセサリ、サービス、またはそれらの何らかの組合せにも関連付けられることがある。人工現実コンテンツを提供する人工現実システムは、様々なプラットフォームに実装されることがあり、ホストコンピュータシステムに接続されたヘッドマウントディスプレイ（ＨＭＤ）、スタンドアローンＨＭＤ、モバイルデバイスもしくはコンピューティングシステム、または１人もしくは複数人の観察者に人工現実コンテンツを提供することが可能な任意の他のハードウェアプラットフォームを含む。
【０００９】
図１は、一実施形態によるヘッドマウントディスプレイ（ＨＭＤ）１００を示す。ＨＭＤ１００は、例えば人工現実システムの一部であり得る。ＨＭＤ１００は、前部剛体１０５、バンド１１０、およびＨＭＤコントローラ（図示せず）を含む。図１の実施形態では、ＨＭＤ１００は撮像アセンブリを含み、撮像アセンブリは、カメラ１１５、カメラ１２０、カメラ１２５、およびカメラ１３０を含み、これらのカメラは前部剛体１０５に位置決めされる。
【００１０】
前部剛体１０５は、１つまたは複数の電子ディスプレイ要素（図１には図示せず）と、１つまたは複数の一体型視標追跡システム（図１には図示せず）と、慣性測定ユニット（ＩＭＵ）１３５と、１つまたは複数のポジションセンサ１４０とを含む。図１によって示されている実施形態では、ポジションセンサ１４０は、ＩＭＵ１３５内に位置され、ＩＭＵ１３５もポジションセンサ１４０もＨＭＤ１００のユーザには見えない。ＩＭＵ１３５は、ポジションセンサ１４０のうちの１つまたは複数から受信された測定信号に基づいて高速較正データを生成する電子デバイスである。ポジションセンサ１４０は、ＨＭＤ１００の動きに応答して１つまたは複数の測定信号を生成する。ポジションセンサ１４０の例としては、１つもしくは複数の加速度計、１つもしくは複数のジャイロスコープ、１つもしくは複数の磁力計、動きを検出する別の適切なタイプのセンサ、ＩＭＵ１３５の誤差修正に使用されるタイプのセンサ、またはそれらの何らかの組合せが挙げられる。ポジションセンサ１４０は、ＩＭＵ１３５の外部に、ＩＭＵ１３５の内部に、またはそれらの何らかの組合せで位置されることがある。
【００１１】
バンド１１０は、ＨＭＤ１００をユーザの頭に固定し、前部剛体１０５をユーザの顔に位置決めする。図１の実施形態では、バンド１１０は、ユーザの頭の後部に巻き付くことによってＨＭＤ１００をユーザの頭に固定する。バンド１１０は、ナイロン、ポリエステル、プロピレン、何らかの他の同様の材料、またはそれらの何らかの組合せなど、耐久性のある布地から形成することができる。いくつかの実施形態では、バンド１１０は、バンド１１０がユーザの頭に合わせて伸張または適応できるようにする弾性（例えば、弾性ナイロン）を有することがある。バンド１１０は、ＨＭＤ１００を着用するユーザにさらなる快適性または安定性を提供することができる様々な構成を有することがある。いくつかの実施形態では、冷却ファンおよび／または電源が、バンド１１０に沿って取り付けられることがある。
【００１２】
撮像アセンブリは、ＨＭＤ１００を取り巻く局所エリアからキャプチャされたイメージおよび／またはオーディオ情報を使用してイメージ情報を生成する。局所エリアは、ＨＭＤ１００を取り巻く環境である。例えば、局所エリアは、ＨＭＤ１００を着用したユーザが中にいる部屋であり得る。または、ユーザが屋外にいることがあり、局所エリアは、ＨＭＤ１００に見える屋外エリアである。イメージアセンブリは、局所エリアの一部分をキャプチャするように位置決めされたカメラ１１５、１２０、１２５、１３０を備える。イメージ情報は、例えば、１つまたは複数のイメージ、オーディオ情報（例えば、１つまたは複数のマイクロフォンによってキャプチャされた音）、ビデオ情報、メタデータ、またはそれらの何らかの組合せを含むことがある。イメージ情報は、局所エリア内の１つまたは複数のオブジェクトの深度情報、および／またはカメラ１１５、１２０、１２５、１３０によって検出された光の量を含むことがある。図１の実施形態では、撮像アセンブリは、カメラ１１５、１２０、１２５、１３０を含む。
【００１３】
カメラ１１５、１２０、１２５、１３０は、局所エリアの異なる部分のイメージおよび／またはビデオをキャプチャするように構成されている。各カメラ１１５、１２０、１２５、１３０は、センサ（図示せず）、レンズ、およびカメラコントローラ（図示せず）を含む。センサは、感光性ピクセルのアレイ（例えば、相補型金属酸化物、電荷結合素子）を使用して光を取り込む電気デバイスであり、各ピクセルが光を電子信号に変換する。センサは、解像度、ピクセルサイズおよび感度、光感度、シャッタのタイプ、信号処理のタイプなど、様々な特徴を有することができる。レンズは、センサへの光の合焦を容易にするカメラの１つまたは複数の光学素子である。レンズは、固定または可変（焦点や絞りなど）であり得る機能を有し、様々な焦点距離を有することがあり、光学コーティングで覆われていることがある。いくつかの実施形態では、カメラ１１５、１２０、１２５、１３０のうちの１つまたは複数は、オーディオ情報をキャプチャするためのマイクロフォンを有することがある。マイクロフォンはカメラ内に位置させることができ、またはカメラの外部に位置させてもよい。
【００１４】
各カメラ１１５、１２０、１２５、１３０は、カメラによって観察可能な局所エリア内の領域を表す視野を有する。図１の実施形態では、各カメラ１１５、１２０、１２５、１３０の視野は、５０〜１８０度の範囲内であり得る。約５０〜１２０度の範囲内の視野は、一般に広視野と呼ばれ、１２０度よりも大きい視野は、一般に魚眼視野と呼ばれる。図１の実施形態では、各カメラ１１５、１２０、１２５、１３０のレンズは、同程度の視野を有することも、異なる程度の視野を有することもある。例えば、カメラ１１５、１２０、１２５、１３０は、１２０〜１８０度の範囲内の視野を有することがある。図１の実施形態では、カメラ１１５、１２０、１２５、１３０はそれぞれ、１５０度の視野を有する。例えば１８０度の視野ではなく１５０度の視野を有することにより、各カメラが、前部剛体１０５の表面と面一に位置し、または前部剛体１０５に嵌まり込み、これは、カメラ１１５、１２０、１２５、１３０を損傷から保護する助けとなり得る。様々な視野が、カメラ１１５、１２０、１２５、１３０の間の異なるタイプのカバレッジ（例えば、単眼領域、重畳領域、立体視領域など）を提供することがある。
【００１５】
各カメラの視野に加えて、各カメラ１１５、１２０、１２５、１３０のポジションおよび向きにより、カメラ間のカバレッジのタイプを制御できるようになる。カバレッジの所望のタイプは、キャプチャされたイメージから収集される所望の情報のタイプに基づくことがある。図１の実施形態では、カメラ１１５、１２０は、前部剛体１０５の上隅に位置決めされ、前部剛体１０５の側部および上部に向かって外向きおよび上向きになるように向きを定められる。この構成では、カメラ１１５、１２０は別個の視野を有し、カバレッジの単眼領域を提供する。カメラ１２５、１３０は、前部剛体１０５の底縁部に沿って位置決めされ、下向きに、互いに平行（またはほぼ平行）に向きを定められる。この構成では、カメラ１２５、１３０は、重畳視野を有し、カバレッジの立体視領域を提供する。カメラ１１５、１２０、１２５、１３０は、カメラの視野間でカバレッジの重畳領域を有することがあり、これにより、各視野からの詳細を引き渡すことが可能になり、カメラ１１５、１２０、１２５、１３０からのフレームを繋ぎ合わせることができるようになる。カメラ１１５、１２０、１２５、１３０の構成を、図４に関してより詳細に論じる。他の実施形態では、カメラ１１５、１２０、１２５、１３０の視野、ポジション、および向きは異なっていてよく、異なるタイプのカバレッジを提供する。
【００１６】
各カメラ１１５、１２０、１２５、１３０のカメラコントローラは、カメラに関する露出設定を決定する。カメラの露出設定は、カメラによって取り込まれた光がセンサによってどのように収集されるかを決定する。各カメラ１１５、１２０、１２５、１３０が、センサに入射する光の量を検出し、検出された光に基づいて、カメラコントローラが、適切な露出設定を決定する。露出設定は、例えば、絞りサイズ、シャッタスピード、ゲイン、またはそれらの何らかの組合せを含むことがある。絞りサイズは、センサに到達する光の量を制御する。シャッタスピードは、センサが光に露出される時間の長さ（すなわち露出長さ）である。ゲインは、光に対するセンサの感度である。図１の実施形態では、絞りは固定サイズであり、ゲインおよび露出は可変である。検出された光の量を使用して、各カメラ用のカメラコントローラは、各カメラに関する絞りサイズ、シャッタスピード、およびゲインの設定を決定する。
【００１７】
図１の実施形態では、各カメラコントローラは独立して機能し、それにより、各コントローラは、対応するカメラ１１５、１２０、１２５、１３０について、他のカメラとは異なる露出設定を決定することができる。例えば、センサをより多くの光またはより少ない光に露出するように、各カメラに関するシャッタスピードを変えることができる。この構成により、第１のカメラが第２のカメラよりもはるかに長い露出を有することが可能になり、これにより、撮像アセンブリが、局所エリア内の様々な範囲の光をキャプチャし、局所エリアの様々な部分を露出して、局所エリアから所望の情報を収集することが可能になる。一例として、部屋の局所エリアは、よく照らされている部屋の第１の側（例えば、大量の光を部屋に通す窓）を有することがあり、部屋の第２の側は、影で覆われている。グローバル露出設定を有する撮像アセンブリは、部屋の第１の側または第２の側には適切であるが、部屋の他方の側では撮像アセンブリが露出過剰または露出不足になり得る露出設定を決定することがあり、それにより、撮像アセンブリが局所エリア全体の所望の情報を有するイメージをキャプチャするのを妨げる。それぞれのカメラによって観察される局所エリアの領域に関して適切に決定される異なる露出設定を有するカメラ１１５、１２０、１２５、１３０を備えることによって、撮像アセンブリは、望まれる局所エリア内のオブジェクトをキャプチャする。いくつかの実施形態では、ＨＭＤ１００は、各カメラ１１５、１２０、１３５、１３０に関する個別の露出設定を決定することが可能な単一のカメラコントローラを含むことがある。
【００１８】
さらに、各カメラコントローラは、そのそれぞれのカメラ１１５、１２０、１２５、１３０の視野内の局所エリアの特定の部分を選択的に露出するように構成されることがある。カメラコントローラは、部屋の様々な部分を高優先度または低優先度として識別し、部屋の様々な部分をその優先度に従って選択的に露出する。局所エリアの高優先度エリアは、ＨＭＤ１００の近傍にある（例えば、ＨＭＤから１０フィート以内の）局所エリアの一部分として決定されることがあり、局所エリアの残りの部分は低優先度エリアであり得る。いくつかの実施形態では、局所エリアの一部分の優先度は、局所エリア内の光レベル間の定義されたシフトによって決定されることがある。窓のある部屋の例を続けると、カメラは、部屋の第１の側および窓をその視野に含むことがあり、部屋の中と窓の外とで異なるレベルの光を検出する。検出された光のレベルに基づいて、カメラコントローラは、部屋の各部分を高優先度または低優先度として識別する。例えば、カメラコントローラは、部屋内のオブジェクトを高優先度エリアとして識別し、窓の外のオブジェクトを低優先度エリアとして識別して、低優先度エリアではなく高優先度エリアから所望の情報を収集することができる。カメラコントローラは、第１の露出値を高優先エリアに関連付け、別の露出値を低優先領域に関連付けることができる。露出値は、カメラのシャッタスピードとＦ値との組合せ（すなわち、焦点距離と絞りサイズとの比）を表し、同じ露出を生成する全ての組合せが同じ露出値を有するようにする。カメラコントローラは、高優先度エリアのためのカメラに関する露出設定を決定して、それらの露出設定が第１の露出値に関する露出を行うようにする。カメラ１１５、１２０、１２５、１３０のうちの１つまたは複数は、露出値に基づく露出設定を有することができる。
【００１９】
ＨＭＤ１００のコントローラは、各カメラから受信された露出設定に基づいて、各カメラ１１５、１２０、１２５、１３０に関する撮像命令を生成する。撮像命令は、各カメラ１１５、１２０、１２５、１３０に関する露出設定（例えば、露出長さ、ゲイン、絞りなど）を含むことがある。さらに、撮像命令は、各カメラ１１５、１２０、１２５、１３０に関する同期情報を含むことがある。ＨＭＤコントローラは、カメラ１１５、１２０、１２５、１３０の露出設定を同期させる同期情報を生成し、各カメラ１１５、１２０、１２５、１３０がその個別の露出設定を維持できるようにする。この構成により、カメラ１１５、１２０、１２５、１３０が同じフレームのイメージをキャプチャし、キャプチャされた各イメージが、局所エリア内の情報を多く含むオブジェクトを含むことを保証することができるようになる。図１の実施形態では、同期情報は、ＨＭＤコントローラによって決定された中心時点と、各カメラ１１５、１２０、１２５、１３０に関する時間遅延とを含む。
【００２０】
ＨＭＤコントローラは、各カメラ１１５、１２０、１２５、１３０の露出長さの中心を中心時点に合わせることによって、各カメラ１１５、１２０、１２５、１３０の露出設定を同期させる。言い換えると、各露出長さの中点が同じ時点に位置合わせされる。この構成は、カメラ１１５、１２０、１２５、１３０の様々な露出長さに対応し、各カメラによって同じフレームがキャプチャされることを保証する。露出の中心を同じ時点に合わせるために、ＨＭＤコントローラ１００は、各カメラが基準時点に対して特定の期間後にイメージキャプチャを開始できるようにする各カメラ１１５、１２０、１２５、１３０に関する時間遅延を計算する。ＨＭＤコントローラ１００は、カメラの露出長さに従って、各カメラ１１５、１２０、１２５、１３０に関して適切な時間遅延を決定する。図１の実施形態では、時間遅延に関する基準点は、ＨＭＤ１００によって検出される同期パルスであり得る。同期パルスは、ユーザによって保持されるコントローラなどの外部デバイス、またはＨＭＤシステムのコンソールによって送信されることがある。ＨＭＤコントローラは、露出設定および同期情報を含むことがある撮像命令を、イメージキャプチャのために撮像アセンブリに送信する。カメラ１１５、１２０、１２５、１３０の露出設定の同期は、図５に関してさらに詳細に論じる。いくつかの実施形態では、カメラコントローラの機能は、ＨＭＤコントローラによって統合および実施されることがある。
【００２１】
ＨＭＤコントローラは、撮像アセンブリからの１つまたは複数のキャプチャされたイメージに基づいて、局所エリア内の１つまたは複数のオブジェクトに関する深度情報を決定するように構成されている。深度情報は、オブジェクトのポジションに関する受信された情報を使用してオブジェクトまでの距離を測定することによって決定されることがある。図１の実施形態では、ＨＭＤコントローラは、カメラ１１５、１２０、１２５、１３０からのカバレッジの立体視領域を使用してオブジェクトの深度情報を決定する。視野の重畳領域内のオブジェクトは複数のカメラによって観察され、これにより各オブジェクトの複数の視点が提供される。異なる視点間のオブジェクトのポジションの相対的な差を計算することによって、ＨＭＤコントローラは、撮像アセンブリに対するオブジェクトの距離を決定する。いくつかの実施形態では、深度情報は、信号（例えば、構造化された光、無線信号、超音波など）をオブジェクトに送信することによってオブジェクトまでの距離を測定することによって決定されることがある。
【００２２】
ＨＭＤコントローラは、ＨＭＤ１００の局所エリアモデルを更新するようにさらに構成されている。局所エリアモデルは、ＨＭＤ１００を取り巻く環境の深度情報、露出設定、またはそれらの何らかの組合せを含む。図１の実施形態では、局所エリアモデルは、環境内のＨＭＤ１００のロケーションに基づく、ＨＭＤ１００の環境の深度情報および露出設定のマッピング関数を表す。環境内のＨＭＤ１００のロケーションは、撮像アセンブリのキャプチャされたイメージから収集される深度情報から決定される。局所エリアモデルは、環境内のカメラの様々なポジションについて、各カメラ１１５、１２０、１２５、１３０に関する露出設定を提供し、環境内でＨＭＤ１００のロケーションおよび向きが変化するときに露出設定を調節できるようにする。局所エリアモデル、およびＩＭＵ１３５からのポジション情報（例えば、速度ベクトル、加速度ベクトルなど）を使用して、ＨＭＤコントローラは、ＨＭＤ１００の将来のロケーションおよび向きを予測する。その後、局所エリアモデルを使用して、ＨＭＤコントローラは、ＨＭＤ１００の予測される将来のロケーションおよび向きに関する適切な露出設定を決定する。次いで、予測されたロケーションおよび向き、ならびに決定された露出設定に基づいて、ＨＭＤコントローラは、各カメラ１１５、１２０、１２５、１３０に関する撮像命令を生成する。撮像命令は、各カメラ１１５、１２０、１２５、１３０がイメージをキャプチャする時点および露出設定を指定する。この構成では、ＨＭＤ１００は、各カメラの露出設定およびＨＭＤ１００のロケーションを決定するために、各カメラ１１５、１２０、１２５、１３０から継続的に情報を取得する必要はない。環境内でＨＭＤ１００のロケーションおよび向きが変化するとき、ＨＭＤコントローラは、撮像アセンブリからの深度情報および露出設定を使用して局所エリアモデルを更新することができる。いくつかの実施形態では、ＨＭＤコントローラは、深度モデルおよび別個の露出モデルを更新することがある。追加として、いくつかの実施形態では、図１に示される構成要素のうちの１つまたは複数に関連して述べた機能を、図１に関連して述べたのとは異なる手法で、構成要素間で分散させることができる。例えば、ＨＭＤコントローラによって実施される機能は、カメラコントローラによって実施されてもよく、または逆も同様である。
【００２３】
図２Ａは、一実施形態によるＨＭＤ１００の正面図を示す。図２Ａに示されるように、ＨＭＤ１００は、ＨＭＤ１００の前面の縁部に沿って位置されたカメラ１１５、１２０、１２５、１３０を含む。各カメラ１１５、１２０、１２５、１３０は、それぞれのポケット内に埋め込まれており、これは、カメラへの損傷を防ぐ助けとなり得る。前述したように、カメラ１１５、１２０は、前部剛体１０５の上隅に位置決めされ、前部剛体１０５の側部および上部に向けて外向きおよび上向きであり、カメラ１２５、１３０は、前部剛体１０５の下縁部に沿って位置決めされ、下向きに、互いに平行（またはほぼ平行）に向きを定められている。この構成では、カメラ１１５、１２０、１２５、１３０は、ＨＭＤ１００を取り巻く局所環境の大部分のイメージをキャプチャする。他の実施形態では、カメラの数、ポジション、および向きは異なっていてよく、異なるタイプのカバレッジを提供する。
【００２４】
図２Ｂは、一実施形態によるＨＭＤ１００の側面図を示す。図２Ｂに示されるように、バンド１１０は、ＨＭＤ１００の側部に取り付けられ、ユーザの頭に巻き付いて、ＨＭＤ１００をユーザの顔の前に固定するように構成されている。いくつかの実施形態では、ＨＭＤ１００は、ユーザが着用している間、ＨＭＤ１００のポジションをさらに安定させるためにユーザの頭の上に配置されるように構成されたストラップを含むことがある。さらに、図２Ｂは、それぞれの座標系２０５、２１０に対するカメラ１２０、１２５の向きを示す。図２Ｂに示されるように、カメラ１２０、１２５は、それらのそれぞれの視野が重畳しているだけでなく、局所エリアの大きい領域をカバーするように位置決めされている。
【００２５】
図３は、一実施形態による、ＨＭＤシステム３００の実施形態を示すブロック図である。ＨＭＤシステム３００は、人工現実システム環境で動作することができる。図３に示されているＨＭＤシステム３００は、周辺デバイス３１０に関連するＨＭＤ３０５を備える。図３は、１つのＨＭＤ３０５を含む例示的なＨＭＤシステム３００を示すが、いくつかの実施形態では、任意の数のこれらの構成要素をＨＭＤシステム３００に含めることができる。例えば、それぞれの周辺デバイス３１０とそれぞれ通信する複数のＨＭＤ３０５が存在し得る。代替構成では、異なるおよび／または追加の構成要素がＨＭＤシステム３００に含まれることがある。追加として、いくつかの実施形態では、図３に示される構成要素のうちの１つまたは複数に関連して述べた機能を、図３に関連して述べたのとは異なる手法で、構成要素間で分散させることができる。
【００２６】
ＨＭＤ３０５は、コンピュータで生成された要素（例えば、２次元（２Ｄ）または３次元（３Ｄ）イメージ、２Ｄまたは３Ｄビデオ、サウンドなど）を含む物理的な現実世界環境の仮想および／または拡張視野を含むコンテンツをユーザに提示するヘッドマウントディスプレイである。いくつかの実施形態では、提示されるコンテンツは、ＨＭＤ３０５からオーディオ情報を受信し、そのオーディオ情報に基づいてオーディオデータを提示する外部デバイス（例えば、スピーカおよび／またはヘッドフォン）を介して提示されるオーディオを含む。ＨＭＤ３０５は、１つまたは複数の剛体を備えることがあり、これらの剛体は、堅固に、または非堅固に互いに連結することができる。剛体間の堅固な連結は、連結された剛体を単一の剛体エンティティとして機能させる。対照的に、剛体間の非堅固な連結は、剛体が互いに対して移動できるようにする。ＨＭＤ３０５の一実施形態は、図１に関連して上述したＨＭＤ１００である。
【００２７】
周辺デバイス３１０は、ユーザがＨＭＤ３０５にアクションリクエストを送信し、ＨＭＤ３０５からの応答を受信するために使用するデバイスである。アクションリクエストは、特定のアクションを実施するためのリクエストである。例えば、アクションリクエストは、イメージもしくはビデオデータのキャプチャを開始もしくは終了するための命令、またはアプリケーションにおける特定のアクションを実施するための命令であり得る。周辺デバイス３１０は、１つまたは複数の入力デバイスを含むことがある。例示的な入力デバイスは、マウス、ゲームコントローラ、またはアクションリクエストを受信し、アクションリクエストをＨＭＤコントローラ３５０に通信するための任意の他の適切なデバイスを含む。周辺デバイス３１０によって受信されたアクションリクエストは、ＨＭＤコントローラ３５０に通信され、ＨＭＤコントローラ３５０は、アクションリクエストに対応するアクションを実施する。いくつかの実施形態では、周辺デバイス３１０は、周辺デバイス３１０の初期ポジションに対する周辺デバイス３１０の推定ポジションを示す較正データをキャプチャするＩＭＵを含む。いくつかの実施形態では、周辺デバイス３１０は、ＨＭＤコントローラ３５０から受信された命令に従って、触覚フィードバックをユーザに提供することができる。例えば、触覚フィードバックは、アクションリクエストが受信されたときに提供され、またはＨＭＤコントローラ３５０は、ＨＭＤコントローラ３５０がアクションを実施するときに周辺デバイス３１０に触覚フィードバックを生成させる命令を、周辺デバイス３１０に通信する。
【００２８】
いくつかの実施形態では、周辺デバイス３１０は、ＨＭＤ３０５の撮像アセンブリの露出設定を同期させるプロセスを容易にする。図１に関して述べたように、撮像アセンブリは、それぞれが個別の露出設定を有する複数のカメラ、例えばカメラ１１５、１２０、１２５、１３０を含むことがある。各カメラの露出設定は、ＨＭＤコントローラによって同期されて、同じ時点に中心を合わされたイメージをキャプチャする。周辺デバイス３１０は、各カメラに関する時間遅延の測定に関する基準時点として働く同期パルスをＨＭＤ３０５に送信するように構成される。図３の実施形態では、同期パルスは、撮像アセンブリ、例えば撮像アセンブリ３１５によって検出される１つまたは複数のフラッシュでよい。フラッシュは、可視光範囲内（例えば、４００〜７００ナノメートル）、赤外線（例えば、７００〜１００００００ナノメートル）、撮像アセンブリ３１５によって検出可能な任意の他の光、またはそれらの何らかの組合せであり得る。フラッシュは、発光ダイオード（ＬＥＤ）によって放出されることがある。いくつかの実施形態では、周辺デバイス３１０は、撮像アセンブリ３１５による各イメージキャプチャの前に、同期パルスをＨＭＤ３０５に送信する。周辺デバイス３１０は、周辺デバイス３１０が適切な時点でＨＭＤ３０５に同期パルスを送信できるようにする独自のタイムベースを有するマイクロコントローラを含むことがある。いくつかの実施形態では、同期パルスは、指定された時間間隔で送信される。代替として、周辺デバイス３１０は、同期プロトコルを指定するＨＭＤ３０５から命令を受信することができる。同期プロトコルは、ＨＭＤ３０５と周辺デバイス３１０とを同じタイムベースで同期させる。代替実施形態では、周辺デバイス３１０は、初期同期パルスをＨＭＤ３０５に送信し、カメラの露出が同期されると、撮像アセンブリは、指定された時間間隔でイメージをキャプチャする。
【００２９】
いくつかの実施形態では、周辺デバイス３１０は、ＨＭＤ３０５の撮像アセンブリ３１５によって追跡される。周辺デバイス３１０は、撮像アセンブリ３１５によって検出することができる追跡パルスを放出するように構成されることがある。追跡パルスは、可視光範囲内、赤外線、または撮像アセンブリ３１５によって検出可能な任意の他の光のフラッシュであり得る。追跡パルスは、同期パルスと区別可能である。追跡パルスは、周辺デバイス３１０が撮像アセンブリ３１５の視野内で動くときに、周辺デバイス３１０の動きを追跡できるようにする。
【００３０】
ＨＭＤ３０５は、撮像アセンブリ３１５、電子ディスプレイ３２０、光学アセンブリ３２５、１つまたは複数のポジションセンサ３３０、ＩＭＵ３３５、任意選択の視標追跡システム３４０、任意選択の可変焦点モジュール３４５、およびＨＭＤコントローラ３５０を含む。ＨＭＤ３０５のいくつかの実施形態は、図３に関連して述べたものとは異なる構成要素を有する。追加として、図３に関連して述べた様々な構成要素によって提供される機能は、他の実施形態では、異なる手法でＨＭＤ３０５の構成要素間で分散されてもよい。
【００３１】
撮像アセンブリ３１５は、ＨＭＤ３０５の一部または全てを取り巻く局所エリアの深度情報を表すデータをキャプチャする。撮像アセンブリ３１５は、イメージおよび／またはビデオ情報および／またはオーディオ情報をキャプチャするＨＭＤ３０５に位置された１つまたは複数のカメラを含む。いくつかの実施形態では、撮像アセンブリ３１５は、（例えば、局所エリア内のオブジェクトの立体視ビューを有するキャプチャされたイメージに基づいて）データを使用して深度情報を計算することができる。さらに、撮像アセンブリ３１５は、撮像アセンブリ３１５での各カメラによって検出される光の量を決定する。撮像アセンブリ３１５は、深度情報および検出された光の量を、さらなる処理のためにＨＭＤコントローラ３５０に送信することができる。撮像アセンブリ３１５は、図１での撮像アセンブリの一実施形態である。
【００３２】
電子ディスプレイ３２０は、撮像アセンブリコントローラから受信されたデータに従って、２Ｄまたは３Ｄイメージをユーザに表示する。様々な実施形態において、電子ディスプレイ３２０は、単一の電子ディスプレイまたは複数の電子ディスプレイ（例えば、ユーザの各眼のためのディスプレイ）を含む。電子ディスプレイ３２０の例としては、液晶ディスプレイ（ＬＣＤ）、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、無機発光ダイオード（ＩＬＥＤ）ディスプレイ、アクティブマトリクス有機発光ダイオード（ＡＭＯＬＥＤ）ディスプレイ、透明有機発光ダイオード（ＴＯＬＥＤ）ディスプレイ、何らかの他のディスプレイ、またはそれらの何らかの組合せが挙げられる。
【００３３】
光学アセンブリ３２５は、電子ディスプレイ３２０から受け取ったイメージ光を拡大し、イメージ光に関連する光学的誤差を補正し、補正されたイメージ光をＨＭＤ３０５のユーザに提示する。光学アセンブリ３２５は、複数の光学素子を含む。光学アセンブリ３２５に含まれる例示的な光学素子としては、絞り、フレネルレンズ、凸レンズ、凹レンズ、フィルタ、反射面、またはイメージ光に影響を与える任意の他の適切な光学素子が挙げられる。さらに、光学アセンブリ３２５は、異なる光学素子の組合せを含むことがある。いくつかの実施形態では、光学アセンブリ３２５での光学素子のうちの１つまたは複数は、部分反射または反射防止コーティングなどの１つまたは複数のコーティングを有することがある。
【００３４】
光学アセンブリ３２５によるイメージ光の拡大および集束により、より大きなディスプレイに比べて電子ディスプレイ３２０を物理的に小さく、軽量に、低電力消費にすることができる。追加として、拡大は、電子ディスプレイ３２０によって提示されるコンテンツの視野を増大させることができる。例えば、表示されるコンテンツの視野は、表示されるコンテンツが、ユーザの視野のほぼ全て（例えば、斜めに約１１０度）、場合によっては全てを使用して提示されるようなものである。追加として、いくつかの実施形態では、拡大の量は、光学素子を追加または除去することによって調節することができる。
【００３５】
いくつかの実施形態では、光学アセンブリ３２５は、１つまたは複数のタイプの光学的誤差を修正するように設計されることがある。光学的誤差の例としては、樽形または糸巻形の歪み、長手方向の色収差、または横方向の色収差が挙げられる。他のタイプの光学的誤差としては、球面収差、色収差、もしくはレンズ視野湾曲による誤差、非点収差、または任意の他のタイプの光学的誤差をさらに挙げることができる。いくつかの実施形態では、表示のために電子ディスプレイ３２０に提供されるコンテンツが事前に歪められ、光学アセンブリ３２５は、そのコンテンツに基づいて生成された電子ディスプレイ３２０からのイメージ光を受け取るときに、歪みを補正する。
【００３６】
ＩＭＵ３３５は、ポジションセンサ３３０のうちの１つまたは複数から受信された測定信号と、撮像アセンブリ３１５から受信された深度情報とに基づいて、ＨＭＤ３０５のポジションを示すデータを生成する電子デバイスである。ポジションセンサ３３０は、ＨＭＤ３０５の動きに応答して１つまたは複数の測定信号を生成する。ポジションセンサ３３０の例としては、１つもしくは複数の加速度計、１つもしくは複数のジャイロスコープ、１つもしくは複数の磁力計、動きを検出する別の適切なタイプのセンサ、ＩＭＵ３３５の誤差修正に使用されるタイプのセンサ、またはそれらの何らかの組合せが挙げられる。ポジションセンサ３３０は、ＩＭＵ３３５の外部に、ＩＭＵ３３５の内部に、またはそれらの何らかの組合せで位置されることがある。
【００３７】
１つまたは複数のポジションセンサ３３０からの１つまたは複数の測定信号に基づいて、ＩＭＵ３３５は、ＨＭＤ３０５の初期ポジションに対するＨＭＤ３０５の推定現在ポジションを示すデータを生成する。例えば、ポジションセンサ３３０は、並進運動（前／後、上／下、左／右）を測定するための複数の加速度計と、回転運動（例えば、ピッチ、ヨー、ロール）を測定するための複数のジャイロスコープを含む。いくつかの実施形態では、ＩＭＵ３３５は、測定信号を迅速にサンプリングし、サンプリングされたデータからＨＭＤ３０５の推定現在ポジションを計算する。例えば、ＩＭＵ３３５は、加速度計から受信された測定信号を時間積分して速度ベクトルを推定し、速度ベクトルを時間積分して、ＨＭＤ３０５での基準点の推定現在ポジションを決定する。基準点は、ＨＭＤ３０５のポジションを表すために使用され得る点である。基準点は、一般に、ＨＭＤ３０５の向きおよびポジションに関係する空間内の一点またはポジションとして定義することができる。
【００３８】
ＩＭＵ３３５は、ＨＭＤコントローラ３５０から１つまたは複数のパラメータを受信する。１つまたは複数のパラメータは、ＨＭＤ３０５の追跡を維持するために使用される。受信されたパラメータに基づいて、ＩＭＵ３３５は、１つまたは複数のＩＭＵパラメータ（例えば、サンプルレート）を調節することができる。いくつかの実施形態では、特定のパラメータにより、ＩＭＵ３３５は、基準点の初期ポジションを更新し、それにより基準点の次のポジションに対応する。基準点の初期ポジションを、基準点の較正された次のポジションとして更新することは、ＩＭＵ３３５で推定される現在ポジションに関連する累積誤差を減少する助けとなる。累積された誤差（ドリフト誤差とも呼ばれる）は、時間が経つにつれて、基準点の推定ポジションを、基準点の実際のポジションから「ドリフト」させる。ＨＭＤ３０５のいくつかの実施形態では、ＩＭＵ３３５は、専用ハードウェア構成要素であり得る。他の実施形態では、ＩＭＵ３３５は、１つまたは複数のプロセッサに実装されたソフトウェア構成要素であり得る。
【００３９】
いくつかの実施形態では、視標追跡システム３４０は、ＨＭＤ３０５に統合される。視標追跡システム３４０は、ＨＭＤ３０５を着用しているユーザの眼に関連する視標追跡情報を決定する。視標追跡システム３４０によって決定された視標追跡情報は、ユーザの眼の向きに関する情報、すなわち視線の角度に関する情報を含むことがある。いくつかの実施形態では、視標追跡システム３４０は、光学アセンブリ３２５に統合される。視標追跡システム３４０の一実施形態は、照明源および撮像デバイス（カメラ）を備えることがある。
【００４０】
いくつかの実施形態では、可変焦点モジュール３４５は、ＨＭＤ３０５にさらに統合される。可変焦点モジュール３４５は、視標追跡システム３４０によって決定された視標追跡情報を取得するために、視標追跡システム３４０に連結されることが可能である。可変焦点モジュール３４５は、視標追跡システム３４０から取得された決定された視標追跡情報に基づいて、電子ディスプレイ３２０上に表示された１つまたは複数のイメージの焦点を調節するように構成されることが可能である。このようにして、可変焦点モジュール３４５は、イメージ光に関する両眼連動調節の不一致を緩和することができる。可変焦点モジュール３４５は、電子ディスプレイ３２０、および光学アセンブリ３２５の少なくとも１つの光学素子のうちの少なくとも１つと（例えば、機械的または電気的に）インターフェースされることが可能である。次に、可変焦点モジュール３４５は、視標追跡システム３４０から取得された決定された視標追跡情報に基づいて、電子ディスプレイ３２０、および光学アセンブリ３２５の少なくとも１つ光学素子のうちの少なくとも１つのポジションを調節することによって、電子ディスプレイ３２０上に表示された１つまたは複数のイメージの焦点を調節するように構成されることが可能である。ポジションを調節することによって、可変焦点モジュール３４５は、ユーザの眼に向けて電子ディスプレイ３２０から出力されたイメージ光の焦点を変化させる。可変焦点モジュール３４５は、視標追跡システム３４０から取得された決定された視標追跡情報に少なくとも部分的に基づいて、表示されたイメージの中心窩適応レンダリングを行うことによって、電子ディスプレイ３２０上に表示されたイメージの解像度を調節するように構成されることも可能である。この場合、可変焦点モジュール３４５は、妥当なイメージ信号を電子ディスプレイ３２０に提供する。可変焦点モジュール３４５は、ユーザの視線の中心窩領域においてのみ、電子ディスプレイ３２０に関する最大ピクセル密度のイメージ信号を提供し、電子ディスプレイ３２０の他の領域では、より低いピクセル密度のイメージ信号を提供する。１つの実施形態において、可変焦点モジュール３４５は、撮像アセンブリ３１５によって取得された深度情報を利用して、例えば、電子ディスプレイ３２０上で提示するためのコンテンツを生成することができる。
【００４１】
ＨＭＤコントローラ３５０は、撮像アセンブリ３１５から受信された情報に基づいて、ＨＭＤ３０５に関するコンテンツを処理する。図３に示される例において、ＨＭＤコントローラ３５０は、アプリケーションストア３５５、追跡モジュール３６０、およびエンジン３６５を含む。ＨＭＤコントローラ３５０のいくつかの実施形態は、図３に関連して述べたものとは異なるモジュールまたは構成要素を有する。同様に、以下でさらに述べる機能は、図３に関連して述べたものとは異なる手法で、ＨＭＤコントローラ３５０の構成要素間で分散させることができる。
【００４２】
アプリケーションストア３５５は、ＨＭＤコントローラ３５０によって実行するための１つまたは複数のアプリケーションを格納する。アプリケーションは、命令の群であり、プロセッサによって実行されるとき、ユーザに提示するためのコンテンツを生成する。アプリケーションによって生成されるコンテンツは、ＨＭＤ３０５または周辺デバイス３１０の移動を介してユーザから受信された入力に応答するものであることが可能である。アプリケーションの例としては、ゲームアプリケーション、会議アプリケーション、ビデオ再生アプリケーション、または他の適切なアプリケーションが挙げられる。
【００４３】
追跡モジュール３６０は、１つまたは複数の較正パラメータを使用してＨＭＤシステム３００を較正し、１つまたは複数の較正パラメータを調節して、ＨＭＤ３０５のポジションまたは周辺デバイス３１０のポジションの決定の際の誤差を低減することができる。例えば、追跡モジュール３６０は、撮像アセンブリ３１５の焦点を調節して、撮像アセンブリ３１５によってキャプチャされたオブジェクトのポジションをより正確に決定するために、較正パラメータを撮像アセンブリ３１５に通信する。追跡モジュール３６０によって行われる較正は、ＨＭＤ３０５におけるＩＭＵ３３５、および／または周辺デバイス３１０に含まれるＩＭＵ３３５から受信された情報も考慮に入れる。追加として、周辺デバイス３１０の追跡が失われた（例えば、撮像アセンブリ３１５が、周辺デバイス３１０の少なくとも一部の照準線を見失う）場合、追跡モジュール３６０は、ＨＭＤシステム３００のいくつかまたは全てを再較正することができる。
【００４４】
追跡モジュール３６０は、撮像アセンブリ３１５、１つもしくは複数のポジションセンサ３３０、ＩＭＵ３３５、またはそれらの何らかの組合せからの情報を使用して、ＨＭＤ３０５の移動または周辺デバイス３１０の移動を追跡する。例えば、追跡モジュール３４５は、撮像アセンブリ３１５からの情報に基づいて、局所エリアのマッピングにおいてＨＭＤ３０５の基準点のポジションを決定する。追跡モジュール３６０は、ＩＭＵ３３５からのＨＭＤ３０５のポジションを示すデータを使用すること、または周辺デバイス３１０に含まれるＩＭＵ３３５からの周辺デバイス３１０のポジションを示すデータを使用すること、をそれぞれ行って、ＨＭＤ３０５の基準点または周辺デバイス３１０の基準点のポジションを決定することもできる。追加として、いくつかの実施形態において、追跡モジュール３６０は、ＩＭＵ３３５からのポジションまたはＨＭＤ３０５を示すデータ、ならびに撮像アセンブリ３１５からの局所エリアの表現、の一部を使用して、ＨＭＤ３０５の将来のロケーションを予測することができる。追跡モジュール３６０は、ＨＭＤ３０５または周辺デバイス３１０の推定または予測された将来のポジションをエンジン３５５に提供する。
【００４５】
エンジン３６５は、撮像アセンブリ３１５から受信された情報（例えば、深度および／または露出）を処理する。受信された情報を使用して、エンジン３６５は、撮像アセンブリ３１５のカメラに関する露出設定を同期させる。図１に関して述べたように、撮像アセンブリ３１５での各カメラの露出設定の中心は中心時点に合わされ、それにより、撮像アセンブリ３１５によってキャプチャされたイメージは、情報を多く含み、同じフレームのものであるようにする。撮像アセンブリ３１５でのカメラの露出長さの中心を合わせるために、エンジン３６５は、各カメラの露出長さの中点を決定し、中点を中心時点に位置合わせする。追加として、エンジン３６５は、カメラの露出長さに従って、撮像アセンブリ３１５での各カメラのイメージキャプチャに関する適切な時間遅延を決定する。決定された露出設定および同期情報に基づいて、エンジン３６５は、撮像命令を生成して、撮像アセンブリ３１５および／または周辺デバイス３１０に送信する。図３の実施形態では、エンジン３６５は、独自のタイムベースを有し、そのタイムベースによって、中心時点を決定し、各カメラに関する対応する時間遅延を計算する。ＨＭＤコントローラ３５０は、周辺デバイス３１０と通信して、エンジン３６５のユニットおよび周辺デバイス３１０のマイクロコントローラを同じタイムベースで同期させることができる。ユニットを同期させることにより、周辺デバイス３１０が、ＨＭＤ３０５の撮像命令に従って同期パルスを送信できるようになる。
【００４６】
また、エンジン３６５は、撮像アセンブリ３１５および追跡モジュール３６０からの情報を使用して、局所エリアモデルを更新する。局所エリアモデルは、局所エリア内のＨＭＤ３０５のロケーションに基づいて、ＨＭＤ３０５の一部または全てを取り巻くエリア（すなわち「局所エリア」）のマッピング関数を表すことができる。局所エリアモデルは、ＨＭＤ３０５の様々なポジションおよび向きについて、撮像アセンブリ３１５の各カメラに関する露出設定を提供し、環境内でＨＭＤ３０５のロケーションおよび向きが変化するときに露出設定を調節できるようにする。エンジン３６５は、撮像アセンブリ３１５によってキャプチャされた立体視イメージから深度を計算する際に、１つまたは複数の技法を使用して環境内のオブジェクトの深度を計算することができる。マッピングされたオブジェクトから、ＨＭＤコントローラは、環境内のＨＭＤ３０５のロケーションを決定し、環境の局所エリアモデルを更新する。また、追跡モジュール３６０は、ＨＭＤ３０５が環境内でロケーションおよび向きを変えるときに、ＨＭＤ３０５のポジション情報で局所エリアモデルを更新することも可能である。エンジン３６５は、局所エリアモデルを使用して、ＨＭＤ３０５の新たなロケーションおよび向きに基づいて、撮像アセンブリ３１５での各カメラに関して適切な露出設定を決定する。撮像アセンブリ３１５での各カメラに関して適切な露出設定が決定されると、エンジン３６５は、露出設定を同期させ、撮像アセンブリ３１５のための撮像命令を生成する。さらに、エンジン３６５は、局所エリアモデルを、ＨＭＤ３０５の新しいロケーションおよび向きで更新する。いくつかの実施形態では、エンジン３６５は、第１のフレームまたは第１のフレームセットから撮像アセンブリ３１５によって検出された深度情報および光の量を使用して局所エリアモデルを生成して、ＨＭＤ３０５を取り巻く環境内のオブジェクトをマッピングする。他の実施形態では、局所エリアモデルは、エンジン３６５によってプリロードまたはダウンロードされる。
【００４７】
エンジン３６５は、局所エリアモデルと併せて、追跡モジュール３６０からの情報をさらに使用することができる。追跡モジュール３６０からの情報を使用して、エンジン３６５は、ＨＭＤ３０５の将来のロケーションおよび向きを予測することができる。その後、局所エリアモデルを使用して、エンジン３６５は、ＨＭＤ３０５の予測される将来のロケーションおよび向きについて、撮像アセンブリ３１５での各カメラに関して適切な露出設定を決定する。局所エリアモデルは、エンジン３６５が撮像アセンブリ３１５でのカメラの露出設定を効率的に調節できるようにし、エンジン３６５は、ＨＭＤ３０５の各新たなロケーションおよび／または向きで撮像アセンブリ３１５によって検出される深度情報および光の量を分析する必要がない。ＨＭＤ３０５のロケーションおよび向きが環境内で変化するとき、エンジン３６５は、撮像アセンブリ３１５から検出された深度情報および光の量を使用して局所エリアモデルを更新することができる。追加として、撮像アセンブリ３１５は、検出された深度情報および光の量を特定の時間間隔でエンジン３６５に送信して、環境内で発生し得る光のレベルの変化を考慮に入れ、それに従って局所エリアモデルが更新されることを保証するように構成されることがある。
【００４８】
また、エンジン３６５は、ＨＭＤシステム３００内でアプリケーションを実行し、追跡モジュール３６０からＨＭＤ３０５のポジション情報、加速度情報、速度情報、予測される将来のポジション、またはそれらの何らかの組合せを受信する。受信された情報に基づいて、エンジン３６５は、ユーザに提示するために電子ディスプレイ３２０に提供するコンテンツを決定する。例えば、受信された情報が、ユーザが左を見ていることを示す場合、エンジン３６５は、仮想環境における、または追加のコンテンツで局所エリアを増強した環境におけるユーザの移動を反映する電子ディスプレイ３２０用のコンテンツを生成する。追加として、エンジン３６５は、周辺デバイス３１０から受信されたアクションリクエストに応答してＨＭＤコントローラ３５０上で実行されているアプリケーションにおけるアクションを実施し、アクションが実施されたというフィードバックをユーザに提供する。提供されるフィードバックは、ＨＭＤ３０５を介した視覚的もしくは聴覚的フィードバック、または周辺デバイス３１０を介した触覚フィードバックであり得る。
【００４９】
いくつかの実施形態では、視標追跡システム３４０から受信された視標追跡情報（例えば、ユーザの眼の向き）に基づいて、エンジン３６５は、ユーザに提示するために電子ディスプレイ３２０に提供されるコンテンツの解像度を決定する。エンジン３６５は、ユーザの視線の中心窩領域において、電子ディスプレイ３２０での最大ピクセル解像度を有するコンテンツを提供し、電子ディスプレイ３２０の他の領域では、より低いピクセル解像度を提供し、それにより、ユーザの視覚体験を損なうことなく、ＨＭＤ３０５でより少ない電力消費を実現し、ＨＭＤコントローラ３５０の計算サイクルを削減する。いくつかの実施形態では、エンジン３６５は、視標追跡情報をさらに使用して、オブジェクトが電子ディスプレイ３２０に表示される場所を調節して、両眼連動調節の不一致を防止することができる。
【００５０】
図４は、一実施形態によるＨＭＤ１００の追跡領域４００を示す。追跡領域４００は、ＨＭＤ１００での撮像アセンブリによって観察可能なＨＭＤ１００を取り巻く局所エリアの一部分である。追跡領域４００内のオブジェクトは、オブジェクトのイメージ情報をキャプチャするカメラ１１５、１２０、１２５、１３０によって検出される。図４に示されるように、追跡領域４００は、いくつかのより小さい領域から構成され、各領域は、ＨＭＤ１００でのカメラ１１５、１２０、１２５、１３０の視野によって提供されるカバレッジのタイプに対応する。図４の実施形態では、追跡ボリューム４００は、第１の領域４０５、第２の領域４１０、第３の領域４１５、および３つの重畳領域４２０を含む。
【００５１】
第１の領域４０５は、カバレッジの単眼領域を表す。図４の実施形態では、第１の領域４０５は、カメラ１２０の視野によって提供される。図１に関して述べたように、カメラ１２０は、ＨＭＤ１００の前部剛体１０５の左上隅に位置決めされ、前部剛体１０５の側部および上部に向けて外向きおよび上向きになるように向きを定められ、カメラ１２０は、１２０〜１８０度の範囲内の視野を有する。したがって、第１の領域４０５は、ユーザの左上の視野に位置された局所エリアのオブジェクトを含む。ＨＭＤ１００を着用しているユーザにとって、関心のあるオブジェクトは、ユーザの眼の高さ以下に位置している可能性が高い。その結果、ユーザの視野の左上隅にあるオブジェクトに関する深度情報の決定は望ましいものでないことがある。その結果、局所エリアの第１の領域４０５内のオブジェクトに関しては、単一のカメラが十分な視点を提供する。いくつかの実施形態では、この領域に異なるタイプのカバレッジを有することが望ましいことがある。例えば、ＨＭＤ１００は、関心のあるオブジェクト（例えば、凧、飛行機など）がユーザの眼の高さよりも上に位置している屋外環境内にあり得る。ＨＭＤ１００でのカメラのポジションおよび向きは、ＨＭＤ１００の環境により良く適合するように調節することができる。
【００５２】
第２の領域４１０は、カバレッジの単眼領域を表す。図４の実施形態では、第２の領域４１０は、カメラ１１５の視野によって提供される。図１に関して述べたように、カメラ１１５は、ＨＭＤ１００の前部剛体１０５の左上隅に位置決めされ、前部剛体１０５の側部および上部に向けて外向きおよび上向きになるように向きを定められ、カメラ１１５は、１２０〜１８０度の範囲内の視野を有する。したがって、第２の領域４１０は、ユーザの右上の視野に位置された局所エリアのオブジェクトを含む。第１の領域４０５と同様に、関心のあるオブジェクトはユーザの眼の高さ以下に位置している可能性が高いので、ユーザの視野の右上隅にあるオブジェクトに関する深度情報の決定は望ましいものでないことがある。その結果、局所エリアの第２の領域４１０内のオブジェクトに関しては、単一のカメラが十分な視点を提供する。いくつかの実施形態では、この領域に異なるタイプのカバレッジを有することが望ましいことがある。ＨＭＤ１００でのカメラのポジションおよび向きは、ＨＭＤ１００の環境により良く適合するように調節することができる。
【００５３】
第３の領域４１５は、カバレッジの立体視領域を表す。図４の実施形態では、第３の領域４１５は、カメラ１２５、１３０の視野によって提供される。図１に関して述べたように、カメラ１２５、１３０は、前部剛体１０５の底縁部に沿って位置決めされ、下向きに、互いに平行（またはほぼ平行）に向きを定められ、カメラ１２５、１３０は、１２０〜１８０度の範囲内の視野を有する。カメラ１２５、１３０は、実質的に同じ向きを有し、カメラ１２５とカメラ１３０との視野が完全に（またはほぼ完全に）重なり合い、第３の領域４１５内のオブジェクトに関する立体視カバレッジを提供する。第３の領域４１５は、ユーザの眼の高さ以下に位置している局所エリアのオブジェクトを含む。前述したように、この領域内のオブジェクトは、ユーザにとってより高い関心があり得る。その結果、この領域の立体視カバレッジは、複数の視点によりＨＭＤ１００が第３の領域４１５内のオブジェクトに関して十分な深度情報を決定することが可能になるので、望ましい。
【００５４】
いくつかの実施形態では、ユーザが、周辺デバイス、例えば周辺デバイス３１０を自分の手に保持することがある。図３に関して述べたように、ユーザは、周辺デバイスを使用して、ＨＭＤからのリクエストを送受信する。追加として、周辺デバイスは、撮像アセンブリによって検出された同期パルスを送信することによって、撮像アセンブリの露出設定を同期させるプロセスを容易にする。したがって、周辺デバイスは、高い関心のあるオブジェクトであり、周辺デバイスの十分なイメージ情報をキャプチャすることが望ましい。典型的には、ユーザは周辺デバイスを中立ポジションに保持し、この中立ポジションは、ユーザの腕が両脇に下がっていることによって特徴付けられる。図４の実施形態では、カメラ１２５、１３０は、ユーザが頭を動かしている場合でも周辺デバイスが第３の領域４１５内に入る可能性が高いように、ユーザの身体の大部分を観察するように下向きに傾斜するように位置決めされている。ＨＭＤ１００は周辺デバイスを観察するための２つの異なる地点を有するので、第３の領域４１５の立体視カバレッジは、周辺デバイスの部分的な妨害を軽減する助けとなる。また、第３の領域４１５に関するカメラ構成は、ユーザが手を動かす場合に周辺デバイスを追跡する精度を改善し、第３の領域４１５内の他のオブジェクトに関してキャプチャされる深度情報も改善する。
【００５５】
重畳領域４２０はそれぞれ、カバレッジの立体視領域を表す。図４の実施形態では、重畳領域４２０は、隣接するカメラ（例えば、カメラ１１５と１２０、カメラ１１５と１３０、およびカメラ１２０と１２５）間の重畳視野によって提供される。隣接するカメラ間の重畳領域４２０により、第１の視野からの詳細を第２の視野に引き渡すことが可能になり、異なるカメラからのフレームを繋ぎ合わせることができるようになる。また、重畳領域４２０内にあるオブジェクトを使用して、ＨＭＤ１００のカメラを較正し、使用中のＨＭＤ構成要素の熱膨張により生じ得る問題をさらに修正することもできる。
【００５６】
図５は、一実施形態による、ＨＭＤ１００でのカメラ１１５、１２０、１２５、１３０のイメージキャプチャを同期させるための方法を示す。図１に関して述べたように、カメラ１１５、１２０、１２５、１３０は、撮像アセンブリに適用されるグローバル露出設定ではなく、個別の露出設定を有するように構成されている。この構成により、第１のカメラが第２のカメラよりもはるかに長い露出を有することが可能になり、これにより、撮像アセンブリが、ＨＭＤ１００を取り巻く局所エリア内の異なる光範囲をキャプチャすることが可能になる。ＨＭＤ１００は、局所エリアから所望の情報を収集するために露出を駆動するように局所エリアの異なる部分を選択する。図５に示されているように、各カメラ１１５、１２０、１２５、１３０は、それぞれ異なる長さの露出フレーム５０５、５１０、５１５、５２０を有する。カメラ１１５、１２０、１２５、１３０のイメージキャプチャを同期させるために、ＨＭＤコントローラ（例えば、ＨＭＤコントローラ３５０）は、露出フレーム５０５、５１０、５１５、５２０の中心時点５２５、および各カメラ１１５、１２０、１２５、１３０に関する対応する時間遅延５３０を決定する。時間遅延５３０は、カメラ１１５、１２０、１２５、１３０のうちの１つまたは複数によって検出された同期（「ｓｙｎｃ」）パルス５３５に対して測定される。
【００５７】
中心時点５２５は、各露出フレーム５０５、５１０、５１５、５２０の中心が合わせられる時点である。ＨＭＤコントローラは、各露出フレーム５０５、５１０、５１５、５２０の長さを評価し、各露出フレームの中点を決定する。次いで、ＨＭＤコントローラは、各露出フレームの中点を中心時点５２５に位置合わせする。この構成は、カメラ１１５、１２０、１２５、１３０が個々の露出設定を維持しながら同じフレームをキャプチャすることを保証する。
【００５８】
時間遅延５３０は、基準時点とカメラに関する露出フレームの開始との間に経過する指定された時間量である。それぞれの時間遅延５３０を有するように各カメラ１１５、１２０、１２５、１３０をプログラムすると、それぞれの露出フレーム５０５、５１０、５１５、５２０の中心が中心時点５２５に合わされるように、各カメラ１１５、１２０、１２５、１３０が適切な時間にイメージキャプチャを開始することが保証される。各露出フレーム５０５、５１０、５１５、５２０が異なる長さを有することがあるので、各カメラ１１５、１２０、１２５、１３０に関する時間遅延はそれに応じて異なる。例えば、カメラ１１５の露出フレーム５０５がカメラ１２０の露出フレーム５１０よりも長いので、カメラ１１５は、カメラ１２０よりも短い時間遅延を有する。したがって、カメラ１１５は、露出フレーム５０５、５１０の中点が中心時点５２５に沿って揃うように、カメラ１２０よりも前にイメージキャプチャを開始する。図５の実施形態では、時間遅延５３０は、基準時点としての同期（「ｓｙｎｃ」）パルス５３５に対して測定される。
【００５９】
同期パルス５３５は、各カメラ１１５、１２０、１２５、１３０に関する時間遅延５３０の開始をトリガする。同期パルス５３５は、撮像アセンブリの１つまたは複数のカメラによって検出される、周辺デバイスなどの外部デバイスまたはシステムのコンソールによって放出される信号であり得る。いくつかの実施形態では、同期パルス５３５は、可視光範囲内、赤外線、またはカメラ１１５、１２０、１２５、１３０によって検出可能な任意の他の光範囲内の１つまたは複数の同時のフラッシュであり得る。いくつかの実施形態では、同期パルス５３５は、図５に示されているように、各カメラ１１５、１２０、１２５、１３０によって検出されることがある。いくつかの実施形態では、同期パルス５３５は、少なくとも１つのカメラによって検出されることがあり、ＨＭＤコントローラは、その後、イベント情報を各カメラ１１５、１２０、１２５、１３０に中継し、それによって、各カメラ１１５、１２０、１２５、１３０に関する時間遅延５３０の開始をトリガすることができる。図５の実施形態では、ＨＭＤコントローラは、それぞれの露出フレーム５０５、５１０、５１５、５２０に基づいて、中心時点５２５、および各カメラ１１５、１２０、１２５、１３０に関する適切な時間遅延５３０を決定すると、各カメラに撮像命令を送信する。この構成は、カメラ１１５、１２０、１２５、１３０の異なる露出長さに対応し、各カメラによって同じフレームがキャプチャされることを保証する。ＨＭＤ１００が、ＨＭＤ１００の環境内でロケーションおよび向きを変えるとき、各カメラの露出設定を調節することができ、したがって、それに応じて同期情報が調節される。
【００６０】
いくつかの実施形態では、ＨＭＤ１００は、ユーザによって保持される周辺デバイスのポジションおよび移動を追跡する。図１に関して述べたように、周辺デバイスは、ユーザがＨＭＤ１００にアクションリクエストを送信し、ＨＭＤ１００から応答を受信することを可能にするデバイスである。図５の実施形態では、周辺デバイスは、カメラ１１５、１２０、１２５、１３０のうちの１つまたは複数によって検出することができる追跡パルス５４０を放出するように構成されている。追跡パルス５４０は、可視光範囲内、赤外線、またはカメラ１１５、１２０、１２５、１３０によって検出可能な任意の他の光の１つまたは複数のフラッシュであり得る。カメラ１１５、１２０、１２５、１３０はそれぞれ異なる露出長さを有するので、周辺デバイスは、各カメラ１１５、１２０、１２５、１３０の露出フレーム中に追跡パルス５４０を検出することができるように、特定の時点で追跡パルス５４０を放出する。図５の実施形態では、周辺デバイスは、中心時点５２５で追跡パルス５４０を放出する。周辺デバイスは、ＨＭＤ１００と同期されたタイムベースを有するマイクロコントローラを有することがあり、周辺デバイスが正確な時点で追跡パルス５４０を放出することを可能にする。
【００６１】
図６は、一実施形態による、図１に示されているＨＭＤ１００で実施され得る、局所エリア内でのＨＭＤのロケーションを決定するプロセス６００を示す流れ図である。図６のプロセス６００は、ＨＭＤ１００の構成要素（例えば、撮像アセンブリ３１５、ＨＭＤコントローラ３５０、追跡モジュール３６０、エンジン３６５）、周辺デバイス３１０、またはそれらの何らかの組合せによって実施することができる。他の実施形態では、他のエンティティ（例えば、ＨＭＤシステムのコンソール）が、プロセスのステップの一部または全てを実施することがある。同様に、いくつかの実施形態は、異なるおよび／または追加のステップを含むことがあり、またはステップを異なる順序で実施することがある。
【００６２】
ＨＭＤ１００は、ＨＭＤ１００での複数のカメラに関するイメージ情報を（例えば撮像アセンブリを介して）収集する（６０５）。イメージ情報は、局所エリア内の１つもしくは複数のオブジェクトの深度情報、および／またはカメラのセンサに入射する光の量を含むことがある。いくつかの実施形態では、イメージ情報は、局所エリア内でのＨＭＤ１００のロケーションに基づいて局所エリアモデルから収集される。いくつかの実施形態では、イメージ情報は、撮像アセンブリから収集される。
【００６３】
撮像アセンブリの各カメラについて、ＨＭＤ１００は、イメージ情報を使用して露出設定を決定する（６１０）。露出設定は、例えば、絞りサイズ、シャッタスピード、ゲイン、またはそれらの何らかの組合せを含むことがある。いくつかの実施形態では、ＨＭＤ１００での各カメラは、個別の露出設定を有するように構成され、これにより、撮像アセンブリが、局所エリア内の異なる光範囲を取り込み、局所エリアの様々な部分を露出して所望の情報を収集できるようにする。これらの実施形態では、ＨＭＤ１００は、各カメラに関する同期情報を生成して、カメラの露出設定を同期させ、これは、各カメラによって同じフレームがキャプチャされることを保証する。同期情報は、各カメラの露出長さの中心が合わされる中心時点と、同期パルスに対して測定される各カメラに関する時間遅延とを含む。図１に関して述べたように、同期パルスは、外部デバイス（例えば、周辺デバイスまたはシステムのコンソール）からＨＭＤ１００に送信されることがある。露出設定および同期情報に基づいて、ＨＭＤ１００は、各カメラに関する撮像命令を生成する。
【００６４】
ＨＭＤ１００は、複数のカメラを使用して局所エリアのイメージをキャプチャする（６１５）。ＨＭＤ１００によって生成された撮像命令に従って、イメージがキャプチャされる（６１５）。いくつかの実施形態では、ＨＭＤ１００は、ビデオおよび／またはオーディオ情報もキャプチャすることがある。キャプチャされたイメージは、局所エリアの１つまたは複数のオブジェクトを含む。図１および４に関して述べたように、撮像アセンブリのカメラのポジションおよび向きは、カメラが局所エリアの異なる部分の情報をキャプチャすることを可能にする。例えば、ＨＭＤ１００でのカメラ１１５、１２０は、ユーザの視野内の局所エリアの右上および左上の部分をキャプチャし、カメラ１２５、１３０は、ユーザの眼の高さ以下にある局所エリアの部分をキャプチャする。撮像命令は、撮像アセンブリのカメラに、同じフレームの局所エリアの異なる部分の情報を提供するイメージをキャプチャさせる。
【００６５】
ＨＭＤ１００は、局所エリア内の１つまたは複数のオブジェクトの深度情報を決定する（６２０）。深度情報は、ＨＭＤ１００によってキャプチャされたイメージから決定される。図１および４に関して述べたように、カメラのポジションおよび向きは、ＨＭＤ１００でのカメラによって提供されるカバレッジのタイプを決定する。ＨＭＤ１００は、カメラの視野の重畳領域を有するカメラを含む。これらの重畳領域内のオブジェクトは、複数のカメラによって観察され、これは、各オブジェクトの複数の視点を提供する。異なる視点間のオブジェクトのポジションの相対的な差を計算することによって、ＨＭＤ１００は、撮像アセンブリに対するオブジェクトの距離を決定する。
【００６６】
ＨＭＤ１００は、決定された深度情報を使用して、局所エリアの局所エリアモデルを更新する（６２５）。図３に関して述べたように、いくつかの実施形態では、ＨＭＤ１００は、環境内でのＨＭＤ１００のロケーションに基づいて、ＨＭＤ１００の環境のマッピング関数を表す局所エリアモデルを生成する。他の実施形態では、局所エリアモデルは、ＨＭＤ１００にプリロードまたはダウンロードされる。
【００６７】
ＨＭＤ１００は、更新されたモデルを使用して、局所エリア内でのそのロケーションを決定する（６３０）。いくつかの実施形態では、局所エリアモデルは、ＨＭＤ１００でのカメラに関する露出設定をさらに含む。これらの実施形態では、局所エリアモデルは、環境内でのＨＭＤ１００のロケーションおよび向きに基づいて各カメラに関する露出設定を提供し、それにより、ＨＭＤ１００は、ＨＭＤ１００の決定されたロケーションに関する適切な露出設定を決定する。この構成により、環境内でＨＭＤ１００のロケーションおよび向きが変化するときに露出設定を調節できるようにする。いくつかの実施形態では、ＨＭＤ１００は、追跡モジュールからの情報に基づいて、局所エリアモデルを使用して、ＨＭＤ１００の将来のロケーションをさらに予測する。局所エリアモデルが露出情報を含む実施形態では、ＨＭＤ１００は、ＨＭＤ１００の予測される将来のロケーションに関する適切な露出設定を決定する。
追加の構成情報
【００６８】
本開示の実施形態の前述の説明は、例証のために提示されてきたが、網羅的であること、または、開示された厳密な形式に本開示を限定すること、を意図するものではない。上記の開示の観点から多くの修正および変形が可能であるということを当業者は正しく認識するであろう。
【００６９】
本説明のいくつかの部分は、情報の操作に関するアルゴリズムおよび象徴的な表現の観点から本開示の実施形態を説明している。これらのアルゴリズム的説明および表現は、一般に、これらの作業の実体を効果的に他の当業者に伝えるために、データ処理の当業者によって使用される。これらの動作は、機能的、計算的、または論理的に説明されるが、コンピュータプログラムもしくは同等の電気回路、マイクロコード、または同様のものによって実行されるものと理解される。さらに、一般性を損なうことなく、動作のこれらの配列をモジュールと呼ぶことが便利であると時々証明してきた。説明された動作およびこれらの関連付けられたモジュールは、ソフトウェア、ファームウェア、ハードウェア、またはこれらのいずれかの組合せに含まれることも可能である。
【００７０】
本明細書において説明されるステップ、動作、または処理のいずれかは、単独で、または他のデバイスと組み合わせて、１つまたは複数のハードウェアモジュールまたはソフトウェアモジュールによって、行われることまたは実行されることが可能である。１つの実施形態において、ソフトウェアモジュールは、説明されたステップ、動作、または処理のいずれかまたは全てを行うためにコンピュータプロセッサによって実行されることが可能な、コンピュータプログラムコードを収めるコンピュータ可読媒体を含むコンピュータプログラム製品によって実行される。
【００７１】
本開示の実施形態は、本明細書における動作を行うための装置に関するものであることも可能である。この装置は、必要な目的のために具体的に構築されることが可能であり、および／またはこの装置は、コンピュータに格納されたコンピュータプログラムによって選択的にアクティブにされるか、もしくは再構成された汎用コンピューティングデバイスを備えることができる。このようなコンピュータプログラムは、コンピュータシステムバスに連結されることが可能な、非一時的な有形のコンピュータ可読ストレージ媒体、または電子命令を格納するのに適した任意のタイプの媒体に格納されることが可能である。さらに、明細書において参照されるいずれかのコンピューティングシステムは単一のプロセッサを含むことができ、または向上した計算能力のために複数のプロセッサ設計を用いるアーキテクチャであることも可能である。
【００７２】
本開示の実施形態は、本明細書において説明される計算処理によって生み出される製品に関するものであることも可能である。このような製品は、計算処理から生じる情報を含むことができ、ここで、情報は、非一時的な有形のコンピュータ可読ストレージ媒体に格納され、本明細書において説明されるコンピュータプログラム製品または他のデータの組合せのいずれかの実施形態を含むことができる。
【００７３】
最後に、明細書において使用される言語は、可読性および教授目的のために主に選択されてきたが、発明の主題を詳しく説明すること、または制限することを行うように選択されなかった可能性がある。したがって、本開示の範囲は、本詳細な説明によってではなく、むしろ本明細書に基づく出願に関して発行するいずれかの請求項によって限定されるということを意図するものである。したがって、本実施形態の開示は、以下の特許請求の範囲において示される本開示の範囲の例証であることを意図するものであるが、限定を意図するものではない。
【図１】
2020537383.tif 000003
【図２Ａ】
2020537383.tif 000004
【図２Ｂ】
2020537383.tif 000005
【図３】
2020537383.tif 000006
【図４】
2020537383.tif 000007
【図５】
2020537383.tif 000008
【図６】
2020537383.tif 000009
【国際調査報告】
2020537383.tif 000010
2020537383.tif 000011