(57)【要約】      （修正有）【課題】仮想環境を表示するための方法と装置を提供する。【解決手段】人２０６の頭部２３６にある第１の眼球２３４に関する第１の眼球位置情報２２６と、人２０６の頭部２３６にある第２の眼球２４０に関する第２の眼球位置情報２２８とが受取られる。第１の眼球位置情報２２６に基づいて、第１の眼球２３４に見せるための仮想環境２０４の第１の画像２５２が生成される。第２の眼球２４０に関する第２の眼球位置情報２２８に基づいて第２の眼球２４０に見せるための仮想環境２０４の第２の画像２５４が生成される。表示のために第１の画像２５２と第２の画像２５４とが人２０６に送られる。【選択図】図２
2014086091.tif 000002
【特許請求の範囲】
【請求項１】
人（２０６）の頭部（２３６）にある第１の眼球（２３４）に関する第１の眼球位置情報（２２６）と、人（２０６）の頭部（２３６）にある第２の眼球（２４０）に関する第２の眼球位置情報（２２８）とを受取り、
第１の眼球（２３４）に関する第１の眼球位置情報（２２６）に基づいて第１の眼球（２３４）に見せるための仮想環境（２０４）の第１の画像（２５２）を生成し、
第２の眼球（２４０）に関する第２の眼球位置情報（２２８）に基づいて第２の眼球（２４０）に見せるための仮想環境（２０４）の第２の画像（２５４）を生成し、且つ
第１の画像（２５２）と第２の画像（２５４）とを人（２０６）に表示するために送る
ように構成された画像プロセッサ（２１６）を備える装置。
【請求項２】
仮想環境（２０４）を生成するように構成されたコントローラ（２１４）、及び
頭部（２３６）の頭部位置（２６４）を追跡し、頭部（２３６）の頭部位置に関する頭部位置情報（２３０）を生成するように構成された頭部追跡装置（４０５）
をさらに備えており、
画像プロセッサ（２１６）が、さらに、人（２０６）の頭部（２３６）の頭部位置（２６４）に関する頭部位置情報（２３０）を受取って、第１の眼球（２３４）に関する第１の眼球位置情報（２２６）と頭部位置情報（２３０）とに基づいて、第１の眼球（２３４）に見せるための仮想環境（２０４）の第１の画像（２５２）を生成し、且つ第２の眼球（２４０）に関する第２の眼球位置情報（２２８）と頭部位置情報（２３０）とに基づいて、第２の眼球（２４０）に見せるための仮想環境（２０４）の第２の画像（２５４）を生成するように構成されている、
請求項１に記載の装置。
【請求項３】
表示装置（２２０）が、第１の画像（２５２）及び第２の画像（２５４）に加えて、人（２０６）の周囲の物理的環境（２０２）のビューを提供するように構成されており、
画像プロセッサ（２１６）が、
仮想環境（２０４）内での第１の眼球（２３４）の第１の視点（２５８）を表す仮想環境（２０４）内での第１の仮想カメラ（２４４）の第１の位置（２５６）と、仮想環境（２０４）内での第２の眼球（２４０）の第２の視点（２６２）を表す仮想環境（２０４）内での第２の仮想カメラ（２４６）の第２の位置（２６０）とを識別し、
第１の仮想カメラ（２４４）から見える仮想環境（２０４）の第１の画像（２５２）を生成し、且つ
第２の仮想カメラ（２４６）から見える仮想環境（２０４）の第２の画像（２５４）を生成する
ように構成されている、請求項１に記載の装置。
【請求項４】
第１の画像（２５２）及び第２の画像（２５４）を受取り、第１の眼球（２３４）に対して第１の画像（２５２）を表示し、且つ第２の眼球（２４０）に対して第２の画像（２５４）を表示するように構成されている表示装置（２２０）をさらに備えており、
表示装置（２２０）が、
第１の眼球（２３４）に対して第１の画像（２５２）を表示するように構成された第１のディスプレイ（５１２）と、
第２の眼球（２４０）に対して第２の画像（２５４）を表示するように構成された第２のディスプレイ（５１４）と
を含んでいる、請求項１に記載の装置。
【請求項５】
第１の眼球（２３４）の第１の位置（２５６）と第２の眼球（２４０）の第２の位置（２６０）とをそれぞれ追跡し、
第１の眼球（２３４）の第１の位置（２５６）を使用して第１の眼球位置情報（２２６）を生成し、且つ
第２の眼球（２４０）の第２の位置（２６０）を使用して第２の眼球位置情報（２２８）を生成する
ように構成されている眼球追跡システム（４０２）をさらに備える、請求項１に記載の装置。
【請求項６】
仮想環境（２０４）内での人（２０６）を表す仮想環境（２０４）内のアバター（２４８）、
仮想環境（２０４）内でアバター（２４８）の頭部（２５０）に関連付けられた第１の仮想カメラ（２４４）であって、第１の眼球位置情報（２２６）を用いて位置決めされる第１の仮想カメラ（２４４）、及び
仮想環境（２０４）内でアバター（２４８）の頭部（２５０）に関連付けられた第２の仮想カメラ（２４６）であって、第２の眼球位置情報（２２８）を用いて位置決めされる第２の仮想カメラ（２４６）
をさらに備えており、
第１の仮想カメラ（２４４）及び第２の仮想カメラ（２４６）が、頭部位置情報（２３０）を使用して垂直方向に位置決めされ、且つ
頭部（２５０）の位置に関する頭部位置情報（２３０）を使用して、頭部（２３６）の位置に合わせてアバター（２４８）を仮想環境（２０４）内で移動させる、
請求項２に記載の装置。
【請求項７】
第１の画像（２５２）が仮想環境（２０４）の第１の視点（２５８）を提供し、第２の画像（２５４）が、第１の視点（２５８）とは異なる仮想環境（２０４）の第２の視点（２６２）を提供する、請求項１に記載の装置。
【請求項８】
第１の眼球位置情報（２２６）が第１の眼球（２３４）の位置及び第１の眼球（２３４）の方向を含み、第２の眼球位置情報（２２８）が第２の眼球（２４０）の位置及び第２の眼球（２４０）の方向を含む、請求項１に記載の装置。
【請求項９】
仮想環境（２０４）の表示方法であって、
人（２０６）の頭部（２３６）にある第１の眼球（２３４）に関する第１の眼球位置情報（２２６）と、人（２０６）の頭部（２３６）にある第２の眼球（２４０）に関する第２の眼球位置情報（２２８）とを受取ること、
第１の眼球位置情報（２２６）に基づいて第１の眼球（２３４）に見せるための仮想環境（２０４）の第１の画像（２５２）を生成すること、
第２の眼球（２４０）に関する第２の眼球位置情報（２２８）に基づいて第２の眼球（２４０）に見せるための仮想環境（２０４）の第２の画像（２５４）を生成すること、及び
第１の画像（２５２）と第２の画像（２５４）とを人（２０６）に表示するために送ること
を含む方法。
【請求項１０】
人（２０６）の頭部（２３６）の頭部位置（２６４）に関する頭部位置情報（２３０）を受け取ることをさらに含み、
前記第１の画像（２５２）を生成することが、第１の眼球（２３４）に関する第１の眼球位置情報（２２６）と頭部位置情報（２３０）とに基づいて、第１の眼球（２３４）に見せるための仮想環境（２０４）の第１の画像（２５２）を生成することを含み、
前記第２の画像（２５４）を生成することが、第２の眼球（２４０）に関する第２の眼球位置情報（２２８）と頭部位置情報（２３０）とに基づいて、第２の眼球（２４０）に見せるための仮想環境（２０４）の第２の画像を生成することを含む、
請求項９に記載の方法。
【請求項１１】
仮想環境（２０４）内での第１の眼球（２３４）の第１の視点（２５８）を表す仮想環境（２０４）内での第１の仮想カメラ（２４４）の第１の位置（２５６）と、仮想環境（２０４）内での第２の眼球（２４０）の第２の視点（２６２）を表す仮想環境（２０４）内での第２の仮想カメラ（２４６）の第２の位置（２６０）とを識別することをさらに含み、
前記第１の画像（２５２）を生成することが、第１の仮想カメラ（２４４）から見える仮想環境（２０４）の第１の画像（２５２）を生成することを含み、且つ
前記第２の画像（２５４）を生成することが、第２の仮想カメラ（２４６）から見える仮想環境（２０４）の第２の画像（２５４）を生成することを含む、
請求項９に記載の方法。
【請求項１２】
表示装置（２２０）を使用して第１の眼球（２３４）に第１の画像（２５２）を表示すること、及び
表示装置（２２０）を使用して第２の眼球（２４０）に第２の画像（２５４）を表示すること
をさらに含む、請求項９に記載の方法。
【請求項１３】
表示装置（２２０）が、ヘッドマウントディスプレイシステム（３０２）、シャッターディスプレイシステム（３０４）、偏光ディスプレイシステム（３０６）、網膜ディスプレイシステム（３０８）、及びコンタクトレンズディスプレイシステム（３１０）から選択されるいずれか一つである、請求項１２に記載の方法。
【請求項１４】
眼球追跡システム（４０２）を使用して、第１の眼球（２３４）の第１の位置（２５６）と第２の眼球（２４０）の第２の位置（２６０）とを追跡すること、及び
第１の眼球（２３４）の第１の位置（２５６）を使用して第１の眼球位置情報（２２６）を、第２の眼球（２４０）の第２の位置（２６０）を使用して第２の眼球位置情報（２２８）を、それぞれ生成すること
をさらに含む、請求項９に記載の方法。
【請求項１５】
表示装置（２２０）が、第１の画像（２５２）及び第２の画像（２５４）に加えて、人（２０６）の周囲の物理的環境（２０２）のビューを提供するように構成されている、請求項１２に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して表示される情報に関し、具体的には表示装置上に表示される情報に関する。さらに具体的には、本発明は、仮想環境に基づく情報を表示するための方法と装置に関する。
【背景技術】
【０００２】
仮想環境は、コンピュータによりシミュレーションされた環境である。具体的には、仮想環境は、ある人にとっての仮想現実を提供する。換言すれば、仮想現実では、現実の世界、並びに架空の世界に物理的に存在する場所のシミュレーションが行われる。仮想環境は、表示スクリーン又はヘッドマウントディスプレイといった表示装置を用いて表示される。表示スクリーンの場合、仮装環境は、三次元メガネを用いて三次元で表示される。ヘッドマウントディスプレイの場合、仮装環境は、立体表示を用いて三次元で表示される。加えて、仮想環境のために、音声及び触覚フィードバックといった他のセンサ情報も生成される。
【０００３】
仮想環境の画像の生成は、仮想環境を眺めている人にとって不自然で、且つ方向感覚を失わせるような方式で環境を表す。具体的には、このような画像は、人に対して画像をレンダリングして表示するために、単一の視点を用いて生成された二次元画像である。例えば、現在使用されている多数の仮想環境システムには、画像を生成するカメラのために単一の視点が採用されている。
【０００４】
現在、二次元画像が表示されているというオペレータの知覚を軽減するために、頭部追跡が使用されている。頭部追跡を使用することにより、仮装環境内部における人のビューの表現精度が向上する。いくつかの仮想環境システムは、立体画像を提供することにより、仮想環境の三次元ビューの提供を試みている。
【０００５】
頭部追跡及び立体画像を用いても、現在利用可能な仮想環境システムに使用されている表示装置は依然として望ましくない影響を有している。このような望ましくない影響には、方向感覚を失わせること、不明瞭さ、疲労、眼精疲労、頭痛、及び他の望ましくない影響のうちの少なくとも一つが含まれる。さらに、仮想環境を眺めている時間が長くなるほど、望ましくない影響は増大する。
【０００６】
例えば、多数の仮想環境システムは、眼精疲労を生じさせるような、三次元環境に基づく二次元画像を生成する。現在のシステムでは、寄り目のような不自然な方式で視点を合わせなければならない場合がある。
【０００７】
望ましくない影響を低減しようと、様々な機構が使用されている。例えば、いくつかの三次元ディスプレイシステムは偏光レンズを用いている。他のシステムは、一つの画像が一方の眼球に対して表示されるときに他方の眼球を遮るシャッターメガネを使用している。
【０００８】
このような種類のシステムも、やはり望ましくない影響を有する。したがって、少なくとも上述の問題点のいくつかと、起こりうる他の問題点を考慮する方法及び装置を有することが望ましい。
【発明の概要】
【０００９】
例示的な一実施形態では、装置は画像プロセッサ（２１６）を備えている。画像プロセッサ（２１６）は、人の頭部にある第１の眼球（２３４）に関する第１の眼球位置情報（２２６）と、人の頭部にある第２の眼球に関する第２の眼球位置情報とを受取るように構成されている。画像プロセッサ（２１６）は、さらに、第１の眼球（２３４）の第１の眼球位置情報（２２６）に基づいて第１の眼球（２３４）に見せるための仮想環境の第１の画像を生成するように構成されている。画像プロセッサ（２１６）は、さらに、第２の眼球の第２の眼球位置情報に基づいて第２の眼球に見せるための仮想環境の第２の画像を生成するように構成されている。画像プロセッサ（２１６）は、さらに、人に対して表示するために第１の画像と第２の画像とを送るように構成されている。
【００１０】
別の例示的実施形態では、仮想環境を表示する方法が提示される。人の頭部にある第１の眼球に関する第１の眼球位置情報と、人の頭部にある第２の眼球に関する第２の眼球位置情報とが受取られる。第１の眼球に見せるための仮想環境の第１の画像が、第１の眼球に関する第１の眼球位置情報に基づいて生成される。第２の眼球に見せるための仮想環境の第２の画像が、第２の眼球に関する第２の眼球位置情報に基づいて生成される。表示される第１の画像及び第２の画像が人に対して送られる。
【００１１】
上記のフィーチャ、及び機能は、本発明の様々な実施形態において独立に達成可能であるか、又は他の実施形態において組み合わせることが可能である。これらの実施形態について、後述の説明及び添付図面を参照してさらに詳細に説明する。
【図面の簡単な説明】
【００１２】
新規のフィーチャと考えられる例示的実施形態の特徴は、特許請求の範囲に明記される。しかしながら、例示的実施形態と、好ましい使用モード、さらなる目的、及びそのフィーチャは、添付図面を参照して本明細書の例示的一実施形態に関する後述の詳細な説明を読むことにより最もよく理解されるであろう。
【００１３】
【図１】例示的一実施形態による仮想環境システムを示している。
【図２】例示的一実施形態による仮想環境システムを示すブロック図である。
【図３】例示的一実施形態による表示装置の実装態様を示すブロック図である。
【図４】例示的一実施形態による、仮装環境システム内のセンサシステムに使用可能なセンサ種類を示すブロック図である。
【図５】例示的一実施形態による仮想環境システムを示している。
【図６】例示的な一実施形態による仮想環境表示プロセスを示すフロー図である。
【図７Ａ】例示的な一実施形態による仮想環境ビューイングプロセスを示すフロー図である。
【図７Ｂ】例示的な一実施形態による仮想環境ビューイングプロセスを示すフロー図である。
【図８】例示的一実施形態によるデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【００１４】
例示的実施形態は、一又は複数の検討事項を認識し、考慮している。例えば、例示的実施形態は、画像を生成するために二つの視点を有することにより、人のビューイング体験がもっと自然になることを認識し、考慮する。例示的実施形態は、現在利用可能な仮装環境システムが、仮想環境を眺める様々な人々の差異を考慮していないことを認識し、考慮する。実際、このようなシステムは、視点を生成するために、事前に選択された基準又は値を使用する。
【００１５】
しかしながら、例示的実施形態は、様々な人々の眼球の差異を考慮することなしに、現在利用可能な仮想環境システムが使用する視点が望ましくない影響を所望通りに低減することはないことを認識し、考慮する。例えば、人によって、眼球間の距離、及び眼球の高さは様々なである。結果として、人によって眼球の視点が大きく異ることがある。
【００１６】
例示的実施形態は、正確な視点がない場合、眼球が捉える結果の画像が、画像を処理する人に自然に見えないことを認識し、考慮する。結果として、仮想環境について生成された画像の種々の部分に焦点を当てる人は、画像の生成に使用された視点と人の視点とが異なる場合、仮想環境はどのように見えるべきか、及び仮想環境は実際にどのように表現されているかといった仮想環境における不一致に気づくことにもなる。人の視点は、人の両方の眼球の方向に基づいて識別される。前記方向に基づいて、各眼球から光線を延長させる。これらの光線の交差部分が視点として使用される。
【００１７】
基本的には、人は、眼球の各々により二つのやや異なるビューが捉えられていると思って画像を処理している。各眼球の視点からの画像を提示することにより、人は通常の処理により仮想環境を再構築することができる。
【００１８】
仮想環境は、任意の数の異なる目的に使用することができる。例えば、仮想環境は、ほとんどの場合ゲーミングに使用される。しかしながら、仮想環境は他にも多数の用途を有している。例えば、仮想環境は、エンジニアリング作業、整備作業、シミュレーション、解析、及び他の適切な作業を実行するために使用可能である。
【００１９】
したがって、例示的実施形態により、人に対して仮想環境を表示するための方法及び装置が提供される。例示的な一実施形態では、画像プロセッサは、人の頭部にある第１の眼球に関する第１の眼球位置情報と、人の頭部にある第２の眼球に関する第２の眼球球位置情報とを受取るように構成されている。前記第１の眼球位置情報に基づき、第１の眼球に見せるための仮想環境の第１の画像が生成される。前記第２の眼球位置情報に基づき、第２の眼球に見せるための仮想環境の第２の画像が生成される。次いで、前記第１の画像及び前記第２の画像は、人に表示されるために送られる。
【００２０】
ここで図面を参照する。特に図１には、例示的一実施形態による仮想環境システムが図解されている。この実施例では、仮想環境システム１００はコンピュータ１０２及びインターフェースシステム１０４を含みうる。図示のように、インターフェースシステム１０４は、人１０６、ヘッドマウントディスプレイデバイス１０８、及びデータグローブ１１０を含んでいる。ヘッドマウントディスプレイデバイス１０８は、人１０６の頭部１１２に位置している。データグローブ１１０は、人１０６の手１１４に位置している。
【００２１】
仮想環境システム１００及び人１０６は、物理的環境１１６内に位置している。仮想環境システム１００は、物理的環境１１６内の人１０６が仮想環境システム１００により生成される仮想環境と相互作用することを可能にする。
【００２２】
このような実施例では、ヘッドマウントディスプレイデバイス１０８及びデータグローブ１１０により、コンピュータ１０２が生成した仮想環境と相互作用する能力が人１０６に提供される。仮想環境システム１００内においてコンピュータ１０２が生成した仮想環境と人１０６との相互作用の間に行われる情報交換は、無線通信リンク１１８を介して行われる。
【００２３】
図示のように、データグローブ１１０は、人１０６のための入力装置である。具体的には、データグローブ１１０は、人１０６の手１１４に嵌められているデータグローブ１１０の位置を識別することができる。加えて、データグローブ１１０は、触覚をシミュレーションする触覚フィードバックを提供することもできる。触覚フィードバックは、人１０６の手１１４に対し、力、振動、運動、又はこれらの何らかの組合せを印加することにより、触覚を提供することができる。
【００２４】
このような実施例では、ヘッドマウントディスプレイデバイス１０８は、人１０６に対し、コンピュータ１０２が生成した仮想環境を表示するように構成される。画像は、人１０６と、コンピュータ１０２が生成した仮想環境との相互作用の一部として生成される。
【００２５】
ヘッドマウントディスプレイデバイス１０８は、さらに、人１０６がヘッドマウントディスプレイデバイス１０８を長時間用いても、望ましくない影響が軽減されるように、仮想環境を表示するように構成される。具体的には、人１０６は、方向感覚が失われる、不明瞭さ、及び疲労といった望ましくない影響が軽減されるような方式で、現在利用可能な表示装置より長時間にわたってヘッドマウントディスプレイデバイス１０８を使用することができる。
【００２６】
このような実施例では、ヘッドマウントディスプレイデバイス１０８は、頭部１１２の位置、並びに人１０６の頭部１１２にある眼球（図示しない）を識別するように構成される。人１０６の頭部１１２及び眼球の両方に関する位置情報により、コンピュータ１０２は人１０６の各眼球の視点に合わせた画像を生成する。
【００２７】
具体的には、コンピュータ１０２は、仮想環境における人１０６の頭部１１２の位置を識別する。加えて、ヘッドマウントディスプレイデバイス１０８は、人１０６の頭部１１２にある眼球の位置に関する情報も生成する。ヘッドマウントディスプレイデバイス１０８は、この情報を無線通信リンク１１８を介してコンピュータ１０２に送信する。
【００２８】
頭部１１２と、頭部１１２にある人１０６の眼球とに関する位置情報により、コンピュータ１０２は、仮想環境において各眼球それぞれから見える画像を生成する。これらの画像は、無線通信リンク１１８を介してヘッドマウントディスプレイデバイス１０８に送信される。換言すれば、人１０６の頭部１１２にある各眼球は、互いに間隔が空いているため、やや異なる眺めを有している。
【００２９】
このような実施例では、各眼球の位置は、人１０６とは無関係に追跡される。このように、物理的環境１１６における人１０６の正確な焦点が識別される。人１０６の頭部１１２及び眼球に関する位置情報は、コンピュータ１０２によって使用される。この情報は、コンピュータ１０２により、仮想環境において対応する人１０６の位置に翻訳される。
【００３０】
人１０６の頭部１１２の位置は、人１０６が立っているか、座っているか、しゃがんでいるか、横たわっているか、又は他の何らかの姿勢にあるかによって変化しうる。この実施例では、人１０６は椅子１２０に座って仮想環境と相互作用している。
【００３１】
このようにして、コンピュータ１０２は、仮想環境の異なるビューを生成するために仮想環境内で人１０６の眼球が使用されるのと同じように、仮想カメラを仮想環境内において位置決めする。換言すれば、仮想カメラの位置は、人１０６の眼球の位置に対応している。人１０６の眼球の位置に対応する仮想カメラの位置は、人１０６の位置が変わると変化しうる。
【００３２】
人１０６の各眼球について一つのビューが生成される。各ビューの画像は、生成されて、人１０６に対して表示するためにヘッドマウントディスプレイデバイス１０８に送り返される。このように、人１０６に対して、独立した二次元画像がヘッドマウントディスプレイデバイス１０８上に表示される。
【００３３】
このような実施例では、人１０６の眼球は、ヘッドマウントディスプレイデバイス１０８上に表示された二つの二次元画像から、知覚された仮想環境の三次元画像を再構築する。このようにして、人１０６は、自然な人の両眼視処理を行って、コンピュータ１０２が生成した二つの二次元画像を用いて３次元画像を生成する。
【００３４】
このような実施例では、自然な人の両眼視は二つの眼球を使用することを伴う。自然な人の両眼視処理により、両眼で眺めた画像を使用して三次元ビューが生成される。換言すれば、人１０６は奥行きを知覚することができる。
【００３５】
人１０６の眼球、人１０６の頭部１１２、又はこれら両方が動くとき、人１０６の焦点が変化しうる。ヘッドマウントディスプレイデバイス１０８が生成する情報は、無線通信リンク１１８を介してコンピュータ１０２に送信される。コンピュータ１０２は、この情報を使用して、仮想環境で仮想カメラに対応する位置において人１０６の焦点を再計算する。仮想環境において人１０６の眼球を表す複数の異なる仮想カメラから、更新された二次元画像が生成される。
【００３６】
結果として、人１０６に対し、ヘッドマウントディスプレイデバイス１０８上に表示するために生成される仮想環境の表現の精度が向上する。この種の表示は、人１０６の自然な視覚に近づいている。このようにして、人１０６が二次元画像を用いて仮想環境を眺めることの望ましくない影響が軽減される。ヘッドマウントディスプレイデバイス１０８を用いて人１０６に対して仮想環境のさらに現実的なビューが提供されることに加え、望ましくない影響も軽減される。
【００３７】
図２は、例示的な一実施形態による仮想環境システムのブロック図である。図１の仮想環境システム１００は、このブロック図に示された仮想環境システム２００の一実装態様の一例である。
【００３８】
図示のように、仮想環境システム２００は物理的環境２０２内に存在している。仮想環境システム２００は、人２０６にとっての仮想環境２０４を生成するように構成されている。人２０６は、仮想環境システム２００を介して仮想環境２０４と相互作用する。
【００３９】
このような実施例では、仮想環境システム２００は任意の数の異なるコンポーネントを含むことができる。図示のように、仮想環境システム２００は、仮想環境ジェネレータ２０８及びインターフェースシステム２１０を含む。このようなコンポーネントは、仮想環境２０４を生成し、人２０６に仮想環境２０４と相互作用する能力を提供するように動作する。
【００４０】
このような実施例では、仮想環境ジェネレータ２０８は、ハードウェア、ソフトウェア、又はそれら二つの組み合わせにおいて実施される。このような実施例では、ハードウェアは、回路システム、集積回路、特定用途向け集積回路（ＡＳＩＣ）、プログラマブルロジックデバイス、又は任意の数の工程を実行するように構成された他の何らかの適切な種類のハードウェアの形態をとることができる。プログラマブルロジックデバイスである場合、このデバイスは任意の数の工程を実行するように構成される。このデバイスは、任意の数の工程を実行するように恒久的に構成することも、後で再構成することもできる。プログラマブルロジックデバイスの例として、例えば、プログラマブルロジックアレイ、プログラマブルアレイロジック、フィールドプログラマブルロジックアレイ、フィールドプログラマブルゲートアレイ、及び他の適切なハードウェアデバイスが挙げられる。加えて、プロセスは、無機コンポーネントと一体化した有機コンポーネントに実装することができる、及び／又は人間を除く有機コンポーネントで全体を構成することができる。例えば、プロセスは有機半導体に回路として実装することができる。
【００４１】
このような実施例では、仮想環境ジェネレータ２０８はコンピュータシステム２１２において実施される。コンピュータシステム２１２は一又は複数のコンピュータである。コンピュータシステム２１２内に複数のコンピュータが存在するとき、これらのコンピュータはネットワークなどの通信媒体を介して相互に通信することができる。
【００４２】
この実施例では、仮想環境ジェネレータ２０８はコントローラ２１４及び画像プロセッサ２１６を含みうる。コントローラ２１４は、仮想環境２０４を生成するように構成される。このような実施例では、仮想環境２０４は様々な形態をとりうる。
【００４３】
例えば、仮想環境２０４は、設計環境、整備環境、製造環境、及び他の適切な種類の環境のうちの少なくとも一つである。本明細書において、列挙されたアイテムと共に使用される「〜のうちの少なくとも一つ」という表現は、列挙されたアイテムの一又は複数の様々な組み合わせが使用可能であり、且つ列挙されたアイテムのいずれかが一つだけあればよいということを意味する。例えば、「アイテムＡ、アイテムＢ、及びアイテムＣのうちの少なくとも一つ」は、限定しないが、「アイテムＡ」、又は「アイテムＡとアイテムＢ」を含む。この例は、「アイテムＡとアイテムＢとアイテムＣ」、又は「アイテムＢとアイテムＣ」も含む。
【００４４】
仮想環境２０４が設計環境であるとき、人２０６は、航空機、船舶、陸上ビークル、宇宙船、衛星、エンジン、アンテナ、複合部品、椅子、及び他の適切な製品といった製品を設計するために仮想環境２０４と相互作用することができる。仮想環境２０４が整備環境の形態をとるとき、人２０６は、航空機のようなプラットフォーム上で整備を実行することができる。加えて、人２０６は、物理的環境２０２において航空機に使用される整備手順を確認するために、整備環境を使用することができる。
【００４５】
仮想環境２０４が製造環境であるとき、人２０６は、製造プロセスに関する情報を取得するために製造環境と相互作用することができる。例えば、人２０６は、製造環境に含まれるコンポーネントを変更し、この変更が製品の製造にどのように影響するかをみることができる。このようにして、人２０６は、物理的環境２０２において製品を製造するために使用されるコンポーネント又は手順の変更を確認することができる。
【００４６】
画像プロセッサ２１６は、インターフェースシステム２１０により人２０６に対して表示される画像２１８を生成するように構成される。画像２１８は、人２０６が、人２０６と仮想環境２０４との相互作用により見る仮想環境２０４の画像である。このような実施例においては、画像２１８は二次元画像である。人２０６は、仮想環境２０４の三次元ビューを再構成するために画像２１８を眺めることができる。
【００４７】
図示のように、インターフェースシステム２１０はハードウェアであり、ソフトウェアを含むことができる。このような実施例では、インターフェースシステム２１０は、人２０６に仮想環境２０４と相互作用する能力を提供するように構成される。このような相互作用には、仮想環境２０４への入力が含まれるほか、仮想環境２０４からの出力を受け取ることも含まれる。
【００４８】
図示のように、インターフェースシステム２１０は、任意の数の異なるコンポーネントから構成される。この実施例では、インターフェースシステム２１０は、表示装置２２０及びセンサシステム２２２を含んでいる。
【００４９】
表示装置２２０は、仮想環境ジェネレータ２０８内の画像プロッサ２１６が生成した画像２１８を表示するように構成される。このように、人２０６は仮想環境２０４を見ることができる。
【００５０】
このような実施例では、センサシステム２２２は、人２０６に関する情報２２４を生成するように構成される。具体的には、センサシステム２２２は、第１の眼球位置情報２２６、第２の眼球位置情報２２８、及び頭部位置情報２３０を生成することができる。加えて、センサシステム２２２は、人２０６の他の部位の位置及び運動に関する情報を生成することもできる。これら他の部位には、例えば、手、指、腕、脚、及び他の適切な部位が含まれる。
【００５１】
第１の眼球位置情報２２６は、人２０６の頭部２３６にある第１の眼球２３４の第１の位置２３２に関するものである。第２の眼球位置情報２２８は、人２０６の頭部２３６にある第２の眼球２４０の第２の位置２３８に関するものである。このような実施例では、頭部位置情報２３０は、人２０６の頭部２３６の頭部位置２４２に関するものである。
【００５２】
図示のように、第１の眼球位置情報２２６、第２の眼球位置情報２２８、及び頭部位置情報２３０は、任意の数の異なる種類の情報を含みうる。第１の眼球位置情報２２６、第２の眼球位置情報２２８、及び頭部位置情報２３０は、例えば、オブジェクトの位置及び方向を含みうる。位置は、三次元座標系を用いて三次元で説明される。方向は、任意の数の異なる方法で説明することができる。例えば、方向は、オイラー角、方向ベクトル、マトリックス、四元数、ヨーとピッチとロールとの組合せ、又は基準となる別のフレームを用いることにより、相対的空間のような系を使用して説明される。
【００５３】
第１の眼球位置情報２２６、第２の眼球位置情報２２８、及び頭部位置情報２３０は、センサシステム２２２から仮想環境ジェネレータ２０８へ、情報２２４の一部として送られる。コントローラ２１４は、人２０６によって生成される入力に基づいて、或いはコントローラ２１４によって生成されるか、又は他のソースから生成される他のイベントに基づいて、仮想環境２０４に変更を加えるために、情報２２４を使用することができる。
【００５４】
画像プロセッサ２１６は、第１の眼球位置情報２２６及び第２の眼球位置情報２２８を使用して画像２１８を生成するように構成されている。このような実施例では、頭部位置情報２３０は画像２１８の生成において任意選択としてもよい。図示のように、画像プロセッサ２１６は、仮想環境２０４内に第１の仮想カメラ２４４及び第２の仮想カメラ２４６を生成する。このような実施例では、第１の仮想カメラ２４４及び第２の仮想カメラ２４６はアバター２４８内に位置している。アバター２４８は、仮想環境２０４内における人２０６の仮想表現である。具体的には、このような実施例では、第１の仮想カメラ２４４及び第２の仮想カメラ２４６はアバター２４８の頭部２５０に位置している。
【００５５】
一実施例では、画像プロセッサ２１６は、第１の眼球位置情報２２６に基づいて、仮想環境２０４の画像２１８のうちの、第１の眼球２３４に関する第１の画像２５２を生成するように構成される。加えて、画像プロセッサ２１６は、第２の眼球位置情報２２８に基づいて、仮想環境２０４の画像２１８のうちの、第２の眼球２４０に関する第２の画像２５４を生成するようにも構成される。画像プロセッサ２１６は、人２０６に対して表示するために、第１の画像２５２及び第２の画像２５４を送るように構成される。このような実施例では、第１の画像２５２及び第２の画像２５４は表示装置２２０に送られる。
【００５６】
このような実施例では、画像プロセッサ２１６は、仮想環境２０４内での第１の眼球２３４の第１の視点２５８を表す、仮想環境２０４内での第１の仮想カメラ２４４の第１の位置２５６を識別するように構成される。加えて、画像プロセッサ２１６は、仮想環境２０４内での第２の眼球２４０の第２の視点２６２を表す、仮想環境２０４内での第２の仮想カメラ２４６の第２の位置２６０を識別するように構成される。
【００５７】
このような実施例では、第１の画像２５２は、第１の仮想カメラ２４４から見た仮想環境２０４の画像である。第２の画像２５４は、第２の仮想カメラ２４６から見た仮想環境２０４の画像である。
【００５８】
第１の画像２５２及び第２の画像２５４が表示装置２２０へと送られると、表示装置２２０は人２０６の第１の眼球２３４に対して第１の画像２５２を表示する。このような実施例では、表示装置２２０は、人２０６の第２の眼球２４０に対して第２の画像２５４を表示する。第１の画像２５２及び第２の画像２５４は二次元画像であり、これらを人２０６が処理することにより仮想環境２０４の三次元画像が再構成される。
【００５９】
第１の視点２５８及び第２の視点２６２からそれぞれ第１の画像２５２及び第２の画像２５４を生成することで、仮想環境２０４と相互作用する人２０６は、仮想環境２０４の画像２１８を眺める際に望ましくない影響の軽減を体験することができる。このような実施例では、第１の仮想カメラ２４４及び第２の仮想カメラ２４６は、第１の眼球２３４の第１の位置２３２及び第２の眼球２４０の第２の位置２３８と相関するような方式で位置決めされる。
【００６０】
このような実施例では、第１の仮想カメラ２４４及び第２の仮想カメラ２４６は、頭部位置２３０に基づいて垂直方向に位置決めされる。具体的には、頭部２３６の高さを使用して、第１の仮想カメラ２４４及び第２の仮想カメラ２４６が位置決めされる。
【００６１】
頭部位置情報２３０は、仮想環境２０４内部において頭部位置２６４に合わせてアバター２４８の頭部位置２５０を位置決めするために使用される。仮想環境２０４におけるアバター２４８の頭部２５０の頭部位置２６４は、物理的環境２０２における人２０６の頭部２３６の頭部位置２４２に対応する。換言すれば、アバター２４８の頭部２５０の方向は人２０６の頭部２３６の方向に対応する。
【００６２】
換言すれば、第１の仮想カメラ２４４及び第２の仮想カメラ２４６によるアバター２４８の頭部２５０の位置決めは、人２０６の頭部２３６の地面からの距離を基準として行われる。この距離は、人２０６が立っているか、座っているか、地面の上に立っているか、オブジェクトの上に立っているか、又は他の何らかの適切な姿勢にあるかによって変化する。
【００６３】
加えて、第１の仮想カメラ２４４と第２の仮想カメラ２４６とは、第１の眼球２３４と第２の眼球２４０との間の瞳孔間距離に基づいて互いに対して位置決めされる。瞳孔間距離は、第１の眼球２３４と第２の眼球２４０との瞳孔間距離である。瞳孔間距離は眼幅とも呼ばれる。具体的には、瞳孔間距離は、人２０６の眼球の瞳孔の中心間の距離である。画像プロセッサ２１６はこの瞳孔間距離を使用してアバター２４８の頭部２５０における第１の仮想カメラ２４４及び第２の仮想カメラ２４６の位置を生成する。
【００６４】
このような実施例では、第１の眼球２３４及び第２の眼球２４０が異なる位置に移動すると、第１の仮想カメラ２４４及び第２の仮想カメラ２４６も対応する異なる位置に移される。同様に、人２０６の頭部２３６が移動すると、仮想環境２０４におけるアバター２４８の頭部２５０も移動する。言うまでもなく、頭部位置情報２３０は任意選択であってよい。例えば、第１の眼球位置情報２２６及び第２の眼球位置情報２２８が三次元での第１の眼球２３４及び第２の眼球２４０の座標を含むとき、三次元における頭部２３６の位置は不要である。
【００６５】
さらに、第１の眼球２３４及び第２の眼球２４０の方向は、人２０６の頭部２３６以外の平面又は他の基準点に対して決定されてよい。この種の実装態様では、頭部２３６の頭部位置情報２３０は不要でありうる。
【００６６】
他の実施例では、頭部位置情報２３０は、三次元での頭部２３６の位置と、頭部２３６の方向とを含みうる。第１の眼球位置情報２２６及び第２の眼球位置情報２２８は、頭部２３６における第１の眼球２３４及び第２の眼球２４０の方向を含みうる。換言すれば、第１の眼球位置情報２２６及び第２の眼球位置情報２２８は、他の何らかの基準オブジェクトではなく頭部２３６に基準とするものであってよい。
【００６７】
この種の実装態様では、頭部位置情報２３０は、第１の仮想カメラ２４４及び第２の仮想カメラ２４６と一緒に頭部２５０の位置を生成するために、第１の眼球位置情報２２６及び第２の眼球位置情報２２８とともに使用される。この場合、画像プロセッサ２１６は、第１の眼球位置情報２２６及び頭部位置情報２３０に基づいて第１の画像２５２を生成する。同様に、画像プロセッサ２１６は、第２の眼球位置情報２２８及び頭部位置情報２３０に基づいて第２の画像２５４を生成する。
【００６８】
図３は、例示的な一実施形態による表示装置の実装態様のブロック図である。ここに図示された実施例では、表示装置３００の種類は、図２の表示装置２２０を実施するために使用可能な様々な種類の表示装置の例である。
【００６９】
このような実施例では、表示装置３００の種類には、任意の数の異なる種類の装置が含まれる。この実施例では、表示装置３００の種類には、ヘッドマウントディスプレイシステム３０２、シャッターディスプレイシステム３０４、偏光ディスプレイシステム３０６、網膜ディスプレイシステム３０８、及びコンタクトレンズディスプレイシステム３１０が含まれる。
【００７０】
ヘッドマウントディスプレイシステム３０２は、図２の人２０６の頭部２３６に装着される表示装置である。ヘッドマウントディスプレイシステム３０２は、人２０６の第１の眼球２３４、第２の眼球２４０、及び頭部２３６に関する情報を生成するためのセンサシステム２２２に含まれるセンサも含みうる。ヘッドマウントディスプレイシステム３０２のディスプレイは、例えば、限定しないが、液晶ディスプレイ、発光ダイオードディスプレイ、プラズマディスプレイ又は他の何らかの適切な種類のディスプレイとすることができる。ヘッドマウントディスプレイシステム３０２のディスプレイは、一又は複数の独立したディスプレイシステムから構築される。
【００７１】
シャッターディスプレイシステム３０４は、任意の一時点で第１の眼球２３４及び第２の眼球２４０の一方しかディスプレイを見ることができないようにするシャッターシステムを有するアクティブシャッターメガネ方式を用いて人２０６に見せるディスプレイである。この種のディスプレイシステムの場合、ディスプレイ上における第１の画像２５２及び第２の画像２５４の表示は、第１の眼球２３４及び第２の眼球２４０がディスプレイを見ることができるときに対応して切り替わる。
【００７２】
偏光ディスプレイシステム３０６は、第１の画像２５２と第２の画像２５４とが異なる偏光で表示されるように、第１の画像２５２と第２の画像２５４の両方をディスプレイ上に同時に表示することを含む。偏光ディスプレイシステム３０６に含まれる偏光メガネを人２０６が装着することで、各眼球に正確な画像を見せることができる。
【００７３】
網膜ディスプレイシステム３０８は、眼球の網膜上にラスタ表示を投影するように構成される。網膜ディスプレイシステム３０８は、眼球の網膜をスキャンする光線を生成するプロジェクタを含むことができる。
【００７４】
コンタクトレンズディスプレイシステム３１０は、第１の眼球２３４及び第２の眼球２４０上に配置されるコンタクトレンズの形態をとりうる。このようなコンタクトレンズには、電子回路及び発光ダイオードが含まれる。回路内の発光ダイオードは、第１の眼球２３４及び第２の眼球２４０に見せる画像を生成するように構成される。
【００７５】
図４は、例示的一実施形態による、仮装環境システム内のセンサシステムに使用可能なセンサ種類を示すブロック図である。この実施例では、センサの種類４００は、図２のセンサシステム２２２に使用可能な様々な種類のセンサを含む。
【００７６】
このような実施例では、センサ４００の種類には、任意の数の異なる種類のセンサが含まれる。例えば、センサ４００の種類には、眼球追跡システム４０２、頭部追跡システム４０４、データグローブ４０６、及びジェスチャー追跡システム４０８が含まれる。
【００７７】
眼球追跡システム４０２には、第１の眼球追跡装置４１０及び第２の眼球追跡装置４１２が含まれる。第１の眼球追跡装置４１０は、図２の第１の眼球２３４の第１の位置２３２を追跡し、第１の眼球位置情報２２６を生成するように構成される。第２の眼球追跡装置４１２は、第２の眼球２４０の第２の位置２３８を追跡し、第２の眼球位置情報２２８を生成するように構成される。
【００７８】
このような実施例では、眼球追跡システム４０２は、ヘッドマウントディスプレイシステム３０２に付属させるか、又は別個の装置とすることができる。このような実施例では、眼球追跡システム４０２は、第１の眼球２３４及び第２の眼球２４０の凝視先とは反対側の、第１の眼球２３４の第１の位置２３２及び第２の眼球２４０の第２の位置２３８を追跡する。
【００７９】
凝視先の追跡は、第１の眼球２３４の第１の位置２３２及び第２の眼球２４０の第２の位置２３８とは反対側の、第１の眼球２３４及び第２の眼球２４０が見る画像内の領域を識別することを含む。いくつかの実施例では、第１の眼球２３４の第１の位置２３２及び第２の眼球の第２の位置２３８に関する第１の眼球位置情報２２６及び第２の眼球位置情報２２８を使用して人２０６の凝視先を識別する。
【００８０】
さらに、眼球追跡システム４０２は、第１の眼球２３４及び第２の眼球２４０の方向に関する情報を生成するために、角膜反射といった種々の技術を使用することができる。これらの技術は、光学に関する照明光源の位置に基づいている。眼球追跡システム４０２は、ハードウェアデバイス、並びに他の適切なデバイスと共にカメラを用いて実施される。
【００８１】
結果として、第１の眼球追跡装置４１０及び第２の眼球追跡装置４１２は、別個のカメラとすることも、ソフトウェアプロセスを用いて実施された第１の眼球追跡装置４１０及び第２の眼球追跡装置４１２を有する単一のカメラにおいて実施することもできる。
【００８２】
さらに、いくつかの実施例では、眼球追跡システム４０２は、カメラ又は他の適切なデバイスによって追跡されるインプリントパターンを含むコンタクトレンズを用いて実施することができる。眼球追跡システム４０２は、コンタクトレンズに埋め込まれるか、又は第１の眼球２３４及び第２の眼球２４０に直接に埋め込まれるサーチコイルを用いて実施されてもよい。眼球追跡システム４０２は、第１の眼球２３４及び第２の眼球２４０の周りに配置された筋活動センサを用いて実施されてもよい。
【００８３】
このような実施例では、頭部追跡システム４０４は、人２０６の頭部２３６の頭部位置２４２を識別し、頭部位置情報２３０を生成するように構成されたハードウェアデバイスである。頭部追跡システム４０４は、頭部追跡装置４０５を含むことができる。頭部追跡装置４０５には、頭部２３６の角度及び方向の変化を検出する追跡センサが含まれる。これらのセンサは、例えば、加速度計又は他の適切な種類のセンサでよい。他の実施例では、頭部追跡装置４０５は、カメラシステムと、人２０６の頭部２３６又はヘッドマウントディスプレイシステム３０２上のマーカーとを用いて実施することができる。さらに、いくつかの実施例では、頭部追跡システム４０４は、ヘッドマウントディスプレイシステム３０２の一部として実施される。
【００８４】
データグローブ４０６は、人２０６が装着するハードウェアデバイスである。このようなデバイスは、人２０６の手の位置と、人２０６の手によって行われる様々なジェスチャーとを識別する。
【００８５】
図示のように、ジェスチャー追跡システム４０８は、人２０６の手の運動及びジェスチャーを識別するように構成される。ジェスチャー追跡システム４０８には、カメラ、動作感知装置、及び人２０６の手のジェスチャーと位置とを識別するために使用される情報を生成する他のデバイスが含まれる。
【００８６】
図２〜４に示す仮想環境システム２００と仮想環境システム２００に含まれるコンポーネントとは、例示的な一実施形態を実施可能な方式を物理的またはアーキテクチャ的に限定するものではない。図示されたコンポーネントに加えて又は代えて、他のコンポーネントを使用することができる。いくつかのコンポーネントは不要になることがある。また、ブロックは、いくつかの機能的なコンポーネントを示すために提示されている。例示的な一実施形態において実施される場合、これらのブロックの一又は複数を、異なるブロックに統合、分割、或いは統合且つ分割することができる。
【００８７】
例えば、人２０６に加えて一又は複数の人が仮想環境２０４と相互作用してもよい。このような追加の人は、インターフェースシステム２１０を使用することができる。別の実施例では、表示装置２００とセンサシステム２２２とは、単一のコンポーネントとして実施されてもよい。別の実施例として、図４のセンサの種類４００に列挙されたものに加えて又は代えて、他の種類のセンサを使用することができる。例えば、ジョイスティック、追跡ワンド、ガンペリフェラル、マウス、及び他の適切なデバイスを使用できる。
【００８８】
別の実施例として、表示装置２２０は、仮想環境２０４の画像２１８に含まれる第１の画像２５２及び第２の画像２５４に加えて、人２０６の周りの物理的環境２０２のビューを提供するように構成される。換言すれば、第１の画像２５２及び第２の画像２５４の表示を使用して、拡張された現実を人２０６に対して表示する。このような拡張現実表示は、物理的環境２０２のビューと仮想環境２０４のビューを合成する。例えば、人２０６は、物理的環境２０２内で航空機を眺める。仮想環境２０４は航空機を再生成し、航空機の内装のビューを提供することができる。航空機の内装のこのようなビューは、物理的環境２０２内における航空機の物理的ビューを重ね合わせて、表示装置２２０上に表示される第１の画像２５２及び第２の画像２５４を生成するために使用される。
【００８９】
このようにして、仮想環境システム２００は、設計、整備、訓練、及び他の適切な作業といった様々な作業のための純粋な仮想環境のビューを生成するために使用される。さらに、仮想環境システム２００は、物理的環境２０２と重ね合わされて人２０６に物理的環境２０２に関する追加情報を提供するような仮想環境２０４を生成する拡張現実生成システムの一部として含まれてもよい。
【００９０】
図５は、例示的な一実施形態による仮想環境システムを示している。この実施例では、仮想環境システム５００は、図２のブロック図に示された仮想環境システム２００の一実装態様の一例である。
【００９１】
この実施例では、仮想環境システム５００は仮想環境ジェネレータ５０２及びヘッドマウントディスプレイデバイス５０４を含む。
【００９２】
この実施例では、ヘッドマウントディスプレイデバイス５０４は、第１の眼球追跡装置５０６、第２の眼球追跡装置５０８、頭部追跡装置５１０、第１のディスプレイ５１２、及び第２のディスプレイ５１４を含む。ヘッドマウントディスプレイデバイス５０４は、人５１８の頭部５１６に装着されるように構成される。
【００９３】
このような実施例では、第１の眼球追跡装置５０６は、人５１８の頭部５１６にある第１の眼球５２０の位置を追跡するように構成される。第２の眼球追跡装置５０８は、人５１８の頭部５１６にある第２の眼球５２２の位置を追跡するように構成される。具体的には、第１の眼球追跡装置５０６及び第２の眼球追跡装置５０８は、第１の眼球５２０及び第２の眼球５２２の方向をそれぞれ追跡する。
【００９４】
第１のディスプレイ５１２は第１の眼球５２０に対して画像を表示するように構成され、第２のディスプレイ５１４は第２の眼球５２２に対して画像を表示するように構成される。具体的には、第１のディスプレイ５１２及び第２のディスプレイ５１４は、仮想環境ジェネレータ５０２から受け取られた画像５２３を表示する。
【００９５】
この実施例では、第１のディスプレイ５１２及び第２のディスプレイ５１４は、第１の眼球５２０が第２のディスプレイ５１４を見ることができず、第２の眼球５２２が第１のディスプレイ５１２を見ることができないように互いに分離されている。図示のように、第１のディスプレイ５１２及び第２のディスプレイ５１４は、様々な種類のディスプレイを用いて実施することができる。例えば、液晶ディスプレイ、発光ダイオードディスプレイ、プラズマディスプレイ、又は他の何らかの適切な種類のディスプレイを、第１のディスプレイ５１２、第２のディスプレイ５１４、又は第１のディスプレイと第２のディスプレイの両方に使用することができる。
【００９６】
このような実施例では、頭部追跡装置５１０は、人５１８の頭部５１６の位置を追跡するように構成されている。このような実施例では、ヘッドマウントディスプレイデバイス５０４は仮想環境ジェネレータ５０２に情報５２４を送る。図示のように、情報５２４は第１の眼球５２０及び第２の眼球５２２に関する追跡情報である。加えて、情報５２４は、頭部追跡装置５１０が生成する頭部位置情報も含むことができる。
【００９７】
仮想環境ジェネレータ５０２は情報５２４を受け取る。このような実施例では、仮想環境ジェネレータ５０２はコンピュータを用いて実施することができる。仮想環境ジェネレータ５０２は、仮想環境５２８を作成して操作するように構成される。
【００９８】
仮想環境ジェネレータ５０２は、通信リンクを用いてヘッドマウントディスプレイデバイス５０４と通信する。このような通信リンクは、例えば、限定しないが、有線通信リンク、光通信リンク、無線通信リンク、又はこれらの何らかの組合せとすることができる。
【００９９】
仮想環境ジェネレータ５０２はヘッドマウントディスプレイデバイス５０４から受け取られた情報５２４を使用して、アバター５２６を生成し、仮想環境５２８内においてアバター５２６を位置決めする。アバター５２６は、仮想環境５２８内における人５１８の表現である。
【０１００】
このような実施例では、情報５２４は、アバター５２６内の第１の仮想カメラ５３０及び第２の仮想カメラ５３２の位置を識別するためにも使用される。具体的には、このような実施例では、第１の仮想カメラ５３０及び第２の仮想カメラ５３２はアバター５２６の頭部５３６に位置している。
【０１０１】
第１の仮想カメラ５３０及び第２の仮想カメラ５３２は、それぞれ第１の眼球５２０及び第２の眼球５２２を表す。換言すれば、仮想カメラと眼球との間には一対一の相関が存在する。このような実施例では、第１の仮想カメラ５３０及び第２の仮想カメラ５３２は、第１の眼球５２０と第２の眼球５２２との間の瞳孔間距離５３７に対応する距離５３４を有する。
【０１０２】
このような実施例では、第１の眼球５２０及び第２の眼球５２２が頭部５１６内で移動すると、情報５２４を用いて第１の仮想カメラ５３０及び第２の仮想カメラ５３２が対応する移動を行うように再位置決めされる。さらに、人５１８の頭部５１６が動くとき、アバター５２６の頭部５３６も動く。
【０１０３】
第１の仮想カメラ５３０及び第２の仮想カメラ５３２が仮想環境ジェネレータ５０２によって使用されて、第１の仮想カメラ５３０及び第２の仮想カメラ５３２に見える仮想環境５２８のビューに基づき、画像が生成される。このような実施例では、情報５２４により、第１の仮想カメラ５３０及び第２の仮想カメラ５３２の位置が更新される。
【０１０４】
図２のブロック図に示される仮想環境システム２００の一実装態様としての仮想環境システム５００は、様々な仮想環境システムを実施可能な方式を限定するものではない。例えば、いくつかの例示的実施形態では、ヘッドマウントディスプレイデバイス５０４の代わりにコンタクトレンズディスプレイシステムを使用することができる。また別の実施例では、仮想カメラはアバター５２６なしで使用することができる。
【０１０５】
図２〜４に示される種々のコンポーネントを、図１及び５のコンポーネントと組み合わせることができるか、図１及び５のコンポーネントと共に使用することができるか、又はそれら二つの場合を組み合わせることができる。加えて、図１のコンポーネントの一部は、図２〜４にブロック図の形態で、及び図５に図式的に、それぞれ示されたコンポーネントを物理的構造としてどのように実施できるかの実施例である。
【０１０６】
次に図６を参照する。図６は、例示的な一実施形態による、仮想環境表示プロセスのフロー図である。図６に示されたプロセスは、図２の仮想環境システム２００を用いて実施される。
【０１０７】
プロセスは、人の頭部にある第１の眼球に関する第１の眼球位置情報と、人の頭部にある第２の眼球に関する第２の眼球位置情報とを受取ることにより開始される（工程６００）。次いで、プロセスは、第１の眼球位置情報に基づいて第１の眼球に見せるための仮想環境の第１の画像を生成し、第２の眼球位置情報に基づいて第２の眼球に見せるための仮想環境の第２の画像を生成する（工程６０２）。工程６０２では、画像は、仮想環境内での画像生成のための視点が物理的環境内での人の眼球の視点に対応するように生成される。次いで、プロセスは、第１の画像及び第２の画像を人に表示するために送り（工程６０４）、その後工程６００に戻る。
【０１０８】
これらの様々な工程は、人が仮想環境と相互作用している限り繰り返される。図６のフロー図の様々な工程を用いて、仮想環境を眺める人の体感をもっと自然なものにすることができる。具体的には、仮想環境において同じ視点を用いることにより、人の眼球の視点からの画像が生成される。
【０１０９】
次に図７Ａ及び７Ｂを参照する。図７Ａ及び７Ｂは、例示的な一実施形態による、仮想環境のビューイングプロセスのフロー図である。図７Ａ及び７Ｂに示すプロセスは、図２の人２０６が表示装置２２０を用いて眺める画像２１８を生成するために、仮想環境システム２００を使用して実施される。図７Ａ及び７Ｂに示す様々な工程は、人２０６と仮想環境２０４とが相互作用する間に、図２の仮想環境システム２００及び人２０６の両方が実行する工程を説明している。
【０１１０】
プロセスは、人の頭部にヘッドマウントディスプレイデバイスを配置することにより開始される（工程７００）。ヘッドマウントディスプレイデバイスは、表示装置２２０の一実装態様であり、センサシステム２２２の少なくとも一部を含むこともできる。ヘッドマウントディスプレイデバイスは、眼球運動を、任意選択で頭部の運動を、それぞれ追跡することができる。
【０１１１】
次いで、人は仮想環境の生成を開始する（工程７０２）。この工程では、人は仮想環境システムを起動し、仮想環境の生成を開始する。このような実施例では、仮想環境ジェネレータ（例えば、図２の仮想環境ジェネレータ２０８）が仮想環境の生成を開始する。
【０１１２】
仮想環境ジェネレータは、現行情報を求めてヘッドマウントディスプレイデバイスにクエリを送る（工程７０４）。クエリにより、ヘッドマウントディスプレイデバイスはクエリ内に情報を生成する。このような現行情報には、人の眼球の位置に関する情報が含まれる。現行情報には、頭部の位置及び他の適切な情報も含まれる。このような実施例では、工程７０４のクエリは周期的に行われうる。さらに、眼球の位置は、三次元における眼球の位置、方向、又はそれら両方である。
【０１１３】
仮想環境ジェネレータは、人の第１の眼球及び第２の眼球の方向に関する情報を取り出す（工程７０６）。このような実施例では、第１の眼球が人の左目に対応し、第２の眼球が右目に、それぞれ対応している。
【０１１４】
次いで、ヘッドマウントディスプレイデバイスに人の頭部の方向に関する情報が含まれるかどうかに関する決定が行われる（工程７０８）。ヘッドマウントディスプレイデバイスが頭部の方向に関する情報を含む場合、仮想環境ジェネレータは頭部の方向に関する情報を取り出す（工程７１０）。
【０１１５】
次に、ヘッドマウントディスプレイデバイスに人の頭部の位置に関する情報が含まれるかどうかに関する決定が行われる（工程７１２）。工程７１２では、三次元座標系を用いて位置を説明する。ヘッドマウントディスプレイデバイスがこの情報を含む場合、ヘッドマウントディスプレイデバイスは頭部の位置に関する情報を取り出す（工程７１４）。このような実施例では、頭部の方向及び位置に関する情報は頭部位置情報を形成する。
【０１１６】
次に、仮想環境ジェネレータが人によって使用されるように構成されているかどうかに関する決定が行われる（工程７１６）。仮想環境ジェネレータが人によって使用されるように構成されていない場合、第１の眼球と第２の眼球との間の瞳孔間距離が眼球追跡情報を用いて計算される（工程７１８）。このような実施例では、眼球追跡情報には、第１の眼球及び第２の眼球の方向、ヘッドマウントディスプレイデバイスの特徴、眼球追跡装置間の距離、センサの視角、及び人の瞳孔間距離を計算するために使用される他の適切な情報が含まれる。
【０１１７】
このような実施例では、瞳孔間距離は、任意の数の様々な技術を用いて識別される。瞳孔間距離を識別するための一つの技術は、コントロールポイントに焦点を合わせたときの各眼球から複数のサンプルを採取することを含む。このコントロールポイントは、例えば、中心の十字カーソル、表示装置の端部、又はこれらの何らかの組合せとすることができる。次に、各眼球の、各コントロールポイントのビューイング方位が計算される。一又は複数の眼球追跡センサに対する眼球の位置が、複数のビューイング方位を用いて計算される。次に、眼球追跡装置間の距離が計算される。最後に、一又は複数の眼球センサのオフセットに基づく眼球間の距離が計算される。
【０１１８】
人に関するこのような情報及び他の情報は、任意の数の異なる位置に格納することができる。例えば、情報は、ヘッドマウントディスプレイデバイス、仮想環境ジェネレータ、遠隔データベース、又は他の何らかの適切な位置のうちの少なくとも一つに格納することができる。また別の実施例では、人は情報の少なくとも一部を入力することができる。
【０１１９】
次いで、仮想環境ジェネレータは、仮想環境において人の位置を表すアバターを作成する（工程７２０）。人の第１の眼球及び第２の眼球を表す第１の仮想カメラ及び第２の仮想カメラがアバターに追加される（工程７２２）。仮想カメラの配置は、ヘッドマウントディスプレイデバイスから取り出された眼球に関する情報を用いて実行される。このような配置は、人の頭部に関する情報が入手可能である場合、そのような情報に基づいて行ってもよい。
【０１２０】
仮想カメラは、計算された人の眼球間の瞳孔間距離と、人の眼球に関する現行情報とに基づいて追加される。入手可能であれば、人の頭部に関する情報も使用できる。仮想カメラの水平方向の間隔は、瞳孔間距離に基づいて決めることができる。仮想環境の床からカメラまでの垂直方向の距離は、人の頭部に関する情報に基づいて決めることができる。加えて、仮想カメラの位置決めには、人の一方の眼球が、垂直方向において他方の眼球よりも高い位置にありうるということが考慮される。仮想カメラの位置決めには、人の眼球は左右対称に整列していないこともあるということも考慮される。
【０１２１】
仮想環境ジェネレータは、人の眼球の方向に対応する方向を有するように仮想カメラを位置決めする（工程７２４）。このような位置決めは、ヘッドマウントディスプレイデバイスから取り出された現行情報に基づいて実行される。このようにして、仮想カメラは、ヘッドマウントディスプレイデバイスから取り出された情報に含まれる眼球の位置及び眼球の方向に基づいて、人の眼球の視点に対応する視点を有することができる。
【０１２２】
次に、ヘッドマウントディスプレイデバイスから取り出された情報が頭部の方向に関する情報を含むかどうかに関する決定が行われる（工程７２６）。取り出された情報に頭部の方向に関する情報が含まれる場合、アバターは、人の頭部の現行方向に基づいて対応する方向を有するように位置決めされる（工程７２８）。
【０１２３】
アバターの方向のこのような変更により仮想カメラの方向も変更され、次いでこれにより仮想カメラの視点も変化する。このように、人の頭部及び人の眼球の変化は、アバター及びアバター内の仮想カメラに反映される。
【０１２４】
ヘッドマウントディスプレイデバイスから取り出された情報が頭部の位置に関する情報を含むかどうかに関する決定が行われる（工程７３０）。取り出された情報に頭部の位置に関する情報が含まれる場合、アバターは、人の頭部の現行位置に一致するように移動される（工程７３２）。
【０１２５】
次いで、仮想環境ジェネレータは、第１の仮想カメラの眺めに基づいて仮想環境をレンダリングする（工程７３６）。換言すれば、仮想環境ジェネレータは、特定の眺めに基づいてグラフィック情報を生成する。このようなレンダリングにより、仮想環境の第１の画像が第１の仮想カメラの視点から生成される。換言すれば、仮想環境ジェネレータは、第１の仮想カメラから見える仮想環境の第１の画像を生成する。同様にして、仮想環境ジェネレータは、第２の仮想カメラの眺めに基づいて仮想環境をレンダリングする（工程７３８）。このようなレンダリングにより、仮想環境の第２の画像が第２の仮想カメラの視点から生成される。第１の仮想カメラと同様に、仮想環境ジェネレータは、第２の仮想カメラから見える仮想環境の第２の画像を生成する。
【０１２６】
結果として工程７３６及び工程７３８において生成された第１の画像及び第２の画像は、やや異なる視点からの仮想環境の二つのビューを提供する。換言すれば、これらの画像は、人の眼球の眺めに対応するやや異なる眺めに基づくビューを提供する。
【０１２７】
仮想カメラが人の眼球に対応する方向を有するように位置決めされていることにより、画像は第１の人に合わせて調整される。ヘッドマウントディスプレイデバイスが第２の人によって使用されるとき、第２の人の眼球の位置決めが第１の人の眼球とは異なることを考慮して、仮想カメラの位置決めは異なる。
【０１２８】
第１の画像はヘッドマウントディスプレイデバイスに送られて、人の第１の眼球に対して表示される（工程７４０）。第２の画像はヘッドマウントディスプレイデバイスに送られて、人の第２の眼球に対して表示される（工程７４２）。このような実施例では、工程７３６及び工程７３８はほぼ同時に実施される。工程７４０及び工程７４２もほぼ同時に実施されてよい。
【０１２９】
人は第１の画像及び第２の画像を眺める（工程７４４）。このとき、人は、第１の画像及び第２の画像に基づき、自然な人の両眼視処理を用いて三次元画像を再構成する（工程７４６）。仮想環境と相互作用を続けるかどうかに関する決定が行われる（工程７４８）。人が仮想環境との相互作用を継続しないことを選択する場合、プロセスは終了する。継続を選択する場合、プロセスは工程７０４に戻る。
【０１３０】
工程７３０に戻り、取り出される情報が頭部の位置を含まない場合、プロセスは工程７３６及び工程７３８に進む。工程７２６に戻り、取り出される情報が頭部の方向を含まない場合、プロセスはやはり工程７３６及び工程７３８に進む。
【０１３１】
工程７１６に戻り、仮想環境ジェネレータが人によって使用されるように構成されている場合、プロセスは工程７３６及び工程７３８に進み、ヘッドマウントディスプレイデバイスに合わせて仮想環境ジェネレータを構成又は較正する工程を実行しない。再度工程７１２に戻り、取り出される情報が頭部の位置を含まない場合、プロセスは工程７１６に進む。取り出される情報が頭部の方向を含まない場合も、プロセスは工程７０８から工程７１６に進む。
【０１３２】
図示された様々な実施形態のフロー図及びブロック図は、例示的な一実施形態における装置及び方法のいくつかの可能な実装態様のアーキテクチャ、機能性、及び工程を説明するものである。これに関し、フロー図又はブロック図の各ブロックは、一つの工程又はステップの一つのモジュール、セグメント、機能及び／又は部分を表わすことができる。例えば、ブロックの一又は複数は、ハードウェア内のプログラムコードとして、又はプログラムコードとハードウェアとの組合せとして実施可能である。ハードウェアにおいて実施されるとき、ハードウェアは、例えば、フロー図又はブロック図の一又は複数の工程を実行するように製造又は構成された集積回路の形態をとることができる。
【０１３３】
例示的な一実施形態のいくつかの代替的な実装態様では、ブロックに記載された一つ又は複数の機能は、図中に記載の順序を逸脱して現れることがある。例えば、含まれる機能性によっては、連続して示される二つのブロックは実質的に同時に実行される場合があり、又はブロックは時に逆の順序で実行されうる。また、フロー図又はブロック図に示されるブロックに他のブロックが追加されてもよい。
【０１３４】
例えば、種々の工程は、ヘッドマウントディスプレイデバイスからの情報の取り出しについて説明している。いくつかの実施例では、ヘッドマウントディスプレイデバイスは、クエリ又は情報を取り出す仮想環境ジェネレータなしで、自動的に情報を送ることができる。さらに、いくつかの実施例では、工程７３６及び工程７３８は、ほぼ同時にではなく、連続して実施されてもよい。また別の実施例では、工程７３０及び工程７３２は省略されてもよい。眼球の位置に関する情報には、三次元空間における位置及び方向の両方が含まれてよい。
【０１３５】
図８は、例示的な一実施形態によるデータ処理システムのブロック図を示している。データ処理システム８００は、図１のコンピュータ１０２、図２のコンピュータシステム２１２、及び図５の仮想環境ジェネレータ５０２を実施するために使用される。この実施例では、データ処理システム８００は通信フレームワーク８０２を含み、これによりプロセッサユニット８０４、メモリ８０６、固定記憶域８０８、通信ユニット８１０、入出力（Ｉ／Ｏ）ユニット８１２、及びグラフィック処理ユニット８１４の間の通信が行われる。この実施例では、通信フレームワークはバスシステムの形態をとることができる。
【０１３６】
プロセッサユニット８０４は、メモリ８０６にローディングされるソフトウェアに対する命令を実行するように働く。プロセッサユニット８０４は、特定の実装態様に応じて、任意の数のプロセッサ、マルチプロセッサコア、又は他の何らかの種類のプロセッサであってもよい。
【０１３７】
メモリ８０６及び固定記憶域８０８は、記憶装置８１６の例である。記憶装置は、情報を一時的に及び／又は恒久的に格納できる何らかのハードウェア部分であり、この情報には、例えば、限定されないが、データ、機能的形態のプログラムコード、及び／又はその他の適切な情報が含まれる。記憶装置８１６は、このような実施例では、コンピュータで読込可能な記憶装置とも呼ばれる。このような実施例では、メモリ８０６は、例えば、ランダムアクセスメモリか、或いは他のいずれかの適切な揮発性又は非揮発性の記憶装置とすることができる。固定記憶域８０８は、特定の実装態様に応じて様々な形態をとることができる。
【０１３８】
例えば、固定記憶域８０８は、一又は複数のコンポーネント又はデバイスを含みうる。例えば、固定記憶域８０８は、ハードドライブ、フラッシュメモリ、書換え形光ディスク、書換え可能磁気テープ、又はこれらの何らかの組み合わせである。固定記憶域８０８によって使用される媒体は、取り外し可能なものでもよい。例えば、取り外し可能なハードドライブを固定記憶域８０８に使用することができる。
【０１３９】
このような実施例では、通信ユニット８１０は、他のデータ処理システム又はデバイスとの通信を行う。このような実施例では、通信ユニット８１０はネットワークインターフェースカードである。
【０１４０】
入出力ユニット８１２により、データ処理システム８００に接続可能な他のデバイスによるデータの入力及び出力が可能になる。例えば、入出力ユニット８１２は、キーボード、マウス、及び／又は他の何らかの適切な入力装置を介してユーザ入力のための接続を提供することができる。さらに、入出力ユニット８１２は、プリンタに出力を送ることができる。グラフィック処理ユニット８１４は、ユーザに表示されるグラフィック情報を生成するための機構を提供する。
【０１４１】
オペレーティングシステム、アプリケーション、及び／又はプログラムに対する命令は、通信フレームワーク８０２を介してプロセッサユニット８０４と通信する記憶装置８１６内に配置されうる。種々の実施形態のプロセスは、メモリ（例えば、メモリ８０６）に配置される、コンピュータで実施される命令を使用して、プロセッサユニット８０４によって実行されうる。
【０１４２】
これらの命令は、プログラムコード、コンピュータで使用可能なプログラムコード、又はコンピュータで読込可能なプログラムコードと呼ばれ、プロセッサユニット８０４内の一つのプロセッサによって読込まれて実行されうる。種々の実施形態のプログラムコードは、様々な物理的記憶媒体又はコンピュータで読込可能な記憶媒体（例えば、メモリ８０６又は固定記憶域８０８）上に具現化されうる。
【０１４３】
プログラムコード８１８は、選択的に取り外し可能なコンピュータで読込可能な媒体８２０上に機能的な形態で位置し、データ処理システム８００にローディング又は転送されて、プロセッサユニット８０４によって実行される。プログラムコード８１８及びコンピュータで読込可能な媒体８２０は、このような実施例ではコンピュータプログラム製品８２２を形成する。一実施例では、コンピュータで読込可能な媒体８２０は、コンピュータで読込可能な記憶媒体８２４又はコンピュータで読込可能な信号媒体８２６とすることができる。
【０１４４】
このような実施例では、コンピュータで読込可能な記憶媒体８２４は、プログラムコード８１８を伝搬または伝送する媒体というよりはむしろ、プログラムコード８１８を記憶するために使用される物理的な又は有形の記憶装置である。
【０１４５】
代替的に、プログラムコード８１８は、コンピュータで読込可能な信号媒体８２６を用いてデータ処理シスム８００に転送可能である。コンピュータで読込可能な信号媒体８２６は、例えば、プログラムコード８１８を含む伝播データ信号である。例えば、コンピュータで読込可能な信号媒体８２６は、電磁信号、光信号、及び／又は他のいずれかの適切な種類の信号であってもよい。このような信号は、無線通信リンク、光ファイバケーブル、同軸ケーブル、有線、及び／又は他の適切な種類の通信リンクといった通信リンクによって転送されうる。
【０１４６】
データ処理システム８００に例示されている種々のコンポーネントは、種々の実施形態を実施できる方式をアーキテクチャ的に限定するものではない。異なる例示的実施形態が、データ処理システム８００について示されているコンポーネントに追加的及び／又は代替的なコンポーネントを含むデータ処理システムにおいて実施されうる。図８に示す他のコンポーネントは、図示の実施例から変更可能である。種々の実施形態は、プログラムコード８１８を実行できる任意のハードウェアデバイス又はシステムを使用して実施することができる。
【０１４７】
このように、例示的実施形態により、仮想環境と相互作用する人に自然なビューイングが提供される。一実施例では、人の頭部を追跡することに加えて追加パラメータが実行される。仮想環境ジェネレータは、人の眼球に関する情報を考慮する。
【０１４８】
例えば、人の頭部の位置及び方向に加えて、瞳孔間距離及び眼球の方向が考慮される。その結果、人によって異なる瞳孔間距離、又は人の身長差による視線距離から生じうる個々の距離が、人の画像を生成するときに考慮される。結果として、各人のために調整された仮想環境の表現が生成される。
【０１４９】
一又は複数の実施例では、仮想環境におけるビューイング位置及び方向を識別するために、眼球の位置が追跡される。換言すれば、人の眼球の各々について視点が生成される。これらの視点は、各人にとっての仮想環境内で画像を生成するために使用される。実施例では、仮想環境において対応する人の視点を再形成するために仮想カメラが使用される。
【０１５０】
結果として、人は、二次元画像を眺めながら三次元画像を再構成する。このような再構成は、人が、各々が特定の眼球のために特に生成された二つの二次元画像に基づいて三次元画像を再構築する自然な両眼視処理を用いて実行される。
【０１５１】
このように、一又は複数の例示的実施形態により、人は現実に近い仮想環境のビューを有することができる。さらに、仮想環境と相互作用する際の望ましくない影響も軽減される。
【０１５２】
上述した種々の例示的な実施形態の説明は、例示及び説明を目的とするものであり、完全な説明であること、又はこれらの実施形態を開示された形態に限定することを意図していない。当業者には、多数の修正例及び変形例が明らかであろう。さらに、種々の例示的な実施形態は、他の例示的な実施形態とは異なるフィーチャを提供することができる。選択された一又は複数の実施形態は、実施形態の原理、実際の用途を最もよく説明するため、及び他の当業者に対し、様々な実施形態の開示内容と、考慮される特定の用途に適した様々な修正との理解を促すために選択及び記述されている。
【符号の説明】
【０１５３】
１００    仮想環境システム
１０２    コンピュータ
１０４    インターフェースシステム
１０６    人
１０８    ヘッドマウントディスプレイデバイス
１１０  データグローブ
１１２    頭部
１１４    手
１１６    物理的環境
１１８    無線通信リンク
１２０    椅子
５００    仮想環境システム
５０２    仮想環境ジェネレータ
５０４    ヘッドマウントディスプレイデバイス
５０６    第１の眼球追跡装置
５０８    第２の眼球追跡装置
５１０    頭部追跡装置
５１２    第１のディスプレイ
５１４    第２のディスプレイ
５１６    頭部
５１８    人
５２０    第１の眼球
５２２    第２の眼球
５２６    アバター
５３０    第１の仮想カメラ
５３２    第２の仮想カメラ
５３４    距離
５３６    頭部
５３７    瞳孔間距離
【図１】
2014086091.tif 000003
【図２】
2014086091.tif 000004
【図３】
2014086091.tif 000005
【図４】
2014086091.tif 000006
【図５】
2014086091.tif 000007
【図６】
2014086091.tif 000008
【図７Ａ】
2014086091.tif 000009
【図７Ｂ】
2014086091.tif 000010
【図８】
2014086091.tif 000011
【外国語明細書】
2014086091000001.pdf
2014086091000002.pdf
2014086091000003.pdf
2014086091000004.pdf