(57)【要約】コンピュータゲームシステムとインタラクティブにインターフェースする方法及び装置が提供される。このコンピュータゲームシステムは、画像データをキャプチャするビデオキャプチャ装置を含む。ある方法において、入力デバイスがビデオキャプチャ装置に表示され、入力デバイスは、変調される複数の光源を有しており、これにより、この入力デバイスの位置と、キャプチャした画像データと複数の光源の状態との分析に基づくコンピュータゲームシステムにより解釈される通信データと、が伝達される。さらに上記方法において、コンピュータゲームシステムにより実行されるコンピュータゲームのオブジェクトの移動が定義される。これにより、オブジェクトの移動が、キャプチャされた画像データにおいて検出された入力デバイスの移動に対応づけられる。次に、上記方法において、コンピュータゲームのオブジェクトの移動と入力デバイスの移動との間のギアリングが定められる。ギアリングとは、入力デバイスの位置における移動とオブジェクトの移動との間の比率を定めるものである。ギアリングは、ゲームやユーザにより動的に設定されてもよいし、ソフトウェアまたはギアリングアルゴリズムに従って配置されたユーザにより事前に設定されてもよい。入力デバイスの各実施形態は、ギアリングが適用される、コンピュータゲームシステムにより解釈される慣性データを提供するために用いることができる。さらに、各実施形態は、画像キャプチャ、慣性キャプチャならびに音響キャプチャのミックスに加えて、音響検出システムを用いることができ、これにより所望のギアリングをかけることができる。
2009535167.tif 000002
【特許請求の範囲】
【請求項１】
画像データをキャプチャするビデオキャプチャ装置を備えたコンピュータゲームシステムとインタラクティブにインターフェースする方法であって、
前記ビデオキャプチャ装置に入力デバイスを表示するステップを含み、前記入力デバイスは、複数の光源を含み、これにより、前記キャプチャした画像データの分析に基づいて前記コンピュータゲームシステムによって解釈される前記入力デバイスの位置を伝達することができ、
前記コンピュータゲームシステムによって実行されるアクションを定義するステップを含み、前記アクションは前記キャプチャした画像データに検出された前記入力デバイスの移動に反応するものであって、さらに、
前記アクションと前記入力デバイスとの移動間のギアリングを定めるステップを含み、
前記ギアリングは、前記入力デバイスの移動と前記アクションとの間の比率を定める、方法。
【請求項２】
前記入力デバイスの前記移動は、前記ビデオキャプチャ装置によってキャプチャされる空間体積において検出される、請求項１記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３】
前記入力デバイスの移動を識別するように、前記キャプチャした画像データを継続的に分析するステップと、
前記識別された前記入力デバイスの移動に基づいて、アクションを継続的にアップデートするステップと、
前記ギアリングがアップデート済みであるかどうかを判断するステップと、をさらに含む、請求項１記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項４】
前記ギアリングがアップデート済みであると判断された場合に、前記アップデートされたギアリングを、次のアクションの前に、または所定の期間にわたって段階的に、前記アクションの処理を続行しながら適用する、請求項３記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５】
前記ギアリングがアップデート済みの場合、前記コンピュータゲームシステムは、前記アップデートされたギアリングを使用し、前記現在のアクションに影響を及ぼすようにする、請求項３記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項６】
前記複数の光源は、発光ダイオードから定義される、請求項１記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項７】
前記複数の光源の状態は、前記複数の光源のＯＮ／ＯＦＦの組合せの設定により表される、請求項１記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項８】
前記複数の光源を変調することで前記入力デバイスのトラッキングか可能となり、これにより前記移動が識別できるようになる、請求項１記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項９】
前記入力デバイスの移動は、前記入力デバイスの座標情報を識別するために分析され、前記座標情報は、ベクトルデータに変換されて前記アクションに適用され、さらに、前記アクションは、前記コンピュータゲームシステムにより実行されるコンピュータゲームのオブジェクトによる移動量を表示する、請求項１記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項１０】
前記ベクトルデータは、前記ギアリングのアップデートに応じてスケーリングされる、請求項９記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項１１】
前記ベクトルデータは、前記ベクトルデータを前記ギアリングにより定義されるギアリング量によって乗算することでスケーリングされる、請求項９記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項１２】
コンピュータゲームシステムとインタラクティブにインターフェースするプログラム命令を含むコンピュータ可読媒体であり、前記コンピュータゲームシステムは、画像データをキャプチャするビデオキャプチャ装置を備えており、前記コンピュータ可読媒体は、
入力デバイスの表示をビデオキャプチャ装置に検出するプログラム命令を含み、前記入力デバイスは、前記入力デバイスの位置とキャプチャした画像データ分析に基づくコンピュータゲームシステムによって解釈される通信データを伝達するものであって、
コンピュータゲームシステムにより実行されるコンピュータゲームのオブジェクトの移動を定義するプログラム命令を含み、前記オブジェクトの前記移動は、キャプチャした画像データで検出した入力デバイスの移動に対応づけられており、
さらに、コンピュータゲームのオブジェクトの移動と入力デバイスの移動との間のギアリングを定めるプログラム命令を含み、前記ギアリングは前記入力デバイスの移動と前記オブジェクトの移動間にユーザにより調節可能な比率を定める、コンピュータ可読媒体。
【請求項１３】
前記キャプチャした画像データを少なくとも周期的に分析し、前記入力デバイスの前記移動を識別するプログラム命令と、
前記入力デバイスの前記識別した移動に基づいて、前記オブジェクトの移動を少なくとも周期的に対応づけるプログラム命令と、
前記ギアリングが前記対応付けの間にすでに調整されているかどうかを判断するプログラム命令と、を含む請求項１２記載のコンピュータ可読媒体。
【請求項１４】
前記ギアリングが前記対応付けの間にすでに調整されているかどうかを判断するプログラム命令をさらに含み、前記調整されたギアリングは、前記オブジェクトの次の移動の前、前記オブジェクトの前記現在の移動の間、または、前記オブジェクトの現在の移動において段階的にかけられる、請求項１２記載のコンピュータ可読媒体。
【請求項１５】
ユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステムであって、
コンピューティングシステムと、
前記コンピューティングシステムに結合された画像キャプチャ装置と、
前記コンピューティングシステムからの入力を受信するディスプレイと、
前記コンピューティングシステムにより実行されるコンピュータプログラムとインターフェースする入力デバイスと、を含み、前記入力デバイスは、前記コンピュータプログラムにより定義され、前記コンピューティングシステムにより実行されるオブジェクトに適用されるアクションに対応づけられた前記入力デバイスの移動間の比率を定めるギアリングコントロールを有しており、前記画像キャプチャ装置により識別される前記入力デバイスの前記移動と前記アクションとは、前記オブジェクトに適用されるときに、前記入力デバイスのギアリングコントロールにより設定された、顕著なギアリング値でディスプレイに表示される、システム。
【請求項１６】
前記ギアリング値は、前記コンピュータプログラムの前記オブジェクトとのインタラクティビティ前に、インタラクティビティの間に、またはインタラクティビティの後に設定することができる、請求項１５記載のシステム。
【請求項１７】
前記コンピュータプログラムはインタラクティブアプリケーションである、請求項１５記載のシステム。
【請求項１８】
前記インタラクティブアプリケーションはビデオゲームである、請求項１７記載のシステム。
【請求項１９】
前記入力デバイスは、コントローラまたは手持ち式のオブジェクトである、請求項１７記載のシステム。
【請求項２０】
前記コントローラまたは手持ち式のオブジェクトは、位置検出のための発光ダイオードを含む、請求項１９記載のシステム。
【請求項２１】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムに前記アクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項１９記載のシステム。
【請求項２２】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピュータプログラムによりアクションが引き起こされるように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項１９記載のシステム。
【請求項２３】
ユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置であって、
コンピューティングシステムにより実行される前記コンピュータプログラムとインターフェースする入力デバイスを含み、前記入力デバイスは前記コンピュータプログラムにより適用されるアクションに対応づけられた前記入力デバイスの移動データ間にスケーリング値を定めるギアリングコントロールを有する、装置。
【請求項２４】
前記ギアリングは、前記コンピュータプログラムとのインタラクティビティ前に、インタラクティビティの間に、またはインタラクティビティの後に設定することができる、請求項２３記載の装置。
【請求項２５】
前記入力デバイスは、位置検出のための発光ダイオードを含むコントローラまたは手持ち式のオブジェクトである、請求項２３記載の装置。
【請求項２６】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムにアクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項２５記載の装置。
【請求項２７】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピュータプログラムによりアクションが引き起こされるように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項２５記載の装置。
【請求項２８】
コンピュータゲームシステムとインタラクティブにインターフェースする方法であって、
前記コンピュータゲームシステムにより解釈される慣性データを伝達する入力デバイスを提供するステップと、
前記コンピュータゲームシステムによって実行される、前記入力デバイスによって提供された前記慣性データに対応づけられているアクションを識別するステップと、
前記コンピュータゲームシステムによって実行される前記アクションと、前記入力デバイスから受信した前記慣性データ間にギアリングをかけるステップと、を含み、
前記ギアリングは、前記コンピュータゲームシステムによって実行される前記アクションに影響を与えるように調節をスケーリングする、方法。
【請求項２９】
前記アクションは、（ａ）前記コンピュータゲームシステムにより実行されたコンピュータゲームのオブジェクトにより、移動量を設定する（ｂ）処理を実行する変数を設定する（ａ）音声または振動に影響を及ぼす処理に対して変化率を設定する、または（ｃ）グラフィカルオブジェクトの移動の変化率を設定する、のうちの１つを含む、請求項２８記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３０】
少なくとも周期的に前記慣性データを分析するステップと、
前記ギアリングによりアップデートされた変更を用いて、少なくとも周期的に前記アクションを再度適用するステップと、を含む、請求項２８記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３１】
前記ギアリングがアップデート済みであると判断された場合に、前記アップデートされたギアリングを、次のアクションの前に、または所定の期間において段階的に、前記アクションの処理を続行しながら適用する、請求項３０記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３２】
前記ギアリングが調整済みの場合、前記調整済みのギアリングは（ａ）段階的に、（ｂ）漸進的に、または（ｃ）スムーズにかけられ、前記アクションに影響を与えるようにする、請求項３０記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３３】
前記慣性データは、前記入力デバイスの座標情報を識別するために分析され、前記座標情報は、前記対応付けによってベクトルデータに変換されて前記アクションに適用される、請求項２８記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３４】
前記ベクトルデータは、前記ギアリングの調整に応じてスケーリングされる、請求項３３記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３５】
前記ベクトルデータは、前記ベクトルデータを前記ギアリングにより定義されるギアリング量で掛けることによりスケーリングされる、請求項３３記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３６】
前記入力デバイスは、前記入力デバイスの位置と通信データとを検出するように使用される複数の光源を含む、請求項３３記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３７】
ユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステムであって、
コンピューティングシステムと、
前記コンピューティングシステムに結合されているか、または前記コンピューティングシステムにより実行される慣性検出アナライザと、
前記コンピューティングシステムにより実行される前記コンピュータプログラムとインターフェースする入力デバイスと、を含み、前記入力デバイスは、前記入力デバイスで生成された慣性データと、前記慣性検出アナライザにより分析された前記コンピュータプログラムに適用されるアクションとの間にスケーリングを定めるギアリングコントロールを有する、システム。
【請求項３８】
前記ギアリングは、前記コンピュータプログラムの前記オブジェクトとのインタラクティビティ前に、インタラクティビティの間に、またはインタラクティビティの後に設定することができる、請求項３７記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項３９】
前記コンピュータプログラムは、インタラクティブアプリケーションである、請求項３７記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項４０】
前記インタラクティブアプリケーションは、ビデオゲームである、請求項３９記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項４１】
前記入力デバイスは、コントローラまたは手持ち式のオブジェクトである、請求項３９記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項４２】
前記コントローラまたは手持ち式のオブジェクトは、位置検出のための発光ダイオードを含む、請求項４３記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項４３】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムに前記アクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項４１記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項４４】
前記コントローラまたは手持ち式のオブジェクトは前記コンピュータプログラムによりアクションが引き起こされるように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項４１記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項４５】
ユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置であって、
コンピューティングシステムにより実行される前記コンピュータプログラムとインターフェースする入力デバイスを含み、前記入力デバイスは前記コンピューティングシステムにより適用されるアクションに対応づけられた前記入力デバイスの慣性データ間にスケーリング値を定めるギアリングコントロールを有する、装置。
【請求項４６】
前記ギアリングは、前記コンピュータプログラムとのインタラクティビティ前に、インタラクティビティの間に、またはインタラクティビティの後に設定することができる、請求項４５記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項４７】
前記入力デバイスは、位置検出のための発光ダイオードを含むコントローラまたは手持ち式のオブジェクトである、請求項４５記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項４８】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムに前記アクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項４７記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項４９】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピュータプログラムによるアクションを引き起こすように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項４７記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項５０】
コンピュータゲームシステムとインタラクティブにインターフェースする方法であって、
前記コンピュータゲームシステムにより解釈される音響データを伝達する入力デバイスを提供するステップと、
前記コンピュータゲームシステムによって実行される、前記入力デバイスによって提供された前記音響データに対応づけられているアクションを識別するステップと、
前記コンピュータゲームシステムによって実行される前記アクションと、前記入力デバイスから受信した前記音響データ間にギアリングをかけるステップと、を含み、
前記ギアリングは、前記コンピュータゲームシステムによって実行される前記アクションに影響を与えるように調節をスケーリングする、方法。
【請求項５１】
前記アクションは、（ａ）前記コンピュータゲームシステムにより実行されたコンピュータゲームのオブジェクトにより、移動量を設定する（ｂ）処理を実行する変数を設定する（ａ）音声または振動に影響を及ぼす処理に対して変化率を設定する、または（ｃ）グラフィカルオブジェクトの移動の変化率を設定する、のうちの１つを含む、請求項５０記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５２】
少なくとも周期的に前記音響データを分析するステップと、
前記ギアリングによりアップデートされた変更を用いて、少なくとも周期的に前記アクションを再度適用するステップと、をさらに含む、請求項５０記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５３】
前記ギアリングがアップデート済みであると判断された場合に、前記アップデートされたギアリングを、次のアクションの前に、または所定の期間において段階的に、前記アクションの処理を続行しながら適用する、請求項５２記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５４】
前記ギアリングが調整済みの場合、前記調整済みのギアリングは（ａ）段階的に、（ｂ）漸進的に、または（ｃ）スムーズにかけられ、前記アクションに影響を与えるようにする、請求項５２記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５５】
前記音響データは、前記入力デバイスの座標情報を識別するために分析され、前記座標情報は、前記対応付けによってベクトルデータに変換されて前記アクションに適用される、請求項５０記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５６】
前記ベクトルデータは、前記ギアリングの調整に応じてスケーリングされる、請求項５５記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５７】
前記ベクトルデータは、前記ベクトルデータを前記ギアリングにより定義されるギアリング量で掛けることによりスケーリングされる、請求項５５記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５８】
前記入力デバイスは、前記入力デバイスの位置と通信データとを検出するように使用される複数の光源を含む、請求項５５記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５９】
ユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステムであって、
コンピューティングシステムと、
前記コンピューティングシステムに結合されているか、または前記コンピューティングシステムにより実行される音響検出アナライザと、
前記コンピューティングシステムにより実行される前記コンピュータプログラムとインターフェースする入力デバイスを含み、前記入力デバイスは、前記入力デバイスで生成された音響データと、前記音響検出アナライザにより分析されたコンピュータプログラムに適用されるアクションとの間にスケーリングを定めるギアリングコントロールを有する、システム。
【請求項６０】
前記ギアリングは、前記コンピュータプログラムの前記オブジェクトとのインタラクティビティ前に、インタラクティビティの間に、またはインタラクティビティの後に設定することができる、請求項５９記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項６１】
前記コンピュータプログラムは、インタラクティブアプリケーションである、請求項５９記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項６２】
前記インタラクティブアプリケーションは、ビデオゲームである、請求項６１記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項６３】
前記入力デバイスは、コントローラまたは手持ち式のオブジェクトである、請求項６１記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項６４】
前記コントローラまたは手持ち式のオブジェクトは、位置検出のための発光ダイオードを含む、請求項６３記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項６５】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムに前記アクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項６３記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項６６】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピュータプログラムによるアクションを引き起こすように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項６３記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項６７】
ユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置であって、
コンピューティングシステムにより実行される前記コンピュータプログラムとインターフェースする入力デバイスを含み、前記入力デバイスは前記コンピューティングシステムにより適用されるアクションに対応づけられた前記入力デバイスの音響データ間にスケーリング値を定めるギアリングコントロールを有する、装置。
【請求項６８】
前記ギアリングは、前記コンピュータプログラムとのインタラクティビティ前に、インタラクティビティの間に、またはインタラクティビティの後に設定することができる、請求項６７記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項６９】
前記入力デバイスは、位置検出のための発光ダイオードを含むコントローラまたは手持ち式のオブジェクトである、請求項６７記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項７０】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムに前記アクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項６９記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項７１】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピュータプログラムによるアクションを引き起こすように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項６９記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項７２】
コンピュータゲームシステムとインタラクティブにインターフェースする方法であって、
前記コンピュータゲームシステムにより解釈される多チャンネルのミックスされた入力データを伝達する入力デバイスを提供するステップと、
前記コンピュータゲームシステムによって実行される、前記入力デバイスによって提供された前記多チャンネルのミックスされた入力データに対応づけられているアクションを識別するステップと、
前記コンピュータゲームシステムによって実行される前記アクションと、前記入力デバイスから受信した前記多チャンネルのミックスされた入力データ間にギアリングをかけるステップと、を含み、
前記ギアリングは、前記コンピュータゲームシステムによって実行される前記アクションに影響を与えるように調節をスケーリングする、方法。
【請求項７３】
前記アクションは、（ａ）前記コンピュータゲームシステムにより実行されたコンピュータゲームのオブジェクトにより、移動量を設定する（ｂ）処理を実行する変数を設定する（ａ）音声または振動に影響を及ぼす処理に対して変化率を設定する、または（ｃ）グラフィカルオブジェクトの移動の変化率を設定する、のうちの１つを含む、請求項７２記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項７４】
少なくとも周期的に前記多チャンネルのミックスされた入力データを分析するステップと、
少なくとも前記ギアリングによりアップデートされた変更を用いて、前記アクションを再度適用するステップと、を含む、請求項７２記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項７５】
前記ギアリングがアップデート済みであると判断された場合に、前記アップデートされたギアリングを、次のアクションの前に、または所定の期間において段階的に、前記アクションの処理を続行しながら適用する、請求項７４記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項７６】
前記ギアリングが調整済みの場合、前記調整済みのギアリングは（ａ）段階的に、（ｂ）漸進的に、または（ｃ）スムーズにかけられ、前記アクションに影響を与えるようにする、請求項７４記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項７７】
前記多チャンネルのミックスされた入力データは、前記入力デバイスの座標情報を識別するために分析され、前記座標情報は、前記対応付けによってベクトルデータに変換されて前記アクションに適用される、請求項７２記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項７８】
前記ベクトルデータは、前記ギアリングの調整に応じてスケーリングされる、請求項７７記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項７９】
前記ベクトルデータは、前記ベクトルデータを前記ギアリングにより定義されるギアリング量で掛けることによりスケーリングされる、請求項７７記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項８０】
前記入力デバイスは、前記入力デバイスの位置と通信データとを検出するように使用される複数の光源を含む、請求項７７記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項８１】
ユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステムであって、
コンピューティングシステムと、
前記コンピューティングシステムに結合されているか、または前記コンピューティングシステムにより実行される多チャンネルのミックスされた入力検出アナライザと、
前記コンピューティングシステムにより実行される前記コンピュータプログラムとインターフェースする入力デバイスを含み、前記入力デバイスは、前記入力デバイスで生成された多チャンネルのミックスされた入力データと、前記多チャンネルのミックスされた入力検出アナライザにより分析された前記コンピュータプログラムに適用されるアクションとの間にスケーリングを定めるギアリングコントロールを有する、システム。
【請求項８２】
前記ギアリングは、前記コンピュータプログラムの前記オブジェクトとのインタラクティビティ前に、インタラクティビティの間に、またはインタラクティビティの後に設定することができる、請求項８１記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項８３】
前記コンピュータプログラムは、インタラクティブアプリケーションである、請求項８１記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項８４】
前記インタラクティブアプリケーションは、ビデオゲームである、請求項８３記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項８５】
前記入力デバイスは、コントローラまたは手持ち式のオブジェクトである、請求項８３記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項８６】
前記コントローラまたは手持ち式のオブジェクトは、位置検出のための発光ダイオードを含む、請求項８５記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項８７】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムに前記アクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項８５記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項８８】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピュータプログラムによるアクションを引き起こすように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項８５記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項８９】
ユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置であって、
コンピューティングシステムにより実行される前記コンピュータプログラムとインターフェースする入力デバイスを含み、前記入力デバイスは前記コンピューティングシステムにより適用されるアクションに対応づけられた前記入力デバイスの多チャンネルのミックスされた入力データ間にスケーリング値を定めるギアリングコントロールを有する、装置。
【請求項９０】
前記ギアリングは、前記コンピュータプログラムとのインタラクティビティ前に、インタラクティビティの間に、またはインタラクティビティの後に設定することができる、請求項８９記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項９１】
前記入力デバイスは、位置検出のための発光ダイオードを含むコントローラまたは手持ち式のオブジェクトである、請求項８９記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項９２】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムに前記アクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項９１記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項９３】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピュータプログラムによるアクションを引き起こすように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項９１記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【発明の詳細な説明】
【技術分野】
【０００１】
ビデオゲーム産業は、長年にわたって多くの変化を経験してきた。演算能力が拡大するにつれ、ビデオゲームの開発者も同様に、この演算能力の増大を利用するゲームソフトウェアを作成してきている。
【背景技術】
【０００２】
このために、ビデオゲーム開発者は、極めてリアルなゲーム体験を生み出すべく、高度な演算と数学を採用したゲームをコーディングしてきた。
ゲームプラットフォームの例に、ソニープレイステーションまたはソニープレイステーション２（ＰＳ２）があり、これらはそれぞれ、ゲームコンソールの形で販売されている。周知のように、ゲームコンソールはモニタ（通常はテレビ）と接続されて、手持ち式のコントローラによってユーザとのインタラクションを可能にするように設計されている。ゲームコンソールは、ＣＰＵ、処理量の多いグラフィック操作のためのグラフィックシンセサイザ、ジオメトリ変換を実行するためのベクトル装置などの特化した処理ハードウェアと、その他の繋ぎとなるハードウェア即ちグルーハードウェア、ファームウェアおよびソフトウェアなどを備えて設計される。
また、ゲームコンソールは、ゲームコンソールによるローカルプレイを行うためにゲームのコンパクトディスクを受け容れるための光ディスクトレイを備えて設計される。また、ユーザが、インターネット上で他のユーザと対戦して、または、他のユーザと一緒にインタラクティブにプレイすることができるオンラインゲームも可能である。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ゲームが複合的なものであることがプレーヤの興味を引き続けていることから、ゲームのソフトウェアおよびハードウェアのメーカは更なるインタラクティブ機能を実現するために革新を続けてきている。しかし、実際は、ユーザがゲームとインタラクトする手法は、長年にわたって劇的には変わることはなかった。一般に、ユーザは、未だに、手持ち式のコントローラを使用してコンピュータゲームをプレイしたり、マウスポインティングデバイスを使用してプログラムとのインタラクションを行っている。前述を鑑みて、ゲームプレイにおいてより高度なユーザインタラクティビティを可能にする方法およびシステムが求められている。
【課題を解決するための手段】
【０００４】
概して、本発明は、コンピューティングシステムとのダイナミックなユーザインタラクティビティを可能にする方法、システムおよび装置を提供することによって、このニーズを満たす。一実施形態では、コンピューティングシステムはプログラムを実行しており、プログラムがインタラクティブなものとなっている。プログラムは、例えば、インタラクティブなオブジェクトやフィーチャを定義するビデオゲームであってもよい。インタラクティビティには、処理が実行される際の程度の調整を行うギアリング要素を調整する能力をユーザに与えることが含まれる。一実施形態では、ギアリングは、入力デバイスの移動量対コンピュータプログラムのオブジェクトやフィーチャが行う移動量間の相対移動に設定することができる。
【０００５】
別の実施形態では、ギアリングは、コンピュータプログラムのフィーチャに対して設定することができ、入力デバイスからの検出は、慣性アナライザの処理に基づくものであってもよい。この慣性アナライザは、慣性アクティビティに対する入力デバイスを追跡し、その情報をプログラムに伝達する。次に、プログラムは、慣性アナライザからの出力を処理して、出力にギアリング量をかけることができるようにする。ギアリング量は、プログラムがオペレーションを計算する際の程度または比率を決定する。オペレーションは任意の数の形態をとることができ、オペレーションの一例としては、ノイズ、可変ノイズ、オブジェクトが行う移動、または変数の生成、を挙げることができる。出力が変数であれば、この変数（例えば、乗数など）を使用してプロセスを完了するようにしてもよい。これにより、プロセスはギアリング量を考慮するようになる。ギアリング量は、ユーザが事前に設定しても動的に設定してもよく、または要求に応じて調整することができる。
【０００６】
一実施形態では、追跡は音響アナライザによって行うことができる。音響アナライザは入力デバイスから音響信号を受信するように構成され、実行されているコマンドやインタラクションにかけられるギアリング量を伝達することができる。音響アナライザは、コンピュータプログラムのセグメントの形態であってもよく、または、音響信号情報を処理するように設計された回路に特別に形成されたものであってもよい。したがって、音響信号情報は、プログラムによって動的に設定されるか、要求に応じて、（コントローラ上のボタン、音声コマンドなどを選択することによって）入力デバイスを介してユーザにより設定されるギアリングデータを含むことができる。
【０００７】
一実施形態では、入力デバイスの追跡は、画像アナライザを介してなされてもよい。以下に説明しているように、画像アナライザは、ユーザならびに入力デバイスが位置する空間の画像をキャプチャするカメラを備え得る。この例では、画像アナライザは、処理プログラムのフィーチャにそれぞれのアクションを行わせるように、コントローラの位置を決定している。プログラムはゲームであり、フィーチャは入力デバイスによって制御されているオブジェクトであってもよい。さらに、画像アナライザは、位置データを入力ギアリング値とミックスするように構成される。ギアリング値は、ユーザにより、実行において動的に与えられてもよく、あるいは、実行セッションのアクティビティに応じてプログラムにより設定されてもよい。ギアリング入力は、ユーザによる入力ジェスチャやアクションに基づいて、コンピュータプログラムによる幾分かの処理に相対的インパクトを設定する。一実施形態では、ギアリングは、ユーザやユーザ入力デバイスからのコマンドやアクションをプログラムのフィーチャに変換する。プログラムのフィーチャは可視オブジェクトでなくてもよいが、音声、振動または画像の移動のいずれかのパラメータ、予測、あるいは変換を幾分か計算するように使用される変数の調整を含むことができる。したがって、ギアリングは、プログラムとプログラムのフィーチャ間に与えられるインタラクティビティを制御するための更なる意味を付加することになる。さらに別の実施形態では、ミキサアナライザが提供される。このミキサアナライザは、ゲームのフィーチャにハイブリッド効果をもたらすように設計される。例えば、ミキサアナライザは、画像アナライザ、音響アナライザ、慣性アナライザなどの組合せからの入力を扱う。したがって、一実施形態では、このミキサアナライザはいくつかのギアリング変数を受信する。これらの変数は混合ならびに合成されて、プログラムのフィーチャとのハイブリッドな結果、コマンド、あるいはインタラクションをもたらす。同様に、プログラムのフィーチャは視覚オブジェクトならびに非視覚オブジェクト、移動の処理に使用する変数、可聴反応に対する調節などを含むものと広く理解されるべきである。
【０００８】
１つの特定の例では、ユーザのコントローラによる移動をゲームのフィーチャ上の移動またはアクションに変換する量の少なくとも一部は設定された、あるいは決定されたギアリングに関係する。ギアリングは、ゲームに対して動的に設定もしくは事前に設定されてもよく、あるいはゲームのプレイ中にユーザによって調整されてもよい。さらに、この反応は、ビデオゲームのオブジェクトもしくはフィーチャに対応づけられ、別のレベルのユーザインタラクティビティと強化した体験とを与えることができる。
【０００９】
本発明は、プロセス、装置、システム、デバイスまたは方法など、多くの方法で実装することができる点を理解されたい。以下に本発明のいくつかの発明の実施形態を記載する。
【００１０】
一実施形態では、コンピュータゲームシステムとインタラクティブにインターフェースする方法が提供される。このコンピュータゲームシステムは、画像データをキャプチャするビデオキャプチャ装置を含む。上記方法において、入力デバイスがビデオキャプチャ装置に表示され、入力デバイスは、変調される複数の光源を有しており、この入力デバイスの位置と、キャプチャしたデータ分析ならびに複数の光源の状態に基づくコンピュータゲームシステムにより解釈される通信データとが伝達される。さらに上記方法において、コンピュータゲームシステムにより実行されるコンピュータゲームのオブジェクトの移動つまりムーブメントや動き、動作が定義される。これにより、オブジェクトの移動は、キャプチャした画像データで検出した入力デバイスの位置における移動あるいは移動や動作に対応づけられる。次に、上記方法において、コンピュータゲームのオブジェクトの移動と、入力デバイスの位置における移動あるいは移動と、の間のギアリングが定められる。ギアリングは、入力デバイスの移動とオブジェクトの移動との間の比率を定める。ギアリングは、ゲームやユーザにより動的に設定されてもよいし、ソフトウェアまたはギアリングアルゴリズムに従って配置されたユーザにより事前に設定されてもよい。
【００１１】
別の実施形態では、コンピュータゲームシステムとインタラクティブにインターフェースする方法が開示されている。コンピュータゲームシステムは、画像データをキャプチャするビデオキャプチャ装置を含む。上記方法にいおいて、入力デバイスがビデオキャプチャ装置に表示される。これにより、入力デバイスの位置と、キャプチャした画像データ分析に基づくコンピュータゲームシステムにより解釈される通信データとが伝達される。次に、上記方法において、コンピュータゲームシステムにより実行されるコンピュータゲームのオブジェクトの移動が定義され、さらに、このオブジェクトの移動がキャプチャした画像データで検出した入力デバイスの移動に対応づけられる。次に、上記方法において、コンピュータゲームのオブジェクトの移動対入力デバイスの移動間のギアリングが定められる。ギアリングは、入力デバイスの移動とオブジェクトの移動との間における、ユーザにより調節可能な比率を定める。
【００１２】
さらに別の実施形態では、コンピュータゲームシステムとインタラクティブにインターフェースするプログラム命令を含む、コンピュータ可読媒体が提供される。コンピュータゲームシステムは、画像データをキャプチャするビデオキャプチャ装置を含む。コンピュータ可読媒体は、入力デバイスの表示をビデオキャプチャ装置に検出するプログラム命令を含む。入力デバイスは、入力デバイスの位置とキャプチャした画像データ分析に基づくコンピュータゲームシステムによって解釈される通信データを伝達する。さらに、コンピュータ可読媒体は、コンピュータゲームシステムにより実行されるコンピュータゲームのオブジェクトの移動を定義するプログラム命令を含み、オブジェクトの移動は、キャプチャした画像データで検出した入力デバイスの移動に対応づけられる。さらに、コンピュータ可読媒体は、コンピュータゲームのオブジェクトの移動と入力デバイスの移動との間のギアリングを定めるプログラム命令を含み、ギアリングは入力デバイスの移動とオブジェクトの移動との間のユーザにより調節可能な比率を定める。ユーザにより調節可能な比率は、ゲームのプレイ中、ゲームプレイセッション前、あるいはゲーム中のある特定のアクションイベント中に動的に変更することができる。
【００１３】
さらに別の実施形態では、ユーザのアクションと、コンピュータプログラムのオブジェクトにより実施されるアクションとの間に動的なユーザインタラクティビティを可能にするシステムが提供される。上記システムは、コンピューティングシステム、コンピューティングシステムに結合されたビデオキャプチャ装置、コンピューティングシステムから入力を受信するディスプレイを備える。さらに、上記システムは、コンピューティングシステムにより実行されるコンピュータプログラムとインターフェースする入力デバイスを備える。入力デバイスは、対応付けられた入力デバイスと制御されるオブジェクトの移動との間の比率を定めるギアリングコントロールを有する。オブジェクトは、コンピュータプログラムにより定義されており、コンピューティングシステムにより実行される。入力デバイスの移動はビデオキャプチャ装置により識別される。また、ディスプレイに表示されたオブジェクトの移動は、入力デバイスのギアリングコントロールにより設定された、設定されたギアリング値を有する。この実施形態では、入力デバイスと対応づけられたギアリングを一般のアプリケーションに適用してもよく、ゲームに対して適用することが必須であるわけではない。
【００１４】
さらに別の実施形態では、ユーザのアクションと、コンピュータプログラムのオブジェクトにより実施されるアクション間に動的なユーザインタラクティビティを可能にする装置が提供されている。この装置には、コンピューティングシステムにより実行されるコンピュータプログラムとインターフェースする入力デバイスを含む。入力デバイスは、制御されるオブジェクトの移動に対応づけられた入力デバイスの移動間の比率を定めるギアリングコントロールを有する。オブジェクトはコンピュータプログラムにより定義されており、コンピューティングシステムにより実行され、入力デバイスの移動は、ビデオキャプチャ装置により識別され、オブジェクトの移動は、入力デバイスのギアリングコントロールによって設定された、設定されたギアリング値を有するものとしてディスプレイに表示される。
【００１５】
別の実施形態では、コンピュータプログラムのフィーチャにギアリングをかけることができ、入力デバイスからの検出は慣性アナライザの処理に基づくものであってもよい。慣性アナライザは、慣性アクティビティに対する入力デバイスを追跡し、その情報をプログラムに伝達する。次に、プログラムは、慣性アナライザからの出力を扱い、出力にギアリング量をかけることができるようにする。ギアリング量は、プログラムがオペレーションを計算する際の程度または比率を決定する。オペレーションは任意の数の形態をとることができ、その一例としては、ノイズ、可変ノイズ、オブジェクトが行う移動、または変数の生成を挙げることができる。
【００１６】
出力が変数であれば、この変数（例えば、乗数など）を使用してプロセスを完了するようにしてもよい。これにより、プロセスはギアリング量を考慮するようになる。ギアリング量は、ユーザが事前に設定しても動的に設定してもよく、または要求に応じて調整することができる。一実施形態では、追跡は音響アナライザによって行うことができる。音響アナライザは入力デバイスから音響信号を受信するように構成され、実行されているコマンドやインタラクションにかけられるギアリング量を伝達することができる。音響アナライザは、コンピュータプログラムのセグメントの形態であってもよく、または、音響信号情報を処理するように設計された回路に特別に形成されたものであってもよい。したがって、音響信号情報は、プログラムによって動的に設定されるか、要求に応じて、（コントローラ上のボタン、音声コマンドなどを選択することによって）入力デバイスを介してユーザにより設定されるギアリングデータを含むことができる。さらに別の実施形態では、ミキサアナライザが提供される。
【００１７】
このミキサアナライザは、ゲームのフィーチャにハイブリッド効果をもたらすように設計される。例えば、ミキサアナライザは、画像アナライザ、音響アナライザ、慣性アナライザなどの組合せからの入力を扱う。
したがって、一実施形態では、このミキサアナライザはいくつかのギアリング変数を受信する。これらの変数は混合ならびに合成されて、プログラムのフィーチャとのハイブリッドな結果、コマンド、あるいはインタラクションをもたらす。同様に、プログラムのフィーチャは視覚オブジェクトならびに非視覚オブジェクト、オペレーションの処理に使用する変数、可聴反応に対する調節などを含むものと広く理解されるべきである。本発明の利点は、例示のために本発明の原理を示す添付の図面と併せて、以下の詳細な説明を読めば明らかとなるであろう。
【発明を実施するための最良の形態】
【００１８】
本発明は添付の図面と併せて以下の詳細な説明を読めば容易に理解できるであろう。図面においては、同じ構造要素には同じ参照符号を付した。以下の説明では、本発明を完全に理解できるように、具体的な詳細を数多く記載する。しかし、これらの詳細な内容の一部または全てを用いなくとも本発明を実施し得ることは当業者にとって自明である。場合によっては、本発明を不必要にわかりにくくしないように、公知のプロセス操作については詳しく記載しない。
【００１９】
本明細書に記載する技術は、コンピュータプログラムとのインタラクションを行うために、アクティブにギアリング（gearing）がかけられた入力を与えるように使用することができる。ギアリングをかえることは、一般に広い意味では、大きさおよび／あるいは時間において程度を様々に異なるものとすることができる入力であるとして定義できる。ギアリングの程度がコンピューティングシステムに伝達される。ギアリングの程度がコンピューティングシステムにより実施されるプロセスにかけられる。例えるならば、プロセスは、入出力を備えた流体のバケツとイメージすることができる。この流体のバケツは、システム上で実行中のプロセスである。よって、ギアリングは、コンピューティングシステムによって実行される処理の形態を制御する。一例では、ギアリングは、バケツに入っていく流体の滴と考えられる入力量に対して、流体のバケツから出ていく速度を制御することができる。したがって、充てんならびに排水速度は動的であり、この排水速度はギアリングによる影響を受ける。よって、ゲームプログラムなどのプログラムに流れている変化値を調整するように、ギアリングを調整または時間設定することができる。
【００２０】
さらに、ギアリングは、移動データカウンタなどのカウンタに影響を及ぼし、プロセッサによるアクション、つまりは、ゲーム素子、オブジェクト、プレーヤ、キャラクタなどが行うアクションを制御する。この例をより具体的な計算例にしてみると、流体が出ていく速度は、コンピュータプログラムのフィーチャによって、いくらかの入力とギアリングに応じて制御がなされる速度、または制御が行われる速度である。このコンピュータプログラムのフィーチャは、オブジェクト、プロセス、変数、あるいは所定の／カスタムアルゴリズム、キャラクタ、ゲームプレーヤ、マウス（二次元もしくは三次元）などであってもよい。ギアリングによって変更され得た処理結果は、任意の数の方法でオブザーバに伝達することができる。
【００２１】
このような方法としては、ディスプレイ画面上で視覚的に伝達する方法、音声を介して可聴的に伝達する方法、手触りによる振動音響によって伝達する方法、これらの組合せによって伝達する方法、または、単にゲームやプログラムのインタラクティブエレメントに対する処理の反応を修正することで伝達する方法が挙げられる。入力は、（１）画像分析（２）慣性分析（３）音響分析あるいは、（１）（２）（３）のハイブリッドミックス分析を介して実行される追跡により取得することができる。画像分析ならびに適用されるギアリングに関しては様々な例が挙げられているが、追跡はビデオによる方法に限らず、様々な方法によって、具体的には、慣性分析、音響分析、これらをミックスしたものにより、および適切なアナライザによって行うことができることを理解されたい。
【００２２】
各種実施形態においては、ビデオカメラ（例えば、画像分析）を有するコンピュータあるいはゲームシステムは、画像データを処理し、焦点ゾーンあるいは所定の場所（ビデオカメラの前であってもよい）で行われている様々なアクションを識別する。一般的に、そのようなアクションとして、三次元空間でのオブジェクトの移動や回転、または、ボタン、ダイアル、ジョイスティックなどの様々なコントロールのアクチュエーションを挙げることができる。これらの技術に加えて、本発明の技術はさらに、本明細書ではギアリングと呼ばれるスケーリング因子を調整するさらなる機能を与え、ディスプレイ画面の１つ以上の対応するアクションやプログラムのフィーチャに対する入力に対して感度を調整するようにする。例えば、ディスプレイ画面のアクションは、ビデオゲームの焦点となり得るオブジェクトであってもよい。さらに、オブジェクトは、変数、乗数、または計算などのプログラムのフィーチャとすることもでき、音声、振動、ディスプレイ画面の画像、またはこれらとの組合せで表現され、さらに、ギアリングがかけられた出力の他の表現と組合せて表現される。
【００２３】
別の実施形態では、コンピュータプログラムのフィーチャにギアリングをかけることができ、入力デバイスの検出は慣性アナライザによる処理に基づくものであってもよい。慣性アナライザは、慣性アクティビティに対する入力デバイスを追跡し、その情報をプログラムに伝達する。
次に、プログラムは、慣性アナライザからの出力を扱い、出力にギアリング量をかけることができるようにする。ギアリング量は、プログラムがオペレーションを計算する際の程度または比率を決定する。オペレーションは任意の数の形態をとることができ、オペレーションの一例としては、ノイズ、可変ノイズ、オブジェクトの移動、または変数の生成、視覚および／あるいは可聴結果を出力するプログラムによる計算、を挙げることができる。出力が変数であれば、この変数を使用してプロセスを完了するようにしてもよい。これにより、プロセスはギアリング量を考慮するようになる。ギアリング量は、ユーザが事前に設定しても動的に設定してもよく、または要求に応じて調整することができる。
【００２４】
様々なタイプの慣性センサを使用して、６つの自由度（例えば、Ｘ、ＹおよびＺ軸方向の変換（例えば、加速度）およびＸ、ＹおよびＺ軸を中心とした回転）についての情報を提供することができる。６自由度についての情報を提供する適切な慣性センサーの例としては、加速度計、１つ以上の１軸加速度計、機械的ジャイロスコープ、リングレーザジャイロスコープ、あるいはこれらの２つ以上の組合せを挙げることができる。
【００２５】
センサーからの信号が分析されて、発明の方法に従うビデオゲームのプレイ中に、コントローラの動きおよび／あるいは方向が決定される。そのような方法は、プロセッサ読み取り可能媒体に記憶され、デジタルプロセッサ上で実行されるプログラムコード命令を実行可能な一連のプロセッサとして実装されてもよい。例えば、ビデオゲームシステムは１つ以上のプロセッサを備えることができる。各プロセッサは、例えばビデオゲームコンソールやカスタム設計のマルチプロセッサコアに通常使用されるマイクロプロセッサのような、デジタルプロセッサ装置であってもよい。一実施形態では、プロセッサは、プロセッサ読み取り可能命令の実行を通じて、慣性アナライザを実装してもよい。命令の一部はメモリに記憶されてもよい。
【００２６】
他の形態では、慣性アナライザは、例えば特定用途向け集積回路（ＡＳＩＣ）として、またはデジタルシグナルプロセッサ（ＤＳＰ）としてハードウェアに実装されてもよい。そのようなアナライザハードウェアは、コントローラまたはコンソール上に設けられるか、または遠隔の場所に設けられてもよい。ハードウェアでの実装では、アナライザは、例えばプロセッサからの外部信号、または、例えばＵＳＢケーブル、イーサネットにより、ネットワーク、インターネット、短距離無線接続、広帯域無線、ブルートゥース、またはローカルネットワークを介して接続される他の遠隔にあるソースからの外部信号に応じて、プログラム可能であってもよい。
【００２７】
慣性アナライザは、慣性センサにより生成される信号を分析する命令を備えるか実装し、コントローラの位置および／または方向に関する情報を利用してもよい。慣性センサ信号が分析されて、コントローラの位置および／または方向に関する情報を決定してもよい。この位置および／あるいは方向情報は、ビデオゲームのプレイ中にシステムとともに利用されてもよい。
【００２８】
一実施形態では、ゲームコントローラは、慣性信号を介して位置情報および／または方向情報をプロセッサに提供できる１つ以上の慣性センサを備えてもよい。方向情報には、コントローラの傾き、ロールあるいはヨーなどの角度情報が含まれてもよい。上述のように、また、一例として、慣性センサには、任意の数の加速度計、ジャイロスコープまたは傾斜センサ、またはこれらの任意の組合せが含まれていてもよい。一実施形態では、慣性センサには、傾斜およびロール軸に対するジョイスティックコントローラの方向を検知するように構成された傾斜センサと、ヨー軸沿いの加速度を検知するように構成された第１の加速度計、およびヨー軸に対する角加速度を検知するように構成された第２の加速度計を備える。加速度計は、例えば、１つ以上のばねで取り付けられた質量と１つ以上の方向に対する質量の変位を検知するセンサとを備えるＭＥＭＳ装置として実装されてもよい。質量の変位に依存するセンサからの信号は、ジョイスティックコントローラの加速度決定に用いられてもよい。そのような技術は、メモリに記憶されプロセッサによって実行されるゲームプログラムや一般のプログラムからの命令によって実現される。
【００２９】
一例では、慣性センサーとして適切な加速度計は、例えばばねなどでフレームに３〜４点で伸縮自在に接続された単一の質量であってもよい。ピッチ軸とロール軸は、ジョイスティックコントローラに設けられたフレームと交差する面に存在する。フレーム（およびジョイスティックコントローラ）がピッチ軸、ロール軸の回りを回転するにつれて、質量が重力の影響下で変位し、ばねがピッチ角および／あるいはロール角に依存した態様で伸縮する。質量の変位が検知され、ピッチ量および／あるいはロール量に依存した信号に変換される。ヨー軸回りの角加速度またはヨー軸沿いの線形加速度は、ばねの伸縮または質量の動きの特徴的なパターンを生成し、それらのパターンは検知されて角加速度量または線形加速度の量に応じた信号に変換される。このような加速度装置は、質量の動きおよびばねの伸縮力を追跡することによって傾斜、ヨー軸回りのロール角加速度とおよびヨー軸沿いの線形加速度を計測できる。質量の位置および／あるいはそれに働く力を追跡する方法には多くの違った方法があり、それらには、抵抗ひずみゲージ材料、光センサ、磁気センサ、ホール効果素子、圧電素子、容量センサなどが含まれる。
【００３０】
さらに、光源は、例えば、パルスコード、振幅変調または周波数変調フォーマットでテレメトリ信号をプロセッサに提供してもよい。そのようなテレメトリ信号は、いずれのジョイスティックボタンが押されているか、および／またはどれ位強くボタンが押されているかを表してもよい。テレメトリ信号は、例えばパルス符号化、パルス幅変調、周波数変調または光強度（振幅）変調などによって、光信号に符号化されてもよい。プロセッサは、光信号からテレメトリ信号を復号化し、復号化されたテレメトリ信号に応じてゲームコマンドを実行してもよい。テレメトリ信号は、画像キャプチャ装置で得られたジョイスティックの画像の分析から復号化されてもよい。他の形態では、装置は、光源からのテレメトリ信号受信専用の、独立した光学センサを備えることができる。
【００３１】
プロセッサは、画像キャプチャ装置で検出された光源からの光信号、および／あるいは、マイクロホン配列によって検出された音響信号からの音源場所と音源特性情報とともに、慣性センサからの慣性信号を用いて、コントローラおよび／あるいはそのユーザの場所および／あるいは方向に関する情報を推測してもよい。例えば、「音響レーダ」の音源場所およびその特性は、マイクロフォン配列と共に用いられて、ジョイスティックコントローラの動きが（慣性センサおよび／または光源を通じて）独立に追跡されている間、移動音源を追跡する。音響レーダでは、較正済み聴取領域が実行時間において選択され、較正済み聴取領域以外の音源から生じる音声が除去される。較正済み聴取領域は、画像キャプチャ装置の焦点または視野にある音量に対応した聴取領域を含んでいてもよい。
【００３２】
一実施形態では、音響アナライザによって追跡を行ってもよい。音響アナライザは入力デバイスからの音響信号を受信するように構成され、実行されるコマンドやインタラクションにかけられるギアリング量を伝達することができる。音響アナライザは、コンピュータプログラムセグメントの形態であってもよく、または、音響信号情報を処理するように設計された回路上に特別に形成されたものであってもよい。したがって、音響信号情報は、プログラムによって動的に設定されるか、要求に応じて、（コントローラ上のボタン、音声コマンドなどを選択することによって）入力デバイスを介してユーザにより設定されるギアリングデータを含むことができる。例えば、音声アナライザは、その開示内容が参照により本明細書に援用される、２００６年５月４日に出願された米国特許出願"SELECTIVE SOUND SOURCE LISTENING IN CONJUNCTION WITH COMPUTER INTERACTIVE PROCESSING"(発明者：Xiadong Mao, Richard L. Marks and Gary, M. Zalewski、代理人整理番号：SCEA04005JUMBOUS)に記載されている。これらアナライザはマッピングチェーンを用いて構成することができる。マッピングチェーンは、アナライザやミキサに対する設定ができるように、ゲームプレイ中にゲームによって交換することができる。
【００３３】
一実施形態では、入力デバイスの追跡は画像アナライザによるものであってもよい。以下に説明しているように、画像アナライザは、ユーザならびに入力デバイスが位置する空間の画像をキャプチャするカメラを備え得る。この例では、画像アナライザは、処理プログラムのフィーチャにそれぞれのアクションを行わせるように、コントローラの位置を決定している。プログラムはゲームであり、フィーチャは入力デバイスによって制御されているオブジェクトであってもよい。さらに、画像アナライザは、位置データを入力ギアリング値とミックスするように構成される。ギアリング値は、ユーザにより、実行中に動的に与えられてもよく、または、実行セッションのアクティビティに応じてプログラムにより設定されてもよい。ギアリング入力は、ユーザによる入力ジェスチャやアクションに基づいて、コンピュータプログラムによる幾分かの処理に相対的インパクトを設定する。一実施形態では、ギアリングは、ユーザやユーザ入力デバイスからのコマンドやアクションをプログラムのフィーチャに変換する。プログラムのフィーチャは可視オブジェクトでなくてもよいが、音声、振動または画像の移動のいずれかのパラメータ、予測、あるいは変換を幾分か計算するように使用される変数の調整を含むことができる。 したがって、ギアリングは、プログラムとプログラムのフィーチャ間に与えられるインタラクティビティを制御するための更なる意味を付加することになる。
【００３４】
さらに別の実施形態では、ミキサアナライザが提供される。このミキサアナライザはゲームのフィーチャにハイブリッド効果をもたらすように設計される。例えば、ミキサアナライザは、画像アナライザ、音響アナライザ、慣性アナライザなどの組合せからの入力を扱う。したがって、一実施形態では、このミキサアナライザは、いくつかのギアリング変数を受信する。次に、これらの変数は混合ならびに合成されて、プログラムのフィーチャとのハイブリッドな結果、コマンド、あるいはインタラクションをもたらす。同様に、プログラムのフィーチャは視覚オブジェクトならびに非視覚オブジェクト、オペレーションの処理に使用する変数、可聴反応に対する調節などを含むものと広く理解されるべきである。
【００３５】
図１は、本発明の一実施形態によるインタラクティブ（対話型）ゲーム構成１００を示す。インタラクティブゲーム構成１００は、コンピュータ１０２（本明細書では「コンソール」とも呼ぶ）を有し、これは、ディスプレイ画面１１０と接続されうる。ディスプレイ画面１１０の上には画像キャプチャ装置１０５が置かれ、コンピュータ１０２と接続されうる。コンピュータ１０２は、一実施形態では、ユーザが、コントローラ１０８によってゲームをプレイしたり、ビデオゲームとインタフェースすることができるゲームシステムのコンソールであってもよい。コンピュータ１０２は、インタラクティブなオンラインゲームをすることができるように、インターネットにも接続されうる。画像キャプチャ装置１０５は、ディスプレイ画面１１０の上に置かれて示されているが、画像キャプチャ装置１０５が、ディスプレイ画面１１０のほぼ前方にある画像をキャプチャできれば、ほかの近くの位置に置かれていてもよいことが理解されよう。これらの移動およびインタラクションをキャプチャするための技術は変更し得るが、例示的な技術は、それぞれ２００３年２月２１日に出願された英国特許出願公開第０３０４０２４．３号明細書（国際公開第ＧＢ２００４／０００６９３号パンフレット）および英国特許出願公開第０３０４０２２．７明細書（国際公開第ＧＢ２００４／０００７０３号パンフレット）号に記載されており、これらの各々は参照によりここに援用される。
【００３６】
一実施形態では、画像キャプチャ装置１０５は、標準的なウェブカムのように単純なものであっても、あるいは高度な技術を備えたものであってもよい。画像キャプチャ装置１０５は、画像をキャプチャし、この画像をデジタル化して、画像データをコンピュータ１０２に送信することができる。一部の実施形態では、デジタル化を実行するための論理回路が、画像キャプチャ装置の内部に組み込まれていてもよく、別の実施形態では、画像キャプチャ装置１０５が、デジタル化のために、アナログビデオ信号をコンピュータ１０２に送信してもよい。いずれの場合も、画像キャプチャ装置１０５は、画像キャプチャ装置１０５の前方にある任意のオブジェクトの、カラー画像または白黒画像をキャプチャすることができる。
【００３７】
図２は、画像キャプチャおよび処理システムを使用した例示的なコンピュータインタラクション処理を示している。コンピュータ１０２は、視野２０２から画像を生成する画像キャプチャ装置１０５から画像データを受信する。視野２０２には、おもちゃの飛行機のオブジェクト２１５を操作するユーザ２１０が含まれる。オブジェクト２１５は、画像キャプチャ装置１０５から視覚的に認識可能な複数のＬＥＤ２１２を含む。ＬＥＤ２１２は、オブジェクト２１５の位置情報および姿勢情報を提供する。さらに、オブジェクト２１５は、コンピュータの入力を生成するために、ボタン、トリガ、ダイアルなどの１つ以上の操作素子を含む。さらに、音声コマンドが使用されうる。一実施形態では、オブジェクト２１５は、画像キャプチャ装置１０５を介してデータをコンピュータ１０２に送信するために、ＬＥＤ２１２を変調する論理を含む回路２２０を含む。データは、操作手段の変調に応えて生成される符号化されたコマンドを含む。
【００３８】
オブジェクト２１５が画像キャプチャ装置１０５により、視覚的に認識可能な３次元空間で移動ならびに回転されると、画像データ中に表されるＬＥＤの位置は、以下の図３〜６に関して説明しているように、３次元空間内の座標に変換される。この座標は、α、β、およびγ値に関する姿勢情報に加えて、ｘ、ｙ、およびｚ座標に関する位置情報を説明したものである。この座標はコンピュータのアプリケーションに送信される。このアプリケーションは、おもちゃの飛行機がディスプレイ１１０に、現実の、あるいは動画の飛行機２１５’として表示される飛行機ゲームであってもよく、飛行機２１５’はおもちゃの飛行機２１５の変調に応えて様々なスタントを行うことができる。他の形態では、ユーザ２１０は、おもちゃの飛行機２１５ではなくコントローラ１０８（図１に示す）を扱うこともでき、コントローラ１０８の移動は追跡可能であり、ディスプレイ画面でオブジェクトを移動させるようにコマンドがキャプチャされる。
【００３９】
一実施形態では、ユーザ２１０はさらに、動画の飛行機２１５’とのインタラクティビティの程度を変更あるいは修正するように選択することができる。インタラクティビティの程度は、ユーザ２１５が「ギアリング」構成要素を調整できるようにすることで変更することができる。このギアリング構成要素は、ユーザのコントローラ１０８（あるいは、おもちゃの飛行機２１５）による移動が動画の飛行機２１５’による移動に対応づけられる量を調整するものである。ゲームに対して動的に設定もしくは事前に設定され、あるいは、ユーザ２１０によるゲームのプレイ中に調整されるギアリングに応じて、動画の飛行機２１５’（例えば、ビデオゲームオブジェクト）に対応づけられる反応が変化し、別のレベルのユーザインタラクティビティと強化した体験とを与えることができる。ギアリングに関する詳細は、以下に図７〜２０に関連して説明する。
【００４０】
図３は、本発明の実施形態を実装するために使用できる、グラフィックディスプレイ上のオブジェクトとのインタラクト処理を行うための例示的なユーザ入力システムのブロック図である。図３に示すように、ユーザ入力システムは、ビデオキャプチャ装置３００、入力画像プロセッサ３０２、出力画像プロセッサ３０４、およびビデオ表示装置３０６から構成される。ビデオキャプチャ装置３００は、ビデオ画像のシーケンスをキャプチャすることができる装置であればどのようなものでもよく、一実施形態では、デジタルビデオカメラ（ウェブカメラなど）や同様の画像キャプチャ装置などである。
【００４１】
ビデオキャプチャ装置３００は、深度画像を提供するように構成されうる。本明細書では、「深度カメラ」および「三次元カメラ」との文言は、二次元のピクセル情報のほか、距離情報すなわち深度情報を取得することができる任意のカメラを指す。例えば、深度カメラは、制御された赤外線照明を利用して、距離情報を取得することができる。他の例示的な深度カメラに、立体カメラ対があり、これは２台の基準カメラを使用して距離情報を三角測量によって求める。同様に、「深度検知装置」との文言は、二次元のピクセル情報のほかに、距離情報を取得することができる任意のタイプの装置を指す。
【００４２】
このため、カメラ３００は、通常の二次元のビデオ像に加えて、３番目の次元をキャプチャおよびマップする能力を提供することができる。通常のカメラと同様に、深度カメラは、ビデオ画像を構成している複数のピクセルの二次元のデータをキャプチャする。これらの値は、ピクセルの色の値であり、通常は、各ピクセルの赤、緑、青（ＲＧＢ）の値である。このようにして、カメラによってキャプチャされたオブジェクトが、モニタに二次元オブジェクトとして表示される。しかし、従来のカメラとは異なり、深度カメラは、シーンの深度値を表すシーンのｚ成分もキャプチャする。通常、深度値はｚ軸に割り当てられるため、深度値は、「ｚ値」と呼ばれることも多い。
【００４３】
オペレーションにおいては、シーンの各ピクセルについてｚ値がキャプチャされる。各ｚ値は、カメラから、シーン内の関連するピクセルに対応するオブジェクトまでの距離を表している。また、最大検出範囲が、深度値が検出されなくなる境界を定義しうる。本発明の各種実施形態では、この最大範囲の面を使用して、ユーザ定義のオブジェクトのトラッキングを提供することができる。このため、深度カメラを使用することで、それぞれのオブジェクトを三次元でトラッキングすることができる。この結果、本発明の実施形態のコンピュータシステムは、二次元のピクセルデータと合わせてｚ値を利用して、強化された三次元のインタラクティブ環境をユーザのために作成することができる。深度分析の詳細については、２００３年５月２９日出願の米国特許出願第１０／４４８,６１４号明細書「リアルタイムの三次元インタラクティブ環境を提供するためのシステムおよび方法（System and Method for Providing a Real-time three dimensional interactive environment）」を参照されたい。同文献を参照によりここに援用する。
【００４４】
深度カメラは、一実施形態に従って使用され得るが、三次元空間におけるオブジェクトの位置ならびに座標の場所を識別するために必要とされるものと解釈されてはならない。例えば、図２に描いたシナリオでは、オブジェクト２１５とカメラ１０５間の距離は、最左ＬＥＤ２１２と最右ＬＥＤ２１２の距離を測定することにより、推測することができる。画像キャプチャ装置１０５によって生成される画像において、ＬＥＤ２１２それぞれの距離が近いほど、オブジェクト２１５はカメラ１０５から離れている。したがって、一般のデジタルカメラによって生成される二次元画像から、ｚ軸座標をかなり正確に推測することができる。
【００４５】
図３に戻ると、入力画像プロセッサ３０２は、キャプチャされた制御オブジェクトのビデオ画像（深度画像など）を信号に変換し、この信号が出力画像プロセッサに送られる。一実施形態では、入力画像プロセッサ３０２は、キャプチャされたビデオ画像の背景から、深度情報によって制御オブジェクトを分離し、制御オブジェクトの位置および／または移動に応じた出力信号を発生させるようにプログラムされる。出力画像プロセッサ３０４は、入力画像プロセッサ３０２から受け取った信号に応じて、ビデオ表示装置３０６に表示したオブジェクトの並進移動および／または回転移動を変更するようにプログラムされうる。本発明のこれらの態様やその他の態様は、ソフトウェア命令を実行する１つ以上のプロセッサによって実装され得る。本発明の一実施形態によれば、１つのプロセッサが入力画像処理と出力画像処理の両方を実行する。しかし、図に示すように、説明を容易にするために、オペレーション処理が、入力画像プロセッサ３０２と出力画像プロセッサ３０４に分けられるものとして説明する。本発明が、特定のプロセッサの構成（複数プロセッサなど）に限定されると解釈すべきではないことを留意すべきである。図３の複数の処理ブロックは、説明の便宜上、示したに過ぎない。
【００４６】
図４は、本明細書に記載した本発明の各種実施形態を実装するように構成されたコンピュータ処理システムの簡略ブロック図である。この処理システムは、メインメモリ４２０とグラフィック処理ユニット（ＧＰＵ）４２６に結合された中央処理装置（ＣＰＵ）４２４を備えた、コンピュータベースのエンターテイメントシステムの実施形態であってもよい。ＣＰＵ４２４は、入出力プロセッサ（Input/Output Processor：ＩＯＰ）バス４２８にも結合される。一実施形態では、ＧＰＵ４２６は、ピクセルベースのグラフィックデータを高速に処理するために内部バッファを備える。更に、ＧＰＵ４２６は、エンターテイメントシステムまたはその構成要素の外部に接続された表示装置４２７に送信するために、画像データを処理して、例えばＮＴＳＣやＰＡＬなどの標準のテレビジョン信号に変換する出力処理部またはその機能を備えうる。別の実施形態では、データ出力信号が、コンピュータモニタ、ＬＣＤ（液晶ディスプレイ）装置やその他のタイプの表示装置などのテレビジョンモニタ以外の表示装置に供給されてもよい。
【００４７】
ＩＯＰバス４２８は、ＣＰＵ４２４を、各種の入出力装置、または他のバスやデバイスに接続している。ＩＯＰバス４２８は、入出力プロセッサメモリ４３０、コントローラ４３２、メモリカード４３４、ユニバーサルシリアルバス（ＵＳＢ）ポート４３６、ＩＥＥＥ１３９４（Firewireインタフェースとも呼ばれる）ポート４３８、およびバス４５０に接続される。バス４５０は、システムの他のいくつかの構成要素をＣＰＵ４２４に接続しており、このような構成要素には、オペレーティングシステム（ＯＳ）ＲＯＭ４４０、フラッシュメモリ４４２、音声処理ユニット（ＳＰＵ）４４４、光ディスク制御４、ハードディスクドライブ（ＨＤＤ）４４８がある。この実施形態の一態様では、ビデオキャプチャ装置は、ＩＯＰバス４２８に直結されていてもよく、これを介してＣＰＵ４２４に送信を行っており、ＣＰＵ４２４では、ビデオキャプチャ装置からのデータを使用して、ＧＰＵ４２６でグラフィック画像の生成に使用される値が変更または更新される。
【００４８】
更に、本発明の各種実施形態は、画像処理のさまざまな構成および技術を使用することができ、これには、２００３年２月１１日出願の米国特許出願第１０／３６５,１２０号明細書「リアルタイムのモーションキャプチャのための方法および装置（METHOD AND APPARATUS FOR REAL TIME MOTION CAPTURE）」に記載されたものなどがある。同文献を参照によりその全体をここに援用する。コンピュータ処理システムは、ＣＥＬＬ（登録商標）プロセッサで実行されうる。図５は、本発明の一実施形態に係る代替入力デバイスとして機能する操作用オブジェクトとの併用に適合されたビデオゲームコンソールの各種構成要素の構成を示すブロック図である。例示的なゲームコンソール５１０は、コンソール５１０全体を制御するためのマルチプロセッサユニット（ＭＰＵ）５１２、プログラムの各種オペレーションおよびデータ保存に使用されうるメインメモリ５１４、幾何学処理に必要な浮動小数点のベクトル演算を実行するベクトル演算ユニット５１６、ＭＰＵ５１２からの制御に基づいてデータを生成すると共に、ビデオ信号をモニタ１１０（ＣＲＴなど）に出力する画像プロセッサ５２０、ＭＰＵ５１２またはベクトル演算ユニット５１６と画像プロセッサ５２０との間の伝送バス上で調停等を実行するグラフィックインタフェース（ＧＩＦ）５２２、周辺機器との間でデータを送受信できるようにする入出力ポート５２４、カーネル等の制御を実行するための、フラッシュメモリ等で構成された内部ＯＳＤ機能ＲＯＭ（ＯＳＤＲＯＭ）５２６、ならびにカレンダ機能およびタイマ機能を備えたリアルタイムクロック５２８を備える。
【００４９】
メインメモリ５１４、ベクトル演算ユニット５１６、ＧＩＦ５２２、ＯＳＤＲＯＭ５２６、リアルタイムクロック（ＲＴＣ）５２８および入出力ポート５２４は、データバス５３０を介してＭＰＵ５１２に接続されている。バス５３０には、圧縮済みの動画およびテクスチャ画像を伸張して、これにより画像データを展開するプロセッサである画像処理ユニット５３８も接続されている。例えば、画像処理ユニット５３８は、ＭＰＥＧ２またはＭＰＥＧ４の標準フォーマットに従って、ビットストリームをデコードおよび展開したり、マイクロブロックをデコードしたり、逆離散コサイン変換、色空間変換、ベクトル量子化などを実行する機能を担う。
【００５０】
音声システムは、ＭＰＵ５１２からの命令に基づいて音楽やその他の音響効果を生成する音声処理ユニット（ＳＰＵ）５７１、ＳＰＵ５７１が波形データを記録するための音声バッファ５７３、およびＳＰＵ５７１が生成した音楽やその他の音響効果を出力するスピーカ５７５で構成されうる。なお、スピーカ５７５はモニタ１１０の一部として組み込まれていても、あるいは、外部スピーカ５７５を取り付けるための別個のオーディオライン出力端子として提供されてもよい。
【００５１】
バス５３０に接続されており、本発明に従ってデジタルデータの入出力を行うと共にデジタルコンテンツを入力する機能を備えたインタフェースである通信インタフェース５４０も提供される。例えば、オンラインビデオゲームアプリケーションを実現するために、この通信インタフェース５４０を介して、ネットワーク上のサーバ端末との間でユーザ入力データを送信したり、状態データを受信することができる。コンソール５１０に対してデータ（キー入力データまたは座標データなど）を入力する入力デバイス５３２（コントローラとも呼ばれる）と、各種プログラムおよびデータ（すなわちオブジェクトに関するデータ、テクスチャデータなど）を有するＣＤ―ＲＯＭなどの光学ディスク５６９の内容を再生するディスク装置５３６とが入出力ポート５２４に接続されている。
【００５２】
更に、本発明は、デジタルビデオカメラ１０５を備え、これは入出力ポート５２４に接続される。入出力ポート５２４は、シリアルインタフェースやＵＳＢインタフェースなどの１つ以上の入力インタフェースによって実装され得、デジタルビデオカメラ１９０は、ＵＳＢ入力や、カメラ１０５との併用に適したその他の任意の従来のインタフェースを有利に利用し得る。
【００５３】
上記の画像プロセッサ５２０は、レンダリングエンジン５７０、インタフェース５７２、画像メモリ５７４、およびディスプレイ制御装置５７６（プログラム可能なＣＲＴコントローラなど）を備える。レンダリングエンジン５７０は、メモリインタフェース５７２を介して、かつＭＰＵ５１２から送られるレンダリングコマンドによって、所定の画像データを画像メモリにレンダリングする処理を実行する。レンダリングエンジン５７０は、ＮＴＳＣ方式またはＰＡＬ方式に準拠し、より詳細には、例えば、１／６０秒〜１／３０秒の間隔で１０〜数十回を越えるレートで、３２０×２４０ピクセルまたは６４０×４８０ピクセルの画像データをリアルタイムに描画できる機能を備える。
【００５４】
メモリインタフェース５７２とレンダリングエンジン５７０との間にバス５７８が接続され、メモリインタフェース５７２と画像メモリ５７４との間に第２バス５８０が接続され得る。第１バス５７８と第２バス５８０のビット幅は、例えばそれぞれ１２８ビットであり、レンダリングエンジン５７０は、画像メモリに対して高速レンダリング処理を実行することができる。画像メモリ５７４は、一元化された記憶構造を採用しており、この構造では、例えば、テクスチャレンダリング領域と表示レンダリング領域とを同じ領域に設定することができる。
【００５５】
ディスプレイコントローラ５７６は、光ディスク装置５３６によって光ディスク５６９から取得したテクスチャデータ、またはメインメモリ５１４に作成されたテクスチャデータを、メモリインタフェース５７２を介して画像メモリ５７４のテクスチャレンダリング領域に書き込むように構成される。画像メモリ１７４の表示レンダリング領域にレンダリングされた画像データは、メモリインタフェース５７２を介して読み出されて、モニタ１１０に出力され、その画面に表示されうる。
【００５６】
図６は、本発明の一実施形態による、ユーザによるユーザ入力デバイスの操作中に、ユーザ入力デバイスに対応するピクセル群をトラッキングして判別するための機能ブロックを示すブロック図である。ブロックが表している諸機能は、図５のゲームコンソール５１０のＭＰＵ５１２によって実行されるソフトウェアによって実装される点を理解されたい。更に、図６のブロックが表している機能の全てが、各実施形態で使用されるとは限らない。最初に、カメラから入力されたピクセルデータが、入出力ポートインタフェース５２４を介してゲームコンソール５１０に送られ、これにより、以下に記載するプロセスがゲームコンソール５１０で実行される。まず、画像の各ピクセルが、例えばラスタベースでサンプリングされると、色分離処理ステップＳ２０１が実行される。これにより、各ピクセルの色が決定されて、画像が、色の異なるさまざまな二次元部分に分割される。次に、実施形態によっては、色遷移定位ステップＳ２０３が実行される。これにより、色の異なる部分が隣接している領域がより詳細に決定されて、はっきりした色の遷移が発生する画像の位置が特定される。次に、幾何学処理Ｓ２０５のステップが実行される。このステップでは、実施形態に応じて、エッジ検出プロセスまたは面積の統計値（area statistics：ＡＳ）の計算の実行が行われて、対象のオブジェクトのエッジに相当する線、曲線および／または多角形が代数的または幾何学的に定義される。
【００５７】
ステップＳ２０７で、アルゴリズムを用いてオブジェクトの三次元の位置および姿勢が計算される。このアルゴリズムについては、本発明の好ましい実施形態に関して後述する。質の向上のため、三次元の位置および姿勢のデータに対して、カルマンフィルタリング処理ステップＳ２０９が実行される。この処理を実行するのは、所定の時点においてオブジェクトが存在する位置を概算することで、発生することがあり得ないであろうことから正しいデータ群から外れていると考えられる、誤った測定値を除去するためである。カルマンフィルタリングを実行するもう１つの理由は、カメラ１０５は画像を３０Ｈｚで生成するが、一般的なディスプレイは６０Ｈｚで動作するため、カルマンフィルタリングによって、ゲームプログラムの動作の制御に使用するデータの不足分を埋めるためである。カルマンフィルタリングによる離散データのスムージングは、コンピュータビジョンの分野では公知であり、ここで詳述しない。図７は、オブジェクト７０５の移動を画像キャプチャ装置１０５によってとらえられる空間体積７０２に対応づける例示的画像処理システム７００の概略的ブロック図を示す。この例では、オブジェクト７０５が三次元空間７０２で、ｘ１の距離を移動すると、画像処理システム７００は、オブジェクト７０５のキャプチャしたビデオ画像を解釈し、オブジェクト７０５の移動を識別し、その後、対応するアクションをディスプレイ画面１１０に生成する。
【００５８】
具体的には、画像キャプチャ装置１０５は、当技術分野では周知のように、レンズを通過した後にセンサに入射する、画像を形成した光を表す画像データを生成するデジタル画像センサを含む。さらに、画像キャプチャ装置１０５は、光によって形成される画像を表すアナログ信号を生成するアナログビデオカメラを備えるようにしてもよい。後者の場合、アナログ信号は、画像をデジタル表現に変換し、その後、認識装置７１０による処理が行われる。三次元空間７０２の連続する二次元画像を表す画像データは、認識装置７１０に送られる。一実施形態では、認識装置７１０は、図６に関連して上述したように、オブジェクト７０５の識別のために様々な処理ステップを実行する。オブジェクト７０５の位置は、マッパ７１２に送られる。例えば、三次元空間７０２でのオブジェクト７０５の絶対座標が計算され、マッパ７１２に送信される。ｘ軸方向の座標及びｙ軸方向の座標は、各画像に表示されたオブジェクトの位置から決定することができる。オブジェクトのｚ軸方向の座標は、オブジェクトの寸法から推測できる。つまり、オブジェクト７０５が画像キャプチャ装置１０５に近いほど、オブジェクトが画像に大きく表示される。したがって、オブジェクトが画像に表示されると、オブジェクトの直径などの寸法は、画像キャプチャ装置１０５からの距離、即ちｚ軸座標、を求めるように使用される。
【００５９】
位置情報に加えて、認識装置７１０は、オブジェクト７０５から受信したコマンドを識別する。コマンドは、オブジェクト７０５の伝送／変形、音声ならびに発光などから解釈される。オブジェクト７０５から受信したコマンドは、認識装置によって解釈され、受信したコマンドに対応するデータは、アプリケーション７１４に伝達される。アプリケーション７１４はゲームアプリケーションあるいはリクエストされたその他のコンピュータアプリケーションであってもよい。あるいは、そうでなければ、画像キャプチャ装置１０５からユーザの入力を受け入れることができるものである。一実施形態では、マッパ７１２は、認識装置７１０から絶対座標を入力し、これらの座標をギアリング量によってスケーリングされている出力座標に対応づける。
【００６０】
別の実施形態では、マッパ７１２は連続する座標情報を認識装置７１０から受信し、座標情報の変更をオブジェクト７０５のベクトル移動に変換する。例えば、オブジェクト７０５が、時間ｔ１から時間ｔ２の間にｘ１の距離を移動した場合、ベクトルｘ１,０,０が生成され、アプリケーション７１４に送信される。時間ｔ１からｔ２は、画像キャプチャ装置１０５により生成されるビデオの連続フレーム間の時間間隔であってもよい。マッパ７１２は、スケーリングアルゴリズムに従い、例えば、ベクトルにギアリング量を乗算することでベクトルをスケーリングしてもよい。別の実施形態では、各座標には、Ｇｘ、ＧｙならびにＧｚなどの対応するギアリング因子(gearing factor)を乗算する。したがって、ディスプレイ１１０に表示されるように、仮想オブジェクト７０５’の対応する移動は距離ｘ２であり、ｘ１ではない。
【００６１】
アプリケーション７１４は、認識装置７１０から受信したコマンド７１３に従ってギアリング量を変更するか、マッパ７１２にギアリングデータを送信し、ギアリング量を変更させるソフトウェアの通常のオペレーションに従ってギアリング量を変更する。ギアリングデータは、ユーザコマンド、各種イベント、またはアプリケーション７１４のオペレーションモードに応じてマッパ７１２に送信される。したがって、ギアリング量は、ユーザコマンドに応じてリアルタイムで変更されるか、ソフトウェアによって制御されてもよい。これにより、マッパ７１２は、オブジェクト７０５の動きの出力ベクトルをアプリケーション７１４に送信する。この出力は、空間７０２中のオブジェクト７０５の位置の変化ならびにギアリング量に対して変更される。一実施形態では、アプリケーション７１４はビデオゲームであり、出力ベクトルを対応するアクションに変換し、変換されたアクションがディスプレイ１１０に表示される。
【００６２】
図８は図７の画像処理システム７００の例示的アプリケーションを示す。コンピュータシステム１０２は、シーン８１０をとらえる画像キャプチャ装置１０５を備える。シーン８１０は、認識装置（図７）によって認識されるオブジェクト８０４を把持したユーザ８０２を含む。このアプリケーションプログラムは、この例ではチェッカーゲームであり、オブジェクト８０４からのコマンドを認識し、チェッカーボード８０１にチェッカー８０８を拾い上げるか落す。ユーザがオブジェクト８０５を画像キャプチャ装置１０５の前に移動させると、コンピュータ１０２はオブジェクト８０４の移動を識別するように画像を処理し、その移動をディスプレイ１１０の仮想オブジェクト８０５’の移動に変換する。仮想オブジェクト８０５’が現実のオブジェクト８０５に対して移動する距離は、ギアリング量８０６によって決まる。この例では、ギアリング量はディスプレイ１１０「３」と表示される。一実施形態では、ギアリング量ユーザにより選択可能である。ギアリング量が大きければ、チェッカー８０５’がディスプレイ１１０で特定の距離を移動する、現実のオブジェクト８０５の移動は小さくてもよい。
【００６３】
図９、１０は、画像キャプチャ装置１０５（図１）とのインタラクションを行う例示的コントローラ９００を示す。コントローラ９００は、各種のボタンおよびジョイスティックを含む複数のインターフェース装置を有するインターフェース９０２を備える。ここに記載するコントローラは、有線であっても無線であってもよい。ＷｉＦｉ、ブルートゥース（登録商標）、赤外線、音声、光などの技術が、ゲームコンソールなどのコンピュータとインタフェースするために使用され得る。一実施形態では、コントローラ９００は、ＬＥＤアレイ９０５を有する。ＬＥＤアレイは、さまざまなレイアウトで構成することができ、このようなレイアウトには、例えば、各ＬＥＤが、想像上の矩形または正方形の結合ボックスの頂点に配置されている２×２のスタックがある。画像キャプチャ装置が作成する画像平面に投射されたときの、結合ボックスの位置および変形を追跡することによって、変化および変形がビデオアナライザで分析され、コントローラの位置および姿勢の情報が解読され得る。
【００６４】
ＬＥＤアレイ９０５は、赤外光または可視光を発し得る。画像キャプチャ装置１０５（図１）は、本発明のさまざまな実施形態に関して説明したように、ＬＥＤアレイ９０５を識別することができる。例えば、各コントローラに対して、スイッチ９１０を使用して、例えば、プレーヤ１〜プレーヤ４と割り振られ、これによって、ユーザが、プレーヤ番号１〜４から選択できるようになる。プレーヤ番号のそれぞれの選択は、ＬＥＤアレイ９０５が発光している一意的なＬＥＤのパターンまたは変調に対応している。例えば、プレーヤ１の場合は、１番目、３番目および５番目のＬＥＤが点灯する。このようなプレーヤ情報は符号化されて、複数のビデオフレーム間で、所定の期間にわたり、繰り返し伝送され得る。コントローラまたは装置のＬＥＤが、トラッキングモードと伝送モードを切り替えるように、インタリーブ方式が使用されることが望ましいことがある。トラッキングモードでは、サイクルの第１の部分の間、全てのＬＥＤが点灯しうる。
【００６５】
伝送モードでは、サイクルの第２の部分の間、ＬＥＤによって情報の変調が行われうる。所定の期間、ＬＥＤは、信号を受け取ることができるビデオアナライザまたは適切な装置に、トラッキング情報と通信情報を伝送する。伝送モードでは、ＬＥＤは、プレーヤのＩＤを表す情報を符号化しうる。期間と動作周期は、トラッキングの速度、点灯条件、コントローラの台数などに対応するように選択され得る。通信とトラッキング情報をインタリーブすることによって、ビデオキャプチャ装置は、適切な情報が与えられて、各コントローラのトラッキングパラメータを計算し、コントローラ同士を区別することができる。このような区別は、位置および姿勢や、コントローラの移動の他の評価基準をモニタおよびトラッキングする際に、各物理コントローラを分離するために、ビデオアナライザで使用され得る。伝送モードでは、コマンドまたは状態情報などの他の情報が、コントローラまたは装置のＬＥＤによって、公知の符号化および変調の方式に従って伝送され得る。受信側では、ビデオキャプチャ装置に結合されたビデオアナライザが、ＬＥＤの状態と同期して、これをトラッキングし、情報とコントローラの移動を復号化し得る。伝送モードサイクルでは、フレーム間でデータを変調させることによって、高帯域が得られることが知られている。
【００６６】
ユーザがインタフェース９０２とのインタラクションを行うと、ＬＥＤアレイ９０５の１つ以上のＬＥＤが変調および／または変色し得る。例えば、ユーザがジョイスティックを動かすと、ＬＥＤが明るさを変えるか、または情報を伝送しうる。強度または色の変化が、コンピュータシステムによってモニタされて、強度値としてゲームプログラムに提供される。更に、各ボタンが、ＬＥＤアレイ９０５の１つ以上のＬＥＤの色または強度の変化にマッピングされうる。コントローラ９００が三次元空間内で移動され、ロール、ヨーまたはピッチの方向のいずれかに回転されると、画像キャプチャ装置１０５は、コンピュータシステム１０２と共に、この変化を識別して、画像平面での移動を記述するために二次元ベクトルを、あるいは、三次元の空間での移動を記述するために三次元のベクトルを生成することができる。ベクトルは、画像キャプチャ装置１０５に対する相対移動および／または絶対位置を記述している一連の座標として提供されうる。当業者にとって明らかなように、画像キャプチャ装置１０５の見通線に垂直な面（画像平面）での移動は、画像キャプチャゾーン内の絶対位置によって特定することができる。これに対して、画像キャプチャ装置１０５にコントローラが近づくという移動は、ＬＥＤアレイによって、拡大するように見えることによって識別できる。
【００６７】
これらＬＥＤ９０５が矩形に構成されていることから、３つの軸上でのコントローラ９００の移動と、各軸を中心とした回転とが検出可能になる。図示しているのは４つのＬＥＤだけであるが、これは例示のみを目的としており、いずれの構成においてもＬＥＤは任意の個数とすることが可能である。コントローラ９００が前後にピッチ運動すると、上下のＬＥＤの距離が近づくが、左右のＬＥＤ間の距離は変わらない。同様に、コントローラが左右にヨー運動すると、左右のＬＥＤが接近して見えるが、上下のＬＥＤ間の距離は変わらない。
コントローラのロール運動は、画像平面におけるＬＥＤの向きを特定することによって検出することができる。コントローラが、画像キャプチャ装置１０５の見通線に沿って画像キャプチャ装置１０５に近づくと、全てのＬＥＤが接近して見える。最後に、画像平面に沿ったコントローラの移動は、画像平面上のＬＥＤの位置を特定することによってトラッキングすることができ、これにより、ｘ軸およびｙ軸のそれぞれに沿った移動が特定できる。
【００６８】
さらに、コントローラ９００は、可聴音または超音波を発生させるスピーカ９１５を含む。スピーカ９１５は、インタラクティビティを強化する音響効果を生成するか、インターフェース９０２からのコマンドを、マイクロフォンあるいは伝達を受け入れる他の素子を有するコンピュータシステムに伝達する。
【００６９】
図１１は、図９、１０のコントローラ９００の例示的アプリケーションを示す。このアプリケーションでは、ドライビングシミュレーションはコントローラ９００の回転を仮想自動車のハンドルの回転と解釈する。ユーザ（図示せず）が矢印１１０５に示すようにコントローラ９００を回転させると、仮想ハンドル９００’はディスプレイ１１０で矢印１１０５’に示すように回転する。一実施形態では、コントローラ９００の回転のそれぞれの程度に対してハンドル９００’の回転量を決定するギアリング量は、図８に関連して上述したように、ユーザが選択できる。別の実施形態では、ギアリング量は、図１２の例示的グラフ１２００に示すように、ソフトウェアにより制御される。この例では、ギアリング量はコントローラ９００の中心部、つまり、垂直方向からの距離に対して変更される。これにより、コントローラ９００を９０度回転させるだけで、仮想ハンドル９００’を最大５４０度回転させることができる。０度（中心部）に近い位置でギアリング量を低くしておくことで、通常は著しいハンドル回転を必要としない高速ドライビングに対して、高い制御性を保つことができる。コントローラ９００が中心部から離れて回転されると、グラフ１２００に示しているようにギアリング量は増加し、通常、低速時に求められる急カーブに対応できるようになる。
【００７０】
図１３は、ユーザにより操作されるハンドル１３０５を有する別の例示的コントローラ１３００を示す。この場合、ハンドル１３０５の回転ならびにインターフェース１３０２のボタン操作は、ＬＥＤ１３１０を介してデータの伝達を行うコントローラ１３００により解釈される。
【００７１】
図１４は、コントローラ１３００の例示的なアプリケーションを示す。この例では、アプリケーションはドライビングシミュレーションであり、ハンドル１３０５の回転に応じて発行されるコマンドを受信し、このコマンドをディスプレイ１１０の仮想ハンドル１３０５に対応する回転として解釈する。ハンドル１３０５の回転を仮想ハンドル１３０５’の対応の回転にスケーリングするギアリング量は、インターフェース１３０２（図１３）とのユーザインタラクションに応じて、あるいはソフトウェアによる制御に応じて変更することができる。
【００７２】
図１５は、所定の期間におけるギアリング量の例示的な変化を描いた例示的グラフ１５００を示す。一例では、ギアリングにおける変化は、ユーザにより、ゲームのプレイ中に動的に設定される。さらに、グラフ１５００に示しているように、ギアリングは、長時間ステップ、短時間ステップ、あるいはこの組合せいおいて、滑らかに、または急激に遷移する。したがって、ギアリングは、ゲームセッション中の所定の期間、ゲームによって設定あるいは変更され、これにより、よりリアルなインタラクティブ体験を提供することができる。さらに、ユーザにギアリングを制御をさせることで、従来のゲームに見られる所定の制御を超えた、別次元の制御が可能となる。
【００７３】
図１６は、ユーザインタラクションに応える画像処理システムの別の例示的アプリケーションを示す。この例では、ユーザ１６０２は、画像処理システムが入力オブジェクトと認識し得るおもちゃの野球バット１６０５をスイングすることにより、野球のシミュレーションとインタラクトする。このおもちゃの野球バットがスイングされると、ユーザおよび／またはソフトウェアはギアリング量を制御し、仮想野球バット１６０５’の速度や距離を操作する。一実施形態では、バットは、ゲームのプレイ中に押すことのできる多数のボタンを備えており、このボタンを押すことでギアリングを変更することができる。別の実施形態では、ユーザは、ギアリングレベルと組み合わせて事前に設定できるか、プログラムでき、バットのスイング時に適用されるようにする。
【００７４】
図１７はそれぞれ別の時間ｔ１〜ｔ５において、スイングの長さに沿った例示的なギアリング量を描いたグラフ１７００を示す。このギアリング量は、バットをスイングする前にユーザにより設定されたものであるか、カメラ１０５がとらえたバットの位置に応じて、ゲームによって動的に設定されたものである。同様に、図１７には、ギアリングが所定の期間においてどのように変化し、特定の時間間隔において一定に保たれ、または漸進的に増加される様子が示されている。グラフ１７００においては、ギアリングは時間ｔ１〜ｔ３間にて高く設定されている。よって、バットのスイングは、ボールと接触したときによりパワフルなものになる。さらに、バットがボールと接触した後の時間ｔ３〜ｔ４においては、ギアリングは緩和される。一実施形態では、それぞれの時間は、ユーザによって予測されるか、コンピュータによって決定される。
【００７５】
一例では、ユーザは何度かスイングをし、コンピュータがユーザの実際のスイング能力に対応するいくつものタイムスロット例を定める。次に、ユーザは、どの程度ゲームインタラクティビティに影響を及ぼしたいかに応じて、それぞれの時間間隔に対して特定のギアリングを独自に割当てることができる。ギアリングが設定されると、ユーザによるバット１６０５の移動がバット１６０５’（例えば、ゲームオブジェクト）の移動に対応付けられる。同様に、ギアリングは、別のアクション中にゲームによって事前に設定され、ユーザによってゲーム中に設定され、さらに、ゲームのプレイ中にリアルタイムで調整される。
【００７６】
図１８は、ユーザインタラクションに反応する画像処理システムの別の例示的なアプリケーションを示す。この例では、ユーザ（図示せず）は、おもちゃのフットボール用ボールを使って投球動作をし、作動装置（アクチュエータ）を押してボールを放すようにすることで、フットボールのシミュレーションとインタラクトする。当然、おもちゃのフットボール用ボールではなくて、コントローラを使用してもよい。仮想プレーヤー１８０２は、ユーザインタラクションに反応して仮想のフットボール用ボールを操作する。一実施形態では、作動装置は、フットボールシミュレーションアプリケーションに送信されるコマンドとして、ＬＥＤに、画像処理システムによって認識される色を明るくするか変化させるようにする。ユーザは、ボールを放した後に、選択した受信側の動作などの、フィールド上でのある特定のアクションを制御することができる。一実施形態では、ボールを放すことで、アプリケーションがマッパ（図７）にギアリングデータを送り、ギアリング量を変更して、例えば、入力オブジェクトのより細かな移動や動作を区別することができる。
【００７７】
図１９は、ボールの“放した”後のギアリング量の変化を示した例示的グラフ１９００を示す。グラフ１９００は単純なグラフとして図示されているが、ギアリングはゲームのオブジェクトに応じてどのようなプロファイルにもなり得ることを理解されたい。
【００７８】
図２０は、コンピュータプログラムに対するユーザ入力を受信する例示的な手順を示すフローチャート２００を示す。この手順は開始ブロック２００２に示すように開始し、操作２００４に進み、コントロール入力の位置が特定される。コントロール入力は、図７に関して上述したような三次元空間における入力オブジェクトの位置か、図１４に関して上述したようなユーザインターフェース装置の位置であってもよい。この位置は、１つの代表値、あるいはベクトルなどの複数の値として表される。この手順は、コントロール入力の位置を特定後に、操作２００６に進む。
【００７９】
操作２００６では、位置が変更したかどうかが判断される。位置に変更がなければ、手順は操作２００４に戻る。一実施形態では、操作２００４は、画像キャプチャ装置から新たな画像データのフレームを受信するまで遅延される。操作２００６において、位置変更があったと判断されれば、手順は操作２００８に進む。
【００８０】
操作２００８では、移動ベクトルが計算される。この移動ベクトルは、いずれの次元数であってもよい。例えば、移動が三次元空間における入力オブジェクトであれば、移動ベクトルは三次元ベクトルとしての動作を説明する。しかし、移動がハンドルなどの、一次元のコントロール入力であれば、移動ベクトルは、ハンドルの回転量を説明する一次元ベクトルである。移動ベクトルを決定後に、手順は操作２０１０に進む。
【００８１】
操作２０１０では、移動ベクトルは現在のギアリング量に掛けられ、入力ベクトルが決定される。現在のギアリング量は、スカラ量または多次元値である。ギアリング量がスカラ量であれば、移動ベクトルの全次元が同じ量だけ掛けられる。ギアリング量が多次元値であれば、移動ベクトルの各次元は、対応する、ギアリング量の次元に掛けられる。ギアリング量はユーザ入力に応じて変化し、さらに、ギアリング量はソフトウェアの制御下にある。従って、現在のギアリング量はその都度変化する。移動ベクトルに現在のギアリング量を掛け合わせた後に、手順は操作２０１２に進む。
【００８２】
操作２０１２では、操作２０１０で求めた入力ベクトルを使って、仮想オブジェクトの新たな位置が計算される。この新たな位置は、カメラ位置や、仮想ハンドルなどのオブジェクトの位置であってもよい。仮想オブジェクトはディスプレイ画面には表示されない。仮想オブジェクトの新たな位置が計算されると、手順は操作２０１４に進み、新たな位置を表すデータがアプリケーションプログラムに送られる。手順は、終了ブロック２０１６に示すように終了する。しかし、このフローは事実上は例示的なものに過ぎず、他の形態が可能であることに留意されたい。
【００８３】
一実施形態では、操作において、入力デバイスならびに入力デバイスの移動が検出される。入力デバイスの移動は、入力デバイスをとらえているカメラによって決定される。ユーザによる制御や事前の設定あるいは事前にプログラムされた設定により、ギアリング値がかけられる。ギアリング値がユーザにより設定されたものであれば、ギアリング値は、例えば、ユーザに入力デバイス（例えば、コントローラ）のボタンを押させるようにすることで選択される。ギアリング量に応じて、移動制御がコンピュータゲームのオブジェクトに対応づけられる。ユーザがゲームのアクションフィギュアを制御するように入力デバイスを使用している場合、設定されたギアリングもしくは設定されるように制御されたギアリングは、入力デバイスの移動がコンピュータゲームのアクションフィギュアの移動にどのように対応づけられるかに対して影響を及ぼす。したがって、ギアリングとギアリングの変更により、コンピュータゲームの一部であり得るオブジェクトによって対応づけられた反応を動的に適用することが可能になる。
【００８４】
各種の実施形態では、強度値、コントローラのプレーヤー番号、コントローラを含む１つ以上の入力オブジェクトの姿勢および／または位置を決定するための上記の画像処理機能は、コンピュータシステムで実行中のプロセスで実行されてもよい。コンピューティングシステムは、本明細書では、アプリケーションプログラムと呼ばれ、ゲームアプリケーションであり得るメインプロセスを実行していてもよく、画像または音声処理から得られるデータを要求するか、このデータを受け取る。このようなデータには、コントローラのプレーヤ番号、コントローラを含む１つ以上の入力オブジェクトの姿勢および／または位置、コントローラの操作などが含まれる。
【００８５】
各種実施形態では、画像および／または音声処理機能を実行しているプロセスは、ビデオカメラまたはビデオ／音声監視装置のドライバであってもよく、このドライバは、一般に知られているように実装に特有であり、当業界で知られ、理解されているように、任意のタイプのプロセス間通信を介して、メインプロセスにデータを提供する。画像または音声処理を実行するプロセスは、ゲームソフトウェアや他のアプリケーションプログラムを実行しているものと同じプロセッサで実行されても、別のプロセッサで実行されてもよい。さらに、画像または音声処理とゲーム機能に対して、例えば、プロシージャコールを使用して、同じプロセス内で共通のプロセスとしてもよい。このため、本明細書において、入力ベクトルやほかの情報が「『プログラムに』提供される」と言及することがあるが、本発明には、１つのプロセスが、画像処理機能とゲーム機能の両方を実行することができるように、プロシージャコールやその他のソフトウェア機能を使用して、このようなデータをプロセスのルーチンに提供することも含まれていることを理解すべきである。
【００８６】
また、これら機能を異なるプロセスに分割して、共通のプロセッサコアまたは複数のプロセッサコアで実行される１つ以上のプロセスが、本明細書に記載したような画像および／または音声処理を実行して、別のプロセスがゲーム機能を実行してもよい。本発明は、ここに記載したように使用されても、ほかのユーザ入力機構、音の角度方向をトラッキングする他の機構、および／またはオブジェクトの位置を能動的または受動的にトラッキングする機構、機械的視野を使用する機構、これらの組み合わせと共に使用されてもよい。トラッキングされるオブジェクトは、システムへのフィードバックを操作する補助的制御部またはボタンを備えていてもよい。このようなフィードバックには、光源からの発光、音歪み手段または他の適切な送信器および変調器のほかに、ボタン、圧力パッドなどがあるが、これらに限定されない。これらは、その伝達または変調、符号化状態および／またはトラッキング対象の装置との間でやり取りされるコマンドに影響しうる。本発明は、ゲームコンソール、ゲームコンピュータまたはコンピューティング装置、携帯式デバイス、マイクロプロセッサシステム、マイクロプロセッサベースのプログラム可能な家庭用電気製品、ミニコンピュータ、メインフレームコンピュータなど、他のコンピュータシステムの構成によって実施されてもよい。
【００８７】
また、本発明は、分散コンピューティング環境で実施されてもよく、このような環境では、ネットワークを介してリンクされる遠隔処理デバイスによってタスクが実行される。例えば、オンラインのゲームシステムおよびソフトウェアが使用されてもよい。上記の実施形態を考慮に入れて、本発明が、コンピュータシステムに記憶されたデータを使用する、各種のコンピュータ実装操作を使用してもよい点を理解すべきである。これらの操作は、物理量の物理的操作を必要とする。この物理量は通常、記憶、転送、結合、比較などの操作が可能な電気信号または磁気信号の形を取るが、必ずしもこれらに限定されない。更に、実行される操作は、生成、特定、決定または比較などと呼ばれることが多い。本発明の一部を構成している、本明細書に記載した操作はいずれも、有用な機械的操作である。本発明は、これらの操作を実行するデバイスまたは装置にも関する。この装置は、上記に記載したキャリアネットワークなどの所望の目的のために特別に作製されたものであっても、あるいは汎用コンピュータであり、そのコンピュータに記憶されているコンピュータプログラムによって選択的に作動もしくは構成されてもよい。特に、各種の汎用の機械を、本明細書の教示に従って記述したコンピュータプログラムと併用してもよく、あるいは所望の操作を実行するために特化した機械を作製するほうが利便性が高いこともある。
【００８８】
本発明は、また、コンピュータ可読媒体上のコンピュータ可読コードとして実施されてもよい。コンピュータ可読媒体は、コンピュータシステムによって後から読取ることができるデータを記憶できるデータ記憶装置であれば、どのようなものであってもよい。コンピュータ可読媒体の例には、ハードディスク、ネットワーク接続記憶装置（ＮＡＳ）、リードオンリーメモリ、ランダムアクセスメモリ、ＦＬＡＳＨベースメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ、磁気テープおよび他の光学式データ記憶装置および非光学式データ記憶装置などがある。また、コンピュータ可読媒体は、コンピュータ可読コードが分散式に記憶されて、実行されるように、ネットワークに結合されたコンピュータシステムを介して分散されてもよい。
【００８９】
さらに、ビデオゲームに関連してギアリングについて述べてきたが、コンピュータによって制御された環境であればどのような環境にもギアリングをかけることができることを理解すべきである。一例では、ギアリングは、情報のインタラクション、選択あるいは入力を可能にするコンピュータの入力デバイスに関連づけられる。様々な入力操作やインタラクティブ操作において、様々に異なるギアリングをかけることで、設定済みの制御設定を有する環境では通常みられない操作のさらなる程度が可能となる。したがって、本明細書に定義しているように、ギアリングの実施形態には広範囲にわたっての用途が与えられるべきである。
【００９０】
ギアリングが決定されると、このギアリングをジェスチャにかけることができ、これがコンピュータプログラムに伝達される。上述のように、ジェスチャや入力デバイスのトラッキングは、画像分析、慣性分析あるいは可聴音分析によって実現することができる。ジェスチャの例としては、ボールなどのオブジェクトを投げる、バットやゴルフクラブなどを振る、手押しポンプを押す、ドアまたは窓を開閉する、ハンドルまたは他の車両コントロールを回す、格闘家がパンチなどを出す、研磨動作、ワックス掛けとワックスふき取り、家のペンキ塗り、振動、おしゃべり、ロール、フットボール投げ、野球の投球、ノブを回す動き、３Ｄ／２Ｄマウスの動き、スクロール、周知のプロファイルを持った動き、記録可能なあらゆる動き、あらゆるベクトルに沿った前後の動き、すなわち、空間内の任意の方向に沿ったタイヤの空気入れ、経路に沿った移動、正確な停止時間と開始時間を持った動き、ノイズフロア内やスプライン内などで記録、追跡および繰返し可能なユーザ操作に基づく任意の時刻、などがあるがこれらに限定されない。
【００９１】
これらのジェスチャはそれぞれ、経路データから事前に記録し、時間基準のモデルとして記憶できる。このため、ギアリングは、ユーザまたはプログラムにより設定されたギアリングの程度に応じて、これらのジェスチャのうちのいずれか１つにかけることができる。上記に、本発明を明確に理解できるように多少詳細に記載したが、添付の特許請求の範囲内で変更例または変形例を実施できることは明らかである。したがって、本実施形態は例示的なものであり、制限するものではなく、本発明は本明細書に記載されている詳細な事項に限定されず、添付の特許請求の範囲およびその均等物の範囲内で変更されてもよい。
【図面の簡単な説明】
【００９２】
【図１】画像キャプチャ装置を有するインタラクティブゲーム構成の説明図。
【図２】画像処理システムを用いた例示的コンピュータインタラクションの説明図。
【図３】グラフディスプレイ上のオブジェクトとインタラクトする例示的ユーザ入力システムのブロック図。
【図４】本文に記載された発明の実施形態を実装するように構成されたコンピュータプロセスシステムの簡略ブロック図。
【図５】代替入力デバイスとして機能する操作用オブジェクトとの併用に適合されたビデオゲームコンソールの各種構成要素の構成を示すブロック図。
【図６】ユーザによる操作中に、ユーザ入力デバイスに対応するピクセル群をトラッキングして判別するための機能ブロックを示すブロック図。
【図７】例示的画像処理システムの概略ブロック図。
【図８】図７の画像処理システムの例示的アプリケーションの説明図。
【図９】画像キャプチャ装置とのインタラクションを行うための例示的なコントローラの平面図ならびに上面図。
【図１０】画像キャプチャ装置とのインタラクションを行うための例示的なコントローラの平面図ならびに上面図。
【図１１】図９および図１０のコントローラに対する例示的アプリケーションの説明図。
【図１２】図１１に示したアプリケーションの例示的なソフトウェアの制御されたギアリング量を示した説明図。
【図１３】ハンドルを有する例示的コントローラの説明図。
【図１４】図１３のコントローラの例示的アプリケーションの説明図。
【図１５】所定の期間のギアリング量の例示的な変化を示した例示的グラフの説明図。
【図１６】ユーザインタラクションに反応する画像処理システムの別の例示的アプリケーションの説明図。
【図１７】図１６に示したアプリケーションの野球バットのスイングの長さに沿った、異なる時間における例示的なギアリング量を示したグラフの説明図。
【図１８】ユーザインタラクションに反応する画像処理システムの別の例示的アプリケーションの説明図。
【図１９】図１８に示したアプリケーションのフットボールを”放した”後のギアリング量の例示的変化を示したグラフの説明図。
【図２０】ユーザ入力をコンピュータプログラムに受信する例示的手順を示したフローチャート。
【図１】
2009535167.tif 000003
【図２】
2009535167.tif 000004
【図３】
2009535167.tif 000005
【図４】
2009535167.tif 000006
【図５】
2009535167.tif 000007
【図６】
2009535167.tif 000008
【図７】
2009535167.tif 000009
【図８】
2009535167.tif 000010
【図９】
2009535167.tif 000011
【図１０】
2009535167.tif 000012
【図１１】
2009535167.tif 000013
【図１２】
2009535167.tif 000014
【図１３】
2009535167.tif 000015
【図１４】
2009535167.tif 000016
【図１５】
2009535167.tif 000017
【図１６】
2009535167.tif 000018
【図１７】
2009535167.tif 000019
【図１８】
2009535167.tif 000020
【図１９】
2009535167.tif 000021
【図２０】
2009535167.tif 000022
【手続補正書】
【提出日】平成21年1月7日(2009.1.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータゲームシステムとインタラクティブにインターフェースする方法であって、
前記コンピュータゲームシステムにより解釈される慣性データを伝達する入力デバイスを提供するステップと、
前記コンピュータゲームシステムによって実行される、前記入力デバイスによって提供された前記慣性データに対応づけられているアクションを識別するステップと、
前記コンピュータゲームシステムによって実行される前記アクションと、前記入力デバイスから受信した前記慣性データ間にギアリングをかけるステップと、を含み、
前記ギアリングは、前記コンピュータゲームシステムによって実行される前記アクションに影響を与えるように調節をスケーリングし、さらに、前記ギアリングはユーザ設定に基づいて動的に調整可能なものであるか、または、前記コンピュータゲームシステムによって実行されるプログラムにより、その実行中にわたって動的な調整を行うために定義される、方法。
【請求項２】
前記アクションは、（ａ）前記コンピュータゲームシステムにより実行されたコンピュータゲームのオブジェクトにより、移動量を設定する（ｂ）処理を実行する変数を設定する（ｃ）音声または振動に影響を及ぼす処理に対して変化率を設定する、または（ｄ）グラフィカルオブジェクトの移動の変化率を設定する、のうちの１つを含む、請求項１記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項３】
少なくとも周期的に前記慣性データを分析するステップと、 
前記ギアリングによりアップデートされた変更を用いて、少なくとも周期的に前記アクションを再度適用するステップと、をさらに含む、請求項１記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項４】
前記ギアリングがアップデート済みであると判断された場合に、前記アップデートされたギアリングを、次のアクションの前に、または所定の期間において段階的に、前記アクションの処理を続行しながら適用する、請求項３記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項５】
前記ギアリングが調整済みの場合、前記調整済みのギアリングは（ａ）段階的に、（ｂ）漸進的に、または（ｃ）スムーズにかけられ、前記アクションに影響を与えるようにする、請求項３記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項６】
前記慣性データは、前記入力デバイスの座標情報を識別するために分析され、前記座標情報は、前記対応付けによってベクトルデータに変換されて前記アクションに適用される、請求項１記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項７】
前記ベクトルデータは、前記ギアリングの調整に応じてスケーリングされる、請求項６記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項８】
前記ベクトルデータは、前記ベクトルデータを前記ギアリングにより定義されるギアリング量で掛けることによりスケーリングされる、請求項６記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項９】
前記入力デバイスは、前記入力デバイスの位置と通信データとを検出するように使用される複数の光源を含む、請求項６記載のコンピュータゲームシステムとインタラクティブにインターフェースする方法。
【請求項１０】
ユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステムであって、 
コンピューティングシステムと、 
前記コンピューティングシステムに結合されているか、または前記コンピューティングシステムにより実行される慣性検出アナライザと、
前記コンピューティングシステムにより実行される前記コンピュータプログラムとインターフェースする入力デバイスとを含み、前記入力デバイスは、前記入力デバイスで生成された慣性データと、前記慣性アナライザにより分析された前記コンピュータプログラムに適用されるアクションとの間にスケーリングを定めるギアリングコントロールを有するものであって、
前記ギアリングコントロールの変更は、前記コンピュータプログラムのオブジェクトとのインタラクティビティの前、インタラクティビティの間、またはインタラクティビティの後に設定されるものであって、前記変更は、前記コンピュータプログラムに適用される前記アクションを実行する間に、その都度前記オブジェクトによる異なる反応を伝える役割を果たす、システム。
【請求項１１】
前記コンピュータプログラムは、インタラクティブアプリケーションである、請求項１０記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項１２】
前記インタラクティブアプリケーションは、ビデオゲームである、請求項１１記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項１３】
前記入力デバイスは、コントローラまたは手持ち式のオブジェクトである、請求項１１記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項１４】
前記コントローラまたは手持ち式のオブジェクトは、位置検出のための発光ダイオードを含む、請求項１３記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項１５】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムに前記アクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項１３記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項１６】
前記コントローラまたは手持ち式のオブジェクトは前記コンピュータプログラムによるアクションを引き起こするように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項１３記載のユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にするシステム。
【請求項１７】
ユーザのアクションとコンピュータプログラムにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置であって、 
コンピューティングシステムにより実行される前記コンピュータプログラムとインターフェースする入力デバイスを含み、前記入力デバイスは前記コンピューティングシステムにより適用されるアクションに対応づけられた前記入力デバイスの慣性データ間にスケーリング値を定めるギアリングコントロールを有するものであり、前記ギアリングコントロールは、ボタンから引き起こされる変更に応じて、あるいは、前記コンピュータプログラムとのインタラクティビティの前、インタラクティビティの間、またはインタラクティビティの後に前記コンピュータプログラムにより引き起こされる変更に応じてその都度動的に変更することができる、装置。
【請求項１８】
前記入力デバイスは、位置検出のための発光ダイオードを含むコントローラまたは手持ち式のオブジェクトである、請求項１７記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項１９】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピューティングシステムに前記アクションを行わせるようにする音声または超音波信号を伝達するためのスピーカを含む、請求項１８記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【請求項２０】
前記コントローラまたは手持ち式のオブジェクトは、前記コンピュータプログラムによるアクションを引き起こすように、前記コンピューティングシステムと通信するためのユーザからの入力を受信するマイクロフォンを含む、請求項１９記載のユーザのアクションとコンピュータプログラムのオブジェクトにより実行されるアクション間に動的なユーザインタラクティビティを可能にする装置。
【国際調査報告】
2009535167.tif 000023
2009535167.tif 000024