(57)【要約】【課題】【解決手段】  ビデオカメラから連続する画像を受信しマイクからオーディオデータを受信するように構成されたデータ処理装置であり、ビデオ画像において画像間モーションを検出するための手段と、１つ以上の所定のオーディオ判定基準を満たしている関係するオーディオデータにおけるオーディオ信号を検出するための手段と、１つ以上の所定のモーション判定基準を満たしている画像間モーションの検出および、所定のオーディオ判定基準を満たす関係するオーディオデータにおけるオーディオ信号の検出の、所定のシーケンスに応答してデータ処理装置の制御機能を起動させるための起動手段と、を備える。
2008504621.tif 000002
【特許請求の範囲】
【請求項１】
連続するビデオ画像および関係するオーディオ信号を処理するために構成されたデータ処理装置であって、
連続するビデオ画像において画像間モーションを検出するための手段と、
画像間モーションが１つ以上の所定のモーション判定基準を満たすどうかを検出するための手段と、
１つ以上の所定のオーディオ判定基準を満たしている関係するオーディオ信号におけるオーディオ信号パターンを検出するための手段と、
（ａ）１つ以上の所定のモーション判定基準を満たしている画像間モーションの検出、および、
（ｂ）１つ以上の所定のオーディオ判定基準を満たす関係するオーディオ信号におけるオーディオ信号パターンの検出、の組に応答して、データ処理装置の制御機能を起動させるための起動手段と、
を備えるデータ処理装置。
【請求項２】
請求項１に記載のデータ処理装置であって、
一連の連続する画像の各々について、画像間モーションが検出された各画像において１つ以上のアクティブな画像領域を検出するための手段を備えており、
１つ以上のアクティブな画像領域のうちの少なくとも１つが、連続する画像間で所定の変位を受けている場合、所定のモーション判定基準は満たされていると検出するデータ処理装置。
【請求項３】
請求項２に記載のデータ処理装置であって、
連続する画像間のアクティブな画像領域の少なくとも１つの位置における変位が所定のしきい値より大きいかどうかを検出するための手段を備えており、
少なくとも１つのアクティブな画像領域の位置における変位がＮ個（Ｎは予め定められた整数）の連続する画像について所定のしきい値を上回ったままであり、その後、所定のしきい値未満に低下した場合、所定のモーション判定基準は満たされていると検出するデータ処理装置。
【請求項４】
請求項１に記載のデータ処理装置であって、
ビデオ画像に関して定義されたテスト領域の所定の部分において連続する画像間で画像間モーションが生じるかどうかを検出するための手段を備えており、
画像間モーションがＮ個（Ｎは予め定められた整数）の連続する画像についてテスト領域の所定の部分において連続する画像間で生じ、その後、所定のしきい値未満に低下した場合、所定のモーション判定基準は満たされていると検出するデータ処理装置。
【請求項５】
請求項１に記載のデータ処理装置であって、
一連のビデオ画像の各々について、画像間モーションが検出された複数のアクティブな画像領域を検出するための手段を備えており、
アクティブな画像領域のうち、相互に関連する少なくとも２つのアクティブな画像領域の変位が、所定の値未満に低下した場合、所定のモーション判定基準は満たされていると検出するデータ処理装置。
【請求項６】
請求項１乃至５の何れか一項に記載のデータ処理装置であって、
所定のモーション判定基準は、画像間モーションが所定の画像領域内部で生じるものであるデータ処理装置。
【請求項７】
請求項１乃至６の何れか一項に記載のデータ処理装置であって、
オーディオ信号パターンが検出され、モーション判定基準が満たされたオーディオ信号およびビデオ画像のシーケンスにおける時間相関位置の間に、しきい値量未満の時間変位が存在する場合には、検出の組がは満たされているとするデータ処理装置。
【請求項８】
請求項１乃至７の何れか一項に記載のデータ処理装置であって、
関係するオーディオ信号の振幅が所定のしきい値を超えているかどうかを検出するための手段を備えており、
関係するオーディオ信号の振幅が少なくとも所定の継続期間にわたり所定のしきい値を実質的に上回っている場合、所定のオーディオ判定基準は満たされているとするデータ処理装置。
【請求項９】
請求項１乃至７の何れか一項に記載のデータ処理装置であって、
関係するオーディオ信号のスペクトル特性を検出するための手段を備えており、
検出されたスペクトル特定が所定のパラメータに実質的に合致する場合、所定のオーディオ判定基準は満たされているとするデータ処理装置。
【請求項１０】
請求項１乃至９の何れか一項に記載のデータ処理装置であって、
連続するビデオ画像はビデオカメラから実質的にリアルタイムに受信され、関係するオーディオ信号はマイクから実質的にリアルタイムに受信されるデータ処理装置。
【請求項１１】
請求項１０に記載のデータ処理装置であって、
連続する画像を供給するためのビデオカメラを備えるデータ処理装置。
【請求項１２】
請求項１１に記載のデータ処理装置であって、
ビデオカメラと一体のマイクを備えるデータ処理装置。
【請求項１３】
請求項１０に記載のデータ処理装置であって、
オーディオデータを供給するためのマイクを備えるデータ処理装置。
【請求項１４】
請求項１乃至１３の何れか一項に記載のデータ処理装置であって、
表示装置を備えるデータ処理装置。
【請求項１５】
請求項１４に記載のデータ処理装置であって、
連続するビデオ画像の表現を表示装置に表示するための手段を備えるデータ処理装置。
【請求項１６】
請求項１４又は１５に記載のデータ処理装置であって、
画像間モーションの表現を表示装置に表示するための手段を備えるデータ処理装置。
【請求項１７】
請求項１乃至１６の何れか一項に記載のデータ処理装置であって、
前記データ処理装置はゲーム機であり、前記制御機能はゲーム制御機能であるデータ処理装置。
【請求項１８】
データ処理方法であって、
一連の連続するビデオ画像において画像間モーションを検出するステップと、
画像間モーションが１つ以上の所定のモーション判定基準を満たすかどうかを検出するステップと、
１つ以上の所定のオーディオ判定基準を満たしている関係するオーディオ信号におけるオーディオ信号パターンを検出するステップと、
（ａ）１つ以上の所定のモーション判定基準を満たしている画像間モーションの検出、および、
（ｂ）１つ以上の所定のオーディオ判定基準を満たす関係するオーディオ信号におけるオーディオ信号パターンの検出、の組に応答して、データ処理装置の制御機能を起動させるステップと、
を含む、データ処理方法。
【請求項１９】
請求項１８に記載のデータ処理方法であって、
ビデオカメラから連続する画像を受け取るステップと、
マイクからオーディオデータを受け取るステップと、
を含む、データ処理方法。
【請求項２０】
請求項１８または請求項１９に記載の方法を実行するためのプログラムコードを有するコンピュータソフトウェア。
【請求項２１】
請求項２０に記載のソフトウェアを供給するための供給媒体。
【請求項２２】
媒体は伝送媒体である、請求項２１に記載の供給媒体。
【請求項２３】
媒体は記憶媒体である、請求項２１に記載の供給媒体。
【請求項２４】
連続するビデオ画像および関係するオーディオ信号を処理するために構成されたデータ処理装置であって、
前記連続するビデオ画像において画像間モーションを検出する第１の検出器と、
前記画像間モーションが１つ以上の所定のモーション判定基準を満たすかどうかを検出する第２の検出器と、
１つ以上の所定のオーディオ判定基準を満たしている前記関係するオーディオ信号におけるオーディオ信号パターンを検出する第３の検出器と、
（ａ）前記１つ以上の所定のモーション判定基準を満たしている画像間モーションの検出、および、
（ｂ）１つ以上の所定のオーディオ判定基準を満たす前記関係するオーディオ信号におけるオーディオ信号パターンの検出、の組に応答して、前記データ処理装置の制御機能を起動させるロジックと、
一連の前記ビデオ画像の各々について、画像間モーションが検出された複数のアクティブな画像領域を検出する第４の検出器と、を備えており、
前記アクティブな画像領域のうちの少なくとも２つの互いに関する変位が所定の値未満に低下した場合、所定のモーション判定基準は満たされているとするデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理オペレーションの制御に関する。特定の事例にはテレビゲーム処理オペレーションの制御を含むが、本発明は他の形式のデータ処理へのより一般的な用途を有する。
【背景技術】
【０００２】
従来のテレビゲーム機において、使用者はビデオモニタまたはテレビ画面でゲームを見て、ハンドヘルド型のキーパッドまたはジョイスティックを用いてゲームの動作を制御する。ソニー（登録商標）のプレイステーション（登録商標）２といった一部のゲーム機では、ハンドヘルド型コントローラは、ゲーム内で生じているイベントの触覚的フィードバックを使用者に付与する振動要素とともに、２本のジョイスティックおよびいくつかのユーザ操作キーを設けている。
【０００３】
ゲーム機がビデオカメラを利用できることが提案されている。これは、使用者の画像をゲームシナリオ内に現れさせたり、または例えば空中で「ワンド（wand）」を振るといった使用者による行動がゲーム内でのキャラクタの対応する行動に変換させたりすることを可能にする。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
この装置の短所は、使用者が、ゲームの機能を切り換えるために、そして一般にゲーム機の動作を制御するために、ハンドヘルド型コントローラを操作しなければならないということである。
【課題を解決するための手段】
【０００５】
本発明は、連続するビデオ画像および関係するオーディオ信号を処理するために構成されたデータ処理装置であって、
連続するビデオ画像において画像間モーションを検出するための手段と、
画像間モーションが１つ以上の所定のモーション判定基準を満たすどうかを検出するための手段と、
１つ以上の所定のオーディオ判定基準を満たしている関係するオーディオ信号におけるオーディオ信号パターンを検出するための手段と、
（ａ）１つ以上の所定のモーション判定基準を満たしている画像間モーションの検出、および、
（ｂ）１つ以上の所定のオーディオ判定基準を満たす関係するオーディオ信号におけるオーディオ信号パターンの検出、の組に応答して、データ処理装置の制御機能を起動させるための起動手段と、を備えるデータ処理装置を提供する。
【０００６】
本発明は、画像内部の検出されたモーションおよび検出されたサウンドの所定のシーケンスに基づきデータ処理装置の制御機能を起動させるための技法を提供する。本発明は、モーションの単純な検出が、所要のモーションだけに応答して機能を確実に起動させるために十分ではないかもしれないことを認識する。誤った検出および、従って不要な起動が機能の起動をトリガするために設計されていない画像におけるモーションから生じるかもしれないことがあり得る。同様に、本発明は、サウンドの単純な検出が、所定のサウンドの検出だけに応答して機能を確実に起動させるために十分ではないかもしれないことを認識する。信号処理ノイズと同様に、マイクによって取得されデータ処理装置によって受信された他の可聴イベントも、誤った検出および、従って不要な起動をトリガするかもしれない。本発明は、機能の起動が生起するために所定のモーションおよび所定のサウンドの両方が所定のシーケンスで検出されることを要求することによって、誤った検出および誤った起動の生起の可能性を低減しようとするものである。
【０００７】
好ましくは、モーションおよびサウンドの両方は、例えば拍手などの同じ行動に由来する。この場合、検出される画像間モーションは、もう一方の手と相接するために画像を通じて移動する手のそれ、または互いに相接するために画像を通じて互いに向けて移動する両手のそれである。対応する検出されるサウンドは、両手の衝突から生じるその音であろう。従って、ビデオカメラの視野外側での拍手またはカメラの視野内側での単純な手振りといった他のイベントが機能の起動をもたらす可能性を低減させて、データ処理装置の使用者が拍手という行動によって例えば「休止」機能といった装置の機能を起動させることができるであろうことが十分にわかるであろう。
【０００８】
データ処理装置が他の機能を起動させるために種々の視覚的および音声的刺激または刺激の組合せに応答し得ることが理解できる。例えば、起動される機能は、ビデオカメラの視野内での拍手の瞬間における手の位置に依存するかもしれない。さらに、装置は拍手の特定のパターンに応答して異なる機能を起動させることができ、パターンは時間的（すなわち、各拍手間の所定の時間間隔）または空間的（ウェブカメラの視野における所定の領域に対応する手の位置）のどちらか一方であるか、または両方である。
【０００９】
好ましくは、装置は、一連の連続する画像の各々について、画像間モーションが検出された１つ以上のアクティブな画像領域を決定し、その後、連続する画像間のアクティブな画像領域のうちの少なくとも１つの場所における変位が所定のしきい値より大きいかどうかを決定する。この場合、関連するモーション判定基準は、少なくとも１つのアクティブな画像領域の場所における変位がＮ個の連続する画像について所定のしきい値を上回ったままであり、その後、所定のしきい値未満に低下することである（Ｎは所定の整数である）。これは、データ処理装置が、使用者の手の動きが所定のモーション判定基準を満たすかどうかを判断するために、例えばフレームごとの使用者の手の位置を追跡することを可能にする。
【００１０】
好ましくは、装置は、連続する画像を供給するためのビデオカメラおよび、オーディオデータを供給するためのマイクを備える。
【００１１】
本発明はまた、
一連の連続するビデオ画像において画像間モーションを検出するステップと、
画像間モーションが１つ以上の所定のモーション判定基準を満たすかどうかを検出するステップと、
１つ以上の所定のオーディオ判定基準を満たしている関係するオーディオ信号におけるオーディオ信号パターンを検出するステップと、
（ａ）１つ以上の所定のモーション判定基準を満たしている画像間モーションの検出、および、
（ｂ）１つ以上の所定のオーディオ判定基準を満たす関係するオーディオ信号におけるオーディオ信号パターンの検出の、
所定のグループ化に応答してデータ処理装置の制御機能を起動させるステップと、を含むデータ処理方法を提供する。
【００１２】
本発明はまた、上記の通り方法を実行するためのプログラムコードを有するコンピュータソフトウェアを提供する。コンピュータソフトウェアは好ましくは、伝送媒体または記憶媒体といった供給媒体によって提供される。
【００１３】
本発明のさらなるそれぞれの態様および特徴は添付の請求項において規定される。
【発明を実施するための最良の形態】
【００１４】
ここで、本発明の実施形態を添付図面に関して例証としてのみ説明する。
【００１５】
図１は、プレイステーション２の全体的なシステムアーキテクチャを図式的に例示している。システムユニット１０には、システムユニットと接続可能な種々の周辺装置が設けられている。
【００１６】
システムユニット１０は、エモーションエンジン（Emotion Engine）１００、グラフィックスシンセサイザ（Graphics Synthesiser）２００、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）を有するサウンドプロセッサユニット３００、読出し専用メモリ（ＲＯＭ）４００、コンパクトディスク（ＣＤ）およびディジタル多用途ディスク（ＤＶＤ）読取り装置４５０、ラムバスダイナミックランダムアクセスメモリ（ＲＤＲＡＭ；Rambus Dynamic Random Access Memory）ユニット５００、専用ＲＡＭ７５０を備える入出力プロセッサ（ＩＯＰ）７００を含む。（オプションの）外部ハードディスクドライブ（ＨＤＤ）８００が接続され得る。
【００１７】
入出力プロセッサ７００は２つのユニバーサルシリアルバス（ＵＳＢ）ポート７１５Ａおよび７１５Ｂ、ならびにｉＬｉｎｋまたはＩＥＥＥ１３９４ポート（ｉＬｉｎｋはＩＥＥＥ１３９４規格のソニー・コーポレーションによる具体化である）を有する。ＩＯＰ７００は、全部のＵＳＢ、ｉＬｉｎｋおよびゲームコントローラデータトラフィックを取り扱う。例えば、使用者がゲームをしている時、ＩＯＰ７００はゲームコントローラからデータを受け取り、それをエモーションエンジン１００に向けて送り、エモーションエンジンは相応にゲームの現在状態を更新する。ＩＯＰ７００は、迅速なデータ転送速度を助成する直接メモリアクセス（ＤＭＡ）アーキテクチャを有する。ＤＭＡは、ＣＰＵにデータを通過させることを要さずにメインメモリから装置へのデータの転送を伴う。ＵＳＢインタフェースは、オープンホストコントローラインタフェース（ＯＨＣＩ）と互換性を有し、１．５Ｍｂｐｓないし１２Ｍｂｐｓのデータ転送速度を取り扱うことができる。これらのインタフェースの装備により、プレイステーション２はビデオカセットレコーダ（ＶＣＲ）、ディジタルカメラ、セットトップボックス、プリンタ、キーボード、マウスおよびジョイスティックといった周辺装置と潜在的に互換性を有することになる。
【００１８】
一般に、首尾よいデータ通信がＵＳＢポート７１５Ａまたは７１５Ｂに接続された周辺装置と生じるためには、デバイスドライバといった適切なソフトウェア部分が設けられなければならない。デバイスドライバ技術は極めて周知であり、当業者はデバイスドライバまたは類似のソフトウェアインタフェースがここに記載された実施形態において要求され得ることを承知しているはずであると言うだけで、ここでは詳述しない。
【００１９】
現在の実施形態では、関係するマイク７３５およびＬＥＤインジケータ７４０を備えるビデオカメラ７３０がＵＳＢポート７１５Ａに接続されている。種々の形式のビデオカメラが使用され得るが、特に適格な形式のビデオカメラ７３５がいわゆる「ウェブカメラ」であり、すなわち、単一の電荷結合素子（ＣＣＤ）要素に基づいており、基本的なハードウエアベースのリアルタイムデータ圧縮・符号化構成を備える中解像度カメラであり、それにより圧縮されたビデオ／オーディオデータがカメラ７３０によって、プレイステーション２システムユニット１０での復号化のために、画像内（intra-image）ベースのＭＰＥＧ（モーション・ピクチャ・エキスパート・グループ）規格といった適切なフォーマットでＵＳＢポート７１５Ａに送られる。
【００２０】
カメラのＬＥＤインジケータ７４０は、システムユニット１０とのＵＳＢデータ接続を通じて制御データを受け取るために構成されている。ＣＰＵ１０２は、この経路を通じて制御信号を送り、ＬＥＤを“オフ”モード、“点灯”モードおよび、ＬＥＤが例えば毎秒１ないし３回の点滅速度で点滅する“点滅”モードに設定することができる。ＬＥＤを点滅させるために要求されるロジックはカメラ回路に設けられているので、システムユニット１０がＬＥＤの各個別の点滅を命令することは必要ない。
【００２１】
本発明の代替実施形態では、ウェブカメラに内蔵されたマイクを使用するのではなく、独立型マイク７４５が設けられる。独立型マイクは、ウェブカメラ内蔵マイクよりも使用者により近づけることができるので、それゆえ改善された品質のサウンド入力をシステムに供給する。独立型マイクが設けられる場合、それは第２のＵＳＢポート７１５Ｂを通じてシステムに結合され得る。
【００２２】
ＵＳＢポートのほかに、２つの他のポート７０５、７１０が知的所有権下にあるソケットであり、ゲーム関連情報を記憶するための知的所有権下にある不揮発性ＲＡＭメモリカード７２０、ハンドヘルド型ゲームコントローラ７２５または、ダンスマットといったハンドヘルド型コントローラを模した装置（図示せず）の接続を可能にする。
【００２３】
エモーションエンジン１００は、ゲームアプリケーション用の３次元（３Ｄ）グラフィックスの効率的なシミュレーション向けに特殊に設計された１２８ビット中央処理装置（ＣＰＵ）である。エモーションエンジンの構成要素は、データバス、キャッシュメモリおよびレジスタを含み、それらの全部が１２８ビットである。これは大量のマルチメディアデータの高速処理を助成する。比較すれば、従来のＰＣは基本的な６４ビットデータアーキテクチャを有する。プレイステーション２の浮動小数点計算性能は６．２ＧＦＬＯＰである。エモーションエンジンはまた、３ＤグラフィックスデータおよびＤＶＤデータの同時処理を可能にするＭＰＥＧ２デコーダ回路を備える。エモーションエンジンは、数学的変換および変形を含む幾何学計算を実行し、さらに例えば２物体間の摩擦の計算などのシミュレーションオブジェクトの物理学に関係する計算も実行する。それは、後にグラフィックスシンセサイザ２００によって利用される画像レンダリングコマンドのシーケンスを生成する。画像レンダリングコマンドは、表示リストの形態で出力される。表示リストは、グラフィックスシンセサイザに対し、いずれの基本図形オブジェクト（例えば点、直線、三角形、スプライト）を画面上のいずれの座標に描くべきかを指定する一連の描画コマンドである。それゆえ、典型的な表示リストは、頂点を描くコマンド、多角形の面を陰影づけるコマンド、ビットマップをレンダリングするコマンドなどを含むであろう。エモーションエンジン１００は複数の表示リストを非同期で生成することができる。
【００２４】
グラフィックスシンセサイザ２００は、エモーションエンジン１００によって生成された表示リストのレンダリングを実行するビデオアクセラレータである。グラフィックスシンセサイザ２００は、複数の表示リストを取り扱い追跡し管理するグラフィックスインタフェースユニット（ＧＩＦ）を含む。グラフィックスシンセサイザ２００のレンダリング機能は、いくつかの代替的標準出力画像フォーマット、すなわちＮＴＳＣ／ＰＡＬ、高精細度ディジタルＴＶおよびＶＥＳＡをサポートする画像データを生成することができる。一般に、グラフィックスシステムのレンダリング能力は、そのそれぞれがグラフィックスプロセッサ内部に位置するピクセルエンジンとビデオメモリとの間のメモリ帯域幅によって規定される。従来のグラフィックスシステムは、使用可能な帯域幅を制限しがちであるオフチップバスによってピクセルロジックに接続された外部ビデオランダムアクセスメモリ（ＶＲＡＭ）を使用する。しかし、プレイステーション２のグラフィックスシンセサイザ２００は、比較的大きい３８．４ギガバイト／秒のメモリアクセス帯域幅を可能にする単一の高性能チップ上にピクセルロジックおよびビデオメモリを備えている。グラフィックスシンセサイザは理論的に、毎秒７５００万ポリゴンのピークドローイング能力を達成することができる。テクスチャ、照明および透明度といった全範囲の効果を伴っても、毎秒２０００万ポリゴンの持続した速度が連続的に描かれ得る。従って、グラフィックスシンセサイザ２００は映画品質画像をレンダリングすることができる。
【００２５】
サウンドプロセッサユニット（ＳＰＵ）３００は事実上、ディジタル・シアター・サラウンド（ＤＴＳ（登録商標））サウンドおよび、ディジタル多用途ディスク（ＤＶＤ）に使用されるサウンドフォーマットであるＡＣ−３（ドルビー・ディジタルとしても知られる）といった３Ｄディジタルサウンドを認識することができるシステムのサウンドカードである。
【００２６】
関係するスピーカ装置３１０を備えるビデオモニタまたはテレビといった表示・サウンド出力装置３０５が、グラフィックスシンセサイザ２００およびサウンド処理装置３００からビデオ／オーディオ信号を受け取るために接続されている。
【００２７】
エモーションエンジン１００をサポートするメインメモリは、ラムバス・インコーポレーテッド社が生産するＲＤＲＡＭ（ラムバスダイナミックランダムアクセスメモリ）モジュール５００である。このＲＤＲＡＭメモリサブシステムは、ＲＡＭ、ＲＡＭコントローラおよび、ＲＡＭをエモーションエンジン１００と接続するバスを含む。
【００２８】
図２は、図１のエモーションエンジン１００のアーキテクチャを図式的に例示している。エモーションエンジン１００は、浮動小数点ユニット（ＦＰＵ）１０４、中央処理装置（ＣＰＵ）コア１０２、ベクトルユニット０（ＶＵ０）１０６、ベクトルユニット１（ＶＵ１）１０８、グラフィックスインタフェースユニット（ＧＩＦ）１１０、割込みコントローラ（ＩＮＴＣ）１１２、タイマユニット１１４、直接メモリアクセスコントローラ１１６、画像データプロセッサユニット（ＩＰＵ）１１６、ダイナミックランダムアクセスメモリコントローラ（ＤＲＡＭＣ）１２０、サブバスインタフェース（ＳＩＦ）１２２を含み、これらの構成要素の全部は１２８ビットのメインバス１２４によって接続されている。
【００２９】
ＣＰＵコア１０２は、３００ＭＨｚでクロックされる１２８ビットプロセッサである。ＣＰＵコアはＤＲＡＭＣ１２０を通じて３２ＭＢのメインメモリにアクセスできる。ＣＰＵコア１０２の命令セットは、付加的なマルチメディア命令とともに一部ＭＩＰＳ  ＩＶ  ＲＩＳＣ命令を備えるＭＩＰＳ  ＩＩＩ  ＲＩＳＣに基づく。ＭＩＰＳ  ＩＩＩおよびＩＶは、ＭＩＰＳテクノロジーズ（MIPS Technologies）社の知的所有権下にある縮小命令セットコンピュータ（ＲＩＳＣ）命令セットアーキテクチャである。標準命令は６４ビット双方向スーパースカラーであり、それは２つの命令が同時に実行され得ることを意味する。他方、マルチメディア命令は、２つのパイプラインによって１２８ビット命令を使用する。ＣＰＵコア１０２は、１６ＫＢの命令キャッシュ、８ＫＢのデータキャッシュおよび、ＣＰＵによる直接の専用使用のために確保されたキャッシュの一部である１６ＫＢのスクラッチパッドＲＡＭを含む。
【００３０】
ＦＰＵ１０４は、ＣＰＵコア１０２のための第１のコプロセッサとして働く。ベクトルユニット１０６が第２のコプロセッサの働きをする。ＦＰＵ１０４は、浮動小数点積和論理演算装置（ＦＭＡＣ）および浮動小数点除算計算器（ＦＤＩＶ）を含む。ＦＭＡＣおよびＦＤＩＶの両方とも３２ビット値で演算するので、演算が（４つの３２ビット値から構成された）１２８ビット値で行われた場合、演算は全部の４つの部分で並行して行われ得る。例えば、２つのベクトルの加算は同時に行われ得る。
【００３１】
ベクトルユニット１０６および１０８は、数学演算を実行し、ベクトル方程式の乗算および加算を評価する際に極めて高速である本質的に専用のＦＰＵである。それらは、加算および乗算演算に浮動小数点乗算加算計算器（ＦＭＡＣ）を、そして除算および平方根演算に浮動小数点除算器（ＦＤＩＶ）を使用する。それらは、マイクロプログラムを記憶するための内蔵メモリを有し、ベクトルインタフェースユニット（ＶＩＦ）を通じてシステムの残りの部分とインタフェースを取る。ベクトルユニット０  １０６は、それが本質的に第２の専用ＦＰＵであるように、専用の１２８ビットバス１２４を通じてＣＰＵコア１０２のコプロセッサとして働くことができる。他方、ベクトルユニット１  １０８は、グラフィックスシンセサイザ２００との専用バスを有するので、それゆえ完全に別個のプロセッサとみなすことができる。２つのベクトルユニットの包含は、ソフトウェア開発者がその仕事をＣＰＵの異なる部分間で分割することを可能にし、ベクトルユニットは直列または並列接続のどちらかで使用され得る。
【００３２】
ベクトルユニット０  １０６は、４個のＦＭＡＣおよび１個のＦＤＩＶを含む。それはコプロセッサ接続を通じてＣＰＵコア１０２に接続されている。それは、データ用に４Ｋｂのベクトルユニットメモリおよび命令用に４Ｋｂのマイクロメモリを有する。ベクトルユニット０  １０６は、表示用の画像に関係する物理計算を実行するために役立つ。それは主にＣＰＵコア１０２とともに非パターン化された幾何学処理を実行する。
【００３３】
ベクトルユニット１  １０８は、５個のＦＭＡＣおよび２個のＦＤＩＶを含む。それはＣＰＵコア１０２へのいかなる直接的経路も持たないが、ＧＩＦユニット１１０への直接的経路を有する。それは、データ用に１６Ｋｂのベクトルユニットメモリおよび命令用に１６Ｋｂのマイクロメモリを有する。ベクトルユニット１  １０８は変換を実行するために役立つ。それは、パターン化された幾何学処理を主に実行し、生成された表示リストをＧＩＦ１１０に直接出力する。
【００３４】
ＧＩＦ１１０はグラフィックスシンセサイザ２００とのインタフェースユニットである。それは、表示リストパケットの最初のタグ指定に従ってデータを変換し、複数の転送を互いに裁定しながら、ドローイング命令をグラフィックスシンセサイザ２００に転送する。割込みコントローラ（ＩＮＴＣ）１１２は、ＤＭＡＣ１１６を除く周辺装置からの割込みを裁定する働きをする。
【００３５】
タイマユニット１１４は、１６ビットカウンタを備える４個の独立したタイマを含む。タイマは、バスクロックによってか（１／１６または１／２５６間隔で）、または外部クロックのどちらかによって駆動される。ＤＭＡＣ１１６は、メインメモリと周辺プロセッサとの間またはメインメモリとスクラッチパッドメモリとの間のデータ転送を取り扱う。それは同時にメインバス１２４を裁定する。ＤＭＡＣ１１６の性能最適化は、エモーションエンジン性能を改善するための重要な方途である。画像処理ユニット（ＩＰＵ）１１８は、圧縮された動画およびテクスチャ画像を伸張するために使用される画像データプロセッサである。それは、Ｉ−ＰＩＣＴＵＲＥマクロブロック復号化、色空間変換およびベクトル量子化を実行する。最後に、サブバスインタフェース（ＳＩＦ）１２２は、ＩＯＰ７００とのインタフェースユニットである。それは、サウンドチップおよび記憶装置といった入出力装置を制御するためのそれ自身のメモリおよびバスを有する。
【００３６】
図３は、グラフィックスシンセサイザ２００の機器構成を図式的に例示している。グラフィックスシンセサイザは、ホストインタフェース２０２、セットアップ／ラスター化ユニット２０４、ピクセルパイプライン２０６、メモリインタフェース２０８、フレームページバッファ２１４およびテクスチャページバッファ２１６を含むローカルメモリ２１２、およびビデオコンバータ２１０を含む。
【００３７】
ホストインタフェース２０２は、ホスト（この場合、エモーションエンジン１００のＣＰＵコア１０２）とデータを転送する。ホストからのドローイングデータおよびバッファデータは、このインタフェースを通過する。ホストインタフェース２０２からの出力はグラフィックスシンセサイザ２００に供給され、グラフィックスシンセサイザは、エモーションエンジン１００から受信された頂点情報に基づきピクセルを描くためにグラフィックスを開発し、各ピクセルについてＲＧＢＡ値、デプス値（すなわちＺ値）、テクスチャ値およびフォッグ値といった情報を計算する。ＲＧＢＡ値は赤、緑、青（ＲＧＢ）の色成分を指定し、Ａ（アルファ）成分は画像オブジェクトの不透明さを表現する。アルファ値は完全に透明から完全に不透明までの範囲を取ることができる。ピクセルデータはピクセルパイプライン２０６に供給され、ピクセルパイプラインはテクスチャマッピング、フォギングおよびアルファブレンディング（後述の通り）といったプロセスを実行し、計算されたピクセル情報に基づき最終的なドローイング色を決定する。
【００３８】
ピクセルパイプライン２０６は、１６個のピクセルエンジンＰＥ１、ＰＥ２、・・・、ＰＥ１６を含み、それにより最大１６ピクセルを並行して処理することができる。ピクセルパイプライン２０６は、３２ビット色および３２ビットＺバッファを伴い１５０ＭＨｚで動作する。メモリインタフェース２０８は、ローカルグラフィックスシンセサイザメモリ２１２からデータを読出しデータを書込む。それは、ドローイングピクセル値（ＲＧＢＡおよびＺ）をピクセル演算の終わりにメモリに書込み、フレームバッファ２１４のピクセル値をメモリから読出す。フレームバッファ２１４から読出されたこれらのピクセル値は、ピクセルテストまたはアルファブレンディングに使用される。メモリインタフェース２０８はまた、フレームバッファの現在の内容についてのＲＧＢＡ値をローカルメモリ２１２から読出す。ローカルメモリ２１２は、グラフィックスシンセサイザ２００に組み込まれている３２メガビット（４ＭＢ）メモリである。それは、フレームバッファ２１４、テクスチャバッファ２１６および３２ビットＺバッファ２１５として編成することができる。フレームバッファ２１４は、カラー情報といったピクセルデータが格納されるビデオメモリの部分である。
【００３９】
グラフィックスシンセサイザは、視覚的詳細を３Ｄジオメトリに付加するために２Ｄ−３Ｄテクスチャマッピングプロセスを使用する。各テクスチャが、３Ｄ画像オブジェクトにラップアラウンドされることができ、３Ｄグラフィック効果を与えるために伸縮およびスキューされる。テクスチャバッファは、画像オブジェクトについてのテクスチャ情報を格納するために使用される。Ｚバッファ２１５（デプスバッファとしても知られる）は、ピクセルについてのデプス情報を格納するために使用可能なメモリである。画像は、グラフィックスプリミティブまたはポリゴンとして知られる基本的構成単位から構築される。ポリゴンがＺバッファリングによりレンダリングされる場合、そのピクセルの各々のデプス値は、Ｚバッファに格納された対応する値と比較される。Ｚバッファに格納された値が新しいピクセル値のデプス以上であれば、このピクセルは可視であると決定され、それによりそれはレンダリングされなければならず、Ｚバッファはその新しいピクセルデプスで更新されることになる。しかし、Ｚバッファデプス値が新しいピクセルデプス値未満であれば、新しいピクセル値はすでに描かれたものの背後にあり、レンダリングされないであろう。
【００４０】
ローカルメモリ２１２は、フレームバッファおよびＺバッファにアクセスするための１０２４ビット読出しポートおよび１０２４ビット書込みポート、ならびにテクスチャ読出しのための５１２ビットポートを有する。ビデオコンバータ２１０は、指定された出力フォーマットでフレームメモリの内容を表示するために動作可能である。
【００４１】
図４は、プレイステーション２の機能が所与の時間に起動されるかどうかを判断するために使用され得る画像およびオーディオ処理ステップを図式的に例示している。この手順の目的は、受信されたオーディオ／ビデオデータを調べ、プレイステーション２の機能の起動をもたらすように意図された例えば拍手といった行動を使用者が行っているか否かをそこから判断することである。
【００４２】
画像データ処理はステップＩ１に始まり、そこでビデオカメラ（例えばウェブカメラ７３０）またはデータ記憶媒体（例えばビデオカセットレコーダまたはハードディスクドライブ８００）といった映像ソースから画像データがプレイステーション２に受信される。ステップＩ２で、プレイステーション２のエモーションエンジンは、受信された画像データに対し所定の画像処理オペレーションを実行して、所定のモーション判定基準が受信されたデータに関して満たされているかどうかに関する判断を行うことができるために必要な情報を抽出する。使用される画像処理ステップは、必要な情報に依存し、転じてそれは選択されたモーション判定基準に依存するであろう。
【００４３】
ステップＩ３において、プレイステーション２のエモーションエンジンは、処理された画像データが（以前に処理された画像データと組み合わせて）所定の判定基準を満たすか否かを判断する。画像間（inter-image）モーションは複数の画像に基づいて確定するので、所定のモーション判定基準は単一の受信画像に基づいては満たされ得ないことを理解しなければならない。代わりに、判断は、各画像および、先行画像についての類似の判断の結果に基づいて行われる。処理された画像データが所定の判定基準を満たさなければ、たとえ所定のオーディオ判定基準が満たされたとしても、この時点で機能は起動しないであろう。この場合、オペレーションはステップＩ１に戻り、そこで後続の画像が受信されることになる。あるいは、処理された画像データが所定の判定基準を満たしていれば、ステップＩ４において、「肯定」結果が所定の時限にわたり保持（ラッチ）される。この所定の時限内に所定のオーディオ判定基準が受信されたオーディオデータに関して満たされていれば、ステップＳ５において、論理的ＡＮＤオペレーションが２つの「肯定」入力を受け取り、ステップＳ６で制御機能を起動するために制御信号を出力するであろう。
【００４４】
オーディオデータの処理はステップＡ１に始まり、そこでオーディオデータがマイク７４５といったオーディオソースから受信される。マイクは、独立型マイク７４５であるか、またはウェブカメラ７３０に組み込まれているかのどちらかとしてよい。ステップＡ２で、オーディオ処理が受信されたオーディオデータに関して行われる。受信画像データの処理と同様に、必要な特定のオーディオ処理オペレーションは、プレイステーション２ソフトウェアアプリケーションの要求条件に依存するであろう。ステップＡ３で、処理されたオーディオデータが所定の判定基準を満たすかどうかが判断される。処理されたオーディオデータが所定の判定基準を満たさなければ、この時点で機能は起動せず、オーディオ処理はステップＡ１に戻ることになる。他方、処理されたオーディオデータが所定の判定基準を満たしていれば、「肯定」結果が生成されステップＳ５で論理的ＡＮＤに渡される。従って、オーディオデータが画像処理オペレーションのステップＩ４で生成された時間窓の間に所定の判定基準を満たした時に、論理的ＡＮＤゲートの入力における２つの「肯定」信号の同時受信により、プレイステーション２の所与の機能を起動させるために渡される制御信号をもたらすことがわかる。当業者は、用語「同時」がＡＮＤゲートの文脈において使用されているが、他の実施形態では「肯定」信号（またはそれらの等価物）が、異なる時刻ではあるが、オーディオ／ビデオデータの同じ時間的部分、または重なり合う時間的部分、または極めて近い時間的部分（例えばしきい値分離の範囲内）に関して生成され得ることを了解するであろう。これらはやはり「同時」検出であるとみなされ得るであろうし、この構成におけるオーディオ／ビデオデータに関する肯定的検出は制御された機能の起動につながるであろう。
【００４５】
図５は、モーションビットマップの生成を含む、カメラからの画像データの取扱いを例示している概略フローチャートである。モーションビットマップは後述する技法において使用され、それはカメラ７３０の前の使用者の動きを通じたプレイステーション２システムユニット１０の種々のデータ処理機能の制御を可能にする。
【００４６】
図５に例示されたステップは、システムの種々の異なる部分によって実行される。一般にそれらは、ＩＯＰ７００、エモーションエンジン（ＩＰＵ）１１８、エモーションエンジン（ＣＰＵ）１０２およびグラフィックスシンセサイザ２００である。図５は、４つの縦列として配列されており、各縦列はこれらの部分のうちの１つによって実行されるオペレーションに対応している。
【００４７】
図４、５、８および１０に図示されたステップは、ＤＶＤディスクに記憶され読取り装置４５０によって読込まれたソフトウェアの制御下で実行されるが、代わりにインターネット接続（図示せず）といったネットワーク接続によって受信されたソフトウェアを使用してもよい。それらは、カメラ７３０から受信される各画像（例えばプログレッシブ走査フレーム）について繰り返される。画像レートは、プレイステーション２システムユニット１０のオペレーティングソフトウェア内部で設定されているかもしれない。適格としてよい例示的画像レートは、毎秒５０フレームのレートである。
【００４８】
ステップ９００で、ＩＯＰ７００は１フレームに対応するデータをカメラ７３０から受け取る。上述の通り、このデータは、画像内ＭＰＥＧフォーマットといった圧縮形式になっている。ステップ９０５で、エモーションエンジン１００は、そのフレームの分の画像データをＩＯＰから読取り、それをＩＰＵ１１８に経路指定する。
【００４９】
ステップ９１０で、ＩＰＵ１１８はＭＰＥＧ符号化された画像データを輝度−クロミナンス（Ｙ，Ｃｂ，Ｃｒ）フォーマットに復号化する。画像のＹ，Ｃｂ，Ｃｒ表現はその後、エモーションエンジンのＣＰＵ１０２によって取り扱われる。
【００５０】
ステップ９１５で、ＣＰＵ１０２はＹ，Ｃｂ，Ｃｒフォーマットデータを成分（赤、緑、青すなわちＲＧＢ）データに変換する。ＲＧＢデータはＧＳ２００に渡され、後者は表示のためにフレームをフレームバッファ１２４に格納する（ステップ９２０）。現在のゲームソフトウェアのオペレーションの間に、ビデオカメラからのデータのフレームが何らかの形で操作されるかまたは、合成された画像データによって上書きまたは適所にオーバレイされることは、極めて起こりがちである。
【００５１】
ステップ９１０で復号化されたＹ，Ｃｂ，Ｃｒデータの第２の使用は、ステップ９２５において、輝度（Ｙ）成分がカメラ７３０から受信された次のフレームと関連した使用のためにＲＡＭ５００にバッファされるということである。このバッファされた輝度データの使用は、以下の説明から明らかになるであろう。
【００５２】
ステップ９１０で復号化されたＹ，Ｃｂ，Ｃｒデータの第３の使用は、ステップ９３０で行われ、現在フレームの輝度（Ｙ）データが、先行フレームに関してバッファされた輝度データから、ピクセルごとに減算される。「絶対値」関数が適用され、その結果、現在および先行フレームの対応するピクセル間の輝度差が１組の正の数として確定される。
【００５３】
ステップ９３５において、輝度差はしきい値とやはりピクセルごとに比較される。特定のピクセル位置についての輝度差がしきい値を超えた場合、そのピクセル位置でモーションが生じたと判断される。輝度差がしきい値を超えていなければ、そのピクセル位置でモーションが生じなかったと判断される。このようにして、ステップ９４０で、「モーションビットマップ」が生成され、その結果、各ピクセル位置はそのピクセル位置においてモーションが検出されたかどうかを指示する関係するフラグを有する。
【００５４】
モーションビットマップはＲＡＭ５００に記憶される。モーションビットマップが１ビット／ピクセルフォーマットで記憶され得ることは明白であろう。しかし、アドレス指定の容易さのために、現在の実施形態は実際上１６ビット／ピクセルフォーマットとしてモーションビットマップを記憶するが、このようにして記憶された基本的情報は単に、「モーションがある」かまたは「モーションがない」かのどちらか一方を指示する各ピクセルについてのフラグである。
【００５５】
モーションビットマップで行い得る１つの利用は、使用者が、画像の特定部分でモーションを開始することによってデータ処理オペレーションを制御するのを可能にすることである。使用者がこれを行うためには、ウェブカメラからの画像がディスプレイ３０５に表示されることが好ましい。これは、全画面表示としてか、または恐らくスケーリングといった何かの操作を伴う画面の一部としてのどちらであってもよい。しかし主要なことは、使用者が少なくともカメラ７３０の視野の一部を見ることを可能にし、それにより使用者が、その画像の正しい部分で画像モーションを開始している時がわかることである。
【００５６】
ステップ９４５で、モーションビットマップは、検出されたモーションが特定の所定の判定基準を満たすかどうかを判断するために１つ以上のデータ処理オペレーションを受ける。
【００５７】
図６は、モーションビットマップを図式的に例示している。ビットマップはピクセルフラグの矩形配列１０００として図示されており、ピクセルフラグは図解のために画像におけるそのピクセルの空間位置に対応する配列における位置に配置されている。しかし、これが単にモーションビットマップの概略図にすぎないことはわかるであろう。実際には、画像におけるピクセルの数と同じ数のメモリ項目（例えばアドレス指定可能なデータワードまたはアドレス指定可能なデータワードの下位区分）を有する適格な記憶域が要求される。
【００５８】
図６において、モーションが検出されたピクセルの位置は、暗色点として図式的に示される。１実施形態では、ここで点線によって例示されたように、テストウインドウ１０１０もまた付与される。
【００５９】
テストウインドウは、機能が起動されるために、単にカメラの視野におけるどこかではなく、特定の画面領域に対応してモーションが検出される必要がある場合に要求される。その場合、所定のモーション判定基準はテストウインドウ内部で検出されたモーションだけに関連する。例えば、プレイステーション２の機能の起動は、使用者が特定の画面領域に対応する位置で拍手することになっている場合に要求されるだけかもしれない。
【００６０】
図７Ａ〜７Ｃは、プレイステーション２に付属のウェブカメラ７３０の視野内での使用者の行動がどのようにしてモーションとして検出され得るかを例示している。
【００６１】
図７Ａは、拍手の動きが始まる時の使用者１１００を図式的に例示している。この時点で、使用者の手１１１０ａおよび１１２０ａの間の距離は最大である。これは図７Ｃにおける画像空間において例示されており、ここで使用者の手の位置は点線の円１１１０ｃおよび１１２０ｃによって表現されている。
【００６２】
図７Ｂは、拍手の動きが終わった時の使用者１１００を図式的に例示している。この時点で、使用者の手１１１０ａおよび１１２０ａは互いに接触している。この状況は図７Ｃにおける画像空間において例示されており、ここで使用者の手１１１０ｄおよび１１２０ｄの表現は相接していると見ることができる。図７Ｃにおける矢印１１３０は、使用者の手１１１０ａおよび１１２０ａの動きの経路を例示している。図７Ｃに図示された検出されたモーションの形態は、プレイステーション２の所望の機能が開始されるために検出され得るモーションの一例である。当然、それは直接測定されている使用者の手の位置ではなく、モーションが検出される位置であることを理解しなければならない。
【００６３】
図８は、検出された画像間モーションが所定のモーション判定基準を満たすかどうかを検出する方法を図式的に例示している。手順はステップＣ１に始まる。ステップＣ２において、２つのカウンタＡおよびＢが例えば０といった所定の値に初期化される。その後、ステップＣ３で、処理の準備ができているプレイステーション２でモーションビットマップが受信される。ステップＣ４で、受信されたモーションビットマップにおけるモーションのレベルが特定のしきい値を超えているかどうかが決定される。このステップは図９Ａ〜９Ｄに関して後にさらに詳細に説明する。しきい値を超えていなければ、プロセスはステップＣ１に戻り手順が新たに始まる。
【００６４】
一方、モーションのレベルがしきい値を上回っていれば、プロセスはステップＣ５に続き、しきい値を超えた連続するモーションビットマップの数を指示するカウンタＡが増分される。ステップＣ６で、別のモーションビットマップがプレイステーション２に受信される。ステップＣ７で、新しいモーションビットマップのモーションのレベルがしきい値を上回っているかどうかが判断され、そうであれば、処理はステップＣ５に戻り、そこでカウンタＡが増分される。
【００６５】
一方、ステップＣ７でモーションビットマップのモーションのレベルが特定のしきい値を上回っていないと判断された場合、処理はステップＣ８に続き、カウンタＡが所定の値ｘを超えているかどうかが判断される。カウンタＡが値ｘを超えていなければ、これはしきい値を超える不十分な数のモーションビットマップが満たされるべきモーション判定基準について受信されたことを指示し（例えば、モーションしきい値は十分な継続期間にわたり超えなかった）、処理はステップＣ９に移動し、しきい値を下回るモーションのレベルを有する受信したモーションビットマップの数を追跡する第２のカウンタであるカウンタＢが増分される。
【００６６】
処理はその後ステップＣ１０に続き、カウンタＢの値が所定の値ｙより大きいかどうかが判断される。そうであれば、しきい値を超えなかった十分な数のモーションビットマップが受信されており、モーション判定基準を満たすかもしれないいかなるモーションも生じていないという確信を付与する。処理はその後ステップＣ１に戻り、プロセスが新たに始まる。カウンタＢの値が所定の値ｙより小さければ、これはしきい値を超えたモーションビットマップの不十分な数が受信され、モーション判定基準を満たすかもしれないいかなるモーションも生じていないという確信を付与することになる。この場合、手順をリセットすることは望ましくないので、処理はステップＣ６に戻り、別のモーションビットマップが受信される。
【００６７】
ステップＣ８においてカウンタＡが所定の値ｘを超えていると判断された場合、制御はステップＣ１１に移り、それは全部のモーション判定基準が満たされたという結果を渡す。
【００６８】
従って、図８から、ステップＣ１〜Ｃ４がモーションのレベルがしきい値を超えている第１のモーションビットマップを識別しようとしているのに対し、ステップＣ５〜Ｃ７はモーションのレベルがしきい値を超えている以降のモーションビットマップを追跡しようとしていることが理解できる。さらに、ステップＣ８〜Ｃ１０は、モーションのレベルがしきい値を超えていない以降のモーションビットマップを取り扱う。
【００６９】
図９Ａ〜９Ｄは、連続するモーションビットマップの系列へのフレーム間モーションしきい値の適用を図式的に例示している。
【００７０】
図９Ａにおいて、モーションビットマップが図示されているが、検出された唯一のモーションは、データ処理アーチファクトおよび／またはウェブカメラ７３０の視野内での通常の（非トリガ）移動から生じるノイズである。ここで、低密度のモーションフラグ付きピクセル（暗色点によって指示された）だけがモーションビットマップに存在する。
【００７１】
図９Ｂは、モーションしきい値と比較された図９Ａのモーションビットマップによって呈示されたモーションのレベルを図式的に示している。存在するモーションのレベルがモーションしきい値より小さいことがここに見ることができる。
【００７２】
図９Ｃは、背景モーションに加えて、増大したモーションが存在する２つの領域があるモーションビットマップを示している。増大したモーションのこれらの領域は、両手のモーションを表現することができよう。現在の手順を用いて単一のモーションビットマップに基づきモーションの方向を確定することは不可能である。方向情報を抽出することは複数のモーションビットマップの比較を必要とする。
【００７３】
図９Ｄは、同じモーションしきい値が図９Ｃのビットマップに適用された時に、しきい値を超えることを示している。
【００７４】
図１０は、検出された画像間モーションが所定のモーション判定基準を満たすかどうかを検出する代替方法を例示している概略フローチャートである。この実施形態は、モーションが生じている受信画像の複数の領域を識別し、１つの受信画像と連続する受信画像との間のそれらの領域の位置の変化を識別する。
【００７５】
このプロセスは、モーションビットマップが受信されるステップＥ１から始まる。受信されたモーションビットマップのフラグ付きピクセルはｋ群にクラスタ化され、ここでｋは所定の整数である。当業者は、ピクセルを群にクラスタ化する多種多様な方法が存在することを了解しているであろう。クラスタ化アルゴリズムのいくつかの例は、階層クラスタリング（凝集型（agglomerative）および分裂型（divisive）方法）および周知のＫ平均アルゴリズムを含む。この例示的実施形態では、Ｋ平均クラスタリングの形態が後述の通り使用される。
【００７６】
各モーションビットマップは、モーションが検出された画像の場所を表現するある数ｎのフラグ付きピクセルを含む。モーションビットマップにおける各フラグ付きピクセルは、位置ベクトルｘ１，ｘ２，・・・，ｘｎによって表現される。アルゴリズムは、これらのｎピクセルの各々をクラスタに割り当てなければならない。現在の実施形態では、拍手の動きが検出される必要がある。図７Ａ〜７Ｃから、典型的な拍手の開始時に、検出される必要がある２つの空間的に分離した領域（使用者の手）が存在することがわかる。あるいは、拍手は、（他方の手が静止したままで）片方の手の動きを伴うだけかもしれない。現在の実施形態において、モーション検出は「両方の手による」拍手に基づいて動作するはずであるので、クラスタリングアルゴリズムは、２つのクラスタ（Ｋ＝２）が存在するという前提で実行され得る。「片方の手による」拍手が適合されることが望ましい場合、同じ手順がＫ＝１について（より単順に）繰り返され得る。
【００７７】
クラスタリングアルゴリズムにおける第１のステップは、２つのクラスタの各々について推定クラスタ平均を定義することである。これらは、（クラスタ平均が極めて近いものとして定義されないという制約を前提として）無作為か、またはより知的に定義され得る。この場合、賢明な推定は、一方のクラスタのクラスタ平均をモーションビットマップの左手部分の中心として、そして他方のクラスタのクラスタ平均をモーションビットマップの右手部分の中心として定義することである。
【００７８】
ｎピクセルの各々はその後、２つのクラスタのどちらか一方に帰属される必要がある。これは、最小距離分類子といった手順によって実行され得る。すなわち、各ピクセルｘｉについて、各クラスタ平均ｍａ（ここにａ＝１または２）までの距離Ｄが以下の式によって計算される必要がある。
Ｄ＝｜ｘｉ−ｍａ｜
【００７９】
ピクセルは、Ｄが最小であるクラスタに帰属されることになる。
【００８０】
全部のピクセルがこれに基づきクラスタに帰属されると、クラスタに帰属したピクセルから新しいクラスタ平均が計算される。この後、モーションビットマップにおける各ピクセルは、新しく生成されたクラスタ平均のどちらか一方に帰属される。この手順は、両方のクラスタ平均が安定化する（すなわち、１つの反復と次の反復で変化しない）まで、反復的に継続する。このアルゴリズムは、必要であれば背景モーションを除去するために増強できるであろう。これは、安定化したクラスタ平均から特定の距離を越えたフラグ付きピクセルを無視することによって具体化され得る。
【００８１】
モーションビットマップのピクセルがステップＥ２で群にクラスタ化されると、プロセスはステップＥ３に移り、そこでピクセルの各クラスタの中心点が決定され記憶される。これらの中心点は、ステップＥ２の安定化したクラスタ平均である。記憶された中心点は、現在のモーションビットマップおよび連続するモーションビットマップの処理の間にメモリに保持されるであろう。ステップＥ４では、現在のモーションビットマップにおけるピクセルの各クラスタと先行モーションビットマップにおけるピクセルのクラスタとの間の対応が計算されることになる。現在クラスタおよび先行クラスタ間の対応は、多様な方法で決定され得るが、最も単純な方法は単に、現在のモーションビットマップにおける各クラスタ平均について、先行モーションビットマップから最も近いクラスタ平均を決定することである。
【００８２】
ピクセルのクラスタ間の対応が求まると、その後ステップＥ５において、クラスタのフレーム間変位を表現するモーションベクトルを決定することが可能である。言い換えると、現在のモーションビットマップ内部の所与のクラスタの位置は、先行ビットマップからの対応するクラスタの位置と比較される。２つの場所の変位はその後、モーションベクトルを定義するために計算され使用され得る。ステップＥ６において、決定されたモーションベクトルは、それらが所定のモーション判定基準を満たすかどうかを判断するために分析される。１つの可能な判定基準は、モーションベクトルの大きさが所定の数のフレームについて所定の値を超えるということである。
【００８３】
２つのモーションベクトルが生成された場合に使用され得る可能な別の判定基準は、そのモーションベクトルが、１つの角で一方１つのクラスタにより、そして対角線上で対向する角で他方のクラスタにより定義される長方形に閉じ込められているということである。この判定基準は、一般に互いに向かって移動する２つのクラスタから生じるモーションだけがプレイステーション２機能の起動につながり得ることを意味する。付加的な判定基準は、図１１Ａおよび１１Ｂに関して以下で識別される。
【００８４】
図１１Ａおよび１１Ｂは、図１０に関して概説したプロセスを使用した２つのモーションビットマップからのモーションベクトルの生成を図式的に例示している。
【００８５】
図１１Ａにおいて、第１のモーションビットマップ１２１０および第２のモーションビットマップ１２２０（第２のモーションビットマップ１２２０は第１のモーションビットマップ１２１０に引き続き装置によって受信される）は両方とも、モーションが生じた単一の画像領域を包含している。モーションが生じた画像領域の場所がモーションビットマップ１２１０とモーションビットマップ１２２０との間で移動したことがわかる。これらの２つの受信フレーム間の画像領域の移動は、モーションベクトル１２３０を生成するために決定され使用される。このモーションベクトルこそ、所定のモーション判定基準が満たされたかどうかを判断するために使用されるものである。この場合、モーションベクトルは「単一の手による」拍手のケースを表現しているかもしれない。
【００８６】
図１１Ｂにおいて、２つの連続して受信されたモーションビットマップ１２５０および１２６０の各々は、モーションが生じた２つの画像領域を包含している。１２５０の画像領域の各々と１２６０の画像領域の各々との間で対応が決定される。この決定がなされると、その後それぞれの画像領域の各々についてモーションビットマップ１２５０および１２６０の間の変位を表現するモーションベクトルを計算することが可能である。第１のモーションビットマップ１２５０と第２のモーションビットマップ１２６０との比較から、モーションを包含している画像領域が互いに向けて移動していることがわかる。これは、互いに向けて方向づけられているモーションベクトル１２７０および１２８０によって表現される。この場合、モーションベクトルは、「両手による」拍手のケースを表現しているかもしれない。所定のモーション判定基準の１つとして使用され得る１つの判定基準は、複数の群のピクセルのモーションベクトルが収束し、２つの画像領域の合併を表現しているということである。
【００８７】
図１２は、受信されたオーディオデータが所定のオーディオ判定基準を満たすオーディオ信号から構成されるかどうかを検出する方法を例示している概略フローチャートである。このプロセスはステップＧ１に始まり、オーディオデータがマイクからプレイステーション２に受信される。受信されたオーディオデータがすでに時間振幅ドメインでの分析が実行できるフォーマットになっている場合、いかなるフォーマット変換も必要ない。そうでなければ、フォーマット変換が行われる必要があるかもしれない。
【００８８】
ステップＧ２において、所定のしきい値を超える振幅を有するいずれかの信号が検出される。しきい値を超えるあらゆるオーディオ信号はステップＧ３に渡され、しきい値を超えていた継続期間ｔｈが決定される。ステップＧ４において、ステップＧ３で測定された継続期間ｔｈがａとｂとの間の値かどうかが判断される（ａおよびｂは所定の値である）。ａ≦ｔｈ≦ｂであれば、所定のオーディオ判定基準は満たされている。所定の値ａは、ノイズスパイクを除去するために十分に大きいが、有効なサウンドトリガを無視するほど大きくないように規定されなければならない。所定の値ｂは、有効なトリガのために適格な値に設定されなければならない。
【００８９】
図１３は、しきい値振幅ＡＴｈｒを超える振幅エンベロープを有する信号を図式的に例示している。しきい値振幅ＡＴｈｒが時間ｔ１と時間ｔ２との間の時限にわたり上回られていることがわかる。この信号を図１２に記載されたプロセスに適用して、ｔ１とｔ２との間の継続期間が値ａおよびｂの間に該当していれば、所定のオーディオ判定基準は満たされているであろう。他方、ｔ１とｔ２との間の時限がａよりも小さいかまたはｂよりも大きいかのどちらかである場合、たとえしきい値振幅を超えたとしても、オーディオ判定基準は満たされないであろう。
【００９０】
所定のオーディオ判定基準は所定の継続期間にわたり所定のしきい値を超える信号振幅に関して以外にも規定されることができ、例えば代わりに所要のスペクトルシグネチャに関して規定され得ることを理解しなければならない。この場合、装置は、オーディオ信号のスペクトル特性が所定のパラメータを満たすかどうかを決定するような方式でオーディオデータを処理する必要があるであろう。
【００９１】
図１４Ａおよび１４Ｂは、本発明の例示的応用を例示している。例示的応用は、画面上に現れている泡１３１０が使用者の行動に応答して破裂するテレビゲームのものである。この場合、画面上の泡の破裂をもたらす使用者の行動は、ウェブカメラ７３０の視野内における拍手というものである。検出されたモーションは、使用者の手を表現する図形的要素１３２０の画面上表示を生じる。この場合、拍手が生じたことを単に検出するだけでは十分でなく、さらに拍手のモーションがゲーム内の泡の場所に対応する画像領域で生じたかどうかを決定する必要があることを理解しなければならない。使用者の手１３２０の図形的表現の存在により使用者は、自己の手が正しい場所にあるかどうかを知ることができる。別の実施形態では、使用者の手の図形的表現を表示する代わりに、ウェブカメラ７３０から受信された使用者の画像をテレビゲーム画面のゲーム領域上にオーバレイすることが可能である。いずれにせよ、所定のモーション判定基準は、図１４Ｂに図示の通り、使用者の両手がターゲットの泡に対応する画像領域で一緒になり相接するということになるであろう。対応する所定のオーディオ判定基準は、満たされた所定のモーション判定基準から所定の時限内に満たされなければならない。その場合、泡の破裂の機能は、図１４Ｂに見られるように起動されるであろう。
【図面の簡単な説明】
【００９２】
【図１】プレイステーション２の全体的なシステムアーキテクチャを図式的に例示している。
【図２】エモーションエンジンのアーキテクチャを図式的に例示している。
【図３】グラフィックスシンセサイザの機器構成を図式的に例示している。
【図４】受信されたビデオ／オーディオデータに基づく機能の起動を例示する概略フローチャートである。
【図５】モーションビットマップの生成を例示する概略フローチャートである。
【図６】モーションビットマップを図式的に例示している。
【図７】画像空間における使用者のモーションの表現を図式的に例示している。
【図８】検出された画像間モーションが所定のモーション判定基準を満たすかどうかを検出する第１の方法を例示する概略フローチャートである。
【図９】モーションビットマップへのフレーム間モーションしきい値の適用を図式的に例示している。
【図１０】検出された画像間モーションが所定のモーション判定基準を満たすかどうかを検出する第２の方法を例示する概略フローチャートである。
【図１１】フレーム間モーションが検出された画像領域におけるフレーム間変化を表現するために生成される変位ベクトルを図式的に例示している。
【図１２】受信されたオーディオデータが所定のオーディオ判定基準を満たすオーディオ信号から構成されるかどうかを検出する方法を例示する概略フローチャートである。
【図１３】振幅しきい値を超えるオーディオ信号の略図である。
【図１４】本発明を利用した例示的用途を図式的に例示しており、使用者は、ウェブカメラまたはビデオカメラの視野において拍手を用いて画面上の泡を破裂させる。
【符号の説明】
【００９３】
１０  システムユニット
１００  エモーションエンジン
２００  グラフィックスシンセサイザ
３００  サウンドプロセッサユニット
３０５  表示・サウンド出力装置
３１０  スピーカ装置
４００  読出し専用メモリ（ＲＯＭ）
４５０  コンパクトディスク（ＣＤ）／ディジタル多用途ディスク（ＤＶＤ）読取り装置
５００  ラムバスダイナミックランダムアクセスメモリ（ＲＤＲＡＭ）ユニット
７００  入出力プロセッサ（ＩＯＰ）
７０５、７１０  ポート
７１５Ａ、７１５Ｂ  ＵＳＢポート
７２０  不揮発性ＲＡＭメモリカード
７２５  ハンドヘルド型ゲームコントローラ
７３０  ビデオカメラ
７３５  マイク
７４０  ＬＥＤインジケータ
７４５  独立型マイク
７５０  専用ＲＡＭ
８００  外部ハードディスクドライブ（ＨＤＤ）
【図１】
2008504621.tif 000003
【図２】
2008504621.tif 000004
【図３】
2008504621.tif 000005
【図４】
2008504621.tif 000006
【図５】
2008504621.tif 000007
【図６】
2008504621.tif 000008
【図７】
2008504621.tif 000009
【図８】
2008504621.tif 000010
【図９】
2008504621.tif 000011
【図１０】
2008504621.tif 000012
【図１１】
2008504621.tif 000013
【図１２】
2008504621.tif 000014
【図１３】
2008504621.tif 000015
【図１４】
2008504621.tif 000016
【手続補正書】
【提出日】平成19年7月27日(2007.7.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
連続するビデオ画像および関係するオーディオ信号を処理するために構成されたデータ処理装置であって、
連続するビデオ画像において画像間モーションを検出するための手段と、
画像間モーションが１つ以上の所定のモーション判定基準を満たすどうかを検出するための手段と、
１つ以上の所定のオーディオ判定基準を満たしている関係するオーディオ信号におけるオーディオ信号パターンを検出するための手段と、
（ａ）１つ以上の所定のモーション判定基準を満たしている画像間モーションの検出、および、
（ｂ）１つ以上の所定のオーディオ判定基準を満たす関係するオーディオ信号におけるオーディオ信号パターンの検出が実質上同時に発生したとき、それに応答してデータ処理装置の制御機能を起動させるための起動手段と、
を備えるデータ処理装置。
【請求項２】
請求項１に記載のデータ処理装置であって、
一連の連続する画像の各々について、画像間モーションが検出された各画像において１つ以上のアクティブな画像領域を検出するための手段を備えており、
１つ以上のアクティブな画像領域のうちの少なくとも１つが、連続する画像間で所定の変位を受けている場合、所定のモーション判定基準は満たされていると検出するデータ処理装置。
【請求項３】
請求項２に記載のデータ処理装置であって、
連続する画像間のアクティブな画像領域の少なくとも１つの位置における変位が所定のしきい値より大きいかどうかを検出するための手段を備えており、
少なくとも１つのアクティブな画像領域の位置における変位がＮ個（Ｎは予め定められた整数）の連続する画像について所定のしきい値を上回ったままであり、その後、所定のしきい値未満に低下した場合、所定のモーション判定基準は満たされていると検出するデータ処理装置。
【請求項４】
請求項１に記載のデータ処理装置であって、
ビデオ画像に関して定義されたテスト領域の所定の部分において連続する画像間で画像間モーションが生じるかどうかを検出するための手段を備えており、
画像間モーションがＮ個（Ｎは予め定められた整数）の連続する画像についてテスト領域の所定の部分において連続する画像間で生じ、その後、所定のしきい値未満に低下した場合、所定のモーション判定基準は満たされていると検出するデータ処理装置。
【請求項５】
請求項１に記載のデータ処理装置であって、
一連のビデオ画像の各々について、画像間モーションが検出された複数のアクティブな画像領域を検出するための手段を備えており、
アクティブな画像領域のうち、相互に関連する少なくとも２つのアクティブな画像領域の変位が、所定の値未満に低下した場合、所定のモーション判定基準は満たされていると検出するデータ処理装置。
【請求項６】
請求項１乃至５の何れか一項に記載のデータ処理装置であって、
所定のモーション判定基準は、画像間モーションが所定の画像領域内部で生じるものであるデータ処理装置。
【請求項７】
請求項１乃至６の何れか一項に記載のデータ処理装置であって、
オーディオ信号パターンが検出され、モーション判定基準が満たされたオーディオ信号およびビデオ画像のシーケンスにおける時間相関位置の間に、しきい値量未満の時間変位が存在する場合には、検出の組がは満たされているとするデータ処理装置。
【請求項８】
請求項１乃至７の何れか一項に記載のデータ処理装置であって、
関係するオーディオ信号の振幅が所定のしきい値を超えているかどうかを検出するための手段を備えており、
関係するオーディオ信号の振幅が少なくとも所定の継続期間にわたり所定のしきい値を実質的に上回っている場合、所定のオーディオ判定基準は満たされているとするデータ処理装置。
【請求項９】
請求項１乃至７の何れか一項に記載のデータ処理装置であって、
関係するオーディオ信号のスペクトル特性を検出するための手段を備えており、
検出されたスペクトル特定が所定のパラメータに実質的に合致する場合、所定のオーディオ判定基準は満たされているとするデータ処理装置。
【請求項１０】
請求項１乃至９の何れか一項に記載のデータ処理装置であって、
連続するビデオ画像はビデオカメラから実質的にリアルタイムに受信され、関係するオーディオ信号はマイクから実質的にリアルタイムに受信されるデータ処理装置。
【請求項１１】
請求項１０に記載のデータ処理装置であって、
連続する画像を供給するためのビデオカメラを備えるデータ処理装置。
【請求項１２】
請求項１１に記載のデータ処理装置であって、
ビデオカメラと一体のマイクを備えるデータ処理装置。
【請求項１３】
請求項１０に記載のデータ処理装置であって、
オーディオデータを供給するためのマイクを備えるデータ処理装置。
【請求項１４】
請求項１乃至１３の何れか一項に記載のデータ処理装置であって、
表示装置を備えるデータ処理装置。
【請求項１５】
請求項１４に記載のデータ処理装置であって、
連続するビデオ画像の表現を表示装置に表示するための手段を備えるデータ処理装置。
【請求項１６】
請求項１４又は１５に記載のデータ処理装置であって、
画像間モーションの表現を表示装置に表示するための手段を備えるデータ処理装置。
【請求項１７】
請求項１乃至１６の何れか一項に記載のデータ処理装置であって、
前記データ処理装置はゲーム機であり、前記制御機能はゲーム制御機能であるデータ処理装置。
【請求項１８】
データ処理方法であって、
一連の連続するビデオ画像において画像間モーションを検出するステップと、
画像間モーションが１つ以上の所定のモーション判定基準を満たすかどうかを検出するステップと、
１つ以上の所定のオーディオ判定基準を満たしている関係するオーディオ信号におけるオーディオ信号パターンを検出するステップと、
（ａ）１つ以上の所定のモーション判定基準を満たしている画像間モーションの検出、および、
（ｂ）１つ以上の所定のオーディオ判定基準を満たす関係するオーディオ信号におけるオーディオ信号パターンの検出が実質上同時に発生したとき、それに応答してデータ処理装置の制御機能を起動させるステップと、
を含む、データ処理方法。
【請求項１９】
請求項１８に記載のデータ処理方法であって、
ビデオカメラから連続する画像を受け取るステップと、
マイクからオーディオデータを受け取るステップと、
を含む、データ処理方法。
【請求項２０】
請求項１８または請求項１９に記載の方法を実行するためのプログラムコードを有するコンピュータソフトウェア。
【請求項２１】
請求項２０に記載のソフトウェアを供給するための供給媒体。
【請求項２２】
媒体は伝送媒体である、請求項２１に記載の供給媒体。
【請求項２３】
媒体は記憶媒体である、請求項２１に記載の供給媒体。
【請求項２４】
連続するビデオ画像および関係するオーディオ信号を処理するために構成されたデータ処理装置であって、
前記連続するビデオ画像において画像間モーションを検出する第１の検出器と、
前記画像間モーションが１つ以上の所定のモーション判定基準を満たすかどうかを検出する第２の検出器と、
１つ以上の所定のオーディオ判定基準を満たしている前記関係するオーディオ信号におけるオーディオ信号パターンを検出する第３の検出器と、
（ａ）前記１つ以上の所定のモーション判定基準を満たしている画像間モーションの検出、および、
（ｂ）１つ以上の所定のオーディオ判定基準を満たす前記関係するオーディオ信号におけるオーディオ信号パターンの検出が実質上同時に発生したとき、それに応答して前記データ処理装置の制御機能を起動させるロジックと、
一連の前記ビデオ画像の各々について、画像間モーションが検出された複数のアクティブな画像領域を検出する第４の検出器と、を備えており、
前記アクティブな画像領域のうちの少なくとも２つの互いに関する変位が所定の値未満に低下した場合、所定のモーション判定基準は満たされているとするデータ処理装置。
【国際調査報告】
2008504621.tif 000017
2008504621.tif 000018
2008504621.tif 000019
2008504621.tif 000020
2008504621.tif 000021