IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マジック リープ, インコーポレイテッドの特許一覧

特許7339392複合現実環境における仮想ユーザ入力制御
<>
  • 特許-複合現実環境における仮想ユーザ入力制御 図1
  • 特許-複合現実環境における仮想ユーザ入力制御 図2
  • 特許-複合現実環境における仮想ユーザ入力制御 図3
  • 特許-複合現実環境における仮想ユーザ入力制御 図4
  • 特許-複合現実環境における仮想ユーザ入力制御 図5
  • 特許-複合現実環境における仮想ユーザ入力制御 図6
  • 特許-複合現実環境における仮想ユーザ入力制御 図7
  • 特許-複合現実環境における仮想ユーザ入力制御 図8
  • 特許-複合現実環境における仮想ユーザ入力制御 図9
  • 特許-複合現実環境における仮想ユーザ入力制御 図10
  • 特許-複合現実環境における仮想ユーザ入力制御 図11
  • 特許-複合現実環境における仮想ユーザ入力制御 図12
  • 特許-複合現実環境における仮想ユーザ入力制御 図13
  • 特許-複合現実環境における仮想ユーザ入力制御 図14
  • 特許-複合現実環境における仮想ユーザ入力制御 図15
  • 特許-複合現実環境における仮想ユーザ入力制御 図16
  • 特許-複合現実環境における仮想ユーザ入力制御 図17
  • 特許-複合現実環境における仮想ユーザ入力制御 図18
  • 特許-複合現実環境における仮想ユーザ入力制御 図19
  • 特許-複合現実環境における仮想ユーザ入力制御 図20
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-28
(45)【発行日】2023-09-05
(54)【発明の名称】複合現実環境における仮想ユーザ入力制御
(51)【国際特許分類】
   G06F 3/01 20060101AFI20230829BHJP
   G06F 3/0482 20130101ALI20230829BHJP
   G06T 19/00 20110101ALI20230829BHJP
【FI】
G06F3/01 510
G06F3/0482
G06T19/00 600
【請求項の数】 20
【外国語出願】
(21)【出願番号】P 2022079580
(22)【出願日】2022-05-13
(62)【分割の表示】P 2019528510の分割
【原出願日】2017-12-01
(65)【公開番号】P2022097726
(43)【公開日】2022-06-30
【審査請求日】2022-05-13
(31)【優先権主張番号】62/430,279
(32)【優先日】2016-12-05
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/430,308
(32)【優先日】2016-12-05
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】514108838
【氏名又は名称】マジック リープ, インコーポレイテッド
【氏名又は名称原語表記】Magic Leap,Inc.
【住所又は居所原語表記】7500 W SUNRISE BLVD,PLANTATION,FL 33322 USA
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【弁理士】
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【弁理士】
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【弁護士】
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】エイドリアン ケーラー
(72)【発明者】
【氏名】ジョン アダム クロストン
【審査官】岩橋 龍太郎
(56)【参考文献】
【文献】特開2013-172432(JP,A)
【文献】特開2016-148968(JP,A)
【文献】特開2014-192838(JP,A)
【文献】特開2012-090077(JP,A)
【文献】特開2006-146803(JP,A)
【文献】特開2011-209965(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01-3/04895
H04Q 9/00-9/16
G06T 19/00-19/20
(57)【特許請求の範囲】
【請求項1】
複合現実環境において仮想遠隔制御装置を提供するためのウェアラブルシステムであって、前記ウェアラブルシステムは、
仮想画像をユーザに提示するための複合現実ディスプレイと、
前記ユーザの環境を結像するように構成される外向きに面した結像システムと、
ハードウェアプロセッサであって、
入手された画像に基づいて、親デバイスと関連付けられた物理的遠隔装置を識別することと、
少なくとも部分的に、前記物理的遠隔装置の仕様に基づいて、仮想遠隔装置を生成することと、
前記ディスプレイに前記仮想遠隔装置をレンダリングさせることと、
前記ディスプレイに焦点インジケータをレンダリングさせることであって、前記レンダリングされた焦点インジケータは、前記仮想遠隔装置と前記親デバイスを接続することにより、前記仮想遠隔装置が前記親デバイスと関連付けられていることを前記レンダリングされた焦点インジケータが識別するようにする、ことと、
前記親デバイスとの相互作用を示す前記仮想遠隔装置の作動を識別することと、
命令を前記親デバイスに伝送し、前記親デバイスに、前記物理的遠隔装置が作動されるかのように機能を実施させることと
を行うようにプログラムされる、ハードウェアプロセッサと
を備える、ウェアラブルシステム。
【請求項2】
前記物理的遠隔装置を識別するために、前記ハードウェアプロセッサは、
特色特徴点アルゴリズム、単語の袋タイプ検索、またはニューラルネットワークアルゴリズムのうちの少なくとも1つを含む、1つ以上のコンピュータビジョンアルゴリズムを使用して、前記入手された画像を分析し、前記物理的遠隔装置を認識する
ようにプログラムされる、請求項1に記載のシステム。
【請求項3】
前記ハードウェアプロセッサは、
前記親デバイスと通信するように構成されるセンサによって受信された信号に基づいて、前記物理的遠隔装置を識別するように構成される、請求項1に記載のシステム。
【請求項4】
前記仮想遠隔装置は、空間のアクティブ体積と関連付けられた仮想ボタンを備える、請求項1に記載のシステム。
【請求項5】
前記仮想ボタンは、
前記仮想ボタンとの前記ユーザの相互作用を追跡するように構成されるアクティブ表面と、
ユーザインターフェースアクションをトリガするためのトリガ表面と
を備える、請求項4に記載のシステム。
【請求項6】
前記仮想ボタンはさらに、解除表面を備える、請求項5に記載のシステム。
【請求項7】
前記仮想遠隔装置のために仮想ボタンのレイアウトが決定され、前記仮想ボタンは、前記物理的遠隔装置の制御要素と関連付けられる、請求項1に記載のシステム。
【請求項8】
前記仮想遠隔装置の作動を識別するために、前記ハードウェアプロセッサは、
ユーザ相互作用と関連付けられた速度を決定するように構成される、請求項1に記載のシステム。
【請求項9】
複合現実環境において仮想遠隔制御装置を提供するための方法であって、前記方法は、
ユーザのウェアラブルデバイスを介して、入手された画像に基づいて、親デバイスと関連付けられた物理的遠隔装置を識別することと、
少なくとも部分的に、前記物理的遠隔装置の仕様に基づいて、仮想遠隔装置を生成することと、
前記ウェアラブルデバイスのディスプレイに前記仮想遠隔装置をレンダリングさせることと、
前記ディスプレイに焦点インジケータをレンダリングさせることであって、前記レンダリングされた焦点インジケータは、前記仮想遠隔装置と前記親デバイスを接続することにより、前記仮想遠隔装置が前記親デバイスと関連付けられていることを前記レンダリングされた焦点インジケータが識別するようにする、ことと、
前記親デバイスとの相互作用を示す前記仮想遠隔装置の作動を識別することと、
命令を前記親デバイスに伝送し、前記親デバイスに、前記物理的遠隔装置が作動されるかのように機能を実施させることと
を含む、方法。
【請求項10】
前記物理的遠隔装置を識別することは、
特色特徴点アルゴリズム、単語の袋タイプ検索、またはニューラルネットワークアルゴリズムのうちの少なくとも1つを含む、1つ以上のコンピュータビジョンアルゴリズムを使用して、前記入手された画像を分析し、前記物理的遠隔装置を認識すること
を含む、請求項9に記載の方法。
【請求項11】
前記親デバイスと通信するように構成されるセンサによって受信された信号に基づいて、前記物理的遠隔装置を識別することをさらに含む、請求項9に記載の方法。
【請求項12】
前記仮想遠隔装置は、空間のアクティブ体積と関連付けられた仮想ボタンを備える、請求項9に記載の方法。
【請求項13】
前記仮想ボタンは、
前記仮想ボタンとの前記ユーザの相互作用を追跡するように構成されるアクティブ表面と、
ユーザインターフェースアクションをトリガするためのトリガ表面と
を備える、請求項12に記載の方法。
【請求項14】
前記仮想ボタンはさらに、解除表面を備える、請求項13に記載の方法。
【請求項15】
前記仮想遠隔装置のために仮想ボタンのレイアウトが決定され、前記仮想ボタンは、前記物理的遠隔装置の制御要素と関連付けられる、請求項9に記載の方法。
【請求項16】
前記仮想遠隔装置の作動を識別することは、ユーザ相互作用と関連付けられた速度を決定することを含む、請求項9に記載の方法。
【請求項17】
命令を記憶している非一過性コンピュータ記憶媒体であって、前記命令は、1つ以上のプロセッサのウェアラブルシステムによって実行されると、前記1つ以上のプロセッサに、
入手された画像に基づいて、親デバイスと関連付けられた物理的遠隔装置を識別することと、
少なくとも部分的に、前記物理的遠隔装置の仕様に基づいて、仮想遠隔装置を生成することと、
前記ウェアラブルシステムのディスプレイに前記仮想遠隔装置をレンダリングさせることと、
前記ディスプレイに焦点インジケータをレンダリングさせることであって、前記レンダリングされた焦点インジケータは、前記仮想遠隔装置と前記親デバイスを接続することにより、前記仮想遠隔装置が前記親デバイスと関連付けられていることを前記レンダリングされた焦点インジケータが識別するようにする、ことと、
前記親デバイスとの相互作用を示す前記仮想遠隔装置の作動を識別することと、
命令を前記親デバイスに伝送し、前記親デバイスに、前記物理的遠隔装置が作動されるかのように機能を実施させることと
を実行させる、非一過性コンピュータ記憶媒体。
【請求項18】
前記仮想遠隔装置は、空間のアクティブ体積と関連付けられた仮想ボタンを備える、請求項17に記載の非一過性コンピュータ記憶媒体。
【請求項19】
前記物理的遠隔装置を識別することは、
特色特徴点アルゴリズム、単語の袋タイプ検索、またはニューラルネットワークアルゴリズムのうちの少なくとも1つを含む、1つ以上のコンピュータビジョンアルゴリズムを使用して、前記入手された画像を分析し、前記物理的遠隔装置を認識すること
を含む、請求項17に記載の非一過性コンピュータ記憶媒体。
【請求項20】
前記仮想遠隔装置の作動を識別するために、前記命令は、前記1つ以上のプロセッサに、ユーザ相互作用と関連付けられた速度を決定させる、請求項17に記載の非一過性コンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は、2016年12月5日に出願され“UNIVERSAL VISUAL REMOTE”と題された米国仮出願第62/430,308号および2016年12月5日に出願され“MECHANISM FOR A VIRTUAL BUTTON”と題された米国仮出願第62/430,279号に対する35 U.S.C.§119(e)のもとでの優先権の利益を主張するものであり、これらの開示の全体は、参照により本明細書中に援用される。
【0002】
本開示は、仮想現実および拡張現実結像および可視化システムに関し、より具体的には、仮想ユーザ入力制御をレンダリングし、仮想ユーザ入力制御との相互作用を検出するステップに関する。
【背景技術】
【0003】
現代のコンピューティングおよびディスプレイ技術は、いわゆる「仮想現実」または「拡張現実」体験のためのシステムの開発を促進しており、デジタル的に再現された画像またはその一部が、現実であるように見える、またはそのように知覚され得る様式でユーザに提示される。仮想現実、すなわち、「VR」シナリオは、典型的には、他の実際の実世界の視覚的入力に対する透過性を伴わずに、デジタルまたは仮想画像情報の提示を伴い、拡張現実または「AR」シナリオは、典型的には、ユーザの周囲の実際の世界の可視化に対する拡張としてのデジタルまたは仮想画像情報の提示を伴う。複合現実または「MR」は、実および仮想世界をマージし、物理的および仮想オブジェクトが共存し、リアルタイムで相互作用する、新しい環境を生産することに関連する。結論から述べると、ヒトの視知覚系は、非常に複雑であって、他の仮想または実世界画像要素間における仮想画像要素の快適で、自然のような感覚で、かつ豊かな提示を促進する、VR、AR、およびMR技術の生産は、困難である。本明細書に開示されるシステムおよび方法は、VR、AR、およびMR技術に関連する種々の課題に対処する。
【発明の概要】
【課題を解決するための手段】
【0004】
仮想ユーザ入力制御をレンダリングし、仮想入力制御の作動を検出する種々の実施例が、説明される。
【0005】
一実施例として、ウェアラブルディスプレイシステムは、物理的遠隔装置または遠隔装置がコンピュータビジョン技法を使用してサービス提供するデバイスを自動的に認識することができる。ウェアラブルシステムは、ウェアラブルシステムのユーザによって視認可能かつ相互作用可能な仮想制御パネルを伴う、仮想遠隔装置を生成することができる。仮想遠隔装置は、物理的遠隔装置の機能性をエミュレートすることができる。ユーザは、例えば、親デバイスまたはその遠隔制御装置に目を向ける、または指差すことによって、または既知のデバイスのメニューから選択することによって、相互作用のための仮想遠隔装置を選択することができる。仮想遠隔装置は、物理的空間内の体積と関連づけられた仮想ボタンを含んでもよい。ウェアラブルシステムは、ユーザの身体の一部(例えば、ユーザの指)が仮想ボタンと関連付けられた体積を貫通したかどうかを決定することによって、仮想ボタンが作動されることを検出することができる。
本明細書は、例えば、以下の項目も提供する。
(項目1)
複合現実環境において仮想遠隔制御装置を提供するためのウェアラブルシステムであって、前記ウェアラブルシステムは、
仮想画像をユーザに提示するための複合現実ディスプレイと、
ユーザの環境を結像するように構成される外向きに面した結像システムと、
親デバイスと通信するように構成されるセンサと、
ハードウェアプロセッサであって、
前記外向きに面した結像システムによって入手された画像にアクセスすることと、
前記画像を分析し、前記親デバイスと関連付けられた物理的遠隔装置を識別することと、
前記物理的遠隔装置の仕様にアクセスすることと、
少なくとも部分的に、前記物理的遠隔装置の仕様に基づいて、仮想遠隔装置を生成することと、
前記ディスプレイに前記仮想遠隔装置をレンダリングさせることと、
前記親デバイスとの相互作用のための前記仮想遠隔装置の作動を受信することと、
命令を生成し、前記命令を前記親デバイスに伝送し、前記親デバイスに、前記物理的遠隔装置が作動されるかのように機能を実施させることと
を行うようにプログラムされる、ハードウェアプロセッサと
を備える、ウェアラブルシステム。
(項目2)
前記物理的遠隔装置を識別するために、前記ハードウェアプロセッサは、
特色特徴点アルゴリズム、単語の袋タイプ検索、またはニューラルネットワークアルゴリズムのうちの少なくとも1つを含む、1つ以上のコンピュータビジョンアルゴリズムを使用して、前記画像を分析し、前記物理的遠隔装置を認識する
ようにプログラムされる、項目1に記載のウェアラブルシステム。
(項目3)
前記ハードウェアプロセッサはさらに、少なくとも部分的に、前記外向きに面した結像システムによって入手された画像または前記親デバイスの存在を示す前記センサによって受信された信号に基づいて、前記親デバイスの存在を識別するようにプログラムされる、項目2に記載のウェアラブルシステム。
(項目4)
前記仕様は、前記物理的遠隔装置の制御要素の前記親デバイスの対応する機能へのマッピング、または前記物理的遠隔装置と前記親デバイスとの間の通信プロトコルのうちの少なくとも1つを含む、項目1に記載のウェアラブルシステム。
(項目5)
前記仮想遠隔装置を生成するために、前記ハードウェアプロセッサは、
少なくとも部分的に、前記仕様に基づいて、前記仮想遠隔装置のための仮想要素のレイアウトを決定することと、
前記仮想要素に対応する制御要素が前記物理的遠隔装置上で作動されるかのように、前記仮想遠隔装置上の仮想要素の作動が前記親デバイスを反応させ得るように、前記仮想遠隔装置の仮想要素と前記物理的遠隔装置の制御要素とを関連付けることと
を行うようにプログラムされる、項目4に記載のウェアラブルシステム。
(項目6)
前記ハードウェアプロセッサはさらに、
前記親デバイスと関連付けられた複数の候補仮想遠隔装置を決定することと、
少なくとも部分的に、前記ユーザの姿勢またはユーザ入力デバイスからのインジケーションに基づいて、前記複数の候補仮想遠隔装置の中の仮想遠隔装置を選択することと
を行うようにプログラムされる、項目1に記載のウェアラブルシステム。
(項目7)
前記センサは、赤外線光源を備え、前記命令は、赤外線データ協会通信規格または無線周波数通信規格に従って、生成され、前記親デバイスに伝送される、項目1に記載のウェアラブルシステム。
(項目8)
前記仮想遠隔装置は、仮想ボタンを備え、前記仮想ボタンは、空間の体積と関連付けられ、前記仮想ボタンとの前記ユーザの相互作用を追跡するように構成されるアクティブ表面と、ユーザインターフェースアクションをトリガするためのトリガ表面とを有する、項目1に記載のウェアラブルシステム。
(項目9)
前記アクティブ表面は、前記トリガ表面と平行関係にある、項目8に記載のウェアラブルシステム。
(項目10)
前記仮想遠隔装置の作動を受信するために、前記ハードウェアプロセッサは、
前記アクティブ表面の第1の位置を識別することと、
少なくとも部分的に、前記ユーザの移動に基づいて、前記アクティブ表面の第2の位置および移動を計算することと、
前記アクティブ表面の移動が前記トリガ表面に向かっており、前記アクティブ表面の第2の位置が前記トリガ表面の少なくとも一部と交差するとき、前記仮想ボタンを作動させること、または、前記アクティブ表面の移動が前記トリガ表面から離れており、前記アクティブ表面の第1の位置が前記トリガ表面の少なくとも一部と交差するとき、前記仮想ボタンを解除すること
を行うように構成される、項目8に記載のウェアラブルシステム。
(項目11)
前記仮想ボタンはさらに、解除表面を備え、前記ハードウェアプロセッサは、前記アクティブ表面の第2の位置が前記解除表面の少なくとも一部と交差するとき、前記仮想ボタンを解除するようにプログラムされる、項目10に記載のウェアラブルシステム。
(項目12)
前記アクティブ表面の移動を計算するために、前記ハードウェアプロセッサは、
前記ユーザの移動の速度ベクトルを計算することと、
前記アクティブ表面に対して法線方向の前記速度ベクトルの値、前記アクティブ表面と平行な前記速度ベクトルの値、または前記アクティブ表面に対して接線方向の前記速度ベクトルの値のうちの少なくとも1つに基づいて、前記アクティブ表面の速度を計算することと
を行うようにプログラムされる、項目10に記載のウェアラブルシステム。
(項目13)
前記ハードウェアプロセッサは、前記複合現実ディスプレイによるユーザへの提示のために、前記仮想ボタンの可視化を提供するようにプログラムされ、前記可視化は、少なくとも部分的に、前記アクティブ表面の移動に基づく、項目8に記載のウェアラブルシステム。
(項目14)
複合現実環境において仮想遠隔制御装置を提供するための方法であって、前記方法は、
ウェアラブルデバイスによって入手されたユーザの環境の画像にアクセスすることと、
前記画像を分析し、前記ユーザの環境内の標的デバイスを識別することと、
前記標的デバイスと関連付けられた仕様にアクセスすることであって、前記仕様は、少なくとも、物理的遠隔装置の制御要素と親デバイスの機能との間のマッピングを備える、ことと、
少なくとも部分的に、前記仕様に基づいて、仮想遠隔装置を生成することと、
前記ウェアラブルデバイスに前記仮想遠隔装置を複合現実環境にレンダリングさせることと、
前記親デバイスとの相互作用のための前記仮想遠隔装置の作動を検出することと、
命令を生成し、前記命令を前記親デバイスに伝送し、前記親デバイスに、前記物理的遠隔装置が作動されるかのように機能を実施させることと
を含む、方法。
(項目15)
前記標的デバイスは、前記物理的遠隔装置または前記親デバイスを備える、項目14に記載の方法。
(項目16)
前記標的デバイスを識別することは、特色特徴点アルゴリズム、単語の袋タイプ検索、またはニューラルネットワークアルゴリズムのうちの少なくとも1つを含む、1つ以上のコンピュータビジョンアルゴリズムを使用して、前記画像を分析し、前記標的デバイスを認識することを含む、項目14に記載の方法。
(項目17)
前記仮想遠隔装置を生成することは、
少なくとも部分的に、前記仕様に基づいて、前記仮想遠隔装置のための仮想要素のレイアウトを決定することと、
前記仮想要素に対応する制御要素が前記物理的遠隔装置上で作動されるかのように、前記仮想遠隔装置上の仮想要素の作動が前記親デバイスを反応させ得るように、前記仮想遠隔装置の仮想要素と前記物理的遠隔装置の制御要素とを関連付けることと
を含む、項目14に記載の方法。
(項目18)
前記仮想遠隔装置は、仮想ボタンを備え、前記仮想ボタンは、空間の体積と関連付けられ、前記仮想ボタンとの前記ユーザの相互作用を追跡するように構成されるアクティブ表面と、ユーザインターフェースアクションをトリガするためのトリガ表面とを有する、項目14に記載の方法。
(項目19)
前記仮想遠隔装置の作動を検出することは、
前記アクティブ表面の第1の位置を識別することと、
少なくとも部分的に、前記ユーザの移動に基づいて、前記アクティブ表面の第2の位置および移動を計算することと、
前記アクティブ表面の移動が前記トリガ表面に向かっており、前記アクティブ表面の第2の位置が前記トリガ表面の少なくとも一部と交差するとき、前記仮想ボタンを作動させること、または、前記アクティブ表面の移動が前記トリガ表面から離れており、前記アクティブ表面の第1の位置が前記トリガ表面の少なくとも一部と交差するとき、前記仮想ボタンを解除することと
を含む、項目14に記載の方法。
(項目20)
前記仮想ボタンはさらに、解除表面を備え、前記方法はさらに、前記アクティブ表面の第2の位置が前記解除表面の少なくとも一部と交差するとき、前記仮想ボタンを解除することを含む、項目19に記載の方法。
【0006】
本明細書に説明される主題の1つ以上の実装の詳細が、付随の図面および以下の説明に記載される。他の特徴、側面、および利点は、説明、図面、および請求項から明白となるであろう。本概要または以下の発明を実施するための形態のいずれも、本発明の主題の範囲を定義または限定することを主張するものではない。
【図面の簡単な説明】
【0007】
図1図1は、人物によって視認されるある物理的現実オブジェクトおよびある実際の現実オブジェクトを伴う、複合現実シナリオの例証を描写する。
【0008】
図2図2は、ウェアラブルディスプレイシステムの実施例を図式的に図示する。
【0009】
図3図3は、複数の深度平面を使用して3次元画像をシミュレートするためのアプローチの側面を図式的に図示する。
【0010】
図4図4は、画像情報をユーザに出力するための導波管スタックの実施例を図式的に図示する。
【0011】
図5図5は、導波管によって出力され得る、例示的出射ビームを示す。
【0012】
図6図6は、導波管装置と、光を導波管装置へまたはそこから光学的に結合するための光学結合器サブシステムと、多焦点立体ディスプレイ、画像、またはライトフィールドの生成において使用される、制御サブシステムとを含む、光学システムを示す、概略図である。
【0013】
図7図7は、ウェアラブルシステムの実施例のブロック図である。
【0014】
図8図8は、認識されるオブジェクトに関連して仮想コンテンツをレンダリングする方法の実施例のプロセスフロー図である。
【0015】
図9図9は、ウェアラブルシステムの別の実施例のブロック図である。
【0016】
図10図10は、ウェアラブルシステムへのユーザ入力を決定するための方法の実施例のプロセスフロー図である。
【0017】
図11図11は、仮想ユーザインターフェースと相互作用するための方法の実施例のプロセスフロー図である。
【0018】
図12図12は、拡張現実デバイスのユーザによって知覚されるような物理的環境の実施例を図示する。
【0019】
図13図13は、手のジェスチャを使用して、仮想遠隔装置と関連付けられた選択イベントを開始する実施例を図示する。
【0020】
図14図14は、選択イベントの間、仮想遠隔装置を作動させる実施例を図示する。
【0021】
図15図15は、閾値条件が満たされる場合、自動的に、仮想遠隔装置を隠す、または選択イベントを終了する実施例を図示する。
【0022】
図16図16は、仮想遠隔装置をレンダリングする例示的プロセスを図示する。
【0023】
図17図17は、ユーザによって仮想ボタンを押下する行為を検出する実施例を図示する。
【0024】
図18図18は、ユーザが仮想ボタンを上下にスライドさせることによって仮想ボタンを作動させる、実施例を図示する。
【0025】
図19図19は、ユーザが仮想タッチ表面を作動させる、実施例を図示する。
【0026】
図20図20は、複合現実ユーザインターフェース内の仮想要素との相互作用イベントを開始するための例示的プロセスを図示する。
【発明を実施するための形態】
【0027】
図面全体を通して、参照番号は、参照される要素間の対応を示すために再利用され得る。図面は、本明細書に説明される例示的実施形態を図示するために提供され、本開示の範囲を限定することを意図するものではない。
(概要)
【0028】
テレビ、オーディオシステム、ホームシアター、ホームセキュリティシステム、ドアベルまたはドアロック、空調装置および暖房装置、サーモスタット、照明システム(例えば、スマート電球)、ガレージドア開閉装置、または他の家電またはスマートデバイス等の多くのデバイス(親デバイスとも称される)は、遠隔制御装置によって動作されることができる。遠隔制御装置は、小型の手で保持されるデバイスから成る、物理的遠隔装置であってもよい。物理的遠隔装置は、親デバイスのユーザが、デバイスの基本機能をある距離から実施することを可能にする、ボタン(またはタッチ表面)を備えることができる。物理的遠隔装置は、赤外線(IR)信号等の種々の無線チャネルまたはBluetooth(登録商標)、Wi-Fi等の無線周波数(RF)信号を使用して、親デバイスと通信することができる。物理的遠隔装置と親デバイスとの間の通信は、赤外線データ協会(IrDA)または米国電気電子学会(IEEE)によって作成されたもの等の1つ以上の産業規格またはプロトコルによって統制され得る。
【0029】
経時的に、家電およびその対応する遠隔装置の数は、消費者の家庭内で増えつつある。ますます多くのデバイスが、ネットワークに接続され、遠隔制御装置を介して、そこから制御可能である(例えば、モノのインターネットに接続されるデバイス)。本状況は、異なるデバイスのために蓄積された遠隔装置の一部またはさらに全部によって生成された信号をエミュレートするようにプログラムされ得る、ユニバーサル遠隔制御デバイスの導入につながった。ユニバーサル遠隔制御デバイスは、スマートフォンまたはタブレットの一部であってもよい。例えば、スマートフォンは、ソフトウェアを使用して、物理的遠隔装置をエミュレートし、エミュレートされる物理的遠隔装置に適切な制御インターフェースと併せて、IR信号を生成することができる。
【0030】
しかしながら、拡張現実(AR)または複合現実(MR)環境では、物理的遠隔装置を物理的デバイス(スマートフォンまたはタブレット等)上にエミュレートすることは、頭部搭載型デバイス(HMD)が、小視野を有し得、ユーザが、親デバイスと相互作用するために、ユニバーサル遠隔制御デバイスを不快な場所に保持する必要があり得るため、非実践的であり得る。加えて、AR/MR環境内のユーザはまた、身体姿勢およびジェスチャを使用して、オブジェクトと相互作用することができ、したがって、ユニバーサル遠隔制御装置としての別個の物理的デバイスを必要としなくてもよい。
【0031】
本明細書に説明されるシステムおよび方法は、少なくとも部分的に、これらの課題を対象とする。例えば、ウェアラブルシステムは、物理的遠隔装置または遠隔装置がコンピュータビジョン技法を使用してサービス提供する親デバイスを自動的に認識することができる。加えて、ウェアラブルシステムは、ウェアラブルシステムのユーザによって視認可能かつ相互作用可能な制御パネルを伴う、仮想遠隔装置を生成することができる。ユーザは、身体姿勢または眼視線を使用して(例えば、親デバイスまたは物理的遠隔装置に目を向ける、または指差すことによって)、親デバイスまたは物理的遠隔装置を識別することができる。身体姿勢または眼視線を検出することに応じて、ウェアラブルシステムは、関連付けられた仮想遠隔装置をもたらすことができる。ユーザはまた、仮想遠隔装置を既知のデバイスのメニューから選択することができる。
【0032】
仮想遠隔装置は、1つ以上の仮想要素をその制御パネル上に含んでもよい。仮想要素は、仮想ボタン、仮想スライダ、仮想トグル、または仮想タッチ表面を含んでもよい。物理的遠隔装置またはユーザ入力デバイスと異なり、仮想遠隔装置は、ユーザ制御要素の作動が、直接、電気信号をトリガし、物理的遠隔装置またはユーザ入力デバイスから関連付けられたコンピューティングデバイスに送信させ得るようなユーザ制御要素(例えば、ボタンまたはタッチ表面)を有していない。有利には、いくつかの実施形態では、ユーザが仮想要素を作動させたことを検出するために、ウェアラブルシステムは、ユーザの身体の一部が仮想要素のアクティブ表面と交差したかどうかを検出することができる。ウェアラブルシステムは、ユーザの移動に基づいて、アクティブ表面の移動を計算することができる。例えば、アクティブ表面の移動の速度および変位は、ボタンを仮想的にタッチするために使用されている、ユーザの指の移動の一部であり得る。アクティブ表面が、ある閾値位置に到達すると、ウェアラブルシステムは、相互作用イベントを開始することができ、ウェアラブルシステムは、ユーザが仮想要素をアクティブ化したことを示す信号を生成する。例えば、ウェアラブルシステムは、アクティブ表面の変位が閾値条件を超えると、ユーザが仮想ボタンを押下したことを決定することができる。ユーザが、その指を後退させると、ウェアラブルシステムは、アクティブ表面をそのオリジナル位置(ユーザ相互作用前の)に向かって後方に移動させてもよい。アクティブ表面が、十分に後方に移動すると(別の閾値位置を超える等)、ウェアラブルシステムは、仮想ボタンの解除と関連付けられた別の相互作用イベントを生成してもよい。
(ウェアラブルシステムの3Dディスプレイの実施例)
【0033】
ウェアラブルシステム(本明細書では、拡張現実(AR)システムとも称される)は、2Dまたは3D仮想画像をユーザに提示するように構成されることができる。画像は、静止画像、ビデオのフレーム、ビデオ、それらの組み合わせ、または同等物であってもよい。ウェアラブルシステムは、単独で、または組み合わせて、ユーザ相互作用のために、VR、AR、またはMR環境を提示し得る、ウェアラブルデバイスを含むことができる。ウェアラブルデバイスは、頭部搭載型デバイス(HMD)であることができ、これは、ARデバイス(ARD)と同義的に使用される。さらに、本開示の目的のために、用語「AR」は、用語「MR」と同義的に使用される。
【0034】
図1は、人物によって視認されるある仮想現実オブジェクトおよびある物理的オブジェクトを伴う、複合現実シナリオの例証を描写する。図1では、MR場面100は、MR技術のユーザに、人々、木々、背景における建物、およびコンクリートプラットフォーム120を特徴とする、実世界公園状設定110が見えるように描写される。これらのアイテムに加え、MR技術のユーザはまた、実世界プラットフォーム120上に立っている、ロボット像130と、マルハナバチの擬人化のように見える、飛んでいる漫画状アバタキャラクタ140とが「見える」と知覚するが、これらの要素は、実世界には存在しない。
【0035】
3Dディスプレイが、深度の真の感覚、より具体的には、表面深度のシミュレートされた感覚を生成するために、ディスプレイの視野内の点毎に、その仮想深度に対応する遠近調節応答を生成することが望ましくあり得る。ディスプレイ点に対する遠近調節応答が、収束および立体視の両眼深度キューによって決定されるようなその点の仮想深度に対応しない場合、ヒトの眼は、遠近調節衝突を体験し、不安定な結像、有害な眼精疲労、頭痛、および遠近調節情報の不在下では、表面深度のほぼ完全な欠如をもたらし得る。
【0036】
VR、AR、およびMR体験は、複数の深度平面に対応する画像が視認者に提供されるディスプレイを有する、ディスプレイシステムによって提供されることができる。画像は、深度平面毎に異なってもよく(例えば、場面またはオブジェクトの若干異なる提示を提供する)、視認者の眼によって別個に集束され、それによって、異なる深度平面上に位置する場面に関する異なる画像特徴に合焦させるために要求される眼の遠近調節に基づいて、または合焦からずれている異なる深度平面上の異なる画像特徴を観察することに基づいて、ユーザに深度キューを提供することに役立ち得る。本明細書のいずれかに議論されるように、そのような深度キューは、信用できる深度の知覚を提供する。
【0037】
図2は、ウェアラブルシステム200の実施例を図示する。ウェアラブルシステム200は、ディスプレイ220とディスプレイ220の機能をサポートするための、種々の機械的および電子的モジュールおよびシステムとを含む。ディスプレイ220は、フレーム230に結合されてもよく、これは、ユーザ、装着者、または視認者210によって装着可能である。ディスプレイ220は、ユーザ210の眼の正面に位置付けられることができる。ディスプレイ220は、AR/VR/MRコンテンツをユーザに提示することができる。ディスプレイ220は、ユーザの頭部上に装着される、頭部搭載型ディスプレイを備えることができる。いくつかの実施形態では、スピーカ240が、フレーム230に結合され、ユーザの外耳道に隣接して位置付けられる(いくつかの実施形態では、示されない別のスピーカが、ユーザの他方の外耳道に隣接して位置付けられ、ステレオ/成形可能音制御を提供する)。ディスプレイ220は、音声認識を実施するために、オーディオストリームを環境から検出するためのオーディオセンサ(例えば、マイクロホン)を含むことができる。
【0038】
ウェアラブルシステム200は、外向きに面した結像システム464(図4に示される)を含むことができ、これは、ユーザの周囲の環境内の世界を観察する。ウェアラブルシステム200はまた、内向きに面した結像システム462(図4に示される)を含むことができ、これは、ユーザの眼移動を追跡することができる。内向きに面した結像システムは、片眼の移動または両眼の移動のいずれかを追跡してもよい。内向きに面した結像システム462は、フレーム230に取り付けられてもよく、処理モジュール260または270と電気通信してもよく、これは、内向きに面した結像システムによって入手された画像情報を処理し、例えば、ユーザ210の眼の瞳孔直径または配向、眼移動、または眼姿勢を決定してもよい。
【0039】
実施例として、ウェアラブルシステム200は、外向きに面した結像システム464または内向きに面した結像システム462を使用して、ユーザの姿勢の画像を入手することができる。画像は、静止画像、ビデオのフレーム、ビデオ、それらの組み合わせ、または同等物であってもよい。
【0040】
ウェアラブルシステム200はまた、物理的デバイス(テレビ、空調装置、または他の家電等)と通信するように構成される、センサ232を含むことができる。例えば、ウェアラブルシステム200は、物理的デバイスを制御するための仮想遠隔装置としての役割を果たし得る。センサ232は、ローカル処理およびデータモジュール270によって制御可能な赤外線光源であることができる。センサ232はまた、物理的デバイスと通信するための他の光学信号または電磁信号を放出することができる。センサ232と物理的デバイスとの間の通信は、1つ以上の産業規格に準拠してもよい。例えば、センサ232は、赤外線信号を放出するように構成される場合、センサ232と物理的デバイスとの間の通信は、赤外線データ協会(IrDA)によって設計されたプロトコルに従ってもよい。センサ232は、眼鏡のつる(イヤホン等)、ウェアラブルシステム200の鼻パッド、または頭部搭載型ディスプレイ上の他の場所または頭部搭載型ディスプレイの遠隔(例えば、ベルトパック上等)に位置することができる。図2における実施例は、1つのみのセンサ232を図示するが、いくつかの実施形態では、ディスプレイシステムは、複数のセンサ232と関連付けられてもよい。
【0041】
ディスプレイ220は、有線導線または無線コネクティビティ等によって、ローカルデータ処理モジュール260に動作可能に結合250され、これは、フレーム230に固定して取り付けられる、ユーザによって装着されるヘルメットまたは帽子に固定して取り付けられる、ヘッドホンに内蔵される、または別様にユーザ210に除去可能に取り付けられる(例えば、リュック式構成において、ベルト結合式構成において)等、種々の構成において搭載され得る。
【0042】
ローカル処理およびデータモジュール260は、ハードウェアプロセッサおよび不揮発性メモリ(例えば、フラッシュメモリ)等のデジタルメモリを備えてもよく、その両方とも、データの処理、キャッシュ、および記憶を補助するために利用され得る。データは、a)画像捕捉デバイス(例えば、内向きに面した結像システムまたは外向きに面した結像システム内のカメラ)、オーディオセンサ(例えば、マイクロホン)、慣性測定ユニット(IMU)、加速度計、コンパス、全地球測位システム(GPS)ユニット、無線デバイス、および/またはジャイロスコープ等の(例えば、フレーム230に動作可能に結合される、または別様にユーザ210に取り付けられ得る)センサから捕捉されるデータ、および/またはb)場合によっては処理または読出後にディスプレイ220の通過のために、遠隔処理モジュール280および/または遠隔データリポジトリ280を使用して入手および/または処理されるデータを含んでもよい。ローカル処理およびデータモジュール260は、これらの遠隔モジュールがローカル処理およびデータモジュール260へのリソースとして利用可能であるように、通信リンク262または264によって、有線または無線通信リンク等を介して、遠隔処理モジュール270および/または遠隔データリポジトリ280に動作可能に結合されてもよい。加えて、遠隔処理モジュール72および遠隔データリポジトリ280は、相互に動作可能に結合されてもよい。
【0043】
いくつかの実施形態では、遠隔処理モジュール270は、データおよび/または画像情報を分析および処理するように構成される、1つ以上のプロセッサを備えてもよい。いくつかの実施形態では、遠隔データリポジトリ280は、デジタルデータ記憶設備を備え得、これは、インターネットまたは「クラウド」リソース構成における他のネットワーキング構成を通して利用可能であってもよい。いくつかの実施形態では、全てのデータは、記憶され、全ての算出は、ローカル処理およびデータモジュールにおいて実施され、遠隔モジュールからの完全に自律的な使用を可能にする。
【0044】
ヒト視覚系は、複雑であって、深度の現実的知覚を提供することは、困難である。理論によって限定されるわけではないが、オブジェクトの視認者は、輻輳・開散運動(vergence)運動と遠近調節(accmmodation)の組み合わせに起因して、オブジェクトを3次元として知覚し得ると考えられる。相互に対する2つの眼の輻輳・開散運動(すなわち、瞳孔が、相互に向かって、またはそこから離れるように移動し、眼の視線を収束させ、オブジェクトを固視するような瞳孔の回転)は、眼の水晶体の合焦(または「遠近調節」)と緊密に関連付けられる。通常条件下、焦点を1つのオブジェクトから異なる距離における別のオブジェクトに変化させるための眼のレンズの焦点の変化または眼の遠近調節は、「遠近調節-輻輳・開散運動反射」として知られる関係下、輻輳・開散運動の整合変化を自動的に同一距離に生じさせるであろう。同様に、輻輳・開散運動の変化は、通常条件下、遠近調節の整合変化を誘起するであろう。遠近調節と輻輳・開散運動との間のより良好な整合を提供するディスプレイシステムは、3次元画像のより現実的かつ快適なシミュレーションを形成し得る。
【0045】
図3は、複数の深度平面を使用して3次元画像をシミュレートするためのアプローチの側面を図示する。図3を参照すると、z-軸上の眼302および304からの種々の距離におけるオブジェクトは、それらのオブジェクトが合焦するように、眼302および304によって遠近調節される。眼302および304は、特定の遠近調節された状態をとり、オブジェクトをz-軸に沿った異なる距離に合焦させる。その結果、特定の遠近調節された状態は、特定の深度平面におけるオブジェクトまたはオブジェクトの一部が、眼がその深度平面に対して遠近調節された状態にあるとき、合焦するように、関連付けられた焦点距離を有する、深度平面306のうちの特定の1つと関連付けられると言え得る。いくつかの実施形態では、3次元画像は、眼302および304毎に、画像の異なる提示を提供することによって、また、深度平面のそれぞれに対応する画像の異なる提示を提供することによって、シミュレートされてもよい。例証を明確にするために、別個であるように示されるが、眼302および304の視野は、例えば、z-軸に沿った距離が増加するにつれて、重複し得ることを理解されたい。加えて、例証を容易にするために、平坦であるように示されるが、深度平面の輪郭は、深度平面内の全ての特徴が特定の遠近調節された状態における眼と合焦するように、物理的空間内で湾曲され得ることを理解されたい。理論によって限定されるわけではないが、ヒトの眼は、典型的には、有限数の深度平面を解釈し、深度知覚を提供することができると考えられる。その結果、知覚された深度の高度に真実味のあるシミュレーションが、眼にこれらの限定数の深度平面のそれぞれに対応する画像の異なる提示を提供することによって達成され得る。
(導波管スタックアセンブリ)
【0046】
図4は、画像情報をユーザに出力するための導波管スタックの実施例を図示する。ウェアラブルシステム400は、複数の導波管432b、434b、436b、438b、4400bを使用して、3次元知覚を眼/脳に提供するために利用され得る、導波管のスタックまたはスタックされた導波管アセンブリ480を含む。いくつかの実施形態では、ウェアラブルシステム400は、図2のウェアラブルシステム200システム80に対応してもよく、図4は、ウェアラブルシステム200のいくつかの部分をより詳細に図式的に示す。例えば、いくつかの実施形態では、導波管アセンブリ480は、図2のディスプレイ220の中に統合されてもよい。
【0047】
図4を継続して参照すると、導波管アセンブリ480はまた、複数の特徴458、456、454、452を導波管の間に含んでもよい。いくつかの実施形態では、特徴458、456、454、452は、レンズであってもよい。他の実施形態では、特徴458、456、454、452は、レンズではなくてもよい。むしろ、それらは、単に、スペーサであってもよい(例えば、空気間隙を形成するためのクラッディング層または構造)。
【0048】
導波管432b、434b、436b、438b、440bまたは複数のレンズ458、456、454、452は、種々のレベルの波面曲率または光線発散を用いて画像情報を眼に送信するように構成されてもよい。各導波管レベルは、特定の深度平面と関連付けられてもよく、その深度平面に対応する画像情報を出力するように構成されてもよい。画像投入デバイス420、422、424、426、428は、それぞれ、眼410に向かって出力のために各個別の導波管を横断して入射光を分散させるように構成され得る、導波管440b、438b、436b、434b、432b,の中に画像情報を投入するために利用されてもよい。光は、画像投入デバイス420、422、424、426、428の出力表面から出射し、導波管440b、438b、436b、434b、432bの対応する入力縁の中に投入される。いくつかの実施形態では、光の単一ビーム(例えば、コリメートされたビーム)が、各導波管の中に投入され、特定の導波管と関連付けられた深度平面に対応する特定の角度(および発散量)において眼410に向かって指向される、クローン化されたコリメートビームの場全体を出力してもよい。
【0049】
いくつかの実施形態では、画像投入デバイス420、422、424、426、428はそれぞれ、それぞれの対応する導波管440b、438b、436b、434b、432bの中への投入のための画像情報を生成する、離散ディスプレイである。いくつかの他の実施形態では、画像投入デバイス420、422、424、426、428は、例えば、画像情報を1つ以上の光学導管(光ファイバケーブル等)を介して、画像投入デバイス420、422、424、426、428のそれぞれに送り得る、単一の多重化されたディスプレイの出力端である。
【0050】
コントローラ460が、スタックされた導波管アセンブリ405および画像投入デバイス420、422、424、426、428の動作を制御する。コントローラ460は、導波管440b、438b、436b、434b、432bへの画像情報のタイミングおよび提供を調整する、プログラミング(例えば、非一過性コンピュータ可読媒体内の命令)を含む。いくつかの実施形態では、コントローラ460は、単一一体型デバイスまたは有線または無線通信チャネルによって接続される分散型システムであってもよい。コントローラ460は、いくつかの実施形態では、処理モジュール260または270(図2に図示される)の一部であってもよい。
【0051】
導波管440b、438b、436b、434b、432bは、全内部反射(TIR)によって各個別の導波管内で光を伝搬するように構成されてもよい。導波管440b、438b、436b、434b、432bはそれぞれ、主要上部表面および主要底部表面およびそれらの主要上部表面と主要底部表面との間に延在する縁を伴う、平面である、または別の形状(例えば、湾曲)を有してもよい。図示される構成では、導波管440b、438b、436b、434b、432bはそれぞれ、光を再指向させ、各個別の導波管内で伝搬させ、導波管から画像情報を眼410に出力することによって、光を導波管から抽出するように構成される、光抽出光学要素440a、438a、436a、434a、432aを含んでもよい。抽出された光はまた、外部結合光と称され得、光抽出光学要素はまた、外部結合光学要素と称され得る。抽出された光のビームは、導波管によって、導波管内で伝搬する光が光再指向要素に衝打する場所において出力される。光抽出光学要素(440a、438a、436a、434a、432a)は、例えば、反射および/または回折光学特徴であってもよい。説明を容易にし、図面を明確にするために、導波管440b、438b、436b、434b、432bの底部主要表面に配置されて図示されるが、いくつかの実施形態では、光抽出光学要素440a、438a、436a、434a、432aは、上部主要表面および/または底部主要表面に配置されてもよく、または導波管440b、438b、436b、434b、432bの容積内に直接配置されてもよい。いくつかの実施形態では、光抽出光学要素440a、438a、436a、434a、432aは、透明基板に取り付けられ、導波管440b、438b、436b、434b、432bを形成する、材料の層内に形成されてもよい。いくつかの他の実施形態では、導波管440b、438b、436b、434b、432bは、モノリシック材料部品であってもよく、光抽出光学要素440a、438a、436a、434a、432aは、その材料部品の表面上および/または内部に形成されてもよい。
【0052】
図4を継続して参照すると、本明細書に議論されるように、各導波管440b、438b、436b、434b、432bは、光を出力し、特定の深度平面に対応する画像を形成するように構成される。例えば、眼の最近傍の導波管432bは、そのような導波管432bの中に投入されるにつれて、コリメートされた光を眼410に送達するように構成されてもよい。コリメートされた光は、光学無限遠焦点面を表し得る。次の上方の導波管432bは、眼410に到達し得る前に、第1のレンズ452(例えば、負のレンズ)を通して通過する、コリメートされた光を送出するように構成されてもよい。第1のレンズ452は、眼/脳が、その次の上方の導波管432bから生じる光を光学無限遠から眼410に向かって内向きにより近い第1の焦点面から生じるように解釈するように、若干の凸面波面曲率を生成するように構成されてもよい。同様に、第3の上方の導波管436bは、眼410に到達する前に、その出力光を第1のレンズ452および第2のレンズ454の両方を通して通過させる。第1および第2のレンズ452および454の組み合わせられた屈折力は、眼/脳が、第3の上方の導波管436bから生じる光が次の上方の導波管436bからの光であった光学無限遠から人物に向かって内向きにさらに近い第2の焦点面から生じるように解釈するように、別の漸増量の波面曲率を生成するように構成されてもよい。
【0053】
他の導波管層(例えば、導波管438b、440b)およびレンズ(例えば、レンズ456、458)も同様に構成され、スタック内の最高導波管440bを用いて、人物に最も近い焦点面を表す集約焦点力のために、その出力をそれと眼との間のレンズの全てを通して送出する。スタックされた導波管アセンブリ480の他側の世界470から生じる光を視認/解釈するとき、レンズ458、456、454、452のスタックを補償するために、補償レンズ層430が、スタックの上部に配置され、下方のレンズスタック458、456、454、452の集約力を補償してもよい。そのような構成は、利用可能な導波管/レンズ対と同じ数の知覚される焦点面を提供する。導波管の光抽出光学要素およびレンズの集束側面は両方とも、静的であってもよい(例えば、動的または電気活性ではない)。いくつかの代替実施形態では、一方または両方とも、電気活性特徴を使用して動的であってもよい。
【0054】
図4を継続して参照すると、光抽出光学要素440a、438a、436a、434a、432aは、導波管と関連付けられた特定の深度平面のために、光をその個別の導波管から再指向し、かつ本光を適切な量の発散またはコリメーションを伴って出力するように構成されてもよい。その結果、異なる関連付けられた深度平面を有する導波管は、関連付けられた深度平面に応じて、異なる量の発散を伴う光を出力する、異なる構成の光抽出光学要素を有してもよい。いくつかの実施形態では、本明細書に議論されるように、光抽出光学要素440a、438a、436a、434a、432aは、光を具体的角度で出力するように構成され得る、立体または表面特徴であってもよい。例えば、光抽出光学要素440a、438a、436a、434a、432aは、立体ホログラム、表面ホログラム、および/または回折格子であってもよい。回折格子等の光抽出光学要素は、2015年6月25日に公開された米国特許公開第2015/0178939号(参照することによってその全体として本明細書に組み込まれる)に説明されている。
【0055】
いくつかの実施形態では、光抽出光学要素440a、438a、436a、434a、432aは、回折パターンまたは「回折光学要素」(また、本明細書では、「DOE」とも称される)を形成する、回折特徴である。好ましくは、DOEは、ビームの光の一部のみがDOEの各交差点を用いて眼410に向かって偏向される一方、残りが、全内部反射を介して、導波管を通して移動し続けるように、比較的に低回折効率を有する。画像情報を搬送する光は、したがって、複数の場所において導波管から出射する、いくつかの関連出射ビームに分割され、その結果、導波管内でバウンスする本特定のコリメートされたビームに関して、眼410に向かって非常に均一なパターンの出射放出となる。
【0056】
いくつかの実施形態では、1つ以上のDOEは、能動的に回折する「オン」状態と有意に回折しない「オフ」状態との間で切替可能であってもよい。例えば、切替可能なDOEは、ポリマー分散液晶の層を備えてもよく、その中で微小液滴は、ホスト媒体中に回折パターンを備え、微小液滴の屈折率は、ホスト材料の屈折率に実質的に整合するように切り替えられることができる(その場合、パターンは、入射光を著しく回折させない)、または微小液滴は、ホスト媒体のものに整合しない屈折率に切り替えられることができる(その場合、パターンは、入射光を能動的に回折させる)。
【0057】
いくつかの実施形態では、深度平面または被写界深度の数および分布は、視認者の眼の瞳孔サイズまたは配向に基づいて、動的に変動されてもよい。被写界深度は、視認者の瞳孔サイズと反比例して変化してもよい。その結果、視認者の眼の瞳孔のサイズが減少するにつれて、被写界深度は、その平面の場所が眼の焦点深度を越えるため判別不能である1つの平面が、判別可能となり、瞳孔サイズの低減および被写界深度の相当する増加に伴って、より合焦して現れ得るように増加する。同様に、異なる画像を視認者に提示するために使用される、離間される深度平面の数は、減少された瞳孔サイズに伴って減少されてもよい。例えば、視認者は、一方の深度平面から他方の深度平面への眼の遠近調節を調節せずに、第1の深度平面および第2の深度平面の両方の詳細を1つの瞳孔サイズにおいて明確に知覚することが可能ではない場合がある。しかしながら、これらの2つの深度平面は、同時に、遠近調節を変化させずに、別の瞳孔サイズにおいてユーザに合焦するには十分であり得る。
【0058】
いくつかの実施形態では、ディスプレイシステムは、瞳孔または配向の決定に基づいて、または特定の瞳孔サイズまたは配向を示す電気信号の受信に応じて、画像情報を受信する導波管の数を変動させてもよい。例えば、ユーザの眼が、2つの導波管と関連付けられた2つの深度平面間を区別不能である場合、次いで、コントローラ460(ローカル処理およびデータモジュール260の実施形態であってもよい)は、これらの導波管のうちの1つへの画像情報の提供を停止するように構成またはプログラムされることができる。有利には、これは、システムへの処理負担を低減させ、それによって、システムの応答性を増加させ得る。導波管のためのDOEがオンおよびオフ状態間で切替可能である実施形態では、DOEは、導波管が画像情報を受信するとき、オフ状態に切り替えられてもよい。
【0059】
いくつかの実施形態では、出射ビームに視認者の眼の直径未満の直径を有するという条件を満たさせることが望ましくあり得る。しかしながら、本条件を満たすことは、視認者の瞳孔のサイズの変動性に照らして、困難であり得る。いくつかの実施形態では、本条件は、視認者の瞳孔のサイズの決定に応答して出射ビームのサイズを変動させることによって、広範囲の瞳孔サイズにわたって満たされる。例えば、瞳孔サイズが減少するにつれて、出射ビームのサイズもまた、減少し得る。いくつかの実施形態では、出射ビームサイズは、可変開口を使用して変動されてもよい。
【0060】
ウェアラブルシステム400は、世界470の一部を結像する、外向きに面した結像システム464(例えば、デジタルカメラ)を含むことができる。世界470の本部分は、世界カメラの視野(FOV)と称され得、結像システム464は、時として、FOVカメラとも称される。視認者による視認または結像のために利用可能な領域全体は、動眼視野(FOR)と称され得る。FORは、装着者が、その身体、頭部、または眼を移動させ、空間内の実質的に任意の方向を知覚するため、ウェアラブルシステム400を囲繞する4πステラジアンの立体角を含んでもよい。他のコンテキストでは、装着者の移動は、より抑制されてもよく、それに応じて、装着者のFORは、より小さい立体角に接し得る。外向きに面した結像システム464から得られた画像は、ユーザによって行われるジェスチャ(例えば、手または指のジェスチャ)を追跡し、ユーザの正面における世界470内のオブジェクトを検出する等のために、使用されることができる。
【0061】
ウェアラブルシステム400はまた、眼移動および顔移動等のユーザの移動を観察する、内向きに面した結像システム466(例えば、デジタルカメラ)を含むことができる。内向きに面した結像システム466は、眼410の画像を捕捉し、眼304の瞳孔のサイズまたは配向を決定するために使用されてもよい。内向きに面した結像システム466は、ユーザが見ている方向(例えば、眼姿勢)を決定する際に使用するため、またはユーザのバイオメトリック識別のため(例えば、虹彩識別を介して)、画像を得るために使用されることができる。いくつかの実施形態では、少なくとも1つのカメラが、眼毎に、独立して、各眼の瞳孔サイズまたは眼姿勢を別個に決定し、それによって、各眼への画像情報の提示がその眼に対して動的に調整されることを可能にするために利用されてもよい。いくつかの他の実施形態では、単一眼410のみの瞳孔直径または配向(例えば、対の眼あたり単一カメラのみを使用して)が、決定され、ユーザの両眼に関して類似すると仮定される。内向きに面した結像システム466によって得られる画像は、ユーザに提示されるべきオーディオまたは視覚的コンテンツを決定するためにウェアラブルシステム400によって使用され得る、ユーザの眼姿勢または気分を決定するために分析されてもよい。ウェアラブルシステム400はまた、IMU、加速度計、ジャイロスコープ等のセンサを使用して、頭部姿勢(例えば、頭部位置または頭部配向)を決定してもよい。
【0062】
ウェアラブルシステム400は、ユーザが、コマンドをコントローラ460に入力し、ウェアラブルシステム400と相互作用し得る、ユーザ入力デバイス466を含むことができる。例えば、ユーザ入力デバイス466は、トラックパッド、タッチスクリーン、ジョイスティック、多自由度(DOF)コントローラ、容量感知デバイス、ゲームコントローラ、キーボード、マウス、指向性パッド(Dパッド)、ワンド、触知デバイス、トーテム(例えば、仮想ユーザ入力デバイスとして機能する)等を含むことができる。マルチDOFコントローラは、コントローラの一部または全部の可能性として考えられる平行移動(例えば、左/右、前方/後方、または上/下)または回転(例えば、ヨー、ピッチ、またはロール)におけるユーザ入力を感知することができる。平行移動をサポートする、マルチDOFコントローラは、3DOFと称され得る一方、平行移動および回転をサポートする、マルチDOFコントローラは、6DOFと称され得る。ある場合には、ユーザは、指(例えば、親指)を使用して、タッチセンサ式入力デバイスを押下またはその上でスワイプし、入力をウェアラブルシステム400に提供してもよい(例えば、ユーザ入力をウェアラブルシステム400によって提供されるユーザインターフェースに提供するために)。ユーザ入力デバイス466は、ウェアラブルシステム400の使用の間、ユーザの手によって保持されてもよい。ユーザ入力デバイス466は、ウェアラブルシステム400と有線または無線通信することができる。
【0063】
図5は、導波管によって出力された出射ビームの実施例を示す。1つの導波管が図示されるが、導波管アセンブリ480内の他の導波管も同様に機能し得、導波管アセンブリ480は、複数の導波管を含むことを理解されるであろう。光520が、導波管432bの入力縁432bにおいて導波管432bの中に投入され、TIRによって導波管432b内を伝搬する。光520がDOE432aに衝突する点では、光の一部は、導波管から出射ビーム510として出射する。出射ビーム510は、略平行として図示されるが、また、導波管432bと関連付けられた深度平面に応じて、ある角度(例えば、発散出射ビーム形成)において眼410に伝搬するように再指向されてもよい。略平行出射ビームは、眼410からの遠距離(例えば、光学無限遠)における深度平面に設定されるように現れる画像を形成するように光を外部結合する、外部結合光学要素を伴う導波管を示し得ることを理解されるであろう。他の導波管または他の光抽出光学要素のセットは、より発散する、出射ビームパターンを出力してもよく、これは、眼410がより近い距離に遠近調節し、網膜に合焦させることを要求し、光学無限遠より眼410に近い距離からの光として脳によって解釈されるであろう。
【0064】
図6は、多焦点立体ディスプレイ、画像、またはライトフィールドの生成において使用される、導波管装置と、光を導波管装置へまたはそこから光学的に結合するための光学結合器サブシステムと、制御サブシステムとを含む、光学システムを示す、概略図である。光学システムは、導波管装置と、光を導波管装置へまたはそこから光学的に結合するための光学結合器サブシステムと、制御サブシステムとを含むことができる。光学システムは、多焦点立体、画像、またはライトフィールドを生成するために使用されることができる。光学システムは、1つ以上の一次平面導波管632a(1つのみが図6に示される)と、一次導波管1の少なくともいくつかのそれぞれと関連付けられた1つ以上のDOE632bとを含むことができる。平面導波管632bは、図4を参照して議論される導波管432b、434b、436b、438b、440bに類似することができる。光学システムは、分散導波管装置を採用し、光を第1の軸(図6の図では、垂直またはY-軸)に沿って中継してもよく、第1の軸(例えば、Y-軸)に沿って光の有効射出瞳を拡張させてもよい。分散導波管装置は、例えば、分散平面導波管622bと、分散平面導波管622bと関連付けられた少なくとも1つのDOE622a(二重破線によって図示される)とを含んでもよい。分散平面導波管622bは、少なくともいくつかの点において、それと異なる配向を有する一次平面導波管632aと類似または同じであってもよい。同様に、少なくとも1つのDOE622aは、少なくともいくつかの点において、DOE632aと類似または同じであってもよい。例えば、分散平面導波管622bまたはDOE622aは、それぞれ、一次平面導波管1632bまたはDOE632aと同一材料から成ってもよい。図6に示される光学ディスプレイシステム600の実施形態は、図2に示されるウェアラブルシステム200の中に統合されることができる。
【0065】
中継され、射出瞳が拡張された光は、分散導波管装置から1つ以上の一次平面導波管632bの中に光学的に結合されてもよい。一次平面導波管632bは、好ましくは、第1の軸に直交する、第2の軸(例えば、図6の図では、水平またはX-軸)に沿って、光を中継することができる。着目すべきこととして、第2の軸は、第1の軸に対して非直交軸であることができる。一次平面導波管632bは、その第2の軸(例えば、X-軸)に沿って、光の有効射出経路を若干拡張させる。例えば、分散平面導波管622bは、光を垂直またはY-軸に沿って中継および拡張させ、光を水平またはX-軸に沿って中継および拡張させる、一次平面導波管632bにその光を通過させることができる。
【0066】
光学システムは、単一モード光ファイバ640の近位端の中に光学的に結合され得る、1つ以上の着色光源(例えば、赤色、緑色、および青色レーザ光)610を含んでもよい。光ファイバ64の遠位端は、圧電材料の中空管642を通して螺合または受容されてもよい。遠位端は、固定されない可撓性カンチレバー644として、管642から突出する。圧電管642は、4つの象限電極(図示せず)と関連付けられることができる。電極は、例えば、管642の外側、外側表面または外側周縁、または直径に鍍着されてもよい。コア電極(図示せず)もまた、管642のコア、中心、内側周縁、または内径に位置してもよい。
【0067】
例えば、ワイヤ660を介して電気的に結合される、駆動電子機器650は、対向する対の電極を駆動し、圧電管642を独立して2つの軸において屈曲させる。光ファイバ644の突出する遠位先端は、機械的共鳴モードを有する。共鳴の周波数は、光ファイバ644の直径、長さ、および材料性質に依存し得る。圧電管642をファイバカンチレバー644の第1の機械的共鳴モードの近傍で振動させることによって、ファイバカンチレバー644は、振動させられ、大偏向を通して掃引し得る。
【0068】
2つの軸において共振振動を刺激することによって、ファイバカンチレバー644の先端は、2次元(2-D)走査を充填する面積内において2軸方向に走査される。光源610の強度をファイバカンチレバー644の走査と同期して変調させることによって、ファイバカンチレバー644から発せられる光は、画像を形成することができる。そのような設定の説明は、米国特許公開第2014/0003762号(参照することによってその全体として本明細書に組み込まれる)に提供されている。
【0069】
光学結合器サブシステムのコンポーネントは、走査ファイバカンチレバー644から発せられる光をコリメートすることができる。コリメートされた光は、鏡面表面648によって、少なくとも1つの回折光学要素(DOE)622aを含有する、狭分散平面導波管622bの中に反射される。コリメートされた光は、全内部反射によって分散平面導波管622bに沿って(図6の図に対して)垂直に伝搬し、そうすることによって、DOE622aと繰り返し交差することができる。DOE622aは、好ましくは、低回折効率を有する。これは、光の一部(例えば、10%)をDOE622aとの交差の各点においてより大きい一次平面導波管632bの縁に向かって回折させ、光の一部をTIRを介して分散平面導波管622bの長さを辿ってそのオリジナル軌道上で継続させることができる。
【0070】
DOE622aとの交差点の各点において、付加的光が、一次導波管632bの入口に向かって回折されることができる。入射光を複数の外部結合セットに分割することによって、光の射出瞳は、分散平面導波管622b内のDOE622aによって垂直に拡張されることができる。分散平面導波管622bから外部結合された本垂直に拡張された光は、一次平面導波管632bの縁に進入することができる。
【0071】
一次導波管632bに進入する光は、TIRを介して、一次導波管632bに沿って(図6の図に対して)水平に伝搬することができる。光は、複数の点においてDOE632aと交差するにつれて、TIRを介して、一次導波管632bの長さの少なくとも一部に沿って水平に伝搬する。DOE632aは、有利には、線形回折パターンおよび半径方向対称回折パターンの総和である、位相プロファイルを有し、光の偏向および集束の両方を生成するように設計または構成され得る。DOE632aは、有利には、ビームの光の一部のみが、DOE632aの各交差において視認者の眼に向かって偏向される一方、光の残りが、TIRを介して、一次導波管632bを通して伝搬し続けるように、低回折効率(例えば、10%)を有し得る。
【0072】
伝搬する光とDOE632aとの間の交差点の各点において、光の一部は、一次導波管632bの隣接する面に向かって回折され、光がTIRから逃散し、一次導波管632bの面から発せられることを可能にする。いくつかの実施形態では、DOE632aの半径方向対称回折パターンは、加えて、ある焦点レベルを回折された光に付与し、個々のビームの光波面を成形(例えば、曲率を付与する)し、かつビームを設計される焦点レベルに合致する角度に操向することの両方を行う。
【0073】
故に、これらの異なる経路は、異なる角度におけるDOE632aの多重度、焦点レベル、焦点深度、または射出瞳において異なる充填パターンをもたらすことによって、光を一次平面導波管632bの外部で結合させることができる。射出瞳における異なる充填パターンは、有利には、複数の深度平面を伴うライトフィールドディスプレイを生成するために使用されることができる。導波管アセンブリ内の各層またはスタック内の層のセット(例えば、3層)が、個別の色(例えば、赤色、青色、緑色)を生成するために採用されてもよい。したがって、例えば、第1の3つの隣接する層のセットが、それぞれ、赤色、青色、および緑色光を第1の焦点深度において生成するために採用されてもよい。第2の3つの隣接する層のセットが、それぞれ、赤色、青色、および緑色光を第2の焦点深度において生成するために採用されてもよい。複数のセットが、種々の焦点深度を伴うフル3Dまたは4Dカラー画像ライトフィールドを生成するために採用されてもよい。
(ウェアラブルシステムの他のコンポーネント)
【0074】
多くの実装では、ウェアラブルシステムは、上記に説明されるウェアラブルシステムのコンポーネントに加えて、またはその代替として、他のコンポーネントを含んでもよい。ウェアラブルシステムは、例えば、1つ以上の触知デバイスまたはコンポーネントを含んでもよい。触知デバイスまたはコンポーネントは、触覚をユーザに提供するように動作可能であってもよい。例えば、触知デバイスまたはコンポーネントは、仮想コンテンツ(例えば、仮想オブジェクト、仮想ツール、他の仮想構造)に触れると、圧力またはテクスチャの感覚を提供してもよい。触覚は、仮想オブジェクトが表す物理的オブジェクトの感覚を再現してもよい、または仮想コンテンツが表す想像上のオブジェクトまたはキャラクタ(例えば、ドラゴン)の感覚を再現してもよい。いくつかの実装では、触知デバイスまたはコンポーネントは、ユーザによって装着されてもよい(例えば、ユーザウェアラブルグローブ)。いくつかの実装では、触知デバイスまたはコンポーネントは、ユーザによって保持されてもよい。
【0075】
ウェアラブルシステムは、例えば、1つ以上の物理オブジェクトを含んでもよく、これは、ユーザによって操作可能であって、ウェアラブルシステムへの入力またはそれとの相互作用を可能にする。これらの物理的オブジェクトは、本明細書では、トーテムと称され得る。いくつかのトーテムは、例えば、金属またはプラスチック片、壁、テーブルの表面等、無生物オブジェクトの形態をとってもよい。ある実装では、トーテムは、実際には、任意の物理的入力構造(例えば、キー、トリガ、ジョイスティック、トラックボール、ロッカスイッチ)を有していなくてもよい。代わりに、トーテムは、単に、物理的表面を提供してもよく、ウェアラブルシステムは、ユーザにトーテムの1つ以上の表面上にあるように見えるように、ユーザインターフェースをレンダリングしてもよい。例えば、ウェアラブルシステムは、トーテムの1つ以上の表面上に常駐するように見えるように、コンピュータキーボードおよびトラックパッドの画像をレンダリングしてもよい。例えば、ウェアラブルシステムは、トーテムとしての役割を果たす、アルミニウムの薄い長方形プレートの表面上に見えるように、仮想コンピュータキーボードおよび仮想トラックパッドをレンダリングしてもよい。長方形プレート自体は、任意の物理的キーまたはトラックパッドまたはセンサを有していない。しかしながら、ウェアラブルシステムは、仮想キーボードまたは仮想トラックパッドを介して行われた選択または入力として、長方形プレートを用いたユーザ操作または相互作用またはタッチを検出し得る。ユーザ入力デバイス466(図4に示される)は、トラックパッド、タッチパッド、トリガ、ジョイスティック、トラックボール、ロッカまたは仮想スイッチ、マウス、キーボード、多自由度コントローラ、または別の物理的入力デバイスを含み得る、トーテムの実施形態であってもよい。ユーザは、単独で、または姿勢と組み合わせて、トーテムを使用し、ウェアラブルシステムおよび/または他のユーザと相互作用してもよい。
【0076】
本開示のウェアラブルシステム、HMD、およびディスプレイシステムと使用可能な触知デバイスおよびトーテムの実施例は、米国特許公開第2015/0016777号(参照することによってその全体として本明細書に組み込まれる)に説明される。
(例示的ウェアラブルシステム、環境、およびインターフェース)
【0077】
ウェアラブルシステムは、高被写界深度をレンダリングされたライトフィールド内で達成するために、種々のマッピング関連技法を採用してもよい。仮想世界をマッピングする際、実世界内の全ての特徴および点を把握し、仮想オブジェクトを実世界に関連して正確に描くことが有利である。この目的を達成するために、ウェアラブルシステムのユーザから捕捉されたFOV画像が、実世界の種々の点および特徴についての情報を伝達する新しい写真を含むことによって、世界モデルに追加されることができる。例えば、ウェアラブルシステムは、マップ点(2D点または3D点等)のセットを収集し、新しいマップ点を見出し、世界モデルのより正確なバージョンをレンダリングすることができる。第1のユーザの世界モデルは、第2のユーザが第1のユーザを囲繞する世界を体験し得るように、(例えば、クラウドネットワーク等のネットワークを経由して)第2のユーザに通信されることができる。
【0078】
図7は、MR環境700の実施例のブロック図である。MR環境700は、入力(例えば、ユーザのウェアラブルシステムからの視覚的入力702、室内カメラ等の定常入力704、種々のセンサからの感覚入力706、ユーザ入力デバイス466からのジェスチャ、トーテム、眼追跡、ユーザ入力等)を1つ以上のユーザウェアラブルシステム(例えば、ウェアラブルシステム200またはディスプレイシステム220)または定常室内システム(例えば、室内カメラ等)から受信するように構成されてもよい。ウェアラブルシステムは、種々のセンサ(例えば、加速度計、ジャイロスコープ、温度センサ、移動センサ、深度センサ、GPSセンサ、内向きに面した結像システム、外向きに面した結像システム等)を使用して、ユーザの環境の場所および種々の他の属性を決定することができる。本情報はさらに、異なる視点からの画像または種々のキューを提供し得る、部屋内の定常カメラからの情報で補完されてもよい。カメラ(室内カメラまたは外向きに面した結像システムのカメラ等)によって入手された画像データは、マッピング点のセットに低減されてもよい。
【0079】
1つ以上のオブジェクト認識装置708が、受信されたデータ(例えば、点の集合)を通してクローリングし、点を認識またはマッピングし、画像をタグ付けし、マップデータベース710を用いて、意味論情報をオブジェクトに結び付けることができる。マップデータベース710は、経時的に収集された種々の点およびその対応するオブジェクトを備えてもよい。種々のデバイスおよびマップデータベースは、ネットワーク(例えば、LAN、WAN等)を通して相互に接続され、クラウドにアクセスすることができる。
【0080】
本情報およびマップデータベース内の点集合に基づいて、オブジェクト認識装置708a-708nは、環境内のオブジェクトを認識してもよい。例えば、オブジェクト認識装置は、顔、人物、窓、壁、ユーザ入力デバイス、テレビ、ドキュメント(例えば、本明細書におけるセキュリティ実施例において説明されるような旅券、運転免許証、パスポート)、ユーザの環境内の他のオブジェクト等を認識することができる。1つ以上のオブジェクト認識装置が、ある特性を伴うオブジェクトのために特殊化されてもよい。例えば、オブジェクト認識装置708aは、顔を認識するために使用されてもよい一方、別のオブジェクト認識装置は、ドキュメントを認識するために使用されてもよい。
【0081】
オブジェクト認識は、種々のコンピュータビジョン技法を使用して実施されてもよい。例えば、ウェアラブルシステムは、外向きに面した結像システム464(図4に示される)によって入手された画像を分析し、場面再構成、イベント検出、ビデオ追跡、オブジェクト認識(例えば、人物またはドキュメント)、オブジェクト姿勢推定、顔認識(例えば、環境内の人物またはドキュメント上の画像から)、学習、インデックス化、運動推定、または画像分析(例えば、写真、署名、識別情報、旅行情報等のドキュメント内の印を識別する)等を実施することができる。1つ以上のコンピュータビジョンアルゴリズムが、これらのタスクを実施するために使用されてもよい。コンピュータビジョンアルゴリズムの非限定的実施例は、スケール不変特徴変換(SIFT)、スピードアップロバスト特徴(SURF)、配向FASTおよび回転BRIEF(ORB)、バイナリロバスト不変スケーラブルキーポイント(BRISK)、高速網膜キーポイント(FREAK)、Viola-Jonesアルゴリズム、Eigenfacesアプローチ、Lucas-Kanadeアルゴリズム、Horn-Schunkアルゴリズム、Mean-shiftアルゴリズム、視覚的同時位置推定およびマッピング(vSLAM)技法、シーケンシャルベイズ推定器(例えば、カルマンフィルタ、拡張カルマンフィルタ等)、バンドル調節、適応閾値化(および他の閾値化技法)、反復最近傍点(ICP)、セミグローバルマッチング(SGM)、セミグローバルブロックマッチング(SGBM)、特徴点ヒストグラム、種々の機械学習アルゴリズム(例えば、サポートベクトルマシン、k最近傍アルゴリズム、単純ベイズ、ニューラルネットワーク(畳み込みまたは深層ニューラルネットワークを含む)、または他の教師あり/教師なしモデル等)等を含む。
【0082】
オブジェクト認識は、加えて、または代替として、種々の機械学習アルゴリズムによって実施されることができる。いったん訓練されると、機械学習アルゴリズムは、HMDによって記憶されることができる。機械学習アルゴリズムのいくつかの実施例は、教師ありまたは教師なし機械学習アルゴリズムを含むことができ、回帰アルゴリズム(例えば、通常の最小2乗回帰等)、インスタンスベースのアルゴリズム(例えば、学習ベクトル量子化等)、決定ツリーアルゴリズム(例えば、分類および回帰ツリー等)、ベイズアルゴリズム(例えば、単純ベイズ等)、クラスタリングアルゴリズム(例えば、k-平均クラスタリング等)、関連付けルール学習アルゴリズム(例えば、アプリオリアルゴリズム等)、人工ニューラルネットワークアルゴリズム(例えば、Perceptron等)、深層学習アルゴリズム(例えば、Deep Boltzmann Machine、すなわち、深層ニューラルネットワーク等)、次元削減アルゴリズム(例えば、主成分分析等)、アンサンブルアルゴリズム(例えば、Stacked Gneralization等)、および/または他の機械学習アルゴリズムを含む。いくつかの実施形態では、個々のモデルは、個々のデータセットのためにカスタマイズされることができる。例えば、ウェアラブルデバイスは、ベースモデルを生成または記憶することができる。ベースモデルは、開始点として使用され、データタイプ(例えば、テレプレゼンスセッション内の特定のユーザ)、データセット(例えば、テレプレゼンスセッション内のユーザの取得される付加的画像のセット)、条件付き状況、または他の変形例に特有の付加的モデルを生成してもよい。いくつかの実施形態では、ウェアラブルHMDは、複数の技法を利用して、集約されたデータの分析のためのモデルを生成するように構成されることができる。他の技法は、事前に定義された閾値またはデータ値を使用することを含んでもよい。
【0083】
マップデータベース内の本情報および点の集合に基づいて、オブジェクト認識装置708a-708nは、オブジェクトを認識し、オブジェクトを意味論情報で補完し、生命をオブジェクトに与えてもよい。例えば、オブジェクト認識装置が、点のセットがドアであることを認識する場合、システムは、いくつかの意味論情報を結び付けてもよい(例えば、ドアは、ヒンジを有し、ヒンジを中心として90度移動を有する)。オブジェクト認識装置が、点のセットが鏡であることを認識する場合、システムは、鏡が、部屋内のオブジェクトの画像を反射させ得る、反射表面を有するという意味論情報を結び付けてもよい。意味論情報は、本明細書に説明されるように、オブジェクトのアフォーダンスを含むことができる。例えば、意味論情報は、オブジェクトの法線を含んでもよい。システムは、ベクトルを割り当てることができ、その方向は、オブジェクトの法線を示す。経時的に、マップデータベースは、システム(ローカルに常駐し得る、または無線ネットワークを通してアクセス可能であり得る)がより多くのデータを世界から蓄積するにつれて成長する。いったんオブジェクトが認識されると、情報は、1つ以上のウェアラブルシステムに伝送されてもよい。例えば、MR環境700は、Californiaで生成している場面についての情報を含んでもよい。環境700は、New Yorkにおける1人以上のユーザに伝送されてもよい。FOVカメラおよび他の入力から受信されたデータに基づいて、オブジェクト認識装置および他のソフトウェアコンポーネントは、場面が世界の異なる部分に存在し得る第2のユーザに正確に「パス」され得るように、種々の画像から収集された点をマッピングし、オブジェクトを認識すること等ができる。環境700はまた、位置特定目的のために、トポロジマップを使用してもよい。
【0084】
図8は、認識されたオブジェクトに関連して仮想コンテンツをレンダリングする方法800の実施例のプロセスフロー図である。方法800は、仮想場面がウェアラブルシステムのユーザに提示され得る方法を説明する。ユーザは、その場面から地理的に遠隔装置に存在してもよい。例えば、ユーザは、New Yorkに存在し得るが、Californiaで現在起こっている場面を視認することを所望し得る、またはCaliforniaに存在する友人と散歩に行くことを所望し得る。
【0085】
ブロック810では、ウェアラブルシステムは、ユーザの環境に関する入力をユーザおよび他のユーザから受信してもよい。これは、種々の入力デバイスおよびマップデータベース内にすでに保有されている知識を通して達成されてもよい。ユーザのFOVカメラ、センサ、GPS、眼追跡等が、ブロック810において、情報をシステムに伝達する。システムは、ブロック820において、本情報に基づいて、疎点を決定してもよい。疎点は、ユーザの周囲における種々のオブジェクトの配向および位置を表示および理解する際に使用され得る、姿勢データ(例えば、頭部姿勢、眼姿勢、身体姿勢、または手のジェスチャ)を決定する際に使用されてもよい。オブジェクト認識装置708a、708nは、ブロック830において、これらの収集された点を通してクローリングし、マップデータベースを使用して、1つ以上のオブジェクトを認識してもよい。本情報は、次いで、ブロック840において、ユーザの個々のウェアラブルシステムに伝達されてもよく、所望の仮想場面が、ブロック850において、適宜、ユーザに表示されてもよい。例えば、所望の仮想場面(例えば、CAにおけるユーザ)が、New Yorkにおけるユーザの種々のオブジェクトおよび他の周囲に関連して、適切な配向、位置等において表示されてもよい。
【0086】
図9は、ウェアラブルシステムの別の実施例のブロック図である。本実施例では、ウェアラブルシステム900は、世界に関するマップデータを含み得る、マップを備える。マップは、部分的に、ウェアラブルシステム上にローカルに常駐してもよく、部分的に、有線または無線ネットワークによってアクセス可能なネットワーク化された記憶場所(例えば、クラウドシステム内)に常駐してもよい。姿勢プロセス910が、ウェアラブルコンピューティングアーキテクチャ(例えば、処理モジュール260またはコントローラ460)上で実行され、ウェアラブルコンピューティングハードウェアまたはユーザの位置および配向を決定するために、マップからのデータを利用してもよい。姿勢データは、ユーザが、システムを体験し、その世界内で動作するにつれて、オンザフライで収集されたデータから算出されてもよい。データは、実または仮想環境内のオブジェクトに関する画像、センサ(概して、加速度計およびジャイロスコープコンポーネントを備える、慣性測定ユニット等)からのデータ、および表面情報を備えてもよい。
【0087】
疎点表現は、同時位置特定およびマッピング(例えば、入力が画像/視覚のみである構成を指す、SLAMまたはvSLAM)プロセスの出力であってもよい。システムは、世界内の種々のコンポーネントの場所だけではなく、世界が構成される内容も見出すように構成されることができる。姿勢は、マップへの取込およびマップからのデータを使用することを含め、多くの目標を達成する、構築ブロックであり得る。
【0088】
一実施形態では、疎点位置は、それ自体では完全に適正であり得ず、さらなる情報が、多焦点AR、VR、またはMR体験を生成するために必要とされ得る。概して、深度マップ情報を指す、稠密表現が、少なくとも部分的に、本間隙を充填するために利用されてもよい。そのような情報は、立体視940と称されるプロセスから算出されてもよく、深度情報は、三角測量または飛行時間感知等の技法を使用して決定される。画像情報およびアクティブパターン(アクティブプロジェクタを使用して生成される赤外線パターン等)が、立体視プロセス940への入力としての役割を果たし得る。有意な量の深度マップ情報が、ともに融合されてもよく、このうちのいくつかは、表面表現を用いて要約されてもよい。例えば、数学的に定義可能な表面は、ゲームエンジンのような他の処理デバイスへの効率的(例えば、大規模点群に対して)かつ要約しやすい入力であってもよい。したがって、立体視プロセス(例えば、深度マップ)940の出力は、融合プロセス930において組み合わせられてもよい。姿勢950は、同様に、本融合プロセス930への入力であってもよく、融合930の出力は、マップ取込プロセス920への入力となる。サブ表面が、トポグラフィマッピング等において相互に接続し、より大きい表面を形成し得、マップは、点および表面の大規模ハイブリッドとなる。
【0089】
複合現実プロセス960における種々の側面を解決するために、種々の入力が、利用されてもよい。例えば、図9に描写される実施形態では、ゲームパラメータは、システムのユーザが1匹以上のモンスタと種々の場所においてモンスタバトルゲームをプレーしていること、モンスタが死んでいる、種々の条件下で逃げている(ユーザがモンスタを撃つ場合等)、種々の場所における壁または他のオブジェクト、および同等物を決定するための入力であってもよい。世界マップは、複合現実に対する別の有用な入力となる、そのようなオブジェクトが相互に対して存在する場所に関する情報を含んでもよい。世界に対する姿勢は、同様に、入力となり、ほぼあらゆる双方向システムに対して重要な役割を果たす。
【0090】
ユーザからの制御または入力は、ウェアラブルシステム900への別の入力である。本明細書に説明されるように、ユーザ入力は、視覚的入力、ジェスチャ、トーテム、オーディオ入力、感覚入力等を含むことができる。動き回るまたはゲームをプレーするために、例えば、ユーザは、ウェアラブルシステム900に、所望する対象に関して命令する必要があり得る。空間内で自ら移動するだけではなく、利用され得る種々の形態のユーザ制御が、存在する。一実施形態では、トーテム(例えば、ユーザ入力デバイス)、または玩具銃等のオブジェクトが、ユーザによって保持され、システムによって追跡されてもよい。システムは、好ましくは、ユーザがアイテムを保持していることを把握し、ユーザがアイテムと行っている相互作用の種類を理解するように構成されるであろう(例えば、トーテムまたはオブジェクトが、銃である場合、システムは、場所および配向だけではなく、ユーザが、そのようなアクティビティがカメラのいずれかの視野内にないときでも、生じている状況の決定を補助し得る、IMU等のセンサを装備し得る、トリガまたは他の感知ボタンまたは要素をクリックしているかどうかも理解するように構成されてもよい。)
【0091】
手のジェスチャ追跡または認識もまた、入力情報を提供してもよい。ウェアラブルシステム900は、ボタン押下のため、左または右、停止、握持、保持等をジェスチャするために、手のジェスチャを追跡および解釈するように構成されてもよい。例えば、1つの構成では、ユーザは、非ゲーム環境において電子メールまたはカレンダを通して捲る、または別の人物またはプレーヤと「フィストバンプ」を行うことを所望し得る。ウェアラブルシステム900は、動的である場合とそうではない場合がある、最小量の手のジェスチャを活用するように構成されてもよい。例えば、ジェスチャは、停止を示すために手を広げる、OKを示すために親指を上げる、OKではないことを示すために親指を下げる、または指向性コマンドを示すために左右または上下に手をフリップする等、単純な静的ジェスチャであってもよい。
【0092】
眼追跡は、別の入力である(例えば、ユーザが見ている場所を追跡し、ディスプレイ技術を制御し、具体的深度または範囲にレンダリングする)。一実施形態では、眼の輻輳・開散運動が、三角測量を使用して決定されてもよく、次いで、その特定の人物のために開発された輻輳・開散運動/遠近調節モデルを使用して、遠近調節が、決定されてもよい。眼追跡は、眼カメラによって実施され、眼視線(例えば、片眼または両眼の方向または配向)を決定することができる。他の技法も、例えば、眼の近傍に設置された電極による電位の測定(例えば、電気眼球図記録)等、眼追跡のために使用されることができる。
【0093】
音声認識は、単独で、または他の入力(例えば、トーテム追跡、眼追跡、ジェスチャ追跡等)と組み合わせて使用され得る、別の入力であり得る。システム900は、オーディオストリームを環境から受信する、オーディオセンサ(例えば、マイクロホン)を含むことができる。受信されたオーディオストリームは、処理され(例えば、処理モジュール260、270または中央サーバ1650によって)、ユーザの音声(他の音声または背景オーディオから)を認識し、コマンド、パラメータ等をオーディオストリームから抽出することができる。例えば、システム900は、オーディオストリームから、語句「あなたのIDを見せてください」が発せられたことを識別し、本語句がシステム900の装着者(例えば、検閲者の環境内の別の人物ではなく、セキュリティ検閲者)によって発せられたことを識別し、語句および状況のコンテキスト(例えば、セキュリティ検問所)から、実施されるべき実行可能コマンド(例えば、装着者のFOV内のもののコンピュータビジョン分析)およびコマンドが実施されるべきオブジェクト(「あなたのID」)が存在することを抽出し得る。システム900は、発話している人物(例えば、発話がHMDの装着者または別の人物または音声(例えば、環境内のラウドスピーカによって伝送される記録された音声)からのものであるかどうか)を決定するための話者認識技術と、発せられている内容を決定するための発話認識技術とを組み込むことができる。音声認識技法は、周波数推定、隠れマルコフモデル、ガウス混合モデル、パターンマッチングアルゴリズム、ニューラルネットワーク、マトリクス表現、ベクトル量子化、話者ダイアライゼーション、決定ツリー、および動的時間伸縮(DTW)技法を含むことができる。音声認識技法はまた、コホートモデルおよび世界モデル等のアンチ話者技法を含むことができる。スペクトル特徴は、話者特性を表す際に使用されてもよい。
【0094】
カメラシステムに関して、図9に示される例示的ウェアラブルシステム900は、3つの対のカメラ、すなわち、ユーザの顔の両側に配列される相対的広FOVまたは受動SLAM対のカメラと、ユーザの正面に配向され、立体視結像プロセス940をハンドリングし、また、ユーザの顔の正面の手のジェスチャおよびトーテム/オブジェクトの軌道を捕捉するための異なる対のカメラとを含むことができる。ステレオプロセス940に対するFOVカメラおよび対のカメラは、外向きに面した結像システム464(図4に示される)の一部であってもよい。ウェアラブルシステム900は、眼ベクトルおよび他の情報を三角測量するために、ユーザの眼に向かって配向される眼追跡カメラ(図4に示される内向きに面した結像システム462の一部であってもよい)を含むことができる。ウェアラブルシステム900はまた、1つ以上のテクスチャ化光プロジェクタ(赤外線(IR)プロジェクタ等)を備え、テクスチャを場面の中に投入してもよい。
【0095】
図10は、ウェアラブルシステムへのユーザ入力を決定するための方法1000の実施例のプロセスフロー図である。本実施例では、ユーザは、トーテムと相互作用してもよい。ユーザは、複数のトーテムを有してもよい。例えば、ユーザは、ソーシャルメディアアプリケーションのための指定される1つのトーテム、ゲームをプレーするための別のトーテム等を有してもよい。ブロック1010では、ウェアラブルシステムは、トーテムの運動を検出してもよい。トーテムの移動は、外向きに面した結像システムを通して認識されてもよい、またはセンサ(例えば、触知グローブ、画像センサ、手追跡デバイス、眼追跡カメラ、頭部姿勢センサ等)を通して検出されてもよい。
【0096】
少なくとも部分的に、検出されたジェスチャ、眼姿勢、頭部姿勢、またはトーテムを通した入力に基づいて、ウェアラブルシステムは、ブロック1020において、基準フレームに対するトーテム(またはユーザの眼または頭部またはジェスチャ)の位置、配向、または移動を検出する。基準フレームは、それに基づいてウェアラブルシステムがトーテム(またはユーザ)の移動をアクションまたはコマンドに変換する、マップ点のセットであってもよい。ブロック1030では、トーテムとのユーザの相互作用が、マッピングされる。基準フレーム1020に対するユーザ相互作用のマッピングに基づいて、システムは、ブロック1040において、ユーザ入力を決定する。
【0097】
例えば、ユーザは、トーテムまたは物理的オブジェクトを前後に移動させ、仮想ページを捲り、次のページに移動する、または1つのユーザインターフェース(UI)ディスプレイ画面から別のUI画面に移動することを示してもよい。別の実施例として、ユーザは、ユーザのFOR内の異なる実または仮想オブジェクトを見るために、その頭部または眼を移動させてもよい。特定の実または仮想オブジェクトにおけるユーザの注視が、閾値時間より長い場合、その実または仮想オブジェクトは、ユーザ入力として選択されてもよい。いくつかの実装では、ユーザの眼の輻輳・開散運動が、追跡されることができ、遠近調節/輻輳・開散運動モデルが、ユーザが合焦している深度平面に関する情報を提供する、ユーザの眼の遠近調節状態を決定するために使用されることができる。いくつかの実装では、ウェアラブルシステムは、レイキャスティング技法を使用して、ユーザの頭部姿勢または眼姿勢の方向に沿っている実または仮想オブジェクトを決定することができる。種々の実装では、レイキャスティング技法は、実質的に殆ど横幅を伴わない細い光線束を投じる、または実質的横幅を伴う光線(例えば、円錐または円錐台)を投じることを含むことができる。
【0098】
ユーザインターフェースは、本明細書に説明されるようなディスプレイシステム(図2におけるディスプレイ220等)によって投影されてもよい。また、1つ以上のプロジェクタ等の種々の他の技法を使用して表示されてもよい。プロジェクタは、画像をキャンバスまたは球体等の物理的オブジェクト上に投影してもよい。ユーザインターフェースとの相互作用は、システムの外部またはシステムの一部の1つ以上のカメラを使用して(例えば、内向きに面した結像システム462または外向きに面した結像システム464を使用して)追跡されてもよい。
【0099】
図11は、仮想ユーザインターフェースと相互作用するための方法1100の実施例のプロセスフロー図である。方法1100は、本明細書に説明されるウェアラブルシステムによって行われてもよい。方法1100の実施形態は、ウェアラブルシステムのFOV内の人物またはドキュメントを検出するためにウェアラブルシステムによって使用されることができる。
【0100】
ブロック1110では、ウェアラブルシステムは、特定のUIを識別してもよい。UIのタイプは、ユーザによって与えられてもよい。ウェアラブルシステムは、特定のUIがユーザ入力(例えば、ジェスチャ、視覚的データ、オーディオデータ、感覚データ、直接コマンド等)に基づいて取り込まれる必要があることを識別してもよい。UIは、セキュリティシナリオに特有であることができ、システムの装着者は、ドキュメントを装着者に提示するユーザを観察する(例えば、旅客検問所において)。ブロック1120では、ウェアラブルシステムは、仮想UIのためのデータを生成してもよい。例えば、UIの境界、一般的構造、形状等と関連付けられたデータが、生成されてもよい。加えて、ウェアラブルシステムは、ウェアラブルシステムがユーザの物理的場所に関連してUIを表示し得るように、ユーザの物理的場所のマップ座標を決定してもよい。例えば、UIが、身体中心である場合、ウェアラブルシステムは、リングUIがユーザの周囲に表示され得る、または平面UIが壁上またはユーザの正面に表示され得るように、ユーザの物理的立ち位置、頭部姿勢、または眼姿勢の座標を決定してもよい。本明細書に説明されるセキュリティコンテキストでは、UIは、装着者が、旅行者および旅行者のドキュメントを見ている間、UIを容易に視認し得るように、UIがドキュメントをシステムの装着者に提示する旅行者を囲繞しているかのように表示され得る。UIが、手中心の場合、ユーザの手のマップ座標が、決定されてもよい。これらのマップ点は、FOVカメラ、感覚入力を通して受信されたデータ、または任意の他のタイプの収集されたデータを通して導出されてもよい。
【0101】
ブロック1130では、ウェアラブルシステムは、データをクラウドからディスプレイに送信してもよい、またはデータは、ローカルデータベースからディスプレイコンポーネントに送信されてもよい。ブロック1140では、UIは、送信されたデータに基づいて、ユーザに表示される。例えば、ライトフィールドディスプレイは、仮想UIをユーザの眼の一方または両方の中に投影することができる。いったん仮想UIが生成されると、ウェアラブルシステムは、ブロック1150において、単に、ユーザからのコマンドを待機し、より多くの仮想コンテンツを仮想UI上に生成してもよい。例えば、UIは、ユーザの身体またはユーザの環境内の人物(例えば、旅行者)の身体の周囲の身体中心リングであってもよい。ウェアラブルシステムは、次いで、コマンド(ジェスチャ、頭部または眼移動、音声コマンド、ユーザ入力デバイスからの入力等)を待機してもよく、認識される場合(ブロック1160)、コマンドと関連付けられた仮想コンテンツが、ユーザに表示されてもよい(ブロック1170)。
【0102】
ウェアラブルシステム、UI、およびユーザ体験(UX)の付加的実施例は、米国特許公開第2015/0016777号(参照することによってその全体として本明細書に組み込まれる)に説明されている。
(仮想遠隔制御装置をレンダリングする実施例)
【0103】
ユーザの仮想環境と相互作用することに加え、ユーザはまた、そのディスプレイ230が仮想遠隔装置をレンダリングするように構成され得る、ウェアラブルデバイスを使用して、ユーザの環境内の物理的オブジェクトを制御することができる。本明細書にさらに説明されるように、ウェアラブルシステムは、物理的遠隔装置または物理的遠隔装置によって制御される親デバイス等の標的デバイスを識別することができる。ウェアラブルシステムは、標的デバイスまたは標的デバイスと関連付けられた物理的遠隔装置の特性に基づいて仮想遠隔装置を生成し、仮想遠隔装置をユーザにAR/MR環境内で提示し、ユーザが仮想遠隔装置を用いて親デバイスを制御することを可能にすることができる。本明細書に説明される実施例の多くは、仮想遠隔制御装置を使用して、物理的デバイス(例えば、物理的テレビ、DVDまたはCDプレーヤまたはオーディオシステム、サーモスタット、コーヒー機械、冷蔵庫、または他の家電、電気ランプまたは電球、ドアエントリシステムまたはホームセキュリティシステム等)を制御するコンテキストにおけるものであるが、これは、例証のためであって、限定ではない。仮想遠隔制御装置の実施形態は、加えて、または代替として、仮想デバイスを制御するために使用されることができる。例えば、ウェアラブルシステムのユーザは、仮想遠隔制御装置を使用し、ウェアラブルデバイスによってレンダリングされ、ユーザに表示される、仮想テレビを制御することができる。
(仮想遠隔装置上で選択イベントを開始する実施例)
【0104】
図12は、ウェアラブルシステムのユーザによって知覚されるような物理的環境の実施例を図示する。例示的環境1200は、ユーザの自宅の居間を含む。環境1200は、テレビ(TV)1210、物理的遠隔制御装置1220(時として、単に、遠隔装置と称される)、TV台1230、および窓1240等の物理的オブジェクトを有する。ユーザが、ウェアラブルデバイスを装着している間、ユーザは、物理的オブジェクトを知覚し、物理的オブジェクトと相互作用することができる。例えば、ユーザは、ウェアラブルデバイスを装着しながら、TV1210を鑑賞してもよい。ユーザは、物理的遠隔装置1220を使用して、TVを制御することができる。例えば、ユーザは、物理的遠隔装置1220を制御し、TV1210をオン/オフにする、またはTV1210のチャンネルまたは音量を変更することができる。ユーザはまた、仮想遠隔装置を使用して、TV1210と相互作用することができる。仮想遠隔装置は、物理的遠隔装置1220の機能に基づいて、生成されてもよい。例えば、仮想遠隔装置は、物理的遠隔装置1220の機能の一部または全部をエミュレートしてもよい(同様に、付加的または代替機能性を提供してもよい)。
【0105】
ユーザは、選択イベントを標的デバイスと関連付けられた仮想遠隔装置上で開始することができる。選択イベントは、仮想遠隔装置と関連付けられたユーザインターフェースアクションを実施させてもよい。例えば、選択イベントの開始に応じて、ウェアラブルデバイスは、仮想遠隔装置をユーザのFOV内にレンダリングしてもよい。標的デバイスは、物理的遠隔装置であってもよく、これは、ウェアラブルシステムが、物理的遠隔装置の機能をエミュレートする、仮想遠隔装置を生成するようにエミュレートすることができる。標的デバイスはまた、TV、コーヒーメーカー、サーモスタット、または他の家電または電子デバイス等の親デバイスであってもよく、これは、物理的遠隔装置または仮想遠隔装置によって制御されてもよい。ユーザは、例えば、マウスをクリックする、タッチパッドをタップする、タッチスクリーン上でスワイプする、容量ボタンにかざすまたはタッチする、キーボードまたはゲームコントローラ(例えば、5方向d-パッド)上のキーを押下する、ジョイスティック、ワンド、またはトーテムをオブジェクトに向かってポインティングする、遠隔制御装置上のボタンを押下する、ユーザ入力デバイスとの他の相互作用等、ユーザ入力デバイスを作動させることによって、選択イベントを開始することができる。ユーザはまた、例えば、標的オブジェクトをある時間周期にわたって注視するまたは指差すことによって等、頭部、眼、または身体姿勢を使用して、選択イベントを開始してもよい。
【0106】
選択イベントを仮想遠隔装置上で開始するために、ユーザは、仮想遠隔装置と関連付けられた標的デバイスの選択を示すことができる。例えば、ユーザは、物理的遠隔装置を示し、物理的遠隔装置と関連付けられた仮想遠隔装置を選択することができる。図12に示されるように、ユーザが、物理的遠隔装置1220の機能に基づく、仮想遠隔装置と相互作用することを所望する場合、ユーザは、タッチする、指で指差す、例えば、ピンチすることによって、オブジェクトを視覚的に包囲する、または他の手のジェスチャを使用して等、手のジェスチャによって、物理的遠隔装置1220を示してもよい。実施例として、ユーザは、長時間にわたって、物理的遠隔装置1220の方向を指差してもよい。別の実施例として、ユーザは、物理的遠隔装置1220を握持するための手のジェスチャを行うことによって、物理的遠隔装置1220と関連付けられた仮想遠隔装置を選択してもよい。ユーザはまた、ユーザ入力デバイス(例えば、図4に示されるユーザ入力デバイス466等)を使用して、物理的遠隔装置1220を示してもよい。例えば、ユーザは、スタイラスを使用して、物理的遠隔装置を指差してもよい。
【0107】
ユーザはまた、仮想遠隔制御装置の親デバイスを選択することによって、仮想遠隔装置を選択することができる。ユーザは、そのような選択のために、手のジェスチャを使用して、ユーザ入力デバイスを作動させることができる。図13は、手のジェスチャを使用して、仮想遠隔装置と関連付けられた選択イベントを開始する実施例を図示する。ユーザは、図13に示されるように、ウェアラブルシステムを介して、環境1300を知覚することができる。環境1300は、TV1210、物理的遠隔装置1220、TV台1230、および窓1240等の物理的オブジェクトを含むことができる。図示されるように、ユーザの左腕1250aは、TV1210を示す、ピンチジェスチャを行なっている。ウェアラブルシステムは、本ピンチジェスチャをコマンドとして認識し、TV1210と関連付けられた仮想遠隔装置1260をレンダリングし、ユーザに提示してもよい。別の実施例として、ユーザが、TV1210を制御するための仮想遠隔装置を選択することを所望する場合、ユーザは、身体姿勢(TV1210を握持する、またはTV1210を指差す等)を使用して、TV1210の選択を示すことができる。
【0108】
手のジェスチャおよびユーザ入力デバイスの作動に加え、またはその代替として、ユーザはまた、眼視線を使用して、仮想遠隔装置を選択することができる。ウェアラブルシステムは、ユーザの眼視線の方向に基づいて(内向きに面した結像システム462によって追跡されるように)、円錐投射を実施してもよい。ウェアラブルシステムは、ユーザの視線方向と交差する、オブジェクトを識別し、そのようなオブジェクトと関連付けられた遠隔装置をレンダリングすることができる。例えば、ウェアラブルシステムは、ユーザの視線方向に基づいて、TV1210を識別し、したがって、TV1210と関連付けられた仮想遠隔装置を提示することができる。仮想遠隔装置は、物理的遠隔装置1220に基づいて生成されてもよく、仮想遠隔装置は、物理的遠隔装置1220と類似機能および制御パネルを有してもよい。
(標的デバイスを認識する実施例)
【0109】
ウェアラブルシステムは、単独で、または組み合わせて、種々の技法を使用して、物理的遠隔装置1220または親デバイス(TV1210等)等の標的デバイスを認識することができる。実施例として、ウェアラブルシステムは、直接、標的デバイスにクエリしてもよい。これは、デバイスが、例えば、Wi-FiまたはBluetooth(登録商標)等のRF無線プロトコルによって、それ自体を識別可能である場合、かつプロトコルがすでにそのようなクエリをサポートするために存在する場合、可能である。例えば、ウェアラブルシステムは、Bluetooth(登録商標)技術を使用して、TV1210または物理的遠隔装置1220とペアリングすることができる。
【0110】
ウェアラブルシステムはまた、標的デバイスの特性に基づいて、標的デバイスを視覚的に識別してもよい。例えば、ウェアラブルシステムは、外向きに面した結像システムを使用してもよく、標的デバイスの画像を入手し、単語の袋タイプ検索と組み合わせられる特色特徴点方法(例えば、SIFT)等のコンピュータビジョンアルゴリズムを使用して、またはデバイスをカテゴリ化することが可能な人工ニューラルネットワークのアプリケーション(例えば、「Alex-net」)を通して、標的デバイスのタイプを識別する。ウェアラブルシステムは、階層方式において、標的デバイスを識別してもよい。例えば、標的デバイスは、最初に、第1のアルゴリズムを使用して、テレビとして、次いで、第2のアルゴリズムを使用して、具体的製品、例えば、ManuCo 55”530U Series Premium 4K UHD Slim Direct-Lit LED TVとして、識別されてもよい。
【0111】
ユーザはまた、他の姿勢またはユーザ入力デバイスを使用して、標的デバイスを規定することができる。例えば、ユーザは、手を振るジェスチャを用いて、TVを識別する一方、その指でサーモスタットを指差すことによって、別のタイプのデバイス(例えば、サーモスタット)を識別してもよい。いくつかの実施形態では、ユーザは、姿勢を使用して、標的デバイス(TVまたはサーモスタット等)のタイプを識別することができる。ウェアラブルシステムは、他の技法を実施して、ユーザの姿勢によって示されるタイプのサブタイプをさらに識別してもよい。例えば、ユーザは、手を振るジェスチャを使用して、標的デバイスがTVであることを識別してもよい。ウェアラブルシステムは、コンピュータビジョンアルゴリズムを起動し、TVがManuCo 55”530U Series Premium 4K UHD Slim Direct-Lit LED TVであることをさらに識別してもよい。
【0112】
ウェアラブルシステムは、1つ以上の特性に関して、既存の標的デバイスの視覚的点検によって、標的デバイスを識別してもよい。例えば、標的デバイスは、バーコードまたはQRコード(登録商標)等の光学的に可読であるラベルを含んでもよい。ウェアラブルシステムは、ラベルを走査または結像し、情報をラベルから抽出するための光学センサ(例えば、外向きに面したカメラ)を含んでもよい。抽出された情報は、製造業者、デバイスのタイプ等のデバイス識別子を含んでもよい。ラベルは、標的デバイス上に貼付またはインプリントされてもよい。例えば、TVは、TVの製造業者、モデル、製造番号等を明示的に示す、ステッカーまたはプレートを有してもよい。別の実施例として、TVのブランドが、TVパネルの表面上にインプリントされてもよい。
【0113】
いくつかの実施形態では、標的デバイスが、物理的遠隔装置であって、ウェアラブルシステムが、物理的遠隔装置を認識すると、ウェアラブルシステムは、関連付けられた親デバイスを自動的に識別するように構成されてもよい。例えば、いったんウェアラブルシステムが、TV1210のための物理的遠隔装置1220を認識すると、ウェアラブルシステムは、親デバイスの外観、親デバイスと関連付けられた通信プロトコル、または親デバイスのブランド/モデル等の親デバイスと関連付けられた情報を読み出すまたは検索することができる。ウェアラブルシステムは、外向きに面した結像システムによって入手された画像に基づいて、ユーザの環内の親デバイスを検索および認識することができる。認識は、本明細書に説明されるコンピュータビジョンアルゴリズムを使用して達成されてもよい。ウェアラブルシステムはまた、クエリ信号を環境に送信し、クエリ信号に対して受信された応答に基づいて、親デバイスを識別することができる。物理的遠隔装置に基づいて親デバイスを識別するためのこれらの技法はまた、標的デバイスが親デバイスであるときにも適用されることができる。例えば、ウェアラブルシステムは、類似技法を使用して、認識される親デバイスに基づいて、ユーザの環境内の物理的遠隔装置を識別することができる。
【0114】
親デバイスは、いくつかの状況では、複数の物理的遠隔装置と関連付けられ得る。例えば、ゲームステーションは、複数のゲームコントローラと関連付けられ得る。ウェアラブルシステムは、親デバイスと関連付けられた1つを上回る仮想遠隔装置が存在する(各仮想遠隔装置は、物理的遠隔装置に対応し得る)ことを示す、通知をユーザにプロンプトしてもよい。ウェアラブルシステムは、ユーザに、ユーザが使用することを所望する、複数の仮想遠隔装置の中の1つの仮想遠隔装置を選択するオプションを提供してもよい。
【0115】
別の実施例では、ウェアラブルシステムは、ユーザによって選択された親デバイスまたは物理的遠隔装置があるタイプであるかどうか不確かであり得る。例えば、いくつかのTVは、外観が同じであるが、異なるタイプの物理的遠隔装置と互換性があり得る。同様に、ある物理的遠隔装置は、同一ボタンまたは形状を有するように見えるが、異なる親デバイスにサービス提供する。ウェアラブルシステムは、仮想遠隔装置の可能性として考えられるオプションのリストを提示してもよい。ユーザは、次いで、可能性として考えられるオプションのリストの中から正しい仮想遠隔装置を選択することができる。
【0116】
加えて、または代替として、ウェアラブルシステムは、ユーザが、ウェアラブルシステムの仮想ユーザインターフェースを使用して、標的デバイスと関連付けられた仮想遠隔装置を選択することを可能にするように構成されることができる。例えば、ウェアラブルシステムは、利用可能な仮想遠隔装置のリストをメニュー内に提示してもよい。ユーザは、相互作用するための仮想遠隔装置をメニューから選択することができる。ウェアラブルシステムはまた、ウェアラブルシステムが仮想遠隔装置を提供し得る、親デバイスまたは親デバイスと関連付けられた物理的遠隔装置のリストを含む、メニューを提示することができる。例えば、リスト上の親デバイスまたは物理的遠隔装置は、図7に示される1つ以上のオブジェクト認識装置2208a-2208nを使用して、ウェアラブルシステムによって以前に識別されている場合がある。ユーザは、故に、親デバイスまたは物理的遠隔装置をリストから選択することによって、仮想遠隔装置を選択することができる。
【0117】
仮想遠隔装置自体は、図2に示される遠隔データリポジトリ280等のデータ記憶装置内に記憶されてもよい。ウェアラブルシステムは、本明細書に説明される技法を使用して、標的デバイスを認識し、標的デバイスに基づいて、仮想遠隔装置のための仕様をフェッチすることができる。例えば、ウェアラブルシステムは、認識された標的デバイスの説明を遠隔装置モジュール270にサブミットし、関連付けられた仮想遠隔装置のための仕様を読み出してもよい。いくつかの実施形態では、処理モジュールは、ブランド、タイプ、製造年等の標的デバイスの特性に基づいて、仕様に関する要求を別のコンピューティングデバイス(具体的タイプのデバイスのための仕様を維持するためのサーバ等)にリダイレクトしてもよい。
【0118】
仕様は、仮想遠隔装置をレンダリングする方法(例えば、レイアウト、ボタン、および他の制御等を規定する)、遠隔装置をエミュレートするために必要とされる通信チャネル(例えば、IRDA仕様から)、そのチャネル上でエミュレートされるための実際のコード(例えば、「チャネル2」の選択と関連付けられた正確なIRパルスシーケンス等)等に関する命令を含んでもよい。仕様はまた、制御要素と親デバイス上で実施される対応する機能のマッピングを含んでもよい。例えば、上向き矢印ボタン(物理的および仮想遠隔装置上の)の作動は、親デバイスによる音量を上げる機能にマッピングされてもよい。
(仮想遠隔装置をレンダリングする実施例)
【0119】
仮想遠隔装置は、物理的遠隔装置の機能の一部または全部またはレイアウトの少なくとも一部をミラーリングしてもよい。これは、物理的遠隔装置の機能性またはレイアウトを熟知しているユーザにとって、仮想遠隔装置を動作させることをより容易にし得る。仮想遠隔装置の選択(例えば、仮想遠隔装置と関連付けられた親デバイスまたは物理的遠隔装置を選択することによって)に応じて、ウェアラブルデバイスは、視覚的にユーザの近傍に現れるように、仮想遠隔装置をレンダリングすることができる。例えば、図14に示されるように、ウェアラブルデバイスは、ユーザが仮想遠隔装置と便宜的に相互作用し得るように、仮想遠隔装置1260の仮想制御パネル1264をユーザの腕の届く範囲(例えば、ユーザから10cm~1m等)内にレンダリングすることができる。いくつかの実施形態では、ユーザがその環境内で動き回るにつれて、仮想遠隔装置は、適宜、ユーザに伴って移動してもよい。例えば、ウェアラブルデバイスは、その環境内のユーザの現在の位置にかかわらず、仮想遠隔装置をユーザからある距離に提示してもよい。
【0120】
加えて、または代替として、ウェアラブルデバイスは、仮想遠隔装置を親デバイスまたは物理的遠隔装置の近傍にレンダリングすることができる。例えば、ウェアラブルデバイスは、TVを制御するための仮想遠隔装置をレンダリングすることができ、仮想遠隔装置の仮想制御パネルは、TVの隣に位置する(例えば、図13および14に示されるように)。いくつかの実施形態では、仮想遠隔装置のレンダリング場所は、親デバイスのタイプに基づいてもよい。例えば、親デバイスが、TVである場合、ウェアラブルデバイスは、TVとのユーザの相互作用が、ユーザがTVの近傍に居るときに生じる可能性が高いため、仮想遠隔装置をTVの近傍にレンダリングしてもよい。別の実施例として、親デバイスが、サーモスタットである場合、ウェアラブルデバイスは、仮想遠隔装置をユーザの近傍にレンダリングしてもよい(サーモスタットから遠く離れてもよい)。ユーザは、ユーザが階下に居ても、仮想遠隔装置を使用して、自宅内の上階のサーモスタットを制御してもよい。
【0121】
ウェアラブルデバイスは、ユーザの物理的環境上に重畳されるように、仮想遠隔装置をレンダリングすることができる。例えば、ウェアラブルデバイスは、壁の正面にあるかのように、仮想遠隔装置1260をレンダリングしてもよい。仮想遠隔装置は、環境の一部の正面にあるかのように、仮想遠隔装置が現れるように、ユーザユーザの物理的環境の一部をオクルードする仮想遠隔装置を知覚し得るように、不透明としてレンダリングされてもよい。例えば、図14に示されるように、ユーザは、仮想遠隔装置が窓1240の一部をオクルードしていることを知覚し得る。いくつかの実装では、仮想遠隔装置は、ユーザに仮想遠隔装置が透けて見え得るように、少なくとも部分的に、透明としてレンダリングされてもよい。例えば、図15に示されるように、ユーザには、ユーザが窓および壁の正面にあるように仮想遠隔装置1260を知覚し得る場合でも、窓枠および壁が見え得る。仮想遠隔装置の一部(例えば、ボタン等のユーザ作動可能要素)は、仮想遠隔装置が背景環境をあまりオクルードしないように、他の部分(例えば、本体またはフレーム)ほど透明ではないようにレンダリングされてもよい。
【0122】
ユーザはまた、仮想遠隔装置のレンダリング場所、サイズ、または配向を移動させることができる。例えば、ユーザは、仮想遠隔装置を自身により近づくように(またはより離れるように)、上向きに/下向きに、左/右等に移動させることができる。ユーザはまた、仮想遠隔装置のレンダリング場所を自身からある距離またはその環境内のある場所に固定することができる。
【0123】
いくつかの実施形態では、ウェアラブルデバイスは、TV1210または仮想遠隔装置1260と関連付けられた焦点インジケータを提示してもよい。焦点インジケータは、ユーザが仮想遠隔装置を見るまたは見出すことを補助し得る。焦点インジケータは、後光、色、知覚サイズまたは深度変化(例えば、選択されると、標的オブジェクトをより近くにおよび/またはより大きく現れさせる)、カーソルグラフィックの形状の変化(例えば、カーソルが、円形から矢印に変化され、カーソルは、ユーザの手または指の位置を示し得、カーソルグラフィックの変化は、制御要素のユーザの作動を示す、またはユーザが仮想遠隔装置上の制御要素を作動させようとしていることを示し得る)、またはユーザの注意を引き付ける、他の可聴、触覚的、または視覚的効果を備えることができる。例えば、図13では、ウェアラブルデバイスは、焦点インジケータ1262cをTV1210の周囲に、焦点インジケータ1262aを仮想遠隔装置1260の周囲に提示することができる。ウェアラブルデバイスはまた、仮想遠隔装置1260とTV1210を接続する、焦点インジケータ1262bを提示し、仮想遠隔装置1260がTV1210と関連付けられたことを示すことができる。いくつかの実施形態では、焦点インジケータの一部または全部は、コンテキスト情報、タイミング等に応じて、表示される可能性とそうではない可能性がある。例えば、全3つの焦点インジケータ1262a、1262b、および1262cは、仮想遠隔装置1260がユーザによって最初に選択されたときに表示されてもよく、これは、ユーザが、仮想遠隔装置1260がTV1210と関連付けられたことを認識することを補助し得る。ある時間周期後、ユーザに遠隔装置1260がTV1210と関連付けられたことを示すために必要とされ得ないため、焦点インジケータの一部または全部は、消失またはフェードアウトしてもよい。
(仮想遠隔装置と相互作用する実施例)
【0124】
選択イベントの間、ユーザは、仮想遠隔装置を作動させ、標的デバイスと相互作用することができる。図14は、選択イベントの間、仮想遠隔装置を作動させる実施例を図示する。図14では、ユーザは、そのウェアラブルデバイスを使用して、環境1400を知覚することができる。環境1400は、TV1210、TV1210を制御するための物理的遠隔装置1220、TV台1230、および窓1240等の物理的オブジェクトを含むことができる。環境1400はまた、仮想遠隔装置1260を含むことができる。仮想遠隔装置1260は、物理的遠隔装置1220の機能をエミュレートし、TV1210を制御することができる。例えば、仮想遠隔装置1260の仮想ボタンのレイアウトおよび機能は、物理的遠隔装置1210上の物理的キーと実質的に同一であってもよい。
【0125】
仮想遠隔装置1260は、仮想キーボード、仮想ボタン、仮想スイッチまたはトグルまたはスライダ、または仮想タッチ表面等の仮想要素を含んでもよい。これらの仮想要素は、仮想遠隔装置1260の制御パネル1264の一部であってもよい。仮想遠隔装置を作動させるために、ユーザは、相互作用イベントを仮想要素上で開始してもよい。例えば、ユーザは、タッチする、押下する、解除する、上/下または左/右にスライドさせる、軌道に沿って移動させる、または3D空間内の他のタイプの移動によって、仮想要素と相互作用することができる。
【0126】
仮想遠隔装置1260の作動に応じて、ウェアラブルシステムは、それが物理的遠隔装置1220であるかのように、TV1210と通信してもよい。実施例として、図14では、ユーザは、その右腕1250bを使用して、仮想遠隔装置1260を作動させることができる。ウェアラブルシステムは、外向きに面した結像システムを使用して、ユーザの姿勢を結像することができる。図16-18を参照してさらに説明されるように、ユーザの姿勢に基づいて、ウェアラブルシステムは、ユーザが作動させた仮想要素を算出することができる。図14に描写される実施例では、ウェアラブルシステムは、ユーザの右人差し指がボタン1266を作動させたことを決定することができる。いくつかの実施形態では、ウェアラブルシステムは、ボタン1266のための焦点インジケータを提示し、本作動がユーザによるものであることを示してもよい。
【0127】
いったんウェアラブルシステムが、ユーザが仮想遠隔装置1260の仮想要素を作動させたことを検出すると、ウェアラブルシステムは、適宜、ユーザによって作動された仮想要素に基づいて、信号を、センサ232(図2に示される)を介して、対応する親デバイスに送信し、アクションを実施するように親デバイスに命令することができる。例えば、ユーザは、仮想遠隔装置上の仮想ボタン1266をタッチすることができる。本ボタンは、TV1210の音量を上げることと関連付けられるため、ウェアラブルシステムは、適宜、信号(ウェアラブルデバイス上のIRエミッタによって生成されたIR信号等)を生成し、信号をTV1210(IR検出器を有し得る)に通信し、それによって、TVにその音量を上げさせることができる。ウェアラブルシステムによって生成された信号は、対応する物理的遠隔制御装置によって生成されるであろうものと同一信号であることができる。
【0128】
信号が照準線信号(TVのIR検出器に指向されなければならないIR信号等)である場合、ウェアラブルシステム上のエミッタは、デバイスに向かって指向される必要があり得る(単に、物理的遠隔制御装置は、その関連付けられたデバイスに向けられていなければならないように)。有利には、ウェアラブルシステムは、要求されたコマンド(例えば、TVの音量を上げる、またはチャンネルを変更するため)が生じたかどうかを決定するように構成されてもよい(例えば、それぞれ、ウェアラブルシステム上のマイクロホンを使用して、音強度の上昇を決定する、または外向きに面したカメラを使用して、TVのディスプレイが変化したかどうかを決定することによって)。コマンドの効果が、親デバイスによって生産されていない場合、ウェアラブルシステムは、ウェアラブルシステムエミッタが親デバイスに向かって指向されるように、ユーザにユーザの姿勢を変化させるように命令してもよい。例えば、ウェアラブルシステムは、視覚的グラフィック(または可聴命令)を生成して、ユーザにユーザの頭部を親デバイスに向かって向けるように提案してもよい。いくつかの実装では、いくつかのタイプの親デバイスに関して、ウェアラブルシステムと親デバイスとの間の通信は、照準線に敏感ではない場合があり(例えば、無線RF信号または超音波音響信号が使用されるとき)、前述の機能性は、随意であってもよい。
【0129】
図14における実施例は、手のジェスチャを使用して、仮想遠隔装置を作動させるステップを図示するが、ユーザはまた、頭部姿勢、眼姿勢(例えば、眼視線方向を含む)、または他の身体姿勢等の他の姿勢を使用して、仮想遠隔装置を作動させることができる。種々の姿勢に加え、またはその代替として、ユーザは、ユーザ入力デバイスを使用して、仮想遠隔装置と相互作用してもよい。例えば、ユーザは、スタイラスまたはワンドまたはトーテムを使用して、仮想遠隔装置を作動させてもよい。
【0130】
いくつかの実施形態では、ウェアラブルシステムは、物理的遠隔装置と通信し、親デバイスの機能を制御してもよい。例えば、仮想遠隔装置の作動の検出に応じて、ウェアラブルシステムは、作動と関連付けられた情報(押下されたキー等)を物理的遠隔装置に通信してもよい。物理的遠隔装置は、次いで、作動と関連付けられた情報を親デバイスに通信することができる。
【0131】
ユーザは、仮想遠隔装置の使用を終えると、ユーザは、手のジェスチャを使用して、または仮想遠隔装置を作動させ、選択イベントを終了する。実施例として、ユーザが、TV番組を鑑賞している間、ユーザは、仮想遠隔装置がもはや必要ないことを決定してもよい。その結果、ユーザは、その手を振り、仮想遠隔装置の使用を終えることを示してもよい。ユーザはまた、仮想遠隔装置上の終了ボタンを押下してもよい。ウェアラブルシステムは、それに応答して、仮想遠隔装置の表示を中止する、または実質的に視覚的に殆ど知覚不能(例えば、増加される透明度を伴って)であるように、仮想遠隔装置を表示してもよく、これは、ユーザが後に仮想遠隔装置を選択することを補助し得る。
【0132】
ある実装では、選択イベントを終了するのではなく、ウェアラブルシステムは、仮想遠隔装置をユーザのFOVから一時的に隠す、または仮想遠隔装置をユーザのFOV外またはユーザのFOVの縁に移動させてもよい。例えば、ユーザは、TV1210上で映画の鑑賞を開始し、仮想遠隔装置がしばらく必要なくなり得ることを決定してもよい。ユーザは、スワイプジェスチャを使用して、仮想遠隔装置が現時点で必要ないことを示すことができる。ウェアラブルシステムは、適宜、仮想遠隔装置をユーザのFOVから隠す、または仮想遠隔装置をユーザのFOV外に移動させる、または仮想遠隔装置を最小化することができる。
【0133】
ウェアラブルシステムはまた、閾値条件が満たされる場合、自動的に、仮想遠隔装置を隠す、または選択イベントを終了することができる。図15は、そのような特徴の実施例を図示する。図15では、ユーザは、環境1500を知覚することができ、これは、TV1210、物理的遠隔装置1220、TV台1230、および窓1240等の物理的オブジェクトを含む。ユーザはまた、仮想遠隔装置1260を知覚することができる。本明細書に説明されるように、ウェアラブルシステムは、物理的遠隔装置1220の信号をエミュレートし、仮想ユーザ遠隔装置1260を提示することができ、これは、物理的遠隔装置1220の機能を含む。しかしながら、例示的環境1500では、ユーザは、現在、ウェアラブルシステムを通して、ある番組をTV1210上で鑑賞している。ウェアラブルシステムは、ユーザが閾値時間周期の間、仮想遠隔装置を作動させていないため、仮想遠隔装置が閾値時間周期(10秒、1分、2分等)にわたって非アクティブであることを検出することができる。ウェアラブルシステムは、仮想遠隔装置の透明度を増加させること等によって、仮想遠隔装置を徐々にフェードアウトさせることができる。例えば、仮想遠隔装置1260は、フェードアウトプロセスの一部として、不透明から透明へと変化してもよい。ウェアラブルシステムはまた、仮想遠隔装置の可視性を減少させることによって、仮想遠隔装置をフェードアウトさせることができる。例えば、ウェアラブルシステムは、仮想遠隔装置のサイズを徐々に低減させる、または仮想遠隔装置の色を暗色から明色に変化させる(または色を周囲環境内の色に変化させる)ことができる。いくつかの実施形態では、ウェアラブルシステムは、仮想遠隔装置が隠されると、仮想遠隔装置と関連付けられた焦点インジケータを除去してもよい。他の実施形態では、ウェアラブルシステムは、仮想遠隔装置の制御パネルが隠されても、依然として、焦点インジケータ(例えば、仮想遠隔装置の周囲の後光等)を表示してもよい。
【0134】
非アクティブ周期に加えて、またはその代替として、仮想遠隔装置を隠す、または選択イベントを終了するための閾値条件は、標的デバイスと関連付けられたコンテキスト情報に基づいてもよい。例えば、ウェアラブルシステムが、ユーザが映画を鑑賞していることを検出すると、ウェアラブルシステムは、ユーザが映画を選択後、自動的に、仮想遠隔装置を隠してもよい(または選択イベントを終了する)。別の実施例として、ウェアラブルシステムは、親デバイスのタイプに基づいて、自動的に、仮想遠隔装置を隠す、または選択イベントを終了してもよい。例えば、ウェアラブルシステムは、仮想遠隔装置と関連付けられた親デバイスがTVまたはサーモスタットであるとき、ある非アクティブ周期後、自動的に、仮想遠隔装置を隠す、または選択イベントを終了するように構成されてもよい。しかしながら、親デバイスが、ゲームコントローラであるとき、ウェアラブルシステムは、ユーザによって具体的に示されない限り、仮想遠隔装置をその場に残すように構成されてもよい。
【0135】
本明細書に説明される実施例は、1つの仮想遠隔装置を参照するが、いくつかの実施形態では、ウェアラブルシステムは、1つ以上の標的デバイスと関連付けられた複数の仮想遠隔装置をユーザのFOV内にレンダリングしてもよい。ウェアラブルシステムは、ユーザが、姿勢またはユーザ入力デバイスを使用して、これらの仮想遠隔装置と相互作用し、その中で切り替えることを可能にしてもよい。
(仮想遠隔装置をレンダリングする例示的プロセス)
【0136】
図16は、仮想遠隔装置をレンダリングする例示的プロセスを図示する。プロセス1600は、本明細書に説明されるウェアラブルシステム200によって実施されてもよい。いくつかの実施形態では、プロセス1600は、選択イベントの一部であってもよい。
【0137】
ブロック1610では、ウェアラブルシステムは、標的デバイスのインジケーションを受信することができる。インジケーションは、ユーザの姿勢の変化またはユーザ入力デバイスの作動を含んでもよい。例えば、ユーザは、標的デバイスの選択を示す、ある手のジェスチャを行うことができる。標的デバイスは、物理的遠隔装置または物理的遠隔装置の親デバイスであってもよい。例えば、ユーザは、TVまたはTVの物理的遠隔装置を指差し、ユーザが仮想遠隔装置を介して、TVと相互作用することを所望することを示すことができる。
【0138】
ブロック1620では、ウェアラブルシステムは、少なくとも部分的に、標的デバイスの特性に基づいて、標的デバイスを認識することができる。特性は、制御パネルの形状、サイズ、色、レイアウト等の標的デバイスの外観を含んでもよい。例えば、ウェアラブルシステムは、標的デバイスの画像を入手し、コンピュータビジョンアルゴリズムを適用することができ、これは、標的デバイスの外観を識別することができる。ウェアラブルシステムは、データ記憶装置と通信し、標的デバイスの外観を使用して、標的デバイスのブランドおよびモデルを識別することができる。特性はまた、ラベル等の他の視覚的キューを含んでもよい。例えば、ウェアラブルシステムは、標的デバイスと関連付けられたラベルを識別することができ、これは、標的デバイスのブランド、モデル、製造業者、製造日、互換性等の情報を含んでもよい。ウェアラブルシステムは、適宜、ラベルを結像および解析し、標的デバイスを認識することができる。ある実装では、ウェアラブルシステムはまた、クエリ信号を標的デバイスに送信し、クエリ信号に対する応答に基づいて、標的デバイスと関連付けられたタイプを認識してもよい。例えば、ウェアラブルシステムは、クエリ信号を無線で標的デバイスに送信し、デバイス識別子を標的デバイスから要求することができる。標的デバイスは、そのデバイス識別子で応答してもよい。ウェアラブルシステムは、それによって、デバイス識別子と標的デバイスを関連付けることができる。ウェアラブルシステムは、識別子を使用して、標的デバイスの仕様、外観等の標的デバイスの特性にアクセスすることができる。ウェアラブルシステムおよび標的デバイスは、無線アドバタイジング技法を使用することができ、これは、例えば、これらのデバイスのうちの1つが、アドバタイズメントを通信し、他のデバイスが、そのようなアドバタイズメントを走査し、アドバタイジングデバイスとの無線接続を開始する。
【0139】
ブロック1630では、ウェアラブルシステムは、標的デバイスと関連付けられた仮想遠隔装置を識別することができる。例えば、認識された標的デバイスに基づいて、ウェアラブルシステムは、標的デバイスと関連付けられた仮想遠隔装置を記憶する、データ記憶装置にアクセスしてもよい。ウェアラブルシステムは、適宜、ブロック1640に示されるように、仮想遠隔装置(仮想遠隔装置の仕様とともに)をフェッチすることができる。いくつかの状況では、標的デバイスは、親デバイス(例えば、TV等)である場合、ウェアラブルシステムは、ウェアラブルシステムが標的デバイスを認識後、親デバイスと関連付けられた物理的遠隔装置を識別してもよい。ウェアラブルシステムは、物理的遠隔装置の機能をエミュレートする、仮想遠隔装置を生成することができる。標的デバイスが、物理的遠隔装置である場合、ウェアラブルシステムは、関連付けられた親デバイスを識別することができる。ウェアラブルシステムは、親デバイスとの接続を確立し、それが物理的遠隔装置であるかのように、親デバイスと通信することができる。
【0140】
ブロック1640では、ウェアラブルシステムは、仮想遠隔装置と関連付けられた仕様にアクセスすることができる。仕様は、親デバイスと通信するためのプロトコル(例えば、通信のために使用されるチャネルおよび周波数等)を含んでもよい。仕様はまた、制御パネル上の仮想要素のレイアウトおよび仮想遠隔装置の各仮想要素の機能を含んでもよい。仕様は、仮想遠隔装置が、物理的遠隔装置と同一仕様を有し得、かつおよび仮想遠隔装置が、親デバイスとの通信のために、物理的遠隔装置に取って代わり得るように、親デバイスを制御するために使用される物理的遠隔装置に基づいてもよい。いくつかの実装では、ウェアラブルシステムは、標的デバイスが認識された直後、ブロック1640を実施することができる。例えば、ウェアラブルシステムは、ブロック1630の前に、ブロック1640を実施することができる。ウェアラブルシステムは、ウェアラブルシステムが物理的遠隔装置または親デバイスのモデルを識別した後、仕様をデータ記憶装置から自動的にフェッチすることができる。ある実装では、ウェアラブルシステムは、仕様に基づいて、仮想遠隔装置にアクセスすることができる。
【0141】
ブロック1650では、ウェアラブルシステムは、少なくとも部分的に、仕様に基づいて、仮想遠隔装置をAR/MR環境内にレンダリングすることができる。ウェアラブルシステムは、読み出されたレイアウトに基づいて、仮想遠隔装置および仮想遠隔装置の仮想要素をレンダリングすることができる。いくつかの実施形態では、ウェアラブルシステムは、仮想遠隔装置、仮想遠隔装置の仮想要素、または親デバイスと関連付けられた1つ以上の焦点インジケータを提供してもよい。例えば、焦点インジケータは、親デバイスおよび仮想遠隔装置を接続する、視覚的接続(線等)を含んでもよい。本焦点インジケータは、仮想遠隔装置が親デバイスを制御することを示してもよい。
【0142】
本明細書にさらに説明されるように、ユーザは、姿勢またはユーザ入力デバイスを使用して、仮想遠隔装置(および仮想遠隔装置の仮想要素)を作動させることができる。ウェアラブルシステムは、ユーザのアクションに基づいて、信号を生成し、1つ以上のユーザインターフェースアクションを実施させることができる。
【0143】
本明細書の実施例は、物理的遠隔装置または親デバイスに基づいて、仮想遠隔装置をレンダリングすることを参照して説明されるが、種々の実施形態では、仮想遠隔装置はまた、ユーザ入力デバイス466(例えば、物理的キーボード等)に基づいて、レンダリングされることができる。
(仮想ユーザインターフェース上の仮想要素との例示的相互作用)
【0144】
ウェアラブルシステムは、ユーザの手または指の移動またはスタイラスまたはワンドの移動に基づいて、仮想要素の作動を検出するように構成されることができる。仮想要素は、本明細書に説明される仮想遠隔装置の一部であってもよいが、いくつかの実施形態では、仮想要素は、AR/VR/MR環境内にレンダリングされた独立型ユーザインターフェース要素であってもよい。仮想要素は、仮想ボタン、トグル、スライダ、または仮想タッチ表面、または他のタイプのユーザインターフェース外観を伴う要素であってもよい。
【0145】
図17は、ユーザによる仮想ボタンを押下する行為を検出する実施例を図示する。図17における仮想ボタン1700は、近位表面1712と、遠位表面1714とを含み、近位表面1712は、ユーザに近い仮想ボタンの側である一方、遠位表面1714は、ユーザから離れた側である。
【0146】
仮想ボタン1700は、アクティブ体積1710を含むことができる。アクティブ体積1710は、ボタンが作動され得る、ユーザの環境内の空間の体積を表し得る。ウェアラブルシステムが、ユーザの指が本空間の体積の中に進入したことを検出すると、ウェアラブルシステムは、相互作用イベントを本空間の体積と関連付けられた仮想ボタン1700上で開始してもよい。仮想遠隔装置(または仮想ボタン)の場所は、ユーザの位置または相互作用に基づいて変化し得るため(ユーザがその部屋内を動き回るとき、またはユーザが仮想遠隔装置を異なる場所に移動させるとき等)、仮想ボタン1700と関連付けられたアクティブ体積1710は、必ずしも、ユーザの環境内のある場所に固定されない場合がある。
【0147】
図17では、仮想ボタン1700と関連付けられたアクティブ体積1710は、仮想ボタン1700の近位表面1712と遠位表面1714との間の空間の体積であってもよい。本実施例では、アクティブ体積1710と関連付けられた空間の体積は、仮想ボタン1700と関連付けられた空間の体積と同一であるが、いくつかの実施形態では、アクティブ体積1710と関連付けられた空間の体積は、仮想ボタン1700と関連付けられたアクティブ体積の一部であってもよい。
【0148】
アクティブ体積1710は、トリガ表面1750と、解除表面1760とを含むことができる。トリガ表面1750または解除表面1760は、ウェアラブルシステムに相互作用イベントを仮想要素上で開始させてもよい。
【0149】
アクティブ体積1710はまた、アクティブ表面1730を含んでもよい。アクティブ表面1730は、近位表面1712または遠位表面1714と平行関係にあってもよい。アクティブ表面1730の位置は、ユーザの指の移動に基づいて変化してもよい。例えば、アクティブ表面1730の最初の位置は、近位表面1712にあってもよい。しかしながら、ユーザの指1720が、アクティブ体積1710の中に進入すると、ウェアラブルシステムは、ユーザの指1720の移動に基づいて、アクティブ体積1710の中への貫通距離1740を計算してもよい。本貫通距離1740は、アクティブ表面1730の変位を計算するために使用されてもよい。例えば、アクティブ表面1730は、貫通距離1740の量だけ、近位表面1712から移動してもよい。いくつかの実施形態では、少なくともアクティブ表面1730は、ユーザが仮想ボタン1700が押下または解除されたことを視覚的に知覚し得るように、ユーザに表示される。さらに、指1720が、ボタン1700を作動させるように図17に図示されるが、これは、例証のためであって、他の実施形態では、スタイラスまたはワンドの端部が、ボタン1700を作動させるために使用されることができる。さらに、ユーザの指1720は、親指、人差し指、または他の指であることができる。
【0150】
ウェアラブルシステムはまた、アクティブ表面1730と関連付けられた速度を計算してもよい。例えば、ユーザの指1720は、速度
【化1】

を伴って、アクティブ体積1710に進入してもよい。速度
【化2】

は、2つの成分、すなわち、
【化3】

を含んでもよく、
【化4】

は、アクティブ表面1730に対して法線方向であって、
【化5】

は、アクティブ表面1730と平行である。速度
【化6】

が、アクティブ表面1730に付与されてもよい。その結果、アクティブ表面1730は、指1720がアクティブ表面の背面に向かって移動すると、指1720と同時に移動することができる。ウェアラブルシステムは、外向きに面した結像システム464を利用して、ユーザの指1720の移動を結像し、コンピュータビジョン技法を使用して、位置または速度
【化7】

を決定することができる。速度が測定される実装では、貫通距離1740は、
【化8】

としての数値積分(例えば、シンプソンの公式、ニュートン・コーツアルゴリズム、またはガウス求積法)を介して決定されることができる。
【0151】
指1720が、遠位表面1714に向かって移動を継続するにつれて、アクティブ表面1730は、トリガ表面1750に到達し得る。いくつかの実施形態では、トリガ表面1750は、アクティブ体積1710の遠位表面1714に位置してもよい。他の実施形態では、トリガ表面1750は、近位表面1712と遠位表面1744との間にあってもよい。アクティブ表面1730がトリガ表面1750の位置に到達したことを決定することに応じて、ウェアラブルシステムは、トリガ表面1750と関連付けられた相互作用イベントを開始してもよい。例えば、ウェアラブルシステムは、相互作用イベントの一部として、ユーザがボタン1710を押下したことを示す、信号を生成してもよい。いくつかの実施形態では、相互作用イベントが、トリガされると、ウェアラブルシステムは、少なくとも一時的に、別の相互作用イベントが生成されないように防止してもよい。例えば、仮想ボタンは、押下、解除、またはスライド等の複数の相互作用イベントと関連付けられてもよい。押下相互作用が、トリガされると、ウェアラブルシステムは、スライドまたは解除相互作用イベントがトリガされないように防止してもよい。近位表面1712とトリガ表面1750との間の距離は、ボタン1700の感度を反映させるように設定されてもよい。例えば、非常に敏感なボタン1700は、比較的に短い距離を近位表面1712とトリガ表面1750との間に有してもよい(ボタンが指先端のわずかな移動で容易にトリガするように)。あまり敏感ではないボタン1700は、比較的に長い距離を近位表面1712とトリガ表面1750との間に有してもよい(より大きな指先端移動が、ボタンを作動させるために必要とされるように)。近位表面1712とトリガ表面1750との間の距離は、種々の実施形態では、約1mm~5cmの範囲内またはある他の距離であってもよい。
【0152】
いくつかの実装では、アクティブ表面1730は、トリガ表面1750を越えて移動することが不可能である場合がある。例えば、アクティブ表面1730が、ユーザの指1720が遠位表面1714に向かったまたはそれを越えた方向に移動を継続する場合でも、トリガ表面1750を越えて移動することを妨げ得る。
【0153】
ユーザは、例えば、その指を後退させることによって、相互作用イベントを終了することができる。実施例として、ユーザは、その指を近位表面1712に向かって戻るように移動させてもよい。アクティブ表面1730は、適宜、近位表面1712に向かってトリガ表面1750から移動してもよい。いくつかの実施形態では、アクティブ表面1730が、解除表面1760に到達すると、ウェアラブルシステムは、仮想ボタン1700の押下と関連付けられた相互作用イベントを終了し、それによって、別の相互作用イベントが開始されることを可能にしてもよい(例えば、ユーザがボタンを遠位表面1714に向かって再び押下することによって)。加えて、または代替として、アクティブ表面1730が、解除表面1760に到達すると、ウェアラブルシステムは、解除ボタンと関連付けられた別の相互作用イベントを開始してもよい。例えば、仮想ボタン1700は、ユーザが仮想ボタン1700を押下すると、ユーザのアバタが、ウェアラブルシステムによってレンダリングされた仮想環境内のある方向に移動するように、矢印キーと関連付けられてもよい。ユーザが、仮想ボタン1700を解除すると、ウェアラブルシステムは、ユーザのアバタがその方向における移動を停止するであろうことを示す、信号を生成してもよい。
【0154】
アクティブ表面1730は、近位表面1712に向かって所定の復帰速度で後退してもよい。復帰速度は、一定またはアクティブ表面の位置の関数であってもよい。例えば、復帰速度は、近位表面1712に到達する(アクティブ表面1730が仮想ボタンの近位表面1712を越えないように構成され得るため、復帰速度が、0に到達する)まで、徐々に増加してもよい。別の実施例として、復帰速度は、ある閾値位置に到達すると、変化してもよい。例えば、復帰速度は、アクティブ表面がトリガ表面1750と解除表面1760との間にある間、低速であってもよいが、アクティブ表面が解除表面1760を越えて近位表面1712に向かって移動するとき、増加してもよい。復帰速度は、後退する指の速度を上回る、それ未満、またはそれと等しくてもよい。
【0155】
いくつかの実施形態では、アクティブ表面1730は、アクティブ表面1730が後退しているとき、指1720と同時に移動してもよい。例えば、アクティブ表面1730は、速度
【化9】

を伴って後退し得る一方、指は、速度
【化10】

を伴って後退する。
【0156】
仮想ボタンの押下に加え、またはその代替として、ユーザはまた、仮想ボタンをスライドさせることによって、仮想ボタンと相互作用することができる。図18は、ユーザが仮想ボタンを上下にスライドさせることによって仮想ボタンを作動させる、実施例を図示する。仮想ボタン1800は、アクティブ表面1830を含んでもよい。アクティブ表面1830は、図17に説明されるアクティブ表面1730の実施形態であってもよい。アクティブ表面1830は、最初に、位置1832に位置してもよい。
【0157】
本実施例では、アクティブ表面1730は、遠位表面1714および近位表面1712と平行方向に移動するが、アクティブ表面の移動1730は、3D空間内の任意の方向(遠位表面1714または近位表面1712と平行ではない方向等)に移動してもよい。
【0158】
図18では、ウェアラブルシステムは、指1720が、最初に、アクティブ表面1830の位置1832に対応する、位置1722にあることを決定してもよい。ウェアラブルシステムはさらに、指1720の一部がアクティブ表面1830と交差することを検出してもよい。ウェアラブルシステムは、指1720が、速度
【化11】

を伴って、位置1722から位置1724に移動したことを検出することができる。速度
【化12】

は、速度
【化13】

から成り、
【化14】

は、アクティブ表面1830に対して法線方向であって、
【化15】

は、アクティブ表面1830と平行である。故に、ウェアラブルシステムは、速度
【化16】

を伴って、アクティブ表面1830を移動させることができる。
【0159】
本実施例では、アクティブ表面1830の変位もまた、指1720の移動に基づいて計算されてもよい。例えば、ウェアラブルシステムは、指1720が距離1836にわたってアクティブ表面1830と平行方向に移動したことを計算することができる。ウェアラブルシステムは、次いで、アクティブ表面が距離1836にわたって変位され得ることを決定してもよい。故に、ウェアラブルシステムは、アクティブ表面を位置1832から位置1834に上向きに移動させてもよい。いくつかの実施形態では、ウェアラブルシステムは、相互作用イベントがトリガされ得る、1つ以上の閾値位置を設定してもよい。例えば、アクティブ表面が、位置1834に到達すると、ウェアラブルシステムは、信号を生成し、ユーザのFOV内の仮想オブジェクトを上向きに移動させてもよい。同様に、図17を参照して説明されるように、ウェアラブルシステムは、外向きに面した結像システム464を利用して、ユーザの指1720の移動を結像し、コンピュータビジョン技法を使用して、位置または速度
【化17】

を決定することができる。速度が測定される実装では、変位距離1836は、
【化18】

としての数値積分(例えば、シンプソンの公式、ニュートン・コーツアルゴリズム、またはガウス求積法)を介して決定されることができる。
【0160】
ユーザの指1720が、アクティブ表面1830をもはやタッチしてないとき、またはユーザの指1720が、下方にスライドしているとき、ウェアラブルシステムは、アクティブ表面をその初期位置に後退させてもよい(位置1834から位置1832に等)。いくつかの実施形態では、後退速度は、所定の速度であってもよく、これは、指の移動に対応しなくてもよい。他の実施形態では、アクティブ表面は、指1720と同時に移動してもよい。
【0161】
図19は、ユーザが仮想タッチ表面を作動させる、実施例を図示する。仮想タッチ表面1900は、本明細書に説明される仮想遠隔装置の一部である、または独立型仮想要素であってもよい。ユーザは、指1720を使用して、仮想タッチ表面1900を作動させることができる。指1720は、軌道1772に沿って移動してもよい。ウェアラブルシステムは、故に、軌道1772に基づいて、相互作用イベントを開始することができる。例えば、ウェアラブルシステムは、軌道1772の接線1774を計算することができる。ウェアラブルシステムは、接線1774に沿った移動(速度または変位)が閾値条件を超える場合、相互作用イベントを開始することができる。相互作用イベントの間、ウェアラブルシステムは、仮想オブジェクトを軌道1772に沿って移動させるための命令を提供することができる。
【0162】
いくつかの実施形態では、ウェアラブルシステムは、仮想要素と関連付けられた焦点インジケータを提示してもよい。例えば、ウェアラブルシステムは、アクティブ平面の移動に基づいて、色または深度変化を提示してもよく、色の強度または知覚深度は、アクティブ表面が仮想ボタンの遠位表面に向かって移動するにつれて増加する。別の実施例として、ウェアラブルシステムは、仮想ボタンが押下されると、音または光彩を仮想ボタンの周囲に提供してもよい。ウェアラブルシステムはまた、仮想ボタンの近位表面を照明し、仮想ボタンが押下されたことを示してもよい。焦点インジケータはまた、ユーザがボタンを解除するときも提供されてもよい。例えば、ボタンが近位表面のより近くに移動するにつれて、ボタン上の照明は、減少してもよい。別の実施例として、仮想ボタンと関連付けられたサイズ(またはフォント)が、その初期位置に後退するにつれて減少してもよい。
【0163】
図16-18に図示される仮想要素の外観(例えば、仮想ボタン1700、1800、および仮想タッチ表面1900)は、単に、実施例であって、限定することを意図するものではない。例えば、アクティブ表面および仮想要素は、長方形、三角形、円形、卵形、球体、直方体、角錐、不規則形等、任意の2Dまたは3D形状であってもよい。
【0164】
さらに、実施例は、仮想要素をユーザの指で作動させることを参照して説明されるが、いくつかの実装では、ユーザはまた、他の手姿勢、身体姿勢、または1つを上回る形を使用して、仮想要素を作動させることができる。加えて、または代替として、ユーザは、スタイラスまたはワンド等のユーザ入力デバイスを使用して、仮想要素を作動させることができる。
(仮想ボタンと相互作用するための例示的プロセス)
【0165】
図20は、仮想ユーザインターフェース内の仮想要素との相互作用イベントを開始するための例示的プロセスを図示する。図20におけるプロセス2000は、本明細書に説明されるウェアラブルシステム200によって実施されてもよい。
【0166】
ブロック2010では、ウェアラブルシステムは、仮想ユーザインターフェース内の仮想要素を識別することができる。仮想ユーザインターフェースは、AR/VR/MR環境の一部であってもよい。VRまたはMR環境は、単独で、または別のコンピューティングデバイスと組み合わせて、ウェアラブルシステムによってレンダリングされてもよい。仮想要素は、仮想ボタンまたは仮想タッチ表面であってもよい。仮想要素は、本明細書に説明される仮想遠隔装置の一部である、または独立型仮想ユーザインターフェース要素であってもよい。仮想要素は、アクティブ表面を含んでもよく、その移動は、ユーザの移動と関連付けられてもよい。いくつかの実施形態では、アクティブ表面は、アクティブ体積の一部であってもよく、これは、ユーザの身体の一部(指等)がアクティブ体積の中に進入したことの検出に応じて、相互作用イベントをトリガさせることができる。
【0167】
ブロック2020では、ウェアラブルシステムは、アクティブ表面の第1の位置を識別することができる。第1の位置は、ユーザ相互作用の前のアクティブ表面の初期位置であってもよい。例えば、第1の位置は、仮想ボタン(または仮想ボタンのアクティブ体積)の近位表面に位置してもよい。しかしながら、いくつかの実装では、ユーザが、ボタンをすでに押下しているとき、第1の位置は、仮想ボタン(または仮想ボタンのアクティブ体積)のトリガ表面または遠位表面にあってもよい。
【0168】
ブロック2030では、ウェアラブルシステムは、仮想要素とのユーザ相互作用のインジケーションを受信することができる。インジケーションは、ユーザの身体の一部が仮想要素(またはアクティブ表面)と交差することであってもよい。例えば、ユーザは、仮想ボタンを押下する、またはアクティブ表面をタッチしてもよい。
【0169】
ブロック2040では、ウェアラブルシステムは、少なくとも部分的に、インジケーション2040に基づいて、アクティブ表面の移動を計算することができる。例えば、ウェアラブルシステムは、ユーザが仮想ボタンを押下すると、ユーザの指の速度ベクトルを計算することができる。速度ベクトルに基づいて、ウェアラブルシステムは、アクティブ表面に対して法線の方向における速度を計算し、本速度をアクティブ表面に関する速度として使用することができる。別の実施例として、ユーザが、仮想表面をスライドさせると、ウェアラブルシステムは、アクティブ表面の速度を決定するために、アクティブ表面と平行方向における速度を計算することができる。ウェアラブルシステムはまた、ユーザの指が移動した距離の量に基づいて、アクティブ表面の変位を計算することができる。
【0170】
ブロック2050では、ウェアラブルシステムは、少なくとも部分的に、移動2050に基づいて、アクティブ表面の第2の位置を計算することができる。例えば、ウェアラブルシステムは、アクティブ表面の変位に基づいて、第2の位置を計算することができる。いくつかの実施形態では、いったんアクティブ表面がある閾値位置に到達すると、アクティブ表面は、移動を継続しないであろう。例えば、アクティブ表面が、アクティブ体積の遠位端または近位端に到達すると、アクティブ表面は、アクティブ体積の遠位端または近位端を越えて移動するであろうように、移動を停止してもよい。
【0171】
ブロック2060では、ウェアラブルシステムは、少なくとも部分的に、アクティブ表面の第1の位置および第2の位置に基づいて、相互作用イベントを開始することができる。第2の位置は、あるユーザインターフェースアクションをトリガすることと関連付けられてもよい。例えば、アクティブ表面が、トリガ表面に到達すると、ウェアラブルシステムは、ユーザが仮想ボタンを押下したことを決定してもよい。別の実施例として、ユーザの指が後退すると、アクティブ表面は、アクティブ体積の近位表面に向かって戻るように移動してもよい。いったんアクティブ表面が、解除表面に到達すると、ウェアラブルシステムは、信号を生成し、ユーザが仮想ボタンを解除したことを示してもよい。
(付加的側面)
【0172】
第1の側面では、拡張現実デバイス(ARD)によって、視覚的遠隔装置を提供するためのシステムであって、仮想画像をARDのユーザに提示するための拡張現実(AR)ディスプレイと、ユーザの環境を結像するように構成される、外向きに面した結像システムと、親デバイスと通信するように構成される、センサと、外向きに面した結像システムまたはセンサのうちの少なくとも1つからのデータに基づいて、ユーザの環境内の親デバイスと関連付けられた物理的遠隔装置を識別し、物理的遠隔装置の仕様にアクセスし、少なくとも部分的に、アクセスされた仕様に基づいて、物理的遠隔装置をエミュレートし、仮想遠隔装置を生成し、仮想遠隔装置の選択を受信し、選択に応答して、ディスプレイによって、仮想遠隔装置をレンダリングし、仮想遠隔装置を介して、親デバイスとの相互作用のインジケーションを受信し、親デバイスとの相互作用のインジケーションを含む、命令を伝送するようにプログラムされる、ハードウェアプロセッサとを備える、システム。
【0173】
第2の側面では、ARディスプレイは、ライトフィールドディスプレイを備える、側面1に記載のシステム。
【0174】
第3の側面では、センサは、赤外線光源を備える、側面1-2のいずれか1項に記載のシステム。
【0175】
第4の側面では、親デバイスは、テレビ、サーモスタット、オーディオシステム、ホームシアターシステム、ホームセキュリティシステム、ドアベル、ドアロック、空調装置、暖房装置、照明システム、またはガレージドア開閉装置のうちの少なくとも1つを含む、側面1-3のいずれか1項に記載のシステム。
【0176】
第5の側面では、外向きに面した結像システムまたはセンサのうちの少なくとも1つからのデータに基づいて、物理的遠隔装置を識別するために、ハードウェアプロセッサは、環境の画像を外向きに面した結像システムから受信し、コンピュータビジョンアルゴリズムを使用して、画像内の親デバイスまたは物理的遠隔装置のうちの少なくとも1つを識別するようにプログラムされる、側面1-4のいずれか1項に記載のシステム。
【0177】
第6の側面では、画像は、静止画像、ビデオのフレーム、またはビデオのうちの少なくとも1つを含む、側面5に記載のシステム。
【0178】
第7の側面では、親デバイスまたは物理的遠隔装置のうちの少なくとも1つを識別するために、ハードウェアプロセッサは、親デバイスまたは物理的遠隔装置のうちの少なくとも1つの存在を認識し、親デバイスまたは物理的遠隔装置のうちの少なくとも1つのタイプを識別するようにプログラムされる、側面5-6のいずれか1項に記載のシステム。
【0179】
第8の側面では、コンピュータビジョンアルゴリズムは、特色特徴点アルゴリズム、単語の袋タイプ検索、またはニューラルネットワークアルゴリズムのうちの少なくとも1つを含む、側面5-7のいずれか1項に記載のシステム。
【0180】
第9の側面では、外向きに面した結像システムまたはセンサのうちの少なくとも1つからのデータに基づいて、物理的遠隔装置を識別することは、センサによって、ユーザの環境内の物理的遠隔装置または親デバイスの存在を示す信号を受信することを含む、側面1-8のいずれか1項に記載のシステム。
【0181】
第10の側面では、物理的遠隔装置の仕様は、複数のボタン、ボタンのレイアウト、通信チャネル、または通信チャネルと関連付けられた信号のうちの少なくとも1つを含む、側面1-9のいずれか1項に記載のシステム。
【0182】
第11の側面では、物理的遠隔装置をエミュレートするために、ハードウェアプロセッサは、物理的遠隔装置上のボタンの機能性と仮想遠隔装置上のボタンを関連付けるようにプログラムされる、側面1-10のいずれか1項に記載のシステム。
【0183】
第12の側面では、仮想遠隔装置の選択を受信するために、ハードウェアプロセッサは、ユーザの姿勢を検出し、姿勢は、仮想遠隔装置の選択を示す、またはユーザ入力デバイスからの選択のインジケーションを受信するように構成される、側面1-11のいずれか1項に記載のシステム。
【0184】
第13の側面では、仮想遠隔装置は、少なくとも部分的に、物理的遠隔装置のボタンのレイアウトに基づいてレンダリングされる、側面1-12のいずれか1項に記載のシステム。
【0185】
第14の側面では、相互作用のインジケーションを受信するために、ハードウェアプロセッサは、ユーザの姿勢を検出し、姿勢は、仮想遠隔装置の選択を示す、またはユーザ入力デバイスからの選択のインジケーションを受信するようにプログラムされる、側面1-13のいずれか1項に記載のシステム。
【0186】
第15の側面では、姿勢は、頭部姿勢、手のジェスチャ、身体姿勢、または足姿勢のうちの少なくとも1つを含む、側面14に記載のシステム。
【0187】
第16の側面では、命令は、赤外線データ協会通信規格または無線周波数通信規格に従って伝送される、側面1-15のいずれか1項に記載のシステム。
【0188】
第17の側面では、ウェアラブルディスプレイデバイスであって、仮想画像をウェアラブルディスプレイデバイスのユーザに提示するためのディスプレイと、ユーザの環境を結像するように構成される、外向きに面した結像システムと、電子デバイスと通信するように構成される、センサと、ディスプレイ、外向きに面した結像システム、およびセンサと通信する、ハードウェアプロセッサであって、電子デバイスの遠隔制御装置仕様にアクセスし、電子デバイスとのユーザ相互作用を可能にするユーザインターフェースを有する、仮想遠隔装置をレンダリングし、ユーザインターフェースは、少なくとも部分的に、遠隔制御装置仕様に基づく機能性を提供し、外向きに面したカメラによって取得される画像を分析し、ユーザによるジェスチャを決定し、ジェスチャを分析し、ユーザによる仮想遠隔装置のユーザインターフェースとの相互作用を決定し、センサを介して、電子デバイスに、相互作用と関連付けられた命令を伝送し、命令は、少なくとも部分的に、電子デバイスの遠隔制御装置仕様に基づくようにプログラムされる、ハードウェアプロセッサとを備える、ウェアラブルディスプレイデバイス。
【0189】
第18の側面では、ディスプレイは、ライトフィールドディスプレイを備える、側面17に記載のウェアラブルディスプレイデバイス。
【0190】
第19の側面では、センサは、赤外線エミッタまたは無線周波数エミッタを備える、側面17または18に記載のウェアラブルディスプレイデバイス。
【0191】
第20の側面では、ハードウェアプロセッサは、外向きに面した結像システムによって取得される画像を分析し、電子デバイスの具体的モデルを決定するようにプログラムされる、側面17-19のいずれか1項に記載のウェアラブルディスプレイデバイス。
【0192】
第21の側面では、ハードウェアプロセッサは、仮想遠隔装置と関連付けられた焦点インジケータをレンダリングするようにプログラムされる、側面17-20のいずれか1項に記載のウェアラブルディスプレイデバイス。
【0193】
第22の側面では、拡張現実デバイス(ARD)によって、視覚的遠隔装置を提供するための方法であって、ハードウェアプロセッサと、仮想画像をARDのユーザに提示するためのディスプレイと、ユーザの環境を結像するように構成される、外向きに面した結像システムと、親デバイスと通信するように構成される、センサとを備える、ARDの制御下で、外向きに面した結像システムまたはセンサのうちの少なくとも1つからのデータに基づいて、ユーザの環境内の親デバイスと関連付けられた物理的遠隔装置を識別するステップと、物理的遠隔装置の仕様にアクセスするステップと、少なくとも部分的に、アクセスされた仕様に基づいて、物理的遠隔装置をエミュレートし、仮想遠隔装置を生成するステップと、仮想遠隔装置の選択を受信するステップと、選択に応答して、ディスプレイによって、仮想遠隔装置をレンダリングし、仮想遠隔装置を介して、親デバイスとの相互作用のインジケーションを受信するステップと、親デバイスとの相互作用のインジケーションを含む、命令を伝送するステップとを含む、方法。
【0194】
第23の側面では、外向きに面した結像システムまたはセンサのうちの少なくとも1つからのデータに基づいて、物理的遠隔装置を識別するステップは、環境の画像を外向きに面した結像システムから受信するステップと、コンピュータビジョンアルゴリズムを使用して、画像内の親デバイスまたは物理的遠隔装置のうちの少なくとも1つを識別するステップとを含む、側面22に記載の方法。
【0195】
第24の側面では、親デバイスまたは物理的遠隔装置のうちの少なくとも1つを識別するステップは、親デバイスまたは物理的遠隔装置のうちの少なくとも1つの存在を認識するステップと、親デバイスまたは物理的遠隔装置のうちの少なくとも1つのタイプを識別するステップとを含む、側面23に記載の方法。
【0196】
第25の側面では、コンピュータビジョンアルゴリズムは、特色特徴点アルゴリズム、単語の袋タイプ検索、またはニューラルネットワークアルゴリズムのうちの少なくとも1つを含む、側面23または24に記載の方法。
【0197】
第26の側面では、外向きに面した結像システムまたはセンサのうちの少なくとも1つからのデータに基づいて、物理的遠隔装置を識別するステップは、センサによって、ユーザの環境内の物理的遠隔装置または親デバイスの存在を示す信号を受信するステップを含む、側面22-25のいずれか1項に記載の方法。
【0198】
第27の側面では、物理的遠隔装置の仕様は、複数のボタン、ボタンのレイアウト、通信チャネル、または通信チャネルと関連付けられた信号のうちの少なくとも1つを含む、側面22-26のいずれか1項に記載の方法。
【0199】
第28の側面では、物理的遠隔装置をエミュレートするステップは、物理的遠隔装置上のボタンの機能性と仮想遠隔装置上のボタンを関連付けるステップを含む、側面22-27のいずれか1項に記載の方法。
【0200】
第29の側面では、仮想遠隔装置の選択を受信するステップは、ユーザの姿勢を検出するステップであって、姿勢は、仮想遠隔装置の選択を示す、ステップ、またはユーザ入力デバイスからの選択のインジケーションを受信するステップのうちの少なくとも1つを含む、側面22-28のいずれか1項に記載の方法。
【0201】
第30の側面では、仮想遠隔装置は、少なくとも部分的に、物理的遠隔装置のボタンのレイアウトに基づいてレンダリングされる、側面22-29のいずれか1項に記載の方法。
【0202】
第31の側面では、相互作用のインジケーションを受信するステップは、ユーザの姿勢を検出するステップであって、姿勢は、仮想遠隔装置の選択を示す、ステップ、またはユーザ入力デバイスからの選択のインジケーションを受信するステップを含む、側面22-30のいずれか1項に記載の方法。
【0203】
第32の側面では、命令は、赤外線データ協会通信規格または無線周波数通信規格に従って伝送される、側面22-31のいずれか1項に記載の方法。
【0204】
第33の側面では、仮想ボタンの作動を検出するためのシステムであって、仮想画像をユーザに表示するように構成される、システムウェアラブルディスプレイシステムと、ユーザの環境の画像を取得するように構成される、外向きに面した結像システムと、仮想ユーザインターフェースの仮想ボタンを識別し、仮想ボタンは、アクティブ表面と、トリガ表面とを備え、アクティブ表面の第1の位置を識別し、仮想ボタンの移動を示すユーザ相互作用を決定し、少なくとも部分的に、ユーザ相互作用に基づいて、アクティブ表面の移動を計算し、少なくとも部分的に、移動に基づいて、第2のアクティブ表面の位置を計算し、少なくとも部分的に、アクティブ表面の第1の位置および第2の位置に基づいて、相互作用イベントを開始するようにプログラムされる、ハードウェアプロセッサとを備え、相互作用イベントは、アクティブ表面の移動がトリガ表面に向かっており、アクティブ表面の第2の位置がトリガ表面の少なくとも一部と交差するとき、仮想ボタンを作動させることと関連付けられ、相互作用イベントは、アクティブ表面の移動がトリガ表面から離れており、アクティブ表面の第1の位置がトリガ表面の少なくとも一部と交差するとき、仮想ボタンを解除することと関連付けられる、システム。
【0205】
第34の側面では、アクティブ表面は、トリガ表面と平行関係にある、側面33に記載のシステム。
【0206】
第35の側面では、仮想ボタンはさらに、解除表面を備え、相互作用イベントは、アクティブ表面の第2の位置が解除表面の少なくとも一部と交差するとき、仮想ボタンを解除することと関連付けられる、側面33または34に記載のシステム。
【0207】
第36の側面では、仮想ボタンの移動を示すユーザ相互作用は、アクティブ平面とユーザの環境内の物理的オブジェクトとの間の交差を含み、物理的オブジェクトは、ユーザの一部またはユーザ入力デバイスの一部のうちの少なくとも1つを含む、側面33-35のいずれか1項に記載のシステム。
【0208】
第37の側面では、アクティブ表面の移動を計算するために、ハードウェアプロセッサは、物理的オブジェクトの速度ベクトルを計算し、アクティブ表面に対して法線方向の物理的オブジェクトの速度ベクトルの値、アクティブ表面と平行な物理的オブジェクトの速度ベクトルの値、またはアクティブ表面に対して接線方向の物理的オブジェクトの速度ベクトルの値のうちの少なくとも1つを使用して、アクティブ表面の速度を計算するように構成される、側面36に記載のシステム。
【0209】
第38の側面では、アクティブ表面の第2の位置を計算するために、ハードウェアプロセッサは、物理的オブジェクトがトリガ表面からある後退速度で後退したことを決定し、アクティブ表面を後退速度未満またはそれと等しい速度で移動させるように構成される、側面36-37のいずれか1項に記載のシステム。
【0210】
第39の側面では、アクティブ表面の移動を計算することは、アクティブ表面の変位を計算することを含む、側面33-38のいずれか1項に記載のシステム。
【0211】
第40の側面では、ハードウェアプロセッサはさらに、少なくとも部分的に、アクティブ表面の移動に基づいて、仮想ボタンの可視化を提供するように構成される、側面33-39のいずれか1項に記載のシステム。
【0212】
第41の側面では、可視化は、仮想ボタンの焦点インジケータを備え、焦点インジケータは、仮想ボタンの移動が閾値条件に達すると提供される、側面40に記載のシステム。
【0213】
第42の側面では、閾値条件は、閾値位置、閾値持続時間、または閾値速度のうちの少なくとも1つを含む、側面41に記載のシステム。
【0214】
第43の側面では、可視化は、仮想ボタンの焦点インジケータを備え、焦点インジケータは、アクティブ平面の移動に従って変化する、側面40-42のいずれか1項に記載のシステム。
【0215】
第44の側面では、相互作用イベントは、仮想ユーザインターフェース上のユーザインターフェース機能をトリガすること、またはユーザインターフェース機能をディスエーブルにすることのうちの少なくとも1つを含む、側面33-43のいずれか1項に記載のシステム。
【0216】
第45の側面では、仮想ボタンの移動を示すユーザ相互作用を決定するために、ハードウェアプロセッサは、外向きに面した結像システムによって取得される画像を分析するように構成される、側面33-44のいずれか1項に記載のシステム。
【0217】
第46の側面では、ハードウェアプロセッサはさらに、相互作用イベントの開始と関連付けられた音を生成するように構成される、側面33-45のいずれか1項に記載のシステム。
【0218】
第47の側面では、仮想ボタンの作動を検出するための方法であって、仮想画像をユーザに表示するように構成される、ウェアラブルディスプレイシステムと、ハードウェアプロセッサと、ユーザの環境の画像を取得するように構成される、外向きに面した結像システムとの制御下で、仮想ユーザインターフェースの仮想ボタンを識別するステップであって、仮想ボタンは、アクティブ表面と、トリガ表面とを備える、ステップと、アクティブ表面の第1の位置を識別し、仮想ボタンの移動を示すユーザ相互作用を決定するステップと、少なくとも部分的に、ユーザ相互作用に基づいて、アクティブ表面の移動を計算するステップと、少なくとも部分的に、移動に基づいて、第2のアクティブ表面の位置を計算するステップと、少なくとも部分的に、アクティブ表面の第1の位置および第2の位置に基づいて、相互作用イベントを開始するステップとを含み、相互作用イベントは、アクティブ表面の移動がトリガ表面に向かっており、アクティブ表面の第2の位置がトリガ表面の少なくとも一部と交差するとき、仮想ボタンを作動させるステップと関連付けられ、相互作用イベントは、アクティブ表面の移動がトリガ表面から離れており、アクティブ表面の第1の位置がトリガ表面の少なくとも一部と交差するとき、仮想ボタンを解除するステップと関連付けられる、方法。
【0219】
第48の側面では、アクティブ表面は、トリガ表面と平行関係にある、側面47に記載の方法。
【0220】
第49の側面では、仮想ボタンはさらに、解除表面を備え、相互作用イベントは、アクティブ表面の第2の位置が解除表面の少なくとも一部と交差するとき、仮想ボタンを解除するステップと関連付けられる、側面47-48のいずれか1項に記載の方法。
【0221】
第50の側面では、仮想ボタンの移動を示すユーザ相互作用は、アクティブ平面とユーザの環境内の物理的オブジェクトとの間の交差を含み、物理的オブジェクトは、ユーザの一部またはユーザ入力デバイスの一部のうちの少なくとも1つを含む、側面47-49のいずれか1項に記載の方法。
【0222】
第51の側面では、アクティブ表面の移動を計算するステップは、物理的オブジェクトの速度ベクトルを計算するステップと、アクティブ表面に対して法線方向の物理的オブジェクトの速度ベクトルの値、アクティブ表面と平行な物理的オブジェクトの速度ベクトルの値、またはアクティブ表面に対して接線方向の物理的オブジェクトの速度ベクトルの値のうちの少なくとも1つを使用して、アクティブ表面の速度を計算するステップとを含む、側面50に記載の方法。
【0223】
第52の側面では、アクティブ表面の第2の位置を計算するステップは、物理的オブジェクトがトリガ表面からある後退速度で後退したことを決定するステップと、アクティブ表面を後退速度未満またはそれと等しい速度で移動させるステップとを含む、側面50または51に記載の方法。
【0224】
第53の側面では、少なくとも部分的に、アクティブ表面の移動に基づいて、仮想ボタンの可視化を提供するステップをさらに含む、側面47-52のいずれか1項に記載の方法。
【0225】
第54の側面では、可視化は、仮想ボタンの焦点インジケータを備え、焦点インジケータは、仮想ボタンの移動が閾値条件に達すると提供される、側面53に記載の方法。
【0226】
第55の側面では、閾値条件は、閾値位置、閾値持続時間、または閾値速度のうちの少なくとも1つを含む、側面54に記載の方法。
【0227】
第56の側面では、可視化は、仮想ボタンの焦点インジケータを備え、焦点インジケータは、アクティブ平面の移動に従って変化する、側面54または55に記載の方法。
【0228】
第57の側面では、相互作用イベントは、仮想ユーザインターフェース上のユーザインターフェース機能をトリガするステップまたはユーザインターフェース機能をディスエーブルにするステップのうちの少なくとも1つを含む、側面47-56のいずれか1項に記載の方法。
【0229】
第58の側面では、複合現実環境において仮想遠隔制御装置を提供するためのウェアラブルシステムであって、仮想画像をユーザに提示するための複合現実ディスプレイと、ユーザの環境を結像するように構成される、外向きに面した結像システムと、親デバイスと通信するように構成される、センサと、外向きに面した結像システムによって入手された画像にアクセスし、画像を分析し、親デバイスと関連付けられた物理的遠隔装置を識別し、物理的遠隔装置の仕様にアクセスし、少なくとも部分的に、物理的遠隔装置の仕様に基づいて、仮想遠隔装置を生成し、ディスプレイに仮想遠隔装置をレンダリングさせ、親デバイスとの相互作用のための仮想遠隔装置の作動を受信し、命令を生成し、親デバイスに伝送し、親デバイスに、物理的遠隔装置が作動されるかのように機能を実施させるようにプログラムされる、ハードウェアプロセッサとを備える、ウェアラブルシステム。
【0230】
第59の側面では、物理的遠隔装置を識別するために、ハードウェアプロセッサは、特色特徴点アルゴリズム、単語の袋タイプ検索、またはニューラルネットワークアルゴリズムのうちの少なくとも1つを含む、1つ以上のコンピュータビジョンアルゴリズムを使用して、画像を分析し、物理的遠隔装置を認識するようにプログラムされる、側面58に記載のウェアラブルシステム。
【0231】
第60の側面では、ハードウェアプロセッサはさらに、少なくとも部分的に、外向きに面した結像システムによって入手された画像または親デバイスの存在を示すセンサによって受信された信号に基づいて、親デバイスの存在を識別するようにプログラムされる、側面59に記載のウェアラブルシステム。
【0232】
第61の側面では、仕様は、物理的遠隔装置の制御要素の親デバイスの対応する機能へのマッピング、または物理的遠隔装置と親デバイスとの間の通信プロトコルのうちの少なくとも1つを含む、側面58-60のいずれか1項に記載のウェアラブルシステム。
【0233】
第62の側面では、仮想遠隔装置を生成するために、ハードウェアプロセッサは、少なくとも部分的に、仕様に基づいて、仮想遠隔装置のための仮想要素のレイアウトを決定し、仮想要素に対応する制御要素が物理的遠隔装置上で作動されるかのように、仮想遠隔装置上の仮想要素の作動が親デバイスを反応させ得るように、仮想遠隔装置の仮想要素と物理的遠隔装置の制御要素とを関連付けるようにプログラムされる、側面61に記載のウェアラブルシステム。
【0234】
第63の側面では、ハードウェアプロセッサはさらに、親デバイスと関連付けられた複数の候補仮想遠隔装置を決定し、少なくとも部分的に、ユーザの姿勢またはユーザ入力デバイスからのインジケーションに基づいて、複数の候補仮想遠隔装置の中の仮想遠隔装置を選択するようにプログラムされる、側面58-62のいずれか1項に記載のウェアラブルシステム。
【0235】
第64の側面では、センサは、赤外線光源を備え、命令は、赤外線データ協会通信規格または無線周波数通信規格に従って、生成され、親デバイスに伝送される、側面58-63のいずれか1項に記載のウェアラブルシステム。
【0236】
第65の側面では、仮想遠隔装置は、仮想ボタンを備え、仮想ボタンは、空間の体積と関連付けられ、仮想ボタンとのユーザの相互作用を追跡するように構成される、アクティブ表面と、ユーザインターフェースアクションをトリガするためのトリガ表面とを有する、側面58-64のいずれか1項に記載のウェアラブルシステム。
【0237】
第66の側面では、アクティブ表面は、トリガ表面と平行関係にある、側面65に記載のウェアラブルシステム。
【0238】
第67の側面では、仮想遠隔装置の作動を受信するために、ハードウェアプロセッサは、アクティブ表面の第1の位置を識別し、少なくとも部分的に、ユーザの移動に基づいて、アクティブ表面の第2の位置および移動を計算し、アクティブ表面の移動がトリガ表面に向かっており、アクティブ表面の第2の位置がトリガ表面の少なくとも一部と交差するとき、仮想ボタンを作動させる、またはアクティブ表面の移動がトリガ表面から離れており、アクティブ表面の第1の位置がトリガ表面の少なくとも一部と交差するとき、仮想ボタンを解除するように構成される、側面65または66に記載のウェアラブルシステム。
【0239】
第68の側面では、仮想ボタンはさらに、解除表面を備え、ハードウェアプロセッサは、アクティブ表面の第2の位置が解除表面の少なくとも一部と交差するとき、仮想ボタンを解除するようにプログラムされる、側面67に記載のウェアラブルシステム。
【0240】
第69の側面では、アクティブ表面の移動を計算するために、ハードウェアプロセッサは、ユーザの移動の速度ベクトルを計算し、アクティブ表面に対して法線方向の速度ベクトルの値、アクティブ表面と平行な速度ベクトルの値、またはアクティブ表面に対して接線方向の速度ベクトルの値のうちの少なくとも1つに基づいて、アクティブ表面の速度を計算するようにプログラムされる、側面67または68に記載のウェアラブルシステム。
【0241】
第70の側面では、ハードウェアプロセッサは、複合現実ディスプレイによるユーザへの提示のために、仮想ボタンの可視化を提供するようにプログラムされ、可視化は、少なくとも部分的に、アクティブ表面の移動に基づく、側面65に記載のウェアラブルシステム。
【0242】
第71の側面では、複合現実環境において仮想遠隔制御装置を提供するための方法であって、ウェアラブルデバイスによって入手されたユーザの環境の画像にアクセスするステップと、画像を分析し、ユーザの環境内の標的デバイスを識別するステップと、標的デバイスと関連付けられた仕様にアクセスするステップであって、仕様は、少なくとも、物理的遠隔装置の制御要素と親デバイスの機能との間のマッピングを備える、ステップと、少なくとも部分的に、仕様に基づいて、仮想遠隔装置を生成するステップと、ウェアラブルデバイスに仮想遠隔装置を複合現実環境にレンダリングするステップと、親デバイスとの相互作用のための仮想遠隔装置の作動を検出するステップと、命令を生成し、親デバイスに伝送し、親デバイスに、物理的遠隔装置が作動されるかのように機能を実施させるステップとを含む、方法。
【0243】
第72の側面では、標的デバイスは、物理的遠隔装置または親デバイスを備える、側面71に記載の方法。
【0244】
第73の側面では、標的デバイスを識別するステップは、特色特徴点アルゴリズム、単語の袋タイプ検索、またはニューラルネットワークアルゴリズムのうちの少なくとも1つを含む、1つ以上のコンピュータビジョンアルゴリズムを使用して、画像を分析し、標的デバイスを認識するステップを含む、側面71または72に記載の方法。
【0245】
第74の側面では、仮想遠隔装置を生成するステップは、少なくとも部分的に、仕様に基づいて、仮想遠隔装置のための仮想要素のレイアウトを決定し、仮想要素に対応する制御要素が物理的遠隔装置上で作動されるかのように、仮想遠隔装置上の仮想要素の作動が親デバイスを反応させ得るように、仮想遠隔装置の仮想要素と物理的遠隔装置の制御要素とを関連付けるステップを含む、側面71-73のいずれか1項に記載の方法。
【0246】
第75の側面では、仮想遠隔装置は、仮想ボタンを備え、仮想ボタンは、空間の体積と関連付けられ、仮想ボタンとのユーザの相互作用を追跡するように構成される、アクティブ表面と、ユーザインターフェースアクションをトリガするためのトリガ表面とを有する、側面71-74のいずれか1項に記載の方法。
【0247】
第76の側面では、仮想遠隔装置の作動を検出するステップは、アクティブ表面の第1の位置を識別するステップと、少なくとも部分的に、ユーザの移動に基づいて、アクティブ表面の第2の位置および移動を計算するステップと、アクティブ表面の移動がトリガ表面に向かっており、アクティブ表面の第2の位置がトリガ表面の少なくとも一部と交差するとき、仮想ボタンを作動させる、またはアクティブ表面の移動がトリガ表面から離れており、アクティブ表面の第1の位置がトリガ表面の少なくとも一部と交差するとき、仮想ボタンを解除するステップとを含む、側面71-75のいずれか1項に記載の方法。
【0248】
第77の側面では、仮想ボタンはさらに、解除表面を備え、本方法はさらに、アクティブ表面の第2の位置が解除表面の少なくとも一部と交差するとき、仮想ボタンを解除するステップを含む、側面76に記載の方法。
(他の考慮点)
【0249】
本明細書に説明される、および/または添付される図に描写されるプロセス、方法、およびアルゴリズムはそれぞれ、具体的かつ特定のコンピュータ命令を実行するように構成される、1つ以上の物理的コンピューティングシステム、ハードウェアコンピュータプロセッサ、特定用途向け回路、および/または電子ハードウェアによって実行される、コードモジュールにおいて具現化され、それによって完全または部分的に自動化され得る。例えば、コンピューティングシステムは、具体的コンピュータ命令とともにプログラムされた汎用コンピュータ(例えば、サーバ)または専用コンピュータ、専用回路等を含むことができる。コードモジュールは、実行可能プログラムにコンパイルおよびリンクされる、動的リンクライブラリ内にインストールされ得る、または解釈されるプログラミング言語において書き込まれ得る。いくつかの実装では、特定の動作および方法が、所与の機能に特有の回路によって実施され得る。
【0250】
さらに、本開示の機能性のある実装は、十分に数学的、コンピュータ的、または技術的に複雑であるため、(適切な特殊化された実行可能命令を利用する)特定用途向けハードウェアまたは1つ以上の物理的コンピューティングデバイスは、例えば、関与する計算の量または複雑性に起因して、または結果を実質的にリアルタイムで提供するために、機能性を実施する必要があり得る。例えば、ビデオは、多くのフレームを含み、各フレームは、数百万のピクセルを有し得、具体的にプログラムされたコンピュータハードウェアは、商業的に妥当な時間量において所望の画像処理タスクまたは用途を提供するようにビデオデータを処理する必要がある。
【0251】
コードモジュールまたは任意のタイプのデータは、ハードドライブ、ソリッドステートメモリ、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、光学ディスク、揮発性または不揮発性記憶装置、同一物の組み合わせ、および/または同等物を含む、物理的コンピュータ記憶装置等の任意のタイプの非一過性コンピュータ可読媒体上に記憶され得る。本方法およびモジュール(またはデータ)はまた、無線ベースおよび有線/ケーブルベースの媒体を含む、種々のコンピュータ可読伝送媒体上で生成されたデータ信号として(例えば、搬送波または他のアナログまたはデジタル伝搬信号の一部として)伝送され得、種々の形態(例えば、単一または多重化アナログ信号の一部として、または複数の離散デジタルパケットまたはフレームとして)をとり得る。開示されるプロセスまたはプロセスステップの結果は、任意のタイプの非一過性有形コンピュータ記憶装置内に持続的または別様に記憶され得る、またはコンピュータ可読伝送媒体を介して通信され得る。
【0252】
本明細書に説明される、および/または添付される図に描写されるフロー図における任意のプロセス、ブロック、状態、ステップ、または機能性は、プロセスにおいて具体的機能(例えば、論理または算術)またはステップを実装するための1つ以上の実行可能命令を含む、コードモジュール、セグメント、またはコードの一部を潜在的に表すものとして理解されたい。種々のプロセス、ブロック、状態、ステップ、または機能性は、組み合わせられる、再配列される、追加される、削除される、修正される、または別様に本明細書に提供される例証的実施例から変更されることができる。いくつかの実施形態では、付加的または異なるコンピューティングシステム、またはコードモジュールが、本明細書に説明される機能性のいくつかまたは全てを実施し得る。本明細書に説明される方法およびプロセスはまた、任意の特定のシーケンスに限定されず、それに関連するブロック、ステップ、または状態は、適切な他のシーケンスで、例えば、連続して、並行して、またはある他の様式で実施されることができる。タスクまたはイベントが、開示される例示的実施形態に追加される、またはそれから除去され得る。さらに、本明細書に説明される実装における種々のシステムコンポーネントの分離は、例証を目的とし、全ての実装においてそのような分離を要求するものとして理解されるべきではない。説明されるプログラムコンポーネント、方法、およびシステムは、概して、単一のコンピュータ製品においてともに統合される、または複数のコンピュータ製品にパッケージ化され得ることを理解されたい。多くの実装変形例が、可能である。
【0253】
本プロセス、方法、およびシステムは、ネットワーク(または分散)コンピューティング環境において実装され得る。ネットワーク環境は、企業全体コンピュータネットワーク、イントラネット、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、パーソナルエリアネットワーク(PAN)、クラウドコンピューティングネットワーク、クラウドソースコンピューティングネットワーク、インターネット、およびワールドワイドウェブを含む。ネットワークは、有線または無線ネットワークまたは任意の他のタイプの通信ネットワークであり得る。
【0254】
本開示のシステムおよび方法は、それぞれ、いくつかの革新的側面を有し、そのうちのいかなるものも、本明細書に開示される望ましい属性に単独で関与しない、またはそのために要求されない。上記に説明される種々の特徴およびプロセスは、相互に独立して使用され得る、または種々の方法で組み合わせられ得る。全ての可能な組み合わせおよび副次的組み合わせが、本開示の範囲内に該当することが意図される。本開示に説明される実装の種々の修正が、当業者に容易に明白であり得、本明細書に定義される一般原理は、本開示の精神または範囲から逸脱することなく、他の実装に適用され得る。したがって、請求項は、本明細書に示される実装に限定されることを意図されず、本明細書に開示される本開示、原理、および新規の特徴と一貫する最も広い範囲を与えられるべきである。
【0255】
別個の実装の文脈において本明細書に説明されるある特徴はまた、単一の実装における組み合わせにおいて実装されることができる。逆に、単一の実装の文脈において説明される種々の特徴もまた、複数の実装において別個に、または任意の好適な副次的組み合わせにおいて実装されることができる。さらに、特徴がある組み合わせにおいて作用するものとして上記に説明され、さらに、そのようなものとして最初に請求され得るが、請求される組み合わせからの1つ以上の特徴は、いくつかの場合では、組み合わせから削除されることができ、請求される組み合わせは、副次的組み合わせまたは副次的組み合わせの変形例を対象とし得る。いかなる単一の特徴または特徴のグループも、あらゆる実施形態に必要または必須ではない。
【0256】
とりわけ、「~できる(can)」、「~し得る(could)」、「~し得る(might)」、「~し得る(may)」、「例えば(e.g.)」、および同等物等、本明細書で使用される条件文は、別様に具体的に記載されない限り、または使用されるような文脈内で別様に理解されない限り、概して、ある実施形態がある特徴、要素、および/またはステップを含む一方、他の実施形態がそれらを含まないことを伝えることが意図される。したがって、そのような条件文は、概して、特徴、要素、および/またはステップが、1つ以上の実施形態に対していかようにも要求されること、または1つ以上の実施形態が、著者の入力または促しの有無を問わず、これらの特徴、要素、および/またはステップが任意の特定の実施形態において含まれる、または実施されるべきかどうかを決定するための論理を必然的に含むことを示唆することを意図されない。用語「~を備える」、「~を含む」、「~を有する」、および同等物は、同義語であり、非限定的方式で包括的に使用され、付加的要素、特徴、行為、動作等を除外しない。また、用語「または」は、その包括的意味において使用され(およびその排他的意味において使用されず)、したがって、例えば、要素のリストを接続するために使用されると、用語「または」は、リスト内の要素のうちの1つ、いくつか、または全てを意味する。加えて、本願および添付される請求項で使用されるような冠詞「a」、「an」、および「the」は、別様に規定されない限り、「1つ以上の」または「少なくとも1つ」を意味するように解釈されるべきである。
【0257】
本明細書で使用されるように、項目のリスト「~のうちの少なくとも1つ」を指す語句は、単一の要素を含む、それらの項目の任意の組み合わせを指す。ある実施例として、「A、B、またはCのうちの少なくとも1つ」は、A、B、C、AおよびB、AおよびC、BおよびC、およびA、B、およびCを網羅することが意図される。語句「X、Y、およびZのうちの少なくとも1つ」等の接続文は、別様に具体的に記載されない限り、概して、項目、用語等がX、Y、またはZのうちの少なくとも1つであり得ることを伝えるために使用されるような文脈で別様に理解される。したがって、そのような接続文は、概して、ある実施形態が、Xのうちの少なくとも1つ、Yのうちの少なくとも1つ、およびZのうちの少なくとも1つがそれぞれ存在するように要求することを示唆することを意図されない。
【0258】
同様に、動作は、特定の順序で図面に描写され得るが、これは、望ましい結果を達成するために、そのような動作が示される特定の順序で、または連続的順序で実施される、または全ての図示される動作が実施される必要はないと認識されるべきである。さらに、図面は、フローチャートの形態で1つ以上の例示的プロセスを図式的に描写し得る。しかしながら、描写されない他の動作も、図式的に図示される例示的方法およびプロセス内に組み込まれることができる。例えば、1つ以上の付加的動作が、図示される動作のいずれかの前に、その後に、それと同時に、またはその間に実施されることができる。加えて、動作は、他の実装において再配列される、または再順序付けられ得る。ある状況では、マルチタスクおよび並列処理が、有利であり得る。さらに、上記に説明される実装における種々のシステムコンポーネントの分離は、全ての実装におけるそのような分離を要求するものとして理解されるべきではなく、説明されるプログラムコンポーネントおよびシステムは、概して、単一のソフトウェア製品においてともに統合される、または複数のソフトウェア製品にパッケージ化され得ることを理解されたい。加えて、他の実装も、以下の請求項の範囲内である。いくつかの場合では、請求項に列挙されるアクションは、異なる順序で実施され、依然として、望ましい結果を達成することができる。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20