(57)【要約】【解決手段】角度の誤差を補正するために、追跡対象オブジェクトの参照フレームにおける、追跡対象オブジェクトに対応する加速度データが取得される。追跡対象尾オブジェクトの位置データが位置センサから取得され、取得された位置データから位置センサ加速度データが算出される。加速度データは、回転推定量を用いて、位置センサ参照フレームに変換される。変換された加速度データと位置センサ加速度データとの間の誤差の量が決定される。決定された誤差の量に応じて、回転推定量が更新される。【選択図】図５
2012511999.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトを追跡するときに、回転角度の誤差を補償する方法であって、
前記オブジェクトの参照フレームにおける、追跡される前記オブジェクトに対応する慣性データを取得するステップと、
回転推定量を用いて、前記慣性データを、位置センサの参照フレームに変換するステップと、
変換された慣性データと、位置センサから取得された位置データから導出された加速度データとの間の誤差の量を決定するステップと、
決定された誤差に応じて、前記回転推定量を更新するステップと、
を備えることを特徴とする方法。
【請求項２】
前記位置センサは、ディジタルカメラ、Ｚ−カメラ、超音波センサ、及びフォトソニックセンサのうちの一つであることを特徴とする請求項１に記載の方法。
【請求項３】
前記オブジェクトは、ゲームコントローラに結合された球であり、
前記位置センサに対する前記球の位置により、ビデオゲームに関連付けられた関連性が制御されることを特徴とする請求項１に記載の方法。
【請求項４】
前記回転推定量を更新するステップは、決定された誤差の一部に基づいて前記回転推定量を更新するステップを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記回転推定量を更新するステップは、前記回転推定量の前回の更新から経過した時間に基づいて前記回転推定量を更新するステップを含むことを特徴とする請求項１に記載の方法。
【請求項６】
取得された前記慣性データは、追跡される前記オブジェクトの加速度データを含み、
追跡される前記オブジェクトの加速度データは、第１の複数のベクトルを含み、前記位置データから導出された加速度データは、第２の複数のベクトルを含む
ことを特徴とする請求項１に記載の方法。
【請求項７】
前記第１の複数のベクトルのそれぞれのベクトルについて、最小限のしきい値よりも小さい大きさを有するベクトルを除去するステップを更に備えることを特徴とする請求項６に記載の方法。
【請求項８】
前記第１の複数のベクトルのそれぞれについて、ベクトルの大きさに基づいてベクトルに重み付けを適用するステップを更に備え、
小さいベクトルよりも大きいベクトルにより重い重みが付けられることを特徴とする請求項６に記載の方法。
【請求項９】
前記誤差の量を決定するステップは、
複数の可能性のある角度を選択するステップと、
前記複数の可能性のある角度のそれぞれにより、前記第２の複数のベクトルを回転させるステップと、
前記複数の可能性のある角度のそれぞれについて、回転されたベクトルと、前記第１の複数のベクトルとの間の差を決定するステップと、
前記複数の可能性のある角度のうち、回転されたベクトルと、前記第１の複数のベクトルとの間の差を最小にする角度を特定するステップと、
特定された角度を、推定された正しい角度として設定するステップと、
前記推定された正しい角度と回転角との間の差に基づいて、推定された誤差の量を決定するステップと、
を含むことを特徴とする請求項６に記載の方法。
【請求項１０】
前記誤差の量を決定するステップは、
前記第１の複数のベクトルと前記第２の複数のベクトルの向きを揃える、前記第１の複数のベクトルと前記第２の複数のベクトルとの間の三次元角度を含む三次元回転を決定するステップと、
前記三次元角度を、回転角と同じ形式の分解角度に分解するステップと、
前記分解角度を、推定された正しい角度として設定するステップと、
前記推定された正しい角度と前記回転角との間の差に基づいて、推定された誤差の量を決定するステップと、
を含むことを特徴とする請求項６に記載の方法。
【請求項１１】
前記誤差の量を決定するステップは、
前記第１及び第２の複数のベクトルを平面に投影するステップと、
投影されたベクトルを、前記平面の法線の周りで回転させるステップと、
回転された投影されたベクトルの間の差に基づいて、推定された誤差の量を決定するステップと、
を含むことを特徴とする請求項６に記載の方法。
【請求項１２】
前記回転推定量を更新するステップは、前記第１の複数のベクトルのそれぞれの大きさに基づいて前記回転の量を更新するステップを含むことを特徴とする請求項６に記載の方法。
【請求項１３】
プロセッサにより実行されたときに、前記プロセッサに、オブジェクトを追跡するときに回転角度の誤差を補償する手順を実行させるための命令を提供するコンピュータ読み取り可能な記録媒体であって、
前記手順は、
前記オブジェクトの参照フレームにおける、追跡される前記オブジェクトに対応する慣性データを取得するステップと、
回転推定量を用いて、前記慣性データを、位置センサの参照フレームに変換するステップと、
変換された慣性データと、位置センサから取得された位置データから導出された加速度データとの間の誤差の量を決定するステップと、
決定された誤差に応じて、前記回転推定量を更新するステップと、
を備えることを特徴とする方法。
【請求項１４】
前記位置センサは、ディジタルカメラ、Ｚ−カメラ、超音波センサ、及びフォトソニックセンサのうちの一つであることを特徴とする請求項１３に記載の記録媒体。
【請求項１５】
前記オブジェクトは、ゲームコントローラに結合された球であり、
前記位置センサに対する前記球の位置により、ビデオゲームに関連付けられた関連性が制御されることを特徴とする請求項１３に記載の記録媒体。
【請求項１６】
前記回転推定量を更新するステップは、決定された誤差の一部に基づいて前記回転推定量を更新するステップを含むことを特徴とする請求項１３に記載の記録媒体。
【請求項１７】
前記回転推定量を更新するステップは、前記回転推定量の前回の更新から経過した時間に基づいて前記回転推定量を更新するステップを含むことを特徴とする請求項１３に記載の記録媒体。
【請求項１８】
取得された前記慣性データは、追跡される前記オブジェクトの加速度データを含み、
追跡される前記オブジェクトの加速度データは、第１の複数のベクトルを含み、前記位置データから導出された加速度データは、第２の複数のベクトルを含む
ことを特徴とする請求項１３に記載の記録媒体。
【請求項１９】
前記第１の複数のベクトルのそれぞれのベクトルについて、最小限のしきい値よりも小さい大きさを有するベクトルを除去するステップを更に備えることを特徴とする請求項１８に記載の記録媒体。
【請求項２０】
前記第１の複数のベクトルのそれぞれについて、ベクトルの大きさに基づいてベクトルに重み付けを適用するステップを更に備え、
小さいベクトルよりも大きいベクトルにより重い重みが付けられることを特徴とする請求項１８に記載の記録媒体。
【請求項２１】
前記誤差の量を決定するステップは、
複数の可能性のある角度を選択するステップと、
前記複数の可能性のある角度のそれぞれにより、前記第２の複数のベクトルを回転させるステップと、
前記複数の可能性のある角度のそれぞれについて、回転されたベクトルと、前記第１の複数のベクトルとの間の差を決定するステップと、
前記複数の可能性のある角度のうち、回転されたベクトルと、前記第１の複数のベクトルとの間の差を最小にする角度を特定するステップと、
特定された角度を、推定された正しい角度として設定するステップと、
前記推定された正しい角度と回転角との間の差に基づいて、推定された誤差の量を決定するステップと、
を含むことを特徴とする請求項１８に記載の記録媒体。
【請求項２２】
前記誤差の量を決定するステップは、
前記第１の複数のベクトルと前記第２の複数のベクトルの向きを揃える、前記第１の複数のベクトルと前記第２の複数のベクトルとの間の三次元角度を含む三次元回転を決定するステップと、
前記三次元角度を、回転角と同じ形式の分解角度に分解するステップと、
前記分解角度を、推定された正しい角度として設定するステップと、
前記推定された正しい角度と前記回転角との間の差に基づいて、推定された誤差の量を決定するステップと、
を含むことを特徴とする請求項１８に記載の記録媒体。
【請求項２３】
前記誤差の量を決定するステップは、
前記第１及び第２の複数のベクトルを平面に投影するステップと、
投影されたベクトルを、前記平面の法線の周りで回転させるステップと、
回転された投影されたベクトルの間の差に基づいて、推定された誤差の量を決定するステップと、
を含むことを特徴とする請求項１８に記載の記録媒体。
【請求項２４】
前記回転推定量を更新するステップは、前記第１の複数のベクトルのそれぞれの大きさに基づいて前記回転の量を更新するステップを含むことを特徴とする請求項１８に記載の記録媒体。
【請求項２５】
追跡対象オブジェクトが移動されるときに、計算装置に送信される慣性データを収集するための１以上の慣性センサを備える追跡対象オブジェクトと、
前記追跡対象オブジェクトが移動されるときに、前記計算装置に送信される前記追跡対象オブジェクトの位置データを収集するための位置センサと、
命令を実行するためのプロセッサと、実行されると前記プロセッサに演算を実行させる命令を有する前記プロセッサに結合されたメモリとを有する計算装置と、を備え、
前記演算は、
前記オブジェクトの参照フレームにおける、前記追跡対象オブジェクトに対応する慣性データを取得するステップと、
回転推定量を用いて、前記慣性データを、前記位置センサの参照フレームに変換するステップと、
変換された慣性データと、前記位置センサから取得された位置データから導出された加速度データとの間の誤差の量を決定するステップと、
決定された誤差に応じて、前記回転推定量を更新するステップと、
を含むことを特徴とする追跡装置。
【請求項２６】
前記位置センサは、ディジタルカメラ、Ｚ−カメラ、超音波センサ、及びフォトソニックセンサのうちの一つであることを特徴とする請求項２５に記載の追跡装置。
【請求項２７】
前記追跡対象オブジェクトは、ゲームコントローラに結合された球であり、
前記位置センサに対する前記球の位置により、前記計算装置上でプレイされるビデオゲームに関連付けられた関連性が制御されることを特徴とする請求項２５に記載の追跡装置。
【請求項２８】
前記回転推定量を更新するステップは、決定された誤差の一部に基づいて前記回転推定量を更新するステップを含むことを特徴とする請求項２５に記載の追跡装置。
【請求項２９】
前記回転推定量を更新するステップは、前記回転推定量の前回の更新から経過した時間に基づいて前記回転推定量を更新するステップを含むことを特徴とする請求項２５に記載の追跡装置。
【請求項３０】
取得された前記慣性データは、前記追跡対象オブジェクトの加速度データを含み、
前記追跡対象オブジェクトの加速度データは、第１の複数のベクトルを含み、前記位置データから導出された加速度データは、第２の複数のベクトルを含む
ことを特徴とする請求項２５に記載の追跡装置。
【請求項３１】
前記第１の複数のベクトルのそれぞれのベクトルについて、最小限のしきい値よりも小さい大きさを有するベクトルを除去するステップを更に備えることを特徴とする請求項３０に記載の追跡装置。
【請求項３２】
前記第１の複数のベクトルのそれぞれについて、ベクトルの大きさに基づいてベクトルに重み付けを適用するステップを更に備え、
小さいベクトルよりも大きいベクトルにより重い重みが付けられることを特徴とする請求項３０に記載の追跡装置。
【請求項３３】
前記誤差の量を決定するステップは、
複数の可能性のある角度を選択するステップと、
前記複数の可能性のある角度のそれぞれにより、前記第２の複数のベクトルを回転させるステップと、
前記複数の可能性のある角度のそれぞれについて、回転されたベクトルと、前記第１の複数のベクトルとの間の差を決定するステップと、
前記複数の可能性のある角度のうち、回転されたベクトルと、前記第１の複数のベクトルとの間の差を最小にする角度を特定するステップと、
特定された角度を、推定された正しい角度として設定するステップと、
前記推定された正しい角度と回転角との間の差に基づいて、推定された誤差の量を決定するステップと、
を含むことを特徴とする請求項３０に記載の追跡装置。
【請求項３４】
前記誤差の量を決定するステップは、
前記第１の複数のベクトルと前記第２の複数のベクトルの向きを揃える、前記第１の複数のベクトルと前記第２の複数のベクトルとの間の三次元角度を含む三次元回転を決定するステップと、
前記三次元角度を、回転角と同じ形式の分解角度に分解するステップと、
前記分解角度を、推定された正しい角度として設定するステップと、
前記推定された正しい角度と前記回転角との間の差に基づいて、推定された誤差の量を決定するステップと、
を含むことを特徴とする請求項３０に記載の追跡装置。
【請求項３５】
前記誤差の量を決定するステップは、
前記第１及び第２の複数のベクトルを平面に投影するステップと、
投影されたベクトルを、前記平面の法線の周りで回転させるステップと、
回転された投影されたベクトルの間の差に基づいて、推定された誤差の量を決定するステップと、
を含むことを特徴とする請求項３０に記載の追跡装置。
【請求項３６】
前記回転推定量を更新するステップは、前記第１の複数のベクトルのそれぞれの大きさに基づいて前記回転の量を更新するステップを含むことを特徴とする請求項３０に記載の追跡装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、追跡システムに関し、とくに、追跡システムの角度の誤差を補償することに関する。
【背景技術】
【０００２】
コンピュータゲーム産業において、ユーザとゲームシステムとの間のインタラクションを増加させるゲームの開発がトレンドになっている。よりリッチな対話式の体験を達成するための一つの方法は、ゲームコントローラを用いて、ゲームシステムがゲームコントローラの動きを追跡することによりユーザの動きを追跡し、その動きをゲームの入力として用いることである。一般に、ジェスチャー入力は、コンピュータシステム、ビデオゲームコンソール、スマートアプライアンスなどの電子機器を、オブジェクトを追跡するビデオカメラ又は他の位置センサにより取得されたジェスチャーに反応させるために適用される。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ユーザの位置及び動きの信頼できる測定を行うためには、一般に、ゲームシステムを較正する必要がある。このような較正は、ゲームシステムが使用されるたびに必要となる。較正プロセスは、位置センサに対するコントローラの角度（例えば、ヨー、ピッチ、及びロール）の初期値を決定する。ユーザは、一般に、コントローラを頻繁に移動させ、これらの動きは多数の異なる加速度により変化しうるので、これらの初期角度は頻繁に更新されなければならない。これらの更新された角度は、コントローラに設けられた慣性センサからの角速度測定値を積分することにより推定されうる。しかしながら、この積分が実行されるごとに、わずかな誤差が生じる。したがって、時間がたつにつれて角度の値はずれていき、角度の誤差が一定量に達する。
【０００４】
特定の環境下において、ピッチ及びロール角は、コントローラが加速されないときに、重力の方向を測定することにより絶対的に決定しうる。絶対ヨー角を決定するために磁気計が用いられうるが、磁気計は金属及び磁気干渉により影響される。
【課題を解決するための手段】
【０００５】
本発明は、本発明の実施の形態を説明するために用いられる、下記の説明及び添付の図面を参照することにより、最も良く理解されうる。
【図面の簡単な説明】
【０００６】
【図１】本発明の一つの実施の形態における、追跡システムの透視図を示す図である。
【図２】図２（ａ）は、本発明の一つの実施の形態における、ボール部を有するゲームコントローラを示す図であり、図２（ｂ）は、本発明の別の実施の形態における、ボール部を有する別のゲームコントローラを示す図であり、図２（ｃ）は、本発明の一つの実施の形態における、ユーザに配置された複数のモーションキャプチャボールを示す図である。
【図３】本発明の一つの実施の形態における、経路に沿って移動されるオブジェクトの例を示す図である。
【図４】本発明の一つの実施の形態における、追跡システムのブロック図を示す図である。
【図５】本発明の一つの実施の形態における、マルチプレイヤー環境の概略図を示す図である。
【図６】本発明の一つの実施の形態に係る追跡システムにおける角度誤差の補償の方法の例を示すフロー図である。
【図７】本発明の一つの実施の形態における、変換された慣性データと位置センサ加速度データとの間の誤差の量を決定する一つの方法を示すフロー図である。
【図８】本発明の一つの実施の形態における、変換された慣性データと位置センサ加速度データとの間の誤差の量を決定する別の方法を示すフロー図である。
【図９】本発明の一つの実施の形態における、変換された慣性データと位置センサ加速度データとの間の誤差の量を決定する別の方法を示すフロー図である。
【図１０】本発明の一つの実施の形態に関連して、コントローラの位置を決定するために用いられうるハードウェア及びユーザインタフェースを示す図である。
【図１１】本発明の一つの実施の形態における、命令の処理に利用可能な追加のハードウェアを示す図である。
【発明を実施するための形態】
【０００７】
本出願は、米国仮出願第６１／１３８，５１６号（２００８年１２月１７日出願）及び米国出願第１２／４３５，２８５号（２００９年５月４日出願）の優先権を主張し、これらの出願は本明細書に援用される。
【０００８】
本明細書では、ゲームシステムにおいて利用される追跡システムにおいて、角度の誤差を補正するための方法及び装置が説明される。本発明の一つの実施の形態において、角度の誤差を補正するために、追跡対象オブジェクトの参照フレームにおける、追跡対象オブジェクトに対応する加速度データが取得される。追跡対象尾オブジェクトの位置データが位置センサから取得され、取得された位置データから位置センサ加速度データが算出される。加速度データは、回転推定量を用いて、位置センサ参照フレームに変換される。変換された加速度データと位置センサ加速度データとの間の誤差の量が決定される。決定された誤差の量に応じて、回転推定量が更新される。
【０００９】
下記の説明においては、特定の数値的な詳細が示される。しかしながら、本発明の実施の形態が、これらの特定の詳細なしに実施されることが可能であることは、当業者には明らかである。別の例においては、既知の回路、構造、及び技術は、この説明の理解を不明瞭にしないために、詳細には示されない。
【００１０】
下記の詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビット上の演算のアルゴリズム及び記号表現の観点から示される。これらのアルゴリズムの記述及び表現は、その成果を最も効果的に他の当業者に伝えるために、データ処理の分野の当業者により用いられる手段である。アルゴリズムは、本明細書において、及び一般的に、所望の結果を達成する自己矛盾のない一連のステップであると理解されている。ステップは、物理量の必要な物理操作である。通常、必然的ではないが、これらの量は格納可能な電気的又は磁気的信号の形式をとり、変換され、結合され、比較され、及びその他の操作を受ける。これらの信号を、ビット、値、要素、記号、文字、項、数などと呼ぶことが、主に共通の使用のために、時に便利であることが立証されている。
【００１１】
しかしながら、これらの語及び類義語の全ては、適当な物理量に関連付けられるもので、これらの量に適用される単なる便利なラベルであることに留意するべきである。以下の議論から明らかであるように、とくにそうではないと断らない限り、詳細な説明の全体にわたって、「処理」「計算」「変換」「調停」「決定」などの語を用いた議論は、物理的（例えば電気的）な量としてコンピュータシステムのレジスタ及びメモリ内で表現されるデータを操作し、コンピュータシステムのメモリ又はレジスタ、又は、他の同様な情報ストレージ、通信又は表示装置の中で物理量として同様に表現される他のデータに変換するコンピュータシステム又は同様の電気的計算装置の動作及び処理のことを指すことが理解される。
【００１２】
本発明は、また、本明細書の手順を実行するための装置に関する。この装置は、要求される目的のために特別に構築されてもよいし、コンピュータに格納されたコンピュータプログラムにより選択的に作動された又は再構成された汎用コンピュータを備えてもよい。一つの実施の形態において、本明細書の手順を実行するための装置は、ゲームコンソール（例えば、ソニープレイステーション（登録商標）、ニンテンドーＷｉｉ（登録商標）、マイクロソフトＸｂｏｘ（登録商標）など）を含む。コンピュータプログラムは、例えば、フロッピー（登録商標）ディスクを含む任意の種類のディスク、光ディスク（例えば、コンパクトディスクリードオンリーメモリ（ＣＤ−ＲＯＭ）、ディジタルビデオディスク（ＤＶＤ）、ブルーレイディスク（登録商標）など）、及び磁気光学ディスク、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気又は光学カード、又は電気的命令を格納するために適した任意の種類の媒体などのコンピュータ読み取り可能な記録媒体に格納されてもよい。
【００１３】
マシン読み取り可能な媒体は、マシン（例えばコンピュータ）により読み取り可能な形式で情報を格納又は送信するための任意のメカニズムを含む。例えば、マシン読み取り可能な媒体は、マシン読み取り可能な記録媒体（例えば、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスク記録媒体、光記録媒体、フラッシュメモリ装置など）、マシン読み取り可能な通信媒体（電気、光、音響又は他の形式の伝送信号、例えば、搬送波、赤外線信号、ディジタル信号など）などを含む。
【００１４】
図１は、本発明の一つの実施の形態における、追跡システム１００の透視図を示す。追跡システム１００は、位置センサ１０５、位置センサ１０５により追跡されるオブジェクト１１０、及び位置センサ１０５及びオブジェクト１１０により取得されたデータを処理する計算装置１１５を含む。一つの実施の形態において、追跡システム１００は、ゲームシステムの構成要素である。または、追跡システム１００は、モーションキャプチャシステムの構成要素であってもよい。
【００１５】
位置センサ１０５は、二次元又は三次元空間におけるオブジェクト１１０の位置センサ１０５に対する位置を測定するセンサである。位置センサ１０５は、ビデオカメラ、Ｚ−カメラ、ステレオカメラ、ウェブカメラ、超音波センサアレイ、光検出器、又はオブジェクト１１０の位置を測定可能な他の装置であってもよい。例えば、位置センサ１０５がカメラであれば、位置センサ１０５は、オブジェクト１１０が移動するときに、オブジェクトを含む複数の画像を生成する。
【００１６】
位置センサ１０５による位置測定は、位置センサの測定平面及び位置センサの測定平面に垂直なベクトルにより定義される位置センサ１０５の参照フレーム１５０において行われる。本明細書では、参照フレームは、オブジェクトの位置、方向及び他のプロパティを測定するための座標系として定義される。参照フレーム及び座標系という語は、本出願を通して交換可能に用いられる。
【００１７】
図示されるように、位置センサ１０５は、テレビジョンセット１２０の上面に、床１５０に対して負のピッチ１４５をもって設置される。ピッチ１４５は、位置センサ１０５の測定平面内にある位置センサの参照フレーム１５０の水平軸と重力１３５に垂直な平面との間の角である。ピッチ１４５がゼロでない値をとる限り、位置センサ１０５は、ワールド参照フレーム（重力１３５の向きに沿った軸（例えばｙ２）を有する参照フレームとして定義される）とは異なる参照フレーム１５０を有する。
【００１８】
本発明の一つの実施の形態において、位置センサ１０５は標準的なビデオカメラである。この実施の形態において、位置センサ１０５は、深さ方向の情報（位置センサ１０５及びオブジェクト１１０の間の距離）を、オブジェクト１１０の大きさを特定する予め定義された情報及び／又は位置センサ１０５の視野（field of view：ＦＯＶ）を特定する予め定義された情報に基づいて取得してもよい。視野１２５は、位置センサ１０５により撮像される所与のシーンの角度範囲である。視野は、カメラのレンズにより発生する画像の歪み（例えばズームの量）を定義する。オブジェクト１１０が位置センサ１０５から遠くへ移動するにつれて（すなわち、距離１３０が増加するにつれて）、位置センサ１０５により撮像されるオブジェクト１１０の画像は小さくなる。したがって、位置センサ１０５に対するオブジェクト１１０の距離１３０は、位置センサ１０５の視野１２５が既知であれば、追跡対象のオブジェクト１１０の画像の大きさ（例えば、ピクセルで測定される）の、追跡対象のオブジェクト１１０の既知の実際の大きさに対する比に基づいて決定できる。
【００１９】
本発明の別の実施の形態において、位置センサ１０５は、Ｚカメラ（映像を深さ方向の情報とともに撮像可能な単一レンズのビデオカメラ）又はステレオカメラ（三次元画像を撮像可能な２以上のレンズを有するビデオカメラ）である。この実施の形態において、位置センサ１０５は、オブジェクト１１０の大きさを特定するための情報を予め設定することなく、深さ方向の情報を取得することができる。
【００２０】
本発明の更に別の実施の形態において、位置センサ１０５は、超音波センサアレイ又は光検出器などのセンサアレイである。このような位置センサ１０５は、例えば光り又は音の飛行時間又は位相のコヒーレンスを用いて、位置センサ１０５とオブジェクト１１０の間の距離を検出し、三角測量を用いてオブジェクト１１０の垂直及び水平方向の位置を検出する。オブジェクト１１０は、１以上の慣性センサを含む電子機器である。慣性センサは、単一又は複数の軸に沿った加速度を測定可能でもよく、直線方向だけでなく角加速度を測定可能であってもよい。一つの実施の形態において、オブジェクト１１０は、図２（ｂ）及び２（ｂ）に示されたゲームコントローラなどの携帯型電子機器又は携帯型電子機器の一部である。別の実施の形態において、オブジェクト１１０は、図２（ｃ）に示されたモーションキャプチャ（モーキャプ）ボールである。オブジェクト１１０は、正方形、球、三角形、又はより複雑な形状など、任意の形状を有してもよい。一つの実施の形態において、オブジェクト１１０は、球状の形状を有する。
【００２１】
図２（ａ）は、本発明の一つの実施の形態における、ボール部２０５を有するゲームコントローラ２００を示す。図２（ｂ）は、本発明の別の実施の形態における、ボール部２１５を有する別のゲームコントローラ２１０を示す。ある実施の形態において、ボール部２０５及び２１５は、図１のオブジェクト１１０に相当する。
【００２２】
ボール部２０５及び２１５は、異なる色であってもよく、一つの実施の形態において、ボール部２０５及び２１５は、発光してもよい。球状のボール部が示されているが、ボール２０５及び２１５は、球の一部、完全ではない球、アメリカンフットボール又はラグビーで使われるような引き伸ばされたボール、立方体状の形状など、視覚的に追跡する目的のために、他の形状を有していてもよい。一つの実施の形態において、ボール部２０５及び２１５は、直径４ｃｍである。しかしながら、より大きい、又は、より小さい大きさであってもよい。より大きい場合は、視覚的に認識しやすい。例えば、直径が５ｃｍのボールでは、４ｃｍのボールに比べて、画像認識におけるピクセル数が約５５パーセント多くなる。
【００２３】
図２（ｃ）は、本発明の一つの実施の形態における、ユーザ２２５に配置された複数のモーキャプボール２２０を示す。モーキャプボール２２０は、位置センサがモーキャプボール２２０の間の位置又は角度に基づいてユーザの動きを取得し認識するために、それぞれ近接して接合するようにユーザ２２５により装着されるマーカである。一つの実施の形態において、モーキャプボール２２０は、モーションキャプチャスーツに装着される。
【００２４】
図１に戻り、オブジェクト１１０及び位置センサ１０５は、有線及び／又は無線接続を介して計算装置１１５に接続される。有線接続は、例えば、ＩＥＥＥ１３９４（ファイヤーワイヤー（登録商標））ケーブル、イーサネット（登録商標）ケーブル、及びユニバーサルシリアルバス（ＵＳＢ）ケーブルなどを介した接続を含む。無線接続は、例えば、無線忠実（ＷｉＦｉ）接続、ブルートゥース（登録商標）接続、ジグビー（登録商標）接続などを含む。図示された実施の形態において、オブジェクト１１０は、無線により計算装置１１５に接続し、位置センサ１０５は、有線により計算装置１１５に接続する。
【００２５】
計算装置１１５は、ビデオゲームコンソール、パーソナルコンピュータ、ゲーム機、又は他の計算装置であってもよい。計算装置１１５は、オブジェクト１１０からのユーザ入力に応答可能なゲーム又は他のアプリケーションを実行してもよい。オブジェクト１１０は追跡され、オブジェクト１１０の動きはユーザ入力を提供する。
【００２６】
追跡システム１００がオブジェクト１１０を正確に追跡可能となる前に、追跡システム１００は較正される必要がある。例えば、追跡システム１００のキャリブレーションは、位置センサ１０５のピッチ１４５の算出及び位置センサ１０５とオブジェクト１１０との間の相対的なヨーの算出を含んでもよい。オブジェクト１１０と位置センサ１０５との間の相対ヨーは、オブジェクト１１０と位置センサ１０５の間の向きの差を表す。一つの実施の形態において、オブジェクトが位置センサ１０５の撮像平面に対して垂直な方向に向いているときに、位置センサ１０５とオブジェクト１１０との間のゼロヨーが達成されると定義される。または、オブジェクト１１０が位置センサ１０５の方へ真っ直ぐ向いているときに、ゼロヨーが達成されると定義されてもよい。位置センサ１０５が、視野１２５の不明なカメラである場合、追跡システム１００のキャリブレーションは、位置センサ１０５の視野１２５の算出を含む。オブジェクト１１０の大きさが不明である場合、追跡システム１００のキャリブレーションは、オブジェクト１１０の大きさの決定を含んでもよい。
【００２７】
オブジェクト１１０の内部に配置された慣性センサがキャリブレーションのために十分な慣性データを収集可能とするために、オブジェクト１１０はユーザにより移動されるべきである。オブジェクト１１０は、それぞれの慣性データの測定が位置センサ１０５により測定される位置に対応することを保証するために、位置センサ１０５の視野１２５の範囲で移動されるべきである。キャリブレーションの効果は、最小限のしきい値を越え、少なくとも二次元（例えば平面）になるような、オブジェクト１１０を位置センサ１０５の視野１２５の内部の経路に沿って移動させることにより増大させることができる。経路は、位置センサ１０５に近づく及び／又は遠ざかるような動きを含んでもよい。後述するように、オブジェクト１１０に対応する慣性データは、追跡システムにおいて角度の誤差を補正するときにも必要となる。
【００２８】
取得された慣性データは、慣性データに付随する信号ノイズの量により定義される不確定さを有する。オブジェクト１１０により測定された加速度の大きさが減少するにつれて、信号ノイズ比（信号を改悪するノイズ強度に対する信号強度の比）は増加する。信号ノイズ比の減少により、慣性データはより不正確になる。一つの実施の形態において、慣性データが最小限の信号ノイズ比を下回ることを防ぐために、最小限の加速度のしきい値が設定される。
【００２９】
図３は、本発明の一つの実施の形態における、経路に沿って移動されるオブジェクトの例を示す。図示されるように、オブジェクトは、ゲームコントローラ３１０の端に取り付けられたボール３０５であり、経路３１５は、ユーザの頭の周囲の環状の経路である。環状の経路は、円内の動きが一定の加速度を提供する点で有利である。したがって、環状の経路は、増加された慣性データを提供する。経路３１５の全体は、位置センサの視野３２０の内部にあり、位置センサに近づく動き及び遠ざかる動きを含む。
【００３０】
図４は、本発明の一つの実施の形態における、追跡システム４００のブロック図を示す。追跡システム４００は、位置センサ４０５に物理的に接続され、位置センサ４０５により追跡されるオブジェクト４１０に無線接続される計算装置４１５を含む。もちろん、本発明のある実施の形態において、位置センサ４０５は計算装置４１５に無線接続されることが理解されるべきである。一つの実施の形態において、追跡システム４００は、図１の追跡システム１００に相当する。
【００３１】
本発明の一つの実施の形態において、オブジェクト４１０は、オブジェクト４１０の内部の固定的な位置に設けられた１以上の慣性センサ４２０を含むが、本発明の別の実施の形態において、慣性センサ４２０はオブジェクト４１０の外部（例えば、オブジェクト１１０に結合されたコントローラの内部）にある。一つの実施の形態において、慣性センサ４２０は、１以上のジャイロスコープ及び１以上の加速度計を含む。ジャイロスコープは、向きの変化（例えば、ピッチ、ロール、及びねじりの変化）を検出するために、角運動量を用いる。加速度計は、１以上の軸に沿った加速度を測定する。ジャイロスコープ及び加速度計は、分離された複数のセンサであってもよいし、一つのセンサに結合されていてもよい。一つの実施の形態において、ジャイロスコープ及び加速度計は、マイクロエレクトロメカニカルシステム（micro-electromechanical systems：ＭＥＭＳ）装置である。オブジェクト４１０が移動されるとき、慣性センサ４２０は、オブジェクト４１０に対応する慣性データ（例えば加速度データ）を収集し、計算装置４１５へデータを送信する。慣性センサ４２０により収集された慣性データは、オブジェクト４１０の参照フレーム内にある。
【００３２】
オブジェクト４１０が移動されるとき、位置センサ４０５は、オブジェクト４１０の位置の測定値を取得する。測定値は、画像の大きさ及び画像の位置情報を含んでもよい。例えば、位置センサがカメラである場合、位置センサ４０５は、オブジェクトが移動されている間に、オブジェクトの４１０の複数の画像を生成する（もちろん、本発明の一つの実施の形態において、位置センサ４０５は、オブジェクト４１０が移動されているか否かにかかわらず、オブジェクト４１０の画像を生成することが理解されるべきである）。位置センサ４０５は、計算装置４１５に位置の測定値を送信する。一つの実施の形態において、位置センサ４０５は、測定値が取得されるとリアルタイムで計算装置４１５に位置の測定値を流す。
【００３３】
本発明の一つの実施の形態において、オブジェクト４１０が位置センサ４０５により追跡されるとき、オブジェクト４１０の位置の変更は、ゲームやコンピュータアプリケーションなどを制御するために、計算装置４１５に対する入力として使用される。例えば、オブジェクト４１０の位置の変更は、一人称又は三人称の視点のゲームにおけるキャラクタを制御したり、画面上のマウスカーソルを移動させたりするために用いられてもよい。別の実施の形態において、オブジェクト４１０から取得された慣性データは、計算装置４１５に対する入力して使用される。または、慣性データは、計算装置４１５のための精密かつ正確な入力を提供するために、位置センサ４０５により得られた位置測定データと組み合わせて用いられてもよい。
【００３４】
計算装置４１５は、ビデオゲームコンソール、パーソナルコンピュータ、ゲーム機などであってもよい。本発明の一つの実施の形態において、計算装置４１５は、それぞれが異なる演算を実行する、慣性データロジックコンポーネント４２５、位置測定ロジックコンポーネント４３０、及び角度誤差推定ロジックコンポーネント４３５を含む。
【００３５】
位置測定ロジックコンポーネント４３０は、位置センサ４０５から取得した位置測定データ（例えば画像）を分析し、（例えば位置センサ参照フレーム１５０における）オブジェクト４１０の位置を検出する。例えば、位置センサ４０５がディジタルカメラである場合、位置測定ロジックコンポーネント４３０は、画像内のオブジェクト４１０を検出するために、取得した画像を分析する。本発明の一つの実施の形態において、オブジェクト４１０の画像の位置は、画像内のオブジェクト４１０を表すピクセルのグループを分析することにより決定され、オブジェクトの中心が検出される。一つの実施の形態において、それぞれのピクセルのガウス分布が算出され、中心位置のピクセル以下の正確さを提供するために用いられてもよい。
【００３６】
本発明の一つの実施の形態において、位置測定ロジックコンポーネント４３０は、位置情報を位置センサ４０５の三次元座標系に変換する。位置測定データは、以下の数式を用いて、三次元座標系に変換されうる。
【数１】
2012511999.tif 000003
【数２】
2012511999.tif 000004
【数３】
2012511999.tif 000005
ここで、Ｘｗはオブジェクトの参照フレームにおける水平方向の位置、Ｙｗはオブジェクトの参照フレームにおける垂直方向の位置、Ｘｉは水平方向の位置、Ｙｉは垂直方向の位置、Ｚｗは位置センサとオブジェクトとの間の距離、ｆは位置センサの焦点距離（視野に比例する値）、Ｒはオブジェクトの大きさ（例えば球の半径をｍｍで表したもの）、ｒはオブジェクトの大きさ（例えば球の投影の半径をピクセルで表したもの）である。
【００３７】
位置測定データが三次元座標系に変換されると、位置測定ロジックコンポーネント４３０は、時間に対する位置情報の二階微分をとり、オブジェクト４１０の位置の時間変化に基づいて、位置センサ４０５の三次元座標系におけるオブジェクト４１０の加速度を算出する。位置測定ロジックコンポーネント４３０は、算出された位置センサ加速度データを角度誤差推定ロジックコンポーネント４３５に提供する。
【００３８】
慣性データロジックコンポーネント４２５は、慣性データを処理する。本発明の一つの実施の形態において、補正すべきそれぞれの角度について、慣性データロジックコンポーネント４２５は、慣性データから重力によって生じる加速度を除去し、残った加速度を、その角度についての回転推定量を用いて、オブジェクト４１０の参照フレームから位置センサ４０５の参照フレームに変換する。結果のデータは（変換された状態で）、角度誤差推定ロジックコンポーネント４３５に渡される。本発明の一つの実施の形態によれば、回転の推定量は、以前に決定された角度の値に基づく。例えば、最初に誤差補正処理が実行されると、回転の推定は角度の初期値に基づく。
【００３９】
本発明の一つの実施の形態において、慣性データの、オブジェクトの参照フレームから位置センサの参照フレームへの変換は、取得した慣性データが特定のしきい値条件を満たす（例えば、データが所定のノイズフロアよりも大きな値を有する）場合にのみ実行される。慣性データが特定のしきい値条件を満たさない場合、変換は実行されず、誤差補正処理は続行されない。
【００４０】
本発明の一つの実施の形態において、取得された慣性データは、その慣性データの大きさに基づいて重み付けされる。例えば、誤差補正の精度は、一般に、取得された加速度データの大きさが増大するにつれて向上する。したがって、オブジェクト４１０から（慣性センサ４２０を介して）取得された加速度データが値が大きい場合、取得された加速度データの値が小さい場合よりも重く重み付けされる。
【００４１】
角度誤差推定ロジックコンポーネント４３５は、位置測定ロジックコンポーネント４３０により算出された加速度と、慣性データロジックコンポーネント４２５からの慣性データとを比較して、追跡システム４００における角度（例えば、追跡対象オブジェクト４１０の位置センサ４０５に対するヨー角、ピッチ角、又はロール角）の誤差の量を推定する。それぞれの角度は初期値（例えば追跡システムのキャリブレーション中に算出される）を有することが理解されるべきである。例えば、ヨー角のドリフトを補正する場合、位置センサ４０５のピッチは既知であり、位置センサ４０５と追跡対象オブジェクト４１０との間の相対ヨーの初期値は既に決定されている。ユーザは、一般に、追跡対象オブジェクト４１０を頻繁に移動させ、これらの移動は多くの異なる加速度により変化するので、これらの初期角度は頻繁に更新される必要がある。本発明の一つの実施の形態において、更新された角度は、慣性センサ４２０からの角速度の測定値を積分することにより推定されうる。例えば、ヨー角の場合、追跡対象オブジェクト４１０のヨー角は、慣性センサ４２０からのデータを積分することにより継続的に算出されうる。しかしながら、この積分が実行されるごとに、わずかな誤差が生じる。こうして、時間を経ると、ヨー角の値はずれる。したがって、ヨー角は始めは既知（初期ヨー角）であるが、時間がたつとずれてくる。別の例として、傾き（ピッチ及びロール角）の場合、オブジェクト４１０の傾きは、オブジェクト４１０が所定の時間（例えば一般的には１秒未満）静止状態で保持されると、重力から継続的に決定されうる。しかしながら、オブジェクト４１０が移動されない（例えば、ユーザが一定の時間オブジェクト４１０が結合されたゲームコントローラを移動させない）場合、傾きを重力から決定することができない。
【００４２】
変換された慣性データは、第１のベクトルセットにより表現され、位置センサの加速度データ（位置センサ４０５から収集された位置データから算出される）は、第２のベクトルセットとして表現される。位置センサ加速度データ及び変換された慣性データは、同じオブジェクトの動きの異なる測定値を表す。したがって、位置センサ加速度データ及び変換された慣性データは、第１のベクトルセットのそれぞれのベクトルが第２のベクトルセットのベクトルに対応する、合致したベクトルセットを含む。対応するベクトルは、同じ原点と同じ大きさを有する。したがって、変換された慣性データは、角度の誤差の量を決定するために、位置センサ加速度データと比較される（２つのデータセットが合致すれば、回転推定量は正確であり、角度は補正すべき誤差を有しない）。
【００４３】
本発明の一つの実施の形態において、ドリフトによる角度（例えば、ヨー、ピッチ、又はロール）の誤差の量を決定するために、位置センサ加速度データは、複数の可能性のある角度により位置センサ加速度データのベクトルを回転させることにより変換され、その変換は、変換された慣性データベクトルと比較される。可能な角度の多数の異なる組み合わせが試されてもよい。位置センサ加速度の回転されたベクトルと変換された慣性データベクトルとの間の最小の差を与える可能な角度の組み合わせが、推定された正しい角度である。誤差の推定量は、慣性センサ４２０からの角速度測定値（慣性データ）を積分して推定された角度と、推定された正しい角度との間の差である。最急降下法、部分最小二乗法、最小二乗適合技術、又は他の誤差最小化技術が、推定された正しい角度を検出するために試される可能性のある角度の組み合わせの数を最小限にするために用いられてもよい。
【００４４】
例えば、オブジェクトの動きを意味するそれぞれのベクトルＶｉは、第１のベクトルセット（位置センサ加速度データベクトル）においてはＶｉ１と表され、第２のベクトルセット（変換された慣性データベクトル）においてはＶｉ２と表される。第１のベクトルセットにおける全てのベクトルＶｉ１について、ベクトルＶｉ１は、可能性のある角度に基づいて三次元回転により変換され、変換されたベクトルＶｉ１’となる。それぞれのベクトルＶｉについて、Ｖｉ１’とＶｉ２との間の差Ｄθが算出される。第１のベクトルセットの回転されたＶｉ１’ベクトルと、第２のベクトルセットのマッチしたＶｉ２ベクトルとの間の差の和が、下記の数式を用いて算出される。
【数４】
2012511999.tif 000006
【００４５】
最小のＤθを与える角θが、正しい推定された三次元の角度である。したがって、三次元の角度θを与える可能な角度が、推定された正しい角度を表す。推定された誤差の量は、慣性センサ４１０からの角速度測定値（慣性データ）の積分から推定された角度と、推定された正しい角度との差により決定されうる。位置センサ加速度データベクトルが変換され、変換された慣性データベクトルと比較される例について説明したが、いずれのセットのベクトルが回転されたとしても２つのベクトルセットの間の角度は同じになるから、いずれのセットのベクトルが回転されるかは問題ではないことが理解されるべきである。
【００４６】
本発明の別の実施の形態において、ドリフトによる角度（例えば、ヨー、ピッチ、又はロール）の誤差の量を決定するために、変換された慣性データと位置センサ加速度データの座標系を揃える三次元回転が計算される。三次元回転は、軸及び角度により定義されうる。三次元回転の回転軸ｅは、下記のように、第１のベクトルセットＶｉ１のベクトルと第２のベクトルセットＶｉ２のベクトルとのクロス積（ベクトル積）をとることにより求められる。
【数５】
2012511999.tif 000007
【００４７】
下記のように、Ｖｉ１のＶｉ２への投影を表すスカラーｓを求めるために、Ｖｉ１とＶｉ２のドット積（内積）もとられる。
【数６】
2012511999.tif 000008
【００４８】
三次元回転角θは、下記のように、回転軸及びスカラーを用いて求められる。
【数７】
2012511999.tif 000009
【００４９】
三次元回転は、いずれかの参照フレームに分解され、その参照フレームのそれぞれの軸の周りの回転角が決定されてもよい。例えば、三次元回転は、ｘ軸の周りの回転量を決定するためにｘ軸に投影されてもよく、ｙ軸の周りの回転量を決定するためのｙ軸に投影されてもよい。三次元の角度がオブジェクトの参照フレームに投影される場合、重力に沿った軸の周りの回転はヨーであり、重力に垂直で位置センサの位置検出平面内の軸の周りの回転はピッチである。三次元回転は、例えば、３つの直交する行列、回転行列、又は四元数を用いて、参照フレームの軸の周りの回転に分解されうる。
【００５０】
四元数は、実数上の四次元のノルム多元体を形成する。四元数は、行列変換よりも高速に計算することができ、その直交性を失わないから、座標変換の有用な表現を提供する。回転の四元数表現は、四次元ベクトルとして記述される。
【数８】
2012511999.tif 000010
【００５１】
ワールド参照フレームにおいて、四元数の要素は下記のように表現される。
【数９】
2012511999.tif 000011
【数１０】
2012511999.tif 000012
【数１１】
2012511999.tif 000013
【数１２】
2012511999.tif 000014
ここで、ｅｘ、ｅｙ、及びｅｚは、それぞれ、オブジェクトの参照フレームのｘ、ｙ、及びｚ軸に平行な単位ベクトルを表す。
【００５２】
四元数は、参照フレームに合わせることが必要なヨー及びピッチ回転の双方を完全に表現する。しかしながら、さらに直感的な結果を提供するために、四元数は、下記の式によりピッチ及びヨーのオイラー角に変換されてもよい。
【数１３】
2012511999.tif 000015
【数１４】
2012511999.tif 000016
【００５３】
分解された角は、推定された正しい角度に対応する。誤差の推定量は、慣性センサ４１０からの角速度の測定値（慣性データ）を積分して推定される角度と、推定された正しい角度との間の差を算出することにより決定されうる。
【００５４】
本発明の別の実施の形態において、ベクトルセットは平面に投影され、二次元角を算出するための計算が実行されてもよい。例えば、位置センサ加速度データベクトル（Ｖｉ１）及び変換された慣性データベクトル（Ｖｉ２）が平面に投影され、平面内の２つのベクトルセットを揃える、平面の法線の周りの回転が計算される。例えば、ヨー角の補正のために、変換された慣性データベクトル（加速度データベクトル）及び位置センサ加速度データベクトルはＸＺ平面上に投影され、回転はＹ軸の周りで求められる。一般に、この計算は、少なくとも１つの角度が既知であるときに実行されうる。例えば、一般に、位置センサ４０５のピッチは、追跡システムの初期較正により既知である（すなわち、位置センサ４０５は一般に固定される）。位置センサ加速度データベクトル（Ｖｉ１）及び変換された慣性データベクトル（Ｖｉ２）を平面上に投影するために、平面の単位長法線ベクトルをｇとして、下記の式が用いられうる。
【数１５】
2012511999.tif 000017
【数１６】
2012511999.tif 000018
【００５５】
投影されたベクトルは、平面の法線の周りで回転される。例えば、数式９、１０、及び１１が、それぞれ、ｘ、ｙ、及びｚ軸の周りに投影されたベクトルを回転させるために用いられうる。投影されたベクトルは、推定された正しい角度を決定するために比較される。角度の誤差量は、推定された正しい角度と慣性データの積分から計算された角度との差に基づいて算出される。
【００５６】
推定誤差が決定されると、回転推定量に対して補正が行われる。本発明の一つの実施の形態によれば、補正量は推定誤差の一部（例えば、推定誤差のパーセンテージ）である。したがって、オブジェクト４１０のセンサ４２０から取得した加速度をオブジェクト４１０の参照フレームから位置センサ４０５の参照フレームに変換するために用いられる回転推定量は、補正量に応じて更新される。
【００５７】
本発明の一つの実施の形態によれば、補正量は、前回の補正から経過した時間の関数である。したがって、本発明の一つの実施の形態において、最後の補正から時間が経過するほど、補正量は大きくなる。例えば、ユーザが一定時間（例えば５〜１０分）オブジェクト４１０を動かさなかった場合（例えば、ユーザがオブジェクト４１０が結合されたコントローラを下に置いていた場合）、かなりの量のドリフトが発生している。この場合、補正量は、推定された誤差の多くの割合を占め、推定された誤差の全てを占めることもある。本発明の一つの実施の形態によれば、ユーザがオブジェクト４１０を一定時間移動させなかった場合、ユーザは、加速度及び位置データの最小限のしきい値を与える移動経路においてユーザがオブジェクト４１０を移動させるまで、追跡システムにおけるオブジェクト４１０の使用をロックされる。本発明の一つの実施の形態において、オブジェクト４１０は、加速度及び位置データの最小限のしきい値を生成するためにユーザがオブジェクト４１０を移動させる必要があるとき、特定の色の光及び／又は音声を出力する。
【００５８】
本発明の別の実施の形態において、補正量は、ベクトルセットの大きさの関数である。例えば、前述したように、本発明の一つの実施の形態において、ベクトルは重み付けされる（ベクトルの大きさが大きいほど、重く重み付けされる）。ベクトルの重み付けが大きいほど、補正量は大きい。もちろん、上述した実施の形態の任意の組み合わせ（例えば、推定された誤差の一部、経過時間の関数、及び／又はベクトルの大きさに関連した重みの関数）が用いられてもよいことが理解されるべきである。
【００５９】
図５は、一つの実施の形態における、プレイヤーにより把持された異なるコントローラの位置を決定するために視覚情報が用いられる、マルチプレイヤー環境５００の概略図を示す。マルチプレイヤー環境５００において、位置センサ５０８（カメラとして図示され、以下に説明される）はプレイフィールド４１８の画像データを取得し、画像データはボールが設けられたコントローラＣ１、Ｃ２、Ｃ４、及びＣ５の位置を取得するために分析される。距離ｄｚ１、ｄｚ２、ｄｚ４、及びｄｚ５は、取得された画像におけるそれぞれのボールの形状及び大きさを分析することにより推定される。計算装置５０２は、取得された座標及び距離を用いて、画面５０４におけるプレイヤーの表現としてアバター５１２ａ及び５１２ｂをそれぞれ生成する。良好な画像認識のための典型的な距離は、約１０フィート（３メートル）である。視覚認識の一つの利点は、コントローラを変更する必要なく、画像取得及び画像認識の向上をシステムに取り込めることである。
【００６０】
図６は、本発明の一つの実施の形態に係る追跡システムにおける角度誤差の補償の方法６００の例を示すフロー図である。方法は、ハードウェア（例えば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど）、ソフトウェア（例えば、処理装置上で実行される命令）、又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。一つの実施の形態において、方法６００は、図４の計算装置４１５により実行される。
【００６１】
図６を参照して、ブロック６０５において、計算装置４１５は、追跡対象オブジェクト４１０が移動されるときに、位置センサ４０５から位置データを取得する。本発明の一つの実施の形態において、計算装置は、撮像装置の二次元参照フレームにおけるオブジェクトの画像を取得する。フローは、ブロック６０５からブロック６１０へ移る。
【００６２】
ブロック６１０において、計算装置４１５は、追跡対象オブジェクトが移動されるときに、追跡対象オブジェクト４１０から（例えば、慣性センサ４２０を介して）慣性データを取得する。慣性データは、オブジェクト４１０の参照フレームにおけるデータである。フローは、ブロック６１０からブロック６１５へ移る。ブロック６１５において、計算装置４１５は、位置データを、位置センサ４０５の座標系に変換する。フローはブロック６１５から６２０へ移り、計算装置４１５は、位置データから、オブジェクト４１０の位置センサ加速度データを算出する。例えば、計算装置４１５は、位置データの時間変化の二階微分をとって、オブジェクト４１０の位置センサ加速度データを算出してもよい。本発明の一つの実施の形態において、位置センサ加速度データは、位置センサデータが取得されたときに、リアルタイムに算出される。または、位置センサ加速度データは、定期的に（例えば、１０ミリ秒ごとに、０．５秒ごとになど）算出されてもよいし、移動が完了したときに算出されてもよい。フローは、ブロック６２０からブロック６２５へ移る。
【００６３】
ブロック６２５において、計算装置４１５は、回転推定量を用いて、取得された慣性データを位置センサの参照フレームに変換する。本発明の一つの実施の形態によれば、回転推定量は、以前に決定された角度の値に基づく。例えば、誤差補正処理が最初に実行されるとき、回転推定量は、例えば、追跡システムの較正中に決定された角度の初期値に基づく。フローは、ブロック６２５からブロック６３０へ移る。
【００６４】
ブロック６３０において、計算装置４１５は、変換された慣性データと、位置センサ加速度データとの間の誤差の量を決定する。図７は、本発明の一つの実施の形態における、変換された慣性データと位置センサ加速度データとの間の誤差の量を決定する一つの方法を示すフロー図である。したがって、図７の手順は、本発明の一つの実施の形態に係るブロック６３０の中で実行される。ブロック７０５において、計算装置４１５は、複数の可能性のある角度により位置センサ加速度データを変換する。フローはブロック７０５からブロック７１０へ移り、計算装置４１５は、変換された位置センサ加速度データと変換された慣性データベクトルとの間の差を決定する。フローはブロック７１０からブロック７１５へ移り、計算装置４１５は、最小であるベクトル間の差を推定された正しい角度と設定する。フローはブロック７１５からブロック７２０へ移り、計算装置４１５は、推定された正しい角度と、慣性センサ４２０からの角速度測定値（慣性データ）の積分から導出された角度との間の差に基づいて、角度の誤差の量を決定する。
【００６５】
図８は、本発明の一つの実施の形態における、変換された慣性データと位置センサ加速度データとの間の誤差の量を決定する別の方法を示すフロー図である。したがって、図８の手順は、本発明の一つの実施の形態に係るブロック６３０の中で実行される。ブロック８０５において、計算装置４１５は、変換された慣性データと位置センサ加速度データとの座標系を揃える三次元回転を決定する。フローはブロック８０５からブロック８１０へ移り、計算装置４１５は、三次元角度を補正すべき角度に分解する。フローはブロック８１０からブロック８１５へ移り、計算装置４１５は、分解された角度を推定された正しい角度に設定する。フローはブロック８１５からブロック８２０へ移り、計算装置４１５は、推定された正しい角度と、慣性センサ４２０からの角速度測定値（慣性データ）の積分から導出された角度との間の差に基づいて、角度の誤差の量を決定する。
【００６６】
図９は、本発明の一つの実施の形態における、変換された慣性データと位置センサ加速度データとの間の誤差の量を決定する更に別の方法を示すフロー図である。したがって、図９の手順は、本発明の一つの実施の形態に係るブロック６３０の中で実行される。ブロック９０５において、計算装置４１５は、位置センサ加速度データベクトルと、変換された慣性データベクトルを、（例えば、上述した数式１５及び１６を用いて）、同一の二次元平面上に投影する。ブローはブロック９０５からブロック９１０へ移り、計算装置４１５は、（例えば、上述した数式９、１０、又は１１のうちの一つを用いて）、平面の法線の周りで投影を回転する。フローはブロック９１０からブロック９１５へ移り、計算装置４１５は、推定された正しい角度と、慣性データの積分から算出された角度との間の差に基づいて、角度の誤差の量を決定する。
【００６７】
図６に戻り、フローはブロック６３０からブロック６３５へ移る。ブロック６３５において、計算装置４１５は、決定された誤差に応じて回転推定量を更新する。こうして、ブロック６２５において説明した、取得された慣性データを位置センサの参照フレームに変換するために用いられる回転推定量は、決定された誤差の量に応じて更新される。本発明の一つの実施の形態によれば、更新される回転推定量は、推定された誤差の量の一部（例えば、決定された誤差推定量のパーセンテージ）である。
【００６８】
本発明の一つの実施の形態によれば、補正量は、前回の回転推定量の更新から経過した時間の関数である。したがって、本発明の一つの実施の形態において、直近の更新から時間が経過するほど、補正量は大きい。例えば、ユーザが一定時間（例えば５〜１０分）オブジェクト４１０を動かさなかった場合（例えば、ユーザがオブジェクト４１０が結合されたコントローラを下に置いていた場合）、かなりの量のドリフトが発生している可能性がある。この場合、補正量は、推定された誤差の多くの割合を占め、推定された誤差の全てを占めることもある。本発明の一つの実施の形態によれば、ユーザがオブジェクト４１０を一定時間移動させなかった場合、ユーザは、加速度及び位置データの最小限のしきい値を与える移動経路においてユーザがオブジェクト４１０を移動させるまで、追跡システムにおけるオブジェクト４１０の使用をロックされる。本発明の一つの実施の形態において、オブジェクト４１０は、加速度及び位置データの最小限のしきい値を生成するためにユーザがオブジェクト４１０を移動させる必要があるとき、特定の色の光及び／又は音声を出力する。
【００６９】
本発明の別の実施の形態において、補正量は、ベクトルセットの大きさの関数である。例えば、前述したように、本発明の一つの実施の形態において、ベクトルは重み付けされる（ベクトルの大きさが大きいほど、重く重み付けされる）。ベクトルの大きさが大きいほど、ベクトルはノイズにより影響されにくい。ベクトルの重み付けが大きいほど、補正量は大きい。したがって、推定された誤差の精度は、ベクトルの重み付けにより向上する。もちろん、上述した実施の形態の任意の組み合わせ（例えば、推定された誤差の一部、経過時間の関数、及び／又はベクトルの大きさに関連した重みの関数）が用いられてもよいことが理解されるべきである。
【００７０】
図１０は、本発明の一つの実施の形態に関連して、コントローラの位置を決定するために用いられうるハードウェア及びユーザインタフェースを示す。図１０は、本発明の一つの実施の形態に係る三次元コントローラ位置探索システムの実装に互換性のあるコンソールであるソニープレイステーション３（登録商標）エンタテインメント装置の全体システム構成を概略的に示す。システムユニット１４００とともに、システムユニット１４００に接続可能な種々の周辺装置が設けられる。システムユニット１４００は、セルプロセッサ１４２８、ランバス（登録商標）ダイナミックランダムアクセスメモリ（ＸＤＲＡＭ）ユニット１４２６、専用のビデオランダムアクセスメモリ（ＶＲＡＭ）ユニット１４３２とともに設けられたリアリティシンセサイザーグラフィックスユニット１４３０、及び入出力ブリッジ１４３４を備える。システムユニット１４００は、さらに、入出力ブリッジ１４３４を介してアクセス可能な、ディスク１４４０Ａから読み出すためのブルーレイ（登録商標）ディスクＢＤ−ＲＯＭ光ディスクリーダ１４４０及び脱着可能なスロットインハードディスクドライブ（ＨＤＤ）１４３６を備える。システムユニット１４００は、オプションで、入出力ブリッジ１４３４を介して同様にアクセス可能な、コンパクトフラッシュ（登録商標）メモリカード、メモリスティック（登録商標）メモリカードなどを読み出すためのメモリカードリーダ１４３８をさらに備える。
【００７１】
入出力ブリッジ１４３４は、さらに、複数のユニバーサルシリアルバス（ＵＳＢ）２．０ポート１４２４、ギガビットイーサネット（登録商標）ポート１４２２、ＩＥＥＥ８０２．１１ｂ／ｇ無線ネットワーク（Ｗｉ−Ｆｉ）ポート１４２０、７つのブルートゥース（登録商標）接続までサポート可能なブルートゥース無線リンクポート１４１８に接続する。
【００７２】
動作中、入出力ブリッジ１４３４は、１以上のゲームコントローラ１４０２〜１４０３からのデータを含む全ての無線、ＵＳＢ及びイーサネット（登録商標）データを扱う。例えば、ユーザがゲームをプレーするとき、入出力ブリッジ１４３４は、ブルートゥースリンクを介してゲームコントローラ１４０２〜１４０３からデータを受信し、セルプロセッサ１４２８に伝える。セルプロセッサ１４２８は、ゲームの現在の状態をそのように更新する。
【００７３】
無線、ＵＳＢ及びイーサネット（登録商標）ポートは、ゲームコントローラ１４０２〜１４０３に加えて、リモートコントローラ１４０４、キーボード１４０６、マウス１４０８、ソニープレイステーションポータブル（登録商標）エンタテインメント装置などの携帯型エンタテインメント装置１４１０、アイトイ（登録商標）ビデオカメラなどのビデオカメラ１４１２、マイクロフォンヘッドセット１４１４、及びマイクロフォン１４１５などの他の周辺装置との接続も提供する。これらの周辺装置は、原則として、システムユニット１４００に無線で接続されてもよい。例えば、携帯型エンタテインメント装置１４１０は、Ｗｉ−Ｆｉアドホック接続を介して通信してもよいし、マイクロフォンヘッドセット１４１４は、ブルートゥースリンクを介して通信してもよい。
【００７４】
これらのインタフェースの提供は、プレイステーション３装置が、ディジタルビデオレコーダ（ＤＶＲ）、セットトップボックス、ディジタルカメラ、携帯型メディアプレーヤ、ボイスオーバーＩＰ電話、携帯電話、プリンタ、及びスキャナなどの他の周辺装置との互換性をも潜在的に有することを意味する。
【００７５】
さらに、プレイステーション（登録商標）又はプレイステーション２（登録商標）装置により用いられる種類のメモリカード１４４８の読み出しを可能にするレガシーメモリカードリーダ１４１６が、ＵＳＢポート１４２４を介してシステムユニットに接続されてもよい。
【００７６】
ゲームコントローラ１４０２〜１４０３は、ブルートゥースリンクを介してシステムユニット１４００と無線通信可能であるか、ＵＳＢポートを介して接続して、ゲームコントローラ１４０２〜１４０３のバッテリを充電するための電源も提供可能である。ゲームコントローラ１４０２〜１４０３は、メモリ、プロセッサ、メモリカードリーダ、フラッシュメモリなどの永続メモリ、ＬＥＤ又は赤外光などの光照射部、超音波通信のためのマイクロフォン及びスピーカ、音響チャンバ、ディジタルカメラ、内部クロック、ゲームコンソールに面した球などの認識可能な形状、及びブルートゥース、ＷｉＦｉなどのプロトコルを用いた無線通信を含んでもよい。
【００７７】
図１Ａ〜４Ａにおいて前述したように、ゲームコントローラ１４０２は両手で用いられるように設計されたコントローラであり、ゲームコントローラ１４０３は、ボールが設けられた、片手で扱うコントローラである。１以上のアナログジョイスティック及び従来の制御ボタンに加えて、ゲームコントローラは、三次元位置決定が可能である。したがって、ゲームコントローラのユーザのジェスチャー及び動きが、従来のボタン又はジョイスティックのコマンドに加えて、又はそれに代えて、ゲームに対する入力として翻訳されてもよい。オプションとして、プレイステーションポータブル装置などの他の無線通信可能な周辺装置がコントローラとして用いられてもよい。プレイステーションポータブル装置の場合、装置の画面に、更なるゲーム又は制御情報（例えば、制御命令又はライフの数）が提供されてもよい。ダンスマット（図示せず）、光線銃（図示せず）、ステアリングホイール及びペダル（図示せず）、又は早押しクイズゲームのための単一又はいくつかの大きなボタンなどの専用コントローラ（図示せず）などの他の代替又は追加の制御装置が用いられてもよい。
【００７８】
リモートコントローラ１４０４は、ブルートゥースリンクを介してシステムユニット１４００と無線通信可能である。リモートコントローラ１４０４は、ブルーレイディスクＢＤ−ＲＯＭリーダ１４４０の動作及びディスク内容のナビゲーションのために適した制御を備える。
【００７９】
ブルーレイディスクＢＤ−ＲＯＭリーダ１４４０は、従来の記録済み及び記録可能なＣＤ及びいわゆるスーパーオーディオＣＤに加えて、プレイステーション及びプレイステーション２装置に互換なＣＤ−ＲＯＭを読み出し可能である。リーダ１４４０は、従来の記録済み及び記録可能なＤＶＤに加えて、プレイステーション２及びプレイステーション３装置に互換なＤＶＤ−ＲＯＭを更に読み出し可能である。リーダ１４４０は、さらに、従来の記録済み及び記録可能なブルーレイディスクだけでなく、プレイステーション３装置に互換なＢＤ−ＲＯＭを読み出し可能である。
【００８０】
システムユニット１４００は、生成された、又は、リアリティシンセサイザーグラフィックスユニット１４３０を介してプレイステーション３装置によりデコードされた音声及び映像を、音声及び映像コネクタを介して、モニタ又はディスプレー１４４４と１以上のラウドスピーカ１４４６を有するテレビジョンセットなどの表示及び音声出力装置１４４２に対して供給可能である。音声コネクタ１４５０は、従来のアナログ及びディジタル出力を含んでもよく、映像コネクタ１４５２は、コンポーネントビデオ、Ｓ−ビデオ、コンポジットビデオ、及び１以上の高解像度マルチメディアインタフェース（ＨＤＭＩ）出力などを含んでもよい。結果として、映像出力は、ＰＡＬ又はＮＴＳＣ、又は、７２０ｐ、１０８０ｉ又は１０８０ｐ高解像度の形式であってもよい。
【００８１】
音声処理（生成、デコードなど）は、セルプロセッサ１４２８により実行される。プレイステーション３装置のオペレーティングシステムは、ドルビー（登録商標）５．１サラウンド音声、ドルビーシアターサラウンド（ＤＴＳ）、及びブルーレイディスクからの７．１サラウンド音声のデコードをサポートする。
【００８２】
本発明の一つの実施の形態によれば、ビデオカメラ１４１２は、単一の電荷結合素子（ＣＣＤ）、ＬＥＤインジケータ、及びハードウェアベースのリアルタイムデータ圧縮エンコード装置を備え、圧縮されたビデオデータは、システムユニット１４００によりデコードするために、画像間ベースのＭＰＥＧ（motion picture expert group）スタンダードなどの適当な形式で送信されてもよい。カメラＬＥＤインジケータは、例えば逆光条件を知らせるなどのシステムユニット１４００からの適切な制御データに応答して光る。ビデオカメラ１４１２の実施の形態は、ＵＳＢ、ブルートゥース、又はＷｉ−Ｆｉの通信ポートを介してシステムユニット１４００に接続してもよい。ビデオカメラの実施の形態は、１以上の結合されたマイクロフォンを含み、音声データを送信可能であってもよい。ビデオカメラの実施の形態において、ＣＣＤは、高精細ビデオキャプチャに適した解像度を有してもよい。使用中、ビデオカメラにより撮像された画像は、例えば、ゲーム内に組み込まれてもよいし、ゲーム制御入力として解釈されてもよい。カメラの別の実施の形態において、カメラは、赤外光を検出するのに適した赤外線カメラである。
【００８３】
一般に、システムユニット１４００の通信ポートの一つを介して、ビデオカメラ又はリモートコントローラなどの周辺装置との間で発生するデータ通信を成功させるために、デバイスドライバなどの適切なソフトウェアが提供されるべきである。デバイスドライバの技術は既知であり、ここでは詳述しないが、本実施の形態においてデバイスドライバ又は類似のソフトウェアインタフェースが要求されることは、当業者には理解されるところである。
【００８４】
図１１は、本発明の一つの実施の形態における、命令の処理に利用可能な追加のハードウェアを示す。図１０のセルプロセッサ１４２８は、メモリコントローラ１５６０及びデュアルバスインタフェースコントローラ１５７０Ａ、１５７０Ｂを備える外部入出力構成、パワープロセッシングエレメント（ＰＰＥ）１５５０と呼ばれるメインプロセッサ、シナジスティックプロセッシングエレメント（ＳＰＥ）１５１０Ａ〜Ｈと呼ばれる８個のコプロセッサ、要素相互接続バス１５８０と呼ばれる、上記の要素を接続する環状データバスの４つの基本要素を備えた構成を有する。セルプロセッサの全体の浮動小数点演算は、プレイステーション２装置のエモーションエンジンの６．２Ｇフロップスであるのに対して、２１８Ｇフロップスである。
【００８５】
パワープロセッシングエレメント（ＰＰＥ）１５５０は、３．２ＧＨｚの内部クロックで動作するパワーＰＣ（PowerPC）コア（ＰＰＵ）１５５５に互換な、双方向平行マルチスレッドパワー１４７０に基づいている。これは、５１２ｋＢのレベル２（Ｌ２）キャッシュ及び３２ｋＢのレベル１（Ｌ１）キャッシュを備える。ＰＰＥ１５５０は、クロックサイクルごとに８つの単精度演算を行うことができ、これは３．２ＧＨｚにおいて２５．６ギガフロップスにあたる。ＰＰＥ１５５０の主要な役割は、ほとんどの計算作業負荷を扱うＳＰＥ１５１０Ａ〜Ｈのためのコントローラとして機能することである。動作において、ＰＰＥ１５５０は、ジョブのキューを保持し、ＳＰＥ１５１０Ａ〜Ｈのジョブをスケジューリングし、それらの進行を監視する。それぞれのＳＰＥ１５１０Ａ〜Ｈは、ジョブを取ってきて実行するのが役割であるカーネルを実行し、ＰＰＥ１５５０に同期される。
【００８６】
それぞれのＳＰＥ１５１０Ａ〜Ｈは、シナジスティックプロセッシングユニット（ＳＰＵ）１５２０Ａ〜Ｈを備え、それぞれのメモリフローコントローラ（ＭＦＣ：Memory Flow Controller）１５４０Ａ〜Ｈは、ダイナミックメモリアクセスコントローラ（ＤＭＡＣ：Dynamic Memory Access Controller）１５４２Ａ〜Ｈ、メモリ管理ユニット（ＭＭＵ）１５４４Ａ〜Ｈ、及びバスインタフェース（図示せず）を備える。それぞれのＳＰＵ１５２０Ａ〜Ｈは、クロックが３．２ＧＨｚで、原則として４ＧＢまで拡張可能な２５６ｋＢのローカルＲＡＭ１５３０Ａ〜Ｈを備える、ＲＩＳＣプロセッサである。それぞれのＳＰＥは、理論上、２５．６ＧＦＬＯＰＳの単精度性能を与える。ＳＰＵは、４つの単精度浮動小数演算、４つの３２ビット演算、８つの１６ビット整数演算、又は１６の８ビット整数演算を、１つのクロックサイクルで実行可能である。同じクロックサイクルにて、メモリ命令を実行することもできる。ＳＰＵ１５２０Ａ〜Ｈは、システムメモリＸＤＲＡＭ１４２６に直接アクセスしない。ＳＰＵ１５２０Ａ〜Ｈにより生成される６４ビットのアドレスは、ＭＦＣ１５４０Ａ〜Ｈに渡され、要素相互接続バス１５８０及びメモリコントローラ１５６０を介してメモリにアクセスするためのＤＭＡコントローラ１５４２Ａ〜Ｈに命令される。
【００８７】
要素相互接続バス（ＥＩＢ）１５８０は、セルプロセッサ１４２８の内部の論理的に巡回した通信バスである。ＥＩＢは、上述のプロセッサエレメント、すなわち、ＰＰＥ１５５０、メモリコントローラ１５６０、デュアルバスインタフェース１５７０Ａ、Ｂ、及び８つのＳＰＥ１５１０Ａ〜Ｈの、合計１２の要素を接続する。要素は、クロックサイクルごとに８バイトの速度でバスを同時に読み、及び書き込むことができる。前述したように、それぞれのＳＰＥ１５１０Ａ〜Ｈは、より長いリード又はライトシーケンスをスケジュールするためのＤＭＡＣ１５４２Ａ〜Ｈを備える。ＥＩＢは４つのチャンネルを備え、２つは時計回りで、２つは反時計回りの方向である。１２の要素の間で、任意の２つの要素の間のうち最も長いデータフローは、適切な方向に６ステップとなる。ＥＩＢの１２スロットの帯域の理論上のピークの瞬間は、要素間の調停を通じて全てが利用されたとき、クロックごとに９６バイトである。これは、クロックレートが３．２ＧＨｚのときの理論上のピークバンド幅の３０７．２ＧＢ／ｓ（ギガバイト毎秒）と同じである。
【００８８】
メモリコントローラ１５６０は、ランバス社により開発されたＸＤＲＡＭインタフェース１５６２を備える。メモリコントローラは、理論上はピークバンド幅毎秒２５．６ギガバイトで、ランバスＸＤＲＡＭ１４２６と接続する。
【００８９】
デュアルバスインタフェース１５７０Ａ、Ｂは、ランバスフレックスＩＯ（登録商標）システムインタフェース１５７２Ａ、Ｂを備える。インタフェースは、それぞれが８ビット幅である、入力５経路、出力７経路の１２チャンネルに組織化される。これは、セルプロセッサ及びコントローラ１７０Ａを介した入出力ブリッジ７００及びコントローラ１７０Ｂを介したリアリティシミュレータグラフィックスユニット２００の間の６２．４ＧＢ／ｓ（出力３６．４ＧＢ／ｓ、入力２６ＧＢ／ｓ）の理論的ピークバンド幅を提供する。
【００９０】
セルプロセッサ１４２８によりリアリティシミュレータ（Reality Simulator）グラフィクスユニット１４３０に送られたデータは、典型的には、表示リスト、頂点の描画命令列、ポリゴンに対するテクスチャの適用、光条件の特定などを含む。
【００９１】
図面のフロー図は、本発明の特定の実施の形態により実行される手順の特定の順序を示すが、そのような順序は例であり、例えば、別の実施の形態では、異なる順序で、特定の手順を組み合わせたり、特定の手順を重複したりして手順が実行されてもよい。
【００９２】
単一の角度（例えば、ヨー、ピッチ、又はロール）の誤差を補正することに関する本発明の実施の形態が説明されたが、本発明の別の実施の形態において、複数の角度の誤差が同時に補正されてもよいことが理解されるべきである。
【００９３】
上述の説明は、例示を意図しており、制限を意図していないことが理解されるべきである。上述の説明を読み、理解した当業者には、多数の別の実施の形態が明らかとなろう。本発明が、いくつかの特定の実施の形態に関して説明されたが、本発明は説明された実施の形態に限られず、添付された特許請求の範囲の精神及び範囲内で変更及び代替が可能であることは、当業者に認識されるところである。したがって、詳細な説明は、限定ではなく例示であるとみなされるべきである。本発明の範囲は、特許請求の範囲に与えられる全ての範囲の均等物とともに、特許請求の範囲を参照して決定されるべきである。
【図１】
2012511999.tif 000019
【図２Ａ】
2012511999.tif 000020
【図２Ｂ】
2012511999.tif 000021
【図２Ｃ】
2012511999.tif 000022
【図３】
2012511999.tif 000023
【図４】
2012511999.tif 000024
【図６】
2012511999.tif 000025
【図７】
2012511999.tif 000026
【図８】
2012511999.tif 000027
【図９】
2012511999.tif 000028
【図１１】
2012511999.tif 000029
【図５】
2012511999.tif 000030
【図１０】
2012511999.tif 000031
【国際調査報告】
2012511999.tif 000032
2012511999.tif 000033