"コンピュータ装置のための入力装置であって、コンピュータが実行可能な命令を実行するコンピュータプロセッサを含み、前記命令は、a面上に形成された構造的に符号化されたパターンの少なくとも一部の画像をカメラから獲得する機能であって、前記構造的に符号化されたパターンは複数の要素を含み、各要素には前記面に関する前記要素の位置および向きを特定する情報が符号化されている機能と、b前記画像中の一またはそれ以上の要素の少なくとも一部を特定する機能と、c前記画像中の前記一またはそれ以上のパターン要素に符号化されている前記情報から、前記面に対する前記カメラの位置を決定する機能と、を前記コンピュータ装置に実現させることを特徴とする入力装置。前記構造的に符号化されたパターンは複数のセルを含み、各セルは、前記パターンに存在する他の全てのセル中の他の全ての要素と異なる一意的な要素を含むことを特徴とする請求項1に記載の装置。各要素は、前記面に垂直な軸に関して回転対称ではないことを特徴とする請求項1に記載の装置。前記コンピュータプロセッサは、前記パターンに対する前記カメラの位置の座標を決定することを特徴とする請求項1に記載の装置。前記コンピュータプロセッサは、前記パターンに対する前記カメラの角度方向を決定することを特徴とする請求項1に記載の装置。前記コンピュータプロセッサは、前記画像を前記パターンに表現されている参照データと比較することを特徴とする請求項1に記載の装置。前記コンピュータプロセッサは、前記カメラの位置をコンピュータプログラムへの入力として用いることを特徴とする請求項1に記載の装置。前記コンピュータプロセッサに接続するカメラをさらに含むことを特徴とする請求項1に記載の装置。前記カメラは、ユーザの足に取り付けるのに適合していることを特徴とする請求項8に記載の装置。前記カメラは、ユーザの手に取り付けるのに適合していることを特徴とする請求項8に記載の装置。前記コンピュータプロセッサは、前記カメラの位置をコンピュータプログラムへの入力として用いることを特徴とする請求項1に記載の装置。前記コンピュータプログラムはゲームプログラムであることを特徴とする請求項11に記載の装置。マットをさらに含み、前記構造的に符号化されたパターンは前記マット上に形成されていることを特徴とする請求項1に記載の装置。面上に形成された構造的に符号化されたパターンであって、前記構造的に符号化されたパターンは複数の要素を含み、各要素は前記面に関する前記要素の位置および向きを特定する情報が符号化されているパターンと、前記パターンの少なくとも一部の画像を獲得するよう動作するカメラと、前記画像中の一またはそれ以上の要素の少なくとも一部を特定し、前記画像中の前記一またはそれ以上のパターンに符号化されている前記情報から、前記面に対する前記カメラの位置を決定する前記カメラと接続するプロセッサユニットとを含むことを特徴とするコンピュータ装置のための入力装置。面上に形成された構造的に符号化されたパターンの少なくとも一部の画像をカメラを用いて獲得するステップであって、前記構造的に符号化されたパターンは複数の要素を含み、各要素は前記面に関する前記要素の位置および向きを特定する情報が符号化されているステップと、前記カメラと接続するプロセッサを用いて、前記画像中の一またはそれ以上の要素の少なくとも一部を特定するステップと、前記プロセッサを用いて、前記画像中の前記一またはそれ以上のパターンに符号化されている前記情報から、前記面に対する前記カメラの位置を決定するステップと、を含むことを特徴とするコンピュータプログラムへの入力を受信する方法。前記構造的に符号化されたパターンは複数のセルを含み、各セルは、前記パターンに存在する他の全てのセル中の他の全ての要素と異なる一意的な要素であることを特徴とする請求項15に記載の方法。各要素は、前記面に垂直な軸に関して回転対称ではないことを特徴とする請求項15に記載の方法。前記構造的に符号化されたパターンは、マット上に形成されていることを特徴とする請求項15に記載の方法。前記プロセッサは、前記パターンに対する前記カメラの位置の座標を決定することを特徴とする請求項15に記載の方法。前記プロセッサは、前記パターンに対する前記カメラの角度方向を決定することを特徴とする請求項15に記載の方法。前記プロセッサは、前記画像を前記パターンに表現されている参照データと比較することを特徴とする請求項15に記載の方法。前記カメラは、ユーザの足に取り付けるのに適合していることを特徴とする請求項15に記載の方法。前記カメラは、ユーザの手に取り付けるのに適合していることを特徴とする請求項15に記載の方法。前記カメラの位置をコンピュータプログラムへの入力として用いるステップをさらに含むことを特徴とする請求項15に記載の方法。前記コンピュータプログラムはゲームプログラムであることを特徴とする請求項24に記載の方法。コンピュータが実行可能な命令であって実行時に、コンピュータプログラムへの入力を受信する方法をコンピュータに実現させる命令を格納するコンピュータが読み込み可能な記録媒体であって、前記方法は、面上に形成された構造的に符号化されたパターンの少なくとも一部の画像をカメラを用いて獲得するステップであって、前記構造的に符号化されたパターンは複数の要素を含み、各要素は前記面に関する前記要素の位置および向きを特定する情報が符号化されているステップと、前記カメラと接続するプロセッサを用いて、前記画像中の一またはそれ以上の要素の少なくとも一部を特定するステップと、前記プロセッサを用いて、前記画像中の前記一またはそれ以上のパターンに符号化されている前記情報から、前記面に対する前記カメラの位置を決定するステップと、を含むことを特徴とするコンピュータが読み込み可能な記録媒体。ダンスパッドは基本的に、手ではなくて足で操作される押しボタンコントローラとして動作する。しかしながら、ダンスパッドはユーザの足の近接度は追跡しない。本発明はこのような文脈から生まれた。上記課題を解決するために、本発明のある態様は、コンピュータ装置のための入力装置である。この装置は、コンピュータが実行可能な命令を実行するコンピュータプロセッサを含む。ここで前記命令は、a面上に形成された構造的に符号化されたパターンの少なくとも一部の画像をカメラから獲得する機能であって、前記構造的に符号化されたパターンは複数の要素を含み、各要素には前記面に関する前記要素の位置および向きを特定する情報が符号化されている機能と、b前記画像中の一またはそれ以上の要素の少なくとも一部を特定する機能と、c前記画像中の前記一またはそれ以上のパターン要素に符号化されている前記情報から、前記面に対する前記カメラの位置を決定する機能と、を前記コンピュータ装置に実現させる。上記課題を解決するために、本発明の別の態様も、コンピュータ装置のための入力装置である。この装置は、面上に形成された構造的に符号化されたパターンであって、前記構造的に符号化されたパターンは複数の要素を含み、各要素は前記面に関する前記要素の位置および向きを特定する情報が符号化されているパターンと、前記パターンの少なくとも一部の画像を獲得するよう動作するカメラと、前記画像中の一またはそれ以上の要素の少なくとも一部を特定し、前記画像中の前記一またはそれ以上のパターンに符号化されている前記情報から、前記面に対する前記カメラの位置を決定する前記カメラと接続するプロセッサユニットとを含む。上記課題を解決するために、本発明の別の態様は、コンピュータプログラムへの入力を受信する方法である。この方法は、面上に形成された構造的に符号化されたパターンの少なくとも一部の画像をカメラを用いて獲得するステップであって、前記構造的に符号化されたパターンは複数の要素を含み、各要素は前記面に関する前記要素の位置および向きを特定する情報が符号化されているステップと、前記カメラと接続するプロセッサを用いて、前記画像中の一またはそれ以上の要素の少なくとも一部を特定するステップと、前記プロセッサを用いて、前記画像中の前記一またはそれ以上のパターンに符号化されている前記情報から、前記面に対する前記カメラの位置を決定するステップと、を含む。以下の詳細な説明には、説明のための多くの具体的な詳細事項が含まれるが、それらに対する多くの変更や修正も本発明の技術範囲に含まれることは、当業者であれば誰でも理解するであろう。したがって、以下に説明する本発明の例示的な実施の形態は、請求項に記載された発明の一般性をなんら損なうことなく、また限定も行うことなく記載されている。[前提技術]本発明の実施の形態は、本明細書においてパターンに基づくコンピュータビジョンと称される概念を利用する。本発明の実施の形態によれば、入力装置は、パターンに基づくコンピュータビジョンを利用する面に対するカメラの位置および/または動きを追跡することができる。構造的に符号化されたパターンは、ある面の上にプリントされている。その面に対するカメラの相対的な位置x,y,zおよび向き垂直角,回転角,および水平角を決定するために、カメラはパターンの一部を含むその面の画像を解析する。コンピュータビジョンシステムは、面に関するパターンの要素の位置を調整して画像内のパターンの要素を参照するために、リアルタイムで撮像した画像内にあるパターンの一部を解析することによって、カメラの位置および向きを追跡することができる。本発明の実施の形態によれば、構造的に符号化されたパターンサイバーコードcyber-codeと呼ばれることもある。をマットやその他の面上にプリントすることができる。カメラは、ユーザの各足の後ろやユーザの手のひらに装着することができる。[実施の形態]第1の実施形態によれば、コンピュータ装置用の入力装置101は、コンピュータに実行可能な命令108を実行するコンピュータプロセッサ106を含んでもよい。命令108は、面上に形成されている構造的に符号化されたパターンの少なくとも一部の画像を取得することをコンピュータ装置に実現させる。カメラ104は、カメラ104の視野FOV内に位置するパターン102の部分の画像を取得することができる。画像103は、プロセッサ106に接続しているメモリ105内にアナログまたはデジタルの形式で格納することができる。カメラ104は、適切なデータリンクによって、プロセッサ106および/またはメモリ105に接続してもよい。データリンクは、電気または光ファイバケーブル、あるいは高周波radiofrequency;RF、赤外または光無線通信freespaceopticallinkのような無線通信手段によって実装してもよい。あるいは、メモリ105とプロセッサ106とは、カメラ104の部品である集積回路によって実装してもよい。構造的に符号化されたパターン102は、複数の要素を含んでいる。各要素は、面に関する要素の位置および方向を特定する情報が符号化されている。命令108は、画像103内の一またはそれ以上の要素の少なくとも一部を、プロセッサ106に特定させる。命令はさらに、画像103内の一またはそれ以上のパターンに符号化されている情報から、面に対するカメラの位置をプロセッサ106に決定させるように構成してもよい。プロセッサ106は、コンピュータプログラム110への入力としてカメラの位置を利用することができる。限定するわけではないが、一例として、プログラム110は、ビデオゲームプログラムのようなゲームプログラムとすることができる。限定するわけではないが、例として、図2Aは構造的に符号化されたパターン202の一例を示す。構造的に符号化されたパターン202は、例えばプリントの形でマット上に形成してもよい。あるいは、パターン202は、床や壁、あるいは他の適切な面上に直接プリントや別の方法で形成してもよい。構造的に符号化されたパターンは、複数のセル201を含むことができる。各セルは、パターン中における他の全てのセル内の他の全ての要素とは異なる一意的な要素を含む。格子線203は、他のセルからあるセルを区別することを容易にする。図2Aに示す例では、セル201それぞれの中のパターンは、3×3の正方形の格子に基づく。格子内の正方形は白または黒のいずれかである。各要素内の白および黒の正方形のパターンは、ふたつとして類似する要素がないように選ばれる。このように、プロセッサ106は、セル内の白および黒の正方形のパターンによって、画像中の所与のセルを特定することができる。ある実施の形態では、プロセッサ106は、画像103をパターン202を表す参照データと比較することによってカメラの位置を決定するように構成することができる。参照データからの画像から、カメラの位置を決定する方法は多数ある。例えば、画像の中心Cは、3次元におけるカメラの位置の、パターン202の平面への投影と関連づけることができる。各セルは、パターン202内の既知の位置と関連づけることができる。図2Bに示すように、命令108は、画像103の中心Cに最も近いセル201を特定することができる。画像の中心Cと最も近いセルの位置は、粗い位置を提供することができる。セル201の中心C’に関して画像の中心Cの位置を決定することによって、粗い位置の精度を向上することができる。パターン202の平面に対して垂直な方向におけるカメラ104の距離Dを決定するために、プロセッサ106は画像103を解析することができる。本明細書において、垂直な方向の距離とは、パターンの平面に垂直な軸に沿った距離のことを意味する。例として図2Cに示すように、画像103内のセル202の特徴的なサイズwは、セル202の参照サイズWと比較される。参照サイズWは、カメラ104がパターン202から垂直な方向に既知の距離Drefの位置となったときに決定される。垂直方向の距離Dは、既知の垂直方向の距離Dref、およびWとwとの比W/wから下記の式を用いて決定することができる。D=DrefW/w図2Dおよび図2Eに示すように、命令108は、パターン202に対するカメラ104の角度方向を決定するように構成されてもよい。例えば、各要素201内の白の正方形と黒い正方形とのパターンは、各要素が、平面に垂直な軸に関して回転対称とはならないように選ばれる。パターンが回転対称でない場合、プロセッサ106は、平面に垂直な軸に対するカメラの回転配向角φを決定することができる。の回転配向角φの決定は、図2Dに示すように、画像103内のセル201の方向を参照セル201’の方向と比較することによって行われる。あるいは、命令108は、パターン202に関するカメラの垂直角や回転角を決定するために、プロセッサ106に画像103内のセル201の歪みを解析させることができる。例えば図2Eに示すように、命令108は、画像103中のセル内あるいはセル間の格子線の輻輳角θを解析することができる。輻輳角θは、パターン202に関するカメラの垂直角と関連づけることができる。図3に示される装置の多数のバリエーションは、本発明の実施の形態の範囲内である。例えば、上述したように、構造的に符号化されたパターンがマット上に形成されてもよい。保管のために丸めたり折りたたんだりすることができるように、マットは柔軟性を持った材料で作ることができる。限定するわけではないが、例として、マットは、ポリマー、ゴム、布または網、あるいはそれらの層を持つ複合材料から作ることができる。本発明の実施の形態によれば、図1および図2A-図2Eに関して上述した形式の装置は、ユーザの足の動きを感知するように構成されてもよい。構造的に符号化されたパターンは、例えばマット上にパターンをプリントしてそのマットを床の上に置く等により、床の上に置くことができる。ユーザの足の動きを感知するために、ユーザは両端にカメラを装着してもよい。限定しない例として、図3に示す本発明の別の実施の形態によれば、コンピュータ装置例えばコンピュータ娯楽装置用の入力装置300は、ユーザUの足Fに装着するように構成された一またはそれ以上のカメラ304と、複数の要素を含んでいる構造的に符号化されたパターン302を持つマット303とを含んでもよい。ここで複数の要素は、各要素の位置および向きを特定する情報が符号化されている。パターン302は、図2A-Eに関して上述したように構成してもよい。複数のカメラ304はプロセッサ306と接続可能である。プロセッサは、カメラ304のそれぞれの視野内に存在するパターン302の一部の画像の解析から各カメラの位置を決定するためのコード命令308を実行することができる。例として、カメラ304は送信機310と受信機312とを介してプロセッサ306と無線で接続することができる。限定するわけではないが、例として、送信機310と受信機312とは、Bluetooth登録商標のような高周波リンクを通して、ワイヤレスパーソナルエリアネットワークwirelesspersonalareanetwork;WPAN接続を実装することができる。限定するわけではないが例として、プロセッサ306は、カメラ304からのパターン302の少なくとも一部の画像を取得し、画像中の一またはそれ以上のパターンの要素の少なくとも一部を識別し、さらに画像中のパターンの要素内に符号化されている情報からカメラの位置を決定することによって、各カメラ304の位置を決定するように構成することができる。ある実施の形態では、プロセッサ306は、カメラ304の位置をコンピュータプログラム314への入力として生成するように構成することができる。このような実施の形態では、プログラム314はゲームプログラムまたはゲームプログラムの一部とすることができる。図4に示す本発明の別の実施の形態では、コンピュータ装置例えばコンピュータ娯楽装置のための入力装置400は、ユーザの手Hに装着されるように構成されている一またはそれ以上のカメラ404と、複数の要素を含む構造的に符号化されたパターン402を持つマット403とを含んでもよい。ここで複数の要素それぞれは、各要素の位置および方向を特定する情報が符号化されている。パターン402は、図2A-図2Eに関して上述したように構成されてもよい。カメラ404は、例えば無線送信機410と受信機412とを通して、プロセッサ406と接続することができる。プロセッサ406は、パターン402の部分画像の解析から、各カメラの位置を決定するためのコード命令408を実行することができる。プロセッサ406は、カメラ404からの少なくともパターン402の部分画像から、例えば上述した方法によってカメラ404それぞれの位置を決定するように構成することができる。本発明の実施の形態に係るパターンに基づくコンピュータビジョン装置は、多数ある方法の内のどの方法によっても、コンピュータ娯楽装置と組み合わせることができる。例として、図5は本発明の実施の形態に係るパターンに基づくコンピュータビジョン装置を利用する、コンピュータ娯楽装置500を示す。例として、一般性を失うことなく、装置500は、パーソナルコンピュータ、ビデオゲームコンソール、PDApersonaldigitalassistant、携帯電話または携帯ゲーム機、携帯型インターネット装置、または他のデジタルデバイスのようなコンピュータシステムの一部として実装されてもよい。好ましい実施の形態では、装置はビデオゲームコンソールの一部として実装される。装置500は、一般に一またはそれ以上のプロセッシングユニットを含む。限定するわけではないが例として、一またはそれ以上のプロセッシングユニットは、少なくともひとつのメインプロセッシングユニット501と、一またはそれ以上のコプロセッサ要素502A、502Bを含んでもよい。各コプロセッサ要素はプロセッサユニットと関連するローカルメモリを所持してもよい。装置はプロセッシングユニット501から分離しているメモリユニット503やコプロセッサ要素502A、502Bを含むことができる。プロセッシングユニット501は一またはそれ以上のプロセッシングコアを含んでもよい。限定することなく一例として、メインプロセッシングユニット501とコプロセッサ要素502A、502Bとは、セルプロセッサのような並列プロセッサモジュールの部分としてもよい。プロセッサアーキテクチャの一例はCellプロセッサである。セルプロセッサアーキテクチャの例は、セルブロードバンドエンジンアーキテクチャに詳細が記述されている。これは、IBM、ソニーコンピュータエンタテインメント、東芝の2005年8月8日付けの著作権で保護されており、コピーはhttp://cell.scei.co.jp/からダウンロード可能であり、その内容全体を参照によってここに組み入れる。セルプロセッサアーキテクチャにおいては、プロセッシングユニット501に対応する計算ユニットはPPEPowerProcessingElementと呼ばれ、コプロセッサ要素502A、502Bに対応する計算ユニットはSPESynergisticProcessingElementと呼ばれる。セルプロセッサアーキテクチャは、本発明の実施の形態で利用しうる数ある適切なプロセッサアーキテクチャの中の一例にすぎないことに注意する。本発明の実施の形態は、他のマルチプロセッサアーキテクチャを用いて実装してもよい。メモリユニット503は、コンピュータに読み取り可能な形式の情報を格納する任意の適切な媒体であってもよい。限定するわけではないが一例として、メモリユニット503はRAMrandomaccessmemoryまたはROMreadonlymemory、固定ディスクドライブとしてハードディスクドライブのようなコンピュータに読み取り可能な格納ディスク、あるいは取り外し可能なディスクドライブを含んでもよい。装置500はまた、入出力I/O要素512、電源P/S513、クロックCLK514およびキャッシュ515などの公知のサポート機能511を備えてもよい。装置600は、ソフトウェアプログラム命令617およびデータ618用の不揮発性ストレージを提供するストレージデバイス616をさらに含んでもよい。例として、ストレージデバイス215は固定ディスクドライブ、リムーバブルディスクドライブ、フラッシュメモリデバイス、テープドライブ、CD-ROM、DVD-ROM、Blu-Ray登録商標、HD-DVD、UMD、または他の光学ストレージデバイスであってもよい。パターンに基づくコンピュータビジョンインタフェース510は、例えば入出力要素512を介して、プロセッシングユニット501と接続してもよい。一般に、インタフェース510は、一またはそれ以上のカメラを含んでもよい。カメラはユーザの足または手に装着されるように構成されてもよい。カメラは適切な面上に設置されている、構造的に符号化されたパターンから画像を取得することができる。構造的に符号化されたパターンは、複数の要素を含むことができる。複数の要素それぞれは、要素の位置および向きを特定する情報が符号化されている。パターンは、図2A-図2E、図3、および図4に関して上述したように構成することができる。メインプロセッシングユニット501とコプロセッサ502A、502Bは、ソフトウェアアプリケーションとオプションとしてオペレーティングシステムとを実行するように構成されてもよい。そのようなソフトウェアアプリケーションの一部はメモリユニット503内に格納されてもよい。命令およびデータは、実行のため、メインプロセッサ501のレジスタまたはコプロセッサ要素502A、502Bのローカルストア内に読み込まれてもよい。ソフトウェアアプリケーションは、ビデオゲームアプリケーションのようなメインアプリケーション504を含んでもよい。メインアプリケーション504は、パターンに基づくカメラ位置ルーチン505とともに動作してもよい。この位置ルーチン505は、構造的に符号化されたパターン507の少なくとも一部の画像を取得し、画像内の一またはそれ以上の要素の少なくとも一部を特定し、画像中の一またはそれ以上のパターン要素内に符号化されている情報から、パターン507に対するカメラ506の位置を決定する。位置ルーチン505は、メモリ503内に格納されているパターンデータ509を利用してもよい。パターンデータ509は、各パターン要素内の構造的に符号化されたパターンを、パターン内の位置に関連づけることができる。位置ルーチン505は、パターンに対するカメラ506の位置および/または向きを決定するために、カメラ506を用いて取得したパターン507の画像から得られたデータを、パターンデータと比較することができる。位置ルーチン505は、インタフェース510の一部であり、かつメインプロセッサ501やコプロセッサ502A、502Bとは分離しているプロセッサ上に実装されてもよい。さらに、位置ルーチンの少なくとも一部分は、カメラ506の一部であるプロセッサによって実装されてもよい。カメラ位置ルーチン505は、一またはそれ以上のカメラが特定の位置内にあると判断されたとき、装置500の状態を変更するためのアプリケーション504を動作してもよい。ここで状態の変更とは、装置の動作内の変更のことをいう。例えば、状態の変更は、アプリケーション504によって扱われる別の処理によるコマンドの実行や、別の処理に用いられる特定のデータの選択を含んでもよい。装置に関してコマンドの実行における限定されない例としては、カメラの位置と予め定められた特定の時間におけるカメラの所定の位置とを比較する処理を開始することである。計算された位置が所定の位置に対してどの程度近接するかに基づいてスコアが計算されてもよい。所定の位置の配列が、プログラム504とともに演奏される音楽の断片内の時間基準のような、特定の時間基準に関して規定されてもよい。カメラはユーザの手または足に装着されてもよい。計算された位置を、関連する時刻における所定の位置と連続的に比較することによって、装置500は、ユーザがマット上でダンスするときのユーザの足および/または手の位置を連続的に追跡してもよい。プログラムは、所与の音楽の断片用に選択されたダンスステップの所定の並びを、ユーザがどの程度しっかりと追跡したかに基づいて、ユーザを採点することができる。装置500は、電子通信ネットワーク527を介してコミュニケーションを促進するためのネットワークインタフェース525を含む。ネットワークインタフェース525はローカルエリアネットワークおよびインターネットのようなワイドエリアネットワーク上の有線または無線通信を実装するように構成されてもよい。装置500は、ネットワーク527を介して1以上のメッセージパケット526によって、データの送受信および/またはファイルのリクエストをしてもよい。装置500は、グラフィックスプロセッシングユニットGPU535とグラフィックスメモリ537とを有するグラフィックスプロセッシングユニット530を更に含む。グラフィックスメモリ537は、出力イメージの各画素に対する画素データを格納するために使われるディスプレイメモリ例えばフレームバッファを含む。グラフィックスメモリ537は、GPU535と同じデバイス内に統合されてもよく、別のデバイスとしてGPU535に結合されてもよく、メモリユニット503内に実装されてもよい。画素データは、プロセッシングユニット501および/またはコプロセッサ502A、502Bから直接グラフィックスメモリ537に提供される。ある実施の形態では、グラフィックスユニットは、デコーダ図示せずからのデジタル放送信号から抽出されたビデオ信号データを受信してもよい。あるいは、プロセッシングユニット501は、所望の出力イメージを定めるデータやインストラクションをGPU535に提供する。GPU535はそれを用いて1以上の出力イメージの画素データを生成する。所望出力イメージを定めるデータやインストラクションは、メモリ502やグラフィックスメモリ537に格納される。ある実施の形態では、GPU535は、例えば、適当なプログラミングまたはハードウェアコンフィギュレーションによって構成され、シーンのためにジオメトリ、ライティング照明、シェーディング、テクスチャリング、モーション、および/またはカメラパラメータを定めるインストラクションとデータから出力イメージに対する画素データを生成するための3Dレンダリング機能をもつ。GPU535は、シェーダプログラムを実行することができるプログラム可能な実行ユニットを更に含む。グラフィックプロセッシングユニット530は、ディスプレイ540で表示されるべきグラフィックスメモリ537からのイメージに対する画素データを周期的に出力する。ディスプレイ540は、装置500からの信号に応じてビジュアル情報を表示することができる任意のデバイスであり、テキスト、数字、グラフィカルシンボルまたは画像を表示できるCRT、LCD、プラズマ、およびOLEDディスプレイを含む。装置500は、表示装置のタイプに応じてアナログまたはデジタルの形態でディスプレイ駆動信号をディスプレイ540に提供する。さらに、ディスプレイ540は、可聴もしくは検知可能な音を出すオーディオスピーカーを含んでもよい。そのような音の生成を容易にするために、装置500は、プロセッシングユニット501、メモリユニット502、および/またはストレージデバイス656によって提供されたインストラクションおよび/またはデータからアナログまたはデジタル音声出力を生成するために適したオーディオプロセッサ550を更に含む。音声出力は、例えばスピーカ655によって可聴音に変換される。メインプロセッシングユニット501、コプロセッサ要素502A、502B、インタフェース510、サポート機能511、データストレージ516、ゲームコントローラ、キーボード、あるいはマウスのような従来型のユーザ入力デバイス520、ネットワークインタフェース525、グラフィックスユニット530、オーディオプロセッサ550、を含む装置500の構成要素は、データバス560を介して互いに機能的に接続されている。これらの構成要素は、ハードウェア、ソフトウェアまたはファームウェア、あるいはこれらのうちの2つ以上の組合せで実装される。本発明の実施の形態は、マイクロフォン522やインタフェース510で用いるカメラ506に加えてカメラ524を利用するアプリケーションやシステムとともに用いることができる。カメラ524は、デプスカメラdepthcameraや、時には3次元カメラまたはZカメラとしても知られるカメラであってもよい。マイクロフォン522とカメラ524は、入出力I/O機能を経由してデータバスと接続されてもよい。メインアプリケーション504は、カメラ524の視野FOV内の人物や物体の位置に関する情報を決定するために、カメラを用いて得られた画像を解析してもよい。位置情報は人物や物体の深さZを含めることができる。メインアプリケーション504は、ユーザの位置に関する情報およびユーザの体の向きに関する情報を得るために、上述した静電容量インタフェースから得られた情報とともに位置情報を使ってもよい。この情報はアプリケーション504への追加的な入力を生成するために用いられてもよい。本発明の実施の形態によれば、従来の先行技術におけるダンスマットよりも、高い分解能でユーザの足および/または手の位置の追跡が可能となる。その上さらに、本発明の実施の形態によれば、ユーザの手および/またはカメラが設置されているユーザの体の他の部分を追跡することができる。さらに加えて、本発明の実施の形態によれば、足の相対的な位置に関して一次および二次の時間微分が可能となる。このような微分値は、足の速度および加速度を測定するために用いることができる。関節でつながっている開鎖の体であるため、このような速度および加速度の情報は、逆運動学や軌道計画を用いて足を超えて体全体の動きをさらに推測するのに有用である。さらに、本発明の実施の形態は、ゲームの域を超えたアプリケーションにも役立つ。例えば、ロボット技術のアプリケーションにおいて、ロボットはカメラを含むことができ、構造的なパターンを認識するルーチンを、ロボットを制御するプロセッサ内にコード化してもよい。部屋全体、あるいは他の領域を適切な構造的に符号化されたパターンで覆ってもよい。ロボットは、部屋内を人工知能に基づいて動くとき、カメラおよび本明細書に記載されている構造的なパターンに基づく位置決定技術を移動に利用することができる。本発明の実施の形態における別の可能なアプリケーションは、限定されるわけではないが、おもちゃ産業である。例として、一群の小さな電動ロボットのおもちゃは、カメラを取り付けることができる。各カメラは、構造的に符号化されたパターンとともに用いられる、カメラに基づく位置検出を実装するコンピュータシステムと接続することができる。ここで構造的に符号化されたパターンは、上述したようなマットの上に配置することができる。各ロボットのおもちゃは、サッカーチームのようなスポーツチームのプレイヤとして行動してもよい。各ロボットのおもちゃは、上述した方法で構造的に符号化されたパターンを参照として用いて、競技場における地震の位置を決定することができる。コンピュータシステムは、ユーザによってリアルタイムに制御可能な人工知能Artificialintelligence;AI戦略ゲームを実装することができる。読者の注意は、本明細書とともに提出され、本明細書とともに公開された全ての論文や文書に向けられており、そのような論文や文書の内容は参照によりここに組み入れる。本明細書に開示された全ての特徴添付のいずれの請求項、要約書、および図面を含むは、特に断らない限り、同一の、等価な、あるいは類似の目的を達成する代替する特徴で置き換えられてもよい。したがって、特に断らない限り、開示された各特徴は等価または類似の一般的なシリーズのひとつの単なる例示である。本発明の好ましい実施の形態を完全な形で説明してきたが、いろいろな代替物、変形、等価物を用いることができる。したがって、本発明の範囲は、上記の説明を参照して決められるものではなく、請求項により決められるべきであり、均等物の全範囲も含まれる。ここで述べた特徴はいずれも、好ましいかどうかを問わず、他の特徴と組み合わせてもよい。請求項において、明示的に断らない限り、各項目は1またはそれ以上の数量である。請求項において~のための手段のような語句を用いて明示的に記載する場合を除いて、請求項がミーンズプラスファンクションの限定を含むものと解してはならない。"