(57)【要約】  方法は、深度カメラから１つまたは複数の深度画像を受信するステップであって、深度画像が、深度画像の各ピクセルによってイメージされた表面の深度を示すものであるステップを含む。この方法は、深度画像によってイメージされた人間の対象を特定するステップと、深度画像のうちの１つまたは複数の中で、制御デバイスから発せられたビーコンを認識するステップとをさらに含む。制御デバイスの位置が、３次元で評価され、制御デバイスが、人間の対象との制御デバイスの近さ、または人間の対象に対する制御デバイスのその他のパラメータに基づいて、人間の対象に関連付けられる。
2015536507.tif 000002
【特許請求の範囲】
【請求項１】
深度カメラから１つまたは複数の深度画像を受信するステップであって、前記深度画像が、前記深度画像の各ピクセルによってイメージされた表面の深度を示す、ステップと、
前記深度画像によってイメージされた人間の対象を特定するステップと、
前記深度画像のうちの１つまたは複数の中で、制御デバイスから発せられたビーコンを認識するステップと、
３次元の前記制御デバイスの位置を評価するステップと、
前記人間の対象との前記制御デバイスの近さに基づいて、前記制御デバイスを前記人間の対象に関連付けるステップとを含む方法。
【請求項２】
前記人間の対象を特定するステップが、仮想的な骨格によって前記人間の対象をモデリングするステップを含む請求項１に記載の方法。
【請求項３】
前記人間の対象を特定するステップが、前記深度画像と、可視光カメラを介して受信された１つまたは複数の画像とに顔認識を適用するステップを含む請求項２に記載の方法。
【請求項４】
前記制御デバイスを前記人間の対象に関連付けるステップが、前記仮想的な骨格のジェスチャ入力および前記制御デバイスの制御入力を同じソースに帰するステップを含む請求項２に記載の方法。
【請求項５】
前記制御デバイスの前記位置が前記仮想的な骨格の手の関節の閾値の距離以内にある場合に、前記制御デバイスが、前記人間の対象に関連付けられる請求項４に記載の方法。
【請求項６】
前記ビーコンが、赤外線信号である請求項１に記載の方法。
【請求項７】
前記制御デバイスが、オーディオヘッドフォンを含み、前記方法が、前記オーディオヘッドフォンの位置に基づいて、前記オーディオヘッドフォンに音声を提供するアプリケーションのオーディオ出力を調整するステップをさらに含む請求項１に記載の方法。
【請求項８】
前記制御デバイスを前記人間の対象に関連付けるステップが、前記制御デバイスによって制御されるアプリケーションに前記人間の対象の設定プロファイルを適用するステップを含む請求項１に記載の方法。
【請求項９】
前記制御デバイスを前記人間の対象に関連付けるステップが、前記制御デバイスによって制御されるアプリケーションを介してユーザに固有のコンテンツを提示するステップであって、前記ユーザに固有のコンテンツが前記人間の対象のために選択される、ステップを含む請求項１に記載の方法。
【請求項１０】
深度カメラから深度画像を受信するための深度カメラインターフェースであって、前記深度画像が、前記深度画像の各ピクセルによってイメージされた表面の深度を示す、深度カメラインターフェースと、
前記深度カメラインターフェースと有効な通信をする論理マシンと、
前記論理マシンと有効な通信をするストレージマシンであって、
前記深度カメラから１つまたは複数の深度画像を受信し、
前記深度画像によってイメージされた人間の対象を特定し、
ビーコンを発することを制御デバイスに要求するメッセージを前記制御デバイスに出力し、
前記深度画像のうちの１つまたは複数の中で、前記制御デバイスから発せられた前記ビーコンを認識し、
３次元の前記制御デバイスの位置を評価し、
前記人間の対象との前記制御デバイスの近さに基づいて、前記制御デバイスを前記人間の対象に関連付けるために、前記論理マシンによって実行可能な命令を記憶する、ストレージマシンとを含むコンピュータ。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]  特定のユーザとの制御デバイスの関連付けは、通常、制御デバイスと、ユーザと、コンピューティングシステムとの間の複数のレベルのインタラクションをともなう。また、関連付けは、ユーザが新しい関連付けで制御デバイスを更新することを特に要求するまで、そのまま残る可能性がある。
【発明の概要】
【０００２】
[0002]  動作環境内でインテリジェントにオブジェクトを対象と関連付けるための方法を提供するための実施形態が、本明細書において開示される。例えば、コンピューティングデバイスが、深度カメラから１つまたは複数の深度画像を受信することができ、深度画像は、深度画像の各ピクセルによってイメージ（image；撮像）された表面の深度を示す。コンピューティングデバイスは、深度画像を利用して、深度画像によってイメージされた人間の対象を特定し、深度画像のうちの１つまたは複数の中で、制御デバイスから発せられたビーコンを認識することができる。コンピューティングデバイスは、３次元の制御デバイスの位置を評価して制御デバイスの相対的な位置を判定し、人間の対象との制御デバイスの近さ、および／または対象に対する制御デバイスの任意のその他の好適なパラメータに基づいて、制御デバイスを人間の対象に関連付けることができる。
【０００３】
[0003]  この「発明の概要」は、「発明を実施するための形態」において以下でさらに説明される概念の選択を簡潔な形態で導入するために提供される。この「発明の概要」は、特許請求される主題の重要な特徴または必須の特徴を特定するように意図されておらず、特許請求される主題の範囲を限定するために使用されるように意図されてもいない。さらに、特許請求される主題は、本開示のいずれかの部分で述べられるいずれかのまたはすべての欠点を解決する実装に限定されない。
【図面の簡単な説明】
【０００４】
【図１】[0004]本開示の一実施形態による、コンピューティングシステムならびに１つまたは複数の対象およびオブジェクトを含む環境の非限定的な例を概略的に示す図である。
【図２】[0005]本開示の一実施形態による、オブジェクトを対象に関連付ける方法を示す図である。
【図３】[0006]本開示の一実施形態による骨格追跡パイプラインの非限定的な例を概略的に示す図である。
【図４】[0007]本開示の一実施形態による制御デバイスをコンピューティングシステムに結びつける方法を示す図である。
【図５】[0008]本開示の一実施形態による、コンピューティングシステムおよび２つ以上の制御デバイスを含む環境に関する例示的な通信図を概略的に示す図である。
【図６】[0009]本開示の一実施形態による例示的なコンピューティングシステムの図である。
【発明を実施するための形態】
【０００５】
[0010]  本開示は、ゲームのコントローラなどの制御デバイスをインテリジェントにゲームのプレイヤーまたは別の対象と関連付けることに関する。制御デバイスは、ビーコンを発することができ、コンピュータが、ビーコンを使用して制御デバイスの３次元位置を決定することができる。１つまたは複数の対象の３次元位置を評価、決定することが可能であり、制御デバイスは、その対象との制御デバイスの近さや距離、および／または、その対象に対する制御デバイスの任意のその他の好適なパラメータに基づいて、１つのそのような対象に自動的に関連付けられる。
【０００６】
[0011]  図１は、コンピューティングシステム１０２および制御デバイス１０４、１０６、１０８、および１０９を含む例示的な環境１００を示す。環境１００は、部屋として示されているが、屋内環境および／または屋外環境を含む任意の好適な物理的空間である可能性がある。コンピューティングシステム１０２は、制御デバイス１０４、１０６、１０８、および１０９から入力を受信し、および／または制御デバイス１０４、１０６、１０８、および１０９と通信するように構成され得る。本開示による制御デバイスは、ゲームのコントローラ、オーディオヘッドフォンおよび／またはヘッドセット、リモコン、楽器（例えば、ギター、ドラムなど）、ハンドルコントローラ、操縦桿、武器（例えば、剣、レーザーソード、ピストル、ライフル、サーベル、斧槍、ヌンチャクなど）、モバイルコンピューティングデバイスなどを含むがこれらに限定されない任意の好適な制御デバイスを含み得る。示された実施形態において、制御デバイス１０４、１０６、および１０８は、ゲームのコントローラの形態を取り、制御デバイス１０９は、オーディオヘッドセットの形態を取る。コンピューティングシステム１０２は、深度カメラ１１０などの撮像デバイスを含み得る。例えば、深度カメラ１１０は、環境１００を撮像するように構成される１つもしくは複数のセンサー、レンズ要素、および／または光源を含み得る。深度カメラ１１０は、飛行時間（time-of-flight）深度カメラおよび／または構造化光（structured light）深度カメラを含むがこれらに限定されない任意の好適な深度撮像テクノロジーを利用し得る。深度カメラ１１０は、可視光カメラおよび／または１つもしくは複数のマイクロフォンを含むがこれらに限定されない追加のセンサーを含み得る。深度カメラ１１０は、深度画像を生成し、コンピューティングシステム１０２に送信することができる。深度画像は、環境１００の１つまたは複数の特徴に関する情報を提供するために、深度画像の各ピクセルによってイメージ（image）された表面の深度を示すことができる。
【０００７】
[0012]  図１でさらに示されるように、環境１００は、ゲームのプレイヤー１１２およびゲームのプレイヤー１１４などの１人または複数の人間の対象と、テーブル１１６などの１つまたは複数の人間以外の対象とを含み得る。一部の実施形態においては、ゲームのプレイヤー１１２などの１人または複数のユーザが、コンピューティングシステム１０２とインタラクションする可能性がある。例えば、コンピューティングシステム１０２は、ディスプレイデバイス１２４のディスプレイ１２２を通じてなど、任意の好適な方法でゲームのプレイヤー１１２に視覚的な出力を与えることができる。コンピューティングシステム１０２は、制御デバイス１０９のオーディオヘッドフォン１２６および／またはディスプレイデバイス１２４のスピーカなどの１つまたは複数のオーディオデバイスを通じてなどを含め、任意の好適な方法でゲームのプレイヤー１１２にオーディオ出力を与えることもできる。
【０００８】
[0013]  ゲームのプレイヤー１１２は、制御デバイス１０４、深度カメラ１１０、制御デバイス１０９のマイクロフォン１１８、および／または任意のその他の好適なユーザ入力デバイスなどの１つまたは複数のユーザ入力デバイスを介してコンピューティングシステム１０２に入力を与えることができる。上述のユーザ入力デバイスなどのユーザ入力デバイスは、有線構成および／または無線構成を含むがこれらに限定されない任意の好適な方法でコンピューティングシステム１０２と通信することができる。例えば、制御デバイスが、無線周波数（RF）通信チャネルを介して送信されるコマンドの形態でコンピューティングシステム１０２にユーザ入力を与える可能性がある。一部の実施形態においては、複数の制御デバイスおよび／またはその他のオブジェクトのそれぞれが、特定の制御デバイスを別の制御デバイスと区別するために、特定のＲＦチャネルを介して通信し、および／または通信中に一意の識別子を提供する可能性がある。
【０００９】
[0014]  制御デバイスおよび／またはその他のオブジェクトは、メッセージ送信のラウンドロビン式および／またはタイムスライス式のスケジューリングによって互いに区別することができる。例えば、複数の制御デバイスは、それが点滅するかまたはその他の方法で信号を送信し得るタイムスロットを割り振られる。それに応答して、コンピューティングシステムは、受信された信号の時間および／または順序を判定し、信号の送信元をその時間および／または順序の値に割り振られた制御デバイスと関連付けることによって各制御デバイスを区別し得る。したがって、コンピューティングシステムは、そのコンピューティングシステムが観測するビーコンを検出し、ＲＦ、有線ケーブルなどの別の通信媒体を介してそのコンピューティングシステムが通信するオブジェクトと関連付けることができる。
【００１０】
[0015]  制御デバイス、ユーザ入力／出力デバイスなどのオブジェクトは、ビーコンを発することによってコンピューティングシステム１０２とインタラクションするようにやはり構成され得る。例えば、図１に示されるように、制御デバイス１０６が、ビーコン１２８を発する可能性がある。ビーコン１２８は、音声および／または光ビーコンを含むがこれらに限定されない任意の好適なビーコンを含み得る。例えば、ビーコン１２８は、赤外線ビーコン、可視光ビーコン、ソナービーコンおよび／または任意の好適な電磁信号を含み得る。一部の実施形態において、ビーコンは、コンピューティングシステムからの要求またはその他のメッセージに応答してのみ発せられる可能性がある。ビーコン１２８は、ユーザ入力の送信元やソースおよび／またはオブジェクトの位置を判定するために使用され得る。ユーザ入力の送信元を判定することは、コンピューティングシステム１０２が動的に調整可能なユーザエクスペリエンスを提供することを可能にする。例えば、アプリケーションのコンテンツが、特定のユーザが入力を与えることに基づいてカスタマイズされ得る。一部の実施形態においては、アプリケーションのコンテンツが、制御デバイスに結び付けられる。例えば、オーディオヘッドフォンに音を提供するアプリケーションのオーディオ出力が、オーディオヘッドフォンの位置に基づいて調整される。
【００１１】
[0016]  ユーザ入力の送信元を特定することは、複数のユーザ入力および／または制御デバイスの間の協働を可能にする。例えば、オーディオヘッドセットに与えられるオーディオ入力が制御デバイスに与えられる入力を補足し得るように、オーディオヘッドセットが、制御デバイスに関連付けられる可能性がある。ジェスチャに基づくコマンドが制御デバイスに与えられる入力を補足し得るように、制御デバイス、深度カメラ、および／またはその他の好適なジェスチャ検出デバイスによって検出されるジェスチャが、特定の制御デバイスに関連付けられる可能性もある。例えば、コンピューティングシステム１０２は、ジェスチャが特定のユーザによっておよび／または特定の位置で実行されると判定し、判定されたユーザおよび／または位置に基づいてジェスチャを制御デバイスに関連付けることができる。
【００１２】
[0017]  したがって、マルチユーザ環境において、ゲームのプレイヤー１１２などの第１のユーザが、制御デバイス１０４および制御デバイス１０９を介して入力を与えることができる一方、ゲームのプレイヤー１１４などの第２のユーザは、制御デバイス１０８を介して入力を与える。各制御デバイスをそれぞれのユーザと関連付けることによって、コンピューティングシステム１０２は、マルチプレイヤーゲームエクスペリエンスを提供し得る。例えば、制御デバイス１０４および／または制御デバイス１０９によって与えられたユーザ入力が、第１のプレイヤーのリプレゼンテーション又は表現（player representation）１３０に適用され、制御デバイス１０８によって与えられたユーザ入力が、第２のプレイヤーのリプレゼンテーション１３２に適用される。同様に、第１のプレイヤーのリプレゼンテーションに関連する音声が、制御デバイス１０９のヘッドフォン１２６を対象とする一方、第２のプレイヤーのリプレゼンテーションに関連する音声は、ディスプレイデバイス１２４のスピーカおよび／または別の好適なオーディオデバイスを対象とすることができる。
【００１３】
[0018]  図２は、本開示の実施形態による、オブジェクトを対象に関連付ける例示的な方法２００を示す。方法２００は、図１のコンピューティングシステム１０２などのコンピューティングシステムによって実行され得る。２０２において、方法２００は、深度カメラから１つまたは複数の深度画像を受信することを含む。例えば、コンピューティングシステム１０２が、図１の深度カメラ１１０から深度画像を受信する。一部の実施形態において、コンピューティングシステム１０２は、赤外線信号を検出するための赤外線センサーを含む。そのような実施形態において、コンピューティングシステムは、２０２において１つまたは複数の深度画像を受信する代わりに、または２０２において１つまたは複数の深度画像を受信することに加えて、赤外線信号から１つまたは複数の赤外線画像を受信する。追加的または代替的な実施形態において、コンピューティングシステムは、単独のまたは赤外線センサーと組み合わされた可視光（例えば、RGB）カメラ、ヒートマップ、および／またはその他の好適な画像のソースからの２次元画像を受信する可能性がある。
【００１４】
[0019]  ２０４において、方法２００は、深度画像によってイメージされた対象を特定することを含む。一部の筋書きでは、対象は、図１のゲームのプレイヤー１１２のような人間の対象である。一部の筋書きでは、対象は、図１のテーブル１１６ならびに／または制御デバイス１０４、１０６、１０８、および／もしくは１０９のような無生物の対象である可能性がある。コンピューティングシステムが赤外線センサーを含む実施形態に関しては、上で検討されたように、コンピューティングシステムが、赤外線画像によってイメージされた対象を特定し得る。例えば、コンピューティングシステムは、オブジェクト、ビーコン、および／または対象の位置を判定するために赤外線画像の各ピクセルの赤外線の反射性を分析し得る。一部の実施形態において、コンピューティングシステムは、赤外線センサーを利用して２次元位置を追跡および判定し、深度カメラを利用して２次元位置に関する深度値を計算し得る。コンピューティングシステムは、本開示の範囲を逸脱することなく、実質的に任意の種類の電磁的な情報を分析してオブジェクト、ビーコン、および／または対象の位置を判定し得る。
【００１５】
[0020]  人間の対象の場合、特定は、特定の個人に固有である可能性がある。言い換えると、特定の人の識別情報が、特定され得る。例えば、図１のコンピューティングシステム１０２が、ゲームのプレイヤー１１２を「Ｊｏｈｎ」であると特定する可能性があり、「Ｊｏｈｎ」は、コンピューティングシステム１０２のストレージマシンおよび／またはデータベースにローカルでおよび／またはリモートで記憶されたユーザプロファイルによって記述される可能性がある。ユーザプロファイルは、仮想的な骨格データ、顔認識データ、オーディオパラメータなどを含むがこれらに限定されない、ゲームのプレイヤーを特定するための任意の好適な情報を含み得る。ユーザプロファイルは、ローカルに保存される、および／またはインターネットなどのネットワークを介してアクセスされる可能性がある。その他の場合、特定は、特定の個人に固有でない。例えば、図１のコンピューティングシステム１０２が、ゲームのプレイヤー１１２をいかなるその他のゲームのプレイヤーとも区別せずにゲームのプレイヤー１１２を特定し、追跡し得る。
【００１６】
[0021]  一部の実施形態においては、コンピューティングシステムが、ゲームのプレイヤーを直接特定することなく、ゲームのプレイヤーをその他のゲームのプレイヤーと区別し得る。例えば、図１のコンピューティングシステム１０２は、ゲームのプレイヤーを特定のユーザプロファイルに結びつけることなく、以下で詳細に説明される顔認識または任意のその他の特定技法を実行し得る。特定は、利用された入力メカニズムに関係なく、ゲームのプレイヤーによって与えられた入力が特定のリプレゼンテーションに与えられるように、ゲームのプレイヤーをコンピューティングシステムのアプリケーションおよび／またはその他のコンテキスト内の特定のリプレゼンテーションに関連付けるために利用され得る。例えば、ゲームのプレイヤーは、ゲームの特定のキャラクターに関連する入力を与えながら、顔認識によって特定され得る。その後は、たとえゲームのプレイヤーが異なるコントローラなどの異なる入力デバイスを利用するとしても、ゲームのプレイヤーによって与えられる入力は、特定のキャラクターに関連付けられ得る。
【００１７】
[0022]  ２０６で示されるように、任意選択により人間の対象を特定することは、仮想的な骨格によって人間の対象をモデリングすることを含み得る。骨格のモデリングは、任意選択により、観測される対象の特定の識別情報を見つけるために使用され得る。例えば、骨格モデルによって検出された１つまたは複数の特徴（例えば、骨の長さ、骨の配置など）が、ルックアップテーブルまたはその他のデータベースでユーザの識別情報を調べるために使用され得る。そのようなモデリングが、図３を参照してより詳細に説明される。
【００１８】
[0023]  図３は、深度分析システムの単純化された骨格追跡パイプライン３００を図式的に示す。説明を簡単にするために、骨格追跡パイプライン３００が、図１のコンピューティングシステム１０２を参照して説明される。しかし、骨格追跡パイプライン３００は、本開示の範囲を逸脱することなく任意の好適なコンピューティングシステムで実装され得る。さらに、骨格追跡パイプライン３００とは異なる骨格追跡パイプラインが、本開示の範囲を逸脱することなく使用され得る。
【００１９】
[0024]  ３０２において、図３は、図１のゲームのプレイヤー１１２を、図１の深度カメラ１１０などの深度カメラの観点から示す。深度カメラ１１０などの深度カメラは、ゲームのプレイヤー１１２などの人間の対象を観測するように構成される１つまたは複数のセンサーを含み得る。深度カメラは、制御デバイス１０４などの制御デバイスから発せられるビーコン３０４を観測することができる。例えば、ビーコン３０４は、可視光ビーコンおよび／または赤外線ビーコンなどの光ビーコンを含み得る。
【００２０】
[0025]  ３０６において、図３は、深度カメラ１１０などの深度カメラによって収集された観測データの概略的表現３０８を示す。収集される観測データの種類は、深度カメラに含まれるセンサーの数および種類に応じて変わる。
【００２１】
[0026]  深度カメラは、深度カメラの各ピクセルに関して、深度カメラに対する観測されるシーン内の表面の深度を判定し得る。図３は、深度カメラ１１０のＤＰｉｘｅｌ［ｖ，ｈ］に関する観測された３次元ｘ／ｙ／ｚ座標３１０を概略的に示す。同様の３次元ｘ／ｙ／ｚ座標が、深度カメラのあらゆるピクセルに関して記録され得る。ピクセルのすべてに関する３次元ｘ／ｙ／ｚ座標は、集合的に、深度マップを構成する。３次元ｘ／ｙ／ｚ座標は、本開示の範囲を逸脱することなく任意の好適な方法で判定され得る。
【００２２】
[0027]  可視光カメラが、可視光カメラの各ピクセルに関して、１つまたは複数の光チャネル（例えば、赤、緑、青、グレースケールなど）関する、観測されるシーン内の表面の相対的な光の強度を判定し得る。図３は、深度カメラ１１０の可視光カメラのＶ−ＬＰｉｘｅｌ［ｖ，ｈ］に関する観測された赤／緑／青色値３１２を概略的に示す。同様の赤／緑／青色値が、可視光カメラのあらゆるピクセルに関して記録され得る。ピクセルのすべてに関する赤／緑／青色値は、集合的に、デジタルカラー画像を構成する。赤／緑／青色値は、本開示の範囲を逸脱することなく任意の好適な方法で判定され得る。
【００２３】
[0028]  深度カメラおよび可視光カメラは同じ解像度を有する可能性があるが、これは必要ではない。カメラが同じ解像度であろうと異なる解像度であろうと、可視光カメラのピクセルは、深度カメラのピクセルに正確に位置合わせされ得る。このようにして、色情報と深度情報との両方が、可視光カメラおよび深度カメラからの正確に位置合わせされたピクセル（例えば、V-LPixel[v,h]およびDPixel[v,h]）を考慮することによって、観測されるシーンのそれぞれの部分に関して判定され得る。
【００２４】
[0029]  ３１６で示されるように、ビーコン３０４は、深度カメラによって撮像される周りのオブジェクトからビーコンを観測データが明確に区別するように構成され得る。例えば、ビーコン３０４は、制御デバイス１０４によって発せられるビーコンパターンにしたがって構成される一連の白色のまたは明るいピクセルとして観測データによって表される赤外線ビーコンを含み得る。
【００２５】
[0030]  １つまたは複数のマイクロフォンが、観測される人間の対象および／またはその他のソースから来る指向性のおよび／または無指向性の音を判定することができる。図３は、制御デバイス１０９のマイクロフォン１１８などのマイクロフォンによって記録されたオーディオデータ３１４を概略的に示す。そのようなオーディオデータは、本開示の範囲を逸脱することなく任意の好適な方法で判定され得る。音源の位置特定が、光ビーコンの代わりに制御デバイスが音声ビーコンを生成する場合に制御デバイスを発見し、および／または制御デバイスの位置を特定するために使用される可能性もある。
【００２６】
[0031]  収集されるデータは、深度カメラによって撮像されたあらゆるピクセルに関する３次元ｘ／ｙ／ｚ座標、可視光カメラによって撮像されたあらゆるピクセルに関する赤／緑／青色値、および／または時間分解デジタルオーディオデータ（time resolved digital audio data）を含む１つまたは複数の測定基準を含むがこれらに限定されない（1つまたは複数の）実質的に任意の好適なデータ構造の形態をとり得る。図３は単一のフレームを示すが、人間の対象は（例えば、30フレーム毎秒で）連続的に観測され、モデリングされる可能性があることを理解されたい。したがって、データは、それぞれのそのような観測されたフレームに関して収集される可能性がある。収集されたデータは、１つもしくは複数のアプリケーションプログラミングインターフェース（API）を介して利用することができるようにされ、および／または以下で説明されるようにさらに分析され得る。
【００２７】
[0032]  深度カメラおよび／または協働するコンピューティングシステムが、任意選択により、深度マップを分析して、追跡されるべき人間の対象および／またはその他のターゲットを観測された深度マップ内のターゲットでない要素と区別する可能性がある。深度マップの各ピクセルは、そのピクセルを特定のターゲットの要素またはターゲットでない要素をイメージするものとして特定するプレイヤーインデックス３１８を割り振られ得る。例として、第１のプレイヤーに対応するピクセルは、１に等しいプレイヤーインデックスを割り振られる可能性があり、第２のプレイヤーに対応するピクセルは、２に等しいプレイヤーインデックスを割り振られる可能性があり、ターゲットのプレイヤーに対応しないピクセルは、０に等しいプレイヤーインデックスを割り振られる可能性がある。そのようなプレイヤーインデックスは、本開示の範囲を逸脱することなく任意の好適な方法で判定され、割り振られ、保存され得る。
【００２８】
[0033]  深度カメラおよび／または協働するコンピューティングシステムが、任意選択により、人間の対象の深度マップのピクセルを、それぞれのそのようなピクセルがイメージする可能性が高いその対象の体の部位を判定するためにさらに分析し得る。さまざまな異なる体の部位の割り振り技術が、特定のピクセルが人間の対象の体のどの部位をイメージする可能性が高いかを評価するために使用され得る。適切なプレイヤーインデックスを有する深度マップの各ピクセルが、体の部位インデックス３２０を割り振られ得る。体の部位インデックスは、ばらばらの識別子、信頼性の値、および／またはそのピクセルが撮像する可能性が高い体の１つの部位または複数の部位を示す体の部位の確率分布を含み得る。体の部位インデックスは、本開示の範囲を逸脱することなく任意の好適な方法で判定され、割り振られ、保存され得る。
【００２９】
[0034]  １つの非限定的な例として、機械学習が、各ピクセルに体の部位インデックスおよび／または体の部位の確率分布を割り振るために使用され得る。機械学習の手法は、知られている姿勢の既にトレーニングされた集合から学習された情報を用いて、人間の対象を分析する。言い換えると、監督された訓練フェーズの間に、さまざまな異なる人が、さまざまな異なる姿勢で観測され、人間の訓練者が、観測されたデータで異なる機械学習分類器をラベル付けするグランドトゥルース（ground truth）のアノテーションを提供する。観測されたデータおよびアノテーションは、入力（例えば、追跡デバイスからの観測データ）を所望の出力（例えば、関連するピクセルに関する体の部位インデックス）にマッピングする１つまたは複数の機械学習アルゴリズムを生成するために使用される。
【００３０】
[0035]  ３２２において、図３は、ゲームのプレイヤー１１２の機械が読み取ることができるリプレゼンテーションとして機能する仮想的な骨格３２４の概略的なリプレゼンテーションを示す。仮想的な骨格３２４は、２０個の仮想的な関節−頭、肩の中心、背骨、腰の中心、右肩、右肘、右手首、右手、左肩、左肘、左手首、左手、右腰、右膝、右足首、右足、左腰、左膝、左足首、および左足−を含む。この２０個の関節の仮想的な骨格は、非限定的な例として提供される。本開示による仮想的な骨格は、実質的に任意の数の関節を持ち得る。
【００３１】
[0036]  さまざまな骨格の関節は、人間の対象の実際の関節、人間の対象の体の部位の質量中心（centroid）、人間の対象の四肢の末端、および／または人間の対象と直接の解剖学的つながりのない点に対応する可能性がある。各関節は、少なくとも３つの自由度（例えば、ワールド空間（world space）のx、y、z）を持ち得る。したがって、仮想的な骨格のそれぞれの関節は、３次元位置によって定義され得る。例えば、左肩の仮想的な関節３２６は、ｘ座標位置３２８、ｙ座標位置３３０、およびｚ座標位置３３２によって定義される。関節の位置は、任意の好適な原点に対して定義され得る。一例として、深度カメラが、原点として働く可能性があり、すべての関節の位置が、深度カメラに対して定義される。関節は、本開示の範囲を逸脱することなく任意の好適な方法で３次元位置によって定義され得る。
【００３２】
[0037]  さまざまな技法が、それぞれの関節の３次元位置を判定するために使用され得る。骨格を当てはめる（フィッティングする）技法は、深度情報、色情報、体の部位の情報、ならびに／または既にトレーニングされた解剖学的および動力学的情報を用いて、人間の対象を詳細にモデル化する１つまたは複数の骨格を推定し得る。１つの非限定的な例として、上述の体の部位インデックスが、それぞれの骨格の関節の３次元位置を見つけるために使用され得る。
【００３３】
[0038]  関節の向きが、仮想的な関節のうちの１つまたは複数をさらに定義するために使用され得る。関節の位置が、関節と、関節の間に延びる仮想的な骨との位置を示すことができる一方、関節の向きは、そのような関節および仮想的な骨のそれぞれの位置におけるそれらの関節および仮想的な骨の向きを示すことができる。例として、手首の関節の向きが、所与の位置に置かれた手が上を向いているのかまたは下を向いているのかを示すために使用され得る。
【００３４】
[0039]  関節の向きは、例えば、１つまたは複数の正規化された３次元向きベクトルで符号化され得る。（1つまたは複数の）向きベクトルは、追跡デバイスまたは別の基準（例えば、別の関節）に対する関節の向きを与えることができる。さらに、（1つまたは複数の）向きベクトルは、ワールド空間座標系または別の好適な座標系（例えば、別の関節の座標系）によって定義され得る。関節の向きは、その他の手段によって符号化される可能性もある。非限定的な例として、４元数（quaternion）および／またはオイラー角が、関節の向きを符号化するために使用され得る。
【００３５】
[0040]  図３は、左肩の仮想的な関節３２６が正規直交向きベクトル３３４、３３６、および３３８によって定義される非限定的な例を示す。その他の実施形態においては、単一の向きベクトルが、関節の向きを定義するために使用され得る。（1つまたは複数の）向きベクトルは、本開示の範囲を逸脱することなく任意の好適な方法で計算され得る。
【００３６】
[0041]  関節の位置、向き、および／またはその他の情報は、（1つまたは複数の）任意の好適なデータ構造で符号化され得る。さらに、任意の特定の関節に関連する位置、向き、および／またはその他のパラメータは、１つまたは複数のＡＰＩを介して利用することができるようにされ得る。
【００３７】
[0042]  図３に見られるように、仮想的な骨格３２４は、任意選択により、複数の仮想的な骨（例えば、左前腕骨３４０）を含み得る。さまざまな骨格の骨が、１つの骨格の関節から別の骨格の関節に延びる可能性があり、人間の対象の骨および／または四肢の実際の骨、四肢、または部分に対応する可能性がある。本明細書において検討される関節の向きが、これらの骨に適用され得る。例えば、肘の向きが、前腕の向きを定義するために使用され得る。
【００３８】
[0043]  仮想的な骨格は、骨格の各要素に関連する値（例えば、関節および／または骨の相対的な位置）を特定の人間の対象に関する既知の仮想的な骨格の値と比較することによって人間の対象を特定するために使用され得る。例えば、ゲームのプレイヤーが、撮像される（imaged）可能性があり、そのプレイヤーに関連する仮想的な骨格が、ルックアップテーブルに記憶される可能性がある。その後、ゲームのプレイヤーが撮像されるとき、生成された仮想的な骨格が、記憶された仮想的な骨格と比較され得る。例えば、コンピューティングシステムは、仮想的な骨格のサイズが減少する順に、父親、母親、息子、および娘を含む家族の各メンバーに関するユーザプロファイルを含む。特定のユーザを特定し、そのユーザに関連するプロファイルを選択するために、ユーザの仮想的な骨格のサイズが、それぞれのユーザプロファイルに関連する仮想的な骨格のサイズと比較され得る。
【００３９】
[0044]  一部の実施形態においては、仮想的な骨格が、３４２で表されるようなオブジェクトおよび／またはビーコン３０４などのビーコンの位置をゲームのプレイヤーの位置と比較するために使用され得る。例えば、３４２で表されるようなビーコン３０４の位置は、ビーコンの近くの撮像された表面（imaged surface）に基づいて判定され得る。したがって、コントローラを表す撮像された表面が、検出されたビーコンに関連する１つまたは複数の座標を判定するために使用され得る。ビーコンの位置を判定すると、ビーコン３０４または制御デバイス１０４の既知の位置の、仮想的な骨格３２４の手またはその他の関節との近さが、制御デバイスがゲームのプレイヤー１１２に関連付けられるかどうかを判定するために、分析され得る。ゲームのプレイヤーとの制御デバイスの関連付けについては、以下で図２を参照してさらに説明する。
【００４０】
[0045]  一部の実施形態においては、制御デバイスおよび／またはその他のオブジェクトの対象への関連付けが、対象に対する制御デバイスの好適なパラメータに基づいて実行される。例えば、ゲームのプレイヤーは、図１の環境１００などの環境の異なる位置に異なる制御デバイスを置く可能性がある。そして、ゲームのプレイヤーは、ジェスチャをするかまたはその他の方法でユーザ入力が関連付けられるべき特定の制御デバイスを示すことができる。したがって、制御デバイスは、たとえ別の対象が制御デバイスのより近くにあるとしても、対象のジェスチャに基づいて対象に関連付けられる。しかし、仮想的な骨格が、本開示の範囲から逸脱することなく追加的なおよび／または代替的な目的のために使用される可能性があることを理解されたい。
【００４１】
[0046]  再び図２に戻ると、２０８で示されるように、人間の対象を特定することは、任意選択により、顔認識を含むようにできる。例えば、顔認識アルゴリズムが、深度画像、生の赤外線画像、カラー画像、および／または可視光カメラからの画像に適用され得る。顔認識は、任意選択により、観測される対象の特定の識別情報を見つけるために使用され得る。例えば、顔認識によって検出された１つまたは複数の特徴（例えば、目の隔たり、目−目−口の三角形など）が、ルックアップテーブルまたはその他のデータベースでユーザの識別情報を調べるために使用され得る。必要とされる計算能力を少なくするために、顔認識のために分析される画像の部分が、図３の仮想的な骨格３２４などの仮想的な骨格の頭の関節の周りの領域に制限され得る。
【００４２】
[0047]  加えて、２１０で示されるように、人間の対象を特定することは、任意選択により、音声認識を含む可能性がある。例えば、オーディオ入力が、図１のマイクロフォン１１８などのマイクロフォンから受信される可能性があり、周波数、振幅、息継ぎのパターンなどのオーディオ入力に関連するパラメータが、ユーザを特定するために、分析され、および／またはユーザに関連する、ルックアップテーブルもしくはその他のデータベースに記憶されたオーディオパラメータと比較され得る。
【００４３】
[0048]  ２１２で示されるように、方法は、任意選択により、ビーコンを発することをオブジェクトに要求するメッセージを出力することを含む。例えば、図１のコンピューティングシステム１０２は、コンピューティングシステムが環境１００内の制御デバイスのそれぞれの位置を解明することができるように、制御デバイス１０４、１０６、および／または１０８のうちの１つまたは複数がビーコンを発することを１つまたは複数のＲＦ周波数によって要求し得る。一部の実施形態において、コンピューティングシステムは、オブジェクトが特定のビーコンを発することを要求し得る。例えば、コンピューティングシステム１０２は、各オブジェクトからの異なるビーコンを要求するメッセージを、各オブジェクトに個々に出力し得る。また、コンピューティングシステム１０２は、異なる時間に同じビーコンを発するために制御デバイスにタイムスライスを割り振る１つまたは複数のメッセージを出力し得る。同様に、コンピューティングシステム１０２は、システムが、そのシステムが観測するビーコンを検出し、ＲＦ、有線ケーブルなどの別の通信媒体を介してそのシステムが通信するオブジェクトと関連付けることを可能にする任意のその他の好適な一連のメッセージを出力することができる。追加的または代替的な実施形態において、コンピューティングシステム１０２は、ビーコンを発するようにオブジェクトに要求する、特定のオブジェクトを対象としない汎用的なメッセージを出力および／またはブロードキャストすることができる。
【００４４】
[0049]  ２１４で示されるように、方法２００は、１つまたは複数の深度画像および／または赤外線画像の中で、オブジェクトから発せられたビーコンを認識することを含む。ビーコンは、深度画像および／または赤外線画像内で任意の好適な方法で認識され得る。例えば、図３に示されるように、制御デバイス１０４からのビーコンは、３０８で概略的に示されるように、観測データ内で、深度カメラによって撮像された周りの要素から区別可能である符号３１６で示される明るい箇所（spot）として表され得る。ビーコンの１つまたは複数のパラメータが、第１のオブジェクトを特定し、複数の異なるオブジェクトから区別するために分析され得る。これらのパラメータは、ビーコンの強度、パターン、および／または周波数を含むがこれらに限定されないビーコンの実質的に任意の好適なパラメータを含み得る。パラメータは、１つまたは複数のオブジェクトおよびオブジェクトに関連する１つまたは複数のパラメータを含むルックアップテーブル内で第１のオブジェクトを見つけるために使用され得る。例えば、第１のオブジェクトは、第２のオブジェクトによって発せられるビーコンとは異なる１つまたは複数のパラメータを用いてビーコンを発することができる。オブジェクトは、追加的にまたは代替的に、時間および／または順序パラメータがオブジェクト間で異なり得るようにタイムスライス式におよび／または連続的にビーコンを発する可能性がある。
【００４５】
[0050]  ２１６で示されるように、方法２００は、３次元でのオブジェクトの位置を評価することを含む。例えば、図１のコンピューティングシステム１０２は、深度カメラ１１０からのピクセル情報を利用して環境１００内の制御デバイスのｘ、ｙ、およびｚ座標を判定することができる。オブジェクトの位置は、深度カメラ１１０、深度カメラ１１０によって撮像される対象、および／または任意のその他の好適な基準点の位置に対して相対的である可能性がある。一部の実施形態において、制御デバイスの位置を評価することは、深度画像および／もしくは赤外線画像内の制御デバイスを特定することを含む可能性があり、ならびに／または、経時的に制御デバイスの位置を追跡し、追跡された位置から制御ジェスチャを特定し解釈することを含む可能性がある。一部の実施形態においては、複数のビーコンが、コンピューティングシステムがコントローラの位置を計算することを可能にするために、制御デバイスの既知の位置で発せられ得る。ビーコンのうちの一部がセンサーから遮られる場合に備えて、追加的なビーコンが、冗長性（バックアップ）をさらに付け加える。例えば、ゲームのプレイヤーの指が、制御デバイスのビーコンのエミッタの位置に無意識に置かれるような場合に備えてのことである。
【００４６】
[0051]  方法２００は、２１８で示されるように、人間の対象との制御デバイスの近さに基づいて、オブジェクトを人間の対象に関連付けることをさらに含む。例えば、図１の制御デバイス１０４は、ゲームのプレイヤーと制御デバイスの距離が近い関係にあるため、ゲームのプレイヤー１１２に関連付けられ得る。反対に、制御デバイス１０６は、制御デバイス１０６とゲームのプレイヤー１１２および１１４との遠さにより、ゲームのプレイヤー１１２または１１４のどちらとも関連付けられ得ない。その代わりに、制御デバイス１０６は、テーブル１１６に関連付けられ得る。近さは、任意の好適な閾値に基づいて判定され得る。
【００４７】
[0052]  一部の実施形態において、オブジェクトの位置は、人間の対象の特定の部位の位置と比較される可能性がある。２２０で示されるように、オブジェクトを人間の対象に関連付ける際に、任意選択により、手の関節の位置を分析するようにしてもよい。図３に少し目を向けると、仮想的な骨格３２４の手の関節と（例えば、方法２００の２１６で判定される）制御デバイス１０４の位置との間の距離が、距離の閾値と比較するようにできる。手の関節が２２０で分析されるが、仮想的な骨格の実質的にいかなる好適な関節および／または部分が、その関節および／または部分とオブジェクトとの間の距離を判定するために分析され得ることが理解される。一部の実施形態においては、オブジェクトが人間の対象の手の関節の閾値の距離以内にある場合、そのオブジェクトは、人間の対象と関連付けられ得る。しかし、オブジェクトと手の関節との間の距離が閾値の距離を超える場合、そのオブジェクトは、人間の対象に関連付けられ得ない。完全な骨格の追跡をしない一部の実施形態においては、水平軸に沿った頭／顔およびコントローラの位置が、関連付けを決定するために使用され得る。
【００４８】
[0053]  制御デバイスを人間の対象に関連付けることは、仮想的な骨格のジェスチャ入力および制御デバイスの制御入力を同じソースに帰することを含み得る。例えば、そのような関連付けは、ユーザが複数のデバイスを利用して複数の種類のユーザ入力を与え、単一のプレイヤーのリプレゼンテーションを制御することを可能にする。オブジェクトを人間の対象に関連付けることは、追加的にまたは代替的に、人間の対象の設定プロファイルをオブジェクトによって制御されるアプリケーションに適用することを含み得る。一部の実施形態において、オブジェクトを人間の対象に関連付けることは、オブジェクトによって制御されるアプリケーションを介してユーザに固有のコンテンツを提示することを含み得る。例えば、ユーザに固有のコンテンツは、ゲームコンテンツ、メディアの番組、広告、および／または人間の対象のために選択された任意の好適なコンテンツである。一部の実施形態において、オブジェクトの関連付けは、１人のユーザから別のユーザにオブジェクトを渡すときに変わり得る。例えば、関連付けは、オブジェクトに最も近い、および／またはオブジェクトに入力を与えているユーザに基づいて、動的に更新し得る。
【００４９】
[0054]  制御デバイスまたはその他のオブジェクトが、コンピューティングシステムとの結びつけ操作を実行するためのビーコンを発する可能性もある。例えば、図１のコンピューティングシステム１０２は、結びつけ操作が正常に完了するまで制御デバイス１０６から入力を受け付けない可能性がある。本明細書において使用されるとき、用語「結びつけられていない」は、特定のコンピューティングシステムに結びつけられていないオブジェクト、および／または、いかなるコンピューティングシステムとも結びつけられていないオブジェクトを指すようにできる。
【００５０】
[0055]  図４は、コンピューティングシステムで結びつけ操作を実行する方法４００を示す。４０２において、方法４００は、任意選択により、オブジェクトを検出することを含む。オブジェクトは、任意の好適な方法でコンピューティングシステムによって検出され得る。例えば、図１のコンピューティングシステム１０２は、深度カメラ１１０から受信された１つまたは複数の深度画像内の制御デバイス１０６などのオブジェクトを検出し得る。追加的にまたは代替的に、コンピューティングシステムは、光ビーコン、音声ビーコン、ＲＦビーコンなどを含むがこれらに限定されない、オブジェクトによって発せられるビーコンに基づいてオブジェクトを検出し得る。一部の実施形態において、オブジェクトは、以下で説明される４０６で検出され得る。
【００５１】
[0056]  ４０４で示されるように、方法４００は、オブジェクトがコンピューティングシステムに結びつけられているかどうかを判定することを含む。例えば、コンピューティングシステムは、オブジェクトを特定し、特定されたオブジェクトをコンピューティングシステムに結びつけられているかどうかを判定する。一部の実施形態において、コンピューティングシステムは、４０６で検出されるビーコンなどの、オブジェクトによって発せられたビーコンに基づいて、オブジェクトがコンピューティングシステムに結びつけられているかどうかを判定する。例えば、コンピューティングシステムに結びつけられていない制御デバイスが、ビーコンを発する可能性があり、および／または結びつけられていない状態を告知するための特定のビーコンを発する可能性がある。したがって、オブジェクトがビーコンを発する、および／または特定のビーコンを発する場合、コンピューティングシステムは、オブジェクトがコンピューティングシステムに結びつけられていないと判定し得る。反対に、オブジェクトがビーコンを発しない場合、オブジェクトは、コンピューティングシステムに結びつけられていると判定され得る。オブジェクトがコンピューティングシステムに結びつけられている場合、結びつけ操作は不要であり、したがって、方法は、方法４００の初めに戻る。
【００５２】
[0057]  オブジェクトが結びつけられていないと判定される場合、方法４００は、方法がオブジェクトから発せられた光ビーコンを検出することを含む４０６に進む。例えば、図１の制御デバイス１０６などのオブジェクトは、制御デバイスがコンピューティングシステム１０２に結びつけられていない場合、状態を変更することに応じて光ビーコンを自動的に発することができる。状態を変更することは、非アクティブ状態をアクティブ状態に変更することを含み得る。例えば、非アクティブ状態からアクティブ状態への変更は、電源オフ状態から電源オン状態への変更を含み得る。一部の実施形態において、非アクティブ状態からアクティブ状態への変更は、追加的にまたは代替的に、ユーザによる制御デバイスとのインタラクションを検出した結果として実行され得る。インタラクションを検出することは、制御デバイスの制御要素の作動を検出すること、制御デバイスのセンサーからの信号を検出することを含み、および／または任意のその他の好適な方法で実行され得る。例えば、制御デバイス１０６は、ユーザが制御デバイス１０６をテーブル１１６から取り去るときに非アクティブ状態からアクティブ状態に変わり得る。
【００５３】
[0058]  コンピューティングシステムは、上述の方法と同様の方法で光ビーコンを検出することができる。例えば、コンピューティングシステムは、可視光カメラおよび／または深度カメラから受信された１つまたは複数の画像および／または深度画像で光ビーコンを認識し得る。一部の実施形態において、コンピューティングシステムは、オブジェクトから発せられる赤外線ビーコンを検出するための赤外線センサーおよび／または可視光ビーコンを検出するための可視光センサーを含み得る。例えば、深度カメラは、可視光をフィルタリングして取り除き、波長の特定の範囲を有する赤外線が赤外線センサーによって検出されることを可能にするために、赤外線センサーの前に赤外線通過フィルタを含み得る。したがって、オブジェクトは、そのオブジェクトが深度カメラによって検出され得るように、赤外線通過フィルタに合わせられた波長を有するビーコンを発することができる。
【００５４】
[0059]  ４０８で示されるように、方法４００は、オブジェクトをコンピューティングシステムに結びつけることを含む。例えば、コンピューティングシステムは、オブジェクトをコンピューティングシステムに結びつけるために、光ビーコンおよび／または結びつけられていないオブジェクトを検出すると自動的に結びつけモードに入ることができる。
【００５５】
[0060]  ４１０で示されるように、オブジェクトをコンピューティングシステムに結びつけることは、任意選択により、制御デバイスの識別情報を検証するためのハンドシェイク操作を実行することを含み得る。ハンドシェイク操作は、実質的に任意の好適な方法で実行され得る。一部の実施形態において、ハンドシェイク操作を実行することは、任意選択により、４１２で示されるように、特定のビーコンパターンの要求を送信することを含み得る。例えば、図１のコンピューティングシステム１０２は、特定のビーコンパターンを発する要求を制御デバイス１０６に送信し得る。要求は、制御デバイスから発せられる光信号の数、継続時間、および／または周波数を含むがこれらに限定されない任意の好適なパターンを特定し得る。また、制御デバイスは、特定のビーコンを発するように個々に制御され得る複数の光源を含み得る。したがって、要求は、第１の光源が第２の光源とは異なるパターンを発するように要求され得るように、複数の光源のうちの１つまたは複数の光源に関する特定のビーコンパターンを特定し得る。要求された１つのビーコンパターンおよび／または複数のビーコンパターンが深度画像の分析によるなどしてコンピューティングシステムによって検出される場合、コンピューティングシステムは、制御デバイスの位置を特定および／または判定することができる。
【００５６】
[0061]  ハンドシェイク操作を実行することは、追加的にまたは代替的に、４１４で示されるように、オブジェクトに関連する識別子の要求を送信することを含み得る。例えば、図１のコンピューティングシステム１０２は、制御デバイス１０６に関連する識別子の要求を制御デバイス１０６に送信し得る。制御デバイス１０６に関する識別子を受信すると、コンピューティングシステム１０２は、制御デバイスを認証することができ、制御デバイスをコンピューティングシステムに結びつけることができる。一部の実施形態において、コンピューティングシステム１０２は、ハンドシェイク操作を完了すると、オブジェクトを結びつけるためにオブジェクトに一意識別子を割り振ることができる。オブジェクトをコンピューティングシステムに結びつけることは、ストレージマシンおよび／またはデータベースにオブジェクトに関する識別子を記憶することを含むがこれに限定されない任意の好適な方法で実行され得る。
【００５７】
[0062]  図５は、結びつけ操作（binding operation）中の図１のコンピューティングシステム１０２と２つの制御デバイスとの間の例示的な通信５００を示す。通信は、任意選択により、５０２において、制御デバイスＡがビーコンを発する要求をコンピューティングシステム１０２が送信することで始まる。それに応答して、または独立して、制御デバイスＡは、５０４において、ビーコンを発することができる。例えば、コンピューティングシステム１０２は、制御デバイスが結びつけられていない状態にあるとき、その制御デバイスに要求を送信することができないように構成される。したがって、制御デバイスＡは、制御デバイスが結びつけられていない状態にあるとき、コンピューティングシステムから要求を受信せずに、５０４においてビーコンを発することができる。５０４において発せられるビーコンは、制御デバイスの結びつけ要求および／または結びつけモードに関連する特定のビーコンパターンにすることができる。同様に、制御デバイスＢは、５０６においてビーコンを発することができる。制御デバイスＡまたは制御デバイスＢのどちらかからビーコンを受信することに応じて、コンピューティングシステム１０２は、制御デバイスＡおよび／または制御デバイスＢを結びつけるために、５０７において結びつけモードに入ることができる。
【００５８】
[0063]  一部の実施形態において、結びつけは、コンピューティングシステムが制御デバイスにいかなるコマンドまたは要求を与えるよりも前に行われる可能性がある。例えば、コンピューティングシステム１０２は、５０４において発せられたビーコンを受信すると、制御デバイスＡと自動的に結びつくことができる。追加的または代替的な実施形態において、コンピューティングシステム１０２は、５０８において、制御デバイスからの特定のビーコンパターンを要求することによって、ハンドシェイク操作を開始することができる。例えば、コンピューティングシステム１０２は、制御デバイスＡが通信し得るＲＦチャネルを決定またはネゴシエーションすることができる。一部の実施形態において、５０４および／または５０６において発せられるビーコンは、５０８において要求されたビーコンとは異なる種類のビーコンである可能性がある。例えば、５０４において発せられるビーコンが赤外線ビーコンである可能性がある一方、５０８において要求されるビーコンはＲＦ信号である可能性がある。一部の実施形態において、ＲＦチャネルは、制御デバイスＡに固有である可能性がある。そして、コンピューティングシステム１０２は、特に、チャネルを介して特定のビーコンパターンの要求を送信することによって制御デバイスＡに呼びかけることができる。それに応じて、制御デバイスＡは、５１０において、特定のビーコンパターンを発する。制御デバイスＡによって発せられたビーコンパターンが要求された特定のビーコンパターンと同じであり、および／または、要求された特定のビーコンパターンの閾値以内であることを確認すると、コンピューティングシステム１０２は、制御デバイスＡを結びつけ、および／または、既に実行された結びつけ操作を確認もしくは確定することができる。例えば、５１２で示されるように、コンピューティングシステム１０２は、制御デバイスＡを結びつけるために、制御デバイスＡに第１のユニーク（一意）ＩＤを割り振り、送信し、および／またはユニークＩＤを記憶することができる。結びつけると、制御デバイスＡおよびコンピューティングシステム１０２は、特定のＲＦチャネルを利用するなど任意の好適な方法で互いに自由に通信することができる。言い換えると、結びつけ操作が実行されると、コンピューティングシステム１０２は、制御デバイスＡがコマンドを発行することを可能にし得る。
【００５９】
[0064]  ５１４で示されるように、コンピューティングシステム１０２は、制御デバイスＢが特定のビーコンパターンを発することを要求することもできる。一部の実施形態において、特定のパターンは、５０８において要求された特定のビーコンパターンと同じである可能性があるが、その他の実施形態においては、特定のパターンは、５０８において要求された特定のビーコンパターンと異なる可能性がある。例えば、特定のパターンが同じである場合、コンピューティングシステムは、制御デバイスＡから受信されるパターンを制御デバイスＢから受信されるパターンと区別するために、時間の値をパターンに関連付けることができる。反対に、特定のパターンが各制御デバイスに関して異なる場合、コンピューティングシステムは、同じ時間に受信された２つのビーコンを区別することができる。５１４において送信された要求の後、制御デバイスＢは、５１６において、要求されていないパターンを有するビーコンを発することができる。例えば、５１４において送信される要求が制御デバイスＢを対象とする可能性があるが、制御デバイスＢは、要求を受信しない可能性がある。したがって、制御デバイスＢは、５１４において要求されたパターンと異なり、および／または、５１４において要求されたパターンの同様の閾値から外れたパターンを有するビーコンを発し得る。それに応じて、コンピューティングシステム１０２は、信頼できる通信が制御デバイスＢと確立され得ないと判定する可能性があり、したがって、制御デバイスＢを結びつけない可能性がある。一部の実施形態において、コンピューティングシステム１０２は、特定のビーコンパターンの別の要求を送信することによって、制御デバイスＢと結びつくことを再び試みる。追加的または代替的な実施形態において、コンピューティングシステム１０２は、閾値を超える制御デバイスＢからのいくつかのビーコンを受信した後、制御デバイスＢと自動的に結びつくことができる。一部の実施形態において、複数のビーコンの閾値の数は、コンピューティングシステム１０２が制御デバイスまたはその他のオブジェクトによって発せられたビーコンを検出すると直ちに制御デバイスまたはその他のオブジェクトを結びつけるように、１である可能性がある。
【００６０】
[0065]  一部の実施形態において、本明細書に記載の方法およびプロセスは、１つまたは複数のコンピューティングデバイスのコンピューティングシステムに関連する可能性がある。特に、そのような方法およびプロセスは、コンピュータアプリケーションプログラムもしくはサービス、アプリケーションプログラミングインターフェース（API）、ライブラリ、および／またはその他のコンピュータプログラム製品として実装され得る。
【００６１】
[0066]  図６は、上述の方法およびプロセスのうちの１つまたは複数を実施することができるコンピューティングシステム６００の非限定的な実施形態を概略的に示す。コンピューティングシステム６００は、単純化された形態で示される。コンピューティングシステム６００は、１つまたは複数のゲームコンソール、パーソナルコンピュータ、サーバコンピュータ、タブレットコンピュータ、ホームエンターテインメントコンピュータ、ネットワークコンピューティングデバイス、モバイルコンピューティングデバイス、モバイル通信デバイス（例えば、スマートフォン）、および／またはその他のコンピューティングデバイスの形態をとり得る。例えば、コンピューティングシステム６００は、図１のコンピューティングシステム１０２を含み得る。
【００６２】
[0067]  コンピューティングシステム６００は、論理マシン６０２およびストレージマシン６０４を含む。コンピューティングシステム６００は、任意選択により、ディスプレイサブシステム６０６、入力サブシステム６０８、通信サブシステム６１０、および／または図６に図示されていないその他の構成要素を含み得る。
【００６３】
[0068]  論理マシン６０２は、命令を実行するように構成された１つまたは複数の物理的なデバイスを含む。例えば、論理マシンは、１つまたは複数のアプリケーション、サービス、プログラム、ルーチン、ライブラリ、オブジェクト、コンポーネント、データ構造、またはその他の論理的構造の一部である命令を実行するように構成され得る。そのような命令は、タスクを実行するか、データ型を実装するか、１つもしくは複数の構成要素の状態を変えるか、技術的効果を実現するか、またはその他の方法で所望の結果を達成するように実装され得る。
【００６４】
[0069]  論理マシンは、ソフトウェア命令を実行するように構成された１つまたは複数のプロセッサを含み得る。追加的にまたは代替的に、論理マシンは、ハードウェアまたはファームウェア命令を実行するように構成された１つまたは複数のハードウェアまたはファームウェア論理マシンを含み得る。論理マシンのプロセッサは、シングルコアまたはマルチコアである可能性があり、それらのプロセッサで実行される命令は、逐次、並列、および／または分散処理のために構成され得る。論理マシンの個々の構成要素は、任意選択により、離れて配置され、および／または協調した処理のために構成され得る２つ以上の別個のデバイスの間に分散される可能性がある。論理マシンの態様は、クラウドコンピューティング構成で構成された、遠隔でアクセス可能であり、ネットワーク化されたコンピューティングデバイスによって仮想化され、実行され得る。
【００６５】
[0070]  ストレージマシン６０４は、本明細書において説明された方法およびプロセスを実装するために論理マシンによって実行可能な命令を保持するように構成された１つまたは複数の物理的なデバイスを含む。例えば、論理マシン６０２は、深度カメラ１１０のインターフェースなどの深度カメラインターフェースおよびストレージマシン６０４と有効な通信（operative communication）をし得る。そのような方法およびプロセスが実装されるとき、ストレージマシン６０４の状態は、例えば異なるデータを保持するために、変えられる可能性がある。
【００６６】
[0071]  ストレージマシン６０４は、取り外し可能なおよび／または内蔵のデバイスを含み得る。ストレージマシン６０４は、とりわけ、光学式メモリ（例えば、CD、DVD、HD-DVD、ブルーレイディスクなど）、半導体メモリ（例えば、RAM、EPROM、EEPROMなど）、および／または磁気式メモリ（例えば、ハードディスクドライブ、フロッピーディスクドライブ、テープドライブ、MRAMなど）を含み得る。ストレージマシン６０４は、揮発性、不揮発性、ダイナミック、スタティック、読み出し／書き込み、読み出し専用、ランダムアクセス、逐次アクセス、位置アドレス指定可能（location-addressable）、ファイルアドレス指定可能（file-addressable）、および／またはコンテンツアドレス指定可能（content-addressable）デバイスを含み得る。
【００６７】
[0072]  ストレージマシン６０４が１つまたは複数の物理的なデバイスを含むことは、理解されるであろう。しかし、本明細書において説明された命令の態様は、代替的に、有限の継続時間の間物理的なデバイスによって保持されない通信媒体（例えば、電磁的な信号、光学的な信号など）によって伝搬され得る。
【００６８】
[0073]  論理マシン６０２およびストレージマシン６０４の態様は、１つまたは複数のハードウェア論理構成要素に一緒に統合され得る。そのようなハードウェア論理構成要素は、例えば、フィールドプログラマブルゲートアレイ（FPGA）、特定プログラムおよび特定用途向け集積回路（PASIC/ASIC）、プログラムおよび特定用途向け標準製品（PSSP/ASSP）、システムオンチップ（SOC）、ならびにコンプレックスプログラマブルロジックデバイス（CPLD: complex programmable logic device）を含み得る。
【００６９】
[0074]  ディスプレイサブシステム６０６は、含まれるとき、ストレージマシン６０４によって保持されるデータの視覚的リプレゼンテーションを提示するために使用され得る。この視覚的リプレゼンテーションは、グラフィカルユーザインターフェース（GUI）の形態をとり得る。本明細書において説明された方法およびプロセスがストレージマシンによって保持されるデータを変更し、したがって、ストレージマシンの状態を変えるとき、ディスプレイサブシステム６０６の状態は、基礎を成すデータの変更を視覚的に表すために同様に変えられ得る。ディスプレイサブシステム６０６は、実質的に任意の種類のテクノロジーを利用する１つまたは複数のディスプレイデバイスを含み得る。そのようなディスプレイデバイスは、共有された筐体で論理マシン６０２および／またはストレージマシン６０４と組み合わされる可能性があり、またはそのようなディスプレイデバイスは、周辺ディスプレイデバイスである可能性がある。例えば、ディスプレイサブシステム６０６は、図１のディスプレイデバイス１２４を含み得る。
【００７０】
[0075]  入力サブシステム６０８は、含まれるとき、キーボード、マウス、タッチスクリーン、マイクロフォン、またはゲームのコントローラなどの１つまたは複数のユーザ入力デバイスを含むか、またはそのような１つまたは複数のユーザ入力デバイスとインターフェースを取ることができる。例えば、入力サブシステムは、図１の制御デバイス１０４、１０６、１０８、および／もしくは１０９を含むか、または図１の制御デバイス１０４、１０６、１０８、および／もしくは１０９とインターフェースを取ることができる。一部の実施形態において、入力サブシステムは、選択された自然なユーザ入力（NUI: natural user input）構成要素を含むか、または選択されたＮＵＩ構成要素とインターフェースを取ることができる。そのような構成要素は、一体化されるかまたは周辺機器である可能性があり、入力アクションの変換および／または処理は、オンボードまたはオフボードで処理される可能性がある。例示的なＮＵＩ構成要素は、発話および／または音声認識のためのマイクロフォン、マシンビジョンおよび／またはジェスチャ認識のための赤外線、カラー、立体、および／または深度カメラ、動き検出および／または意図認識のためのヘッドトラッカー、アイトラッカー、加速度計、および／またはジャイロスコープ、ならびに脳の活動を評価するための電界感知構成要素を含み得る。
【００７１】
[0076]  通信サブシステム６１０は、含まれるとき、コンピューティングシステム６００を１つまたは複数のその他のコンピューティングデバイスと通信可能なように結合するように構成され得る。通信サブシステム６１０は、１つまたは複数の異なる通信プロトコルに対応した有線および／または無線通信デバイスを含み得る。非限定的な例として、通信サブシステムは、無線電話ネットワーク、または有線もしくは無線ローカルエリアもしくは広域ネットワークを介した通信のために構成され得る。一部の実施形態において、通信サブシステムは、コンピューティングシステム６００がインターネットなどのネットワークを介してその他のデバイスにおよび／またはその他のデバイスからメッセージを送信および／または受信することを可能にし得る。
【００７２】
[0077]  本明細書において説明された構成および／または手法は、本質的に例示的であることと、これらの特定の実施形態または例は、多くの変更があり得るので、限定的な意味で考慮されるべきでないこととが、理解されるであろう。本明細書において説明された特定のルーチンまたは方法は、任意の数の処理方針のうちの１つまたは複数を示す可能性がある。したがって、図示されおよび／または説明されたさまざまな行為は、図示されおよび／もしくは説明された順番で、その他の順番で、並列に実行される可能性があり、または省略される可能性がある。同様に、上述のプロセスの順序は、変更され得る。
【００７３】
[0078]  本開示の対象は、さまざまなプロセス、システム、および構成、ならびに本明細書において開示されたその他の特徴、機能、行為、および／または属性のすべての新規性のある明白でない組み合わせおよび部分的な組み合わせと、これらのいずれかのおよびすべての均等物とを含む。
【図１】
2015536507.tif 000003
【図２】
2015536507.tif 000004
【図３】
2015536507.tif 000005
【図４】
2015536507.tif 000006
【図５】
2015536507.tif 000007
【図６】
2015536507.tif 000008
【国際調査報告】
2015536507.tif 000009
2015536507.tif 000010
2015536507.tif 000011