デュアル・カメラ入力を用いたセンサ
2つのカメラを使用したポータブル・デバイスの動きを検出する。第1のカメラは、第1の視軸に沿った方向に向けられ、第2のカメラは、第1の視軸とは異なる第2の視軸の方向に向けられる。第2の視軸は、第1の視軸に対して反対方向にすることができる。動き処理部は、第1のカメラからの画像の変化、および第2のカメラからの画像の変化を決定する。動き処理部は、第1のカメラ画像から決定された変化の方向を、第2のカメラ画像から決定された変化の方向と比較する。動き処理部は、この比較に基づいて、ポータブル・デバイスの動きを決定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デュアル・カメラ入力を用いたセンサに関する。
【背景技術】
【0002】
装置(デバイス(device))の動きの検出は、集中的な数値処理が必要となる時間のかかる作業となりうる。また、動き検出は、デバイスの動きの全体的な測定だけしか提供しないことがある。持ち運びできる物体の動きの検出は、コストの高いハードウェア、および複雑な数値処理技術が必要になることがある。
【発明の開示】
【発明が解決しようとする課題】
【0003】
グローバル・ポジショニング・システム(GPS)またはハイブリッド位置決定システムによって行われるような、位置の三角測量(trilateration)を用いた動き検出は、ポータブル・デバイスの動きを検出するためには不十分なことがある。GPSシステムまたはハイブリッド位置決定システムは、通常、ポータブル・デバイスの動きを検出するためには不十分な精度を備える。GPSは、初期の位置決定を得るために多大な時間を要することがある。更に、GPSシステムまたはハイブリッド位置決定システムは、通常、ポータブル・デバイスの回転運動を決定することができない。
【0004】
ジャイロスコープを組み込んだ動き検出システムは、ポータブル・デバイスの動きを検出するために使用されうる。しかし、このようなシステムは、通常はコストが高く、低コスト設計には適切ではない。動き検出に使用されるジャイロスコープに関連するコストは、ポータブル・デバイス全体の認められる価値を上回ることがある。
【課題を解決するための手段】
【0005】
複数のカメラを用いたデバイスの動き検出が、開示される。第1のカメラは、第1の視軸に沿った方向に向けることができ、第2のカメラは、第1の視軸とは異なる第2の視軸の方向に向けることができる。第2の視軸は、第1の視軸の実質的に反対方向にすることができる。プロセッサは、第1のカメラからの画像の変化、および第2のカメラからの画像の変化を決定することができ、この決定では、それぞれの変化の方向を決定する。プロセッサは、第1のカメラ画像から決定された変化の方向を、第2のカメラ画像から決定された変化の方向と比較することができる。次いで、プロセッサは、この比較に部分的に基づいてデバイスの動きを決定することができる。
【0006】
本発明の一態様は、動き検出デバイスを含む。前記動き検出デバイスは、第1の視軸に沿って画像を取り込むように構成された第1のカメラと、第1の視軸とは異なる第2の視軸に沿って画像を取り込むように構成された第2のカメラと、第1のカメラおよび第2のカメラからの画像に部分的に基づいて、デバイスの動きを決定するように構成された動き処理部とを含むことができる。
【0007】
別の態様では、本発明は、動き検出デバイスを含む。前記動き検出デバイスは、デバイスの前面から離れる方向に向かう視軸を有し、画像を取り込むように構成された第1のカメラと、デバイスの後面から離れる方向に向かう視軸を有し、画像を取り込むように構成された第2のカメラと、第1のカメラおよび第2のカメラからの画像に部分的に基づいて、デバイスの動きを決定するように構成され、デバイスの動きに部分的に基づいて、表示画像を生成するように更に構成された動き処理部と、動き処理部により生成された表示画像を表示するように構成されたディスプレイとを含むことができる。
【0008】
更に別の態様では、本発明は、動き検出システムを含む。前記システムは、第1の視軸に沿って配置され、第1のカメラ画像を取り込むように構成された第1のカメラと、第1の視軸とは異なる第2の視軸に沿って配置され、第2のカメラ画像を取り込むように構成された第2のカメラと、少なくとも2つの第1のカメラ画像、および少なくとも2つの第2のカメラ画像に部分的に基づいて、動きパラメータを決定するように構成された動き処理部と、動きパラメータを処理し、動きパラメータに部分的に基づいて表示信号を生成するように構成された基地装置と、基地装置によって生成された表示信号を表示するように構成されたディスプレイとを含むことができる。
【0009】
更に別の態様では、本発明は、動き検出方法を含むことができる。前記方法は、第1のカメラから複数の画像を受け取ること、第2のカメラから複数の画像を受け取ること、第1のカメラ画像に部分的に基づいて第1の画像並進移動を決定すること、第2のカメラ画像に部分的に基づいて第2の画像並進移動を決定すること、第1の画像並進移動を第2の画像並進移動と比較すること、および、その比較に部分的に基づいてデバイスの動きを決定することを含むことができる。
【0010】
更に別の態様では、本発明は、動き検出方法を含むことができる。前記方法は、第1の視軸に沿って取り込まれた画像、および第1の視軸の実質的に反対方向の第2の視軸に沿って取り込まれた画像から決定された、動きパラメータを受け取ること、複数の記憶された画像から表示画像を取り出すこと、動きパラメータに少なくとも部分的に基づいて表示画像を修正すること、ならびに、修正された表示画像をポータブル・デバイスに通信することを含むことができる。
【0011】
更に別の態様では、本発明は、1つまたは複数のプロセッサによって実行される1つまたは複数のプロセッサ読取り可能命令を記憶するように構成された、1つまたは複数のプロセッサ読取り可能ストレージ・デバイスを含むことができ、これらの命令は、プロセッサに方法を実行するように指示する。前記方法は、第1のカメラから複数の画像を受け取ること、第2のカメラから複数の画像を受け取ること、第1のカメラ画像に部分的に基づいて第1の画像並進移動を決定すること、第2のカメラ画像に部分的に基づいて第2の画像並進移動を決定すること、第1の画像並進移動を第2の画像並進移動と比較すること、および、その比較に部分的に基づいてデバイスの動きを決定することを含むことができる。
【0012】
更に別の態様では、本発明は、1つまたは複数のプロセッサによって実行される1つまたは複数のプロセッサ読取り可能命令を記憶するように構成された、1つまたは複数のプロセッサ読取り可能ストレージ・デバイスを含むことができ、前記命令は、プロセッサに方法を実行するように指示する。前記方法は、第1の視軸に沿って取り込まれた画像、および実質的に第1の視軸の反対方向の第2の視軸に沿って取り込まれた画像から決定された、動きパラメータを受け取ること、複数の記憶された画像から表示画像を取り出すこと、動きパラメータに少なくとも部分的に基づいて表示画像を修正すること、ならびに、修正された表示画像をポータブル・デバイスに通信することを含むことができる。
【0013】
本発明の実施形態の特徴、目的、および利点は、以下に示される詳細な説明から、より明らかとなる。
【発明を実施するための最良の形態】
【0014】
動き検出機能を有するポータブル・デバイス、および、ポータブル・デバイスの動きを検出する方法が開示される。このデバイスおよび方法は、別々の視軸に沿って配置された複数のカメラから取り込まれた画像を使用する。複数のカメラから取り込まれた画像は、変化の方向を決定するために処理されうる。第2のカメラから取り込まれた画像の変化の方向に対する第1のカメラから取り込まれた画像の変化の方向は、デバイスの動きを検出するために使用されうる。
【0015】
図1は、動き検出デバイス100の機能ブロック図である。デバイス100は、動き処理モジュール(処理部)150に結合された第1のカメラおよび第2のカメラ120を含む。動き処理モジュール150は、例えば、入出力(I/O)、コントローラ152、およびプロセッサ154を含むことができる。動き処理モジュール150は、メモリ160に結合することができ、かつ通信インターフェース170に結合することができる。動き処理モジュール150はまた、ディスプレイ130および入出力装置140に結合することができる。
【0016】
動き検出デバイス100は、第1のカメラ110および第2のカメラ120によって取り込まれた画像に部分的に基づいて、デバイスの動きを検出するように構成されうる。第1のカメラ110は、第1の視軸に沿って配置することができ、視軸は、カメラ内の撮像素子から、カメラによって取り込まれた画像の中心へ延びるラインを含むことができる。第2のカメラ120は、第2の視軸に沿って配置することができる。第1の視軸は、第2の視軸とは異なることが好ましい。一実施形態では、第2のカメラ120は、第1の視軸の実質的に反対方向の第2の視軸に沿って配置することができる。つまり、第1のカメラ110がデバイス100の前面から画像を取り込む場合、第2のカメラ120は、デバイス100の背部から画像を取り込むように配置することができる。カメラ110とカメラ120が実質的に反対方向に配置されない場合、実質的に直交軸にある視軸でカメラ110とカメラ120を配置することは有利になりうる。しかし、カメラ110および120によって取り込まれた画像が完全には相関しないとすれば、任意の2本の視軸が許容されうる。
【0017】
カメラ110および120は、アナログ・カメラであってもデジタル・カメラであってもよく、各カメラは、同じであっても互いに異なっていてもよい。カメラ、例えば110は、例えば、アナログ・カメラ、電荷結合素子(CCD)カメラ、およびCMOSカメラなど、または、画像を取り込むための他の何らかのデバイスとすることができる。また、カメラ110および120は、可視画像を取り込むことができ、あるいは、可視スペクトルの外側の画像を取り込むように構成されてもよい。カメラ、例えば110は、例えば、可視光カメラおよび赤外線カメラなど、または、画像を取り込むための他の何らかのデバイスとすることができる。
【0018】
第1のカメラ110は、連続画像を取り込むように構成されてもよく、第2のカメラ120もまた、連続画像を取り込むように構成されてもよい。カメラが連続的に画像を取り込む場合において、2つの異なる時点で取り込まれた画像が、連続画像とみなされうる。第1のカメラ110によって取り込まれる第1の画像が、第2のカメラ120によって取り込まれる第1の画像とほぼ同時に取り込まれることは、有利でありうる。同様に、第1のカメラ110によって取り込まれる第2または後続の画像が、第2のカメラ120によって取り込まれる画像とほぼ同時に取り込まれることは、有利でありうる。第1のカメラ110からの画像から、第2のカメラ120からのそれに相当する画像までの間の時間は、1秒未満であるべきであり、好ましくは、500ミリ秒、250ミリ秒、200ミリ秒、150ミリ秒、100ミリ秒、50ミリ秒、25ミリ秒、または10ミリ秒未満である。したがって、例えば、第1の画像が第1のカメラ110によって取り込まれる時間と、第1の画像が第2のカメラ120によって取り込まれる時間との差は、250ミリ秒未満でありうる。
【0019】
カメラ110および120によって取り込まれた画像は、動き処理モジュール150に通信される。動き処理モジュールは、取り込み画像に基づいて、その発信元のカメラの相対的な動きの方向を決定することができる。例えば、第2の画像の第1の画像に対する左並進移動は、カメラが、画像に対して右に移動したことを表すことができる。あるいは、左並進移動は、画像におけるオブジェクトの移動を表すことができる。動き処理モジュール150は、それらの画像を処理し、第1のカメラ110によって取り込まれた連続画像に部分的に基づいて、第1のカメラ110の動きの相対的方向を決定することができる。同様に、動き処理モジュール150は、第2のカメラ120からの連続画像を処理し、それらの画像に部分的に基づいて、第2のカメラ120の動きの相対的方向を決定することができる。次いで、動き処理モジュール150は、第1のカメラ110の動きの方向を、第2のカメラ120の動きの方向と比較し、この比較に少なくとも部分的に基づいて、デバイス100の動きを決定する。動き検出の更なる説明を、図4〜8に関連して以下で示す。
【0020】
動き処理モジュール150はまた、通信インターフェース170を介して基地装置(図示せず)から信号を受け取ることができる。受け取られた信号は、ディスプレイ130に出力するための信号の全部または一部分でありうる。動き処理モジュール150は、信号をディスプレイ130に出力することができる。ディスプレイは、例えば、ビデオ・ディスプレイ、CRTディスプレイ、液晶ディスプレイ、プラズマ・ディスプレイ、および発光アレイなど、または、ディスプレイを提供するための他の何らかのデバイスとすることができる。
【0021】
動き処理モジュール150はまた、通信インターフェース170を介して他のデバイス(図示せず)に信号を出力する。例えば、動き処理モジュール150は、他のデバイスに、検出された動きを表す信号を提供することができる。更に、動き処理モジュール150は、1つまたは複数の入出力装置140を介してユーザ入力を受け取ることができ、ユーザ入力信号に部分的に基づいて他のデバイスに信号を提供することができる。I/O入出力装置140には、キー、キーパッド、ボタン、ジョイ・スティック、キーボード、スイッチ、ダイアル、ノブ、マイクロフォン、およびタッチ・スクリーンなど、または、入力を受け取るための他の何らかのデバイスが含まれうる。
【0022】
デバイス100は、デバイス100からの信号出力に少なくとも部分的に基づいて作成された信号を、通信インターフェースを介して受け取ることができる。一実施形態では、デバイス100は、検出された動きに対応する信号を出力し、検出された動き信号に基づいて修正された表示信号を受け取る。
【0023】
別の実施形態では、デバイス100は、1つまたは複数のカメラ110および120から取り込まれた画像を出力し、また、検出されたデバイスの動きも出力する。次いで、デバイス100は、出力信号に少なくとも部分的に基づいて修正された信号を受け取ることができる。受け取られた信号は、ディスプレイ130に出力される表示信号、および他の出力信号を含むことができる。
【0024】
更に別の実施形態では、デバイス100は、1つまたは複数のカメラ110および120からの取り込み画像を出力し、また、検出されたデバイスの動きも出力する。次いで、デバイス100は、デバイス100からの信号出力に基づく拡張現実感画像信号(augmented reality image signal)を受け取ることができる。代替として、デバイス100それ自体が、拡張現実感画像(augmented reality image)を生成することができる。
【0025】
次いで、動き処理モジュール150は、ディスプレイ130に拡張現実感画像を出力することができる。拡張現実感画像は、合成または仮想画像を含むように修正された取り込み画像とすることができる。この拡張された画像は、取り込み画像上に重ね合わされた合成画像を含むことができる。したがって、カメラ、例えば120によって取り込まれた画像は、取り込み画像内に存在しない仮想画像を含むように修正されうる。修正された画像は、ディスプレイ130を介してユーザに表示されうる。
【0026】
別の実施形態では、デバイス100は、ハンドヘルド・デバイスとすることができ、第1のカメラ110は、ユーザが一般的な方向で持ったとき、ユーザの顔の画像を取り込むように構成されうる。次いで、動き処理モジュール150は、取り込み画像に少なくとも部分的に基づいて、ユーザの顔までの距離を決定することができる。例えば、第1のカメラ110は、ユーザの顔の画像を含む画像を取り込むことができる。動き処理モジュール150は、画像を処理して、ユーザの目に対応する画像内の点を突き止めることができる。動き処理モジュール150は、例えば、目の間の距離を決定し、ユーザからデバイス100までの距離を推定することができる。
【0027】
更に別の実施形態では、第1のカメラ110は、ユーザの顔の少なくとも2つの画像を取り込むように構成されうる。次いで、動き処理モジュール150は、2つの取り込み画像の差異に少なくと部分的に基づいて、ユーザの顔までの距離の変化を決定することができる。例えば、第1のカメラ110は、ユーザの顔の画像を含む画像を取り込むことができる。動き処理モジュール150は、画像を処理して、ユーザの目に対応する画像内の点を突き止めることができる。動き処理モジュール150は、目の間の相対距離を決定する。例えば、相対距離は、ピクセル数としても、全画像幅についての比率としてもよい。動き処理モジュール150は、第2の取り込み画像について、目の相対距離の測定を繰り返すことができる。次いで、動き処理モジュール150は、2つの相対距離を比較して、デバイス100に対するユーザの距離の変化を推定することができる。
【0028】
図1および後続の図に示される様々なモジュールは、ハードウェア、1つまたは複数のプロセッサによって実行されるソフトウェア、あるいは、ハードウェアとプロセッサによって実行されるソフトウェアとの組み合わせとして実装することができる。ソフトウェアは、プロセッサ読取り可能ストレージ・デバイス内に記憶された1つまたは複数のプロセッサ読取り可能命令を含むことができる。1つまたは複数の命令は、モジュールに関連する機能の一部または全部を実行するために、1つまたは複数のプロセッサによって実行することができる。
【0029】
プロセッサ読取り可能ストレージ・デバイスは、メモリ160を含むことができる。メモリ160には、ROM、RAM、不揮発性RAM、フラッシュ、磁気メモリ、光メモリ、フロッピー(登録商標)・ディスク、記憶テープ、CD−ROM、およびDVDなど、あるいは、命令、データ、または命令およびデータを記憶するための他の何らかのデバイスが含まれうる。
【0030】
図2は、動き検出システム200の機能ブロック図であり、動き検出システム200は、基地装置250と通信する複数のリモート・デバイス100aおよび100bを有する。図2に示される実施形態では、第1のリモート・デバイス100aは、基地装置250と直接結合され直接通信する。第2のリモート・デバイス100bは、ネットワーク220を使用して、基地装置と結合され通信する。リモート・デバイス100aおよび100bのそれぞれは、例えば、図1の動き検出デバイスでありうる。
【0031】
基地装置250は、1つまたは複数のリモート・デバイス100a〜100bに1つまたは複数のインターフェースを提供するように構成された通信インターフェース252を含むことができる。通信インターフェース252は、プロセッサ254に結合することができる。プロセッサ254はまた、メモリ256およびストレージ・デバイス256に結合することができる。ストレージ・デバイス258は、前述のように任意のタイプのプロセッサ読取り可能メモリを含むことができる。
【0032】
リモート・デバイス100aおよび100bは、同じタイプのデバイスであっても異なるタイプのデバイスであってもよい。リモート・デバイス、例えば100aは、ポータブル・デバイスであることが有利となりうる。一実施形態では、リモート・デバイス100aは、ゲーム・コントローラのような携帯ゲーム装置とすることができる。別の実施形態では、リモート・デバイス100aは、ポータブル・コンピュータとすることができる。更に他の実施形態では、リモート・デバイス100aは、携帯情報端末、計算機、電話、または他の何らかのタイプのポータブル・デバイスとすることができる。
【0033】
同様に、基地装置250は、ゲーム・コンソール、コンピュータ、サーバ、基地局、ホスト、および複数のコンピュータなど、または、他の何らかのデバイスとすることができる。いくつかの実施形態では、基地装置250は、別のリモート・デバイスとすることができる。
【0034】
第1のリモート・デバイス100aと基地装置250との間の接続は、有線接続、無線接続、または有線接続と無線接続の何らかの組み合わせとすることができる。有線接続には、電気的接続、機械的接続、および光学的接続など、または、第1のリモート・デバイス100aを基地装置250に通信できるように結合する他の何らかの様式が含まれうるが、これらに限定されない。無線接続には、RF接続、マイクロ波接続、光リンク、赤外線リンク、およびオーディオ・リンクなど、または、第1のリモート・デバイス100aを基地装置250に通信できるように結合する他の何らかの様式が含まれうるが、これらに限定されない。
【0035】
第2のリモート・デバイス100bを基地装置250に接続するネットワーク220は、私設網であっても、公衆網であってもよい。更に、ネットワークは、有線ネットワーク、無線ネットワーク、または、有線ネットワークと無線ネットワークの何らかの組み合わせであってよい。ネットワークはまた、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、または広域ネットワーク(WAN)であってよい。一実施形態では、ネットワーク220は、住居内の無線LANとすることができる。別の実施形態では、ネットワーク220は、インターネットとすることができる。
【0036】
通信インターフェース252は、2つのリモート・デバイス100aおよび100bのみに接続されて示されているが、通信インターフェース252は、それぞれ1つまたは複数のリモート・デバイスに接続することができる単一のポートまたは複数のポートを有してもよい。
【0037】
図2の動き検出システムでは、リモート・デバイス、例えば100aの動きは、完全にリモート・デバイス100a内において、完全に基地装置250内において、または、リモート・デバイス100aおよび基地装置250にわたり分散して、検出されうる。
【0038】
例えば、一実施形態では、基地装置250は、第1のリモート・デバイス100aにおけるカメラによって取り込まれた画像を受け取ることができる。次いで、基地装置250は、取り込み画像に部分的に基づいて、第1のリモート・デバイス100aの動きを決定することができる。次いで、基地装置250は、取り込み画像および検出された動きに基づいて、表示画像を、第1のリモート・デバイス100aに提供することができる。次いで、基地装置250は、例えば、第1のリモート・デバイス100a上に表示される拡張現実感画像を提供することができる。
【0039】
別の実施形態では、第1のリモート・デバイス100aは、画像を取り込み、その動きを、取り込み画像に部分的に基づいて検出することができる。第1のリモート・デバイス100aは、検出された動き、および取り込み画像のサブセットを、基地装置250に通信することができる。例えば、第1のリモート・デバイス100aは、複数のカメラの1つから取り込まれた画像のサブセットのみを、通信することができる。次いで、基地装置250は、検出された動きを受け取り、取り込み画像のサブセットを受け取り、受け取った動きおよび画像に部分的に基づいて、信号をリモート・デバイス100aに提供することができる。例えば、基地装置250は、受け取った検出された動きの信号、および受け取った画像のサブセットに部分的に基づいて、拡張現実感表示画像を、リモート・デバイス100aに提供することができる。
【0040】
更に、基地装置250は、受け取った取り込み画像に部分的に基づいて、第1のリモート・デバイス100aのそのユーザからの距離を推定し、推定距離に部分的に基づいて修正された表示画像を提供することができる。代替として、リモート・デバイス100aが、そのユーザからの距離を推定し、推定値を基地装置250に通信することができる。基地装置250は、距離推定値を受け取り、距離推定値に部分的に基づいて表示画像を生成し、表示画像をリモート・デバイス100aに提供することができる。
【0041】
更に別の実施形態では、基地装置250は、取り込み画像、検出された動き、およびユーザ距離推定値の組み合わせを、第1のリモート・デバイス100aから受け取り、受け取った信号に部分的に基づいて、表示画像を生成することができる。基地装置250は、1つまたは複数のリモート・デバイス、例えば100bに、表示画像を通信することができ、このような1つまたは複数のリモート・デバイスには、第1のリモート・デバイス100aが含まれても含まれなくてもよい。
【0042】
一実施形態では、図2の動き検出システムは、ビデオ・ゲーム・システムとすることができる。リモート・デバイス100aおよび100bは、ビデオ・ゲーム・システム用の携帯コントローラであってよく、基地装置250は、ビデオ・ゲーム・コンソールまたはゲーム・プロセッサとすることができる。基地装置250内のストレージ・デバイス258は、例えば、ビデオ・ゲームまたは対話型プレーヤ・ゲームを記憶しているコンパクト・ディスク(CD)またはデジタル多用途ディスク(DVD)ような1つまたは複数の光ディスクとインターフェースをとるように構成された、光ディスク・リーダとすることができる。
【0043】
リモート・デバイス100aおよび100bのそれぞれは、ユーザの方向に向けられた面に配置されたビデオ・ディスプレイ130を有する携帯コントローラとすることができる。リモート・デバイス100のための入出力装置140は、ボタン、スイッチ、または、例えばユーザの親指または他の指からユーザ入力を受け入れるように配置され構成された装置とすることができる。第1のカメラ110は、携帯コントローラの上部中央に配置することができ、ディスプレイ130の方向と合致する視軸を有することができる。第2のカメラ120は、第1のカメラ110の反対方向に配置することができ、第1のカメラ110の視軸の実質的に反対方向の視軸を有することができる。
【0044】
ストレージ・デバイス258から再生されるゲームは、例えば、対話型レース・ゲームや対話型路上運転ゲームのようなドライブ・ゲームとすることができる。基地装置250またはゲーム・コンソールは、ビデオ表示情報やオーディオ情報などの情報を、携帯コントローラに送ることができる。システムは、携帯コントローラの動きを検知するために、複数のカメラを使用することができる。例えば、携帯コントローラは、ハンドルとして動作することができ、システムは、いつ携帯コントローラが回転させられたかを決定することができる。回転は、ゲーム・システムによってハンドルの回転として解釈することができる。次いで、ゲーム・コンソールは、検知された動きに基づいて、ビデオおよびオーディオ情報を修正することができる。例えば、システムは、携帯コントローラの動きを検知し、ユーザが、携帯コントローラを選択的に回転させることによって、コースをドライブすることを可能にすることができる。
【0045】
ストレージ・デバイス258から表示されうる別のゲームは、例えば、拡張現実感ゲームとすることができる。ユーザは、携帯コントローラの第2のカメラ120を、地図、画像、またはライブ・ビューなどのシーンに向けることができる。携帯コントローラ上のディスプレイ130は、基地装置250ゲーム・コンソールからの1つまたは複数の画像によって拡張された、第2のカメラ120によって取り込まれた画像を、表示することができる。
【0046】
システムは、携帯コントローラの動き、および、第2のカメラ120によって取り込まれた画像を監視し、取り込まれた画像および検知された動きに応答して、拡張現実感信号を携帯コントローラに提供することができる。したがって、例えば、ディスプレイ130は、ゲーム・コンソールによって提供された情報に基づいて拡張現実感画像が挿入された、第2のカメラ120によって取り込まれた画像を、表示することができる。屋外のゲーム設定においては、このようなゲームは、ユーザが、屋内または屋外の設定などの現実的環境を歩き回り、拡張現実感を用いて対話的ゲーム体験を有することを可能にする。このようなゲームには、例えば、ハンティング・ゲームまたは戦闘ゲームが含まれうる。拡張現実感の動物または戦闘員には、例えば、第2のカメラ120によって取り込まれた画像を追加することができる。
【0047】
図3A〜3Dは、図1の動き検出デバイスでありうる動き検出デバイス100の一実施形態の図である。図3Aは、動き検出デバイス100の正面図であり、デバイス100の中央上部にある第1のカメラ110の位置、およびデバイス100の前面に配置されたディスプレイ130を示す。デバイス100の前面はまた、フロント・パネルの左側に配置された第1のユーザ入力装置140a、および、フロント・パネルの右側に配置された第2のユーザ入力装置140bを含むことができる。第1のユーザ入力装置140aは、ナビゲーション・パッドとして示され、第2のユーザ入力装置140bは、ボタンの集まりとして示されている。
【0048】
図3Bは、動き検出デバイス100の背面図であり、バック・パネルのほぼ中心線上に配置された第2のカメラ120の位置を示す。第1のカメラ110の視軸は、第2のカメラ120の視軸の実質的に反対方向である。2本の視軸は、同じラインに沿っていないが、実質的に平行である。
【0049】
図3Cは、説明のために、直交座標系における動き検出デバイス100の方向を示す。後続の図において参照される方向は、図3Cに示される方向を参照している。図3Cに示されるように、動き検出デバイス100の前面は、正のx方向に向き、動き検出デバイス100の背面は、負のx方向に向く。したがって、第1の視軸は、+x方向であると記述することができ、第2の視軸は、−x方向であると記述することができる。
【0050】
図3Dは、ユーザと関連して動き検出デバイス100の一実施形態を示す。典型的な構成では、デバイス100のフロント・パネルは、ユーザの正面に向いている。ユーザは、ディスプレイ130を見ることができ、デバイス100のフロント・パネル上のカメラ110は、通常、ユーザの顔の画像を取り込むことができる。
【0051】
拡張現実感の実施形態では、デバイス100の図3Dに図示されていないバック・パネル上のカメラ120が、ユーザの視野内にある画像を取り込むことができる。次いで、システムは、このデバイス、基地装置、またはこれらの組み合わせを使用して、拡張現実感画像をディスプレイ130に表示することができる。デバイス100からユーザまでの距離を推定することによって、ディスプレイ130上に示される画像のサイズを決めることができる。システムは、ユーザがディスプレイを見るときに透明な窓を通して見ているかのように、画像サイズが見えるよう調整することができる。しかし、システムは、拡張現実感環境を提供するために、表示される画像に仮想または合成画像を追加することができる。
【0052】
図4〜8は、1対のカメラによって取り込まれうる画像の例を示す。これらのカメラは、第1のカメラがデバイスの前面に、第2のカメラがデバイスの背面にあるように構成される。これらの画像は、動き検出をデバイスがどのように行うかを例示するのを助けるために用いられる。これらの図は、2つの別個のカメラによって取り込まれた第1および第2の画像を示す。前述のように、後向きカメラによって取り込まれる第1および第2の画像がそれぞれ、前向きカメラによってその第1および第2の画像が取り込まれるのと実質的に同時に取り込まれることは、有利でありうる。また、カメラによって取り込まれる第2の画像は、カメラによって取り込まれる次の画像である必要はない。代わりに、第2の画像とは、カメラによって取り込まれる任意の後続の画像を示すことができる。
【0053】
図4A〜4Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の例を示す。これらの画像は、デバイスの水平並進移動を例示する。水平並進移動とは、図3Cの座標系を用いると、+yまたは−y方向に沿った移動を指すことができる。
【0054】
図4Aは、前向きカメラによって取り込まれうる第1の画像400を示す。用語の第1とは、後続画像と相対的な参照を提供するために使用される相対的な用語である。前向きカメラからの第1の画像400は、画像内にオブジェクト402を示す。図4Bは、前向きカメラによって取り込まれた第2の画像410を示す。同じオブジェクト402は、第2の画像410内に現れることができ、第1の画像400におけるオブジェクト402に対し、並進移動させることができる。オブジェクト402は、左に移動したものとして例示されている。動き検出デバイスは、2つの画像400と410を比較することによって、動きの方向を決定することができる。動き検出デバイスは、画像について詳細な決定をする必要はない。動き検出デバイスは、画像並進移動があったこと、および画像並進移動の方向だけを決定すればよい。もちろん、動き検出デバイスは、追加の画像解析を行ってもよく、並進移動の方向に加え、並進移動のおおよその大きさを決定してもよい。前向きカメラの取り込み画像におけるオブジェクト402は、左に並進移動されるため、動き検出デバイスは、デバイスの動きの方向が、左向きであると決定することができる。ただし、動き検出デバイスは、後向きカメラによって取り込まれた画像を解析することなしに、動きの決定をすることができないことがある。
【0055】
図4Cは、後向きカメラによって取り込まれた第1の画像420を示す。第1の画像420はまた、画像420内にオブジェクト412を示す。図4Dは、後向きカメラによって取り込まれた第2の画像430を示す。第2の画像430は、第1の画像420内と同様にオブジェクト412を示すが、オブジェクト412は一方の側に並進移動されている。後向きカメラによって取り込まれたオブジェクト412は、右に並進移動されたものとして示されている。したがって、動き検出デバイスは、デバイスの動きの方向が左向きであることを決定することができる。
【0056】
これらの取り込み画像におけるオブジェクトは、反対方向に並進移動されたように見えるが、2つのカメラは、反対方向に向いているため、動き検出デバイスは、動きの方向が同じであると決定することができる。動き検出デバイスが、2つのカメラによって検知された動きの方向が同じであると決定したので、動き検出デバイスは、デバイスが左に並進移動されたと決定することができる。代替として、動き検出デバイスは、第1のカメラからの画像から画像並進移動の方向を決定してもよい。動き検出デバイスはまた、第2のカメラからの画像から画像並進移動の方向を決定することもできる。動き検出デバイスは、画像並進移動の2つの方向を比較し、デバイスの動きの方向を決定することができる。
【0057】
図5A〜5Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の更なる例を示す。これらの画像は、動き検出デバイスの垂直並進移動を例示する。
【0058】
図5Aは、前向きカメラによって取り込まれた第1の画像500を示す。第1の画像500は、画像500内にオブジェクト502を示す。図5Bは、前向きカメラによって取り込まれた第2の画像510を示す。第2の画像510は、第1の画像500に示されるのと同じオブジェクト502を示すが、オブジェクト502は、下方に並進移動されている。したがって、動き検出デバイスは、動きの上方向を決定することができる。
【0059】
図5Cは、後向きカメラによって取り込まれた第1の画像520を示す。第1の画像520は、画像520内にオブジェクト512を示す。図5Dは、後向きカメラによって取り込まれた第2の画像540を示す。第2の画像540は、後向きカメラの第1の画像520に示されるのと同じオブジェクト512を示す。ただし、この画像は、下方に並進移動され、デバイスの動きの上方向を表している。
【0060】
動き検出デバイスは、2組の画像から画像並進移動の方向を比較して、デバイスの動きを決定することができる。取り込み画像が、両方のカメラについて下方への画像並進移動を示したので、デバイスの動きは、上方並進移動であると決定することができる。代替として、動き検出デバイスは、動きの方向を比較し、デバイスの動きを決定することができる。動き検出デバイスが、両組の画像から、動きの上方向を決定したので、動き検出デバイスは、動きが上方並進移動であると決定することができる。
【0061】
図6A〜6Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の更なる例を示す。これらの画像は、動き検出デバイスのねじれ並進移動を例示する。また、ねじれ並進移動は、動き検出デバイスの回転とみなすことができる。回転は、x方向に延びる回転軸に沿って発生する。
【0062】
図6Aは、前向きカメラによって取り込まれた第1の画像600を示す。第1の画像600は、画像600内にオブジェクト602を示す。図6Bは、前向きカメラによって取り込まれた第2の画像610を示す。第2の画像610は、第1の画像600に示されるのと同じオブジェクト602を示すが、オブジェクト602は、カメラの視軸について反時計回りに回転させられている。これは、動き検出デバイスの反時計回りの回転に対応し、ここでは、方向は、デバイスの前方から見られた場合の反時計回りを示す。したがって、動き検出デバイスは、動きの方向として反時計回りの回転を決定することができる。
【0063】
図6Cは、後向きカメラによって取り込まれた第1の画像620を示す。後向きカメラからの第1の画像620は、画像620内にオブジェクト612を示す。図6Dは、後向きカメラによって取り込まれた第2の画像640を示す。第2の画像640は、後向きカメラの第1の画像620に示されるのと同じオブジェクト612を示す。ただし、この画像は、視軸について時計回りに回転され、動きの方向としてデバイスの反時計回りの回転を表している。
【0064】
上述のように、動き検出デバイスは、2組の画像から画像並進移動の方向を比較して、デバイスの動きを決定することができる。取り込み画像は、2つのカメラについて反対方向の画像回転を示したため、デバイスの動きは、回転であると決定することができる。この回転の方向は、前面カメラにより示された回転の方向と同じであり、この例では、反時計回りである。
【0065】
代替として、動き検出デバイスは、動きの方向を比較し、デバイスの動きを決定することができる。動き検出デバイスが、両組の画像から動きの反時計回りの方向を決定したので、動き検出デバイスは、動きがカメラの視軸に沿って反時計回りの回転であったと決定することができる。
【0066】
図7A〜Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の更なる例を示す。これらの画像は、動き検出デバイスの回転を例示する。回転は、z方向に延びる回転軸に沿って発生する。
【0067】
図7Aは、前向きカメラによって取り込まれた第1の画像700を示す。第1の画像700は、画像700内にオブジェクト702を示す。図7Bは、前向きカメラによって取り込まれた第2の画像710を示す。第2の画像710は、第1の画像700に示されるのと同じオブジェクト702を示すが、オブジェクト702は、画像の右側に並進移動されている。この並進移動は、動き検出デバイスの右側への水平並進移動に対応しうる。したがって、動き検出デバイスは、動きの方向は、右向きであると決定することができる。
【0068】
図7Cは、後向きカメラによって取り込まれた第1の画像720を示す。後向きカメラからの第1の画像720は、画像720内にオブジェクト712を示す。図7Dは、後向きカメラによって取り込まれた第2の画像740を示す。第2の画像740は、後向きカメラの第1の画像720に示されるのと同じオブジェクト712を示す。ただし、この画像は、右に水平に並進移動されている。この水平並進移動は、動きの方向が、水平に左向きであることを表すことができる。
【0069】
したがって、取り込み画像におけるオブジェクトは、同じ方向に並進移動されたように見えるが、2つのカメラは、反対方向に向いているため、動き検出デバイスは、動きの反対方向を決定する。動き検出デバイスは、前向きカメラの動きの方向が右であるが、後向きカメラの動きの方向が左であることを決定する。動き検出デバイスが、2つのカメラの動きの方向が反対方向であると決定したので、動き検出デバイスは、デバイスがz軸について回転したと決定することができる。動き検出デバイスは、更に、デバイスが上方から見られた場合に回転は反時計回りであると、動きの方向から決定することができる。
【0070】
代替として、動き検出デバイスは、画像並進移動の方向に基づいて、デバイスの移動を決定することができる。動き検出デバイスは、画像並進移動の2つの方向を比較し、デバイスの動きの方向を決定することができる。したがって、前面および背面カメラ画像の両方において画像は右に並進移動したので、デバイスは、上方から見られた場合のデバイスの反時計回りの回転に対応する移動を、決定することができる。
【0071】
図8A〜8Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の更なる例を示す。これらの画像は、y軸に沿った回転軸についての動き検出デバイスの回転を例示する。
【0072】
図8Aは、前向きカメラによって取り込まれた第1の画像800を示す。第1の画像800は、画像800内にオブジェクト802を示す。図8Bは、前向きカメラによって取り込まれた第2の画像810を示す。第2の画像810は、第1の画像800に示されているのと同じオブジェクト802を示すが、オブジェクト802は、上方に並進移動されている。したがって、動き検出デバイスは、動きのデバイスの方向が下方であると決定することができる。
【0073】
図8Cは、後向きカメラによって取り込まれた第1の画像820を示す。第1の画像820は、画像820内にオブジェクト812を示す。図8Dは、後向きカメラによって取り込まれた第2の画像840を示す。第2の画像840は、後向きカメラの第1の画像820に示されるのと同じオブジェクト812を示す。この画像は、下方に並進移動され、デバイスの動きの上方向を表している。
【0074】
画像並進移動の反対方向、したがって、動きの反対のデバイスの方向は、y方向に沿って位置する回転軸を中心にデバイスが回転したことを表すことができる。動き検出デバイスは、画像並進移動、または動きの方向を使用して、デバイスの右から見られた場合に回転の方向が反時計回りであると決定することができる。
【0075】
このように、動き検出デバイスは、複数のカメラによって取り込まれた画像に基づいて動きの方向を決定することができる。例では、2つのカメラのみが示されているが、3つ以上のカメラもデバイスで使用されうる。また、2つのカメラは、実質的に反対方向である視軸を有するものとして示されている。しかし、複数のカメラは、同一ではない、または完全に相関した画像をもたらさない複数の任意の視軸に沿って、配置されうる。
【0076】
画像から決定された画像並進移動、または動きのデバイスの方向を比較することによって、動き検出デバイスは、デバイスが並進移動したかまたは回転したかを決定することができる。動き検出デバイスは、例えば、2つ以上の画像におけるオブジェクトのサイズを比較することによって、視軸に平行な軸に沿った水平並進移動を決定することができる。画像並進移動および動きの決定の要約が、第1の前向きカメラおよび第2の後向きカメラを有する2つのカメラの実施形態に関する表1に示されている。
【0077】
【表1】
【0078】
デバイス並進移動および回転の例は、軸上の並進移動および回転について与えられたが、任意のデバイス並進移動または回転が、軸上の並進移動および/または回転の組み合わせに基づいて決定されうる。例えば、任意のデバイス並進移動が、各軸方向におけるデバイス並進移動の組み合わせとして決定されうる。各軸上の並進移動のベクトル和は、任意の3次元位置への並進移動と等しくなりうる。同様に、任意の恣意的な軸に沿った回転は、各軸に沿ったデバイス回転の組み合わせとして決定されうる。
【0079】
例えば、任意の方向に沿ったデバイスの並進移動は、x、y、およびz軸に沿った動きのベクトル和として決定されうる。表1から分かるように、3つの各軸に沿った並進移動は、それぞれ別の軸に沿った並進移動を含まずに決定されうる。したがって、動き検出システムは、例えば、x軸に沿った並進移動を決定し、続いて、y軸およびz軸について決定する。合計の並進移動は、各並進移動のベクトル和として決定することができる。
【0080】
更に、任意の軸に沿った回転は、各軸に沿った回転の和として決定することができる。表1から分かるように、回転の軸を決定するために使用されるカメラ画像の移動は、独立しており、したがって、独立した軸回転は、任意の軸から決定することができる。
【0081】
いくつかの回転および並進移動については、同じ画像並進移動から決定されるが、異なる画像並進移動の大きさを比較することによって、回転を並進移動と区別することができる。例えば、y軸並進移動およびz軸回転はどちらも、左または右への画像並進移動に基づいて決定することができる。しかし、カメラが互いに実質的に反対方向に配置される場合、画像並進移動の大きさは、2つのカメラからの画像についてほぼ同じになるはずである。2つのカメラからの画像並進移動の大きさが異なる場合、システムは、合成並進移動および回転を決定することができる。並進移動の大きさの差異、および差異の方向は、デバイスの並進移動または回転のいずれかに帰せられる画像並進移動の成分を決定するために使用されうる。
【0082】
図9は、例えば図1の動き検出デバイスまたは図2の動き検出デバイスに、実装することができる、動き検出プロセス900のフローチャートである。動き検出プロセス900は、動き検出デバイスが第1のカメラからの第1の画像を取り込むとき、ステップ902で開始する。前述のように、第1のカメラは、例えば、前向きカメラとすることができる。
【0083】
次に、動き検出デバイスは、ステップ904に進み、デバイスが第2のカメラからの第1の画像を取り込む。第2のカメラは、例えば、後向きカメラとすることができる。次に、動き検出デバイスは、ステップ912に進み、第1のカメラからの第2の画像を取り込む。ステップ914で、動き検出デバイスは、第2のカメラからの第2の画像を取り込む。第1および第2の各カメラからの第1および第2の画像は、例えば、メモリまたはある種のストレージ・デバイスに記憶することができる。
【0084】
次に、動き検出デバイスは、ステップ920に進み、第1のカメラからの第1の画像と第2の画像を比較する。ステップ922で、動き検出デバイスは、取り込み画像の比較に基づいて、画像並進移動を決定する。代替として、動き検出デバイスは、第1のカメラ画像から動きのデバイスの方向を決定することができる。
【0085】
次に、動き検出デバイスは、ステップ924に進み、動き検出デバイスからユーザまでの距離を決定する。先述のように、動き検出デバイスは、ユーザの顔の画像の解析を評価して、目の間の距離を決定しそれによりデバイスまでの距離を導き出すことによって、ユーザまでの距離を決定または推定することができる。
【0086】
次いで、動き検出デバイスは、ステップ930に進み、第2のカメラによって取り込まれた画像を比較する。ステップ932で、動き検出デバイスは、取り込まれた第2のカメラ画像の比較に基づいて、画像並進移動を決定する。代替として、動き検出デバイスは、第2のカメラ画像から動きのデバイスの方向を決定することができる。
【0087】
次に、動き検出デバイスは、ステップ940に進み、第1のカメラ画像から決定された画像並進移動を、第2のカメラ画像から決定された画像並進移動と比較する。動き検出デバイスは、例えば、水平または垂直並進移動の方向および回転の方向を比較することができる。ステップ950で、動き検出デバイスは、画像並進移動の比較に部分的に基づいて、デバイスの動きの方向を決定する。
【0088】
ステップ950に進むと、動き検出デバイスはまた、第1および第2のカメラ画像の各対における画像並進移動または画像回転の大きさに部分的に基づいて、デバイスの動きの大きさを決定することができる。ステップ960で、動き検出デバイスは、動きパラメータおよび1つまたは複数の画像を、図2に示されるように基地装置または別の動き検出デバイスなど他のデバイスに、通信することができる。動きパラメータは、例えば、並進移動および回転を含む動きの方向、動きの大きさ、ならびにユーザからの距離を含むことができる。これらの画像には、カメラによって取り込まれた画像のうち一部または全部が含まれうる。一実施形態では、動き検出デバイスは、後向きカメラによって取り込まれた画像を通信し、前向きカメラからの画像を通信しない。
【0089】
次いで、動き検出デバイスは、ステップ980に進み、基地装置または別の動き検出デバイスのような他のデバイスから表示信号を受け取ることができる。表示信号は、動き検出デバイスによって通信された画像および動きパラメータに部分的に基づいて生成された信号とすることができる。一実施形態では、動き検出デバイスは、基地装置から拡張現実感表示信号を受け取り、この拡張現実感信号をディスプレイに表示する。
【0090】
プロセス900の様々な工程またはステップは、別の順序で行われてもよく、図9に示された順序で行われる必要はない。また、ステップ、または機能を、プロセス900に追加しても、プロセス900から削除してもよい。追加のステップ、または機能は、プロセスの始め、プロセスの終わり、あるいは、プロセスの1つまたは複数の既存のステップの間に追加することが可能である。
【0091】
このように、複数のカメラから取り込まれた画像に部分的に基づいて動きを決定することができる動き検出デバイスが開示された。動き検出デバイスは、第1のカメラから第1の組の画像を比較し、第1の組の画像内の画像並進移動を決定することができる。動き検出デバイスはまた、第2のカメラから第2の組の画像を比較し、第2の組の画像内の画像並進移動を決定することができる。次いで、動き検出デバイスは、第1の組の画像から決定された画像並進移動を、第2の組の画像から決定された画像並進移動と比較することができる。次いで、動き検出デバイスは、この比較に部分的に基づいて動きを決定することができる。
【0092】
本明細書に開示の実施形態と関連して説明された様々な例示的論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、縮小命令セットコンピュータ(RISC)プロセッサ、特殊用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、または他のプログラマブル論理デバイス、ディスクリート・ゲートまたはトランジスタ論理、ディスクリート・ハードウェア・コンポーネント、あるいは、本明細書に記載の機能を実施するように設計されたこれらの任意の組み合わせで実装または実施されうる。汎用プロセッサは、マイクロプロセッサとすることができるが、代替形態では、任意のプロセッサ、コントローラ、マイクロコントローラ、または状態機械としてもよい。プロセッサは、コンピューティング・デバイスの組み合わせ、例えば、DSPとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、DSPコアと関連した1つまたは複数のマイクロプロセッサ、または他のそのような任意の構成として実装されうる。
【0093】
本明細書に開示の実施形態に関して説明された方法、プロセス、またはアルゴリズムの工程は、ハードウェアで直接実施しても、プロセッサによって実行されるソフトウェア・モジュールで実施しても、または、この2つの組み合わせで実施してもよい。ソフトウェア・モジュールは、RAMメモリ、フラッシュ・メモリ、不揮発性メモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブル・ディスク、CD−ROM、または、当技術分野で知られる他の任意の形態の記憶媒体において存在することができる。例示的記憶媒体は、プロセッサが情報を記憶媒体から読み取りまた記憶媒体に書き込むことができるように、プロセッサに結合される。代替形態では、記憶媒体は、プロセッサと一体化することができる。プロセッサおよび記憶媒体は、ASIC内に存在してもよい。
【0094】
開示された実施形態の上記の説明は、任意の当業者が本開示を製作するまたは使用することを可能にするために提供された。これらの実施形態に対する様々な修正は、当業者には容易に理解されるであろうし、また、本明細書に定義された一般的原理は、本開示の範囲から逸脱することなしに他の実施形態に適用されうる。したがって、本開示は、本明細書に示される実施形態に限定されるものではなく、本明細書に開示の原理および新規な特徴と一致する最も広い範囲が与えられる。
【図面の簡単な説明】
【0095】
【図1】動き検出デバイスを示す機能ブロック図である。
【図2】動き検出システムを示す機能ブロック図である。
【図3A】動き検出デバイスの一実施形態を示す図である。
【図3B】動き検出デバイスの一実施形態を示す図である。
【図3C】動き検出デバイスの一実施形態を示す図である。
【図3D】動き検出デバイスの一実施形態を示す図である。
【図4A】カメラによって取り込まれる画像の例示的例を示す図である。
【図4B】カメラによって取り込まれる画像の例示的例を示す図である。
【図4C】カメラによって取り込まれる画像の例示的例を示す図である。
【図4D】カメラによって取り込まれる画像の例示的例を示す図である。
【図5A】カメラによって取り込まれる画像の例示的例を示す図である。
【図5B】カメラによって取り込まれる画像の例示的例を示す図である。
【図5C】カメラによって取り込まれる画像の例示的例を示す図である。
【図5D】カメラによって取り込まれる画像の例示的例を示す図である。
【図6A】カメラによって取り込まれる画像の例示的例を示す図である。
【図6B】カメラによって取り込まれる画像の例示的例を示す図である。
【図6C】カメラによって取り込まれる画像の例示的例を示す図である。
【図6D】カメラによって取り込まれる画像の例示的例を示す図である。
【図7A】カメラによって取り込まれる画像の例示的例を示す図である。
【図7B】カメラによって取り込まれる画像の例示的例を示す図である。
【図7C】カメラによって取り込まれる画像の例示的例を示す図である。
【図7D】カメラによって取り込まれる画像の例示的例を示す図である。
【図8A】カメラによって取り込まれる画像の例示的例を示す図である。
【図8B】カメラによって取り込まれる画像の例示的例を示す図である。
【図8C】カメラによって取り込まれる画像の例示的例を示す図である。
【図8D】カメラによって取り込まれる画像の例示的例を示す図である。
【図9】動き検出プロセスの一実施形態を示すフローチャートである。
【技術分野】
【0001】
本発明は、デュアル・カメラ入力を用いたセンサに関する。
【背景技術】
【0002】
装置(デバイス(device))の動きの検出は、集中的な数値処理が必要となる時間のかかる作業となりうる。また、動き検出は、デバイスの動きの全体的な測定だけしか提供しないことがある。持ち運びできる物体の動きの検出は、コストの高いハードウェア、および複雑な数値処理技術が必要になることがある。
【発明の開示】
【発明が解決しようとする課題】
【0003】
グローバル・ポジショニング・システム(GPS)またはハイブリッド位置決定システムによって行われるような、位置の三角測量(trilateration)を用いた動き検出は、ポータブル・デバイスの動きを検出するためには不十分なことがある。GPSシステムまたはハイブリッド位置決定システムは、通常、ポータブル・デバイスの動きを検出するためには不十分な精度を備える。GPSは、初期の位置決定を得るために多大な時間を要することがある。更に、GPSシステムまたはハイブリッド位置決定システムは、通常、ポータブル・デバイスの回転運動を決定することができない。
【0004】
ジャイロスコープを組み込んだ動き検出システムは、ポータブル・デバイスの動きを検出するために使用されうる。しかし、このようなシステムは、通常はコストが高く、低コスト設計には適切ではない。動き検出に使用されるジャイロスコープに関連するコストは、ポータブル・デバイス全体の認められる価値を上回ることがある。
【課題を解決するための手段】
【0005】
複数のカメラを用いたデバイスの動き検出が、開示される。第1のカメラは、第1の視軸に沿った方向に向けることができ、第2のカメラは、第1の視軸とは異なる第2の視軸の方向に向けることができる。第2の視軸は、第1の視軸の実質的に反対方向にすることができる。プロセッサは、第1のカメラからの画像の変化、および第2のカメラからの画像の変化を決定することができ、この決定では、それぞれの変化の方向を決定する。プロセッサは、第1のカメラ画像から決定された変化の方向を、第2のカメラ画像から決定された変化の方向と比較することができる。次いで、プロセッサは、この比較に部分的に基づいてデバイスの動きを決定することができる。
【0006】
本発明の一態様は、動き検出デバイスを含む。前記動き検出デバイスは、第1の視軸に沿って画像を取り込むように構成された第1のカメラと、第1の視軸とは異なる第2の視軸に沿って画像を取り込むように構成された第2のカメラと、第1のカメラおよび第2のカメラからの画像に部分的に基づいて、デバイスの動きを決定するように構成された動き処理部とを含むことができる。
【0007】
別の態様では、本発明は、動き検出デバイスを含む。前記動き検出デバイスは、デバイスの前面から離れる方向に向かう視軸を有し、画像を取り込むように構成された第1のカメラと、デバイスの後面から離れる方向に向かう視軸を有し、画像を取り込むように構成された第2のカメラと、第1のカメラおよび第2のカメラからの画像に部分的に基づいて、デバイスの動きを決定するように構成され、デバイスの動きに部分的に基づいて、表示画像を生成するように更に構成された動き処理部と、動き処理部により生成された表示画像を表示するように構成されたディスプレイとを含むことができる。
【0008】
更に別の態様では、本発明は、動き検出システムを含む。前記システムは、第1の視軸に沿って配置され、第1のカメラ画像を取り込むように構成された第1のカメラと、第1の視軸とは異なる第2の視軸に沿って配置され、第2のカメラ画像を取り込むように構成された第2のカメラと、少なくとも2つの第1のカメラ画像、および少なくとも2つの第2のカメラ画像に部分的に基づいて、動きパラメータを決定するように構成された動き処理部と、動きパラメータを処理し、動きパラメータに部分的に基づいて表示信号を生成するように構成された基地装置と、基地装置によって生成された表示信号を表示するように構成されたディスプレイとを含むことができる。
【0009】
更に別の態様では、本発明は、動き検出方法を含むことができる。前記方法は、第1のカメラから複数の画像を受け取ること、第2のカメラから複数の画像を受け取ること、第1のカメラ画像に部分的に基づいて第1の画像並進移動を決定すること、第2のカメラ画像に部分的に基づいて第2の画像並進移動を決定すること、第1の画像並進移動を第2の画像並進移動と比較すること、および、その比較に部分的に基づいてデバイスの動きを決定することを含むことができる。
【0010】
更に別の態様では、本発明は、動き検出方法を含むことができる。前記方法は、第1の視軸に沿って取り込まれた画像、および第1の視軸の実質的に反対方向の第2の視軸に沿って取り込まれた画像から決定された、動きパラメータを受け取ること、複数の記憶された画像から表示画像を取り出すこと、動きパラメータに少なくとも部分的に基づいて表示画像を修正すること、ならびに、修正された表示画像をポータブル・デバイスに通信することを含むことができる。
【0011】
更に別の態様では、本発明は、1つまたは複数のプロセッサによって実行される1つまたは複数のプロセッサ読取り可能命令を記憶するように構成された、1つまたは複数のプロセッサ読取り可能ストレージ・デバイスを含むことができ、これらの命令は、プロセッサに方法を実行するように指示する。前記方法は、第1のカメラから複数の画像を受け取ること、第2のカメラから複数の画像を受け取ること、第1のカメラ画像に部分的に基づいて第1の画像並進移動を決定すること、第2のカメラ画像に部分的に基づいて第2の画像並進移動を決定すること、第1の画像並進移動を第2の画像並進移動と比較すること、および、その比較に部分的に基づいてデバイスの動きを決定することを含むことができる。
【0012】
更に別の態様では、本発明は、1つまたは複数のプロセッサによって実行される1つまたは複数のプロセッサ読取り可能命令を記憶するように構成された、1つまたは複数のプロセッサ読取り可能ストレージ・デバイスを含むことができ、前記命令は、プロセッサに方法を実行するように指示する。前記方法は、第1の視軸に沿って取り込まれた画像、および実質的に第1の視軸の反対方向の第2の視軸に沿って取り込まれた画像から決定された、動きパラメータを受け取ること、複数の記憶された画像から表示画像を取り出すこと、動きパラメータに少なくとも部分的に基づいて表示画像を修正すること、ならびに、修正された表示画像をポータブル・デバイスに通信することを含むことができる。
【0013】
本発明の実施形態の特徴、目的、および利点は、以下に示される詳細な説明から、より明らかとなる。
【発明を実施するための最良の形態】
【0014】
動き検出機能を有するポータブル・デバイス、および、ポータブル・デバイスの動きを検出する方法が開示される。このデバイスおよび方法は、別々の視軸に沿って配置された複数のカメラから取り込まれた画像を使用する。複数のカメラから取り込まれた画像は、変化の方向を決定するために処理されうる。第2のカメラから取り込まれた画像の変化の方向に対する第1のカメラから取り込まれた画像の変化の方向は、デバイスの動きを検出するために使用されうる。
【0015】
図1は、動き検出デバイス100の機能ブロック図である。デバイス100は、動き処理モジュール(処理部)150に結合された第1のカメラおよび第2のカメラ120を含む。動き処理モジュール150は、例えば、入出力(I/O)、コントローラ152、およびプロセッサ154を含むことができる。動き処理モジュール150は、メモリ160に結合することができ、かつ通信インターフェース170に結合することができる。動き処理モジュール150はまた、ディスプレイ130および入出力装置140に結合することができる。
【0016】
動き検出デバイス100は、第1のカメラ110および第2のカメラ120によって取り込まれた画像に部分的に基づいて、デバイスの動きを検出するように構成されうる。第1のカメラ110は、第1の視軸に沿って配置することができ、視軸は、カメラ内の撮像素子から、カメラによって取り込まれた画像の中心へ延びるラインを含むことができる。第2のカメラ120は、第2の視軸に沿って配置することができる。第1の視軸は、第2の視軸とは異なることが好ましい。一実施形態では、第2のカメラ120は、第1の視軸の実質的に反対方向の第2の視軸に沿って配置することができる。つまり、第1のカメラ110がデバイス100の前面から画像を取り込む場合、第2のカメラ120は、デバイス100の背部から画像を取り込むように配置することができる。カメラ110とカメラ120が実質的に反対方向に配置されない場合、実質的に直交軸にある視軸でカメラ110とカメラ120を配置することは有利になりうる。しかし、カメラ110および120によって取り込まれた画像が完全には相関しないとすれば、任意の2本の視軸が許容されうる。
【0017】
カメラ110および120は、アナログ・カメラであってもデジタル・カメラであってもよく、各カメラは、同じであっても互いに異なっていてもよい。カメラ、例えば110は、例えば、アナログ・カメラ、電荷結合素子(CCD)カメラ、およびCMOSカメラなど、または、画像を取り込むための他の何らかのデバイスとすることができる。また、カメラ110および120は、可視画像を取り込むことができ、あるいは、可視スペクトルの外側の画像を取り込むように構成されてもよい。カメラ、例えば110は、例えば、可視光カメラおよび赤外線カメラなど、または、画像を取り込むための他の何らかのデバイスとすることができる。
【0018】
第1のカメラ110は、連続画像を取り込むように構成されてもよく、第2のカメラ120もまた、連続画像を取り込むように構成されてもよい。カメラが連続的に画像を取り込む場合において、2つの異なる時点で取り込まれた画像が、連続画像とみなされうる。第1のカメラ110によって取り込まれる第1の画像が、第2のカメラ120によって取り込まれる第1の画像とほぼ同時に取り込まれることは、有利でありうる。同様に、第1のカメラ110によって取り込まれる第2または後続の画像が、第2のカメラ120によって取り込まれる画像とほぼ同時に取り込まれることは、有利でありうる。第1のカメラ110からの画像から、第2のカメラ120からのそれに相当する画像までの間の時間は、1秒未満であるべきであり、好ましくは、500ミリ秒、250ミリ秒、200ミリ秒、150ミリ秒、100ミリ秒、50ミリ秒、25ミリ秒、または10ミリ秒未満である。したがって、例えば、第1の画像が第1のカメラ110によって取り込まれる時間と、第1の画像が第2のカメラ120によって取り込まれる時間との差は、250ミリ秒未満でありうる。
【0019】
カメラ110および120によって取り込まれた画像は、動き処理モジュール150に通信される。動き処理モジュールは、取り込み画像に基づいて、その発信元のカメラの相対的な動きの方向を決定することができる。例えば、第2の画像の第1の画像に対する左並進移動は、カメラが、画像に対して右に移動したことを表すことができる。あるいは、左並進移動は、画像におけるオブジェクトの移動を表すことができる。動き処理モジュール150は、それらの画像を処理し、第1のカメラ110によって取り込まれた連続画像に部分的に基づいて、第1のカメラ110の動きの相対的方向を決定することができる。同様に、動き処理モジュール150は、第2のカメラ120からの連続画像を処理し、それらの画像に部分的に基づいて、第2のカメラ120の動きの相対的方向を決定することができる。次いで、動き処理モジュール150は、第1のカメラ110の動きの方向を、第2のカメラ120の動きの方向と比較し、この比較に少なくとも部分的に基づいて、デバイス100の動きを決定する。動き検出の更なる説明を、図4〜8に関連して以下で示す。
【0020】
動き処理モジュール150はまた、通信インターフェース170を介して基地装置(図示せず)から信号を受け取ることができる。受け取られた信号は、ディスプレイ130に出力するための信号の全部または一部分でありうる。動き処理モジュール150は、信号をディスプレイ130に出力することができる。ディスプレイは、例えば、ビデオ・ディスプレイ、CRTディスプレイ、液晶ディスプレイ、プラズマ・ディスプレイ、および発光アレイなど、または、ディスプレイを提供するための他の何らかのデバイスとすることができる。
【0021】
動き処理モジュール150はまた、通信インターフェース170を介して他のデバイス(図示せず)に信号を出力する。例えば、動き処理モジュール150は、他のデバイスに、検出された動きを表す信号を提供することができる。更に、動き処理モジュール150は、1つまたは複数の入出力装置140を介してユーザ入力を受け取ることができ、ユーザ入力信号に部分的に基づいて他のデバイスに信号を提供することができる。I/O入出力装置140には、キー、キーパッド、ボタン、ジョイ・スティック、キーボード、スイッチ、ダイアル、ノブ、マイクロフォン、およびタッチ・スクリーンなど、または、入力を受け取るための他の何らかのデバイスが含まれうる。
【0022】
デバイス100は、デバイス100からの信号出力に少なくとも部分的に基づいて作成された信号を、通信インターフェースを介して受け取ることができる。一実施形態では、デバイス100は、検出された動きに対応する信号を出力し、検出された動き信号に基づいて修正された表示信号を受け取る。
【0023】
別の実施形態では、デバイス100は、1つまたは複数のカメラ110および120から取り込まれた画像を出力し、また、検出されたデバイスの動きも出力する。次いで、デバイス100は、出力信号に少なくとも部分的に基づいて修正された信号を受け取ることができる。受け取られた信号は、ディスプレイ130に出力される表示信号、および他の出力信号を含むことができる。
【0024】
更に別の実施形態では、デバイス100は、1つまたは複数のカメラ110および120からの取り込み画像を出力し、また、検出されたデバイスの動きも出力する。次いで、デバイス100は、デバイス100からの信号出力に基づく拡張現実感画像信号(augmented reality image signal)を受け取ることができる。代替として、デバイス100それ自体が、拡張現実感画像(augmented reality image)を生成することができる。
【0025】
次いで、動き処理モジュール150は、ディスプレイ130に拡張現実感画像を出力することができる。拡張現実感画像は、合成または仮想画像を含むように修正された取り込み画像とすることができる。この拡張された画像は、取り込み画像上に重ね合わされた合成画像を含むことができる。したがって、カメラ、例えば120によって取り込まれた画像は、取り込み画像内に存在しない仮想画像を含むように修正されうる。修正された画像は、ディスプレイ130を介してユーザに表示されうる。
【0026】
別の実施形態では、デバイス100は、ハンドヘルド・デバイスとすることができ、第1のカメラ110は、ユーザが一般的な方向で持ったとき、ユーザの顔の画像を取り込むように構成されうる。次いで、動き処理モジュール150は、取り込み画像に少なくとも部分的に基づいて、ユーザの顔までの距離を決定することができる。例えば、第1のカメラ110は、ユーザの顔の画像を含む画像を取り込むことができる。動き処理モジュール150は、画像を処理して、ユーザの目に対応する画像内の点を突き止めることができる。動き処理モジュール150は、例えば、目の間の距離を決定し、ユーザからデバイス100までの距離を推定することができる。
【0027】
更に別の実施形態では、第1のカメラ110は、ユーザの顔の少なくとも2つの画像を取り込むように構成されうる。次いで、動き処理モジュール150は、2つの取り込み画像の差異に少なくと部分的に基づいて、ユーザの顔までの距離の変化を決定することができる。例えば、第1のカメラ110は、ユーザの顔の画像を含む画像を取り込むことができる。動き処理モジュール150は、画像を処理して、ユーザの目に対応する画像内の点を突き止めることができる。動き処理モジュール150は、目の間の相対距離を決定する。例えば、相対距離は、ピクセル数としても、全画像幅についての比率としてもよい。動き処理モジュール150は、第2の取り込み画像について、目の相対距離の測定を繰り返すことができる。次いで、動き処理モジュール150は、2つの相対距離を比較して、デバイス100に対するユーザの距離の変化を推定することができる。
【0028】
図1および後続の図に示される様々なモジュールは、ハードウェア、1つまたは複数のプロセッサによって実行されるソフトウェア、あるいは、ハードウェアとプロセッサによって実行されるソフトウェアとの組み合わせとして実装することができる。ソフトウェアは、プロセッサ読取り可能ストレージ・デバイス内に記憶された1つまたは複数のプロセッサ読取り可能命令を含むことができる。1つまたは複数の命令は、モジュールに関連する機能の一部または全部を実行するために、1つまたは複数のプロセッサによって実行することができる。
【0029】
プロセッサ読取り可能ストレージ・デバイスは、メモリ160を含むことができる。メモリ160には、ROM、RAM、不揮発性RAM、フラッシュ、磁気メモリ、光メモリ、フロッピー(登録商標)・ディスク、記憶テープ、CD−ROM、およびDVDなど、あるいは、命令、データ、または命令およびデータを記憶するための他の何らかのデバイスが含まれうる。
【0030】
図2は、動き検出システム200の機能ブロック図であり、動き検出システム200は、基地装置250と通信する複数のリモート・デバイス100aおよび100bを有する。図2に示される実施形態では、第1のリモート・デバイス100aは、基地装置250と直接結合され直接通信する。第2のリモート・デバイス100bは、ネットワーク220を使用して、基地装置と結合され通信する。リモート・デバイス100aおよび100bのそれぞれは、例えば、図1の動き検出デバイスでありうる。
【0031】
基地装置250は、1つまたは複数のリモート・デバイス100a〜100bに1つまたは複数のインターフェースを提供するように構成された通信インターフェース252を含むことができる。通信インターフェース252は、プロセッサ254に結合することができる。プロセッサ254はまた、メモリ256およびストレージ・デバイス256に結合することができる。ストレージ・デバイス258は、前述のように任意のタイプのプロセッサ読取り可能メモリを含むことができる。
【0032】
リモート・デバイス100aおよび100bは、同じタイプのデバイスであっても異なるタイプのデバイスであってもよい。リモート・デバイス、例えば100aは、ポータブル・デバイスであることが有利となりうる。一実施形態では、リモート・デバイス100aは、ゲーム・コントローラのような携帯ゲーム装置とすることができる。別の実施形態では、リモート・デバイス100aは、ポータブル・コンピュータとすることができる。更に他の実施形態では、リモート・デバイス100aは、携帯情報端末、計算機、電話、または他の何らかのタイプのポータブル・デバイスとすることができる。
【0033】
同様に、基地装置250は、ゲーム・コンソール、コンピュータ、サーバ、基地局、ホスト、および複数のコンピュータなど、または、他の何らかのデバイスとすることができる。いくつかの実施形態では、基地装置250は、別のリモート・デバイスとすることができる。
【0034】
第1のリモート・デバイス100aと基地装置250との間の接続は、有線接続、無線接続、または有線接続と無線接続の何らかの組み合わせとすることができる。有線接続には、電気的接続、機械的接続、および光学的接続など、または、第1のリモート・デバイス100aを基地装置250に通信できるように結合する他の何らかの様式が含まれうるが、これらに限定されない。無線接続には、RF接続、マイクロ波接続、光リンク、赤外線リンク、およびオーディオ・リンクなど、または、第1のリモート・デバイス100aを基地装置250に通信できるように結合する他の何らかの様式が含まれうるが、これらに限定されない。
【0035】
第2のリモート・デバイス100bを基地装置250に接続するネットワーク220は、私設網であっても、公衆網であってもよい。更に、ネットワークは、有線ネットワーク、無線ネットワーク、または、有線ネットワークと無線ネットワークの何らかの組み合わせであってよい。ネットワークはまた、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、または広域ネットワーク(WAN)であってよい。一実施形態では、ネットワーク220は、住居内の無線LANとすることができる。別の実施形態では、ネットワーク220は、インターネットとすることができる。
【0036】
通信インターフェース252は、2つのリモート・デバイス100aおよび100bのみに接続されて示されているが、通信インターフェース252は、それぞれ1つまたは複数のリモート・デバイスに接続することができる単一のポートまたは複数のポートを有してもよい。
【0037】
図2の動き検出システムでは、リモート・デバイス、例えば100aの動きは、完全にリモート・デバイス100a内において、完全に基地装置250内において、または、リモート・デバイス100aおよび基地装置250にわたり分散して、検出されうる。
【0038】
例えば、一実施形態では、基地装置250は、第1のリモート・デバイス100aにおけるカメラによって取り込まれた画像を受け取ることができる。次いで、基地装置250は、取り込み画像に部分的に基づいて、第1のリモート・デバイス100aの動きを決定することができる。次いで、基地装置250は、取り込み画像および検出された動きに基づいて、表示画像を、第1のリモート・デバイス100aに提供することができる。次いで、基地装置250は、例えば、第1のリモート・デバイス100a上に表示される拡張現実感画像を提供することができる。
【0039】
別の実施形態では、第1のリモート・デバイス100aは、画像を取り込み、その動きを、取り込み画像に部分的に基づいて検出することができる。第1のリモート・デバイス100aは、検出された動き、および取り込み画像のサブセットを、基地装置250に通信することができる。例えば、第1のリモート・デバイス100aは、複数のカメラの1つから取り込まれた画像のサブセットのみを、通信することができる。次いで、基地装置250は、検出された動きを受け取り、取り込み画像のサブセットを受け取り、受け取った動きおよび画像に部分的に基づいて、信号をリモート・デバイス100aに提供することができる。例えば、基地装置250は、受け取った検出された動きの信号、および受け取った画像のサブセットに部分的に基づいて、拡張現実感表示画像を、リモート・デバイス100aに提供することができる。
【0040】
更に、基地装置250は、受け取った取り込み画像に部分的に基づいて、第1のリモート・デバイス100aのそのユーザからの距離を推定し、推定距離に部分的に基づいて修正された表示画像を提供することができる。代替として、リモート・デバイス100aが、そのユーザからの距離を推定し、推定値を基地装置250に通信することができる。基地装置250は、距離推定値を受け取り、距離推定値に部分的に基づいて表示画像を生成し、表示画像をリモート・デバイス100aに提供することができる。
【0041】
更に別の実施形態では、基地装置250は、取り込み画像、検出された動き、およびユーザ距離推定値の組み合わせを、第1のリモート・デバイス100aから受け取り、受け取った信号に部分的に基づいて、表示画像を生成することができる。基地装置250は、1つまたは複数のリモート・デバイス、例えば100bに、表示画像を通信することができ、このような1つまたは複数のリモート・デバイスには、第1のリモート・デバイス100aが含まれても含まれなくてもよい。
【0042】
一実施形態では、図2の動き検出システムは、ビデオ・ゲーム・システムとすることができる。リモート・デバイス100aおよび100bは、ビデオ・ゲーム・システム用の携帯コントローラであってよく、基地装置250は、ビデオ・ゲーム・コンソールまたはゲーム・プロセッサとすることができる。基地装置250内のストレージ・デバイス258は、例えば、ビデオ・ゲームまたは対話型プレーヤ・ゲームを記憶しているコンパクト・ディスク(CD)またはデジタル多用途ディスク(DVD)ような1つまたは複数の光ディスクとインターフェースをとるように構成された、光ディスク・リーダとすることができる。
【0043】
リモート・デバイス100aおよび100bのそれぞれは、ユーザの方向に向けられた面に配置されたビデオ・ディスプレイ130を有する携帯コントローラとすることができる。リモート・デバイス100のための入出力装置140は、ボタン、スイッチ、または、例えばユーザの親指または他の指からユーザ入力を受け入れるように配置され構成された装置とすることができる。第1のカメラ110は、携帯コントローラの上部中央に配置することができ、ディスプレイ130の方向と合致する視軸を有することができる。第2のカメラ120は、第1のカメラ110の反対方向に配置することができ、第1のカメラ110の視軸の実質的に反対方向の視軸を有することができる。
【0044】
ストレージ・デバイス258から再生されるゲームは、例えば、対話型レース・ゲームや対話型路上運転ゲームのようなドライブ・ゲームとすることができる。基地装置250またはゲーム・コンソールは、ビデオ表示情報やオーディオ情報などの情報を、携帯コントローラに送ることができる。システムは、携帯コントローラの動きを検知するために、複数のカメラを使用することができる。例えば、携帯コントローラは、ハンドルとして動作することができ、システムは、いつ携帯コントローラが回転させられたかを決定することができる。回転は、ゲーム・システムによってハンドルの回転として解釈することができる。次いで、ゲーム・コンソールは、検知された動きに基づいて、ビデオおよびオーディオ情報を修正することができる。例えば、システムは、携帯コントローラの動きを検知し、ユーザが、携帯コントローラを選択的に回転させることによって、コースをドライブすることを可能にすることができる。
【0045】
ストレージ・デバイス258から表示されうる別のゲームは、例えば、拡張現実感ゲームとすることができる。ユーザは、携帯コントローラの第2のカメラ120を、地図、画像、またはライブ・ビューなどのシーンに向けることができる。携帯コントローラ上のディスプレイ130は、基地装置250ゲーム・コンソールからの1つまたは複数の画像によって拡張された、第2のカメラ120によって取り込まれた画像を、表示することができる。
【0046】
システムは、携帯コントローラの動き、および、第2のカメラ120によって取り込まれた画像を監視し、取り込まれた画像および検知された動きに応答して、拡張現実感信号を携帯コントローラに提供することができる。したがって、例えば、ディスプレイ130は、ゲーム・コンソールによって提供された情報に基づいて拡張現実感画像が挿入された、第2のカメラ120によって取り込まれた画像を、表示することができる。屋外のゲーム設定においては、このようなゲームは、ユーザが、屋内または屋外の設定などの現実的環境を歩き回り、拡張現実感を用いて対話的ゲーム体験を有することを可能にする。このようなゲームには、例えば、ハンティング・ゲームまたは戦闘ゲームが含まれうる。拡張現実感の動物または戦闘員には、例えば、第2のカメラ120によって取り込まれた画像を追加することができる。
【0047】
図3A〜3Dは、図1の動き検出デバイスでありうる動き検出デバイス100の一実施形態の図である。図3Aは、動き検出デバイス100の正面図であり、デバイス100の中央上部にある第1のカメラ110の位置、およびデバイス100の前面に配置されたディスプレイ130を示す。デバイス100の前面はまた、フロント・パネルの左側に配置された第1のユーザ入力装置140a、および、フロント・パネルの右側に配置された第2のユーザ入力装置140bを含むことができる。第1のユーザ入力装置140aは、ナビゲーション・パッドとして示され、第2のユーザ入力装置140bは、ボタンの集まりとして示されている。
【0048】
図3Bは、動き検出デバイス100の背面図であり、バック・パネルのほぼ中心線上に配置された第2のカメラ120の位置を示す。第1のカメラ110の視軸は、第2のカメラ120の視軸の実質的に反対方向である。2本の視軸は、同じラインに沿っていないが、実質的に平行である。
【0049】
図3Cは、説明のために、直交座標系における動き検出デバイス100の方向を示す。後続の図において参照される方向は、図3Cに示される方向を参照している。図3Cに示されるように、動き検出デバイス100の前面は、正のx方向に向き、動き検出デバイス100の背面は、負のx方向に向く。したがって、第1の視軸は、+x方向であると記述することができ、第2の視軸は、−x方向であると記述することができる。
【0050】
図3Dは、ユーザと関連して動き検出デバイス100の一実施形態を示す。典型的な構成では、デバイス100のフロント・パネルは、ユーザの正面に向いている。ユーザは、ディスプレイ130を見ることができ、デバイス100のフロント・パネル上のカメラ110は、通常、ユーザの顔の画像を取り込むことができる。
【0051】
拡張現実感の実施形態では、デバイス100の図3Dに図示されていないバック・パネル上のカメラ120が、ユーザの視野内にある画像を取り込むことができる。次いで、システムは、このデバイス、基地装置、またはこれらの組み合わせを使用して、拡張現実感画像をディスプレイ130に表示することができる。デバイス100からユーザまでの距離を推定することによって、ディスプレイ130上に示される画像のサイズを決めることができる。システムは、ユーザがディスプレイを見るときに透明な窓を通して見ているかのように、画像サイズが見えるよう調整することができる。しかし、システムは、拡張現実感環境を提供するために、表示される画像に仮想または合成画像を追加することができる。
【0052】
図4〜8は、1対のカメラによって取り込まれうる画像の例を示す。これらのカメラは、第1のカメラがデバイスの前面に、第2のカメラがデバイスの背面にあるように構成される。これらの画像は、動き検出をデバイスがどのように行うかを例示するのを助けるために用いられる。これらの図は、2つの別個のカメラによって取り込まれた第1および第2の画像を示す。前述のように、後向きカメラによって取り込まれる第1および第2の画像がそれぞれ、前向きカメラによってその第1および第2の画像が取り込まれるのと実質的に同時に取り込まれることは、有利でありうる。また、カメラによって取り込まれる第2の画像は、カメラによって取り込まれる次の画像である必要はない。代わりに、第2の画像とは、カメラによって取り込まれる任意の後続の画像を示すことができる。
【0053】
図4A〜4Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の例を示す。これらの画像は、デバイスの水平並進移動を例示する。水平並進移動とは、図3Cの座標系を用いると、+yまたは−y方向に沿った移動を指すことができる。
【0054】
図4Aは、前向きカメラによって取り込まれうる第1の画像400を示す。用語の第1とは、後続画像と相対的な参照を提供するために使用される相対的な用語である。前向きカメラからの第1の画像400は、画像内にオブジェクト402を示す。図4Bは、前向きカメラによって取り込まれた第2の画像410を示す。同じオブジェクト402は、第2の画像410内に現れることができ、第1の画像400におけるオブジェクト402に対し、並進移動させることができる。オブジェクト402は、左に移動したものとして例示されている。動き検出デバイスは、2つの画像400と410を比較することによって、動きの方向を決定することができる。動き検出デバイスは、画像について詳細な決定をする必要はない。動き検出デバイスは、画像並進移動があったこと、および画像並進移動の方向だけを決定すればよい。もちろん、動き検出デバイスは、追加の画像解析を行ってもよく、並進移動の方向に加え、並進移動のおおよその大きさを決定してもよい。前向きカメラの取り込み画像におけるオブジェクト402は、左に並進移動されるため、動き検出デバイスは、デバイスの動きの方向が、左向きであると決定することができる。ただし、動き検出デバイスは、後向きカメラによって取り込まれた画像を解析することなしに、動きの決定をすることができないことがある。
【0055】
図4Cは、後向きカメラによって取り込まれた第1の画像420を示す。第1の画像420はまた、画像420内にオブジェクト412を示す。図4Dは、後向きカメラによって取り込まれた第2の画像430を示す。第2の画像430は、第1の画像420内と同様にオブジェクト412を示すが、オブジェクト412は一方の側に並進移動されている。後向きカメラによって取り込まれたオブジェクト412は、右に並進移動されたものとして示されている。したがって、動き検出デバイスは、デバイスの動きの方向が左向きであることを決定することができる。
【0056】
これらの取り込み画像におけるオブジェクトは、反対方向に並進移動されたように見えるが、2つのカメラは、反対方向に向いているため、動き検出デバイスは、動きの方向が同じであると決定することができる。動き検出デバイスが、2つのカメラによって検知された動きの方向が同じであると決定したので、動き検出デバイスは、デバイスが左に並進移動されたと決定することができる。代替として、動き検出デバイスは、第1のカメラからの画像から画像並進移動の方向を決定してもよい。動き検出デバイスはまた、第2のカメラからの画像から画像並進移動の方向を決定することもできる。動き検出デバイスは、画像並進移動の2つの方向を比較し、デバイスの動きの方向を決定することができる。
【0057】
図5A〜5Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の更なる例を示す。これらの画像は、動き検出デバイスの垂直並進移動を例示する。
【0058】
図5Aは、前向きカメラによって取り込まれた第1の画像500を示す。第1の画像500は、画像500内にオブジェクト502を示す。図5Bは、前向きカメラによって取り込まれた第2の画像510を示す。第2の画像510は、第1の画像500に示されるのと同じオブジェクト502を示すが、オブジェクト502は、下方に並進移動されている。したがって、動き検出デバイスは、動きの上方向を決定することができる。
【0059】
図5Cは、後向きカメラによって取り込まれた第1の画像520を示す。第1の画像520は、画像520内にオブジェクト512を示す。図5Dは、後向きカメラによって取り込まれた第2の画像540を示す。第2の画像540は、後向きカメラの第1の画像520に示されるのと同じオブジェクト512を示す。ただし、この画像は、下方に並進移動され、デバイスの動きの上方向を表している。
【0060】
動き検出デバイスは、2組の画像から画像並進移動の方向を比較して、デバイスの動きを決定することができる。取り込み画像が、両方のカメラについて下方への画像並進移動を示したので、デバイスの動きは、上方並進移動であると決定することができる。代替として、動き検出デバイスは、動きの方向を比較し、デバイスの動きを決定することができる。動き検出デバイスが、両組の画像から、動きの上方向を決定したので、動き検出デバイスは、動きが上方並進移動であると決定することができる。
【0061】
図6A〜6Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の更なる例を示す。これらの画像は、動き検出デバイスのねじれ並進移動を例示する。また、ねじれ並進移動は、動き検出デバイスの回転とみなすことができる。回転は、x方向に延びる回転軸に沿って発生する。
【0062】
図6Aは、前向きカメラによって取り込まれた第1の画像600を示す。第1の画像600は、画像600内にオブジェクト602を示す。図6Bは、前向きカメラによって取り込まれた第2の画像610を示す。第2の画像610は、第1の画像600に示されるのと同じオブジェクト602を示すが、オブジェクト602は、カメラの視軸について反時計回りに回転させられている。これは、動き検出デバイスの反時計回りの回転に対応し、ここでは、方向は、デバイスの前方から見られた場合の反時計回りを示す。したがって、動き検出デバイスは、動きの方向として反時計回りの回転を決定することができる。
【0063】
図6Cは、後向きカメラによって取り込まれた第1の画像620を示す。後向きカメラからの第1の画像620は、画像620内にオブジェクト612を示す。図6Dは、後向きカメラによって取り込まれた第2の画像640を示す。第2の画像640は、後向きカメラの第1の画像620に示されるのと同じオブジェクト612を示す。ただし、この画像は、視軸について時計回りに回転され、動きの方向としてデバイスの反時計回りの回転を表している。
【0064】
上述のように、動き検出デバイスは、2組の画像から画像並進移動の方向を比較して、デバイスの動きを決定することができる。取り込み画像は、2つのカメラについて反対方向の画像回転を示したため、デバイスの動きは、回転であると決定することができる。この回転の方向は、前面カメラにより示された回転の方向と同じであり、この例では、反時計回りである。
【0065】
代替として、動き検出デバイスは、動きの方向を比較し、デバイスの動きを決定することができる。動き検出デバイスが、両組の画像から動きの反時計回りの方向を決定したので、動き検出デバイスは、動きがカメラの視軸に沿って反時計回りの回転であったと決定することができる。
【0066】
図7A〜Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の更なる例を示す。これらの画像は、動き検出デバイスの回転を例示する。回転は、z方向に延びる回転軸に沿って発生する。
【0067】
図7Aは、前向きカメラによって取り込まれた第1の画像700を示す。第1の画像700は、画像700内にオブジェクト702を示す。図7Bは、前向きカメラによって取り込まれた第2の画像710を示す。第2の画像710は、第1の画像700に示されるのと同じオブジェクト702を示すが、オブジェクト702は、画像の右側に並進移動されている。この並進移動は、動き検出デバイスの右側への水平並進移動に対応しうる。したがって、動き検出デバイスは、動きの方向は、右向きであると決定することができる。
【0068】
図7Cは、後向きカメラによって取り込まれた第1の画像720を示す。後向きカメラからの第1の画像720は、画像720内にオブジェクト712を示す。図7Dは、後向きカメラによって取り込まれた第2の画像740を示す。第2の画像740は、後向きカメラの第1の画像720に示されるのと同じオブジェクト712を示す。ただし、この画像は、右に水平に並進移動されている。この水平並進移動は、動きの方向が、水平に左向きであることを表すことができる。
【0069】
したがって、取り込み画像におけるオブジェクトは、同じ方向に並進移動されたように見えるが、2つのカメラは、反対方向に向いているため、動き検出デバイスは、動きの反対方向を決定する。動き検出デバイスは、前向きカメラの動きの方向が右であるが、後向きカメラの動きの方向が左であることを決定する。動き検出デバイスが、2つのカメラの動きの方向が反対方向であると決定したので、動き検出デバイスは、デバイスがz軸について回転したと決定することができる。動き検出デバイスは、更に、デバイスが上方から見られた場合に回転は反時計回りであると、動きの方向から決定することができる。
【0070】
代替として、動き検出デバイスは、画像並進移動の方向に基づいて、デバイスの移動を決定することができる。動き検出デバイスは、画像並進移動の2つの方向を比較し、デバイスの動きの方向を決定することができる。したがって、前面および背面カメラ画像の両方において画像は右に並進移動したので、デバイスは、上方から見られた場合のデバイスの反時計回りの回転に対応する移動を、決定することができる。
【0071】
図8A〜8Dは、前向きカメラおよび後向きカメラによって取り込まれた画像の更なる例を示す。これらの画像は、y軸に沿った回転軸についての動き検出デバイスの回転を例示する。
【0072】
図8Aは、前向きカメラによって取り込まれた第1の画像800を示す。第1の画像800は、画像800内にオブジェクト802を示す。図8Bは、前向きカメラによって取り込まれた第2の画像810を示す。第2の画像810は、第1の画像800に示されているのと同じオブジェクト802を示すが、オブジェクト802は、上方に並進移動されている。したがって、動き検出デバイスは、動きのデバイスの方向が下方であると決定することができる。
【0073】
図8Cは、後向きカメラによって取り込まれた第1の画像820を示す。第1の画像820は、画像820内にオブジェクト812を示す。図8Dは、後向きカメラによって取り込まれた第2の画像840を示す。第2の画像840は、後向きカメラの第1の画像820に示されるのと同じオブジェクト812を示す。この画像は、下方に並進移動され、デバイスの動きの上方向を表している。
【0074】
画像並進移動の反対方向、したがって、動きの反対のデバイスの方向は、y方向に沿って位置する回転軸を中心にデバイスが回転したことを表すことができる。動き検出デバイスは、画像並進移動、または動きの方向を使用して、デバイスの右から見られた場合に回転の方向が反時計回りであると決定することができる。
【0075】
このように、動き検出デバイスは、複数のカメラによって取り込まれた画像に基づいて動きの方向を決定することができる。例では、2つのカメラのみが示されているが、3つ以上のカメラもデバイスで使用されうる。また、2つのカメラは、実質的に反対方向である視軸を有するものとして示されている。しかし、複数のカメラは、同一ではない、または完全に相関した画像をもたらさない複数の任意の視軸に沿って、配置されうる。
【0076】
画像から決定された画像並進移動、または動きのデバイスの方向を比較することによって、動き検出デバイスは、デバイスが並進移動したかまたは回転したかを決定することができる。動き検出デバイスは、例えば、2つ以上の画像におけるオブジェクトのサイズを比較することによって、視軸に平行な軸に沿った水平並進移動を決定することができる。画像並進移動および動きの決定の要約が、第1の前向きカメラおよび第2の後向きカメラを有する2つのカメラの実施形態に関する表1に示されている。
【0077】
【表1】
【0078】
デバイス並進移動および回転の例は、軸上の並進移動および回転について与えられたが、任意のデバイス並進移動または回転が、軸上の並進移動および/または回転の組み合わせに基づいて決定されうる。例えば、任意のデバイス並進移動が、各軸方向におけるデバイス並進移動の組み合わせとして決定されうる。各軸上の並進移動のベクトル和は、任意の3次元位置への並進移動と等しくなりうる。同様に、任意の恣意的な軸に沿った回転は、各軸に沿ったデバイス回転の組み合わせとして決定されうる。
【0079】
例えば、任意の方向に沿ったデバイスの並進移動は、x、y、およびz軸に沿った動きのベクトル和として決定されうる。表1から分かるように、3つの各軸に沿った並進移動は、それぞれ別の軸に沿った並進移動を含まずに決定されうる。したがって、動き検出システムは、例えば、x軸に沿った並進移動を決定し、続いて、y軸およびz軸について決定する。合計の並進移動は、各並進移動のベクトル和として決定することができる。
【0080】
更に、任意の軸に沿った回転は、各軸に沿った回転の和として決定することができる。表1から分かるように、回転の軸を決定するために使用されるカメラ画像の移動は、独立しており、したがって、独立した軸回転は、任意の軸から決定することができる。
【0081】
いくつかの回転および並進移動については、同じ画像並進移動から決定されるが、異なる画像並進移動の大きさを比較することによって、回転を並進移動と区別することができる。例えば、y軸並進移動およびz軸回転はどちらも、左または右への画像並進移動に基づいて決定することができる。しかし、カメラが互いに実質的に反対方向に配置される場合、画像並進移動の大きさは、2つのカメラからの画像についてほぼ同じになるはずである。2つのカメラからの画像並進移動の大きさが異なる場合、システムは、合成並進移動および回転を決定することができる。並進移動の大きさの差異、および差異の方向は、デバイスの並進移動または回転のいずれかに帰せられる画像並進移動の成分を決定するために使用されうる。
【0082】
図9は、例えば図1の動き検出デバイスまたは図2の動き検出デバイスに、実装することができる、動き検出プロセス900のフローチャートである。動き検出プロセス900は、動き検出デバイスが第1のカメラからの第1の画像を取り込むとき、ステップ902で開始する。前述のように、第1のカメラは、例えば、前向きカメラとすることができる。
【0083】
次に、動き検出デバイスは、ステップ904に進み、デバイスが第2のカメラからの第1の画像を取り込む。第2のカメラは、例えば、後向きカメラとすることができる。次に、動き検出デバイスは、ステップ912に進み、第1のカメラからの第2の画像を取り込む。ステップ914で、動き検出デバイスは、第2のカメラからの第2の画像を取り込む。第1および第2の各カメラからの第1および第2の画像は、例えば、メモリまたはある種のストレージ・デバイスに記憶することができる。
【0084】
次に、動き検出デバイスは、ステップ920に進み、第1のカメラからの第1の画像と第2の画像を比較する。ステップ922で、動き検出デバイスは、取り込み画像の比較に基づいて、画像並進移動を決定する。代替として、動き検出デバイスは、第1のカメラ画像から動きのデバイスの方向を決定することができる。
【0085】
次に、動き検出デバイスは、ステップ924に進み、動き検出デバイスからユーザまでの距離を決定する。先述のように、動き検出デバイスは、ユーザの顔の画像の解析を評価して、目の間の距離を決定しそれによりデバイスまでの距離を導き出すことによって、ユーザまでの距離を決定または推定することができる。
【0086】
次いで、動き検出デバイスは、ステップ930に進み、第2のカメラによって取り込まれた画像を比較する。ステップ932で、動き検出デバイスは、取り込まれた第2のカメラ画像の比較に基づいて、画像並進移動を決定する。代替として、動き検出デバイスは、第2のカメラ画像から動きのデバイスの方向を決定することができる。
【0087】
次に、動き検出デバイスは、ステップ940に進み、第1のカメラ画像から決定された画像並進移動を、第2のカメラ画像から決定された画像並進移動と比較する。動き検出デバイスは、例えば、水平または垂直並進移動の方向および回転の方向を比較することができる。ステップ950で、動き検出デバイスは、画像並進移動の比較に部分的に基づいて、デバイスの動きの方向を決定する。
【0088】
ステップ950に進むと、動き検出デバイスはまた、第1および第2のカメラ画像の各対における画像並進移動または画像回転の大きさに部分的に基づいて、デバイスの動きの大きさを決定することができる。ステップ960で、動き検出デバイスは、動きパラメータおよび1つまたは複数の画像を、図2に示されるように基地装置または別の動き検出デバイスなど他のデバイスに、通信することができる。動きパラメータは、例えば、並進移動および回転を含む動きの方向、動きの大きさ、ならびにユーザからの距離を含むことができる。これらの画像には、カメラによって取り込まれた画像のうち一部または全部が含まれうる。一実施形態では、動き検出デバイスは、後向きカメラによって取り込まれた画像を通信し、前向きカメラからの画像を通信しない。
【0089】
次いで、動き検出デバイスは、ステップ980に進み、基地装置または別の動き検出デバイスのような他のデバイスから表示信号を受け取ることができる。表示信号は、動き検出デバイスによって通信された画像および動きパラメータに部分的に基づいて生成された信号とすることができる。一実施形態では、動き検出デバイスは、基地装置から拡張現実感表示信号を受け取り、この拡張現実感信号をディスプレイに表示する。
【0090】
プロセス900の様々な工程またはステップは、別の順序で行われてもよく、図9に示された順序で行われる必要はない。また、ステップ、または機能を、プロセス900に追加しても、プロセス900から削除してもよい。追加のステップ、または機能は、プロセスの始め、プロセスの終わり、あるいは、プロセスの1つまたは複数の既存のステップの間に追加することが可能である。
【0091】
このように、複数のカメラから取り込まれた画像に部分的に基づいて動きを決定することができる動き検出デバイスが開示された。動き検出デバイスは、第1のカメラから第1の組の画像を比較し、第1の組の画像内の画像並進移動を決定することができる。動き検出デバイスはまた、第2のカメラから第2の組の画像を比較し、第2の組の画像内の画像並進移動を決定することができる。次いで、動き検出デバイスは、第1の組の画像から決定された画像並進移動を、第2の組の画像から決定された画像並進移動と比較することができる。次いで、動き検出デバイスは、この比較に部分的に基づいて動きを決定することができる。
【0092】
本明細書に開示の実施形態と関連して説明された様々な例示的論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、縮小命令セットコンピュータ(RISC)プロセッサ、特殊用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、または他のプログラマブル論理デバイス、ディスクリート・ゲートまたはトランジスタ論理、ディスクリート・ハードウェア・コンポーネント、あるいは、本明細書に記載の機能を実施するように設計されたこれらの任意の組み合わせで実装または実施されうる。汎用プロセッサは、マイクロプロセッサとすることができるが、代替形態では、任意のプロセッサ、コントローラ、マイクロコントローラ、または状態機械としてもよい。プロセッサは、コンピューティング・デバイスの組み合わせ、例えば、DSPとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、DSPコアと関連した1つまたは複数のマイクロプロセッサ、または他のそのような任意の構成として実装されうる。
【0093】
本明細書に開示の実施形態に関して説明された方法、プロセス、またはアルゴリズムの工程は、ハードウェアで直接実施しても、プロセッサによって実行されるソフトウェア・モジュールで実施しても、または、この2つの組み合わせで実施してもよい。ソフトウェア・モジュールは、RAMメモリ、フラッシュ・メモリ、不揮発性メモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブル・ディスク、CD−ROM、または、当技術分野で知られる他の任意の形態の記憶媒体において存在することができる。例示的記憶媒体は、プロセッサが情報を記憶媒体から読み取りまた記憶媒体に書き込むことができるように、プロセッサに結合される。代替形態では、記憶媒体は、プロセッサと一体化することができる。プロセッサおよび記憶媒体は、ASIC内に存在してもよい。
【0094】
開示された実施形態の上記の説明は、任意の当業者が本開示を製作するまたは使用することを可能にするために提供された。これらの実施形態に対する様々な修正は、当業者には容易に理解されるであろうし、また、本明細書に定義された一般的原理は、本開示の範囲から逸脱することなしに他の実施形態に適用されうる。したがって、本開示は、本明細書に示される実施形態に限定されるものではなく、本明細書に開示の原理および新規な特徴と一致する最も広い範囲が与えられる。
【図面の簡単な説明】
【0095】
【図1】動き検出デバイスを示す機能ブロック図である。
【図2】動き検出システムを示す機能ブロック図である。
【図3A】動き検出デバイスの一実施形態を示す図である。
【図3B】動き検出デバイスの一実施形態を示す図である。
【図3C】動き検出デバイスの一実施形態を示す図である。
【図3D】動き検出デバイスの一実施形態を示す図である。
【図4A】カメラによって取り込まれる画像の例示的例を示す図である。
【図4B】カメラによって取り込まれる画像の例示的例を示す図である。
【図4C】カメラによって取り込まれる画像の例示的例を示す図である。
【図4D】カメラによって取り込まれる画像の例示的例を示す図である。
【図5A】カメラによって取り込まれる画像の例示的例を示す図である。
【図5B】カメラによって取り込まれる画像の例示的例を示す図である。
【図5C】カメラによって取り込まれる画像の例示的例を示す図である。
【図5D】カメラによって取り込まれる画像の例示的例を示す図である。
【図6A】カメラによって取り込まれる画像の例示的例を示す図である。
【図6B】カメラによって取り込まれる画像の例示的例を示す図である。
【図6C】カメラによって取り込まれる画像の例示的例を示す図である。
【図6D】カメラによって取り込まれる画像の例示的例を示す図である。
【図7A】カメラによって取り込まれる画像の例示的例を示す図である。
【図7B】カメラによって取り込まれる画像の例示的例を示す図である。
【図7C】カメラによって取り込まれる画像の例示的例を示す図である。
【図7D】カメラによって取り込まれる画像の例示的例を示す図である。
【図8A】カメラによって取り込まれる画像の例示的例を示す図である。
【図8B】カメラによって取り込まれる画像の例示的例を示す図である。
【図8C】カメラによって取り込まれる画像の例示的例を示す図である。
【図8D】カメラによって取り込まれる画像の例示的例を示す図である。
【図9】動き検出プロセスの一実施形態を示すフローチャートである。
【特許請求の範囲】
【請求項1】
動きを検出する装置であって、
第1の視軸に沿って画像を取り込むように構成された第1のカメラと、
前記第1の視軸とは異なる第2の視軸に沿って画像を取り込むように構成された第2のカメラと、
前記第1のカメラおよび前記第2のカメラからの前記画像に基づいて、前記装置の動きを決定するように構成された動き処理部と
を備えることを特徴とする装置。
【請求項2】
前記装置の動きに基づいて画像を表示するように構成されたディスプレイを更に備えることを特徴とする請求項1に記載の装置。
【請求項3】
前記第2のカメラからの画像の少なくとも一部分を表示するように構成されたディスプレイを更に備えることを特徴とする請求項1に記載の装置。
【請求項4】
前記動き処理部は、更に、
前記装置の動きに基づくデータを基地ユニットに通信し、
通信された前記装置の動きに基づいて前記基地ユニットから情報を受信するように構成されることを特徴とする請求項1に記載の装置。
【請求項5】
前記動き処理部が受信した情報は、表示画像を含むことを特徴とする請求項4に記載の装置。
【請求項6】
前記第1の視軸および前記第2の視軸は、反対方向であることを特徴とする請求項1に記載の装置。
【請求項7】
前記第1のカメラは、前記装置の前面に配置されることを特徴とする請求項1に記載の装置。
【請求項8】
前記第2のカメラは、前記装置の後面に配置されることを特徴とする請求項1に記載の装置。
【請求項9】
前記動き処理部は、前記第1のカメラの画像の並進移動、および前記第2のカメラの画像の並進移動を決定し、前記第1のカメラの画像の並進移動、および前記第2のカメラの画像の並進移動に基づいて、前記装置の動きを決定するように構成されていることを特徴とする請求項1に記載の装置。
【請求項10】
前記第1のカメラまたは第2のカメラが取り込んだ画像の少なくとも1つは、ユーザの顔の画像を含むことを特徴とする請求項1に記載の装置。
【請求項11】
前記動き処理部は、前記ユーザの顔の画像から決定されたユーザの目の距離に基づいて、前記ユーザから前記装置までの距離を決定するように構成されていることを特徴とする請求項10に記載の装置。
【請求項12】
前記ユーザから前記装置までの前記距離に基づいて、画像を表示するように構成されたディスプレイを更に備えることを特徴とする請求項11に記載の装置。
【請求項13】
前記第1のカメラ、前記第2のカメラ、および前記動き処理部は、ポータブル装置内に含まれることを特徴とする請求項1に記載の装置。
【請求項14】
前記第1のカメラおよび第2のカメラは、前記動き処理部から遠隔のポータブル装置内に含まれることを特徴とする請求項1に記載の装置。
【請求項15】
動きを検出する装置であって、
前記装置の前面から離れる方向に向かう視軸を有し、画像を取り込むように構成された第1のカメラと、
前記装置の後面から離れる方向に向かう視軸を有し、画像を取り込むように構成された第2のカメラと、
前記第1のカメラおよび前記第2のカメラからの前記画像に基づいて、前記装置の動きを決定するように構成され、前記装置の動きに基づいて、表示画像を生成するように構成された動き処理部と、
前記動き処理部により生成された前記表示画像を表示するように構成されたディスプレイと、
を備えることを特徴とする装置。
【請求項16】
動きを検出するシステムであって、
第1の視軸に沿って配置され、第1のカメラ画像を取り込むように構成された第1のカメラと、
前記第1の視軸とは異なる第2の視軸に沿って配置され、第2のカメラ画像を取り込むように構成された第2のカメラと、
少なくとも2つの第1のカメラ画像、および少なくとも2つの第2のカメラ画像に基づいて、動きパラメータを決定するように構成された動き処理部と、
前記動きパラメータを処理し、前記動きパラメータに基づいて表示信号を生成するように構成された基地装置と、
前記基地装置によって生成された前記表示信号を表示するように構成されたディスプレイと、
を備えることを特徴とするシステム。
【請求項17】
前記基地装置は、
1つまたは複数の記憶画像を記憶するように構成されたストレージ装置と、
前記動き処理部から前記動きパラメータを受信し、前記動きパラメータに基づいて、少なくとも1つの記憶された画像を修正することによって、前記表示信号を生成するように構成された基地装置プロセッサと、
を更に備えることを特徴とする請求項16に記載のシステム。
【請求項18】
前記動き処理部は、前記第2のカメラ画像の少なくとも1つを前記基地装置に通信するように更に構成され、
前記基地装置は、前記第2のカメラ画像の前記少なくとも1つに基づいて、前記表示信号として拡張現実感信号を生成することを特徴とする請求項16に記載のシステム。
【請求項19】
前記動きパラメータは、装置の並進移動および装置の回転から選択された少なくとも1つのパラメータを含むことを特徴とする請求項16に記載のシステム。
【請求項20】
前記第1のカメラ画像の少なくとも1つは、ユーザの顔の画像を含み、
前記動き処理部は、前記ユーザの顔の画像に基づいて、前記ユーザまでの距離を推定するように更に構成され、
前記基地装置は、前記ユーザまでの距離に基づいて、前記表示信号を生成するように更に構成されることを特徴とする請求項16に記載のシステム。
【請求項21】
動きを検出する方法であって、
第1のカメラから複数の画像を受信する工程と、
第2のカメラから複数の画像を受信する工程と、
前記第1のカメラの画像に基づいて第1の画像の並進移動を決定する工程と、
前記第2のカメラの画像に基づいて第2の画像の並進移動を決定する工程と、
前記第1の画像の並進移動と、前記第2の画像の並進移動と、を比較する工程と、
前記比較に基づいて装置の動きを決定する工程と、
を含むことを特徴とする方法。
【請求項22】
前記装置の前記動きに基づいて表示画像を生成する工程と、
前記表示画像を表示する工程と、
を更に含むことを特徴とする請求項21に記載の方法。
【請求項23】
前記第1のカメラからの前記複数の画像はユーザの顔の画像を含み、前記方法は、更に、
前記ユーザの顔の画像から、ユーザの目からの距離を決定する工程と、
前記ユーザの目からの距離に基づいて、前記ユーザから前記装置までの距離を推定する工程と、
を含むことを特徴とする請求項21に記載の方法。
【請求項24】
前記装置の動きと、前記ユーザから前記装置までの距離とに基づいて、表示画像を生成する工程と、
前記表示画像を表示する工程と、
を更に含むことを特徴とする請求項23に記載の方法。
【請求項25】
前記第2のカメラから複数の画像を受信する工程は、前記第1のカメラに対して反対方向に配置された前記第2のカメラから、画像を受信する工程を含むことを特徴とする請求項21に記載の方法。
【請求項26】
動きを検出する方法であって、
第1の視軸に沿って取り込まれた画像と、前記第1の視軸に対して反対方向の第2の視軸に沿って取り込まれた画像と、から決定された、動きパラメータを受信する工程と、
複数の記憶された画像から表示画像を取り出す工程と、
前記動きパラメータに基づいて前記表示画像を修正する工程と、
前記修正された表示画像をポータブル装置に通信する工程と、
を含むことを特徴とする方法。
【請求項27】
前記第1の視軸に沿って取り込まれた少なくとも1つの画像を受信する工程と、
前記受信した画像に基づいて前記表示画像を修正する工程と、
を更に含むことを特徴とする請求項26に記載の方法。
【請求項28】
前記受信した画像に基づいて前記表示画像を修正する工程は、前記受信した画像に基づいて拡張現実感画像を生成する工程を含むことを特徴とする請求項27に記載の方法。
【請求項29】
装置の動きの決定するプログラムを記憶したコンピュータ可読の記憶媒体であって、当該プログラムが、
第1のカメラから複数の画像を受信するためのコードと、
第2のカメラから複数の画像を受信するためのコードと、
前記第1のカメラの画像に基づいて第1の画像の並進移動を決定するためのコードと、
前記第2のカメラの画像に基づいて第2の画像の並進移動を決定するためのコードと、
前記第1の画像の並進移動と、前記第2の画像の並進移動と、を比較するためのコードと、
前記比較に基づいて前記装置の動きを決定するためのコードと、
を含むことを特徴とする記憶媒体。
【請求項30】
修正された表示画像の通信を実行するプログラムを記憶したコンピュータ可読の記憶媒体であって、当該プログラムが、
第1の視軸に沿って取り込まれた画像と、前記第1の視軸に対して反対方向の第2の視軸に沿って取り込まれた画像と、から決定された、動きパラメータを受信するためのコードと、
複数の記憶された画像から表示画像を取り出すためのコードと、
前記動きパラメータに基づいて前記表示画像を修正するためのコードと、
前記修正された表示画像をポータブル装置に通信するためのコードと、
を含むことを特徴とする記憶媒体。
【請求項31】
動き検出システムであって、
第1の視軸に沿ってゲーム・コントローラの第1の側面に配置され、第1のカメラ画像を取り込むように構成された第1のカメラと、
前記第1の視軸に対して反対方向の第2の視軸に沿って前記ゲーム・コントローラに配置され、第2のカメラ画像を取り込むように構成された第2のカメラと、
前記第1および第2のカメラと通信し、少なくとも2つの第1のカメラ画像、および少なくとも2つの第2のカメラ画像に基づいて、動きパラメータを決定するように構成された動き処理部と、
前記動きパラメータに基づいて、ストレージ装置から表示信号を取り出すように構成されたプロセッサと、
前記ゲーム・コントローラ上に配置され、基地装置によって生成された前記表示信号を表示するように構成されたディスプレイと、
を備えることを特徴とするシステム。
【請求項32】
前記プロセッサおよびストレージ装置は、前記ゲーム・コントローラに対して外部のゲーム・コンソール内に含まれることを特徴とする請求項31に記載のシステム。
【請求項33】
前記プロセッサおよびストレージ装置は、前記ゲーム・コントローラ内に含まれることを特徴とする請求項31に記載のシステム。
【請求項34】
前記ストレージ装置は、ゲーム画像を記憶させた記憶媒体を備えることを特徴とする請求項31に記載のシステム。
【請求項35】
前記ゲーム・コントローラは、ユーザ入力を受信するように構成された少なくとも1つの入力装置を備えることを特徴とする請求項31に記載のシステム。
【請求項1】
動きを検出する装置であって、
第1の視軸に沿って画像を取り込むように構成された第1のカメラと、
前記第1の視軸とは異なる第2の視軸に沿って画像を取り込むように構成された第2のカメラと、
前記第1のカメラおよび前記第2のカメラからの前記画像に基づいて、前記装置の動きを決定するように構成された動き処理部と
を備えることを特徴とする装置。
【請求項2】
前記装置の動きに基づいて画像を表示するように構成されたディスプレイを更に備えることを特徴とする請求項1に記載の装置。
【請求項3】
前記第2のカメラからの画像の少なくとも一部分を表示するように構成されたディスプレイを更に備えることを特徴とする請求項1に記載の装置。
【請求項4】
前記動き処理部は、更に、
前記装置の動きに基づくデータを基地ユニットに通信し、
通信された前記装置の動きに基づいて前記基地ユニットから情報を受信するように構成されることを特徴とする請求項1に記載の装置。
【請求項5】
前記動き処理部が受信した情報は、表示画像を含むことを特徴とする請求項4に記載の装置。
【請求項6】
前記第1の視軸および前記第2の視軸は、反対方向であることを特徴とする請求項1に記載の装置。
【請求項7】
前記第1のカメラは、前記装置の前面に配置されることを特徴とする請求項1に記載の装置。
【請求項8】
前記第2のカメラは、前記装置の後面に配置されることを特徴とする請求項1に記載の装置。
【請求項9】
前記動き処理部は、前記第1のカメラの画像の並進移動、および前記第2のカメラの画像の並進移動を決定し、前記第1のカメラの画像の並進移動、および前記第2のカメラの画像の並進移動に基づいて、前記装置の動きを決定するように構成されていることを特徴とする請求項1に記載の装置。
【請求項10】
前記第1のカメラまたは第2のカメラが取り込んだ画像の少なくとも1つは、ユーザの顔の画像を含むことを特徴とする請求項1に記載の装置。
【請求項11】
前記動き処理部は、前記ユーザの顔の画像から決定されたユーザの目の距離に基づいて、前記ユーザから前記装置までの距離を決定するように構成されていることを特徴とする請求項10に記載の装置。
【請求項12】
前記ユーザから前記装置までの前記距離に基づいて、画像を表示するように構成されたディスプレイを更に備えることを特徴とする請求項11に記載の装置。
【請求項13】
前記第1のカメラ、前記第2のカメラ、および前記動き処理部は、ポータブル装置内に含まれることを特徴とする請求項1に記載の装置。
【請求項14】
前記第1のカメラおよび第2のカメラは、前記動き処理部から遠隔のポータブル装置内に含まれることを特徴とする請求項1に記載の装置。
【請求項15】
動きを検出する装置であって、
前記装置の前面から離れる方向に向かう視軸を有し、画像を取り込むように構成された第1のカメラと、
前記装置の後面から離れる方向に向かう視軸を有し、画像を取り込むように構成された第2のカメラと、
前記第1のカメラおよび前記第2のカメラからの前記画像に基づいて、前記装置の動きを決定するように構成され、前記装置の動きに基づいて、表示画像を生成するように構成された動き処理部と、
前記動き処理部により生成された前記表示画像を表示するように構成されたディスプレイと、
を備えることを特徴とする装置。
【請求項16】
動きを検出するシステムであって、
第1の視軸に沿って配置され、第1のカメラ画像を取り込むように構成された第1のカメラと、
前記第1の視軸とは異なる第2の視軸に沿って配置され、第2のカメラ画像を取り込むように構成された第2のカメラと、
少なくとも2つの第1のカメラ画像、および少なくとも2つの第2のカメラ画像に基づいて、動きパラメータを決定するように構成された動き処理部と、
前記動きパラメータを処理し、前記動きパラメータに基づいて表示信号を生成するように構成された基地装置と、
前記基地装置によって生成された前記表示信号を表示するように構成されたディスプレイと、
を備えることを特徴とするシステム。
【請求項17】
前記基地装置は、
1つまたは複数の記憶画像を記憶するように構成されたストレージ装置と、
前記動き処理部から前記動きパラメータを受信し、前記動きパラメータに基づいて、少なくとも1つの記憶された画像を修正することによって、前記表示信号を生成するように構成された基地装置プロセッサと、
を更に備えることを特徴とする請求項16に記載のシステム。
【請求項18】
前記動き処理部は、前記第2のカメラ画像の少なくとも1つを前記基地装置に通信するように更に構成され、
前記基地装置は、前記第2のカメラ画像の前記少なくとも1つに基づいて、前記表示信号として拡張現実感信号を生成することを特徴とする請求項16に記載のシステム。
【請求項19】
前記動きパラメータは、装置の並進移動および装置の回転から選択された少なくとも1つのパラメータを含むことを特徴とする請求項16に記載のシステム。
【請求項20】
前記第1のカメラ画像の少なくとも1つは、ユーザの顔の画像を含み、
前記動き処理部は、前記ユーザの顔の画像に基づいて、前記ユーザまでの距離を推定するように更に構成され、
前記基地装置は、前記ユーザまでの距離に基づいて、前記表示信号を生成するように更に構成されることを特徴とする請求項16に記載のシステム。
【請求項21】
動きを検出する方法であって、
第1のカメラから複数の画像を受信する工程と、
第2のカメラから複数の画像を受信する工程と、
前記第1のカメラの画像に基づいて第1の画像の並進移動を決定する工程と、
前記第2のカメラの画像に基づいて第2の画像の並進移動を決定する工程と、
前記第1の画像の並進移動と、前記第2の画像の並進移動と、を比較する工程と、
前記比較に基づいて装置の動きを決定する工程と、
を含むことを特徴とする方法。
【請求項22】
前記装置の前記動きに基づいて表示画像を生成する工程と、
前記表示画像を表示する工程と、
を更に含むことを特徴とする請求項21に記載の方法。
【請求項23】
前記第1のカメラからの前記複数の画像はユーザの顔の画像を含み、前記方法は、更に、
前記ユーザの顔の画像から、ユーザの目からの距離を決定する工程と、
前記ユーザの目からの距離に基づいて、前記ユーザから前記装置までの距離を推定する工程と、
を含むことを特徴とする請求項21に記載の方法。
【請求項24】
前記装置の動きと、前記ユーザから前記装置までの距離とに基づいて、表示画像を生成する工程と、
前記表示画像を表示する工程と、
を更に含むことを特徴とする請求項23に記載の方法。
【請求項25】
前記第2のカメラから複数の画像を受信する工程は、前記第1のカメラに対して反対方向に配置された前記第2のカメラから、画像を受信する工程を含むことを特徴とする請求項21に記載の方法。
【請求項26】
動きを検出する方法であって、
第1の視軸に沿って取り込まれた画像と、前記第1の視軸に対して反対方向の第2の視軸に沿って取り込まれた画像と、から決定された、動きパラメータを受信する工程と、
複数の記憶された画像から表示画像を取り出す工程と、
前記動きパラメータに基づいて前記表示画像を修正する工程と、
前記修正された表示画像をポータブル装置に通信する工程と、
を含むことを特徴とする方法。
【請求項27】
前記第1の視軸に沿って取り込まれた少なくとも1つの画像を受信する工程と、
前記受信した画像に基づいて前記表示画像を修正する工程と、
を更に含むことを特徴とする請求項26に記載の方法。
【請求項28】
前記受信した画像に基づいて前記表示画像を修正する工程は、前記受信した画像に基づいて拡張現実感画像を生成する工程を含むことを特徴とする請求項27に記載の方法。
【請求項29】
装置の動きの決定するプログラムを記憶したコンピュータ可読の記憶媒体であって、当該プログラムが、
第1のカメラから複数の画像を受信するためのコードと、
第2のカメラから複数の画像を受信するためのコードと、
前記第1のカメラの画像に基づいて第1の画像の並進移動を決定するためのコードと、
前記第2のカメラの画像に基づいて第2の画像の並進移動を決定するためのコードと、
前記第1の画像の並進移動と、前記第2の画像の並進移動と、を比較するためのコードと、
前記比較に基づいて前記装置の動きを決定するためのコードと、
を含むことを特徴とする記憶媒体。
【請求項30】
修正された表示画像の通信を実行するプログラムを記憶したコンピュータ可読の記憶媒体であって、当該プログラムが、
第1の視軸に沿って取り込まれた画像と、前記第1の視軸に対して反対方向の第2の視軸に沿って取り込まれた画像と、から決定された、動きパラメータを受信するためのコードと、
複数の記憶された画像から表示画像を取り出すためのコードと、
前記動きパラメータに基づいて前記表示画像を修正するためのコードと、
前記修正された表示画像をポータブル装置に通信するためのコードと、
を含むことを特徴とする記憶媒体。
【請求項31】
動き検出システムであって、
第1の視軸に沿ってゲーム・コントローラの第1の側面に配置され、第1のカメラ画像を取り込むように構成された第1のカメラと、
前記第1の視軸に対して反対方向の第2の視軸に沿って前記ゲーム・コントローラに配置され、第2のカメラ画像を取り込むように構成された第2のカメラと、
前記第1および第2のカメラと通信し、少なくとも2つの第1のカメラ画像、および少なくとも2つの第2のカメラ画像に基づいて、動きパラメータを決定するように構成された動き処理部と、
前記動きパラメータに基づいて、ストレージ装置から表示信号を取り出すように構成されたプロセッサと、
前記ゲーム・コントローラ上に配置され、基地装置によって生成された前記表示信号を表示するように構成されたディスプレイと、
を備えることを特徴とするシステム。
【請求項32】
前記プロセッサおよびストレージ装置は、前記ゲーム・コントローラに対して外部のゲーム・コンソール内に含まれることを特徴とする請求項31に記載のシステム。
【請求項33】
前記プロセッサおよびストレージ装置は、前記ゲーム・コントローラ内に含まれることを特徴とする請求項31に記載のシステム。
【請求項34】
前記ストレージ装置は、ゲーム画像を記憶させた記憶媒体を備えることを特徴とする請求項31に記載のシステム。
【請求項35】
前記ゲーム・コントローラは、ユーザ入力を受信するように構成された少なくとも1つの入力装置を備えることを特徴とする請求項31に記載のシステム。
【図1】
【図2】
【図3A】
【図3B】
【図3C】
【図3D】
【図4A】
【図4B】
【図4C】
【図4D】
【図5A】
【図5B】
【図5C】
【図5D】
【図6A】
【図6B】
【図6C】
【図6D】
【図7A】
【図7B】
【図7C】
【図7D】
【図8A】
【図8B】
【図8C】
【図8D】
【図9】
【図2】
【図3A】
【図3B】
【図3C】
【図3D】
【図4A】
【図4B】
【図4C】
【図4D】
【図5A】
【図5B】
【図5C】
【図5D】
【図6A】
【図6B】
【図6C】
【図6D】
【図7A】
【図7B】
【図7C】
【図7D】
【図8A】
【図8B】
【図8C】
【図8D】
【図9】
【公表番号】特表2008−502206(P2008−502206A)
【公表日】平成20年1月24日(2008.1.24)
【国際特許分類】
【出願番号】特願2007−515077(P2007−515077)
【出願日】平成17年4月15日(2005.4.15)
【国際出願番号】PCT/US2005/012650
【国際公開番号】WO2005/122582
【国際公開日】平成17年12月22日(2005.12.22)
【出願人】(397058932)エレクトロニック アーツ インコーポレイテッド (9)
【Fターム(参考)】
【公表日】平成20年1月24日(2008.1.24)
【国際特許分類】
【出願日】平成17年4月15日(2005.4.15)
【国際出願番号】PCT/US2005/012650
【国際公開番号】WO2005/122582
【国際公開日】平成17年12月22日(2005.12.22)
【出願人】(397058932)エレクトロニック アーツ インコーポレイテッド (9)
【Fターム(参考)】
[ Back to top ]