(57)【要約】      （修正有）【課題】仮想環境の仮想画像を生成するための方法およびシステムを提供する。【解決手段】仮想現実管理装置１０６は、手システム１３１からユーザ１０４の少なくとも片手の手位置データ１３３を受信する。仮想現実管理装置１０６は、頭部装着型システム１０８からユーザ１０４の頭１１２の頭位置データ１２０を受信する。仮想現実管理装置１０６は、現在の時間に対応するターゲット画像を使用して、画像に基づいた位置データおよび現在の時間の現在の基準フレームを識別する。仮想現実管理装置１０６は、手位置データ１３３、頭位置データ１２０、画像に基づいた位置データ、および現在の基準フレームを使用して、現在の時間の仮想画像制御データ１３５を生成する。仮想画像制御データ１３５は、仮想画像アプリケーション１３７によって使用されるために構成される。【選択図】図１
2013214285.tif 000002
【特許請求の範囲】
【請求項１】
仮想環境（１０２）の仮想画像（１４０）を生成するための方法であって、
仮想現実管理装置（１０６）で、手システム（１３１）からユーザ（１０４）の少なくとも片手の手位置データを受信することと、
前記仮想現実管理装置（１０６）で、頭部装着型システム（１０８）から前記ユーザ（１０４）の頭（１１２）の頭位置データ（１２０）を受信することと、
前記仮想現実管理装置（１０６）によって、現在の時間（３１４）に対応するターゲット画像を使用して、画像に基づいた位置データ（３２８）および前記現在の時間（３１４）の現在の基準フレーム（３３０）を識別することと、
前記仮想現実管理装置（１０６）によって、前記手位置データ（１３３）、前記頭位置データ（１２０）、前記画像に基づいた位置データ（３２８）、および前記現在の基準フレーム（３３０）を使用して、前記現在の時間（３１４）の仮想画像制御データを生成することと
を含み、前記仮想画像制御データ（１３５）が、仮想画像アプリケーション（１３７）によって使用されるために構成される、方法。
【請求項２】
前記仮想現実管理装置（１０６）によって、前記仮想画像制御データ（１３５）を前記仮想画像アプリケーション（１３７）に送ることと、
前記仮想画像アプリケーション（１３７）によって、前記現在の時間（３１４）の前記仮想画像制御データ（１３５）を使用して、前記現在の時間（３１４）の前記仮想環境（１０２）の現在の仮想画像（３１０）を生成することと
をさらに含み、前記現在の時間（３１４）の前記仮想画像制御データ（１３５）を使用して、前記現在の時間（３１４）の前記仮想環境（１０２）の前記現在の仮想画像（３１０）を生成する前記ステップが、前記仮想画像制御データ（１３５）に基づき、前記現在の仮想画像（１３０）内において、仮想左手（１４２）および仮想右手（１４４）を位置決めすることを含み、前記仮想左手（１４２）が、前記ユーザ（１０４）の左手（１２４）を表す画像であり、前記仮想右手（１４４）が、前記ユーザ（１０４）の右手（１２６）を表す画像である、請求項１に記載の方法。
【請求項３】
前記仮想現実管理装置（１０６）によって、前記頭部装着型システム（１０８）に関連付けられたディスプレイデバイス（１１６）上で前記仮想環境（１０２）の前記現在の仮想画像（３１０）を前記ユーザ（１０４）に表示することであって、前記現在の仮想画像（３１０）が、前記ディスプレイデバイス（１１６）上に表示された以前の仮想画像（３１２）を置き換える、表示することと、
前記ユーザ（１０４）の左手（１２４）に実質的に一致するように構成された左手袋（１２８）を使用して、左手位置データ（１３４）を生成することと、
前記ユーザ（１０４）の右手（１２６）に実質的に一致するように構成された右手袋（１３０）を使用して、右手位置データ（１３６）を生成することと
をさらに含み、前記左手位置データ（１３４）および前記右手位置データ（１３６）が前記手位置データ（１３３）を形成し、前記手位置データ（１３３）、前記頭位置データ（１２０）、前記画像に基づいた位置データ（３２８）、および前記現在の基準フレーム（３３０）を使用して、前記現在の時間（３１４）の前記仮想画像制御データ（１３５）を生成する前記ステップが、
前記仮想現実管理装置（１０６）によって、時間に対して前記手位置データ（１３３）および前記頭位置データ（１２０）を同期させること
を含む、請求項１または２に記載の方法。
【請求項４】
前記現在の時間（３１４）の前記仮想画像制御データ（１３５）を生成する前記ステップが、
前記手位置データ（１３３）における左手位置データ（１３４）、前記手位置データ（１３３）における右手位置データ（１３６）、および前記画像に基づいた位置データ（３２８）を使用して、修正された手位置データ（４２２）を識別することと、
前記頭位置データ（１２０）および前記現在の基準フレーム（３３０）を使用して、修正された頭位置データ（４２４）を識別することと、
前記修正された手位置データ（４２２）、前記修正された頭位置データ（４２４）、および制約の組（４１６）を使用して、前記仮想画像制御データ（１３５）を生成することと、
ユーザデータ（１４５）を使用して、前記制約の組（４１６）を識別することと
を含み、前記ユーザデータ（１４５）がユーザ画像の組（１５０）に基づく、請求項１または２に記載の方法。
【請求項５】
前記修正された手位置データ（４２２）、前記修正された頭位置データ（４２４）、および前記制約の組（４１６）を使用して、前記仮想画像制御データ（１３５）を生成する前記ステップが、
フィードバック制御装置（４１０）、前記修正された手位置データ、前記修正された頭位置データ（４２４）、および前記制約の組（４１６）を使用して、指位置誤差（４２６）、相対的な手位置誤差（４２８）、および頭位置誤差（４３０）を識別することと、
前記フィードバック制御装置（４１０）、前記指位置誤差（４２６）、前記相対的な手位置誤差（４２８）、および前記頭位置誤差（４３０）を使用して、所望のレベルの精度で前記仮想画像制御データ（１３５）を生成することと
を含み、前記仮想環境（１０２）が、設計環境、製造環境、コンピュータ環境、試験環境、データ管理環境、検査環境、および操作環境のうちの１つから選択されたエンジニアリング環境のシミュレーションである、請求項４に記載の方法。
【請求項６】
ユーザ（１０４）の頭（１１２）に対して着用されるように構成された頭部装着型システム（１０８）と、
前記頭部装着型システム（１０８）に関連付けられた仮想現実管理装置（１０６）と
を備える仮想現実システムであって、前記仮想現実管理装置（１０６）が、
手システム（１３１）から前記ユーザ（１０４）の少なくとも片手の手位置データ（１３３）を受信し、
前記頭部装着型システム（１０８）内のセンサシステム（１１８）から前記ユーザ（１０４）の前記頭（１１２）の頭位置データ（１２０）を受信し、
現在の時間（３１４）に対応するターゲット画像を使用して、画像に基づいた位置データ（３２８）および現在の時間（３１４）の現在の基準フレーム（３３０）を識別し、
前記手位置データ（１３３）、前記頭位置データ（１２０）、前記画像に基づいた位置データ（３２８）、および前記現在の基準フレーム（３３０）を使用して、前記現在の時間（３１４）の仮想画像制御データ（１３５）を生成する
ように構成されており、前記仮想画像制御データ（１３５）が、仮想画像アプリケーション（１３７）によって使用されるために構成されている、仮想現実システム。
【請求項７】
前記頭部装着型システム（１０８）に関連付けられたディスプレイデバイス（１１６）をさらに備えており、
前記仮想現実管理装置（１０６）が、前記ディスプレイデバイス（１１６）上で前記仮想環境（１０２）の現在の仮想画像（３１０）を前記ユーザ（１０４）に表示するようにさらに構成されており、
前記仮想現実管理装置（１０６）が、前記仮想画像制御データ（１３５）を前記仮想画像アプリケーション（１３７）に送り、前記仮想画像アプリケーション（１３７）から前記現在の時間（３１４）の前記仮想環境（１０２）の前記現在の仮想画像（３１０）を受信するように構成されており、
前記現在の仮想画像（３１０）が、仮想左手（１４２）および仮想右手（１４４）を含み、前記仮想左手（１４２）が、前記ユーザ（１０４）の左手（１２４）を表す画像であり、前記仮想右手（１４４）が、前記ユーザ（１０４）の右手（１２６）を表す画像である、請求項６に記載の仮想現実システム。
【請求項８】
前記仮想現実管理装置（１０６）が、
時間に対して前記手位置データ（１３３）および前記頭位置データ（１２０）を同期させるように構成されたデータ調整装置（３３６）を備え、前記データ調整装置（３３６）が、
前記手位置データ（１３３）における左手位置データ（１３４）、前記手位置データ（１３３）における右手位置データ（１３６）、および前記画像に基づいた位置データ（３２８）を使用して、修正された手位置データ（４２２）を識別するように構成された手データ変調装置（４１８）と、
前記頭位置データ（１２０）および前記現在の基準フレーム（３３０）を使用して、修正された頭位置データ（４２４）を識別するように構成された頭データ変調装置（４２０）と、
前記修正された手位置データ（４２２）、前記修正された頭位置データ（４２４）、および制約の組（４１６）を使用して、前記仮想画像制御データ（１３５）を生成するように構成された制御データ生成装置（４１２）と、
ユーザ画像の組（１５０）に基づくユーザデータ（１４５）を使用して、前記制約の組（４１６）を識別するように構成された制約識別装置（４０６）と
を備えており、
前記データ調整装置（３３６）が、さらに、
前記修正された手位置データ（４２２）、前記修正された頭位置データ（４２４）、および前記制約の組（４１６）を使用して、指位置誤差（４２６）、相対的な手位置誤差（４２８）、および頭位置誤差（４３０）を識別するように構成されたフィードバック制御装置（４１０）
を備えており、
前記制御データ生成装置（４１２）が、前記指位置誤差（４２８）、前記相対的な手位置誤差（４２８）、および前記頭位置誤差（４３０）を使用して、前記仮想画像制御データ（１３５）を生成するように構成されている、請求項６または７に記載の仮想現実システム。
【請求項９】
前記仮想現実システムが、前記手システム（１３１）をさらに備えており、
前記手システム（１３１）が、
左手位置データ（１３４）を生成するように構成された左手袋（１２８）であって、前記ユーザ（１０４）の左手（１２４）と実質的に一致するように構成された左手袋（１２８）と、
右手位置データ（１３６）を生成するように構成された右手袋（１３０）であって、前記ユーザ（１０４）の右手（１２６）と実質的に一致するように構成された右手袋（１３０）と
を備えており、
前記仮想画像制御データ（１３５）が、仮想環境（１０２）の仮想画像（１４０）を制御するために使用され、前記仮想環境（１０２）が、設計環境、製造環境、コンピュータ環境、試験環境、データ管理環境、検査環境、および操作環境のうちの１つから選択されたエンジニアリング環境（１０３）のシミュレーションである、請求項６ないし８のいずれか一項に記載の仮想現実システム。
【請求項１０】
前記仮想環境（１０２）の前記仮想画像（１４０）を生成するための方法であって、
バスと、
前記バスに接続された非一時的記憶デバイスであって、プログラムコードを含む非一時的記憶デバイスと、
前記バスに接続されたプロセッサユニット（９０４）であって、請求項１ないし５のいずれか一項に記載の方法のステップを含む前記プログラムコードを実行するように構成されたプロセッサユニット（９０４）と
を備えるコンピュータによって実行可能な請求項１ないし５のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に仮想現実に関し、特に、仮想環境とのユーザ対話に関する。さらにより詳細には、本開示は、ユーザが仮想環境と対話するときに目と手の協調のレベルを高めるための方法およびシステムに関する。
【背景技術】
【０００２】
仮想現実（ＶＲ）は、仮想環境の形で現実の環境または想像上の環境をシミュレーションするために使用され得る技術である。仮想環境は、現実の環境または想像上の環境における物理的な存在をシミュレーションすることができる、コンピュータでシミュレーションされた環境である。典型的には、仮想環境は、２次元環境または３次元環境としてユーザに視覚的に提示される。場合によっては、仮想環境の視覚的表現に加えて、音などの感覚情報がユーザに提示され得る。
【０００３】
異なるタイプの仮想現実システムは、異なるレベルの没入感をユーザに提供し得る。本明細書で使用される場合、仮想現実システムによって提供される「没入感」のレベルは、ユーザが仮想現実システムによって作成された仮想環境に存在していると感じる程度である。ユーザが知覚的な没入感と認知的な没入感の両方を体験するとき、ユーザは仮想環境に完全に没入し得る。
【０００４】
ユーザが仮想環境に物理的に存在しているという感覚を有するとき、ユーザは知覚的な没入感を体験し得る。例えば、ユーザは、自分の手が仮想環境に存在していると感じ得る。ユーザが仮想環境で起こっていることが実際に起こっているという感覚を有するとき、ユーザは認知的な没入感を体験し得る。言い換えれば、ユーザの心が仮想環境に没入し得る。
【０００５】
さらに、ユーザが仮想環境に認知的に没入するとき、ユーザの動作は仮想環境に影響を及ぼすことがあり、仮想環境における事象はユーザの感覚に影響することがある。ユーザが仮想環境に認知的に没入するとき、ユーザは仮想環境に及ぼす影響およびユーザの感覚に及ぼす影響を実際に起こっているものとして受け入れることがある。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
いくつかの現在利用可能な仮想現実システムは、所望のレベルの没入感を提供することができないことがある。例えば、いくつかの現在利用可能な仮想現実システムは、仮想環境内での人間の移動を所望のレベルの精度でシミュレーションすることができないことがある。特に、これらの仮想現実システムは、仮想現実システムの寸法および／または重量を所望するよりも増加させることなく、蝶番関節の周りのヒト骨格構成要素の回転を所望のレベルの精度でシミュレーションすることができないことがある。
【０００７】
例えば、ジャイロスコープは、蝶番関節の周りのヒト骨格構成要素の回転を測定することが可能であってもよい。しかし、このタイプの回転を測定するのに必要なジャイロスコープの構成は、所望するよりも大きくおよび／または重くなることがある。さらに、ジャイロスコープのこの構成は、ジャイロスコープが取り付けられた身体の一部分に望ましくない力を及ぼすことがある。例えば、手に取り付けられたジャイロスコープは、手の運動を測定するときに、手に望ましくない力を及ぼすことがある。これらの望ましくない力により、手が望ましくない方法で動くことがある。
【０００８】
いくつかの現在利用可能な仮想現実システムは、例えば、ユーザの指の運動を追跡するための変位推定技法を使用し得る。しかし、これらの変位推定技法は、所望の精度未満でユーザの指の運動を追跡することがある。
【０００９】
このようにして、現在利用可能な仮想現実システムのいくつかは、身体および／または身体の一部分の運動を所望のレベルの精度でシミュレーションすることができないことがある。したがって、これらの現在利用可能な仮想現実システムは、ユーザに、ユーザが仮想環境内での所望のレベルの没入感を感じることを可能にするのに必要な目と手の協調のレベルを提供することができないことがある。
【００１０】
仮想環境内での所望のレベルの没入感を提供するために必要な目と手の協調のレベルがなければ、ユーザは、仮想環境内での特定の作業を所望通りに迅速におよび／または効率的に行うことができないことがある。したがって、上記に述べた問題の少なくともいくつか、ならびに他の考えられる問題を考慮するシステムおよび方法を有することが望ましいこととなる。
【課題を解決するための手段】
【００１１】
１つの例示的な実施形態では、仮想環境の仮想画像を生成するための方法が提供される。仮想現実管理装置は、手システムからユーザの少なくとも片手の手位置データを受信する。仮想現実管理装置は、頭部装着型システムからユーザの頭の頭位置データを受信する。仮想現実管理装置は、現在の時間に対応するターゲット画像を使用して、画像に基づいた位置データおよび現在の時間の現在の基準フレームを識別する。仮想現実管理装置は、手位置データ、頭位置データ、画像に基づいた位置データ、および現在の基準フレームを使用して、現在の時間の仮想画像制御データを生成する。仮想画像制御データは、仮想画像アプリケーションによって使用されるために構成される。
【００１２】
別の例示的な実施形態では、仮想現実システムは、頭部装着型システムと、仮想現実管理装置とを備える。頭部装着型システムは、ユーザの頭に対して着用されるように構成される。仮想現実管理装置は、頭部装着型システムに関連付けられる。仮想現実管理装置は、手システムからユーザの少なくとも片手の手位置データを受信するように構成される。仮想現実管理装置は、頭部装着型システム内のセンサシステムからユーザの頭の頭位置データを受信するように構成される。仮想現実管理装置は、現在の時間に対応するターゲット画像を使用して、画像に基づいた位置データおよび現在の時間の現在の基準フレームを識別するように構成される。仮想現実管理装置は、手位置データ、頭位置データ、画像に基づいた位置データ、および現在の基準フレームを使用して、現在の時間の仮想画像制御データを生成するように構成される。仮想画像制御データは、仮想画像アプリケーションによって使用されるために構成される。
【００１３】
さらに別の例示的な実施形態では、コンピュータは、バスと、バスに接続された非一時的記憶デバイスと、バスに接続されたプロセッサユニットとを備える。非一時的記憶デバイスは、プログラムコードを含む。プロセッサユニットは、プログラムコードを実行して、手システムからユーザの少なくとも片手の手位置データを受信し、頭部装着型システムからユーザの頭の頭位置データを受信し、現在の時間に対応するターゲット画像を使用して、画像に基づいた位置データおよび現在の時間の現在の基準フレームを識別し、手位置データ、頭位置データ、画像に基づいた位置データ、および現在の基準フレームを使用して、現在の時間の仮想画像制御データを生成するように構成される。仮想画像制御データは、仮想画像アプリケーションによって使用されるために構成される。
【００１４】
特徴および機能を本開示の様々な実施形態で独立して実現することができ、またはさらに他の実施形態で組み合わせることができ、これらの実施形態では、以下の説明および図面を参照しながら、さらなる詳細を理解することができる。
【００１５】
例示的な実施形態の、新規フィーチャと考えられる特徴は、特許請求の範囲に記載されている。しかし、例示的な実施形態、ならびにその好ましい使用の形態、さらなる目的、および特徴は、添付の図面と併せて読むときに、本開示の例示的な実施形態の以下の詳細な説明を参照することによって最も良く理解されよう。
【図面の簡単な説明】
【００１６】
【図１】例示的な実施形態による仮想現実システムをブロック図の形で例示する図である。
【図２】例示的な実施形態による手システムをブロック図の形で例示する図である。
【図３】例示的な実施形態による頭部装着型システムをブロック図の形で例示する図である。
【図４】例示的な実施形態によるデータ調整装置をブロック図の形で例示する図である。
【図５】例示的な実施形態による仮想現実システムの操作のモードをブロック図の形で例示する図である。
【図６】例示的な実施形態による仮想現実システムを使用するユーザを例示する図である。
【図７】例示的な実施形態による仮想エンジニアリング環境と対話するためのプロセスをフローチャートの形で例示する図である。
【図８】例示的な実施形態による仮想エンジニアリング環境と対話するためのプロセスをフローチャートの形で例示する図である。
【図９】例示的な実施形態によるデータ処理システムを例示する図である。
【発明を実施するための形態】
【００１７】
異なる例示的な実施形態は、異なる検討事項を認識し、考慮する。例えば、異なる例示的な実施形態は、仮想環境が異なるタイプのエンジニアリング作業を行うのに有用であり得ることを認識し、考慮する。
【００１８】
これらのエンジニアリング作業は、例えば、限定することなく、車両を設計すること、製品設計のデータを管理すること、航空機で使用するための構造を試験すること、アンテナシステムの構成の動作を試験すること、システムを検査すること、構造の整備を行うこと、車両の動作を制御すること、製造施設における製造機器を制御すること、宇宙空間における構造を制御すること、および他の適切なタイプのエンジニアリング作業を含み得る。他のタイプのエンジニアリング作業は、例えば、限定することなく、コンピュータプログラムと対話すること、アクセスできない環境に配置された電気機械デバイスを操作すること、過酷な天候条件および／または温度条件下でモバイルプラットフォームを操作すること、ならびにさらに他の適切なタイプのエンジニアリング作業を含み得る。
【００１９】
１つの実施例として、選択された試験条件を有する試験環境をシミュレーションする仮想環境は、これらの選択された条件下で車両の構成要素の特定の構成の動作を試験するために使用され得る。この実施例では、その構成要素の特定の構成のモデルが仮想環境に導入される。
【００２０】
仮想環境におけるモデルを使用して構成要素の特定の構成の動作を試験することは、現実の試験環境において現実の構成要素を試験するよりも安価であり、時間がかからず、および／または効率的であり得る。さらに、構成要素のこのタイプの仮想試験は、構成要素の物理的な試験に比べて、必要となるリソースおよび／または人員が少なくて済むことがある。
【００２１】
しかし、異なる例示的な実施形態は、仮想現実システムが所望のレベルの目と手の協調を提供しない場合、ユーザが仮想現実システムによって作成された仮想環境を使用して、特定のタイプのエンジニアリング作業を行うことができないことがあることを認識し、考慮する。本明細書で使用される場合、「目と手の協調」は目の運動および手の運動の協調制御である。目と手の協調は、手の運動を誘導するために視覚入力を使用することおよび目の運動を誘導するために手の固有受容を使用することである。
【００２２】
特定のタイプのエンジニアリング作業は、他のタイプのエンジニアリング作業よりも高いレベルの目と手の協調を必要とし得る。１つの実施例として、異なるタイプの制御機器、スイッチ、ボタン、およびユーザインターフェースを備える仮想航空機を操作することは、仮想環境においてドアを押し開けることよりも高いレベルの目と手の協調を必要とし得る。
【００２３】
異なる例示的な実施形態は、所望のレベルの目と手の協調を提供することが、所望のレベルの精度で、仮想環境の基準フレームに対するユーザの手およびユーザの頭の位置を識別することを必要とし得ることを認識し、考慮する。加えて、異なる例示的な実施形態は、所望のレベルの目と手の協調を提供することが、所望のレベルの精度で、実質的にリアルタイムで仮想環境内のユーザの手および指の運動をシミュレーションすることを必要とし得ることを認識し、考慮する。本明細書で使用される場合、「実質的にリアルタイムで」とは、ユーザが知覚可能な時間遅延がないことを意味する。
【００２４】
したがって、異なる例示的な実施形態は、ユーザが仮想環境と対話するときにユーザの目と手の協調のレベルを高めるための方法およびシステムを提供する。特に、異なる例示的な実施形態は、ユーザの手位置データおよび頭位置データを調整し、時間に対してこのデータを同期させて、仮想環境内での所望のレベルの目と手の協調をユーザに提供するように構成された仮想現実システムを提供する。
【００２５】
次に図１を参照すると、例示的な実施形態による仮想現実システムの例示がブロック図の形で示されている。これらの実施例では、仮想現実システム１００は、仮想環境１０２をユーザ１０４に視覚的に提示するように構成される。さらに、ユーザ１０４は、仮想現実システム１００を使用して仮想環境１０２と対話し得る。
【００２６】
これらの実施例では、仮想環境１０２は、環境１０１のシミュレーションである。環境１０１は、現実の環境または想像上の環境であってもよい。例えば、環境１０１は、物理的な環境または抽象的な環境であってもよい。
【００２７】
１つの実施例では、環境１０１は、エンジニアリング環境１０３の形を取る。エンジニアリング環境１０３は、例えば、限定することなく、設計環境、製造環境、コンピュータ環境、試験環境、データ管理環境、検査環境、操作環境、または何らかの他の適切なタイプのエンジニアリング環境のうちの１つから選択され得る。
【００２８】
仮想環境１０２がエンジニアリング環境１０３のシミュレーションであるとき、ユーザ１０４は、仮想現実システム１００を使用して、１つまたは複数のエンジニアリング作業を行うために仮想環境１０２と対話し得る。例えば、ユーザ１０４は、仮想現実システム１００を使用して、仮想環境１０２内で航空機または航空機の部品などの物体を設計し得る。
【００２９】
別の実施例では、ユーザ１０４は、仮想現実システム１００を使用して、航空管制に関連する作業を行い得る。例えば、仮想環境１０２は、領空の領域のシミュレーションであってもよい。ユーザ１０４は、仮想現実システム１００を使用して、仮想環境１０２における航空機のモデルを使用した、領空のこの領域における航空機の操作および／または航空機との情報交換を制御し得る。
【００３０】
さらに、さらに別の実施例では、仮想環境１０２は、コンピュータプログラムのユーザインターフェースのシミュレーションであってもよい。ユーザ１０４は、仮想現実システム１００を使用して、コンピュータプログラムと対話するための仮想ユーザインターフェースと対話し得る。例えば、コンピュータプログラムは、データベース管理プログラムであってもよい。ユーザ１０４は、仮想現実システム１００を使用して、このデータ管理アプリケーションの仮想ユーザインターフェースと対話し得る。
【００３１】
図示したように、仮想現実システム１００は、仮想現実管理装置１０６と、頭部装着型システム１０８と、任意の数の周辺システム１１０とを備える。これらの実施例では、仮想現実管理装置１０６は、ハードウェア、ソフトウェア、またはこれら２つの組合せを使用して実施され得る。例えば、仮想現実管理装置１０６は、データ処理システム１０５で実施され得る。
【００３２】
これらの実施例では、データ処理システム１０５は、頭部装着型システム１０８に関連付けられる。１つの構成要素が別の構成要素に「関連付けられる」とき、この関連付けは、これらの例では物理的な関連付けである。
【００３３】
例えば、データ処理システム１０５などの第１の構成要素は、第２の構成要素に固定されること、第２の構成要素に結合されること、第２の構成要素に取り付けられること、第２の構成要素に溶接されること、第２の構成要素にしっかり留められること、第２の構成要素に電気的に接続されること、および／または何らかの他の適切な方法で第２の構成要素に接続されることによって、頭部装着型システム１０８などの第２の構成要素に関連付けられるとみなされ得る。また、第１の構成要素は、第３の構成要素を使用して第２の構成要素に接続され得る。また、第１の構成要素は、第２の構成要素の一部としてかつ／または第２の構成要素の延長部として形成されることによって、第２の構成要素に関連付けられるとみなされ得る。
【００３４】
これらの実施例では、データ処理システム１０５は、頭部装着型システム１０８の一部とみなされる。もちろん、他の実施例では、仮想現実管理装置１０６は、頭部装着型システム１０８から切り離されているが、頭部装着型システム１０８とワイヤレスで通信するように構成されたプロセッサユニットで実施され得る。
【００３５】
頭部装着型システム１０８は、ユーザ１０４の頭１１２に対して着用されるように構成される。例えば、頭部装着型システム１０８は、ユーザ１０４の頭１１２の上方および／またはユーザ１０４の頭１１２の上で着用され得る。頭部装着型システム１０８は、任意の数の異なる形をとり得る。例えば、頭部装着型システム１０８は、ヘルメット、バイザー、帽子、眼鏡、ゴーグル、またはユーザ１０４の頭１１２の上方および／またはユーザ１０４の頭１１２の上で着用されるように構成された何らかの他の適切なタイプのデバイスの形をとり得る。１つの実施例では、頭部装着型システム１０８は、眼鏡１１４の形を取る。
【００３６】
任意の数の異なる構成要素が頭部装着型システム１０８に関連付けられ得る。例えば、ディスプレイデバイス１１６およびセンサシステム１１８が頭部装着型システム１０８に関連付けられ得る。頭部装着型システム１０８が眼鏡１１４の形を取るとき、ディスプレイデバイス１１６およびセンサシステム１１８は、眼鏡１１４に取り付けられ、眼鏡１１４の一部になり、かつ／またはさもなければ眼鏡１１４に関連付けられ得る。
【００３７】
仮想現実管理装置１０６は、ディスプレイデバイス１１６上で仮想環境１０２をユーザ１０４に視覚的に提示するように構成される。１つの実施例では、ディスプレイデバイス１１６は、眼鏡１１４におけるレンズであってもよい。仮想現実管理装置１０６は、ユーザ１０４が眼鏡１１４をかけているときに、仮想環境１０２がユーザ１０４の目の前で視覚的に提示されるように、これらのレンズ上で仮想環境１０２を視覚的に提示し得る。このようにして、ユーザ１０４は仮想環境１０２に存在していると感じ得る。
【００３８】
もちろん、他の実施例では、ディスプレイデバイス１１６は、何らかの他の形をとり得る。例えば、ディスプレイデバイス１１６は、ユーザ１０４が着用するように構成された１つまたは２つのコンタクトレンズを備え得る。
【００３９】
センサシステム１１８は、１つまたは複数のセンサを含み得る。センサシステム１１８におけるセンサは、例えば、限定することなく、任意の数の微小電気機械センサ（ＭＥＭＳ）、ナノ電気機械センサ（ＮＥＭＳ）、動作センサ、角度センサ、速度センサ、加速センサ、位置センサ、カメラ、ビデオカメラ、画像センサ、および／または他の適切なタイプのセンサを含み得る。頭部装着型システム１０８は、センサシステム１１８を使用して頭位置データ１２０を生成するように構成される。
【００４０】
これらの実施例では、仮想現実システム１００内の任意の数の周辺システム１１０におけるそれぞれの周辺システムは、データを生成し、データを仮想現実管理装置１０６に送るように構成され得る。本明細書で使用される場合、任意の数の周辺システム１１０のうちの１つなどの「周辺システム」は、頭部装着型システム１０８と通信するように構成されるが、頭部装着型システム１０８の一部とはみなされないシステムである。さらに、本明細書で使用される場合、「任意の数の（ｎｕｍｂｅｒ  ｏｆ）」品目とは、１つまたは複数の品目を意味する。例えば、任意の数の周辺システム１１０は、１つまたは複数の周辺システムであってもよい。
【００４１】
これらの実施例では、任意の数の周辺システム１１０におけるそれぞれの周辺システムは、ユーザ１０４の特定の身体部分についてのデータを生成するように構成され得る。例えば、任意の数の周辺システム１１０における周辺システムは、ユーザ１０４の手、足、腕、脚、胴、指、足指、または別の身体部分についてのデータを生成するように構成され得る。
【００４２】
１つの実施例では、任意の数の周辺システム１１０は、手システム１３１を含む。手システム１３１は、手位置データ１３３を生成するように構成される。手位置データ１３３は、任意の数の周辺システム１１０によって生成された周辺位置データ１３２の少なくとも一部分を形成し得る。本明細書で使用される場合、「少なくとも一部分」とは、一部またはすべてを意味する。周辺位置データ１３２は、ユーザ１０４の任意の数の身体部分の位置についてのデータを経時的に含み得る。
【００４３】
手位置データ１３３は、ユーザ１０４の左手１２４および右手１２６のうちの少なくとも１つについてのデータを含み得る。例えば、手システム１３１は、左手システム１２１および右手システム１２２のうちの少なくとも１つを備え得る。左手システム１２１は、ユーザ１０４の左手１２４についてのデータを生成し得るが、右手システム１２２は、ユーザ１０４の右手１２６についてのデータを生成し得る。
【００４４】
これらの実施例では、左手システム１２１は、ユーザ１０４の左手１２４とともに使用するように構成された左手袋１２８の形をとり得るが、右手システム１２２は、ユーザ１０４の右手１２６とともに使用するように構成された右手袋１３０の形をとり得る。左手袋１２８および右手袋１３０は、それぞれ左手１２４および右手１２６の位置についてのデータを経時的に生成するように構成された手袋であってもよい。
【００４５】
特に、ユーザ１０４がそれぞれ左手袋１２８および右手袋１３０を着用しているとき、左手袋１２８は左手１２４の左手位置データ１３４を生成し、右手袋１３０は右手１２６の右手位置データ１３６を生成する。左手位置データ１３４および右手位置データ１３６は、それぞれ左手１２４および右手１２６の位置についてのデータを経時的に、ならびにこれらの手に対応する手首および指の位置についてのデータを経時的に含み得る。
【００４６】
仮想現実管理装置１０６は、任意の数の周辺システム１１０から周辺位置データ１３２および頭部装着型システム１０８内のセンサシステム１１８から頭位置データ１２０を受信するように構成される。特に、仮想現実管理装置１０６は、実質的にリアルタイムで手位置データ１３３および頭位置データ１２０を受信する。言い換えれば、仮想現実管理装置１０６は、位置データが生成されると、知覚可能な遅延なしで位置データを受信する。
【００４７】
これらの実施例では、仮想現実管理装置１０６は、手位置データ１３３および頭位置データ１２０を使用して、仮想画像制御データ１３５を生成し得る。仮想画像制御データ１３５は、仮想環境１０２の仮想画像を制御するための、仮想画像アプリケーション１３７によって使用されるために構成されたデータであってもよい。
【００４８】
例えば、仮想画像アプリケーション１３７は、仮想環境１０２の仮想画像を作成するように構成されたコンピュータソフトウェアである。本明細書で使用される場合、仮想環境１０２などの仮想環境の「仮想画像」は、仮想環境の少なくとも一部分の画像である。場合によっては、仮想画像アプリケーション１３７は、仮想環境１０２を作成するように構成され得る。他の場合では、仮想画像アプリケーション１３７は、別のアプリケーションによって作成された仮想環境１０２を使用するように構成され得る。
【００４９】
仮想現実管理装置１０６は、例えば、限定することなく、クラウド１３９を使用して、仮想画像アプリケーション１３７と通信するように構成され得る。クラウド１３９は、互いに接続されたアプリケーション、コンピュータプログラム、デバイス、サーバ、クライアントコンピュータ、および／または他のコンピューティング構成要素からなるネットワークであってもよい。仮想現実管理装置１０６は、クラウド１３９にアクセスし、そのことにより、例えば、限定することなく、インターネットを使用して仮想画像アプリケーション１３７にアクセスするように構成され得る。
【００５０】
これらの実施例では、仮想画像アプリケーション１３７は、仮想環境１０２の仮想画像のシーケンス１３８を生成するように構成される。本明細書で使用される場合、仮想画像のシーケンス１３８などの「画像のシーケンス」は、時間に関して並べられた１つまたは複数の画像である。このようにして、仮想画像のシーケンス１３８におけるそれぞれの仮想画像は、特定の時間に対応する。いくつかの実施例では、仮想画像のシーケンス１３８は、仮想フレームのシーケンスとも呼ばれ得る。
【００５１】
仮想画像アプリケーション１３７は、仮想現実管理装置１０６によって生成された仮想画像制御データ１３５を使用して、仮想画像のシーケンス１３８におけるそれぞれの仮想画像を生成する。例えば、仮想画像アプリケーション１３７は、仮想画像制御データ１３５を使用して、仮想環境１０２の以前に生成された仮想画像を更新し得る。この更新された仮想画像は、仮想現実管理装置１０６に送り返され得る。次いで、仮想現実管理装置１０６は、ディスプレイデバイス１１６上でこの更新された仮想画像を表示し得る。
【００５２】
このようにして、仮想現実管理装置１０６は、仮想画像が仮想画像アプリケーション１３７から受信されると、ディスプレイデバイス１１６上で、仮想画像アプリケーション１３７によって生成された仮想画像のシーケンス１３８における仮想画像を表示し得る。仮想現実管理装置１０６は、ディスプレイデバイス１１６上で仮想画像のシーケンス１３８を表示して、ディスプレイデバイス１１６上で仮想環境１０２をユーザ１０４に視覚的に提示する。
【００５３】
仮想画像１４０は、仮想画像のシーケンス１３８における仮想画像の例である。仮想画像１４０は、実装形態に応じて２次元画像または３次元画像であってもよい。仮想画像１４０は、時間１４１に対応する。仮想画像１４０は、時間１４１内で生成された手位置データ１３３の一部分および頭位置データ１２０の一部分を使用して生成される。時間１４１は、例えば、ある瞬間（ａｎ  ｉｎｓｔａｎｔ  ｉｎ  ｔｉｍｅ）またはある期間（ａ  ｐｅｒｉｏｄ  ｏｆ  ｔｉｍｅ）であってもよい。
【００５４】
特に、時間１４１内で生成された手位置データ１３３の一部分および頭位置データ１２０の一部分を使用して、時間１４１に対応する仮想画像制御データ１３５を形成する。時間１４１に対応する仮想画像制御データ１３５は、仮想画像１４０を形成するために仮想画像アプリケーション１３７によって使用され得る。
【００５５】
さらに、仮想現実管理装置１０６は、センサシステム１１８によって生成された頭位置データ１２０および／または他のデータを使用して、仮想画像１４０の基準フレーム１４６を識別し得る。基準フレーム１４６は、仮想環境１０２に対する仮想画像１４０の座標系である。特に、基準フレーム１４６は、仮想画像１４０内で捕捉された仮想環境１０２の一部分である。基準フレーム１４６は、ユーザ１０４の頭１１２の位置に基づいて識別される。言い換えれば、基準フレーム１４６は、ユーザ１０４の頭１１２が指している方向に基づいて識別される。
【００５６】
これらの実施例では、仮想現実管理装置１０６は、基準フレーム１４６を使用して、手位置データ１３３および頭位置データ１２０を調整することによって、仮想画像制御データ１３５を生成するように構成される。仮想現実管理装置１０６は、時間に対して手位置データ１３３および頭位置データ１２０を同期させることによって、手位置データ１３３および頭位置データ１２０を調整し得る。このタイプの同期は、ユーザ１０４にもたらされる目と手の協調のレベルを高め得る。
【００５７】
例えば、時間１４１に対する手位置データ１３３および頭位置データ１２０の同期は、所望のレベルの精度を有する仮想画像制御データ１３５をもたらし得る。仮想画像制御データ１３５が所望のレベルの精度を有するとき、仮想画像アプリケーション１３７によって生成された仮想環境１０２の仮想画像のシーケンス１３８は、仮想環境１０２内のユーザ１０４の運動および存在の実質的にリアルタイムのシミュレーションを表し得る。
【００５８】
さらに、仮想現実管理装置１０６は、実質的にリアルタイムで仮想画像のシーケンス１３８を表示するように構成され得る。仮想環境１０２において、実質的にリアルタイムで仮想環境１０２内のユーザ１０４の運動およびユーザ１０４の存在をシミュレーションすることを可能にすることによって、仮想現実管理装置１０６は、ユーザ１０４が仮想環境１０２内で所望のレベルの精度、速度、および効率で１つまたは複数の作業を行うことを可能にし得る。
【００５９】
これらの実施例では、仮想画像１４０は、仮想左手１４２および仮想右手１４４のうちの少なくとも１つを含む。仮想左手１４２は、仮想画像１４０におけるユーザ１０４の左手１２４を表す画像であってもよい。仮想右手１４４は、仮想画像１４０におけるユーザ１０４の右手１２６を表す画像であってもよい。仮想画像アプリケーション１３７は、仮想画像制御データ１３５を使用して、仮想画像１４０内の仮想左手１４２および仮想右手１４４の位置を決定し得る。
【００６０】
加えて、これらの実施例では、仮想画像制御データ１３５はまた、ユーザデータ１４５を使用して生成され得る。ユーザデータ１４５は、ユーザ１０４についてのデータを含み得る。特に、ユーザデータ１４５は、ユーザ１０４の１つまたは複数の身体部分の形状についてのデータを含み得る。
【００６１】
例えば、ユーザデータ１４５は、ユーザ１０４の左手１２４、右手１２６、および頭１１２のうちの少なくとも１つについてのデータを含み得る。左手１２４または右手１２６などのユーザ１０４の手についてのデータは、例えば、限定することなく、手の寸法の測定値、手に対応する手首の測定値、手の指の測定値、手の１つまたは複数の指の動きの範囲の測定値、静止時および／もしくは動作時の手の各指の間の距離の測定値、ならびに／または他の適切なタイプのデータを含み得る。
【００６２】
ユーザデータ１４５は、イメージングシステム１５２によって生成されたユーザ画像の組１５０を使用して識別され得る。本明細書で使用される場合、項目「の組（ｓｅｔ  ｏｆ）」とは、１つまたは複数の項目を意味する。例えば、ユーザ画像の組１５０とは、１つまたは複数のユーザ画像を意味する。
【００６３】
イメージングシステム１５２は、これらの実施例では、仮想現実システム１００の一部ではない。１つの実施例では、イメージングシステム１５２は、３次元レーザースキャンシステムであってもよい。この実施例では、ユーザ画像の組１５０は、ユーザ１０４の左手１２４および右手１２６の形状を捕捉する、ユーザ１０４の３次元レーザースキャンの組である。さらに、３次元レーザースキャンのこの組はまた、ユーザ１０４の手首および指の形状を捕捉し得る。
【００６４】
１つの実施例では、仮想現実管理装置１０６は、ユーザ画像の組１５０を受信し、ユーザ画像の組１５０を使用してユーザデータ１４５を識別するように構成され得る。別の実施例では、ユーザデータ１４５は、仮想現実管理装置１０６に直接アップロードされ得る。さらに別の実施例では、ユーザデータ１４５は、ユーザ画像の組１５０であってもよい。
【００６５】
仮想画像１４０がディスプレイデバイス１１６上でユーザ１０４に表示されるとき、ユーザ１０４は仮想左手１４２および仮想右手１４４を見る。特に、ユーザ１０４は、それぞれ左手１２４および右手１２６の現実の位置に対応する位置で、仮想画像１４０における仮想左手１４２および仮想右手１４４を見る。このようにして、ユーザ１０４は、仮想環境１０２に存在していると感じ得る。
【００６６】
いくつかの実施例では、任意の数の周辺システム１１０および／または頭部装着型システム１０８内のセンサシステム１１８は、位置データに加えて、追加データ１５４を生成し得る。追加データ１５４を使用して、仮想画像制御データ１３５を生成することができる。例えば、追加データ１５４を使用して、仮想環境１０２における１つまたは複数の対話型制御を制御するための、仮想画像アプリケーション１３７によって使用され得るデータを生成することができる。
【００６７】
１つの実施例では、追加データ１５４は、左手１２４および右手１２６の指の圧力データを含み得る。他の実施例では、追加データ１５４は、画像データを含み得る。もちろん、さらに他の実施例では、追加データ１５４は、他のタイプのセンサデータを含み得る。
【００６８】
いくつかの実施例では、仮想現実管理装置１０６はまた、クラウド１３９を使用して仮想現実システムのグループ１５６と通信するように構成され得る。仮想現実システムのグループ１５６におけるそれぞれの仮想現実システムは、仮想現実管理装置１０６と同様の方法で実施され得る仮想現実管理装置を備え得る。クラウド１３９は、異なる仮想現実管理装置が仮想画像アプリケーション１３７と同時に対話することを可能にし得る。場合によっては、クラウド１３９は、異なるユーザが仮想環境１０２内で互いに対話することを可能にし得る。
【００６９】
次に図２を参照すると、例示的な実施形態による左手システムの例示がブロック図の形で示されている。図２では、図１からの左手システム１２１の１つの実装形態の例が示されている。また、左手システム１２１について示された構成を使用して、図１における右手システム１２２を実施することができる。
【００７０】
図示したように、左手システム１２１は左手袋１２８の形を取る。左手袋１２８は、図１におけるユーザ１０４の左手１２４と実質的に一致するように構成される。１つの実施例として、左手袋１２８は、例えば、図１におけるユーザ画像の組１５０などのユーザ画像の組および／または図１におけるユーザデータ１４５などのユーザデータに基づいて作製され得る。ユーザ画像の組１５０を使用して、ユーザ１０４の左手１２４に実質的に一致する手袋を作製することができる。例えば、左手袋１２８は、ユーザ１０４の左手１２４に実質的に一致するように構成された材料を使用して作製され得る。さらに、左手１２４の形状に実質的に合致する寸法を有する左手袋１２８が作製され得る。
【００７１】
この実施例では、左手袋１２８は、センサシステム２０２と、データ管理装置２０４と、通信ユニット２０６とを備える。センサシステム２０２は、微小電気機械センサ、ナノ電気機械センサ、動作センサ、角度センサ、位置センサ、速度センサ、加速センサ、カメラ、ビデオカメラ、画像センサ、圧力センサ、触覚センサ、および／または他の適切なタイプのセンサを備える群から選択された、任意の数のセンサを備える。
【００７２】
センサシステム２０２は、いくつかの実施例では、左手袋１２８を作製するために使用される材料に一体化され得る。例えば、センサシステム２０２における１つまたは複数のセンサは、これらのセンサがユーザ１０４の目に見えなくなり得る方法で、左手袋１２８を作製するために使用される材料に一体化され得る。左手袋１２８に対するセンサシステム２０２におけるそれぞれのセンサの位置は、例えば、限定することなく、図１におけるユーザ画像の組１５０および／またはユーザデータ１４５を使用して決定され得る。
【００７３】
図示したように、センサシステム２０２は、ユーザ１０４の左手１２４の生の手位置データ２１０を生成するように構成される。生の手位置データ２１０は、例えば、限定することなく、動的システム状態変数（ＤＳＳＶ：ｄｙｎａｍｉｃ  ｓｙｓｔｅｍ  ｓｔａｔｅ  ｖａｒｉａｂｌｅ）の組を備え得る。
【００７４】
いくつかの実施例では、センサシステム２０２は、ユーザ画像の組１５０および／またはユーザデータ１４５を使用して較正され得る。１つの実施例として、これらの画像を使用して、センサシステム２０２によって生成された生の手位置データ２１０に制約を課すことができる。
【００７５】
データ管理装置２０４は、ハードウェア、ソフトウェア、またはこれら２つの組合せを備え得る。例えば、データ管理装置２０４は、データ処理システム２０５内で実施され得る。いくつかの実施例では、データ処理システム２０５は、センサシステム２０２内で実施され得る。他の実施例では、データ処理システム２０５は、センサシステム２０２から切り離された左手袋１２８内で実施され得る。
【００７６】
さらに他の実施例では、データ処理システム２０５は、何らかの他の適切な方法で左手袋１２８に関連付けられ得る。例えば、限定することなく、データ処理システム２０５は、左手袋１２８に関連付けられた腕時計タイプのデバイスであってもよい。
【００７７】
データ管理装置２０４は、生の手位置データ２１０を修正して、左手位置データ１３４を形成するように構成される。データ管理装置２０４は、フィルタの組２１２を使用して生の手位置データ２１０を修正し得る。フィルタの組２１２は、例えば、限定することなく、任意の数の動作平滑化フィルタ、ジッタフィルタ、カルマンフィルタ、および／または他の適切なタイプのフィルタを含み得る。さらに、データ管理装置２０４はまた、図１におけるユーザ画像の組１５０に基づくユーザ１０４の左手１２４の運動について識別された制約に基づいて、生の手位置データ２１０を修正し得る。
【００７８】
このようにして、生の手位置データ２１０が生成されている間に、左手位置データ１３４は、センサシステム２０２における１つまたは複数のセンサの望ましくない運動を補償し得る。この望ましくない運動は、例えば、ぶれ（ｓｈａｋｉｎｇ）、振動（ｖｉｂｒａｔｉｏｎｓ）、ジッタ、および／または他の適切なタイプの望ましくない運動を含み得る。
【００７９】
場合によっては、左手位置データ１３４はまた、ユーザ１０４の左手１２４の不正確なしぐさおよび望ましくない運動を補償し得る。例えば、左手位置データ１３４は、左手１２４の望ましくないぎくしゃくした（ｊｅｒｋｉｎｇ）タイプの動作に応答した、左手１２４の動作における望ましくないスパイクを補償し得る。これらの実施例では、生の手位置データ２１０を修正して、左手位置データ１３４を形成することは、生の手位置データ２１０を安定化することと呼ばれ得る。
【００８０】
データ管理装置２０４は、通信ユニット２０６を使用して、左手位置データ１３４を図１における仮想現実管理装置１０６に送る。通信ユニット２０６を使用して、左手袋１２８と他の周辺システムおよび／または頭部装着型システム１０８との間の１つまたは複数のワイヤレス通信リンクを形成する。１つの実施例として、通信ユニット２０６は、頭部装着型システム１０８とのワイヤレス通信リンク２１４を形成する。通信ユニット２０６は、例えば、限定することなく、無線周波数（ＲＦ）信号を使用して、ワイヤレス通信リンク２１４を介して、左手位置データ１３４を図１における頭部装着型システム１０８に送信し得る。
【００８１】
いくつかの実施例では、データ管理装置２０４はまた、センサシステム２０２を構成するために使用され得る。他の実施例では、データ管理装置２０４は、生の手位置データ２１０を修正して、センサシステム２０２に関する取付けの問題を電子的に補償するように構成され得る。
【００８２】
次に図３を見ると、例示的な実施形態による頭部装着型システムの例示がブロック図の形で示されている。図３では、図１からの頭部装着型システム１０８の１つの実装形態の例が示されている。
【００８３】
この実施例では、頭部装着型システム１０８は眼鏡１１４の形を取る。図示したように、仮想現実管理装置１０６、ディスプレイデバイス１１６、センサシステム１１８、データ管理装置３０２、および通信ユニット３００は、眼鏡１１４に関連付けられる。特に、仮想現実管理装置１０６、ディスプレイデバイス１１６、センサシステム１１８、データ管理装置３０２、および通信ユニット３００は、この例では、眼鏡１１４の一部である。
【００８４】
通信ユニット３００は、任意の数のワイヤレス通信リンクを形成して、頭部装着型システム１０８と、例えば、図１における任意の数の周辺システム１１０などの任意の数の他のシステムとの間の通信を可能にするように構成される。例えば、頭部装着型システム１０８は、通信ユニット３００を使用して、図１における任意の数の周辺システム１１０から周辺位置データ１３２を受信し得る。
【００８５】
特に、仮想現実管理装置１０６は、通信ユニット３００を使用して、図１における左手システム１２１から左手位置データ１３４を、図１における右手システム１２２から右手位置データ１３６を、それぞれ受信する。例えば、通信ユニット３００は、通信ユニット３００と図２における左手袋１２８の通信ユニット２０６との間で確立されたワイヤレス通信リンク２１４を使用して、左手袋１２８から左手位置データ１３４を受信し得る。
【００８６】
図示したように、センサシステム１１８は、生の頭位置データ３０４を生成するように構成される。生の頭位置データ３０４は、例えば、限定することなく、動的システム状態変数（ＤＳＳＶ）の組を備え得る。いくつかの実施例では、センサシステム１１８は、図１におけるユーザ画像の組１５０を使用して較正され得る。
【００８７】
これらの実施例では、データ管理装置３０２は、ハードウェア、ソフトウェア、またはこれら２つの組合せを使用して実施され得る。１つの実施例では、データ管理装置３０２は、データ処理システム３０５内で実施され得る。場合によっては、データ処理システム３０５は、図１におけるデータ処理システム１０５に関連付けられ得る。他の場合では、データ処理システム３０５は、センサシステム１１８に関連付けられ得る。いくつかの実施例では、データ管理装置３０２は、データ処理システム３０５の代わりに、図１におけるデータ処理システム１０５内で実施され得る。
【００８８】
データ管理装置３０２は、生の頭位置データ３０４を修正して、図１における頭位置データ１２０を形成するように構成される。データ管理装置３０２は、フィルタの組３０８を使用して、生の頭位置データ３０４を修正し得る。フィルタの組３０８は、例えば、限定することなく、任意の数の動作平滑化フィルタ、ジッタフィルタ、カルマンフィルタ、および／または他の適切なタイプのフィルタを含み得る。さらに、データ管理装置３０２はまた、図１におけるユーザ画像の組１５０を使用して、ユーザ１０４の頭１１２の運動について識別された制約に基づいて、生の頭位置データ３０４を修正し得る。
【００８９】
このようにして、生の頭位置データ３０４が生成されている間に、頭位置データ１２０を使用して、センサシステム１１８における１つまたは複数のセンサの望ましくない運動を補償することができる。この望ましくない運動は、例えば、ぶれ、振動、ジッタ、および／または他の適切なタイプの望ましくない運動を含み得る。
【００９０】
さらに、場合によっては、頭位置データ１２０はまた、ユーザ１０４の頭１１２の望ましくない運動を補償するために使用され得る。例えば、頭位置データ１２０は、頭１１２の望ましくないぎくしゃくしたタイプの動作に応答した、頭１１２の動作における望ましくないスパイクを補償し得る。これらの実施例では、生の頭位置データ３０４を修正して、頭位置データ１２０を形成することは、生の頭位置データ３０４を安定化することと呼ばれ得る。データ管理装置３０２は、頭位置データ１２０を仮想現実管理装置１０６に送る。
【００９１】
いくつかの実施例では、データ管理装置３０２はまた、センサシステム１１８を較正するために使用され得る。他の実施例では、データ管理装置３０２は、生の頭位置データ３０４を修正して、センサシステム１１８に関する取付けの問題を電子的に補償するように構成され得る。
【００９２】
加えて、センサシステム１１８は、この実施例では、イメージングシステム３２２を含む。イメージングシステム３２２は、ユーザ１０４の頭１１２が向けられた方向と実質的に同じ方向を向くように構成された１つまたは複数のカメラを備える。イメージングシステム３２２は、任意の数の周辺システム１１０上の任意の数の視覚ターゲットを捕捉するのに十分幅広く、十分深い視界を有するように構成される。これらの視覚ターゲットは、例えば、視覚マーカー、ラベル、ボタン、輪郭、形、および／または他の適切なタイプの視覚ターゲットを含み得る。
【００９３】
１つの実施例として、任意の数の視覚マーカーは、図１における左手袋１２８および右手袋１３０のそれぞれの上に存在し得る。イメージングシステム３２２は、イメージングシステム３２２によって生成されたターゲット画像におけるこれらの視覚マーカーを捕捉するのに十分幅広く、十分深い視界を有するように構成される。
【００９４】
この実施例では、ターゲット画像３２４は、ターゲット画像のシーケンス３２０のうちの１つの例である。ターゲット画像３２４は、現在の時間３１４でイメージングシステム３２２によって生成される。仮想現実管理装置１０６内の画像プロセッサ３２６は、ターゲット画像３２４を使用して、画像に基づいた位置データ３２８を生成するように構成される。画像に基づいた位置データ３２８は、現在の時間３１４でのターゲット画像３２４内の左手袋１２８および右手袋１３０の位置を識別する。これらの位置は、左手袋１２８および右手袋１３０上の視覚ターゲットを使用して識別される。
【００９５】
さらに、画像プロセッサ３２６はまた、ターゲット画像３２４を使用して、現在の仮想画像３１０に対する現在の基準フレーム３３０を識別するように構成される。現在の基準フレーム３３０は、例えば、ターゲット画像３２４に対応する仮想環境１０２の一部分であってもよい。例えば、第２のターゲット画像において捕捉されたエリアの左側のエリアを捕捉する第１のターゲット画像は、第２のターゲット画像に対応する仮想環境１０２の一部分の左側にある仮想環境１０２の一部分に対応する。
【００９６】
画像プロセッサ３２６は、現在の基準フレーム３３０および画像に基づいた位置データ３２８をデータ調整装置３３６に送るように構成される。データ調整装置３３６は、現在の基準フレーム３３０、画像に基づいた位置データ３２８、頭位置データ１２０、左手位置データ１３４、および右手位置データ１３６を使用して、現在の時間３１４の仮想画像制御データ１３５を生成する。特に、データ調整装置３３６は、現在の時間３１４で生成された頭位置データ１２０、左手位置データ１３４、および右手位置データ１３６を使用して、現在の時間３１４の仮想画像制御データ１３５を形成する。
【００９７】
仮想画像制御データ１３５は、例えば、仮想環境１０２の仮想画像内での仮想左手および仮想右手の位置を制御するために使用され得る、例えば、現在の基準フレーム３３０に対する図１における左手袋１２８および右手袋１３０の位置を含み得る。実施例では、データ調整装置３３６は、処理のために仮想画像制御データ１３５を仮想画像アプリケーション１３７に送る。
【００９８】
仮想画像アプリケーション１３７は、画像生成装置３３８を含み得る。画像生成装置３３８は、仮想画像制御データ１３５を使用して、現在の時間３１４の仮想環境１０２の現在の仮想画像３１０を形成する。現在の仮想画像３１０は、現在の基準フレーム３３０に基づく。現在の仮想画像３１０は、ディスプレイデバイス１１６上で表示するために形成される仮想画像であってもよい。言い換えれば、現在の仮想画像３１０は、この例では、まだディスプレイデバイス１１６上で表示されていない。
【００９９】
この例では、現在の仮想画像３１０は、現在ディスプレイデバイス１１６上で表示されている、以前の仮想画像３１２の更新されたバージョンであってもよい。以前の仮想画像３１２は、以前の時間３３２に仮想画像アプリケーション１３７によって生成されたものであってもよい。現在の仮想画像３１０を形成するために使用される現在の基準フレーム３３０は、以前の仮想画像３１２を生成するために使用された以前の基準フレーム３３４と同じであってもよく、または以前の基準フレーム３３４とは異なっていてもよい。
【０１００】
図示したように、現在の仮想画像３１０は、現在の仮想左手３１６および現在の仮想右手３１８を含む。現在の仮想左手３１６および現在の仮想右手３１８の位置は、仮想画像制御データ１３５における左手袋１２８および右手袋１３０について識別された位置に基づいてもよい。
【０１０１】
現在の仮想画像３１０が画像生成装置３３８によって生成されると、仮想画像アプリケーション１３７は、現在の仮想画像３１０をデータ調整装置３３６に送る。データ調整装置３３６は、以前の仮想画像３１２の代わりに現在の仮想画像３１０がディスプレイデバイス１１６上で表示され得るように、現在の仮想画像３１０をディスプレイデバイス１１６に送る。
【０１０２】
このようにして、仮想現実管理装置１０６および仮想画像アプリケーション１３７は、互いに通信して、特定の期間にわたる複数の時間の図１における仮想画像のシーケンス１３８を形成し得る。仮想画像のシーケンス１３８における仮想画像は、画像が実質的にリアルタイムで生成されると、特定の期間にわたる仮想画像における仮想左手および仮想右手の異なる位置が、図１におけるユーザ１０４の左手１２４および右手１２６の運動をそれぞれシミュレーションするように、ディスプレイデバイス１１６上で表示され得る。
【０１０３】
いくつかの実施例では、頭部装着型システム１０８はまた、マイクロフォン３４０および／またはスピーカーシステム３４２を含み得る。ユーザ１０４は、マイクロフォン３４０を使用して、仮想現実管理装置１０６によって使用されるための音声データを生成し得る。さらに、仮想現実管理装置１０６は、スピーカーシステム３４２を使用して音を生成するように構成され得る。これらの音は、ユーザ１０４が仮想環境１０２にさらに没入することを可能にし得る。スピーカーシステム３４２は、例えば、ヘッドフォン３４４の形をとり得る。
【０１０４】
次に図４を参照すると、例示的な実施形態によるデータ調整装置の例示がブロック図の形で示されている。図４では、図３からのデータ調整装置３３６の１つの実装形態の例が示されている。
【０１０５】
この実施例では、データ調整装置３３６は、現在の時間３１４の現在の仮想画像３１０を形成する際に使用するための入力４０２を受信するように構成される。入力４０２の受信に応答して、データ調整装置３３６は、出力４０４を生成する。入力４０２は、例えば、限定することなく、ユーザデータ１４５、画像に基づいた位置データ３２８、手位置データ１３３、頭位置データ１２０、現在の基準フレーム３３０、および／または他の適切なデータを含み得る。画像に基づいた位置データ３２８、手位置データ１３３、頭位置データ１２０、および現在の基準フレーム３３０は、現在の時間３１４に対応するデータであってもよい。出力４０４は、現在の仮想画像３１０であってもよい。
【０１０６】
この図に例示されるように、データ調整装置３３６は、制約識別装置４０６、データ変調装置４０８、フィードバック制御装置４１０、仮想画像解析装置４１１、制御データ生成装置４１２、および画像視覚化装置４１４を含む。この実施例では、制約識別装置４０６は、例えば、限定することなく、ユーザデータ１４５に基づいて、仮想画像制御データ１３５を形成するための制約の組４１６を識別する。制約の組４１６は、例えば、図１におけるユーザ１０４の左手１２４、右手１２６、および／または頭１１２の位置および／または運動に対する制約を含み得る。制約識別装置４０６は、制約の組４１６をフィードバック制御装置４１０に送る。
【０１０７】
図示したように、データ変調装置４０８は、手データ変調装置４１８および頭データ変調装置４２０を含む。手データ変調装置４１８は、画像に基づいた位置データ３２８と手位置データ１３３の両方を使用して、修正された手位置データ４２２を形成するように構成される。修正された手位置データ４２２は、画像に基づいた位置データ３２８および手位置データ１３３に重みを付けることによって形成され得る。これらの重みは、例えば、ユーザ１０４の左手１２４および／または右手１２６の運動の速度に基づいてもよい。
【０１０８】
この実施例では、画像に基づいた位置データ３２８は、手の手袋の上のセンサシステムを使用して経時的に生成された手位置データ１３３よりもより正確なユーザ１０４の手の位置を提供し得る。特に、画像に基づいた位置データ３２８は、手がゆっくり動いているとき、手位置データ１３３よりもより正確なデータを提供し得る。手位置データ１３３は、手が素早く動いているとき、画像に基づいた位置データ３２８よりもより正確なデータを提供し得る。
【０１０９】
したがって、ユーザ１０４の手が十分に素早く動いているとき、手データ変調装置４１８は、手位置データ１３３における対応する手位置データに、画像に基づいた位置データ３２８に付けられる重みよりも大きい重みを付ける。一方、ユーザ１０４の手が十分にゆっくり動いているとき、手データ変調装置４１８は、手位置データ１３３における対応する手位置データに、画像に基づいた位置データ３２８に付けられる重みよりも小さい重みを付ける。重みが付けられる速度は、特定の実装形態に応じて異なり得る。
【０１１０】
さらに、頭データ変調装置４２０は、頭位置データ１２０と現在の基準フレーム３３０の両方を使用して、修正された頭位置データ４２４を形成するように構成される。頭データ変調装置４２０は、頭位置データ１２０および現在の基準フレーム３３０を組み合わせ、これらの２つのタイプのデータに重み付けして、修正された頭位置データ４２４を形成し得る。ユーザ１０４の頭１１２がゆっくり動いているとき、現在の基準フレーム３３０は、頭位置データ１２０よりも大きく重み付けされ得る。ユーザ１０４の頭１１２が素早く動いているとき、頭位置データ１２０は、現在の基準フレーム３３０よりも大きく重み付けされ得る。
【０１１１】
データ変調装置４０８は、修正された手位置データ４２２および修正された頭位置データ４２４をフィードバック制御装置４１０に送る。さらに、データ変調装置４０８は、修正された手位置データ４２２および修正された頭位置データ４２４を制御データ生成装置４１２に送る。制御データ生成装置４１２は、修正された手位置データ４２２および修正された頭位置データ４２４を使用して、仮想画像制御データ１３５を形成するように構成される。
【０１１２】
例えば、制御データ生成装置４１２は、フィルタの組４２５を使用して、仮想画像制御データ１３５を形成し得る。フィルタの組４２５は、修正された手位置データ４２２および修正された頭位置データ４２４を平滑化し、修正された手位置データ４２２および修正された頭位置データ４２４における望ましくない不連続性を除去し、時間に対して修正された手位置データ４２２および修正された頭位置データ４２４を同期させるように構成され得る。制御データ生成装置４１２は、仮想画像制御データ１３５を仮想画像アプリケーション１３７に送る。
【０１１３】
仮想画像アプリケーション１３７における画像生成装置３３８は、仮想画像制御データ１３５を使用して、現在の仮想画像３１０を生成するように構成される。特に、画像生成装置３３８は、以前の仮想画像３１２を更新して、図１における仮想環境１０２の現在の仮想画像３１０を形成する。画像生成装置３３８は、現在の仮想画像３１０を仮想画像解析装置４１１および画像視覚化装置４１４に送る。
【０１１４】
この実施例では、仮想画像解析装置４１１は、現在の仮想画像３１０を解析して、現在の仮想画像３１０に基づいて実際のデータ４２７を生成するように構成される。例えば、仮想画像解析装置４１１は、現在の仮想画像３１０を分解して、現在の仮想画像３１０に基づいて、図１におけるユーザ１０４の頭１１２の実際の位置、ユーザ１０４の左手１２４の実際の位置、および／またはユーザ１０４の右手１２６の実際の位置を識別する実際のデータ４２７を生成し得る。仮想画像解析装置４１１は、実際のデータ４２７をフィードバック制御装置４１０に送る。
【０１１５】
フィードバック制御装置４１０は、実際のデータ４２７、制約の組４１６、修正された手位置データ４２２、および修正された頭位置データ４２４を使用して、指位置誤差４２６、相対的な手位置誤差４２８、および頭位置誤差４３０を形成するように構成される。指位置誤差４２６は、修正された手位置データ４２２において識別されたユーザ１０４の指の位置と、現在の仮想画像３１０においてシミュレーションされたユーザ１０４の指の位置との間の差であってもよい。
【０１１６】
さらに、相対的な手位置誤差４２８は、修正された手位置データ４２２において識別されたユーザ１０４の手の位置と、ユーザ１０４の頭１１２の位置および／または現在の基準フレーム３３０に対する現在の仮想画像３１０における仮想手の位置との間の差であってもよい。頭位置誤差４３０は、修正された頭位置データ４２４において識別されたユーザ１０４の頭１１２の位置と、現在の仮想画像３１０に基づいて示されたユーザ１０４の頭１１２の位置との間の差であってもよい。
【０１１７】
いくつかの実施例では、フィードバック制御装置４１０は、指位置誤差４２６、相対的な手位置誤差４２８、および頭位置誤差４３０を制御データ生成装置４１２に送って、仮想画像制御データ１３５を調節し得る。もちろん、いくつかの実施例では、現在の仮想画像３１０を使用して仮想画像制御データ１３５を画像生成装置３３８およびフィードバック制御装置４１０に送って、仮想画像制御データ１３５を調節するプロセスは、仮想画像制御データ１３５が所望のレベルの精度を有するまで繰り返され得る。言い換えれば、このプロセスは、指位置誤差４２６、相対的な手位置誤差４２８、および頭位置誤差４３０が選択された許容差内に入るまでループし得る。
【０１１８】
次いで、所望のレベルの精度を有するように調節された仮想画像制御データ１３５は、現在の仮想画像３１０を調節するために画像視覚化装置４１４によって使用され得る。次いで、画像視覚化装置４１４は、調節された現在の仮想画像３１０を出力し得る。
【０１１９】
このようにして、所望のレベルの精度で経時的に生成される仮想画像制御データ１３５を使用して、図１における仮想画像のシーケンス１３８を生成することができる。仮想画像制御データ１３５が所望のレベルの精度で生成されるとき、仮想画像のシーケンス１３８は、ユーザ１０４に所望のレベルの目と手の協調を提供し得る。言い換えれば、これらの仮想画像における仮想左手および仮想右手の位置は、所望のレベルの精度を有し得る。さらに、ユーザ１０４の頭１１２、左手１２４、および／または右手１２６の運動は、仮想画像のシーケンス１３８内で所望のレベルの精度でシミュレーションされ得る。
【０１２０】
次に図５を参照すると、例示的な実施形態による仮想現実システムの操作のモードの例示が示されている。この例示の例では、モード５００は、図１における仮想現実システム１００の動作のモードであってもよい。図示したように、モード５００は、学習および較正モード５０２、静的モード５０４、動的モード５０６、および透過モード５０８のうちの少なくとも１つを含み得る。もちろん、他の実施例では、モード５００は、これらのモードに加えてまたはこれらのモードの代わりに、１つまたは複数の他のモードを含み得る。
【０１２１】
学習および較正モード５０２では、図１におけるユーザ１０４は、図１における手システム１３１および頭部装着型システム１０８のうちの少なくとも１つを使用しながら、実際の作業を行い得る。この実際の作業は、例えば、仮想現実ではなく、現実で行われる非仮想作業であってもよい。この非仮想作業は、例えば、限定することなく、キーボードをタイプすること、ピアノを演奏すること、ギターを演奏すること、異なるタイプの機器を使用すること、医療処置を行うこと、物理的な作業を行うこと、または何らかの他の適切なタイプの非仮想作業であってもよい。
【０１２２】
学習および較正モード５０２では、仮想現実管理装置１０６は、手システム１３１によって生成された手位置データ１３３および頭位置データ１２０のうちの少なくとも１つを使用して、図１における仮想現実システム１００を較正する。例えば、ユーザ１０４が非仮想作業を行って、ユーザ１０４が仮想現実システム１００を使用して対応する仮想作業を行ったときに生成されたデータの不一致を修正している間に、仮想現実管理装置１０６は、収集されたデータを使用し得る。
【０１２３】
静的モード５０４では、ユーザ１０４は、仮想現実システム１００を使用して、ユーザ１０４の手のみが使用され得る仮想作業を行い得る。例えば、ユーザ１０４は、図１における左手１２４および／または右手１２６を使用して、仮想作業を行い得る。静的モード５０４では、ユーザ１０４に表示された仮想画像のシーケンス１３８におけるすべての仮想画像は、図１におけるユーザ１０４の頭１１２のいかなる運動にもかかわらず、静止したままであってもよい。
【０１２４】
例えば、仮想画像のシーケンス１３８におけるすべての仮想画像に対する図１における基準フレーム１４６は、固定され、手システム１３１によって制御されている仮想デバイスのほうに向けられたままであってもよい。仮想左手１４２、仮想右手１４４、および／または他の仮想構成要素の位置は、図１における仮想画像のシーケンス１３８における異なる仮想画像間で変化し得るが、基準フレーム１４６は静止したままである。１つの実施例では、仮想現実管理装置１０６は、ユーザ１０４が仮想作業を行っている間に、図１における頭部装着型システム１０８内のセンサシステム１１８によって生成された任意の頭位置データ１２０をフィルタリングするように構成され得る。
【０１２５】
動的モード５０６では、手位置データ１３３と頭位置データ１２０の両方は、仮想現実管理装置１０６によって使用されて、ユーザ１０４に表示される仮想画像のシーケンス１３８を制御する。仮想画像のシーケンス１３８におけるそれぞれの画像に対する基準フレーム１４６は、ユーザ１０４の頭１１２の運動に基づいて変化し得る。
【０１２６】
透過モード５０８では、仮想画像は図１におけるディスプレイデバイス１１６上で表示されない。その代わりに、ユーザ１０４は、図１における眼鏡１１４を通して見ることが可能になり得る。言い換えれば、透過モード５０８では、眼鏡１１４のレンズが透過になり得る。
【０１２７】
図１における仮想現実システム１００、図２における左手システム１２１、図３における頭部装着型システム１０８、図４におけるデータ調整装置３３６、および図５におけるモード５００の例示は、例示的な実施形態が実施され得る方法に対する物理的なまたはアーキテクチャ面での制限事項を含むものではない。例示された構成要素に加えてまたは例示された構成要素の代わりに、他の構成要素が使用され得る。いくつかの構成要素は不必要であることがある。また、ブロックは、いくつかの機能的な構成要素を例示するために提示される。例示的な実施形態において実施されるとき、これらのブロックの１つまたは複数を組み合わせるか、分割するか、または組み合わせかつ異なるブロックに分割することができる。
【０１２８】
いくつかの実施例では、仮想画像アプリケーション１３７は、図１における仮想現実システム１００内で実施され得る。例えば、仮想画像アプリケーション１３７は、データ処理システム１０５内で実施され得る。他の実施例では、データ管理装置２０４は、図２におけるセンサシステム２０２とは別個に実施され得る。
【０１２９】
場合によっては、図５に記載されたものに加えておよび／または図５に記載されたものの代わりに、他のモードが仮想現実システム１００の操作のモード５００に含まれ得る。１つの実施例では、学習および較正モード５０２は、学習モードおよび較正モードに分けられ得る。
【０１３０】
次に図６を参照すると、例示的な実施形態による仮想現実システムを使用するユーザの例示が示されている。この実施例では、ユーザ６００は、仮想現実システム６０１を着用している。ユーザ６００は、図１におけるユーザ１０４の例である。さらに、仮想現実システム６０１は、図１における仮想現実システム１００の１つの実装形態の例である。
【０１３１】
図示したように、仮想現実システム６０１は、頭部装着型システム６０２、左手袋６０４、および右手袋６０６を含む。頭部装着型システム６０２は、図１および図３における頭部装着型システム１０８の１つの実装形態の例である。図示したように、頭部装着型システム６０２は、眼鏡６０８を含む。眼鏡６０８は、図１および図３における眼鏡１１４の１つの実装形態の例である。さらに、左手袋６０４および右手袋６０６は、それぞれ図１における左手袋１２８および右手袋１３０の実装形態の例である。
【０１３２】
この実施例では、図１における仮想現実管理装置１０６などの仮想現実管理装置は、ユーザ６００の目の前の眼鏡６０８上で仮想画像６１０を視覚的に提示し得る。仮想画像６１０は、図１における仮想画像１４０の１つの実装形態の例であってもよい。さらに、仮想画像６１０は、仮想環境の画像である。仮想現実管理装置は、ユーザ６００の運動に応答して左手袋６０４、右手袋６０６、および頭部装着型システム６０２によって生成されたデータを使用して、ユーザ６００がこの仮想環境を制御し、この仮想環境と対話することを可能にするように構成される。
【０１３３】
次に図７を参照すると、例示的な実施形態による仮想エンジニアリング環境と対話するためのプロセスの例示がフローチャートの形で示されている。図７に例示されたプロセスは、図１における仮想現実システム１００を使用して実施され得る。特に、このプロセスは、図１および図３における仮想画像アプリケーション１３７と通信する仮想現実管理装置１０６を使用して実施され得る。
【０１３４】
プロセスは、手システムからユーザの少なくとも片手の手位置データを受信すること（操作７００）によって開始し得る。手位置データは、ユーザの左手および／または右手の位置データを含み得る。手システムは、ユーザの左手の左手袋および／またはユーザの右手の右手袋を備え得る。手システムは、例えば、図１における手システム１３１であってもよい。
【０１３５】
次いで、プロセスは、頭部装着型システムからユーザの頭の頭位置データを受信し得る（操作７０２）。頭部装着型システムは、例えば、図１および図３における頭部装着型システム１０８であってもよい。１つの実施例では、頭部装着型システムは、図１および図３における眼鏡１１４の形をとり得る。
【０１３６】
その後、プロセスは、現在の時間のターゲット画像を使用して、画像に基づいた位置データおよび現在の時間の現在の基準フレームを識別する（操作７０４）。操作７０４は、例えば、図３における画像プロセッサ３２６を使用して行われ得る。ターゲット画像は、例えば、図３における頭部装着型システム１０８に関連付けられたセンサシステム１１８内のイメージングシステム３２２を使用して生成されたターゲット画像３２４であってもよい。ターゲット画像３２４は、ターゲット画像３２４における左手袋１２８および右手袋１３０の位置を識別することを可能にする。
【０１３７】
次いで、プロセスは、画像に基づいた位置データおよび現在の基準フレームを用いて手位置データおよび頭位置データを調整して、仮想画像制御データを形成する（操作７０６）。操作７０６は、例えば、図３および図４におけるデータ調整装置３３６を使用して行われ得る。次いで、プロセスは、仮想画像制御データを使用して、仮想環境の現在の仮想画像を生成し（操作７０８）、その後、プロセスは終了する。
【０１３８】
次に図８を参照すると、例示的な実施形態による仮想エンジニアリング環境と対話するためのプロセスの例示がフローチャートの形で示されている。図８に例示されたプロセスは、図１における仮想現実システム１００を使用して実施され得る。さらに、このプロセスは、図７に記載されたプロセスのより詳細なプロセスである。
【０１３９】
プロセスは、左手袋および右手袋からそれぞれ左手位置データおよび右手位置データを受信することによって開始する（操作８００）。左手位置データは、ユーザの左手の位置を経時的に識別する。右手位置データは、ユーザの右手の位置を経時的に識別する。
【０１４０】
さらに、プロセスは、頭部装着型システム内のセンサシステムから頭位置データを受信する（操作８０２）。頭位置データは、ユーザの頭の位置を経時的に識別する。
【０１４１】
次いで、プロセスは、頭部装着型システムのセンサシステム内のイメージングシステムからターゲット画像のシーケンスを受信する（操作８０４）。その後、プロセスは、現在の時間に対応するターゲット画像のシーケンスにおけるターゲット画像を使用して、画像に基づいた位置データおよび現在の時間の現在の基準フレームを識別する（操作８０６）。
【０１４２】
次に、プロセスは、時間に対して左手位置データ、右手位置データ、および頭位置データを同期させる（操作８０８）。次いで、プロセスは、画像に基づいた位置データおよび現在の基準フレームを用いて同期した左手位置データ、右手位置データ、および頭位置データを調整して、仮想画像制御データを形成する（操作８１０）。
【０１４３】
プロセスは、クラウドを使用して、仮想画像制御データを仮想画像アプリケーションに送る（操作８１２）。仮想画像アプリケーションは、仮想画像制御データを使用して、現在の時間の仮想環境の現在の仮想画像を生成するように構成される。次に、プロセスは、仮想画像アプリケーションによって生成された現在の仮想画像を受信する（操作８１４）。
【０１４４】
プロセスは、頭部装着型システムに関連付けられたディスプレイデバイス上で現在の仮想画像を表示し（操作８１６）、プロセスは操作８００に戻る。操作８００では、現在の仮想画像は、ディスプレイデバイス上で表示された以前に生成された仮想画像を置き換える。ユーザは、現在の仮想画像を見、仮想環境に存在していると感じ得る。
【０１４５】
プロセスが操作８１６を行った後で操作８００に戻り、操作８０２、操作８０４、および操作８０６を繰り返すとき、操作８０６において使用される現在の時間は、操作８１６における現在の仮想画像の現在の時間の後の時間である。言い換えれば、図８に記載されたプロセスは、次の仮想画像を形成するために繰り返され得る。このようにして、時間に関して並べられた仮想画像のシーケンスが生成され、ディスプレイデバイス上で表示され得る。
【０１４６】
異なる図示された実施形態におけるフローチャートおよびブロック図は、例示的な実施形態における装置および方法のいくつかの考えられる実装形態のアーキテクチャ、機能、および操作を例示する。この点で、フローチャートまたはブロック図におけるそれぞれのブロックは、モジュール、セグメント、機能、および／または操作もしくはステップの一部分を表し得る。例えば、ブロックの１つまたは複数は、プログラムコードとして、ハードウェアで、またはプログラムコードおよびハードウェアの組合せで実施され得る。ハードウェアで実施されるとき、ハードウェアは、例えば、フローチャートまたはブロック図における１つまたは複数の操作を行うように製造または構成された集積回路の形をとり得る。
【０１４７】
例示的な実施形態のいくつかの代替実装形態では、ブロックに示された１つまたは複数の機能は、図に示された順序が狂って行われることがある。例えば、場合によっては、関与する機能に応じて、連続して示された２つのブロックは実質的に同時に行われ得る、またはこれらのブロックは時として逆の順序で行われ得る。また、フローチャートまたはブロック図における例示されたブロックに加えて、他のブロックが追加され得る。
【０１４８】
次に図９を見ると、例示的な実施形態によるデータ処理システムの例示が示されている。この実施例では、データ処理システム９００を使用して、図１におけるデータ処理システム１０５を実施することができる。この実施例では、データ処理システム９００は通信フレームワーク９０２を含み、通信フレームワーク９０２は、プロセッサユニット９０４、メモリ９０６、永続的な記憶装置９０８、通信ユニット９１０、入力／出力（Ｉ／Ｏ）ユニット９１２、およびディスプレイ９１４の間の通信を提供する。
【０１４９】
プロセッサユニット９０４は、メモリ９０６にロードされ得るソフトウェアの命令を実行するように働く。プロセッサユニット９０４は、特定の実装態様に応じて、任意の数のプロセッサ、マルチプロセッサコア、または何らかの他のタイプのプロセッサであってもよい。品目を参照して本明細書で使用される場合、任意の数とは、１つまたは複数の品目を意味する。さらに、プロセッサユニット９０４は、メインプロセッサが単一チップ上で２次プロセッサとともに存在する、任意の数の異種プロセッサシステムを使用して実施され得る。別の実施例として、プロセッサユニット９０４は、同じタイプの複数のプロセッサを含む対称的なマルチプロセッサシステムであってもよい。
【０１５０】
メモリ９０６および永続的な記憶装置９０８は、記憶デバイス９１６の例である。記憶デバイスは、例えば、限定することなく、データ、機能的な形のプログラムコードなどの情報および／または他の適切な情報を、一時的におよび／または永続的に記憶することが可能な任意のハードウェア部分である。記憶デバイス９１６は、これらの例では、コンピュータ可読記憶デバイスとも呼ばれ得る。メモリ９０６は、これらの例では、例えば、ランダムアクセスメモリまたは任意の他の適切な揮発性もしくは不揮発性記憶デバイスであってもよい。永続的な記憶装置９０８は、特定の実装形態に応じて、様々な形をとり得る。
【０１５１】
例えば、永続的な記憶装置９０８は、１つまたは複数の構成要素もしくはデバイスを含み得る。例えば、永続的な記憶装置９０８は、ハードドライブ、フラッシュメモリ、書換え可能な光ディスク、書換え可能な磁気テープ、または上記の何らかの組合せであってもよい。また、永続的な記憶装置９０８によって使用される媒体は、取外し可能であってもよい。例えば、取外し可能なハードドライブは、永続的な記憶装置９０８に使用され得る。
【０１５２】
通信ユニット９１０は、これらの例では、他のデータ処理システムまたはデバイスとの通信を提供する。これらの例では、通信ユニット９１０は、ネットワークインターフェースカードである。通信ユニット９１０は、物理的な通信リンクとワイヤレス通信リンクのいずれかまたは物理的な通信リンクとワイヤレス通信リンクの両方を使用することによって、通信を提供し得る。
【０１５３】
入力／出力ユニット９１２は、データ処理システム９００に接続され得る他のデバイスとのデータの入力および出力を可能にする。例えば、入力／出力ユニット９１２は、キーボード、マウス、および／または何らかの他の適切な入力デバイスを介してユーザ入力のための接続を提供し得る。さらに、入力／出力ユニット９１２は、出力をプリンタに送り得る。ディスプレイ９１４は、情報をユーザに表示するための機構を提供する。
【０１５４】
オペレーティングシステム、アプリケーション、および／またはプログラムのための命令は、通信フレームワーク９０２を介してプロセッサユニット９０４と通信する記憶デバイス９１６に配置され得る。これらの実施例では、命令は、機能的な形で永続的な記憶装置９０８上にある。これらの命令は、プロセッサユニット９０４によって実行するためにメモリ９０６にロードされ得る。異なる実施形態のプロセスは、メモリ９０６などのメモリに配置され得るコンピュータ実施命令を使用して、プロセッサユニット９０４によって行われ得る。
【０１５５】
これらの命令は、プロセッサユニット９０４内のプロセッサによって読み取られ、実行され得るプログラムコード、コンピュータ使用可能プログラムコード、またはコンピュータ可読プログラムコードと呼ばれる。異なる実施形態におけるプログラムコードは、メモリ９０６または永続的な記憶装置９０８などの異なる物理的なまたはコンピュータ可読記憶媒体上で具体化され得る。
【０１５６】
プログラムコード９１８は、機能的な形で、選択的に取外し可能なコンピュータ可読媒体９２０上に配置され、プロセッサユニット９０４によって実行するためにデータ処理システム９００にロードされるか、転送され得る。プログラムコード９１８およびコンピュータ可読媒体９２０は、これらの例では、コンピュータプログラム製品９２２を形成する。１つの例では、コンピュータ可読媒体９２０は、コンピュータ可読記憶媒体９２４またはコンピュータ可読信号媒体９２６であってもよい。
【０１５７】
コンピュータ可読記憶媒体９２４は、例えば、永続的な記憶装置９０８の一部であるハードドライブなどの記憶デバイスに転送するために、永続的な記憶装置９０８の一部であるドライブまたは他のデバイスに挿入されるかドライブまたは他のデバイスの中に置かれる、光または磁気ディスクを含み得る。コンピュータ可読記憶媒体９２４はまた、ハードドライブ、サムドライブ、またはフラッシュメモリなどの、データ処理システム９００に接続された永続的な記憶装置の形をとり得る。いくつかの実例では、コンピュータ可読記憶媒体９２４は、データ処理システム９００から取外し可能でなくてもよい。
【０１５８】
これらの例では、コンピュータ可読記憶媒体９２４は、プログラムコード９１８を伝播するまたは送信する媒体ではなく、プログラムコード９１８を記憶するために使用される物理的なまたは有形な記憶デバイスである。コンピュータ可読記憶媒体９２４は、コンピュータ可読有形記憶デバイスまたはコンピュータ可読物理記憶デバイスとも呼ばれる。言い換えれば、コンピュータ可読記憶媒体９２４は、人が触れることができる媒体である。
【０１５９】
あるいは、プログラムコード９１８は、コンピュータ可読信号媒体９２６を使用して、データ処理システム９００に転送され得る。コンピュータ可読信号媒体９２６は、例えば、プログラムコード９１８を含む伝播されるデータ信号であってもよい。例えば、コンピュータ可読信号媒体９２６は、電磁信号、光信号、および／または任意の他の適切なタイプの信号であってもよい。これらの信号は、ワイヤレス通信リンク、光ファイバケーブル、同軸ケーブル、電線、および／または任意の他の適切なタイプの通信リンクなどの通信リンクを介して送信され得る。言い換えれば、通信リンクおよび／または接続は、実施例では、物理的またはワイヤレスであってもよい。
【０１６０】
いくつかの例示的な実施形態では、プログラムコード９１８は、データ処理システム９００内で使用するために、コンピュータ可読信号媒体９２６により別のデバイスまたはデータ処理システムから永続的な記憶装置９０８にネットワークを介してダウンロードされ得る。例えば、サーバデータ処理システム内のコンピュータ可読記憶媒体に記憶されたプログラムコードは、サーバからデータ処理システム９００にネットワークを介してダウンロードされ得る。プログラムコード９１８を提供するデータ処理システムは、サーバコンピュータ、クライアントコンピュータ、またはプログラムコード９１８を記憶し、送信することが可能な何らかの他のデバイスであってもよい。
【０１６１】
データ処理システム９００について例示された異なる構成要素は、異なる実施形態が実施され得る方法に対するアーキテクチャ面での制限事項をもたらすものではない。異なる例示的な実施形態は、データ処理システム９００について例示されたものに加えたまたはその代わりの構成要素を含むデータ処理システムで実施され得る。図９に示された他の構成要素は、示された実施例とは異なるものとすることができる。異なる実施形態は、プログラムコードを実行可能な任意のハードウェアデバイスまたはシステムを使用して実施され得る。１つの例として、データ処理システムは、無機構成要素と一体化された有機構成要素を含み得るおよび／またはすべて人間を除く有機構成要素からなり得る。例えば、記憶デバイスは、有機半導体からなり得る。
【０１６２】
別の実施例では、プロセッサユニット９０４は、特定の用途のために製造または構成された回路を有するハードウェアユニットの形をとり得る。このタイプのハードウェアは、操作を行うように構成されるプログラムコードを記憶デバイスからメモリにロードすることを必要とすることなく、その操作を行い得る。
【０１６３】
例えば、プロセッサユニット９０４がハードウェアユニットの形を取るとき、プロセッサユニット９０４は、回路システム、特定用途向け集積回路（ＡＳＩＣ）、プログラマブル論理デバイス、または任意の数の操作を行うように構成された何らかの他の適切なタイプのハードウェアであってもよい。プログラマブル論理デバイスの場合、デバイスは任意の数の操作を行うように構成される。デバイスは後で再構成されてもよく、または任意の数の操作を行うように永久的に構成されてもよい。プログラマブル論理デバイスの例は、例えば、プログラマブル論理アレイ、フィールドプログラマブル論理アレイ、フィールドプログラマブルゲートアレイ、および他の適切なハードウェアデバイスを含む。このタイプの実装形態の場合、異なる実施形態のプロセスがハードウェアユニットで実施されるので、プログラムコード９１８を省略してもよい。
【０１６４】
さらに別の実施例では、プロセッサユニット９０４は、コンピュータで見出されるプロセッサおよびハードウェアユニットの組合せを使用して実施され得る。プロセッサユニット９０４は、任意の数のハードウェアユニットおよびプログラムコード９１８を実行するように構成された、任意の数のプロセッサを有し得る。この図示された例の場合、プロセスの一部は、任意の数のハードウェアユニットで実施され得るが、他のプロセスは、任意の数のプロセッサで実施され得る。
【０１６５】
別の実施例では、バスシステムを使用して、通信フレームワーク９０２を実施することができ、バスシステムは、システムバスまたは入力／出力バスなどの１つまたは複数のバスからなり得る。もちろん、バスシステムは、バスシステムに取り付けられた異なる構成要素またはデバイス間でのデータの転送を提供する任意の適切なタイプのアーキテクチャを使用して実施され得る。
【０１６６】
加えて、通信ユニットは、データを送信する、データを受信する、またはデータを送受信する任意の数のデバイスを含み得る。通信ユニットは、例えば、モデムもしくはネットワークアダプタ、２つのネットワークアダプタ、またはこれらの何らかの組合せであってもよい。さらに、メモリは、例えば、通信フレームワーク９０２に存在し得るインターフェースおよびメモリ制御装置ハブで見出されるものなどの、メモリ９０６またはキャッシュであってもよい。
【０１６７】
このように、異なる例示的な実施形態は、仮想環境の仮想画像を生成するための方法および装置を提供する。１つの例示的な実施形態では、仮想環境の仮想画像を生成するための方法が提供される。仮想現実管理装置は、手システムからユーザの少なくとも片手の手位置データを受信する。仮想現実管理装置は、頭部装着型システムからユーザの頭の頭位置データを受信する。仮想現実管理装置は、現在の時間に対応するターゲット画像を使用して、画像に基づいた位置データおよび現在の時間の現在の基準フレームを識別する。仮想現実管理装置は、手位置データ、頭位置データ、画像に基づいた位置データ、および現在の基準フレームを使用して、現在の時間の仮想画像制御データを生成する。仮想画像制御データは、仮想画像アプリケーションによって使用されるために構成される。
【０１６８】
異なる例示的な実施形態は、ユーザが仮想環境と対話することを可能にするための方法およびシステムを提供する。特に、図１における仮想現実システム１００は、図１におけるユーザ１０４などのユーザが、図１における仮想画像アプリケーション１３７などの仮想画像アプリケーションと対話することを可能にする。ユーザは、仮想画像アプリケーションを使用して管理される仮想環境に影響を及ぼす方法で、仮想画像アプリケーションと対話し得る。
【０１６９】
仮想現実システム１００を使用して、仮想エンジニアリングを行うことができる。例えば、ユーザは、仮想現実システム１００を使用して、仮想エンジニアリング環境と対話し得る。仮想現実システム１００は、ユーザが仮想エンジニアリング環境内で所望のレベルの没入感を体験し得るように、所望のレベルの目と手の協調を提供するように構成される。
【０１７０】
図および本文において、１つの態様では、仮想環境１０２の仮想画像１４０を生成するための方法が開示され、方法は、仮想現実管理装置１０６で、手システム１３１からユーザ１０４の少なくとも片手の手位置データを受信することと、仮想現実管理装置１０６で、頭部装着型システム１０８からユーザ１０４の頭１１２の頭位置データ１２０を受信することと、仮想現実管理装置１０６によって、現在の時間３１４に対応するターゲット画像を使用して、画像に基づいた位置データ３２８および現在の時間３１４の現在の基準フレーム３３０を識別することと、仮想現実管理装置１０６によって、手位置データ１３３、頭位置データ１２０、画像に基づいた位置データ３２８、および現在の基準フレーム３３０を使用して、現在の時間３１４の仮想画像制御データを生成することとを含み、仮想画像制御データ１３５は、仮想画像アプリケーション１３７によって使用されるために構成される。
【０１７１】
１つの変形形態では、方法は、仮想現実管理装置１０６によって、仮想画像制御データ１３５を仮想画像アプリケーション１３７に送ることと、仮想画像アプリケーション１３７によって、現在の時間３１４の仮想画像制御データ１３５を使用して、現在の時間３１４の仮想環境１０２の現在の仮想画像３１０を生成することとをさらに含む。
【０１７２】
別の変形形態では、方法は、現在の時間３１４の仮想画像制御データ１３５を使用して、現在の時間３１４の仮想環境１０２の現在の仮想画像３１０を生成するステップを含み、生成するステップは、仮想画像制御データ１３５に基づき、現在の仮想画像１３０内において仮想左手１４２および仮想右手１４４を位置決めすることを含み、仮想左手１４２は、ユーザ１０４の左手１２４を表す画像であり、仮想右手１４４はユーザ１０４の右手１２６を表す画像である。
【０１７３】
さらに別の変形形態では、方法は、仮想現実管理装置１０６によって、頭部装着型システム１０８に関連付けられたディスプレイデバイス１１６上で仮想環境１０２の現在の仮想画像３１０をユーザ１０４に表示することをさらに含み、現在の仮想画像３１０は、ディスプレイデバイス１１６上に表示された以前の仮想画像３１２を置き換える。１つの例では、方法は、手位置データ１３３、頭位置データ１２０、画像に基づく位置データ３２８、および現在の基準フレーム３３０を使用して、現在の時間３１４の仮想画像制御データ１３５を生成するステップを含み、生成するステップは、仮想現実管理装置１０６によって、時間に対して手位置データ１３３および頭位置データ１２０を同期させることを含む。さらに別の変形形態では、方法は、ユーザ１０４の左手１２４に実質的に一致するように構成された左手袋１２８を使用して、左手位置データ１３４を生成することと、ユーザ１０４の右手１２６に実質的に一致するように構成された右手袋１３０を使用して、右手位置データ１３６を生成することとをさらに含み、左手位置データ１３４および右手位置データ１３６は、手位置データ１３３を形成する。
【０１７４】
１つの実例では、方法は、現在の時間３１４の仮想画像制御データ１３５を生成するステップを含み、生成するステップは、手位置データ１３３における左手位置データ１３４、手位置データ１３３における右手位置データ１３６、および画像に基づいた位置データ３２８を使用して、修正された手位置データ４２２を識別することと、頭位置データ１２０および現在の基準フレーム３３０を使用して、修正された頭位置データ４２４を識別することと、修正された手位置データ４２２、修正された頭位置データ４２４、および制約の組４１６を使用して、仮想画像制御データ１３５を生成することとを含む。別の実例では、方法は、現在の時間３１４の仮想画像制御データ１３５を生成するステップを含み、生成するステップは、ユーザデータ１４５を使用して、制約の組４１６を識別することをさらに含み、ユーザデータ１４５は、ユーザ画像の組１５０に基づく。
【０１７５】
さらに別の実例では、方法は、修正された手位置データ４２２、修正された頭位置データ４２４、および制約の組４１６を使用して、仮想画像制御データ１３５を生成するステップを含み、生成するステップは、フィードバック制御装置４１０、修正された手位置データ、修正された頭位置データ４２４、および制約の組４１６を使用して、指位置誤差４２６、相対的な手位置誤差４２８、および頭位置誤差４３０を識別することと、フィードバック制御装置４１０、指位置誤差４２６、相対的な手位置誤差４２８、および頭位置誤差４３０を使用して、所望のレベルの精度で仮想画像制御データ１３５を生成することとを含む。１つの例では、方法は、仮想環境１０２を含み、仮想環境１０２は、設計環境、製造環境、コンピュータ環境、試験環境、データ管理環境、検査環境、および操作環境のうちの１つから選択されたエンジニアリング環境のシミュレーションである。
【０１７６】
１つの態様では、ユーザ１０４の頭１１２に対して着用されるように構成された頭部装着型システム１０８と、頭部装着型システム１０８に関連付けられた仮想現実管理装置１０６とを含む仮想現実システムが開示され、仮想現実管理装置１０６は、手システム１３１からユーザ１０４の少なくとも片手の手位置データ１３３を受信し、頭部装着型システム１０８内のセンサシステム１１８からユーザ１０４の頭１１２の頭位置データ１２０を受信し、現在の時間３１４に対応するターゲット画像を使用して、画像に基づいた位置データ３２８および現在の時間３１４の現在の基準フレーム３３０を識別し、手位置データ１３３、頭位置データ１２０、画像に基づいた位置データ３２８、および現在の基準フレーム３３０を使用して、現在の時間３１４の仮想画像制御データ１３５を生成するように構成され、仮想画像制御データ１３５は、仮想画像アプリケーション１３７によって使用されるために構成される。
【０１７７】
１つの変形形態では、仮想現実システムは、仮想現実管理装置１０６を含み、仮想現実管理装置１０６は、仮想画像制御データ１３５を仮想画像アプリケーション１３７に送り、仮想画像アプリケーション１３７から現在の時間３１４の仮想環境１０２の現在の仮想画像３１０を受信するように構成される。別の変形形態では、仮想現実システムは、頭部装着型システム１０８に関連付けられたディスプレイデバイス１１６をさらに含み、仮想現実管理装置１０６は、ディスプレイデバイス１１６上で仮想環境１０２の現在の仮想画像３１０をユーザ１０４に表示するようにさらに構成される。さらに別の変形形態では、仮想現実システムは、現在の仮想画像３１０を含み、現在の仮想画像３１０は、仮想左手１４２および仮想右手１４４を含み、仮想左手１４２は、ユーザ１０４の左手１２４を表す画像であり、仮想右手１４４は、ユーザ１０４の右手１２６を表す画像である。
【０１７８】
さらに別の変形形態では、仮想現実システムは、仮想現実管理装置１０６を含み、仮想現実管理装置１０６は、時間に対して手位置データ１３３および頭位置データ１２０を同期させるように構成されたデータ調整装置３３６を備え、データ調整装置３３６は、手位置データ１３３における左手位置データ１３４、手位置データ１３３における右手位置データ１３６、および画像に基づいた位置データ３２８を使用して、修正された手位置データ４２２を識別するように構成された手データ変調装置４１８と、頭位置データ１２０および現在の基準フレーム３３０を使用して、修正された頭位置データ４２４を識別するように構成された頭データ変調装置４２０と、修正された手位置データ４２２、修正された頭位置データ４２４、および制約の組４１６を使用して、仮想画像制御データ１３５を生成するように構成された制御データ生成装置４１２と、ユーザデータ１４５を使用して、制約の組４１６を識別するように構成された制約識別装置４０６とを含み、ユーザデータ１４５は、ユーザ画像の組１５０に基づく。
【０１７９】
１つの実例では、仮想現実システムは、データ調整装置３３６を含み、データ調整装置３３６は、修正された手位置データ４２２、修正された頭位置データ４２４、および制約の組４１６を使用して、指位置誤差４２６、相対的な手位置誤差４２８、および頭位置誤差４３０を識別するように構成されたフィードバック制御装置４１０をさらに含み、制御データ生成装置４１２は、指位置誤差４２６、相対的な手位置誤差４２８、および頭位置誤差４３０を使用して、仮想画像制御データ１３５を生成するように構成される。さらに別の実例では、仮想現実システムは、仮想現実システムを含み、仮想現実システムは、手システム１３１をさらに含み、手システム１３１は、左手位置データ１３４を生成するように構成された左手袋１２８であって、ユーザ１０４の左手１２４に実質的に一致するように構成された左手袋１２８と、右手位置データ１３６を生成するように構成された右手袋１３０であって、ユーザ１０４の右手１２６に実質的に一致するように構成された右手袋１３０とを含む。
【０１８０】
さらに別の実例では、仮想現実システムは、仮想画像制御データ１３５を含み、仮想画像制御データ１３５は、仮想環境１０２の仮想画像１４０を制御するために使用され、仮想環境１０２は、設計環境、製造環境、コンピュータ環境、試験環境、データ管理環境、検査環境、および操作環境のうちの１つから選択されたエンジニアリング環境１０３のシミュレーションである。
【０１８１】
１つの態様では、バスと、バスに接続された非一時的記憶デバイスとを含むコンピュータが開示され、非一時的記憶デバイスは、プログラムコードと、バスに接続されたプロセッサユニット９０４とを含み、プロセッサユニット９０４は、プログラムコードを実行して、手システム１３１からユーザ１０４の少なくとも片手の手位置データ１３３を受信し、頭部装着型システム１０８からユーザ１０４の頭１１２の頭位置データ１２０を受信し、現在の時間１３４に対応するターゲット画像を使用して、画像に基づいた位置データ３２８および現在の時間１３４の現在の基準フレーム３３０を識別し、手位置データ１３３、頭位置データ１２０、画像に基づいた位置データ３２８、および現在の基準フレーム３３０を使用して、現在の時間３１４の仮想画像制御データ１３５を生成するように構成され、仮想画像制御データ１３５は、仮想画像アプリケーション１３７によって使用されるために構成される。
【０１８２】
１つの変形形態では、コンピュータは、プロセッサユニット９０４を含み、プロセッサユニット９０４は、プログラムコードを実行して、頭部装着型システム１０８に関連付けられたディスプレイデバイス１１６上で、仮想画像アプリケーション１３７から受信された現在の時間３１４の現在の仮想画像３１０を表示するようにさらに構成される。
【０１８３】
例示および説明の目的で異なる例示的な実施形態の記載を提示してきたが、この記載は網羅的であることまたは開示された形での実施形態に限定されることを意図するものではない。多くの修正形態および変形形態が当業者に明らかとなろう。さらに、異なる例示的な実施形態は、他の例示的な実施形態と比べて異なる特徴を提供し得る。実施形態の原理、実際的な適用を最も良く説明し、企図された特定の用途に適した様々な修正形態を有する様々な実施形態についての本開示を他の当業者が理解することを可能にするために、選択された１つまたは複数の実施形態が選ばれ、記載されている。
【符号の説明】
【０１８４】
１００  仮想現実システム
１０１  環境
１０２  仮想環境
１０３  エンジニアリング環境
１０４  ユーザ
１０５  データ処理システム
１０６  仮想現実管理装置
１０８  頭部装着型システム
１１０  任意の数の周辺システム
１１２  頭
１１４  眼鏡
１１６  ディスプレイデバイス
１１８  センサシステム
１２０  頭位置データ
１２１  左手システム
１２２  右手システム
１２４  左手
１２６  右手
１２８  左手袋
１３０  右手袋
１３１  手システム
１３２  周辺位置データ
１３３  手位置データ
１３４  左手位置データ
１３５  仮想画像制御データ
１３６  右手位置データ
１３７  仮想画像アプリケーション
１３８  仮想画像のシーケンス
１３９  クラウド
１４０  仮想画像
１４１  時間
１４２  仮想左手
１４４  仮想右手
１４５  ユーザデータ
１４６  基準フレーム
１５０  ユーザ画像の組
１５２  イメージングシステム
１５４  追加データ
１５６  仮想現実システムのグループ
２０２  センサシステム
２０４  データ管理装置
２０５  データ処理システム
２０６  通信ユニット
２１０  生の手位置データ
２１２  フィルタの組
２１４  ワイヤレス通信リンク
３００  通信ユニット
３０２  データ管理装置
３０４  生の頭位置データ
３０５  データ処理システム
３０８  フィルタの組
３１０  現在の仮想画像
３１２  以前の仮想画像
３１４  現在の時間
３１６  現在の仮想左手
３１８  現在の仮想右手
３２０  ターゲット画像のシーケンス
３２２  イメージングシステム
３２４  ターゲット画像
３２６  画像プロセッサ
３２８  画像に基づいた位置データ
３３０  現在の基準フレーム
３３２  以前の時間
３３４  以前の基準フレーム
３３６  データ調整装置
３３８  画像生成装置
３４０  マイクロフォン
３４２  スピーカーシステム
３４４  ヘッドフォン
４０２  入力
４０４  出力
４０６  制約識別装置
４０８  データ変調装置
４１０  フィードバック制御装置
４１１  仮想画像解析装置
４１２  制御データ生成装置
４１４  画像視覚化装置
４１６  制約の組
４１８  手データ変調装置
４２０  頭データ変調装置
４２２  修正された手位置データ
４２４  修正された頭位置データ
４２５  フィルタの組
４２６  指位置誤差
４２７  実際のデータ
４２８  相対的な手位置誤差
４３０  頭位置誤差
５００  モード
５０２  学習および較正モード
５０４  静的モード
５０６  動的モード
５０８  透過モード
６００  ユーザ
６０１  仮想現実システム
６０２  頭部装着型システム
６０４  左手袋
６０６  右手袋
６０８  眼鏡
６１０  仮想画像
７００  操作
７０２  操作
７０４  操作
７０６  操作
７０８  操作
８００  操作
８０２  操作
８０４  操作
８０６  操作
８０８  操作
８１０  操作
８１２  操作
８１４  操作
８１６  操作
９００  データ処理システム
９０２  通信フレームワーク
９０４  プロセッサユニット
９０６  メモリ
９０８  永続的な記憶装置
９１０  通信ユニット
９１２  入力／出力（Ｉ／Ｏ）ユニット
９１４  ディスプレイ
９１６  記憶デバイス
９１８  プログラムコード
９２０  コンピュータ可読媒体
９２２  コンピュータプログラム製品
９２４  コンピュータ可読記憶媒体
９２６  コンピュータ可読信号媒体
【図１】
2013214285.tif 000003
【図２】
2013214285.tif 000004
【図３】
2013214285.tif 000005
【図４】
2013214285.tif 000006
【図５】
2013214285.tif 000007
【図６】
2013214285.tif 000008
【図７】
2013214285.tif 000009
【図８】
2013214285.tif 000010
【図９】
2013214285.tif 000011
【外国語明細書】
2013214285000001.pdf
2013214285000002.pdf
2013214285000003.pdf
2013214285000004.pdf