IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ マジック リープ, インコーポレイテッドの特許一覧

特開2024-56844ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正
<>
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図1
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図2
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図3
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図4
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図5
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図6
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図7
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図8
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図9
  • 特開-ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024056844
(43)【公開日】2024-04-23
(54)【発明の名称】ユーザ相互作用システムにおけるトーテムの融合姿勢の非融合姿勢ベースのドリフト補正
(51)【国際特許分類】
   G06T 19/00 20110101AFI20240416BHJP
   G06T 7/70 20170101ALI20240416BHJP
   G06F 3/01 20060101ALI20240416BHJP
   G02B 27/02 20060101ALI20240416BHJP
【FI】
G06T19/00 600
G06T7/70 Z
G06F3/01 510
G02B27/02 Z
【審査請求】有
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2024019329
(22)【出願日】2024-02-13
(62)【分割の表示】P 2021505884の分割
【原出願日】2019-07-26
(31)【優先権主張番号】62/714,609
(32)【優先日】2018-08-03
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/818,032
(32)【優先日】2019-03-13
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】514108838
【氏名又は名称】マジック リープ, インコーポレイテッド
【氏名又は名称原語表記】Magic Leap,Inc.
【住所又は居所原語表記】7500 W SUNRISE BLVD,PLANTATION,FL 33322 USA
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【弁理士】
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【弁理士】
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【弁護士】
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】ワン シェン
(57)【要約】      (修正有)
【課題】6自由度(「6dof」)姿勢、すなわち、ユーザによって知覚される仮想オブジェクトの姿勢を定義する、トーテムを有する、ユーザ相互作用システを提供する。
【解決手段】ユーザが装着するための頭部ユニットと、ユーザが、その手に保持し、ユーザによって見られる仮想オブジェクトの場所を決定するトーテムとを有するユーザ相互作用システムであって、融合ルーチンが、EM波及びトーテムIMUデータの組み合わせに基づいて、世界フレーム内のトーテムの融合場所を生成する。融合姿勢は、センサのモデル不整合に起因して、経時的にドリフトする。非融合姿勢決定モデラは、世界フレームに対するトーテムの非融合姿勢をルーチン的に確立する。ドリフトは、融合姿勢と非融合姿勢との間の差異が所定の最大距離を上回るときに宣言される。
【選択図】図3
【特許請求の範囲】
【請求項1】
ユーザ相互作用システムであって、
トーテムであって、
トーテム本体と、
前記トーテム本体上の電磁(EM)伝送機と、
前記トーテム上に位置し、前記トーテムの移動に起因して、トーテムIMU信号を生成する、トーテム慣性測定ユニット(IMU)と
を有する、トーテムと、
頭部ユニットであって、
頭部ユニット本体と、
前記頭部ユニット本体上にあり、前記EM伝送機によって伝送されるEM波を受信するEM受信機であって、前記EM波は、前記トーテムの場所を示す、EM受信機と
を有する、頭部ユニットと、
プロセッサと、
前記プロセッサに接続される記憶デバイスと、
前記記憶デバイス上にあり、前記プロセッサによって実行可能である命令のセットであって、前記命令のセットは、
世界フレームと、
融合ルーチンであって、前記融合ルーチンは、前記EM受信機および前記トーテムIMUに接続され、前記EM波と前記トーテムIMUデータとの組み合わせに基づいて、前記世界フレーム内の前記トーテムの融合場所を生成する、融合ルーチンと、
場所補正ルーチンであって、前記場所補正ルーチンは、
リグフレームを記憶することであって、前記リグフレームは、前記頭部ユニットの接眼レンズ間に位置する数学的オブジェクトであり、オブジェクトが前記頭部ユニットに対して存在する場所を定義するための基礎としての役割を果たす、ことと、
前記リグフレームが前記世界フレームに対して取っているリグフレーム姿勢を決定するための測定を行うことと、
前記EM受信機と前記リグフレームとの間の関係に関する工場レベル較正によって提供されるような既知の付帯性質を使用して、世界に対する受信機姿勢を導出することと、
前記EM受信機とEM伝送機との間のEM関係を推定し、世界内伝送機姿勢を導出することと、
前記EM伝送機と前記トーテムIMUとの間の関係に関する前記トーテムの既知の付帯性質を使用して、世界内トーテムIMU姿勢を非融合姿勢として導出することと
を含む方法を行うように実行可能である、場所補正ルーチンと
を含む、命令のセットと、
画像データを搬送するデータソースと、
前記データソースに接続され、前記画像データを使用して、仮想オブジェクトをユーザに表示するディスプレイシステムであって、前記仮想オブジェクトの場所は、前記トーテムの前記融合場所に基づいている、ディスプレイシステムと
を備える、ユーザ相互作用システム。
【請求項2】
前記命令のセットは、
前記データソースに接続され、前記画像データを受信する入力と、前記ディスプレイシステムへの出力とを有するレンダリングエンジンであって、前記レンダリングエンジンは、前記融合場所に位置付けられる前記仮想オブジェクトを含むデータストリームを前記ディスプレイシステムに提供する、レンダリングエンジン
をさらに含む、請求項1に記載のユーザ相互作用システム。
【請求項3】
前記トーテムIMUは、前記仮想オブジェクトのジッタを低減させる、請求項1に記載のユーザ相互作用システム。
【請求項4】
前記トーテムIMUは、ジャイロスコープおよび加速度計のうちの少なくとも1つを含む、請求項1に記載のユーザ相互作用システム。
【請求項5】
前記EM受信機は、前記EM受信機に対する前記EM伝送機の6自由度(「6dof」)移動を検出する、請求項1に記載のユーザ相互作用システム。
【請求項6】
前記命令のセットは、
非融合場所決定モデラであって、前記非融合場所決定モデラは、前記頭部ユニットに対する前記トーテムの場所および前記世界フレームに対する前記頭部ユニットの場所を決定し、前記世界フレームに対する前記トーテムの非融合場所を確立する、非融合場所決定モデラと、
融合場所および前記非融合場所に接続され、前記融合場所を前記非融合場所と比較するコンパレータと、
前記コンパレータに接続され、前記融合場所が前記非融合場所から所定の距離を上回る場合のみ、ドリフトを宣言するドリフトディクレアラと、
前記ドリフトディクレアラに接続され、前記ドリフトが宣言される場合のみ、前記トーテムIMUのセンサをリセットし、前記非融合場所にマッチングさせる場所補正ルーチンと
をさらに含む、請求項1に記載のユーザ相互作用システム。
【請求項7】
前記融合ルーチンは、第1の周波数において実行し、前記非融合場所決定モデラは、前記第1の周波数と異なる第2の周波数において実行する、請求項6に記載のユーザ相互作用システム。
【請求項8】
前記所定の距離は、100mm未満である、請求項1に記載のユーザ相互作用システム。
【請求項9】
前記頭部ユニット本体上のカメラであって、前記カメラは、前記トーテムの画像を捕捉するように位置付けられる、カメラと、
前記カメラに接続され、前記トーテムの前記画像を受信する同時位置特定およびマッピング(SLAM)システムであって、前記SLAMシステムは、前記トーテムの前記画像に基づいて、非融合場所を決定する、SLAMシステムと
をさらに備える、請求項1に記載のユーザ相互作用システム。
【請求項10】
前記ディスプレイシステムは、
前記頭部ユニット本体に固着される透明導波管であって、前記透明導波管は、前記トーテムからの光を前記頭部ユニット本体を装着しているユーザの眼に通過させる、透明導波管と、
その画像データを光に変換するプロジェクタであって、前記プロジェクタからの前記光は、入射瞳において、前記導波管の中に入射し、射出瞳において、前記導波管から前記ユーザの前記眼に出射する、プロジェクタと
を含む、請求項1に記載のユーザ相互作用システム。
【請求項11】
頭部搭載可能フレームの移動を検出する頭部ユニット検出デバイス
をさらに備え、前記命令のセットは、
ディスプレイ調節アルゴリズムであって、前記ディスプレイ調節アルゴリズムは、前記頭部ユニット検出デバイスに接続され、前記頭部ユニット検出デバイスによって検出された移動に基づく測定値を受信し、設置値を計算する、ディスプレイ調節アルゴリズムと、
前記設置値に基づいて、前記ユーザの前記眼のビュー内の前記仮想オブジェクトの位置を修正するレンダリングエンジンと
を含む、請求項10に記載のユーザ相互作用システム。
【請求項12】
前記頭部ユニット検出デバイスは、
前記頭部搭載可能フレームに搭載される頭部ユニットIMUであって、前記頭部ユニットIMUは、前記頭部搭載可能フレームの移動を検出する運動センサを含む、頭部ユニットIMU
を含む、請求項11に記載のユーザ相互作用システム。
【請求項13】
前記頭部ユニットIMUは、ジャイロスコープおよび加速度計のうちの少なくとも1つを含む、請求項12に記載のユーザ相互作用システム。
【請求項14】
前記頭部ユニット検出デバイスは、
前記頭部搭載可能フレームに搭載される頭部ユニットカメラであって、前記頭部ユニットカメラは、前記頭部ユニットカメラのビュー内のオブジェクトの画像を撮影することによって、前記頭部搭載可能フレームの移動を検出する、頭部ユニットカメラ
を含み、前記命令のセットは、
前記カメラに接続され、前記オブジェクトの前記画像を受信し、前記頭部ユニット本体の姿勢位置を検出する同時位置特定およびマッピング(SLAM)システムであって、前記レンダリングエンジンは、前記姿勢位置に基づいて、前記仮想オブジェクトの前記位置を修正する、SLAMシステム
を含む、請求項11に記載のユーザ相互作用システム。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は、その全てが、参照することによってその全体として本明細書に組み込まれる、2018年8月3日に出願された米国仮特許出願第62/714,609号および2019年3月13日に出願された米国仮特許出願第62/818,032号の優先権を主張する。
【0002】
本発明は、6自由度(「6dof」)姿勢、すなわち、ユーザによって知覚される仮想オブジェクトの姿勢を定義する、トーテムを有する、ユーザ相互作用システムに関する。
【背景技術】
【0003】
現代のコンピューティングおよびディスプレイ技術は、「拡張現実」視認デバイスを含む、ユーザ相互作用システムの開発を促進している。そのような視認デバイスは、通常、ユーザの頭部に搭載可能であって、ユーザの各眼の正面に1つずつ、2つの導波管を含む場合が多い、頭部ユニット本体を伴う、頭部ユニットを有する。導波管は、実世界オブジェクトからの周囲光が導波管を通して透過し得、ユーザに実世界オブジェクトが見え得るように、透明である。各導波管はまた、プロジェクタから投影された光をユーザの個別の眼に透過させる役割を果たす。投影された光は、画像を眼の網膜上に形成する。眼の網膜は、したがって、周囲光および投影された光を受光する。ユーザには、同時に、実世界オブジェクトと、投影された光によって作成される、1つ以上の仮想オブジェクトとが見える。
【0004】
そのようなユーザ相互作用システムは、多くの場合、トーテムを含む。ユーザは、例えば、トーテムをその右手に保持し、3次元空間内で6自由度を伴って、トーテムを移動させてもよい。仮想オブジェクトは、トーテムに取り付けられており、3次元空間内のトーテムに伴って移動するように、ユーザによって知覚されてもよい、または仮想オブジェクトは、壁に衝打する光ビームまたはユーザが壁を横断して移動させる別のオブジェクトの知覚であってもよい。
【0005】
仮想オブジェクトが、トーテムに対してその現実的姿勢のままであることが重要である。例えば、トーテムが、ラケットの柄を表し、仮想オブジェクトが、ラケットのヘッドを表す場合、ラケットのヘッドは、経時的に、ラケットの柄に「取り付けられた」ままである必要がある。
【発明の概要】
【課題を解決するための手段】
【0006】
本発明は、トーテム本体と、トーテム本体上の電磁(EM)伝送機と、トーテム上に位置し、トーテムの移動に起因して、トーテムIMU信号を生成する、トーテム慣性測定ユニット(IMU)とを有する、トーテムと、頭部ユニット本体と、頭部ユニット本体上にあって、EM伝送機によって伝送されるEM波であって、トーテムの場所を示す、EM波を受信する、EM受信機とを有する、頭部ユニットと、プロセッサと、プロセッサに接続される、記憶デバイスと、記憶デバイス上にあって、プロセッサによって実行可能である、命令のセットとを含む、ユーザ相互作用システムを提供する。命令のセットは、世界フレームと、EM受信機およびトーテムIMUに接続され、EM波、頭部ユニット姿勢、およびトーテムIMUデータの組み合わせに基づいて、世界フレーム内のトーテムの融合姿勢を生成する、融合ルーチンと、頭部ユニットに対するトーテムの姿勢および世界フレームに対する頭部ユニットの姿勢を決定し、世界フレームに対するトーテムの非融合姿勢を確立する、非融合姿勢決定モデラ(modeler)と、融合姿勢決定モデラおよび非融合姿勢決定モデラに接続され、融合姿勢と非融合姿勢を比較する、コンパレータ(comparator)と、コンパレータに接続され、融合姿勢が非融合姿勢から所定の距離を上回る場合のみ、ドリフトを宣言する、ドリフトディクレアラ(declarer)と、ドリフトディクレアラに接続され、ドリフトが宣言される場合のみ、トーテムIMUの姿勢をリセットし、非融合場所にマッチングさせる、場所補正ルーチンと、画像データを搬送する、データソースと、データソースに接続され、画像データを使用して、仮想オブジェクトをユーザに表示する、ディスプレイシステムであって、仮想オブジェクトの場所は、トーテムの融合場所に基づく、ディスプレイシステムとを含む。
【0007】
本発明はまた、トーテム本体上のEM伝送機を用いて、電磁(EM)波を伝送するステップと、トーテムの移動に起因して、トーテム本体上のトーテムIMUを用いて、トーテム慣性測定ユニット(IMU)信号を生成するステップと、ユーザの頭部上の頭部ユニット本体を位置特定するステップと、頭部ユニット本体上のEM受信機によって、EM伝送機によって伝送されるEM波を受信するステップであって、EM波は、トーテムの姿勢を示す、ステップと、世界フレームを記憶するステップと、プロセッサを用いて、融合ルーチンを実行し、EM波、頭部ユニット姿勢、およびトーテムIMUデータの組み合わせに基づいて、世界フレーム内のトーテムの融合姿勢を生成するステップと、プロセッサを用いて、頭部ユニットに対するトーテムの姿勢および世界フレームに対する頭部ユニットの場所を決定し、世界フレームに対するトーテムの非融合姿勢を確立する、非融合姿勢決定モデラを実行するステップと、プロセッサを用いて、コンパレータを実行し、融合姿勢と非融合姿勢を比較するステップと、プロセッサを用いて、ドリフトディクレアラを実行し、融合姿勢が非融合姿勢から所定の姿勢を上回る場合のみ、ドリフトを宣言するステップと、プロセッサを用いて、姿勢補正ルーチンを実行し、ドリフトが宣言される場合のみ、トーテムIMUの姿勢をリセットし、非融合姿勢にマッチングさせるステップと、画像データをデータソースから受信するステップと、データソースに接続されるディスプレイシステムを用いて、画像データを使用して、仮想オブジェクトをユーザに表示するステップであって、仮想オブジェクトの場所は、トーテムの融合場所に基づく、ステップとを含む、ユーザ相互作用システムを提供する。
本発明は、例えば、以下の項目を提供する。
(項目1)
ユーザ相互作用システムであって、
トーテムであって、
トーテム本体と、
前記トーテム本体上の電磁(EM)伝送機と、
前記トーテム上に位置し、前記トーテムの移動に起因して、トーテムIMU信号を生成する、トーテム慣性測定ユニット(IMU)と
を有する、トーテムと、
頭部ユニットであって、
頭部ユニット本体と、
前記頭部ユニット本体上にあって、前記EM伝送機によって伝送されるEM波を受信するEM受信機であって、前記EM波は、前記トーテムの場所を示す、EM受信機と
を有する、頭部ユニットと、
プロセッサと、
前記プロセッサに接続される記憶デバイスと、
命令のセットであって、前記命令のセットは、
世界フレームと、
融合ルーチンであって、前記融合ルーチンは、前記EM受信機および前記トーテムIMUに接続され、前記EM波、前記頭部ユニット姿勢、および前記トーテムIMUデータの組み合わせに基づいて、前記世界フレーム内の前記トーテムの融合姿勢を生成する、融合ルーチンと、
非融合姿勢決定モデラであって、前記非融合姿勢決定モデラは、前記頭部ユニットに対する前記トーテムの姿勢および前記世界フレームに対する前記頭部ユニットの姿勢を決定し、前記世界フレームに対する前記トーテムの非融合姿勢を確立する、非融合姿勢決定モデラと、
融合姿勢決定モデラおよび前記非融合姿勢決定モデラに接続され、融合姿勢と非融合姿勢を比較するコンパレータと、
前記コンパレータに接続され、前記融合姿勢が前記非融合姿勢から所定の距離を上回る場合のみ、ドリフトを宣言するドリフトディクレアラと、
前記ドリフトディクレアラに接続され、前記ドリフトが宣言される場合のみ、前記トーテムIMUの姿勢をリセットし、前記非融合場所にマッチングさせる場所補正ルーチンと、
画像データを搬送するデータソースと、
前記データソースに接続され、前記画像データを使用して、仮想オブジェクトをユーザに表示するディスプレイシステムであって、前記仮想オブジェクトの場所は、前記トーテムの融合場所に基づく、ディスプレイシステムと
を含む、前記記憶デバイス上にあって、前記プロセッサによって実行可能である、命令のセットと
を備える、ユーザ相互作用システム。
(項目2)
前記データチャネルに接続され、前記画像データを受信する入力と、前記ディスプレイシステムへの出力とを有するレンダリングエンジンであって、前記レンダリングエンジンは、前記融合姿勢に位置付けられる前記仮想オブジェクトを含むデータストリームを前記ディスプレイシステムに提供する、レンダリングエンジン
をさらに備える、項目1に記載のユーザ相互作用システム。
(項目3)
前記トーテムIMUは、前記仮想オブジェクトのジッタを低減させる、項目1に記載のユーザ相互作用システム。
(項目4)
前記トーテムIMUは、ジャイロスコープおよび加速度計のうちの少なくとも1つを含む、項目1に記載のユーザ相互作用システム。
(項目5)
前記融合ルーチンは、第1の周波数において実行し、前記非融合姿勢決定モデラは、前記第1の周波数と異なる第2の周波数において実行する、項目1に記載のユーザ相互作用システム。
(項目6)
前記EM受信機は、前記EM受信機に対する前記EM伝送機の6自由度(「6dof」
)移動を検出する、項目1に記載のユーザ相互作用システム。
(項目7)
前記所定の距離は、100mm未満である、項目1に記載のユーザ相互作用システム。(項目8)
前記頭部ユニット本体上のカメラであって、前記カメラは、前記トーテムの画像を捕捉するように位置付けられる、カメラと、
前記カメラに接続され、前記トーテムの画像を受信する同時位置特定およびマッピング(SLAM)システムであって、前記SLAMシステムは、前記トーテムの画像に基づいて、前記非融合姿勢を決定する、SLAMシステムと
をさらに備える、項目1に記載のユーザ相互作用システム。
(項目9)
前記ディスプレイシステムは、
透明導波管であって、前記透明導波管は、前記トーテムからの光を前記頭部ユニット本体を装着しているユーザの眼に通過させる前記頭部ユニット本体に固着される、透明導波管と、
その画像データを光に変換するプロジェクタであって、前記プロジェクタからの光は、入射瞳において、前記導波管の中に入射し、射出瞳において、前記導波管から前記ユーザの眼に出射する、プロジェクタと
を含む、項目1に記載のユーザ相互作用システム。
(項目10)
前記頭部搭載可能フレームの移動を検出する頭部ユニット検出デバイス
をさらに備え、前記命令のセットは、
ディスプレイ調節アルゴリズムであって、前記ディスプレイ調節アルゴリズムは、前記頭部ユニット検出デバイスに接続され、前記頭部ユニット検出デバイスによって検出された移動に基づいて、測定値を受信し、設置値を計算する、ディスプレイ調節アルゴリズムと、
前記設置値に基づいて、前記眼のビュー内の前記仮想オブジェクトの位置を修正するレンダリングエンジンと
を含む、項目1に記載のユーザ相互作用システム。
(項目11)
前記頭部ユニット検出デバイスは、
前記頭部搭載可能フレームに搭載される頭部ユニットIMUであって、前記頭部ユニットIMUは、前記頭部搭載可能フレームの移動を検出する運動センサを含み、前記頭部ユニットIMUは、ジャイロスコープおよび加速度計のうちの少なくとも1つを含む、頭部ユニットIMU
を含む、項目10に記載のユーザ相互作用システム。
(項目12)
前記頭部ユニット検出デバイスは、
前記頭部搭載可能フレームに搭載される頭部ユニットカメラであって、前記頭部ユニットカメラは、前記頭部ユニットカメラのビュー内のオブジェクトの画像を撮影することによって、前記頭部搭載可能フレームの移動を検出する、頭部ユニットカメラ を含み、前記命令のセットは、
前記カメラに接続され、前記オブジェクトの画像を受信し、前記頭部ユニット本体の姿勢位置を検出する同時位置特定およびマッピング(SLAM)システムであって、前記レンダリングエンジンは、前記姿勢位置に基づいて、前記仮想オブジェクトの位置を修正する、SLAMシステム
を含む、項目10に記載のユーザ相互作用システム。
(項目13)
前記場所補正ルーチンは、
リグフレームを記憶することであって、前記リグフレームは、前記頭部ユニットの接眼
レンズ間に位置する数学的オブジェクトであり、オブジェクトが前記頭部ユニットに対して存在する場所を定義するための基礎としての役割を果たす、ことと、
前記リグフレームが前記世界フレームに対して取っているリグフレーム姿勢を決定するための測定を行うことと、
前記EM受信機と前記リグフレームとの間の関係に関する工場レベル較正によって提供されるような既知の付帯性質を使用して、世界に対する受信機姿勢を導出することと、
前記EM受信機とEM伝送機との間のEM関係を推定し、世界内伝送機姿勢を導出することと、
前記EM伝送機と前記トーテムIMUとの間の関係に関する前記トーテムの既知の付帯性質を使用して、世界内トーテムIMU姿勢を非融合姿勢として導出することと
を含む方法を行うように実行可能である、項目1に記載のユーザ相互作用システム。
(項目14)
ユーザ相互作用システムであって、
トーテム本体上のEM伝送機を用いて、電磁(EM)波を伝送することと、
トーテムの移動に起因して、前記トーテム本体上のトーテムIMUを用いて、トーテム慣性測定ユニット(IMU)信号を生成することと、
ユーザの頭部上の頭部ユニット本体を位置特定することと、
前記頭部ユニット本体上のEM受信機によって、前記EM伝送機によって伝送される前記EM波を受信することであって、前記EM波は、前記トーテムの姿勢を示す、ことと、
世界フレームを記憶することと、
プロセッサを用いて、融合ルーチンを実行し、前記EM波、頭部ユニット姿勢、および前記トーテムIMUデータの組み合わせに基づいて、前記世界フレーム内の前記トーテムの融合姿勢を生成することと、
前記プロセッサを用いて、前記頭部ユニットに対する前記トーテムの姿勢および前記世界フレームに対する前記頭部ユニットの場所を決定し、前記世界フレームに対する前記トーテムの非融合姿勢を確立する、非融合姿勢決定モデラを実行することと、
前記プロセッサを用いて、コンパレータを実行し、前記融合姿勢と前記非融合姿勢を比較することと、
前記プロセッサを用いて、ドリフトディクレアラを実行し、前記融合姿勢が前記非融合姿勢から所定の姿勢を上回る場合のみ、ドリフトを宣言することと、
前記プロセッサを用いて、姿勢補正ルーチンを実行し、前記ドリフトが宣言される場合のみ、前記トーテムIMUの姿勢をリセットし、前記非融合姿勢にマッチングさせることと、
画像データをデータソースから受信することと、
前記データソースに接続されるディスプレイシステムを用いて、前記画像データを使用して、仮想オブジェクトをユーザに表示することであって、前記仮想オブジェクトの場所は、前記トーテムの融合姿勢に基づく、ことと
を含む、ユーザ相互作用システム。
【図面の簡単な説明】
【0008】
本発明はさらに、付随の図面を参照して、一例として説明される。
【0009】
図1図1は、本発明の実施形態による、ユーザ相互作用システムを図示する、斜視図である。
【0010】
図2図2は、頭部ユニットに関連するようなユーザ相互作用システムのコンポーネントおよび頭部ユニットのための視覚アルゴリズムを図示する、ブロック図である。
【0011】
図3図3は、トーテムに関連するようなユーザ相互作用システムおよびトーテムのための視覚アルゴリズムのブロック図である。
【0012】
図4図4は、ユーザに、実および仮想オブジェクトがどのように見え、知覚されるかを図示する、正面図である。
【0013】
図5図5は、仮想オブジェクトがユーザのビュー内でドリフトした後の、図4に類似する図である。
【0014】
図6図6は、融合場所の経時的ドリフトを図示する、斜視図である。
【0015】
図7図7は、ドリフトが距離計算を使用して補正され得る方法を図示する、グラフである。
【0016】
図8図8は、融合場所と非融合場所との間の差異を検出することによってドリフトが補正される方法を図示する、グラフである。
【0017】
図9図9は、ドリフトが補正される方法を図示する、斜視図である。
【0018】
図10図10は、本発明の一実施形態による、本発明のシステム内で用途を見出し得る、コンピュータの形態における機械のブロック図である。
【発明を実施するための形態】
【0019】
付随の図面の図1は、ユーザ10と、本発明の実施形態による、ユーザ相互作用システム12と、テーブルの形態における実世界オブジェクト14と、図の視点から不可視であるが、ユーザ10には可視である、仮想オブジェクト16とを図示する。
【0020】
ユーザ相互作用システム12は、頭部ユニット18と、ベルトパック20と、ネットワーク22と、サーバ24とを含む。
【0021】
頭部ユニット18は、頭部ユニット本体26と、ディスプレイシステム28とを含む。頭部ユニット本体26は、ユーザの頭部10にわたって適合する、形状を有する。ディスプレイシステム28は、頭部ユニット本体26に固着される。
【0022】
ベルトパック20は、プロセッサと、プロセッサに接続される、記憶デバイスとを有する。視覚アルゴリズムが、記憶デバイス上に記憶され、プロセッサによって実行可能である。ベルトパック20は、ケーブル接続30を用いて、ディスプレイシステム28に通信可能に接続される。ベルトパック20はさらに、ベルトパック20が、ネットワーク22とのリンク32を経由して、無線で接続することを可能にする、ネットワークインターフェースデバイスを含む。サーバ24は、ネットワーク22に接続される。
【0023】
使用時、ユーザ10は、頭部ユニット本体26をその頭部に固着させる。ディスプレイシステム28は、ユーザ10に、導波管を通して、実世界オブジェクト14が見え得るように、透明である、光学導波管(図示せず)を含む。
【0024】
ベルトパック20は、ネットワーク22およびリンク32を経由して、画像データをサーバ24からダウンロードしてもよい。ベルトパック20は、画像データを、ケーブル接続30を通して、ディスプレイシステム28に提供する。ディスプレイシステム28は、画像データに基づいて光を作成する、1つ以上のプロジェクタを有する。光は、1つ以上の光学導波管を通して、ユーザ10の眼に伝搬する。各導波管は、眼に仮想オブジェクト16がディスプレイシステム28の背後のある距離において見えるように、光を個別の眼の網膜上の特定の焦点距離に作成する。眼には、したがって、仮想オブジェクト16が3次元空間内に見える。加えて、若干異なる画像が、ユーザ10の脳が3次元空間内の仮想オブジェクト16を知覚するように、眼毎に作成される。ユーザ10には、したがって、3次元空間内に仮想オブジェクト16で拡張された実世界オブジェクト14が見える。
【0025】
ユーザ相互作用システム12はさらに、トーテム34を含む。使用時、ユーザ10は、トーテム34をその手のうちの一方に保持する。仮想オブジェクト16は、トーテム34の位置付けに基づいて、3次元空間内に位置付けられる。一例として、トーテム34は、ラケットの柄であってもよく、仮想オブジェクト16は、ラケットのヘッドを含んでもよい。ユーザ10は、トーテム34を3次元空間内で6自由度において移動させることができる。トーテム34は、したがって、実世界オブジェクト14および頭部ユニット本体26に対して3次元空間内を移動する。頭部ユニット18およびベルトパック20内の種々のコンポーネントは、トーテム34の移動を追跡し、仮想オブジェクト16をトーテム34とともに移動させる。ラケットのヘッドは、したがって、ユーザ10のビュー内でハンドルに取り付けられたままである。
【0026】
図2は、視覚アルゴリズム38とともに、ディスプレイシステム28をさらに詳細に図示する。視覚アルゴリズム38は、主に、図1におけるベルトパック20内に常駐する。他の実施形態では、視覚アルゴリズム38は、頭部ユニット内に全体的に常駐してもよい、または頭部ユニットとベルトパックとの間に分裂されてもよい。図2はさらに、データソース40を含む。本実施例では、データソース40は、ベルトパック20の記憶デバイス上に記憶される、画像データを含む。画像データは、例えば、仮想オブジェクト16をレンダリングするために使用され得る、3次元画像データであってもよい。代替実施形態では、画像データは、2または3次元で移動するビデオの作成を可能にする、時系列画像データであってもよく、その目的として、トーテムとの結び付きを有する、実世界オブジェクト上に位置する、またはユーザがその頭部を移動させると、ユーザの正面の固定位置にあってもよい。
【0027】
視覚アルゴリズム38は、レンダリングエンジン42と、立体視分析器44と、ディスプレイ調節アルゴリズム46と、同時位置特定およびマッピング(SLAM)システム48とを含む。
【0028】
レンダリングエンジン42は、データソース40およびディスプレイ調節アルゴリズム46に接続される。レンダリングエンジン42は、種々のシステム、本実施例では、ディスプレイ調節アルゴリズム46からの入力を受信し、ディスプレイ調節アルゴリズム46に基づいて、画像データをユーザ10によって視認されることになるフレーム内に位置付けることが可能である。ディスプレイ調節アルゴリズム46は、SLAMシステム48に接続される。SLAMシステム48は、画像データを受信し、画像データの画像内のオブジェクトを決定する目的のために、画像データを分析し、オブジェクトの場所を画像データ内に記録することが可能である。
【0029】
立体視分析器44は、レンダリングエンジン42に接続される。立体視分析器44は、レンダリングエンジン42によって提供されるデータストリームから、左および右画像データセットを決定することが可能である。
【0030】
ディスプレイシステム28は、左および右プロジェクタ48Aおよび48Bと、左および右導波管50Aおよび50Bと、検出デバイス52とを含む。左および右プロジェクタ48Aおよび48Bは、電力供給源に接続される。各プロジェクタ48Aまたは48Bは、画像データが個別のプロジェクタ48Aまたは48Bに提供されるための個別の入力を有する。個別のプロジェクタ48Aまたは48Bは、給電されると、光を2次元パターンで生成し、光をそこから発出する。左および右導波管50Aおよび50Bは、それぞれ、左および右プロジェクタ48Aおよび48Bからの光を受光するように位置付けられる。左および右導波管50Aおよび50Bは、透明導波管である。
【0031】
検出デバイス52は、頭部ユニット慣性運動ユニット(IMU)60と、1つ以上の頭部ユニットカメラ62とを含む。頭部ユニットIMU60は、1つ以上のジャイロスコープと、1つ以上の加速度計とを含む。ジャイロスコープおよび加速度計は、典型的には、半導体チップ内に形成され、3つの直交軸に沿った移動と、3つの直交軸を中心とする回転とを含む、頭部ユニットIMU60および頭部ユニット本体26の移動を検出することが可能である。
【0032】
頭部ユニットカメラ62は、画像を頭部ユニット本体26の周囲の環境から継続的に捕捉する。画像は、相互に比較され、頭部ユニット本体26およびユーザの頭部10の移動を検出することができる。
【0033】
SLAMシステム48は、頭部ユニットカメラ62に接続される。ディスプレイ調節アルゴリズム46は、頭部ユニットIMU60に接続される。当業者は、検出デバイス52と視覚アルゴリズム38との間の接続が、ハードウェア、ファームウェア、およびソフトウェアの組み合わせを通して遂行されることを理解されるであろう。視覚アルゴリズム38のコンポーネントは、サブルーチンまたはコールを通して相互にリンクされる。
【0034】
使用時、ユーザ10は、頭部ユニット本体26をその頭部に搭載する。頭部ユニット本体26のコンポーネントは、例えば、ユーザの頭部10の背面の周囲に巻着する、ストラップ(図示せず)を含んでもよい。左および右導波管50Aおよび50Bは、次いで、ユーザ10の左および右眼120Aおよび120Bの正面に位置する。
【0035】
レンダリングエンジン42は、画像データをデータソース40から受信する。レンダリングエンジン42は、画像データを立体視分析器44の中に入力する。画像データは、図1における仮想オブジェクト16の3次元画像データである。立体視分析器44は、画像データを分析し、画像データに基づいて、左および右画像データセットを決定する。左および右画像データセットは、ユーザ10に3次元レンダリングの知覚を与える目的のために、相互に若干異なる、2次元画像を表す、データセットである。本実施形態では、画像データは、経時的に変化しない、静的データセットである。
【0036】
立体視分析器44は、左および右画像データセットを左および右プロジェクタ48Aおよび48Bの中に入力する。左および右プロジェクタ48Aおよび48Bは、次いで、左および右光パターンを作成する。ディスプレイシステム28のコンポーネントは、平面図に示されるが、左および右パターンは、正面立面図に示されるとき、2次元パターンであることを理解されたい。各光パターンは、複数のピクセルを含む。例証目的のために、ピクセルのうちの2つからの光線124Aおよび126Aが、左プロジェクタ48Aから出射し、左導波管50Aに入射するように示される。光線124Aおよび126Aは、左導波管50Aの側面から反射する。光線124Aおよび126Aは、左導波管50A内で左から右に内部反射を通して伝搬することが示されるが、光線124Aおよび126Aはまた、屈折性および反射性システムを使用して、紙面の向こう側への方向にも伝搬することを理解されたい。
【0037】
光線124Aおよび126Aは、瞳孔128Aを通して、左光導波管50Aから出射し、次いで、左眼120Aの瞳孔130Aを通して、左眼120Aに入射する。光線124Aおよび126Aは、次いで、左眼120Aの網膜132Aに当たる。このように、左光パターンは、左眼120Aの網膜132Aに当たる。ユーザ10は、網膜132A上に形成されるピクセルが、ユーザ10が左眼120Aに対向する左導波管50Aの側のある距離にあると知覚する、ピクセル134Aおよび136Aであるという知覚を与えられる。深度知覚は、光の焦点距離を操作することによって作成される。
【0038】
同様に、立体視分析器44は、右画像データセットを右プロジェクタ48Bの中に入力する。右プロジェクタ48Bは、光線124Bおよび126Bの形態におけるピクセルによって表される、右光パターンを伝送する。光線124Bおよび126Bは、右導波管50B内で反射し、瞳孔128Bを通して出射する。光線124Bおよび126Bは、次いで、右眼120Bの瞳孔130Bを通して入射し、右眼120Bの網膜132Bに当たる。光線124Bおよび126Bのピクセルは、右導波管50Bの背後のピクセル134Bおよび136Bとして知覚される。
【0039】
網膜132Aおよび132B上に作成されたパターンは、左および右画像として個々に知覚される。左および右画像は、立体視分析器44の機能に起因して、相互に若干異なる。左および右画像は、ユーザ10の頭では、3次元レンダリングとして知覚される。
【0040】
述べられたように、左および右導波管50Aおよび50Bは、透明である。眼120Aおよび120Bに対向する左および右導波管50Aおよび50Bの側の実在のオブジェクトからの光は、左および右導波管50Aおよび50Bを通して投影され、網膜132Aおよび132Bに当たることができる。特に、図1における実世界オブジェクト14からの光は、ユーザ10に実世界オブジェクト14が見え得るように、網膜132Aおよび132Bに当たる。加えて、ユーザ10には、トーテム34が見え得、拡張現実が、作成され、実世界オブジェクト14およびトーテム34が、組み合わせてユーザ10によって知覚される、左および右画像に起因して、ユーザ10によって知覚される仮想オブジェクト16の3次元レンダリングで拡張される。
【0041】
頭部ユニットIMU60は、ユーザ10の頭部のあらゆる移動を検出する。ユーザ10が、例えば、その頭部を反時計回りに移動させ、同時に、その身体をその頭部とともに右に向かって移動させる場合、そのような移動は、頭部ユニットIMU60内のジャイロスコープおよび加速度計によって検出されるであろう。頭部ユニットIMU60は、ジャイロスコープおよび加速度計からの測定値をディスプレイ調節アルゴリズム46に提供する。ディスプレイ調節アルゴリズム46は、設置値を計算し、設置値をレンダリングエンジン42に提供する。レンダリングエンジン42は、データソース40から受信された画像データを修正し、ユーザ10の頭部の移動を補償する。レンダリングエンジン42は、ユーザ10への表示のために、修正された画像データを立体視分析器44に提供する。
【0042】
頭部ユニットカメラ62は、ユーザ10がその頭部を移動させるにつれて、画像を継続的に捕捉する。SLAMシステム48は、画像を分析し、画像内のオブジェクトの画像を識別する。SLAMシステム48は、オブジェクトの移動を分析し、頭部ユニット本体26の姿勢位置を決定する。SLAMシステム48は、姿勢位置をディスプレイ調節アルゴリズム46に提供する。ディスプレイ調節アルゴリズム46は、姿勢位置を使用して、ディスプレイ調節アルゴリズム46がレンダリングエンジン42に提供する、設置値をさらに精緻化する。レンダリングエンジン42は、したがって、頭部ユニットIMU60内の運動センサと頭部ユニットカメラ62によって撮影された画像の組み合わせに基づいて、データソース40から受信された画像データを修正する。実践的実施例として、ユーザ10が、その頭部を右に回転させる場合、仮想オブジェクト16の場所は、ユーザ10の視野内で左に回転し、したがって、ユーザ10に、仮想オブジェクト16の場所が実世界オブジェクト14およびトーテム34に対して定常のままであるという印象を与える。
【0043】
図3は、頭部ユニット18、トーテム34、および視覚アルゴリズム38のさらなる詳細を図示する。頭部ユニット18はさらに、頭部ユニット本体26に固着される、電磁(EM)受信機150を含む。ディスプレイシステム28、頭部ユニットカメラ62、およびEM受信機150は、頭部ユニット本体26に対して固定位置に搭載される。ユーザ10が、その頭部を移動させる場合、頭部ユニット本体26は、ユーザ10の頭部とともに移動し、ディスプレイシステム28、頭部ユニットカメラ62、およびEM受信機150は、頭部ユニット本体26とともに移動する。
【0044】
トーテム34は、トーテム本体152と、EM伝送機154と、トーテムIMU156とを有する。EM伝送機154およびトーテムIMU156は、トーテム本体152に対して固定位置に搭載される。ユーザ10は、トーテム本体152を保持し、ユーザ10がトーテム本体152を移動させると、EM伝送機154およびトーテムIMU156は、トーテム本体152とともに移動する。EM伝送機154は、EM波を伝送することが可能であって、EM受信機150は、EM波を受信することが可能である。トーテムIMU156は、1つ以上のジャイロスコープと、1つ以上の加速度計とを有する。ジャイロスコープおよび加速度計は、典型的には、半導体チップ内に形成され、3つの直交軸に沿った移動および3つの直交軸を中心とする回転を含む、トーテムIMU156およびトーテム本体152の移動を検出することが可能である。
【0045】
視覚アルゴリズム38はさらに、図2を参照して説明される、データソース40、レンダリングエンジン42、立体視分析器44、およびSLAMシステム48に加え、融合ルーチン160と、非融合姿勢決定モデラ162と、コンパレータ164と、ドリフトディクレアラ166と、姿勢補正ルーチン168と、逐次制御器170とを含む。
【0046】
頭部ユニットカメラ62は、実世界オブジェクト14の画像を捕捉する。実世界オブジェクト14の画像は、図2を参照して説明されるように、SLAMシステム48によって処理され、世界フレーム172を確立する。SLAMシステム48が世界フレーム172を確立する方法の詳細は、図面を不明瞭にしないように、図3に示されない。
【0047】
EM伝送機154は、EM受信機150によって受信される、EM波を伝送する。EM受信機150によって受信される、EM波は、EM伝送機154の姿勢または姿勢の変化を示す。EM受信機150は、EM波のデータを融合ルーチン160の中に取り込む。
【0048】
トーテムIMU156は、トーテム本体152の移動を継続的に監視する。トーテムIMU156からのデータは、融合ルーチン160の中に取り込まれる。
【0049】
逐次制御器170は、融合ルーチン160を250Hzの周波数で実行する。融合ルーチン160は、EM受信機150からのデータとトーテムIMU156およびSLAMシステム48からのデータを組み合わせる。EM受信機150によって受信される、EM波は、6自由度(「6dof」)において、EM受信機150に対するEM伝送機154の姿勢を比較的に正確に表す、データを含む。しかしながら、EM測定雑音に起因して、測定されたEM波は、EM受信機150に対するEM伝送機154の姿勢を正確に表さない場合がある。EM測定雑音は、図1における仮想オブジェクト16のジッタをもたらし得る。トーテムIMU156からのデータを組み合わせる目的は、ジッタを低減させることである。融合ルーチン160は、融合姿勢174を世界フレーム172内に提供する。融合姿勢174は、データソース40からの画像データを使用して図1における仮想オブジェクト16の姿勢を決定する目的のために、レンダリングエンジン42によって使用される。
【0050】
図4に示されるように、仮想オブジェクト16は、トーテム34に対して正しい姿勢に示される。さらに、ユーザ10が、トーテム34を移動させる場合、仮想オブジェクト16は、最小量のジッタを伴って、トーテム34とともに移動する。
【0051】
トーテムIMU156は、本質的に、6自由度において、加速および角速度を測定する。加速および角速度は、トーテムIMU156の場所および配向を決定するように統合される。統合誤差に起因して、融合姿勢174は、経時的にドリフトし得る。
【0052】
図5は、仮想オブジェクト16がトーテム34に対するその正しい姿勢からドリフトしたことを図示する。ドリフトは、いわゆる「モデル不整合」、すなわち、物理的量(例えば、6dof、加速、および角速度)と実際に測定された信号(EM波測定値およびIMU信号等)との間の関係を説明する、不完全な数学的モデルによって生じ得る。また、そのようなドリフトは、融合アルゴリズムを発散させる状態にさえつながり得る、高動的運動に関して増幅され得る(すなわち、仮想オブジェクトは、実際のオブジェクトから「吹き飛ばされた」ようになるであろう)。本実施例では、仮想オブジェクト16は、トーテム34に対して右にドリフトしている。図3における融合姿勢174は、トーテム34が実際に位置する場所より右に位置するというシステムによる確信に基づく。融合データは、したがって、仮想オブジェクト16が図4に示されるようにトーテム34に対するその正しい場所に再び配置されるように、補正されている。
【0053】
図3では、逐次制御器170は、非融合姿勢決定モデラ162を240Hzの周波数で実行する。非融合姿勢決定モデラ162は、したがって、融合ルーチン160に対して非同期して実行する。本実施例では、非融合姿勢決定モデラ162は、SLAMシステム48を利用して、トーテム34の場所を決定する。他のシステムは、他の技法を使用して、トーテム34の場所を決定してもよい。
【0054】
頭部ユニットカメラ62は、実世界オブジェクト14等の実世界オブジェクトの画像とともに、トーテム34の画像をルーチン的に捕捉する。頭部ユニットカメラ62によって捕捉される、画像は、SLAMシステム48の中に取り込まれる。SLAMシステム48はまた、実世界オブジェクト14等の実世界オブジェクトの場所を決定することに加え、トーテム34の場所を決定する。したがって、SLAMシステム48は、頭部ユニット18に対するトーテム34の関係180を確立する。SLAMシステム48はまた、関係180を確立するために、EM受信機150からのデータに依拠する。
【0055】
SLAMシステム48はまた、世界フレーム172に対する頭部ユニットの関係182を確立する。前述のように、融合ルーチン60は、SLAMシステム48からの入力を受信する。融合ルーチンは、頭部ユニットと世界フレームの関係182、すなわち、頭部姿勢を、トーテム34の姿勢の融合モデルの計算の一部として使用する。
【0056】
頭部ユニット18に対するトーテム34の相対的姿勢は、EM双極子モデルをEM受信機150による測定値から求めることによって確立される。2つの関係180および182が、したがって、世界フレーム172内のトーテム34の姿勢を確立する。トーテム34および世界フレーム172の関係は、世界フレーム172内に非融合姿勢184として記憶される。
【0057】
コンパレータ164は、非融合姿勢決定モデラ162とともに同期して実行する。コンパレータ164は、融合姿勢174と非融合場所184を比較する。コンパレータ164は、次いで、融合姿勢174と非融合姿勢184との間の差異をドリフトディクレアラ166の中に取り込む。ドリフトディクレアラ166は、融合姿勢174と非融合姿勢184との間の差異が視覚アルゴリズム38内に記憶される所定の最大距離188を上回る場合のみ、ドリフトを宣言する。所定の最大距離188は、典型的には、100mm未満、好ましくは、30mm、20mm、またはより好ましくは、10mmのオーダーであって、センサ融合システムのデータ分析を通して決定または調整される。ドリフトディクレアラ166は、融合姿勢174と非融合姿勢184との間の差異が所定の最大距離188未満である場合、ドリフトを宣言しない。
【0058】
ドリフトディクレアラ166が、ドリフトを宣言すると、ドリフトディクレアラ166は、姿勢リセットルーチン168に入る。姿勢リセットルーチン168は、非融合姿勢184を使用して、融合ルーチン160内の融合姿勢174をリセットし、したがって、ドリフトは、停止され、融合ルーチン160は、ドリフトが排除された状態で姿勢追跡を再開する。
【0059】
図6は、リグフレーム196と、世界フレーム172と、融合姿勢174との間の関係を図示する。リグフレーム196は、頭部ユニット18の頭部フレームを表す、数学的オブジェクトである。リグフレーム196は、導波管50Aと50Bとの間に位置する。高動的運動シナリオでは、融合姿勢174は、実際のEM受信機測定値の不完全なモデル化に起因して、経時的に(T1;T2;T3;T4)ドリフトし得る。融合姿勢174は、最初に、トーテム34の実際の姿勢を表すが、そのような高動的運動シナリオでは、徐々に、トーテム34の実際の姿勢から経時的にさらにドリフトするにつれて、トーテム34の実際の姿勢を表すことに失敗し得る。
【0060】
図7は、ドリフトを補正する1つの方法を図示する。図7に図示される方法は、距離ベースのユーザドリフト検出閾値を有する。一例として、トーテム34が、頭部ユニット18から2メートルを上回って離れる場合、ユーザ10がトーテム34をそのような距離に保持することは、不可能であって、ドリフトが、宣言される。ユーザ10が、例えば、その腕を0.5メートル延在させることができる場合、システムは、ドリフトがさらに1.5メートルに到達したときのみ、ドリフトを宣言するであろう。そのような大ドリフトは、望ましくない。ドリフトがより迅速に宣言される、システムが、より望ましい。
【0061】
図8は、ドリフトが図3における実施形態に従って宣言される、様式を図示する。図3を参照して記載されるように、非融合姿勢決定モデラ162は、非融合姿勢184を240Hzの周波数で計算する。上記に述べられたように、ドリフトは、融合姿勢174と非融合場所184との間の差異が、上記に説明されるように、100mmまたはそれ未満である場合、宣言され得る。t1では、例えば、100mmのシステム誤差検出閾値に到達し、ドリフトが、宣言される。t2では、ドリフトは、直ちに補正された。ドリフトは、したがって、図8におけるシステムでは、図7のシステムより小さい距離誤差に関して補正されることができる。加えて、ドリフトは、再び、t3において補正されてもよい。ドリフトは、したがって、図8のシステムでは、図7のシステムより頻繁に補正されることができる。
【0062】
図9は、ドリフトが補正される方法を示す。Aでは、関係が、世界フレーム172とリグフレーム196との間に確立される。リグフレーム196は、EM受信機150と同一位置に位置しない。工場較正に起因して、リグフレーム196に対するEM受信機150の場所は、既知である。Bでは、調節が、行われ、EM受信機150の場所に対するリグフレーム196を計算する。Cでは、推定が、EM伝送機154に対するEM受信機150の場所から行われる。上記に述べられたように、そのような推定は、SLAMシステム48を使用して行われてもよい。工場較正に起因して、EM伝送機154の場所は、トーテムIMU156の場所に対して既知である。Dでは、調節が、行われ、EM伝送機154に対するトーテムIMU156の場所を決定する。A、B、C、およびDにおいて行われる計算は、したがって、世界フレーム172内のトーテムIMU156の場所を確立する。トーテムIMU156の姿勢は、次いで、計算されるような世界フレーム172内のトーテムIMU156の場所に基づいて、リセットされることができる。
【0063】
図10は、機械に本明細書で議論される方法論のうちの任意の1つ以上のものを実施させるための命令のセットがいくつかの実施形態に従って実行され得る、コンピュータシステム900の例示的形態における機械の概略表現を示す。代替実施形態では、機械は、独立型デバイスとして動作する、または他の機械に接続(例えば、ネットワーク化)されてもよい。さらに、単一機械のみが、図示されるが、用語「機械」はまた、個々にまたはともに、命令のセット(または複数のセット)を実行し、本明細書で議論される方法論のうちの任意の1つ以上のものを実施する、機械の任意の集合を含むものと捉えられるものとする。
【0064】
例示的コンピュータシステム900は、プロセッサ902(例えば、中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、または両方)と、メインメモリ904(例えば、読取専用メモリ(ROM)、フラッシュメモリ、動的ランダムアクセスメモリ(DRAM)、例えば、同期DRAM(SDRAM)またはRambus DRAM(RDRAM)等)と、静的メモリ906(例えば、フラッシュメモリ、静的ランダムアクセスメモリ(SRAM)等)とを含み、これらは、バス908を介して、相互に通信する。
【0065】
コンピュータシステム900はさらに、ディスクドライブユニット916と、ネットワークインターフェースデバイス920とを含んでもよい。
【0066】
ディスクドライブユニット916は、その上に本明細書に説明される方法論または機能のうちの任意の1つ以上のものを具現化する1つ以上の命令のセット924(例えば、ソフトウェア)が記憶される、機械可読媒体922を含む。ソフトウェアはまた、コンピュータシステム900、メインメモリ904、およびプロセッサ902によるその実行の間、完全または少なくとも部分的に、メインメモリ904および/またはプロセッサ902内に常駐し、また、機械可読媒体を構成してもよい。
【0067】
ソフトウェアはさらに、ネットワークインターフェースデバイス920を介して、ネットワーク928を経由して、伝送または受信されてもよい。
【0068】
コンピュータシステム900は、プロジェクタを駆動し、レーザ光を生成するために使用される、レーザドライバチップ950を含む。レーザドライバチップ950は、その独自のデータ記憶装置960と、その独自のプロセッサ962とを含む。
【0069】
機械可読媒体922は、例示的実施形態では、単一媒体であるように示されるが、用語「機械可読媒体」は、1つ以上の命令のセットを記憶する、単一媒体または複数の媒体(例えば、集中型または分散型データベースおよび/または関連付けられるキャッシュおよびサーバ)を含むものと捉えられるべきである。用語「機械可読媒体」はまた、機械による実行のための命令のセットを記憶、エンコーディング、または搬送することが可能であって、機械に本発明の方法論のうちの任意の1つ以上のものを実施させる、任意の媒体を含むものと捉えられるものとする。用語「機械可読媒体」は、故に、限定ではないが、ソリッドステートメモリ、光学および磁気媒体、および搬送波信号を含むものと捉えられるものとする。
【0070】
ある例示的実施形態が、説明され、付随の図面に示されたが、そのような実施形態は、単に、本発明の例証であって、制限ではなく、本発明は、修正が当業者に想起され得るため、図示および説明される具体的構造および配列に制限されないことを理解されたい。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10