説明

近距離動作のトラッキングのシステムおよび方法

【課題】ユーザの手および指の動きをトラッキングし、トラッキングデータを用いて装置とのユーザの相互作用を制御するための高度な方法を提供する。
【解決手段】近距離の対象物をトラッキングするためのシステムおよび方法において、奥行きセンサ110を用いて、ユーザの手および指またはその他の対象物の近距離の奥行き画像が取得される。奥行きセンサから得られる奥行き画像データを用いて、ユーザの手および指またはその他の対象物の動きが特定されてトラッキングされる。そして、ユーザの手および指または他の対象物の位置や動きを用いて、ユーザは、画面に表示される対象物と相互作用することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本開示は、対象物のトラッキングに有効な方法および装置に関するものであり、より具体的には、ユーザの手および指の動きをトラッキングし、トラッキングデータを用いて装置とのユーザの相互作用を制御するための高度な方法を提供するシステム、方法および装置に関する。
【0002】
本願は、2011年6月23日に出願された「電子装置との相互作用のためのユーザ動作の特定およびトラッキングの方法システム」と題する米国仮特許出願61/500,480に基づく優先権を主張しており、この米国仮特許出願は、参照によって本願に組み込まれる。
【背景技術】
【0003】
大体において、コンピュータやタブレットや携帯電話などの電子装置との人の相互作用では、物理的に制御装置を操作し、ボタンを押下し、またはスクリーンをタッチすることを要する。例えば、ユーザは、キーボードとマウスなどの入力装置を介して、コンピュータと相互作用する。キーボードとマウスは、テキスト入力やドキュメントのスクロールなどの機能に有効であるが、キーボードとマウスは、ユーザが電子装置と相互作用する多くの他の方法には有効ではない。マウスを把持するユーザの手は、平らな2次元の表面に沿ってのみ動くように制限されており、3次元の仮想空間でマウスを操作(ナビゲート)することは、使いにくく非直感的である。同様に、タッチスクリーンの平らなインターフェイスは、ユーザに奥行きの概念をもたらさない。これらの装置は、手と指のあらゆる動きを、技術の制約に従う2次元の限定された一部の動きに制限する。
【図面の簡単な説明】
【0004】
ユーザの相互作用の経験を供給し、動きを自動的に定義して特定するシステムおよび方法の例を図面に示す。この例および図面は、限定ではなく一例である。
【図1】いくつかの実施形態における、近距離の対象物トラッキングシステムの構成要素の例を示す概略図である。
【図2】いくつかの実施形態における、近距離の対象物トラッキングシステムによる動作トラッキング工程の一例を示すワークフロー図である。
【図3】いくつかの実施形態における、トラッキングされた手のジェスチャーの画像の例を示す図である。
【図4】いくつかの実施形態における、近距離の対象物トラッキングシステムによる動作トラッキング工程の一例を示すワークフロー図である。
【図5】いくつかの実施形態における、近距離の対象物トラッキングシステムによる動作トラッキング工程の他の例を示すワークフロー図である。
【発明を実施するための形態】
【0005】
近距離の対象物のトラッキングのためのシステムおよび方法を説明する。ユーザの手および指または他の対象の近距離の奥行き画像は、奥行きセンサを用いて取得される。奥行きセンサから取得される奥行き画像データを用いて、ユーザの手および指または他の対象の動作が特定され、トラッキングされる。ユーザの手および指または他の対象は、画面上の表現(描写)として示され、ここで、表現(描写)は、表示されて、特定される動作に対応するジェスチャーを実施する。ユーザの手および指または他の対象物の表現は、画面上に表示される他の対象物と相互作用しうる。
【0006】
本発明の種々の態様および例を説明する。以下の記載では、これらの例の記載の十分な理解と実施可能な記載のために具体的詳細を提供する。また、当業者であれば、多くのこれらの詳細なしで実施し得る。更に、いくつかの周知の構造や機能は、関連する記載を不必要に分かり難くすることがないように、詳細に表示または記載されていない。
【0007】
以下の記載中の用語は、たとえ、ある特定の技術例の詳細な記載で用いられているとしても、その用語の最も広く合理的な態様で解釈されるものである。特定の用語は、以下で強調されうるが、限定的な態様での解釈を目的とする用語は、いかなるものも、この詳細な説明のセクションで、公然かつ明確に定義される。
【0008】
例えば、ユーザがジェスチャーコントロールを通して電子システムまたは電子装置と相互作用しているとき、対象物の動作のトラッキングは、ユーザまたは対象物が行っている動作またはジェスチャーを認識するシステムを必要とする。この開示目的のために、「ジェスチャー認識」という用語が、ユーザによって実行される特定の動作またはポーズ形状を特定する方法を言及するために用いられる。例えば、ジェスチャー認識は、一定の速さで一定の方向へのマウスパッド上のスワイプまたはタッチスクリーン上の一定形状をトレースする指または手振りを特定することに言及する。システムは、特定のハードウェア/ソフトウェアとのユーザインターフェイスの相互作用を説明するデータを分析することで、特定のジェスチャーが実行されているか否かを決定する。即ち、ジェスチャーを実行するために用いられている対象物を検知またはトラッキングするいくつかの方法がある。タッチスクリーンの場合、その方法は、スクリーン上のユーザのタッチを検知するために用いられるハードウェア技術とソフトウェア技術との組み合わせである。奥行きセンサ型システムの場合、その方法は、一般的に、ユーザの関節や体部の一部を特定してトラッキングするのに必要なハードウェア技術とソフトウェア技術との組み合わせである。
【0009】
一般的なジェスチャーコントロールまたは対象物のトラッキングによるシステム相互作用の上記例では、トラッキング部は、動作認識とトラッキングとを可能にする。ジェスチャー認識は、ジェスチャー認識がトラッキング部から出力されるデータを受け取り、事前に定義(決定)されたジェスチャーが実行されたか否かを決定すべく、データを処理する点で、トラッキングの処理(工程)とは異なっている。一旦、ジェスチャーが認識されると、そのジェスチャーは、例えば、電子装置におけるアプリケーションやゲームで、動作をもたらすように用いられる。ジェスチャー認識が用いられる例としては、ユーザが手を振って部屋で明かりを消すときである。
【0010】
対象物トラッキングシステムへの入力は、タッチスクリーン(シングルタッチまたはマルチタッチ)などのいくつかの異なる入力装置からもたらされるユーザの動作と、2D(赤、緑、青またはRGBとして知られる)カメラで保存されるやユーザの動作と、奥行きセンサを用いて保存されるユーザの動作とを説明するデータである。他の適用では、対象物トラッキングシステムは、動作またはジェスチャー認識のために、加速度計および重量計からのデータを用いることができる。
【0011】
2010年6月16日に出願された「奥行きマップから対象物をモデル化する方法およびシステム」と題する米国特許出願12/817,102では、奥行きセンサを用いてプレーヤをトラッキングし、ユーザの体部の関節を特定しトラッキングする方法を記載している。これは全体として、本願に組み込まれる。2012年4月6日に出願された「改良された対象物トラッキングの方法およびシステム」と題する米国特許出願13/441,271では、飛行時間型(TOF)カメラからの奥行きデータと振幅データとの組み合わせを用いて、ユーザの体部を特定してトラッキングする方法を記載しており、これは全体として、本願に組み込まれる。
【0012】
ロバスト動作またはジェスチャー認識は、実行がかなり難しい。具体的には、システムは、ユーザの目的を正確に解釈し、異なるユーザ間の動作の違いを調整し、動作が適用可能なコンテキスト(背景)を決定する。
【0013】
システムや装置との柔軟で自然、直感的な相互作用の方法は、表示画面で3次元上のユーザの手や指の動きを解するシステムのためのものであって、従って、人の手や指のあらゆる構造および動きを補助する。本質的に、通常の2次元タッチスクリーンは、ジェスチャーおよび相互作用のあらゆる表現を補助する3次元の相互作用空間であって、より自由度が高く、制約が少なく、より直感的な3次元の相互作用空間に拡張される。
【0014】
このより自然的に、直感的なタイプの相互作用にするには、システムは、ユーザの手および指の構造、動きを完全に特定できなくてはならない。RGBカメラなどの従来のカメラでは、これらのカメラによって生成されるデータが正確かつ確実に読み取ることが難しいので、この目的には不十分である。特に、画像の対象物は、背景と区別することが難しく、データは、光の状態に影響を受け、画像上の異なる対象物間では、オクルージョンが生じる。対照的に、近距離で手や指や他の対象物をトラッキングするための奥行きセンサを用いると、ユーザの手や指や対象物の高精度かつロバストなトラッキングを補助するデータを生成でき、この新規で直感的で効果的な態様がシステムや装置と相互作用することを可能にする。
【0015】
奥行きセンサは、取得した画像の各ピクセルのために奥行きデータを取得するセンサとして定義される。ここで、奥行きとは、対象物とセンサ自体との間の距離である。この目的のために奥行きセンサによって用いられるいくつかの異なる技術がある。これらの中には、飛行時間型(TOFのスキャンまたは配列TOFを含む)、構造化された照明、レーザ・スペックル・パターン技術、立体カメラ、アクティブな立体カメラに依存するセンサがある。それぞれの場合において、これらのカメラは、ピクセルの固定解像度を有する画像を生成する。ここで、通常は整数値である値は、各ピクセルに関連付けられており、これらの値は、画像領域に投影された対象物のセンサからの距離に対応する。奥行きデータに加えて、センサは、従来のカラーカメラが行うのと同じように、カラーデータを生成することがあり、このデータは、処理で用いるために、奥行きデータと組み合わせることができる。
【0016】
奥行きセンサによって生成されるデータは、従来の2Dカメラによって生成されるデータに対し、いくつかの利点がある。奥行きセンサのデータは、前景から背景を分ける問題を大幅に簡素化する。また、奥行きセンサのデータは、一般的に照明条件の変化に対してロバストであり、オクルージョンを読み取るために効果的に用いられ得る。奥行きセンサを用いて、リアルタイムでユーザの手と指との両方を特定し、トラッキングすることができる。ユーザの手や指の位置データの知識は、装置との相互作用が自然で直感的である仮想的な3Dタッチスクリーンを有効にするために用いられる。手や指の動きは、例えば、コンピュータ、タブレット、携帯電話、携帯ゲーム機、自動車のダッシュボード制御装置などの様々なシステム、装置、および/または電子デバイスとのユーザの相互作用に動力供給し得る。さらに、このインターフェイスによって有効にされるアプリケーションおよび相互作用は、現実性を増す生産性ツールやゲーム、エンターテインメントシステムのコントロール(例えば、メディアセンターなど)、人間と電子装置間の他の多くの通信形態を含む。
【0017】
本開示は、近距離で対象物をより正確に特定し、トラッキングし、確実にユーザの動きやジェスチャーを処理するために、奥行きセンサの画像の使用方法について説明する。本明細書中で用いられる「近距離」とは、例えば、一般的にシステムや装置との物理的な接続からユーザが実質的な個人用装置と相互作用する、実質的な個人用空間または領域を指す。従って、一実施形態では、近距離の奥行き画像は、限定はされないが一般的に30cmから50cmの範囲内で取得される。一実施形態では、近距離の奥行き画像は、0から3mの範囲内で取得され得る。いくつかの実施形態では、奥行き画像は、環境、画面サイズ、装置サイズ、奥行きセンサの分解能、奥行きセンサ精度等に応じて、3mより大きい距離で取得することができる。
【0018】
図1について説明する。図1は、いくつかの実施形態に係る、近距離の対象物トラッキングシステム100の構成要素、および、これらの構成要素間のワークフローの概略図である。近距離の対象物トラッキングシステム100は、例えば、奥行きカメラ115、近距離イメージトラッキングモジュール135、ジェスチャー認識モジュール140、出力モジュール145、ソフトウェア・アプリケーション150を含むことができる。追加的なまたは少数の構成要素またはモジュールは、システム100および図示される各構成要素に含むことができる。例えば、奥行きカメラ115は、奥行きデータと奥行きマップを作成するために奥行きデータを処理する奥行きプロセッサ120とを取得する奥行きイメージセンサ110を含むことができる。奥行きプロセッサ120によって実行される処理ステップは、奥行きイメージセンサ110によって用いられる特定の技術であって、例えば構造化された照明およびTOF技術などの特定の技術に依存する。また、奥行きカメラ115は、例えば1または複数のレンズ、光源、電子制御装置など他の構成要素(図示せず)を含むことができる。
【0019】
本明細書中で用いられる「モジュール」は、汎用、専用または共有プロセッサと、一般的に、プロセッサによって実行されるファームウェアまたはソフトウェアのモジュールとを含む。実施仕様またはその他の考慮事項に応じて、モジュールは、集中または機能分散され得る。モジュールは、プロセッサによる実行のために、コンピュータ読み取り可能な(記憶)媒体に統合される、汎用または特殊目的のハードウェア、ファームウェアまたはソフトウェアを含むことができる。本明細書中で用いられるように、コンピュータ読み取り可能な媒体またはコンピュータ読み取り可能な記憶媒体は、法定(例えば、米国では、35USC101)のすべての媒体を含み、かつ、有効なコンピュータ読み取り可能な(記憶)媒体を含む請求項に必要となる除外の程度まで非法定であるすべての媒体を明確に除外する。既知の法定のコンピュータ読み取り可能な媒体は、ハードウェア(例えば、いくつかの名称を指定するレジスタ、ランダムアクセスメモリ(RAM)、不揮発性(NV)ストレージ)を含むが、ハードウェアに限定または限定されない。
【0020】
図1に示されるように、システム100は、ユーザの手、頭、足、腕、顔、またはその他の対象物などのオブジェクト105をトラッキング(追跡)する。ここで、対象物は通常、イメージセンサ110に近い範囲内に配置される。システム100は、近距離の対象物を感知する奥行きカメラ115を含むことができる。奥行きカメラ115は、対象物を特定し、近距離の対象物の動きを検出して、さらに細かい動きをも検出すべく、奥行きカメラ115によって生成された画像を用いるイメージトラッキングモジュール135を補助する。例えば、奥行きカメラ115は、指、唇、その他の顔要素、つま先などの細かい微妙な動きを検出するために、十分なピクセルの解像度と正確な奥行きデータ値とを提供するように構成することができる。
【0021】
システム100は、さらに対象物トラッキングを実行するための近距離イメージトラッキングモジュール135を含むことができる。いくつかの実施形態では、トラッキングモジュール135は、システム100が近距離の奥行きデータを利用できるようにするために、例えば、奥行き画像データに適切なアルゴリズムを適用することによって、奥行きカメラ115からの奥行きデータを処理できる。トラッキングモジュール135は、近距離の光学設定と条件とに基づいて、奥行き画像データを処理できる。トラッキングモジュール135は、例えば、可能な限り同時に、1または複数の対象物に対して、対象物の有無、動き、距離、速度などの処理、計算、特定および/または決定ができる。近距離イメージトラッキングモジュール135は、例えば、顔の動き、足の動き、頭の動き、腕の動き、または他の適切な対象物の動きの検出および/またはトラッキングを可能にするために、例えば、近距離のトラッキングのためのソフトウェアコードやアルゴリズムを実行し得る。一例では、トラッキングモジュール135は、人間の動きをトラッキングすることができ、トラッキングモジュール135の出力は、人間の骨格を表現することができる。
【0022】
同様に、ユーザの手や指がトラッキングされている場合にのみ、トラッキングモジュール135の出力は、ユーザの手の骨格を表現することができる。手の骨格の表現は、骨格の関節の位置を含むことができ、また、中心点に対する関節の回転を含むことができる。また、これらの要素の一部を含むことができる。さらに、モジュール135の出力は、トラッキングされている対象物の重心、または、奥行きカメラ115によって提供されるデータを処理することにより取得できる他の有用なデータなどの他の特徴を含むことができる。
【0023】
さらに、近距離イメージトラッキングモジュール135は、奥行きカメラ115からデータを受信すると、例えば、各指のうち特定の動いている指の動き、および、各指の動きに対応する全体の動きを特定するために、各手の異なる指などの特定の対象物の形状および/または機能を特定するように構成されることができる。
【0024】
いくつかの実施形態では、近距離のイメージトラッキングモジュール135は、動きの速さ、動きの進歩などに応じて、対象物の運動強度を特定し、決定するように構成されることができ、それによって、動きの力の向きを検出し利用することができる。
【0025】
いくつかの実施形態では、近距離のイメージトラッキングモジュール135は、異なる指や指の組み合わせによるジェスチャーを認識することができるように、複数の指の動きをトラッキングするように構成することができる。
【0026】
いくつかの実施形態では、近距離トラッキングのためのコードやアルゴリズムは、例えば、顔の動き、足の動き、頭の動き、腕の動き、または他の適切な対象物の動きを検出および/またはトラッキングするために用いられることができる。
【0027】
さらに、システム100は、感知したデータを分類するために、動作またはジェスチャー認識モデル140を含むことができ、それによって、対象物の動きの認識と決定を補助する。ジェスチャー認識モデル140は、例えば、対象物が動いたり、合図したり、身振りしたりしているかなどを決定したり、特定のジェスチャーが実行されたかなどを特定するために用いられる出力を生成することができる。
【0028】
さらに、システム100は、ユーザコマンドまたはアクションが外部プラットフォームやコンソールなどに十分に出力できるようにすべく、ジェスチャーデータなど加工されたトラッキングデータを処理するための出力モジュール145を含むことができる。
【0029】
さらに、システム100は、ソフトウェア・アプリケーション150を含むことができ、ソフトウェア・アプリケーション150は、出力モジュール145からの出力を受け取り、それをソフトウェア・アプリケーションのコンテキスト内で使用する。ソフトウェア・アプリケーション150は、ゲームまたは装置とのユーザの相互作用を制御するプログラムであり、それ以外の場合は、ソフトウェア・アプリケーション150は、奥行きカメラ115によって感知されて処理された動作(動きの)データを利用することができる。
【0030】
一実施形態では、システム100はさらに、ディスプレイ155を含むことができる。ディスプレイは、ユーザに視覚的なフィードバックを提供する。視覚的なフィードバックは、ユーザのジェスチャーの表現を含むことができ、ここで、表現に関連する情報は出力モジュール145から受信される。視覚的なフィードバックは、1または複数の仮想オブジェクトを有するユーザのジェスチャー表現の相互作用を含むことができ、ここで、相互作用に関連する情報は、ソフトウェア・アプリケーション150から受信される。
【0031】
図2について説明する。図2は、奥行きカメラ115によって生成されたデータにトラッキングモジュール135を用いて、ユーザの手と指をトラッキングするプロセスの例である。図2に示すように、ブロック205では、ユーザの手は、奥行きカメラ115から得られた奥行き画像データから特定される。手は、セグメンテーションおよび/または分類アルゴリズムを用いて、ノイズや不要な背景データを除去することで背景から分けられる。
【0032】
ブロック210では、奥行き画像データおよび関連する振幅データおよび/または関連するRGB画像において、特徴が検出される。これらの特徴は、例えば、指先や、指の付け根が手のひらに接続している部分、および検出可能なその他の画像データである。ブロック215では、ブロック210で特定された特徴は、画像データ内の個々の指を特定するために用いられる。ブロック220では、検出されたあらゆる誤検出の特徴を除外して、かつ、隠れた部分などの奥行き画像データから欠損しているデータを埋めるべく、指が前のフレーム内の位置に基づいてトラッキングされる。
【0033】
ブロック225では、トラッキングされる指の三次元位置が奥行き画像データから得られ、ユーザの手や指の骨格モデルを構築するために用いられる。いくつかの実施形態では、運動学モデルは、対象者の関節の相対的な位置を制限するために用いられることができる。関節が隠れているためか、関節がカメラの視野外にあるために、運動学モデルは、カメラに見えていない関節の位置を計算するために用いられることもできる。
【0034】
図3A−3Eについて説明する。図3A−3Eは、検出、トラッキング、処理される微細運動の動きの例として、一連の手のジェスチャーを示す。図3A,3C、3Dは、動きの要素がない静的な手の合図のジェスチャーを示す。一方、図3B,3Eは、動的な手のジェスチャーを示す。図3Bと図3Eは、有意味で認識可能な合図やジェスチャーを構成する指の動きを示す、付加された矢印を含む。当然に、他のジェスチャーや合図は、ユーザの体の他の部分や他の対象物から検出され、トラッキングされることができる。他の例では、例えば、2本またはそれ以上の指の同時の動きなどの複数の対象物やユーザの動きからのジェスチャーや合図が、検出、トラッキング、認識、処理されることができる。
【0035】
本開示の実施形態は、以下の相互作用の形態を含むが、これに限定されない。
【0036】
一実施例では、ユーザの各指は、ディスプレイ画面上でカーソルになり得る。この方法では、ユーザは同時に、複数のアイコン(両手を使うと最大10個まで)と相互作用できる。本明細書内で用いられる「カーソル」は、他の合図、シンボル、インジケータなどであって、CRT上の位置や、キーボードから入力されて次の文字が現れたり、ユーザのアクションが必要とされる他のタイプのディスプレイ上の位置を示す、可動し時々点滅するシンボルなどの他の合図、シンボル、インジケータなどを参照することができる。
【0037】
さらに他の例では、仮想ホットフィールドは画面の前で定義することができる。ユーザは、例えば、マウスボタンをクリックするための運動をシミュレーションし、ホットフィールドで指、および/または、手を動かすことで、ディスプレイ画面上の対象物を選択できる。仮想ホットフィールドは、二次元のタッチスクリーンと同様の機能を提供するが、指/手の三次元位置を用いることができるので、より拡張的である。
【0038】
図4について説明する。図4は、近距離のトラッキングを可能にする技術に基づいて、ユーザインターフェイス(UI)フレームワークの例を示す。ジェスチャー認識コンポーネントは、「ジェスチャー分類の方法およびシステム」と題する特許7,970,176、および、「ジェスチャー認識の方法およびシステム」と題する出願番号12/707,340に記載の構成要素を含み、これらは、完全に参照によって本明細書に組み込まれる。
【0039】
ステージ400では、奥行き画像は奥行きカメラから取得される。ステージ410では、トラッキングモジュール135は、取得した奥行き画像を用いて、図2記載の機能を実行する。トラッキングモジュール135によって生成された関節位置データは、後述するように、並列に処理される。ステージ420では、関節位置のデータは、対象者の手/指の動きを仮想カーソルにマッピングまたは投影するために用いられる。選択的に、カーソルまたはコマンドツールは、対象者の1または複数の指によって制御されることができる。情報は、対象者にフィードバックを提供するために、ディスプレイ画面上に提供されることができる。仮想カーソルは、矢印や手の表現などの単純なグラフィック要素である。また、それは、UI要素の色を変更したり、またはその背後の輝きを投影することによって、(画面上のカーソルの明示的なグラフィカルな表現がない)UI要素を単に強調したり特定することができる。対象者の手の異なる部分は、仮想カーソルを動かすために用いることができる。
【0040】
いくつかの実施形態では、仮想カーソルは、対象者の手、ま??たは、1または複数の指にマッピングされることができる。例えば、人差し(ポインタ)指の動きは、仮想カーソルの動きに直接マッピングしたり、投影することができる。他の実施形態では、UI要素は、奥行きに積み重ねられている。仮想カーソルは、仮想カーソルが奥行きの異なるレベルでUI要素間を移動できるように、三次元で移動させることができる。他の実施形態では、複数の仮想カーソルであって、各々が対象者の一の指先に対応する仮想カーソルがある。他の実施形態では、スクリーンから離れる手の動きは、ズーム効果を与えることができる。あるいは、例えば人差し指と親指のように2つの指先間の距離は、画面でズームのレベルを示すために用いられることができる。
【0041】
ステージ430では、関節の位置データは、対象者によって実行されるジェスチャーを検出するために用いられる。イベントをトリガーする2つのカテゴリのジェスチャーとして、選択ジェスチャーと操作ジェスチャーとがある。選択ジェスチャーは、特定のUI要素が選択されるべきことを示す。いくつかの実施形態では、選択ジェスチャーは、手でつかむ動きであり、この動きは、対象者がUI要素を拾っているかのように、指が手のひらの中心に向かって移動する。他の実施形態では、選択ジェスチャーは、対象者が選択したいUI要素を仮想カーソルが取り囲むように、円を描いて手や指を動かすことによって実行される。当然に、他のジェスチャーを用いることも可能である。ステージ450では、システムは、選択ジェスチャーがステージ430で検出されたか否かを評価し、そして、もし検出されたなら、ステージ470では、システムは、仮想カーソルが現在1または複数のUI要素にマッピングされているかどうかを決定する。仮想カーソルがUI要素にマッピングされている場合には、UI要素はステージ490で選択され得る。
【0042】
選択ジェスチャーに加え、他のカテゴリのジェスチャーである操作ジェスチャーが定義(規定)される。操作ジェスチャーは、いくつかの方法でUI要素を操作するために用いられることができる。いくつかの実施形態では、操作ジェスチャーは、手を回転する対象者によって実行され、画面上に追加情報を表示するように、順番に、選択されたUI要素を回転させる。例えば、UI要素がファイルのディレクトリである場合、ディレクトリを回転することは、対象者がディレクトリに含まれるすべてのファイルを参照することを可能にする。操作ジェスチャーの他の例は、例えば、仮想デスクトップ上で、その内容を空にするためにUI要素を逆さまにすることを含むことができる。また、その内容を並べ替えたり、いくつかの他の効果を持つようにUI要素を振ったり、または、対象者が内側を見るようにUI要素を傾けたり、または、例えばUI要素を最小化させる効果を有するようにUI要素を握る。他の実施形態では、スワイプジェスチャーは、選択したUI要素をごみ箱に移動することができる。
【0043】
ステージ440では、システムは、操作ジェスチャーが検出されたかどうかを評価する。操作ジェスチャーが検出された場合、続いて、ステージ460では、システムは、選択されているUI要素があるかどうかを確認する。UI要素が選択されている場合、実行されたジェスチャーの特定の定義されている動作、および、システムのコンテキストに従って、UI要素は、ステージ480で操作され得る。いくつかの実施形態では、それぞれの指先で特定される1または複数のそれぞれのカーソルは、1または複数の指で、ナビゲーション、コマンド入力、または画面アイコン、対象物、データの他の操作を可能にするために、管理することができる。
【0044】
いくつかの実施形態によれば、従来の2次元のアイコンは、追加の関連情報をユーザにもたらすために、追加の次元を表示するように回転することができる。例えば、ウィンドウ・アイコンは、ディレクトリ内のファイルリストを表示し得る。ユーザが手を回転すると、ウィンドウ・アイコンが回転し、ディレクトリ内の各ファイルのサイズを示す三次元が表示される。
【0045】
いくつかの実施形態では、対象物上に手を動かして、対象物を把持するように、指を手のひらに近づけることで、ディスプレイ画面上の対象物を選択することができる。これは選択ジェスチャーの例である。
【0046】
いくつかの実施形態では、対象物が選択された後、1つの位置から他の位置に迅速に手を動かして、手のスワイプジェスチャーでごみ箱の中に対象物を置くことができる。これは、操作ジェスチャーの例である。
【0047】
いくつかの実施形態では、画面からの距離は、画面上の指や手の位置の二次元投影と組み合わせて用いられることができる。例えば、ユーザは、アイコンの周りに円を描くように指を動かすことにより、ディスプレイ画面上のアイコンまたは一群のアイコンを示すことができる。ユーザは、画面から手/指を離すように動かすと、それに応じて、円の大きさは拡大または縮小される。そして、円の内側の画面上の選択領域を変更し、選択されているアイコンの数を変更する。
【0048】
いくつかの実施形態では、画面からの距離は、倍率として用いられることができる。例えば、既知の対象物のサイズは、ユーザの親指と人差し指の間の距離によって規定される。また、画面からの距離はさらに、親指と人差し指の間の距離を乗算する倍率として用いられることができる。
【0049】
いくつかの実施形態では、アイコンは、互いの前に重ねることができ、画面までのユーザの手の距離は、アイコンを選択するために用いられることができる。ユーザはディスプレイ画面に手を近づけると、重ねられた下側の対象物が選択され、ユーザはディスプレイ画面から手を遠ざけると、重ねられた頂上側の対象物が選択される。
【0050】
いくつかの実施形態では、画面上の複数の対象物は、それぞれの指先で選択され、指の動きに従って操作されることができる。いくつかの実施形態では、画面からの手や指の距離は、画面の画像サイズに影響を及ぼし得る。例えば、トラッキングされた手を後方に動かすことによって、画面は、管理されている対象物の視野を大きくすべく、ズームアウト(縮小)される。いくつかの実施形態では、画面の対象物は重ね合わされ、操作される対象物の複数のレベルを表示する。このような場合には、画面からの手、指、または他の対象物の距離に応じて、異なる奥行きの対象物を操作するように、手および/または指、または、他の対象物の奥行き画像を用いることができる。
【0051】
図5は、いくつかの実施形態によれば、ユーザコマンドツールとしての仮想領域の使用例を説明する。図5に示すように、ブロック500では、仮想領域は、奥行きカメラへの選択された近接で規定される。仮想領域は、奥行きカメラへの特定の近接で3次元空間として規定される。ここで、1または複数のユーザの体部や他の対象物を用いて、例えばユーザによる入力、クリック、画面操作などを可能にすべく、近距離の動きがトラッキングされる。
【0052】
ブロック505では、例えば図4で説明したように、トラッキングモジュールを用いて奥行きデータが処理される。ブロック510では、システムは、ユーザの手/指/命令する対象物が仮想領域にあるかどうかを決定する。ブロック515では、ユーザの手/指などが仮想領域内にあれば、システムは、ユーザによって示されたジェスチャーやアクションを実行する。ユーザの手/指などが仮想領域内にない場合、システムは、ブロック505に戻って、システムがユーザの手/指などが仮想領域内にあると判断するまで、トラッキングモジュールを用いて他の奥行きデータを処理する。
【0053】
他の実施形態によれば、本明細書に記載の近距離の動作トラッキングシステムは、指および/またはその他の対象物の動きを通して、楽器の仮想再生を可能にする。いくつかの例では、手の位置は、特定の楽器の選択を決定できる。いくつかの実施形態では、ユーザの手や指の奥行き画像は、奥行きカメラから取得できる。データは、楽器の選択を決定するために、奥行き画像からのユーザの手の位置の特定を可能にするように処理され得る。奥行き画像は、ユーザの指の動きが事実上楽器を操作する奥行き画像から、ユーザの指の動きをトラッキング可能にするために用いられることがある。さらに、仮想楽器の操作は、トラッキングされた動きに基づいてシミュレーションされることができる。いくつかの例では、楽器操作のシミュレーションは、楽器におけるユーザの指の動きによって演奏される特徴に対応したサウンドを提供することを含む。他の例では、楽器操作のシミュレーションは、画面上で楽器操作の可視表示を提供することを含む。
【0054】
さらに他の例では、サインランゲージ(手話)・ジェスチャー(例えば、アメリカの手話や他のジェスチャー・ベース言語)は、システムによって特定できる。さらなる例では、奥行きカメラでユーザの手や指および/または他の体部の奥行き画像を取得し、ジェスチャー・ベース言語の事前に定義されたジェスチャーとして、奥行き画像からユーザの手や指および/または他の体部によって行われたジェスチャーを特定し、出力として事前に特定されたジェスチャーの翻訳を提供することによって、ジェスチャー・ベース言語は特定され得る。いくつかの例では、出力は、テキストおよび/またはオーディオなどである。
【0055】
さらに他の例では、ユーザは、1または複数の指を立てたり、把持したり(指を手のひらに近づける) 、手振りしたり、指をならしたりするなどの事前に定義されたジェスチャーを形成することによって、システムまたはデバイスと通信し得る。これらのジェスチャーは、特定の機能にマッピングされることが可能である。例えば、指をならすことは、コンピュータシステムを休止状態にすることができる。「ジェスチャー分類の手法とシステム」と題する米国特許第7,970,176、および、「ジェスチャー認識の方法およびシステム」と題する米国出願第12/707,340に記載の開示は、かかるジェスチャーを定義するための記載を提供する。また、これらは、参照により本明細書に完全に組み込まれる。
【0056】
いくつかの実施形態では、2次元の画面上に表示されるアイコンの視点を変更するために、ユーザの頭がトラッキングされ得る。即ち、ユーザが横側に移動すると、それに応じて、画面の視点が動く。
【0057】
いくつかの例では、一貫したシステム全体の動作をもたらすジェスチャーを定義できる。例えば、任意のアイコン/フォルダは、動作/特性を定義する。以下は、全てのフォルダのアイコンに適用するために定義されることができるジェスチャーや合図のセットの例である。
【0058】
「こぼす」ジェスチャーでは、ユーザが項目(item)を選択し、それをわずかに回転させると、その内容が上からあふれ出す。「内側を見る」ジェスチャーでは、ユーザが項目を選択して、それを回転させると、ユーザは項目内の内容を見ることができる。「振る」ジェスチャーは、ユーザが対象物を選択し、振動運動(振る動き)を行い、項目の内容がアルファベット順に並び替えられるなどの事前に決定された動作が生じる。「裏を見る」ジェスチャーでは、ユーザが項目を選択し、項目の裏側を見るためにそれを回転させると、追加的な情報が利用可能になる。例えば、画像ファイルを含むフォルダが回転されると、画像のテキストキャプションが表示される。「絞る」ジェスチャーでは、ユーザが項目を選択し、項目を最小化したり、デスクトップから見えなくなるように項目を絞る。さらに他の例として、指、腕、目などの複数の対象物によるジェスチャーや動きは、追加のジェスチャーや合図を示すために決定することができる。さらなる例では、異なるスタイル、速度、強度などを有する1または複数の対象物によるジェスチャーや動きは、追加のジェスチャーや合図を示すために決定することができる。当然に、他のジェスチャーや合図やジェスチャーと合図との組み合わせを用いることが可能である。
【0059】
いくつかの実施形態では、ユーザの手が一対一の動きで仮想表現にマッピングされている場合でも、この仮想空間内(例えば、デスクトップ上)にユーザの手を表現するための異なる方法がある。一例では、手のモデルがトラッキングされると、仮想アイコンがユーザの手に似る。例えば、それは、ユーザの手が中にあるのと同じ構成になっている。他の例では、ユーザの手の中レベルの抽象化を用いることができる。例えば、仮想空間に表示される各ドットは、ユーザの指先??のいずれかに対応することができる。さらに他の例では、ユーザの手の高いレベルの抽象化を用いることができる。ここで、ユーザの手は、アニメーション化された対象物として表示され機能する。
【0060】
いくつかの実施形態では、物理/力指向の相互作用がトラッキングされ、用いられることができる。これらの例では、ジェスチャーは項目と直接相互作用しない。むしろ、ジェスチャーは、項目と相互作用する力を生成する。例えば、対象物が回転し始める特定のジェスチャーである「回転」ジェスチャーを定義する代わりに、この種の物理的な力を生成するどのジェスチャーがタスクを達成するかを決定する。対象物を回転させることは、合理的な速度で動きを生成するために素早く手を振ったり、項目の角をたたいたり、項目に沿ってゆっくりと手を動かすなどのいくつかの方法のいずれかで、効果的に実行されることができる。当然に、他のジェスチャーや合図やジェスチャーまたは合図の組み合わせを用いることが可能である。
【0061】
いくつかの実施形態によれば、異なる指は、異なる機能を有することができる。例えば、対象物は、ユーザの手でそれを掴んで選択され、例えば、人差し指がそれを開き、中指がそれを消去し、薬指がそれを最大化する。当然に、他のジェスチャーや合図やジェスチャーまたは合図との組み合わせを用いることが可能である。
【0062】
コンテキスト(文脈)が特に明らかに必要でない限り、明細書および特許請求の範囲を通して、「含む」、「含んでいる」および同様な言葉は、排他的または網羅的な意味とは対照的に、包括的な意味(即ち、含むがそれに限定されないという意味)で解釈される。本明細書で用いられるように、「接続」「結合」またはそのわずかに異なる言葉は、2つかそれ以上の要素間で、直接または間接に接続または結合することを意味する。そのような要素間の結合または接続は、物理的、論理的、またはその両方である。さらに、本願に用いられる「ここに」、「上」、「下」、および、同様な意味の言葉は、本願全体に言及するものであり、本願の特定の部分に対してではない。ここで、コンテキスト(文脈)によっては、単数または複数を用いている上記の詳細な説明における言葉は、各々、複数または単数を含み得る。2つまたはそれ以上の項目のリストに関する「または」は、リストのいかなる項目、リストの全ての項目、および、リストの項目のあらゆる組み合わせという解釈の全てを含む。
【0063】
本発明の実施例の上記詳細な説明は、網羅的であって、発明を上記開示の具体的な形態に限定するものではない。発明の具体例は例示の目的のために上記されるが、当業者が認識し得る種々の同等な変更が本発明の範囲内で可能である。本願では、工程またはブロックは、特定の順番で表示されているが、代替の実行では、異なる順番で実行されるステップを有するルーチンを実行したり、異なる順番でブロックを有するシステムを用いることができる。いくつかのプロセスまたはブロックは、代替またはサブコンビネーションを提供するように、削除、移動、追加、分割、結合、および/または、変更される。また、プロセスまたはブロックは、時折、順番に実行されるように示されているが、これらのプロセスまたはブロックは、変わりに、並列で実行されたり、異なる順番で実行されることが可能である。さらに、本明細書に記載の特定の数は単なる例である。他の実行では、異なる値や範囲を用いられ得る。
【0064】
本明細書で提供される様々の図や内容(教示)は、上記システム以外のシステムに適用することも可能である。上記種々の例の要素と動作は、本発明の他の実行を提供するために組み合わせることができる。
【0065】
上記のいかなる特許、および、出願、および、他の参考文献は、出願書類に添付されて記載されるいかなるものをも含み、参照によって本明細書に組み込まれる。本発明の形態は、本発明の他の実行を提供するために、そのような参照に含まれるシステム、機能、および概念を必要に応じて用いて変更することが可能である。
【0066】
これらおよび他の変更は、上記の詳細な説明に照らして本発明に適用することが可能である。上記記載は、本発明の特定の例を説明し、考えられるベストモードについて説明しており、上記では具体的に表現しているが、本発明は、多くの態様で実行することが可能である。システムの詳細は、本明細書に開示される発明に含まれているが、特定の実行において大幅に変更され得る。上記のように、発明の特定の特徴または態様を説明しているときに用いられる特定の用語は、用語が関連する発明のいかなる特定の性質、特徴、態様に限定されるように再定義して捉えてはならない。一般的に、以下の特許請求の範囲に用いられる用語は、上記の詳細な説明のセクションがそのような用語を明確に定義していない限り、明細書中に開示される特定の例に本発明を限定して解釈してはならない。従って、本発明の実際の範囲は、開示された例だけでなく、特許請求の範囲による発明を実行するあらゆる同等な態様を含む。
【0067】
本発明の特定の態様は、特定の請求項の形態で以下に提示されており、出願人は、いかなる請求項の形態で多くの本発明の態様を熟考する。例えば、本発明の一態様のみが、35U.S.C.§112の第6パラグラフによるミーンズ・プラス・ファンクション・クレームであるが、他の態様は、同様にミーンズ・プラス・ファンクション・クレームとして、或いは、コンピュータ読み取り可能な媒体で具体化される他の形態で具体化されることが可能である。(35U.S.C.§112の第6パラグラフで扱われるどんな請求項も「するための手段」で始まる。)従って、出願人は、本発明の他の態様のために他の請求項の形態を追求すべく、本願の出願後に、追加の請求項を追加する権利を保留する。

【特許請求の範囲】
【請求項1】
ユーザインターフェイスを操作する方法であって、
奥行きセンサを用いてユーザの体部の一部の近距離の奥行き画像を取得する工程と、
ユーザの体部の一部の指定領域内における動きを奥行き画像から特定する工程と、
ユーザの体部の一部の前記領域内における動きをトラッキングする工程と、
画面上で第一対象物として前記ユーザの体部の一部を表示する工程であって、画面上に前記第一対象物が表示されて、前記ユーザの体部の一部の前記特定された動きに対応するジェスチャーを実行する工程とを含むユーザインターフェイスを操作する方法。
【請求項2】
前記第一対象物は、画面上で他の対象物と相互作用することを特徴とする請求項1記載の方法。
【請求項3】
前記動きは、画面上で他の対象物と相互作用する力を生成することを特徴とする請求項2記載の方法。
【請求項4】
前記ユーザの体部の一部は、1または複数の指を含み、1または複数の指の各々は、画面上で1または複数の別個の第一対象物として表現され、前記別個の第一対象物の各々は、画面上で他の対象物と相互作用することを特徴とする請求項1記載の方法。
【請求項5】
前記ユーザの体部の一部は手を含み、手の特定された動きは、選択ジェスチャーに対応し、画面上の第一対象物は、画面上で第二対象物を選択することを特徴とする請求項1記載の方法。
【請求項6】
前記ユーザの体部の一部は手を含み、手の特定された動きは、操作ジェスチャーに対応し、画面上の第二対象物は、選択ジェスチャーに関連する事前に定義された動作に基づいて操作されることを特徴とする請求項1記載の方法。
【請求項7】
画面からのユーザの体部の一部の距離を決定する工程と、
距離の変化に基づいて、画面を拡大および縮小する工程とを含む請求項1記載の方法。
【請求項8】
画面からのユーザの手の距離を決定する工程であって、ユーザの体部の一部が手を含む工程と、
画面上の積層された対象物から選択された対象物を示すために、画面上のカーサルを動かす工程であって、画面からのユーザの手の距離に基づいて、カーソルが動かされ、ユーザの手が画面に近づけられると、積層された対象物の下側にカーソルを動かし、ユーザの手が画面から遠ざけられると、積層された対象物の上側にカーソルを動かす工程とを含む請求項1記載の方法。
【請求項9】
画面からのユーザの体部の一部の距離に基づいて、前記第一対象物の大きさを拡大縮小する工程を含む請求項1記載の方法。
【請求項10】
奥行きセンサを用いて、ユーザの片手または両手および指の奥行き画像を取得する工程と、
奥行き画像からのユーザの片手または両手および指の動きをトラッキングする工程であって、前記動きは、機能を実行するジェスチャーに対応する工程とを含む方法。
【請求項11】
前記機能は、仮想楽器の操作であることを特徴とする請求項10記載の方法。
【請求項12】
前記仮想楽器の選択を決定するために、奥行き画像からのユーザの片手または両手および指の位置を特定する工程を含む請求項11記載の方法。
【請求項13】
ユーザの片手または両手および指の動きによって演奏される特徴に対応するサウンドを、前記仮想楽器に対して提供する工程を含む請求項11記載の方法。
【請求項14】
画面の仮想楽器の操作の可視的表示を提供する工程を含む請求項11記載の方法。
【請求項15】
電子装置で前記機能を実行する工程を含む請求項10記載の方法。
【請求項16】
ジェスチャー・ベース言語の一部として作成されたジェスチャーを翻訳する方法であって、
奥行きセンサを用いて、ユーザの手と指の奥行き画像を取得する工程と、
ジェスチャー・ベース言語の事前に定義されたジェスチャーとして、奥行き画像からのユーザの手と指で作成されるジェスチャーを特定する工程と、
出力として、事前に特定されたジェスチャーの翻訳を提供する工程とを含む方法。
【請求項17】
前記出力は、オーディオ出力または画面上のテキスト出力を含む請求項16記載の方法。
【請求項18】
ユーザの体部の少なくとも一部の奥行き画像を近距離で取得するように構成される奥行きセンサと、
奥行き画像データからのユーザの体部の前記少なくとも一部を特定し、奥行き画像データからのユーザの体部の前記少なくとも一部の動きをトラッキングするように構成されるトラッキングモジュールと、
ユーザの体部の前記少なくとも一部の動きが1または複数のユーザインターフェイス要素と相互作用するように構成される出力モジュールと、
ユーザの体部の前記少なくとも一部の表現、および、1または複数のユーザインターフェイス要素を表示するように構成されるディスプレイとを含むシステム。
【請求項19】
前記トラッキングモジュールは、背景分割アルゴリズムと、特徴検出アルゴリズムと、対象物特定アルゴリズムとを実行することを特徴とする請求項18記載のシステム。
【請求項20】
前記トラッキングモジュールは、骨格モデル形成アルゴリズムを実行することを特徴とする請求項18記載のシステム。
【請求項21】
奥行きセンサを用いて、ユーザの体部の一部の近距離の奥行き画像を取得する手段と、
ユーザの体部の一部の指定領域内における動きを前記奥行き画像から特定する手段と、
ユーザの体部の一部の前記領域内における動きをトラッキングする手段と、
画面の第一対象物としてユーザの体部の一部を表示する手段であって、画面上に前記第一対象物が表示されて、前記ユーザの体部の一部の前記特定された動きに対応するジェスチャーを実行する手段とを含むシステム。

【図1】
image rotate

【図2】
image rotate

【図4】
image rotate

【図5】
image rotate

【図3】
image rotate


【公開番号】特開2013−37675(P2013−37675A)
【公開日】平成25年2月21日(2013.2.21)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−140086(P2012−140086)
【出願日】平成24年6月21日(2012.6.21)
【出願人】(512163314)オーメック インタラクティブ,リミテッド (1)
【Fターム(参考)】