(57)【要約】仮想現実、拡張現実、および複合現実ディスプレイシステムのためのユーザインタフェースが、開示される。ユーザインタフェースは、仮想または物理的キーボードであってもよい。ユーザインタフェースを表示し、構成および／またはそれと相互作用するための技術が、説明される。一実施例では、物理的キーボードが、ユーザの物理的環境内に提供される。外向きに向いた結像システムが、環境を結像し、ハードウェアプロセッサが、画像を分析し、キーボードを認識する。ハードウェアプロセッサは、次いで、コンテキスト情報に基づいて、物理的キーボードに関する仕様を決定し、仕様に基づいて、物理的キーボードの機能を動的に構成する。
2020521217.tif 000002
【特許請求の範囲】
【請求項１】
システムであって、
仮想コンテンツをユーザの物理的環境内に提示するように構成されるディスプレイシステムと、
ユーザの物理的環境を結像するように構成される外向きに向いた結像システムと、
前記ディスプレイシステムおよび前記外向きに向いた結像システムと通信するハードウェアプロセッサであって、前記ハードウェアプロセッサは、
前記外向きに向いた結像システムによって入手された前記物理的環境の画像を分析することと、
前記画像の分析に基づいて、複数のキーを有する物理的キーボードを認識することと、
前記物理的キーボードと関連付けられたコンテキスト情報を決定することと、
少なくとも部分的に、前記コンテキスト情報に基づいて、前記物理的キーボードのための仕様を決定することと、
少なくとも部分的に、前記仕様に基づいて、前記物理的キーボードの少なくとも一部の機能を動的に構成することと、
少なくとも部分的に、前記仕様に基づいて、仮想キーラベルのレンダリング場所を決定することと、
前記ディスプレイシステムに、前記仮想キーラベルを前記決定されたレンダリング場所にレンダリングするように命令することと
を行うようにプログラムされる、ハードウェアプロセッサと
を備える、システム。
【請求項２】
前記仮想コンテンツは、拡張現実コンテンツまたは複合現実コンテンツのうちの少なくとも１つを含む、請求項１に記載のシステム。
【請求項３】
前記画像を分析するために、前記ハードウェアプロセッサは、オブジェクト認識装置を実行し、前記物理的キーボードの視覚的特性に基づいて、物理的キーボードを識別するようにプログラムされる、請求項１に記載のシステム。
【請求項４】
前記視覚的特性は、前記物理的キーボードの表面の形状または前記物理的キーボードのラベルのうちの少なくとも１つを含む、請求項３に記載のシステム。
【請求項５】
前記外向きに向いた結像システムは、ＦＯＶを有する世界カメラを備え、前記ＦＯＶは、所与の時間において前記世界カメラによって観察される前記物理的環境の一部を含み、物理的キーボードを認識するために、前記ハードウェアプロセッサは、前記物理的キーボードの少なくとも一部が前記ＦＯＶ内にあることを検出するようにプログラムされる、請求項１に記載のシステム。
【請求項６】
前記仕様は、前記複数のキーのレイアウトまたは前記複数のキーの機能のうちの少なくとも１つを含む、請求項１に記載のシステム。
【請求項７】
前記物理的キーボードのための仕様を決定するために、前記ハードウェアプロセッサは、前記画像の分析に基づいて、前記物理的キーボードのモデルを決定することと、前記モデルの仕様を記憶するデータベースにアクセスし、前記仕様を読み出すこととを行うようにプログラムされる、請求項１に記載のシステム。
【請求項８】
前記複数のキーのうちの少なくとも１つのキーは、容量タッチセンサを有する、請求項１に記載のシステム。
【請求項９】
前記コンテキスト情報は、前記物理的キーボードの位置または前記物理的キーボードの配向のうちの少なくとも１つを含む、請求項１に記載のシステム。
【請求項１０】
前記物理的キーボードの一部は、ブランクキーを備え、前記物理的キーボードの少なくとも一部の機能を動的に構成するために、前記ハードウェアプロセッサは、コマンド機能を前記ブランクキーに割り当てるようにプログラムされ、前記コマンド機能は、前記システムに、ユーザインターフェース動作を実施させる、請求項１に記載のシステム。
【請求項１１】
前記仮想キーラベルのレンダリング場所は、前記物理的キーボードの一部におけるブランクキーの場所と一致し、前記ハードウェアプロセッサは、前記ディスプレイシステムに、ピクセルスティックを使用して、前記仮想キーラベルを前記ブランクキー上に重畳するように命令するように構成される、請求項１０に記載のシステム。
【請求項１２】
方法であって、
ユーザの３次元（３Ｄ）物理的環境内の複数のキーを有するキーボードの一部を識別することと、
少なくとも部分的に、コンテキスト情報に基づいて、前記キーボードの一部のための仕様を決定することと、
少なくとも部分的に、前記仕様に基づいて、前記キーボードの一部の機能を動的に構成することと、
少なくとも部分的に、前記仕様に基づいて、前記キーボードの一部における仮想キーラベルのレンダリング場所を決定することと、
前記ディスプレイシステムに、前記仮想キーラベルを前記決定されたレンダリング場所にレンダリングするように命令することと
を含む、方法。
【請求項１３】
前記キーボードは、物理的キーボードを含む、請求項１２に記載の方法。
【請求項１４】
前記物理的キーボードは、複数の着脱可能セクションから組み立てられる、請求項１３に記載の方法。
【請求項１５】
前記物理的キーボードは、前記ユーザの３Ｄ物理的環境内の仮想画面と関連付けられ、前記仮想画面は、前記物理的キーボードの作動に応答して、ユーザインターフェース機能を実施するように構成される、請求項１３に記載の方法。
【請求項１６】
前記キーボードは、仮想キーボードを含み、前記仮想キーボードは、ユーザの環境の表面上にレンダリングされる、請求項１２に記載の方法。
【請求項１７】
前記表面は、物理的キーボードの表面を含む、請求項１６に記載の方法。
【請求項１８】
キーボードを識別することは、前記キーボードと通信し、前記キーボードの識別情報を取得することと、前記コンテキスト情報に基づいて、複数のキーボードの中から前記キーボードを選択することと、前記キーボードの画像に基づいて、前記キーボードを認識することとのうちの少なくとも１つを含む、請求項１２に記載の方法。
【請求項１９】
前記画像は、頭部搭載型デバイスの外向きに向いた結像システム、室内カメラ、または物理的キーボードに結合されたカメラのうちの少なくとも１つによって入手される、請求項１８に記載の方法。
【請求項２０】
前記キーボードの一部は、ブランクキーを含む、請求項１２に記載の方法。
【請求項２１】
前記コンテキスト情報は、前記キーボード、前記ユーザ、または前記３Ｄ物理的環境のうちの少なくとも１つと関連付けられる、請求項１２に記載の方法。
【請求項２２】
命令を伴うコンピュータ可読媒体であって、前記命令は、ハードウェアプロセッサによって読み取られると、前記ハードウェアプロセッサに、
ユーザの３次元（３Ｄ）物理的環境内の複数のキーを有するキーボードの一部を識別することと、
少なくとも部分的に、コンテキスト情報に基づいて、前記キーボードの一部のための仕様を決定することと、
少なくとも部分的に、前記仕様に基づいて、前記キーボードの一部の機能を動的に構成することと、
少なくとも部分的に、前記仕様に基づいて、前記キーボードの一部における仮想キーラベルのレンダリング場所を決定することと、
前記ディスプレイシステムに、前記仮想キーラベルを前記決定されたレンダリング場所にレンダリングするように命令することと
を含む方法を実施させる、コンピュータ可読媒体。
【請求項２３】
システムであって、
仮想コンテンツをユーザの物理的環境内に提示するように構成されるウェアラブルデバイスのディスプレイシステムと、
ユーザの姿勢と関連付けられたデータを入手するように構成される姿勢センサと、
前記ディスプレイシステムおよび前記姿勢センサと通信するハードウェアプロセッサであって、前記ハードウェアプロセッサは、
前記姿勢に基づいて、前記ユーザの環境内のオブジェクトと相互作用するためのインジケーションを受信することと、
前記オブジェクトとの相互作用のためのキーボードを識別することと、
前記キーボードと関連付けられた仮想コンテンツを決定することと、
前記ユーザの環境内の前記仮想コンテンツのレンダリング場所を決定することと、
前記キーボードの作動を検出することと、
前記キーボードの実行に基づいて、コマンドの実行を命令することと
を行うようにプログラムされる、ハードウェアプロセッサと
を備える、システム。
【請求項２４】
方法であって、
ウェアラブルデバイスのディスプレイシステムを使用して、仮想コンテンツをユーザの物理的環境内に提示することと、
姿勢センサを使用して、ユーザの姿勢と関連付けられたデータを入手することと、
ハードウェアプロセッサを使用して、前記姿勢に基づいて、前記ユーザの環境内のオブジェクトと相互作用するためのインジケーションを受信することと、
前記ハードウェアプロセッサを使用して、前記オブジェクトとの相互作用のためのキーボードを識別することと、
前記ハードウェアプロセッサを使用して、前記キーボードと関連付けられた仮想コンテンツを決定することと、
前記ハードウェアプロセッサを使用して、前記ユーザの環境内の仮想コンテンツのレンダリング場所を決定することと、
前記ハードウェアプロセッサを使用して、前記キーボードの作動を検出することと、
前記ハードウェアプロセッサを使用して、前記キーボードの実行に基づいて、コマンドの実行を命令することと
を含む、方法。
【請求項２５】
命令を伴う非一過性コンピュータ可読媒体であって、前記命令は、ハードウェアプロセッサによって読み取られると、前記ハードウェアプロセッサに、
ウェアラブルデバイスのディスプレイシステムを使用して、仮想コンテンツをユーザの物理的環境内に提示することと、
姿勢センサを使用して、ユーザの姿勢と関連付けられたデータを入手することと、
前記姿勢に基づいて、前記ユーザの環境内のオブジェクトと相互作用するためのインジケーションを受信することと、
前記オブジェクトとの相互作用のためのキーボードを識別することと、
前記キーボードと関連付けられた仮想コンテンツを決定することと、
前記ユーザの環境内の前記仮想コンテンツのレンダリング場所を決定することと、
前記キーボードの作動を検出することと、
前記キーボードの実行に基づいて、コマンドの実行を命令することと
を含む方法を実施させる、コンピュータ可読媒体。
【請求項２６】
システムであって、
仮想現実、拡張現実、または複合現実コンテンツをユーザに提示するように構成されるディスプレイと、
物理的キーボードであって、
入力を前記ユーザから受信するように構成される１つ以上のキーと、
前記物理的キーボードに対する前記ユーザの手または指のうちの１つ以上のものの場所を示す出力を生産するように構成される１つ以上のセンサと
を備える、物理的キーボードと、
１つ以上のハードウェアプロセッサと、
命令を記憶する１つ以上のコンピュータ記憶媒体であって、前記命令は、前記システムによって実行されると、前記システムに、
前記１つ以上のセンサの出力に基づいて、前記物理的キーボードに対する１つ以上の手または指の場所を決定することと、
前記ディスプレイに、前記物理的キーボードの第１の画像表現および前記ユーザの手または指のうちの１つ以上のものの場所の第２の画像表現を提示させることであって、前記第１の画像表現に対する前記第２の画像表現の場所は、前記物理的キーボードに対する１つ以上の手または指の場所を示す、ことと
を含む動作を実施させる、１つ以上のコンピュータ記憶媒体と
を備える、システム。
【請求項２７】
システムであって、
仮想現実、拡張現実、または複合現実コンテンツをユーザに提示するように構成されるディスプレイと、
１つ以上のハードウェアプロセッサと、
命令を記憶する１つ以上のコンピュータ記憶媒体であって、前記命令は、前記システムによって実行されると、前記システムに、
前記システムと通信する物理的キーボードから、前記物理的キーボードに対する前記ユーザの手または指のうちの１つ以上のものの場所を示す情報を受信することと、
前記受信された情報に基づいて、前記物理的キーボードに対する１つ以上の手または指の場所を決定することと、
前記ディスプレイに、前記物理的キーボードの第１の画像表現および前記ユーザの手または指のうちの１つ以上のものの場所の第２の画像表現を提示させることであって、前記第１の画像表現に対する前記第２の画像表現の場所は、前記物理的キーボードに対する１つ以上の手または指の場所を示す、ことと
を含む動作を実施させる、１つ以上のコンピュータ記憶媒体と
を備える、システム。
【請求項２８】
方法であって、
物理的キーボードに対するユーザの手または指のうちの１つ以上のものの場所を示す入力を１つ以上のセンサから受信することと、
前記１つ以上のセンサの入力に基づいて、前記物理的キーボードに対する１つ以上の手または指の場所を決定することと、
ディスプレイに、前記物理的キーボードの第１の画像表現および前記ユーザの手または指のうちの１つ以上のものの場所の第２の画像表現を提示させることであって、前記第１の画像表現に対する前記第２の画像表現の場所は、前記物理的キーボードに対する１つ以上の手または指の場所を示す、ことと
を含む、方法。
【請求項２９】
命令を伴う非一過性コンピュータ可読媒体であって、前記命令は、ハードウェアプロセッサによって読み取られると、前記ハードウェアプロセッサに、
物理的キーボードに対するユーザの手または指のうちの１つ以上のものの場所を示す入力を１つ以上のセンサから受信することと、
前記１つ以上のセンサの入力に基づいて、前記物理的キーボードに対する１つ以上の手または指の場所を決定することと、
ディスプレイに、前記物理的キーボードの第１の画像表現および前記ユーザの手または指のうちの１つ以上のものの場所の第２の画像表現を提示させることであって、前記第１の画像表現に対する前記第２の画像表現の場所は、前記物理的キーボードに対する１つ以上の手または指の場所を示す、ことと
を含む方法を実施させる、非一過性コンピュータ可読媒体。
【請求項３０】
頭部搭載型ディスプレイ（ＨＭＤ）であって、
フレームと、
前記フレームによって支持され、画像をユーザの眼に投影するように構成される投影光学系と、
前記ＨＭＤと動作可能に接続される入力デバイスとの相互作用を検出するためのセンサと、
命令を記憶するように構成される非一過性データ記憶装置と、
前記非一過性データ記憶装置に動作可能に結合された少なくとも１つのハードウェアプロセッサであって、前記少なくとも１つのハードウェアプロセッサは、前記命令によって、
前記センサから、前記ユーザ相互作用を示す信号を受信することと、
前記信号に基づいて、前記ユーザ相互作用のタイプを決定することと、
触覚的フィードバック信号を前記入力デバイスに伝送することであって、前記触覚的フィードバック信号は、前記入力デバイスを通してユーザに通信可能な触覚的応答を生成するための１つ以上のパラメータを含む、ことと
を行うように構成される、少なくとも１つのハードウェアプロセッサと
を備える、ＨＭＤ。
【請求項３１】
方法であって、
センサから、入力デバイスを介したウェアラブルディスプレイシステムとのユーザ相互作用を示す信号を受信することと、
前記信号に基づいて、前記ユーザ相互作用のタイプを決定することと、
触覚的フィードバック信号を前記入力デバイスに伝送することであって、前記触覚的フィードバック信号は、前記入力デバイスを通してユーザに通信可能な触覚的応答を生成するための１つ以上のパラメータを含む、ことと
を含む、方法。
【請求項３２】
命令を伴う非一過性コンピュータ可読媒体であって、前記命令は、ハードウェアプロセッサによって読み取られると、前記ハードウェアプロセッサに、
センサから、入力デバイスを介したウェアラブルディスプレイシステムとのユーザ相互作用を示す信号を受信することと、
前記信号に基づいて、前記ユーザ相互作用のタイプを決定することと、
触覚的フィードバック信号を前記入力デバイスに伝送することであって、前記触覚的フィードバック信号は、前記入力デバイスを通してユーザに通信可能な触覚的応答を生成するための１つ以上のパラメータを含む、ことと
を含む方法を実施させる、非一過性コンピュータ可読媒体。
【請求項３３】
システムであって、
仮想モニタをユーザに提示するように構成されるディスプレイシステムと、
前記ユーザの物理的環境を結像するように構成される外向きに向いた結像システムと、
前記ディスプレイシステムおよび前記外向きに向いた結像システムと通信するハードウェアプロセッサであって、前記ハードウェアプロセッサは、
前記外向きに向いた結像システムによって入手された前記物理的環境の第１の画像を受信することと、
前記第１の画像を使用して、前記ユーザの環境内の物理的キーボードの第１の場所を決定することと、
少なくとも部分的に、前記物理的キーボードの第１の場所に基づいて、前記仮想モニタの第１のレンダリング場所を決定することと、
少なくとも部分的に、前記仮想モニタの第１のレンダリング場所およびサイズ選好に基づいて、前記仮想モニタのサイズを決定することであって、前記仮想モニタは、ユーザインターフェース機能のために構成される、ことと、
前記ディスプレイシステムに、前記決定されたサイズを伴う前記仮想モニタを前記第１のレンダリング場所にレンダリングするように命令することと
を行うようにプログラムされる、ハードウェアプロセッサと
を備える、システム。
【請求項３４】
方法であって、
仮想ディスプレイオブジェクトのユーザの環境内の入力デバイスの第１の場所を受信することと、
少なくとも部分的に、前記入力デバイスの第１の場所に基づいて、前記仮想ディスプレイオブジェクトの第１のレンダリング場所を決定することと、
少なくとも部分的に、前記第１のレンダリング場所に基づいて、前記仮想ディスプレイオブジェクトのサイズを決定することと、
前記ディスプレイシステムに、前記仮想ディスプレイを前記第１のレンダリング場所にレンダリングさせることと
を含む、方法。
【請求項３５】
命令を伴う非一過性コンピュータ可読媒体であって、前記命令は、コンピュータによって読み取られると、前記コンピュータに、
仮想ディスプレイオブジェクトのユーザの環境内の入力デバイスの第１の場所を受信することと、
少なくとも部分的に、前記入力デバイスの第１の場所に基づいて、前記仮想ディスプレイオブジェクトの第１のレンダリング場所を決定することと、
少なくとも部分的に、前記第１のレンダリング場所に基づいて、前記仮想ディスプレイオブジェクトのサイズを決定することと、
前記ディスプレイシステムに、前記仮想ディスプレイを前記第１のレンダリング場所にレンダリングさせることと
を含む方法を実施させる、非一過性コンピュータ可読媒体。
【請求項３６】
方法であって、
データを複数の深度に表示することが可能な仮想現実、拡張現実、または複合現実システムを使用して、第１のアプリケーションと関連付けられた画像データの少なくとも一部を第１の深度に表示することと、
第２のアプリケーションと関連付けられた画像データの少なくとも一部を第２の深度に表示することと
を含み、
前記第１および第２のアプリケーションは、相互に関連し、
前記第２の深度は、前記第１の深度から固定距離にあるように選択される、方法。
【請求項３７】
システムであって、
データを複数の深度に表示することが可能な仮想現実、拡張現実、または複合現実ディスプレイと、
ハードウェアプロセッサであって、
第１のアプリケーションと関連付けられた画像データの少なくとも一部を第１の深度に表示することと、
第２のアプリケーションと関連付けられた画像データの少なくとも一部を第２の深度に表示することと
を行うように構成され、
前記第１および第２のアプリケーションは、相互に関連し、
前記第２の深度は、前記第１の深度から固定距離にあるように選択される、ハードウェアプロセッサと
を備える、システム。
【請求項３８】
命令を伴う非一過性コンピュータ可読媒体であって、前記命令は、ハードウェアプロセッサによって読み取られると、前記ハードウェアプロセッサに、
データを複数の深度に表示することが可能な仮想現実、拡張現実、または複合現実システムを使用して、第１のアプリケーションと関連付けられた画像データの少なくとも一部を第１の深度に表示することと、
第２のアプリケーションと関連付けられた画像データの少なくとも一部を第２の深度に表示することと
を含む方法を実施させ、
前記第１および第２のアプリケーションは、相互に関連し、
前記第２の深度は、前記第１の深度から固定距離にあるように選択される、非一過性コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（任意の優先権出願に対する参照による援用）
本願と同時に提出されたアプリケーションデータシートにおいて識別される国外または国内の優先権主張が行われる任意のおよび全ての出願は、３７  ＣＦＲ  １．５７のもとで本明細書中に参照により援用される。本願は、それぞれが“ＫＥＹＢＯＡＲＤ  ＦＯＲ  ＶＩＲＴＵＡＬ，  ＡＵＧＭＥＮＴＥＤ，  ＡＮＤ  ＭＩＸＥＤ  ＲＥＡＬＩＴＹ  ＤＩＳＰＬＡＹ  ＳＹＳＴＥＭＳ，”と題された米国仮出願第６２／５０８，９７４号（出願日２０１７年５月１９日）、米国仮出願第６２／５０９，６４８号（出願日２０１７年５月２２日）、米国仮出願第６２／６４４，５９７号（出願日２０１８年３月１９日）に対する優先権を主張するものであり、これらの各々は、全体が参照により本明細書中に援用される。
【０００２】
本開示は、仮想現実および拡張現実結像および可視化システムに関し、より具体的には、仮想現実および拡張現実結像および可視化システムと関連付けられ得る、キーボードに関する。
【背景技術】
【０００３】
現代のコンピューティングおよびディスプレイ技術は、いわゆる「仮想現実」、「拡張現実」または「複合現実」体験のためのシステムの開発を促進しており、デジタル的に再現された画像は、現実のように知覚され得る様式でユーザに提示される。仮想現実または「ＶＲ」シナリオは、典型的には、他の実際の実世界の視覚的入力に対する透過性を伴わずに、デジタルまたは仮想画像情報の提示を伴う。拡張現実または「ＡＲ」シナリオは、典型的には、ユーザの周囲の実際の世界の可視化に対する拡張としてのデジタルまたは仮想画像情報の提示を伴う。複合現実または「ＭＲ」シナリオは、実世界および仮想世界を融合し、物理的および仮想オブジェクトが、共存し、リアルタイムで相互作用する、新しい環境を生産することに関する、ＡＲシナリオのタイプである。
【０００４】
本明細書に開示されるシステムおよび方法は、ＶＲ、ＡＲ、およびＭＲ技術に関連する種々の課題に対処する。
【発明の概要】
【課題を解決するための手段】
【０００５】
いくつかの実施例では、システムは、仮想コンテンツをユーザの物理的環境内に提示するように構成される、ディスプレイシステムと、ユーザの物理的環境を結像するように構成される、外向きに向いた結像システムと、ディスプレイシステムおよび外向きに向いた結像システムと通信する、ハードウェアプロセッサであって、外向きに向いた結像システムによって入手された物理的環境の画像を分析し、画像の分析に基づいて、複数のキーを有する物理的キーボードを認識し、物理的キーボードと関連付けられたコンテキスト情報を決定し、少なくとも部分的に、コンテキスト情報に基づいて、物理的キーボードのための仕様を決定し、少なくとも部分的に、仕様に基づいて、物理的キーボードの少なくとも一部の機能を動的に構成し、少なくとも部分的に、仕様に基づいて、仮想キーラベルのレンダリング場所を決定し、ディスプレイシステムに、仮想キーラベルを決定されたレンダリング場所にレンダリングするように命令するようにプログラムされる、ハードウェアプロセッサとを備える。
【０００６】
いくつかの実施例では、システムは、仮想現実、拡張現実、または複合現実コンテンツをユーザに提示するように構成される、ディスプレイと、入力をユーザから受信するように構成される、１つ以上のキーと、物理的キーボードに対するユーザの手または指のうちの１つ以上のものの場所を示す出力を生産するように構成される、１つ以上のセンサとを備える、物理的キーボードと、１つ以上のハードウェアプロセッサと、システムによって実行されると、システムに、１つ以上のセンサの出力に基づいて、物理的キーボードに対する１つ以上の手または指の場所を決定するステップと、ディスプレイに、物理的キーボードの第１の画像表現およびユーザの手または指のうちの１つ以上のものの場所の第２の画像表現を提示させるステップであって、第１の画像表現に対する第２の画像表現の場所は、物理的キーボードに対する１つ以上の手または指の場所を示す、ステップとを含む、動作を実施させる命令を記憶する、１つ以上のコンピュータ記憶媒体とを備える。
【０００７】
いくつかの実施例では、頭部搭載型ディスプレイ（ＨＭＤ）は、フレームと、フレームによって支持され、画像をユーザの眼に投影するように構成される、投影光学系と、ＨＭＤと動作可能に接続される入力デバイスとの相互作用を検出するためのセンサと、命令を記憶するように構成される、非一過性データ記憶装置と、非一過性データ記憶装置に動作可能に結合され、命令によって、センサから、ユーザ相互作用を示す信号を受信し、信号に基づいて、ユーザ相互作用のタイプを決定し、触覚的フィードバック信号を入力デバイスに伝送し、触覚的フィードバック信号は、入力デバイスを通してユーザに通信可能な触覚的応答を生成するための１つ以上のパラメータを含むように構成される、少なくとも１つのハードウェアプロセッサとを備える。
【０００８】
いくつかの実施例では、システムは、仮想モニタをユーザに提示するように構成される、ディスプレイシステムと、ユーザの物理的環境を結像するように構成される、外向きに向いた結像システムと、ディスプレイシステムおよび外向きに向いた結像システムと通信する、ハードウェアプロセッサであって、外向きに向いた結像システムによって入手された物理的環境の第１の画像を受信し、第１の画像を使用して、ユーザの環境内の物理的キーボードの第１の場所を決定し、少なくとも部分的に、物理的キーボードの第１の場所に基づいて、仮想モニタの第１のレンダリング場所を決定し、少なくとも部分的に、仮想モニタの第１のレンダリング場所およびサイズ選好に基づいて、仮想モニタのサイズを決定し、仮想モニタは、ユーザインターフェース機能のために構成され、ディスプレイシステムに、決定されたサイズを伴う仮想モニタを第１のレンダリング場所にレンダリングするように命令するようにプログラムされる、ハードウェアプロセッサとを備える。
【０００９】
いくつかの実施例では、システムは、データを複数の深度に表示することが可能な仮想現実、拡張現実、または複合現実ディスプレイと、第１のアプリケーションと関連付けられた画像データの少なくとも一部を第１の深度に表示し、第２のアプリケーションと関連付けられた画像データの少なくとも一部を第２の深度に表示し、第１および第２のアプリケーションは、相互に関連し、第２の深度は、第１の深度から固定距離にあるように選択されるように構成される、ハードウェアプロセッサとを備える。
【図面の簡単な説明】
【００１０】
【図１】図１は、ユーザによって視認されるようなある仮想現実オブジェクトおよびある物理的オブジェクトを伴う、ＡＲ／ＭＲシナリオの例証を描写する。
【００１１】
【図２】図２は、ＶＲ／ＡＲ／ＭＲウェアラブルシステムの実施例を図式的に図示する。
【００１２】
【図３】図３は、複数の深度平面を使用して３次元画像をシミュレートするためのアプローチの側面を図式的に図示する。
【００１３】
【図４】図４は、画像情報をユーザに出力するための導波管スタックの実施例を図式的に図示する。
【００１４】
【図５】図５は、導波管によって出力され得る、例示的出射ビームを示す。
【００１５】
【図６】図６は、導波管装置と、光を導波管装置へまたはそこから光学的に結合するための光学結合器サブシステムと、多焦点立体ディスプレイ、画像、またはライトフィールドの生成において使用される、制御サブシステムとを含む、光学システムを示す、概略図である。
【００１６】
【図７】図７は、ウェアラブルＶＲ／ＡＲ／ＭＲシステムの実施例のブロック図である。
【００１７】
【図８】図８は、認識されるオブジェクトに関連して仮想コンテンツをレンダリングする例示的方法のプロセスフロー図である。
【００１８】
【図９】図９は、ＶＲ／ＡＲ／ＭＲウェアラブルシステムの別の実施例のブロック図である。
【００１９】
【図１０】図１０は、ウェアラブルＶＲ／ＡＲ／ＭＲシステムへのユーザ入力を決定するための方法の実施例のプロセスフロー図である。
【００２０】
【図１１】図１１は、仮想ユーザインターフェースと相互作用するための方法の実施例のプロセスフロー図である。
【００２１】
【図１２】図１２は、種々の入力モードを使用して、オブジェクトと相互作用する実施例を図式的に図示する。
【００２２】
【図１３Ａ】図１３Ａ、１３Ｂ、および１３Ｃは、物理的キーボードを動的に構成する実施例を図示する。
【図１３Ｂ】図１３Ａ、１３Ｂ、および１３Ｃは、物理的キーボードを動的に構成する実施例を図示する。
【図１３Ｃ】図１３Ａ、１３Ｂ、および１３Ｃは、物理的キーボードを動的に構成する実施例を図示する。
【００２３】
【図１４】図１４は、再構成可能物理的キーボードの実施例を図示する。
【００２４】
【図１５Ａ】図１５Ａは、動眼視野（ＦＯＲ）、世界カメラの視野（ＦＯＶ）、ユーザの視野、およびユーザの固視野の実施例を図式的に図示する。
【００２５】
【図１５Ｂ】図１５Ｂは、物理的キーボードを使用してユーザのＦＯＲおよびＦＯＶ内の仮想オブジェクトと相互作用する実施例を図示する。
【００２６】
【図１５Ｃ】図１５Ｃは、物理的キーボードと関連付けられた仮想画面を提示する実施例を図示する。
【００２７】
【図１６Ａ】図１６Ａ−１６Ｄは、例示的特徴および仮想キーボードとのユーザ相互作用を図示する。
【図１６Ｂ】図１６Ａ−１６Ｄは、例示的特徴および仮想キーボードとのユーザ相互作用を図示する。
【図１６Ｃ】図１６Ａ−１６Ｄは、例示的特徴および仮想キーボードとのユーザ相互作用を図示する。
【図１６Ｄ】図１６Ａ−１６Ｄは、例示的特徴および仮想キーボードとのユーザ相互作用を図示する。
【００２８】
【図１７Ａ】図１７Ａは、ＡＲ／ＭＲ環境内で物理的キーボードを動的に構成し、それと相互作用する例示的プロセスを図示する。
【００２９】
【図１７Ｂ】図１７Ｂは、ＡＲ／ＶＲ／ＭＲ環境内で仮想キーボードをレンダリングし、それと相互作用する例示的プロセスを図示する。
【００３０】
【図１８】図１８は、例示的ＶＲ／ＡＲ／ＭＲシステムおよび物理的キーボードを図式的に図示し、これは、仮想キーボード機能性をＶＲ／ＡＲ／ＭＲシステムのディスプレイ上に実装するために使用され得る。
【００３１】
【図１９】図１９は、仮想キーボード機能性を示す、ＶＲ／ＡＲ／ＭＲシステムの例示的ディスプレイを図式的に図示する。
【００３２】
【図２０】図２０は、物理的キーボードとのユーザの相互作用に基づいて、仮想キーボード機能性をＶＲ／ＡＲ／ＭＲシステムのディスプレイ上に実装する、例示的方法を描写する、フローチャートである。
【００３３】
【図２１】図２１は、ウェアラブルディスプレイシステムの実施例を図示する。
【００３４】
【図２２】図２２および２３は、触覚的通信のための例示的方法を図示するフローチャートである。
【図２３】図２２および２３は、触覚的通信のための例示的方法を図示するフローチャートである。
【００３５】
【図２４】図２４は、ＡＲ／ＭＲ頭部搭載型ディスプレイ（ＨＭＤ）システム、コンパニオン物理的キーボード、およびＨＭＤシステムのディスプレイ上に示される仮想モニタの間の例示的相互作用を図式的に図示する。
【００３６】
【図２５】図２５は、少なくとも部分的に、物理的キーボードの場所に基づいて、仮想モニタの場所を決定する、例示的プロセスを図示する。
【００３７】
【図２６】図２６は、物理的キーボードの場所に基づいて、仮想モニタのレンダリング場所を修正する、例示的プロセスを図示する。
【００３８】
【図２７】図２７は、図２７における仮想モニタを使用して物理的キーボードによって受信された入力をレンダリングする、例示的プロセスを図示する。
【００３９】
【図２８】図２８は、ウェアラブルＶＲ／ＡＲ／ＭＲシステムによって表示されるようなユーザインターフェース画像データ（例えば、仮想キーボード画像データ）と親アプリケーション画像データとの間の相対的空間関係の実施例を図示する。
【００４０】
【図２９】図２９Ａ−２９Ｅは、親アプリケーション画像データとユーザインターフェース画像データ（例えば、仮想キーボード画像データ）との間の有効および無効空間関係の実施例を図示する。
【００４１】
【図３０】図３０は、側方接触を維持するように、親アプリケーション画像データをユーザインターフェース画像データ（例えば、仮想キーボード画像データ）に対して移動させるための例示的方法のフローチャートである。
【００４２】
【図３１】図３１は、側方接触を維持するように、親アプリケーション画像データをユーザインターフェース画像データ（例えば、仮想キーボード画像データ）に対して移動させるための別の例示的方法のフローチャートである。
【００４３】
図面全体を通して、参照番号は、参照される要素間の対応を示すために再使用され得る。図面は、本明細書に説明される例示的実施形態を図示するために提供され、本開示の範囲を限定することを意図されない。加えて、本開示における図は、例証目的のためのものであって、正確な縮尺ではない。
【発明を実施するための形態】
【００４４】
ウェアラブルＶＲ／ＡＲ／ＭＲシステムは、２Ｄまたは３Ｄ仮想画像をユーザに提示するために構成されることができる。画像は、静止画像、ビデオのフレーム、またはビデオ、またはその組み合わせまたは同等物であってもよい。ウェアラブルシステムは、ユーザ相互作用のために、ＶＲ、ＡＲ、またはＭＲ環境を提示し得る、ウェアラブルデバイスを含むことができる。ウェアラブルＶＲ／ＡＲ／ＭＲシステムは、頭部搭載型デバイス（ＨＭＤ）であることができる。
【００４５】
図１は、ユーザによって視認されるような仮想オブジェクトおよび物理的オブジェクトを伴う、ＭＲまたはＡＲシナリオの例証を描写する。ＡＲ／ＭＲ技術のユーザには、図１に描写され、人々、木々、背景内の建物、およびコンクリートプラットフォーム１２０を特徴とする、実世界公園状設定１１０を含む、場面１００が見える。これらの実世界アイテムに加え、ＡＲ／ＭＲ技術のユーザはまた、実世界プラットフォーム１２０上に立っているロボット像１３０と、マルハナバチの擬人化のように見える、飛んでいる漫画のような仮想アバタ文字１４０とが「見える」と知覚するが、これらの要素は、実世界には存在しない。
【００４６】
３Ｄディスプレイが、見掛け深度のシミュレートされた感覚を生産するために、ディスプレイの視野内の点毎に、その仮想深度に対応する遠近調節応答を生成することが望ましくあり得る。ディスプレイ点に対する遠近調節応答が、収束および立体視の両眼深度キューによって決定されるようなその点の仮想深度に対応しない場合、ヒトの眼は、遠近調節衝突を体験し、不安定な結像、有害な眼精疲労、頭痛、および遠近調節情報の不在下では、見掛け深度のほぼ完全な欠如をもたらし得る。
【００４７】
ＶＲ、ＡＲ、およびＭＲ体験は、複数の深度平面に対応する画像が視認者に提供されるディスプレイを有する、ディスプレイシステムによって提供されることができる。画像は、深度平面毎に異なってもよく（例えば、場面またはオブジェクトの若干異なる提示を提供する）、視認者の眼によって別個に集束され、それによって、異なる深度平面上に位置する場面に関する異なる画像特徴に合焦させるために要求される眼の遠近調節に基づいて、または合焦からずれている異なる深度平面上の異なる画像特徴を観察することに基づいて、ユーザに深度キューを提供することに役立ち得る。本明細書のいずれかに議論されるように、そのような深度キューは、信用できる深度の知覚を提供する。
【００４８】
図２は、ウェアラブルＶＲ／ＡＲ／ＭＲシステム２００の実施例を図示する。ウェアラブルシステム２００は、ディスプレイ２２０と、ディスプレイ２２０の機能をサポートするための種々の機械的および電子的モジュールおよびシステムとを含む。ディスプレイ２２０は、ユーザ、装着者、または視認者２１０によって装着可能である、フレーム２３０に結合されてもよい。ディスプレイ２２０は、ユーザ２１０の眼の正面に位置付けられることができる。ディスプレイ２２０は、ＡＲ／ＶＲ／ＭＲコンテンツをユーザに提示することができる。ディスプレイ２２０は、ユーザの頭部に装着される、頭部搭載型ディスプレイ（ＨＭＤ）をであることができる。いくつかの実施形態では、スピーカ２４０が、フレーム２３０に結合され、ユーザの外耳道に隣接して位置付けられる（示されない別のスピーカが、ユーザの他方の外耳道に隣接して位置付けられ、ステレオ／成形可能音響制御を提供する）。
【００４９】
ウェアラブルシステム２００は、ユーザの周囲の環境内の世界を観察する、外向きに向いた結像システム４６４（図４に示される）を含むことができる。ウェアラブルシステム２００はまた、ユーザの眼移動を追跡するために使用され得る、内向きに向いた結像システム４６２（図４に示される）を含むことができる。内向きに向いた結像システムは、一方の眼の移動または両方の眼の移動のいずれかを追跡することができる。内向きに向いた結像システム４６２は、フレーム２３０に取り付けられてもよく、内向きに向いた結像システムによって取得された画像情報を処理し、例えば、ユーザ２１０の眼の瞳孔直径または配向、眼の移動、または通視線を決定し得る、処理モジュール２６０または２７０と電気通信してもよい。
【００５０】
実施例として、ウェアラブルシステム２００は、外向きに向いた結像システム４６４または内向きに向いた結像システム４６２を使用して、ユーザの姿勢またはジェスチャ等の画像を取得することができる。画像は、静止画像、ビデオのフレームまたはビデオ、またはその組み合わせ、または同等物であってもよい。
【００５１】
ディスプレイ２２０は、有線導線または無線接続等２５０によって、フレーム２３０に固定して取り付けられる、ユーザによって装着されるヘルメットまたは帽子に固定して取り付けられる、ヘッドホンに内蔵される、または別様にユーザ２１０に除去可能に取り付けられる（例えば、リュック式構成において、ベルト結合式構成において）等、種々の構成において搭載され得る、ローカルデータ処理モジュール２６０に動作可能に結合される２５０。
【００５２】
ローカル処理およびデータモジュール２６０は、ハードウェアプロセッサおよび不揮発性メモリ（例えば、フラッシュメモリ）等のデジタルメモリを備えてもよく、その両方とも、データの処理、キャッシュ、および記憶を補助するために利用され得る。データは、（ａ）画像捕捉デバイス（例えば、内向きに向いた結像システムおよび／または外向きに向いた結像システム内のカメラ）、マイクロホン、慣性測定ユニット（ＩＭＵ）、加速度計、コンパス、全地球測位システム（ＧＰＳ）ユニット、無線デバイス、またはジャイロスコープ等の（例えば、フレーム２３０に動作可能に結合される、または別様にユーザ２１０に取り付けられ得る）センサから捕捉されるデータ、または、（ｂ）場合によっては、処理または読出後にディスプレイ２２０への通過のために、遠隔処理モジュール２７０および／または遠隔データリポジトリ２８０を使用して入手または処理されるデータ、を含んでもよい。ローカル処理およびデータモジュール２６０は、これらの遠隔モジュールがローカル処理およびデータモジュール２６０へのリソースとして利用可能であるように、有線または無線通信リンク等を介して、通信リンク２６２または２６４を遠隔処理モジュール２７０または遠隔データリポジトリ２８０に動作可能に結合されてもよい。加えて、遠隔処理モジュール２８０および遠隔データリポジトリ２８０は、相互に動作可能に結合されてもよい。
【００５３】
いくつかの実施形態では、遠隔処理モジュール２７０は、データおよび／または画像情報を分析および処理するように構成される、１つ以上のプロセッサを備えてもよい。いくつかの実施形態では、遠隔データリポジトリ２８０は、デジタルデータ記憶設備を備え得、これは、インターネットまたは「クラウド」リソース構成における他のネットワーキング構成を通して利用可能であってもよい。いくつかの実施形態では、全てのデータが、記憶され、全ての算出が、ローカル処理およびデータモジュールにおいて実施され、遠隔モジュールからの完全に自律的な使用を可能にする。
【００５４】
ヒト視覚系は、複雑であって、深度の現実的知覚を提供することは、困難である。オブジェクトの視認者は、輻輳・開散運動（ｖｅｒｇｅｎｃｅ）と遠近調節（ａｃｃｍｍｏｄａｔｉｏｎ）との組み合わせに起因して、オブジェクトを３次元として知覚し得ると考えられる。相互に対する２つの眼の輻輳・開散運動（すなわち、瞳孔が、相互に向かって、またはそこから離れるように移動し、眼の視線を収束させ、オブジェクトを固視するような瞳孔の回転運動）は、眼の水晶体の合焦（または「遠近調節」）と密接に関連付けられる。通常条件下、焦点を１つのオブジェクトから異なる距離における別のオブジェクトに変化させるための眼のレンズの焦点の変化または眼の遠近調節は、「遠近調節−輻輳・開散運動反射」として知られる関係下、輻輳・開散運動の整合変化を自動的に同一距離に生じさせるであろう。同様に、輻輳・開散運動の変化は、通常条件下、遠近調節の整合変化を誘起するであろう。遠近調節と輻輳・開散運動との間のより良好な整合を提供するディスプレイシステムは、３次元画像のより現実的かつ快適なシミュレーションを形成し得る。
【００５５】
図３は、複数の深度平面を使用して３次元画像をシミュレートするためのアプローチの側面を図示する。図３を参照すると、ｚ−軸上の眼３０２および３０４からの種々の距離におけるオブジェクトが、異なる遠近調節度を使用して、合焦される。眼３０２および３０４は、特定の遠近調節された状態をとり、オブジェクトをｚ−軸に沿った異なる距離に合焦させる。その結果、特定の遠近調節された状態は、特定の深度平面におけるオブジェクトまたはオブジェクトの一部が、眼がその深度平面に対して遠近調節された状態にあるとき、合焦するように、関連付けられた焦点距離を有する、深度平面３０６のうちの特定の１つと関連付けられると言え得る。いくつかの実施形態では、３次元画像は、眼３０２および３０４毎に、画像の異なる提示を提供することによって、また、深度平面のそれぞれに対応する画像の異なる提示を提供することによって、シミュレートされてもよい。眼３０２および３０４の個別の視野は、例証を明確にするために、別個であるように示されるが、それらは、ｚ−軸に沿った距離が増加するにつれて重複してもよい。加えて、深度平面の輪郭（特定の遠近調節された状態において眼によって合焦される、点の軌跡）は、例証を容易にするために、平坦であるように示されるが、それらは、物理的空間内では、湾曲され得る。ヒトの眼は、典型的には、有限数深度面を解釈し、深度知覚を提供することができると考えられる。その結果、知覚された深度の高度に真実味のあるシミュレーションが、眼にこれらの限定数の深度平面のそれぞれに対応する画像の異なる提示を提供することによって達成され得る。
導波管スタックアセンブリ
【００５６】
図４は、画像情報をユーザに出力するための導波管スタックの実施例を図示する。ウェアラブルシステム４００は、複数の導波管４３２ｂ、４３４ｂ、４３６ｂ、４３８ｂ、４４００ｂを使用して、３次元知覚を眼／脳に提供するために利用され得る、導波管のスタックまたはスタックされた導波管アセンブリ４８０を含む。いくつかの実施形態では、ウェアラブルシステム４００は、図２のウェアラブルシステム２００に対応してもよく、図４は、ウェアラブルシステム２００のいくつかの部分をより詳細に図式的に示す。例えば、いくつかの実施形態では、導波管アセンブリ４８０は、図２のディスプレイ２２０の中に統合されてもよい。
【００５７】
図４を継続して参照すると、導波管アセンブリ４８０はまた、複数の特徴４５８、４５６、４５４、４５２を導波管の間に含んでもよい。いくつかの実施形態では、特徴４５８、４５６、４５４、４５２は、レンズであってもよい。他の実施形態では、特徴４５８、４５６、４５４、４５２は、レンズではなくてもよい。むしろ、それらは、単に、スペーサであってもよい（例えば、空気間隙を形成するためのクラッディング層または構造）。
【００５８】
導波管４３２ｂ、４３４ｂ、４３６ｂ、４３８ｂ、４４０ｂまたは複数のレンズ４５８、４５６、４５４、４５２は、種々のレベルの波面曲率または光線発散を用いて、画像情報を眼に送信するように構成されてもよい。各導波管レベルは、特定の深度平面と関連付けられてもよく、その深度平面に対応する画像情報を出力するように構成されてもよい。画像投入デバイス４２０、４２２、４２４、４２６、４２８は、それぞれ、眼４１０に向かって出力のために各個別の導波管を横断して入射光を分散させるように構成され得る、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの中に画像情報を投入するために利用されてもよい。光は、画像投入デバイス４２０、４２２、４２４、４２６、４２８の出力表面から出射し、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの対応する入力縁の中に投入される。いくつかの実施形態では、光の単一ビーム（例えば、コリメートされたビーム）が、各導波管の中に投入され、特定の導波管と関連付けられた深度面に対応する特定の角度（および発散量）において眼４１０に向かって指向される、クローン化されたコリメートビームの場全体を出力してもよい。
【００５９】
いくつかの実施形態では、画像投入デバイス４２０、４２２、４２４、４２６、４２８は、それぞれ、それぞれの対応する導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの中への投入のための画像情報を生成する、離散ディスプレイである。いくつかの他の実施形態では、画像投入デバイス４２０、４２２、４２４、４２６、４２８は、例えば、１つ以上の光学導管（光ファイバケーブル等）を介して、画像情報を画像投入デバイス４２０、４２２、４２４、４２６、４２８のそれぞれに送り得る、単一の多重化されたディスプレイの出力端である。
【００６０】
コントローラ４６０が、スタックされた導波管アセンブリ４８０および画像投入デバイス４２０、４２２、４２４、４２６、４２８の動作を制御する。コントローラ４６０は、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂへの画像情報のタイミングおよび提供を調整する、プログラミング（例えば、非一過性コンピュータ可読媒体内の命令）を含む。いくつかの実施形態では、コントローラ４６０は、単一の一体型デバイスまたは有線または無線通信チャネルによって接続される分散型システムであってもよい。コントローラ４６０は、いくつかの実施形態では、処理モジュール２６０または２７０（図２に図示される）の一部であってもよい。
【００６１】
導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂは、全内部反射（ＴＩＲ）によって、光を各個別の導波管内で伝搬させるように構成されてもよい。導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂはそれぞれ、平面であるかまたは別の形状（例えば、湾曲）を有してもよく、主要上部表面および主要底部表面をそれらの主要上部表面と主要底部表面との間に延在する縁とともに有する。図示される構成では、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂはそれぞれ、光を再指向させ、各個別の導波管内で伝搬させ、導波管から画像情報を眼４１０に出力することによって、光を導波管から抽出するように構成される、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａを含んでもよい。抽出された光はまた、外部結合光と称され得、光抽出光学要素はまた、外部結合光学要素と称され得る。抽出された光のビームは、導波管によって、導波管内で伝搬する光が光再指向要素に衝打する場所において出力される。光抽出光学要素（４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａ）は、例えば、反射または回折光学特徴であってもよい。説明を容易にし、図面を明確にするために、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの底部主要表面に配置されて図示されるが、いくつかの実施形態では、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、正面主要表面または背面主要表面に配置されてもよい、または直接導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂの容積内に配置されてもよい。いくつかの実施形態では、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、透明基板に取り付けられ、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂを形成する、材料の層内に形成されてもよい。いくつかの他の実施形態では、導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂは、モノリシック材料部品であってもよく、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、その材料部品の表面上および／または内部に形成されてもよい。
【００６２】
図４を継続して参照すると、本明細書に議論されるように、各導波管４４０ｂ、４３８ｂ、４３６ｂ、４３４ｂ、４３２ｂは、光を出力し、特定の深度平面に対応する画像を形成するように構成される。例えば、眼の最近傍の導波管４３２ｂは、そのような導波管４３２ｂの中に投入されるにつれて、コリメートされた光を眼４１０に送達するように構成されてもよい。コリメートされた光は、光学無限遠焦点面を表し得る。次の上方の導波管４３４ｂは、眼４１０に到達し得る前に、第１のレンズ４５２（例えば、負のレンズ）を通して通過する、コリメートされた光を送出するように構成されてもよい。第１のレンズ４５２は、眼／脳が、その次の上方の導波管４３４ｂから生じる光を光学無限遠から眼４１０に向かって内向きにより近い第１の焦点面から生じるように解釈するように、若干の凸面波面曲率を生成するように構成されてもよい。同様に、第３の上方の導波管４３６ｂは、眼４１０に到達する前に、その出力光を第１のレンズ４５２および第２のレンズ４５４の両方を通して通過させる。第１および第２のレンズ４５２および４５４の組み合わせられた屈折力は、眼／脳が、第３の上方の導波管４３６ｂから生じる光が次の上方の導波管４３４ｂからの光であった光学無限遠から人物に向かって内向きにさらに近い第２の焦点面から生じるように解釈するように、別の漸増量の波面曲率を生成するように構成されてもよい。
【００６３】
他の導波管層（例えば、導波管４３８ｂ、４４０ｂ）およびレンズ（例えば、レンズ４５６、４５８）も同様に構成され、スタック内の最高導波管４４０ｂを用いて、人物に最も近い焦点面を表す集約焦点力のために、その出力をそれと眼との間のレンズの全てを通して送出する。スタックされた導波管アセンブリ４８０の他側の世界４７０から生じる光を視認／解釈するとき、レンズ４５８、４５６、４５４、４５２のスタックを補償するために、補償レンズ層４３０が、スタックの上部に配置され、下方のレンズスタック４５８、４５６、４５４、４５２の集約力を補償してもよい。そのような構成は、利用可能な導波管／レンズ対と同じ数の知覚される焦点面を提供する。導波管の光抽出光学要素およびレンズの集束側面は両方とも、静的であってもよい（例えば、動的ではないまたは電気活性ではない）。いくつかの代替実施形態では、一方または両方とも、電気活性特徴を使用して動的であってもよい。
【００６４】
図４を継続して参照すると、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、導波管と関連付けられた特定の深度平面のために、光をその個別の導波管から再指向し、かつ本光を適切な量の発散またはコリメーションを伴って出力するように構成されてもよい。その結果、異なる関連付けられた深度平面を有する導波管は、関連付けられた深度平面に応じて、異なる量の発散を伴う光を出力する、異なる構成の光抽出光学要素を有してもよい。いくつかの実施形態では、本明細書に議論されるように、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、光を具体的角度で出力するように構成され得る、立体特徴または表面特徴であってもよい。例えば、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、体積ホログラム、表面ホログラム、および／または回折格子であってもよい。回折格子等の光抽出光学要素は、２０１５年６月２５日に公開された米国特許公開第２０１５／０１７８９３９号（参照することによってその全体として本明細書に組み込まれる）に説明される。
【００６５】
いくつかの実施形態では、光抽出光学要素４４０ａ、４３８ａ、４３６ａ、４３４ａ、４３２ａは、「回折光学要素」（本明細書では、「ＤＯＥ」とも称される）を形成する、回折特徴である。いくつかの実施形態では、ＤＯＥは、ビームの光の一部のみが、ＤＯＥとの各交差部で、眼４１０に向かって偏向される一方、残りが、全内部反射を介して、導波管を通して移動し続けるように、比較的に低回折効率を有する。画像情報を搬送する光は、したがって、複数の場所において導波管から出射する、いくつかの関連出射ビームに分割され、その結果、導波管内でバウンスする本特定のコリメートされたビームに関して、眼３０４に向かって非常に均一なパターンの出射放出となることができる。
【００６６】
いくつかの実施形態では、１つ以上のＤＯＥは、能動的に回折する「オン」状態と有意に回折しない「オフ」状態との間で切替可能であってもよい。例えば、切替可能なＤＯＥは、ポリマー分散液晶の層を備えてもよく、その中で微小液滴は、ホスト媒体中に回折パターンを備え、微小液滴の屈折率は、ホスト材料の屈折率に実質的に整合するように切り替えられることができる（その場合、パターンは、入射光を著しく回折させない）、または微小液滴は、ホスト媒体のものに整合しない屈折率に切り替えられることができる（その場合、パターンは、入射光を能動的に回折させる）。
【００６７】
いくつかの実施形態では、深度平面の数および分布は、視認者の眼の瞳孔サイズまたは配向に基づいて、動的に変動されてもよい。被写界深度は、視認者の瞳孔サイズと反比例して変化してもよい。その結果、視認者の眼の瞳孔のサイズが減少するにつれて、被写界深度は、その平面の場所が眼の焦点深度を越えるため判別不能である１つの平面が、判別可能となり、瞳孔サイズの低減および被写界深度の相当する増加に伴って、より合焦して現れ得るように増加する。同様に、異なる画像を視認者に提示するために使用される、離間される深度平面の数は、減少された瞳孔サイズに伴って減少されてもよい。例えば、視認者は、１つの深度平面から他の深度平面への眼の遠近調節を調節せずに、第１の深度平面および第２の深度平面の両方の詳細を１つの瞳孔サイズにおいて明確に知覚することが可能ではない場合がある。しかしながら、これらの２つの深度平面は、同時に、遠近調節を変化させずに、別の瞳孔サイズにおいてユーザに合焦するには十分であり得る。
【００６８】
いくつかの実施形態では、ディスプレイシステムは、瞳孔サイズおよび／または配向の決定に基づいて、または特定の瞳孔サイズ／または配向を示す電気信号の受信に応じて、画像情報を受信する導波管の数を変動させてもよい。例えば、ユーザの眼が、２つの導波管と関連付けられた２つの深度平面間を区別不能である場合、コントローラ４６０は、これらの導波管のうちの１つへの画像情報の提供を停止するように構成またはプログラムされてもよい。有利には、これは、システムへの処理負担を低減させ、それによって、システムの応答性を増加させ得る。導波管のためのＤＯＥがオン状態およびオフ状態の間で切替可能である実施形態では、ＤＯＥは、導波管が画像情報を受信するとき、オフ状態に切り替えられてもよい。
【００６９】
いくつかの実施形態では、出射ビームに視認者の眼の直径未満の直径を有するという条件を満たさせることが望ましくあり得る。しかしながら、本条件を満たすことは、視認者の瞳孔のサイズの変動性に照らして、困難であり得る。いくつかの実施形態では、本条件は、視認者の瞳孔のサイズの決定に応答して出射ビームのサイズを変動させることによって、広範囲の瞳孔サイズにわたって満たされる。例えば、瞳孔サイズが減少するにつれて、出射ビームのサイズもまた、減少し得る。いくつかの実施形態では、出射ビームサイズは、可変開口を使用して変動されてもよい。
【００７０】
ウェアラブルシステム４００は、世界４７０の一部を結像する、外向きに向いた結像システム４６４（例えば、デジタルカメラ）を含むことができる。世界４７０の本部分は、世界カメラの視野（ＦＯＶ）と称され得、結像システム４６４は、時として、ＦＯＶカメラとも称される。視認者による視認または結像のために利用可能な領域全体は、動眼視野（ＦＯＲ）と称され得る。ＦＯＲは、装着者が、その身体、頭部、または眼を移動させ、空間内の実質的に任意の方向を知覚することができるため、ウェアラブルシステム４００を囲繞する４πステラジアンの立体角を含んでもよい。他の状況では、装着者の移動は、より抑制されてもよく、それに応じて、装着者のＦＯＲは、より小さい立体角に対し得る。外向きに向いた結像システム４６４から得られた画像は、ユーザによって行われるジェスチャ（例えば、手または指のジェスチャ）を追跡し、ユーザの正面における世界４７０内のオブジェクトを検出する等のために、使用されることができる。
【００７１】
ウェアラブルシステム４００はまた、眼移動および顔移動等のユーザの移動を観察する、内向きに向いた結像システム４６６（例えば、デジタルカメラ）を含むことができる。内向きに向いた結像システム４６６は、眼４１０の画像を捕捉し、眼３０４の瞳孔のサイズおよび／または配向を決定するために使用されてもよい。内向きに向いた結像システム４６６は、ユーザが見ている方向（例えば、眼姿勢）を決定する際に使用するために、またはユーザのバイオメトリック識別のために（例えば、虹彩識別を介して）、画像を得るために使用されることができる。いくつかの実施形態では、少なくとも１つのカメラが、眼毎に、独立して、各眼の瞳孔サイズまたは眼姿勢を別個に決定し、それによって、各眼への画像情報の提示がその眼に対して動的に調整されることを可能にするために利用されてもよい。いくつかの他の実施形態では、片眼４１０のみの瞳孔直径または配向（例えば、一対の眼あたり単一カメラのみを使用して）が、決定され、ユーザの両眼に関して類似すると仮定される。内向きに向いた結像システム４６６によって得られる画像は、ユーザに提示されるべきオーディオまたは視覚的コンテンツを決定するためにウェアラブルシステム４００によって使用され得る、ユーザの眼姿勢または気分を決定するために分析されてもよい。ウェアラブルシステム４００はまた、ＩＭＵ、加速度計、ジャイロスコープ等のセンサを使用して、頭部姿勢（例えば、頭部位置または頭部配向）を決定してもよい。
【００７２】
ウェアラブルシステム４００は、ユーザが、コマンドをコントローラ４６０に入力し、ウェアラブルシステム４００と相互作用し得る、ユーザ入力デバイス４６６を含むことができる。例えば、ユーザ入力デバイス４６６は、トラックパッド、タッチスクリーン、ジョイスティック、多自由度（ＤＯＦ）コントローラ、容量感知デバイス、ゲームコントローラ、キーボード、マウス、指向性パッド（Ｄパッド）、ワンド、触覚的デバイス、トーテム（例えば、仮想ユーザ入力デバイスとして機能する）等を含むことができる。マルチＤＯＦコントローラは、コントローラの一部または全部の可能性として考えられる平行移動（例えば、左／右、前方／後方、または上／下）または回転（例えば、ヨー、ピッチ、またはロール）におけるユーザ入力を感知することができる。平行移動をサポートする、マルチＤＯＦコントローラは、３ＤＯＦと称され得る一方、平行移動および回転をサポートする、マルチＤＯＦコントローラは、６ＤＯＦと称され得る。ある場合には、ユーザは、指（例えば、親指）を使用して、タッチセンサ式入力デバイスを押下するかまたはその上でスワイプし、入力をウェアラブルシステム４００に提供してもよい（例えば、ユーザ入力をウェアラブルシステム４００によって提供されるユーザインターフェースに提供するために）。ユーザ入力デバイス４６６は、ウェアラブルシステム４００の使用の間、ユーザの手によって保持されてもよい。ユーザ入力デバイス４６６は、ウェアラブルシステム４００と有線または無線通信することができる。
【００７３】
図５は、導波管によって出力された出射ビームの実施例を示す。１つの導波管が図示されるが、導波管アセンブリ４８０内の他の導波管も同様に機能し得、導波管アセンブリ４８０は、複数の導波管を含むことを理解されたい。光５２０が、導波管４３２ｂの入力縁４３２ｃにおいて導波管４３２ｂの中に投入され、ＴＩＲによって導波管４３２ｂ内を伝搬する。光５２０がＤＯＥ４３２ａに衝突する点では、光の一部が、出射ビーム５１０として導波管から出射する。出射ビーム５１０は、略平行として図示されるが、また、導波管４３２ｂと関連付けられた深度平面に応じて、ある角度で眼４１０に伝搬するように再指向されてもよい（例えば、発散出射ビーム形成）。略平行出射ビームは、眼４１０からの遠距離（例えば、光学無限遠）における深度平面に設定されるように現れる画像を形成するように光を外部結合する、光抽出光学要素を伴う導波管を示し得ることを理解されたい。他の導波管または他の光抽出光学要素のセットは、より発散する、出射ビームパターンを出力してもよく、これは、眼４１０がより近い距離に遠近調節し、網膜に合焦させることを要求し、光学無限遠より眼４１０に近い距離からの光として脳によって解釈されるであろう。
【００７４】
図６は、導波管装置と、光を導波管装置へまたはそこから光学的に結合するための光学結合器サブシステムと、制御サブシステムとを含む、光学システムを示す、概略図である。光学システムは、多焦点立体ディスプレイまたはライトフィールドを生成するために使用されることができる。光学システムは、１つ以上の一次平面導波管６３２ａ（１つのみのが図６に示される）と、一次導波管６３２ａの少なくともいくつかのそれぞれと関連付けられた１つ以上のＤＯＥ６３２ｂとを含むことができる。平面導波管６３２ｂは、図４を参照して議論される導波管４３２ｂ、４３４ｂ、４３６ｂ、４３８ｂ、４４０ｂに類似することができる。光学システムは、分散導波管装置を採用し、光を第１の軸（例えば、図６に示される垂直ｙ−軸）に沿って中継し、第１の軸に沿って光の有効射出瞳を拡張させてもよい。分散導波管装置は、例えば、分散平面導波管６２２ｂと、分散平面導波管６２２ｂと関連付けられた少なくとも１つのＤＯＥ６２２ａとを含んでもよい。分散平面導波管６２２ｂは、少なくともいくつかの点において、それと異なる配向を有する一次平面導波管６３２ｂと類似または同じであってもよい。同様に、少なくとも１つのＤＯＥ６２２ａは、少なくともいくつかの点において、ＤＯＥ６３２ａと類似または同じであってもよい。例えば、分散平面導波管６２２ｂまたはＤＯＥ６２２ａは、それぞれ、一次平面導波管６３２ｂまたはＤＯＥ６３２ａと同一材料から成ってもよい。図６に示される光学ディスプレイシステム６００の実施形態は、図２に示されるウェアラブルシステム２００の中に統合されることができる。
【００７５】
中継され、射出瞳が拡張された光は、分散導波管装置から１つ以上の一次平面導波管６３２ｂの中に光学的に結合され得る。一次平面導波管６３２ｂは、好ましくは、第１の軸に直交する、第２の軸（例えば、図６に示される水平ｘ−軸）に沿って、光を中継することができる。着目すべきこととして、第２の軸は、第１の軸に対して非直交軸であることができる。一次平面導波管６３２ｂは、その第２の軸に沿って、光の有効射出瞳を拡張させる。例えば、分散平面導波管６２２ｂは、光を垂直またはＹ−軸に沿って中継および拡張させることができ、そして、光を水平またはＸ−軸に沿って中継および拡張させ得る一次平面導波管６３２ｂにその光を通過させることができる。
【００７６】
光学システムは、単一モード光ファイバ６４０の近位端の中に光学的に結合され得る、１つ以上の着色光源（例えば、赤色、緑色、および青色レーザ光）６１０を含んでもよい。光ファイバ６４０の遠位端は、圧電材料の中空管６４２を通して螺合または受容されてもよい。遠位端は、固定されない可撓性カンチレバー６４４として、管６４２から突出する。圧電管６４２は、４つの象限電極（図示せず）と関連付けられることができる。電極は、例えば、管６４２の外側、外側表面または外側周縁、または直径に鍍着されてもよい。コア電極（図示せず）もまた、管６４２のコア、中心、内側周縁、または内径に位置してもよい。
【００７７】
例えば、ワイヤ６６０を介して電気的に結合される、駆動電子機器６５０は、対向する対の電極を駆動し、圧電管６４２を独立して２つの軸において屈曲させる。光ファイバ６４４の突出する遠位先端は、機械的共鳴モードを有する。共鳴の周波数は、光ファイバ６４４の直径、長さ、および材料性質に依存し得る。圧電管６４２をファイバカンチレバー６４４の第１の機械的共鳴モードの近傍で振動させることによって、ファイバカンチレバー６４４は、振動させられ、大偏向を通して掃引し得る。
【００７８】
２つの軸において共振振動を刺激することによって、ファイバカンチレバー６４４の先端は、２次元（２−Ｄ）走査を充填する面積内において２軸方向に走査される。光源６１０の強度をファイバカンチレバー６４４の走査と同期して変調させることによって、ファイバカンチレバー６４４から発せられる光は、画像を形成することができる。そのような設定の説明は、米国特許公開第２０１４／０００３７６２号（参照することによってその全体として本明細書に組み込まれる）に提供されている。
【００７９】
光学結合器サブシステムのコンポーネントは、走査ファイバカンチレバー６４４から発せられる光をコリメートすることができる。コリメートされた光は、鏡面６４８によって、少なくとも１つの回折光学要素（ＤＯＥ）６２２ａを含有する、狭分散平面導波管６２２ｂの中に反射されることができる。コリメートされた光は、ＴＩＲによって分散平面導波管６２２ｂに沿って（図６に示される図に対して）垂直に伝搬し、そうすることによって、ＤＯＥ６２２ａと繰り返し交差することができる。ＤＯＥ６２２ａは、好ましくは、低回折効率を有する。これは、光の一部（例えば、１０％）をＤＯＥ６２２ａとの交差部の各点においてより大きい一次平面導波管６３２ｂの縁に向かって回折させ、光の一部をＴＩＲを介して分散平面導波管６２２ｂの長さを辿ってそのオリジナル軌道上で継続させることができる。
【００８０】
ＤＯＥ６２２ａとの交差部の各点において、付加的光が、一次導波管６３２ｂの入口に向かって回折されることができる。入射光を複数の外部結合セットに分割することによって、光の射出瞳は、分散平面導波管６２２ｂ内のＤＯＥ４によって垂直に拡張されることができる。分散平面導波管６２２ｂから外部結合された本垂直に拡張された光は、一次平面導波管６３２ｂの縁に進入することができる。
【００８１】
一次導波管６３２ｂに進入する光は、全内部反射（ＴＩＲ）を介して、一次導波管６３２ｂに沿って（図６に示される図に対して）水平に伝搬することができる。光は、複数の点においてＤＯＥ６３２ａと交差するにつれて、ＴＩＲを介して、一次導波管６３２ｂの長さの少なくとも一部に沿って水平に伝搬する。ＤＯＥ６３２ａは、有利には、線形回折パターンおよび半径方向対称回折パターンの総和である、位相プロファイルを有し、光の偏向および集束の両方を生成するように設計または構成され得る。ＤＯＥ６３２ａは、有利には、ビームの光の一部のみが、ＤＯＥ６３２ａの各交差部において視認者の眼に向かって偏向される一方、光の残りが、ＴＩＲを介して、一次導波管６３２ｂを通して伝搬し続けるように、低回折効率（例えば、１０％）を有し得る。
【００８２】
伝搬する光とＤＯＥ６３２ａとの間の交差部の各点において、光の一部は、一次導波管６３２ｂの隣接面に向かって回折され、光がＴＩＲから逃散し、一次導波管６３２ｂの面から発せられることを可能にする。いくつかの実施形態では、ＤＯＥ６３２ａの半径方向対称回折パターンは、加えて、ある焦点レベルを回折された光に付与し、個々のビームの光波面を成形（例えば、曲率を付与する）し、かつビームを設計される焦点度に合致する角度に操向することの両方を行う。
【００８３】
故に、これらの異なる経路は、異なる角度におけるＤＯＥ６３２ａの多重度、焦点深度、および／または射出瞳において異なる充填パターンをもたらすことによって、光を一次平面導波管６３２ｂの外部で結合させることができる。射出瞳における異なる充填パターンは、有利には、複数の深度平面を伴うライトフィールドディスプレイを生成するために使用されることができる。導波管アセンブリ内の各層またはスタック内の層のセット（例えば、３層）が、個別の色（例えば、赤色、青色、緑色）を生成するために採用されてもよい。したがって、例えば、第１の３つの隣接する層のセットが、それぞれ、赤色、青色および緑色光を第１の焦点深度において生成するために採用されてもよい。第２の３つの隣接する層のセットが、それぞれ、赤色、青色、および緑色光を第２の焦点深度において生成するために採用されてもよい。複数のセットが、種々の焦点深度を伴うフル３Ｄまたは４Ｄカラー画像ライトフィールドを生成するために採用されてもよい。
【００８４】
ウェアラブルシステムの他のコンポーネント
多くの実装では、ウェアラブルシステムは、上記に説明されるウェアラブルシステムのコンポーネントに加えて、またはその代替として、他のコンポーネントを含んでもよい。ウェアラブルシステムは、例えば、１つ以上の触知デバイスまたはコンポーネントを含んでもよい。触知デバイスまたはコンポーネントは、触覚をユーザに提供するように動作可能であってもよい。例えば、触知デバイスまたはコンポーネントは、仮想コンテンツ（例えば、仮想オブジェクト、仮想ツール、他の仮想構造）に触れると、圧力および／またはテクスチャの感覚を提供してもよい。触覚は、仮想オブジェクトが表す物理的オブジェクトの感覚を再現してもよい、または仮想コンテンツが表す想像上のオブジェクトまたはキャラクタ（例えば、ドラゴン）の感覚を再現してもよい。いくつかの実装では、触知デバイスまたはコンポーネントは、ユーザによって装着されてもよい（例えば、ユーザウェアラブルグローブ）。いくつかの実装では、触知デバイスまたはコンポーネントは、ユーザによって保持されてもよい。
【００８５】
ウェアラブルシステムは、例えば、１つ以上の物理オブジェクトを含んでもよく、これは、ユーザによって操作可能であって、ウェアラブルシステムへの入力またはそれとの相互作用を可能にする。これらの物理的オブジェクトは、本明細書では、トーテムと称され得る。いくつかのトーテムは、例えば、金属またはプラスチック片、壁、テーブルの表面等、無生物オブジェクトの形態をとってもよい。ある実装では、トーテムは、実際には、任意の物理的入力構造（例えば、キー、トリガ、ジョイスティック、トラックボール、ロッカスイッチ）を有していなくてもよい。代わりに、トーテムは、単に、物理的表面を提供してもよく、ウェアラブルシステムは、ユーザにトーテムの１つ以上の表面上にあるように見えるように、ユーザインターフェースをレンダリングしてもよい。例えば、ウェアラブルシステムは、トーテムの１つ以上の表面上に常駐するように見えるように、コンピュータキーボードおよびトラックパッドの画像をレンダリングしてもよい。例えば、ウェアラブルシステムは、トーテムとしての役割を果たす、アルミニウムの薄い長方形プレートの表面上に見えるように、仮想コンピュータキーボードおよび仮想トラックパッドをレンダリングしてもよい。長方形プレート自体は、任意の物理的キーまたはトラックパッドまたはセンサを有していない。しかしながら、ウェアラブルシステムは、仮想キーボードまたは仮想トラックパッドを介して行われた選択または入力として、長方形プレートを用いたユーザ操作または相互作用またはタッチを検出し得る。ユーザ入力デバイス４６６（図４に示される）は、トラックパッド、タッチパッド、トリガ、ジョイスティック、トラックボール、ロッカまたは仮想スイッチ、マウス、キーボード、多自由度コントローラ、または別の物理的入力デバイスを含み得る、トーテムの実施形態であってもよい。ユーザは、単独で、または姿勢と組み合わせて、トーテムを使用し、ウェアラブルシステムおよび／または他のユーザと相互作用してもよい。
【００８６】
本開示のウェアラブルデバイス、ＨＭＤ、およびディスプレイシステムと使用可能な触知デバイスおよびトーテムの実施例は、米国特許公開第２０１５／００１６７７７号（参照することによってその全体として本明細書に組み込まれる）に説明される。
【００８７】
例示的ウェアラブルシステム、環境、およびインターフェース
ウェアラブルＶＲ／ＡＲ／ＭＲシステムは、高被写界深度をレンダリングされたライトフィールド内で達成するために、種々のマッピング関連技法を採用してもよい。仮想世界をマッピングする際、実世界内の全ての特徴および点を把握し、仮想オブジェクトを実世界に関連して正確に描くことが有利である。この目的を達成するために、ウェアラブルシステムのユーザから捕捉されたＦＯＶ画像が、実世界の種々の点および特徴についての情報を伝達する新しい写真を含むことによって、世界モデルに追加されることができる。例えば、ウェアラブルシステムは、マップ点（２Ｄ点または３Ｄ点等）のセットを収集し、新しいマップ点を見出し、世界モデルのより正確なバージョンをレンダリングすることができる。第１のユーザの世界モデルは、第２のユーザが第１のユーザを囲繞する世界を体験し得るように、（例えば、クラウドネットワーク等のネットワークを経由して）第２のユーザに通信されることができる。
【００８８】
図７は、ＭＲ環境７００の実施例のブロック図である。ＭＲ環境７００は、入力（例えば、ユーザのウェアラブルシステムからの視覚的入力７０２、室内カメラ等の定常入力７０４、種々のセンサからの感覚入力７０６、ユーザ入力デバイス４６６からのジェスチャ、トーテム、眼追跡、ユーザ入力等）を１つ以上のユーザウェアラブルシステム（例えば、ウェアラブルシステム２００またはディスプレイシステム２２０）または定常室内システム（例えば、室内カメラ等）から受信するように構成されてもよい。ウェアラブルシステムは、種々のセンサ（例えば、加速度計、ジャイロスコープ、温度センサ、移動センサ、深度センサ、ＧＰＳセンサ、内向きに向いた結像システム、外向きに向いた結像システム等）を使用して、ユーザの環境の場所および種々の他の属性を決定することができる。本情報はさらに、異なる視点からの画像または種々のキューを提供し得る、部屋内の定常カメラからの情報で補完されてもよい。カメラ（室内カメラおよび／または外向きに向いた結像システムのカメラ等）によって取得された画像データは、マッピング点のセットに低減されてもよい。
【００８９】
１つ以上のオブジェクト認識装置７０８が、受信されたデータ（例えば、点の集合）を通してクローリングし、点を認識またはマッピングし、画像をタグ付けし、マップデータベース７１０を用いて、意味論情報をオブジェクトに結び付けることができる。マップデータベース７１０は、経時的に収集された種々の点およびその対応するオブジェクトを備えてもよい。種々のデバイスおよびマップデータベースは、ネットワーク（例えば、ＬＡＮ、ＷＡＮ等）を通して相互に接続され、クラウドにアクセスすることができる。
【００９０】
本情報およびマップデータベース内の点の集合に基づいて、オブジェクト認識装置７０８ａ−７０８ｎは、環境内のオブジェクトを認識してもよい。例えば、オブジェクト認識装置は、顔、人物、窓、壁、ユーザ入力デバイス、テレビ、ユーザの環境内の他のオブジェクト等を認識することができる。１つ以上のオブジェクト認識装置が、ある特性を伴うオブジェクトのために特殊化されてもよい。例えば、オブジェクト認識装置７０８ａは、顔を認識するために使用されてもよい一方、別のオブジェクト認識装置は、トーテムを認識するために使用されてもよい。
【００９１】
オブジェクト認識は、種々のコンピュータビジョン技法を使用して実施されてもよい。例えば、ウェアラブルシステムは、外向きに向いた結像システム４６４（図４に示される）によって入手された画像を分析し、場面再構成、イベント検出、ビデオ追跡、オブジェクト認識、オブジェクト姿勢推定、学習、インデックス化、運動推定、または画像復元等を実施することができる。１つ以上のコンピュータビジョンアルゴリズムが、これらのタスクを実施するために使用されてもよい。コンピュータビジョンアルゴリズムの非限定的実施例は、スケール不変特徴変換（ＳＩＦＴ）、スピードアップロバスト特徴（ＳＵＲＦ）、配向ＦＡＳＴおよび回転ＢＲＩＥＦ（ＯＲＢ）、バイナリロバスト不変スケーラブルキーポイント（ＢＲＩＳＫ）、高速網膜キーポイント（ＦＲＥＡＫ）、Ｖｉｏｌａ−Ｊｏｎｅｓアルゴリズム、Ｅｉｇｅｎｆａｃｅｓアプローチ、Ｌｕｃａｓ−Ｋａｎａｄｅアルゴリズム、Ｈｏｒｎ−Ｓｃｈｕｎｋアルゴリズム、Ｍｅａｎ−ｓｈｉｆｔアルゴリズム、視覚的同時位置推定およびマッピング（ｖＳＬＡＭ）技法、シーケンシャルベイズ推定器（例えば、カルマンフィルタ、拡張カルマンフィルタ等）、バンドル調節、適応閾値化（および他の閾値化技法）、反復最近傍点（ＩＣＰ）、セミグローバルマッチング（ＳＧＭ）、セミグローバルブロックマッチング（ＳＧＢＭ）、特徴点ヒストグラム、種々の機械学習アルゴリズム（例えば、サポートベクトルマシン、ｋ最近傍アルゴリズム、単純ベイズ、ニューラルネットワーク（畳み込みまたは深層ニューラルネットワークを含む）、または他の教師あり／教師なしモデル等）等を含む。
【００９２】
オブジェクト認識は、加えて、または代替として、種々の機械学習アルゴリズムによって実施されることができる。いったん訓練されると、機械学習アルゴリズムは、ＨＭＤによって記憶されることができる。機械学習アルゴリズムのいくつかの実施例は、教師ありまたは教師なし機械学習アルゴリズムを含むことができ、回帰アルゴリズム（例えば、通常の最小２乗回帰等）、インスタンスベースのアルゴリズム（例えば、学習ベクトル量子化等）、決定ツリーアルゴリズム（例えば、分類および回帰ツリー等）、ベイズアルゴリズム（例えば、単純ベイズ等）、クラスタリングアルゴリズム（例えば、ｋ−平均クラスタリング等）、関連付けルール学習アルゴリズム（例えば、アプリオリアルゴリズム等）、人工ニューラルネットワークアルゴリズム（例えば、Ｐｅｒｃｅｐｔｒｏｎ等）、深層学習アルゴリズム（例えば、Ｄｅｅｐ  Ｂｏｌｔｚｍａｎｎ  Ｍａｃｈｉｎｅ、または、深層ニューラルネットワーク等）、次元削減アルゴリズム（例えば、主成分分析等）、アンサンブルアルゴリズム（例えば、Ｓｔａｃｋｅｄ  Ｇｎｅｒａｌｉｚａｔｉｏｎ等）、および／または他の機械学習アルゴリズムを含む。いくつかの実施形態では、個々のモデルは、個々のデータセットのためにカスタマイズされることができる。例えば、ウェアラブルデバイスは、ベースモデルを生成または記憶することができる。ベースモデルは、開始点として使用され、データタイプ（例えば、テレプレゼンスセッション内の特定のユーザ）、データセット（例えば、テレプレゼンスセッション内のユーザの取得される付加的画像のセット）、条件付き状況、または他の変形例に特有の付加的モデルを生成してもよい。いくつかの実施形態では、ウェアラブルＨＭＤは、複数の技法を利用して、集約されたデータの分析のためのモデルを生成するように構成されることができる。他の技法は、事前に定義された閾値またはデータ値を使用することを含んでもよい。
【００９３】
マップデータベース内の本情報および点の集合に基づいて、オブジェクト認識装置７０８ａ−７０８ｎは、オブジェクトを認識し、オブジェクトを意味論情報で補完し、命をオブジェクトに与えてもよい。例えば、オブジェクト認識装置が、点のセットがドアであることを認識する場合、システムは、いくつかの意味論情報を結び付けてもよい（例えば、ドアは、ヒンジを有し、ヒンジを中心として９０度移動を有する）。オブジェクト認識装置が、点のセットが鏡であることを認識する場合、システムは、鏡が、部屋内のオブジェクトの画像を反射させ得る、反射表面を有するという意味論情報を結び付けてもよい。経時的に、マップデータベースは、システム（ローカルに常駐し得る、または無線ネットワークを通してアクセス可能であり得る）がより多くのデータを世界から蓄積するにつれて成長する。いったんオブジェクトが認識されると、情報は、１つ以上のウェアラブルシステムに伝送されてもよい。例えば、ＭＲ環境７００は、Ｃａｌｉｆｏｒｎｉａで起こっている場面についての情報を含んでもよい。環境７００は、Ｎｅｗ  Ｙｏｒｋにおける１人以上のユーザに伝送されてもよい。ＦＯＶカメラおよび他の入力から受信されたデータに基づいて、オブジェクト認識装置および他のソフトウェアコンポーネントは、場面が世界の異なる部分に存在し得る第２のユーザに正確に「パス」され得るように、種々の画像から収集された点をマッピングし、オブジェクトを認識すること等ができる。環境７００はまた、場所特定目的のために、トポロジマップを使用してもよい。
【００９４】
図８は、認識されたオブジェクトに関連して仮想コンテンツをレンダリングする方法８００の実施例のプロセスフロー図である。方法８００は、仮想場面がウェアラブルシステムのユーザに表され得る方法を説明する。ユーザは、その場面から地理的に遠隔に存在してもよい。例えば、ユーザは、Ｎｅｗ  Ｙｏｒｋに存在し得るが、Ｃａｌｉｆｏｒｎｉａで現在起こっている場面を視認することを所望し得る、またはＣａｌｉｆｏｒｎｉａに存在する友人と散歩に行くことを所望し得る。
【００９５】
ブロック８１０では、ウェアラブルシステムは、ユーザの環境に関する入力をユーザおよび他のユーザから受信してもよい。これは、種々の入力デバイスおよびマップデータベース内にすでに保有されている知識を通して達成されてもよい。ユーザのＦＯＶカメラ、センサ、ＧＰＳ、眼追跡等が、ブロック８１０において、情報をシステムに伝達する。ブロック８２０では、システムは、本情報に基づいて、疎点を決定してもよい。疎点は、ユーザの周囲における種々のオブジェクトの配向および位置を表示および理解する際に使用され得る、姿勢データ（例えば、頭部姿勢、眼姿勢、身体姿勢、または手のジェスチャ）を決定する際に使用されてもよい。ブロック８３０において、オブジェクト認識装置７０８ａ〜７０８ｎは、これらの収集された点を通してクローリングし、マップデータベースを使用して、１つ以上のオブジェクトを認識してもよい。本情報は、次いで、ブロック８４０において、ユーザの個々のウェアラブルシステムに伝達されてもよく、所望の仮想場面が、ブロック８５０において、適宜、ユーザに表示されてもよい。例えば、所望の仮想場面（例えば、ＣＡにおけるユーザ）が、Ｎｅｗ  Ｙｏｒｋにおけるユーザの種々のオブジェクトおよび他の周囲に関連して、適切な配向、位置等において表示されてもよい。
【００９６】
図９は、ウェアラブルＶＲ／ＡＲ／ＭＲシステムの別の実施例のブロック図である。本実施例では、ウェアラブルシステム９００は、世界に関するマップデータを含み得る、マップを備える。マップは、部分的に、ウェアラブルシステム上にローカルに常駐してもよく、部分的に、有線または無線ネットワークによってアクセス可能なネットワーク化された記憶場所（例えば、クラウドシステム内）に常駐してもよい。姿勢プロセス９１０が、ウェアラブルコンピューティングアーキテクチャ（例えば、処理モジュール２６０またはコントローラ４６０）上で実行され、ウェアラブルコンピューティングハードウェアまたはユーザの位置および配向を決定するために、マップからのデータを利用してもよい。姿勢データは、ユーザが、システムを体験し、その世界内で動作するにつれて、オンザフライで収集されたデータから計算されてもよい。データは、実または仮想環境内のオブジェクトに関する画像、センサ（概して、加速度計およびジャイロスコープコンポーネントを備える、慣性測定ユニット等）からのデータ、および表面情報を備えてもよい。
【００９７】
疎点表現は、同時場所特定およびマッピング（入力が画像／視覚のみである構成を指す、ＳＬＡＭまたはＶ−ＳＬＡＭ）プロセスの出力であってもよい。システムは、世界内の種々のコンポーネントの場所だけではなく、世界が何から成っているか見出すように構成されることができる。姿勢は、マップをポピュレートすることおよびマップからのデータを使用することを含め、多くの目標を達成する、構築ブロックであってもよい。
【００９８】
一実施形態では、疎点位置は、それ自体では完全に適正であり得ず、さらなる情報が、多焦点ＡＲ、ＶＲ、またはＭＲ体験を生成するために必要とされ得る。概して深度マップ情報を指す、稠密表現が、少なくとも部分的に、本間隙を充填するために利用されてもよい。そのような情報は、立体視９４０と称されるプロセスから計算されてもよく、深度情報は、三角測量または飛行時間感知等の技法を使用して決定される。画像情報およびアクティブパターン（アクティブプロジェクタを使用して生成される赤外線パターン等）が、立体視プロセス９４０への入力としての役割を果たし得る。有意な量の深度マップ情報が、ともに融合されてもよく、このうちのいくつかは、表面表現を用いて要約されてもよい。例えば、数学的に定義可能な表面は、ゲームエンジンのような他の処理デバイスへの効率的（例えば、大規模点群と比較して）かつ摘要可能な入力であってもよい。したがって、立体視プロセス（例えば、深度マップ）９４０の出力は、融合プロセス９３０において組み合わせられてもよい。姿勢は、同様に、本融合プロセス９３０への入力であってもよく、融合９３０の出力は、マッププロセス９２０をポピュレートするための入力となる。サブ表面が、トポグラフィマッピング等において相互に接続し、より大きい表面を形成してもよく、マップは、点および表面の大規模ハイブリッドとなる。
【００９９】
複合現実プロセス９６０における種々の側面を解決するために、種々の入力が、利用されてもよい。例えば、図９に描写される実施形態では、ゲームパラメータは、システムのユーザが１匹以上のモンスタと種々の場所においてモンスタバトルゲームをプレーしていること、モンスタが死んでいるかまたは種々の条件下で逃げている（ユーザがモンスタを撃つ場合等）、種々の場所における壁または他のオブジェクト、および同等物を決定するための入力であってもよい。世界マップは、複合現実に対する別の有用な入力となる、そのようなオブジェクトが相互に対して存在する場所に関する情報を含んでもよい。世界に対する姿勢は、同様に、入力となり、ほぼあらゆる双方向システムに対して重要な役割を果たす。
【０１００】
ユーザからの制御または入力は、ウェアラブルシステム９００への別の入力である。本明細書に説明されるように、ユーザ入力は、視覚的入力、ジェスチャ、トーテム、オーディオ入力、感覚入力等を含むことができる。動き回るまたはゲームをプレーするために、例えば、ユーザは、ウェアラブルシステム９００に、自らが何をしたいかに関して命令する必要があり得る。空間内で自ら移動するだけではなく、利用され得る種々の形態のユーザ制御が、存在する。一実施形態では、トーテム（例えば、ユーザ入力デバイス）、または玩具銃等のオブジェクトが、ユーザによって保持され、システムによって追跡されてもよい。システムは、好ましくは、ユーザがアイテムを保持していることを把握し、ユーザがアイテムと行っている相互作用の種類を理解するように構成されるであろう（例えば、トーテムまたはオブジェクトが、銃である場合、システムは、場所および配向だけではなく、ユーザが、そのようなアクティビティがカメラのいずれかの視野内にないときでも、何が起こっているかの決定を補助し得る、ＩＭＵ等のセンサを装備し得る、トリガまたは他の感知ボタンまたは要素をクリックしているかどうかも理解するように構成されてもよい。）
【０１０１】
手のジェスチャ追跡または認識もまた、入力情報を提供してもよい。ウェアラブルシステム９００は、ボタン押下のため、左または右、停止、握持、保持等をジェスチャするために、手のジェスチャを追跡および解釈するように構成されてもよい。例えば、１つの構成では、ユーザは、非ゲーム環境において電子メールまたはカレンダを通してフリップする、または別の人物または演奏者と「フィストバンプ」を行うことを所望し得る。ウェアラブルシステム９００は、動的であり得る、またはそうではない場合がある、最小量の手のジェスチャを活用するように構成されてもよい。例えば、ジェスチャは、停止を示すために手を広げる、ＯＫを示すために親指を上げる、ＯＫではないことを示すために親指を下げる、または指向性コマンドを示すために左右または上下に手をフリップする等、単純な静的ジェスチャであってもよい。
【０１０２】
眼追跡は、別の入力である（例えば、ユーザが見ている場所を追跡し、ディスプレイ技術を制御し、具体的深度または範囲においてレンダリングする）。一実施形態では、眼の輻輳・開散運動が、三角測量を使用して決定されてもよく、次いで、その特定の人物のために開発された輻輳・開散運動／遠近調節モデルを使用して、遠近調節が、決定されてもよい。
【０１０３】
カメラシステムに関して、図９に示される例示的ウェアラブルシステム９００は、３つの対のカメラ、すなわち、ユーザの顔の両側に配列される相対的広ＦＯＶまたは受動ＳＬＡＭ対のカメラと、ユーザの正面に配向され、立体視結像プロセス９４０をハンドリングし、また、ユーザの顔の正面の手のジェスチャおよびトーテム／オブジェクトの軌道を捕捉するための異なる対のカメラとを含むことができる。ステレオプロセス９４０に対するＦＯＶカメラおよび対のカメラは、外向きに向いた結像システム４６４（図４に示される）の一部であってもよい。ウェアラブルシステム９００は、眼ベクトルおよび他の情報を三角測量するために、ユーザの眼に向かって配向される眼追跡カメラ（図４に示される内向きに向いた結像システム４６２の一部であってもよい）を含むことができる。ウェアラブルシステム９００はまた、１つ以上のテクスチャ化光プロジェクタ（赤外線（ＩＲ）プロジェクタ等）を備え、テクスチャを場面の中に投入してもよい。
【０１０４】
図１０は、ウェアラブルＶＲ／ＡＲ／ＭＲシステムへのユーザ入力を決定するための方法１０００の実施例のプロセスフロー図である。本実施例では、ユーザは、トーテムと相互作用してもよい。ユーザは、複数のトーテムを有してもよい。例えば、ユーザは、ソーシャルメディアアプリケーションのための指定される１つのトーテム、ゲームをプレーするための別のトーテム等を有してもよい。ブロック１０１０では、ウェアラブルシステムは、トーテムの運動を検出してもよい。トーテムの移動は、外向きに向いたシステムを通して認識されてもよい、またはセンサ（例えば、触覚的グローブ、画像センサ、手追跡デバイス、眼追跡カメラ、頭部姿勢センサ等）を通して検出されてもよい。
【０１０５】
少なくとも部分的に、検出されたジェスチャ、眼姿勢、頭部姿勢、またはトーテムを通した入力に基づいて、ウェアラブルシステムは、ブロック１０２０において、基準フレームに対するトーテム（またはユーザの眼または頭部またはジェスチャ）の位置、配向、および／または移動を検出する。基準フレームは、それに基づいてウェアラブルシステムがトーテム（またはユーザ）の移動をアクションまたはコマンドに変換する、マップ点のセットであってもよい。ブロック１０３０では、トーテムとのユーザの相互作用が、マッピングされる。基準フレーム１０２０に対するユーザ相互作用のマッピングに基づいて、システムは、ブロック１０４０において、ユーザ入力を決定する。
【０１０６】
例えば、ユーザは、トーテムまたは物理的オブジェクトを前後に移動させ、仮想ページを捲り、次のページに移動する、または１つのユーザインターフェース（ＵＩ）ディスプレイ画面から別のＵＩ画面に移動することを示してもよい。別の実施例として、ユーザは、ユーザのＦＯＲ内の異なる実または仮想オブジェクトを見るために、その頭部または眼を移動させてもよい。特定の実または仮想オブジェクトにおけるユーザの注視が、閾値時間より長い場合、その実または仮想オブジェクトは、ユーザ入力として選択されてもよい。いくつかの実装では、ユーザの眼の輻輳・開散運動が、追跡されることができ、遠近調節／輻輳・開散運動モデルが、ユーザが合焦している深度平面に関する情報を提供する、ユーザの眼の遠近調節状態を決定するために使用されることができる。いくつかの実装では、ウェアラブルシステムは、レイキャスティング技法を使用して、ユーザの頭部姿勢または眼姿勢の方向に沿っている実または仮想オブジェクトを決定することができる。種々の実装では、レイキャスティング技法は、実質的に殆ど横幅を伴わない細い光線束を投じる、または実質的横幅を伴う光線（例えば、円錐または円錐台）を投じることを含むことができる。
【０１０７】
ユーザインターフェースは、本明細書に説明されるようなディスプレイシステム（図２におけるディスプレイ２２０等）によって投影されてもよい。また、１つ以上のプロジェクタ等の種々の他の技法を使用して表示されてもよい。プロジェクタは、画像をキャンバスまたは球体等の物理的オブジェクト上に投影してもよい。ユーザインターフェースとの相互作用は、システムの外部またはシステムの一部の１つ以上のカメラを使用して（例えば、内向きに向いた結像システム４６２または外向きに向いた結像システム４６４を使用して）追跡されてもよい。
【０１０８】
図１１は、仮想ユーザインターフェースと相互作用するための方法１１００の実施例のプロセスフロー図である。方法１１００は、本明細書に説明されるウェアラブルシステムによって行われてもよい。
【０１０９】
ブロック１１１０では、ウェアラブルシステムは、特定のＵＩを識別してもよい。ＵＩのタイプは、ユーザによって与えられてもよい。ウェアラブルシステムは、特定のＵＩがユーザ入力（例えば、ジェスチャ、視覚的データ、オーディオデータ、感覚データ、直接コマンド等）に基づいてポピュレートされる必要があることを識別してもよい。ブロック１１２０では、ウェアラブルシステムは、仮想ＵＩのためのデータを生成してもよい。例えば、ＵＩの境界、一般的構造、形状等と関連付けられたデータが、生成されてもよい。加えて、ウェアラブルシステムは、ウェアラブルシステムがユーザの物理的場所に関連してＵＩを表示し得るように、ユーザの物理的場所のマップ座標を決定してもよい。例えば、ＵＩが、身体中心である場合、ウェアラブルシステムは、リングＵＩがユーザの周囲に表示され得る、または平面ＵＩが壁上またはユーザの正面に表示され得るように、ユーザの物理的立ち位置、頭部姿勢、または眼姿勢の座標を決定してもよい。ＵＩが、手中心の場合、ユーザの手のマップ座標が、決定されてもよい。これらのマップ点は、ＦＯＶカメラ、感覚入力を通して受信されたデータ、または任意の他のタイプの収集されたデータを通して導出されてもよい。
【０１１０】
ブロック１１３０では、ウェアラブルシステムは、データをクラウドからディスプレイに送信してもよい、またはデータは、ローカルデータベースからディスプレイコンポーネントに送信されてもよい。ブロック１１４０では、ＵＩは、送信されたデータに基づいて、ユーザに表示される。例えば、ライトフィールドディスプレイは、仮想ＵＩをユーザの眼の一方または両方の中に投影することができる。いったん仮想ＵＩが生成されると、ウェアラブルシステムは、ブロック１１５０において、単に、ユーザからのコマンドを待機し、より多くの仮想コンテンツを仮想ＵＩ上に生成してもよい。例えば、ＵＩは、ユーザの身体の周囲の身体中心リングであってもよい。ウェアラブルシステムは、次いで、コマンド（ジェスチャ、頭部または眼移動、ユーザ入力デバイスからの入力等）を待機してもよく、認識される場合（ブロック１１６０）、コマンドと関連付けられた仮想コンテンツが、ユーザに表示されてもよい（ブロック１１７０）。実施例として、ウェアラブルシステムは、複数のステムトラックをミックスする前に、ユーザの手のジェスチャを待機してもよい。
【０１１１】
ウェアラブルシステム、ＵＩ、およびユーザ体験（ＵＸ）の付加的実施例は、米国特許公開第２０１５／００１６７７７号（参照することによってその全体として本明細書に組み込まれる）に説明されている。
【０１１２】
種々のユーザ入力デバイスおよびモードとの例示的相互作用
図４および９を参照して説明されるように、ユーザは、ユーザ入力デバイス４６６、音声コマンド、または姿勢（例えば、頭部姿勢、眼視線、または手のジェスチャ）等の入力デバイスおよびモードを使用して、ユーザの環境内のオブジェクトと相互作用することができる。図１２は、手のジェスチャ１２６０、タッチパッド１２８０、およびキーボード１２４０等の種々の入力デバイスおよびモードを使用してオブジェクトと相互作用する、実施例を図式的に図示する。
【０１１３】
図１２では、ユーザウェアラブルＨＭＤ１２２０は、ユーザのＦＯＶ１２１０内のオブジェクト１２１２を知覚することができる。ＨＭＤ１２２０は、図２を参照して説明されるウェアラブルシステム２００の一部であることができる。オブジェクト１２１２は、物理的オブジェクトまたは仮想オブジェクトであることができる。物理的オブジェクトは、ユーザの実周囲環境内に物理的に位置する、オブジェクトを含むことができる。例えば、居間環境では、物理的オブジェクトは、椅子、ソファ、壁等を含み得る。仮想オブジェクトは、ユーザの実環境上に仮想的に重畳されることができるか、または、ユーザの仮想環境内のオブジェクトであることができる。仮想オブジェクトは、例えば、削除されたファイルのためのゴミ箱、コマンドを入力するための端末、ファイルまたはディレクトリにアクセスするためのファイルマネージャ、アイコン、メニュー、オーディオまたはビデオストリーミングのためのアプリケーション、オペレーティングシステムからの通知等のオペレーティングシステムオブジェクトを含んでもよい。仮想オブジェクトはまた、例えば、アバタ、ゲーム内オブジェクト、グラフィックまたは画像等、アプリケーション内のオブジェクトを含んでもよい。いくつかの仮想オブジェクトは、オペレーティングシステムオブジェクトおよびアプリケーション内のオブジェクトの両方であることができる。いくつかの実施形態では、ウェアラブルシステムは、仮想要素を既存の物理的オブジェクトに追加することができる。例えば、ウェアラブルシステムは、部屋内のテレビと関連付けられた仮想メニューを追加してもよく、仮想メニューは、ユーザに、ウェアラブルシステムを使用して、テレビをオンにする、またはチャンネルを変更するためのオプションを与えてもよい。
【０１１４】
仮想オブジェクトは、３次元（３Ｄ）、２次元（２Ｄ）、または１次元（１Ｄ）オブジェクトであってもよい。例えば、仮想オブジェクトは、３Ｄコーヒーマグカップ（例えば、物理的コーヒーメーカーのための仮想制御を表し得る）であってもよい。仮想オブジェクトはまた、時計の２Ｄグラフィカル表現であってもよい（現在の時間をユーザに表示する）。いくつかの実装では、１つ以上の仮想オブジェクトが、別の仮想オブジェクト内に表示されてもよい（またはそれと関連付けられる）。
【０１１５】
ユーザのＦＯＲ内のオブジェクトは、図９を参照して説明されるような世界マップの一部であることができる。オブジェクトと関連付けられたデータ（例えば、場所、意味情報、性質等）が、例えば、アレイ、リスト、ツリー、ハッシュ、グラフ等の種々のデータ構造内に記憶されることができる。各記憶されたオブジェクトのインデックスは、適用可能である場合、例えば、オブジェクトの場所によって決定されてもよい。例えば、データ構造は、基準位置からのオブジェクトの距離等の単一座標によって、オブジェクトをインデックス化してもよい（例えば、基準位置の左または右までの距離、基準位置の上部または底部からの距離、または基準位置からの深度）。基準位置は、ユーザの位置（ユーザの頭部の位置等）に基づいて決定されてもよい。基準位置はまた、ユーザの環境内の仮想または物理的オブジェクト（標的オブジェクト等）の位置に基づいて決定されてもよい。このように、ユーザの環境内の３Ｄ空間は、仮想オブジェクトが基準位置からのオブジェクトの距離に従って配列される、２Ｄユーザインターフェースの中に畳み込まれてもよい。
【０１１６】
ウェアラブルシステムは、ＦＯＲ内のオブジェクトおよびＦＯＶ内のオブジェクトの追跡を維持し得る。例えば、ローカル処理およびデータモジュール２６０は、遠隔処理モジュール２７０および遠隔データリポジトリ２８０と通信し、ユーザのＦＯＲ内の仮想オブジェクトを読み出すことができる。ローカル処理およびデータモジュール２６０は、仮想オブジェクトを、例えば、バッファまたは一時的記憶装置内に記憶することができる。ローカル処理およびデータモジュール２６０は、本明細書に説明される技法を使用して、ユーザのＦＯＶを決定することができる。ローカル処理およびデータモジュール２６０は、記憶された仮想オブジェクトにアクセスし、ユーザのＦＯＶ内にある、仮想オブジェクトのサブセットを識別およびレンダリングすることができる。ユーザの姿勢が変化すると、ローカル処理およびデータモジュール２６０は、適宜、ユーザのＦＯＶを更新し、ユーザの現在のＦＯＶに対応する仮想オブジェクトの別のセットをレンダリングすることができる。
【０１１７】
本明細書に説明されるように、ＨＭＤ１２２０は、１つ以上のオブジェクト認識装置７０８を介して、ユーザの手のジェスチャを認識および追跡することができる。例えば、ＨＭＤは、外向きに向いた結像システム４６４を使用して、ユーザの手のジェスチャの画像を入手することができる。オブジェクト認識装置７０８は、画像を分析し、手のジェスチャを識別することができる。ある実施形態では、ユーザの手のジェスチャは、ＨＭＤの外部のカメラによって追跡されてもよい。例えば、カメラは、室内カメラ（ユーザの環境内に位置付けられる）、ユーザ入力デバイス４６６（例えば、トーテムまたはキーボード等）に結合される（有線または無線で）カメラ、または別のコンピューティングデバイス上のカメラ（例えば、パーソナルコンピュータに結合されるウェブカム等）等の定常カメラを含んでもよい。
【０１１８】
ＨＭＤ１２２０はまた、ユーザ入力デバイス４６６とのユーザ相互作用をサポートすることができる。実施例として、図１２では、ユーザは、図１２におけるタッチパッド１２８０およびキーボード１２４０を作動させ、オブジェクト１２１２と相互作用することができる。ある実施形態では、入力デバイスおよびモードの組み合わせが、オブジェクト１２１２と相互作用するためにユーザによって使用されてもよい。例えば、ユーザは、キーボード１２４０上のキーを作動させ、手のジェスチャ１２６０を使用して、仮想メニューを移動させることによって、オブジェクト１２１２と関連付けられた仮想メニューを開くことができる。
【０１１９】
ユーザ入力デバイスとＨＭＤとのペアリングの実施例
ユーザ入力デバイス４６６（例えば、タッチパッド１２８０またはキーボード１２４０）は、有線または無線チャネルを介して（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）または無線周波数（ＲＦ）受信機を介して等）、ＨＭＤ１２２０に結合されることができる。ユーザ入力デバイス４６６は、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）またはＲＦプロトコルを使用して無線で、または、例えば、ＵＳＢ接続等の有線接続を介して、ＨＭＤ１２２０とペアリングされる、または通信接続を確立することができる。ペアリングプロセスは、ユーザ入力デバイス４６６によって、またはＨＭＤ１２２０によって、開始されてもよい。ペアリングプロセスが、ＨＭＤによって開始される場合、ＨＭＤ１２２０は、種々の技法を使用して、ユーザの環境内の標的ユーザ入力デバイスを識別することができる。例えば、ＨＭＤ１２２０は、直接、標的ユーザ入力デバイスにクエリすることができる。これは、例えば、そのようなクエリをサポートし得るプロトコルに従って、Ｗｉ−ＦｉまたはＢｌｕｅｔｏｏｔｈ（登録商標）等のＲＦ無線プロトコルによって、デバイスがそれ自体を識別することが可能である場合、可能である。
【０１２０】
ＨＭＤ１２２０はまた、視覚的キューを介して、標的ユーザ入力デバイスを識別することができる。例えば、ＨＭＤ１２２０は、外向きに向いた結像システム４６４を使用して、標的ユーザ入力デバイスの画像を入手し、オブジェクト認識装置７０８を使用して、標的ユーザ入力デバイスのタイプを識別してもよい。オブジェクト認識装置７０８は、例えば、単語の袋タイプ検索と組み合わせられる特徴的特徴点方法（例えば、ＳＩＦＴ）、または人工ニューラルネットワーク（例えば、「Ａｌｅｘ−ｎｅｔ」）等の適用を通した、コンピュータビジョンアルゴリズムを実装することができる。ＨＭＤは、階層方式において、標的ユーザ入力デバイスを識別してもよい。例えば、ＨＭＤは、第１のアルゴリズムを起動し、オブジェクトが物理的キーボードであることを識別することができる。ＨＭＤは、次いで、第２のアルゴリズムを起動し、キーボードのレイアウトまたはキーボードの製造業者／モデル等、キーボードの特徴を識別することができる。
【０１２１】
ＨＭＤ１２２０はまた、ユーザ入力に基づいて（姿勢を介して）、標的ユーザ入力デバイスを識別することができる。例えば、ユーザは、その指をキーボードに向けることによって、ペアリングのためのキーボードを識別してもよい。ＨＭＤ１２２０は、ユーザの指の先端からレイキャスティングを実施し、それが光線と交差するため、キーボードを選択することができる。
【０１２２】
別の実施例として、標的入力デバイスは、バーコード、ＱＲコード（登録商標）、ＬＥＤパターン等の光学的に可読の一意のラベルを含んでもよい。ＨＭＤは、ラベルを走査または結像し、情報をラベルから抽出するための光学センサ（例えば、世界カメラ）を含んでもよい。抽出された情報は、製造業者、デバイスのタイプ等のデバイス識別子を含んでもよい。ラベルは、標的デバイスに貼付またはその上にインプリントされてもよい。例えば、キーボード１２４０は、キーボード１２４０の製造業者、モデル、製造番号等を明示的に示す、ステッカまたはプラカードを有してもよい。別の実施例として、キーボード１２４０のブランドが、キーボード１２４０の表面上にインプリントされてもよい。
【０１２３】
いくつかの実施形態では、いったんＨＭＤ１２２０が、ユーザ入力デバイス（例えば、キーボード１２４０またはタッチパッド１２８０）とペアリングすると、ＨＭＤは、ユーザ入力デバイスの機能性に関連する情報にアクセスし（例えば、そのような情報をユーザ入力デバイス自体から受信することによって、ネットワークを介して遠隔ソースからダウンロードすることによって、ローカルで記憶されるデータにアクセスすることによって等）、ユーザ入力デバイスの機能性に基づいて、構成設定を設定してもよい。例えば、ＨＭＤ１２２０が、キーボード１２４０が外国語キーボードであることを認識する場合、ＨＭＤ１２２０は、そのシステム言語設定（例えば、英語、スペイン語、中国語等）を変更し、キーボード１２４０のものに合致させてもよい。
【０１２４】
加えて、いくつかの実施形態では、いったんＨＭＤ１２２０が、ユーザ入力デバイス（例えば、キーボード１２４０、タッチパッド１２８０、または任意の他のトーテム）とペアリングするかまたは別様にそれとの相互作用を検出すると、ＨＭＤは、コンピュータデータ構造を作成または修正してもよく、その特定のユーザ入力デバイスから受信される、またはそれを使用して実施される、ユーザ入力またはアクションは、それらの入力が行われたときにユーザ入力デバイスが相互作用する対応するＨＭＤとタグ付けされる、ラベリングされる、または別様に、関連付けられる。データ構造は、データ構造が、１つ以上のユーザ入力デバイスからのユーザ入力と１つ以上のＨＭＤデバイスとを関連させる情報を含み得るように、複数のＨＭＤデバイス間で共有される（または別様にアクセス可能にされる）ことができる。ある場合には、データ構造は、単一ユーザ入力デバイスからのユーザ入力／アクションと複数のＨＭＤデバイスとを関連付けてもよく、複数のユーザ入力デバイスからのユーザ入力／アクションと単一ＨＭＤデバイスとを関連付けてもよく、および／または、複数のユーザ入力デバイスからのユーザ入力／アクションと複数のＨＭＤデバイスとを関連付けてもよい。本情報は、次いで、コンピュータファイルまたは仮想オブジェクトを作成または修正する、アクションを実施する等のために使用されることができる。ある場合には、各ユーザ入力／アクションと個別のＨＭＤを関連付ける情報は、入力またはアクションを実施した人物の識別を示すために使用されることができる。
【０１２５】
例えば、異なるＨＭＤデバイスのユーザは、代替として、単一キーボード１２４０を使用して、テキスト、フォーマッティング変更等をテキストドキュメントの中に打ち込み得る。データ構造は、キーボード１２４０が第１のＨＭＤと相互作用していたときに行われたそれらのキーボード入力およびキーボード１２４０が第２のＨＭＤと相互作用していたときに行われたそれらのユーザ入力を記憶するために使用されることができる。本情報は、次いで、テキストドキュメントを修正するために使用されることができる。例えば、第１および第２のＨＭＤデバイスにペアリングされている間に行われた個別の入力は、テキストをマークし（例えば、異なる色、フォント、フォーマッティング等を用いて）、第２のＨＭＤがキーボード１２４０とペアリングされたときに第２のＨＭＤユーザによって打ち込まれた、または行われたものと比較して、第１のＨＭＤのユーザによって打ち込まれた、または行われたテキスト、フォーマッティング等を示すために使用されることができる。他の実施形態では、対応するＨＭＤとともにユーザ入力／アクションを記憶する、データ構造からの情報は、同様に、他のアクションを実施するためにも使用されることができる。例えば、第１のトーテムのユーザによってゲームまたはアプリケーション内で実施されるアクションが、検出され、同一トーテムの第２のユーザによって実施されるアクションと区別されることができる。議論されたばかりのように、これは、各ＨＭＤが、ＨＭＤのユーザが相互作用しているトーテムを認識し、次いで、データ構造に、ユーザがそのトーテムと相互作用していた間に行われたそれらのアクションまたは入力を追加することに基づいて遂行されることができる。
【０１２６】
例示的キーボードの概要
図１２に示されるキーボード１２４０は、ＨＭＤ１２２０によってレンダリングされた仮想キーボードまたは物理的キーボードであってもよい。ある実装では、キーボード１２４０は、複数のデバイスを制御することができる。例えば、キーボード１２４０は、単語説明をデスクトップコンピュータの中に入力するために使用されることができる一方、同一キーボード１２４０はまた、ＨＭＤ１２２０との相互作用のための情報を入力するために使用されることができる。
【０１２７】
ユーザは、タッチジェスチャ、タップジェスチャ、押下ジェスチャ等の種々の手のジェスチャを使用して、キーボード１２４０を作動させることができる。異なる手のジェスチャは、異なる入力機能と関連付けられてもよい。例えば、タッチジェスチャは、数字、記号、または文字をＨＭＤ１２２０の中に打ち込ませ得る一方、押下ジェスチャは、コマンドプロンプトをＨＭＤ１２２０によって開かせ得る。ある実施形態では、全てのキーが、同一タイプの手のジェスチャを認識するわけではないであろう。例えば、キーボード１２４０は、タッチジェスチャを認識するが、押下ジェスチャを認識しないように構成される、タッチ領域を含むことができる。別の実施例として、キーボード１２４０は、タッチジェスチャをサポートしない、キーを含むことができる。
【０１２８】
ＨＭＤ１２２０は、ジェスチャ認識を使用して、キーボードの作動を検出することができる。例えば、ＨＭＤ１２２０は、外向きに向いた結像システム４６４または外部カメラから入手された画像を分析することによって（例えば、オブジェクト認識装置７０８を使用して）、ユーザの指の移動を追跡することができる。加えて、または代替として、ＨＭＤ１２２０は、ユーザの眼視線に基づいて、レイキャスティングを実施し、ユーザの視線方向と交差するキーを識別することができる。ＨＭＤ１２２０は、適宜、いったんキーがレイキャスティングから識別されると、動作（例えば、記号または文字を入力する、またはキーと関連付けられたコマンドを実行する）を実施することができる。いくつかの実施形態では、ユーザがキーを見ている間の所定の停留期間が、ユーザの眼視線によって「作動」されるべきキーを検討する前に要求され得る。
【０１２９】
キーボードを作動させるためのジェスチャ認識およびレイキャスティング技法は、物理的キーボードおよび仮想キーボードに適用されることができる。その結果、ユーザは、キーを作動させるために、物理的キーボードにタッチする、または物理的キーボードを押下する必要がなくなり得る。
【０１３０】
キーボード１２４０は、１つ以上の仕様と関連付けられることができる。仕様は、キーのレイアウトおよび対応するキー機能、タッチ表面、または他の制御を含んでもよい。図１３Ａ−１３Ｃを参照して説明されるように、キーボード１２４０の仕様は、動的に構成可能であってもよい。例えば、キーボード１２４０は、ブランクの物理的キーボードであってもよい（例えば、物理的キーボードのキーは、恒久的に割り当てられた文字、数、記号等の恒久的に割り当てられた機能を有していない、および／またはそれでラベリングされていない場合がある）。ＨＭＤは、１つ以上の仮想キーを、対応する動的に割り当てられた機能とともに、ブランクの物理的キーボードのキー上にレンダリングすることができる。構成は、例えば、ユーザが１つのアプリケーションから別のアプリケーションに切り替えるとき、ある構成から別の構成に変化してもよい。例えば、ＨＭＤ１２２０は、ユーザが１０本の指でタイプする場合、ワード処理アプリケーションのために、ＱＷＥＲＴＹレイアウトをレンダリングすることができる。しかしながら、ユーザが、２本の親指タイプのために好ましい、ウェブベースのアプリケーションと相互作用する場合、ＨＭＤ１２２０は、ＫＡＬＱレイアウトをブランクの物理的キーボード上にレンダリングすることができる。
【０１３１】
仮想キーボードの仕様はまた、動的に再構成可能であることができる。例えば、仮想キーボードは、物理的キーボードのエミュレーションであってもよい。例えば、ウェアラブルシステムは、本明細書に説明される種々の技法を使用して、物理的キーボードを識別することができる。ウェアラブルシステムはさらに、コンピュータビジョン技法を使用して、またはデータベースにアクセスし、仕様を読み出すことによって、物理的キーボードの仕様にアクセスすることができる。例えば、ウェアラブルシステムは、物理的キーボードの製造業者と通信し、物理的キーボードの仕様を受信してもよい。ある実装では、仕様はまた、キー毎にエミュレートされるための実際のコード（例えば、文字、数、記号等のためのＡＳＣＩＩコード）を含んでもよい。別の実施例として、仮想キーボードは、１つのゲームアプリケーションのために、キー「Ａ」、「Ｄ」、「Ｗ」、「Ｓ」をレンダリングする一方、異なるゲームアプリケーションのために、上、下、左、および右矢印キーをレンダリングしてもよい。
【０１３２】
本明細書にさらに説明されるように、キーボード１２４０上の１つ以上のキーは、タッチセンサ式であってもよい。例えば、キーボード１２４０が、物理的キーボードである場合、キーボード上のスペースバーは、タッチ表面（ユーザによるキーの作動を受信するように構成される）と、ユーザのジェスチャを検出し得るタッチセンサと、タッチセンサから受信された信号をＨＭＤ１２２０に通信し得るＰＣＢボードとを含んでもよい。キーボード１２４０が、仮想キーボードである場合、ＨＭＤ１２２０は、１つ以上のキーの作動のための１つ以上のキー上のタッチジェスチャまたはスワイプジェスチャを検出することができる。
【０１３３】
キーボード１２４０は、複数の双方向領域を含むことができる。１つの双方向領域は、あるタイプのユーザ相互作用と関連付けられることができる。例えば、１つの双方向領域（ＱＷＥＲＴＹキーボードの数字パッド領域等）は、タッチジェスチャ、スワイプジェスチャ、タップ、および押下ジェスチャをサポートすることができる一方、別の双方向領域（例えば、文字領域）は、押下ジェスチャのみをサポートすることができる。
【０１３４】
例示的技法は、キーボードを参照して説明されるが、類似技法はまた、他のタイプのユーザ入力デバイス４６６に適用されることができる。例えば、トーテムの仕様もまた、動的に構成可能であってもよい。例えば、トーテム上のキーは、ゲームアプリケーションでは、左矢印と関連付けられる一方、数学関連アプリケーションでは、数字キーに割り当てられてもよい。
【０１３５】
動的に再構成可能な物理的キーボードの実施例
図１２を参照して説明されるように、物理的キーボードは、ラベルを有していない、１つ以上のブランクキーを含んでもよい（例えば、物理的キーボードのキーは、恒久的に割り当てられた文字、数、記号等の恒久的に割り当てられた機能を有していない、および／またはそれでラベリングされていない場合がある）。ウェアラブルシステムは、物理的キーボードのための仕様の少なくとも一部を動的に再構成することができる。図１２を参照して説明されるように、ウェアラブルシステムは、キーボードと通信することによって、または視覚的キューを使用して、キーボードまたはキーボード内のキーを認識することができる。例えば、ウェアラブルシステムは、遠隔データリポジトリ２８０またはコンピューティングデバイス（例えば、キーボードの製造業者と関連付けられたコンピューティングデバイス等）と通信することにより、デバイス識別子をキーボードから受信し、記憶されたレイアウトにアクセスすることによって、キーボード内のキーのレイアウトを読み出すことができる。加えて、または代替として、ウェアラブルシステムは、オブジェクト認識装置７０８を使用して、キーボードおよびキーボード上のキーの数および場所を認識することができる。
【０１３６】
図１３Ａ−１３Ｃは、物理的キーボードの仕様を動的に構成する実施例を図示する。構成される仕様は、仮想キーラベルをキーボードにわたってレンダリングするために使用されてもよい。これらの図では、ユーザは、仮想ユーザインターフェース１３１０を知覚することができ、物理的キーボード１３４０は、ＨＭＤ１２１０によって提示されるＡＲ／ＭＲ場面を介して示される。物理的キーボード１３４０は、キーボード１２４０の実施形態であってもよい。物理的キーボード１３４０の一部は、物理的ラベルを含んでもよい。実施例として、キー１３２２ａ、１３２２ｂ、１３２２ｃ、および１３２２ｄは、Ａ、Ｓ、Ｄ、Ｆとしてラベリングされる。その結果、キー１３２２ａが、作動されると、キーボード１３４０は、文字Ａがシステムの中に打ち込まれたことを示す信号を送信してもよい。例えば、押下されているキー１３２２ａの信号は、ウェアラブルシステムに、キー１３２２ａと関連付けられたＡＳＣＩＩ値を識別させてもよい。ウェアラブルシステムは、ＡＳＣＩＩ値をユーザインターフェース相互作用のための文字Ａに自動的に変換することができる（例えば、ユーザが文を入力するとき）。
【０１３７】
部分１３４２および１３４４等の物理的キーボードのある部分は、ブランクであって、ブランク物理的キーが、恒久的に割り当てられた文字、数、記号等の恒久的に割り当てられた機能を有していない、および／またはそれでラベリングされていない場合があることを意味し得る。ＨＭＤ１２１０は、コンテキスト情報に基づいて、仮想キーラベルを提示することができる。
【０１３８】
例えば、物理的キーボードの位置または配向、既存のレイアウト、物理的キーボードによってサポートされる作動のタイプ（例えば、タッチ、スワイプ等）、キーボードのサイズ、ブランクキーの数および場所等のコンテキスト情報が、物理的キーボードと関連付けられてもよい。例えば、セクション１３４２のためのレイアウトは、数字のために好適である。その結果、ＨＭＤ１２１０は、図１３Ｂに示されるように、セクション１３４２内の物理的キー上に重畳される仮想画像データとして（ＡＲ画像データとして）、数字０−９をレンダリングすることができる。ウェアラブルシステムは、図７を参照して説明される種々のコンピュータビジョンアルゴリズムを使用して、セクション１３４２およびそのレイアウトを認識することができる。例えば、ウェアラブルシステムは、セクション１３４２と関連付けられた表面の形状を図示する、画像を入手することができる。本実施例では、セクション１３４２と関連付けられた表面は、１０個の正方形形状のバンプと、１個の長方形バンプとを含むことができる。オブジェクト認識装置７０８は、本表面形状と１０個の正方形状のキーおよび１個の長方形状のキーのレイアウトを合致させることができる。ある実施形態では、物理的キーボードは、事前にラベリングされた１つ以上のキーを有してもよい。その結果、ウェアラブルシステムは、キーボードのラベル（例えば、画像内の文字列「ＱＷＥＲＴＹ」のシーケンス）を検出することによって、オブジェクトがキーボードであることを認識することができる。別の実施例として、スペースバー（キー１３２４として図示される）は、タッチセンサ式表面を有してもよい。その結果、ＨＭＤは、スライドバーをキー１３２４上にレンダリングしてもよく、ユーザは、スライドバーを保持し、一端から他端に移動させ、例えば、アプリケーションを開く／閉じるまたは仮想オブジェクトをスライドバーの移動と同一方向に移動させる等のユーザインターフェース動作を実施することができる。さらに別の実施例として、ユーザは、物理的キーボードを、例えば、居間から寝室内の端部の机等に移動させてもよい。移動の結果、ウェアラブルシステムは、物理的キーボードの位置を再決定し、適宜、仮想キーラベルのレンダリング場所を更新することができる。ウェアラブルシステムは、オブジェクト認識装置７０８を使用して、物理的キーボードの場所を追跡することができる。例えば、ウェアラブルシステムは、物理的キーボードの画像を入手し、オブジェクト認識装置７０８を使用して、画像を解析し、物理的キーボードを識別することができる。ある実施形態では、ウェアラブルシステムは、テンプレートを使用して、物理的キーボード内のキーの位置を合致させることができる。テンプレートは、キーボードの物理的表面の形状を追跡し得る。画像を解析する間、オブジェクト認識装置７０８は、テンプレートと画像内の物理的キーボードを整合させるように試みることができる。いったん整合が成功すると、オブジェクト認識装置７０８は、テンプレートに基づいて、各キーの場所を決定することができる。さらに、ユーザは、タイプしながら、キーボードの場所または配向を変化させてもよい（例えば、より快適な位置を達成するため等）。ウェアラブルシステムはまた、キーボードの配向のそのような変化を検出し、適宜、仮想キーのレンダリング場所を調節することができる。
【０１３９】
コンテキスト情報はまた、例えば、ユーザの環境内のオブジェクトのレイアウト、場所、サイズ、ユーザが現在相互作用しているオブジェクトのタイプまたは双方向特徴、ユーザの環境の照明条件（例えば、キーの照明を調節するために）等のユーザの環境またはＨＭＤによって実行されているアプリケーションの特性と関連付けられてもよい。例えば、キー１３２４は、ユーザの環境内のオブジェクトが相互から比較的に遠く離れて位置する場合、スライドバーを含んでもよい。キー１３２４上でスライドさせることによって、ユーザは、仮想オブジェクトを別の場所により迅速に移動させることができる。しかしながら、ユーザの環境内のオブジェクトが、ともにより密接する場合、ウェアラブルシステムは、スライドバーをレンダリングしなくてもよい。むしろ、ユーザは、仮想オブジェクトを移動させるために、セクション１３４６内の矢印キーに依拠する必要があり得る。矢印キーを使用することによって、ユーザは、仮想オブジェクトをより精緻化された方式で移動させることができ、仮想オブジェクトと別のオブジェクトの衝突を回避することができる。別の実施例として、ユーザは、ユーザの台所内の適切に有効にされた物理的冷蔵庫と相互作用する間、キーボードを使用することを所望し得る。本実施例では、ユーザは、キーボードを使用して、冷蔵庫（例えば、冷蔵庫の温度等）をプログラムすることができる。ウェアラブルシステムは、ユーザの眼視線方向を検出し、レイキャスティング技法を使用して、冷蔵庫を識別することができる。ウェアラブルシステムはさらに、ユーザがキーボードを作動させるとき（例えば、長時間周期にわたるキー１３２４の押下を検出することによって）またはユーザがあるジェスチャを示すとき、ユーザが冷蔵庫をプログラムすることを意図することを決定することができる。その結果、ウェアラブルシステムは、冷蔵庫に特有の種々の制御をキーボード１３４０上にレンダリングすることができる。例えば、ウェアラブルシステムは、例えば、摂氏０、−１０、または４度等のいくつかの事前に設定された温度をセクション１３４２内のキー上にレンダリングする一方、ユーザが温度をさらに調節するために、上矢印および下矢印をセクション１３４６内にレンダリングすることができる。
【０１４０】
図１３Ｂおよび１３Ｃは、オブジェクトのタイプおよび双方向特徴に基づいて、キーボード１３４０を動的に再構成する実施例を図示する。ユーザは、ＨＭＤ１２１０を介して、仮想オブジェクトＡ  １３１２ａを知覚することができる。仮想オブジェクトＡ  １３１２ａは、ユーザの３Ｄ環境内にレンダリングされてもよい。仮想オブジェクトＡ  １３１２ａは、数学アプリケーションを含んでもよい。その結果、ＨＭＤ１２１０は、数０−９をキーボード１３４０のセクション１３４２上にレンダリングすることができる。いくつかの状況では、数学アプリケーションは、会計特徴および数学的特徴の両方を含んでもよい。ＨＭＤ１２１０は、ユーザが会計特徴を使用する場合、図１３Ｂに示されるような仕様をレンダリングすることができる。しかしながら、ユーザが、数学的特徴に切り替える場合、ＨＭＤ１２１０は、数学的特徴に特有の付加的キーをレンダリングしてもよい。例えば、ＨＭＤは、数学的演算子と関連付けられた記号をキーボードセクション１３４４内にレンダリングしてもよい。ユーザが、仮想オブジェクトＡ  １３１２ａではなく、仮想オブジェクトＢ  １３１２ｂと相互作用している場合、ウェアラブルシステムは、キーボード１３４０の仕様を図１３Ｃに示されるようなものに調節することができる。図１３Ｃにおける仕様は、記号をセクション１３４２内に含み、数字は、セクション１３４２（図１３Ｂに示されるように）ではなく、セクション１３４４内にレンダリングされる。これは、仮想オブジェクトＢ  １３１２ｂが、数学関連アプリケーションではなく、ワード処理アプリケーションと関連付けられるためであり得る。
【０１４１】
コンテキスト情報はさらに、例えば、ユーザの人口統計情報、ユーザの選好、またはユーザの過去の相互作用等のユーザの特性に基づいてもよい。例えば、ウェアラブルシステムは、ユーザの母国語を決定し、ユーザの母国語のために設計される仕様に従って、キーラベルをキーボード１３４０上に重畳することができる。別の実施例として、ウェアラブルシステムは、ユーザの過去のタイプ挙動に基づいて、いくつかの頻繁に使用される絵文字を識別し、ユーザがアクセスするために、絵文字をキーボード１３４０のセクション１３４２内にレンダリングすることができる。さらに別の実施例として、ウェアラブルシステムは、ＡＺＥＲＴＹレイアウトの選択をデフォルトレイアウトとしてユーザから受信することによって、またはウェアラブルシステムとのユーザの過去の相互作用を観察することによって（例えば、ユーザは、多くの場合、ＱＷＥＲＴＹレイアウトではなく、ＡＺＥＲＴＹレイアウトを選択する）、ＡＺＥＲＴＹレイアウトがユーザにとってＱＷＥＲＴＹレイアウトより好ましいことを決定してもよい。その結果、ウェアラブルシステムは、ＡＺＥＲＴＹレイアウトを、ＱＷＥＲＴＹレイアウトではなく、キーボード１３４０上にレンダリングすることができる。
【０１４２】
種々の実施形態では、コンテキスト情報は、例えば、ディスプレイ２２０の光学特性等のＨＭＤの特性を含むことができる。例えば、ディスプレイ２２０を通して知覚されるようなユーザのＡＲ／ＭＲ  ＦＯＶは、物理的キーボードのサイズより小さくあり得る。その結果、ユーザは、ユーザがＨＭＤと相互作用しながら、キーボード１３４０全体を知覚することが不可能であり得る。本問題を解決するために、ウェアラブルシステムは、ユーザの眼視線および頭部姿勢に基づいて、キーの位置を動的に移動させることができる。例えば、ユーザがプレーしているゲームは、４つの指向性キー（上、下、右、および左）を要求し得るが、ウェアラブルシステムは、最初に、４つの指向性キーをセクション１３４６内にレンダリングすることができる。しかしながら、ユーザが左に方向転換する場合、ユーザのＦＯＶは、適宜、更新されることができる。４つの方向キーが依然としてユーザのＦＯＶ内にあることを確実にするために（例えば、４つの方向キーとユーザのＦＯＶとの間の相対的位置を維持することによって）、ＨＭＤは、適宜、４指向性キーのレンダリング場所をキーボード１３４０上の左に移動させることができる。本移動の結果、４指向性キーは、もはやセクション１３４６内のキー上にレンダリングされない。
【０１４３】
ＨＭＤは、種々の技法を使用して、キーラベルを物理的キーボード１３４０上にレンダリングすることができる。ＨＭＤは、キー値のピクセルスティックを介して、キー値（例えば、文字「Ｂ」または「＄」記号）をキーボードの物理的キー上にレンダリングすることができる。ピクセルスティックは、画像またはピクセルを３Ｄ空間内の場所またはオブジェクト（例えば、キー）と「スティック」させることができる。別の実施例として、ウェアラブルシステムは、物理的キーボードの物理的特性（例えば、キーのサイズ、場所等）に合致する仮想キーボードを物理的キーボードの上部にオーバーレイすることができる。種々の実施形態では、ウェアラブルシステムは、仮想キーラベルをキーボード１３４０の一部にレンダリングしてもよい。例えば、ウェアラブルシステムは、仮想キーラベルをセクション１３４２の中にレンダリングすることができるが、キーボード１３４０の他のセクションにはレンダリングしない。キーボード１３４０の他のセクションのうちのいくつかが、事前にラベリングされている場合（物理的ラベルで）、ユーザには、ディスプレイ２２０を通して見え、物理的ラベルによって示される機能に基づいて、これらの事前にラベリングされたキーと相互作用することができる。
【０１４４】
ある実施形態では、ウェアラブルシステムは、仮想キーラベルを物理的ラベルをすでに有するキー上にレンダリングすることができる。仮想キーラベルは、物理的ラベルをオクルードしない場所にレンダリングされてもよい。例えば、ユーザは、ＨＭＤと相互作用するとき、英語およびヘブライ語の両方を使用してもよい。キーボード１３４０は、英語文字で事前にラベリングされてもよい。しかしながら、ユーザが、入力モードをヘブライ語に切り替えると、ウェアラブルシステムは、ヘブライ語文字をキーボードのキー上にレンダリングすることができる。ヘブライ語文字は、あるキー上の英語文字に近接してレンダリングされてもよい。ヘブライ語文字の位置は、英語文字をオクルードし得ない。その結果、ユーザは、英語文字（例えば、物理的ラベルに起因する）およびヘブライ語文字（例えば、仮想ラベルに起因する）の両方を知覚することができる。いくつかの実装では、仮想キーラベルは、物理的ラベルをオクルードしてもよい。例えば、仮想キーラベルの明度は、ユーザの環境内の光を上回ってもよい。その結果、ユーザは、仮想キーラベルが物理的ラベルにわたってレンダリングされると、物理的ラベルを知覚することが不可能になり得る。
【０１４５】
仮想キーラベルのレンダリング場所に加え、またはその代替として、ウェアラブルシステムはまた、仕様に従って、キーの機能を動的に更新することができる。図１３Ｂおよび１３Ｃを参照すると、キー１３５２が、最初に、０であるように割り当てられると、ウェアラブルシステムは、キー１３５２の作動を示す信号を０と関連付けられたＡＳＣＩＩ値に変換することができる。ウェアラブルシステムは、適宜、０の入力値に従って、動作を実施することができる。しかしながら、図１３Ｃでは、キー１３５２は、等号に割り当てられる。その結果、ウェアラブルシステムは、キー１３５２の作動を示す信号を「＝」と関連付けられたＡＳＣＩＩ値に変換することができる。ウェアラブルシステムは、適宜、本入力に従って、動作（例えば、数学演算）を実施することができる。
【０１４６】
図１３Ａ−１３Ｃにおける例示的キーボード１３４０は、物理的ラベルを有するキーを含むが、ある実施形態では、キーボード１３４０は、全体的にブランクであることができ、およびウェアラブルシステムは、コンテキスト情報に基づいて、仮想キーラベルを物理的キーボード上にレンダリングすることができる。さらに、種々の実施形態では、１つを上回るコンテキスト要因が、物理的キーボードの仕様を決定するために使用されてもよい。例えば、ウェアラブルシステムは、物理的キーボード１３４０上にレンダリングされるべきレイアウトを決定するために、ユーザが現在相互作用しているアプリケーションに加え、ユーザの選好を考慮することができる。これらの実施例は、物理的キーボードを参照して説明されるが、類似技法およびコンテキスト情報はまた、仮想キーボードを動的に再構成するために使用されることができる。例えば、ウェアラブルシステムは、図１３Ａ−１３Ｃを参照して説明されるコンテキスト情報に基づいて、キーボードテンプレート（ある仮想キーを有する）を種々の仮想キー値に動的に更新することができる。
【０１４７】
物理的キーボードのキーの割り当てられた機能を動的に再構成することに加え、キーボード１３４０は、触覚的変換器または他の機械的または電気要素を含むことができ、これは、物理的キーボードの１つ以上のキーの「感触」を動的に変化させるために使用され得る。１つ以上のそのような要素は、キーあたり提供されることができる。作動されるときのユーザにとってのキーの感触または応答の方法に関する任意の特性は、これらの要素によって変化されることができる。例えば、キーの抵抗、加重、進行等は全て、変化されることができる。任意のキーの作動特性の変化は、キーボードの仕様の変化に応答して実施されることができる。例えば、キーの作動特性は、ＨＭＤがＡＲピアノアプリケーションを実行している場合、よりピアノ様の感触をもたらすように変化されることができる。または作動特性は、ＨＭＤがＡＲタイピングアプリケーションを実行している場合、タイプライタ様となるように変化されることができる。
【０１４８】
キーボードの例示的セクションおよび双方向領域
ある実施形態では、物理的キーボードは、キーボードが複数のセクションから組み立てられ得るように、再構成可能であることができる。キーボードはまた、複数のセクションに分解されることができる。有利には、いくつかの実施形態では、再構成可能キーボードは、ユーザがキーボードのサイズおよび形状を容易に変化させることを可能にすることができる。
【０１４９】
図１４は、再構成可能物理的キーボード１４２０の実施例を図示する。再構成可能物理的キーボード１４２０は、図１２に示されるキーボード１２４０の例示的実施形態であってもよい。物理的キーボード１４２０は、１４１２、１４１４、および１４１６等のセクション、および他のセクション１４１８に分離されることができる。例えば、ユーザが、ゲームをプレーしている間、ユーザは、キーボード１４２０全体ではなく、セクション１４１４を使用し得る。セクション１４１４をキーボード１４２０から切り離すことによって、ユーザは、ＨＭＤ１２１０と相互作用する間、キーボード１４２０全体を持ち歩く必要がない。別の実施例として、ユーザは、セクション１４１２およびセクション１４１６をともに継ぎ合わせ、新しいキーボードを作成することができる。ユーザはさらに、他のセクションを新しいキーボードに取り付け、新しいキーボード内のキーのレイアウトをカスタマイズすることができる。例えば、ユーザは、セクション１４１４内のキーをセクション１４２０内のものより大きくすることを所望し得る。その結果、ユーザは、セクション１４１４と、セクション１４１４内のものより大きいキーを提供する、別のセクションを置換してもよい。他のセクションも、ユーザがより大きいキーをキーボード１４２０のオリジナルセクション１４１４内に伴うカスタマイズされたキーボードを有し得るように、キーボード１４２０に物理的に取り付けられてもよい。各セクションは、機械的および／または電気的コネクタを含み、他のセクションと噛合し、および／またはセクション間の電気通信を確立することができる。
【０１５０】
個々のセクションは、キーボードまたはキーの機械的特性、キーと関連付けられた機能または潜在的コマンドに基づいて、分割されることができる。例えば、いくつかの実施形態では、スペースバーキーそれ自体が、セクション内にあってもよい。ユーザは、複数のスペースバーキーを順次様式で取り付け、ピアノの鍵盤に類似するキーボードを作成することができる。その結果、ユーザは、ＨＭＤがユーザが演奏するために仮想ピアノを提示すると、組み立てられたキーボードを使用することができる。別の実施例として、キーのセクションは、長方形形状であってもよく、これは、複数のセクションをユーザが移動させることが不便であり得る形状に組み立てる可能性を低減させることができる。
【０１５１】
図１２を参照して説明されるように、キーボードは、複数の双方向領域に分割されてもよく、各双方向領域は、類似ユーザ相互作用をサポートする、または類似機能を実施してもよい。双方向領域は、キーボードのセクションと一致する場合とそうではない場合がある。例えば、キーボードは、セクション１４１４と一致する１つの双方向領域と、セクション１４１６と一致する別の双方向領域とを含むことができる。セクション１４１４と一致する双方向領域は、オブジェクトを移動させる（例えば、上／下／左／右）ために設計されてもよい一方、セクション１４１６と一致する双方向領域は、数値操作等の機能を実施してもよい。しかしながら、セクション１４１２は、２つの双方向領域を有することができ、一方の双方向領域１４２２ｂは、他の双方向領域１４２２ａより暗い陰影で図示される。双方向領域１４２２ａ内のキーは、容量タッチセンサを含んでもよく、その結果、タッチジェスチャを検出することができる。しかしながら、双方向領域１４２２ｂ内のキーは、容量タッチセンサを装備しなくてもよく、したがって、それらは、タッチジェスチャを認識しなくてもよい。別の実施例として、ユーザは、セクション１４１２およびセクション１４１６を新しいキーボードの中に組み立てることができる。新しいキーボードは、キーボードが複数のセクションを有する場合でも、１つの双方向領域と見なされ得る。
【０１５２】
図１３Ａ−１３Ｃを参照して説明されるように、キーは、事前に印刷された物理的ラベルを有してもよい、またはブランクであってもよい。ユーザは、全てがキーブランクの状態で、または全てのキーが事前に印刷された物理的ラベルおよび恒久的に割り当てられた機能を有する状態で、またはキーボードの一部のみが事前に印刷された状態で（例えば、１つのセクションは、ブランクである一方、他のセクションは、事前に印刷されたラベルを有する）、キーボードを組み立てることができる。ＨＭＤは、図１３Ａ−１３Ｃを参照して説明される類似技法を使用して、組み立てられたキーボードを構成することができる。例えば、ＨＭＤは、オブジェクト認識装置７０８を使用して、組み立てられたキーボード内のキーの数およびキーの位置を認識することができる。いったんＨＭＤが、組み立てられたキーボードの物理的レイアウトを決定すると、ＨＭＤは、１つ以上のキーがブランクであるかどうか（例えば、キーの画像がラベルをそれらの上に有していないため）およびブランクキーに割り当てられるであろう機能／仮想ラベルを決定することができる。
【０１５３】
図１４における実施例は、物理的キーボードを参照して説明されるが、類似技法はまた、仮想キーボード上に適用されることができる。例えば、ユーザは、手のジェスチャおよび腕移動を使用して、仮想キーボードを組み立てる、または分解することができる。物理的キーボード内のセクションは、仮想キーボードの定義されたテンプレートに対応してもよい。
【０１５４】
キーボードとの例示的ユーザ体験
図１２を参照して説明されるように、キーボード１２４０は、ユーザのＦＯＶおよびＦＯＲ内のオブジェクトと相互作用することができる。図１５Ａは、動眼視野（ＦＯＲ）、世界カメラの視野（ＦＯＶ）、ユーザの視野、およびユーザの固視野の実施例を図式的に図示する。
【０１５５】
図４を参照して説明されるように、ＦＯＲ１５００は、ウェアラブルシステムを介してユーザによって知覚されることが可能なユーザの周囲の環境の一部を含む。ＦＯＲは、装着者が、その身体、頭部、または眼を移動させ、空間内の実質的に任意の方向を知覚することができるため、ウェアラブルシステム４００を囲繞する４πステラジアンの立体角を含み得る。他のコンテキストでは、装着者の移動は、より制約され得、故に、装着者のＦＯＲは、より小さい立体角に対し得る。
【０１５６】
世界カメラの視野１５７０は、外向きに向いた結像システム４６４によって現在観察されている、ユーザのＦＯＲの一部を含むことができる。図４を参照すると、世界カメラの視野１５７０は、所与の時間にウェアラブルシステム４００によって観察される、世界４７０を含んでもよい。世界カメラ１２７０のＦＯＶのサイズは、外向きに向いた結像システム４６４の光学特性に依存し得る。例えば、外向きに向いた結像システム４６４は、ユーザの周囲の１９０度空間を結像し得る、広角カメラを含むことができる。ある実装では、世界カメラのＦＯＶ１５７０は、ユーザの眼の自然ＦＯＶより大きいまたはそれと等しくてもよい。
【０１５７】
ユーザのＦＯＶ１５５０は、ユーザが所与の時間に知覚する、ＦＯＲ１５００の一部を含むことができる。ユーザのＦＯＶ１５５０は、ウェアラブルデバイスのディスプレイのサイズまたは光学特性に依存し得る。例えば、ＡＲディスプレイは、ユーザがディスプレイの特定の部分を通して見るとき、ＡＲ機能性のみを提供する、光学系を含んでもよい。ＦＯＶ１５５０は、例えば、スタックされた導波管アセンブリ４８０（図４）または平面導波管６００（図６）等のＡＲディスプレイを通して見ているときにユーザによって知覚可能な立体角に対応してもよい。ある実施形態では、ユーザのＦＯＶ１５５０は、ユーザの眼の自然ＦＯＶより小さくてもよい。
【０１５８】
ウェアラブルシステムはまた、ユーザの固視野１５９０を決定することができる。固視野１５９０は、ユーザの眼が固視（例えば、視覚的視線をその部分に維持）し得る、ＦＯＶ１５５０の一部を含むことができる。固視野１５９０は、ユーザのＦＯＶ１５５０より小さくあり得、例えば、固視野は、数度〜約５度であり得る。その結果、それにもかかわらず、ユーザは、固視野１５９０内にないが、ユーザの周辺視野内にある、ＦＯＶ１５５０内のいくつかの仮想オブジェクトを知覚することができる。
【０１５９】
物理的キーボードとの例示的ＵＩ相互作用
図１５Ｂは、物理的キーボード１５４０を使用してユーザのＦＯＲ１５００およびＦＯＶ１５５０内の仮想オブジェクトと相互作用する、実施例を図示する。図１５Ｂでは、ＦＯＶ１５５０は、破線１５５２によって図式的に図示される。ウェアラブルシステムのユーザは、仮想オブジェクト１５４２、仮想オブジェクト１５４４、および仮想オブジェクト１５３０の一部等のＦＯＶ１５５０内の複数のオブジェクトを知覚することができる。ユーザは、それらがＦＯＲ１５００内にあるが、ＦＯＶ１５５０内にないため、直接、仮想オブジェクト１５１０および１５２０を見ることが不可能である場合がある。
【０１６０】
ユーザは、キーボード１５４０を作動させ、仮想オブジェクトをＦＯＶ１５５０の内外に移動させることができる。例えば、ユーザは、キー１５４８を押下し、オブジェクトを右に移動させてもよい。本実施例では、仮想マップ１５１０は、最初に、ユーザのＦＯＶ１５５０外にある。キー１５４８が、タッチされる場合、仮想マップ１５１０は、ユーザのＦＯＶ１５５０内に移動し得、例えば、仮想オブジェクト１２３０は、ユーザのＦＯＶ１５５０外に移動し得る。
【０１６１】
図１３Ａ−１３Ｃを参照して説明されるように、キーボード１５４０は、ブランクキーを伴うキーボードであってもよく、ウェアラブルシステムは、ブランクキーをある機能および機能に対応する仮想ラベルに割り当てることができる。いくつかの実施形態では、ＦＯＶ１５５０が、ユーザの姿勢（例えば、頭部姿勢または眼視線）の変化に起因して変化する場合、ウェアラブルシステムは、ユーザが、依然として、キーボード１５４０を作動させ、同一機能を実施し得るように、仮想ラベルのレンダリング場所を動的に更新することができ、機能を新しいキーに再割当することができる。
【０１６２】
図１５Ｃは、物理的キーボードと関連付けられた仮想画面を提示する実施例を図示する。物理的キーボードは、ブランク物理的画面を含むことができ、これは、物理的キーボードに取り付けられる、そこから延在する、または別様にそれと統合される。そのような物理的画面は、１つ以上の仮想キーまたは他の双方向特徴とともに、仮想画面をレンダリングするための場所としての役割を果たすことができる。ウェアラブルシステムは、物理的キーボードと関連付けられた仮想画面を提示することができる。物理的キーボードの作動は、ユーザインターフェース動作を仮想画面上で実施させ得る。例えば、ウェアラブルシステムは、キーボード１５４０の近傍に現れるように、仮想画面１５８４を提示することができる。ユーザが、キーボード１５４０を押下すると、ユーザは、仮想画面１５８４上の仮想オブジェクト１５８２を移動させる、またはそのサイズを変化させ得る。ある実施形態では、仮想画面１５８４は、キーボード１５４０の画像をレンダリングすることができる。ユーザが、キーボード１５４０上のキーを作動させると、ウェアラブルシステムは、視覚的焦点インジケータを仮想画面１５８４上の対応するキーに提供することができる。視覚的焦点インジケータは、後光（対応する仮想キーを実質的に囲繞する、またはその近傍にある）、色、知覚されるサイズまたは深度変化（例えば、対応する仮想キーをより近くにおよび／またはより大きく現れさせる）、または他の視覚的効果を含むことができ、これは、ユーザの注意を引き付ける。有利には、いくつかの実施形態では、物理的キーボード１５４０に対応する仮想画面１５８４を提示することによって、ユーザは、押下しているキーを把握するために、下を見る必要がない。これは、ユーザがＨＭＤと相互作用しているときのユーザ疲労を低減させることができる。
【０１６３】
ある実装では、物理的キーボード１５４０上にレンダリングされた仮想キーラベルのサイズは、ユーザの頭部姿勢に基づいて変化してもよい。例えば、物理的キーボード１５４０は、テーブル上に提示されてもよい。仮想キーラベルは、ユーザが物理的キーボード１５４０を見下ろしていることをＨＭＤのＩＭＵが検出すると、ユーザが押下しているキーをユーザが見ることに役立つように拡大されてもよい。本サイズ変化は、物理的キーボード１５４０が対応する仮想画面を有する状況に限定されない。サイズ変化はまた、例えば、ユーザが、図１５Ｂに示されるように、ＦＯＶおよびＦＯＲ内のオブジェクトと相互作用しているときに実装されることができる。
【０１６４】
ウェアラブルシステムは、本明細書に説明されるコンテキスト情報に基づいて、レンダリング場所を更新する、または仮想画面が可視／不可視になるように設定することができる。例えば、ウェアラブルシステムは、キーボード１５４０がユーザのＦＯＶ内にある場合、仮想画面１５８４を表示することができる。ユーザの姿勢が変化し、キーボード１５４０は、もはやユーザのＦＯＶ内にない場合、ウェアラブルシステムは、仮想画面１５８４を隠蔽することができる。仮想画面１５８４は、種々の視覚的効果と関連付けられてもよい。例えば、ウェアラブルシステムは、仮想画面１５８４が可視に設定されると、仮想画面１５８４をロールダウンする動画を提示することができる。ウェアラブルシステムはまた、仮想画面１５８４が不可視に設定されると、ロールアップする動画を提示することができる。
【０１６５】
本明細書に説明されるように、物理的キーボードは、仮想オブジェクトまたは物理的オブジェクトと相互作用するために使用されることができる。相互作用が、物理的オブジェクトとである場合、ウェアラブルシステムは、物理的キーボードの作動を検出し（例えば、物理的キーボードの容量センサからの信号を介して）、物理的オブジェクト（例えば、冷蔵庫、テレビ、またはコーヒーメーカー等）の対応するコマンドを通信し、物理的オブジェクトに、アクション（例えば、オン／オフにする、温度を変更する、チャンネル／音量を変更する等）を実施させることができる。
【０１６６】
仮想キーボードとの例示的ＵＩ相互作用
種々の実施形態では、ウェアラブルシステムは、仮想キーボードを生成することができ、これは、ユーザの環境内の物理的または仮想オブジェクトとの相互作用のために使用され得る。仮想キーボードは、例えば、テーブルまたは壁等の表面上に重畳されたＡＲ画像データでレンダリングされるてもよい、またはユーザの３Ｄ環境内にレンダリングされてもよい（例えば、表面と衝突せずに、ユーザの正面にレンダリングされる）。
【０１６７】
本明細書に説明されるように、仮想キーボードはまた、コンテキスト情報に基づいて、動的に構成可能である。一実施例では、ウェアラブルシステムは、ユーザが現在相互作用しているオブジェクトに基づいて、仮想キーボードの仕様を決定することができ、仕様に基づいて、仮想キーボードをユーザの環境内にレンダリングすることができる。例えば、ウェアラブルシステムは、オブジェクトとの相互作用のために使用される、最も頻繁に使用されるキーを決定することができ、最も頻繁に使用されるキーを含むように、仮想キーボードをレンダリングすることができる。ユーザが、頻繁に使用されないキーであるキーを使用することを所望する場合、ユーザは、仮想キーボードを作動させる、またはその姿勢を変化させ、ウェアラブルシステムに、仮想キーボード上に前もってレンダリングされていない付加的キーを呼び出させてもよい。別の実施例として、アプリケーションが、数学ベースのアプリケーションである場合、ウェアラブルシステムは、仮想数字パッドをレンダリングすることができる。アプリケーションが、外国語（例えば、言語学習アプリケーションまたはメッセンジャアプリケーション）を伴う場合、ウェアラブルシステムは、キーが外国語にカスタマイズされた仮想キーボードをレンダリングすることができる。
【０１６８】
別の実施例として、仮想キーボードは、ユーザの環境内の物理的キーボードのエミュレーションであってもよい。図１２を参照して説明されるように、ウェアラブルシステムが、物理的キーボードを認識後、ウェアラブルシステムは、例えば、遠隔データリポジトリ２８０からの物理的キーボードの仕様にアクセスすることができる。ウェアラブルシステムは、ユーザの環境内の対応する仮想キーボードをレンダリングすることができる。その結果、ユーザは、ユーザの環境内のオブジェクトと相互作用するために、物理的キーボードを持ち歩く必要はない。
【０１６９】
物理的キーボードが再構成可能である、いくつかの状況では、ウェアラブルシステムまた、ウェアラブルシステムが物理的キーボードの構成の更新を検出すると、適宜、仮想キーボードを更新する。例えば、ユーザは、最初に、物理的キーボードＡと相互作用してもよい。ウェアラブルシステムは、適宜、物理的キーボードＡの仕様に従って、仮想キーボードをレンダリングすることができる。しかしながら、ユーザは、新しい物理的キーボードが、一方のセクションが物理的キーボードＡに対応する一方、他方のセクションが物理的キーボードＢに対応する、２つのセクションを有し得るように、キーボードＡとキーボードＢを物理的に取り付けることによって、新しい物理的キーボードを組み立ててもよい。ウェアラブルシステムは、外向きに向いた結像システム４６４またはＨＭＤの外部のカメラによって入手された画像に基づく、キーボードＡおよびキーボードＢに基づいて、新しいキーボードが組み立てられたことを検出することができる。例えば、ウェアラブルシステムは、ユーザがそれらをともに組み立てるにつれて、物理的キーボードＡおよびＢの移動を追跡することができる。ウェアラブルシステムはまた、物理的キーボードの画像を分析し、視覚的キュー（例えば、物理的キーボードのキーのレイアウト、キー上のラベル等）に基づいて、物理的キーボードの仕様を識別してもよい。ウェアラブルシステムは、物理的キーボードＡおよびＢのための仕様を組み合わせることによって、仕様を識別することができる。ウェアラブルシステムはまた、仕様の視覚的キューに基づいて、データ記憶装置にアクセスし、仕様を読み出すことができる。ウェアラブルシステムは、新しい物理的キーボードの仕様に従って、仮想キーボードを更新し、仮想キーボードをレンダリングすることができる。更新された仮想キーボードは、新しい物理的キーボードのレイアウトおよび機能を有してもよい。
【０１７０】
いくつかの実施形態では、ユーザは、ユーザの姿勢の変化に基づいて、またはユーザ入力デバイスの作動に基づいて、物理的キーボードと仮想キーボードとの間で切り替えることができる。例えば、ユーザが、物理的キーボード上のキーを押下する場合、ウェアラブルシステムは、入力モードを仮想キーボードから物理的キーボードに変化させることができる。別の実施例として、ユーザは、手のジェスチャ（例えば、その手を２回振る）を使用して、ＨＭＤにユーザが相互作用するための仮想キーボードを提示させることができる。
【０１７１】
ウェアラブルシステムはまた、切替を自動的に実施することができる。自動切替は、ユーザの姿勢（例えば、ジェスチャ、頭部姿勢、眼視線等）に基づいてもよい。例えば、ウェアラブルシステムは、ユーザ相互作用のための仮想キーボードを提示することができる。ユーザがその身体および頭部を移動させるにつれて、ウェアラブルシステムは、ユーザのＦＯＶ内の物理的キーボードを検出および認識し得る。ウェアラブルシステムは、仮想キーボードを物理的キーボード上にレンダリングさせ、仮想キーボードの機能を含むように、物理的キーボードの機能を動的に構成することができる。ユーザは、故に、物理的キーボードを使用して、ウェアラブルシステムと相互作用することができる。いくつかの状況では、ウェアラブルシステムは、仮想キーボードの一部を物理的キーボード上にレンダリングしてもよい。例えば、物理的キーボードは、数字パッドであってもよい。しかしながら、仮想キーボードはまた、数字ではない他のキー（例えば、文字等）を含むことができる。その結果、ウェアラブルシステムは、数字パッド上の数字のための仮想ラベルをレンダリングしてもよいが、仮想キーの残りを数字パッド上にレンダリングしない。数字パッドが事前にラベリングされている場合、ウェアラブルシステムは、仮想キーボード内の数字キーを隠蔽するが、ユーザが数字パッドを介して数字を打ち込むことを可能にしてもよい。
【０１７２】
図１６Ａ−１６Ｄは、例示的特徴および仮想キーボードとのユーザ相互作用を図示する。ユーザの環境は、複数の仮想キーボードと関連付けられてもよい。例えば、オブジェクトは、ＱＷＥＲＴＹキーボードまたはＤｖｏｒａｋキーボードを使用して、相互作用されてもよい。別の実施例として、複数の物理的キーボードがユーザの環境内に存在し得、ウェアラブルシステムに、複数の対応する仮想キーボードを作成させることができる。さらに別の実施例として、ユーザの環境内のオブジェクトは、異なる仮想キーボードと関連付けられてもよい。テレビ１６１０は、遠隔コントローラに類似するレイアウトを有する、仮想キーボードと関連付けられてもよい一方、仮想アバタ１６２４は、タッチ可能領域を有する仮想キーボードと関連付けられてもよい。
【０１７３】
ユーザは、姿勢を使用して、またはユーザ入力デバイスを作動させることによって、仮想キーボードを選択することができる。例えば、ユーザは、ある時間周期（例えば、５、１０、１５秒等）にわたって仮想キーボードを注視することによって、仮想キーボードを選択することができる。ユーザはまた、トーテムを使用して、オブジェクト（例えば、テレビ１６１０またはアバタ１６２４）に向けることができ、これは、ウェアラブルシステムに、オブジェクトと関連付けられた仮想キーボードを提示させることができる。いくつかの実施形態では、ウェアラブルシステムは、複数の仮想キーボードをユーザの環境内にレンダリングさせることができる。ユーザは、握持ジェスチャを使用することによって、１つ以上の仮想キーボードを選択することができる。ユーザはまた、投擲ジェスチャを使用して、他の仮想キーボードを除去することができる。
【０１７４】
図１６Ａは、ＨＭＤのユーザによって知覚されるような環境の実施例を図示する。例示的環境１６００ａは、ユーザの自宅の居間を含む。環境１６００ａは、テレビ（ＴＶ）５１１０、ＴＶスタンド１６３０、および窓５１４０等の物理的オブジェクトと、仮想建物１６２２および仮想アバタ１６２４等の仮想オブジェクトとを有する。
【０１７５】
ユーザがＨＭＤを装着している間、ユーザは、物理的オブジェクトを知覚し、仮想キーボードを用いて、物理的オブジェクトと相互作用することができる。例えば、ユーザは、ＨＭＤを装着している間、ＴＶ１６１０を鑑賞してもよい。仮想キーボード１６２０は、ＴＶを制御するための遠隔装置としての役割を果たし得る（例えば、図１６Ｄに示されるもの参照）。例えば、ユーザは、仮想スペースバーキー１６５２（図１６Ｂに示されるように）を作動させ、ＴＶ１６１０をオン／オフにすることができる。ユーザはまた、指向性キー（例えば、上／下／左／右矢印でラベリングされたキー）を作動させ、ＴＶ１６１０のチャンネルまたは音量を変化させることができる。
【０１７６】
ユーザはまた、仮想キーボード１６２０を作動させ、仮想オブジェクトと相互作用することができる。図１６Ａおよび１６Ｂを参照すると、ユーザは、「−」でラベリングされたキーを使用して、仮想アバタ１６２４のサイズを低減させることができる（例えば、図１６Ａに示されるサイズから図１６Ｂに示されるサイズに）。ユーザはまた、スペースバーキー１６５２上で左にスワイプし、仮想アバタ１６２４を図１６Ａに示される位置から図１６Ｂに示される位置に移動させることができる。
【０１７７】
例示的環境１６００ａおよび１６００ｂでは、仮想キーボード１６２０が、レンダリングされ、窓１６４０の一部をオクルードする。いくつかの実施形態では、仮想キーボードは、ユーザが、仮想キーボード１６２０を通して窓１６４０を透けて見得るように、透明であってもよい。
【０１７８】
仮想キーボードのレンダリング場所は、コンテキスト情報に依存し得る。例えば、ユーザが、ＴＶ１６１０と相互作用している場合、キーボード１６２０は、ＴＶ１６１０の近傍にレンダリングされてもよい。キーボード１６２０はまた、ユーザの腕が届く範囲内（例えば、ユーザから０．３〜１．５ｍの距離内）にレンダリングされてもよい。いくつかの状況では、仮想キーボードの仕様は、レンダリング場所に依存し得る。例えば、仮想キーボードが、ユーザから遠い場合、キーまたは仮想キーボード（全体として）のサイズは、増加してもよい。しかしながら、仮想キーボードが、ユーザの腕の届く範囲内にある場合、キーまたは仮想キーボードのサイズは、変化されなくてもよい。有利には、いくつかの実施形態では、距離に基づいて、キー／仮想キーボードのサイズを動的に調節することによって、ウェアラブルシステムは、ユーザ疲労を低減させ、仮想キーボードとのユーザ相互作用の正確度を増加させることができる。これは、ユーザがその腕を非常に精密な位置に保たない限り、遠くに位置するときに小キーを正確に示すことが困難であるためである。
【０１７９】
コンテキスト情報に基づいてレンダリング場所を調節する別の実施例として、ウェアラブルシステムは、ユーザの移動に基づいて、レンダリング場所を調節してもよい。例えば、仮想キーボード１６２０は、ユーザの頭部移動とともに移動することができる。その結果、仮想キーボード１６２０は、ユーザの頭部の移動にかかわらず、ユーザのＦＯＶ内に留まることができる。
【０１８０】
図１３Ａ−１４を参照して説明されるように、いくつかの実施形態では、ウェアラブルシステムは、コンテキスト情報に基づいて、仮想キーボード１６２０の仕様を動的に更新することができる。例えば、ウェアラブルシステムは、コンテキスト情報に基づいて、仮想キーボード１６２０のセクションまたは仮想キーボード１６２０の１つ以上のキーを動的に示す、または除去してもよい。例えば、ユーザが、ＴＶ１６１０を鑑賞している間、ウェアラブルシステムは、キーの残りを隠蔽しながら、音量およびチャンネル調節のために、方向キーを仮想キーボード１６２０内に提示してもよい。
【０１８１】
例えば、図１６Ｄに示されるように、ウェアラブルシステムは、仮想キーボード１６２０が除去されると、仮想キーボード１６２０の遷移効果を提供することができる。除去は、長時間の無活動またはユーザの手のジェスチャ等のトリガイベントに応答してもよい。ウェアラブルシステムは、いったんウェアラブルシステムが、トリガイベントが満たされることを決定すると、仮想キーボード１６２０の透明度を徐々に増加させることができる。
【０１８２】
図１６Ｂに示されるように、手のジェスチャを使用して、仮想キーボードと相互作用することに加え、またはその代替として、ユーザはまた、図１６Ｃに示されるように、頭部姿勢を使用して、仮想キーボードと相互作用することができる。例えば、ウェアラブルシステムは、内向きに向いた結像システム４６４を使用して、ユーザの視線方向を決定し、ＩＭＵを使用して、ユーザの頭部姿勢を決定することができる。眼視線および頭部姿勢に基づいて、ウェアラブルシステムは、レイキャスティングを仮想キーボード上のキー上で実施することができる。ウェアラブルシステムは、キーがレイキャスティングにおける光線と交差する場合、キーの作動を検出することができる。
【０１８３】
物理的キーボードとのＵＩ相互作用の例示的プロセス
図１７Ａは、物理的キーボードを動的に構成し、それと相互作用する、例示的プロセスを図示する。例示的プロセス１７００は、本明細書に説明されるウェアラブルシステムによって実施されることができる。
【０１８４】
ブロック１７１０では、ウェアラブルシステムは、ユーザの環境内の物理的キーボードを識別することができる。物理的キーボードは、所定のラベルまたは機能と関連付けられない、１つ以上のブランクキーを有する。ウェアラブルシステムは、物理的キーボードと電子的に通信することによって（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＷｉＦｉ、またはＲＦプロトコル等を介して）、物理的キーボードを識別することができる。ウェアラブルシステムはまた、ユーザの環境の画像にアクセスし、分析することによって、物理的キーボードを識別することができる。画像は、ウェアラブルシステムの外向きに向いた結像システムによって、ユーザの環境内のカメラ（例えば、室内カメラ）によって、または別のコンピューティングデバイス（例えば、ラップトップまたはトーテム）のカメラによって入手されてもよい。図１２を参照して説明されるように、ウェアラブルシステムは、オブジェクト認識装置７０８を使用して、画像を分析し、物理的キーボードを識別することができる。
【０１８５】
随意のブロック１７２０では、ウェアラブルシステムは、物理的キーボードと頭部搭載型ディスプレイをペアリングすることができる。頭部搭載型ディスプレイは、ウェアラブルシステムの一部であることができ、図２におけるディスプレイ２２０の実施形態であることができる。物理的キーボードは、図１２を参照して説明される種々の有線および無線ペアリング技法を使用して、頭部搭載型ディスプレイとペアリングされることができる。いくつかの実施形態では、物理的キーボード上のキーは、照明されてもよい。例えば、１つ以上のキーは、発光ダイオード（ＬＥＤ）を含む、またはキーを囲繞するＬＥＤを有してもよい。ウェアラブルシステムは、物理的キーボードによって照明された光パターンの画像を捕捉し、オブジェクト認識装置７０８を使用して、光パターンに基づいて、情報を抽出することができる。例えば、物理的キーボードのデバイス識別子が１２３４であると仮定する。ラベル「１」、「２」、「３」、および「４」を有するキーが、照明されてもよい。外向きに向いた結像システムは、キーボードの画像内の本照明パターンを捕捉することができる。オブジェクト認識装置７０８は、キー上のラベル（例えば、「１」、「２」、「３」、「４」）を認識し、これらのキーの照明を認識することができる。オブジェクト認識装置７０８は、故に、照明パターンに基づいて、数１２３４を抽出することができる。この数「１２３４」は、ウェアラブルシステムによって、物理的キーボードのデバイス情報を入手するために使用されてもよい。いくつかの状況では、キーの照明は、シーケンスであってもよい。例えば、「１」でラベリングされたキーが、「２」でラベリングされたキーの前に照明され、数「１２」を表してもよい。しかしながら、「２」でラベリングされたキーが、「１」でラベリングされたキーの前に照明される場合、本照明シーケンスから抽出される数は、「２１」である。数に加え、またはその代替として、文字でラベリングされたキー等の他のキーもまた、デバイスペアリングの間に照明されることができる。さらに、キーボードはまた、照明パターンを使用して、デバイス識別子以外の情報を伝達することができる。例えば、キーボードは、本明細書に説明される照明パターンを使用して、ペアリングパスワード、キーボードの製造業者の情報、キーボードのモデル、キーボードによってサポートされる通信またはペアリングプロトコル等を伝達することができる。
【０１８６】
ブロック１７３０では、ウェアラブルシステムは、コンテキスト情報にアクセスすることができる。図１２−１３Ｃを参照して説明されるように、コンテキスト情報は、単独で、または組み合わせて、キーボード、ユーザ、頭部搭載型ディスプレイ、環境と関連付けられてもよい。
【０１８７】
ブロック１７３２では、ウェアラブルシステムは、ブランクキーおよび物理的キーボード上のブランクキーの位置を識別することができる。ウェアラブルシステムは、オブジェクト認識装置７０８を使用してそのような識別を行うことができる。例えば、ウェアラブルシステムは、キーが物理的ラベルを有していない場合、キーをブランクキーとして識別することができる。ウェアラブルシステムはまた、加えて、またはその代替として、キーの形状または位置を考慮することができる。例えば、ウェアラブルシステムは、キーがキーボードの縁の近傍に位置し、キーが長い長方形形状を有することを認識することができる。本キーは、ラベルをその上に有していない場合があるが、ウェアラブルシステムは、それにもかかわらず、本キーが、スペースバーキーとして指定されているため、ブランクキーではないことを決定し得る。
【０１８８】
ブロック１７３４では、ウェアラブルシステムは、コンテキスト情報に基づいて、ブランクキーに割り当てられるであろう仮想キーを決定することができる。例えば、図１３Ａ−１３Ｃを参照して説明されるように、ウェアラブルシステムは、ブランクキーの場所に基づいて、キーボードまたはキーボードの一部と関連付けられたレイアウトまたは機能等の仕様を決定することができる。
【０１８９】
ブロック１７３６では、ウェアラブルシステムは、機能とブランクキーの作動を関連付ける、命令を生成することができる。例えば、ブランクキーは、記号「＋」に割り当てられてもよい。その結果、ブランクキーが押下されると、記号「＋」は、頭部搭載型ディスプレイによって表示されてもよい。いくつかの実施形態では、複数の機能が、１つのブランクキーに割り当てられることができる。各機能は、ブランクキーを作動させる、手のジェスチャと関連付けられてもよい。例えば、１つのキーが、商標名記号
【化１】
2020521217.tif 000003
および著作権記号
【化２】
2020521217.tif 000004
の両方に割り当てられてもよい。キーが、タッチされると、商標名記号は、ウェアラブルシステムの中に入力されることができるが、キーが、押下されると、著作権記号が、入力されることができる。
【０１９０】
ブロック１７３８では、ウェアラブルシステムはまた、仮想キーの画像をブランクキー上にレンダリングすることができる。本サンプル実施例では、ウェアラブルシステムは、仮想キーラベル「＋」をブランクキー上に重畳することができる。キーが、複数の記号を割り当てられる場合、ウェアラブルシステムは、キーラベルの両方（例えば、商標名記号および著作権記号の両方）をキー上にレンダリングすることができる。加えて、または代替として、ウェアラブルシステムは、キーが作動される方法に基づいて、仮想キーラベルをレンダリングすることができる。例えば、キーがタッチされると、商標名記号が、示されることができるが、キーが押下されると、著作権記号が、示されることができる。ユーザが、キーをある方法で作動させると、ウェアラブルシステムは、焦点インジケータを提供することができ、これは、キーが作動される方法を示す。例えば、キーがタッチされると、ウェアラブルシステムは、商標名記号のサイズの増加を示すことができる。図１５Ｂを参照して説明される例示的視覚的焦点インジケータに加え、またはその代替として、焦点インジケータはまた、例えば、触覚的または聴覚的フィードバック等の他のタイプのフィードバックを含むことができる。例えば、キーボードまたはウェアラブルシステムは、キーが作動される方法に基づいて、音を再生することができる（例えば、キーがタッチされると、ある音を再生し、キーが押下されると、別の音を再生する）。キーボードはまた、キーが作動される方法に応じて、触覚的フィードバックを提供することができる。例えば、キーボードは、キーが押下されると、振動を提供してもよく、キーがタッチされると、振動を提供しない。いくつかの実施形態では、焦点インジケータ（視覚的、触覚的、または聴覚的）は、各キーと異なり得る。例えば、スペースバーの作動は、ある音と関連付けられてもよい一方、数字キーの作動は、別の音と関連付けられてもよい。
【０１９１】
随意のブロック１７４０では、ウェアラブルシステムは、ブランクキーの作動のインジケーションを受信することができる。インジケーションは、キーボードから受信されてもよい（例えば、有線または無線通信チャネルを介して）。インジケーションはまた、画像の分析に基づいて検出されてもよい。例えば、ウェアラブルシステムは、オブジェクト認識装置７０８を使用して、ユーザの手の位置を識別し、手位置とキーの位置を比較し、ユーザの手の位置がキーと一致するかどうかを決定することができる。作動を検出するために使用される画像は、複数のソースから生じてもよい。例えば、ウェアラブルシステムは、外向きに向いた結像システム内のカメラから入手された画像とともに、キーボードのカメラによって入手された画像を使用して、キーの作動を検出することができる。
【０１９２】
随意のブロック１７４２では、ウェアラブルシステムは、ブランクキーに割り当てられる機能に基づいて、動作（例えば、ユーザインターフェース動作）を実施することができる。例えば、ブランクキーに割り当てられる機能が、数学演算（例えば、加算）と関連付けられる場合、ウェアラブルシステムは、適宜、ブランクキーが作動されると、数学演算を実施することができる。
【０１９３】
本図における実施例は、ブランクキーを構成することを参照して説明されるが、ウェアラブルシステムはまた、機能または仮想ラベルを事前に定義された機能または物理的ラベルをすでに有するキーに割り当てることができる。例えば、ウェアラブルシステムは、スペースバーキーが押下されると、スペースバーキーが空のスペースを入力するようにすでに構成されているにもかかわらず、スライドバー機能をスペースバーキーに割り当てることができる。スライドバー機能の結果、ユーザが、スペースバーキーをスワイプすると、ウェアラブルシステムは、適宜、アプリケーションを開くまたは閉じることができる。別の実施例として、ウェアラブルシステムは、絵文字と関連付けられた機能およびアイコンのセットをキーキーボード上の文字のうちのいくつかに割り当てることができる。
【０１９４】
さらにいくつかの状況では、１つのキーのために機能および画像を割り当てるのではなく、キーボードのセクションまたは仮想キーボードが、物理的キーボードに割り当てられてもよい。例えば、ウェアラブルシステムは、ユーザが物理的キーボードを見ると、物理的キーボードの上部にオーバーレイされるように、仮想キーボードを自動的に移動させることができる。
【０１９５】
仮想キーボードとのＵＩ相互作用の例示的プロセス
図１７Ｂは、仮想キーボードをレンダリングし、それと相互作用する、例示的プロセスを図示する。プロセス１７５０は、本明細書に説明されるウェアラブルシステムによって実施されることができる。
【０１９６】
ブロック１７５２では、ウェアラブルシステムは、ユーザの環境と関連付けられたコンテキスト情報にアクセスすることができる。例えば、ウェアラブルシステムは、例えば、ユーザの環境内の物理的または仮想オブジェクトのタイプおよび機能等のユーザの環境内の物理的または仮想オブジェクトと関連付けられた情報にアクセスすることができる。いくつかの実施形態では、ウェアラブルシステムは、ユーザの頭部姿勢または眼視線に基づいて、ユーザが現在相互作用している、または相互作用することを意図する標的オブジェクトを識別することができる。
【０１９７】
ブロック１７５４では、ウェアラブルシステムは、ユーザの環境内の仮想キーボードを識別することができる。仮想キーボードは、ユーザの入力に基づいて識別されてもよい。例えば、ユーザは、仮想キーボードのニックネームを発話することができ、ウェアラブルシステムは、適宜、ニックネームに基づいて、仮想キーボードを識別することができる。別の実施例として、ウェアラブルシステムは、ユーザの眼視線方向または手のジェスチャ（例えば、仮想キーボードに向いている）に基づいて、仮想キーボードを識別することができる。仮想キーボードはまた、物理的キーボードに基づいて識別されることができる。例えば、仮想キーボードは、ユーザの環境内の物理的キーボードのエミュレーションであってもよい。さらに、仮想キーボードは、ユーザの環境内のオブジェクトに基づいて識別されてもよい。例えば、ウェアラブルシステムは、ユーザの環境内のオブジェクトの全部（または大部分）と相互作用するために好適な仮想キーボードにアクセスすることができる。ウェアラブルシステムが、標的オブジェクトを識別した場合、ウェアラブルシステムは、標的オブジェクトと関連付けられた、または標的オブジェクトとの相互作用のために好適な仮想キーボードを識別することができる。
【０１９８】
ブロック１７５６では、ウェアラブルシステムは、コンテキスト情報に基づいて、仮想キーボードの仕様を決定することができる。仕様は、仮想キーボード上のキーのレイアウトおよび機能を含んでもよい。例えば、ブロック１７５４において識別された仮想キーボードは、ブランク仮想キーボードテンプレートを含んでもよい。ブロック１７５６において決定された仕様は、ブランク仮想キーボードテンプレート内のキーのいくつか（または全部）に割り当てられるであろう機能または仮想キーラベルを規定することができる。加えて、本明細書に説明されるように、仮想キーボードのレイアウトはまた、変化してもよい。例えば、ブランク仮想キーボードテンプレート内のキーは、ユーザがあるオブジェクトと相互作用しているとき、数字を割り当てられてもよい。しかし、ユーザが別のオブジェクトと相互作用するとき、ウェアラブルシステムは、キーを文字に動的に再割当することができる。
【０１９９】
ブロック１７５８では、ウェアラブルシステムは、少なくとも部分的に、仕様１７５８に基づいて、仮想キーボードをユーザの環境内にレンダリングすることができる。例えば、ウェアラブルシステムは、仮想キーラベルを仮想キーボード上にレンダリングすることができる。ウェアラブルシステムはまた、仮想キーのサブセットをレンダリングすることができる。例えば、ブランク仮想キーボードテンプレートが、１つを上回る仮想オブジェクトと相互作用するために使用される場合、ウェアラブルシステムは、ある仮想オブジェクトと一般に併用される第１のセットの仮想キーをレンダリングする一方、別の仮想オブジェクトと一般に併用される第２のセットの仮想キーをレンダリングすることができる。
【０２００】
随意のブロック１７６０では、ウェアラブルシステムは、仮想キーボードの作動のインジケーションを受信することができる。仮想キーボードはまた、種々の作動方法をサポートすることができる。例えば、仮想キーボードは、タッチまたはスワイプするジェスチャをサポートすることができる。ウェアラブルシステムは、外向きに向いた結像システムによって入手された画像に基づいて、ユーザの手の位置を追跡し、ユーザの手の位置が１つ以上の仮想キーと交差するかどうかを決定することができる。仮想キーボードはまた、押下ジェスチャをサポートすることができる。例えば、ウェアラブルシステムは、仮想キーと関連付けられたユーザの空間内の体積を規定することができる。ユーザの指が、体積の中に貫通すると、ウェアラブルシステムは、ユーザが仮想キーを作動させたことを決定することができる。
【０２０１】
随意のブロック１７６２では、ウェアラブルシステムは、少なくとも部分的に、仮想キーボードの作動に基づいて、ユーザインターフェース動作を実施することができる。いくつかの例示的ユーザインターフェース動作は、作動されたキー（または仮想キーボード）のための焦点インジケータを提供するステップ、仮想オブジェクトを移動または選択するステップ、仮想または物理的オブジェクトと関連付けられた仮想メニューを開くステップ等を含んでもよい。仮想キーボードの作動はまた、ユーザインターフェース動作以外のコマンドを実施させることができる。例えば、仮想キーボードの作動は、ウェアラブルシステムに、テレビのチャンネルを変化させるための命令を生成させ、テレビに送信させてもよい。別の実施例として、仮想キーボードの作動は、ウェアラブルシステムに、ＭＲ場面からＶＲ場面に切り替えさせてもよい。
【０２０２】
実施例
いくつかの実施例では、システムは、仮想コンテンツをユーザの物理的環境内に提示するように構成される、ディスプレイシステムと、ユーザの物理的環境を結像するように構成される、外向きに向いた結像システムと、ディスプレイシステムおよび外向きに向いた結像システムと通信する、ハードウェアプロセッサであって、外向きに向いた結像システムによって入手された物理的環境の画像を分析し、画像の分析に基づいて、複数のキーを有する物理的キーボードを認識し、物理的キーボードと関連付けられたコンテキスト情報を決定し、少なくとも部分的に、コンテキスト情報に基づいて、物理的キーボードのための仕様を決定し、少なくとも部分的に、仕様に基づいて、物理的キーボードの少なくとも一部の機能を動的に構成し、少なくとも部分的に、仕様に基づいて、仮想キーラベルのレンダリング場所を決定し、ディスプレイシステムに、仮想キーラベルを決定されたレンダリング場所にレンダリングするように命令するようにプログラムされる、ハードウェアプロセッサとを備える。
【０２０３】
先行実施例のいずれかでは、仮想コンテンツは、拡張または複合現実コンテンツのうちの少なくとも１つを含んでもよい。
【０２０４】
先行実施例のいずれかでは、画像を分析するために、ハードウェアプロセッサは、オブジェクト認識装置を実行し、物理的キーボードの視覚的特性に基づいて、物理的キーボードを識別するようにプログラムされてもよい。
【０２０５】
先行実施例のいずれかでは、視覚的特性は、物理的キーボードの表面の形状または物理的キーボードのラベルのうちの少なくとも１つを含んでもよい。
【０２０６】
先行実施例のいずれかでは、外向きに向いた結像システムは、ＦＯＶを有する世界カメラを備えてもよく、ＦＯＶは、所与の時間において世界カメラによって観察される、物理的環境の一部を含んでもよく、物理的キーボードを認識するために、ハードウェアプロセッサは、物理的キーボードの少なくとも一部がＦＯＶ内にあることを検出するようにプログラムされてもよい。
【０２０７】
先行実施例のいずれかでは、仕様は、複数のキーのレイアウトまたは複数のキーの機能のうちの少なくとも１つを含んでもよい。
【０２０８】
先行実施例のいずれかでは、物理的キーボードのための仕様を決定するために、ハードウェアプロセッサは、画像の分析に基づいて、物理的キーボードのモデルを決定し、モデルの仕様を記憶するデータベースにアクセスし、仕様を読み出すようにプログラムされてもよい。
【０２０９】
先行実施例のいずれかでは、複数のキーのうちの少なくとも１つのキーは、容量タッチセンサを有してもよい。
【０２１０】
先行実施例のいずれかでは、コンテキスト情報は、物理的キーボードの位置または物理的キーボードの配向のうちの少なくとも１つを含んでもよい。
【０２１１】
先行実施例のいずれかでは、物理的キーボードの一部は、ブランクキーを含んでもよく、物理的キーボードの少なくとも一部の機能を動的に構成するために、ハードウェアプロセッサは、コマンド機能をブランクキーに割り当てるようにプログラムされてもよく、コマンド機能は、システムに、ユーザインターフェース動作を実施させる。
【０２１２】
先行実施例のいずれかでは、仮想キーラベルのレンダリング場所は、物理的キーボードの一部内のブランクキーの場所と一致してもよく、ハードウェアプロセッサは、ディスプレイシステムに、ピクセルスティックを使用して、仮想キーラベルをブランクキー上に重畳させるように命令するように構成されてもよい。
【０２１３】
いくつかの実施例では、方法は、ユーザの３次元（３Ｄ）物理的環境内の複数のキーを有するキーボードの一部を識別するステップと、少なくとも部分的に、コンテキスト情報に基づいて、キーボードの一部のための仕様を決定するステップと、少なくとも部分的に、仕様に基づいて、キーボードの一部の機能を動的に構成するステップと、少なくとも部分的に、仕様に基づいて、キーボードの一部における仮想キーラベルのレンダリング場所を決定するステップと、ディスプレイシステムに、仮想キーラベルを決定されたレンダリング場所にレンダリングするように命令するステップとを含む。
【０２１４】
先行実施例のいずれかでは、キーボードは、物理的キーボードを含んでもよい。
【０２１５】
先行実施例のいずれかでは、物理的キーボードは、複数の着脱可能セクションから組み立てられてもよい。
【０２１６】
先行実施例のいずれかでは、物理的キーボードは、ユーザの３Ｄ物理的環境内の仮想画面と関連付けられてもよく、仮想画面は、物理的キーボードの作動に応答して、ユーザインターフェース機能を実施するように構成されてもよい。
【０２１７】
先行実施例のいずれかでは、キーボードは、仮想キーボードを含んでもよく、仮想キーボードは、ユーザの環境の表面上にレンダリングされる。
【０２１８】
先行実施例のいずれかでは、表面は、物理的キーボードの表面を含んでもよい。
【０２１９】
先行実施例のいずれかでは、キーボードを識別するステップは、キーボードと通信し、キーボードの識別情報を取得するステップと、コンテキスト情報に基づいて、複数のキーボードの中からキーボードを選択するステップと、キーボードの画像に基づいて、キーボードを認識するステップとのうちの少なくとも１つを含んでもよい。
【０２２０】
先行実施例のいずれかでは、画像は、頭部搭載型デバイスの外向きに向いた結像システム、室内カメラ、または物理的キーボードに結合されたカメラのうちの少なくとも１つによって入手されてもよい。
【０２２１】
先行実施例のいずれかでは、キーボードの一部は、ブランクキーを含んでもよい。
【０２２２】
先行実施例のいずれかでは、コンテキスト情報は、キーボード、ユーザ、または３Ｄ物理的環境のうちの少なくとも１つと関連付けられてもよい。
【０２２３】
いくつかの実施例では、コンピュータ可読媒体は、ハードウェアプロセッサによって読み取られると、ハードウェアプロセッサに、ユーザの３次元（３Ｄ）物理的環境内の複数のキーを有するキーボードの一部を識別するステップと、少なくとも部分的に、コンテキスト情報に基づいて、キーボードの一部のための仕様を決定するステップと、少なくとも部分的に、仕様に基づいて、キーボードの一部の機能を動的に構成するステップと、少なくとも部分的に、仕様に基づいて、キーボードの一部における仮想キーラベルのレンダリング場所を決定するステップと、ディスプレイシステムに、仮想キーラベルを決定されたレンダリング場所にレンダリングするように命令するステップとを含む、方法を実施させる、命令を備えてもよい。
【０２２４】
先行実施例のいずれかでは、キーボードは、物理的キーボードを含んでもよい。
【０２２５】
先行実施例のいずれかでは、物理的キーボードは、複数の着脱可能セクションから組み立てられてもよい。
【０２２６】
先行実施例のいずれかでは、物理的キーボードは、ユーザの３Ｄ物理的環境内の仮想画面と関連付けられてもよく、仮想画面は、物理的キーボードの作動に応答して、ユーザインターフェース機能を実施するように構成される。
【０２２７】
先行実施例のいずれかでは、キーボードは、仮想キーボードを含んでもよく、仮想キーボードは、ユーザの環境の表面上にレンダリングされる。
【０２２８】
先行実施例のいずれかでは、表面は、物理的キーボードの表面を含んでもよい。
【０２２９】
先行実施例のいずれかでは、キーボードを識別するステップは、キーボードと通信し、キーボードの識別情報を取得するステップと、コンテキスト情報に基づいて、複数のキーボードの中からキーボードを選択するステップと、キーボードの画像に基づいて、キーボードを認識するステップとのうちの少なくとも１つを含んでもよい。
【０２３０】
先行実施例のいずれかでは、画像は、頭部搭載型デバイスの外向きに向いた結像システム、室内カメラ、または物理的キーボードに結合されたカメラのうちの少なくとも１つによって入手されてもよい。
【０２３１】
先行実施例のいずれかでは、キーボードの一部は、ブランクキーを含んでもよい。
【０２３２】
先行実施例のいずれかでは、コンテキスト情報は、キーボード、ユーザ、または３Ｄ物理的環境のうちの少なくとも１つと関連付けられてもよい。
【０２３３】
いくつかの実施例では、システムは、仮想コンテンツをユーザの物理的環境内に提示するように構成される、ウェアラブルデバイスのディスプレイシステムと、ユーザの姿勢と関連付けられたデータを入手するように構成される、姿勢センサと、ディスプレイシステムおよび姿勢センサと通信する、ハードウェアプロセッサであって、姿勢に基づいて、ユーザの環境内のオブジェクトと相互作用するためのインジケーションを受信し、オブジェクトとの相互作用のためのキーボードを識別し、キーボードと関連付けられた仮想コンテンツを決定し、ユーザの環境内の仮想コンテンツのレンダリング場所を決定し、キーボードの作動を検出し、キーボードの実行に基づいて、コマンドの実行を命令するようにプログラムされる、ハードウェアプロセッサとを備える。
【０２３４】
先行実施例のいずれかでは、姿勢センサは、ウェアラブルデバイスの世界カメラ、ウェアラブルデバイスの外部のカメラ、または眼カメラのうちの少なくとも１つを含んでもよい。
【０２３５】
先行実施例のいずれかでは、姿勢は、頭部姿勢、眼視線、または手のジェスチャのうちの少なくとも１つを含んでもよい。
【０２３６】
先行実施例のいずれかでは、ユーザの環境内のオブジェクトと相互作用するためのインジケーションは、頭部姿勢または眼視線のうちの少なくとも１つを含んでもよく、オブジェクトは、レイキャスティングを使用して識別されてもよい。
【０２３７】
先行実施例のいずれかでは、キーボードは、少なくとも、ユーザの姿勢またはオブジェクトと関連付けられた特性のうちの１つに基づいて、識別されてもよい。
【０２３８】
先行実施例のいずれかでは、キーボードは、物理的キーボードを含んでもよく、仮想コンテンツは、物理的キーボードの複数のキーのための仮想キーラベルを含んでもよい。
【０２３９】
先行実施例のいずれかでは、キーボードは、仮想キーボードを含んでもよく、仮想コンテンツは、キーボードの仮想キーを含んでもよい。
【０２４０】
先行実施例のいずれかでは、オブジェクトは、物理的オブジェクトを含んでもよく、キーボードは、仮想キーボードを含んでもよく、キーボードは、物理的オブジェクト上にレンダリングされてもよい。
【０２４１】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、姿勢の変化を検出し、姿勢の変化に基づいて、仮想コンテンツのレンダリング場所を更新するようにプログラムされてもよい。
【０２４２】
先行実施例のいずれかでは、キーボードは、物理的キーボードであってもよく、仮想コンテンツのレンダリング場所を更新するために、ハードウェアプロセッサは、第１のセットのキー上にレンダリングされたキーラベルを第２のセットのキーに移動させるようにプログラムされてもよい。
【０２４３】
先行実施例のいずれかでは、キーボードの作動を検出するために、ハードウェアプロセッサは、キー押下と関連付けられた音、ユーザの手のジェスチャと関連付けられた画像、またはキーボードから受信された無線信号のうちの少なくとも１つと関連付けられたデータを分析するようにプログラムされてもよい。
【０２４４】
先行実施例のいずれかでは、各キーは、音を割り当てられてもよく、キーの作動は、音を生成させる。
【０２４５】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、別のオブジェクトとの別のユーザ相互作用の別のインジケーションを受信し、他のオブジェクトと関連付けられたコンテキスト情報に基づいて、キーボードを動的に再構成するようにプログラムされてもよい。
【０２４６】
いくつかの実施例では、方法は、ウェアラブルデバイスのディスプレイシステムを使用して、仮想コンテンツをユーザの物理的環境内に提示するステップと、姿勢センサを使用して、ユーザの姿勢と関連付けられたデータを入手するステップと、ハードウェアプロセッサを使用して、姿勢に基づいて、ユーザの環境内のオブジェクトと相互作用するためのインジケーションを受信するステップと、ハードウェアプロセッサを使用して、オブジェクトとの相互作用のためのキーボードを識別するステップと、ハードウェアプロセッサを使用して、キーボードと関連付けられた仮想コンテンツを決定するステップと、ハードウェアプロセッサを使用して、ユーザの環境内の仮想コンテンツのレンダリング場所を決定するステップと、ハードウェアプロセッサを使用して、キーボードの作動を検出するステップと、ハードウェアプロセッサを使用して、キーボードの実行に基づいて、コマンドの実行を命令するステップとを含む。
【０２４７】
先行実施例のいずれかでは、姿勢センサは、ウェアラブルデバイスの世界カメラ、ウェアラブルデバイスの外部のカメラ、または眼カメラのうちの少なくとも１つを含んでもよい。
【０２４８】
先行実施例のいずれかでは、姿勢は、頭部姿勢、眼視線、または手のジェスチャのうちの少なくとも１つを含んでもよい。
【０２４９】
先行実施例のいずれかでは、ユーザの環境内のオブジェクトと相互作用するためのインジケーションは、頭部姿勢または眼視線のうちの少なくとも１つを含んでもよく、オブジェクトは、レイキャスティングを使用して識別されてもよい。
【０２５０】
先行実施例のいずれかでは、キーボードは、ユーザの姿勢またはオブジェクトと関連付けられた特性のうちの少なくとも１つに基づいて、識別されてもよい。
【０２５１】
先行実施例のいずれかでは、キーボードは、物理的キーボードを含んでもよく、仮想コンテンツは、物理的キーボードの複数のキーのための仮想キーラベルを含む。
【０２５２】
先行実施例のいずれかでは、キーボードは、仮想キーボードであってもよく、仮想コンテンツは、キーボードの仮想キーを含んでもよい。
【０２５３】
先行実施例のいずれかでは、オブジェクトは、物理的オブジェクトを含んでもよく、キーボードは、仮想キーボードを含んでもよく、キーボードは、物理的オブジェクト上にレンダリングされてもよい。
【０２５４】
先行実施例のいずれかでは、本方法はさらに、ハードウェアプロセッサを使用して、姿勢の変化を検出するステップと、ハードウェアプロセッサを使用して、姿勢の変化に基づいて、仮想コンテンツのレンダリング場所を更新するステップとを含んでもよい。
【０２５５】
先行実施例のいずれかでは、キーボードは、物理的キーボードであってもよく、仮想コンテンツのレンダリング場所を更新するステップは、ハードウェアプロセッサを使用して、第１のセットのキー上にレンダリングされたキーラベルを第２のセットのキーに移動させるステップを含んでもよい。
【０２５６】
先行実施例のいずれかでは、キーボードの作動を検出するステップは、キー押下と関連付けられた音、ユーザの手のジェスチャと関連付けられた画像、またはキーボードから受信された無線信号のうちの少なくとも１つと関連付けられたデータを分析するステップを含んでもよい。
【０２５７】
先行実施例のいずれかでは、各キーは、音を割り当てられてもよく、キーの作動は、音を生成させてもよい。
【０２５８】
先行実施例のいずれかでは、本方法はさらに、ハードウェアプロセッサを使用して、別のオブジェクトとの別のユーザ相互作用の別のインジケーションを受信するステップ、ハードウェアプロセッサを使用して、他のオブジェクトと関連付けられたコンテキスト情報に基づいて、キーボードを動的に再構成するステップとを含んでもよい。
【０２５９】
いくつかの実施例では、非一過性コンピュータ可読媒体は、ハードウェアプロセッサによって読み取られると、ハードウェアプロセッサに、ウェアラブルデバイスのディスプレイシステムを使用して、仮想コンテンツをユーザの物理的環境内に提示するステップと、姿勢センサを使用して、ユーザの姿勢と関連付けられたデータを入手するステップと、姿勢に基づいて、ユーザの環境内のオブジェクトと相互作用するためのインジケーションを受信するステップと、オブジェクトとの相互作用のためのキーボードを識別するステップと、キーボードと関連付けられた仮想コンテンツを決定するステップと、ユーザの環境内の仮想コンテンツのレンダリング場所を決定するステップと、キーボードの作動を検出するステップと、キーボードの実行に基づいて、コマンドの実行を命令するステップとを含む、方法を実施させる、命令を備えてもよい。
【０２６０】
先行実施例のいずれかでは、姿勢センサは、ウェアラブルデバイスの世界カメラ、ウェアラブルデバイスの外部のカメラ、または眼カメラのうちの少なくとも１つを含んでもよい。
【０２６１】
先行実施例のいずれかでは、姿勢は、頭部姿勢、眼視線、または手のジェスチャのうちの少なくとも１つを含んでもよい。
【０２６２】
先行実施例のいずれかでは、ユーザの環境内のオブジェクトと相互作用するためのインジケーションは、頭部姿勢または眼視線のうちの少なくとも１つを含んでもよく、オブジェクトは、レイキャスティングを使用して識別されてもよい。
【０２６３】
先行実施例のいずれかでは、キーボードは、少なくとも、ユーザの姿勢またはオブジェクトと関連付けられた特性のうちの１つに基づいて、識別されてもよい。
【０２６４】
先行実施例のいずれかでは、キーボードは、物理的キーボードを含んでもよく、仮想コンテンツは、物理的キーボードの複数のキーのための仮想キーラベルを含んでもよい。
【０２６５】
先行実施例のいずれかでは、キーボードは、仮想キーボードであってもよく、および仮想コンテンツは、キーボードの仮想キーを含んでもよい。
【０２６６】
先行実施例のいずれかでは、オブジェクトは、物理的オブジェクトを含んでもよく、キーボードは、仮想キーボードを含んでもよく、キーボードは、物理的オブジェクト上にレンダリングされてもよい。
【０２６７】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、姿勢の変化を検出するステップと、姿勢の変化に基づいて、仮想コンテンツのレンダリング場所を更新するステップとを含んでもよい。
【０２６８】
先行実施例のいずれかでは、キーボードは、物理的キーボードであってもよく、仮想コンテンツのレンダリング場所を更新するステップは、第１のセットのキー上にレンダリングされたキーラベルを第２のセットのキーに移動させるステップを含んでもよい。
【０２６９】
先行実施例のいずれかでは、キーボードの作動を検出するステップは、キー押下と関連付けられた音、ユーザの手のジェスチャと関連付けられた画像、またはキーボードから受信された無線信号のうちの少なくとも１つと関連付けられたデータを分析するステップを含んでもよい。
【０２７０】
先行実施例のいずれかでは、各キーは、音を割り当てられてもよく、キーの作動は、音を生成させる。
【０２７１】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、別のオブジェクトとの別のユーザ相互作用の別のインジケーションを受信するステップと、他のオブジェクトと関連付けられたコンテキスト情報に基づいて、キーボードを動的に再構成するステップとを含んでもよい。
【０２７２】
物理的キーボードとのユーザの相互作用に対応する仮想キーボード機能性の実施例
図１８−２０は、本明細書に説明されるＶＲ／ＡＲ／ＭＲシステムのいくつかの実施形態が物理的キーボードとのユーザの相互作用に対応する仮想キーボード機能性を実装し得る方法を図示する。明細書のいずれかの場所に説明されるように、１つ以上の物理的キーボードまたは他の入力デバイスが、ＶＲ／ＡＲ／ＭＲシステムと相互作用するためのユーザ入力を受信するために提供されてもよい。使用の間、物理的キーボードは、ユーザの視野外に位置し、非効率的キーボード使用、正しくないキーストロークをもたらし、および／またはユーザが、繰り返し、着目エリアから眼を逸らし、キーボードおよび／またはキーボードに対するユーザの手および指の場所を見ることを要求し得る。ある場合には、ＶＲ／ＡＲ／ＭＲシステムによって表示されている仮想コンテンツは、部分的または完全に、キーボードのユーザのビューをブロックし、ユーザが物理的キーボード上のその手および指の場所を正確に決定することを妨げ得る。したがって、仮想キーボードまたは物理的キーボードを表す他の仮想画像が、ＶＲ／ＡＲ／ＭＲシステムのディスプレイによって、ユーザに表示されてもよい。加えて、ＶＲ／ＡＲ／ＭＲシステムのディスプレイは、物理的キーボードに対して位置付けられるユーザの手の表現および／または物理的キーボード上でユーザによって行われるキーストロークを示してもよい。これは、ユーザは、ＶＲ／ＡＲ／ＭＲシステムの視野内において、物理的キーボードを見る必要なく、物理的キーボードとのその相互作用を知覚することができるように、リアルタイムで行われてもよい。
【０２７３】
図１８は、物理的キーボード１８２０とのユーザの相互作用に基づいて仮想キーボード機能性をＶＲ／ＡＲ／ＭＲシステムのディスプレイ上に実装するためのシステム１８００を図示する。いくつかの実施形態では、物理的キーボードは、１つ以上の内蔵センサを含み、これは、物理的キーボードに対するユーザの手および／または指の場所に関する情報を検出することができる。これらの内蔵手場所センサは、例えば、容量タッチセンサ、光検出器、電気または機械的スイッチ、カメラ、マイクロホン等を含むことができる。他の実施形態では、手場所検出センサは、物理的キーボード１８２０の外部にあることができ、ＶＲ／ＡＲ／ＭＲシステムまたは別個のデバイスと統合されてもよい。例えば、外部手場所検出センサ１８３０は、１つ以上のマイクロホンおよび／またはカメラを含むことができる。
【０２７４】
外部手場所検出センサとしてのマイクロホンの実施例では、マイクロホンは、押下されているキーの音に基づいて、キー押下を検出するように構成されてもよい。いくつかの実施形態では、各キーは、押下されると、一意の音プロファイルを有し、キーをキーボード１８２０の他のキーから区別するように構成されてもよい。したがって、マイクロホンは、キー押下に対応する音を検出してもよく、システム１８００は、マイクロホンから受信された出力を分析することに基づいて、押下されたキーを決定してもよい。
【０２７５】
手および／または指場所はさらに、決定されたキー押下の場所に基づいて、計算されてもよい。外部手場所検出センサとしてのカメラの実施例では、１つ以上のカメラが、例えば、キーボードの上方から、キーボードの画像を捕捉するように整合および構成されてもよい。いくつかの実施形態では、１つ以上の基準マーカが、キーボード上に提供され、捕捉された画像に基づいて、手場所の決定を促進してもよい。例えば、複数の基準が、キーボードのキーの表面上に印刷される、または別様にそこに適用されてもよい。キーボードの画像が、分析されると、画像内で可視の基準は、ユーザの手によって被覆されていないキーボード上の場所を示すことができ、既知であるが、画像内で不可視である基準は、ユーザの手によって被覆されるキーボード上の場所を示すことができる。手場所検出センサは、いくつかの実施形態では、ＶＲ／ＡＲ／ＭＲシステムと相互作用するための入力信号を提供するためにユーザによって使用される、物理的キーボードのキーと明確に異なることができる。物理的キーボード１８２０および手場所センサ１８３０は、ＶＲ／ＡＲ／ＭＲシステムと通信可能に結合されることができる。
【０２７６】
ディスプレイ１８１０は、例えば、本明細書に説明されるディスプレイデバイスのいずれかであることができる。いくつかの実施形態では、図１８に示されるディスプレイ１８００は、図２に示されるディスプレイ２２０であることができ、物理的キーボード１８２０および手場所センサ１８３０は、ディスプレイ２２０、ローカル処理およびデータモジュール２６０、および／または遠隔処理モジュール２７０と通信することができる。概して、ディスプレイ１８１０は、光をユーザの眼の中に投影し、画像コンテンツをユーザに表示するように構成される。本明細書に議論されるように、いくつかの実施形態では、ディスプレイ１８１０は、例えば、頭部搭載型ディスプレイ等のウェアラブルデバイスである。画像コンテンツをユーザに表示することに加え、ディスプレイ１８１０はさらに、投影された画像コンテンツが、その周囲物理的環境のユーザのビュー上に重畳される拡張現実または複合現実画像コンテンツとしてユーザに提示されるように、周囲物理的環境からの光がユーザの眼に通過することを可能にするように構成されることができる。他の実施形態では、ディスプレイ１８１０は、仮想現実ディスプレイであることができ、これは、ユーザに、周囲物理的環境のビューを提供しない。ディスプレイ１８１０は、データを、物理的キーボード１８２０、外部センサ１８３０、および／または任意の他のデータソース、例えば、インターネット、１つ以上の遠隔処理および／またはメモリモジュール、または同等物から受信するように構成される、１つ以上のプロセッサおよび／またはメモリユニットを含む、またはそれに通信可能に結合されることができる。
【０２７７】
物理的キーボード１８２０は、ユーザからの入力を検出し、ユーザ入力を示す信号を生成するように構成される、複数のキー１８２２を含む。キー１８２２は、例えば、テキスト、記号、コマンド等をＶＲ／ＡＲ／ＭＲシステムに入力するために使用されることができる。物理的キーボード１８２０は、キー１８２２のうちの１つ以上のものが押下されるときにユーザによって行われる、キーストロークを検出することができる。物理的キーボード１８２０は、内部キーストローク検出機構を使用して、キーストロークを検出してもよい。これらは、例えば、機械的または電気的スイッチ、容量センサ等を含んでもよい。加えて、キー１８２２の一部または全部は、キー１８２２が押下されているかどうかから独立して、キー１８２２と接触するユーザの指を検出するように構成される、タッチセンサ１８２４を含んでもよい。例えば、タッチセンサ１８２４は、タッチを検出することが可能な容量タッチセンサまたは任意の他のセンサであることができる。物理的キーボードが、信号をキーストローク検出機構から受信すると、タッチセンサ１８２４、および／または手場所センサは、信号、データ、および／またはパラメータをＶＲ／ＡＲ／ＭＲシステムに提供することができ、これは、例えば、物理的キーボードに対して位置付けられるユーザの手または指、ユーザのキーストローク等を示す。
【０２７８】
内蔵または外部の手場所センサ１８３０は、物理的キーボードに対するユーザの手または指の場所、または物理的キーボード１８２０上またはその近傍のユーザの手および／または指の外観、音、または他の側面を示す、情報を検出する。手場所センサ１８３０は、ディスプレイ１８１０と通信可能に結合されることができる。例えば、手場所センサ１８３０は、センサにおいて検出されたデータ（例えば、画像、音、位置信号等）、および／またはデータに基づいて決定されたパラメータ（例えば、手および／または指場所等）をディスプレイデバイス１８１０に送信するように構成されることができる。
【０２７９】
図１９は、ディスプレイ１８１０が、物理的キーボード１８２０に対応する仮想画像コンテンツ１８４０、物理的キーボードに対するユーザの手および／または指場所、および／またはユーザによって行われるキーストロークを示し得る方法の実施例である。図１９に例示的に示される実施形態では、画像コンテンツ１８４０は、物理的キーボード１８２０に対応する仮想キーボード１８４２と、ユーザの手１８２８に対応する仮想手１８４６とを含む。仮想手１８４６の指１８４８は、ユーザの手１８２８の指１８２９によってタッチされている物理的キーボード１８２０のキー１８２２に対応する仮想キー１８４４をタッチしているように示される。本画像は、リアルタイムで更新され、物理的キーボード上でユーザによって行われるキーストロークを示すことができる。
【０２８０】
図１９の例示的実施形態に示される画像コンテンツ１８４０は、例えば、物理的キーボード１８２０およびユーザの手１８２８および指１８２９の真の外観の３次元表現として表示されてもよい。しかしながら、種々の実施形態では、物理的キーボード１８２０およびユーザの手１８２８および／または指１８２９を示す他の視覚的コンテンツも、使用されることができる。例えば、いくつかの実施形態では、仮想キーボード１８４２および／または仮想手１８４６は、物理的キーボード１８２０、手１８２８、および／または指１８２９の実際の外観の表現ではなく、キーボードおよび／または手の汎用画像として描写されることができる。別の実施例では、仮想キーボード１８４２および／または仮想手１８４６は、物理的キーボード１８２０、手１８２８、および／または指１８２９の２次元表現に簡略化されることができる。一実施例では、ユーザの指１８２９の場所は、単に、ユーザの指１８２９によってタッチされている物理的キー１８２２に対応する、仮想キーボード１８４２の仮想キー１８４４上に重畳されるドットとして表されることができるかまたは他の記号として表されることができる。
【０２８１】
いくつかの実施形態では、記号（例えば、文字、数、句読点、および／または他の文字）は、仮想キーボード１８４０の仮想キー１８４４上に表示される。例えば、図１９に示されるように、仮想キー１８４４は、標準的ＱＷＥＲＴＹキーボードと一致する記号を表示する。仮想キー１８４４上に表示される記号は、物理的キーボード１８２０のキー上に表示される記号と一致する、または異なることができる。例えば、物理的キーボードは、ＱＷＥＲＴＹキーボードレイアウトに従って文字および記号でマークされるキー１８２２を有してもよい一方、仮想キー１８４４は、Ｄｖｏｒａｋ簡略化キーボード、アルファベット順、絵文字キーボード、標準的外国語キーボードレイアウト、または任意の他の所望のキーボードレイアウトと一致する配列で文字および記号を表示してもよい。さらなる実施形態では、物理的キーボード１８２０は、仮想キー１８４４のみがラベリングされるように、印刷記号を伴わずに、ブランクキー１８２２を有してもよい。
【０２８２】
図２０を参照すると、仮想キーボードコンテンツを生成および表示する例示的方法２０００が、説明されるであろう。方法２０００は、ブロック２０１０から開始し、キーボード情報が、ＶＲ／ＡＲ／ＭＲシステムの処理コンポーネントによって受信される。キーボード情報は、物理的キーボードのタイプ、および／または、例えば、仮想キーボード上のキーの数、サイズ、形状、またはレイアウト等の表示されるべき仮想キーボードのタイプ、および／または仮想キーボードのキー上に表示されるべき記号に対応するデータを含むことができる。いくつかの実施形態では、キーボード情報を受信するステップは、例えば、物理的キーボード上のキーの数、形状、サイズ、またはレイアウト等の物理的キーボードと関連付けられた情報に基づいて、仮想キーボード情報ファイルを選択する、ダウンロードする、または別様に取得するステップを含むことができる。他の実施形態では、キーボード情報は、方法２０００を実施するために、ＶＲ／ＡＲ／ＭＲシステムの中に事前にプログラムされることができる。
【０２８３】
ブロック２０２０では、仮想キーボード画像が、ブロック２０１０において受信されたキーボード情報に基づいて生成される。上記に説明されるように、仮想キーボード画像は、物理的キーボードに対応する２次元または３次元画像を含むことができる。いくつかの実施形態では、キーボード画像は、例えば、形状、色、キーサイズ、およびレイアウト、または同等物が物理的キーボードに合致する、物理的キーボードの実質的に正確な再現である。他の実施形態では、仮想キーボード画像が、物理的キーボードの忠実な描写ではなく、物理的キーボードの概略表現であることができるように、仮想キーボード画像は、見掛けサイズ、形状、キーサイズ、キー形状、キーレイアウト、色、または他の品質が物理的キーボードと異なることができる。いくつかの実施形態では、仮想キーボード画像は、インターネット等の外部ソースから取得されてもよく、および／またはディスプレイシステム内の事前にプログラムされたキーボード画像であってもよい。
【０２８４】
ブロック２０３０では、情報が、手または指場所センサから受信される。ブロック２０３０は、ブロック２０１０および／または２０２０の前、後、または同時に、実施されることができる。手または指場所センサ情報は、内蔵キーボードセンサ（例えば、タッチセンサまたはキーストローク検出機構）および／または外部センサ（例えば、カメラ、マイクロホン、または同等物）によって取得される任意の情報を含むことができる。故に、受信されたセンサ情報は、物理的キーボードに対するユーザの手の場所、物理的キーボードに対するユーザの指のうちの１つ以上のものの場所、押下されているキーのセット、ユーザの手の指によってタッチされているキーのセット、またはディスプレイシステムのセンサから導出される他の情報を示すことができる。
【０２８５】
ブロック２０４０では、仮想手または指場所画像が、ブロック２０３０において受信されたセンサ情報に基づいて生成される。手または指場所画像は、図１９を参照して説明される描写等のユーザの手および／または指の１つ以上の描写を含んでもよい。一実施例では、受信されたセンサ情報は、タッチされている物理的キーボードのキーのサブセットのインジケーションを含み、生成された手または指場所画像は、ユーザの指によってタッチされている物理的キーボードのキーに対応する仮想キーボード画像内の各場所における円形または他の記号等のグラフィックを含む。別の実施例では、生成された手または指場所画像は、指先端が受信されたセンサ情報に示されるキー上に静置された状態の指を有する、手の３次元レンダリングを含む。センサ情報がさらに１つ以上の手場所を示す情報を含む、実施形態に関して、指に結び付けられる仮想手の場所が、センサ情報に基づいて決定されることができる。物理的キーボードのキーの上側表面上に位置する容量タッチセンサは、キー上の指の存在を検出することが可能であるが、キーをタッチしているユーザの手の指を決定することは不可能であり得ることを理解されたい。いくつかの実施形態では、ディスプレイシステムは、タッチセンサデータの組み合わせに基づいて、推定された手位置を決定するように構成されることができる。例えば、タッチセンサが、指が物理的キーボードのＡ、Ｓ、Ｄ、Ｆ、Ｊ、Ｋ、Ｌ、およびセミコロンキー上に静置していることを示す場合、ディスプレイシステムは、Ａ、Ｓ、Ｄ、およびＦキーが、左手の指の場所を表す一方、物理的キーボードのＪ、Ｋ、Ｌ、およびセミコロンキーが、右手の指の場所を表すことを決定してもよい。
【０２８６】
ブロック２０５０では、仮想キーボード画像および手または指場所画像が、ユーザに表示される。ディスプレイシステムは、ユーザに表示される合成画像が、仮想キーボードをタイプする仮想手を、物理的キーボード上のユーザの手の位置および運動と一致する位置に示すように現れるように、キーボード画像および手または指場所画像を組み合わせることができる。故に、ユーザに表示される合成画像は、ユーザが、物理的キーボードを見下ろす必要なく、物理的キーボード上のその指先端の場所を決定することを可能にすることができる。いくつかの実施形態では、方法２０００は、ブロック２０１０および２０３０の一方または両方に戻り、さらなるキーボードおよび／またはセンサ情報を受信し、仮想キーボードおよび／または手／指場所画像を再生成することができる。例えば、いくつかの実施形態では、キーボード画像は、一定のままである一方、方法２０００は、キーボードセンサおよび／またはディスプレイシステムの外部センサから受信されたリアルタイムまたは近リアルタイムで更新された情報に基づいて、手／指場所画像を継続的にまたは繰り返し再生成する。故に、ユーザ画像が、再生成および再表示されるにつれて、ユーザ画像は、物理的キーボード上のユーザの手の実際の移動と一致する、仮想キーボード上を移動およびタイプする動画化された手として、ユーザに現れ得る。
【０２８７】
実施例
いくつかの実施例では、システムは、仮想現実、拡張現実、または複合現実コンテンツをユーザに提示するように構成される、ディスプレイと、物理的キーボードであって、入力をユーザから受信するように構成される１つ以上のキーと、物理的キーボードに対するユーザの手または指のうちの１つ以上のものの場所を示す出力を生産するように構成される１つ以上のセンサとを含む、物理的キーボードと、１つ以上のハードウェアプロセッサと、システムによって実行されると、システムに、１つ以上のセンサの出力に基づいて、物理的キーボードに対する１つ以上の手または指の場所を決定するステップと、ディスプレイに、物理的キーボードの第１の画像表現およびユーザの手または指のうちの１つ以上のものの場所の第２の画像表現を提示させるステップであって、第１の画像表現に対する第２の画像表現の場所は、物理的キーボードに対する１つ以上の手または指の場所を示す、ステップとを含む、動作を実施させる命令を記憶する、１つ以上のコンピュータ記憶媒体とを備える。
【０２８８】
先行実施例のいずれかでは、１つ以上のセンサは、キー上に配置されるタッチセンサを含んでもよい。
【０２８９】
先行実施例のいずれかでは、タッチセンサは、容量タッチセンサを含んでもよい。
【０２９０】
先行実施例のいずれかでは、本システムはさらに、物理的キーボードの近傍のオブジェクトの場所を検出するように構成される、少なくとも１つのカメラを備えてもよい。
【０２９１】
先行実施例のいずれかでは、第１の画像表現は、１つ以上の仮想キーを備える、仮想キーボードを含んでもよく、各仮想キーは、物理的キーボードのキーに対応する。
【０２９２】
先行実施例のいずれかでは、複数の仮想キーはそれぞれ、物理的キーボードの対応するキーの機能を示す記号を含んでもよい。
【０２９３】
先行実施例のいずれかでは、複数の仮想キーのうちの少なくとも１つの記号は、物理的キーボードの対応するキー上に表示される記号と異なってもよい。
【０２９４】
先行実施例のいずれかでは、物理的キーボードのキーは、記号を含まなくてもよい。
【０２９５】
先行実施例のいずれかでは、第２の画像は、１つ以上の指の視覚的表現を含んでもよい。
【０２９６】
先行実施例のいずれかでは、システムはさらに、物理的キーボードに対するユーザの少なくとも１つの手の場所を決定するように構成されてもよく、第２の画像表現は、少なくとも１つの手の視覚的表現を含んでもよい。
【０２９７】
先行実施例のいずれかでは、第２の画像は、少なくとも部分的に、１つ以上のセンサの出力に基づいて、リアルタイムまたは近リアルタイムで更新されてもよい。
【０２９８】
いくつかの実施例では、システムは、仮想現実、拡張現実、または複合現実コンテンツをユーザに提示するように構成される、ディスプレイと、１つ以上のハードウェアプロセッサと、システムによって実行されると、システムに、システムと通信する物理的キーボードから、物理的キーボードに対するユーザの手または指のうちの１つ以上のものの場所を示す情報を受信するステップと、受信された情報に基づいて、物理的キーボードに対する１つ以上の手または指の場所を決定するステップと、ディスプレイに、物理的キーボードの第１の画像表現およびユーザの手または指のうちの１つ以上のものの場所の第２の画像表現を提示させるステップであって、第１の画像表現に対する第２の画像表現の場所は、物理的キーボードに対する１つ以上の手または指の場所を示す、ステップとを含む、動作を実施させる命令を記憶する、１つ以上のコンピュータ記憶媒体とを備える。
【０２９９】
いくつかの実施例では、方法は、物理的キーボードに対するユーザの手または指のうちの１つ以上のものの場所を示す入力を１つ以上のセンサから受信するステップと、１つ以上のセンサの入力に基づいて、物理的キーボードに対する１つ以上の手または指の場所を決定するステップと、ディスプレイに、物理的キーボードの第１の画像表現およびユーザの手または指のうちの１つ以上のものの場所の第２の画像表現を提示させるステップであって、第１の画像表現に対する第２の画像表現の場所は、物理的キーボードに対する１つ以上の手または指の場所を示す、ステップとを含む。
【０３００】
先行実施例のいずれかでは、１つ以上のセンサは、物理的キーボードのキー上に配置されるタッチセンサを含んでもよい。
【０３０１】
先行実施例のいずれかでは、タッチセンサは、容量タッチセンサを含んでもよい。
【０３０２】
先行実施例のいずれかでは、本方法はさらに、カメラからの画像データに基づいて、物理的キーボードの近傍のオブジェクトの場所を検出するステップを含んでもよい。
【０３０３】
先行実施例のいずれかでは、第１の画像表現は、１つ以上の仮想キーを伴う仮想キーボードを含んでもよく、各仮想キーは、物理的キーボードのキーに対応する。
【０３０４】
先行実施例のいずれかでは、複数の仮想キーはそれぞれ、物理的キーボードの対応するキーの機能を示す記号を含んでもよい。
【０３０５】
先行実施例のいずれかでは、複数の仮想キーのうちの少なくとも１つの記号は、物理的キーボードの対応するキー上に表示される記号と異なってもよい。
【０３０６】
先行実施例のいずれかでは、物理的キーボードのキーは、記号を含まなくてもよい。
【０３０７】
先行実施例のいずれかでは、第２の画像表現は、１つ以上の指の視覚的表現を含んでもよい。
【０３０８】
先行実施例のいずれかでは、本方法はさらに、物理的キーボードに対するユーザの少なくとも１つの手の場所を決定するステップを含んでもよく、第２の画像表現は、少なくとも１つの手の視覚的表現を含んでもよい。
【０３０９】
先行実施例のいずれかでは、第２の画像表現は、少なくとも部分的に、１つ以上のセンサの出力に基づいて、リアルタイムまたは近リアルタイムで更新されてもよい。
【０３１０】
いくつかの実施例では、非一過性コンピュータ可読媒体は、ハードウェアプロセッサによって読み取られると、ハードウェアプロセッサに、物理的キーボードに対するユーザの手または指のうちの１つ以上のものの場所を示す入力を１つ以上のセンサから受信するステップと、１つ以上のセンサの入力に基づいて、物理的キーボードに対する１つ以上の手または指の場所を決定するステップと、ディスプレイに、物理的キーボードの第１の画像表現およびユーザの手または指のうちの１つ以上のものの場所の第２の画像表現を提示させるステップであって、第１の画像表現に対する第２の画像表現の場所は、物理的キーボードに対する１つ以上の手または指の場所を示す、ステップとを含む、方法を実施させる、命令を備える。
【０３１１】
先行実施例のいずれかでは、１つ以上のセンサは、物理的キーボードのキー上に配置されるタッチセンサを含んでもよい。
【０３１２】
先行実施例のいずれかでは、タッチセンサは、容量タッチセンサを含んでもよい。
【０３１３】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、カメラからの画像データに基づいて、物理的キーボードの近傍のオブジェクトの場所を検出するステップを含んでもよい。
【０３１４】
先行実施例のいずれかでは、第１の画像表現は、１つ以上の仮想キーを伴う仮想キーボードを含んでもよく、各仮想キーは、物理的キーボードのキーに対応する。
【０３１５】
先行実施例のいずれかでは、複数の仮想キーはそれぞれ、物理的キーボードの対応するキーの機能を示す記号を含んでもよい。
【０３１６】
先行実施例のいずれかでは、複数の仮想キーのうちの少なくとも１つの記号は、物理的キーボードの対応するキー上に表示される記号と異なってもよい。
【０３１７】
先行実施例のいずれかでは、物理的キーボードのキーは、記号を含まなくてもよい。
【０３１８】
先行実施例のいずれかでは、第２の画像表現は、１つ以上の指の視覚的表現を含んでもよい。
【０３１９】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、物理的キーボードに対するユーザの少なくとも１つの手の場所を決定するステップを含んでもよく、第２の画像表現は、少なくとも１つの手の視覚的表現を含む。
【０３２０】
先行実施例のいずれかでは、第２の画像表現は、少なくとも部分的に、１つ以上のセンサの出力に基づいて、リアルタイムまたは近リアルタイムで更新されてもよい。
【０３２１】
触覚的フィードバックを伴うＶＲ／ＡＲ／ＭＲシステムの実施例
図２１は、ウェアラブルディスプレイシステム６０の例示的実施形態を図示する。ウェアラブルディスプレイシステム６０は、ディスプレイ７０と、ディスプレイ７０の機能をサポートするための種々の機械的および電子的モジュールおよびシステムとを含む。ウェアラブルディスプレイシステム６０は、本明細書のいずれかに説明されるものに類似する（例えば、図２に示されるような）ＶＲ／ＡＲ／ＭＲシステムであることができる。
【０３２２】
いくつかの実施形態では、入力デバイス１０は、ウェアラブルディスプレイシステム６０と相互作用し、かつ／またはそれを制御するために使用されることができる。例えば、入力デバイス１０は、ユーザが、ディスプレイ７０によって投影された画像と相互作用するため、および他の動作を実施するために、文字およびコマンドを入力するように動作させる、キーボードであってもよい。入力デバイス１０は、有線導線または無線コネクティビティ等による、通信リンク１６によって、ローカルデータ処理モジュール１４０に動作可能に結合されてもよい。ローカル処理およびデータモジュール１４０によって処理、キャッシュ、および記憶されるデータは、キーストローク等の入力デバイスから受信されたデータ、ディスプレイ７０上に投影された画像を移動させ、別様にそれと相互作用するための制御入力等を含んでもよい。
【０３２３】
いくつかの実施形態では、入力デバイス１０は、１つ以上の触覚的フィードバックコンポーネント１５を含んでもよい。触覚的フィードバックコンポーネント１５は、入力デバイス１０内で使用され、ウェアラブルディスプレイシステム６０と相互作用するとき、触覚的フィードバックをユーザのために提供してもよい。触覚的フィードバックコンポーネント１５は、例えば、触覚的フィードバックをユーザに提供し、入力がウェアラブルディスプレイシステム６０によって受信されたことを示してもよい。いくつかの実施形態では、触覚的フィードバックコンポーネント１５は、力、振動、または運動を生成してもよく、これは、入力デバイス１０に付与され、ユーザによって知覚可能である。例えば、入力デバイス１０は、キーボードであってもよく、触覚的フィードバックコンポーネント１５は、キーボードのキーまたは局所的領域とのユーザ相互作用に応答して、キーボードまたはその局所的領域を振動させてもよい。
【０３２４】
いくつかの実施形態では、複数の触覚的フィードバックコンポーネント１５が、入力デバイス１０に提供されてもよい。そのような実施形態では、触覚的フィードバックコンポーネント１５はそれぞれ、それぞれ、所与の触覚的フィードバックコンポーネント１５と関連付けられた、またはそれに結合される、入力デバイス１０の別個の領域またはエリア内に局所的振動または移動を生じさせてもよい。例えば、複数の触覚的フィードバックコンポーネント１５は、それぞれ、キーボード入力デバイス１０の異なるキーまたはキーのグループと関連付けられるように提供されてもよい。したがって、各触覚的フィードバックコンポーネント１５は、触覚的応答（例えば、振動または移動）を関連付けられたキーまたはキーのグループに付与してもよい。
【０３２５】
触覚的フィードバックコンポーネント１５は、異なるタイプのユーザ相互作用に応答して反応するように構成可能であってもよい。例えば、上記に説明されるように、触覚的フィードバックコンポーネント１５は、ユーザ入力ユーザ相互作用（例えば、キーストローク）に応答して、ユーザ入力デバイス１０全体またはその局所的部分を通して振動を生産してもよい。別の実施例では、触覚的フィードバックコンポーネント１５は、所与のキーまたは仮想入力要素との所与の近接度内でユーザの手が検出されると、局所的フィードバック応答を生産してもよい。したがって、ユーザの手が、キーに近接して検出される（例えば、適切な配向またはキーを検索している）場合、所与のキーと関連付けられた表面のエリアは、フィードバック応答を被り、ユーザがキーを識別することを補助し得る。いくつかの実施形態では、近接ユーザ相互作用と関連付けられたフィードバック応答は、あまり顕著ではないように、入力ユーザ相互作用より小さい大きさおよび／または周波数を有してもよい。いくつかの実施形態では、フィードバック応答は、ユーザが所望の入力要素のより近くに移動するにつれて増加されてもよい（例えば、フィードバック応答をより顕著にするように、大きさが、増加される、または周波数が、増加される）。他の構成も、可能性として考えられる。
【０３２６】
触覚的フィードバックコンポーネント１５は、入力デバイス１０上に搭載される、またはその中に封入され、入力デバイス１０に付与される振動を生成するように構成されてもよい。触覚的フィードバックコンポーネント１５は、リンク１２ａによって、入力デバイス１０に動作可能に結合されてもよい。いくつかの実装では、電気回路リンク１２ａは、フィードバック応答を生成するために、電気信号を触覚的フィードバックコンポーネント１５内に生産するための電気電圧源を含む、またはそれに接続される。代替として、または組み合わせて、触覚的フィードバックコンポーネント１５は、通信リンク１２ｂによって、例えば、有線導線または無線コネクティビティ等によって、ローカル処理およびデータモジュール１４０に動作可能に結合されてもよい。触覚的フィードバックデバイスは、それぞれ、通信リンク１２ａおよび１２ｂを介して、制御信号（本明細書では、「フィードバック信号」とも称される）を入力デバイス１０および／またはローカルデータおよび処理モジュール１４０の一方または両方から受信してもよい。制御信号は、時として、本明細書では、触覚的フィードバックパラメータとも称される、触覚的フィードバックの量（例えば、大きさ、振幅、および／または周波数）を示す、データを含んでもよい。
【０３２７】
いくつかの実施形態では、触覚的フィードバックコンポーネント１５は、下記に説明されるように、所望のフィードバック応答を示すフィードバックパラメータ（例えば、力または振動の強度および方向）を含む、制御またはフィードバック信号を受信してもよい。いくつかの実施形態では、応答は、振動の大きさおよび／または周波数に基づいてもよい。異なるタイプのユーザ相互作用は、異なる触覚的フィードバック応答と関連付けられてもよい。例えば、キーボード上のキーストロークは、連続キーストロークとしてユーザによって知覚され得る、所与の大きさおよび周波数の局所的振動に対応してもよい。別の実施例として、ユーザ相互作用は、キーの押下を含んでもよく、これは、触覚的応答を入力デバイス１０全体に対して生じさせ得る。いくつかの実施形態では、所望の触覚的フィードバック応答およびユーザ相互作用の関連付けは、非一過性データ記憶装置（例えば、ローカル処理およびデータモジュール１４０または遠隔データリポジトリ１６０）内に記憶されてもよい。例えば、関連付けは、検出されたユーザ相互作用に応答してローカルデータ処理モジュール１４０によってアクセス可能なルックアップ−テーブル（ＬＵＴ）として記憶されてもよい。
【０３２８】
いくつかの実装では、触覚的フィードバックデバイス１５は、ディスプレイ上のイベントに応答して振動してもよい。例えば、表示されるオブジェクトは、別の表示されるオブジェクトまたは実世界オブジェクトと相互作用してもよく、本相互作用は、入力デバイス１０に付与される触覚的フィードバックに対応してもよい。例えば、ウェアラブルディスプレイシステム６０は、仮想オブジェクトをビデオゲームの一部として投影するために使用されてもよく、ゲーム内のアクションは、触覚的フィードバックを入力デバイス内に生産するための制御信号に変換されてもよい。
【０３２９】
触覚的フィードバックコンポーネント１５は、例えば、偏心回転質量モータ、リニア共振アクチュエータ、ピエゾ電子機器、または他の変換器であってもよい。触覚的フィードバックコンポーネント１５は、電気回路に動作可能に結合され、電源に接続されてもよい。コントローラは、制御信号に基づいて、電源に、電流または電圧を触覚的フィードバックコンポーネント１５に印加させ、振動を生成させてもよい。例えば、偏心回転質量モータが使用される場合、電流が、モータに印加され、軸外質量を回転させ、振動を生じさせてもよい。電流の量およびデューティサイクルは、振動の大きさおよび周波数を制御し得る。したがって、制御信号は、所望のフィードバック応答のために触覚的フィードバックデバイスに印加されるべき電流または電圧を示し得る。具体的実施例の触覚的フィードバックコンポーネント１５が、説明されたが、他の構成も、可能性として考えられる。例えば、リニア共振アクチュエータの音声コイルは、そこに提供される電気信号に基づいて、同様に制御されてもよい。したがって、非一過性データ記憶装置内に記憶される触覚的フィードバック応答は、触覚的フィードバックコンポーネントに印加されるための電気信号を示し得る。
【０３３０】
図２２は、触覚的通信をウェアラブルディスプレイシステム（例えば、図２１のウェアラブルディスプレイシステム６０）のユーザに提供するための例証的プロセスフロー２２００である。プロセスフロー２２００は、上記に説明されるように、入力デバイスとのユーザ相互作用に応答して触覚的通信をユーザに提供する、実施例を対象とする。プロセスフロー２２００は、ハードウェア（例えば、図２１のウェアラブルディスプレイシステム）によって実施されてもよい。プロセスフロー２２００は、ローカルデータおよび処理モジュール１４０の論理デバイスに動作可能に結合される非一過性データ記憶装置内に記憶される命令によってプログラムされる、ローカルデータおよび処理モジュール１４０によって実装されることができる。別の実施形態では、ローカルデータおよび処理モジュール１４０は、遠隔データリポジトリ１６０に動作可能に接続されるローカル処理モジュール１４０内の論理デバイスによって実行される遠隔処理モジュール１５０を介して、プロセスフロー２２００を実装してもよい。
【０３３１】
ブロック２２１０では、プロセスフロー２２００は、触覚的フィードバックシステムがアクティブ化されることを決定してもよい。１つ以上の実施形態では、ユーザは、単に、触覚的フィードバックシステムをオンにしてもよい。または、他の実施形態では、触覚的フィードバックシステムは、デフォルトでアクティブであってもよく、ユーザは、触覚的フィードバックシステムをオフにすることを決定してもよい。ローカルデータおよび処理モジュール１４０は、触覚的フィードバックシステムがアクティブであることを示す信号を受信してもよい。
【０３３２】
ブロック２２２０では、プロセスフロー２２００は、入力デバイスを検出してもよい。上記に説明されるように、入力デバイスは、キーボード等の入力デバイス１０であってもよい。１つ以上の実施形態では、入力デバイスを検出するステップは、入力デバイスのためのウェアラブルディスプレイシステムの動作構成または環境を監視するステップを含んでもよい。これは、例えば、外向きに向いたカメラを使用して、ユーザの正面の環境の画像を捕捉し、その中の入力デバイスを識別するように行われることができる。または、別の実施例では、ウェアラブルディスプレイシステムは、接続が、例えば、有線または無線通信リンク１６を通して、入力デバイスと確立されたことを認識し得る。別の実施形態では、ユーザは、入力デバイスの存在を示すウェアラブルディスプレイシステムの機能を実行してもよい（例えば、キーボードが接続されたことを示す入力を選択する）。
【０３３３】
ブロック２２３０では、プロセスフロー２２００は、入力デバイスタイプまたは構成（例えば、実または仮想キーボード、ビデオゲームコントローラ等）を決定してもよい。入力デバイスタイプは、ブロック２２２０においてデバイスを検出するために使用されるものと類似手段（例えば、外向きに向いたカメラ、通信リンク、およびユーザ識別）を通して識別されてもよい。入力デバイスは、例えば、無線通信プロトコル（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＺｉｇＢｅｅ等）を通して、ウェアラブルディスプレイシステムとペアリングしてもよく、キーボードは、ハンドシェイクプロトコルを実行し、接続を確立し、識別データをウェアラブルディスプレイシステムと交換する。決定された入力デバイスタイプに基づいて、ウェアラブルディスプレイシステムは、予期されるユーザ相互作用のタイプおよび入力デバイス内の触覚的フィードバックコンポーネントの構成を決定することが可能であり得る。入力デバイスタイプはまた、異なる動作パラメータおよび構成を要求し得る、入力デバイス内の触覚的フィードバックコンポーネントの具体的タイプを識別してもよい。
【０３３４】
いくつかの実施形態では、入力デバイスタイプは、ユーザ相互作用のデータ構造およびフィードバック信号と関連付けられてもよい。例えば、第１の入力デバイス（例えば、キーボード）は、ユーザ相互作用およびフィードバック信号の第１のリストと関連付けられてもよい一方、第２の入力デバイス（例えば、ゲームコントローラ）は、第２のものと関連付けられてもよい。データ構造は、ウェアラブルディスプレイデバイスまたは入力デバイス内に記憶されてもよい。さらに、種々のタイプのキーボード（例えば、文字キーボード、絵文字キーボード、数字キーボード等）等の類似タイプの異なる入力デバイスが、異なるユーザ相互作用およびフィードバック信号と関連付けられてもよい。したがって、ウェアラブルディスプレイシステムは、入力デバイスが実行することが可能である所望の触覚的フィードバック信号を伝送するように、ユーザ相互作用およびフィードバック信号ペアリングの正しいデータ構造を読み出すことが可能であり得る。これは、ウェアラブルディスプレイシステムが、例えば、触覚的フィードバックコンポーネントを含有する入力デバイスの局所的領域およびこれらのコンポーネントが実行することが可能である電圧および電流を把握することを可能にし得る。
【０３３５】
プロセスフロー２２００のブロック２２４０では、ウェアラブルディスプレイシステムは、随意に、入力デバイスに近接するユーザを検出してもよい。例えば、ウェアラブルディスプレイシステムは、入力デバイス内のセンサ（例えば、近接度または慣性センサ）または外向きに向いたカメラを通して、ユーザが近接しており、したがって、入力デバイスを使用することを意図することを検出してもよい。これは、所望のユーザ相互作用の結果ではない入力デバイスとの相互作用を検出する結果を限定し得る。
【０３３６】
プロセスフロー２２００のブロック２２５０では、ウェアラブルディスプレイシステムまたは入力デバイスは、例えば、相互作用を示す信号を受信することによって、相互作用が生じたかどうかを決定することができる。例えば、相互作用は、近接ユーザ相互作用、入力ユーザ相互作用、または他の仮想または実オブジェクトと相互作用する１つ以上の表示される仮想オブジェクトの相互作用を含んでもよい。相互作用が、生じていない場合、プロセスフローは、ブロック２２４０に戻り、検出可能相互作用を継続して監視する。しかしながら、相互作用が、検出される場合、入力デバイスまたはウェアラブルディスプレイシステムは、相互作用を特性評価する相互作用信号を伝送してもよい。例えば、相互作用がユーザ相互作用である場合、信号内のデータは、タッチが生じた場所（例えば、キー）およびウェアラブルディスプレイシステムがタッチに応答して反応する方法（例えば、表示される仮想オブジェクトが修正される方法）を含んでもよい。仮想相互作用（例えば、仮想オブジェクトがディスプレイ内の他のオブジェクト（実または仮想）と相互作用する）の場合、ウェアラブルディスプレイシステムは、入力デバイスを介してユーザに触覚的に通信され、没入型のエンターテインメント体験を向上させるための相互作用を決定してもよい。
【０３３７】
ブロック２２６０では、プロセスフロー２２００は、ブロック２２５０において受信された信号に基づいて、相互作用タイプを決定する。例えば、データ記憶装置は、入力デバイスおよび／またはウェアラブルディスプレイシステムから受信されたデータに基づいて識別可能なユーザ相互作用タイプの分類を含んでもよい。または、受信されたデータは、それ自体内でユーザ相互作用を識別してもよい。ユーザ相互作用は、上記に説明されるように、キーストローク、選択された数字、文字、機能、画像、ディスプレイデバイスによって表示される画像の意図される効果等を識別してもよい。ユーザ相互作用は、入力デバイスのタイプ（例えば、ブロック２２３０）およびユーザが入力デバイス上で選択した場所または要素に基づいてもよい。
【０３３８】
ブロック２２７０では、プロセスフロー２２００は、ブロック２２６０の決定された相互作用タイプに基づいて、触覚的フィードバックパラメータを読み出す。ローカルデータおよび処理モジュール１４０は、所望のフィードバック応答を表す複数のフィードバックパラメータを記憶するデータベースにアクセスするようにプログラムされてもよい。フィードバックパラメータは、上記に説明されるように、所与のユーザ相互作用のために所望される触覚的フィードバック応答の大きさおよび周波数を定義してもよい。したがって、近接ユーザ相互作用は、所望の大きさおよび周波数に対応してもよい一方、入力ユーザ相互作用は、異なる大きさおよび／または周波数と関連付けられる。同様に、異なる入力ユーザ相互作用は、異なる大きさおよび周波数と関連付けられてもよい。別の実施形態では、フィードバックパラメータはまた、入力デバイスタイプおよび／または触覚的フィードバックコンポーネントのタイプに基づいてもよい。
【０３３９】
ブロック２２８０では、プロセスフロー２２００は、触覚的フィードバック信号を入力デバイスに伝送する。触覚的フィードバック信号は、触覚的フィードバックパラメータを含んでもよい。入力デバイスは、プロセスフロー２３００に関連して下記に説明されるように、触覚的フィードバック信号を利用して、所望の触覚的フィードバック応答を生成してもよい。フィードバック信号を伝送後、プロセスフローは、ブロック２２５０に戻り、将来的相互作用を監視する。
【０３４０】
図２３は、触覚的通信をウェアラブルディスプレイシステム（例えば、図２１のウェアラブルディスプレイシステム６０）のユーザに提供するための例証的フローチャートのプロセスフロー２３００である。プロセスフロー２３００は、上記に説明されるように、ユーザ相互作用に応答して触覚的通信をユーザに提供する、入力デバイスの実施例を対象とする。プロセスフロー２３００は、ハードウェア（例えば、図２１の入力デバイス１０および／または触覚的フィードバックデバイス１５）によって実施されてもよい。プロセスフローは、１つ以上のプロセッサの論理デバイスに動作可能に結合される非一過性データ記憶装置内に記憶される命令によってプログラムされる、入力デバイス１０の１つ以上のハードウェアプロセッサによって実装されることができる。別の実施形態では、入力デバイスは、データ記憶装置に動作可能に接続されるローカル処理モジュール１４０内の論理デバイスによって実行されるローカルデータおよび処理モジュール１４０を介して、プロセスフロー２３００を実装してもよい。
【０３４１】
ブロック２３１０では、プロセスフロー２３００は、触覚的フィードバックシステムがアクティブ化されることを決定してもよい。例えば、入力デバイスは、始動に応じて、デフォルトでアクティブ化されてもよい。別の実施例では、触覚的フィードバックシステムは、接続が、例えば、有線または無線通信リンク１６を通して、入力デバイスと確立されると、アクティブ化されてもよい。接続は、例えば、ハンドシェイクプロトコルを通したデータの交換を含んでもよく、入力デバイスは、図２２の２２３０に関連して上記に説明されるように、識別情報を伝送してもよい。識別情報はまた、その中の触覚的フィードバックコンポーネントの識別およびコンポーネントのための動作パラメータを含んでもよい。いくつかの実施形態では、識別情報は、予期されるユーザ相互作用および触覚的フィードバックコンポーネントのフィードバック応答能力の関連付けを含んでもよい。
【０３４２】
ブロック２３２０では、プロセスフロー２３００は、タッチまたはユーザ相互作用を検出する。例えば、入力デバイスは、デバイスの入力要素に印加される押下または力を介して、入力ユーザ相互作用を検出してもよい。別の実施例では、入力デバイスはまた、上記に説明されるように、近接ユーザ相互作用を検出してもよい。
【０３４３】
ブロック２３３０では、プロセスフロー２３００は、ユーザ相互作用を示すユーザ相互作用信号を伝送する。ユーザ相互作用信号は、図２２に関連して説明されるような使用のための通信リンク１６を経由して、ウェアラブルディスプレイシステムに伝送されてもよい。
【０３４４】
ブロック２２８０に関連して上記に説明されるように、フィードバック信号が、入力デバイスに伝送され、ブロック２３４０では、フィードバック信号が、入力デバイスによって受信される。信号は、通信リンク１６を経由して伝送されてもよい。上記に説明されるように、フィードバック信号は、ブロック２３２０において検出されたユーザ相互作用と関連付けられた所望のフィードバック応答の大きさおよび／または周波数を示すデータを含んでもよい。いくつかの実施形態では、フィードバック信号は、例えば、上記に説明されるように、仮想相互作用がウェアラブルディスプレイデバイスにおいて検出されると、ブロック２３２０におけるユーザ相互作用を検出するステップから独立して受信されてもよい。
【０３４５】
ブロック２３５０では、プロセスフロー２３００は、ブロック２３４０において受信された触覚的フィードバック信号に基づいて、触覚的フィードバック応答を生成する。種々の実施形態では、入力デバイスのコントローラは、フィードバック信号を受信および処理し、その中に含まれるフィードバックパラメータを読み出してもよい。フィードバックパラメータは、触覚的フィードバックコンポーネントに適用されてもよい。例えば、フィードバックパラメータは、１つ以上の触覚的フィードバックコンポーネントに印加し、所望のフィードバック応答を生産するための電流および／または電圧を定義してもよい。入力デバイスは、電流をそこに取り付けられる触覚的フィードバックコンポーネントに印加するように構成される電圧源を伴う、電気回路を含んでもよい。触覚的フィードバックパラメータに基づいて、電源は、所望のデューティサイクルを伴って、所与の大きさの電流を印加し、入力デバイスを通して所望の振動を生産するように構成されてもよい。プロセッサはまた、局所的フィードバック応答を生産するように、電流を印加するための局所的領域（例えば、触覚的フィードバックコンポーネントの識別されたグループ）を識別するように構成されてもよい。ユーザ相互作用場所および関連付けられた触覚的フィードバックコンポーネントのマッピングは、プロセッサにアクセス可能なデータ記憶装置内に記憶されてもよい。触覚的フィードバック応答を生成後、プロセスフローは、ブロック２３２０に戻り、将来的ユーザ相互作用を監視する。
【０３４６】
実施例
いくつかの実施例では、頭部搭載型ディスプレイ（ＨＭＤ）は、フレームと、フレームによってサポートされ、画像をユーザの眼に投影するように構成される、投影光学系と、ＨＭＤと動作可能に接続される入力デバイスとの相互作用を検出するためのセンサと、命令を記憶するように構成される、非一過性データ記憶装置と、非一過性データ記憶装置に動作可能に結合され、命令によって、センサから、ユーザ相互作用を示す信号を受信し、信号に基づいて、ユーザ相互作用のタイプを決定し、触覚的フィードバック信号を入力デバイスに伝送し、触覚的フィードバック信号は、入力デバイスを通してユーザに通信可能な触覚的応答を生成するための１つ以上のパラメータを含むように構成される、少なくとも１つのハードウェアプロセッサとを備える。
【０３４７】
先行実施例のいずれかでは、入力デバイスは、触覚的フィードバックコンポーネントを含んでもよい。
【０３４８】
先行実施例のいずれかでは、パラメータは、触覚的応答の大きさおよび周波数を示すデータを含んでもよい。
【０３４９】
先行実施例のいずれかでは、パラメータは、触覚的フィードバックコンポーネントに供給されるべき電流および電圧のうちの少なくとも１つを示してもよい。
【０３５０】
先行実施例のいずれかでは、触覚的フィードバックコンポーネントは、偏心回転質量モータ、リニア共振アクチュエータ、および圧電アクチュエータのうちの少なくとも１つを含んでもよい。
【０３５１】
先行実施例のいずれかでは、入力デバイスは、キーボードであってもよい。
【０３５２】
先行実施例のいずれかでは、センサは、フレーム上に配置される外向きに向いたカメラを含んでもよく、ディスプレイデバイスとのユーザ相互作用を検出するように構成されてもよい。
【０３５３】
先行実施例のいずれかでは、外向きに向いたカメラは、複数の画像をＨＭＤの正面から捕捉するように構成されてもよく、少なくとも１つのハードウェアプロセッサはさらに、複数の画像に基づいて、ユーザ相互作用を決定するように構成されてもよい。
【０３５４】
先行実施例のいずれかでは、ユーザ相互作用のタイプは、入力デバイスのキーの押下、入力デバイスのコンポーネントの移動、および入力デバイスとの相互作用のうちの少なくとも１つを含んでもよい。
【０３５５】
先行実施例のいずれかでは、非一過性データ記憶装置は、複数のユーザ相互作用のタイプおよび触覚的フィードバック信号を記憶するように構成されてもよく、各ユーザ相互作用のタイプは、１つ以上のパラメータのうちの１つと関連付けられる。
【０３５６】
先行実施例のいずれかでは、少なくとも１つのハードウェアプロセッサはさらに、ユーザ相互作用のタイプに基づいて、１つ以上のパラメータを読み出すように構成されてもよく、フィードバック応答は、ユーザ相互作用のタイプに対応する。
【０３５７】
いくつかの実施例では、方法は、センサから、入力デバイスを介したウェアラブルディスプレイシステムとのユーザ相互作用を示す信号を受信するステップと、信号に基づいて、ユーザ相互作用のタイプを決定するステップと、触覚的フィードバック信号を入力デバイスに伝送するステップであって、触覚的フィードバック信号は、入力デバイスを通してユーザに通信可能な触覚的応答を生成するための１つ以上のパラメータを含む、ステップとを含む。
【０３５８】
先行実施例のいずれかでは、入力デバイスは、触覚的フィードバックコンポーネントを含んでもよい。
【０３５９】
先行実施例のいずれかでは、パラメータは、触覚的応答の大きさおよび周波数を示すデータを含んでもよい。
【０３６０】
先行実施例のいずれかでは、パラメータは、触覚的フィードバックコンポーネントに供給されるべき電流および電圧のうちの少なくとも１つを示してもよい。
【０３６１】
先行実施例のいずれかでは、触覚的フィードバックコンポーネントは、偏心回転質量モータ、リニア共振アクチュエータ、および圧電アクチュエータのうちの少なくとも１つを含んでもよい。
【０３６２】
先行実施例のいずれかでは、入力デバイスは、キーボードであってもよい。
【０３６３】
先行実施例のいずれかでは、センサは、ウェアラブルディスプレイシステム上に配置され、ユーザ相互作用を検出するように構成される、外向きに向いたカメラを備えてもよい。
【０３６４】
先行実施例のいずれかでは、外向きに向いたカメラは、複数の画像をウェアラブルディスプレイシステムの正面から捕捉するように構成されてもよく、本方法はさらに、複数の画像に基づいて、ユーザ相互作用を決定するステップを含んでもよい。
【０３６５】
先行実施例のいずれかでは、ユーザ相互作用のタイプは、入力デバイスのキーの押下、入力デバイスのコンポーネントの移動、および入力デバイスとの相互作用のうちの少なくとも１つを含んでもよい。
【０３６６】
先行実施例のいずれかでは、本方法はさらに、複数のユーザ相互作用のタイプおよび触覚的フィードバック信号を記憶するステップを含んでもよく、各ユーザ相互作用のタイプは、１つ以上のパラメータのうちの１つと関連付けられる。
【０３６７】
先行実施例のいずれかでは、本方法はさらに、ユーザ相互作用のタイプに基づいて、１つ以上のパラメータを読み出すステップを含んでもよく、フィードバック応答は、ユーザ相互作用のタイプに対応する。
【０３６８】
いくつかの実施例では、非一過性コンピュータ可読媒体は、ハードウェアプロセッサによって読み取られると、ハードウェアプロセッサに、センサから、入力デバイスを介したウェアラブルディスプレイシステムとのユーザ相互作用を示す信号を受信するステップと、信号に基づいて、ユーザ相互作用のタイプを決定するステップと、触覚的フィードバック信号を入力デバイスに伝送するステップであって、触覚的フィードバック信号は、入力デバイスを通してユーザに通信可能な触覚的応答を生成するための１つ以上のパラメータを含む、ステップとを含む、方法を実施させる、命令を備える。
【０３６９】
先行実施例のいずれかでは、入力デバイスは、触覚的フィードバックコンポーネントを含んでもよい。
【０３７０】
先行実施例のいずれかでは、パラメータは、触覚的応答の大きさおよび周波数を示すデータを含んでもよい。
【０３７１】
先行実施例のいずれかでは、パラメータは、触覚的フィードバックコンポーネントに供給されるべき電流および電圧のうちの少なくとも１つを示してもよい。
【０３７２】
先行実施例のいずれかでは、触覚的フィードバックコンポーネントは、偏心回転質量モータ、リニア共振アクチュエータ、および圧電アクチュエータのうちの少なくとも１つを含んでもよい。
【０３７３】
先行実施例のいずれかでは、入力デバイスは、キーボードであってもよい。
【０３７４】
先行実施例のいずれかでは、センサは、ウェアラブルディスプレイシステム上に配置され、ユーザ相互作用を検出するように構成される、外向きに向いたカメラを備えてもよい。
【０３７５】
先行実施例のいずれかでは、外向きに向いたカメラは、複数の画像をウェアラブルディスプレイシステムの正面から捕捉するように構成されてもよく、本方法はさらに、複数の画像に基づいて、ユーザ相互作用を決定するステップを含んでもよい。
【０３７６】
先行実施例のいずれかでは、ユーザ相互作用のタイプは、入力デバイスのキーの押下、入力デバイスのコンポーネントの移動、および入力デバイスとの相互作用のうちの少なくとも１つを含んでもよい。
【０３７７】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、複数のユーザ相互作用のタイプおよび触覚的フィードバック信号を記憶するステップを含んでもよく、各ユーザ相互作用のタイプは、１つ以上のパラメータのうちの１つと関連付けられる。
【０３７８】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、ユーザ相互作用のタイプに基づいて、１つ以上のパラメータを読み出すステップを含んでもよく、フィードバック応答は、ユーザ相互作用のタイプに対応する。
【０３７９】
ユーザ入力デバイスと仮想モニタとの間の例示的協調
頭部搭載型ディスプレイ（ＨＭＤ）等のウェアラブルディスプレイシステムは、物理的ユーザ入力デバイス（例えば、キーボード）等のコンパニオンデバイスと協働するように構成されてもよい。ＨＭＤおよび物理的ユーザ入力デバイスがともに協働することが可能であるために（例えば、情報を無線で交換するため）、コンパニオンデバイスおよびＨＭＤは、最初に、相互にペアリングされる必要があり得る。ペアリング後、ウェアラブルディスプレイシステムは、仮想モニタをユーザに示すことができる。仮想モニタは、例えば、ＡＲ画像データがモニタの外観および機能をシミュレートするように表示される、ＨＭＤの視野のサブ部分であることができる。仮想モニタおよび仮想モニタに示されるコンテンツの場所は、物理的ユーザ入力デバイスの場所に基づく、および／またはユーザ入力デバイスの中への入力に基づくことができる。例えば、仮想モニタは、物理的キーボードの近傍に示されることができる。仮想モニタの場所は、物理的ユーザ入力デバイスの場所に基づいて決定されることができる。仮想モニタの場所は、ユーザに対するその相対的物理的場所が変化するにつれて、物理的ユーザ入力デバイスの新しい場所に基づいて更新されることができる。別の実施例として、物理的ユーザ−入力デバイスへの入力は、仮想モニタに示されるコンテンツの変化をもたらし得る。本開示は、そのような仮想モニタ−ユーザ入力デバイス連携のためのシステムおよび方法を提供する。
【０３８０】
図２４は、ウェアラブル頭部搭載型ディスプレイ（ＨＭＤ）システム、関連付けられた物理的キーボード、およびＨＭＤシステムのディスプレイ上に示される仮想モニタ間の例示的相互作用を図式的に図示する。ＨＭＤシステム２４０４は、物理的キーボード２４０８またはある他のタイプの物理的ユーザ入力デバイス（例えば、タッチパッド）等のコンパニオンデバイスを認証することができる。物理的キーボード２４０８に関して、ユーザは、物理的キーを押下し、押下されたキーに対応する信号を生成することができる。押下されたキーに対応する信号は、次いで、ＨＭＤシステムに伝送されることができ、これは、次いで、信号に対応するアクションを実施することができる。例えば、アクションは、仮想モニタ上に、押下されたキーに対応する文字、数、または記号を表示し得る。
【０３８１】
ＨＭＤシステム２４０４および物理的キーボード２４０８は、例えば、無線周波数（ＲＦ）通信チャネル２４１２（例えば、ＷｉＦｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）等）を経由して、無線で通信することができる。
【０３８２】
ＨＭＤシステム２４０４は、カメラ等の外向きに向いた画像捕捉デバイスを含むことができ、これは、ＨＭＤシステム２４０４のユーザを囲繞する環境の画像を捕捉することができる。ユーザの視野（ＦＯＶ）は、物理的キーボード２４０８を含むことができる。ユーザの環境の画像はまた、物理的キーボード２４０８を含むことができる。ＨＭＤシステム２４０４は、画像を分析することによって、ユーザのＦＯＶ内の物理的キーボード２４０８の存在を決定することができる。ＨＭＤシステム２４０４はまた、コンピュータビジョン技法を使用して、物理的キーボード２４０８の場所を決定することができる。物理的キーボード２４０８の場所に基づいて、ＨＭＤシステム２４０４は、仮想モニタ２４１６の場所を決定し、仮想モニタ２４１６を決定された場所に表示することができる。
【０３８３】
仮想モニタは、ＨＭＤシステム２４０４の視野の一部に対応し得る。キーボード２４０８からのユーザ入力は、視野のその部分に示されることができる。いくつかの実施形態では、物理的キーボード２４０８の作動は、ユーザインターフェース動作を仮想モニタ上で実施させることができる。例えば、ウェアラブルシステムは、仮想モニタ２４１６を視野内の物理的キーボード２４０８の近傍に現れるように提示することができる。いくつかの実施形態では、視野内の物理的キーボード２４０８の検出された場所と仮想モニタに対応する画像データが視野内に示される場所との間には、固定された空間関係が存在する。例えば、視野内の物理的キーボード２４０８の場所が変化する場合、仮想モニタの表示される位置もまた、対応する様式で変化されることができる。
【０３８４】
ＨＭＤシステム２４０４は、ユーザの視野（ＦＯＶ）内の内容に基づいて、レンダリング場所を更新する、または仮想モニタ２４１６が可視／不可視になるように設定することができる。例えば、ＨＭＤシステム２４０４は、物理的キーボード２４０８がユーザのＦＯＶ内にある場合、仮想モニタ２４１６を表示することができる。ユーザの頭部姿勢が変化し、物理的キーボード２４０８がもはやユーザのＦＯＶ内にない場合、ＨＭＤシステム２４０４は、仮想モニタ２４１６を隠蔽することができる。
【０３８５】
仮想モニタ場所の例示的決定
図２５は、少なくとも部分的に、物理的キーボードの場所に基づいて、仮想モニタ、仮想ディスプレイ、または仮想画面の場所を決定する、例示的プロセス２５００を図示する。ブロック２５０４では、ウェアラブルディスプレイは、ウェアラブルシステムのユーザの物理的環境の第１の画像を受信することができる。物理的環境の第１の画像は、世界カメラの視野（ＦＯＶ）に対応する。世界カメラの視野は、ユーザの視野の少なくとも一部を含むことができる。第１の画像は、ユーザのＦＯＶが物理的キーボード等の入力デバイスを含むことを示すことができる。
【０３８６】
ブロック２５０８では、ウェアラブルシステムは、第１の画像を使用して、ユーザの環境内の物理的キーボードの第１の場所／配向を決定することができる。ウェアラブルシステムは、物理的キーボードの第１の場所がユーザのＦＯＶ内にあることを決定することができる。ウェアラブルシステムは、本明細書に開示される１つ以上のコンピュータビジョン技法を利用して、オブジェクト認識装置を実装し、ユーザのＦＯＶ内の物理的キーボードの存在および物理的キーボードの第１の場所／配向を決定することができる。
【０３８７】
いくつかの実施形態では、ウェアラブルシステムは、本明細書に開示される１つ以上のコンピュータビジョン技法を利用して、オブジェクト認識装置を実装し、物理的キーボードの視覚的特性（例えば、基準の場所）を使用して、物理的キーボードの第１の場所／配向を決定することができる。例えば、視覚的特性は、物理的キーボードの表面の形状または物理的キーボードと関連付けられた少なくとも１つのラベルのうちの少なくとも１つを含むことができる。物理的キーボードと関連付けられたラベルは、ユーザに不可視であることができる（例えば、ヒトの眼に不可視の染料を使用して作成された基準）。
【０３８８】
いくつかの実施形態では、物理的キーボードの第１の場所／配向は、物理的キーボードの場所／配向センサを使用して決定された、物理的キーボードから受信されることができる。例えば、場所／配向センサは、全地球測位システム（ＧＰＳ）ユニット、加速度計、慣性測定ユニット、ジャイロスコープ、コンパス、またはそれらの組み合わせを含んでもよい。いくつかの実施形態では、場所／配向センサが、自由度の第１の数（例えば、３自由度）を伴う場所／配向情報を提供するために使用されることができる。次いで、コンピュータビジョン技法が、自由度の数を増加させる（例えば、場所／配向情報を６自由度に増加させる）ように、キーボードのセンサからの場所／配向情報を補完するために使用されることができる。いくつかの実施形態では、例えば、キーボードのセンサは、３−軸加速度計であり得、これは、キーボードの配向を提供する。コンピュータビジョン技法は、次いで、３次元空間内のキーボードの位置を位置特定するために使用され得る。類似技法は、トーテムを含む、任意の物理的オブジェクトの場所／配向を決定するために使用されることができる。
【０３８９】
いくつかの実施形態では、キーボードの第１の場所／配向は、画像内の物理的キーボードの近傍のユーザの手に基づいて決定されることができる。例えば、物理的キーボードと近接近して結び付けられるタイプ運動は、ユーザがタイプしていることを示すことができる。物理的キーボードの場所／配向は、したがって、手の場所に基づいて決定されることができる。
【０３９０】
いくつかの実施形態では、物理的キーボード上のキーは、非均一であることができる。例えば、あるキーは、より大きいまたはより高くあることができる（例えば、物理的キーボードの基準平面に対して）。他のキーに対するこれらのキーの性質は、物理的キーボードの場所／配向を決定するために使用されることができる。いくつかの実施形態では、ウェアラブルシステムは、ユーザの眼の画像を受信し、ユーザの眼の視線方向を決定することができる。視線方向に基づいて、ウェアラブルシステムは、眼が物理的キーボードの特定のキー（例えば、より高いまたはより広いキー）を見ていることを決定することができる。特定のキーを見ることは、ウェアラブルシステムに対する特定のキーと関連付けられたコマンドであることができる。コマンドは、例えば、物理的キーボードに対して比較的に固定されて現れるように仮想モニタをロックするためのロックコマンドを有効または無効にすることができる。
【０３９１】
ブロック２５１２では、ウェアラブルシステムは、少なくとも部分的に、物理的キーボードの第１の場所に基づいて、仮想モニタの第１のレンダリング場所／配向を決定することができる。例えば、第１のレンダリング場所／配向は、物理的キーボードの第１の場所／配向に対することができる。別の実施例として、第１のレンダリング場所／配向は、ユーザからの物理的キーボードの距離に基づくことができる。
【０３９２】
ブロック２５１６では、ウェアラブルシステムは、少なくとも部分的に、仮想モニタの第１のレンダリング場所／配向およびサイズ選好に基づいて、仮想モニタのサイズを決定することができる。例えば、仮想モニタのサイズ選好が、より大きい場合、レンダリングされる仮想モニタのサイズは、より大きくなるべきである。別の実施例として、キーボードが、ユーザから比較的に遠い場合、仮想モニタのサイズは、相対的に言って、サイズが比例するように、比較的に小さくレンダリングされることができる。ブロック２５２０では、ウェアラブルシステムは、ウェアラブルシステムのディスプレイシステムに、決定されたサイズおよび配向を伴う仮想モニタを第１のレンダリング場所にレンダリングするように命令することができる。いくつかの実施形態では、ウェアラブルシステムは、物理的入力デバイス上に重畳されるようにあらわれるように、仮想入力デバイスを第１の場所にレンダリングすることができる。
【０３９３】
例示的仮想モニタ場所更新
図２６は、物理的キーボードの場所に基づいて仮想モニタのレンダリング場所／配向を修正する、例示的プロセス２６００を図示する。例証的方法２６００は、ブロック２６０４が上記に説明されるブロック２５２０に続いて生じるように、上記に議論されるプロセス２５００の実装に続いて実装されてもよい。
【０３９４】
ブロック２６０４では、ウェアラブルシステムは、物理的環境の第２の画像を受信することができる。物理的環境の第２の画像は、世界カメラの視野（ＦＯＶ）に対応する。世界カメラの視野は、ユーザの視野の少なくとも一部を含むことができる。第２の画像は、ユーザのＦＯＶが物理的キーボード等の入力デバイスを含むことを示すことができる。
【０３９５】
ブロック２６０８では、ウェアラブルシステムは、第２の画像を使用して（および／またはキーボードの場所／配向センサからの情報を使用して）、ユーザの環境内の物理的キーボードの第２の場所／配向を決定することができる。ウェアラブルシステムは、物理的キーボードの第２の場所がユーザのＦＯＶ内にあることを決定することができる。ウェアラブルシステムは、本明細書に開示されるもの等の１つ以上のコンピュータビジョン技法を利用して、オブジェクト認識装置を実装し、ユーザのＦＯＶ内の物理的キーボードの存在および物理的キーボードの第１の場所／配向を決定することができる。
【０３９６】
いくつかの実施形態では、ウェアラブルシステムは、本明細書に開示されるもの等の１つ以上のコンピュータビジョン技法を利用して、オブジェクト認識装置を実装し、物理的キーボードの視覚的特性（例えば、基準の場所）を使用して、物理的キーボードの第２の場所／配向を決定することができる。例えば、上記に述べられたように、視覚的特性は、物理的キーボードと関連付けられた少なくとも１つのラベルを備えることができる。しかし、本ブロックに説明されるラベルおよびブロック２５０８を参照して説明されるラベルは、第１のブロックがもはやウェアラブルシステムに可視ではなくなり得る、または第２のラベルがより明確に見られ得る位置に位置し得るため、異なり得る。
【０３９７】
ブロック２６１２では、ウェアラブルシステムは、再レンダリング基準が満たされるかどうかを決定することができる。再レンダリング基準は、以下の要因のうちの１つ以上のものに基づくことができる。例えば、再レンダリング基準は、少なくとも部分的に、物理的キーボードの第１の場所／配向と物理的キーボードの第２の場所／配向との間の距離／変化に基づくことができる。距離／変化が、閾値を下回る場合、再レンダリング基準は、満たされ得ず、仮想モニタの場所／配向は、変化される必要がなく、したがって、再レンダリングを不必要にし得る。
【０３９８】
再レンダリング基準は、少なくとも部分的に、物理的キーボードの配向センサを使用して決定された物理的キーボードの配向に基づくことができる。ユーザは、物理的キーボードを回転させ、物理的ラップトップの蓋の閉鎖をシミュレートすることによって、仮想モニタを「閉鎖」するその意図を示すことができる。ウェアラブルディスプレイは、入力デバイスの配向または入力デバイスの配向の変化を受信し、ディスプレイシステムに、少なくとも部分的に、入力デバイスの配向に基づいて、仮想ディスプレイのレンダリングを中止させることができる。物理的キーボードの配向は、加速度計、慣性測定ユニット、ジャイロスコープ、コンパス、またはそれらの組み合わせ等の物理的キーボードの配向センサを使用して決定されることができる。いくつかの実施形態では、ウェアラブルシステムは、少なくとも部分的に、入力デバイスのタイプに基づいて、仮想ディスプレイのレンダリングを中止することができる。例えば、ウェアラブルディスプレイシステムは、物理的キーボードが物理的ラップトップのキーボードを表す場合、回転されている物理的キーボードのインジケーションを受信後、仮想モニタの表示を中止することができる。しかしながら、ウェアラブルディスプレイシステムは、物理的キーボードがデスクトップコンピュータのキーボードを表す場合、同一インジケーションを受信後、仮想モニタの表示を中止しなくてもよい。より一般的には、キーボードは、手のジェスチャに類似するその移動に基づくコマンドと関連付けられることができる。キーボード移動に基づくコマンドのうちのいくつかは、再レンダリング基準（例えば、物理的キーボードがデスクトップキーボードに対応する場合、物理的キーボードを回転させる）を満たし得ず、したがって、仮想モニタの再レンダリングを要求しない。実施例として、物理的キーボードをユーザからより遠くに離れるように移動させることは、仮想モニタの再レンダリングまたはリサイズを要求し得ない。
【０３９９】
ブロック２６１６では、ウェアラブルシステムは、少なくとも部分的に、物理的キーボードの第２の場所／配向に基づいて、仮想モニタの第２のレンダリング場所／配向を決定することができる。例えば、第２のレンダリング場所／配向は、物理的キーボードの第２の場所／配向に対することができる。別の実施例として、第２のレンダリング場所／配向は、ユーザからの物理的キーボードの距離に基づくことができる。ブロック２６２０では、ウェアラブルシステムは、ディスプレイシステムに、仮想モニタを第２のレンダリング場所／配向に再レンダリングするように命令することができる。ウェアラブルシステムは、少なくとも部分的に、仮想モニタの第２のレンダリング場所およびサイズ選好に基づいて、仮想モニタのサイズを決定することができる。例えば、仮想モニタのサイズ選好が、より大きい場合、レンダリングされる仮想モニタのサイズは、より大きくなるべきである。別の実施例として、キーボードが、ユーザから遠い場合、仮想モニタのサイズは、相互に対してサイズが比例するように、より小さくなることができる。
【０４００】
仮想モニタを使用した例示的レンダリング
図２７は、図２５における仮想モニタを使用して物理的キーボードによって受信された入力をレンダリングする、例示的プロセスを図示する。例証的方法２７００は、ブロック２７０４が上記に説明されるブロック２５２０またはブロック２６２０に続いて生じるように、上記に議論されるプロセス２５００または処理する２６００の実装に続いて実装されてもよい。
【０４０１】
ブロック２７０４では、ウェアラブルシステムが、物理的キーボードの第１のキーの作動のインジケーションを受信することができる。例えば、物理的キーボードは、直接的にまたは通信チャネルを通して間接的に、データをウェアラブルシステムに伝送し、文字「Ｍ」に対応する物理的キーボードの第１のキーがユーザによって作動または押下されたことを示すことができる。ブロック２７０８では、ウェアラブルシステムは、ディスプレイシステムに、第１のキーに対応する第１の印を第１の文字の第１の場所において仮想モニタ内に現れるようにレンダリングするように命令することができる。例えば、文字「Ｍ」に対応するキーが作動されたことのデータを受信後、ウェアラブルシステムは、文字「Ｍ」に対応する第１の印を表示することができる。第１の印は、文字「Ｍ」の表現（例えば、特定のフォントおよびサイズを伴う）を含有することができる。第１の印は、仮想モニタの特定の場所において仮想モニタ上に表示されることができる。いくつかの実施形態では、ユーザの視野（ＦＯＶ）は、仮想モニタの一部のみを含む。したがって、第１の印の場所が、ユーザのＦＯＶ内にない場合、印は、仮想モニタ上に表示されなくてもよい。いくつかの実施形態では、キーの作動は、仮想オブジェクトまたは物理的オブジェクトを移動させる等の本明細書に説明されるユーザインターフェース動作に対応する。いくつかの実施形態では、第１のキーの作動は、物理的キーボードに対して比較的に固定されて現れるように仮想モニタをロックするためのロックコマンドを有効または無効にすることに対応する。
【０４０２】
ブロック２７１２では、ウェアラブルシステムは、物理的キーボードの第２のキーが押下されたことのインジケーションを受信することができる。例えば、物理的キーボードは、データをウェアラブルシステムに伝送し、直接的にまたは通信チャネルを通して間接的に、文字「Ａ」に対応する物理的キーボードの第２のキーがユーザによって作動または押下されたことを示すことができる。いくつかの実施形態では、第２のキーの作動は、物理的キーボードに対して比較的に固定されて現れるように仮想モニタをロックするためのロックコマンドを有効または無効にすることに対応する。
【０４０３】
ブロック２７１６では、ウェアラブルシステムは、少なくとも部分的に、第１の文字の第１の場所に基づいて、第２のキーに対応する第２の印の第２の場所を決定することができる。例えば、文字「Ａ」に対応する第２の印の第２の場所は、ユーザが仮想モニタ上に示される仮想ドキュメントにタイプしているとき、第１の印に隣接することができる。ブロック２７２０では、ウェアラブルシステムは、ディスプレイシステムに、第２のキーに対応する第２の印を第２の文字の第２の場所において仮想モニタ内に現れるようにレンダリングするように命令することができる。例えば、文字「Ａ」に対応するキーが作動されたことのデータを受信後、ウェアラブルシステムは、文字「Ａ」に対応する第２の印を表示することができる。第２の印は、文字「Ｍ」の表現（例えば、特定のフォントおよびサイズ）を含有することができる。第２の印は、仮想モニタの特定の場所において仮想モニタ上に表示されることができる。ブロック２７１２−２７１６は、繰り返されることができ、したがって、ウェアラブルシステムは、物理的キーボードを通して、入力をユーザから継続的に受信することができる。
実施例
【０４０４】
いくつかの実施例では、システムは、仮想モニタをユーザに提示するように構成される、ディスプレイシステムと、ユーザの物理的環境を結像するように構成される、外向きに向いた結像システムと、ディスプレイシステムおよび外向きに向いた結像システムと通信する、ハードウェアプロセッサであって、外向きに向いた結像システムによって入手された物理的環境の第１の画像を受信し、第１の画像を使用して、ユーザの環境内の物理的キーボードの第１の場所を決定し、少なくとも部分的に、物理的キーボードの第１の場所に基づいて、仮想モニタの第１のレンダリング場所を決定し、少なくとも部分的に、仮想モニタの第１のレンダリング場所およびサイズ選好に基づいて、仮想モニタのサイズを決定し、仮想モニタは、ユーザインターフェース機能のために構成され、ディスプレイシステムに、決定されたサイズを伴う仮想モニタを第１のレンダリング場所にレンダリングするように命令するようにプログラムされる、ハードウェアプロセッサとを備える。
【０４０５】
先行実施例のいずれかでは、ユーザの環境内の物理的キーボードの第１の場所を決定するために、ハードウェアプロセッサは、オブジェクト認識装置を実行し、物理的キーボードの視覚的特性を使用して、物理的キーボードの第１の場所を決定するようにプログラムされてもよい。
【０４０６】
先行実施例のいずれかでは、視覚的特性は、物理的キーボードの表面の形状または物理的キーボードと関連付けられたラベルのうちの少なくとも１つを含んでもよい。
【０４０７】
先行実施例のいずれかでは、物理的キーボードと関連付けられたラベルは、ユーザに不可視であってもよい。
【０４０８】
先行実施例のいずれかでは、物理的キーボードと関連付けられたラベルは、物理的キーボード上にあってもよい。
【０４０９】
先行実施例のいずれかでは、物理的キーボードと関連付けられたラベルは、物理的キーボードに対して固定され、物理的キーボードからオフセットされたラベル場所であってもよい。
【０４１０】
先行実施例のいずれかでは、外向きに向いた結像システムは、視野（ＦＯＶ）を有する世界カメラを備えてもよく、ＦＯＶは、所与の時間において世界カメラによって観察される、物理的環境の一部を含み、物理的キーボードの第１の場所を決定するために、ハードウェアプロセッサは、物理的キーボードの少なくとも一部がＦＯＶ内にあることを検出するようにプログラムされてもよい。
【０４１１】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、物理的キーボードの第１のキーの作動のインジケーションを受信し、ディスプレイシステムに、第１のキーに対応する第１の印を第１の文字の第１の場所において仮想モニタ内に現れるようにレンダリングするように命令するようにプログラムされてもよい。
【０４１２】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、物理的キーボードの第２のキーが押下されたことのインジケーションを受信し、少なくとも部分的に、第１の文字の第１の場所に基づいて、第２のキーに対応する第２の印の第２の場所を決定し、ディスプレイシステムに、第２のキーに対応する第２の印を第２の文字の第２の場所において仮想モニタ内に現れるようにレンダリングするように命令するようにプログラムされてもよい。
【０４１３】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、物理的キーボードの第１のキーの作動のインジケーションを受信し、物理的キーボードの第１のキーの作動に基づいて、コマンドの実行を命令するようにプログラムされてもよい。
【０４１４】
先行実施例のいずれかでは、コマンドは、システムに、ユーザインターフェース動作を実施させてもよい。
【０４１５】
先行実施例のいずれかでは、コマンドは、物理的キーボードに対して比較的に固定されて現れるように仮想モニタをロックするためのロックコマンドを有効または無効にすることを含んでもよい。
【０４１６】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、外向きに向いた結像システムによって入手された物理的環境の第２の画像を受信し、第２の画像を使用して、ユーザの環境内の物理的キーボードの第２の場所を決定し、再レンダリング基準が満たされるかどうかを決定し、少なくとも部分的に、物理的キーボードの第２の場所に基づいて、仮想モニタの第２のレンダリング場所を決定し、ディスプレイシステムに、仮想モニタを第２のレンダリング場所に再レンダリングするように命令するようにプログラムされてもよい。
【０４１７】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、物理的キーボードの第１の場所と物理的キーボードの第２の場所との間の距離を決定するようにプログラムされてもよく、再レンダリング基準は、少なくとも部分的に、距離に基づいてもよい。
【０４１８】
先行実施例のいずれかでは、再レンダリング基準は、少なくとも部分的に、物理的キーボードに対して比較的に固定されて現れるように仮想モニタをロックするためのロックコマンドに基づいてもよい。
【０４１９】
先行実施例のいずれかでは、再レンダリング基準は、少なくとも部分的に、物理的キーボードの配向センサを使用して決定された物理的キーボードの配向に基づいてもよい。
【０４２０】
先行実施例のいずれかでは、物理的キーボードの第３のキーの性質および物理的キーボードの第４のキーの対応する性質は、異なってもよい。
【０４２１】
先行実施例のいずれかでは、第３のキーの性質は、物理的キーボードの基準平面に対する第３のキーの高さを含んでもよい。
【０４２２】
先行実施例のいずれかでは、本システムはさらに、ユーザの眼を結像するように構成される、内向きに向いた結像システムを備えてもよく、ハードウェアプロセッサはさらに、ユーザの眼の画像を受信し、ユーザの眼の画像内のユーザの眼の視線方向を決定し、眼の視線方向を使用して、眼の画像内の眼が物理的キーボードの第３のキーを見ていることを決定し、少なくとも部分的に、物理的キーボードの第３のキーを見ている眼の画像内の眼に基づいて、コマンドの実行を命令するようにプログラムされる。
【０４２３】
先行実施例のいずれかでは、コマンドは、物理的キーボードに対して比較的に固定されて現れるように仮想モニタをロックするためのロックコマンドを有効または無効にすることを含んでもよい。
【０４２４】
いくつかの実施例では、方法は、仮想ディスプレイオブジェクトのユーザの環境内の入力デバイスの第１の場所を受信するステップと、少なくとも部分的に、入力デバイスの第１の場所に基づいて、仮想ディスプレイオブジェクトの第１のレンダリング場所を決定するステップと、少なくとも部分的に、第１のレンダリング場所に基づいて、仮想ディスプレイオブジェクトのサイズを決定するステップと、ディスプレイシステムに、仮想ディスプレイを第１のレンダリング場所にレンダリングさせるステップとを含む。
【０４２５】
先行実施例のいずれかでは、入力デバイスは、物理的キーボードを含んでもよい。
【０４２６】
先行実施例のいずれかでは、入力デバイスの第１の場所を受信するステップは、場所センサを使用して入力デバイスによって決定された入力デバイスの第１の場所を受信するステップを含んでもよい。
【０４２７】
先行実施例のいずれかでは、場所センサは、全地球測位システム（ＧＰＳ）ユニット、加速度計、慣性測定ユニット、ジャイロスコープ、コンパス、またはそれらの組み合わせを含んでもよい。
【０４２８】
先行実施例のいずれかでは、入力デバイスの第１の場所を受信するステップは、ユーザの環境内の入力デバイスの画像を使用して、入力デバイスの第１の場所を決定するステップを含んでもよい。
【０４２９】
先行実施例のいずれかでは、入力デバイスの第１の場所を受信するステップはさらに、画像内の入力デバイスの近傍のユーザの手の場所を使用して、入力デバイスの第１の場所を決定するステップを含んでもよい。
【０４３０】
先行実施例のいずれかでは、本方法はさらに、ディスプレイシステムに、仮想入力デバイスを物理的入力デバイス上に重畳されて現れるように第１の場所にレンダリングさせるステップを含んでもよい。
【０４３１】
先行実施例のいずれかでは、本方法はさらに、入力デバイスの配向を受信するステップと、ディスプレイシステムに、少なくとも部分的に、入力デバイスの配向に基づいて、仮想ディスプレイのレンダリングを中止させるステップとを含んでもよい。
【０４３２】
先行実施例のいずれかでは、入力デバイスの配向を受信するステップは、配向センサを使用して決定された入力デバイスの配向を受信するステップを含んでもよく、配向センサは、加速度計、慣性測定ユニット、ジャイロスコープ、コンパス、またはそれらの組み合わせを含む。
【０４３３】
先行実施例のいずれかでは、ディスプレイシステムに仮想ディスプレイのレンダリングを中止させるステップは、少なくとも部分的に、入力デバイスのタイプに基づいて、ディスプレイシステムに仮想ディスプレイのレンダリングを中止させるステップを含んでもよい。
【０４３４】
いくつかの実施例では、非一過性コンピュータ可読媒体は、コンピュータによって読み取られると、コンピュータに、仮想ディスプレイオブジェクトのユーザの環境内の入力デバイスの第１の場所を受信するステップと、少なくとも部分的に、入力デバイスの第１の場所に基づいて、仮想ディスプレイオブジェクトの第１のレンダリング場所を決定するステップと、少なくとも部分的に、第１のレンダリング場所に基づいて、仮想ディスプレイオブジェクトのサイズを決定するステップと、ディスプレイシステムに、仮想ディスプレイを第１のレンダリング場所にレンダリングさせるステップとを含む、方法を実施させる、命令を備える。
【０４３５】
先行実施例のいずれかでは、入力デバイスは、物理的キーボードを含んでもよい。
【０４３６】
先行実施例のいずれかでは、入力デバイスの第１の場所を受信するステップは、場所センサを使用して、入力デバイスによって決定された入力デバイスの第１の場所を受信するステップを含んでもよい。
【０４３７】
先行実施例のいずれかでは、場所センサは、全地球測位システム（ＧＰＳ）ユニット、加速度計、慣性測定ユニット、ジャイロスコープ、コンパス、またはそれらの組み合わせを含んでもよい。
【０４３８】
先行実施例のいずれかでは、入力デバイスの第１の場所を受信するステップは、ユーザの環境内の入力デバイスの画像を使用して、入力デバイスの第１の場所を決定するステップを含んでもよい。
【０４３９】
先行実施例のいずれかでは、入力デバイスの第１の場所を受信するステップはさらに、画像内の入力デバイスの近傍のユーザの手の場所を使用して、入力デバイスの第１の場所を決定するステップを含んでもよい。
【０４４０】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、ディスプレイシステムに、仮想入力デバイスを物理的入力デバイス上に重畳されて現れるように第１の場所にレンダリングさせるステップを含んでもよい。
【０４４１】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、入力デバイスの配向を受信するステップと、ディスプレイシステムに、少なくとも部分的に、入力デバイスの配向に基づいて、仮想ディスプレイのレンダリングを中止させるステップとを含んでもよい。
【０４４２】
先行実施例のいずれかでは、入力デバイスの配向を受信するステップは、配向センサを使用して決定された入力デバイスの配向を受信するステップを含んでもよく、配向センサは、加速度計、慣性測定ユニット、ジャイロスコープ、コンパス、またはそれらの組み合わせを含む。
【０４４３】
先行実施例のいずれかでは、ディスプレイシステムに仮想ディスプレイのレンダリングを中止させるステップは、少なくとも部分的に、入力デバイスのタイプに基づいて、ディスプレイシステムに仮想ディスプレイのレンダリングを中止させるステップを含んでもよい。
【０４４４】
アプリケーション画像データと関連付けられたユーザインターフェース画像データとの間の相対的位置付けの実施例
本明細書に開示されるウェアラブルＶＲ／ＡＲ／ＭＲシステムは、画像データがユーザから異なる距離に位置する複数の見掛け深度または深度平面のいずれかから生じるように現れるように、仮想画像データを表示することが可能である。これらのウェアラブルＶＲ／ＡＲ／ＭＲシステムでは、仮想画像データは、したがって、２次元（２−Ｄ）面積内ではなく、また、空間の３次元（３−Ｄ）体積内にも表示されることができる。仮想画像データが表示される空間の体積は、例えば、ボックスであることができるが、他の形状もまた、可能性として考えられる。ボックスは、ユーザの通視線に沿った方向（例えば、図２８および２９Ａ−２９Ｅに図示されるｚ−方向）における深度寸法および側方幅および高さ寸法（例えば、それぞれ、図２８および２９Ａ−２９Ｅに図示されるｘ−およびｙ−方向）を有することができる。
【０４４５】
本明細書に説明されるＶＲ／ＡＲ／ＭＲシステムは、複数のソフトウェアアプリケーション（例えば、ゲームアプリケーション、マップアプリケーション、カレンダアプリケーション、メッセージングアプリケーション、クロックアプリケーション、ワード処理アプリケーション等）を同時に実行することが可能であるため、かつこれらのアプリケーションはそれぞれ、その独自の関連付けられた仮想画像データを有することができるため、各アプリケーションがその関連付けられた画像データを表示し得る、別個の非重複空間体積を定義することが有利であり得る。各アプリケーションは、画像データをその割り当てられた空間体積外に表示することが禁止され得る。このように、異なるアプリケーションのための画像データ間の衝突は、回避されることができる。
【０４４６】
いくつかの実施形態では、２つのアプリケーションは、第１のアプリケーションがその画像データを表示する第１の空間体積と、関連する第２のアプリケーションがその画像データを表示する第２の空間体積との間の特定の相対的空間関係を提供することが望ましくあり得るように、関連される、または別様に関連付けられてもよい。２つの関連アプリケーションは、別個のアプリケーションであってもよい、またはアプリケーションのうちの一方は、他方によって制御されるサブアプリケーションであってもよい。関連アプリケーションの一例示的ペアは、親アプリケーション（例えば、ゲームアプリケーション、マップアプリケーション、カレンダアプリケーション、メッセージングアプリケーション、クロックアプリケーション、ワード処理アプリケーション等）と、ユーザが親アプリケーションと相互作用することを可能にする（例えば、テキスト、コマンドを入力する等によって）、仮想キーボードアプリケーション等のユーザインターフェースアプリケーションである。種々の例示的システムおよび方法は、親アプリケーションと仮想キーボードアプリケーション等の関連ユーザインターフェースアプリケーションの実施例を使用して本明細書に開示されるが、同一システムおよび方法は、任意の関連アプリケーションまたは別様に関連付けられたアプリケーションと併用されることができることを理解されたい。
【０４４７】
親アプリケーションと関連付けられた画像データおよび親アプリケーションのためのユーザインターフェースと関連付けられた画像データを表示するために割り当てられた個別の非重複空間体積の相対的空間場所を決定するとき、以下の目的、すなわち、１）ＶＲ／ＡＲ／ＭＲシステムが、複数の親アプリケーションおよび複数の対応するユーザインターフェースを同時に表示し得るため、どのユーザインターフェース（例えば、仮想キーボード）インスタンスがどの親アプリケーションとペアリングされるかのインジケーションをユーザに提供すること、２）親アプリケーションに対するユーザインターフェースの場所を決定するための位置付け論理が、ユーザが選定する親アプリケーションの任意の部分を視認することを可能にすることを確実にすること、３）可読性を向上させ得る深度距離をユーザインターフェースと親アプリケーションとの間に提供することのうちの１つ以上のものを満たすことが望ましくあり得る。
【０４４８】
図２８は、ウェアラブルＶＲ／ＡＲ／ＭＲシステム２００によって表示されるようなユーザインターフェース画像データ２８１０と親アプリケーション画像データ２８２０との間の相対的空間関係の実施例を図示する。両アプリケーションは、ユーザ２０５によって装着されるＶＲ／ＡＲ／ＭＲシステム２００によって実行および表示される。
【０４４９】
空間体積２８１２は、ユーザインターフェース画像データ２８１０を表示するために確保される。いくつかの実施形態では、空間体積２８１２は、図示されるｚ−方向における深度寸法と、図示されるｘ−およびｙ−方向における側方寸法とを伴う、ボックスである。図示される実施形態では、ユーザインターフェースは、仮想キーボードであって、ユーザインターフェース画像データ２８１０は、ユーザインターフェースボックス２８１２の正面表面上に表示される。他の実施形態では、ユーザインターフェース画像データ２８１０は、同時であるかまたは異なる瞬間であるかにかかわらず、ユーザインターフェースボックス２８１２の付加的部分を占有し得る。
【０４５０】
異なる空間体積２８２２は、親アプリケーション画像データ２８２０を表示するために確保される。いくつかの実施形態では、空間体積２８２２はまた、図示されるｚ−方向における深度寸法と、図示されるｘ−およびｙ−方向における側方寸法とを伴う、ボックスである。図示される実施形態では、親アプリケーション画像データ２８２０は、親アプリケーションボックス２８２２の正面表面上に表示されるが、本割り当てられる空間体積の他の部分もまた、同時であるかまたは異なる瞬間であるかにかかわらず、親アプリケーション画像データ２８２０を表示するために使用され得る。
【０４５１】
図示されるように、ユーザインターフェースボックス２８１２および親アプリケーションボックス２８２２は、２つのアプリケーション間の画像データ衝突を回避するように、重複しない。但し、図示される実施形態では、２つのボックス２８２２、２８１２は、親アプリケーションボックス２８２２の正面表面に隣接するユーザインターフェースボックス２８１２の背面表面に「触れる」。
【０４５２】
図２８は、ユーザインターフェース画像データ２８１０と親アプリケーション画像データ２８２０との間のｚ−方向における深度距離Ｄを示す。深度距離Ｄは、固定距離であることができる。いくつかの実施形態では、深度距離Ｄは、ユーザインターフェースボックス２８１２の深度寸法に対応する。
【０４５３】
深度距離Ｄは、種々の方法で測定されることができる。いくつかの実施形態では、深度距離Ｄは、親アプリケーションボックス２８２２の表面からユーザインターフェースボックス２８１２の対応物表面まで測定される。例えば、深度距離Ｄは、図２８に示されるように、親アプリケーションボックス２８２２の正面表面からユーザインターフェースボックス２８１２の正面表面まで測定されることができる。他の実施形態では、固定深度距離Ｄは、親アプリケーションボックス２８２２内の親アプリケーション画像データ２８２０の深度平面からユーザインターフェースボックス２８１２内のユーザインターフェース画像データ２８１０の深度平面まで測定されることができる。
【０４５４】
ユーザインターフェース画像データ２８１０と親アプリケーション画像データ２８２０との間の深度距離Ｄは、親アプリケーションボックス２８２２またはユーザインターフェースボックス２８１２のいずれかが移動されるときでも、ＶＲ／ＡＲ／ＭＲシステム２００によって、固定値に維持されることができる。例えば、コマンドが、親アプリケーションボックス２８２２の深度場所を移動させ、および／またはボックス２８２２内の親アプリケーション画像データ２８２０の深度場所を移動させるように発行される（例えば、ユーザ２８０５によって、または親アプリケーション自体によって）場合、ウェアラブルＶＲ／ＡＲ／ＭＲシステム２００は、固定深度距離Ｄを維持するように、深度方向において対応する量だけユーザインターフェースボックス２８１２および／またボックス２８１２内のユーザインターフェース画像データ２８１０を自動的に移動させることができる。
【０４５５】
親アプリケーション画像データ２８２０の全部または一部と関連付けられたユーザインターフェース画像データ２８１０（例えば、仮想キーボード）の全部または一部との間および／または親アプリケーションボックス２８２２とユーザインターフェースボックス２８１２との間の固定深度距離を維持することによって、ユーザインターフェース体験（例えば、タイプ体験）は、向上されることができる。明確に異なる深度または深度平面は、ユーザインターフェース層と親アプリケーション層との間で容易に区別するユーザ２８０５の能力を改良する一方、固定距離Ｄは、ユーザが２つのアプリケーションが相互に関連することをコンテキスト的に理解することに役立つ。本配列はまた、ユーザインターフェースの背後の親アプリケーションコンテンツが、ユーザインターフェースが親アプリケーション層と同一平面上にある場合より可視および可読となることを可能にする。
【０４５６】
加えて、固定距離Ｄは、種々のアプリケーションをＶＲ／ＡＲ／ＭＲシステム２００上で使用する間、ユーザが順応しなければならない、輻輳・開散運動−遠近調節プッシュアップの入換の回数を限定することができる。輻輳・開散運動−遠近調節プッシュアップは、親アプリケーション画像データ２８２０とユーザインターフェース画像データ２８１０との間で往復して見ている間、異なる距離に合焦させるときにユーザの眼によって被られる歪みを説明する、用語である。本歪みは、全てのユーザによって直ちに知覚されない場合があるが、一部のユーザにとって、経時的に不快感を生じさせ得る。
【０４５７】
輻輳・開散運動−遠近調節プッシュアップと関連付けられた焦点距離偏移が、比較的に多くの場合、キーボードキーおよびタイプされるテキストが異なる深度に位置するため、仮想キーボードのようなユーザインターフェースを用いて生じ得る。これらの深度間の距離が大きいほど、ユーザの眼によって被られる歪みは大きくなる。しかし、深度間の距離が小さいほど、ユーザがアプリケーション画像データ２８２０とユーザインターフェース画像データ２８１０との間で区別することがより困難になる。これらの２つの要因間の良好な平衡をとり得る、深度距離Ｄに関する値の範囲が存在する。いくつかの実施形態では、深度距離Ｄは、１０〜３０インチである。いくつかの実施形態では、深度距離Ｄは、１５〜２０インチである。いくつかの実施形態では、深度距離Ｄに関する１６．８５インチの値が、良好に作用することが見出されている。
【０４５８】
いくつかの実施形態では、ユーザインターフェースアプリケーションは、親アプリケーションまたはユーザからのコマンドによって呼び出されることができる。ユーザインターフェースアプリケーションが、呼び出されると、ユーザインターフェースボックス２８１２は、親アプリケーションまたはユーザによって規定されたスポーン地点に位置することができる。例えば、親アプリケーションは、ローカル座標のセット（例えば、親アプリケーションボックス２８２２に対して規定された座標）を提供することができ、これは、ユーザインターフェースボックス２８１２上または該ユーザインターフェースボックス内の特定の点が位置すべき場所を示す。
【０４５９】
いくつかの実施形態では、ローカル座標は、側方（ｘ、ｙ）座標のみを規定する必要があり、ｚ座標は、固定深度距離Ｄに基づいて決定されることができる。しかし、ユーザインターフェース画像データ２８１０が、単に、規定された側方（ｘ、ｙ）座標および親アプリケーション画像データ２８２０からの固定深度距離に表示される場合、実際には、意図される場所に位置付けられるようにユーザ２８０５に現れない場合がある。これは、親アプリケーションボックス２８２２およびユーザインターフェースボックス２８１２がユーザの視点に対して位置する場所に応じて、例えば、親アプリケーション画像データ２８２０とユーザインターフェース画像データ２８１０との間の深度距離Ｄがユーザの視点からのある程度の見掛け側方偏移を導入し得るためである。
【０４６０】
例えば、親アプリケーションによって与えられるローカル座標は、ユーザインターフェースボックス２８１２を親アプリケーションボックス２８２２の底部と同一平面に位置付けるように意図され得る。しかし、２つのボックスが、ユーザの視点の上方または下方に位置する場合、ユーザインターフェースボックス２８１２は、代わりに、深度距離Ｄに応じて、親アプリケーションボックス２８２２に重複するようにユーザ２８０５に現れ得る、または２つのボックス間に間隙が存在するようにユーザ２８０５に現れ得る。
【０４６１】
したがって、いくつかの実施形態では、ＶＲ／ＡＲ／ＭＲシステム２００は、光線をローカル座標によって規定された点からユーザの視点に向かって投影することができる。ＶＲ／ＡＲ／ＭＲシステム２００は、次いで、投影された光線が親アプリケーション画像データ２８２０および／またはボックス２８２２からの所望の深度距離Ｄに位置する平面と交差する、点を計算することができる。ユーザインターフェース画像データ２８１０および／またはボックス２８１２は、次いで、交点のその点に基づく、スポーン地点に位置付けられることができる。例えば、ユーザインターフェースボックス２８１２の正面表面の上部縁の中央（またはユーザインターフェースボックス上または該ユーザインターフェースボックス内の任意の他の規定された点）が、交点に位置付けられることができる。このように、ユーザインターフェース画像データ２８１０および／またはボックス２８２２は、親アプリケーションボックス２８２２およびユーザインターフェースボックス２８１２がユーザの視点に対する場所にかかわらず、所望の位置に位置するようにユーザ２８０５に現れるであろう。
【０４６２】
他の実施形態では、ユーザインターフェースを位置させるために提供されるローカル座標が、親アプリケーションボックス２８２２の内側にある場合、ＶＲ／ＡＲ／ＭＲシステム２００は、ユーザ２０５からローカル座標によって規定された点までの通視線に沿って親アプリケーションボックス２８２２の外側にあるスポーン地点を計算することができる（これは、親アプリケーションボックス２８２２およびユーザインターフェースボックス２８１２が重複することを防止するために行われることができる）。例えば、ＶＲ／ＡＲ／ＭＲシステム２００は、光線をローカル座標によって規定された点からユーザ２０５の視点に向かって投影することができる。ＶＲ／ＡＲ／ＭＲシステム２００は、次いで、投影された光線が親アプリケーションボックス２８２２の正面表面の平面と交差する場所を計算することができる。ユーザインターフェースボックス２８１２は、次いで、交点に基づいて、スポーンされることができる。例えば、ユーザインターフェースボックス２８１２の背面の上部縁の中心（またはユーザインターフェースボックス上または該ユーザインターフェースボックス内の任意の他の規定された点）が、交点に位置付けられることができる。ユーザインターフェースボックス２８１２の深度寸法が、固定深度距離Ｄと等しい場合、かつユーザインターフェース画像データ２８１０が、ユーザインターフェースボックスの正面表面に表示される場合、ユーザインターフェース画像データは、親アプリケーションボックス２８２２からの正しい距離に位置するであろう。
【０４６３】
いくつかの実施形態では、ユーザインターフェース画像データ２８１０および／またはボックス２８１２は、親アプリケーション画像データ２８２０および／またはボックス２８２２に側方に触れていることが要求される。図２９Ａ−２９Ｅは、許容空間関係および禁止空間関係の実施例を図示する。図２９Ａは、ユーザインターフェースボックス２８１２が親アプリケーションボックス２８２２と完全に側方に重複する、実施例を図示する。図２９Ｂは、ユーザインターフェースボックス２８１２が親アプリケーションボックス２８２２と部分的に側方に重複する、実施例を図示する。図２９Ｃは、ユーザインターフェースボックス２８１２の縁が親アプリケーションボックス２８２２の縁に側方に触れている、実施例を図示する。図２９Ｄは、ユーザインターフェースボックス２８１２の角が親アプリケーションボックス２８２２の角に側方に触れている、実施例を図示する。一方、図２９Ｅは、ユーザインターフェースボックス２８１２のいずれの部分も親アプリケーションボックス２８２２の任意の部分に側方に触れていない、実施例を図示する。ユーザインターフェースボックス２８１２が親アプリケーションボックス２８２２に側方に触れていることが要求される、実施形態では、図２９Ａ−２９Ｄに示される配列は、許容される一方、図２９Ｅに示される配列は、許容されない。他の実施形態では、ユーザインターフェース画像データ２８１０および／またはボックス２８１２は、親アプリケーション画像データ２８２０および／またはボックス２８２２に対して他の相対的空間関係に配列されることができ、これは、ユーザによって規定されてもよい。
【０４６４】
いくつかの実施形態では、親アプリケーションボックス２８２２およびユーザインターフェースボックス２８１２は、整列隊形で相互にとともに移動することができる。親アプリケーションボックス２８２２を移動させるコマンドが、ユーザ２８０５または親アプリケーション自体から受信される場合、ユーザインターフェースボックス２８１２は、対応する量だけ移動されることができる。例えば、ユーザインターフェースボックス２８１２は、親アプリケーションボックス２８２２と同一方向に、同一量だけ移動されることができる。または、ユーザインターフェースボックス２８１２は、２つのボックス２８１２、２８２２間の同一見掛け相対的位置を維持する方向に、そのような量だけ移動されることができる。上記に議論されるように、２つのボックス２８１２、２８２２の間の見掛け相対的位置は、それらがユーザの視点に対して位置する場所およびボックス間の深度距離Ｄに依存し得る。したがって、コマンドが、親アプリケーションボックス２８２２を移動させるように発行される場合、上記に説明される光線投影技法が、ユーザインターフェースボックス２８１２のための新しい位置を決定するために使用されることができる。他の実施形態では、２つのボックス２８１２、２８２２間の位置は、固定され、見掛け相対的位置は、考慮されない。
【０４６５】
いくつかの実施形態では、親アプリケーションは、ユーザインターフェースアプリケーションが、親アプリケーションボックス２８２２が操作されていることを通知され得ず、したがって、その独自の対応する移動挙動を提供することが不可能であり得るため、ユーザインターフェースボックス２８１２の移動を制御する。これは、親アプリケーションボックス２８２２の操作の開始時、ユーザインターフェースボックス２８１２を親アプリケーションボックス２８２２のシーングラフ子にすることによって遂行されることができる。シーングラフ子として、親アプリケーションボックス２８２２に適用される移動は、ユーザインターフェースボックス２８１２に自動的に適用されることができる。親アプリケーションボックス２８２２の操作の終了時、シーングラフ親−子関係は、解除されることができ、ユーザインターフェースボックス２８１２は、操作に先立った状態のように、再び、ルートシーングラフオブジェクトにされることができる。
【０４６６】
いくつかの実施形態では、親アプリケーションボックス２８２２およびユーザインターフェースボックス２８１２は、ともに移動するが、正確な整列隊形ではない。代わりに、親アプリケーションボックス２８２２とユーザインターフェースボックス２８１２との間の相対的位置付けは、ボックス間の側方が触れている状態が維持される限り（例えば、図２９Ａ−２９Ｄに図示されるように）、変化することができる。図３０は、本タイプの移動を図示する、フローチャート３０００である。
【０４６７】
ブロック３０１０では、親アプリケーション画像データ２８２０は、親アプリケーションボックス２８２２等の第１の空間体積に表示される。一方、ユーザインターフェース画像データ２８１０は、ユーザインターフェースボックス２８１２等の第２の空間体積に表示される。ブロック３０２０に記載されるように、ユーザインターフェース画像データ２８１０は、親アプリケーション画像データ２８２０から固定深度距離Ｄに表示されることができる。
【０４６８】
ブロック３０３０では、空間体積のうちの一方（例えば、親アプリケーションボックス２８２２）が、他方に対して側方に移動される。ブロック３０４０では、他方の空間体積（例えば、ユーザインターフェースボックス２８１２）の場所が、２つの空間体積間で依然として側方に触れている状態が存在する限り、移動を伴わずに維持される。これは、親アプリケーションボックス２８２２内の少なくとも１つの点およびユーザインターフェースボックス２８１２内の少なくとも１つの点が隣接する側方座標を有する、実際に側方に触れている状態を指し得る。また、ユーザの視点から見掛け上側方に触れている状態を指し得る（図３１に関してさらに議論されるように）。ブロック３０５０では、第１の空間体積（例えば、親アプリケーションボックス２８２２）の移動が、第２の空間体積（例えば、ユーザインターフェースボックス２８１２）にもはや側方に触れていない状態をもたらすであろう場合、第２の空間体積もまた、側方に触れている状態を維持するように、移動されることができる。
【０４６９】
図３１は、フローチャート３１００であって、これは、図３０に示される方法３０００のさらなる詳細を図示する。ブロック３１１０では、第１の空間体積（例えば、親アプリケーションボックス２８２２）の新しい水平位置（図示されるｘ−方向）が、決定される。次いで、ブロック３１２０では、ＶＲ／ＡＲ／ＭＲシステム２００が、光線を第２の空間体積の角（例えば、ユーザインターフェースボックス２８１２の背面の角）からユーザの視点に向かって投影する。ブロック３１３０では、投影された光線のうちの少なくとも１つが、その新しい水平位置において、第１の空間体積（例えば、親アプリケーションボックス２８２２）と交差する場合、第２の空間体積（例えば、ユーザインターフェースボックス２８１２）の水平位置は、維持される。そうでなければ、ブロック３１４０では、第２の空間体積（例えば、ユーザインターフェースボックス２８１２）が、第１の空間体積（例えば、親アプリケーションボックス２８２２）の水平移動に対応する量だけ水平に移動されることができる。または、第２の空間体積（例えば、ユーザインターフェースボックス２８１２）が、少なくとも第１の空間体積（例えば、親アプリケーションボックス２８２２）との水平接触を維持するために必要である量だけ水平に移動されることができる。
【０４７０】
次いで、ブロック３１５０−３１８０では、類似ステップが、第１の空間体積（例えば、親アプリケーションボックス２８２２）の新しい垂直位置（図示されるｙ−方向）のために実施される。すなわち、ブロック３１５０では、第１の空間体積（例えば、親アプリケーションボックス２８２２）の新しい垂直位置が、決定される。次いで、ブロック３１６０では、ＶＲ／ＡＲ／ＭＲシステム２００が、光線を第２の空間体積の角（例えば、ユーザインターフェースボックス２８１２の背面の角）からユーザの視点に向かって投影する。ブロック３１７０では、投影された光線のうちの少なくとも１つが、その新しい垂直位置において、第１の空間体積（例えば、親アプリケーションボックス２８２２）と交差する場合、第２の空間体積（例えば、ユーザインターフェースボックス２８１２）の垂直位置は、維持される。そうでなければ、ブロック３１８０では、第２の空間体積（例えば、ユーザインターフェースボックス２８１２）が、第１の空間体積（例えば、親アプリケーションボックス２８２２）の垂直移動に対応する量だけ垂直に移動されることができる。または、第２の空間体積（例えば、ユーザインターフェースボックス２８１２）は、少なくとも第１の空間体積（例えば、親アプリケーションボックス２８２２）との垂直接触を維持するために必要である量だけ垂直に移動されることができる。
【０４７１】
したがって、親アプリケーションボックス２８２２またはユーザインターフェースボックス２８１２のいずれかは、他方に対して側方に「摺動」するように、操作を介して移動されることが可能にされる。しかし、本移動のｘ−ｙ側方範囲は、ボックス２８１２、２８２２のうちの一方がもはや側方接触しないほど他方から十分に離れるように摺動しないように、制約されることができる。図３１は、水平移動が最初に行われ、次いで、垂直移動となる、移動が水平および垂直成分に分離される、プロセスを図示するが、他の実施形態では、垂直移動は、水平移動の前に行われることができる、または移動は、それらを水平および垂直成分に分離せずに行われることができる。
実施例
【０４７２】
いくつかの実施例では、方法は、データを複数の深度に表示することが可能な仮想現実、拡張現実、または複合現実システムを使用して、第１のアプリケーションと関連付けられた画像データの少なくとも一部を第１の深度に表示するステップと、第２のアプリケーションと関連付けられた画像データの少なくとも一部を第２の深度に表示するステップとを含み、第１および第２のアプリケーションは、相互に関連し、第２の深度は、第１の深度から固定距離にあるように選択される。
【０４７３】
先行実施例のいずれかでは、第２のアプリケーションは、ユーザが第１のアプリケーションと相互作用することを可能にする、ユーザインターフェースを含んでもよい。
【０４７４】
先行実施例のいずれかでは、第２のアプリケーションは、キーボードを含んでもよい。
【０４７５】
先行実施例のいずれかでは、固定距離は、１０〜３０インチであってもよい。
【０４７６】
先行実施例のいずれかでは、固定距離は、１５〜２０インチであってもよい。
【０４７７】
先行実施例のいずれかでは、本方法はさらに、コマンドに応答して、第１のアプリケーションと関連付けられた画像データを移動させるステップと、固定距離を維持するように、第２のアプリケーションと関連付けられた画像データを自動的に移動させるステップとを含んでもよい。
【０４７８】
先行実施例のいずれかでは、第１のアプリケーションと関連付けられた画像データは、第１の空間体積内に表示されてもよく、第２のアプリケーションと関連付けられた画像データは、第２の空間体積内に表示されてもよい。
【０４７９】
先行実施例のいずれかでは、固定距離は、第１の空間体積の正面表面から第２の空間体積の正面表面まで測定されてもよい。
【０４８０】
先行実施例のいずれかでは、第１の空間体積の正面表面および第２の空間体積の背面表面は、隣接してもよい。
【０４８１】
先行実施例のいずれかでは、第１のアプリケーションと関連付けられた画像データは、少なくとも第１のエリア内に表示されてもよく、第２のアプリケーションと関連付けられた画像データは、少なくとも第２のエリア内に表示されてもよい。
【０４８２】
先行実施例のいずれかでは、第１のエリアおよび第２のエリアは、相互に側方に触れていてもよい。
【０４８３】
先行実施例のいずれかでは、第１のエリアの少なくとも角は、第２のエリアの少なくとも角に側方に触れていてもよい。
【０４８４】
先行実施例のいずれかでは、第１のエリアの少なくとも縁は、第２のエリアの少なくとも縁に側方に触れていてもよい。
【０４８５】
先行実施例のいずれかでは、第１のエリアおよび第２のエリアは、相互に側方に重複してもよい。
【０４８６】
先行実施例のいずれかでは、本方法はさらに、コマンドに応答して、第１のエリアを側方に移動させるステップと、第１のエリアおよび第２のエリアが相互に側方に触れている限り、第２のエリアの側方位置を維持するステップとを含んでもよい。
【０４８７】
先行実施例のいずれかでは、本方法はさらに、第１のエリアおよび第２のエリアがもはや相互に側方に触れていなくなると、第１のエリアと第２のエリアとの間の側方接触を維持するように、第２のエリアを側方に移動させるステップを含んでもよい。
【０４８８】
先行実施例のいずれかでは、本方法はさらに、１つ以上の光線を第２のエリアの１つ以上の周辺点からユーザの視点に向かって投影させ、光線のうちの少なくとも１つが第１のエリアと交差するかどうかを試験することによって、第１のエリアおよび第２のエリアが相互に側方に触れているかどうかを決定するステップを含んでもよい。
【０４８９】
先行実施例のいずれかでは、１つ以上の周辺点は、第２のエリアの全ての角を含んでもよい。
【０４９０】
いくつかの実施例では、システムは、データを複数の深度に表示することが可能な仮想現実、拡張現実、または複合現実ディスプレイと、第１のアプリケーションと関連付けられた画像データの少なくとも一部を第１の深度に表示し、第２のアプリケーションと関連付けられた画像データの少なくとも一部を第２の深度に表示し、第１および第２のアプリケーションは、相互に関連し、第２の深度は、第１の深度から固定距離にあるように選択されるように構成される、ハードウェアプロセッサとを備える。
【０４９１】
先行実施例のいずれかでは、第２のアプリケーションは、ユーザが第１のアプリケーションと相互作用することを可能にする、ユーザインターフェースを含んでもよい。
【０４９２】
先行実施例のいずれかでは、第２のアプリケーションは、キーボードを含んでもよい。
【０４９３】
先行実施例のいずれかでは、固定距離は、１０〜３０インチであってもよい。
【０４９４】
先行実施例のいずれかでは、固定距離は、１５〜２０インチであってもよい。
【０４９５】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、コマンドに応答して、第１のアプリケーションと関連付けられた画像データを移動させ、固定距離を維持するように、第２のアプリケーションと関連付けられた画像データを自動的に移動させるように構成されてもよい。
【０４９６】
先行実施例のいずれかでは、第１のアプリケーションと関連付けられた画像データは、第１の空間体積内に表示されてもよく、第２のアプリケーションと関連付けられた画像データは、第２の空間体積内に表示されてもよい。
【０４９７】
先行実施例のいずれかでは、固定距離は、第１の空間体積の正面表面から第２の空間体積の正面表面まで測定されてもよい。
【０４９８】
先行実施例のいずれかでは、第１の空間体積の正面表面および第２の空間体積の背面表面は、隣接してもよい。
【０４９９】
先行実施例のいずれかでは、第１のアプリケーションと関連付けられた画像データは、少なくとも第１のエリア内に表示されてもよく、第２のアプリケーションと関連付けられた画像データは、少なくとも第２のエリア内に表示されてもよい。
【０５００】
先行実施例のいずれかでは、第１のエリアおよび第２のエリアは、相互に側方に触れていてもよい。
【０５０１】
先行実施例のいずれかでは、第１のエリアの少なくとも角は、第２のエリアの少なくとも角に側方に触れていてもよい。
【０５０２】
先行実施例のいずれかでは、第１のエリアの少なくとも縁は、第２のエリアの少なくとも縁に側方に触れていてもよい。
【０５０３】
先行実施例のいずれかでは、第１のエリアおよび第２のエリアは、相互に側方に重複してもよい。
【０５０４】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、コマンドに応答して、第１のエリアを側方に移動させ、第１のエリアおよび第２のエリアが相互に側方に触れている限り、第２のエリアの側方位置を維持するように構成されてもよい。
【０５０５】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、第１のエリアおよび第２のエリアがもはや相互に側方に触れていなくなると、第１のエリアと第２のエリアとの間の側方接触を維持するように、第２のエリアを側方に移動させるように構成されてもよい。
【０５０６】
先行実施例のいずれかでは、ハードウェアプロセッサはさらに、１つ以上の光線を第２のエリアの１つ以上の周辺点からユーザの視点に向かって投影させ、光線のうちの少なくとも１つが第１のエリアと交差するかどうかを試験することによって、第１のエリアおよび第２のエリアが相互に側方に触れているかどうかを決定するように構成されてもよい。
【０５０７】
先行実施例のいずれかでは、１つ以上の周辺点は、第２のエリアの全ての角を含んでもよい。
【０５０８】
いくつかの実施例では、非一過性コンピュータ可読媒体は、ハードウェアプロセッサによって読み取られると、ハードウェアプロセッサに、データを複数の深度に表示することが可能な仮想現実、拡張現実、または複合現実システムを使用して、第１のアプリケーションと関連付けられた画像データの少なくとも一部を第１の深度に表示するステップと、第２のアプリケーションと関連付けられた画像データの少なくとも一部を第２の深度に表示するステップとを含み、第１および第２のアプリケーションは、相互に関連し、第２の深度は、第１の深度から固定距離にあるように選択される、方法を実施させる、命令を備えてもよい。
【０５０９】
先行実施例のいずれかでは、第２のアプリケーションは、ユーザが第１のアプリケーションと相互作用することを可能にする、ユーザインターフェースを含んでもよい。
【０５１０】
先行実施例のいずれかでは、第２のアプリケーションは、キーボードを含んでもよい。
【０５１１】
先行実施例のいずれかでは、固定距離は、１０〜３０インチであってもよい。
【０５１２】
先行実施例のいずれかでは、固定距離は、１５〜２０インチであってもよい。
【０５１３】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、コマンドに応答して、第１のアプリケーションと関連付けられた画像データを移動させるステップと、固定距離を維持するように、第２のアプリケーションと関連付けられた画像データを自動的に移動させるステップとを含んでもよい。
【０５１４】
先行実施例のいずれかでは、第１のアプリケーションと関連付けられた画像データは、第１の空間体積内に表示されてもよく、第２のアプリケーションと関連付けられた画像データは、第２の空間体積内に表示されてもよい。
【０５１５】
先行実施例のいずれかでは、固定距離は、第１の空間体積の正面表面から第２の空間体積の正面表面まで測定されてもよい。
【０５１６】
先行実施例のいずれかでは、第１の空間体積の正面表面および第２の空間体積の背面表面は、隣接してもよい。
【０５１７】
先行実施例のいずれかでは、第１のアプリケーションと関連付けられた画像データは、少なくとも第１のエリア内に表示されてもよく、第２のアプリケーションと関連付けられた画像データは、少なくとも第２のエリア内に表示されてもよい。
【０５１８】
先行実施例のいずれかでは、第１のエリアおよび第２のエリアは、相互に側方に触れていてもよい。
【０５１９】
先行実施例のいずれかでは、第１のエリアの少なくとも角は、第２のエリアの少なくとも角に側方に触れていてもよい。
【０５２０】
先行実施例のいずれかでは、第１のエリアの少なくとも縁は、第２のエリアの少なくとも縁に側方に触れていてもよい。
【０５２１】
先行実施例のいずれかでは、第１のエリアおよび第２のエリアは、相互に側方に重複してもよい。
【０５２２】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、コマンドに応答して、第１のエリアを側方に移動させるステップと、第１のエリアおよび第２のエリアが相互に側方に触れている限り、第２のエリアの側方位置を維持するステップとを含んでもよい。
【０５２３】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、第１のエリアおよび第２のエリアがもはや相互に側方に触れていなくなると、第１のエリアと第２のエリアとの間の側方接触を維持するように、第２のエリアを側方に移動させるステップを含んでもよい。
【０５２４】
先行実施例のいずれかでは、コンピュータ可読媒体によって引き起こされる方法はさらに、１つ以上の光線を第２のエリアの１つ以上の周辺点からユーザの視点に向かって投影させ、光線のうちの少なくとも１つが第１のエリアと交差するかどうかを試験することによって、第１のエリアおよび第２のエリアが相互に側方に触れているかどうかを決定するステップを含んでもよい。
【０５２５】
先行実施例のいずれかでは、１つ以上の周辺点は、第２のエリアの全ての角を含んでもよい。
結論
【０５２６】
本明細書に説明される、および／または添付される図に描写されるプロセス、方法、およびアルゴリズムはそれぞれ、具体的かつ特定のコンピュータ命令を実行するように構成される、１つ以上の物理的コンピューティングシステム、特定用途向け回路、および／または電子ハードウェア（集合的に、ハードウェアプロセッサと称される）によって実行される、コードモジュールにおいて具現化され、それによって完全または部分的に自動化され得る。例えば、コンピューティングシステムは、具体的コンピュータ命令とともにプログラムされた汎用コンピュータ（例えば、サーバ）または専用コンピュータ、専用回路等を含むことができる。コードモジュールは、実行可能プログラムにコンパイルおよびリンクされる、動的リンクライブラリ内にインストールされ得る、または解釈されるプログラミング言語において書き込まれ得る。いくつかの実装では、特定の動作および方法が、所与の機能に特有の回路によって実施され得る。
【０５２７】
さらに、本開示の機能性のある実装は、十分に数学的、コンピュータ的、または技術的に複雑であるため、（適切な特殊化された実行可能命令を利用する）特定用途向けハードウェアまたは１つ以上の物理的コンピューティングデバイスは、例えば、関与する計算の量または複雑性に起因して、または結果を実質的にリアルタイムで提供するために、機能性を実施する必要があり得る。例えば、ビデオは、多くのフレームを含み、各フレームは、数百万のピクセルを有し得、具体的にプログラムされたコンピュータハードウェアは、商業的に妥当な時間量において所望の画像処理タスクまたは用途を提供するようにビデオデータを処理する必要がある。
【０５２８】
コードモジュールまたは任意のタイプのデータは、ハードドライブ、ソリッドステートメモリ、ランダムアクセスメモリ（ＲＡＭ）、読取専用メモリ（ＲＯＭ）、光学ディスク、揮発性または不揮発性記憶装置、同一物の組み合わせ、および／または同等物を含む、物理的コンピュータ記憶装置等の任意のタイプの非一過性コンピュータ可読媒体上に記憶され得る。本方法およびモジュール（またはデータ）はまた、無線ベースおよび有線／ケーブルベースの媒体を含む、種々のコンピュータ可読伝送媒体上で生成されたデータ信号として（例えば、搬送波または他のアナログまたはデジタル伝搬信号の一部として）伝送され得、種々の形態（例えば、単一または多重化アナログ信号の一部として、または複数の離散デジタルパケットまたはフレームとして）をとり得る。開示されるプロセスまたはプロセスステップの結果は、任意のタイプの非一過性有形コンピュータ記憶装置内に持続的または別様に記憶され得る、またはコンピュータ可読伝送媒体を介して通信され得る。
【０５２９】
本明細書に説明される、および／または添付される図に描写されるフロー図における任意のプロセス、ブロック、状態、ステップ、または機能性は、プロセスにおいて具体的機能（例えば、論理または算術）またはステップを実装するための１つ以上の実行可能命令を含む、コードモジュール、セグメント、またはコードの一部を潜在的に表すものとして理解されたい。種々のプロセス、ブロック、状態、ステップ、または機能性は、組み合わせられる、再配列される、追加される、削除される、修正される、または別様に本明細書に提供される例証的実施例から変更されることができる。いくつかの実施形態では、付加的または異なるコンピューティングシステムまたはコードモジュールが、本明細書に説明される機能性のいくつかまたは全てを実施し得る。本明細書に説明される方法およびプロセスはまた、任意の特定のシーケンスに限定されず、それに関連するブロック、ステップ、または状態は、適切な他のシーケンスで、例えば、連続して、並行して、またはある他の様式で実施されることができる。タスクまたはイベントが、開示される例示的実施形態に追加される、またはそれから除去され得る。さらに、本明細書に説明される実装における種々のシステムコンポーネントの分離は、例証を目的とし、全ての実装においてそのような分離を要求するものとして理解されるべきではない。説明されるプログラムコンポーネント、方法、およびシステムは、概して、単一のコンピュータ製品においてともに統合される、または複数のコンピュータ製品にパッケージ化され得ることを理解されたい。多くの実装変形例が、可能である。
【０５３０】
本プロセス、方法、およびシステムは、ネットワーク（または分散）コンピューティング環境において実装され得る。ネットワーク環境は、企業全体コンピュータネットワーク、イントラネット、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、クラウドコンピューティングネットワーク、クラウドソースコンピューティングネットワーク、インターネット、およびワールドワイドウェブを含む。ネットワークは、有線または無線ネットワークまたは任意の他のタイプの通信ネットワークであり得る。
【０５３１】
本開示のシステムおよび方法は、それぞれ、いくつかの革新的側面を有し、そのうちのいかなるものも、本明細書に開示される望ましい属性に単独で関与しない、またはそのために要求されない。上記に説明される種々の特徴およびプロセスは、相互に独立して使用され得る、または種々の方法で組み合わせられ得る。全ての可能な組み合わせおよび副次的組み合わせが、本開示の範囲内に該当することが意図される。本開示に説明される実装の種々の修正が、当業者に容易に明白であり得、本明細書に定義される一般原理は、本開示の精神または範囲から逸脱することなく、他の実装に適用され得る。したがって、請求項は、本明細書に示される実装に限定されることを意図されず、本明細書に開示される本開示、原理、および新規の特徴と一貫する最も広い範囲を与えられるべきである。
【０５３２】
別個の実装の文脈において本明細書に説明されるある特徴はまた、単一の実装における組み合わせにおいて実装されることができる。逆に、単一の実装の文脈において説明される種々の特徴もまた、複数の実装において別個に、または任意の好適な副次的組み合わせにおいて実装されることができる。さらに、特徴がある組み合わせにおいて作用するものとして上記に説明され、さらに、そのようなものとして最初に請求され得るが、請求される組み合わせからの１つ以上の特徴は、いくつかの場合では、組み合わせから削除されることができ、請求される組み合わせは、副次的組み合わせまたは副次的組み合わせの変形例を対象とし得る。いかなる単一の特徴または特徴のグループも、あらゆる実施形態に必要または必須ではない。
【０５３３】
とりわけ、「〜できる（ｃａｎ）」、「〜し得る（ｃｏｕｌｄ）」、「〜し得る（ｍｉｇｈｔ）」、「〜し得る（ｍａｙ）」、「例えば（ｅ．ｇ．）」、および同等物等、本明細書で使用される条件文は、別様に具体的に記載されない限り、または使用されるような文脈内で別様に理解されない限り、概して、ある実施形態がある特徴、要素、および／またはステップを含む一方、他の実施形態がそれらを含まないことを伝えることが意図される。したがって、そのような条件文は、概して、特徴、要素、および／またはステップが、１つ以上の実施形態に対していかようにも要求されること、または１つ以上の実施形態が、著者の入力または促しの有無を問わず、これらの特徴、要素、および／またはステップが任意の特定の実施形態において含まれる、または実施されるべきかどうかを決定するための論理を必然的に含むことを示唆することを意図されない。用語「〜を備える」、「〜を含む」、「〜を有する」、および同等物は、同義語であり、非限定的方式で包括的に使用され、付加的要素、特徴、行為、動作等を除外しない。また、用語「または」は、その包括的意味において使用され（およびその排他的意味において使用されず）、したがって、例えば、要素のリストを接続するために使用されると、用語「または」は、リスト内の要素のうちの１つ、いくつか、または全てを意味する。加えて、本願および添付される請求項で使用されるような冠詞「ａ」、「ａｎ」、および「ｔｈｅ」は、別様に規定されない限り、「１つ以上の」または「少なくとも１つ」を意味するように解釈されるべきである。
【０５３４】
本明細書で使用されるように、項目のリスト「〜のうちの少なくとも１つ」を指す語句は、単一の要素を含む、それらの項目の任意の組み合わせを指す。ある実施例として、「Ａ、Ｂ、またはＣのうちの少なくとも１つ」は、Ａ、Ｂ、Ｃ、ＡおよびＢ、ＡおよびＣ、ＢおよびＣ、およびＡ、Ｂ、およびＣを網羅することが意図される。語句「Ｘ、Ｙ、およびＺのうちの少なくとも１つ」等の接続文は、別様に具体的に記載されない限り、概して、項目、用語等がＸ、Ｙ、またはＺのうちの少なくとも１つであり得ることを伝えるために使用されるような文脈で別様に理解される。したがって、そのような接続文は、概して、ある実施形態が、Ｘのうちの少なくとも１つ、Ｙのうちの少なくとも１つ、およびＺのうちの少なくとも１つがそれぞれ存在するように要求することを示唆することを意図されない。
【０５３５】
同様に、動作は、特定の順序で図面に描写され得るが、これは、望ましい結果を達成するために、そのような動作が示される特定の順序でまたは連続的順序で実施されることまたは全ての図示される動作が実施されることの必要はないと認識されるべきである。さらに、図面は、フローチャートの形態で１つ以上の例示的プロセスを図式的に描写し得る。しかしながら、描写されない他の動作も、図式的に図示される例示的方法およびプロセス内に組み込まれることができる。例えば、１つ以上の付加的動作が、図示される動作のいずれかの前に、その後に、それと同時に、またはその間に実施されることができる。加えて、動作は、他の実装において再配列される、または再順序付けられ得る。ある状況では、マルチタスクおよび並列処理が、有利であり得る。さらに、上記に説明される実装における種々のシステムコンポーネントの分離は、全ての実装におけるそのような分離を要求するものとして理解されるべきではなく、説明されるプログラムコンポーネントおよびシステムは、概して、単一のソフトウェア製品においてともに統合される、または複数のソフトウェア製品にパッケージ化され得ることを理解されたい。加えて、他の実装も、以下の請求項の範囲内である。いくつかの場合では、請求項に列挙されるアクションは、異なる順序で実施され、依然として、望ましい結果を達成することができる。
【図１】
2020521217.tif 000005
【図２】
2020521217.tif 000006
【図３】
2020521217.tif 000007
【図４】
2020521217.tif 000008
【図５】
2020521217.tif 000009
【図６】
2020521217.tif 000010
【図７】
2020521217.tif 000011
【図８】
2020521217.tif 000012
【図９】
2020521217.tif 000013
【図１０】
2020521217.tif 000014
【図１１】
2020521217.tif 000015
【図１２】
2020521217.tif 000016
【図１３Ａ】
2020521217.tif 000017
【図１３Ｂ】
2020521217.tif 000018
【図１３Ｃ】
2020521217.tif 000019
【図１４】
2020521217.tif 000020
【図１５Ａ】
2020521217.tif 000021
【図１５Ｂ】
2020521217.tif 000022
【図１５Ｃ】
2020521217.tif 000023
【図１６Ａ】
2020521217.tif 000024
【図１６Ｂ】
2020521217.tif 000025
【図１６Ｃ】
2020521217.tif 000026
【図１６Ｄ】
2020521217.tif 000027
【図１７Ａ】
2020521217.tif 000028
【図１７Ｂ】
2020521217.tif 000029
【図１８】
2020521217.tif 000030
【図１９】
2020521217.tif 000031
【図２０】
2020521217.tif 000032
【図２１】
2020521217.tif 000033
【図２２】
2020521217.tif 000034
【図２３】
2020521217.tif 000035
【図２４】
2020521217.tif 000036
【図２５】
2020521217.tif 000037
【図２６】
2020521217.tif 000038
【図２７】
2020521217.tif 000039
【図２８】
2020521217.tif 000040
【図２９Ａ−２９Ｅ】
2020521217.tif 000041
【図３０】
2020521217.tif 000042
【図３１】
2020521217.tif 000043
【国際調査報告】
2020521217.tif 000044
2020521217.tif 000045
2020521217.tif 000046
2020521217.tif 000047