(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-04
(45)【発行日】2024-01-15
(54)【発明の名称】フィールド順次ディスプレイにおけるフィールド内サブコードタイミング
(51)【国際特許分類】
G09G 5/02 20060101AFI20240105BHJP
G06F 3/01 20060101ALI20240105BHJP
G09G 5/00 20060101ALI20240105BHJP
【FI】
G09G5/02 B
G06F3/01 510
G09G5/00 510B
G09G5/00 550C
(21)【出願番号】P 2021503554
(86)(22)【出願日】2019-07-23
(86)【国際出願番号】 US2019043057
(87)【国際公開番号】W WO2020023523
(87)【国際公開日】2020-01-30
【審査請求日】2022-07-12
(32)【優先日】2018-07-23
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】514108838
【氏名又は名称】マジック リープ, インコーポレイテッド
【氏名又は名称原語表記】Magic Leap,Inc.
【住所又は居所原語表記】7500 W SUNRISE BLVD,PLANTATION,FL 33322 USA
(74)【代理人】
【識別番号】100078282
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】キャップス, マーシャル チャールズ
【審査官】石本 努
(56)【参考文献】
【文献】米国特許出願公開第2015/0002542(US,A1)
【文献】米国特許出願公開第2018/0053284(US,A1)
【文献】米国特許出願公開第2014/0176591(US,A1)
【文献】特開2000-214829(JP,A)
【文献】特表2003-506928(JP,A)
【文献】米国特許出願公開第2007/0076019(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G02B27/00-30/60
G02F1/13-1/133
1/137-1/141
G06F3/01
3/048-3/04895
G09G3/00-5/42
H04N13/00-17/06
(57)【特許請求の範囲】
【請求項1】
順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするコンピュータ実装方法であって、前記方法は、
複数の第1の色を含む第1のカラーフィールドと、前記第1のカラーフィールドの前記複数の第1の色とは異なる複数の第2の色を含む第2のカラーフィールドとを取得することと、
ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定することと、
前記第1の時間に対応する第1の姿勢を予測することと、
前記第1のカラーフィールド内の前記複数の第1の色の中の各1つの色に関して、
前記第1のカラーフィールド内の前記複数の第1の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第1の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることであって、前記第1のカラーフィールド内の前記複数の第1の色の中の各色は、個別にワーピングされる、ことと
を行うことと、
前記第1のカラーフィールド内の前記複数の第1の色の全てに対応する前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第1のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた第1のカラーフィールドを表示することと
を含む、方法。
【請求項2】
前記一連のパルスは、前記第1の時間に中心を置かれた中心パルス、前記中心パルスの前に生じる第2のパルス、および前記中心パルスの後に生じる第3のパルスを含む、請求項1に記載の方法。
【請求項3】
前記第2のパルスの減衰相の終了は、前記中心パルスの成長相の開始と時間的に整列させられ、
前記第3のパルスの成長相の開始は、前記中心パルスの減衰相の終了と時間的に整列させられる、請求項2に記載の方法。
【請求項4】
前記中心パルスの重心は、前記第1の時間に生じ、前記第2のパルスの重心は、前記第1の時間の前の第2の時間に生じ、前記第3のパルスの重心は、前記第1の時間の後の第3の時間に生じる、請求項2に記載の方法。
【請求項5】
前記第1の時間と前記第2の時間との間の差異は、前記第1の時間と前記第3の時間との間の差異に等しい、請求項4に記載の方法。
【請求項6】
前記中心パルスは、各々が第1の持続時間を有する第1のタイムスロットの組を含み、前記第2のパルスおよび前記第3のパルスは、各々が前記第1の持続時間を上回る第2の持続時間を有する第2のタイムスロットの組を含む、請求項2に記載の方法。
【請求項7】
前記順次ディスプレイ上の前記ピクセルは、前記第1のタイムスロットの組または前記第2のタイムスロットの組の一部中、アクティブにされる、請求項6に記載の方法。
【請求項8】
前記順次ディスプレイ上の前記ピクセルは、前記第1のカラーフィールド内の前記複数の第1の色の中の前記1つの色に関連付けられた色コードに応じて、前記中心パルスのタイムスロット中、アクティブにされる、請求項7に記載の方法。
【請求項9】
前記順次ディスプレイ上の前記ピクセルは、前記第2のパルスにおけるタイムスロットと前記第3のパルスにおける対応するタイムスロットとのためにアクティブにされる、請求項7に記載の方法。
【請求項10】
ワーピングされた第2のカラーフィールドの投影のための第2の時間を決定することと、
前記第2の時間に対応する第2の姿勢を予測することと、
前記第2のカラーフィールド内の前記複数の第2の色の中の各1つの色に関して、
前記第2のカラーフィールド内の前記複数の第2の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第2の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることと
を行うことと、
前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第2のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた一連のパルスに基づいて前記ワーピングされた第2のカラーフィールドを表示することと
をさらに含む、請求項1に記載の方法。
【請求項11】
順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするためのシステムであって、前記システムは、複数の第1の色を含む第1のカラーフィールドと、前記第1のカラーフィールドの前記複数の第1の色とは異なる複数の第2の色を含む第2のカラーフィールドとを受信するためのワーピングユニットを備え、
前記ワーピングユニットは、
ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定し、前記第1の時間に対応する第1の姿勢を予測するための姿勢推定器と、
変換ユニットと
を備え、
前記変換ユニットは、
前記第1のカラーフィールド内の前記複数の第1の色の中の各1つの色に関して、
前記第1のカラーフィールド内の前記複数の第1の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第1の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることであって、前記第1のカラーフィールド内の前記複数の第1の色の中の各色は、個別にワーピングされる、ことと
を行うことと、
前記第1のカラーフィールド内の前記複数の第1の色の全てに対応する前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第1のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた第1のカラーフィールドを表示することと
を行う、システム。
【請求項12】
前記一連のパルスは、前記第1の時間に中心を置かれた中心パルス、前記中心パルスの前に生じる第2のパルス、および前記中心パルスの後に生じる第3のパルスを含む、請求項11に記載のシステム。
【請求項13】
前記第2のパルスの減衰相の終了は、前記中心パルスの成長相の開始と時間的に整列させられ、
前記第3のパルスの成長相の開始は、前記中心パルスの減衰相の終了と時間的に整列させられる、請求項12に記載のシステム。
【請求項14】
前記中心パルスの重心は、前記第1の時間に生じ、前記第2のパルスの重心は、前記第1の時間の前の第2の時間に生じ、前記第3のパルスの重心は、前記第1の時間の後の第3の時間に生じる、請求項12に記載のシステム。
【請求項15】
前記中心パルスは、各々が第1の持続時間を有する第1のタイムスロットの組を含み、前記第2のパルスおよび前記第3のパルスは、各々が前記第1の持続時間を上回る第2の持続時間を有する第2のタイムスロットの組を含む、請求項12に記載のシステム。
【請求項16】
前記順次ディスプレイ上の前記ピクセルは、前記第1のタイムスロットの組または前記第2のタイムスロットの組の一部中、アクティブにされる、請求項15に記載のシステム。
【請求項17】
前記順次ディスプレイ上の前記ピクセルは、前記第1のカラーフィールド内の前記複数の第1の色の中の前記1つの色に関連付けられた色コードに応じて、前記中心パルスのタイムスロット中、アクティブにされる、請求項16に記載のシステム。
【請求項18】
前記順次ディスプレイ上の前記ピクセルは、前記第2のパルスにおけるタイムスロットと前記第3のパルスにおける対応するタイムスロットとのためにアクティブにされる、請求項16に記載のシステム。
【請求項19】
前記姿勢推定器は、ワーピングされた第2のカラーフィールドの投影のための第2の時間を決定し、前記第2の時間に対応する第2の姿勢を予測するように構成され、
前記変換ユニットは、
前記第2のカラーフィールド内の前記複数の第2の色の中の各1つの色に関して、
前記第2のカラーフィールド内の前記複数の第2の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第2の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることと
を行うことと、
前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第2のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた第2のカラーフィールドを表示することと
を行うようにさらに構成されている、請求項11に記載のシステム。
【請求項20】
プロセッサ
に順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングする方法
を実行させ
るためのコンピュータ読み取り可能なプログラムであって、
前記方法は、
複数の第1の色を含む第1のカラーフィールドと、前記第1のカラーフィールドの前記複数の第1の色とは異なる複数の第2の色を含む第2のカラーフィールドとを取得することと、
ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定することと、
前記第1の時間に対応する第1の姿勢を予測することと、
前記第1のカラーフィールド内の前記複数の第1の色の中の各1つの色に関して、
前記第1のカラーフィールド内の前記複数の第1の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第1の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることであって、前記第1のカラーフィールド内の前記複数の第1の色の中の各色は、個別にワーピングされる、ことと
を行うことと、
前記第1のカラーフィールド内の前記複数の第1の色の全てに対応する前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第1のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた第1のカラーフィールドを表示することと
を含む、コンピュータ
読み取り可能なプログラ
ム。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は、その開示全体がその全体として本明細書に完全に記載される場合と同様にあらゆる目的のために参照することによって本明細書に組み込まれる「Intra-Field Sub Code Timing In Field Sequential Displays」と題され、2018年7月23日に出願された米国仮特許出願第62/702,181号の優先権を主張する。
【0002】
本願は、その内容が参照することによってその全体として本明細書に組み込まれる「Mixed Reality System with Color Virtual Content Warping and Method of Generating Virtual Content Using Same」と題され、2018年3月16日に出願された米国特許出願第第15/924,078号に関連する。
(発明の分野)
【0003】
本開示は、仮想コンテンツのための1つ以上の色コードを異なる幾何学的位置に経時的に投影するフィールド順次ディスプレイシステムと、それを使用して複合現実体験コンテンツを生成する方法とに関する。
【背景技術】
【0004】
現代のコンピューティングおよびディスプレイ技術は、いわゆる「仮想現実」(VR)または「拡張現実」(AR)体験のための「複合現実」(MR)システムの開発を促進しており、デジタル的に再現された画像またはそれらの一部が、現実であるように見える様式、またはそのように知覚され得る様式で、ユーザに提示される。VRシナリオは、典型的に、実際の実世界の視覚的入力に対する透過性を伴わずに、デジタルまたは仮想画像情報の提示を伴う。ARシナリオは、典型的に、ユーザの周囲の実際の世界の可視化の拡張として、デジタルまたは仮想画像情報の提示を伴う(すなわち、実世界視覚的入力に対する透過性)。故に、ARシナリオは、実世界視覚的入力に対する透過性を伴うデジタルまたは仮想画像情報の提示を伴う。
【0005】
MRシステムは、典型的に、色データを生成し、それを表示し、それは、MRシナリオの現実性を増加させる。これらのMRシステムの多くは、カラー画像に対応する異なる(例えば、原)色または「フィールド」(例えば、赤色、緑色、および青色)でサブ画像を高速連続して順次投影することによって、色データを表示する。カラーサブ画像を十分に高レート(例えば、60Hz、120Hz等)で投影することは、平滑なカラーMRシナリオをユーザの記憶に配達し得る。
【0006】
種々の光学システムが、MR(VRおよびAR)シナリオを表示するために、カラー画像を含む画像を種々の深度において生成する。いくつかのそのような光学システムは、2014年11月27日に出願された米国実用特許出願第14/555,585号(弁理士整理番号第ML.20011.00)(その内容は、参照することによって、全体として記載される場合と同様に、その全体として明示的かつ完全に本明細書に組み込まれる)に説明される。
【0007】
MRシステムは、典型的に、ユーザの頭部に少なくとも緩く結合され、したがって、ユーザの頭部が移動すると移動するウェアラブルディスプレイデバイス(例えば、頭部装着型ディスプレイ、ヘルメット搭載型ディスプレイ、またはスマートグラス)を採用する。ユーザの頭部運動がディスプレイデバイスによって検出される場合、表示されているデータは、頭部姿勢(すなわち、ユーザの頭部の向きおよび/または場所)の変化を考慮するために更新されることができる。位置の変化は、課題をフィールド順次ディスプレイ技術に提示する。
【発明の概要】
【課題を解決するための手段】
【0008】
静止画像を投影することを意図する運動を受けるフィールド順次ディスプレイの画質を改良するための技法および技術が、本明細書において説明される。
【0009】
例として、頭部装着型ディスプレイデバイスを装着しているユーザが、仮想オブジェクトの仮想表現をディスプレイ上で視認し、仮想オブジェクトが現れるエリアの周囲を歩き回る場合、仮想オブジェクトは、各視点に関してレンダリングされ、ディスプレイ表面との関係とは対照的に、実空間と関係を共有するオブジェクトの周囲を歩き回っているという知覚をユーザに与えることができる。しかしながら、ユーザの頭部姿勢の変化は、変化し、動的ディスプレイシステムからの静止画像投影を維持するために、フィールド順次プロジェクタのタイミングの調節を要求する。
【0010】
従来のフィールド順次ディスプレイは、単一画像フレームのための色を指定される時系列において投影し得、フィールド間の任意の時差は、静止ディスプレイ上で視認されるとき、気付かれない。例えば、第1の時間に表示される赤色ピクセルおよび10ms後に表示される青色ピクセルは、ピクセルの幾何学的位置が判別可能時間量において変化しないので、重複するように見えるであろう。
【0011】
しかしながら、頭部装着型ディスプレイ等の可動式プロジェクタにおいて、その同じ10msインターバルにおける運動は、重複するように意図された赤色および青色ピクセルにおける顕著なシフトに対応し得る。
【0012】
いくつかの実施形態において、フィールドシーケンス内の個々の画像の色をワーピングすることは、各フレームが頭部姿勢の変化中の所与の時間におけるフィールドの適切な視点に基づくであろうから、画像の知覚を改良することができる。このソリューションを実装するそのような方法およびシステムは、米国特許出願第15/924,078号に説明される。
【0013】
フィールド順次ディスプレイの一般的頭部姿勢変化を補正するために生じるべき具体的フィールドワーピングに加え、所与のフィールドのサブコード自体も、意図される色を表す豊かな画像を適切に伝達するように調節されるべきである。
【0014】
一実施形態において、順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするコンピュータ実装方法は、異なる第1および第2の色を有する第1および第2のカラーフィールドを取得することを含む。方法は、ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定することも含む。方法は、第1の時間に対応する第1の姿勢を予測することをさらに含む。第1のカラーフィールド内の第1の色の中の各1つに関して、方法は、(a)第1のカラーフィールド内の第1の色の中の1つの色を表す入力を識別することと、(b)入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、(c)第1の姿勢に基づいて、一連のパルスのうちの各1つをワーピングすることとを含む。方法は、ワーピングされた一連のパルスに基づいて、ワーピングされた第1のカラーフィールドを生成することも含む。加えて、方法は、ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、ワーピングされた第1のカラーフィールドを表示することを含む。
【0015】
1つ以上の実施形態において、一連のパルスは、第1の時間に中心を置かれた中心パルス、中心パルスの前に生じる第2のパルス、および中心パルスの後に生じる第3のパルスを含む。第2のパルスの減衰相の終了は、中心パルスの成長相の開始と時間的に整列させられ、第3のパルスの成長相の開始は、中心パルスの減衰相の終了と時間的に整列させられる。中心パルスの重心は、第1の時間に生じ、第2のパルスの重心は、第1の時間の前の第2の時間に生じ、第3のパルスの重心は、第1の時間の後の第3の時間に生じる。いくつかの実施形態において、第1の時間と第2の時間との間の差異は、第1の時間と第3の時間との間の差異に等しい。いくつかの実施形態において、中心パルスは、各々が第1の持続時間を有する第1のタイムスロットの組を含み、第2のパルスおよび第3のパルスは、各々が第1の持続時間を上回る第2の持続時間を有する第2のタイムスロットの組を含む。順次ディスプレイ上のピクセルは、第1のタイムスロットの組または第2のタイムスロットの組の一部中、アクティブにされる。いくつかの実施形態において、順次ディスプレイ上のピクセルは、第1のカラーフィールド内の第1の色の中の1つの色に関連付けられた色コードに応じて、中心パルスのタイムスロット中、アクティブにされる。種々の実施形態において、順次ディスプレイ上のピクセルは、第2のパルスにおけるタイムスロットと第3のパルスにおける対応するタイムスロットとのためにアクティブにされる。
【0016】
1つ以上の実施形態において、方法は、ワーピングされた第2のカラーフィールドの投影のための第2の時間を決定することも含み得る。方法は、第2の時間に対応する第2の姿勢を予測することをさらに含み得る。第2のカラーフィールド内の第2の色の中の各1つに関して、方法は、(a)第2のカラーフィールド内の第2の色の中の1つの色を表す入力を識別することと、(b)入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、(c)第2の姿勢に基づいて、一連のパルスのうちの各1つをワーピングすることとを含み得る。方法は、ワーピングされた一連のパルスに基づいて、ワーピングされた第2のカラーフィールドを生成することも含み得る。加えて、方法は、ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、ワーピングされた一連のパルスに基づいて、ワーピングされた第2のカラーフィールドを表示することを含み得る。
【0017】
別の実施形態において、順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするためのシステムは、順次投影のために、異なる第1および第2の色を有する第1および第2のカラーフィールドを受信するためのワーピングユニットを含む。ワーピングユニットは、ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定し、第1の時間に対応する第1の姿勢を予測するための姿勢推定器を含む。ワーピングユニットは、第1のカラーフィールド内の第1の色の中の各1つに関して、(a)第1のカラーフィールド内の第1の色の中の1つの色を表す入力を識別し、(b)入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成し、(c)第1の姿勢に基づいて、一連のパルスのうちの各1つをワーピングするための変換ユニットも含む。変換ユニットは、ワーピングされた一連のパルスに基づいて、ワーピングされた第1のカラーフィールドを生成するようにさらに構成される。変換ユニットは、ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、ワーピングされた第1のカラーフィールドを表示するようにも構成される。
【0018】
さらに別の実施形態において、コンピュータプログラム製品は、非一過性コンピュータ読み取り可能な媒体内に具現化され、コンピュータ読み取り可能な媒体は、一続きの命令を記憶しており、一続きの命令は、プロセッサによって実行されると、順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングする方法をプロセッサに実行させる。方法は、異なる第1および第2の色を有する第1および第2のカラーフィールドを取得することを含む。方法は、ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定することも含む。方法は、第1の時間に対応する第1の姿勢を予測することをさらに含む。第1のカラーフィールド内の第1の色の中の各1つに関して、方法は、(a)第1のカラーフィールド内の第1の色の中の1つの色を表す入力を識別することと、(b)入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、(c)第1の姿勢に基づいて、一連のパルスのうちの各1つをワーピングすることとを含む。方法は、ワーピングされた一連のパルスに基づいて、ワーピングされた第1のカラーフィールドを生成することも含む。加えて、方法は、ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、ワーピングされた第1のカラーフィールドを表示することを含む。
【0019】
一実施形態において、順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするコンピュータ実装方法は、異なる第1および第2の色を有する第1および第2のカラーフィールドを取得することを含む。方法は、ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定することも含む。方法は、ワーピングされた第2のカラーフィールドの投影のための第2の時間を決定することをさらに含む。さらに、方法は、第1の時間における第1の姿勢を予測することと、第2の時間における第2の姿勢を予測することとを含む。加えて、方法は、第1の姿勢に基づいて第1のカラーフィールドをワーピングすることによって、ワーピングされた第1のカラーフィールドを生成することを含む。方法は、第2の姿勢に基づいて第2のカラーフィールドをワーピングすることによって、ワーピングされた第2のカラーフィールドを生成することも含む。
【0020】
1つ以上の実施形態において、第1のカラーフィールドは、X、Y場所における第1のカラーフィールド情報を含む。第1のカラーフィールド情報は、第1の色における第1の明度を含み得る。第2のカラーフィールドは、X、Y場所における第2のカラーフィールド情報を含み得る。第2のカラーフィールド情報は、第2の色における第2の明度を含み得る。
【0021】
1つ以上の実施形態において、ワーピングされた第1のカラーフィールドは、第1のワーピングされたX、Y場所におけるワーピングされた第1のカラーフィールド情報を含む。ワーピングされた第2のカラーフィールドは、第2のワーピングされたX、Y場所におけるワーピングされた第2のカラーフィールド情報を含み得る。第1の姿勢に基づいて第1のカラーフィールドをワーピングすることは、第1の変換を第1のカラーフィールドに適用し、ワーピングされた第1のカラーフィールドを生成することを含み得る。第2の姿勢に基づいて第2のカラーフィールドをワーピングすることは、第2の変換を第2のカラーフィールドに適用し、ワーピングされた第2のカラーフィールドを生成することを含み得る。
【0022】
1つ以上の実施形態において、方法は、ワーピングされた第1および第2のカラーフィールドを順次プロジェクタに送信することと、順次プロジェクタが、ワーピングされた第1のカラーフィールドおよびワーピングされた第2のカラーフィールドを順次投影することとも含む。ワーピングされた第1のカラーフィールドは、第1の時間に投影され得、ワーピングされた第2のカラーフィールドは、第2の時間に投影され得る。
【0023】
別の実施形態において、順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするためのシステムは、順次投影のために異なる第1および第2の色を有する第1および第2のカラーフィールドを受信するためのワーピングユニットを含む。ワーピングユニットは、それぞれのワーピングされた第1および第2のカラーフィールドの投影のための第1および第2の時間を決定し、それぞれの第1および第2の時間における第1および第2の姿勢を予測するための姿勢推定器を含む。ワーピングユニットは、それぞれの第1および第2の姿勢に基づいて、それぞれの第1および第2のカラーフィールドをワーピングすることによって、ワーピングされた第1および第2のカラーフィールドを生成するための変換ユニットも含む。
【0024】
さらに別の実施形態において、コンピュータプログラム製品は、非一過性コンピュータ読み取り可能な媒体内に具現化され、コンピュータ読み取り可能な媒体は、一続きの命令を記憶しており、一続きの命令は、プロセッサによって実行されると、順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングする方法をプロセッサに実行させる。方法は、異なる第1および第2の色を有する第1および第2のカラーフィールドを取得することを含む。方法は、ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定することも含む。方法は、ワーピングされた第2のカラーフィールドの投影のための第2の時間を決定することをさらに含む。さらに、方法は、第1の時間における第1の姿勢を予測することと、第2の時間における第2の姿勢を予測することとを含む。加えて、方法は、第1の姿勢に基づいて第1のカラーフィールドをワーピングすることによって、ワーピングされた第1のカラーフィールドを生成することを含む。方法は、第2の姿勢に基づいて第2のカラーフィールドをワーピングすることによって、ワーピングされた第2のカラーフィールドを生成することも含む。
【0025】
さらに別の実施形態において、順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするコンピュータ実装方法は、アプリケーションフレームおよびアプリケーション姿勢を取得することを含む。方法は、第1の推定される表示時間におけるアプリケーションフレームの第1のワーピングのための第1の姿勢を推定することも含む。方法は、アプリケーション姿勢および推定される第1の姿勢を使用して、アプリケーションフレームの第1のワーピングを実施し、第1のワーピングされたフレームを生成することをさらに含む。さらに、方法は、第2の推定される表示時間における第1のワーピングされたフレームの第2のワーピングのための第2の姿勢を推定することを含む。加えて、方法は、推定される第2の姿勢を使用して、第1のワーピングフレームの第2のワーピングを実施し、第2のワーピングされたフレームを生成することを含む。
【0026】
1つ以上の実施形態において、方法は、第2のワーピングされたフレームをほぼ第2の推定される表示時間において表示することを含む。方法は、第3の推定される表示時間における第1のワーピングされたフレームの第3のワーピングのための第3の姿勢を推定することと、推定される第3の姿勢を使用して、第1のワーピングフレームの第3のワーピングを実施し、第3のワーピングされたフレームを生成することとも含み得る。第3の推定される表示時間は、第2の推定される表示時間より後であり得る。方法は、第3のワーピングされたフレームをほぼ第3の推定される表示時間において表示することも含み得る。
【0027】
別の実施形態において、色割れ(「CBU」)アーチファクトを最小化するコンピュータ実装方法は、受信された眼または頭部追跡情報に基づいて、CBUアーチファクトを予測することを含む。方法は、予測されるCBUアーチファクトに基づいて、カラーフィールドレートを増加させることも含む。
【0028】
1つ以上の実施形態において、方法は、受信された眼または頭部追跡情報および増加させられたカラーフィールドレートに基づいて、第2のCBUを予測することと、予測される第2のCBUアーチファクトに基づいて、ビット深度を減少させることとを含む。方法は、増加させられたカラーフィールドレートおよび減少させられたビット深度を使用して、画像を表示することも含み得る。方法は、増加させられたカラーフィールドレートを使用して、画像を表示することをさらに含み得る。
【0029】
本開示の追加のおよび他の目的、特徴、および利点は、発明を実施するための形態、図、および請求項に説明される。
本明細書は、例えば、以下の項目も提供する。
(項目1)
順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするコンピュータ実装方法であって、前記方法は、
異なる第1および第2の色を有する第1および第2のカラーフィールドを取得することと、
ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定することと、
前記第1の時間に対応する第1の姿勢を予測することと、
前記第1のカラーフィールド内の前記第1の色の中の各1つに関して、
前記第1のカラーフィールド内の前記第1の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第1の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることと
を行うことと、
前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第1のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた第1のカラーフィールドを表示することと
を含む、方法。
(項目2)
前記一連のパルスは、前記第1の時間に中心を置かれた中心パルス、前記中心パルスの前に生じる第2のパルス、および前記中心パルスの後に生じる第3のパルスを含む、項目1に記載の方法。
(項目3)
前記第2のパルスの減衰相の終了は、前記中心パルスの成長相の開始と時間的に整列させられ、
前記第3のパルスの成長相の開始は、前記中心パルスの減衰相の終了と時間的に整列させられる、項目2に記載の方法。
(項目4)
前記中心パルスの重心は、前記第1の時間に生じ、前記第2のパルスの重心は、前記第1の時間の前の第2の時間に生じ、前記第3のパルスの重心は、前記第1の時間の後の第3の時間に生じる、項目2に記載の方法。
(項目5)
前記第1の時間と前記第2の時間との間の差異は、前記第1の時間と前記第3の時間との間の差異に等しい、項目4に記載の方法。
(項目6)
前記中心パルスは、各々が第1の持続時間を有する第1のタイムスロットの組を含み、前記第2のパルスおよび前記第3のパルスは、各々が前記第1の持続時間を上回る第2の持続時間を有する第2のタイムスロットの組を含む、項目2に記載の方法。
(項目7)
前記順次ディスプレイ上の前記ピクセルは、前記第1のタイムスロットの組または前記第2のタイムスロットの組の一部中、アクティブにされる、項目6に記載の方法。
(項目8)
前記順次ディスプレイ上の前記ピクセルは、前記第1のカラーフィールド内の前記第1の色の中の前記1つの色に関連付けられた色コードに応じて、前記中心パルスのタイムスロット中、アクティブにされる、項目7に記載の方法。
(項目9)
前記順次ディスプレイ上の前記ピクセルは、前記第2のパルスにおけるタイムスロットと前記第3のパルスにおける対応するタイムスロットとのためにアクティブにされる、項目7に記載の方法。
(項目10)
ワーピングされた第2のカラーフィールドの投影のための第2の時間を決定することと、
前記第2の時間に対応する第2の姿勢を予測することと、
前記第2のカラーフィールド内の前記第2の色の中の各1つに関して、
前記第2のカラーフィールド内の前記第2の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第2の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることと
を行うことと、
前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第2のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた第2のカラーフィールドを表示することと
をさらに含む、項目1に記載の方法。
(項目11)
順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするためのシステムであって、前記システムは、異なる第1および第2の色を有する第1および第2のカラーフィールドを受信するためのワーピングユニットを備え、
前記ワーピングユニットは、
ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定し、前記第1の時間に対応する第1の姿勢を予測するための姿勢推定器と、
変換ユニットと
を備え、
前記変換ユニットは、
前記第1のカラーフィールド内の前記第1の色の中の各1つに関して、
前記第1のカラーフィールド内の前記第1の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第1の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることと
を行うことと、
前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第1のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた第1のカラーフィールドを表示することと
を行う、システム。
(項目12)
前記一連のパルスは、前記第1の時間に中心を置かれた中心パルス、前記中心パルスの前に生じる第2のパルス、および前記中心パルスの後に生じる第3のパルスを含む、項目11に記載のシステム。
(項目13)
前記第2のパルスの減衰相の終了は、前記中心パルスの成長相の開始と時間的に整列させられ、
前記第3のパルスの成長相の開始は、前記中心パルスの減衰相の終了と時間的に整列させられる、項目12に記載のシステム。
(項目14)
前記中心パルスの重心は、前記第1の時間に生じ、前記第2のパルスの重心は、前記第1の時間の前の第2の時間に生じ、前記第3のパルスの重心は、前記第1の時間の後の第3の時間に生じる、項目12に記載のシステム。
(項目15)
前記中心パルスは、各々が第1の持続時間を有する第1のタイムスロットの組を含み、前記第2のパルスおよび前記第3のパルスは、各々が前記第1の持続時間を上回る第2の持続時間を有する第2のタイムスロットの組を含む、項目12に記載のシステム。
(項目16)
前記順次ディスプレイ上の前記ピクセルは、前記第1のタイムスロットの組または前記第2のタイムスロットの組の一部中、アクティブにされる、項目15に記載のシステム。
(項目17)
前記順次ディスプレイ上の前記ピクセルは、前記第1のカラーフィールド内の前記第1の色の中の前記1つの色に関連付けられた色コードに応じて、前記中心パルスのタイムスロット中、アクティブにされる、項目16に記載のシステム。
(項目18)
前記順次ディスプレイ上の前記ピクセルは、前記第2のパルスにおけるタイムスロットと前記第3のパルスにおける対応するタイムスロットとのためにアクティブにされる、項目16に記載のシステム。
(項目19)
前記姿勢推定器は、ワーピングされた第2のカラーフィールドの投影のための第2の時間を決定し、前記第2の時間に対応する第2の姿勢を予測するように構成され、
前記変換ユニットは、
前記第2のカラーフィールド内の前記第2の色の中の各1つに関して、
前記第2のカラーフィールド内の前記第2の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第2の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることと
を行うことと、
前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第2のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた第2のカラーフィールドを表示することと
を行うようにさらに構成されている、項目11に記載のシステム。
(項目20)
非一過性コンピュータ読み取り可能な媒体内に具現化されたコンピュータプログラム製品であって、前記非一過性コンピュータ読み取り可能な媒体は、一続きの命令を記憶しており、前記一続きの命令は、プロセッサによって実行されると、順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングする方法を前記プロセッサに実行させ、
前記方法は、
異なる第1および第2の色を有する第1および第2のカラーフィールドを取得することと、
ワーピングされた第1のカラーフィールドの投影のための第1の時間を決定することと、
前記第1の時間に対応する第1の姿勢を予測することと、
前記第1のカラーフィールド内の前記第1の色の中の各1つに関して、
前記第1のカラーフィールド内の前記第1の色の中の前記1つの色を表す入力を識別することと、
前記入力を複数のフィールドあたり入力を作成する一連のパルスとして再構成することと、
前記第1の姿勢に基づいて、前記一連のパルスのうちの各1つをワーピングすることと
を行うことと、
前記ワーピングされた一連のパルスに基づいて、前記ワーピングされた第1のカラーフィールドを生成することと、
前記ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、前記ワーピングされた第1のカラーフィールドを表示することと
を含む、コンピュータプログラム製品。
【図面の簡単な説明】
【0030】
図面は、本開示の種々の実施形態の設計および利用可能性を図示する。図は、正確な縮尺で描かれておらず、類似構造または機能の要素は、図全体を通して同様の参照番号によって表されることに留意されたい。本開示の種々の実施形態の上で列挙される利点および他の利点および目的を取得する方法をより深く理解するために、上で簡単に説明された本開示の発明を実施するための形態は、付随の図面に図示されるその具体的実施形態を参照することによって与えられるであろう。これらの図面は、本開示の典型的実施形態のみを描写し、したがって、その範囲の限定と見なされないことを理解されたい。本開示は、付随の図面の使用を通して、追加の具体性および詳細とともに記載および説明されるであろう。
【0031】
【
図1】
図1は、いくつかの実施形態による、ウェアラブルARユーザデバイスを通した拡張現実(AR)のユーザのビューを描写する。
【0032】
【
図2A】
図2A-2Cは、いくつかの実施形態による、ARシステムおよびそのサブシステムを図式的に描写する。
【
図2B】
図2A-2Cは、いくつかの実施形態による、ARシステムおよびそのサブシステムを図式的に描写する。
【
図2C】
図2A-2Cは、いくつかの実施形態による、ARシステムおよびそのサブシステムを図式的に描写する。
【0033】
【
図3】
図3および4は、いくつかの実施形態による、高速頭部移動に伴うレンダリングアーチファクトを図示する。
【
図4】
図3および4は、いくつかの実施形態による、高速頭部移動に伴うレンダリングアーチファクトを図示する。
【0034】
【
図5】
図5は、いくつかの実施形態による、例示的仮想コンテンツワーピングを図示する。
【0035】
【
図6】
図6は、いくつかの実施形態による、
図5に図示されるように、仮想コンテンツをワーピングする方法を描写する。
【0036】
【
図7A】
図7Aおよび7Bは、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツワーピングおよびその結果を描写する。
【
図7B】
図7Aおよび7Bは、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツワーピングおよびその結果を描写する。
【0037】
【
図8】
図8は、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツをワーピングする方法を描写する。
【0038】
【
図9A】
図9Aおよび9Bは、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツワーピングおよびその結果を描写する。
【
図9B】
図9Aおよび9Bは、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツワーピングおよびその結果を描写する。
【0039】
【
図10】
図10は、いくつかの実施形態による、グラフィック処理ユニット(GPU)を図式的に描写する。
【0040】
【
図11】
図11は、いくつかの実施形態による、プリミティブとして記憶される仮想オブジェクトを描写する。
【0041】
【
図12】
図12は、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツをワーピングする方法を描写する。
【0042】
【
図13】
図13は、いくつかの実施形態による、例証的コンピューティングシステムを図式的に描写するブロック図である。
【0043】
【
図14】
図14は、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツのためのワーピング/レンダリングパイプラインを描写する。
【0044】
【
図15】
図15は、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツをワーピングする際の色割れアーチファクトを最小化する方法を描写する。
【0045】
【
図16】
図16A-Bは、いくつかの実施形態による、頭部姿勢の関数として、フィールドあたり均一サブコードビット深度を表示する、フィールド順次ディスプレイのタイミング側面を描写する。
【0046】
【
図17】
図17は、いくつかの実施形態による、フィールド順次ディスプレイ内の別個のフィールドの幾何学的位置を描写する。
【0047】
【
図18A】
図18Aは、グレースケールにおける国際照明委員会(CIE)1931配色を描写する。
【0048】
【
図18B】
図18Bは、いくつかの実施形態による、頭部姿勢の関数として、単一フィールド内の不均一サブコードの幾何学的タイミング側面を描写する。
【0049】
【
図19】
図19は、いくつかの実施形態による、フィールド順次ディスプレイ内のフィールドサブコードの幾何学的位置を描写する。
【0050】
【
図20】
図20は、いくつかの実施形態による、ピクセルアクティブ化および液晶ディスプレイに関連するタイミング側面を描写する。
【0051】
【
図21】
図21は、フィールド順次ディスプレイ内の色のタイミングと一致する色輪郭化効果を描写する。
【0052】
【
図22】
図22は、いくつかの実施形態による、色サブコードを共通タイミングまたは共通時間関係に調節することを描写する。
【0053】
【
図23】
図23は、いくつかの実施形態による、時間中心に基づいて、ビット深度をフィールド内に生成するための順次パルシングを描写する。
【0054】
【
図24】
図24は、非対称サブコード照明の悪影響を描写する。
【0055】
【
図25】
図25は、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツをワーピングする方法を描写する。
【発明を実施するための形態】
【0056】
本開示の種々の実施形態は、単一実施形態または複数の実施形態においてソースからの仮想コンテンツをワーピングするためのシステム、方法、および製造品を対象とする。本開示の他の目的、特徴、および利点は、発明を実施するための形態、図、および請求項に説明される。
【0057】
種々の実施形態が、ここで、図面を参照して詳細に説明され、当業者が本開示を実践することを可能にするように、本開示の例証的例として提供されるであろう。着目すべきこととして、以下の図および例は、本開示の範囲を限定することを意味するものではない。本開示のある要素が、公知のコンポーネント(または方法またはプロセス)を使用して部分的または完全に実装され得る場合、本開示の理解のために必要なそのような公知のコンポーネント(または方法またはプロセス)のそれらの一部のみが、説明され、そのような公知のコンポーネント(または方法またはプロセス)の他の部分の詳細な説明は、本開示を曖昧にしないように、省略されるであろう。さらに、種々の実施形態は、本明細書に例証として参照されるコンポーネントの現在および将来的公知の均等物を包含する。
【0058】
仮想コンテンツワーピングシステムは、複合現実システムから独立して実装され得るが、下記のいくつかの実施形態は、例証的目的のためにのみ、ARシステムに関連して説明される。さらに、本明細書に説明される仮想コンテンツワーピングシステムは、VRシステムと同じ様式でも使用され得る。
(例証的複合現実シナリオおよびシステム)
【0059】
続く説明は、ワーピングシステムが実践され得る例証的拡張現実システムに関する。しかしながら、実施形態は、それ自体が他のタイプのディスプレイシステム(他のタイプの複合現実システムを含む)における用途にも適しており、したがって、実施形態が本明細書に開示される例証的システムのみに限定されないことを理解されたい。
【0060】
複合現実(例えば、VRまたはAR)シナリオは、多くの場合、実世界オブジェクトに関連して仮想オブジェクトに対応する仮想コンテンツ(例えば、カラー画像および音)の提示を含む。例えば、
図1を参照すると、拡張現実(AR)場面100が、描写され、AR技術のユーザは、人々、木々、背景における建物、および実世界の物理的コンクリートプラットフォーム104を特徴とする実世界の物理的公園状設定102を見ている。これらのアイテムに加え、AR技術のユーザは、物理的コンクリートプラットフォーム104上に立っている仮想ロボット像106と、マルハナバチの擬人化のように見える、飛んでいる仮想漫画状アバタキャラクタ108とも「見ている」と知覚するが、これらの仮想オブジェクト106、108は、実世界には存在しない。
【0061】
ARシナリオのように、VRシナリオも、仮想コンテンツを生成/レンダリングするために使用される姿勢を考慮しなければならない。仮想コンテンツを基準のAR/VRディスプレイフレームに対して正確にワーピングし、ワーピングされる仮想コンテンツをワーピングすることは、AR/VRシナリオを改良すること、または、少なくともAR/VRシナリオを損ねないことができる。
【0062】
続く説明は、本開示が実践され得る例証的ARシステムに関する。しかしながら、本開示は、それ自体が他のタイプの拡張現実および仮想現実システムにおける用途にも適し、したがって、本開示は、本明細書に開示される例証的システムのみに限定されないことを理解されたい。
【0063】
図2Aを参照すると、いくつかの実施形態による、ARシステム200の一実施形態が図示される。ARシステム200は、投影サブシステム208と共に動作させられ、物理的オブジェクトと混合された仮想オブジェクトの画像をユーザ250の視野内に提供し得る。このアプローチは、1つ以上の少なくとも部分的に透明な表面を採用し、それを通して、物理的オブジェクトを含む周囲環境が、見られることができ、それを通して、ARシステム200は、仮想オブジェクトの画像を生成する。投影サブシステム208は、制御サブシステム201内に格納され、制御サブシステム201は、リンク207を通してディスプレイシステム/サブシステム204に動作可能に結合される。リンク207は、有線または無線通信リンクであり得る。
【0064】
AR用途に関して、種々の仮想オブジェクトをそれぞれの物理的オブジェクトに対してユーザ250の視野内に空間的に位置付けることが望ましくあり得る。仮想オブジェクトは、画像として表されることが可能な任意の種々のデータ、情報、概念、または論理構造を有する多種多様な形態のいずれかをとり得る。仮想オブジェクトの非限定的例は、仮想テキストオブジェクト、仮想数値オブジェクト、仮想英数字オブジェクト、仮想タグオブジェクト、仮想フィールドオブジェクト、仮想チャートオブジェクト、仮想マップオブジェクト、仮想計器オブジェクト、または物理的オブジェクトの仮想視覚的表現を含み得る。
【0065】
ARシステム200は、ユーザ250によって装着されるフレーム構造202と、ディスプレイシステム204がユーザ250の眼の正面に位置付けられるように、フレーム構造202によって支持されるディスプレイシステム204と、ディスプレイシステム204の中に組み込まれた、またはそれに接続されたスピーカ206とを含む。図示される実施形態において、スピーカ206は、スピーカ206がユーザ250の外耳道(内またはその周囲)に隣接して位置付けられるように、フレーム構造202によって支持される(例えば、イヤーバッドまたはヘッドホン)。
【0066】
ディスプレイシステム204は、ユーザ250の眼に2次元および3次元コンテンツの両方を含む周囲環境に対する拡張として快適に知覚され得る光ベースの放射パターンを提示するように設計される。ディスプレイシステム204は、一続きのフレームを高周波数で提示し、それは、単一コヒーレント場面の知覚を提供する。この目的を達成するために、ディスプレイシステム204は、投影サブシステム208と、部分的に透明なディスプレイ画面とを含み、ディスプレイ画面を通して、投影サブシステム208が、画像を投影する。ディスプレイ画面は、ユーザ250の眼と周囲環境との間のユーザ250の視野内に位置付けられる。
【0067】
いくつかの実施形態において、投影サブシステム208は、走査ベースの投影デバイスの形態をとり、ディスプレイ画面は、導波管ベースのディスプレイの形態をとり、ディスプレイの中、投影サブシステム208からの走査光が投入され、例えば、無限遠(例えば、腕の長さ)より近い単一光学視認距離における画像、複数の別々の光学視認距離または焦点面における画像、および/または、立体3Dオブジェクトを表すための複数の視認距離または焦点面にスタックされた画像層を生成する。明視野内のこれらの層は、ヒト副視覚系に連続しているように見えるように十分に一緒に緊密にスタックされ得る(例えば、1つの層が、隣接する層の混同の円錐内にある)。加えて、または代替として、写真要素が、2つ以上の層にわたって混成され、それらの層がより疎らにスタックされる(例えば、1つの層が、隣接する層の混同の円錐外にある)場合でも、明視野内の層間の遷移の知覚される連続性を増加させ得る。ディスプレイシステム204は、単眼または双眼であり得る。走査アセンブリは、光ビームを生成する(例えば、異なる色の光を定義されたパターンで放出する)1つ以上の光源を含む。光源は、多種多様な形態の任意のもの、例えば、RGBソースの組(例えば、赤色、緑色、および青色光を出力することが可能なレーザダイオード)をとり得、RGBソースの組は、ピクセル情報またはデータのそれぞれのフレーム内で規定された定義されたピクセルパターンに従って、それぞれ、赤色、緑色、および青色のコヒーレントなコリメートされた光を生成するように動作可能である。レーザ光は、高色飽和を提供し、高度にエネルギー効率的である。光学結合サブシステムは、光学導波管入力装置(例えば、1つ以上の反射表面、回折格子、ミラー、ダイクロイックミラー、またはプリズム等)を含み、光学導波管入力装置は、光をディスプレイ画面の端部の中に光学的に結合する。光学結合サブシステムは、光ファイバからの光をコリメートするコリメーション要素をさらに含む。随意に、光学結合サブシステムは、光学変調装置を備え、光学変調装置は、コリメーション要素からの光を光学導波管入力装置の中心における焦点に向かって収束させ、それによって、光学導波管入力装置のサイズが最小化されることを可能にするために構成される。したがって、ディスプレイサブシステム204は、1つ以上の仮想オブジェクトの歪まされていない画像をユーザに提示するピクセル情報の一連の合成画像フレームを生成する。ディスプレイサブシステム204は、1つ以上の仮想オブジェクトの歪まされていないカラー画像をユーザに提示するピクセル情報の一連のカラー合成サブ画像フレームも生成し得る。ディスプレイサブシステムを説明するさらなる詳細は、「Display System and Method」と題された米国特許出願第14/212,961号(弁理士整理番号ML.20006.00)および「Planar Waveguide Apparatus With Diffraction Element(s) and Subsystem Employing Same」と題された第14/331,218号(弁理士整理番号ML.20020.00)(その内容は、参照することによって、全体として記載される場合と同様にその全体として明示的かつ完全に本明細書に組み込まれる)に提供される。
【0068】
ARシステム200は、ユーザ250の頭部の位置(向きを含む)および移動、および/またはユーザ250の眼の位置および眼球間距離を検出するために、フレーム構造202に搭載された1つ以上のセンサをさらに含む。そのようなセンサは、画像捕捉デバイス、マイクロホン、慣性測定ユニット(IMU)、加速度計、コンパス、GPSユニット、無線デバイス、ジャイロスコープ等を含み得る。例えば、一実施形態において、ARシステム200は、頭部装着型変換器サブシステムを含み、頭部装着型変換器サブシステムは、ユーザ250の頭部の移動を示す慣性測定値を捕捉するための1つ以上の慣性変換器を含む。そのようなデバイスは、ユーザ250の頭部移動についての情報を感知、測定、または収集するために使用され得る。例えば、これらのデバイスは、ユーザの頭部250の移動、速度、加速、および/または位置を検出/測定するために使用され得る。ユーザ250の頭部の位置(向きを含む)は、ユーザ250の「頭部姿勢」としても知られる。
【0069】
図2AのARシステム200は、1つ以上の前方に面したカメラを含み得る。カメラは、システム200の前方方向からの画像/ビデオの記録等、任意の数の目的のために採用され得る。加えて、カメラは、環境および環境内の具体的オブジェクトに対するユーザ250の距離、向き、および/または角位置を示す情報等、ユーザ250が位置する環境についての情報を捕捉するために使用され得る。
【0070】
ARシステム200は、ユーザ250の眼の角位置(片眼または両眼が向いている方向)、瞬目、および焦点深度(眼収束を検出することによって)を追跡するために、後ろ向きに面したカメラをさらに含み得る。そのような眼追跡情報は、例えば、光をエンドユーザの眼に投影し、その投影された光の少なくとも一部の戻りまたは反射を検出することによって、判別され得る。
【0071】
拡張現実システム200は、多種多様な形態のいずれかをとり得る制御サブシステム201をさらに含む。制御サブシステム201は、いくつかのコントローラ、例えば1つ以上のマイクロコントローラ、マイクロプロセッサまたは中央処理ユニット(CPU)、デジタル信号プロセッサ、グラフィック処理ユニット(GPU)、特定用途向け集積回路(ASIC)等の他の集積回路コントローラ、プログラマブルゲートアレイ(PGAS)、例えば、フィールドPGAS(FPGAS)、および/またはプログラマブル論理コントローラ(PLU)を含む。制御サブシステム201は、デジタル信号プロセッサ(DSP)、中央処理ユニット(CPU)251、グラフィック処理ユニット(GPU)252、および1つ以上のフレームバッファ254を含み得る。CPU251は、システムの全体的動作を制御する一方、GPU252は、フレームをレンダリングし(すなわち、3次元場面を2次元画像に変換する)、これらのフレームをフレームバッファ254内に記憶する。図示されないが、1つ以上の追加の集積回路が、フレームバッファ254の中へのフレームの読み込みおよび/またはフレームバッファ254からのフレームの読み取り、およびディスプレイシステム204の動作を制御し得る。フレームバッファ254の中への読み込みおよび/またはそれからの読み取りは、動的アドレッシングを採用し得、例えば、フレームは、オーバーレンダリングされる。制御サブシステム201は、読み取り専用メモリ(ROM)およびランダムアクセスメモリ(RAM)をさらに含む。制御サブシステム201は、3次元データベース260をさらに含み、それから、GPU252は、フレームをレンダリングするための1つ以上の場面の3次元データ、および3次元場面内に含まれる仮想音源に関連付けられた合成音データにアクセスすることができる。
【0072】
拡張現実システム200は、ユーザ向き検出モジュール248をさらに含む。ユーザ向きモジュール248は、ユーザ250の頭部の瞬間位置を検出し、センサから受信された位置データに基づいて、ユーザ250の頭部の位置を予測し得る。ユーザ向きモジュール248は、センサから受信された追跡データに基づいて、ユーザ250の眼、特に、ユーザ250が集中させられている方向および/または距離も追跡する。
【0073】
図2Bは、いくつかの実施形態による、ARシステム200’を描写する。
図2Bに描写されるARシステム200’は、
図2Aに描写され、上で説明されるARシステム200に類似する。例えば、ARシステム200’は、フレーム構造202と、ディスプレイシステム204と、スピーカ206と、リンク207を通してディスプレイサブシステム204に動作可能に結合された制御サブシステム201’とを含む。
図2Bに描写される制御サブシステム201’は、
図2Aに描写され、上で説明される制御サブシステム201に類似する。例えば、制御サブシステム201’は、投影サブシステム208と、画像/ビデオデータベース271と、ユーザ向きモジュール248と、CPU251と、GPU252と、3Dデータベース260と、ROMと、RAMとを含む。
【0074】
制御サブシステム201’、したがって、
図2Bに描写されるARシステム200’と、
図2Aに描写される対応するシステム/システムコンポーネントとの間の差異は、
図2Bに描写される制御サブシステム201’内のワーピングユニット280の存在である。ワーピングユニット280は、GPU252またはCPU251から独立した別個のワーピングブロックである。他の実施形態において、ワーピングユニット280は、別個のワーピングブロック内のコンポーネントであり得る。いくつかの実施形態において、ワーピングユニット280は、GPU252の内側にあり得る。いくつかの実施形態において、ワーピングユニット280は、CPU251の内側にあり得る。
図2Cは、ワーピングユニット280が、姿勢推定器282と、変換ユニット284とを含むことを示す。
【0075】
ARシステム200、200’の種々の処理コンポーネントは、分散型サブシステム内に含まれ得る。例えば、ARシステム200、200’は、有線導線または無線接続性207等によって、ディスプレイシステム204の一部に動作可能に結合されるローカル処理およびデータモジュール(すなわち、制御サブシステム201、201’)を含む。ローカル処理およびデータモジュールは、フレーム構造202に固定して取り付けられる構成、ヘルメットまたは帽子に固定して取り付けられる構成、ヘッドホンに内蔵される構成、ユーザ250の胴体に除去可能に取り付けられる構成、またはベルト結合式構成においてユーザ250の腰部に除去可能に取り付けられる構成等、種々の構成において搭載され得る。ARシステム200、200’は、有線導線または無線接続性等によって、ローカル処理およびデータモジュールに動作可能に結合された遠隔処理モジュールおよび遠隔データリポジトリをさらに含み得、それによって、遠隔モジュールは、互いに動作可能に結合され、ローカル処理およびデータモジュールに対するリソースとして利用可能である。ローカル処理およびデータモジュールは、電力効率的プロセッサまたはコントローラと、フラッシュメモリ等のデジタルメモリとを備え得、それらの両方は、可能性として処理または読み出し後のディスプレイシステム204への通過のために、センサから捕捉されたデータ、および/または、遠隔処理モジュールおよび/または遠隔データリポジトリを使用して入手および/または処理されたデータの処理、キャッシュ、および記憶を補助するために利用され得る。遠隔処理モジュールは、データおよび/または画像情報を分析および処理するように構成される1つ以上の比較的に強力なプロセッサまたはコントローラを備え得る。遠隔データリポジトリは、比較的に大規模デジタルデータ記憶設備を備え得、それは、インターネットまたは「クラウド」リソース構成における他のネットワーキング構成を通して利用可能であり得る。いくつかの実施形態において、全てのデータは、記憶され、全ての算出は、ローカル処理およびデータモジュール内で実施され、任意の遠隔モジュールからの完全に自律的使用を可能にする。上で説明される種々のコンポーネント間の結合は、ワイヤまたは光学通信を提供するために、1つ以上の有線インターフェースまたはポート、または無線通信を提供するために、RF、マイクロ波、およびIR等を介した1つ以上の無線インターフェースまたはポートを含み得る。いくつかの実装において、全ての通信は、有線であり得る一方、他の実装において、全ての通信は、光ファイバを除き、無線であり得る。
(問題およびソリューションの要約)
【0076】
光学システムがカラー仮想コンテンツを生成/レンダリングするとき、それは、ソース基準系を使用し得、ソース基準系は、仮想コンテンツがレンダリングされるときのシステムの姿勢に関連し得る。ARシステムにおいて、レンダリングされる仮想コンテンツは、実際の物理的オブジェクトと所定の関係を有し得る。例えば、
図3は、実際の物理的台312の上部に位置付けられる仮想植木鉢310を含むARシナリオ300を図示する。ARシステムは、実際の台312の場所が既知であるソース基準系に基づいて仮想植木鉢310をレンダリングしており、それによって、仮想植木鉢310は、実際の台312の上部に置かれているかのように見える。ARシステムは、第1の時間において、ソース基準系を使用して、仮想植木鉢310をレンダリングし、第1の時間の後の第2の時間において、レンダリングされた仮想植木鉢310を出力基準系に表示/投影し得る。ソース基準系と出力基準系とが同じである場合、仮想植木鉢310は、意図された場所(例えば、実際の物理的台312の上部)に現れるであろう。
【0077】
しかしながら、ARシステムの基準系が、仮想植木鉢310がレンダリングされる第1の時間と、レンダリングされた仮想植木鉢310が表示/投影される第2の時間との間の間隙において変化する場合(例えば、高速ユーザ頭部移動に伴って)、ソース基準系と出力基準系との間の不整列/差異は、視覚的アーチファクト/異常/グリッチをもたらし得る。例えば、
図4は、実際の物理的台412の上部に位置付けられるようにレンダリングされた仮想植木鉢410を含むARシナリオ400を示す。しかしながら、ARシステムは、仮想植木鉢410がレンダリングされた後であるが、表示/投影される前、右に急速に移動させられたので、仮想植木鉢410は、その意図される位置410’(想像線で示される)の右に表示される。したがって、仮想植木鉢410は、実際の物理的台412の右の空中に浮いているように見える。このアーチファクトは、仮想植木鉢が出力基準系において再レンダリングされると、是正されるであろう(ARシステム運動が中止すると仮定して)。しかしながら、アーチファクトは、依然として、一部のユーザに見え、仮想植木鉢410は、予期しない位置に一時的にジャンプすることによって、グリッチとして現れるであろう。このグリッチおよびそのような他のものは、ARシナリオの連続性の錯覚に悪影響を及ぼし得る。
【0078】
いくつかの光学システムは、仮想コンテンツが生成されたソース基準系から、仮想コンテンツが表示されるであろう出力基準系にソース仮想コンテンツの基準系をワーピングまたは変換するワーピングシステムを含み得る。
図4に描写される例において、ARシステムは、出力基準系および/または姿勢を検出および/または予測することができる(例えば、IMUまたは眼追跡を使用して)。ARシステムは、次いで、ソース基準系からのレンダリングされた仮想コンテンツを出力基準系内のワーピングされた仮想コンテンツにワーピングまたは変換することができる。
(カラー仮想コンテンツワーピングシステムおよび方法)
【0079】
図5は、いくつかの実施形態による、仮想コンテンツのワーピングを図式的に図示する。光線510によって表されるソース基準系(レンダリング姿勢)におけるソース仮想コンテンツ512が、光線510’によって表される出力基準系(推定される姿勢)におけるワーピングされた仮想コンテンツ512’にワーピングされる。
図5に描写されるワーピングは、右520への頭部回転を表し得る。ソース仮想コンテンツ512は、ソースX、Y場所に配置されるが、ワーピングされた仮想コンテンツ512’は、出力X’、Y’場所に変換される。
【0080】
図6は、いくつかの実施形態による、仮想コンテンツをワーピングする方法を描写する。ステップ612において、ワーピングユニット280は、仮想コンテンツ、ベース姿勢(すなわち、ARシステム200、200’の現在の姿勢(現在の基準系))、レンダリング姿勢(すなわち、仮想コンテンツをレンダリングするために使用されるARシステム200、200’の姿勢(ソース基準系))、および推定される照明時間(すなわち、ディスプレイシステム204が照明されるであろう推定される時間(推定される出力基準系))を受信する。いくつかの実施形態において、ベース姿勢は、レンダリング姿勢より新しい/より最近/より最新であり得る。ステップ614において、姿勢推定器282が、ベース姿勢およびARシステム200、200’についての情報を使用して、推定される照明時間における姿勢を推定する。ステップ616において、変換ユニット284が、推定される姿勢(推定される照明時間から)およびレンダリング姿勢を使用して、ワーピングされた仮想コンテンツを受信された仮想コンテンツから生成する。
【0081】
仮想コンテンツが色を含むとき、いくつかのワーピングシステムは、単一の出力基準系(例えば、単一の推定される照明時間からの単一の推定される姿勢)における単一X’、Y’場所を使用して、カラー画像に対応する/カラー画像を形成するカラーサブ画像またはフィールドの全てをワーピングする。しかしながら、いくつかの投影ディスプレイシステム(例えば、順次投影ディスプレイシステム)は、いくつかのARシステムにおけるもののように、カラーサブ画像/フィールドの全てを同時に投影するわけではない。例えば、各カラーサブ画像/フィールドの投影中、ある程度の遅れが存在し得る。照明時間の差異である、各カラーサブ画像/フィールドの投影中のこの遅れは、高速頭部移動中、カラー干渉縞アーチファクトを最終画像内にもたらし得る。
【0082】
例えば、
図7Aは、いくつかの実施形態による、いくつかのワーピングシステムを使用したカラー仮想コンテンツのワーピングを図式的に図示する。ソース仮想コンテンツ712は、3つのカラーセクション、すなわち、赤色セクション712Rと、緑色セクション712Gと、青色セクション712Bとを有する。この例において、各カラーセクションは、カラーサブ画像/フィールド712R’’、712G’’、712B’’に対応する。いくつかのワーピングシステムは、光線710’’(例えば、緑色サブ画像およびその照明時間t1に対応する基準系710’’)によって表される単一の出力基準系(例えば、推定姿勢)を使用して、全3つのカラーサブ画像712R’’、712G’’、712B’’をワーピングする。しかしながら、いくつかの投影システムは、カラーサブ画像712R’’、712G’’、712B’’を同時に投影しない。代わりに、カラーサブ画像712R’’、712G’’、712B’’は、3つの若干異なる時間(時間t0、t1、およびt2における光線710’、710’’、710’’’によって表される)において投影される。サブ画像の投影中の遅れのサイズは、投影システムのフレーム/リフレッシュレートに依存し得る。例えば、投影システムが、60Hz以下(例えば、30Hz)フレームレートを有する場合、遅れは、高速移動視認者またはオブジェクトに伴って、カラー干渉縞アーチファクトをもたらし得る。
【0083】
図7Bは、いくつかの実施形態による、
図7Aに描写されるものに類似する仮想コンテンツワーピングシステム/方法によって生成されたカラー干渉縞アーチファクトを図示する。赤色サブ画像712R’’は、
図7Aにおいて光線710’’によって表される出力基準系(例えば、推定姿勢)を使用してワーピングされるが、光線710’によって表される時間t0において投影されるので、赤色サブ画像712R’’は、意図されるワーピングを行き過ぎるように現れる。この行き過ぎ量は、
図7Bにおいて、右干渉縞画像712R’’として現れる。緑色サブ画像712G’’は、
図7Aにおいて光線710’’によって表される出力基準系(例えば、推定される姿勢)を使用してワーピングされ、光線710’’によって表される時間t1において投影されるので、緑色サブ画像712G’’は、意図されるワーピングを用いて投影される。これは、
図7Bにおいて、中心画像712G’’によって表される。青色サブ画像712B’’は、
図7Aにおいて光線710’’によって表される出力基準系(例えば、推定される姿勢)を使用してワーピングされるが、光線710’’’によって表される時間t2において投影されるので、青色サブ画像712B’’は、意図されるワーピングに達しないように現れる。この負の行き過ぎ量は、
図7Bにおいて、左干渉縞画像712B’’として現れる。
図7Bは、3つの重複するR、G、Bカラーフィールド(すなわち、カラーでレンダリングされた身体)を有する身体を含むワーピングされた仮想コンテンツのユーザの感じ方における再構築を図示する。
図7Bは、赤色右干渉縞画像色割れ(「CBU」)アーチファクト712R’’と、中心画像712G’’と、青色左干渉縞画像CBUアーチファクト712B’’とを含む。
【0084】
図7Bは、例証的目的のために、行き過ぎおよび負の行き過ぎ効果を誇張する。これらの効果のサイズは、投影システムのフレーム/フィールドレートおよび仮想コンテンツと出力基準系(例えば、推定される姿勢)の相対的速度に依存する。これらの行き過ぎおよび負の行き過ぎ効果がより小さいとき、それらは、カラー/レインボー干渉縞として現れ得る。例えば、十分に低速のフレームレートにおいて、野球のボール等の白色仮想オブジェクトは、カラー(例えば、赤色、緑色、および/または青色)干渉縞を有し得る。干渉縞を有する代わりに、サブ画像(例えば、赤色、緑色、および/または青色)に合致する一連のソリッドカラーを伴う仮想オブジェクトは、グリッチをもたらし得る(すなわち、高速移動中、予期しない位置にジャンプし、高速移動後、予期される位置に戻るようにジャンプするように現れる)。そのようなソリッドカラー仮想オブジェクトは、高速移動中、振動するようにも現れ得る。
【0085】
これらの限界およびその他に対処するために、本明細書に説明されるシステムは、カラーサブ画像/フィールドの数に対応するいくつかの基準系を使用して、カラー仮想コンテンツをワーピングする。例えば、
図8は、いくつかの実施形態による、カラー仮想コンテンツをワーピングする方法を描写する。ステップ812において、ワーピングユニット280が、仮想コンテンツ、ARシステム200、200’のベース姿勢(すなわち、現在の姿勢(現在の基準系)、レンダリング姿勢(すなわち、仮想コンテンツ(ソース基準系)をレンダリングするために使用されるARシステム200、200’の姿勢)、およびサブ画像/カラーフィールド(R、G、B)ごとの推定される照明時間(すなわち、ディスプレイシステム204がディスプレイシステム204に関連する各サブ画像(各サブ画像の推定される出力基準系)のために照明される推定される時間)を受信する。ステップ814において、ワーピングユニット280が、仮想コンテンツを各サブ画像/カラーフィールド(R、G、B)に分割する。
【0086】
ステップ816R、816G、および816Bにおいて、姿勢推定器282が、ベース姿勢(例えば、現在の基準系)およびARシステム200、200’についての情報を使用して、R、G、Bサブ画像/フィールドのためのそれぞれの推定される照明時間における姿勢を推定する。ステップ818R、818G、および818Bにおいて、変換ユニット284が、それぞれの推定されるR、G、およびB姿勢およびレンダリング姿勢(例えば、ソース基準系)を使用して、R、G、およびBのワーピングされた仮想コンテンツを受信された仮想コンテンツサブ画像/カラーフィールド(R、G、B)から生成する。ステップ820において、変換ユニット284が、順次表示のために、ワーピングされたR、G、Bサブ画像/フィールドを組み合わせる。
【0087】
図9Aは、いくつかの実施形態による、ワーピングシステムを使用したカラー仮想コンテンツのワーピングを図式的に図示する。ソース仮想コンテンツ912は、
図7Aにおけるソース仮想コンテンツ712と同じである。ソース仮想コンテンツ912は、3つのカラーセクション、すなわち、赤色セクション912Rと、緑色セクション912Gと、青色セクション912Bとを有する。各カラーセクションは、カラーサブ画像/フィールド912R’、912G’’、912B’’’に対応する。本明細書における実施形態によるワーピングシステムは、光線910’、910’’、910’’’によって表されるそれぞれの出力基準系(例えば、推定される姿勢)を使用して、各対応するカラーサブ画像/フィールド912R’、912G’’、912B’’’をワーピングする。これらのワーピングシステムは、カラー仮想コンテンツをワーピングするとき、カラーサブ画像912R’、912G’’、912B’’’の投影のタイミング(すなわち、t0、t1、t2)を考慮する。投影のタイミングは、投影のタイミングを計算するために使用される投影システムのフレーム/フィールドレートに依存する。
【0088】
図9Bは、
図9Aに描写されるものに類似する仮想コンテンツワーピングシステム/方法によって生成されたワーピングされたカラーサブ画像912R’、912G’’、912B’’’を図示する。赤色、緑色、および青色サブ画像912R’、912G’’、912B’’’は、光線910’、910’’、910’’’によって表されるそれぞれの出力基準系(例えば、推定される姿勢)を使用してワーピングされ、同一光線910’、910’’、910’’’によって表される時間t0、t1、t2において投影されるので、サブ画像912R’、912G’’、912B’’’は、意図されるワーピングを用いて投影される。
図9Bは、3つの重複するR、G、Bカラーフィールドを有する身体(すなわち、カラーでレンダリングされた身体)を含むいくつかの実施形態によるワーピングされた仮想コンテンツのユーザの感じ方における再構築を図示する。
図9Bは、3つのサブ画像/フィールド912R’、912G’’、912B’’’が、適切な時間に意図されるワーピングを用いて投影されるので、カラーにおける身体の実質的に正確なレンダリングである。
【0089】
本明細書における実施形態によるワーピングシステムは、単一の基準系を使用する代わりに、投影のタイミング/照明時間を考慮する対応する基準系(例えば、推定される姿勢)を使用して、サブ画像/フィールド912R’、912G’’、912B’’’をワーピングする。その結果、本明細書における実施形態によるワーピングシステムは、カラー仮想コンテンツを異なる色/フィールドの別個のサブ画像にワーピングしながら、CBU等のワーピング関連色アーチファクトを最小化する。カラー仮想コンテンツのより正確なワーピングは、より現実的および真実味のあるARシナリオに寄与する。
(例証的グラフィック処理ユニット)
【0090】
図10は、一実施形態による、カラー仮想コンテンツを種々のカラーサブ画像またはフィールドに対応する出力基準系にワーピングするための例示的グラフィック処理ユニット(GPU)252を図式的に描写する。GPU252は、ワーピングされるべき生成されたカラー仮想コンテンツを記憶するための入力メモリ1010を含む。一実施形態において、カラー仮想コンテンツは、プリミティブ(例えば、
図11において、三角形1100)として記憶される。GPU252は、コマンドプロセッサ1012も含み、それは、(1)カラー仮想コンテンツを入力メモリ1010から受信し/読み取り、(2)カラー仮想コンテンツをカラーサブ画像に、それらのカラーサブ画像をスケジューリングユニットに分割し、(3)並列処理のために、スケジューリングユニットをレンダリングパイプラインに沿って波またはワープにおいて送信する。GPU252は、スケジューラ1014をさらに含み、スケジューリングユニットをコマンドプロセッサ1012から受信する。スケジューラ1014は、レンダリングパイプラインに沿って任意の特定の時間に、コマンドプロセッサ1012からの「新しい作業」が送信されるべきか、レンダリングパイプライン内の下流から戻る「古い作業」(下記に説明される)が送信されるべきかも決定する。事実上、スケジューラ1014は、GPU252が種々の入力データを処理する順序を決定する。
【0091】
GPU252は、GPUコア1016を含み、それは、スケジューリングユニットを並行して処理するために、いくつかの並行実行可能コア/ユニット(「シェーダコア」)1018を有する。コマンドプロセッサ1012は、カラー仮想コンテンツをシェーダコア1018の数と等しい数(例えば、32)に分割する。GPU252は、「先入れ先出し」(「FIFO」)メモリ1020も含み、それは、GPUコア1016からの出力を受信する。FIFOメモリ1020から、出力は、GPUコア1016によるレンダリングパイプラインの追加の処理の中への挿入のために、「古い作業」としてスケジューラ1014に戻るようにルーティングされ得る。
【0092】
GPU252は、FIFOメモリ1020からの出力を受信し、表示のために出力をラスタ化するラスタ演算ユニット(「ROP」)1022をさらに含む。例えば、カラー仮想コンテンツのプリミティブは、三角形の頂点の座標として記憶され得る。GPUコア1016による処理(その間、三角形1100の3つの頂点1110、1112、1114がワーピングされ得る)後、ROP1022は、3つの頂点1110、1112、1114によって画定された三角形1100の内側のピクセル1116を決定し、カラー仮想コンテンツ内のそれらのピクセル1116を充填する。ROP1022は、深度試験を仮想コンテンツに実施し得る。カラー仮想コンテンツを処理するために、GPU252は、異なる原色のサブ画像の並列処理のための1つ以上のROP1022R、1022B、1022Gを含み得る。
【0093】
GPU252は、ROP1022からのワーピングされたカラー仮想コンテンツを一時的に記憶するためのバッファメモリ1024も含む。バッファメモリ1024内のワーピングされたカラー仮想コンテンツは、出力基準系内の視野の1つ以上のX、Y位置における明度/色および深度情報を含み得る。バッファメモリ1024からの出力は、GPUコア1016によるレンダリングパイプラインの追加の処理の中への挿入のために、またはディスプレイシステムの対応するピクセル内における表示のために、スケジューラ1014に「古い作業」として戻るようにルーティングされ得る。入力メモリ1010内のカラー仮想コンテンツの各フラグメントは、少なくとも2回、GPUコア1016によって処理される。GPUコア1016は、三角形1100の頂点1110、1112、1114を最初に処理し、次いで、三角形1100の内側のピクセル1116を処理する。入力メモリ1010内のカラー仮想コンテンツ全てのフラグメントが、ワーピングされ、深度試験される(必要な場合)と、バッファメモリ1024は、出力基準系において視野を表示するために必要とされる明度/色および深度情報の全てを含むであろう。
(カラー仮想コンテンツワーピングシステムおよび方法)
【0094】
頭部姿勢変化を伴わない標準的画像処理において、GPU252による処理の結果は、それぞれのX、Y値(例えば、各ピクセル)における色/明度値および深度値である。しかしながら、頭部姿勢変化に伴って、仮想コンテンツは、頭部姿勢変化に従うようにワーピングされる。カラー仮想コンテンツの場合、各カラーサブ画像が、別個にワーピングされる。カラー仮想コンテンツをワーピングするための既存の方法において、カラー画像に対応するカラーサブ画像は、単一の出力基準系(例えば、緑色サブ画像に対応する)を使用してワーピングされる。上で説明されるように、それは、カラー干渉縞およびCBU等の他の視覚的アーチファクトをもたらし得る。
【0095】
図12は、CBU等の視覚的アーチファクトを最小化しながらカラー仮想コンテンツをワーピングする方法1200を描写する。ステップ1202において、ワーピングシステム(例えば、そのGPUコア1016および/またはワーピングユニット280)は、R、G、およびBサブ画像のための投影/照明時間を決定する。この決定は、フレームレートおよび関連投影システムの他の特性を使用する。
図9Aにおける例において、投影時間は、t0、t1、およびt2および光線910’、910’’、910’’’に対応する。
【0096】
ステップ1204において、ワーピングシステム(例えば、そのGPUコア1016および/または姿勢推定器282)が、R、G、およびBサブ画像のための投影時間に対応する姿勢/基準系を予測する。この予測は、現在の姿勢、システムIMU速度、およびシステムIMU加速を含む種々のシステム入力を使用する。
図9Aにおける例において、R、G、Bの姿勢/基準系は、光線t0、t1、およびt2および910’、910’’、910’’’に対応する。
【0097】
ステップ1206において、ワーピングシステム(例えば、そのGPUコア1016、ROP1022、および/または変換ユニット284)が、ステップ1204において予測されたRの姿勢/基準系を使用して、Rサブ画像をワーピングする。ステップ1208において、ワーピングシステム(例えば、そのGPUコア1016、ROP1022、および/または変換ユニット284)が、ステップ1204において予測されたGの姿勢/基準系を使用して、Gサブ画像をワーピングする。ステップ1210において、ワーピングシステム(例えば、そのGPUコア1016、ROP1022、および/または変換ユニット284)が、ステップ1204において予測されたBの姿勢/基準系を使用して、Bサブ画像をワーピングする。それぞれの姿勢/基準系を使用して別個のサブ画像/フィールドをワーピングすることは、これらの実施形態をカラー仮想コンテンツをワーピングするための既存の方法と区別する。
【0098】
ステップ1212において、ワーピングシステムに動作可能に結合された投影システムが、ステップ1202において決定されたR、G、およびBサブ画像のための投影時間において、R、G、Bサブ画像を投影する。
【0099】
上で説明されるように、
図10に描写される方法1000も、任意のGPU252またはCPU251から独立した別個のワーピングブロック280上で実行され得る。さらに別の実施形態において、
図10に描写される方法1000は、CPU251上で実行され得る。さらに他の実施形態において、
図10に描写される方法1000は、GPU252、CPU251、および別個のワーピングユニット280の種々の組み合わせ/副次的組み合わせ上で実行され得る。
図10に描写される方法1000は、システムリソース利用可能性に従って特定の時間における種々の実行モデルを使用して実行され得る画像処理パイプラインである。
【0100】
各カラーサブ画像/フィールドに対応する予測される姿勢/基準系を使用して、カラー仮想コンテンツをワーピングすることは、カラー干渉縞および他の視覚的異常を低減させる。これらの異常を低減させることは、より現実的および没入型の複合現実シナリオをもたらす。
(システムアーキテクチャ概要)
【0101】
図13は、いくつかの実施形態による、例証的コンピューティングシステム1300のブロック図である。コンピュータシステム1300は、サブシステムおよびデバイスを相互接続する情報を通信するためのバス1306または他の通信機構を含み、サブシステムおよびデバイスは、プロセッサ1307、システムメモリ1308(例えば、RAM)、静的記憶デバイス1309(例えば、ROM)、ディスクドライブ1310(例えば、磁気または光学)、通信インターフェース1314(例えば、モデムまたはEthernet(登録商標)カード)、ディスプレイ1311(例えば、CRTまたはLCD)、入力デバイス1312(例えば、キーボード)、およびカーソル制御等である。
【0102】
いくつかの実施形態によると、コンピュータシステム1300は、プロセッサ1307がシステムメモリ1308内に含まれる1つ以上の一続きの1つ以上の命令を実行することによって、具体的動作を実施する。そのような命令は、静的記憶デバイス1309またはディスクドライブ1310等の別のコンピュータ読み取り可能な/使用可能媒体からシステムメモリ1308の中に読み込まれ得る。代替実施形態において、有線回路が、ソフトウェア命令の代わりに、またはそれと組み合わせて、本開示を実装するために使用され得る。したがって、実施形態は、ハードウェア回路および/またはソフトウェアの任意の具体的組み合わせに限定されない。一実施形態において、用語「論理」は、本開示の全部または一部を実装するために使用される任意の組み合わせのソフトウェアまたはハードウェアを意味し得る。
【0103】
用語「コンピュータ読み取り可能な媒体」または「コンピュータ使用可能媒体」は、本明細書で使用されるように、実行のための命令をプロセッサ1307に提供することにおいて関与する任意の媒体を指す。そのような媒体は、限定ではないが、不揮発性媒体および揮発性媒体を含む多くの形態をとり得る。不揮発性媒体は、例えば、ディスクドライブ1310等の光学または磁気ディスクを含む。揮発性媒体は、システムメモリ1308等の動的メモリを含む。
【0104】
一般的形態のコンピュータ読み取り可能な媒体は、例えば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD-ROM、任意の他の光学媒体、パンチカード、紙テープ、孔のパターンを伴う任意の他の物理的媒体、RAM、PROM、EPROM、FLASH(登録商標)-EPROM(例えば、NANDフラッシュ、NORフラッシュ)、任意の他のメモリチップまたはカートリッジ、またはコンピュータが読み取り得る任意の他の媒体を含む。
【0105】
いくつかの実施形態において、本開示を実践するための一続きの命令の実行は、単一コンピュータシステム1300によって実施される。いくつかの実施形態によると、通信リンク1315(例えば、LAN、PTSN、または無線ネットワーク)によって結合される2つ以上のコンピュータシステム1300が、互いに協調して、本開示を実践するために要求される一続きの命令を実施し得る。
【0106】
コンピュータシステム1300は、通信リンク1315および通信インターフェース1314を通して、プログラム、例えば、アプリケーションコードを含むメッセージ、データ、および命令を伝送および受信し得る。受信されたプログラムコードは、それが受信されると、プロセッサ1307によって実行され、および/または、後の実行のために、ディスクドライブ1310または他の不揮発性記憶装置内に記憶され得る。記憶媒体1331内のデータベース1332は、データインターフェース1333を介して、システム1300によってアクセス可能なデータを記憶するために使用され得る。
(代替ワーピング/レンダリングパイプライン)
【0107】
図14は、いくつかの実施形態による、マルチフィールド(カラー)仮想コンテンツのためのワーピング/レンダリングパイプライン1400を描写する。パイプライン1400は、2つの側面を具現化する:(1)多段階/結合解除ワーピング、(2)アプリケーションフレームと照明フレームとの間の頻度変動。
((1)多段階/結合解除ワーピング)
【0108】
パイプライン1400は、1つ以上のワーピング段階を含む。1412において、アプリケーションCPU(「クライアント」)が、仮想コンテンツを生成し、それは、アプリケーションGPU252によって1つ以上の(例えば、R、G、B)フレームおよび姿勢1414に対して処理される。1416において、ワーピング/合成器CPUおよびそのGPU252が、各フレームに関して第1の推定される姿勢を使用して、第1のワーピングを実施する。パイプライン1400の後半(すなわち、照明により近い)において、ワーピングユニット1420が、各フレームに関して第2の推定される姿勢を使用して、各フレーム1422R、1422G、1422Bに関して第2のワーピングを実施する。第2の推定される姿勢は、第2の推定される姿勢が照明により近いと決定されるので、それぞれの第1の推定される姿勢より正確であり得る。2回ワーピングされたフレーム1422R、1422G、1422Bは、t0、t1、およびt2において表示される。
【0109】
第1のワーピングは、後のワーピングのために仮想コンテンツのフレームを整列させるために使用され得る最良推量であり得る。これは、計算集約的ワーピングであり得る。第2のワーピングは、それぞれの1回ワーピングされたフレームの順次補正ワーピングであり得る。第2のワーピングは、あまり計算集約的ワーピングではなく、姿勢の第2の推定と表示/照明との間の時間を短縮し、それによって、正確度を増加させ得る。
((2)頻度変動)
【0110】
いくつかの実施形態において、クライアントまたはアプリケーションと表示または照明との頻度(すなわち、フレームレート)は、合致しないこともある。いくつかの実施形態において、照明フレームレートは、アプリケーションフレームレートの2倍であり得る。例えば、照明フレームレートは、60Hzであり得、アプリケーションフレームレートは、30Hzであり得る。
【0111】
そのような頻度不整合を伴うワーピング問題に対処するために、パイプライン1400は、フレーム1414あたり2組の2回ワーピングされたフレーム1422R、1422G、1422B(t0-t2における投影のため)と1424R、1424G、1424B(t3-t5における投影のため)とをアプリケーションCPU1412およびGPU252から生成する。同じフレーム1414と第1のワーピングされたフレーム1418とを使用して、ワーピングユニット1420は、第1および第2の組の2回ワーピングされたフレーム1422R、1422G、1422Bと1424R、1424G、1424Bとを順次生成する。これは、アプリケーションフレーム1414あたり2倍の数のワーピングされたフレーム1422、1424を提供する。第2のワーピングは、あまり計算集約的ワーピングではなく、プロセッサ/電力需要および熱生成をさらに低減させ得る。
【0112】
パイプライン1400は、2:1の照明/アプリケーション比率を描写するが、その比率は、他の実施形態において、変動し得る。例えば、照明/アプリケーション比率は、3:1、4:1、2.5:1等であり得る。分数比率を伴う実施形態において、直近の生成されたアプリケーションフレーム1414が、パイプラインにおいて使用され得る。
(代替の色割れを最小化する方法)
【0113】
図15は、いくつかの実施形態による、順次表示のためにマルチフィールド(カラー)仮想コンテンツをワーピングすることにおける色割れ(CBU)アーチファクトを最小化する方法1500を描写する。ステップ1512において、CPUが、眼および/または頭部追跡情報を受信する(例えば、眼追跡カメラまたはIMUから)。ステップ1514において、CPUが、眼および/または頭部追跡情報を分析し、CBUアーチファクトを予測する(例えば、ディスプレイシステムの特性に基づいて)。ステップ1516において、CBUが予測される場合、方法1500は、ステップ1518に進み、CPUは、カラーフィールドレートを増加させる(例えば、180Hzから360Hzに)。ステップ1516において、CBUが予測されない場合、方法1500は、ステップ1526に進み、画像(例えば、分割およびワーピングされたフィールド情報)は、システムデフォルトカラーフィールドレートおよびビット深度(例えば、180Hzおよび8ビット)を使用して表示される。
【0114】
ステップ1518においてカラーフィールドレートを増加させた後、システムは、ステップ1520において、眼および/または頭部追跡情報を再分析し、CBUアーチファクトを予測する。ステップ1522において、CBUが予測される場合、方法1500は、ステップ1524に進み、CPUは、ビット深度を減少させる(例えば、8ビットから4ビットに)。ビット深度を減少させた後、画像(例えば、分割およびワーピングされたフィールド情報)は、増加させられたカラーフィールドレートおよび減少させられたビット深度(例えば、360Hzおよび4ビット)を使用して表示される。
【0115】
ステップ1522において、CBUが予測されない場合、方法1500は、ステップ1526に進み、画像(例えば、分割およびワーピングされたフィールド情報)は、増加させられたカラーフィールドレートおよびシステムデフォルトビット深度(例えば、180Hzおよび8ビット)を使用して表示される。
【0116】
画像(例えば、分割およびワーピングされたフィールド情報)が、調節またはシステムデフォルトカラーフィールドレートおよびビット深度を使用して表示された後、CPUは、ステップ1512に戻り、方法1500を繰り返す前、ステップ1528において、カラーフィールドレートおよびビット深度をシステムデフォルト値にリセットする。
【0117】
予測されるCBUに応答して、カラーフィールドレートおよびビット深度を調節することによって、
図15に描写される方法1500は、CBUアーチファクトを最小化する方法を図示する。方法1500は、本明細書に説明される他の方法(例えば、方法800)と組み合わせられ、CBUアーチファクトをさらに低減させ得る。
図15に描写される方法1500におけるステップの大部分は、CPUによって実施されるが、これらのステップの一部または全部は、代わりに、GPUまたは専用コンポーネントによって実施されることができる。
(フィールド順次ディスプレイシステムにおけるフィールド内サブコードタイミングを使用したカラー仮想コンテンツワーピング)
【0118】
ここで
図16Aを参照すると、いくつかの実施形態による、例証的フィールド順次照明シーケンスが、頭部姿勢の変化に対して示される。
図9Aに関連して議論されるように、入力画像1610は、3つの色セクション、すなわち、赤色セクションと、緑色セクションと、青色セクションとを有する。各色セクションは、入力画像1610のそれぞれの色サブ画像/フィールド1620、1630、1640に対応する。いくつかの実施形態において、ワーピングシステムは、カラー仮想コンテンツをワーピングするとき、カラーフィールドの投影のタイミングt
0、t
1、およびt
2を考慮する。
【0119】
赤色-緑色-青色(RGB)カラーシステムにおいて、種々の色は、赤色、緑色、および青色カラーフィールドの組み合わせから形成され得る。各色は、赤色、緑色、および青色カラーフィールドのうちの各1つを表す整数を含むコードを使用して表され得る。赤色、緑色、および青色カラーは、各々、8ビットを使用し得、それらは、サブコードに対応する0から255の整数値を有する。例えば、赤色カラーは、(R=255、G=0、B=0)として表され得、緑色カラーは、(0、255、0)として表され得、青色カラーは、(0、0、255)として表され得る。種々の陰影は、原色フィールド(赤色、緑色、青色)の量を表す整数の値を修正することによって形成される。これは、下記により詳細に議論される。
【0120】
図16Bは、各構成カラーフィールドの完全サブコードに関するシグモイド成長/プラトー/減衰形態のフィールドビット深度パターンを示す。例えば、赤色カラーフィールドに関して、完全サブコードは、コード(255、X、Y)を伴う全ての色を含み、xおよびyの各々は、0~255の任意の値をとることができる。シグモイド関数(例えば、フィールドビット深度パターン)1620’は、赤色カラーフィールドの完全サブコードに対応し、シグモイド関数1630’は、緑色カラーフィールドの完全サブコードに対応し、シグモイド関数1640’は、青色カラーフィールドの完全サブコードに対応する。示されるように、シグモイド関数1620’、1630’、および1640’の各々は、シグモイド成長セグメント1602、プラトーセグメント1604、および減衰セグメント1606を有する。
【0121】
ソース入力画像1610を前提とすると、ユーザの頭部が移動するとき、カラーフィールドの赤色、緑色、および青色は、それぞれのフィールドがシーケンス内に位置する所与の時間に対応する適切なワーピングを用いて、表示されるべきである。いくつかの実施形態において、カラーフィールドの所与のビット深度に関して、タイミングは、そのフィールドのために配分されたそのカラーフィールドのディスプレイシーケンスの重心に位置付けられる。例えば、赤色カラーフィールドディスプレイシグモイド関数1620’の重心は、第1の時間(t0)における頭部姿勢位置と整列させられ、緑色カラーフィールドディスプレイシグモイド関数1630’の重心は、第1の時間より後の第2の時間(t1)における頭部姿勢位置と整列させられ、青色カラーフィールドディスプレイシグモイド関数1640’の重心は、第1および第2の時間より後の第3の時間(t2)における頭部姿勢位置と整列させられる。
【0122】
図17は、頭部姿勢変化を受けるときのそれぞれのフィールドの不均一タイミングシーケンスに関する幾何学的関係を図示する。赤色、緑色、および青色カラーフィールドに関する幾何学的位置は、互いにオフセットされているが、変化の程度は、頭部姿勢の変化の程度と一致し、所与のピクセルにおいて重複フィールドを伴うより均一画像を提示し、所望の正味カラーフィールドを生成する。
【0123】
図16および17の各々は、構成カラーフィールドの完全サブコードに関するシグモイド成長/プラトー/減衰形態のフィールドビット深度パターンを図示する。
【0124】
但し、色が等しい構成サブコードの組み合わせとして単に作成されるわけではなく、種々の色が異なる量の赤色、緑色、および青色サブコードを必要とすることを理解されるであろう。例えば、
図18Aにおいて1810によってグレースケールで表される国際照明委員会(CIE)1931配色を見ると、任意の1つの色は、サブコードによって表される複数のフィールド入力の組み合わせである。
図16Bのシグモイド関数1620’、1630’、および1640’は、各フィールド(例えば、スキーム1810によってサブコーディングされるような赤色の色に関する(255、0、0)、緑色の色に関する(0、255、0)、青色の色に関する(0、0、255))の最大潜在性を表す。
【0125】
具体的な色は、そのような均一なサブコードを共有しないこともある。例えば、桃色は、(255、192、203)として表される赤色255、緑色192、および青色203の組み合わせを有し得る一方、橙色は、(255、165、0)として表される赤色255、緑色165、および青色0の組み合わせを有し得る。
【0126】
構成色のサブコードは、可変シグモイド形態を対応して有するであろう。カラーフィールドの赤色を例示的セットとして使用すると、赤色カラーフィールドの種々のサブコードが、シグモイド関数1822、1824、および1826によって、
図18Bに図示され、各シグモイド関数は、異なるサブコードに対応する。例えば、シグモイド関数1822によって表される赤色の第1のサブコード(例えば、(255、10、15))は、シーケンスにおけるフィールド時間全体にわたって赤色であり得る一方、シグモイド関数1824および1826は、シーケンスに配分されたフィールド時間内の空間光変調器のパルス下の所与のピクセルのアクティブ化のより少ない時間に対応する赤色の異なるサブコード(すなわち、それぞれ、第2のサブコード(例えば、(255、100、100))および第3のサブコード(例えば、(255、150、200)))を表す。一般に、ディスプレイ技術において、成長相の開始は、任意のサブコードに共通であるが、減衰部分は、不均一時間から開始する。したがって、特定のシグモイドパターンおよび任意の所与のサブコードの結果として生じる重心は、サブコードがシーケンスにおけるフィールドのタイミングの共通開始時間において開始されるとき、互いに対してシフトされる。
【0127】
従来のフィールド順次ディスプレイシステムにおいて、サブコードは、サブコードのシグモイドに関する重心が互いにオフセットされるであろうように、共通時間において開始される。
図18Bに図示されるように、シグモイド関数1822によって表される赤色の第1のサブコードに関する重心は、t
0に現れるが、シグモイド関数1824および1826によってそれぞれ表される赤色の第2および第3のサブコードに関する重心は、それぞれ、t
0-nおよびt
0-n-mに現れる。グループ化1850は、各サブコードが、頭部搭載型ディスプレイデバイスの頭部運動中、効果的視認のためにワーピングされる必要があり得る可能な頭部姿勢位置の範囲を示す。
【0128】
単一フィールド(すなわち、色)内のサブコードに関する異なる重心時間は、ユーザの頭部姿勢が変化するとき、異なる位置として現れ、それは、そのワーピングがそのサブコードに関するオフセット位置に適用されるであろうから、そのフィールドの任意のワーピングにもかかわらず、そうでなければ生じ得る色内分離をもたらし得る。言い換えると、桃色であるように意図されるピクセルは、頭部姿勢のタイミングがサブコードの重心パターンタイミングに合致しないので、橙色であるように意図されるピクセルから幾何学的にオフセットされ得る。
【0129】
図19は、t
0においてユーザの頭部位置がx、yにあるような種々のサブコード可能性を伴う単一フィールドに関するこの原理をより具体的に図示し、t
0は、シグモイド関数1822によって表される第1のサブコードと正しく整列し得るが、それぞれ、シグモイド関数1824および1826によって表される第2および第3のサブコードに関する特定の重心は、幾何学的空間内において、x
1、y
1およびx
2、y
2に対応する。この画像データを搬送する空間光変調器が、共通時間t
0にアクティブになることになっていた場合、シグモイド関数1824および1826によってそれぞれ表される第2および第3のサブコードに関する画像データを伝達するピクセルの外観は、それらが現れるべき場所からオフセットされて現れるであろう。この問題は、緑色および青色カラーフィールドおよびそれらのそれぞれのサブコードに関して拡張されるとき、同様に悪化させられる。
【0130】
いくつかの実施形態において、これは、そのシグモイド重心を有する任意の所与の色サブコードが所与の頭部姿勢に関してタイミング調整されることを可能にするように徐々により小さい頭部姿勢サンプルを有することによって補正される。例えば、t0-n-mに関する具体的頭部姿勢が、シグモイド関数1826によって表される第3のサブコードに関して計算および適用され得、t0-nに関する新しい具体的頭部姿勢が、シグモイド関数1824によって表される第2のサブコードに関して計算および適用され得、t0に関する具体的頭部姿勢が、シグモイド関数1822によって表される第1のサブコードに関して計算および適用され得る。真実味のある拡張現実知覚のために、プロジェクタ周波数は、理想的に、120Hzより高速である。3つのフィールドを有するフィールド順次ディスプレイに関して、これは、任意の単一頭部姿勢計算に関して、数ミリ秒しか許さない。各フィールド内の数百のサブコードの各々のための追加の頭部姿勢のサンプリングは、演算能力および所望の形状因子に関して法外にコストがかかり得る。
【0131】
いくつかの実施形態によると、所与のサブコードに関するシグモイド関数形状は、調合され得る。種々のディスプレイシステムおよび空間光変調器は、入力に瞬時に応答しない媒体およびコンポーネントを採用している。
図20は、いくつかのシステムにおいて生じ得る例示的遅れを図示する。例えば、シリコン上液晶(LCoS)ディスプレイに関して、所与のピクセルがアクティブにされ得るとき、所与の液晶層は、シグモイド形態を開始することにおいて遅延t
bを誘発し得る。この遅れは、上で説明されるように、サブコードとともにすでに存在する任意の頭部姿勢変化を悪化させ得るか、または、単一配色のサブコードが画像にわたって帯域を提示する画像の輪郭化をもたらし得る。
図21は、ディスプレイが移動しているときのサブコードのピクセルイネーブルメントであるタイミング問題を受けやすいフィールド順次ディスプレイにおけるそのような画像輪郭化の誇張された効果を図示する。
【0132】
過剰な演算能力を犠牲にすることなく、これらのタイミング懸念を緩和するために、いくつかの実施形態において、サブコードを表す各シグモイドに関する重心が、共通フィールドの全てのサブコードに関する共通頭部姿勢時間に対応するように時間的に修正される。
図22に描写されるように、共通ソース時間から開始するのではなく、サブコードは、異なる時間において開始され、それらのそれぞれのビット深度シグモイド重心を共通時間t
0において提示する。いくつかの実施形態において、単一または全てのサブコードに関する開始時間は、さらに遠くにオフセットされ、それによって、シグモイドは、ピクセル/応答時間が共通頭部姿勢測定と整列するように、時間t
0-t
bにおいて整列するように計算される。言い換えると、空間光変調器に対する全てのフィールド入力値(すなわち、赤色、緑色、青色)の変調およびタイミングは、各サブコードに関する出力光の重心がフィールドチャネル内で同一であるように構築される。
【0133】
いくつかの実施形態において、単一サブコード入力(
図22の単一シグモイド関数1826によって表される第2のサブコード等)を作成するのではなく、一連のパルスが、1つ以上のフィールドあたり入力を作成する。
図23において、中心パルス2302は、順次ディスプレイのフレーム内のフィールドのあるタイミング(t
0)に中心を置かれる。すなわち、中心パルスは、ワーピングされたカラーフィールドの投影のための時間(例えば、カラーフィールドをワーピングするために使用される頭部姿勢サンプルの時間)に中心を置かれる。パルス2302の重心は、時間t
0にある。
【0134】
第2のパルス2304(但し、第1のパルスと称され得る中心パルス2302に対して測定されるので、第2のパルスと称される中心パルス2302より前に生じる)は、時間t
0における中心パルス2302の重心から測定され、第2のパルス2304の減衰相の終了を時間t
0-pにおける中心パルス2302の成長相の開始と時間的に整列させる。第2のパルス2304の重心は、時間t
c2にあり、それは、時間t
0の前の所定の時間量(例えば、
図23ではt
0-t
c2)に生じる(すなわち、それに先立った時間に生じる)。
【0135】
第3のパルス2306(中心パルス2302後に生じる)は、時間t
0における中心パルス2302の重心から測定され、第3のパルス2306の成長相の開始を時間t
0+rにおける中心パルス2302の減衰相の終了と時間的に整列させる。第3のパルス2306の重心は、時間t
c3にあり、それは、時間t
0後の所定の時間量(例えば、
図23ではt
c3-t
0)に生じる(すなわち、それより後の時間に生じる)。
【0136】
いくつかの実施形態において、時間tc3と時間t0との間の差異は、時間t0と時間tc2との間の差異に等しくあり得る。すなわち、第2のパルス2304の重心は、中心パルス2302の重心から所定の時間量の前に生じ、第3のパルス2306の重心は、中心パルス2302の重心から同じ所定の時間量後に生じる。重心のそのような対称性は、フィールドのシーケンス全体を通して、頭部姿勢サンプルを中心としてより均一な分布を伴う選択的ビット深度を作成する。例えば、所望のビット深度のサブコードに関する単一パルスは、頭部姿勢時間を中心とした具体的ビット深度に関する精密なタイミングを要求し;頭部姿勢タイミングの周囲の累積ビット深度に関してより低いパルスを伴って拡散されるビット深度は、1つ以上のパルスのうちの1つのみが頭部姿勢サンプル(例えば、中心パルス2302)と時間的に整列させられるであろうから、方向の変化または頭部姿勢変化の可変速度によって色分離を被りにくい。
【0137】
図23に描写されるように、第2のパルス2304は、t
0-pにおいて中心パルス2302に付加され、第3のパルス2306は、t
0+rにおいて中心パルス2302に付加されている。
図23に図示されるように、第2のパルス2304の成長相は、時間t
0-yにおいて開始し得、第2のパルス2304の減衰相は、時間t
0-pにおいて終了し得る。すなわち、第2のパルス2304は、時間t
0-yと時間t
0-pとの間に定義され得る。第3のパルス2306の成長相は、時間t
0+rにおいて開始し得、第3のパルス2306の減衰相は、時間t
0+xにおいて終了し得る。すなわち、第3のパルス2306は、時間t
0+rと時間t
0+xとの間に定義され得る。当業者は、第2のパルス2304の減衰が、第3のパルス2306の成長相より長くまたはより短くあり得、重心を整列させることが、故に、時間における重心場所の意図される結果として生じる等しい分布にもかかわらず、それぞれのt
0に対する異なるタイミングを要求し得るので、pおよびrが、必ずしも、等しくないことを理解されるであろう。
【0138】
図23は、3つの別々のパルス2302、2304、2306を図示し、それらは、所与の色サブコード(例えば、
図22の単一シグモイド関数1826によって表される色サブコード)を表すシグモイド関数の時間t
0における重心から、シグモイド関数の縁に向かって成長する。中心パルス2302は、フィールド(すなわち、色)ごとに256個の変調ステップを作成するために、第2のパルス2304および第3のパルス2306と組み合わせて使用される。
【0139】
図23に図示されるパルス2302、2304、2306は、順次投影のためにマルチフィールドカラー仮想コンテンツをワーピングするコンピュータ実装方法と併せて使用され得る。例えば、異なる第1および第2の色(例えば、赤色、青色、または緑色のサブコード)を有する第1および第2のカラーフィールド(例えば、赤色、青色、または緑色のうちの1つ以上のもの)が取得されると、ワーピングされる第1のカラーフィールドの投影のための第1の時間が、決定され得る。第1の時間(例えば、時間t
0)に対応する第1の姿勢を予測すると、第1のカラーフィールド内の第1の複数の色の中の各1つの色に関して、第1のカラーフィールド内の第1の複数の色の中のその1つの色を表す入力(例えば、
図22の単一シグモイド関数1824によって表される色サブコード)が、識別され得、入力は、1つ以上のフィールドあたり入力を作成する一連のパルス(例えば、第1の時間t
0に中心を置かれた中心パルス2302、第2のパルス2304、および第3のパルス2306)として再構成され得る。一連のパルスのうちの各1つは、第1の姿勢に基づいてワーピングされ得る。そして、ワーピングされた第1のカラーフィールドが、ワーピングされた一連のパルスに基づいて生成され得;順次ディスプレイ上のピクセルは、ワーピングされた一連のパルスに基づいてアクティブにされ、ワーピングされた第1のカラーフィールドを表示し得る。
【0140】
いくつかの実施形態において、中心パルス2302は、中心から外側へ向かって配列された一連の短タイムスロット(ts1-1、ts1-2、ts1-3、ts1-4、ts1-5、ts1-6)を含み得る。すなわち、タイムスロットts1-1、ts1-2は、時間t0における重心の隣に形成される。タイムスロットts1-3、ts1-4、ts1-5、ts1-6は、時間t0から外側へ向かって進むようにタイムスロットts1-1、ts1-2に対して配列される。ディスプレイデバイス上のピクセル(例えば、LCoSピクセル)は、各スロット(ts1-1、ts1-2、ts1-3、ts1-4、ts1-5、ts1-6)中、アクティブにされることも、されないこともある。すなわち、順次ディスプレイ上のピクセルは、中心パルス2302のタイムスロットの一部中、アクティブにされ得る。順次ディスプレイ上のピクセルは、中心パルス2302に関連付けられたサブコードに応じて、アクティブにされ得る。いくつかの実施形態において、タイムスロットの一部のみが、オンにされ得る。例えば、最も低い色コードに関して、中心タイムスロット(例えば、ts1-1、ts1-2)のみが、オンにされ得る(すなわち、中心タイムスロットのみが、ディスプレイデバイス上のアクティブにされるピクセルをもたらし得る)。色コードがより高いほど、より多くのタイムスロットが、中心から外側へ向かってオンにされ得る。
【0141】
いくつかの実施形態によると、第2のパルス2304および第3のパルス2306は、中心パルス2302のタイムスロット(ts1-1、ts1-2、ts1-3、ts1-4、ts1-5、ts1-6)より大きいタイムスロットを含み得る。例えば、第2のパルス2304は、中心パルス2302のタイムスロット(ts1-1、ts1-2、ts1-3、ts1-4、ts1-5、ts1-6)より持続時間が長い(すなわち、より大きい)タイムスロット(ts2-1、ts2-2、ts2-3、ts2-4)を含み得る。第2のパルス2304のタイムスロット(ts2-1、ts2-2、ts2-3、ts2-4)は、より後の時間からより早い時間へ配列され得る。すなわち、タイムスロットts2-1は、第2のパルス2304内のタイムスロットts2-2、ts2-3、ts2-4に対して時間的に後に生じる。同様に、第3のパルス2306は、中心パルス2302のタイムスロット(ts1-1、ts1-2、ts1-3、ts1-4、ts1-5、ts1-6)より持続時間が長いタイムスロット(ts3-1、ts3-2、ts3-3、ts3-4)を含み得る。第3のパルス2306のタイムスロット(ts3-1、ts3-2、ts3-3、ts3-4)は、より早い時間からより後の時間へ配列され得る。すなわち、タイムスロットts3-1は、第3のパルス2306内のタイムスロットts3-2、ts3-3、ts3-4に対して時間的により早く生じる。故に、パルスは、中心パルス2302から外側へ向かって成長するように配列され得る。
【0142】
いくつかの実施形態において、順次ディスプレイ上のピクセルは、第2のパルス2304および/または第3のパルス2306のタイムスロットの一部中、アクティブにされ得る。タイムスロットが、より高い色コードを作成するために第2のパルス2304および第3のパルス2306内でオンにされるとき、色コード内の全体的重心を維持するために、第2のパルス2304内のスロットと対応する第3のパルス2306のスロットとを一緒にオンにするように配慮される。システム制約が隣接するコードのために第2のパルス2304または第3のパルス2306内の単一のスロットをオンにするように要求する場合(多くの場合、該当する)、重心からの大きすぎる光エネルギーのシフトを防止するために、追加のスロットを短く保つように、または、空間/時間的ディザリングを使用するように配慮される。これは、頭部または眼運動に伴う追加の輪郭化アーチファクトも回避する。
【0143】
中心パルス2302は、デジタル色コードの最小有効ビット(LSB)であると考えられ得る一方、第2のパルス2304および第3のパルス2306は、デジタル色コードの最大有効ビット(MSB)に類似する。中心パルス2302と第2のパルス2304および第3のパルス2306との組み合わせは、256個の変調ステップを構築するために使用され得る多くの可能な組み合わせをもたらす。
【0144】
最大明度のために、単一パルスが、中心パルス2302、第2のパルス2304、および第3のパルス2306をマージする、最高変調ステップのために作成される必要があり得る。3つのパルスから1つのパルスへの移行において、より小さいタイムスロットが、ステップサイズを小さく保つために、オンにされ得る。この場合、より小さいスロットが、第2のパルス2304の開始時に追加され、より後の時間からより早い時間へ配列され得る。例えば、
図23に図示されるように、タイムスロットts
2-4(すなわち、第2のパルス2304の開始時におけるタイムスロット)は、より後の時間からより早い時間へ配列されたより小さいタイムスロット(ts
2-4-1、ts
2-4-2、ts
2-4-3)に分割され得る。すなわち、タイムスロットts
2-4-1は、第2のパルス2304内のタイムスロットts
2-4-2およびts
2-4-3に対して時間的に後に生じる。同様に、より小さいスロットが、第3のパルス2306の終了時に追加され、より早い時間からより後の時間へ配列される。例えば、
図23に図示されるように、タイムスロットts
3-4(すなわち、第3のパルス2306の終了時におけるタイムスロット)は、より早い時間からより後の時間へ配列されたより小さいタイムスロット(ts
3-4-1、ts
3-4-2、ts
2-4-3)に分割され得る。すなわち、タイムスロットts
3-4-1は、第3のパルス2306内のタイムスロットts
3-4-2およびts
3-4-3に対して時間的により早く生じる。両方の場合において、短タイムスロット(すなわち、ts
2-4-1、ts
2-4-2、ts
2-4-3およびts
3-4-1、ts
3-4-2、ts
2-4-3)は、それらのそれぞれのパルス(すなわち、第2のパルス2304および第3のパルス2306)のより大きいタイムスロット(すなわち、ts
2-1、ts
2-2、ts
2-3、ts
2-4およびts
3-1、ts
3-2、ts
3-3、ts
3-4)と同一方向に配列される。
【0145】
多くの光変調器(例えば、LCoS、走査ディスプレイ内のレーザ、デジタル光処理(DLP)、液晶ディスプレイ(LCD)、および/または他のディスプレイ技術)は、非対称オンおよびオフ時間を有するので、3つのパルスの長およびパルスの配列は、重心を固定点に保つために、非対称である必要があり得る。オン時間が、オフ時間より長い場合、例えば、重心は、フィールド内で中心時間より後であろう。種々の実施形態によると、3つのパルスの各々は、非対称スロット長および配列と似た様式で構築され得る。
【0146】
中心パルス2302と第2のパルス2304と第3のパルス2306とのパルス長の組み合わせは、256個を上回る可能な組み合わせを生成し得る。これらの組み合わせの一部が、256個の変調ステップを作成するために使用される。組み合わせは、所望の明度応答曲線(すなわち、線形ガンマ、標準的赤色/緑色/青色(sRGB)ガンマ)への最近似合致、全ての色コードにわたる重心における最小変動、隣接する色コードに関する重心における最小変動、および温度およびプロセスにわたるその組み合わせに関するより小さい明度変動を含む、いくつかの要因に基づいて選択され得る。
【0147】
オンおよびオフ時間は、温度、電圧、プロセス、および他の変数に伴って変動し得るので、256個の組み合わせの異なる組が、異なる条件のために選定され得る。例えば、温度を冷却するための第1の組は、デバイスが最初にオンにされるときに選定され得、異なる第2の組は、デバイスが加熱され、定常状態温度に到達したときに選定され得る。任意の数の組が、輪郭化を限定し、動作条件にわたって画質を最大化するために使用され得る。
【0148】
いくつかの実施形態において、
図23におけるビット深度タイミングの対称性質は、サブコード間の干渉(頭部姿勢の左から右への運動方向に応じた)が軽減されるので、過度に明るいまたは過度に暗い画線を防止する。すなわち、サブコードが時間的に調節されず、ユーザがユーザの頭部を特定の方向に移動させた場合、特定のサブコードのビット(色情報を提示する)が、単にサブコードに関するビット深度シグモイド形態の不良タイミングによって、何も現れるように意図されていない場所に現れ得る。
図24に図示されるように、ゾーン2250は、頭部運動が、同一フィールド内の2つの他のサブコード2402および2404が減衰相にあるとき、特定のサブコード2406を色を提示するように設置し、および、任意のサブコードの色がユーザに表示されるように意図されないとき、所与の頭部姿勢タイミングサンプルに基づいて不注意にディスプレイピクセルを表示し得る領域を描写する。当業者は、1つ以上のサブコードの所望のビット深度を構築するために、追加の構成が可能なことを理解されるであろう。
【0149】
図25は、いくつかの実施形態によるカラー仮想コンテンツをワーピングする方法を描写する。
図25に描写されるステップは、各カラーフィールド(R、G、B)に関して実施され得る。いくつかの実施形態において、
図25に描写されるステップは、ステップ816R、816G、および/または816Bのサブステップとして実施され得る。
【0150】
各カラーフィールド(R、G、B)は、サブコードによって表される1つ以上の色を含む。選択されたカラーフィールドの1つ以上の色の中の各色(例えば、サブコード)に関して、ステップ2502において、姿勢推定器が、カラーフィールドに関するサブコードを表す入力(例えば、シグモイド)を識別する。ステップ2504において、姿勢推定器が、入力を一連のパルス(例えば、3つのパルス)として再構成し、1つ以上のフィールドあたり入力を作成する。ステップ2506において、変換ユニットが、第1の姿勢に基づいて、一連のパルスのうちの各1つをワーピングする。ステップ2508において、変換ユニットが、ワーピングされた一連のパルスに基づいて、ワーピングされた第1のカラーフィールドを生成する。ステップ2510において、変換ユニットが、ワーピングされた一連のパルスに基づいて、順次ディスプレイ上のピクセルをアクティブにし、ワーピングされた第1のカラーフィールドを表示する。同じステップ2502-2510は、全てのカラーフィールド(R、G、B)に関して実施され得る。
【0151】
本開示は、本主題のデバイスを使用して実施され得る方法を含む。方法は、そのような好適なデバイスを提供する作用を含み得る。そのような提供は、ユーザによって実施され得る。言い換えると、「提供する」行為は、単に、ユーザが、本主題の方法において必要なデバイスを取得する、それにアクセスし、それに接近し、それを位置付け、それを設定し、それをアクティブにし、それに電源を入れ、または別様にそれを提供するように行為することを要求する。本明細書に列挙される方法は、論理的に可能な列挙されたイベントの任意の順序およびイベントの列挙された順序で行われ得る。
【0152】
本開示の例示的側面が、材料選択および製造に関する詳細とともに、上で記載された。本開示の他の詳細に関して、これらは、前述の参照特許および刊行物に関連して理解され、概して、当業者によって公知である、または理解され得る。同じことは、一般または論理的に採用されるような追加の行為の観点から、本開示の方法ベースの側面に関しても当てはまり得る。
【0153】
加えて、本開示は、随意に、種々の特徴を組み込むいくつかの例を参照して説明されたが、本開示は、開示の各変形例に関して検討されるように説明または図示されるものに限定されるものではない。種々の変更が、説明される本開示に行われ得、均等物(本明細書に列挙されるか、またはある程度の簡潔目的のために含まれないかどうかにかかわらず)は、本開示の精神および範囲から逸脱することなく代用され得る。加えて、値の範囲が提供される場合、その範囲の上限と下限との間の全ての介在値および任意の他の述べられた値または述べられた範囲内の介在値が、本開示内に包含されるものと理解されたい。
【0154】
説明される本発明の変形例の任意の随意の特徴が、独立して、または本明細書に説明される特徴のうちの任意の1つ以上のものと組み合わせて、記載および請求され得ることも想定される。単数形アイテムへの言及は、存在する複数の同一アイテムが存在する可能性を含む。より具体的に、本明細書および本明細書に関連付けられた請求項で使用されるように、単数形「a」、「an」、「said」、および「the」は、別様に具体的に述べられない限り、複数への言及を含む。言い換えると、冠詞の使用は、上記の説明および本開示に関連付けられる請求項における本主題のアイテムのうちの「少なくとも1つ」を可能にする。さらに、そのような請求項は、任意の随意の要素を除外するように起草され得ることに留意されたい。したがって、本文言は、請求項の要素の列挙と関連する「単に」、「のみ」等等の排他的専門用語の使用、または「消極的」限定の使用のための先行詞としての役割を果たすことが意図される。
【0155】
そのような排他的専門用語を使用しなければ、本開示に関連付けられる請求項における用語「~を備える」は、所与の数の要素がそのような請求項で列挙されるかどうかにかかわらず、任意の追加の要素の包含を可能にするものとするか、または、特徴の追加は、そのような請求項に記載される要素の性質を変換すると見なされ得る。本明細書で具体的に定義される場合を除いて、本明細書で使用される全ての技術および科学用語は、請求項の正当性を維持しながら、可能な限り広い一般的に理解されている意味を与えられるべきである。
【0156】
本開示の範疇は、提供される例および/または本主題の明細書に限定されるべきではなく、むしろ、本開示に関連付けられた請求項の言語の範囲によってのみ限定されるべきである。
【0157】
前述の明細書において、本開示は、その具体的実施形態を参照して説明された。しかしながら、種々の修正および変更が、本開示のより広義の精神および範囲から逸脱することなく、そこに行われ得ることが明白であろう。例えば、前述のプロセスフローは、プロセスアクションの特定の順序を参照して説明される。しかしながら、説明されるプロセスアクションの多くの順序は、本開示の範囲または動作に影響を及ぼすことなく、変更され得る。明細書および図面は、故に、限定的意味ではなく、例証と見なされるべきである。