(57)【要約】【課題】３次元空間内の仮想オブジェクトの自動配置の提供。【解決手段】仮想オブジェクトをユーザの３次元（３Ｄ）環境内の行先オブジェクトに対して自動的に再位置付けするための拡張現実システムおよび方法が、開示される。本システムおよび方法は、仮想オブジェクトまたは行先オブジェクトのアフォーダンスに基づいて、自動的に、標的仮想オブジェクトを行先オブジェクトに結び付け、標的仮想オブジェクトを再配向することができる。本システムおよび方法はまた、ユーザの移動を追跡し、ユーザの移動が閾値条件を超えると、仮想オブジェクトを行先オブジェクトから結び付け解除することができる。【選択図】なし【特許請求の範囲】
【請求項１】
拡張現実（ＡＲ）システムであって、前記ＡＲシステムは、
ハードウェアコンピュータプロセッサと、
その上に記憶されるソフトウェア命令を有する非一過性コンピュータ可読媒体と
を備え、
前記ソフトウェア命令は、
前記ＡＲシステムのユーザから、前記ユーザの仮想環境に含まれる標的仮想オブジェクトを再現するためのインジケーションを受信することと、
前記仮想環境内で行先オブジェクトを決定することと、
前記標的仮想オブジェクトと前記仮想環境内の前記行先オブジェクトとの間の軌道を計算することと、
前記ＡＲシステムのディスプレイ上に、前記軌道に沿って前記行先オブジェクトに向かう前記標的仮想オブジェクトの複製の移動を生成およびレンダリングすることと、
前記標的仮想オブジェクトの前記複製と前記行先オブジェクトとの距離が閾値距離未満であることの決定に応答して、前記標的仮想オブジェクトの前記複製を前記行先オブジェクトに自動的に結び付けることと
を含む動作を前記ＡＲシステムに実施させるように、前記ハードウェアコンピュータプロセッサによって実行可能である、ＡＲシステム。
【請求項２】
前記ソフトウェア命令は、前記標的仮想オブジェクトの前記複製を回転させ、前記標的仮想オブジェクトの第１の法線を前記行先オブジェクトの第２の法線と整合させるようにさらに構成される、請求項１に記載のＡＲシステム。
【請求項３】
前記回転の特性は、前記標的仮想オブジェクト、前記行先オブジェクト、または前記仮想環境のうちの少なくとも１つのアフォーダンスに基づいて決定される、請求項２に記載のＡＲシステム。
【請求項４】
前記アフォーダンスは、機能、配向、タイプ、場所、形状、またはサイズのうちの少なくとも１つを含む、請求項３に記載のＡＲシステム。
【請求項５】
前記標的仮想オブジェクトの前記複製を前記行先オブジェクトに自動的に結び付けることは、前記標的仮想オブジェクトの前記複製と前記行先オブジェクトとの間の引力をシミュレートすることを含み、前記引力は、重力、弾性力、接着力、または磁力のうちの少なくとも１つを含む、請求項１に記載のＡＲシステム。
【請求項６】
前記ソフトウェア命令は、
前記標的仮想オブジェクトの前記複製と前記行先オブジェクトとの間の距離を、前記標的仮想オブジェクトの場所と前記行先オブジェクトの場所との間の変位として計算すること
を前記ＡＲシステムに行わせるようにさらに構成される、請求項１に記載のＡＲシステム。
【請求項７】
前記閾値距離は、ゼロより大きい、請求項１に記載のＡＲシステム。
【請求項８】
前記標的仮想オブジェクトを再現するためのインジケーションは、ユーザ入力デバイスの作動またはユーザの姿勢のうちの少なくとも１つから決定される、請求項１に記載のＡＲシステム。
【請求項９】
前記ソフトウェア命令は、
１つ以上のユーザ入力から結び付け解除インジケーションを検出することと、
前記行先オブジェクトからの前記標的仮想オブジェクトの前記複製の結び付け解除を開始することと
を前記ＡＲシステムに行わせるようにさらに構成される、請求項１に記載のＡＲシステム。
【請求項１０】
前記結び付け解除インジケーションは、
行先オブジェクト場所から別の焦点インジケータ場所へ焦点インジケータを移動させる速度が、閾値速度より大きいこと、
前記行先オブジェクト場所から前記別の焦点インジケータ場所へ前記焦点インジケータを移動させる加速度が、閾値加速度より大きいこと、または、
前記行先オブジェクト場所から離れるように前記焦点インジケータを移動させるための躍度が、閾値躍度より大きいこと
のうちの１つ以上を示すユーザ入力に基づく、請求項９に記載のＡＲシステム。
【請求項１１】
前記ソフトウェア命令は、前記標的仮想オブジェクトの前記複製を前記行先オブジェクトから結び付け解除するときに物理的力をシミュレートすることを前記ＡＲシステムに行わせるようにさらに構成され、前記物理的力は、摩擦または弾性のうちの少なくとも１つを含む、請求項１０に記載のＡＲシステム。
【請求項１２】
前記標的仮想オブジェクトの前記複製を自動的に結び付けることは、前記標的仮想オブジェクトを再配向することまたはサイズ変更することのうちの１つ以上を含む、請求項１に記載のＡＲシステム。
【請求項１３】
前記行先オブジェクトは、物理的オブジェクトである、請求項１に記載のＡＲシステム。
【請求項１４】
前記標的仮想オブジェクトの前記複製の前記移動は、前記標的仮想オブジェクトの前記複製の１つ以上の属性に基づいて、前記標的仮想オブジェクト、前記行先オブジェクト、および前記環境の相互作用をシミュレートすることを含む、請求項１に記載のＡＲシステム。
【請求項１５】
前記標的仮想オブジェクトの前記複製の前記１つ以上の属性は、質量、サイズ、密度、位相、硬度、弾性、または電磁属性のうちの少なくとも１つを含む、請求項１に記載のＡＲシステム。
【請求項１６】
拡張現実（ＡＲ）システムによって実施されるコンピュータ化された方法であって、
前記ＡＲシステムは、１つ以上のハードウェアコンピュータプロセッサと、ソフトウェア命令を記憶する１つ以上の非一過性コンピュータ可読記憶デバイスとを有し、
前記ソフトウェア命令は、
前記ＡＲシステムのユーザから、前記ユーザの仮想環境に含まれる標的仮想オブジェクトを再現するためのインジケーションを受信することと、
前記仮想環境内で行先オブジェクトを決定することと、
前記標的仮想オブジェクトと前記仮想環境内の前記行先オブジェクトとの間の軌道を計算することと、
前記ＡＲシステムのディスプレイ上に、前記軌道に沿って前記行先オブジェクトに向かう前記標的仮想オブジェクトの複製の移動を生成およびレンダリングすることと、
前記標的仮想オブジェクトの前記複製と前記行先オブジェクトとの距離が閾値距離未満であることの決定に応答して、前記標的仮想オブジェクトの前記複製を前記行先オブジェクトに自動的に結び付けることと
を含む前記コンピュータ化された方法を実施するように前記ＡＲシステムによって実行可能である、コンピュータ化された方法。
【請求項１７】
前記標的仮想オブジェクトの前記複製を回転させ、前記標的仮想オブジェクトの第１の法線を前記行先オブジェクトの第２の法線と整合させることをさらに含む、請求項１６に記載のコンピュータ化された方法。
【請求項１８】
前記回転の特性は、前記標的仮想オブジェクト、前記行先オブジェクト、または前記仮想環境のうちの少なくとも１つのアフォーダンスに基づいて決定される、請求項１７に記載のコンピュータ化された方法。
【請求項１９】
前記アフォーダンスは、機能、配向、タイプ、場所、形状、またはサイズのうちの少なくとも１つを含む、請求項１８に記載のコンピュータ化された方法。
【請求項２０】
前記標的仮想オブジェクトの前記複製を前記行先オブジェクトに自動的に結び付けることは、前記標的仮想オブジェクトの前記複製と前記行先オブジェクトとの間の引力をシミュレートすることを含み、前記引力は、重力、弾性力、接着力、または磁力のうちの少なくとも１つを含む、請求項１６に記載のコンピュータ化された方法。
【請求項２１】
標的仮想オブジェクトをユーザの３次元（３Ｄ）環境内の行先オブジェクトに自動的にスナップする方法であって、前記方法は、コンピュータハードウェアを備える拡張現実（ＡＲ）システムの制御下で、前記ＡＲシステムは、前記ユーザの前記３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、前記ＡＲシステムは、ユーザ入力デバイスを備え、
標的仮想オブジェクトおよび前記ユーザの前記３Ｄ環境内の行先オブジェクトを識別することであって、前記標的仮想オブジェクトは、第１の配向および第１の場所と関連付けられ、前記行先オブジェクトは、第２の配向および第２の場所と関連付けられる、ことと、
前記第１の場所および前記第２の場所に少なくとも部分的に基づいて、前記標的仮想オブジェクトと前記行先オブジェクトとの間の距離を計算することと、
前記距離を閾値距離と比較することと、
前記距離が前記閾値距離未満または前記閾値距離と等しいことの比較に応答して、前記標的仮想オブジェクトを前記行先オブジェクトの表面に自動的に結び付けることと、
前記第１の配向および前記第２の配向に少なくとも部分的に基づいて、前記標的仮想オブジェクトを自動的に配向し、前記標的仮想オブジェクトを前記行先オブジェクトと整合させることと
を含む、方法。
【請求項２２】
標的仮想オブジェクトをユーザの３次元（３Ｄ）環境内の行先オブジェクトに自動的にスナップする方法であって、前記方法は、コンピュータハードウェアを備える拡張現実（ＡＲ）システムの制御下で、前記ＡＲシステムは、前記ユーザの前記３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、前記ＡＲシステムは、ユーザ入力デバイスと、前記ユーザの姿勢を測定するように構成される姿勢センサとを備え、
前記ユーザの前記３Ｄ環境内の標的仮想オブジェクトを識別することであって、前記標的仮想オブジェクトは、第１の場所および第１の配向と関連付けられる、ことと、
前記姿勢センサを使用して、前記ユーザから、前記標的仮想オブジェクトを行先オブジェクトに移動させるインジケーションを受信することであって、前記行先オブジェクトは、第２の場所および第２の配向と関連付けられる、ことと、
前記第１の場所および前記第２の場所に少なくとも部分的に基づいて、前記標的仮想オブジェクトと前記行先オブジェクトとの間の軌道を計算することと、
前記標的仮想オブジェクトを前記軌道に沿って前記行先オブジェクトに向かって移動させることと、
前記標的仮想オブジェクトの現在の場所および前記第２の場所に少なくとも部分的に基づいて、前記標的仮想オブジェクトと前記行先オブジェクトとの間の距離を計算することと、
前記距離を閾値距離と比較することと、
前記距離が前記閾値距離未満または前記閾値距離と等しいことの比較に応答して、前記標的仮想オブジェクトを前記行先オブジェクトに自動的に結び付けることと、
前記第１の配向および前記第２の配向に少なくとも部分的に基づいて、前記標的仮想オブジェクトを自動的に配向し、前記標的仮想オブジェクトを前記行先オブジェクトと整合させることと
を含む、方法。
【請求項２３】
標的仮想オブジェクトをユーザの３次元（３Ｄ）環境内の行先オブジェクトにスナップするための方法であって、前記方法は、コンピュータハードウェアを備える拡張現実（ＡＲ）システムの制御下で、前記ＡＲシステムは、前記ユーザの前記３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、
標的仮想オブジェクトおよび前記ユーザの前記３Ｄ環境内の行先オブジェクトを識別することと、
前記標的仮想オブジェクトを前記行先オブジェクトに結び付けるためのインジケーションを受信することと、
前記標的仮想オブジェクトまたは前記行先オブジェクトのうちの少なくとも１つと関連付けられたアフォーダンスを決定することと、
前記アフォーダンスに少なくとも部分的に基づいて、前記標的仮想オブジェクトを自動的に配向することと、
前記標的仮想オブジェクトを前記行先オブジェクトに自動的に結び付けることと
を含む、方法。
【請求項２４】
標的仮想オブジェクトを３次元（３Ｄ）環境内の別のオブジェクトから結び付け解除するための方法であって、前記方法は、コンピュータハードウェアを備える拡張現実（ＡＲ）システムの制御下で、前記ＡＲシステムは、ユーザの動眼視野（ＦＯＲ）内のオブジェクトとのユーザ相互作用を可能にするように構成され、前記ＦＯＲは、前記ユーザによって前記ＡＲシステムを介して知覚されることが可能な前記ユーザの周囲の環境の一部を含み、
前記ユーザによる標的仮想オブジェクトの選択を受信することであって、前記標的仮想オブジェクトは、前記ユーザの前記ＦＯＲ内の第１の位置と関連付けられる、ことと、
前記ユーザに、前記標的仮想オブジェクトと関連付けられた焦点インジケータを表示することと、
前記ユーザから、前記標的仮想オブジェクトを移動させるためのインジケーションを受信することと、
前記ユーザに、前記インジケーションに少なくとも部分的に基づいて、前記焦点インジケータを更新された位置に表示することと、
前記標的仮想オブジェクトの前記第１の位置と前記焦点インジケータの前記更新された位置との間の距離を計算することと、
前記距離を閾値距離と比較することと、
前記距離が前記閾値距離より大きいまたは前記閾値距離と等しいことの比較に応答して、前記標的仮想オブジェクトを前記第１の位置から前記焦点インジケータの前記更新された位置と関連付けられた第２の位置へ移動させることと、
前記ユーザに、前記標的仮想オブジェクトを前記第２の位置に表示することと
を含む、方法。
【請求項２５】
標的仮想オブジェクトを３次元（３Ｄ）環境内の別のオブジェクトから結び付け解除するための方法であって、前記方法は、コンピュータハードウェアを備える拡張現実（ＡＲ）システムの制御下で、前記ＡＲシステムは、ユーザの動眼視野（ＦＯＲ）内のオブジェクトとのユーザ相互作用を可能にするように構成され、前記ＦＯＲは、前記ユーザによって前記ＡＲシステムを介して知覚されることが可能な前記ユーザの周囲の環境の一部を含み、
標的仮想オブジェクトの選択を受信することであって、前記標的仮想オブジェクトは、前記ユーザの前記ＦＯＲ内の第１の位置と関連付けられ、前記標的仮想オブジェクトの少なくとも一部は、別のオブジェクトに結び付いている、ことと、
前記ユーザに、前記標的仮想オブジェクトと関連付けられた焦点インジケータを表示することと、
前記ユーザから、前記標的仮想オブジェクトを他のオブジェクトから結び付け解除するためのインジケーションを受信することと、
前記ユーザに、前記インジケーションに少なくとも部分的に基づいて、前記焦点インジケータを更新された位置に表示することと、
前記標的仮想オブジェクトを前記他のオブジェクトから結び付け解除するための閾値条件を前記インジケーションが満たすかどうかを決定することと、
前記閾値条件が満たされることの決定に応答して、前記ユーザに、前記標的仮想オブジェクトを前記焦点インジケータの前記更新された位置と関連付けられた第２の位置に表示することと、
前記閾値条件が満たされないことの決定に応答して、前記ユーザに、前記標的仮想オブジェクトを前記第１の位置に表示することと
を含む、方法。
【請求項２６】
標的仮想オブジェクトをユーザの３次元（３Ｄ）環境内の別のオブジェクトから結び付け解除するための方法であって、前記方法は、コンピュータハードウェアを備える拡張現実（ＡＲ）システムの制御下で、前記ＡＲシステムは、前記ユーザの前記３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、
標的仮想オブジェクトの選択を受信することであって、前記標的仮想オブジェクトは、初期位置では、前記３Ｄ環境内の別のオブジェクトに結び付けられている、ことと、
前記ユーザに、前記初期位置における前記標的仮想オブジェクトと関連付けられた焦点インジケータを表示することと、
前記ユーザから、前記標的仮想オブジェクトを他のオブジェクトから結び付け解除するためのインジケーションを受信することと、
前記ユーザに、前記インジケーションに少なくとも部分的に基づいて、前記焦点インジケータを更新された位置に表示することと、
前記標的仮想オブジェクトを前記他のオブジェクトから結び付け解除するための閾値条件を前記インジケーションが満たすかどうかを決定することと、
前記閾値条件が満たされることの決定に応答して、前記インジケーションに少なくとも部分的に基づいて、前記標的仮想オブジェクトを結び付け解除することと、
前記閾値条件が満たされないことの決定に応答して、前記ユーザに、前記標的仮想オブジェクトを前記初期位置に表示することと
を含む、方法。
【請求項２７】
仮想オブジェクトを３次元（３Ｄ）環境内に自動的に再位置付けするための拡張現実（ＡＲ）システムであって、前記ＡＲシステムは、
仮想コンテンツを３Ｄビュー内に提示するように構成されるＡＲディスプレイと、
前記ＡＲディスプレイと通信するハードウェアプロセッサと
を備え、
前記ハードウェアプロセッサは、
ユーザの前記３Ｄ環境内の標的仮想オブジェクトを識別することであって、前記標的仮想オブジェクトは、第１の場所および第１の配向を表す１つのベクトルを割り当てられる、ことと、
前記標的仮想オブジェクトを行先オブジェクトに結び付けるためのインジケーションを受信することであって、前記行先オブジェクトは、第２の場所および第２の配向を表す少なくとも１つのベクトルを割り当てられる、ことと、
前記第１の場所および前記第２の場所に少なくとも部分的に基づいて、前記標的仮想オブジェクトと前記行先オブジェクトとの間の軌道を計算することと、
前記標的仮想オブジェクトを前記軌道に沿って前記行先オブジェクトに向かって移動させることと、
前記標的仮想オブジェクトの現在の場所を追跡することと、
前記標的仮想オブジェクトの現在の場所および前記第２の場所に少なくとも部分的に基づいて、前記標的仮想オブジェクトと前記行先オブジェクトとの間の距離を計算することと、
前記標的仮想オブジェクトと前記行先仮想オブジェクトとの前記距離が閾値距離未満であるかどうかを決定することと、
前記距離が閾値距離未満または前記閾値距離と等しいことの比較に応答して、自動的に、前記標的仮想オブジェクトを前記行先オブジェクトに結び付け、前記標的仮想オブジェクトを前記第２の配向に配向することと、
前記ＡＲディスプレイによって、前記標的仮想オブジェクトを前記第２の場所に前記第２の配向を伴ってレンダリングすることであって、前記標的仮想オブジェクトは、前記行先オブジェクト上にオーバーレイされる、ことと
を行うようにプログラムされる、ＡＲシステム。
【請求項２８】
仮想オブジェクトを３次元（３Ｄ）環境内に自動的に再位置付けするための方法であって、前記方法は、コンピュータハードウェアを備える拡張現実（ＡＲ）システムの制御下で、前記ＡＲシステムは、３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、
前記ユーザの３Ｄ環境内の標的仮想オブジェクトを識別することであって、前記標的仮想オブジェクトは、第１の位置および第１の配向を有する、ことと、
前記標的仮想オブジェクトを行先オブジェクトに対して再位置付けするためのインジケーションを受信することと、
前記標的仮想オブジェクトを再位置付けするためのパラメータを識別することと、
前記３Ｄ環境、前記標的仮想オブジェクト、および前記行先オブジェクトのうちの少なくとも１つと関連付けられたアフォーダンスを分析することと、
前記アフォーダンスに基づいて、前記標的仮想オブジェクトを再位置付けするためのパラメータの値を計算することと、
前記標的仮想オブジェクトを再位置付けするための前記パラメータの前記値に基づいて、前記標的仮想オブジェクトのための第２の位置および第２の配向ならびに前記標的仮想オブジェクトの移動を決定することと、
前記標的仮想オブジェクトを前記第２の位置および前記第２の配向に、ならびに、前記第１の位置および前記第１の配向から前記第２の位置および前記第２の配向に到達するための前記標的仮想オブジェクトの移動にレンダリングすることと
を含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、米国仮出願第６２／３７３６９３号、出願日２０１６年８月１１日、発明の名称“ＡＵＴＯＭＡＴＩＣ  ＰＬＡＣＥＭＥＮＴ  ＯＦ  ＶＩＲＴＵＡＬ  ＯＢＪＥＣＴＳ  ＩＮ  Ａ  ３Ｄ  ＥＮＶＩＲＯＮＭＥＮＴ”、および米国仮出願第６２／３７３６９２号、出願日２０１６年８月１１日、発明の名称“ＶＩＲＴＵＡＬ  ＯＢＪＥＣＴ  ＵＳＥＲ  ＩＮＴＥＲＦＡＣＥ  ＷＩＴＨ  ＧＲＡＶＩＴＹ”に対する３５  Ｕ．Ｓ．Ｃ．  §  １１９（ｅ）のもとでの優先権の利益を主張するものであり、これらの開示の全体は、参照により本明細書中に援用される。
【０００２】
本開示は、仮想現実および拡張現実結像ならびに可視化システムに関し、より具体的には、３次元（３Ｄ）空間内の仮想オブジェクトを自動的に再位置付けすることに関する。
【背景技術】
【０００３】
現代のコンピューティングおよびディスプレイ技術は、デジタル的に再現された画像またはその一部が、現実であるように見える、もしくはそのように知覚され得る様式でユーザに提示される、いわゆる「仮想現実」、「拡張現実」、または「複合現実」体験のためのシステムの開発を促進している。仮想現実または「ＶＲ」シナリオは、典型的には、他の実際の実世界の視覚的入力に対する透過性を伴わずに、デジタルまたは仮想画像情報の提示を伴う。拡張現実または「ＡＲ」シナリオは、典型的には、ユーザの周囲の実際の世界の可視化に対する拡張としてのデジタルまたは仮想画像情報の提示を伴う。複合現実または「ＭＲ」は、物理的および仮想オブジェクトが、共存し、リアルタイムで相互作用する、新しい環境を生成するための実世界と仮想世界の融合に関連する。結論から述べると、ヒトの視知覚系は、非常に複雑であって、他の仮想または実世界画像要素の中で仮想画像要素の快適かつ自然のような感覚で豊かな提示を促進する、ＶＲ、ＡＲ、またはＭＲ技術の生産は、困難である。本明細書に開示されるシステムおよび方法は、ＶＲ、ＡＲ、ならびにＭＲ技術に関連する種々の課題に対処する。
【発明の概要】
【課題を解決するための手段】
【０００４】
仮想オブジェクトを自動的に再位置付けするための拡張現実システムの種々の実施形態が、説明される。
【０００５】
一例示的実施形態では、仮想オブジェクトを３次元（３Ｄ）環境内に自動的に再位置付けするための拡張現実（ＡＲ）システムが、開示される。ＡＲシステムは、仮想コンテンツを３Ｄビュー内に提示するように構成される、ＡＲディスプレイと、ＡＲディスプレイと通信する、ハードウェアプロセッサとを備える。ハードウェアプロセッサは、ユーザの３Ｄ環境内の標的仮想オブジェクトを識別し、標的仮想オブジェクトは、第１の場所および第１の配向を表す１つのベクトルを割り当てられ、標的仮想オブジェクトを行先オブジェクトに結び付けるためのインジケーションを受信し、行先オブジェクトは、第２の場所および第２の配向を表す少なくとも１つのベクトルを割り当てられ、少なくとも部分的に、第１の場所および第２の場所に基づいて、標的仮想オブジェクトと行先オブジェクトとの間の軌道を計算し、標的仮想オブジェクトを軌道に沿って行先オブジェクトに向かって移動させ、標的仮想オブジェクトの現在の場所を追跡し、少なくとも部分的に、標的仮想オブジェクトの現在の場所および第２の場所に基づいて、標的仮想オブジェクトと行先オブジェクトとの間の距離を計算し、標的仮想オブジェクトと行先仮想オブジェクトとの距離が閾値距離未満であるかどうかを決定し、距離が閾値距離未満またはそれと等しいことの比較に応答して、自動的に、標的仮想オブジェクトを行先オブジェクトに結び付け、標的仮想オブジェクトを第２の配向に配向し、ＡＲディスプレイによって、標的仮想オブジェクトを第２の場所に第２の配向を伴ってレンダリングし、標的仮想オブジェクトは、行先オブジェクト上にオーバーレイされるようにプログラムされる。
【０００６】
別の例示的実施形態では、仮想オブジェクトを３次元（３Ｄ）環境内に自動的に再位置付けするための方法が、開示される。本方法は、コンピュータハードウェアを備える、拡張現実（ＡＲ）システムの制御下で実施されてもよく、ＡＲシステムは、３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成される。本方法は、ユーザの３Ｄ環境内の標的仮想オブジェクトを識別するステップであって、標的仮想オブジェクトは、第１の位置および第１の配向を有する、ステップと、標的仮想オブジェクトを行先オブジェクトに対して再位置付けするためのインジケーションを受信するステップと、標的仮想オブジェクトを再位置付けするためのパラメータを識別するステップと、３Ｄ環境、標的仮想オブジェクト、および行先オブジェクトのうちの少なくとも１つと関連付けられたアフォーダンスを分析するステップと、アフォーダンスに基づいて、標的仮想オブジェクトを再位置付けするためのパラメータの値を計算するステップと、標的仮想オブジェクトを再位置付けするためのパラメータの値に基づいて、標的仮想オブジェクトのための第２の位置および第２の配向ならびに標的仮想オブジェクトの移動を決定するステップと、標的仮想オブジェクトを第２の位置および第２の配向ならびに第１の位置および第１の配向から第２の位置および第２の配向に到達するための標的仮想オブジェクトの移動にレンダリングするステップとを含む。
【０００７】
本明細書に説明される主題の１つ以上の実装の詳細が、付随の図面および以下の説明に記載される。他の特徴、側面、および利点は、説明、図面、および請求項から明白となるであろう。本概要または以下の発明を実施するための形態のいずれも、本発明の主題の範囲を定義または限定することを主張するものではない。
本発明は、例えば、以下を提供する。
（項目１）
仮想オブジェクトを３次元（３Ｄ）環境内に自動的に再位置付けするための拡張現実（ＡＲ）システムであって、前記ＡＲシステムは、
仮想コンテンツを提示するように構成されるＡＲディスプレイと、
前記ＡＲディスプレイと通信するハードウェアプロセッサであって、前記ハードウェアプロセッサは、
ユーザの３Ｄ環境内の標的仮想オブジェクトを識別することであって、前記標的仮想オブジェクトは、第１の場所および第１の配向を表す１つのベクトルを割り当てられる、ことと、
前記標的仮想オブジェクトを行先オブジェクトに結び付けるためのインジケーションを受信することであって、前記行先オブジェクトは、第２の場所および第２の配向を表す少なくとも１つのベクトルを割り当てられる、ことと、
少なくとも部分的に、前記第１の場所および前記第２の場所に基づいて、前記標的仮想オブジェクトと前記行先オブジェクトとの間の軌道を計算することと、
前記標的仮想オブジェクトを前記軌道に沿って前記行先オブジェクトに向かって移動させることと、
前記標的仮想オブジェクトの現在の場所を追跡することと、
少なくとも部分的に、前記標的仮想オブジェクトの現在の場所および前記第２の場所に基づいて、前記標的仮想オブジェクトと前記行先オブジェクトとの間の距離を計算することと、
前記標的仮想オブジェクトと行先仮想オブジェクトとの距離が閾値距離未満であるかどうかを決定することと、
前記距離が前記閾値距離未満またはそれと等しいことの比較に応答して、自動的に、前記標的仮想オブジェクトを前記行先オブジェクトに結び付け、前記標的仮想オブジェクトを前記第２の配向に配向することと、
前記ＡＲディスプレイによって、前記標的仮想オブジェクトを前記第２の場所に前記第２の配向を伴ってレンダリングすることであって、前記標的仮想オブジェクトは、前記行先オブジェクト上にオーバーレイされることと、
を行うようにプログラムされる、ハードウェアプロセッサと
を備える、ＡＲシステム。
（項目２）
前記ハードウェアプロセッサはさらに、
前記標的仮想オブジェクト、前記行先オブジェクト、または前記環境のうちの少なくとも１つのアフォーダンスを分析するようにプログラムされ、
前記標的仮想オブジェクトを自動的に配向するために、前記ハードウェアプロセッサは、前記標的仮想オブジェクトを回転させ、前記標的仮想オブジェクトの第１の法線と前記行先オブジェクトの第２の法線を整合させるようにプログラムされる、
項目１に記載のＡＲシステム。
（項目３）
前記アフォーダンスは、機能、配向、タイプ、場所、形状、またはサイズのうちの少なくとも１つを含む、項目２に記載のＡＲシステム。
（項目４）
前記標的仮想オブジェクトを自動的に結び付けるために、前記ハードウェアプロセッサは、前記標的仮想オブジェクトと前記行先オブジェクトとの間の引力をシミュレートするようにプログラムされ、前記引力は、重力、弾性力、接着力、または磁力のうちの少なくとも１つを含む、項目１に記載のＡＲシステム。
（項目５）
前記距離を計算するために、前記ハードウェアプロセッサは、前記標的仮想オブジェクトの現在の場所と前記行先オブジェクトと関連付けられた前記第２の場所との間の変位を計算するようにプログラムされる、項目１に記載のＡＲシステム。
（項目６）
前記閾値距離は、ゼロである、項目５に記載のＡＲシステム。
（項目７）
前記標的仮想オブジェクトを結び付けるためのインジケーションは、ユーザ入力デバイスの作動またはユーザの姿勢のうちの少なくとも１つから決定される、項目１に記載のＡＲシステム。
（項目８）
前記ハードウェアプロセッサはさらに、焦点インジケータを前記ユーザの現在の位置に割り当てるようにプログラムされ、前記ユーザの現在の位置は、少なくとも部分的に、前記ユーザの姿勢または前記ユーザ入力デバイスと関連付けられた位置に基づいて決定される、項目７に記載のＡＲシステム。
（項目９）
前記ハードウェアプロセッサはさらに、
前記標的仮想オブジェクトを前記行先オブジェクトから結び付け解除するためのインジケーションを受信することであって、前記インジケーションは、ユーザの現在の位置の変化と関連付けられる、ことと、
少なくとも部分的に、前記受信されたインジケーションに基づいて、前記標的仮想オブジェクトを結び付け解除するための閾値条件が満たされるかどうかを決定することと、
前記閾値条件が満たされることの決定に応答して、
前記標的仮想オブジェクトを前記行先オブジェクトから結び付け解除することと、
前記標的仮想オブジェクトを前記行先オブジェクトと関連付けられた前記第２の場所から第３の場所に移動させることと、
前記標的仮想オブジェクトを前記第３の場所にレンダリングすることと
を行うようにプログラムされる、項目１に記載のＡＲシステム。
（項目１０）
前記閾値条件が満たされることの決定に応答して、前記ハードウェアプロセッサはさらに、前記標的仮想オブジェクトのための前記第２の配向を留保しながら、前記標的仮想オブジェクトを前記第３の場所に移動させるようにプログラムされる、項目９に記載のＡＲシステム。
（項目１１）
前記第３の場所は、前記ユーザの現在の位置に対応する前記焦点インジケータの位置に対応する、項目９に記載のＡＲシステム。
（項目１２）
前記標的仮想オブジェクトを前記他のオブジェクトから結び付け解除するための閾値条件は、
前記標的仮想オブジェクトが前記行先オブジェクトに結び付けられる前記第２の場所と、前記焦点インジケータの位置との間の第２の距離が、第２の閾値距離以上であること、
前記第２の場所から前記焦点インジケータの位置まで移動させるための速度が、閾値速度以上であること、
前記第２の場所から離れるように移動させるための加速が、閾値加速以上であること、または
前記第２の場所から離れるように移動させるための躍度が、閾値躍度以上であること
のうちの少なくとも１つを含む、項目１１に記載のＡＲシステム。
（項目１３）
前記ハードウェアプロセッサは、前記標的仮想オブジェクトを前記行先オブジェクトから結び付け解除するとき、物理的力をシミュレートするようにプログラムされ、前記物理的力は、摩擦または弾性のうちの少なくとも１つを含む、項目９に記載のＡＲシステム。
（項目１４）
仮想オブジェクトを３次元（３Ｄ）環境内に自動的に再位置付けするための方法であって、前記方法は、
コンピュータハードウェアを備える拡張現実（ＡＲ）システムの制御下で、前記ＡＲシステムは、３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、
ユーザの３Ｄ環境内の標的仮想オブジェクトを識別することであって、前記標的仮想オブジェクトは、第１の位置および第１の配向を有する、ことと、
前記標的仮想オブジェクトを行先オブジェクトに対して再位置付けするためのインジケーションを受信することと、
前記標的仮想オブジェクトを再位置付けするためのパラメータを識別することと、
前記３Ｄ環境、前記標的仮想オブジェクト、および前記行先オブジェクトのうちの少なくとも１つと関連付けられたアフォーダンスを分析することと、
前記アフォーダンスに基づいて、前記標的仮想オブジェクトを再位置付けするためのパラメータの値を計算することと、
前記標的仮想オブジェクトを再位置付けするためのパラメータの値に基づいて、前記標的仮想オブジェクトのための第２の位置および第２の配向ならびに前記標的仮想オブジェクトの移動を決定することと、
前記標的仮想オブジェクトを前記第２の位置および前記第２の配向ならびに前記第１の位置および前記第１の配向から前記第２の位置および前記第２の配向に到達するための前記標的仮想オブジェクトの移動にレンダリングすることと
を含む、方法。
（項目１５）
前記標的オブジェクトを再位置付けすることは、前記標的オブジェクトを前記行先オブジェクトに結び付けること、前記標的オブジェクトを再配向すること、または前記標的オブジェクトを前記行先オブジェクトから結び付け解除することのうちの少なくとも１つを含む、項目１４に記載の方法。
（項目１６）
前記行先オブジェクトは、物理的オブジェクトである、項目１４に記載の方法。
（項目１７）
前記標的仮想オブジェクトを再位置付けするためのインジケーションが閾値条件を満たすかどうかを決定することと、前記インジケーションが前記閾値条件を満たすことの決定に応答して、前記計算、決定、およびレンダリングを実施することとをさらに含む、項目１４に記載の方法。
（項目１８）
前記閾値条件は、前記標的仮想オブジェクトと前記行先オブジェクトとの間の距離を含む、項目１７に記載の方法。
（項目１９）
１つ以上の物理的属性が、前記標的仮想オブジェクトに割り当てられ、前記標的仮想オブジェクトの移動は、前記標的仮想オブジェクトの物理的属性に基づいて、前記標的仮想オブジェクト、前記行先オブジェクト、および前記環境の相互作用をシミュレートすることによって決定される、項目１４に記載の方法。
（項目２０）
前記標的仮想オブジェクトに割り当てられる前記１つ以上の物理的属性は、質量、サイズ、密度、位相、硬度、弾性、または電磁属性のうちの少なくとも１つを含む、項目１９に記載の方法。
【図面の簡単な説明】
【０００８】
【図１】図１は、人物によって視認されるある仮想現実オブジェクトおよびある物理的オブジェクトを伴う、複合現実シナリオの例証を描写する。
【図２】図２は、ウェアラブルシステムの実施例を図式的に図示する。
【図３】図３は、複数の深度平面を使用して３次元画像をシミュレートするためのアプローチの側面を図式的に図示する。
【図４】図４は、画像情報をユーザに出力するための導波管スタックの実施例を図式的に図示する。
【図５】図５は、導波管によって出力され得る、例示的出射ビームを示す。
【図６】図６は、導波管装置と、光を導波管装置へまたはそこから光学的に結合するための光学結合器サブシステムと、多焦点立体ディスプレイ、画像、またはライトフィールドの生成において使用される、制御サブシステムとを含む、光学システムを示す、概略図である。
【図７】図７は、ウェアラブルシステムの実施例のブロック図である。
【図８】図８は、認識されるオブジェクトに関連して仮想コンテンツをレンダリングする方法の実施例のプロセスフロー図である。
【図９】図９は、ウェアラブルシステムの別の実施例のブロック図である。
【図１０】図１０は、ウェアラブルシステムへのユーザ入力を決定するための方法の実施例のプロセスフロー図である。
【図１１】図１１は、仮想ユーザインターフェースと相互作用するための方法の実施例のプロセスフロー図である。
【図１２】図１２Ａおよび１２Ｂは、仮想オブジェクトをテーブルに自動的に結び付ける実施例を図示する。
【図１３】図１３Ａ、１３Ｂ、１３Ｃ、および１３Ｄは、仮想オブジェクトの一部が壁に触れると、仮想オブジェクトを自動的に配向する実施例を図示する。
【図１４Ａ】図１４Ａ、１４Ｂ、１４Ｃ、および１４Ｄは、仮想オブジェクトをテーブルから壁に移動させる実施例を図示する。
【図１４Ｂ】図１４Ａ、１４Ｂ、１４Ｃ、および１４Ｄは、仮想オブジェクトをテーブルから壁に移動させる実施例を図示する。
【図１４Ｃ】図１４Ａ、１４Ｂ、１４Ｃ、および１４Ｄは、仮想オブジェクトをテーブルから壁に移動させる実施例を図示する。
【図１４Ｄ】図１４Ａ、１４Ｂ、１４Ｃ、および１４Ｄは、仮想オブジェクトをテーブルから壁に移動させる実施例を図示する。
【図１５Ａ】図１５Ａ、１５Ｂ、および１５Ｃは、側面図から、仮想オブジェクトを結び付け、配向する実施例を図示する。
【図１５Ｂ】図１５Ａ、１５Ｂ、および１５Ｃは、側面図から、仮想オブジェクトを結び付け、配向する実施例を図示する。
【図１５Ｃ】図１５Ａ、１５Ｂ、および１５Ｃは、側面図から、仮想オブジェクトを結び付け、配向する実施例を図示する。
【図１５Ｄ】図１５Ｄおよび１５Ｅは、仮想オブジェクトを壁から結び付け解除する実施例を図示する。
【図１５Ｅ】図１５Ｄおよび１５Ｅは、仮想オブジェクトを壁から結び付け解除する実施例を図示する。
【図１５Ｆ】図１５Ｆ、１５Ｇ、および１５Ｈは、側面図から、仮想オブジェクトを結び付け、配向する付加的実施例を図示す。
【図１５Ｇ】図１５Ｆ、１５Ｇ、および１５Ｈは、側面図から、仮想オブジェクトを結び付け、配向する付加的実施例を図示す。
【図１５Ｈ】図１５Ｆ、１５Ｇ、および１５Ｈは、側面図から、仮想オブジェクトを結び付け、配向する付加的実施例を図示す。
【図１６】図１６は、仮想オブジェクトを結び付け、配向するための例示的方法である。
【図１７】図１７は、仮想オブジェクトをユーザの環境内の別のオブジェクトから結び付け解除するための例示的方法である。
【０００９】
図面全体を通して、参照番号は、参照される要素間の対応を示すために再使用され得る。図面は、本明細書に説明される例示的実施形態を図示するために提供され、本開示の範囲を限定することを意図されない。
【発明を実施するための形態】
【００１０】
（概要）
ＡＲ／ＭＲ環境では、ユーザは、仮想オブジェクトの位置または配向を変化させることによって、仮想オブジェクトを再位置付けすることを所望し得る。一実施例として、ユーザは、３次元（３Ｄ）空間内の仮想オブジェクトを移動させ、仮想オブジェクトをユーザの環境内の物理的オブジェクトに結び付けることができる。仮想オブジェクトは、２次元（２Ｄ）または３Ｄオブジェクトであってもよい。例えば、仮想オブジェクトは、平面、２Ｄテレビディスプレイ、または３Ｄ仮想コーヒーポットであってもよい。ユーザは、ユーザ入力デバイス（例えば、トーテム等）を使用することによって、および／またはユーザの姿勢を変化させることによって、軌道に沿って仮想オブジェクトを移動させ、仮想オブジェクトを物理的オブジェクトに結び付けることができる。例えば、ユーザは、ユーザ入力デバイスを移動させ、仮想テレビ（ＴＶ）画面をテーブルから壁に移動させてもよい。同様に、ＡＲシステムは、ユーザが、仮想オブジェクトを選択し、頭部姿勢に伴って、移動させることを可能にしてもよい。ユーザが、その頭部を移動させるにつれて、仮想オブジェクトもまた、移動し、適宜、位置付けられ、配向される。
【００１１】
しかしながら、３Ｄ空間内の仮想オブジェクトの移動は、移動が、錯視を作成し得、これが、その現在の位置に関してユーザを混乱させ得るため、時として、ユーザにとって問題となり得る。例えば、ユーザは、オブジェクトが自分から離れるように移動しているのか、または自分に向かって移動しているのかどうかに関して混乱し得る。これらの錯視は、ユーザがＡＲシステムと相互作用するとき、認知的疲労を生じさせ得る。
【００１２】
さらに、ユーザが、仮想オブジェクトを行先オブジェクトの表面上または行先オブジェクトの内側に置くように試みる際、ユーザは、多くの場合、精緻化された移動を行い、仮想オブジェクトを３Ｄ空間内の複数の方向に配向し、位置付け、仮想オブジェクトと行先オブジェクトを整合させる必要がある。例えば、ユーザが、仮想ＴＶ画面をテーブルから壁に移動させるとき、ユーザは、ＴＶ画面の面法線がユーザに面する（例えば、ＴＶ画面によって表示されるコンテンツが、壁の代わりに、ユーザに面する）ように、仮想画面を配向する必要があり得る。ユーザはさらに、ユーザが、仮想ＴＶ画面を視認するとき、その頭部を旋回させる必要がないように、仮想画面を配向してもよい。加えて、仮想ＴＶ画面を壁上に現れさせるために（壁に内蔵されるように現れるのではなく）、ユーザは、微調整を仮想ＴＶ画面の位置に行う必要があり得る。これらの操作は、ユーザが精度を伴って実施するには時間がかかり、かつ困難であり得、物理的疲労をユーザに生じさせ得る。
【００１３】
これらの問題の一部または全部を解決するために、ＡＲシステムは、標的仮想オブジェクトの位置または配向を変化させることによって、標的仮想オブジェクトを自動的に再位置付けするように構成されることができる。一実施例として、ＡＲシステムは、仮想オブジェクトと標的オブジェクトとの間の距離が閾値距離未満であるとき、標的仮想オブジェクトを配向し、標的仮想オブジェクトを行先オブジェクトに結び付けることができる。ＡＲシステムはまた、物理的力（例えば、フックの法則等のばね力、重力、接着力、電磁力等）を被っているかのように、仮想オブジェクトを移動させることによって、標的仮想オブジェクトを自動的に再位置付けすることができる。例えば、仮想オブジェクトおよび標的オブジェクトが、閾値距離内にあるとき、ＡＲシステムは、仮想オブジェクトおよび標的オブジェクトが、引力（例えば、磁力または重力を模倣する）に起因して、ともに誘引されるかのように、仮想オブジェクトを標的オブジェクト上に自動的に「スナップ」させてもよい。故に、ＡＲシステムは、仮想力をオブジェクト間に適用してもよく、仮想力は、オブジェクト間の物理的力をシミュレートする、またはそのように作用する。多くの場合、仮想（またはシミュレートされた物理的）力は、引力であり得るが、これは、限定ではなく、他の場合では、仮想（またはシミュレートされた物理的）力は、反力であって、オブジェクトを相互から離れるように移動させる傾向にあってもよい。反発する仮想力は、他の近傍の仮想オブジェクトが、標的オブジェクトから反発され（少なくとも若干）、それによって、若干移動し、標的仮想オブジェクトの設置のための余裕を他の近傍のオブジェクト間に提供するように標的仮想オブジェクトを設置するときに、有利であり得る。
【００１４】
ＡＲシステムはさらに、仮想オブジェクトを配向し、仮想オブジェクトの面法線とユーザの視線方向を整合させてもよい。実施例として、仮想オブジェクトは、最初に、ユーザの環境内に浮遊していてもよい。ユーザは、仮想オブジェクトを、例えば、テーブルの表面または床等の水平表面に移動させる意図を示してもよい（例えば、身体ジェスチャまたはユーザ入力デバイスのアクティブ化を介して）。ＡＲシステムは、重力の影響をシミュレートし、いったん仮想オブジェクトが水平表面に十分に近接すると、付加的ユーザ労力を伴わずに、仮想オブジェクトを水平表面上に自動的に落下させてもよい。
【００１５】
いくつかの状況では、ユーザは、仮想オブジェクトを仮想オブジェクトが結び付けられているオブジェクトから結び付け解除することを所望し得る。ＡＲシステムは、ユーザが仮想オブジェクトが結び付け解除されるべきであることの十分なインジケーションを提供しない限り、ユーザが仮想オブジェクトをオブジェクトから直ちに結び付け解除不能であり得るように、仮想オブジェクトとオブジェクトとの間の引力をシミュレートする（例えば、磁石が冷蔵庫等の磁気表面に粘着し得る様子または書籍が水平テーブル上にある様子をシミュレートする）ことができる。例えば、ユーザは、仮想オブジェクトをその手または仮想インジケータで「握り」、オブジェクトを「グイッと引っ張って」もよい（例えば、ユーザの手の位置または仮想インジケータの位置の十分に高速な変化によって）。仮想オブジェクトを結び付け解除するためのインジケーションは、閾値条件を上回る移動によって示されてもよい（移動が、閾値距離、閾値速度、閾値加速、または加速の閾値変化率、それらの組み合わせ、または同等物を超えるとき等）。これは、特に、ユーザが仮想オブジェクトと相互作用する間、ユーザが偶発的に仮想オブジェクトを結び付け解除する尤度を低減させるため、有利であり得る。実施例として、ユーザが、壁に結び付けられた仮想画面を使用して、ゲームをプレーしている間、ユーザは、そのトーテムを移動させ、友人または敵を見出す、もしくはそれと相互作用する必要があり得る。本タイプのゲーム移動は、仮想オブジェクトを壁から結び付け解除するための移動のタイプと一致し得る。ユーザの移動が好適な閾値を十分に上回る場合のみ、仮想オブジェクトを壁から結び付け解除することによって、仮想画面は、ゲームのプレーの間、不注意に結び付け解除されないであろう。加えて、ユーザは、通常、長時間にわたって、その姿勢またはユーザ入力デバイスをじっとしたまま保つことができない。その結果、仮想オブジェクトは、ユーザが仮想オブジェクトを結び付け解除することを意図しないとき、ユーザのわずかな移動によって、偶発的に結び付け解除され得る。故に、ユーザの移動が好適な閾値を十分に上回る場合のみ、仮想オブジェクトを結び付け解除することによって、ユーザによるわずかな移動または痙攣は、仮想オブジェクトをその意図される場所または配向から不注意に結び付け解除しないであろう。
（ウェアラブルシステムの３Ｄディスプレイの実施例）
【００１６】
ウェアラブルシステム（本明細書では、拡張現実（ＡＲ）システムとも称される）は、２Ｄまたは３Ｄ仮想画像をユーザに提示するために構成されることができる。画像は、組み合わせまたは同等物における、静止画像、ビデオのフレーム、またはビデオであってもよい。ウェアラブルシステムは、ユーザ相互作用のために、単独で、または組み合わせて、ＶＲ、ＡＲ、またはＭＲ環境を提示し得る、ウェアラブルデバイスを含むことができる。ウェアラブルデバイスは、頭部搭載型デバイス（ＨＭＤ）であることができ、これは、ＡＲデバイス（ＡＲＤ）と同義的に使用される。さらに、本開示の目的のために、用語「ＡＲ」は、用語「ＭＲ」と同義的に使用される。
【００１７】
図１は、人物によって視認される、ある仮想現実オブジェクトおよびある物理的オブジェクトを伴う、複合現実シナリオの例証を描写する。図１では、ＭＲ場面１００が、描写され、ＭＲ技術のユーザには、人々、木々、背景における建物、およびコンクリートプラットフォーム１２０を特徴とする、実世界公園状設定１１０が見える。これらのアイテムに加え、ＭＲ技術のユーザはまた、実世界プラットフォーム１２０上に立っているロボット像１３０と、マルハナバチの擬人化のように見える、飛んでいる漫画のようなアバタキャラクタ１４０とが「見える」と知覚するが、これらの要素は、実世界には存在しない。
【００１８】
３Ｄディスプレイが、真の深度感覚、より具体的には、表面深度のシミュレートされた感覚を生成するために、ディスプレイの視野内の点毎に、その仮想深度に対応する遠近調節応答を生成することが望ましくあり得る。ディスプレイ点に対する遠近調節応答が、収束および立体視の両眼深度キューによって決定されるようなその点の仮想深度に対応しない場合、ヒトの眼は、遠近調節衝突を体験し、不安定な結像、有害な眼精疲労、頭痛、および遠近調節情報の不在下では、表面深度のほぼ完全な欠如をもたらし得る。
【００１９】
ＶＲ、ＡＲ、およびＭＲ体験は、複数の深度平面に対応する画像が視認者に提供されるディスプレイを有する、ディスプレイシステムによって提供されることができる。画像は、深度平面毎に異なってもよく（例えば、場面またはオブジェクトの若干異なる提示を提供する）、視認者の眼によって別個に集束され、それによって、異なる深度平面上に位置する場面に関する異なる画像特徴に合焦させるために要求される眼の遠近調節に基づいて、または合焦からずれている異なる深度平面上の異なる画像特徴を観察することに基づいて、ユーザに深度キューを提供することに役立ち得る。本明細書のいずれかに議論されるように、そのような深度キューは、信用できる深度の知覚を提供する。
【００２０】
図２は、ウェアラブルシステム２００の実施例を図示する。ウェアラブルシステム２００は、ディスプレイ２２０と、ディスプレイ２２０の機能をサポートするための種々の機械的ならびに電子的モジュールおよびシステムとを含む。ディスプレイ２２０は、ユーザ、装着者、または視認者２１０によって装着可能である、フレーム２３０に結合されてもよい。ディスプレイ２２０は、ユーザ２１０の眼の正面に位置付けられることができる。ディスプレイ２２０は、ＡＲ／ＶＲ／ＭＲコンテンツをユーザに提示するができる。ディスプレイ２２０は、ユーザの頭部上に装着される、頭部搭載型ディスプレイを備えることができる。いくつかの実施形態では、スピーカ２４０が、フレーム２３０に結合され、ユーザの外耳道に隣接して位置付けられる（いくつかの実施形態では、示されない別のスピーカが、ユーザの他方の外耳道に隣接して位置付けられ、ステレオ／成形可能音響制御を提供する）。ディスプレイ２２０は、音声認識を実施すべき環境からオーディオストリームを検出するために、オーディオセンサ（例えば、マイクロホン）を含むことができる。
【００２１】
ウェアラブルシステム２００は、ユーザの周囲の環境内の世界を観察する、外向きに面した結像システム４６４（図４に示される）を含むことができる。ウェアラブルシステム２００はまた、ユーザの眼移動を追跡することができる、内向きに面した結像システム４６２（図４に示される）を含むことができる。内向きに面した結像システムは、一方の眼の移動または両方の眼の移動のいずれかを追跡することができる。内向きに面した結像システム４６２は、フレーム２３０に取り付けられてもよく、内向きに面した結像システムによって入手された画像情報を処理し、例えば、ユーザ２１０の眼、眼の移動、または眼姿勢の瞳孔直径もしくは配向を決定し得る、処理モジュール２６０または２７０と電気通信してもよい。
【００２２】
実施例として、ウェアラブルシステム２００は、外向きに面した結像システム４６４または内向きに面した結像システム４６２を使用して、ユーザの姿勢の画像を入手することができる。画像は、静止画像、ビデオのフレームもしくはビデオ、その組み合わせ、または同等物であってもよい。
【００２３】
ディスプレイ２２０は、有線導線または無線接続等によって、フレーム２３０に固定して取り付けられる、ユーザによって装着されるヘルメットもしくは帽子に固定して取り付けられる、ヘッドホンに内蔵される、または別様にユーザ２１０に除去可能に取り付けられる（例えば、リュック式構成において、ベルト結合式構成において）等、種々の構成において搭載され得る、ローカルデータ処理モジュール２６０に動作可能に結合される（２５０）。
【００２４】
ローカル処理およびデータモジュール２６０は、ハードウェアプロセッサならびに不揮発性メモリ（例えば、フラッシュメモリ）等のデジタルメモリを備えてもよく、その両方とも、データの処理、キャッシュ、および記憶を補助するために利用され得る。データは、画像捕捉デバイス（例えば、内向きに面した結像システムおよび／または外向きに面した結像システム内のカメラ）、オーディオセンサ（例えば、マイクロホン）、慣性測定ユニット（ＩＭＵ）、加速度計、コンパス、全地球測位システム（ＧＰＳ）ユニット、無線デバイス、もしくはジャイロスコープ等の（例えば、フレーム２３０に動作可能に結合される、または別様にユーザ２１０に取り付けられ得る）センサから捕捉されるデータ（ａ）、または場合によっては処理もしくは読出後にディスプレイ２２０への通過のために、遠隔処理モジュール２７０もしくは遠隔データリポジトリ２８０を使用して入手もしくは処理されるデータ（ｂ）を含んでもよい。ローカル処理およびデータモジュール２６０は、これらの遠隔モジュールがローカル処理およびデータモジュール２６０へのリソースとして利用可能であるように、有線または無線通信リンク等を介して、通信リンク２６２または２６４を遠隔処理モジュール２７０または遠隔データリポジトリ２８０に動作可能に結合されてもよい。加えて、遠隔処理モジュール２８０および遠隔データリポジトリ２８０は、相互に動作可能に結合されてもよい。
【００２５】
いくつかの実施形態では、遠隔処理モジュール２７０は、データまたは画像情報を分析および処理するように構成される、１つ以上のプロセッサを備えてもよい。いくつかの実施形態では、遠隔データリポジトリ２８０は、デジタルデータ記憶設備を備え得、これは、インターネットまたは「クラウド」リソース構成における他のネットワーキング構成を通して利用可能であってもよい。いくつかの実施形態では、全てのデータが、記憶され、全ての算出が、ローカル処理およびデータモジュールにおいて実施され、遠隔モジュールからの完全に自律的な使用を可能にする。
【００２６】
ヒト視覚系は、複雑であって、深度の現実的知覚を提供することは、困難である。理論によって限定されるわけではないが、オブジェクトの視認者は、輻輳・開散運動移動（ｖｅｒｇｅｎｃｅ）と遠近調節（ａｃｃｏｍｍｏｄａｔｉｏｎ）の組み合わせに起因して、オブジェクトを３次元として知覚し得ると考えられる。相互に対する２つの眼の輻輳・開散運動（すなわち、瞳孔が、相互に向かって、またはそこから離れるように移動し、眼の視線を収束させ、オブジェクトを固視するような瞳孔の回転）は、眼の水晶体の合焦（または「遠近調節」）と緊密に関連付けられる。通常条件下、焦点を１つのオブジェクトから異なる距離における別のオブジェクトに変化させるための眼のレンズの焦点の変化または眼の遠近調節は、「遠近調節−輻輳・開散運動反射」として知られる関係下、輻輳・開散運動の整合変化を自動的に同一距離に生じさせるであろう。同様に、輻輳・開散運動の変化は、通常条件下、遠近調節の整合変化を誘起するであろう。遠近調節と輻輳・開散運動との間のより良好な整合を提供するディスプレイシステムは、３次元画像のより現実的かつ快適なシミュレーションを形成し得る。
【００２７】
図３は、複数の深度平面を使用して３次元画像をシミュレートするためのアプローチの側面を図示する。図３を参照すると、ｚ−軸上の眼３０２および３０４からの種々の距離におけるオブジェクトは、それらのオブジェクトが合焦するように、眼３０２および３０４によって遠近調節される。眼３０２および３０４は、特定の遠近調節された状態をとり、オブジェクトをｚ−軸に沿った異なる距離に合焦させる。その結果、特定の遠近調節された状態は、特定の深度平面におけるオブジェクトまたはオブジェクトの一部が、眼がその深度平面に対して遠近調節された状態にあるとき、合焦するように、関連付けられた焦点距離を有する、深度平面３０６のうちの特定の１つと関連付けられると言え得る。いくつかの実施形態では、３次元画像は、眼３０２および３０４毎に、画像の異なる提示を提供することによって、また、深度平面のそれぞれに対応する画像の異なる提示を提供することによって、シミュレートされてもよい。例証を明確にするために、別個であるように示されるが、眼３０２および３０４の視野は、例えば、ｚ−軸に沿った距離が増加するにつれて、重複し得ることを理解されたい。加えて、例証を容易にするために、平坦であるように示されるが、深度平面の等高線は、深度平面内の全ての特徴が特定の遠近調節された状態における眼と合焦するように、物理的空間内で湾曲され得ることを理解されたい。理論によって限定されるわけではないが、ヒトの眼は、典型的には、有限数の深度平面を解釈し、深度知覚を提供することができると考えられる。その結果、知覚された深度の高度に真実味のあるシミュレーションが、眼にこれらの限定数の深度平面のそれぞれに対応する画像の異なる提示を提供することによって達成され得る。
（導波管スタックアセンブリ）
【００２８】
図４は、画像情報をユーザに出力するための導波管スタックの実施例を図示する。ウェアラブルシステム４００は、複数の導波管４３２ｂ、４３４ｂ、４３６ｂ、４３８ｂ、４４００ｂを使用して、３次元知覚を眼／脳に提供するために利用され得る、導波管のスタックまたはスタックされた導波管アセンブリ４８０を含む。いくつかの実施形態では、ウェアラブルシステム４００は、図２のウェアラブルシステム２００に対応してもよく、図４は、ウェアラブルシステム２００のいくつかの部分をより詳細に概略的に示す。例えば、いくつかの実施形態では、導波管アセンブリ４８０は、図２のディスプレイ２２０の中に統合されてもよい。
【００２９】
図４を継続して参照すると、導波管アセンブリ４８０はまた、複数の特徴４５８、４５６、４５４、４５２を導波管間に含んでもよい。いくつかの実施形態では、特徴４５８、４５６、４５４、４５２は、レンズであってもよい。他の実施形態では、特徴４５８、４５６、４５４、４５２は、レンズではなくてもよい。むしろ、それらは、単に、スペーサであってもよい（例えば、空気間隙を形成するためのクラッディング層または構造）。
【００３０】
導波管４３２ｂ、４３４ｂ、４３６ｂ、４３８ｂ、４４０ｂまたは複数のレンズ４５８、４５６、４５４、４５２は、種々のレベルの波面曲率または光線発散を用いて、画像情報を眼に送信するように構成されてもよい。各導波管レベルは、特定の深度平面と関連付けられてもよく、その深度平面に対応する画像情報を出力するように構成されてもよい。画像投入デバイス４２０、４２２、４２４、４２６、４２８は、それぞれ、眼４１０に向かって出力するために、各個別の導波管を横断して入射光を分散させるように構成され得る、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの中に画像情報を投入するために利用されてもよい。光は、画像投入デバイス４２０、４２２、４２４、４２６、４２８の出力表面から出射し、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの対応する入力縁の中に投入される。いくつかの実施形態では、光の単一ビーム（例えば、コリメートされたビーム）が、各導波管の中に投入され、特定の導波管と関連付けられた深度平面に対応する特定の角度（および発散量）において眼４１０に向かって指向される、クローン化されたコリメートビームの場全体を出力してもよい。
【００３１】
いくつかの実施形態では、画像投入デバイス４２０、４２２、４２４、４２６、４２８は、それぞれ、それぞれの対応する導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの中への投入のための画像情報を生成する、離散ディスプレイである。いくつかの他の実施形態では、画像投入デバイス４２０、４２２、４２４、４２６、４２８は、例えば、画像情報を１つ以上の光学導管（光ファイバケーブル等）を介して、画像投入デバイス４２０、４２２、４２４、４２６、４２８のそれぞれに送り得る、単一の多重化されたディスプレイの出力端である。
【００３２】
コントローラ４６０が、スタックされた導波管アセンブリ４８０および画像投入デバイス４２０、４２２、４２４、４２６、４２８の動作を制御する。コントローラ４６０は、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂへの画像情報のタイミングおよび提供を調整する、プログラミング（例えば、非一過性コンピュータ可読媒体内の命令）を含む。いくつかの実施形態では、コントローラ４６０は、単一一体型デバイスまたは有線もしくは無線通信チャネルによって接続される分散型システムであってもよい。コントローラ４６０は、いくつかの実施形態では、処理モジュール２６０または２７０（図２に図示される）の一部であってもよい。
【００３３】
導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂは、全内部反射（ＴＩＲ）によって各個別の導波管内で光を伝搬するように構成されてもよい。導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂはそれぞれ、主要な上部および底部表面ならびにそれらの主要上部表面と底部表面との間に延在する縁を伴う、平面である、または別の形状（例えば、湾曲）であってもよい。図示される構成では、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂはそれぞれ、光を再指向させ、各個別の導波管内で伝搬させ、導波管から、画像情報を眼４１０に出力することによって、光を導波管から抽出するように構成される、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａを含んでもよい。抽出された光はまた、外部結合光と称され得、光抽出光学要素はまた、外部結合光学要素と称され得る。抽出された光のビームは、導波管によって、導波管内を伝搬する光が光再指向要素に衝打する場所に出力される。光抽出光学要素（４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａ）は、例えば、反射または回折光学特徴であってもよい。説明の容易性および図面の明確性のために、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの底部主要表面に配置されて図示されるが、いくつかの実施形態では、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、上部もしくは底部主要表面に配置されてもよい、または導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの容積内に直接配置されてもよい。いくつかの実施形態では、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、透明基板に取り付けられ、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂを形成する、材料の層内に形成されてもよい。いくつかの他の実施形態では、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂは、材料のモノリシック部品であってもよく、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、材料のその部品の表面上および／またはその内部に形成されてもよい。
【００３４】
図４を継続して参照すると、本明細書に議論されるように、各導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂは、光を出力し、特定の深度平面に対応する画像を形成するように構成される。例えば、眼の最近傍の導波管４３２ｂは、そのような導波管４３２ｂの中に投入されるにつれて、コリメートされた光を眼４１０に送達するように構成されてもよい。コリメートされた光は、光学無限遠焦点面を表し得る。次の上方の導波管４３４ｂは、眼４１０に到達し得る前に、第１のレンズ４５２（例えば、負のレンズ）を通して通過する、コリメートされた光を送出するように構成されてもよい。第１のレンズ４５２は、眼／脳が、その次の上方の導波管４３４ｂから生じる光を光学無限遠から眼４１０に向かって内向きにより近い第１の焦点面から生じるように解釈するように、若干の凸面波面曲率を生成するように構成されてもよい。同様に、第３の上方の導波管４３６ｂは、眼４１０に到達する前に、その出力光を第１のレンズ４５２および第２のレンズ４５４の両方を通して通過させる。第１および第２のレンズ４５２ならびに４５４の組み合わせられた屈折力は、眼／脳が、第３の導波管４３６ｂから生じる光が次の上方の導波管４３４ｂからの光であった光学無限遠から人物に向かって内向きにさらにより近い第２の焦点面から生じるように解釈するように、別の漸増量の波面曲率を生成するように構成されてもよい。
【００３５】
他の導波管層（例えば、導波管４３８ｂ、４４０ｂ）およびレンズ（例えば、レンズ４５６、４５８）も同様に構成され、スタック内の最高導波管４４０ｂを用いて、人物に最も近い焦点面を表す集約焦点力のために、その出力をそれと眼との間のレンズの全てを通して送出する。スタックされた導波管アセンブリ４８０の他側の世界４７０から生じる光を視認／解釈するとき、レンズ４５８、４５６、４５４、４５２のスタックを補償するために、補償レンズ層４３０が、スタックの上部に配置され、下方のレンズスタック４５８、４５６、４５４、４５２の集約力を補償してもよい。そのような構成は、利用可能な導波管／レンズ対と同じ数の知覚される焦点面を提供する。導波管の光抽出光学要素およびレンズの集束側面は両方とも、静的であってもよい（例えば、動的または電気活性ではない）。いくつかの代替実施形態では、一方または両方とも、電気活性特徴を使用して動的であってもよい。
【００３６】
図４を継続して参照すると、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、光をその個別の導波管から再指向し、かつ導波管と関連付けられた特定の深度平面のための適切な発散またはコリメーション量を用いて本光を出力することの両方のために構成されてもよい。その結果、異なる関連付けられた深度平面を有する導波管は、関連付けられた深度平面に応じて、異なる量の発散を伴う光を出力する、異なる構成の光抽出光学要素を有してもよい。いくつかの実施形態では、本明細書に議論されるように、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、具体的角度において光を出力するように構成され得る、立体または表面特徴であってもよい。例えば、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、体積ホログラム、表面ホログラム、および／または回折格子であってもよい。回折格子等の光抽出光学要素は、２０１５年６月２５日に公開された米国特許公開第２０１５／０１７８９３９号（参照することによってその全体として本明細書に組み込まれる）に説明される。
【００３７】
いくつかの実施形態では、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、回折パターンを形成する回折特徴、すなわち、「回折光学要素」（本明細書では、「ＤＯＥ」とも称される）である。好ましくは、ＤＯＥは、ビームの光の一部のみが、ＤＯＥの各交差点を用いて、眼４１０に向かって偏向される一方、残りが、全内部反射を介して、導波管を通して移動し続けるように、比較的に低回折効率を有する。画像情報を搬送する光は、したがって、複数の場所において導波管から出射する、いくつかの関連出射ビームに分割され、その結果、導波管内でバウンスする本特定のコリメートされたビームに関して、眼３０４に向かって非常に均一パターンの出射放出となることができる。
【００３８】
いくつかの実施形態では、１つ以上のＤＯＥは、能動的に回折する「オン」状態と有意に回折しない「オフ」状態との間で切替可能であってもよい。例えば、切替可能なＤＯＥは、ポリマー分散液晶の層を備えてもよく、その中で微小液滴は、ホスト媒体中に回折パターンを備え、微小液滴の屈折率は、ホスト材料の屈折率に実質的に整合するように切り替えられることができる（その場合、パターンは、入射光を著しく回折させない）、または微小液滴は、ホスト媒体のものに整合しない屈折率に切り替えられることができる（その場合、パターンは、入射光を能動的に回折させる）。
【００３９】
いくつかの実施形態では、深度平面または被写界深度の数および分布は、視認者の眼の瞳孔サイズまたは配向に基づいて、動的に変動されてもよい。被写界深度は、視認者の瞳孔サイズと反比例して変化してもよい。その結果、視認者の眼の瞳孔のサイズが減少するにつれて、被写界深度は、その平面の場所が眼の焦点深度を越えるため判別不能である１つの平面が、判別可能となり、瞳孔サイズの低減および被写界深度の相当する増加に伴って、より合焦して現れ得るように増加する。同様に、異なる画像を視認者に提示するために使用される、離間される深度平面の数は、減少された瞳孔サイズに伴って減少されてもよい。例えば、視認者は、一方の深度平面から他方の深度平面への眼の遠近調節を調節せずに、第１の深度平面および第２の深度平面の両方の詳細を１つの瞳孔サイズにおいて明確に知覚することが可能ではない場合がある。しかしながら、これらの２つの深度平面は、同時に、遠近調節を変化させずに、別の瞳孔サイズにおいてユーザに合焦するには十分であり得る。
【００４０】
いくつかの実施形態では、ディスプレイシステムは、瞳孔サイズおよび／または配向の決定に基づいて、もしくは特定の瞳孔サイズ／または配向を示す電気信号の受信に応じて、画像情報を受信する導波管の数を変動させてもよい。例えば、ユーザの眼が、２つの導波管と関連付けられた２つの深度平面間を区別不能である場合、コントローラ４６０（ローカル処理およびデータモジュール２６０の実施形態であり得る）は、これらの導波管のうちの１つへの画像情報の提供を停止するように構成またはプログラムされることができる。有利には、これは、システムへの処理負担を低減させ、それによって、システムの応答性を増加させ得る。導波管のためのＤＯＥがオンおよびオフ状態間で切替可能である実施形態では、ＤＯＥは、導波管が画像情報を受信するとき、オフ状態に切り替えられてもよい。
【００４１】
いくつかの実施形態では、出射ビームに視認者の眼の直径未満の直径を有するという条件を満たさせることが望ましくあり得る。しかしながら、本条件を満たすことは、視認者の瞳孔のサイズの変動性に照らして、困難であり得る。いくつかの実施形態では、本条件は、視認者の瞳孔のサイズの決定に応答して出射ビームのサイズを変動させることによって、広範囲の瞳孔サイズにわたって満たされる。例えば、瞳孔サイズが減少するにつれて、出射ビームのサイズもまた、減少し得る。いくつかの実施形態では、出射ビームサイズは、可変開口を使用して変動されてもよい。
【００４２】
ウェアラブルシステム４００は、世界４７０の一部を結像する、外向きに面した結像システム４６４（例えば、デジタルカメラ）を含むことができる。世界４７０の本部分は、世界カメラの視野（ＦＯＶ）と称され得、結像システム４６４は、時として、ＦＯＶカメラとも称される。視認者による視認または結像のために利用可能な領域全体は、動眼視野（ＦＯＲ）と称され得る。ＦＯＲは、装着者が、その身体、頭部、または眼を移動させ、空間内の実質的に任意の方向を知覚するため、ウェアラブルシステム４００を囲繞する４πステラジアンの立体角を含んでもよい。他のコンテキストでは、装着者の移動は、より抑制されてもよく、それに応じて、装着者のＦＯＲは、より小さい立体角に接し得る。外向きに面した結像システム４６４から得られた画像は、ユーザによって行われるジェスチャ（例えば、手または指のジェスチャ）を追跡し、ユーザの正面における世界４７０内のオブジェクトを検出する等のために、使用されることができる。
【００４３】
ウェアラブルシステム４００はまた、眼移動および顔移動等のユーザの移動を観察する、内向きに面した結像システム４６６（例えば、デジタルカメラ）を含むことができる。内向きに面した結像システム４６６は、眼４１０の画像を捕捉し、眼３０４の瞳孔のサイズまたは配向を決定するために使用されてもよい。内向きに面した結像システム４６６は、ユーザが見ている方向（例えば、眼姿勢）を決定する際に使用するため、またはユーザのバイオメトリック識別のため（例えば、虹彩識別を介して）、画像を得るために使用されることができる。いくつかの実施形態では、少なくとも１つのカメラが、眼毎に、独立して、各眼の瞳孔サイズまたは眼姿勢を別個に決定し、それによって、各眼への画像情報の提示がその眼に対して動的に調整されることを可能にするために利用されてもよい。いくつかの他の実施形態では、単一眼４１０のみの瞳孔直径または配向（例えば、対の眼あたり単一カメラのみを使用して）が、決定され、ユーザの両眼に関して類似すると仮定される。内向きに面した結像システム４６６によって得られる画像は、ユーザに提示されるべきオーディオまたは視覚的コンテンツを決定するためにウェアラブルシステム４００によって使用され得る、ユーザの眼姿勢または気分を決定するために分析されてもよい。ウェアラブルシステム４００はまた、ＩＭＵ、加速度計、ジャイロスコープ等のセンサを使用して、頭部姿勢（例えば、頭部位置または頭部配向）を決定してもよい。
【００４４】
ウェアラブルシステム４００は、ユーザが、コマンドをコントローラ４６０に入力し、ウェアラブルシステム４００と相互作用し得る、ユーザ入力デバイス４６６を含むことができる。例えば、ユーザ入力デバイス４６６は、トラックパッド、タッチスクリーン、ジョイスティック、多自由度（ＤＯＦ）コントローラ、容量感知デバイス、ゲームコントローラ、キーボード、マウス、指向性パッド（Ｄパッド）、ワンド、触知デバイス、トーテム（例えば、仮想ユーザ入力デバイスとして機能する）等を含むことができる。マルチＤＯＦコントローラは、コントローラの一部または全部の可能性として考えられる平行移動（例えば、左／右、前方／後方、もしくは上／下）または回転（例えば、ヨー、ピッチ、もしくはロール）におけるユーザ入力を感知することができる。平行移動をサポートする、マルチＤＯＦコントローラは、３ＤＯＦと称され得る一方、平行移動および回転をサポートする、マルチＤＯＦコントローラは、６ＤＯＦと称され得る。ある場合には、ユーザは、指（例えば、親指）を使用して、タッチセンサ式入力デバイスを押下またはその上でスワイプし、入力をウェアラブルシステム４００に提供してもよい（例えば、ユーザ入力をウェアラブルシステム４００によって提供されるユーザインターフェースに提供するために）。ユーザ入力デバイス４６６は、ウェアラブルシステム４００の使用の間、ユーザの手によって保持されてもよい。ユーザ入力デバイス４６６は、ウェアラブルシステム４００と有線または無線通信することができる。
【００４５】
図５は、導波管によって出力された出射ビームの実施例を示す。１つの導波管が、図示されるが、導波管アセンブリ４８０内の他の導波管も、同様に機能してもよく、導波管アセンブリ４８０は、複数の導波管を含むことを理解されたい。光５２０が、導波管４３２ｂの入力縁４３２ｃにおいて導波管４３２ｂの中に投入され、ＴＩＲによって導波管４３２ｂ内を伝搬する。光５２０がＤＯＥ４３２ａに衝突する点において、光の一部が、出射ビーム５１０として導波管から出射する。出射ビーム５１０は、略平行として図示されるが、それらはまた、導波管４３２ｂと関連付けられた深度平面に応じて、ある角度で眼４１０に伝搬するように再指向されてもよい（例えば、発散出射ビーム形成）。略平行出射ビームは、光を外部結合し、眼４１０から遠距離（例えば、光学無限遠）における深度平面に設定されるように現れる画像を形成する光抽出光学要素を伴う、導波管を示し得ることを理解されたい。他の導波管または他の光抽出光学要素のセットは、より発散する、出射ビームパターンを出力してもよく、これは、眼４１０がより近い距離に遠近調節し、網膜に合焦させることを要求し、光学無限遠より眼４１０に近い距離からの光として脳によって解釈されるであろう。
【００４６】
図６は、導波管装置と、光を導波管装置へまたはそこから光学的に結合するための光学結合器サブシステムと、多焦点立体ディスプレイ、画像、またはライトフィールドの生成において使用される制御サブシステムとを含む、光学システムを示す、概略図である。光学システムは、導波管装置と、光を導波管装置にまたはそこから光学的に結合するための光学結合器サブシステムと、制御サブシステムとを含むことができる。光学システムは、多焦点立体、画像、またはライトフィールドを生成するために使用されることができる。光学システムは、１つ以上の一次平面導波管６３２ａ（１つのみのが図６に示される）と、一次導波管６３２ａの少なくともいくつかのそれぞれと関連付けられた１つ以上のＤＯＥ６３２ｂとを含むことができる。平面導波管６３２ｂは、図４を参照して議論される導波管４３２ｂ、４３４ｂ、４３６ｂ、４３８ｂ、４４０ｂに類似することができる。光学システムは、分散導波管装置を採用し、光を第１の軸（図６の図では、垂直またはＹ−軸）に沿って中継し、第１の軸（例えば、Ｙ−軸）に沿って光の有効射出瞳を拡張させてもよい。分散導波管装置は、例えば、分散平面導波管６２２ｂと、分散平面導波管６２２ｂと関連付けられた少なくとも１つのＤＯＥ６２２ａ（二重破線によって図示される）とを含んでもよい。分散平面導波管６２２ｂは、少なくともいくつかの点において、それと異なる配向を有する一次平面導波管６３２ｂと類似または同じであってもよい。同様に、少なくとも１つのＤＯＥ６２２ａは、少なくともいくつかの点において、ＤＯＥ６３２ａと類似または同じであってもよい。例えば、分散平面導波管６２２ｂまたはＤＯＥ６２２ａは、それぞれ、一次平面導波管６３２ｂまたはＤＯＥ６３２ａと同一材料から成ってもよい。図６に示される光学ディスプレイシステム６００の実施形態は、図２に示されるウェアラブルシステム２００の中に統合されることができる。
【００４７】
中継され、射出瞳が拡張された光は、分散導波管装置から１つ以上の一次平面導波管６３２ｂの中に光学的に結合され得る。一次平面導波管６３２ｂは、好ましくは、第１の軸に直交する、第２の軸（例えば、図６の図では、水平またはＸ−軸）に沿って、光を中継することができる。着目すべきこととして、第２の軸は、第１の軸に対して非直交軸であることができる。一次平面導波管６３２ｂは、その第２の軸（例えば、Ｘ−軸）に沿って、光の有効射出瞳を拡張させる。例えば、分散平面導波管６２２ｂは、光を垂直またはＹ−軸に沿って中継および拡張させ、光を水平またはＸ−軸に沿って中継および拡張させ得る、一次平面導波管６３２ｂにその光を通過させることができる。
【００４８】
光学システムは、単一モード光ファイバ６４０の近位端の中に光学的に結合され得る、１つ以上の着色光源（例えば、赤色、緑色、および青色レーザ光）６１０を含んでもよい。光ファイバ６４０の遠位端は、圧電材料の中空管６４２を通して螺合または受容されてもよい。遠位端は、固定されない可撓性カンチレバー６４４として、管６４２から突出する。圧電管６４２は、４つの象限電極（図示せず）と関連付けられることができる。電極は、例えば、管６４２の外側、外側表面もしくは外側周縁、または直径に鍍着されてもよい。コア電極（図示せず）もまた、管６４２のコア、中心、内側周縁、または内径に位置してもよい。
【００４９】
例えば、ワイヤ６６０を介して電気的に結合される、駆動電子機器６５０は、対向する対の電極を駆動し、圧電管６４２を独立して２つの軸において屈曲させる。光ファイバ６４４の突出する遠位先端は、機械的共鳴モードを有する。共鳴の周波数は、光ファイバ６４４の直径、長さ、および材料性質に依存し得る。圧電管６４２をファイバカンチレバー６４４の第１の機械的共鳴モードの近傍で振動させることによって、ファイバカンチレバー６４４は、振動させられ、大偏向を通して掃引し得る。
【００５０】
２つの軸において共振振動を刺激することによって、ファイバカンチレバー６４４の先端は、２次元（２−Ｄ）走査を充填する面積内において２軸方向に走査される。光源６１０の強度をファイバカンチレバー６４４の走査と同期して変調させることによって、ファイバカンチレバー６４４から発せられる光は、画像を形成することができる。そのような設定の説明は、米国特許公開第２０１４／０００３７６２号（参照することによってその全体として本明細書に組み込まれる）に提供されている。
【００５１】
光学結合器サブシステムのコンポーネントは、走査ファイバカンチレバー６４４から発せられる光をコリメートすることができる。コリメートされた光は、鏡面表面６４８によって、少なくとも１つの回折光学要素（ＤＯＥ）６２２ａを含有する、狭分散平面導波管６２２ｂの中に反射されることができる。コリメートされた光は、ＴＩＲによって分散平面導波管６２２ｂに沿って（図６の図に対して）垂直に伝搬し、そうすることによって、ＤＯＥ６２２ａと繰り返し交差することができる。ＤＯＥ６２２ａは、好ましくは、低回折効率を有する。これは、光の一部（例えば、１０％）をＤＯＥ６２２ａとの交差点の各点においてより大きい一次平面導波管６３２ｂの縁に向かって回折させ、光の一部をＴＩＲを介して分散平面導波管６２２ｂの長さを辿ってそのオリジナル軌道上で継続させることができる。
【００５２】
ＤＯＥ６２２ａとの交差点の各点において、付加的光が、一次導波管６３２ｂの入口に向かって回折されることができる。入射光を複数の外部結合セットに分割することによって、光の射出瞳は、分散平面導波管６２２ｂ内のＤＯＥ６２２ａによって垂直に拡張されることができる。分散平面導波管６２２ｂから外部結合された本垂直に拡張された光は、一次平面導波管６３２ｂの縁に進入することができる。
【００５３】
一次導波管６３２ｂに進入する光は、ＴＩＲを介して、一次導波管６３２ｂに沿って（図６の図に対して）水平に伝搬することができる。光は、複数の点においてＤＯＥ６３２ａと交差するにつれて、ＴＩＲを介して、一次導波管６３２ｂの長さの少なくとも一部に沿って水平に伝搬する。ＤＯＥ６３２ａは、有利には、線形回折パターンおよび半径方向対称回折パターンの総和である、位相プロファイルを有し、光の偏向および集束の両方を生成するように設計または構成され得る。ＤＯＥ６３２ａは、有利には、ビームの光の一部のみが、ＤＯＥ６３２ａの各交差点において視認者の眼に向かって偏向される一方、光の残りが、ＴＩＲを介して、一次導波管６３２ｂを通して伝搬し続けるように、低回折効率（例えば、１０％）を有し得る。
【００５４】
伝搬する光とＤＯＥ６３２ａとの間の交差点の各点において、光の一部は、一次導波管６３２ｂの隣接面に向かって回折され、光がＴＩＲから逃散し、一次導波管６３２ｂの面から発せられることを可能にする。いくつかの実施形態では、ＤＯＥ６３２ａの半径方向対称回折パターンは、加えて、ある焦点レベルを回折された光に付与し、個々のビームの光波面を成形（例えば、曲率を付与する）し、かつビームを設計される焦点レベルに合致する角度に操向することの両方を行う。
【００５５】
故に、これらの異なる経路は、異なる角度におけるＤＯＥ６３２ａの多重度、焦点レベル、または射出瞳において異なる充填パターンをもたらすことによって、光を一次平面導波管６３２ｂの外部で結合させることができる。射出瞳における異なる充填パターンは、有利には、複数の深度平面を伴うライトフィールドディスプレイを生成するために使用されることができる。導波管アセンブリ内の各層またはスタック内の層のセット（例えば、３層）が、個別の色（例えば、赤色、青色、緑色）を生成するために採用されてもよい。したがって、例えば、第１の３つの隣接する層のセットが、それぞれ、赤色、青色、および緑色光を第１の焦点深度において生成するために採用されてもよい。第２の３つの隣接する層のセットが、それぞれ、赤色、青色、および緑色光を第２の焦点深度において生成するために採用されてもよい。複数のセットが、種々の焦点深度を伴うフル３Ｄまたは４Ｄカラー画像ライトフィールドを生成するために採用されてもよい。
（ウェアラブルシステムの他のコンポーネント）
【００５６】
多くの実装では、ウェアラブルシステムは、上記に説明されるウェアラブルシステムのコンポーネントに加えて、またはその代替として、他のコンポーネントを含んでもよい。ウェアラブルシステムは、例えば、１つ以上の触知デバイスまたはコンポーネントを含んでもよい。触知デバイスまたはコンポーネントは、触覚をユーザに提供するように動作可能であってもよい。例えば、触知デバイスまたはコンポーネントは、仮想コンテンツ（例えば、仮想オブジェクト、仮想ツール、他の仮想構造）に触れると、圧力および／またはテクスチャの感覚を提供してもよい。触覚は、仮想オブジェクトが表す物理的オブジェクトの感覚を再現してもよい、または仮想コンテンツが表す想像上のオブジェクトもしくはキャラクタ（例えば、ドラゴン）の感覚を再現してもよい。いくつかの実装では、触知デバイスまたはコンポーネントは、ユーザによって装着されてもよい（例えば、ユーザウェアラブルグローブ）。いくつかの実装では、触知デバイスまたはコンポーネントは、ユーザによって保持されてもよい。
【００５７】
ウェアラブルシステムは、例えば、ユーザによって操作可能であって、ウェアラブルシステムへの入力またはそれとの相互作用を可能にする、１つ以上の物理的オブジェクトを含んでもよい。これらの物理的オブジェクトは、本明細書では、トーテムと称され得る。いくつかのトーテムは、例えば、金属またはプラスチック片、壁、テーブルの表面等、無生物オブジェクトの形態をとってもよい。ある実装では、トーテムは、実際には、任意の物理的入力構造（例えば、キー、トリガ、ジョイスティック、トラックボール、ロッカスイッチ）を有していなくてもよい。代わりに、トーテムは、単に、物理的表面を提供してもよく、ウェアラブルシステムは、ユーザにトーテムの１つ以上の表面上にあるように見えるように、ユーザインターフェースをレンダリングしてもよい。例えば、ウェアラブルシステムは、トーテムの１つ以上の表面上に常駐するように見えるように、コンピュータキーボードおよびトラックパッドの画像をレンダリングしてもよい。例えば、ウェアラブルシステムは、トーテムとしての役割を果たす、アルミニウムの薄い長方形プレートの表面上に見えるように、仮想コンピュータキーボードおよび仮想トラックパッドをレンダリングしてもよい。長方形プレート自体は、任意の物理的キーまたはトラックパッドもしくはセンサを有していない。しかしながら、ウェアラブルシステムは、仮想キーボードまたは仮想トラックパッドを介して行われた選択または入力として、長方形プレートを用いたユーザ操作または相互作用もしくはタッチを検出し得る。ユーザ入力デバイス４６６（図４に示される）は、トラックパッド、タッチパッド、トリガ、ジョイスティック、トラックボール、ロッカもしくは仮想スイッチ、マウス、キーボード、多自由度コントローラ、または別の物理的入力デバイスを含み得る、トーテムの実施形態であってもよい。ユーザは、単独で、または姿勢と組み合わせて、トーテムを使用し、ウェアラブルシステムおよび／または他のユーザと相互作用してもよい。
【００５８】
本開示のウェアラブルデバイス、ＨＭＤ、およびディスプレイシステムと使用可能な触知デバイスおよびトーテムの実施例は、米国特許公開第２０１５／００１６７７７号（参照することによってその全体として本明細書に組み込まれる）に説明されている。
（例示的ウェアラブルシステム、環境、およびインターフェース）
【００５９】
ウェアラブルシステムは、高被写界深度をレンダリングされたライトフィールド内で達成するために、種々のマッピング関連技法を採用してもよい。仮想世界をマッピングする際、実世界内の全ての特徴および点を把握し、仮想オブジェクトを実世界に関連して正確に描くことが有利である。この目的を達成するために、ウェアラブルシステムのユーザから捕捉されたＦＯＶ画像が、実世界の種々の点および特徴についての情報を伝達する新しい写真を含むことによって、世界モデルに追加されることができる。例えば、ウェアラブルシステムは、マップ点（２Ｄ点または３Ｄ点等）のセットを収集し、新しいマップ点を見出し、世界モデルのより正確なバージョンをレンダリングすることができる。第１のユーザの世界モデルは、第２のユーザが第１のユーザを囲繞する世界を体験し得るように、（例えば、クラウドネットワーク等のネットワークを経由して）第２のユーザに通信されることができる。
【００６０】
図７は、ＭＲ環境７００の実施例のブロック図である。ＭＲ環境７００は、入力（例えば、ユーザのウェアラブルシステムからの視覚的入力７０２、室内カメラ等の定常入力７０４、種々のセンサからの感覚入力７０６、ユーザ入力デバイス４６６からのジェスチャ、トーテム、眼追跡、ユーザ入力等）を１つ以上のユーザウェアラブルシステム（例えば、ウェアラブルシステム２００もしくはディスプレイシステム２２０）または定常室内システム（例えば、室内カメラ等）から受信するように構成されてもよい。ウェアラブルシステムは、種々のセンサ（例えば、加速度計、ジャイロスコープ、温度センサ、移動センサ、深度センサ、ＧＰＳセンサ、内向きに面した結像システム、外向きに面した結像システム等）を使用して、ユーザの環境の場所および種々の他の属性を決定することができる。本情報はさらに、異なる視点からの画像または種々のキューを提供し得る、部屋内の定常カメラからの情報で補完されてもよい。カメラ（室内カメラまたは外向きに面した結像システムのカメラ等）によって入手された画像データは、マッピング点のセットに低減されてもよい。
【００６１】
１つ以上のオブジェクト認識装置７０８が、受信されたデータ（例えば、点の集合）を通してクローリングし、点を認識またはマッピングし、画像をタグ付けし、マップデータベース７１０を用いて、意味論情報をオブジェクトに結び付けることができる。マップデータベース７１０は、経時的に収集された種々の点およびその対応するオブジェクトを備えてもよい。種々のデバイスおよびマップデータベースは、ネットワーク（例えば、ＬＡＮ、ＷＡＮ等）を通して相互に接続され、クラウドにアクセスすることができる。
【００６２】
本情報およびマップデータベース内の点集合に基づいて、オブジェクト認識装置７０８ａ−７０８ｎは、環境内のオブジェクトを認識してもよい。例えば、オブジェクト認識装置は、顔、人物、窓、壁、ユーザ入力デバイス、テレビ、ドキュメント（例えば、本明細書におけるセキュリティ実施例において説明されるような旅券、運転免許証、パスポート）、ユーザの環境内の他のオブジェクト等を認識することができる。１つ以上のオブジェクト認識装置が、ある特性を伴うオブジェクトのために特殊化されてもよい。例えば、オブジェクト認識装置７０８ａは、顔を認識するために使用されてもよい一方、別のオブジェクト認識装置は、ドキュメントを認識するために使用されてもよい。
【００６３】
オブジェクト認識は、種々のコンピュータビジョン技法を使用して実施されてもよい。例えば、ウェアラブルシステムは、外向きに面した結像システム４６４（図４に示される）によって入手された画像を分析し、場面再構成、イベント検出、ビデオ追跡、オブジェクト認識（例えば、人物またはドキュメント）、オブジェクト姿勢推定、顔認識（例えば、環境内の人物またはドキュメント上の画像から）、学習、インデックス化、運動推定、または画像分析（例えば、写真、署名、識別情報、旅行情報等のドキュメント内の印を識別する）等を実施することができる。１つ以上のコンピュータビジョンアルゴリズムが、これらのタスクを実施するために使用されてもよい。コンピュータビジョンアルゴリズムの非限定的実施例は、スケール不変特徴変換（ＳＩＦＴ）、スピードアップロバスト特徴（ＳＵＲＦ）、配向ＦＡＳＴおよび回転ＢＲＩＥＦ（ＯＲＢ）、バイナリロバスト不変スケーラブルキーポイント（ＢＲＩＳＫ）、高速網膜キーポイント（ＦＲＥＡＫ）、Ｖｉｏｌａ−Ｊｏｎｅｓアルゴリズム、Ｅｉｇｅｎｆａｃｅｓアプローチ、Ｌｕｃａｓ−Ｋａｎａｄｅアルゴリズム、Ｈｏｒｎ−Ｓｃｈｕｎｋアルゴリズム、Ｍｅａｎ−ｓｈｉｆｔアルゴリズム、視覚的同時位置推定およびマッピング（ｖＳＬＡＭ）技法、シーケンシャルベイズ推定器（例えば、カルマンフィルタ、拡張カルマンフィルタ等）、バンドル調節、適応閾値化（および他の閾値化技法）、反復最近傍点（ＩＣＰ）、セミグローバルマッチング（ＳＧＭ）、セミグローバルブロックマッチング（ＳＧＢＭ）、特徴点ヒストグラム、種々の機械学習アルゴリズム（例えば、サポートベクトルマシン、ｋ最近傍アルゴリズム、単純ベイズ、ニューラルネットワーク（畳み込みまたは深層ニューラルネットワークを含む）、または他の教師あり／教師なしモデル等）等を含む。
【００６４】
オブジェクト認識は、加えて、または代替として、種々の機械学習アルゴリズムによって実施されることができる。いったん訓練されると、機械学習アルゴリズムは、ＨＭＤによって記憶されることができる。機械学習アルゴリズムのいくつかの実施例は、教師ありまたは教師なし機械学習アルゴリズムを含むことができ、回帰アルゴリズム（例えば、通常の最小２乗回帰等）、インスタンスベースのアルゴリズム（例えば、学習ベクトル量子化等）、決定ツリーアルゴリズム（例えば、分類および回帰ツリー等）、ベイズアルゴリズム（例えば、単純ベイズ等）、クラスタリングアルゴリズム（例えば、ｋ−平均クラスタリング等）、関連付けルール学習アルゴリズム（例えば、アプリオリアルゴリズム等）、人工ニューラルネットワークアルゴリズム（例えば、Ｐｅｒｃｅｐｔｒｏｎ等）、深層学習アルゴリズム（例えば、Ｄｅｅｐ  Ｂｏｌｔｚｍａｎｎ  Ｍａｃｈｉｎｅ、すなわち、深層ニューラルネットワーク等）、次元削減アルゴリズム（例えば、主成分分析等）、アンサンブルアルゴリズム（例えば、Ｓｔａｃｋｅｄ  Ｇｎｅｒａｌｉｚａｔｉｏｎ等）、および／または他の機械学習アルゴリズムを含む。いくつかの実施形態では、個々のモデルは、個々のデータセットのためにカスタマイズされることができる。例えば、ウェアラブルデバイスは、ベースモデルを生成または記憶することができる。ベースモデルは、開始点として使用され、データタイプ（例えば、テレプレゼンスセッション内の特定のユーザ）、データセット（例えば、テレプレゼンスセッション内のユーザの取得される付加的画像のセット）、条件付き状況、または他の変形例に特有の付加的モデルを生成してもよい。いくつかの実施形態では、ウェアラブルＨＭＤは、複数の技法を利用して、集約されたデータの分析のためのモデルを生成するように構成されることができる。他の技法は、事前に定義された閾値またはデータ値を使用することを含んでもよい。
【００６５】
マップデータベース内の本情報および点の集合に基づいて、オブジェクト認識装置７０８ａ−７０８ｎは、オブジェクトを認識し、オブジェクトを意味論情報で補完し、生命をオブジェクトに与えてもよい。例えば、オブジェクト認識装置が、点のセットがドアであることを認識する場合、システムは、いくつかの意味論情報を結び付けてもよい（例えば、ドアは、ヒンジを有し、ヒンジを中心として９０度移動を有する）。オブジェクト認識装置が、点のセットが鏡であることを認識する場合、システムは、鏡が、部屋内のオブジェクトの画像を反射させ得る、反射表面を有するという意味論情報を結び付けてもよい。意味論情報は、本明細書に説明されるように、オブジェクトのアフォーダンスを含むことができる。例えば、意味論情報は、オブジェクトの法線を含んでもよい。システムは、ベクトルを割り当てることができ、その方向は、オブジェクトの法線を示す。経時的に、マップデータベースは、システム（ローカルに常駐し得る、または無線ネットワークを通してアクセス可能であり得る）がより多くのデータを世界から蓄積するにつれて成長する。いったんオブジェクトが認識されると、情報は、１つ以上のウェアラブルシステムに伝送されてもよい。例えば、ＭＲ環境７００は、Ｃａｌｉｆｏｒｎｉａで生成している場面についての情報を含んでもよい。環境７００は、Ｎｅｗ  Ｙｏｒｋにおける１人以上のユーザに伝送されてもよい。ＦＯＶカメラおよび他の入力から受信されたデータに基づいて、オブジェクト認識装置および他のソフトウェアコンポーネントは、場面が世界の異なる部分に存在し得る第２のユーザに正確に「パス」され得るように、種々の画像から収集された点をマッピングし、オブジェクトを認識すること等ができる。環境７００はまた、位置特定目的のために、トポロジマップを使用してもよい。
【００６６】
図８は、認識されたオブジェクトに関連して仮想コンテンツをレンダリングする方法８００の実施例のプロセスフロー図である。方法８００は、仮想場面がウェアラブルシステムのユーザに提示され得る方法を説明する。ユーザは、その場面から地理的に遠隔に存在してもよい。例えば、ユーザは、Ｎｅｗ  Ｙｏｒｋに存在し得るが、Ｃａｌｉｆｏｒｎｉａで現在起こっている場面を視認することを所望し得る、またはＣａｌｉｆｏｒｎｉａに存在する友人と散歩に行くことを所望し得る。
【００６７】
ブロック８１０では、ウェアラブルシステムは、ユーザの環境に関する入力をユーザおよび他のユーザから受信してもよい。これは、種々の入力デバイスおよびマップデータベース内にすでに保有されている知識を通して達成されてもよい。ユーザのＦＯＶカメラ、センサ、ＧＰＳ、眼追跡等が、ブロック８１０において、情報をシステムに伝達する。システムは、ブロック８２０において、本情報に基づいて、疎点を決定してもよい。疎点は、ユーザの周囲における種々のオブジェクトの配向および位置を表示ならびに理解する際に使用され得る、姿勢データ（例えば、頭部姿勢、眼姿勢、身体姿勢、または手のジェスチャ）を決定する際に使用されてもよい。オブジェクト認識装置７０８ａ、７０８ｎは、ブロック８３０において、これらの収集された点を通してクローリングし、マップデータベースを使用して、１つ以上のオブジェクトを認識してもよい。本情報は、次いで、ブロック８４０において、ユーザの個々のウェアラブルシステムに伝達されてもよく、所望の仮想場面が、ブロック８５０において、適宜、ユーザに表示されてもよい。例えば、所望の仮想場面（例えば、ＣＡにおけるユーザ）が、Ｎｅｗ  Ｙｏｒｋにおけるユーザの種々のオブジェクトおよび他の周囲に関連して、適切な配向、位置等において表示されてもよい。
【００６８】
図９は、ウェアラブルシステムの別の実施例のブロック図である。本実施例では、ウェアラブルシステム９００は、世界に関するマップデータを含み得る、マップを備える。マップは、部分的に、ウェアラブルシステム上にローカルに常駐してもよく、部分的に、有線または無線ネットワークによってアクセス可能なネットワーク化された記憶場所（例えば、クラウドシステム内）に常駐してもよい。姿勢プロセス９１０が、ウェアラブルコンピューティングアーキテクチャ（例えば、処理モジュール２６０またはコントローラ４６０）上で実行され、ウェアラブルコンピューティングハードウェアまたはユーザの位置および配向を決定するために、マップからのデータを利用してもよい。姿勢データは、ユーザが、システムを体験し、その世界内で動作するにつれて、オンザフライで収集されたデータから算出されてもよい。データは、実または仮想環境内のオブジェクトに関する画像、センサ（概して、加速度計およびジャイロスコープコンポーネントを備える、慣性測定ユニット等）からのデータ、および表面情報を備えてもよい。
【００６９】
疎点表現は、同時位置特定およびマッピング（例えば、入力が画像／視覚のみである構成を指す、ＳＬＡＭまたはｖＳＬＡＭ）プロセスの出力であってもよい。システムは、世界内の種々のコンポーネントの場所だけではなく、世界が構成される内容も見出すように構成されることができる。姿勢は、マップへの取込およびマップからのデータを使用することを含め、多くの目標を達成する、構築ブロックであり得る。
【００７０】
一実施形態では、疎点位置は、それ自体では完全に適正であり得ず、さらなる情報が、多焦点ＡＲ、ＶＲ、またはＭＲ体験を生成するために必要とされ得る。概して、深度マップ情報を指す、稠密表現が、少なくとも部分的に、本間隙を充填するために利用されてもよい。そのような情報は、立体視９４０と称されるプロセスから算出されてもよく、深度情報は、三角測量または飛行時間感知等の技法を使用して決定される。画像情報およびアクティブパターン（アクティブプロジェクタを使用して生成される赤外線パターン等）が、立体視プロセス９４０への入力としての役割を果たし得る。有意な量の深度マップ情報が、ともに融合されてもよく、このうちのいくつかは、表面表現を用いて要約されてもよい。例えば、数学的に定義可能な表面は、ゲームエンジンのような他の処理デバイスへの効率的（例えば、大規模点群に対して）かつ要約しやすい入力であってもよい。したがって、立体視プロセス（例えば、深度マップ）９４０の出力は、融合プロセス９３０において組み合わせられてもよい。姿勢９５０は、同様に、本融合プロセス９３０への入力であってもよく、融合９３０の出力は、マップ取込プロセス９２０への入力となる。サブ表面が、トポグラフィマッピング等において相互に接続し、より大きい表面を形成し得、マップは、点および表面の大規模ハイブリッドとなる。
【００７１】
複合現実プロセス９６０における種々の側面を解決するために、種々の入力が、利用されてもよい。例えば、図９に描写される実施形態では、ゲームパラメータは、システムのユーザが１匹以上のモンスタと種々の場所においてモンスタバトルゲームをプレーしていること、モンスタが死んでいる、種々の条件下で逃げている（ユーザがモンスタを撃つ場合等）、種々の場所における壁または他のオブジェクト、および同等物を決定するための入力であってもよい。世界マップは、複合現実に対する別の有用な入力となる、そのようなオブジェクトが相互に対して存在する場所に関する情報を含んでもよい。世界に対する姿勢は、同様に、入力となり、ほぼあらゆる双方向システムに対して重要な役割を果たす。
【００７２】
ユーザからの制御または入力は、ウェアラブルシステム９００への別の入力である。本明細書に説明されるように、ユーザ入力は、視覚的入力、ジェスチャ、トーテム、オーディオ入力、感覚入力等を含むことができる。動き回るまたはゲームをプレーするために、例えば、ユーザは、ウェアラブルシステム９００に、所望する対象に関して命令する必要があり得る。空間内で自ら移動するだけではなく、利用され得る種々の形態のユーザ制御が、存在する。一実施形態では、トーテム（例えば、ユーザ入力デバイス）、または玩具銃等のオブジェクトが、ユーザによって保持され、システムによって追跡されてもよい。システムは、好ましくは、ユーザがアイテムを保持していることを把握し、ユーザがアイテムと行っている相互作用の種類を理解するように構成されるであろう（例えば、トーテムまたはオブジェクトが、銃である場合、システムは、場所および配向だけではなく、ユーザが、そのようなアクティビティがカメラのいずれかの視野内にないときでも、生じている状況の決定を補助し得る、ＩＭＵ等のセンサを装備し得る、トリガまたは他の感知ボタンもしくは要素をクリックしているかどうかも理解するように構成されてもよい。）
【００７３】
手のジェスチャ追跡または認識もまた、入力情報を提供してもよい。ウェアラブルシステム９００は、ボタン押下のため、左または右、停止、握持、保持等をジェスチャするために、手のジェスチャを追跡および解釈するように構成されてもよい。例えば、１つの構成では、ユーザは、非ゲーム環境において電子メールもしくはカレンダを通して捲る、または別の人物もしくはプレーヤと「フィストバンプ」を行うことを所望し得る。ウェアラブルシステム９００は、動的である場合とそうではない場合がある、最小量の手のジェスチャを活用するように構成されてもよい。例えば、ジェスチャは、停止を示すために手を広げる、ＯＫを示すために親指を上げる、ＯＫではないことを示すために親指を下げる、または指向性コマンドを示すために左右もしくは上下に手をフリップする等、単純な静的ジェスチャであってもよい。
【００７４】
眼追跡は、別の入力である（例えば、ユーザが見ている場所を追跡し、ディスプレイ技術を制御し、具体的深度または範囲にレンダリングする）。一実施形態では、眼の輻輳・開散運動が、三角測量を使用して決定されてもよく、次いで、その特定の人物のために開発された輻輳・開散運動／遠近調節モデルを使用して、遠近調節が、決定されてもよい。眼追跡は、眼カメラによって実施され、眼視線（例えば、片眼または両眼の方向もしくは配向）を決定することができる。他の技法も、例えば、眼の近傍に設置された電極による電位の測定（例えば、電気眼球図記録）等、眼追跡のために使用されることができる。
【００７５】
音声認識は、単独で、または他の入力（例えば、トーテム追跡、眼追跡、ジェスチャ追跡等）と組み合わせて使用され得る、別の入力であり得る。システム９００は、オーディオストリームを環境から受信する、オーディオセンサ（例えば、マイクロホン）を含むことができる。受信されたオーディオストリームは、処理され（例えば、処理モジュール２６０、２７０または中央サーバ１６５０によって）、ユーザの音声（他の音声または背景オーディオから）を認識し、コマンド、パラメータ等をオーディオストリームから抽出することができる。例えば、システム９００は、オーディオストリームから、語句「あなたのＩＤを見せてください」が発せられたことを識別し、本語句がシステム９００の装着者（例えば、検閲者の環境内の別の人物ではなく、セキュリティ検閲者）によって発せられたことを識別し、語句および状況のコンテキスト（例えば、セキュリティ検問所）から、実施されるべき実行可能コマンド（例えば、装着者のＦＯＶ内のもののコンピュータビジョン分析）およびコマンドが実施されるべきオブジェクト（「あなたのＩＤ」）が存在することを抽出し得る。システム９００は、発話している人物（例えば、発話がＡＲＤの装着者または別の人物もしくは音声（例えば、環境内のラウドスピーカによって伝送される記録された音声）からのものであるかどうか）を決定するための話者認識技術と、発せられている内容を決定するための発話認識技術とを組み込むことができる。音声認識技法は、周波数推定、隠れマルコフモデル、ガウス混合モデル、パターンマッチングアルゴリズム、ニューラルネットワーク、マトリクス表現、ベクトル量子化、話者ダイアライゼーション、決定ツリー、および動的時間伸縮（ＤＴＷ）技法を含むことができる。音声認識技法はまた、コホートモデルおよび世界モデル等のアンチ話者技法を含むことができる。スペクトル特徴は、話者特性を表す際に使用されてもよい。
【００７６】
カメラシステムに関して、図９に示される例示的ウェアラブルシステム９００は、３つの対のカメラ、すなわち、ユーザの顔の両側に配列される相対的広ＦＯＶまたは受動ＳＬＡＭ対のカメラと、ユーザの正面に配向され、立体視結像プロセス９４０をハンドリングし、また、ユーザの顔の正面の手のジェスチャおよびトーテム／オブジェクトの軌道を捕捉するための異なる対のカメラとを含むことができる。ステレオプロセス９４０に対するＦＯＶカメラおよび対のカメラは、外向きに面した結像システム４６４（図４に示される）の一部であってもよい。ウェアラブルシステム９００は、眼ベクトルおよび他の情報を三角測量するために、ユーザの眼に向かって配向される眼追跡カメラ（図４に示される内向きに面した結像システム４６２の一部であってもよい）を含むことができる。ウェアラブルシステム９００はまた、１つ以上のテクスチャ化光プロジェクタ（赤外線（ＩＲ）プロジェクタ等）を備え、テクスチャを場面の中に投入してもよい。
【００７７】
図１０は、ウェアラブルシステムへのユーザ入力を決定するための方法１０００の実施例のプロセスフロー図である。本実施例では、ユーザは、トーテムと相互作用してもよい。ユーザは、複数のトーテムを有してもよい。例えば、ユーザは、ソーシャルメディアアプリケーションのための指定される１つのトーテム、ゲームをプレーするための別のトーテム等を有してもよい。ブロック１０１０では、ウェアラブルシステムは、トーテムの運動を検出してもよい。トーテムの移動は、外向きに面した結像システムを通して認識されてもよい、またはセンサ（例えば、触知グローブ、画像センサ、手追跡デバイス、眼追跡カメラ、頭部姿勢センサ等）を通して検出されてもよい。
【００７８】
少なくとも部分的に、検出されたジェスチャ、眼姿勢、頭部姿勢、またはトーテムを通した入力に基づいて、ウェアラブルシステムは、ブロック１０２０において、基準フレームに対するトーテム（またはユーザの眼もしくは頭部もしくはジェスチャ）の位置、配向、または移動を検出する。基準フレームは、それに基づいてウェアラブルシステムがトーテム（またはユーザ）の移動をアクションまたはコマンドに変換する、マップ点のセットであってもよい。ブロック１０３０では、トーテムとのユーザの相互作用が、マッピングされる。基準フレーム１０２０に対するユーザ相互作用のマッピングに基づいて、システムは、ブロック１０４０において、ユーザ入力を決定する。
【００７９】
例えば、ユーザは、トーテムまたは物理的オブジェクトを前後に移動させ、仮想ページを捲り、次のページに移動する、または１つのユーザインターフェース（ＵＩ）ディスプレイ画面から別のＵＩ画面に移動することを示してもよい。別の実施例として、ユーザは、ユーザのＦＯＲ内の異なる実または仮想オブジェクトを見るために、その頭部または眼を移動させてもよい。特定の実または仮想オブジェクトにおけるユーザの注視が、閾値時間より長い場合、その実または仮想オブジェクトは、ユーザ入力として選択されてもよい。いくつかの実装では、ユーザの眼の輻輳・開散運動が、追跡されることができ、遠近調節／輻輳・開散運動モデルが、ユーザが合焦している深度平面に関する情報を提供する、ユーザの眼の遠近調節状態を決定するために使用されることができる。いくつかの実装では、ウェアラブルシステムは、レイキャスティング技法を使用して、ユーザの頭部姿勢または眼姿勢の方向に沿っている実または仮想オブジェクトを決定することができる。種々の実装では、レイキャスティング技法は、実質的に殆ど横幅を伴わない細い光線束を投じる、または実質的横幅を伴う光線（例えば、円錐または円錐台）を投じることを含むことができる。
【００８０】
ユーザインターフェースは、本明細書に説明されるようなディスプレイシステム（図２におけるディスプレイ２２０等）によって投影されてもよい。また、１つ以上のプロジェクタ等の種々の他の技法を使用して表示されてもよい。プロジェクタは、画像をキャンバスまたは球体等の物理的オブジェクト上に投影してもよい。ユーザインターフェースとの相互作用は、システムの外部またはシステムの一部の１つ以上のカメラを使用して（例えば、内向きに面した結像システム４６２または外向きに面した結像システム４６４を使用して）追跡されてもよい。
【００８１】
図１１は、仮想ユーザインターフェースと相互作用するための方法１１００の実施例のプロセスフロー図である。方法１１００は、本明細書に説明されるウェアラブルシステムによって行われてもよい。方法１１００の実施形態は、ウェアラブルシステムのＦＯＶ内の人物またはドキュメントを検出するためにウェアラブルシステムによって使用されることができる。
【００８２】
ブロック１１１０では、ウェアラブルシステムは、特定のＵＩを識別してもよい。ＵＩのタイプは、ユーザによって与えられてもよい。ウェアラブルシステムは、特定のＵＩがユーザ入力（例えば、ジェスチャ、視覚的データ、オーディオデータ、感覚データ、直接コマンド等）に基づいて取り込まれる必要があることを識別してもよい。ＵＩは、セキュリティシナリオに特有であることができ、システムの装着者は、ドキュメントを装着者に提示するユーザを観察する（例えば、旅客検問所において）。ブロック１１２０では、ウェアラブルシステムは、仮想ＵＩのためのデータを生成してもよい。例えば、ＵＩの境界、一般的構造、形状等と関連付けられたデータが、生成されてもよい。加えて、ウェアラブルシステムは、ウェアラブルシステムがユーザの物理的場所に関連してＵＩを表示し得るように、ユーザの物理的場所のマップ座標を決定してもよい。例えば、ＵＩが、身体中心である場合、ウェアラブルシステムは、リングＵＩがユーザの周囲に表示され得る、または平面ＵＩが壁上またはユーザの正面に表示され得るように、ユーザの物理的立ち位置、頭部姿勢、または眼姿勢の座標を決定してもよい。本明細書に説明されるセキュリティコンテキストでは、ＵＩは、装着者が、旅行者および旅行者のドキュメントを見ている間、ＵＩを容易に視認し得るように、ＵＩがドキュメントをシステムの装着者に提示する旅行者を囲繞しているかのように表示され得る。ＵＩが、手中心の場合、ユーザの手のマップ座標が、決定されてもよい。これらのマップ点は、ＦＯＶカメラ、感覚入力を通して受信されたデータ、または任意の他のタイプの収集されたデータを通して導出されてもよい。
【００８３】
ブロック１１３０では、ウェアラブルシステムは、データをクラウドからディスプレイに送信してもよい、またはデータは、ローカルデータベースからディスプレイコンポーネントに送信されてもよい。ブロック１１４０では、ＵＩは、送信されたデータに基づいて、ユーザに表示される。例えば、ライトフィールドディスプレイは、仮想ＵＩをユーザの眼の一方または両方の中に投影することができる。いったん仮想ＵＩが生成されると、ウェアラブルシステムは、ブロック１１５０において、単に、ユーザからのコマンドを待機し、より多くの仮想コンテンツを仮想ＵＩ上に生成してもよい。例えば、ＵＩは、ユーザの身体またはユーザの環境内の人物（例えば、旅行者）の身体の周囲の身体中心リングであってもよい。ウェアラブルシステムは、次いで、コマンド（ジェスチャ、頭部または眼移動、音声コマンド、ユーザ入力デバイスからの入力等）を待機してもよく、認識される場合（ブロック１１６０）、コマンドと関連付けられた仮想コンテンツが、ユーザに表示されてもよい（ブロック１１７０）。
【００８４】
ウェアラブルシステム、ＵＩ、およびユーザ体験（ＵＸ）の付加的実施例は、米国特許公開第２０１５／００１６７７７号（参照することによってその全体として本明細書に組み込まれる）に説明されている。
（ユーザの環境内の例示的オブジェクト）
【００８５】
図４を参照して説明されるように、拡張現実デバイス（ＡＲＤ）のユーザは、動眼視野（ＦＯＲ）を有することができ、これは、ユーザによってＡＲシステムを介して知覚されることが可能なユーザの周囲の環境の一部を構成する。頭部搭載型ＡＲＤに関して、ＦＯＲは、装着者が、その身体、頭部、または眼を移動させ、空間内の実質的に任意の方向を知覚することができるため、装着者を囲繞する４πステラジアン立体角の実質的に全てを含み得る。他のコンテキストでは、ユーザの移動は、より狭められ得、故に、ユーザのＦＯＲは、より小さい立体角に対し得る。
【００８６】
ＦＯＲは、オブジェクトのグループを含有することができ、これは、ＡＲＤを介して、ユーザによって知覚されることができる。オブジェクトは、仮想および／または物理的オブジェクトであってもよい。仮想オブジェクトは、例えば、削除されたファイルのためのゴミ箱、コマンドを入力するための端末、ファイルまたはディレクトリにアクセスするためのファイルマネージャ、アイコン、メニュー、オーディオまたはビデオストリーミングのためのアプリケーション、オペレーティングシステムからの通知等、例えば、オペレーティングシステムオブジェクトを含んでもよい。仮想オブジェクトはまた、例えば、アバタ、ウィジェット（例えば、クロックの仮想表現）、ゲーム内の仮想オブジェクト、グラフィック、または画像等、アプリケーション内のオブジェクトを含んでもよい。いくつかの仮想オブジェクトは、オペレーティングシステムオブジェクトおよびアプリケーション内のオブジェクトの両方であることができる。
【００８７】
仮想オブジェクトは、３次元（３Ｄ）、２次元（２Ｄ）、または１次元（１Ｄ）オブジェクトであってもよい。例えば、仮想オブジェクトは、３Ｄコーヒーマグカップであってもよい（物理的コーヒーメーカーのための仮想制御を表してもよい）。仮想オブジェクトはまた、クロックの２Ｄグラフィカル表現であってもよく、これは、現在の時間をユーザに表示する。いくつかの実装では、１つ以上の仮想オブジェクトは、別の仮想オブジェクト内に（またはそれと関連付けられて）表示されてもよい。例えば、仮想コーヒーマグカップは、ユーザインターフェース平面の内側に示されてもよいが、仮想コーヒーマグカップは、３Ｄであるように現れる一方、ユーザインターフェース平面は、２Ｄであるように現れてもよい。
【００８８】
いくつかの実施形態では、仮想オブジェクトは、物理的オブジェクトと関連付けられてもよい。例えば、図１２Ｂに示されるように、仮想書籍１２２０が、テーブル１２４２の上にあるように現れてもよい。ユーザは、物理的書籍がテーブル１２４２上にあるかのように、仮想書籍１２２０と相互作用することができる（書籍を読み、そのページを捲る等）。別の実施例として、仮想ワードローブアプリケーションが、ユーザのＦＯＲ内のミラーと関連付けられてもよい。ユーザが、ミラーの近傍に居るとき、ユーザは、仮想ワードローブアプリケーションと相互作用可能であってもよく、これは、ユーザが、ＡＲＤを使用して、異なる洋服の外見をシミュレートすることを可能にする。
【００８９】
ユーザのＦＯＲ内のオブジェクトは、図９を参照して説明されるように、世界モデルの一部であることができる。オブジェクトと関連付けられたデータ（例えば、場所、意味論情報、性質等）は、例えば、アレイ、リスト、ツリー、ハッシュ、グラフ等の種々のデータ構造内に記憶されることができる。各記憶されるオブジェクトのインデックスは、適用可能である場合、例えば、オブジェクトの場所によって決定されてもよい。例えば、データ構造は、基準位置からのオブジェクトの距離等の単一座標によって、オブジェクトをインデックス化してもよい（例えば、基準位置の左（または右）までの距離、基準位置の上部（または底部）からの距離、または基準位置からの深度）。ＡＲＤが、仮想オブジェクトをユーザに対して異なる深度平面に表示可能なライトフィールドディスプレイを備える、状況では、仮想オブジェクトは、異なる固定された深度平面に位置する複数のアレイに編成されることができる。いくつかの実装では、環境内のオブジェクトは、ベクトル形態で表されてもよく、これは、仮想オブジェクトの位置および移動を計算するために使用されることができる。例えば、オブジェクトは、原点と、重力の方向における下方ベクトルと、オブジェクトの面法線の方向における前方ベクトルとを有してもよい。例えば、ディスプレイ（例えば、仮想ＴＶ）の面法線は、表示される画像が視認され得る方向を示し得る（ディスプレイの背面が見られ得る方向ではなく）。ＡＲシステムは、２つのベクトルの成分間の差異を計算し、それによって、２つのベクトルと関連付けられたオブジェクト間の空間関係を決定してもよい。ＡＲシステムはまた、本差異を使用して、あるオブジェクトを他のオブジェクトの上部（または内側）に存在させるために必要な移動の量を計算してもよい。
（仮想オブジェクトを移動させる実施例）
【００９０】
ユーザは、ユーザのＦＯＲ内のオブジェクトのサブセットと相互作用することができる。オブジェクトの本サブセットは、時として、相互作用可能オブジェクトと称され得る。ユーザは、例えば、相互作用可能オブジェクトを選択または移動させる、相互作用可能オブジェクトと関連付けられたメニューを作動させる、相互作用可能オブジェクトを使用して実施されるべき動作を選択すること等、ユーザインターフェース動作を実施することによって、相互作用可能オブジェクトと相互作用することができる。ＡＲ／ＶＲ／ＭＲ世界において明白であるように、仮想オブジェクトの移動は、仮想オブジェクトが、コンピュータ生成された画像であって、物理的オブジェクトではないため、仮想オブジェクトの実際の物理的移動を指すわけではない。
【００９１】
ユーザは、単独で、または組み合わせて、頭部姿勢、眼姿勢、身体姿勢、音声コマンド、またはユーザ入力デバイス上の手ジェスチャを使用して、種々のユーザインタフェース動作を実施してもよい。例えば、ユーザは、手ジェスチャを使用することによって、相互作用可能オブジェクトと相互作用し、例えば、単独で、または組み合わせて、マウス上のクリック、タッチパッド上のタップ、タッチスクリーン上のスワイプ、容量ボタン上にかざすまたはタッチ、キーボードまたはゲームコントローラ（例えば、５方向ｄ−パッド）上のキーの押下、ジョイスティック、ワンド、またはトーテムによるオブジェクトに向かってのポインティング、遠隔制御上のボタンの押下、またはユーザ入力デバイスとの他の相互作用等、ユーザ入力デバイス（例えば、図４におけるユーザ入力デバイス４６６参照）を作動させることによって、相互作用可能オブジェクトと相互作用してもよい。ユーザはまた、例えば、ある時間周期にわたって、オブジェクトを注視またはポインティングする、頭部を傾ける、オブジェクトに向かって手を振る等、頭部、眼、または身体姿勢を使用して、相互作用可能オブジェクトと相互作用してもよい。
【００９２】
いくつかの実装では、ＡＲシステムは、標的オブジェクトの位置を示す、焦点インジケータ（図１４Ａ−１４Ｄおよび図１５Ａ−１５Ｈに示される焦点インジケータ１４５０等）（例えば、図１４Ａにおける焦点インジケータ参照）を提供してもよい。焦点インジケータはまた、ユーザ入力デバイスの現在の位置またはユーザの姿勢を示すために使用されてもよい（例えば、図１５Ｄにおける焦点インジケータ参照）。位置のインジケーションを提供することに加えて、またはその代替として、焦点インジケータはまた、標的オブジェクト、ユーザ入力デバイスの配向、またはユーザの姿勢のインジケーションを提供することができる。例えば、焦点インジケータは、後光、色、知覚されるサイズまたは深度の変化（例えば、標的オブジェクトを選択されたとき、より近くおよび／またはより大きく現れさせる）、カーソルのグラフィカル表現（レチクル等）、または他の聴覚的、触覚的、または視覚的効果を備えることができ、これは、ユーザの注意を引き付ける。焦点インジケータは、１Ｄ、２Ｄ、または３Ｄ画像として現れることができ、これは、静止フレーム画像または動画を含んでもよい。
【００９３】
ＡＲシステムによって焦点インジケータを提示する実施例として、ユーザが、ブランク壁を凝視しているとき、ＡＲシステムは、仮想錐体または光線を壁上に投影し、ユーザの現在の視線方向を示してもよい。別の実施例として、ユーザは、ユーザ入力デバイスを作動させ、その環境内のオブジェクトと相互作用することを所望することを示してもよい。ＡＲシステムは、ユーザがオブジェクトをより容易に知覚し得るように、焦点インジケータをそのオブジェクトに割り当ててもよい。ユーザが、その姿勢を変化させる、またはユーザ入力デバイスを作動させるにつれて、ＡＲシステムは、焦点インジケータを１つの場所から別の場所に移してもよい。
（仮想オブジェクトをスナップおよび配向する実施例）
【００９４】
本明細書に説明されるように、ユーザは、仮想オブジェクトを複数の方向に移動および回転させ得るため、ユーザは、時として、仮想オブジェクトを精密に位置および配向することが困難であると見出し得る。ユーザ疲労を低減させ、ユーザが相互作用する、改良されたＡＲデバイス（ＡＲＤ）を提供するために、ＡＲＤは、環境内の行先オブジェクトに対して仮想オブジェクトを自動的に再位置付けすることができる。例えば、ＡＲＤは、仮想オブジェクトが仮想または物理的オブジェクトから閾値距離内にあるとき、仮想オブジェクトを環境内の別の仮想または物理的オブジェクトに自動的に結び付ける（「スナップ」とも称される）ことができる。仮想オブジェクトを行先オブジェクトにスナップすることに加え、またはその代替として、ＡＲＤは、仮想オブジェクトが行先オブジェクトに近接するとき、自動的に、仮想オブジェクトの位置または配向を変化させることができる。例えば、ＡＲＤは、仮想オブジェクトの法線がユーザに面するように、仮想オブジェクトを回転させることができる。別の実施例として、ＡＲＤは、仮想オブジェクトが物理的書籍の一部であるように現れ得るように、仮想画像の境界と物理的書籍のものを整合させることができる。
【００９５】
ＡＲシステムは、仮想オブジェクトまたは標的オブジェクトのアフォーダンスに基づいて、仮想オブジェクトを適切な位置または配向に再位置付けすることができる。アフォーダンスは、オブジェクトとオブジェクトの環境との間の関係を含み、これは、オブジェクトと関連付けられたアクションまたは使用のための機会を与える。アフォーダンスは、例えば、仮想オブジェクトまたは行先オブジェクトの機能、配向、タイプ、場所、形状、またはサイズに基づいて決定されてもよい。アフォーダンスはまた、仮想オブジェクトまたは行先オブジェクトが位置する、環境に基づいてもよい。仮想オブジェクトのアフォーダンスは、仮想オブジェクトの一部としてプログラムされ、遠隔データリポジトリ２８０内に記憶されてもよい。例えば、仮想オブジェクトは、仮想オブジェクトの法線を示す、ベクトルを含むようにプログラムされてもよい。
【００９６】
例えば、仮想ディスプレイ画面（例えば、仮想ＴＶ）のアフォーダンスは、ディスプレイ画面が画面に対する法線によって示される方向から視認され得るというものである。垂直壁のアフォーダンスは、オブジェクトがその面法線が壁に対する法線と平行な状態で壁上に設置され得る（例えば、壁上に「吊架」される）というものである。ユーザは、ＡＲシステムを使用して、仮想ディスプレイを壁に近接するように移動させることができ、壁に十分に近接するとき、ＡＲシステムは、さらなるユーザ入力を伴わずに、仮想ディスプレイをディスプレイ法線が壁法線と平行な状態で自動的に壁上にスナップさせることができる。仮想ディスプレイおよび壁の付加的アフォーダンスは、それぞれ、上部または底部を有するというものであり得る。仮想ディスプレイを壁上にスナップすると、ＡＲシステムは、仮想ディスプレイの底部が、壁の底部に向かって配向され（またはディスプレイの上部が、壁の上部に向かって配向され）、それによって、仮想ディスプレイが上下逆の画像を提示しないことを確実にするように、仮想ディスプレイを自動的に配向することができる。
【００９７】
いくつかの状況では、仮想オブジェクトを再位置付けするために、ＡＲＤはまた、仮想オブジェクトの他の特性を変化させることができる。例えば、仮想画像のサイズまたは形状は、物理的書籍と同一ではない場合がある。その結果、ＡＲＤは、仮想画像のサイズまたは形状を変化させ、物理的書籍のものに合致させ、仮想画像の境界を物理的書籍のものと整合させることができる。ＡＲＤは、（加えて、または代替として）他の近傍の仮想オブジェクトを再位置付けし、再位置付けされる仮想オブジェクトのための十分な空間を提供してもよい。
【００９８】
事実上、ＡＲシステムは、物理的および仮想オブジェクトのアフォーダンスを尊重し、少なくとも部分的に、その個別のアフォーダンスに基づいて、仮想オブジェクトを他の物理的または仮想オブジェクトに対して位置付ける、または配向する。これらの特徴に関するさらなる詳細は、以下に説明される。
（仮想オブジェクトを物理的オブジェクトに自動的に結び付ける実施例）
【００９９】
図１２Ａおよび１２Ｂは、仮想オブジェクトをテーブルに結び付ける実施例を図示する。図１２Ａに示されるように、仮想書籍１２２０は、最初、部屋１２００ａ内のテーブル１２４２の上方に浮遊している。ユーザは、書籍１２２０を初期位置からテーブルの上方の位置に前もって移動させていてもよい（図１２Ａに示されるように）。ユーザは、ユーザ入力デバイスを作動させることによって、仮想書籍１２２０をテーブル１２４２上に設置するインジケーションを提供することができる。例えば、ユーザは、そのトーテムをクリックし、そのトーテムをテーブル１２４２にポインティングし、仮想書籍１２２０がテーブル１２４２上に設置される必要があることを示すことによって、仮想書籍１２２０を選択することができる。ＡＲシステムは、ユーザが書籍をテーブル１２２０にドラッグすることを要求することなく、仮想書籍１２２０をテーブル１２４２に移動させることができる。別の実施例として、ユーザは、書籍が設置されるべきテーブル上の行先位置に眼を向けてもよく、ＡＲシステムは、頭部姿勢または眼視線に基づいて、行先位置を決定することができ、ＡＲシステムは、ＩＭＵを使用して、頭部姿勢に関するデータを入手する、または眼追跡カメラを使用して、ユーザの視線方向を決定することができる。ＡＲシステムは、ユーザがトーテムを作動させると、仮想書籍１２２０をテーブル１２４２上の行先位置に自動的に設置することができる。いくつかの実装では、ＡＲシステムが、仮想オブジェクトを標的オブジェクト上に引動させるように作用する引力をシミュレートし得るため、ユーザは、標的オブジェクトが移動される、テーブル１２４２または壁１２１０等の行先オブジェクトを示す必要がない。例えば、ユーザが、仮想書籍１２２０を選択すると、ＡＲシステムは、仮想書籍１２２０に関する重力の影響をシミュレートすることができ、仮想書籍１２２０は、下向き方向１２３２に移動する。ＡＲシステムは、下向き移動（矢印１２３２によって示されるように）における仮想書籍１２２０の経路上にある最初のオブジェクトであるため、テーブル１２４２を行先オブジェクトとして自動的に識別することができる。故に、仮想書籍は、物理的書籍であるかのように、テーブル１２４２上に降下されるように現れることができる。
【０１００】
ＡＲシステムは、仮想書籍、環境（例えば、部屋１２００ａ）、または行先オブジェクトのアフォーダンスに基づいて、仮想書籍１２２０の再位置付けのためのパラメータを決定し、パラメータの値を計算することができる。移動のいくつかの例示的パラメータは、移動の量（例えば、進行した距離または軌道）、移動の速度、移動の加速、または他の物理学パラメータを含むことができる。
【０１０１】
ＡＲシステムは、仮想書籍１２２０の位置およびテーブル１２４２の位置に基づいて、仮想書籍１２２０に関する移動の量を計算することができる。例えば、ＡＲシステムは、ベクトルを部屋内の物理的オブジェクトおよび仮想オブジェクトに結び付けてもよい。ベクトルは、物理的および仮想オブジェクトの場所および方向情報を含んでもよい。仮想書籍１２２０に関するベクトルは、重力の方向（例えば、方向１２３２）に成分を有し得る。同様に、テーブル１２４２の表面に関するベクトルもまた、重力の方向にその現在の場所を示す成分を有し得る。ＡＲシステムは、テーブル１２４２の表面の位置と重力の方向における仮想書籍１２２０の位置との間の差異を取得することができる。ＡＲシステムは、本差異を使用して、仮想書籍１２２０が下向きに移動されるべき距離を決定することができる。ベクトルはまた、重力のサイズに関する情報を含むことができる。重力の大きさ（例えば、重力加速）は、ユーザの物理的または仮想環境に基づいて変化し得る。例えば、ユーザが、自宅に居るとき、重力は、地球の値９．８ｍ／ｓ２（１「ｇ」）に設定され得る。しかしながら、ユーザは、ＡＲシステムを使用してゲームをプレーし得、これは、仮想環境をゲーム内に提示することができる。実施例として、仮想環境が、部屋である場合、重力加速の大きさは、１／６「ｇ」であってもよく、仮想環境が木星の場合、重力加速の大きさは、２．５「ｇ」であってもよい。
【０１０２】
ＡＲシステムを用いて改良されたユーザ体験を提供するために、ＡＲシステムは、仮想書籍１２２０が物理的オブジェクトであるかのように、種々の物理学の法則を使用して、図１２Ａから１２Ｂの仮想書籍１２２０の移動をシミュレートすることができる。例えば、仮想書籍１２２０の下向き移動（矢印１２３２によって示されるように）は、自由落下運動に基づくことができる。自由落下運動は、ユーザの環境内の他の力（空気抵抗等）と組み合わせられ、現実的ユーザ体験を提供することができる。別の実施例として、部屋１２００ａは、開放ウィンドウを有してもよい。突風が、部屋１２００ａの中に吹き込むと、ＡＲシステムは、仮想書籍１２２０のページを自動的に捲ることによって、風の影響をシミュレートすることができる。
【０１０３】
図１２Ａおよび１２Ｂにおける本実施例を継続すると、テーブルのアフォーダンスは、オブジェクトをその表面上に支持し得、したがって、仮想書籍１２２０が、テーブル１２４２上に落下するというものである。したがって、重力の影響をシミュレートするとき、ＡＲシステムは、ＡＲシステムが、オブジェクトがテーブルを通して通過しないというテーブルのアフォーダンスを尊重するため、仮想書籍１２２０を床１２３０上に表示しない。テーブル１２４２は、仮想書籍１２４２が物理的書籍であるかのように、仮想書籍１２２０が重力の方向に移動し続けないように阻止するであろう。
【０１０４】
いくつかの状況では、テーブル１２４２の一部のみが、仮想書籍１２２０の下向き移動の経路上にある。その結果、仮想書籍１２２０の一部は、テーブル１２４２の表面を越えて延在し得る。ＡＲシステムは、仮想書籍１２２０の重心がテーブル１２４２の表面上にあるかどうかを決定することができる。仮想書籍１２２０の重心が、テーブル１２４２の表面上に静置する場合、ＡＲシステムは、仮想書籍１２２０をテーブル１２４２上に表示することができる。仮想書籍１２２０の重心が、テーブル１２４２の表面外にある場合、ＡＲシステムは、仮想書籍１２２０が、テーブル１２４２上に留まらないであろうことを決定することができ、代わりに、仮想書籍１２２０を床上に表示することができる。
【０１０５】
別の実施例として、仮想オブジェクトは、仮想テニスボールであってもよく、そのアフォーダンスは、硬質表面から跳ね返ることを含む。したがって、仮想テニスボールが、テーブル１２４２に衝打すると、ＡＲシステムは、仮想テニスボールが、テーブル１２４２から跳ね返り、床１２３０上に着地することを示すことができる。
【０１０６】
仮想オブジェクト（例えば、書籍）およびテーブルの付加的アフォーダンスは、オブジェクトに対する法線がテーブルに対する法線と平行であるべきである（例えば、仮想書籍は、テーブル上で平坦である）というものである。ＡＲシステムは、図１２Ｂに示されるように、テーブル１２４２上で平坦であるようにユーザに現れるように、仮想書籍１２２０を自動的に適切に配向することができる。
【０１０７】
仮想オブジェクトを重力の方向に移動させることに加え、ＡＲシステムはまた、仮想オブジェクトを他の方向に移動させることができる。例えば、ユーザは、メモを壁に移動させることを所望し得る。ユーザは、壁１２１０の方向にポインティングすることができる（例えば、手またはトーテムを用いて）。ユーザによって示される方向に基づいて、ＡＲシステムは、外向きに面した結像システムおよび／または世界モデルを使用して、壁１２１０の表面を識別し、メモを壁に自動的に「飛行」させることができる（例えば、図１３Ａ−１３Ｄに示される例示的場面１３００ａ、１３００ｂ、１３００ｃ、および１３００ｄ参照）。他の実装では、壁上のオブジェクトは、それらがメモを誘引し得るというアフォーダンスを有し得る。例えば、壁上のオブジェクトは、メモが典型的に結び付けられる、表面を表し得る（例えば、磁気メモが結び付けられ得る磁気メモボードまたはメモがピン留めされ得るコルクメモボード）。ＡＲシステムは、壁オブジェクトが、「粘着性」アフォーダンスを有し（例えば、磁気またはコルクメモボード）、仮想メモが、対応する粘着性アフォーダンスを有する（例えば、メモは、磁気またはピン留め可能）ことを識別することができる。ＡＲシステムは、仮想メモを壁オブジェクトに自動的に結び付けることができる。
【０１０８】
図７を参照して説明されるように、意味論情報が、物理的オブジェクト、仮想オブジェクト、物理的環境、および仮想環境に結び付けられることができる。意味論情報は、アフォーダンスを含むことができる。例えば、ＡＲシステムは、例えば、以下の非排他的例証的属性、すなわち、質量、密度、直径、硬度（または軟度）、弾性、粘着性、電磁属性（例えば、電荷、伝導性、磁気属性）、位相（例えば、固体、液体、または気体）等、物理的属性を仮想オブジェクトに割り当てることができる。ＡＲシステムはまた、重力、空気抵抗等、物理的属性を仮想環境に割り当てることができる。割り当てられる属性の値は、種々の物理学の法則を使用して、仮想オブジェクトとの相互作用をシミュレートするために使用されることができる。例えば、仮想オブジェクトの移動は、仮想オブジェクトに付与される力に基づいてもよい。図１２Ａおよび１２Ｂを参照すると、仮想書籍１２２０の移動は、部屋１２００ａの重力および空気抵抗および仮想書籍１２２０の質量を使用して計算される力に基づいて、決定されてもよい。
（仮想コピーおよびペーストの実施例）
【０１０９】
いくつかの実施形態では、仮想オブジェクトを標的行先オブジェクトに再位置付けするのではなく、ＡＲシステムは、仮想オブジェクトを複製し、複製された仮想オブジェクトを行先オブジェクトまたは環境内の場所に移動させることができる。一実施例として、ＡＲシステムは、それによってユーザが１つ以上のアイテムを仮想メニューから選択し得る（例えば、トーテムまたは頭部もしくは眼姿勢を使用して）、仮想メニューをユーザに提示することができる。ＡＲシステムは、選択されたアイテムおよびユーザの環境内のオブジェクトのアフォーダンスに基づいて、仮想メニューから選択されたアイテムを適切な場所に自動的に設置することができる。例えば、仮想メニューは、仮想ＴＶ、仮想オーディオプレーヤ、仮想ゲーム等を含む、ユーザにアイテムを提示してもよい。ユーザは、仮想ＴＶを選択してもよい。ＡＲシステムは、仮想ＴＶをメニューからクリップボードの中にコピーすることができる。ユーザは、環境を見渡し、ユーザが仮想ＴＶがＡＲシステムによって設置されることを所望する、標的場所を見出すことができる。ユーザが、標的場所を見出すと、ユーザは、ユーザ入力デバイス（例えば、トーテム）を作動させ、標的場所の選択を確認してもよく、ＡＲシステムは、仮想ＴＶを所望の場所に自動的に表示することができる。ＡＲシステムは、ＴＶおよび標的場所のアフォーダンスに基づいて、仮想ＴＶを表示することができる。例えば、所望の場所が、垂直壁上にある場合、ＡＲシステムは、壁に対して平坦に吊架しているかのように、仮想ＴＶを表示することができる。別の実施例として、標的場所が、水平テーブル上にある場合、ＡＲシステムは、テーブル上に平坦にあるかのように、仮想ＴＶを表示することができる。これらの実施例の両方において、ＡＲシステムは、仮想ＴＶの法線が、標的場所に対する法線、すなわち、壁法線またはテーブル法線と整合されるように、仮想ＴＶ（ＴＶが視認され得る方向を示す法線を有する）を配向する。
【０１１０】
いくつかの状況では、仮想オブジェクトは、ユーザによって選択された標的場所に設置されることが不可能であり得る。例えば、ユーザは、仮想メモを設置するために、テーブル表面を選択してもよい。しかしながら、テーブル表面は、すでに他の文書によって被覆されている場合があり、したがって、仮想メモは、テーブル表面上に設置されることができない。ＡＲシステムは、例えば、反発ばね力等の反力をシミュレートすることができ、これは、仮想メモがテーブル表面上に設置されないように防止するであろう。
【０１１１】
故に、ＡＲシステムのそのような実施形態は、ＡＲシステムが、仮想オブジェクトならびにユーザの環境内の他のオブジェクトのアフォーダンスについて把握しているため、最小限のユーザ相互作用を伴って、仮想オブジェクトをコピーし、それを所望の場所にペーストすることができる。ＡＲシステムは、これらのアフォーダンスを利用して、仮想オブジェクトをユーザの環境内のその自然位置および／または配向に設置することができる。（仮想オブジェクトを自動的に枢動させる実施例）
【０１１２】
図１３Ａ−１３Ｄは、仮想オブジェクト１３２０が壁１２１０に近接するときの仮想オブジェクト１３２０の位置および配向を自動的に調節することを示す。仮想オブジェクト１３２０は、４つの角１３２６、１３２８、１３２２、および１３２４を有する。いったんＡＲシステムが、仮想オブジェクト１３２０が壁１２１０に触れている（例えば、角１３２２が、図１３Ｂに示されるように、壁に触れている）ことを決定すると、ＡＲシステムは、仮想オブジェクト１３２０が、壁１２１０の配向と整合されるように現れる、例えば、オブジェクト法線１３５５が、図１３Ｄに示されるように、壁法線１３５０と平行になるように、仮想オブジェクト１３２０を再配向することができる。仮想オブジェクト１３２０を再配向するための移動は、３Ｄ空間内の複数の軸に沿ってもよい。例えば、図１３Ｂおよび１３Ｃに示されるように、ＡＲシステムは、仮想オブジェクト１３２０を１３３０ａの方向に枢動させることができ、その結果、角１３２４はまた、図１３Ｃに示されるように、壁１２１０に触れる。仮想オブジェクト１３２０と壁１２１０をさらに整合させるために、ＡＲシステムは、仮想オブジェクト１３２０を図１３Ｃに示される１３３０ｂの方向に枢動することができる。故に、仮想オブジェクト１３２０の上角１３２６および１３２８もまた、図１３Ｄに示されるように、壁に触れる。ある場合には、仮想オブジェクト１３２０はまた、壁１２１０上のその自然配向が水平に吊架することである（例えば、仮想絵画）というアフォーダンスを有し得る。ＡＲシステムは、本アフォーダンスを使用して、仮想オブジェクト１３２０を壁１２１０上に適切に配向してもよい（例えば、仮想絵画が、ある角度においてではなく、壁から適切に吊架するように現れる）。
【０１１３】
ＡＲシステムは、仮想オブジェクト１３２０の面法線１３５５を、法線１３５０と逆平行ではなく、壁１２１０の面法線１３５０と平行にすることによって、仮想オブジェクト１３２０を再配向することができる。例えば、仮想ＴＶ画面の片側のみが、ビデオを表示するように構成されてもよい、または仮想絵画の片側のみが、絵画を表示するように構成されてもよい。故に、ＡＲシステムは、コンテンツを伴う側がユーザに面する（壁に面する代わりに）ように、仮想オブジェクトを反転させる必要があり得る。
（仮想オブジェクトが別のオブジェクトの閾値距離以内にあるときのスナップおよび再配向の実施例）
【０１１４】
ユーザは、例えば、ユーザ入力デバイス４６６を使用して、仮想オブジェクトをドラッグすることによって、仮想オブジェクトを別の場所に移動させることができる。仮想オブジェクトが、行先オブジェクトに近接するとき、ＡＲシステムは、ユーザが、仮想オブジェクトと行先オブジェクトを整合させるために微調整を行う必要がないように、仮想オブジェクトを自動的にスナップおよび配向してもよい。
【０１１５】
図１４Ａ−１４Ｄでは、ＡＲＤのユーザは、仮想オブジェクトをテーブルから壁に移動させる。仮想オブジェクト１４３０は、仮想ＴＶ画面であってもよい。図１４Ａでは、部屋１２００ｂ内の仮想ＴＶ画面１４３０は、最初、テーブル１２４２上にあって（テーブル１２４２上の破線によって示されるように）、壁１２１０に移動されつつある。ユーザは、仮想画面１４３０を選択し、仮想画面１４３０を方向１４４０ａに（例えば、壁１２１０上の所望の行先位置に向かって）移動させることができる。ＡＲシステムは、可視焦点インジケータ１４５０を仮想画面１４３０上に示し、仮想画面１４３０の現在の位置を示し、ユーザが画面１４３０を選択したことを示してもよい。
【０１１６】
ＡＲシステムは、ユーザが仮想画面１４３０を移動させるにつれて、仮想画面１４３０の位置を監視することができる。ＡＲシステムは、仮想画面１４３０と壁１２１０との間の距離が閾値距離未満離れているとき、仮想画面１４３０を自動的にスナップおよび配向することを開始することができる。ＡＲシステムは、ＡＲシステムが、図１３Ａ−１３Ｄを参照して説明されるように、仮想画面の少なくとも一部が壁１２１０に触れると、仮想画面１４３０を自動的に結び付け、配向することを開始し得るように、閾値距離を設定してもよい。いくつかの実装では、閾値距離は、ＡＲシステムが、仮想画面１４３０の任意の部分が壁に触れる前に、仮想画面１４３０を壁１２１０に自動的に結び付けるおよび／または配向することを開始するように、十分に大きくてもよい。これらの実装では、ＡＲシステムは、壁と仮想オブジェクトとの間の磁気の影響をシミュレートしてもよい。例えば、仮想画面１４３０が、十分に近接する（閾値距離より小さい等）とき、オブジェクトは、ユーザからのさらなる労力を伴わずに、壁に自動的に誘引される。
【０１１７】
仮想画面１４３０と壁１２１０との間の距離は、種々の方法において測定されてもよい。例えば、仮想画面１４３０の重力の中心と壁１２１０の表面との間の変位に基づいて、計算されてもよい。いくつかの実施形態では、オブジェクトが、オブジェクトの位置を説明するベクトルと関連付けられるとき、ＡＲシステムは、仮想画面１４３０に関するベクトルと、壁１２１０に関するベクトルとを使用して、ユークリッド距離を計算することができる。距離はまた、ベクトルの成分に基づいて、計算されてもよい。例えば、ＡＲＤは、水平軸におけるベクトルと仮想画面１４３０との間の位置差異を距離として計算してもよい。
【０１１８】
閾値距離は、仮想オブジェクトに関連するアフォーダンスに依存することができる。例えば、仮想画面１４３０は、サイズ（例えば、水平サイズ、垂直サイズ、厚さ、対角線サイズ等）と関連付けられ、閾値距離は、サイズのある割合であってもよい。実施例として、閾値距離が、画面の垂直サイズとほぼ等しい場合、ＡＲシステムは、画面が壁から垂直サイズ距離以内になると、画面をその行先位置および配向に向かって配向することを開始してもよい。別の実施例として、閾値距離が、画面の垂直サイズより小さい場合、ＡＲシステムは、仮想画面１４３０が壁にはるかに近づくまで、仮想画面１４３０を配向することを開始しなくてもよい。種々の実装では、閾値距離は、ユーザによって設定されることができる、またはデフォルト値（例えば、オブジェクトのサイズ等）に設定されることができる。閾値距離は、ＡＲシステムとのユーザの体験に基づいて、変化してもよい。例えば、ユーザが、小閾値距離が、仮想オブジェクトの高速再配向につながり、注意を逸らすことを見出す場合、ユーザは、再配向がより大きな距離にわたってより徐々に生じるように、閾値距離をより大きくなるように再設定してもよい。
【０１１９】
仮想画面１４３０が、壁と平行ではないとき、ＡＲシステムは、距離を計算するとき、壁に最も近い（図１４Ｂに示される仮想画面１４３０の底部部分等）仮想画面１４３０の部分を終点として使用してもよい。本方法を使用して、距離が十分に小さくまたはゼロになると、ＡＲシステムは、仮想画面１４３０の少なくとも一部が壁１２１０に触れたことを検出することができる。しかしながら、距離が、壁１２１０と仮想画面１４３０の重力の中心との間の変位に基づいて計算される場合、距離は、ＡＲシステムが衝突を検出するとき、０を上回り得る（図１４Ｂ参照）。これは、仮想画面１４３０が壁１２１０と平行ではないとき、仮想画面１４３０の重力の中心が壁１２１０に到達する前に、仮想画面１４３０の一部が壁１２１０に到達し得るためである。
【０１２０】
種々の実装では、仮想オブジェクトは、仮想オブジェクトの１つのみの表面が、コンテンツ（例えば、ＴＶ画面または絵画）を表示する、またはユーザに可視であるように設計されるテクスチャを有するというアフォーダンスを有し得る。例えば、仮想ＴＶオブジェクトに関して、オブジェクトの１つのみの表面が、画面として作用し、コンテンツをユーザに表示し得る。その結果、ＡＲシステムは、コンテンツを伴う表面が、壁の代わりに、ユーザに面するように、仮想オブジェクトを配向してもよい。例えば、図１４Ａ、１４Ｂ、および１４Ｃを参照すると、仮想画面１４３０の面法線は、最初、テーブルの正面に立っているとき、ユーザに仮想画面１４３０のコンテンツが見え得るように、天井（テーブルの代わりに）に面し得る。しかしながら、ユーザが、単に、仮想画面１４３０を持ち上げ、それを壁１２１０に結び付ける場合、面法線は、ユーザの代わりに、壁に面し得る。その結果、ユーザには、コンテンツが見えず、仮想画面１４３０の背面表面が見え得る。仮想画面１４３０が壁１２１０に移動されるとき、ユーザが、依然として、コンテンツを視認し得ることを確実にするために、ＡＲシステムは、コンテンツを伴う表面がユーザ（壁ではなく）に面し得るように、仮想画面１４３０を軸の周囲で１８０度回転させることができる。本回転を用いることで、図１４Ｂでは仮想画面１４３０の底部側であった側１４３４が、図１４Ｃでは上部側となる一方、図１４Ｂでは仮想画面１４３０の上部側であった側１４３２は、図１４Ｃでは底部側となる。
【０１２１】
図１４Ｃを参照して説明されるように、仮想オブジェクトを軸に沿って反転されることに加え、またはその代替として、ＡＲシステムはまた、仮想オブジェクトが行先場所に移動される前と同一配向を留保するように、仮想オブジェクトを他の軸の周囲で回転させてもよい。図１４Ａおよび１４Ｄを参照すると、仮想ＴＶ画面１４３０（およびそのコンテンツ）は、最初、テーブル１２４２上で縦向き配向にあり得る。しかしながら、仮想ＴＶ画面１４３０が、図１４Ｂおよび１４Ｃに示されるように、壁１２１０に移動された後、仮想ＴＶ画面は、横向き配向に配向される。仮想画面１４３０がテーブル１２４２上にあったときと同一ユーザ体験を留保するために、ＡＲシステムは、仮想ＴＶ画面１４３０が縦向き配向（図１４Ｄに示されるように）に現れるように、仮想ＴＶ画面１４３０を９０度回転させてもよい。本回転を用いることで、図１４Ｃでは画面１４３０の上部として示されていた側１４３４は、図１４Ｄでは画面１４３０の左側となる一方、図１４Ｃでは画面１４３０の底部側として示されていた側１４３２は、図１４Ｄでは画面１４３０の右側になる。
【０１２２】
図１５Ａ、１５Ｂ、および１５Ｃは、仮想オブジェクトを結び付け、配向する実施例の側面図を図示する。本実施例では、仮想オブジェクトは、例証目的のために、平面オブジェクト（例えば、仮想画面）であるように描写されるが、仮想オブジェクトは、平面形状に限定されない。図１４Ａと同様に、図１５Ａにおける仮想画面１４３０は、壁１２１０に向かって１４４０ａの方向に移動する。ＡＲシステムは、焦点インジケータ１４５０を表示し、ユーザと関連付けられた位置（例えば、ユーザの視線方向またはユーザのユーザ入力デバイス４６６の位置等）を示すことができる。本実施例では、焦点インジケータ１４５０は、仮想画面１４３０上にあって、これは、仮想画面１４３０の選択を示すことができる。仮想画面１４３０は、壁１２１０と角度１５５２にある（図１５Ｂに示される）。仮想画面１４３０が、図１５Ｂに示されるように、壁１２１０の表面１５１０ａに触れると、ＡＲシステムは、仮想画面１４３０を角度方向１４４０ｂに回転させることができる。その結果、図１５Ｃに示されるように、仮想画面１４３０と壁１２１０の表面１５１０ａとの間に形成される角度は、角度１５５２から角度１５５４に減少され、図１５Ｄでは、角度は、画面１４３０が壁１２１０に対して平坦であるため、ゼロまで低減されている。本実施例では、画面１４３０は、ユーザが若干壁１２１０から離れるように移動した（焦点インジケータ１４５０はもはや仮想オブジェクト１４３０上にない）後でも、壁上に留まる（壁の「粘着性」に起因して）。
【０１２３】
本明細書に説明される例示的図は、仮想オブジェクトの再配向が、仮想オブジェクトが壁に触れた後に生じることを示すが、ここでの実施例は、例証目的のためのものであって、限定であることを意図するものではないことに留意されたい。再配向は、仮想オブジェクトが物理的オブジェクトに触れる前にも生じることができる。例えば、ＡＲシステムは、壁および仮想オブジェクトの面法線を計算することができ、仮想オブジェクトが壁に向かって移動する間、仮想オブジェクトを配向することができる。加えて、本明細書に提供される実施例は、仮想オブジェクトの底部部分が最初に壁に触れることを示すが、オブジェクトの任意の他の部分もまた、最初に壁に触れ得ることに留意されたい。例えば、仮想オブジェクトが、壁と平行であるとき、仮想オブジェクト全体が、壁と同時に衝突し得る。別の実施例として、オブジェクトが、３Ｄカップであるとき、カップの持ち手が、カップの任意の他の部分の前に壁と衝突し得る。
（仮想オブジェクトと物理的オブジェクトとの間のシミュレートされた引力の影響）
【０１２４】
本明細書に説明されるように、ＡＲシステムは、仮想オブジェクトと壁またはテーブル等の物理的または仮想オブジェクトとの間の引力の影響をシミュレートすることができる（例えば、図１２Ａ−１２Ｂにおける重力または図１３Ａ−１３Ｄまたは１４Ａ−１４Ｄに示されるような磁力もしくは「粘着性」）。仮想オブジェクトと物理的オブジェクトとの間の距離が、閾値未満となるにつれて、ＡＲシステムは、２つのオブジェクトが引力（例えば、磁石の反対極性の引力または重力の下向きの引力）に起因してともに誘引されるかのように、仮想オブジェクトを物理的オブジェクトに自動的に結び付けることができる。
【０１２５】
ある場合には、ＡＲシステムは、複数の引力を利用してもよく、これは、物理的オブジェクトの軌道をより正確に表し得る。例えば、図１４Ａ−１４Ｂを参照すると、仮想画面１４３０をテーブル１２４２から壁１２１０に移動させることを所望する、ユーザは、仮想画面１４３０を壁１２１０上に投げるジェスチャを行なってもよい。ＡＲシステムは、上記に説明されるように、磁気引力を利用して、画面１４３０を壁１２１０に結び付けることができる。加えて、ＡＲシステムは、下向き重力を利用し、壁１２１０に向かって移動するにつれて、画面１４３０の弧状軌道を表すことができる。ＡＲシステムによる１つ以上の引力の使用は、仮想オブジェクトが物理的オブジェクトの移動とほぼ同様に作用するため、より自然な方法において移動し、ユーザの環境内の他のオブジェクトと相互作用するように仮想オブジェクトを現れさせることができる。これは、有利には、より自然かつ現実的ユーザ体験につながることができる。
【０１２６】
他の状況では、ユーザは、仮想オブジェクトを仮想オブジェクトが現在結び付けられているオブジェクトから離れるように移動させることを所望し得る。しかしながら、時として、ＡＲシステムは、仮想オブジェクトが壁に結び付けられているとき、仮想オブジェクトを結び付け解除する意図を示すユーザの移動と、仮想オブジェクトとのユーザ相互作用を区別することが不可能である場合がある。実施例として、ユーザが、壁に結び付けられている仮想画面を使用して、ゲームをプレーしている間、ユーザは、そのトーテムを移動させ、友人または敵を見出す、またはそれと相互作用する必要があり得る。本タイプのゲーム移動は、仮想オブジェクトを壁から結び付け解除する移動のタイプと一致し得る。ユーザの移動が好適な閾値を十分に上回る場合のみ、仮想画面を結び付け解除することによって、仮想画面は、ゲームプレーの間、不注意に結び付け解除されないであろう。加えて、ユーザは、通常、長時間にわたって、その姿勢またはユーザ入力デバイスをじっとしたまま保つことができない。その結果、仮想オブジェクトは、ユーザが仮想オブジェクトを結び付け解除することを意図しないとき、ユーザのわずかな移動によって偶発的に結び付け解除され得る。故に、ユーザの移動が好適な閾値を十分に上回る場合のみ、仮想オブジェクトを結び付け解除することによって、ユーザによるわずかな移動または痙攣は、仮想オブジェクトをその意図される場所または配向から不注意に結び付け解除しないであろう。
【０１２７】
これらの問題を解決し、ＡＲシステムを改良するために、ＡＲシステムは、ユーザの位置の変化が閾値を上回らない限り、ユーザが仮想オブジェクトを他のオブジェクトから直ちに結び付け解除し得ないように、仮想オブジェクトと物理的オブジェクトとの間の引力をシミュレートすることができる。例えば、図１５Ｄに示されるように、画面１４３０は、壁１２１０に結び付けられる。ユーザは、焦点インジケータ１４５０が壁から離れるように移動されるように、そのユーザ入力デバイスを移動させることができる。しかしながら、仮想画面１４３０は、依然として、画面と壁との間のシミュレートされた引力の影響に起因して、表面１５１０ａに結び付けられ得る。焦点インジケータが、より離れて移動し、画面１４３０と焦点インジケータ１４５０との間の閾値距離を超えるにつれて、ＡＲシステムは、仮想画面１４３０を図１５Ｅに示されるように、壁１２１０から結び付け解除してもよい。ＡＲシステムによって提供される本相互作用は、不可視仮想ひもが焦点インジケータ１４５０と画面１４３０との間に存在するかのように作用する。焦点インジケータ１４５０と画面１４３０との間の距離が、仮想ひもの長さを超えると、仮想ひもは、緊張し、画面を壁１２１０か結び付け解除する。仮想ひもの長さは、閾値距離を表す。
【０１２８】
閾値距離に加え、またはその代替として、ＡＲシステムはまた、他の要因を使用し、仮想オブジェクトを結び付け解除するかどうかを決定することができる。例えば、ＡＲシステムは、ユーザの移動の加速または速度を測定してもよい。ＡＲシステムは、図２および４を参照して説明されるＩＭＵを使用して、加速および速度を測定してもよい。加速または速度が、閾値を超える場合、ＡＲシステムは、仮想オブジェクトを物理的オブジェクトから結び付け解除してもよい。ある場合には、加速の変化率（「躍度」として知られる）が、測定されることができ、ユーザによって提供される躍度が、躍度閾値を上回る場合、仮想オブジェクトは、結び付け解除される。加速閾値または躍度閾値を利用する、ＡＲシステムの実装は、ユーザがオブジェクトを他のオブジェクトから結び付け解除する様子をより自然に表し得る。例えば、壁上に粘着された物理的オブジェクトを除去するために、ユーザは、物理的オブジェクトの一部を握り、それを壁からグイッと引っ張り得る。仮想世界におけるこのようなグイッと引っ張る表現は、加速および／または躍度閾値を使用してモデル化されることができる。
【０１２９】
別の実装では、ＡＲシステムは、摩擦または弾性等の他の物理的力をシミュレートしてもよい。例えば、ＡＲシステムは、それらを接続する仮想ゴムバンドが存在するかのように、焦点インジケータ１４５０と画面１４３０との間の相互作用をシミュレートしてもよい。焦点インジケータ１４５０と画面１４３０との間の距離が、増加するにつれて、仮想ゴムバンドの仮想引張力は、増加し、仮想引張力が壁１２１０の粘着性を表す力閾値を上回ると、画面１４３０は、壁１２１０から結び付け解除される。別の実施例では、仮想オブジェクトが、物理的オブジェクトの水平表面上に現れると、ＡＲシステムは、仮想摩擦が仮想オブジェクトと水平表面との間に存在するかのように、焦点インジケータと仮想オブジェクトとの間の相互作用をシミュレートしてもよい。ユーザは、焦点インジケータを水平表面に沿ってドラッグしてもよい一方、ＡＲシステムは、ユーザによって印加される力が仮想摩擦を克服するために十分であるときのみ、仮想オブジェクトを移動させることを開始してもよい。
【０１３０】
故に、種々の実装では、ＡＲシステムは、対応する閾値とともに、距離、速度、加速、および／または躍度測定を利用して、仮想オブジェクトを別のオブジェクトから結び付け解除するであるかどうかを決定することができる。同様に、ＡＲシステムは、オブジェクト間の引力（粘着性、重力、または磁力を表す）に関する閾値を利用して、仮想オブジェクトが他のオブジェクトに結び付けられる強度を決定することができる。例えば、別のオブジェクト上に移動不可能に設置されることが意図される、仮想オブジェクトは、ユーザが仮想オブジェクトを結び付け解除することが非常に困難であり得るように、非常に高引力閾値と関連付けられてもよい。物理的オブジェクトの性質がその重量等によって設定される、物理的世界と異なり、仮想世界では、仮想オブジェクトの性質は、変化されることができる。例えば、ユーザが、「移動不可能な」仮想オブジェクトを意図的に移動させることを所望する場合、ユーザは、ＡＲシステムに、その関連付けられた閾値がはるかに低くなるように、仮想オブジェクトの設定を一時的に変化させるように命令してもよい。仮想オブジェクトが、新しい位置に移動後、ユーザは、ＡＲシステムに、再び移動不可能となるように、仮想オブジェクトの閾値を再設定するように命令することができる。
【０１３１】
仮想オブジェクトが、物理的オブジェクトから結び付け解除されると、仮想オブジェクトの配向は、仮想オブジェクトが物理的オブジェクトに結び付けられるとき、同一のままであることができる。例えば、図１５Ｄでは、仮想画面１４３０が、壁に結び付けられると、仮想画面１４３０は、壁の表面１５１０ａと平行である。故に、仮想画面１４３０が、図１５Ｅにおいて、壁から離れるように移動するにつれて、仮想画面１４３０は、壁１４３０と平行のままであり得る。
【０１３２】
いくつかの実施形態では、仮想オブジェクトが、壁から結び付け解除されると、ＡＲシステムは、仮想オブジェクトの配向を仮想オブジェクトが壁に結び付けられる前のそのオリジナル配向に戻るように変化させてもよい。例えば、図１５Ｆに示されるように、仮想画面１４３０が、壁１２１０から結び付け解除されると、ＡＲシステムは、仮想画面１４３０の配向を図１５Ａおよび１５Ｂに示されるものと同一配向に戻してもよい。
【０１３３】
いったん仮想画面１４３０が、壁１２１０から結び付け解除されると、ユーザは、オブジェクト１４３０を移動させ、それを壁（または別のオブジェクト）に再び結び付けることができる。図１５Ｇおよび１５Ｈに示されるように、ユーザが、仮想画面１４３０を壁１２１０に戻るように移動させると、仮想オブジェクト１４３０は、１４４０ｃの方向に配向され、壁１２１０の表面１５１０ｂに結び付けられることができる。故に、図１５Ｄに示されるように、ユーザは、オブジェクト１４３０を壁１２１０の左側に再び結び付け得る（例えば、図１５Ｄにおける仮想画面１４３０の位置と図１５Ｈにおけるその位置を比較する）。
【０１３４】
図１４Ａ−１４Ｄおよび１５Ａ−１５Ｈにおける実施例は、仮想オブジェクトを壁に自動的に結び付けることを参照して説明されるが、同一技法はまた、仮想オブジェクトをテーブル等の別のオブジェクトに自動的に結び付けることに適用されることができる。例えば、ＡＲシステムは、さらなるユーザ労力を伴わずに、仮想書籍がテーブルに近接するときの下向き重力の影響をシミュレートし、仮想書籍をテーブル上に自動的に配向し、示すことができる。別の実施例として、ユーザは、手ジェスチャを使用して、仮想絵画を床に移動させ、それを床上に落下させることができる（仮想重力を介して）。ユーザの現在の位置は、焦点インジケータによって示されてもよい。ユーザが、絵画を床に移動させるにつれて、焦点インジケータは、ユーザの位置に追従することができる。しかしながら、仮想絵画がユーザの環境内のテーブルに近接するとき、仮想絵画は、テーブルが床の上にあり得るため、テーブルに偶発的に結び付けられ得る。ユーザは、その手、頭部、または眼ジェスチャを用いて、焦点インジケータを床の方向に移動させ続けることができる。焦点インジケータの場所とテーブルとの間の距離が、十分に大きいとき、ＡＲシステムは、仮想絵をテーブルから結び付け解除し、それを焦点インジケータの場所に移動させ得る。ユーザは、次いで、床の近傍まで、仮想絵を移動させ続けることができ、ＡＲシステムは、仮想重力下、それを定位置に落下させ得る。
【０１３５】
加えて、または代替として、本明細書に説明される技法はまた、仮想オブジェクトを別のオブジェクトの内側に押し込むために使用されることができる。例えば、ユーザは、仮想ボックスを有してもよく、これは、ユーザの写真を含有する。ＡＲシステムが、写真を仮想ボックスの中に入れるインジケーションを受信すると、ＡＲシステムは、自動的に、写真を仮想ボックスの内側に移動させ、写真と仮想ボックスを整合させることができる。（仮想オブジェクトを自動的にスナップおよび配向するための例示的方法）
【０１３６】
図１６は、仮想オブジェクトを結び付け、配向するための例示的方法である。図１６に示されるプロセス１６００は、図２を参照して説明されるＡＲシステム２００によって実施されてもよい。
【０１３７】
ブロック１６１０では、ＡＲシステムは、ユーザが相互作用することを所望する、ユーザの環境内の仮想オブジェクトを識別することができる。本仮想オブジェクトはまた、標的仮想オブジェクトと称され得る。ＡＲシステムは、ユーザの姿勢に基づいて、標的仮想オブジェクトを識別することができる。例えば、ＡＲシステムは、ユーザの視線方向と交差すると、仮想オブジェクトを標的仮想オブジェクトとして選択してもよい。ＡＲシステムはまた、ユーザがユーザ入力デバイスを作動させると、標的仮想オブジェクトを識別してもよい。例えば、ユーザが、ユーザ入力デバイスをクリックすると、ＡＲシステムは、ユーザ入力デバイスの現在の場所に基づいて、標的仮想オブジェクトを自動的に指定してもよい。
【０１３８】
標的仮想オブジェクトは、第１の場所および第１の配向を有してもよい。いくつかの実施形態では、標的仮想オブジェクトの場所および配向は、ベクトル形態において表されてもよい。標的仮想オブジェクトが動き回るにつれて、ベクトル内の値も、適宜、更新され得る。
【０１３９】
ブロック１６２０では、ＡＲシステムは、標的仮想オブジェクトを行先オブジェクトに移動させるためのインジケーションを受信することができる。例えば、ユーザは、テーブルにポインティングし、ユーザ入力デバイスを作動させ、標的仮想オブジェクトをテーブルに移動させる意図を示してもよい。別の実施例として、ユーザは、仮想オブジェクトを壁の方向にドラッグし、仮想オブジェクトを壁に設置してもよい。行先オブジェクトは、場所および配向を有することができる。いくつかの実装では、標的仮想オブジェクトのように、行先オブジェクトの場所および配向もまた、ベクトル形態において表されてもよい。
【０１４０】
ブロック１６３０では、ＡＲシステムは、標的仮想オブジェクトの場所および行先オブジェクトの場所に基づいて、標的仮想オブジェクトと行先オブジェクトとの間の距離を計算することができる。ＡＲシステムは、計算された距離と閾値距離を比較することができる。距離が、ブロック１６４０に示されるように、閾値距離未満である場合、ＡＲシステムは、自動的に、標的仮想オブジェクトを配向し、行先オブジェクトに結び付けることができる。
【０１４１】
いくつかの実装では、ＡＲシステムは、複数の閾値距離（または速度、加速、または躍度）を含んでもよく、各閾値距離は、アクションのタイプと関連付けられる。例えば、ＡＲシステムは、第１の閾値距離を設定してもよく、ＡＲシステムは、標的仮想オブジェクトと行先オブジェクトとの間の距離が、閾値距離未満またはそれと等しい場合、仮想オブジェクトを自動的に回転させることができる。ＡＲシステムはまた、第２の閾値距離を設定してもよく、ＡＲシステムは、距離が、第２の閾値距離未満であるとき、標的仮想オブジェクトを行先オブジェクトに自動的に結び付けることができる。本実施例では、第１の閾値距離が、第２の閾値距離と同一である場合、ＡＲシステムは、閾値距離が満たされると、同時に、標的仮想オブジェクトを結び付け、配向することを開始することができる。第１の閾値距離が、第２の閾値距離を上回る場合、ＡＲシステムは、ＡＲシステムが、標的仮想オブジェクトを行先オブジェクトに自動的に結び付けることを開始する前に、標的仮想オブジェクトを配向することを開始してもよい。他方では、第１の閾値距離が、第２の閾値距離未満である場合、ＡＲシステムは、最初に、標的仮想オブジェクトを行先オブジェクトに結び付け、次いで、標的仮想オブジェクトを配向してもよい（標的仮想オブジェクトの一部がすでに行先オブジェクトに結び付けられているとき等）。別の実施例として、ＡＲシステムは、ユーザ移動が、対応する速度、加速、または躍度閾値を超える場合、仮想オブジェクトを結び付け解除してもよい。
【０１４２】
ＡＲシステムは、標的仮想オブジェクトを配向するとき、標的仮想オブジェクトを複数の軸に沿って配向することができる。例えば、ＡＲシステムは、仮想オブジェクトの面法線がユーザに面する（行先オブジェクトの表面に面する代わりに）ように、仮想オブジェクトを回転させることができる。ＡＲシステムはまた、仮想オブジェクトが行先オブジェクトと同一配向に現れるように、仮想オブジェクトを配向することができる。ＡＲシステムはさらに、ユーザが仮想オブジェクトのコンテンツを不快な角度から視認しないように、仮想オブジェクトの配向を調節することができる。いくつかの実施形態では、ＡＲシステムは、２つのオブジェクトをともに結び付けるとき、磁力および／または重力の影響をシミュレートしてもよい。例えば、ＡＲシステムは、仮想ＴＶ画面が壁に近接するとき、仮想ＴＶ画面を壁に誘引する影響を示すことができる。別の実施例として、ＡＲシステムは、ユーザが仮想書籍をテーブル上に置く意図を示すとき、自由落下運動をシミュレートしてもよい。
【０１４３】
磁力、粘着性、および重力の影響に加え、ＡＲシステムはまた、仮想オブジェクトが物理的オブジェクトであるかのように、他の物理的影響をシミュレートしてもよい。例えば、ＡＲシステムは、質量を仮想オブジェクトに割り当ててもよい。２つの仮想オブジェクトが衝突すると、ＡＲシステムは、２つの仮想オブジェクトが、衝突後、ある距離にわたってともに移動し得るように、モーメンタムの影響をシミュレートしてもよい。
（仮想オブジェクトを結び付け解除するための例示的方法）
【０１４４】
図１７は、仮想オブジェクトをユーザの環境内の別のオブジェクトから結び付け解除するための例示的方法である。図１７に示されるプロセス１７００は、図２を参照して説明されるＡＲシステムによって実施されてもよい。
【０１４５】
ブロック１７１０では、ＡＲシステムは、ユーザの動眼視野（ＦＯＲ）内の標的仮想オブジェクトを識別することができる。ＦＯＲは、ユーザによってＡＲシステムを介して知覚されることが可能なユーザの周囲の環境の一部を構成する。標的仮想オブジェクトは、ＦＯＲ内の別のオブジェクトに結び付けられてもよい。ＡＲシステムは、他のオブジェクトに結び付けられると、第１の位置を標的オブジェクトに割り当ててもよい。
【０１４６】
ブロック１７２０では、ＡＲシステムは、標的仮想オブジェクトをユーザのＦＯＲ内の第２の位置に移動させるインジケーションを受信することができる。インジケーションは、ユーザの姿勢の変化（その手を移動させる等）、ユーザ入力デバイスの移動（トーテムを移動させる等）、またはユーザ入力デバイス上の手ジェスチャ（タッチパッド上で軌道に沿って移動させる等）であってもよい。
【０１４７】
ブロック１７３０では、ＡＲシステムは、移動のインジケーションが標的仮想オブジェクトを他のオブジェクトから結び付け解除するための閾値条件を満たすかどうかを決定することができる。ブロック１７４２に示されるように、閾値条件が満たされる場合、ＡＲシステムは、仮想オブジェクトを結び付け解除し、それをユーザの位置（例えば、焦点インジケータによって示されるように）に移動させてもよい。閾値条件は、移動の速度／加速および／または位置変化に基づいてもよい。例えば、ユーザが、仮想オブジェクトを壁から結び付け解除することを所望すると、ＡＲシステムは、ユーザがそのトーテムを壁から移動させた距離を計算することができる。ＡＲシステムが、トーテムと壁との間の距離が閾値距離を満たすことを決定する場合、ＡＲシステムは、仮想オブジェクトを結び付け解除してもよい。実施例として、ユーザが、そのトーテムを、閾値速度および／または閾値加速を満たす十分に高速で移動させると、ＡＲシステムはまた、仮想オブジェクトを壁から結び付け解除してもよい。
【０１４８】
ＡＲシステムが、閾値条件が満たされないことを決定する場合、ＡＲシステムは、ブロック１７４４に示されるように、仮想オブジェクトから結び付け解除しなくてもよい。いくつかの実施形態では、ＡＲシステムは、ユーザの現在の位置を示す、焦点インジケータを提供してもよい。例えば、閾値条件が満たされないとき、ＡＲシステムは、焦点インジケータをユーザの現在の位置に示しながら、仮想オブジェクトを依然として環境内の他のオブジェクトに結び付けられているように示してもよい。
【０１４９】
本明細書に説明される実施例は、１つの仮想オブジェクトを移動させることを参照するが、これらの実施例は、限定ではないことに留意されたい。例えば、ＡＲシステムは、本明細書に説明される技法を使用して、自動的に、仮想オブジェクトのグループを配向し、結び付け、環境内の別のオブジェクトから結び付け解除してもよい。
（付加的実施形態）
【０１５０】
第１の側面では、標的仮想オブジェクトをユーザの３次元（３Ｄ）環境内の行先オブジェクトに自動的にスナップするための方法であって、コンピュータハードウェアを備える、拡張現実（ＡＲ）システムの制御下で、ＡＲシステムは、ユーザの３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、ＡＲシステムは、ユーザ入力デバイスを備え、標的仮想オブジェクトおよびユーザの３Ｄ環境内の行先オブジェクトを識別するステップであって、標的仮想オブジェクトは、第１の配向および第１の場所と関連付けられ、行先オブジェクトは、第２の配向および第２の場所と関連付けられる、ステップと、少なくとも部分的に、第１の場所および第２の場所に基づいて、標的仮想オブジェクトと行先オブジェクトとの間の距離を計算するステップと、距離と閾値距離を比較するステップと、距離が閾値距離未満またはそれと等しいことの比較に応答して、標的仮想オブジェクトを行先オブジェクトの表面に自動的に結び付けるステップと、少なくとも部分的に、第１の配向および第２の配向に基づいて、標的仮想オブジェクトを自動的に配向し、標的仮想オブジェクトと行先オブジェクトを整合させるステップとを含む、方法。
【０１５１】
第２の側面では、標的仮想オブジェクトおよび行先オブジェクトを識別するステップは、頭部姿勢、眼姿勢、身体姿勢、または手ジェスチャのうちの少なくとも１つに基づく、側面１に記載の方法。
【０１５２】
第３の側面では、行先オブジェクトは、物理的オブジェクトまたは仮想オブジェクトのうちの少なくとも１つを含む、側面１−２のいずれか１項に記載の方法。
【０１５３】
第４の側面では、行先オブジェクトは、壁またはテーブルを含む、側面３に記載の方法。
【０１５４】
第５の側面では、第１の配向または第２の配向は、垂直配向または水平配向のうちの少なくとも１つを含む、側面１−４のいずれか１項に記載の方法。
【０１５５】
第６の側面では、距離を計算するステップは、標的仮想オブジェクトと行先オブジェクトとの間の変位を計算するステップを含む、側面１−５のいずれか１項に記載の方法。
【０１５６】
第７の側面では、閾値距離は、ゼロである、側面１−６のいずれか１項に記載の方法。
【０１５７】
第８の側面では、標的仮想オブジェクトを自動的に配向し、標的仮想オブジェクトと行先オブジェクトを整合させるステップは、標的仮想オブジェクトを自動的に配向し、標的仮想オブジェクトの面法線をＡＲシステムに面させるステップ、標的仮想オブジェクトを自動的に配向し、標的仮想オブジェクトの面法線を行先オブジェクトの表面と垂直にさせるステップ、または標的仮想オブジェクトを自動的に配向し、標的仮想オブジェクトの面法線を行先オブジェクトの法線と平行にさせるステップのうちの少なくとも１つを含む、側面１−７のいずれか１項に記載の方法。
【０１５８】
第９の側面では、焦点インジケータを標的仮想オブジェクトまたは行先オブジェクトのうちの少なくとも１つに割り当てるステップをさらに含む、側面１−８のいずれか１項に記載の方法。
【０１５９】
第１０の側面では、コンピュータハードウェアと、ユーザ入力デバイスとを備える、拡張現実システムであって、側面１−９のいずれか１項に記載の方法を実施するように構成される、拡張現実システム。
【０１６０】
第１１の側面では、標的仮想オブジェクトをユーザの３次元（３Ｄ）環境内の行先オブジェクトに自動的にスナップするための方であって、コンピュータハードウェアを備える、拡張現実（ＡＲ）システムの制御下で、ＡＲシステムは、ユーザの３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、ＡＲシステムは、ユーザ入力デバイスと、ユーザの姿勢を測定するように構成される姿勢センサとを備え、ユーザの３Ｄ環境内の標的仮想オブジェクトを識別するステップであって、標的仮想オブジェクトは、第１の場所および第１の配向と関連付けられる、ステップと、姿勢センサを使用して、ユーザから、標的仮想オブジェクトを行先オブジェクトに移動させるインジケーションを受信するステップであって、行先オブジェクトは、第２の場所および第２の配向と関連付けられる、ステップと、少なくとも部分的に、第１の場所および第２の場所に基づいて、標的仮想オブジェクトと行先オブジェクトとの間の軌道を計算し、標的仮想オブジェクトを軌道に沿って行先オブジェクトに向かって移動させるステップと、少なくとも部分的に、標的仮想オブジェクトの現在の場所および第２の場所に基づいて、標的仮想オブジェクトと行先オブジェクトとの間の距離を計算するステップと、距離と閾値距離を比較するステップと、距離が閾値距離未満またはそれと等しいことの比較に応答して、標的仮想オブジェクトを行先オブジェクトに自動的に結び付けるステップと、少なくとも部分的に、第１の配向および第２の配向に基づいて、標的仮想オブジェクトを自動的に配向し、標的仮想オブジェクトと行先オブジェクトを整合させるステップとを含む、方法。
【０１６１】
第１２の側面では、姿勢センサは、外向きに面した結像システム、慣性測定ユニット、または内向きに面した結像システムのうちの少なくとも１つを含む、側面１１に記載の方法。
【０１６２】
第１３の側面では、焦点インジケータをユーザの現在の位置に割り当てるステップをさらに含み、ユーザの現在の位置は、少なくとも部分的に、ユーザの姿勢またはユーザ入力デバイスと関連付けられた位置に基づいて決定される、側面１２に記載の方法。
【０１６３】
第１４の側面では、姿勢は、頭部姿勢、眼姿勢、または身体姿勢のうちの少なくとも１つを含む、側面１３に記載の方法。
【０１６４】
第１５の側面では、ユーザから、標的仮想オブジェクトを行先オブジェクトに移動させるインジケーションを受信するステップは、姿勢センサを使用して、ユーザの姿勢の変化を識別するステップと、少なくとも部分的に、ユーザの姿勢に基づいて、行先オブジェクトを識別するステップと、ユーザから、標的仮想オブジェクトを行先オブジェクトに移動させることの確認を受信するステップとを含む、側面１４に記載の方法。
【０１６５】
第１６の側面では、ユーザから、標的仮想オブジェクトを行先オブジェクトに移動させることのインジケーションを受信するステップは、行先オブジェクトのインジケーションをユーザ入力デバイスから受信するステップまたは標的仮想オブジェクトを行先オブジェクトに移動させることの確認をユーザから受信するステップのうちの少なくとも１つを含む、側面１３に記載の方法。
【０１６６】
第１７の側面では、確認は、ユーザの姿勢の変化またはユーザ入力デバイス上の手ジェスチャのうちの少なくとも１つを含む、側面１５−１６のいずれか１項に記載の方法。
【０１６７】
第１８の側面では、コンピュータハードウェアと、ユーザ入力デバイスと、姿勢センサとを備える、拡張現実システムであって、側面１１−１７に記載のいずれか１項に方法を実施するように構成される、拡張現実システム。
【０１６８】
第１９の側面では、標的仮想オブジェクトをユーザの３次元（３Ｄ）環境内の行先オブジェクトにスナップするための方法であって、コンピュータハードウェアを備える、拡張現実（ＡＲ）システムの制御下で、ＡＲシステムは、ユーザの３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、標的仮想オブジェクトおよびユーザの３Ｄ環境内の行先オブジェクトを識別するステップと、標的仮想オブジェクトを行先オブジェクトに結び付けるためのインジケーションを受信するステップと、標的仮想オブジェクトまたは行先オブジェクトのうちの少なくとも１つと関連付けられたアフォーダンスを決定するステップと、少なくとも部分的に、アフォーダンスに基づいて、標的仮想オブジェクトを自動的に配向するステップと、標的仮想オブジェクトを行先オブジェクトに自動的に結び付けるステップとを含む、方法。
【０１６９】
第２０の側面では、標的仮想オブジェクトおよび行先オブジェクトを識別するステップは、頭部姿勢、眼姿勢、身体姿勢、手ジェスチャ、またはユーザ入力デバイスからの入力のうちの少なくとも１つに基づく、側面１９に記載の方法。
【０１７０】
第２１の側面では、行先オブジェクトは、物理的オブジェクトまたは仮想オブジェクトのうちの少なくとも１つを含む、側面１９−２０のいずれか１項に記載の方法。
【０１７１】
第２２の側面では、行先オブジェクトは、垂直表面または水平表面を含む、側面２１に記載の方法。
【０１７２】
第２３の側面では、標的仮想オブジェクトを行先オブジェクトに結び付けるためのインジケーションを受信するステップは、ユーザの姿勢の変化を検出するステップまたは行先オブジェクトのインジケーションをユーザ入力デバイスから受信するステップのうちの１つ以上のものを含む、側面１９−２２のいずれか１項に記載の方法。
【０１７３】
第２４の側面では、姿勢は、頭部姿勢、眼姿勢、または身体姿勢のうちの少なくとも１つを含む、側面２３に記載の方法。
【０１７４】
第２５の側面では、アフォーダンスは、標的仮想オブジェクトまたは行先オブジェクトの機能、配向、タイプ、場所、形状、サイズ、または環境のうちの１つ以上のものに基づいて決定される、側面１９−２４のいずれか１項に記載の方法。
【０１７５】
第２６の側面では、標的仮想オブジェクトを自動的に配向するステップは、標的仮想オブジェクトを自動的に配向し、標的仮想オブジェクトの面法線をＡＲシステムに面させるステップ、標的仮想オブジェクトを自動的に配向し、標的仮想オブジェクトの面法線を行先オブジェクトの表面と垂直にさせるステップ、または標的仮想オブジェクトを自動的に配向し、標的仮想オブジェクトの面法線を行先オブジェクトの法線と平行にさせるステップのうちの１つ以上のものを含む、側面１９−２５のいずれか１項に記載の方法。
【０１７６】
第２７の側面では、標的仮想オブジェクトを行先オブジェクトに自動的に結び付けるステップは、標的仮想オブジェクトと行先オブジェクトとの間の引力をシミュレートすることによって実施される、側面１９−２６のいずれか１項に記載の方法。
【０１７７】
第２８の側面では、引力は、重力または磁力のうちの１つ以上のものを含む、側面２７に記載の方法。
【０１７８】
第２９の側面では、コンピュータハードウェアを備える、拡張現実システムであって、側面１９−２８のいずれか１項に記載の方法を実施するように構成される、拡張現実システム。
【０１７９】
第３０の側面では、標的仮想オブジェクトを３次元（３Ｄ）環境内の別のオブジェクトから結び付け解除するための方法であって、コンピュータハードウェアを備える、拡張現実（ＡＲ）システムの制御下で、ＡＲシステムは、ユーザの動眼視野（ＦＯＲ）内のオブジェクトとのユーザ相互作用を可能にするように構成され、ＦＯＲは、ユーザによってＡＲシステムを介して知覚されることが可能なユーザの周囲の環境の一部を構成し、ユーザによる標的仮想オブジェクトの選択を受信するステップであって、標的仮想オブジェクトは、ユーザのＦＯＲ内の第１の位置と関連付けられる、ステップと、ユーザに、標的仮想オブジェクトと関連付けられた焦点インジケータを表示するステップと、ユーザから、標的仮想オブジェクトを移動させるためのインジケーションを受信するステップと、ユーザに、少なくとも部分的に、インジケーションに基づいて、焦点インジケータを更新された位置に表示するステップと、標的仮想オブジェクトの第１の位置と焦点インジケータの更新された位置との間の距離を計算するステップと、距離と閾値距離を比較するステップと、距離が閾値距離以上であることの比較に応答して、標的仮想オブジェクトを第１の位置から焦点インジケータの更新された位置と関連付けられた第２の位置に移動させるステップと、ユーザに、標的仮想オブジェクトを第２の位置に表示するステップとを含む、方法。
【０１８０】
第３１の側面では、ユーザによる標的仮想オブジェクトの選択を受信するステップは、ユーザの姿勢の変化を検出するステップまたはユーザ入力デバイスから入力を受信するステップのうちの少なくとも１つを含む、側面３０に記載の方法。
【０１８１】
第３２の側面では、他のオブジェクトは、物理的オブジェクトまたは仮想オブジェクトのうちの少なくとも１つを含む、側面３０−３１のいずれか１項に記載の方法。
【０１８２】
第３３の側面では、他のオブジェクトは、壁またはテーブルを含む、側面３２に記載の方法。
【０１８３】
第３４の側面では、標的仮想オブジェクトを移動させるためのインジケーションを受信するステップは、ユーザ入力デバイスの移動を検出するステップ、ユーザ入力デバイス上の手ジェスチャを検出するステップ、またはユーザの姿勢の変化を検出するステップのうちの少なくとも１つを含む、側面３０−３３のいずれか１項に記載の方法。
【０１８４】
第３５の側面では、ユーザの姿勢は、頭部姿勢、眼姿勢、または身体姿勢を含む、側面３１−３４のいずれか１項に記載の方法。
【０１８５】
第３６の側面では、距離を計算するステップは、第１の位置と更新された位置との間の変位を計算するステップを含む、側面３０−３５のいずれか１項に記載の方法。
【０１８６】
第３７の側面では、閾値距離は、ユーザによって規定される、側面３０−３６のいずれか１項に記載の方法。
【０１８７】
第３８の側面では、ユーザに、標的仮想オブジェクトを第２の位置に表示するステップは、標的仮想オブジェクトが他のオブジェクトに触れる前に、標的仮想オブジェクトと関連付けられた配向を決定するステップと、ユーザに、第２の位置における配向を伴って、標的仮想オブジェクトを表示するステップとを含む、側面３０−３７のいずれか１項に記載の方法。
【０１８８】
第３９の側面では、ユーザに、標的仮想オブジェクトを第２の位置に表示するステップは、第１の位置における標的仮想オブジェクトと関連付けられた配向を決定するステップと、ユーザに、第２の位置における配向を伴って、標的仮想オブジェクトを表示するステップとを含む、側面１−３８のいずれか１項に記載の方法。
【０１８９】
第４０の側面では、標的仮想オブジェクトを３次元（３Ｄ）環境内の別のオブジェクトから結び付け解除するための方法であって、コンピュータハードウェアを備える、拡張現実（ＡＲ）システムの制御下で、ＡＲシステムは、ユーザの動眼視野（ＦＯＲ）内のオブジェクトとのユーザ相互作用を可能にするように構成され、ＦＯＲは、ユーザによってＡＲシステムを介して知覚されることが可能なユーザの周囲の環境の一部を構成し、標的仮想オブジェクトの選択を受信するステップであって、標的仮想オブジェクトは、ユーザのＦＯＲ内の第１の位置と関連付けられ、標的仮想オブジェクトの少なくとも一部は、別のオブジェクトに触れている、ステップと、ユーザに、標的仮想オブジェクトと関連付けられた焦点インジケータを表示するステップと、ユーザから、標的仮想オブジェクトを他のオブジェクトから結び付け解除するためのインジケーションを受信するステップと、ユーザに、少なくとも部分的に、インジケーションに基づいて、焦点インジケータを更新された位置に表示するステップと、インジケーションが標的仮想オブジェクトを他のオブジェクトから結び付け解除するための閾値条件を満たすかどうかを決定するステップと、閾値条件が満たされることの決定に応答して、ユーザに、標的仮想オブジェクトを焦点インジケータの更新された位置と関連付けられた第２の位置に表示するステップと、閾値条件が満たされないことの決定に応答して、ユーザに、標的仮想オブジェクトを第１の位置に表示するステップとを含む、方法。
【０１９０】
第４１の側面では、標的仮想オブジェクトの選択を受信するステップは、ユーザの姿勢の変化を検出するステップまたはユーザ入力デバイスから入力を受信するステップのうちの少なくとも１つを含む、側面４０に記載の方法。
【０１９１】
第４２の側面では、他のオブジェクトは、物理的オブジェクトまたは仮想オブジェクトのうちの少なくとも１つを含む、側面４０−４１のいずれか１項に記載の方法。
【０１９２】
第４３の側面では、他のオブジェクトは、壁またはテーブルを含む、側面４２に記載の方法。
【０１９３】
第４４の側面では、標的仮想オブジェクトを結び付け解除するためのインジケーションを受信するステップは、ユーザ入力デバイスの移動を検出するステップ、ユーザ入力デバイス上の手ジェスチャを検出するステップ、またはユーザの姿勢の変化を検出するステップのうちの少なくとも１つを含む、側面４０−４３のいずれか１項に記載の方法。
【０１９４】
第４５の側面では、ユーザの姿勢は、頭部姿勢、眼姿勢、または身体姿勢を含む、側面４１−４４のいずれか１項に記載の方法。
【０１９５】
第４６の側面では、標的仮想オブジェクトを他のオブジェクトから結び付け解除するための閾値条件は、第１の位置と更新された位置との間の距離が、閾値距離以上であること、第１の位置から更新された位置に移動するための速度が、閾値速度以上であること、第１の位置から離れるように移動するための加速が、閾値加速以上であること、または第１の位置から離れるように移動するための躍度が、閾値躍度以上であることのうちの少なくとも１つを含む、側面４１−４５のいずれか１項に記載の方法。
【０１９６】
第４７の側面では、ユーザに、標的仮想オブジェクトを第２の位置に表示するステップは、標的仮想オブジェクトが他のオブジェクトに触れる前に、標的仮想オブジェクトと関連付けられた配向を決定するステップと、ユーザに、第２の位置における配向を伴って、標的仮想オブジェクトを表示するステップとを含む、側面４１−４６のいずれか１項に記載の方法。
【０１９７】
第４８の側面では、ユーザに、標的仮想オブジェクトを第２の位置に表示するステップは、第１の位置における標的仮想オブジェクトと関連付けられた配向を決定するステップと、ユーザに、第２の位置における配向を伴って、標的仮想オブジェクトを表示するステップとを含む、側面４１−４７のいずれか１項に記載の方法。
【０１９８】
第４９の側面では、標的仮想オブジェクトをユーザの３次元（３Ｄ）環境内の別のオブジェクトから結び付け解除するための方法であって、コンピュータハードウェアを備える、拡張現実（ＡＲ）システムの制御下で、ＡＲシステムは、ユーザの３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、標的仮想オブジェクトの選択を受信するステップであって、標的仮想オブジェクトは、初期位置では、３Ｄ環境内の別のオブジェクトに結び付けられている、ステップと、ユーザに、初期位置における標的仮想オブジェクトと関連付けられた焦点インジケータを表示するステップと、ユーザから、標的仮想オブジェクトを他のオブジェクトから結び付け解除するためのインジケーションを受信するステップと、ユーザに、少なくとも部分的に、インジケーションに基づいて、焦点インジケータを更新された位置に表示するステップと、インジケーションが標的仮想オブジェクトを他のオブジェクトから結び付け解除するための閾値条件を満たすかどうかを決定するステップと、閾値条件が満たされることの決定に応答して、少なくとも部分的に、インジケーションに基づいて、標的仮想オブジェクトを結び付け解除するステップと、閾値条件が満たされないことの決定に応答して、ユーザに、標的仮想オブジェクトを初期位置に表示するステップとを含む、方法。
【０１９９】
第５０の側面では、標的仮想オブジェクトの選択を受信するステップは、ユーザの姿勢の変化を検出するステップまたはユーザ入力デバイスから入力を受信するステップのうちの少なくとも１つを含む、側面４９に記載の方法。
【０２００】
第５１の側面では、他のオブジェクトは、物理的オブジェクトまたは仮想オブジェクトのうちの少なくとも１つを含む、側面４９−５０のいずれか１項に記載の方法。
【０２０１】
第５２の側面では、他のオブジェクトは、垂直表面または水平表面を含む、側面５１に記載の方法。
【０２０２】
第５３の側面では、標的仮想オブジェクトを他のオブジェクトから結び付け解除するためのインジケーションを受信するステップは、ユーザ入力デバイスの移動を検出するステップ、ユーザ入力デバイス上の手ジェスチャを検出するステップ、またはユーザの姿勢の変化を検出するステップのうちの少なくとも１つを含む、側面４９−５２のいずれか１項に記載の方法。
【０２０３】
第５４の側面では、標的仮想オブジェクトを他のオブジェクトから結び付け解除するための閾値条件は、初期位置と更新された位置との間の距離が、閾値距離以上であること、初期位置から更新された位置に移動するための速度が、閾値速度以上であること、初期位置から離れるように移動するための加速が、閾値加速以上であること、または初期位置から離れるように移動するための躍度が、閾値躍度以上であるこのうちの少なくとも１つを含む、側面４９−５３のいずれか１項に記載の方法。
【０２０４】
第５５の側面では、標的仮想オブジェクトを結び付け解除するステップは、物理的力をシミュレートすることによって実施される、側面４９−５４のいずれか１項に記載の方法。
【０２０５】
第５６の側面では、物理的力は、重力、磁力、摩擦、または弾性のうちの少なくとも１つを含む、側面５５に記載の方法。
【０２０６】
第５７の側面では、コンピュータハードウェアを備える、拡張現実システムであって、側面３０−５６のいずれか１項に記載の方法を実施するように構成される、拡張現実システム。
【０２０７】
第５８の側面では、仮想オブジェクトを３次元（３Ｄ）環境内に自動的に再位置付けするための拡張現実（ＡＲ）システムであって、仮想コンテンツを３Ｄビュー内に提示するように構成される、ＡＲディスプレイと、ＡＲディスプレイと通信する、ハードウェアプロセッサであって、ユーザの３Ｄ環境内の標的仮想オブジェクトを識別し、標的仮想オブジェクトは、第１の場所および第１の配向を表す１つのベクトルを割り当てられ、標的仮想オブジェクトを行先オブジェクトに結び付けるためのインジケーションを受信し、行先オブジェクトは、第２の場所および第２の配向を表す少なくとも１つのベクトルを割り当てられ、少なくとも部分的に、第１の場所および第２の場所に基づいて、標的仮想オブジェクトと行先オブジェクトとの間の軌道を計算し、標的仮想オブジェクトを軌道に沿って行先オブジェクトに向かって移動させ、標的仮想オブジェクトの現在の場所を追跡し、少なくとも部分的に、標的仮想オブジェクトの現在の場所および第２の場所に基づいて、標的仮想オブジェクトと行先オブジェクトとの間の距離を計算し、標的仮想オブジェクトと行先仮想オブジェクトとの距離が閾値距離未満であるかどうかを決定し、距離が閾値距離未満またはそれと等しいことの比較に応答して、自動的に、標的仮想オブジェクトを行先オブジェクトに結び付け、標的仮想オブジェクトを第２の配向に配向し、ＡＲディスプレイによって、標的仮想オブジェクトを第２の場所に第２の配向を伴ってレンダリングし、標的仮想オブジェクトは、行先オブジェクト上にオーバーレイされるようにプログラムされる、ハードウェアプロセッサとを備える、ＡＲシステム。
【０２０８】
第５９の側面では、ハードウェアプロセッサはさらに、標的仮想オブジェクト、行先オブジェクト、または環境のうちの少なくとも１つのアフォーダンスを分析するようにプログラムされ、標的仮想オブジェクトを自動的に配向するために、ハードウェアプロセッサは、標的仮想オブジェクトを回転させ、標的仮想オブジェクトの第１の法線と行先オブジェクトの第２の法線を整合させるようにプログラムされる、側面５８に記載のＡＲシステム。
【０２０９】
第６０の側面では、アフォーダンスは、機能、配向、タイプ、場所、形状、またはサイズのうちの少なくとも１つを含む、側面５９に記載のＡＲシステム。
【０２１０】
第６１の側面では、標的仮想オブジェクトを自動的に結び付けるために、ハードウェアプロセッサは、標的仮想オブジェクトと行先オブジェクトとの間の引力をシミュレートするようにプログラムされ、引力は、重力、弾性力、接着力、または磁力のうちの少なくとも１つを含む、側面５８−６０のいずれか１項に記載のＡＲシステム。
【０２１１】
第６２の側面では、距離を計算するために、ハードウェアプロセッサは、標的仮想オブジェクトの現在の場所と行先オブジェクトと関連付けられた第２の場所との間の変位を計算するようにプログラムされる、側面５８−６１のいずれか１項に記載のＡＲシステム。
【０２１２】
第６３の側面では、閾値距離は、ゼロである、側面６２に記載のＡＲシステム。
【０２１３】
第６４の側面では、標的仮想オブジェクトを結び付けるためのインジケーションは、ユーザ入力デバイスの作動またはユーザの姿勢のうちの少なくとも１つから決定される、側面５８−６３のいずれか１項に記載のＡＲシステム。
【０２１４】
第６５の側面では、ハードウェアプロセッサはさらに、焦点インジケータをユーザの現在の位置に割り当てるようにプログラムされ、ユーザの現在の位置は、少なくとも部分的に、ユーザの姿勢またはユーザ入力デバイスと関連付けられた位置に基づいて決定される、側面６４に記載のＡＲシステム。
【０２１５】
第６６の側面では、ハードウェアプロセッサはさらに、標的仮想オブジェクトを行先オブジェクトから結び付け解除するためのインジケーションを受信し、インジケーションは、ユーザの現在の位置の変化と関連付けられ、閾値条件が満たされることの決定に応答して、少なくとも部分的に、受信されたインジケーションに基づいて、標的仮想オブジェクトを結び付け解除するための閾値条件が満たされるかどうかを決定し、標的仮想オブジェクトを行先オブジェクトから結び付け解除し、標的仮想オブジェクトを行先オブジェクトと関連付けられた第２の場所から第３の場所に移動させ、標的仮想オブジェクトを第３の場所にレンダリングするようにプログラムされる、側面５８−６５のいずれか１項に記載のＡＲシステム。
【０２１６】
第６７の側面では、閾値条件が満たされることの決定に応答して、ハードウェアプロセッサはさらに、標的仮想オブジェクトのための第２の配向を留保しながら、標的仮想オブジェクトを第３の場所に移動させるようにプログラムされる、側面６６に記載のＡＲシステム。
【０２１７】
第６８の側面では、第３の場所は、ユーザの現在の位置に対応する、焦点インジケータの位置に対応する、側面６７に記載のＡＲシステム。
【０２１８】
第６９の側面では、標的仮想オブジェクトを他のオブジェクトから結び付け解除するための閾値条件は、標的仮想オブジェクトが行先オブジェクトに結び付けられる、第２の場所と、焦点インジケータの位置との間の第２の距離が、第２の閾値距離以上であること、第２の場所から焦点インジケータの位置まで移動させるための速度が、閾値速度以上であること、第２の場所から離れるように移動させるための加速が、閾値加速以上であること、または第２の場所から離れるように移動させるための躍度が、閾値躍度以上であることのうちの少なくとも１つを含む、側面６８に記載のＡＲシステム。
【０２１９】
第７０の側面では、ハードウェアプロセッサは、標的仮想オブジェクトを行先オブジェクトから結び付け解除するとき、物理的力をシミュレートするようにプログラムされ、物理的力は、摩擦または弾性のうちの少なくとも１つを含む、側面６９に記載のＡＲシステム。
【０２２０】
第７１の側面では、仮想オブジェクトを３次元（３Ｄ）環境内に自動的に再位置付けするための方法であって、コンピュータハードウェアを備える、拡張現実（ＡＲ）システムの制御下で、ＡＲシステムは、３Ｄ環境内のオブジェクトとのユーザ相互作用を可能にするように構成され、ユーザの３Ｄ環境内の標的仮想オブジェクトを識別するステップであって、標的仮想オブジェクトは、第１の位置および第１の配向を有する、ステップと、標的仮想オブジェクトを行先オブジェクトに対して再位置付けするためのインジケーションを受信するステップと、標的仮想オブジェクトを再位置付けするためのパラメータを識別するステップと、３Ｄ環境、標的仮想オブジェクト、および行先オブジェクトのうちの少なくとも１つと関連付けられたアフォーダンスを分析するステップと、アフォーダンスに基づいて、標的仮想オブジェクトを再位置付けするためのパラメータの値を計算するステップと、標的仮想オブジェクトを再位置付けするためのパラメータの値に基づいて、標的仮想オブジェクトのための第２の位置および第２の配向ならびに標的仮想オブジェクトの移動を決定するステップと、標的仮想オブジェクトを第２の位置および第２の配向ならびに第１の位置および第１の配向から第２の位置および第２の配向に到達するための標的仮想オブジェクトの移動にレンダリングするステップとを含む、方法。
【０２２１】
第７２の側面では、標的オブジェクトを再位置付けするステップは、標的オブジェクトを行先オブジェクトに結び付けるステップ、標的オブジェクトを再配向するステップ、または標的オブジェクトを行先オブジェクトから結び付け解除するステップのうちの少なくとも１つを含む、側面７１に記載の方法。
【０２２２】
第７３の側面では、行先オブジェクトは、物理的オブジェクトである、側面７１−７２のいずれか１項に記載の方法。
【０２２３】
第７４の側面では、標的仮想オブジェクトを再位置付けするためのインジケーションが閾値条件を満たすかどうかを決定するステップと、インジケーションが閾値条件を満たすことの決定に応答して、該計算、決定、およびレンダリングを実施するステップとをさらに含む、側面７１−７３のいずれか１項に記載の方法。
【０２２４】
第７５の側面では、閾値条件は、標的仮想オブジェクトと行先オブジェクトとの間の距離を含む、側面７４のいずれか１項に記載の方法。
【０２２５】
第７６の側面では、１つ以上の物理的属性が、標的仮想オブジェクトに割り当てられ、標的仮想オブジェクトの移動は、標的仮想オブジェクトの物理的属性に基づいて、標的仮想オブジェクト、行先オブジェクト、および環境の相互作用をシミュレートすることによって決定される、側面７１−７５のいずれか１項に記載の方法。
【０２２６】
第７７の側面では、標的仮想オブジェクトに割り当てられる１つ以上の物理的属性は、質量、サイズ、密度、位相、硬度、弾性、または電磁属性のうちの少なくとも１つを含む、側面７６に記載の方法。
（他の考慮点）
【０２２７】
本明細書に説明される、ならびに／または添付される図に描写されるプロセス、方法、およびアルゴリズムはそれぞれ、具体的かつ特定のコンピュータ命令を実行するように構成される、１つ以上の物理的コンピューティングシステム、ハードウェアコンピュータプロセッサ、特定用途向け回路、および／もしくは電子ハードウェアによって実行される、コードモジュールにおいて具現化され、それによって完全もしくは部分的に自動化され得る。例えば、コンピューティングシステムは、具体的コンピュータ命令とともにプログラムされた汎用コンピュータ（例えば、サーバ）または専用コンピュータ、専用回路等を含むことができる。コードモジュールは、実行可能プログラムにコンパイルおよびリンクされ得る、動的リンクライブラリ内にインストールされ得る、または解釈されるプログラミング言語において書き込まれ得る。いくつかの実装では、特定の動作および方法が、所与の機能に特有の回路によって実施され得る。
【０２２８】
さらに、本開示の機能性のある実装は、十分に数学的、コンピュータ的、または技術的に複雑であるため、（適切な特殊化された実行可能命令を利用する）特定用途向けハードウェアまたは１つ以上の物理的コンピューティングデバイスは、例えば、関与する計算の量もしくは複雑性に起因して、または結果を実質的にリアルタイムで提供するために、機能性を実施する必要があり得る。例えば、ビデオは、多くのフレームを含み、各フレームは、数百万のピクセルを有し得、具体的にプログラムされたコンピュータハードウェアは、商業的に妥当な時間量において所望の画像処理タスクまたは用途を提供するようにビデオデータを処理する必要がある。
【０２２９】
コードモジュールまたは任意のタイプのデータは、ハードドライブ、ソリッドステートメモリ、ランダムアクセスメモリ（ＲＡＭ）、読取専用メモリ（ＲＯＭ）、光学ディスク、揮発性もしくは不揮発性記憶装置、同一物の組み合わせ、および／または同等物を含む、物理的コンピュータ記憶装置等の任意のタイプの非一過性コンピュータ可読媒体上に記憶され得る。本方法およびモジュール（またはデータ）はまた、無線ベースおよび有線／ケーブルベースの媒体を含む、種々のコンピュータ可読伝送媒体上で生成されたデータ信号として（例えば、搬送波または他のアナログもしくはデジタル伝搬信号の一部として）伝送され得、種々の形態（例えば、単一もしくは多重化アナログ信号の一部として、または複数の離散デジタルパケットもしくはフレームとして）をとり得る。開示されるプロセスまたはプロセスステップの結果は、任意のタイプの非一過性有形コンピュータ記憶装置内に持続的もしくは別様に記憶され得る、またはコンピュータ可読伝送媒体を介して通信され得る。
【０２３０】
本明細書に説明される、および／または添付される図に描写されるフロー図における任意のプロセス、ブロック、状態、ステップ、もしくは機能性は、プロセスにおいて具体的機能（例えば、論理もしくは算術）またはステップを実装するための１つ以上の実行可能命令を含む、コードモジュール、セグメント、またはコードの一部を潜在的に表すものとして理解されたい。種々のプロセス、ブロック、状態、ステップ、または機能性は、組み合わせられる、再配列される、追加される、削除される、修正される、または別様に本明細書に提供される例証的実施例から変更されることができる。いくつかの実施形態では、付加的または異なるコンピューティングシステムもしくはコードモジュールが、本明細書に説明される機能性のいくつかまたは全てを実施し得る。本明細書に説明される方法およびプロセスはまた、任意の特定のシーケンスに限定されず、それに関連するブロック、ステップ、または状態は、適切な他のシーケンスで、例えば、連続して、並行して、またはある他の様式で実施されることができる。タスクまたはイベントが、開示される例示的実施形態に追加される、またはそれから除去され得る。さらに、本明細書に説明される実装における種々のシステムコンポーネントの分離は、例証を目的とし、全ての実装においてそのような分離を要求するものとして理解されるべきではない。説明されるプログラムコンポーネント、方法、およびシステムは、概して、単一のコンピュータ製品においてともに統合される、または複数のコンピュータ製品にパッケージ化され得ることを理解されたい。多くの実装変形例が、可能である。
【０２３１】
本プロセス、方法、およびシステムは、ネットワーク（または分散）コンピューティング環境において実装され得る。ネットワーク環境は、企業全体コンピュータネットワーク、イントラネット、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、クラウドコンピューティングネットワーク、クラウドソースコンピューティングネットワーク、インターネット、およびワールドワイドウェブを含む。ネットワークは、有線もしくは無線ネットワークまたは任意の他のタイプの通信ネットワークであり得る。
【０２３２】
本開示のシステムおよび方法は、それぞれ、いくつかの革新的側面を有し、そのうちのいかなるものも、本明細書に開示される望ましい属性に単独で関与しない、またはそのために要求されない。上記に説明される種々の特徴およびプロセスは、相互に独立して使用され得る、または種々の方法で組み合わせられ得る。全ての可能な組み合わせおよび副次的組み合わせが、本開示の範囲内に該当することが意図される。本開示に説明される実装の種々の修正が、当業者に容易に明白であり得、本明細書に定義される一般原理は、本開示の精神または範囲から逸脱することなく、他の実装に適用され得る。したがって、請求項は、本明細書に示される実装に限定されることを意図されず、本明細書に開示される本開示、原理、および新規の特徴と一貫する最も広い範囲を与えられるべきである。
【０２３３】
別個の実装の文脈において本明細書に説明されるある特徴はまた、単一の実装における組み合わせにおいて実装されることができる。逆に、単一の実装の文脈において説明される種々の特徴もまた、複数の実装において別個に、または任意の好適な副次的組み合わせにおいて実装されることができる。さらに、特徴がある組み合わせにおいて作用するものとして上記に説明され、さらに、そのようなものとして最初に請求され得るが、請求される組み合わせからの１つ以上の特徴は、いくつかの場合では、組み合わせから削除されることができ、請求される組み合わせは、副次的組み合わせまたは副次的組み合わせの変形例を対象とし得る。いかなる単一の特徴または特徴のグループも、あらゆる実施形態に必要もしくは必須ではない。
【０２３４】
とりわけ、「〜できる（ｃａｎ）」、「〜し得る（ｃｏｕｌｄ）」、「〜し得る（ｍｉｇｈｔ）」、「〜し得る（ｍａｙ）」、「例えば（ｅ．ｇ．）」、および同等物等、本明細書で使用される条件文は、別様に具体的に記載されない限り、または使用されるような文脈内で別様に理解されない限り、概して、ある実施形態がある特徴、要素、および／またはステップを含む一方、他の実施形態がそれらを含まないことを伝えることが意図される。したがって、そのような条件文は、概して、特徴、要素、および／もしくはステップが、１つ以上の実施形態に対していかようにも要求されること、または１つ以上の実施形態が、著者の入力または促しの有無を問わず、これらの特徴、要素、および／もしくはステップが任意の特定の実施形態において含まれる、もしくは実施されるべきかどうかを決定するための論理を必然的に含むことを示唆することを意図されない。用語「〜を備える」、「〜を含む」、「〜を有する」、および同等物は、同義語であり、非限定的方式で包括的に使用され、付加的要素、特徴、行為、動作等を除外しない。また、用語「または」は、その包括的意味において使用され（およびその排他的意味において使用されず）、したがって、例えば、要素のリストを接続するために使用されると、用語「または」は、リスト内の要素のうちの１つ、いくつか、または全てを意味する。加えて、本願および添付される請求項で使用されるような冠詞「ａ」、「ａｎ」、および「ｔｈｅ」は、別様に規定されない限り、「１つ以上の」もしくは「少なくとも１つ」を意味するように解釈されるべきである。
【０２３５】
本明細書で使用されるように、項目のリスト「のうちの少なくとも１つ」を指す語句は、単一の要素を含む、それらの項目の任意の組み合わせを指す。ある実施例として、「Ａ、Ｂ、またはＣのうちの少なくとも１つ」は、Ａ、Ｂ、Ｃ、ＡおよびＢ、ＡおよびＣ、ＢおよびＣ、ならびにＡ、Ｂ、およびＣを網羅することが意図される。語句「Ｘ、Ｙ、およびＺのうちの少なくとも１つ」等の接続文は、別様に具体的に記載されない限り、概して、項目、用語等がＸ、Ｙ、またはＺのうちの少なくとも１つであり得ることを伝えるために使用されるような文脈で別様に理解される。したがって、そのような接続文は、概して、ある実施形態が、Ｘのうちの少なくとも１つ、Ｙのうちの少なくとも１つ、およびＺのうちの少なくとも１つがそれぞれ存在するように要求することを示唆することを意図されない。
【０２３６】
同様に、動作は、特定の順序で図面に描写され得るが、これは、望ましい結果を達成するために、そのような動作が示される特定の順序で、もしくは連続的順序で実施される、または全ての図示される動作が実施される必要はないと認識されるべきである。さらに、図面は、フローチャートの形態で１つ以上の例示的プロセスを図式的に描写し得る。しかしながら、描写されない他の動作も、図式的に図示される例示的方法およびプロセス内に組み込まれることができる。例えば、１つ以上の付加的動作が、図示される動作のいずれかの前に、その後に、それと同時に、またはその間に実施されることができる。加えて、動作は、他の実装において再配列される、または再順序付けられ得る。ある状況では、マルチタスクおよび並列処理が、有利であり得る。さらに、上記に説明される実装における種々のシステムコンポーネントの分離は、全ての実装におけるそのような分離を要求するものとして理解されるべきではなく、説明されるプログラムコンポーネントおよびシステムは、概して、単一のソフトウェア製品においてともに統合される、または複数のソフトウェア製品にパッケージ化され得ることを理解されたい。加えて、他の実装も、以下の請求項の範囲内である。いくつかの場合では、請求項に列挙されるアクションは、異なる順序で実施され、依然として、望ましい結果を達成することができる。
【図１】
2020161158.tif 000002
【図２】
2020161158.tif 000003
【図３】
2020161158.tif 000004
【図４】
2020161158.tif 000005
【図５】
2020161158.tif 000006
【図６】
2020161158.tif 000007
【図７】
2020161158.tif 000008
【図８】
2020161158.tif 000009
【図９】
2020161158.tif 000010
【図１０】
2020161158.tif 000011
【図１１】
2020161158.tif 000012
【図１２】
2020161158.tif 000013
【図１３】
2020161158.tif 000014
【図１４Ａ】
2020161158.tif 000015
【図１４Ｂ】
2020161158.tif 000016
【図１４Ｃ】
2020161158.tif 000017
【図１４Ｄ】
2020161158.tif 000018
【図１５Ａ】
2020161158.tif 000019
【図１５Ｂ】
2020161158.tif 000020
【図１５Ｃ】
2020161158.tif 000021
【図１５Ｄ】
2020161158.tif 000022
【図１５Ｅ】
2020161158.tif 000023
【図１５Ｆ】
2020161158.tif 000024
【図１５Ｇ】
2020161158.tif 000025
【図１５Ｈ】
2020161158.tif 000026
【図１６】
2020161158.tif 000027
【図１７】
2020161158.tif 000028
【外国語明細書】
2020161158000001.pdf