(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024155933
(43)【公開日】2024-10-31
(54)【発明の名称】高一時的分解能を伴う軽量かつ低電力のクロスリアリティデバイス
(51)【国際特許分類】
G06F 3/01 20060101AFI20241024BHJP
H04N 13/344 20180101ALI20241024BHJP
H04N 13/239 20180101ALI20241024BHJP
【FI】
G06F3/01 510
H04N13/344
H04N13/239
【審査請求】有
【請求項の数】1
【出願形態】OL
(21)【出願番号】P 2024134031
(22)【出願日】2024-08-09
(62)【分割の表示】P 2021545848の分割
【原出願日】2020-02-07
(31)【優先権主張番号】62/802,577
(32)【優先日】2019-02-07
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】514108838
【氏名又は名称】マジック リープ, インコーポレイテッド
【氏名又は名称原語表記】Magic Leap,Inc.
【住所又は居所原語表記】7500 W SUNRISE BLVD,PLANTATION,FL 33322 USA
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【弁理士】
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【弁理士】
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【弁護士】
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】マルティン ゲオルク ツァーネアト
(72)【発明者】
【氏名】アレクサンデル イリッチ
(57)【要約】
【課題】高一時的分解能を伴う軽量かつ低電力のクロスリアリティデバイスの提供。
【解決手段】クロスリアリティ(XR)システムのためのウェアラブルディスプレイシステムは、動的視覚センサ(DVS)カメラと、カラーカメラとを有してもよい。カメラのうちの少なくとも1つは、プレノプティックカメラであってもよい。ウェアラブルディスプレイシステムは、検出された条件および実施されているXR機能に基づいて、カメラの一方または両方からの画像データの処理を動的に制限してもよい。オブジェクトを追跡するために、画像情報が、オブジェクトに対応する、カメラの一方または両方の視野のパッチに関して処理されてもよい。オブジェクトは、パッチ内の変化を示す、非同期して入手されたイベントに基づいて、追跡されてもよい。
【選択図】
図21
【特許請求の範囲】
【請求項1】
本明細書に記載の発明。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、概して、動的視覚センサ(DVS)カメラを含む、ウェアラブルクロスリアリティディスプレイシステム(XRシステム)に関する。
【背景技術】
【0002】
コンピュータは、ヒューマンユーザインターフェースを制御し、ユーザによって知覚されるにつれて、XR環境の一部または全部がコンピュータによって生成される、Xリアリティ(XRまたはクロスリアリティ)環境を作成し得る。これらのXR環境は、XR環境の一部または全部が、部分的に、環境を説明するデータを使用して、コンピュータによって生成され得る、仮想現実(VR)、拡張現実(AR)、または複合現実(MR)環境であり得る。本データは、例えば、ユーザが、仮想オブジェクトと相互作用し得るように、ユーザが、物理的世界の一部として、感知または知覚するような方法でレンダリングされ得る、仮想オブジェクトを説明し得る。ユーザは、例えば、頭部搭載型ディスプレイデバイス等のユーザインターフェースデバイスを通してレンダリングおよび提示されているデータの結果として、これらの仮想オブジェクトを体験し得る。データは、ユーザに見えるために表示され得る、またはユーザに聞こえるために再生される、オーディオを制御し得る、または触知的(または触覚的)インターフェースを制御し、ユーザが、仮想オブジェクトを感じるにつれて、ユーザが感知または知覚する、タッチ感覚を体験することを可能にし得る。
【0003】
XRシステムは、科学的可視化、医療訓練、工学設計、およびプロトタイプ化、遠隔操作およびテレプレゼンス、および個人的娯楽の分野に及ぶ、多くの用途のために有用であり得る。ARおよびMRは、VRと対照的に、物理的世界の実オブジェクトと関連して、1つ以上の仮想オブジェクトを含む。実オブジェクトと相互作用する、仮想オブジェクトの体験は、概して、XRシステムを使用する際、ユーザの享受を向上させ、また、物理的世界が改変され得る様子についての現実的かつ容易に理解可能な情報を提示する、種々の用途のための可能性を広げる。
【発明の概要】
【課題を解決するための手段】
【0004】
本願の側面は、DVSカメラとともに構成される、ウェアラブルクロスリアリティディスプレイシステムに関する。本明細書に説明される技法は、ともに、別個に、または任意の好適な組み合わせにおいて、使用されてもよい。
【0005】
いくつかの実施形態によると、ウェアラブルディスプレイシステムが、提供されてもよく、ウェアラブルディスプレイシステムは、強度変化基準を充足させる、画像フレームまたは画像データを出力するように構成可能である、1つの第1のカメラと、1つの第2のカメラとを含み、第1のカメラおよび第2のカメラは、中心視野の重複ビューを提供するように位置付けられる、ヘッドセットと、第1のカメラおよび第2のカメラに動作可能に結合され、第1のカメラおよび第2のカメラによって出力される画像から立体視的に決定される深度情報を使用して、世界モデルを作成し、世界モデルおよび第1のカメラによって出力される画像データを使用して、頭部姿勢を追跡するように構成される、プロセッサとを備える。
【0006】
いくつかの実施形態では、強度変化基準は、絶対または相対的強度変化基準を含んでもよい。
【0007】
いくつかの実施形態では、第1のカメラは、画像データを非同期して出力するように構成されてもよい。
【0008】
いくつかの実施形態では、プロセッサはさらに、頭部姿勢を非同期して追跡するように構成されてもよい。
【0009】
いくつかの実施形態では、プロセッサはさらに、追跡ルーチンを実施し、画像データ入手を世界モデル内の着目点に制限するように構成されてもよい。
【0010】
いくつかの実施形態では、第1のカメラは、画像入手を第1のカメラの視野の1つ以上の部分に制限するように構成可能であってもよく、追跡ルーチンは、世界モデル内の着目点を識別するステップと、着目点に対応する、第1のカメラの視野の1つ以上の第1の部分を決定するステップと、第1のカメラに、画像入手を視野の1つ以上の第1の部分に制限するように命令を提供するステップとを含んでもよい。
【0011】
いくつかの実施形態では、追跡ルーチンはさらに、世界モデルに対する着目点の移動または着目点に対するヘッドセットの移動に基づいて、着目点に対応する、第1のカメラの視野の1つ以上の第2の部分を推定するステップと、第1のカメラに、画像入手を視野の1つ以上の第2の部分に制限するように命令を提供するステップとを含んでもよい。
【0012】
いくつかの実施形態では、ヘッドセットはさらに、慣性測定ユニットを含んでもよく、追跡ルーチンを実施するステップは、少なくとも部分的に、慣性測定ユニットの出力に基づいて、オブジェクトの更新された相対的位置を推定するステップを含んでもよい。
【0013】
いくつかの実施形態では、追跡ルーチンは、世界モデル内の着目点の位置を繰り返し計算するステップを含んでもよく、繰り返される計算は、60Hzを上回る一時的分解能で実施されてもよい。
【0014】
いくつかの実施形態では、繰り返される計算間のインターバルは、1ms~15msの持続時間であってもよい。
【0015】
いくつかの実施形態では、プロセッサはさらに、頭部姿勢追跡が品質基準を充足させるかどうかを決定し、頭部姿勢追跡が品質基準を充足させないとき、第2のカメラを有効にする、または第2のカメラのフレームレートを変調させるように構成されてもよい。
【0016】
いくつかの実施形態では、プロセッサは、ヘッドセットに機械的に結合されてもよい。
【0017】
いくつかの実施形態では、ヘッドセットは、プロセッサに機械的に結合される、ディスプレイデバイスを備えてもよい。
【0018】
いくつかの実施形態では、ローカルデータ処理モジュールが、プロセッサを備えてもよく、ローカルデータ処理モジュールは、通信リンクを通して、ディスプレイデバイスに動作可能に結合され、ヘッドセットは、ディスプレイデバイスを備えてもよい。
【0019】
いくつかの実施形態では、ヘッドセットはさらに、IRエミッタを含んでもよい。
【0020】
いくつかの実施形態では、プロセッサは、低光量条件下での頭部姿勢追跡を有効にするように、IRエミッタを選択的に有効にするように構成されてもよい。
【0021】
いくつかの実施形態によると、ウェアラブルディスプレイシステムを使用して、頭部姿勢を追跡する方法が、提供されてもよく、ウェアラブルディスプレイシステムは、強度変化基準を充足させる、画像フレームまたは画像データを出力するように構成可能である、1つの第1のカメラと、1つの第2のカメラとを含み、第1のカメラおよび第2のカメラは、中心視野の重複ビューを提供するように位置付けられる、ヘッドセットと、第1のカメラおよび第2のカメラに動作可能に結合される、プロセッサとを備え、本方法は、プロセッサを使用して、第1のカメラおよび第2のカメラによって出力される画像から立体視的に決定される深度情報を使用して、世界モデルを作成するステップと、世界モデルおよび第1のカメラによって出力される画像データを使用して、頭部姿勢を追跡するステップとを含む。
【0022】
いくつかの実施形態によると、ウェアラブルディスプレイシステムが、提供されてもよく、ウェアラブルディスプレイシステムは、フレームと、フレームに機械的に結合される、第1のカメラであって、第1のカメラに関する第1の視野内の強度変化基準を充足させる、画像データを出力するように構成可能である、第1のカメラと、第1のカメラに動作可能に結合され、オブジェクトが第1の視野内にあるかどうかを決定し、第1の視野の1つ以上の部分に関して第1のカメラから受信された画像データを使用して、オブジェクトの運動を追跡するように構成される、プロセッサとを備える。
【0023】
いくつかの実施形態によると、ウェアラブルディスプレイシステムを使用して、オブジェクトの運動を追跡する方法が、提供され、ウェアラブルディスプレイシステムは、フレームと、フレームに機械的に結合される、第1のカメラであって、第1のカメラに関する第1の視野内の強度変化基準を充足させる、画像データを出力するように構成可能である、第1のカメラと、第1のカメラに動作可能に結合される、プロセッサとを備え、本方法は、プロセッサを使用して、オブジェクトが第1の視野内にあるかどうかを決定するステップと、第1の視野の1つ以上の部分に関して第1のカメラから受信された画像データを使用して、オブジェクトの運動を追跡するステップとを含む。
【0024】
いくつかの実施形態によると、ウェアラブルディスプレイシステムが、提供され、ウェアラブルディスプレイシステムは、フレームと、フレームに機械的に結合される、2つのカメラであって、強度変化基準を充足させる、画像データを出力するように構成可能である、1つの第1のカメラと、1つの第2のカメラとを備え、第1のカメラおよび第2のカメラは、中心視野の重複ビューを提供するように位置付けられる、2つのカメラと、第1のカメラおよび第2のカメラに動作可能に結合される、プロセッサとを備える。
【0025】
前述の説明は、例証として提供され、限定することを意図するものではない。
本発明は、例えば、以下を提供する。
(項目1)
ウェアラブルディスプレイシステムであって、前記ウェアラブルディスプレイシステムは、
ヘッドセットであって、前記ヘッドセットは、
1つの第1のカメラであって、前記1つの第1のカメラは、強度変化基準を充足させる画像フレームまたは画像データを出力するように構成可能である、1つの第1のカメラと、
1つの第2のカメラと
を含み、
前記第1のカメラおよび前記第2のカメラは、中心視野の重複ビューを提供するように位置付けられる、ヘッドセットと、
プロセッサであって、前記プロセッサは、前記第1のカメラおよび前記第2のカメラに動作可能に結合され、前記プロセッサは、
前記第1のカメラおよび前記第2のカメラによって出力される画像から立体視的に決定される深度情報を使用して、世界モデルを作成することと、
前記世界モデルおよび前記第1のカメラによって出力される画像データを使用して、頭部姿勢を追跡することと
を行うように構成される、プロセッサと
を備える、ウェアラブルディスプレイシステム。
(項目2)
前記強度変化基準は、絶対または相対的強度変化基準を含む、項目1に記載のウェアラブルディスプレイシステム。
(項目3)
前記第1のカメラは、前記画像データを非同期して出力するように構成される、項目1に記載のウェアラブルディスプレイシステム。
(項目4)
前記プロセッサはさらに、頭部姿勢を非同期して追跡するように構成される、項目3に記載のウェアラブルディスプレイシステム。
(項目5)
前記プロセッサはさらに、追跡ルーチンを実施し、画像データ入手を前記世界モデル内の着目点に制限するように構成される、項目1に記載のウェアラブルディスプレイシステム。
(項目6)
前記第1のカメラは、画像入手を前記第1のカメラの視野の1つ以上の部分に制限するように構成可能であり、
前記追跡ルーチンは、
前記世界モデル内の着目点を識別することと、
前記着目点に対応する前記第1のカメラの視野の1つ以上の第1の部分を決定することと、
前記第1のカメラに、画像入手を前記視野の1つ以上の第1の部分に制限するように命令を提供することと
を含む、項目5に記載のウェアラブルディスプレイシステム。
(項目7)
前記追跡ルーチンはさらに、
前記世界モデルに対する前記着目点の移動または前記着目点に対する前記ヘッドセットの移動に基づいて、前記着目点に対応する、前記第1のカメラの視野の1つ以上の第2の部分を推定することと、
前記第1のカメラに、画像入手を前記視野の1つ以上の第2の部分に制限するように命令を提供することと
を含む、項目6に記載のウェアラブルディスプレイシステム。
(項目8)
前記ヘッドセットはさらに、慣性測定ユニットを含み、
前記追跡ルーチンを実施することは、少なくとも部分的に、前記慣性測定ユニットの出力に基づいて、前記オブジェクトの更新された相対的位置を推定することを含む、
項目5に記載のウェアラブルディスプレイシステム。
(項目9)
前記追跡ルーチンは、前記世界モデル内の着目点の位置を繰り返し計算することを含み、
繰り返される計算は、60Hzを上回る一時的分解能で実施される、
項目5に記載のウェアラブルディスプレイシステム。
(項目10)
前記繰り返される計算間のインターバルは、1ms~15msの持続時間である、項目9に記載のウェアラブルディスプレイシステム。
(項目11)
前記プロセッサはさらに、
前記頭部姿勢追跡が品質基準を充足させるかどうかを決定することと、
前記頭部姿勢追跡が前記品質基準を充足させないとき、前記第2のカメラを有効にする、または前記第2のカメラのフレームレートを変調させることと
を行うように構成される、項目1に記載のウェアラブルディスプレイシステム。
(項目12)
前記プロセッサは、前記ヘッドセットに機械的に結合される、項目1に記載のウェアラブルディスプレイシステム。
(項目13)
前記ヘッドセットは、前記プロセッサに機械的に結合されるディスプレイデバイスを備える、項目1に記載のウェアラブルディスプレイシステム。
(項目14)
ローカルデータ処理モジュールが、前記プロセッサを備え、前記ローカルデータ処理モジュールは、通信リンクを通して、ディスプレイデバイスに動作可能に結合され、前記ヘッドセットは、前記ディスプレイデバイスを備える、項目1に記載のウェアラブルディスプレイシステム。
(項目15)
前記ヘッドセットはさらに、IRエミッタを含む、項目1に記載のウェアラブルディスプレイシステム。
(項目16)
前記プロセッサは、低光量条件下での頭部姿勢追跡を有効にするように、前記IRエミッタを選択的に有効にするように構成される、項目15に記載のウェアラブルディスプレイシステム。
(項目17)
ウェアラブルディスプレイシステムを使用して、頭部姿勢を追跡する方法であって、前記ウェアラブルディスプレイシステムは、
ヘッドセットであって、
1つの第1のカメラであって、前記1つの第1のカメラは、強度変化基準を充足させる画像フレームまたは画像データを出力するように構成可能である、1つの第1のカメラと、
1つの第2のカメラと
を含み、
前記第1のカメラおよび前記第2のカメラは、中心視野の重複ビューを提供するように位置付けられる、ヘッドセットと、
前記第1のカメラおよび前記第2のカメラに動作可能に結合されるプロセッサと
を備え、
前記方法は、前記プロセッサを使用して、
前記第1のカメラおよび前記第2のカメラによって出力される画像から立体視的に決定される深度情報を使用して、世界モデルを作成することと、
前記世界モデルおよび前記第1のカメラによって出力される画像データを使用して、前記頭部姿勢を追跡することと
を含む、方法。
(項目18)
ウェアラブルディスプレイシステムであって、前記ウェアラブルディスプレイシステムは、
フレームと、
前記フレームに機械的に結合される第1のカメラであって、前記第1のカメラは、前記第1のカメラに関する第1の視野内の強度変化基準を充足させる画像データを出力するように構成可能である、第1のカメラと、
プロセッサであって、前記プロセッサは、前記第1のカメラに動作可能に結合され、前記プロセッサは、
オブジェクトが前記第1の視野内にあるかどうかを決定することと、
前記第1の視野の1つ以上の部分に関して前記第1のカメラから受信された画像データを使用して、前記オブジェクトの運動を追跡することと
を行うように構成される、プロセッサと
を備える、ウェアラブルディスプレイシステム。
(項目19)
ウェアラブルディスプレイシステムを使用して、オブジェクトの運動を追跡する方法であって、前記ウェアラブルディスプレイシステムは、
フレームと、
前記フレームに機械的に結合される第1のカメラであって、前記第1のカメラは、前記第1のカメラに関する第1の視野内の強度変化基準を充足させる画像データを出力するように構成可能である、第1のカメラと、
前記第1のカメラに動作可能に結合されるプロセッサと
を備え、
前記方法は、前記プロセッサを使用して、
前記オブジェクトが前記第1の視野内にあるかどうかを決定することと、
前記第1の視野の1つ以上の部分に関して前記第1のカメラから受信された画像データを使用して、前記オブジェクトの運動を追跡することと
を含む、方法。
(項目20)
ウェアラブルディスプレイシステムであって、前記ウェアラブルディスプレイシステムは、
フレームと、
前記フレームに機械的に結合される2つのカメラであって、前記2つのカメラは、
強度変化基準を充足させる画像データを出力するように構成可能である1つの第1のカメラと、
1つの第2のカメラと
を備え、
前記第1のカメラおよび前記第2のカメラは、中心視野の重複ビューを提供するように位置付けられる、2つのカメラと、
前記第1のカメラおよび前記第2のカメラに動作可能に結合されるプロセッサと
を備える、ウェアラブルディスプレイシステム。
【図面の簡単な説明】
【0026】
添付の図面は、縮尺通りに描かれることを意図していない。図面では、種々の図に図示される、各同じまたはほぼ同じコンポーネントは、同様の数字で表される。明確性の目的のために、全てのコンポーネントが、全ての図面において標識されているわけではない。
【0027】
【
図1】
図1は、いくつかの実施形態による、簡略化された拡張現実(AR)場面の実施例を図示する、スケッチである。
【0028】
【
図2】
図2は、いくつかの実施形態による、ARディスプレイシステムの実施例を図示する、概略図である。
【0029】
【
図3A】
図3Aは、いくつかの実施形態による、ユーザが物理的世界環境を通して移動するにつれてARコンテンツをレンダリングする、ARディスプレイシステムを装着しているユーザを図示する、概略図である。
【0030】
【
図3B】
図3Bは、いくつかの実施形態による、視認光学系アセンブリおよび付帯コンポーネントを図示する、概略図である。
【0031】
【
図4】
図4は、いくつかの実施形態による、画像感知システムを図示する、概略図である。
【0032】
【
図5A】
図5Aは、いくつかの実施形態による、
図4におけるピクセルセルを図示する、概略図である。
【0033】
【
図5B】
図5Bは、いくつかの実施形態による、
図5Aのピクセルセルの出力イベントを図示する、概略図である。
【0034】
【
図6】
図6は、いくつかの実施形態による、画像センサを図示する、概略図である。
【0035】
【
図7】
図7は、いくつかの実施形態による、画像センサを図示する、概略図である。
【0036】
【
図8】
図8は、いくつかの実施形態による、画像センサを図示する、概略図である。
【0037】
【
図9】
図9は、いくつかの実施形態による、画像感知のための方法の簡略化されたフローチャートである。
【0038】
【
図10】
図10は、いくつかの実施形態による、
図9のパッチ識別の行為の簡略化されたフローチャートである。
【0039】
【
図11】
図11は、いくつかの実施形態による、
図9のパッチ軌道推定の行為の簡略化されたフローチャートである。
【0040】
【
図12】
図12は、いくつかの実施形態による、1つの視点に対する
図11のパッチ軌道推定を図示する、概略図である。
【0041】
【
図13】
図13は、いくつかの実施形態による、視点変化に対する
図11のパッチ軌道推定を図示する、概略図である。
【0042】
【
図14】
図14は、いくつかの実施形態による、画像感知システムを図示する、概略図である。
【0043】
【
図15】
図15は、いくつかの実施形態による、
図14におけるピクセルセルを図示する、概略図である。
【0044】
【
図16】
図16は、いくつかの実施形態による、ピクセルサブアレイの概略図である。
【0045】
【
図17A】
図17Aは、いくつかの実施形態による、整合されている、2つのスタックされた透過性回折マスク(TDM)の形態における、到着角/強度コンバータを伴う、プレノプティックデバイスの断面図である。
【0046】
【
図17B】
図17Bは、いくつかの実施形態による、整合されていない、2つのスタックされたTDMの形態における、到着角/強度コンバータを伴う、プレノプティックデバイスの断面図である。
【0047】
【
図18A】
図18Aは、いくつかの実施形態による、カラーピクセルセルと、到着角ピクセルセルとを伴う、ピクセルサブアレイである。
【0048】
【
図18B】
図18Bは、いくつかの実施形態による、カラーピクセルセルと、到着角ピクセルセルとを伴う、ピクセルサブアレイである。
【0049】
【
図18C】
図18Cは、いくつかの実施形態による、白色ピクセルセルと、到着角ピクセルセルとを伴う、ピクセルサブアレイである。
【0050】
【
図19A】
図19Aは、いくつかの実施形態による、単一TDMを伴う、光検出器アレイの上面図である。
【0051】
【
図19B】
図19Bは、いくつかの実施形態による、単一TDMを伴う、光検出器アレイの側面図である。
【0052】
【
図20A】
図20Aは、いくつかの実施形態による、TDMの形態における、複数の到着角/強度コンバータを伴う、光検出器アレイの上面図である。
【0053】
【
図20B】
図20Bは、いくつかの実施形態による、複数のTDMを伴う、光検出器アレイの側面図である。
【0054】
【
図20C】
図20Cは、いくつかの実施形態による、複数のTDMを伴う、光検出器アレイの側面図である。
【0055】
【
図21】
図21は、いくつかの実施形態による、2つのカメラと、付帯コンポーネントとを含む、ヘッドセットの概略図である。
【0056】
【
図22】
図22は、いくつかの実施形態による、較正ルーチンのフローチャートである。
【0057】
【
図23A】
図23A-23Cは、いくつかの実施形態による、
図21のヘッドセットと関連付けられる、例示的視野略図を描写する。
【
図23B】
図23A-23Cは、いくつかの実施形態による、
図21のヘッドセットと関連付けられる、例示的視野略図を描写する。
【
図23C】
図23A-23Cは、いくつかの実施形態による、
図21のヘッドセットと関連付けられる、例示的視野略図を描写する。
【0058】
【
図24】
図24は、いくつかの実施形態による、パス可能世界モデルを作成および更新するための方法のフローチャートである。
【0059】
【
図25】
図25は、いくつかの実施形態による、頭部姿勢追跡のための方法のフローチャートである。
【0060】
【
図26】
図26は、いくつかの実施形態による、オブジェクト追跡のための方法のフローチャートである。
【0061】
【
図27】
図27は、いくつかの実施形態による、手追跡のための方法のフローチャートである。
【発明を実施するための形態】
【0062】
本発明者らは、ウェアラブルXRディスプレイシステムのための、そのようなシステムの享受性および有用性を向上させる、設計および動作技法を認識し、その真価を認めた。これらの設計および/または動作技法は、限定された数のカメラを使用して、手の追跡、頭部姿勢の追跡、および世界の再構築を含む、複数の機能を実施するための情報を取得することを可能にし得、これは、仮想オブジェクトを、それらが物理的オブジェクトと現実的に相互作用するように現れるように現実的にレンダリングするために使用されてもよい。ウェアラブルクロスリアリティディスプレイシステムは、軽量であり得、動作時、低電力を消費し得る。本システムは、特定の構成のセンサを使用して、短待ち時間を伴って、物理的世界内の物理的オブジェクトについての画像情報を入手し得る。本システムは、表示されるXR環境の正確度および/または現実性を改良するために、種々のルーチンを実施してもよい。そのようなルーチンは、軽量フレームが、使用の間、歪曲する場合でも、立体視深度測定の正確度を改良するための較正ルーチンと、ユーザの周囲の物理的世界のモデル内の不完全な深度情報を検出し、それに対処するためのルーチンとを含んでもよい。
【0063】
既知のXRシステムヘッドセットの重量は、ユーザ享受を限定し得る。そのようなXRヘッドセットは、340グラムを上回る重量であり得る(時として、700グラムを上回ることさえある)。眼鏡は、対照的に、50グラム未満の重量であり得る。そのような比較的に重いヘッドセットを長時間にわたって装着することは、ユーザを疲労させ、または彼らの注意を逸らし、所望の没入型のXR体験から注意を逸らさせ得る。しかしながら、本発明者らは、ヘッドセット重量を低減させる、いくつかの設計がまた、ヘッドセット柔軟性を増加させ、軽量ヘッドセットを、使用の間または経時的に、センサ位置または配向の変化を受けやすくし得ることを認識および理解している。例えば、ユーザが、カメラセンサを含む、軽量ヘッドセットを装着する際、これらのカメラセンサの相対的配向は、偏移し得る。立体視結像のために使用される、カメラの間隔における変動は、それらのヘッドセットが、相互に対して既知の位置関係を有するカメラに依存する、正確な立体視情報を入手する能力に影響を及ぼし得る。故に、ヘッドセットが装着される際に繰り返され得る、較正ルーチンは、立体視結像技法を使用して、ヘッドセットの装着者の周囲の世界についての情報を正確に入手し得る、軽量ヘッドセットを可能にし得る。
【0064】
XRシステムに物理的世界内のオブジェクトについての情報を入手するためのコンポーネントを装備する必要性はまた、これらのシステムの有用性およびユーザ享受を限定し得る。入手された情報は、コンピュータ生成仮想オブジェクトを、適切な位置に、物理的オブジェクトに対する適切な外観を伴って、現実的に提示するために使用されるが、情報を入手する必要性は、XRシステムのサイズ、電力消費、および現実性に関する限界を課す。
【0065】
XRシステムは、例えば、ユーザによって装着されるセンサを使用して、ユーザの視野内の物理的世界オブジェクトの位置についての情報を含む、ユーザの周囲の物理的世界内のオブジェクトについての情報を取得し得る。物理的オブジェクトが、ユーザの視野の中に入る、またはそこから退出する、またはユーザの視野内の物理的オブジェクトの位置が変化するように、オブジェクトが物理的世界内で移動するか、またはユーザが物理的世界に対するその姿勢を変化させるかのいずれかの結果として、オブジェクトがユーザの視野に対して移動し得るため、課題が生じる。現実的XRディスプレイを提示するために、物理的世界内の物理的オブジェクトのモデルは、これらの変化を捕捉するために十分に頻繁に更新され、十分に短待ち時間で処理され、その情報に基づいて表示される仮想オブジェクトが、仮想オブジェクトが表示されるにつれて、物理的オブジェクトに対する適切な位置および外観を有するであろうように、レンダリングを含む、完全待ち時間経路を網羅するように将来的に正確に予測されなければならない。そうでなければ、仮想オブジェクトは、物理的オブジェクトと整合されずに現れ、物理的および仮想オブジェクトを含む、組み合わせられる場面は、現実的に現れないであろう。例えば、仮想オブジェクトは、それらが、物理的オブジェクト上に静置するのではなく、空間中に浮遊しているかのように見え得る、または物理的オブジェクトに対して周囲でバウンスするように現れ得る。視覚的追跡の誤差は、特に、ユーザが、高速で移動しているとき、場面内に著しい進展が存在する場合、増幅される。
【0066】
そのような問題は、新しいデータを高レートで入手する、センサによって回避され得る。しかしながら、そのようなセンサによって消費された電力は、より大きいバッテリの必要性につながる、システムの重量を増加させる、またはそのようなシステムの使用の長さを限定し得る。同様に、高レートで生成されたデータを処理するために必要とされるプロセッサは、バッテリを枯渇させ、付加的重量をウェアラブルシステムに追加させ、そのようなシステムの有用性または享受性をさらに限定し得る。既知のアプローチは、例えば、十分な視覚的詳細を捕捉するためのより高い分解能で、増加された一時的分解能のためのより高いフレームレートセンサを動作させることである。代替ソリューションは、本ソリューションを、直接、センサに対する物理的オブジェクトの位置を示し得る、IR飛行時間センサで補完し得、短待ち時間をもたらす、単純処理が、本情報を使用して、仮想オブジェクトを表示する際に実施され得る。しかしながら、そのようなセンサは、特に、それらが太陽光下で動作する場合、実質的量の電力を消費する。
【0067】
本発明者らは、XRシステムが、較正ルーチンを繰り返し実施することによって、使用の間または経時的センサ位置または配向の変化に対処し得ることを認識し、その真価を認めた。本較正ルーチンは、ヘッドセット内に含まれるセンサの現在の相対的分離および配向を決定し得る。ウェアラブルXRシステムは、次いで、立体視深度情報を算出するとき、ヘッドセットセンサの本相対的分離および配向を考慮し得る。そのような較正能力を用いることで、XRシステムは、能動深度センサを用いずに、または能動深度感知の随時の使用のみを用いて、物理的世界内のオブジェクトまでの距離を示す、深度情報を正確に入手し得る。能動深度感知は、実質的電力を消費し得るため、能動深度感知を低減または排除することは、より少ない電力を引き出す、デバイスを可能にし、これは、バッテリを再充電せずに、本デバイスの動作時間を増加させる、またはバッテリのサイズを低減させる結果として、本デバイスのサイズを低減させることができる。
【0068】
本発明者らはまた、画像センサとそれらのセンサからの画像情報を処理するための適切な技法の適切な組み合わせによって、XRシステムが、使用されるセンサの数を低減させ、リソース集約的センサを排除する、無効にする、または選択的にアクティブ化し、および/またはセンサの全体的使用量を低減させることによって、低減された電力消費でも、物理的オブジェクトについての情報を短待ち時間で入手し得ることを認識し、その真価を認めた。具体的実施例として、XRシステムは、2つの世界に面したカメラを伴う、ヘッドセットを含んでもよい。カメラの第1のものは、グレースケール画像を生産してもよく、グローバルシャッタを有してもよい。これらのグレースケール画像は、いくつかのインスタンスでは、3分の1未満のビット数で表される、類似分解能のカラー画像より小さいサイズであってもよい。本グレースケールカメラは、類似分解能のカラーカメラより少ない電力を要求し得る。グレースケールカメラは、イベントベースのデータ入手および/またはパッチ追跡を採用し、データ出力の量を限定するように構成されてもよい。カメラの第2のものは、RGBカメラであってもよい。ウェアラブルクロスリアリティディスプレイシステムは、本カメラを選択的に使用し、ユーザのXR体験を損なわせることなく、電力消費を低減させ、バッテリ寿命を延長させるように構成されてもよい。RGBカメラは、例えば、グレースケールと併用され、ユーザの周囲の環境の世界モデルを構築してもよいが、次いで、グレースケールカメラが、本世界モデルに基づいて、ユーザの頭部姿勢を追跡するために使用されてもよい。代替として、または加えて、グレースケールカメラは、主に、ユーザの手を含む、オブジェクトを追跡するために使用されてもよい。追跡の不良品質を示す、検出された条件に基づいて、1つ以上の他のセンサからの画像情報が、採用されてもよい。RGBカメラは、例えば、オブジェクトを背景から区別することを補助する、色情報を入手するために有効にされてもよい、または深度情報を受動的に提供する、ライトフィールドセンサからの出力が、使用されてもよい。
【0069】
本明細書に説明される技法は、多くのタイプのデバイスとともに、または別個に、多くのタイプの場面のために、使用されてもよい。
図1は、そのような場面を図示する。
図2、3A、および3Bは、本明細書に説明される技法に従って動作し得る、1つ以上のプロセッサと、メモリと、センサと、ユーザインターフェースとを含む、例示的ARシステムを図示する。
【0070】
図1を参照すると、AR場面4が、描写されており、ARシステムのユーザには、人々、木々、背景における建物、およびコンクリートプラットフォーム8を特徴とする、物理的世界の公園状設定6が見える。これらの物理的オブジェクトに加え、AR技術のユーザはまた、ここでは、物理的世界コンクリートプラットフォーム8上に立っている、ロボット像10として図示される、仮想オブジェクトと、マルハナバチの擬人化のように見える、飛んでいる漫画のようなアバタキャラクタ2とが「見える」と知覚するが、これらの要素(例えば、アバタキャラクタ2およびロボット像10)は、物理的世界内には存在しない。ヒト視知覚および神経系の著しい複雑性に起因して、他の仮想または物理的世界の画像要素の中で仮想画像要素の快適で、自然な感覚で、かつ豊かな提示を促進する、ARシステムを生産することは、困難である。
【0071】
そのような場面は、ユーザの周囲の実際の環境を表す画像情報を提示し、実際の環境内にはない、仮想オブジェクトを表す情報にオーバーレイすることによって、ユーザに提示され得る。ARシステムでは、ユーザは、物理的世界内のオブジェクトを見ることが可能であり得、ARシステムは、それらが、適切な場所に、仮想オブジェクトが物理的世界内のオブジェクトと共存するように現れる、適切な視覚的特性を伴って、現れるように、仮想オブジェクトをレンダリングする、情報を提供する。ARシステムでは、例えば、ユーザは、ユーザに物理的世界内のオブジェクトが見え得るように、透明画面を通して見ることになり得る。ARシステムは、ユーザに物理的世界および仮想オブジェクトの両方が見えるように、仮想オブジェクトをその画面上にレンダリングし得る。いくつかの実施形態では、画面は、一対のゴーグルまたは眼鏡のように、ユーザによって装着されてもよい。
【0072】
場面は、視覚、聴覚、および/または触覚を含む、1つ以上のユーザの感覚を刺激し得る、ユーザインターフェースを含む、複数のコンポーネントを含む、システムを介して、ユーザに提示されてもよい。加えて、本システムは、場面の物理的部分内のユーザの位置および/または運動を含む、場面の物理的部分のパラメータを測定し得る、1つ以上のセンサを含んでもよい。さらに、本システムは、メモリ等の関連付けられるコンピュータハードウェアとともに、1つ以上のコンピューティングデバイスを含んでもよい。これらのコンポーネントは、単一デバイスの中に統合される、またはさらに、複数の相互接続されるデバイスを横断して分散されてもよい。いくつかの実施形態では、これらのコンポーネントのいくつかまたは全ては、ウェアラブルデバイスの中に統合されてもよい。
【0073】
いくつかの実施形態では、AR体験が、ウェアラブルディスプレイシステムを通して、ユーザに提供されてもよい。
図2は、ウェアラブルディスプレイシステム80(以降、「システム80」と称される)の実施例を図示する。システム80は、頭部搭載型ディスプレイデバイス62(以降、「ディスプレイデバイス62」と称される)と、ディスプレイデバイス62の機能をサポートするための種々の機械的および電子的モジュールおよびシステムとを含む。ディスプレイデバイス62は、フレーム64に結合されてもよく、これは、ディスプレイシステムのユーザまたは視認者60(以降、「ユーザ60」と称される)によって装着可能であって、ディスプレイデバイス62をユーザの眼60の正面に位置付けるように構成される。種々の実施形態によると、ディスプレイデバイス62は、シーケンシャルディスプレイであってもよい。ディスプレイデバイス62は、単眼または両眼であってもよい。
【0074】
いくつかの実施形態では、スピーカ66が、フレーム64に結合され、ユーザ60の外耳道に近接して位置付けられる。いくつかの実施形態では、示されない、別のスピーカが、ユーザ60の別の外耳道に隣接して位置付けられ、ステレオ/調節可能音制御を提供する。
【0075】
システム80は、ローカルデータ処理モジュール70を含んでもよい。ローカルデータ処理モジュール70は、有線導線または無線コネクティビティ等によって、通信リンク68を通して、ディスプレイデバイス62に動作可能に結合されてもよい。ローカルデータ処理モジュール70は、フレーム64に固定して取り付けられる、ユーザ60によって装着されるヘルメットまたは帽子に固定して取り付けられる、ヘッドホンに内蔵される、または別様に、ユーザ60に除去可能に取り付けられる(例えば、リュック式構成において、ベルト結合式構成において)等、種々の構成において搭載されてもよい。いくつかの実施形態では、ローカルデータ処理モジュール70は、ローカルデータ処理モジュール70のコンポーネントが、ディスプレイデバイス62内に統合される、またはそれに対してディスプレイデバイス62が、広域ネットワークを通した無線通信を通して等、結合される、遠隔サーバまたは他のコンポーネントの内に実装され得るため、存在しなくてもよい。
【0076】
ローカルデータ処理モジュール70は、プロセッサおよび不揮発性メモリ(例えば、フラッシュメモリ)等のデジタルメモリを含んでもよく、その両方とも、データの処理、キャッシュ、および記憶を補助するために利用されてもよい。データは、a)センサ(例えば、フレーム64に動作可能に結合される、または別様に、画像捕捉デバイス(カメラ等)、マイクロホン、慣性測定ユニット、加速度計、コンパス、GPSユニット、無線デバイス、および/またはジャイロスコープ等のユーザ60に取り付けられ得る)から捕捉されるデータ、および/またはb)可能性として、処理または読出後にディスプレイデバイス62への通過のために、遠隔処理モジュール72および/または遠隔データリポジトリ74を使用して入手および/または処理される、データを含んでもよい。ローカルデータ処理モジュール70は、それぞれ、これらの遠隔モジュール72、74が、相互に動作可能に結合され、リソースとしてローカル処理およびデータモジュール70に利用可能であるように、有線または無線通信リンク等を介して、通信リンク76、78によって、遠隔処理モジュール72および遠隔データリポジトリ74に動作可能に結合されてもよい。
【0077】
いくつかの実施形態では、ローカルデータ処理モジュール70は、データおよび/または画像情報を分析および処理するように構成される、1つ以上のプロセッサ(例えば、中央処理ユニットおよび/または1つ以上のグラフィック処理ユニット(GPU))を含んでもよい。いくつかの実施形態では、遠隔データリポジトリ74は、デジタルデータ記憶設備を含んでもよく、これは、インターネットまたは「クラウド」リソース構成における他のネットワーキング構成を通して利用可能であってもよい。いくつかの実施形態では、全てのデータが、記憶され、全ての算出が、ローカルデータ処理モジュール70において実施され、遠隔モジュールからの完全に自律的な使用を可能にする。
【0078】
いくつかの実施形態では、ローカルデータ処理モジュール70は、バッテリ82に動作可能に結合される。いくつかの実施形態では、バッテリ82は、市販のバッテリ等のリムーバブル電源である。他の実施形態では、バッテリ82は、リチウムイオンバッテリである。いくつかの実施形態では、バッテリ82は、システム80の非動作時間の間にユーザ60によって充電可能な内部リチウムイオンバッテリと、ユーザ60が、電源に繋ぎ、リチウムイオンバッテリを充電する必要なく、またはシステム80をシャットオフし、バッテリを交換する必要なく、より長い時間周期にわたってシステム80を動作させ得るように、リムーバブルバッテリとの両方を含む。
【0079】
図3Aは、ユーザ30が物理的世界環境32(以降、「環境32」と称される)を通して移動するにつれて、ARコンテンツをレンダリングする、ARディスプレイシステムを装着している、ユーザ30を図示する。ユーザ30は、ARディスプレイシステムを位置34に位置付け、ARディスプレイシステムは、位置34に対するパス可能世界(例えば、物理的世界内の実オブジェクトの変化に伴って記憶および更新され得る、物理的世界内の実オブジェクトのデジタル表現)の周囲情報を記録する。位置34はそれぞれさらに、環境32に関連する「姿勢」および/またはマッピングされた特徴または指向性オーディオ入力と関連付けられ得る。ARディスプレイシステムをその頭部上に装着しているユーザは、特定の方向に眼を向け、その頭部を傾斜させ、環境に対するシステムの頭部姿勢を作成し得る。各位置および/または同一位置内の姿勢では、ARディスプレイシステム上のセンサは、環境32についての異なる情報を捕捉し得る。故に、位置34において収集された情報は、データ入力36に集約され、少なくとも、例えば、
図2の遠隔処理モジュール72上で処理することによって実装され得る、パス可能世界モジュール38によって、処理され得る。
【0080】
パス可能世界モジュール38は、少なくとも部分的に、データ入力36から決定されるように、ARコンテンツ40が物理的世界に関連して設置され得る場所および方法を決定する。ARコンテンツは、ユーザにARコンテンツおよび物理的世界の両方が見え得るような方法において、ARコンテンツを提示することによって、物理的世界内に「設置」される。そのようなインターフェースは、例えば、ユーザに透けて見え、物理的世界を視認し得、仮想オブジェクトがユーザの視野内の制御された場所に現れるように制御され得る、眼鏡を用いて、作成されてもよい。ARコンテンツは、物理的世界内のオブジェクトと相互作用するかのようにレンダリングされる。ユーザインターフェースは、物理的世界内のオブジェクトのユーザのビューが、ARコンテンツが、適切なとき、それらのオブジェクトのユーザのビューを不明瞭にする、外観を作成するように隠され得るようなものである。例えば、ARコンテンツは、環境32内の要素42(例えば、テーブル)の一部を適切に選択し、その要素42上に静置している、または別様に、それと相互作用するかのように成形および位置付けられる、ARコンテンツ40を表示および表示することによって、設置されてもよい。ARコンテンツはまた、まだ視野44内にない構造内に、または物理的世界のマッピングされたメッシュモデル46に対して、設置されてもよい。
【0081】
描写されるように、要素42は、固定されているかのように取り扱われ、パス可能世界モジュール38内に記憶され得る、物理的世界内の複数の要素であり得るものの実施例である。いったんパス可能世界モジュール38内に記憶されると、それらの固定要素についての情報は、ユーザ30が、ユーザ30にそれが見える度に、システムが固定要素42にマッピングする必要なく、コンテンツを固定要素42上で知覚し得るように、情報をユーザに提示するために使用されてもよい。固定要素42は、したがって、前のモデル化セッションからマッピングされたメッシュモデルである、または別個のユーザから決定されるが、但し、複数のユーザによる将来的参照のためにパス可能世界モジュール38上に記憶され得る。したがって、パス可能世界モジュール38は、環境32を以前にマッピングされた環境から認識し、最初に、ユーザ30のデバイスが環境32をマッピングすることなく、ARコンテンツを表示し、算出プロセスおよびサイクルを節約し、任意のレンダリングされたARコンテンツの待ち時間を回避し得る。
【0082】
同様に、物理的世界のマッピングされたメッシュモデル46は、ARディスプレイシステムによって作成されることができ、ARコンテンツ40と相互作用し、それを表示するための適切な表面およびメトリックが、再マップまたはモデル化する必要なく、ユーザ30または他のユーザによる将来的読出のために、マッピングされ、パス可能世界モジュール38内に記憶されることができる。いくつかの実施形態では、データ入力36は、パス可能世界モジュール38に、1つ以上の固定要素のうちのどの固定要素42が利用可能か、どのARコンテンツ40が固定要素42上に最後に設置されたか、およびその同一コンテンツを表示すべきかどうか(そのようなARコンテンツは、ユーザが特定のパス可能世界モデルを視認しているかどうかにかかわらず、「持続的」コンテンツである)を示すための地理的場所、ユーザ識別、および現在のアクティビティ等の入力である。
【0083】
オブジェクトが固定されるべきと見なされる、実施形態でも、パス可能世界モジュール38は、物理的世界の変化の可能性を考慮するために、随時、更新されてもよい。固定されるオブジェクトのモデルは、非常に低周波数で更新されてもよい。物理的世界内の他のオブジェクトは、移動している、または別様に、固定されると見なされなくてもよい。AR場面を現実的感覚を伴ってレンダリングするために、ARシステムは、固定されるオブジェクトを更新するために使用されるものよりはるかに高い周波数で、これらの非固定オブジェクトの位置を更新してもよい。物理的世界内のオブジェクトの全ての正確な追跡を可能にするために、ARシステムは、1つ以上の画像センサを含む、複数のセンサからの情報を引き出してもよい。
【0084】
図3Bは、視認光学系アセンブリ48と、付帯する随意のコンポーネントとの概略図である。具体的構成は、下記の
図21に説明される。ユーザの眼49に対して配向されると、いくつかの実施形態では、2つの眼追跡カメラ50は、眼形状、眼瞼オクルージョン、瞳孔方向、およびユーザの眼49上の閃光等のユーザの眼49のメトリックを検出する。いくつかの実施形態では、センサのうちの1つは、飛行時間センサ等の深度センサ51であって、信号を世界に放出し、近隣のオブジェクトからのそれらの信号の反射を検出し、所与のオブジェクトまでの距離を決定してもよい。深度センサは、例えば、オブジェクトが、それらのオブジェクトの運動またはユーザの姿勢の変化のいずれかの結果として、ユーザの視野に進入したかどうかを迅速に決定し得る。しかしながら、ユーザの視野内のオブジェクトの位置についての情報が、代替として、または加えて、他のセンサを用いて収集されてもよい。いくつかの実施形態では、世界カメラ52は、周辺視野より大きいビューを記録し、環境32をマッピングし、ARコンテンツに影響を及ぼし得る、入力を検出する。いくつかの実施形態では、世界カメラ52および/またはカメラ53は、グレースケールおよび/またはカラー画像センサであってもよく、これは、グレースケールおよび/またはカラー画像フレームを、固定された時間インターバルにおいて出力してもよい。カメラ53はさらに、ユーザの視野内の物理的世界画像を具体的時間に捕捉してもよい。フレームベースの画像センサのピクセルは、その値が不変である場合でも、反復的にサンプリングされてもよい。世界カメラ52、カメラ53、および深度センサ51はそれぞれ、54、55、および56の個別の視野を有し、
図3Aに描写される物理的世界環境32等の物理的世界場面からのデータを収集および記録する。
【0085】
慣性測定ユニット57は、視認光学系アセンブリ48の移動および/または配向を決定してもよい。いくつかの実施形態では、各コンポーネントは、少なくとも1つの他のコンポーネントに動作可能に結合される。例えば、深度センサ51は、眼追跡カメラ50に動作可能に結合され、ユーザの眼49が見ている、物理的世界内の点および/または領域の実際の距離を確認してもよい。
【0086】
視認光学系アセンブリ48は、
図3Bに図示されるコンポーネントのうちのいくつかを含んでもよいことを理解されたい。例えば、視認光学系アセンブリ48は、異なる数のコンポーネントを含んでもよい。いくつかの実施形態では、例えば、視認光学系アセンブリ48は、描写される4つの世界カメラの代わりに、1つの世界カメラ52、2つの世界カメラ52、またはそれよりも多くの世界カメラを含んでもよい。代替として、または加えて、カメラ52および53は、その完全視野の可視光画像を捕捉する必要はない。視認光学系アセンブリ48は、他のタイプのコンポーネントを含んでもよい。いくつかの実施形態では、視認光学系アセンブリ48は、1つ以上の動的視覚センサを含んでもよく、そのピクセルは、閾値を超える光強度の相対的変化に非同期的に応答してもよい。
【0087】
いくつかの実施形態では、視認光学系アセンブリ48は、飛行時間情報に基づく、深度センサ51を含まなくてもよい。いくつかの実施形態では、例えば、視認光学系アセンブリ48は、1つ以上のプレノプティックカメラを含んでもよく、そのピクセルは、光強度だけではなく、また、入射光の角度も捕捉してもよい。例えば、プレノプティックカメラは、透過性回折マスク(TDM)でオーバーレイされた画像センサを含んでもよい。代替として、または加えて、プレノプティックカメラは、角度感知ピクセルおよび/または位相検出自動焦点ピクセル(PDAF)および/またはマイクロレンズアレイ(MLA)を含有する、画像センサを含んでもよい。そのようなセンサは、深度センサ51の代わりに、またはそれに加え、深度情報のソースとしての役割を果たし得る。
【0088】
また、
図3Bにおけるコンポーネントの構成は、実施例として図示されることを理解されたい。視認光学系アセンブリ48は、ユーザが特定のセットのコンポーネントのために最大視野を有し得るように、任意の好適な構成を伴うコンポーネントを含んでもよい。例えば、視認光学系アセンブリ48が、1つの世界カメラ52を有する場合、世界カメラは、側面上の代わりに、視認光学系アセンブリの中心領域内に設置されてもよい。
【0089】
視認光学系アセンブリ48内のこれらのセンサからの情報は、システム内のプロセッサのうちの1つ以上のものに結合されてもよい。プロセッサは、ユーザに物理的世界内のオブジェクトと相互作用する仮想コンテンツを知覚させるようにレンダリングされ得る、データを生成してもよい。そのレンダリングは、物理的および仮想オブジェクトの両方を描写する画像データを生成することを含む、任意の好適な方法で実装されてもよい。他の実施形態では、物理的および仮想コンテンツは、ユーザがそれを通して物理的世界を見る、ディスプレイデバイスの不透明度を変調させることによって、1つの場面内に描写されてもよい。不透明度は、仮想オブジェクトの外観を作成し、また、ユーザに、仮想オブジェクトによってオクルードされる、物理的世界内のオブジェクトが見えないように遮断するように、制御されてもよい。いくつかの実施形態では、画像データは、ユーザインターフェースを通して視認され得る、物理的世界と現実的に相互作用するように修正され得る、仮想コンテンツのみを含んでもよい(例えば、コンテンツをクリッピングし、オクルージョンを考慮する)。コンテンツがユーザに提示される方法にかかわらず、物理的世界のモデルは、仮想オブジェクトの形状、位置、運動、および可視性を含む、物理的オブジェクトによって影響され得る、仮想オブジェクトの特性が、正しく算出され得るように使用されてもよい。
【0090】
物理的世界のモデルは、ユーザのウェアラブルデバイス上のセンサから収集されたデータから作成されてもよい。いくつかの実施形態では、モデルは、ユーザの全てから遠隔の(かつ「クラウド内」にあり得る)コンピューティングデバイス内に集約され得る、複数のユーザによって収集されたデータから作成されてもよい。
【0091】
いくつかの実施形態では、センサのうちの少なくとも1つは、コンパクトかつ低電力のコンポーネントを使用して、短待ち時間を伴って、高周波数で、場面内の物理的オブジェクト、特に、非固定オブジェクトについての情報を入手するように構成されてもよい。そのセンサは、パッチ追跡を採用して、データ出力の量を限定してもよい。
【0092】
図4は、いくつかの実施形態による、画像感知システム400を描写する。画像感知システム400は、画像センサ402を含んでもよく、これは、画像アレイ404を含んでもよく、これは、複数のピクセルを含有してもよく、それぞれ、従来の画像センサにおけるように、光に応答する。センサ402はさらに、各ピクセルにアクセスするための回路網を含んでもよい。ピクセルにアクセスすることは、そのピクセルによって生成された入射光についての情報を取得することを伴い得る。代替として、または加えて、ピクセルにアクセスすることは、あるイベントの検出に応じて、出力のみを提供するようにそれを構成すること等によって、そのピクセルを制御することを伴い得る。
【0093】
図示される実施形態では、画像アレイ404は、ピクセルの複数の行および列を伴う、アレイとして構成される。そのような実施形態では、アクセス回路網は、行アドレスエンコーダ/デコーダ406と、列アドレスエンコーダ/デコーダ408として実装されてもよい。画像センサ402はさらに、アクセス回路網への入力を生成し、情報が画像アレイ404内のピクセルから読み取られる、タイミングおよび順序を制御する、回路網を含有してもよい。図示される実施形態では、その回路網は、パッチ追跡エンジン410である。各行内のピクセルによって捕捉された画像情報を連続的に出力し得る、従来の画像センサと対照的に、画像センサ402は、規定されたパッチ内の画像情報を出力するように制御されてもよい。さらに、画像アレイに対するそれらのパッチの場所は、経時的に変化してもよい。図示される実施形態では、パッチ追跡エンジン410は、画像アレイアクセス情報を出力し、パッチの場所に対応する、画像アレイ404の部分からの画像情報の出力を制御してもよく、アクセス情報は環境内のオブジェクトの運動および/またはそれらのオブジェクトに対する画像センサの運動の推定値に基づいて、動的に変化してもよい。
【0094】
いくつかの実施形態では、画像センサ402は、ピクセルに関する画像性質(例えば、強度)の変化が存在するときのみ、画像情報がセンサによって提供されるように、動的視覚センサ(DVS)の機能を有してもよい。例えば、画像センサ402は、ピクセルのオンおよびオフ状態を定義する、1つ以上の閾値を適用してもよい。画像センサは、ピクセルが状態を変化させたことを検出し、状態を変化させた、それらのピクセルのみ、またはパッチ内のそれらのピクセルのみに関して、出力を選択的に提供してもよい。これらの出力は、アレイ内の全てのピクセルの読取の一部としてではなく、それらが検出されるにつれて、非同期的に行われてもよい。出力は、例えば、ピクセルアドレス(例えば、行および列)およびイベントのタイプ(オンまたはオフ)を含み得る、アドレス-イベント表現(AER)418の形態であってもよい。オンイベントは、個別のピクセルアドレスにおけるピクセルセルが、光強度の増加を感知することを示し得、オフイベントは、個別のピクセルアドレス内のピクセルセルが、光強度の減少を感知することを示し得る。増加または減少は、絶対レベルに対するものであってもよい、またはピクセルからの最後の出力におけるレベルに対する変化であってもよい。その変化は、例えば、固定オフセットとして、またはピクセルからの最後の出力における値のパーセンテージとして、表されてもよい。
【0095】
パッチ追跡に関連するDVS技法の使用は、XRシステムにおいて使用するために好適な画像センサを可能にし得る。画像センサ内で組み合わせられると、生成されるデータの量は、パッチ内にあって、イベントの出力をトリガするであろう、変化を検出する、ピクセルセルからのデータに限定され得る。
【0096】
いくつかのシナリオでは、高分解能画像情報が、望ましい。しかしながら、高分解能画像情報を生成するために、百万ピクセルを上回るセルを伴う、大センサの使用は、DVS技法が使用されるとき、大量の画像情報を生成し得る。本発明者らは、DVSセンサが、背景内の移動または追跡されているオブジェクトの運動の結果とするもの以外の画像の変化を反映させる、多数のイベントを生産し得ることを認識および理解している。現在、DVSセンサの分解能は、生成されるイベントの数を限定するように、1MBを下回るように、例えば、128×128、240×180、および346×260に限定される。そのようなセンサは、オブジェクトを追跡するための分解能を犠牲にし、例えば、手の微細な指の移動を検出しない場合がある。さらに、画像センサが、画像情報を他のフォーマットにおいて出力する場合、センサアレイの分解能を管理可能な数のイベントを出力するように限定することはまた、DVS機能とともに、高分解能画像フレームを生成するための画像センサの使用を限定し得る。本明細書に説明されるようなセンサは、いくつかの実施形態では、最大8メガピクセルまたは12メガピクセルを含む、VGAより高い分解能を有し得る。それでもなお、本明細書に説明されるようなパッチ追跡が、1秒あたり画像センサによって出力されるイベントの数を限定するために使用されてもよい。結果として、少なくとも2つのモードで動作する、画像センサが、有効にされてもよい。例えば、メガピクセル分解能を伴う画像センサは、追跡されている具体的パッチ内のイベントを出力する、第1のモードで動作してもよい。第2のモードでは、高分解能画像フレームまたは画像フレームの一部を出力してもよい。そのような画像センサは、システムの機能に基づいて、これらの異なるモードで動作するようにXRシステム内で制御されてもよい。
【0097】
画像アレイ404は、アレイ内に配列される、複数のピクセルセル500を含んでもよい。
図5Aは、ピクセルセル500の実施例を描写し、これは、本実施形態では、DVS技法を実装する、結像アレイにおいて使用するために構成される。ピクセルセル500は、感光回路502と、差分回路506と、比較器508とを含んでもよい。感光回路502は、光ダイオードに衝打する光を測定可能電気信号に変換する、光ダイオード504を含んでもよい。本実施例では、変換は、電気電流Iに行われる。トランスコンダクタンス増幅器510は、光電流Iを電圧に変換する。その変換は、logIの関数等に従って、線形または非線形であってもよい。具体的伝達関数にかかわらず、トランスコンダクタンス増幅器510の出力は、光ダイオード504において検出された光の量を示す。光ダイオードが、実施例として図示されるが、入射光に応答して測定可能出力を生産する、他の光感知コンポーネントが、光ダイオードの代わりに、または加えて、感光回路内に実装されてもよいことを理解されたい。
【0098】
図5Aの実施形態では、ピクセルの出力が十分に変化したかどうかを決定し、そのピクセルセルに関する出力をトリガするための回路網が、ピクセル自体の中に組み込まれる。本実施例では、その機能は、差分回路506と、比較器508とによって実装される。差分回路506は、例えば、差分回路の出力を平衡し、イベントの生成後、レベルをリセットすることによって、ピクセルセル間のDC不整合を低減させるように構成されてもよい。本実施例では、差分回路506は、最後の出力以降の光ダイオード504の出力の変化を示す、出力を生産するように構成される。差分回路は、利得-Aを有する、増幅器512と、ネットワーク内に接続される単一回路要素または1つ以上のコンデンサとして実装され得る、コンデンサ514と、リセットスイッチ516とを含んでもよい。
【0099】
動作時、ピクセルセルは、スイッチ516を瞬間的に閉鎖することによって、リセットされるであろう。そのようなリセットは、回路の動作の開始時およびイベントが検出された以降、随時、生じてもよい。ピクセル500が、リセットされると、コンデンサ514を横断した電圧は、トランスコンダクタンス増幅器510の出力から減算されると、ゼロ電圧が増幅器512の入力に生じるようなものとなる。スイッチ516が、開放すると、トランスコンダクタンス増幅器510の出力は、コンデンサ514を横断した電圧降下と組み合わせて、ゼロ電圧が増幅器512の入力に存在するようになるであろう。トランスコンダクタンス増幅器510の出力は、光ダイオード504に衝打する光の量の変化の結果として変化する。トランスコンダクタンス増幅器510の出力が、増加または減少すると、増幅器512の出力は、増幅器512の利得によって増幅された変化量だけ正または負に揺動するであろう。
【0100】
比較器508は、イベントが生成されるかどうかと、例えば、差分回路の出力電圧Vと所定の閾値電圧Cを比較することによって、イベントの符号とを決定してもよい。いくつかの実施形態では、比較器508は、トランジスタを備える、2つの比較器を含んでもよく、一方の対は、増幅器512の出力が正の変化を示すとき動作してもよく、増加変化(オンイベント)を検出してもよく、他方の比較器は、増幅器512の出力が負の変化を示すときに動作してもよく、減少変化(オフイベント)を検出してもよい。しかしながら、増幅器512は、負の利得を有してもよいことを理解されたい。そのような実施形態では、トランスコンダクタンス増幅器510の出力の増加は、増幅器512の出力における負の電圧変化として検出され得る。同様に、正および負の電圧は、接地に対するものである、または任意の好適な基準レベルであってもよいことを理解されたい。それにかかわらず、閾値電圧Cの値は、トランジスタの特性(例えば、トランジスタサイズ、トランジスタ閾値電圧)によって、および/または比較器508に適用され得る基準電圧の値によって制御されてもよい。
【0101】
図5Bは、ピクセルセル500の時間tにわたるイベント出力(オン、オフ)の実施例を描写する。図示される実施例では、時間t1において、差分回路の出力は、V1の値を有し、時間t2において、差分回路の出力は、V2の値を有し、時間t3において、差分回路の出力は、V3の値を有する。時間t1と時間t2との間では、光ダイオードは、光強度のある程度の増加を感知するが、Vの変化が閾値電圧Cの値を超えないため、ピクセルセルは、イベントを出力しない。時間t2では、ピクセルセルは、V2が閾値電圧Cの値だけV1より大きいため、オンイベントを出力する。時間t2と時間t3との間では、光ダイオードは、光強度のある程度の減少を感知するが、Vの変化が閾値電圧Cの値を超えないため、ピクセルセルは、イベントを出力しない。時間t3では、V3が閾値電圧Cの値だけV2未満であるため、ピクセルセルは、オフイベントを出力する。
【0102】
各イベントは、AER418における出力をトリガし得る。出力は、例えば、イベントがオンまたはオフイベントであるかどうかのインジケーションと、その行および列等のピクセルの識別とを含んでもよい。他の情報が、代替として、または加えて、出力とともに含まれてもよい。例えば、タイムスタンプが、含まれ得、これは、後の伝送または処理のために、イベントが待ち行列に入れられる場合、有用であり得る。別の実施例として、増幅器510の出力における電流レベルが、含まれ得る。そのような情報は、随意に、例えば、さらなる処理が、オブジェクトの運動を検出することに加え、実施されるべきである場合、含まれ得る。
【0103】
イベント出力の周波数、したがって、ピクセルセルの感度は、閾値電圧Cの値によって制御されてもよいことを理解されたい。例えば、イベント出力の周波数は、閾値電圧Cの値を増加させることによって低減される、または閾値電圧Cを低減させることによって増加されてもよい。また、閾値電圧Cは、例えば、オンイベントを検出するための比較器およびオフイベントを検出するための比較器に関する異なる基準電圧を設定することによって、オンイベントおよびオフイベントに関して異なり得ることを理解されたい。また、ピクセルセルがまた、イベントの検出を示す、符号信号の代わりに、またはそれに加え、光強度変化のサイズを示す、値を出力してもよいことを理解されたい。
【0104】
図5Aおよび5Bのピクセルセル500は、いくつかの実施形態による、実施例として図示される。他の設計もまた、ピクセルセルのために好適であり得る。いくつかの実施形態では、ピクセルセルは、感光回路と、差分回路とを含むが、比較器回路を1つ以上の他のピクセルセルと共有してもよい。いくつかの実施形態では、ピクセルセルは、変化の値を計算するように構成される、回路網、例えば、ピクセルレベルにおける能動ピクセルセンサを含んでもよい。
【0105】
イベントがピクセルセル毎に検出される様式にかかわらず、イベントの検出のみに応じて出力するようにピクセルを構成する能力は、非固定(すなわち、移動可能な)オブジェクトの位置のモデルを維持するために要求される、情報の量を限定するために使用されてもよい。例えば、パッチ内のピクセルは、比較的に小変化が生じるとき、閾値電圧Cがトリガされるように設定されてもよい。パッチ外の他のピクセルは、3または5倍等、より大きい閾値を有してもよい。いくつかの実施形態では、任意のパッチ外のピクセルに関する閾値電圧Cは、ピクセルが、事実上、無効にされ、変化の量にかかわらず、任意の出力を生産しないように大きく設定されてもよい。他の実施形態では、パッチ外のピクセルは、他の方法において無効にされてもよい。そのような実施形態では、閾値電圧は、全てのピクセルに関して固定されてもよいが、ピクセルは、それらがパッチ内にあるかどうかに基づいて、選択的に有効または無効にされてもよい。
【0106】
さらに他の実施形態では、1つ以上のピクセルに関する閾値電圧は、画像アレイから出力されたデータの量を変調させるように、適応的に設定されてもよい。例えば、ARシステムは、1秒あたりある数のイベントを処理するための処理容量を有し得る。いくつかまたは全てのピクセルに関する閾値は、出力されている1秒あたりのイベントの数が上限を超えるとき、増加されてもよい。代替として、または加えて、閾値は、1秒あたりのイベントの数が下限を下回って降下したとき、降下され、より正確な処理のために、より多くのデータを有効にし得る。1秒あたりのイベントの数は、具体的実施例として、200~2,000イベントであってもよい。そのようなイベントの数は、例えば、1秒あたり3千万以上のピクセル値を構成するであろう、画像センサから走査出力されるピクセル値の全ての処理と比較して、1秒あたり処理されるべきデータの数の実質的低減を構成する。そのイベントの数は、より少ないが、それでもなお、1秒あたり数万のピクセル値またはそれを上回り得る、パッチ内のピクセルのみの処理と比較して、さらなる低減である。
【0107】
複数のピクセル毎に閾値電圧を有効にし、および/または設定するための制御信号が、任意の好適な方法において生成されてもよい。しかしながら、図示される実施形態では、それらの制御信号は、パッチ追跡エンジン410によって、または処理モジュール72または他のプロセッサ内の処理に基づいて、設定される。
【0108】
図4に戻って参照すると、画像感知システム400は、パッチ追跡エンジン410が、パッチを実装するように、少なくとも、受信された入力に基づいて、有効および/または無効にされるべき画像アレイ404の少なくとも1つの領域を動的に選択し得るように、任意の好適なコンポーネントからの入力を受信してもよい。パッチ追跡エンジン410は、パッチの1つ以上のパラメータを記憶する、メモリを有する、デジタル処理回路網であってもよい。パラメータは、例えば、パッチの境界であってもよく、画像アレイの運動とパッチと関連付けられる移動可能なオブジェクトの画像の画像アレイ内の運動との間のスケール係数についての情報等の他の情報を含んでもよい。パッチ追跡エンジン410はまた、計算を記憶された値および入力として供給される他の測定された値上で実施するように構成される、回路網を含んでもよい。
【0109】
図示される実施形態では、パッチ追跡エンジン410は、入力として、現在のパッチの指定を受信する。パッチは、パッチの行および列アドレスの範囲を規定すること等によって、画像アレイ404内のそのサイズおよび位置に基づいて指定されてもよい。そのような仕様は、物理的世界についての情報を処理する、処理モジュール72(
図2)または他のコンポーネントの出力として提供されてもよい。処理モジュール72は、物理的世界に対する適切な外観を伴って仮想オブジェクトをレンダリングするために、例えば、物理的世界内の各移動可能なオブジェクトまたは追跡されている移動可能なオブジェクトのサブセットの現在の場所を包含するようにパッチを指定してもよい。例えば、AR場面が、仮想オブジェクトとして、移動する玩具車等の物理的オブジェクト上に平衡される、玩具人形を含むべき場合、パッチは、その玩具車を包含するように指定されてもよい。パッチは、現実的AR場面をレンダリングするために、そのオブジェクトについての最新情報を有する必要性があまり存在し得ないため、背景内で移動している別の玩具車に関しては指定され得ない。
【0110】
パッチが選択される方法にかかわらず、パッチの現在の位置についての情報は、パッチ追跡エンジン410に供給されてもよい。いくつかの実施形態では、パッチは、パッチの場所が、単に、開始および終了行および列として規定され得るように、矩形であってもよい。他の実施形態では、パッチは、円形等の他の形状を有してもよく、パッチは、中心点および半径等によって、他の方法で規定されてもよい。
【0111】
いくつかの実施形態では、軌道情報もまた、パッチについて供給されてもよい。軌道は、例えば、画像アレイ404の座標に対するパッチの運動を規定し得る。処理モジュール72は、例えば、物理的世界内の移動可能なオブジェクトの運動および/または物理的世界に対する画像アレイ404の運動のモデルを構築してもよい。一方または両方の運動は、オブジェクトの画像が投影される、画像アレイ404内の場所に影響を及ぼし得るので、画像アレイ404内のパッチの軌道が、一方または両方に基づいて算出されてもよい。軌道は、線形、二次、三次、または他の多項式方程式のパラメータ等の任意の好適な方法で規定されてもよい。
【0112】
他の実施形態では、パッチ追跡エンジン410は、物理的世界についての情報を提供するセンサからの入力に基づいて、パッチの場所を動的に算出してもよい。センサからの情報は、直接、センサから供給されてもよい。代替として、または加えて、センサ情報は、パッチ追跡エンジン410に供給される前に、物理的世界についての情報を抽出するために処理されてもよい。抽出された情報は、例えば、物理的世界に対する画像アレイ404の運動、画像アレイ404とその画像がパッチ内に該当するオブジェクトとの間の距離、または画像アレイ404および/またはオブジェクトが移動するにつれて、画像アレイ404内のパッチと物理的世界内のオブジェクトの画像を動的に整合させるために使用され得る、他の情報を含んでもよい。
【0113】
入力コンポーネントの実施例は、画像センサ412と、慣性センサ414とを含んでもよい。画像センサ412の実施例は、眼追跡カメラ50、深度センサ51、世界カメラ52、および/またはカメラ52を含んでもよい。慣性センサ414の実施例は、慣性測定ユニット57を含んでもよい。いくつかの実施形態では、入力コンポーネントは、データを比較的に高レートで提供するように選択されてもよい。慣性測定ユニット57は、例えば、800~1,200測定/秒等の200~2,000測定/秒の出力レートを有してもよい。パッチ位置も、同様に高レートで更新されてもよい。慣性測定ユニット57をパッチ追跡エンジン410への入力のソースとして使用することによって、パッチの場所は、1つの具体的実施例として、800~1,200回/秒、更新され得る。このように、移動可能なオブジェクトは、処理される必要があるイベントの数を限定する、比較的に小パッチを使用して、高正確度を伴って追跡され得る。そのようなアプローチは、画像センサの相対的位置の変化と移動可能なオブジェクトとの間の非常に短待ち時間につながり得、同様に、望ましいユーザ体験を提供するように、仮想オブジェクトのレンダリングの更新の短待ち時間を伴う。
【0114】
いくつかのシナリオでは、パッチを用いて追跡されている移動可能なオブジェクトは、物理的世界内の定常オブジェクトであってもよい。ARシステムは、例えば、物理的世界から撮影された複数の画像を分析することから定常オブジェクトを識別し、定常オブジェクトのうちの1つ以上のものの特徴を、画像センサをその上に有するウェアラブルデバイスの運動を決定するための基準点として選択してもよい。センサアレイに対するこれらの基準点の場所の頻繁かつ短待ち時間の更新は、ウェアラブルデバイスのユーザの頭部姿勢の頻繁かつ短待ち時間の算出を提供するために使用されてもよい。頭部姿勢が、ウェアラブル上のユーザインターフェースを介して、仮想オブジェクトを現実的にレンダリングするために使用され得るため、頭部姿勢の頻繁かつ短待ち時間の更新は、ARシステムのユーザ体験を改良する。したがって、パッチの位置を制御する、パッチ追跡エンジン410への入力を有することは、1つ以上の慣性測定ユニット等の高出力レートを伴うセンサのみから生じ、ARシステムの望ましいユーザ体験につながり得る。
【0115】
しかしながら、いくつかの実施形態では、他の情報も、パッチ追跡エンジン410に供給され、それが、軌道を算出し、および/またはパッチに適用することを可能にしてもよい。本他の情報は、パス可能世界モジュール38および/またはマッピングされたメッシュモデル46等の記憶された情報416を含んでもよい。本情報は、物理的世界に対するオブジェクトの1つ以上の前の位置を、これらの前の位置の変化および/または前の位置に対する現在の位置の変化の考慮が、物理的世界内のオブジェクトの軌道を示し得、これが、次いで、画像アレイ404を横断してパッチの軌道にマッピングされ得るように示してもよい。物理的世界のモデル内の他の情報が、代替として、または加えて、使用されてもよい。例えば、移動可能なオブジェクトのサイズおよび/または画像アレイ404に対する距離または位置に関する他の情報が、そのオブジェクトと関連付けられる画像アレイ404を横断したパッチの場所または軌道のいずれかを算出するために使用されてもよい。
【0116】
軌道が決定される様式にかかわらず、パッチ追跡エンジン410は、その軌道を適用し、1回/秒または800回/秒超より高速等、高レートで画像アレイ404内のパッチの更新された場所を算出してもよい。レートは、いくつかの実施形態では、2,000回/秒未満であるように、処理能力によって限定され得る。
【0117】
移動可能なオブジェクトの変化を追跡するための処理は、完全未満の物理的世界を再構築することであり得ることを理解されたい。しかしながら、30秒毎または5秒毎等、移動可能なオブジェクトの位置における更新間のインターバルより長いインターバルで、物理的世界の再構築が存在してもよい。追跡すべきオブジェクトの場所およびそれらのオブジェクトについての情報を捕捉するであろうパッチの場所は、物理的世界の再構築が存在するとき、再計算されてもよい。
【0118】
図4は、パッチを動的に生成することと、そのパッチ内からの画像情報の選択的出力を制御することとの両方のための処理回路網が、アレイから出力された画像情報が選択された情報に限定されるように、直接、画像アレイ404を制御するように構成される、実施形態を図示する。そのような回路網は、例えば、画像アレイ404を格納する、同一半導体チップの中に統合されてもよい、または画像アレイ404のための別個のコントローラチップに統合されてもよい。しかしながら、画像アレイ404のための制御信号を生成する回路網は、XRシステム全体を通して分散されてもよいことを理解されたい。例えば、機能のいくつかまたは全ては、処理モジュール72内のプログラミングまたはシステム内の他のプロセッサによって実施されてもよい。
【0119】
画像感知システム400は、複数のピクセル毎に、画像情報を出力してもよい。画像情報の各ピクセルは、画像アレイ404のピクセルセルのうちの1つに対応し得る。画像感知システム400から出力される画像情報は、パッチ追跡エンジン410によって選択された画像アレイ404の少なくとも1つの領域に対応する、1つ以上のパッチ毎の画像情報であり得る。いくつかの実施形態では、画像アレイ404の各ピクセルが、
図5Aに図示されるものと異なる構成を有するとき等、出力された画像情報内のピクセルは、光強度の変化が1つ以上のパッチ内の画像センサ400によって検出されたピクセルを識別し得る。
【0120】
いくつかの実施形態では、画像感知システム400から出力された画像情報は、パッチ追跡エンジン410によって選択された画像アレイの少なくとも1つの領域に対応する、1つ以上のパッチのそれぞれ外のピクセルに関する画像情報であり得る。例えば、シカが、流れる川を伴う、物理的世界内で走っているとし得る。川の波の詳細は、着目され得ないが、画像アレイ402のピクセルセルをトリガし得る。パッチ追跡エンジン410は、川を包囲するパッチを作成し、川を包囲するパッチに対応する、画像アレイ402の一部を無効にしてもよい。
【0121】
変化されたピクセルの識別に基づいて、さらなる処理が、実施されてもよい。例えば、変化されたピクセルによって結像されている物理的世界の部分に対応する、世界モデルの部分は、更新されてもよい。これらの更新は、他のセンサを用いて収集された情報に基づいて実施されてもよい。いくつかの実施形態では、さらなる処理が、パッチ内の複数の変化されたピクセル上で調整される、またはそれによってトリガされてもよい。例えば、更新は、いったんパッチ内の10%またはある他の閾値量のピクセルが、変化を検出すると、実施されてもよい。
【0122】
いくつかの実施形態では、他のフォーマットにおける画像情報が、画像センサから出力されてもよく、変化情報と組み合わせて使用され、世界モデルへの更新を行ってもよい。いくつかの実施形態では、画像センサから出力される画像情報のフォーマットは、VRシステムの動作の間、随時、変化してもよい。いくつかの実施形態では、例えば、ピクセルセル500は、ある時は、比較器508内で生産されるような差分出力を生産するように動作されてもよい。増幅器510の出力は、他の時には、光ダイオード504上に入射する光の大きさを出力するように切替可能であってもよい。例えば、増幅器510の出力は、感知ラインに切替可能に接続されてもよく、これは、ひいては、増幅器510の出力の大きさに基づいて、入射光の大きさのデジタルインジケーションを提供し得る、A/Dコンバータに接続される。
【0123】
画像センサは、本構成では、ARシステムの一部として動作され、大抵の場合、差分的に出力し、閾値を上回る変化が検出されるピクセルに関するイベントのみを出力する、または閾値を上回る変化が検出されるパッチ内のピクセルに関するイベントのみを出力してもよい。5~30秒毎等、周期的に、画像アレイ内の全てのピクセルに関する情報大きさを伴う、完全画像フレームが、出力されてもよい。短待ち時間および正確な処理が、このように達成され得、差分情報は、ユーザ知覚に影響を及ぼす可能性が最も高い変化が生じた世界モデルの選択された部分を迅速に更新するために使用される一方、完全画像は、世界モデルのより大きい部分をより多く更新するために使用されてもよい。世界モデルへの完全更新は、より低速のレートにおいてのみ生じるが、モデルを更新する際の任意の遅延は、AR場面のユーザの知覚に有意義に影響を及ぼし得ない。
【0124】
画像センサの出力モードは、センサが、ピクセルのいくつかまたは全てに関する強度情報およびアレイ内のピクセルのいくつかまたは全てに関する変化のインジケーションのうちの1つ以上のものを出力するように、画像センサの動作全体を通して、随時、変化されてもよい。
【0125】
パッチからの画像情報が、画像アレイから出力される情報を限定することによって、画像センサから選択的に出力されることは、要件ではない。いくつかの実施形態では、画像情報は、画像アレイ内の全てのピクセルによって出力されてもよく、アレイの具体的領域についての情報のみが、画像センサから出力されてもよい。
図6は、いくつかの実施形態による、画像センサ600を描写する。画像センサ600は、画像アレイ602を含んでもよい。本実施形態では、画像アレイ602は、ピクセル値の行および列を走査出力する、従来の画像アレイに類似してもよい。そのような画像アレイの動作は、他のコンポーネントによって適合されてもよい。画像センサ600はさらに、パッチ追跡エンジン604および/または比較器606を含んでもよい。画像センサ600は、出力610を画像プロセッサ608に提供してもよい。プロセッサ608は、例えば、処理モジュール72(
図2)の一部であってもよい。
【0126】
パッチ追跡エンジン604は、パッチ追跡エンジン410に類似する、構造および機能を有してもよい。これは、画像アレイ602の少なくとも1つの選択された領域を規定する信号を受信し、次いで、その領域によって表されるオブジェクトの画像の画像アレイ602内の、算出された軌道に基づいて、その領域の動的場所を規定する、制御信号を生成するように構成されてもよい。いくつかの実施形態では、パッチ追跡エンジン604は、領域または複数の領域に関する軌道情報を含み得る、画像アレイ602の少なくとも1つの選択された領域を規定する、信号を受信してもよい。パッチ追跡エンジン604は、軌道情報に基づいて、少なくとも1つの選択された領域内のピクセルセルを動的に識別する、算出を実施するように構成されてもよい。パッチ追跡エンジン604の実装における変形例も、可能性として考えられる。例えば、パッチ追跡エンジンは、画像アレイ602の運動および/またはパッチと関連付けられるオブジェクトの投影された運動を示す、センサに基づいて、パッチの場所を更新してもよい。
【0127】
図6に図示される実施形態では、画像センサ600は、識別されたパッチ内のピクセルに関する差分情報を出力するように構成される。比較器606は、パッチ内のピクセルを識別する、制御信号を、パッチ追跡エンジン604から受信するように構成されてもよい。比較器606は、パッチ追跡エンジン604によって示されるようなパッチ内のアドレスを有する、画像アレイ602から出力されているピクセルに選択的に作用してもよい。比較器606は、画像アレイ602の少なくとも1つの領域によって検出される、感知される光の変化を示す、信号を生成するように、ピクセルセルに作用してもよい。実装の一実施例として、比較器606は、アレイ内のピクセルセルのリセット値を記憶する、メモリ要素を含有してもよい。それらのピクセルの現在の値が、画像アレイ602から走査出力されるにつれて、比較器606内の回路網は、記憶された値と現在の値を比較し、差異が閾値を超えると、インジケーションを出力してもよい。デジタル回路網が、例えば、値を記憶し、そのような比較を行うために使用されてもよい。本実施例では、画像センサ600の出力は、画像センサ400の出力のように処理されてもよい。
【0128】
いくつかの実施形態では、画像アレイ602、パッチ追跡エンジン604、および比較器606は、CMOS集積回路等の単一集積回路内に実装されてもよい。いくつかの実施形態では、画像アレイ602は、単一集積回路内に実装されてもよい。パッチ追跡エンジン604および比較器606は、例えば、画像アレイ602のためのドライバとして構成される、第2の単一集積回路内に実装されてもよい。代替として、または加えて、パッチ追跡エンジンおよび/または比較器606の機能のいくつかまたは全ては、ARシステム内の他のデジタルプロセッサに分散されてもよい。
【0129】
他の構成または処理回路網もまた、可能性として考えられる。
図7は、いくつかの実施形態による、画像センサ700を描写する。画像センサ700は、画像アレイ702を含んでもよい。本実施形態では、画像アレイ702は、
図5Aにおけるピクセル500に関して示されるような差分構成を伴う、ピクセルセルを有してもよい。しかしながら、本明細書の実施形態は、差分ピクセルセルに限定されず、パッチ追跡は、強度情報を出力する、画像センサを用いて実装されてもよい。
【0130】
図7の図示される実施形態では、パッチ追跡エンジン704は、追跡されている1つ以上のパッチ内のピクセルセルのアドレスを示す、制御信号を生産する。パッチ追跡エンジン704は、パッチ追跡エンジン604のように構築され、動作してもよい。ここでは、パッチ追跡エンジン704は、制御信号をピクセルフィルタ706に提供し、これは、出力710に、パッチ内のそれらのピクセルのみからの画像情報を通過させる。示されるように、出力710は、画像プロセッサ708に結合され、これはさらに、本明細書に説明されるような技法を使用して、または他の好適な方法において、パッチ内のピクセルに関する画像情報を処理してもよい。
【0131】
さらなる変形例が、
図8に図示され、これは、いくつかの実施形態による、画像センサ800を描写する。画像センサ800は、画像アレイ802を含んでもよく、これは、ピクセルに関する強度値を走査出力する、従来の画像アレイであってもよい。その画像アレイは、比較器806の使用を通して、本明細書に説明されるような差分画像情報を提供するように適合されてもよい。比較器806は、比較器606と同様に、ピクセルに関する記憶された値に基づいて、差異情報を算出してもよい。それらの差異値の選択されたものは、ピクセルフィルタ808によって、出力812に通過されてもよい。ピクセルフィルタ706と同様に、ピクセルフィルタ808は、パッチ追跡エンジン804からの制御入力を受信してもよい。パッチ追跡エンジン804は、パッチ追跡エンジン704に類似してもよい。出力812は、画像プロセッサ810に結合されてもよい。画像センサ800の上記に述べられたコンポーネントのいくつかまたは全ては、単一集積回路内に実装されてもよい。代替として、コンポーネントは、1つ以上の集積回路または他のコンポーネントを横断して分散されてもよい。
【0132】
本明細書に説明されるような画像センサは、拡張現実システムの一部として動作され、移動可能なオブジェクトについての情報または物理的環境についての情報と組み合わせて仮想オブジェクトの画像を現実的にレンダリングする際に有用な物理的世界についての他の情報を維持してもよい。
図9は、いくつかの実施形態による、画像感知のための方法900を描写する。
【0133】
方法900の少なくとも一部は、例えば、画像センサ400、600、700、または800を含む、画像センサを動作させるために実施されてもよい。方法900は、例えば、画像センサ412、慣性センサ414、および記憶された情報416を含む、1つ以上の入力からの画像情報を受信するステップ(行為902)から開始してもよい。方法900は、少なくとも部分的に、受信された情報に基づいて、画像感知システムの画像出力上の1つ以上のパッチを識別するステップ(行為904)を含んでもよい。行為904の実施例は、
図10に図示される。いくつかの実施形態では、方法900は、1つ以上のパッチに関する移動する軌道を算出するステップ(行為906)を含んでもよい。行為906の実施例は、
図11に図示される。
【0134】
方法900はまた、少なくとも部分的に、識別された1つ以上のパッチおよび/またはその推定される移動する軌道に基づいて、画像感知システムを設定するステップ(行為908)を含んでもよい。設定は、例えば、比較器606、ピクセルフィルタ706等を通して、少なくとも部分的に、識別された1つ以上のパッチおよび/またはその推定される移動する軌道に基づいて、画像感知システムのピクセルセルの一部を有効にすることによって達成されてもよい。いくつかの実施形態では、比較器606は、画像上の選択されたパッチに対応するピクセルセルに関する、第1の基準電圧値と、画像上の任意の選択されたパッチに対応しないピクセルセルに関する、第2の基準電圧値とを受信してもよい。比較器606は、第2の基準電圧を伴う比較器セルを有する、ピクセルセルによって感知される合理的光強度変化が、ピクセルセルによる出力をもたらし得ないように、第2の基準電圧を第1の基準電圧よりはるかに高くなるように設定してもよい。いくつかの実施形態では、ピクセルフィルタ706は、画像上の任意の選択されたパッチに対応しないアドレス(例えば、行および列)を伴う、ピクセルセルからの出力を無効にしてもよい。
【0135】
図10は、いくつかの実施形態による、パッチ識別904を描写する。パッチ識別904は、少なくとも部分的に、色、光強度、到着角、深度、および意味論に基づいて、1つ以上の入力からの1つ以上の画像をセグメント化するステップ(行為1002)を含んでもよい。
【0136】
パッチ識別904はまた、1つ以上の画像内の1つ以上のオブジェクトを認識するステップ(行為1004)を含んでもよい。いくつかの実施形態では、オブジェクト認識1004は、少なくとも部分的に、例えば、手、眼、顔特徴を含む、オブジェクトの所定の特徴に基づいてもよい。いくつかの実施形態では、オブジェクト認識1004は、1つ以上の仮想オブジェクトに基づいてもよい。例えば、仮想動物キャラクタが、物理的鉛筆上を歩行している。オブジェクト認識1004は、仮想動物キャラクタをオブジェクトとして標的化してもよい。いくつかの実施形態では、オブジェクト認識1004は、少なくとも部分的に、画像感知システムによって受信された人工知能(AI)訓練に基づいてもよい。例えば、画像感知システムは、異なるタイプおよび色におけるネコの画像、したがって、ネコの学習された特性を読み取ることによって訓練され、物理的世界内でネコを識別することが可能となり得る。
【0137】
パッチ識別904は、1つ以上のオブジェクトに基づいて、パッチを生成するステップ(行為1006)を含んでもよい。いくつかの実施形態では、オブジェクトパッチ化1006は、1つ以上のオブジェクトに関する凸包または境界ボックスを算出することによって、パッチを生成してもよい。
【0138】
図11は、いくつかの実施形態による、パッチ軌道推定906を描写する。パッチ軌道推定906は、1つ以上のパッチに関する経時的移動を予測するステップ(行為1102)を含んでもよい。1つ以上のパッチに関する移動は、例えば、移動するオブジェクトおよび/または移動するユーザを含む、複数の理由によって生じ得る。運動予測1102は、受信された画像および/または受信されたAI訓練に基づいて、移動するオブジェクトおよび/または移動するユーザに関する移動速度を導出するステップを含んでもよい。
【0139】
パッチ軌道推定906は、少なくとも部分的に、予測される移動に基づいて、1つ以上のパッチに関する経時的軌道を算出するステップ(行為1104)を含んでもよい。いくつかの実施形態では、軌道は、運動下のオブジェクトが同一速度で同一方向に移動し続けるであろうと仮定して、一次線形方程式をモデル化することによって算出されてもよい。いくつかの実施形態では、軌道は、曲線適合によって、または、パターン検出を含む、ヒューリスティックを使用して、算出されてもよい。
【0140】
図12および13は、パッチ軌道の計算において適用され得る、係数を図示する。
図12は、移動可能なオブジェクトの実施例を描写し、これは、本実施例では、ARシステムのユーザに対して移動する、移動するオブジェクト1202(例えば、手)である。本実施例では、ユーザは、頭部搭載型ディスプレイ62の一部として、画像センサを装着している。本実施例では、ユーザの眼49は、画像アレイ1200が1つの視点1204に対する眼49に関する視野(FOV)を捕捉するように、真っ直ぐ見ている。オブジェクト1202は、FOV内にあって、したがって、アレイ1200内の対応するピクセルに強度変動を作成することによって現れる。
【0141】
アレイ1200は、アレイ内に配列される、複数のピクセル1208を有する。手1202を追跡するシステムに関して、時間t0においてオブジェクト1202を包含するそのアレイ内のパッチ1206は、複数のピクセルの一部を含み得る。オブジェクト1202が、移動している場合、そのオブジェクトを捕捉するパッチの場所は、経時的に変化するであろう。その変化は、パッチ1206から後の時間において使用されるパッチXおよびYへのパッチ軌道内に捕捉され得る。
【0142】
パッチ軌道は、行為906等において、パッチ内のオブジェクト、例えば、図示される実施例では、指先に関する特徴1210を識別することによって、推定されてもよい。運動ベクトル1212が、特徴に関して算出されてもよい。本実施例では、軌道は、一次線形方程式としてモデル化され、予測は、オブジェクト1202が、その同一パッチ軌道1214上で経時的に継続し、2つの連続時間のそれぞれにおける、パッチ場所XおよびYにつながるという仮定に基づく。
【0143】
パッチ場所が変化するにつれて、移動するオブジェクト1202の画像は、パッチ内に留まる。画像情報は、パッチ内のピクセルを用いて集められた情報に限定されるが、その画像情報は、移動するオブジェクト1202の運動を表すために十分である。これは、画像情報が強度情報または差分回路によって生産されるような差分情報であるかどうかにかかわらず、該当するであろう。差分回路の場合、例えば、強度の増加を示すイベントが、移動するオブジェクト1202の画像がピクセルにわたって移動するにつれて生じ得る。逆に言えば、移動するオブジェクト1202の画像が、あるピクセルから通り過ぎると、強度の減少を示すイベントが、生じ得る。増加および減少イベントを伴う、ピクセルのパターンは、イベントを示す、比較的に少量のデータに起因して、短待ち時間を伴って、迅速に更新され得る、移動するオブジェクト1202の運動の信頼性があるインジケーションとして使用されてもよい。具体的実施例として、そのようなシステムは、ユーザの手を追跡し、仮想オブジェクトのレンダリングを改変し、ユーザが仮想オブジェクトと相互作用していることのユーザのための感覚を作成する、現実的XRシステムにつながり得る。
【0144】
パッチの位置は、他の理由からも変化し得、その任意のものまたは全てが、軌道算出に反映され得る。1つのそのような他の変化は、ユーザが画像センサを装着しているときのユーザの移動である。
図13は、ユーザおよび画像センサに関する変化する視点を作成する、移動するユーザの実施例を描写する。
図13では、ユーザは、最初に、視点1302を伴って、オブジェクトを真っ直ぐ見ているとし得る。本構成では、画像アレイのピクセルアレイ1300は、ユーザの正面のオブジェクトを捕捉するであろう。ユーザの正面のオブジェクトは、パッチ1312内にあり得る。
【0145】
ユーザは、次いで、その頭部を方向転換させること等によって、視点を変化させ得る。視点は、視点1304に変化し得る。以前にユーザの真正面にあった、オブジェクトが、移動しない場合でも、視点1304におけるユーザの視野内の異なる位置を有するであろう。また、ユーザによって装着される画像センサの視野内の異なる点、したがって、画像アレイ1300内の異なる位置にあるであろう。そのオブジェクトは、例えば、場所1314における、パッチ内に含有され得る。
【0146】
ユーザが、その視点を視点1306にさらに変化させ、画像センサが、ユーザに伴って移動する場合、以前にユーザの真正面にあった、オブジェクトの場所は、ユーザによって装着される画像センサの視野内の異なる点、したがって、画像アレイ1300内の異なる位置で結像されるであろう。そのオブジェクトは、例えば、場所1316におけるパッチ内に含有され得る。
【0147】
見られ得るように、ユーザが、その視点をさらに変化させるにつれて、オブジェクトを捕捉するために必要とされる、画像アレイ内のパッチの位置は、さらに移動する。場所1312から、場所1314、場所1316への本運動の軌道は、推定され、パッチの将来的位置を追跡するために使用されてもよい。
【0148】
軌道は、他の方法で推定されてもよい。例えば、ユーザが、視点1302を有するとき、慣性センサを用いた測定は、ユーザの頭部の加速および速度を示し得る。本情報は、ユーザの頭部の運動に基づいて、画像アレイ内のパッチの軌道を予測するために使用されてもよい。
【0149】
パッチ軌道推定906は、少なくとも部分的に、これらの慣性測定に基づいて、ユーザが、時間t1では、視点1304を、時間t2では、視点1306を有するであろうことを予測し得る。故に、パッチ軌道推定906は、パッチ1308が、時間t1では、パッチ1310に、時間t2では、パッチ1312に移動し得ることを予測し得る。
【0150】
そのようなアプローチの実施例として、ARシステム内で頭部姿勢の正確かつ短待ち時間推定を提供するために使用されてもよい。パッチは、ユーザの環境内の定常オブジェクトの画像を包含するように位置付けられてもよい。具体的実施例として、画像情報の処理は、追跡するために、認識可能かつ定常のオブジェクトとして、壁上に吊架されている写真フレームの角を識別してもよい。その処理は、パッチをそのオブジェクト上に中心合わせさせてもよい。
図12に関連して上記に説明される、移動するオブジェクト1202の場合と同様に、オブジェクトとユーザの頭部との間の相対的移動は、ユーザと追跡されるオブジェクトとの間の相対的運動を算出するために使用され得る、イベントを生産するであろう。本実施例では、追跡されるオブジェクトが、定常であるため、相対的運動は、ユーザによって装着されている、結像アレイの運動を示す。その運動は、したがって、物理的世界に対するユーザの頭部姿勢の変化を示し、ユーザの頭部姿勢の正確な算出を維持するために使用されることができ、これは、仮想オブジェクトを現実的にレンダリングする際に使用され得る。本明細書に説明されるような結像アレイが、更新あたり比較的に少量のデータを用いて、高速更新を提供することができるため、仮想オブジェクトをレンダリングするための算出は、正確なままである(それらは、迅速に実施され、頻繁に更新されることができる)。
【0151】
図11に戻って参照すると、パッチ軌道推定906は、少なくとも部分的に、算出されたパッチ軌道に基づいて、パッチのうちの少なくとも1つのサイズを調節するステップ(行為1106)を含んでもよい。例えば、パッチのサイズは、移動可能なオブジェクトの画像またはそれに関して画像情報が生成されるべきオブジェクトの少なくとも一部が投影されるであろう、ピクセルを含むように、十分な大きさに設定されてもよい。パッチは、パッチの軌道を推定する際、任意の誤差が存在する場合、パッチが、それでもなお、画像の関連部分を含み得るように、着目オブジェクトの部分の画像の投影されたサイズより若干大きく設定されてもよい。オブジェクトが、画像センサに対して移動するにつれて、ピクセル単位のそのオブジェクトの画像のサイズは、距離、入射角、オブジェクトの配向、または他の要因に基づいて変化し得る。オブジェクトと関連付けられるパッチを定義するプロセッサが、オブジェクトに関連するパッチのサイズを、他のセンサデータに基づいて、測定すること、または世界モデルに基づいて、算出すること等によって、パッチのサイズを設定してもよい。その形状等のパッチの他のパラメータも同様に、設定または更新されてもよい。
【0152】
図14は、いくつかの実施形態による、XRシステムにおいて使用するために構成される、画像感知システム1400を描写する。画像感知システム400(
図4)のように、画像感知システム1400は、パッチ内の値を選択的に出力するための回路網を含み、同様に上記に説明されるように、パッチ内のピクセルに関するイベントを出力するように構成されてもよい。加えて、画像感知システム1400は、測定された強度値を選択的に出力するように構成され、これは、完全画像フレームに関して出力されてもよい。
【0153】
図示される実施形態では、上記に説明されるDVS技法を用いて生成される、イベントと、強度値とに関して、別個の出力が、示される。DVS技法を用いて生成される出力は、AER418に関連して上記に説明されるような表現を使用して、AER1418として出力されてもよい。強度値を表す、出力は、ここでは、APS1420として指定される、出力を通して出力されてもよい。それらの強度出力は、パッチに関するものであってもよい、または画像フレーム全体に関するものであってもよい。AERおよびAPS出力は、同時にアクティブであってもよい。しかしながら、図示される実施形態では、画像センサ1400は、任意の所与の時間において、イベントを出力するためのモードまたは強度情報が出力されるモードで動作する。そのような画像センサが使用される、本システムは、イベント出力および/または強度情報を選択的に使用してもよい。
【0154】
画像感知システム1400は、画像センサ1402を含んでもよく、これは、画像アレイ1404を含んでもよく、これは、複数のピクセル1500を含有してもよく、それぞれ、光に応答する。センサ1402はさらに、ピクセルセルにアクセスするための回路網を含んでもよい。センサ1402はさらに、情報が画像アレイ1404内のピクセルセルから読み取られる、モードを制御するために、アクセス回路網への入力を生成する、回路網を含んでもよい。
【0155】
図示される実施形態では、画像アレイ1404は、両方とも読取モードにおいてアクセス可能である、ピクセルセルの複数の行および列を伴う、アレイとして構成される。そのような実施形態では、アクセス回路網は、行アドレスエンコーダ/デコーダ1406、列選択スイッチ1422を制御する、列アドレスエンコーダ/デコーダ1408、および/または1つ以上の対応するピクセルセルによって感知される入射光についての情報を一時的に保持し得る、レジスタ1424を含んでもよい。パッチ追跡エンジン1410は、随時、画像情報を提供しているピクセルセルを制御するために、アクセス回路網への入力を生成してもよい。
【0156】
いくつかの実施形態では、画像センサ1402は、ロールシャッタモード、グローバルシャッタモード、または両方で動作するように構成されてもよい。例えば、パッチ追跡エンジン1410は、アクセス回路網への入力を生成し、画像アレイ1402の読取モードを制御してもよい。
【0157】
センサ1402が、ロールシャッタ読取モードで動作するとき、ピクセルセルの単一列が、例えば、複数の列スイッチの単一列スイッチ1422を閉鎖することによって、各システムクロックの間に選択される。そのシステムクロックの間、ピクセルセルの選択された列は、暴露され、APS1420に読み取られる。ロールシャッタモードによって画像フレームを生成するために、センサ1402内のピクセルセルの列は、1列ずつ読み取られ、次いで、画像プロセッサによって処理され、画像フレームを生成する。
【0158】
センサ1402が、グローバルシャッタモードで動作するとき、ピクセルセルの列は、複数の列内のピクセルセルによって捕捉された情報が、APS1420bに同時に読み取られ得るように、例えば、単一システムクロック内において、同時に暴露され、情報をレジスタ1424内に保存する。そのような読取モードは、さらなるデータ処理を必要とせずに、画像フレームの直接出力を可能にする。図示される実施例では、ピクセルセルによって感知される入射光についての情報は、個別のレジスタ1424内に保存される。複数のピクセルセルは、1つのレジスタ1424を共有してもよいことを理解されたい。
【0159】
いくつかの実施形態では、センサ1402は、CMOS集積回路等の単一集積回路内に実装されてもよい。いくつかの実施形態では、画像アレイ1404は、単一集積回路内に実装されてもよい。パッチ追跡エンジン1410、行アドレスエンコーダ/デコーダ1406、列アドレスエンコーダ/デコーダ1408、列選択スイッチ1422、および/またはレジスタ1424は、例えば、画像アレイ1404のためのドライバとして構成される、第2の単一集積回路内に実装されてもよい。代替として、または加えて、パッチ追跡エンジン1410、行アドレスエンコーダ/デコーダ1406、列アドレスエンコーダ/デコーダ1408、列選択スイッチ1422、および/またはレジスタ1424の機能のいくつかまたは全ては、ARシステム内の他のデジタルプロセッサに分散されてもよい。
【0160】
図15は、例示的ピクセルセル1500を図示する。図示される実施形態では、各ピクセルセルは、イベントまたは強度情報のいずれかを出力するように設定されてもよい。しかしながら、いくつかの実施形態では、画像センサは、両方のタイプの情報を並行して出力するように構成されてもよいことを理解されたい。
【0161】
イベント情報および強度情報は両方とも、
図5Aに関連して上記に説明されるように、光検出器504の出力に基づく。ピクセルセル1500は、イベント情報を生成するための回路網を含む。その回路網は、同様に上記に説明されるように、感光回路502と、差分回路506と、比較器508とを含む。スイッチ1520は、第1の状態にあるとき、光検出器504をイベント生成回路網に接続する。スイッチ1520または他の制御回路網は、ARシステムが動作時の実質的時間周期の間、比較的に少量の画像情報が提供されるように、ARシステムを制御する、プロセッサによって制御されてもよい。
【0162】
スイッチ1520または他の制御回路網はまた、強度情報を出力するようにピクセルセル1500を構成するように制御されてもよい。図示される情報では、強度情報が、画像アレイ内のピクセル毎のピクセル強度値のストリームとして連続的に表される、完全画像フレームとして提供される。本モードで動作するために、各ピクセルセル内のスイッチ1520は、増幅器510を通して通過後、出力ラインに接続され得るように、光検出器504の出力を暴露する、第2の位置に設定されてもよい。
【0163】
図示される実施形態では、出力ラインは、列ライン1510として図示される。画像アレイ内の列毎に、1つのそのような列ラインが存在してもよい。列内の各ピクセルセルは、列ライン1510に結合されてもよいが、ピクセルアレイは、一度に1つのピクセルセルが、列ライン1510に結合されるように制御されてもよい。各ピクセルセル内に1つのそのようなスイッチが存在する、スイッチ1530は、ピクセルセル1500がその個別の列ライン1510に接続されるときを制御する。行アドレスデコーダ410等のアクセス回路網は、スイッチ1530を閉鎖し、一度に1つのみのピクセルセルが各列ラインに接続されることを確実にしてもよい。スイッチ1520および1530は、画像アレイの一部である1つ以上のトランジスタまたは類似コンポーネントを使用して実装されてもよい。
【0164】
図15は、いくつかの実施形態による、各ピクセルセル内に含まれ得る、さらなるコンポーネントを示す。サンプルホールド回路(S/H)1532は、光検出器504と列ライン1510との間に接続されてもよい。存在するとき、S/H1532は、画像センサ1402が、グローバルシャッタモードで動作することを可能にし得る。グローバルシャッタモードでは、トリガ信号は、並行して、アレイ内の各ピクセルセルに送信される。各ピクセルセル内では、S/H1532は、トリガ信号の時点における強度を示す、値を捕捉する。S/H1532は、その値を記憶し、次の値が捕捉されるまで、その値に基づいて、出力を生成する。
【0165】
図15に示されるように、S/H1532によって記憶される値を表す信号は、スイッチ1530が閉鎖されると、列ライン1510に結合されてもよい。列ラインに結合される信号は、処理され、画像アレイの出力を生産してもよい。その信号は、例えば、列ライン1510の終了時、バッファされ、および/または増幅器1512内で増幅され、次いで、アナログ/デジタルコンバータ(A/D)1514に適用されてもよい。A/D1514の出力は、他の読取回路1516を通して、出力1420に通過されてもよい。読取回路1516は、例えば、列スイッチ1422を含んでもよい。読取回路1516内の他のコンポーネントは、A/D1514のマルチビット出力をシリアライズする等の他の機能を実施してもよい。
【0166】
当業者は、本明細書に説明される機能を実施するための回路を実装する方法を理解するであろう。S/H1532は、例えば、1つ以上のコンデンサおよび1つ以上のスイッチとして実装されてもよい。しかしながら、S/H1532は、他のコンポーネントを使用して、または
図15Aに図示されるもの以外の回路構成において、実装されてもよいことを理解されたい。図示されるようなもの以外の他のコンポーネントもまた、実装されてもよいことを理解されたい。例えば、
図15は、列あたり1つの増幅器および1つのA/Dコンバータを示す。他の実施形態では、複数の列を横断して共有される、1つのA/Dコンバータが存在してもよい。
【0167】
グローバルシャッタのために構成される、ピクセルアレイでは、各S/H1532は、同一瞬間における画像情報を反映させる強度値を記憶してもよい。これらの値は、読取相の間、各ピクセル内に記憶される値が連続的に読み取られるにつれて、記憶されてもよい。連続読取は、例えば、行内の各ピクセルセルのS/H1532をその個別の列ラインに接続することによって達成されてもよい。列ライン上の値は、次いで、一度に1つずつ、APS出力1420に通過されてもよい。そのような情報のフローは、列スイッチ1422の開閉をシーケンス化することによって制御されてもよい。その動作は、例えば、列アドレスデコーダ1408によって制御されてもよい。いったん1つの行のピクセル毎の値が、読み取られると、次の行内のピクセルセルが、その場所内の列ラインに接続されてもよい。それらの値は、一度に1つの列ずつ、読み取られてもよい。一度に1つの行に関する値を読み出すプロセスは、画像アレイ内の全てのピクセルに関する強度値が読み取られるまで、繰り返されてもよい。強度値が1つ以上のパッチに関して読み取られる、実施形態では、プロセスは、パッチ内のピクセルセルに関する値が読み取られると、完了するであろう。
【0168】
ピクセルセルは、任意の好適な順序で読み取られてもよい。行は、例えば、2つおきの行がシーケンスで読み取られるように、インターリーブされてもよい。ARシステムは、それでもなお、データをデインターリービングすることによって、画像データのフレームとして、画像データを処理し得る。
【0169】
S/H1532が存在しない、実施形態では、値は、依然として、値の行および列が走査出力されるにつれて、順次、各ピクセルセルから読み取られてもよい。しかしながら、各ピクセルセルから読み取られた値は、その値が、例えば、A/D1514に適用されるとき等、そのセル内の値が読取プロセスの一部として捕捉された時点における、セルの光検出器において検出された光の強度を表し得る。結果として、ロールシャッタでは、画像フレームのピクセルは、若干異なる時間における、画像アレイ上に入射する画像を表し得る。完全フレームを30Hzのレートで出力する、画像センサに関して、フレームに関する最初のピクセル値が捕捉されるときとフレームに関する最後のピクセル値が捕捉されるときとの間の時間における差異は、1/30秒と異なり得、これは、多くの用途にとって、知覚不能である。
【0170】
オブジェクトを追跡する等のいくつかのXR機能に関して、XRシステムは、ロールシャッタを使用して、画像センサを用いて収集された画像情報上で算出を実施してもよい。そのような算出は、連続画像フレーム間を補間し、ピクセル毎に、連続フレーム間の時間内のある点におけるピクセルの推定される値を表す、補間される値を算出し得る。同一時間が、算出を介して、補間される画像フレームが、グローバルシャッタを有する画像センサを用いて生産され得るような同一時点を表すピクセルを含有するように、全てのピクセルのために使用されてもよい。代替として、グローバルシャッタ画像アレイが、XRシステムの一部を形成する、ウェアラブルデバイス内の1つ以上の画像センサのために使用されてもよい。完全または部分的画像フレームのためのグローバルシャッタは、ロールシャッタを用いて捕捉された画像情報内の捕捉時間における変動を補償するように実施され得る、他の処理の補間を回避し得る。補間算出は、したがって、画像情報が、手または他の移動可能なオブジェクトを追跡する、またはARシステム内のウェアラブルデバイスのユーザの頭部姿勢を決定する、またはさらに、画像情報が収集される際に移動している場合がある、ウェアラブルデバイス上のカメラを使用して、物理的環境の正確な表現を構築するために処理するために生じ得るようなオブジェクトの運動を追跡するために使用される場合でも、回避され得る。
【0171】
区別されたピクセルセル
【0172】
いくつかの実施形態では、センサアレイ内のピクセルセルはそれぞれ、同一であり得る。各ピクセルセルは、例えば、可視光の広スペクトルに応答してもよい。各光検出器は、したがって、可視光の強度を示す、画像情報を提供し得る。本シナリオでは、画像アレイの出力は、画像アレイ上に入射する可視光の量を示す、「グレースケール」出力であってもよい。
【0173】
他の実施形態では、ピクセルセルは、区別されてもよい。例えば、センサアレイ内の異なるピクセルセルは、スペクトルの特定の部分内の光の強度を示す、画像情報を出力してもよい。ピクセルセルを区別するための好適な技法は、フィルタ要素を、ピクセルセル内の光検出器につながる、光経路内に位置付けることである。フィルタ要素は、例えば、特定の色の可視光が通過することを可能にする、帯域通過であってもよい。そのようなカラーフィルタをピクセルセルにわたって適用することは、フィルタに対応する色の光の強度を示す、画像情報を提供するように、そのピクセルセルを構成する。
【0174】
フィルタは、ピクセルセルの構造にかかわらず、ピクセルセルにわたって適用されてもよい。それらは、例えば、グローバルシャッタまたはロールシャッタを伴う、センサアレイ内のピクセルセルにわたって適用されてもよい。同様に、フィルタは、DVS技法を使用して強度または強度の変化を出力するように構成される、ピクセルセルに適用されてもよい。
【0175】
いくつかの実施形態では、原色の光を選択的に通過させる、フィルタ要素が、センサアレイ内の各ピクセルセル内の光検出器にわたって搭載されてもよい。例えば、赤色、緑色、または青色光を選択的に通過させる、フィルタが、使用されてもよい。センサアレイは、複数のサブアレイを有してもよく、各サブアレイは、原色のそれぞれの光を感知するように構成される、1つ以上のピクセルを有する。このように、各サブアレイ内のピクセルセルは、画像センサによって結像されているオブジェクトについての強度および色情報の両方を提供する。
【0176】
本発明者らは、XRシステムでは、いくつかの機能が、色情報を要求する一方、いくつかの機能が、グレースケール情報で実施され得ることを認識し、その真価を認めた。画像センサを装備し、XRシステムの動作に関する画像情報を提供する、ウェアラブルデバイスは、複数のカメラを有してもよく、そのうちのいくつかは、色情報を提供し得る、画像センサとともに形成されてもよい。カメラのその他は、グレースケールカメラであってもよい。本発明者らは、グレースケールカメラが、色を感知するように構成される匹敵する画像センサとともに形成されるカメラと同一分解能を伴って、物理的世界の同一範囲を表すために、より少ない電力を消費し、低光量条件下でより敏感であって、データをより高速で出力し、および/またはより少ないデータを出力し得ることを認識し、その真価を認めた。しかし、グレースケールカメラは、XRシステム内で実施される、多くの機能のために十分な画像情報を出力し得る。故に、XRシステムは、主に、グレースケールカメラまたは複数のカメラを使用して、カラーカメラを選択的に使用して、グレースケールおよびカラーカメラの両方とともに構成されてもよい。
【0177】
例えば、XRシステムは、画像情報を収集および処理し、パス可能世界モデルを作成してもよい。その処理は、色情報を使用し得、これは、オブジェクトを区別する、同一オブジェクトと関連付けられる表面を識別する、および/またはオブジェクトを認識する等、いくつかの機能の有効性を向上させ得る。そのような処理は、例えば、ユーザが、最初に、システムをオンにする、別の部屋の中に歩いて行くこと等によって、新しい環境に移動する、またはユーザの環境の変化が、別様に検出されるとき、随時、実施または更新されてもよい。
【0178】
他の機能は、色情報の使用を通して有意に改良されない。例えば、いったんパス可能世界モデルが、作成されると、XRシステムは、1つ以上のカメラからの画像を使用して、パス可能世界モデル内の特徴に対するウェアラブルデバイスの配向を決定してもよい。そのような機能は、例えば、頭部姿勢追跡の一部として行われてもよい。そのような機能のために使用されるカメラのいくつかまたは全ては、グレースケールであってもよい。頭部姿勢追跡が、XRシステムが動作するにつれて、頻繁に実施されるため、いくつかの実施形態では、本機能のために、1つ以上のグレースケールカメラを持続的に使用することは、相当な電力節約、低減された算出、または他の利点を提供し得る。
【0179】
同様に、複数回、XRシステムの動作の間、本システムは、2つ以上のカメラからの立体視情報を使用して、移動可能なオブジェクトまでの距離を決定してもよい。そのような機能は、ユーザの手または他の移動可能なオブジェクトを追跡することの一部として、画像情報を高レートで処理することを要求し得る。本機能のために1つ以上のグレースケールカメラを使用することは、高分解能画像情報の処理と関連付けられるより短い待ち時間または他の利点を提供し得る。
【0180】
XRシステムのいくつかの実施形態では、XRシステムは、カラーおよび少なくとも1つのグレースケールカメラの両方を有してもよく、それらのカメラからの画像情報が使用されるべき機能に基づいて、グレースケールおよび/またはカラーカメラを選択的に有効にしてもよい。
【0181】
画像センサ内のピクセルセルは、ピクセルセルが敏感である光のスペクトルに基づく以外の方法で区別されてもよい。いくつかの実施形態では、ピクセルセルのいくつかまたは全ては、ピクセルセル上に入射する光の到着角を示す、強度を有する、出力を生産してもよい。到着角情報は、結像されているオブジェクトまでの距離を算出するために処理されてもよい。
【0182】
そのような実施形態では、画像センサは、深度情報を受動的に入手してもよい。受動深度情報は、ピクセルセルが、そのピクセルセルに衝打する光の到着角を示す、情報を出力するように、コンポーネントをアレイ内のピクセルセルへの光経路内に設置することによって取得されてもよい。そのようなコンポーネントの実施例は、透過性回折マスク(TDM)フィルタである。
【0183】
到着角情報は、計算を通して、そこから光が反射されている、オブジェクトまでの距離を示す、距離情報に変換されてもよい。いくつかの実施形態では、到着角情報を提供するように構成される、ピクセルセルは、1つ以上の色の光強度を捕捉するピクセルセルとともに散在されてもよい。結果として、到着角情報、したがって、距離情報は、オブジェクトについての他の画像情報と組み合わせられてもよい。
【0184】
いくつかの実施形態では、センサのうちの1つ以上のものは、コンパクトかつ低電力のコンポーネントを使用して、短待ち時間を伴って、高周波数で、場面内の物理的オブジェクトについての情報を入手するように構成されてもよい。画像センサは、例えば、50mW未満を引き出し、デバイスが、ウェアラブルシステムの一部として使用されるために十分に小さい、バッテリで給電されることを可能にし得る。そのセンサは、1つ以上の色の情報の強度および/または強度情報の変化を示す、画像情報の代わりに、またはそれに加え、深度情報を受動的に入手するように構成される、画像センサであってもよい。そのようなセンサはまた、差分出力を提供するために、パッチ追跡を使用することによって、またはDVS技法を使用することによって、少量のデータを提供するように構成されてもよい。
【0185】
受動深度情報は、アレイ内のピクセルセルのうちの1つ以上のものを、結像されているオブジェクトから発出するライトフィールドを示す、情報を出力するように適合させる、コンポーネントとともに、本明細書に説明される技法のうちの任意の1つ以上のものを組み込む、画像アレイ等の画像アレイを構成することによって取得されてもよい。その情報は、そのピクセルに衝打する光の到着角に基づいてもよい。いくつかの実施形態では、上記に説明されるもの等のピクセルセルは、プレノプティックコンポーネントをピクセルセルへの光経路内に設置することによって、到着角のインジケーションを出力するように構成されてもよい。プレノプティックコンポーネントの実施例は、透過性回折マスク(TDM)である。到着角情報は、計算を通して、そこから光が反射されているオブジェクトまでの距離を示す、距離情報に変換され、捕捉されている画像を形成してもよい。いくつかの実施形態では、到着角情報を提供するように構成される、ピクセルセルは、グレースケールで、または1つ以上の色の光強度を捕捉する、ピクセルセルとともに散在されてもよい。結果として、到着角情報はまた、オブジェクトについての他の画像情報と組み合わせられてもよい。
【0186】
図16は、いくつかの実施形態による、ピクセルサブアレイ100を図示する。図示される実施形態では、サブアレイは、2つのピクセルセルを有するが、サブアレイ内のピクセルセルの数は、本発明に関する限定ではない。ここでは、第1のピクセルセル121および第2のピクセルセル122が、示され、そのうちの一方は、到着角情報を捕捉するように構成される(第1のピクセルセル121)が、到着角情報を測定するように構成される、ピクセルセルのアレイ内の数および場所は、変動され得ることを理解されたい。本実施例では、他のピクセルセル(第2のピクセルセル122)は、光の1つの色の強度を測定するように構成されるが、他の構成も、可能性として考えられ、光の異なる色に敏感であるピクセルセル、またはグレースケールカメラにおけるような光の広スペクトルに敏感である1つ以上のピクセルセルを含む。
【0187】
図16のピクセルサブアレイ100の第1のピクセルセル121は、到着角/強度コンバータ101と、光検出器105と、差分読取回路網107とを含む。ピクセルサブアレイ100の第2のピクセルセル122は、カラーフィルタ102と、光検出器106と、差分読取回路網108とを含む。
図16に図示されるコンポーネントが全て、全ての実施形態内に含まれる必要はないことを理解されたい。例えば、いくつかの実施形態は、差分読取回路網107および/または108を含まなくてもよく、いくつかの実施形態は、カラーフィルタ102を含まなくてもよい。さらに、
図16に示されない、付加的コンポーネントが、含まれてもよい。例えば、いくつかの実施形態は、特定の偏光の光が光検出器に到達することを可能にするように配列される、偏光器を含んでもよい。別の実施例として、いくつかの実施形態は、差分読取回路網107の代わりに、または加えて、走査出力回路網を含んでもよい。別の実施例として、第1のピクセルセル121はまた、第1のピクセル121が、第1のピクセル121上に入射する光の特定の色の到着角および強度の両方を測定するように、カラーフィルタを含んでもよい。
【0188】
第1のピクセル121の到着角/強度コンバータ101は、光検出器によって測定され得る、入射光111の角度θを強度に変換する、光学コンポーネントである。いくつかの実施形態では、到着角/強度コンバータ101は、屈折光学系を含んでもよい。例えば、1つ以上のレンズが、光の入射角を像面上の位置に変換するために使用されてもよく、その入射光の量は、1つ以上のピクセルセルによって検出される。いくつかの実施形態では、到着角/位置強度コンバータ101は、回折光学系を含んでもよい。例えば、1つ以上の回折格子(例えば、TDM)が、光の入射角を、TDMの下方の光検出器によって測定され得る、強度に変換してもよい。
【0189】
第1のピクセルセル121の光検出器105は、到着角/強度コンバータ101を通して通過する、入射光110を受け取り、光検出器105上に入射する光の強度に基づいて、電気信号を生成する。光検出器105は、到着角/強度コンバータ101と関連付けられる、像面に位置する。いくつかの実施形態では、光検出器105は、CMOS画像センサ等の画像センサの単一ピクセルであってもよい。
【0190】
第1のピクセル121の差分読取回路網107は、信号を光検出器105から受信し、光検出器からの電気信号の振幅が、上記に説明されるようなDVS技法を実装する、光検出器105からの前の信号の振幅と異なるときのみ、イベントを出力する。
【0191】
第2のピクセルセル122は、特定の波長の範囲内の光のみが、カラーフィルタ102を通して通過し、光検出器106上に入射するように、入射光112をフィルタリングするためのカラーフィルタ102を含む。カラーフィルタ102は、例えば、赤色、緑色、または青色光のうちの1つが、それを通過することを可能にし、他の波長の光を拒絶する、帯域通過フィルタであってもよく、および/または光検出器106に到達するIR光をスペクトルの特定の部分のみに限定してもよい。
【0192】
本実施例では、第2のピクセルセル122はまた、光検出器106と、差分読取回路網108とを含み、これは、第1のピクセルセル121の光検出器105および差分読取回路網107と同様に作用してもよい。
【0193】
上記に述べられたように、いくつかの実施形態では、画像センサは、ピクセルのアレイを含んでもよく、各ピクセルは、光検出器および読取回路と関連付けられる。ピクセルのあるサブセットは、ピクセル上に入射する検出された光の角度を決定するために使用される、到着角/強度コンバータと関連付けられてもよい。ピクセルの他のサブセットは、観察されている場面についての色情報を決定するために使用される、カラーフィルタと関連付けられてもよい、または他の特性に基づいて、光を選択的に通過または遮断してもよい。
【0194】
いくつかの実施形態では、光の到着角は、単一光検出器と、2つの異なる深度における回折格子とを使用して決定されてもよい。例えば、光が、到着角を位置に変換する、第1のTDM上に入射し得、第2のTDMが、特定の角度で入射する光を選択的に通過させるために使用されてもよい。そのような配列は、平面波が回折格子上に入射すると、回折格子の画像が回折格子からある距離に作成される、近距離回折効果である、Talbot効果を利用してもよい。第2の回折格子が、第1の回折格子の画像が形成される、像面に設置される場合、到着角は、第2の格子後に位置付けられる単一光検出器によって測定される、光の強度から決定されてもよい。
【0195】
図17Aは、2つの格子に関する増加された屈折率の隆起および/または領域が水平方向に整合される(Δs=0)(Δsは、第1のTDM141と第2のTDM143との間の水平オフセットである)ように相互に整合される、第1のTDM141と、第2のTDM143とを含む、ピクセルセル140の第1の配列を図示する。第1のTDM141および第2のTDM143は両方とも、同一格子周期dを有してもよく、2つの格子は、距離/深度zによって分離されてもよい。第2のTDM143が第1のTDM141に対して位置する、Talbot長として知られる、深度zは、分析されている光の格子周期dおよび波長λによって決定され得、以下の式によって与えられる。
【化1】
【0196】
図17Aに図示されるように、ゼロ度の到着角を伴う入射光142は、第1のTDM141によって回折される。第2のTDM143は、第1のTDM141の画像が、作成され、入射光142の大部分が第2のTDM143を通して通過する結果をもたらすように、Talbot長に等しい深度に位置する。随意の誘電層145は、第2のTDM143を光検出器147から分離させてもよい。光が誘電層145を通して通過するにつれて、光検出器147は、光を検出し、光検出器上に入射する光の強度に比例する性質(例えば、電圧または電流)を伴う、電気信号を生成する。他方では、非ゼロ到着角θを伴う入射光144もまた、第1のTDM141によって回折されるが、第2のTDM143は、入射光144の少なくとも一部が光検出器147に到達しないように防止する。光検出器147に到達する入射光の量は、到着角θに依存し、より大きい角度では、より少ない光が、光検出器に到達する。光144から生じる破線は、光検出器147に到達する光の量が減衰されることを図示する。ある場合には、光144は、回折格子143によって完全に遮断されてもよい。したがって、入射光の到着角についての情報は、2つのTDMを使用した単一光検出器147を使用して、取得されてもよい。
【0197】
いくつかの実施形態では、到着角/強度コンバータを伴わない、隣接するピクセルセルによって取得される情報は、入射光の強度のインジケーションを提供し得、到着角/強度コンバータを通して通過する、入射光の部分を決定するために使用されてもよい。本画像情報から、光検出器147によって検出される光の到着角は、下記にさらに詳細に説明されるように、算出されてもよい。
【0198】
図17Bは、2つの格子に関する増加された屈折率の隆起および/または領域が、水平方向に整合されない(Δs≠0)(Δsは、第1のTDM151と第2のTDM153との間の水平オフセットである)ように相互に不整合される、第1のTDM151および第2のTDM153を含む、ピクセルセル150の第2の配列を図示する。第1のTDM151および第2のTDM153は両方とも、同一格子周期dを有してもよく、2つの格子は、距離/深度zによって分離されてもよい。2つのTDMが整合される、
図17Aに関連して議論される状況と異なり、不整合は、第2のTDM153を通して通過する、ゼロと異なる角度の入射光をもたらす。
【0199】
図17Bに図示されるように、ゼロ度の到着角を伴う入射光152は、第1のTDM151によって回折される。第2のTDM153は、Talbot長に等しい深度に位置するが、2つの格子の水平オフセットに起因して、光152の少なくとも一部は、第2のTDM153によって遮断される。光152から生じる破線は、光検出器157に到達する光の量が減衰されることを図示する。ある場合には、光152は、回折格子153によって完全に遮断されてもよい。他方では、非ゼロ到着角θを伴う入射光154は、第1のTDM151によって回折されるが、第2のTDM153を通して通過する。随意の誘電層155を横断後、光検出器157は、光検出器157上に入射する光を検出し、光検出器上に入射する光の強度に比例する性質(例えば、電圧または電流)を伴う、電気信号を生成する。
【0200】
ピクセルセル140および150は、異なる入射角に関して検出された光の異なる強度を伴う、異なる出力関数を有する。しかしながら、いずれの場合も、関係は、固定され、ピクセルセルの設計に基づいて、または較正プロセスの一部としての測定によって決定されてもよい。精密な伝達関数にかかわらず、測定された強度は、到着角に変換されてもよく、これは、ひいては、結像されているオブジェクトまでの距離を決定するために使用されてもよい。
【0201】
いくつかの実施形態では、画像センサの異なるピクセルセルは、TDMの異なる配列を有してもよい。例えば、ピクセルセルの第1のサブセットは、各ピクセルと関連付けられる2つのTDMの格子間の第1の水平オフセットを含んでもよい一方、ピクセルセルの第2のサブセットは、各ピクセルセルと関連付けられる2つのTDMの格子間の第2の水平オフセットを含んでもよく、第1のオフセットは、第2のオフセットと異なる。異なるオフセットを伴う、ピクセルセルの各サブセットは、異なる到着角または異なる到着角の範囲を測定するために使用されてもよい。例えば、ピクセルの第1のサブセットは、
図17Aのピクセルセル140に類似するTDMの配列を含んでもよく、ピクセルの第2のサブセットは、
図17Bのピクセルセル150に類似するTDMの配列を含んでもよい。
【0202】
いくつかの実施形態では、画像センサの全てのピクセルセルが、TDMを含むわけではない。例えば、ピクセルセルのサブセットは、カラーフィルタを含んでもよい一方、ピクセルセルの異なるサブセットは、到着角情報を決定するためのTDMを含んでもよい。他の実施形態では、カラーフィルタは、ピクセルセルの第1のサブセットが、単に、入射光の全体的強度を測定し、ピクセルセルの第2のサブセットが、到着角情報を測定するように、使用されない。いくつかの実施形態では、TDMを伴わない、近隣のピクセルセルからの光の強度に関する情報が、1つ以上のTDMを伴う、ピクセルセル上に入射する光に関する到着角を決定するために使用されてもよい。例えば、Talbot効果を利用するように配列される、2つのTDMを使用すると、第2のTDM後の光検出器上に入射する光の強度は、第1のTDM上に入射する光の到着角のシヌソイド関数である。故に、第1のTDM上に入射する光の総強度が、既知である場合、光の到着角が、光検出器によって検出された光の強度から決定されてもよい。
【0203】
いくつかの実施形態では、サブアレイ内のピクセルセルの構成は、適切な分解能を伴う、種々のタイプの画像情報を提供するように選択されてもよい。
図18A-Cは、画像センサのピクセルサブアレイ内のピクセルセルの例示的配列を図示する。図示される実施例は、非限定的であって、代替ピクセル配列も本発明者らによって検討されることを理解されたい。本配列は、画像アレイを横断して繰り返されてもよく、これは、数百万のピクセルを含有してもよい。サブアレイは、入射光についての到着角情報を提供する、1つ以上のピクセルセルと、入射光についての強度情報を提供する、1つ以上の他のピクセルセル(カラーフィルタの有無にかかわらず)とを含んでもよい。
【0204】
図18Aは、相互に異なり、正方形ではなく、矩形である、第1のピクセルセルのセット161と、第2のピクセルセルのセット163とを含む、ピクセルサブアレイ160の実施例である。「R」と標識されたピクセルセルは、赤色入射光が、フィルタを通して、関連付けられた光検出器に通過するように、赤色フィルタを伴う、ピクセルセルであって、「B」と標識されたピクセルセルは、青色入射光が、フィルタを通して、関連付けられた光検出器に通過するように、青色フィルタを伴う、ピクセルセルであって、「G」と標識されたピクセルセルは、緑色入射光が、フィルタを通して、関連付けられた光検出器に通過するように、緑色フィルタを伴う、ピクセルである。例示的サブアレイ160では、赤色または青色ピクセルセルより多くの緑色ピクセルセルが存在し、種々のタイプのピクセルセルが同一割合で存在する必要はないことを図示する。
【0205】
A1およびA2と標識されたピクセルセルは、到着角情報を提供する、ピクセルである。例えば、ピクセルセルA1およびA2は、到着角情報を決定するための1つ以上の格子を含んでもよい。到着角情報を提供する、ピクセルセルは、同様に構成されてもよい、または異なる範囲の到着角または異なる軸に対する到着角に敏感であるように等、異なるように構成されてもよい。いくつかの実施形態では、A1およびA2と標識されたピクセルは、2つのTDMを含み、ピクセルセルA1およびA2のTDMは、異なる方向に、例えば、相互に垂直に配向されてもよい。他の実施形態では、ピクセルセルA1およびA2のTDMは、相互に平行に配向されてもよい。
【0206】
ピクセルサブアレイ160を使用する、実施形態では、カラー画像データおよび到着角情報の両方が、取得されてもよい。ピクセルセルのセット161上に入射する光の到着角を決定するために、セット161上に入射する総光強度が、RGBピクセルセルからの電気信号を使用して推定される。A1/A2ピクセルによって検出される光の強度が、到着角の関数として、予測可能方法において変動するという事実を使用して、到着角は、総強度(ピクセルのグループ内のRGBピクセルセルから推定される)とA1および/またはA2ピクセルセルによって測定された強度を比較することによって決定されてもよい。例えば、A1および/またはA2ピクセル上に入射する光の強度は、入射光の到着角に対して正弦曲線状に変動し得る。ピクセルセルのセット163上に入射する光の到着角は、セット163のピクセルによって生成された電気信号を使用して、類似方法によって決定される。
【0207】
図18Aは、サブアレイの具体的実施形態を示し、他の構成も、可能性として考えられることを理解されたい。いくつかの実施形態では、例えば、サブアレイは、ピクセルセルのセット161または163のみであってもよい。
【0208】
図18Bは、第1のピクセルセルのセット171と、第2のピクセルセルのセット172と、第3のピクセルセルのセット173と、第4のピクセルセルのセット174とを含む、代替ピクセルサブアレイ170である。ピクセルセルの各セット171-174は、正方形であって、その中に同一配列のピクセルセルを有するが、異なる角度の範囲にわたる、または異なる平面に対する、到着角情報を決定するためのピクセルセルを有する可能性がある(例えば、ピクセルA1およびA2のTDMは、相互に垂直に配向されてもよい)。ピクセルの各セット171-174は、1つの赤色ピクセルセル(R)と、1つの青色ピクセルセル(B)と、1つの緑色ピクセルセル(G)と、1つの到着角ピクセルセル(A1またはA2)とを含む。例示的ピクセルサブアレイ170では、等数の赤色/緑色/青色ピクセルセルが各セット内に存在することに留意されたい。さらに、ピクセルサブアレイは、1つ以上の方向に繰り返され、より大きいピクセルのアレイを形成してもよいことを理解されたい。
【0209】
ピクセルサブアレイ170を使用する、実施形態では、カラー画像データおよび到着角情報の両方が、取得されてもよい。ピクセルセルのセット171上に入射する光の到着角を決定するために、セット171上に入射する総光強度が、RGBピクセルセルからの信号を使用して推定されてもよい。到着角ピクセルセルによって検出された光の強度が、到着角に対して正弦波または他の予測可能応答を有するという事実を使用して、到着角は、総強度(RGBピクセルセルから推定される)とA1ピクセルによって測定された強度を比較することによって決定されてもよい。ピクセルセルのセット172-174上に入射する光の到着角は、各個別のピクセルのセットのピクセルセルによって生成された電気信号を使用して、類似方法において決定されてもよい。
【0210】
図18Cは、第1のピクセルセルのセット181と、第2のピクセルセルのセット182と、第3のピクセルセルのセット183と、第4のピクセルセルのセット184とを含む、代替ピクセルサブアレイ180である。ピクセルセルの各セット181-184は、正方形であって、その中に同一配列のピクセルセルを有し、カラーフィルタは、使用されない。ピクセルセルの各セット181-184は、2つの「白色」ピクセル(例えば、赤色、青色、および緑色光が、グレースケール画像を形成するために検出されるように、カラーフィルタがない)と、第1の方向に配向される、TDMを伴う、1つの到着角ピクセルセル(A1)と、第2の間隔を伴って、または第1の方向に対して第2の方向(例えば、垂直)に配向される、TDMを伴う、1つの到着角ピクセルセル(A2)とを含む。例示的ピクセルサブアレイ170では、色情報が存在しないことに留意されたい。結果として生じる画像は、グレースケールであって、受動深度情報が、カラーまたはグレースケール画像アレイ内で本明細書に説明されるような技法を使用して入手され得ることを図示する。本明細書に説明される他のサブアレイ構成と同様に、ピクセルサブアレイ配列は、1つ以上の方向に繰り返され、より大きいピクセルのアレイを形成してもよい。
【0211】
ピクセルサブアレイ180を使用する、実施形態では、グレースケール画像データおよび到着角情報の両方が、取得されてもよい。ピクセルセルのセット181上に入射する光の到着角を決定するために、セット181上に入射する総光強度が、2つの白カラーピクセルからの電気信号を使用して推定される。A1およびA2ピクセルによって検出された光の強度が、到着角に対して正弦波または他の予測可能応答を有するという事実を使用して、到着角は、総強度(白色ピクセルから推定される)とA1および/またはA2ピクセルセルによって測定された強度を比較することによって決定されてもよい。ピクセルセルのセット182-184上に入射する光の到着角は、各個別のピクセルのセットのピクセルによって生成された電気信号を使用して、類似方法において決定されてもよい。
【0212】
上記の実施例では、ピクセルセルは、正方形として図示されており、正方形グリッドにおいて配列される。実施形態は、そのように限定されない。例えば、いくつかの実施形態では、ピクセルセルは、矩形形状であってもよい。さらに、サブアレイは、三角形である、または対角線上に配列される、または他の幾何学形状を有してもよい。
【0213】
いくつかの実施形態では、到着角情報は、画像プロセッサ708またはローカルデータ処理モジュール70と関連付けられるプロセッサを使用して取得され、これはさらに、到着角に基づいて、オブジェクトの距離を決定してもよい。例えば、到着角情報は、1つ以上の他のタイプの情報と組み合わせられ、オブジェクトの距離を取得してもよい。いくつかの実施形態では、メッシュモデル46のオブジェクトは、ピクセルアレイからの到着角情報と関連付けられてもよい。メッシュモデル46は、ユーザからの距離を含む、オブジェクトの場所を含んでもよく、これは、到着角情報に基づいて、新しい距離値に更新されてもよい。
【0214】
到着角情報を使用して、距離値を決定することは、特に、オブジェクトがユーザに近いシナリオにおいて有用であり得る。これは、画像センサからの距離の変化が、ユーザから遠くに位置付けられるオブジェクトに関する類似大きさの距離変化より大きい、近隣のオブジェクトに関する光の到着角の変化をもたらすためである。故に、到着角に基づく受動距離情報を利用する、処理モジュールは、オブジェクトの推定される距離に基づいて、その情報を選択的に使用してもよく、1つ以上の他の技法を利用して、いくつかの実施形態では、最大1メートル、最大3メートル、または最大5メートル等の閾値距離を越える、オブジェクトまでの距離を決定してもよい。具体的実施例として、ARシステムの処理モジュールは、ウェアラブルデバイスのユーザの3メートル以内のオブジェクトに関する到着角情報を使用して、受動距離測定を使用するようにプログラムされてもよいが、その範囲外のオブジェクトに関しては、2つのカメラによって捕捉された画像を使用して、立体視画像処理を使用してもよい。
【0215】
同様に、到着角情報を検出するように構成される、ピクセルは、画像アレイに対する法線からある角度範囲内の距離の変化に最も敏感であり得る。処理モジュールは、同様に、その角度の範囲内の到着角測定から導出される距離情報を使用するが、その範囲外の距離を決定するためには、他のセンサおよび/または他の技法を使用するように構成されてもよい。
【0216】
画像センサからオブジェクトの距離を決定する一例示的用途は、手の追跡である。手の追跡は、ARシステムにおいて、例えば、システム80のためのジェスチャベースのユーザインターフェースを提供するために、および/またはユーザが、システム80によって提供されるAR体験において、環境内の仮想オブジェクトを移動させることを可能にするために、使用されてもよい。正確な深度決定に関する到着角情報を提供する、画像センサと、ユーザの手の運動を決定するためのプロセスへのデータの量を低減させるための差分読取回路網の組み合わせは、効率的インターフェースを提供し、それによってユーザは、仮想オブジェクトと相互作用し、および/またはシステム80への入力を提供することができる。ユーザの手の場所を決定する処理モジュールは、ウェアラブルデバイスの画像センサの視野内のユーザの手の場所に応じて異なる技法を使用して入手された、距離情報を使用してもよい。手の追跡は、いくつかの実施形態によると、画像感知プロセスの間、パッチ追跡の形態として実装されてもよい。
【0217】
深度情報が有用であり得る、別の用途は、オクルージョン処理である。オクルージョン処理は、深度情報を使用して、物理的世界のモデルのある部分が、ユーザの周囲の物理的環境についての画像情報を収集する1つ以上の画像センサによって捕捉されている画像情報に基づいて更新される必要がない、または更新されることができないことを決定する。例えば、第1のオブジェクトが、センサから第1の距離に存在することが決定される場合、システム80は、第1の距離を上回る距離にわたって、物理的世界のモデルを更新しないことを決定してもよい。例えば、モデルが、第2のオブジェクトをセンサから第2の距離に含み、第2の距離が第1の距離を上回る場合でも、そのオブジェクトに関するモデル情報は、第1のオブジェクトの背後にある場合、更新されなくてもよい。いくつかの実施形態では、システム80は、第1のオブジェクトの場所に基づいて、オクルージョンマスクを生成し、オクルージョンマスクによってマスクされないモデルの部分のみを更新してもよい。いくつかの実施形態では、システム80は、1つを上回るオブジェクトのために、1つを上回るオクルージョンマスクを生成してもよい。各オクルージョンマスクは、センサからの個別の距離と関連付けられてもよい。オクルージョンマスク毎に、個別のオクルージョンマスクと関連付けられる距離を上回るセンサからの距離にある、オブジェクトと関連付けられるモデル情報は、更新されないであろう。任意の所与の時間において更新される、モデルの部分を限定することによって、AR環境を生成する速さおよびAR環境を生成するために必要とされる算出リソースの量は、低減される。
【0218】
図18A-Cに示されないが、画像センサのいくつかの実施形態は、カラーフィルタに加え、またはその代わりに、IRフィルタを伴う、ピクセルを含んでもよい。例えば、IRフィルタは、940nmとほぼ等しい等の波長の光が、通過し、関連付けられる光検出器によって検出されることを可能にし得る。ウェアラブルのいくつかの実施形態は、IRフィルタ(例えば、940nm)と関連付けられるものと同一波長の光を放出する、IR光源(例えば、IR LED)を含んでもよい。IR光源およびIRピクセルは、センサからのオブジェクトの距離を決定する代替方法として使用されてもよい。一例として、限定ではなく、IR光源は、パルス状であってもよく、飛行時間測定が、センサからのオブジェクト距離を決定するために使用されてもよい。
【0219】
いくつかの実施形態では、システム80は、1つ以上の動作モードで動作することが可能であり得る。第1のモードは、深度決定が、例えば、到着角/強度コンバータを伴うピクセルを使用して決定された光の到着角に基づいて、受動深度測定を使用して行われる、モードであってもよい。第2のモードは、深度決定が、例えば、画像センサのIRピクセルを使用して測定されたIR光の飛行時間に基づいて、能動深度測定を使用して行われる、モードであってもよい。第3のモードは、2つの別個の画像センサからの立体視測定を使用して、オブジェクトの距離を決定してもよい。そのような立体視測定は、オブジェクトがセンサから非常に遠いとき、到着角/強度コンバータを伴うピクセルを使用して決定された光の到着角を使用するより正確であり得る。深度を決定する他の好適な方法も、深度決定のための1つ以上の付加的動作モードのために使用されてもよい。
【0220】
いくつかの実施形態では、受動深度決定を、そのような技法がより少ない電力を利用するため、使用することが好ましくあり得る。しかしながら、本システムは、ある条件下では、能動モードで動作すべきであることを決定し得る。例えば、センサによって検出されている可視光の強度が、閾値を下回る場合、暗すぎて、受動深度決定を正確に実施することができない場合がある。いくつかの実施形態では、IR照明が、低光量の影響を相殺するために使用されてもよい。IR照明は、頭部追跡または手追跡等のデバイスが実施しているタスクのために十分な画像を入手することを阻む、検出された低光量条件に応答して、選択的に有効にされてもよい。別の実施例として、オブジェクトが、受動深度決定のために遠すぎて、正確ではない場合がある。したがって、本システムは、深度が、2つの空間的に分離される画像センサを使用して、場面の立体視測定に基づいて決定される、第3のモードで動作することを選択するようにプログラムされてもよい。別の実施例として、到着角/強度コンバータを伴うピクセルを使用して決定された光の到着角に基づいて、オブジェクトの深度を決定することは、画像センサの周縁では、不正確な場合がある。故に、オブジェクトが、画像センサの周縁の近くのピクセルによって検出されている場合、本システムは、能動深度決定を使用して、第2のモードで動作することを選択してもよい。
【0221】
上記に説明される画像センサの実施形態は、スタックされたTDMを伴う、個々のピクセルセルを使用して、ピクセルセル上に入射する光の到着角を決定したが、他の実施形態は、グループの全てのピクセルにわたって単一TDMを伴う、複数のピクセルセルのグループを使用して、到着角情報を決定してもよい。TDMは、センサアレイを横断して光のパターンを投影してもよく、そのパターンは、入射光の到着角に依存する。1つのTDMと関連付けられる、複数の光検出器は、複数の光検出器の各光検出器が、像面(光を感知する光検出器を備える、像面)内の異なる位置に位置するため、そのパターンをより正確に検出し得る。各光検出器によって感知される相対的強度は、入射光の到着角を示し得る。
【0222】
図19Aは、いくつかの実施形態による、単一透過性回折マスク(TDM)と関連付けられる、複数の光検出器(画像センサのピクセルセルのサブアレイであり得る、光検出器アレイ120の形態にある)の上部平面図実施例である。
図19Bは、
図19Aの線Aに沿った、
図19Aと同一光検出器アレイの断面図である。光検出器アレイ120は、示される実施例では、16個の別個の光検出器121を含み、これは、画像センサのピクセルセル内にあってもよい。光検出器アレイ120は、光検出器の上方に配置される、TDM123を含む。ピクセルセルの各グループは、明確性および単純性のために、4つのピクセルとともに図示される(例えば、4つのピクセル×4つのピクセルのグリッドを形成する)ことを理解されたい。いくつかの実施形態は、4つを上回るピクセルセルを含んでもよい。例えば、16個のピクセルセル、64個のピクセルセル、または任意の他の数のピクセルが、各グループ内に含まれてもよい。
【0223】
TDM123は、光検出器121から距離xに位置する。いくつかの実施形態では、TDM123は、
図19Bに図示されるように、誘電層125の上部表面上に形成される。例えば、TDM123は、図示されるように、隆起から、または誘電層125の表面の中にエッチングされる、谷によって、形成されてもよい。他の実施形態では、TDM123は、誘電層内に形成されてもよい。例えば、誘電層の部分は、誘電層の他の部分に対してより高いまたはそれより低い屈折率を有するように修正され、ホログラフィック位相格子をもたらしてもよい。上方から光検出器アレイ120上に入射する光は、TDMによって回折され、光検出器121が位置する、TDM123から距離xの像面における位置に変換されるような入射光の到着角をもたらす。光検出器のアレイの各光検出器121において測定された入射光の強度は、入射光の到着角を決定するために使用されてもよい。
【0224】
図20Aは、いくつかの実施形態による、複数のTDMと関連付けられる、複数の光検出器(光検出器アレイ130の形態にある)の実施例を図示する。
図20Bは、
図20Aの線Bを通る、
図20Aと同一光検出器アレイの断面図である。
図20Cは、
図20Aの線Cを通る、
図20Aと同一光検出器アレイの断面図である。光検出器アレイ130は、示される実施例では、16個の別個の光検出器を含み、これは、画像センサのピクセルセル内にあってもよい。図示されるように、4つのピクセルセルの4つのグループ131a、131b、131c、131dが存在する。光検出器アレイ130は、4つの別個のTDM133a、133b、133c、133dを含み、各TDMは、ピクセルセルの関連付けられるグループの上方に提供される。ピクセルセルの各グループは、明確性および単純性のために、4つのピクセルセルとともに図示されることを理解されたい。いくつかの実施形態は、4つを上回るピクセルセルを含んでもよい。例えば、16個のピクセルセル、64個のピクセルセル、または任意の他の数のピクセルセルが、各グループ内に含まれてもよい。
【0225】
各TDM133a-dは、光検出器131a-dから距離xに位置する。いくつかの実施形態では、TDM133a-dは、
図20Bに図示されるように、誘電層135の上部表面上に形成される。例えば、TDM123a-dは、図示されるように、隆起から、または誘電層135の表面の中にエッチングされる、谷によって、形成されてもよい。他の実施形態では、TDM133a-dは、誘電層内に形成されてもよい。例えば、誘電層の部分は、誘電層の他の部分に対してより高いまたはそれより低い屈折率を有するように修正され、ホログラフィック位相格子をもたらしてもよい。上方から光検出器アレイ130上に入射する光は、TDMによって回折され、光検出器131a-dが位置する、TDM133a-dから距離xの像面における位置に変換されるような入射光の到着角をもたらす。光検出器のアレイの各光検出器131a-dにおいて測定された入射光の強度は、入射光の到着角を決定するために使用されてもよい。
【0226】
TDM133a-dは、相互から異なる方向に配向されてもよい。例えば、TDM133aは、TDM133bと垂直である。したがって、光検出器グループ131aを使用して検出された光の強度は、TDM133aと垂直な平面における入射光の到着角を決定するために使用されてもよく、光検出器グループ131bを使用して検出された光の強度は、TDM133bと垂直な平面における入射光の到着角を決定するために使用されてもよい。同様に、光検出器グループ131cを使用して検出された光の強度は、TDM133cと垂直な平面における入射光の到着角を決定するために使用されてもよく、光検出器グループ131dを使用して検出された光の強度は、TDM133dと垂直な平面における入射光の到着角を決定するために使用されてもよい。
【0227】
深度情報を受動的に入手するように構成される、ピクセルセルは、クロスリアリティシステムにおいて有用な動作をサポートするための本明細書に説明されるような特徴とともに、画像アレイ内に統合されてもよい。いくつかの実施形態によると、深度情報を入手するように構成される、ピクセルセルは、グローバルシャッタを伴うカメラを実装するために使用される、画像センサの一部として実装されてもよい。そのような構成は、例えば、完全フレーム出力を提供してもよい。完全フレームは、深度および強度を示す、異なるピクセルに関する画像情報を同時に含み得る。本構成の画像センサを用いることで、プロセッサは、完全場面に関する深度情報を一度に入手し得る。
【0228】
他の実施形態では、深度情報を提供する、画像センサのピクセルセルは、上記に説明されるようなDVS技法に従って動作するように構成されてもよい。そのようなシナリオでは、イベントは、ピクセルセルによって示されるように、オブジェクトの深度の変化を示し得る。画像アレイによって出力されるイベントは、深度の変化が検出された、ピクセルセルを示し得る。代替として、または加えて、イベントは、そのピクセルセルに関する深度情報の値を含んでもよい。本構成の画像センサを用いることで、プロセッサは、高一時的分解能を提供するように、非常に高レートで、深度情報更新を入手し得る。いくつかの実施形態では、高一時的分解能は、1Hzまたは5Hzより頻繁に深度情報を更新するステップを伴ってもよく、代わりに、毎ミリ秒等、数百または数千回/秒、深度情報を更新するステップを伴ってもよい。
【0229】
さらに他の実施形態では、画像センサは、完全フレームまたはDVSモードのいずれかで動作するように構成されてもよい。そのような実施形態では、画像センサからの画像情報を処理する、プロセッサは、プロセッサによって実施されている機能に基づいて、画像センサの動作モードをプログラムで制御してもよい。例えば、オブジェクトを追跡することを伴う機能を実施している間、プロセッサは、画像情報をDVSイベントとして出力するように、画像センサを構成してもよい。他方では、世界再構築を更新するために処理している間、プロセッサは、完全フレーム深度情報を出力するように、画像センサを構成してもよい。いくつかの実施形態では、完全フレームおよび/またはDVSモードでは、能動照明が、結像されている場面を照明するために使用されてもよい。例えば、IR照明は、暗すぎて受動深度決定を正確に実施することができない場合がある、センサによって検出されている光の強度が閾値を下回る、インスタンスにおいて提供されてもよい。
【0230】
ウェアラブル構成
【0231】
複数の画像センサが、XRシステム内で使用されてもよい。画像センサは、レンズ等の光学コンポーネントおよび制御回路網と組み合わせられ、カメラを作成してもよい。それらの画像センサは、グレースケール結像、カラー結像、グローバルシャッタ、DVS技法、プレノプティックピクセルセル、および/または動的パッチ等の上記に説明される技法のうちの1つ以上のものを使用して、結像情報を入手してもよい。使用される結像技法にかかわらず、結果として生じるカメラは、支持部材に搭載され、ヘッドセットを形成してもよく、これは、プロセッサを含む、またはそれに接続されてもよい。
【0232】
図21は、開示される実施形態と一致する、ウェアラブルディスプレイシステムのヘッドセット2100を図示する、概略図である。
図21に示されるように、ヘッドセット2100は、視覚的情報をユーザの眼に伝送および/または表示するように構成される、光学接眼レンズまたはディスプレイであり得る、単眼2110aおよび単眼2110bを備える、ディスプレイデバイスを含んでもよい。ヘッドセット2100はまた、
図3Bに関して上記に説明されるフレーム64に類似し得る、フレーム2101を含んでもよい。ヘッドセット2100はさらに、2つのカメラ(DVSカメラ2120およびカメラ2140)と、エミッタ2130a、エミッタ2130b、慣性測定ユニット2170a(IMU2170a)、および慣性測定ユニット2170b(IMU2170b)等の付加的コンポーネントとを含んでもよい。
【0233】
カメラ2120およびカメラ2140は、世界カメラであって、それらは、ヘッドセット2100を装着しているユーザによって見られるような物理的世界を結像するように配向される。いくつかの実施形態では、それらの2つのカメラは、物理的世界についての画像情報を入手するために十分であり得、それらの2つのカメラは、世界に面したカメラのみであってもよい。ヘッドセット2100はまた、
図3Bに関して上記に議論されるように、眼追跡カメラ等の付加的コンポーネントを含んでもよい。
【0234】
単眼2110aおよび単眼2110bは、接着剤、締結具、圧力嵌合等の技法を使用して、フレーム2101等の支持部材に機械的に結合されてもよい。同様に、2つのカメラおよび付帯コンポーネント(例えば、エミッタ、慣性測定ユニット、眼追跡カメラ等)は、接着剤、締結具、圧力嵌合等の技法を使用して、フレーム2101に機械的に結合されてもよい。これらの機械的結合は、直接または間接であってもよい。例えば、1つ以上のカメラおよび/または付帯コンポーネントのうちの1つ以上のものは、直接、フレーム2101に取り付けられてもよい。付加的実施例として、1つ以上のカメラおよび/または付帯コンポーネントのうちの1つ以上のものは、直接、単眼に取り付けられてもよく、これは、次いで、フレーム2101に取り付けられてもよい。取付の機構は、限定することを意図するものではない。
【0235】
代替として、単眼サブアセンブリが、形成され、次いで、フレーム2101に取り付けられてもよい。各サブアセンブリは、例えば、それに対して単眼2110aまたは2110bが取り付けられる、支持部材を含んでもよい。IMUおよび1つ以上のカメラは、同様に、支持部材に取り付けられてもよい。カメラおよびIMUの両方を同一支持部材に取り付けることは、カメラについての慣性情報が、IMUの出力に基づいて取得されることを可能にし得る。同様に、単眼をカメラと同一支持部材に取り付けることは、世界についての画像情報が、単眼上にレンダリングされた情報と空間的に相関されることを可能にし得る。
【0236】
ヘッドセット2100は、軽量であってもよい。例えば、ヘッドセット2100は、30~300グラムの重量であってもよい。ヘッドセット2100は、プラスチックまたは薄金属等、使用時、撓曲する、材料から作製されてもよい。そのような材料は、長時間にわたってユーザによって装着され得る、軽量かつ快適なヘッドセットを可能にし得る。そのような軽量ヘッドセットを伴うXRシステムは、それでもなお、ヘッドセットが装着されるにつれて繰り返され、使用時、ヘッドセットの撓曲から生じるであろう、任意の不正確度を補償し得る、較正ルーチンを使用して、(カメラ間の分離が把握されることを要求する)高正確度立体視画像分析をサポートし得る。いくつかの実施形態では、軽量ヘッドセットは、バッテリパックを含んでもよい。バッテリパックは、1つ以上のバッテリを含んでもよく、これは、再充電可能または非再充電可能であってもよい。バッテリパックは、軽量フレームの中に構築されてもよい、またはリムーバブルであってもよい。バッテリパックおよび軽量フレームは、単一ユニットとして形成されてもよい、またはバッテリパックは、軽量フレームと別個にユニットとして形成されてもよい。
【0237】
DVSカメラ2120は、画像センサと、レンズとを含んでもよい。画像センサは、グレースケール画像を生産するように構成されてもよい。画像センサは、1メガピクセル~4メガピクセルのサイズの画像を出力するように構成されてもよい。例えば、画像センサは、1,016本の線の水平分解能×1,016本の線の垂直分解能を伴う、画像を出力するように構成されてもよい。いくつかの側面では、画像センサは、CMOS画像センサであることができる。
【0238】
DVSカメラ2120は、
図4、
図5A、および
図5Bに関して上記に開示されるように、動的視覚感知をサポートしてもよい。ある動作モードでは、DVSカメラ2120は、光強度のピクセルレベル変化等の画像性質の検出された変化に応答して、画像情報を出力するように構成されてもよい。いくつかの実施形態では、検出された変化は、強度変化基準を充足させ得る。例えば、画像センサは、光強度のインクリメント増加に関する1つの閾値と、光強度のインクリメント減少に関する別の閾値とを有するように構成されてもよい。画像情報は、そのような変化が検出されるにつれて、非同期して提供されることができる。別の動作モードでは、DVSカメラ120は、繰り返しまたは周期的に、画像性質の検出された変化に応答せず、画像フレームを出力するように構成されてもよい。例えば、DVSカメラ2120は、60Hz等、30Hz~120Hzの周波数において、画像を出力するように構成されてもよい。
【0239】
DVSカメラ2120は、
図6-15に関して上記に開示されるように、パッチ追跡をサポートしてもよい。例えば、DVSカメラ2120は、種々の側面では、画像センサ内のピクセルのサブセット(例えば、画像センサ内のピクセルのパッチ)に関する画像情報を提供するように構成されてもよい。DVSカメラ2120は、動的視覚感知とパッチ追跡を組み合わせ、画像性質の変化を被る、パッチ内のそれらのピクセルに関する画像情報を提供するように構成されてもよい。種々の側面では、画像センサは、グローバルシャッタとともに構成されることができる。
図14および
図15に関して上記に議論されるように、グローバルシャッタは、各ピクセルが、同時に、強度測定を入手することを可能にし得る。
【0240】
DVSカメラ2120は、
図3Bおよび
図15-20Cに関して上記に開示されるように、プレノプティックカメラであってもよい。例えば、あるコンポーネントが、DVSカメラ2120の画像センサの1つ以上のピクセルセルへの光経路内に、これらのピクセルセルが、ピクセルセル上に入射する光の到着角を示す強度を有する、出力を生産するように設置されることができる。そのような実施形態では、画像センサは、深度情報を受動的に入手し得る。光経路内への設置のために好適なコンポーネントの実施例は、TDMフィルタである。プロセッサは、到着角情報を使用して、結像されているオブジェクトまでの距離を算出するように構成されることができる。例えば、到着角情報は、そこから光が反射されている、オブジェクトまでの距離を示す、距離情報に変換されることができる。いくつかの実施形態では、到着角情報を提供するように構成される、ピクセルセルは、1つ以上の色の光強度を捕捉するピクセルセルとともに散在されてもよい。結果として、到着角情報、したがって、距離情報は、オブジェクトについての他の画像情報と組み合わせられてもよい。
【0241】
DVSカメラ2120は、開示される実施形態と一致する、広視野を有するように構成されることができる。例えば、DVSカメラ2120は、等距離レンズ(例えば、魚眼レンズ)を含んでもよい。DVSカメラ2120は、両カメラによって結像される、ヘッドセット2100のユーザの真正面にある面積を作成するように、カメラ2140に向かって角度付けられてもよい。例えば、DVSカメラ2120と関連付けられる視野である、視野2121の中心を通る垂直平面は、ヘッドセット2100の正中線を通る垂直平面と交差し、それとある角度を形成してもよい。いくつかの実施形態では、視野2121は、水平視野と、垂直視野とを有してもよい。水平視野の範囲は、90度~175度であってもよい一方、垂直視野の範囲は、70~125度であってもよい。いくつかの実施形態では、DVSカメラ2120は、ピクセルあたり1~5分の角度ピクセル分解能を保有するように構成されることができる。
【0242】
エミッタ2130aおよびエミッタ2130bは、低光量条件下での結像および/またはヘッドセット2100による能動深度感知を可能にし得る。エミッタ2130aおよびエミッタ2130bは、光を特定の波長で放出するように構成されてもよい。本光は、ユーザの周囲の物理的世界内の物理的オブジェクトによって反射されることができる。ヘッドセット2100は、本明細書に説明されるような画像センサを含む、本反射された光を検出するためのセンサとともに、構成されてもよい。いくつかの実施形態では、これらのセンサは、カメラ2120またはカメラ2140のうちの少なくとも1つの中に組み込まれてもよい。例えば、
図18A-18Cに関して上記に説明されるように、これらのカメラは、エミッタ2130aおよび/またはエミッタ2130bに対応する、検出器とともに構成されてもよい。例えば、これらのカメラは、エミッタ2130aおよび/またはエミッタ2130bによって放出される光を検出するように構成される、ピクセルを含んでもよい。
【0243】
エミッタ2130aおよびエミッタ2130bは、開示される実施形態と一致する、IR光を放出するように構成されてもよい。IR光は、900ナノメートル~1マイクロメートルの波長を有してもよい。IR光は、940nm光源であってもよく、例えば、放出される光エネルギーは、約940nmに集中される。他の波長の光を放出するエミッタも、代替として、または加えて、使用されてもよい。屋内専用使用のために意図されるシステムに関して、例えば、約850nmに集中される光を放出するエミッタが、使用されてもよい。DVSカメラ2120またはカメラ2140のうちの少なくとも1つは、カメラの画像センサ内のピクセルの少なくともサブセットにわたって配置される、1つ以上のIRフィルタを含んでもよい。フィルタは、エミッタ2130aおよび/またはエミッタ2130bによって放出される波長における光を通過させる一方、ある他の波長における光を減衰させ得る。例えば、IRフィルタは、ノッチフィルタであって、エミッタのものに合致する波長を伴うIR光を通過させ得る。ノッチフィルタは、他のIR光を実質的に減衰させ得る。いくつかの実施形態では、ノッチフィルタは、IRノッチフィルタであって、IR光を遮断し、エミッタからの光が通過することを可能にし得る。IRノッチフィルタはまた、IR帯域外の光が通過することを可能にし得る。そのようなノッチフィルタは、画像センサが、可視光と、画像センサの視野内のオブジェクトから反射されたエミッタからの光の両方を受け取ることを可能にし得る。このように、ピクセルのサブセットは、エミッタ2130aおよび/またはエミッタ2130bによって放出されるIR光のための検出器としての役割を果たし得る。
【0244】
いくつかの実施形態では、XRシステムのプロセッサは、低光量条件下での結像を可能にするため等、エミッタを選択的に有効にしてもよい。プロセッサは、1つ以上の画像センサによって生成された画像情報を処理してもよく、エミッタが有効にされずに、それらの画像センサによって出力される画像が物理的世界内のオブジェクトについての適正な情報を提供するかどうかを検出してもよい。プロセッサは、画像が低周囲光条件の結果として適正な画像情報を提供しないことを検出することに応答して、エミッタを有効にしてもよい。例えば、エミッタは、立体視情報が、オブジェクトを追跡するために使用されており、周囲光の欠如が、追跡されているオブジェクトの特徴間に、立体視画像技法を使用して距離を正確に決定するために不十分なコントラストを伴う、画像をもたらすとき、オンにされてもよい。
【0245】
代替として、または加えて、エミッタ2130aおよび/またはエミッタ2130bは、光を短パルスにおいて放出すること等によって、能動深度測定を行う際に使用するために構成されてもよい。ウェアラブルディスプレイシステムは、エミッタ2130aの照明野2131aおよび/またはエミッタ2130bの照明野2131b内のオブジェクトからのそのようなパルスの反射を検出することによって、飛行時間測定を実施するように構成されてもよい。これらの飛行時間測定は、オブジェクトを追跡する、またはパス可能世界モデルを更新するための付加的深度情報を提供し得る。他の実施形態では、1つ以上のエミッタは、パターン化された光を放出するように構成されてもよく、XRシステムは、そのパターン化された光によって照明されたオブジェクトの画像を処理するように構成されてもよい。そのような処理は、パターン内の変動を検出し得、これは、オブジェクトまでの距離を明らかにし得る。
【0246】
いくつかの実施形態では、エミッタと関連付けられる照明野の範囲は、少なくとも、オブジェクトについての画像情報を入手するために使用されるカメラの視野を照明するために十分であり得る。例えば、エミッタは、集合的に、中心視野2150を照明してもよい。図示される実施形態では、エミッタ2130aおよびエミッタ2130bは、集合的に、能動照明が提供され得る、範囲に及ぶ、照明野2131aおよび照明野2131bを照明するように位置付けられてもよい。本例示的実施形態では、2つのエミッタが、示されるが、より多いまたはより少ないエミッタが、所望の範囲に及ぶために使用されてもよいことを理解されたい。
【0247】
いくつかの実施形態では、エミッタ2130aおよび2130b等のエミッタは、デフォルトによって、オフにされ得るが、付加的照明が、受動結像を用いて入手され得るものより多くの情報を入手するために望ましいとき、有効にされてもよい。ウェアラブルディスプレイシステムは、付加的深度情報が要求されるとき、エミッタ2130aおよび/またはエミッタ2130bを有効にするように構成されてもよい。例えば、ウェアラブルディスプレイシステムが、立体視画像情報を使用して、手または頭部姿勢を追跡するための適正な深度情報を入手することができないことを検出すると、ウェアラブルディスプレイシステムは、エミッタ2130aおよび/またはエミッタ2130bを有効にするように構成されてもよい。ウェアラブルディスプレイシステムは、付加的深度情報が要求されないとき、エミッタ2130aおよび/またはエミッタ2130bを無効にし、それによって、電力消費を低減させ、バッテリ寿命を改良するように構成されてもよい。
【0248】
さらに、ヘッドセットが、IR光を検出するように構成される画像センサとともに構成される場合でも、IRエミッタが、ヘッドセット2100上にまたはヘッドセット2100上にのみ搭載されることは、要件ではない。いくつかの実施形態では、IRエミッタは、ヘッドセット2100が使用され得る、室内等の空間内に配設された外部デバイスであってもよい。そのようなエミッタは、ヒトの眼に不可視である、940nmで、ArUcoパターン等において、IR光を投影してもよい。そのようなパターンを伴う光は、ヘッドセット2100が、IRパターンを提供する電力を供給する必要がないが、それでもなお、その画像情報上で実施される処理が空間内のオブジェクトまでの距離またはその場所を決定し得るように、パターンが提示される結果として、IR画像情報を提供し得る、「計装/補助追跡」を促進し得る。外部照明源を伴うシステムはまた、より多くのデバイスが、その空間で動作することを可能にし得る。それぞれ、固定位置関係を伴わずに、空間を動き回る、複数のヘッドセットが、同一空間内で動作している場合、1つのヘッドセットによって放出される光が、別のヘッドセットの画像センサ上に投影され、したがって、その動作を妨害するであろう、リスクが存在する。ヘッドセット間のそのような干渉のリスクは、空間内で動作し得る、ヘッドセットの数を、例えば、3または4つに限定し得る。ヘッドセット上の画像センサによって結像され得るオブジェクトを照明する、1つ以上のIRエミッタを空間内で用いることで、いくつかの実施形態では、10を上回る、より多くのヘッドセットが、干渉なく、同一空間内で動作し得る。
【0249】
図3Bに関して上記に開示されるように、カメラ2140は、視野2141内の物理的世界の画像を捕捉するように構成されてもよい。カメラ2140は、画像センサと、レンズとを含んでもよい。画像センサは、カラー画像を生産するように構成されてもよい。画像センサは、4メガピクセル~16メガピクセルのサイズの画像を出力するように構成されてもよい。例えば、画像センサは、12メガピクセル画像を出力してもよい。画像センサは、繰り返しまたは周期的に、画像を出力するように構成されてもよい。例えば、画像センサは、有効にされると、60Hz等、30Hz~120Hzの周波数において、画像を出力するように構成されてもよい。いくつかの実施形態では、画像センサは、実施されているタスクに基づいて、画像を選択的に出力するように構成されてもよい。画像センサは、ロールシャッタとともに構成されてもよい。
図14および
図15に関して上記に議論されるように、ロールシャッタは、異なるサブセット内のピクセルが異なる時間に集められた光強度データを反映させるように、画像センサ内のピクセルのサブセットを反復的に読み取ってもよい。例えば、画像センサは、画像センサ内のピクセルの第1の行を第1の時間に、画像センサ内のピクセルの第2の行をある後の時間に読み取るように構成されてもよい。
【0250】
いくつかの実施形態では、カメラ2140は、プレノプティックカメラとして構成されることができる。例えば、
図3Bおよび
図15-20Cに関して上記に議論されるように、あるコンポーネントが、画像センサの1つ以上のピクセルセルへの光経路内に、これらのピクセルセルが、ピクセルセル上に入射する光の到着角を示す強度を有する、出力を生産するように設置されることができる。そのような実施形態では、画像センサは、深度情報を受動的に入手し得る。光経路内への設置のために好適なコンポーネントの実施例は、透過性回折マスク(TDM)フィルタである。プロセッサは、本到着角情報を使用して、結像されているオブジェクトまでの距離を算出するように構成されることができる。例えば、到着角情報は、そこから光が反射されている、オブジェクトまでの距離を示す、距離情報に変換されることができる。いくつかの実施形態では、到着角情報を提供するように構成される、ピクセルセルは、1つ以上の色の光強度を捕捉するピクセルセルとともに散在されてもよい。結果として、到着角情報、したがって、距離情報は、オブジェクトについての他の画像情報と組み合わせられてもよい。いくつかの実施形態では、DVSカメラ2120と同様に、カメラ2140は、イベント検出およびパッチ追跡機能性を提供するように構成されてもよい。ヘッドセット2100のプロセッサは、カメラ2140に、画像捕捉をピクセルのサブセットに制限するように命令を提供するように構成されることができる。いくつかの実施形態では、センサは、CMOSセンサであってもよい。
【0251】
カメラ2140は、DVSカメラ2120と反対のヘッドセット2100の側上に位置付けられることができる。例えば、
図21に示されるように、カメラ2140が、単眼2110aと同一のヘッドセット2100の側上にあるとき、DVSカメラ2120は、単眼2110bと同一のヘッドセットの側上にあることができる。カメラ2140は、ヘッドセット2100上に内向きに角度付けられることができる。例えば、カメラ2140と関連付けられる視野である、視野2141の中心を通る垂直平面は、ヘッドセット2100の正中線を通る垂直平面と交差し、それとある角度を形成することができる。カメラ2140の視野2141は、水平視野と、垂直視野とを有してもよい。水平視野の範囲は、75~125度であってもよい一方、垂直視野の範囲は、60~125度であってもよい。
【0252】
カメラ2140およびDVSカメラ2120は、ヘッドセット2100の正中線に向かって内向きに非対称的に角度付けられることができる。カメラ2140の角度は、ヘッドセット2100の正中線に向かって内向きに1~20度であることができる。DVSカメラ2120の角度は、ヘッドセット2100の正中線に向かって内向きに1~40度であることができ、カメラ2140の角度と異なることができる。視野2121の角度範囲は、視野2141の角度範囲を超え得る。
【0253】
DVSカメラ2120およびカメラ2140は、中心視野2150の重複ビューを提供するように構成されてもよい。中心視野2150の角度範囲は、40~120度であってもよい。例えば、中心視野2150の角度範囲は、約70度(例えば、70±7度)であってもよい。中心視野2150は、非対称であってもよい。例えば、中心視野2150は、
図21に示されるように、カメラ2140を含む、ヘッドセット2100の側に向かってさらに延在してもよい。中心視野2150に加え、DVSカメラ2120およびカメラ2140は、少なくとも2つの周辺視野を提供するように位置付けられてもよい。周辺視野2160aは、DVSカメラ2120と関連付けられてもよく、視野2141と重複しない、視野2121のその部分を含んでもよい。いくつかの実施形態では、周辺視野2160aの水平角度範囲は、20~80度の範囲であってもよい。例えば、周辺視野2160aの角度範囲は、約40度(例えば、40±4度)であってもよい。周辺視野2160b(
図21に描写されない)は、カメラ2140と関連付けられてもよく、視野2121と重複しない、視野2141のその部分を含んでもよい。いくつかの実施形態では、周辺視野2160bの水平角度範囲は、10~40度の範囲であってもよい。例えば、周辺視野2160aの角度範囲は、約20度(例えば、20±2度)であってもよい。周辺視野の場所は、異なってもよい。例えば、ヘッドセット2100のある構成に関して、周辺視野2160bは、その距離内において、視野2141が、視野2121内に全体的に該当し得るため、ヘッドセット2100の0.25メートル以内に延在しなくてもよい。対照的に、周辺視野2160aは、ヘッドセット2100の0.25メートル以内に延在してもよい。そのような構成では、DVSカメラ2120のより広い視野およびより大きい内向き角度は、ヘッドセット2100の0.25メートル以内でさえ、視野2121が、
図21に示されるように、少なくとも部分的に、視野2141外に該当することを確実にし得る。
【0254】
IMU2170aおよび/またはIMU2170bは、加速および/または速度および/または傾き情報をウェアラブルディスプレイシステムに提供するように構成されてもよい。例えば、ヘッドセット2100を装着しているユーザが移動するにつれて、IMU2170aおよび/またはIMU2170bは、ユーザの頭部の加速および/または速度を説明する情報を提供してもよい。
【0255】
XRシステムは、プロセッサに結合されてもよく、これは、カメラを用いて出力された画像データを処理し、および/または仮想オブジェクトをディスプレイデバイス上にレンダリングするように構成されてもよい。プロセッサは、フレーム2101に機械的に結合されてもよい。代替として、プロセッサは、単眼2110aまたは単眼2110bを含む、ディスプレイデバイス等のディスプレイデバイスに機械的に結合されてもよい。さらなる代替として、プロセッサは、通信リンクを通して、ヘッドセット2100および/またはディスプレイデバイスに動作可能に結合されてもよい。例えば、XRシステムは、ローカルデータ処理モジュールを含んでもよい。本ローカルデータ処理モジュールは、プロセッサを含んでもよく、物理的接続(例えば、ワイヤまたはケーブル)または無線(例えば、Bluetooth(登録商標)、Wi-Fi、Zigbee(登録商標)、または同等物)接続を通して、ヘッドセット2100またはディスプレイデバイスに接続されてもよい。
【0256】
プロセッサは、世界再構築、頭部姿勢追跡、およびオブジェクト追跡動作を実施するように構成されてもよい。プロセッサは、DVSカメラ2120およびカメラ2140を使用して、パス可能世界モデルを作成するように構成されてもよい。パス可能世界モデルを作成する際、プロセッサは、DVSカメラ2120およびカメラ2140によって入手された同一の物理的オブジェクトの複数の画像を使用して、深度情報を立体視的に決定するように構成されてもよい。プロセッサは、DVSカメラ2120を使用するが、カメラ2140を使用せずに、既存のパス可能世界モデルを更新するように構成されてもよい。上記に述べられたように、DVSカメラ2120は、カラーカメラ2140より比較的に低い分解能を伴う、グレースケールカメラであってもよい。さらに、DVSカメラ2120は、画像情報を非同期して(例えば、検出されたイベントに応答して)出力し、プロセッサが、変化が検出されるときのみ、パス可能世界モデル、頭部姿勢、および/またはオブジェクト場所を非同期して更新することを可能にしてもよい。いくつかの実施形態では、プロセッサは、DVSカメラ2120に、画像データ入手をDVSカメラ2120の画像センサ内のピクセルの1つ以上のパッチに制限するように命令を提供してもよい。DVSカメラ2120は、次いで、画像データ入手をピクセルのこれらのパッチに制限してもよい。その結果、カメラ2140ではなく、DVSカメラ2120によって出力される画像情報を使用して、パス可能世界モデルを更新することは、低減された電力消費および改良されたバッテリ寿命を伴って、迅速に実施され得る。いくつかの実施形態では、プロセッサは、随時または周期的に、DVSカメラ2120によって出力される画像情報を使用して、パス可能世界モデルを更新するように構成されてもよい。
【0257】
プロセッサは、DVSカメラ2120を使用して、パス可能世界モデルを優先的に更新し得るが、プロセッサは、いくつかの実施形態では、随時または周期的に、DVSカメラ2120およびカメラ2140の両方を使用して、パス可能世界モデルを更新してもよい。例えば、プロセッサは、パス可能世界品質基準がもはや充足されていない、カメラ2140によって出力される画像の最後の入手および/または使用以降、所定の時間インターバルが経過している、および/または変化が、現在、DVSカメラ2120およびカメラ2140の視野内の物理的世界の一部内のオブジェクトに生じていることを決定するように構成されてもよい。
【0258】
パス可能世界モデルの作成後、プロセッサは、DVSカメラ2120によって出力される画像情報を使用して、頭部、オブジェクト、および/または手の位置を優先的に追跡してもよい。上記に説明されるように、DVSカメラ2120は、イベントベースの画像入手のために構成可能であってもよい。入手された画像情報は、DVSカメラ2120の画像センサ内の1つ以上のパッチに特有であり得る。代替として、プロセッサは、DVSカメラ2120またはカメラ2140によって出力される単眼画像を使用して、頭部、オブジェクト、および/または手の位置を追跡してもよい。これらの単眼画像は、完全フレーム画像であってもよく、繰り返しまたは周期的に、DVSカメラ2120によって出力されてもよい。例えば、DVSカメラは、60Hz等、30Hz~120Hzの周波数において画像を出力するように構成されてもよい一方、変化は、数百または数千回/秒等、はるかに高い、有効レートにおいて出力されてもよい。いくつかの実施形態では、プロセッサは、DVSカメラ2120およびカメラ2140の両方によって出力される立体投影画像を使用して、頭部、オブジェクト、および/または手の位置を追跡してもよい。これらの立体投影画像は、繰り返しまたは周期的に、出力されてもよい。
【0259】
プロセッサは、プレノプティックカメラを使用して、画像センサ上に入射する光に関する到着角情報等のライトフィールド情報を入手するように構成されてもよい。いくつかの実施形態では、本プレノプティックカメラは、DVSカメラ2120またはカメラ2140のうちの少なくとも1つであることができる。開示される実施形態と一致して、深度情報が、本明細書に説明される、または処理を向上させ得るとき、そのような深度情報は、プレノプティックカメラによって取得されるライトフィールド情報から決定される、またはそれによって補完されてもよい。例えば、カメラ2140が、TDMフィルタを含むとき、プロセッサは、DVSカメラ2120および2140から取得される画像を、カメラ2140から取得されるライトフィールド情報とともに使用して、パス可能世界モデルを作成するように構成されてもよい。代替として、または加えて、DVSカメラ2120が、TDMフィルタを含むとき、プロセッサは、DVSカメラ2120から取得されるライトフィールド情報を使用してもよい。
【0260】
プロセッサは、画像情報のうちの1つ以上のタイプが、世界再構築、オブジェクト追跡、または頭部姿勢決定等の特定の機能のための分解能を提供するために利用不可能または不十分である、条件を検出するように構成されてもよい。プロセッサは、画像情報の付加的または代替ソースを選択し、その機能のための十分な画像情報を提供するように構成されてもよい。これらのソースは、各状況において低処理負担を伴って利用可能な好適な画像情報をもたらす、順序で選択されてもよい。例えば、DVSカメラ2120は、強度変化基準を充足させる、画像データを出力するように構成され得るが、ピクセル強度は、均一な視覚的特性のオブジェクトが視野2121を充填するとき、画像データ入手をトリガするほど十分に変化し得ない。そのような例は、例えば、ユーザの手が移動するときでも、ユーザの手が視野を充填するときに当てはまり得る。いくつかの実施形態では、視野2121の部分的充填さえ、好適な画像データの入手を阻害または妨害し得る。例えば、プロセッサによって追跡されるパッチが、均一な外観のオブジェクトの画像で充填されるとき、それらのパッチに関する画像データは、オブジェクトを追跡するためには不適正であり得る。同様に、近接オブジェクトが、カメラの視野または少なくとも頭部姿勢を追跡するために追跡される着目点等の着目点を追跡するために使用されるパッチを充填する場合、そのカメラからの画像情報は、頭部追跡機能のために不適正であり得る。
【0261】
しかしながら、
図21に示されるヘッドセット2100の幾何学形状を前提として、カメラ2140は、視野の関連部分を充填するオブジェクトの画像を出力するように位置付けられてもよい。これらの画像は、代替として、または加えて、オブジェクトの深度を決定するために使用されてもよい。カメラ2140はまた、頭部姿勢追跡のためにパッチ内で追跡される着目点を結像するように位置付けられてもよい。
【0262】
故に、プロセッサは、オブジェクトが視野2121に関する充填基準を充足させるかどうかを決定するように構成されることができる。本決定に基づいて、プロセッサは、カメラ2140を有効にする、またはカメラ2140のフレームレートを増加させるように構成されることができる。プロセッサは、次いで、少なくとも、カメラ2140からの画像データを受信することができる。いくつかの実施形態では、本画像データは、ライトフィールド情報を含むことができる。オブジェクト追跡のために、プロセッサは、受信された画像データを使用して、深度情報を決定するように構成されてもよい。プロセッサは、決定された深度情報を使用して、オクルードされているオブジェクトを追跡することができる。頭部姿勢追跡のために、プロセッサは、その受信された画像データを使用して、頭部姿勢の変化を決定するように構成されてもよい。DVSカメラ2120が、着目点のパッチ追跡のために構成されるとき、プロセッサは、カメラ2120を使用して、着目点を追跡するように構成されることができる。プロセッサは、充填基準がもはや充足されていないことを決定することに基づいて、カメラ2140を無効にする、またはそのフレームレートを低減させ、より短い待ち時間を伴ってより迅速に入手および/または処理されるが、オブジェクト追跡または頭部姿勢追跡等の実施されている機能のために適正であり得る、データの使用に戻るように構成されてもよい。これは、DVSカメラ2120が、超高一時的分解能において、画像を追跡することを可能にし得る。例えば、DVSカメラ2120は、数百または数千回/秒の周波数等、60Hzより高い周波数において、移動しているオブジェクトの現在の位置を示す、情報を出力してもよい。
【0263】
プロセッサは、任意の1つ以上の方法において検出された動作条件に基づいて、1つ以上の機能のために、異なるソースの画像情報を動的に提供するように、カメラを有効または無効にしてもよいことを理解されたい。プロセッサは、ハードウェアの動作を改変するように、制御信号を下層画像センサハードウェアに送信してもよい。代替として、または加えて、プロセッサは、カメラによって生成された画像情報を読み取ることによって、そのカメラを有効にする、またはそのカメラによって生成された画像情報にアクセスしない、またはそれを使用しないことによって、そのカメラを無効にしてもよい。これらの技法は、全体的または部分的に、画像情報を有効にする、または抑制するために使用されてもよい。例えば、プロセッサは、サイズ低減ルーチンを実施し、カメラ2140を使用した画像出力を調節するように構成されてもよい。カメラ2140は、DVSカメラ2120より大きい画像を生成してもよい。例えば、カメラ2140は、12メガピクセル画像を生成してもよい一方、DVSカメラ2120は、1メガピクセル画像を生成してもよい。カメラ2140によって生成された画像は、パス可能世界作成、頭部追跡、またはオブジェクト追跡動作を実施するために必要なものより多くの情報を含み得る。本付加的情報の処理は、付加的電力を要求する、バッテリ寿命を低減させる、または待ち時間を増加させ得る。したがって、プロセッサは、カメラ2140によって出力される画像内のピクセルを破棄する、または組み合わせるように構成されることができる。例えば、プロセッサは、元々生成された画像の16分の1の数のピクセルを伴う、画像を出力するように構成されることができる。本出力画像内の各ピクセルは、元々生成された画像内の対応する4×4セットのピクセルに基づく値(例えば、これらの16ピクセルの値の平均)を有することができる。
【0264】
XRシステムは、いくつかの実施形態によると、ハードウェアアクセラレータを備えてもよい。ハードウェアアクセラレータは、特定用途向け集積回路(ASIC)または他の半導体デバイスとして実装されてもよく、カメラ2120およびカメラ2140からの画像情報を受信するように、ヘッドセット2100内に統合される、または別様に、それに結合されてもよい。本ハードウェアアクセラレータは、これらの2つの世界カメラによって出力される画像を使用して、深度情報の立体視決定を補助し得る。カメラ2120からの画像は、グレースケール画像であってもよく、カメラ2140からの画像は、カラー画像であってもよい。ハードウェア加速を使用することは、深度情報の決定を加速し、電力消費を低減させ、したがって、バッテリ寿命を増加させ得る。
【0265】
例示的較正プロセス
【0266】
図22は、いくつかの実施形態による、較正ルーチン(方法2200)の簡略化されたフローチャートを描写する。プロセッサは、ウェアラブルディスプレイシステムが装着されている間、較正ルーチンを実施するように構成されてもよい。較正ルーチンは、ヘッドセット2100の軽量構造から生じる歪曲に対処し得る。例えば、プロセッサは、較正ルーチンが、ウェアラブルディスプレイシステムの使用の間、フレーム2101内の歪曲を補償するように、較正ルーチンを繰り返し実施してもよい。補償ルーチンは、自動的に、または手動入力(例えば、較正ルーチンを実施するためのユーザ要求)に応答して、実施されてもよい。較正ルーチンは、カメラ2120およびカメラ2140の相対的位置および配向を決定するステップを含んでもよい。プロセッサは、DVSカメラ2120およびカメラ2140によって出力される画像を使用して、較正ルーチンを実施するように構成されてもよい。いくつかの実施形態では、プロセッサはさらに、IMU2170aおよびIMU2170bの出力を使用するように構成されてもよい。
【0267】
ブロック2201から開始後、方法2200は、ブロック2210に進み得る。ブロック2210では、プロセッサは、DVSカメラ2120およびカメラ2140から出力された画像内の対応する特徴を識別してもよい。対応する特徴は、物理的世界内のオブジェクトの一部であってもよい。いくつかの実施形態では、オブジェクトは、較正目的のために、ユーザによって中心視野2150内に設置されてもよく、所定の相対的位置を有し得る、画像内で容易に識別可能な特徴を有してもよい。しかしながら、本明細書に説明される較正技法は、較正時に中心視野2150内に存在するオブジェクト上の特徴に基づいて、較正が、ヘッドセット2100の使用の間、繰り返されることを可能にするように実施されてもよい。種々の実施形態では、プロセッサは、視野2121および視野2141の両方内で検出された特徴を自動的に選択するように構成されてもよい。いくつかの実施形態では、プロセッサは、視野2121および視野2141内の特徴の推定される場所を使用して、特徴間の対応を決定するように構成されることができる。そのような推定は、これらの特徴を含有するオブジェクトのために構築されたパス可能世界モデルまたは特徴についての他の情報に基づいてもよい。
【0268】
方法2200は、ブロック2230に進み得る。ブロック2230では、プロセッサは、慣性測定データを受信してもよい。慣性測定データは、IMU2170aおよび/またはIMU2170bから受信されてもよい。慣性測定データは、傾きおよび/または加速および/または速度測定を含んでもよい。いくつかの実施形態では、IMU2170aおよび2170bは、直接または間接的に、それぞれ、カメラ2140およびDVSカメラ2120に機械的に結合されてもよい。そのような実施形態では、IMU2170aおよび2170bによって行われる、傾き等の慣性測定における差異は、カメラ2140およびカメラ2120の位置および/または配向における差異を示し得る。故に、IMU2170aおよび2170bの出力は、カメラ2140およびDVSカメラ2120の相対的位置の初期推定を行うための基礎を提供し得る。
【0269】
ブロック2230後、方法2200は、ブロック2250に進み得る。ブロック2250では、プロセッサは、DVSカメラ2120およびカメラ2140の相対的位置および配向の初期推定値を算出してもよい。本初期推定値は、IMU2170bおよび/またはIMU2170aから受信された測定を使用して算出されてもよい。いくつかの実施形態では、例えば、ヘッドセットは、DVSカメラ2120およびカメラ2140の公称相対的位置および配向を用いて設計されてもよい。プロセッサは、IMU2170aとIMU2170bとの間の受信された測定における差異が、DVSカメラ2120およびカメラ2140の位置および/または配向を改変し得る、フレーム2101内の歪曲に起因すると見なすように構成されてもよい。例えば、IMU2170aおよびIMU2170bは、これらのセンサによる傾きおよび/または加速および/または速度測定が、所定の関係を有するように、直接または間接的に、フレーム2101に機械的に結合されてもよい。フレーム2101が歪曲された状態になると、本関係は、影響され得る。非限定的実施例として、IMU2170aおよびIMU2170bは、フレーム2101の歪曲が存在しないとき、これらのセンサが、ヘッドセットの移動の間、類似傾き、加速、または速度ベクトルを測定するように、フレーム2101に機械的に結合されてもよい。本非限定的実施例では、IMU2170aをIMU2170bに対して回転させる、捻転または屈曲は、IMU2170bに関する対応するベクトル測定に対してIMU2170aに関する傾き、加速、または速度ベクトル測定の対応する回転をもたらし得る。プロセッサは、したがって、IMU2170aおよびIMU2170bが、それぞれ、DVSカメラ2140およびカメラ2120に機械的に結合されるため、DVSカメラ2120およびカメラ2140のための公称相対的位置および配向をIMU2170aとIMU2170bとの間の測定された関係と一致するように調節してもよい。
【0270】
他の技法も、代替として、または加えて、初期推定を行うために使用されてもよい。較正方法2200が、XRシステムの動作の間、繰り返し実施される、実施形態では、初期推定値は、例えば、直近の算出された推定値であってもよい。
【0271】
ブロック2250後、サブプロセスが、開始され、カメラ2120およびカメラ2140の相対的位置および配向のさらなる推定値が、行われる。推定値のうちの1つが、カメラ2120およびカメラ2140によって出力される画像から立体視深度情報を算出するために、カメラ2120およびカメラ2140の相対的位置および配向として選択される。そのサブプロセスは、容認可能推定値が識別されるまで、さらなる推定が各反復において行われるように、反復的に実施されてもよい。
図22の実施例では、そのサブプロセスは、ブロック2270、2272、2274、および2290を含む。
【0272】
ブロック2270では、プロセッサは、カメラおよび比較されている特徴の推定される相対的配向に関する誤差を算出してもよい。本誤差を算出する際、プロセッサは、DVSカメラ2120およびカメラ2140および較正のために使用されている推定される場所特徴の推定される相対的配向に基づいて、識別された特徴が現れるべき方法または識別された特徴がカメラカメラ2120およびカメラ2140を用いて出力された対応する画像内に位置すべき場所を推定するように構成されてもよい。いくつかの実施形態では、本推定値は、2つのカメラのそれぞれを用いて出力された画像内の対応する特徴の外観または見掛け場所と比較され、推定される相対的配向毎に、誤差を生成し得る。そのような誤差は、線形代数技法を使用して算出されてもよい。例えば、画像内の複数の特徴のそれぞれの算出場所と実際の場所との間の平均二乗偏差が、誤差のためのメトリックとして使用されてもよい。
【0273】
ブロック2270後、方法2200は、ブロック2272に進み得、そこで、誤差が承認基準を満たすかどうかに関するチェックが、行われてもよい。その基準は、例えば、誤差の全体的大きさであってもよい、または反復間の誤差の変化であってもよい。誤差が承認基準を満たす場合、方法2200は、ブロック2290に進む。
【0274】
ブロック2290では、プロセッサは、ブロック2272において算出された誤差に基づいて、推定される相対的配向のうちの1つを選択してもよい。選択された推定される相対的位置および配向は、最低誤差を有する、推定される相対的位置および配向であってもよい。いくつかの実施形態では、プロセッサは、DVSカメラ2120およびカメラ2140の現在の相対的位置および配向として、本最低誤差と関連付けられる、推定される相対的位置および配向を選択するように構成されてもよい。ブロック2290後、方法2200は、ブロック2299に進み得る。方法2200は、ブロック2299において終了し、DVSカメラ2120およびカメラ2140の選択された位置および配向は、それらのカメラを用いて形成される画像に基づいて、立体視画像情報を算出するために使用されてもよい。
【0275】
誤差が、ブロック2272において、承認基準を満たさない場合、方法2200は、ブロック2274に進み得る。ブロック2274では、ブロック2270において誤差を算出する際に使用される推定値は、更新されてもよい。それらの更新は、カメラ2120およびカメラ2140の推定される相対的位置および/または配向に対するものであってもよい。較正のために使用されている特徴のセットの相対的位置が推定される、実施形態では、ブロック2274において選択された更新された推定値は、代替として、または加えて、セット内の特徴の場所の位置に対する更新を含んでもよい。そのような更新は、複数の変数を伴う方程式のセットを解法するために使用される、線形代数技法に従って行われてもよい。具体的実施例として、推定される位置または配向のうちの1つ以上のものは、増加または減少され得る。その変化が、サブプロセスの1回の反復において、算出された誤差を減少させる場合、後続反復では、同一の推定される位置または配向が、同一方向にさらに変化されてもよい。逆に言えば、変化が、誤差を増加された場合、後続反復では、それらの推定される位置または配向は、対向方向に変化されてもよい。較正プロセスにおいて使用されているカメラおよび特徴の推定される位置および配向は、順次または組み合わせて、このように変動され得る。
【0276】
いったん更新された推定値が、算出されると、サブプロセスは、ブロック2270に戻る。そこで、サブプロセスのさらなる反復が、推定される相対的位置に関する誤差の算出とともに開始される。このように、推定される位置および配向は、容認可能誤差を提供する、更新された相対的位置および配向が、選択されるまで、更新される。しかしながら、ブロック2272における処理は、容認可能誤差を見出さずに、ある数の反復を完了させる等、反復サブプロセスを終了させるために、他の基準を適用してもよいことを理解されたい。
【0277】
方法2200は、DVSカメラ2120およびカメラ2140に関連して説明されるが、類似較正は、立体視結像のために使用される、任意の対のカメラのために、または相対的位置および配向が所望される、複数のカメラの任意のセットのために、実施されてもよい。
【0278】
例示的カメラ構成
【0279】
ヘッドセット2100は、XRシステムの複数の機能をサポートするための視野および照明野を提供する、コンポーネントを組み込む。
図23A-23Cは、いくつかの実施形態による、
図21のヘッドセット2100と関連付けられる、視野または照明の例示的略図である。例示的略図はそれぞれ、異なる配向およびヘッドセットからの距離からの視野または照明を描写する。
図23Aは、上昇された軸外目線からの、ヘッドセットから1メートルの距離における、視野または照明を描写する。
図23Aは、DVSカメラ2120およびカメラ2140のための視野間の重複、特に、視野2121および視野2141がヘッドセット2100の正中線を交差するように、DVSカメラ2120およびカメラ2140が角度付けられる方法を描写する。描写される構成では、視野2141は、視野2121を越えて延在し、周辺視野2160bを形成する。描写されるように、エミッタ2130aおよびエミッタ2130bのための照明野は、主として、重複する。このように、エミッタ2130aおよびエミッタ2130bは、低周囲光の条件下での中心視野2150内のオブジェクトのための結像または深度測定をサポートするように構成されてもよい。
図23Bは、上下目線からの、ヘッドセットから0.3メートルの距離における、視野または照明を描写する。
図23Bは、視野2121および視野2141の重複が、ヘッドセットから0.3メートルに存在することを描写する。しかしながら、描写される構成では、視野2141は、視野2121を越えてそれほど遠くまで延在せず、周辺視野2160bの範囲を限定し、周辺視野2160aと周辺視野2160bとの間の非対称性を実証する。
図23Cは、正面視目線からの、ヘッドセットから0.25メートルの距離における、視野または照明を描写する。
図23Cは、視野2121および視野2141の重複が、ヘッドセットから0.25メートルに存在することを描写する。しかしながら、視野2141は、視野2121内に全体的に含有され、したがって、描写される構成では、周辺視野2160bは、ヘッドセット2100からの本距離には存在しない。
【0280】
図23A-23Cから理解され得るように、視野2121および視野2141の重複は、立体視結像技法が、エミッタ2130aおよびエミッタ2130bからのIR照明の有無にかかわらず、カメラ2120およびカメラ2140を用いて出力されたグレースケール画像を使用して採用され得る、中心視野を作成する。本中心視野では、カメラ2140からの色情報は、カメラ2120からのグレースケール画像情報と組み合わせられてもよい。加えて、重複が存在しないが、単眼グレースケール画像情報またはカラー画像情報が、それぞれ、カメラ2120またはカメラ2140のうちの1つから利用可能である、周辺視野が存在する。異なる演算が、本明細書に説明されるように、中心および周辺視野のために入手された画像情報上で実施されてもよい。
【0281】
世界モデル生成
【0282】
いくつかの実施形態では、DVSカメラ2120および/またはカメラ2140によって出力される画像データは、世界モデルを構築または更新するために使用されてもよい。
図24は、いくつかの実施形態による、パス可能世界モデルを作成または更新するための方法2400の簡略化されたフローチャートである。
図21に関して上記に開示されるように、XRシステムは、プロセッサを使用して、パス可能世界モデルを決定および更新するように構成されてもよい。いくつかの実施形態では、DVSカメラ2120は、複数のピクセルのそれぞれにおいて検出された強度レベルを表す、画像情報を出力する、またはそれに関して閾値を超える強度の変化が検出されたピクセルを示す、画像情報を出力するように動作するように構成されてもよい。いくつかの実施形態では、プロセッサは、パス可能世界内のオブジェクトの位置を立体視的に決定するために、カメラ2140から出力された画像情報と併用され得る、検出された強度を表す、DVSカメラ2120の出力に基づいて、本パス可能世界モデルを決定および更新してもよい。いくつかの実施形態では、強度の検出された変化を表す、DVSカメラ2120の出力は、それらの場所からの画像情報の変化に基づいて、更新するための世界モデルの領域を識別するために使用されてもよい。
【0283】
いくつかの実施形態では、DVSカメラ2120は、グローバルシャッタとともに、強度を反映させる、画像情報を出力するように構成されてもよい一方、カメラ2140は、ロールシャッタとともに構成されてもよい。プロセッサは、したがって、補償ルーチンを実施し、カメラ2140によって出力される画像内のロールシャッタ歪曲を補償してもよい。種々の実施形態では、プロセッサは、エミッタ2130aおよび2130bを使用せずに、本パス可能世界モデルを決定および更新してもよい。しかしながら、いくつかの実施形態では、パス可能世界モデルは、不完全な場合がある。例えば、プロセッサは、壁または他の平坦表面に関する深度を不完全に決定し得る。付加的実施例として、パス可能世界モデルは、窓、ドア、ボール、テーブル、および同等物等の多くの角、湾曲表面、透明表面、または大表面を伴う、オブジェクトを不完全に表し得る。プロセッサは、そのような不完全な情報を識別し、付加的情報を入手し、付加的深度情報を使用して、世界モデルを更新するように構成されてもよい。いくつかの実施形態では、エミッタ2130aおよび2130bは、選択的に有効にされ、そこからパス可能世界モデルを構築または更新するための付加的画像情報を収集してもよい。いくつかのシナリオでは、プロセッサは、入手された画像内のオブジェクト認識を実施し、認識されるオブジェクトのためのテンプレートを選択し、テンプレートに基づいて、情報をパス可能世界モデルに追加するように構成されてもよい。このように、ウェアラブルディスプレイシステムは、エミッタ2130aおよび2130bのような電力集約的コンポーネントを殆どまたは全く利用せずに、パス可能世界モデルを改良し、それによって、バッテリ寿命を延長させ得る。
【0284】
方法2400は、ウェアラブルディスプレイシステムの動作の間、1回またはそれを上回って、開始されてもよい。プロセッサは、ユーザが、最初に、システムをオンにする、別の部屋の中に歩いて行く等によって、新しい環境に移動するとき、または概して、プロセッサが、ユーザの物理的環境の変化を検出するとき、パス可能世界モデルを作成するように構成されてもよい。代替として、または加えて、方法2400は、ウェアラブルディスプレイシステムの動作の間、または物理的世界の有意な変化が、検出されるとき、または世界モデルが物理的世界と同期していないことを示す入力等のユーザ入力に応答して、周期的に、実施されてもよい。
【0285】
いくつかの実施形態では、パス可能世界モデルの全部または一部は、記憶される、XRシステムの他のユーザによって提供される、または別様に、取得されてもよい。したがって、世界モデルの作成が、説明されるが、方法2400は、他のソースから導出される世界モデルの他の部分とともに、世界モデルの一部のために使用されてもよいことを理解されたい。
【0286】
ブロック2405では、プロセッサは、補償ルーチンを実施し、カメラ2140によって出力される画像内のロールシャッタ歪曲を補償することができる。上記に説明されるように、DVSカメラ2120内の画像センサ等のグローバルシャッタを伴う画像センサによって入手された画像は、同時に入手されたピクセル値を含む。対照的に、ロールシャッタを伴う画像センサによって入手された画像は、異なる時間に入手されたピクセル値を含む。ヘッドセットの相対的移動およびカメラ2140による画像の入手の間の環境は、空間歪曲を画像の中に導入し得る。これらの空間歪曲は、カメラ2140によって入手された画像とDVSカメラ2120によって入手された画像の比較に依存する、方法の正確度に影響を及ぼし得る。
【0287】
補償ルーチンを実施するステップは、プロセッサを使用して、DVSカメラ2120によって出力される画像とカメラ2140によって出力される画像を比較するステップを含むことができる。プロセッサは、本比較を実施し、カメラ2140によって出力される画像内の任意の歪曲を識別する。そのような歪曲は、本画像の少なくとも一部内の歪みを含み得る。例えば、ヘッドセット2100が側方平行移動している間、カメラ2140内の画像センサが、画像センサの上部から画像センサの底部へと行毎にピクセル値を入手している場合、オブジェクトまたはオブジェクトの一部の外観は、平行移動の速度および各行の値の入手間の時間差に依存する量だけ、ピクセルの連続行においてオフセットされ得る。類似歪曲は、ヘッドセットが回転されるときにも生じ得る。これらの歪曲は、画像内のオブジェクトまたはオブジェクトの一部の場所および/または配向に全体的歪みをもたらし得る。プロセッサは、カメラ2120によって出力される画像とカメラ2140によって出力される画像との間のライン毎比較を実施し、歪みの量を決定するように構成されることができる。カメラ2140によって出力される画像は、次いで、歪曲を除去するように変換されることができる(例えば、検出された歪みを除去するために)。
【0288】
ブロック2410では、パス可能世界モデルが、作成されてもよい。図示される実施形態では、プロセッサは、DVSカメラ2120およびカメラ2140を使用して、パス可能世界モデルを作成してもよい。上記に説明されるように、パス可能世界モデルを生成する際、プロセッサは、パス可能世界モデルを構築するとき、DVSカメラ2120およびカメラ2140から出力された画像を使用して、物理的世界内のオブジェクトに関する深度情報を立体視的に決定するように構成されてもよい。いくつかの実施形態では、プロセッサは、カメラ2140からの色情報を受信してもよい。本色情報は、オブジェクトを区別するため、または同一オブジェクトと関連付けられる表面を識別するために使用されてもよい。色情報はまた、オブジェクトを認識するために使用されてもよい。
図3Aに関して上記に開示されるように、プロセッサは、物理的世界についての情報とヘッドセット2100の場所および配向についての情報を関連付けることによって、パス可能世界モデルを作成することができる。非限定的実施例として、プロセッサは、ヘッドセット2100からビュー(例えば、視野2121および/または視野2141)内の特徴までの距離を決定するように構成されることができる。プロセッサは、ビューの現在の場所および配向を推定するように構成されることができる。プロセッサは、そのような距離を、場所および配向情報とともに蓄積するように構成されることができる。複数の場所および配向から入手された特徴までの距離を三角測量することによって、環境内の特徴の位置および配向が、決定されることができる。種々の実施形態では、パス可能世界モデルは、環境内のそのような特徴の位置および配向を説明する、ラスタ画像、点および記述子群、および多角形/幾何学的定義の組み合わせであることができる。いくつかの実施形態では、ヘッドセット2100から中心視野2150内の特徴までの距離は、DVSカメラ2120によって出力される画像データおよびカメラ2140によって出力される画像データを使用して生成された補償画像を使用して、立体視的に決定されることができる。種々の実施形態では、ライトフィールド情報が、本決定を補完または精緻化するために使用されることができる。例えば、到着角情報が、計算を通して、そこから光が反射されている、オブジェクトまでの距離を示す、距離情報に変換されてもよい。
【0289】
ブロック2415では、プロセッサは、カメラ2140を無効にする、またはカメラ2140のフレームレートを低減させてもよい。例えば、カメラ2140のフレームレートは、30Hzから1Hzに低減されることができる。上記に開示されるように、カラーカメラ2140は、DVSカメラ2120、グレースケールカメラより多くの電力を消費し得る。カメラ2140を無効にする、またはそれに関するフレームレートを低減させることによって、プロセッサは、電力消費を低減させ、ウェアラブルディスプレイシステムのバッテリ寿命を延長さ得ることができる。故に、プロセッサは、カメラ2140を無効にし、またはカメラ2140のフレームレートを低減させ、電力を節約してもよい。本より低い電力状態は、世界モデル内の更新が要求され得ることを示す、条件が検出されるまで、維持されてもよい。そのような条件は、時間の経過、またはユーザの周囲の環境についての情報を集めるセンサから、またはユーザから等の入力に基づいて、検出されてもよい。
【0290】
代替として、または加えて、いったんパス可能世界モデルが、十分に完成されると、物理的環境内の特徴の位置および配向が、カメラ2120を使用して入手された画像または画像パッチを使用して十分に決定可能になり得る。非限定的実施例として、パス可能世界モデルは、モデル内に表されるユーザの場所の周囲の空間のパーセンテージに基づいて、またはパス可能世界モデルに合致する新しい画像情報の量に基づいて、十分に完成されたと識別されてもよい。本後者のアプローチに関して、新しく入手された画像は、パス可能世界内の場所と関連付けられてもよい。それらの画像内の特徴が、パス可能世界モデル内の目印として識別された特徴に合致する特徴を有する場合、世界モデルは、完成と見なされ得る。網羅または合致率は、100%完成である必要はない。むしろ、基準毎に、以前に識別された目印に合致する特徴の95%を上回るまたは90%を上回る網羅率等、好適な閾値が、適用されてもよい。パス可能世界モデルが完成であると決定される方法にかかわらず、いったん完成されると、プロセッサは、既存のパス可能世界情報を使用して、物理的世界内の特徴の場所および配向の推定値を精緻化することができる。本プロセスは、物理的世界内の特徴が、該当するとしても、プロセッサがDVSカメラ2120によって出力される画像を処理するレートと比較して、位置および/または配向をゆっくりと変化させているという仮定を反映させ得る。
【0291】
ブロック2420では、パス可能世界モデルを作成後、プロセッサは、それを用いてパス可能世界モデルを更新するために、表面および/またはオブジェクトを識別してもよい。いくつかの実施形態では、プロセッサは、DVSカメラ2120によって出力されるグレースケール画像または画像パッチを使用して、そのような表面またはオブジェクトを識別してもよい。例えば、いったんパス可能世界内の特定の場所における表面を示す、世界モデルが、ブロック2410において作成されると、DVSカメラ2120によって出力されるグレースケール画像または画像パッチは、ほぼ同一特性の表面を検出するために使用され、パス可能世界モデルが、パス可能世界モデル内のその表面の位置を更新することによって、更新されるべきであることを決定してもよい。パス可能世界モデル内の表面とほぼ同一形状を伴う、ほぼ同一場所における表面は、例えば、パス可能世界モデル内のその表面に匹敵すると見なされてもよく、パス可能世界モデルは、適宜、更新されてもよい。別の実施例として、パス可能世界モデル内に表されるオブジェクトの位置は、DVSカメラ2120によって出力されるグレースケール画像または画像パッチに基づいて、更新されてもよい。本明細書に説明されるように、DVSカメラ2120は、グレースケール画像またはさらに画像パッチと関連付けられる、イベントを検出することができる。そのようなイベントの検出に応じて、DVSカメラ2120は、グレースケール画像または画像パッチを使用して、パス可能世界モデルを更新するように構成されることができる。
【0292】
いくつかの実施形態では、プロセッサは、カメラ2120から取得されるライトフィールド情報を使用して、物理的世界内のオブジェクトに関する深度情報を決定してもよい。例えば、到着角情報が、深度情報を決定するために使用されてもよい。本決定は、ヘッドセット2100により近い物理的世界内のオブジェクトに関してより正確であり得る。故に、いくつかの実施形態では、プロセッサは、ライトフィールド情報を使用して、深度基準を充足させる、パス可能世界モデルの部分のみを更新するように構成されてもよい。深度基準は、最大区別可能距離に基づいてもよい。例えば、プロセッサは、ヘッドセット2100から異なる距離におけるオブジェクトを、それらの距離が閾値距離を越えるとき、区別することが不可能であり得る。深度基準は、最大誤差閾値に基づいてもよい。例えば、推定される距離における誤差は、最大誤差閾値に対応する特定の距離を伴う、距離の増加に伴って増加し得る。いくつかの実施形態では、深度基準は、最小距離に基づいてもよい。例えば、プロセッサは、15cm等、ヘッドセット2100から最小距離内のオブジェクトに関する距離情報を正確に決定することが不可能であり得る。故に、ヘッドセットから16cmを上回る世界モデルの部分は、深度基準を充足させ得る。いくつかの実施形態では、パス可能世界モデルは、ボクセルの3次元「ブリック」から成ってもよい。そのような実施形態では、パス可能世界モデルを更新するステップは、更新のためのボクセルのブリックを識別するステップを含んでもよい。いくつかの実施形態では、プロセッサは、視認錐台を決定するように構成されることができる。視認錐台は、1.5m等の最大深度を有してもよい。プロセッサは、視認錐台内のブリックを識別するように構成されてもよい。プロセッサは、次いで、識別されたブリック内のボクセルに関するパス可能世界情報を更新してもよい。いくつかの実施形態では、プロセッサは、ステップ2450において入手されたライトフィールド情報を使用して、本明細書に説明されるように、ボクセルに関するパス可能世界情報を更新するように構成されることができる。
【0293】
世界モデルを更新するためのプロセスは、オブジェクトが中心視野または周辺視野内にあるかどうかに基づいて、異なり得る。例えば、更新は、中心視野内の検出された表面に関して実施されてもよい。周辺視野では、更新は、例えば、プロセッサが、プロセッサが、パス可能世界モデルに対する任意の更新がそのオブジェクトと一致することを確認し得るようなモデルを有する、オブジェクトに関してのみ実施され得る。代替として、または加えて、新しいオブジェクトまたは表面が、グレースケール画像の処理に基づいて認識されてもよい。そのような処理が、ブロック2410における処理よりオブジェクトまたは表面のあまり正確ではない表現につながる場合でも、より高速かつより低い電力処理のための正確度のトレードオフは、いくつかのシナリオでは、より良好な全体的システムにつながり得る。さらに、より低い正確度情報は、単眼グレースケール画像のみを用いて生成された世界モデルの部分と、DVSカメラ2120と組み合わせたカラーカメラ2140の使用を通して立体視的に生成された部分とを置換するように、方法2400を周期的に繰り返すことによって、周期的に、より高い正確度情報によって置換されてもよい。
【0294】
いくつかの実施形態では、プロセッサは、更新された世界モデルが品質基準を充足させるかどうかを決定するように構成されてもよい。世界モデルが、品質基準を充足させるとき、プロセッサは、カメラ2140が、無効にされた、または低減されたフレームレートを有する状態で、世界モデルの更新を継続してもよい。更新された世界モデルが、品質基準を充足させないとき、方法2400は、カメラ2140を有効にする、またはカメラ2140のフレームレートを増加させてもよい。方法2400はまた、ステップ2410に戻り、パス可能世界モデルを再作成してもよい。
【0295】
ブロック2425では、パス可能世界モデルを更新後、プロセッサは、パス可能世界モデルが不完全な深度情報を含むかどうかを識別してもよい。不完全な深度情報は、複数の方法のいずれかにおいて生じ得る。例えば、いくつかのオブジェクトは、検出可能構造を画像内にもたらさない。例えば、非常に暗い、物理的世界内の領域は、周囲照明を用いて入手された画像からの深度情報を抽出するために十分な分解能で結像され得ない。別の実施例として、窓またはガラステーブルの表面は、可視画像内のコンピュータ化された処理によって現れない、または認識され得ない。さらに別の実施例として、テーブルの表面または壁等の大均一表面は、立体視画像処理を可能にするために、2つの立体視画像内で相関し得る、十分な特徴を欠いている場合がある。結果として、プロセッサは、立体視処理を使用して、そのようなオブジェクトの場所を決定することが不可能であり得る。これらのシナリオでは、「穴」が世界モデル内に存在し、パス可能世界モデルを使用して、「穴」を通して通過する特定の方向における、表面までの距離を決定しようとするプロセスは、任意の深度情報を入手することが不可能であろう。
【0296】
パス可能世界モデルが、不完全な深度情報を含まないとき、方法2400は、DVSカメラ2120から取得されるグレースケール画像または画像パッチを使用して、パス可能世界モデルを更新するステップに戻り得る。
【0297】
不完全な深度情報の識別に続き、方法2400を制御するプロセッサは、1つ以上のアクションを講じ、付加的深度情報を入手してもよい。方法2400は、ブロック2431、ブロック2433、および/またはブロック2435に進み得る。ブロック2431では、プロセッサは、エミッタ2130aおよび/またはエミッタ2130bを有効にしてもよい。上記に開示されるように、カメラ2120およびはカメラ2140のうちの1つ以上のものは、エミッタ2130aおよび/またはエミッタ2130bによって放出される光を検出するように構成されてもよい。プロセッサは、次いで、エミッタ2130aおよび/または2130bに、物理的世界内のオブジェクトの入手された画像を向上させ得る、光を放出させることによって、深度情報を入手してもよい。DVSカメラ2120およびカメラ2140が、放出される光に敏感であるとき、例えば、DVSカメラ2120およびカメラ2140によって出力される画像は、立体視情報を抽出するために処理されてもよい。他の分析技法も、代替として、または加えて、エミッタ2130aおよび/またはエミッタ2130bが有効にされると、深度情報を取得するために使用されてもよい。飛行時間測定および/または構造化された光技法が、代替として、または加えて、いくつかの実施形態では、使用されてもよい。
【0298】
ブロック2433では、プロセッサは、以前に入手された深度情報からの付加的深度情報を決定してもよい。いくつかの実施形態では、例えば、プロセッサは、DVSカメラ2120および/またはカメラ2140を用いて形成される画像内のオブジェクトを識別し、識別されたオブジェクトのモデルに基づいて、パス可能世界モデル内の任意の穴を充填するように構成されてもよい。例えば、処理は、物理的世界内の平面表面を検出してもよい。平面表面は、DVSカメラ2120および/またはカメラ2140を用いて入手された既存の深度情報、またはパス可能世界モデル内に記憶される深度情報を使用して、検出されてもよい。平面表面は、世界モデルの一部が不完全な深度情報を含むことの決定に応答して、検出されてもよい。プロセッサは、検出された平面表面に基づいて、付加的深度情報を推定するように構成されてもよい。例えば、プロセッサは、識別された平面表面を不完全な深度情報の領域を通して延在させるように構成されてもよい。いくつかの実施形態では、プロセッサは、平面表面を延在させるとき、パス可能世界モデルの囲繞する部分に基づいて、欠測深度情報を補間するように構成されてもよい。
【0299】
いくつかの実施形態では、付加的実施例として、プロセッサは、不完全な深度情報を含む、世界モデルの部分内のオブジェクトを検出するように構成されてもよい。いくつかの実施形態では、本検出は、ニューラルネットワークまたは他の機械学習ツールを使用して、オブジェクトを認識するステップを伴ってもよい。いくつかの実施形態では、プロセッサは、記憶されたテンプレートのデータベースにアクセスし、識別されたオブジェクトに対応する、オブジェクトテンプレートを選択するように構成されてもよい。例えば、識別されたオブジェクトが、窓であるとき、プロセッサは、記憶されたテンプレートのデータベースにアクセスし、対応するウィンドウテンプレートを選択するように構成されてもよい。非限定的実施例として、テンプレートは、窓、ドア、ボール、または同等物のタイプ等のオブジェクトのクラスを表す、3次元モデルであってもよい。プロセッサは、更新された世界モデル内のオブジェクトの画像に基づいて、オブジェクトテンプレートのインスタンスを構成してもよい。例えば、プロセッサは、テンプレートをスケーリング、回転、および平行移動させ、更新された世界モデル内のオブジェクトの検出された場所に合致させてもよい。付加的深度情報が、次いで、認識されるオブジェクトの表面を表す、構成されるテンプレートの境界に基づいて、推定されてもよい。
【0300】
ブロック2435では、プロセッサは、ライトフィールド情報を入手することができる。いくつかの実施形態では、本ライトフィールド情報は、画像とともに入手されることができ、到着角情報を含むことができる。いくつかの実施形態では、カメラ2120は、プレノプティックカメラとして構成され、本ライトフィールド情報を入手することができる。
【0301】
ブロック2431、ブロック2433、および/またはブロック2435後、方法2400は、ブロック2440に進み得る。ブロック2490では、プロセッサは、ブロック2431および/またはブロック2473において取得される付加的深度情報を使用して、パス可能世界モデルを更新してもよい。例えば、プロセッサは、能動IR照明を用いて行われた測定から取得される付加的深度情報を既存のパス可能世界モデルの中に混成するように構成されてもよい。同様に、例えば、到着角情報に基づいて、三角測量を使用してライトフィールド情報から決定される、付加的深度情報が、既存のパス可能世界モデルの中に混成されることができる。付加的実施例として、プロセッサは、検出された平面表面を延在させることによって取得される補間された深度情報を既存のパス可能世界モデルの中に混成する、または構成されるテンプレートの境界から推定される付加的深度情報を既存のパス可能世界モデルの中に混成するように構成されてもよい。
【0302】
情報は、付加的深度情報および/またはパス可能世界モデル内の情報の性質に応じて、1つ以上の方法において混成されてもよい。混成は、例えば、パス可能世界モデルに、パス可能世界モデル内に穴が存在する、場所に関して収集された付加的深度情報を追加することによって実施されてもよい。代替として、付加的深度情報は、パス可能世界モデル内の対応する場所における情報を上書きしてもよい。さらに別の代替として、混成は、パス可能世界モデル内にすでにある情報と付加的深度情報との間で選択するステップを伴ってもよい。そのような選択は、例えば、パス可能世界モデル内にすでにあるか、または付加的深度情報を収集するために使用されているカメラに最も近い表面を表す、付加的深度情報内のものであるかのいずれかの深度情報を選択するステップに基づいてもよい。
【0303】
いくつかの実施形態では、パス可能世界モデルは、接続される点のメッシュによって表されてもよい。世界モデルを更新することは、世界モデルに追加されるべきオブジェクトまたは表面のメッシュ表現を算出し、次いで、そのメッシュ表現と世界モデルのメッシュ表現を組み合わせることによって行われてもよい。本発明者らは、本順序で処理を実施することが、オブジェクトまたは表面を世界モデルに追加し、次いで、更新されたモデルのためのメッシュを算出するよりも少ない処理を要求し得ることを認識し、その真価を認めた。
【0304】
図24は、世界モデルが、ブロック2420および2440の両方で更新され得ることを示す。各ブロックにおける処理は、例えば、世界モデルに追加されるべきオブジェクトまたは表面のメッシュ表現を生成し、生成されたメッシュと世界モデルのメッシュを組み合わせることによって、同一方法で、または異なる方法で、実施されてもよい。いくつかの実施形態では、本マージ動作は、ブロック2420およびブロック2440において識別されたオブジェクトまたは表面の両方に関して、1回、実施されてもよい。そのような組み合わせられる処理は、例えば、ブロック2440に関連して説明されるように実施されてもよい。
【0305】
いくつかの実施形態では、方法2400は、DVSカメラ2120を使用して入手された情報に基づいて、世界モデルを更新するプロセスを繰り返すように、ブロック2420に戻ってもよい。ブロック2420における処理は、ブロック2410における処理より少ない画像およびより小さい画像上で実施され得るため、より高いレートで繰り返されてもよい。本処理は、3~7回/秒等、10回/秒未満のレートで実施されてもよい。
【0306】
方法2400は、終了条件が検出されるまで、このように繰り返されてもよい。例えば、方法2400は、所定の時間周期にわたって、ユーザ入力が受信されるまで、またはヘッドセット2100のカメラの視野内の物理的世界モデルの部分の特定のタイプまたは特定の大きさの変化が検出されるまで、繰り返されてもよい。方法2400は、次いで、ブロック2499において終了してもよい。方法2400は、より高い分解能カラーカメラを用いて入手されたものを含む、世界モデルの新しい情報がブロック2405において捕捉されるように、再び開始されてもよい。方法2400は、カラーカメラを使用して、世界モデルがグレースケール画像情報のみに基づいて更新されるレートより低速の平均レートでブロック2405において処理を繰り返し、世界モデルの一部を作成するように、終了され、再開されてもよい。カラーカメラを使用した処理は、例えば、1回/秒またはより低速の平均レートで繰り返されてもよい。
【0307】
頭部姿勢追跡
【0308】
XRシステムは、XRディスプレイシステムを装着しているユーザの頭部の位置および配向を追跡してもよい。ユーザの頭部姿勢を決定することは、パス可能世界モデル内の情報が、オブジェクトをウェアラブルディスプレイデバイス上にレンダリングする際に使用され得るように、パス可能世界モデル内の情報が、ユーザのウェアラブルディスプレイデバイスの基準フレームに変換されることを可能にする。頭部姿勢が、頻繁に更新されるにつれて、DVSカメラ2120のみを使用して、頭部姿勢追跡を実施することは、電力節約、低減された算出量、または他の利点を提供し得る。そのような追跡は、
図4-16に関して上記に説明されるように、イベントベースであってもよく、完全画像および/または画像パッチデータを入手してもよい。XRシステムは、したがって、頭部追跡正確度を電力消費および算出要件に対して平衡させるように、必要に応じて、カラーカメラ2140を無効にする、またはそのフレームレートを低減させるように構成されてもよい。
【0309】
図25は、いくつかの実施形態による、頭部姿勢追跡のための方法2500の簡略化されたフローチャートである。方法2500は、世界モデルを作成するステップと、追跡方法論を選択するステップと、選択された方法論を使用して、頭部姿勢を追跡するステップと、追跡品質を評価するステップとを含んでもよい。方法2500に従って、プロセッサは、DVSカメラ2120によって、画像パッチデータのイベントベースの入手を使用して、頭部姿勢を優先的に追跡してもよい。本好ましいアプローチが、不適正であることが証明される場合、プロセッサは、DVSカメラ2120によって周期的に出力される完全フレーム画像を使用して、頭部姿勢を追跡してもよい。本二次アプローチが、不適正であることが証明される場合、プロセッサは、DVSカメラ2120によって、およびカメラ2140によって出力される画像を使用して、頭部姿勢を立体視的に追跡してもよい。
【0310】
ブロック2510では、プロセッサは、パス可能世界モデルを作成してもよい。いくつかの実施形態では、プロセッサは、方法2400のブロック2405-2415に関して上記に説明されるように、パス可能世界モデルを作成するように構成されてもよい。例えば、プロセッサは、画像をDVSカメラ2120およびカメラ2140から入手するように構成されてもよい。いくつかの実装では、プロセッサは、カメラ2140内のロールシャッタ歪曲を補償してもよい。プロセッサは、次いで、DVSカメラ2120からの画像およびカメラ2140からの補償された画像を使用して、物理的世界内の特徴に関する深度を立体視的に決定してもよい。これらの深度を使用して、プロセッサは、パス可能世界モデルを作成してもよい。パス可能世界モデルを作成後、いくつかの実施形態では、プロセッサは、カメラ2140を無効にする、またはそのフレームレートを低減させるように構成されてもよい。パス可能世界モデルを生成後、カメラ2140を無効にする、またはそのフレームレートを低減させることによって、XRシステムは、電力消費およびコンピューティング要件を低減させ得る。
【0311】
プロセッサ、例えば、
図13に関連して上記に説明されるように、世界モデルから、定常特徴に対応する特徴を選択してもよい。ユーザの頭部上に装着されるデバイス上に搭載されるカメラに対する定常特徴の場所を示す、画像情報が、世界モデルに対するユーザの頭部の位置の変化を算出するために使用されてもよい。いくつかの実施形態によると、プロセッサは、品質基準を充足させることと、他の追跡方法に対して低算出量を要求することとの両方である、定常特徴の相対的位置を追跡するための追跡方法論を選択してもよい。
【0312】
ブロック2520では、プロセッサは、追跡方法論を選択してもよい。プロセッサは、DVSカメラ2120によって検出されたイベントを使用した頭部姿勢追跡を優先的に選択してもよい。プロセッサは、頭部姿勢追跡が追跡品質基準を充足させる間、本好ましいアプローチの使用を継続し得る。例えば、頭部姿勢を追跡する困難度は、ユーザの頭部の場所および配向およびパス可能世界モデルのコンテンツに依存し得る。したがって、いくつかのインスタンスでは、プロセッサは、DVSカメラ2120によって出力される非同期して入手された画像データのみを使用して、頭部姿勢を追跡することが不可能である、または不可能になり得る。
【0313】
プロセッサが、好ましいアプローチによって提供される頭部姿勢追跡が追跡品質基準を充足させないことを決定する場合、プロセッサは、二次アプローチを選択し、頭部姿勢を追跡してもよい。例えば、プロセッサは、カメラ2140を用いて取得される色情報と組み合わせて、DVSカメラ2120によって出力されるイベントのインジケーションを使用して、頭部姿勢を追跡することを選択してもよい。プロセッサが、本二次アプローチが追跡品質基準を充足させないことを決定する場合、プロセッサは、三次アプローチを選択し、頭部姿勢を追跡してもよい。例えば、プロセッサは、DVSカメラ2120によって、およびカメラ2140によって出力される画像を使用して、頭部姿勢を立体視的に追跡することを選択してもよい。プロセッサは、頭部姿勢追跡が追跡品質基準を充足させる間、選択されたアプローチの使用を継続し得る。代替として、プロセッサは、頭部姿勢更新の所定の持続時間、時間、または回数後、または基準の充足に応答して、より好ましいアプローチに戻ってもよい。
【0314】
各アプローチでは、画像情報は、使用されているカメラ毎に、視野全体に関して入手されてもよい。しかしながら、
図13に関連して上記に説明されるように、画像情報は、追跡されている特徴を含有する部分に対応する、画像のパッチのみに関して収集されてもよい。
【0315】
図25は、ブロック2530aおよび2540aにおいて実施される、第1の追跡方法論を図示する。ブロック2530aでは、プロセッサは、DVSカメラ2120のDVS機能性を、本機能性がすでに有効にされていないとき、有効にしてもよい。その機能性は、世界モデルから選択された定常特徴の移動と関連付けられる、強度の閾値変化を設定することによって、有効にされてもよい。いくつかの実施形態では、それらの特徴を組み込む、パッチもまた、設定されてもよい。ブロック2540aでは、プロセッサは、DVSカメラ2120によって検出されたイベントに応答して入手されたパッチデータを使用して、頭部姿勢を追跡してもよい。いくつかの実施形態では、プロセッサは、リアルタイムまたは近リアルタイムユーザ頭部姿勢を本パッチデータから計算するように構成されてもよい。
【0316】
二次追跡方法論は、ブロック2530bおよび2540bに図示される。本実施例では、カラー画像情報が、特徴の相対的位置を追跡するためのイベント情報と組み合わせて使用されてもよい。ブロック2530bでは、プロセッサは、カメラ2140を、カメラ2140がすでに有効にされていないとき、有効にしてもよい。カメラ2140は、頭部姿勢更新が提供されるレートと同一またはより低速であるレートにおいて、画像を提供するように有効にされてもよい。例えば、頭部姿勢更新は、30~60Hzの平均レートにおいて、非同期イベントデータの使用を通して提供されてもよい。カメラ2140は、5~10Hz等、30Hz未満のレートにおいて、フレームを提供するように有効にされてもよい。
【0317】
色情報が、それを用いて定常特徴が追跡される、正確度を増加させるために使用されてもよい。色情報は、例えば、追跡されている特徴の更新された場所を算出するために使用されてもよく、これは、グレースケールイベントが単独で使用される場合より正確に決定され得る。結果として、追跡されているパッチの場所は、他の特徴を包含するように更新または変化されてもよい。代替として、または加えて、カメラ2140からの情報が、追跡するための代替特徴を識別するために使用されてもよい。なおもさらなる代替として、色情報は、表面、縁、またはDVSカメラ2120を用いてトレースされるものより大きい特徴を分析することに基づいて、カメラの相対的位置が算出されることを可能にし得る。
【0318】
三次追跡方法論は、ブロック2530cおよび2540cに図示される。本実施例では、三次追跡は、立体視情報に基づいてもよい。ブロック2530bでは、プロセッサは、カメラ2120が、強度の変化を表すイベント情報ではなく、強度情報を出力するように、DVSカメラ2120のDVS機能性を無効にしてもよい。ブロック2540bでは、プロセッサは、完全フレーム画像であり得る、または追跡されている具体的パッチ内の画像であり得る、DVSカメラ2120によって周期的に出力される画像を使用して、頭部姿勢を追跡してもよい。ブロック2540cでは、プロセッサは、DVSカメラ2120およびカメラ2140によって出力される画像から取得される立体視画像データを使用して、頭部姿勢を追跡してもよい。例えば、プロセッサは、立体視画像データからの深度情報を決定するように構成されてもよい。いくつかの実施形態では、プロセッサは、リアルタイムまたは近リアルタイムユーザ頭部姿勢をこれらの画像から計算するように構成されてもよい。
【0319】
ブロック2550では、プロセッサは、追跡基準に従って、追跡品質を評価してもよい。追跡基準は、推定される頭部姿勢の安定性、推定される頭部姿勢の雑音度、推定される頭部姿勢の世界モデルとの一貫性、または同様の要因に依存し得る。具体的実施例として、算出された頭部姿勢は、頭部姿勢における誤差が識別され得るように、慣性測定ユニットの出力またはヒト頭部の運動の範囲のモデル等、不正確性を示し得る、他の情報と比較されてもよい。具体的追跡基準は、使用される追跡方法論に基づいて、変動し得る。例えば、イベントベースの情報を使用する方法論では、完全フレーム画像内の対応する特徴の場所と比較したイベントベースの出力によって示されるような特徴の場所間の対応が、使用されてもよい。代替として、または加えて、その周囲に対する特徴の視覚的弁別性が、追跡基準として使用されてもよい。例えば、視野が、具体的特徴の移動を識別することを困難にする、1つ以上のオブジェクトで充填されるとき、イベントベースの方法論のための追跡基準は、不良追跡を示し得る。オクルードされる視野のパーセンテージが、使用され得る基準の実施例である。例えば、40%を上回る等の閾値が、頭部姿勢追跡のための画像ベースの方法論の使用から切り替えるべきことのインジケーションとして使用されてもよい。さらなる実施例として、再投影誤差が、頭部姿勢追跡品質の測定値として使用されてもよい。そのような基準は、入手されている画像内の特徴と以前に決定されたパス可能世界モデルを合致させることによって算出されてもよい。画像内の特徴の場所は、頭部姿勢に基づく幾何学的変換算出を使用して、パス可能世界モデル内の場所に関連されてもよい。例えば、算出された場所とパス可能世界モデル内の特徴との間の平均二乗誤差として表される、偏差が、したがって、偏差が追跡基準として使用され得るように、頭部姿勢内の誤差を示し得る。
【0320】
いくつかの実施形態では、プロセッサは、世界モデルに基づいて、推定される頭部姿勢に関する誤差を算出するように構成されてもよい。本誤差を算出する際、プロセッサは、世界モデル(または世界モデル内の複数の特徴)が、推定される頭部姿勢に基づいて、現れるべき方法を推定するように構成されてもよい。いくつかの実施形態では、本推定は、世界モデル(または世界モデル内の特徴)と比較され、推定される頭部姿勢に関する誤差を生成してもよい。そのような誤差は、線形代数技法を使用して算出されてもよい。例えば、画像内の複数の特徴のそれぞれの算出された場所と実際の場所との間の平均二乗偏差が、誤差に関するメトリックとして使用されてもよい。本メトリックは、ひいては、頭部姿勢追跡品質の測定値として使用されてもよい。
【0321】
頭部姿勢追跡品質を評価後、方法2500は、ブロック2520に戻ってもよく、プロセッサは、測定された頭部姿勢追跡品質を使用して、追跡方法論を選択してもよい。閾値を下回る等、追跡品質が低いシナリオでは、代替追跡方法論が、選択されてもよい。
【0322】
方法2500は、終了条件が検出されるまで、このように繰り返されてもよい。例えば、方法2500は、ユーザ入力が受信されるまで、またはヘッドセット2100のカメラの視野内の物理的世界モデルの部分の変化の特定のタイプまたは特定の大きさが検出されるまで、所定の時間周期にわたって繰り返されてもよい。方法2500は、次いで、ブロック2599において終了してもよい。
【0323】
方法2500は、より高い分解能のカラーカメラを用いて入手されるものを含む、世界モデルの新しい情報が、ブロック2510において捕捉されるように、再び、開始されてもよい。方法2500は、カラーカメラを使用して、ブロック2510における処理を繰り返し、頭部姿勢追跡がブロック2520-2550において実施されるレートより低速の平均レートにおいて、世界モデルの一部を作成するように、終了および再開されてもよい。カラーカメラを使用した処理は、例えば、1回/秒またはより低速の平均レートにおいて、繰り返されてもよい。
【0324】
他の追跡方法論が、実施例として上記に説明される追跡方法論の代わりに、またはそれに加え、使用されてもよい。いくつかの実施形態では、プロセッサは、リアルタイムまたは近リアルタイムユーザ頭部姿勢を、グレースケール画像および/または到着角情報等のライトフィールド情報を含み得る、画像情報から計算するように構成されてもよい。代替として、または加えて、画像ベースの頭部姿勢追跡方法論が容認不可能な品質メトリックを有するシナリオでは、慣性測定ユニットによって測定されるようなユーザの頭部の運動が頭部姿勢を算出するために使用され得る、「デッドレコニング」方法論が、選択されてもよい。
【0325】
オブジェクト追跡
【0326】
上記に説明されるように、XRシステムのプロセッサは、物理的世界内のオブジェクトを追跡し、物理的オブジェクトに対する仮想オブジェクトの現実的レンダリングをサポートし得る。追跡は、例えば、XRシステムのユーザの手等の移動可能なオブジェクトに関連して説明された。例えば、XRシステムは、中心視野2150、周辺視野2160a、および/または周辺視野2160b内のオブジェクトを追跡してもよい。移動可能なオブジェクトの位置を迅速に更新することは、レンダリングが、仮想オブジェクトによる物理的オブジェクトのオクルージョンまたはその逆または物理的オブジェクト内の仮想オブジェクト間の相互作用を反映させ得るため、仮想オブジェクトを現実的にレンダリングすることを可能にする。いくつかの実施形態では、例えば、物理的オブジェクトの場所に関する更新は、約30回/秒等、少なくとも10回/秒、いくつかの実施形態では、少なくとも20回/秒の平均レートにおいて、算出されてもよい。追跡されるオブジェクトが、ユーザの手であるとき、追跡は、ユーザによるジェスチャ制御を有効にし得る。例えば、あるジェスチャは、XRシステムへのコマンドに対応し得る。
【0327】
いくつかの実施形態では、XRシステムは、IR光に敏感である画像センサを用いて結像されるとき、高コントラストを提供する特徴を有する、オブジェクトを追跡するように構成されてもよい。いくつかの実施形態では、高コントラスト特徴を伴う、オブジェクトは、マーカをオブジェクトに追加することによって作成されてもよい。例えば、物理的オブジェクトは、IR光を用いて結像されると、高コントラスト領域として現れる、1つ以上のマーカを装備してもよい。マーカは、IR光に高度に反射性または高度に吸収性である、受動マーカであってもよい。いくつかの実施形態では、着目周波数範囲にわたる光の少なくとも25%が、吸収または反射されてもよい。代替として、または加えて、マーカは、IR LED等のIR光を放出する、能動マーカであってもよい。例えば、DVSカメラを用いて、そのような特徴を追跡することによって、物理的オブジェクトの位置を正確に表す情報が、迅速に決定され得る。
【0328】
頭部姿勢追跡と同様に、追跡されるオブジェクト位置は、頻繁に更新され、したがって、DVSカメラ2120のみを使用してオブジェクト追跡を実施することは、電力節約を提供する、算出要件を低減させる、または他の利点を提供し得る。XRシステムは、したがって、電力消費および算出要件に対してオブジェクト追跡正確度を平衡させるために、必要に応じて、カラーカメラ2140を無効にする、またはそのフレームレートを低減させるように構成されてもよい。さらに、XRシステムは、DVSカメラ2120によって生成されたイベントに応答して、オブジェクトを非同期して追跡するように構成されてもよい。
【0329】
図26は、いくつかの実施形態による、オブジェクト追跡のための方法2600の簡略化されたフローチャートである。方法2600に従って、プロセッサは、オブジェクトを含有する視野および追跡品質基準の値に応じて、オブジェクト追跡を異なるように実施することができる。さらに、プロセッサは、追跡されるオブジェクトが深度基準を充足させるかどうかに応じて、ライトフィールド情報を使用する場合とそうではない場合がある。利用可能なバッテリ電力、または実施されているXRシステムの動作、およびそれらの動作がオブジェクト場所を追跡する、または高精度を伴ってオブジェクト場所を追跡する必要性等、他の基準が、代替として、または加えて、プロセッサによって適用され、オブジェクト追跡方法論を動的に選択してもよい。
【0330】
方法2600は、ブロック2601から開始することができる。いくつかの実施形態では、カメラ2140は、無効にされる、または低減されたフレームレートを有してもよい。プロセッサは、カメラ2140を無効にさせ、またはカメラ2140のフレームレートを低減させ、電力消費を低減させ、バッテリ寿命を改良してもよい。種々の実施形態では、プロセッサは、物理的世界(例えば、ユーザの手)内のオブジェクトを追跡してもよい。プロセッサは、オブジェクトの1つ以上の前の場所に基づいて、オブジェクトの次の場所またはオブジェクトの軌道を予測するように構成されてもよい。
【0331】
ブロック2601から開始後、方法2600は、ブロック2610に進むことができる。ブロック2610では、プロセッサは、オブジェクトを包含する視野(例えば、視野2121、視野2141、周辺視野2160a、周辺視野2160b、または中心視野2150)を決定することができる。いくつかの実施形態では、プロセッサは、本決定をオブジェクトの現在の場所(例えば、オブジェクトが、現在、中心視野2150内にあるかどうか)に基づかせることができる。種々の実施形態では、プロセッサは、本決定をオブジェクトの場所の推定値に基づかせることができる。例えば、プロセッサは、中心視野2150から離れているオブジェクトが、周辺視野2160aまたは周辺視野2160bに進入し得ることを決定することができる。
【0332】
ブロック2620では、プロセッサは、オブジェクト追跡方法論を選択することができる。方法2600に従って、オブジェクトが、視野2121内(例えば、周辺視野2160aまたは中心視野2150内)にあるとき、プロセッサは、DVSカメラ2120を使用したオブジェクト追跡を優先的に選択してもよい。さらに、プロセッサは、イベントベースの非同期オブジェクト追跡を優先的に選択してもよい。
【0333】
いくつかの実施形態では、上記に説明されるようなパッチ追跡が、上記に説明されるように、追跡されているオブジェクトの特徴を包含するように確立される、1つ以上のパッチを用いて、使用されてもよい。パッチ追跡は、オブジェクト追跡方法論のいくつかまたは全てのために、およびカメラのいくつかまたは全てのために使用されてもよい。パッチは、視野内で追跡されるオブジェクトの推定される場所を包含するように選択されてもよい。
【0334】
図25および頭部姿勢追跡に関連して上記に説明されるように、プロセッサは、オブジェクト追跡のための適切な追跡方法論を動的に選択してもよい。方法論は、他の方法論と比較して、低処理オーバーヘッドを要求する、好適な追跡品質を提供するように選択されてもよい。故に、イベントベースの非同期オブジェクト追跡が、オブジェクト追跡基準を充足させない場合、プロセッサは、別の方法論を使用してもよい。
図26の実施例では、ブロック2640a、2640b、2640c、および2640dに示される、4つの方法論が、図示される。方法論は、順序付けられ、方法2600は、追跡品質基準を満たす順序において、第1の方法論を選択するであろう。方法論は、例えば、正確度、待ち時間、および電力消費におけるトレードオフを反映させるように順序付けられてもよい。最短待ち時間を有する、方法論は、例えば、最初に順序付けられてもよく、より長い待ち時間またはより多くの電力消費を伴う方法論は、順序付けにおいてより低くなる。
【0335】
ブロック2630aでは、プロセッサは、DVSカメラ2120のDVS機能性を、本機能性がすでに有効にされていないとき、有効にしてもよい。ブロック2640aでは、プロセッサは、DVSカメラ2120によって検出されたイベントを使用して、オブジェクトを追跡してもよい。いくつかの実施形態では、DVSカメラ2120は、画像入手を視野2121内のオブジェクトの場所を包含する画像センサ内のパッチに制限するように構成されてもよい。パッチ内の画像データの変化(例えば、オブジェクトの移動によって生じる)は、イベントをトリガし得る。イベントに応答して、DVSカメラ2120は、パッチに関する画像データを入手し、入手されたパッチ画像データに基づいて、オブジェクトの位置および/または配向を更新してもよい。
【0336】
いくつかの実施形態では、イベントは、強度の変化を示し得る。例えば、
図12および13と併せて、上記に説明されるように、強度の変化が、オブジェクトの運動を追跡するために追跡されてもよい。いくつかの実施形態では、DVSカメラ2120は、プレノプティックカメラであってもよい、またはそのようなものとして動作するように構成可能であってもよい。オブジェクトが、深度基準を充足させるとき、プロセッサは、加えて、または代替として、到着角情報を入手するように構成されてもよい。深度基準は、方法2400のブロック2420に関して上記に説明される深度基準と同一または類似してもよい。例えば、深度基準は、それを越えるとプロセッサがオブジェクト間の異なる距離を区別することができない、最大誤差レートまたは最大距離に関してもよい。深度情報は、したがって、オブジェクトの場所および/またはオブジェクトの場所の変化を決定するために使用されてもよい。そのようなプレノプティック画像情報の使用は、本明細書に説明される、方法論の一部であってもよい、または他の方法論と併用され得る、さらなる方法論であってもよい。
【0337】
第2の方法論は、ブロック2630bおよび2640bに示される。ブロック2630bでは、プロセッサは、カメラ2140を、カメラ2140がすでに有効にされていないとき、有効にしてもよい。ブロック2530bに関連して上記に説明されるように、カラーカメラは、比較的に低平均レートにおいて、カラー画像を入手するように動作されてもよい。色情報が、主に、DVSカメラ2120によって出力されるイベントと、追跡するための特徴またはその場所をより良好に識別するためのカラー画像からの情報を併用して、ブロック2640bにおいて使用されてもよい。
【0338】
三次方法論は、ブロック2630cおよび2640cに示される。ブロック2630cでは、プロセッサは、カメラ2140を、カメラ2140がすでに有効にされていないとき、有効にしてもよい。カメラ2140は、カラー画像情報を出力することが可能であるものとして説明される。三次方法論に関して、カラー画像情報が、使用されてもよいが、いくつかの実施形態では、またはいくつかのシナリオでは、強度情報のみが、カメラ2140から入手されてもよい、または強度情報のみが、処理されてもよい。プロセッサはまた、カメラ2140のフレームレートをオブジェクト追跡のために十分なレート(例えば、40Hz~120Hzのフレームレート)に増加させてもよい。いくつかの実施形態では、本レートは、DVSカメラ2120のサンプリング周波数に合致してもよい。プロセッサはまた、DVSカメラ2120のDVS機能性を、本機能性がすでに無効にされていないとき、無効にしてもよい。本構成では、DVSカメラ2120の出力は、強度情報を表し得る。ブロック2640cでは、プロセッサは、DVSカメラ2120およびカメラ2140によって出力される画像から取得される立体視画像データを使用して、オブジェクトを追跡してもよい。
【0339】
第4の方法論は、ブロック2630dおよび2640dに示される。ブロック2630dでは、プロセッサは、すでに有効にされていないとき、カメラを有効にしてもよい。他のカメラは、無効にされてもよい。有効にされるカメラは、DVSカメラ2120またはカメラ2140であってもよい。DVSカメラ2120が、使用される場合、画像強度情報を出力するように構成されてもよい。カメラ2140が、有効にされると、色情報または単にグレースケール強度情報を出力するように有効にされてもよい。プロセッサはまた、有効にされるカメラのフレームレートをオブジェクト追跡のために十分なレート(例えば、40Hz~120Hzのフレームレート)に増加させてもよい。ブロック2640dでは、プロセッサは、有効にされるカメラによって出力される画像を使用して、オブジェクトを追跡してもよい。
【0340】
ブロック2650では、プロセッサは、追跡品質を評価してもよい。ブロック2550に関連して上記に説明されるメトリックのうちの1つ以上のものが、ブロック2650において使用されてもよい。しかしながら、ブロック2650では、それらのメトリックは、環境内の定常特徴の追跡ではなく、オブジェクト上の特徴の追跡に適用されるであろう。
【0341】
オブジェクト追跡品質を評価後、方法2600は、プロセッサが、再び、オブジェクトを包含する視野を決定し(ブロック2610)、次いで、決定された視野および測定されたオブジェクト追跡品質を使用して、オブジェクト追跡方法論を選択し得る(ブロック2620)ブロック2610および2620に戻ってもよい。図示される実施形態では、好適な性能と関連付けられる閾値を超える品質を提供する順序における、第1の方法論が、選択される。
【0342】
方法2600は、終了条件が検出されるまで、このように繰り返されてもよい。例えば、方法2600は、ユーザ入力が受信されるまで、または追跡されるオブジェクトがXRデバイスの視野から退出するまで、所定の時間周期にわたって繰り返されてもよい。方法2600は、次いで、ブロック2699において終了してもよい。
【0343】
方法2600は、ユーザの手を含む、任意のオブジェクトを追跡するために使用されてもよい。しかしながら、いくつかの実施形態では、異なるまたは付加的行為が、ユーザの手を追跡する際に実施されてもよい。
図27は、いくつかの実施形態による、手の追跡の方法2700の簡略化されたフローチャートである。方法2700において追跡されるオブジェクトは、ユーザの手であってもよい。種々の実施形態では、XRシステムは、DVSカメラ2120から取得される画像データまたは画像および/またはカメラ2140から取得される画像を使用して、手の追跡を実施することができる。これらのカメラは、複数のモードのうちの1つで動作するように構成可能であってもよい。例えば、一方または両方が、画像パッチデータを入手するように構成されてもよい。代替として、または加えて、DVSカメラ2140は、
図4-16に関して上記に説明されるように、イベントを出力するように構成されてもよい。代替として、または加えて、カメラ2140は、色情報または単にグレースケール強度情報を出力するように構成されてもよい。さらに、カメラ2140は、代替として、または加えて、
図16-20に関連して上記に説明されるように、プレノプティック情報を出力するように構成されてもよい。DVSカメラ2120も同様に、いくつかの実施形態では、プレノプティック情報を出力するように構成されてもよい。これらのカメラおよび能力の任意の組み合わせが、手の追跡に関する情報を生成するように選択されてもよい。
【0344】
図26に関連して説明されるオブジェクト追跡と同様に、プロセッサは、手の決定された場所および選択されたアプローチによって提供される手の追跡の品質の査定に基づいて、手の追跡アプローチを選択するように構成されてもよい。例えば、立体視深度情報が、手が中心視野2150内にあるとき、取得されてもよい。別の実施例として、プレノプティック情報は、プレノプティックカメラの視野の中心に対してある角度の範囲(例えば、+/-20度)内の手の追跡のみのために十分な分解能を有してもよい。したがって、立体視画像情報またはプレノプティック画像情報に依拠する、技法は、手が適切な視野内にあることが検出されるときのみ、使用されてもよい。
【0345】
必要な場合、XRシステムは、カメラ2140を有効にする、またはそのフレームレートを増加させ、視野2160b内の追跡を有効にすることができる。このように、ウェアラブルディスプレイシステムは、本構成では、利用可能な低減された数のカメラを使用して、適正な手の追跡を提供し、低減された電力消費および増加されたバッテリ寿命を可能にするように構成されてもよい。
【0346】
方法2700は、XRシステムのプロセッサの制御下で、実施されてもよい。本方法は、ヘッドセット2100上のカメラのうちの任意の1つを用いて入手された画像の分析の結果として、手等の追跡されるべきオブジェクトの検出に応じて、開始されてもよい。本分析は、手の特性である、測光特性を有する、画像の領域に基づいて、オブジェクトを手として認識するステップを伴い得る。代替として、または加えて、立体視画像分析に基づいて入手された深度情報が、手を検出するために使用されてもよい。具体的実施例として、深度情報は、手の3Dモデルに合致する形状を有する、オブジェクトが存在することを示し得る。このように手の存在を検出することはまた、手のモデルのパラメータを手の配向に合致するように設定するステップを伴い得る。いくつかの実施形態では、そのようなモデルはまた、1つ以上のグレースケールカメラからの測光情報を使用して、どのように手がオリジナル位置から移動したかを決定することによって、高速の手の追跡のために使用されてもよい。
【0347】
XRシステムが、ユーザの手が1つ以上のカメラの視野に進入することが予期されるように、ユーザがその手で押下を試みる可能性が高い、仮想ボタンをレンダリングする等、オブジェクトを追跡するステップを伴う動作を実施する等、他のトリガ条件が、方法2700を開始してもよい。方法2700は、30~100回/秒、例えば、40~60回/秒等、比較的に高レートで繰り返されてもよい。結果として、追跡されているオブジェクトに関する更新された位置情報が、物理的オブジェクトと相互作用する仮想オブジェクトをレンダリングするために処理するために、短待ち時間で利用可能にされ得る。
【0348】
ブロック2701から開始後、方法2700は、ブロック2710に進み得る。ブロック2710では、プロセッサは、潜在的手の場所を決定してもよい。いくつかの実施形態では、潜在的手の場所は、入手された画像内の検出されたオブジェクトの場所であってもよい。手が深度情報を手の3Dモデルに合致させることに基づいて検出される、実施形態では、同一情報が、ブロック2710において、手の初期位置として使用されてもよい。
【0349】
いくつかの実施形態では、手のモデルを構成するために使用される画像情報が、動的に選択されてもよい。ブロック2710後、方法2700は、ブロック2720に進み得る。ブロック2720では、プロセッサは、手のモデルを構成するための処理アプローチを選択してもよい。本選択は、手の潜在的場所および手のモデルがすでに構成されているかどうかに依存し得る。いくつかの実施形態では、本選択はさらに、所望の正確度および/または手のモデルの品質および/またはプロセッサによって実行されている他のタスクを前提として利用可能な処理コンピュータ電力に依存し得る。実施例として、手のモデルが、手の検出に応じて最初に構成されるとき、より広範な、但し、より正確な画像情報が、付加的処理を犠牲にして使用されてもよい。例えば、立体視情報が、モデルを最初に構成するために使用されてもよい。その後、モデル自体が、ヒトの手が移動し得る様式には、限界が存在するため、手の位置についての情報を提供する。故に、XRシステムが動作するにつれて、手のモデルを再構成し、手の運動を考慮するための処理が、随意に、あまり包括的ではないが、より迅速に処理され得る、画像情報を用いて、またはより包括的画像情報が利用不可能であるとき、実施されてもよい。例えば、オブジェクトが、中心視野2150内にあって、ロバストな手の追跡または微細な手の詳細が、要求されるとき、または他のアプローチが、不適正であることが証明される場合、プロセッサは、DVSカメラ2120によって、およびカメラ2140によって出力される画像を使用して、手の追跡を立体視的に実施してもよい。代替として、オブジェクトが、中心視野2150内にない、またはロバストな手の追跡または微細な手の詳細が、要求されないとき、プロセッサは、単眼カラー画像またはグレースケール画像等の他の画像情報を使用して、手のモデルを優先的に構成するように構成されてもよい。プロセッサは、オブジェクトが周辺視野2160a内にあるとき、DVSカメラ2120から入手された画像を使用して、手のモデルを構成するように構成されてもよい。プロセッサは、オブジェクトが周辺視野2160b内にあるとき、カメラ2140から入手された画像を使用して、手のモデルを構成するように構成されてもよい。いくつかの実施形態では、プロセッサは、例えば、依然として、品質基準を満たす、最低電力消耗方法を使用するように構成されてもよい。
【0350】
図27は、手のモデルを構成するための情報を集めるための4つのアプローチを図示する。それらの4つのアプローチは、ブロック2740a、2740b、2740c、および2740dを通る経路を含む、フローチャートを通した4つの並列経路として示される。
【0351】
第1の経路では、ブロック2730aにおいて、潜在的手が、中心視野2150内にあって、手の追跡ロバスト性または微細な手の詳細が、要求されるとき、プロセッサは、カメラ2140を、本カメラがすでに有効にされていないとき、有効にしてもよい。本経路はまた、ブロック2720において、手のモデルの初期構成のために選択されてもよい。ブロック2730aでは、プロセッサはまた、カメラ2140のフレームレートを手の追跡のために十分なレート(例えば、40Hz~120Hzのフレームレート)に増加させてもよい。いくつかの実施形態では、本レートは、DVSカメラ2120のサンプリング周波数に合致してもよい。プロセッサはまた、DVSカメラ2120のDVS機能性を、本機能性がすでに無効にされていないとき、無効にしてもよい。結果として、両カメラは、強度を表す画像情報を提供してもよい。本画像情報は、グレースケールであってもよい、またはカラー結像をサポートするカメラに関して、代替として、色情報を含んでもよい。
【0352】
ブロック2740aでは、プロセッサは、潜在的手に関する深度情報を取得してもよい。深度情報は、そこから画像情報を収集するカメラと潜在的手のセグメントまたは特徴との間の距離が算出され得る、立体視画像分析に基づいて、取得されてもよい。プロセッサは、例えば、中心視野内の特徴を選択し、選択された特徴に関する深度情報を決定してもよい。
【0353】
いくつかの実施形態では、選択された特徴は、骨および関節によって定義されるようなヒトの手の異なるセグメントを表し得る。特徴選択は、画像情報をヒトの手のモデルに合致させることに基づいてもよい。そのような合致は、例えば、ヒューリスティックに行われてもよい。ヒトの手は、例えば、16等の有限数のセグメントによって表されてもよく、手の画像内の点は、各セグメント上の特徴が選択され得るように、それらのセグメントのうちの1つにマッピングされてもよい。代替として、または加えて、そのような合致は、深層ニューラルネットまたは分類/決定森を使用して、分析において一連のはい/いいえ決定を適用し、手の異なる部分を識別し、手の異なる部分を表す特徴を選択してもよい。合致は、例えば、画像内の特定の点が、掌部分、手の甲、非親指の指、親指、指先、および/または指関節に属するかどうかを識別してもよい。任意の好適な分類子が、本分析段階のために使用されることができる。例えば、深層学習モジュールまたはニューラルネットワーク機構が、分類森の代わりに、またはそれに加え、使用されることができる。加えて、回帰森(例えば、Hough変換等を使用して)が、分類森に加え、使用されることができる。
【0354】
選択される特徴の具体的数およびそれらの特徴を選択するために使用される技法にかかわらず、ブロック2740a後、方法2700は、ブロック2750aに進み得る。ブロック2750aでは、プロセッサは、深度情報に基づいて、手のモデルを構成してもよい。いくつかの実施形態では、手のモデルは、例えば、手内のセグメントとしての手内の骨のそれぞれと、隣接するセグメント間の可能性が高い角度の範囲を定義するように、各関節とを表す、ヒトの手についての構造情報を反映させてもよい。選択された特徴の深度情報に基づいて、場所を手のモデル内のセグメントのそれぞれに割り当てることによって、XRシステムによる後続処理のために、手の位置についての情報が、提供され得る。
【0355】
どのように3Dの手のモデルが更新されるかにかかわらず、更新されたモデルは、測光画像情報に基づいて、精緻化されてもよい。モデルは、例えば、手の投影を生成し、どのように手の画像が現れることが予期されるかを表すために使用されてもよい。その予期される画像は、画像センサを用いて入手された測光画像情報と比較されてもよい。3Dモデルは、予期される測光情報と入手された測光情報との間の誤差を低減させるように調節されてもよい。調節された3Dモデルは、次いで、手の位置のインジケーションを提供する。本更新プロセスが、繰り返されるにつれて、3Dモデルは、手が移動すると、手の位置のインジケーションを提供する。
【0356】
いくつかの実施形態では、ブロック2740aおよび2750aにおける処理は、反復的に実施されてもよく、それに関して深度情報が収集される、特徴の選択は、手のモデルの構成に基づいて精緻化される。手のモデルは、プロセッサが、手の成分を表す、特徴の選択を精緻化するために使用するように構成され得る、形状制約および運動制約を含んでもよい。例えば、手のセグメントを表すために選択される特徴が、手のモデルの制約に違反する、そのセクションの位置または運動を示すとき、そのセグメントを表すための異なる特徴が、選択されてもよい。
【0357】
ブロック2750aでは、プロセッサは、ヒトの手の構造を表す、DVSカメラ2120またはカメラ2140によって出力されるパッチまたは画像内の特徴を選択してもよい。そのような特徴は、ヒューリスティックに、またはAI技法を使用して、識別されてもよい。例えば、特徴は、各セグメント上の特徴が選択され得るように、有限数のセグメントによってヒトの手を表し、画像内の点をそれらのセグメントの個別のものにマッピングすることによって、ヒューリスティックに選択されてもよい。代替として、または加えて、そのような合致は、深層ニューラルネットワークまたは分類/決定森を使用して、一連のはい/いいえ決定を分析内に適用し、手の異なる部分を識別し、手の異なる部分を表す特徴を選択してもよい。任意の好適な分類子が、本分析段階のために使用されることができる。例えば、深層学習モジュールまたはニューラルネットワーク機構が、分類森の代わりに、またはそれに加え、使用されることができる。加えて、回帰森(例えば、Hough変換等を使用する)が、分類森に加え、使用されることができる。プロセッサは、選択された特徴および画像毎のそれらの選択された特徴の運動を、深度情報の利点を伴わずに、手のモデルに合致させるように試み得る。本合致は、ブロック2750aにおいて生成されたものほどあまりロバストではない情報をもたらし得る、またはあまり正確ではない場合がある。それでもなお、単眼情報に基づいて識別された情報は、XRシステムの動作に関する有用な情報を提供し得る。
【0358】
ブロック2750aでは、プロセッサはまた、手のモデルを評価することができる。本評価は、選択された特徴と手のモデルとの間の合致の完全性、選択された特徴と手のモデルとの間の合致の安定性、推定される手の場所の雑音度、検出された特徴の場所および配向と手のモデルによって課される制約との間の一貫性、または同様の要因に依存し得る。いくつかの実施形態では、プロセッサは、手のモデルに基づいて、選択された特徴が現れるべき場所を決定することができる。具体的実施例として、プロセッサは、汎用の手のモデルをパラメータ化し、次いで、モデルの縁の測光一貫性をチェックし、それらの縁と手の入手された画像内で検出されるような縁を比較してもよい。いくつかの実施形態では、本推定値は、選択された特徴の推定される場所および配向と比較され、手のモデルに関する誤差を生成してもよい。そのような誤差は、線形代数技法を使用して算出されてもよい。例えば、画像内の複数の選択された特徴のそれぞれの算出された場所と実際の場所との間の平均二乗偏差が、誤差に関するメトリックとして使用されてもよい。本メトリックは、ひいては、手のモデル品質の測定値として使用されてもよい。
【0359】
画像部分をブロック2750aにおける手のモデルの部分に合致させた後、モデルは、XRシステムによって実施される1つ以上の動作において使用されてもよい。一実施例として、モデルは、直接、仮想オブジェクトをレンダリングするために、物理的世界内のオブジェクトの場所のインジケーションとして使用されてもよい。そのような実施形態では、ブロック2760における処理は、随意に、省略されてもよい。代替として、または加えて、モデルは、ユーザが、その手を用いて、コマンドまたは仮想オブジェクトとの相互作用を示すジェスチャ等、ジェスチャを行ったかどうかを決定するために使用されてもよい。故に、プロセッサは、ブロック2760において、決定された手のモデル情報を使用して、手のジェスチャを認識してもよい。本ジェスチャ認識は、米国特許公開第2016/0026253号(手の追跡およびXRシステム内の画像情報から入手された手についての情報の使用に関連して教示する、全てに関して、参照することによって本明細書に組み込まれる)に説明される手の追跡方法を使用して実施されてもよい。
【0360】
いくつかの実施形態では、ジェスチャは、立体視深度情報を伴わずに、認識されてもよい。ジェスチャは、例えば、単眼画像情報に基づいて構成される手のモデルに基づいて、認識されてもよい。故に、いくつかの実施形態では、ジェスチャ認識は、立体視深度情報が利用不可能である場合、周辺視野2160aおよび2160b内の手に関してさえ実施されてもよい。代替として、または加えて、手の追跡が、手の場所のより精密な決定を要求し得る、他の機能(例えば、仮想オブジェクトをユーザの手と現実的に相互作用するように現れるようにレンダリングする)ではなく、ジェスチャ認識のために実施される場合、単眼画像情報が、使用されてもよい。そのような実施形態では、異なるカメラが、ブロック2730aおよび2740bにおいて、有効にされ、および/または画像情報を収集するために使用されてもよい。
【0361】
いくつかの実施形態では、手の追跡プロセスの連続反復が、システムが動作するにつれて、実施されてもよい。ジェスチャが、例えば、手の位置の連続決定によって識別されてもよい。代替として、または加えて、連続反復は、ユーザの手の構成されたモデルが、その手の位置が変化するにつれて、実際の手の位置に合致するように、実施されてもよい。同一または異なる結像技法が、各反復において使用されてもよい。
【0362】
いくつかの実施形態では、画像情報のソースが、ブロック2720において、手のモデルから成り立つ用途および/または特定の追跡方法論を使用して実施される追跡の品質を含む、1つ以上の要因に基づいて、反復のために選択されてもよい。追跡の品質、例えば、ブロック2650(
図26)に関連して上記に説明されるようなアプローチを使用して決定されてもよく、技法の選択も、同様に上記に説明されるように、所望の品質メトリックを達成する、他のコンピューティングリソースに対して最小量の処理、電力消費を要求するように行われてもよい。
【0363】
故に、
図27は、いったん反復が行われると、方法2700が、ブロック2720に戻り、処理アプローチが、さらなる反復のために選択されてもよいことを示す。これらの代替アプローチは、立体視深度情報の代わりに、またはそれに加え、画像情報を使用してもよい。各反復では、手の3Dモデルが、手の運動を反映させるように更新されてもよい。
【0364】
低処理を要求する、アプローチは、イベント情報に基づいて、手の位置を追跡するものである。そのようなアプローチは、ブロック2720において、例えば、好適な正確度の手のモデルが、前の反復における立体視画像情報の使用等を通して、すでに算出されているシナリオで選択されてもよい。そのようなアプローチは、ブロック2730bへの分岐によって実装されてもよい。ブロック2730bでは、プロセッサは、DVSカメラ2120のDVS機能性を、本機能性がすでに有効にされていないとき、有効にしてもよい。ブロック2740bでは、プロセッサは、DVSカメラ2120によって検出されたイベントに応答して、画像データを入手してもよい。いくつかの実施形態では、DVSカメラ2120は、視野2121内の潜在的手の場所を包含する、画像センサ内のパッチに関する情報を入手するように構成されてもよい。パッチ内の画像データの変化(例えば、潜在的手の移動によって生じる)は、イベントをトリガし得る。イベントに応答して、DVSカメラ2120は、画像データを入手してもよい。ユーザの手の運動に関する本情報は、次いで、ブロック2750bにおいて、手のモデルを更新するために使用されてもよい。更新は、ブロック2750aに関して上記に説明されるような技法を使用して実施されてもよい。そのような更新は、モデルによって示されるような手の以前に算出された位置およびヒトの手の運動に関する制約を含む、他の情報を考慮してもよい。
【0365】
手のモデルは、いったん更新されると、ブロック2760において、仮想オブジェクトとユーザの手との間の相互作用を決定し、および/またはジェスチャを認識することを含む、ブロック2750aにおいて算出された初期の手のモデルと同一方法において、システムによって使用されてもよい。
【0366】
いくつかのシナリオでは、イベントベースの画像情報は、手のモデルを更新するためにさえ不適正である場合がある。そのようなシナリオは、例えば、ユーザの手がDVSカメラ2120の視野を充填する場合に生じ得る。そのようなシナリオでは、イベント情報ではなく、手のモデルは、カメラ2140からの色情報を使用して等、色情報に基づいて更新されてもよい。そのようなアプローチは、ブロック2720における処理が、DVSカメラ2120の視野内の画像が、所定の閾値を下回る強度変動を有すること、またはイベントベースの追跡のために十分に明確に異なる特徴の欠如を示す、他の特性を検出するとき、ブロック2730dへの分岐によって実装されてもよい。ブロック2730dでは、プロセッサは、DVSカメラ2120のDVS機能性を、本機能性がすでに無効にされていないとき、無効にしてもよい。カメラ2140が、色情報を入手するように有効にされてもよい。
【0367】
ブロック2740dでは、プロセッサは、カラー画像情報を使用して、ユーザの手の運動を識別してもよい。上記のように、ユーザの手の運動に関する本情報は、次いで、ブロック2750bにおいて、手のモデルを更新するために使用されてもよい。
【0368】
いくつかのシナリオでは、色情報は、手運動を追跡するために、利用不可能である、または不必要である場合がある。例えば、手が、周辺視野2160a内にあるとき、色情報は、利用不可能であり得るが、DVS機能性が無効にされるモードで動作する、DVSカメラ2120を用いて取得される強度画像情報が、利用可能であり得、好適であり得る。代替として、イベントベースの追跡が閾値を下回る品質メトリックを生産する、いくつかのシナリオでは、グレースケール画像情報を用いた追跡が、好適性の閾値を上回る品質メトリックを生産し得る。そのようなアプローチは、ブロック2730cへの分岐によって実装されてもよい。ブロック2730cでは、カメラ2140が、すでに有効にされていないとき、プロセッサは、カメラ2140を有効にしてもよい。プロセッサはまた、カメラ2140のフレームレートを手の追跡のために十分なレート(例えば、40Hz~120Hzのフレームレート)に増加させてもよい。
【0369】
ブロック2740dでは、プロセッサは、カメラ2140を使用して、画像データを入手することができる。他のシナリオでは、DVSカメラ2120は、強度情報を収集するように構成されてもよく、カメラ2140の代わりに、単眼画像情報を収集するために使用されてもよい。どのカメラが使用されるかどうかにかかわらず、完全フレーム情報が、使用されてもよい、またはパッチ追跡が、上記に説明されるように、処理される画像情報の量を低減させるために使用されてもよい。
【0370】
図27は、ブロック2720における処理が、手を追跡するために、3つの代替アプローチ間で選択する、方法を図示する。アプローチは、低処理または低電力消費等の1つ以上の基準を満たす程度に従って順序付けられてもよい。ブロック2720における処理は、検出されたシナリオ(例えば、手の場所)において動作可能であって、閾値を満たす品質メトリックを生産する、順序における第1のアプローチを選択することによって、処理アプローチを選択してもよい。異なるまたは付加的処理技法が、含まれてもよい。例えば、深度を示す画像情報を提供する、プレノプティックカメラを伴う、XRシステムに関して、アプローチは、その深度情報の単独の使用または任意の他のデータソースとの組み合わせに基づいてもよい。別の変形例として、手の特徴は、ブロック2640b(
図26)に関連して上記に説明されるように、色補助DVS追跡を使用して追跡されてもよい。
【0371】
選択されるアプローチまたはそこからそのような選択が行われるアプローチのセットにかかわらず、手のモデルは、更新され、ブロック2760において、ユーザの手と相互作用する仮想オブジェクトをレンダリングする、またはジェスチャを検出する等のために、XR機能のために使用されてもよい。ブロック2760後、方法2700は、ブロック2799において終了してもよい。しかしながら、手の追跡は、XRシステムの動作の間、持続的に生じ得る、または手が1つ以上のカメラの視野内にある、インターバルの間、生じ得ることを理解されたい。故に、いったん方法2700の1回の反復が、完了されると、別の反復が、実施されてもよく、本プロセスは、手の追跡が実施されている、インターバルにわたって、実施されてもよい。いくつかの実施形態では、1回の反復において使用される情報は、後続反復において使用されてもよい。種々の実施形態では、例えば、プロセッサは、以前に検出された手の場所に基づいて、ユーザの手の更新された場所を推定するように構成されてもよい。例えば、プロセッサは、前の場所およびユーザの手の速度に基づいて、ユーザの手が次に来るであろう場所を推定してもよい。そのような情報は、パッチ追跡技法に関連して上記に説明されるように、オブジェクトの場所を検出するために処理される、画像情報の量を絞り込むために使用されてもよい。
【0372】
したがって、いくつかの実施形態のいくつかの側面を説明したが、種々の改変、修正、および改良が、当業者に容易に想起されるであろうことを理解されたい。
【0373】
一実施例として、実施形態は、拡張(AR)環境に関連して説明される。本明細書に説明される技法のいくつかまたは全ては、MR環境、またはより一般的に、他のXR環境において適用されてもよいことを理解されたい。
【0374】
また、1つのパッチが、画像アレイに適用され、1つの移動可能なオブジェクトについての画像情報の選択的出力を制御する、画像アレイの実施形態が、説明される。物理的実施形態内には、1つを上回る移動可能なオブジェクトが存在してもよいことを理解されたい。さらに、いくつかの実施形態では、移動可能なオブジェクトが位置する場所以外の領域内の画像情報の頻繁な更新を選択的に取得することが望ましくあり得る。例えば、パッチは、仮想オブジェクトがレンダリングされるべき、物理的世界の領域についての画像情報を選択的に取得するように設定されてもよい。故に、いくつかの画像センサは、それらのパッチの軌道を追跡するための回路網の有無にかかわらず、2つ以上のパッチに関する情報を選択的に提供することが可能であり得る。
【0375】
なおもさらなる実施例として、画像アレイは、入射光の大きさに関連する情報を出力するものとして説明される。大きさは、光周波数のスペクトルを横断した電力の表現であり得る。そのスペクトルは、白黒カメラ等における可視光の任意の色に対応する周波数において、比較的に広捕捉エネルギーであり得る。代替として、スペクトルは、可視光の単色に対応する、狭いものであってもよい。画像アレイ上に入射する光を特定の色の光に限定するためのフィルタが、本目的のために使用されてもよい。ピクセルが、具体的色の光を受け取るように限定される場合、異なるピクセルは、異なる色に限定されてもよい。そのような実施形態では、同一色に敏感であるピクセルの出力は、ともに処理されてもよい。
【0376】
画像アレイ内のパッチを設定し、次いで、着目オブジェクトのためのパッチを更新するためのプロセスが、説明された。本プロセスは、例えば、画像センサの視野に進入するにつれて、移動可能なオブジェクト毎に、実施されてもよい。パッチは、着目オブジェクトが、パッチがもはや追跡されないように、または画像情報がパッチのために出力されないように、視野から退出すると、解除されてもよい。随時、パッチは、パッチと関連付けられるオブジェクトの場所を決定し、パッチの位置をその場所に対応するように設定すること等によって、更新されてもよいことを理解されたい。類似調節は、パッチの算出された軌道に行われることができる。オブジェクトのための運動ベクトルおよび/または画像センサの運動ベクトルが、他のセンサ情報から算出され、パッチ追跡のために画像センサまたは他のコンポーネントの中にプログラムされる値をリセットするために使用されてもよい。
【0377】
例えば、オブジェクトの場所、運動、および他の特性は、広角ビデオカメラまたは立体視情報を伴う一対のビデオカメラの出力を分析することによって、決定されてもよい。これらの他のセンサからのデータは、世界モデルを更新するために使用されてもよい。更新に関連して、パッチ位置および/または軌道情報が、更新されてもよい。そのような更新は、パッチの位置がパッチ追跡エンジンによって更新されるより低いレートで生じ得る。パッチ追跡エンジンは、例えば、約1~30回/秒のレートで、新しいパッチ位置を算出してもよい。他の情報に基づく、パッチ位置の更新は、1回/秒~約1回/30秒インターバル等のより低速のレートで生じ得る。
【0378】
変形例のなおもさらなる実施例として、
図2は、遠隔処理モジュールと別個に頭部搭載型ディスプレイを伴う、システムを示す。本明細書に説明されるような画像センサは、システムのコンパクトな設計につながり得る。そのようなセンサは、より少ないデータを生成し、これは、ひいては、より低い処理要件およびより少ない電力消費につながる。処理および電力のより少ない必要性は、バッテリのサイズを低減させること等によって、サイズ低減を可能にする。故に、いくつかの実施形態では、拡張現実システム全体が、遠隔処理モジュールを伴わずに、頭部搭載型ディスプレイ内に統合されてもよい。頭部搭載型ディスプレイは、一対のゴーグルとして構成されてもよい、または
図2に示されるように、サイズおよび形状が一対の眼鏡に類似してもよい。
【0379】
さらに、画像センサが可視光に応答する、実施形態が、説明される。本明細書に説明される技法は、可視光を伴う動作に限定されないことを理解されたい。それらは、代替として、または加えて、IR光またはUV等のスペクトルの他の部分における「光」に応答してもよい。さらに、本明細書に説明されるような画像センサは、自然に生じる光に応答する。代替として、または加えて、センサは、照明源を伴うシステム内で使用されてもよい。いくつかの実施形態では、画像センサの感度は、照明源が光を放出する、スペクトルの部分に対して調整されてもよい。
【0380】
別の実施例として、変化が画像センサから出力されるべきである、画像アレイの選択された領域は、画像分析が実施されるべき「パッチ」を規定することによって規定されることが説明される。しかしながら、パッチおよび選択された領域は、異なるサイズであってもよいことを理解されたい。選択された領域は、例えば、予測される軌道から逸脱する、追跡されている画像内のオブジェクトの運動を考慮し、および/またはパッチの縁の周囲の処理を可能にするために、パッチより大きくてもよい。
【0381】
さらに、パス可能世界モデル生成、オブジェクト追跡、頭部姿勢追跡、および手の追跡等の複数のプロセスが、説明される。これら、およびいくつかの実施形態では、他のプロセスは、同一または異なるプロセッサによって実行されてもよい。プロセッサは、これらのプロセスの同時動作を有効にするように動作されてもよい。しかしながら、各プロセスは、異なるレートで実施されてもよい。異なるプロセスが、異なるレートにおいて、画像センサまたは他のセンサからのデータを要求する場合、センサデータの入手は、その動作のために適切なレートにおいて、各プロセスにデータを提供するために、別のプロセス等によって管理されてもよい。
【0382】
そのような改変、修正、および改良は、本開示の一部であるように意図され、本開示の精神および範囲内であるように意図される。例えば、いくつかの実施形態では、画像センサのピクセルのカラーフィルタ102は、別個のコンポーネントではなく、代わりに、ピクセルサブアレイ100の他のコンポーネントのうちの1つの中に組み込まれてもよい。例えば、到着角/位置強度コンバータおよびカラーフィルタの両方を伴う、単一ピクセルを含む、実施形態では、到着角/強度コンバータは、特定の波長をフィルタリングする材料から形成される、透過性光学コンポーネントであってもよい。
【0383】
いくつかの実施形態によると、ウェアラブルディスプレイシステムであって、フレームと、フレームに機械的に結合される、第1のカメラであって、第1のカメラに関する第1の視野内の強度変化基準を充足させる、画像データを出力するように構成可能である、第1のカメラと、第1のカメラに動作可能に結合される、プロセッサであって、オブジェクトが第1の視野内にあるかどうかを決定し、第1の視野の1つ以上の部分に関して第1のカメラから受信された画像データを使用して、オブジェクトの運動を追跡するように構成される、プロセッサとを備える、ウェアラブルディスプレイシステムが、提供されてもよい。
【0384】
いくつかの実施形態では、オブジェクトは、手であってもよく、オブジェクトの運動を追跡するステップは、強度変化基準を充足させる、第1のカメラからの画像データに基づいて、形状制約および/または運動制約を含む、手のモデルの対応する部分を更新するステップを含んでもよい。
【0385】
いくつかの実施形態では、プロセッサはさらに、第1のカメラに、画像データ入手をオブジェクトに対応する第1の視野の1つ以上のパッチに制限するように命令を提供するように構成されてもよい。
【0386】
いくつかの実施形態では、第2のカメラは、第1の視野と少なくとも部分的に重複する、第2の視野を提供するように、フレームに機械的に結合されてもよく、プロセッサはさらに、オブジェクトが第1の視野に関するオクルージョン基準を充足させるかどうかを決定し、第2のカメラを有効にする、または第2のカメラのフレームレートを増加させ、第2のカメラを使用して、オブジェクトに関する深度情報を決定し、決定された深度情報を使用して、オブジェクトを追跡するように構成されてもよい。
【0387】
いくつかの実施形態では、深度情報は、第1のカメラおよび第2のカメラによって出力される画像を使用して立体視的に決定されてもよい。
【0388】
いくつかの実施形態では、深度情報は、第2のカメラによって出力されるライトフィールド情報を使用して決定されてもよい。
【0389】
いくつかの実施形態では、オブジェクトは、手であってもよく、手の運動を追跡するステップは、第1の視野内の点を選択するステップと、選択された点と深度情報を関連付けるステップと、選択された点を使用して、深度マップを生成するステップと、深度マップの部分を、形状制約および運動制約の両方を含む、手のモデルの対応する部分に合致させるステップとによって、決定された深度情報を使用するステップを含んでもよい。
【0390】
いくつかの実施形態では、オブジェクトの運動を追跡するステップは、世界モデル内のオブジェクトの場所を更新するステップを含んでもよく、更新間のインターバルは、1ms~15msの持続時間であってもよい。
【0391】
いくつかの実施形態では、第2のカメラは、第1の視野と少なくとも部分的に重複する、第2の視野を提供するように、フレームに機械的に結合されてもよく、プロセッサは、第2のカメラに動作可能に結合され、第1のカメラおよび第2のカメラによって出力される画像を使用して、世界モデルを作成し、第2のカメラによって出力されるライトフィールド情報を使用して、世界モデルを更新するようにさらに構成されてもよい。
【0392】
いくつかの実施形態では、プロセッサは、フレームに機械的に結合されてもよい。
【0393】
いくつかの実施形態では、フレームに機械的に結合される、ディスプレイデバイスは、プロセッサを備えてもよい。
【0394】
いくつかの実施形態では、ローカルデータ処理モジュールが、プロセッサを備えてもよく、ローカルデータ処理モジュールは、通信リンクを通して、ディスプレイデバイスに動作可能に結合され、ディスプレイデバイスは、フレームに機械的に結合される。
【0395】
いくつかの実施形態によると、ウェアラブルディスプレイシステムであって、フレームと、フレームに機械的に結合される、2つのカメラであって、強度変化基準を充足させる、画像データを出力するように構成可能である、1つの第1のカメラと、1つの第2のカメラを備え、第1のカメラおよび第2のカメラは、中心視野の重複ビューを提供するように位置付けられる、2つのカメラと、第1のカメラおよび第2のカメラに動作可能に結合される、プロセッサとを備える、ウェアラブルディスプレイシステムが、提供されてもよい。
【0396】
いくつかの実施形態では、プロセッサはさらに、オブジェクトが中心視野内にあることを決定し、第1のカメラによって出力される画像データを使用して、オブジェクトを追跡し、オブジェクト追跡が品質基準を充足させるかどうかを決定し、第2のカメラを有効にし、または第2のカメラのフレームレートを増加させ、オブジェクト追跡が品質基準を充足させないとき、第1のカメラおよび第2のカメラを使用して、オブジェクトを追跡するように構成されてもよい。
【0397】
いくつかの実施形態では、第1のカメラは、強度変化基準を充足させる、画像フレームまたは画像データを選択的に出力するように構成可能であってもよく、プロセッサはさらに、第1のカメラに、画像データ入手をオブジェクトに対応する中心視野の1つ以上の部分に制限するように命令を提供するように構成されてもよく、第1のカメラによって出力される画像データは、中心視野の1つ以上の部分に関するものであってもよい。
【0398】
いくつかの実施形態では、第1のカメラは、強度変化基準を充足させる、画像フレームまたは画像データを選択的に出力するように構成可能であってもよく、第2のカメラは、プレノプティックカメラを備えてもよく、プロセッサはさらに、オブジェクトが深度基準を充足させるかどうかを決定するように構成されてもよく、第1のカメラおよび第2のカメラを使用して、オブジェクトを追跡するステップは、深度基準が満たされるとき、プレノプティックカメラから取得されるライトフィールド情報を使用して、オブジェクトを追跡し、深度基準が満たされないとき、第1のカメラおよび第2のカメラによって出力される画像から立体投影的に決定される深度情報を使用して、オブジェクトを追跡するステップを含んでもよい。
【0399】
いくつかの実施形態では、プレノプティックカメラは、透過回折マスクを含んでもよい。
【0400】
いくつかの実施形態では、プレノプティックカメラは、90~140度の水平視野を有してもよく、中心視野は、40~80度に延在する。
【0401】
いくつかの実施形態では、第1のカメラは、グレースケール画像を提供してもよく、第2のカメラは、カラー画像を提供してもよい。
【0402】
いくつかの実施形態では、第1のカメラは、強度変化基準を充足させる、画像フレームまたは画像データを選択的に出力するように構成可能であってもよく、第1のカメラは、グローバルシャッタを備え、第2のカメラは、ロールシャッタを備え、プロセッサはさらに、第1のカメラを使用して入手された第1の画像と第2のカメラを使用して入手された第2の画像を比較し、第2の画像の少なくとも一部内の歪みを検出し、第2の画像の少なくとも一部を調節し、検出された歪みを補償するように構成されてもよい。
【0403】
いくつかの実施形態では、第1のカメラを使用して入手された第1の画像と第2のカメラを使用して入手された第2の画像を比較するステップは、第1の画像と第2の画像との間のライン毎比較を実施するステップを含んでもよい。
【0404】
いくつかの実施形態では、プロセッサは、フレームに機械的に結合されてもよい。
【0405】
いくつかの実施形態では、フレームは、プロセッサに機械的に結合される、ディスプレイデバイスを備える。
【0406】
いくつかの実施形態では、ローカルデータ処理モジュールが、プロセッサを備えてもよく、ローカルデータ処理モジュールは、通信リンクを通して、ディスプレイデバイスに動作可能に結合され、フレームは、ディスプレイデバイスを備えてもよい。
【0407】
いくつかの実施形態では、プロセッサはさらに、第1のカメラに関するオクルージョン基準の充足を決定し、第2のカメラを有効にし、またはそのフレームレートを増加させ、第2のカメラによって出力される画像データを使用して、オブジェクトを追跡するように構成されてもよい。
【0408】
いくつかの実施形態では、オクルージョン基準は、オブジェクトが第1のカメラに関する視野の閾値量を上回って占有するとき、充足され得る。
【0409】
いくつかの実施形態では、オブジェクトは、環境内の定常オブジェクトであってもよい。
【0410】
いくつかの実施形態では、オブジェクトは、ウェアラブルディスプレイシステムのユーザの手であってもよい。
【0411】
いくつかの実施形態では、ウェアラブルディスプレイシステムはさらに、フレームに機械的に結合される、IRエミッタを備える。
【0412】
いくつかの実施形態では、IRエミッタは、IR照明を提供するように、選択的にアクティブ化されるように構成される。
【0413】
さらに、本開示の利点が示されるが、本開示の全ての実施形態が、全ての説明される利点を含むわけではないことを理解されたい。いくつかの実施形態は、本明細書で有利として説明される任意の特徴を実装しなくてもよい。故に、前述の説明および図面は、一例にすぎない。
【0414】
本開示の前述の実施形態は、多数の方法のいずれかにおいて実装されることができる。例えば、実施形態は、ハードウェア、ソフトウェア、またはそれらの組み合わせを使用して実装されてもよい。ソフトウェア内に実装されるとき、ソフトウェアコードが、単一コンピュータ内に提供される、または複数のコンピュータ間に分散されるかどうかにかかわらず、任意の好適なプロセッサまたはプロセッサの集合上で実行されることができる。そのようなプロセッサは、いくつか挙げると、CPUチップ、GPUチップ、マイクロプロセッサ、マイクロコントローラ、またはコプロセッサ等、当技術分野において公知の市販の集積回路コンポーネントを含む、集積回路コンポーネント内の1つ以上のプロセッサとともに、集積回路として実装されてもよい。いくつかの実施形態では、プロセッサは、ASIC等のカスタム回路内に、またはプログラマブル論理デバイスを構成することから生じる半カスタム回路内に実装されてもよい。さらなる代替として、プロセッサは、市販、半カスタム、またはカスタムかどうかにかかわらず、より大きい回路または半導体デバイスの一部であってもよい。具体的実施例として、いくつかの市販のマイクロプロセッサは、1つまたはそれらのコアのサブセットがプロセッサを構成し得るように、複数のコアを有する。但し、プロセッサは、任意の好適なフォーマットにおける回路を使用して実装されてもよい。
【0415】
さらに、コンピュータは、ラックマウント式コンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、またはタブレットコンピュータ等のいくつかの形態のうちのいずれかで具現化され得ることを理解されたい。加えて、コンピュータは、携帯情報端末(PDA)、スマートフォン、または任意の好適な携帯用または固定電子デバイスを含む、概してコンピュータと見なされないが好適な処理能力を伴う、デバイスで具現化されてもよい。
【0416】
また、コンピュータは、1つ以上の入力および出力デバイスを有してもよい。これらのデバイスは、とりわけ、ユーザインターフェースを提示するために使用されることができる。ユーザインターフェースを提供するために使用され得る、出力デバイスの実施例は、出力の視覚的提示のためのプリンタまたはディスプレイ画面、または出力の可聴提示のためのスピーカまたは他の音生成デバイスを含む。ユーザインターフェースのために使用され得る、入力デバイスの実施例は、キーボード、およびマウス、タッチパッド、およびデジタル化タブレット等のポインティングデバイスを含む。別の実施例として、コンピュータは、発話認識を通して、または他の可聴フォーマットにおいて、入力情報を受信してもよい。図示される実施形態では、入力/出力デバイスは、コンピューティングデバイスと物理的に別個として図示される。しかしながら、いくつかの実施形態では、入力および/または出力デバイスは、プロセッサと同一ユニットまたはコンピューティングデバイスの他の要素の中に物理的に統合されてもよい。例えば、キーボードは、タッチスクリーン上のソフトキーボードとして実装され得る。いくつかの実施形態では、入力/出力デバイスは、コンピューティングデバイスから完全に接続解除され、無線接続を通して機能的に統合されてもよい。
【0417】
そのようなコンピュータは、企業ネットワークまたはインターネット等、ローカルエリアネットワークまたは広域ネットワークとしての形態を含む、任意の好適な形態の1つ以上のネットワークによって相互接続されてもよい。そのようなネットワークは、任意の好適な技術に基づいてもよく、任意の好適なプロトコルに従って動作してもよく、無線ネットワーク、有線ネットワーク、または光ファイバネットワークを含んでもよい。
【0418】
また、本明細書で概説される種々の方法およびプロセスは、種々のオペレーティングシステムまたはプラットフォームのうちのいずれか1つを採用する、1つ以上のプロセッサ上で実行可能である、ソフトウェアとしてコード化されてもよい。加えて、そのようなソフトウェアは、いくつかの好適なプログラミング言語および/またはプログラミングまたはスクリプト作成ツールのうちのいずれかを使用して、書き込まれてもよく、また、フレームワークまたは仮想マシン上で実行される実行可能機械言語コードまたは中間コードとしてコンパイルされてもよい。
【0419】
本点において、本開示は、1つ以上のコンピュータまたは他のプロセッサ上で実行されるときに、上記で議論される本開示の種々の実施形態を実装する方法を行う、1つ以上のプログラムで符号化される、コンピュータ可読記憶媒体(または複数のコンピュータ可読媒体)(例えば、コンピュータメモリ、1つ以上のフロッピー(登録商標)ディスク、コンパクトディスク(CD)、光学ディスク、デジタルビデオディスク(DVD)、磁気テープ、フラッシュメモリ、フィールドプログラマブルゲートアレイまたは他の半導体デバイス内の回路構成、または他の有形コンピュータ記憶媒体)として具現化されてもよい。前述の実施例から明白なように、コンピュータ可読記憶媒体は、非一過性形態においてコンピュータ実行可能命令を提供するために十分な時間の間、情報を留保し得る。そのようなコンピュータ可読記憶媒体または複数の媒体は、上記に記載されるように、その上に記憶される1つまたは複数のプログラムが、本開示の種々の側面を実装するように1つ以上の異なるコンピュータまたは他のプロセッサ上にロードされ得るように、トランスポータブルであることができる。本明細書で使用されるように、用語「コンピュータ可読記憶媒体」は、製造(すなわち、製造品)または機械と見なされ得るコンピュータ可読媒体のみを包含する。いくつかの実施形態では、本開示は、伝搬信号等のコンピュータ可読記憶媒体以外のコンピュータ可読媒体として具現化されてもよい。
【0420】
用語「プログラム」または「ソフトウェア」は、上記に記載されるように、本開示の種々の側面を実装するようにコンピュータまたは他のプロセッサをプログラムするために採用され得る、任意のタイプのコンピュータコードまたはコンピュータ実行可能命令のセットを指すために、一般的意味において本明細書で使用される。加えて、本実施形態の一側面によると、本開示の方法を行うように実行されると、1つ以上のコンピュータプログラムは、単一のコンピュータまたはプロセッサ上に常駐する必要はないが、本開示の種々の側面を実装するように、いくつかの異なるコンピュータまたはプロセッサの間でモジュール様式において分散され得ることを理解されたい。
【0421】
コンピュータ実行可能命令は、1つ以上のコンピュータまたは他のデバイスによって実行される、プログラムモジュール等の多くの形態であってもよい。概して、プログラムモジュールは、特定のタスクを行う、または特定の抽象データタイプを実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造等を含む。典型的には、プログラムモジュールの機能性は、種々の実施形態では、所望に応じて、組み合わせられる、または分散されてもよい。
【0422】
また、データ構造は、任意の好適な形態でコンピュータ可読媒体に記憶されてもよい。例証を簡単にするために、データ構造は、データ構造内の場所を通して関係付けられるフィールドを有することが示されてもよい。そのような関係は、同様に、フィールド間の関係を伝えるコンピュータ可読媒体内の場所を伴うフィールドのために記憶装置を割り当てることによって、達成されてもよい。しかしながら、ポインタ、タグ、またはデータ要素間の関係を確立する他の機構の使用を通すことを含む、任意の好適な機構が、データ構造のフィールド内の情報の間の関係を確立するために使用されてもよい。
【0423】
本開示の種々の側面は、単独で、組み合わせて、または前述の実施形態に具体的に議論されない種々の配列において使用されてもよく、したがって、その用途は、前述の説明に記載される、または図面に図示されるコンポーネントの詳細および配列に限定されない。例えば、一実施形態に説明される側面は、他の実施形態に説明される側面と任意の様式で組み合わせられてもよい。
【0424】
また、本開示は、その実施例が提供されている、方法として具現化されてもよい。方法の一部として行われる作用は、任意の好適な方法で順序付けられてもよい。故に、例証的実施形態では、連続作用として示されるが、いくつかの作用を同時に行うことを含み得る、作用が図示されるものと異なる順序で行われる、実施形態が構築されてもよい。
【0425】
請求項要素を修飾するための請求項における「第1の」、「第2の」、「第3の」等の順序の用語の使用は、単独では、別の要素と比べた1つの請求項要素のいかなる優先順位、先行、または順序、または方法の行為が行われる時間順序も含意しないが、順序の用語は、請求項要素を区別するために、(順序の用語の使用のためであるが)ある名前を有する1つの請求項要素と、同一の名前を有する別の要素を区別する標識としてのみ使用される。
【0426】
また、本明細書で使用される語句および専門用語は、説明目的のためのものであって、限定と見なされるべきではない。本明細書の「~を含む」、「~を備える」、または「~を有する」、「~を含有する」、「~を伴う」、およびその変形の使用は、その後列挙されたアイテムおよびその均等物および付加的アイテムを包含することを意味する。