(57)【特許請求の範囲】
【請求項１】
拡張現実ディスプレイ内の仮想オブジェクトを整理するための方法であって、
現実世界のオブジェクトのタイプについてのユーザ指定の優先度ランキングを含むユーザ選好を受け取るステップと、
現実世界の場面に重ね合わされた複数の仮想オブジェクトを有する仮想の視野を提示するように構成されたディスプレイを提供するステップと、
前記現実世界の場面内に存在する現実世界のオブジェクトに基づいて、優先度を前記仮想の視野の複数の領域に割り当てるステップであって、
前記複数の領域のうちのそれぞれの領域の優先度が、少なくとも部分的に、前記現実世界の場面の画像からの前記領域において識別された1つまたは複数の現実世界のオブジェクトの照明状況と、前記ユーザ指定の優先度ランキングを含む前記ユーザ選好とに基づく、ステップと、
前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記複数の仮想オブジェクトを表示するステップと
を含む方法。
【請求項２】
最も低い優先度が割り当てられた前記複数の領域が、前記複数の仮想オブジェクトを表示するために使用される、請求項1に記載の方法。
【請求項３】
前記複数の領域の前記優先度を割り当てるステップの前に、前記現実世界の場面の前記画像をキャプチャするステップ
をさらに含む、請求項1に記載の方法。
【請求項４】
前記複数の領域の各領域の前記優先度が、前記領域において識別された前記1つまたは複数の現実世界のオブジェクトが動きを示すか否かに少なくとも部分的に基づく、請求項1に記載の方法。
【請求項５】
前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記複数の仮想オブジェクトの再配置は、ユーザが許可入力を与えるまで実行されない、請求項1に記載の方法。
【請求項６】
前記ディスプレイが、ヘッドマウントディスプレイ(HMD)を含む、請求項1に記載の方法。
【請求項７】
前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記複数の仮想オブジェクトを表示するステップが、前記複数の仮想オブジェクトが以前に表示のために配置されてから少なくともしきい値期間が経過した場合に行われる、請求項1に記載の方法。
【請求項８】
拡張現実ディスプレイ内の仮想オブジェクトを整理するためのシステムであって、
現実世界の場面に重ね合わされた複数の仮想オブジェクトを有する仮想の視野を提示するように構成されたディスプレイと、
現実世界のオブジェクトのタイプについてのユーザ指定の優先度ランキングを含むユーザ選好を受け取ることと、
前記現実世界の場面内に存在する現実世界のオブジェクトに基づいて、優先度を前記仮想の視野の複数の領域に割り当てることであって、
前記複数の領域のうちのそれぞれの領域の優先度が、少なくとも部分的に、前記現実世界の場面の画像からの前記領域において識別された1つまたは複数の現実世界のオブジェクトの照明状況と、前記ユーザ指定の優先度ランキングを含む前記ユーザ選好とに基づく、割り当てることと、
前記ディスプレイに、前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記複数の仮想オブジェクトを表示させることと
を行うように構成されたプロセッサと
を備えるシステム。
【請求項９】
最も低い優先度が割り当てられた前記複数の領域が、前記複数の仮想オブジェクトを表示するために使用される、請求項8に記載のシステム。
【請求項１０】
前記複数の領域の前記優先度を割り当てる前に、前記現実世界の場面の前記画像をキャプチャするように構成されたカメラをさらに備える、請求項8に記載のシステム。
【請求項１１】
前記複数の領域の各領域の前記優先度が、前記領域において識別された前記1つまたは複数の現実世界のオブジェクトが動きを示すか否かに少なくとも部分的に基づく、請求項8に記載のシステム。
【請求項１２】
前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記仮想オブジェクトの再配置は、ユーザが許可入力を与えるまで実行されない、請求項8に記載のシステム。
【請求項１３】
前記ディスプレイが、ヘッドマウントディスプレイ(HMD)を含む、請求項8に記載のシステム。
【請求項１４】
前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記複数の仮想オブジェクトを表示するステップが、前記仮想オブジェクトが以前に表示のために配置されてから少なくともしきい値期間が経過した場合に行われる、請求項8に記載のシステム。
【請求項１５】
拡張現実ディスプレイ内の仮想オブジェクトを整理するための装置であって、
現実世界のオブジェクトのタイプについてのユーザ指定の優先度ランキングを含むユーザ選好を受け取るための手段と、
現実世界の場面に重ね合わされた複数の仮想オブジェクトを有する仮想の視野を提示するための手段と、
前記現実世界の場面内に存在する現実世界のオブジェクトに基づいて、優先度を前記仮想の視野の複数の領域に割り当てるための手段であって、
前記複数の領域のうちのそれぞれの領域の優先度が、少なくとも部分的に、前記現実世界の場面の画像からの前記領域において識別された1つまたは複数の現実世界のオブジェクトの照明状況と、前記ユーザ指定の優先度ランキングを含む前記ユーザ選好とに基づく、手段と、
前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記複数の仮想オブジェクトを表示するための手段と
を備える装置。
【請求項１６】
最も低い優先度が割り当てられた前記複数の領域が、前記複数の仮想オブジェクトを表示するために使用される、請求項15に記載の装置。
【請求項１７】
前記複数の領域の前記優先度を割り当てる前に、前記現実世界の場面の前記画像をキャプチャするための手段
をさらに備える、請求項15に記載の装置。
【請求項１８】
前記複数の領域の各領域の前記優先度が、前記領域において識別された前記1つまたは複数の現実世界のオブジェクトが動きを示すか否かに少なくとも部分的に基づく、請求項15に記載の装置。
【請求項１９】
前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記仮想オブジェクトの再配置は、ユーザが許可入力を与えるまで実行されない、請求項15に記載の装置。
【請求項２０】
表示するための前記手段が、ヘッドマウント式である、請求項15に記載の装置。
【請求項２１】
前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記複数の仮想オブジェクトが、前記仮想オブジェクトが以前に表示のために配置されてから少なくともしきい値期間が経過した場合に、表示するための前記手段によって表示される、請求項15に記載の装置。
【請求項２２】
拡張現実ディスプレイ内の仮想オブジェクトを整理するための、非一時的プロセッサ可読記録媒体上に常駐するコンピュータプログラムであって、プロセッサに
現実世界のオブジェクトのタイプについてのユーザ指定の優先度ランキングを含むユーザ選好を受け取ることと、
現実世界の場面に重ね合わされた複数の仮想オブジェクトを有する仮想の視野を提示させることと、
前記現実世界の場面内に存在する現実世界のオブジェクトに基づいて、優先度を前記仮想の視野の複数の領域に割り当てることであって、
前記複数の領域のうちのそれぞれの領域の優先度が、少なくとも部分的に、前記現実世界の場面の画像からの前記領域において識別された1つまたは複数の現実世界のオブジェクトの照明状況と、前記ユーザ指定の優先度ランキングを含む前記ユーザ選好とに基づく、割り当てることと、
前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記複数の仮想オブジェクトを提示させることと
を行わせるように構成されたプロセッサ可読命令を含むコンピュータプログラム。
【請求項２３】
最も低い優先度が割り当てられた前記複数の領域が、前記複数の仮想オブジェクトを表示するために使用される、請求項22に記載のコンピュータプログラム。
【請求項２４】
前記プロセッサ可読命令が、前記プロセッサに、
前記複数の領域の前記優先度を割り当てる前に、前記現実世界の場面の前記画像をキャプチャさせるようにさらに構成される、請求項22に記載のコンピュータプログラム。
【請求項２５】
前記複数の領域の各領域の前記優先度が、前記領域において識別された前記1つまたは複数の現実世界のオブジェクトが動きを示すか否かに少なくとも部分的に基づく、請求項22に記載のコンピュータプログラム。
【請求項２６】
前記プロセッサ可読命令が、前記プロセッサに、前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記仮想オブジェクトの再配置を、ユーザが許可入力を与えるまで実行させないようにさらに構成される、請求項22に記載のコンピュータプログラム。
【請求項２７】
ヘッドマウントディスプレイ(HMD)が前記提示のために使用される、請求項22に記載のコンピュータプログラム。
【請求項２８】
前記プロセッサに、前記優先度を付けられた複数の領域に基づいて配置された、前記仮想の視野内の前記複数の仮想オブジェクトを提示させるように構成された前記プロセッサ可読命令が、前記プロセッサに、
前記仮想オブジェクトが以前に表示のために配置されてから少なくともしきい値期間が経過した場合に、前記優先度を付けられた複数の領域に基づいて配置された前記複数の仮想オブジェクトを提示させる、追加のプロセッサ可読命令をさらに含む、
請求項22に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、仮想オブジェクトディスプレイ特性の変更に関する。
【背景技術】
【０００２】
ヘッドマウントディスプレイ(HMD)を含み得る拡張現実(AR)デバイスは、ユーザが現実世界の場面を閲覧するとともに、ARデバイスのHMDによってユーザに表示される1つまたは複数の仮想オブジェクト(たとえば、テキスト、グラフィックス)を閲覧するおよび/またはそれと対話することも可能にすることができる。ARデバイスのHMDは、ゴーグルまたは眼鏡の形態であり得る。たとえば、AR眼鏡は、カメラを使用して、ARデバイスのユーザによって閲覧されている現実世界の場面の画像をキャプチャし、現実世界の場面に関連する情報および/またはユーザが対話することに関心がある情報を提供することができる。
【０００３】
ARデバイスが電子式であることにより、ARデバイスは、(AR眼鏡のHMD、プロセッサ、および/またはワイヤレスインターフェースなどの)その構成要素に電力供給するために、電源を必要とする。ARデバイスはモバイルであり、かつ日常的な作業が行われている間にユーザによって装着されることが意図され得るので、ユーザが電源コンセントまたは他の形態の電源に縛られることがないように、ARデバイスに電力供給するために1つまたは複数のバッテリーが使用され得る。ある程度の時間ARデバイスを動作させるのに十分な電力を有するために、バッテリーはARデバイス内に存在する必要があり得るが、このことは、バッテリーのサイズ、複雑性、および/または容量が低減された場合よりも、ARデバイスをより大きく、より重く、および/またはより高価にする。
【発明の概要】
【課題を解決するための手段】
【０００４】
いくつかの実施形態では、拡張現実ディスプレイ内の仮想オブジェクトを整理するための方法を提示する。方法は、現実世界の場面に重ね合わされた複数の仮想オブジェクトを有する仮想の視野を提示するように構成されたディスプレイを提供するステップを含み得る。方法は、現実世界の場面内に存在する現実世界のオブジェクトに基づいて、仮想の視野の複数の領域の優先度を割り当てるステップを含み得る。複数の領域のうちの1つの領域の優先度は、その1つの領域において識別された1つまたは複数の現実世界のオブジェクトに基づき得る。方法は、優先順位付けされた複数の領域に基づいて配置された、仮想の視野内の複数の仮想オブジェクトを表示するステップを含み得る。
【０００５】
そのようなシステムの実施形態は、以下のうちの1つまたは複数を含み得る。最も低い優先度が割り当てられた複数の領域は、複数の仮想オブジェクトを表示するために使用され得る。方法は、複数の領域の優先度を割り当てるステップの前に、現実世界の場面の画像をキャプチャするステップを含み得る。方法は、現実世界のオブジェクトについての優先度を定義するユーザ選好のセットを受け取るステップであって、ユーザ選好のセットが、複数の領域の優先度を割り当てるために使用される、ステップを含み得る。複数の領域の各領域の優先度は、領域において識別された1つまたは複数の現実世界のオブジェクトによって示された移動量に少なくとも部分的に基づき得る。複数の領域の各領域の優先度は、領域において識別された1つまたは複数の現実世界のオブジェクトによって示された光度に少なくとも部分的に基づき得る。仮想オブジェクトは、ユーザが入力を与えるまで、優先順位付けされた複数の領域に基づいて配置されなくてもよい。ディスプレイは、ヘッドマウントディスプレイ(HMD)を含み得る。優先順位付けされた複数の領域に基づいて配置された、仮想の視野内の複数の仮想オブジェクトを表示するステップは、仮想オブジェクトが以前に表示のために配置されてから少なくともしきい値期間が経過した場合に行われ得る。
【０００６】
いくつかの実施形態では、拡張現実ディスプレイ内の仮想オブジェクトを整理するためのシステムを提示する。システムは、現実世界の場面に重ね合わされた複数の仮想オブジェクトを有する仮想の視野を提示するように構成されたディスプレイを含み得る。システムは、現実世界の場面内に存在する現実世界のオブジェクトに基づいて、仮想の視野の複数の領域の優先度を割り当てるように構成されたプロセッサを含み得る。複数の領域のうちの1つの領域の優先度は、その1つの領域において識別された1つまたは複数の現実世界のオブジェクトに基づき得る。プロセッサは、ディスプレイに、優先順位付けされた複数の領域に基づいて配置された、仮想の視野内の複数の仮想オブジェクトを表示させるように構成され得る。
【０００７】
そのようなシステムの実施形態は、以下のうちの1つまたは複数を含み得る。最も低い優先度が割り当てられた複数の領域は、複数の仮想オブジェクトを表示するために使用され得る。システムは、複数の領域の優先度を割り当てる前に、現実世界の場面の画像をキャプチャするように構成されたカメラを含み得る。プロセッサは、現実世界のオブジェクトについての優先度を定義するユーザ選好のセットを受け取ることであって、ユーザ選好のセットが、複数の領域の優先度を割り当てるために使用される、受け取ることを行うようにさらに構成され得る。複数の領域の各領域の優先度は、領域において識別された1つまたは複数の現実世界のオブジェクトによって示された移動量に少なくとも部分的に基づき得る。複数の領域の各領域の優先度は、領域において識別された1つまたは複数の現実世界のオブジェクトによって示された光度に少なくとも部分的に基づき得る。仮想オブジェクトは、ユーザが入力を与えるまで、優先順位付けされた複数の領域に基づいて配置されなくてもよい。ディスプレイは、ヘッドマウントディスプレイ(HMD)を含み得る。優先順位付けされた複数の領域に基づいて配置された、仮想の視野内の複数の仮想オブジェクトを表示するステップは、仮想オブジェクトが以前に表示のために配置されてから少なくともしきい値期間が経過した場合に行われ得る。
【０００８】
いくつかの実施形態では、拡張現実ディスプレイ内の仮想オブジェクトを整理するための装置が提示され得る。装置は、現実世界の場面に重ね合わされた複数の仮想オブジェクトを有する仮想の視野を提示するための手段を含み得る。装置は、現実世界の場面内に存在する現実世界のオブジェクトに基づいて、仮想の視野の複数の領域の優先度を割り当てるための手段を含み得る。複数の領域のうちの1つの領域の優先度は、その1つの領域において識別された1つまたは複数の現実世界のオブジェクトに基づき得る。装置は、優先順位付けされた複数の領域に基づいて配置された、仮想の視野内の複数の仮想オブジェクトを表示するための手段を含み得る。
【０００９】
そのような装置の実施形態は、以下のうちの1つまたは複数を含み得る。最も低い優先度が割り当てられた複数の領域は、複数の仮想オブジェクトを表示するために使用され得る。装置は、複数の領域の優先度を割り当てる前に、現実世界の場面の画像をキャプチャするための手段を含み得る。装置は、現実世界のオブジェクトについての優先度を定義するユーザ選好のセットを受け取るための手段であって、ユーザ選好のセットが、複数の領域の優先度を割り当てるために使用される、手段を含み得る。複数の領域の各領域の優先度は、領域において識別された1つまたは複数の現実世界のオブジェクトによって示された移動量に少なくとも部分的に基づき得る。複数の領域の各領域の優先度は、領域において識別された1つまたは複数の現実世界のオブジェクトによって示された光度に少なくとも部分的に基づき得る。仮想オブジェクトは、ユーザが入力を与えるまで、優先順位付けされた複数の領域に基づいて配置されなくてもよい。表示するための手段は、ヘッドマウント式であり得る。優先順位付けされた複数の領域に基づいて配置された、仮想の視野内の複数の仮想オブジェクトは、仮想オブジェクトが以前に表示のために配置されてから少なくともしきい値期間が経過した場合に、表示するための手段によって表示され得る。
【００１０】
いくつかの実施形態では、拡張現実ディスプレイ内の仮想オブジェクトを整理するための、非一時的プロセッサ可読媒体上に常駐するコンピュータプログラム製品を提示する。プロセッサ可読命令は、プロセッサに、現実世界の場面に重ね合わされた複数の仮想オブジェクトを有する仮想の視野を提示させるように構成され得る。プロセッサ可読命令は、プロセッサに、現実世界の場面内に存在する現実世界のオブジェクトに基づいて、仮想の視野の複数の領域の優先度を割り当てさせるようにさらに構成され得る。複数の領域のうちの1つの領域の優先度は、その1つの領域において識別された1つまたは複数の現実世界のオブジェクトに基づき得る。プロセッサ可読命令は、プロセッサに、優先順位付けされた複数の領域に基づいて配置された、仮想の視野内の複数の仮想オブジェクトを提示させるようにさらに構成され得る。
【００１１】
そのようなコンピュータプログラム製品の実施形態は、以下のうちの1つまたは複数を含み得る。最も低い優先度が割り当てられた複数の領域は、複数の仮想オブジェクトを表示するために使用され得る。プロセッサ可読命令は、プロセッサに、複数の領域の優先度を割り当てる前に、現実世界の場面の画像をキャプチャさせるようにさらに構成され得る。プロセッサ可読命令は、プロセッサに、現実世界のオブジェクトについての優先度を定義するユーザ選好のセットを受け取らせることであって、ユーザ選好のセットが、複数の領域の優先度を割り当てるために使用される、受け取らせることを行うようにさらに構成され得る。複数の領域の各領域の優先度は、領域において識別された1つまたは複数の現実世界のオブジェクトによって示された移動量に少なくとも部分的に基づき得る。複数の領域の各領域の優先度は、領域において識別された1つまたは複数の現実世界のオブジェクトによって示された光度に少なくとも部分的に基づき得る。プロセッサ可読命令は、プロセッサに、ユーザが許可入力を与えるまで、優先順位付けされた複数の領域に基づいて仮想オブジェクトを配置させないようにさらに構成され得る。ヘッドマウントディスプレイ(HMD)は、提示のために使用され得る。プロセッサに、優先順位付けされた複数の領域に基づいて配置された、仮想の視野内の複数の仮想オブジェクトを提示させるように構成されたプロセッサ可読命令は、プロセッサに、仮想オブジェクトが以前に表示のために配置されてから少なくともしきい値期間が経過した場合に、優先順位付けされた複数の領域に基づいて配置された複数の仮想オブジェクトを提示させる、追加のプロセッサ可読命令をさらに含み得る。
【００１２】
様々な実施形態の性質および利点のさらなる理解が、以下の図面を参照することによって実現され得る。添付の図面において、類似の構成要素または特徴は、同じ参照標識を有し得る。さらに、同じタイプの様々な構成要素は、参照標識の後に、複数の類似の構成要素を区別するダッシュおよび第2の標識を付けることによって、区別され得る。第1の参照標識のみが本明細書において使用される場合、その説明は、第2の参照標識とは関係なく同じ第1の参照標識を有する類似の構成要素のいずれか1つに適用可能である。
【図面の簡単な説明】
【００１３】
【図１】ヘッドマウントディスプレイを介して仮想オブジェクトを提示するように構成されたシステムの一実施形態を示す図である。
【図２Ａ】仮想オブジェクトの輝度、色、および位置が現実世界の場面に基づいて調整された、仮想オブジェクトをユーザに提示するために使用されているヘッドマウントディスプレイの第1の人の視点の一実施形態を示す図である。
【図２Ｂ】優先度が異なる領域が図示された、ヘッドマウントディスプレイの第1の人の視点の一実施形態を示す図である。
【図３】現実世界の場面に応じて仮想オブジェクトの色を調整するための方法の一実施形態を示す図である。
【図４】現実世界の場面および/またはユーザの焦点に応じて仮想オブジェクトの輝度を調整するための方法の一実施形態を示す図である。
【図５】現実世界の場面の輝度に応じて仮想オブジェクトの位置を調整するための方法の一実施形態を示す図である。
【図６】現実世界の場面の色および輝度に応じて仮想オブジェクトの輝度、色、および位置を調整するための方法の一実施形態を示す図である。
【図７】現実世界の場面の領域の優先度に応じて仮想オブジェクトの位置を調整するための方法の一実施形態を示す図である。
【図８】現実世界の場面の領域の優先度、現実世界の場面の色、現実世界の場面の輝度、およびユーザ選好に応じて仮想オブジェクトの位置を調整するための方法の一実施形態を示す図である。
【図９】コンピュータシステムの一実施形態を示す図である。
【発明を実施するための形態】
【００１４】
拡張現実眼鏡などの、拡張現実(AR)デバイスの一部であり得るヘッドマウントディスプレイ(HMD)は、ユーザによって閲覧されている現実世界の場面の上に仮想オブジェクトを重ね合わせるために使用され得る。HMDを装着しておりかつARデバイスを使用しているユーザは、他の人および物体など、現実世界のオブジェクトを含む現実世界の場面を閲覧し得る。ARデバイスは、現実世界の場面に重ね合わされた仮想オブジェクトとして情報をユーザに提示し得る。仮想オブジェクトは、ユーザのみがHMDを介して仮想オブジェクトを閲覧することができるような方法で提示され得、他の人がHMDによって提示される仮想オブジェクトを見ることを実質的に防ぐことができる。したがって、ARデバイスを使用する間、ユーザは、ユーザのみが閲覧するための1つまたは複数の仮想オブジェクトで重ね合わされた現実世界の場面を閲覧し得る。これらの1つまたは複数の仮想オブジェクトと対話することは、仮想オブジェクトを読み取るかまたは場合によっては閲覧するためにユーザが自分の眼を移動させるおよび/または自分の眼の焦点を合わせることを伴い得る。
【００１５】
ARデバイスのサイズおよび/または重量を低下させるために、ARデバイスの電力消費は、バッテリー充電でのARデバイスのある程度の動作時間を依然として維持するとともに、1つまたは複数の物理的により小さいおよび/またはより少ない充電容量のバッテリーを使用することを可能にするために、低下され得る。
【００１６】
ARデバイスによって消費される電力量を低下させるために、ARデバイスのHMDの、可視光の尺度であるルーメン出力を低下させることができる。1つまたは複数のピコプロジェクタの使用を伴い得るAR眼鏡のHMDは、HMDのルーメン出力が低下するにつれて、より少ない電力を消費し得る。ARデバイスのHMDのルーメン出力を低下させることは電力消費の低下をもたらし得るが、ARデバイスがユーザにとって有用であり続けるためには、ARデバイスのHMDによって表示されている仮想オブジェクトをユーザが十分に見ることができる必要がある。HMDのルーメン出力が低下したときに、ユーザに提示される仮想オブジェクトの可視性を維持するために、ARデバイスによって提示される仮想オブジェクトの色、輝度、および/またはロケーションが変更され得る。
【００１７】
第1に、仮想オブジェクトを表示するために使用される1つまたは複数の色を調整することによって、仮想オブジェクトを提示するために使用される1つまたは複数の色が、仮想オブジェクトが重ね合わされる現実世界の場面の部分の色と対照をなす場合に、ディスプレイがより低いルーメン出力で動作している間、ARデバイスのHMDによって提示される仮想オブジェクトはユーザに見えるものであり続けることができる。たとえば、ユーザがARデバイスのHMDを介して(明るい青色であり得る)空を見ている場合、仮想オブジェクトは橙色(テキストおよび/またはグラフィックス)を使用してユーザに提示され得る。橙色のテキストまたはグラフィックスを使用することによって、仮想オブジェクトをユーザに表示するために使用されるHMDのルーメン出力は、依然としてユーザに十分に見えるものであり続けるとともに、仮想オブジェクトが白色などの別の色を使用してユーザに提示された場合よりも低く設定され得る。ユーザが今度は地面(たとえば、アスファルトで舗装された道路)の現実世界の場面を見ているように、ユーザが自分の視点を調整する場合、同じ仮想オブジェクトが白色(テキストおよび/またはグラフィックス)を使用してユーザに提示され得る。やはり、この例では、白色のテキストまたはグラフィックスを使用することによって、仮想オブジェクトをユーザに表示するために使用されるHMDのルーメン出力は、依然としてユーザに十分に見えるものであり続けるとともに、仮想オブジェクトが黒色などの別の色を使用してユーザに提示された場合よりも低く設定され得る。したがって、仮想オブジェクトの表示色を変更し、HMDのルーメン出力を(表示色が変更されなかった場合のルーメン出力と比較して)低減させることによって、HMDによって消費される電力量の低下が実現され得る。
【００１８】
前の例は橙色および白色に依存しているが、様々な色について類似の調整を行うことができる。したがって、情報の色を調整して、仮想オブジェクトが重なり合う現実世界のオブジェクトに対する高い量のコントラストを維持することによって、ARデバイスのディスプレイのより低いルーメン出力で、仮想オブジェクトを十分に見えるようにすることができる。
【００１９】
第2に、ARデバイスのHMDによって仮想オブジェクトが重ね合わされる現実世界のオブジェクトの輝度の測定値を使用して、HMDのルーメン出力を低減することができる。ARデバイスによって仮想オブジェクトが重ね合わされる現実世界のオブジェクトが明るく照明されていない場合、仮想オブジェクトが十分にユーザに見えるようにするために、仮想オブジェクトを高いルーメン出力で表示する必要がない場合がある。現実世界のオブジェクトが明るくなる(たとえば、部屋の中で明かりがつけられ、今では現実世界のオブジェクトがより明るく見える)場合、仮想オブジェクトのディスプレイのルーメン出力を上げて、ユーザに対する仮想オブジェクトの十分な可視性を維持することができる。さらに、ユーザの眼の焦点が考慮され得る。ユーザが仮想オブジェクトの方向を見ていないおよび/またはユーザの眼の焦点が仮想オブジェクトが投影されている仮想の平面に合っていない場合、仮想オブジェクトの輝度を低下させることができる。たとえば、ユーザが仮想オブジェクトとしてユーザに提示されているテキストを見ていない場合、テキストが読み取れることが重要ではない可能性があり、むしろ、ユーザが自分の眼の焦点をテキストに合わせている場合、テキストが読み取れるほど十分に明るいことだけが必要である可能性がある。
【００２０】
第3に、ARデバイスのHMDによってユーザに提示されている仮想オブジェクトは、ARデバイスのHMDによって表示され得、ここで、現実世界の場面に存在するオブジェクトは、より暗いか、またはさもなければそれらのオブジェクトの上に仮想オブジェクトを重ね合わせるのにさらに貢献する。たとえば、ユーザが動画のスクリーンを見ている場合、動画のスクリーンの側面から離れたエリアは、かなり一様に暗い可能性がある。ARデバイスによってユーザに提示されている仮想オブジェクトは、仮想オブジェクトが十分にユーザに見えるようにするためにARデバイスのHMDからのより低いルーメン出力が必要とされるように、これらのエリアで提示され得る。ユーザが自分の頭を動かし、今度は動画のスクリーンが以前は暗かった現実世界の場面の領域を占める場合、1つまたは複数の仮想オブジェクトは、動画のスクリーンの前に表示される状態から、今ではより暗くなっている現実世界の場面の一部の上に重ね合わされる状態に移動され得る。そのような移動は、ユーザによって閲覧される場面がある期間にわたって十分に静的なままであった(たとえば、少なくともしきい値期間にわたって特定の方向を見ていた)場合のみに生じ得る。
【００２１】
輝度に基づいて場面の領域に配置されている情報に加えて、現実世界の場面で識別されたオブジェクトに基づいておよび/またはユーザの眼の動きを追跡することによって、現実世界の場面の異なる領域に優先度を割り当てることができる。たとえば、現実世界の場面では、顔、テキスト(たとえば、本、雑誌)、および電子デバイスがユーザの関心を引くものである可能性があり、高い優先度が割り当てられ得る。天井、床、テーブルの上面、および壁などの、現実世界の場面の他の領域は、あまりユーザの関心を引くものではない可能性がある。ARデバイスは、これらの領域の各々について優先度を判断することができ、優先度が最も低い領域で表示するために仮想オブジェクトを重ね合わせることができる。一例として、ユーザがARデバイスで電子メールアプリケーション(この例では、仮想オブジェクト)を閲覧しており、ユーザが雑誌に目を落としている場合、電子メールアプリケーションは、雑誌のテキストおよびグラフィックスが電子メールアプリケーションによって不明瞭にならないように、ARデバイスのHMDによって表示するために配置され得る。
【００２２】
電力を節約するために仮想オブジェクトの色、輝度および/または位置が調整されるかどうかにかかわらず、バッテリー充電レベルが低下するにつれて、変更の「アグレッシブネス(aggressiveness)」は高くなり得る。変更のアグレッシブネスを高めることは、色、輝度および/または位置の変更の頻度を高めること、より大きい量だけ輝度を低下させること、輝度が低下し得るように仮想オブジェクトの色をより頻繁に調整すること、および/または輝度が低下し得るようにより頻繁に仮想オブジェクトを再配置することを伴い得る。一例として、バッテリーが50%よりも多い充電を有するとき、仮想オブジェクトが再配置されないおよび/または色が変更されない場合がある。しかしながら、50%を下回るとき、HMDの輝度およびARデバイスによって使用される電力が低下するように、仮想オブジェクトは周期的に再配置され得るまたは色が変更され得る。
【００２３】
仮想オブジェクトのそのような操作は、「ウィンドウマネージャ」によって実行され得る。ARデバイスのHMDの仮想の視界(FoV: field-of-view)を介してユーザに提示されている情報を表す仮想オブジェクトは、ユーザによって閲覧されている現実世界の場面の異なる領域の優先度に応じて、仮想のFoV内に再配置され得る。したがって、各アプリケーションの実行は影響を受けない可能性があり、むしろ、ウィンドウマネージャによって制御される際に、仮想のFoV内の位置(ならびに、場合によっては、輝度および/または色)のみが変更され得る。
【００２４】
図1は、HMDを使用して仮想オブジェクトをユーザに表示するように構成されたシステム100の一実施形態を示す。システム100は、画像キャプチャモジュール110と、オブジェクト、色、および輝度識別/追跡モジュール120と、ディスプレイモジュール130と、動き/焦点追跡モジュール135と、ユーザインターフェースモジュール140と、仮想オブジェクトマネージャ150と、ユーザ選好モジュール160と、電源モジュール170とを含み得る。システム100の他の実施形態は、より少ない数またはより多い数の構成要素を含み得る。システム100は拡張現実デバイスであってもよく、または拡張現実デバイスの一部であってもよい。そのようなARデバイスは、ユーザによって装着されるか、または他の方法で使用され得る。
【００２５】
画像キャプチャモジュール110は、システム100を装着しているか、または他の方法で使用しているユーザによって閲覧されている現実世界の場面の画像を周期的にキャプチャするように構成され得る。たとえば、画像キャプチャモジュール110は、ユーザによって閲覧されている現実世界の場面の視界をキャプチャするように配置された画像キャプチャデバイスを含み得る。画像キャプチャモジュール110は、1つまたは複数のカメラを含み得る。カメラは、それがユーザによって閲覧される場面の画像をキャプチャするようにポイントされ得る。画像キャプチャモジュール110は、画像を迅速にキャプチャし得る。たとえば、画像キャプチャモジュール110によって1秒ごとに複数のフレームがキャプチャされ得る。これらの画像の一部または全部は、人およびそれらの識別情報など、現実世界の場面内の様々なオブジェクトのロケーションを判断するために処理され得る。
【００２６】
画像キャプチャモジュール110によってキャプチャされた画像は、オブジェクト、色、および輝度識別/追跡モジュール120に渡され得る。オブジェクト、色、および輝度識別/追跡モジュール120は、複数の機能を実行し得る。第1に、現実世界の場面内に存在する色が識別され得る。現実世界の場面の1つまたは複数の領域について、色および/または主色が識別され得る。第2に、現実世界の場面の領域の輝度が識別され得る。現実世界の場面の1つまたは複数の領域について、輝度レベルが判断され得る。第3に、場面内の現実世界のオブジェクトが分類され追跡され得る。たとえば、人、顔、スクリーン、テキスト、色および/またはテクスチャの変動性が高いオブジェクト、床、天井、壁、類似の色および/または輝度レベルの領域、および/または現実世界の場面内の他のオブジェクトの位置が識別され得るおよび/または追跡され得る。本開示では、現実世界の場面における任意の眼に見えるアイテムは、現実世界のオブジェクトと見なされ得る。現実世界の場面内の現実世界のオブジェクトの色、輝度、および/または分類を評価して、仮想オブジェクトがどのようにユーザに提示されるべきかを判断することができる。
【００２７】
ディスプレイモジュール130は、仮想オブジェクトをユーザに提示するための出力デバイスとして働き得る。ディスプレイモジュール130は、ヘッドマウントディスプレイ(HMD)であり得る。たとえば、ディスプレイモジュール130は、ユーザの一方または両方の眼に光を直接投影するか、またはユーザが閲覧する反射面上に光を投影するプロジェクタを含み得る。いくつかの実施形態では、ユーザは、ディスプレイモジュール130によって光が投影される眼鏡(または単一レンズ)を装着する。したがって、ユーザは、場面に存在する仮想オブジェクトと現実世界のオブジェクトとを同時に閲覧し得る。ユーザが、仮想オブジェクトの後ろに人の顔などの現実世界のオブジェクトを少なくとも部分的に見ることが依然としてできるように、重ね合わされた仮想オブジェクトは半透明になり得る。ディスプレイモジュール130は、ユーザのみが仮想オブジェクトを閲覧することができるように構成され得る。ディスプレイモジュール130はHMDであり得るので、ユーザの近傍に存在する他の人には、仮想オブジェクトが実質的に見えないことがある。したがって、ユーザの近傍にいる他の人には、ディスプレイモジュール130がユーザに1つまたは複数の仮想オブジェクトを提示しているのかまたは提示していないのかを見分けること、および/あるいは仮想オブジェクトが場面に存在する人の顔または頭の上に重ね合わされるかどうかを見分けることが可能でないことがある。仮想オブジェクトマネージャ150からの入力に基づいて、仮想オブジェクトの色、位置、および/または輝度を設定するおよび/または変更することができる。ディスプレイモジュール130によって出力される光が少ないほど、ディスプレイモジュール130が使用し得る電力は少なくなる。したがって、簡略化された例として、ディスプレイモジュール130がそのルーメン出力を50%だけ低下させた場合、ディスプレイモジュール130によって消費される電力は約50%だけ低下し得る。したがって、ユーザに対する仮想オブジェクトの十分な可視性を維持しながら、ディスプレイモジュール130のルーメン出力を最小限に抑えること、またはより一般的には低下させることが望まれ得る。
【００２８】
動き/焦点追跡モジュール135は、ユーザの頭の角度および/またはユーザの眼の焦点の方向を判断するために使用され得る。ユーザの頭の角度を追跡するために、加速度計またはジャイロスコープが使用され得る。いくつかの実施形態では、ユーザの頭の角度に応じて、人の顔に重ね合わされた仮想オブジェクトは、表示のために顔からアンカリング解除され得る。動き/焦点追跡モジュール135は、ユーザの眼の焦点がどこに向けられているかを判断するために使用され得るカメラまたは他の形態の眼追跡デバイスを含み得る。したがって、動き/焦点追跡モジュール135は、ユーザが見ている方向および/またはユーザの眼の焦点が合っている深度を判断することが可能であり得る。したがって、ユーザの眼の焦点が仮想オブジェクトが提示される仮想の平面にまたは現実世界の場面内の現実世界のオブジェクトに合っているかどうかを判断することが可能であり得る。
【００２９】
ユーザインターフェースモジュール140は、ユーザがシステム100に入力を与えることを可能にし得る。たとえば、ユーザインターフェースモジュール140は、それの上に1つまたは複数のボタンを有するブレスレットであり得る。ユーザは、システム100に入力を与えるためにこれらのボタンを作動させ得る。たとえば、ユーザは、仮想オブジェクトおよび/または人のランキングを与えること、顔の重ね合わせをアクティブ化/非アクティブ化すること、ならびに/あるいは仮想オブジェクトと対話すること(たとえば、ユーザの電子メールアカウント内の電子メールを開くこと)を行いたいと希望し得る。ブレスレットはユーザインターフェースの1つの形態であるが、動き/焦点追跡モジュール135に組み込まれ得るボイス認識モジュールまたは視標追跡(eye-tracking)モジュールなど、ユーザが入力を与えるために様々な他のユーザインターフェースが使用され得ることを理解されたい。
【００３０】
仮想オブジェクトマネージャ150は、ディスプレイモジュール130を介してユーザに表示される仮想オブジェクトの色、輝度、および/または位置を調整するように働き得る。仮想オブジェクトマネージャ150は仮想オブジェクトの内容を制御しない場合があり、仮想オブジェクトの内容はアプリケーションを別途実行することによって制御され得る。むしろ、仮想オブジェクトの色、位置、および/または輝度は、仮想オブジェクトマネージャ150を介して制御され得る。仮想オブジェクトマネージャ150は、仮想オブジェクトに使用するための適切な色、位置、および/または輝度レベルを判断する際に使用するために、ユーザ選好モジュール160にアクセスすることができる。仮想オブジェクトマネージャ150は、オブジェクト、色、および輝度識別/追跡モジュール120からの入力を受信することができる。たとえば、識別/追跡モジュール120によって識別されたオブジェクト、色、および/または輝度に基づいて、仮想オブジェクトマネージャ150は、仮想オブジェクトの色を付け直す、輝度を調整するおよび/または仮想オブジェクトを再配置することができる。仮想オブジェクトマネージャ150は、仮想オブジェクトの内容に影響を及ぼさない場合がある。
【００３１】
ユーザ選好モジュール160は、ユーザ選好を記憶するように構成されたコンピュータ可読記憶媒体を使用して記憶され得る。ユーザ選好モジュール160は、仮想オブジェクトが上に重ね合わされた現実世界のオブジェクトと比較して仮想オブジェクトをどの程度より明るくすべきか、何色が仮想オブジェクトのコントラストを高めるために使用することが許可されるか、(場合によってはLab色空間における距離として定義される)コントラストをどの程度使用すべきか、現実世界の場面に(たとえば、天井、床、および壁に)重ね合わされる際の仮想オブジェクトの好ましい位置のランキングを、ユーザが特定するのを可能にすることができる。ユーザ選好モジュール160は他のユーザ選好を記憶することもできる。
【００３２】
電源モジュール170は、システム100に電力を供給することができる。電源モジュール170は、1つまたは複数のバッテリーを含み得る。ディスプレイモジュール130によって要求される電力量を低減することによって、電源モジュール170のサイズ、容量、および/またはコストを下げることができる。追加または代替として、ディスプレイモジュール130によって要求される電力量を低減することによって、電源モジュール170の1回の充電でシステム100が機能することができる時間の長さを延ばすことができる。したがって、仮想オブジェクトマネージャ150によって仮想オブジェクトの色、輝度、および/または位置を調整することによって、電源モジュール170の1回の充電でシステム100が機能することができる時間の長さを延ばすことができるならびに/あるいは電源モジュール170のサイズ、容量、および/またはコストを下げることができる。
【００３３】
システム100のモジュールのうちの少なくともいくつかは、図9のコンピュータシステム900などのコンピュータ化デバイスを使用して実装され得る。システム100のモジュールは、より少ない数またはより多い数のモジュールに組み合わされるかまたは分割され得る。複数のモジュールがコンピュータ化デバイスによって実装され得る。たとえば、仮想オブジェクトマネージャ150は、コンピュータ化デバイス(たとえば、プロセッサ、コンピュータシステム)によって実行される命令として実装され得る。
【００３４】
図2Aは、仮想オブジェクトの輝度、色、および/または位置が現実世界の場面に基づいて調整される、仮想オブジェクトをユーザに提示するために使用されているヘッドマウントディスプレイの第1の人の視点200Aの一実施形態を示す。図2Aの第1の人の視点200Aでは、現実世界の場面は、窓205、ディスプレイ210、机215、人225、絵230、壁235、壁240、および床245を含む、複数の現実世界のオブジェクトを含む。仮想オブジェクト250は、ARデバイスのHMDによって表示するために、場面の現実世界のオブジェクトの上に重ね合わされる。
【００３５】
第1の人の視点200Aの図示の実施形態では、2つの仮想オブジェクト250が現実世界の場面の部分の上に重ね合わされる。仮想オブジェクト250のロケーション、色、および/または位置は、場面内に存在する現実世界のオブジェクトに基づいて(かつARデバイスによってキャプチャされた画像中に存在するものとして)判断され得る。仮想オブジェクト250-1を参照すると、仮想オブジェクト250-1を表示するためのこのロケーションは、壁235の輝度に基づいて選択され得る。壁235は、窓205およびラップトップコンピュータのディスプレイ210ほど明るくなくてもよい。さらに、確立された優先度に基づいて、壁235は人225、ディスプレイ210、絵230、および窓205よりも低い優先度を有してもよい。したがって、壁235の上に仮想オブジェクト250-1を表示することによって、より高い優先度が割り当てられた現実世界のオブジェクトは完全にユーザの眼に見え続けることができる。仮想オブジェクト250-1の輝度および色は、壁235の視覚特性に基づいて判断され得る。仮想オブジェクト250-1の1つまたは複数の色は、壁235に対するコントラストを上げる(または最大にする)ように選択され得る。これは、記憶された「色環(color wheel)」に従って実現され得る。色環の反対側にある色は補色と呼ばれ得る。色環の反対側にある色は高いコントラストをもたらし得る。したがって、壁235が青色である場合、仮想オブジェクト250-1を表示する際に使用するために(色環の反対側から)黄色または橙色が選択され得る。黄色または橙色を使用することによって、仮想オブジェクト250-1が十分にユーザの眼に見え続けることを可能にしながら、仮想オブジェクト250-1をユーザに提示しているディスプレイの輝度を低下させることができる。
【００３６】
仮想オブジェクト250-1が投影されている壁235の判断された輝度に基づいて、仮想オブジェクト250-1の輝度が判断され得る。たとえば、仮想オブジェクト250-1が投影されている領域における壁235のルーメン測定値に基づいて、仮想オブジェクト250-1に対するディスプレイのルーメン出力が判断され得る。ユーザに表示するための仮想オブジェクトのルーメン出力は、少なくとも仮想オブジェクトが投影される現実世界のオブジェクトのルーメン出力を上回るしきい値量に維持され得る。また、ルーメン出力は、仮想オブジェクトを表示するために使用されている1つまたは複数の色に基づき得る。すなわち、HMDおよび/またはユーザの眼の特性により、ある色は他の色よりも現実世界のオブジェクトの背景色に対するコントラストを知覚しやすい場合がある。
【００３７】
仮想オブジェクト250-2を参照すると、仮想オブジェクト250-2を表示するためのこのロケーションは、床245および壁235の輝度に基づいて選択され得る。床245は、窓205およびディスプレイ210ほど明るくなくてもよい。さらに、確立された優先度に基づいて、床245および壁235は、人225、ディスプレイ210、絵230および窓205よりも低い優先度を有してもよい。壁235の上のオブジェクトおよび壁235の領域の上にすでに重ね合わされた仮想オブジェクト250-1により、仮想オブジェクト250-2は床(の少なくとも一部)の上に重ね合わされ得る。したがって、床245の上に仮想オブジェクト250-2を表示することによって、より高い優先度が割り当てられた現実世界のオブジェクトは完全にユーザの眼に見え続けることができる。仮想オブジェクト250-2の輝度および色は、床245および壁235の特性に基づいて判断され得る。
【００３８】
仮想オブジェクト250-2の1つまたは複数の色は、床245に対するコントラストを上げる(または最大にする)ように選択され得る。記憶された色環に従って、床245が茶色である場合、仮想オブジェクト250-2を表示する際に使用するために緑色または暗青緑色が選択され得る。緑色または暗青緑色を使用することによって、仮想オブジェクト250-2が十分にユーザの眼に見え続けることを可能にしながら、仮想オブジェクト250-2をユーザに提示しているディスプレイの輝度を低下させることができる。また、仮想オブジェクト250-2が投影されている(または投影されるべき)床245および壁235の判断された輝度に基づいて、仮想オブジェクト250-2の輝度が判断され得る。たとえば、仮想オブジェクト250-2が投影されている領域における床245のルーメン測定値に基づいて、仮想オブジェクト250-2に対するディスプレイのルーメン出力が選択され得る。ある仮想オブジェクトの輝度のルーメン出力は、別の仮想オブジェクトのディスプレイのルーメン出力とは異なり得る。したがって、仮想オブジェクト250-1は、仮想オブジェクト250-2とは異なるルーメン出力でHMDによって投影され得る。
【００３９】
ユーザの眼の焦点の方向および/または深度は、仮想オブジェクトの色および/または輝度に影響を及ぼし得る。ユーザが仮想オブジェクトを見ていないおよび/またはユーザが自分の眼の焦点を仮想オブジェクトが提示される仮想の平面に合わせていない場合、仮想オブジェクトは輝度が低下され得る。たとえば、ユーザが人225を見ている場合、仮想オブジェクト250-2および仮想オブジェクト250-1の輝度が低下され得る。ユーザが仮想オブジェクト250-1を見ている場合、仮想オブジェクト250-1の輝度が増加され得、仮想オブジェクト250-2の輝度がわずかに増加され得る。最も明るい仮想オブジェクトは、ユーザが見ている仮想オブジェクトであり得る。ユーザが自分の眼の焦点を仮想の平面に合わせている場合、すべての仮想オブジェクトを明るくしてもよい。ユーザが仮想オブジェクトの平面を越えて現実世界のオブジェクトに焦点を合わせている場合、すべての仮想オブジェクトは輝度が低下され得る。ユーザが現実世界のオブジェクトに焦点を合わせていると思われる場合、現実世界のオブジェクトの上に重ね合わされたまたは現実世界のオブジェクトを重ね合わせそうになっている仮想オブジェクトをサイズ変更する、移動する、および/または(輝度を低下させることによって)より透明にすることができる。ユーザの視線(line of sight)から少なくともしきい値距離にある仮想オブジェクトは、サイズ、位置、および/または輝度を変更しないままであってもよい。再配置され、サイズ変更され、ぼかされ、またはより透明にされた可能性がある仮想オブジェクトにユーザの眼の焦点が戻ると、仮想オブジェクトは、サイズ、位置、輝度、および/または鮮鋭度において、その前の表示状態に戻ることができる。
【００４０】
視点200は例示のみを目的としたものであり、仮想オブジェクトを投影するために使用されるロケーション、色、および輝度は、特定の現実世界の場面および/またはユーザ選好に基づいて変わり得ることを理解されたい。上記の説明は仮想オブジェクトの位置、色、および輝度が調整されることに重点を置いているが、場合によってはユーザ選好に基づいて、これらの特性の一部のみが調整され得ることを理解されたい。たとえば、いくつかの実施形態では、色が調整されず、仮想オブジェクトの位置および輝度のみが調整される可能性がある。
【００４１】
上記の説明は、仮想オブジェクトがユーザに表示するために優先度が低い領域に移動されることに重点を置いている。代替または追加として、仮想オブジェクトのサイズも調整され得ることを理解されたい。たとえば、重要度が低い領域内に収めるために、仮想オブジェクトのサイズを縮小することができる。重要度が低い領域が増大する場合、仮想オブジェクトのサイズが増大されて、重要度が低い領域のより大きい部分を占め得る。
【００４２】
図2Aでは、ユーザの一部は見えない。しかしながら、ユーザが自分の腕を伸ばしたおよび/または下を向いた場合、ユーザの手および/または腕など、ユーザの何らかの部分が見え得ることを理解されたい。ユーザが自分の手もしくは腕またはその近くを見ているとき、ユーザは自分が何をしているか(オブジェクトを処理しているまたは操作しているなど)を見たいと思う場合がある。したがって、ユーザが自分の手および/または腕をはっきり閲覧するのを可能にするために、仮想オブジェクトを透明にする、ぼかす、移動させるおよび/またはサイズ変更することができる。したがって、ユーザ自身の体に高い優先度を与えることができる。ユーザの手および/または腕は、肌の色合いの認識を介して検出され得る。ユーザがオブジェクトの処理または操作を完了すると、ユーザの手および/または腕が以前に占めていた場面の少なくとも一部を占めるように、仮想オブジェクトを拡大する、再配置する、および/または明るくすることができる。
【００４３】
仮想オブジェクトがサイズ変更され得るときの別の例として、ユーザが、人225などと面と向かって会話している場合、ユーザとその人が互いの近くに立っていると、その人の顔は場面のかなりの部分を占め得る。その人の顔が場面のしきい値割合よりも多くを占める場合、その人の顔が不明瞭にならないように、一部またはすべての仮想オブジェクトはサイズが縮小され得る。いくつかの実施形態では、その人の顔に重なる仮想オブジェクトのみがサイズ変更され得る。
【００４４】
さらに、いくつかの実施形態では、ジャイロスコープおよび/または加速度計を使用して、ユーザの注意が移ったときを検出することができる。たとえば、ユーザが自分の頭を特定の方向に急速に動かした場合、ユーザの注意が移り、少なくともしきい値期間にわたって、またはユーザが仮想オブジェクトの再表示を要求する入力を与えるまで、仮想オブジェクトの一部またはすべてが最小化されるか、または別の方法でディスプレイから遮られ得ると仮定され得る。
【００４５】
図2Bは、優先度が異なる領域が図示された、HMDの第1の人の視点200Bの一実施形態を示す。図2Aに関して説明したように、異なる優先度レベルが、現実世界の場面の上に重ね合わされた仮想の視界の異なる部分に割り当てられ得る。現実世界の場面内に存在する現実世界のオブジェクトに基づいて、異なる領域が定義され、異なる領域に優先度が割り当てられ得る。図2Bでは、6つの領域が定義され、これらの領域に優先度が割り当てられる。例示のみを目的として、これらの領域の輪郭が想像上の点線のボックスで描かれている。領域260-1は人225を含むように画定され、(たとえば、人の存在に基づいて)最も高い優先度が与えられる。領域260-2はディスプレイ210および机215を含むように画定され、(たとえば、ユーザが閲覧したいおよび/または対話したいと望み得るオブジェクトであることに基づいて)2番目に高い優先度が与えられる。領域260-3は窓205を含むように画定され、3番目に高い優先度が与えられる。領域260-4は絵230を含むように画定され、4番目に高い優先度が与えられる。領域260-5は床245および壁235を含むように画定され、5番目に高い優先度が与えられる。領域260-6は壁235の一部を含むように画定され、領域260の最も低い優先度が与えられる。最も低い優先度を有する領域は、仮想オブジェクトを表示するために最初に使用され得る。したがって、2つの表示される仮想オブジェクトは、場面内の最も優先度が低い現実世界のオブジェクトに対応する仮想の視界の領域に表示される。
【００４６】
様々なタイプの領域の分類は、ユーザによって設定され得る。たとえば、ユーザは、ユーザ選好によって、窓の優先度が高いことを指定することができる。これは、ユーザが、自分の視界が仮想オブジェクトによって遮られることなく、窓の外を見るのが好きであるためであり得る。ユーザは床および壁を低優先度として設定することができ、したがって、そのように分類された領域は、仮想オブジェクトを重ね合わせるために最初に使用され得る。Table 1(表1)は、現実世界の場面内の領域を分類するために使用される例示的なランキングシステムを示す。この表による特定の分類が現実世界の場面内に存在しない場合、この分類は優先度を判断するために使用されないことがある。
【００４７】
【表１】
0006312690.tif 000002
【００４８】
例示的なTable 1(表1)によれば、仮想オブジェクトは、優先度が最も低い領域の上に表示され得る。したがって、ユーザによって閲覧される場面に存在する場合、仮想オブジェクトを提示するためにブランクスペースが使用され得る。現実世界の場面内にブランクスペースが存在しないか、またはブランクスペースがすでに仮想オブジェクトと重ね合わされている場合、次に優先度が低い領域が使用され得る。Table 1(表1)の例では、任意の家具(たとえば、テーブル、椅子)は、仮想オブジェクトと重ね合わされ得る。何も存在しないか、または存在する家具がすでに仮想オブジェクトと重ね合わされている場合、ディスプレイデバイスは、存在する場合、仮想オブジェクトと重ね合わされ得る。いくつかの実施形態では、いくつかの優先度レベルは決して仮想オブジェクトと重ね合わされ得ない。たとえば、いくつかの分類は、決して仮想オブジェクトと重ね合わされないように設定され得る。Table 1(表1)の例では、現実世界の場面に存在するユーザ自身の体およびテキストは、決して仮想オブジェクトと重ね合わされない。ユーザは、ユーザ選好によって、決して仮想オブジェクトと重ね合わされない分類を指定することができる。
【００４９】
図1のシステムを使用して、様々な方法を実行することができる。様々な方法を実行して、ARデバイスのHMDを配置する、ARデバイスのHMDの色を調整する、および/またはARデバイスのHMDの輝度を調整することができる。図3は、現実世界の場面のオブジェクトに応じて仮想オブジェクトの色を調整するための方法300の一実施形態を示す。システム100、またはHMDを使用して仮想オブジェクトをユーザに表示するように構成された何らかの他のシステムを含む拡張現実(AR)デバイスなどのARデバイスを使用して、方法300を実行することができる。図9のコンピュータシステム900などのコンピュータ化デバイスを使用して、方法300の少なくともいくつかのステップを実行することができる。方法300を実行するための手段は、コンピュータ化デバイス、カメラ、ヘッドマウントディスプレイ、および電源のうちの1つまたは複数を含む。方法300を実行するための手段は、システム100のモジュールのうちの1つまたは複数を含み得る。方法300を実行するための手段は、1つまたは複数のプロセッサを含み得る。
【００５０】
ステップ310で、現実世界の場面の画像は、ARデバイスによってキャプチャされ得る。そのような画像は、カメラを使用してキャプチャされ得る。カメラは、ユーザの眼と同じまたはユーザの眼に類似した視点をキャプチャするように向けられ得る。したがって、カメラによってキャプチャされた画像は、ユーザの視界と交わる視界を含み得る。画像は、1秒当たり複数回など、周期的にキャプチャされ得る。そのような画像は、ARデバイスの処理モジュールに渡され得る。
【００５１】
ステップ320で、仮想オブジェクトが現在重ね合わされているまたはこれから重ね合わされる現実世界の場面の領域に存在する1つまたは複数の色が判断され得る。色を判断するために、ステップ310でキャプチャされた画像が解析され得る。仮想オブジェクトが重ね合わされているまたはこれから重ね合わされる現実世界の場面の領域に複数の色が存在する場合、主色または平均色が判断され得る。たとえば、現実世界の場面の領域が、細い黒色のピンストライプが入った明るい灰色の壁紙で覆われた壁である場合、主色は明るい灰色であると判断され得る。いくつかの実施形態では、その上に仮想オブジェクトが重ね合わされているまたは重ね合わされることになる画像の領域における各ピクセルのRGB成分は、平均色を判断するために平均化され得る。そのようなRGB成分を使用することは、ピクセルの輝度を考慮に入れることができる(各成分値が大きくなるほど、測定される輝度が大きくなる)。
【００５２】
いくつかの実施形態では、仮想オブジェクトが重ね合わされるべき現実世界の場面の領域の色を使用するだけではなく、追加または代替として、ステップ310でキャプチャされた画像からの仮想オブジェクトの周囲の既定のピクセル数を使用して、仮想オブジェクトを表示するために使用されるべき1つまたは複数の色を判断することができる。
【００５３】
ステップ330で、1つまたは複数の表示色は、1つまたは複数の色、ステップ320で識別された主色、または平均色を使用して判断され得る。現実世界の場面の背景と、現実世界の場面の領域に重ね合わされた仮想オブジェクトとの間のコントラストを最大にする(または少なくとも上げる)ために、色環の反対側にある色などの補色が判断され得る。ユーザ選好(使用する色または使用しない色など)は、仮想オブジェクトを表示する際に使用するためにどの色が選択されるかを判断する際に使用され得る。
【００５４】
記憶された色環を使用する際、その上に仮想オブジェクトが重ね合わされるべき領域の主色または平均色は、その色環上に位置し得る。仮想オブジェクトを表示する際に使用するためのコントラストが高い色を選択するために、色環の反対側にある色が選択され得る。このコントラスト色は、色環の中心を通る線に沿って位置し得る。いくつかの実施形態では、コントラスト色の補色となる色が使用され得る。この補色は、コントラスト色から色環を中心に時計回りまたは反時計回りに既定の距離だけ移動することによって、位置し得る。
【００５５】
記憶された色環を使用するのではなく、ユーザが閲覧するための十分なコントラストをもたらすコントラスト色を判断するためにLab色空間が使用され得る。L-a-b色空間では、Lは明度を定義し、aは赤色から緑色を定義し、bは黄色から青色を定義する。現実世界の場面の領域の主色または平均色は、Lab色空間に位置し得る。仮想オブジェクトを表示するために使用される色は、少なくともLab色空間内の平均色または主色のロケーションから離れた既定の距離にあることを必要とし得る。いくつかの実施形態では、1つまたは複数の色が仮想オブジェクトが重ね合わされる現実世界の場面の領域の平均色または主色までのしきい値距離を下回らない限り、仮想オブジェクトの1つまたは複数の色は変更されないことがある。仮想オブジェクトの色が変更された場合、新たに選択された色は、少なくともLab色空間内で仮想オブジェクトが重ね合わされる現実世界の場面の領域の主色または平均色から離れたしきい値距離にあることを必要とし得る。
【００５６】
いくつかの実施形態では、ユーザは、仮想オブジェクトを提示するためにどの色が使用されるべきかを、仮想オブジェクトが重ね合わされるべき現実世界の場面の領域の主色または平均色に基づいて定義する表を定義することができる(またはデフォルトを使用することができる)。たとえば、Table 2(表2)を使用して、仮想オブジェクトのために使用されるべき色を定義することができる。「背景」は、仮想オブジェクトが重ね合わされるべき現実世界の場面の領域の色を指し得る。「前景」は、仮想オブジェクトのために使用する色を指し得る。
【００５７】
【表２】
0006312690.tif 000003
【００５８】
ステップ340で、仮想オブジェクトは、ステップ330で判断された1つまたは複数の表示色を使用して、ユーザに表示され得る。表示は、HMDを介してユーザに対して行われ得る。判断された1つまたは複数の色は仮想オブジェクト全体に使用されないことがあり、むしろ、仮想オブジェクトのテキストなど、仮想オブジェクトの一部分のみが、判断された表示色を使用し得る。判断された表示色を使用することによって、仮想オブジェクト(の少なくとも一部)と、仮想オブジェクトが重ね合わされる現実世界の場面の部分(および/または仮想オブジェクトを取り囲む現実世界の場面の一部分)との間のコントラストの量が増大し得る。
【００５９】
ステップ350で、仮想オブジェクトの少なくとも一部と、仮想オブジェクトが重ね合わされる現実世界のオブジェクトとの間のより高いコントラストにより、ユーザに対する十分な可視性を維持しながら、HMD上に表示される仮想オブジェクトの輝度が低下され得る。ユーザに対する「十分な可視性」を維持するために必要な輝度の量は、ユーザ選好によって定義され得る。ユーザによって定義され得る、この十分な可視性特性は、Lab色空間内の最小距離を判断する際に使用するための距離に変換され得る。たとえば、十分な可視性特性によって指定されるコントラストが大きくなるほど、Lab色空間内のコントラスト色に使用される距離が大きくなる。
【００６０】
ステップ360で、ステップ340を実行するHMDによって消費される電力量は、重ね合わされた現実世界のオブジェクトの色に対してコントラストが低い表示色が使用された場合の状況と比較して、低下され得る。仮想オブジェクトを表示するためにより強いコントラスト色が使用され得るので、ステップ350で、表示される仮想オブジェクトの輝度が低下され得る。この輝度の低下により、HMDは仮想オブジェクトを表示する際により少ない電力を消費し得る。
【００６１】
バッテリー充電の量は、仮想オブジェクトがどのように表示されるかに影響を及ぼし得る。バッテリーが25%などの充電しきい値を下回るとき、バッテリー寿命を維持するために、仮想オブジェクトの色(および輝度)が調整されるだけである場合がある。そのような設定はユーザ定義され得る。したがって、方法300は、ARデバイスのバッテリー充電レベルがしきい値レベルに達するまで実行されないことがある。
【００６２】
図4は、現実世界の場面のオブジェクトに応じて仮想オブジェクトの輝度を調整するための方法の一実施形態を示す。方法400は、システム100、またはHMDを使用して仮想オブジェクトをユーザに表示するように構成された何らかの他のシステムを含む拡張現実(AR)デバイスなどのARデバイスを使用して実行され得る。図9のコンピュータシステム900などのコンピュータ化デバイスを使用して、方法400の少なくともいくつかのステップを実行することができる。方法400を実行するための手段は、コンピュータ化デバイス、カメラ、ヘッドマウントディスプレイ、および電源のうちの1つまたは複数を含む。方法400を実行するための手段は、システム100のモジュールのうちの1つまたは複数を含み得る。方法400を実行するための手段は、1つまたは複数のプロセッサを含み得る。方法400は、図3の方法300の1つまたは複数のステップとともに実行され得る。
【００６３】
ステップ410で、現実世界の場面の画像は、ARデバイスによってキャプチャされ得る。そのような画像は、カメラを使用してキャプチャされ得る。カメラは、ユーザの眼と同じまたはユーザの眼に類似した視点をキャプチャするように向けられ得る。したがって、カメラによってキャプチャされた画像は、ユーザの視界と交わる視界を含み得る。画像は、1秒当たり複数回など、周期的にキャプチャされ得る。そのような画像は、ARデバイスの処理モジュールに渡され得る。
【００６４】
ステップ420で、仮想オブジェクトが現在重ね合わされているまたはこれから重ね合わされる現実世界の場面の領域に存在する現実世界のオブジェクトの輝度が判断され得る。輝度を判断するために、ステップ410でキャプチャされた画像が使用され得る。領域にわたる平均輝度または領域内の最も明るい測定値が使用され得る。領域がより明るいと判断されるほど、ユーザに対する十分な可視性のために必要とされ得る仮想オブジェクトの輝度がより高くなる。
【００６５】
いくつかの実施形態では、仮想オブジェクトが重ね合わされるべき現実世界の場面の領域の輝度を使用するだけでなく、追加または代替として、ステップ410でキャプチャされた画像内の仮想オブジェクトの周囲の規定のピクセル数を使用して、仮想オブジェクトを表示するために使用されるべき輝度を判断することができる。たとえば、閲覧した際に、仮想オブジェクトのすぐ側に明るい現実世界のオブジェクトが存在する場合、ユーザに対する十分な可視性のために仮想オブジェクトの輝度が増大され得る。
【００６６】
ステップ430で、焦点深度および/またはユーザの眼の焦点の方向が判断され得る。仮想オブジェクトの輝度は、ユーザの眼の焦点に基づいて調整され得る。ユーザが仮想オブジェクトから離れる方向を見ているおよび/または仮想オブジェクトが投影される仮想の平面に焦点を合わせていない場合、仮想オブジェクトの輝度を低下させることができる。たとえば、ユーザが仮想オブジェクトを直接見ており、仮想オブジェクトが投影される仮想の平面に焦点を合わせているとき、テキストを含む仮想オブジェクトは、読み取れるほど十分に明るいことだけが必要である可能性がある。そうでない場合、仮想オブジェクトは、ユーザが仮想オブジェクトの位置を特定するのに十分に明るいことだけが必要である可能性がある。一例として、複数の仮想オブジェクトがユーザに提示されている場合、もしあるとすれば、ユーザが自分の眼の焦点を合わせている1つの仮想オブジェクトのみが高いレベルの輝度で表示され得る。
【００６７】
ステップ440で、仮想オブジェクトは、ステップ420で判断された現実世界の場面の領域の輝度レベルに基づいた輝度レベルを使用しておよび/またはステップ430で判断されたユーザの眼の焦点に基づいて、ユーザに表示され得る。したがって、仮想オブジェクトの輝度は、仮想オブジェクトが重ね合わされる現実世界のオブジェクトの上で見えるように維持され得る。ユーザ選好は、ユーザに対する十分な可視性を維持するために、その上に仮想オブジェクトが重ね合わされる現実世界のオブジェクトと比較して、仮想オブジェクトが何ルーメンだけより明るく見えるべきかを判断するために使用され得る。ユーザは、仮想オブジェクトと、その上に仮想オブジェクトが重ね合わされる現実世界の場面の領域との間のルーメンの最小差を判断するために使用され得る「輝度コントラスト特性」を定義することができる。仮想オブジェクトの輝度レベルを調整することによって、仮想オブジェクトが薄暗い現実世界のオブジェクトの上に重ね合わされるとき、HMDによって仮想オブジェクトを提示するために使用される輝度の量を低減することができ、したがって、場合によっては、HMDによって消費される電力がより少なくなる。
【００６８】
ステップ450で、ステップ440を実行するHMDによって消費される電力量は、仮想オブジェクトを提示するためにより高い輝度レベルが使用された場合の状況と比較して、低下され得る。輝度の低下により、HMDは仮想オブジェクトを表示する際により少ない電力を消費し得る。
【００６９】
バッテリー充電の量は、仮想オブジェクトがどのように表示されるかに影響を及ぼし得る。バッテリーが25%などの充電しきい値を下回るとき、バッテリー寿命を維持するために、仮想オブジェクトの輝度が調整されるだけである場合がある。そのような設定はユーザ定義され得る。したがって、方法400は、ARデバイスのバッテリー充電レベルがしきい値レベルに達するまで実行されないことがある。
【００７０】
図5は、現実世界の場面のオブジェクトの輝度に応じて仮想オブジェクトの位置を調整するための方法の一実施形態を示す。方法500は、システム100、またはHMDを使用して仮想オブジェクトをユーザに表示するように構成された何らかの他のシステムを含む拡張現実(AR)デバイスなどのARデバイスを使用して実行され得る。図9のコンピュータシステム900などのコンピュータ化デバイスを使用して、方法500の少なくともいくつかのステップを実行することができる。方法500を実行するための手段は、コンピュータ化デバイス、カメラ、ヘッドマウントディスプレイ、および電源のうちの1つまたは複数を含む。方法500を実行するための手段は、システム100のモジュールのうちの1つまたは複数を含み得る。方法500を実行するための手段は、1つまたは複数のプロセッサを含み得る。方法500は、図3の方法300および/または図4の方法400の1つまたは複数のステップとともに実行され得る。
【００７１】
ステップ510で、現実世界の場面の画像は、ARデバイスによってキャプチャされ得る。そのような画像は、カメラを使用してキャプチャされ得る。カメラは、ユーザの眼と同じまたはユーザの眼に類似した視点をキャプチャするように向けられ得る。したがって、カメラによってキャプチャされた画像は、ユーザの視界と交わる視界を含み得る。画像は、1秒当たり複数回など、周期的にキャプチャされ得る。そのような画像は、ARデバイスの処理モジュールに渡され得る。
【００７２】
ステップ520で、現実世界の場面に存在する現実世界のオブジェクトの輝度が判断され得る。輝度を判断するために、ステップ510でキャプチャされた画像が使用され得る。現実世界の場面の様々な領域の平均輝度が判断され得る。領域がより明るいと判断されるほど、ユーザに対する十分な可視性のために必要とされ得る重ね合わされた仮想オブジェクトの輝度がより高くなる。また、ステップ520で、現実世界の場面の様々な領域に存在する1つまたは複数の色が判断され得る。色を判断するために、ステップ510でキャプチャされた画像が解析され得る。複数の色が存在する場合、現実世界の場面の様々な領域について主色または平均色が解析され得る。いくつかの実施形態では、画像の領域における各ピクセルのRGB成分は、平均色を判断するために平均化され得る。そのようなRGB成分を使用することは、ピクセルの輝度を考慮に入れることができる(各成分値が大きくなるほど、測定される輝度が大きくなる)。
【００７３】
ステップ530で、ステップ520で識別された場面内の現実世界のオブジェクトの輝度および/または色に基づいて、HMDを介してユーザに提示される仮想オブジェクトの位置が選択され得る。位置は、ユーザに対する可視性のために仮想オブジェクトを十分に照明するのに必要なHMDのルーメン出力を低下させることによって、電力節約を最大にするように判断され得る。したがって、現実世界の場面のより暗い領域および/または一貫した色を有する場面の領域は、1つまたは複数の仮想オブジェクトを表示するために使用され得る。さらに、一定の色の上に仮想オブジェクトを投影することが、より電力効率が良い場合がある。たとえば、青色の現実世界のオブジェクトの上に仮想オブジェクトを重ね合わせることは、(ユーザに対する可視性を維持しながら)ディスプレイによって出力される光を、白色の現実世界のオブジェクトの上に重ね合わされた仮想オブジェクトほど多く必要としない場合がある。
【００７４】
ステップ540で、仮想オブジェクトは、ステップ530で判断された位置でユーザに表示され得る。これは、仮想オブジェクトを第1の表示位置から第2の表示位置に移動させることを伴い得る。仮想オブジェクトの位置を調整することによって、HMDによって仮想オブジェクトを提示するために使用される輝度の量は、仮想オブジェクトを(現実世界の場面の他の領域に対して)現実世界の場面の薄暗い領域または選択された色の現実世界のオブジェクト(たとえば、暗い色の現実世界のオブジェクト)の上に重ね合わせることによって、低減され得る。
【００７５】
仮想オブジェクトがしばしば過度に移動されないように、しきい値回数が設定され得る。たとえば、仮想オブジェクトが移動されると、1分など、定義された期間にわたって、仮想オブジェクトを再度移動させることができなくなることがある。いくつかの実施形態では、ユーザの頭が動き回っていることが検出された場合、仮想オブジェクトはある期間にわたって移動することができない。仮想オブジェクトは、ユーザの頭が、30秒など、ある期間にわたって特定の方向を見ていた後に、再配置されるだけであり得る。これの一例として、ユーザが廊下を歩いていて、ユーザの視界が絶えず変わっている場合、仮想オブジェクトの位置は再配置され得ない。しかしながら、ユーザが机に着き、30秒など、ある期間にわたって自分のコンピュータスクリーンを見ていた後に、仮想オブジェクトを(ユーザによって閲覧される現実世界の場面のより暗い部分の上にコンピュータスクリーンの側から離してなど)再配置することができる。
【００７６】
ステップ550で、仮想オブジェクトの少なくとも一部と、仮想オブジェクトが重ね合わされる現実世界の場面の領域(および、場合によっては、仮想オブジェクトの周りの領域)との間のコントラストおよび/または輝度の差により、ユーザに対する仮想オブジェクトの可視性を維持しながら、HMD上に表示される仮想オブジェクトの輝度が低下され得る。ユーザに対する「十分な可視性」を維持するために必要な輝度の量は、ユーザ選好によって定義され得る。
【００７７】
ステップ560で、ステップ540を実行するディスプレイによって消費される電力量は、仮想オブジェクトを再配置することなく、仮想オブジェクトを表示するためにより高い輝度および/または異なる色が使用された場合と比較して、低下され得る。バッテリー充電の量は、仮想オブジェクトがどのように表示されるかに影響を及ぼし得る。バッテリーが25%などの充電しきい値を下回るとき、バッテリー寿命を維持するために、仮想オブジェクトの位置が調整されるだけである場合がある。そのような設定はユーザ定義され得る。したがって、方法500は、ARデバイスのバッテリー充電レベルがしきい値レベルに達するまで実行されないことがある。
【００７８】
図6は、現実世界の場面に存在するオブジェクトの優先度に応じて仮想オブジェクトの位置を調整するための方法の一実施形態を示す。方法600は、システム100、またはHMDを使用して仮想オブジェクトをユーザに表示するように構成された何らかの他のシステムを含む拡張現実(AR)デバイスなどのARデバイスを使用して実行され得る。図9のコンピュータシステム900などのコンピュータ化デバイスを使用して、方法600の少なくともいくつかのステップを実行することができる。方法600を実行するための手段は、コンピュータ化デバイス、カメラ、ヘッドマウントディスプレイ、および電源のうちの1つまたは複数を含む。方法600を実行するための手段は、システム100のモジュールのうちの1つまたは複数を含み得る。方法600を実行するための手段は、1つまたは複数のプロセッサを含み得る。方法600は、図3の方法300、図4の方法400、および/または図5の方法500の1つまたは複数のステップとともに実行され得る。
【００７９】
ステップ610で、現実世界の場面の画像は、ARデバイスによってキャプチャされ得る。そのような画像は、カメラを使用してキャプチャされ得る。カメラは、ユーザの眼と同じまたはユーザの眼に類似した視点をキャプチャするように向けられ得る。したがって、カメラによってキャプチャされた画像は、ユーザの視界と交わる視界を含み得る。画像は、1秒当たり複数回など、周期的にキャプチャされ得る。そのような画像は、ARデバイスの処理モジュールに渡され得る。
【００８０】
ステップ620で、現実世界の場面に存在する現実世界のオブジェクトの輝度が判断され得る。輝度を判断するために、ステップ610でキャプチャされた画像が使用され得る。現実世界の場面の様々な領域の平均輝度が判断され得る。領域がより明るいと判断されるほど、ユーザに対する十分な可視性のために必要とされ得る重ね合わされた仮想オブジェクトの輝度がより高くなる。また、ステップ620で、現実世界の場面の様々な領域に存在する1つまたは複数の色が判断され得る。色を判断するために、ステップ610でキャプチャされた画像が解析され得る。複数の色が存在する場合、現実世界の場面の様々な領域について主色または平均色が解析され得る。いくつかの実施形態では、画像の領域における各ピクセルのRGB成分は、平均色を判断するために平均化され得る。そのようなRGB成分を使用することは、ピクセルの輝度を考慮に入れることができる(各成分値が大きくなるほど、測定される輝度が大きくなる)。
【００８１】
ステップ630で、ステップ620で識別された場面内の現実世界のオブジェクトの輝度および/または色に基づいて、HMDを介してユーザに提示される仮想オブジェクトの位置が選択され得る。位置は、ユーザに対する可視性のために仮想オブジェクトを十分に照明するのに必要なHMDのルーメン出力を低下させることによって、電力節約を最大にするように判断され得る。したがって、現実世界の場面のより暗い領域および/または一貫した色を有する場面の領域は、1つまたは複数の仮想オブジェクトを表示するために使用され得る。さらに、一定の色の上に仮想オブジェクトを投影することが、より電力効率が良い場合がある。たとえば、青色の現実世界のオブジェクトの上に仮想オブジェクトを重ね合わせることは、(ユーザに対する可視性を維持しながら)ディスプレイによって出力される光を、白色の現実世界のオブジェクトの上に重ね合わされた仮想オブジェクトほど多く必要としない場合がある。
【００８２】
ステップ640で、1つまたは複数の表示色は、1つまたは複数の色、ステップ620で識別された主色、または平均色を使用して判断され得る。現実世界の場面の背景と、現実世界の場面の領域に重ね合わされた仮想オブジェクトとの間のコントラストを最大にする(または少なくとも上げる)ために、色環の反対側にある色などの補色が判断され得る。ユーザ選好(使用する色または使用しない色など)は、仮想オブジェクトを表示する際に使用するためにどの色が選択されるかを判断する際に使用され得る。色環またはLab色空間は、(ステップ330に関して詳述したように)1つまたは複数の表示色を判断するために使用され得る。
【００８３】
いくつかの実施形態では、輝度を低下させるために、色または位置を更新する(両方を変えるのではなく)ことがより効率的であるかどうかが判断され得る。たとえば、現実世界の場面が一様に明るい場合、仮想オブジェクトのコントラストが調整され得る。しかしながら、現実世界の場面が暗いエリアを有する場合、コントラストが調整されることなく、その代わりに仮想オブジェクトが再配置され得る。(輝度を調整するために)一方または両方の特性が同時に調整され得るかどうかは、ユーザ選好に従って定義され得る。
【００８４】
ステップ650で、仮想オブジェクトは、ステップ630およびステップ640で判断された位置、1つもしくは複数の色、および/または輝度で、ユーザに表示され得る。これは、仮想オブジェクトを第1の表示位置から第2の表示位置に移動させることを伴い得る。仮想オブジェクトの位置を調整することによって、HMDによって仮想オブジェクトを提示するために使用される輝度の量は、仮想オブジェクトを(現実世界の場面の他の領域に対して)現実世界の場面の薄暗い領域または選択された色の現実世界のオブジェクト(たとえば、暗い色の現実世界のオブジェクト)の上に重ね合わせることによって、低減され得る。
【００８５】
仮想オブジェクトがしばしば過度に移動される、色が変更されるおよび/または輝度が変更されることがないように、しきい値回数が設定され得る。たとえば、仮想オブジェクトが移動されると、1分など、定義された期間にわたって、仮想オブジェクトを再度変更することができなくなることがある。いくつかの実施形態では、ユーザの頭が動き回っていることが検出された場合、仮想オブジェクトはある期間にわたって移動することができない。仮想オブジェクトは、ユーザの頭が、30秒など、ある期間にわたって特定の方向を見ていた後に、再配置されるだけであり得る。
【００８６】
仮想オブジェクトが移動するとき、仮想オブジェクトが第1の位置から消えて第2の位置に再び現れるというよりむしろ、仮想オブジェクトは第1の位置から第2の位置に視覚的に「スライド」することができる。いくつかの実施形態では、(変更が有利であると判断された場合)すべての仮想オブジェクトは同時に再配置され、色を付け直され、および/または輝度が調整され得る。したがって、仮想オブジェクトの提示は、ユーザにとっては同時に変わるように見えることになる。ユーザが最も多く(場合によっては、ユーザが自分の眼の焦点を仮想オブジェクトに合わせるのに費やす時間に基づいて)対話する仮想オブジェクトは、最も人気がある仮想オブジェクトの輝度が表示されている他の仮想オブジェクトよりも低く維持され得るように、現実世界の場面の最も暗いエリアの上に位置し得る。したがって、ユーザが仮想オブジェクトを見ているときに仮想オブジェクトの輝度が増大した場合、最も頻繁に見ていた仮想オブジェクトの輝度は、可視性を維持しながら、より低いルーメンレベルに維持され得る。
【００８７】
ステップ660で、HMDによって消費される電力量は、仮想オブジェクトを再配置するまたは色を付け直すことなく、仮想オブジェクトを表示するために異なる位置、より高い輝度および/または異なる色が使用された場合と比較して、低下され得る。バッテリー充電の量は、仮想オブジェクトがどのように表示されるかに影響を及ぼし得る。バッテリーが25%などの充電しきい値を下回るとき、バッテリー寿命を維持するために、仮想オブジェクトの位置、色、および/または輝度が調整されるだけである場合がある。そのような設定はユーザ定義され得る。したがって、方法600は、ARデバイスのバッテリー充電レベルがしきい値レベルに達するまで実行されないことがある。
【００８８】
図7は、現実世界の場面に存在するオブジェクトの優先度に応じて仮想オブジェクトの位置を調整するための方法の一実施形態を示す。方法700は、システム100、またはHMDを使用して仮想オブジェクトをユーザに表示するように構成された何らかの他のシステムを含む拡張現実(AR)デバイスなどのARデバイスを使用して実行され得る。図9のコンピュータシステム900などのコンピュータ化デバイスを使用して、方法700の少なくともいくつかのステップを実行することができる。方法700を実行するための手段は、コンピュータ化デバイス、カメラ、ヘッドマウントディスプレイ、および電源のうちの1つまたは複数を含む。方法700を実行するための手段は、システム100のモジュールのうちの1つまたは複数を含み得る。方法700を実行するための手段は、1つまたは複数のプロセッサを含み得る。方法700は、図3の方法300、図4の方法400、図5の方法500、および/または図6の方法600の1つまたは複数のステップとともに実行され得る。
【００８９】
ステップ710で、現実世界の場面の画像は、ARデバイスによってキャプチャされ得る。そのような画像は、カメラを使用してキャプチャされ得る。カメラは、ユーザの眼と同じまたはユーザの眼に類似した視点をキャプチャするように向けられ得る。したがって、カメラによってキャプチャされた画像は、ユーザの視界と交わる視界を含み得る。画像は、1秒当たり複数回など、周期的にキャプチャされ得る。そのような画像は、ARデバイスの処理モジュールに渡され得る。
【００９０】
ステップ720で、ステップ710の画像内でキャプチャされた、現実世界の場面の様々な部分が識別され得る。各領域は、少なくとも最小の既定のサイズ(たとえば、仮想オブジェクトを含むのに十分なほど大きい)であることが必要とされ得る。各領域は、現実世界の場面における1つまたは複数の現実世界のオブジェクトに基づいて定義され得る。たとえば、人が場面内にいる場合、その人は単一の領域内に含まれ得る。いくつかの実施形態では、人の体および顔は別々の領域にある場合がある。領域を画定するために、様々な現実世界のオブジェクトが識別され得る。たとえば、椅子が現実世界の場面内に存在すると判断された場合、領域は少なくともその椅子を含むように画定され得る。領域は、現実世界のオブジェクト、輝度、色、パターンの変動性(たとえば、黒色の壁など、変動性がほとんどない、または本棚の様々な本など、変動性が高い)、色の変動性(たとえば、色が多い、色が少ない)、テキスト(テキストが存在しているかどうか)などに基づいて作成され得る。いくつかの実施形態では、仮想の視界のいくつかの部分のみが領域に含まれ得る。たとえば、識別されていない現実世界のオブジェクトは無視され得、それらのオブジェクトの周りで画定された領域を有さなくてもよい。2つまたはそれ以上の領域を画定してもよい。いくつかの実施形態では、最大数の領域を画定することが許可され得る。
【００９１】
ステップ730で、優先度はステップ720で識別された領域に割り当てられ得る。優先度は、ユーザ選好および/または現実世界の場面内で識別された現実世界のオブジェクトに基づき得る。たとえば、識別され得る共通の現実世界のオブジェクトとしては、顔、ディスプレイスクリーン(たとえば、モバイルデバイスのディスプレイスクリーン、コンピュータのディスプレイスクリーン、テレビジョン)、テキスト(たとえば、本、雑誌、文書)、絵、天井、壁、および床が挙げられる。Table 1(表1)は追加の例を示している。顔などの現実世界のオブジェクトには、床などの現実世界のオブジェクトよりも高い優先度が与えられ得る。これは、ユーザが仮想オブジェクトを人の顔の上よりもむしろ床の上に重ね合わせることを反映し得る。1組のユーザ選好内で、ユーザは様々なタイプの現実世界のオブジェクトのランキングを指定することが可能であり得る。いくつかの実施形態では、様々な現実世界のオブジェクトの優先度ランキングは、ユーザ選好なしで判断され得る。いくつかの実施形態では、動きを示す現実世界のオブジェクトは、静的な現実世界のオブジェクトよりも優先される。しきい値を越えて照明される現実世界のオブジェクト(たとえば、ディスプレイスクリーン、照明器具によって照らされた本)は、しきい値を越えて照明されない現実世界のオブジェクト(たとえば、明かりのついていない部屋、電源が切られたコンピュータスクリーン)よりも優先され得る。しきい値は、デフォルトでは、ユーザによって閲覧される現実世界の場面における平均ルーメンレベル、またはユーザ定義のしきい値に基づき得る。
【００９２】
ステップ740で、ステップ720で定義された複数の領域およびステップ730で割り当てられた優先度に基づいて、仮想オブジェクトを表示するための位置が選択される。上に重ね合わされるべき仮想オブジェクトに対して、(場面内の優先度が最も低い現実世界のオブジェクトに対応する)優先度が最も低い領域が選択され得る。仮想オブジェクトが収まるほど十分に領域が大きいかどうかが判断され得る(仮想オブジェクトはサイズが変化し得る)。領域がそれほど大きくない場合、次に優先度が低い領域が選択され得る。さらに、領域がその上に重ね合わされた仮想オブジェクトをすでに有する場合、別の領域が選択され得る。一例として図2Bを参照すると、1つの領域は人225を含み得、別の領域は床245を含み得、第3の領域は壁235を含み得、第4の領域はディスプレイ210を含み得る。床245を含む領域は優先度が最も低くてもよく、表示のために仮想オブジェクトが配置される領域として選択され得る。
【００９３】
ステップ750で、仮想オブジェクトは、ステップ740で優先度に基づいて判断された領域で、ユーザに表示され得る。ステップ750で、仮想オブジェクトの少なくとも一部と、仮想オブジェクトが重ね合わされる現実世界のオブジェクトとの間のコントラストにより、ユーザに対する仮想オブジェクトの十分な可視性を維持しながら、HMD上に表示される仮想オブジェクトの輝度および/または色が低下または変更され得る。ステップ750を実行するディスプレイによって消費される電力量は、重ね合わされた現実世界のオブジェクトの色に対してコントラストが低い表示色が使用された場合の状況と比較して、低下され得る。
【００９４】
現実世界の場面のユーザの視点が変化すると、今では現実世界の場面の新しい画像に存在する領域を識別するために、また、場合によっては、1つまたは複数の仮想オブジェクトを再配置するために、方法700を繰り返すことができる。したがって、ユーザの現実世界の視点が変化すると、仮想オブジェクトの位置は、新しい領域およびそれに関連する優先度に基づいて変更され得る。いくつかの実施形態では、仮想オブジェクトが絶えず再配置されるのを防ぐために、ユーザの頭(または、より一般的には、ユーザの体)の動きに基づいて、少なくともしきい値期間にわたってユーザが特定の方向を見ていたときが判断され得る。しきい値が満たされると、仮想オブジェクトが再配置され得る。したがって、ユーザが繰返し自分の頭を動かしている場合、ユーザが少なくともしきい値期間にわたって特定の方向を見ているまで、仮想オブジェクトは再配置され得ない。加えて、いくつかの実施形態では、仮想オブジェクトの再配置は周期的にしか許可され得ない。たとえば、最後に仮想オブジェクトの位置が割り当てられて表示されてから、少なくともしきい値期間が経過する必要があり得る。いくつかの実施形態では、ユーザは、仮想オブジェクトの配置を可能にするために許可入力を与える必要があり得る。
【００９５】
図8は、現実世界の場面に存在するオブジェクトの優先度に応じて仮想オブジェクトの位置を調整するための方法の一実施形態を示す。方法800は、システム100、またはHMDを使用して仮想オブジェクトをユーザに表示するように構成された何らかの他のシステムを含む拡張現実(AR)デバイスなどのARデバイスを使用して実行され得る。図9のコンピュータシステム900などのコンピュータ化デバイスを使用して、方法800の少なくともいくつかのステップを実行することができる。方法800を実行するための手段は、コンピュータ化デバイス、カメラ、ヘッドマウントディスプレイ、および電源のうちの1つまたは複数を含む。方法800を実行するための手段は、システム100のモジュールのうちの1つまたは複数を含み得る。方法800を実行するための手段は、1つまたは複数のプロセッサを含み得る。方法800は、図3の方法300、図4の方法400、図5の方法500、図6の方法600、および/または図7の方法700の1つまたは複数のステップとともに実行され得る。
【００９６】
ステップ810で、Table 1(表1)に類似した、様々なカテゴリのオブジェクトの優先度に関するユーザ選好が受け取られ得る。いくつかの実施形態では、これらのユーザ選好は、ユーザがオブジェクトのカテゴリを具体的にランク付けする必要なしに判断され得る。たとえば、通常ユーザが対話する現実世界のオブジェクトに基づいて、ランキングが作成され得る。たとえば、ユーザが頻繁に読む場合、テキストに高い優先度が与えられ得る。代替として、ユーザが人と面と向かって話すことにより多くの時間を費やす場合、他の人にテキストよりも高い優先度が与えられ得る。これらのユーザ選好は、仮想オブジェクトの位置、色、および/または輝度がどのように扱われるべきかも示し得る。
【００９７】
ステップ820で、現実世界の場面の画像は、ARデバイスによってキャプチャされ得る。そのような画像は、カメラを使用してキャプチャされ得る。カメラは、ユーザの眼と同じまたはユーザの眼に類似した視点をキャプチャするように向けられ得る。したがって、カメラによってキャプチャされた画像は、ユーザの視界と交わる視界を含み得る。画像は、1秒当たり複数回など、周期的にキャプチャされ得る。そのような画像は、ARデバイスの処理モジュールに渡され得る。
【００９８】
ステップ830で、ステップ820の画像内でキャプチャされた、現実世界の場面の様々な部分が識別され得る。各領域は、少なくとも最小の既定のサイズ(たとえば、仮想オブジェクトを含むのに十分なほど大きい)であることが必要とされ得る。各領域は、現実世界の場面における現実世界のオブジェクトに基づいて定義され得る。たとえば、人が場面内にいる場合、その人は単一の領域内に含まれ得る。いくつかの実施形態では、人の体および顔は別々の領域にある場合がある。領域を画定するために、様々な現実世界のオブジェクトが識別され得る。たとえば、椅子が現実世界の場面内に存在すると判断された場合、領域は少なくともその椅子を含むように画定され得る。領域は、現実世界のオブジェクト、輝度、色、パターンの変動性(たとえば、黒色の壁など、変動性がほとんどない、または本棚の様々な本など、変動性が高い)、色の変動性(たとえば、色が多い、色が少ない)、テキスト(テキストが存在しているかどうか)などに基づいて作成され得る。いくつかの実施形態では、仮想の視界のいくつかの部分のみが領域に含まれ得る。たとえば、識別されていない現実世界のオブジェクトは無視され得、それらのオブジェクトの周りで画定された領域を有さなくてもよい。2つまたはそれ以上の領域を画定してもよい。いくつかの実施形態では、最大数の領域を画定することが許可され得る。
【００９９】
ステップ840で、優先度はステップ820で識別された領域に割り当てられ得る。優先度は、ユーザ選好および/または現実世界の場面内で識別された現実世界のオブジェクトに基づき得る。たとえば、識別され得る共通の現実世界のオブジェクトとしては、顔、ディスプレイスクリーン(たとえば、モバイルデバイスのディスプレイスクリーン、コンピュータのディスプレイスクリーン、テレビジョン)、テキスト(たとえば、本、雑誌、文書)、絵、天井、壁、および床が挙げられる。Table 1(表1)は追加の例を示している。顔などの現実世界のオブジェクトには、床などの現実世界のオブジェクトよりも高い優先度が与えられ得る。これは、ユーザが仮想オブジェクトを人の顔の上よりもむしろ床の上に重ね合わせることを反映し得る。一連のユーザ選好内で、ユーザは様々なタイプの現実世界のオブジェクトのランキングを指定することが可能であり得る。いくつかの実施形態では、様々な現実世界のオブジェクトの優先度ランキングは、ユーザ選好なしで判断され得る。いくつかの実施形態では、動きを示す現実世界のオブジェクトは、静的な現実世界のオブジェクトよりも優先される。しきい値を越えて照明される現実世界のオブジェクト(たとえば、ディスプレイスクリーン、照明器具によって照らされた本)は、しきい値を越えて照明されない現実世界のオブジェクト(たとえば、明かりのついていない部屋、電源が切られたコンピュータスクリーン)よりも優先され得る。しきい値は、デフォルトでは、ユーザによって閲覧される現実世界の場面における平均ルーメンレベル、またはユーザ定義のしきい値に基づき得る。
【０１００】
ステップ850で、ステップ820で識別された場面内の現実世界のオブジェクトの輝度および/または色に基づいて、HMDを介してユーザに提示される仮想オブジェクトの位置が選択され得る。位置は、ユーザに対する可視性のために仮想オブジェクトを十分に照明するのに必要なHMDのルーメン出力を低下させることによって、電力節約を最大にするように判断され得る。したがって、現実世界の場面のより暗い領域および/または一貫した色を有する場面の領域は、1つまたは複数の仮想オブジェクトを表示するために使用され得る。さらに、一定の色の上に仮想オブジェクトを投影することが、より電力効率が良い場合がある。たとえば、青色の現実世界のオブジェクトの上に仮想オブジェクトを重ね合わせることは、(ユーザに対する可視性を維持しながら)ディスプレイによって出力される光を、白色の現実世界のオブジェクトの上に重ね合わされた仮想オブジェクトほど多く必要としない場合がある。
【０１０１】
さらに、ステップ850で、ステップ830で定義された複数の領域およびステップ840で割り当てられた優先度に基づいて、仮想オブジェクトを表示するための位置が選択され得る。上に重ね合わされるべき仮想オブジェクトに対して、(場面内の優先度が最も低い現実世界のオブジェクトに対応する)優先度が最も低い領域が選択され得る。仮想オブジェクトが収まるほど十分に領域が大きいかどうかが判断され得る(仮想オブジェクトはサイズが変化し得る)。領域がそれほど大きくない場合、次に優先度が低い領域が選択され得る。さらに、領域がその上に重ね合わされた仮想オブジェクトをすでに有する場合、別の領域が選択され得る。
【０１０２】
したがって、表示される仮想オブジェクトの表示位置ならびに色および/または輝度を判断するために、1)優先度、2)色、および3)輝度が組み合わされて使用され得る。いくつかの実施形態では、仮想オブジェクトが現実世界の場面の領域の上に重ね合わされるべきかどうかを判断する際に領域の優先度またはその輝度が使用されるべきかどうかを判断するために、重み付き配置が使用され得る。たとえば、高優先度の領域は暗くてもよい(たとえば、黒板)一方、低優先度の領域は明るくてもよい(たとえば、空)。いくつかの実施形態では、最も優先度が低い領域が最初に選択され、次いで、その領域で表示するために適切となるように、仮想オブジェクトの色および輝度が選択される。
【０１０３】
ステップ860で、仮想オブジェクトは、ステップ850で判断された優先度、位置、1つもしくは複数の色、および/または輝度に基づいて、ユーザに表示され得る。これは、仮想オブジェクトを第1の表示位置から第2の表示位置に移動させることを伴い得る。仮想オブジェクトの位置を調整することによって、仮想オブジェクトが(現実世界の場面の他の領域に対して)現実世界の場面の薄暗い領域または選択された色の現実世界のオブジェクト(たとえば、暗い色の現実世界のオブジェクト)の上に重ね合わされた場合、HMDによって仮想オブジェクトを提示するために使用される輝度の量を低減することが可能になり得る。
【０１０４】
仮想オブジェクトがしばしば過度に移動される、色が変更されるおよび/または輝度が変更されることがないように、しきい値回数が設定され得る。たとえば、仮想オブジェクトが移動されると、1分など、定義された期間にわたって、仮想オブジェクトを再度変更することができなくなることがある。いくつかの実施形態では、ユーザの頭が動き回っていることが検出された場合、仮想オブジェクトはある期間にわたって移動することができない。仮想オブジェクトは、ユーザの頭が、30秒など、ある期間にわたって特定の方向を見ていた後に、再配置されるだけであり得る。
【０１０５】
ステップ870で、HMDによって消費される電力量は、仮想オブジェクトを再配置するまたは色を付け直すことなく、仮想オブジェクトを表示するために異なる位置、より高い輝度および/または異なる色が使用された場合と比較して、低下され得る。バッテリー充電の量は、仮想オブジェクトがどのように表示されるかに影響を及ぼし得る。バッテリーが25%などの充電しきい値を下回るとき、バッテリー寿命を維持するために、仮想オブジェクトの位置、色、および/または輝度が調整されるだけである場合がある。そのような設定はユーザ定義され得る。したがって、方法600は、ARデバイスのバッテリー充電レベルがしきい値レベルに達するまで実行されないことがある。
【０１０６】
図9は、コンピュータシステムの一実施形態を示す。図9に示すコンピュータシステムは、前に説明したコンピュータ化デバイスの一部を組み込んでもよい。たとえば、コンピュータシステム900は、本出願で説明する拡張現実デバイスの構成要素のうちのいくつかを表すことができる。図9は、本明細書で説明したように、様々な実施形態によって提供される方法を実行することができる、コンピュータシステム900の一実施形態の概略図を提供する。コンピュータシステム900は、図1のシステム100の少なくともいくつかの構成要素の機能を実行し得る。図9が、その一部または全部を適宜利用することができる様々な構成要素を概略的に示すものにすぎないことに留意されたい。したがって、図9は、どのようにすれば個々のシステム要素が比較的分離された状態でまたは比較的より一体的に実装され得るかを大まかに示している。
【０１０７】
コンピュータシステム900は、バス905を介して電気的に結合され得る(または、適宜、他の方法で通信し得る)ハードウェア要素を含むように示されている。ハードウェア要素は、限定はしないが、1つもしくは複数の汎用プロセッサおよび/または1つもしくは複数の(デジタル信号処理チップ、グラフィックス加速プロセッサなどの)専用プロセッサを含む1つもしくは複数のプロセッサ910と、限定はしないが、マウス、キーボードなどを含むことができる1つもしくは複数の入力デバイス915と、限定はしないが、ディスプレイデバイス、プリンタなどを含むことができる1つもしくは複数の出力デバイス920とを含み得る。
【０１０８】
コンピュータシステム900は、1つまたは複数の非一時的記憶デバイス925をさらに含む(および/またはそれらと通信する)ことができ、非一時的記憶デバイス925は、限定はしないが、ローカルおよび/もしくはネットワークアクセス可能な記憶装置を備えることができ、ならびに/または、限定はしないが、プログラム可能、フラッシュ更新可能などとすることができる、ディスクドライブ、ドライブアレイ、光記憶デバイス、ランダムアクセスメモリ(「RAM」)および/もしくは読取り専用メモリ(「ROM」)などのソリッドステート記憶デバイスを含むことができる。そのような記憶デバイスは、限定はしないが、様々なファイルシステム、データベース構造などを含む任意の適切なデータストアを実装するように構成されてもよい。
【０１０９】
コンピュータシステム900はまた、通信サブシステム930を含む場合があり、通信サブシステム930は、限定はしないが、モデム、ネットワークカード(ワイヤレスもしくは有線)、赤外線通信デバイス、ワイヤレス通信デバイス、および/または(Bluetooth(登録商標)デバイス、802.11デバイス、WiFiデバイス、WiMaxデバイス、セルラー通信設備などの)チップセットなどを含むことができる。通信サブシステム930は、ネットワーク(一例を挙げると、以下で説明するネットワークなど)、他のコンピュータシステム、および/または本明細書で説明する任意の他のデバイスとデータを交換することを可能にし得る。多くの実施形態では、コンピュータシステム900は、上記で説明したようにRAMデバイスまたはROMデバイスを含むことができる作業メモリ935をさらに備えることになる。
【０１１０】
コンピュータシステム900は、オペレーティングシステム940、デバイスドライバ、実行可能ライブラリ、ならびに/または、1つもしくは複数のアプリケーションプログラム945などの他のコードを含む、作業メモリ935内に現在配置されているものとして図示されたソフトウェア要素を備えることもでき、ソフトウェア要素は、本明細書で説明したように、様々な実施形態によって提供されるコンピュータプログラムを含んでいてもよく、かつ/あるいは、他の実施形態によって提供された方法を実装するおよび/またはシステムを構成するように設計されていてもよい。単に例として、上記で説明した方法に関して説明した1つまたは複数の手順は、コンピュータ(および/またはコンピュータ内のプロセッサ)によって実行可能なコードおよび/または命令として実装することも可能であり、次いで、一態様では、そのようなコードおよび/または命令は、説明した方法に従って1つまたは複数の動作を実行するように汎用コンピュータ(または他のデバイス)を構成するおよび/または適合させるために使用され得る。
【０１１１】
1組のこれらの命令および/またはコードは、上記で説明した非一時的記憶デバイス925などの非一時的コンピュータ可読記憶媒体上に記憶されてもよい。場合によっては、記憶媒体は、コンピュータシステム900などのコンピュータシステム内に組み込まれてもよい。他の実施形態では、記憶媒体が、命令/コードを記憶した汎用コンピュータをプログラムする、構成する、および/または適合させるために使用され得るように、記憶媒体は、コンピュータシステムから分離され得(たとえば、コンパクトディスクなどの取外し可能媒体)、かつ/またはインストールパッケージ内に備えられ得る。これらの命令は、コンピュータシステム900によって実行可能である、実行可能コードの形態をとることも可能であり、かつ/またはコンピュータシステム900でコンパイルおよび/またはインストールした後に(たとえば、様々な一般的に利用可能なコンパイラ、インストールプログラム、圧縮/展開ユーティリティなどのいずれかを使用して)、実行可能コードの形態をとるソースコードおよび/またはインストール可能コードの形態をとることも可能である。
【０１１２】
特定の要件に従って実質的な変形が行われ得ることが、当業者には明らかであろう。たとえば、カスタマイズされたハードウェアも使用され得、かつ/または特定の要素が、ハードウェア、(アプレットなどのポータブルソフトウェアを含む)ソフトウェア、もしくはその両方で実装され得る。さらに、ネットワーク入力/出力デバイスなどの他のコンピューティングデバイスへの接続が使用され得る。
【０１１３】
上述のように、一態様では、いくつかの実施形態は、(コンピュータシステム900などの)コンピュータシステムを使用して、本発明の様々な実施形態による方法を実行し得る。1組の実施形態によれば、そのような方法の手順のうちのいくつかまたはすべては、プロセッサ910が作業メモリ935に含まれる(オペレーティングシステム940および/またはアプリケーションプログラム945などの他のコードに組み込まれ得る)1つまたは複数の命令の1つまたは複数のシーケンスを実行したことに応答して、コンピュータシステム900によって実行される。そのような命令は、非一時的記憶デバイス925のうちの1つまたは複数などの別のコンピュータ可読媒体から作業メモリ935に読み込まれ得る。単に例として、作業メモリ935に含まれる命令のシーケンスの実行は、プロセッサ910に、本明細書で説明する方法の1つまたは複数の手順を実行させ得る。
【０１１４】
本明細書で使用する「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械を特定の方式で動作させるデータを与えることに関与する任意の媒体を指す。コンピュータシステム900を使用して実装される一実施形態では、様々なコンピュータ可読媒体は、実行のためにプロセッサ910に命令/コードを与えることに関与し得、かつ/またはそのような命令/コードを記憶および/または搬送するために使用され得る。多くの実装形態では、コンピュータ可読媒体は、物理記憶媒体および/または有形記憶媒体である。そのような媒体は、不揮発性媒体または揮発性媒体の形態をとり得る。不揮発性媒体としては、たとえば、非一時的記憶デバイス925などの光ディスクおよび/または磁気ディスクが挙げられる。揮発性媒体としては、限定はしないが、作業メモリ935などのダイナミックメモリが挙げられる。
【０１１５】
一般的な形態の物理コンピュータ可読媒体および/または有形コンピュータ可読媒体としては、たとえば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、または任意の他の磁気媒体、CD-ROM、任意の他の光媒体、パンチカード、紙テープ、穴のパターンを有する任意の他の物理媒体、RAM、PROM、EPROM、FLASH(登録商標)-EPROM、任意の他のメモリチップまたはカートリッジ、あるいはコンピュータが命令および/またはコードを読み取ることができる任意の他の媒体が挙げられる。
【０１１６】
様々な形態のコンピュータ可読媒体は、実行のためにプロセッサ910に1つまたは複数の命令の1つまたは複数のシーケンスを搬送することに関与し得る。単に例として、命令は、最初に、リモートコンピュータの磁気ディスクおよび/または光ディスク上で搬送され得る。リモートコンピュータは、命令をそのダイナミックメモリ内にロードし、コンピュータシステム900によって受信および/または実行されるべき伝送媒体上の信号として、命令を送信し得る。
【０１１７】
通信サブシステム930(および/またはその構成要素)は、一般に信号を受信し、次いで、バス905は、信号(および/または信号によって搬送されたデータ、命令など)を作業メモリ935に搬送することができ、プロセッサ910は、作業メモリ935から命令を取り出し、実行する。作業メモリ935によって受信された命令は、随意に、プロセッサ910による実行の前または後のいずれかに非一時的記憶デバイス925に記憶され得る。
【０１１８】
上記で説明した方法、システム、およびデバイスは、例である。様々な構成は、様々な手順または構成要素を適宜、省略、置換、または追加し得る。たとえば、代替の構成では、本方法は、説明した順序とは異なる順序で実行され得、かつ/または様々な段階が、追加、省略、および/もしくは連結され得る。また、いくつかの構成に関して説明した特徴が様々な他の構成内に組み合わされ得る。構成の様々な態様および要素は、同様の方法で組み合わされ得る。また、技術は発展するものであり、したがって、要素の多くは例であり、本開示の範囲または特許請求の範囲を限定しない。
【０１１９】
(実装形態を含む)例示的な構成を完全に理解するために、説明には具体的な詳細が与えられている。しかしながら、構成は、これらの具体的な詳細なしに実施され得る。たとえば、構成を不明瞭にしないように、よく知られている回路、プロセス、アルゴリズム、構造、および技法を不要な詳細なしに示してある。この説明は、例示的な構成のみを提供し、特許請求の範囲の範囲、適用可能性、または構成を限定しない。むしろ、これらの構成の上述の説明は、説明した技法を実装するための有効な説明を当業者に提供することになる。本開示の趣旨または範囲から逸脱することなく、要素の機能および配置に様々な変更を行うことができる。
【０１２０】
また、構成は、流れ図またはブロック図として示されるプロセスとして説明され得る。それぞれ動作を逐次プロセスとして説明し得るが、動作の多くは、並行して、または同時に実行され得る。加えて、動作の順序は並び替えられ得る。プロセスは、図に含まれていない追加のステップを有し得る。さらに、方法の例は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組合せによって実装され得る。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードで実装されるとき、必要なタスクを実行するプログラムコードまたはコードセグメントは、記憶媒体などの非一時的コンピュータ可読媒体に記憶され得る。プロセッサは説明したタスクを実行し得る。
【０１２１】
いくつかの例示的な構成について説明してきたが、本開示の趣旨から逸脱することなく、様々な変更、代替構造、および均等物が使用され得る。たとえば、上記の要素は、より大きいシステムの構成要素であり得、他の規則が、本発明の適用例よりも優先されるか、または本発明の適用例を変更し得る。また、上記の要素が考慮される前に、その間に、またはその後に、いくつかのステップが行われ得る。したがって、特許請求の範囲の範囲は上記の説明によって制限されない。
【符号の説明】
【０１２２】
100  システム
110  画像キャプチャモジュール
120  オブジェクト、色、および輝度特定/追跡モジュール
130  ディスプレイモジュール
135  動き/焦点追跡モジュール
140  ユーザインターフェースモジュール
150  仮想オブジェクトマネージャ
160  ユーザ選好モジュール
170  電源モジュール
200A  第1の人の視点
200B  第1の人の視点
205  窓
210  ディスプレイ
215  机
225  人
230  絵
235  壁
240  壁
245  床
250-1  仮想オブジェクト
250-2  仮想オブジェクト
260-1  領域
260-2  領域
260-3  領域
260-4  領域
260-5  領域
260-6  領域
300  方法
400  方法
500  方法
600  方法
700  方法
800  方法
900  コンピュータシステム
905  バス
910  プロセッサ
915  入力デバイス
920  出力デバイス
925  記憶デバイス
930  通信サブシステム
935  作業メモリ
940  オペレーティングシステム
945  アプリケーション
【図１】
0006312690.tif 000004
【図２Ａ】
0006312690.tif 000005
【図２Ｂ】
0006312690.tif 000006
【図３】
0006312690.tif 000007
【図４】
0006312690.tif 000008
【図５】
0006312690.tif 000009
【図６】
0006312690.tif 000010
【図７】
0006312690.tif 000011
【図８】
0006312690.tif 000012
【図９】
0006312690.tif 000013