特許第6907366号(P6907366)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ グーグル インコーポレイテッドの特許一覧

特許6907366拡張および/または仮想現実環境におけるタッチスクリーンホバーの検出
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6907366
(24)【登録日】2021年7月2日
(45)【発行日】2021年7月21日
(54)【発明の名称】拡張および/または仮想現実環境におけるタッチスクリーンホバーの検出
(51)【国際特許分類】
   G06F 3/01 20060101AFI20210708BHJP
   G06F 3/0488 20130101ALI20210708BHJP
   G06T 19/00 20110101ALI20210708BHJP
   G09G 5/00 20060101ALI20210708BHJP
   G09G 5/377 20060101ALI20210708BHJP
【FI】
   G06F3/01 510
   G06F3/0488 160
   G06T19/00 300B
   G09G5/00 510G
   G09G5/36 520M
   G09G5/00 550C
【請求項の数】27
【外国語出願】
【全頁数】28
(21)【出願番号】特願2020-41658(P2020-41658)
(22)【出願日】2020年3月11日
(62)【分割の表示】特願2017-556859(P2017-556859)の分割
【原出願日】2016年9月1日
(65)【公開番号】特開2020-113298(P2020-113298A)
(43)【公開日】2020年7月27日
【審査請求日】2020年3月13日
(31)【優先権主張番号】62/219,423
(32)【優先日】2015年9月16日
(33)【優先権主張国】US
(31)【優先権主張番号】15/251,573
(32)【優先日】2016年8月30日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】チェン,シチ
(72)【発明者】
【氏名】ケーザー,ドミニク・フィレモン
【審査官】 星野 裕
(56)【参考文献】
【文献】 国際公開第2014/081076(WO,A1)
【文献】 特開2006−126936(JP,A)
【文献】 国際公開第2015/125626(WO,A1)
【文献】 国際公開第2013/179426(WO,A1)
【文献】 国際公開第2007/088942(WO,A1)
【文献】 米国特許出願公開第2015/0154940(US,A1)
【文献】 特開2013−125247(JP,A)
【文献】 中国特許出願公開第103019377(CN,A)
【文献】 特開2008−210359(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
G06F 3/048
G06T 19/00
G09G 5/00
G09G 5/377
(57)【特許請求の範囲】
【請求項1】
周囲環境の中で動作するヘッドマウント電子デバイスにより、仮想環境を生成するステップと、
前記周囲環境の中で動作するハンドヘルド電子デバイスのディスプレイの中に、前記ハンドヘルド電子デバイスのディスプレイの中のユーザインターフェイス上に重畳されるモノクロームスクリーンを生成する一方で、前記ユーザインターフェイスのタッチスクリーン機能を維持するステップと、
前記ヘッドマウント電子デバイスのカメラにより、前記モノクロームスクリーンの前景にある物理的物体を検出するステップと、
前記ヘッドマウント電子デバイスのプロセッサにより、前記モノクロームスクリーンの前景にある前記物理的物体の検出位置に基づいて、前記ユーザインターフェイスに対する前記検出された物理的物体の位置を求めるステップと、
前記ヘッドマウント電子デバイスにより、前記ユーザインターフェイスの仮想画像と、前記検出された物理的物体の仮想画像とを、前記ヘッドマウント電子デバイスのディスプレイに表示するステップと、
着信イベントを検出するステップとを含み、検出される前記着信イベントは、前記ヘッドマウント電子デバイスの前記ディスプレイにおいて表示されている前記仮想環境とは分離されたものであり、
前記着信イベントの検出に応じて前記仮想環境において仮想画像として仮想アラートを表示するステップをさらに含み、
前記モノクロームスクリーンの前景にある物理的物体を検出するステップは、
前記ヘッドマウント電子デバイスの前記カメラを起動するステップと、
前記ヘッドマウント電子デバイスの前記カメラを用いて、前記物理的物体と前記モノクロームスクリーンとを含む前記ハンドヘルド電子デバイスの画像を取込むステップと、
前記物理的物体の画像を、前記物理的物体を囲んでいる前記モノクロームスクリーンから分離するステップとを含み、
前記ユーザインターフェイスの仮想画像と前記検出された物理的物体の仮想画像とを前記ヘッドマウント電子デバイスのディスプレイに表示するステップは、前記検出された物理的物体の前記分離された画像を、前記モノクロームスクリーンの下にある前記ユーザインターフェイスに対する前記検出された物理的物体の実際の位置に対応する、前記ユーザインターフェイスの前記仮想画像に対する位置に、表示するステップを含み、
前記モノクロームスクリーンは、前記仮想アラートの表示に応じて、前記ユーザインターフェイス上に重畳される、方法。
【請求項2】
前記ハンドヘルド電子デバイスのディスプレイの中のユーザインターフェイス上に重畳されるモノクロームスクリーンを生成する一方で、前記ユーザインターフェイスのタッチスクリーン機能を維持するステップは、
グリーンスクリーンをレンダリングするステップと、
前記ハンドヘルド電子デバイスの前記ディスプレイに表示されたキーボード上に前記グリーンスクリーンを重畳するステップとを含む、請求項1に記載の方法。
【請求項3】
前記モノクロームスクリーンの前景にある物理的物体を検出するステップおよび前記ユーザインターフェイスに対する前記物理的物体の位置を求めるステップは、
前記グリーンスクリーンを背にした指の位置を検出するステップと、
前記ハンドヘルド電子デバイスの前記ディスプレイに表示された前記キーボードのキーの既知の配置に基づいて、前記グリーンスクリーンを背にした前記指の検出位置を、前記ハンドヘルド電子デバイスの前記ディスプレイに表示され前記グリーンスクリーンが重畳された前記キーボードに対する前記指の位置に、マッピングするステップとを含む、請求項2に記載の方法。
【請求項4】
前記指と、前記ハンドヘルド電子デバイスの前記ディスプレイに表示され前記グリーンスクリーンが重畳された前記キーボードのキーのうちの1つとの、検出された物理的接触に応じて文字入力を受信するステップと、
前記受信した文字入力を、前記ヘッドマウント電子デバイスにより生成された仮想ディスプレイに表示するステップとをさらに含む、請求項3に記載の方法。
【請求項5】
前記物理的物体を検出するステップと、前記物理的物体の位置を求めるステップと、前記ユーザインターフェイスの仮想画像と前記物理的物体の仮想画像とを表示するステップと、前記文字入力を受信するステップと、前記受信した文字入力を表示するステップとを、文字入力モードが終了するまで繰返すステップをさらに含む、請求項4に記載の方法。
【請求項6】
前記検出された物理的物体の前記分離された画像を表示するステップは、前記分離された画像を、前記ヘッドマウント電子デバイスの前記ディスプレイに、前記カメラからのパススルー画像として表示するステップを含む、請求項1〜5のいずれか1項に記載の方法。
【請求項7】
前記検出された物理的物体の前記分離された画像を表示するステップは、
前記検出された物理的物体の前記分離された画像をレンダリングするステップと、
前記検出された物理的物体の前記分離された画像のレンダリングされた画像を、前記ヘッドマウント電子デバイスの前記ディスプレイに表示するステップとを含む、請求項1〜5のいずれか1項に記載の方法。
【請求項8】
前記検出された物理的物体は、前記ヘッドマウント電子デバイスと前記ハンドヘルド電子デバイスとの間に置かれる、請求項1〜7のいずれか1項に記載の方法。
【請求項9】
ディスプレイと、カメラと、プロセッサとを含むヘッドマウント電子デバイスを備えるシステムであって、前記ヘッドマウント電子デバイスは、ハンドヘルド電子デバイスと作動的に結合されるように構成され、
前記カメラは、前記ハンドヘルド電子デバイスの画像を取込むように構成され、
前記プロセッサは、
前記ヘッドマウント電子デバイスと、前記カメラにより取込まれた前記画像の中の前記ハンドヘルド電子デバイス上のユーザインターフェイスとの間にある物理的物体を検出するように構成され、前記ユーザインターフェイスにはモノクロームスクリーンが重畳され、前記プロセッサは、
前記カメラにより取込まれた画像に基づいて前記ヘッドマウント電子デバイスにより生成された仮想シーンの中に仮想画像を表示するように構成され、前記仮想シーンの中に表示される前記仮想画像は、前記検出された物理的物体の仮想画像と、前記ハンドヘルド電子デバイスの前記ユーザインターフェイスの仮想画像とを含み、前記プロセッサは、
着信イベントを検出するように構成され、検出される前記着信イベントは、前記ヘッドマウント電子デバイスの前記ディスプレイにおいて表示されている前記仮想シーンとは分離されたものであり、前記プロセッサは、
前記着信イベントの検出に応じて前記仮想シーンにおいて仮想画像として仮想アラートを表示するように構成され、
前記物理的物体を検出することは、
前記ヘッドマウント電子デバイスの前記カメラを起動することと、
前記ヘッドマウント電子デバイスの前記カメラを用いて、前記物理的物体と前記モノクロームスクリーンとを含む前記ハンドヘルド電子デバイスの画像を取込むことと、
前記物理的物体の画像を、前記物理的物体を囲んでいる前記モノクロームスクリーンから分離することとを含み、
前記仮想シーンの中に仮想画像を表示することは、前記検出された物理的物体の前記分離された画像を、前記モノクロームスクリーンの下にある前記ユーザインターフェイスに対する前記検出された物理的物体の実際の位置に対応する、前記ユーザインターフェイスの前記仮想画像に対する位置に、表示することを含み、
前記モノクロームスクリーンは、前記仮想アラートの表示に応じて、前記ユーザインターフェイス上に重畳される、システム。
【請求項10】
前記検出された物理的物体は、ユーザの指であり、前記ユーザインターフェイスは、前記ハンドヘルド電子デバイスのディスプレイに表示される、グリーンスクリーンが重畳されたキーボードであり、
前記ヘッドマウント電子デバイスにより生成された前記仮想シーンの中に表示される前記仮想画像は、前記ハンドヘルド電子デバイスのディスプレイ上の前記キーボードの複数のキーのうちの1つの上でホバリングする前記ユーザの指の仮想画像を含む、請求項9に記載のシステム。
【請求項11】
前記プロセッサは、前記グリーンスクリーンに対する前記指の検出された位置と、前記ハンドヘルド電子デバイスのディスプレイ上の前記キーボードの複数のキーの既知の配置とに基づいて、前記ハンドヘルド電子デバイスのディスプレイ上の前記キーボードに対する前記指の位置を求めるように構成される、請求項10に記載のシステム。
【請求項12】
前記プロセッサは、前記指と、前記ハンドヘルド電子デバイスのディスプレイ上の前記キーボードのキーのうちの1つに対応する前記ディスプレイの一部との接触に応じて文字入力を受けるように構成されるとともに、前記ヘッドマウント電子デバイスにより生成された前記仮想シーンの中に表示される前記仮想画像の中に前記文字入力の仮想画像を表示するように構成される、請求項10に記載のシステム。
【請求項13】
前記ヘッドマウント電子デバイスにより生成された仮想シーンの中に仮想画像を表示するときに、前記プロセッサは、
前記検出された物理的物体の画像を、前記カメラにより取込まれた画像から分離するように構成されるとともに、
前記検出された物理的物体の前記分離された画像を、前記モノクロームスクリーンの下にある前記ユーザインターフェイスに対する前記検出された物理的物体の実際の位置に対応する、前記ユーザインターフェイスの前記仮想画像に対する位置に、表示するように構成される、請求項9〜12のいずれか1項に記載のシステム。
【請求項14】
前記検出された物理的物体の前記分離された画像を表示するときに、前記プロセッサは、前記検出された物理的物体の前記分離された画像を、前記ヘッドマウント電子デバイスにより生成された前記仮想シーンの中において、前記カメラからのパススルー画像として表示するように構成される、請求項13に記載のシステム。
【請求項15】
前記検出された物理的物体の前記分離された画像を表示するときに、前記プロセッサは、
前記検出された物理的物体の前記分離された画像の画像をレンダリングするように構成されるとともに、
前記検出された物理的物体の前記分離された画像の前記レンダリングされた画像を、前記ヘッドマウント電子デバイスにより生成された前記仮想シーンの中に表示するように構成される、請求項13に記載のシステム。
【請求項16】
前記プロセッサは、前記ユーザインターフェイスの前記仮想画像を、前記ユーザインターフェイスの個々の要素が前記ヘッドマウント電子デバイスにより表示される前記仮想シーンの中で見えるように、前記ユーザインターフェイス上に重畳された前記モノクロームスクリーンなしで、表示するように構成される、請求項13に記載のシステム。
【請求項17】
プロセッサによって実行されると前記プロセッサに方法を実行させる命令のシーケンスを含むコンピュータプログラムであって、前記方法は、
周囲環境の中で動作するヘッドマウント電子デバイスの中に仮想環境を生成するステップと、
前記ヘッドマウント電子デバイスのカメラにより、前記ヘッドマウント電子デバイスに作動的に結合されたハンドヘルド電子デバイスの画像を取込むステップと、
前記カメラにより取込まれた画像において、前記ハンドヘルド電子デバイス上のユーザインターフェイス上に重畳されたモノクロームスクリーンの前景にある物理的物体を検出するステップとを含み、前記ユーザインターフェイスは前記モノクロームスクリーンの下にある機能を維持し、
前記検出された物理的物体を、前記カメラにより取込まれた前記画像から分離し、前記分離された物理的物体の画像を生成するステップと、
前記モノクロームスクリーンの前景にある前記物理的物体の検出位置に基づいて、前記ユーザインターフェイスに対する前記検出された物理的物体の位置を検出するステップと、
前記ヘッドマウント電子デバイスにより生成された前記仮想環境の中に仮想画像を表示するステップとを含み、前記仮想画像は、前記ユーザインターフェイスの仮想画像と、前記カメラにより取込まれた画像から分離された前記物理的物体の仮想画像とを含み、
着信イベントを検出するステップを含み、検出される前記着信イベントは、生成された前記仮想環境とは分離されたものであり、
前記着信イベントの検出に応じて前記仮想環境において仮想画像として仮想アラートを表示するステップをさらに含み、
前記ヘッドマウント電子デバイスにより生成された前記仮想環境の中に仮想画像を表示するステップは、前記検出された物理的物体の前記分離された画像を、前記モノクロームスクリーンの下にある前記ユーザインターフェイスに対する前記検出された物理的物体の実際の位置に対応する、前記ユーザインターフェイスの前記仮想画像に対する位置に、表示するステップを含み、
前記モノクロームスクリーンは、前記仮想アラートの表示に応じて、前記ユーザインターフェイス上に重畳される、コンピュータプログラム。
【請求項18】
前記ヘッドマウント電子デバイスにより生成された前記仮想環境の中に仮想画像を表示するステップは、前記検出された物理的物体の前記分離された画像を、前記ヘッドマウント電子デバイスのディスプレイに、前記カメラからのパススルー画像として表示するステップをさらに含む、請求項17に記載のコンピュータプログラム。
【請求項19】
前記仮想環境において仮想アラートを表示するステップは、
前記仮想アラートとともに、ユーザ入力ウィンドウを表示するステップ含む、請求項1〜8のいずれか1項に記載の方法。
【請求項20】
前記ユーザ入力ウィンドウにおいて検出されたユーザ入力に応じて、前記仮想環境において仮想画像として新しいユーザインターフェイスを表示するステップと、
前記新しいユーザインターフェイスにおいてユーザ入力の終了を検出するステップと、
前記新しいユーザインターフェイスにおけるユーザ入力の終了の検出に応じて、前記仮想環境において、前記新しいユーザインターフェイスの表示前に表示された、前の前記ユーザインターフェイスを再開するステップとをさらに含む、請求項19に記載の方法。
【請求項21】
前記着信イベントの検出は、テキストメッセージ、通話、または電子メールの受信の検出を含む、請求項1〜8および19〜20のいずれか1項に記載の方法。
【請求項22】
前記仮想シーンにおいて仮想アラートを表示することは、
前記仮想アラートとともに、ユーザ入力ウィンドウを表示すること含む、請求項9〜16のいずれか1項に記載のシステム。
【請求項23】
前記プロセッサは、さらに、
前記ユーザ入力ウィンドウにおいて検出されたユーザ入力に応じて、前記仮想シーンにおいて仮想画像として新しいユーザインターフェイスを表示し、
前記新しいユーザインターフェイスにおいてユーザ入力の終了を検出し、
前記新しいユーザインターフェイスにおけるユーザ入力の終了の検出に応じて、前記仮想シーンにおいて、前記新しいユーザインターフェイスの表示前に表示された、前の前記ユーザインターフェイスを再開する、ように構成されている、請求項22に記載のシステム。
【請求項24】
前記着信イベントの検出は、テキストメッセージ、通話、または電子メールの受信の検出を含む、請求項9〜16および22〜23のいずれか1項に記載のシステム。
【請求項25】
前記仮想環境において仮想アラートを表示するステップは、
前記仮想アラートとともに、ユーザ入力ウィンドウを表示するステップ含む、請求項17または18に記載のコンピュータプログラム。
【請求項26】
前記方法は、
前記ユーザ入力ウィンドウにおいて検出されたユーザ入力に応じて、前記仮想環境において仮想画像として新しいユーザインターフェイスを表示するステップと、
前記新しいユーザインターフェイスにおいてユーザ入力の終了を検出するステップと、
前記新しいユーザインターフェイスにおけるユーザ入力の終了の検出に応じて、前記仮想環境において、前記新しいユーザインターフェイスの表示前に表示された、前の前記ユーザインターフェイスを再開するステップとをさらに含む、請求項25に記載のコンピュータプログラム。
【請求項27】
前記着信イベントの検出は、テキストメッセージ、通話、または電子メールの受信の検出を含む、請求項17、18、25、および26のいずれか1項に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本願は、2015年9月16日に出願された米国仮出願第62/219,423号に基づく優先権を主張する2016年8月30日に出願された米国出願第15/251,573号の継続出願でありそれに基づく優先権を主張する。これらの開示を本明細書に引用により援用する。
【0002】
本願は、その開示を本明細書に引用により援用する2015年9月16日に出願された米国仮出願第62/219,423号に基づく優先権を主張する。
【0003】
分野
本明細書は、概して没入型拡張現実および/または仮想現実システムにおける電子デバイスの検出および追跡に関する。
【背景技術】
【0004】
背景
拡張現実(augmented reality:AR)および/または仮想現実(virtual reality:VR)システムは、3次元(3D)没入型環境を生成することができる。ユーザは、この3D没入型仮想環境を、さまざまな電子デバイスとの対話を通して体験し得る。これらの電子デバイスは、たとえば、ディスプレイを含むヘルメットまたはその他のヘッドマウントデバイス、ユーザがディスプレイ装置を見るときに用いる眼鏡またはゴーグル、センサが装着された手袋、センサを含む外部ハンドヘルドデバイス、およびその他のこのような電子デバイス等を含む。仮想環境に没入すると、ユーザの仮想環境との対話はさまざまな形態を取り得る。この対話の形態は、たとえば、仮想環境における身体の動きおよび/または仮想要素との身体による対話、および/または電子デバイスの操作により、仮想環境と対話し、仮想環境を個人専用にし、制御すること等である。
【発明の概要】
【課題を解決するための手段】
【0005】
概要
ある局面において、方法は、周囲環境の中で動作するヘッドマウント電子デバイスにより、仮想環境を生成するステップと、周囲環境の中で動作するハンドヘルド電子デバイスのディスプレイの中に、ハンドヘルド電子デバイスのディスプレイの中のユーザインターフェイス上に重畳されるモノクロームスクリーンを生成する一方で、ユーザインターフェイスのタッチスクリーン機能を維持するステップと、ヘッドマウント電子デバイスのカメラにより、モノクロームスクリーンの前景にある物理的物体を検出するステップと、ヘッドマウント電子デバイスのプロセッサにより、モノクロームスクリーンの前景にある物理的物体の検出位置に基づいて、ユーザインターフェイスに対する検出された物理的物体の位置を求めるステップと、ヘッドマウント電子デバイスにより、ユーザインターフェイスの仮想画像と、検出された物理的物体の仮想画像とを、ヘッドマウント電子デバイスのディスプレイに表示するステップとを含み得る。
【0006】
別の局面において、システムは、ディスプレイと、カメラと、プロセッサとを含むヘッドマウント電子デバイスを含み得る。ヘッドマウント電子デバイスは、ハンドヘルド電子デバイスと作動的に結合されるように構成され、カメラは、ハンドヘルド電子デバイスの画像を取込むように構成され、プロセッサは、ヘッドマウント電子デバイスとハンドヘルド電子デバイスとの間で検出された物理的物体の画像を分離するように構成されるととも
に、カメラにより取込まれた画像に基づいてヘッドマウント電子デバイスが生成した仮想シーンの中に仮想画像を表示するように構成される。仮想シーンの中に表示される仮想画像は、検出された物理的物体の仮想画像と、ハンドヘルド電子デバイスのユーザインターフェイスの仮想画像とを含む。ユーザインターフェイスには、カメラにより取込まれた画像に基づいてヘッドマウント電子デバイスにより生成された仮想シーンの中でハンドヘルド電子デバイス上にレンダリングされたモノクロームスクリーンが重畳される。
【0007】
別の局面において、プロセッサによって実行されると当該プロセッサに方法を実行させる命令のシーケンスを格納し得る非一時的なコンピュータ読取可能な媒体上で実現されるコンピュータプログラムプロダクトにおいて、上記方法は、周囲環境の中で動作するヘッドマウント電子デバイスの中に仮想環境を生成するステップと、ヘッドマウント電子デバイスのカメラにより、ヘッドマウント電子デバイスに作動的に結合されたハンドヘルド電子デバイスの画像を取込むステップと、カメラにより取込まれた画像において、ハンドヘルド電子デバイス上のユーザインターフェイス上に重畳されたモノクロームスクリーンの前景にある物理的物体を検出するステップとを含み、ユーザインターフェイスはモノクロームスクリーンの下にある機能を維持する。上記方法はまた、検出された物理的物体を、カメラにより取込まれた画像から分離し、分離された物理的物体の画像を生成するステップと、モノクロームスクリーンの前景にある物理的物体の検出位置に基づいて、ユーザインターフェイスに対する検出された物理的物体の位置を検出するステップと、ヘッドマウント電子デバイスにより生成された仮想環境の中に仮想画像を表示するステップとを含み、仮想画像は、ユーザインターフェイスの仮想画像と、カメラにより取込まれた画像から分離された物理的物体の仮想画像とを含む。
【0008】
1つ以上の実装例の詳細を、添付の図面および以下の説明に記載する。その他の特徴は、明細書、図面、および特許請求の範囲から明らかであろう。
【図面の簡単な説明】
【0009】
図1】本明細書に記載の実装例に従う、ヘッドマウントディスプレイデバイスおよびハンドヘルド電子デバイスを含む拡張および/または仮想現実システムの一例を示す図である。
図2A】本明細書に記載の実装例に従う、ヘッドマウントディスプレイの一例の正面図である。
図2B】本明細書に記載の実装例に従う、ヘッドマウントディスプレイの一例の正面図である。
図3A】本明細書に記載の実装例に従う、ハンドヘルド電子デバイスの一例の正面斜視図である。
図3B】本明細書に記載の実装例に従う、ハンドヘルド電子デバイスの一例の正面斜視図である。
図4】本明細書に記載の実装例に従う、拡張および/または仮想現実システムの第1の電子デバイスおよび第2の電子デバイスのブロック図である。
図5A】本明細書に記載の実装例に従う、ハンドヘルド電子デバイスのユーザインターフェイスに対するマニュアルポインティングデバイスの位置を検出し追跡すること、および、ユーザインターフェイスで受けたマニュアル入力をヘッドマウント電子デバイスに表示することを説明する図である。
図5B】本明細書に記載の実装例に従う、ハンドヘルド電子デバイスのユーザインターフェイスに対するマニュアルポインティングデバイスの位置を検出し追跡すること、および、ユーザインターフェイスで受けたマニュアル入力をヘッドマウント電子デバイスに表示することを説明する図である。
図5C】本明細書に記載の実装例に従う、ハンドヘルド電子デバイスのユーザインターフェイスに対するマニュアルポインティングデバイスの位置を検出し追跡すること、および、ユーザインターフェイスで受けたマニュアル入力をヘッドマウント電子デバイスに表示することを説明する図である。
図5D】本明細書に記載の実装例に従う、ハンドヘルド電子デバイスのユーザインターフェイスに対するマニュアルポインティングデバイスの位置を検出し追跡すること、および、ユーザインターフェイスで受けたマニュアル入力をヘッドマウント電子デバイスに表示することを説明する図である。
図5E】本明細書に記載の実装例に従う、ハンドヘルド電子デバイスのユーザインターフェイスに対するマニュアルポインティングデバイスの位置を検出し追跡すること、および、ユーザインターフェイスで受けたマニュアル入力をヘッドマウント電子デバイスに表示することを説明する図である。
図6】本明細書に記載の実装例に従う、拡張および/または仮想現実システムにおいてハンドヘルド電子デバイスのユーザインターフェイスに対するポインティングデバイスのホバー位置を検出し追跡する方法のフローチャートである。
図7】本明細書に記載の手法を実現するために使用することが可能なコンピュータデバイスおよびモバイルコンピュータデバイスの一例を示す。
【発明を実施するための形態】
【0010】
詳細な説明
たとえばヘッドマウントディスプレイ(head mounted display:HMD)デバイスを装着し、仮想環境、たとえば3D拡張および/または仮想現実環境に没入しているユーザは、仮想環境を探検し、仮想環境と、たとえば、身体による対話(たとえば手/腕のジェスチャー、頭を動かす、歩く等)を通して、および/またはHMDの操作および/またはそれとは別の電子デバイスの操作を通して対話することにより、没入型仮想環境を体験することができる。たとえば、いくつかの実装例において、HMDが、たとえばコントローラ、スマートフォン、またはその他のこのようなハンドヘルド電子デバイス等のハンドヘルド電子デバイスとペアリングされる場合がある。ユーザは、HMDとペアリングされたハンドヘルド電子デバイスを操作することにより、HMDによって生成された仮想環境と対話することができる、および/または仮想環境に没入しながらハンドヘルド電子デバイスのその他の機能を利用することができる。
【0011】
いくつかの実装例において、ユーザは、HMDとペアリングされたハンドヘルド電子デバイスを操作することにより、HMDによって生成された仮想環境内で所望のアクションを生じさせることができる。状況によっては、HMDのディスプレイが仮想環境および/または1つ以上の仮想物体を表示しているので、ユーザがハンドヘルド電子デバイスを見るのは難しい場合があり、そのために、ユーザにとっていくつかの種類の入力はハンドヘルド電子デバイス上で行なうのが難しい場合がある。特に、ユーザにとっては、HMDを装着しながらハンドヘルド電子デバイスのユーザインターフェイスを操作するのは難しいであろう。たとえば、ユーザにとっては、ハンドヘルド電子デバイス上のキーボードを、および/またはハンドヘルド電子デバイス上のキーボードに対する指の位置を見ることができない状態で、ハンドヘルド電子デバイスのキーボードインターフェイスを用いてテキスト入力するのは難しいであろう。
【0012】
上記問題のうちの少なくともいくつかに対処するために、いくつかの実装例では、グリーンスクリーンのようなモノクロームスクリーンをレンダリングしハンドヘルド電子デバイスのディスプレイ上に重畳してもよく、特に、ユーザの手/指のホバー(hover)位置
をたとえばHMDのカメラによって検出できるようにハンドヘルド電子デバイスのユーザインターフェイスのディスプレイ上に重畳してもよい。ユーザインターフェイスのタッチスクリーン機能は、モノクロームスクリーンがユーザインターフェイス上に重畳されているので実際はディスプレイ上では見えないが、ハンドヘルド電子デバイスの表示エリア内で維持することができる。ハンドヘルド電子デバイスのユーザインターフェイスは、ユー
ザが見るため/ユーザとの対話のために、HMDによって生成された仮想環境内で仮想的にレンダリングし表示することができる。したがって、ユーザは、ユーザインターフェイスをハンドヘルド電子デバイス上で見ることはできないが、ユーザインターフェイスはHMDが生成した仮想環境内で仮想的に表示されているので、ハンドヘルド電子デバイスのユーザインターフェイスと物理的に対話し、ハンドヘルド電子デバイスの表示エリア内のユーザインターフェイスの機能を利用することができる。ユーザは、HMDが生成した仮想環境内で仮想的に表示されている仮想ユーザインターフェイスに基づいて、ユーザインターフェイスと正確に対話することができ、ユーザインターフェイスが提供する機能を利用することができる。
【0013】
いくつかの実装例において、ハンドヘルド電子デバイスのユーザインターフェイス上に重畳されているモノクロームスクリーンを背にしたユーザの指の画像取込みに基づいて検出された指のホバー位置の画像を、ユーザインターフェイスの仮想レンダリング、たとえば仮想キーボードとともに、HMDが生成した仮想環境内に仮想的に表示して、ユーザが、キーボードの仮想レンダリングとキーボード上の相対的な指の位置とを、ハンドヘルド電子デバイス上に表示されたキーボードを直接物理的に見ることができなくても、見ることができるようにして、テキスト入力を行ない易くすることができる。いくつかの実装例において、指のホバー位置を検出するためにモノクロームスクリーンまたはグリーンスクリーンをレンダリングすることにより、たとえばHMDの単純なRGBカメラで、指の位置を、事実上リアルタイムで、比較的効率が良く精密なやり方で正確に検出し追跡することができる。検出した指の位置は(たとえばユーザインターフェイスとともに)、HMDが生成した仮想環境内で、たとえば、HMDのカメラによって取込んだパススルー画像(pass through image)として、または、たとえばHMDのカメラによって取込んだ画像に基づいてHMDのプロセッサがレンダリングした仮想画像として、仮想的に表示することができる。
【0014】
図1に示される例示的な実装例において、HMD100を装着しているユーザは、たとえば、HMD100が生成した仮想環境における対話のためにHMD100と作動的に結合またはペアリングし得るコントローラ、スマートフォン、またはその他のポータブルハンドヘルド電子デバイス等の、ポータブルハンドヘルド電子デバイス102を持っている。図1に示される例において、ユーザは、ハンドヘルド電子デバイス102を縦長の向きにして右手で持っている。しかしながら、ユーザは、特定の入力インターフェイス、入力モード、およびその他のこのような要素に応じて、ポータブル電子デバイス102を、左手だけで持つ場合、右手と左手両方で持つ場合、および/または横長の向きで持つ場合もあるが、それでもHMD100が生成した仮想環境と対話することができる。
【0015】
図2Aおよび図2Bは、たとえば図1の、ユーザによって装着され、ユーザが体験することになる没入型仮想環境を生成するHMD100のような、HMDの一例の斜視図である。HMD100は、光学部品を収容することができる筐体110を含み得る。筐体110は、フレーム120に、結合たとえば回転可能に結合および/または取外し可能に装着されてもよい。このフレーム120により、筐体110をユーザの頭部に搭載または装着することができる。また、音声出力装置130がフレーム120に結合されてもよく、音声出力装置130は、たとえば、ヘッドフォンに搭載されフレーム120に結合されたスピーカを含み得る。図2Bにおいて、筐体110の前面110aは、筐体110に収容されている部品の一部が見えるように、筐体110の基部110bから回転させている。ディスプレイ140が筐体110の前面110aに搭載されてもよい。レンズ150が、筐体110の内部において、前面110aが筐体110の基部110bに対して閉じられた位置にあるときにユーザの目とディスプレイ140との間になるように搭載されてもよい。レンズ150の位置を、ユーザの目のそれぞれの光軸と位置合わせすることにより、比較的広い視野および比較的短い焦点距離を提供してもよい。
【0016】
いくつかの実装例において、HMD100はまた、各種検知システム装置を含む検知システム160と、HMD100の操作を容易にする各種制御システム装置を含む制御システム170とを備えていてもよい。制御システム170はまた、制御システム170の構成要素に作動的に結合されたプロセッサ190を含み得る。
【0017】
いくつかの実装例において、HMD100はまた、HMD100の外部の周囲または物理的もしくは現実世界の環境の静止画および/または動画を取込むことができるカメラ180を含み得る。たとえば、いくつかの実装例において、カメラ180は、HMD100に作動的に結合された、たとえば図1に示されるハンドヘルド電子デバイス102のようなハンドヘルド電子デバイスの表面、たとえばその上にユーザインターフェイスを表示することができる表示面に対する、ユーザの指および/または手の画像または一連の画像を取込むことができる。いくつかの実装例において、カメラ180は、拡張および/または仮想現実システムが動作する現実世界の環境内の要素の静止画または動画を取込むことができる。
【0018】
ハンドヘルド電子デバイス102に対するユーザの指および/または手の画像を含む、現実世界の環境のこれらの画像は、HMD100のディスプレイ140において、パススルーモードでユーザに対して表示してもよい。いくつかの実装例において、これにより、ユーザは、現実世界の環境の、撮影された要素のパススルー画像、たとえば仮想環境におけるキーボード等のユーザインターフェイスの仮想レンダリング上に重畳されたユーザの指および/または手のパススルー画像を、見ることができる。いくつかの実装例において、これにより、ユーザは、HMD100を外すことなく、そうでなければHMD100の構成を変更して筐体110をユーザの視線から外れるように移動させることなく、一時的に仮想環境から出て現実世界環境に戻ることができる。いくつかの実装例において、カメラ180は、HMD100上のカメラ180から、たとえばハンドヘルド電子デバイス102を持っているユーザの手までの距離を、皮膚の比較的安定した赤外線(IR)反応に基づいて求めることができる、深度カメラであってもよい。
【0019】
図3Aに示されるように、いくつかの実装例において、ハンドヘルド電子デバイス102は、たとえばスピーカ等の音声出力装置103と、たとえばマイク等の音声入力装置104と、たとえばカメラ等の撮像装置105と、ハンドヘルド電子デバイス102上に画像を表示するディスプレイ106とを含み得る。いくつかの実装例において、ディスプレイ106はタッチセンシティブディスプレイ106であってもよく、そうすると、ディスプレイ106は、画像を出力することができ、かつ、タッチセンシティブディスプレイ106のタッチセンシティブ面を介してユーザ入力を受けるように指定された領域を含むユーザインターフェイスを出力することもできる。いくつかの実装例において、ハンドヘルド電子デバイス102は、タッチセンシティブディスプレイ106上に、たとえばキーボード107またはユーザのタッチ入力を受けるように構成されたその他の種類のユーザインターフェイス等のグラフィカルユーザインターフェイスを、レンダリングしてもよい。このユーザインターフェイスは、ユーザインターフェイスとの対話が、ディスプレイ106の表示エリアの物理的領域に対応付けられた機能をトリガすることができるように、構成することが可能である。
【0020】
いくつかの実装例において、ハンドヘルド電子デバイス102は、図3Bに示されるように、ハンドヘルド電子デバイス102のディスプレイ106上にモノクロームスクリーンまたはグリーンスクリーンオーバレイ108をレンダリングしてもよい。グリーンスクリーンオーバレイ108は、たとえば図3Aに示される、下にあるユーザインターフェイスに対応付けられた機能を維持したままで、ディスプレイ106の表示エリアの中に表示することができる。グリーンスクリーンオーバレイ108がディスプレイ106上にある
状態で、タッチセンシティブディスプレイ106に対する、および、キーボード107等のグラフィカルユーザインターフェイスの個々の入力要素に対する、ユーザの指のホバー位置を、たとえばHMD100のカメラ180で、素早くかつ正確に検出することができる(その間も、下にあるユーザインターフェイスの機能は維持される)。言い換えると、いくつかの実装例において、キーボード107等のグラフィカルユーザインターフェイスは、覆われている間も、またはグリーンスクリーンオーバレイ108が重畳されている間も、アクティブな状態を保つことができる。そうすると、ハンドヘルド電子デバイス102のディスプレイ106上ではグリーンスクリーンオーバレイ108がレンダリングされているためにグラフィカルユーザインターフェイスまたはキーボード107を見ることはできないが、ハンドヘルド電子デバイス102のタッチセンシティブディブ面上で検出されたタッチ等のユーザ入力は、対応するユーザ入力を生成することができる。ユーザインターフェイスおよび/またはハンドヘルド電子デバイス102は、HMD100が生成した仮想環境の中でレンダリングされてユーザに対して表示されているので、ユーザは、ユーザインターフェイスまたはキーボード107と、正確に対話することができる。
【0021】
状況によっては、ディスプレイ106上のグリーンスクリーンオーバレイ108は、ユーザがキーボード107等のユーザインターフェイスと対話してたとえばユーザ名、パスワード等を含むログイン情報のような機密情報を入力するときの、セキュリティ対策を提供することができる。すなわち、この構成において、キーボード107およびキーボード107を用いて作成されたエントリは、ユーザにしか見えず他の人には見えない。なぜなら、キーボード107等のユーザインターフェイスは、ディスプレイ106のタッチセンシティブ面では機能し得る状態を保っているが、グリーンスクリーンオーバレイ108があるので、ハンドヘルド電子デバイス102のディスプレイ106において他の人から見ることはできないからである。
【0022】
図3Aに示されるハンドヘルド電子デバイス102のディスプレイ106上に表示されるユーザインターフェイスの一例107は、ユーザのタッチ入力を受けてテキスト入力に変換することができるキーボードである。このテキスト入力は、たとえば、ハンドヘルド電子デバイス102のディスプレイ106上に表示される、および/またはHMD100が生成した仮想環境において表示されるテキストエントリフィールドへのテキスト入力である。キーボードはユーザインターフェイスの一例として図3Aに示され以下で説明されるが、それは単に説明し易く図示し易いからである。ユーザインターフェイスは、キーボードに加えてまたはキーボードの代わりに、たとえば選択ボタン、スライドボタン、メニュー項目等といった他の特徴および要素を含む、数多くの他の種類のユーザインターフェイスを含み得る。
【0023】
同様に、図3Aに示されるハンドヘルド電子デバイス102のディスプレイ106上に表示されているユーザインターフェイス107は、横長位置の向きのハンドヘルド電子デバイス102とともにレンダリングされたキーボードであり、このデバイス102は、ユーザが左手と右手両方の指を用いてテキスト入力するために左手と右手両方で持ってもよい。しかしながら、特定用途に基づくキーボードまたはその他のユーザインターフェイスの形態のユーザインターフェイス107は、縦長位置の向きのハンドヘルド電子デバイス102とともに表示されてもよく、このデバイス102は、ユーザが左手もしくは右手の指または左手および右手両方の指を用いてテキスト入力するために、ユーザが左手または右手いずれかで持っても左手および右手両方で持ってもよい。横長の向きであっても縦長の向きであっても、ユーザインターフェイスは、キーボードに加えてまたはキーボードの代わりに、たとえば選択ボタン、スライドボタン、メニュー項目等の多数の他の特徴を含み得る。
【0024】
仮想現実環境においてハンドヘルド電子デバイスに対するユーザの手および/または指
といったマニュアルポインティングデバイスのホバー位置を検出し追跡するためのシステムのブロック図が、図4に示される。このシステムは、第2の電子デバイス402と通信する第1の電子デバイス400を含み得る。第1の電子デバイス400は、仮想環境を生成する、たとえば図1および図2A図2Bを参照しながら先に説明したHMDであってもよく、第2の電子デバイス402は、HMDと通信することによりHMDが生成した仮想環境とのユーザの対話を容易にすることができる、たとえば図1および図3A図3Bを参照しながら先に説明したハンドヘルド電子デバイスのようなハンドヘルド電子デバイスであってもよい。たとえば、先に述べたように、第2の(ハンドヘルド)電子デバイス402の操作および/または物理的移動を、第1の(ヘッドマウント)電子デバイス400が生成した仮想環境における所望の対話に変換することができる。
【0025】
第1の電子デバイス400は、検知システム460と制御システム470とを含み得る。これらはそれぞれ、図2Aおよび図2Bに示される検知システム160および制御システム170と同様であってもよい。図4に示される例示的な実装例において、検知システム460は、たとえば、光センサ、音声センサ、距離/近接センサ、および/またはその他のセンサおよび/またはセンサの各種組合わせを含む、多種多様なセンサを含み得る。いくつかの実装例において、光センサ、画像センサおよび音声センサは、たとえば図2Aおよび図2Bに示されるHMD100のカメラ180のようなカメラ等の、1つの構成要素に含まれていてもよい。制御システム470は、たとえば、電源/停止制御装置、音声およびビデオ制御装置、光学制御装置、遷移制御装置、および/またはその他のこのような装置および/または装置の各種組合わせを含む、多種多様な装置を含み得る。いくつかの実装例において、制御システム470のビデオ制御装置の1つのモジュールが、上記ユーザインターフェイスを1つ以上生成し表示するように構成されてもよく、ビデオ制御装置の別のモジュールが、上記モノクロームスクリーンまたはグリーンスクリーンを生成し表示するように構成されてもよく、または、制御システム470のビデオ制御装置の単一のモジュールが、1つ以上のユーザインターフェイスとグリーンスクリーンとを生成し表示するように構成されてもよい。いくつかの実装例において、検知システム460および/または制御システム470は、具体的な実装例に応じて、より多くのまたはより少ない装置を含み得る。検知システム460および/または制御システム470に含まれる要素は、たとえば、図2Aおよび図2Bに示されるHMD100以外のHMDの内部で、異なる物理的構成(たとえば異なる物理的位置)を有していてもよい。
【0026】
第1の電子デバイス400はまた、たとえば図2Aおよび図2Bに示される音声出力装置130およびディスプレイ140と同様であってもよい、音声出力装置430および画像出力装置440を含み得る。音声出力装置430および画像出力装置440は、第1の電子デバイス400によって生成された仮想没入型体験に関連する音声およびビデオ信号を出力することができる。第1の電子デバイス400はまた、検知システム460および制御システム470と通信するプロセッサ490と、たとえば制御システム470のモジュールからアクセス可能なメモリ480と、たとえば第1の電子デバイス400とペアリングされた第2の電子デバイス402等の別の外部装置との間の通信を提供する通信モジュール450とを含み得る。
【0027】
第2の電子デバイス402は、第2の電子デバイス402と、たとえば第2の電子デバイス402と作動的に結合またはペアリングされた第1の電子デバイス400等の別の外部装置との間の通信を提供する通信モジュール406を含み得る。第2の電子デバイス402は検知システム407を含み得る。検知システム407は、たとえば、例としてカメラおよびマイクに含まれるもののような画像センサおよび音声センサと、慣性測定部と、その他のこのようなセンサおよび/またはセンサの各種組合わせとを含み得る。プロセッサ409は、第2の電子デバイス402の検知システム404およびコントローラ405と通信し得る。コントローラ405は、メモリ408にアクセスすることができ、第2の
電子デバイス402の全体の動作を制御する。第2の電子デバイス402はまた、たとえば図3A図3Bに示される音声出力装置103およびディスプレイ106のような音声出力装置403および画像出力装置404を含み得る。音声出力装置403および画像出力装置404は音声信号および画像信号を出力し得る。それにより、いくつかの実装例では、ユーザ入力のためのインターフェイスを提供することができ、また、第2の電子デバイス402および/または第2の電子デバイス402と作動的に結合またはペアリングされた第1の電子デバイス400との対話を提供することができる。
【0028】
いくつかの実装例において、ユーザにより本明細書に記載のユーザインターフェイス107を介してなされるテキスト入力またはその他の入力は、たとえば、ログイン情報の入力、仮想環境内で実行される命令に関連する、キャラクタ選択、機器選択、環境選択等の入力、および、その他のこのような入力を、含み得る。状況によっては、仮想環境に没入しているユーザが、たとえばHMD100によって生成された仮想環境においてユーザとの対話を一時的に妨害し得る電話の着信またはテキストメッセージの着信を受けることがある。図5A図5Eは、進行中の仮想体験にユーザが没入している間に着信したテキストメッセージアラートを受ける例を示すが、それは単に説明し易く図示し易いからである。しかしながら、上記のように、本明細書で説明するプロセスは、入力、たとえばテキスト入力、選択、スライド入力、またはその他の種類の入力がユーザによりハンドヘルド電子デバイス上のユーザインターフェイスを介してなされる多数のその他の事例に適用し得る。
【0029】
ユーザがたとえばHMD100のディスプレイ140上で見ている仮想シーン500の一例が、図5Aに示される。図5Aはまた、HMD100によって生成された仮想環境における対話のためにHMD100と作動的に結合し得るハンドヘルド電子デバイス102をユーザが物理的に持っていることを示している。ユーザが仮想環境に没入している、たとえばHMD100によって生成された仮想シーン500に没入している間に、着信したテキストメッセージをハンドヘルド電子デバイス102が受ける場合がある。この例において、テキストメッセージの着信をユーザに知らせる視覚インジケータの形態のアラート502が生成されてもよい。アラート502はハンドヘルド電子デバイス102のディスプレイ106上に表示されてもよい。しかしながら、ユーザはHMDを装着しているので、ハンドヘルド電子デバイス102のディスプレイ106およびアラート502は、ユーザから直接見えないかもしれない。よって、図5Bに示されるように、アラート502の仮想レンダリングまたは対応する仮想アラート502Vを、ユーザが見ている仮想シーン500の中に表示して、ユーザがHMD100を外さなくても仮想アラート502Vを見ることができるようにしてもよい。たとえばグリーンスクリーン108等のモノクロームスクリーン108をレンダリングしてハンドヘルド電子デバイス102(たとえば物理的装置)のユーザインターフェイス上に重畳してもよく、特に、アラート502が表示されるハンドヘルド電子デバイス102のディスプレイ106上にグリーンスクリーン108を重畳してもよい。アラート502は、ユーザが着信メッセージを取出すことを希望するか否かを示す「Y」ボタンまたは「N」ボタンをユーザが選択できるようにする。
【0030】
図5Cに示されるように、アラート502が表示される/そうでなければ物理装置102上で見えているディスプレイ106の領域を含む、ハンドヘルド電子デバイス102のディスプレイ106上に、グリーンスクリーン108が重畳される一方で、ユーザが見ている仮想シーン500に仮想アラート502Vが表示されてもよい。すなわち、仮想アラート502Vと、ユーザが着信メッセージを取出す意思があるか否かを示すために選択できる選択ボタン「Y」および「N」とを含むHMD100のディスプレイ上の仮想シーン500を、ユーザは見る(たとえば仮想的に見る)ことができる。上記のように、グリーンスクリーン108をハンドヘルド電子デバイス102(たとえば物理的装置)上に重畳することにより、HMD100のカメラ180は、ハンドヘルド電子デバイス102に対
するユーザの指の位置を、特にユーザインターフェイス(この例ではアラート502と選択ボタンYおよびN)に対するユーザの指の位置を、素早くかつ正確に捕捉し、検出し、追跡することができる。
【0031】
図5Cに示されるように、仮想ユーザインターフェイスに対して、または仮想アラート502Vならびに選択ボタンYおよびNに対して位置決めされたユーザの指の画像を、仮想環境500においてユーザに対して表示してもよい。ユーザインターフェイスに対するユーザの指の画像は、たとえばHMD100上のカメラ180によって取込まれてもよく、仮想ユーザインターフェイス(たとえば仮想アラート502V)に対するユーザの指の仮想画像は、仮想シーン500において、カメラ180によって取込まれたパススルー画像として表示されてもよい。いくつかの実装例において、仮想ユーザインターフェイスに対するユーザの指の画像は、たとえば、HMD100のカメラ180によって取込まれた画像に基づいてHMD100のプロセッサによってレンダリングされてもよく、ユーザの指の仮想レンダリングが仮想シーン500において表示されてもよい。いくつかの実装例において、ユーザの指およびユーザインターフェイス(この例では仮想アラート502V)の画像を、図5Cに示されるように、現在の仮想シーン500上に重畳してもよく、または、ユーザの視野内の現在の仮想シーン500と置換えてもよい。
【0032】
図5Dに示されるように、着信メッセージが取出されると、テキストメッセージングセッションが、ユーザと着信メッセージの送信者との間で進行することがある。テキストメッセージングセッションは、たとえばHMD100のディスプレイ140上でユーザに対して仮想的に表示された仮想シーン500を介してユーザが見ることができるものであってもよい。図5Dに示されるように、テキスト入力のために、物理的ハンドヘルド電子デバイス102のユーザインターフェイス上でキーボード107を利用できるようにしてもよく、グリーンスクリーン108を物理的ハンドヘルド電子デバイス102のユーザインターフェイスまたはキーボード107上に重畳することにより、上記のようにHMD100のカメラ180による、ユーザインターフェイスに対する指の位置の検出および追跡を容易にしてもよい。
【0033】
図5Dに示されるように、いくつかの実装例において、グリーンスクリーン108がレンダリングされ、ハンドヘルド電子デバイス102によって生成されたキーボード107上に重畳される(または置換えられる)一方で、対応する仮想キーボード107Vが仮想シーン500においてレンダリングされ、HMD100を装着しているユーザに対して表示されて、このユーザから見えるようにしてもよい。そうすると、仮想シーン500の仮想キーボード107Vの形態の、ハンドヘルド電子デバイス102上のキーボード107のレンダリングおよびキーボード107に対する指の位置を、HMD100のディスプレイ104を介してユーザは見ることができる。上記のように、ハンドヘルド電子デバイス102上のキーボード107に対するユーザの指のホバー位置は、たとえばHMD100のカメラ180によって取込むことができる。ハンドヘルド電子デバイス102上のユーザインターフェイスまたはキーボード107を表示しているディスプレイ106上に重畳されているグリーンスクリーン108を背にしてユーザの指の画像が取込まれるので、指の位置を、実質的にリアルタイムで、正確かつ効率的に検出し、追跡し、(パススルー画像としてまたはレンダリングされた画像として)表示することができる。この例ではユーザインターフェイスをキーボード107の形態にし、グリーンスクリーン108を背にした指の位置の実質的にリアルタイムの検出、追跡、および表示により、ユーザは、HMD100を外さずに、および/または仮想没入型体験を終了して物理的ハンドヘルド電子デバイス102が見えるようにすることなく、仮想シーン500においてテキスト入力の仮想視覚表現を見ることができる。この例では物理的ハンドヘルド電子デバイス102上の
キーボード107の形態のユーザインターフェイス(およびそれに対応付けられた機能)は、グリーンスクリーン108が重畳されている間も有効な状態が保たれるので、ハンドヘルド電子デバイス102は、上記のようにハンドヘルド電子デバイス102のディスプレイ106のタッチセンシティブ面に対する実際のタッチ(たとえば物理的接触)に応じてユーザ入力を登録することができる。図5Dに示されるメッセージングセッションが終了すると、ユーザは、図5Eに示されるように、中断を最小限にして、仮想環境内のアクティビティを再開することができる。
【0034】
グリーンスクリーンという表現は、本明細書ではキーイング(keying)を意味している。この場合、前景の被写体は、単色スクリーンまたはモノクロームスクリーンによって画定される背景を背にして検出し追跡することができ、モノクロームスクリーンの単色は前景の対象物によって再現されない。本明細書に記載のモノクロームスクリーンの実装例ではグリーンを色の一例として用いているが、どの単色でも、その単色が追跡対象(この場合はユーザの手および/または指)において再現されない限り、かつ、前景の被写体(この場合はユーザの手および/または指)と背景との間の色分離が十分なものである限り、ハンドヘルド電子デバイスによってレンダリングされるオーバレイに使用することができる。
【0035】
本明細書に記載の実装例に従う、拡張現実および/または仮想現実システムにおいてハンドヘルド電子デバイスに対するユーザの手および/または指のホバー位置を検出する方法600が、図6に示される。上記のように、ハンドヘルド電子デバイスは、図1および図3A図3Bに示されるハンドヘルド電子デバイス102と同様であってもよく、たとえば、ユーザが体験する没入型仮想環境を生成する、たとえば図1および図2A図2Bに示されるHMD100等のHMDとペアリングされてもよい。ハンドヘルド電子デバイス102は、たとえば、有線接続、たとえばWiFi(登録商標)もしくはBluetooth(登録商標)を介した無線接続、またはその他の種類の接続により、HMD100とペアリングされてもよく、および/または通信してもよい。ブロック610でHMD100およびハンドヘルド電子デバイス102が起動されペアリングされた後に、ブロック620で没入型仮想現実体験が開始され、ブロック640および650で、たとえばHMD100のカメラ180、または、ユーザの手とハンドヘルド電子デバイス102との画像を取込むことができるシステム内のその他のカメラ等のカメラを起動して、ハンドヘルド電子デバイス102の画像を取込んでもよい。
【0036】
先に述べたように、HMD100のカメラ180によって取込まれた画像は、ユーザインターフェイス上に、たとえばハンドヘルド電子デバイス102のディスプレイ106に表示されたキーボード107上にレンダリングされ重畳されたモノクロームスクリーンまたはグリーンスクリーン108を背にしたユーザの指および/または手の画像を含み得る。ブロック650で、カメラ180によって取込まれた画像の中においてモノクロームスクリーン108を背にした指等のマニュアルポインティングデバイスが検出された場合、ブロック660で、モノクロームスクリーン108によって画定されている背景からマニュアルポインティングデバイスの画像を分離してもよく、ブロック670で、マニュアルポインティングデバイスの位置を、モノクロームスクリーン108が重畳されたユーザインターフェイスの少なくとも1つの要素に対応付けてもよい。たとえば、グリーンスクリーン108を背景にして、取込まれた画像内で検出された少なくとも指の位置を、ハンドヘルド電子デバイス102のディスプレイ106のグリーンスクリーン108が重畳しているキーボード107の少なくとも1つのキーに、対応付けてもよい。
【0037】
ブロック680で、対応付けられた位置にあるユーザインターフェイス上のマニュアルポインティングデバイスの画像、たとえばキーボード107のキーのうちの1つに対応する位置にある指の画像を、カメラ180によって取込まれた画像から分離してもよく、ブ
ロック685で、この指の画像を、HMD100によって生成された仮想シーンにおいて、たとえばHMD100によって仮想シーン500に表示された仮想キーボード107Vに対して表示してもよい。いくつかの実装例において、対応する位置にあるユーザインターフェイス上のマニュアルポインティングデバイス(すなわちキーボード107のキーのうちの1つに対応する位置にある指)の画像を、たとえば、HMD100のプロセッサによってレンダリングし、仮想シーン500に表示された仮想キーボード107Vに対して適切な位置において、仮想シーン内で表示してもよい。このようにして、ユーザは、物理的ハンドヘルド電子デバイス102が直接見えなくても、物理的ハンドヘルド電子デバイス102のユーザインターフェイスのキーボード107に対する指の検出位置に対応する、仮想キーボード107V上の指の位置を見ることができる。これにより、拡張および/または仮想現実環境における、ハンドヘルド電子デバイス102のタッチスクリーン面を介したユーザ入力のマニュアルエントリを、容易にすることができる。
【0038】
このプロセスは、ブロック690で仮想没入型体験が終了したと判断されるまで、繰返し実行されてもよい。
【0039】
図7は、本明細書に記載の手法とともに使用し得る汎用コンピュータデバイス700および汎用モバイルコンピュータデバイス750の一例を示す。コンピューティングデバイス700は、ラップトップ、デスクトップ、タブレット、ワークステーション、携帯情報端末、テレビ、サーバ、ブレードサーバ、メインフレーム、およびその他適切なコンピューティングデバイス等の、さまざまな形態のデジタルコンピュータを代表することを意図している。コンピューティングデバイス750は、携帯情報端末、携帯電話、スマートフォン、およびその他同様のコンピューティングデバイス等の、さまざまな形態のモバイルデバイスを代表することを意図している。本明細書に示される構成要素、それらの接続および関係、ならびに機能は、専ら例示を意図しているのであって、本明細書において記載されているおよび/またはクレームされている発明の実現を限定することを意図しているのではない。
【0040】
コンピューティングデバイス700は、プロセッサ702と、メモリ704と、記憶装置706と、メモリ704および高速拡張ポート710に接続している高速インターフェイス708と、低速バス714および記憶装置706に接続している低速インターフェイス712とを含む。プロセッサ702は半導体ベースのプロセッサでもよい。メモリ704は半導体ベースのメモリでもよい。コンポーネント702、704、706、708、710、および712の各々は、さまざまなバスを使用して相互接続されており、共通のマザーボード上にまたは他の態様で適宜搭載されてもよい。プロセッサ702は、コンピューティングデバイス700内で実行される命令を処理可能であり、これらの命令は、GUIのためのグラフィック情報を、高速インターフェイス708に結合されたディスプレイ716等の外部入出力デバイス上に表示するために、メモリ704内または記憶装置706上に格納された命令を含む。他の実装例では、複数のプロセッサおよび/または複数のバスが、複数のメモリおよび複数のタイプのメモリとともに適宜使用されてもよい。加えて、複数のコンピューティングデバイス700が接続されてもよく、各デバイスは(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の一部を提供する。
【0041】
メモリ704は、情報をコンピューティングデバイス700内に格納する。一実装例では、メモリ704は1つまたは複数の揮発性メモリユニットである。別の実装例では、メモリ704は1つまたは複数の不揮発性メモリユニットである。メモリ704はまた、磁気ディスクまたは光ディスクといった別の形態のコンピュータ読取可能媒体であってもよい。
【0042】
記憶装置706は、コンピューティングデバイス700のための大容量記憶を提供可能である。一実装例では、記憶装置706は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、または、ストレージエリアネットワークもしくは他の構成におけるデバイスを含むデバイスのアレイといった、コンピュータ読取可能媒体であってもよく、または当該コンピュータ読取可能媒体を含んでいてもよい。コンピュータプログラムプロダクトが情報担体において有形に具体化され得る。コンピュータプログラムプロダクトはまた、実行されると上述のような1つ以上の方法を行なう命令を含んでいてもよい。情報担体は、メモリ704、記憶装置706、またはプロセッサ702上のメモリといった、コンピュータ読取可能媒体または機械読取可能媒体である。
【0043】
高速コントローラ708はコンピューティングデバイス700のための帯域幅集約的な動作を管理し、一方、低速コントローラ712はより低い帯域幅集約的な動作を管理する。機能のそのような割当ては例示にすぎない。一実装例では、高速コントローラ708は、メモリ704、ディスプレイ716に(たとえば、グラフィックスプロセッサまたはアクセラレータを介して)、および、さまざまな拡張カード(図示せず)を受付け得る高速拡張ポート710に結合される。この実装例では、低速コントローラ712は、記憶装置706および低速拡張ポート714に結合される。さまざまな通信ポート(たとえば、USB、Bluetooth、イーサネット(登録商標)、無線イーサネット)を含み得る低速拡張ポートは、キーボード、ポインティングデバイス、スキャナ等の1つ以上の入出力デバイスに、または、スイッチもしくはルータ等のネットワーキングデバイスに、たとえばネットワークアダプタを介して結合されてもよい。
【0044】
コンピューティングデバイス700は、図に示すように多くの異なる形態で実現されてもよい。たとえばそれは、標準サーバ720として、またはそのようなサーバのグループで複数回実現されてもよい。それはまた、ラックサーバシステム724の一部として実現されてもよい。加えて、それは、ラップトップコンピュータ722等のパーソナルコンピュータにおいて実現されてもよい。これに代えて、コンピューティングデバイス700からのコンポーネントは、デバイス750等のモバイルデバイス(図示せず)における他のコンポーネントと組合されてもよい。そのようなデバイスの各々は、コンピューティングデバイス700、750のうちの1つ以上を含んでいてもよく、システム全体が、互いに通信する複数のコンピューティングデバイス700、750で構成されてもよい。
【0045】
コンピューティングデバイス750は、数あるコンポーネントの中でも特に、プロセッサ752と、メモリ764と、ディスプレイ754等の入出力デバイスと、通信インターフェイス766と、トランシーバ768とを含む。デバイス750にはまた、追加の記憶容量を提供するために、マイクロドライブまたは他のデバイス等の記憶装置が設けられてもよい。コンポーネント750、752、764、754、766、および768の各々は、さまざまなバスを使用して相互接続されており、当該コンポーネントのうちのいくつかは、共通のマザーボード上にまたは他の態様で適宜搭載されてもよい。
【0046】
プロセッサ752は、メモリ764に格納された命令を含む、コンピューティングデバイス750内の命令を実行可能である。プロセッサは、別個の複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実現されてもよい。プロセッサは、たとえば、ユーザインターフェイス、デバイス750が実行するアプリケーション、およびデバイス750による無線通信の制御といった、デバイス750の他のコンポーネント同士の連携を提供してもよい。
【0047】
プロセッサ752は、ディスプレイ754に結合された制御インターフェイス758お
よびディスプレイインターフェイス756を介してユーザと通信してもよい。ディスプレイ754は、たとえば、TFT LCD(Thin-Film-Transistor Liquid Crystal Display:薄膜トランジスタ液晶ディスプレイ)、またはOLED(Organic Light Emitting Diode:有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であって
もよい。ディスプレイインターフェイス756は、ディスプレイ754を駆動してグラフィカル情報および他の情報をユーザに提示するための適切な回路を含んでいてもよい。制御インターフェイス758は、ユーザからコマンドを受信し、それらをプロセッサ752に送出するために変換してもよい。加えて、デバイス750と他のデバイスとの近接エリア通信を可能にするように、外部インターフェイス762がプロセッサ752と通信した状態で設けられてもよい。外部インターフェイス762は、たとえば、ある実装例では有線通信を提供し、他の実装例では無線通信を提供してもよく、複数のインターフェイスも使用されてもよい。
【0048】
メモリ764は、情報をコンピューティングデバイス750内に格納する。メモリ764は、1つもしくは複数のコンピュータ読取可能媒体、1つもしくは複数の揮発性メモリユニット、または、1つもしくは複数の不揮発性メモリユニットの1つ以上として実現され得る。拡張メモリ774も設けられ、拡張インターフェイス772を介してデバイス750に接続されてもよく、拡張インターフェイス772は、たとえばSIMM(Single In Line Memory Module)カードインターフェイスを含んでいてもよい。そのような拡張メモリ774は、デバイス750に余分の格納スペースを提供してもよく、または、デバイス750のためのアプリケーションまたは他の情報も格納してもよい。具体的には、拡張メモリ774は、上述のプロセスを実行または補足するための命令を含んでいてもよく、安全な情報も含んでいてもよい。このため、たとえば、拡張メモリ774はデバイス750のためのセキュリティモジュールとして設けられてもよく、デバイス750の安全な使用を許可する命令でプログラミングされてもよい。加えて、ハッキング不可能な態様でSIMMカード上に識別情報を乗せるといったように、安全なアプリケーションが追加情報とともにSIMMカードを介して提供されてもよい。
【0049】
メモリはたとえば、以下に説明されるようなフラッシュメモリおよび/またはNVRAMメモリを含んでいてもよい。一実装例では、コンピュータプログラムプロダクトが情報担体において有形に具体化される。コンピュータプログラムプロダクトは、実行されると上述のような1つ以上の方法を実行する命令を含む。情報担体は、メモリ764、拡張メモリ774、またはプロセッサ752上のメモリといった、コンピュータ読取可能媒体または機械読取可能媒体であり、たとえばトランシーバ768または外部インターフェイス762を通して受信され得る。
【0050】
デバイス750は、必要に応じてデジタル信号処理回路を含み得る通信インターフェイス766を介して無線通信してもよい。通信インターフェイス766は、とりわけ、GSM(登録商標)音声通話、SMS、EMS、またはMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSといった、さまざまなモードまたはプロトコル下での通信を提供してもよい。そのような通信は、たとえば無線周波数トランシーバ768を介して生じてもよい。加えて、Bluetooth、Wi−Fi、または他のそのようなトランシーバ(図示せず)等を使用して、短距離通信が生じてもよい。加えて、GPS(Global Positioning System:全地球測位シス
テム)レシーバモジュール770が、追加のナビゲーション関連および位置関連無線データをデバイス750に提供してもよく、当該データは、デバイス750上で実行されるアプリケーションによって適宜使用されてもよい。
【0051】
デバイス750はまた、ユーザから口頭情報を受信してそれを使用可能なデジタル情報に変換し得る音声コーデック760を使用して、音声通信してもよい。音声コーデック7
60はまた、たとえばデバイス750のハンドセットにおいて、スピーカを介すなどして、ユーザに聞こえる音を生成してもよい。そのような音は、音声電話からの音を含んでいてもよく、録音された音(たとえば、音声メッセージ、音楽ファイル等)を含んでいてもよく、デバイス750上で動作するアプリケーションが生成する音も含んでいてもよい。
【0052】
コンピューティングデバイス750は、図に示すように多くの異なる形態で実現されてもよい。たとえばそれは、携帯電話780として実現されてもよい。それはまた、スマートフォン782、携帯情報端末、または他の同様のモバイルデバイスの一部として実現されてもよい。
【0053】
ここに説明されたシステムおよび手法のさまざまな実装例は、デジタル電子回路、集積回路、特定用途向け集積回路ASIC(application specific integrated circuit:特
定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組合わせで実現され得る。これらのさまざまな実装例は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つ以上のコンピュータプログラムにおける実装例を含んでいてもよく、当該プロセッサは専用であっても汎用であってもよく、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信するとともに、これらにデータおよび命令を送信するように結合されてもよい。
【0054】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても公知)は、プログラマブルプロセッサのための機械命令を含んでおり、高レベル手続き型および/またはオブジェクト指向プログラミング言語で、および/またはアセンブリ/機械言語で実現され得る。ここに使用されるように、「機械読取可能媒体」「コンピュータ読取可能媒体」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラムプロダクト、装置および/またはデバイス(たとえば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(Programmable Logic Device:PLD))を
指し、機械命令を機械読取可能信号として受信する機械読取可能媒体を含む。「機械読取可能信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0055】
ユーザとの対話を提供するために、ここに説明されたシステムおよび手法は、情報をユーザに表示するためのディスプレイデバイス(たとえば、CRT(cathode ray tube:陰極線管)またはLCD(liquid crystal display:液晶ディスプレイ)モニタ)と、ユーザが入力をコンピュータに提供できるようにするキーボードおよびポインティングデバイス(たとえば、マウスまたはトラックボール)とを有するコンピュータ上で実現され得る。他の種類のデバイスを使用してユーザとの対話を提供することもでき、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック(たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であってもよく、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受信され得る。
【0056】
ここに説明されたシステムおよび手法は、(たとえばデータサーバとしての)バックエンドコンポーネントを含む、またはミドルウェアコンポーネント(たとえばアプリケーションサーバ)を含む、またはフロントエンドコンポーネント(たとえば、ユーザがここに説明されたシステムおよび手法の実装例とやりとりできるようにするグラフィカルユーザインターフェイスもしくはウェブブラウザを有するクライアントコンピュータ)を含む、もしくは、そのようなバックエンド、ミドルウェア、またはフロントエンドコンポーネントの任意の組合わせを含む、コンピューティングシステムにおいて実現され得る。システムのコンポーネントは、任意の形態または媒体のデジタルデータ通信(たとえば通信ネッ
トワーク)によって相互接続され得る。通信ネットワークの例は、ローカルエリアネットワーク(local area network:LAN)、ワイドエリアネットワーク(wide area network:WAN)、およびインターネットを含む。
【0057】
コンピューティングシステムは、クライアントおよびサーバを含み得る。クライアントおよびサーバは一般に互いにリモートであり、典型的には通信ネットワークを介してやりとりする。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行されて互いにクライアント−サーバ関係を有するコンピュータプログラムによって生じる。
【0058】
多くの実施形態を説明してきた。しかしながら、明細書の精神および範囲から逸脱することなくさまざまな変更がなされ得ることが理解されるであろう。
【0059】
加えて、図面に示す論理フローは、所望の結果を達成するために、図示された特定の順序または順番を必要としない。加えて、説明されたフローに他のステップが提供されてもよく、または当該フローからステップが除去されてもよく、説明されたシステムに他のコンポーネントが追加されてもよく、または当該システムから除去されてもよい。したがって、他の実施形態は以下の請求項の範囲内にある。
【0060】
本明細書に記載のさまざまな手法の実装例は、デジタル電子回路において、または、コンピュータハードウェア、ファームウェア、ソフトウェアにおいて、またはこれらを組合わせたものにおいて実現されてもよい。実装例は、コンピュータプログラムプロダクトとして、すなわち、データ処理装置たとえばプログラマブルプロセッサまたは1もしくは複数のコンピュータによって処理されるためにまたはその動作を制御するために情報キャリアたとえばマシン読取可能な記憶装置(コンピュータ読取可能な媒体)において有形に実現されたコンピュータプログラムとして、実現されてもよい。よって、コンピュータ読取可能な記憶媒体は、実行されるとプロセッサ(たとえばホストデバイスのプロセッサ、クライアントデバイスのプロセッサ)にプロセスを実行させる命令を格納するように構成されてもよい。
【0061】
上記コンピュータプログラムのようなコンピュータプログラムは、コンパイルされたまたは翻訳された言語を含むプログラミング言語の形態で記述することができ、スタンドアロンプログラム、またはモジュール、コンポーネント、サブルーチン、または計算環境で使用するのに適したその他のユニットを含む何らかの形態でデプロイすることができる。コンピュータプログラムは、デプロイされ、1つのコンピュータ上で、または、1つの場所にあるまたは複数の場所に分散し通信ネットワークによって相互に接続された複数のコンピュータ上で処理されてもよい。
【0062】
方法ステップは、コンピュータプログラムを実行して入力データを処理し出力を生成することによって機能を実行する1つ以上のプログラマブルプロセッサによって実行されてもよい。また、方法ステップは、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行されてもよく、装置は、上記専用論理回路として実現されてもよい。
【0063】
コンピュータプログラムの処理に適したプロセッサは、一例として、汎用および専用マイクロプロセッサ、ならびに、何らかの種類のデジタルコンピュータの1つ以上のプロセッサを含む。一般的に、プロセッサは、命令とデータを、読取専用メモリまたはランダムアクセスメモリまたはこれら双方から受ける。コンピュータの構成要素は、命令を実行するための少なくとも1つのプロセッサと、命令およびデータを格納するための1つ以上のメモリデバイスとを含み得る。一般的に、コンピュータはまた、データを格納するための1つ以上の記憶装置たとえば磁気ディスク、光磁気ディスクもしくは光ディスクを含み得
る、または、データを受けるため、データを送るため、もしくはデータをやり取りするために上記記憶装置に作動的に結合されてもよい。コンピュータプログラム命令およびデータを実施するのに適した情報キャリアは、一例として、半導体メモリデバイスたとえばEPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスクたとえば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD−ROMおよびDVD−ROMディスクを含む、すべての形態の不揮発性メモリを含む。プロセッサおよびメモリは、専用論理回路が追加されてもよく、専用論理回路に内蔵されてもよい。
【0064】
ユーザとの対話を提供するために、実装例は、情報をユーザに対して表示するためのディスプレイデバイスたとえば陰極線管(CRT)、発光ダイオード(LED)または液晶ディスプレイ(LCD)モニタと、ユーザが入力をコンピュータに提供できるようにするために用いられるキーボードおよびポインティングデバイス、たとえば、マウスまたはトラックボールとを有する、コンピュータ上で実現されてもよい。その他の種類のデバイスを用いてユーザとの対話を提供することもできる。たとえば、ユーザに与えられるフィードバックは、何らかの形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバックまたは触覚フィードバックであってもよく、ユーザからの入力は、音響入力、音声入力または触覚入力を含む何らかの形態で受信されてもよい。
【0065】
実装例は、(たとえばデータサーバとしての)バックエンドコンポーネントを含む、またはミドルウェアコンポーネント(たとえばアプリケーションサーバ)を含む、またはフロントエンドコンポーネント(たとえば、ユーザがここに説明されたシステムおよび手法の実装例とやりとりできるようにするグラフィカルユーザインターフェイスもしくはウェブブラウザを有するクライアントコンピュータ)を含む、もしくは、そのようなバックエンド、ミドルウェア、またはフロントエンドコンポーネントの任意の組合わせを含む、コンピューティングシステムにおいて実現され得る。コンポーネントは、任意の形態または媒体のデジタルデータ通信(たとえば通信ネットワーク)によって相互接続され得る。通信ネットワークの例は、ローカルエリアネットワーク(local area network:LAN)、ワイドエリアネットワーク(wide area network:WAN)、およびインターネットを含
む。
【0066】
本明細書に記載の通り、記載されている実装例の特定の特徴を説明してきたが、ここで、当業者は、数多くの変形、代替形、変更、および均等物に想到するであろう。したがって、以下の請求項が、実装例の範囲に含まれるすべてのこのような変形および変更をカバーすることを意図していることが、理解されるであろう。これらの実装例は限定ではなく専ら例示を目的として示されており形態および詳細事項にさまざまな変更を加えることができることが、理解されねばならない。本明細書に記載の装置および/または方法はいずれの部分も、相互に相容れない組合わせを除いて、何らかの組合わせが可能である。本明細書に記載の実装例は、記載されているさまざまな実装例の機能、構成要素および/または特徴の、さまざまな組合わせおよび/または下位の組合わせを含み得る。
【0067】
その他の実装例を以下の例において要約する。
例1:周囲環境の中で動作するヘッドマウント電子デバイスにより、仮想環境を生成するステップと、周囲環境の中で動作するハンドヘルド電子デバイスのディスプレイの中に、ハンドヘルド電子デバイスのディスプレイの中のユーザインターフェイス上に重畳されるモノクロームスクリーンを生成する一方で、ユーザインターフェイスのタッチスクリーン機能を維持するステップと、ヘッドマウント電子デバイスのカメラにより、モノクロームスクリーンの前景にある物理的物体を検出するステップと、ヘッドマウント電子デバイスのプロセッサにより、モノクロームスクリーンの前景にある物理的物体の検出位置に基づいて、ユーザインターフェイスに対する検出された物理的物体の位置を求めるステップと、ヘッドマウント電子デバイスにより、ユーザインターフェイスの仮想画像と、検出さ
れた物理的物体の仮想画像とを、ヘッドマウント電子デバイスのディスプレイに表示するステップとを含む、方法。
【0068】
例2:例1の方法において、ハンドヘルド電子デバイスのディスプレイの中にユーザインターフェイス上に重畳されるモノクロームスクリーンを生成する一方で、ユーザインターフェイスのタッチスクリーン機能を維持するステップは、グリーンスクリーンをレンダリングするステップと、ハンドヘルド電子デバイスのディスプレイに表示されたキーボード上にグリーンスクリーンを重畳するステップとを含む。
【0069】
例3:例2の方法において、モノクロームスクリーンの前景にある物理的物体を検出するステップおよびユーザインターフェイスに対する物理的物体の位置を求めるステップは、グリーンスクリーンを背にした指の位置を検出するステップと、ハンドヘルド電子デバイスのディスプレイに表示されたキーボードのキーの既知の配置に基づいて、グリーンスクリーンを背にした指の検出位置を、ハンドヘルド電子デバイスのディスプレイに表示されグリーンスクリーンが重畳されたキーボードに対する指の位置に、マッピングするステップとを含む。
【0070】
例4:例3の方法は、指と、ハンドヘルド電子デバイスのディスプレイに表示されグリーンスクリーンが重畳されたキーボードのキーのうちの1つとの、検出された物理的接触に応じて文字入力を受信するステップと、受信した文字入力を、ヘッドマウントディスプレイにより生成された仮想ディスプレイに表示するステップとをさらに含む。
【0071】
例5:例4の方法は、物理的物体を検出するステップと、物理的物体の位置を求めるステップと、ユーザインターフェイスの仮想画像と物理的物体の仮想画像とを表示するステップと、文字入力を受信するステップと、受信した文字入力を表示するステップとを、文字入力モードが終了するまで繰返すステップをさらに含む。
【0072】
例6:例1〜例5のうちの1つの例の方法において、モノクロームスクリーンの前景にある物理的物体を検出するステップは、ヘッドマウント電子デバイスのカメラを起動するステップと、ヘッドマウント電子デバイスのカメラを用いて、物理的物体とモノクロームスクリーンとを含むハンドヘルド電子デバイスの画像を取込むステップと、物理的物体の画像を、物理的物体を囲んでいるモノクロームスクリーンから分離するステップとを含む。
【0073】
例7:例6の方法において、ユーザインターフェイスの仮想画像と検出された物理的物体の仮想画像とをヘッドマウント電子デバイスのディスプレイに表示するステップは、検出された物理的物体の分離された画像を、モノクロームスクリーンの下にあるユーザインターフェイスに対する検出された物理的物体の実際の位置に対応する、ユーザインターフェイスの仮想画像に対する位置に、表示するステップを含む。
【0074】
例8:例7の方法において、検出された物理的物体の分離された画像を表示するステップは、分離された画像を、ヘッドマウント電子デバイスのディスプレイに、カメラからのパススルー画像として表示するステップを含む。
【0075】
例9:例7の方法において、検出された物理的物体の分離された画像を表示するステップは、検出された物理的物体の分離された画像をレンダリングするステップと、検出された物理的物体の分離された画像のレンダリングされた画像を、ヘッドマウント電子デバイスのディスプレイに表示するステップとを含む。
【0076】
例10:例1〜例9のうちの1つの例の方法において、検出する物理的物体は、ヘッド
マウント電子デバイスとハンドヘルド電子デバイスとの間に置かれる。
【0077】
例11:ディスプレイと、カメラと、プロセッサとを含むヘッドマウント電子デバイスを備えるシステムにおいて、ヘッドマウント電子デバイスは、ハンドヘルド電子デバイスと作動的に結合されるように構成され、カメラは、ハンドヘルド電子デバイスの画像を取込むように構成され、プロセッサは、ヘッドマウント電子デバイスと、カメラにより取込まれた画像の中のハンドヘルド電子デバイス上のユーザインターフェイスとの間にある物理的物体を検出するように構成され、ユーザインターフェイスにはモノクロームスクリーンが重畳され、プロセッサは、カメラにより取込まれた画像に基づいてヘッドマウント電子デバイスにより生成された仮想シーンの中に仮想画像を表示するように構成され、仮想シーンの中に表示される仮想画像は、検出された物理的物体の仮想画像と、ハンドヘルド電子デバイスのユーザインターフェイスの仮想画像とを含む。
【0078】
例12:例11のシステムにおいて、検出する物理的物体は、ユーザの指であり、ユーザインターフェイスは、ハンドヘルド電子デバイスのディスプレイに表示される、グリーンスクリーンが重畳されたキーボードであり、ヘッドマウント電子デバイスにより生成される仮想シーンの中に表示される仮想画像は、ハンドヘルド電子デバイスのディスプレイ上のキーボードの複数のキーのうちの1つの上でホバリングする(hovering)ユーザの指の仮想画像を含む。
【0079】
例13:例12のシステムにおいて、プロセッサは、グリーンスクリーンに対する指の検出された位置と、ハンドヘルド電子デバイスのディスプレイ上のキーボードの複数のキーの既知の配置とに基づいて、ハンドヘルド電子デバイスのディスプレイ上のキーボードに対する指の位置を求めるように構成される。
【0080】
例14:例12のシステムにおいて、プロセッサは、指と、ハンドヘルド電子デバイスのディスプレイ上のキーボードのキーのうちの1つに対応するディスプレイの一部との接触に応じて文字入力を受けるように構成されるとともに、ヘッドマウント電子デバイスにより生成された仮想シーンの中に表示される仮想画像の中に文字入力の仮想画像を表示するように構成される。
【0081】
例15:例11〜例14のうちの1つの例のシステムにおいて、ヘッドマウント電子デバイスにより生成された仮想シーンの中に仮想画像を表示するときに、プロセッサは、検出された物理的物体の画像を、カメラにより取込まれた画像から分離するように構成されるとともに、検出された物理的物体の分離された画像を、モノクロームスクリーンの下にあるユーザインターフェイスに対する検出された物理的物体の実際の位置に対応する、ユーザインターフェイスの仮想画像に対する位置に表示するように構成される。
【0082】
例16:例15のシステムにおいて、検出された物理的物体の分離された画像を表示するときに、プロセッサは、検出された物理的物体の分離された画像を、ヘッドマウントディスプレイデバイスにより生成された仮想シーンの中において、カメラからのパススルー画像として表示するように構成される。
【0083】
例17:例15のシステムにおいて、検出された物理的物体の分離された画像を表示するときに、プロセッサは、検出された物理的物体の分離された画像の画像をレンダリングするように構成されるとともに、検出された物理的物体の分離された画像のレンダリングされた画像を、ヘッドマウントディスプレイデバイスにより生成された仮想シーンの中に表示するように構成される。
【0084】
例18:例15〜例17のうちの1つの例のシステムにおいて、プロセッサは、ユーザ
インターフェイスの仮想画像を、ユーザインターフェイスの個々の要素がヘッドマウントディスプレイデバイスにより表示される仮想シーンの中で見えるように、ユーザインターフェイス上に重畳されたモノクロームスクリーンなしで、表示するように構成される。
【0085】
例19:プロセッサによって実行されるとプロセッサに方法を実行させる命令のシーケンスが格納された非一時的なコンピュータ読取可能な媒体上で実現されるコンピュータプログラムプロダクトにおいて、上記方法は、周囲環境の中で動作するヘッドマウント電子デバイスの中に仮想環境を生成するステップと、ヘッドマウント電子デバイスのカメラにより、ヘッドマウント電子デバイスに作動的に結合されたハンドヘルド電子デバイスの画像を取込むステップと、カメラにより取込まれた画像において、ハンドヘルド電子デバイス上のユーザインターフェイス上に重畳されたモノクロームスクリーンの前景にある物理的物体を検出するステップとを含み、ユーザインターフェイスはモノクロームスクリーンの下にある機能を維持する。上記方法はまた、検出された物理的物体を、カメラにより取込まれた画像から分離し、分離された物理的物体の画像を生成するステップと、モノクロームスクリーンの前景にある物理的物体の検出位置に基づいて、ユーザインターフェイスに対する検出された物理的物体の位置を検出するステップと、ヘッドマウント電子デバイスにより生成された仮想環境の中に仮想画像を表示するステップとを含み、仮想画像は、ユーザインターフェイスの仮想画像と、カメラにより取込まれた画像から分離された物理的物体の仮想画像とを含む。
【0086】
例20:例19のコンピュータプログラムプロダクトにおいて、ヘッドマウント電子デバイスにより生成された仮想環境の中に仮想画像を表示するステップは、検出された物理的物体の分離された画像を、ヘッドマウント電子デバイスのディスプレイに、カメラからのパススルー画像として表示するステップをさらに含む。
図1
図2A
図2B
図3A
図3B
図4
図5A
図5B
図5C
図5D
図5E
図6
図7