(57)【要約】仮想コンテンツをワーピングするためのコンピュータ実装方法は、レンダリングされた仮想コンテンツデータを受信するステップであって、レンダリングされた仮想コンテンツデータは、遠深度を含む、ステップを含む。本方法はまた、光学軸に直交する方向におけるユーザ移動を示す、移動データを受信するステップを含む。本方法はさらに、レンダリングされた仮想コンテンツデータ、遠深度、および移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成するステップを含む。
2021530811.tif 000002
【特許請求の範囲】
【請求項１】
仮想コンテンツをワーピングするためのコンピュータ実装方法であって、
レンダリングされた仮想コンテンツデータを受信することであって、前記レンダリングされた仮想コンテンツデータは、遠深度を含む、ことと、
光学軸に直交する方向におけるユーザ移動を示す移動データを受信することと、
前記レンダリングされた仮想コンテンツデータ、前記遠深度、および前記移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成することと
を含む、方法。
【請求項２】
前記レンダリングされた仮想コンテンツデータは、近仮想オブジェクトおよび遠仮想オブジェクトに対応し、
前記ワーピングされたレンダリングされた仮想コンテンツデータは、ワーピングされた近仮想オブジェクトおよびワーピングされた遠仮想オブジェクトに対応する、
請求項１に記載の方法。
【請求項３】
前記近仮想オブジェクトと前記ワーピングされた近仮想オブジェクトとの間の第１の位置偏移は、前記遠仮想オブジェクトと前記ワーピングされた遠仮想オブジェクトとの間の第２の位置偏移に実質的に等しい、請求項２に記載の方法。
【請求項４】
前記レンダリングされた仮想コンテンツデータ、前記遠深度、および前記移動データに基づいて、前記ワーピングされたレンダリングされた仮想コンテンツデータを生成することは、前記レンダリングされた仮想コンテンツデータと比較して、視差関連アーチファクトを低減させる、請求項１に記載の方法。
【請求項５】
前記視差関連アーチファクトは、ディスオクルージョンアーチファクトである、請求項４に記載の方法。
【請求項６】
前記視差関連アーチファクトは、スミアアーチファクトである、請求項４に記載の方法。
【請求項７】
前記視差関連アーチファクトは、ジッタアーチファクトである、請求項４に記載の方法。
【請求項８】
前記レンダリングされた仮想コンテンツデータは、第１の深度セグメントに対応し、前記方法はさらに、
第２の深度セグメントに対応する第２のレンダリングされた仮想コンテンツデータを受信することであって、前記第２のレンダリングされた仮想コンテンツデータは、第２の遠深度を含む、ことと、
前記第２のレンダリングされた仮想コンテンツデータ、前記第２の遠深度、および前記移動データに基づいて、ワーピングされた第２のレンダリングされた仮想コンテンツデータを生成することと
を含む、請求項１に記載の方法。
【請求項９】
仮想コンテンツをワーピングするためのコンピュータ実装方法であって、
レンダリングされた仮想コンテンツデータを受信することであって、前記レンダリングされた仮想コンテンツデータは、遠深度および近深度を含む、ことと、
光学軸に直交する方向におけるユーザ移動を示す移動データを受信することと、
前記レンダリングされた仮想コンテンツデータ、前記遠深度、前記近深度、および前記移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成することと
を含む、方法。
【請求項１０】
前記レンダリングされた仮想コンテンツデータ、前記遠深度、前記近深度、および前記移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成することは、前記遠深度および前記近深度を平均することを含む、請求項９に記載の方法。
【請求項１１】
仮想コンテンツをワーピングするためのコンピュータ実装方法であって、
レンダリングされた仮想コンテンツデータを受信することと、
光学軸に直交する方向におけるユーザ移動を示す移動データを受信することと、
ユーザ視線を示す視線データを受信することと、
前記視線データに基づいて、深度を決定することと、
前記レンダリングされた仮想コンテンツデータ、前記深度、および前記移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成することと
を含む、方法。
【請求項１２】
仮想コンテンツをワーピングするためのコンピュータ実装方法であって、
レンダリングされた仮想コンテンツデータを受信することと、
光学軸に直交する方向におけるユーザ移動を示す移動データを受信することと、
メッシュデータを前記レンダリングされた仮想コンテンツデータから生成することと、
深度データを前記メッシュデータから決定することと、
前記レンダリングされた仮想コンテンツデータ、前記メッシュデータ、前記深度データ、および前記移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成することと
を含む、方法。
【請求項１３】
前記メッシュデータを生成するとき、メッシュサイズを調節することをさらに含む、請求項１２に記載の方法。
【請求項１４】
前記メッシュデータは、グリッドメッシュを使用して生成される、請求項１２に記載の方法。
【請求項１５】
前記深度データは、前記メッシュ内の複数の深度および前記複数の深度のそれぞれにおける前記メッシュのコンテンツに基づいて決定される、請求項１２に記載の方法。
【請求項１６】
仮想オブジェクトの深度を決定するためのコンピュータ実装方法であって、
複数の深度において、第１の眼に対応する前記仮想オブジェクトの第１の画像を第２の眼に対応する前記仮想オブジェクトの第２の画像にわたって再投影し、複数の個別の組み合わせ画像を生成することと、
前記複数の個別の組み合わせ画像のそれぞれにおける再投影誤差を測定し、複数の再投影誤差を生成することと、
前記複数の個別の組み合わせ画像の組み合わせ画像に対応する前記複数の再投影誤差内の最小再投影誤差を識別することと、
前記組み合わせ画像に対応する深度を前記仮想オブジェクトの深度として識別することと
を含む、方法。
【請求項１７】
前記仮想オブジェクトの深度は、前記仮想オブジェクトを第１の視点から第２の視点にワーピングするために使用される、請求項１６に記載の方法。
【請求項１８】
前記複数の深度は、６４個の深度から成る、請求項１６に記載の方法。
【請求項１９】
前記複数の深度はそれぞれ、前記仮想オブジェクトの第１の画像を再投影する際の１ピクセル差に対応する、請求項１６に記載の方法。
【請求項２０】
最小安定化深度を決定するためのコンピュータ実装方法であって、
視点（ＰＯＶ）移動量を取得することと、
前記ＰＯＶ移動量に基づいて、安定化深度と前記安定化深度におけるピクセル移動との間の関係を決定することと、
ディスプレイシステムのための最大検知不能ピクセル移動を取得することと、
前記ディスプレイシステムのための最大検知不能ピクセル移動に対応する安定化深度を前記ディスプレイシステムの最小安定化深度として識別することと
を含む、方法。
【請求項２１】
視点が変化するとき、視認者に対して前記最小安定化深度より近いコンテンツのみをワーピングすることをさらに含む、請求項２０に記載の方法。
【請求項２２】
前記安定化深度と前記安定化深度におけるピクセル移動との間の関係は、逆相関である、請求項２０に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、仮想コンテンツをワーピングするステップを伴う複合現実システムと、それを使用して、ワーピングされた仮想コンテンツを含む複合現実体験を生成するための方法とに関する。
【背景技術】
【０００２】
現代のコンピューティングおよびディスプレイ技術は、デジタル的に再現された画像またはその一部が、現実であるように見える、またはそのように知覚され得る様式においてユーザに提示される、いわゆる「仮想現実」（ＶＲ）または「拡張現実」（ＡＲ）体験のための「複合現実」（ＭＲ）システムの開発を促進している。ＶＲシナリオは、典型的には、実際の実世界の視覚的入力に対する透過性を伴わずに、デジタルまたは仮想画像情報の提示を伴う。ＡＲシナリオは、典型的には、ユーザの周囲の実世界の可視化（すなわち、実世界視覚的入力に対して透過性である）の拡張として、デジタルまたは仮想画像情報の提示を伴う。故に、ＡＲシナリオは、ユーザの周囲の実世界に対する透過性を伴う、デジタルまたは仮想画像情報の提示を伴う。
【０００３】
種々の光学システムが、ＭＲ（ＶＲおよびＡＲ）シナリオを表示するために、画像を種々の深度において生成する。いくつかのそのような光学システムは、２０１４年１１月２７日に出願された米国実用特許出願第１４／５５５，５８５号（弁理士整理番号第ＭＬ．２００１１．００）（その内容は、参照することによって、全体として記載される場合と同様に、その全体として明示的かつ完全に本明細書に組み込まれる）に説明される。
【０００４】
ＭＲシステムは、典型的には、ユーザの頭部に少なくとも緩く結合され、したがって、ユーザの頭部が移動すると移動する、ウェアラブルディスプレイデバイス（例えば、頭部装着型ディスプレイ、ヘルメット搭載型ディスプレイ、またはスマートグラス）を採用する。ユーザの頭部運動が、ディスプレイデバイスによって検出される場合、表示されているデータは、頭部姿勢（すなわち、ユーザの頭部の配向および／または場所）の変化を考慮するために更新されることができる。
【０００５】
実施例として、頭部装着型ディスプレイデバイスを装着しているユーザが、仮想オブジェクトの仮想表現をディスプレイデバイス上で視認し、仮想オブジェクトが現れる面積の周囲を歩き回る場合、仮想オブジェクトは、視点（頭部搭載型ディスプレイデバイスの位置および／または配向に対応する）毎にレンダリングされ、ユーザに、実空間を占有するオブジェクトの周囲を歩き回っているという知覚を与えることができる。頭部装着型ディスプレイデバイスが、複数の仮想オブジェクトを異なる深度に提示するために使用される場合、頭部姿勢の測定は、場面をユーザの動的に変化する頭部姿勢に合致するようにレンダリングし、増加された没入感を提供するために使用されることができる。しかしながら、場面をレンダリングするステップと、レンダリングされた場面を表示／投影するステップとの間には、不可避の遅れが存在する。
【０００６】
頭部装着型ディスプレイデバイスは、ＡＲが、実および仮想オブジェクトの両方の同時視認を提供することを可能にする。「光学シースルー」ディスプレイを用いることで、ユーザは、ディスプレイシステム内の透明（または半透明）要素を通して見え、直接、実世界環境内の実オブジェクトからの光を視認することができる。透明要素は、多くの場合、「コンバイナ」と称され、ディスプレイからの光を実世界のユーザのビューにわたって重畳し、ディスプレイからの光は、仮想コンテンツの画像を環境内の実オブジェクトのシースルービューにわたって投影される。カメラが、頭部装着型ディスプレイデバイス上に搭載され、ユーザによって視認されている場面の画像またはビデオを捕捉し得る。
【０００７】
ＭＲシステムは、写実的没入型のＭＲシナリオを提示するように試みる。しかしながら、仮想コンテンツ（「レンダリングされた仮想コンテンツ」）の生成とレンダリングされた仮想コンテンツの表示との間の遅れ時間の間の頭部移動は、視覚的アーチファクト（例えば、グリッチ）をもたらし得る。本問題は、遅れ時間の間の高速頭部移動によって悪化され得る。
【０００８】
本問題に対処するために、いくつかの光学システムは、レンダリングされた仮想コンテンツをソースから受信する、ワーピングソフトウェア／システム／方法を含み得る。ワーピングシステムは、次いで、ディスプレイシステム／視認者の基準のフレーム（「基準のディスプレイフレーム」）内における表示のために、受信されたレンダリングされた仮想コンテンツを「ワーピング」する（すなわち、「基準のフレーム」を変換する）。本アプローチは、元々レンダリングされた仮想コンテンツを取り上げ、仮想コンテンツが提示される方法を変換し、表示時に、仮想コンテンツを異なる視点から表示するように試みる。
【０００９】
いくつかのワーピングソフトウェア／システム／方法は、レンダリングされた仮想コンテンツをワーピングし、回転または大まかな位置のユーザ移動（すなわち、ユーザの視野「ＦＯＶ」）を補正する。そのようなシステムは、他のタイプのユーザ移動（例えば、ユーザの光学軸に直交する軸に沿った実質的側方ユーザ移動）を補正するために最適化されていない。故に、いくつかのワーピングソフトウェア／システム／方法は、ユーザ移動に伴って、アーチファクトをもたらし得る。
【発明の概要】
【課題を解決するための手段】
【００１０】
一実施形態では、仮想コンテンツをワーピングするためのコンピュータ実装方法は、レンダリングされた仮想コンテンツデータを受信するステップであって、レンダリングされた仮想コンテンツデータは、遠深度を含む、ステップを含む。本方法はまた、光学軸に直交する方向におけるユーザ移動を示す、移動データを受信するステップを含む。本方法はさらに、レンダリングされた仮想コンテンツデータ、遠深度、および移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成するステップを含む。
【００１１】
１つ以上の実施形態では、レンダリングされた仮想コンテンツデータは、近仮想オブジェクトおよび遠仮想オブジェクトに対応し、ワーピングされたレンダリングされた仮想コンテンツデータは、ワーピングされた近仮想オブジェクトおよびワーピングされた遠仮想オブジェクトに対応する。近仮想オブジェクトとワーピングされた近仮想オブジェクトとの間の第１の位置偏移は、遠仮想オブジェクトとワーピングされた遠仮想オブジェクトとの間の第２の位置偏移に実質的に等しくあってもよい。
【００１２】
１つ以上の実施形態では、レンダリングされた仮想コンテンツデータ、遠深度、および移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成するステップは、レンダリングされた仮想コンテンツデータと比較して、視差関連アーチファクトを低減させる。視差関連アーチファクトは、ディスオクルージョンアーチファクトである。視差関連アーチファクトは、スミアアーチファクトまたはジッタアーチファクトであり得る。
【００１３】
１つ以上の実施形態では、レンダリングされた仮想コンテンツデータは、第１の深度セグメントに対応する。本方法はまた、第２の深度セグメントに対応する、第２のレンダリングされた仮想コンテンツデータを受信するステップであって、第２のレンダリングされた仮想コンテンツデータは、第２の遠深度を含む、ステップを含む。本方法はさらに、第２のレンダリングされた仮想コンテンツデータ、第２の遠深度、および移動データに基づいて、ワーピングされた第２のレンダリングされた仮想コンテンツデータを生成するステップを含む。
【００１４】
別の実施形態では、仮想コンテンツをワーピングするためのコンピュータ実装方法は、レンダリングされた仮想コンテンツデータを受信するステップであって、レンダリングされた仮想コンテンツデータは、遠深度および近深度を含む、ステップを含む。本方法はまた、光学軸に直交する方向におけるユーザ移動を示す、移動データを受信するステップを含む。本方法はさらに、レンダリングされた仮想コンテンツデータ、遠深度、近深度、および移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成するステップを含む。
【００１５】
１つ以上の実施形態では、レンダリングされた仮想コンテンツデータ、遠深度、近深度、および移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成するステップは、遠深度および近深度を平均するステップを含む。
【００１６】
さらに別の実施形態では、仮想コンテンツをワーピングするためのコンピュータ実装方法は、レンダリングされた仮想コンテンツデータを受信するステップを含む。本方法はまた、光学軸に直交する方向におけるユーザ移動を示す、移動データを受信するステップを含む。本方法はさらに、ユーザ視線を示す、視線データを受信するステップを含む。さらに、本方法は、視線データに基づいて、深度を決定するステップを含む。加えて、本方法は、レンダリングされた仮想コンテンツデータ、深度、および移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成するステップを含む。
【００１７】
さらに別の実施形態では、仮想コンテンツをワーピングするためのコンピュータ実装方法は、レンダリングされた仮想コンテンツデータを受信するステップを含む。本方法はまた、光学軸に直交する方向におけるユーザ移動を示す、移動データを受信するステップを含む。本方法はさらに、メッシュデータをレンダリングされた仮想コンテンツデータから生成するステップを含む。さらに、本方法は、深度データをメッシュデータから決定するステップを含む。加えて、本方法は、レンダリングされた仮想コンテンツデータ、メッシュデータ、深度データ、および移動データに基づいて、ワーピングされたレンダリングされた仮想コンテンツデータを生成するステップを含む。
【００１８】
１つ以上の実施形態では、本方法はまた、メッシュデータを生成するとき、メッシュサイズを調節するステップを含む。メッシュデータは、グリッドメッシュを使用して生成されてもよい。深度データは、メッシュ内の複数の深度および複数の深度のそれぞれにおけるメッシュのコンテンツに基づいて決定されてもよい。
【００１９】
別の実施形態では、仮想オブジェクトの深度を決定するためのコンピュータ実装方法は、複数の深度において、第１の眼に対応する仮想オブジェクトの第１の画像を第２の眼に対応する仮想オブジェクトの第２の画像にわたって再投影し、複数の個別の組み合わせ画像を生成するステップを含む。本方法はまた、複数の個別の組み合わせ画像のそれぞれにおける再投影誤差を測定し、複数の再投影誤差を生成するステップを含む。本方法はさらに、複数の個別の組み合わせ画像の組み合わせ画像に対応する、複数の再投影誤差内の最小再投影誤差を識別するステップを含む。さらに、本方法は、組み合わせ画像に対応する深度を仮想オブジェクトの深度として識別するステップを含む。
【００２０】
１つ以上の実施形態では、仮想オブジェクトの深度は、仮想オブジェクトを第１の視点から第２の視点にワーピングするために使用される。複数の深度は、６４個の深度から成ってもよい。複数の深度はそれぞれ、仮想オブジェクトの第１の画像を再投影する際の１ピクセル差に対応してもよい。
【００２１】
さらに別の実施形態では、最小安定化深度を決定するためのコンピュータ実装方法は、視点（ＰＯＶ）移動量を取得するステップを含む。本方法はまた、ＰＯＶ移動量に基づいて、安定化深度と安定化深度におけるピクセル移動との間の関係を決定するステップを含む。本方法はさらに、ディスプレイシステムのための最大検知不能ピクセル移動を取得するステップを含む。さらに、本方法は、ディスプレイシステムのための最大検知不能ピクセル移動に対応する安定化深度をディスプレイシステムの最小安定化深度として識別するステップを含む。
【００２２】
１つ以上の実施形態では、本方法はまた、視点が変化するとき、視認者に対して最小安定化深度より近いコンテンツのみをワーピングするステップを含む。安定化深度と安定化深度におけるピクセル移動との間の関係は、逆相関であってもよい。
【００２３】
本開示の付加的および他の目的、特徴、および利点は、詳細な説明、図、および請求項に説明される。
【図面の簡単な説明】
【００２４】
図面は、本開示の種々の実施形態の設計および可用性を図示する。図は、正確な縮尺で描かれておらず、類似構造または機能の要素は、図全体を通して同様の参照番号によって表されることに留意されたい。本開示の種々の実施形態の前述および他の利点および目的を得る方法をより深く理解するために、簡単に前述された本開示の詳細な説明が、付随の図面に図示されるその具体的実施形態を参照することによって与えられるであろう。これらの図面は、本開示の典型的実施形態のみを描写し、したがって、その範囲の限定として見なされないことを理解した上で、本開示は、付随の図面の使用を通して、付加的具体性および詳細とともに記載および説明されるであろう。
【００２５】
【図１】図１は、いくつかの実施形態による、ウェアラブルＡＲユーザデバイスを通した拡張現実（ＡＲ）のユーザのビューを描写する。
【００２６】
【図２Ａ】図２Ａ−２Ｄは、いくつかの実施形態による、ＡＲシステムおよびそのサブシステムを図式的に描写する。
【図２Ｂ】図２Ａ−２Ｄは、いくつかの実施形態による、ＡＲシステムおよびそのサブシステムを図式的に描写する。
【図２Ｃ】図２Ａ−２Ｄは、いくつかの実施形態による、ＡＲシステムおよびそのサブシステムを図式的に描写する。
【図２Ｄ】図２Ａ−２Ｄは、いくつかの実施形態による、ＡＲシステムおよびそのサブシステムを図式的に描写する。
【００２７】
【図３】図３および４は、いくつかの実施形態による、ユーザ移動に伴うアーチファクトを図示する。
【図４】図３および４は、いくつかの実施形態による、ユーザ移動に伴うアーチファクトを図示する。
【００２８】
【図５】図５は、いくつかの実施形態による、仮想コンテンツをワーピングし、頭部回転を補正するステップを図示する。
【００２９】
【図６】図６−９は、いくつかの実施形態による、仮想コンテンツをワーピングし、ユーザ移動を補正するステップを図示する。
【図７】図６−９は、いくつかの実施形態による、仮想コンテンツをワーピングし、ユーザ移動を補正するステップを図示する。
【図８】図６−９は、いくつかの実施形態による、仮想コンテンツをワーピングし、ユーザ移動を補正するステップを図示する。
【図９】図６−９は、いくつかの実施形態による、仮想コンテンツをワーピングし、ユーザ移動を補正するステップを図示する。
【００３０】
【図１０】図１０は、いくつかの実施形態による、グラフィック処理ユニット（ＧＰＵ）を図式的に描写する。
【００３１】
【図１１】図１１は、いくつかの実施形態による、プリミティブとして記憶される仮想オブジェクトを描写する。
【００３２】
【図１２】図１２−１４は、いくつかの実施形態による、異なる深度に位置する２つの非重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図１３】図１２−１４は、いくつかの実施形態による、異なる深度に位置する２つの非重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図１４】図１２−１４は、いくつかの実施形態による、異なる深度に位置する２つの非重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【００３３】
【図１５】図１５−１９は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、ディスオクルージョンアーチファクトを描写する。
【図１６】図１５−１９は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、ディスオクルージョンアーチファクトを描写する。
【図１７】図１５−１９は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、ディスオクルージョンアーチファクトを描写する。
【図１８】図１５−１９は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、ディスオクルージョンアーチファクトを描写する。
【図１９】図１５−１９は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、ディスオクルージョンアーチファクトを描写する。
【００３４】
【図２０】図２０および２１は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、スミアアーチファクトを描写する。
【図２１】図２０および２１は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、スミアアーチファクトを描写する。
【００３５】
【図２２】図２２−２４は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、ジッタアーチファクトを描写する。
【図２３】図２２−２４は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、ジッタアーチファクトを描写する。
【図２４】図２２−２４は、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するときの、ジッタアーチファクトを描写する。
【００３６】
【図２５】図２５−２７は、いくつかの実施形態による、ジッタアーチファクトを最小限にしながら、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図２６】図２５−２７は、いくつかの実施形態による、ジッタアーチファクトを最小限にしながら、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図２７】図２５−２７は、いくつかの実施形態による、ジッタアーチファクトを最小限にしながら、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【００３７】
【図２８】図２８−３１は、いくつかの実施形態による、複数の深度を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図２９Ａ】図２８−３１は、いくつかの実施形態による、複数の深度を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図２９Ｂ】図２８−３１は、いくつかの実施形態による、複数の深度を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図３０】図２８−３１は、いくつかの実施形態による、複数の深度を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図３１】図２８−３１は、いくつかの実施形態による、複数の深度を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【００３８】
【図３２】図３２−３８は、いくつかの実施形態による、眼追跡を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図３３】図３２−３８は、いくつかの実施形態による、眼追跡を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図３４】図３２−３８は、いくつかの実施形態による、眼追跡を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図３５】図３２−３８は、いくつかの実施形態による、眼追跡を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図３６】図３２−３８は、いくつかの実施形態による、眼追跡を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図３７】図３２−３８は、いくつかの実施形態による、眼追跡を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図３８】図３２−３８は、いくつかの実施形態による、眼追跡を使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【００３９】
【図３９】図３９−４５は、いくつかの実施形態による、メッシュを使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図４０】図３９−４５は、いくつかの実施形態による、メッシュを使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図４１】図３９−４５は、いくつかの実施形態による、メッシュを使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図４２】図３９−４５は、いくつかの実施形態による、メッシュを使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図４３】図３９−４５は、いくつかの実施形態による、メッシュを使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図４４】図３９−４５は、いくつかの実施形態による、メッシュを使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【図４５】図３９−４５は、いくつかの実施形態による、メッシュを使用して、異なる深度に位置する２つの重複仮想オブジェクトをワーピングし、ユーザ移動を補正するステップを描写する。
【００４０】
【図４６】図４６は、いくつかの実施形態による、例証的コンピューティングシステムを図式的に描写する、ブロック図である。
【００４１】
【図４７】図４７−４９は、いくつかの実施形態による、仮想オブジェクトの深度を仮想オブジェクトのステレオ画像対から決定するための方法を図式的に描写する。
【図４８】図４７−４９は、いくつかの実施形態による、仮想オブジェクトの深度を仮想オブジェクトのステレオ画像対から決定するための方法を図式的に描写する。
【図４９】図４７−４９は、いくつかの実施形態による、仮想オブジェクトの深度を仮想オブジェクトのステレオ画像対から決定するための方法を図式的に描写する。
【００４２】
【図５０】図５０−５２は、いくつかの実施形態による、仮想オブジェクトの深度を仮想オブジェクトのステレオ画像対から決定するための方法によって生成された種々の組み合わせ画像を示す。
【図５１】図５０−５２は、いくつかの実施形態による、仮想オブジェクトの深度を仮想オブジェクトのステレオ画像対から決定するための方法によって生成された種々の組み合わせ画像を示す。
【図５２】図５０−５２は、いくつかの実施形態による、仮想オブジェクトの深度を仮想オブジェクトのステレオ画像対から決定するための方法によって生成された種々の組み合わせ画像を示す。
【００４３】
【図５３】図５３は、いくつかの実施形態による、仮想オブジェクトの深度を仮想オブジェクトのステレオ画像対から決定するための方法を図示する、フローチャートである。
【００４４】
【図５４】図５４は、安定化深度とＰＯＶ移動に伴う仮想オブジェクトの見掛け移動との間の関係を図示する、グラフである。
【００４５】
【図５５】図５５は、いくつかの実施形態による、安定化深度を決定するための方法を図示する、フローチャートである。
【発明を実施するための形態】
【００４６】
本開示の種々の実施形態は、単一実施形態または複数の実施形態における、仮想コンテンツをワーピングするためのシステム、方法、および製造品を対象とする。本開示の他の目的、特徴、および利点は、詳細な説明、図、および請求項に説明される。
【００４７】
種々の実施形態が、ここで、当業者が本開示を実践することを可能にするように、本開示の例証的実施例として提供される、図面を参照して詳細に説明されるであろう。着目すべきこととして、以下の図および実施例は、本開示の範囲を限定することを意味するものではない。本開示のある要素が、公知のコンポーネント（または方法またはプロセス）を使用して部分的または完全に、実装され得る場合、本開示の理解のために必要なそのような公知のコンポーネント（または方法またはプロセス）の一部のみが、説明され、そのような公知のコンポーネント（または方法またはプロセス）の他の部分の詳細な説明は、本開示を曖昧にしないように、省略されるであろう。さらに、種々の実施形態は、例証として本明細書に参照されるコンポーネントの現在および将来的公知の均等物を包含する。
【００４８】
仮想コンテンツワーピングシステムは、複合現実システムから独立して実装され得るが、下記のいくつかの実施形態は、例証目的のためだけに、ＡＲシステムに関連して説明される。さらに、本明細書に説明される仮想コンテンツワーピングシステムはまた、ＶＲシステムと同じ様式で使用されてもよい。
（例証的複合現実シナリオおよびシステム）
【００４９】
続く説明は、ワーピングシステムが実践され得る、例証的拡張現実システムに関する。しかしながら、実施形態はまた、それ自体が他のタイプのディスプレイシステム（他のタイプの複合現実システムを含む）における用途にも適しており、したがって、実施形態は、本明細書に開示される例証的システムのみに限定されないことを理解されたい。
【００５０】
複合現実（例えば、ＶＲまたはＡＲ）シナリオは、多くの場合、実世界オブジェクトに関連して仮想オブジェクトに対応する仮想コンテンツ（例えば、画像および音）の提示を含む。例えば、図１を参照すると、ＡＲ場面１００が、描写され、ＡＲ技術のユーザには、人々、木々、背景における建物、および実世界の物理的コンクリートプラットフォーム１０４を特徴とする、実世界の物理的公園状設定１０２が見える。これらのアイテムに加え、ＡＲ技術のユーザはまた、物理的コンクリートプラットフォーム１０４上に立っている仮想ロボット像１０６と、マルハナバチの擬人化のように見える、飛んでいる仮想漫画状アバタキャラクタ１０８とが「見える」と知覚するが、これらの仮想オブジェクト１０６、１０８は、実世界には存在しない。
【００５１】
ＡＲシナリオのように、ＶＲシナリオもまた、仮想コンテンツを生成／レンダリングするために使用される姿勢を考慮する。仮想コンテンツを基準のＡＲ／ＶＲディスプレイフレームに対して正確にワーピングし、ワーピングされた仮想コンテンツをワーピングするステップは、ＡＲ／ＶＲシナリオを改良する、または少なくともＡＲ／ＶＲシナリオを損なわせないことができる。
【００５２】
続く説明は、本開示が実践され得る、例証的ＡＲシステムに関する。しかしながら、本開示はまた、それ自体が他のタイプの拡張現実および仮想現実システムにおける用途にも適し、したがって、本開示は、本明細書に開示される例証的システムのみに限定されないことを理解されたい。
【００５３】
図２Ａは、いくつかの実施形態による、ＡＲシステム２００を図示する。ＡＲシステム２００は、投影サブシステム２０８と併せて動作され、物理的オブジェクトと混合された仮想オブジェクトの画像をユーザ２５０の視野内に提供してもよい。本アプローチは、１つ以上の少なくとも部分的に透明な表面を採用し、それを通して、物理的オブジェクトを含む、周囲環境が、見られることができ、それを通して、ＡＲシステム２００は、仮想オブジェクトの画像を生産する。投影サブシステム２０８は、リンク２０７を通してディスプレイシステム／サブシステム２０４に動作可能に結合される、制御サブシステム２０１内に格納される。リンク２０７は、有線または無線通信リンクであってもよい。
【００５４】
ＡＲアプリケーションに関して、個別の物理的オブジェクトに対する種々の仮想オブジェクトをユーザ２５０の視野内に空間的に位置付けることが望ましくあり得る。仮想オブジェクトは、画像として表されることが可能な任意の種々のデータ、情報、概念、または論理構造を有する、多種多様な形態のいずれかをとってもよい。仮想オブジェクトの非限定的実施例は、仮想テキストオブジェクト、仮想数値オブジェクト、仮想英数字オブジェクト、仮想タグオブジェクト、仮想フィールドオブジェクト、仮想チャートオブジェクト、仮想マップオブジェクト、仮想計器オブジェクト、または物理的オブジェクトの仮想視覚的表現を含んでもよい。
【００５５】
ＡＲシステム２００は、ユーザ２５０によって装着される、フレーム構造２０２と、ディスプレイシステム２０４がユーザ２５０の眼の正面に位置付けられるように、フレーム構造２０２によって担持されるディスプレイシステム２０４と、ディスプレイシステム２０４の中に組み込まれる、またはそれに接続される、スピーカ２０６とを含む。図示される実施形態では、スピーカ２０６は、スピーカ２０６がユーザ２５０の外耳道（内またはその周囲）に隣接して位置付けられるように、フレーム構造２０２によって担持される（例えば、イヤーバッドまたはヘッドホン）。
【００５６】
ディスプレイシステム２０４は、ユーザ２５０の眼に、２次元および３次元コンテンツの両方を含む、周囲環境に対する拡張として快適に知覚され得る、光ベースの放射パターンを提示するように設計される。ディスプレイシステム２０４は、単一コヒーレント場面の知覚を提供する、フレームのシーケンスを高周波数で提示する。この目的を達成するために、ディスプレイシステム２０４は、投影サブシステム２０８と、それを通して投影サブシステム２０８が画像を投影する、部分的に透明なディスプレイ画面とを含む。ディスプレイ画面は、ユーザ２５０の眼と周囲環境との間のユーザ２５０の視野内に位置付けられる。
【００５７】
いくつかの実施形態では、投影サブシステム２０８は、走査ベースの投影デバイスの形態をとり、ディスプレイ画面は、導波管ベースのディスプレイの形態をとり、その中に、投影サブシステム２０８からの走査される光が投入され、例えば、無限遠（例えば、腕の長さ）より近い単一光学視認距離における画像、複数の離散光学視認距離または焦点平面における画像、および／または複数の視認距離または焦点面にスタックされ、立体３Ｄオブジェクトを表す画像層を生産する。ライトフィールド内のこれらの層は、ヒト副視覚系に連続して現れるように十分に近接してともにスタックされてもよい（例えば、１つの層が、隣接する層の混同の円錐内にある）。加えて、または代替として、ピクチャ要素が、２つ以上の層を横断して混成され、それらの層がより疎らにスタックされる（例えば、１つの層が、隣接する層の混同の円錐外にある）場合でも、ライトフィールド内の層間の遷移の知覚される連続性を増加させてもよい。ディスプレイシステム２０４は、単眼または双眼であってもよい。走査アセンブリは、光ビームを生産する（例えば、異なる色の光を定義されたパターンで放出する）、１つ以上の光源を含む。光源は、それぞれ、ピクセル情報またはデータの個別のフレーム内で規定された定義されたピクセルパターンに従って、赤色、緑色、および青色のコヒーレントなコリメートされた光を生産するように動作可能である、多種多様な形態のいずれか、例えば、ＲＧＢソースのセット（例えば、赤色、緑色、および青色光を出力することが可能なレーザダイオード）をとってもよい。レーザ光は、高色飽和を提供し、高度にエネルギー効率的である。光学結合サブシステムは、例えば、１つ以上の反射表面、回折格子、ミラー、ダイクロイックミラー、またはプリズム等の光学導波管入力装置を含み、光をディスプレイ画面の端部の中に光学的に結合する。光学結合サブシステムはさらに、光ファイバからの光をコリメートする、コリメーション要素を含む。随意に、光学結合サブシステムは、コリメーション要素からの光を光学導波管入力装置の中心内の焦点に向かって収束させ、それによって、光学導波管入力装置のサイズが最小限にされることを可能にするために構成される、光学変調装置を含む。したがって、ディスプレイシステム２０４は、１つ以上の仮想オブジェクトの歪曲されていない画像をユーザに提示する、ピクセル情報の一連の合成画像フレームを生成する。ディスプレイサブシステムを説明するさらなる詳細は、「Ｄｉｓｐｌａｙ  Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ」と題された米国実用特許出願第１４／２１２，９６１号（弁理士整理番号ＭＬ．２０００６．００）および「Ｐｌａｎａｒ  Ｗａｖｅｇｕｉｄｅ  Ａｐｐａｒａｔｕｓ  Ｗｉｔｈ  Ｄｉｆｆｒａｃｔｉｏｎ    Ｅｌｅｍｅｎｔａｎｄ  Ｓｕｂｓｙｓｔｅｍ  Ｅｍｐｌｏｙｉｎｇ  Ｓａｍｅ」と題された第１４／３３１，２１８号（弁理士整理番号ＭＬ．２００２０．００）（その内容は、参照することによって、全体として記載される場合と同様に、その全体として明示的かつ完全に本明細書に組み込まれる）に提供される。
【００５８】
ＡＲシステム２００はさらに、ユーザ２５０の頭部の位置（配向を含む）および移動および／またはユーザ２５０の眼位置および眼球間距離を検出するためにフレーム構造２０２に搭載される、１つ以上のセンサを含む。そのようなセンサは、画像捕捉デバイス、マイクロホン、慣性測定ユニット（ＩＭＵ）、加速度計、コンパス、ＧＰＳユニット、無線デバイス、ジャイロスコープ、および同等物を含んでもよい。例えば、一実施形態では、ＡＲシステム２００は、１つ以上の慣性変換器を含み、ユーザ２５０の頭部の移動を示す慣性測定値を捕捉する、頭部装着型変換器サブシステムを含む。そのようなデバイスは、ユーザ２５０の頭部移動についての情報を感知、測定、または収集するために使用されてもよい。例えば、これらのデバイスは、ユーザの頭部２５０の移動、速度、加速、および／または位置を検出／測定するために使用されてもよい。ユーザ２５０の頭部の位置（配向を含む）は、ユーザ２５０の「頭部姿勢」としても知られる。
【００５９】
図２ＡのＡＲシステム２００は、１つ以上の前方に面したカメラを含んでもよい。カメラは、システム２００の前方方向からの画像／ビデオの記録等、任意の数の目的のために採用されてもよい。加えて、カメラは、環境および環境内の具体的オブジェクトに対するユーザ２５０の距離、配向、および／または角位置を示す情報等、ユーザ２５０が位置する環境についての情報を捕捉するために使用されてもよい。
【００６０】
ＡＲシステム２００はさらに、後ろ向きに向いたカメラを含み、ユーザ２５０の眼の角位置（片眼または両眼が向いている方向）、瞬目、および焦点深度（眼収束を検出することによって）を追跡してもよい。そのような眼追跡情報は、例えば、光をエンドユーザの眼に投影させ、その投影された光の少なくとも一部の戻りまたは反射を検出することによって、判別されてもよい。
【００６１】
拡張現実システム２００はさらに、多種多様な形態のいずれかをとり得る、制御サブシステム２０１を含む。制御サブシステム２０１は、いくつかのコントローラ、例えば１つ以上のマイクロコントローラ、マイクロプロセッサまたは中央処理ユニット（ＣＰＵ）、デジタル信号プロセッサ、グラフィック処理ユニット（ＧＰＵ）、特定用途向け集積回路（ＡＳＩＣ）等の他の集積回路コントローラ、プログラマブルゲートアレイ（ＰＧＡｓ）、例えば、フィールドＰＧＡｓ（ＦＰＧＡｓ）、および／またはプログラマブル論理コントローラ（ＰＬＵ）を含む。制御サブシステム２０１は、デジタル信号プロセッサ（ＤＳＰ）、中央処理ユニット（ＣＰＵ）２５１、グラフィック処理ユニット（ＧＰＵ）２５２、および１つ以上のフレームバッファ２５４を含んでもよい。ＣＰＵ２５１は、システムの全体的動作を制御する一方、ＧＰＵ２５２は、フレームをレンダリングし（すなわち、３次元場面を２次元画像に変換する）、これらのフレームをフレームバッファ２５４内に記憶する。図示されないが、１つ以上の付加的集積回路は、フレームバッファ２５４の中へのフレームの読込および／またはそこからの読取およびディスプレイシステム２０４の動作を制御してもよい。フレームバッファ２５４の中への読込および／またはそこからの読取は、動的アドレス指定を採用してもよく、例えば、フレームは、オーバーレンダリングされる。制御サブシステム２０１はさらに、読取専用メモリ（ＲＯＭ）およびランダムアクセスメモリ（ＲＡＭ）を含む。制御サブシステム２０１はさらに、３次元データベース２６０を含み、そこから、ＧＰＵ２５２は、フレームをレンダリングするための１つ以上の場面の３次元データおよび３次元場面内に含有される仮想音源と関連付けられた合成音データにアクセスすることができる。
【００６２】
制御ＡＲ拡張現実サブシステム２０１０はさらに、ユーザ配向検出モジュール２４８を含む。ユーザ配向モジュール２４８は、ユーザ２５０の頭部の瞬間位置を検出し、センサから受信された位置データに基づいて、ユーザ２５０の頭部の位置を予測してもよい。ユーザ配向モジュール２４８はまた、センサから受信された追跡データに基づいて、ユーザ２５０の眼、特に、ユーザ２５０が合焦している方向および／または距離を追跡する。
【００６３】
図２Ｂは、いくつかの実施形態による、ＡＲシステム２００’を描写する。図２Ｂに描写されるＡＲシステム２００’は、図２Ａに描写され、上記に説明される、ＡＲシステム２００に類似する。例えば、ＡＲシステム２００’は、フレーム構造２０２と、ディスプレイシステム２０４と、スピーカ２０６と、リンク２０７を通してディスプレイシステム２０４に動作可能に結合される、制御サブシステム２０１’とを含む。図２Ｂに描写される制御サブシステム２０１’は、図２Ａに描写され、上記に説明される、制御サブシステム２０１に類似する。例えば、制御サブシステム２０１’は、投影サブシステム２０８と、画像／ビデオデータベース２７１と、ユーザ配向モジュール２４８と、ＣＰＵ２５１と、ＧＰＵ２５２と、３Ｄデータベース２６０と、ＲＯＭと、ＲＡＭとを含む。
【００６４】
制御サブシステム２０１’、したがって、図２Ｂに描写されるＡＲシステム２００’と、図２Ａに描写される対応するシステム／システムコンポーネントとの間の差異は、図２Ｂに描写される制御サブシステム２０１’内のブロック２９０の存在である。ブロック２９０は、ＧＰＵ２５２またはＣＰＵ２５１のいずれかから独立する、別個のワーピングブロックである。図２Ｃに図示されるように、ブロック２９０は、ワーピングユニット２８０と、データベース２９２と、合成ユニット２９４とを含む。合成ユニット２９４は、混成ユニット２９６を含む。図２Ｄに図示されるように、ワーピングユニット２８０は、姿勢推定器２８２と、変換ユニット２８４とを含む。
【００６５】
ＡＲシステム２００、２００’の種々の処理コンポーネントは、分散型サブシステム内に含有されてもよい。例えば、ＡＲシステム２００、２００’は、有線導線または無線コネクティビティ２０７等によって、ディスプレイシステム２０４の一部に動作可能に結合される、ローカル処理およびデータモジュール（すなわち、制御サブシステム２０１、２０１’）を含む。ローカル処理およびデータモジュールは、フレーム構造２０２に固定して取り付けられる、ヘルメットまたは帽子に固定して取り付けられる、ヘッドホンに内蔵される、ユーザ２５０の胴体に除去可能に取り付けられる、またはベルト結合式構成においてユーザ２５０の腰部に除去可能に取り付けられる等、種々の構成において搭載されてもよい。ＡＲシステム２００、２００’はさらに、遠隔モジュールが、相互に動作可能に結合され、ローカル処理およびデータモジュールに対するリソースとして利用可能であるように、有線導線または無線コネクティビティ等によって、ローカル処理およびデータモジュールに動作可能に結合される、遠隔処理モジュールおよび遠隔データリポジトリを含んでもよい。ローカル処理およびデータモジュールは、電力効率的プロセッサまたはコントローラおよびフラッシュメモリ等のデジタルメモリを備えてもよく、両方とも、可能性として、処理または読出後、ディスプレイシステム２０４への通過のために、センサから捕捉された、および／または遠隔処理モジュールおよび／または遠隔データリポジトリを使用して入手および／または処理されたデータの処理、キャッシュ、および記憶を補助するために利用されてもよい。遠隔処理モジュールは、データおよび／または画像情報を分析および処理するように構成される、１つ以上の比較的に強力なプロセッサまたはコントローラを備えてもよい。遠隔データリポジトリは、比較的に大規模デジタルデータ記憶設備を備えてもよく、これは、インターネットまたは「クラウド」リソース構成における他のネットワーキング構成を通して利用可能であってもよい。いくつかの実施形態では、全てのデータは、記憶され、全ての算出は、ローカル処理およびデータモジュール内で実施され、任意の遠隔モジュールからの完全に自律的使用を可能にする。上記に説明される種々のコンポーネント間の結合は、ワイヤまたは光学通信を提供するために、１つ以上の有線インターフェースまたはポート、または無線通信を提供するための、ＲＦ、マイクロ波、およびＩＲ等を介した１つ以上の無線インターフェースまたはポートを含んでもよい。いくつかの実装では、全ての通信は、有線であってもよい一方、他の実装では、全ての通信は、光ファイバを除き、無線であってもよい。
（問題およびソリューションの概要）
【００６６】
光学システムが、仮想コンテンツを生成／レンダリングするとき、仮想コンテンツがレンダリングされるときのシステムの姿勢に関連し得る、ソース基準フレームを使用し得る。ＡＲシステムでは、レンダリングされた仮想コンテンツは、実際の物理的オブジェクトと所定の関係を有し得る。例えば、図３は、実際の物理的台３１２の上部に位置付けられる、仮想植木鉢３１０を含む、ＡＲシナリオ３００を図示する。ＡＲシステムは、仮想植木鉢３１０が実際の台３１２の上部に静置しているかのように現れるように、実際の台３１２の場所が既知である、ソース基準フレームに基づいて、仮想植木鉢３１０をレンダリングした。ＡＲシステムは、第１の時間において、ソース基準フレームを使用して、仮想植木鉢３１０をレンダリングし、第１の時間の後の第２の時間において、レンダリングされた仮想植木鉢３１０を出力基準フレームを使用して表示／投影してもよい。ソース基準フレームおよび出力基準フレームが、同一である場合、仮想植木鉢３１０は、例えば、図３に図示されるように、意図された場所（例えば、実際の物理的台３１２の上部）に現れるであろう。
【００６７】
しかしながら、基準のフレームが、仮想植木鉢３１０がレンダリングされる第１の時間から、レンダリングされた仮想植木鉢３１０が表示／投影される第２の時間に変化する場合（例えば、ユーザ頭部移動に伴って）、ソース基準フレームと出力基準フレームとの間の不整合／差異は、視覚的アーチファクト／異常／グリッチをもたらし得る。例えば、図４は、実際の物理的台４１２の上部に位置付けられるようにレンダリングされた仮想植木鉢４１０を含む、ＡＲシナリオ４００を示す。しかしながら、ＡＲシステムは、仮想植木鉢４１０がレンダリングされた後であるが、表示／投影される前に、（例えば、右への頭部回転によって）右に移動されたため、仮想植木鉢４１０は、その意図される位置４１０’（想像線で示される）の右に表示される。したがって、仮想植木鉢４１０は、実際の物理的台４１２の右の空中に浮いているように現れる。本アーチファクトは、仮想植木鉢が次のソース基準フレーム内に再レンダリングされ、次の出力基準フレーム内に表示されると是正され得る（ＡＲシステム運動が中止すると仮定して）。しかしながら、アーチファクトは、依然として、一部のユーザには可視であって、仮想植木鉢４１０は、予期しない位置に一時的にジャンプすることによって、グリッチとして現れるであろう。本グリッチおよびそのような他のものは、ＡＲシナリオの連続性の錯覚に悪影響を及ぼし得る。
【００６８】
いくつかの光学システムは、レンダリングされた仮想コンテンツの基準のフレームを、仮想コンテンツが生成されたソース基準フレームから、仮想コンテンツが表示されるであろう出力基準フレームにワーピングまたは変換する、ワーピングシステムを含んでもよい。図４に描写される実施例では、ＡＲシステムは、出力基準フレームおよび／または姿勢を検出および／または予測することができる（例えば、ＩＭＵまたは眼追跡を使用して）。ＡＲシステムは、次いで、ソース基準フレームからのレンダリングされた仮想コンテンツを出力基準フレーム内のワーピングされた仮想コンテンツにワーピングまたは変換することができる。
【００６９】
図５は、いくつかの実施形態による、頭部回転を補正するための仮想コンテンツのワーピング（「回転ワーピング」）を図式的に図示する。光線５１０によって表されるソース基準フレーム（レンダリング姿勢）におけるレンダリングされた仮想コンテンツ５１２は、光線５１０’によって表される出力基準フレーム（推定される姿勢）におけるワーピングされた仮想コンテンツ５１２’にワーピングされる。図５に描写されるワーピングは、右への頭部回転を表し得る。レンダリングされた仮想コンテンツ５１２が、ソースＸ、Ｙ場所に配置される間、ワーピングされた仮想コンテンツ５１２’は、（定常基準フレーム内の）出力Ｘ’、Ｙ’場所に変換される。しかしながら、仮想コンテンツ５１２のレンダリングとワーピングされた仮想コンテンツ５１２’の表示との間のユーザの頭部およびＦＯＶの移動（例えば、右回転）に起因して、ワーピングされた仮想コンテンツ５１２’は、光線５１０によって表されるソース基準フレーム（レンダリング姿勢）に対するレンダリングされた仮想コンテンツ５１２の位置／配向と同一である光線５１０’によって表される、ディスプレイ基準フレーム（姿勢）に対する位置／配向に表示される。図５に描写されるワーピングは、レンダリングされた仮想コンテンツ５１２がレンダリング姿勢に表示されるかのように現れるであろうため、ディスプレイ姿勢に表示されるワーピングされた仮想コンテンツ５１２’をもたらす。
【００７０】
図６−９は、いくつかの実施形態による、頭部位置変化を補正するための仮想コンテンツのワーピング（「位置ワーピング」）を図式的に図示する。レンダリング姿勢からレンダリングされた仮想コンテンツ６１０、６１２は、ワーピングされ、ディスプレイ姿勢におけるワーピングされた仮想コンテンツ６１０’、６１２’を生成する。レンダリング姿勢からディスプレイ姿勢へのＦＯＶ変化は、位置変化（すなわち、随意の回転に加え、６自由度のうちのいくつかに沿った移動）である。
【００７１】
図６は、いくつかの実施形態による、位置ワーピングを描写する。例えば、ＡＲシステムは、全てのソースサブ部分をワーピングし、３−Ｄシナリオをレンダリングされた仮想コンテンツ内に形成し得る。例えば、チェスの駒６１０および立方体６１２を形成するプリミティブは、ワーピングされたチェスの駒６１０’およびワーピングされた立方体６１２’にワーピングされてもよい。チェスの駒６１０および立方体６１２は、図６において想像線で示され、それらがソース基準フレーム（すなわち、レンダリングＦＯＶ）内にあって、表示されないであろうことを示す。代わりに、出力基準フレーム（すなわち、位置変化後のディスプレイＦＯＶ）内のワーピングされたチェスの駒６１０’およびワーピングされた立方体６１２’（実線で示される）が、表示されるであろう。
【００７２】
いくつかのワーピングシステム／方法はまた、全てのサブ部分（例えば、ワーピングされたチェスの駒６１０’およびワーピングされた立方体６１２’を形成する各プリミティブ）を深度試験し、深度データを生成する。深度試験後、ＡＲシステムは、全てのワーピングされたサブ部分（例えば、プリミティブ）およびソース基準フレーム内のその相対的深度を記憶する（例えば、リスト内に）。ワーピングされた仮想コンテンツは、競合するワーピングされた仮想データの全てのインスタンスを含む、出力仮想コンテンツ内の各Ｘ、Ｙ位置（例えば、ピクセル）における全ての明度／色のリストとして記憶されてもよい。（下参照記）。
【００７３】
ワーピングシステムは、次いで、記憶されたワーピングされたサブ部分および相対的深度（例えば、リスト）の各Ｘ、Ｙの位置における全ての競合する仮想データを解決する。例えば、図７に図示されるように、３−Ｄシナリオの２つ以上の異なるサブ部分（例えば、チェスの駒６１０および立方体６１２）が、出力基準フレームにワーピングされると（例えば、ワーピングされたチェスの駒６１０’’およびワーピングされた立方体６１２’’）、これらのサブ部分の一部は、最終ディスプレイ画像の同一ピクセルの中にワーピング／投影され得る（すなわち、割り当てられる）。例えば、図７における面積６１４’’は、ワーピングされたチェスの駒６１０’’およびワーピングされた立方体６１２’’の「競合する」部分を表す。ワーピングシステムは、出力仮想コンテンツを生成するとき、ワーピングされた仮想コンテンツのこれらの競合する部分を解決／解消する。
【００７４】
いくつかの実施形態では、ワーピングされたチェスの駒６１０’’およびワーピングされた立方体６１２’’（例えば、第１および第２の仮想コンテンツ）の個別のピクセルが、ディスプレイの同一ピクセル（すなわち、衝突するピクセル）上に表示されるであろう場合、ワーピングシステムは、個別の衝突／競合するピクセルに対応する記憶された深度データを比較してもよい。出力基準フレーム内の視認場所により近い衝突するピクセル（例えば、ワーピングされた仮想コンテンツ）が、表示される（コンテンツは不透明であると仮定する）。出力基準フレーム内の視認場所に最も近い衝突するピクセルは、最終ディスプレイ画像を生成するために使用される。残りの衝突するピクセルは、破棄される。
【００７５】
図８に示される１つのインスタンスでは、ワーピングされたチェスの駒６１０’’’は、ワーピングされた立方体６１２’’’よりユーザに近い。したがって、ワーピングされたチェスの駒６１０’’’およびワーピングされた立方体６１２’’’のピクセルが衝突するとき、ワーピングされたチェスの駒６１０’’’のピクセルが、出力コンテンツに表示される。図９に示される別のインスタンスでは、ワーピングされた立方体６１２’’’’は、ワーピングされたチェスの駒６１０’’’’よりユーザに近い。したがって、ワーピングされたチェスの駒６１０’’’’およびワーピングされた立方体６１２’’’’のピクセルが衝突するとき、ワーピングされた立方体６１２’’’’のピクセルが、出力コンテンツに表示される。いくつかのワーピングシステムは、ソース基準フレーム内の深度データを生成するため、深度比較は、複数の変換を伴い得、直接比較より複雑であり得る。
【００７６】
ワーピング方法の種々のステップは、米国実用出願第１５／９２４，０１１号（その内容は、参照することによって上記においてすでに組み込まれている）に説明されるように、２つの工程または単一工程において実施されることができる。位置ワーピングシステム／方法（ワーピング、深度試験、深度比較、合成等）は、比較的に算出上高価であって（プロセッサ／メモリ関連システム限界をもたらす）、比較的に時間がかかり得る（システム待ち時間をもたらす）。故に、いくつかのワーピング方法は、回転ワーピングに焦点を当てる。しかしながら、回転ワーピングは、光学軸に直交する側方ユーザＦＯＶ移動等の種々のユーザＦＯＶ移動に伴って、種々のアーチファクト（下記に詳細に説明される、ディスオクルージョン、ジッタ、スミア）をもたらし得る。
【００７７】
これらの限界に対処するために、本明細書に説明されるシステム／方法は、ユーザＦＯＶが（例えば、光学軸に直交して側方に）移動されるとき、仮想コンテンツをワーピングするための種々の実施形態を含む。いくつかの実施形態は、側方ユーザＦＯＶ移動を参照して説明されるが、これらの実施形態は、他のタイプのユーザＦＯＶ移動から生じるアーチファクトにも対処する。これは、表示のためにワーピングされなければならない、３−Ｄシナリオの複雑性に伴って増加する、要求される算出費用および時間を最小限にする。故に、開示される実施形態は、いくつかの複合現実システム等のリアルタイムシステムを促進し、これは、サイズ、電力、熱、および他の処理関連パラメータを許容限度内に維持する。
（例証的グラフィック処理ユニット）
【００７８】
図１０は、いくつかの実施形態による、レンダリングされた仮想コンテンツを出力／ディスプレイ基準フレームにワーピングするための例示的グラフィック処理ユニット（ＧＰＵ）２５２を図式的に描写する。ＧＰＵ２５２は、入力メモリ１０１０を含み、ワーピングされるためのレンダリングされた仮想コンテンツを記憶する。いくつかの実施形態では、仮想コンテンツは、プリミティブ（例えば、図１１では、三角形１１００）として記憶される。ＧＰＵ２５２はまた、コマンドプロセッサ１０１２を含み、これは、（１）仮想コンテンツを入力メモリ１０１０から受信し／読み取り、（２）仮想コンテンツをスケジューリングユニットに分割し、（３）並列処理のために、スケジューリングユニットをレンダリングパイプラインに沿って波またはワープ内で送信する。ＧＰＵ２５２はさらに、スケジューラ１０１４を含み、（１）スケジューリングユニットをコマンドプロセッサ１０１２から受信し、（２）コマンドプロセッサ１０１２からの「新しい作業」またはレンダリングパイプライン（下記に説明される）内の下流から戻る「古い作業」がレンダリングパイプラインを辿って任意の特定の時間に送信されるべきであるかどうかを決定する。事実上、スケジューラ１０１４は、ＧＰＵ２５２が種々の入力データを処理するシーケンスを決定する。
【００７９】
ＧＰＵ２５２は、１つ以上のＧＰＵコア１０１６を含み、各ＧＰＵコア１０１６は、スケジューリングユニットを並行して処理するために、いくつかの並行実行可能コア／ユニット（「シェーダコア」）１０１８を有する。コマンドプロセッサ１０１２は、仮想コンテンツをシェーダコア１０１８の数と等しい数（例えば、３２）に分割する。ＧＰＵ２５２はまた、「先入れ先出し」（「ＦＩＦＯ」）メモリ１０２０を含み、ＧＰＵコア１０１６からの出力を受信する。ＦＩＦＯメモリ１０２０から、出力は、ＧＰＵコア１０１６によるレンダリングパイプラインの付加的処理の中への挿入のために、スケジューラ１０１４に「古い作業」として戻るようにルーティングされてもよい。
【００８０】
ＧＰＵ２５２はさらに、ＦＩＦＯメモリ１０２０からの出力を受信し、表示のために、出力をラスタ化する、ラスタ演算ユニット（「ＲＯＰ」）１０２２を含む。例えば、仮想コンテンツのプリミティブは、三角形の頂点の座標として記憶されてもよい。ＧＰＵコア１０１６による処理（その間、図１１の三角形１１００の３つの頂点１１１１、１１１２、１１１４がワーピングされ得る）後、ＲＯＰ１０２２は、３つの頂点１１１１、１１１２、１１１４によって画定された三角形１１００の内側のピクセル１１１６を決定し、仮想コンテンツ内のそれらのピクセル１１１６を充填する。ＲＯＰ１０２２はまた、深度試験を仮想コンテンツ上で実施してもよい。
【００８１】
ＧＰＵ２５２はまた、ＲＯＰ１０２２からのワーピングされた仮想コンテンツを一時的に記憶するためのバッファメモリ１０２４を含む。バッファメモリ１０２４内のワーピングされた仮想コンテンツは、出力基準フレーム内の視野の複数のＹ位置における明度／色および深度情報を含んでもよい。バッファメモリ１０２４からの出力は、ＧＰＵコア１０１６によるレンダリングパイプラインの付加的処理の中への挿入のために、またはディスプレイシステムの対応するピクセル内における表示のために、スケジューラ１０１４に「古い作業」として戻るようにルーティングされてもよい。ＧＰＵコア１０１６は、最初に、三角形１１００の頂点１１１１、１１１２、１１１４を処理し、次いで、三角形１１００の内側のピクセル１１１６を処理する。入力メモリ１０１１内の仮想コンテンツの全てのフラグメントが、ワーピングおよび深度試験されると（必要な場合）、バッファメモリ１０２４は、視野を出力基準フレーム内に表示するために必要とされる明度／色および深度情報の全てを含むであろう。
（側方偏移のための仮想コンテンツワーピングシステムおよび方法）
【００８２】
頭部姿勢変化を伴わない画像処理では、ＧＰＵ２５２による処理の結果は、個別のＸ、Ｙ値における（例えば、各ピクセルにおける）色／明度値および深度値である。しかしながら、側方頭部姿勢変化（すなわち、光学軸に直交するディスプレイＦＯＶの側方移動）を伴うと、仮想コンテンツが生成されたソース基準フレームと異なる、出力基準フレーム内の視認場所から視認される仮想コンテンツの異なる部分は、種々のアーチファクトを含み得る。上記に説明されるように、側方頭部姿勢変化後の側方移動アーチファクトを補正するための位置ワーピングは、算出上高価かつ低速であって、複合現実システム等のポータブルディスプレイシステムとの併用を困難にし得る。さらに、側方頭部姿勢変化に伴う回転ワーピングは、種々の他のアーチファクトをもたらし得る。
【００８３】
図１２−１４は、いくつかの実施形態による、側方ＦＯＶ移動に応答した位置ワーピングを描写する。図１２は、レンダリングされた仮想オブジェクト（チェスの駒１２１０および立方体１２１２）を描写する。
【００８４】
図１３は、左側方ＦＯＶ移動後のレンダリングされた仮想オブジェクト１２１０、１２１２およびワーピングされた仮想オブジェクト１２１０’、１２１２’を描写する。レンダリングされた仮想オブジェクト１２１０、１２１２は、図１３では、想像線で示され、ソース基準フレーム内で生成され、ディスプレイ基準フレーム内にない、チェスの駒１２１０および立方体１２１２が、表示されないことを示す。ワーピングシステムが、チェスの駒１２１０および立方体１２１２をワーピングした後のみ、ワーピングされたチェスの駒１２１０’およびワーピングされた立方体１２１２’（実線で示される）が、表示される。
【００８５】
図１４は、レンダリングされた仮想オブジェクト１２１０、１２１２を上面図から図式的に描写し、レンダリングされた仮想オブジェクト１２１０、１２１２の深度の差異を示す。チェスの駒１２１０は、深度Ｄ１０（すなわち、チェスの駒１２１０の中心の深度）において、視認者により近くなり、立方体１２１２は、深度Ｄ１２（すなわち、立方体１２１２の中心の深度）において視認者からより遠くなる。その結果、同一左側方ＦＯＶ移動に伴って、より近いオブジェクト（チェスの駒１２１０）は、より遠いオブジェクト（立方体１２１２）と比較して、さらに右に移動するように現れる。本差異は、ワーピングされたチェスの駒１２１０’およびワーピングされた立方体１２１２’の異なる右偏移によって、図１３に図示される。図１３に描写される右偏移における差異は、本原理／影響を図示するように選択され、直接、図１４に描写される深度差異と相関されない。大深度差異を用いることで、より近いオブジェクトは、右に偏移するように現れることができる一方、より遠いオブジェクトは、定常であるように現れることができる。
【００８６】
いくつかの実施形態では、各レンダリングされた仮想オブジェクト１２１０、１２１２の各ピクセルを深度試験し、その深度に基づいて、各ピクセルをワーピングすることは、そのような位置ワーピングがポータブルシステム内で実装するために非実践的であり得るほど、算出上高価であり得る。
（ディスオクルージョンアーチファクト）
【００８７】
図１５−１９は、いくつかの実施形態による、位置ワーピングに伴う、ディスオクルージョンアーチファクトを描写する。図１５は、レンダリング姿勢からのチェスの駒１５１０と立方体１５１２との間の重複１５１４の面積を伴う、レンダリングされた仮想オブジェクト（チェスの駒１５１０および立方体１５１２）を描写する。図１６は、チェスの駒１５１０が立方体１５１２より視認者に近いため、重複面積１５１４に対応する立方体１５１２の部分がレンダリングされず、重複面積１５１４に対応するチェスの駒１５１０の部分がレンダリングされることを示す。
【００８８】
図１７は、図１３におけるように、左への側方ユーザ頭部移動に伴って、仮想オブジェクト（チェスの駒１５１０および立方体１５１２）が、右にワーピングされ、ワーピングされた仮想オブジェクト（チェスの駒１５１０’およびワーピングされた立方体１５１２’）を生成することを図式的に示す。図１３および１４に関して解説されるように、チェスの駒１５１０は、立方体１５１２より視認者に近いため、チェスの駒１５１０は、左への側方ユーザ頭部移動に応答して、立方体１５１２よりさらに右にワーピングされるであろう。チェスの駒１５１０’およびワーピングされた立方体１５１２’の本差動ワーピングは、重複面積１５１４に対応する立方体１５１２の部分を露出または「ディスオクルード」させる。図１６に戻って参照すると、重複面積１５１４に対応する立方体１５１２の部分は、レンダリングされなかった。故に、以前にオクルードされた重複面積１５１４’に対応するワーピングされた立方体１５１２’のここでディスオクルードされている部分は、ソース仮想オブジェクト（すなわち、立方体１５１２）が重複面積１５１４を含んでいなかったため、表示されることができない。
【００８９】
図１８は、任意の非レンダリング部分を含まない、図１７に説明される位置ワーピングを示す。図１８は、ワーピングされた立方体１５１２’が、以前にオクルードされていた部分（図１７における１５１４’参照）を含まないことを示す。図１９は、側方ユーザ頭部移動が図１８に描写されるフレームで停止すると仮定してレンダリングおよび表示される、次のフレームを描写する。図１９に示されるように、ユーザＦＯＶ移動を伴わない次のレンダリングに伴って、新しくレンダリングされたチェスの駒１５１０’’および立方体１５１２’’は、図１７におけるように、実質的に同一位置に留まる。しかしながら、新しくレンダリングされた立方体１５１２’’は、以前にオクルードされている部分（図１７における１５１４’参照）を含み、それによって、完全立方体１５１２’’を形成する。
【００９０】
図１８および１９の比較は、仮想オブジェクト（図１７における１５１４’参照）の以前にオクルードされている部分が、ワーピングが、図１８に示されるように、以前にディスオクルードされている部分を露出させた後、最初は表示されない、ディスオクルージョンアーチファクトを示す。次いで、以前にオクルードされている部分は、仮想オブジェクトが、図１９に示されるように、次にレンダリングおよび表示されると、現れる。図１７−１９に描写されるディスオクルージョンアーチファクトは、消失し、現れる、仮想オブジェクト（立方体）の有意な部分を含むが、他の実施形態では、深度の差異、重複の量、ＦＯＶ移動の速さを含む、多くの要因に応じて、ディスオクルージョンアーチファクトは、中実仮想オブジェクト内の亀裂または他の欠測部分として露見し得る。露見にかかわらず、ディスオクルージョンアーチファクトは、ユーザ体験に影響を及ぼし、複合現実シナリオの現実性を低減させ得る。図１５−１９に描写される実施形態は、依然として、位置ワーピングを利用するため、ディスオクルージョンアーチファクトはまた、位置ワーピングの算出費用を伴う。
（スミアアーチファクト）
【００９１】
図２０および２１は、いくつかの実施形態による、ワーピングに伴う、スミアアーチファクトを描写する。上記に説明されるディスオクルージョンアーチファクトを最小限にするために、いくつかのワーピングシステム／方法は、ワーピングによってディスオクルードされるとき、遠仮想オブジェクトを伸展させ、差動的にワーピングされた仮想オブジェクト間の空間を埋める。図２０は、左への側方ユーザ頭部移動に応答して、ワーピングされた仮想オブジェクト（ワーピングされたチェスの駒２０１０’およびワーピングされた立方体２０１２’）を生成するための仮想オブジェクト（チェスの駒２０１０および立方体２０１２）の右へのそのようなワーピングを示す。立方体２０１２の非オクルード部分は、伸展され、充填セクション２０１６をワーピングされたチェスの駒２０１０’とワーピングされた立方体２０１２’との間の空間内に形成する。
【００９２】
図２１は、ユーザＦＯＶ移動を伴わない、チェスの駒２０１０’’および立方体２０１２’’の次のレンダリングを描写する。次のレンダリングを用いることで、新しくレンダリングされたチェスの駒２０１０’’および立方体２０１２’’は、図２０におけるように、実質的に同一位置に留まる。しかしながら、新しくレンダリングされた立方体２０１２’’は、完全立方体（例えば、図１７からの立方体１５１４）に基づき、図２０における充填セクション２０１６を含まない。さらに、新しくレンダリングされた立方体２０１２’’の部分と以前にレンダリングされた立方体２０１２の異なる部分に基づいた充填セクション２０１６との間の特性における任意の差異部分が、図２０および２１を比較すると、ユーザに明白となるであろう。そのような特性は、色、テクスチャ、および同等物を含み得る。新しくレンダリングされた立方体２０１２’’の部分と充填セクション２０１６との間の特性における本差異は、充填セクション２０１６が、以前にレンダリングされた立方体２０１２／２０１２’の異なる部分のスミアとして現れ得るため、スミアアーチファクトと称され得る。スミアアーチファクトもまた、ユーザ体験に影響を及ぼし、複合現実シナリオの現実性を低減させ得る。図２０−２１に描写される実施形態は、依然として、位置ワーピングを利用するため、スミアアーチファクトはまた、位置ワーピングの算出費用を伴う。
（単一深度ワーピングおよびジッタアーチファクト）
【００９３】
図２２−２７は、２つのタイプの実施形態（図２２−２４および２５−２７）による、単一深度ワーピングを描写する。図２２−２４は、いくつかの実施形態による、単一深度ワーピングを描写する。図２２は、レンダリングされた仮想オブジェクト、すなわち、比較的により近い深度におけるチェスの駒２２１０と、比較的により遠い深度における立方体２２１２とを描写する。
【００９４】
図２３は、単一深度を使用してレンダリングされた仮想オブジェクト２２１０、２２１２をワーピングするステップを描写する。単一深度を使用することによって、ワーピングされた仮想オブジェクト（ワーピングされたチェスの駒２２１０’とワーピングされた立方体２２１２’）間の相対的空間関係は、レンダリングされた仮想オブジェクト２２１０、２２１２間の相対的空間関係と実質的に同一である。ワーピングされた仮想オブジェクト２２１０’、２２１２’間の実質的に同一相対的空間関係の維持は、立方体２２１２のオクルードされる部分が、立方体２２１２’’全体が図２４において再レンダリングされるまで、ディスオクルードされないため、ディスオクルージョンアーチファクトを最小限にする。
【００９５】
図２２−２４に描写される実施形態における、レンダリングされた仮想オブジェクト２２１０、２２１２をワーピングするために使用される単一深度は、ＦＯＶ内の任意の仮想オブジェクト（すなわち、チェスの駒２２１０）の最近深度である。本最近深度は、レンダリングされた仮想オブジェクト２２１０、２２１２に対応するデータ内に含まれる。したがって、深度試験は、要求されない。これは、本単一深度ワーピング方法の算出負荷を低減させる。
【００９６】
図２３におけるワーピングされた仮想オブジェクト２２１０’、２２１２’と図２４における再レンダリングされた仮想オブジェクト２２１０’’、２２１２’’（すなわち、ユーザＦＯＶ移動を伴わない、次のレンダリングされたフレーム）の比較は、ワーピングされたチェスの駒２２１０’および再レンダリングされたチェスの駒２２１０’’が、チェスの駒２２１０をワーピングするために使用される深度がチェスの駒２２１０の近深度Ｄ１０であるため、実質的に同一場所にあることを示す。他方では、ワーピングされた立方体２２１２’および再レンダリングされた立方体２２１２’’は、立方体２２１２をワーピングするために使用される深度Ｄ１０が立方体２２１２の実際の遠深度Ｄ１２未満であるため、異なる位置にある。これは、左側方ＦＯＶ移動に応答して、ワーピングされた立方体２２１２’を右に過度に偏移させる。故に、図２３におけるワーピングされた仮想オブジェクト２２１０’、２２１２’に続いて、図２４における再レンダリングされた仮想オブジェクト２２１０’’、２２１２’’を順次表示することは、レンダリングされた立方体２２１２を、右に移動し、次いで、左に跳ね返るように現れさせる。本「ジッタアーチファクト」（または「揺れアーチファクト」）は、持続ＦＯＶ移動によって悪化され、概して、より遠いオブジェクト（すなわち、レンダリングされた立方体２２１２）または背景におけるオブジェクトに関して一連の方向変化をもたらす。
【００９７】
図２５−２７は、いくつかの他の実施形態による、単一深度ワーピングを描写する。図２５は、レンダリングされた仮想オブジェクト、すなわち、比較的により近い深度におけるチェスの駒２５１０と、比較的により遠い深度における立方体２５１２とを描写する。
【００９８】
図２６は、単一深度を使用して、レンダリングされた仮想オブジェクト２５１０、２５１２をワーピングし、ワーピングされた仮想オブジェクト（ワーピングされたチェスの駒２５１０’とワーピングされた立方体２５１２’）間の実質的に同一相対的空間関係を維持するステップを描写する。上記に解説されるように、ワーピングされた仮想オブジェクト２５１０’、２５１２’間の本質的に同一の相対的間隔を維持することは、立方体２５１２のオクルードされる部分が、立方体２５１２’’全体が図２７において再レンダリングされるまで、ディスオクルードされないため、ディスオクルージョンアーチファクトを最小限にする。
【００９９】
図２５−２７に描写される実施形態における、レンダリングされた仮想オブジェクト２５１０、２５１２をワーピングするために使用される単一深度は、ＦＯＶ内の任意の仮想オブジェクト（すなわち、立方体２５１２）の最遠深度である。本最遠深度は、レンダリングされた仮想オブジェクト２５１０、２５１２に対応するデータ内に含まれる。したがって、深度試験は、要求されない。これは、本単一深度ワーピング方法の算出負荷を低減させる。
【０１００】
図２６におけるワーピングされた仮想オブジェクト２５１０’、２５１２’と図２７における再レンダリングされた仮想オブジェクト２５１０’’、２５１２’’（すなわち、ユーザＦＯＶ移動を伴わない、次のレンダリングされたフレーム）の比較は、ワーピングされた立方体２５１２’および再レンダリングされた立方体２５１２’’が、立方体２５１２をワーピングするために使用される深度が立方体２５１２の遠深度Ｄ１２であるため、実質的に同一場所にあることを示す。他方では、ワーピングされたチェスの駒２５１０’および再レンダリングされたチェスの駒２５１０’’は、チェスの駒２５１０をワーピングするために使用される深度Ｄ１２がチェスの駒２５１０の実際の近深度Ｄ１０を上回るため、異なる位置にある。これは、左側方ＦＯＶ移動に応答して、ワーピングされたチェスの駒２５１０’を右に過小偏移させる。故に、図２６におけるワーピングされた仮想オブジェクト２５１０’、２５１２’に続いて、図２７における再レンダリングされた仮想オブジェクト２５１０’’、２５１２’’を順次表示することは、レンダリングされたチェスの駒２５１０を、部分的に右に移動し、次いで、さらに右に移動し、立方体２５１２をディスオクルードするように現れさせる。本アーチファクトは、上記に説明され、図２２−２４に示される、ジッタアーチファクトと比較して、典型的ユーザのための複合現実シナリオの現実性にあまり影響を及ぼさない。これは、方向変化に伴うジッタまたは揺れではなく、（全くではないにしても）遅れとして知覚される、図２５−２７に描写されるアーチファクトにおける方向変化の欠如に起因し得る。
【０１０１】
ＦＯＶ内の仮想オブジェクトの最遠および最近深度の両方を使用した単一距離ワーピングが、上記に説明されたが、ＦＯＶ内の他の深度もまた、レンダリングされた仮想オブジェクトをワーピングするために使用されてもよい。例えば、いくつかの実施形態では、単一距離は、ＦＯＶ内の最近および最遠オブジェクトの距離の代表値である。いくつかの実施形態では、単一距離は、ＦＯＶ内の全てのオブジェクトの距離の平均値／代表値である。いくつかの実施形態では、単一距離は、ＦＯＶ内の全てのオブジェクトの距離の中央値である。
（複数の離散深度ワーピング）
【０１０２】
図２８−３１は、いくつかの実施形態による、複数の深度ワーピングを描写する。図２８は、レンダリングされた仮想オブジェクト、すなわち、比較的により近い深度におけるチェスの駒２８１０と、比較的により遠い深度における立方体２８１２とを描写する。
【０１０３】
図２９Ａは、上面図からのレンダリングされた仮想オブジェクト２８１０、２８１２を描写し、レンダリングされた仮想オブジェクト２８１０、２８１２の深度の差異を示す。チェスの駒２８１０は、深度Ｄ１０において視認者により近くなり、立方体２８１２は、深度Ｄ１２において視認者からより遠くなる。図２９Ａはまた、ＦＯＶが分割される、６つの離散深度スライス２８１４、２８１６、２８１８、２８２０、２８２２、２８２４を示す。いくつかの実施形態では、これらの離散深度スライス２８１４、２８１６、２８１８、２８２０、２８２２、２８２４は、ＶＲ／ＡＲ／ＭＲシステムが仮想コンテンツを表示するように構成される、深度スライスに対応する。深度スライス２８１４、２８１６、２８１８、２８２０、２８２２、２８２４は、光学軸に沿って限界を有する。例えば、いくつかの実施形態による、深度スライスは、ユーザの眼から０．３７ｍ〜１．５ｍに及び得る。いくつかの実施形態による、別の深度スライスは、ユーザの眼から１．５ｍを上回る全ての距離を含み得る。
【０１０４】
図２９Ａは、類似厚さを有する、６つの深度スライス２８１４、２８１６、２８１８、２８２０、２８２２、２８２４を描写するが、他の実施形態では、ユーザの眼により近い深度スライスは、ユーザがユーザに近い深度差異により敏感であるため、より薄い厚さを有する。例えば、図２９Ｂは、いくつかの他の実施形態による、６つの深度スライス２８１４’、２８１６’、２８１８’、２８２０’、２８２２’、２８２４’を描写する。図２９Ｂでは、各連続的により遠くなる深度スライス（例えば、２８１６’対２８１４’）は、より厚い厚さを有する。例えば、１ｍおよび２ｍにおけるオブジェクトは、離散深度スライス内に位置し得るが、５ｍおよび１０ｍにおけるオブジェクトは、同一深度スライス内に位置し得る。いくつかの実施形態では、最遠深度スライス２８２４’は、無限遠まで延在する。種々の実施形態では、深度スライスの厚さは、線形または対数的に増加し得る（図２９Ｂに示されるように）。
【０１０５】
図２９Ａは、６つの深度スライス２８１４、２８１６、２８１８、２８２０、２８２２、２８２４を描写するが、他の実施形態では、ＦＯＶが分割される、深度スライスの数は、ＦＯＶ内の仮想オブジェクトの数に対応し得る。例えば、ＦＯＶ内に３つの仮想オブジェクトが存在する場合、ＦＯＶは、３つの深度スライスに分割されるであろう。図２９Ａおよび２９Ｂは、６つの深度スライスを含むが、他の実施形態では、深度スライスの数は、仮想シナリオおよび利用可能なシステムリソースに応じて、６つを上回るまたはそれ未満であることができる。
【０１０６】
図３０は、レンダリングされた仮想オブジェクト２８１０、２８１２毎に、異なる深度を使用して、（図２９Ａにおける）レンダリングされた仮想オブジェクト２８１０、２８１２をワーピングし、ワーピングされた仮想オブジェクト２８１０’、２８１２’をより正確に位置付けるステップを描写する。いくつかの実施形態では、比較的により近いチェスの駒２８１０をワーピングするために使用される距離は、チェスの駒２８１０を含有する、深度スライス２８１６の遠距離（「遠クリップ」）Ｄ１６である。比較的により遠い立方体２８１２をワーピングするために使用される距離は、立方体２８１２の大部分を含有する、深度スライス２８２２の遠クリップＤ２２である。他の実施形態では、オブジェクトをワーピングするために使用される距離は、仮想オブジェクトの全てまたは大部分または一部を含有する、深度スライスの中間距離または任意の他の距離であってもよい。
【０１０７】
図３０におけるワーピングされた仮想オブジェクト２８１０’、２８１２’と図３１における再レンダリングされた仮想オブジェクト２８１０’’、２８１２’’（すなわち、ユーザＦＯＶ移動を伴わない、次のレンダリングされたフレーム）の比較は、図２８−３１に描写される複数の離散深度ワーピングが、完全位置ワーピングと比較して、算出負荷を低減させ得るが、依然として、ディスオクルージョンアーチファクトを被りやすいことを示す。
【０１０８】
図２９Ａに示される仮想オブジェクト２８１０、２８１２は、いくつかの深度スライスによって分離されるが、他の実施形態では、仮想オブジェクトは、最小限のワーピングアーチファクトとともにワーピングされ得るように小さい距離によって分離されてもよい。例えば、いくつかの実施形態では、相互から０．１ｍ未満離れたオブジェクト（例えば、１．５ｍ対１．６ｍ）は、複数の深度ワーピングをトリガしない。他の実施形態では、複数の深度ワーピングのための閾値は、ジオプタ単位で測定されることができる（例えば、１ジオプタを上回って離れたオブジェクトに関してのみ）。
（眼追跡に基づく単一深度ワーピング）
【０１０９】
図３２−３８は、いくつかの実施形態による、眼追跡に基づく、単一深度ワーピングを描写する。図３２は、レンダリングされた仮想オブジェクト、すなわち、比較的により近い深度におけるチェスの駒３２１０と、比較的により遠い深度における立方体３２１２とを描写する。
【０１１０】
図３３は、上面図からのレンダリングされた仮想オブジェクト３２１０、３２１２を描写し、レンダリングされた仮想オブジェクト３２１０、３２１２の深度の差異を示す。チェスの駒３２１０は、深度Ｄ１０において視認者により近くなり、立方体３２１２は、深度Ｄ１２における視認者からより遠くなる。図３３はまた、ユーザの眼３２２６がチェスの駒３２１０の場所と一致する方向３２２８を追跡していることを示す。ユーザの眼３２２６の方向は、例えば、ＡＲシステム２００上のセンサ／カメラを使用して追跡されることができる。
【０１１１】
ユーザの眼３２２６の方向３２２８は、チェスの駒３２１０を追跡しているため、レンダリングされた仮想オブジェクト３２１０、３２１２の両方をワーピングするために使用される深度は、チェスの駒３２１０を含有する、深度スライス３２１６の遠クリップＤ１６である。本ワーピングの結果は、図３４に示され、ワーピングされた仮想オブジェクト３２１０’、３２１２’は、より遠い立方体３２１２の深度Ｄ１２よりも、より近いチェスの駒３２１０の深度Ｄ１０に類似する、深度Ｄ１６を使用して生成される。
【０１１２】
上記に解説されるように、図３４におけるワーピングされたチェスの駒３２１０’および図３５における再レンダリングされたチェスの駒３２１０’’（すなわち、ユーザＦＯＶ移動を伴わない、次のレンダリングされたフレーム）は、チェスの駒３２１０をワーピングするために使用される深度Ｄ１６がチェスの駒３２１０の深度Ｄ１０に近似するため、実質的に同一場所にある。他方では、ワーピングされた立方体３２１２’および再レンダリングされた立方体３２１２’’は、立方体３２１２をワーピングするために使用される深度Ｄ１６が、立方体３２１２の実際の遠深度Ｄ１２未満であるため、異なる位置にある。これは、左側方ＦＯＶ移動に応答して、ワーピングされた立方体３２１２’を右に過度に偏移させる。故に、図３４におけるワーピングされた仮想オブジェクト３２１０’、３２１２’に続いて、図３５における再レンダリングされた仮想オブジェクト３２１０’’、３２１２’’を順次表示することは、レンダリングされた立方体３２１２を、右に移動し、次いで、左に跳ね返るように現れさせ、ジッタアーチファクトをもたらす。
【０１１３】
しかしながら、これらの実施形態は、システムがより近いオブジェクト（すなわち、チェスの駒３２１２）へのユーザの眼３２２６の方向３２２８を追跡しているため、全てのレンダリングされた仮想コンテンツをワーピングするための単一深度として深度Ｄ１６を使用する。故に、ワーピングされた立方体３２１２’および再レンダリングされた立方体３２１２’’が、表示される間、ユーザの焦点は、立方体３２１２から離れる。ワーピングされた立方体３２１２’および再レンダリングされた立方体３２１２’’は、図３４および３５では、破線で示され、ユーザの焦点が立方体３２１２から離れることを示す。その結果、図３４に描写されるワーピングは、ジッタアーチファクトを含む場合でも、そのアーチファクトの影響は、立方体３２１２から離れるユーザの焦点によって最小限にされる。立方体３２１２から離れるように指向されるユーザの焦点は、点線を使用してワーピングおよび再レンダリングされた立方体３２１２’、３２１２’’をレンダリングすることによって、図３４および３５に描写される。他方では、ユーザの焦点は、チェスの駒３２１０に指向され、これは、ワーピングされたチェスの駒３２１０’により正確にワーピングされる。
【０１１４】
図３６は、図３３に類似する、上面図からのレンダリングされた仮想オブジェクト３２１０、３２１２を描写する。図３６はまた、ユーザの眼３２２６’が、立方体３２１２の場所と一致する、方向３２２８’を追跡していることを示す。
【０１１５】
ユーザの眼３２２６’の方向３２２８’は、立方体３２１２を追跡しているため、レンダリングされた仮想オブジェクト３２１０、３２１２の両方をワーピングするために使用される深度は、立方体３２１２の大部分を含有する、深度スライス３２２２の遠クリップＤ２２である。本ワーピングの結果は、図３７に示され、ワーピングされた仮想オブジェクト３２１０’’’、３２１２’’’は、チェスの駒３２１０の深度Ｄ１０よりも、立方体３２１２の深度Ｄ１２に類似する、深度Ｄ２２を使用して生成される。
【０１１６】
上記に解説されるように、図３７におけるワーピングされた立方体３２１２’’’および図３８における再レンダリングされた立方体３２１２’’’’（すなわち、ユーザＦＯＶ移動を伴わない、次のレンダリングされたフレーム）は、立方体３２１２をワーピングするために使用される深度Ｄ２２が立方体３２１２の遠深度Ｄ１２に近似するため、実質的に同一場所にある。他方では、ワーピングされたチェスの駒３２１０’’’および再レンダリングされたチェスの駒３２１０’’’’は、チェスの駒３２１０をワーピングするために使用される深度Ｄ１６がチェスの駒３２１０の実際の近深度Ｄ１０未満であるため、異なる位置にある。これは、左側方ＦＯＶ移動に応答して、ワーピングされたチェスの駒３２１０’’’を右に過小偏移させる。故に、図３７におけるワーピングされた仮想オブジェクト３２１０’’’、３２１２’’’に続いて、図３８における再レンダリングされた仮想オブジェクト３２１０’’’’、３２１２’’’’を順次表示することは、レンダリングされたチェスの駒３２１０を、右に部分的に移動し、次いで、さらに右に移動し、立方体３２１２をディスオクルードするように現れさせ、遅れアーチファクトをもたらす。
【０１１７】
しかしながら、これらの実施形態は、システムがより遠いオブジェクト（すなわち、立方体３２１２）へのユーザの眼３２２６’の方向３２２８’を追跡しているため、全てのレンダリングされた仮想コンテンツをワーピングするための単一深度として深度Ｄ２２を使用する。故に、ワーピングされたチェスの駒３２１０’’’および再レンダリングされたチェスの駒３２１０’’’’が、表示される間、ユーザの焦点は、チェスの駒３２１０から離れる。ワーピングされたチェスの駒３２１０’’’および再レンダリングされたチェスの駒３２１０’’’’は、図３６および３７では、破線で示され、ユーザの焦点がチェスの駒３２１０から離れることを示す。その結果、図３６に描写されるワーピングが、遅れアーチファクトを含む場合でも、そのアーチファクトの影響は、チェスの駒３２１０から離れるユーザの焦点によって最小限にされる。チェスの駒３２１０から離れるように指向されるユーザの焦点は、点線を使用してワーピングおよび再レンダリングされたチェスの駒３２１０’、３２１０’’をレンダリングすることによって、図３７および３８に描写される。他方では、ユーザの焦点は、立方体３２１２に指向され、これは、ワーピングされた立方体３２１２’’’により正確にワーピングされる。
【０１１８】
ユーザの眼が追跡している仮想オブジェクトを含む、深度スライスの遠クリップを使用した単一深度ワーピングが、上記に説明されるが、眼追跡に基づく単一深度は、仮想オブジェクトと関連付けられる他の深度であることができる。これらは、仮想オブジェクトを含む深度スライスの近距離（「近クリップ」）または近クリップと遠クリップとの間の任意の距離を含む。
（メッシュベースのワーピング）
【０１１９】
図３９−４５は、いくつかの実施形態による、仮想コンテンツのメッシュを使用してワーピングし、例えば、算出負荷を低減させるステップを描写する。図３９は、上面図からのレンダリングされた仮想オブジェクト３９１０、３９１２を図式的に描写し、レンダリングされた仮想オブジェクト３９１０、３９１２の深度の差異を示す。チェスの駒３９１０は、深度Ｄ１において視認者により近くなり、立方体３９１２は、深度Ｄ２において視認者からより遠くなる。図３９はまた、レンダリングされた仮想オブジェクト３９１０、３９１２がそれぞれ、１つ以上のピクセル３９１４（図１１におけるプリミティブ三角形１１００のピクセル１１１６参照）を含むことを示す。レンダリングされた仮想オブジェクト３９１０、３９１２はまた、１つ以上のプリミティブを含んでもよい。各レンダリングされた仮想オブジェクト３９１０、３９１２の各ピクセル３９１４をワーピングするステップは、算出上高価であり得る。
【０１２０】
図４０は、レンダリングされた仮想オブジェクト３９１０、３９１２（図３９参照）から形成され、それに近似する、メッシュ３９１０’、３９１２’を図式的に描写する。メッシュ３９１０’、３９１２’は、個々のピクセル３９１４を含まず、これは、ワーピングのための算出複雑性を低減させ得る。メッシュは、グリッドを使用して、レンダリングされた仮想オブジェクト３９１０、３９１２から形成されることができる。さらに、メッシュ３９１０’、３９１２’は、図４１に示されるように、メッシュ３９１０’、３９１２’に近似する、頂点３９１６を含み、これはさらに、ワーピングの算出複雑性を低減させ得る。メッシュ３９１０’、３９１２’は、頂点３９１６から再構成されることができ、仮想オブジェクト３９１０、３９１２は、メッシュ３９１０’、３９１２’から再構成されることができる。しかしながら、簡略化および再構築プロセスは、図４２に示されるように、アーチファクトを再構成された仮想オブジェクト３９１８、３９２０の中に導入し得る。
【０１２１】
図４３は、レンダリングされた仮想オブジェクト、すなわち、比較的により近い深度におけるチェスの駒３９１０と、比較的により遠い深度における立方体３９１２とを描写する。図４４は、メッシュベースのワーピングの結果（すなわち、再構成されたチェスの駒３９１８および再構成された立方体３９２０）を描写し、図４５は、再レンダリングされた仮想オブジェクトの次のフレーム（すなわち、ユーザＦＯＶ移動を伴わない、再レンダリングされたチェスの駒３９１０’’および再レンダリングされた立方体３９１２’’）を描写する。メッシュ３９１０’、３９１２’および／または頂点３９１６へのレンダリングされた仮想オブジェクト３９１０、３９１２の簡略化のため、簡略化された仮想オブジェクトは、過度の算出負荷を伴わずに、位置ワーピング技法を使用してワーピングされることができる。定期的に成形される立方体は、図４４および４５の両方において類似するが、あまり定期的に成形されないチェスの駒は、図４４では、いくつかの再構築アーチファクトを有する。メッシュのサイズは、算出負荷を最小限にしながら、再構築アーチファクトを最適化するように調節されることができる。
【０１２２】
種々のワーピング技法が、個々に説明されているが、これらの技法は、本開示の範囲および精神から逸脱することなく、ワーピング有効性を改良するために、相互に組み合わせられることができる。
（システムアーキテクチャ概要）
【０１２３】
図４６は、本開示の実施形態を実装するために好適な例証的コンピューティングシステム１３００のブロック図である。コンピュータシステム１３００は、プロセッサ１３０７、システムメモリ１３０８（例えば、ＲＡＭ）、静的記憶デバイス１３０９（例えば、ＲＯＭ）、ディスクドライブ１３１０（例えば、磁気または光学）、通信インターフェース１３１４（例えば、モデムまたはＥｔｈｅｒｎｅｔ（登録商標）カード）、ディスプレイ１３１１（例えば、ＣＲＴまたはＬＣＤ）、入力デバイス１３１２（例えば、キーボード）、およびカーソル制御等のサブシステムおよびデバイスを相互接続する、情報を通信するためのバス１３０６または他の通信機構を含む。
【０１２４】
本開示の一実施形態によると、コンピュータシステム１３００は、プロセッサ１３０７がシステムメモリ１３０８内に含有される１つ以上の命令の１つ以上のシーケンスを実行することによって、具体的動作を実施する。そのような命令は、静的記憶デバイス１３０９またはディスクドライブ１３１０等の別のコンピュータ可読／使用可能媒体からシステムメモリ１３０８の中に読み込まれてもよい。代替実施形態では、有線回路が、ソフトウェア命令の代わりに、またはそれと組み合わせて、本開示を実装するために使用されてもよい。したがって、本開示の実施形態は、ハードウェア回路および／またはソフトウェアの任意の具体的組み合わせに限定されない。一実施形態では、用語「論理」は、本開示の全部または一部を実装するために使用される、任意の組み合わせのソフトウェアまたはハードウェアを意味し得る。
【０１２５】
用語「コンピュータ可読媒体」または「コンピュータ使用可能媒体」は、本明細書で使用されるように、実行のための命令をプロセッサ１３０７に提供する際に関与する、任意の媒体を指す。そのような媒体は、限定ではないが、不揮発性媒体および揮発性媒体を含む、多くの形態をとり得る。不揮発性媒体は、例えば、ディスクドライブ１３１０等の光学または磁気ディスクを含む。揮発性媒体は、システムメモリ１３０８等の動的メモリを含む。
【０１２６】
一般的形態のコンピュータ可読媒体は、例えば、フロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、ＣＤ−ＲＯＭ、任意の他の光学媒体、パンチカード、紙テープ、孔のパターンを伴う任意の他の物理的媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＦＬＡＳＨ（登録商標）−ＥＰＲＯＭ（例えば、ＮＡＮＤフラッシュ、ＮＯＲフラッシュ）、任意の他のメモリチップまたはカートリッジ、またはコンピュータが読み取り得る、任意の他の媒体を含む。
【０１２７】
本開示のある実施形態では、本開示を実践するための命令のシーケンスの実行は、単一コンピュータシステム１３００によって実施される。本開示の他の実施形態によると、通信リンク１３１５（例えば、ＬＡＮ、ＰＴＳＮ、または無線ネットワーク）によって結合される、２つ以上のコンピュータシステム１３００が、相互に協調して、本開示を実践するために要求される命令のシーケンスを実施してもよい。
【０１２８】
コンピュータシステム１３００は、通信リンク１３１５および通信インターフェース１３１４を通して、プログラム、例えば、アプリケーションコードを含む、メッセージ、データ、および命令を伝送および受信してもよい。受信されたプログラムコードは、プロセッサ１３０７によって、受信されるにつれて実行される、および／または後の実行のために、ディスクドライブ１３１０または他の不揮発性記憶装置内に記憶されてもよい。記憶媒体１３３１内のデータベース１３３２は、データインターフェース１３３３を介して、システム１３００によってアクセス可能なデータを記憶するために使用されてもよい。
（仮想オブジェクト深度決定）
【０１２９】
仮想オブジェクトの深度は、その仮想オブジェクトを正確にワーピングするために必要とされる。しかしながら、いくつかの実施形態では、仮想オブジェクトの深度は、把握されていない。例えば、いくつかのアプリケーションは、（例えば、投影のための）仮想オブジェクトの画像のステレオ対のみを提供し、仮想オブジェクトの深度を提供しない。そのような仮想オブジェクトを正確にワーピングするために、方法が、システムリソースの需要を最小限にしながら、そのような仮想オブジェクトの深度を決定するために必要とされる。
【０１３０】
図４７−５３は、仮想オブジェクトの深度をその仮想オブジェクトのための画像のステレオ対から決定／推定するための方法を描写する。本方法は、アプリケーションが適切な視点（ＰＯＶ）を使用してステレオ対の構成要素の両方をレンダリングしたため、ステレオ対の第１の構成要素（例えば、左または右眼）が、ステレオ対の他の構成要素のための（例えば、右または左眼）完璧なワーピングであると仮定する。一般に、本方法は、ステレオ対の一方の構成要素（例えば、右眼）を「基準眼」として識別し、ステレオ対の第２の構成要素（例えば、左眼）を１つ以上の深度における第１の構成要素のＰＯＶにワーピング／再投影する。次いで、本方法は、再投影された第２の構成要素と第１の構成要素を比較し、１つ以上の深度のそれぞれにおける再投影誤差を決定する。最小再投影誤差を伴う深度は、次いで、仮想オブジェクトの決定された／推定される深度と識別される。
【０１３１】
図５３は、方法５３１０を図示する、フローチャートである。ステップ５３１２では、システム（例えば、ＶＲ／ＡＲ／ＭＲシステム）は、１つ以上の深度において、仮想オブジェクトのステレオ対の第１の画像を仮想オブジェクトのステレオ対の第２の画像にわたって再投影し、１つ以上の組み合わせ画像を生成する。
【０１３２】
例示的組み合わせ画像は、図５０−５２に示される。それらの図では、第２の基準画像５０１２は、定常のままであって、第１の試験画像は、第２の基準画像５１１２にわたって異なる深度５１１０、５１１０’、５１１０’’に再投影される。第１の試験画像を再投影するために使用される異なる深度のため、再投影される第１の試験画像５１１０、５１１０’、５１１０’’は、第２の基準画像５０１２に対して異なる位置にある。
【０１３３】
本方法で使用される深度の数は、（１）システムがリアルタイムで評価し得る最大数の深度および（２）視認者の眼間のピクセル内の最大不均衡の小さい方によって決定されてもよい。言い換えると、システムが、１００個の異なる深度をリアルタイムで評価することが可能である場合でも、ユーザの眼間のピクセル内の最大距離均衡が、５０個の異なる深度に対応する場合、５０個の異なる深度が、仮想オブジェクトの深度を識別するための方法において使用されるであろう。いくつかの実施形態では、６４個の異なる深度が、本方法において使用される。ユーザの眼間のピクセル内の最大不均衡は、瞳孔間距離、焦点距離、および／または近深度平面の関数であり得る。いくつかの実施形態では、各深度平面は、対応する再投影された第１の試験画像が約１ピクセル間隔だけ偏移するような均一空間である。
【０１３４】
図５３を参照すると、ステップ５３１４では、本システムは、各深度における再投影誤差を測定する。再投影誤差は、第１の試験画像を再投影するために使用される深度平面が（例えば、第２の基準画像内の）仮想オブジェクトの深度に対して準最適不整合であるときに生じる。本システムは、各深度における再投影誤差を定量化する。
【０１３５】
ステップ５３１６では、本システムは、１つ以上の深度に対応する１つ以上の再投影誤差を分析し、最小再投影誤差を識別する。最小再投影誤差を伴う深度が、次いで、ステップ５３１８において、仮想オブジェクトの決定された／推定される深度と識別される。
【０１３６】
これらの分析をリアルタイムで実施するために、本システムは、１つ以上の深度平面のそれぞれにおける一連の評価を複数のフレーム（例えば、約１０個のフレーム）に分割してもよい。分析はまた、（例えば、各寸法の２５％における）画像フレームのダウンサンプリングされたバージョン上で実施され、算出負荷を低減させてもよい。方法５３００は、本方法の正確度を改良するために、数回、繰り返されてもよい。
【０１３７】
図４７−４９は、上記に説明される方法５３００を図式的に描写する。図４７は、３Ｄ仮想オブジェクト４７１０が、１つ以上の深度平面４７１２において、左眼４７１４から右眼４７１６に再投影されることを示す。図４８は、本方法が、仮想オブジェクト４７１０の深度と対応する、最良ワーピング平面４７１８（例えば、最小再投影誤差を伴う組み合わせ画像）を識別することを示す。図４９は、最良ワーピング平面４７１８およびその決定された／推定される深度が、本システムによって使用され、画像のステレオ対４７１４、４７１６を（例えば、移動から生じる）新しいＰＯＶ４７２０により正確にワーピングし得ることを示す。
（安定化平面深度決定）
【０１３８】
任意の所与のＰＯＶ移動量に関して、仮想オブジェクトが無限遠に接近するにつれて、ＰＯＶ移動に伴う仮想オブジェクトの見掛け移動は、ゼロに接近する。「安定化平面」は、特定のＰＯＶ移動を伴う仮想オブジェクトの見掛け移動が、見掛け移動がシステム視認者に検知不能／知覚不能となるほどゼロに接近する、（無限遠に接近する）深度として定義される。例えば、表示、処理、速さ等の観点からのシステム限界は、わずかな移動（例えば、１つまたは２つのピクセル）を典型的ユーザにとって検知不能／知覚不能にし得る。特定のＰＯＶ移動を伴う安定化平面の深度を識別することは、本システムが、特定のＰＯＶ移動未満のＰＯＶ移動を伴う安定化平面より遠い仮想オブジェクトのワーピングを行わないことを可能にする。本最適化は、処理、メモリ、通信チャネル等の観点からシステム需要を低減させる。
【０１３９】
図５４に示されるように、いくつかの実施形態では、（ピクセルの観点からの）仮想オブジェクトの見掛け移動と（距離の逆数である、ジオプタの観点からの）安定化深度との間には、逆相関が存在する。
【０１４０】
図５５は、安定化平面深度を決定する方法を描写する。ステップ５５１２では、システム（例えば、ＶＲ／ＡＲ／ＭＲシステム）が、ＰＯＶ移動量を取得する。ＰＯＶ移動量は、ユーザ／視認者移動を示すシステム上のセンサから取得されてもよい、またはＰＯＶ移動量は、所定の最大限のＰＯＶ移動値であってもよい。
【０１４１】
ステップ５５１４では、本システムは、取得されるＰＯＶ移動に基づいて、安定化深度と見掛け仮想オブジェクト移動との間の関係を決定する。いくつかの実施形態では、図５４に示されるもの等のピクセル対ジオプタグラフが、生成されてもよい。
【０１４２】
ステップ５５１６では、本システムは、上記に説明されるように、ディスプレイシステムのための最大検知不能／知覚不能見掛け仮想オブジェクト移動を取得する。本値は、ピクセル単位で測定されてもよい。
【０１４３】
ステップ５５１８では、本システムは、最大検知不能／知覚不能見掛け仮想オブジェクト移動に対応する安定化深度を最小安定化深度として識別する。
【０１４４】
本最小安定化深度では、ステップ５５１２において取得されるＰＯＶ移動量までのＰＯＶ移動は、本システムの典型的ユーザにとって検知不能／知覚不能であろう。したがって、本システムは、ＰＯＶ移動がステップ５５１２において取得されるＰＯＶ移動を下回るままである限り、本最小安定化深度より遠い任意の仮想オブジェクトのワーピングを行わないように構成されてもよい。これらの仮想オブジェクトの前述のワーピングは、処理、メモリ、通信チャネル等の観点からシステム負荷を低減させることによって、システムの効率を改良する。
【０１４５】
本開示は、本主題のデバイスを使用して行なわれ得る方法を含む。本方法は、そのような好適なデバイスを提供するという行為を含んでもよい。そのような提供は、ユーザによって実施されてもよい。換言すれば、「提供する」行為は、単に、ユーザが、本主題の方法において必須デバイスを取得する、それにアクセスする、それに接近する、それを位置付ける、それを設定する、それをアクティブ化する、それに電源を入れる、または別様にそれを提供するように作用することを要求する。本明細書で記載される方法は、論理的に可能である記載された事象の任意の順番で、および事象の列挙された順番で実行されてもよい。
【０１４６】
本開示の例示的側面が、材料選択および製造に関する詳細とともに、上記で記載されている。本開示の他の詳細に関して、これらは、上述で参照された特許および出版物に関連して理解されるとともに、概して、当業者によって把握または理解され得る。同じことが、一般または理論的に採用されるような付加的な行為の観点から、本開示の方法ベースの側面に関して当てはまり得る。
【０１４７】
加えて、本開示は、種々の特徴を随意的に組み込む、いくつかの実施例を参照して説明されているが、本開示は、本開示の各変形例に関して考慮されるように説明または指示されるものに限定されるものではない。種々の変更が、説明される本開示に行われてもよく、本開示の真の精神および範囲から逸脱することなく、（本明細書に記載されるか、またはいくらか簡潔にするために含まれないかどうかにかかわらず）均等物が置換されてもよい。加えて、値の範囲が提供される場合、その範囲の上限と下限との間の全ての介在値、およびその規定範囲内の任意の他の規定または介在値が、本発明内に包含されることを理解されたい。
【０１４８】
また、説明される本発明の変形例の任意の特徴が、独立して、または本明細書で説明される特徴のうちのいずれか１つ以上のものと組み合わせて、記載および請求され得ることが考慮される。単数形の項目の言及は、複数の同一項目が存在する可能性を含む。より具体的には、本明細書で、およびそれに関連付けられる請求項で使用されるように、「ａ」、「ａｎ」、「ｓａｉｄ」、および「ｔｈｅ」という単数形は、特に別様に記述されない限り、複数の指示対象を含む。換言すると、冠詞の使用は、上記の説明および本開示と関連付けられる請求項で、対象項目の「少なくとも１つ」を可能にする。さらに、そのような請求項は、任意の随意の要素を除外するように起草され得ることに留意されたい。したがって、この記述は、請求項要素の記載と関連する「だけ」、「のみ」、および同等物等のそのような排他的用語の使用、または「否定的」制限の使用のための先行詞としての機能を果たすことを目的としている。
【０１４９】
そのような排他的用語を使用することなく、本開示と関連付けられる請求項での「備える」という用語は、所与の数の要素がそのような請求項で列挙されるか、または特徴の追加をそのような請求項に記載される要素の性質を変換するものと見なすことができるかどうかにかかわらず、任意の付加的な要素の包含を可能にするものとする。本明細書で特に定義される場合を除いて、本明細書で使用される全ての技術および科学用語は、請求項の有効性を維持しながら、可能な限り広義の一般的に理解されている意味を与えられるものである。
【０１５０】
本発明の範疇は、提供される実施例および／または本明細書に限定されるものではなく、むしろ、本開示と関連付けられる請求項の範囲のみによって限定されるものとする。
【０１５１】
前述の明細書では、本開示は、その具体的実施形態を参照して説明された。しかしながら、種々の修正および変更が、本開示のより広義の精神および範囲から逸脱することなく、そこに行われてもよいことが明白であろう。例えば、前述のプロセスフローは、プロセスアクションの特定の順序を参照して説明される。しかしながら、説明されるプロセスアクションの多くの順序は、本開示の範囲または動作に影響を及ぼすことなく、変更されてもよい。明細書および図面は、故に、限定的意味ではなく、例証と見なされるべきである。
【図１】
2021530811.tif 000003
【図２Ａ】
2021530811.tif 000004
【図２Ｂ】
2021530811.tif 000005
【図２Ｃ】
2021530811.tif 000006
【図２Ｄ】
2021530811.tif 000007
【図３】
2021530811.tif 000008
【図４】
2021530811.tif 000009
【図５】
2021530811.tif 000010
【図６】
2021530811.tif 000011
【図７】
2021530811.tif 000012
【図８】
2021530811.tif 000013
【図９】
2021530811.tif 000014
【図１０】
2021530811.tif 000015
【図１１】
2021530811.tif 000016
【図１２】
2021530811.tif 000017
【図１３】
2021530811.tif 000018
【図１４】
2021530811.tif 000019
【図１５】
2021530811.tif 000020
【図１６】
2021530811.tif 000021
【図１７】
2021530811.tif 000022
【図１８】
2021530811.tif 000023
【図１９】
2021530811.tif 000024
【図２０】
2021530811.tif 000025
【図２１】
2021530811.tif 000026
【図２２】
2021530811.tif 000027
【図２３】
2021530811.tif 000028
【図２４】
2021530811.tif 000029
【図２５】
2021530811.tif 000030
【図２６】
2021530811.tif 000031
【図２７】
2021530811.tif 000032
【図２８】
2021530811.tif 000033
【図２９Ａ】
2021530811.tif 000034
【図２９Ｂ】
2021530811.tif 000035
【図３０】
2021530811.tif 000036
【図３１】
2021530811.tif 000037
【図３２】
2021530811.tif 000038
【図３３】
2021530811.tif 000039
【図３４】
2021530811.tif 000040
【図３５】
2021530811.tif 000041
【図３６】
2021530811.tif 000042
【図３７】
2021530811.tif 000043
【図３８】
2021530811.tif 000044
【図３９】
2021530811.tif 000045
【図４０】
2021530811.tif 000046
【図４１】
2021530811.tif 000047
【図４２】
2021530811.tif 000048
【図４３】
2021530811.tif 000049
【図４４】
2021530811.tif 000050
【図４５】
2021530811.tif 000051
【図４６】
2021530811.tif 000052
【図４７】
2021530811.tif 000053
【図４８】
2021530811.tif 000054
【図４９】
2021530811.tif 000055
【図５０】
2021530811.tif 000056
【図５１】
2021530811.tif 000057
【図５２】
2021530811.tif 000058
【図５３】
2021530811.tif 000059
【図５４】
2021530811.tif 000060
【図５５】
2021530811.tif 000061
【国際調査報告】
2021530811.tif 000062
2021530811.tif 000063
2021530811.tif 000064