AR、VR、および位置特定システムの概要
図1では、拡張現実場面(4)が、描写されており、AR技術のユーザには、人々、木々、背景における建物、およびコンクリートプラットフォーム(1120)を特徴とする、実世界公園状設定(6)が見える。これらのアイテムに加え、AR技術のユーザはまた、実世界プラットフォーム(1120)上に立っているロボット像(1110)と、マルハナバチの擬人化のように見える、飛んでいる漫画のようなアバタキャラクタ(2)とが「見える」と知覚するが、これらの要素(2、1110)は、実世界には存在しない。結論から述べると、ヒト視知覚系は、非常に複雑であって、他の仮想または実世界画像要素の中で仮想画像要素の快適かつ自然な感覚で豊かな提示を促進する、VRまたはAR技術を生成することは、困難である。
例えば、頭部装着型ARディスプレイ(またはヘルメット搭載型ディスプレイもしくはスマートグラス)は、典型的には、ユーザの頭部に少なくとも緩く結合され、したがって、ユーザの頭部が移動すると、移動し得る。ユーザの頭部の運動が、ディスプレイシステムによって検出される場合、表示されているデータは、頭部姿勢の変化を考慮するように更新されることができる。
実施例として、頭部装着型ディスプレイを装着するユーザが、ディスプレイ上の3次元(3-D)オブジェクトの仮想表現を視認し、3-Dオブジェクトが現れる面積の周囲を歩き回る場合、その3-Dオブジェクトは、視点毎に再レンダリングされ、彼らが、実空間を占有するオブジェクトの周囲を歩き回っているような知覚をユーザに与えることができる。頭部装着型ディスプレイが、仮想空間内に複数のオブジェクト(例えば、豊かな仮想世界)を提示するために使用される場合、頭部の姿勢の測定(例えば、ユーザの頭部の場所および配向)が、ユーザの動的に変化する頭部場所および配向に合致するように場面を再レンダリングし、仮想空間内への没入感の増加を提供するために使用されることができる。
ARシステムでは、頭部の姿勢の検出または計算は、ユーザにとって意味をなす様式において、ディスプレイシステムが実世界内の空間を占有するように現れるように、仮想オブジェクトをレンダリングすることを促進することができる。加えて、ユーザの頭部またはARシステムと連動したハンドヘルドデバイス(「トーテム」とも称され得る)、触知デバイス、または他の実際の物理的オブジェクト等の実オブジェクトの位置および/または配向の検出もまた、ディスプレイシステムが、ディスプレイ情報をユーザに提示し、ユーザが、ARシステムのある側面と効率的に相互作用することを可能にすることを促進し得る。ユーザの頭部が、実世界内で動き回るにつれて、仮想オブジェクトは、仮想オブジェクトが実世界に対して安定したまま現れるように、頭部の姿勢の関数として再レンダリングされ得る。少なくともAR用途に関して、物理的オブジェクトと空間的に連動した仮想オブジェクトの設置(例えば、2または3次元において物理的オブジェクトに空間的に近接して現れるように提示される)は、些細な問題ではあり得ない。例えば、頭部の移動が、周囲環境の視点からの仮想オブジェクトの設置を有意に複雑にし得る。これは、視点が周囲環境の画像として捕捉され、次いで、エンドユーザに投影もしくは表示されるかどうか、またはエンドユーザが周囲環境の視点を直接知覚するかどうかに当てはまる。例えば、頭部の移動は、エンドユーザの視野を変化させる可能性が高く、これは、種々の仮想オブジェクトがエンドユーザの視野に表示される場所に対する更新を要求する可能性が高いであろう。加えて、頭部移動は、多種多様な範囲および速度で生じ得る。頭部移動速度は、異なる頭部移動間においてだけではなく、単一頭部移動の範囲内またはそれを横断して変動し得る。例えば、頭部移動速度は、始点から増加し得(例えば、線形または非線形)、終点に到達するにつれて、減少し得、頭部の移動の始点と終点との間のある場所で最大速度を得る。高速頭部移動は、特定の表示または投影技術の能力さえ超え、均一および/または平滑運動としてエンドユーザに現れる画像をレンダリングし得る。
頭部追跡正確度および待ち時間(例えば、ユーザがその頭部を移動させてから、画像が更新され、ユーザに表示されるまでの経過時間)は、VRおよびARシステムにとって課題となっている。特に、ユーザの視野の実質的部分を仮想要素で充填する、ディスプレイシステムに関して、頭部追跡の正確度が高く、頭部運動の最初の検出からディスプレイによってユーザの視覚系に送達される光の更新までの全体的システム待ち時間が非常に短い場合、有利である。待ち時間が長い場合、システムは、ユーザの前庭と視感覚系との間に不整合をもたらし、乗り物酔いまたは3D酔いにつながり得る、ユーザ知覚シナリオを生成させ得る。システム待ち時間が長い場合、仮想オブジェクトの見掛け場所は、高速頭部運動の間、不安定に現れ得る。
頭部装着型ディスプレイシステムに加え、他のディスプレイシステムもまた、正確かつ短い待ち時間の頭部の姿勢検出から恩恵を受け得る。これらとして、ディスプレイが、ユーザの身体に装着されず、例えば、壁または他の表面上に搭載される、頭部追跡型ディスプレイシステムが挙げられる。頭部追跡型ディスプレイは、場面上に窓のように作用し得、ユーザがその頭部を「窓」に対して移動させるにつれて、場面は、ユーザの変化する視点に合致するように、再レンダリングされる。他のシステムとして、頭部装着型ディスプレイが光を実世界上に投影する、頭部装着型投影システムが挙げられる。
加えて、現実的拡張現実体験を提供するために、ARシステムは、ユーザと相互作用するように設計されてもよい。例えば、複数のユーザが、仮想ボールおよび/または他の仮想オブジェクトを用いて、ボールゲームをプレーしてもよい。1人のユーザが、仮想ボールを「キャッチ」し、ボールを別のユーザに投げ返してもよい。別の実施形態では、第1のユーザは、仮想ボールを打つためのトーテム(例えば、ARシステムに通信可能に結合される実際のバット)を提供されてもよい。他の実施形態では、仮想ユーザインターフェースは、ユーザが多くのオプションのうちの1つを選択することを可能にするために、ARユーザに提示されてもよい。ユーザは、トーテム、触知デバイス、ウェアラブルコンポーネントを使用し、または単に、仮想画面をタッチし、システムと相互作用してもよい。
ユーザの頭部の姿勢および配向ならびに空間内の実オブジェクトの物理的場所を検出することは、ARシステムが、仮想コンテンツを効果的かつ享受可能な様式で表示することを可能にする。しかしながら、これらの能力は、ARシステムにとって重要であるが、達成することが困難である。言い換えると、ARシステムは、実オブジェクト(例えば、ユーザの頭部、トーテム、触知デバイス、ウェアラブルコンポーネント、ユーザの手等)の物理的場所を認識し、実オブジェクトの物理的座標をユーザに表示されている1つ以上の仮想オブジェクトに対応する仮想座標に相関させなければならない。これは、概して、1つ以上のオブジェクトの位置および配向を高速レートで追跡する非常に正確なセンサならびにセンサ認識システムを要求する。現在のアプローチは、満足のゆく速度または精度規格において位置特定を行わない。
したがって、ARおよびVRデバイスのコンテキストにおいて、より優れた位置特定システムの必要がある。
(例示的ARおよびVRシステムならびにコンポーネント)
図2A-2Dを参照すると、いくつかの一般的コンポーネントオプションが、図示される。図2A-2Dの議論に従う、発明を実施するための形態の部分では、種々のシステム、サブシステム、およびコンポーネントが、ヒトVRならびに/またはARのための高品質かつ快適に知覚されるディスプレイシステムを提供する目的に対処するために提示される。
図2Aに示されるように、ARシステムユーザ(60)は、ユーザの眼の正面に位置付けられるディスプレイシステム(62)に結合されるフレーム(64)構造を特徴とする、頭部搭載型コンポーネント(58)を装着するように描写される。スピーカ(66)が、描写される構成においてフレーム(64)に結合され、ユーザの外耳道に隣接して位置付けられる(一実施形態では、示されない別のスピーカが、ユーザの他方の外耳道に隣接して位置付けられ、ステレオ/成形可能音制御を提供する)。ディスプレイ(62)は、有線導線または無線コネクティビティ等によって、ローカル処理およびデータモジュール(70)に動作可能に結合(68)され、これは、フレーム(64)に固定して取り付けられる、図2Bの実施形態に示されるようにヘルメットまたは帽子(80)に固定して取り付けられる、ヘッドホンに内蔵される、図2Cの実施形態に示されるようにリュック式構成においてユーザ(60)の胴体(82)に除去可能に取り付けられる、または図2Dの実施形態に示されるようにベルト結合式構成においてユーザ(60)の臀部(84)に除去可能に取り付けられる等、種々の構成において搭載されてもよい。
ローカル処理およびデータモジュール(70)は、電力効率の良いプロセッサまたはコントローラならびにフラッシュメモリ等のデジタルメモリを備えてもよく、両方とも、a)画像捕捉デバイス(カメラ等)、マイクロホン、慣性測定ユニット、加速度計、コンパス、GPSユニット、無線デバイス、および/またはジャイロスコープ等、フレーム(64)に動作可能に結合され得る、センサから捕捉される、および/またはb)可能性として、処理または読出後、ディスプレイ(62)への通過のために、遠隔処理モジュール(72)および/または遠隔データリポジトリ(74)を使用して、入手かつ/もしくは処理され得る、データの処理、キャッシュ、および記憶を補助するために利用されてもよい。ローカル処理およびデータモジュール(70)は、有線または無線通信リンク等を介して、遠隔モジュール(72、74)が、相互に動作可能に結合され、ローカル処理およびデータモジュール(70)へのリソースとして利用可能であるように、これらの遠隔処理モジュール(72)および遠隔データリポジトリ(74)に動作可能に結合(76、78)されてもよい。
一実施形態では、遠隔処理モジュール72は、データおよび/または画像情報を分析および処理するように構成される、1つ以上の比較的に高性能なプロセッサまたはコントローラを備えてもよい。一実施形態では、遠隔データリポジトリ(74)は、比較的に大規模なデジタルデータ記憶設備を備えてもよく、これは、インターネットまたは「クラウド」リソース構成における他のネットワーキング構成を通して利用可能であってもよい。一実施形態では、全てのデータは、記憶されてもよく、全ての算出は、ローカル処理およびデータモジュール内で行われ、任意の遠隔モジュールから完全に自律的使用を可能にしてもよい。
ここで図3を参照すると、概略図は、例えば、ユーザの頭部(120)に結合される頭部搭載型コンポーネント(58)およびユーザのベルト(308)に結合されるローカル処理およびデータモジュール(70)内に常駐し得る、クラウドコンピューティングアセット(46)とローカル処理アセットとの間の協調を図示する。したがって、コンポーネント70はまた、図3に示されるように、「ベルトパック」70とも称され得る。一実施形態では、1つ以上のサーバシステム(110)等のクラウド(46)アセットは、有線または無線ネットワーキング等を介して、(無線は、モバイル式のために好ましく、有線は、所望され得る、ある高帯域幅または高データ量転送のために好ましい)、直接、上記に記載されるように、ユーザの頭部(120)およびベルト(308)に結合されるプロセッサおよびメモリ構成等のローカルコンピューティングアセットの一方または両方(40、42)に動作可能に結合(115)される。ユーザにローカルのこれらのコンピューティングアセットは同様に、図8を参照して以下に議論される有線結合(68)等、有線および/または無線コネクティビティ構成(44)を介して、相互に動作可能に結合されてもよい。一実施形態では、ユーザの頭部(120)に搭載される低慣性および小型サブシステムを維持するために、ユーザとクラウド(46)との間の一次転送は、ベルト(308)に搭載されるサブシステムとクラウドとの間のリンクを介してもよく、頭部搭載型サブシステム(120)は、主に、例えば、パーソナルコンピューティング周辺コネクティビティ用途において現在採用されるような超広帯域(「UWB」)コネクティビティ等の無線コネクティビティを使用して、ベルトベースのサブシステム(308)にデータテザリングされる。
効率的ローカルおよび遠隔処理協調ならびに図2Aに示されるユーザインターフェースもしくはユーザディスプレイシステム(62)またはその変形例等のユーザのための適切なディスプレイデバイスを用いることで、ユーザの現在の実際または仮想場所に関する1つの世界の側面は、ユーザに転送もしくは「パス」され、効率的方式で更新され得る。言い換えると、世界のマップが、ユーザのARシステム上に部分的に常駐し、かつクラウドリソース内に部分的に常駐し得る記憶場所において、持続的に更新され得る。マップ(「パス可能世界モデル」とも称される)は、ラスタ画像、3-Dおよび2-D点、パラメータ情報、ならびに実世界についての他の情報を備える、大型データベースであってもよい。ますます多くのARユーザが、その実環境についての情報を持続的に捕捉するにつれて(例えば、カメラ、センサ、IMU等を通して)、マップは、ますます正確かつ完全となる。
上記に記載されるような構成を用いることで、クラウドコンピューティングリソース上に常駐し、そこから送達されることができる、1つの世界モデルが存在し、そのような世界は、リアルタイムビデオデータまたは同等物の回送を試みるために好ましい比較的に低帯域幅形態において、1人以上のユーザに「パス可能」となり得る。像の近くに立っている人(例えば、図1に示されるように)の拡張体験は、クラウドベースの世界モデルによって情報提供されてもよく、そのサブセットは、彼らおよび彼らのローカルディスプレイデバイスにパスされ、ビューを完成させてもよい。机上にあるパーソナルコンピュータと同程度に単純であり得る、遠隔ディスプレイデバイスに向かって着座している人が、その情報の同一セクションをクラウドから効率的にダウンロードし、それをそのディスプレイ上にレンダリングさせることもできる。実際、実際に像の近くに居る公園内に存在する1人の人物は、遠隔に位置する友人と公園内を散歩してもよく、友人は、仮想および拡張現実を通して参加する。本システムは、通りの場所、木々の場所、像の場所を把握する必要があるであろうが、クラウド上のその情報を用いることで、参加する友人は、クラウドから、シナリオの側面をダウンロードし、次いで、実際に公園内に居る人物に対してローカルな拡張現実に沿って歩行を開始することができる。
3次元(3-D)点が、環境から捕捉されてもよく、それらの画像または点を捕捉するカメラの姿勢(例えば、世界に対するベクトルおよび/または原位置情報)が、これらの点または画像が、本姿勢情報と「タグ付けされる」、もしくは関連付けられ得るように、決定されてもよい。次いで、第2のカメラによって捕捉された点は、第2のカメラの姿勢を決定するために利用されてもよい。言い換えると、第1のカメラからのタグ付けされた画像との比較に基づいて、第2のカメラを配向および/または位置特定することができる。次いで、本知識は、テクスチャを抽出する、マップを作成するため、および実世界の仮想コピーを作成するために利用されてもよい(その時点で、位置合わせされる2つのカメラが周囲に存在するため)。
したがって、基礎レベルでは、一実施形態では、人物装着型システムは、3-D点およびその点を生成した2-D画像の両方を捕捉するために利用されることができ、これらの点および画像は、クラウド記憶および処理リソースに送信されてもよい。それらはまた、内蔵姿勢情報とともにローカルにキャッシュされてもよい(すなわち、タグ付けされた画像をキャッシュする)。したがって、クラウドは、すぐ使える状態の(すなわち、利用可能なキャッシュ内において)タグ付けされた2-D画像(例えば、3-D姿勢とタグ付けされた)を3-D点とともに有し得る。ユーザが、動的なものを観察している場合、また、クラウドに、運動に関する付加的情報を送信してもよい(例えば、別の人物の顔を見ている場合、ユーザは、顔のテクスチャマップを撮影し、周囲世界がその他の点では基本的に静的であっても、それを最適化された周波数でプッシュすることができる)。オブジェクト認識装置およびパス可能世界モデルに関するさらなる情報は、「System and method for augmented and virtual reality」と題された米国特許公開第2014/0306866号(参照することによって本明細書にその全体として組み込まれる)とともに、Magic Leap, Inc.(Plantation, Florida)によって開発されたもの等の拡張および仮想現実システムに関連する、以下の付加的開示、すなわち、米国特許公開第2015/0178939号、米国特許公開第2015/0205126号、米国特許公開第2014/0267420号、米国特許公開第2015/0302652号、米国特許公開第2013/0117377号、および米国特許公開第2013/0128230号(それぞれ、参照することによってその全体として本明細書に組み込まれる)に見出され得る。
GPSおよび他の位置特定情報が、そのような処理のための入力として利用されてもよい。ユーザの頭部、トーテム、手のジェスチャ、触知デバイス等の非常に正確な位置特定が、適切な仮想コンテンツをユーザに表示するために、有利であり得る。
頭部搭載型デバイス(58)は、デバイスの装着者の眼の正面に位置付け可能なディスプレイを含んでもよい。ディスプレイは、ライトフィールドディスプレイを備えてもよい。ディスプレイは、複数の深度平面において画像を装着者に提示するように構成されてもよい。ディスプレイは、回折要素を伴う平面導波管を備えてもよい。本明細書に開示される実施形態のいずれかと併用可能なディスプレイ、頭部搭載型デバイス、および他のARコンポーネントの実施例は、米国特許公開第2015/0016777号に説明される。米国特許公開第2015/0016777号は、参照することによってその全体として本明細書に組み込まれる。
(電磁位置特定の実施例)
高精度位置特定を達成するための1つのアプローチは、ユーザのARヘッドセット、ベルトパック、および/または他の補助デバイス(例えば、トーテム、触知デバイス、ゲーム器具等)上に方略的に設置される、電磁センサと結合される電磁場(EM)の使用を伴い得る。電磁追跡システムは、典型的には、少なくとも、電磁場エミッタと、少なくとも1つの電磁場センサとを備える。センサは、既知の分布を伴う電磁場を測定してもよい。電磁場エミッタは、ARヘッドセットの装着者の環境内の既知の空間(および/または時間的)分布を有する、電磁場を生成する。電磁場センサは、センサの場所において生成された電磁場を測定する。これらの測定および生成された電磁場の分布の知識に基づいて、エミッタに対する電磁場センサの姿勢(例えば、位置および/または配向)が、決定されることができる。故に、センサが取り付けられるオブジェクトの姿勢が、決定されることができる。
ここで図4を参照すると、電磁追跡システムの例示的系統図(例えば、Johnson & Johnson Corporationの子会社であるBiosense、Polhemus, Inc.(Colchester, Vermont)等の組織によって開発されたもの、Sixense Entertainment, Inc.(Los Gatos, California)、および他の追跡装置製造企業によって製造されたもの等)が、図示される。1つ以上の実施形態では、電磁追跡システムは、既知の磁場を放出するように構成される、電磁場エミッタ402を備える。図4に示されるように、電磁場エミッタは、電力供給源(例えば、電流、バッテリ等)に結合され、電力を電磁場エミッタ402に提供してもよい。
1つ以上の実施形態では、電磁場エミッタ402は、磁場を生成する、いくつかのコイル(例えば、相互に垂直に位置付けられ、場をX、Y、およびZ方向に生成する、少なくとも3つのコイル)を備える。本磁場は、座標空間(例えば、X-Y-Zデカルト座標空間)を確立するために使用される。これは、システムが、既知の磁場と関連してセンサの位置(例えば、(X,Y,Z)位置)をマップすることを可能にし、センサの位置および/または配向を決定することに役立つ。1つ以上の実施形態では、電磁センサ404a、404b等が、1つ以上の実オブジェクトに取り付けられてもよい。電磁センサ404は、電流が放出される電磁場を通して誘発され得る、より小さいコイルを備えてもよい。概して、「センサ」コンポーネント(404)は、エミッタ(402)によって放出される磁場から流入する磁束を捕捉するように位置付けられる/配向される立方体または他の容器等の小型構造内にともに結合される、3つの異なるように配向される(例えば、相互に対して直交して配向される等)コイルのセット等の小型コイルまたはループを備えてもよく、これらのコイルを通して誘発される電流を比較することによって、かつ相互に対するコイルの相対的位置および配向を把握することによって、エミッタに対するセンサの相対的位置および配向が、計算され得る。
電磁追跡センサに動作可能に結合される、コイルおよび慣性測定ユニット(「IMU」)コンポーネントの挙動に関する1つ以上のパラメータが、電磁場エミッタが結合される座標系に対するセンサ(およびそれが取り付けられるオブジェクト)の位置および/または配向を検出するために、測定されてもよい。1つ以上の実施形態では、複数のセンサが、電磁エミッタと連動して使用され、座標空間内のセンサのそれぞれの位置および配向を検出してもよい。電磁追跡システムは、3つの方向(すなわち、X、Y、およびZ方向)において、さらに、2つまたは3つの配向角度において、位置を提供してもよい。1つ以上の実施形態では、IMUの測定は、コイルの測定と比較され、センサの位置および配向を決定してもよい。1つ以上の実施形態では、電磁(EM)データおよびIMUデータは両方とも、カメラ、深度センサ、および他のセンサ等の種々の他のデータ源とともに、位置および配向を決定するために組み合わせられてもよい。本情報は、コントローラ406に伝送されてもよい(例えば、無線通信、Bluetooth(登録商標)等)。1つ以上の実施形態では、姿勢(または位置および配向)は、従来のシステムにおいて比較的に高リフレッシュレートで報告されてもよい。従来、電磁場エミッタは、テーブル、手術台、壁、または天井等の比較的に安定した大型オブジェクトに結合され、1つ以上のセンサは、医療デバイス、ハンドヘルドゲームコンポーネント、または同等物等のより小型のオブジェクトに結合される。代替として、図6を参照して以下に説明されるように、電磁追跡システムの種々の特徴が、採用され、より安定したグローバル座標系に対する空間内を移動する2つのオブジェクト間の位置および/または配向における変化もしくはデルタが追跡され得る、構成を生成してもよい。言い換えると、構成は、図6に示されており、電磁追跡システムの変動が、利用され、頭部搭載型コンポーネントとハンドヘルドコンポーネントとの間の位置および配向デルタを追跡し得る一方、(例えば、ユーザにローカルの室内環境の)グローバル座標系に対する頭部の姿勢は、システムの頭部搭載型コンポーネントに結合され得る外向き捕捉カメラを使用して、同時位置特定およびマッピング(「SLAM」)技法等によって別様に決定される。
コントローラ406は、電磁場エミッタ402を制御してもよく、また、データを種々の電磁センサ404から捕捉してもよい。システムの種々のコンポーネントは、任意の電気機械的または無線/Bluetooth(登録商標)手段を通して相互に結合されてもよいことを理解されたい。コントローラ406はまた、既知の磁場および磁場に関連する座標空間に関するデータを備えてもよい。本情報は、次いで、既知の電磁場に対応する座標空間に関連してセンサの位置および配向を検出するために使用される。
電磁追跡システムの1つの利点は、最小限の待ち時間および高分解能を伴って非常に正確な追跡結果を生成することができることである。加えて、電磁追跡システムは、必ずしも、光学追跡装置に依拠せず、ユーザの視線内にないセンサ/オブジェクトは、容易に追跡され得る。
電磁場(「v」)の強度は、コイル送信機(例えば、電磁場エミッタ402)からの距離(「r」)の三次関数として低下することを理解されたい。したがって、アルゴリズムは、電磁場エミッタからの距離に基づいて、使用されてもよい。コントローラ406は、そのようなアルゴリズムを用いて、電磁場エミッタからの可変距離におけるセンサ/オブジェクトの位置および配向を決定するように構成されてもよい。センサが電磁エミッタから離れて移動するにつれて、電磁場の強度の急減を前提として、正確度、効率、および短待ち時間の観点から、最良結果が、より近い距離において達成され得る。典型的電磁追跡システムでは、電磁場エミッタは、電流(例えば、差込式電力供給源)によって給電され、電磁場エミッタから半径20フィート以内に位置するセンサを有する。センサと場エミッタとの間の半径が短いほど、AR用途を含む、多くの用途においてより望ましくあり得る。
ここで図5を参照すると、典型的電磁追跡システムの機能を説明する例示的フロー図が、簡単に説明される。502では、既知の電磁場が、放出される。1つ以上の実施形態では、磁場エミッタは、磁場を生成してもよく、各コイルは、電場を一方向(例えば、X、Y、またはZ)に生成させ得る。磁場は、恣意的波形を用いて生成されてもよい。1つ以上の実施形態では、軸のそれぞれに沿った磁場成分は、他の方向に沿った他の磁場成分と若干異なる周波数で発振してもよい。504では、電磁場に対応する座標空間が、決定され得る。例えば、図4の制御406は、電磁場に基づいて、エミッタの周囲の座標空間を自動的に決定してもよい。506では、センサ(既知のオブジェクトに取り付けられ得る)におけるコイルの挙動が、検出され得る。例えば、コイルにおいて誘発される電流が、計算されてもよい。他の実施形態では、コイルの回転または任意の他の定量化可能挙動が、追跡および測定されてもよい。508では、本挙動は、センサおよび/または既知のオブジェクトの位置または配向を検出するために使用されてもよい。例えば、コントローラ406は、センサにおけるコイルの挙動を種々の位置または配向に相関させる、マッピングテーブルを参考にしてもよい。これらの計算に基づいて、座標空間内の位置が、センサの配向とともに、決定されてもよい。
ARシステムのコンテキストでは、電磁追跡システムの1つ以上のコンポーネントは、モバイルコンポーネントの正確な追跡を促進するために、修正される必要があり得る。上記に記載されるように、ユーザの頭部の姿勢および配向の追跡は、多くのAR用途において望ましくあり得る。ユーザの頭部の姿勢および配向の正確な決定は、ARシステムが、正しい仮想コンテンツをユーザに表示することを可能にする。例えば、仮想場面は、実際の建物の背後に隠れているモンスタを含み得る。建物と関連したユーザの頭部の姿勢および配向に応じて、仮想モンスタのビューは、現実的AR体験が提供されるように修正される必要があり得る。または、トーテム、触知デバイス、もしくは仮想コンテンツと相互作用するある他の手段の位置および/または配向は、ARユーザがARシステムと相互作用することを可能にする際に重要であり得る。例えば、多くのゲーム用途では、ARシステムは、仮想コンテンツと関連した実オブジェクトの位置および配向を検出しなければならない。または、仮想インターフェースを表示するとき、トーテム、ユーザの手、触知デバイス、またはARシステムとの相互作用のために構成される任意の他の実オブジェクトの位置が、システムがコマンド等を理解するために、表示される仮想インターフェースと関連して把握されなければならない。光学追跡および他の方法を含む、従来の位置特定方法は、典型的には、長待ち時間および低分解能問題に悩まされ、仮想コンテンツのレンダリングを多くの拡張現実用途において困難にする。
1つ以上の実施形態では、図4および5に関連して議論される、電磁追跡システムは、放出される電磁場に関連して1つ以上のオブジェクトの位置および配向を検出するようにARシステムに適合されてもよい。典型的電磁システムは、大型かつ嵩張る電磁エミッタ(例えば、図4における402)を有する傾向にあって、これは、頭部搭載型ARデバイスにとって問題となる。しかしながら、より小型の電磁エミッタ(例えば、ミリメートル範囲内)が、ARシステムのコンテキストにおいて既知の電磁場を放出するために使用されてもよい。
ここで図6を参照すると、電磁追跡システムは、ハンドヘルドコントローラ606の一部として組み込まれる電磁場エミッタ602とともに、示されるように、ARシステムとともに組み込まれてもよい。コントローラ606は、ARヘッドセット(またはベルトパック70)に対して独立して移動可能であることができる。例えば、ユーザは、コントローラ606をその手の中に保持することができる、またはコントローラは、ユーザの手または腕に搭載され得る(例えば、指輪もしくはブレスレットとして、またはユーザによって装着される手袋の一部として)。1つ以上の実施形態では、ハンドヘルドコントローラは、ゲームシナリオにおいて使用されるため、または豊かなユーザ体験をAR環境内で提供するため、もしくはユーザがARシステムと相互作用することを可能にするためのトーテムであってもよい(例えば、多自由度コントローラ)。他の実施形態では、ハンドヘルドコントローラは、触知デバイスであってもよい。さらに他の実施形態では、電磁場エミッタは、単に、ベルトパック70の一部として組み込まれてもよい。ハンドヘルドコントローラ606は、電磁場エミッタ602に給電する、バッテリ610または他の電力供給源を備えてもよい。電磁場エミッタ602はまた、他のコンポーネントに対する電磁場エミッタ602の位置および/または配向の決定を補助するように構成される、IMUコンポーネント650を備える、またはそれに結合されてもよいことを理解されたい。これは、電磁場エミッタ602およびセンサ(604)の両方がモバイル式である場合、特に有利であり得る。図6の実施形態に示されるように、ベルトパックではなく、ハンドヘルドコントローラ内に電磁場エミッタ602を設置することは、電磁場エミッタがベルトパックにおいてリソースを競合するのではなく、むしろ、ハンドヘルドコントローラ606においてその独自のバッテリ源を使用することを確実にすることに役立つ。さらに他の実施形態では、電磁場エミッタ602は、ARヘッドセット上に配置されることができ、センサ604は、コントローラ606またはベルトパック70上に配置されることができる。
1つ以上の実施形態では、電磁センサ604は、1つ以上のIMUまたは付加的磁束捕捉コイル(608)等、他の感知デバイスとともに、ユーザのヘッドセット上の1つ以上の場所に設置されてもよい。例えば、図6に示されるように、センサ(604、608)は、ヘッドセット(58)の片側または両側に設置されてもよい。これらのセンサは、非常に小型(故に、ある場合には、低感度であり得る)に加工されるため、複数のセンサを有することは、効率および精度を改良し得る。1つ以上の実施形態では、1つ以上のセンサはまた、ベルトパック70またはユーザの身体の任意の他の部分上に設置されてもよい。センサ(604、608)は、無線でまたはBluetooth(登録商標)を通してセンサ(およびそれが取り付けられるARヘッドセット)の姿勢および配向を決定する、コンピューティング装置と通信してもよい。1つ以上の実施形態では、コンピューティング装置は、ベルトパック70に常駐してもよい。他の実施形態では、コンピューティング装置は、ヘッドセット自体またはさらにハンドヘルドコントローラ606に常駐してもよい。コンピューティング装置は、ひいては、マッピングデータベース(例えば、パス可能世界モデル、座標空間等)を備え、姿勢を検出し、実オブジェクトおよび仮想オブジェクトの座標を決定してもよく、さらに、1つ以上の実施形態では、クラウドリソースおよびパス可能世界モデルに接続してもよい。
上記に説明されるように、従来の電磁エミッタは、ARデバイスにおいて使用するために嵩張りすぎ得る。したがって、電磁場エミッタは、従来のシステムと比較してより小型のコイルを使用して、コンパクトに加工されてもよい。しかしながら、電磁場の強度が場エミッタからの距離の三次関数として減少することを前提として、電磁センサ604と電磁場エミッタ602との間の半径が短いほど(例えば、約3~3.5フィート)、図4に詳述されるもの等の従来のシステムと比較して、電力消費を低減させ得る。
本側面は、1つ以上の実施形態では、コントローラ606および電磁場エミッタ602に給電し得る、バッテリ610の寿命を延長させるために利用されてもよい。または、他の実施形態では、本側面は、電磁場エミッタ602において磁場を生成するコイルのサイズを縮小させるために利用されてもよい。しかしながら、同一の強度の磁場を得るために、電力は、増加される必要があり得る。これは、ハンドヘルドコントローラ606においてコンパクトに嵌合し得る、コンパクトな電磁場エミッタユニット602を可能にする。
いくつかの他の変更が、ARデバイスのために電磁追跡システムを使用するときに行われてもよい。本姿勢報告率は、非常に良好であるが、ARシステムは、さらにより効率的な姿勢報告率を要求してもよい。この目的を達成するために、IMUベースの姿勢追跡が、(加えて、または代替として)センサ内で使用されてもよい。有利には、IMUは、姿勢検出プロセスの効率を増加させるために、可能な限り安定したままでなければならない。IMUは、最大50~100ミリ秒、安定したままであるように加工されてもよい。いくつかの実施形態は、姿勢更新が10~20Hzのレートで報告されることを可能にし得る、外部姿勢推定器モジュールを利用してもよいことを理解されたい(例えば、IMUは、経時的にドリフトし得る)。IMUを合理的比率に安定して保つことによって、姿勢更新レートは、10~20Hzまで著しく低下され得る(従来のシステムにおけるより高い周波数と比較して)。
電磁追跡システムが、例えば、10%デューティサイクルにおいて起動され得る場合(例えば、100ミリ秒毎にのみ接地にピングする)、これは、ARシステムにおける電力を節約する別の方法となるであろう。これは、電磁追跡システムが、100ミリ秒毎に10ミリ秒にわたってウェイクアップし、姿勢推定値を生成することを意味するであろう。これは、直接、電力消費節約につながり、ひいては、ARデバイスのサイズ、バッテリ寿命、およびコストに影響を及ぼし得る。
1つ以上の実施形態では、デューティサイクルの本低減は、1つのみではなく、2つのハンドヘルドコントローラ(図示せず)を提供することによって方略的に利用されてもよい。例えば、ユーザは、2つのトーテム等を要求する、ゲームをプレーしてもよい。または、マルチユーザゲームでは、2人のユーザが、その独自のトーテム/ハンドヘルドコントローラを有し、ゲームをプレーしてもよい。1つではなく、2つのコントローラ(例えば、手毎の対称コントローラ)が、使用されるとき、コントローラは、オフセットデューティサイクルで動作してもよい。同一概念はまた、例えば、マルチプレーヤゲームをプレーしている2人の異なるユーザによって利用されるコントローラにも適用されてもよい。
ここで図7を参照すると、ARデバイスのコンテキストにおける電磁追跡システムを説明する例示的フロー図が、説明される。702では、ポータブル(例えば、ハンドヘルド)コントローラが、磁場を放出する。704では、電磁センサ(ヘッドセット、ベルトパック等上に設置される)が、磁場を検出する。706では、ヘッドセット/ベルトの姿勢(例えば、位置または配向)は、センサにおけるコイル/IMUの挙動に基づいて決定される。708では、姿勢情報が、コンピューティング装置(例えば、ベルトパックまたはヘッドセットにおける)に伝達される。710では、随意に、マッピングデータベース(例えば、パス可能世界モデル)は、実世界座標(例えば、ヘッドセット/ベルトの姿勢に関して決定される)と仮想世界座標を相関させるために調べられてもよい。712では、仮想コンテンツは、ARヘッドセットにおいてユーザに送達され、ユーザに表示されてもよい(例えば、本明細書に説明されるライトフィールドディスプレイを介して)。上記に説明されるフロー図は、例証目的にすぎず、限定として読み取られるべきではないことを理解されたい。
有利には、図6に概略されるものに類似する電磁追跡システムの使用は、姿勢追跡を可能にする(例えば、頭部位置および配向、トーテムおよび他のコントローラの位置ならびに配向)。これは、ARシステムが、光学追跡技法と比較して、より高い正確度およびより短い待ち時間を伴って、仮想コンテンツを投影することを可能にする(少なくとも部分的に、決定された姿勢に基づいて)。
図8を参照すると、多くの感知コンポーネントを特徴とする、システム構成が、図示される。頭部搭載型ウェアラブルコンポーネント(58)は、ここでは、図9A-9Fを参照して以下に説明されるように、制御および急速解除モジュール(86)もまた特徴とする、物理的マルチコア導線を使用して、ベルトパック等のローカル処理およびデータモジュール(70)に動作可能に結合(68)されて示される。ローカル処理およびデータモジュール(70)は、ここでは、低電力Bluetooth(登録商標)等の無線接続によって、ハンドヘルドコンポーネント(606)に動作可能に結合(100)される。ハンドヘルドコンポーネント(606)はまた、低電力Bluetooth(登録商標)等の無線接続等によって、直接、頭部搭載型ウェアラブルコンポーネント(58)に動作可能に結合(94)されてもよい。概して、IMUデータが、種々のコンポーネントの座標姿勢検出に通過される場合、数百または数千サイクル/秒もしくはより高い範囲内等、高周波数接続が、望ましい。センサ(604)および送信機(602)ペアリング等による電磁位置特定感知のためには、数十サイクル/秒が、適正であり得る。また、壁(8)等のユーザの周囲の実世界内の固定オブジェクトを表す、グローバル座標系(10)も示される。
クラウドリソース(46)はまた、それぞれ、ローカル処理およびデータモジュール(70)に、頭部搭載型ウェアラブルコンポーネント(58)に、壁(8)またはグローバル座標系(10)に対して固定される他のアイテムに結合され得るリソースに動作可能に結合(42、40、88、90)されてもよい。壁(8)に結合される、またはグローバル座標系(10)に対して既知の位置および/もしくは配向を有する、リソースは、無線送受信機(114)、電磁エミッタ(602)および/または受信機(604)、赤外線LEDビーコン等の所与のタイプの放射線を放出または反射させるように構成されるビーコンもしくは反射体(112)、セルラーネットワーク送受信機(110)、レーダエミッタまたは検出器(108)、LIDARエミッタまたは検出器(106)、GPS送受信機(118)、既知の検出可能パターン(122)を有するポスタまたはマーカ、およびカメラ(124)を含んでもよい。
頭部搭載型ウェアラブルコンポーネント(58)は、赤外線カメラ(124)のための赤外線エミッタ(130)等のカメラ(124)検出器を補助するように構成される光エミッタ(130)に加え、図示されるような類似コンポーネントを特徴とする。頭部搭載型ウェアラブルコンポーネント(58)はまた、1つ以上の歪みゲージ(116)を特徴とし、これは、頭部搭載型ウェアラブルコンポーネント(58)のフレームまたは機械的プラットフォームに固定して結合され、電磁受信機センサ(604)またはディスプレイ要素(62)等のコンポーネント間のそのようなプラットフォームの偏向を決定するように構成されてもよく、図8に描写される眼鏡様プラットフォーム上の突出部の上方の部分等のプラットフォームの薄い部分等においてプラットフォームの屈曲が生じた場合、それを理解することが重要であり得る。
頭部搭載型ウェアラブルコンポーネント(58)はまた、プロセッサ(128)と、1つ以上のIMU(102)とを特徴とする。コンポーネントはそれぞれ、好ましくは、プロセッサ(128)に動作可能に結合される。ハンドヘルドコンポーネント(606)およびローカル処理およびデータモジュール(70)は、類似コンポーネントを特徴とするように図示される。図8に示されるように、そのように多くの感知およびコネクティビティ手段を用いることで、そのようなシステムは、重く、電力を大量に消費し、大型で、かつ比較的に高価である可能性が高い。しかしながら、例証目的のために、そのようなシステムは、非常に高レベルのコネクティビティ、システムコンポーネント統合、および位置/配向追跡を提供するために利用されてもよい。例えば、そのような構成を用いることで、種々の主要モバイルコンポーネント(58、70、606)は、Wi-Fi、GPS、またはセルラー信号三角測量を使用して、グローバル座標系に対する位置の観点から位置特定されてもよく、ビーコン、電磁追跡(本明細書に説明されるように)、レーダ、およびLIDIRシステムはさらに、場所および/または配向情報ならびにフィードバックを提供してもよい。マーカおよびカメラもまた、相対および絶対位置ならびに配向に関するさらなる情報を提供するために利用されてもよい。例えば、頭部搭載型ウェアラブルコンポーネント(58)に結合されて示されるもの等の種々のカメラコンポーネント(124)は、コンポーネント(58)が他のコンポーネントに対して配向される場所およびその状態を決定するために、同時位置特定およびマッピングプロトコル、すなわち、「SLAM」において利用され得る、データを捕捉するために利用されてもよい。
図9A-9Fを参照すると、制御および急速解除モジュール86の種々の側面が、描写される。図9Aを参照すると、2つの外側筐体コンポーネント(132、134)が、機械的掛止を用いて増強され得る、磁気結合構成を使用して、ともに結合される。関連付けられたシステムの動作のためのボタン(136)、例えば、オン/オフボタン(円形ボタン)および上/下オンン量制御(三角形ボタン)が、含まれてもよい。モジュール86の対向端部は、図8に示されるように、ローカル処理およびデータモジュール(70)とディスプレイ(62)との間に延設される電気導線に接続されることができる。
図9Bは、外側筐体(132)が除去され、ボタン(136)および下層上部印刷回路基板(138)が示される、部分的切断図を図示する。図9Cを参照すると、ボタン(136)および下層上部印刷回路基板(138)が除去され、メス型接触ピンアレイ(140)が、可視である。図9Dを参照すると、筐体(134)の反対部分が除去され、下側印刷回路基板(142)が、可視である。下側印刷回路基板(142)が除去され、図9Eに示されるように、オス型接触ピンアレイ(144)が、可視である。
図9Fの断面図を参照すると、オス型ピンまたはメス型ピンのうちの少なくとも1つが、各ピンの縦軸に沿って押下され得るように、ばね荷重されるように構成される。ピンは、「ポゴピン」と称され得、概して、銅または金等の非常に伝導性の材料から成ってもよい。伝導性材料は、ピン上に鍍着されてもよく(例えば、浸漬または電気めっき)、伝導性材料の幅は、例えば、ある場合には、金の少なくとも25μmであってもよい。組み立てられると、図示される構成は、46個のオス型ピンと46個の対応するメス型ピンを噛合させ、アセンブリ全体は、2つの筐体(132、134)を手動で引き離し、ピンアレイ(140、144)の周縁の周囲に配向される北および南磁石を使用して発生され得る、磁気インターフェース146荷重を克服させることによって、急速解除式に分断されてもよい。一実施形態では、46個のポゴピンを圧縮することからの約2kgの荷重が、磁気インターフェース(146)によって提供される約4kgの閉鎖維持力と対抗される。アレイ内のピンは、約1.3mmずつ分離されてもよく、ピンは、ツイストペアまたは他の組み合わせ等の種々のタイプの伝導性ラインに動作可能に結合され、USB3.0、HDMI(登録商標)2.0(デジタルビデオ用)、I2S(デジタルオーディオ用)、高速シリアルデータに対する遷移時間最短差動信号(TMDS)、汎用入/出力(GPIO)、およびモバイルインターフェース(例えば、MIPI)構成、バッテリ/電力接続、ならびに一実施形態では、最大約4アンペアおよび5ボルトのために構成される、高電流アナログラインおよび接地等のインターフェースをサポートしてもよい。
一実施形態では、磁気インターフェース(146)は、概して、長方形であって、ピンアレイ(140、144)を囲繞し、約1mm幅および4.8mm高さである。長方形磁石の内径は、約14.6mmである。オス型ピンアレイ(144)を囲繞する磁石は、第1の極性(例えば、北)を有してもよく、メス型ピンアレイ(140)を囲繞する磁石は、第2の(反対)極性(例えば、南)を有してもよい。ある場合には、各磁石は、対向磁石が対応する反対極性を有する、北および南極性の混合を備え、磁気引力を提供し、筐体(132、134)をともに保持することを補助する。
アレイ(140、144)内のポゴピンは、4.0~4.6mmの範囲内の高さと、0.6~0.8mmの範囲内の直径とを有する。アレイ内の異なるピンは、異なる高さ、直径、およびピッチを有することができる。例えば、一実装では、ピンアレイ(140、144)は、約42~50mmの長さ、約7~10mmの幅、および約5mmの高さを有する。USB2.0および他の信号のためのピンアレイのピッチは、約1.3mmであることができ、高速信号のためのピンアレイのピッチは、約2.0~2.5mmであることができる。
図10を参照すると、最小限にされたコンポーネント/特徴セットを有し、種々のコンポーネントの加重および大きさを低減させる、または最小限にし、例えば、図10に特徴付けられるもの(58)等の比較的にスリムな頭部搭載型コンポーネントに到達することを可能にすることが有用である。したがって、図8に示される種々のコンポーネントの種々の順列および組み合わせが、利用されてもよい。
(ARシステム内の例示的電磁感知コンポーネント)
図11Aを参照すると、電磁感知コイルアセンブリ(604、例えば、筐体に結合される3つの個々のコイル)が、頭部搭載型コンポーネント(58)に結合されて示される。そのような構成は、付加的幾何学形状を全体的アセンブリに追加し、これは、望ましくない場合がある。図11Bを参照すると、図11Aの構成におけるように、コイルをボックスまたは単一筐体内に格納するのではなく、個々のコイルは、図11Bに示されるように、頭部搭載型コンポーネント(58)の種々の構造の中に統合されてもよい。図11Bは、X-軸コイル(148)、Y-軸コイル(150)、およびZ-軸コイル(152)のための頭部搭載型ディスプレイ58上の場所の実施例を示す。したがって、感知コイルは、頭部搭載型ディスプレイ(58)上またはそれを中心として空間的に分散され、電磁追跡システムによって、ディスプレイ(58)の位置特定および/または配向の所望の空間分解能または正確度を提供することができる。
図12A-12Eは、電磁センサに結合されるフェライトコア1200a-1200eを使用して、場感度を増加させるための種々の構成を図示する。図12Aは、立方体の形状における中実フェライトコア1200aを図示し、図12Bは、相互から離間される複数の長方形ディスクとして構成されるフェライトコア1200bを示し、図12Cは、単軸空気コアを有するフェライトコア1200cを示し、図12Dは、3軸空気コアを有するフェライトコア1200dを示し、図12Eは、複数のフェライトロッドを筐体(プラスチックから作製されてもよい)内に備えるフェライトコア1200eを示す。図12B-12Eの実施形態1200b-1200eは、図12Aの中実コア実施形態1200aより加重が軽く、質量を節約するために利用されてもよい。図12A-12Eでは、立方体として示されるが、フェライトコアは、他の実施形態では、異なるように成形されることができる。
(EM追跡システムのための周波数分割多重化、時分割多重化、および利得制御)
従来のEM追跡ソリューションは、典型的には、周波数分割多重化(FDM)回路設計または時分割多重化(TDM)回路設計のいずれかを採用する。しかしながら、FDM設計は、典型的には、より多くの電流を使用し、TDM設計は、典型的には、限定数のユーザのみをサポートする。以下にさらに説明されるように、FDMおよびTDM設計の両方を融合する回路設計は、両方の利点を達成し得る。そのような設計の利点は、従来の設計と比較して、印刷回路基板(PCB)の面積、材料コスト、使用される部品の数、および/または電流ドレインに関する節約を含むことができる。本設計はまた、複数のユーザに改良または最適性能をもたらすことができる。
図13Aは、周波数分割多重化されるEM送信機(TX)回路1302の実施例を図式的に図示する、ブロック図である。EM送信機回路は、EM追跡システム内の3つの調整された直交コイルを駆動することができる。EM TXによって生成された時変EM場は、EM受信機によって感知されることができる(例えば、図13Bを参照して説明される)。本回路は、マスタ制御ユニット(MCU)を使用して、3つの異なる無線周波数(RF)周波数(f1、f2、およびf3)における3つの異なるシンセサイザを制御し、その出力は、フィルタリングされ(例えば、帯域通過フィルタ(BPF)および随意のフェライトビーズ(FB)において)、増幅され(例えば、前置増幅器(PA)を介して)、個別のX、Y、Zコイルにフィードされる。回路はまた、各コイルの中への電流が一定のままであることを確実にする、電流感知制御回路(R-感知および電流Ctrl)を採用する。本回路はまた、図13Bを参照して説明されるEM受信機ユニットと通信するMCUに接続される、RF無線通信インターフェース(例えば、Bluetooth(登録商標)低エネルギー(BLE))を有する。
図13Bは、周波数分割多重化されるEM受信機(RX)回路1304の実施例を図式的に図示する、ブロック図である。EM受信機は、3つの直交コイル(周波数f1で動作するX-コイル、周波数f2で動作するY-コイル、および周波数f3で動作するZ-コイル)を使用して、EM TX回路1302によって生成された時変EM信号を受信する(例えば、図13A参照)。3つの信号は、並行して、個々に増幅され(例えば、前置増幅器(PA)を介して)、フィルタリングされる(例えば、帯域通過フィルタ(BPF)によって)。随意に、フィルタ出力はさらに、増幅されてもよい。増幅された出力は、次いで、アナログ/デジタル(ADC)の中にフィードされ、デジタル信号は、デジタル信号プロセッサ(DSP)によって処理される。DSPは、前置増幅器の利得を制御し、ADCを飽和しないように保つことができる。本受信機設計はまた、EM送信機と通信するDSP(またはMCU)に接続される、無線周波数(RF)通信リンクを有する(例えば、図13Bを参照して説明される)。RFリンクは、Bluetooth(登録商標)低エネルギー(BLE)を含む、任意の好適な無線規格をサポートするように構成されることができる。
図13Aおよび13Bに示されるEM TXおよびRX回路1302、1304(ならびに図13C-13Jを参照して以下に説明されるTXおよびRX回路)は、EM追跡のために使用されることができる。例えば、EM TX回路1302は、図4を参照して説明される、EM場エミッタ402内で使用され、EM RX回路1304は、EM場センサ404内で使用されることができる。EM TXおよびRX回路の付加的実施形態は、例えば、低減された部品数、低減されたPCB面積、より低い材料コスト等の利点を提供することができ、複数のユーザに最適性能をもたらし得るように説明されるであろう。
図13Cは、時分割多重化されるEM送信機回路1302の実施例を図式的に図示する、ブロック図である。本実施形態では、図13AのFDM回路は、時分割多重化回路に変更されている。TDM回路は、3つの直交コイルに分割される、1つのみの経路を使用する。X、Y、およびZ-コイルは、それぞれ、周波数f1、f2、およびf3において動作し、EM受信機回路によって受信される時変EM場を生成する。TDM回路は、TDMタイミングプロトコルに従って、個別の時間t1、t2、およびt3においてこれらのコイルを動作させることができる(例えば、図13Fおよび13G参照)。自動利得制御(AGC)は、送信機回路内に含まれることができる(図13Iおよび13Jを参照して以下にさらに説明される)。各コイルは、MCUによって割り当てられる所望の周波数に動的に周波数調整されることができる。
(動的周波数調整)
動的周波数調整は、各コイル上で共振を達成し、EM TX回路内の増加または最大電流フローを取得するために使用されることができる。動的周波数調整は、複数のユーザに適応するために使用されることができる。図13Dは、動的に調整可能な回路1306の実施例を図式的に図示する、ブロック図である。動的に調整可能な回路1306の他の実施形態は、図17D-17Gを参照して説明される。図13Dに示される回路では、伝送コイルは、インダクタL1によって表される。静的コンデンサ(C2)は、調整可能コンデンサ(C1)と並列である。本実施例では、コンデンサC1を調整することによってコイルによって生成される周波数は、周波数範囲16kHz~30kHzを網羅する。図13Eは、図13Dに示される回路1306を動的に調整することによって達成され得る、種々の周波数(16kHz~30kHz)における共振の実施例を示す、グラフである。複数のユーザに適応するために、例示的動的周波数調整回路は、ユーザあたり1つの伝送(TX)周波数を採用することができる。周波数割当の実施例は、表1に示される。
(時分割多重化)
いくつかの実施形態では、送信機上で時分割多重化を達成するために、送信機および受信機回路間の同期が、利用されてもよい。同期のための2つの可能性として考えられるシナリオが、以下に議論される。
第1のシナリオは、受信機および送信機の両方のRF無線インターフェース(例えば、BLE)を通して同期を使用する。無線RFリンクは、送信機および受信機の両方のクロックを同期させるために使用されることができる。同期が達成された後、時分割多重化は、オンボードリアルタイムクロック(RTC)に参照されることができる。
第2のシナリオは、電磁パルスを通して同期を使用する。EMパルスの飛行時間は、TDM回路内で典型的に使用される公差より有意に短く、無視されてもよい。TX EMパルスは、送信機によって、受信機クロックと送信機クロックとの間の時間差異を計算する、受信機に送信される。本時間差異は、RF無線リンクを経由して、既知のオフセットとして通信される、または無線インターフェース(例えば、BLE)クロック上の基準を調節するために使用される。
いくつかの実施形態では、これらの同期シナリオの一方または両方が、実装されることができる。同期が完了された後、送信機および受信機のためのTDMに関する時間シーケンスが、確立されることができる。図13Fは、TDMタイミング図1308の実施例を図示する。X-コイル上のTXは、受信機のX、Y、およびZコイルがX-コイルによって生成された磁束を受信することを可能にする、第1の時間周期にわたってオンのまま留まるであろう。第1の時間周期の間、Y-コイルおよびZ-コイル上のTXは、実質的にオフである(例えば、コイルは、完全にオフである、またはその通常動作電圧をはるかに下回る(例えば、<10%、<5%、<1%等)電圧で動作する)。X-コイル伝送に続いて、Y-コイル上のTXは、オンになり(かつX-コイルは、実質的にオフになるであろう一方、Z-コイルは、実質的にオフのままである)、受信機のX、Y、およびZコイルは、TXY-コイルによって生成された磁束を受信するであろう。Y-コイル伝送に続いて、Z-コイル上のTXは、オンになり(かつY-コイルは、実質的にオフになるであろう一方、X-コイルは、実質的にオフのままである)、受信機のX、Y、およびZコイルは、TXZ-コイルによって生成された磁束を受信するであろう。本タイミングシーケンスは、次いで、EM送信機が動作する間、持続的に繰り返される。
以下は、複数のユーザに適応する非限定的例証的実施例を説明する。例えば、それぞれ8つのTX周波数を要求する、2つの送信機を伴う、最大4人のユーザに適応する。概して、これらの周波数が、重複されない場合、有利である。そのような実施形態では、走査プロセスが、EM受信機によって実装され、特定の周波数が近接近度で使用されているかどうかを決定することができる。図13Gは、走査タイミング1310の実施例を図示する。本走査は、初期化時ならびにユーザのセッションの間に周期的に、EM受信機1304によって行われることができる。走査は、送信機1302内のTXを意図的にオフにし、(受信機1304内の)RXを通して巡回させ、非意図的干渉の存在を測定することによって、実施されることができる。その周波数におけるエネルギーが存在することが決定された場合、代替周波数が、選択されることができる。本走査はまた、位置および配向(PnO)がそのスロット内で要求されないため、3つの直交コイルの1つまたは2つ(全3つではなく)を監視することによって短縮されることができる。
図13Hは、EM追跡システム内の受信機1304の別の実施例を図式的に図示する、ブロック図である。図13Bに図示される例示的FDM受信機と比較されるように、TDMスイッチが、3つの直交コイルからの個々の経路に取って代わっている。TDMスイッチは、RF無線インターフェース(例えば、BLE)によって制御されることができる。TDMスイッチは、図13Fに図示されるタイミングプロトコル1308を利用することができる。
種々の実施形態では、図13C-13Hを参照して説明される時分割多重化TXおよび/またはRX回路は、以下の利点のうちの1つ以上のものを提供し得る。(A)電流ドレインおよびバッテリ寿命。送信機および受信機を時間多重化することによって、使用される電流の量が、低下され得る。本低減は、送信機等の高電流回路がもはや100%の時間を利用していないという事実から生じる。システムの電流ドレインは、図13Aおよび13Bに示されるFDM回路と比較して、1/3をわずかに上回って低減されることができる。(B)材料コストの請求額。同一結果を達成するために使用されるコンポーネントの数は、上記に説明されるTDM実施形態において低減されている(図13Aおよび13BにおけるFDM回路と比較して)。同一経路を通した信号の多重化は、部品数を低減させ、この場合、コンポーネントのコストもまた、FDM対応物と比較して1/3をわずかに上回って低減されるはずである。(C)PCB面積。部品低減の別の利点は、PCB面積において得られる節約であり得る。部品数は、ほぼ2/3低減され、したがって、PCB上で要求される空間も、低減される。
他の可能性として考えられる利点は、TXおよびRX回路の低減された質量であり得る。例えば、図13Aおよび13Bに示されるFDMTXおよびRX回路は、3つの直交コイル毎に別個のフィルタおよび増幅器経路を利用する。対照的に、図13Cおよび13Hに図示されるTDM TXおよびRX回路は、フィルタおよび増幅器経路を共有する。
センサ筐体を除去し、多重化し、頭部上のハードウェアを節約することに加え、信号対ノイズ比が、1つを上回るセットの電磁センサを有することによって増加されてもよく、各セットは、単一のより大きいコイルセットに対して比較的に小さい。また、概して、複数の感知コイルを近接近して有するために必要とされる、低側周波数限界が、帯域幅要件改良を促進するために改良され得る。多重化が、概して、時間的にRF信号の受信を拡散させ、概して、よりノイズの多い信号をもたらすという点において、概して、TD多重化とのトレードオフが存在する。したがって、より大きいコイル直径が、多重化システムのために使用されてもよい。例えば、多重化システムは、9mm辺寸法の立方体コイルセンサボックスを利用してもよく、非多重化システムは、類似性能のために、7mm辺寸法の立方体コイルボックスのみを利用してもよい。したがって、幾何学形状および質量を最小限にし、FDMおよびTDM回路の実施形態間で選択する際、トレードオフが存在し得る。
(電磁追跡システムのための例示的自動利得制御)
図13Aおよび13Bを参照すると、FDM受信機(図13B)は、閉ループ利得制御を実装する一方、FDM送信機(図13A)は、利得制御を実装せず、受信されたレベルにかかわらず、その最大出力電力で伝送するままにされる。受信機の利得は、DSPによって設定されることができる。例えば、受信機コイル上で受信された電圧は、直接、利得制御を有する、第1の段の中にフィードされる。大電圧は、DSP内で決定されることができ、DSPは、自動的に、第1の段の利得を調節することができる。利得制御を受信機内に設置することは、必要とされないときでも、送信機内でより多くの電力を利用し得る。故に、自動利得制御(AGC、時として、適応利得制御とも称される)を送信機側(受信機側ではなく)上で採用することが有利であり得、これは、受信機システム内の空間(そうでなければAGCのために使用されるであろう)を節約し、それによって、はるかに小型かつ可搬性の受信機を可能にし得る。
図13Iは、自動利得制御(AGC)を利用しない、EM受信機1304の実施例を図式的に図示する、ブロック図である。第1の段は、もはやAGC回路ではなく(図13Bと比較して)、受信機は、単に、一定利得を有するように設計される。コイル上で受信された電圧のレベルは、DSPによって決定され、DSPは、その情報を無線(例えば、BLE)リンクに提供する。本BLEリンクは、その情報を送信機に提供し、TXレベルを制御することができる(図13J参照)。
図13Jは、AGCを採用する、EM送信機1302の実施例を図式的に図示する、ブロック図である。図13JのEM送信機1302は、図13Iの受信機1304と通信することができる。無線リンク(例えば、BLE)は、受信された電圧レベル(受信機上のBLEリンクから)をMCUに通信する。増幅段は、MCUによって制御される、調節可能利得を有することができる。これは、要求される受信された電圧が小さいとき、送信機上の電流節約を可能にすることができる。
故に、図13Iおよび13JにおけるRXおよびTX回路実施例は、EM受信機1304の代わりに、EM送信機1302内でAGCを採用する。図13Aおよび13BにおけるRXおよびTX回路実施例からの本変化は、TX電力が必要なときに低減させることを可能にされるであろうため、より小型のRX設計ならびにより電力効率的設計を可能にすることができる。
(ユーザ頭部姿勢または手姿勢のEM追跡の実施例)
図14を参照すると、一実施形態では、ユーザがそのウェアラブルコンピューティングシステム(160)に電源を投入後、頭部搭載型コンポーネントアセンブリは、IMUおよびカメラデータ(カメラデータは、例えば、より多くの未加工処理能力が存在し得る、ベルトパックプロセッサ等のSLAM分析のために使用される)の組み合わせを捕捉し、実世界グローバル座標系(162)に対する頭部の姿勢(例えば、位置または配向)を決定および更新してもよい。ユーザはまた、ハンドヘルドコンポーネントをアクティブ化し、例えば、拡張現実ゲーム(164)をプレーしてもよく、ハンドヘルドコンポーネントは、ベルトパックおよび頭部搭載型コンポーネント(166)の一方または両方に動作可能に結合される電磁送信機を備えてもよい。頭部搭載型コンポーネントに結合される1つ以上の電磁場コイル受信機セット(例えば、セットは、3つの異なるように配向される個々のコイルである)が、送信機から磁束を捕捉し、これは、頭部搭載型コンポーネントとハンドヘルドコンポーネント(168)との間の位置または配向差(または「デルタ」)を決定するために利用されてもよい。グローバル座標系に対する姿勢の決定を補助する頭部搭載型コンポーネントと、頭部搭載型コンポーネントに対するハンドヘルドの相対的場所および配向の決定を補助するハンドヘルドの組み合わせは、システムが、概して、各コンポーネントがグローバル座標系に対して位置する場所、したがって、ユーザの頭部の姿勢を決定することを可能にし、ハンドヘルド姿勢は、好ましくは、拡張現実画像特徴の提示と、ハンドヘルドコンポーネント(170)の移動および回転を使用した相互作用とのために、比較的に短待ち時間で追跡され得る。
図15を参照すると、図14のものに幾分類似するが、ユーザの頭部の姿勢およびハンドヘルド姿勢が、好ましくは、拡張現実画像特徴の提示と、ハンドヘルドコンポーネント(180)の移動および回転を使用した相互作用とのために、比較的に短待ち時間において追跡され得るように、システムが頭部搭載型コンポーネント(172)およびハンドヘルドコンポーネント(176、178)の両方の姿勢の決定を補助するために利用可能なより多くの感知デバイスおよび構成を有する、実施形態が、図示される。
(例示的ステレオおよび飛行時間深度感知)
図16Aおよび16Bを参照すると、図8のものに類似する構成の種々の側面が、示される。図16Aの構成は、LIDAR(106)タイプの深度センサに加え、図16Aの構成が、例証目的のために、例えば、ステレオ三角測量式深度センサ(受動ステレオ深度センサ、テクスチャ投影ステレオ深度センサ、または構造化光ステレオ深度センサ等)または飛行時間式深度センサ(LIDAR深度センサまたは変調放出深度センサ等)のいずれかであり得る、汎用深度カメラまたは深度センサ(154)を特徴とするという点において、図8のものと異なる。さらに、図16Aの構成は、付加的な前向きの「世界」カメラ(124、720p範囲の分解能が可能なセンサを有する、グレースケールカメラであってもよい)ならびに比較的に高分解能「写真カメラ」(156、例えば、2メガピクセル以上の高い分解能が可能なセンサを有する、フルカラーカメラであってもよい)を有する。図16Bは、図16Bを参照して以下にさらに説明されるように、例証目的のために、図16Aの構成の部分的直交図を示す。
図16Aおよび上記に記載されるステレオ対飛行時間式深度センサに戻って参照すると、これらの深度センサタイプはそれぞれ、本明細書に開示されるようなウェアラブルコンピューティングソリューションとともに採用され得るが、それぞれ、種々の利点および不利点を有する。例えば、多くの深度センサは、黒色表面および光輝または反射表面に関する課題を有する。受動ステレオ深度感知は、深度カメラまたはセンサを用いて深度を計算するために三角測量を得るという比較的に単純な方法であるが、広視野(「FOV」)が要求される場合、課題となり得、比較的に有意なコンピューティングリソースを要求し得る。さらに、そのようなセンサタイプは、将来的特定のユースケースに重要であり得る、エッジ検出に関する課題を有し得る。受動ステレオは、無テクスチャ壁、低光状況、および繰り返されるパターンに関する課題を有し得る。受動ステレオ深度センサは、IntelおよびAquifi等の製造業者から利用可能である。テクスチャ投影を伴うステレオ(「能動ステレオ」としても知られる)は、受動ステレオに類似するが、テクスチャプロジェクタは、投影パターンを環境上にブロードキャストし、よりテクスチャが、ブロードキャストされ、より正確度が、深度計算のための三角測量において利用可能である。能動ステレオもまた、比較的に高算出リソースを要求し、広FOVが要求されるとき課題を提示し、幾分、エッジを検出する際に準最適であり得るが、無テクスチャ壁に効果的であって、低光において良好であって、概して、繰り返しパターンに関する問題を有していないという点において、受動ステレオの課題のうちのいくつかに対処する。能動ステレオ深度センサは、IntelおよびAquifi等の製造業者から利用可能である。
Primesense, Inc.によって開発され、商標名Kinect下で利用可能なシステム、ならびに、概して、単一カメラ/プロジェクタペアリングおよびプロジェクタを利用する、Mantis Vision, Inc.から利用可能なシステム等の構造化光を伴うステレオは、先験的に既知のドットのパターンをブロードキャストするように構成されるという点において特殊である。本質的に、システムは、ブロードキャストされるパターンを把握し、決定されるべき変数が深度であることを把握している。そのような構成は、算出負荷に関して比較的に効率的であり得、広FOV要件シナリオならびに他の近傍デバイスからブロードキャストされる周囲光およびパターンを伴うシナリオでは、課題となり得るが、多くのシナリオにおいて非常に効果的かつ効率的であり得る。PMD Technologies、A.G.およびSoftKinetic Inc.から利用可能なもの等の変調飛行時間タイプ深度センサを用いることで、エミッタは、振幅変調光の正弦波等の波を送信するように構成されてもよい。いくつかの構成では、近傍に、またはさらに重複して位置付けられ得る、カメラコンポーネントが、カメラコンポーネントのピクセルのそれぞれ上への戻り信号を受信し、深度マッピングが、決定/計算されてもよい。そのような構成は、幾何学形状が比較的にコンパクトであって、高正確度、および低算出負荷であり得るが、画像分解能(オブジェクトのエッジにおいて等)、多経路誤差(センサが反射または光輝角に照準され、いくつかの深度検出エイリアシングが存在するように、検出器が1つを上回る戻り経路を受信する結果となる等)の観点から課題となり得る。
上記に記載されるLIDARとも称され得る、直接飛行時間センサが、LuminARおよびAdvancedScientificConcepts, Inc.等の供給業者から利用可能である。これらの飛行時間構成を用いることで、概して、光のパルス(ピコ秒、ナノ秒、またはフェムト秒長の光のパルス等)は、その周囲に配向される世界を包むように本光ピングとともに送信される。次いで、カメラセンサ上の各ピクセルは、そのパルスが戻って来るのを待機し、光の速度を把握することで、各ピクセルにおける距離が、計算され得る。そのような構成は、変調飛行時間センサ構成の利点(無ベースライン、比較的に広FOV、高正確度、比較的に低算出負荷等)の多く、また、数百万ヘルツ等の比較的に高フレームレートを有し得る。それらはまた、比較的に高価であって、比較的に低分解能を有し、明るい光に敏感であって、かつ多経路誤差を受けやすい。それらはまた、比較的に大型であって、かつ重くあり得る。
図16Bを参照すると、部分的上面図が、例証目的のために示され、ユーザの眼(12)と、視野(28、30)を伴うカメラ(14、赤外線カメラ等)と、眼(12)に向かって指向され、眼追跡、観察、および/または画像捕捉を促進する、光または放射線源(16、赤外線等)とを特徴とする。3つの外向きの世界捕捉カメラ(124)が、深度カメラ(154)およびそのFOV(24)と、写真カメラ(156)およびそのFOV(26)と同様に、そのFOV(18、20、22)とともに示される。深度カメラ(154)から集められた深度情報は、重複FOVおよび他の前向きのカメラからのデータを使用することによって強化されてもよい。例えば、システムは、深度センサ(154)からのサブVGA画像、世界カメラ(124)からの720p画像、場合によって、写真カメラ(156)からの2メガピクセルカラー画像のようなもので構成され得る。そのような構成は、共通FOVを共有する4つのカメラを有し、そのうちの2つは、異種可視スペクトル画像を伴い、1つは、色を伴い、3つ目は、比較的に低分解能深度を伴う。システムは、グレースケールおよびカラー画像においてセグメント化を行い、それらの画像を融合し、比較的に高分解能画像をそれらから作成し、いくつかのステレオ対応を得て、深度センサを使用して、ステレオ深度についての仮説を提供し、ステレオ対応を使用して、深度センサのみから利用可能なものより有意に良好であり得る、より精緻化された深度マップを得るように構成されてもよい。そのようなプロセスは、ローカルモバイル処理ハードウェア上で起動されてもよい、または可能性として、エリア内の他者からのデータとともに(近傍で相互からテーブルを横断して着座している2人等)クラウドコンピューティングリソースを使用して、起動され、非常に精緻化されたマッピングとなり得る。別の実施形態では、上記に記載されるセンサは全て、1つの統合されたセンサに組み合わせられ、そのような機能性を遂行してもよい。
(EM追跡のための伝送コイルの例示的動的調整)
図17A-17Gを参照すると、動的伝送コイル調整構成の側面は、伝送コイルが直交軸あたり複数の周波数で最適に動作することを促進する電磁追跡のために示され、これは、複数のユーザが同一システム上で動作することを可能にする。典型的には、電磁追跡送信機は、直交軸あたり固定周波数で動作するように設計されるであろう。そのようなアプローチを用いることで、各伝送コイルは、動作の周波数においてのみ共振を作成する、静的一連の静電容量を用いて調整される。そのような共振は、コイルを通した最大可能電流を可能にし、これは、ひいては、生成される磁束を最大限にする。図17Aは、固定動作周波数で共振を生成するために使用される、典型的共振回路1305を図示する。インダクタ「L」は、1mHのインダクタンスを有し、静電容量が52nFに設定される、単軸伝送コイルを表し、共振は、図17Bに示されるように、22kHzで生成される。図17Cは、周波数に対してプロットされた図17Aの回路1305を通る電流を示し、電流は、共振周波数で最大であることを理解されたい。本システムが、任意の他の周波数で動作することが予期される場合、動作回路は、可能性として考えられる最大電流(22kHzの共振周波数で生じる)ではないであろう。
図17Dは、電磁追跡システムの送信機1302の送信機回路1306のための動的に調整可能な構成の実施形態を図示する。図17Dに示される例示的回路1306は、本明細書に説明されるEM場エミッタ402、602、1302の実施形態において使用されてもよい。図17Dにおける回路は、発振電圧源1702と、伝送(TX)コイルと、高電圧(HV)コンデンサと、所望の共振周波数のための調整を提供するように選択され得る、コンデンサバンク1704内の複数の低電圧(LV)コンデンサとを含む。動的周波数調整は、コイル上で共振を達成し(所望の動的に調節可能周波数において)、最大電流を得るように設定されてもよい。動的に調整可能な回路1306の別の実施例は、図17Eに示され、調整可能コンデンサ1706(「C4」)は、図17Fに図示されるシミュレートされたデータに示されるように、共振を異なる周波数で生産するように調整されてもよい。調整可能コンデンサの調整は、図17Dに示される回路に図式的に図示されるように、複数の異なるコンデンサ間での切替を含むことができる。図17Eの実施形態に示されるように、電磁追跡器の直交コイルのうちの1つは、インダクタ「L」としてシミュレートされ、静的コンデンサ(「C5」)は、固定高電圧コンデンサである。本高電圧コンデンサは、共振に起因して、より高い電圧を被り、したがって、そのパッケージサイズは、概して、より大きくなるであろう。コンデンサC4は、異なる値を用いて動的に切り替えられる、コンデンサであって、したがって、より低い最大電圧を被り、概して、より小さい幾何学的パッケージであって、設置空間を節約することができる。インダクタL3はまた、共振周波数を微調整するために利用されることができる。
図17Fは、図17Eの回路1306によって達成され得る、共振の実施例を図示する。図17Fでは、より高い曲線(248)は、コンデンサC5を横断する電圧Vmid-Voutを示し、より低い曲線(250)は、コンデンサC4を横断する電圧Voutを示す。C4の静電容量が、変動されるにつれて、共振周波数も、変化され(本実施例では、約22kHz~30kHz)、C5を横断する電圧(Vmid-Vout;曲線248)は、C4を横断するものより高い(Vout;曲線250)ことに留意されたい。これは、概して、複数の本コンデンサ、例えば、動作の共振周波数あたり1つのコンデンサが、概して、システム内で使用されるであろうため、C4上のより小さいパッケージ部分を可能にするであろう(例えば、図17Dに示されるコンデンサバンク1704内の複数のLVコンデンサ参照)。図17Gは、達成される最大電流が、コンデンサを横断する電圧にかかわらず、共振に続くことを図示する、電流対周波数のプロットである。故に、動的に調整可能な回路の実施形態は、複数の周波数を横断して送信機コイル内の増加または最大電流を提供し、単一EM追跡システムの複数のユーザのための改良または最適化された性能を可能にすることができる。
(EM追跡システムのための例示的オーディオノイズキャンセル)
オーディオスピーカ(または任意の外部磁石)は、EM追跡システムのEM場エミッタによって生成された磁場に非意図的に干渉し得る、磁場を生成し得る。そのような干渉は、EM追跡システムによって提供される場所推定の正確度または信頼性を劣化させ得る。
ARデバイスが進化するにつれて、それらは、より複雑となり、共存し、独立して実施する必要がある、より多くの技術を組み込む。EM追跡システムは、EMセンサの3-D位置(それによって、センサが取り付けられる、または組み込まれる、オブジェクトの3-D位置)を決定するために、磁束の微細な変化(EM場エミッタによって生成される)の受信(EMセンサによって)に依拠する。EM追跡センサコイルに近接して常駐する、オーディオスピーカは、真の位置を算出するEM追跡システムの能力に干渉し得る、磁束を放出し得る。
図18A-18Cを参照すると、電磁追跡システムは、ヒト聴力のための可聴範囲より若干高い約30kHzを下回って機能するように境界されてもよい。図18Aは、オーディオスピーカ1820がEMセンサ604に近接近する構成を示す。オーディオスピーカ1820は、時変電圧源1822および増幅器1824によって駆動される。スピーカ1820の磁場は、スピーカがノイズをEMセンサ604のコイルによって感知される磁場内に生成するため、EM追跡システムへの非意図的磁気干渉を生じさせ得る。いくつかの実装では、オーディオスピーカ1820とEMセンサ604との間の距離は、受信された干渉を低減させるように増加されることができる。しかし、スピーカからの磁束は、センサからの距離の3乗(1/r3)ずつ減衰するため、大距離が非常にわずかな減衰を干渉に提供するような点が存在するであろう。オーディオスピーカ(例えば、図2A-2Dに示されるスピーカ66)は、一般に、ARデバイス内で使用され、オーディオ体験をARデバイスの装着者に提供するであろう。したがって、オーディオスピーカは、同様にARデバイス上に配置されるEMセンサの比較的に近傍にあることが一般的であり得る(例えば、図11Aに示される例示的ウェアラブルディスプレイデバイス58内のスピーカ66の近傍に配置されるEMセンサ604参照)。オーディオスピーカからの磁場は、EM追跡システムのEMセンサによって感知されるEM場に干渉し得る。
図18Aを参照すると、そのような電磁追跡システムのために使用可能周波数内にノイズを生成する、いくつかのオーディオシステムが存在し得る。さらに、オーディオスピーカは、典型的には、電磁追跡システムにも干渉し得る、磁場および1つ以上のコイルを有する。図18Bを参照すると、ブロック図が、電磁追跡システムのためのノイズキャンセルシステム1830の実施例のために示される。非意図的EM干渉は、既知のエンティティであるため(電圧源1822によってオーディオスピーカ1820に供給される信号が、既知である、または測定され得るため)、本知識は、オーディオスピーカ1820からのEM干渉をキャンセルし、EM追跡システムの性能を改良するために使用されることができる。言い換えると、システムによって生成されたオーディオ信号は、EMセンサ604のコイルによって受信されたスピーカからの磁気干渉を排除するために利用されてもよい。図18Bに図式的に示されるように、ノイズキャンセル回路1830は、EMセンサ604からの破損信号1850aならびにオーディオシステムからの信号1850bを受け取るように構成されてもよい。ノイズキャンセルシステムは、信号1850a、1850bを組み合わせ、オーディオスピーカ1820から受信された干渉をキャンセルし、破損されていないセンサ信号1850cを提供することができる。
図18Cは、オーディオ信号1850bが、反転され、破損されたセンサ信号1850aに追加され、干渉をキャンセルし、実質的に破損されていないセンサ信号1850cを提供し得る方法の例証的非限定的実施例を示す、プロットである。上のプロットV(ノイズ)は、オーディオスピーカ1820によってEM追跡システムに追加されるノイズ信号1850bである。下のプロットV(cancel)は、反転されたオーディオ信号(例えば、-V(ノイズ))であって、これらがともに追加されるとき、効果は、オーディオからのノイズ劣化がないものとなる。言い換えると、ノイズキャンセルシステムは、EM送信機コイルからの信号を表す真のEMセンサ信号V(センサ)とノイズ信号の和V(センサ)+V(ノイズ)である、破損された信号1850aを受信する。反転されたオーディオ信号-V(ノイズ)を破損された信号1850aに追加することによって、破損されていない信号V(センサ)1850cが、復元される。破損されていない信号1850cは、オーディオスピーカ604が存在しないかのようにセンサ604の応答を反映させ、したがって、EM送信機場をセンサ604の位置において反映させる。同等に、ノイズ信号1850bは、破損された信号1850aから減算され、破損されていない信号V(センサ)1850cを復元することができる。ノイズキャンセルは、ノイズ信号(例えば、オーディオスピーカからの)の実質的に全て(例えば、>80%、>90%、>95%、またはそれを上回る)のキャンセルをもたらすことができる。本ノイズキャンセル技法は、オーディオスピーカノイズだけのキャンセルに限定されず、ノイズ信号の測定値(または推定値)が決定され得る場合(次いで、上記に説明されるように、EMセンサ信号から除去され得るように)、EMセンサ信号への他のノイズ干渉源にも適用されることができる。
図18Dは、EM追跡システム内のEMセンサによって受信された干渉をキャンセルするための例示的方法1800を示す、フローチャートである。方法1800は、例えば、ローカル処理およびデータモジュール70等のARデバイス内のハードウェアプロセッサによって、またはEM追跡システム内のハードウェアプロセッサによって実施されることができる。ブロック1802では、本方法は、ノイズ信号を電磁センサから受信する。上記に説明されるように、ノイズ信号は、電磁干渉を生成する、近傍オーディオスピーカからの干渉によって生じ得る。ブロック1804では、本方法は、信号をEM干渉源から受信する。例えば、信号は、オーディオスピーカを駆動するために使用される信号1850bであることができる(例えば、図18B参照)。ブロック1806では、ノイズ信号および干渉信号は、組み合わせられ、脱ノイズEM信号を取得する。例えば、干渉信号は、反転され、ノイズ信号に追加されることができる、または干渉信号は、ノイズ信号から減算されることができる。ブロック1808では、脱ノイズ信号は、EMセンサの場所を決定するために使用されることができる。脱ノイズ信号を使用して取得される場所(ノイズ信号の使用と比較して)は、より正確かつ信頼性がある。
故に、前述は、EM追跡器センサに近接するオーディオスピーカによって生成される非意図的ノイズを除去するための方法を提供する。本方法は、オーディオについての既知の情報を使用し、それをEM追跡信号から除去する、ノイズキャンセル方法を採用する。本システムは、オーディオスピーカおよびEMセンサコイルの十分な物理的分離が達成されることができないときに使用されてもよい(干渉が十分に低くなるように)。前述では、干渉ノイズは、オーディオスピーカによって生成されるように説明されたが、これは、例証のためのものであって、限定ではない。上記に記載される実施形態は、測定され、次いで、破損されたセンサ信号から減算され得る、任意の干渉信号に適用されることができる。
(ビジョンシステムの例示的較正)
図19を参照すると、一実施形態では、光または他のエミッタの既知のパターン1900(円形パターン等)が、ビジョンシステムの較正を補助するために利用されてもよい。例えば、円形パターンが、基準として利用されてもよい。すなわち、パターンに結合されるオブジェクトが再配向される間、既知の配向を伴うカメラまたは他の捕捉デバイスがパターンの形状を捕捉するにつれて、ハンドヘルドトーテムデバイス606等のオブジェクトの配向が、決定され得る。そのような配向は、誤差決定および較正における使用のために、オブジェクト(例えば、トーテム)上の関連付けられたIMUから生じるものと比較されてもよい。図19をさらに参照すると、光1900のパターンが、ハンドヘルドトーテム606(図19では、円筒形として図式的に表される)上の光エミッタ(例えば、複数のLED)によって生産されてもよい。図19に示されるように、トーテムが、ARヘッドセット58上のカメラによって真正面に視認されるとき、光1900のパターンは、円形に現れる。トーテム606が、他の配向において傾斜されると、パターン1900は、楕円形に現れる。光1900のパターンは、コンピュータビジョン技法を使用して識別されることができ、トーテム606の配向が、決定されることができる。
種々の実装では、拡張現実デバイスは、1つ以上のコンピュータビジョン技法を実装し、光のパターンを識別する(または本明細書で使用または説明される他のコンピュータビジョンプロシージャを実施する)ように構成される、コンピュータビジョンシステムを含むことができる。コンピュータビジョン技法の非限定的実施例は、スケール不変特徴変換(SIFT)、スピードアップロバスト特徴(SURF)、配向FASTおよび回転BRIEF(ORB)、バイナリロバスト不変スケーラブルキーポイント(BRISK)、高速網膜キーポイント(FREAK)、Viola-Jonesアルゴリズム、Eigenfacesアプローチ、Lucas-Kanadeアルゴリズム、Horn-Schunkアルゴリズム、Mean-shiftアルゴリズム、視覚的同時位置推定およびマッピング(vSLAM)技法、シーケンシャルベイズ推定器(例えば、カルマンフィルタ、拡張カルマンフィルタ等)、バンドル調節、適応閾値化(および他の閾値化技法)、反復最近傍点(ICP)、セミグローバルマッチング(SGM)、セミグローバルブロックマッチング(SGBM)、特徴点ヒストグラム、種々の機械学習アルゴリズム(例えば、サポートベクトルマシン、k最近傍アルゴリズム、単純ベイズ、ニューラルネットワーク(畳み込みまたは深層ニューラルネットワークを含む)、または他の教師あり/教師なしモデル等)等を含む。
(ウェアラブルディスプレイデバイスのサブシステムの例示的回路)
図20A-20Cを参照すると、構成が、頭部搭載型コンポーネントおよびベルトパックコンポーネント等のウェアラブルコンピューティング構成の2つのサブシステムまたはコンポーネント間の回路を簡略化するための加算増幅器2002とともに示される。従来の構成では、電磁追跡センサ604のコイル2004(図20Aの左)はそれぞれ、増幅器2006と関連付けられ、3つの明確に異なる増幅された信号が、加算増幅器2002および他のコンポーネント(例えば、図20Bに示されるような処理回路)へのケーブル類を通して送信されることができる。図示される実施形態では、3つの明確に異なる増幅された信号は、加算増幅器2002に指向されてもよく、これは、有利に簡略化されたケーブル2008を辿って指向される1つの増幅された信号を生産し、各信号は、異なる周波数であってもよい。加算増幅器2002は、増幅器によって受信された全3つの信号を増幅させる、次いで、アナログ/デジタル変換後、(図20Bに図示されるように)デジタル信号プロセッサを受信し、他端において信号を分離するように構成されてもよい。利得制御が、使用されてもよい。図20Cは、周波数(F1、F2、およびF3)毎のフィルタを図示し、したがって、信号は、そのような段において分離され、戻されてもよい。3つの信号は、算出アルゴリズム(例えば、センサ姿勢を決定する)によって分析されてもよく、位置または配向結果は、ARシステムによって使用されことができる(例えば、ユーザの瞬間頭部姿勢に基づいて、仮想コンテンツをユーザに適切に表示する)。
(例示的EM追跡システム更新)
図21を参照すると、電磁(「EM」)追跡更新は、ポータブルシステムのための電力の観点から比較的に「高価」であり得、非常に高周波数更新が可能ではない場合がある。「センサ融合」構成では、IMU等の別のセンサからのより頻繁に更新された位置特定情報は、比較的に高周波数である場合とそうではない場合がある、光学センサ(例えば、カメラまたは深度カメラ)等の別のセンサからのデータとともに組み合わせられてもよい。これらの入力を融合するネットの効果は、より低い需要をEMシステムにかけ、より迅速な更新を提供する。
図11Bに戻って参照すると、分散型センサコイル構成が、ARデバイス58のために示される。図22Aを参照すると、X、Y、Zの方向毎に1つの3つの直交感知コイルを含有する筐体等の単一電磁センサデバイス(604)を伴うARデバイス58が、上記に説明されるように、6自由度追跡のためにウェアラブルコンポーネント(58)に結合されてもよい。また、上記に記載されるように、そのようなデバイスは、図22Bおよび22Cに示されるように、ウェアラブルコンポーネント(58)の異なる場所に取り付けられる3つのサブ部分(例えば、コイル)を伴って、統合解除されてもよい。図22Cを参照すると、さらなる設計代替を提供するために、各個々のセンサコイルは、任意の所与の直交方向のための全体的磁束が、直交方向毎に単一コイルによってではなく、グループ(148、150、152)によって捕捉されるように、同様に配向されるコイルのグループと置換されてもよい。言い換えると、直交方向毎に1つのコイルではなく、より小さいコイルのグループが、利用され、その信号が、集約され、その直交方向のための信号を形成してもよい。頭部搭載型コンポーネント(58)等の特定のシステムコンポーネントが2つ以上の電磁コイルセンサセットを特徴とする、別の実施形態では、システムは、相互に最も近い(例えば、1cm、2cm、3cm、4cm、5cm、または10cm以内)センサおよびエミッタペアを選択的に利用し、システムの性能を改良または最適化するように構成されてもよい。
(ウェアラブルディスプレイシステムを再較正する実施例)
図23A-23Cを参照すると、本明細書で議論されるもの等のウェアラブルコンピューティングシステムを再較正することが有用であり得、一実施形態では、送信機において生成された音響(例えば、超音波)信号は、受信機における音響センサ(例えば、マイクロホン)および音響飛行時間計算とともに、送信機と受信機との間の音伝搬遅延、それによって、送信機と受信機との間の距離を決定するために利用されてもよい(音の速度が既知であるため)。図23Aは、一実施形態では、送信機上の3つのコイルが、正弦波のバーストで励起され、同時に、超音波変換器が、好ましくは、コイルのうちの1つと同一周波数の正弦波のバーストで励起され得ることを示す。図23Bは、EM受信機が、X、Y、Zセンサコイルを使用して、3つのEM波と、マイクロホン(MIC)を使用して、音響超音波とを受信するように構成されてもよいことを図示する。総距離は、3つのEM信号の振幅から計算されてもよい。飛行時間(音伝搬遅延時間2300)は、音響(マイクロホン)応答2302のタイミングとEMコイル2304の応答を比較することによって計算されてもよい(例えば、図23C参照)。これはまた、距離を計算するために使用されてもよい。電磁的に計算された距離と音響遅延時間2300の比較は、EM TXまたはRX回路を較正するために使用されることができる(例えば、補正係数によって)。
図24Aを参照すると、別の実施形態では、カメラを特徴とする拡張現実システムにおいて、距離が、ハンドヘルドコントローラ(例えば、コントローラ606)等の別のデバイス上の既知のサイズ整合特徴(図24Aでは矢印として描写される)のピクセル単位のサイズを測定することによって計算されてもよい。
図24Bを参照すると、別の実施形態では、赤外線(「IR」)深度センサ等の深度センサを特徴とする拡張現実システムにおいて、距離が、そのような深度センサによって計算され、直接、コントローラに報告されてもよい。
図24Cおよび24Dを参照すると、いったん総距離が、把握されると、カメラまたは深度センサのいずれかが、空間内の位置を決定するために使用されることができる。拡張現実システムは、1つ以上の仮想整合標的をユーザに投影するように構成されてもよい。ユーザは、コントローラを標的に整合させてもよく、システムは、EM応答および仮想標的の方向に加えて以前に計算された距離の両方から位置を計算することができる。ロール角度較正が、コントローラ上の既知の特徴とユーザに投影された仮想標的を整合させることによって行われてもよい。ヨーおよびピッチ角度は、仮想標的をユーザに提示し、ユーザに、コントローラ上の2つの特徴と標的(ライフルの照準を合わせるように)を整合させることによって較正されてもよい。
図25Aおよび25Bを参照すると、EM追跡システムと関連付けられた固有の曖昧性が存在し得る。すなわち、受信機は、送信機の周囲の2つの対角線上の対向場所において類似応答を生成するであろう。例えば、図25Aは、類似応答を生成する、ハンドヘルドデバイス606および残影デバイス606aを示す。そのような課題は、特に、送信機および受信機の両方が相互に対してモバイル性であり得るシステムにおいて関連する。
一実施形態では、システムは、IMUセンサを使用して、ユーザが基準(例えば、対称)軸のプラスまたはマイナス側に存在するかどうかを決定してもよい。世界カメラおよび深度カメラを特徴とする、上記に説明されるもの等のある実施形態では、システムは、その情報を使用して、ハンドヘルドコンポーネント(例えば、図25Bにおけるハンドヘルド2500)が基準軸の正の側または負の側にあるかどうかを検出することができる。ハンドヘルド2500が、カメラおよび/または深度センサの視野外にある場合、システムは、ハンドヘルドコンポーネント2500がユーザのすぐ背後にある180-度ゾーン内にある、例えば、図25Bに示されるように、残影位置2500aにあることを決定するように構成されてもよい(またはユーザが決定してもよい)。
外向き指向カメラデバイス(124、154、156)が頭部搭載型コンポーネント(58)等のシステムコンポーネントに結合される、上記の実施形態に戻って参照すると、そのような頭部搭載型コンポーネント(58)に結合される頭部の位置および配向は、同時位置特定およびマッピング、すなわち、「SLAM」技法(並行追跡およびマッピング、すなわち、「PTAM」技法としても知られる)等の技法を使用して、これらのカメラデバイスか集められたら情報を使用して決定されてもよい。ユーザの「頭部姿勢」としても知られるユーザの頭部の位置および配向をリアルタイムまたは近リアルタイムで理解することは(例えば、好ましくは、短待ち時間の決定および更新を伴って)は、ユーザがその周囲の実際の環境内に存在する場所と、ユーザおよびユーザの拡張または複合現実体験に関連する環境に対して仮想コンテンツを設置および提示する方法とを決定する際に貴重である。典型的SLAMまたはPTAM構成は、特徴を着信画像情報から抽出し、これを使用して、3-Dマッピング点を三角測量し、次いで、それらの3-Dマッピング点に対して追跡することを伴う。SLAM技法は、車の自動運転等の多くの実装において利用されており、算出、電力、および感知リソースは、頭部搭載型コンポーネント(58)等のウェアラブルコンピューティングデバイスにおいてオンボードで利用可能であり得るものと比較して、比較的に豊富であり得る。
(カメラ特徴の抽出を介した姿勢計算および場所マッピングの実施例)
図26を参照すると、一実施形態では、頭部搭載型コンポーネント(58)等のウェアラブルコンピューティングデバイスは、2つのカメラ画像(左-204、右-206)を生産する、2つの外向きのカメラを備えてもよい。一実施形態では、Movidius、Intel、Qualcomm、またはCevaによって販売されているもの等の比較的に軽量、可搬性、かつ電力効率的内蔵プロセッサが、頭部搭載型コンポーネント(58)の一部を構成し、カメラデバイスに動作可能に結合されてもよい。内蔵プロセッサは、最初に、抽特徴(210、212)をカメラ画像(204、206)から出するように構成されてもよい。2つのカメラ間の較正が、既知である場合、システムは、それらの特徴の3-Dマッピング点を三角測量(214)し、疎3-Dマップ点(202)のセットをもたらすことができる。これは、「マップ」として記憶されてもよく、これらの第1のフレームは、「世界」座標系原点(208)を確立するために利用されてもよい。後続画像情報が、内蔵プロセッサの中にカメラから入ってくるにつれて、システムは、3-Dマップ点を新しい画像情報の中に投影し、画像情報内で検出された2-D特徴の場所と比較するように構成されてもよい。したがって、システムは、2-D/3-D対応を確立するように試みるように構成されてもよく、それらの約6つ等のそのような対応のグループを使用して、ユーザの頭部(当然ながら、頭部搭載型デバイス58に結合される)の姿勢は、推定されてもよい。6つを上回るもの等、より多い数の対応は、概して、姿勢を推定するためにより良好に機能することを意味する。当然ながら、本分析は、現在の画像が考察される前のユーザの頭部があった場所(例えば、位置および配向の観点から)のある程度の感知を有することに依拠する。システムがあまりに長い待ち時間を伴わずに追跡可能である限り、システムは、直前の時間からの姿勢推定を使用して、最新のデータのための頭部があった場所を推定してもよい。したがって、最後のフレームが原点であって、システムは、位置および/または配向の観点から、ユーザの頭部がそこから遠くないことを推定するように構成されてもよく、その周囲を検索し、現在の時間インターバルのための対応を見出してもよい。これは、追跡構成の一実施形態のベースとなる。
マップ点(202)のオリジナルセットから十分に離れて移動した後、一方または両方のカメラ画像(204、206)は、新しく着信した画像内のマップ点を失い始め得る(例えば、ユーザの頭部が、空間内で右に回転された場合、オリジナルマップ点は、左に消失し始め得、左画像内にのみ現れ、次いで、さらなる回転に伴って、全く現れなくなり得る)。いったんユーザが、マップ点のオリジナルセットから非常に遠く離れて回転すると、システムは、上記に説明されるものに類似するプロセス(特徴を検出する、新しいマップ点を作成する)を使用すること等によって、新しいマップ点を作成するように構成されてもよく、これは、システムがマップにデータ投入し続けるように構成され得る実施例である。一実施形態では、本プロセスは、ユーザがその頭部をその環境に対して平行移動および/または回転させ、それによって、関連付けられたカメラを平行移動および/または回転させる量に応じて、10~20フレーム毎に、再び繰り返されてもよい。新しく作成されたマッピング点と関連付けられたフレームは、「キーフレーム」と見なされ得、システムは、キーフレームを用いた特徴検出プロセスを遅延させるように構成されてもよい、または代替として、特徴検出は、各フレーム上で行われ、合致を確立することを試みてもよく、次いで、システムが新しいキーフレームを作成する準備ができると、システムは、すでにその関連付けられた特徴検出が完了されている。したがって、一実施形態では、基本パラダイムは、マップの作成を開始し、次いで、システムが別のマップまたはその付加的部分を作成する必要があるまで、追跡し続けることである。
図27を参照すると、一実施形態では、ビジョンベースの姿勢計算は、5段階(例えば、事前追跡216、追跡218、短待ち時間マッピング220、待ち時間耐性マッピング222、事後マッピング/クリーンアップ224)に分割され、算出、電力、および感知リソースが限定され得る、内蔵プロセッサ構成のための精度および最適化を補助してもよい。ビジョンベースの姿勢計算は、ローカル処理およびデータモジュール70または遠隔処理およびデータモジュール72、74によって実施されることができる。
事前追跡(216)に関して、システムは、画像情報が到着する前に、画像の中に投影されるマップ点を識別するように構成されてもよい。言い換えると、システムが、ユーザが以前に存在した場所を把握しており、ユーザが進みつつある場所の感知を有することを前提として、システムは、画像の中に投影されるであろうマップ点を識別するように構成されてもよい。「センサ融合」の概念が、以下でさらに議論されるが、ここで、システムがセンサ融合モジュールまたは機能性から入手し得る入力のうちの1つが、250Hz(例えば、ビジョンベースの姿勢計算動作が更新を提供し得る、30Hzに対して高いレートである)等の比較的に高速レートにおける、慣性測定ユニット(「IMU」)または他のセンサもしくはデバイスからの「事後推定」情報であり得ることは、着目に値する。したがって、ビジョンベースの姿勢計算に対して、姿勢情報のはるかに微細な時間的分解能が、IMUまたは他のデバイスから導出され得る。しかし、また、以下に議論されるように、IMU等のデバイスからのデータは、幾分、ノイズが多く、姿勢推定ドリフトを被りやすい傾向にすることも着目に値する。10~15ミリ秒等の比較的に短時間ウィンドウに関して、IMUデータは、姿勢を予測する際に非常に有用であり得、再び、センサ融合構成における他のデータと組み合わせられると、最適化された全体的結果が、決定され得る。
センサ融合モジュールまたは機能性から生じる姿勢情報は、「前姿勢」と称され得、本前姿勢は、システムによって利用され、現在の画像の中に投影されることになる点のセットを推定し得る。したがって、一実施形態では、システムは、「事前追跡」ステップ(216)において、それらのマップ点を事前にフェッチし、いくつかの事前処理を行うように構成され、これは、全体的処理の待ち時間を低減させることに役立つ。3-Dマップ点はそれぞれ、システムが、それらを一意に識別し、それらを画像内の領域に合致させ得るように、記述子と関連付けられてもよい。例えば、所与のマップ点が、その周囲にパッチを有する特徴を使用することによって作成された場合、システムは、マップ点が他の画像上に投影されて見られるとき、システムが、マップを作成するために使用されたオリジナル画像に戻り、パッチ相関を考察し、それらが同一点であるかどうかを決定し得るように、そのパッチのある程度の外観をマップ点とともに維持するように構成されてもよい。したがって、事前処理では、システムは、マップ点のある程度の量のフェッチと、それらのマップ点と関連付けられたパッチと関連付けられたある程度の量の事前処理とを行うように構成されてもよい。したがって、事前追跡(216)では、システムは、マップ点を事前にフェッチし、画像パッチを事前にワーピングするように構成されてもよい(画像の「ワーピング」は、システムが、マップ点と関連付けられたパッチと現在の画像を合致させ得ることを確実にするために行われ得る。ワーピングは、比較されているデータが互換性があることを確実にする方法の実施例である)。
図27に戻って参照すると、追跡段階は、特徴検出、オプティカルフロー分析、特徴合致、および姿勢推定等のいくつかのコンポーネントを備えてもよい。着信画像データ内の特徴を検出する間、システムは、オプティカルフロー分析を利用して、特徴を1つ以上の前の画像からの特徴に追従することを試みることによって、特徴検出における算出時間を節約するように構成されてもよい。いったん特徴が、現在の画像内で識別されると、システムは、特徴と投影されたマップ点を合致させるように試みるように構成されてもよく、これは、構成の「特徴合致」部分と見なされ得る。事前追跡段階(216)では、システムは、好ましくは、すでに、着目マップ点を識別し、それらをフェッチしている。特徴マッピングでは、それらは、現在の画像の中に投影され、システムは、それらと特徴を合致させるように試みる。特徴マッピングの出力は、2-D/3-D対応のセットであって、それに留意して、システムは、姿勢を推定するように構成される。
ユーザが、頭部搭載型コンポーネント(58)に結合された状態で、その頭部を動かすにつれて、システムは、好ましくは、ユーザが環境の新しい領域を見ていかどうかを識別し、新しいキーフレームが必要とされるかどうかを決定するように構成される。一実施形態では、新しいキーフレームが必要とされるかどうかのそのような分析は、大部分は純粋に、幾何学形状に基づいてもよい。例えば、システムは、現在のフレームから残りのキーフレームまでの距離(平行移動距離、すなわち、視野捕捉再配向であって、ユーザの頭部は、例えば、平行移動方向に近接するが、完全に新しいマップ点が要求され得るように再配向され得る)を確認するように構成されてもよい。いったんシステムが、新しいキーフレームが挿入されるべきであると決定すると、マッピング段階が、開始されてもよい。上記に記載されるように、システムは、従来のSLAMまたはPTAM動作において見られる可能性がより高い単一マッピング動作とは対照的に、マッピングを3つの異なる動作(短待ち時間マッピング、待ち時間耐性マッピング、事後マッピングまたはクリーンアップ)として動作させるように構成されてもよい。
三角測量および新しいマップ点の作成としての最も単純な形態と見なされ得る、短待ち時間マッピング(220)は、重要な段階であって、システムは、好ましくは、本明細書で議論される追跡のパラダイムがマップ点に依拠するため、そのような段階を直ちに行うように構成され、システムは、追跡するために利用可能なマップ点が存在する場合、位置のみを見出す。「短待ち時間」という名称は、許容されない待ち時間に対する耐性が存在しないという概念を指す(言い換えると、マッピングの本部分は、可能な限り迅速に行われる必要があり、さもなければ、システムは、追跡問題を有することになる)。
待ち時間耐性マッピング(222)は、最適化段階としての最も単純な形態と見なされ得る。全体的プロセスは、結果にグローバル最適化を提供する、「バンドル調節」として知られる本動作を行うために、短待ち時間を絶対的に要求するものではない。システムは、3-D点の位置ならびにそれらが観察された場所を考察するように構成されてもよい。マップ点を作成するプロセスにおいてともに連鎖し得る、多くの誤差が存在する。バンドル調節プロセスは、例えば、2つの異なる視認場所から観察された特定の点を取り上げ、本情報の全てを使用して、実際の3-D幾何学形状のより良好な感知を入手し得る。結果は、3-D点、また、計算された軌道(例えば、捕捉カメラの場所、経路)が、小量ずつ調節され得るようなものであり得る。これらの種類のプロセスを行い、マッピング/追跡プロセスを通して、誤差を蓄積しないことが望ましい。
事後マッピング/クリーンアップ(224)段階は、システムが、マッピングおよび追跡分析において貴重な情報を提供しない、マップ上の点を除去するように構成され得るものである。本段階では、場面についての有用な情報を提供しない、これらの点は、除去され、そのような分析は、マッピングおよび追跡プロセス全体をスケーラブルに保つ際に有用である。
ビジョン姿勢計算プロセスの間、外向きのカメラによって視認されている特徴は、静的特徴である(例えば、グローバル座標系に対してフレーム毎に移動しない)と仮定される。種々の実施形態では、意味論セグメント化および/またはオブジェクト検出技法が、利用され、マッピングおよび追跡のための特徴が、種々の画像のこれらの領域から抽出されないように、ヒト、移動する車両、および同等物等の移動するオブジェクトを関連フィールドから除去してもよい。一実施形態では、以下に説明されるもの等の深層学習技法が、これらの非静的オブジェクトをセグメント化抽出するために利用されてもよい。
(センサ融合の実施例)
図28A-28Fを参照すると、センサ融合構成は、比較的に高更新周波数を伴うセンサから生じる1つの情報源(250Hz等の周波数における、頭部姿勢に関連するジャイロスコープ、加速度計、および/または磁力計データを更新するIMU等)と、より低い周波数で更新する別の情報源(30Hz等の周波数で更新する、ビジョンベースの頭部姿勢測定プロセス等)とからの利点を享受するために利用されてもよい。種々の実施形態では、より高い周波数センサデータは、100Hzを上回る周波数にあって、より低い周波数センサデータは、100Hzを下回る周波数にある。いくつかの実施形態では、より高い周波数センサデータは、より低い周波数センサがデータを採取する周波数の3倍、5倍、10倍、25倍、100倍、またはそれを上回る周波数にある。
図28Aを参照すると、一実施形態では、システムは、拡張カルマンフィルタ(EKF、232)を使用して、デバイスに関する有意な量の情報を追跡するように構成されてもよい。例えば、一実施形態では、角速度(例えば、IMUジャイロスコープから)、平行移動加速(例えば、IMU加速度計から)、IMU自体に関する較正情報(例えば、ジャイロスコープおよび加速度計のための座標系ならびに較正係数。IMUはまた、1つ以上の磁力計を備えてもよい)等、32の状態を考慮してもよい。したがって、システムは、250Hz等の比較的に高更新周波数(226)におけるIMU測定と、より低い更新周波数におけるある他のソースからのデータ(例えば、計算されたビジョン姿勢測定、オドメトリデータ等)、例えば、30Hz等の更新周波数におけるビジョン姿勢測定(228)とを行うように構成されてもよい。
EKFが、一連のIMU測定を入手する度に、システムは、角速度情報を積分し、回転情報を入手するように構成されてもよい(例えば、角速度の積分(時間の変化にわたる回転位置の変化)は、角位置(角位置の変化)である)。平行移動情報に関しても同様である(言い換えると、平行移動加速の二重積分を行うことによって、システムは、位置データを入手するであろう)。そのような計算を用いることで、システムは、頭部からの6自由度(DOF)姿勢情報を高周波数で(例えば、一実施形態では、250Hz)IMUから入手するように構成されることができる(X、Y、Zにおける平行移動、3つの回転軸に関する配向)。積分が行われる度に、ノイズが、データ内に蓄積される。平行移動または回転加速に二重積分を行うことは、ノイズを伝搬し得る。概して、システムは、一実施形態では、約100ミリ秒よりわずかでも長い等、長すぎる時間ウィンドウの間のノイズに起因して、「ドリフト」を被りやすい、そのようなデータに依拠しないように構成される。ビジョン姿勢測定(228)から着信するより低い周波数(例えば、一実施形態では、約30Hzにおいて更新される)のデータが、EKF(232)を用いて、補正係数として作用し、補正された出力(230)を生産するために利用されてもよい。
図28B-28Fを参照すると、より高い更新周波数における1つのソースからのデータが、より低い更新周波数における別のソースからのデータと組み合わせられ得る方法を図示するために、250Hz等のより高い周波数におけるIMUからの第1の点のグループ(234)が、ビジョン姿勢計算プロセスからの30Hz等のより低い周波数において生じる点(238)とともに示される。システムは、ビジョン姿勢計算点を、そのような情報が利用可能であるとき、補正(242)し、次いで、IMUデータ(236)からのより多くの点と、ビジョン姿勢計算プロセスから利用可能な別の点(240)からの別の補正(244)とで順方向に継続するように構成されてもよい。これは、EKFを使用したIMUから生じるデータの「伝搬」へのビジョン姿勢データを用いた「更新」の適用と称され得る。
いくつかの実施形態では、第2のソース(例えば、ビジョン姿勢データ等)からのデータは、より低い更新周波数において生じるだけではなく、また、ある程度の待ち時間を伴って生じ得ることは、着目に値し、これは、システムが、好ましくは、IMUからの情報およびビジョン姿勢計算が積分されるにつれて、時間ドメイン調節をナビゲートするように構成されることを意味する。一実施形態では、システムがビジョン姿勢計算入力をIMUデータ内の正しい時間ドメイン位置に融合することを確実にするために、IMUデータのバッファは、融合を行い、ビジョン姿勢計算からの入力に関連する時間における「更新」または調節を計算するためのIMUデータ内の時間(例えば、「Tx」)に戻るように維持され、次いで、現在の時間(例えば、「Tcurrent」)までの順方向伝搬においてそれを考慮してもよいが、これは、間隙を調節される位置および/または配向データとIMUから生じる最新のデータとの間に残す。あまりに多くの「ジャンプ」または「ジッタ」がユーザへの提示に存在しないことを確実にするために、システムは、平滑化技法を使用するように構成されてもよい。これに対処するための1つの方法は、問題は、加重平均技法を使用することであって、これは、線形、非線形、指数関数的等であって、最終的に、融合されたデータストリームを調節された経路まで駆動し得る。
図28Cを参照すると、例えば、加重平均技法は、T0とT1との間の時間ドメインにわたって利用され、信号を調節されていない経路(252、例えば、IMUから直線に生じる)から調節された経路(254、例えば、ビジョン姿勢計算プロセスから生じるデータに基づく)に駆動してもよい。一実施例は、図28Dに示され、融合された結果(260)が、調節されていない経路(252)および時間T0から開始し、T1までに調節された経路(254)へと指数関数的に増加するように示される。図28Eを参照すると、一連の補正機会が、各シーケンスにおいて上側経路から下側経路に向かう融合された結果(260)の指数関数的時間ドメイン補正とともに示される(第1の補正は、例えば、IMUからの第1の経路252から、例えば、ビジョンベースの姿勢計算からの第2の経路254であって、次いで、本実施例では、各着信したビジョンベースの姿勢計算点を使用して、ビジョン姿勢からの連続点に基づいて、連続して補正された下側経路256、258に向かって補正しながら、継続IMUデータを使用して、類似パターンで順方向に継続する)。図28Fを参照すると、十分に短い時間ウィンドウを「更新」または補正間に伴って、全体的融合された結果(260)は、機能的に、比較的に平滑にパターン化された結果(262)として知覚され得る。
他の実施形態では、直接、ビジョン姿勢測定に依拠するのではなく、システムは、微 分EKFを考察するように構成されてもよい。言い換えると、ビジョン姿勢計算結果を直接使用するのではなく、システムは、現在の時間から前の時間までのビジョン姿勢の変化を使用する。そのような構成は、例えば、ビジョン姿勢差におけるノイズの量が、絶対ビジョン姿勢測定におけるノイズの量を著しく下回る場合に追求され得る。そのうちの全ての出力が、姿勢であって、これが、「前姿勢」値としてビジョンシステムに返信されるため、瞬間誤差を融合された結果から取り除かせないことが好ましい。
ある実施形態は、EKFを使用するが、他の実施形態は、例えば、アンセンテッドカルマンフィルタ、線形カルマンフィルタ、ベイズモデル、隠れマルコフモデル、粒子フィルタ、シーケンシャルモンテカルロモデル、または他の推定技法等の異なる推定アルゴリズムを使用してもよい。
(例示的姿勢サービス)
姿勢結果の外部システムベースの「消費者」は、「姿勢サービス」、と称され得、システムは、任意の所与の時間に姿勢を要求するとき、全ての他のシステムコンポーネント姿勢サービスを利用するように構成されてもよい。姿勢サービスは、一端が直近のデータを有する、時間スライスのシーケンスのデータを伴う、待ち行列またはスタック(例えば、バッファ)であるように構成されてもよい。姿勢サービスの要求が、現在の姿勢またはバッファ内のある他の姿勢である場合、直ちに出力されてもよい。ある構成では、姿勢サービスは、現時点から20ミリ秒先の時間にとられるであろう姿勢に関する要求を受信するであろう(例えば、シナリオをレンダリングするビデオゲームコンテンツでは、関連サービスが、現時点からわずかに先の時間に何らかのものを所与の位置および/または配向にレンダリングする必要があることを把握することが望ましくあり得る)。将来的姿勢値を生産するための1つのモデルでは、システムは、一定速度予測モデルを使用するように構成されてもよい(例えば、ユーザの頭部が一定速度および/または角速度で移動していると仮定する)。将来的姿勢値を生産するための別のモデルでは、システムは、一定加速予測モデルを使用するように構成されてもよい(例えば、ユーザの頭部が一定加速で平行移動および/または回転していると仮定する)。データバッファ内のデータは、姿勢がそのようなモデルを使用しているであろう場所を外挿するために利用されてもよい。一定加速モデルは、予測のためのバッファのデータの中への一定速度モデルよりわずかに長い末尾を使用し、本主題のシステムは、実質的劣化を伴わずに、20ミリ秒先の範囲まで予測することができることが見出された。したがって、姿勢サービスは、姿勢を出力するために利用され得るデータの観点から、約20ミリ秒以上の時間的に前後のデータバッファを有するように構成されてもよい。動作上、コンテンツ動作は、概して、次のフレーム引出が所定の時間に生じることになるであろうときを識別するように構成されるであろう(例えば、時間Tまたは時間T+Nのいずれかにおいて引き出すことを試み、Nは、姿勢サービスから利用可能な更新されたデータの次のインターバルである)。
図16B(14)に描写されるもの等のユーザに面した(例えば、ユーザの眼に向かって等の内向きの)カメラの使用は、例えば、米国特許出願第14/707,000号および第15/238,516号(参照することによってその全体として本明細書に組み込まれる)に説明されるように、眼追跡を行うために利用されてもよい。システムは、最初に、ユーザの眼の画像を撮影し、次いで、セグメント化分析を使用して、眼の解剖学的構造をセグメント化する(例えば、瞳孔を虹彩から、強膜から、周囲皮膚からセグメント化するために)等の眼追跡におけるいくつかのステップを行うように構成されてもよく、次いで、システムは、眼の画像内で識別された閃光場所を使用して、瞳孔中心を推定するように構成されてもよく、閃光は、頭部搭載型コンポーネント(58)の内向きの側の周囲に設置され得る、LED等の小照明源(16)から生じる。これらのステップから、システムは、幾何学的関係を使用して、特定の眼が注視している空間内の場所に関する正確な推定値を決定するように構成されてもよい。そのようなプロセスは、特に、オンボード内蔵プロセッサおよび限定された電力を特徴とする頭部搭載型コンポーネント(58)等のポータブルシステム上で利用可能なリソースに照らして、2つの眼に関して非常に算出上集約的である。
深層学習技法が、これらおよび他の算出課題に対処するために訓練および利用されてもよい。例えば、一実施形態では、深層学習ネットワークが、その他全てが同一のまま、上記に記載される眼追跡パラダイムのセグメント化部分を行うために利用されてもよい(例えば、深層畳み込みネットワークは、左および右眼画像の虹彩、瞳孔、強膜、および残りの種類へのロバストなピクセル毎セグメント化のために利用されてもよい)。そのような構成は、プロセスの大きな算出上集約的部分のうちの1つを占め、有意により効率的にする。別の実施形態では、1つの共同深層学習モデルが、セグメント化、瞳孔検出、および閃光検出(例えば、深層畳み込みネットワークは、左および右眼画像の虹彩、瞳孔、強膜、および残りの種類へのロバストなピクセル毎セグメント化のために利用されてもよい。眼セグメント化は、次いで、アクティブな内向きのLED照明源の2-D閃光場所を絞り込むために利用されてもよい)を行うために訓練および利用されてもよい。次いで、視線を決定するための幾何学形状計算が、行われてもよい。そのようなパラダイムはまた、算出を効率化する。第3の実施形態では、深層学習モデルは、直接、内向きのカメラから生じる眼の2つの画像に基づいて、視線を推定するために訓練および利用されてもよい(例えば、そのような実施形態では、ユーザの眼の写真のみを使用する深層学習モデルが、システムに、ユーザが3次元空間内で注視している場所を伝えるように構成されてもよい。深層畳み込みネットワークは、左および右眼画像の虹彩、瞳孔、強膜、および残りの種類へのロバストなピクセル毎セグメント化のために利用されてもよい。眼セグメント化が、次いで、アクティブな内向きのLED照明源の2-D閃光場所を絞り込むために利用されてもよい。2-D閃光場所は、3-DLED場所とともに、3-D内の角膜中心を検出するために利用されてもよい。全ての3-D場所は、個別のカメラ座標系内にあり得ることに留意されたい。次いで、眼セグメント化がまた、楕円適合を使用して、2-D画像内の瞳孔中心を検出するために利用されてもよい。オフライン較正情報を使用して、2-D瞳孔中心が、3-D視線点にマッピングされてもよく、深度が較正の間に決定される。角膜3-D場所および3-D視線点場所を接続する線は、その眼に関する視線ベクトルである)。そのようなパラダイムはまた、算出を効率化し、関連深層ネットワークは、左および右画像を前提として、直接、3-D視線点を予測するように訓練されてもよい。そのような深層ネットワークがそのような訓練を実施するための損失関数は、単純ユークリッド損失である、または眼モデルの周知の幾何学的制約もまた含んでもよい。
さらに、深層学習モデルは、内向きのカメラからのユーザの虹彩の画像を使用したバイオメトリック識別のために含まれてもよい。そのようなモデルはまた、モデルが内向きのカメラからの画像データのフーリエ変換において顕著となるであろうため、ユーザがコンタクトレンズを装着しているかどうかを決定するために利用されてもよい。
図16A(124、154、156)に描写されるもの等の外向きのカメラの使用は、上記に説明されるように、頭部搭載型コンポーネント(58)を装着して存在する環境に対して、ユーザの頭部の姿勢等の姿勢の決定のために、SLAMまたはPTAM分析を行うために利用されてもよい。大部分のSLAM技法は、上記の実施形態に説明されるように、幾何学的特徴の追跡および合致に依存する。概して、これは、外向きのカメラが、角、縁、および他の特徴を検出可能である、「テクスチャ化」世界において有用である。さらに、場面内で検出された特徴の永続性/静力学について、ある仮定が行われ得、SLAMまたはPTAMプロセスを用いた本マッピングおよび追跡分析の全てに利用可能な有意な算出および電力リソースを有することが有用である。そのようなリソースは可搬性または装着可能であって、利用可能な内蔵処理能力および電力を限定し得るもののうちのいくつか等、あるシステムでは供給が不足し得る。
(例示的深層SLAMネットワーク)
深層学習ネットワークは、種々の実施形態の中に組み込まれ、画像データ内の差異を観察し、訓練および構成に基づいて、本主題のシステムの変形例のSLAM分析において重要な役割を果たし得る(SLAMのコンテキストでは、本明細書における深層ネットワークは、「深層SLAM」ネットワークと見なされ得る)。
一実施形態では、深層SLAMネットワークは、拡張現実システムの頭部搭載型コンポーネント(58)等の追跡されるべきコンポーネントに結合されるカメラから捕捉された一対のフレーム間の姿勢を推定するために利用されてもよい。システムは、姿勢(例えば、頭部搭載型コンポーネント58の姿勢)の変換を学習し、追跡様式において、これを適用するように構成される、畳み込みニューラルネットワークを備えてもよい。システムは、既知の原点(X、Y、Zとして0,0,0)において真っ直ぐ等、特定のベクトルおよび配向を見ていることから開始するように構成されてもよい。次いで、ユーザの頭部は、姿勢変換または相対的姿勢変換を求めることを目標として、例えば、フレーム0とフレーム1との間で、右に少し、次いで、左に少し移動されてもよい。関連付けられた深層ネットワークは、一対の画像に関して訓練されてもよく、例えば、姿勢Aおよび姿勢Bならびに画像Aおよび画像Bを把握し、これは、ある姿勢変換につながる。姿勢変換が決定されると、次いで、関連付けられたIMUデータ(上記に記載されるように、加速度計、ジャイロスコープ等から)を姿勢変換の中に統合し、ユーザが原点から離れるように、部屋を動き回るにつれて、どのような軌道であれ、追跡を継続し得る。そのようなシステムは、「相対的姿勢ネット」と称され得、これは、上記に記載されるように、対のフレームに基づいて訓練され、既知の姿勢情報が、利用可能である(変換は、フレーム毎に、実際の画像内の変動に基づいて決定され、システムは、平行移動および回転の観点から、姿勢変換を学習する)。深層ホモグラフィ推定または相対的姿勢推定は、例えば、米国特許出願第62/339,799号(参照することによってその全体として本明細書に組み込まれる)に議論されている。
そのような構成が、フレーム0からフレーム1への姿勢推定を行うために利用されるとき、結果は、概して、完璧ではなく、システムは、ドリフトに対処するための方法を実装することができる。システムが、フレーム1から2、3、4へと前進し、相対的姿勢を推定するにつれて、少量の誤差が、各対のフレーム間にもたらされる。本誤差は、概して、蓄積し、問題となる(例えば、本誤差ベースのドリフトに対処しなければ、システムは、姿勢推定を用いて、ユーザおよびその関連付けられたシステムコンポーネントを誤った場所および配向に設置する結果となり得る)。一実施形態では、「ループ閉鎖」の概念が、「再位置特定」問題と称され得るものを解決するために適用されてもよい。言い換えると、システムは、以前に特定の場所にあったかどうかと、該当する場合、予測される姿勢情報が、同一場所に関して、前の姿勢情報に照らして理にかなうどうかとを決定するように構成されてもよい。例えば、システムは、以前に見えていたマップ上のフレームが見える度に、再位置特定するように構成されてもよい。平行移動が、例えば、X方向に5mmずれており、回転が、例えば、シータ方向に5度ずれている場合、システムは、本相違を他の関連付けられたフレームのものとともに修正する。したがって、軌道は、誤ったものとは対照的に、正しいものとなる。再位置特定は、米国特許出願第62/263,529号(参照することによってその全体として本明細書に組み込まれる)に議論される。
また、特に、IMU情報(例えば、上記に説明されるように、関連付けられた加速度計、ジャイロスコープ、および同等物からのデータ等)を使用することによって、姿勢が推定されるとき、決定された位置および配向データ内には、ノイズが存在することが分かっている。そのようなデータが、直接、例えば、画像を提示するためにさらなる処理を伴わずに、システムによって利用される場合、ユーザによって被られる望ましくないジッタおよび不安定性が存在する可能性が高い。これは、上記に説明されるもののいくつか等のある技法において、カルマンフィルタ、センサ融合技法、および平滑化関数が、利用され得る理由である。畳み込みニューラルネットを使用して、姿勢を推定する、上記に説明されるもの等の深層ネットワークソリューションを用いることで、平滑化問題は、長短期メモリネットワークに類似する、再帰ニューラルネットワーク(RNN)を使用して対処され得る。言い換えると、システムは、畳み込みニューラルネットを構築するように構成されてもよく、その上に、RNNが、設置される。従来のニューラルネットは、設計上、フィードフォワードであって、時間的に静的である。画像または対の画像を前提として、それらは、回答をもたらす。RNNを用いることで、層の出力が、次の入力に追加され、再び、同一層の中にフィードバックされる。これは、典型的には、ネット内の唯一の層であって、「時間を通した通過」として想定され得る。すなわち、各時点において、同一ネット層が、若干時間的に調整された入力を再検討し、本サイクルは、繰り返される。さらに、フィードフォワードネットと異なり、RNNは、値のシーケンスを入力として受信することができ(例えば、経時的にシーケンス化される)、また、値のシーケンスを出力として生産することができる。RNNの単純構造は、フィードバックループに内蔵され、これは、予測エンジンのように挙動することを可能にし、結果として、本実施形態における畳み込みニューラルネットと組み合わせられると、システムは、比較的にノイズの多い軌道データを畳み込みニューラルネットから採取し、それをRNNに通過させ、はるかに平滑であって、ウェアラブルコンピューティングシステムの頭部搭載型コンポーネント(58)に結合され得る、ユーザの頭部の運動等のはるかにヒト運動のような軌道を出力するであろう。
システムはまた、オブジェクトの深度を立体の対の画像から決定するように構成されてもよく、深層ネットワークを有し、左および右画像が入力される。畳み込みニューラルネットは、左および右カメラ間(頭部搭載型コンポーネント58上の左眼カメラと右眼カメラとの間等)の相違点を出力するように構成されてもよい。決定された相違点は、カメラの焦点距離が既知である場合、深度の逆数であって、したがって、システムは、相違点情報を有する深度を効率的に計算するように構成されることができる。次いで、メッシュ化および他のプロセスが、比較的に高算出および電力リソース負荷を要求し得る、深度センサ等の深度を感知するための代替コンポーネントを伴うことなく、行われてもよい。
意味論分析および本主題の拡張現実構成の種々の実施形態への深層ネットワークの適用に関して、特に着目され、かつ可用性のあるいくつかの分野は、限定ではないが、ジェスチャおよびキーポイントの検出、顔認識、および3-Dオブジェクト認識を含む。
ジェスチャ認識に関して、種々の実施形態では、システムは、ユーザの手によるシステムを制御するためのあるジェスチャを認識するように構成される。一実施形態では、内蔵プロセッサは、「ランダムフォレスト」として知られるものを、感知される深度情報とともに利用して、ユーザによるあるジェスチャを認識するように構成されてもよい。ランダムフォレストモデルは、非決定的モデルであって、これは、非常に大きなパラメータのライブラリを使用し得、比較的に大処理容量、したがって、電力需要を使用し得る。さらに、深度センサは、ある深度センサに関するノイズ限界と、例えば、1または2cmの深度間の差異を正確に決定することの不能性とに起因して、対象の手の深度の近傍の机またはテーブルの表面または壁等のある背景では、手ジェスチャを読み取るために常時最適に適していない場合がある。ある実施形態では、ランダムフォレストタイプのジェスチャ認識が、深層学習ネットワークと置換されてもよい。そのような構成のための深層ネットワークを利用する際の課題のうちの1つは、「手」または「非手」のようなピクセル等の画像情報の標識化部分である。そのようなセグメント化課題を伴う深層ネットワークの訓練および利用は、数百万の画像を用いてセグメント化を行うことを要求し得、これは、非常に高価かつ時間がかかる。これに対処するために、一実施形態では、訓練時間の間、軍事またはセキュリティ目的のために利用可能なもの等のサーマルカメラが、サーマルカメラが、本質的に、ヒト手であるために十分に高温である画像部分とそうではない部分とを示すことによって、「手」および「非手」自体のセグメント化を行うように、従来の外向きのカメラに結合されてもよい。
顔認識に関して、本主題の拡張現実システムが、他の人物との社会的設定において装着されるように構成されることを前提として、ユーザの周囲の人物を理解することは、単に、他の近傍の人物を識別するだけではなく、また、提示される情報を調節するために、比較的に有益であり得る(例えば、システムが、近傍の人物を成人の友人として識別する場合、チェスをプレーすることを提案し、それを補助してもよい。システムが、近傍の人物を自分の子供として識別する場合、サッカーをプレーしに出掛けることを提案してもよく、それを補助してもよい。システムが、近傍の人物の識別に失敗する、または既知の危険として識別する場合、ユーザは、そのような人物との接触を回避するように促されてもよい)。ある実施形態では、深層ニューラルネットワーク構成は、深層再位置特定に関連して上記に記載されるものに類似する様式において、顔認識を補助するために利用されてもよい。モデルは、ユーザの生活に関連する複数の異なる顔で訓練されてもよく、次いで、顔が、頭部搭載型コンポーネント(58)の近傍等、システムの近傍に近づくと、システムは、その顔画像をピクセル空間内で撮影し、それを、例えば、128-次元ベクトルに変換し、次いで、ベクトルを高次元空間内の点として使用し、本人物が既知の人々のリスト内に存在するかどうかを判別することができる。要するに、システムは、「最近傍近隣」検索をその空間内で行うように構成されてもよく、最終的に、そのような構成は、非常に正確となることができ、偽陽性率は、1,000分の1となる。
3-Dオブジェクト検出に関して、ある実施形態では、深層ニューラルネットワークを組み込ませることが有用であって、これは、ユーザに、彼らが存在する空間について、3-次元視点から伝えるであろう(例えば、壁、床、天井だけではなく、また、単に、従来の2-次元感知からだけではなく、真の3-次元感知からのソファー、椅子、キャビネット、および同等物等の部屋を埋めるオブジェクト)。例えば、一実施形態では、ユーザが、例えば、仮想ボールまたは他のオブジェクトが投げられるような場合、ソファーの体積によって占有される体積を把握するように、ユーザにとって、部屋内のソファーの真の立体境界を理解するモデルを有することが望ましい。深層ニューラルネットワークモデルは、高レベルの精巧さを伴う直方体モデルを形成するために利用されてもよい。
ある実施形態では、深層強化ネットワークまたは深層強化学習が、ユーザが常に直接動作主に伝える必要なく、動作主が具体的コンテキスト内で行うはずである内容を効果的に学習するために利用されてもよい。例えば、ユーザが、常時、そのイヌの仮想表現を自身が占有している部屋の中で歩き回らせることを所望するが、イヌの表現を常時可視にさせる(例えば、壁またはキャビネットの背後に隠蔽されない)ことを所望する場合、深層強化アプローチは、シナリオをある種のゲームに転化してもよく、仮想動作主(ここでは、仮想イヌ)は、ユーザの近傍の物理的空間内を徘徊することを可能にされるが、訓練時間の間、例えば、T0からT1まで、イヌが容認可能場所に留まる場合、報酬が与えられ、イヌのユーザのビューが、閉塞、喪失される、またはイヌが壁もしくはオブジェクトにぶつかる場合、ペナルティが与えられる。そのような実施形態では、深層ネットワークは、点を失くすのではなく、点を得るために、行う必要があるものの学習を開始し、すぐに、所望の機能を提供するために把握する必要があるものを把握する。
システムはまた、ユーザの周囲の実際の世界の採光に近似または合致する様式において、仮想世界の採光に対処するように構成されてもよい。例えば、仮想知覚を拡張現実内の実際の知覚と可能な限り最適に混成させるために、採光色、陰影、および採光ベクトルが、仮想オブジェクトとともに可能な限り現実的に再現される。言い換えると、仮想不透明コーヒーカップが、実世界テーブル上の実世界オブジェクトから陰影を作成する、部屋の1つの特定の角から生じる黄色がかった色調の光とともに、部屋内の実際のテーブルの表面上に位置付けられることになる場合、仮想コーヒーカップの光色調および陰影は、実際のシナリオに最適に合致するであろう。ある実施形態では、深層学習モデルは、システムコンポーネントが設置される、実際の環境の照明を学習するために利用されてもよい。例えば、モデルは、実際の環境からの画像または画像のシーケンスを前提として、部屋の照明を学習し、1つ以上の光源による、明度、色相、およびベクトル等の要因を決定するように利用されてもよい。そのようなモデルは、合成データおよびユーザの頭部搭載型コンポーネント(58)等のユーザデバイスからの捕捉された画像から訓練されてもよい。
(例示的ヒドラアーキテクチャ)
図29を参照すると、「ヒドラ」アーキテクチャ(272)と呼ばれ得る、深層学習ネットワークアーキテクチャが、図示される。そのような構成では、IMUデータ(加速度計、ジャイロスコープ、磁力計から)、外向きのカメラのデータ、深度感知カメラデータ、および/または音もしくは音声データ等の種々の入力(270)が、全体的処理の有意な部分を行い、その結果をグループまたは複数の中央層(266)に、最終的に、顔認識、視覚的検索、ジェスチャ識別、意味論セグメント化、オブジェクト検出、採光検出/決定、SLAM、再位置特定、および/または深度推定(上記に記載されるように、立体画像情報等から)等の種々のプロセス機能性を表す、複数の関連付けられた「ヘッド」(264)のうちの1つ以上のものに通過させる、グループまたは複数の下位層(268)を有する、多層中央処理リソースにチャネル指定されてもよい。ジェスチャ、オブジェクト、再位置特定、または深度(または機能性のいずれかと関連付けられた任意の状態)の発生、決定、または識別は、特定の機能性と関連付けられたイベントと称され得る。ウェアラブルディスプレイシステムでは、ヒドラアーキテクチャは、種々の実施形態における、ローカル処理およびデータモジュール70または遠隔処理モジュールおよびデータリポジトリ72、74上に実装され、それによって実施されてもよい。複数の下位層(268)および中央層(266)は、複数の中間層と称され得る。
従来、深層ネットワークを使用して、種々のタスクを達成するとき、アルゴリズムは、タスク毎に構築されるであろう。したがって、自動車を認識することが所望される場合、アルゴリズムは、そのために構築されるであろう。顔を認識することが所望される場合、アルゴリズムは、そのために構築され、これらのアルゴリズムは、同時に起動されてもよい。非限定または高レベルの電力および算出リソースが、利用可能である場合、そのような構成は、良好に機能し、結果を入手するであろう。しかし、限定された電力供給源および限定された処理能力を内蔵プロセッサ内に伴う、ポータブル拡張現実システムのシナリオ等の多くのシナリオでは、コンピューティングおよび電力リソースは、比較的に限定され得、タスクのある側面をともに処理することが望ましくあり得る。さらに、1つのアルゴリズムが、別のものからの知識を有する場合、いくつかの実施形態では、第2のアルゴリズムをより良好なものにし得る。例えば、1つの深層ネットワークアルゴリズムが、イヌおよびネコについて把握している場合、そこからの知識転送(「ドメイン適合」とも称される)が、別のアルゴリズムが靴をより良好に認識することに役立ち得る。したがって、訓練および推定の間、アルゴリズム間のある種類のクロストークを有することは、合理的である。
さらに、アルゴリズム設計および修正に関連して、考慮点が存在する。好ましくは、さらなる能力が、アルゴリズムの初期バージョンに対して必要とされる場合、新しいものを最初から完全に再構築する必要はないであろう。描写されるヒドラアーキテクチャ(272)が、上記に記載されるように、共有され得るある算出プロセスの共通側面が存在する場合があるため、これらの課題ならびに算出および電力効率課題に対処するために利用されてもよい。例えば、描写されるヒドラアーキテクチャ(272)では、1つ以上のカメラからの画像情報等の入力(270)が、下位層(268)の中にもたらされてもよく、そこで、比較的に低レベルに関する特徴抽出が、行われてもよい。例えば、ガボール関数、ガウスの導関数、基本的に、線、縁、角、色をもたらすものであって、これらは、低レベルにおける多くの問題に関して一様である。したがって、タスク変動にかかわらず、低レベル特徴抽出は、ネコ、車、またはウシを抽出することを目的とするかどうかにかかわらず、同一であることができ、したがって、それに関連する算出は、共有されることができる。ヒドラアーキテクチャ(272)は、高レベルパラダイムであって、これは、アルゴリズムを横断して知識共有を可能にし、それぞれをより良好なものにし、算出が、共有され、低減され、かつ冗長となり得ないように、特徴共有を可能にし、全てのものを書き換える必要なく、一式の能力を拡張可能となることを可能にし、むしろ、新しい能力は、既存の能力とともに、基盤上にスタックされてもよい。
したがって、上記に記載されるように、描写される実施形態では、ヒドラアーキテクチャは、1つの統合された経路を有する、深層ニューラルネットワークを表す。ネットワークの下層(268)は、共有され、それらは、視覚的プリミティブの基本ユニットを入力画像および他の入力(270)から抽出する。システムは、いくつかの層の畳み込みを経て、縁、線、輪郭、合流点、および同等物を抽出するように構成されてもよい。プログラマが特徴エンジニアリングするために使用していた基本コンポーネントは、ここでは、深層ネットワークによって学習されることになる。最終的に、これらの特徴は、アルゴリズムが、顔認識、追跡等であるかどうかにかかわらず、多くのアルゴリズムにとって有用である。したがって、いったんより低い算出仕事が、行われ、他のアルゴリズムの全ての中への画像または他の入力からの共有表現が存在するようになると、問題または機能性あたり1つの個々の経路が存在し得る。したがって、本共有表現の上には、アーキテクチャ(272)の他の「ヘッド」(264)のために、顔に非常に具体的な顔認識につながる経路が存在し、SLAMに非常に具体的な追跡につながる経路が存在する等となる。そのような実施形態では、一方では、追加を基本的に増大させることを可能にする、本共有算出の全てを有し、他方では、一般的知識の上にあって、微調整を行い、非常に具体的な質問に対する回答を見出すことを可能にする、非常に具体的な経路を有する。
また、そのような構成に関して有益なものは、そのようなニューラルネットワークが、入力(270)により近い下位層(268)が、算出の各層において、システムが、オリジナル入力をとり、それを、典型的には、事物の次元が低減される、ある他の次元空間に変換するため、より多くの算出を利用するように設計されるという事実である。したがって、いったんネットワークの下層から5番目の層が達成されると、算出の量は、最低レベルにおいて利用されたものの5、10、20、100(またはそれを上回る)分の1未満の範囲内となり得る(例えば、入力がはるかにより大きく、はるかに大きい行列乗算が使用されたため)。一実施形態では、システムが共有算出結果を抽出するまで、解決される必要がある問題に対して非常に不確かである。ほぼ任意のアルゴリズムの算出の大部分は、下位層で完了されており、したがって、新しい経路が、顔認識、追跡、深度、採光、および同等物のために追加されると、これらは、算出制約に比較的にわずかにしか寄与せず、したがって、そのようなアーキテクチャは、拡張のための豊富な能力を提供する。一実施形態では、第1のいくつかの層に関して、最高分解能データを留保するために、プーリングが存在しなくてもよい。中央層は、その時点で、高分解能が必要とされないため、プーリングプロセスを有してもよい(例えば、高分解能は、中央層において、車の車輪の場所を把握するために必要とされず、ネットワークは、概して、高分解能における下位レベルにおいて、ナットおよびボルトが位置する場所を把握する必要があり、次いで、画像データは、車の車輪の場所に関する中央層に通過されるにつれて、有意に収縮されることができる)。例えば、下位レベルにおいて生成された特徴は、第1の分解能を有する特徴を備え、中央層において生成された特徴は、第1の分解能未満の第2の分解能を有する特徴を備える。さらに、いったんネットワークが、学習されたつながりの全てを有すると、全てのものは、緩やかに結び付けられ、つながりは、有利には、データを通して学習される。中央層(266)は、一部、例えば、オブジェクト部分、顔特徴、および同等物の学習を開始するように構成されてもよい。したがって、単純ガボール関数ではなく、中央層は、より複雑な構造または上位レベル特徴(例えば、曲がりくねった形状、陰影等)を処理する。次いで、プロセスが上位に向かってより上方に移動するにつれて、一意のヘッドコンポーネント(264)への分割が存在し、そのうちのいくつかは、多くの層を有してもよく、そのうちのいくつかは、殆ど有していなくてもよい。ヘッドコンポーネント(264)の層は、ヘッドコンポーネント層と称され得る。再び、スケーラビリティおよび効率は、処理力(例えば、浮動小数点演算/秒(flops)で測定される)の90%等の大部分が、下位層(268)内にあって、次いで、flopsの5%等の小部分が、中央層(266)内にあって、別の5%が、ヘッド(264)内にあるという事実に大きく起因する。
そのようなネットワークは、すでに存在する情報を使用して、事前に訓練されてもよい。例えば、一実施形態では、大グループのクラス(1,000の範囲内)からの大グループ(1千万の範囲内)ImageNetの画像が、クラスの全てを訓練するために利用されてもよい。一実施形態では、いったん訓練されると、クラスを区別する上層は、取り除かれてもよいが、訓練プロセスにおいて学習された加重は全て、保たれる。
ニューラルネットワークをヒドラアーキテクチャ(272)を用いて訓練するプロセスは、ネットワークに入力データおよび対応する標的出力データの両方を提示することを伴う。例示的入力および標的出力の両方を備える、本データは、訓練セットと称され得る。訓練のプロセスを通して、下位層(268)、中央層(266)、およびヘッドコンポーネント(264)と関連付けられた加重を含む、ネットワークの加重が、ネットワークの出力が、訓練セットからの特定の入力データを前提として、その特定の入力データに対応する標的出力に合致する(例えば、可能な限り緊密に)ようになるように、漸次的または反復的に、適合されることができる。
(例示的NN)
深層ニューラルネットワーク(DNN)等のニューラルネットワーク(NN)の層は、線形または非線形変換をその入力に適用し、その出力を生成することができる。深層ニューラルネットワーク層は、正規化層、畳み込み層、ソフトサイン層、正規化線形層、連結層、プーリング層、再帰層、インセプション様層、または任意のそれらの組み合わせであることができる。正規化層は、例えば、L2正規化を用いて、その入力の明度を正規化し、その出力を生成することができる。正規化層は、例えば、相互に対して一度に複数の画像の明度を正規化し、複数の正規化された画像をその出力として生成することができる。明度を正規化するための非限定的例示的方法は、ローカルコントラスト正規化(LCN)またはローカル応答正規化(LRN)を含む。ローカルコントラスト正規化は、平均値ゼロおよび分散1(または他の値の平均値および分散)を有するようにピクセル毎に画像のローカル領域を正規化することによって、画像のコントラストを非線形に正規化することができる。ローカル応答正規化は、平均値ゼロおよび分散1(または他の値の平均値および分散)を有するように、画像をローカル入力領域にわたって正規化することができる。正規化層は、訓練プロセスを加速させ得る。
畳み込み層は、その入力を畳み込み、その出力を生成する、カーネルのセットに適用されることができる。ソフトサイン層は、ソフトサイン関数をその入力に適用することができる。ソフトサイン関数(softsign(x))は、例えば、(x/(1+|x|))であることができる。ソフトサイン層は、要素毎誤対応の影響を無視し得る。正規化線形層は、正規化線形層単位(ReLU)またはパラメータ化された正規化線形層単位(PReLU)であることができる。ReLU層は、ReLU関数をその入力に適用し、その出力を生成することができる。ReLU関数ReLU(x)は、例えば、max(0,x)であることができる。PReLU層は、PReLU関数をその入力に適用し、その出力を生成することができる。PReLU関数PReLU(x)は、例えば、x≧0の場合はxおよびx<0の場合はaxであることができ、aは、正の数である。連結層は、その入力を連結し、その出力を生成することができる。例えば、連結層は、4つの5×5画像を連結し、1つの20×20画像を生成することができる。プーリング層は、その入力をダウンサンプリングし、その出力を生成する、プーリング関数を適用することができる。例えば、プーリング層は、20×20画像を10×10画像にダウンサンプリングすることができる。プーリング関数の非限定的実施例は、最大プーリング、平均プーリング、または最小プーリングを含む。
時間点tでは、再帰層は、隠蔽された状態s(t)を算出することができ、再帰接続は、時間tにおける隠蔽された状態s(t)を再帰層に後続時間点t+1における入力として提供することができる。再帰層は、時間tにおける隠蔽された状態s(t)に基づいて、時間t+1においてその出力を算出することができる。例えば、再帰層は、ソフトサイン関数を時間tにおいて隠蔽された状態s(t)に適用し、時間t+1におけるその出力を算出することができる。時間t+1における再帰層の隠蔽された状態は、その入力として、時間tにおける再帰層の隠蔽された状態s(t)を有する。再帰層は、例えば、ReLU関数をその入力に適用することによって、隠蔽された状態s(t+1)を算出することができる。インセプション様層は、正規化層、畳み込み層、ソフトサイン層、ReLU層およびPReLU層等の正規化線形層、連結層、プーリング層、または任意のそれらの組み合わせのうちの1つ以上のものを含むことができる。
NN内の層の数は、異なる実装では異なり得る。例えば、下位層(268)または中央層(266)内の層の数は、50、100、200、またはそれを上回り得る。深層ニューラルネットワーク層の入力タイプは、異なる実装では異なり得る。例えば、層は、いくつかの層の出力をその入力として受信することができる。層の入力は、5つの層の出力を含むことができる。別の実施例として、層の入力は、NNの層の1%を含むことができる。層の出力は、いくつかの層の入力であることができる。例えば、層の出力は、5つの層の入力として使用されることができる。別の実施例として、層の出力は、NNの層の1%の入力として使用されることができる。
層の入力サイズまたは出力サイズは、非常に大きくあることができる。層の入力サイズまたは出力サイズは、n×mであることができ、nは、入力または出力の幅を示し、mは、高さを示す。例えば、nまたはmは、11、21、31、またはそれを上回ることができる。層の入力または出力のチャネルサイズは、異なる実装では異なり得る。例えば、層の入力または出力のチャネルサイズは、4、16、32、64、128、またはそれを上回ることができる。層のカーネルサイズは、異なる実装では異なり得る。例えば、カーネルサイズは、n×mであることができ、nは、カーネルの幅を示し、mは、高さを示す。例えば、nまたはmは、5、7、9、またはそれを上回ることができる。層のストライドサイズは、異なる実装では異なり得る。例えば、深層ニューラルネットワーク層のストライドサイズは、3、5、7、またはそれを上回ることができる。
(付加的側面および利点)
第1の側面では、頭部搭載型ディスプレイシステムが、開示される。頭部搭載型ディスプレイシステムは、異なるタイプのセンサデータを捕捉するための複数のセンサと、実行可能命令と、複数のセンサによって捕捉されたセンサデータを使用して、ユーザと関連付けられた複数の機能性を実施するための深層ニューラルネットワークとを記憶するように構成され、深層ニューラルネットワークは、深層ニューラルネットワークの入力を受信するための入力層と、複数の下位層と、複数の中央層と、複数の機能性と関連付けられた深層ニューラルネットワークの結果を出力するための複数のヘッドコンポーネントとを備え、入力層は、複数の下位層の最初の層に接続され、複数の下位層の最後の層は、中央層の最初の層に接続され、複数のヘッドコンポーネントのうちのあるヘッドコンポーネントは、ヘッド出力ノードを備え、ヘッド出力ノードは、複数の中央層からヘッドコンポーネントへの一意の経路を表す複数のヘッドコンポーネント層を通して、中央層の最後の層に接続される、非一過性メモリと、複数の機能性の少なくとも1つの機能性に関連する情報をユーザに表示するように構成される、ディスプレイと、複数のセンサ、非一過性メモリ、およびディスプレイと通信する、ハードウェアプロセッサであって、異なるタイプのセンサデータを複数のセンサから受信し、異なるタイプのセンサデータを使用して、深層ニューラルネットワークの結果を決定し、複数の機能性の少なくとも1つの機能性に関連する情報の表示をユーザに対して生じさせるための実行可能命令によってプログラムされる、ハードウェアプロセッサとを備える。
第2の側面では、複数のセンサは、慣性測定ユニット、外向きのカメラ、深度感知カメラ、マイクロホン、または任意のそれらの組み合わせを備える、側面1に記載のシステム。
第3の側面では、複数の機能性は、顔認識、視覚的検索、ジェスチャ識別、意味論セグメント化、オブジェクト検出、採光検出、同時位置特定およびマッピング、再位置特定、または任意のそれらの組み合わせを備える、側面1-2のいずれか1項に記載のシステム。
第4の側面では、複数の下位層は、下位レベル特徴を異なるタイプのセンサデータから抽出するように訓練される、側面1-3のいずれか1項に記載のシステム。
第5の側面では、複数の中央層は、抽出された上位レベル特徴を下位レベル特徴から抽出するように訓練される、側面4に記載のシステム。
第6の側面では、ヘッドコンポーネントは、上位レベル特徴のサブセットを使用し、複数のイベントの少なくとも1つのイベントを決定する、側面5に記載のシステム。
第7の側面では、ヘッドコンポーネントは、複数のヘッドコンポーネント層を通して、複数の中央層のサブセットに接続される、側面1-6のいずれか1項に記載のシステム。
第8の側面では、ヘッドコンポーネントは、複数のヘッドコンポーネント層を通して、複数の中央層のそれぞれに接続される、側面1-7のいずれか1項に記載のシステム。
第9の側面では、複数の下位層と関連付けられたいくつかの加重は、深層ニューラルネットワークと関連付けられた加重の50%を上回り、複数の中央層と関連付けられたいくつかの加重と複数のヘッドコンポーネントと関連付けられたいくつかの加重の和は、深層ニューラルネットワークと関連付けられた加重の50%未満である、側面1-8のいずれか1項に記載のシステム。
第10の側面では、複数の下位層と関連付けられた算出は、深層ニューラルネットワークと関連付けられた総算出の50%を上回り、複数の中央層および複数のヘッドコンポーネントと関連付けられた算出は、深層ニューラルネットワークに関わる算出の50%未満である、側面1-9のいずれか1項に記載のシステム。
第11の側面では、複数の下位層、複数の中央層、または複数のヘッドコンポーネント層は、畳み込み層、明度正規化層、バッチ正規化層、正規化線形層、アップサンプリング層、連結層、全結合層、線形全結合層、ソフトサイン層、再帰層、または任意のそれらの組み合わせを備える、側面1-10のいずれか1項に記載のシステム。
第12の側面では、複数の中央層または複数のヘッドコンポーネント層は、プーリング層を備える、側面1-11のいずれか1項に記載のシステム。
第13の側面では、複数の異なるタイプのイベントを決定するためのニューラルネットワークを訓練するためのシステムが、開示される。本システムは、実行可能命令を記憶する、コンピュータ可読メモリと、少なくとも、異なるタイプのセンサデータを受信し、センサデータは、複数の異なるタイプのイベントと関連付けられ、入力データとしての異なるタイプのセンサデータと、対応する標的出力データとしての複数の異なるタイプのイベントとを備える、訓練セットを生成し、訓練セットを使用して、複数の異なるタイプのイベントを決定するためのニューラルネットワークを訓練するための実行可能命令によってプログラムされ、ニューラルネットワークは、ニューラルネットワークの入力を受信するための入力層と、複数の中間層と、ニューラルネットワークの結果を出力するための複数のヘッドコンポーネントとを備え、入力層は、複数の中間層の最初の層に接続され、複数のヘッドコンポーネントのうちのあるヘッドコンポーネントは、ヘッド出力ノードを備え、ヘッド出力ノードは、複数のヘッドコンポーネント層を通して、中間層の最後の層に接続される、1つ以上のプロセッサとを備える。
第14の側面では、異なるタイプのセンサデータは、慣性測定ユニットデータ、画像データ、深度データ、音データ、音声データ、または任意のそれらの組み合わせを備える、側面13に記載のシステム。
第15の側面では、複数の異なるタイプのイベントは、顔認識、視覚的検索、ジェスチャ識別、意味論セグメント化、オブジェクト検出、採光検出、同時位置特定およびマッピング、再位置特定、または任意のそれらの組み合わせを備える、側面13-14のいずれか1項に記載のシステム。
第16の側面では、複数の中間層は、複数の下位層および複数の中央層を備え、複数の下位層は、下位レベル特徴を異なるタイプのセンサデータから抽出するように訓練され、複数の中央層は、上位レベル特徴を抽出された下位レベル特徴から抽出するように訓練される、側面13-15のいずれか1項に記載のシステム。
第17の側面では、ヘッドコンポーネントは、複数のヘッドコンポーネント層を通して、複数の中間層のサブセットに接続される、側面13-16のいずれか1項に記載のシステム。
第18の側面では、ヘッドコンポーネントは、複数のヘッドコンポーネント層を通して、複数の中間層のそれぞれに接続される、側面13-17のいずれか1項に記載のシステム。
第19の側面では、複数の中間層または複数のヘッドコンポーネント層は、畳み込み層、明度正規化層、バッチ正規化層、正規化線形層、アップサンプリング層、プーリング層、連結層、全結合層、線形全結合層、ソフトサイン層、再帰層、または任意のそれらの組み合わせを備える、側面13-18のいずれか1項に記載のシステム。
第20の側面では、1つ以上のプロセッサはさらに、少なくとも、第2の異なるタイプのセンサデータを受信し、第2の異なるタイプのセンサデータは、第2の異なるタイプのイベントと関連付けられ、入力データとしての第2の異なるタイプのセンサデータと、対応する標的出力データとしての第2の異なるタイプのイベントとを備える、再訓練セットを生成し、再訓練セットを使用して、第2の異なるタイプのイベントを決定するためのニューラルネットワークを再訓練するための実行可能命令によってプログラムされ、複数のヘッドコンポーネントの第2のヘッドコンポーネントは、第2の異なるタイプのイベントと関連付けられた結果を出力するための第2のヘッド出力ノードを備え、ヘッド出力ノードは、複数の第2のヘッドコンポーネント層を通して、中間層の最後の層に接続される、側面13-19のいずれか1項に記載のシステム。
第21の側面では、ニューラルネットワークを再訓練するために、1つ以上のプロセッサは、少なくとも、複数の第2のヘッドコンポーネント層と関連付けられた加重を更新するための実行可能命令によってプログラムされる、側面20に記載のシステム。
第22の側面では、ニューラルネットワークは、複数の中間層と関連付けられた加重を更新せずに再訓練される、側面20に記載のシステム。
第23の側面では、複数の異なるタイプのセンサデータは、第2の異なるタイプのイベントと関連付けられ、1つ以上のプロセッサはさらに、少なくとも、入力データとしての異なるタイプのセンサデータと、対応する標的出力データとしての第2の異なるタイプのイベントとを備える、再訓練セットを生成し、再訓練セットを使用して、第2の異なるタイプのイベントを決定するためのニューラルネットワークを再訓練するための実行可能命令によってプログラムされる、側面13-22のいずれか1項に記載のシステム。
第24の側面では、ニューラルネットワークを再訓練するために、1つ以上のプロセッサは、少なくとも、複数の第2のヘッドコンポーネント層と関連付けられた加重を更新するための実行可能命令によってプログラムされる、側面23に記載のシステム。
第25の側面では、ニューラルネットワークは、複数の中間層と関連付けられた加重を更新せずに再訓練される、側面23-24のいずれか1項に記載のシステム。
第26の側面では、方法が、開示される。本方法は、ハードウェアプロセッサの制御下で、異なるタイプの訓練センサデータを受信するステップであって、訓練センサデータは、複数の異なるタイプのイベントと関連付けられる、ステップと、入力データとしての異なるタイプの訓練センサデータと、対応する標的出力データとしての複数の異なるタイプのイベントとを備える、訓練セットを生成するステップと、訓練セットを使用して、複数の異なるタイプのイベントを決定するためのニューラルネットワークを訓練するステップとを含み、ニューラルネットワークは、ニューラルネットワークの入力を受信するための入力層と、複数の中間層と、ニューラルネットワークの結果を出力するための複数のヘッドコンポーネントとを備え、入力層は、複数の中間層の最初の層に接続され、複数のヘッドコンポーネントのうちのあるヘッドコンポーネントは、ヘッド出力ノードを備え、ヘッド出力ノードは、複数のヘッドコンポーネント層を通して、中間層の最後の層に接続される。
第27の側面では、異なるタイプの訓練センサデータは、慣性測定ユニットデータ、画像データ、深度データ、音データ、音声データ、または任意のそれらの組み合わせを備える、側面26に記載の方法。
第28の側面では、複数の異なるタイプのイベントは、顔認識、視覚的検索、ジェスチャ識別、意味論セグメント化、オブジェクト検出、採光検出、同時位置特定およびマッピング、再位置特定、または任意のそれらの組み合わせを備える、側面26-27のいずれか1項に記載の方法。
第29の側面では、複数の中間層は、複数の下位層および複数の中央層を備える、側面26-28のいずれか1項に記載の方法。
第30の側面では、複数の下位層は、下位レベル特徴を異なるタイプの訓練センサデータから抽出するように訓練される、側面29に記載の方法。
第31の側面では、複数の中央層は、より複雑な構造を抽出された下位レベル特徴から抽出するように訓練される、側面30に記載の方法。
第32の側面では、複数の下位層と関連付けられたいくつかの加重は、ニューラルネットワークと関連付けられた加重の50%を上回り、複数の中央層と関連付けられたいくつかの加重と複数のヘッドコンポーネントと関連付けられたいくつかの加重の和は、ニューラルネットワークと関連付けられた加重の50%未満である、側面26-31のいずれか1項に記載の方法。
第33の側面では、ニューラルネットワークを訓練する時の複数の下位層と関連付けられた算出は、ニューラルネットワークの訓練と関連付けられた総算出の50%を上回り、複数の中央層および複数のヘッドコンポーネントと関連付けられた算出は、ニューラルネットワークに関わる算出の50%未満である、側面26-32のいずれか1項に記載の方法。
第34の側面では、複数の中間層または複数のヘッドコンポーネント層は、畳み込み層、明度正規化層、バッチ正規化層、正規化線形層、アップサンプリング層、プーリング層、連結層、全結合層、線形全結合層、ソフトサイン層、再帰層、または任意のそれらの組み合わせを備える、側面26-33のいずれか1項に記載の方法。
第35の側面では、第2の異なるタイプの訓練センサデータを受信するステップであって、第2の異なるタイプの訓練センサデータは、第2の異なるタイプのイベントと関連付けられる、ステップと、入力データとしての第2の異なるタイプの訓練センサデータと、対応する標的出力データとしての第2の異なるタイプのイベントとを備える、再訓練セットを生成するステップと、再訓練セットを使用して、第2の異なるタイプのイベントを決定するためのニューラルネットワークを再訓練するステップとさらにを含み、複数のヘッドコンポーネントの第2のヘッドコンポーネントは、第2の異なるタイプのイベントと関連付けられた結果を出力するための第2のヘッド出力ノードを備え、ヘッド出力ノードは、複数の第2のヘッドコンポーネント層を通して、中間層の最後の層に接続される、側面26-34のいずれか1項に記載の方法。
第36の側面では、ニューラルネットワークを再訓練するために、1つ以上のプロセッサは、少なくとも、複数の第2のヘッドコンポーネント層と関連付けられた加重を更新するための実行可能命令によってプログラムされる、側面35に記載の方法。
第37の側面では、ニューラルネットワークは、複数の中間層と関連付けられた加重を更新せずに再訓練される、側面35に記載の方法。
第38の側面では、複数の異なるタイプの訓練センサデータは、第2の異なるタイプのイベントと関連付けられ、本方法はさらに、入力データとしての異なるタイプの訓練センサデータと、対応する標的出力データとしての第2の異なるタイプのイベントとを備える、再訓練セットを生成するステップと、再訓練セットを使用して、第2の異なるタイプのイベントを決定するためのニューラルネットワークを再訓練するステップとを含む、側面26-37のいずれか1項に記載の方法。
第39の側面では、異なるタイプの訓練センサデータに対応する異なるタイプのユーザセンサデータを受信するステップと、ニューラルネットワークおよび異なるタイプのユーザセンサデータを使用して、複数の異なるタイプのイベントのイベントを決定するステップとをさらに含む、側面26-38のいずれか1項に記載の方法。第40の側面では、イベントに関連する情報を表示するステップをさらに含む、側面39に記載の方法。
第40の側面では、ウェアラブルディスプレイシステムは、第1の周波数で動作するように構成される、第1のセンサと、第2の周波数で動作するように構成される、第2のセンサであって、第2の周波数は、第1の周波数より低い、第2のセンサと、第1の入力を第1のセンサから、第2の入力を第2のセンサから受信し、第1の入力および第2の入力をフィルタリングし、フィルタリングされた結果を出力するようにプログラムされる、ハードウェアプロセッサとを備える。いくつかの実施形態では、第1の入力を第2の入力内でフィルタリングするために、ハードウェアプロセッサは、拡張カルマンフィルタを利用するようにプログラムされる。
第41の側面では、ウェアラブルディスプレイシステムは、複数のセンサと、入力を複数のセンサのそれぞれから受信し、ヒドラニューラルネットワークアーキテクチャを評価し、複数の機能出力を生成するようにプログラムされる、ハードウェアプロセッサとを備える。ヒドラニューラルネットワークは、入力を複数のセンサのそれぞれから受信し、複数のより低いレベル特徴を抽出するように構成される、複数の下位層と、入力を複数の下位層から受信し、複数のより高いレベルの特徴を抽出するように構成される、複数の中央層であって、より高いレベルの特徴は、より低いレベルの特徴未満の分解能を有する、複数の中央層と、入力を中央層から受信し、複数の機能出力を生成するように構成される、複数のヘッドとを備えることができる。複数のセンサは、慣性測定ユニット(IMU)、外向きのカメラ、深度センサ、またはオーディオセンサを含むことができる。複数の機能出力は、顔認識、視覚的検索、ジェスチャ識別、意味論セグメント化、オブジェクト検出、採光、位置特定およびマッピング、再位置特定、または深度推定を含むことができる。いくつかの側面では、下位層は、プーリング層を含まない一方、中央層は、プーリング層を含む。いくつかの側面では、ヒドラニューラルネットワークアーキテクチャは、下位層がニューラルネットワークの算出の第1の割合を実施し、中央層がニューラルネットワークの算出の第2の割合を実施し、ヘッドがニューラルネットワークの算出の第3の割合を実施するように構成され、第1の割合は、5~100倍、第2の割合または第3の割合を上回る。
(付加的考慮点)
本明細書に説明される、ならびに/または添付される図に描写されるプロセス、方法、およびアルゴリズムはそれぞれ、具体的かつ特定のコンピュータ命令を実行するように構成される、1つ以上の物理的コンピューティングシステム、ハードウェアコンピュータプロセッサ、特定用途向け回路、および/もしくは電子ハードウェアによって実行される、コードモジュールにおいて具現化され、それによって完全もしくは部分的に自動化され得る。例えば、コンピューティングシステムは、具体的コンピュータ命令とともにプログラムされた汎用コンピュータ(例えば、サーバ)または専用コンピュータ、専用回路等を含むことができる。コードモジュールは、実行可能プログラムにコンパイルおよびリンクされ得る、動的リンクライブラリ内にインストールされ得る、または解釈されるプログラミング言語において書き込まれ得る。いくつかの実装では、特定の動作および方法が、所与の機能に特有の回路によって実施され得る。
さらに、本開示の機能性のある実装は、十分に数学的、コンピュータ的、または技術的に複雑であるため、(適切な特殊化された実行可能命令を利用する)特定用途向けハードウェアまたは1つ以上の物理的コンピューティングデバイスは、例えば、関与する計算の量もしくは複雑性に起因して、または結果を実質的にリアルタイムで提供するために、機能性を実施する必要があり得る。例えば、ビデオは、多くのフレームを含み、各フレームは、数百万のピクセルを有し得、具体的にプログラムされたコンピュータハードウェアは、商業的に妥当な時間量において所望の画像処理タスクまたは用途を提供するようにビデオデータを処理する必要がある。
コードモジュールまたは任意のタイプのデータは、ハードドライブ、ソリッドステートメモリ、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、光学ディスク、揮発性もしくは不揮発性記憶装置、同一物の組み合わせ、および/または同等物を含む、物理的コンピュータ記憶装置等の任意のタイプの非一過性コンピュータ可読媒体上に記憶され得る。本方法およびモジュール(またはデータ)はまた、無線ベースおよび有線/ケーブルベースの媒体を含む、種々のコンピュータ可読伝送媒体上で生成されたデータ信号として(例えば、搬送波または他のアナログもしくはデジタル伝搬信号の一部として)伝送され得、種々の形態(例えば、単一もしくは多重化アナログ信号の一部として、または複数の離散デジタルパケットもしくはフレームとして)をとり得る。開示されるプロセスまたはプロセスステップの結果は、任意のタイプの非一過性有形コンピュータ記憶装置内に持続的もしくは別様に記憶され得る、またはコンピュータ可読伝送媒体を介して通信され得る。
本明細書に説明される、および/または添付される図に描写されるフロー図における任意のプロセス、ブロック、状態、ステップ、もしくは機能性は、プロセスにおいて具体的機能(例えば、論理もしくは算術)またはステップを実装するための1つ以上の実行可能命令を含む、コードモジュール、セグメント、またはコードの一部を潜在的に表すものとして理解されたい。種々のプロセス、ブロック、状態、ステップ、または機能性は、組み合わせられる、再配列される、追加される、削除される、修正される、または別様に本明細書に提供される例証的実施例から変更されることができる。いくつかの実施形態では、付加的または異なるコンピューティングシステムもしくはコードモジュールが、本明細書に説明される機能性のいくつかまたは全てを実施し得る。本明細書に説明される方法およびプロセスはまた、任意の特定のシーケンスに限定されず、それに関連するブロック、ステップ、または状態は、適切な他のシーケンスで、例えば、連続して、並行して、またはある他の様式で実施されることができる。タスクまたはイベントが、開示される例示的実施形態に追加される、またはそれから除去され得る。さらに、本明細書に説明される実装における種々のシステムコンポーネントの分離は、例証を目的とし、全ての実装においてそのような分離を要求するものとして理解されるべきではない。説明されるプログラムコンポーネント、方法、およびシステムは、概して、単一のコンピュータ製品においてともに統合される、または複数のコンピュータ製品にパッケージ化され得ることを理解されたい。多くの実装変形例が、可能である。
本プロセス、方法、およびシステムは、ネットワーク(または分散)コンピューティング環境において実装され得る。ネットワーク環境は、企業全体コンピュータネットワーク、イントラネット、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、パーソナルエリアネットワーク(PAN)、クラウドコンピューティングネットワーク、クラウドソースコンピューティングネットワーク、インターネット、およびワールドワイドウェブを含む。ネットワークは、有線もしくは無線ネットワークまたは任意の他のタイプの通信ネットワークであり得る。
本発明は、対象デバイスを使用して行われ得る方法を含む。方法は、そのような好適なデバイスを提供するという行為を含んでもよい。そのような提供は、エンドユーザによって行われてもよい。換言すれば、「提供する」行為は、単に、エンドユーザが、対象方法において必須デバイスを提供するように、取得し、アクセスし、接近し、位置付けし、設定し、起動し、電源を入れ、または別様に作用することを要求する。本明細書で記載される方法は、論理的に可能である記載された事象の任意の順序で、ならびに事象の記載された順序で実行されてもよい。
本開示のシステムおよび方法は、それぞれ、いくつかの革新的側面を有し、そのうちのいかなるものも、本明細書に開示される望ましい属性に単独で関与しない、またはそのために要求されない。上記に説明される種々の特徴およびプロセスは、相互に独立して使用され得る、または種々の方法で組み合わせられ得る。全ての可能な組み合わせおよび副次的組み合わせが、本開示の範囲内に該当することが意図される。本開示に説明される実装の種々の修正が、当業者に容易に明白であり得、本明細書に定義される一般原理は、本開示の精神または範囲から逸脱することなく、他の実装に適用され得る。したがって、請求項は、本明細書に示される実装に限定されることを意図されず、本明細書に開示される本開示、原理、および新規の特徴と一貫する最も広い範囲を与えられるべきである。
別個の実装の文脈において本明細書に説明されるある特徴はまた、単一の実装における組み合わせにおいて実装されることができる。逆に、単一の実装の文脈において説明される種々の特徴もまた、複数の実装において別個に、または任意の好適な副次的組み合わせにおいて実装されることができる。さらに、特徴がある組み合わせにおいて作用するものとして上記に説明され、さらに、そのようなものとして最初に請求され得るが、請求される組み合わせからの1つ以上の特徴は、いくつかの場合では、組み合わせから削除されることができ、請求される組み合わせは、副次的組み合わせまたは副次的組み合わせの変形例を対象とし得る。いかなる単一の特徴または特徴のグループも、あらゆる実施形態に必要もしくは必須ではない。
とりわけ、「~できる(can)」、「~し得る(could)」、「~し得る(might)」、「~し得る(may)」、「例えば(e.g.)」、および同等物等、本明細書で使用される条件文は、別様に具体的に記載されない限り、または使用されるような文脈内で別様に理解されない限り、概して、ある実施形態がある特徴、要素、および/またはステップを含む一方、他の実施形態がそれらを含まないことを伝えることが意図される。したがって、そのような条件文は、概して、特徴、要素、および/もしくはステップが、1つ以上の実施形態に対していかようにも要求されること、または1つ以上の実施形態が、著者の入力または促しの有無を問わず、これらの特徴、要素、および/もしくはステップが任意の特定の実施形態において含まれる、もしくは実施されるべきかどうかを決定するための論理を必然的に含むことを示唆することを意図されない。用語「~を備える」、「~を含む」、「~を有する」、および同等物は、同義語であり、非限定的方式で包括的に使用され、付加的要素、特徴、行為、動作等を除外しない。また、用語「または」は、その包括的意味において使用され(およびその排他的意味において使用されず)、したがって、例えば、要素のリストを接続するために使用されると、用語「または」は、リスト内の要素のうちの1つ、いくつか、または全てを意味する。加えて、本願および添付される請求項で使用されるような冠詞「a」、「an」、および「the」は、別様に規定されない限り、「1つ以上の」または「少なくとも1つ」を意味するように解釈されるべきである。本明細書で具体的に定義されないことを除いて、本明細書で使用される全ての技術的および科学的用語は、請求項の妥当性を維持されながら、可能な限り広義に一般的に理解される意味として与えられるべきである。さらに、請求項は、任意の随意の要素を除外するように草案されてもよいことに留意されたい。
本明細書で使用されるように、項目のリスト「のうちの少なくとも1つ」を指す語句は、単一の要素を含む、それらの項目の任意の組み合わせを指す。ある実施例として、「A、B、またはCのうちの少なくとも1つ」は、A、B、C、AおよびB、AおよびC、BおよびC、ならびにA、B、およびCを網羅することが意図される。語句「X、Y、およびZのうちの少なくとも1つ」等の接続文は、別様に具体的に記載されない限り、概して、項目、用語等がX、Y、またはZのうちの少なくとも1つであり得ることを伝えるために使用されるような文脈で別様に理解される。したがって、そのような接続文は、概して、ある実施形態が、Xのうちの少なくとも1つ、Yのうちの少なくとも1つ、およびZのうちの少なくとも1つがそれぞれ存在するように要求することを示唆することを意図されない。
同様に、動作は、特定の順序で図面に描写され得るが、これは、望ましい結果を達成するために、そのような動作が示される特定の順序で、もしくは連続的順序で実施される、または全ての図示される動作が実施される必要はないと認識されるべきである。さらに、図面は、フローチャートの形態で1つ以上の例示的プロセスを図式的に描写し得る。しかしながら、描写されない他の動作も、図式的に図示される例示的方法およびプロセス内に組み込まれることができる。例えば、1つ以上の付加的動作が、図示される動作のいずれかの前に、その後に、それと同時に、またはその間に実施されることができる。加えて、動作は、他の実装において再配列される、または再順序付けられ得る。ある状況では、マルチタスクおよび並列処理が、有利であり得る。さらに、上記に説明される実装における種々のシステムコンポーネントの分離は、全ての実装におけるそのような分離を要求するものとして理解されるべきではなく、説明されるプログラムコンポーネントおよびシステムは、概して、単一のソフトウェア製品においてともに統合される、または複数のソフトウェア製品にパッケージ化され得ることを理解されたい。加えて、他の実装も、以下の請求項の範囲内である。いくつかの場合では、請求項に列挙されるアクションは、異なる順序で実施され、依然として、望ましい結果を達成することができる。