強度のコンピュータ画像および音声処理、ならびにコンピュータプログラムとインタフェースするための入力装置
コンピュータプログラムとのインタラクションの強度値を決定するための方法が記載される。上記方法と装置は、キャプチャゾーンの画像をキャプチャするステップと、前記画像内で入力オブジェクトを特定するステップと、前記入力オブジェクトの前記パラメータの初期値を特定するステップと、前記キャプチャゾーンの第2の画像をキャプチャするステップと、前記入力オブジェクトの前記パラメータの第2の値を特定するステップと、を有する。前記パラメータは、前記入力オブジェクトの形、色または明るさの1つ以上を特定しており、前記入力オブジェクトに対する人の操作によって影響を受ける。前記パラメータの変化の程度が計算され、これは前記第2の値と前記第1の値の差である。前記パラメータの前記変化の程度を表す強度値を含むアクティブ入力が、前記コンピュータプログラムに提供される。音を発生させている入力オブジェクトから強度値を検出するための方法、およびコンピュータビデオゲームが記載される。LED、音声キャプチャおよび生成部、または加速度計を有するゲームコントローラも記載される。
【発明の詳細な説明】
【背景技術】
【0001】
ビデオゲーム産業は、長年にわたって多くの変化を経験してきた。演算能力が拡大するにつれ、ビデオゲームの開発者も同様に、この演算能力の増大を利用するゲームソフトウェアを作成してきた。このために、ビデオゲーム開発者は、極めてリアルなゲーム体験を生み出すべく、高度な演算と数学を採用したゲームをコーディングしてきた。
【発明の開示】
【発明が解決しようとする課題】
【0002】
ゲームプラットホームの例に、ソニープレイステーションまたはソニープレイステーション2(PS2)があり、これらはそれぞれ、ゲームコンソールの形で販売されている。周知のように、ゲームコンソールはモニタ(通常はテレビ)と接続されて、手持ち式のコントローラによってユーザとのインタラクションを可能にするように設計されている。ゲームコンソールは、CPU、処理量の多いグラフィック操作のためのグラフィックシンセサイザ、ジオメトリ変換を実行するためのベクトル装置などの特化した処理ハードウェアと、その他の繋ぎとなるハードウェア即ちグルーハードウェア、ファームウェアおよびソフトウェアなどを備えて設計される。また、ゲームコンソールは、ゲームコンソールによるローカルプレイを行うためにゲームのコンパクトディスクを受け容れるための光ディスクトレイを備えて設計される。また、ユーザが、インターネット上で他のユーザと対戦して、または、他のユーザと一緒にインタラクティブにプレイすることができるオンラインゲームも可能である。
【0003】
ゲームが複合的なものであることがプレーヤの興味を引き続けていることから、ゲームのソフトウェアおよびハードウェアのメーカは更なるインタラクティブ機能を実現するために革新を続けてきている。しかし、実際は、ユーザがゲームとインタラクトする手法は、長年にわたって劇的には変わることはなかった。一般に、ユーザは、未だに、手持ち式のコントローラを使用してコンピュータゲームをプレイしたり、マウスポインティングデバイスを使用してプログラムとのインタラクションを行っている。
【0004】
前述を鑑みて、ゲームのプレイとのより高度なユーザインタラクティビティを可能にする方法およびシステムが求められている。
【課題を解決するための手段】
【0005】
概して、本発明は、コンピュータプログラムとインタフェースする際に、強度(インテンシティ)量を決定するために、コンピュータの画像および音声処理を使用する方法ならびにビデオゲームを提供することによって、このニーズを満たす。
【0006】
本発明は、プロセス、装置、システム、デバイスまたは方法など、多くの方法で実装することができる点を理解されたい。以下に本発明のいくつかの発明の実施形態を記載する。
【0007】
一実施形態では、コンピュータプログラムとのインタラクションの強度値を決定するための方法が提供される。上記方法は、キャプチャゾーンの画像をキャプチャするステップと、前記画像内で入力オブジェクトを特定するステップと、前記入力オブジェクトのパラメータの初期値を特定するステップと、前記キャプチャゾーンの第2の画像をキャプチャするステップと、前記入力オブジェクトの前記パラメータの第2の値を特定するステップと、を有する。前記パラメータは、前記入力オブジェクトの形、色または明るさの1つ以上を特定しており、前記入力オブジェクトに対する人の操作によって影響を受けうる。前記第2の値と前記第1の値の差である前記パラメータの変化の程度が計算されうる。前記パラメータの前記変化の程度を表す強度値を含むアクティブ入力が、前記コンピュータプログラムに提供されうる。
【0008】
別の実施形態では、コンピュータプログラムに強度値を入力するための方法が提供される。上記方法は、キャプチャゾーン内で入力オブジェクトが発生させる音をキャプチャするステップと、前記入力装置が発生させる前記音のラウドネス、速さ、ピッチの少なくとも1つを特定する入力パラメータを特定するステップと、前記コンピュータプログラムにアクティブ入力を提供するステップと、を有する。前記コンピュータプログラムは、前記音をキャプチャするための手段と通信しているコンピュータで実行されている。前記アクティブ入力は、前記入力パラメータを表しうる強度値を含む。前記コンピュータプログラムは、前記入力オブジェクトの仮想バージョン(virtual version)の操作をシミュレーションする。
【0009】
更に別の実施形態では、コンピュータビデオゲームが提供される。前記コンピュータビデオゲームは、入力オブジェクト、監視装置、およびコンピュータで実行中のコンピュータプログラムを有する。前記入力オブジェクトは、人の操作のために構成されうる。前記監視装置は、前記監視装置の近くのキャプチャゾーンから、画像または音声の一方を含む情報をキャプチャする。前記コンピュータプログラムは、前記監視装置によってキャプチャされた前記情報を表すデータを受け取り、前記データを分析して、前記入力オブジェクトに対する前記人の操作の強度を表す強度値を計算する。
【0010】
本発明の利点は、例示のために本発明の原理を示す添付の図面と併せて、以下の詳細な説明を読めば明らかとなるであろう。
【0011】
本発明は添付の図面と併せて以下の詳細な説明を読めば容易に理解できるであろう。図面においては、同じ構造要素には同じ参照符号を付した。
【発明を実施するための最良の形態】
【0012】
以下の説明では、本発明を完全に理解できるように、具体的な詳細を数多く記載する。しかし、これらの詳細な内容の一部または全てを用いなくとも本発明を実施し得ることは当業者にとって自明である。場合によっては、本発明を不必要にわかりにくくしないように、公知のプロセス操作については詳しく記載しない。
【0013】
本明細書に記載する技術は、音声およびビデオのキャプチャおよび処理を使用して、コンピュータプログラムとのインタラクションを行うために、強度値を特定するために使用することができる。各種実施形態において、ビデオカメラおよび/または音声検知機能を備えたコンピュータまたはゲームシステムが、画像および音声のデータを処理して、センサの焦点ゾーンで生じているさまざまなアクションを識別しうる。このようなアクションには、通常、オブジェクトの操作や、声またはオブジェクトの操作による音の発生がある。この例には、おもちゃの銃のトリガを引いたり、オブジェクトを移動させたり変形させることがある。本技術は、これらの技術に加えて、このようなアクションに関連する強度量を検知して決定する追加の機能も更に提供する。例えば、トリガを引く強さ、オブジェクトの変形の程度、野球のバットを握る強さなどである。この追加のパラメータを使用することで、ビデオゲームメーカや、その他のマンマシンインタラクション機能に関連する分野の当業者は、ユーザの体験を大きく改善することができる。これらの具体例について、下記に記載する。
【0014】
また、ゲームコントローラとゲームまたは他のアプリケーションの間のインタラクティブ性を強化する、ゲームコントローラの機能強化のいくつかの実施形態についても、ここに記載する。このような機能強化には、ゲームコントローラに、ビデオキャプチャおよび処理システムが視覚的に認識可能な複数のLEDを設けて、ビデオゲームや他のアプリケーションが、ビデオキャプチャ装置に対するゲームコントローラの位置、移動または姿勢を特定できるようにすることがある。また、音声コマンドまたは他のユーザとの通信を受け取るため、およびコントローラとベースユニット間の通信を実現するために、音声をキャプチャする機能、または音や超音波を発生させる機能を備えたゲームコントローラについても記載する。
【0015】
図1は、本発明の一実施形態によるインタラクティブ(対話型)ゲーム構成100を示す。インタラクティブゲーム構成100は、コンピュータ102(本明細書では「コンソール」とも呼ぶ)を有し、これは、ディスプレイ画面110と接続されうる。ディスプレイ画面110の上には画像キャプチャ装置105が置かれ、コンピュータ102と接続されうる。コンピュータ102は、ユーザが、コントローラ108によってゲームをプレイしたり、ビデオゲームとインタフェースすることができるゲームシステムのコンソールであってもよい。画像キャプチャ装置105は、ディスプレイ画面110の上に置かれて示されているが、画像キャプチャ装置105が、ディスプレイ画面110のほぼ前方にある画像をキャプチャできれば、ほかの近くの位置に置かれていてもよいことが理解されよう。これらの移動およびインタラクションをキャプチャするための技術は変更し得るが、例示的な技術は、それぞれ2003年2月21日に出願された英国特許出願公開第0304024.3号明細書(国際公開第GB2004/000693号パンフレット)および英国特許出願公開第0304022.7明細書(国際公開第GB2004/000703号パンフレット)号に記載されており、これらの各々は参照によりここに援用される。
【0016】
一実施形態では、画像キャプチャ装置105は、標準的なウェブカムのように単純なものであっても、あるいは高度な技術を備えたものであってもよい。画像キャプチャ装置105は、画像をキャプチャし、この画像をデジタル化して、画像データをコンピュータ102に送信することができる。一部の実施形態では、デジタル化を実行するための論理回路が、画像キャプチャ装置の内部に組み込まれていてもよく、別の実施形態では、画像キャプチャ装置105が、デジタル化のために、アナログビデオ信号をコンピュータ102に送信してもよい。いずれの場合も、画像キャプチャ装置105は、画像キャプチャ装置105の前方にある任意のオブジェクトの、カラー画像または白黒画像をキャプチャすることができる。
【0017】
図2は、画像キャプチャ装置105の前方にあるオブジェクトの照準方向を確認するために、画像キャプチャ装置105によって提供される画像データを処理するための例示的なコンピュータ102を示している。図に示すように、コンピュータ102は、画像キャプチャ装置105に接続されうる。画像キャプチャ装置105は、キャプチャ領域105aに焦点を合わせるように設計されうる。この例では、人物112が、コンピュータ102によって実行中のコンピュータプログラムとインタラクト(対話処理)しようとしている。この例では、コンピュータプログラムは、ディスプレイ画面110によって表現され表示されるビデオゲームであってもよい。
【0018】
図示した例では、ビデオゲームは、標的シューティングゲームであり、人物112は標的を狙い、その人物の能力に相当する点数を稼ごうとしている。ディスプレイ画面110に示されるように、ゲームのプレイ中に、人物112の画像112’が、ディスプレイ画面110にも表示されうる。別の実施形態では、制御されている特定の装置やプレイ中のゲームによっては、ディスプレイ画面に人物の画像112’が表示されないこともある。この例では、ゲームプレイ中に、現実により近づけるために、標的を撃つ間に人物112の画像112’を表示することによって、ユーザの体験を改善することができる。この標的シューティングゲームの特徴は、人物112が、オブジェクト124をディスプレイ画面110上の特定のインタラクティブなグラフィックのほうに向けるかポイントすることができることにある。
【0019】
人物112は、オブジェクト124(この場合の例では銃である)の照準方向を正確に定めるために、オブジェクト124を手122で保持している。手122は、ディスプレイ画面110の方向に向けられる。画像キャプチャ装置105は、この時点で、人物112のデジタル画像のキャプチャを分析して、人物の112の頭部120の位置と、人物の112の手122の位置を決定する。図に示すように、人物112の手は体の前で伸ばされており、画像キャプチャ装置は、キャプチャされたデジタル画像を解析してオブジェクト124を特定する。キャプチャされたデジタル画像は、コンピュータ102で実行されているコードによっても解析され、人物の112の頭部120の位置が確認される。一実施形態では、頭部のトラッキングは、顔検出コードと併用したテンプレートマッチングの組合せによって完了させる(速度性能のため)こともできる。顔検出コードは、本質的には、ユーザの目やその他の顔の特徴の位置を特定することによって、ユーザの顔の位置を特定する。頭部および顔の検出に関する更に詳しい情報については、2003年9月15日出願の同時係属中の米国特許出願第10/663,236号明細書「トラッキングされた頭部の移動によって表示中のシーンのビューを調整するための方法および装置(METHOD AND APPARATUS FOR ADJUSTING VIEW OF A SCENE BEING DISPLAYED ACCORDING TO TRACKED HEAD MOTION)」を参照されたい。同文献の内容を参照によりここに援用する。
【0020】
一実施形態では、オブジェクト124は、キャプチャされたデジタル画像を分析するプログラムが、オブジェクト124の位置を容易に特定できるように、オブジェクトに結び付けられた色または光などの識別体(発光ダイオード(LED)等)を有する。コンピュータプログラムが、人物の頭部120(H)の位置と、人物の手122(h)の位置を特定すると、コンピュータプログラムは、計算を実行して、画像キャプチャ装置の位置からみた、検出されたオブジェクト124と頭部120の間の相対角度を決定する。
【0021】
図2に示すように、オブジェクト124と頭部120の相対位置は、画像キャプチャ装置105に対して計算される。これにより、2つの角度パラメータ(シータθとファイΦ)が得られる。方位角θは、X軸上の、頭部120とオブジェクト124間の水平の位置関係を定義している。角度φから、頭部120の高さと手122の高さの間の相対角度である高度角が得られる。一実施形態では、ディスプレイ画面110上のオブジェクトの照準位置の較正がゲームの操作により開始される前に、初期の較正操作を実行することができる。例えば、ユーザに、ディスプレイ画面110の特定の位置にオブジェクト124を向けさせることによって、ユーザに対して、照準アルゴリズムの較正を促すことができる。較正が完了すると、画像キャプチャ装置105によってキャプチャされている連続する各フレームについて、コンピュータ102が、人物の頭部120と人物の手122の相対位置を定義する方位角と高度角(θとΦ)を計算可能となる。頭部と手の相対位置の決定は、要求される照準操作の精度に応じて、キャプチャした各フレームごとに計算されても、一フレームおきにキャプチャされても、あるいは、多くのフレームをキャプチャした後に計算されてもよい。例えば、ゲームが射撃場ゲームの場合には、人物112がビデオゲームの競争で高いスコアを確実に稼ごうとしている場合に、正確に照準を定めて引金を引けるように、頭部120と手122の相対位置をフレームごとに計算することが重要となりうる。
【0022】
図3は、本発明の実施形態を実装するために使用できる、グラフィックディスプレイ上のオブジェクトのインタラクト処理を行うための例示的なユーザ入力システムのブロック図である。図3に示すように、ユーザ入力システムは、ビデオキャプチャ装置300、入力画像プロセッサ302、出力画像プロセッサ304、およびビデオ表示装置306から構成されうる。ビデオキャプチャ装置300は、ビデオ画像のシーケンスをキャプチャすることができる装置であればどのようなものでもよく、一実施形態では、デジタルビデオカメラ(ウェブカメラなど)や同様の画像キャプチャ装置などである。
【0023】
ビデオキャプチャ装置300は、深度画像を提供するように構成されうる。本明細書では、「深度カメラ」および「三次元カメラ」との文言は、二次元のピクセル情報のほか、距離情報すなわち深度情報を取得することができる任意のカメラを指す。例えば、深度カメラは、制御された赤外線照明を利用して、距離情報を取得することができる。他の例示的な深度カメラに、立体カメラ対があり、これは2台の基準カメラを使用して距離情報を三角測量によって求める。同様に、「深度検知装置」との文言は、二次元のピクセル情報のほかに、距離情報を取得することができる任意のタイプの装置を指す。
【0024】
このため、カメラ300は、通常の二次元のビデオ像に加えて、3番目の次元をキャプチャおよびマップする能力を提供することができる。通常のカメラと同様に、深度カメラは、ビデオ画像を構成している複数のピクセルの二次元のデータをキャプチャする。これらの値は、ピクセルの色の値であり、通常は、各ピクセルの赤、緑、青(RGB)の値である。このようにして、カメラによってキャプチャされたオブジェクトが、モニタに二次元オブジェクトとして表示される。しかし、従来のカメラとは異なり、深度カメラは、シーンの深度値を表すシーンのz成分もキャプチャする。通常、深度値はz軸に割り当てられるため、深度値は、「z値」と呼ばれることも多い。
【0025】
動作時に、シーンの各ピクセルについてz値がキャプチャされうる。各z値は、カメラから、シーン内の関連するピクセルに対応するオブジェクトまでの距離を表している。また、最大検出範囲が、深度値が検出されなくなる境界を定義しうる。本発明の各種実施形態では、この最大範囲の面を使用して、ユーザ定義のオブジェクトのトラッキングを提供することができる。このため、深度カメラを使用することで、それぞれのオブジェクトを三次元でトラッキングすることができる。この結果、本発明の実施形態のコンピュータシステムは、二次元のピクセルデータと合わせてz値を利用して、強化された三次元のインタラクティブ環境をユーザのために作成することができる。深度分析の詳細については、2003年5月29日出願の米国特許出願第10/448,614号明細書「リアルタイムの三次元インタラクティブ環境を提供するためのシステムおよび方法(System and Method for Providing a Real-time three dimensional interactive environment)」を参照されたい。同文献を参照によりここに援用する。
【0026】
図3に戻ると、入力画像プロセッサ302は、キャプチャされた制御オブジェクトのビデオ画像(深度画像など)を信号に変換し、この信号が出力画像プロセッサに送られる。一実施形態では、入力画像プロセッサ302は、キャプチャされたビデオ画像の背景から、深度情報によって制御オブジェクトを分離し、制御オブジェクトの位置および/または移動に応じた出力信号を発生させるようにプログラムされうる。出力画像プロセッサ304は、入力画像プロセッサ302から受け取った信号に応じて、ビデオ表示装置306に表示したオブジェクトの並進移動および/または回転移動を変更するようにプログラムされうる。
【0027】
本発明のこれらの態様やその他の態様は、ソフトウェア命令を実行する1つ以上のプロセッサによって実装されうる。本発明の一実施形態によれば、1つのプロセッサが入力画像処理と出力画像処理の両方を実行する。しかし、図に示すように、説明を容易にするために、処理操作が、入力画像プロセッサ302と出力画像プロセッサ304に分けられるものとして説明する。本発明が、特定のプロセッサの構成(複数プロセッサなど)に限定されると解釈すべきではないことを留意すべきである。図3の複数の処理ブロックは、説明の便宜上、示したに過ぎない。
【0028】
図4は、本明細書に記載した本発明の各種実施形態を実装するように構成されたコンピュータ処理システムの簡略ブロック図である。この処理システムは、メインメモリ420とグラフィック処理ユニット(GPU)426に結合された中央処理装置(CPU)424を備えた、コンピュータベースのエンターテイメントシステムの実施形態であってもよい。CPU424は、入出力プロセッサ(Input/Output Processor:IOP)バス428にも結合されうる。一実施形態では、GPU426は、ピクセルベースのグラフィックデータを高速に処理するために内部バッファを備える。更に、GPU426は、エンターテイメントシステムまたはその構成要素の外部に接続された表示装置427に送信するために、画像データを処理して、例えばNTSCやPALなどの標準のテレビジョン信号に変換する出力処理部またはその機能を備えうる。別の実施形態では、データ出力信号が、コンピュータモニタ、LCD(液晶ディスプレイ)装置やその他のタイプの表示装置などのテレビジョンモニタ以外の表示装置に供給されてもよい。
【0029】
IOPバス428は、CPU424を、各種の入出力装置、または他のバスやデバイスに接続している。IOPバス428は、入出力プロセッサメモリ430、コントローラ432、メモリカード434、ユニバーサルシリアルバス(USB)ポート436、IEEE1394(Firewireインタフェースとも呼ばれる)ポート438、およびバス450に接続されうる。バス450は、システムの他のいくつかの構成要素をCPU424に接続しており、このような構成要素には、オペレーティングシステム(OS)ROM440、フラッシュメモリ442、音声処理ユニット(SPU)444、光ディスク制御4、ハードディスクドライブ(HDD)448がある。この実施形態の一態様では、ビデオキャプチャ装置は、IOPバス428に直結されていてもよく、これを介してCPU424に送信を行っており、CPU424では、ビデオキャプチャ装置からのデータを使用して、GPU426でグラフィック画像の生成に使用される値が変更または更新される。更に、本発明の各種実施形態は、画像処理のさまざまな構成および技術を使用することができ、これには、2003年2月11日出願の米国特許出願第10/365,120号明細書「リアルタイムのモーションキャプチャのための方法および装置(METHOD AND APPARATUS FOR REAL TIME MOTION CAPTURE)」に記載されたものなどがある。同文献を参照によりその全体をここに援用する。コンピュータ処理システムは、CELL(登録商標)プロセッサで実行されうる。
【0030】
図5は、本発明の一実施形態に係る代替入力装置として機能する操作用オブジェクトとの併用に適合されたビデオゲームコンソールの各種構成要素の構成を示すブロック図である。例示的なゲームコンソール510は、コンソール510全体を制御するためのマルチプロセッサユニット(MPU)512、プログラムの各種操作およびデータ記憶に使用されうるメインメモリ514、幾何学処理に必要な浮動小数点のベクトル演算を実行するベクトル演算ユニット516、MPU512からの制御に基づいてデータを生成すると共に、ビデオ信号をモニタ110(CRTなど)に出力する画像プロセッサ520、MPU512またはベクトル演算ユニット516と画像プロセッサ520との間の伝送バス上で調停等を実行するグラフィックインタフェース(GIF)522、周辺機器との間でデータを送受信できるようにする入出力ポート524、カーネル等の制御を実行するための、フラッシュメモリ等で構成された内部OSD機能ROM(OSDROM)526、ならびにカレンダ機能およびタイマ機能を備えたリアルタイムクロック528を備える。
【0031】
メインメモリ514、ベクトル演算ユニット516、GIF522、OSDROM526、リアルタイムクロック(RTC)528および入出力ポート524は、データバス530を介してMPU512に接続されている。バス530には、圧縮済みの動画およびテクスチャ画像を伸張して、これにより画像データを展開するプロセッサなどである画像処理ユニット538も接続されている。例えば、画像処理ユニット538は、MPEG2またはMPEG4の標準フォーマットに従って、ビットストリームをデコードおよび展開したり、マイクロブロックをデコードしたり、逆離散コサイン変換、色空間変換、ベクトル量子化などを実行する機能を担う。
【0032】
音声システムは、MPU512からの命令に基づいて音楽やその他の音響効果を生成する音声処理ユニット(SPU)571、SPU571が波形データを記録するための音声バッファ573、およびSPU571が生成した音楽やその他の音響効果を出力するスピーカ575で構成されうる。なお、スピーカ575はモニタ110の一部として組み込まれていても、あるいは、外部スピーカ575を取り付けるための別個のオーディオライン出力端子として提供されてもよい。
【0033】
バス530に接続されており、本発明に従ってデジタルデータの入出力を行うと共にデジタルコンテンツを入力する機能を備えたインタフェースである通信インタフェース540も提供されうる。例えば、オンラインビデオゲームアプリケーションを実現するために、この通信インタフェース540を介して、ネットワーク上のサーバ端末との間でユーザ入力データを送信したり、状態データを受信することができる。コンソール510に対してデータ(キー入力データまたは座標データなど)を入力する入力装置532(コントローラとも呼ばれる)と、各種プログラムおよびデータ(すなわちオブジェクトに関するデータ、テクスチャデータなど)を有するCD―ROMなどの光学ディスクの内容を再生するディスク装置536とが入出力ポート524に接続されている。
【0034】
更に、本発明は、デジタルビデオカメラ105を備え、これは入出力ポート524に接続できる。入出力ポート524は、シリアルインタフェースやUSBインタフェースなどの1つ以上の入力インタフェースによって実装され得、デジタルビデオカメラ190は、USB入力や、カメラ105との併用に適したその他の任意の従来のインタフェースを有利に利用し得る。
【0035】
上記の画像プロセッサ520は、レンダリングエンジン570、インタフェース572、画像メモリ574、およびディスプレイ制御装置576(プログラム可能なCRTコントローラなど)を備える。レンダリングエンジン570は、メモリインタフェース572を介して、かつMPU512から送られるレンダリング命令によって、所定の画像データを画像メモリにレンダリングする処理を実行する。レンダリングエンジン570は、NTSC方式またはPAL方式に準拠し、より詳細には、例えば、1/60秒〜1/30秒の間隔で10〜数十回を越えるレートで、320×240ピクセルまたは640×480ピクセルの画像データをリアルタイムに描画できる機能を備える。
【0036】
メモリインタフェース572とレンダリングエンジン570との間にバス578が接続され、メモリインタフェース572と画像メモリ574との間に第2バス580が接続され得る。第1バス578と第2バス580のビット幅は、例えばそれぞれ128ビットであり、レンダリングエンジン570は、画像メモリに対して高速レンダリング処理を実行することができる。画像メモリ574は、一元化された記憶構造を採用しており、この構造では、例えば、テクスチャレンダリング領域と表示レンダリング領域とを同じ領域に設定することができる。
【0037】
ディスプレイコントローラ576は、光ディスク装置536によって光ディスク569から取得したテクスチャデータ、またはメインメモリ514に作成されたテクスチャデータを、メモリインタフェース572を介して画像メモリ574のテクスチャレンダリング領域に書き込むように構成されうる。画像メモリ174の表示レンダリング領域にレンダリングされた画像データは、メモリインタフェース572を介して読み出されて、モニタ110に出力され、その画面に表示されうる。
【0038】
図6は、本発明の一実施形態による、ユーザによるユーザ入力装置の操作中に、ユーザ入力装置に対応するピクセル群をトラッキングして判別するための機能ブロックを示すブロック図である。ブロックが表している諸機能は、図5のゲームコンソール510のMPU512によって実行されうるソフトウェアによって実装される点を理解されたい。更に、図6のブロックが表している機能の全てが、各実施形態で使用されるとは限らない。
【0039】
最初に、カメラから入力されたピクセルデータが、入出力ポートインタフェース524を介してゲームコンソール510に送られ、これにより、以下に記載するプロセスがゲームコンソール510で実行されうる。まず、画像の各ピクセルが、例えばラスタベースでサンプリングされると、色分離処理ステップS201が実行されうる。これにより、各ピクセルの色が決定されて、画像が、色の異なるさまざまな二次元部分に分割される。次に、実施形態によっては、色遷移定位ステップS203が実行されうる。これにより、色の異なる部分が隣接している領域がより詳細に決定されて、はっきりした色の遷移が発生する画像の位置が特定される。次に、幾何学処理S205のステップが実行されうる。このステップでは、実施形態に応じて、エッジ検出プロセスまたは面積の統計値(area statistics)の計算の実行が行われて、対象のオブジェクトのエッジに相当する線、曲線および/または多角形が代数的または幾何学的に定義される。
【0040】
ステップS207で、アルゴリズムを用いてオブジェクトの三次元の位置および姿勢が計算される。このアルゴリズムについては、本発明の好ましい実施形態に関して後述する。質の向上のため、三次元の位置および姿勢のデータに対して、カルマンフィルタリング処理ステップS209が実行される。この処理を実行するのは、所定の時点においてオブジェクトが存在する位置を概算して、起こり得ず、このため正しいデータ群から外れていると考えられる、誤った測定値を除去するためである。カルマンフィルタリングを実行するもう1つの理由は、カメラ105は画像を30Hzで生成するが、一般的なディスプレイは60Hzで動作するため、カルマンフィルタリングによって、ゲームプログラムの動作の制御に使用するデータの不足分を埋めるためである。カルマンフィルタリングによる離散データのスムージングは、コンピュータビジョンの分野では公知であり、ここで詳述しない。
【0041】
図7は、変形可能なユーザ変形可能オブジェクト710の例示的な実施形態の模式図である。このオブジェクトは、ユーザが変形可能な装置に加える力に応じて、弛緩状態710Aか扁平状態710Bをとることができる。このように、変形可能なオブジェクト710は、圧潰可能なボールの形状を有する。更に一般には、どのような種類の変形可能なオブジェクトでも、本明細書に記載した視覚トラッキングシステムによってトラックキングすることができる。この実施形態では、ビデオデジタルカメラ105によって観察される変形可能なオブジェクト710の面積は一定である点を理解されたい。このため、デジタルビデオカメラ190は、変形可能な装置310のX平面およびY平面での移動に加えて、Z方向の移動をキャプチャすることができる。Z方向によって、モニタ110に示すように、ファイル304Bなどのファイルの前後への移動、すなわち奥行き方向への移動が可能となる。更に、変形可能なオブジェクト710をZ軸方向に移動させる方向に応じて、変形可能なオブジェクト710によってグラブした表示中のオブジェクトを大きく表示させたり小さく表示させたりできる。例えば、一実施形態では、変形可能なオブジェクト710をカメラ105に近づけると、表示中のオブジェクトが大きく表示され、変形可能なオブジェクト710をカメラ105から離すと、表示中のオブジェクトがモニタ110に小さく表示される。当業者であれば、表示中のオブジェクトは、X方向、Y方向およびZ方向の移動の組み合わせによって、そのサイズと位置が変化し得ることが理解されるであろう。この場合、三次元空間での移動を決定するために角度シータ(θ)を用いることができる。θがカメラ190のビュー平面の方向の角度であることを当業者は理解されよう。
【0042】
図7に戻ると、カメラは変形可能なオブジェクト710の位置をキャプチャする。この位置情報はゲームコンソール510に伝達されうる。図1〜3を参照して上記のように、この位置情報はゲームコンソール510によって処理されうる。変形可能な装置のアスペクト比または相対位置が変化すると、処理によって、この移動が、モニタ110に表示中のオブジェクトの移動に変換される。なお、本発明の一実施形態では、変形可能な装置のアスペクト比が変化したときに、音声信号が生成され得る。更に、受動的なボタン押下信号を、変形可能な装置に備えてもよい。したがって、このクリック音がコンピューティングシステムによって検知されなくても、ユーザはクリックを体感できるようになる。
【0043】
一実施形態では、画像内のピクセルの分析によって、x、y、z、θ、および握りパラメータ(grip parameter)を求める。なお、画像内のピクセルは、トラッキングされているオブジェクト、すなわち変形可能な装置の一部である。詳細に説明すると、Xは、画像内のピクセルの水平重心(horizontal centroid)に比例する。Yは、画像内のピクセルの垂直重心(vertical centroid)に比例する。Zは、ピクセルの面積または主二次モーメント(principle second moment)のいずれか(精度/堅固性の挙動が変わってくる)の平方根に反比例する。シータ(θ)は、主二次モーメントの回転角に対応する。握り量(すなわち変形量またはアスペクト比の変化量)などの握りパラメータは、主二次モーメントの平方根を最小二次モーメントの平方根で割った値に比例する。上記の各パラメータは、画像を通る1本の経路から算出することができる。このため、本明細書に記載した実装は非常に高速であり、一般に使用されている他の測定法よりもノイズ(すなわち視覚的誤差)の影響を受けにくい。
【0044】
図8は、ユーザ805が変形可能なオブジェクト710を操作している例示的なアプリケーションを示す。変形可能なオブジェクト710は、ユーザ805の手815に握られうる。コンソール510のカメラ105が、オブジェクト710が変形していることを識別する。手のグラフィカルな表現815’が、仮想のチェッカーボード820でチェッカー817を拾い上げる。その後、変形可能なオブジェクト710の移動が、手のグラフィカルな表現815’の移動に変換されうる。ユーザ805は、チェッカー817を放すため手815を緩める。これにより、変形可能なオブジェクト710は元の形状に戻ることができる。
【0045】
図9は、バスケットボールの形をした、例示的な変形可能なオブジェクト900を示す。一実施形態では、変形可能なオブジェクト900は、変形を受けると明るくなる手段を備える。別の実施形態では、変形可能なオブジェクト900は、変形を受けると色が変わる材料から形成されてもよい。変色材料は公知であり、一般には、透光性の高分子マトリックスに埋め込まれた感圧蛍光色素を含む。一実施形態では、変形可能なオブジェクト710は、変色材料のシェルを有する透光性のスポンジゴム材料から形成されうる。
【0046】
図10は、外側層902の下に発光ダイオードの層(LED)904が存在する変形可能なオブジェクト900を示す。変形可能なオブジェクト900の内部にバッテリ906が設けられている。LED層904は、変形を受けると明るくなるLEDのブランケットを備えうる。一実施形態では、オブジェクトの変形が大きくなるにしたがって明るさが増す。別の実施形態では、変形の強さによって、明るい部分の色が変わる。一実施形態では、オブジェクトの変形を受けた部分しか明るくならない。別の実施形態では、変形を受けるとオブジェクトの全体が明るくなる。
【0047】
変形量が照光材料自体によって検知されてもよい。例えば、この材料は、材料が変形を受けると接触する複数の導電層から形成され、接触により回路が閉となる。一実施形態では、変形を受けている領域だけが明るくなる。別の実施形態では、変形量は別のひずみゲージ回路によって検知され、この回路は、変形可能なオブジェクト900の層904の上に配置されうる。この場合、オブジェクトが変形を受けると、オブジェクト全体が明るくなり、変形が大きくなるにしたがって、より明るくなるか、色が変わるか、この両方が起こる。
【0048】
図11は、フットボールの形1100をした、例示的な変形可能なオブジェクトを示す。フットボールの形状のために、変形を受けたオブジェクトを撮像してそのアスペクト比を測定することによって、変形の程度を決定する方法は信頼性が高いとはいえない。このため、アスペクト比を使用する代わりに、フットボール1100が、層1108に設けた回路を有する。層1108は、変形センサ1110と複数のイルミネータ1106を備える。イルミネータ1106は、発光ダイオードなどである。更に、フットボール1100は、バッテリコンパートメント1102と、フットボール1100のバランスをとるためのバランスウェイト1104を有する。イルミネータ1106は必要な電圧および電流が少ないため、例えば、バッテリコンパートメント1102はかなり小さくてもよく、例えば、単4またはAAAの乾電池で十分である。フットボール1100内の残りの部分には軟性スポンジゴムが充填されており、フットボール1100を握りやすくしている。
【0049】
フットボール1100が握られると、変形センサ1110が、フットボール1100の変形の程度を検出し、これに応じて、イルミネータ1106を使用して明るくなる。例えば、変形が大きくなると光が明るくなるか、あるいは、変形が大きくなると光の色が変わる。色の変化は、異なる色のLEDを発光させることによって行うことができる。例えば、変形量が小さいときは緑のLEDを発光させる。変形が大きくなると、黄色、赤、次、紫、青のLEDの順に発光される。このため、変形量の範囲を検出して、次に、これを、光の色を変えることによって表現することができる。
【0050】
カメラ105(図1)は、フットボール1100の色の変化を検出して、これに適宜反応しうる。例えば、画面110に描画されている仮想のプレーヤが、フットボール1100の変形量に合った強さで、仮想のフットボールを握りうる。
【0051】
図12は、変形可能なオブジェクト900が、ユーザ1202が使用しているバスケットボールの形である、変形可能なオブジェクト900の例示的な用途を示す。ユーザ1202はバスケットボールをドリブルしており、この動作がカメラ105によってキャプチャされて解釈されうる。仮想の選手1206の画像が画面110に表現されうる。仮想の選手1206の動作が、ユーザ1202の動作と同期されうる。変形可能なオブジェクト900がバウンドするたびに、ボールの変形した箇所が1204に示すように明るくなる(網掛けの部分は明るくなる部分を表している)。仮想のプレーヤ1206が仮想のボール900’をバウンドさせ、これも1208に示すように明るくなるか色が変わる。
【0052】
図13は、トリガ1302とトリガセンサ1304を有するおもちゃの銃を示す。トリガセンサ1304は、トリガ1302を握った強度を検出することができる。例えば、強度は、ひずみゲージや、ポテンショメータやスプリングなどのその他の公知の手段を使用して測定することができる。握りの強度が強くなると、イルミネータ1306は、個数が増えるか、明るさが上がるか、および/または色を変える。1つの可能な使用として、トリガ1302が強く握られた場合に、単発モードから反復または「機関銃」動作モードに変更することがある。
【0053】
図14は、おもちゃの野球のバット1400を示し、これは透光性の軟質プラスチックまたは透光性のスポンジゴムから形成されうる。野球のバット1400は、握りの部分に変形センサ1402と、バットの長さに沿って設けたイルミネータ1404を備える。ユーザがバット1400の握りを大きくすると、イルミネータ1404は、個数が増えるか、明るさが上がるか、および/または色を変える。
【0054】
図7を再び参照すると、コンソール510は、変形可能なオブジェクト710のアスペクト比の割合の変化を測定することによって、変形の程度を検知することもできる。しかし、図11,13,14を参照して説明したように、変形可能なオブジェクト710が色、明るさなどを変える場合には、コンソール510は、変形の程度に対する強度値を決定するために、このような変化を部分的に利用するか、あるいは完全に利用してもよい。感圧材料または埋め込み回路を用いれば、変形可能なオブジェクトの形状に制約がなくなる。これにより、マンマシンインタラクティブ機能の新しい可能性が開ける。例えば、野球シミュレーションにおいて、野球のバットを握る強さを、スイングの強さを示す指標として使用することができる。新たに登場した感情コンピューティングの分野では、コンピュータは、ユーザの気分を特定するために、姿勢や表情等のさまざまなテクニックを使用している。同様にして、本技術によって、ゲームの開発者が、ユーザが示す強度値に基づいてゲームのプレイを変えることが可能となる。例えば、恐れ、怒りまたは興奮などの感情を表すことがある強度値を、おもちゃの銃が握られている強さによって検知することができ、これを使用して、コンピュータが作り出すキャラクタの反応を変えることができる。
【0055】
別の実施形態では、インタラクションの強度が、撮像に加えて、その代わりに、音声によって受け付けられてもよい。この実施形態では、カメラ105の代わりに、図15に例として示す、画像キャプチャユニット1506bと音声キャプチャユニット1506aを有するモニタ1506が提供されうる。音源は、入力オブジェクトや装置が発生させるノイズや、拍手または足踏みやその他の任意のノイズなどである。次に、この音が、音声キャプチャユニット1506aによってキャプチャされ、インタラクションのためにコンピューティングシステム102(図1)によって処理される。音声コマンドの識別を可能にするために、音声認識が使用されうる。更に、ユーザが、インターネットまたはネットワークに接続しているが、ゲームのインタラクティビティに直接的または部分的に関わってもいるリモートユーザと通信していてもよい。
【0056】
本発明の一実施形態によれば、音声キャプチャユニット1506aは、コンピューティングシステム102が特定の方向から来る音を選択できるようにする少なくとも2つのマイクロフォンを備えるように構成されうる。コンピューティングシステム102が、ゲームのインタラクティビティの中心から外れる方向をフィルタ除去できるようにすることで、環境内の気を散らせるような音が、入力オブジェクト、装置または他の手段によって生成される音の強度値を決定しているインタラクティブプログラムの実行を妨げたり混乱させることはない。同様に、音声キャプチャユニットは、強度値を確実に特定するために、標的焦点ゾーンから音を分離することができる。後述するように、焦点ゾーンは、画像キャプチャユニット1506bの焦点であるアクティブな画像領域によって識別されうる。他の方法では、焦点ゾーンは、初期化段階の後で、ユーザに提示されたゾーンの選択肢の中から、手動で選択されてもよい。
【0057】
画像−音声キャプチャ装置1506は、画像キャプチャユニット1506bと音声キャプチャユニット1506aを備える。画像−音声キャプチャ装置1506は、画像フレームをデジタル形式でキャプチャして、次にこれらの画像フレームを、その後の処理のためにコンピューティングシステム102(図1)に転送することができる。画像キャプチャユニット1506bの例にウェブカメラがあり、これは、ビデオ画像を、キャプチャして、その後記憶したり、インターネットなどのネットワークを介して通信できるように、デジタル形式でコンピューティング装置に転送することが望ましいときに一般に使用される。その他のタイプの画像キャプチャ装置も、識別とフィルタリングが可能なように画像データがデジタル形式で処理されるものであれば、アナログ、デジタルを問わず考察される。好ましい一実施形態では、入力データを受け取ったのち、フィルタリングを可能にするデジタル処理がソフトウェアで行われうる。音声キャプチャユニット1506aは、一対のマイクロフォン(MIC1およびMIC2)を備えて示されている。マイクロフォンは標準的なマイクロフォンであり、これは画像−音声キャプチャ装置1506を構成しているハウジングに一体化することができる。
【0058】
図16は、音Aからの音源1616と音Bからの音源1616に向かい合った状態の音声キャプチャユニット1506aを示す。図に示すように、音Aがその可聴音を発して、音経路1601aおよび1601bに沿ってMIC1およびMIC2によって検出される。音Bが、音経路1602aおよび1602bを通ってMIC1およびMIC2の方に投射される。図に示すように、音Aの音経路の長さは異なり、したがって、音経路1602aおよび1602bに対して相対的な遅延が生じる。次に、図17に示すボックス1716で方向選択が行われるように、音Aおよび音Bのそれぞれから来る音が、標準の三角測量アルゴリズムを使用して処理されうる。MIC1およびMIC2から来る音は、それぞれバッファ1およびバッファ2(1710a、1710b)にバッファされて、遅延ライン(1712a、1712b)を通る。一実施形態では、バッファリングおよび遅延処理はソフトウェアによって制御されるが、ハードウェアが同様に演算を扱うようにカスタム設計されてもよい。三角測量に基づいて、方向選択1716によって、音源1616のうちの1つの識別および選択が行われる。
【0059】
MIC1およびMIC2のそれぞれから来る音は、ボックス1714で合算されてから、選択した発生源の出力として出力される。このように、このような音源がコンピュータシステム102(図1)による処理を攪乱させたり、または、ネットワークまたはインターネットを介してビデオゲームをインタラクティブにプレイしている他のユーザとの通信を攪乱させることのないように、アクティブな画像領域の方向以外の方向から来る音がフィルタ除去される。
【0060】
この技術を利用するビデオゲームやその他のアプリケーションは、音声キャプチャ装置に対して所定の方向または選択した方向にある焦点ゾーンから発生した音の強度値を確実に特定して、定量化することができる。強度値は、音のラウドネスまたは音量、音の速さおよび/または音のピッチと相関されうる。速さは、特定の時間区間に音が繰り返される回数である。ある場合は、音量、速さ、ピッチが大きいときに強度が高い。別の場合は、音量、速さ、ピッチが小さいときに強度が高く、これはアプリケーションに応じて変わる。いずれの場合も、部屋の中で発生する周囲音やその他の音から音を分離すれば、強度量を高い信頼性で決定できるようになる。
【0061】
図18は、本発明の一実施形態による、画像−音声キャプチャ装置1506と共に使用することができるコンピューティングシステム1850を示す。コンピューティングシステム1850は、プロセッサ1852とメモリ1856を備える。バス1854は、プロセッサとメモリ1856を、画像−音声キャプチャ装置1506と相互接続する。メモリ1856は、インタラクティブプログラム1858の少なくとも一部を格納しており、更に、受信した音源データを処理するための選択的音源聴取ロジックまたはコード1860も格納している。画像キャプチャユニット1506bによって識別される焦点ゾーンの場所に基づいて、焦点ゾーンの外の音源が、(例えば、プロセッサによって実行中であり、メモリ1856に少なくとも部分的に記憶されているなどの)選択的音源聴取ロジック1860によって選択的にフィルタリングされる。コンピューティングシステムは最も単純な形で示されているが、到来する音源の処理を行って、このため選択的聴取を可能にするために命令を処理することができるハードウェアであれば、どのようなハードウェア構成を使用してもよいという点を強調する。
【0062】
また、コンピューティングシステム1850は、バスを経由してディスプレイ110と相互接続されて示されている。この例では、焦点ゾーンは、音源Bの方に焦点を合わせている画像キャプチャユニットによって識別されうる。音Aなどの他の音源から来る音は、音声キャプチャユニット1506aによってキャプチャされて、コンピューティングシステム1850へ転送されると、選択的音源聴取ロジック1860によって実質的にフィルタ除去される。
【0063】
1つの具体例では、プレーヤは、他のユーザとのインターネットまたはネットワーク対応ビデオゲームの試合に参加しており、この場合、各ユーザの聴取可能な体験の主なものがスピーカから出される音でありうる。スピーカは、コンピューティングシステムの一部であっても、モニタ1506の一部であってもよい。ここで、図4に示すように、ローカルスピーカが音源Aを生成していると仮定する。音源Aについてローカルスピーカから来る音を、試合に参加しているユーザにフィードバックしないために、選択的音源聴取ロジック1860は、試合に参加しているユーザが自分自身の音または音声のフィードバックを受けないように、音源Aの音をフィルタ除去する。このフィルタリングを提供することによって、ビデオゲームと相互作用している間にネットワーク上でインタラクティブな通信を行う一方で、処理中の妨害となるフィードバックを有利に回避することが可能となる。
【0064】
図19は、少なくとも4つのマイクロフォン(MIC1〜MIC4)を備える例示的なモニタ1506を示す。このため、音声キャプチャユニット1506aは、音源1616(AおよびB)の位置を特定するために、より良好な粒度で三角測量ができる。すなわち、追加のマイクロフォンを提供することによって、音源の位置をより正確に定義し、このため、対象外であるかまたはゲームのプレイまたはコンピューティングシステムとのインタラクティビティに害を及ぼしかねない音源を除去してフィルタ除去することが可能である。図18に示すように、音源1616(B)は、ビデオキャプチャユニット106bによって識別された対象の音源でありうる。図18の例の説明を続けると、図19は音源Bが空間体積に識別される方法を識別している。
【0065】
音源Bが位置する空間体積は、焦点体積1974を定義する。焦点体積を識別することによって、特定の体積内にないノイズ(すなわち、正しい方向にないもの)を除去またはフィルタ除去することが可能である。焦点体積1974の選択が容易となるように、画像−音声キャプチャ装置のモニタ1506は、好ましくは少なくとも4つのマイクロフォンを備える。マイクロフォンのうちの少なくとも1つは、ほかの3つのマイクロフォンとは異なる平面にある。画像−音声キャプチャ装置のモニタ1506のマイクロフォンのうちの1つを平面1971に保ち、4つのうちの残りを平面1970に置くことによって、空間体積を定義することが可能である。
【0066】
したがって、周辺にいる他の人(1976aおよび1976bとして示される)から来るノイズは、体積焦点1974内に画定される空間体積内に存在していないため、フィルタ除去される。更に、スピーカ1976cで示すように、空間体積のすぐ外で生成されたノイズも、空間体積の外に存在しているためにフィルタ除去される。
【0067】
次に、フィルタリングアルゴリズムの例示的な実装を、図20〜22を参照して記載する。この実施形態は、ポータブルコンシューマデバイスに関連付けられた、マイクロフォンアレイによる音声入力システムを提供する。この音声入力システムは、複数のノイズ信号から目的音声信号を分離することができる。更に、マイクロフォンアレイが取り付けられているポータブルコンシューマデバイスに移動上の制限はない。本発明の一実施形態では、マイクロフォンアレイフレームワークは、4つの主要モジュールを有する。第1のモジュールは、音響エコー消去(acoustic echo cancellation:AEC)モジュールでありうる。AECモジュールは、ポータブルコンシューマデバイスが発生させるノイズをキャンセルするように構成されうる。例えば、ポータブルコンシューマデバイスがビデオゲームコントローラの場合、ビデオゲームのプレイに関連したノイズ、すなわち音楽、爆発音、声などは全て既知である。このため、マイクロフォンアレイの各マイクロフォンセンサから入って来る信号に適用するフィルタが、デバイスが発生させるこれらの既知のノイズを除去しうる。別の実施形態では、AECモジュールは、任意選択であり、後述するモジュールと一緒に含まれていなくてもよい。音響エコーキャンセルに関する更に詳しい説明はジョン・J・シャンク(John J. Shynk)、“Frequency-Domain and Multirate Adaptive Filtering”、IEEE Signal Processing Magazine、14〜37ページ、1992年1月に記載されている。同文献を、あらゆる目的のために参照により援用する。
【0068】
図20は、本発明の一実施形態による、聴音方向以外の信号を抑制するように構成されたアレイビーム形成モジュールを示す簡略模式図である。一実施形態では、このビーム形成は、フィルタアンドサムビーム形成に基づきうる。信号パスフィルタとも呼ばれる有限インパルス応答(finite impulse response:FIR)フィルタが、適応可能であるアレイ較正処理によって生成されうる。このため、ビーム形成は、基本的に、センサアレイを物理的に移動させることなく、ビーム(すなわち聴取方向)をトラッキングして、ビームをソース信号2028に向けさせるビームフォーマでありうる。焦点方向(focal direction)からの信号を増強させる方法を指すビーム形成は、マイクロフォンセンサ2012−1〜2012−Mを、(物理的にではなく)アルゴリズムによって所望の目的信号に向けさせる処理とも考えられることは、当業者に明らかであろう。センサ112−1〜112−Mが対象とする方向は、ビーム形成方向または聴取方向と呼ばれることがあり、実行時に固定されていても、適応可能であってもよい。
【0069】
ビーム形成の背後にある基本的な概念は、所望の音源から出る音声信号が複数のマイクロフォンセンサのアレイに到達するまでの時間遅延が異なることにある。アレイの形状の配置は予め較正されているため、音源とセンサアレイ間の経路長の差は、既知のパラメータである。このため、相互相関と呼ばれる方法を使用して、異なるセンサからの信号を時間整合することができる。各センサからの、時間により整合させた信号を、ビーム形成方向に従って重み付けする。次に、重み付けした信号を、センサ固有のノイズ消去構成によってフィルタしうる(すなわち、各センサが、信号パスフィルタ2062に含まれるフィルタである整合フィルタF1〜FM2042−1〜2042−Mに関連付けられている)。各センサからのフィルタされた信号をモジュール2072によって合算して、出力Z(ω,θ)を生成する。上記の方法は、自己相関と呼ばれることがあるという点を理解すべきである。更に、信号がビーム形成方向に存在しないとき、これらの信号は時間軸に沿って整合されていない状態に留まるため、このような信号は、平均化によって減衰される。アレイベースのキャプチャシステムに一般的なように、所望の空間方向(直線形状の配置を使用する)または空間体積(凸形状のアレイ配置を使用する)から音をキャプチャするマイクロフォンアレイの全体的な性能は、音源の位置を特定して、これを追跡できる能力によって決まる。しかし、ビデオゲーム環境などの、複雑な残響ノイズが存在する環境では、環境固有のパラメータのインテグレーション、つまり統合を行わずに一般の音位置追跡システムを構築することは、ほぼ不可能である。
【0070】
図20を続けて参照すると、別の実施形態では、適応ビーム形成は、2部構成の処理として説明することもできる。第1の処理では、ブロードサイドノイズがファーフィールドに存在すると仮定する。すなわち、音源2028からマイクロフォンの中心2012−1〜2012−Mまでの距離は、初期には音源2028が各マイクロフォンセンサに対して垂直の位置に存在するとみなすことができる程に十分に大きいとする。例えば、マイクロフォンセンサ2012−mについては、音源が線2036に沿って存在しているとする。このため、ブロードサイドノイズが、ここでF1と呼ぶフィルタを適用することで増強されうる。次に、定期的に較正される信号パスフィルタが、マイクロフォンセンサアレイを移動に適応可能にするF2と呼ばれる因子を決定するように構成されうる。F2の決定については、アダプティブアレイ較正モジュールに関して後述する。一実施形態では、信号パスフィルタは100ミリ秒毎に較正されうる。このため、100ミリ秒毎に、信号パスフィルタが固定ビーム形成に適用されうる。一実施形態では、整合フィルタ2042−1〜2042−Mが各マイクロフォンのステアリング因子(F2)を供給し、これにより、線2038−1〜2038−Mに示すように聴取方向が調整される。図20に示すθの入射角で、センサに向かって伝搬するサイン波ファーフィールド平面波を考慮すると、この波が2つの隣接するセンサ間の距離dを進む際の時間遅延は、dmcosθによって与えられる。固定ビーム形成に関する更に詳しい説明は、バリー・D・ヴァンフェーン(Barry D. Van Veen)およびケビン・M・バックリー(M. Buckley)、“Beamforming: A Versatile Approach to Spatial Filtering”、IEEE ASSP MAGAZINE、1988年4月の文献に記載されている。同文献を、あらゆる目的のために参照により援用する。
【0071】
図21は、音声信号のノイズ成分とソース信号成分とを分離するためのブラインド音源分離法を示す高レベル模式図である。音声信号中のソース信号およびノイズに関しては明示的な情報が得られないことがあるという点を理解すべきである。しかし、ソース信号とノイズの特徴が異なっていることはわかっている。例えば、第1の話者の音声信号と第2の話者の音声信号は、2人の話者の声が異なり、ノイズの種類が異なるため区別できる。このため、入って来る音声信号(ノイズとソース信号を含む)を表すデータ2150は、データマイニング操作により、ノイズ成分2152とソース信号2154に分離されうる。次に、分離フィルタ2160によって、ソース信号2150がノイズ信号2152から分離される。
【0072】
本発明の一実施形態により、データマイニングを実行する1つの方法として、データを解析して、二次統計(second ordar statistic)によって独立成分を見つける独立成分分析(independent component analysis:ICA)による方法がある点を当業者は理解するであろう。このため、さまざまな音を区別する音指紋をキャプチャするために、二次統計を計算して、データの特徴を記述または定義しうる。次に、ソース信号をノイズ信号から分離するために、分離フィルタが有効化されうる。音指紋の計算は定期的に実行されうるという点を理解すべきである。このため、ブラインドソース分離を使用するこのアダプティブアレイ較正処理によって、聴取方向が各期間において調整されうる。ひとたび分離フィルタ2160によって信号が分離されると、トラッキングの問題を解決できることは、当業者にとって明らかである。すなわち、センサアレイの複数のマイクロフォンに基づいて、ソース信号2154のトラッキングに使用する時間到着遅延が決定されうる。上で言及した二次統計は、自動相関法または相互相関法と呼ばれることがあることを当業者は理解するであろう。二次統計を使用したブラインドソース分離に関する更に詳しい説明は、O.シェルビ(O. Shalvi)およびE.ウェインスタイン(E. Weinstein)、“System Identification Using Non-Stationary Signals”、IEEE Transactions on Signal Processing、第44巻、第8号、2055〜2063ページ、1996年8月の文献に記載されている。同文献を、あらゆる目的のために参照によりここに援用する。
【0073】
図22は、適応ノイズ消去を採用したマイクロフォンアレイフレームワークを示す模式図である。ノイズとソース信号を含む音声信号2266が、ビデオゲームコンソールやコンピューティング装置などのポータブルコンシューマデバイス102に取り付けられうるマイクロフォンセンサアレイによって受信されうる。次に、ポータブルコンシューマデバイス102によって受信された音声信号が、音響エコー消去(acoustic echo cancellation:AEC)モジュール168によって前処理されうる。ここで、音響エコー消去は、例えば、米国特許出願第10/650,409号明細書に記載されているように実行することができ、同文献を参照によりここに援用する。マイクロフォンアレイ内のマイクロフォンセンサの個数に対応している信号z1〜zMが生成され、チャネル2270−1〜2270−Mを介して分配される。チャネル2270−1は基準チャネルでありうるという点を理解すべきである。次に、対応する信号が、フィルタアンドサムモジュール2062に伝えられる。フィルタアンドサムモジュール2062が図20を参照して上記した適応ビーム形成を実行するという点を理解すべきである。同時に、チャネル2270−1〜2270−Mからの信号がブロッキングフィルタ2264に伝えられる。
【0074】
ブロッキングフィルタ2264は、目的信号がノイズとしてとらえられる場合に、逆ビーム形成を実行するように構成されうる。このため、ブロッキングフィルタ2264は、ソース信号を減衰させ、ノイズを増強する。すなわち、ブロッキングフィルタ2264は、較正係数F3を決定するように構成されてもよく、この係数は、適応ビーム成形処理で決定された較正係数F2の逆数と考えることができる。図21を参照して記載したアダプティブアレイ較正が、ここに記載した処理のバックグラウンドで行われていることを当業者は理解するであろう。フィルタアンドサムモジュール2062とブロッキングフィルタモジュール2264は、分離フィルタ2160を構成している。次に、ノイズ増強信号U2〜UMが、それぞれ対応する適応フィルタ2275−2〜2275−Mに送られる。適応フィルタ2275−2〜2275−Mは、適応フィルタモジュール2274に含まれる。ここで、適応フィルタ2275−2〜2275−Mは、モジュール2276での加算演算のために、対応する信号を整合させるように構成されている。当業者であれば、ノイズは定常ではないことがあり、このため、加算演算の前に信号を整合させる必要があることが理解できるであろう。
【0075】
図22を続けて参照すると、次に、加算演算モジュール2278によってノイズ低減信号を供給するために、モジュール2276による加算演算で得られた信号が、モジュール2272による加算演算からの信号出力と結合されうる。すなわち、所望のソース信号を増強するように、モジュール2272の増強信号出力が、モジュール2276からのノイズ増強信号と結合されうる。ブロック2280は適応ノイズ消去操作を表す点を理解すべきである。更に、一実施形態では、検出された信号対雑音比が0デシベルを超えている限り、バックグラウンドに存在するアレイ較正が100ミリ秒毎に行われうる。前述のように、アレイ較正により、フィルタアンドサムビームフォーマ2062で使用される信号パスフィルタと、信号対雑音比が−100デシベル未満の純粋な干渉(pure interference)を生成する信号ブロッキングフィルタ2264が更新されうる。
【0076】
一実施形態では、マイクロフォンセンサアレイの出力信号が後処理モジュールに送られ、ベイジアン統計モデリングによって、人物固有の音声スペクトルフィルタリングに基づいて処理され、音声品質が更に向上されうる。音声スペクトルフィルタリングに関する詳細な情報は、デイビッド・バーシュテイン(David Burshtein)、“Speech Enhancement Using a Mixture-Maximum Model”、IEEE Transactions on Speech and Audio Processing、第10巻、第6号、2002年9月の文献に記載されている。同文献を、あらゆる目的のために参照により援用する。ここで言及した信号処理アルゴリズムは周波数領域で実行されるという点を理解すべきである。更に、リアルタイムの信号応答を得るために、高速かつ高効率な高速フーリエ変換(Fast Fourier transform:FFT)が適用されうる。一実施形態では、実装されたソフトウェアは、各信号入力の塊(サンプリングレート16kHzにおいて512の信号サンプル)について、ウィンドウ長1024のFFT操作を25回必要とする。直線形状に等間隔で配置された4個のセンサを有するマイクロフォンアレイの代表的な例では、音響エコー消去およびベイジアンモデルをベースとした音声スペクトルフィルタリングを適用しない場合に、必要な全演算は約250メガの浮動小数点演算(250MFLOPS:mega floating point operations)となりうる。
【0077】
図22を続けて参照すると、分離フィルタ2160は、QR直交化手順によって、この範囲および零空間にある2つの直角成分に分解されうる。すなわち、零空間から信号ブロッキングフィルタ係数(F3)が得られ、順位空間(rank space)から信号パスフィルタ係数(F2)が得られうる。この処理は、一般化サイドローブキャンセラ(Generalized Sidelobe Canceler:GSC)手法として特徴づけられうる。GSC手法に関する更に詳しい説明は、前述の文献“Beamforming: A Versatile Approach to Spatial Filtering”に記載されており、同文献は参照により援用されている。
【0078】
上記に記載した実施形態は、高ノイズ環境において音声入力を提供するための方法および装置について記載している。この音声入力システムは、SONY PLAYSTATION2(登録商標)用のビデオゲームコントローラやその他の任意の適切なビデオゲームコントローラなどのビデオゲームコントローラに取り付けられうるマイクロフォンアレイを有する。マイクロフォンは、ビデオゲームコントローラの移動に一切の制限を課さないように構成されうる。マイクロフォンアレイのマイクロフォンセンサによって受信された信号には、フォアグラウンドの話者または音声信号、および部屋の残響を含む各種バックグラウンドノイズが含まれると仮定される。異なるセンサからのバックグラウンドおよびフォアグラウンドの時間遅延が異なることがあるため、周波数スペクトル領域におけるこれらの二次統計は互いに独立しており、このため、周波数成分に基づいて信号を分離することができる。次に、分離した信号周波数成分が再び結合されて、フォアグラウンドの所望の音声信号が再現される。ここに記載した実施形態は、ノイズ環境においてビデオゲーム用のコマンドを発行するか、または他のプレーヤと通信するためのリアルタイム音声入力システムを規定しているという点を更に理解すべきである。
【0079】
図23は、トリガ2300とトリガセンサ2301を有する例示的なおもちゃの銃2300を示す。更に、おもちゃの銃2300は、マーブル2302も有する。一実施形態では、マーブル2302は、中実の金属のボールベアリングを含む。ユーザが銃2300をはじく(flick)と、マーブル2302が、前方に位置2302’まで摺動して大きな「破裂」(crack)音を発生させ、これがモニタ1506によって感知されうる。別法では、あるいは上記に加えて、ユーザがトリガ2301を握ると、これがトリガセンサ2304によって検知されてもよい。おもちゃの銃2300は、銃の発射の音響効果をスピーカ2308から出す回路2306を有する。一実施形態では、トリガ2301の握りが強いほど、銃弾の効果が早くなるか、あるいは異なる効果が引き起こされる。コンピューティングシステム1850(図18)は、音を区別することができ、マーブル2002が発生させた「破裂」音を受けると「再装填」動作を、トリガ2301が握られていると、仮想環境で発射動作を起こすことができる。別の実施形態では、トリガが強く握られると、発生する音のピッチ(周波数)が高くなったりピッチが変わったりする。ピッチが高くなるほど強度が大きくなることが、モニタ1506によって取得されうる。
【0080】
図20にはおもちゃの銃が示されているが、プラッシュ織の人形、ボールなどの他の入力装置、道具またはおもちゃを想到でき、音声キャプチャ1506aと共に使用することができることを当業者は認めるであろう。ここに記載した例示的な実施形態は、音量、周波数、または速さの変化がコンピュータシステムによってどのように解釈されて、インタフェース用のオブジェクトとのインタラクションを示す強度値が特定されるかを示している。1つの例では、おもちゃの人形は、抱かれるか握られるかで、生成される音が変わり、これが音声キャプチャユニットによってキャプチャされて、異なる反応をしうる。
【0081】
図24は、フローチャート図2400を示す。この手順は開始ブロック2402に示すように開始し、操作2404に進み、ビデオおよび/または音声キャプチャ機能を備えたキャプチャ装置を使用して、キャプチャ領域がモニタされうる。手順は操作2406に進み、キャプチャ領域内で入力装置が検出されうる。入力装置の初期形状が検出されうる。入力装置は、その色または形によって検出されうる。例えば、入力装置がオレンジ色のボールである場合、ビデオモニタは丸いオレンジの形状を探し、それが入力装置であると判定する。
【0082】
手順は操作2408に進み、入力装置の形、色または明るさの変化の程度が検出されうる。一実施形態では、入力装置は、変形を受けると、色が変わるか次第に明るくなる。別の実施形態では、入力装置は、例えばユーザによって握られると単に形を変える。ビデオモニタは、装置の形、色または明るさの変化を検出して、変化の程度から、強度値を特定することができる。
【0083】
手順は操作2410に進み、キャプチャ装置と通信しているコンピュータで実行中のコンピュータプログラムによって、アクティビティ入力が開始される。アクティビティ入力には、ビデオキャプチャ装置が感知した変形、光、色の程度から計算される強度値が含まれうる。次に手順が、終了ブロック2412に示すように終了する。
【0084】
図25は、第2のフローチャート2500を示す。この手順は、開始ブロック2502に示すように開始し、操作2504に示すように、ビデオおよび音声機能を備えたキャプチャ装置を使用して、キャプチャ領域がモニタされうる。次に、操作2506において、入力装置が発生させた音が検出されうる。手順は操作2508に進み、入力装置が発生させた音のラウドネスまたは速さに基づいて、強度値が計算されうる。別の実施形態では、強度値を決定するために、音の周波数(ピッチ)が使用されうる。
【0085】
手順は操作2510に進み、キャプチャ装置と通信しているコンピュータで実行中のコンピュータプログラムに、アクティビティ入力が提供されうる。アクティビティ入力には、入力装置が発生させた音から決定された強度値を表す値が含まれうる。次に手順が、終了ブロック2512に示すように終了する。
【0086】
焦点ゾーンにおいて、ビデオゲームコントローラがビデオゲームまたは他のコンピュータプログラムとのインタラクションが求められる場合がある。ビデオゲームコントローラは、通常、ゲーム内のアクションを制御するため、ビデオゲームプログラムへの入力を提供する、ボタン、ノブおよび/またはジョイスティックを有する手持ち式装置でありうる。空間内でのコントローラの移動および/または回転を検知することによって、コントローラに追加の機能を追加することが求められることがある。例えば、ユーザが、コントローラ装置全体を傾けることによって、仮想のレース車を運転し、これが、図1〜14を参照して説明したように、画像キャプチャ装置によって検知されうる。従来、ビデオゲームコントローラは、利用可能な1つ以上の赤外線または高周波(RF)インタフェースを使用して、アナログ信号および/またはデジタルデータのストリームを有線あるいは無線によって提供している。マルチプレーヤのゲームのために、複数のコントローラが、コンピュータシステム(例えばゲームコンソール)と電子的通信を行うことがある。プログラムとのインタラクションを行う各ユーザに対して、プレーヤ1、プレーヤ2などの番号が割り振られうる。ゲームコントローラがシステムに接続されると、各ユーザに対して、コントローラが接続されたポート番号に従って、番号が割り振られうる。このため、コンピュータゲームが4つのポートを有する場合、プレーヤ1がポート番号1に接続され、プレーヤ2がポート番号2に接続され、…と続いていく。無線コントローラにより、プレーヤは、無線チャネルやほかのハンドシェークプロトコル機構に基づいて、自分のプレーヤ番号を選択できるようになり、コントローラ自体が、プレーヤ1、プレーヤ2などであると認識できる。
【0087】
図26,27は、画像キャプチャ装置105(図1)とのインタラクションを行う例示的なコントローラ2600を示す。コントローラ2600は、各種のボタンおよびジョイスティックを含む複数のインタフェース装置を有するインタフェース2602を備える。ここに記載するコントローラは、有線であっても、無線であってもよい。WiFi、ブルートゥース(登録商標)、赤外線、音声、光などの技術が、ゲームコンソールなどのコンピュータとインタフェースするために使用されうる。一実施形態では、コントローラ2600は、LEDアレイ2605を有する。LEDアレイは、さまざまなレイアウトで構成することができ、このようなレイアウトには、例えば、各LEDが、想像上の矩形または正方形の結合ボックスの頂点に配置されている2×2のスタックがある。画像キャプチャ装置が作成する画像平面に投射されたときの、結合ボックスの位置および変形を追跡することによって、変化および変形がビデオアナライザで分析され、コントローラの位置および姿勢の情報が解読されうる。LEDアレイ2605は、赤外光または可視光を発しうる。画像キャプチャ装置105(図1)は、本発明のさまざまな実施形態に関して説明したように、LEDアレイ2605を識別しうる。例えば、各コントローラに対して、スイッチ2610を使用して、例えば、プレーヤ1〜プレーヤ4と割り振られ、これによって、ユーザが、プレーヤ番号1〜4から選択できるようになる。プレーヤ番号のそれぞれの選択は、LEDアレイ2605が発光している一意的なLEDのパターンまたは変調に対応している。例えば、プレーヤ1の場合は、1番目、3番目および5番目のLEDが点灯する。このようなプレーヤ情報は符号化されて、複数のビデオフレーム間で、所定の期間にわたり、繰り返し伝送されうる。コントローラまたは装置のLEDが、トラッキングモードと伝送モードを切り替えるように、インタリーブ方式が使用されることが望ましいことがある。トラッキングモードでは、サイクルの第1の部分の間、全てのLEDが点灯しうる。伝送モードでは、サイクルの第2の部分の間、LEDによって情報の変調が行われうる。所定の期間、LEDは、信号を受け取ることができるビデオアナライザまたは適切な装置に、トラッキング情報と通信情報を伝送する。伝送モードでは、LEDは、プレーヤのIDを表す情報を符号化しうる。期間と動作周期は、トラッキングの速度、点灯条件、コントローラの台数などに対応するように選択されうる。通信とトラッキング情報をインタリーブすることによって、ビデオキャプチャ装置は、適切な情報が与えられて、各コントローラのトラッキングパラメータを計算し、コントローラ同志を区別することができる。このような区別は、位置および姿勢や、コントローラの移動の他の評価基準をモニタおよびトラッキングする際に、各物理コントローラを分離するために、ビデオアナライザで使用されうる。
【0088】
伝送モードでは、コマンドまたは状態情報などの他の情報が、コントローラまたは装置のLEDによって、公知の符号化および変調の方式に従って伝送されうる。受信側では、ビデオキャプチャ装置に結合されたビデオアナライザが、LEDの状態と同期して、これをトラッキングし、情報とコントローラの移動を復号化しうる。伝送モードサイクルでは、フレーム間でデータを変調させることによって、高帯域が得られることが知られている。
【0089】
ユーザがインタフェース2602とのインタラクションを行うと、LEDアレイ2605の1つ以上のLEDが変調および/または変色しうる。例えば、ユーザがジョイスティックを動かすと、LEDが明るさを変えるか、または情報を伝送しうる。強度または色の変化が、コンピュータシステムによってモニタされて、図1〜14を参照して説明したように、強度値としてゲームプログラムに提供される。更に、各ボタンが、LEDアレイ2605の1つ以上のLEDの色または強度の変化にマッピングされうる。
【0090】
コントローラ2600が三次元空間内で移動され、ロール、ヨーまたはピッチの方向(後で図33を参照して詳細に説明する)のいずれかに回転されると、画像キャプチャ装置105は、コンピュータシステム102(図1)と共に、この変化を識別して、画像平面での移動を記述するために二次元ベクトルを、あるいは、三次元の空間での移動を記述するために三次元のベクトルを生成することができる。ベクトルは、画像キャプチャ装置105に対する相対移動および/または絶対位置を記述している一連の座標として提供されうる。当業者にとって明らかなように、画像キャプチャ装置105の見通線に垂直な面(画像平面)での移動は、画像キャプチャゾーン内の絶対位置によって特定することができる。これに対して、画像キャプチャ装置105に近いコントローラ2600の移動は、LEDアレイ2605によって広がって見えて特定されうる。すなわち、画像平面上の先頭のLEDと最後のLED間の距離が、画像キャプチャ装置からの距離を計算するために測定されうる。
【0091】
図28,29aは、LED2805が矩形に構成されており、これによって、コントローラ2800の各軸を中心とした三次元と回転の移動の検出が可能なコントローラ2800を示す。限られたLEDのみが図示されているが、これは例示のみを目的としており、面内に分布しているLEDの個数は任意の個数であってもよく、同一直線上にないLEDも可能である。コントローラ2800が前後にピッチ運動すると、上下のLEDの距離が近づくが、左右のLED間の距離は変わらない。同様に、コントローラ2800が左右にヨー運動すると、左右のLEDが接近して見えるが、上下のLED間の距離は変わらない。コントローラ2800のロール運動は、画像平面におけるLEDの向きを特定することによって検出することができる。コントローラが、画像キャプチャ装置105の見通線に沿って画像キャプチャ装置105に近づくと、全てのLEDが接近して見える。最後に、画像平面に沿ったコントローラの移動は、画像平面上のLEDの位置を特定することによってトラッキングすることができ、これにより、x軸およびy軸のそれぞれに沿った移動が特定できる。図26,27を参照して説明したように、ユーザによるインタフェース2802とのインタラクションを特定するために、LED変調を使用することができる。
【0092】
図29bは、別の実施形態によるコントローラ2920を示しており、LED2922、スピーカ2924、およびマイクロフォン2926が組み込まれている。LED2922は、画像キャプチャ装置を使用して位置情報と姿勢情報を提供する一方、スピーカ2924は、可聴音または超音波を発生させ、図15〜23を参照して説明したような、音声モニタを使用した音響効果および/または通信を提供している。マイクロフォン2926は、システムに音声入力を提供しており、音声コマンドを発行したり、またはオンラインのマルチプレーヤ環境で他のプレーヤと通信するために使用することができる。
【0093】
図29cは、矩形構成のLED2932のほか、コントローラ2930の後面パネルの中央に配置されたスピーカを有するコントローラ2930を示す。図29dは、弧形状に配置された5つのLED2942を有するコントローラ2940を示す。図29eは、長方形の構成に配置されたLEDを有するコントローラ2950を示す。図29fは、密集して配置された6つのLED296を有するコントローラ2960を示す。当業者は、ほかのLED構成が可能であることを認めるであろう。
【0094】
図30は、画像キャプチャ装置の使用時に、プレーヤとコントローラとの対応関係を決定するための例示的な手順を示すフローチャート3000を示す。この手順は開始ブロック3002に示すように開始し、操作3004に進む。操作3004において、プレーヤは希望するプレーヤ番号を選択し、コントローラがその選択内容を受け取りうる。次に、手順は操作3006に進み、ユーザが選択したプレーヤ番号に対応するLEDパターンが表示されうる。操作3008において、コントローラを含む焦点ゾーンの画像が、コンピュータに接続されうる画像キャプチャ装置によって受信される。コンピュータは、画像を表すデータを受け取ると、操作3010において、コントローラが発生させたLEDパターンを特定し、操作3012において、LEDパターンから、そのコントローラに対応しているプレーヤを決定する。次に手順が、終了ブロック3014に示すように終了する。
【0095】
図31は、画像キャプチャ装置を使用してコントローラの姿勢を特定するための例示的な手順を示すフローチャート3100を示す。この手順は開始ブロック3102に示すように開始し、操作3104に進み、コントローラを含む焦点ゾーンのビデオ画像が受信される。操作3106において、コントローラにあるLEDの絶対位置および相対位置から、コントローラの姿勢および/または位置が特定されうる。姿勢と位置は、図28,29を参照して説明したように取得することができる。コントローラの姿勢および/または位置が特定されると、手順は操作3108に進み、コントローラの姿勢および/または位置を表すデータが、このデータを要求したか、あるいはこのデータを受け取るコンピュータプログラムに渡される。次に手順が、終了ブロック3110に示すように終了する。
【0096】
図32は、画像キャプチャ装置を使用してコントローラの姿勢を特定するための例示的な手順を示すフローチャート3200を示す。この手順は開始ブロック3202に示すように開始し、操作3204に進み、コントローラを含む焦点ゾーンのビデオ画像が受信される。次に、操作3206において、ボタン、スイッチ、ジョイスティックなどのコントローラのインタフェースの操作が、コントローラのLEDの変調から特定されうる。この操作は、図26〜27を参照して説明したように実行されうる。次に、操作3208において、操作情報がコンピュータプログラムに渡されうる。最後に、手順は、終了ブロック3210に示すように終了する。
【0097】
図33は、多数の制御部と移動検知装置3305を有するインタフェース3302を有するコントローラ3300を示す。一実施形態では、移動検知装置3305は、三軸の加速度計であってもよい。加速度計は、電子工学分野で一般に公知であり、通常、運動量の変化に反応する構造する小さな固体素子装置と、反応を検出するセンサとを有する。並進運動のほかに回転運動を検知することができる小型の加速度計が入手可能である。並進運動は、x軸、y軸、z軸に沿った移動である。回転運動は、x軸、y軸、z軸の1つ以上を中心とした回転である。並進検出加速度計は、重力の引っ張りの方向を検出することができ、このため、重力の引っ張りに対する装置(ゲームコントローラなど)の絶対的な姿勢を特定する。コントローラ3300は、並進検知加速度計3305を有し、これがデジタルデータを発生させ、このデータがコントローラ330の内部にある回路(図示せず)によって受信される。このデジタルデータは、装置に対する重力の引っ張りから決定できる、装置の並進移動ベクトルと姿勢に変換されうる。このようにして、回路は、コントローラ3300の移動と姿勢を特定して、インタフェース3302の各種制御部とユーザとのインタラクションを示すほかのデータと共に、当業界で一般に公知の技術(ケーブル、赤外線または無線接続を介してなど)を使用して、このデータをゲームコンソールに伝送する。このデータを、画像キャプチャ装置が視覚的に認識可能なようにLED変調に符号化することも可能である。装置によってキャプチャされた移動は、(初期位置を原点とした)絶対位置と姿勢、および/または位置と姿勢の変化の情報として表すことができる。
【0098】
図34は、コントローラ3300の移動をコンピュータプログラムに伝える例示的な手順を示すフローチャート3400を示す。この手順は開始ブロック3402から始まり、操作3404に進み、ゲームコントローラの移動が検出されうる。一実施形態では、移動は、コントローラの運動量の変化を検出することによって検出することができ、運動量は加速度計を使用して検出することができる。次に、運動量の変化が、初期の原点からの移動ベクトルおよび/または絶対位置ベクトル、ならびに、コントローラ3300の姿勢を特定する重力の引っ張りを表すベクトルに変換されうる。移動、位置、および姿勢の各ベクトルは、一連の座標として表すことができる。操作3404においてゲームコントローラ3300の移動を検出したら、手順は、操作3406に進み、検出された移動を表すデータが、このデータを要求したか、あるいはこのデータを受け取るプログラムに渡される。
【0099】
特定の実施形態では、強度値、コントローラのプレーヤ番号、コントローラを含む1つ以上の入力オブジェクトの姿勢および/または位置を決定するための上記の画像または音声処理機能が、コンピュータシステムで実行中のプロセスで実行されてもよい。コンピューティングシステムが、メインプロセスを実行していてもよく、これは、画像または音声処理から得られるデータを要求するか、あるいはこのデータを受け取るゲームアプリケーションであってもよい。このようなデータには、強度値、コントローラのプレーヤ番号、コントローラを含む1つ以上の入力オブジェクトの姿勢および/または位置、コントローラの操作などが含まれる。各種実施形態では、画像および/または音声処理機能を実行しているプロセスは、ビデオカメラまたはビデオ/音声監視装置のドライバであってもよく、このドライバは、一般に知られているように実装に特有であり、当業界で知られ、理解されているように、任意のタイプのプロセス間通信を介して、メインプロセスにデータを提供する。画像または音声処理を実行するプロセスは、ゲームや他のソフトウェアを実行しているものと同じプロセッサで実行されても、別のプロセッサで実行されてもよい。画像または音声処理とゲーム機能に対して、例えば、プロシージャコールを使用して、同じプロセス内で共通のプロセスとしてもよい。このため、本明細書において、強度値やほかの情報が「『プログラムに』提供される」と言及することがあるが、本発明には、1つのプロセスが、画像処理機能とゲーム機能の両方を実行することができるように、プロシージャコールやその他のソフトウェア機能を使用して、このようなデータをプロセスのルーチンに提供することも含まれていることを理解すべきである。また、これら機能を異なるプロセスに分割して、共通のプロセッサコアまたは複数のプロセッサコアで実行される1つ以上のプロセスが、本明細書に記載したような画像および/または音声処理を実行して、別のプロセスがゲーム機能を実行してもよい。
【0100】
本発明は、ここに記載したように使用されても、ほかのユーザ入力機構、音の角度方向をトラッキングする他の機構、および/またはオブジェクトの位置を能動的または受動的にトラッキングする機構、機械的視野を使用する機構、これらの組み合わせと共に使用されてもよい。トラッキングされるオブジェクトは、システムへのフィードバックを操作する補助的制御部またはボタンを備えていてもよい。このようなフィードバックには、光源からの発光、音歪み手段または他の適切な送信器および変調器のほかに、ボタン、圧力パッドなどがあるが、これらに限定されない。これらは、その伝達または変調、符号化状態および/またはトラッキング対象の装置との間でやり取りされるコマンドに影響しうる。
【0101】
本発明は、ゲームコンソール、ゲームコンピュータまたはコンピューティング装置、携帯式デバイス、マイクロプロセッサシステム、マイクロプロセッサベースのプログラム可能な家庭用電気製品、ミニコンピュータ、メインフレームコンピュータなど、他のコンピュータシステムの構成によって実施されてもよい。また、本発明は、分散コンピューティング環境で実施されてもよく、このような環境では、ネットワークを介してリンクされる遠隔処理デバイスによってタスクが実行される。例えば、オンラインのゲームシステムおよびソフトウェアが使用されてもよい。
【0102】
上記の実施形態を考慮に入れて、本発明が、コンピュータシステムに記憶されたデータを使用する、各種のコンピュータ実装操作を使用してもよい点を理解すべきである。これらの操作は、物理量の物理的操作を必要とする。この物理量は通常、記憶、転送、結合、比較などの操作が可能な電気信号または磁気信号の形を取るが、必ずしもこれらに限定されない。更に、実行される操作は、生成、特定、決定または比較などと呼ばれることが多い。
【0103】
本発明の一部を構成している、本明細書に記載した操作はいずれも、有用な機械的操作である。本発明は、これらの操作を実行するデバイスまたは装置にも関する。この装置は、上記に記載したキャリアネットワークなどの所望の目的のために特別に作製されたものであっても、あるいは汎用コンピュータであり、そのコンピュータに記憶されているコンピュータプログラムによって選択的に作動もしくは構成されてもよい。特に、各種の汎用の機械を、本明細書の教示に従って記述したコンピュータプログラムと併用してもよく、あるいは所望の操作を実行するために特化した機械を作製するほうが利便性が高いこともある。
【0104】
本発明は、また、計算機可読媒体上の計算機可読コードとして実施されてもよい。計算機可読媒体は、コンピュータシステムによって後から読取ることができるデータを記憶できるデータ記憶装置であれば、どのようなものであってもよい。計算機可読媒体の例には、ハードディスク、ネットワーク接続記憶装置(NAS)、リードオンリーメモリ、ランダムアクセスメモリ、CD−ROM、CD−R、CD−RW、DVD、磁気テープおよび他の光学式データ記憶装置および非光学式データ記憶装置などがある。また、計算機可読媒体は、計算機可読コードが分散式に記憶されて、実行されるように、ネットワークに結合されたコンピュータシステムを介して分散されてもよい。
【0105】
上記に、本発明を明確に理解できるように多少詳細に記載したが、添付の特許請求の範囲内で変更例または変形例を実施できることは明らかである。したがって、本実施形態は例示的なものであり、制限するものではなく、本発明は本明細書に記載されている詳細な事項に限定されず、添付の特許請求の範囲およびその均等物の範囲内で変更されてもよい。
【図面の簡単な説明】
【0106】
【図1】画像キャプチャ装置を有するインタラクティブゲーム構成を示す。
【図2】画像キャプチャ装置の前方にあるオブジェクトの照準方向を確認するための方法を示す。
【図3】グラフィックディスプレイ上のオブジェクトとのインタラクションを行うための例示的なユーザ入力システムのブロック図である。
【図4】本明細書に記載した本発明の各種実施形態を実装するように構成されたコンピュータ処理システムの簡略ブロック図である。
【図5】代替入力装置として機能する操作用オブジェクトとの併用に適合されたビデオゲームコンソールの各種構成要素の構成を示すブロック図である。
【図6】ユーザによる操作中に、ユーザ入力装置に対応するピクセル群をトラッキングして判別するための機能ブロックを示すブロック図である。
【図7】変形可能なユーザ入力装置の例示的な実施形態の模式図である。
【図8】ユーザが変形可能なオブジェクトを操作する例示的な用途を示す。
【図9】バスケットボールの形をした、例示的な変形可能なオブジェクト900を示す。
【図10】外側層の下に発光ダイオードの層(LED)が存在する変形可能なオブジェクトを示す。
【図11】フットボールの形をした、例示的な変形可能なオブジェクトを示す。
【図12】変形可能なオブジェクトが、ユーザが使用しているバスケットボールの形である、変形可能なオブジェクトの例示的な用途を示す。
【図13】トリガとトリガセンサを有するおもちゃの銃を示す。
【図14】おもちゃの野球のバットを示す。
【図15】画像キャプチャユニットと音声キャプチャユニットとを有するモニタを示す。
【図16】2つの音源に向かい合った状態の音声キャプチャユニットを示す。
【図17】方向選択が行われるように、三角測量アルゴリズムを使用した音Aと音Bの処理を示す。
【図18】画像−音声キャプチャ装置と共に使用されうるコンピューティングシステムを示す。
【図19】少なくとも4つのマイクロフォンを備える例示的な音声モニタを示す。
【図20】アレイビーム形成モジュールを示す模式概略図である。
【図21】音声信号のノイズ成分とソース信号成分とを分離するためのブラインド音源分離法を示す高レベル模式図である。
【図22】適応ノイズ消去を採用したマイクロフォンアレイフレームワークを示す模式図である。
【図23】音声モニタとインタフェースするための、トリガおよびトリガセンサを有する例示的なおもちゃの銃を示す。
【図24】ビデオキャプチャを使用して、コンピュータプログラムとインタフェースするためのフローチャートを示す。
【図25】音声モニタリングを使用して、コンピュータプログラムとインタフェースするためのフローチャートを示す。
【図26】図1の画像キャプチャ装置とのインタラクションを行うための例示的なコントローラの上面図である。
【図27】図1の画像キャプチャ装置とのインタラクションを行うための例示的なコントローラの背面図である。
【図28】矩形の構成のLEDを有するコントローラの上面図である。
【図29a】矩形の構成のLEDを有するコントローラの背面図である。
【図29b】LED、スピーカ、およびマイクロフォンが組み込まれたコントローラの背面図である。
【図29c】矩形構成のLEDのほか、コントローラの後面パネルの中央に配置されたスピーカを有するコントローラの背面図である。
【図29d】5つのLEDが、弧形状に配置されているコントローラの背面図である。
【図29e】長方形の構成に配置されたLEDを有するコントローラの背面図である。
【図29f】密集して配置された6つのLEDを有するコントローラの背面図である。
【図30】画像キャプチャ装置の使用時に、プレーヤとコントローラとの対応関係を決定するための例示的な手順を示すフローチャートを示す。
【図31】画像キャプチャ装置を使用してコントローラの姿勢を特定するための例示的な手順を示すフローチャートを示す。
【図32】画像キャプチャ装置を使用してコントローラの姿勢を特定するための例示的な手順を示すフローチャートを示す。
【図33】多数の制御部と移動検知装置を有するインタフェースを有するコントローラを示す。
【図34】コントローラの移動をコンピュータプログラムに伝える例示的な手順を示すフローチャートを示す。
【背景技術】
【0001】
ビデオゲーム産業は、長年にわたって多くの変化を経験してきた。演算能力が拡大するにつれ、ビデオゲームの開発者も同様に、この演算能力の増大を利用するゲームソフトウェアを作成してきた。このために、ビデオゲーム開発者は、極めてリアルなゲーム体験を生み出すべく、高度な演算と数学を採用したゲームをコーディングしてきた。
【発明の開示】
【発明が解決しようとする課題】
【0002】
ゲームプラットホームの例に、ソニープレイステーションまたはソニープレイステーション2(PS2)があり、これらはそれぞれ、ゲームコンソールの形で販売されている。周知のように、ゲームコンソールはモニタ(通常はテレビ)と接続されて、手持ち式のコントローラによってユーザとのインタラクションを可能にするように設計されている。ゲームコンソールは、CPU、処理量の多いグラフィック操作のためのグラフィックシンセサイザ、ジオメトリ変換を実行するためのベクトル装置などの特化した処理ハードウェアと、その他の繋ぎとなるハードウェア即ちグルーハードウェア、ファームウェアおよびソフトウェアなどを備えて設計される。また、ゲームコンソールは、ゲームコンソールによるローカルプレイを行うためにゲームのコンパクトディスクを受け容れるための光ディスクトレイを備えて設計される。また、ユーザが、インターネット上で他のユーザと対戦して、または、他のユーザと一緒にインタラクティブにプレイすることができるオンラインゲームも可能である。
【0003】
ゲームが複合的なものであることがプレーヤの興味を引き続けていることから、ゲームのソフトウェアおよびハードウェアのメーカは更なるインタラクティブ機能を実現するために革新を続けてきている。しかし、実際は、ユーザがゲームとインタラクトする手法は、長年にわたって劇的には変わることはなかった。一般に、ユーザは、未だに、手持ち式のコントローラを使用してコンピュータゲームをプレイしたり、マウスポインティングデバイスを使用してプログラムとのインタラクションを行っている。
【0004】
前述を鑑みて、ゲームのプレイとのより高度なユーザインタラクティビティを可能にする方法およびシステムが求められている。
【課題を解決するための手段】
【0005】
概して、本発明は、コンピュータプログラムとインタフェースする際に、強度(インテンシティ)量を決定するために、コンピュータの画像および音声処理を使用する方法ならびにビデオゲームを提供することによって、このニーズを満たす。
【0006】
本発明は、プロセス、装置、システム、デバイスまたは方法など、多くの方法で実装することができる点を理解されたい。以下に本発明のいくつかの発明の実施形態を記載する。
【0007】
一実施形態では、コンピュータプログラムとのインタラクションの強度値を決定するための方法が提供される。上記方法は、キャプチャゾーンの画像をキャプチャするステップと、前記画像内で入力オブジェクトを特定するステップと、前記入力オブジェクトのパラメータの初期値を特定するステップと、前記キャプチャゾーンの第2の画像をキャプチャするステップと、前記入力オブジェクトの前記パラメータの第2の値を特定するステップと、を有する。前記パラメータは、前記入力オブジェクトの形、色または明るさの1つ以上を特定しており、前記入力オブジェクトに対する人の操作によって影響を受けうる。前記第2の値と前記第1の値の差である前記パラメータの変化の程度が計算されうる。前記パラメータの前記変化の程度を表す強度値を含むアクティブ入力が、前記コンピュータプログラムに提供されうる。
【0008】
別の実施形態では、コンピュータプログラムに強度値を入力するための方法が提供される。上記方法は、キャプチャゾーン内で入力オブジェクトが発生させる音をキャプチャするステップと、前記入力装置が発生させる前記音のラウドネス、速さ、ピッチの少なくとも1つを特定する入力パラメータを特定するステップと、前記コンピュータプログラムにアクティブ入力を提供するステップと、を有する。前記コンピュータプログラムは、前記音をキャプチャするための手段と通信しているコンピュータで実行されている。前記アクティブ入力は、前記入力パラメータを表しうる強度値を含む。前記コンピュータプログラムは、前記入力オブジェクトの仮想バージョン(virtual version)の操作をシミュレーションする。
【0009】
更に別の実施形態では、コンピュータビデオゲームが提供される。前記コンピュータビデオゲームは、入力オブジェクト、監視装置、およびコンピュータで実行中のコンピュータプログラムを有する。前記入力オブジェクトは、人の操作のために構成されうる。前記監視装置は、前記監視装置の近くのキャプチャゾーンから、画像または音声の一方を含む情報をキャプチャする。前記コンピュータプログラムは、前記監視装置によってキャプチャされた前記情報を表すデータを受け取り、前記データを分析して、前記入力オブジェクトに対する前記人の操作の強度を表す強度値を計算する。
【0010】
本発明の利点は、例示のために本発明の原理を示す添付の図面と併せて、以下の詳細な説明を読めば明らかとなるであろう。
【0011】
本発明は添付の図面と併せて以下の詳細な説明を読めば容易に理解できるであろう。図面においては、同じ構造要素には同じ参照符号を付した。
【発明を実施するための最良の形態】
【0012】
以下の説明では、本発明を完全に理解できるように、具体的な詳細を数多く記載する。しかし、これらの詳細な内容の一部または全てを用いなくとも本発明を実施し得ることは当業者にとって自明である。場合によっては、本発明を不必要にわかりにくくしないように、公知のプロセス操作については詳しく記載しない。
【0013】
本明細書に記載する技術は、音声およびビデオのキャプチャおよび処理を使用して、コンピュータプログラムとのインタラクションを行うために、強度値を特定するために使用することができる。各種実施形態において、ビデオカメラおよび/または音声検知機能を備えたコンピュータまたはゲームシステムが、画像および音声のデータを処理して、センサの焦点ゾーンで生じているさまざまなアクションを識別しうる。このようなアクションには、通常、オブジェクトの操作や、声またはオブジェクトの操作による音の発生がある。この例には、おもちゃの銃のトリガを引いたり、オブジェクトを移動させたり変形させることがある。本技術は、これらの技術に加えて、このようなアクションに関連する強度量を検知して決定する追加の機能も更に提供する。例えば、トリガを引く強さ、オブジェクトの変形の程度、野球のバットを握る強さなどである。この追加のパラメータを使用することで、ビデオゲームメーカや、その他のマンマシンインタラクション機能に関連する分野の当業者は、ユーザの体験を大きく改善することができる。これらの具体例について、下記に記載する。
【0014】
また、ゲームコントローラとゲームまたは他のアプリケーションの間のインタラクティブ性を強化する、ゲームコントローラの機能強化のいくつかの実施形態についても、ここに記載する。このような機能強化には、ゲームコントローラに、ビデオキャプチャおよび処理システムが視覚的に認識可能な複数のLEDを設けて、ビデオゲームや他のアプリケーションが、ビデオキャプチャ装置に対するゲームコントローラの位置、移動または姿勢を特定できるようにすることがある。また、音声コマンドまたは他のユーザとの通信を受け取るため、およびコントローラとベースユニット間の通信を実現するために、音声をキャプチャする機能、または音や超音波を発生させる機能を備えたゲームコントローラについても記載する。
【0015】
図1は、本発明の一実施形態によるインタラクティブ(対話型)ゲーム構成100を示す。インタラクティブゲーム構成100は、コンピュータ102(本明細書では「コンソール」とも呼ぶ)を有し、これは、ディスプレイ画面110と接続されうる。ディスプレイ画面110の上には画像キャプチャ装置105が置かれ、コンピュータ102と接続されうる。コンピュータ102は、ユーザが、コントローラ108によってゲームをプレイしたり、ビデオゲームとインタフェースすることができるゲームシステムのコンソールであってもよい。画像キャプチャ装置105は、ディスプレイ画面110の上に置かれて示されているが、画像キャプチャ装置105が、ディスプレイ画面110のほぼ前方にある画像をキャプチャできれば、ほかの近くの位置に置かれていてもよいことが理解されよう。これらの移動およびインタラクションをキャプチャするための技術は変更し得るが、例示的な技術は、それぞれ2003年2月21日に出願された英国特許出願公開第0304024.3号明細書(国際公開第GB2004/000693号パンフレット)および英国特許出願公開第0304022.7明細書(国際公開第GB2004/000703号パンフレット)号に記載されており、これらの各々は参照によりここに援用される。
【0016】
一実施形態では、画像キャプチャ装置105は、標準的なウェブカムのように単純なものであっても、あるいは高度な技術を備えたものであってもよい。画像キャプチャ装置105は、画像をキャプチャし、この画像をデジタル化して、画像データをコンピュータ102に送信することができる。一部の実施形態では、デジタル化を実行するための論理回路が、画像キャプチャ装置の内部に組み込まれていてもよく、別の実施形態では、画像キャプチャ装置105が、デジタル化のために、アナログビデオ信号をコンピュータ102に送信してもよい。いずれの場合も、画像キャプチャ装置105は、画像キャプチャ装置105の前方にある任意のオブジェクトの、カラー画像または白黒画像をキャプチャすることができる。
【0017】
図2は、画像キャプチャ装置105の前方にあるオブジェクトの照準方向を確認するために、画像キャプチャ装置105によって提供される画像データを処理するための例示的なコンピュータ102を示している。図に示すように、コンピュータ102は、画像キャプチャ装置105に接続されうる。画像キャプチャ装置105は、キャプチャ領域105aに焦点を合わせるように設計されうる。この例では、人物112が、コンピュータ102によって実行中のコンピュータプログラムとインタラクト(対話処理)しようとしている。この例では、コンピュータプログラムは、ディスプレイ画面110によって表現され表示されるビデオゲームであってもよい。
【0018】
図示した例では、ビデオゲームは、標的シューティングゲームであり、人物112は標的を狙い、その人物の能力に相当する点数を稼ごうとしている。ディスプレイ画面110に示されるように、ゲームのプレイ中に、人物112の画像112’が、ディスプレイ画面110にも表示されうる。別の実施形態では、制御されている特定の装置やプレイ中のゲームによっては、ディスプレイ画面に人物の画像112’が表示されないこともある。この例では、ゲームプレイ中に、現実により近づけるために、標的を撃つ間に人物112の画像112’を表示することによって、ユーザの体験を改善することができる。この標的シューティングゲームの特徴は、人物112が、オブジェクト124をディスプレイ画面110上の特定のインタラクティブなグラフィックのほうに向けるかポイントすることができることにある。
【0019】
人物112は、オブジェクト124(この場合の例では銃である)の照準方向を正確に定めるために、オブジェクト124を手122で保持している。手122は、ディスプレイ画面110の方向に向けられる。画像キャプチャ装置105は、この時点で、人物112のデジタル画像のキャプチャを分析して、人物の112の頭部120の位置と、人物の112の手122の位置を決定する。図に示すように、人物112の手は体の前で伸ばされており、画像キャプチャ装置は、キャプチャされたデジタル画像を解析してオブジェクト124を特定する。キャプチャされたデジタル画像は、コンピュータ102で実行されているコードによっても解析され、人物の112の頭部120の位置が確認される。一実施形態では、頭部のトラッキングは、顔検出コードと併用したテンプレートマッチングの組合せによって完了させる(速度性能のため)こともできる。顔検出コードは、本質的には、ユーザの目やその他の顔の特徴の位置を特定することによって、ユーザの顔の位置を特定する。頭部および顔の検出に関する更に詳しい情報については、2003年9月15日出願の同時係属中の米国特許出願第10/663,236号明細書「トラッキングされた頭部の移動によって表示中のシーンのビューを調整するための方法および装置(METHOD AND APPARATUS FOR ADJUSTING VIEW OF A SCENE BEING DISPLAYED ACCORDING TO TRACKED HEAD MOTION)」を参照されたい。同文献の内容を参照によりここに援用する。
【0020】
一実施形態では、オブジェクト124は、キャプチャされたデジタル画像を分析するプログラムが、オブジェクト124の位置を容易に特定できるように、オブジェクトに結び付けられた色または光などの識別体(発光ダイオード(LED)等)を有する。コンピュータプログラムが、人物の頭部120(H)の位置と、人物の手122(h)の位置を特定すると、コンピュータプログラムは、計算を実行して、画像キャプチャ装置の位置からみた、検出されたオブジェクト124と頭部120の間の相対角度を決定する。
【0021】
図2に示すように、オブジェクト124と頭部120の相対位置は、画像キャプチャ装置105に対して計算される。これにより、2つの角度パラメータ(シータθとファイΦ)が得られる。方位角θは、X軸上の、頭部120とオブジェクト124間の水平の位置関係を定義している。角度φから、頭部120の高さと手122の高さの間の相対角度である高度角が得られる。一実施形態では、ディスプレイ画面110上のオブジェクトの照準位置の較正がゲームの操作により開始される前に、初期の較正操作を実行することができる。例えば、ユーザに、ディスプレイ画面110の特定の位置にオブジェクト124を向けさせることによって、ユーザに対して、照準アルゴリズムの較正を促すことができる。較正が完了すると、画像キャプチャ装置105によってキャプチャされている連続する各フレームについて、コンピュータ102が、人物の頭部120と人物の手122の相対位置を定義する方位角と高度角(θとΦ)を計算可能となる。頭部と手の相対位置の決定は、要求される照準操作の精度に応じて、キャプチャした各フレームごとに計算されても、一フレームおきにキャプチャされても、あるいは、多くのフレームをキャプチャした後に計算されてもよい。例えば、ゲームが射撃場ゲームの場合には、人物112がビデオゲームの競争で高いスコアを確実に稼ごうとしている場合に、正確に照準を定めて引金を引けるように、頭部120と手122の相対位置をフレームごとに計算することが重要となりうる。
【0022】
図3は、本発明の実施形態を実装するために使用できる、グラフィックディスプレイ上のオブジェクトのインタラクト処理を行うための例示的なユーザ入力システムのブロック図である。図3に示すように、ユーザ入力システムは、ビデオキャプチャ装置300、入力画像プロセッサ302、出力画像プロセッサ304、およびビデオ表示装置306から構成されうる。ビデオキャプチャ装置300は、ビデオ画像のシーケンスをキャプチャすることができる装置であればどのようなものでもよく、一実施形態では、デジタルビデオカメラ(ウェブカメラなど)や同様の画像キャプチャ装置などである。
【0023】
ビデオキャプチャ装置300は、深度画像を提供するように構成されうる。本明細書では、「深度カメラ」および「三次元カメラ」との文言は、二次元のピクセル情報のほか、距離情報すなわち深度情報を取得することができる任意のカメラを指す。例えば、深度カメラは、制御された赤外線照明を利用して、距離情報を取得することができる。他の例示的な深度カメラに、立体カメラ対があり、これは2台の基準カメラを使用して距離情報を三角測量によって求める。同様に、「深度検知装置」との文言は、二次元のピクセル情報のほかに、距離情報を取得することができる任意のタイプの装置を指す。
【0024】
このため、カメラ300は、通常の二次元のビデオ像に加えて、3番目の次元をキャプチャおよびマップする能力を提供することができる。通常のカメラと同様に、深度カメラは、ビデオ画像を構成している複数のピクセルの二次元のデータをキャプチャする。これらの値は、ピクセルの色の値であり、通常は、各ピクセルの赤、緑、青(RGB)の値である。このようにして、カメラによってキャプチャされたオブジェクトが、モニタに二次元オブジェクトとして表示される。しかし、従来のカメラとは異なり、深度カメラは、シーンの深度値を表すシーンのz成分もキャプチャする。通常、深度値はz軸に割り当てられるため、深度値は、「z値」と呼ばれることも多い。
【0025】
動作時に、シーンの各ピクセルについてz値がキャプチャされうる。各z値は、カメラから、シーン内の関連するピクセルに対応するオブジェクトまでの距離を表している。また、最大検出範囲が、深度値が検出されなくなる境界を定義しうる。本発明の各種実施形態では、この最大範囲の面を使用して、ユーザ定義のオブジェクトのトラッキングを提供することができる。このため、深度カメラを使用することで、それぞれのオブジェクトを三次元でトラッキングすることができる。この結果、本発明の実施形態のコンピュータシステムは、二次元のピクセルデータと合わせてz値を利用して、強化された三次元のインタラクティブ環境をユーザのために作成することができる。深度分析の詳細については、2003年5月29日出願の米国特許出願第10/448,614号明細書「リアルタイムの三次元インタラクティブ環境を提供するためのシステムおよび方法(System and Method for Providing a Real-time three dimensional interactive environment)」を参照されたい。同文献を参照によりここに援用する。
【0026】
図3に戻ると、入力画像プロセッサ302は、キャプチャされた制御オブジェクトのビデオ画像(深度画像など)を信号に変換し、この信号が出力画像プロセッサに送られる。一実施形態では、入力画像プロセッサ302は、キャプチャされたビデオ画像の背景から、深度情報によって制御オブジェクトを分離し、制御オブジェクトの位置および/または移動に応じた出力信号を発生させるようにプログラムされうる。出力画像プロセッサ304は、入力画像プロセッサ302から受け取った信号に応じて、ビデオ表示装置306に表示したオブジェクトの並進移動および/または回転移動を変更するようにプログラムされうる。
【0027】
本発明のこれらの態様やその他の態様は、ソフトウェア命令を実行する1つ以上のプロセッサによって実装されうる。本発明の一実施形態によれば、1つのプロセッサが入力画像処理と出力画像処理の両方を実行する。しかし、図に示すように、説明を容易にするために、処理操作が、入力画像プロセッサ302と出力画像プロセッサ304に分けられるものとして説明する。本発明が、特定のプロセッサの構成(複数プロセッサなど)に限定されると解釈すべきではないことを留意すべきである。図3の複数の処理ブロックは、説明の便宜上、示したに過ぎない。
【0028】
図4は、本明細書に記載した本発明の各種実施形態を実装するように構成されたコンピュータ処理システムの簡略ブロック図である。この処理システムは、メインメモリ420とグラフィック処理ユニット(GPU)426に結合された中央処理装置(CPU)424を備えた、コンピュータベースのエンターテイメントシステムの実施形態であってもよい。CPU424は、入出力プロセッサ(Input/Output Processor:IOP)バス428にも結合されうる。一実施形態では、GPU426は、ピクセルベースのグラフィックデータを高速に処理するために内部バッファを備える。更に、GPU426は、エンターテイメントシステムまたはその構成要素の外部に接続された表示装置427に送信するために、画像データを処理して、例えばNTSCやPALなどの標準のテレビジョン信号に変換する出力処理部またはその機能を備えうる。別の実施形態では、データ出力信号が、コンピュータモニタ、LCD(液晶ディスプレイ)装置やその他のタイプの表示装置などのテレビジョンモニタ以外の表示装置に供給されてもよい。
【0029】
IOPバス428は、CPU424を、各種の入出力装置、または他のバスやデバイスに接続している。IOPバス428は、入出力プロセッサメモリ430、コントローラ432、メモリカード434、ユニバーサルシリアルバス(USB)ポート436、IEEE1394(Firewireインタフェースとも呼ばれる)ポート438、およびバス450に接続されうる。バス450は、システムの他のいくつかの構成要素をCPU424に接続しており、このような構成要素には、オペレーティングシステム(OS)ROM440、フラッシュメモリ442、音声処理ユニット(SPU)444、光ディスク制御4、ハードディスクドライブ(HDD)448がある。この実施形態の一態様では、ビデオキャプチャ装置は、IOPバス428に直結されていてもよく、これを介してCPU424に送信を行っており、CPU424では、ビデオキャプチャ装置からのデータを使用して、GPU426でグラフィック画像の生成に使用される値が変更または更新される。更に、本発明の各種実施形態は、画像処理のさまざまな構成および技術を使用することができ、これには、2003年2月11日出願の米国特許出願第10/365,120号明細書「リアルタイムのモーションキャプチャのための方法および装置(METHOD AND APPARATUS FOR REAL TIME MOTION CAPTURE)」に記載されたものなどがある。同文献を参照によりその全体をここに援用する。コンピュータ処理システムは、CELL(登録商標)プロセッサで実行されうる。
【0030】
図5は、本発明の一実施形態に係る代替入力装置として機能する操作用オブジェクトとの併用に適合されたビデオゲームコンソールの各種構成要素の構成を示すブロック図である。例示的なゲームコンソール510は、コンソール510全体を制御するためのマルチプロセッサユニット(MPU)512、プログラムの各種操作およびデータ記憶に使用されうるメインメモリ514、幾何学処理に必要な浮動小数点のベクトル演算を実行するベクトル演算ユニット516、MPU512からの制御に基づいてデータを生成すると共に、ビデオ信号をモニタ110(CRTなど)に出力する画像プロセッサ520、MPU512またはベクトル演算ユニット516と画像プロセッサ520との間の伝送バス上で調停等を実行するグラフィックインタフェース(GIF)522、周辺機器との間でデータを送受信できるようにする入出力ポート524、カーネル等の制御を実行するための、フラッシュメモリ等で構成された内部OSD機能ROM(OSDROM)526、ならびにカレンダ機能およびタイマ機能を備えたリアルタイムクロック528を備える。
【0031】
メインメモリ514、ベクトル演算ユニット516、GIF522、OSDROM526、リアルタイムクロック(RTC)528および入出力ポート524は、データバス530を介してMPU512に接続されている。バス530には、圧縮済みの動画およびテクスチャ画像を伸張して、これにより画像データを展開するプロセッサなどである画像処理ユニット538も接続されている。例えば、画像処理ユニット538は、MPEG2またはMPEG4の標準フォーマットに従って、ビットストリームをデコードおよび展開したり、マイクロブロックをデコードしたり、逆離散コサイン変換、色空間変換、ベクトル量子化などを実行する機能を担う。
【0032】
音声システムは、MPU512からの命令に基づいて音楽やその他の音響効果を生成する音声処理ユニット(SPU)571、SPU571が波形データを記録するための音声バッファ573、およびSPU571が生成した音楽やその他の音響効果を出力するスピーカ575で構成されうる。なお、スピーカ575はモニタ110の一部として組み込まれていても、あるいは、外部スピーカ575を取り付けるための別個のオーディオライン出力端子として提供されてもよい。
【0033】
バス530に接続されており、本発明に従ってデジタルデータの入出力を行うと共にデジタルコンテンツを入力する機能を備えたインタフェースである通信インタフェース540も提供されうる。例えば、オンラインビデオゲームアプリケーションを実現するために、この通信インタフェース540を介して、ネットワーク上のサーバ端末との間でユーザ入力データを送信したり、状態データを受信することができる。コンソール510に対してデータ(キー入力データまたは座標データなど)を入力する入力装置532(コントローラとも呼ばれる)と、各種プログラムおよびデータ(すなわちオブジェクトに関するデータ、テクスチャデータなど)を有するCD―ROMなどの光学ディスクの内容を再生するディスク装置536とが入出力ポート524に接続されている。
【0034】
更に、本発明は、デジタルビデオカメラ105を備え、これは入出力ポート524に接続できる。入出力ポート524は、シリアルインタフェースやUSBインタフェースなどの1つ以上の入力インタフェースによって実装され得、デジタルビデオカメラ190は、USB入力や、カメラ105との併用に適したその他の任意の従来のインタフェースを有利に利用し得る。
【0035】
上記の画像プロセッサ520は、レンダリングエンジン570、インタフェース572、画像メモリ574、およびディスプレイ制御装置576(プログラム可能なCRTコントローラなど)を備える。レンダリングエンジン570は、メモリインタフェース572を介して、かつMPU512から送られるレンダリング命令によって、所定の画像データを画像メモリにレンダリングする処理を実行する。レンダリングエンジン570は、NTSC方式またはPAL方式に準拠し、より詳細には、例えば、1/60秒〜1/30秒の間隔で10〜数十回を越えるレートで、320×240ピクセルまたは640×480ピクセルの画像データをリアルタイムに描画できる機能を備える。
【0036】
メモリインタフェース572とレンダリングエンジン570との間にバス578が接続され、メモリインタフェース572と画像メモリ574との間に第2バス580が接続され得る。第1バス578と第2バス580のビット幅は、例えばそれぞれ128ビットであり、レンダリングエンジン570は、画像メモリに対して高速レンダリング処理を実行することができる。画像メモリ574は、一元化された記憶構造を採用しており、この構造では、例えば、テクスチャレンダリング領域と表示レンダリング領域とを同じ領域に設定することができる。
【0037】
ディスプレイコントローラ576は、光ディスク装置536によって光ディスク569から取得したテクスチャデータ、またはメインメモリ514に作成されたテクスチャデータを、メモリインタフェース572を介して画像メモリ574のテクスチャレンダリング領域に書き込むように構成されうる。画像メモリ174の表示レンダリング領域にレンダリングされた画像データは、メモリインタフェース572を介して読み出されて、モニタ110に出力され、その画面に表示されうる。
【0038】
図6は、本発明の一実施形態による、ユーザによるユーザ入力装置の操作中に、ユーザ入力装置に対応するピクセル群をトラッキングして判別するための機能ブロックを示すブロック図である。ブロックが表している諸機能は、図5のゲームコンソール510のMPU512によって実行されうるソフトウェアによって実装される点を理解されたい。更に、図6のブロックが表している機能の全てが、各実施形態で使用されるとは限らない。
【0039】
最初に、カメラから入力されたピクセルデータが、入出力ポートインタフェース524を介してゲームコンソール510に送られ、これにより、以下に記載するプロセスがゲームコンソール510で実行されうる。まず、画像の各ピクセルが、例えばラスタベースでサンプリングされると、色分離処理ステップS201が実行されうる。これにより、各ピクセルの色が決定されて、画像が、色の異なるさまざまな二次元部分に分割される。次に、実施形態によっては、色遷移定位ステップS203が実行されうる。これにより、色の異なる部分が隣接している領域がより詳細に決定されて、はっきりした色の遷移が発生する画像の位置が特定される。次に、幾何学処理S205のステップが実行されうる。このステップでは、実施形態に応じて、エッジ検出プロセスまたは面積の統計値(area statistics)の計算の実行が行われて、対象のオブジェクトのエッジに相当する線、曲線および/または多角形が代数的または幾何学的に定義される。
【0040】
ステップS207で、アルゴリズムを用いてオブジェクトの三次元の位置および姿勢が計算される。このアルゴリズムについては、本発明の好ましい実施形態に関して後述する。質の向上のため、三次元の位置および姿勢のデータに対して、カルマンフィルタリング処理ステップS209が実行される。この処理を実行するのは、所定の時点においてオブジェクトが存在する位置を概算して、起こり得ず、このため正しいデータ群から外れていると考えられる、誤った測定値を除去するためである。カルマンフィルタリングを実行するもう1つの理由は、カメラ105は画像を30Hzで生成するが、一般的なディスプレイは60Hzで動作するため、カルマンフィルタリングによって、ゲームプログラムの動作の制御に使用するデータの不足分を埋めるためである。カルマンフィルタリングによる離散データのスムージングは、コンピュータビジョンの分野では公知であり、ここで詳述しない。
【0041】
図7は、変形可能なユーザ変形可能オブジェクト710の例示的な実施形態の模式図である。このオブジェクトは、ユーザが変形可能な装置に加える力に応じて、弛緩状態710Aか扁平状態710Bをとることができる。このように、変形可能なオブジェクト710は、圧潰可能なボールの形状を有する。更に一般には、どのような種類の変形可能なオブジェクトでも、本明細書に記載した視覚トラッキングシステムによってトラックキングすることができる。この実施形態では、ビデオデジタルカメラ105によって観察される変形可能なオブジェクト710の面積は一定である点を理解されたい。このため、デジタルビデオカメラ190は、変形可能な装置310のX平面およびY平面での移動に加えて、Z方向の移動をキャプチャすることができる。Z方向によって、モニタ110に示すように、ファイル304Bなどのファイルの前後への移動、すなわち奥行き方向への移動が可能となる。更に、変形可能なオブジェクト710をZ軸方向に移動させる方向に応じて、変形可能なオブジェクト710によってグラブした表示中のオブジェクトを大きく表示させたり小さく表示させたりできる。例えば、一実施形態では、変形可能なオブジェクト710をカメラ105に近づけると、表示中のオブジェクトが大きく表示され、変形可能なオブジェクト710をカメラ105から離すと、表示中のオブジェクトがモニタ110に小さく表示される。当業者であれば、表示中のオブジェクトは、X方向、Y方向およびZ方向の移動の組み合わせによって、そのサイズと位置が変化し得ることが理解されるであろう。この場合、三次元空間での移動を決定するために角度シータ(θ)を用いることができる。θがカメラ190のビュー平面の方向の角度であることを当業者は理解されよう。
【0042】
図7に戻ると、カメラは変形可能なオブジェクト710の位置をキャプチャする。この位置情報はゲームコンソール510に伝達されうる。図1〜3を参照して上記のように、この位置情報はゲームコンソール510によって処理されうる。変形可能な装置のアスペクト比または相対位置が変化すると、処理によって、この移動が、モニタ110に表示中のオブジェクトの移動に変換される。なお、本発明の一実施形態では、変形可能な装置のアスペクト比が変化したときに、音声信号が生成され得る。更に、受動的なボタン押下信号を、変形可能な装置に備えてもよい。したがって、このクリック音がコンピューティングシステムによって検知されなくても、ユーザはクリックを体感できるようになる。
【0043】
一実施形態では、画像内のピクセルの分析によって、x、y、z、θ、および握りパラメータ(grip parameter)を求める。なお、画像内のピクセルは、トラッキングされているオブジェクト、すなわち変形可能な装置の一部である。詳細に説明すると、Xは、画像内のピクセルの水平重心(horizontal centroid)に比例する。Yは、画像内のピクセルの垂直重心(vertical centroid)に比例する。Zは、ピクセルの面積または主二次モーメント(principle second moment)のいずれか(精度/堅固性の挙動が変わってくる)の平方根に反比例する。シータ(θ)は、主二次モーメントの回転角に対応する。握り量(すなわち変形量またはアスペクト比の変化量)などの握りパラメータは、主二次モーメントの平方根を最小二次モーメントの平方根で割った値に比例する。上記の各パラメータは、画像を通る1本の経路から算出することができる。このため、本明細書に記載した実装は非常に高速であり、一般に使用されている他の測定法よりもノイズ(すなわち視覚的誤差)の影響を受けにくい。
【0044】
図8は、ユーザ805が変形可能なオブジェクト710を操作している例示的なアプリケーションを示す。変形可能なオブジェクト710は、ユーザ805の手815に握られうる。コンソール510のカメラ105が、オブジェクト710が変形していることを識別する。手のグラフィカルな表現815’が、仮想のチェッカーボード820でチェッカー817を拾い上げる。その後、変形可能なオブジェクト710の移動が、手のグラフィカルな表現815’の移動に変換されうる。ユーザ805は、チェッカー817を放すため手815を緩める。これにより、変形可能なオブジェクト710は元の形状に戻ることができる。
【0045】
図9は、バスケットボールの形をした、例示的な変形可能なオブジェクト900を示す。一実施形態では、変形可能なオブジェクト900は、変形を受けると明るくなる手段を備える。別の実施形態では、変形可能なオブジェクト900は、変形を受けると色が変わる材料から形成されてもよい。変色材料は公知であり、一般には、透光性の高分子マトリックスに埋め込まれた感圧蛍光色素を含む。一実施形態では、変形可能なオブジェクト710は、変色材料のシェルを有する透光性のスポンジゴム材料から形成されうる。
【0046】
図10は、外側層902の下に発光ダイオードの層(LED)904が存在する変形可能なオブジェクト900を示す。変形可能なオブジェクト900の内部にバッテリ906が設けられている。LED層904は、変形を受けると明るくなるLEDのブランケットを備えうる。一実施形態では、オブジェクトの変形が大きくなるにしたがって明るさが増す。別の実施形態では、変形の強さによって、明るい部分の色が変わる。一実施形態では、オブジェクトの変形を受けた部分しか明るくならない。別の実施形態では、変形を受けるとオブジェクトの全体が明るくなる。
【0047】
変形量が照光材料自体によって検知されてもよい。例えば、この材料は、材料が変形を受けると接触する複数の導電層から形成され、接触により回路が閉となる。一実施形態では、変形を受けている領域だけが明るくなる。別の実施形態では、変形量は別のひずみゲージ回路によって検知され、この回路は、変形可能なオブジェクト900の層904の上に配置されうる。この場合、オブジェクトが変形を受けると、オブジェクト全体が明るくなり、変形が大きくなるにしたがって、より明るくなるか、色が変わるか、この両方が起こる。
【0048】
図11は、フットボールの形1100をした、例示的な変形可能なオブジェクトを示す。フットボールの形状のために、変形を受けたオブジェクトを撮像してそのアスペクト比を測定することによって、変形の程度を決定する方法は信頼性が高いとはいえない。このため、アスペクト比を使用する代わりに、フットボール1100が、層1108に設けた回路を有する。層1108は、変形センサ1110と複数のイルミネータ1106を備える。イルミネータ1106は、発光ダイオードなどである。更に、フットボール1100は、バッテリコンパートメント1102と、フットボール1100のバランスをとるためのバランスウェイト1104を有する。イルミネータ1106は必要な電圧および電流が少ないため、例えば、バッテリコンパートメント1102はかなり小さくてもよく、例えば、単4またはAAAの乾電池で十分である。フットボール1100内の残りの部分には軟性スポンジゴムが充填されており、フットボール1100を握りやすくしている。
【0049】
フットボール1100が握られると、変形センサ1110が、フットボール1100の変形の程度を検出し、これに応じて、イルミネータ1106を使用して明るくなる。例えば、変形が大きくなると光が明るくなるか、あるいは、変形が大きくなると光の色が変わる。色の変化は、異なる色のLEDを発光させることによって行うことができる。例えば、変形量が小さいときは緑のLEDを発光させる。変形が大きくなると、黄色、赤、次、紫、青のLEDの順に発光される。このため、変形量の範囲を検出して、次に、これを、光の色を変えることによって表現することができる。
【0050】
カメラ105(図1)は、フットボール1100の色の変化を検出して、これに適宜反応しうる。例えば、画面110に描画されている仮想のプレーヤが、フットボール1100の変形量に合った強さで、仮想のフットボールを握りうる。
【0051】
図12は、変形可能なオブジェクト900が、ユーザ1202が使用しているバスケットボールの形である、変形可能なオブジェクト900の例示的な用途を示す。ユーザ1202はバスケットボールをドリブルしており、この動作がカメラ105によってキャプチャされて解釈されうる。仮想の選手1206の画像が画面110に表現されうる。仮想の選手1206の動作が、ユーザ1202の動作と同期されうる。変形可能なオブジェクト900がバウンドするたびに、ボールの変形した箇所が1204に示すように明るくなる(網掛けの部分は明るくなる部分を表している)。仮想のプレーヤ1206が仮想のボール900’をバウンドさせ、これも1208に示すように明るくなるか色が変わる。
【0052】
図13は、トリガ1302とトリガセンサ1304を有するおもちゃの銃を示す。トリガセンサ1304は、トリガ1302を握った強度を検出することができる。例えば、強度は、ひずみゲージや、ポテンショメータやスプリングなどのその他の公知の手段を使用して測定することができる。握りの強度が強くなると、イルミネータ1306は、個数が増えるか、明るさが上がるか、および/または色を変える。1つの可能な使用として、トリガ1302が強く握られた場合に、単発モードから反復または「機関銃」動作モードに変更することがある。
【0053】
図14は、おもちゃの野球のバット1400を示し、これは透光性の軟質プラスチックまたは透光性のスポンジゴムから形成されうる。野球のバット1400は、握りの部分に変形センサ1402と、バットの長さに沿って設けたイルミネータ1404を備える。ユーザがバット1400の握りを大きくすると、イルミネータ1404は、個数が増えるか、明るさが上がるか、および/または色を変える。
【0054】
図7を再び参照すると、コンソール510は、変形可能なオブジェクト710のアスペクト比の割合の変化を測定することによって、変形の程度を検知することもできる。しかし、図11,13,14を参照して説明したように、変形可能なオブジェクト710が色、明るさなどを変える場合には、コンソール510は、変形の程度に対する強度値を決定するために、このような変化を部分的に利用するか、あるいは完全に利用してもよい。感圧材料または埋め込み回路を用いれば、変形可能なオブジェクトの形状に制約がなくなる。これにより、マンマシンインタラクティブ機能の新しい可能性が開ける。例えば、野球シミュレーションにおいて、野球のバットを握る強さを、スイングの強さを示す指標として使用することができる。新たに登場した感情コンピューティングの分野では、コンピュータは、ユーザの気分を特定するために、姿勢や表情等のさまざまなテクニックを使用している。同様にして、本技術によって、ゲームの開発者が、ユーザが示す強度値に基づいてゲームのプレイを変えることが可能となる。例えば、恐れ、怒りまたは興奮などの感情を表すことがある強度値を、おもちゃの銃が握られている強さによって検知することができ、これを使用して、コンピュータが作り出すキャラクタの反応を変えることができる。
【0055】
別の実施形態では、インタラクションの強度が、撮像に加えて、その代わりに、音声によって受け付けられてもよい。この実施形態では、カメラ105の代わりに、図15に例として示す、画像キャプチャユニット1506bと音声キャプチャユニット1506aを有するモニタ1506が提供されうる。音源は、入力オブジェクトや装置が発生させるノイズや、拍手または足踏みやその他の任意のノイズなどである。次に、この音が、音声キャプチャユニット1506aによってキャプチャされ、インタラクションのためにコンピューティングシステム102(図1)によって処理される。音声コマンドの識別を可能にするために、音声認識が使用されうる。更に、ユーザが、インターネットまたはネットワークに接続しているが、ゲームのインタラクティビティに直接的または部分的に関わってもいるリモートユーザと通信していてもよい。
【0056】
本発明の一実施形態によれば、音声キャプチャユニット1506aは、コンピューティングシステム102が特定の方向から来る音を選択できるようにする少なくとも2つのマイクロフォンを備えるように構成されうる。コンピューティングシステム102が、ゲームのインタラクティビティの中心から外れる方向をフィルタ除去できるようにすることで、環境内の気を散らせるような音が、入力オブジェクト、装置または他の手段によって生成される音の強度値を決定しているインタラクティブプログラムの実行を妨げたり混乱させることはない。同様に、音声キャプチャユニットは、強度値を確実に特定するために、標的焦点ゾーンから音を分離することができる。後述するように、焦点ゾーンは、画像キャプチャユニット1506bの焦点であるアクティブな画像領域によって識別されうる。他の方法では、焦点ゾーンは、初期化段階の後で、ユーザに提示されたゾーンの選択肢の中から、手動で選択されてもよい。
【0057】
画像−音声キャプチャ装置1506は、画像キャプチャユニット1506bと音声キャプチャユニット1506aを備える。画像−音声キャプチャ装置1506は、画像フレームをデジタル形式でキャプチャして、次にこれらの画像フレームを、その後の処理のためにコンピューティングシステム102(図1)に転送することができる。画像キャプチャユニット1506bの例にウェブカメラがあり、これは、ビデオ画像を、キャプチャして、その後記憶したり、インターネットなどのネットワークを介して通信できるように、デジタル形式でコンピューティング装置に転送することが望ましいときに一般に使用される。その他のタイプの画像キャプチャ装置も、識別とフィルタリングが可能なように画像データがデジタル形式で処理されるものであれば、アナログ、デジタルを問わず考察される。好ましい一実施形態では、入力データを受け取ったのち、フィルタリングを可能にするデジタル処理がソフトウェアで行われうる。音声キャプチャユニット1506aは、一対のマイクロフォン(MIC1およびMIC2)を備えて示されている。マイクロフォンは標準的なマイクロフォンであり、これは画像−音声キャプチャ装置1506を構成しているハウジングに一体化することができる。
【0058】
図16は、音Aからの音源1616と音Bからの音源1616に向かい合った状態の音声キャプチャユニット1506aを示す。図に示すように、音Aがその可聴音を発して、音経路1601aおよび1601bに沿ってMIC1およびMIC2によって検出される。音Bが、音経路1602aおよび1602bを通ってMIC1およびMIC2の方に投射される。図に示すように、音Aの音経路の長さは異なり、したがって、音経路1602aおよび1602bに対して相対的な遅延が生じる。次に、図17に示すボックス1716で方向選択が行われるように、音Aおよび音Bのそれぞれから来る音が、標準の三角測量アルゴリズムを使用して処理されうる。MIC1およびMIC2から来る音は、それぞれバッファ1およびバッファ2(1710a、1710b)にバッファされて、遅延ライン(1712a、1712b)を通る。一実施形態では、バッファリングおよび遅延処理はソフトウェアによって制御されるが、ハードウェアが同様に演算を扱うようにカスタム設計されてもよい。三角測量に基づいて、方向選択1716によって、音源1616のうちの1つの識別および選択が行われる。
【0059】
MIC1およびMIC2のそれぞれから来る音は、ボックス1714で合算されてから、選択した発生源の出力として出力される。このように、このような音源がコンピュータシステム102(図1)による処理を攪乱させたり、または、ネットワークまたはインターネットを介してビデオゲームをインタラクティブにプレイしている他のユーザとの通信を攪乱させることのないように、アクティブな画像領域の方向以外の方向から来る音がフィルタ除去される。
【0060】
この技術を利用するビデオゲームやその他のアプリケーションは、音声キャプチャ装置に対して所定の方向または選択した方向にある焦点ゾーンから発生した音の強度値を確実に特定して、定量化することができる。強度値は、音のラウドネスまたは音量、音の速さおよび/または音のピッチと相関されうる。速さは、特定の時間区間に音が繰り返される回数である。ある場合は、音量、速さ、ピッチが大きいときに強度が高い。別の場合は、音量、速さ、ピッチが小さいときに強度が高く、これはアプリケーションに応じて変わる。いずれの場合も、部屋の中で発生する周囲音やその他の音から音を分離すれば、強度量を高い信頼性で決定できるようになる。
【0061】
図18は、本発明の一実施形態による、画像−音声キャプチャ装置1506と共に使用することができるコンピューティングシステム1850を示す。コンピューティングシステム1850は、プロセッサ1852とメモリ1856を備える。バス1854は、プロセッサとメモリ1856を、画像−音声キャプチャ装置1506と相互接続する。メモリ1856は、インタラクティブプログラム1858の少なくとも一部を格納しており、更に、受信した音源データを処理するための選択的音源聴取ロジックまたはコード1860も格納している。画像キャプチャユニット1506bによって識別される焦点ゾーンの場所に基づいて、焦点ゾーンの外の音源が、(例えば、プロセッサによって実行中であり、メモリ1856に少なくとも部分的に記憶されているなどの)選択的音源聴取ロジック1860によって選択的にフィルタリングされる。コンピューティングシステムは最も単純な形で示されているが、到来する音源の処理を行って、このため選択的聴取を可能にするために命令を処理することができるハードウェアであれば、どのようなハードウェア構成を使用してもよいという点を強調する。
【0062】
また、コンピューティングシステム1850は、バスを経由してディスプレイ110と相互接続されて示されている。この例では、焦点ゾーンは、音源Bの方に焦点を合わせている画像キャプチャユニットによって識別されうる。音Aなどの他の音源から来る音は、音声キャプチャユニット1506aによってキャプチャされて、コンピューティングシステム1850へ転送されると、選択的音源聴取ロジック1860によって実質的にフィルタ除去される。
【0063】
1つの具体例では、プレーヤは、他のユーザとのインターネットまたはネットワーク対応ビデオゲームの試合に参加しており、この場合、各ユーザの聴取可能な体験の主なものがスピーカから出される音でありうる。スピーカは、コンピューティングシステムの一部であっても、モニタ1506の一部であってもよい。ここで、図4に示すように、ローカルスピーカが音源Aを生成していると仮定する。音源Aについてローカルスピーカから来る音を、試合に参加しているユーザにフィードバックしないために、選択的音源聴取ロジック1860は、試合に参加しているユーザが自分自身の音または音声のフィードバックを受けないように、音源Aの音をフィルタ除去する。このフィルタリングを提供することによって、ビデオゲームと相互作用している間にネットワーク上でインタラクティブな通信を行う一方で、処理中の妨害となるフィードバックを有利に回避することが可能となる。
【0064】
図19は、少なくとも4つのマイクロフォン(MIC1〜MIC4)を備える例示的なモニタ1506を示す。このため、音声キャプチャユニット1506aは、音源1616(AおよびB)の位置を特定するために、より良好な粒度で三角測量ができる。すなわち、追加のマイクロフォンを提供することによって、音源の位置をより正確に定義し、このため、対象外であるかまたはゲームのプレイまたはコンピューティングシステムとのインタラクティビティに害を及ぼしかねない音源を除去してフィルタ除去することが可能である。図18に示すように、音源1616(B)は、ビデオキャプチャユニット106bによって識別された対象の音源でありうる。図18の例の説明を続けると、図19は音源Bが空間体積に識別される方法を識別している。
【0065】
音源Bが位置する空間体積は、焦点体積1974を定義する。焦点体積を識別することによって、特定の体積内にないノイズ(すなわち、正しい方向にないもの)を除去またはフィルタ除去することが可能である。焦点体積1974の選択が容易となるように、画像−音声キャプチャ装置のモニタ1506は、好ましくは少なくとも4つのマイクロフォンを備える。マイクロフォンのうちの少なくとも1つは、ほかの3つのマイクロフォンとは異なる平面にある。画像−音声キャプチャ装置のモニタ1506のマイクロフォンのうちの1つを平面1971に保ち、4つのうちの残りを平面1970に置くことによって、空間体積を定義することが可能である。
【0066】
したがって、周辺にいる他の人(1976aおよび1976bとして示される)から来るノイズは、体積焦点1974内に画定される空間体積内に存在していないため、フィルタ除去される。更に、スピーカ1976cで示すように、空間体積のすぐ外で生成されたノイズも、空間体積の外に存在しているためにフィルタ除去される。
【0067】
次に、フィルタリングアルゴリズムの例示的な実装を、図20〜22を参照して記載する。この実施形態は、ポータブルコンシューマデバイスに関連付けられた、マイクロフォンアレイによる音声入力システムを提供する。この音声入力システムは、複数のノイズ信号から目的音声信号を分離することができる。更に、マイクロフォンアレイが取り付けられているポータブルコンシューマデバイスに移動上の制限はない。本発明の一実施形態では、マイクロフォンアレイフレームワークは、4つの主要モジュールを有する。第1のモジュールは、音響エコー消去(acoustic echo cancellation:AEC)モジュールでありうる。AECモジュールは、ポータブルコンシューマデバイスが発生させるノイズをキャンセルするように構成されうる。例えば、ポータブルコンシューマデバイスがビデオゲームコントローラの場合、ビデオゲームのプレイに関連したノイズ、すなわち音楽、爆発音、声などは全て既知である。このため、マイクロフォンアレイの各マイクロフォンセンサから入って来る信号に適用するフィルタが、デバイスが発生させるこれらの既知のノイズを除去しうる。別の実施形態では、AECモジュールは、任意選択であり、後述するモジュールと一緒に含まれていなくてもよい。音響エコーキャンセルに関する更に詳しい説明はジョン・J・シャンク(John J. Shynk)、“Frequency-Domain and Multirate Adaptive Filtering”、IEEE Signal Processing Magazine、14〜37ページ、1992年1月に記載されている。同文献を、あらゆる目的のために参照により援用する。
【0068】
図20は、本発明の一実施形態による、聴音方向以外の信号を抑制するように構成されたアレイビーム形成モジュールを示す簡略模式図である。一実施形態では、このビーム形成は、フィルタアンドサムビーム形成に基づきうる。信号パスフィルタとも呼ばれる有限インパルス応答(finite impulse response:FIR)フィルタが、適応可能であるアレイ較正処理によって生成されうる。このため、ビーム形成は、基本的に、センサアレイを物理的に移動させることなく、ビーム(すなわち聴取方向)をトラッキングして、ビームをソース信号2028に向けさせるビームフォーマでありうる。焦点方向(focal direction)からの信号を増強させる方法を指すビーム形成は、マイクロフォンセンサ2012−1〜2012−Mを、(物理的にではなく)アルゴリズムによって所望の目的信号に向けさせる処理とも考えられることは、当業者に明らかであろう。センサ112−1〜112−Mが対象とする方向は、ビーム形成方向または聴取方向と呼ばれることがあり、実行時に固定されていても、適応可能であってもよい。
【0069】
ビーム形成の背後にある基本的な概念は、所望の音源から出る音声信号が複数のマイクロフォンセンサのアレイに到達するまでの時間遅延が異なることにある。アレイの形状の配置は予め較正されているため、音源とセンサアレイ間の経路長の差は、既知のパラメータである。このため、相互相関と呼ばれる方法を使用して、異なるセンサからの信号を時間整合することができる。各センサからの、時間により整合させた信号を、ビーム形成方向に従って重み付けする。次に、重み付けした信号を、センサ固有のノイズ消去構成によってフィルタしうる(すなわち、各センサが、信号パスフィルタ2062に含まれるフィルタである整合フィルタF1〜FM2042−1〜2042−Mに関連付けられている)。各センサからのフィルタされた信号をモジュール2072によって合算して、出力Z(ω,θ)を生成する。上記の方法は、自己相関と呼ばれることがあるという点を理解すべきである。更に、信号がビーム形成方向に存在しないとき、これらの信号は時間軸に沿って整合されていない状態に留まるため、このような信号は、平均化によって減衰される。アレイベースのキャプチャシステムに一般的なように、所望の空間方向(直線形状の配置を使用する)または空間体積(凸形状のアレイ配置を使用する)から音をキャプチャするマイクロフォンアレイの全体的な性能は、音源の位置を特定して、これを追跡できる能力によって決まる。しかし、ビデオゲーム環境などの、複雑な残響ノイズが存在する環境では、環境固有のパラメータのインテグレーション、つまり統合を行わずに一般の音位置追跡システムを構築することは、ほぼ不可能である。
【0070】
図20を続けて参照すると、別の実施形態では、適応ビーム形成は、2部構成の処理として説明することもできる。第1の処理では、ブロードサイドノイズがファーフィールドに存在すると仮定する。すなわち、音源2028からマイクロフォンの中心2012−1〜2012−Mまでの距離は、初期には音源2028が各マイクロフォンセンサに対して垂直の位置に存在するとみなすことができる程に十分に大きいとする。例えば、マイクロフォンセンサ2012−mについては、音源が線2036に沿って存在しているとする。このため、ブロードサイドノイズが、ここでF1と呼ぶフィルタを適用することで増強されうる。次に、定期的に較正される信号パスフィルタが、マイクロフォンセンサアレイを移動に適応可能にするF2と呼ばれる因子を決定するように構成されうる。F2の決定については、アダプティブアレイ較正モジュールに関して後述する。一実施形態では、信号パスフィルタは100ミリ秒毎に較正されうる。このため、100ミリ秒毎に、信号パスフィルタが固定ビーム形成に適用されうる。一実施形態では、整合フィルタ2042−1〜2042−Mが各マイクロフォンのステアリング因子(F2)を供給し、これにより、線2038−1〜2038−Mに示すように聴取方向が調整される。図20に示すθの入射角で、センサに向かって伝搬するサイン波ファーフィールド平面波を考慮すると、この波が2つの隣接するセンサ間の距離dを進む際の時間遅延は、dmcosθによって与えられる。固定ビーム形成に関する更に詳しい説明は、バリー・D・ヴァンフェーン(Barry D. Van Veen)およびケビン・M・バックリー(M. Buckley)、“Beamforming: A Versatile Approach to Spatial Filtering”、IEEE ASSP MAGAZINE、1988年4月の文献に記載されている。同文献を、あらゆる目的のために参照により援用する。
【0071】
図21は、音声信号のノイズ成分とソース信号成分とを分離するためのブラインド音源分離法を示す高レベル模式図である。音声信号中のソース信号およびノイズに関しては明示的な情報が得られないことがあるという点を理解すべきである。しかし、ソース信号とノイズの特徴が異なっていることはわかっている。例えば、第1の話者の音声信号と第2の話者の音声信号は、2人の話者の声が異なり、ノイズの種類が異なるため区別できる。このため、入って来る音声信号(ノイズとソース信号を含む)を表すデータ2150は、データマイニング操作により、ノイズ成分2152とソース信号2154に分離されうる。次に、分離フィルタ2160によって、ソース信号2150がノイズ信号2152から分離される。
【0072】
本発明の一実施形態により、データマイニングを実行する1つの方法として、データを解析して、二次統計(second ordar statistic)によって独立成分を見つける独立成分分析(independent component analysis:ICA)による方法がある点を当業者は理解するであろう。このため、さまざまな音を区別する音指紋をキャプチャするために、二次統計を計算して、データの特徴を記述または定義しうる。次に、ソース信号をノイズ信号から分離するために、分離フィルタが有効化されうる。音指紋の計算は定期的に実行されうるという点を理解すべきである。このため、ブラインドソース分離を使用するこのアダプティブアレイ較正処理によって、聴取方向が各期間において調整されうる。ひとたび分離フィルタ2160によって信号が分離されると、トラッキングの問題を解決できることは、当業者にとって明らかである。すなわち、センサアレイの複数のマイクロフォンに基づいて、ソース信号2154のトラッキングに使用する時間到着遅延が決定されうる。上で言及した二次統計は、自動相関法または相互相関法と呼ばれることがあることを当業者は理解するであろう。二次統計を使用したブラインドソース分離に関する更に詳しい説明は、O.シェルビ(O. Shalvi)およびE.ウェインスタイン(E. Weinstein)、“System Identification Using Non-Stationary Signals”、IEEE Transactions on Signal Processing、第44巻、第8号、2055〜2063ページ、1996年8月の文献に記載されている。同文献を、あらゆる目的のために参照によりここに援用する。
【0073】
図22は、適応ノイズ消去を採用したマイクロフォンアレイフレームワークを示す模式図である。ノイズとソース信号を含む音声信号2266が、ビデオゲームコンソールやコンピューティング装置などのポータブルコンシューマデバイス102に取り付けられうるマイクロフォンセンサアレイによって受信されうる。次に、ポータブルコンシューマデバイス102によって受信された音声信号が、音響エコー消去(acoustic echo cancellation:AEC)モジュール168によって前処理されうる。ここで、音響エコー消去は、例えば、米国特許出願第10/650,409号明細書に記載されているように実行することができ、同文献を参照によりここに援用する。マイクロフォンアレイ内のマイクロフォンセンサの個数に対応している信号z1〜zMが生成され、チャネル2270−1〜2270−Mを介して分配される。チャネル2270−1は基準チャネルでありうるという点を理解すべきである。次に、対応する信号が、フィルタアンドサムモジュール2062に伝えられる。フィルタアンドサムモジュール2062が図20を参照して上記した適応ビーム形成を実行するという点を理解すべきである。同時に、チャネル2270−1〜2270−Mからの信号がブロッキングフィルタ2264に伝えられる。
【0074】
ブロッキングフィルタ2264は、目的信号がノイズとしてとらえられる場合に、逆ビーム形成を実行するように構成されうる。このため、ブロッキングフィルタ2264は、ソース信号を減衰させ、ノイズを増強する。すなわち、ブロッキングフィルタ2264は、較正係数F3を決定するように構成されてもよく、この係数は、適応ビーム成形処理で決定された較正係数F2の逆数と考えることができる。図21を参照して記載したアダプティブアレイ較正が、ここに記載した処理のバックグラウンドで行われていることを当業者は理解するであろう。フィルタアンドサムモジュール2062とブロッキングフィルタモジュール2264は、分離フィルタ2160を構成している。次に、ノイズ増強信号U2〜UMが、それぞれ対応する適応フィルタ2275−2〜2275−Mに送られる。適応フィルタ2275−2〜2275−Mは、適応フィルタモジュール2274に含まれる。ここで、適応フィルタ2275−2〜2275−Mは、モジュール2276での加算演算のために、対応する信号を整合させるように構成されている。当業者であれば、ノイズは定常ではないことがあり、このため、加算演算の前に信号を整合させる必要があることが理解できるであろう。
【0075】
図22を続けて参照すると、次に、加算演算モジュール2278によってノイズ低減信号を供給するために、モジュール2276による加算演算で得られた信号が、モジュール2272による加算演算からの信号出力と結合されうる。すなわち、所望のソース信号を増強するように、モジュール2272の増強信号出力が、モジュール2276からのノイズ増強信号と結合されうる。ブロック2280は適応ノイズ消去操作を表す点を理解すべきである。更に、一実施形態では、検出された信号対雑音比が0デシベルを超えている限り、バックグラウンドに存在するアレイ較正が100ミリ秒毎に行われうる。前述のように、アレイ較正により、フィルタアンドサムビームフォーマ2062で使用される信号パスフィルタと、信号対雑音比が−100デシベル未満の純粋な干渉(pure interference)を生成する信号ブロッキングフィルタ2264が更新されうる。
【0076】
一実施形態では、マイクロフォンセンサアレイの出力信号が後処理モジュールに送られ、ベイジアン統計モデリングによって、人物固有の音声スペクトルフィルタリングに基づいて処理され、音声品質が更に向上されうる。音声スペクトルフィルタリングに関する詳細な情報は、デイビッド・バーシュテイン(David Burshtein)、“Speech Enhancement Using a Mixture-Maximum Model”、IEEE Transactions on Speech and Audio Processing、第10巻、第6号、2002年9月の文献に記載されている。同文献を、あらゆる目的のために参照により援用する。ここで言及した信号処理アルゴリズムは周波数領域で実行されるという点を理解すべきである。更に、リアルタイムの信号応答を得るために、高速かつ高効率な高速フーリエ変換(Fast Fourier transform:FFT)が適用されうる。一実施形態では、実装されたソフトウェアは、各信号入力の塊(サンプリングレート16kHzにおいて512の信号サンプル)について、ウィンドウ長1024のFFT操作を25回必要とする。直線形状に等間隔で配置された4個のセンサを有するマイクロフォンアレイの代表的な例では、音響エコー消去およびベイジアンモデルをベースとした音声スペクトルフィルタリングを適用しない場合に、必要な全演算は約250メガの浮動小数点演算(250MFLOPS:mega floating point operations)となりうる。
【0077】
図22を続けて参照すると、分離フィルタ2160は、QR直交化手順によって、この範囲および零空間にある2つの直角成分に分解されうる。すなわち、零空間から信号ブロッキングフィルタ係数(F3)が得られ、順位空間(rank space)から信号パスフィルタ係数(F2)が得られうる。この処理は、一般化サイドローブキャンセラ(Generalized Sidelobe Canceler:GSC)手法として特徴づけられうる。GSC手法に関する更に詳しい説明は、前述の文献“Beamforming: A Versatile Approach to Spatial Filtering”に記載されており、同文献は参照により援用されている。
【0078】
上記に記載した実施形態は、高ノイズ環境において音声入力を提供するための方法および装置について記載している。この音声入力システムは、SONY PLAYSTATION2(登録商標)用のビデオゲームコントローラやその他の任意の適切なビデオゲームコントローラなどのビデオゲームコントローラに取り付けられうるマイクロフォンアレイを有する。マイクロフォンは、ビデオゲームコントローラの移動に一切の制限を課さないように構成されうる。マイクロフォンアレイのマイクロフォンセンサによって受信された信号には、フォアグラウンドの話者または音声信号、および部屋の残響を含む各種バックグラウンドノイズが含まれると仮定される。異なるセンサからのバックグラウンドおよびフォアグラウンドの時間遅延が異なることがあるため、周波数スペクトル領域におけるこれらの二次統計は互いに独立しており、このため、周波数成分に基づいて信号を分離することができる。次に、分離した信号周波数成分が再び結合されて、フォアグラウンドの所望の音声信号が再現される。ここに記載した実施形態は、ノイズ環境においてビデオゲーム用のコマンドを発行するか、または他のプレーヤと通信するためのリアルタイム音声入力システムを規定しているという点を更に理解すべきである。
【0079】
図23は、トリガ2300とトリガセンサ2301を有する例示的なおもちゃの銃2300を示す。更に、おもちゃの銃2300は、マーブル2302も有する。一実施形態では、マーブル2302は、中実の金属のボールベアリングを含む。ユーザが銃2300をはじく(flick)と、マーブル2302が、前方に位置2302’まで摺動して大きな「破裂」(crack)音を発生させ、これがモニタ1506によって感知されうる。別法では、あるいは上記に加えて、ユーザがトリガ2301を握ると、これがトリガセンサ2304によって検知されてもよい。おもちゃの銃2300は、銃の発射の音響効果をスピーカ2308から出す回路2306を有する。一実施形態では、トリガ2301の握りが強いほど、銃弾の効果が早くなるか、あるいは異なる効果が引き起こされる。コンピューティングシステム1850(図18)は、音を区別することができ、マーブル2002が発生させた「破裂」音を受けると「再装填」動作を、トリガ2301が握られていると、仮想環境で発射動作を起こすことができる。別の実施形態では、トリガが強く握られると、発生する音のピッチ(周波数)が高くなったりピッチが変わったりする。ピッチが高くなるほど強度が大きくなることが、モニタ1506によって取得されうる。
【0080】
図20にはおもちゃの銃が示されているが、プラッシュ織の人形、ボールなどの他の入力装置、道具またはおもちゃを想到でき、音声キャプチャ1506aと共に使用することができることを当業者は認めるであろう。ここに記載した例示的な実施形態は、音量、周波数、または速さの変化がコンピュータシステムによってどのように解釈されて、インタフェース用のオブジェクトとのインタラクションを示す強度値が特定されるかを示している。1つの例では、おもちゃの人形は、抱かれるか握られるかで、生成される音が変わり、これが音声キャプチャユニットによってキャプチャされて、異なる反応をしうる。
【0081】
図24は、フローチャート図2400を示す。この手順は開始ブロック2402に示すように開始し、操作2404に進み、ビデオおよび/または音声キャプチャ機能を備えたキャプチャ装置を使用して、キャプチャ領域がモニタされうる。手順は操作2406に進み、キャプチャ領域内で入力装置が検出されうる。入力装置の初期形状が検出されうる。入力装置は、その色または形によって検出されうる。例えば、入力装置がオレンジ色のボールである場合、ビデオモニタは丸いオレンジの形状を探し、それが入力装置であると判定する。
【0082】
手順は操作2408に進み、入力装置の形、色または明るさの変化の程度が検出されうる。一実施形態では、入力装置は、変形を受けると、色が変わるか次第に明るくなる。別の実施形態では、入力装置は、例えばユーザによって握られると単に形を変える。ビデオモニタは、装置の形、色または明るさの変化を検出して、変化の程度から、強度値を特定することができる。
【0083】
手順は操作2410に進み、キャプチャ装置と通信しているコンピュータで実行中のコンピュータプログラムによって、アクティビティ入力が開始される。アクティビティ入力には、ビデオキャプチャ装置が感知した変形、光、色の程度から計算される強度値が含まれうる。次に手順が、終了ブロック2412に示すように終了する。
【0084】
図25は、第2のフローチャート2500を示す。この手順は、開始ブロック2502に示すように開始し、操作2504に示すように、ビデオおよび音声機能を備えたキャプチャ装置を使用して、キャプチャ領域がモニタされうる。次に、操作2506において、入力装置が発生させた音が検出されうる。手順は操作2508に進み、入力装置が発生させた音のラウドネスまたは速さに基づいて、強度値が計算されうる。別の実施形態では、強度値を決定するために、音の周波数(ピッチ)が使用されうる。
【0085】
手順は操作2510に進み、キャプチャ装置と通信しているコンピュータで実行中のコンピュータプログラムに、アクティビティ入力が提供されうる。アクティビティ入力には、入力装置が発生させた音から決定された強度値を表す値が含まれうる。次に手順が、終了ブロック2512に示すように終了する。
【0086】
焦点ゾーンにおいて、ビデオゲームコントローラがビデオゲームまたは他のコンピュータプログラムとのインタラクションが求められる場合がある。ビデオゲームコントローラは、通常、ゲーム内のアクションを制御するため、ビデオゲームプログラムへの入力を提供する、ボタン、ノブおよび/またはジョイスティックを有する手持ち式装置でありうる。空間内でのコントローラの移動および/または回転を検知することによって、コントローラに追加の機能を追加することが求められることがある。例えば、ユーザが、コントローラ装置全体を傾けることによって、仮想のレース車を運転し、これが、図1〜14を参照して説明したように、画像キャプチャ装置によって検知されうる。従来、ビデオゲームコントローラは、利用可能な1つ以上の赤外線または高周波(RF)インタフェースを使用して、アナログ信号および/またはデジタルデータのストリームを有線あるいは無線によって提供している。マルチプレーヤのゲームのために、複数のコントローラが、コンピュータシステム(例えばゲームコンソール)と電子的通信を行うことがある。プログラムとのインタラクションを行う各ユーザに対して、プレーヤ1、プレーヤ2などの番号が割り振られうる。ゲームコントローラがシステムに接続されると、各ユーザに対して、コントローラが接続されたポート番号に従って、番号が割り振られうる。このため、コンピュータゲームが4つのポートを有する場合、プレーヤ1がポート番号1に接続され、プレーヤ2がポート番号2に接続され、…と続いていく。無線コントローラにより、プレーヤは、無線チャネルやほかのハンドシェークプロトコル機構に基づいて、自分のプレーヤ番号を選択できるようになり、コントローラ自体が、プレーヤ1、プレーヤ2などであると認識できる。
【0087】
図26,27は、画像キャプチャ装置105(図1)とのインタラクションを行う例示的なコントローラ2600を示す。コントローラ2600は、各種のボタンおよびジョイスティックを含む複数のインタフェース装置を有するインタフェース2602を備える。ここに記載するコントローラは、有線であっても、無線であってもよい。WiFi、ブルートゥース(登録商標)、赤外線、音声、光などの技術が、ゲームコンソールなどのコンピュータとインタフェースするために使用されうる。一実施形態では、コントローラ2600は、LEDアレイ2605を有する。LEDアレイは、さまざまなレイアウトで構成することができ、このようなレイアウトには、例えば、各LEDが、想像上の矩形または正方形の結合ボックスの頂点に配置されている2×2のスタックがある。画像キャプチャ装置が作成する画像平面に投射されたときの、結合ボックスの位置および変形を追跡することによって、変化および変形がビデオアナライザで分析され、コントローラの位置および姿勢の情報が解読されうる。LEDアレイ2605は、赤外光または可視光を発しうる。画像キャプチャ装置105(図1)は、本発明のさまざまな実施形態に関して説明したように、LEDアレイ2605を識別しうる。例えば、各コントローラに対して、スイッチ2610を使用して、例えば、プレーヤ1〜プレーヤ4と割り振られ、これによって、ユーザが、プレーヤ番号1〜4から選択できるようになる。プレーヤ番号のそれぞれの選択は、LEDアレイ2605が発光している一意的なLEDのパターンまたは変調に対応している。例えば、プレーヤ1の場合は、1番目、3番目および5番目のLEDが点灯する。このようなプレーヤ情報は符号化されて、複数のビデオフレーム間で、所定の期間にわたり、繰り返し伝送されうる。コントローラまたは装置のLEDが、トラッキングモードと伝送モードを切り替えるように、インタリーブ方式が使用されることが望ましいことがある。トラッキングモードでは、サイクルの第1の部分の間、全てのLEDが点灯しうる。伝送モードでは、サイクルの第2の部分の間、LEDによって情報の変調が行われうる。所定の期間、LEDは、信号を受け取ることができるビデオアナライザまたは適切な装置に、トラッキング情報と通信情報を伝送する。伝送モードでは、LEDは、プレーヤのIDを表す情報を符号化しうる。期間と動作周期は、トラッキングの速度、点灯条件、コントローラの台数などに対応するように選択されうる。通信とトラッキング情報をインタリーブすることによって、ビデオキャプチャ装置は、適切な情報が与えられて、各コントローラのトラッキングパラメータを計算し、コントローラ同志を区別することができる。このような区別は、位置および姿勢や、コントローラの移動の他の評価基準をモニタおよびトラッキングする際に、各物理コントローラを分離するために、ビデオアナライザで使用されうる。
【0088】
伝送モードでは、コマンドまたは状態情報などの他の情報が、コントローラまたは装置のLEDによって、公知の符号化および変調の方式に従って伝送されうる。受信側では、ビデオキャプチャ装置に結合されたビデオアナライザが、LEDの状態と同期して、これをトラッキングし、情報とコントローラの移動を復号化しうる。伝送モードサイクルでは、フレーム間でデータを変調させることによって、高帯域が得られることが知られている。
【0089】
ユーザがインタフェース2602とのインタラクションを行うと、LEDアレイ2605の1つ以上のLEDが変調および/または変色しうる。例えば、ユーザがジョイスティックを動かすと、LEDが明るさを変えるか、または情報を伝送しうる。強度または色の変化が、コンピュータシステムによってモニタされて、図1〜14を参照して説明したように、強度値としてゲームプログラムに提供される。更に、各ボタンが、LEDアレイ2605の1つ以上のLEDの色または強度の変化にマッピングされうる。
【0090】
コントローラ2600が三次元空間内で移動され、ロール、ヨーまたはピッチの方向(後で図33を参照して詳細に説明する)のいずれかに回転されると、画像キャプチャ装置105は、コンピュータシステム102(図1)と共に、この変化を識別して、画像平面での移動を記述するために二次元ベクトルを、あるいは、三次元の空間での移動を記述するために三次元のベクトルを生成することができる。ベクトルは、画像キャプチャ装置105に対する相対移動および/または絶対位置を記述している一連の座標として提供されうる。当業者にとって明らかなように、画像キャプチャ装置105の見通線に垂直な面(画像平面)での移動は、画像キャプチャゾーン内の絶対位置によって特定することができる。これに対して、画像キャプチャ装置105に近いコントローラ2600の移動は、LEDアレイ2605によって広がって見えて特定されうる。すなわち、画像平面上の先頭のLEDと最後のLED間の距離が、画像キャプチャ装置からの距離を計算するために測定されうる。
【0091】
図28,29aは、LED2805が矩形に構成されており、これによって、コントローラ2800の各軸を中心とした三次元と回転の移動の検出が可能なコントローラ2800を示す。限られたLEDのみが図示されているが、これは例示のみを目的としており、面内に分布しているLEDの個数は任意の個数であってもよく、同一直線上にないLEDも可能である。コントローラ2800が前後にピッチ運動すると、上下のLEDの距離が近づくが、左右のLED間の距離は変わらない。同様に、コントローラ2800が左右にヨー運動すると、左右のLEDが接近して見えるが、上下のLED間の距離は変わらない。コントローラ2800のロール運動は、画像平面におけるLEDの向きを特定することによって検出することができる。コントローラが、画像キャプチャ装置105の見通線に沿って画像キャプチャ装置105に近づくと、全てのLEDが接近して見える。最後に、画像平面に沿ったコントローラの移動は、画像平面上のLEDの位置を特定することによってトラッキングすることができ、これにより、x軸およびy軸のそれぞれに沿った移動が特定できる。図26,27を参照して説明したように、ユーザによるインタフェース2802とのインタラクションを特定するために、LED変調を使用することができる。
【0092】
図29bは、別の実施形態によるコントローラ2920を示しており、LED2922、スピーカ2924、およびマイクロフォン2926が組み込まれている。LED2922は、画像キャプチャ装置を使用して位置情報と姿勢情報を提供する一方、スピーカ2924は、可聴音または超音波を発生させ、図15〜23を参照して説明したような、音声モニタを使用した音響効果および/または通信を提供している。マイクロフォン2926は、システムに音声入力を提供しており、音声コマンドを発行したり、またはオンラインのマルチプレーヤ環境で他のプレーヤと通信するために使用することができる。
【0093】
図29cは、矩形構成のLED2932のほか、コントローラ2930の後面パネルの中央に配置されたスピーカを有するコントローラ2930を示す。図29dは、弧形状に配置された5つのLED2942を有するコントローラ2940を示す。図29eは、長方形の構成に配置されたLEDを有するコントローラ2950を示す。図29fは、密集して配置された6つのLED296を有するコントローラ2960を示す。当業者は、ほかのLED構成が可能であることを認めるであろう。
【0094】
図30は、画像キャプチャ装置の使用時に、プレーヤとコントローラとの対応関係を決定するための例示的な手順を示すフローチャート3000を示す。この手順は開始ブロック3002に示すように開始し、操作3004に進む。操作3004において、プレーヤは希望するプレーヤ番号を選択し、コントローラがその選択内容を受け取りうる。次に、手順は操作3006に進み、ユーザが選択したプレーヤ番号に対応するLEDパターンが表示されうる。操作3008において、コントローラを含む焦点ゾーンの画像が、コンピュータに接続されうる画像キャプチャ装置によって受信される。コンピュータは、画像を表すデータを受け取ると、操作3010において、コントローラが発生させたLEDパターンを特定し、操作3012において、LEDパターンから、そのコントローラに対応しているプレーヤを決定する。次に手順が、終了ブロック3014に示すように終了する。
【0095】
図31は、画像キャプチャ装置を使用してコントローラの姿勢を特定するための例示的な手順を示すフローチャート3100を示す。この手順は開始ブロック3102に示すように開始し、操作3104に進み、コントローラを含む焦点ゾーンのビデオ画像が受信される。操作3106において、コントローラにあるLEDの絶対位置および相対位置から、コントローラの姿勢および/または位置が特定されうる。姿勢と位置は、図28,29を参照して説明したように取得することができる。コントローラの姿勢および/または位置が特定されると、手順は操作3108に進み、コントローラの姿勢および/または位置を表すデータが、このデータを要求したか、あるいはこのデータを受け取るコンピュータプログラムに渡される。次に手順が、終了ブロック3110に示すように終了する。
【0096】
図32は、画像キャプチャ装置を使用してコントローラの姿勢を特定するための例示的な手順を示すフローチャート3200を示す。この手順は開始ブロック3202に示すように開始し、操作3204に進み、コントローラを含む焦点ゾーンのビデオ画像が受信される。次に、操作3206において、ボタン、スイッチ、ジョイスティックなどのコントローラのインタフェースの操作が、コントローラのLEDの変調から特定されうる。この操作は、図26〜27を参照して説明したように実行されうる。次に、操作3208において、操作情報がコンピュータプログラムに渡されうる。最後に、手順は、終了ブロック3210に示すように終了する。
【0097】
図33は、多数の制御部と移動検知装置3305を有するインタフェース3302を有するコントローラ3300を示す。一実施形態では、移動検知装置3305は、三軸の加速度計であってもよい。加速度計は、電子工学分野で一般に公知であり、通常、運動量の変化に反応する構造する小さな固体素子装置と、反応を検出するセンサとを有する。並進運動のほかに回転運動を検知することができる小型の加速度計が入手可能である。並進運動は、x軸、y軸、z軸に沿った移動である。回転運動は、x軸、y軸、z軸の1つ以上を中心とした回転である。並進検出加速度計は、重力の引っ張りの方向を検出することができ、このため、重力の引っ張りに対する装置(ゲームコントローラなど)の絶対的な姿勢を特定する。コントローラ3300は、並進検知加速度計3305を有し、これがデジタルデータを発生させ、このデータがコントローラ330の内部にある回路(図示せず)によって受信される。このデジタルデータは、装置に対する重力の引っ張りから決定できる、装置の並進移動ベクトルと姿勢に変換されうる。このようにして、回路は、コントローラ3300の移動と姿勢を特定して、インタフェース3302の各種制御部とユーザとのインタラクションを示すほかのデータと共に、当業界で一般に公知の技術(ケーブル、赤外線または無線接続を介してなど)を使用して、このデータをゲームコンソールに伝送する。このデータを、画像キャプチャ装置が視覚的に認識可能なようにLED変調に符号化することも可能である。装置によってキャプチャされた移動は、(初期位置を原点とした)絶対位置と姿勢、および/または位置と姿勢の変化の情報として表すことができる。
【0098】
図34は、コントローラ3300の移動をコンピュータプログラムに伝える例示的な手順を示すフローチャート3400を示す。この手順は開始ブロック3402から始まり、操作3404に進み、ゲームコントローラの移動が検出されうる。一実施形態では、移動は、コントローラの運動量の変化を検出することによって検出することができ、運動量は加速度計を使用して検出することができる。次に、運動量の変化が、初期の原点からの移動ベクトルおよび/または絶対位置ベクトル、ならびに、コントローラ3300の姿勢を特定する重力の引っ張りを表すベクトルに変換されうる。移動、位置、および姿勢の各ベクトルは、一連の座標として表すことができる。操作3404においてゲームコントローラ3300の移動を検出したら、手順は、操作3406に進み、検出された移動を表すデータが、このデータを要求したか、あるいはこのデータを受け取るプログラムに渡される。
【0099】
特定の実施形態では、強度値、コントローラのプレーヤ番号、コントローラを含む1つ以上の入力オブジェクトの姿勢および/または位置を決定するための上記の画像または音声処理機能が、コンピュータシステムで実行中のプロセスで実行されてもよい。コンピューティングシステムが、メインプロセスを実行していてもよく、これは、画像または音声処理から得られるデータを要求するか、あるいはこのデータを受け取るゲームアプリケーションであってもよい。このようなデータには、強度値、コントローラのプレーヤ番号、コントローラを含む1つ以上の入力オブジェクトの姿勢および/または位置、コントローラの操作などが含まれる。各種実施形態では、画像および/または音声処理機能を実行しているプロセスは、ビデオカメラまたはビデオ/音声監視装置のドライバであってもよく、このドライバは、一般に知られているように実装に特有であり、当業界で知られ、理解されているように、任意のタイプのプロセス間通信を介して、メインプロセスにデータを提供する。画像または音声処理を実行するプロセスは、ゲームや他のソフトウェアを実行しているものと同じプロセッサで実行されても、別のプロセッサで実行されてもよい。画像または音声処理とゲーム機能に対して、例えば、プロシージャコールを使用して、同じプロセス内で共通のプロセスとしてもよい。このため、本明細書において、強度値やほかの情報が「『プログラムに』提供される」と言及することがあるが、本発明には、1つのプロセスが、画像処理機能とゲーム機能の両方を実行することができるように、プロシージャコールやその他のソフトウェア機能を使用して、このようなデータをプロセスのルーチンに提供することも含まれていることを理解すべきである。また、これら機能を異なるプロセスに分割して、共通のプロセッサコアまたは複数のプロセッサコアで実行される1つ以上のプロセスが、本明細書に記載したような画像および/または音声処理を実行して、別のプロセスがゲーム機能を実行してもよい。
【0100】
本発明は、ここに記載したように使用されても、ほかのユーザ入力機構、音の角度方向をトラッキングする他の機構、および/またはオブジェクトの位置を能動的または受動的にトラッキングする機構、機械的視野を使用する機構、これらの組み合わせと共に使用されてもよい。トラッキングされるオブジェクトは、システムへのフィードバックを操作する補助的制御部またはボタンを備えていてもよい。このようなフィードバックには、光源からの発光、音歪み手段または他の適切な送信器および変調器のほかに、ボタン、圧力パッドなどがあるが、これらに限定されない。これらは、その伝達または変調、符号化状態および/またはトラッキング対象の装置との間でやり取りされるコマンドに影響しうる。
【0101】
本発明は、ゲームコンソール、ゲームコンピュータまたはコンピューティング装置、携帯式デバイス、マイクロプロセッサシステム、マイクロプロセッサベースのプログラム可能な家庭用電気製品、ミニコンピュータ、メインフレームコンピュータなど、他のコンピュータシステムの構成によって実施されてもよい。また、本発明は、分散コンピューティング環境で実施されてもよく、このような環境では、ネットワークを介してリンクされる遠隔処理デバイスによってタスクが実行される。例えば、オンラインのゲームシステムおよびソフトウェアが使用されてもよい。
【0102】
上記の実施形態を考慮に入れて、本発明が、コンピュータシステムに記憶されたデータを使用する、各種のコンピュータ実装操作を使用してもよい点を理解すべきである。これらの操作は、物理量の物理的操作を必要とする。この物理量は通常、記憶、転送、結合、比較などの操作が可能な電気信号または磁気信号の形を取るが、必ずしもこれらに限定されない。更に、実行される操作は、生成、特定、決定または比較などと呼ばれることが多い。
【0103】
本発明の一部を構成している、本明細書に記載した操作はいずれも、有用な機械的操作である。本発明は、これらの操作を実行するデバイスまたは装置にも関する。この装置は、上記に記載したキャリアネットワークなどの所望の目的のために特別に作製されたものであっても、あるいは汎用コンピュータであり、そのコンピュータに記憶されているコンピュータプログラムによって選択的に作動もしくは構成されてもよい。特に、各種の汎用の機械を、本明細書の教示に従って記述したコンピュータプログラムと併用してもよく、あるいは所望の操作を実行するために特化した機械を作製するほうが利便性が高いこともある。
【0104】
本発明は、また、計算機可読媒体上の計算機可読コードとして実施されてもよい。計算機可読媒体は、コンピュータシステムによって後から読取ることができるデータを記憶できるデータ記憶装置であれば、どのようなものであってもよい。計算機可読媒体の例には、ハードディスク、ネットワーク接続記憶装置(NAS)、リードオンリーメモリ、ランダムアクセスメモリ、CD−ROM、CD−R、CD−RW、DVD、磁気テープおよび他の光学式データ記憶装置および非光学式データ記憶装置などがある。また、計算機可読媒体は、計算機可読コードが分散式に記憶されて、実行されるように、ネットワークに結合されたコンピュータシステムを介して分散されてもよい。
【0105】
上記に、本発明を明確に理解できるように多少詳細に記載したが、添付の特許請求の範囲内で変更例または変形例を実施できることは明らかである。したがって、本実施形態は例示的なものであり、制限するものではなく、本発明は本明細書に記載されている詳細な事項に限定されず、添付の特許請求の範囲およびその均等物の範囲内で変更されてもよい。
【図面の簡単な説明】
【0106】
【図1】画像キャプチャ装置を有するインタラクティブゲーム構成を示す。
【図2】画像キャプチャ装置の前方にあるオブジェクトの照準方向を確認するための方法を示す。
【図3】グラフィックディスプレイ上のオブジェクトとのインタラクションを行うための例示的なユーザ入力システムのブロック図である。
【図4】本明細書に記載した本発明の各種実施形態を実装するように構成されたコンピュータ処理システムの簡略ブロック図である。
【図5】代替入力装置として機能する操作用オブジェクトとの併用に適合されたビデオゲームコンソールの各種構成要素の構成を示すブロック図である。
【図6】ユーザによる操作中に、ユーザ入力装置に対応するピクセル群をトラッキングして判別するための機能ブロックを示すブロック図である。
【図7】変形可能なユーザ入力装置の例示的な実施形態の模式図である。
【図8】ユーザが変形可能なオブジェクトを操作する例示的な用途を示す。
【図9】バスケットボールの形をした、例示的な変形可能なオブジェクト900を示す。
【図10】外側層の下に発光ダイオードの層(LED)が存在する変形可能なオブジェクトを示す。
【図11】フットボールの形をした、例示的な変形可能なオブジェクトを示す。
【図12】変形可能なオブジェクトが、ユーザが使用しているバスケットボールの形である、変形可能なオブジェクトの例示的な用途を示す。
【図13】トリガとトリガセンサを有するおもちゃの銃を示す。
【図14】おもちゃの野球のバットを示す。
【図15】画像キャプチャユニットと音声キャプチャユニットとを有するモニタを示す。
【図16】2つの音源に向かい合った状態の音声キャプチャユニットを示す。
【図17】方向選択が行われるように、三角測量アルゴリズムを使用した音Aと音Bの処理を示す。
【図18】画像−音声キャプチャ装置と共に使用されうるコンピューティングシステムを示す。
【図19】少なくとも4つのマイクロフォンを備える例示的な音声モニタを示す。
【図20】アレイビーム形成モジュールを示す模式概略図である。
【図21】音声信号のノイズ成分とソース信号成分とを分離するためのブラインド音源分離法を示す高レベル模式図である。
【図22】適応ノイズ消去を採用したマイクロフォンアレイフレームワークを示す模式図である。
【図23】音声モニタとインタフェースするための、トリガおよびトリガセンサを有する例示的なおもちゃの銃を示す。
【図24】ビデオキャプチャを使用して、コンピュータプログラムとインタフェースするためのフローチャートを示す。
【図25】音声モニタリングを使用して、コンピュータプログラムとインタフェースするためのフローチャートを示す。
【図26】図1の画像キャプチャ装置とのインタラクションを行うための例示的なコントローラの上面図である。
【図27】図1の画像キャプチャ装置とのインタラクションを行うための例示的なコントローラの背面図である。
【図28】矩形の構成のLEDを有するコントローラの上面図である。
【図29a】矩形の構成のLEDを有するコントローラの背面図である。
【図29b】LED、スピーカ、およびマイクロフォンが組み込まれたコントローラの背面図である。
【図29c】矩形構成のLEDのほか、コントローラの後面パネルの中央に配置されたスピーカを有するコントローラの背面図である。
【図29d】5つのLEDが、弧形状に配置されているコントローラの背面図である。
【図29e】長方形の構成に配置されたLEDを有するコントローラの背面図である。
【図29f】密集して配置された6つのLEDを有するコントローラの背面図である。
【図30】画像キャプチャ装置の使用時に、プレーヤとコントローラとの対応関係を決定するための例示的な手順を示すフローチャートを示す。
【図31】画像キャプチャ装置を使用してコントローラの姿勢を特定するための例示的な手順を示すフローチャートを示す。
【図32】画像キャプチャ装置を使用してコントローラの姿勢を特定するための例示的な手順を示すフローチャートを示す。
【図33】多数の制御部と移動検知装置を有するインタフェースを有するコントローラを示す。
【図34】コントローラの移動をコンピュータプログラムに伝える例示的な手順を示すフローチャートを示す。
【特許請求の範囲】
【請求項1】
コンピュータプログラムとのインタラクションの強度値を決定するための方法であって、
キャプチャゾーンの画像をキャプチャするステップと、
前記画像内に表現された入力オブジェクトを特定するステップと、
前記入力オブジェクトの形、色または明るさの1つ以上を特定しており、前記入力オブジェクトに対する人の操作によって影響を受けるパラメータの初期値を特定するステップと、
前記キャプチャゾーンの第2の画像をキャプチャするステップと、
前記入力オブジェクトの前記パラメータの第2の値を特定するステップと、
前記第2の値と前記第1の値の差である前記パラメータの変化の程度を決定するステップと、
前記パラメータの前記変化の程度を表す強度値を含むアクティビティ入力を、前記コンピュータプログラムに提供するステップと、を有する方法。
【請求項2】
前記入力オブジェクトは変形可能なオブジェクトであり、前記パラメータは前記入力オブジェクトのアスペクト比を表しており、前記パラメータは、前記入力オブジェクトを握ることで影響を受ける請求項1に記載の方法。
【請求項3】
前記入力オブジェクトは、変形を受けると色が変わる材料を含む変形可能なオブジェクトであり、前記パラメータは前記オブジェクトの色であり、前記色は、前記入力オブジェクトを握ることで影響を受ける請求項1に記載の方法。
【請求項4】
前記入力オブジェクトは、握りを有する道具であり、前記道具は、前記握りが握られる強さに反応する照光手段を有し、前記パラメータは、前記照光手段の明るさまたは色の一方である請求項1に記載の方法。
【請求項5】
前記道具はおもちゃの銃であり、前記握りはトリガを有し、前記照光手段は、前記トリガが握られる強さに反応する請求項4に記載の方法。
【請求項6】
前記入力オブジェクトは、握りを有する道具であり、前記道具は、複数のイルミネータを有する照光手段を有し、前記照光は、前記握りの強さに応じて前記イルミネータのうちの所定の個数を作動させ、前記照光手段は複数のイルミネータを有し、前記パラメータは作動させるイルミネータの個数である請求項1に記載の方法。
【請求項7】
前記道具はおもちゃの銃であり、前記握りはトリガを有し、前記照光手段は、前記トリガが握られる強さに反応する請求項6に記載の方法。
【請求項8】
コンピュータプログラムに強度値を入力するための方法であって、
キャプチャゾーン内で入力オブジェクトが発生させる音をキャプチャするステップと、
前記入力装置が発生させる前記音のラウドネス、速さ、ピッチの少なくとも1つを特定する入力パラメータを特定するステップと、
前記音をキャプチャするための手段と通信しているコンピュータで実行されている前記コンピュータプログラムに、前記入力パラメータを表すアクティビティ入力を提供するステップと、
前記コンピュータプログラムにおいて、前記入力オブジェクトの仮想オブジェクトの動作をシミュレーションするステップと、を有する方法。
【請求項9】
前記入力オブジェクトは、人の操作を受けて前記音を発生させる請求項8に記載の方法。
【請求項10】
前記キャプチャは、複数のマイクロフォンを有する音声キャプチャ装置によって実行され、前記キャプチャするステップは、前記キャプチャゾーンから来たものではない音をフィルタリングするステップを有する請求項8に記載の方法。
【請求項11】
前記キャプチャゾーンは、初期化中に、ゾーンの選択肢から選択される請求項10に記載の方法。
【請求項12】
前記標的ゾーンは、前記音声キャプチャ装置の姿勢に対する特定の方向として定義される請求項10に記載の方法。
【請求項13】
前記音声キャプチャ装置は少なくとも4つのマイクロフォンを有し、前記キャプチャゾーンは、前記音声キャプチャ装置の近くの区切られた空間体積である請求項10に記載の方法。
【請求項14】
コンピュータビデオゲームであって、
人の操作のために構成された入力オブジェクトと、
監視装置であって、前記監視装置の近くのキャプチャゾーンから画像または音声の一方を含む情報をキャプチャする監視装置と、
コンピュータで実行中のコンピュータプログラムと、を有し、前記コンピュータプログラムは、前記監視装置によってキャプチャされた前記情報を表すデータを受け取り、前記コンピュータプログラムは、前記データを分析して、前記入力オブジェクトに対する前記人の操作の強度を表す強度値を計算するコンピュータビデオゲーム。
【請求項15】
前記入力オブジェクトは変形可能なオブジェクトであり、前記監視装置は、前記入力オブジェクトの画像をキャプチャするためのビデオカメラを有し、前記強度値は、前記入力オブジェクトのアスペクト比を表しており、前記アスペクト比は、前記入力オブジェクトを握ることで変化する請求項14に記載のコンピュータビデオゲーム。
【請求項16】
前記入力オブジェクトは、握りを有する道具であり、前記道具は、前記握りが握られる強さに応じて明るさおよび/または色を変える照光手段を有し、前記監視装置は、前記入力オブジェクトの画像をキャプチャするためのビデオカメラを有し、前記強度値は、前記照光手段の明るさまたは色の一方を表す請求項14に記載のコンピュータビデオゲーム。
【請求項17】
前記道具はおもちゃの銃であり、前記握りはトリガを有し、前記照光手段は、前記トリガが握られる強さに反応する請求項16に記載のコンピュータビデオゲーム。
【請求項18】
前記入力オブジェクトは、握りを有する道具であり、前記道具は、複数のイルミネータを有する照光手段を有し、前記照光は、前記握りの強さに応じて前記イルミネータのうちの所定の個数を作動させ、
前記監視装置は、前記入力オブジェクトの画像をキャプチャするためのビデオカメラを有し、前記強度値は、作動させる前記イルミネータの個数を表す請求項14に記載のコンピュータビデオゲーム。
【請求項19】
前記道具はおもちゃの銃であり、前記握りはトリガを有し、前記照光手段は、前記トリガが握られる強さに反応する請求項18に記載のコンピュータビデオゲーム。
【請求項20】
前記入力オブジェクトは、人の操作を受けて前記音を発生させ、前記音は、前記人の操作の前記強度に応じた可変パラメータを有し、前記可変パラメータは、ラウドネス、ピッチ、または速さの1つを含み、前記監視装置は、前記入力オブジェクトが発生させる前記音をキャプチャするためのマイクロフォンを有し、前記強度値が前記パラメータを変更する請求項14に記載のコンピュータビデオゲーム。
【請求項21】
プレーヤの選択を行うための方法であって、
コントローラ装置からユーザによるプレーヤ番号の選択を受け取るステップと、
前記コントローラ装置で、前記プレーヤ番号に対応するLEDパターンを表示するステップと、
前記コントローラ装置を含む焦点ゾーンの画像を受信するステップと、
前記画像内で前記LEDパターンを特定するステップと、
前記画像の前記LEDパターンから、前記コントローラが、前記ユーザが選択した前記プレーヤ番号に対応していることを決定するステップと、を有する方法。
【請求項22】
前記焦点ゾーンの前記画像は、複数の画像から形成されるビデオを生成する画像キャプチャ装置によって生成され、
前記方法は、位置および姿勢、インタフェースの操作、または前記コントローラからの移動、のうちの1つを決定するステップと、を更に有し、前記位置および姿勢は、前記焦点ゾーンの前記画像内で前記LEDパターンの位置を特定して、前記LEDパターンの前記位置を、前記画像キャプチャ装置に対する前記コントローラの位置および姿勢に変換することによって決定され、
前記インタフェースの操作は、前記LEDパターンを形成しているLEDの変調の特定によって決定され、
前記コントローラからの前記移動は、前記コントローラの移動または位置の一方を表す信号を送信する加速度計を使用して決定される請求項21に記載の方法。
【請求項23】
コントローラの位置および姿勢を特定するための方法であって、
複数のLEDを有するコントローラを含む焦点ゾーンのビデオ画像を受信するステップと、
前記ビデオ画像内で前記LEDの位置を特定し、前記ビデオ画像内での前記LED間の相対距離を測定することによって、前記コントローラの姿勢を特定するステップと、
前記ビデオ画像内での前記LEDの位置を特定することによって、前記焦点ゾーン内の前記コントローラの位置を特定するステップと、
前記コントローラの前記姿勢および位置を表すデータを生成するステップと、を有する方法。
【請求項24】
前記姿勢を特定する前記ステップは、前記コントローラのピッチ角、ヨー角、およびロール角を決定するステップを有する請求項23に記載の方法。
【請求項25】
プレーヤ番号またはコントローラの操作の少なくとも一方を決定するステップを更に有し、前記プレーヤ番号は、一意的なLEDパターンを複数のプレーヤ番号のそれぞれに相関させて、前記LEDから形成されるパターンに対応する前記プレーヤ番号の1つを識別することによって決定され、前記プレーヤ番号は、前記コントローラのユーザによって選択可能であり、前記コントローラの操作は、前記コントローラの操作に応えて変調される前記LEDの1つ以上の変調を特定することによって決定される請求項23に記載の方法。
【請求項26】
ゲームコントローラであって、
ユーザによって操作される複数のボタンを有するインタフェースと、
所定方向に向けられた複数のLEDと、前記画像キャプチャ装置が前記コントローラからみて前記所定方向にある場合、画像キャプチャ装置から前記LEDを視覚的に認識可能であり、前記ゲームコントローラは、前記LEDを使用して、プレーヤ番号の識別情報、前記コントローラの位置、および前記操作の指標の少なくとも1つを前記画像キャプチャ装置に通信するゲームコントローラ。
【請求項27】
ユーザが前記インタフェースとのインタラクションを行うと、可聴音または超音波の少なくとも一方を発生させるスピーカを更に有する請求項26に記載のゲームコントローラ。
【請求項28】
言語音声を受信するためのマイクロフォンを更に有し、前記言語音声はデータストリームに符号化され、前記データストリームはコンピュータシステムに伝送される通信信号に組み込まれる請求項26に記載のゲームコントローラ。
【請求項29】
インターフェイスを有するゲームコントローラであって、前記インターフェイスは複数のボタンを有し、前記ゲームコントローラは加速度計を更に有し、前記ゲームコントローラは、前記ボタンのいずれが操作されたか、および前記ゲームコントローラの移動または位置の一方を表すデータを含む信号を発生させるゲームコントローラ。
【請求項30】
ビデオキャプチャ装置から視覚的に認識可能な複数のLEDを更に有し、前記LEDは、プレーヤ番号の識別情報、前記コントローラの位置、および前記ボタンの操作の指標の少なくとも1つを提供する請求項29に記載のゲームコントローラ。
【請求項31】
セッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法であって、
(a)前記コンピュータゲームシステムに結合されたビデオキャプチャ装置によってキャプチャされ、前記コントローラ装置をトラッキングするための第1の状態を定義している第1の光信号の組を、コントローラ装置において発生させるステップと、
(b)前記ビデオキャプチャ装置によってキャプチャされ、前記コンピュータゲームシステムとのデータ伝送のための第2の状態を定義している第2の光信号の組を、コントローラ装置において発生させるステップと、
(c)前記コンピュータゲームシステムとのデータ伝送中に、前記コントローラ装置のトラッキングが、定期的に行われるように、前記セッション中に前記第1の状態と前記第2の状態とをインタリーブするステップと、を有する方法。
【請求項32】
前記インタリーブは、前記セッション中に前記第1の状態と前記第2の状態を時間分割多重化することによって行われる請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項33】
前記第1の光信号の組は、2つ以上の発光ダイオードによって定義され、前記第1の光信号の組のそれぞれのオン/オフ状態がトラッキングパターンを定義している請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項34】
前記第2の光信号の組は、2つ以上の発光ダイオードによって定義され、前記第2の光信号の組の選択された発光ダイオードのオン/オフ状態が、複数のデータ伝送パターンの1つを定義するために設定されるトラッキングパターンを定義している請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項35】
前記複数のデータ伝送パターンのそれぞれは、前記コンピュータゲームシステムに与えられる特定のコマンドまたはインタラクションを定義している請求項34に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項36】
前記コンピュータゲームシステムは1つ以上のコンピュータゲームプログラムとインタフェースする請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項37】
前記トラッキングパターンは、コントローラの識別子を識別している請求項33に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項38】
特定のコマンドまたはインタラクションを前記コンピュータゲームシステムに伝えるために、前記第2の状態において前記第2の光信号の組を変調させるステップを更に有する請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項39】
前記コントローラ装置は第2のコントローラ装置であり、前記第2のコントローラ装置は、他のコントローラ装置とは独立して前記第2のコントローラ装置をトラッキングするために上記(a)〜(c)のステップを処理するように構成されている請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項1】
コンピュータプログラムとのインタラクションの強度値を決定するための方法であって、
キャプチャゾーンの画像をキャプチャするステップと、
前記画像内に表現された入力オブジェクトを特定するステップと、
前記入力オブジェクトの形、色または明るさの1つ以上を特定しており、前記入力オブジェクトに対する人の操作によって影響を受けるパラメータの初期値を特定するステップと、
前記キャプチャゾーンの第2の画像をキャプチャするステップと、
前記入力オブジェクトの前記パラメータの第2の値を特定するステップと、
前記第2の値と前記第1の値の差である前記パラメータの変化の程度を決定するステップと、
前記パラメータの前記変化の程度を表す強度値を含むアクティビティ入力を、前記コンピュータプログラムに提供するステップと、を有する方法。
【請求項2】
前記入力オブジェクトは変形可能なオブジェクトであり、前記パラメータは前記入力オブジェクトのアスペクト比を表しており、前記パラメータは、前記入力オブジェクトを握ることで影響を受ける請求項1に記載の方法。
【請求項3】
前記入力オブジェクトは、変形を受けると色が変わる材料を含む変形可能なオブジェクトであり、前記パラメータは前記オブジェクトの色であり、前記色は、前記入力オブジェクトを握ることで影響を受ける請求項1に記載の方法。
【請求項4】
前記入力オブジェクトは、握りを有する道具であり、前記道具は、前記握りが握られる強さに反応する照光手段を有し、前記パラメータは、前記照光手段の明るさまたは色の一方である請求項1に記載の方法。
【請求項5】
前記道具はおもちゃの銃であり、前記握りはトリガを有し、前記照光手段は、前記トリガが握られる強さに反応する請求項4に記載の方法。
【請求項6】
前記入力オブジェクトは、握りを有する道具であり、前記道具は、複数のイルミネータを有する照光手段を有し、前記照光は、前記握りの強さに応じて前記イルミネータのうちの所定の個数を作動させ、前記照光手段は複数のイルミネータを有し、前記パラメータは作動させるイルミネータの個数である請求項1に記載の方法。
【請求項7】
前記道具はおもちゃの銃であり、前記握りはトリガを有し、前記照光手段は、前記トリガが握られる強さに反応する請求項6に記載の方法。
【請求項8】
コンピュータプログラムに強度値を入力するための方法であって、
キャプチャゾーン内で入力オブジェクトが発生させる音をキャプチャするステップと、
前記入力装置が発生させる前記音のラウドネス、速さ、ピッチの少なくとも1つを特定する入力パラメータを特定するステップと、
前記音をキャプチャするための手段と通信しているコンピュータで実行されている前記コンピュータプログラムに、前記入力パラメータを表すアクティビティ入力を提供するステップと、
前記コンピュータプログラムにおいて、前記入力オブジェクトの仮想オブジェクトの動作をシミュレーションするステップと、を有する方法。
【請求項9】
前記入力オブジェクトは、人の操作を受けて前記音を発生させる請求項8に記載の方法。
【請求項10】
前記キャプチャは、複数のマイクロフォンを有する音声キャプチャ装置によって実行され、前記キャプチャするステップは、前記キャプチャゾーンから来たものではない音をフィルタリングするステップを有する請求項8に記載の方法。
【請求項11】
前記キャプチャゾーンは、初期化中に、ゾーンの選択肢から選択される請求項10に記載の方法。
【請求項12】
前記標的ゾーンは、前記音声キャプチャ装置の姿勢に対する特定の方向として定義される請求項10に記載の方法。
【請求項13】
前記音声キャプチャ装置は少なくとも4つのマイクロフォンを有し、前記キャプチャゾーンは、前記音声キャプチャ装置の近くの区切られた空間体積である請求項10に記載の方法。
【請求項14】
コンピュータビデオゲームであって、
人の操作のために構成された入力オブジェクトと、
監視装置であって、前記監視装置の近くのキャプチャゾーンから画像または音声の一方を含む情報をキャプチャする監視装置と、
コンピュータで実行中のコンピュータプログラムと、を有し、前記コンピュータプログラムは、前記監視装置によってキャプチャされた前記情報を表すデータを受け取り、前記コンピュータプログラムは、前記データを分析して、前記入力オブジェクトに対する前記人の操作の強度を表す強度値を計算するコンピュータビデオゲーム。
【請求項15】
前記入力オブジェクトは変形可能なオブジェクトであり、前記監視装置は、前記入力オブジェクトの画像をキャプチャするためのビデオカメラを有し、前記強度値は、前記入力オブジェクトのアスペクト比を表しており、前記アスペクト比は、前記入力オブジェクトを握ることで変化する請求項14に記載のコンピュータビデオゲーム。
【請求項16】
前記入力オブジェクトは、握りを有する道具であり、前記道具は、前記握りが握られる強さに応じて明るさおよび/または色を変える照光手段を有し、前記監視装置は、前記入力オブジェクトの画像をキャプチャするためのビデオカメラを有し、前記強度値は、前記照光手段の明るさまたは色の一方を表す請求項14に記載のコンピュータビデオゲーム。
【請求項17】
前記道具はおもちゃの銃であり、前記握りはトリガを有し、前記照光手段は、前記トリガが握られる強さに反応する請求項16に記載のコンピュータビデオゲーム。
【請求項18】
前記入力オブジェクトは、握りを有する道具であり、前記道具は、複数のイルミネータを有する照光手段を有し、前記照光は、前記握りの強さに応じて前記イルミネータのうちの所定の個数を作動させ、
前記監視装置は、前記入力オブジェクトの画像をキャプチャするためのビデオカメラを有し、前記強度値は、作動させる前記イルミネータの個数を表す請求項14に記載のコンピュータビデオゲーム。
【請求項19】
前記道具はおもちゃの銃であり、前記握りはトリガを有し、前記照光手段は、前記トリガが握られる強さに反応する請求項18に記載のコンピュータビデオゲーム。
【請求項20】
前記入力オブジェクトは、人の操作を受けて前記音を発生させ、前記音は、前記人の操作の前記強度に応じた可変パラメータを有し、前記可変パラメータは、ラウドネス、ピッチ、または速さの1つを含み、前記監視装置は、前記入力オブジェクトが発生させる前記音をキャプチャするためのマイクロフォンを有し、前記強度値が前記パラメータを変更する請求項14に記載のコンピュータビデオゲーム。
【請求項21】
プレーヤの選択を行うための方法であって、
コントローラ装置からユーザによるプレーヤ番号の選択を受け取るステップと、
前記コントローラ装置で、前記プレーヤ番号に対応するLEDパターンを表示するステップと、
前記コントローラ装置を含む焦点ゾーンの画像を受信するステップと、
前記画像内で前記LEDパターンを特定するステップと、
前記画像の前記LEDパターンから、前記コントローラが、前記ユーザが選択した前記プレーヤ番号に対応していることを決定するステップと、を有する方法。
【請求項22】
前記焦点ゾーンの前記画像は、複数の画像から形成されるビデオを生成する画像キャプチャ装置によって生成され、
前記方法は、位置および姿勢、インタフェースの操作、または前記コントローラからの移動、のうちの1つを決定するステップと、を更に有し、前記位置および姿勢は、前記焦点ゾーンの前記画像内で前記LEDパターンの位置を特定して、前記LEDパターンの前記位置を、前記画像キャプチャ装置に対する前記コントローラの位置および姿勢に変換することによって決定され、
前記インタフェースの操作は、前記LEDパターンを形成しているLEDの変調の特定によって決定され、
前記コントローラからの前記移動は、前記コントローラの移動または位置の一方を表す信号を送信する加速度計を使用して決定される請求項21に記載の方法。
【請求項23】
コントローラの位置および姿勢を特定するための方法であって、
複数のLEDを有するコントローラを含む焦点ゾーンのビデオ画像を受信するステップと、
前記ビデオ画像内で前記LEDの位置を特定し、前記ビデオ画像内での前記LED間の相対距離を測定することによって、前記コントローラの姿勢を特定するステップと、
前記ビデオ画像内での前記LEDの位置を特定することによって、前記焦点ゾーン内の前記コントローラの位置を特定するステップと、
前記コントローラの前記姿勢および位置を表すデータを生成するステップと、を有する方法。
【請求項24】
前記姿勢を特定する前記ステップは、前記コントローラのピッチ角、ヨー角、およびロール角を決定するステップを有する請求項23に記載の方法。
【請求項25】
プレーヤ番号またはコントローラの操作の少なくとも一方を決定するステップを更に有し、前記プレーヤ番号は、一意的なLEDパターンを複数のプレーヤ番号のそれぞれに相関させて、前記LEDから形成されるパターンに対応する前記プレーヤ番号の1つを識別することによって決定され、前記プレーヤ番号は、前記コントローラのユーザによって選択可能であり、前記コントローラの操作は、前記コントローラの操作に応えて変調される前記LEDの1つ以上の変調を特定することによって決定される請求項23に記載の方法。
【請求項26】
ゲームコントローラであって、
ユーザによって操作される複数のボタンを有するインタフェースと、
所定方向に向けられた複数のLEDと、前記画像キャプチャ装置が前記コントローラからみて前記所定方向にある場合、画像キャプチャ装置から前記LEDを視覚的に認識可能であり、前記ゲームコントローラは、前記LEDを使用して、プレーヤ番号の識別情報、前記コントローラの位置、および前記操作の指標の少なくとも1つを前記画像キャプチャ装置に通信するゲームコントローラ。
【請求項27】
ユーザが前記インタフェースとのインタラクションを行うと、可聴音または超音波の少なくとも一方を発生させるスピーカを更に有する請求項26に記載のゲームコントローラ。
【請求項28】
言語音声を受信するためのマイクロフォンを更に有し、前記言語音声はデータストリームに符号化され、前記データストリームはコンピュータシステムに伝送される通信信号に組み込まれる請求項26に記載のゲームコントローラ。
【請求項29】
インターフェイスを有するゲームコントローラであって、前記インターフェイスは複数のボタンを有し、前記ゲームコントローラは加速度計を更に有し、前記ゲームコントローラは、前記ボタンのいずれが操作されたか、および前記ゲームコントローラの移動または位置の一方を表すデータを含む信号を発生させるゲームコントローラ。
【請求項30】
ビデオキャプチャ装置から視覚的に認識可能な複数のLEDを更に有し、前記LEDは、プレーヤ番号の識別情報、前記コントローラの位置、および前記ボタンの操作の指標の少なくとも1つを提供する請求項29に記載のゲームコントローラ。
【請求項31】
セッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法であって、
(a)前記コンピュータゲームシステムに結合されたビデオキャプチャ装置によってキャプチャされ、前記コントローラ装置をトラッキングするための第1の状態を定義している第1の光信号の組を、コントローラ装置において発生させるステップと、
(b)前記ビデオキャプチャ装置によってキャプチャされ、前記コンピュータゲームシステムとのデータ伝送のための第2の状態を定義している第2の光信号の組を、コントローラ装置において発生させるステップと、
(c)前記コンピュータゲームシステムとのデータ伝送中に、前記コントローラ装置のトラッキングが、定期的に行われるように、前記セッション中に前記第1の状態と前記第2の状態とをインタリーブするステップと、を有する方法。
【請求項32】
前記インタリーブは、前記セッション中に前記第1の状態と前記第2の状態を時間分割多重化することによって行われる請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項33】
前記第1の光信号の組は、2つ以上の発光ダイオードによって定義され、前記第1の光信号の組のそれぞれのオン/オフ状態がトラッキングパターンを定義している請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項34】
前記第2の光信号の組は、2つ以上の発光ダイオードによって定義され、前記第2の光信号の組の選択された発光ダイオードのオン/オフ状態が、複数のデータ伝送パターンの1つを定義するために設定されるトラッキングパターンを定義している請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項35】
前記複数のデータ伝送パターンのそれぞれは、前記コンピュータゲームシステムに与えられる特定のコマンドまたはインタラクションを定義している請求項34に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項36】
前記コンピュータゲームシステムは1つ以上のコンピュータゲームプログラムとインタフェースする請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項37】
前記トラッキングパターンは、コントローラの識別子を識別している請求項33に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項38】
特定のコマンドまたはインタラクションを前記コンピュータゲームシステムに伝えるために、前記第2の状態において前記第2の光信号の組を変調させるステップを更に有する請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【請求項39】
前記コントローラ装置は第2のコントローラ装置であり、前記第2のコントローラ装置は、他のコントローラ装置とは独立して前記第2のコントローラ装置をトラッキングするために上記(a)〜(c)のステップを処理するように構成されている請求項31に記載のセッション中にコンピュータゲームシステムとインタフェースするために使用される、キャプチャされた光データの処理方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29a】
【図29b】
【図29c】
【図29d】
【図29e】
【図29f】
【図30】
【図31】
【図32】
【図33】
【図34】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29a】
【図29b】
【図29c】
【図29d】
【図29e】
【図29f】
【図30】
【図31】
【図32】
【図33】
【図34】
【公表番号】特表2009−508581(P2009−508581A)
【公表日】平成21年3月5日(2009.3.5)
【国際特許分類】
【出願番号】特願2008−531230(P2008−531230)
【出願日】平成18年9月11日(2006.9.11)
【国際出願番号】PCT/US2006/035383
【国際公開番号】WO2007/035314
【国際公開日】平成19年3月29日(2007.3.29)
【出願人】(395015319)株式会社ソニー・コンピュータエンタテインメント (871)
【Fターム(参考)】
【公表日】平成21年3月5日(2009.3.5)
【国際特許分類】
【出願日】平成18年9月11日(2006.9.11)
【国際出願番号】PCT/US2006/035383
【国際公開番号】WO2007/035314
【国際公開日】平成19年3月29日(2007.3.29)
【出願人】(395015319)株式会社ソニー・コンピュータエンタテインメント (871)
【Fターム(参考)】
[ Back to top ]