(57)【特許請求の範囲】
【請求項１】
表示された物体の制御のためにユーザー行為を追跡するソフトウェアを実行するコンピューター実装システムにおいて、前記システムのユーザー行為を追跡する能力についてユーザーにフィードバックを供給する方法であって、
キャプチャー・システムによって、キャプチャー・エリアにおいてユーザーを検出するステップであって、前記ユーザーが、前記システム上の第１のゲームアプリケーションと相互作用し、前記第１のゲームアプリケーションが、前記システム上の少なくとも２つのゲームアプリケーションのうちの１つであり、前記少なくとも２つのゲームアプリケーションの各々が、異なったインタラクティブ表示オブジェクトを有し、各アプリケーションが、ゲームのプレイ中にインタラクティブ表示オブジェクトを用いてアプリケーションインターフェースを表示するように構成され、各アプリケーションが、少なくとも１つの身体特徴のユーザー動きに応答して、インタラクティブ表示オブジェクトを操作して、ゲームのプレイに参加するステップと、
前記キャプチャー・システムによって生成されたデーターに基づいて、前記ユーザーの少なくとも１つの身体特徴を追跡するステップと、
前記第１のゲームアプリケーションを実行している間であって、ゲームのプレイ中にユーザー追跡規準が満たされていないことに応答して、フィードバック応答を決定するステップであって、前記フィードバック応答が、前記アプリケーションのコンテキストにおいてレンダリングされ、前記アプリケーション・コンテキストにおいて前記フィードバック応答を生成して、前記キャプチャー・エリアの中心に向かう前記少なくとも１つの身体特徴のユーザー動きを誘起する、ステップと、
ゲームのプレイ中にインタラクティブ表示オブジェクトのレンダリングを決定して、前記キャプチャー・エリアの中心に向かう前記少なくとも１つの身体部分のユーザー動きを誘起するステップと、
ゲームのプレイ中にインタラクティブ表示オブジェクトをレンダリングして、ゲームのプレイ中にインタラクティブ表示オブジェクトと相互作用するための、ユーザによる動作が、前記ユーザの少なくとも１つの身体部分を、前記キャプチャー・エリアの中央に向かう方向に位置変更させるステップと、
を含み、
前記フィードバック応答が、前記ユーザーの年齢を含む前記ユーザーのプロファイルに基づいて決定され、前記フィードバック応答が年齢に適した応答となるようにする、
方法。
【請求項２】
表示された物体の制御のためにユーザー行為を追跡するソフトウェアを実行するコンピューター実装システムにおいて、前記システムのユーザー行為を追跡する能力についてユーザーにフィードバックを供給する方法であって、
キャプチャー・システムによって、キャプチャー・エリアにおいてユーザーを検出するステップであって、前記ユーザーが、前記システム上の第１のゲームアプリケーションと相互作用し、
前記第１のゲームアプリケーションが、前記システム上の少なくとも２つのゲームアプリケーションのうちの１つであり、前記少なくとも２つのゲームアプリケーションの各々が、異なったインタラクティブ表示オブジェクトを有し、各アプリケーションが、ゲームのプレイ中にインタラクティブ表示オブジェクトを用いてアプリケーションインターフェースを表示するように構成され、各アプリケーションが、少なくとも１つの身体特徴のユーザー動きに応答して、
インタラクティブ表示オブジェクトを操作して、ゲームのプレイに参加するステップと、
前記キャプチャー・システムによって生成されたデーターに基づいて、前記ユーザーの少なくとも１つの身体特徴を追跡するステップと、
前記第１のゲームアプリケーションを実行している間であって、ゲームのプレイ中にユーザー追跡規準が満たされていないことに応答して、フィードバック応答を決定するステップであって、前記フィードバック応答が、前記アプリケーションのコンテキストにおいてレンダリングされ、前記アプリケーションのコンテキストにおいて前記フィードバック応答を生成して、前記キャプチャー・エリアの中心に向かう前記少なくとも１つの身体特徴のユーザー動きを誘起する、ステップと、
ゲームのプレイ中にインタラクティブ表示オブジェクトのレンダリングを決定して、前記キャプチャー・エリアの中心に向かう前記少なくとも１つの身体部分のユーザー動きを誘起するステップと、
ゲームのプレイ中にインタラクティブ表示オブジェクトをレンダリングして、ゲームのプレイ中にインタラクティブ表示オブジェクトと相互作用するための、ユーザによる動作が、前記ユーザの少なくとも１つの身体部分を、前記キャプチャー・エリアの中央に向かう方向に位置変更させるステップと、
を含み、
前記ユーザーにフィードバック応答を出力するステップが、ユーザー追跡規準が満たされていないことを示す音声インディケーターを前記ユーザーに出力するステップを含む、
方法。
【請求項３】
表示された物体の制御のためにユーザー行為を追跡するソフトウェアを実行するコンピューター実装システムにおいて、前記システムのユーザー行為を追跡する能力についてユーザーにフィードバックを供給する方法であって、
キャプチャー・システムによって、キャプチャー・エリアにおいてユーザーを検出するステップであって、前記ユーザーが、前記システム上の第１のゲームアプリケーションと相互作用し、
前記第１のゲームアプリケーションが、前記システム上の少なくとも２つのゲームアプリケーションのうちの１つであり、前記少なくとも２つのゲームアプリケーションの各々が、異なったインタラクティブ表示オブジェクトを有し、各アプリケーションが、ゲームのプレイ中にインタラクティブ表示オブジェクトを用いてアプリケーションインターフェースを表示するように構成され、各アプリケーションが、少なくとも１つの身体特徴のユーザー動きに応答して、
インタラクティブ表示オブジェクトを操作して、ゲームのプレイに参加するステップと、
前記キャプチャー・システムによって生成されたデーターに基づいて、前記ユーザーの少なくとも１つの身体特徴を追跡するステップと、
前記第１のゲームアプリケーションを実行している間であって、ゲームのプレイ中にユーザー追跡規準が満たされていないことに応答して、フィードバック応答を決定するステップであって、前記フィードバック応答が、前記アプリケーションのコンテキストにおいてレンダリングされ、前記アプリケーションのコンテキストにおいて前記フィードバック応答を生成して、前記キャプチャー・エリアの中心に向かう前記少なくとも１つの身体特徴のユーザー動きを誘起する、ステップと、
ゲームのプレイ中にインタラクティブ表示オブジェクトのレンダリングを決定して、前記キャプチャー・エリアの中心に向かう前記少なくとも１つの身体部分のユーザー動きを誘起するステップと、
ゲームのプレイ中にインタラクティブ表示オブジェクトをレンダリングして、ゲームのプレイ中にインタラクティブ表示オブジェクトと相互作用するための、ユーザによる動作が、前記ユーザの少なくとも１つの身体部分を、前記キャプチャー・エリアの中央に向かう方向に位置変更させるステップと、
を含み、
更に、ユーザー追跡規準が、
音量、および
音声の区別可能性、
の内の１つから成る音声要因である、区別可能性要因に基づく、
方法。
【請求項４】
請求項１から３のいずれかに記載の方法であって、前記フィードバック応答が、ディスプレイ上の物体の少なくとも１つの動作を変化させる、方法。
【請求項５】
請求項４に記載の方法であって、更に、
前記キャプチャー・システムが画像キャプチャー・システムであり、
前記満たされていないユーザー追跡規準が、前記表示された物体を制御することができる前記ユーザーの身体部分が、前記画像キャプチャー・システムの視野の外側に少なくとも部分的に出ていることであり、
前記ディスプレイ上における前記物体の少なくとも１つの動作が、視野の中心に向かう前記身体部分のユーザー動きを誘起する、
方法。
【請求項６】
請求項１から３のいずれかに記載の方法において、前記表示される物体がアバターであり、前記ユーザーにフィードバック応答を出力するステップが、前記ユーザーを現すアバターの表示されている外観を変化させるステップを含む、方法。
【請求項７】
請求項１から３のいずれかに記載の方法において、前記ユーザーにフィードバック応答を出力するステップが、ユーザー追跡規準が満たされていないことを示す視覚インディケーターを前記ユーザーに表示するステップを含む、方法。
【請求項８】
請求項１から３のいずれかに記載の方法において、前記ユーザーにフィードバック応答を出力するステップが、更に、前記ユーザーの表示されているビューの視覚的特性を変化させるステップを含む、方法。
【請求項９】
請求項８記載の方法において、フィードバック応答を前記ユーザーに出力するステップが、更に、前記ユーザーの前記身体がキャプチャー・デバイスの視野の中心に向かって動くにつれ、前記表示されたビューの視覚的特性をぼかしたビューから鮮明なビューへレンダリングすることを含む、方法。
【請求項１０】
請求項１から３のいずれかに記載の方法であって、更に、前記ユーザー追跡規準が、
前記キャプチャー・システムの視野内における、前記表示された物体を制御することができる前記ユーザーの身体部分の位置、
照明、
コントラスト、および
前記ユーザーの身体部分の障害、
から成る一群の可視性要因に基づく、方法。
【請求項１１】
システムのユーザー行為を追跡する能力についてユーザーにフィードバックを供給するシステムであって、
キャプチャー・エリア内のユーザーの画像データーを取り込む画像キャプチャー・システムと、
前記画像キャプチャー・システムに通信可能に結合され、前記画像データーおよび命令を格納するメモリーにアクセス可能な１つ以上のプロセッサーと、
前記ユーザーへのフィードバックを表示するために前記１つ以上のプロセッサーに通信可能に結合されたディスプレイと、
を含み、前記１つ以上のプロセッサーが、
複数のアプリケーションのうちの第１のゲームアプリケーションを実行する命令であって、当該第１のゲームアプリケーションが、インタラクティブ表示オブジェクトを用いてアプリケーションインターフェースを表示するように構成され、当該インタラクティブ表示オブジェクトが、ユーザが、ゲームプレイに参加することを可能とするものと、
前記画像データーにおいて前記ユーザーの少なくとも１つの身体部分を検出する命令と、
前記少なくとも1つの身体部分の動きを追跡する命令であって、前記ユーザーが、前記システム上の前記第１のゲームアプリケーションと前記キャプチャー・エリアを介して相互作用し、前記アプリケーションが、少なくとも１つの身体部分のユーザー動きに応答する、命令と、
前記第１のゲームアプリケーションを実行している間に、少なくとも１つの身体部分のユーザー追跡規準が満たされていないことに応答して前記アプリケーションのコンテキストにおける少なくとも１つのインタラクティブ表示オブジェクトのレンダリングをすることを決定して、ゲームプレイを続行中に、前記インタラクティブ表示オブジェクトと相互作用するための、前記ユーザによる動きが、前記少なくとも１つの身体部分を、前記キャプチャー・エリアの中央に向かう方向に位置変更させる、命令と、
ゲームプレイ中に、ディスプレイ上に前記インタラクティブ表示オブジェクトを表示する命令と、
を含む命令を実行する、１つ以上のプロセッサーと、
を含む、システム。
【請求項１２】
請求項１１記載のシステムにおいて、命令を実行する前記１つ以上のプロセッサーが、
更に、
前記少なくとも１つの身体部分の少なくとも１つの動きを行う命令を表示し、
前記少なくとも１つの身体部分の動きを追跡し、
１つ以上の可視性要因に基づいて、ユーザー追跡規準が満たされていることに応答して、試験用キャプチャー・エリアに対して、可視性要因に基づく追跡品質スコアを決定し、
前記１つ以上の可視性要因に基づいて、ユーザー追跡規準が満たされていないことに応答して、
前記ユーザー追跡規準を満たすために、前記可視性要因を改良するために、前記キャプチャー・エリアにおける少なくとも１つの変化を特定するフィードバックを前記ユーザーに表示する、
ことによってキャプチャー・エリアを選択するときにユーザーを補助する命令を実行することを含む、システム。
【請求項１３】
請求項１２記載のシステムにおいて、命令を実行する前記１つ以上のプロセッサーが、
可視性要因の追跡規準に基づいて、複数の試験用キャプチャー・エリアの各々について、追跡品質スコアを決定し、
最良のスコアを有する前記試験用キャプチャー・エリアを特定し、
前記最良のスコアを有する試験用キャプチャー・エリアの推薦を表示する、
ことを含む命令を実行することを含む、システム。
【請求項１４】
請求項１２記載のシステムにおいて、前記１つ以上の可視性要因が、
キャプチャー・システムの視野内における、前記ユーザーの少なくとも１つの身体部分の位置、
照明、
コントラスト、および
前記ユーザーの少なくとも１つの身体部分の障害、
の内１つ以上を含む、システム。
【請求項１５】
請求項１１記載のシステムにおいて、前記ディスプレイが、画面外のディスプレイ・デバイスである、システム。
【発明の詳細な説明】
【従来技術】
【０００１】
[0001]  典型的な計算環境では、ユーザーは、キーボード、マウス、ジョイスティック等のような入力デバイスを有し、この入力デバイスは、ケーブル、ワイヤ、ワイヤレス接続、または他の何らかの接続手段によって、計算環境に接続することができる。計算環境の制御が、接続されているコントローラーからジェスチャー・ベース制御、特に自然ユーザー・インターフェース（ＮＵＩ）におけるような制御に移った場合、ユーザーはもはやアプリケーションに対する制御命令を高い一貫性をもって計算環境に知らせる、接続されたデバイスがなくなってしまう。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
[0002]  例えば、計算環境が、コントローラーまたはキーボードのような、設定された入力を有するとき、ユーザーは、コントローラーがポートに接続されていること、彼がキーまたはボタンを押していること、そしてシステムが応答していることを判定することができる。この計算環境に対する制御が、ユーザーのジェスチャーに移行すると、コントローラーとの場合とは異なり、キャプチャー・エリアの視覚的特性または音響的特性あるいはユーザーの身体の動きのために、ジェスチャーの検出が妨げられたり、またはアプリケーションから、最適でない応答が生成される可能性がある。適正にジェスチャーを検出することができないと、実行中のアプリケーションと対話処理するときに、ユーザーを苛々させる可能性がある。例えば、このアプリケーションによって実行されているゲームにユーザーが参加すると、苛々させる虞れがある。
【課題を解決するための手段】
【０００３】
[0003]  コンピューター・システムにおける実行アプリケーションの制御のためのユーザー行為(user action)を追跡するために、この実行アプリケーションの能力についてのフィードバックをユーザーに供給する技術を紹介する。キャプチャー・システムが、キャプチャー・エリアにおいてユーザーを検出する。ユーザー追跡規準が満たされていないことに応答して、フィードバックがユーザーに出力される。一部の例では、このフィードバックが音声インディケーターであることができる。他の例では、追跡規準を満たすためにユーザーが取るべき行動を推薦するために、視覚インディケーターがフィードバックとして供給される。実施形態の中には、実行アプリケーションのコンテキストの範囲内でフィードバックが供給される場合もある。一実施形態では、キャプチャー・エリアを選択するときにユーザーを補助する技術を紹介する。加えて、実施形態の中には、フィードバック応答の選択を、規準にしたがって決定することができる場合もある。
【０００４】
[0004]  この摘要は、詳細な説明の章において以下で更に説明する概念から選択したものを簡略化した形態で紹介するために、設けられている。この摘要は、特許請求する主題の主要な特徴や必須の特徴を特定することを意図するのではなく、特許請求する主題の範囲を判断するときに補助として使用されることを意図するのでもない。
【図面の簡単な説明】
【０００５】
【図１Ａ】図１Ａは、ユーザー・フィードバックを供給する技術の実施形態が動作することができる、ターゲット認識、分析、および追跡システムの実施形態例を示す。
【図１Ｂ】図１Ｂは、追跡規準を満たすためにユーザーが取るべき行為を提案するためにユーザーがフィードバック応答を追跡する他の例を示す。
【図１Ｃ】図１Ｃは、可視性要因(visibility factor)の例をいくつか示す。
【図１Ｄ】図１Ｄは、物体を保持しているユーザーがターゲット認識、分析、および追跡システムの実施形態と対話処理する他の実施形態を示す。
【図１Ｅ】図１Ｅは、ユーザーが境界に近すぎるときまたは境界の外側にいるときに、ユーザーに知らせる視覚インディケーターの一例を示す。
【図１Ｆ】図１Ｆは、ユーザーがキャプチャー・デバイスの視野の外側にいることを知らせる視覚インディケーターの追加の例を示す。
【図１Ｇ】図１Ｇは、 ユーザーがキャプチャー・デバイスの視野の外側にいることを知らせる視覚インディケーターの追加の例を示す。
【図２】図２は、ユーザー追跡フィードバックを供給するシステムの機能的コンピューター実装アーキテクチャーの例示的な実施形態である。
【図３Ａ】図３Ａは、ユーザー追跡フィードバックを供給する１つ以上の実施形態が動作することができ、図１Ａ〜図１Ｅにおけると同様のゲーミング・コンソールにおいて使用することができる計算環境の一実施形態の詳細な例を示す。
【図３Ｂ】図３Ｂは、パーソナル・コンピューターのような、計算環境の他の実施形態例を示す。
【図４】図４は、ユーザー追跡フィードバックをユーザーに供給する１つ以上の実施形態が動作することができる、ネットワーク接続された計算環境の一実施形態例を示す。
【図５】図５は、取り込まれた画像データーに基づいて作成され、ユーザーの動きを追跡するために使用することができる人間ユーザーのモデルを示す。
【図６】図６は、ジェスチャーの例をいくつか示す。
【図７】図７は、アプリケーションのユーザーの動きを追跡する能力について、ユーザーにフィードバックを供給する方法の実施形態のフローチャートである。
【図８】図８は、キャプチャー・エリアを選択するときにユーザーを補助する方法の実施形態のフローチャートである。
【発明を実施するための形態】
【０００６】
[0019]  コンピューター・システムにおいて実行アプリケーションの制御のために、ユーザー行為を追跡する実行アプリケーションの能力についてのフィードバックをユーザーに供給する技術を紹介する。ユーザーを追跡する能力に影響を及ぼす可能性がある区別可能性要因(distinguishability factor)の一例は、表示物体を制御するユーザーの身体部分が画像キャプチャー・システムの視野から少なくとも部分的に出ているときである。他の要因には、照明効果のような周囲要因、ある種のタイプの障害物、ならびに音声（例えば、音節または単語）の大きさ(loudness)および区別可能性というような音声的要因が含まれる。
【０００７】
[0020]  実施形態の中には、本技術が、ユーザーに対して明示的な提案となるフィードバック応答を提示する場合もある。他の実施形態では、フィードバックは、実行アプリケーションのコンテキスト内で供給されることによって、分かり難く(subtle)なるかまたは暗示的になる。例えば、ユーザーがキャプチャー・システムの視野の境界に近過ぎるとき、場面内において恐ろしい怪物(scary monster)のようなオブジェクト(object)がその境界に近いディスプレイ側に現れる。ユーザーは、この怪物から逃げるために、視野の境界から離れて、視野の中心に向かって動く気にさせられる。
【０００８】
[0021]  フィードバック応答の選択を決定することができる要因の例については、以下で更に論ずる。
[0022]  図１Ａは、ユーザー・フィードバックを供給する技術の実施形態が動作することができる、ターゲット認識、分析、および追跡システム１０の実施形態例を、ゲームをプレーするユーザー１８と共に示す。この例では、ターゲット認識、分析、および追跡システム１０は、人間の自然環境において、対象者に特殊な検知デバイスを取り付けることなく、人間を認識し、彼らを一意に識別し、三次元空間において彼らを追跡する。しかしながら、本技術は、 ユーザーがセンサを着用するセンサ・ベース・システムというような、他のユーザー追跡メカニズムにも適用可能である。
【０００９】
[0023]  この実施形態例によれば、ターゲットは、人間のターゲット（例えば、ユーザー１８）、物体を持った人間のターゲット、２人以上の人間のターゲット等とすることができ、このターゲットを走査して、スケルトン・モデル、メッシュ人間モデル、またはその任意の他の適した表現を生成することができる。このモデルを追跡すれば、ターゲットの物理的動き(movement)または運動(motion)がリアルタイムのユーザー・インターフェースとして作用し、アプリケーションのパラメータを調節および／または制御するというようなことが可能になる。更に、このモデルをアプリケーションに対してモデルとして提示され、リアルタイムでアプリケーションに伝えることができる。例えば、ユーザーの動きを追跡し、電子ロール・プレーイング・ゲームにおける画面上のキャラクターまたはアバターを動かすために、追跡したユーザーの動きを使用することができる。
【００１０】
[0024]  モデルがマルチ・ポイント・スケルトン・モデルである一例では、ターゲット認識、分析、および追跡システム１０は、人間の筋肉−骨格系の自然な力学および能力を理解することによって、効率的に人間およびその自然な動きを追跡する。また、システム例１０は、複数の人間がその四肢および身体の自然な動きによって本システムと対話処理できるようにするために、個人を一意に認識する。
【００１１】
[0025]  ユーザーの動きを追跡して、アバターを動かすことができる。アバターとは、通例人であるユーザーを表す、コンピューター生成イメージとすることができる。アバターは、ユーザーが実際に見える様子を高度に表すユーザーのイメージを描写することができ、あるいはユーザーに対する類似度が変化するか全く変化しないキャラクター（例えば、人間、架空の物体、動物、動く物体）であってもよい。
【００１２】
[0026]  具体的には、図１Ａは、ターゲット認識、分析、および追跡システム１０の構成の実施形態例を、ボクシング・ゲームをプレーしているユーザー１８と共に示す。この例では、コンピューター１２において実行するソフトウェアが、通信可能に結合されているカメラ・システム２０およびオーディオビジュアル・ディスプレイ・ユニット１６の他のコンピューター・システムにおけるソフトウェアを制御するまたはこのソフトウェアと相互作用を行い、このオーディオビジュアル・ディスプレイ・ユニット１６が、取り込まれた画像データーに基づいてユーザー１８の動きを追跡し、これらを分析し、ユーザーの動きが直接彼の関連のあるアバターの動作を直接リアルタイムで制御する命令を得る。つまり、この例では、ユーザー１８は、彼の身体を動かして、ボクシング・ゲームにおいて、彼の対戦相手のアバター２２に対して表示画面１４上の彼のアバター２４を制御することができる。
【００１３】
[0027]  オーディオビジュアル・ディスプレイ・システム１６は、 高品位テレビジョン（ＨＤＴＶ）のような高度ディスプレイ・システムとすることができる。他の実施形態では、ディスプレイは、解像度がそれよりも低いディスプレイであってもよく、その例には、テレビジョン、コンピューター・モニター、または移動体デバイスのディスプレイが含まれる。オーディオビジュアル・システム１６は、オーディオビジュアル信号を計算システム１２から通信インターフェース（例えば、Ｓ−ビデオ・ケーブル、同軸ケーブル、ＨＤＭＩケーブル、ＤＶＩケーブル、ＶＧＡケーブル）を介して受信することができ、次いでこのオーディオビジュアル信号と関連のあるゲームまたはアプリケーションのビジュアルおよび／またはオーディオをユーザー１８に出力することができる。
【００１４】
[0028]  ジェスチャーは動きまたは姿勢を含み、実行アプリケーションを制御するためのユーザー入力として作用する。ユーザーは、彼の身体を動かすことによって、ジェスチャーを行うことができる。例えば、ユーザーを画像データーに取り込むことができる。ユーザーのジェスチャーを識別し、アプリケーションに対する制御または実行すべき動作としての意味を求めて解析することができる。例えば、ユーザー１８は図１Ａのボクシング・ゲームにおいてジャブを出す。このゲーム・アプリケーションは、それをボクシングの試合において表し、それがアバター２２と接触するか否か判断し、そうである場合、ユーザーの採点を増やす。ジェスチャーは、胴体の前で腕を組んだままにするというような静止姿勢であってもよく、または１つ以上の動きであってもよい。更に、ジェスチャーは、両手を一緒にたたくというような、１つよりも多い身体部分を含むのでもよい。
【００１５】
[0029]  例えば、ターゲット認識、分析、および追跡システム１０は、キャプチャー・エリア３０においてユーザー１８のパンチを認識し分析するために使用して、このパンチをジェスチャーとして、この場合、ゲーム空間において彼のプレーヤ・アバター２４が行うパンチのゲーム制御として解釈することもできる。また、ユーザー１８による他のジェスチャーも、軽く叩く、行ったり来たりする、あちこち動き回る、防御する、ジャブを出す、または種々の異なる力のパンチを出す制御するというように、他の制御または動作として解釈することができる。ユーザー１８のパンチおよびジャブを追跡することによって、ボクシング・ゲームのソフトウェア・アプリケーションは、彼のアバター２４のスコアを判断し、どちらのアバター（２２または２４）がその試合に勝つか判断する。異なるアプリケーションであれば、異なるジェスチャーを認識し追跡する。例えば、野球ゲームにおけるユーザーによる投球を追跡して、それがストライクかまたはボールか判断する。
【００１６】
[0030]  他の実施形態例によれば、ジェスチャー・ベース・システム１０は、更に、ゲームの世界の外側にあるオペレーティング・システムおよび／またはアプリケーション制御として、ターゲットの動きを解釈するために使用することもできる。例えば、オペレーティング・システムおよび／またはアプリケーションの事実上あらゆる制御可能な態様(aspect)が、ユーザー１８のようなターゲットの動きによって制御することもできる。
【００１７】
[0031]  カメラ・システム２０は、カメラ・システム２０の視野内にあるキャプチャー・エリア３０におけるユーザーの画像データーを取り込む。この例では、カメラ・システム２０の視野におけるキャプチャー・エリア３０は、台形３０であり、ユーザーの視点からは、このキャプチャー・エリアの上辺(front)である短い方の線３０ｆ、底辺(back line)３０ｂ（例えば、壁がこの線を形成することができる）、ならびに左側辺３０ｌおよび右側辺３０ｒを有する。視野は、異なる幾何学的形状を有することができる。例えば、キャプチャー・エリアの境界および障害物が、その幾何学的形状に影響を及ぼす可能性がある。例えば、ユーザーが体操を行っている場合であれば、視野が台形よりも円錐形になるように後ろの壁は遙か後方にするとよい。他の場合では、カメラのレンズの種類も視野に影響を及ぼす可能性がある。
【００１８】
[0032]  図１Ａでは、ユーザーは以前の位置、即ち、前の位置１８ｂにいることが示されており、この位置では、彼の身体の一部が左境界線３０１側でキャプチャー・エリア３０の外側に出ている。ユーザー１８の位置は、キャプチャー・エリア３０およびカメラの視野の中心にもっと近い彼の現在の位置にある。以下で更に詳しく論ずるが、このアプリケーションのコンテキストにおけるフィードバックは、ユーザーに彼の右側に動くことを提案するため、またはそうする気にさせるために与えられた。他のアバター２２の位置は、画面上で右側に動いており、したがってユーザー１８は彼を殴るためには動く必要があった。他の例では、表示されている光景(view)の視点(perspective)が対戦相手のアバター２２の左展望(left perspective)から右展望(right perspective)に変化したということもあり得る。右展望では、ユーザー１８が位置１８ｂに留まる場合、彼のアバターは彼の対戦相手のアバター２２の視野を遮ることになる。この動作(action)のために、彼の対戦相手のアバター２２がもっと良く見えるように、ユーザー１８が右に動く気になる。
【００１９】
[0033]  また、ユーザー追跡フィードバックを供給するために、１つ以上の画面外のディスプレイ・エレメント(off-screen display element)も使用することができる。図示されている例では、発光ダイオード（ＬＥＤ）のようなディスプレイ・ライト３２が特定のユーザーを満足させる(satisfy)ことができる。例えば、追跡品質を示すために、異なる色を使用することができる。黄色は警告とすることができ、緑は満足とすることができ、赤は問題を示すことができる。他の例では、異なる照明パターンが追跡品質を示すことができる。例えば、各ライトに視野の境界を関連付けることができる。ライト・エレメントがある色に変わった場合、その色は、ユーザーが境界に近過ぎるというフィードバックを含意することができる。
【００２０】
[0034]  図１Ｂは、追跡規準を満たすためにユーザーが取るべき行為を提案するためのユーザー追跡フィードバック応答の他の例を示す。ユーザーに追跡問題を知らせるために、アバターの外観変更を使用することができる。アバター２４は、この例では強調されている。更に、矢印３３の形態とした明示的なフィードバックが、視覚インディケーターの一例となっている。この例では、フィードバックは、アバター２４と関連のあるユーザーに右に動くことを推薦する。これらの視覚インディケーターは、アプリケーション独立ユーザー追跡フィードバックの例である。何故なら、これらはアプリケーションのコンテキストには繋がれていないからである。
【００２１】
[0035]  アプリケーションのコンテキストは、そのアプリケーションの目的である動作(activity)を含む。例えば、メニュー・ユーザー・インターフェース・アプリケーションでは、ファイルを開くまたは閉じることは、アプリケーションにとって前後関係で決まる(contextual)ことである。ゲームの動作にしたがって動くアバターおよび場面のオブジェクトは、ゲームにとって前後関係で決まることである。ゲーミング・アプリケーションにおいて前後関係で決まる動作の例には、パンチを打つ、障害物のような新たな敵または怪物の到来、いつボールが投げられたまたは捕球されたか、アバターまたはユーザーの視野(view)が仮想環境にわたって動くときの場面における変化、またはゲーム動作のユーザーのビューの方向または視点の変化である。
【００２２】
[0036]  図１Ｃは、可視性要因(visibility factor)のいくつかの例を示す。窓４４から入ってくる日光４５のために、周囲の照明がカメラ・システム２０にとって可視性の問題になる可能性がある。画像キャプチャー・システム２０の光メータ(light meter)は、ユーザーが画像データーにおいて褪せてしまうことを示すことができる。あるいは、暗くなり過ぎる可能性がある。
【００２３】
[0037]  コーヒー・テーブル１５は、ユーザーの身体の一部を遮る可能性がある障害物の一例である。ボクシング・ゲームは、ユーザー１８の足が部分的にコーヒー・テーブルによって遮られることのために、ボクシングにおける「摺り足」（shuffle)ジェスチャーを検出するのに困難を来す可能性がある。
【００２４】
[0038]  図１Ｄは、物体を保持しているユーザーが、ターゲット認識、分析、および追跡システム１０と対話処理する他の実施形態を示す。このような実施形態では、電子ゲームのユーザー１９は、例えば、画面上のボール(on-screen ball)６８を打つというように、ユーザー１９および物体２１の動きを使用してゲームのパラメータを調節および／または制御するように、物体を保持していることがある。他の例では、ラケット２１を保持しているユーザーの動きを追跡して、電子スポーツ・ゲームにおいて画面上のラケットを制御するために利用することもできる。他の実施形態例では、物体を保持しているユーザーの動きを追跡して、電子戦争ゲームにおいて画面上の兵器を制御するために利用することもできる。また、１つ以上のグローブ、ボール、バット、クラブ、ギター、マイクロフォン、スティック、ペット、動物、ドラムなどというような、任意の他の物体も含むことができる。
【００２５】
[0039]  図１Ｄは、ユーザーにカメラ・システム２０の視野内におけるより良い位置に動くことの提案または動機付けを与えるために、アプリケーションのコンテキストにおいてフィードバックを使用する他の例を示す。位置１９ｂにおけるユーザーは、カメラに対して左に動き過ぎたので、彼の右腕およびラケット２１を含む彼の上半身が視野の左境界３０１の外側に出ている。直前に打ってきたボール６８ｂは、画面の左上角に表示されていた。このゲームの実行アプリケーションは、次に打って来るボール６８を、ディスプレイの中央に移して、ユーザー１９が、キャプチャー・エリア３０を覆う視野の中心に動く気にさせる。ユーザー１９は、彼の現在の位置１９に示すように、既にそうしている。
【００２６】
[0040]  尚、図１Ｄは、ユーザーの描写が画面上にレンダリングされない代案を提示することは認められてしかるべきである。図１Ｄでは、ユーザーは一人称で(in the first person)テニスをプレーし、画面上にレンダリングされたボールを見て、そして、一例では、ボールを打つラケットの全てまたは一部を見ているかもしれないが、ユーザーのアバターは画面上にはレンダリングされず、あるいはユーザーの身体部分の一部のみがレンダリングされる。
【００２７】
[0041]  図１Ｅは、ユーザーが境界に近過ぎるときまたは境界の外側に出たときにユーザーに知らせることができる視覚インディケーターの一例を示す。特に非常に幼い子供のユーザーには、表示物体２８ｌ（左境界問題）および２８ｒ（右境界問題）は、視野の中心に向かって戻るようにユーザーに伝えるフィードバックとなることができる。同様の視覚インディケーターは、前後の境界にも同様に使用することができる。任意選択肢をあげると、各視覚インディケーターが現れるとき、またはある回数の境界違反の後に、音響を各視覚インディケーターに関連付けることができる。
【００２８】
[0042]  図１Ｆは、視覚インディケーターの他の例を示し、ユーザー１９ｕがボーリング・ゲームをプレーしており、ユーザーの腕１９−１が動いて視野外に出ている。画面上の描写２８ｂでは、ユーザーの腕２８Ａが徐々に消えて、腕がカメラの視野の外側にあることをユーザーに示す。ユーザーまたはユーザーが関与しているエレメントの画面上の外観を変化させる他の代替案には、ユーザーの画面上の表現の全てまたは一部の色を変えること、ユーザーの描写の焦点を変えること（例えば、画面上の表現をぼかすまたは徐々に消す）が含まれる。
【００２９】
[0043]  図１Ｇに示す更に他の例では、警告グラフィック２９が、ディスプレイ１６の左上角に示されている。このグラフィックは、ユーザー３４および視野３５の表現を小さくして描写しており、ユーザーが動いて視野の外側に出たときに、常にまたは間欠的に現れる(flash)ことができる。
【００３０】
[0044]  ユーザー追跡フィードバックを供給するソフトウェアは、キャプチャー・エリアの境界および異なるフィードバック応答が何を意味するかについて、ユーザーが感触を得るのを補助するために、ディスプレイ上においてユーザーのための訓練を設けることができる。ある種の音響によって、視野の中心にいること、または正しい可視性(visibility)を有することを確認することができ、一方他の音響は、ユーザーが境界に近づき過ぎていること、または追跡品質を劣化させる障害物あるいは他の効果または品目があることを示す。
【００３１】
[0045]  一例では、追跡品質または追跡規準は、ユーザーの存在ならびにターゲット認識および追跡システムとの関与が確定されている間の所与の時間期間において、特定できなかったジェスチャーがどれだけあるかに基づくことができる。追跡品質または追跡規準は、存在および関与を検出することができるが、例えば、野球ゲームにおける腕のように、アプリケーションに対する画像データーにおいて主要な身体部分を認識することができない。追跡規準または品質に影響を及ぼす可視性要因の他に、アプリケーションの中には、単に身体部分である身体の特徴の動きだけではなく、音声のような身体特徴を拠り所にするものもあるので、区別可能性要因(distinguishability factor)には、音声要因も該当する可能性がある。
【００３２】
[0046]  図２は、ユーザー追跡フィードバックを供給するシステム２００の機能的コンピューター実装アーキテクチャーの例示的実施形態である。このようなアーキテクチャー・システムは、１つ以上のプロセッサーおよび／またはコンピューター・ハードウェアにおいて実行するソフトウェアによって、あるいはハードウェアまたはファームウェアとして動作することができる１つ以上の処理モジュールとして実現することができる。
【００３３】
[0047]  本技術は、その主旨や本質的な特性から逸脱せずに、他の特定の形態においても実現することができる。同様に、モジュール、ルーチン、特徴、属性、方法、および他の態様の特定の命名や分割は義務的ではなく、本技術またはその特徴を実現するメカニズムは、異なる名称、分割、および／またはフォーマットを有することもできる。更に、関連技術における当業者には明白であろうが、開示される実施形態のモジュール、ルーチン、特徴、属性、方法、および他の態様は、ソフトウェア、ハードウェア、ファームウェア、またはこれら３つの任意の組み合わせとして実現することができる。勿論、モジュールが一例であるコンポーネントがソフトウェアとして実現されるときはいつでも、そのコンポーネントは、単体のプログラムとして、もっと大きなプログラムの一部として、複数の別々のプログラムとして、静的または動的にリンクされたライブラリーとして、カーネル・ロード可能なモジュールとして、デバイス・ドライバとして、および／またはプログラミングの技術分野における当業者に現在知られているまたは今後知られることになるあらゆるそして任意の他の方法で実現される。例えば、一実施形態では、以下で論じられる追跡フィードバック・ソフトウェア２１３は、部分的にアプリケーション独立フィードバック応答を扱うためにアプリケーション・プログラミング・インターフェース（ＡＰＩ）で実現し、部分的にコンテキスト・アプリケーション・フィードバックを扱うために特定のアプリケーションのソフトウェアで実現することができる。
【００３４】
[0048]  ディスプレイ・ビュー制御システム２０２は、動きモジュール２０４を含む。動きモジュール２０４は、着信画像データー２０５、および任意選択肢をあげると、オーディオ・データー２１７のためにデーター・バッファ２２３にアクセスする。図示されている実施形態例では、ディスプレイ・ビュー制御システム２０２は、オーディオビジュアル・データー・キャプチャー・システム２０からローカルに動き追跡データー２０５を受ける。加えて、ディスプレイ・ビュー制御システム２０２は、インターネット２０３または他のネットワークから離れて動き追跡データー２０５ｉを受信することもできる。ユーザーに関して、動き追跡データーは、画像データー自体、またはそのデーターをダウンサンプルしたバージョンを含むことができる。加えて、深度データー、ならびに画像および／または深度データーから導き出される種々の形態のデーターも、動き追跡データーに含めることができる。その例には、ユーザーの身体に対するモデル、そのモデルを参照する数学的原形における動きデーター、またはモデルの以前の状態との比較に使用するために導き出されるビットマスク画像がある。ディスプレイ・ビュー制御システム２０２は、このデーターを分析して、ユーザーの動きを認識し、その動きを追跡してディスプレイ上のオブジェクト、例えば、ユーザーの画面上のアバターを動かす。アバターは、場面または表示オブジェクトの一種である。
【００３５】
[0049]  動きモジュール２０４は、通信可能にアバター表示制御モジュール２０９、オブジェクト制御モジュール２１１、追跡フィードバック・ソフトウェア２１３、ジェスチャー認識ソフトウェアおよびデーター２０６、オーディビジュアル・データー・キャプチャー・システム２０、およびインターネット２０３に結合されている。また、動きモジュール２０４は、ユーザー２１６ｕ、アバター２１６ａ、およびディスプレイ２１６ｏ上の物体またはユーザーによって保持されている物体の各々の少なくとも１つについてのモデル・データー２１６というような、メモリーに格納されているデーターストア２２０にもアクセスすることができる。モデル・データーは、キャプチャー・エリアにおけるユーザー、あるいは場面またはディスプレイ・ビューにおけるアバターまたは物体の動きモジュール２０４による動き検出のための基準として使用される。ユーザーの身体の動きがアバターの動きにマッピングされる（例えば、ユーザーの画像取り込み、またはユーザーの身体に付けられたセンサに基づいて）システムでは、ユーザー２１６ｕを表すモデル・データーと、アバター２１６ａを表すモデル・データーとがあることが可能である。アバターの体形が全く異なる場合、動きモジュール２０４は、２つのモデルの間でマッピングを実行する。例えば、少年のユーザー１８は、彼のアバター・ボクサー２４よりも背が低く、腕の長さがありそうもない。言い換えると、スケルトン・モデルが使用された場合、これらはユーザーおよびアバターに対して同一でなくてもよい。しかしながら、実施形態の中には、アプリケーションが、同じモデル・データー２１６を使用して、ユーザーの身体の動きを分析し、更に対応するアバターの動きを命令する場合もある。一例では、身体モデルは、身体部分と、空間における(in dimensions)それらの位置および／または基準に対する回転角度とを表す１つ以上のデーター構造として実現することができる。モデル・データー２１６は、絶対位置に関する更新または位置および回転の変化で更新することができる。位置および回転の変化は、ベクトルおよび角度で表すとよい。
【００３６】
[0050]  また、動きモジュール２０４は、プロファイル・データー２１４にもアクセスすることができる。この例では、ユーザー２１４ｕ、アバター２１４ａ、および物体２１４ｏについてのプロファイルがある。また、動きモジュール２０４は、アバター画像データー２１９および物体画像データー２２１を含むディスプレイ・データー２１８にアクセスすることもできる。
【００３７】
[0051]  アバター表示制御モジュール２０９は、ジェスチャー認識ソフトウェア２０６によって認識されたジェスチャー、および動きモジュール２０４によって特定された他の該当する動きに基づいて、アバター画像データー２１９を更新する。一例では、動きまたは姿勢を表す画像データー２１９は、アバターについての動き追跡データーとすることができる。一例では、このような動き追跡データーをモーション・キャプチャー・ファイルに格納することができ、動きモジュール２０４は、新たな動き追跡データー２０５が受けられる毎に、経時的にモーション・キャプチャー・ファイルを更新する。
【００３８】
[0052]  オブジェクト制御モジュール２１１は、ユーザーの認識されたジェスチャーによって変化が生じたオブジェクトについての画像データー２２１を更新する。更に、アバター制御モジュール２０９およびオブジェクト制御モジュール２１１は、動作制御モジュール２１０からの命令に応答して、それらのそれぞれの画像データー（２１９、２２１）を更新する。動作制御モジュール２１０は、実行アプリケーションを監督する(supervise)。例えば、ゲーム環境では、スコアを取り続け、アバターが新たなレベルのゲーム・プレーに移るに連れて新たな背景が必要になると判断し、場面において他の非ユーザー制御アバターまたはオブジェクトをどのように配置するか判断する。ゲーム以外の環境では、ユーザーが要求している動作は何か特定する。例えば、ユーザーのジェスチャーがファイルを開く要求である場合、ファイル自体にアクセスするか、またはファイルにアクセスしそれをディスプレイ１６上に表示する命令をオブジェクト制御モジュール２１１に供給することができる。表示処理モジュール２０７は、表示を更新するために、表示データー２１８を組み合わせる。
【００３９】
[0053]  表示データー２１８は、場面またはビューのコンテキストを規定し、その場面またはビューにおける他のオブジェクトを定義する。例えば、表示データー２１８は、図１Ａおよび図１Ｂではボクシングの試合というコンテキスト環境を規定しており、更にボクシング・リングのロープおよび対戦相手のボクサーのアバター２２の存在を含むオブジェクトの位置を規定している。この場面における他のボクサー・アバター２２の最後の動き、特徴、および身体部分は、アバター・プロファイル・データー・ストア２１４において他のプロファイルとして格納することもできる。表示データー２１８に対する更新は、アバター表示制御モジュール２０９または動きモジュール２０４のような１つ以上のモジュールによって、インターネット２０３または離れたモジュールからの他のネットワークを介して受信することができる。
【００４０】
[0054]  アバター表示制御モジュール２０９およびオブジェクト制御モジュール２１１は、周期的にまたは動きモジュール２０４からのメッセージに応答して、それらのそれぞれのプロファイル（１つまたは複数）２１４への更新を読み、アバターまたはオブジェクトの動きまたは姿勢を表す画像データー２１９、２２１を処理する。画像データー２１９、２２１は、ローカルにディスプレイ１６にレンダリングすることができ、またはインターネット２０３または他のネットワークを介して送信することができる。
【００４１】
[0055]  アバター・プロファイル・データー２１４ａの例は、髪、顔の特徴、肌の色、衣服、場面におけるアバターの位置、それと関連のある任意のプロップというような、アバターの特徴についての色画像データーとすることができる。
【００４２】
[0056]  ユーザーのプロファイル２１４ｕに格納することができる情報の例は、典型的な使用またはプレー・モード、年齢、身長、体重情報、名前、障害(disability)、高スコア、あるいはシステムのユーザーまたは使用に関連のある任意の他の情報を含むことができる。
【００４３】
[0057]  フィードバック応答の選択に影響を及ぼす要因の例には、ユーザー・プロファイル情報を含むことができる。例えば、ユーザーの年齢または障害は、身体的または精神的のいずれでも、あるタイプのフィードバック応答を他のものよりも一層適したものにすることができる。例えば、５歳では、読むことができないかもしれないので、アプリケーションのコンテキストにおける巧妙なフィードバックが、画面上にある明示的なテキストよりも適している場合もある。プレーヤが難聴であるかもしれないので、音声応答は適していない。
【００４４】
[0058]  先に論じたように、一部の動きおよび姿勢、ジェスチャーは、娯楽用プログラムまたは他のアプリケーションのコンテキストにおいて特殊な意味を有し、ディスプレイ・ビュー制御システム２０２は、これらを識別する命令を実行する。具体的には、動きモジュール２０４はジェスチャー認識ソフトウェア２０６およびデーターにアクセスし、モデルおよび動き追跡データーに基づいて、ジェスチャーを認識または識別する。
【００４５】
[0059]  ジェスチャー認識ソフトウェア２０６は、ジェスチャー・フィルターを含むことができる。一例では、動きモジュール２０４は、例えば、身体部分インデックスのような、関連データー・インデックスに基づいて、１つ以上のジェスチャー・フィルター２０６を選択することができる。例えば、動き追跡データー・セット更新がディスプレイ・ビュー制御システム２０２によって受け入れられ、ある身体部分に対して動きの変化が示された場合、動きモジュール２０４は、これらのある種の身体部分と関連のあるジェスチャー・フィルターをインデックス化する。
【００４６】
[0060]  ジェスチャー・フィルター２０６は、動き追跡データー２０５に基づいて特定のジェスチャーが行われたか否か判断する規準を定めるパラメータ・データーに基づいて命令を実行する。一実施形態では、各ジェスチャー・フィルター２０６は、ジェスチャー・ライブラリーにおける特定のジェスチャーに対するライブラリー・モジュールとリンクされている。ジェスチャーと関連付けられた各ライブラリー・モジュールは、ジェスチャーに応答して処理を実行する実行可能命令を含む。この処理は、多くの場合、ジェスチャーに何らかの形態で反映するために、アバターの動きまたは画像を更新することを伴う。
【００４７】
[0061]  例えば、図１Ａにおける十代の少年ユーザー１８は、彼のアバター２４のボクサーよりも体格が遙かに小さい。アバターとゲームをプレーする楽しさの一部は、アバターの方が実生活におけるユーザーよりも上手に事を行うことが多いということにある。図１Ａにおいて、居間における少年１８のパンチは、表示画面１４上において彼のアバター２４による遙かに強力なパンチに変換される。ボクシング・ゲームにおける「パンチ」についてのライブラリー・モジュールは、ユーザーの踝が彼の肘から繰り出される速度の加速度(acceleration in speed)から、これはゲームにおけるこのユーザー１８の「強力なパンチ」であると判断することができ、彼のアバター２４のパンチは、ライブラリー・パンチ・モジュールの命令によって、これをディスプレイ上に反映する。また、動作制御モジュール２１０にはジェスチャーが知らされ、それに応答する。例えば、ユーザー１８のスコアを更新する。
【００４８】
[0062]  システムの中には、アバターがある種の身体部分または領域、例えば、手および腕に対して行うことができる動きまたは姿勢を一定数だけに限って、その組み合わせを与えつつ、他の身体部分または領域、例えば、脚部の直接追跡を可能にするとよい場合もある。
【００４９】
[0063]  アバターまたは他のディスプレイ・ビュー・オブジェクトの表示を更新するためのユーザーの動きの追跡は、リアルタイムで行われ、ユーザーが実行アプリケーションとリアルタイムで対話処理できるようにする。リアルタイムの表示とは、ジェスチャーの仮想表現を指し、このディスプレイは、物理空間におけるジェスチャーの実行と同時にまたは殆ど同時に表示される。例えば、本システムがユーザーにオウム返しする表示を提供することができる表示更新レートは、２０Ｈｚ以上のレートとするとよく、この場合、些細な処理の遅れは、最小限の表示の遅れにしかならず、またはユーザーには全く見えない。つまり、リアルタイムには、自動データー処理のために必要な時間だけ遅れているデーターの適時性(timeliness)に関する些細な遅れはいずれも含まれる。
【００５０】
[0064]  追跡フィードバック・ソフトウェア２１３は、追跡問題を特定するメッセージを動きモジュール２０４から受ける。追跡問題の一例は、ユーザーが動いて視野の外側に出たこと、または視野内にユーザーがいないことである。追跡問題の他の例には、身体部分に対するジェスチャーを判断することができないこと、あるいは動きまたは姿勢が任意の特定のジェスチャーに対応するしきい値確率が満たされないことがあげられる。追跡問題の他の例は、ユーザーの音響を検出するには、音声またはソング認識ソフトウェアに対する音響の大きさ(loudness)が十分でないことである。他の例では、ユーザーからの音響が区別不可能な音節を有しているので、単語を検出することができない。例えば、音楽娯楽アプリケーションでは、ユーザーの歌唱を識別または検出できないと、ユーザー・プレーヤが感じる苛々に重大な影響を及ぼす可能性がある。
【００５１】
[0065]  また、動きモジュール２０４は、オーディオビジュアル・キャプチャー・システム２０から受けたデーター、またはオーディオビジュアル・キャプチャー・システム２０からのメッセージにおけるデーターに基づいて、複数の区別可能性要因についてのフィードバックを供給することができる。区別可能性要因の一種は、前述のように音量および示差(distinctiveness)が十分でないというような、音声要因である。区別可能性要因の他の例に、可視性要因がある。可視性要因の一例は、アプリケーションを制御するユーザーまたは身体部分が、少なくとも部分的に視野から出ていることである。他の例には、取り込まれた画像においてユーザーが褪せる(wash out)照明問題がある。他の例には障害物がある。可視性要因の他の例は、障害物である。これの例は、図１Ｃにおけるコーヒー・テーブル１５のような、視野自体の中にある家具とすることができる。視野の境界上、または視野自体の中に多くの品目があり過ぎると(two many)、区別可能性要因または可視性要因が生ずる可能性がある。障害物の他の例には、衣服、または他の品目と組み合わせた衣服がある。ポンチョ(poncho top)は、腕の動きを検出するのを妨げる可能性がある。長いスカートは、ユーザーが歩行ジェスチャーまたは走行ジェスチャーを行う可能性があるゲームにおいて脚の動きを検出するのを妨げる可能性がある。黒い長椅子に対する黒いズボンは、コントラストの欠如により、可視性問題を生ずる可能性がある。キャプチャー・システム２０は、ユーザーが黒い長椅子の近くにいるとき、脚の動きを区別することができない。衣服の色がコントラストの問題を生し、その結果区別可能性の問題に至る可能性がある。加えて、人々がユーザーに近過ぎて立っていることも、彼らの腕や脚が重なり合うので、区別可能性の問題が生ずる可能性がある。深度データーは、ユーザーを区別するのに役立つことができるが、画像キャプチャー・システム２０の深度分解能に基づく問題になる可能性がある。
【００５２】
[0066]  追跡フィードバック・ソフトウェア２１３は、追跡問題を示すタイプのフィードバックを、ユーザーに供給するために選択することができる。例の中には、フィーバックが、アプリケーションの動作(activity)とは独立している視覚インディケーターまたは音声インディケーターによって、追跡品質を向上するように、ユーザーに命令を与える場合もある。例えば、明示的な矢印３３が図１Ｂにおいて画面上に重なっている。また、視野３０の中心を指し示しつつ、「右に動け」というテキスト・メッセージまたは音声メッセージを付随させることもできる。
【００５３】
[0067]  他のフィードバックは、もう少し暗示的で巧妙にすることができる。ディスプレイの視覚的特性を変化させることができる。例えば、フィードバックは、ユーザーが視野の境界からある距離の範囲内に入ると、ディスプレイ・ビューの鮮明さを多少低下させることができる。例えば、それが徐々にぼけて行く。ユーザーが視野の中心に向かって動くと、場面の鮮明さが高まる。ユーザーは、鮮明さの変化に意識して気がつかなくてもよい。鮮明さの他に、場面またはビューの表示を変えるために変化させることができる他の視覚的特性の例には、色の刺激(vibrancy)がある。他の例には、色自体がある。例えば、ユーザーが動いて視野の外側に出ると、ディスプレイ上の色が白黒になる。
【００５４】
[0068]  例の中には、追跡フィードバック・ソフトウェア２１３が、アプリケーションのコンテキストにおけるフィードバックが適していることを判断する場合もある。これらの例のいくつかについては、ユーザーが近づき過ぎている境界上の怪物、またはユーザーが動くべき方向に送られユーザーが「打つ」ボールというように、既に述べられている。他の例には、動く方向において撃つべき敵が含まれ、あるいは他のアバター・プレーヤが入って来て、ユーザーにぶつかって中央に向かって後戻りさせたり、または他のキャラクターが視野に戻る方向に走る。他の例では、ある一定の方向に音響を流し、ユーザーがその方向から遠ざかるようにそれに向かって走る気にさせることができる。ユーザーが、システム２０によって取り込まれた深度データーにおいて示されるように、画像キャプチャー・システム２０から遠すぎる場合、ユーザーが前進して視野の中に入ることを誘うために、点滅する物体または他の注意喚起表示物体を用いることができる。ユーザーがカメラ２０に近過ぎている場合、例えば、視野の前方境界３０ｆとカメラとの間にいる場合、ユーザーに後戻りさせるために、画面をほぼ満たす表示物体を作ることができる。
【００５５】
[0069]  このコンテキスト・アプリケーション・フィードバックでは、追跡フィードバック・モジュール２１３は、コンテキスト・フィードバックの要求を動作制御ソフトウェア・モジュール２１０に送る。動作制御モジュール２１０または追跡ソフトウェア２１３は、繰り返しをできるだけ避けるために、どのコンテキスト・フィードバック技法が使用されたか追跡することができる。コンテキスト・フィードバック要求は、取り組むべき区別可能性要因のタイプを含むことができる。更に、動作に対する提案も含むことができる。例えば、ユーザーが視野に戻る動きを促進するために物体を置くディスプレイ上のターゲット・ゾーンも含むことができる。他の場合では、動作制御モジュール２１０は、取るべき措置を決定することができる。
【００５６】
[0070]  追跡フィードバック・ソフトウェア２１３は、そのフィードバック応答の選択を、規準に基づくことができる。前述のように、このような規準の一例は、ユーザーの年齢である。３歳または４歳では、画面上のターゲット・ゾーンに品目をおいて、そのユーザーを移動させることは、この年齢の子供にとっては、余りに反復型であり過ぎる（repetitive)かもしれない。７歳では、特定のコンテキスト・フィードバック技法をもう少し変化させる必要があるかもしれない。
【００５７】
[0071]  アプリケーションの競合性(competitiveness)も他の要因となり得る。他のユーザーに対抗してプレーするゲームでは、ユーザーの動きを煽るために撃つべくターゲットを表示ゾーン内に置くことは、不適切である可能性がある。しかしながら、視野の境界付近に爆発物を置くと、ターゲットの予測可能性を高めることなく、ユーザーを動かすことができる。
【００５８】
[0072]  アプリケーションの中には、ディスプレイ上においてそのアプリケーションによって表示される動作を邪魔するものを全く望まない場合がある。これらの場合、ディスプレイ１６またはコンソール１２は、画面外ディスプレイ・デバイスを含むことができる。例えば、コンソール１２またはカメラ２０上の発光ダイオード（ＬＥＤ）３２をユーザーと関連付けて、ユーザーを追跡するアプリケーションの能力をカラー・パレットによって示すことができる。例えば、緑色は正常を示す。黄色は追跡能力が劣化していることを警告しており、赤色は、追跡能力が容認できないレベルまで劣化したことを示す。コンソール１２、ディスプレイ１６、またはカメラ２０上において、追跡能力の等級を示すバー・グラフあるいは他の照明というような、他の画面外ディスプレイ・デバイスまたはビューも使用することができる。
【００５９】
[0073]  妥協案として、境界に近づき過ぎているユーザー、または追跡が追跡規準を満たしていないユーザーのアバター上に、小さいアイコンを出現させることができる。ユーザーは、望ましければ、このアイコンを選択することができる。他の例では、ユーザーまたは彼のアバターを示す小さな箱、ピクチャー・イン・ピクチャーを表示して、追跡問題、およびそれに取り組むための提案までも示すことができる。他の例では、ユーザーがポーズ・ボタンを押した場合、このユーザーまたは彼のアバターを追跡問題メッセージと共に示す箱を表示することができる。
【００６０】
[0074]  他の例では、追跡フィードバック・ソフトウェア２１３は、アバターの外観変更要求を、アバター表示制御モジュール２０９に送ることができる。外観変更の例は、アバターの強調とすることができる。他の例には、アバターの外観をぼやけさせるというような視覚的特性を変化させること、あるいはカラーではなく全て黒、または全て白、または白黒にすることが含まれる。他の例では、アバターが徐々に消えて行くようにすることができる。特に、アプリケーションの開始前に訓練セッションが行われる場合、ユーザーには、彼のアバターの外観変更は、彼のジェスチャーに追跡問題があることを意味することを知らせることができる。視野の問題では、これは、競合動作(competitive action)を変更し過ぎることなく、効果的にすることができる。
【００６１】
[0075]  フィードバックは、オーディオまたはオーディオビジュアルとすることができる。例えば、アプリケーションの動作開始前の訓練セッションでは、特定の可視性要因がユーザーのジェスチャーの認識に影響を及ぼすことを、特定のアイコンが意味することをユーザーに知らせることができる。アイコンには特定の音響を伴わせることができるので、ユーザーは、例えば、外から中に動くことを知っているのは彼であることが分かる。
【００６２】
[0075]  ユーザーのジェスチャーを適正に検出することができないと、アプリケーションの実行に重大な影響を及ぼす可能性があるので、動作の一時中止は、恐らくはユーザーのアバターの外観変更と合わせられて、同様に選択されたフィードバック応答であることができる。他の例では、音響を止めることができる。
【００６３】
[0077]  実施形態の中には、追跡フィードバック・ソフトウェアが、特定のアプリケーションとは別個であることができる場合もある。例えば、追跡フィードバック・ソフトウェアは、ＡＰＩを提供することができ、このＡＰＩに対してアプリケーションがフィードバック応答の要求を送ることができる。これは、デフォルトのフィードバック応答を使用することを望むアプリケーション開発者には、便利なインターフェースであることができる。勿論、ＡＰＩ以外の他の構造も使用することができる。アプリケーション・ソフトウェアは、追加のタイプのユーザー追跡フィードバック応答を、ＡＰＩによって供給されたものに対して供給することができ、またはアプリケーション開発者がデフォルト・メカニズムの代わりに使用することを好むものに対して供給することができる。他の実施形態では、アプリケーション内部で完全に、またはアプリケーションとは無関係なソフトウェアによって完全に追跡フィードバック・ソフトウェアを扱うことができる。本明細書において記載される技術は、特定のコード・レベルの実施態様に限定されるのではない。画像キャプチャー・システム２０は、 人間のターゲットおよび人間以外のターゲットをキャプチャー・エリア内で認識し（対象に特殊な検知デバイスが取り付けられているまたは取り付けられていない）、これらを一意に識別し、三次元空間においてこれらを追跡する。  
【００６４】
[0078]  実施形態例によれば、画像キャプチャー・システム２０は、深度画像を含む深度情報と共にビデオを取り込むように構成することができる。深度画像は、例えば、飛行時間、構造化光、立体画像などを含む任意の適した技法によって、深度値を含むことができる。図２に示されるように、実施形態例によれば、撮像カメラ・コンポーネント７０は、ＩＲ発光コンポーネント７２、三次元（３Ｄ）カメラ７４、およびキャプチャー・エリアの深度画像を取り込むために用いることができるＲＧＢカメラ７６を含むことができる。例えば、飛行時間分析では、キャプチャー・システム２０のＩＲ発光コンポーネント７２は、キャプチャー・エリアに向けて赤外線光を放出することができ、次いでセンサを用いて、そのキャプチャー・エリアの中にある１つ以上のターゲットおよび物体の表面からの後方散乱光を、例えば、３Ｄカメラ７４および／またはＲＧＢカメラ７６を用いて検出することができる。実施形態の中には、パルス状赤外線光を用いて、発信光パルスと対応する入射光パルスとの間の時間を測定し、深度カメラ・システム２０からキャプチャー・エリア内にあるターゲットまたは物体上における特定の場所までの物理的距離を判定するために用いることができるようにするとよい場合がある。加えて、他の実施形態例では、発信光波の位相を着信光波の位相と比較して、位相ずれを判定することもできる。次いで、位相ずれを用いて、キャプチャー・システムからターゲットまたは物体上の特定の場所までの物理的距離を判定することができる。
【００６５】
[0079]  他の実施形態例によれば、飛行時間分析を使用して、例えば、散乱光パルス撮像(shuttered light pulse imaging)を含む種々の技法によって、経時的な光の反射ビームの強度を分析することによって、キャプチャー・システム２０からターゲットまたは物体上の特定の場所までの物理的距離を間接的に判定することができる。
【００６６】
[0080]  他の一実施形態例では、キャプチャー・システム２０は、構造化光を用いて深度情報を取り込むことができる。このような分析では、パターン光（即ち、格子パターン、縞パターンのような既知のパターンとして表示される光）を、例えば、ＩＲ発光コンポーネント７２によって、キャプチャー・エリアに向けて投射する。キャプチャー・エリアにおいて１つ以上のターゲットまたは物体の表面に衝突したときに、パターンが、それに応答して、変形する可能性がある。このようなパターンの変形を、例えば、３Ｄカメラ７４および／またはＲＧＢカメラ７６によって取り込むことができ、次いで分析して、深度カメラ・システムからターゲットまたは物体上における特定の場所までの物理的距離を判定することができる。
【００６７】
[0081]  他の実施形態によれば、キャプチャー・システム２０は、２つ以上の物理的に分離されたカメラを含むことができ、これらが異なる角度からのキャプチャー・エリアを捕らえて、視覚的な立体像を得て、これを解明することによって深度情報を生成することができる。
【００６８】
[0082]  これらのエレメントによって得られる相乗効果の一例として、ＩＲ発光コンポーネント７２および３−Ｄカメラ７４がキャプチャー・エリアの深度画像を供給するが、ある状況では、深度画像のみでは、人間のターゲットの位置または動きを識別するのに十分ではない可能性がある場合について考える。これらの状況では、ＲＧＢカメラ７６が３−Ｄカメラからの情報を「引き継ぎ」または補充して、人間のターゲットの動きまたは位置の一層完全な認識を可能にすることができる。例えば、ＲＧＢカメラは、とりわけ、１つ以上のターゲットと関連のある色を認識するために使用することができる。ユーザーが模様のあるシャツを着用しており、深度カメラがこのパターンを検出することができない場合、そのパターンを追跡し、ユーザーが行っている動きについての情報を提供するために、ＲＧＢカメラを使用することができる。他の例として、ユーザーが体を捻った場合、ユーザーのこの動きを判断するために１つ以上の他のセンサからの情報を補充するために、ＲＧＢカメラを使用することができる。更に他の例として、ユーザーが壁または第２ターゲットというような他の物体の隣にいる場合、２つの物体間で区別するためにＲＧＢデーターを使用することができる。また、ＲＧＢカメラは、追加の情報を提供するために使用することができる、顔の認識、髪の色等のような、ユーザーの特徴を判定することもできるとよい。例えば、ユーザーが後ろを向いた場合、ＲＧＢカメラは髪の色および／または顔の特徴がないことを使用して、ユーザーがキャプチャー・システムに背を向けていると判断することができる。
【００６９】
[0083]  キャプチャー・システム２０は、インタラクティブ・レート(interactive rate)でデーターを取り込むことができ、データーの忠実性を高め、開示する技法が生の深度データーを処理し、場面における物体をディジタル化し、物体の表面および模様を抽出し、ディスプレイ（１６）がその表示画面（例えば、５４）上に場面のリアルタイム描画を供給できるように、これらの技法の内任意のものをリアルタイムで実行することを可能にする。
【００７０】
[0084]  図２のシステムの実施形態では、画像キャプチャー・システム２０は、動き追跡データー２０５ｌおよび任意選択肢をあげると、オーディオ・データー２１７を送るために、図３Ａおよび図３Ｂにおけるコンピューター・システム例のような計算環境に、通信可能に結合されている。この通信結合は、例えば、ＵＳＢ接続、Firewire接続、イーサネット（登録商標）・ケーブル接続等および／またはワイヤレス８０２．１１ｂ、ｇ、ａ、またはｎ接続のようなワイヤレス接続というような、１つ以上の有線接続またはワイヤレス接続で実現することができる。
【００７１】
[0085]  更に、キャプチャー・システム２０は、プロセッサー８０によって実行することができる命令、およびフレーム・フォーマットで取り込むことができる画像データーを格納するためにメモリー・コンポーネント８２も含むことができる。メモリー・コンポーネント８２は、ランダム・アクセス・メモリー（ＲＡＭ）、リード・オンリー・メモリー（ＲＯＭ）、キャッシュ、フラッシュ・メモリー、ハード・ディスク、または任意の他の適した記憶コンポーネントを含むことができる。一実施形態では、メモリー・コンポーネント８２は、図示されているように、画像取り込みコンポーネント７０およびプロセッサー８０と通信可能な（９０）別個のコンポーネントであってもよい。他の実施形態によれば、メモリー・コンポーネント８２をプロセッサー８０および／または画像キャプチャー・コンポーネント７０の中に統合してもよい。
【００７２】
[0086]  更に、キャプチャー・システム２０は、撮像カメラ・コンポーネント７０および画像データーを格納するメモリー８２を制御するために、撮像カメラ・コンポーネント７０に通信可能に結合（９０）されているプロセッサー８０も含む。プロセッサー８０は、標準プロセッサー、特殊プロセッサー、マイクロプロセッサー等を含むことができ、プロファイルを格納し、深度画像データーを受け取り、そのデーターを指定フォーマットでメモリー８２に格納し、深度画像に適したターゲットが含まれるかもしれないか否か判断し、適したターゲットをスケルトン表現または他のタイプのターゲットのモデルに変換する命令、または任意の他の適した命令を含むことができる命令を実行することができる。更に、この処理の一部は、１つ以上の通信可能に結合されている計算環境において他のプロセッサーによって実行することもできる。
【００７３】
[0087]  処理能力を画像キャプチャー・システム２０に含ませることによって、ユーザーのマルチポイント・スケルトン・モデルのようなモデルを、リアルタイムで配信することが可能になる。一実施形態では、キャプチャー・システムの複数のコンポーネントの１つずつ別個のプロセッサーがあってもよく、または１つの中央プロセッサーがあってもよい。他の例として、中央プロセッサーと、少なくとも１つの他の関連プロセッサーがあってもよい。高コストの計算タスクがある場合、２つ以上のプロセッサーが任意の方法でこの処理タスクを分配することができる。これらのプロセッサー（１つまたは複数）は、前述のようなメモリーを含むことができ、このメモリーは１つ以上のユーザー・プロファイルを格納することができる。これらのプロファイルは、身体走査、典型的な使用モードまたはプレー・モード、年齢、身長、体重情報、名前、アバター、高スコア、あるいはシステムのユーザーまたは使用に関連のある任意の他の情報を格納することができる。
【００７４】
[0088]  キャプチャー・システム２０は、更に、ユーザーによって生成されたオーディオ信号を受けるために使用することができるマイクロフォン７８も含むことができる。つまり、この実施形態では、画像キャプチャー・システム２０は、オーディオビジュアル・データーキャプチャー・システムとなる。キャプチャー・システムにおけるマイクロフォン（１つまたは複数）は、本システムがターゲットの位置または動きの態様をより良く識別することを可能にするように、ターゲットについて追加の情報および補足情報を提供するために使用することができる。例えば、マイクロフォン（１つまたは複数）は、指向性マイクロフォン（１つまたは複数）、または指向性マイクロフォンのアレイを含むことができ、人間のターゲットの位置を更に識別するため、または２つのターゲット間で区別するために使用することができる。例えば、２人のユーザーが同様の形状または大きさであり、キャプチャー・エリア内にいる場合、例えば、彼らの別々の音声を認識してこれらのユーザーを互いに区別することができるように、ユーザーについての情報を提供するためにマイクロフォンを使用することができる。他の例として、マイクロフォンは、ユーザーについてのユーザー・プロファイルに情報を提供するために、または「音声−テキスト」型実施形態において、使用することもでき、計算システムにおいてテキストを作るために少なくとも１つのマイクロフォンを使用するとよい。
【００７５】
[0089]  画像についての深度値を有する画素データーを、深度画像と呼ぶ。一実施形態によれば、この深度画像は、取り込まれた場面の二次元（２−Ｄ）画素エリアを含むことができ、２−Ｄ画素エリアにおける各画素は、例えば、カメラ・コンポーネント７０の何らかの態様に関する基準点からの、取り込まれた場面における物体の、例えば、センチメートル、ミリメートル等の単位とした、長さまたは距離のような、関連する深度値を有する。例えば、画素に対する深度値は、「Ｚ層」で表すことができる。Ｚ層は、深度カメラ７０からその見通し線に沿って延びるＺ軸に対して垂直であるとよい。これらの深度値は、纏めて深度マップと呼ぶことができる。
【００７６】
[0090]  深度画像をより簡単に使用し、より少ない計算オーバーヘッドで素早く処理できるように、深度画像をより低い処理分解能にダウンサンプルするとよい。例えば、観察された深度画像の種々の領域を、背景領域と、ターゲットの画像が占める領域に分けることができる。背景領域は、画像から除去するか、または識別して、１つ以上の後続の処理ステップの間これらを無視できるようにすることができる。加えて、１つ以上の高分散および／またはノイズ深度値を除去する、および／または深度画像からスムージングすることができる。失われた深度情報および／または除去された深度情報の部分は、充填すること、および／または再現することができる。このようなバックフィリング(backfilling)は、最も近い近隣を平均化すること、フィルタリング、および／または任意の他の適した方法で行うことができる。スケルトン・モデルのようなモデルを生成するために深度情報を使用できるように、他の適した処理を実行することもできる。
【００７７】
[0091]  図３Ａは、図１Ａから図１Ｅにおけるようなゲーミング・コンソールにおいて使用することができる計算環境の実施形態の詳細な例を示し、この計算環境において、ユーザー追跡フィードバックを供給する１つ以上の実施形態が動作することができる。図３Ａに示すように、マルチメディア・コンソール１２は、レベル１キャッシュ１０２、レベル２キャッシュ１０４、およびフラッシュＲＯＭ（リード・オンリー・メモリー）１０６を有する中央処理ユニット（ＣＰＵ）１０１を有する。レベル１キャッシュ１０２およびレベル２キャッシュ１０４は、一時的にデーターを格納し、こうしてメモリー・アクセス・サイクルの回数を減らすことによって、処理速度およびスループットを向上させる。ＣＰＵ１０１は、１つよりも多いコア、したがって追加のレベル１およびレベル２キャッシュ１０２および１０４を有して設けることもできる。フラッシュＲＯＭ１０６は、実行可能コードを格納することができる。実行可能コードは、マルチメディア・コンソール１２の電源をオンにしたときに、ブート・プロセスの初期段階中にロードされる。
【００７８】
[0092]  グラフィクス処理ユニット（ＧＰＵ）１０８およびビデオ・エンコーダー／ビデオ・コデック（コーダー／デコーダー）１１４は、高速および高分解能グラフィクス処理のためにビデオ処理パイプラインを形成する。データーは、バスを介して、ＧＰＵ１０８からビデオ・エンコーダー／ビデオ・コデック１１４に伝達される。ビデオ処理パイプラインは、テレビジョンまたは他のディスプレイに送信するために、データーをＡ／Ｖ（オーディオ／ビデオ）ポート１４０に出力する。メモリー・コントローラー１１０がＧＰＵ１０８に接続されており、限定ではなく、ＲＡＭ（ランダム・アクセス・メモリー）のような、種々のタイプのメモリー１１２にプロセッサーがアクセスし易くなっている。
【００７９】
[0093]  マルチメディア・コンソール１２は、Ｉ／Ｏコントローラー１２０、システム管理コントローラー１２２、オーディオ処理ユニット１２３、ネットワーク・インターフェース・コントローラー１２４、第１ＵＳＢホスト・コントローラー１２６、第２ＵＳＢコントローラー１２８、およびフロント・パネルＩ／Ｏサブアセンブリ１３０を含む。これらは、モジュール１１８上に実装されている。ＵＳＢコントローラー１２６および１２８は、周辺コントローラー１４２（１）〜１４２（２）、ワイヤレス・アダプター１４８、および外部メモリー・デバイス１４６（例えば、フラッシュ・メモリー、外部ＣＤ／ＤＶＤ  ＲＯＭドライブ、リムーバブル媒体等）のためのホストとしての役割を果たす。ネットワーク・インターフェース１２４および／またはワイヤレス・アダプター１４８は、ネットワーク（例えば、インターネット、ホーム・ネットワーク等）へのアクセスを与え、イーサネット（登録商標）・カード、モデム、Bluetooth（登録商標）モジュール、ケーブル・モデム等を含む広範囲の種々の有線またはワイヤレス・アダプター・コンポーネントの内任意のものでよい。
【００８０】
[0094]  システム・メモリー１４３は、ブート・プロセスの間にロードされるアプリケーション・データーを格納するために設けられている。メディア・ドライブ１４４が設けられており、ＤＶＤ／ＣＤドライブ、ハード・ドライブ、またはその他のリムーバブル・メディア・ドライブを備えることができる。メディア・ドライブ１４４は、マルチメディア・コンソール１００の内部にあっても外部にあってもよい。アプリケーション・データーには、実行、再生等のためにマルチメディア・コンソール１２がメディア・ドライブを介してアクセスすることができる。メディア・ドライブ１４４は、シリアルＡＴＡバスまたはその他の高速接続（例えば、IEEE1394）のようなバスを介して、Ｉ／Ｏコントローラー１２０に接続されている。
【００８１】
[0095]  一実施形態では、ディスプレイ・ビュー制御システム２０２のためのソフトウェアおよびデーターのコピーをメディア・ドライブ１４４に格納することができ、実行するときにシステム・メモリー１４３にロードすることができる。
【００８２】
[0096]  システム管理コントローラー１２２は、メディア・コンソール１２が利用できることを確保することに関する種々のサービス機能を提供する。オーディオ処理ユニット１２３およびオーディオ・コデック１３２は、高忠実度およびステレオ処理を行う、対応のオーディオ処理パイプラインを形成する。オーディオ・データーは、通信リンクを介して、オーディオ処理ユニット１２３とオーディオ・コデック１３２との間で伝達される。オーディオ処理パイプラインは、外部オーディオ・プレーヤまたはオーディオ処理能力を有するデバイスによる再生のために、データーをＡ／Ｖポート１４０に出力する。
【００８３】
[0097]  フロント・パネルＩ／Ｏサブアセンブリ１３０は、電力ボタン１５０およびイジェクト・ボタン１５２の機能をサポートするだけでなく、マルチメディア・コンソール１２の外面上に露出する任意のＬＥＤ（発光ダイオード）またはその他のインディケーターもサポートする。システム電源モジュール１３６が、マルチメディア・コンソール１２のコンポーネントに電力を供給する。ファン１３８は、マルチメディア・コンソール１２内部にある回路を冷却する。
【００８４】
[0098]  ＣＰＵ１０１、ＧＰＵ１０８、メモリー・コントローラー１１０、およびマルチメディア・コンソール１００内部にある種々のその他のコンポーネントは、１系統以上のバスを介して相互接続されている。これらのバスには、シリアルおよびパラレル・バス、メモリー・バス、周辺バス、および種々のバス・アーキテクチャーの内任意のものを用いるプロセッサー・バスまたはローカル・バスが含まれる。一例として、このようなアーキテクチャーは、ペリフェラル・コンポーネント相互接続（ＰＣＩ）バス、PCI-Expressバス等を含むことができる。
【００８５】
[0099]  マルチメディア・コンソール１２の電源をオンにすると、システム・メモリー１４３からメモリー１１２および／またはキャッシュ１０２、１０４にアプリケーション・データーをロードし、ＣＰＵ１０１において実行することができる。アプリケーションは、グラフィカル・ユーザー・インターフェースを提示することができる。このグラフィカル・ユーザー・インターフェースは、マルチメディア・コンソール１００において利用可能な異なるタイプのメディアにナビゲートするときに、一貫性のあるユーザー体験を提供する。動作において、アプリケーションおよび／またはメディア・ドライブ１４４内に収容されている他のメディアをメディア・ドライブ１４４から起動または再生して、マルチメディア・コンソール１２に追加の機能を設けることもできる。
【００８６】
[00100]  マルチメディア・コンソール１２は、単にシステムをテレビジョンまたはその他のディスプレイに接続することによって、単体システムとして動作させることができる。この単体モードでは、マルチメディア・コンソール１２は、一人以上のユーザーがシステムと対話処理を行い、ムービーを見ること、または音楽を聞くことを可能にする。しかしながら、ネットワーク・インターフェース１２４またはワイヤレス・アダプター１４８によって利用可能となるブロードバンド接続機能を統合することにより、マルチメディア・コンソール１２を更に大きなネットワーク・コミュニティにおける関与個体(participant)として動作させることもできる。
【００８７】
[00101]  マルチメディア・コンソール１２の電源をオンにすると、マルチメディア・コンソールのオペレーティング・システムによって、設定されている量のハードウェア・リソースがシステムの使用のために確保される。これらのリソースは、メモリー（例えば、１６ＭＢ）、ＣＰＵおよびＧＰＵサイクル（例えば、５％）、ネットワーキング帯域幅（例えば、８ｋｂｓ）等の確保を含むことができる。これらのリソースは、システムのブート時に確保されるので、確保されたリソースは、アプリケーションの視点からは存在しない。
【００８８】
[00102]  特に、メモリーの確保は、起動カーネル、コンカレント・システム・アプリケーション、およびドライバーを含めるのに十分大きいことが好ましい。確保されたＣＰＵ使用枠(usage)がシステム・アプリケーションによって用いられない場合、アイドルのスレッドが任意の未使用サイクルを消費するように、ＣＰＵの確保は、一定であることが好ましい。
【００８９】
[00103]  ＧＰＵの確保に関して、ＧＰＵ割り込みを用いることによって、システム・アプリケーション（例えば、ポップアップ）によって発生される軽量メッセージ(lightweight message)を表示して、ポップアップをオーバーレイにレンダリングするコードをスケジューリングする。オーバーレイに用いられるメモリー量は、オーバーレイのエリア・サイズに依存し、オーバーレイは画面の解像度と共にスケーリングする(scale)ことが好ましい。コンカレント・システム・アプリケーションによってフル・ユーザー・インターフェースが用いられる場合、アプリケーションの解像度とは独立した解像度を用いることが好ましい。周波数を変更しＴＶの同期を取り直す必要性をなくすように、この解像度を設定するためにスケーラーを用いるとよい。
【００９０】
[00104]  マルチメディア・コンソール１２がブートして、システム・リソースが確保された後、コンカレント・システム・アプリケーションが実行してシステム機能を提供する。システム機能は、前述の確保したシステム・リソースの内部で実行する１組のシステム・アプリケーションの中にカプセル化されている。オペレーティング・システム・カーネルは、システム・アプリケーション・スレッドと、ゲーミング・アプリケーション・スレッドとの間でスレッドを識別する。一貫したシステム・リソース・ビューをアプリケーションに提供するために、システム・アプリケーションは、所定の時点および間隔でＣＰＵ１０１において実行するようにスケジューリングされていることが好ましい。このスケジューリングは、コンソールにおいて実行しているゲーミング・アプリケーションに対するキャッシュ破壊(disruption)を最少に抑えるためにある。
【００９１】
[00105]  コンカレント・システム・アプリケーションがオーディオを必要とする場合、時間に敏感であるため、オーディオ処理を非同期にゲーミング・アプリケーションにスケジューリングする。マルチメディア・コンソール・アプリケーション・マネージャー（以下で説明する）は、システム・アプリケーションがアクティブのとき、ゲーミング・アプリケーションのオーディオ・レベル（例えば、無音化、減衰）を制御する。
【００９２】
[00106]  入力デバイス（例えば、コントローラー１４２（１）および１４２（２））は、ゲーミング・アプリケーションおよびシステム・アプリケーションによって共有される。入力デバイスは、確保されるリソースではないが、システム・アプリケーションとゲーミング・アプリケーションとの間で切り換えられて、各々がデバイスのフォーカス(focus)を有するようにする。アプリケーション・マネージャは、ゲーミング・アプリケーションの知識を使用せずに(without knowledge the ...)入力ストリームの切換を制御し、ドライバーはフォーカス・スイッチ(focus switches)に関する状態情報を維持する。画像キャプチャー・システム２０は、コンソール１２に対して（例えば、そのカメラ・システムに対して）追加の入力デバイスを定めることができる。
【００９３】
[00107]  図３Ｂは、パーソナル・コンピューターのような、計算環境の他の実施形態例を示す。図３Ｂを参照すると、本技術を実現するシステム例は、コンピューター３１０の形態とした汎用計算機を含む。コンピューター３１０のコンポーネントは、限定ではなく、処理ユニット３２０、システム・メモリー３３０、およびシステム・バス３２１を含むことができる。システム・バス３２１は、システム・メモリーを含む種々のシステム・コンポーネントを処理ユニット３２０に結合する。システム・バス３２１は、メモリー・バスまたはメモリー・コントローラー、周辺バス、および種々のバス・アーキテクチャーの内任意のものを用いるローカル・バスを含む、様々なタイプのバス構造の内任意のものとすることができる。一例として、そして限定ではなく、このようなアーキテクチャーは、業界標準アーキテクチャー（ＩＳＡ）バス、マイクロ・チャネル・アーキテクチャー（ＭＣＡ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、ビデオ・エレクトロニクス標準連盟（ＶＥＳＡ）ローカル・バス、および メザニン・バス(Mezzanine bus)としても知られている周辺素子相互接続（ＰＣＩ）バスを含む。
【００９４】
[00108]  コンピューター３１０は、通例、種々のコンピューター読み取り可能媒体を含む。コンピューター読み取り可能媒体は、コンピューター３１０によってアクセス可能な任意の入手可能な媒体とすることができ、揮発性および不揮発性、リムーバブルおよび非リムーバブル双方の媒体を含む。一例として、そして限定ではなく、コンピューター読み取り可能媒体は、コンピューター記憶媒体および通信媒体を含むことができる。コンピューター記憶媒体は、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、またはその他のデーターというような情報の格納のために、任意の方法または技術で実現される、揮発性および不揮発性の双方、リムーバブル媒体および非リムーバブル媒体を含む。コンピューター記憶媒体は、限定ではなく、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリーまたはその他のメモリー技術、ＣＤ−ＲＯＭ、ディジタル・バーサタイル・ディスク（ＤＶＤ）またはその他の光ディスク・ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージまたはその他の磁気記憶デバイス、あるいは所望の情報を格納するために用いることができしかもコンピューター３１０がアクセス可能なその他の任意の媒体を含む。通信媒体は、通例、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、またはその他のデーターを、搬送波またはその他の移送機構のような変調データー信号において具体化し、任意の情報配信媒体を含む。「変調データー信号」という用語は、その特性の１つ以上が、信号の中に情報をエンコードするようなやり方で設定または変更されている信号を意味する。一例として、そして限定ではなく、通信媒体は、有線ネットワークまたは直接有線接続というような有線媒体、ならびに音響、ＲＦ、赤外線、およびその他のワイヤレス媒体というようなワイヤレス媒体を含む。前述の内任意のものの組み合わせも、コンピューター読み取り可能媒体の範囲に含まれてしかるべきである。
【００９５】
[00109]  システム・メモリー３３０は、リード・オンリ・メモリー（ＲＯＭ）３３１およびランダム・アクセス・メモリー（ＲＡＭ）３３２のような揮発性および／または不揮発性メモリーの形態をなすコンピューター記憶媒体を含む。基本入出力システム３３３（ＢＩＯＳ）は、起動中のように、コンピューター３１０内のエレメント間における情報転送を補助する基本的なルーチンを含み、通例ＲＯＭ３３１内に格納されている。ＲＡＭ３３２は、通例、処理ユニット３２０が直ちにアクセス可能であるデーターおよび／またはプログラム・モジュール、あるいは現在処理ユニット３２０によって処理されているデーターおよび／またはプログラム・モジュールを収容する。一例として、そして限定ではなく、図３は、オペレーティング・システム３３４、アプリケーション・プログラム３３５、その他のプログラム・モジュール３３６、およびプログラム・データー３３７を示す。
【００９６】
[00110]  また、コンピューター３１０は、その他のリムーバブル／非リムーバブル揮発性／不揮発性コンピューター記憶媒体も含むことができる。一例として示すに過ぎないが、図３Ｂは、非リムーバブル不揮発性磁気媒体からの読み取りおよびこれへの書き込みを行なうハード・ディスク・ドライブ３４０、リムーバブル不揮発性磁気ディスク３１２からの読み取りおよびこれへの書き込みを行なう磁気ディスク・ドライブ３５１、ならびにＣＤ  ＲＯＭまたはその他の光媒体のようなリムーバブル不揮発性光ディスク３５６からの読み取りおよびこれへの書き込みを行なう光ディスク・ドライブ３５６を示す。本動作環境例において使用可能なその他のリムーバブル／非リムーバブル、揮発性／不揮発性コンピューター記憶媒体には、限定ではないが、磁気テープ・カセット、フラッシュ・メモリー・カード、ディジタル・バーサタイル・ディスク、ディジタル・ビデオ・テープ、ソリッド・ステートＲＡＭ、ソリッド・ステートＲＯＭ等が含まれる。ハード・ディスク・ドライブ３４１は、通例、インターフェース３４０のような非リムーバブル・メモリー・インターフェースを介してシステム・バス３２１に接続され、磁気ディスク・ドライブ３５１および光ディスク・ドライブ３５５は、通例、インターフェース３５０のようなリムーバブル・メモリー・インターフェースによって、システム・バス３２１に接続されている。
【００９７】
[00111]  先に論じ図３Ｂに示すドライブおよびそれらと関連のあるコンピューター記憶媒体は、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、およびコンピューター３１０のその他のデーターを格納する。図３Ｂでは、例えば、ハード・ディスク・ドライブ３４１は、オペレーティング・システム３４４、アプリケーション・プログラム３４５、その他のプログラム・モジュール３４６、およびプログラム・データー３４７を格納するように示されている。尚、これらのコンポーネントは、オペレーティング・システム３３４、アプリケーション・プログラム３３５、その他のプログラム・モジュール３３６、およびプログラム・データー３３７と同じでも異なっていても可能であることを注記しておく。オペレーティング・システム３４４、アプリケーション・プログラム３４５、その他のプログラム・モジュール３４６、およびプログラム・データー３４７は、ここで、少なくともこれらが異なるコピーであることを示すために、異なる番号が与えられている。
【００９８】
[00112]  一実施形態では、ディスプレイ・ビュー制御システム２０２のソフトウェアおよびデーターのコピーを、ハード・ドライブ２３８に格納されているまたは離れて格納されている（例えば、２４８）アプリケーション・プログラム３４５およびプログラム・データー３４７に格納することができる。また、実行するときに、システム・メモリー２２２におけるアプリケーション・プログラム２２６およびプログラム・データー２２８としてコピーをロードすることもできる。
【００９９】
[00113]  ユーザーは、キーボード３６２のような入力デバイス、および一般にマウス、トラックボールまたはタッチ・パッドと呼ばれているポインティング・デバイス３６１によって、コマンドおよび情報をコンピューター２０に入力することができる。他の入力デバイス（図示せず）には、マイクロフォン、ジョイスティック、ゲーム・パッド、衛星ディッシュ、スキャナー等を含むことができる。これらおよびその他の入力デバイスは、多くの場合、ユーザー入力インターフェース３６０を介して、処理ユニット３２０に接続されている。ユーザー入力インターフェース３６０は、システム・バスに結合されているが、パラレル・ポート、ゲーム・ポート、またはユニバーサル・シリアル・バス（ＵＳＢ）のようなその他のインターフェースおよびバス構造によって接続することも可能である。モニター３９１またはその他の形式のディスプレイ・デバイスも、ビデオ・インターフェース３９０のようなインターフェースを介して、システム・バス３２１に接続されている。モニターに加えて、コンピューターは、スピーカー３９７およびプリンター３９６のような、その他の周辺出力装置も含むことができ、これらは出力周辺インターフェース３９０を介して接続することができる。
【０１００】
[00114]  コンピューター３１０は、リモート・コンピューター３８０のような１つ以上のリモート・コンピューターへの論理接続を用いて、ネットワーク環境において動作することも可能である。リモート・コンピューター３８０は、パーソナル・コンピューター、サーバー、ルータ、ネットワークＰＣ、ピア・デバイス、またはその他の共通ネットワーク・ノードとすることができ、通例、コンピューター３１０に関して先に説明したエレメントの多くまたは全てを含むが、図３にはメモリー記憶装置３８１のみが示されている。図３に示す論理接続は、ローカル・エリア・ネットワーク（ＬＡＮ）３７１およびワイド・エリア・ネットワーク（ＷＡＮ）３７３を含むが、他のネットワークも含むことができる。このようなネットワーク環境は、事務所、企業規模のコンピューター・ネットワーク、イントラネットおよびインターネットにおいては、一般的である。
【０１０１】
[00115]  ＬＡＮネットワーク環境で用いる場合、コンピューター３１０は、ネットワーク・インターフェースまたはアダプター３７０を介してＬＡＮ３７１に接続される。ＷＡＮネットワーク環境で用いる場合、コンピューター３１０は、通例、モデム３７２、またはインターネットのようなＷＡＮ３７３を介して通信を行うその他の手段を含む。モデム３７２は、内蔵でも外付けでもよく、ユーザー入力インターフェース３１０またはその他のしかるべきメカニズムを介してシステム・バス３２１に接続することができる。ネットワーク接続環境では、コンピューター３１０に関して図示したプログラム・モジュール、またはその一部は、離れたメモリー記憶装置に格納することもできる。一例として、そして限定ではなく、図３Ｂは、リモート・アプリケーション・プログラム３８５がメモリー・デバイス３８１上に存在するものとして示している。尚、図示のネットワーク接続は一例であり、コンピューター間で通信リンクを作る他の手段も使用可能であることは認められよう。
【０１０２】
[00116]  図４は、追跡フィードバックをユーザーに供給する１つ以上の実施形態が動作することができる、ネットワーク接続計算環境の実施形態例を示す。図４に示されるように、複数のコンソール４００Ａ〜４００Ｘまたは図３Ａおよび図３Ｂに示されたような処理デバイスを、ネットワーク４０２に結合することができ、更に互いに通信すること、およびネットワーク４０２を介して、１つ以上のサーバー（１つまたは複数）４０６を有するネットワーク・ゲーミング・サービス４０４と通信することができる。サーバー（１つまたは複数）４０６は、コンソール４００Ａ〜４００Ｘから情報を受信することおよびコンソール４００Ａ〜４００Ｘに情報を送信することが可能な通信コンポーネントを含むことができ、コンソール４００Ａ〜４００Ｘにおいて実行しているアプリケーションが呼び出して利用することができるサービスの集合体を提供することもできる。
【０１０３】
[00117]  コンソール４００Ａ〜４００Ｘは、ユーザー・ログイン・サービス４０８を呼び出すことができる。ユーザー・ログイン・サービス４０８は、コンソール４００Ａ〜４００Ｘにおいてユーザーを認証し特定するために使用される。ログインの間、ログイン・サービス４０８はゲーマー・タグ(gamer tag)（ユーザーと関連付けられている一意の識別子）およびパスワードをユーザーから取得し、更にユーザーが使用しているコンソールを一意に識別するコンソール識別子、およびこのコンソールへのネットワーク・パスも取得する。ゲーマー・タグおよびパスワードは、これらをユーザー・グローバル・プロファイル・データーベース４１６と比較することによって認証される。グローバル・ユーザー・プロファイル・データーベース４１６は、ユーザー・ログイン・サービス４０８と同じサーバーに配置することができ、あるいは１つの異なるサーバーまたは異なるサーバーの集合体に分散することもできる。一旦認証されたなら、ユーザー・ログイン・サービス４０８はコンソール識別子およびネットワーク・パスをグローバル・ユーザー・プロファイル・データーベース４１６に格納し、メッセージおよび情報をコンソールに送ることができるようにする。
【０１０４】
[00118]  一実施形態では、コンソール４００Ａ〜４００Ｘは、ゲーミング・サービス４１０、共有サービス４１２、ユーザー共有データー４２８、および交換データーベース４１８を含むことができる。ゲーミング・サービスは、ユーザーがオンライン・インタラクティブ・ゲームをプレーすること、コンソール間で合同ゲーム・プレーのためのゲーミング環境を作り共有すること、そしてオンライン市場、種々のゲームに跨がる集中達成追跡、および他の共有体験機能というような、他のサービスを提供することを可能にするのであるとよい。共有サービス４１２は、ユーザーが他のユーザーとゲーム・プレー・エレメントを共有することを可能にする。例えば、コンソール４００ｘにおけるユーザーが、ゲームにおいて使用するためのエレメントを作り、これらを他のユーザーと共有するまたはこれらを他のユーザーに販売することができる。加えて、ユーザーは、ゲームにおけるレースのムービーまたは種々の場面というような、ゲーム・プレー体験のエレメントを記録し、これらを他のユーザーと共有することもできる。共有または販売のためにユーザーによって提供される情報は、ユーザー共有データー４２８に格納することができる。
【０１０５】
[00119]  グローバル・ユーザー・プロファイル・データーベース４１６は、ユーザーのアカウント情報、および各ユーザーが使用している個々のコンソールを一意に識別するコンソール識別子というような、コンソール４００Ａ〜４００Ｘにおけるユーザー全てについての情報を含むことができる。また、グローバル・ユーザー・プロファイル・データーベース４１６は、コンソール４００Ａ〜４００Ｘにおける全てのユーザーと関連のあるユーザー好み情報も含むことができる。また、グローバル・ユーザー・プロファイル・データーベース４１６は、ユーザーと関連のあるゲーム記録および友人リストのような、ユーザーに関する情報も含むことができる。
【０１０６】
[00120]  追跡フィードバック・ソフトウェア４１４は、ゲーミング・サービス４０４において提供することもできる。この追跡フィードバック・ソフトウェアは、追跡問題に対して、サーバーにアップロードされユーザー共有データー４２８に格納されているゲーム・プレー・エレメントにおけるジェスチャーおよび動きで応答することができる。
【０１０７】
[00121]  図４に示されているゲーミング・システムによれば、任意の数の処理デバイスをネットワーク接続して設けることができる。したがって、本明細書において紹介された技術は、１つ以上のサーバー４０６においてゲーミング・サービス４０４と共に動作することができ、またはネットワーク接続環境において、デバイス４００A〜４００ｘのような、個々の処理デバイスに設けることもできる。
【０１０８】
[00122]  図５は、キャプチャー・システム２０および計算環境１２を使用して作ることができる人間のユーザー５００のモデルを示す。ユーザーのスケルトン・マッピング例５００は、オーディオビジュアル・データー・キャプチャー・システム２０によって取り込まれた動き追跡データー２０５から生成されていてもよい。このモデルは、ジェスチャーなどを判定するために、ジェスチャー・ベース・システム１０の１つ以上の態様によって使用することができる。このモデルは、関節および骨で構成することができる。これらの関節および骨を追跡することによって、ジェスチャー・ベース・システムは、ユーザーがどのジェスチャーを行っているのか判断することが可能になるとよい。これらのジェスチャーは、ジェスチャー・ベース・システムを制御するために使用することができる。この実施形態では、種々の関節および骨が識別されている。各手首５０２ａ、５０２ｂ、各前腕５０４ａ、５０４ｂ、各肘５０６ａ、５０６ｂ、各二頭筋５０８ａ、５０８ｂ、各肩５１０ａ、５１０ｂ、各臀部５１２ａ、５１２ｂ、各腿５１４ａ、５１４ｂ、各膝５１６ａ、５１６ｂ、各前肢５１８ａ、５１８ｂ、各足５２０ａ、５２０ｂ、頭部５２２、胴体５２４、脊椎の上端５２６および下端５２８、ならびにウェスト５３０である。追跡するポイントが多い程、鼻および目というような、顔の個々の容貌(feature)も識別するとよい。しかしながら、追跡するデーター変化が多い程、アバターの表示が遅くなる可能性がある。
【０１０９】
[00123]  図６は、手６０２を振るまたは上げる、腕６０４でＸを作る、またはハイファイブ６０６を行うというような、一連のジェスチャーを示す。図示されているこれら少数のジェスチャーには全く限定されないが、これらのジェスチャーは、他の任意のものと共に、ジェスチャー・ベース・システム１０に対するコマンドであることができる。一実施形態では、ジェスチャーは普遍的であるとよい。これが意味するのは、ジェスチャーが特定のソフトウェアやハードウェア・アプリケーションには限定されないということである。他の実施形態では、計算環境１２において動作されているゲームまたは他のプログラムは、プログラム特定のジェスチャーを有するのであってもよい。例えば、ゲームの制御を他のプレーヤに引き継ぐための普遍的なジェスチャーは、握手にするとよいが、レスリング・ゲームのようなゲームが、ユーザーがハイファイブ５２４を行う場合に、制御の引き継ぎを行うプログラム特定ジェスチャーを有してもよい。
【０１１０】
[00124]  図７および図８の方法の実施形態について、それぞれ、図２の機能的コンピューター実装アーキテクチャーの実施形態のコンテキストで論ずるが、限定ではなく例示を目的とする。
【０１１１】
[00125]  図７は、ユーザーの動きを追跡するアプリケーションの能力についてユーザーにフィードバックを供給する方法の実施形態７００のフローチャートである。キャプチャー・システムは、キャプチャー・エリアにおいてユーザーを検出する（７０２）。動きモジュール２０４は、動き追跡データー２０５１、および、任意選択肢をあげると、オーディオ・データー２１７を受けて、キャプチャー・システムによって生成されたデーターに基づいて、このユーザーの少なくとも１つの身体特徴を追跡する（７０４）。実行アプリケーションに対してユーザー追跡規準が満たされていないことに応答して、追跡フィードバック・ソフトウェア２１３は、フィードバック応答を決定し（７０６）、ユーザーへのフィードバックの出力を行わせる（７０８）。先に説明したように、フィードバックの出力は、視覚インディケーターを表示すること、音声インディケーターを供給すること、またはアプリケーションの動作のコンテキストの範囲における動作を与えることを含むことができる。
【０１１２】
[00126]  図８は、キャプチャー・エリアを選択するときにユーザーを補助する方法の実施形態８００のフローチャートである。追跡フィードバック・ソフトウェア２１３は、ユーザーにカメラの視野を試験用キャプチャー・エリアに向けることを命令する命令を表示し（８０２）、キャプチャー・システム２０はこの試験用キャプチャー・エリアの画像データーを取り込む（８０４）。一実施形態では、追跡フィードバック・ソフトウェア２１３は、ユーザーが彼自身を見ることができるように、試験用キャプチャー・エリアの画像データーをディスプレイ上に表示することができる。追跡フィードバック・ソフトウェア２１３は、実行アプリケーションの動作を制御するために使用される少なくとも１つの身体部分を使用して、少なくとも１つのジェスチャーを行うことをユーザーに指示する命令を表示する（８０６）。動きモジュール２０４は、ジェスチャーを行う少なくとも１つの身体部分の動きを追跡する（８０８）。ソフトウェア２１３は、追跡規準が満たされているか否か判断する（８１１）。ユーザー追跡規準が満たされたことに応答して、追跡フィードバック・ソフトウェア２１３は、試験用キャプチャー・エリアに対して追跡品質スコアを決定する（８１２）。
【０１１３】
[00127]  動きモジュール２０４は、スコアまたは重み、あるいは試験用キャプチャー・エリアについてある種の可視性要因の品質を表す何らかのを、追跡フィードバック・ソフトウェア２１３に供給することができ、追跡フィードバック・ソフトウェア２１３は、可視性要因に基づいて、それを追跡規準と比較する。一実施形態では、次に、重み付けアルゴリズムをこれらの要因に適用して、スコアを決定することができる。要因の例には、キャプチャー・システムの視野におけるジェスチャーに対するユーザーの身体部分の位置、キャプチャー・エリアにおける照明、および身体部分の障害が含まれる。
【０１１４】
[00128]  異なるキャプチャー・エリアが格付けまたは採点され、最良のものが推薦される（８１８）。他の代替案では、画像キャプチャー・システム２０がある範囲の角度回転させられて、室内における異なるビューを取り込み、最良の追跡能力を備えるものをキャプチャー・エリアとして提案する。最良の追跡能力があるキャプチャー・エリアは、ユーザーにそれを知らせるために表示処理モジュール２０７を介してディスプレイ１６上に表示することができる。
【０１１５】
[00129]  動きモジュール２０４は、ジェスチャーを、ユーザーが行っている動きと照合できない場合もあり、追跡フィードバック・ソフトウェア２１３にメッセージを送って、それを示すことができる。また、動きモジュール２０４は、ユーザー追跡規準が満たされないことに寄与している可視性要因を示すこともできる。例えば、可視性要因照明(visibility factor lighting)に対する代表的な品質値が、それが貧弱であることを示すことができる。
【０１１６】
[00130]  ユーザー追跡規準が満たされていないことに応答して、追跡フィードバック・ソフトウェア２１３は、可視性要因の内１つ以上を追跡に対してどのようにして改良できるか判定し、ユーザーにフィードバックを出力して（８０２）、可視性要因を改良するために、キャプチャー・エリアにおいて少なくとも１つの変化を特定する。このフィードバックは、視覚表示を介してまたは音声メッセージとして出力することができる。
【０１１７】
[00131]  追跡フィードバック・ソフトウェア２１３は、試験用キャプチャー・エリアに対する追跡品質スコアを決定する（８１２）。動きモジュール２０４は、試験用キャプチャー・エリアに対してスコアまたは重み、またはある種の可視性要因の品質を現す何らかの値を、追跡フィードバック・ソフトウェア２１３に供給する。追跡フィードバック・ソフトウェア２１３は、重み付けアルゴリズムをこれらの要因に適用して、スコアを決定することができる。
【０１１８】
[00132]  追跡フィードバック・ソフトウェア２１３は、試験すべき他の試験用キャプチャー・エリアがあるか否か判定する（８１４）。例えば、他に試験用キャプチャー・エリアがあるか否かに関するユーザー入力を、ディスプレイを介して要求する。他に試験用キャプチャー・エリアがある場合、この試験用エリアについて、以上のステップが繰り返される。他に試験用エリアがない場合、追跡フィードバック・ソフトウェア２１３は、最良の可視性スコアを有する試験用キャプチャー・エリアの推薦を表示する。例えば、最良のスコアを有する試験用キャプチャー・エリアが、ディスプレイ上に表示される。他にキャプチャー・エリアがある場合、ソフトウェア２１３は、カメラの視野を次のキャプチャー・エリアに向け、以上のステップを繰り返す命令を表示する（８０２）。
【０１１９】
[00133]    以上の詳細な説明は、例示および説明を目的として提示された。これは、網羅的であることも、開示された技術を開示された形態そのものに限定することを意図するのではない。以上の教示に照らして、多くの変更や変形が可能である。記載された実施形態は、本技術の原理およびその実用的な用途を最良に説明し、それによって当業者が本技術を種々の実施形態において、そして個々の考えられる使用に適するような種々の変更と共に、最良に利用することを可能にするために選択されたのである。更に、本明細書において用いられた文言は、主に読みやすさのためそして教育的な目的のために選択されたことは、注記してしかるべきであろう。
【０１２０】
[00134]  主題は、構造的特徴および／または方法論的動作に特定の文言で記載されたが、添付されている特許請求の範囲において定められている主題は、必ずしも、前述した特定の特徴や動作には限定されないことは理解されてしかるべきである。逆に、先に記載した特定の特徴および動作は、特許請求の範囲を実現する形態例として、開示したまでである。
【図１Ａ】
0005943913.tif 000002
【図１Ｂ】
0005943913.tif 000003
【図１Ｃ】
0005943913.tif 000004
【図１Ｄ】
0005943913.tif 000005
【図１Ｅ】
0005943913.tif 000006
【図１Ｆ】
0005943913.tif 000007
【図１Ｇ】
0005943913.tif 000008
【図２】
0005943913.tif 000009
【図３Ａ】
0005943913.tif 000010
【図３Ｂ】
0005943913.tif 000011
【図４】
0005943913.tif 000012
【図５】
0005943913.tif 000013
【図６】
0005943913.tif 000014
【図７】
0005943913.tif 000015
【図８】
0005943913.tif 000016