実施例の以下の説明では、本明細書の一部を形成し、例証として、実践され得る具体的実施例が示される、付随の図面を参照する。他の実施例も、使用されることができ、構造変更が、開示される実施例の範囲から逸脱することなく、行われることができることを理解されたい。
複合現実環境
全ての人々と同様に、複合現実システムのユーザは、実環境内に存在する、すなわち、「実世界」の3次元部分と、そのコンテンツの全てとが、ユーザによって知覚可能である。例えば、ユーザは、通常の人間の感覚、すなわち、光景、音、感触、味、臭いを使用して、実環境を知覚し、実環境内で自身の身体を移動させることによって、実環境と相互作用する。実環境内の場所は、座標空間内の座標として説明されることができる。例えば、座標は、緯度、経度、および海抜に対する高度、基準点からの3つの直交次元における距離、または他の好適な値を含むことができる。同様に、ベクトルは、座標空間内の方向および大きさを有する、量を説明することができる。
コンピューティングデバイスは、例えば、デバイスと関連付けられたメモリ内に、仮想環境の表現を維持することができる。本明細書で使用されるように、仮想環境は、3次元空間の算出表現である。仮想環境は、任意のオブジェクトの表現、アクション、信号、パラメータ、座標、ベクトル、またはその空間と関連付けられた他の特性を含むことができる。いくつかの実施例では、コンピューティングデバイスの回路(例えば、プロセッサ)は、仮想環境の状態を維持および更新することができる。すなわち、プロセッサは、第1の時間t0において、仮想環境と関連付けられたデータおよび/またはユーザによって提供される入力に基づいて、第2の時間t1における仮想環境の状態を決定することができる。例えば、仮想環境内のオブジェクトが、時間t0において、第1の座標に位置し、あるプログラムされた物理的パラメータ(例えば、質量、摩擦係数)を有し、ユーザから受信された入力が、力がある方向ベクトルにおいてオブジェクトに印加されるべきであることを示す場合、プロセッサは、運動学の法則を適用し、基本力学を使用して、時間t1におけるオブジェクトの場所を決定することができる。プロセッサは、仮想環境について既知の任意の好適な情報および/または任意の好適な入力を使用して、時間t1における仮想環境の状態を決定することができる。仮想環境の状態を維持および更新する際、プロセッサは、仮想環境内の仮想オブジェクトの作成および削除に関連するソフトウェア、仮想環境内の仮想オブジェクトまたはキャラクタの挙動を定義するためのソフトウェア(例えば、スクリプト)、仮想環境内の信号(例えば、オーディオ信号)の挙動を定義するためのソフトウェア、仮想環境と関連付けられたパラメータを作成および更新するためのソフトウェア、仮想環境内のオーディオ信号を生成するためのソフトウェア、入力および出力をハンドリングするためのソフトウェア、ネットワーク動作を実装するためのソフトウェア、アセットデータ(例えば、仮想オブジェクトを経時的に移動させるためのアニメーションデータ)を適用するためのソフトウェア、または多くの他の可能性を含む、任意の好適なソフトウェアを実行することができる。
ディスプレイまたはスピーカ等の出力デバイスは、仮想環境のいずれかまたは全ての側面をユーザに提示することができる。例えば、仮想環境は、ユーザに提示され得る、仮想オブジェクト(無生物オブジェクト、人々、動物、光等の表現を含み得る)を含んでもよい。プロセッサは、仮想環境のビュー(例えば、原点座標、視軸、および錐台を伴う、「カメラ」に対応する)を決定し、ディスプレイに、そのビューに対応する仮想環境の視認可能場面をレンダリングすることができる。任意の好適なレンダリング技術が、本目的のために使用されてもよい。いくつかの実施例では、視認可能場面は、仮想環境内のいくつかの仮想オブジェクトのみを含み、ある他の仮想オブジェクトを除外してもよい。同様に、仮想環境は、ユーザに1つ以上のオーディオ信号として提示され得る、オーディオ側面を含んでもよい。例えば、仮想環境内の仮想オブジェクトは、オブジェクトの場所座標から生じる音を生成してもよい(例えば、仮想キャラクタが、発話する、または音効果を生じさせ得る)、または仮想環境は、特定の場所と関連付けられる場合とそうではない場合がある、音楽キューまたは周囲音と関連付けられてもよい。プロセッサは、「聴取者」座標に対応するオーディオ信号、例えば、仮想環境内の音の合成に対応し、聴取者座標において聴取者によって聞こえるであろうオーディオ信号をシミュレートするように混合および処理される、オーディオ信号を決定し、ユーザに、1つ以上のスピーカを介して、オーディオ信号を提示することができる。
仮想環境は、算出構造としてのみ存在するため、ユーザは、直接、通常の感覚を使用して、仮想環境を知覚することができない。代わりに、ユーザは、例えば、ディスプレイ、スピーカ、触覚的出力デバイス等によって、ユーザに提示されるように、間接的にのみ、仮想環境を知覚することができる。同様に、ユーザは、直接、仮想環境に触れる、それを操作する、または別様に、それと相互作用することができないが、入力データを、入力デバイスまたはセンサを介して、デバイスまたはセンサデータを使用して、仮想環境を更新し得る、プロセッサに提供することができる。例えば、カメラセンサは、ユーザが仮想環境のオブジェクトを移動させようとしていることを示す、光学データを提供することができ、プロセッサは、そのデータを使用して、仮想環境内において、適宜、オブジェクトを応答させることができる。
複合現実システムは、ユーザに、例えば、透過性ディスプレイおよび/または1つ以上のスピーカ(例えば、ウェアラブル頭部デバイスの中に組み込まれ得る)を使用して、実環境および仮想環境の側面を組み合わせる、複合現実環境(「MRE」)を提示することができる。いくつかの実施形態では、1つ以上のスピーカは、ウェアラブル頭部デバイスの外部にあってもよい。本明細書で使用されるように、MREは、実環境および対応する仮想環境の同時表現である。いくつかの実施例では、対応する実および仮想環境は、単一座標空間を共有する。いくつかの実施例では、実座標空間および対応する仮想座標空間は、変換行列(または他の好適な表現)によって相互に関連する。故に、単一座標(いくつかの実施例では、変換行列とともに)は、実環境内の第1の場所と、また、仮想環境内の第2の対応する場所とを定義し得、その逆も同様である。
MREでは、(例えば、MREと関連付けられた仮想環境内の)仮想オブジェクトは、(例えば、MREと関連付けられた実環境内の)実オブジェクトに対応し得る。例えば、MREの実環境が、実街灯柱(実オブジェクト)をある場所座標に含む場合、MREの仮想環境は、仮想街灯柱(仮想オブジェクト)を対応する場所座標に含んでもよい。本明細書で使用されるように、実オブジェクトは、その対応する仮想オブジェクトと組み合わせて、ともに「複合現実オブジェクト」を構成する。仮想オブジェクトが対応する実オブジェクトに完璧に合致または整合することは、必要ではない。いくつかの実施例では、仮想オブジェクトは、対応する実オブジェクトの簡略化されたバージョンであることができる。例えば、実環境が、実街灯柱を含む場合、対応する仮想オブジェクトは、実街灯柱と概ね同一高さおよび半径の円筒形を含んでもよい(街灯柱が略円筒形形状であり得ることを反映する)。仮想オブジェクトをこのように簡略化することは、算出効率を可能にすることができ、そのような仮想オブジェクト上で実施されるための計算を簡略化することができる。さらに、MREのいくつかの実施例では、実環境内の全ての実オブジェクトが、対応する仮想オブジェクトと関連付けられなくてもよい。同様に、MREのいくつかの実施例では、仮想環境内の全ての仮想オブジェクトが、対応する実オブジェクトと関連付けられなくてもよい。すなわち、いくつかの仮想オブジェクトが、任意の実世界対応物を伴わずに、MREの仮想環境内にのみ存在し得る。
いくつかの実施例では、仮想オブジェクトは、特性(時として著しく異なり、対応する実オブジェクトのものと異なる)を有してもよい。例えば、MRE内の実環境は、緑色の2本の枝が延びたサボテン、すなわち、とげだらけの無生物オブジェクトを含み得るが、MRE内の対応する仮想オブジェクトは、人間の顔特徴および無愛想な態度を伴う、緑色の2本の腕の仮想キャラクタの特性を有してもよい。本実施例では、仮想オブジェクトは、ある特性(色、腕の数)において、その対応する実オブジェクトに類似するが、他の特性(顔特徴、性格)において、実オブジェクトと異なる。このように、仮想オブジェクトは、創造的、抽象的、誇張された、または架空の様式において、実オブジェクトを表す、または挙動(例えば、人間の性格)をそうでなければ無生物である実オブジェクトに付与する潜在性を有する。いくつかの実施例では、仮想オブジェクトは、実世界対応物を伴わない、純粋に架空の創造物(例えば、おそらく、実環境内の虚空に対応する場所における、仮想環境内の仮想モンスター)であってもよい。
ユーザに、実環境を不明瞭にしながら、仮想環境を提示する、VRシステムと比較して、MREを提示する、複合現実システムは、仮想環境が提示される間、実環境が知覚可能なままであるであるという利点をもたらす。故に、複合現実システムのユーザは、実環境と関連付けられた視覚的およびオーディオキューを使用して、対応する仮想環境を体験し、それと相互作用することが可能である。実施例として、VRシステムのユーザは、上記に述べられたように、ユーザは、直接、仮想環境を知覚する、またはそれと相互作用することができないため、仮想環境内に表示される仮想オブジェクトを知覚する、またはそれと相互作用することに苦戦し得るが、MRシステムのユーザは、その自身の実環境内の対応する実オブジェクトが見え、聞こえ、触れることによって、仮想オブジェクトと相互作用することが直感的および自然であると見出し得る。本レベルの相互作用は、ユーザの仮想環境との没入感、つながり、および関与の感覚を向上させ得る。同様に、実環境および仮想環境を同時に提示することによって、複合現実システムは、VRシステムと関連付けられた負の心理学的感覚(例えば、認知的不協和)および負の物理的感覚(例えば、乗り物酔い)を低減させることができる。複合現実システムはさらに、実世界の我々の体験を拡張または改変し得る用途に関する多くの可能性をもたらす。
図1Aは、ユーザ110が複合現実システム112を使用する、例示的実環境100を図示する。複合現実システム112は、ディスプレイ(例えば、透過性ディスプレイ)および1つ以上のスピーカと、例えば、下記に説明されるような1つ以上のセンサ(例えば、カメラ)とを備えてもよい。示される実環境100は、その中にユーザ110が立っている、長方形の部屋104Aと、実オブジェクト122A(ランプ)、124A(テーブル)、126A(ソファ)、および128A(絵画)とを備える。部屋104Aはさらに、場所座標106を備え、これは、実環境100の原点と見なされ得る。図1Aに示されるように、その原点を点106(世界座標)に伴う、環境/世界座標系108(x−軸108X、y−軸108Y、およびz−軸108Zを備える)は、実環境100のための座標空間を定義し得る。いくつかの実施形態では、環境/世界座標系108の原点106は、複合現実システム112の電源がオンにされた場所に対応してもよい。いくつかの実施形態では、環境/世界座標系108の原点106は、動作の間、リセットされてもよい。いくつかの実施例では、ユーザ110は、実環境100内の実オブジェクトと見なされ得る。同様に、ユーザ110の身体部分(例えば、手、足)は、実環境100内の実オブジェクトと見なされ得る。いくつかの実施例では、その原点を点115(例えば、ユーザ/聴取者/頭部座標)に伴う、ユーザ/聴取者/頭部座標系114(x−軸114X、y−軸114Y、およびz−軸114Zを備える)は、その上に複合現実システム112が位置する、ユーザ/聴取者/頭部のための座標空間を定義し得る。ユーザ/聴取者/頭部座標系114の原点115は、複合現実システム112の1つ以上のコンポーネントに対して定義されてもよい。例えば、ユーザ/聴取者/頭部座標系114の原点115は、複合現実システム112の初期較正等の間、複合現実システム112のディスプレイに対して定義されてもよい。行列(平行移動行列および四元数行列または他の回転行列を含み得る)または他の好適な表現が、ユーザ/聴取者/頭部座標系114空間と環境/世界座標系108空間との間の変換を特性評価することができる。いくつかの実施形態では、左耳座標116および右耳座標117が、ユーザ/聴取者/頭部座標系114の原点115に対して定義されてもよい。行列(平行移動行列および四元数行列または他の回転行列を含み得る)または他の好適な表現が、左耳座標116および右耳座標117とユーザ/聴取者/頭部座標系114空間との間の変換を特性評価することができる。ユーザ/聴取者/頭部座標系114は、ユーザの頭部またはウェアラブル頭部デバイスに対する、例えば、環境/世界座標系108に対する場所の表現を簡略化することができる。同時位置特定およびマッピング(SLAM)、ビジュアルオドメトリ、または他の技法を使用して、ユーザ座標系114と環境座標系108との間の変換が、リアルタイムで決定および更新されることができる。
図1Bは、実環境100に対応する、例示的仮想環境130を図示する。示される仮想環境130は、実長方形部屋104Aに対応する仮想長方形部屋104Bと、実オブジェクト122Aに対応する仮想オブジェクト122Bと、実オブジェクト124Aに対応する仮想オブジェクト124Bと、実オブジェクト126Aに対応する仮想オブジェクト126Bとを備える。仮想オブジェクト122B、124B、126Bと関連付けられたメタデータは、対応する実オブジェクト122A、124A、126Aから導出される情報を含むことができる。仮想環境130は、加えて、仮想モンスター132を備え、これは、実環境100内のいかなる実オブジェクトにも対応しない。実環境100内の実オブジェクト128Aは、仮想環境130内のいかなる仮想オブジェクトにも対応しない。その原点を点134(持続的座標)に伴う、持続的座標系(persistent coordinate system)133(x−軸133X、y−軸133Y、およびz−軸133Zを備える)は、仮想コンテンツのための座標空間を定義し得る。持続的座標系133の原点134は、実オブジェクト126A等の1つ以上の実オブジェクトと相対的に/それに対して定義されてもよい。行列(平行移動行列および四元数行列または他の回転行列を含み得る)または他の好適な表現は、持続的座標系133空間と環境/世界座標系108空間との間の変換を特性評価することができる。いくつかの実施形態では、仮想オブジェクト122B、124B、126B、および132はそれぞれ、持続的座標系133の原点134に対するその自身の持続的座標点を有してもよい。いくつかの実施形態では、複数の持続的座標系が存在してもよく、仮想オブジェクト122B、124B、126B、および132はそれぞれ、1つ以上の持続的座標系に対するそれら自身の持続的座標点を有してもよい。
図1Aおよび1Bに関して、環境/世界座標系108は、実環境100および仮想環境130の両方のための共有座標空間を定義する。示される実施例では、座標空間は、その原点を点106に有する。さらに、座標空間は、同一の3つの直交軸(108X、108Y、108Z)によって定義される。故に、実環境100内の第1の場所および仮想環境130内の第2の対応する場所は、同一座標空間に関して説明されることができる。これは、同一座標が両方の場所を識別するために使用され得るため、実および仮想環境内の対応する場所を識別および表示するステップを簡略化する。しかしながら、いくつかの実施例では、対応する実および仮想環境は、共有座標空間を使用する必要がない。例えば、いくつかの実施例では(図示せず)、行列(平行移動行列および四元数行列または他の回転行列を含み得る)または他の好適な表現は、実環境座標空間と仮想環境座標空間との間の変換を特性評価することができる。
図1Cは、同時に、実環境100および仮想環境130の側面をユーザ110に複合現実システム112を介して提示する、例示的MRE150を図示する。示される実施例では、MRE150は、同時に、ユーザ110に、実環境100からの実オブジェクト122A、124A、126A、および128A(例えば、複合現実システム112のディスプレイの透過性部分を介して)と、仮想環境130からの仮想オブジェクト122B、124B、126B、および132(例えば、複合現実システム112のディスプレイのアクティブディスプレイ部分を介して)とを提示する。上記のように、原点106は、MRE150に対応する座標空間のための原点として作用し、座標系108は、座標空間のためのx−軸、y−軸、およびz−軸を定義する。
示される実施例では、複合現実オブジェクトは、座標空間108内の対応する場所を占有する、対応する対の実オブジェクトおよび仮想オブジェクト(すなわち、122A/122B、124A/124B、126A/126B)を備える。いくつかの実施例では、実オブジェクトおよび仮想オブジェクトは両方とも、同時に、ユーザ110に可視であってもよい。これは、例えば、仮想オブジェクトが対応する実オブジェクトのビューを拡張させるように設計される情報を提示する、インスタンスにおいて望ましくあり得る(仮想オブジェクトが古代の損傷された彫像の欠けた部分を提示する、博物館用途等)。いくつかの実施例では、仮想オブジェクト(122B、124B、および/または126B)は、対応する実オブジェクト(122A、124A、および/または126A)をオクルードするように、表示されてもよい(例えば、ピクセル化オクルージョンシャッタを使用する、アクティブピクセル化オクルージョンを介して)。これは、例えば、仮想オブジェクトが対応する実オブジェクトのための視覚的置換として作用する、インスタンスにおいて望ましくあり得る(無生物実オブジェクトが「生きている」キャラクタとなる、双方向ストーリーテリング用途等)。
いくつかの実施例では、実オブジェクト(例えば、122A、124A、126A)は、必ずしも、仮想オブジェクトを構成するとは限らない、仮想コンテンツまたはヘルパデータと関連付けられてもよい。仮想コンテンツまたはヘルパデータは、複合現実環境内の仮想オブジェクトの処理またはハンドリングを促進することができる。例えば、そのような仮想コンテンツは、対応する実オブジェクトの2次元表現、対応する実オブジェクトと関連付けられたカスタムアセットタイプ、または対応する実オブジェクトと関連付けられた統計的データを含み得る。本情報は、不必要な算出オーバーヘッドを被ることなく、実オブジェクトに関わる計算を可能にする、または促進することができる。
いくつかの実施例では、上記に説明される提示はまた、オーディオ側面を組み込んでもよい。例えば、MRE150では、仮想モンスター132は、モンスターがMRE150の周囲を歩き回るにつれて生成される、足音効果等の1つ以上のオーディオ信号と関連付けられ得る。下記にさらに説明されるように、複合現実システム112のプロセッサは、MRE150内の全てのそのような音の混合および処理された合成に対応するオーディオ信号を算出し、複合現実システム112内に含まれる1つ以上のスピーカおよび/または1つ以上の外部スピーカを介して、オーディオ信号をユーザ110に提示することができる。
例示的複合現実システム
例示的複合現実システム112は、ディスプレイ(接眼ディスプレイであり得る、左および右透過性ディスプレイと、ディスプレイからの光をユーザの眼に結合するための関連付けられたコンポーネントとを備え得る)と、左および右スピーカ(例えば、それぞれ、ユーザの左および右耳に隣接して位置付けられる)と、慣性測定ユニット(IMU)(例えば、頭部デバイスのつるのアームに搭載される)と、直交コイル電磁受信機(例えば、左つる部品に搭載される)と、ユーザから離れるように配向される、左および右カメラ(例えば、深度(飛行時間)カメラ)と、ユーザに向かって配向される、左および右眼カメラ(例えば、ユーザの眼移動を検出するため)とを備える、ウェアラブル頭部デバイス(例えば、ウェアラブル拡張現実または複合現実頭部デバイス)を含むことができる。しかしながら、複合現実システム112は、任意の好適なディスプレイ技術および任意の好適なセンサ(例えば、光学、赤外線、音響、LIDAR、EOG、GPS、磁気)を組み込むことができる。加えて、複合現実システム112は、ネットワーキング特徴(例えば、Wi−Fi能力)を組み込み、他の複合現実システムを含む、他のデバイスおよびシステムと通信してもよい。複合現実システム112はさらに、バッテリ(ユーザの腰部の周囲に装着されるように設計されるベルトパック等の補助ユニット内に搭載されてもよい)と、プロセッサと、メモリとを含んでもよい。複合現実システム112のウェアラブル頭部デバイスは、ユーザの環境に対するウェアラブル頭部デバイスの座標セットを出力するように構成される、IMUまたは他の好適なセンサ等の追跡コンポーネントを含んでもよい。いくつかの実施例では、追跡コンポーネントは、入力をプロセッサに提供し、同時位置特定およびマッピング(SLAM)および/またはビジュアルオドメトリアルゴリズムを実施してもよい。いくつかの実施例では、複合現実システム112はまた、ハンドヘルドコントローラ300、および/または下記にさらに説明されるように、ウェアラブルベルトパックであり得る補助ユニット320を含んでもよい。
図2A−2Dは、MRE(MRE150に対応し得る)または他の仮想環境をユーザに提示するために使用され得る、例示的複合現実システム200(複合現実システム112に対応し得る)のコンポーネントを図示する。図2Aは、例示的複合現実システム200内に含まれるウェアラブル頭部デバイス2102の斜視図を図示する。図2Bは、ユーザの頭部2202上に装着されるウェアラブル頭部デバイス2102の上面図を図示する。図2Cは、ウェアラブル頭部デバイス2102の正面図を図示する。図2Dは、ウェアラブル頭部デバイス2102の例示的接眼レンズ2110の縁視図を図示する。図2A−2Cに示されるように、例示的ウェアラブル頭部デバイス2102は、例示的左接眼レンズ(例えば、左透明導波管セット接眼レンズ)2108と、例示的右接眼レンズ(例えば、右透明導波管セット接眼レンズ)2110とを含む。各接眼レンズ2108および2110は、それを通して実環境が可視となる、透過性要素と、実環境に重複するディスプレイ(例えば、画像毎に変調された光を介して)を提示するためのディスプレイ要素とを含むことができる。いくつかの実施例では、そのようなディスプレイ要素は、画像毎に変調された光の流動を制御するための表面回折光学要素を含むことができる。例えば、左接眼レンズ2108は、左内部結合格子セット2112と、左直交瞳拡張(OPE)格子セット2120と、左出射(出力)瞳拡張(EPE)格子セット2122とを含むことができる。同様に、右接眼レンズ2110は、右内部結合格子セット2118と、右OPE格子セット2114と、右EPE格子セット2116とを含むことができる。画像毎に変調された光は、内部結合格子2112および2118、OPE2114および2120、およびEPE2116および2122を介して、ユーザの眼に転送されることができる。各内部結合格子セット2112、2118は、光をその対応するOPE格子セット2120、2114に向かって偏向させるように構成されることができる。各OPE格子セット2120、2114は、光をその関連付けられたEPE2122、2116に向かって下方に漸次的に偏向させ、それによって、形成されている射出瞳を水平に延在させるように設計されることができる。各EPE2122、2116は、その対応するOPE格子セット2120、2114から受信された光の少なくとも一部を、接眼レンズ2108、2110の背後に定義される、ユーザアイボックス位置(図示せず)に外向きに漸次的に再指向し、アイボックスに形成される射出瞳を垂直に延在させるように構成されることができる。代替として、内部結合格子セット2112および2118、OPE格子セット2114および2120、およびEPE格子セット2116および2122の代わりに、接眼レンズ2108および2110は、ユーザの眼への画像毎に変調された光の結合を制御するための格子および/または屈折および反射性特徴の他の配列を含むことができる。
いくつかの実施例では、ウェアラブル頭部デバイス2102は、左つるのアーム2130と、右つるのアーム2132とを含むことができ、左つるのアーム2130は、左スピーカ2134を含み、右つるのアーム2132は、右スピーカ2136を含む。直交コイル電磁受信機2138は、左こめかみ部品またはウェアラブル頭部デバイス2102内の別の好適な場所に位置することができる。慣性測定ユニット(IMU)2140は、右つるのアーム2132またはウェアラブル頭部デバイス2102内の別の好適な場所に位置することができる。ウェアラブル頭部デバイス2102はまた、左深度(例えば、飛行時間)カメラ2142と、右深度カメラ2144とを含むことができる。深度カメラ2142、2144は、好適には、ともにより広い視野を網羅するように、異なる方向に配向されることができる。
図2A−2Dに示される実施例では、画像毎に変調された光2124の左源は、左内部結合格子セット2112を通して、左接眼レンズ2108の中に光学的に結合されることができ、画像毎に変調された光2126の右源は、右内部結合格子セット2118を通して、右接眼レンズ2110の中に光学的に結合されることができる。画像毎に変調された光2124、2126の源は、例えば、光ファイバスキャナ、デジタル光処理(DLP)チップまたはシリコン上液晶(LCoS)変調器等の電子光変調器を含むプロジェクタ、または側面あたり1つ以上のレンズを使用して、内部結合格子セット2112、2118の中に結合される、マイクロ発光ダイオード(μLED)またはマイクロ有機発光ダイオード(μOLED)パネル等の発光型ディスプレイを含むことができる。入力結合格子セット2112、2118は、画像毎に変調された光2124、2126の源からの光を、接眼レンズ2108、2110のための全内部反射(TIR)に関する臨界角を上回る角度に偏向させることができる。OPE格子セット2114、2120は、伝搬する光をTIRによってEPE格子セット2116、2122に向かって下方に漸次的に偏向させる。EPE格子セット2116、2122は、ユーザの眼の瞳孔を含む、ユーザの顔に向かって、光を漸次的に結合する。
いくつかの実施例では、図2Dに示されるように、左接眼レンズ2108および右接眼レンズ2110はそれぞれ、複数の導波管2402を含む。例えば、各接眼レンズ2108、2110は、複数の個々の導波管を含むことができ、それぞれ、個別の色チャネル(例えば、赤色、青色、および緑色)専用である。いくつかの実施例では、各接眼レンズ2108、2110は、複数のセットのそのような導波管を含むことができ、各セットは、異なる波面曲率を放出される光に付与するように構成される。波面曲率は、例えば、ユーザの正面のある距離(例えば、波面曲率の逆数に対応する距離)に位置付けられる仮想オブジェクトを提示するように、ユーザの眼に対して凸面であってもよい。いくつかの実施例では、EPE格子セット2116、2122は、各EPEを横断して出射する光のPoyntingベクトルを改変することによって凸面波面曲率をもたらすために、湾曲格子溝を含むことができる。
いくつかの実施例では、表示されるコンテンツが3次元である知覚を作成するために、立体視的に調節される左および右眼画像は、画像毎に光変調器2124、2126および接眼レンズ2108、2110を通して、ユーザに提示されることができる。3次元仮想オブジェクトの提示の知覚される現実性は、仮想オブジェクトが立体視左および右画像によって示される距離に近似する距離に表示されるように、導波管(したがって、対応する波面曲率)を選択することによって向上されることができる。本技法はまた、立体視左および右眼画像によって提供される深度知覚キューと人間の眼の自動遠近調節(例えば、オブジェクト距離依存焦点)との間の差異によって生じ得る、一部のユーザによって被られる乗り物酔いを低減させ得る。
図2Dは、例示的ウェアラブル頭部デバイス2102の右接眼レンズ2110の上部からの縁視図を図示する。図2Dに示されるように、複数の導波管2402は、3つの導波管2404の第1のサブセットと、3つの導波管2406の第2のサブセットとを含むことができる。導波管2404、2406の2つのサブセットは、異なる波面曲率を出射する光に付与するために異なる格子線曲率を特徴とする、異なるEPE格子によって区別されることができる。導波管2404、2406のサブセットのそれぞれ内において、各導波管は、異なるスペクトルチャネル(例えば、赤色、緑色、および青色スペクトルチャネルのうちの1つ)をユーザの右眼2206に結合するために使用されることができる。(図2Dには図示されないが、左接眼レンズ2108の構造は、右接眼レンズ2110の構造に類似する。)
図3Aは、複合現実システム200の例示的ハンドヘルドコントローラコンポーネント300を図示する。いくつかの実施例では、ハンドヘルドコントローラ300は、把持部分346と、上部表面348に沿って配置される、1つ以上のボタン350とを含む。いくつかの実施例では、ボタン350は、例えば、カメラまたは他の光学センサ(複合現実システム200の頭部ユニット(例えば、ウェアラブル頭部デバイス2102)内に搭載され得る)と併せて、ハンドヘルドコントローラ300の6自由度(6DOF)運動を追跡するための光学追跡標的として使用するために構成されてもよい。いくつかの実施例では、ハンドヘルドコントローラ300は、ウェアラブル頭部デバイス2102に対する位置または配向等の位置または配向を検出するための追跡コンポーネント(例えば、IMUまたは他の好適なセンサ)を含む。いくつかの実施例では、そのような追跡コンポーネントは、ハンドヘルドコントローラ300のハンドル内に位置付けられてもよく、および/またはハンドヘルドコントローラに機械的に結合されてもよい。ハンドヘルドコントローラ300は、ボタンの押下状態、またはハンドヘルドコントローラ300の位置、配向、および/または運動(例えば、IMUを介して)のうちの1つ以上のものに対応する、1つ以上の出力信号を提供するように構成されることができる。そのような出力信号は、複合現実システム200のプロセッサへの入力として使用されてもよい。そのような入力は、ハンドヘルドコントローラの位置、配向、および/または移動(さらに言うと、コントローラを保持するユーザの手の位置、配向、および/または移動)に対応し得る。そのような入力はまた、ユーザがボタン350を押下したことに対応し得る。
図3Bは、複合現実システム200の例示的補助ユニット320を図示する。補助ユニット320は、エネルギーを提供し、システム200を動作するためのバッテリを含むことができ、プログラムを実行し、システム200を動作させるためのプロセッサを含むことができる。示されるように、例示的補助ユニット320は、補助ユニット320をユーザのベルトに取り付ける等のためのクリップ2128を含む。他の形状因子も、補助ユニット320のために好適であって、ユニットをユーザのベルトに搭載することを伴わない、形状因子を含むことも明白となるであろう。いくつかの実施例では、補助ユニット320は、例えば、電気ワイヤおよび光ファイバを含み得る、多管式ケーブルを通して、ウェアラブル頭部デバイス2102に結合される。補助ユニット320とウェアラブル頭部デバイス2102との間の無線接続もまた、使用されることができる。
いくつかの実施例では、複合現実システム200は、1つ以上のマイクロホンを含み、音を検出し、対応する信号を複合現実システムに提供することができる。いくつかの実施例では、マイクロホンは、ウェアラブル頭部デバイス2102に取り付けられる、またはそれと統合されてもよく、ユーザの音声を検出するように構成されてもよい。いくつかの実施例では、マイクロホンは、ハンドヘルドコントローラ300および/または補助ユニット320に取り付けられる、またはそれと統合されてもよい。そのようなマイクロホンは、環境音、周囲雑音、ユーザまたは第三者の音声、または他の音を検出するように構成されてもよい。
図4は、上記に説明される複合現実システム200(図1に関する複合現実システム112に対応し得る)等の例示的複合現実システムに対応し得る、例示的機能ブロック図を示す。図4に示されるように、例示的ハンドヘルドコントローラ400B(ハンドヘルドコントローラ300(「トーテム」)に対応し得る)は、トーテム/ウェアラブル頭部デバイス6自由度(6DOF)トーテムサブシステム404Aを含み、例示的ウェアラブル頭部デバイス400A(ウェアラブル頭部デバイス2102に対応し得る)は、トーテム/ウェアラブル頭部デバイス6DOFサブシステム404Bを含む。実施例では、6DOFトーテムサブシステム404Aおよび6DOFサブシステム404Bは、協働し、ウェアラブル頭部デバイス400Aに対するハンドヘルドコントローラ400Bの6つの座標(例えば、3つの平行移動方向におけるオフセットおよび3つの軸に沿った回転)を決定する。6自由度は、ウェアラブル頭部デバイス400Aの座標系に対して表されてもよい。3つの平行移動オフセットは、そのような座標系内におけるX、Y、およびZオフセット、平行移動行列、またはある他の表現として表されてもよい。回転自由度は、ヨー、ピッチ、およびロール回転のシーケンス、回転行列、四元数、またはある他の表現として表されてもよい。いくつかの実施例では、ウェアラブル頭部デバイス400A、ウェアラブル頭部デバイス400A内に含まれる、1つ以上の深度カメラ444(および/または1つ以上の非深度カメラ)、および/または1つ以上の光学標的(例えば、上記に説明されるようなハンドヘルドコントローラ400Bのボタン350またはハンドヘルドコントローラ400B内に含まれる専用光学標的)は、6DOF追跡のために使用されることができる。いくつかの実施例では、ハンドヘルドコントローラ400Bは、上記に説明されるようなカメラを含むことができ、ウェアラブル頭部デバイス400Aは、カメラと併せた光学追跡のための光学標的を含むことができる。いくつかの実施例では、ウェアラブル頭部デバイス400Aおよびハンドヘルドコントローラ400Bはそれぞれ、3つの直交して配向されるソレノイドのセットを含み、これは、3つの区別可能な信号を無線で送信および受信するために使用される。受信するために使用される、コイルのそれぞれ内で受信される3つの区別可能な信号の相対的大きさを測定することによって、ハンドヘルドコントローラ400Bに対するウェアラブル頭部デバイス400Aの6DOFが、決定され得る。加えて、6DOFトーテムサブシステム404Aは、改良された正確度および/またはハンドヘルドコントローラ400Bの高速移動に関するよりタイムリーな情報を提供するために有用である、慣性測定ユニット(IMU)を含むことができる。
いくつかの実施例では、例えば、座標系108に対するウェアラブル頭部デバイス400Aの移動を補償するために、座標をローカル座標空間(例えば、ウェアラブル頭部デバイス400Aに対して固定される座標空間)から慣性座標空間(例えば、実環境に対して固定される座標空間)に変換することが必要になり得る。例えば、そのような変換は、ウェアラブル頭部デバイス400Aのディスプレイが、ディスプレイ上の固定位置および配向(例えば、ディスプレイの右下角における同一位置)ではなく仮想オブジェクトを実環境に対する予期される位置および配向に提示し(例えば、ウェアラブル頭部デバイスの位置および配向にかかわらず、前方に面した実椅子に着座している仮想人物)、仮想オブジェクトが実環境内に存在する(かつ、例えば、ウェアラブル頭部デバイス400Aが偏移および回転するにつれて、実環境内に不自然に位置付けられて現れない)という錯覚を保存するために必要であり得る。いくつかの実施例では、座標空間間の補償変換が、座標系108に対するウェアラブル頭部デバイス400Aの変換を決定するために、SLAMおよび/またはビジュアルオドメトリプロシージャを使用して、深度カメラ444からの画像を処理することによって決定されることができる。図4に示される実施例では、深度カメラ444は、SLAM/ビジュアルオドメトリブロック406に結合され、画像をブロック406に提供することができる。SLAM/ビジュアルオドメトリブロック406実装は、本画像を処理し、次いで、頭部座標空間と別の座標空間(例えば、慣性座標空間)との間の変換を識別するために使用され得る、ユーザの頭部の位置および配向を決定するように構成される、プロセッサを含むことができる。同様に、いくつかの実施例では、ユーザの頭部姿勢および場所に関する情報の付加的源が、IMU409から取得される。IMU409からの情報は、SLAM/ビジュアルオドメトリブロック406からの情報と統合され、改良された正確度および/またはユーザの頭部姿勢および位置の高速調節に関する情報をよりタイムリーに提供することができる。
いくつかの実施例では、深度カメラ444は、ウェアラブル頭部デバイス400Aのプロセッサ内に実装され得る、手のジェスチャトラッカ411に、3D画像を供給することができる。手のジェスチャトラッカ411は、例えば、深度カメラ444から受信された3D画像を手のジェスチャを表す記憶されたパターンに合致させることによって、ユーザの手のジェスチャを識別することができる。ユーザの手のジェスチャを識別する他の好適な技法も、明白となるであろう。
いくつかの実施例では、1つ以上のプロセッサ416は、ウェアラブル頭部デバイスの6DOFウェアラブル頭部デバイスサブシステム404B、IMU409、SLAM/ビジュアルオドメトリブロック406、深度カメラ444、および/または手のジェスチャトラッカ411からのデータを受信するように構成されてもよい。プロセッサ416はまた、制御信号を6DOFトーテムシステム404Aに送信し、そこから受信することができる。プロセッサ416は、ハンドヘルドコントローラ400Bがテザリングされない実施例等では、無線で、6DOFトーテムシステム404Aに結合されてもよい。プロセッサ416はさらに、視聴覚コンテンツメモリ418、グラフィカル処理ユニット(GPU)420、および/またはデジタル信号プロセッサ(DSP)オーディオ空間化装置422等の付加的コンポーネントと通信してもよい。DSPオーディオ空間化装置422は、頭部関連伝達関数(HRTF)メモリ425に結合されてもよい。GPU420は、画像毎に変調された光424の左源に結合される、左チャネル出力と、画像毎に変調された光426の右源に結合される、右チャネル出力とを含むことができる。GPU420は、例えば、図2A−2Dに関して上記に説明されるように、立体視画像データを画像毎に変調された光424、426の源に出力することができる。DSPオーディオ空間化装置422は、オーディオを左スピーカ412および/または右スピーカ414に出力することができる。DSPオーディオ空間化装置422は、プロセッサ419から、ユーザから仮想音源(例えば、ハンドヘルドコントローラ320を介して、ユーザによって移動され得る)への方向ベクトルを示す入力を受信することができる。方向ベクトルに基づいて、DSPオーディオ空間化装置422は、対応するHRTFを決定することができる(例えば、HRTFにアクセスすることによって、または複数のHRTFを補間することによって)。DSPオーディオ空間化装置422は、次いで、決定されたHRTFを仮想オブジェクトによって生成された仮想音に対応するオーディオ信号等のオーディオ信号に適用することができる。これは、複合現実環境内の仮想音に対するユーザの相対的位置および配向を組み込むことによって、すなわち、その仮想音が実環境内の実音である場合に聞こえるであろうもののユーザの予期に合致する仮想音を提示することによって、仮想音の信憑性および現実性を向上させることができる。
図4に示されるようないくつかの実施例では、プロセッサ416、GPU420、DSPオーディオ空間化装置422、HRTFメモリ425、およびオーディオ/視覚的コンテンツメモリ418のうちの1つ以上のものは、補助ユニット400C(上記に説明される補助ユニット320に対応し得る)内に含まれてもよい。補助ユニット400Cは、バッテリ427を含み、そのコンポーネントを給電し、および/または電力をウェアラブル頭部デバイス400Aまたはハンドヘルドコントローラ400Bに供給してもよい。そのようなコンポーネントを、ユーザの腰部に搭載され得る、補助ユニット内に含むことは、ウェアラブル頭部デバイス400Aのサイズおよび重量を限定することができ、これは、ひいては、ユーザの頭部および頸部の疲労を低減させることができる。
図4は、例示的複合現実システムの種々のコンポーネントに対応する要素を提示するが、これらのコンポーネントの種々の他の好適な配列も、当業者に明白となるであろう。例えば、補助ユニット400Cと関連付けられているような図4に提示される要素は、代わりに、ウェアラブル頭部デバイス400Aまたはハンドヘルドコントローラ400Bと関連付けられ得る。さらに、いくつかの複合現実システムは、ハンドヘルドコントローラ400Bまたは補助ユニット400Cを完全に無くしてもよい。そのような変更および修正は、開示される実施例の範囲内に含まれるものとして理解されるべきである。
仮想音源
上記に説明されるように、(複合現実システム、例えば、上記に説明される複合現実システム200を介して体験されるような)MREは、ユーザに、オーディオ信号がユーザがその聴取者座標において聞こえ得る内容を表すように、「聴取者」座標に対応し得る、オーディオ信号を提示することができる。いくつかのオーディオ信号は、MRE内の音源の位置および/または配向に対応してもよい。すなわち、信号は、それらがMRE内の音源の位置から生じるように現れ、MRE内の音源の配向の方向に伝搬するように提示されてもよい。ある場合には、そのようなオーディオ信号は、それらが、仮想環境内の仮想コンテンツに対応し、必ずしも、実環境内の実音に対応しないという点で、仮想と見なされ得る。仮想コンテンツと関連付けられる音は、記憶された音サンプルを処理することによって合成または発生されてもよい。仮想オーディオ信号は、ユーザに、例えば、図2A−2Dにおけるウェアラブル頭部デバイス2102のスピーカ2134および2136を介して生成されるように、人間の耳によって検出可能な実オーディオ信号として提示されることができる。
音源は、実オブジェクトおよび/または仮想オブジェクトに対応してもよい。例えば、仮想オブジェクト(例えば、図1Cの仮想モンスター132)は、MRE内でオーディオ信号を放出することができ、これは、MRE内で仮想オーディオ信号として表され、ユーザに実オーディオ信号として提示される。例えば、図1Cの仮想モンスター132は、モンスターの発話(例えば、対話)に対応する仮想音または音効果を放出することができる。同様に、実オブジェクト(例えば、図1Cの実オブジェクト122A)も、MRE内で仮想音を放出することができ、これは、MRE内で仮想オーディオ信号として表され、ユーザに実オーディオ信号として提示される。例えば、実ランプ122Aは、ランプが実環境内でオンまたはオフに切り替えられない場合でも、ランプがオンまたはオフに切り替えられる音効果に対応する、仮想音を放出することができる。(ランプの輝度は、接眼レンズ2108、2110および画像毎に変調された光の源2124、2126を使用して、仮想的に発生されることができる。)仮想音は、音源(実際または仮想かどうかにかかわらず)の位置および配向に対応し得る。例えば、仮想音が、ユーザに実オーディオ信号として提示される(例えば、スピーカ2134および2136を介して)場合、ユーザは、音源の位置から生じ、音源の配向の方向に進行するものとして、仮想音を知覚し得る。(音源は、本明細書では、音源自体は、上記に説明されるような実オブジェクトに対応し得るが、「仮想音源」と称され得る。)
いくつかの仮想または複合現実環境では、ユーザが、上記に説明されるようなオーディオ信号を提示されるとき、実環境内のオーディオ源を識別することが直感的自然能力であるが、仮想環境内のオーディオ信号の源を迅速かつ正確に識別することが難しくあり得る。仮想または複合現実環境内のユーザの体験が実世界内のユーザの体験により酷似するように、MRE内の音源の位置または配向を知覚するユーザの能力を改良することが望ましい。
同様に、いくつかの仮想または複合現実環境は、環境が現実または本物であるように感じられないという知覚に悩まされる。本知覚の1つの理由は、オーディオおよび視覚的キューが、常時、仮想環境内で相互に合致しないことである。例えば、ユーザが、MRE内で大きな煉瓦壁の背後に位置付けられる場合、ユーザは、煉瓦壁の背後から生じる音がユーザのすぐ隣から生じる音より静かかつよりこもっていることを予期し得る。本予期は、大きな稠密オブジェクトによって遮られるとき、音が静かかつこもった状態になり得るという、実世界内の自身の聴覚的体験に基づく。ユーザが、煉瓦壁の背後から生じるとされるが、こもっておらず、かつ完全音量で提示される、オーディオ信号を提示されるとき、ユーザが煉瓦壁の背後に居る、または音がその背後から生じているという、錯覚は、損なわれる。仮想体験全体が、部分的に、実世界相互作用に基づく自身の予期に適合しないため、偽物であって、かつ本物ではないように感じ得る。さらに、ある場合には、仮想体験と実体験との間のわずかな差異さえ、不快感の感覚を生じさせ得る、「不気味の谷」問題が生じる。MRE内において、わずかな点においてさえ、ユーザの環境内のオブジェクトと現実的に相互作用するように現れる、オーディオ信号を提示することによって、ユーザの体験を改良することが望ましい。そのようなオーディオ信号が、実世界体験に基づく自身の予期により一貫するほど、ユーザのMRE体験は、より没入型かつ魅力のあるものとなるであろう。
人間の脳が音源の位置および配向を検出する、1つの方法は、左および右耳によって受信された音間の差異を解釈することによるものである。例えば、実環境内のオーディオ信号が、右耳に到達する前に、ユーザの左耳に到達する場合(人間の聴覚系が、例えば、左耳信号と右耳信号との間の時間遅延または位相偏移を識別することによって決定し得る)、脳は、オーディオ信号の源がユーザの左にあることを認識し得る。同様に、オーディオ信号の有効力が、概して、距離に伴って減少し、ユーザ自身の頭部によっての遮られ得るため、オーディオ信号が、左耳に対して右耳より大きな音で現れる場合、脳は、源がユーザの左にあることを認識し得る。同様に、我々の脳は、左耳信号と右耳信号との間の周波数特性の差異が、源の位置またはオーディオ信号が進行する方向を示し得ることを認識する。
人間の脳が潜在意識的に実施する、上記の技法は、ステレオオーディオ信号を処理する、具体的には、該当する場合、単一音源によって生成され、左耳および右耳において受信された個別のオーディオ信号間の(例えば、振幅、位相、周波数特性の)差異を分析することによって作用する。人間として、我々は、必然的に、これらのステレオ聴覚的技法に依拠し、我々の実環境内の音が生じる場所およびそれらが進行する方向を迅速かつ正確に識別する。我々はまた、そのようなステレオ技法に依拠し、周囲の世界、例えば、音源が近傍の壁の他側にあるかどうか、および該当する場合、その壁の厚さおよびそれが作製される材料をより良好に理解する。
MREは、我々の脳が実世界内で使用するものと同一自然ステレオ技法を利用して、ユーザが迅速に位置特定し得るような方法において、説得力があるように、仮想音源をMRE内に設置することが、望ましくあり得る。同様に、これらの同一技法を使用して、例えば、実世界内のステレオオーディオ信号のように挙動する、それらの音源に対応する、ステレオオーディオ信号を提示することによって、そのような仮想音源がMRE内の実および仮想コンテンツと共存する感覚を向上させることが望ましくあり得る。MREのユーザに、我々の日常生活のオーディオ体験を喚起する、オーディオ体験を提示することによって、MREは、MREに従事するとき、ユーザの没入感およびつながりを向上させることができる。
図5Aおよび5Bは、それぞれ、例示的複合現実環境500(図1Cの複合現実環境150に対応し得る)の斜視図および上面図を描写する。MRE500では、ユーザ501は、左耳502と、右耳504とを有する。示される実施例では、ユーザ501は、左スピーカ512と、右スピーカ514とを含む(それぞれ、スピーカ2134および2136に対応し得る)、ウェアラブル頭部デバイス510(ウェアラブル頭部デバイス2102に対応し得る)を装着している。左スピーカ512は、オーディオ信号を左耳502に提示するように構成され、右スピーカ514は、オーディオ信号を右耳504に提示するように構成される。
例示的MRE500は、仮想音源520を含み、これは、MRE500の座標系内の位置および配向を有し得る。いくつかの実施例では、仮想音源520は、仮想オブジェクト(例えば、図1Cにおける仮想オブジェクト122A)であってもよく、実オブジェクト(例えば、図1Cにおける実オブジェクト122B)と関連付けられてもよい。故に、仮想音源520は、仮想オブジェクトに関して上記に説明される特性のいずれかまたは全てを有してもよい。
いくつかの実施例では、仮想音源520は、サイズ、形状、質量、または材料等の1つ以上の物理的パラメータと関連付けられてもよい。いくつかの実施例では、仮想音源520の配向は、1つ以上のそのような物理的パラメータに対応してもよい。例えば、仮想音源520がスピーカコーンを伴うスピーカに対応する実施例では、仮想音源520の配向は、スピーカコーンの軸に対応してもよい。仮想音源520が実オブジェクトと関連付けられる、実施例では、仮想音源520と関連付けられた物理的パラメータが、実オブジェクトの1つ以上の物理的パラメータから導出されてもよい。例えば、実オブジェクトが、12インチスピーカコーンを伴うスピーカである場合、仮想音源520は、12インチスピーカコーンに対応する物理的パラメータを有し得る(例えば、仮想オブジェクト122Bは、物理的パラメータまたは寸法をMRE150の対応する実オブジェクト122Aから導出してもよい)。
いくつかの実施例では、仮想音源520は、1つ以上の仮想パラメータと関連付けられてもよく、これは、仮想音源と関連付けられたオーディオ信号または他の信号または性質に影響を及ぼし得る。仮想パラメータは、MREの座標空間内の空間性質(例えば、位置、配向、形状、寸法)、視覚的性質(例えば、色、透明度、反射率)、物理的性質(例えば、密度、弾性、引張強度、温度、平滑度、湿潤度、共鳴、電導性)、またはオブジェクトの他の好適な性質を含むことができる。複合現実システムは、そのようなパラメータを決定し、故に、それらのパラメータを有する仮想オブジェクトを生成することができる。これらの仮想オブジェクトは、これらのパラメータに従って、ユーザにレンダリングされることができる(例えば、ウェアラブル頭部デバイス510によって)。
MRE500の一実施例では、仮想オーディオ信号530は、仮想音源の位置において、仮想音源520によって放出され、仮想音源から外向きに伝搬する。あるインスタンスでは、異方性方向性パターン(例えば、周波数依存異方性を呈する)が、仮想音源と関連付けられることができ、ある方向(例えば、ユーザ501に向かう方向)に放出される仮想オーディオ信号は、方向性パターンに基づいて決定されることができる。仮想オーディオ信号は、直接、MREのユーザによって知覚可能ではないが、1つ以上のスピーカ(例えば、スピーカ512または514)によって、実オーディオ信号に変換されることができ、これは、ユーザによって聞こえ得る、実オーディオ信号を発生する。例えば、仮想オーディオ信号は、例えば、MREと関連付けられたプロセッサおよび/またはメモリによって、デジタル−オーディオコンバータを介して、アナログ信号に変換され、次いで、増幅され、スピーカを駆動し、聴取者によって知覚可能な音を発生するために使用され得る、デジタルオーディオデータの算出表現であってもよい。そのような算出表現は、例えば、仮想オーディオ信号が生じる、MRE内の座標、それに沿って仮想オーディオ信号が伝搬する、MRE内のベクトル、方向性、仮想オーディオ信号が生じる、時間、仮想オーディオ信号を伝搬する、速度、または他の好適な特性を備えることができる。
MREはまた、それぞれ、仮想オーディオ信号が知覚され得る、座標系内の場所(「聴取者」)に対応する、1つ以上の聴取者座標の表現を含んでもよい。いくつかの実施例では、MREはまた、聴取者の配向を表す、1つ以上の聴取者ベクトルの表現を含んでもよい(例えば、聴取者が面する方向によって影響され得る、オーディオ信号を決定する際に使用するため)。MRE内では、聴取者座標は、ユーザの耳の実際の場所に対応し得、これは、SLAM、ビジュアルオドメトリを使用して、および/またはIMU(例えば図4に関して上記に説明される、IMU409)を用いて、決定されることができる。いくつかの実施例では、MREは、それぞれ、MREの座標系内のユーザの左および右耳の場所に対応する、左および右聴取者座標を含むことができる。仮想音源から聴取者座標までの仮想オーディオ信号のベクトルを決定することによって、その座標に耳を伴う人間聴取者が仮想オーディオ信号を知覚するであろう方法に対応する、実オーディオ信号が、決定されることができる。
いくつかの実施例では、仮想オーディオ信号は、ベース音データ(例えば、オーディオ波形を表すコンピュータファイル)と、そのベース音データに適用され得る、1つ以上のパラメータとを備える。そのようなパラメータは、ベース音の減衰(例えば、音量降下)、ベース音のフィルタリング(例えば、低域通過フィルタ)、ベース音の時間遅延(例えば、位相偏移)、人工反響およびエコー効果を適用するための反響音パラメータ、時間ベースの変調効果を適用するための電圧制御発振器(VCO)パラメータ、ベース音のピッチ変調(例えば、ドップラー効果をシミュレートするため)、または他の好適なパラメータに対応してもよい。いくつかの実施例では、これらのパラメータは、仮想オーディオ源の聴取者座標の関係の関数であり得る。例えば、パラメータは、実オーディオ信号の減衰を、聴取者座標から仮想オーディオ源の位置までの距離の減少関数であると定義し得る。すなわち、聴取者から仮想オーディオ源までの距離が増加するにつれて、オーディオ信号の利得は、減少する。別の実施例として、パラメータは、仮想オーディオ信号に適用される低域通過フィルタを、聴取者座標(および/または聴取者ベクトルの角度)から仮想オーディオ信号の伝搬ベクトルまでの距離の関数であると定義し得る。例えば、仮想オーディオ信号から遠く離れた聴取者は、信号により近い聴取者ほど高くない信号の周波数電力を知覚し得る。さらなる実施例として、パラメータは、時間遅延(例えば、位相偏移)を、聴取者座標と仮想オーディオ信号の原点との間の距離に基づいて適用されると定義し得る。いくつかの実施例では、仮想オーディオ信号の処理は、図4のDSPオーディオ空間化装置422を使用して算出されることができ、これは、HRTFを利用して、ユーザの頭部の位置および配向に基づいて、オーディオ信号を提示することができる。
仮想オーディオ信号パラメータは、仮想または実オブジェクト、すなわち、仮想オーディオ信号が聴取者座標までの途中で通過する、音オクルーダによって影響され得る。(本明細書で使用されるように、仮想または実オブジェクトは、MRE内の仮想または実オブジェクトの任意の好適な表現を含む。)例えば、仮想オーディオ信号が、MRE内の仮想壁と交差する(例えば、それによって遮られる)場合、MREは、減衰を仮想オーディオ信号に適用し得る(聴取者により静かに現れる信号をもたらす)。MREはまた、高周波数成分がロールオフされるにつれて、低域通過フィルタを仮想オーディオ信号に適用し、よりこもって現れる、信号をもたらし得る。これらの効果は、実環境内の壁の性質が、壁が聴取者から壁の反対側で生じている音波を遮るため、壁の他側からの音が、より静かであって、より少ない高周波数成分を有するようなものであるという、壁の背後からの音が聞こえる際の我々の予期と一致する。そのようなパラメータのオーディオ信号への適用は、仮想壁の性質に基づくことができる。例えば、より厚いまたはより稠密な材料に対応する、仮想壁は、より薄いまたはあまり稠密ではない材料に対応する、仮想壁より大きい程度の減衰または低域通過フィルタリングをもたらし得る。ある場合には、仮想オブジェクトは、位相偏移または付加的効果を仮想オーディオ信号に適用してもよい。仮想オブジェクトが仮想オーディオ信号に及ぼす効果は、仮想オブジェクトの物理的モデル化によって決定されることができ、例えば、仮想オブジェクトが、特定の材料(例えば、煉瓦、アルミニウム、水)に対応する場合、効果は、実世界内のその材料の存在下、オーディオ信号の既知の伝送特性に基づいて適用され得る。
いくつかの実施例では、仮想オーディオ信号が交差する仮想オブジェクトは、実オブジェクトに対応し得る(例えば、実オブジェクト122A、124A、および126Aは、図1Cにおける仮想オブジェクト122B、124B、および126Bに対応する)。いくつかの実施例では、そのような仮想オブジェクトは、実オブジェクトに対応しなくてもよい(例えば、図1Cにおける仮想モンスター132等の)。仮想オブジェクトが実オブジェクトに対応する場合、仮想オブジェクトは、それらの実オブジェクトの性質に対応する、パラメータ(例えば、寸法、材料)を採用してもよい。
いくつかの実施例では、仮想オーディオ信号は、対応する仮想オブジェクトを有していない実オブジェクトと交差し得る。例えば、実オブジェクトの特性(例えば、位置、配向、寸法、材料)は、センサによって決定されることができ(ウェアラブル頭部デバイス510に取り付けられる等)、その特性は、仮想オブジェクトオクルーダに関して上記に説明されるような仮想オーディオ信号を処理するために使用されることができる。
ステレオ効果
上記に述べられたように、仮想オーディオ信号のベクトルを聴取者座標の仮想音源から決定することによって、その聴取者座標に耳を伴う人間の聴取者が仮想オーディオ信号を知覚するであろう方法に対応する、実オーディオ信号が、決定されることができる。いくつかの実施例では、左および右ステレオ聴取者座標(左および右耳に対応する)が、単に、単一聴取者座標の代わりに、使用され、耳毎に別個に決定されることになる、オーディオ信号に及ぼされる実オブジェクトの効果、例えば、オーディオ信号と実オブジェクトの相互作用に基づく減衰またはフィルタリングを可能にすることができる。これは、実世界ステレオオーディオ体験を模倣することによって、仮想環境の現実性を向上させることができ、異なるオーディオ信号を各耳で受信することは、我々の周囲における音を理解することに役立ち得る。左および右耳が異なるように影響されるオーディオ信号を体験する、そのような効果は、特に、実オブジェクトがユーザに近接近し得る場合に顕著であり得る。例えば、ユーザ501が、鳴いている仮想ネコを実オブジェクトの角からこっそり見ている場合、ネコの鳴き声の音は、耳毎に異なるように決定および提示され得る。すなわち、実オブジェクトの背後に位置付けられる耳のための音は、ネコと耳との間にある実オブジェクトが、その耳によって聞こえるにつれて、ネコの音を減衰およびフィルタリングし得ることを反映させ得る一方、実オブジェクトを越えて位置付けられる別の耳のための音は、実オブジェクトがそのような減衰またはフィルタリングすることを実施しないことを反映させ得る。そのような音は、ウェアラブル頭部デバイス510のユーザの耳512、514を介して提示されることができる。
上記に説明されるような望ましいステレオ聴覚的効果は、耳毎に1つずつ、2つのそのようなベクトルを決定し、耳毎に、一意の仮想オーディオ信号を識別することによってシミュレートされることができる。これらの2つの一意の仮想オーディオ信号はそれぞれ、次いで、実オーディオ信号に変換され、その耳と関連付けられたスピーカを介して、個別の耳に提示されることができる。ユーザの脳は、上記に説明されるように、実世界内の通常のステレオオーディオ信号を処理するであろう同一方法において、それらの実オーディオ信号を処理するであろう。
これは、図5Aおよび5Bにおける例示的MRE500によって図示される。MRE500は、仮想音源520とユーザ501との間にある、壁540を含む。いくつかの実施例では、壁540は、図1Cの実オブジェクト126Aと異ならない、実オブジェクトであってもよい。いくつかの実施例では、壁540は、図1Cの仮想オブジェクト122B等の仮想オブジェクトであってもよい。さらに、いくつかのそのような実施例では、その仮想オブジェクトは、図1Cの実オブジェクト122A等の実オブジェクトに対応してもよい。
壁540が実オブジェクトである、実施例では、壁540は、例えば、ウェアラブル頭部デバイス510の深度カメラまたは他のセンサを使用して、検出されてもよい。これは、その位置、配向、視覚的性質、または材料性質等の実オブジェクトの1つ以上の特性を識別することができる。これらの特性は、上記に説明されるように、壁540と関連付けられ、MRE500を更新および維持する際に含まれることができる。これらの特性は、次いで、下記に説明されるように、それらの仮想オーディオ信号が壁540によって影響されるであろう方法に従って、仮想オーディオ信号を処理するために使用されることができる。いくつかの実施例では、ヘルパデータ等の仮想コンテンツが、実オブジェクトによって影響される仮想オーディオ信号の処理を促進するために、実オブジェクトと関連付けられてもよい。例えば、ヘルパデータは、実オブジェクトに類似する幾何学的プリミティブ、実オブジェクトと関連付けられた2次元画像データ、または実オブジェクトと関連付けられた1つ以上の性質を識別するカスタムアセットタイプを含み得る。
壁540が仮想オブジェクトである、いくつかの実施例では、仮想オブジェクトは、上記に説明されるように検出され得る、実オブジェクトと対応するように算出されてもよい。例えば、図1Cに関して、上記に説明されるように、実オブジェクト122Aは、ウェアラブル頭部デバイス510によって検出されてもよく、仮想オブジェクト122Bは、実オブジェクト122Aの1つ以上の特性と対応するように生成されてもよい。加えて、1つ以上の特性は、その対応する実オブジェクトから導出されない、仮想オブジェクトと関連付けられてもよい。対応する実オブジェクトと関連付けられた仮想オブジェクトを識別する利点は、仮想オブジェクトが、壁540と関連付けられた計算を簡略化するために使用されることができることである。例えば、仮想オブジェクトは、対応する実オブジェクトより幾何学的に単純であり得る。しかしながら、壁540が仮想オブジェクトである、いくつかの実施例では、対応する実オブジェクトが存在しなくてもよく、壁540は、ソフトウェア(例えば、特定の位置および配向における壁540の存在を規定する、ソフトウェアスクリプト)によって決定されてもよい。壁540と関連付けられた特性は、上記に説明されるようなMRE500を維持および更新する際に含まれることができる。これらの特性は、次いで、下記に説明されるように、それらの仮想オーディオ信号が壁540によって影響されるであろう方法に従って、仮想オーディオ信号を処理するために使用されることができる。
壁540は、実または仮想であるかどうかにかかわらず、上記に説明されるように、音オクルーダと見なされ得る。図5Bに示される上面図に見られるように、2つのベクトル532および534は、MRE500内の仮想音源520からユーザの左耳502および右耳504までの仮想オーディオ信号530の個別の経路を表すことができる。ベクトル532および534は、それぞれ、左および右耳に提示されるべき一意の左および右オーディオ信号に対応し得る。実施例に示されるように、ベクトル534(右耳504に対応する)は、壁540と交差する一方、ベクトル532(左耳502に対応する)は、交差し得ない。故に、壁540は、左オーディオ信号と異なる特性を右オーディオ信号に付与し得る。例えば、右オーディオ信号は、壁540に対応するように、減衰および低域通過フィルタリングを適用させ得る一方、左オーディオ信号は、適用させない。いくつかの実施例では、左オーディオ信号は、右耳504から仮想音源520まで左耳502から仮想音源520までのより大きい距離に対応するように(その音源からのオーディオ信号が右耳504より左耳502に若干遅れて到着する結果をもたらすであろう)、右オーディオ信号に対して位相偏移または時間偏移され得る。ユーザの聴覚系は、実世界内と同様に、本位相偏移または時間偏移を解釈し、仮想音源520がMRE500内のユーザの片側(例えば、右側)にあることを識別することに役立てることができる。
これらのステレオ差異の相対的重要性は、当該信号の周波数スペクトルにおける差異に依存し得る。例えば、位相偏移は、低周波数オーディオ信号(すなわち、ほぼ聴取者の頭部の幅の波長を伴う信号)を位置特定するためよりも、高周波数信号を位置特定するためにより有用であり得る。そのような低周波数信号では、左耳と右耳との間の到着差異の時間は、これらの信号の源を位置特定するために有用であり得る。
図5A−5Bに示されない、いくつかの実施例では、壁540等のオブジェクト(実または仮想かどうかにかかわらず)は、ユーザ501と仮想音源520との間にある必要はない。壁540がユーザの背後にある場合等のそのような実施例では、壁は、壁540に対し、左および右耳502および504に向かう仮想オーディオ信号530の反射を介して、異なる特性を左および右オーディオ信号に付与し得る。
従来のディスプレイモニタおよび部屋スピーカによって提示されるビデオゲーム等のいくつかの環境に優るMRE500の利点は、MRE500内のユーザの耳の実際の場所が決定されることができることである。図4に関して上記に説明されるように、ウェアラブル頭部デバイス510は、例えば、SLAM、ビジュアルオドメトリ技法、および/またはIMU等のセンサおよび測定ハードウェアの使用を通して、ユーザ501の場所を識別するように構成されることができる。いくつかの実施例では、ウェアラブル頭部デバイス510は、直接、ユーザの耳の個別の場所を検出するように構成されてもよい(例えば、耳502および504と関連付けられたセンサ、スピーカ512および514、またはつるのアーム(図2A−2Dに示されるつるのアーム2130および2132等)を介して)。いくつかの実施例では、ウェアラブル頭部デバイス510は、ユーザの頭部の位置を検出し、その位置に基づいて、ユーザの耳の個別の場所を近似させるように構成されてもよい(例えば、ユーザの頭部の幅を推定または検出し、頭部の円周に沿って位置し、頭部の幅によって分離されるような耳の場所を識別することによって)。ユーザの耳の場所を識別することによって、オーディオ信号は、それらの特定の場所に対応する、耳に提示されることができる。ユーザの実際の耳に対応する場合とそうではない場合がある、オーディオ受信機座標(例えば、仮想3D環境内の仮想カメラの原点座標)に基づいてオーディオ信号を決定する、技術と比較して、耳の場所を決定し、その場所に基づいて、オーディオ信号を提示することは、MRE内におけるユーザの没入感およびそれに対するつながりを向上させることができる。
それぞれ、左および右聴取者位置(例えば、MRE500内のユーザの耳502および504の場所)に対応する、スピーカ512および514を介して、一意および別個に決定された左および右オーディオ信号を提示されることによって、ユーザ501は、仮想音源520の位置および/または配向を識別することが可能である。これは、ユーザの聴覚系が、自然に、壁540等の音オクルーダの存在とともに、左および右オーディオ信号間の(例えば、利得、周波数、および位相の)差異を仮想音源520の位置および配向に起因させるためである。故に、これらのステレオオーディオキューは、MRE500内の仮想音源520および壁540のユーザ501の認知を改良する。これは、ひいては、ユーザ501のMRE500との関与の感覚を向上させることができる。例えば、仮想音源520が、MRE500内の重要なオブジェクト、例えば、ユーザ501に話しかける仮想キャラクタに対応する場合、ユーザ501は、ステレオオーディオ信号を使用して、そのオブジェクトの場所を迅速に識別することができる。これは、ひいては、オブジェクトの場所を識別するためにユーザ501にかかる認知負担を低減させることができ、また、MRE501にかかる算出負担を低減させることができる。例えば、プロセッサおよび/またはメモリ(例えば、図4のプロセッサ416および/またはメモリ418)は、オーディオキューがその仕事の多くを担っているため、オブジェクトの場所を識別するために、もはやユーザ501に高忠実性の視覚的キューを提示する必要がなくなり得る(例えば、3Dモデルおよびテクスチャおよび照明効果等の高分解能アセットを介して)。
上記に説明されるような非対称オクルージョン効果は、壁540等の実または仮想オブジェクトが、ユーザの顔に物理的に近接する状況、または実または仮想オブジェクトが、一方の耳をオクルードするが、他方をオクルードしない情報(図5Bに見られるように、ユーザの顔の中心が壁540の縁と整合されるとき等)において、特に、顕著であり得る。これらの状況は、効果があるように利用され得る。例えば、MRE500では、ユーザ501は、壁540の縁の背後に隠れ、角からこっそり見て、壁によってそのオブジェクトの音放出(例えば、仮想オーディオ信号530)に付与されるステレオオーディオ効果に基づいて、仮想オブジェクト(例えば、仮想音源520に対応する)を位置特定し得る。これは、例えば、MRE500に基づくゲーム環境内における戦術的ゲームプレー、ユーザ501が仮想部屋の異なる領域内の適切な音響をチェックする、建築設計用途、またはユーザ501が種々のオーディオ源(例えば、仮想鳥の鳴き声)とその環境の相互作用を探索する、教育または創造的利点を可能にすることができる。
いくつかの実施例では、左および右オーディオ信号はそれぞれ、独立して決定されなくてもよいが、他のまたは一般的オーディオ源に基づいてもよい。例えば、単一オーディオ源が、左オーディオ信号および右オーディオ信号の両方を生成する場合、左および右オーディオ信号は、全体的に独立していないが、単一オーディオ源を介して相互に音響的に関連すると見なされ得る。
図6は、左および右オーディオ信号をMRE500のユーザ501等のMREのユーザに提示するための例示的プロセス600を示す。例示的プロセス600は、ウェアラブル頭部デバイス510のプロセッサ(例えば、図4のプロセッサ416に対応する)および/またはDSPモジュール(例えば、図4のDSPオーディオ空間化装置422に対応する)によって実装されてもよい。
プロセス600の段階605では、第1の耳(例えば、ユーザの左耳502)および第2の耳(例えば、ユーザの右耳504)の個別の場所(例えば、聴取者座標および/またはベクトル)が、決定される。これらの場所は、上記に説明されるように、ウェアラブル頭部デバイス510のセンサを使用して決定されることができる。そのような座標は、ウェアラブル頭部デバイスのローカルのユーザ座標系(例えば、図1Aに関して上記に説明されるユーザ座標系114)に対することができる。そのようなユーザ座標系では、そのような座標系の原点は、ユーザの頭部の中心に近似的に対応し、左仮想聴取者および右仮想聴取者の場所の表現を簡略化し得る。SLAM、ビジュアルオドメトリ、および/またはIMUを使用して、環境座標系108に対するユーザ座標系114の変位および回転(例えば、6自由度)が、リアルタイムで更新されることができる。
段階610では、仮想音源520に対応し得る、第1の仮想音源が、定義されることができる。いくつかの実施例では、仮想音源は、仮想または実オブジェクトに対応してもよく、これは、ウェアラブル頭部デバイス510の深度カメラまたはセンサを介して識別および位置特定されてもよい。いくつかの実施例では、仮想オブジェクトは、上記に説明されるような実オブジェクトに対応してもよい。例えば、仮想オブジェクトは、対応する実オブジェクトの1つ以上の特性(例えば、位置、配向、材料、視覚的性質、音響性質)を有してもよい。仮想音源の場所は、座標系108(図1A−1C)内で確立されることができる。
段階620Aでは、ベクトル532に沿って伝搬し、第1の仮想聴取者(例えば、第1の近似耳位置)と交差する、仮想オーディオ信号530に対応し得る、第1の仮想オーディオ信号が、識別されることができる。例えば、音信号が、第1の時間tにおいて、第1の仮想音源によって生成されたという決定に応じて、第1の音源から第1の仮想聴取者までのベクトルが、算出されることができる。第1の仮想オーディオ信号は、ベースオーディオデータ(例えば、波形ファイル)と、随意に、上記に説明されるようにベースオーディオデータを修正するための1つ以上のパラメータと関連付けられることができる。同様に、段階620Bでは、ベクトル534に沿って伝搬し、第2の仮想聴取者(例えば、第2の近似耳位置)と交差する、仮想オーディオ信号530に対応し得る、第2の仮想オーディオ信号が、識別されることができる。
段階630Aでは、第1の仮想オーディオ信号によって交差される実または仮想オブジェクト(そのうちの1つは、例えば、壁540に対応し得る)が、識別される。例えば、トレースが、MRE500内の第1の音源から第1の仮想聴取者までのベクトルに沿って計算されることができ、トレースと交差する実または仮想オブジェクトが、識別されることができる(いくつかの実施例では、実または仮想オブジェクトが交差される、位置およびベクトル等の交点のパラメータとともに)。ある場合には、そのような実または仮想オブジェクトは、存在しなくてもよい。同様に、段階630Bでは、第2の仮想オーディオ信号によって交差される実または仮想オブジェクトが、識別される。再び、ある場合には、そのような実または仮想オブジェクトは、存在しなくてもよい。
いくつかの実施例では、段階630Aまたは段階630Bにおいて識別された実オブジェクトは、ウェアラブル頭部デバイス510と関連付けられた深度カメラまたは他のセンサを使用して、識別されることができる。いくつかの実施例では、段階630Aまたは段階630Bにおいて識別された仮想オブジェクトは、図1Cに関して説明されるような実オブジェクトおよび実オブジェクト122A、124A、および126A、および対応する仮想オブジェクト122B、124B、および126Bに対応してもよい。そのような実施例では、そのような実オブジェクトは、ウェアラブル頭部デバイス510と関連付けられた深度カメラまたは他のセンサを使用して、識別されることができ、仮想オブジェクトは、上記に説明されるようなそれらの実オブジェクトと対応するように生成されることができる。
段階640Aでは、段階630Aにおいて識別された各実または仮想オブジェクトが、段階650Aにおいてその実または仮想オブジェクトと関連付けられた任意の信号修正パラメータを識別するために処理される。例えば、上記に説明されるように、そのような信号修正パラメータは、第1の仮想オーディオ信号に適用されるべき減衰、フィルタリング、位相偏移、時間ベースの効果(例えば、遅延、反響、変調)、および/または他の効果を決定するための関数を含み得る。上記に説明されるように、これらのパラメータは、その実または仮想オブジェクトのサイズ、形状、または材料等の実または仮想オブジェクトと関連付けられた他のパラメータに依存し得る。段階660Aでは、それらの信号修正パラメータが、第1の仮想オーディオ信号に適用される。例えば、信号修正パラメータが、第1の仮想オーディオ信号が聴取者座標とオーディオ源との間の距離に伴って線形に増加する係数によって減衰されるべきであると規定する場合、その係数は、段階660Aにおいて、算出され(すなわち、MRE500内の第1の耳と第1の仮想音源との間の距離を計算することによって)、第1の仮想オーディオ信号に適用されることができる(すなわち、信号の振幅を結果として生じる利得係数によって乗算することによって)。いくつかの実施例では、信号修正パラメータが、HRTFを利用して、上記に説明されるようなユーザの頭部の位置および配向に基づいてオーディオ信号を修正し得る、図4のDSPオーディオ空間化装置422を使用して、決定または適用されることができる。段階630Aにおいて識別された全ての実または仮想オブジェクトが、段階660Aにおいて適用されると、処理された第1の仮想オーディオ信号(例えば、識別された実または仮想オブジェクトの全ての信号修正パラメータを表す)が、段階640Aによって出力される。同様に、段階640Bにおいて、段階630Bにおいて識別された各実または仮想オブジェクトが、処理され、信号修正パラメータを識別し(段階650B)、それらの信号修正パラメータを第2の仮想オーディオ信号に適用する(段階660B)。段階630Bにおいて識別された全ての実または仮想オブジェクトが、段階660Bにおいて適用されると、処理された第1の仮想オーディオ信号(例えば、識別された実または仮想オブジェクトの全ての信号修正パラメータを表す)が、段階640Bによって出力される。
段階670Aでは、段階640Aから出力された処理された第1の仮想オーディオ信号が、第1の耳に提示され得る、第1のオーディオ信号(例えば、左チャネルオーディオ信号)を決定するために使用されることができる。例えば、段階670Aでは、第1の仮想オーディオ信号が、他の左−チャネルオーディオ信号(例えば、他の仮想オーディオ信号、音楽、または対話)と混合されることができる。他の音を伴わない単純複合現実環境におけるようないくつかの実施例では、段階670Aは、第1のオーディオ信号を処理された第1の仮想オーディオ信号から決定するために、殆どまたは全く処理を実施しなくてもよい。段階670Aは、任意の好適なステレオ混合技法を組み込むことができる。同様に、段階680Aでは、段階640Bから出力された処理された第2の仮想オーディオ信号は、第2の耳に提示され得る、第2のオーディオ信号(例えば、右チャネルオーディオ信号)を決定するために使用されることができる。
段階680Aおよび段階680Bでは、それぞれ、段階670Aおよび670Bによって出力されたオーディオ信号が、それぞれ、第1の耳および第2の耳に提示される。例えば、左および右ステレオ信号は、それぞれ、増幅され、左および右スピーカ512および514に提示される、左および右アナログ信号(例えば、図4のDSPオーディオ空間化装置422によって)に変換されることができる。左および右スピーカ512および514が、それぞれ、左および右耳502および504に音響的に結合するように構成される場合、左および右耳502および504は、ステレオ効果を発する他のステレオ信号から十分な隔離において、その個別の左および右ステレオ信号を提示されてもよい。
図7は、1つ以上の上記に説明される実施例を実装するために使用され得る、例示的拡張現実処理システム700の機能ブロック図を示す。例示的システム700は、上記に説明される複合現実システム112等の複合現実システム内に実装されることができる。図7は、システム700のオーディオアーキテクチャの側面を示す。示される実施例では、ゲームエンジン702が、仮想3Dコンテンツ704を生成し、仮想3Dコンテンツ704を伴うイベントをシミュレートする(イベントは、仮想3Dコンテンツ704と実オブジェクトの相互作用を含み得る)。仮想3Dコンテンツ704は、例えば、静的仮想オブジェクト、機能性を伴う仮想オブジェクト、例えば、仮想楽器、仮想動物、および仮想人々を含むことができる。示される実施例では、仮想3Dコンテンツ704は、位置特定された仮想音源706を含む。位置特定された仮想音源706は、例えば、仮想鳥の歌、ユーザまたは仮想人物によって演奏される、仮想楽器によって放出される音、または仮想人物の音声に対応する、音源を含むことができる。
例示的拡張現実処理システム700は、高度の現実性を伴って、仮想3Dコンテンツ704を実世界の中に統合することができる。例えば、位置特定された仮想音源と関連付けられたオーディオは、ユーザからある距離に、かつオーディオが実オーディオ信号である場合、実オブジェクトによって部分的に遮られるであろう場所に位置し得る。しかしながら、例示的システム700では、オーディオは、左および右スピーカ412、414、2134、2136(例えば、複合現実システム112のウェアラブル頭部デバイス400Aに属し得る)によって出力されることができる。短距離のみスピーカ2134、2136からユーザの耳の中に進行する、そのオーディオは、障害物によって物理的に影響されない。しかしながら、システム700は、下記に説明されるように、オーディオを改変し、障害物の効果を考慮することができる。
例示的システム700では、ユーザ座標決定サブシステム708が、好適には、ウェアラブル頭部デバイス200、400A内に物理的に格納されることができる。ユーザ座標決定サブシステム708は、実世界環境に対するウェアラブル頭部デバイスの位置(例えば、X、Y、およびZ座標)および配向(例えば、ロール、ピッチ、ヨー;四元数)についての情報を維持することができる。仮想コンテンツは、環境座標系108(図1A−1C)内に定義され、これは、概して、実世界に対して固定される。しかしながら、実施例では、同一仮想コンテンツは、典型的には、ウェアラブル頭部デバイス200、400Aに固定され、ユーザの頭部が移動するにつれて実世界に対して移動する、接眼レンズ408、410およびスピーカ412、414、2134、2136を介して出力される。ウェアラブル頭部デバイス200、400Aが、変位または回転されるにつれて、仮想オーディオの空間化は、調節されてもよく、仮想コンテンツの視覚的ディスプレイは、変位および/または回転を考慮するように再レンダリングされるはずである。ユーザ座標決定サブシステム708は、慣性測定ユニット(IMU)710を含むことができ、これは、加速の測定値(そこから変位が積分によって決定され得る)を提供する、3つの直交加速度計(図7には図示せず)と、回転の測定値(そこから配向が積分によって決定され得る)を提供する、3つの直交ジャイロスコープ(図7には図示せず)とのセットを含むことができる。IMU710から取得される変位および配向のドリフト誤差を調節するために、同時位置特定およびマッピング(SLAM)および/またはビジュアルオドメトリブロック406が、ユーザ座標決定システム708内に含まれることができる。図4に示されるように、深度カメラ444が、SLAMおよび/またはビジュアルオドメトリブロック406に結合され、そのための画像入力を提供することができる。
空間的に顕著な実際のオクルードしているオブジェクトのセンササブシステム712(「オクルージョンサブシステム」)は、例示的拡張現実処理システム700内に含まれる。オクルージョンサブシステム712は、例えば、深度カメラ444、非深度カメラ(図7には図示せず)、音ナビゲーションおよび測距(ソナー)センサ(図7には図示せず)、および/または光検出および測距(LIDAR)センサ(図7には図示せず)を含むことができる。オクルージョンサブシステム712は、左および右聴取者位置に対応する仮想伝搬経路に影響を及ぼす障害物を判別するために十分な空間分解能を有することができる。例えば、ウェアラブル頭部デバイス200、400Aのユーザが、仮想音放出仮想オブジェクト(例えば、角を形成する壁が、ユーザの左耳に対する直接通視線を遮断しているが、ユーザの右耳は遮断していない場合における、仮想ゲーム中の敵)を実角からこっそり見ている場合、オクルージョンサブシステム712は、左耳に対する直接経路のみがオクルードされるであろうことを決定するための十分な分解能を伴って、障害物を感知することができる。いくつかの実施例では、オクルージョンサブシステム712は、より優れた空間分解能を有してもよく、オクルードしている実オブジェクトのサイズ(またはそれに対する立体角)およびそこまでの距離を決定することが可能であり得る。
図7に示される実施例では、オクルージョンサブシステム712は、チャネル毎(すなわち、左および右オーディオチャネル)交点および障害物範囲計算機(本明細書では、「障害物計算機」)714に結合される。実施例では、ユーザ座標決定システム708およびゲームエンジン702もまた、障害物計算機714に結合される。障害物計算機714は、仮想オーディオ源の座標をゲームエンジン702から、ユーザ座標をユーザ座標決定システム708から、および障害物の座標(例えば、随意に、距離を含む、角度座標)を示す情報をオクルージョンサブシステム712から受信することができる。幾何学形状を適用することによって、障害物計算機714は、各仮想オーディオ源から左および右聴取者位置のそれぞれまでの遮られたまたは遮られていない通視線が存在するかどうかを決定することができる。図7では、別個のブロックとして示されるが、障害物計算機714は、ゲームエンジン702と統合されることができる。いくつかの実施例では、オクルージョンは、最初に、ユーザ中心座標系内において、ユーザ座標決定システム708からの情報に基づいて、オクルージョンサブシステム712によって感知されてもよく、オクルージョンの座標は、障害物幾何学形状を分析する目的のために、環境座標系108に変換される。いくつかの実施例では、仮想音源の座標は、障害物幾何学形状を計算する目的のために、ユーザ中心座標系に変換されてもよい。オクルージョンサブシステム712がオクルードしているオブジェクトについての空間的に分解された情報を提供する、いくつかの実施例では、障害物計算機714は、遮っているオブジェクトによってオクルードされる通視線を中心とする立体角の範囲を決定することができる。より大きい立体角範囲を有する障害物は、より大きい減衰および/またはより大きい高周波数成分の範囲の減衰に適用することによって、考慮されることができる。
いくつかの実施例では、位置特定された仮想音源706は、モノオーディオ信号または左および右空間化オーディオ信号を含むことができる。そのような左および右空間化オーディオ信号は、ユーザに対する位置特定された仮想音源の座標に基づいて選択され得る、左および右頭部関連伝達関数(HRTF)を適用することによって決定されることができる。実施例700では、ゲームエンジン702は、ユーザ座標決定システム708に結合され、ユーザの座標(例えば、位置および配向)を受信する。ゲームエンジン702自体は、仮想音源の座標を決定することができ(例えば、ユーザ入力に応答して)、ユーザ座標の受信に応じて、幾何学形状によって、ユーザに対する音源の座標を決定することができる。
図7に示される実施例では、障害物計算機714は、フィルタアクティブ化および制御装置716に結合される。いくつかの実施例では、フィルタアクティブ化および制御装置716は、左フィルタバイパススイッチ718の左制御入力718Aに結合され、右フィルタバイパススイッチ720の右制御入力720Aに結合される。いくつかの実施例では、例示的システム700の他のコンポーネントの場合のように、バイパススイッチ718、720は、ソフトウェア内に実装されることができる。示される実施例では、左フィルタバイパススイッチ718は、空間化オーディオの左チャネルをゲームエンジン702から受信し、右フィルタバイパススイッチ720は、右空間化オーディオをゲームエンジン704から受信する。ゲームエンジン702がモノオーディオ信号を出力する、いくつかの実施例では、バイパススイッチ718、720は両方とも、同一モノオーディオ信号を受信することができる。
図7に示される実施例では、左バイパススイッチ718の第1の出力718Bは、左障害物フィルタ722を通して、左デジタル/アナログコンバータ(「左D/A」)724に結合され、左バイパススイッチ718の第2の出力718Cは、左D/A724に結合される(左障害物フィルタ722をバイパスする)。同様に、実施例では、右バイパススイッチ720の第1の出力720Bは、右障害物フィルタ726を通して、右デジタル/アナログコンバータ(「右D/A」)728に結合され、第2の出力720Cは、右D/A728に結合される(右障害物フィルタ726をバイパスする)。
図7に示される実施例では、フィルタ構成730のセットが、チャネル毎交点および障害物範囲計算機722の出力に基づいて、左障害物フィルタ722および/または右障害物フィルタを構成するように使用されることができる(例えば、フィルタアクティブ化および制御装置716によって)。いくつかの実施例では、バイパススイッチ718、720を提供する代わりに、障害物フィルタ722、726の非フィルタリング通過構成が、使用されることができる。障害物フィルタ722、726は、時間ドメインまたは周波数ドメインフィルタであることができる。フィルタが時間ドメインフィルタである、実施例では、各フィルタ構成は、タップ係数のセットを含むことができる。フィルタが周波数ドメインフィルタである、実施例では、各フィルタ構成は、周波数帯域加重のセットを含むことができる。いくつかの実施例では、所定の数のフィルタ構成のセットの代わりに、フィルタアクティブ化および制御装置716は、障害物のサイズに応じてあるレベルの減衰を有する、フィルタを定義するように構成されることができる(例えば、プログラム上)。フィルタアクティブ化および制御装置716は、フィルタ構成(例えば、より大きい障害物に関してより減衰させる構成)を選択または定義することができ、および/またはより高い周波数帯域を減衰させる(例えば、実障害物の効果をシミュレートするために、より大きい障害物に関してより大きい程度まで)、フィルタを選択または定義することができる。
図7に示される実施例では、フィルタアクティブ化および制御装置716は、左障害物フィルタ722の制御入力722Aおよび右障害物フィルタ726の制御入力726Aに結合される。フィルタアクティブ化および制御装置716は、チャネル毎交点および障害物範囲計算機714からの出力に基づいて、フィルタ構成730から選択された構成を使用して、左障害物フィルタ722および右障害物フィルタ726を別個に構成することができる。
図7に示される実施例では、左D/A724は、左オーディオ増幅器732の入力732Aに結合され、右D/A728は、右オーディオ増幅器734の入力734Aに結合される。実施例では、左オーディオ増幅器732の出力732Bは、左スピーカ2134、412に結合され、右オーディオ増幅器734の出力734Bは、右スピーカ2136、414に結合される。
図7に示される例示的機能ブロック図の要素は、必ずしも、示される順序ではなく、任意の好適な順序で配列されることができることに留意されたい。さらに、図7における実施例に示されるいくつかの要素(例えば、バイパススイッチ718、720)は、必要に応じて、省略されることができる。本開示は、実施例に示される機能コンポーネントの任意の特定の順序または配列に限定されない。
本開示のいくつかの実施例は、複合現実環境内でオーディオ信号を提示する方法であって、複合現実環境内で聴取者の第1の耳の位置を識別するステップと、複合現実環境内で聴取者の第2の耳の位置を識別するステップと、複合現実環境内で第1の仮想音源を識別するステップと、複合現実環境内で第1のオブジェクトを識別するステップと、複合現実環境内で第1のオーディオ信号を決定するステップであって、第1のオーディオ信号は、第1の仮想音源において生じ、聴取者の第1の耳の位置と交差する、ステップと、複合現実環境内で第2のオーディオ信号を決定するステップであって、第2のオーディオ信号は、第1の仮想音源において生じ、第1のオブジェクトと交差し、聴取者の第2の耳の位置と交差する、ステップと、第2のオーディオ信号および第1のオブジェクトに基づいて、第3のオーディオ信号を決定するステップと、第1のスピーカを介して、ユーザの第1の耳に、第1のオーディオ信号を提示するステップと、第2のスピーカを介して、ユーザの第2の耳に、第3のオーディオ信号を提示するステップとを含む、方法を対象とする。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、第3のオーディオ信号を第2のオーディオ信号から決定するステップは、低域通過フィルタを第2のオーディオ信号に適用するステップを含み、低域通過フィルタは、第1の仮想オブジェクトに基づくパラメータを有する。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、第3のオーディオ信号を第2のオーディオ信号から決定するステップは、減衰を第2のオーディオ信号に適用するステップを含み、減衰の強度は、第1のオブジェクトに基づく。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、第1のオブジェクトを識別するステップは、実オブジェクトを識別するステップを含む。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、実オブジェクトを識別するステップは、センサを使用して、複合現実環境内のユーザに対する実オブジェクトの位置を決定するステップを含む。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、センサは、深度カメラを備える。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、本方法はさらに、実オブジェクトに対応するヘルパデータを生成するステップを含む。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、本方法はさらに、実オブジェクトに対応する仮想オブジェクトを生成するステップを含む。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、本方法はさらに、第2の仮想オブジェクトを識別するステップを含み、第1のオーディオ信号は、第2の仮想オブジェクトと交差し、第4のオーディオ信号が、第2の仮想オブジェクトに基づいて決定される。
本開示のいくつかの実施例は、システムであって、ウェアラブル頭部デバイスであって、該ウェアラブル頭部デバイスは、複合現実環境をユーザに表示するためのディスプレイであって、それを通して実環境が可視である、透過性接眼レンズを備える、ディスプレイと、オーディオ信号をユーザの第1の耳に提示するように構成される、第1のスピーカと、オーディオ信号をユーザの第2の耳に提示するように構成される、第2のスピーカとを備える、ウェアラブル頭部デバイスと、複合現実環境内で聴取者の第1の耳の位置を識別するステップと、複合現実環境内で聴取者の第2の耳の位置を識別するステップと、複合現実環境内で第1の仮想音源を識別するステップと、複合現実環境内で第1のオブジェクトを識別するステップと、複合現実環境内で第1のオーディオ信号を決定するステップであって、第1のオーディオ信号は、第1の仮想音源において生じ、聴取者の第1の耳の位置と交差する、ステップと、複合現実環境内で第2のオーディオ信号を決定するステップであって、第2のオーディオ信号は、第1の仮想音源において生じ、第1のオブジェクトと交差し、聴取者の第2の耳の位置と交差する、ステップと、第2のオーディオ信号および第1のオブジェクトに基づいて、第3のオーディオ信号を決定するステップと、第1のスピーカを介して、第1の耳に、第1のオーディオ信号を提示するステップと、第2のスピーカを介して、第2の耳に、第3のオーディオ信号を提示するステップとを実施するように構成される、1つ以上のプロセッサとを備える、システムを対象とする。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、第3のオーディオ信号を第2のオーディオ信号から決定するステップは、低域通過フィルタを第2のオーディオ信号に適用するステップを含み、低域通過フィルタは、第1のオブジェクトに基づくパラメータを有する。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、第3のオーディオ信号を第2のオーディオ信号から決定するステップは、減衰を第2のオーディオ信号に適用するステップを含み、減衰の強度は、第1のオブジェクトに基づく。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、第1のオブジェクトを識別するステップは、実オブジェクトを識別するステップを含む。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、ウェアラブル頭部デバイスはさらに、センサを備え、実オブジェクトを識別するステップは、センサを使用して、複合現実環境内のユーザに対する実オブジェクトの位置を決定するステップを含む。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、センサは、深度カメラを備える。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、1つ以上のプロセッサはさらに、実オブジェクトに対応するヘルパデータを生成するステップを実施するように構成される。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、1つ以上のプロセッサはさらに、実オブジェクトに対応する仮想オブジェクトを生成するステップを実施するように構成される。上記に開示される実施例のうちの1つ以上のものに加えて、またはその代替として、いくつかの実施例では、1つ以上のプロセッサはさらに、第2の仮想オブジェクトを識別するステップを実施するように構成され、第1のオーディオ信号は、第2の仮想オブジェクトと交差し、第4のオーディオ信号が、第2の仮想オブジェクトに基づいて決定される。
開示される実施例は、付随の図面を参照して完全に説明されたが、種々の変更および修正が、当業者に明白となるであろうことに留意されたい。例えば、1つ以上の実装の要素は、組み合わせられ、削除され、修正され、または補完され、さらなる実装を形成してもよい。そのような変更および修正は、添付の請求項によって定義されるような開示される実施例の範囲内に含まれるものとして理解されるべきである。