(57)【要約】３Ｄカメラを使用してリアルタイムの３次元インタラクティブ環境を可能にする発明が提供されている。本発明には物理シーンを表す複数の画素に対する２次元データ値を取得するオペレーションと、深度検出デバイスを使用して複数の画素のうちの各画素に対する深度値を取得するオペレーションとを含む。各深度値は物理シーンの物理オブジェクトから深度検出デバイスまでの距離を示す。少なくとも１つの、コンピュータによって生成されたバーチャルオブジェクトはシーンに挿入され、また、シーンの物理オブジェクトとバーチャルオブジェクト間のインタラクションはバーチャルオブジェクトと取得した深度値の座標に基づき検出される。
2006528395.tif 000002
【特許請求の範囲】
【請求項１】
リアルタイムの３次元インタラクティブ環境を提供する方法であって、
物理シーンを表す複数の画素に対する２次元データ値を取得するオペレーションと、
深度検出デバイスを使用して複数の画素のうちの各画素に対する深度値を取得するオペレーションであって、各深度値は前記物理シーンの物理オブジェクトから前記深度検出デバイスまでの距離を示すものであるオペレーションと、
コンピュータが生成した少なくとも１つのバーチャルオブジェクトを前記シーンに挿入するオペレーションと、
前記バーチャルオブジェクトと前記取得した深度値の座標に基づき前記シーンの物理オブジェクトと前記バーチャルオブジェクト間のインタラクションを検出するオペレーションと、を含む方法。
【請求項２】
前記複数の画素に対する前記２次元値はカラー値である、請求項１記載の方法。
【請求項３】
各深度値は前記対応の画素が表す前記物理シーンの前記物理オブジェクトから前記検出デバイスまでの距離を示す、請求項１記載の方法。
【請求項４】
前記インタラクションは前記シーンの物理オブジェクトと前記バーチャルオブジェクト間のコリジョンである、請求項１記載の方法。
【請求項５】
前記バーチャルオブジェクトと物理オブジェクトが前記バーチャルオブジェクトの３次元座標と前記物理オブジェクトの３次元座標に基づき同じ３次元空間を占有するときを検出するオペレーションをさらに含む、請求項４記載の方法。
【請求項６】
前記シーンの物理オブジェクトの外観を視覚的に変更するオペレーションをさらに含む、請求項１記載の方法。
【請求項７】
前記物理オブジェクトはユーザである、請求項６記載の方法。
【請求項８】
コンピュータによって生成された衣装は前記ユーザを表す画素に対する前記深度値に基づき前記ユーザにマッピングされる、請求項７記載の方法。
【請求項９】
最大深度値域を定義するオペレーションをさらに含み、前記最大深度値域は深度値が取得される最も遠い距離を示す、請求項１記載の方法。
【請求項１０】
前記ユーザが前記検出デバイスから前記最大深度値域より近い距離にいる場合にのみ、ユーザに対する深度値を検出するオペレーションをさらに含む、請求項９記載の方法。
【請求項１１】
前記深度検出デバイスは深度カメラである、請求項１記載の方法。
【請求項１２】
リアルタイムの３次元インタラクティブ環境を提供するために、コンピュータが読み込みできる媒体に組み込まれたコンピュータプログラムであって、
物理シーンを表す複数の画素に対して２次元データ値を取得するプログラム命令と、
深度検出デバイスを使用して前記複数の画素のうちの各画素に対して深度値を取得するプログラム命令であって、各深度値は前記物理シーンの物理オブジェクトから前記検出デバイスまでの距離を示すもプログラム命令と、
コンピュータによって生成された少なくとも１つのバーチャルオブジェクトを前記シーンに挿入するプログラム命令と、
前記シーンの物理オブジェクトと前記バーチャルオブジェクトのインタラクションを前記バーチャルオブジェクトと前記取得した深度値の座標とに基づき検出するプログラム命令と、を含むコンピュータプログラム。
【請求項１３】
前記複数の画素に対する前記２次元値はカラー値である、請求項１２記載のコンピュータプログラム。
【請求項１４】
各深度値は前記対応の画素が表す前記物理シーンの物理オブジェクトから前記検出デバイスまでの距離を示す、請求項１２記載のコンピュータプログラム。
【請求項１５】
前記インタラクションは前記シーンの物理オブジェクトと前記バーチャルオブジェクト間のコリジョンである、請求項１２記載のコンピュータプログラム。
【請求項１６】
最大深度値域を定義するプログラム命令をさらに含み、前記最大深度値域は深度値が取得される最も遠い距離を示す、請求項１２記載のコンピュータプログラム。
【請求項１７】
リアルタイムの３次元インタラクティブ環境を提供するシステムであって、
物理シーンを表す複数の画素に対する２次元データ値を取得できる深度検出デバイスを含み、前記深度検出デバイスはさらに前記複数の画素のうちの各画素に対する深度値を取得でき、各深度値は前記物理シーンの物理オブジェクトから前記深度検出デバイスまでの距離を示すものであって、
少なくとも１つのバーチャルオブジェクトを前記シーンに挿入するロジックを含み、前記バーチャルオブジェクトはコンピュータで生成されており、かつ、
前記シーンの物理オブジェクトと前記バーチャルオブジェクト間のインタラクションを、前記バーチャルオブジェクトと前記取得した深度値の座標とに基づき検出するロジック、を含む、システム。
【請求項１８】
前記複数の画素に対する前記２次元値はカラー値であり、前記各深度値は前記対応の画素が表す前記物理シーンの物理オブジェクトから前記検出デバイスまでの距離を示す、請求項１７記載のシステム。
【請求項１９】
最大深度値域を定義するロジックをさらに含み、前記最大深度値域は深度値域が取得される最も遠い距離を示す、請求項１７記載のシステム。
【請求項２０】
前記ユーザが前記検出デバイスまで前記最大深度値域より手前の距離にいる場合にのみ、ユーザに対して深度値を検出するロジックをさらに含む、請求項１９記載のシステム。
【請求項２１】
リアルタイムの３次元インタラクティブ環境を提供する方法であって、
物理シーンを表す複数の画素に対する２次元データ値を取得するオペレーションと、
深度検出デバイスを使用して複数の画素のうちの各画素に対する深度値を取得するオペレーションであって、各深度値は前記物理シーンの物理オブジェクトから前記深度検出デバイスまでの距離を示すものであるオペレーションと、
前記取得した２次元データ値と前記取得した深度値に基づき前記物理シーンの各物理オブジェクトに対して３次元体積情報を概算するオペレーションと、を含む方法。
【請求項２２】
コンピュータによって生成された少なくとも１つのバーチャルオブジェクトを前記シーンに挿入するオペレーションをさらに含み、前記バーチャルオブジェクトは前記バーチャルオブジェクトに対する３次元体積情報を含む、請求項２１記載の方法。
【請求項２３】
前記シーンの物理オブジェクトと前記バーチャルオブジェクト間のインタラクションを、前記バーチャルオブジェクトに対する前記３次元体積情報と前記物理オブジェクトに対する前記３次元情報の座標に基づき検出するオペレーションをさらに含む、請求項２２記載の方法。
【請求項２４】
前記複数の画素に対する前記２次元値はカラー値である、請求項２１記載の方法。
【請求項２５】
各深度値は前記対応の画素が表す前記物理シーンの物理オブジェクトから前記検出デバイスまでの距離を示す、請求項２１記載の方法。
【請求項２６】
リアルタイムの３次元インタラクティブ環境を提供するために、コンピュータ読み取り可能な媒体に記録されたコンピュータプログラムであって、
物理シーンを表す複数の画素に対して２次元データ値を取得するプログラム命令と、
深度検出デバイスを使用して前記複数の画素のうちの各画素に対して深度値を取得するプログラム命令であって、各深度値は前記物理シーンの物理オブジェクトから前記深度検出デバイスまでの距離を示すプログラム命令と、
前記取得した２次元データ値と前記取得した深度値に基づき前記物理シーンの各物理オブジェクトに対する３次元体積情報を概算するプログラム命令と、を含む、コンピュータプログラム。
【請求項２７】
少なくとも１つのコンピュータによって生成されたバーチャルオブジェクトを前記シーンに挿入するプログラム命令をさらに含み、前記バーチャルオブジェクトは前記バーチャルオブジェクトに対する３次元体積情報を含む、請求項２６記載のコンピュータプログラム。
【請求項２８】
前記シーンの物理オブジェクトと前記バーチャルオブジェクト間のインタラクションを前記バーチャルオブジェクトに対する前記３次元体積情報と前記物理オブジェクトに対する前記３次元体積情報の座標に基づき検出するプログラム命令をさらに含む、請求項２７記載のコンピュータプログラム。
【請求項２９】
前記複数の画素に対する前記２次元値はカラー値である、請求項２６記載のコンピュータプログラム。
【請求項３０】
各深度値は前記対応の画素が表す前記物理シーンの物理オブジェクトから前記検出デバイスまでの距離を示す、請求項２６記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
概して本発明は動画像処理(ビデオイメージプロセッシング)に関し、より詳細には３Ｄカメラを使用してリアルタイムのインタラクティブコンピュータ環境を提供することに関する。
【背景技術】
【０００２】
今日のコンピュータ技術の処理能力が高まるにつれ、コンピュータシステムとインタラクトする新しくて独創的な方法が利用可能になっている。例えば、新しいオンラインキーボードによって人々は物理キーボードを必要とせずに情報を入力することができ、また、複数のジョイスティックや方向キーを備えた新たなゲームコントローラはコンピュータシステムとインタラクトするユーザの能力を高める。携帯用の入力デバイスに加えて、現在はビデオイメージを用いる入力デバイスが利用可能であり、ユーザはビデオモニタなどのグラフィックディスプレイ上のオブジェクトを制御することができる。
【０００３】
そのようなビデオ入力デバイスは、多くの場合、ビデオキャプチャデバイスの視野内のユーザの動作または位置に応答する。より最近では、ビデオイメージプロセッシングはビデオイメージのシーケンスとしてキャプチャ済みのユーザの動作をゲームコントロール用の信号に変換するために使用されている。従来技術の入力システムにはシステムユーザが立つ視野をスキャンするビデオキャプチャデバイスを含む。キャプチャしたビデオイメージはビデオデジタイザにかけられる。このビデオデジタイザは、デジタイザから受信したデジタル情報の分析と処理を行うプロセッサへデジタル出力を送信するものである。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
プロセッサは視野内の参加者（participant）の位置や動作に基づいてディスプレイ上にオブジェクトを移動させるように、グラフィック生成システムによって使用される信号を生成する。その結果、オペレーション又はデバイスの出力又はグラフィックディスプレイは参加者の位置や動作に影響を受けるが、求められるコンピュータ処理時間は非常に長く複雑であることが多く、その結果、実質的なコンピュータリソース及び／またはタイムリソースが求められる傾向にある。
【０００５】
さらに、グラフィックディスプレイ上のオブジェクトの動作に影響を及ぼすように使用されるユーザのビデオイメージデータを使用している周知のデバイス及び方法は一般に、ビデオカメラの視野内の参加者が身につける実質的に邪魔な装備によって特徴付けられる。そのようなシステムには参加者が着用を求められる付加的な装備、例えば、検出がより容易で必須の部位もしくは色、及び／又は発光ダイオードなどの可視光源を備えたアームカバー又はグローブが挙げられる。残念なことにそのようなシステムは、コンシューマアイテムに対しての市場における要求を満たすユーザ入力デバイス、例えばビデオゲームコントローラにおいて必要とされる、簡便性、クイックレスポンス、使いやすさを提供することができない。
【０００６】
前述のことを鑑みて、３次元環境においてインタラクションが可能な改良されたシステムと方法が求められている。この求められている方法ではアームカバーやグローブなどの付加的装備を必要とせずにユーザインタラクションが可能である。さらに、この方法は非常に煩わしい処理能力を必要とせず、また、リアルタイムで機能する能力を有し、その結果、ユーザにナチュラルなコンピュータインタラクション経験を提供することができることが求められる。
【課題を解決するための手段】
【０００７】
概して本発明の実施形態は３Ｄカメラを使用してリアルタイムの３次元インタラクティブ環境を提供することにより、これらの必要性を満たす。一般に本発明の実施形態によって、ユーザはユーザの実際の物理環境と視覚的に結合されたコンピュータによって生成されたのオブジェクト及び環境とインタラクティブ（相互に影響を及ぼすことが可能）になり、また、影響を及ぼすことができる。一実施形態では、方法はリアルタイムの３次元インタラクティブ環境を提供するために開示されている。この方法は物理シーンを表す複数の画素に対する２次元のデータ値を取得するオペレーション、及び深度検出デバイスを使用して複数の画素のうちの各画素に対する深度値を取得するオペレーションを含む。各深度値は物理シーンの物理オブジェクトから深度検出デバイスまでの距離を示す。少なくとも１つのコンピュータによって生成されたバーチャルオブジェクトがシーンに挿入され、そのシーンの物理オブジェクトとそのバーチャルオブジェクト間のインタラクションが、そのバーチャルオブジェクトと取得した深度値の座標に基づいて検出される。例えば、複数の画素に対する２次元値はカラー値であることができ、各深度値は対応する画素が表す物理シーンの物理オブジェクトから検出デバイスまでの距離を示す。一形態では、インタラクションはシーンの物理オブジェクトとバーチャルオブジェクト間の衝突（コリジョン）であることができる。この形態では、コリジョンはバーチャルオブジェクトと物理オブジェクトがバーチャルオブジェクトの３次元座標と物理オブジェクトの３次元座標に基づき同じ３次元空間を占有する場合に検出される。シーンの物理オブジェクトの外観を視覚的に変更するようにしてもよい。例えば、物理オブジェクトはユーザであることができ、ユーザを表す画素に対する深度に基づいてコンピュータによって生成された衣服をユーザにマッピングすることができる。さらに、深度値が取得される最も遠い距離として、最大深度値域が定義される。この形態では、検出デバイスからユーザまでの距離がこの最大深度値域よりも小さいときにのみ、ユーザに対する深度値が検出される。
【０００８】
物理シーンを表す複数の画素に対する２次元データ値を取得できる深度検出デバイスを含むシステムも提供される。この深度検出デバイスはさらに複数の画素のうちの各画素に対する深度値を取得することができる。上述のように、各深度値は物理シーンの物理オブジェクトから深度検出デバイスまでの距離を示す。このシステムには少なくとも１つの、コンピュータによって生成されたバーチャルオブジェクトをシーンに挿入するロジックも備えている。さらに、このシステムはシーンの物理オブジェクトとバーチャルオブジェクト間のインタラクションを、このバーチャルオブジェクトと取得した深度値の座標に基づいて検出するロジックを備えている。上述のように、複数の画素に対する２次元値は、カラー値であることができ、各深度値は対応する画素が表す物理シーンの物理オブジェクトから検出デバイスまでの距離を示す。このシステムは最大深度値域を定義するロジックを備えるようにしてもよく、この最大深度値域は、深度値が取得される最も遠い距離を示す。この形態では、ユーザが検出デバイスまで最大深度値域よりも手前の距離にいるときだけユーザに対する深度値を検出するロジックも含む。
【０００９】
リアルタイムの３次元インタラクティブ環境を提供するための更なる方法が、本発明の更なる実施形態で開示されている。上述のように、この方法は物理シーンを表す複数の画素に対する２次元データを取得するオペレーションを含む。同じく上述しているように、複数の画素のうちの各画素に対する深度値は深度検出デバイスを使用して取得される。各深度値は物理シーンの物理オブジェクトから深度検出デバイスまでの距離を示す。取得した２次元データ値と取得した深度値に基づき、３次元体積情報（ボリューム情報）が物理シーンの各物理オブジェクトに対して概算される。さらに、バーチャルオブジェクトに対する３次元体積情報を備えた、コンピュータによって生成されたバーチャルオブジェクトがシーンに挿入される。このようにして、シーンの物理オブジェクトとバーチャルオブジェクト間のインタラクションは、このバーチャルオブジェクトと物理オブジェクトに対する３次元体積情報の座標に基づいて検出される。本発明のその他の形態及び利点は、本発明の原理の一例によって例示されている添付の図面と併せて、以下の説明を読めば明らかであろう。
【００１０】
本発明は更なる利点と併せて、添付の図面と併せて以下の説明を読めば最もよく理解されるであろう。
【発明を実施するための最良の形態】
【００１１】
本発明は３Ｄカメラを使用してリアルタイムの３次元インタラクティブ環境を提供するために開示されている。概して、本発明の実施形態によって、ユーザはユーザの現実の物理環境と視覚的に結合した環境及びコンピュータオブジェクトとインタラクトし、また影響を及ぼすことができる。３Ｄカメラの使用を通じて、３次元イメージをリアルタイムで取得することができる。これらの３次元イメージはデジタルオブジェクトをユーザの環境内に配置し、ユーザの動作をトラッキングし、またユーザがデジタルオブジェクトとインタラクトするときを正確に検出するために利用される。以下の説明では、本発明を完全に理解するために、多くの具体的な詳細が説明されている。しかし、これらの詳細のある部分、又は全てが無くても本発明を実行することができることは当業者にとっては明らかであろう。その他の例では、周知のプロセスステップは、本発明を不必要に明瞭にしないように詳細は説明されていない。
【００１２】
以下の説明では、用語“深度カメラ”及び“３Ｄカメラ”は、２次元画素情報に加えて、距離や深度情報も取得できるいずれのカメラを称する。例えば、深度カメラは制御された赤外光を利用して距離情報を取得することができる。その他の一般的な深度カメラはステレオカメラペアであり、これは２つの標準カメラを使用して距離情報を三角法で測定する。同様に、用語“深度検出デバイス”は、２次元画素情報に加えて距離情報も取得できるいずれのタイプのデバイスを称する。
【００１３】
３次元イメージの最新の進歩によってリアルタイムのインタラクティブコンピュータアニメーションに更なる可能性が与えられている。特に、新たな“深度カメラ”は通常の２次元ビデオイメージに加えて、第３次元をキャプチャしマッピングする機能を提供している。新たな深度データとともに、本発明の実施形態は、ビデオシーン内の様々な位置に、コンピュータによって生成されたオブジェクトを、その他のオブジェクトの後部に配置する場合も含めて、リアルタイムで配置することができる。
【００１４】
さらに本発明の実施形態はユーザに対して、リアルタイムのインタラクティブなゲーム経験を提供する。例えば、ユーザは様々なコンピュータによって生成されたオブジェクトとリアルタイムでインタラクトできる。さらに、ビデオシーンをリアルタイムで変更してユーザのゲーム経験を高めることができる。例えば、コンピュータによって生成された衣装をユーザの衣服の上に配置することができ、また、コンピュータによって生成された光源を利用してビデオシーン内に仮想的な影、つまりバーチャルシャドウを投射することができる。従って、本発明の実施形態と深度カメラを使用することによって、ユーザは各自の居間でインタラクティブなゲーム環境を経験することができる。
【００１５】
図１Ａは本発明の一実施形態によるリアルタイムの３次元インタラクティブ環境を提供するための一般的なシステム１００のブロック図である。図１Ａに示すように、このシステム１００は深度カメラ１０２、入力イメージプロセッサ１０４、出力イメージプロセッサ１０６及びビデオディスプレイデバイス１０８を備えている。
【００１６】
上述しているように、深度カメラ１０２は通常の２次元のビデオイメージに加えて、第３次元をキャプチャし、かつマッピングする機能を備えている。図１Ｂ及び１Ｃは一般的な深度カメラ１０２によって生成されたイメージを例示している。特に、図１Ｂは一般的な深度カメラを使用してキャプチャした２次元データ１２０を示した説明図である。通常のカメラと同じく、深度カメラはビデオイメージを構成する複数の画素に対して、２次元データをキャプチャする。これらの値は画素に対するカラー値であり、一般に、各画素に対して赤、緑、及び青の（ＲＧＢ）値である。このようにして、カメラがキャプチャしたオブジェクトは、モニタ上に２次元オブジェクトとして現れる。例えば、図１Ｂでは、一般的なシーンには、背景に示されている丘の間に位置する、テーブル１２６上に配置された円筒状オブジェクト１２２及び球型オブジェクト１２４が含まれる。
【００１７】
しかし、従来のカメラとは違って、深度カメラはシーンに対する深度値もキャプチャする。図１Ｃは一般的な深度カメラを使用してキャプチャした深度データ１５０を例示している。図１Ｂに例示しているように、この深度カメラはシーンの各画素に対するＲＧＢ値を使用してシーンのｘおよびｙ要素をキャプチャする。しかし、図１Ｃに示すように、深度カメラはシーンのｚ要素もキャプチャし、これはシーンに対する深度値を表す。この深度値はｚ軸に対応するので、この深度値は多くの場合、ｚ値と呼ばれる。
【００１８】
オペレーションにおいては、ｚ値はシーンの各画素に対してキャプチャされる。各ｚ値はカメラから関連画素に対応するシーンの特定のオブジェクトまでの距離を表す。例えば、図１Ｃでは、ｚ値は円筒状オブジェクト１５２、球型オブジェクト１５４、及びテーブル１５６の一部に対して例示される。さらに、最大検出値域が定義され、その最大検出値域を越えると深度値は検出されない。例えば、図１Ｃにおいて、最大深度値域１５８は全ての画素に同じ深度値が与えられている垂直面として表される。以下に更なる詳細を説明しているように、本発明の実施形態においては、この最大値域面はユーザ定義のオブジェクトトラックングを提供するために利用され得る。従って、深度カメラを用いることによって、各オブジェクトを３次元でトラッキングすることができる。その結果、本発明の実施形態のコンピュータシステムは、２次元画素データとともにｚ値を利用することができ、ユーザに対して改良した３次元インタラクティブ環境を生成することができる。
【００１９】
図１Ａを振り返ると、入力イメージプロセッサ１０４はキャプチャしたビデオイメージと深度データとを出力イメージプロセッサへ送る信号に変換する。この出力イメージプロセッサ１０６は入力イメージプロセッサ１０４から受信した信号に応答して、ビデオディスプレイデバイス１０８上のバーチャルオブジェクトの動作と状態とを反映させるようにプログラムされる。
【００２０】
本発明のこれらの、及び付加的な形態は、ソフトウエア命令を実行する１つまたはそれ以上のプロセッサによって実装され得る。本発明の一実施形態によれば、単一のプロセッサは入力イメージプロセッシングと出力イメージプロセッシングの両方を実行する。しかし、図に示すように、及び説明を簡略化するために、このプロセッシングオペレーションは、入力イメージプロセッサ１０４と出力イメージプロセッサ１０６間に分割されて示されている。本発明は１つ以上のプロセッサなどの、いずれの具体的なプロセッサ構造に限定されるものとして解釈されないことに注意されたい。図１Ａに示す複数のプロセッシングブロックとその他の図面は、説明の都合上のためだけに示される。
【００２１】
図１Ｄは本発明の一実施形態によるリアルタイムの３次元インタラクティブ環境を提供するための一般的なシステム環境を例示している。このシステム環境には、深度カメラ１７０、ビデオディスプレイデバイス１７２、及びビデオゲーム機などのプロセッサの機能性を備えたコンソール１７４、を備えている。一般に、ユーザとユーザの環境（居間など）は、深度カメラ１７０の視野内に位置する。プロセッシングシステム１７４はSonyR PlaystationTMII又はSonyR PlaystationTMIタイプのプロセッシング及びコンピュータエンターテインメントシステムなどのエンターテインメントシステムによって実装され得る。しかし、プロセッシングシステム１７４は、パーソナルコンピュータ、ワークステーション、ラップトップコンピュータ、無線コンピュータデバイスなどのその他のコンピュータシステムにおいて、又は、グラフィックイメージデータを受信し処理できるいずれのその他のタイプのコンピュータデバイスに実装され得る。
【００２２】
図２は本発明の一実施形態によるリアルタイムの３次元インタラクティブ環境を提供するための方法２００を示したフローチャートである。開始オペレーション２０２において、前処理オペレーションが実施される。前処理オペレーションには３次元オブジェクトを定義するオペレーション、最適なパフォーマンスのために深度カメラを調整するオペレーション、及び、本発明の開示を注意深く読んだ後で当業者には自明のその他の前処理オペレーションを含む。
【００２３】
オペレーション２０４では、最大深度値域が定義される。上述のように、最大深度値域は、その最大深度値域を越えると深度値が検出されないものとして定義される。一般に、最大深度値域は、全ての画素に同じ深度値が与えられている垂直面として表される。この最大値域面は図３に例示しているように、ユーザ定義のオブジェクトトラッキングを提供するために、本発明の実施形態によって利用される。
【００２４】
図３は本発明の一実施形態による最大深度値域面１５８とインタラクトするユーザ３０２の上面図を例示している。図３に示すように、トラッキング距離を定義する最大深度値域面１５８が定義される。最大深度値域面１５８の前方のオブジェクトはトラッキングされ、一方で最大深度値域面１５８の後方のオブジェクトはトラッキングされない。このようにして、ユーザ３０２は、ユーザの体もしくはオブジェクトの一部を最大深度値域面１５８に交差させることによって、システムとインタラクトするときを決定することができる。
【００２５】
例えば、図３のユーザ３０２が各手３０４を最大深度値域面１５８の前に置くと、システムは各手３０４を検出しトラッキングする。このようにして、ユーザ３０２は、システムとインタラクトするタイミングを制御し、また、システムは例えば予想外の体の動作が引き起こす、混乱を招く情報をいずれも回避することができる。さらに、ユーザの後ろを移動するその他の人物、又は例えば、家庭のペットが引き起こす動作による混乱をも回避することができる。
【００２６】
例えば、本発明の一実施形態では、ユーザ３０２は最大深度値域面１５８にわたってユーザ自身の手でジェスチャーすることによって、画面上のオブジェクトをドラッグ及びドロップすることができる。この実施形態では、ユーザは各手３０４またはその他のオブジェクトを最大深度地域面１５８を横切るように延ばすことで、画面上のオブジェクトとのインタラションを開始できる。次いで、深度カメラにより提供された深度データを使用してユーザの手の動きをトラッキングすることができる。ユーザが各手を最大深度値域面１５８の後ろに引っ込めるとトラッキングが終了する。トラッキング中、動いてきたユーザの手にあたったオブジェクトは、移動および操作がなされる。以下にその詳細を説明する。
【００２７】
図２に戻ると、オペレーション２０６において、シーンを構成する各画素の２次元データ値が取得される。上述のように、深度カメラはビデオイメージを構成する複数の画素に対して２次元データをキャプチャすることができる。これらの値は画素に対するカラー値であり、一般的には各画素に対して赤、緑、及び青の（ＲＧＢ）値である。このようにして、カメラがキャプチャしたオブジェクトは、モニタ上で２次元オブジェクトとして現れる。
【００２８】
例えば、図４は本発明の一実施形態による一般的なシーンに対する２次元データ４００を示した説明図である。図４の一般的なシーンは自宅の居間にいるユーザ３０２を例示している。しかし、本発明の実施形態はユーザが所望するいずれの場所でも利用することができることに注意されたい。明らかなように、様々な物理オブジェクトがこの環境において配置されている。例えば、図４には、部屋の後壁４０６にある絵画に加え、花瓶４０２とソファ４０４がある。以下に更なる詳細を説明しているように、これらの一般的なオブジェクトは本発明の実施形態の特性を例示している。
【００２９】
一般に、ユーザ３０２は深度カメラをユーザの前の適切な場所に配置する。さらに、カメラアングル、絞り設定、及び本発明の開示を注意深く読んだ後に当業者にとっては明らかであるその他の設定に様々な調整を施すことができる。カメラはそのシーンのビデオデータをキャプチャし、通常、そのようなビデオデータには、そのシーンを構成している画素のカラー値が含まれる。
【００３０】
図２に戻ると、オペレーション２０８において、シーンを構成している各画素の深度値が取得される。２次元データのキャプチャに加え、深度カメラはシーンに対する深度値もキャプチャする。上述のように、深度カメラはシーンの各画素に対するＲＧＢ値を使用して、シーンのｘ及びｙ要素をキャプチャする。しかし、深度カメラはシーンに対する深度値を表す、シーンのｚ要素もキャプチャする。
【００３１】
従って、オペレーション２０８では、ｚ値はシーンの各画素に対してキャプチャされる。各ｚ値はカメラから関連の画素と対応するシーンの特定のオブジェクトまでの距離を表す。例えば、図５は本発明の一実施形態による、図４の一般的なシーンに対するｚ値を例示している。このｚ値はユーザ３０２に対して含まれる。しかし、図５の例では、最大深度値域面１５８はユーザ３０２の真後ろに定義済みであり、従って花瓶、ソファ、及び後壁を含むシーンのその他のオブジェクトに対する深度値は除かれている。しかし、最大深度値域面１５８はいずれの距離においても定義することができることに注意されたい。従って、最大深度値域面１５８は一般的なシーンにおいては、花瓶、ソファ、及び後壁を含めるように、さらに後方に定義することができる。
【００３２】
このようにして、ユーザ３０２の位置及び動作をトラッキングできる。さらに、深度情報を使用して、ユーザ３０２を３次元でトラッキングし、その結果、シーン内にオブジェクトを現実的に配置することができる。さらに、３次元データを使用することによって、ユーザは現実的な方法でバーチャル環境とインタラクトでき、その結果、ユーザ３０２の経験を高めることができる。
【００３３】
さらに、本発明の一実施形態はｚ値を用いてシーンのオブジェクトに対して完全な３Ｄ体積情報を構築することができる。一般に、深度カメラ自体はすべての体積情報を提供するわけではない。つまり、深度カメラはカメラが見ることができるオブジェクト表面の画素に対するｚ値を提供する。そのため、深度カメラはその表面に対するｚ値、例えばユーザ３０２の背中など、は提供しない。従って、本発明の一実施形態はシーンのオブジェクトに対する完全な体積情報を概算し、完全な３Ｄ体積を作る。これはコリジョンを判定するために、又はオブジェクトとオブジェクトとの間の距離を測定するために、その他の３Ｄオブジェクトと後で交差することができる。
【００３４】
例えば図５において、本発明の一実施形態は深度カメラが見ることができないユーザ３０２の“後部の”ｚ値を概算する。一実施形態では、特定のオブジェクトの体積を概算するために、予め生成されたモデルが利用される。予め生成されたモデルは完全に正確であるとは限らないが、体積の適切な概算を得ることは可能である。例えば、特定の人物の体積を概算する場合、その人物の深度はその人物の幅に等しいと概算することができる。モデルが正確な場合、本発明の実施形態では、実際のオブジェクトの方向に一致させるようにモデルの向きを合わせ、次に、そのモデルを利用してオブジェクトの体積を概算する。例えば、オブジェクトがソファの場合、本発明の実施形態はモデルのソファをソファオブジェクトに一致させるように向きを合わせ、ソファサイズとモデルデータに基づいて、ソファオブジェクトの体積を判断する。
【００３５】
このようにして、ユーザ３０２の完全な３Ｄ体積が構築され、これは後でコンピュータによって生成されたバーチャルオブジェクトとインタラクトするために利用される。このようにして、本発明の実施形態は、単一の一貫した方法で、現実のオブジェクトとバーチャルオブジェクトの両方を処理することができる。
【００３６】
図２を振り返ると、オペレーション２１０において、バーチャルオブジェクトがシーンに挿入される。オペレーション２０８で取得した新たな深度データと共に、本発明の実施形態は、オペレーション２１０におけるその他のオブジェクトの後部を含む、ビデオシーン内の様々な場所にリアルタイムでコンピュータによって生成されたオブジェクトを配置することができる。
【００３７】
このようにして、本発明の実施形態はリアルタイムのインタラクティブなゲーム経験をユーザに提供する。例えば、ユーザはリアルタイムでコンピュータによって生成された様々なオブジェクトとインタラクトできる。さらに、ビデオシーンをリアルタイムで変更して、ユーザのゲーム経験を高めることができる。例えば、コンピュータによって生成された衣装をユーザの衣服の上に挿入することができ、また、コンピュータによって生成された光源を利用してビデオシーン内のバーチャルシャドウを投射することができる。従って、本発明の実施形態と深度カメラを使用することにより、ユーザは自身の居間でインタラクティブなゲーム環境を経験することができる。
【００３８】
例えば図６は本発明の一実施形態による、シーンに挿入されたコンピュータによって生成されたバーチャルオブジェクトを示した説明図である。図４のように、シーンには部屋の後壁４０６にある絵画に加えて、花瓶４０２とソファ４０４を含む。前に述べているように、深度カメラは２次元画素データを使用してこれらの物理オブジェクトをキャプチャする。さらに、上記にも述べているように、ユーザ３０２に対するこの例では、深度カメラは深度データをキャプチャする。深度データを使用して、本発明の実施形態はバーチャルオブジェクトをシーンに挿入する。例えば、図６において、２つのバーチャルオブジェクト６００と６０２がそのシーンに追加されている。例示のように、付加的深度情報が利用可能なことから、バーチャルオブジェクト６００と６０２を現実的な方法でそのシーンに挿入することができる。
【００３９】
つまり、オペレーション２０８で取得した深度データは、３次元空間でユーザ３０２の正確な位置を判断するために利用される。その結果、バーチャルな“鉛筆”オブジェクト６００をユーザ３０２の“後方”に現れるように配置し、変更し、かつアニメーション化できる。同様に、バーチャル球体６０２を例えばユーザ３０２の“前方”に現れるように配置し、変更し、かつアニメーション化できる。さらに、最大深度値域を後壁４０６の位置の近くまで拡張することによって、挿入したバーチャルオブジェクトはユーザの部屋でその他のオブジェクトとインタラクトするように現れることができる。さらに、本発明の一実施形態では、バーチャル光源をシーンに挿入して、バーチャルオブジェクトから“影”６０４と６０６を作る。これによりバーチャルシーンのリアリズムがさらに高まる。床とソファ４０４の正確な３次元位置は深度データから判断できるので、バーチャル球体６０２についてコンピュータにより生成された影６０６は、床の上に出現しており、また、鉛筆６０２についてコンピュータにより生成された影は、ソファ４０４と床とに出現している。図７に示すように、バーチャルオブジェクトとしては、コンピュータによって生成された、部屋内の物理オブジェクトへの変更も含まれる。
【００４０】
図７は本発明の一実施形態による、コンピュータによって生成された部屋内の物理オブジェクトへの変更を示した説明図である。図４のように、このシーンでは、部屋の後壁４０６にある絵画に加えて、花瓶４０２とソファ４０４を含む。深度カメラはこれらの物理オブジェクトを、前述のように２次元画素データを使用してキャプチャする。また、同様に上述しているように、ユーザ３０２に対するこの例では、深度カメラは深度データをキャプチャする。深度データを使用して、本発明の実施形態はシーンの物理オブジェクトを視覚的に変更することができる。例えば図７において、そのシーンにはコンピュータによって生成された衣装７００がユーザの衣類の上に挿入済みである。深度カメラから取得したｚ値によってシステムがユーザの動作をトラッキングできるので、コンピュータによって生成された衣装７００はユーザと共に移動するようにアニメーション化され、ユーザ３０２がコンピュータによって生成された衣装を“着用している”という姿を生成する。
【００４１】
図２を振り返ると、取得した２次元データと深度値に基づいて、バーチャルオブジェクトとユーザのインタラクションが検出される。従来技術で周知のように、コンピュータによって生成された３次元オブジェクトはバーチャルな３次元空間に配置され、多くの場合で行列を使用して、一般にはモニタまたはテレビを使用して視聴される、３次元シーンの２次元射影を生成するように処理される。本発明の一実施形態では、バーチャル３次元空間はユーザの物理空間と一致するように構成される。例えば図６を参照すると、バーチャル３次元空間はユーザ３０２の居間と一致するように構成される。このようにして、本発明の実施形態はバーチャル及び物理オブジェクトの双方が同じ３次元空間を占有するときを検出することができる。
【００４２】
従って、本発明の実施形態は深度カメラからのｚ値を利用して、ユーザ３０２がバーチャルオブジェクトとインタラクトすることを可能にする。例えば、ユーザはバーチャル球体６０２においてスイングでき、システムはユーザ３０２の手が例えばバーチャル球体６０２と同じ空間を占有するとき（コリジョン）を検出できる。その後、このコリジョンに対する適切な応答が生成され、バーチャル球体６０２は部屋の中を“仮想的に飛び回る（virtually fly）ことができる。
【００４３】
後処理オペレーションはオペレーション２１４で実施される。後処理オペレーションは、コンピュータストレージ媒体のバーチャルオブジェクトの場所をセーブするオペレーション、セーブしたバーチャルオブジェクトをコンピュータストレージ媒体から読み出すオペレーション、また、本発明を注意深く読めば当業者には明らかなその他の後処理オペレーションを含む。
【００４４】
一実施形態では、本発明の実施形態の３次元インタラクティブシステム及び方法は、図８のブロック図によって例示されるコンピュータプロセッシングシステムを用いて実装される。このプロセッシングシステムはメインメモリ８０２とグラフィカルプロセッシングユニット（ＧＰＵ）８０６に結合された中央処理装置（ＣＰＵ）８０４を備えている。ＣＰＵ８０４は、入力／出力プロセッサ（ＩＯＰ）バス８０８にも結合されている。一実施形態では、ＧＰＵ８０６は画素ベースのグラフィカルデータを高速処理するために内部バッファを備えている。さらにＧＰＵは出力処理部、あるいは処理したイメージデータを標準のテレビ信号、例えばＮＴＳＣまたはＰＡＬに変換し、エンターテインメントシステム８００もしくはその要素の外部に接続されたテレビモニタ８０７へ送信するための機能を含む。他の形態では、データ出力信号はテレビモニタ以外のディスプレイデバイス、例えば、コンピュータモニタ、ＬＣＤ（液晶ディスプレイ）デバイス、又はその他のタイプのディスプレイデバイスなど、へ送られる。
【００４５】
ＩＯＰバス８０８はＣＰＵ８０４を様々な入力／出力デバイスおよびその他のバスまたはデバイスへ結合する。ＩＯＰバス８０８は入力／出力プロセッサメモリ８１０、コントローラ８１２、メモリカード８１４、ＵＳＢポート８１６、ＩＥＥＥ１３９４（ファイヤーワイヤーとしても周知である）ポート、及びバス８０３に接続されている。バス８３０は、オペレーションシステム（ＯＳ）ＲＯＭ８２０、フラッシュメモリ８２２、音響処理装置（ＳＰＵ）８２４、光ディスク制御ユニット８２６、及びハードディスクドライブ（ＨＤＤ）８２８を含む、いくつかの他のシステムコンポーネントをＣＰＵ８０４に結合する。本実施形態の一形態では、ビデオキャプチャデバイスはそこからＣＰＵ８０４へ伝送するために、ＩＯＰバス８０８に直接的に接続される。ビデオキャプチャデバイスからのデータは、ＧＰＵ８０６のグラフィックイメージを生成するように使用される値を変更または更新するように使用され得る。
【００４６】
本発明の形態を具体化するプログラムもしくはコンピュータ命令はいくつかの様々な方法で提供される。例えば、グラフィックイメージとインタラクトするためのユーザ入力法はＨＤＤ８２８、フラッシュメモリ８２２、ＯＳ  ＲＯＭ８２０、もしくはメモリカード８１２に記録されたプログラム形式で提供され得る。他の形態では、プログラムはＣＰＵ８０４に結合された１つまたはそれ以上の入力ポートを通じてプロセッシングユニット８００にダウンロードされる。入力メソッドを定義しているプログラムモジュールは、ＣＰＵ８０４により実行され、ディスプレイデバイス８０７上で表示されるゲームもしくはアプリケーションプログラムとともに提供されるか、もしくは、例えばローカルメインメモリ８０２から実行するために、アプリケーションプログラムとは別に提供され得る。
【００４７】
本発明の実施形態は分散型イメージプロセッシング構造も検討する。例えば、本発明はＣＰＵまたはＣＰＵとその他のエレメントなど、１つまたは２つの場所で行われているディスプレイイメージプロセッシング及びキャプチャイメージに限定されるものではない。例えば、入力イメージプロセッシングはプロセッシングを実施できる関連のＣＰＵ、プロセッサもしくはデバイスにおいて容易に行うことができるものであり、原則的に全てのイメージプロセッシングは相互接続システムを通じて分散され得る。従って、本発明はいずれの具体的なイメージプロセッシングハードウェア回路及び／またはソフトウェアに限定されるものではなく、また、プロセッシング要素によって実行される命令に対するいずれの特定のソースに限定されるものではない。
【００４８】
前述の発明は明確に理解するためにある程度詳細に説明されているが、添付の請求項の範囲内で特定の変更と修正がされるのは明らかであろう。従って、本実施形態は例示的であって制限的なものではないと考えられ、また本発明は本文中の詳細に限定されるものではなく、添付の請求項の等価の範囲内で修正することができる。
【図面の簡単な説明】
【００４９】
【図１Ａ】本発明の一実施形態によるリアルタイムの３次元インタラクティブ環境を提供する一般的なシステムのブロック図。
【図１Ｂ】一般的な深度カメラを使用してキャプチャした２次元データを示す説明図。
【図１Ｃ】一般的な深度カメラを使用してキャプチャした深度データを示す説明図。
【図１Ｄ】本発明の実施形態によるリアルタイムの３次元インタラクティブ環境を提供する一般的なシステム環境を例示した説明図。
【図２】本発明の一実施形態によるリアルタイムの３次元インタラクティブ環境を提供する方法を示したフローチャート。
【図３】本発明の一実施形態による最大値域面とインタラクトするユーザの上面図を示した説明図。
【図４】本発明の一実施形態による一般的なシーンに対する２次元データを示した説明図。
【図５】本発明の実施形態による図４の一般的なシーンに対するｚ値の説明図。
【図６】本発明の一実施形態による、シーンに挿入されたコンピュータによって生成されたバーチャルオブジェクトを示す説明図。
【図７】本発明の実施形態による、コンピュータによって生成された部屋内の物理オブジェクトへの変更を示す説明図。
【図８】本発明の実施形態による、３次元インタラクティブ環境を提供するためのコンピュータプロセッシングシステムのブロック図。
【図１Ａ】
2006528395.tif 000003
【図１Ｂ】
2006528395.tif 000004
【図１Ｃ】
2006528395.tif 000005
【図１Ｄ】
2006528395.tif 000006
【図２】
2006528395.tif 000007
【図３】
2006528395.tif 000008
【図４】
2006528395.tif 000009
【図５】
2006528395.tif 000010
【図７】
2006528395.tif 000011
【図８】
2006528395.tif 000012
【国際調査報告】
2006528395.tif 000013
2006528395.tif 000014
2006528395.tif 000015