(57)【特許請求の範囲】
【請求項１】
コンピューティングシステムのコンピュータプログラムとユーザの手に把持されているコントローラとの間で通信を確立するための方法であって、
画像キャプチャデバイスが、ディスプレイ前方のキャプチャ領域内で画像データをキャプチャするステップを有し、
コンピュータシステムが、画像データ内のコントローラに関連付けられた形状を検出するために画像データを解析することで、前記キャプチャ領域内での前記コントローラの二次元位置を算出し、
前記コントローラがキャプチャ領域内にある間に、前記コントローラから発生した音声をサウンドキャプチャデバイスによってキャプチャするステップを有し、かつ、
前記コンピュータシステムが、前記音声がサウンドキャプチャデバイスに到達するまでの時間を解析することで、前記キャプチャ領域内での前記コントローラの第３の次元の位置を算出し、更に、
前記第３の次元の位置を算出するステップは、
前記音声が前記コントローラから前記サウンドキャプチャデバイスに到達するまでの伝達時間に基づいて、前記コントローラから前記サウンドキャプチャデバイスまでの距離を算出するステップと、
前記距離に基づいて前記キャプチャ領域内での深度を算出するステップと、を有する、方法。
【請求項２】
前記コンピュータシステムが前記コントローラの二次元位置を算出するステップは、前記画像データ内で、前記コントローラが有する球形の形状を検出するステップを更に有する請求項１に記載の方法。
【請求項３】
前記キャプチャされた画像データは、ＲＧＢピクセル画像データ、モノクロピクセル画像データ、または赤外データのいずれかに対応する請求項１に記載の方法。
【請求項４】
前記音声をキャプチャする前に、前記コンピュータシステムと前記コントローラとの間でクロックを同期させるステップを更に有する請求項１に記載の方法。
【請求項５】
コンピューティングシステムのコンピュータプログラムとユーザの手に把持されているコントローラとの間で通信を確立するための方法であって、
画像キャプチャデバイスが、ディスプレイ前方のキャプチャ領域内で画像データをキャプチャするステップを有し、
コンピュータシステムが、画像データ内のコントローラに関連付けられた形状を検出するために画像データを解析することで、前記キャプチャ領域内での前記コントローラの二次元位置を算出し、
前記コントローラがキャプチャ領域内にある間に、前記コントローラから発生した音声をサウンドキャプチャデバイスによってキャプチャするステップを有し、かつ、
前記コンピュータシステムが、前記音声がサウンドキャプチャデバイスに到達するまでの時間を解析することで、前記キャプチャ領域内での前記コントローラの第３の次元の位置を算出し、更に、
第２のコントローラから発生した音声を、前記サウンドキャプチャデバイスがキャプチャするステップと、前記コントローラと前記第２のコントローラ間で双方向音声通信を確立するステップとを更に有する請求項１に記載の方法。
【請求項６】
前記深度は、前記二次元位置の２つの次元のいずれに対しても直交する値である請求項１に記載の方法。
【請求項７】
前記二次元位置および前記第３の次元の位置に基づいて、前記ディスプレイのグラフィカルユーザインタフェースに物体を提示するステップを更に有する請求項１に記載の方法。
【請求項８】
コンピュータプログラムとコントローラとの間で通信を確立するためのシステムであって、
ディスプレイ前方のキャプチャ領域において画像データをキャプチャするための画像キャプチャデバイスと、
前記キャプチャ領域において音声データをキャプチャするための音声キャプチャデバイスと、
前記ディスプレイ、前記画像キャプチャデバイスおよび前記音声キャプチャデバイスに接続されており、コンピュータプログラムを実行するためのコンピューティングシステムと、
ユーザに片手で把持される前記コントローラと、を有し、前記コントローラは、
第１の端部および第２の端部を有する本体と、
前記第１の端部の周囲のグリップエリアと、
前記コンピューティングシステムに送信する入力データを入力するための、前記第１の端部と前記第２の端部との間に画定された入力パッドと、
前記画像キャプチャデバイスによる画像認識を容易にするための、前記第２の端部に画定された球型部分と、
前記第２の端部の近傍の音声発生デバイスと、を有し、把持時に前記音声発生デバイスは前記ユーザから離れる方向に向けられ、前記音声キャプチャデバイスとの単方向音声通信のために構成されており、
前記コンピュータプログラムは、前記キャプチャされた画像データに基づいて前記コントローラの二次元位置を、前記キャプチャされた音声データに基づいて前記コントローラの第３の次元の位置を、それぞれ特定し、更に、
前記第３の次元の位置の特定では、
前記音声が前記コントローラから前記サウンドキャプチャデバイスに到達するまでの伝達時間に基づいて、前記コントローラから前記サウンドキャプチャデバイスまでの距離を算出し、
前記距離に基づいて前記キャプチャ領域内での深度を算出する、システム。
【請求項９】
前記球型部分は、再帰反射領域を更に有する請求項８に記載のシステム。
【請求項１０】
前記球型部分は、前記キャプチャされた画像データでの前記球型部分の位置の特定を支援するために所定の色を有する請求項８に記載のシステム。
【請求項１１】
前記コントローラは、
前記球型部分に内蔵された光源を更に有し、
前記球型部分は半透明であり、
前記光源は、前記キャプチャされた画像データでの前記球型部分の位置の特定を支援するために、前記球型部分を照光する請求項８に記載のシステム。
【請求項１２】
前記光発信源は赤外光源を有し、前記画像キャプチャデバイスは、赤外線カメラを更に有する請求項１１に記載のシステム。
【請求項１３】
前記画像キャプチャデバイスは、可視スペクトルカメラを更に有し、前記二次元位置の前記特定において、前記赤外線カメラからの前記画像データと前記可視スペクトルカメラからの前記画像データとが組み合わされる請求項１２に記載のシステム。
【請求項１４】
前記コントローラ内に設けられたマイクロフォンと、
前記コントローラと同様に構成された第２のコントローラと、を更に有し、
前記コンピュータプログラムによって前記第２のコントローラの三次元位置が特定され、
前記コントローラと前記第２のコントローラとは、前記コントローラと前記第２のコントローラとの間の距離を決定するために使用される双方向音声通信のために構成され、前記距離が前記コンピューティングシステムに送信され、
前記コンピュータプログラムは、前記コントローラの前記三次元位置の前記特定において前記決定されたコントローラ間距離を使用する請求項８に記載のシステム。
【請求項１５】
前記コントローラと前記第２のコントローラとは、長手方向の次元に物理的に直列に連結され、前記２台のコントローラの両方が前記コンピュータプログラムによってトラッキングされ、精度の向上のために前記２台のコントローラの前記特定された位置が組み合わされる請求項１４に記載のシステム。
【請求項１６】
連結を行なうために前記２台のコントローラの端部間に画定されたアダプタを更に有する請求項１５に記載のシステム。
【請求項１７】
前記コントローラと前記第２のコントローラとは、長手方向の次元に物理的に並列に連結され、前記コントローラを連結して両手で把持する一体型コントローラ設計を形成するためにプレートが使用される請求項１４に記載のシステム。
【請求項１８】
前記コンピュータシステムに接続されたスピーカを更に有し、
前記コントローラは、コントローラ側音声キャプチャデバイスを更に有し、
前記コントローラと前記コンピュータシステムとは、前記スピーカおよび前記コントローラ側音声キャプチャデバイスを介して逆方向の単方向音声通信を確立する請求項８に記載のシステム。
【請求項１９】
前記第３の次元の位置の前記特定は、
前記単方向音声通信のタイムオブフライトおよび位相コヒーレンスを測定することによって前記第３の次元の位置の深度値を算出する請求項８に記載のシステム。
【請求項２０】
前記入力パッドの異なるボタン構成を収容するために前記入力パッドは着脱可能である請求項８に記載のシステム。
【請求項２１】
前記コンピュータプログラムは、前記キャプチャされた画像データ内のユーザの頭の位置または前記キャプチャされた画像データ内のユーザの胴体の位置を検出することによってユーザの移動をトラックする請求項８に記載のシステム。
【請求項２２】
前記コントローラは、前記コントローラの慣性活動をトラッキングするための慣性アナライザを更に有し、前記慣性活動は、動作に対して前記コンピュータプログラムから転送される請求項８に記載のシステム。
【請求項２３】
前記音声発生デバイスは、前記コントローラ内部にアコースティックチェンバを有し、前記アコースティックチェンバは、音声を１つ以上の方向に対して案内および受信するために画定される請求項８に記載のシステム。
【請求項２４】
前記コンピュータプログラムは前記キャプチャされた画像および音声データの一部をサンプリングし、前記コンピュータプログラムは、前記コントローラ上の前記位置の前記特定中に前記サンプリングされたデータを組み合わせる請求項８に記載のシステム。
【請求項２５】
コンピュータプログラムとコントローラとの間で通信を確立するためのシステムであって、
ディスプレイ前方のキャプチャ領域に対向し、前記ディスプレイ近傍に配置された第１の発光素子の組および第２の発光素子の組と、
前記キャプチャ領域において音声データをキャプチャするための音声キャプチャデバイスと、
前記ディスプレイおよび前記音声キャプチャデバイスに接続されており、コンピュータプログラムを実行するためのコンピューティングシステムと、
ユーザに片手で把持される前記コントローラと、を有し、前記コントローラは、
第１の端部および第２の端部を有する本体と、
前記第１の端部の周囲のグリップエリアと、
前記コンピューティングシステムに送信する入力データを入力するための、前記第１の端部と前記第２の端部との間に画定された入力パッドと、
前記第１の発光素子の組および前記第２の発光素子の組が存在する領域の画像データをキャプチャするための前記第２の端部の近傍の画像キャプチャデバイスと、
前記第２の端部の近傍の音声発生デバイスと、を有し、把持時に前記音声発生デバイスは前記ユーザから離れる方向に向けられ、前記音声キャプチャデバイスとの単方向音声通信のために構成されており、
前記コンピュータプログラムは、前記キャプチャされた画像データに基づいて前記コントローラの二次元位置を、前記キャプチャされた音声データに基づいて前記コントローラの第３の次元の位置を、それぞれ特定し、更に、
前記第３の次元の位置の特定では、
前記音声が前記コントローラから前記サウンドキャプチャデバイスに到達するまでの伝達時間に基づいて、前記コントローラから前記サウンドキャプチャデバイスまでの距離を算出し、
前記距離に基づいて前記キャプチャ領域内での深度を算出する、システム。
【請求項２６】
前記コントローラは、前記キャプチャされた画像データを前記コンピューティングシステムに送信する請求項２５に記載のシステム。
【請求項２７】
前記コントローラ内部のプロセッサが、前記キャプチャされた画像データに基づいて前記コントローラの位置を算出し、前記コントローラは、前記算出された位置を前記コンピューティングシステムに送信する請求項２５に記載のシステム。
【請求項２８】
１つ以上のプロセッサによって実行されると、コンピューティングシステムのコンピュータプログラムとユーザの手に把持されるコントローラとの間で通信を確立するためのコンピュータ可読記憶媒体に搭載されたコンピュータプログラムであって、
ディスプレイ前方のキャプチャ領域の画像キャプチャデバイスで画像データをキャプチャするプログラム命令と、
画像データ内のコントローラに関連付けられた形状を検出するために、コンピューティングシステムによって画像データを解析することで、前記キャプチャ領域内での前記コントローラの二次元位置を計算するプログラム命令と、
前記コントローラがキャプチャ領域内にある間に、前記コントローラから発生した音声をサウンドキャプチャデバイスによってキャプチャするプログラム命令と、
前記コンピュータシステムによって、前記音声が前記サウンドキャプチャデバイスに到達するまでの時間を解析することで、前記キャプチャ領域内での前記コントローラの第３の次元の位置を算出するプログラム命令と、を含み、
前記第３の次元の位置の算出では、
前記音声が前記コントローラから前記サウンドキャプチャデバイスに到達するまでの伝達時間に基づいて、前記コントローラから前記サウンドキャプチャデバイスまでの距離を算出し、
前記距離に基づいて前記キャプチャ領域内での深度を算出する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、コンピューティング装置とユーザの手に把持されているコントローラ間の通信に関し、より詳細には、三次元空間内でのコントローラの位置を決定するための、コンピューティング装置とコントローラ間の通信の使用に関する。
【背景技術】
【０００２】
ビデオゲーム産業は、長年にわたって多くの変化を経験してきた。演算能力が拡大するにつれ、ビデオゲームの開発者も同様に、この演算能力の増大を利用するゲームソフトウェアを作成してきた。このために、ビデオゲームの開発者は、極めてリアルなゲーム体験を生み出すべく、高度な演算と数学を採用したゲームをコーディングしてきた。
【０００３】
ゲームプラットホームの例に、ソニープレイステーション（登録商標）、ソニープレイステーション２（登録商標）（ＰＳ２）およびソニープレイステーション３（登録商標）（ＰＳ３）があり、これらはそれぞれ、ゲームコンソールの形で販売されている。周知のように、ゲームコンソールはモニタ（通常はテレビ）と接続されて、手持ち式のコントローラによってユーザとのインタラクションを可能にするように設計されている。ゲームコンソールは、ＣＰＵ、処理量の多いグラフィック操作のためのグラフィックシンセサイザ、ジオメトリ変換を実行するためのベクトルユニットなどの特化した処理ハードウェアと、その他の繋ぎとなるハードウェア即ちグルーハードウェア、ファームウェアおよびソフトウェアなどを備えて設計される。また、ゲームコンソールは、ゲームコンソールによるローカルプレイを行うためにゲームのコンパクトディスクを受け容れるための光ディスクトレイを備えて設計される。また、ユーザが、インターネット上で他のユーザと対戦して、または、他のユーザと一緒に対話的にプレイすることができるオンラインゲームも可能である。
【０００４】
ゲームの複雑さがプレーヤの興味を引き続けていることから、ゲームおよびハードウェアのメーカは更なるインタラクティブ機能（インタラクティビティ）およびコンピュータプログラムを実現するために革新を続けてきている。
【０００５】
コンピュータゲーム業界においては、ユーザとゲームシステム間のインタラクションを増やすゲームを開発する傾向が広がっている。より多くのインタラクティブな体験を実現する１つのやり方として、プレーヤの動きをトラッキングして、この動きをゲームの入力として使用するために、ゲームシステムによって移動がトラッキングされる無線ゲームコントローラを使用する方法がある。一般的にいうと、ジェスチャ入力とは、コンピューティングシステム、ビデオゲームコンソール、インテリジェント家電などの電子装置を、オブジェクトをトラッキングするビデオカメラがキャプチャした何らかのジェスチャに反応させることを指す。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、現在の物体トラッキングは、キャプチャ精度が低い。この問題は、従来の画像解析では、ユーザの位置の二次元の測定値が、そこそこの精度の値でしか得られないために生じる。カメラへの接近、あるいはカメラとの離間によるわずかな形状の変化では、カメラとコントローラ間の距離を正確に算出するのに十分な情報が得られないため、カメラとトラッキング対象の物体間の距離を決定することは難しい。研究段階では、深度検知デバイスを使用することがある。しかし、このような深度検知デバイスは、双方向の戻り、いわゆるバウンスバックを利用しており、深度検知デバイスの前に置かれた物体から反映される光から、特定の画像の輪郭を決定しようとする。このような深度検知デバイスには特定の用途があるものの、深度データを二次元画像データと組み合わせることはコストが高く、複雑であり、余分な処理が必要となるため、ゲームへのその用途は多少限られてしまう。したがって、インタラクティブなゲームコントローラへの深度データの組み込みは遅々として進まず、望ましい成果を上げておらず、研究段階以外では広く受け容れられていない。
【０００７】
本発明の実施形態は、この状況においてなされたものである。
【課題を解決するための手段】
【０００８】
概して、本発明は、ユーザによって把持されるコントローラの三次元位置を決定するために、コンピューティングシステムのコンピュータプログラムと前記コントローラとの間で通信を確立するための方法およびシステムを提供することによって、これらのニーズを満たす。本発明は、プロセス、装置、システム、デバイスまたはコンピュータ可読媒体上の方法など、多くの方法で実装することができる点を理解されたい。以下に本発明のいくつかの発明の実施形態を記載する。
【０００９】
一実施形態では、コンピューティングシステムのコンピュータプログラムとユーザの手に把持されているコントローラとの間で通信を確立するための方法が提供される。前記方法は、ディスプレイ上にグラフィカルユーザインタフェースを表示し、前記ディスプレイ前方の領域の画像データをキャプチャする。このディスプレイ前方の領域は「キャプチャ領域」とも呼ばれ、ユーザがコンピューティングシステムと対話すると予想される空間を包含している。キャプチャ領域を広げたり狭めるように、キャプチャ領域を調整することもできる。デジタルビデオカメラによって提供されるデータなどのキャプチャされた画像データが使用され、キャプチャ領域に対するコントローラの二次元位置が特定される。また、前記方法は、前記ディスプレイ近傍の位置（例えばマイクロフォン）と前記コントローラ上の位置との間の単方向音声通信もキャプチャする。前記音声通信を介して取得された情報が使用され、前記キャプチャ領域内での前記コントローラの三次元位置が算出される。
【００１０】
別の実施形態は、コンピュータプログラムとコントローラとの間で通信を確立するためのシステムについて記載する。前記システムは、グラフィカルユーザインタフェースを描画するためのディスプレイと、画像キャプチャデバイスと、音声キャプチャデバイスと、前記コンピュータプログラムを実行するためのコンピューティングシステムとを有する。前記画像キャプチャデバイスは前記ディスプレイ前方の領域の画像データをキャプチャし、ここではこの領域を「キャプチャ領域」と呼ぶ。前記音声キャプチャデバイスも同様に、前記キャプチャ領域において音声データをキャプチャする。前記コンピューティングシステムは、前記ディスプレイ、前記画像キャプチャデバイス、および前記音声キャプチャデバイスに接続されている。前記コントローラはユーザに片手で把持されるように構成され、第１の端部および第２の端部を有する本体と、前記第１の端部の周囲のグリップエリアと、入力データを入力するための前記２つの端部間の入力パッドと、前記第２の端部の球型部分と、前記第２の端部の近傍の音声発生デバイスと、を有する。前記球型部分は、前記画像キャプチャデバイスによる画像認識を容易にし、前記音声発生デバイスは、把持時に前記ユーザから離れる方向に向けられ、前記音声キャプチャデバイスとの単方向音声通信を提供する。前記コンピュータプログラムは、前記キャプチャされた画像データに基づいて前記コントローラの二次元位置を、前記キャプチャされた音声データに基づいて前記コントローラの第３の次元の位置を、それぞれ特定する。
【００１１】
更に、別の実施形態では、コンピュータプログラムとコントローラとの間で通信を確立するためのシステムが提供される。前記システムは、ディスプレイと、前記ディスプレイ近傍に配置され、前記ディスプレイ前方のキャプチャ領域を向いている２組の発光素子と、マイクロフォンなどの音声キャプチャデバイスと、前記コンピュータプログラムを実行するためのコンピューティングシステムとを有する。前記コンピューティングシステムは、前記ディスプレイおよび前記音声キャプチャデバイスに接続されている。本システムにおいて、前記コントローラは、ユーザに片手で把持され、第１の端部および第２の端部を有する本体と、前記第１の端部の周囲のグリップエリアと、前記第１の端部と前記第２の端部との間の入力パッドと、前記第２の端部の近傍の画像キャプチャデバイスと、前記第２の端部の近傍の音声発生デバイスと、を有する。把持時に前記音声発生デバイスは前記ユーザから離れる方向に向けられ、前記コンピューティングシステムの近くの前記音声キャプチャデバイスとの単方向音声通信に対応する。本システム内で前記コンピュータプログラムは、前記キャプチャされた画像データに基づいて前記コントローラの二次元位置を、前記キャプチャされた音声データに基づいて前記コントローラの第３の次元の位置を、それぞれ特定する。
【００１２】
本発明の他の態様は、例示のために本発明の原理を示す添付の図面と併せて、以下の詳細な説明を読めば明らかとなるであろう。
【図面の簡単な説明】
【００１３】
【図１】複数人のプレーヤが存在するインタラクティブなプレイ環境を示す。
【図２Ａ】一実施形態による、マルチプレーヤ環境と、複数人のプレーヤによって把持されている異なるコントローラの位置を決定するためのビデオデータおよび音声データの使用を示す模式図である。
【図２Ｂ】一実施形態による、マルチプレーヤ環境と、複数人のプレーヤによって把持されている異なるコントローラの位置を決定するためのビデオデータおよび音声データの使用を示す模式図である。
【図２Ｃ】一実施形態による、マルチプレーヤ環境と、複数人のプレーヤによって把持されている異なるコントローラの位置を決定するためのビデオデータおよび音声データの使用を示す模式図である。
【図２Ｄ】一実施形態による、マルチプレーヤ環境と、複数人のプレーヤによって把持されている異なるコントローラの位置を決定するためのビデオデータおよび音声データの使用を示す模式図である。
【図３Ａ】球形部分と超音波機能とを有する片手コントローラの実施形態を示す。
【図３Ｂ】球形部分と超音波機能とを有する片手コントローラの実施形態を示す。
【図４】一実施形態による、球形部分が１つ以上の内部発光素子によって照光されるコントローラの模式図を示す。
【図５】一実施形態による、球形部分の内部に、コントローラの外側から見える発光素子を内蔵しているコントローラを示す。
【図６】超音波機能と、再帰反射材料が部分的に覆われている球形部分とを有するコントローラを示す。
【図７】交換可能なフェイスプレートを有する片手コントローラを有する一実施形態を示す。
【図８】一実施形態による、両手で使用するようになっているコントローラを形成するためにインサートプレートによって連結された２台の片手コントローラの模式図を示す。
【図９Ａ】一実施形態における、片手コントローラを形成するために基部で接続された２台の片手コントローラを示す。
【図９Ｂ】一実施形態における、片手コントローラを形成するために基部で接続された２台の片手コントローラを示す。
【図１０】一実施形態による、コントローラとユーザの特徴との視覚的トラッキングを示す。
【図１１】一実施形態におけるコントローラの動きのトラッキングを示す。
【図１２Ａ】プレーヤによって把持されている片手コントローラのさまざまな図を示す。
【図１２Ｂ】プレーヤによって把持されている片手コントローラのさまざまな図を示す。
【図１３】一実施形態による、相対距離を決定するための超音波の使用を示す、片手コントローラを使用しているプレーヤの模式図を示す。
【図１４Ａ】一実施形態による、ビデオおよび超音波を使用した２台のコントローラの三次元位置の決定を示す。
【図１４Ｂ】一実施形態による、ビデオおよび超音波を使用した２台のコントローラの三次元位置の決定を示す。
【図１５】本発明の一実施形態による、２台のコントローラ間の距離を測定するための、超音波を使用したコントローラの位置の決定を示す。
【図１６】一実施形態による、各コントローラに関連する情報を使用した、図９ａに示すように２台のコントローラを連結することによって形成された１台のコントローラの位置の決定を示す。
【図１７】埋め込み型カメラ６０２と超音波通信とを有するコントローラ６００を有する実施形態の上面図を示す。
【図１８】一実施形態による、ビデオ機能と音声機能とを備えた片手コントローラを使用している２人のプレーヤを示す。
【図１９Ａ】ビデオ機能と超音波機能とを備えた片手コントローラの各種実施形態を示す。
【図１９Ｂ】ビデオ機能と超音波機能とを備えた片手コントローラの各種実施形態を示す。
【図１９Ｃ】ビデオ機能と超音波機能とを備えた片手コントローラの各種実施形態を示す。
【図１９Ｄ】ビデオ機能と超音波機能とを備えた片手コントローラの各種実施形態を示す。
【図２０】エンタテインメントシステムの各種構成要素のブロック図である。
【図２１】プレーヤの手と足の近くに配置された４台のコントローラを使用したインタラクティブなプレイのための実施形態を示す。
【図２２】本発明の一実施形態による、コントローラの位置を決定するために使用されうるハードウェアおよびユーザインタフェースを示す。
【図２３】本発明の一実施形態による、命令の処理に使用されうる追加のハードウェアを示す。
【図２４】一実施形態による、コントローラの三次元位置を決定するために、片手コントローラとコンピューティングシステムとを通信させるための方法を示すフローチャートを示す。
【発明を実施するための形態】
【００１４】
本発明は、添付の図面を参照して以下の説明を読めば理解が深まるであろう。
【００１５】
ユーザによって把持されているコントローラの三次元位置を決定するために、コンピューティングシステムのコンピュータプログラムとユーザの手によって把持されているコントローラとの間で通信を確立するための方法およびシステムが提供される。前記方法は、ディスプレイにグラフィカルユーザインタフェースを表示し、前記コンピューティングシステムと対話しているユーザが存在すると予想される前記ディスプレイ前方に存在する領域の画像データをキャプチャする。キャプチャされた画像データが使用されて、前記キャプチャ領域内でのコントローラの二次元位置が特定される。前記二次元位置は、前記コントローラの水平位置と垂直位置とを示す。また、前記方法は、音声データをキャプチャするために、前記ディスプレイ近傍の位置と前記コントローラ上の位置との間の単方向音声通信を使用する。音声データは、コントローラからディスプレイ領域間の距離を算出するために使用される。二次元位置と距離との組み合わせが、コントローラが存在するキャプチャ領域内の点を規定する。
【００１６】
ここで使用する「単方向音声通信」とは、音波を使用して、送信元から受信器に情報を送信することを指す。一部の実施形態では、音波は超音波であり、このため人には聞こえない。一部の実施形態では、送信元は音声通信の第１の終端に対応し、受信器は第２の終端に対応する。別の実施形態ではこの役割が逆転しており、第１の終端が受信器に対応し、第２の終点が送信元に対応する。更に、一部の実施形態は、第１の終端と第２の終端間の二方向（または双方向）通信を有し、この場合、任意の時点で、第１の終端または第２の終端のいずれも、送信元または受信器として機能することができる。
【００１７】
音声通信は、この音声通信に関連する情報を調べることによって、一端から他端間の距離を評価するために使用される。例えば、音の速さに基づいて距離を調べるために、送信元が受信器に音声パルスを送信し、音声信号が一端から他端に伝わるのに要する時間が測定される。一実施形態では、送信元と受信器とが、同じ実体ではなく異なる実体に対応している点に留意すべきである。換言すれば、信号が送信元に戻るのに要する時間は、本明細書に記載の方法および装置では考察されない。送信元から受信器間の距離を測定できる限り、音声パルスを使用する他に、音声通信と組み合わせて他の操作を使用してもよい。他の操作の例としては、位相コヒーレンスの解析、波信号の位相の変更、波信号の周波数の変更、波信号の振幅の変更などが挙げられる。
【００１８】
しかし、本発明を、このような詳細な内容の一部または全てを用いなくても実施しうることは当業者にとって自明である。場合によっては、本発明を不必要にあいまいにすることのないよう、公知の処理操作は詳述していない。
【００１９】
図１は、複数人のプレーヤが存在するインタラクティブなプレイ環境を示す。エンタテインメントシステム１００はコンピューティングシステム１０２を有し、コンピューティングシステム１０２は、プレーヤＡ，Ｂ，Ｃによって把持されているコントローラＣ１〜Ｃ５との通信のための命令を含むコンピュータプログラムを実行している。コンピューティングシステム１００は、画像キャプチャデバイス１０６、音声キャプチャデバイス１０８、ディスプレイ１０４、およびコントローラＣ１〜Ｃ５と通信している。コンピューティングシステム１００は、直接の有線接続あるいは無線通信（ブルートゥース（登録商標）、Ｗｉ−Ｆｉ（登録商標）、８０２．１１など）を介してエンタテインメントシステム１００内の他の実体と通信している。代表的な構成においては、コンピューティングシステム１０２と、コンピューティングシステムの近くに存在する固定要素（画像キャプチャデバイス１０６、ディスプレイ１０４、および音声キャプチャデバイス１０８等）間では直接の有線接続が使用され、コントローラとの通信は、ＷｉＦｉ（登録商標）を使用した無線である。ＷｉＦｉ（登録商標）に特に触れたが、規格化されていない通信プロトコルおよびアルゴリズムを含め、他の通信規格が使用されてもよいことを理解すべきである。
【００２０】
キャプチャ領域１１８は、システムのユーザが、エンタテインメントシステム１００とのインタラクション中に存在すると予想される三次元空間である。画像キャプチャデバイス１０６は、キャプチャ領域の画像を撮像し、この画像をコンピューティングシステム１０２に送信する。一実施形態では、画像キャプチャデバイス１０６はデジタルビデオカメラである。他の実施形態は他のタイプの画像キャプチャデバイスを使用し、これには、カラーデジタルカメラ、モノクロデジタルカメラ、赤外線カメラ、あるいは検出対象の物体の特定の特性（所定の色など）の検出に特化した特殊デバイスなどがある。
【００２１】
キャプチャされた画像データは、圧縮フォーマットまたは原フォーマットで操作および解析されうる。原画像フォーマットは、画像キャプチャデバイスからの、必要最小限の処理しか行なわれていないデータを含む。被処理または圧縮画像データは、ワイドガマット内部色空間を有する原コンバータによって作成され、正確な調整が行なわれてから、タグ付き画像ファイルフォーマット（ＴＩＦＦ）、ジョイントフォトグラフィックエキスパートグループ（ＪＰＥＧ）、ポータブルネットワークグラフィックス（ＰＮＧ）、グラＧＩＦフォーマット（Graphics Interchange Format）、ビットマップファイルフォーマット（ＢＭＰ）などのＲＧＢファイルフォーマットに変換される。被処理画像の色深度は、モノクロ、グレースケールから、ウェブパレット、ピクセル当たり２４ビットなど、多岐にわたりうる。一実施形態では、原画像データが解析されて、画像データ内でのコントローラの形状の位置が特定されたのち、画像データの位置する形状に対応してコントローラの位置が指定される。別の実施形態では、キャプチャされた画像内でコントローラの位置を特定する代わりに、被処理画像データが使用される。
【００２２】
キャプチャされた画像データを使用して、コントローラの二次元位置が決定される。この位置は、キャプチャ領域などの三次元空間内の面、あるいは線上の点を規定する２つの座標ｘとｙ（ｘ，ｙ）によって特定される。時に、水平位置と垂直位置とを使用して、ｘ値とｙ値が参照されることもある。また、原点からの角度、ベクトルなどの別の種類の座標も使用される。同様に、三次元空間内で、空間内の点を特定するために別の座標系が使用されてもよく、これには、ｘ、ｙ、ｚ直交座標、ｘ、ｙ座標と原点からのベクトの組み合わせ、または２つの角度とベクトルなどがある。
【００２３】
音声キャプチャデバイス１０８は、キャプチャ領域から音声データを取得する。一実施形態では、コントローラが発した音声を音声キャプチャデバイス１０８が受信する単方向通信が使用される。超音波通信を使用することにより、プレーヤの体感に干渉するのを防ぐことができる。一実施形態では、コントローラは音声の発生源のスピーカを有し、音声キャプチャデバイスは、キャプチャ領域に指向された受信マイクロフォンを有する。一実施形態では、キャプチャ領域の外から来る外来のノイズがキャプチャされるのを防ぐフィルタ技術を使用して、キャプチャ領域の指向の精度を向上させることができる。また、音声キャプチャデバイスは、不要な音源からの干渉を更に低減させるために、超音波通信に使用されていない周波数をフィルタする。それでも、プレイ領域の近くの表面から反射される音声のため、音声通信が誤った値あるいは誤った読取り値を含むことがある。一実施形態では、コンピューティングシステム１０２は、音声の反射によって発生する誤った値を排除するために、指向性フィルタ、音波解析などのメカニズムを有する。
【００２４】
別の実施形態では、コントローラと画像キャプチャデバイス１０６間の通信は双方向であり、コントローラまたは音声デバイスの両方が、超音波メッセージの送信あるいは受信を行なう。更に、別の実施形態では、逆方向の単方向通信が行なわれ、各コントローラに超音波マイクロフォンが設けられており、音声発生デバイスがディスプレイ近傍に配置されている。
【００２５】
超音波通信を使用して、音声信号が目的地に到達するのに要する時間を解析することによって、コントローラと音声キャプチャデバイス間の距離（符号ｄｚで示す）が測定される。また、距離をより正確に決定するために、受信信号の位相コヒーレンスが解析されてもよい。単方向の超音波通信が使用される場合、音声が発生源から目的地まで伝わるのに要する時間の正確な測定を行なうには、正確なクロック同期が必要となる。当業者であれば、クロック同期を行なうための公知の方法を容易に理解するであろう。例えば、クロックを同期させるために、コントローラとコンピューティング装置間にＷｉＦｉ（登録商標）チャンネルを使用することができる。ザレウスキー（Zalewski）に付与された米国特許第５，９９１，６９３号明細書は、本発明によって使用されるトラッキングモードを開示しており、同特許を参照によりここに援用する。
【００２６】
キャプチャされた画像データに基づいて得られた位置（ｘ，ｙ）と距離ｄｚとの組み合わせが、三次元キャプチャ領域内の１点を規定する。ｄｚは上記のｘ軸およびｙ軸と直交するｚ軸内の値に変換できるため、ｄｚは、時として「第３の次元」と呼ばれることもある。ｚ測定値は、キャプチャ領域内の「深度」と呼ばれる。例えば、ｄｚ５はｚ５の深度値に対応する。この幾何学的変換については、図２Ｄを参照して以下で更に詳細に記載する。
【００２７】
一実施形態では、キャプチャ領域１１８は、画像キャプチャデバイス１０６から定義されるキャプチャ領域の境界１１４ａ，１１４ｂと、所定の焦点深度の後方線とによって規定される。最大深度の代表値は３〜１０フィートであるが、他の値も可能である。別の実施形態では、キャプチャ領域が角錐形状である必要はなく、本発明の原理が保たれる限り、立方体、球、円錐の形状や、任意の他の形状でもよい。
【００２８】
図２Ａ〜２Ｄは、一実施形態による、マルチプレーヤ環境と、複数人のプレーヤによって把持されている異なるコントローラの位置を決定するためのビデオデータおよび音声データの使用を示す模式図である。図２Ａは、２人のプレーヤがいるプレイ環境の三次元図を示す。画像キャプチャデバイスを使用して、コントローラＣ１，Ｃ２，Ｃ４，Ｃ５のｘ座標およびｙ座標が取得される。音声キャプチャデバイス１０８が受信する超音波通信を使用して、距離ｄｚ１，ｄｚ２，ｄｚ４，ｄＺ５が算出される。図１に示すように、コンピューティングシステム１０２は、取得した座標および距離を使用して、画面内でのプレーヤの表現、すなわち、アバター１１２ａ，１１２ｂを生成する。
【００２９】
図２Ｂは、図２ＡのプレーヤＡに対応する、プレイ環境の上面図を示す。キャプチャ領域１１８は、コントローラの検出範囲を規定している。一実施形態では、コントローラＣ１，Ｃ２は、この２台のコントローラが両者間の距離ｄＲＳ１を測定できるように、双方向の超音波通信を提供するように構成される。コントローラは、コントローラ間通信を実現するために、コントローラの側面に音声インタフェースを備えて構成されている。一実施形態では、距離ｄＲＳ１はＸ物理値に対応しており、この値が、ディスプレイ上にキャプチャされるＸスクリーン距離に変換される。一実施形態では、画面上でのアバター１１２ａの表現には垂直成分が考慮されない。別の実施形態では、ｄＲＳ１からｘ成分とｙ成分の両方が算出され、画面の表現には、三次元プレイフィールドの投射図（不図示）が含まれる。
【００３０】
図２Ｃは、異なる時点における図２Ｂと同じプレーヤを示し、コントローラＣ１とＣ２の距離が、図２ＢのｄＲＳ１よりも広い距離ｄＲＳ２に広がっている。距離ｄＲＳ２は、新しい水平間隔（ｘ＋Δｘ）に対応する。新しい（ｘ＋Δｘ）は、ディスプレイ内でのコントローラの新しい相対位置に変換され、この相対位置は比例する量（ｘ＋Δｘスクリーン）だけ変更される。
【００３１】
図２Ｄは、距離測定から絶対深度（ｚ）測定への変換を示す。ｄｚは、コントローラ１２４から、座標（ｘ０，ｙ０，ｚ０）の音声キャプチャデバイス１０８間の距離である。画像キャプチャデータを使用して、コントローラ１２４の水平座標（ｘ１）と垂直座標（ｙ１）とが算出される（不図示）。コントローラ１２４のｚ１値を算出するには、三次元空間内で座標（ｘ１，ｙ１）によって規定される線内の任意の点と、音声キャプチャデバイスを中心とした半径ｄｚ１の球との交差が求められる。この線は、等式｛ｘ＝ｘ１；ｙ＝ｙ１｝によって定義される。
【００３２】
この式は、射影歪みのない空間を想定している。別の実施形態は、画像キャプチャデバイスからの斜視に起因しうる歪みを補償する。球は、式（ｘ−ｘ０）２＋（ｙ−ｙ０）２＋（ｚ−ｚ０）２＝ｄｚ１２によって定義される。
【００３３】
この球の式のｘ１にｘを、ｙ１にｙを代入すると、深度値ｚ１に対応するｚ値が得られる。この式は２つのｚ値を返すが、一方の値のみがキャプチャ領域内に存在する点に留意されたい。
【００３４】
図３Ａ〜３Ｂは、球形部分１３２と超音波機能とを有する片手コントローラ１３０の実施形態を示す。球形部分１３２が球形状を有しているため、画像キャプチャデバイスによってキャプチャされた画像を解析することによりコントローラ位置を検出できるようになる。
【００３５】
本明細書で使用する「球形」との用語は、完全な球に限定されないことを理解すべきである。むしろ、「球形」との用語は、同様な外観を有する任意の形状も含み、これには、楕円形、部分的に球形の側面、楕円形状、球体形状、ボール形状、バルーン形状、隆起形状、突出形状、拡大形状、延在形状などのほか、容易に検出され、ハンドヘルドのコントローラの一部をなすか、これに接続または連結される任意の種類の形状、あるいは単純な基本的な物理的物体などがある。
【００３６】
別の実施形態では、画像データを使用したコントローラのより正確な検出が可能となるように、以下に記載するように、球形部分に追加の特徴が追加される。コントローラ１３０は、双方向の超音波通信のために構成される。音声インタフェース１３６は、コントローラの前面に向う超音波通信を提供しており、音声インタフェース１３４は、コントローラの側面に向う音声通信を提供する。上で説明したように、前面の通信は、コントローラから、他端の音声受信器間の距離ｄｚの決定に使用される。
【００３７】
音声インタフェース１３４は、コントローラ１３０を持っているプレーヤがもう一方の手に持っている第２のコントローラと通信するために使用される。また、側方音声通信を使用して、別のプレーヤが持っている別のコントローラと通信し、別のプレーヤとコントローラとの位置決定の精度を上げることができる。一実施形態では、図３Ｂを参照して下で説明するように、コントローラ内部のアコースティックチェンバが音声用の伝達路を提供する。別の実施形態では、音声インタフェース１３４は、側方通信が不要な場合は音声インタフェース１３６を閉じるスライド式ドアを備えており、これによりコントローラの前方方向の音声通信の出力を改善することができる。入力パッドエリア１３８は、ゲームのプレイ中にユーザからの入力を取得するためのボタンを有する。コントローラ１３０は、ユーザの手にフィットするためのグリップエリア１４０を有する。
【００３８】
図３Ｂは、内部アコースティックチェンバ１５０を有する、図３Ａに図示したようなコントローラ１３０を示す。内部アコースティックチェンバは、音声発生源１５４および音声受信器１５２との間で伝達される超音波を、コントローラの外部に向けて伝達する。一実施形態では、アコースティックチェンバ１５０は、前面と側面とに音声インタフェースを有する。アコースティックチェンバを使用することにより、１つの音声発生源と１つの音声受信器のみを使用した多方向の音声通信が可能となる。別の実施形態では、アコースティックチェンバが使用されず、音声発生源と音声受信器の対が、音声通信を行なうコントローラの各側面に配置されている。別の実施形態では、音声通信が、球形部分を通過してもよく、これにより、音声が複数の方向に分散されて、コントローラが相手先の音声キャプチャデバイスに必ずしも正確に向いていない場合であっても音声通信を行なえるようになる。複数の音声インタフェースが球形部分の全体に分散して設けられており、各音声インタフェースがアコースティックチェンバに接続されている。音声インタフェースが、音声が来る方向または音声インタフェースを特定するのを補助する音声センサを備えてもよく、これにより精度を向上することができる。
【００３９】
図４は、一実施形態による、球形部分が１つ以上の内部発光素子１７２によって照光されるコントローラ１７０の模式図を示す。発光素子１７２から発せられた光が球形部分１７４を照光しており、これにより、球形部分の輝度が上がり、コンピューティング装置が、背景画像に対して球形部分の詳細および輪郭をより容易に識別できるようになり、画像データの解析の際にコントローラを検出しやすくなる。一実施形態では、発光素子１７２は発光ダイオード（ＬＥＤ）である。別の実施形態では、発光素子１７２は、赤外スペクトル域にあり、球形部分が赤外光によって照光され、赤外線カメラによる検出が可能となる。
【００４０】
コントローラをトラッキングしているカメラが赤外周波数で動作する（あるいは、赤外モードに切り替わることができる）ことが好ましいが、可視スペクトル域で動作するカメラが、ｘ位置とｙ位置をトラッキングできるように、コントローラの球形部分が明るいネオンオレンジまたはネオングリーンでもよい。
【００４１】
図５は、一実施形態による、球形部分１８２の内部に、コントローラの外側から見える赤外発光素子１８４を内蔵しているコントローラを示す。球形部分は、歪みを最小限に抑えて赤外光を透過させ、これにより、赤外線カメラが、赤外光を検出することによってコントローラ１８０の位置を検出可能となる。別の実施形態では、光源が、可視スペクトル域で動作するＬＥＤであり、デジタルカメラによって撮像された可視スペクトルの画像データを解析することによって検出される。更に別の実施形態では、可視光と赤外線の出力が得られるように、複数の光源周波数が混合される。
【００４２】
図６は、超音波機能と、再帰反射材料１９４が部分的に覆われている球形部分１９２とを有するコントローラ１９０を示す。再帰反射部材とは、入射角とは平行であるが、入射角から逆向きのベクトルに波面を反射させるデバイスまたは表面である。再帰反射器は、波面に厳密に垂直である場合にしかこのような反射を行なわない鏡とは異なる。球形部分１９２に再帰反射性を付与する、あるいは少なくとも部分的に再帰反射性を付与することにより、図１４Ｂに示すように、離れて存在する光キャプチャデバイスの隣にある光源から来る光が、光キャプチャデバイスのほうに反映されるようになる。これにより、非再帰反射部材よりも反射光量が増大し、キャプチャされた画像のコントラストが高くなり、コントローラの認識が向上する。別の実施形態では、光の反射を最大化するために、球形部分１９２が再帰反射材料で完全に覆われている。
【００４３】
実施形態の組み合わせを得るために、各実施形態の各特徴が、本発明の別の実施形態の特徴と組み合わされてもよいことを理解すべきである。例えば、再帰反射コーティングされた球形部分に、赤外光源が内蔵されており、球形部分の内部からの赤外光が、再帰反射材料が設けられていない球の透過性領域を透過するようにしてもよい。
【００４４】
図７は、交換可能なフェイスプレートを有する片手コントローラ２１０の一実施形態を示す。２２０ａ，２２０ｂなどの異なるフェイスプレイを使用することにより、異なるキーパッドの構成を使用でき、ユーザがさまざまなゲームをプレイする際に、より柔軟に入力方式を選択できるようになる。図７に示す実施形態では、ユーザは、方向指示パッドを有するフェイスプレートＡ  ２２０ａか、４ボタンを有するフェイスプレートＢ  ２２０ｂを使用するかを選択することができる。
【００４５】
図８は、一実施形態による、両手で使用するようになっているコントローラを形成するためにインサートプレート３０２によって連結された２台の片手コントローラ３０３ａ，３０３ｂの模式図を示す。インサートプレートは、ユーザのために入力オプションを追加する。２台のコントローラ間にフェイスプレートを使用した場合、コントローラ間距離が固定されて既知の値となる。離れて存在するコンピューティングシステムが、精度の向上のために２台のコントローラの両方の動きをトラッキングする。また、コンピューティングシステムは、コントローラ間の固定距離を考慮することにより、三角測量法を使用して、位置検出とコントローラの向きとの精度を更に向上させることができる。
【００４６】
図９Ａ〜９Ｂは、一実施形態における、片手コントローラを形成するために基部で接続された２台の片手コントローラを示す。ロック機構３２２は、片手コントローラ３２０ａ，３２０ｂを基部で連結可能にする。一実施形態では、コントローラ３２０ａ，３２０ｂが噛み合うように、コントローラの形状が構成される。別の実施形態では、アダプタを使用してコントローラが連結される。アダプタが硬質であり、コントローラと共に堅い構造を形成しても、あるいは、組み合わせの形状を変えたり変化させることができるようにアダプタが可撓性を有してもよい。例えば、アダプタがロープ状の機構を有し、２台のコントローラの組み合わせが、ゲームでヌンチャクとして使用されてもよい。更に、別の実施形態では、アダプタが、入れ子方式で長手方向に延び、長剣または投げ槍に似た組み合わせを形成してもよい。別の実施形態では、コンピューティングシステムがコントローラの連結を検出可能にするため、あるいは、コントローラ間の直接通信を可能にするために、コントローラ間に電気的接続が行なわれる。この組み合わせは、「剣」または「ワンド」構成とも呼ばれることがある。図８のコントローラの組み合わせと同様に、「剣」構成により、離れて存在するコンピューティング装置が、精度の向上のために２台のコントローラの両方をトラッキングすることが可能となる。
【００４７】
図９Ｂは、「剣」コントローラを含む三次元プレイ環境を示す。カメラ３２２と音声キャプチャデバイス３２４とが、２台のコントローラの両方をトラッキングする。例えば、超音波通信を使用して、コントローラから音声キャプチャデバイス３２４間の距離ｄｚ１，ｄｚ２が決定される。コンピューティングシステムは、空間内の位置を検出し、２台のコントローラの両方の端部の位置を算出する。一実施形態では、２台のコントローラを連結している線が、画面上でツールまたは武器の同様の位置に変換される。
【００４８】
図１０は、一実施形態による、コントローラ３６０とユーザの特徴との視覚的トラッキングを示す。カメラ３６２によってキャプチャされた画像データが、コントローラの（ｘ，ｙ）位置の算出だけではなく、プレーヤとコントローラ位置とをゲームへの入力とみなするため、人の特徴を検出するためにも解析される。一実施形態では、頭の領域３５０と胴体の領域３５２とがトラッキングされる。別の実施形態では、プレーヤの目（不図示）がトラッキングされる。線３５４はユーザの顔に向かう方向を、線３５６は胴体の方向を、線３５８はコントローラの方向および距離をそれぞれ示す。各線間の角度θ１，θ２の変化が、コントローラに対するプレーヤの位置の相対変化を示す。
【００４９】
図１１は、一実施形態におけるコントローラの動きのトラッキングを示す。コントローラ３８０は、球形部分と超音波通信との他に、コントローラ３８０の慣性活動をトラッキングする慣性アナライザ３８８を備える。慣性アナライザ３８８からのデータがコンピューティングシステム３８２に送信される。６自由度（例えば、ｘ，ｙ，ｚ方向の並進移動、およびｘ軸，ｙ軸，ｚ軸を中心とした回転）に関する情報を提供するために、各種の慣性センサ装置を使用することができる。６自由度に関する情報を提供するための好適な慣性センサの例としては、加速度計、１台以上の一軸加速度計、機械式ジャイロスコープ、リングレーザージャイロスコープ、あるいはこれらの二以上の組み合わせが挙げられる。内部アナライザ３８８からの信号が解析されて、ビデオゲームのプレイ中のコントローラの動きと向きとが決定される。一実施形態では、慣性解析データが、ＷｉＦｉ（登録商標）無線通信３８２を介してコンピューティングシステムに伝達される。別の実施形態では、有線通信、あるいは有線通信と無線通信との組み合わせも可能である。また、ＷｉＦｉ（登録商標）を特に挙げたが、通信を行なうために他の無線モードおよび規格が使用されてもよい。
【００５０】
図１２Ａ〜１２Ｂは、プレーヤによって把持されている片手コントローラのさまざまな図を示す。図１２Ａは、プレーヤに対向するカメラの視点からの代表的な視野を示す。この実施形態では、コントローラ４００は、カメラの隣またはその周囲に存在する光源から来る光を反射させ、反射光を逆方向に戻して、カメラに戻る光量を最大化するための再帰反射材料４０２を有する。カメラの視点からは音声インタフェース４０４も見ることができる。
【００５１】
図１２Ｂは、再帰反射材料４０２を有する球形部分４００と、音声インタフェース４０４，４０６とを有するコントローラの側面図を示す。
【００５２】
図１３は、一実施形態による、相対距離を決定するための超音波の使用を示す、片手コントローラ４２０ａ，４２０ｂを使用しているプレーヤの模式図を示す。この２台のコントローラは、音声受信器４２２との双方向の超音波通信と、コントローラ間の双方向の超音波通信とに対応している。一実施形態では、コントローラ４２０ａ，４２０ｂは、音声情報を送受信する。キャプチャされた音声情報は、コントローラ間距離ｄＲＳを算出するために、コンピュータプログラムに送信されて処理される。別の実施形態では、コントローラのうちの１つの内部のプロセッサが、ｄＲＳを算出するためにコントローラ間の音声の伝達時間を測定し、この測定値がリモートのコンピュータプログラムに送信され、このプログラムが、この情報を、三次元キャプチャ領域内でのコントローラの位置の算出に使用する。図１を参照して上で説明したように、超音波測定を使用して距離を算出するには同期が必要である。
【００５３】
図１４Ａ〜１４Ｂは、一実施形態による、ビデオおよび超音波を使用した２台のコントローラの三次元位置の決定を示す。図１４Ａは、時間経過後の図１３と同じユーザを示しており、ユーザの手が動いて、コントローラ間距離が図１３よりも大きな距離ｄＲＳに広がっている。この例では、この手の間隔の広がりが、画面のアバターの手の間隔の広がりにも反映されている。図１４Ｂに示す実施形態では、コントローラ４２０ｂは、赤外発光素子４３３から発せられる赤外光を反射するために使用される再帰反射材料を有する。反射された光が赤外線カメラ３２６によってキャプチャされて画像データが生成され、このデータが解析されてコントローラの位置が決定される。別の実施形態では、カメラ４３６は、赤外線カメラと可視スペクトルカメラの両方である。カメラ４３６は、赤外スペクトルの画像データと可視スペクトルの画像データとを交互に取得する。この２種類の測定がコンピューティングシステムによって使用され、ｘ，ｙ位置が算出される。コントローラの位置特定に２つの方式を用いることにより、より高い精度を得ることができる。
【００５４】
図１５は、本発明の一実施形態による、２台のコントローラ４５０ａ，４５０ｂ間の距離を測定するための、超音波を使用したコントローラの位置の決定を示す。
【００５５】
図１６は、一実施形態による、各コントローラに関連する情報を使用した、図９ａに示すように２台のコントローラを連結することによって形成された１台のコントローラの位置の決定を示す。図９Ａ，９Ｂを参照して上で説明したように、コントローラ５００ａと５００ｂとが連結されている。各コントローラの位置が別個に算出され、精度の向上のために、位置の算出にコントローラ間距離ｄＲＳが使用される。ｄＲＳは既知の値であるため、測定されたコントローラ間距離が既知の距離と比較され、コントローラの位置の調整を行なうことができる。
【００５６】
一実施形態では、測定値の逸脱または欠陥を除外するために、いくつかの連続する測定値の組がトラッキングされる。測定間のサンプリングの頻度は、必要な精度と、演算リソースが利用可能かどうかに応じて変わる。例えば、インタラクティブな格闘ゲームは、インタラクティブなチェスゲームよりも測定の頻度を高くする必要がある。
【００５７】
図１７は、埋め込み型カメラ６０２と超音波通信とを有するコントローラ６００を有する実施形態の上面図を示す。この実施形態では、カメラが、ディスプレイ領域の近くではなくコントローラ上に設けられている。発光素子６０６ａと６０６ｂが、ディスプレイのほぼ反対側の端に設けられている。画像データがカメラ６０２によってキャプチャされ、発光素子６０６ａ，６０６ｂからの光が、コントローラ位置の特定を支援する。発光素子の位置６１０ａ，６１０ｂは、ｘ軸およびｙ軸内での発光素子の位置を表す。マイクロフォン６０４とコントローラ６００間の超音波通信が使用され、コントローラからマイクロフォン間の距離ｄｚが算出される。
【００５８】
一実施形態では、カメラ６０２によってキャプチャされた画像が、コンピューティング装置ＰＳ３に送信され、コンピューティング装置がキャプチャされた画像を処理して、コントローラのｘ，ｙ位置を算出する。別の実施形態では、コントローラ６００内蔵のプロセッサが画像データを処理し、コントローラ位置を算出して、この位置がコンピューティング装置ＰＳ３に送信される。別の実施形態では、コントローラ６００が画像データの部分的な処理を行ない、データのサブセットがコンピューティング装置ＰＳ３に送信されて最終的に処理される。
【００５９】
カメラがコントローラ上に存在する別の実施形態が図１８に図示されており、この図は、一実施形態による、ビデオ機能と音声機能とを備えた片手コントローラ６００ａ，６００ｂを使用している２人のプレーヤを示す。
【００６０】
カメラがコントローラ上に存在するため、コントローラの前面に球形部分、あるいは容易に認識可能な他の任意の形状を有する必要がなくなり、設計を薄型化できる。図１９Ａ〜１９Ｄは、ビデオ機能と超音波機能とを備えた片手コントローラの各種実施形態を示す。コントローラ６５０は、前面にカメラ６５２と超音波インタフェースとを備えた基本的な構成を有する。コントローラ６６０は側面音声インタフェース６６２も更に備え、このインタフェースは、他のコントローラとの通信に使用でき、場合によっては、インタラクティブプレイ中にコントローラの向きが画面から逸れた場合に、ディスプレイシステム近傍の音声キャプチャインタフェースとの通信にも使用することができる。
【００６１】
図１９Ｃのコントローラ６７０は、入力のためにコントローラ、ジョイスティック６７４、およびキーパッド６７２を使用中に、プレーヤの手にフィットするように構成されたグリップ６７６を有する。コントローラ６８０は、図１９Dのコントローラ６６０と同様の側面インタフェース６２２も更に有する。
【００６２】
図２０は、エンタテインメントシステムの各種構成要素のブロック図である。コンピューティングシステムとその構成要素とが図２０の左側に図示され、プレーヤ環境が右側に図示されている。コンピューティングシステム７００は、プロセッサ、メモリ領域、クロック、および通信インタフェースを有する。通信インタフェースは、ＷｉＦｉ（登録商標）プロトコルを使用した通信など、コントローラとの無線通信のためのラジオ周波数（ＲＦ）インタフェースを有する。他の通信方法として、画像キャプチャ、音声の送受信（本実施形態では超音波）、発光素子などが挙げられる。
【００６３】
コンピューティングシステム７００に接続された各種通信デバイスが、コンピューティングシステム内部の個々のコントローラに接続している。メモリ領域には、実行中のプログラム、画像処理領域、音声処理領域、およびクロック同期領域が含まれる。実行中のプログラムには、ゲームプログラム、画像処理プログラム、音声処理プログラム、クロック同期プログラムなどが含まれる。これらのプログラムは、メモリの対応する領域を使用し、このような領域には、画像データを含む画像処理領域、超音波通信データを含む音声処理領域、遠隔デバイスとの同期に使用されるクロック同期領域などが挙げられる。
【００６４】
いくつかのコントローラ構成の実施形態が、プレーヤ環境領域に図示されている。コントローラＡは、上で説明した特徴の多くを有する「フル搭載」コントローラである。コントローラＡは、コンピューティングシステム７００とのクロック同期に使用されるクロック同期（ＣＳ）モジュール、超音波データを受信するための音声受信器（ＳＲｘ）、超音波データを送信するための音声送信器（ＳＲｘ）、コンピューティングシステム７００とのＷｉＦｉ通信のためのＷｉＦｉ（ＷＦ）モジュール、コントローラの前面および／または側面との間で音声を伝達するためのアコースティックチェンバ（ＡＣ）、画像データをキャプチャするためのデジタルビデオカメラ等の画像キャプチャ（ＩＣ）デバイス、ならびにコンピューティングシステム７００の画像処理モジュールから画像認識をしやすくするための赤外スペクトルまたは可視スペクトル域の発光素子（ＬＥ）を有する。
【００６５】
また、コントローラＡは、リモートキャプチャデバイスによる画像認識を改善するための球形部分（不図示）も備える。球形部分は、画像キャプチャデバイスの隣にある発光素子によって送られ、画像キャプチャデバイスのほうに反射される光量を増加させる再帰反射材料を備える。発光素子が生成する光は、赤外スペクトルまたは可視スペクトル域にあり、このため画像キャプチャデバイスも同じ光スペクトル域で動作する。コントローラＡ内の各種構成要素が、コントローラＡ内部で別個のデバイスまたはモジュールとして実装されてもよい。別の実施形態では、実装を小型化するために、コントローラＡ内の各種構成要素が少数の一体化部品にグループ化されている。また、ゲーム端末またはコンピュータへの接続時にコントローラの充電が可能となるように、各種コントローラが、１つ以上のＵＳＢプラグを有してもよい。
【００６６】
所定のコントローラの使用用途によっては、コントローラＡに関して説明した機能よりも、機能を省いた簡単な構成を使用することができる。コントローラＡについて説明した機能の一部分を使用するコントローラＢ〜Ｅに関して、より簡潔なデバイスの実施形態のいくつかが図示されている。当業者は、本発明の原理が保たれる限り、本発明の趣旨の範囲内で、構成要素を追加または省略することによる同様な構成が可能であることを容易に認めるであろう。
【００６７】
三次元位置特定機能を備えた２台のコントローラの概念は、プレーヤの体またはその近傍に配置された複数のコントローラ、あるいは、三角測量を行ない、常時コントローラをより良好に視認できるようにするための複数のセンサに拡張することができる。一実施形態では、コントローラの位置の異なる幾何学的測定値を得るために、複数のマイクロフォンがキャプチャ領域の周囲に配置され、精度の向上のために三角測量計算が可能となる。図２１は、プレーヤの手と足の近くに配置された４台のコントローラを使用したインタラクティブなプレイのための実施形態を示す。この実施形態では、２台のコントローラがプレーヤの腕または手にストラップ留めされ、更に２台のコントローラがプレーヤの足または脚にストラップ留めされている。この例は、バイシクルキックをしているプレーヤを図示しており、この動きが、コンピュータゲーム内の対応するアバターのバイシクルキックに変換される。一実施形態では、プレーヤに対向するカメラからの画像が、ゲームに追加される他の仮想物体と組み合わせてディスプレイに表示され、プレーヤがゲームシーンに組み込まれる。この実施形態では、ボール、ゴール、フィールド、他のプレーヤ、観戦者などがプレーヤの画像に追加されており、仮想のボールをキックするプレーヤの動きが、ゲームの世界では、仮想のゲームボールをキックするディスプレイ内の動きに変換される。マルチプレーヤ環境では、キャプチャされた画像データに基づいて、他のプレーヤが、仮想物体と組み合わされて仮想世界に組み込まれる。他のプレーヤは、ボールをキックしているプレーヤと同じキャプチャ領域にいても、あるいは、分散マルチプレーヤゲームを実現するために、ゲームにリモートで接続されていてもよい。他の同様なアプリケーションとしては、格闘ゲーム、カーレーシングゲーム、ダンスゲーム、エクササイズゲームのほか、フットボール、テニス、ボクシング、野球、バスケットボール、ホッケーなどの他のスポーツゲームが挙げられる。
【００６８】
図２２は、本発明の一実施形態による、コントローラの位置を決定するために使用されうるハードウェアおよびユーザインタフェースを示す。図２２は、本発明の一実施形態による、三次元コントローラ位置特定システムを実装するために互換性を有しうるコンソールであるソニー（登録商標）プレイステーション３（登録商標）エンターテイメントデバイスのシステムアーキテクチャ全体を模式的に示す。システムユニット１４００は、システムユニット１４００に接続可能なさまざまな周辺機器を備える。システムユニット１４００は、Ｃｅｌｌプロセッサ１４２８、Ｒａｍｂｕｓ（登録商標）ダイナミックランダムアクセスメモリ（ＸＤＲＡＭ）ユニット１４２６、専用のビデオランダムアクセスメモリ（ＶＲＡＭ）ユニット１４３２を有するＲｅａｌｉｔｙ  Ｓｙｎｔｈｅｓｉｚｅｒグラフィックユニット１４３０、およびＩ／Ｏブリッジ１４３４を備える。また、システムユニット１４００は、Ｉ／Ｏブリッジ１４３４を介してアクセス可能な、ディスク１４４０ａから読み出すためのブルーレイ（登録商標）ディスクＢＤ−ＲＯＭ（登録商標）光ディスクリーダ１４４０、および着脱可能なスロットインハードディスクドライブ（ＨＤＤ）１４３６も備える。任意選択で、システムユニット１４００は、同様にＩ／Ｏブリッジ１４３４を介してアクセス可能な、コンパクトフラッシュ（登録商標）メモリカード、メモリースティック（登録商標）メモリカードなどを読み出すためのメモリカードリーダ１４３８も備える。
【００６９】
また、Ｉ／Ｏブリッジ１４３４は、６つのユニバーサルシリアルバス（ＵＳＢ）２．０ポート１４２４、ギガビットイーサネット（登録商標）ポート１４２２、ＩＥＥＥ  ８０２．１１ｂ／ｇ無線ネットワーク（Ｗｉ−Ｆｉ）ポート１４２０、および最大７つのブルートゥース接続に対応可能なブルートゥース（登録商標）無線リンクポート１４１８にも接続している。
【００７０】
動作時に、Ｉ／Ｏブリッジ１４３４は、１台以上のゲームコントローラ１４０２〜１４０３からのデータを含む、全ての無線、ＵＳＢ、およびイーサネット（登録商標）のデータを処理する。例えば、ユーザがゲームをプレイ中に、Ｉ／Ｏブリッジ１４３４はブルートゥースリンクを介してゲームコントローラ１４０２〜１４０３からデータを受信して、これをＣｅｌｌプロセッサ１４２８に転送し、Ｃｅｌｌプロセッサ１４２８が適宜ゲームの現在の状態を更新する。
【００７１】
また、無線、ＵＳＢ、およびイーサネット（登録商標）の各ポートを介して、ゲームコントローラ１４０２〜１４０３のほかに、他の周辺機器も接続することが可能となる。このような周辺機器には、例えば、リモコン１４０４、キーボード１４０６、マウス１４０８、ソニープレイステーションポータブル（登録商標）エンターテイメントデバイスなどのポータブルエンターテイメントデバイス１４１０、ＥｙｅＴｏｙ（登録商標）ビデオカメラ１４１２などのビデオカメラ、マイクロフォンヘッドセット１４１４、マイクロフォン１４１５などがある。このため、これらの周辺機器は、原則としてシステムユニット１４００に無線で接続されうる。例えば、ポータブルエンターテイメントデバイス１４１０はＷｉ−Ｆｉアドホック接続を介して通信し、マイクロフォンヘッドセット１４１４はブルートゥースリンクを介して通信しうる。
【００７２】
これらのインタフェースを提供することにより、プレイステーション３デバイスは、デジタルビデオレコーダ（ＤＶＲ）、セットトップボックス、デジタルカメラ、ポータブルメディアプレーヤ、ＶｏＩＰ電話、携帯電話、プリンタ、およびスキャナなどの他の周辺機器と場合によっては互換となりうる。
【００７３】
更に、ＵＳＢポート１４２４を介して旧式メモリカードリーダ１４１６をシステムユニットに接続することができ、プレイステーション（登録商標）デバイスまたはプレイステーション２（登録商標）で用いられていたタイプのメモリカード１４４８の読み出しが可能となる。
【００７４】
本実施形態では、ゲームコントローラ１４０２〜１４０３は、ブルートゥースリンクを介してシステムユニット１４００と無線通信するように動作可能である。しかし、その代わりに、ゲームコントローラ１４０２〜１４０３が、ＵＳＢポートに接続されてもよく、これにより、ゲームコントローラ１４０２〜１４０３のバッテリに充電するための電力も供給する。また、ゲームコントローラ１４０２〜１４０３は、メモリ、プロセッサ、メモリカードリーダ、フラッシュメモリなどの恒久メモリ、ＬＥＤまたは赤外線灯などの発光素子、超音波通信のためのマイクロフォンおよびスピーカ、アコースティックチェンバ、デジタルカメラ、内部クロック、ゲームコンソールに対向する球形部分等の認識可能な形状、ブルートゥース（登録商標）、ＷｉＦｉ（登録商標）などのプロトコルを使用する無線通信も有しうる。
【００７５】
ゲームコントローラ１４０２は両手で使用されるように設計されたコントローラであり、ゲームコントローラ１４０３は、図１〜２１において上で説明したような片手コントローラである。ゲームコントローラは、１つ以上のアナログジョイスティックおよび従来のコントロールボタンに加えて、三次元位置決定の対象となる。したがって、従来のボタンまたはジョイスティックコマンドに加えて、あるいはこれらの代わりに、ゲームコントローラのユーザが行なったジェスチャおよび移動が、ゲームへの入力として変換されうる。任意選択で、プレイステーション（登録商標）ポータブルデバイスなどの他の無線対応の周辺機器をコントローラとして使用することができる。プレイステーション（登録商標）ポータブルデバイスの場合、追加のゲーム情報または制御情報（例えば制御命令またはライブの数）が、当該デバイスの画面に提示されうる。ほかの代替的または補助的な制御装置が使用されてもよく、これには、ダンスマット（不図示）、ライトガン（不図示）、ハンドルおよびペダル（不図示）、あるいは、即答クイズゲームのための１つまたは複数の大型のボタン（これも図示なし）などの特注品のコントローラなどがある。
【００７６】
また、リモコン１４０４も、ブルートゥースリンクを介してシステムユニット１４００と無線通信するように動作可能である。リモコン１４０４は、ブルーレイ（登録商標）ディスクＢＤ−ＲＯＭリーダ１４４０の操作、およびディスクの内容の閲覧のために適した制御を備える。
【００７７】
ブルーレイ（登録商標）ディスクＢＤ−ＲＯＭリーダ１４４０は、従来の記録済みＣＤ、記録可能ＣＤ、およびいわゆるスーパーオーディオＣＤのほか、プレイステーションデバイスおよびプレイステーション２デバイスと互換のＣＤ−ＲＯＭを読み出すように動作可能である。また、リーダ１４４０は、従来の記録済みＤＶＤおよび記録可能ＤＶＤのほか、プレイステーション２デバイスおよびプレイステーション３デバイスと互換のＤＶＤ−ＲＯＭを読み出すように動作可能である。更に、リーダ１４４０は、従来の記録済みブルーレイディスクおよび記録可能ブルーレイディスクのほか、プレイステーション３デバイスと互換のＢＤ−ＲＯＭを読み出すように動作可能である。
【００７８】
システムユニット１４００は、Ｒｅａｌｉｔｙ  Ｓｙｎｔｈｅｓｉｚｅｒグラフィックユニット１４３０を介して、プレイステーション３デバイスによって生成またはデコードされた音声およびビデオを、音声コネクタおよびビデオコネクタ経由で、ディスプレイ１４４４および１つ以上のスピーカ１４４６を備えた表示および音声出力装置１４４２（モニタまたはテレビ受像機など）に提供するように動作可能である。音声コネクタ１４５０は、従来のアナログ出力およびデジタル出力を備える一方、ビデオコネクタ１４５２は、コンポーネントビデオ、Ｓ−ビデオ、コンポジットビデオ、および１つ以上の高品位マルチメディアインタフェース（ＨＤＭＩ）の出力などを種々備えうる。したがって、ビデオ出力は、ＰＡＬまたはＮＴＳＣ、あるいは７２０ｐ、１０８０ｉまたは１０８０ｐの高解像度などのフォーマットであってもよい。
【００７９】
音声処理（生成、デコードなど）はＣｅｌｌプロセッサ１４２８によって実行される。プレイステーション３デバイスのオペレーティングシステムは、ドルビー（登録商標）５．１サラウンドサウンド、ドルビー（登録商標）シアターサラウンド（ＤＴＳ）、およびブルーレイ（登録商標）ディスクからの７．１サラウンドサウンドのデコードに対応している。
【００８０】
本実施形態では、ビデオカメラ１４１２は、１つの電荷結合素子（ＣＣＤ）、ＬＥＤインジケータ、およびハードウェアベースのリアルタイムデータ圧縮およびエンコード装置を備え、圧縮ビデオデータが、システムユニット１４００によるデコードのために、イントラ画像ベースのＭＰＥＧ（motｉon pｉcture expert group）標準などの適切なフォーマットで送信されるようになる。カメラのＬＥＤインジケータは、例えば不利な照明条件を示す適切な制御データをシステムユニット１４００から受け取ると、発光するように配置されている。ビデオカメラ１４１２の実施形態は、ＵＳＢ、ブルートゥースまたはＷｉ−Ｆｉの通信ポートを介して、システムユニット１４００にさまざまな方法で接続しうる。ビデオカメラの実施形態は、１つ以上の関連するマイクロフォンを備えており、音声データを送信することができる。ビデオカメラの実施形態では、ＣＣＤは、高解像度のビデオキャプチャに適した分解能を備えうる。使用時に、ビデオカメラによってキャプチャされた画像が、例えば、ゲーム内に取り込まれるか、またはゲームの制御入力として解釈されうる。別の実施形態では、カメラは、赤外光の検出に適した赤外線カメラである。
【００８１】
一般に、システムユニット１４００の通信ポートの１つを介して、ビデオカメラまたはリモコン等などの周辺機器とのデータ通信がうまく行われるように、デバイスドライバ等の適切なソフトウェアを提供する必要がある。デバイスドライバ技術は公知であり、ここで詳細に説明しないが、デバイスドライバまたは同様のソフトウェアインタフェースが、記載する本実施形態で必要とされうることを当業者は理解するであろう。
【００８２】
図２３は、本発明の一実施形態による、命令の処理に使用されうる追加のハードウェアを示す。Ｃｅｌｌプロセッサ１４２８は、メモリコントローラ１５６０およびデュアルバスインタフェースコントローラ１５７０Ａ，Ｂを含む外部入出力構造、パワープロセッシングエレメント１５５０と呼ばれるメインプロセッサ、シナジスティックプロセッシングエレメント（ＳＰＥ）１５１０Ａ〜Ｈと呼ばれる８基のコプロセッサ、エレメント相互接続バス１５８０と呼ばれる上記のコンポーネントに接続している環状データバス、の４つの基本コンポーネントを備えたアーキテクチャを有する。プレイステーション２デバイスのエモーションエンジンは６．２ギガフロップスであるのに対し、Ｃｅｌｌプロセッサの総浮動小数点演算性能は、２１８ギガフロップスである。
【００８３】
パワープロセッシングエレメント（ＰＰＥ）１５５０は、３．２ＧＨｚの内部クロックで動作し、双方向同時マルチスレッディングＰｏｗｅｒ１４７０準拠のＰｏｗｅｒＰＣコア（ＰＰＵ）１５５５をベースにしている。ＰＰＥ１５５０は、５１２ｋＢのレベル２（Ｌ２）キャッシュと、３２ｋＢのレベル１（Ｌ１）キャッシュとを備える。ＰＰＥ１５５０は、クロックサイクルごとに８つの単一位置操作ができ、これは、３．２ＧＨｚで２５．６ギガフロップスに相当する。ＰＰＥ１５５０の主な役割は、演算作業負荷の大部分を処理するシナジスティックプロセッシングエレメント１５１０Ａ〜Ｈのコントローラとして機能することにある。動作時に、ＰＰＥ１５５０はジョブキューを保持し、シナジスティックプロセッシングエレメント１５１０Ａ〜Ｈのジョブをスケジュールしており、その進捗を監視する。したがって、各シナジスティックプロセッシングエレメント１５１０Ａ〜Ｈはカーネルを実行し、その役割は、ジョブを取り出して、これを実行し、ＰＰＥ１５５０と同期されることにある。
【００８４】
各シナジスティックプロセッシングエレメント（ＳＰＥ）１５１０Ａ〜Ｈは、シナジスティックプロセッシングユニット（ＳＰＵ）１５２０Ａ〜Ｈおよびメモリフローコントローラ（ＭＦＣ）１５４０Ａ〜Ｈをそれぞれ備え、ＭＦＣ１５４０Ａ〜Ｈは、ダイナミックメモリアクセスコントローラ（ＤＭＡＣ）１５４２Ａ〜Ｈ、メモリ管理ユニット（ＭＭＵ）１５４４Ａ〜Ｈ、およびバスインタフェース（不図示）をそれぞれ備える。各ＳＰＵ１５２０Ａ〜Ｈは３．２ＧＨｚでクロック供給され、原則として４ＧＢまで拡張可能な２５６ｋＢのローカルＲＡＭ１５３０Ａ〜Ｈを備えたＲＩＳＣプロセッサである。各ＳＰＥは、理論的には単精度処理性能で２５．６ギガフロップスを示す。１つのＳＰＵは、１クロックサイクルに、４つの単精度浮動小数点数、４つの３２ビット数、８つの１６ビット整数または１６の８ビット整数を処理することができる。
同じクロックサイクルで、メモリ操作も実行することができる。ＳＰＵ１５２０Ａ〜ＨはシステムメモリＸＤＲＡＭ１４２６に直接アクセスしない。ＳＰＵ１５２０Ａ〜Ｈが作成した６４ビットアドレスがＭＦＣ１５４０Ａ〜Ｈに渡され、ＭＦＣ１５４０Ａ〜Ｈが、自身のＤＭＡコントローラ１５４２Ａ〜Ｈに対して、エレメント相互接続バス１５８０およびメモリコントローラ１５６０を介してメモリにアクセスするように指示する。
【００８５】
エレメント相互接続バス（ＥＩＢ）１５８０は、Ｃｅｌｌプロセッサ１４２８内部の論理的には環状の通信バスであり、上記のプロセッサエレメント（すなわち、ＰＰＥ１５５０、メモリコントローラ１５６０、デュアルバスインタフェース１５７０Ａ，Ｂ、および８基のＳＰＥ１５１０Ａ〜Ｈ、合計１２個のパーティシパント）を接続している。パーティシパントは、１クロックサイクルにつき８バイトの速度で、バスに同時に読み出しおよび書き込みを行うことができる。上で説明したように、各ＳＰＥ１５１０Ａ〜Ｈは、長いリードまたはライトのシーケンスをスケジュールするためのＤＭＡＣ１５４２Ａ〜Ｈを備える。ＥＩＢは、４つのチャネルを備え、そのうち２つは時計回り方向であり、残り２つは反時計回り方向である。したがって、１２のパーティシパントについて、２つのパーティシパント間のステップ方式の最長のデータフローは、適切な方向で６ステップとなる。このため、パーティシパント間でアービトレーションが行われて完全な利用度が実現されると、１２のスロットの理論上のピーク瞬間ＥＩＢ帯域幅は、１クロックにつき９６Ｂとなる。これは、３．２ＧＨｚのクロック速度で３０７．２ＧＢ／ｓ（ギガバイト／秒）の理論上のピーク帯域幅に相当する。
【００８６】
メモリコントローラ１５６０は、ラムバス社（Rambus Incorporated）によって開発されたＸＤＲＡＭインタフェース１５６２を備える。このメモリコントローラは、２５．６ＧＢ／ｓの理論上のピーク帯域幅で、Ｒａｍｂｕｓ  ＸＤＲＡＭ１４２６とインタフェースする。
【００８７】
デュアルバスインタフェース１５７０Ａ，Ｂは、Ｒａｍｂｕｓ  ＦｌｅｘＩＯ（登録商標）システムインタフェース１５７２Ａ，Ｂを備える。このインタフェースは、それぞれ８ビット幅の１２のチャネルに編成されており、このうち、５の経路が受信用、７つの経路が送信用である。これにより、Ｃｅｌｌプロセッサと、コントローラ１７０Ａを介してＩ／Ｏブリッジ７００間、およびコントローラ１７０Ｂを介してＲｅａｌｉｔｙ  Ｓｉｍｕｌａｔｏｒグラフィックユニット２００間で、理論上のピーク帯域幅が６２．４ＧＢ／ｓ（送信３６．４ＧＢ／ｓ、受信２６ＧＢ／ｓ）が得られる。
【００８８】
Ｃｅｌｌプロセッサ１４２８によってＲｅａｌｉｔｙ  Ｓｉｍｕｌａｔｏｒグラフィックユニット１４３０に送信されるデータには、通常、表示リストが含まれ、これは、頂点を描画したり、ポリゴンにテクスチャを貼り付けたり、照明条件を指定するなどための一連のコマンドである。
【００８９】
図２４は、一実施形態による、コントローラの三次元位置を決定するために、片手コントローラとコンピューティングシステムとを通信させるためのフローチャートを示す。操作９０２において、グラフィカルユーザインタフェースが、ＬＣＤなどのディスプレイに表示される。操作９０４において、ディスプレイ前方のキャプチャ領域から画像データがキャプチャされる。例えば、図１の画像キャプチャデバイス１０６を使用して、キャプチャ領域１１８から画像データがキャプチャされる。一実施形態では、画像キャプチャデバイス１０６はデジタルビデオカメラである。
【００９０】
操作９０６において、キャプチャされた画像に基づいてコントローラの二次元位置が特定される。例えば、画像データが、図２０のコンピューティングシステム７００の画像処理モジュールに保持され、図１を参照して説明したように、実行中のプログラムの１つがコントローラの水平位置と垂直位置とを決定する。
【００９１】
コンピューティングシステムとコントローラ間の超音波通信の各終端のクロックを同期させるために、クロック同期操作９０８が実行される。操作９１０において、ディスプレイ近傍の位置とコントローラ上の位置との間で、単方向音声通信がキャプチャされる。一実施形態では、音声が、コントローラで生成され、コンピューティングシステムの音声受信器によって受信される。別の実施形態では、音声が、コンピューティングシステム上の位置で生成され、コントローラによって受信される。
【００９２】
操作９１２において、キャプチャされた音声通信が、クロック同期情報と共に使用され、キャプチャ領域でのコントローラの第３の次元の位置が算出される。この第３の次元の位置は、図２Ｄを参照して上で説明したように、音声キャプチャデバイスからコントローラ間の距離、すなわちキャプチャ領域内でのコントローラの深度であってもよい。
【００９３】
実施形態では、現実世界のユーザをより正確に特定し、アバターまたはシーンのアクティビティを管理するために、深度データのキャプチャが行なわれてもよい。物体は、人物が把持している物体であっても、人物の手であってもよい。更に、本発明の各種実施形態は、リアルタイムのインタラクティブなゲーム体験をユーザに提供する。例えば、ユーザは、コンピュータが生成したさまざまな物体と、リアルタイムでインタラクトすることができる。更に、ユーザのゲーム体験をよりリアルにするために、ビデオシーンをリアルタイムで変更することができる。例えば、コンピュータが生成したコスチュームを、ユーザの服の上にはめ込んだり、コンピュータが生成した光源を利用して、ビデオシーン内に仮想の影を表示させることができる。このため、本発明の各種実施形態と深度カメラを使用して、ユーザは、自分のリビングルームでインタラクティブなゲーム環境を体験することができる。
【００９４】
また、本発明の各種実施形態は、分散型の画像処理構成についても考察している。例えば、本発明は、１つの場所（ＣＰＵなど）や２つの場所（ＣＰＵと他の１つの素子など）で行われるキャプチャ画像および表示画像の処理に限定されない。例えば、入力画像処理は、処理を実行することができる関連のＣＰＵ、プロセッサまたは装置において容易に行うことができ、基本的には、画像処理の全てを、相互接続システム全体に分散させることができる。このため、本発明は、特定の画像処理ハードウェア回路および／またはソフトウェアに限定されない。また、本明細書に記載した実施形態は、一般的なハードウェア回路および／またはソフトウェアの特定の組合せに限定されず、処理コンポーネントによって実行される命令の特定のソースにも限定されない。
【００９５】
上記の実施形態を考慮に入れて、本発明が、コンピュータシステムに記憶されたデータを使用する、各種のコンピュータ実装操作を使用してもよい点を理解すべきである。これらの操作には、物理量の物理的な操作を必要とする操作が含まれる。この物理量は通常、記憶、転送、結合、比較などの操作が可能な電気信号または磁気信号の形を取るが、必ずしもこれらに限定されない。更に、実行される操作は、生成、特定、決定または比較などと呼ばれることが多い。
【００９６】
上記した発明は、携帯式デバイス、マイクロプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な家庭用電気製品、ミニコンピュータ、メインフレームコンピュータなど、他のコンピュータシステム構成によって実施されてもよい。また、本発明は、分散コンピューティング環境で実施されてもよく、このような環境では、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される。
【００９７】
また、本発明は、コンピュータ可読媒体上のコンピュータ可読コードとして実施されてもよい。コンピュータ可読媒体は、電磁搬送波（electromagnetic wave carrier）を含め、コンピュータシステムによって後から読取ることができるデータを記憶できるデータ記憶装置であれば、どのようなものに存在してもよい。コンピュータ可読媒体の例には、ハードディスク、ネットワーク接続記憶装置（ＮＡＳ）、リードオンリーメモリ、ランダムアクセスメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープおよび他の光学式データ記憶装置および非光学式データ記憶装置などがある。また、コンピュータ可読媒体は、コンピュータ可読コードが分散式に記憶されて、実行されるように、ネットワークに結合されたコンピュータシステムを介して分散されてもよい。
【００９８】
上記に、本発明を明確に理解できるように多少詳細に記載したが、添付の特許請求の範囲内で変更例または変形例を実施できることは明らかである。したがって、本実施形態は例示的なものであり、制限するものではなく、本発明は本明細書に記載されている詳細な事項に限定されず、添付の特許請求の範囲およびその均等物の範囲内で変更されてもよい。
【００９９】
方法の操作を特定の順序で記載したが、重畳される操作の処理が所期どおりに実行される限り、操作と操作の間に他の管理操作が実行されても、操作がわずかに時間をずらして実行されるように操作が調整されても、操作がシステム内で分散されて、処理に係るさまざまな間隔で処理操作を行なうことができるようにしてもよい。
【０１００】
上記に、本発明を明確に理解できるように多少詳細に記載したが、添付の特許請求の範囲内で変更例または変形例を実施できることは明らかである。したがって、本実施形態は例示的なものであり、制限するものではなく、本発明は本明細書に記載されている詳細な事項に限定されず、添付の特許請求の範囲およびその均等物の範囲内で変更されてもよい。
【図１】
0005547720.tif 000002
【図２Ａ】
0005547720.tif 000003
【図２Ｂ】
0005547720.tif 000004
【図２Ｃ】
0005547720.tif 000005
【図２Ｄ】
0005547720.tif 000006
【図３Ａ】
0005547720.tif 000007
【図３Ｂ】
0005547720.tif 000008
【図４】
0005547720.tif 000009
【図５】
0005547720.tif 000010
【図６】
0005547720.tif 000011
【図７】
0005547720.tif 000012
【図８】
0005547720.tif 000013
【図９Ａ】
0005547720.tif 000014
【図９Ｂ】
0005547720.tif 000015
【図１０】
0005547720.tif 000016
【図１１】
0005547720.tif 000017
【図１２Ａ】
0005547720.tif 000018
【図１２Ｂ】
0005547720.tif 000019
【図１３】
0005547720.tif 000020
【図１４Ａ】
0005547720.tif 000021
【図１４Ｂ】
0005547720.tif 000022
【図１５】
0005547720.tif 000023
【図１６】
0005547720.tif 000024
【図１７】
0005547720.tif 000025
【図１８】
0005547720.tif 000026
【図１９Ａ】
0005547720.tif 000027
【図１９Ｂ】
0005547720.tif 000028
【図１９Ｃ】
0005547720.tif 000029
【図１９Ｄ】
0005547720.tif 000030
【図２０】
0005547720.tif 000031
【図２１】
0005547720.tif 000032
【図２２】
0005547720.tif 000033
【図２３】
0005547720.tif 000034
【図２４】
0005547720.tif 000035