(57)【特許請求の範囲】
【請求項１】
コンピュータによって実施される方法であって、
第１及び第２の画像からユーザのジェスチャーを認識するステップと、
ユーザの識別を認識するステップと、
認識された識別に基づいて相互連動要素を選択するステップと、
コントロールの中央領域に対して放射状に配置された前記相互連動要素をさらに含む前記コントロールにユーザの表象を表示するステップであって、前記相互連動要素を表示することは、前記ユーザの前記表象が前記中央領域に位置合わせされるまで先送りされる、ステップと、
認識されたユーザのジェスチャーに基づいて前記コントロールと相互連動するステップと、
前記コントロールとの相互連動に基づいてアプリケーションを制御するステップと、を含む方法。
【請求項２】
前記ユーザのジェスチャーは、単一又は複数の指ジェスチャー、単一の手ジェスチャー、単一の手及び腕のジェスチャー、単一の手、腕及び体のジェスチャー、両手を使うジェスチャー、頭のポーズや姿勢の変化、目の位置の変化、顔の表情の変化、又は体のポーズ又は姿勢の変化を含む、請求項１記載の方法。
【請求項３】
前記ユーザの表象は、カーソル、画像、アイコン、又はアバターである、請求項１記載の方法。
【請求項４】
前記コントロールは、四角形形状、円形形状、扇形形状を含む、請求項１記載の方法。    
【請求項５】
各相互連動要素は、候補アプリケーションに関連づけられたアイコンをさらに含み、
前記コントロールとの相互連動するステップは、
前記認識されたユーザのジェスチャーに関連づけられたアイコンを強調表示するステップをさらに含み、
前記アプリケーションを制御するステップは、強調表示されたアイコンに関連づけられた候補アプリケーションを制御するステップをさらに含む、請求項１記載の方法。
【請求項６】
ユーザのジェスチャーは、２次元又は３次元の位置の変位、又は、位置の変位を伴わない変化を含む、請求項１記載の方法。
【請求項７】
前記ユーザのジェスチャーを認識するステップは、ユーザのジェスチャーの大きさ及び方向を判断するステップをさらに含み、
前記コントロールとの相互連動するステップは、判断された大きさ及び方向に基づいて表象を移動するステップをさらに含み、
前記アプリケーションを制御するステップは、移動された表象の近傍の相互連動要素に関連づけられた、選択されたアプリケーションを制御するステップをさらに含む、請求項１記載の方法。
【請求項８】
前記ユーザのジェスチャーは、エンゲージメントジェスチャーを含み、
前記コントロールは、前記エンゲージメントジェスチャーの認識に基づいて表示される、請求項１記載の方法。
【請求項９】
前記中央領域にユーザの表象を表示するステップは、
前記中央領域の外側にユーザの表象を表示するステップと、
前記中央領域に目標画像を表示するステップと、
少なくとも第３の画像から、再位置合わせジェスチャーを認識するステップと、
前記再位置合わせジェスチャーに基づいて、前記目標画像に対して前記表象を移動し、移動された表象が前記目標画像と位置合わせされている場合は、前記中央領域に移動された前記表象を表示するステップと、をさらに含む、請求項１記載の方法。
【請求項１０】
前記コントロールは、前記中央領域に対して放射状に配置された少なくとも８つの相互連動要素をさらに含む、請求項１記載の方法。
【請求項１１】
前記ユーザのジェスチャーを認識するステップが、
第１の方向に第１の変位を認識するステップと、
第２の方向に第２の変位を認識するステップと、をさらに含む、請求項１記載の方法。    
【請求項１２】
前記コントロールと相互連動するステップは、前記コントロールを非アクティブにするステップをさらに含む、請求項１記載の方法。
【請求項１３】
前記コントロールと相互連動するステップは、マウスコントロールモードをアクティブにするステップをさらに含む、請求項１記載の方法。
【請求項１４】
前記マウスコントロールモードでは、さらなるジェスチャーはマウスイベントにマッピングされている、請求項１３記載の方法。
【請求項１５】
前記さらなるジェスチャーは、指の動きをさらに含む、請求項１４記載の方法。
【請求項１６】
前記ユーザのジェスチャーは、カメラの前方の所定の距離に画定された平面の前で検出された場合に、認識される、請求項１記載の方法。
【請求項１７】
前記アプリケーションを制御するステップは、メディアセンターと相互連動するステップをさらに含む、請求項１記載の方法。
【請求項１８】
コンピュータプログラムであって、当該コンピュータプログラムは、データ処理装置によって読み込まれると、前記データ処理装置に、
第１及び第２の画像からユーザのジェスチャーを認識するステップと、
ユーザの識別を認識するステップと、
認識された識別に基づいて相互連動要素を選択するステップと、
コントロールの中央領域に対して放射状に配置された前記相互連動要素をさらに含む前記コントロールにユーザの表象を表示するステップであって、前記相互連動要素を表示することは、前記ユーザの前記表象が前記中央領域に位置合わせされるまで先送りされる、ステップと、
認識されたユーザのジェスチャーに基づいて前記コントロールと相互連動するステップと、
前記コントロールとの相互連動に基づいてアプリケーションを制御するステップと、を実行させる命令を含む、コンピュータプログラム。
【請求項１９】
コントロールの中央領域に対して放射状に配置された相互連動要素をさらに含む前記コントロールにユーザの表象を表示するように構成されたユーザインタフェースであって、前記相互連動要素を表示することは、前記ユーザの前記表象が前記中央領域に位置合わせされるまで先送りされる、ユーザインタフェースと、
第１及び第２の画像からユーザのジェスチャーを認識し、
ユーザの識別を認識し、
認識された識別に基づいて相互連動要素を選択し、
認識されたユーザのジェスチャーに基づいて前記コントロールと相互連動し、
前記コントロールとの相互連動に基づいてアプリケーションを制御するように構成されたプロセッサと、を含むデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、コントロール（ないしウィジェット）に関する。
【背景技術】
【０００２】
＜関連出願とのクロスリファレンス＞
本出願は、２００８年２月２７日に出願された米国特許出願第１２／０３８，６２６号の優先件を主張する。
【０００３】
入力デバイス又はポインティングデバイスは、コンピュータのユーザがコンピュータにデータを入力することを可能にするハードウェアコンポーネントである。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
コントロール（ないしウィジェット）は、例えば入力デバイスを用いることなどによって、コンピュータのユーザが相互連動するインタフェース要素であり、データ操作のために単一の相互連動ポイントを提供する。
【課題を解決するための手段】
【０００５】
一般的な実装形態の１つによると、コントロールが、ユーザが、様々な時間にユーザの画像にアクセスすることに基づいて自動認識されることができる特定のジェスチャーを行うことによって、高機能化オンスクリーンコントロールと相互連動（ｉｎｔｅｒａｃｔ）して、これによってメディアセンター機能を呼び出すことができる。特に、ユーザの表象（ｒｅｐｒｅｓｅｎｔａｔｉｏｎ）を最初に囲む、手を表す記号やカーソルなどのアイコンを表示してもよい。これによって、ユーザの身体の直接的、直感的、自及び然な動きを介して、対応するアイコンの機能を容易に選択することができる。
【０００６】
別の一般的な実装形態に従うと、コンピュータによって実施される処理は、第１及び第２の画像からユーザのジェスチャーを認識するステップと、中央領域に対して放射状に配置された相互連動要素をさらに含むコントロールの中央領域にユーザの表象を表示するステップと、を含む。この処理は、認識されたユーザのジェスチャーに基づいて前記コントロールと相互連動するステップと、前記コントロールとの相互連動に基づいてアプリケーションを制御するステップと、をさらに含む。
【０００７】
実装形態は、以下の特徴の一又は複数を含んでもよい。
例えば、前記ユーザのジェスチャーは、単一又は複数の指ジェスチャー、単一の手ジェスチャー、単一の手及び腕のジェスチャー、単一の手、腕及び体のジェスチャー、両手を使うジェスチャー、頭のポーズや姿勢の変化、目の位置の変化、顔の表情の変化、又は体のポーズ又は姿勢の変化を含んでもよい。
前記ユーザの表象は、カーソル、画像、アイコン、又はアバターでもよい。
【０００８】
さらに、前記コントロールは、四角形形状、円形形状、扇形形状を含んでもよい。各相互連動要素は、候補アプリケーションに関連づけられたアイコンをさらに含み、前記コントロールとの相互連動するステップは、前記認識されたユーザのジェスチャーに関連づけられたアイコンを強調表示するステップをさらに含み、前記アプリケーションを制御するステップは、強調表示されたアイコンに関連づけられた候補アプリケーションを制御するステップをさらに含んでもよい。
【０００９】
別の例では、ユーザのジェスチャーは、２次元又は３次元の位置の変位、又は、位置の変位を伴わない変化を含んでもよく。前記ユーザのジェスチャーを認識するステップは、ユーザのジェスチャーの大きさ及び方向を判断するステップをさらに含み、前記コントロールとの相互連動するステップは、判断された大きさ及び方向に基づいて表象を移動するステップをさらに含み、前記アプリケーションを制御するステップは、移動された表象の近傍の相互連動要素に関連づけられた、選択されたアプリケーションを制御するステップをさらに含んでもよい。前記ユーザのジェスチャーは、イネーブリングジェスチャーを含み、前記コントロールは、前記イネーブリングジェスチャーの認識に基づいて表示されてもよい。
【００１０】
別の例では、前記中央領域にユーザの表象を表示するステップは、前記中央領域の外側にユーザの表象を表示するステップと、前記中央領域に目標画像を表示するステップと、少なくとも第３の画像から、再位置合わせジェスチャーを認識するステップと、前記再位置合わせジェスチャーに基づいて、前記目標画像に対して前記表象を移動し、移動された表象が前記目標画像と位置合わせされている場合は、前記中央領域に移動された前記表象を表示するステップと、をさらに含んでもよい。前記コントロールは、前記中央領域に対して放射状に配置された少なくとも８つの相互連動要素をさらに含んでもよい。前記ユーザのジェスチャーを認識するステップが、第１の方向に第１の変位を認識するステップと、第２の方向に第２の変位を認識するステップと、をさらに含んでもよい。
【００１１】
他の例において、前記コントロールと相互連動するステップは、前記コントロールを非アクティブにするステップをさらに含んでもよい。前記コントロールと相互連動するステップは、マウスコントロールモードをアクティブにするステップをさらに含んでもよい。マウスコントロールモードにおいて、指の動きなどの前記さらなるジェスチャーは、マウスイベントにマッピングされてもよい。この処理は、ユーザの識別を認識するステップと、認識された識別に基づいて相互連動要素を選択するステップと、をさらに含んでもよい。前記ユーザのジェスチャーは、カメラの前方の所定の距離に画定された平面の前で検出された場合に、認識されてもよい。前記アプリケーションを制御するステップは、メディアセンターと相互連動するステップをさらに含んでもよい。
【００１２】
別の一般的な実装形態では、コンピュータプログラム製品が、機械によって読み取り可能な媒体において有形に具現化される。当該コンピュータプログラム製品は、機械によって読み込まれると、
第１及び第２の画像からユーザのジェスチャーを認識するステップと、中央領域に対して放射状に配置された相互連動要素をさらに含むコントロールの中央領域にユーザの表象を表示するステップと、認識されたユーザのジェスチャーに基づいて前記コントロールと相互連動するステップと、前記コントロールとの相互連動に基づいてアプリケーションを制御するステップと、を実行させる命令を含む。
【００１３】
別の一般的な実装形態では、デバイスがユーザインタフェースとプロセッサとを含む。
前記ユーザインタフェースは、中央領域に対して放射状に配置された相互連動要素をさらに含むコントロールの中央領域にユーザの表象を表示するように構成される。前記プロセッサは、第１及び第２の画像からユーザのジェスチャーを認識し、認識されたユーザのジェスチャーに基づいて前記コントロールと相互連動し、前記コントロールとの相互連動に基づいてアプリケーションを制御するように構成される。
【００１４】
一又は複数の実装形態の詳細を、添付された図面及び下において記載した。
本開示の他の特徴や効果は、明細書、図面及び請求の範囲から明白である。
【図面の簡単な説明】
【００１５】
【図１】認識されたジェスチャーを使用した高機能化入力を実演する概略図である。
【図２】代表的なデバイス２００のブロック図である。
【図３】代表的な処理のフローチャートである。
【図４】代表的なジェスチャーと付随するコントロールとの相互連動を説明する図である。
【図５】代表的な手のポーズ又はジェスチャーを示す図である。
【図６】コントロールの形状と構成の例を説明する図である。
【図７】代表的なジェスチャーと付随するコントロールとの相互連動を説明する図である。
【図８】代表的なジェスチャーと付随するコントロールとの相互連動を説明する図である。
【図９】代表的なジェスチャーと付随するコントロールとの相互連動を説明する図である。
【図１０】代表的なジェスチャーと付随するコントロールとの相互連動を説明する図である。
【図１１】代表的な手のポーズ又はジェスチャーを示す図である。
【図１２】代表的なジェスチャーと付随するコントロールとの相互連動を説明する図である。
【図１３】代表的なジェスチャーと付随するコントロールとの相互連動を説明する図である。
【図１４】代表的なジェスチャーと付随するコントロールとの相互連動を説明する図である。
【図１５】代表的なジェスチャーと付随するコントロールとの相互連動を説明する図である。
【図１６】コントロールの形状と構成のいくつかの例を説明する図である。
【図１７】代表的な処理のフローチャートである。
【図１８】プロセッサ及びユーザインタフェースをさらに含むコンピューティングデバイス１８０１の外観の例を示す図である。
【図１９】図１８に示したコンピュータの内部アーキテクチャーを示すブロック図である。
【００１６】
全体を通して、同様の参照符号は、対応する部分を表している。
【００１７】
本出願に記載された高機能化コントロールを使用して、ユーザのジェスチャー又はジェスチャーにおける変化を認識することに基づいて、メディアコンピュータ又はハブを制御するために、デプスカメラ（ｄｅｐｔｈカメラ）のようなカメラを用いることができる。
タッチスクリーンでは指紋によって発生する精度の悪化に悩まされるが、このようなタッチスクリーンとは違って、ジェスチャーに基づく入力は、写真、ビデオ又はその他の画像を、ユーザの自然な体の動き又はポーズに基づいて明瞭に表示する、あるいは、その他の出力を行うことを可能にする。
このような利点を考慮すると、可視的な出力の他の方法による操作、音楽又はその他の音を再生する機能などのその他の機能又はその他のメディアアプリケーションの直感的な呼び出し、その他のアプリケーションとの相互連動、あるいは仮想的な環境若しくは世界のナビゲートを行うことができるその他のジェスチャーを認識するように、高機能化コントロールを拡張してもよい。
【００１８】
本出願全体を通して、「ジェスチャー」とは、人体の一部を用いて行われる非言語コミュニケーションの形態を意味し、これは音声などの言語コミュニケーションの形態とは対照的である。
例えば、ジェスチャーは、第１の位置、ポーズ又は表現と、第２のポーズ、位置又は表現との間の、動き、変化又は形態変化によって規定することができる。
日常会話で使用される一般的なジェスチャーには、例えば、「エアクォーツ」ジェスチャー、お辞儀ジェスチャー、会釈、頬キス、指若しくは手の動き、片膝をつくこと、頭を振ること、又は頭を動かすこと、ハイファイブ、頷き、悲しい顔、握りこぶしを上げること、敬礼、親指を上げる動き、又は指し示すジェスチャーが含まれる。
ジェスチャーはカメラを使用して、例えば、ユーザの画像を解析する、傾きセンサを使用して、例えば、ユーザが装置を保持している、又は傾けている角度を検出する、あるいはその他のアプローチを用いて検出することができる。
【００１９】
体の一部によって、その位置を変えるジェスチャー（又は「ジェスチャー表現」）（すなわち、揺れる動き）を行う、又は体の一部によって、その位置を変えないジェスチャー表現（すなわち、握りこぶしを固める）を行ってもよい。
高機能化コントロールは、カメラ入力による機能の制御を行うために、例として、手及び腕のジェスチャーを使用するが、他の種類のジェスチャーを使用してもよい。
【００２０】
図１は、認識されたジェスチャーを使用した高機能化入力を実演する概略図である。
図１では、ユーザ１０１（ボブ）が、メディアハブ１０３とカメラ１０４のディスプレイ１０２の前に立っており、快適な音量で再生されている音楽を聴いている。
このユーザの右腕１０５、右手１０６及び胴１０７は、カメラ１０４の画角１０９の範囲内にある。
【００２１】
メディアハブ１０３に対して音楽の音量を上げてほしいというユーザの要望を指示するため、ユーザ１０１は、自身の胴１０７の前でカメラ１０４に向かって自身の右腕１０５と右手１０６を伸ばし、自身の右腕１０５を上方向の動きをするように動かすことによってジェスチャー表現をする。
メディアハブ１０３は、ユーザの右手１０６の手の平を前に出して指を伸ばしたポーズを、ジェスチャーに基づく制御入力が間もなく行われることを意味するものとして認識する。
換言すると、ユーザの右手１０６の手の平を前に出して指を伸ばしたポーズを形成していなければ（例えば、ユーザの右手１０６が丸くなっていれば）、メディアハブ１０３はユーザの動きやジェスチャーを無視してもよい。
【００２２】
画像の一部１１０から、ユーザ１０１の顔が検出され認識され、「ボブ」としてユーザ１０１が識別される。
画像の一部１１１から手１０６のポーズが検出される。この場合は、手の平が前に出て５本の指すべてが完全に伸びて離れているポーズである。
第２の画像から、手１１１の位置の変化も検出又はその他判断され、腕１０５の上方向の腕の動きによって行われるジェスチャーを自動的に判断又は認識することが可能になる。
【００２３】
ユーザインタフェース１１２に高機能化コントロール１１４が表示される。
この例では、ホイール形状の高機能化コントロール１１４が、８つの相互連動要素１１５を含んでおり、これらそれぞれが、一又は複数のアイコン、機能及びアプリケーションに関連づけられている。
例えば、相互連動要素１１５ａが、ウェブブラウザ機能に関連づけられており、相互連動要素１１５ｃが、ユーザ別の写真アルバム機能に関連づけられており、相互連動要素１１５ｄが、音量下げ機能に関連づけられており、相互連動要素１１５ｅが、電子メール機能に関連づけられており、相互連動要素１１５ｆが、コントロール無効化機能に関連づけられており、相互連動要素１１５ｇが、ユーザ別の音楽機能に関連づけられており、相互連動要素１１５ｈが、音量上げ機能に関連づけられている。
相互連動要素１１５は、メディアハブ１０３のすべてのユーザに対して普遍的で同じであってもよく、認識されたユーザ１０１の識別に基づいて決められる、又は、選択されるものであってもよい。
【００２４】
高機能化コントロール１１４が、ハブアンドスポークの外観の２次元的なホイールを有するように図示されているか、他の実装形態においては、他の形状を用いることもできる。
例として、高機能化コントロール１１４は、線形、三角形、３次元的、矩形であってもよく、又は高機能化コントロール１１４は、扇形を占めていてもよい。
高機能化コントロール１１４は、略非対称な形状であってもよく、略対称な形状であってもよい。
【００２５】
加えて、高機能化コントロール１１４は、ユーザインタフェース１１２の中央に位置合わせされていなくてもよく、あるいはユーザインタフェース１１２内の単一の位置に固定されていなくても全くかまわない。
例えば、ユーザインタフェース１１２が高機能化コントロール以外の他のオブジェクトを表示する、あるいはユーザインタフェース１１２の領域が不明瞭になるに従って、高機能化コントロールは、自身を動的に再配置する、自身の形状を変化させる、あるいは表示される相互連動要素の数を変えてもよい。
また、特定の認識されたユーザのために動的に選択される、あるいは全てのユーザに対して同様に選択されることに加えて、例示の相互連動要素の数を選択してもよい。
【００２６】
認識された「腕１０５の上方向の動き」のジェスチャーに基づいて、表象１１６（この場合、手の形をしたカーソル）が、コントロール１１４の中央領域１１７から動き、相互連動要素１１５ｈと重なり合う、あるいはこの近傍となると、これによって、相互連動要素１１５ｈとの相互連動が行われる。
このような相互連動が、相互連動要素１１５ｈに関連づけられた音量上げ機能を呼び出し、起動し、あるいはその他の実行をして、さらにメディアハブ１０３が出力する音楽の音量を上げる。
【００２７】
図２は、高機能化入力を実施するために用いられるデバイス２００のブロック図である。
簡潔に書くと、デバイス２００は、他のものに加えて、ユーザインタフェース２０１、記憶媒体２０２、カメラ２０４、プロセッサ２０５及び傾きセンサを備える。
ユーザインタフェース２０１は、ユーザが、デバイス２００と、あるいはデバイス２００により起動されたアプリケーションと、相互連動することを可能にする機構である。
ユーザインタフェース２０１は、入力と出力の両方の機構を提供することができ、ユーザがデバイスを操作すること、又は、デバイスがユーザの操作を実現ことを可能にする。
デバイス２００は、グラフィカルユーザインタフェース（ＧＵＩ）、ボイスユーザインタフェース、又は触知性ユーザインタフェースなどの任意の種類のユーザインタフェース２０１をも利用することができる。
【００２８】
ユーザインタフェース２０１は、可視的な表示画像をレンダリングするようにも構成してもよい。
例として、ユーザインタフェース２０１は、モニタ、テレビジョン、液晶ディスプレイ（ＬＣＤ）、プラスマディスプレイデバイス、プロジェクタースクリーン付きのプロジェクター、自動ステレオスコピックディスプレイ、陰極管（ＣＲＴ）ディスプレイ、デジタル光プロセッシング（ＤＬＰ）ディスプレイ、あるいは表示画像をレンダリングするように構成された任意の種類の表示デバイスであってもよい。
ユーザインタフェース２０１は、一又は複数の表示デバイスを備えていてもよい。
構成によっては、ユーザインタフェース２０１が、アバターなどのオブジェクトないし表象等のアプリケーションが生成する表示画像などの、アプリケーションに関連づけられた画像を表示するように構成されている。
【００２９】
記憶媒体２０２は、情報又はデータを記憶し、記録するものであって、光学的記憶媒体、磁気記憶媒体、フラッシュメモリー、あるいはその他の種類の記憶媒体であってもよい。
記憶媒体には、他のものに加えて、認識されたジェスチャーを用いた高機能化入力を実行させる、高機能化コントロールアプリケーション２０７がエンコードされている。
【００３０】
カメラ２０４は、静止画写真又は一連の動画のいずれかの画像を撮像するために用いられるデバイスである。
カメラ２０４は、可視スペクトルの光を使用する、又は赤外線などの他の電磁スペクトルの一部をともに使用することができる。
例えば、カメラ２０４は、デジタルカメラ、デジタルビデオカメラ、又は画像を撮像するように構成されたその他の任意の種類のデバイスであってもよい。
カメラ２０４は、一又は複数のカメラを含んでいてもよい。
幾つかの例においては、カメラ２０４は、オブジェクトの画像、又はアプリケーションと相互連動しているユーザの画像を撮像するように構成されてもよい。
例えば、カメラ２０４は、自由空間で物理的にジェスチャー表現をしている、又はカメラ２０４の画角の範囲内でアプリケーションとその他の相互連動をしているユーザないし人の画像を撮像するように構成されてもよい。
【００３１】
カメラ２０４は、ステレオカメラ、タイムオブフライトカメラ（飛行時カメラ）又はその他の任意のカメラであってもよい。
例えば、カメラ２０４は、ユーザの動き、そして、同様にジェスチャー、を検出するために背景画像をサンプリングすることができる画像検出器であってもよい。
カメラ２０４は、グレースケール画像、カラー画像、又は距離画像を生成することが可能なカメラであり、距離画像を生成することができるステレオカメラやタイムオブフライトカメラなどでもよい。
ステレオカメラは、少し異なる視点から画像を取得する２つのイメージセンサを備え、プロセッサが異なる視点から取得した画像を比較して画像の部分間の距離を計算するようにしてもよい。
タイムオブフライトカメラは、赤外光等の光パルスを発生させるエミッターを備え、このエミッターにおいて、エミッターからの光パルスが被写体とセンサの間を行き来する時間を測定して画像の各部分の距離を算出するようにしてもよい。
【００３２】
デバイス２００は、有線又は無線の経路を介して、カメラ２０４とユーザインタフェース２０１と電気的に接続されており、これらと通信可能であり、プロセッサ２０５の動作を制御して高機能化コントロールを提供するように構成されている。
一つの構成において、デバイス２００は、プロセッサ２０５又は他の制御回路を利用して高機能化されたカメラに基づく入力を提供するアプリケーションを実行する。
【００３３】
デバイス２００をパーソナルコンピュータ（ＰＣ）又はセットトップボックスであるものとして説明したが、そのような説明は単に簡潔にするために行っただけであって、他の実装形態や具現化も想定される。
例として、デバイス２００は、テレビジョン、ウルトラモバイルパーソナルコンピュータ（ＵＭＰＣ）、モバイルインターネットデバイス（ＭＩＤ）、デジタル写真フレーム（ＤＰＦ）、携帯型メディアプレイヤー（ＰＭＰ）、汎用コンピュータ（例えば、デスクトップコンピュータ、ワークステーション、又はラップトップコンピュータ）、サーバ、ゲームデバイス若しくはコンソール、又は命令を実行するように構成されたプロセッサ又は他の制御回路を備えたその他の任意の種類の電子デバイス、又はユーザインタフェースを備えた他の人の装置として実装されてもよい。
【００３４】
１つの実装例では、カメラを使用してジェスチャーを行うユーザの画像を検出することによって、入力が行われる。
例として、移動体電話をテーブルの上に配置して、顔に向けたカメラを用いてユーザの画像を生成するように動作するようにしてもよい
あるいは、傾きセンサ２０９を用いてジェスチャーを認識して検出してもよく、例えば、「左に傾斜」のジェスチャーを検出すると、表象を左に移動させて、コントロールの左側に配置された相互連動要素を選択するようにしてもよく、又は、「右前方に傾斜」のジェスチャーを検出すると、表象を中立位置から上方及び右側に移動させて、コントロールの右上側に配置された相互連動要素を選択するようにしてもよい。
【００３５】
このように、傾きセンサ２０９は、例えば、ジャイロスコープ、加速度計、又はカメラに基づく光学的フロートラッカー（動き追跡器）など、デバイス２００の角度位置を検出するように動作することができる任意の種類のモジュールでよい。
この点については、ユーザが所望する機能又は命令を実行するために、画像に基づく入力を、傾きセンサの入力により補完する、又は、傾きセンサの入力で換えてもよい。
換言すると、ユーザのジェスチャーの検出を、カメラを使用せずに行ってもよい。
ユーザインタフェース上のコントロールで可視化される同一の種類のストロークパターンでデバイスを動かすことによって、ユーザは直接的な方法で同一のインタフェース又はアプリケーションを制御することができる。
【００３６】
図３は、認識されたジェスチャーを使用して高機能化入力を実行する、コンピュータによって実施される処理３００を説明するフローチャートである。
簡潔には、コンピュータによって実施される処理３００は、第１及び第２の画像からユーザのジェスチャーを認識し、中央領域に対して放射状に配置された相互連動要素をさらに含むコントロールの中央領域にユーザの表象を表示することを含む。
この処理は、認識されたユーザのジェスチャーに基づいてコントロールと相互連動し、コントロールとの相互連動に基づいてアプリケーションを制御することをさらに含む。
【００３７】
より詳細には、処理３００が開始すると（Ｓ３０１）、第１及び第２の画像からユーザのジェスチャーが認識される（Ｓ３０２）。
第１及び第２の画像は、ビデオシーケンスを構成する、個々の画像スナップショット又は一連の画像から抽出することができる。
各画像は、ユーザ若しくはユーザの一部の、ポーズ、位置、表現、姿勢、又はその他の状態をアプリケーションが判断することを可能とする位置情報を撮像している。
【００３８】
したがって、２つの画像から、ユーザの考え、意図、感情、コミュニケーション、命令、実演又は表現を規定するジェスチャーを導き出すことができる。
例えば、ユーザのジェスチャーは単一又は複数の指のジェスチャー、単一の指のジェスチャー、単一の手及び腕のジェスチャー、単一の手、腕及び身体のジェスチャー、両手を使用したジェスチャー、頭のポーズ又は姿勢の変化、目の位置の変化、顔の表情の変化、身体のポーズ又は姿勢の変化、又はその他の任意の表現される身体の状態の形態変化であってもよい。
【００３９】
簡潔のため、当該ジェスチャーを行うために用いられる身体の一部分又は幾つかの部分を、総じて「コントロールオブジェクト」と呼ぶ。
例えば、ユーザは身体全体又はその他の物理的なオブジェクトを用いて命令を表現してもよい。この場合、身体全体又はその他の物理的なオブジェクトを、コントロールオブジェクトとしてもよい。
ユーザは、目を瞬きする、鼻孔を動かす、又は指を小刻みに動かすことによって、より詳細に命令を表現してもよい。この場合、まぶた、鼻又は指をコントロールオブジェクトとしてもよい。
単一の画像又は２つの画像の間のユーザのジェスチャーは、イネーブリングジェスチャー又は「エンゲージメント」ジェスチャーを表現するものとしてもよい。
【００４０】
カメラの画像からユーザのジェスチャーを判断する方法は多くある。
例えば、「空間に円を描く」又は「一方向に手を大きく振る」ジェスチャーを、手、腕、身体、頭、又はその他のオブジェクトの位置情報を用いたジェスチャー解析及び検出処理によって検出することができる。
大きく振るジェスチャーが行われた時など、２次元又は３次元の位置変位をジェスチャーが伴うこともあり得るが、他の場合では、ジェスチャーには、付随する位置変位のない、形態変化が含まれる。
例えば、５本の指を伸ばし、手の平を前に向けて「止まれ」を手で合図する場合、手の平を前に向けたまま５本の全ての指を曲げて丸くすると、ユーザのポーズは変化する。このように、手や腕の全体的な位置を動かさなくても、ジェスチャーは表現される。
【００４１】
ジェスチャーは、手の位置の情報が明示的なルール群を表すか否かを判断するなどの、発見的手法（ヒューリスティック法）を用いて検出してもよい。
例えば、「一方向に手を大きく振る」のジェスチャーは、以下のジェスチャー検出ルールが満たされた場合に特定することができる。すなわち、（１）所定の限度よりも短い期間における水平方向の位置変化が所定の距離よりも大きい；（２）前記期間において水平方向の位置変化が単調である；（３）前記期間において垂直方向の位置変化が所定の距離よりも小さい；及び（４）前記期間の終了時における位置が、前記期間の開始時の位置よりも手の検出領域の境界に近いかその境界上にある、である。
【００４２】
いくつかのジェスチャーは、明示的な順序で実行されて満たされる複数のルール群を利用し、１つのルール群を満たすと、異なるルール群が適用される状態にシステムが変化するようにする。
このシステムは、僅かなジェスチャーを検出できない場合は、隠れマルコフモデルを用いてもよい。隠れマルコフモデルは、特定の動きの連鎖を検出することを可能としながら、幾つかの動きが十分にジェスチャーに合致しない全体的な確率も考慮することができる。
【００４３】
エンゲージメントジェスチャーは、ジェスチャーに基づく命令入力についてその他の画像を監視し、無作為な、又はバックグラウンドの身体の動きを無視する機能をアクティブとする、又は呼び出す。
一例では、エンゲージメントジェスチャーは、所定の時間の間保持された、ディスプレイの前のカメラのトラッキング領域においてジェスチャー表現された特定の手のポーズ又は手の動きのシーケンスである。
一例のジェスチャーは、すべての指と親指をばらばらに広く広げて上方向の位置に手を保持した、手のポーズである。
【００４４】
身体、腕、又は手のジェスチャーに加えて、一又は複数の画像から指で指し示すジェスチャーを認識することができる。
例えば、ユーザの指先を使って「左を指す」ジェスチャーを行うことができる。これは指の画像を解析することによって検出することができる。
指し示す指先の方向を判断するために、指紋解析、又はその他のアプローチを用いることができる。
他の代表的な実装例では、例えば、ジェスチャーが言語のジェスチャーである場合、または、傾きセンサや加速度計を用いて計算される場合などでは、上述のように、カメラを用いずにジェスチャーを検出することができる。
【００４５】
図４は、例示的なエンゲージメントジェスチャーとそのエンゲージメントジェスチャーの結果として生じるユーザインタフェースを示す。
より詳細には、カメラ４０２によって撮像されるユーザ４０１の２つの画像によって、下方向の第１の位置４０４から手の平を前方に向け伸ばした第２の位置４０５へのユーザの腕のジェスチャー表現が捕捉される。
ユーザ４０１がこのジェスチャー表現を行うことによって、ユーザの表象４０６がユーザインタフェース４０７に表示され、加えて、目標画像４０９（十字線）がユーザインタフェースの中央に表示される。
以下に詳細に説明するが、ジェスチャーを行う際、ユーザの手４１０が、カメラ４０２の画角４１１の中央にないので、表象４０６はユーザインタフェース４０７の右下の隅の領域に現れ、これによって再位置合わせ処理を呼び出すことが可能となる。
【００４６】
ジェスチャー又はジェスチャーの変化を認識することに加えて、画像からは他の情報を判断してもよい。
例えば、画像に顔の検出及び認識処理を行って、画像内のユーザの存在や識別を検出してもよい。
識別情報は、例えば、利用可能な選択肢又は表示する相互連動要素を判断、又は選択するため、あるいは複数のユーザが入力機能に携わることを試みている場合に、画像内の多くのユーザの中でどのユーザをコントロールするユーザとして指定するかを判断するために用いられる。
【００４７】
図４において、顔検出処理が、顔を含む領域４１２及び４１４を特定し、顔認識処理が、大人ユーザ４０１と子供（又は特定されない）ユーザ４１５の識別を判断する。
この判断された識別情報から、子供が存在すること、又はユーザ４０１がユーザ４１５よりも高い優先度を有することをデバイスが判断し、これによって、ユーザに対する選択肢を減らしてコントロールを介して表示する、又は、子供のユーザ４１５がデバイス４１６のコントロールを大人のユーザ４０１から獲得すること不許可とすることができる。
【００４８】
ユーザ４０１がユーザ４１５よりも高い優先度を有する場合、ユーザ４０１は、ユーザ４１５にコントロールを移譲する、又は、ユーザ４１５にコントロールを獲得する権限を与えるジェスチャーをすることができる。
例えば、ユーザ４０１は、ユーザ４１５の「頭をなでる」ジェスチャーをして、これによってデバイスのコントロールをユーザ４１５に以上するようにしてもよい。
ユーザ４０１によるジェスチャーは、能動的な手法（例えば、再ジェスチャー表現）又は受動的な手法（例えば、タイムアウト）によってユーザ４０１がコントロールを再び得るまで続行する。
【００４９】
ユーザの識別に基づいてユーザのジェスチャーを選択的に認識することに加えて、他の基準を用いて、擬似的な制御ジェスチャーなどの関係のない、あるいは意図しない「候補」ジェスチャーを除去することができる。
例えば、カメラ前方の所定の距離に平面を画定し、その平面のカメラから遠い側で行われる、又は、実行されるジェスチャーは無視し、一方で、カメラとその平面の間で実行されるジェスチャー、又は潜在的なジェスチャーは監視し、特定し、認識し、フィルタリングし、適切に処理する。
このような平面は、他の点、位置、又は、例えば、ユーザの胴体などの被写体に対して画定してもよい。
【００５０】
複雑な命令の入力を可能とし、入力の選択肢の数を増加するため、ユーザのジェスチャーを認識する処理は、第１の方向における第１の変位を認識する工程と、第２の方向における第２の変位を認識する工程と、これらの複数の変位を単一のジェスチャーとして集約する工程とをさらに含んでもよい。
また、ユーザのジェスチャーを認識する際に、ユーザのジェスチャーの大きさ及び方向を判断してもよい。
【００５１】
図５でポーズ５０１として示す、指を伸ばして手の平を前方に向ける手のポーズを、制御を行う手のポーズの代表的な例としてここでは例示して説明するが、その他の手のポーズ、又は、手のポーズの間の変化、移行も、同様の手法でエンゲージメントポーズ又はジェスチャーとして認識させてもよい。
制御、又は、エンゲージメント（参加）を表すために使用し得る他の手のポーズとして、例えば、指を上に向けて手の平を前方に向ける手のポーズ５０２；親指を上げて指を曲げる手のポーズ５０４；及び、指を前方に伸ばし、親指を上げる手のポーズ５０５が含まれる。
【００５２】
図３に簡単に戻ると、イネーブリングジェスチャーが行われ認識されるなどすると、ユーザの表象を、中央領域に対して放射状に配置された相互連動要素をさらに含むコントロールの中央領域に表示することができる（Ｓ３０４）。
初心者ユーザに対しては、ユーザがインタフェースと相互連動することを促すためにユーザの表象を表示してもよいが、ジェスチャーを行うことに慣れているエキスパートユーザに対しては、表示しないようにしてもよい。
例えば、通常のモード又は上級モードでは表象を表示しないが、チュートリアルモードではユーザの表象を表示するなどのように、ユーザの表象を表示する、又は表示しないについては、ユーザがインタフェースを構成設定してもよい。
ユーザがエンゲージメントジェスチャーを実行したが、ユーザが制限時間内にアイテムを選択するジェスチャーを実行しなかった場合に、インタフェースが表象を表示するようにしてもよい。
【００５３】
コントロールの形状及び構成は、特定の脈絡に従って変化してもよく、例えば、円形形状、矩形形状、対称な形状又は非対称な形状、線形形状、多角形形状、異形形状でもよく、又は扇形形状であってもよい。このようなコントロールには、一又は複数の相互連動要素が中央領域の近傍に配置される。
コントロールが円形であって相互連動要素が放射状に向いて配置されている場合、かかるコントロールを「ジェスチャーホイール」と呼ぶ。
【００５４】
代表的なジェスチャーホイールの周上には、それぞれアイコンとして表わされる、８つの異なる機能と関連づけられた８つの点が含まれる。
ホイールの中央を、ユーザインタフェース、又はユーザインタフェースの空白領域の中央位置などの目標位置となるようにしてもよい。これによって、指向性の動きによって機能を呼び出す場合に、ユーザが自身の身体のコントロールオブジェクトを、呼び出そうとするその機能の一般的な方向に単純に移動させることができる。
他の代表的なジェスチャーホイールは、８よりも多い、又は、８よりも少ない相互連動要素を含む、あるいは、可変の数の相互連動要素を含む。
例えば、ジェスチャーホイールは、単一の相互連動要素、１０の相互連動要素、あるいは数ダース、数百又は数千の相互連動要素を含んでもよい。
【００５５】
空き領域判断機能は、画面の空き領域の位置を繰り返し特定して、コントロールの形状及び大きさを動的に選択して、その動的に選択されたコントロールを、繰り返し位置が特定された空き領域の内部に提示することができる。
例えば、コントロールは、自身を繰り返し調整するので、シミュレーションされた跳ね返るボールなど、ユーザインタフェースにおいて動画像が重なり合うことを避けることができる。
【００５６】
図６は、高機能化コントロールのいくつかの代表的な形状及び構成を示す。
コントロール６０１は、ハブアンドスポーク（放射）状に中央領域６０４から広がる８つのアイコン６０２ａ〜６０２ｈを含む円形のコントロールである。
中央領域６０４は、ユーザインタフェース６０５の略中央に位置合わせされる。
コントロール６０６は、ユーザインタフェース６１０の右下の隅の近傍に位置する中央領域６０９から、４つのアイコン６０７ａ〜６０７ｄを含む９０°の扇形部分を占める扇形のコントロールである。これら４つのアイコン６０７ａ〜６０７ｄも同様にハブアンドスポーク状に広がっている。
【００５７】
コントロール６１１は、ユーザインタフェース６１５の略中央に位置合わせされた中央領域の周りのブロック状の相互連動領域６１４ａ〜６１４ｈ内に位置する８つのアイコン６１２ａ〜６１２ｈを含む矩形のコントロールである。
コントロール６１６は略円形であり、ハブアンドスポーク状に中央領域６１９から広がる８つのアイコン６１７ａ〜６１７ｈを含み、加えて、ユーザインタフェース６２２上の複雑な経路６２１ａ及び６２１ｂに沿って中央領域６１９から広がる２つのアイコン６２０ａ及び６２０ｂを含む。
【００５８】
経路６２１は、単なる線形ではなく、また、アイコンをアクティブ化するために複数の方向にユーザがジェスチャー表現を行うことを必要とし得るという点で「複雑」である。
例として、ユーザが特定の距離の分、左上の所定方向にジェスチャーをし、そして上方向の動きをせずに左にジェスチャーをした時に、アイコン６２０ｂがアクティブ化されるようにしてもよい。
また、アイコン６２０ａは、「ディスエーブルコントロール」のアイコンに関連づけられていて、呼び出された場合にコントロール６１６をディスエーブル、又はオフにするように機能するということも特筆すべきである。
【００５９】
相互連動要素には、一又は複数の機能若しくはアプリケーションに関連づけられたコントロールの任意の部分も含まれる。
例として、各相互連動要素は、選択された場合にアプリケーションを呼び出すアイコンを含んでもよい。
コントロールが複数の相互連動要素を含む場合、コントロールを介して選択され得るアプリケーションをそれぞれ、「候補」アプリケーションと呼ぶ。
【００６０】
コントロールが円形である１つの構成では、相互連動要素をスポーク状とすることができ、コントロールの中央から、機能若しくはアプリケーションを呼び出すアイコンで終端するまで広がって延在する線が見える。
この場合、身体が小刻みに震えることにより生じるような小さなジェスチャーは、表象がスポークの全長を移動してスポークの遠端に配置された各アイコンに到達するほど十分に大きくない限り、相互連動要素に関連づけられたアプリケーションを呼び出すことのないように無視される、又は、無効となるようにしてもよい。
【００６１】
コントロールがパイ状の別のアプリケーションでは、相互連動要素に入り込む表象の任意の動き（又は閾値を超える動き）によって、相互連動要素が機能若しくはアプリケーションを呼び出すように、相互連動要素は、扇形（パイ状）領域の形状を有してもよい。
相互連動要素（又は相互連動要素の外側部分）から中央領域を分離する可視又は不可視なガイド線を画定することによってこの閾値を定め、表象がガイド線を横切る際に表象の近傍であることに基づいてガイド線が選択されるようにしてもよい。
このような構成によって、相互連動領域の選択を迅速化することが可能となり、ユーザによる動きの正確さに対する要求を緩くし、又は、精細な動きを認識するためにアプリケーションによって生じる計算コストを削減することができる。
【００６２】
閾値は、距離及び／又は速さの関数としてもよい。
具体的には、以前にユーザがある期間にわって実行して記録されたジェスチャーの距離及び速さに基づいて、閾値の乗算係数を、ある期間にわたるユーザのスタイルに適応させることができる。
あるいは、閾値の乗算係数を、ジェスチャー時に観測された速さに基づいて、ジェスチャーが行われている間のユーザのスタイルに適応させてもよい。
閾値の距離は、（腕を大きく振るスタイルのユーザに対して）ユーザが速く動く場合に延長する、あるいは（より慎重なスタイルユーザに対して）ユーザがゆっくり動く場合には短くしてもよい。
閾値の距離は、ユーザが以前にジェスチャーを実行した際に動いた平均距離に従って設定してもよい。
【００６３】
スポークの半径と角度は、尤度の高いアイテム又は相互連動要素を選択することが容易になるように、アイテムが選択され得る尤度に応じて変化していてもよい。
具体的には、ユーザインタフェース６２４に示されるように、尤度が高い、又は人気のあるアイテムのスポーク６２５の半径は、通常のアイテムに関係づけられたスポーク６２６よりも短くしてもよい。
また、尤度の高いアイテムの間の角度６２７をそれほど人気のないアイテムの角度６２９よりも大きくしてもよい。これによって、尤度の高いアイテムを選択することが容易になる。
コントロール６３０上のアイテムに関連づけられた尤度、すなわち、そのスポークの属性は、アイテムの人気度に従っていてもよく、ユーザが最近そのアイテムにアクセスした回数に動的に基づいていてもよく、より大きなサンプリングによるそのアイテムへの最近のユーザのアクセス回数に関する統計情報に動的に基づいていてもよく、アイテムの使用の期待に基づいて予め決められていてもよく、あるいは、ベンダーがどのアイテムを推進するかに予め基づいてもよい。
【００６４】
人気度をコントロールの間隔及び角度をベースにすることに加えて、コントロールのこれらの質又はこれら以外の質を、ユーザのジェスチャーやジェスチャーの一部に依存させてもよい。
例えば、ユーザが右方向に振れるジェスチャーを行った場合、ユーザインタフェース６２４に示すように、右側のアイテムが広がって、それらの選択が容易になるようにしてもよい。
そして、動的に位置合わせされた相互連動要素に追従するように、ユーザが自身のジェスチャーの経路を調整してもよい。これによって、曲がったジェスチャー経路となる。
【００６５】
特定の相互連動要素によって他の相互連動要素が現れ、複雑な経路が現れる、又は、画定されるようにしてもよい。
例えば、親の相互連動要素が、機能のカテゴリー（複数の場合を含む）を表し、親の相互連動要素が選択されると、それぞれが機能カテゴリーの各々を表す複数の子の相互連動要素が、親の第１の相互連動要素から放射状に広がって現れるようにしてもよい。
例えば、ユーザインタフェース６３１では、表象６３２がメールアイコン６３３（すなわち、親の相互連動要素）の上をホーバーした場合に、選択されたメールアイコン６３３から、メール読み出しアイコン６３５、メール作成アイコン６３６、及びメール検索アイコン６３７（子の相互連動要素）が発生し放射状に広がる。
【００６６】
メールアイコン６３３を選択する前の初期状態では、コントロール６３９はユーザインタフェース６３１内の中央に配置され、メールアイコン６３３の１つが選択されると、子の相互連動要素が容易に選択できるように、コントロール６３９を隅に移動するようにしてもよい。
あるいは、コントロール６３９は初期状態において、既にユーザインタフェース６３１の隅に配置しておいてもよい。
【００６７】
この場合、親の相互連動要素の方向の動きに続く子の相互連動要素のアイテムの方向の動きを含む、複雑な経路が画定されるようにしてもよい。
子のアイテムが現れる際には、親と兄弟関係にあるものが画面から消え去るようにして、通常画面に収まるアイコンの数よりも多くのアイコンを選択できるようにしてもよい。
例えば、メールアイコン６３３の選択の前の状態では、コントロール６３９が、より多くの相互連動要素を含んでいてもよく、例えば、コントロール６０１と同様な視覚的な外観を有していてもよい。
【００６８】
一実装形態では、イネーブリングジェスチャーによって、ユーザの身体のコントロールオブジェクト（すなわち、手）が都合の悪い位置に配置されることもあり得る。
例として、「大きく振る（ｓｗｉｐｉｎｇ）」というイネーブリングジェスチャーの結果として、ユーザの手が、カメラの画角の境界の近く又は外側に位置することになり得る。
このような状況や他の状況において、今後のジェスチャー認識を容易にする、又は改善させる（自由空間における）目標位置に、ユーザのコントロールオブジェクトの向きを合わせる、又は、位置合わせする処理を行ってもよい。
自由空間における目標位置は、カメラの画角の中央位置などの位置に予め定めてもよい。あるいは目標位置は、動的に決められてもよく、例えば、良好に照光された位置、コンストラスト比が高い領域、又は複雑な背景のない領域、又は他の運動をしている被写体から離れた画角の領域に決定してもよい。
【００６９】
ジェスチャーの認識を改善するためにユーザの位置を位置合わせする１つのアプローチとして、ユーザインタフェース、又はコントロールに目標画像と表象を表示し、ユーザに推測させる、又は、ユーザの身体の動きによって表象を移動させて、表象を目標画像と位置合わせさせるものがある。
このように、ユーザの表象を最初は中央領域の外に表示し、中央領域に目標画像を表示させてもよい。
【００７０】
他の画像で再位置合わせジェスチャーを認識し、その再位置合わせジェスチャーに基づいて、目標画像に対して表象を動かしてもよい。
移動された表象が目標画像と位置合わせされている場合、中央領域に表象が表示される。
再位置合わせによって、ユーザの手を確実にカメラの画角の中に留まるようにしてもよく、ユーザが、一又は複数の方向のジェスチャーを行うため、確実に腕のリーチが十分となるようにしてもよい。
【００７１】
図７に、再位置合わせの代表的なジェスチャーを示す。ユーザ７０１は、第１の位置７０２から第２の位置７０３へとユーザの左手を上方に移動するジェスチャー表現をしている。これによって、ユーザインタフェース７０４内の表象も、第１の位置７０５から第２の位置７０６へと移動する。
第２の位置７０６がユーザインタフェース７０７の中央の目標画像７０７と位置合わせされると、ジェスチャー表現によって最初に高機能化コントロールが現れる。
その後、ユーザが高機能化コントロールと相互連動するジェスチャー表現をした場合、コントロールオブジェクトを画角に対して所望の位置に配置し直すさらなる再位置合わせ処理を行ってもよい。
【００７２】
別の構成では、自由空間におけるコントロールオブジェクトの位置に対応するユーザインタフェースの位置にマウスカーソルを表示してもよい。
あるいは、このコントロール自体が、ユーザインタフェースの中央ではない位置から離れて移動してもよく、又は、ユーザインタフェースの中央ではない位置で最初に生成されていてもよい。
例えば、イネーブリングジェスチャーの結果として、ユーザの手がカメラの画角の左上方向の遠方に位置する場合、コントロールは、ユーザインタフェース上の右頂部から放射状に広がる９０°の扇形として生成されてもよい。
このような場合、コントロールがユーザインタフェースの中央に配置され、相互連動要素により完全に包囲される状態と比較して、同数、又は、より少ない数の相互連動要素を表示することができる。
【００７３】
いずれにしても、図３に戻ると、表象が一旦コントロールの中央領域の内部に表示されると、ジェスチャーコントロールに対してインタフェースが実行可能になる。
認識されたユーザのジェスチャーに基づいて、コントロールとの相互連動が発生する（Ｓ３０５）。
認識されたユーザのジェスチャーは、表象を、自由空間におけるユーザの動きの方向と大きさに基づく方向と大きさで、コントロールの中央領域から離れるように移動させ、表象が一又は複数の相互連動要素と重なり合うようすることができる。
【００７４】
この大きさは、距離と速さの関数としてもよい。
大きさの乗算係数を、以前にユーザがある期間にわってジェスチャーを実行して記録された距離及び速さに基づいて、大きさの乗算係数を、ある期間にわたるユーザのスタイルに適応させることができる。
あるいは、大きさの乗算係数を、ジェスチャー時に観測された速さに基づいて、ジェスチャーが行われている間のユーザのスタイルに適応させてもよい。
大きさの乗算係数は、（腕を大きく振るスタイルのユーザに対して）ユーザが速く動く場合は減少する、あるいは（より慎重なスタイルユーザに対して）ユーザがゆっくり動く場合には増大するようにしてもよい。
【００７５】
マウスイベントと同様に、表象が特定の相互連動要素と重なり合う、あるいは特定の相互連動要素を選択した場合、コントロールは使用不可となり、その下位の相互連動要素又はアイコンが強調表示され、当該下位の相互連動要素に関連づけられたアプリケーション又は機能の一又は複数が呼び出される、実行される、ロードされる、プリロードされる、又は、その他の動作をしてもよく、別のモード（例えば、「マウスコントロールモード」など）がアクティブ化されてもよく、あるいは、コントロールの一部と表象が重なり合って表示されること以外、何も起こらないようにしてもよい。
【００７６】
図８は、ジェスチャーとそれに関連するコントロールとの相互連動の例を示している。
具体的には、ユーザ８０１は、自身の腕を第１の位置８０２から第２の位置８０３へと動かしてジェスチャー表現する。これによって、ユーザインタフェース８０６における表象８０５が中央位置８０７から右に動き、中央領域の右に配置された相互連動要素のアイコン８０９が強調表示される。
アイコン８０９の選択、及び強調表示は、マウスを重ね合わせるイベント、又はマウスダウンイベントを模倣したものであってもよい。これによって、アイコン８０９に関連づけられたアプリケーション（例えば、ウェブブラウザアプリケーションなど）が実行される。
第２の状態８０３における腕のわずかな下方向の動きなどの、ユーザ８０１の無関係な動きは、身体構造モデルを参照などにより、フィルタリングする、又は、無視することができる。
【００７７】
マウスコントロールモードでは、指の動きなどのさらなるジェスチャーが、マウスイベントにマッピングされる。
例えば、図９に示すように、ユーザ９０１が、マウスカーソルのコントロールをデスクトップに移動すると判断した場合、自身の手を相互連動要素に向けて振る代わりに、５本指の手のポーズ９０２を崩して、指し示す手のポーズ９０４として、マウスコントロールモードを呼び出してもよい。
マウスコントロールモードは、ユーザインタフェース９０６において矢印カーソル９０５を別の非マウスコントロールモードの表象に置き換える等、異なる表象に置き変えて可視化してもよい。
【００７８】
マウスコントロールモードでは、トラッキングシステムが、スクリーンから消える、又は使用不可となる（例えば、完全に消える、透過度を増す、又はグレーとなるなどによって）ようにコントロールに伝達し、ユーザが自身の手をディスプレイの周りに動かすと、ユーザの手及び／又は指の位置に基づいてマウスカーソルがトラックされたマウス位置に現れる。
図１０に示すように、マウスコントロールモードがアクティブ化すると、ユーザ１００１は、第１の位置１００２から第２の位置１００４に自身の腕と指差した手を左上に動かし、ユーザインタフェース１００６における表象１００５をデスクトップのアイコン１００７の方向に移動させることができる。
【００７９】
他の手のポーズ及びジェスチャーを用いて、マウス又はキーボードのイベントを模倣（ｅｍｕｌａｔｅ）してもよい。
例えば、図１１に示すように、人差し指と親指を開いたジェスチャー１１０１は、マウスダウンイベントを模倣し、人差し指を開いて親指を下げたジェスチャー１１０２は、マウスアップイベントを模倣し、手を鋭く振り下ろすジェスチャー１１０４は、キャンセル又はエスケープイベント又はダブルクリックイベントを模倣し、親指のみを開いて指を結ぶジェスチャー１１０５は、シングルマウスイベントを模倣するようにしてもよい。
【００８０】
別の例では、マウスダウンイベントを行うため、ユーザは、自身の人差し指の上に親指を開いて、古典的な「銃」のポーズを行うようにしてもよい。
マウスアップイベントを行うため、ユーザは、親指をその静止位置に下げるようにしてもよい。
右クリックイベントを行うため、ユーザは、自身の手を所定時間動かさずに「マウスダウン」ポーズを保持して右クリックメニューを呼び出すようにしてもよい。
マウスカーソルの位置は、マウスダウン、又は、マウスアップのジェスチャーを行う間に、ユーザが意図せずしてマウスカーソルの位置を動かしてしまうことを防止するため、フィルタリングしてもよい。
例えば、カーソルの位置は、マウスアップ又はマウスダウンイベントが実行されている間に、検出されたジェスチャーの開始時の位置に直ちに戻るようにしてもよい。
【００８１】
別の代表的なジェスチャーのセットでは、親指を下げるジェスチャー１１０２がマウスダウンイベントを模倣し、親指を挙げるジェスチャー１１０１がマウスアップイベントを模倣するようにしてもよい。
指を下に曲げることが、マウスダウンイベントを模倣し、指を真っ直ぐに伸ばすことが、マウスアップイベントを模倣するようにしてもよい。
右クリックは、異なる指、又は複数の指がかかわる類似のジェスチャーを用いて模倣してもよい。
「握る」動きで手の拳を固める場合、手を閉じることがマウスダウンイベントを模倣し、手を開くことがマウスアップイベントを模倣するようにしてもよい。
この代表的なジェスチャーのセットは、握り引っ張ることでドラッグを行われるので、直感的に行うことができ、指で差し示すこと、および手のサイズを変更することをせずとも、十分な精度を得ることができる。
【００８２】
また、手の平を前に出して指を伸ばす手のポーズを代表的なエンゲージメントジェスチャーとして、指を差しながら親指が上げる手のポーズをマウスダウンジェスチャーとして説明したが、他の構成も可能である。
例えば、手の平を前に出して指を伸ばす手のポーズを、マウスダウンイベントを発生するために用いてもよく、手を閉じて握る動きがマウスダウンイベントを表し、手を開くことがマウスアップイベントを表すようにしてもよい。
これのようにして、使用される特定の手のジェスチャーを、合図した命令がユーザにとって自然であるように調整することができる。
【００８３】
図１２に示すように、マウスドラッグイベントを行う場合、ユーザは、自身の手を「マウスダウン」ポーズに保持しながら、自身の手をトラッキング領域の周辺で動かし、それに応じてマウスを動かすようにしてもよい。
具体的には、ユーザ１２０１は、マウスダウンを表す指差すポーズを保持してデスクトップアイコン１２０５を掴みながら、自身の腕を第１の位置１２０２から第２の位置１２０４へと自身の左下に動かし、それをユーザインタフェース１２０６の中央に向けて動かす。
「マルチタッチ」のコントロール動作を行う場合、ユーザは第２の手をトラッキング領域に導き、親指の動きを利用して、この付加的に利用可能なトラッキング要素を使用して「クリック」を行うことができる。
【００８４】
図３に戻ると、メディアセンターアプリケーションなどのアプリケーションが、コントロールとの相互連動に基づいて制御され（Ｓ３０６）、これによって、処理３００が終了する（Ｓ３０７）。
さらに、アプリケーションの制御は、強調表示、又は、選択されたアイコンに関連づけられた候補アプリケーション、又は、移動若しくは再位置合わせされた表象に隣接した相互連動要素に関連づけられた候補アプリケーションを制御することをさらに含んでもよい。
【００８５】
ユーザが高機能化コントロールを使用不可にする、エンゲージメントを解除する、又は非アクティブ化することを意図することもあり得る。
１つのアプローチとして、エンゲージメントジェスチャーが再びアクティブ化されるまで、手のポーズ、又は手のポーズと合わせて手の動きを使用して、ジェスチャーコントロールをオフにするものがある。
図１３において、例えば、ユーザ１３０１は自身の腕を、コントロールしている第１の位置１３０２から自身の胴１３０５に近い、脱力した、又は、リラックスした位置に下げる。
このような動きによって、コントロールがユーザインタフェース１３０６から消える。
【００８６】
別のアプローチとして、ユーザの胴の物理的な存在を検出し、手と身体の両方がトラッキング領域の外に動く、又は、これらがカメラと、カメラから特定の距離を離れて画定された平面との間にもはや存在しない場合にコントロールを使用不可とするものがある。
図１４に示すように、例えば、ユーザ１４０１は、カメラ１４０４の画角フレーム１４０２の外に動くことによってコントロールは使用不可となる。これによって、コントロールはユーザインタフェース１４０５から消える。
【００８７】
１つの相互連動領域が「ディスエーブルコントロール（使用不可制御）」機能に関連づけられている場合、ユーザは、その使用不可用相互連動領域の方向に自身の手を振ることによってコントロールを明示的に使用不可とするようにしてもよい。
また、図１５に示すように、ユーザ１５０１は、第２の手１５０２を第１の手１５０４の上で振る動きをするジェスチャー表現等の別のコントロールオブジェクトの動作によってコントロールを使用不可として、ユーザインタフェース１５０５をクリアするようにしてもよい。
【００８８】
コントロールを、ユーザの識別又は位置に基づいて、デバイス上で作動する他のアプリケーションに基づいて、ユーザインタフェース内の自由空間の量に基づいて、あるいは、その他の理由によって、動的に変更するようにしてもよい。
例えば、図１６に示すように、ユーザが子のユーザ１６０１として識別される場合、コントロール１６０２は、より単調な形状であってもよく、子のユーザ１６０１に対して適切な（例えば、年齢的又は成長段階的に適切な）アイコン１６０４を有していてもよい。
同様に、ユーザが大人のユーザ１６０５として特定される場合、コントロール１６０６は、より複雑な形状であってもよく、制限がより少なくてもよく、又は、大人のユーザ１６０５に対して適切なアイコンや機能にさらにアクセスすることが付加的に可能になっていてもよい。
【００８９】
図１７は、認識されたジェスチャーを使用した高機能化入力を行うことを可能にする代表的な処理１７０１のフローチャートである。
処理１７０１が開始すると（１７０１）、ユーザの一又は複数の画像からエンゲージメントポーズが検出されたかどうかが判断する。
エンゲージメントポーズが認識されてないと判断された場合（Ｓ１７０２において）、処理１７００はエンゲージメントポーズが認識されるまで待つ（Ｓ１７０２）。
【００９０】
エンゲージメントポーズが検出された場合（Ｓ１７０２において）、表象の位置合わせ処理が開始し（Ｓ１７０４）、エンゲージメントポーズがまだ検出されるかどうかということを再び判断される（Ｓ１７０５）。
エンゲージメントポーズがまだ検出されると判断された場合（Ｓ１７０５において）、表象が目標画像と位置合わせされているかどうかが判断される（１７０６）。
【００９１】
表象が目標画像と位置合わせされていると判断された場合（Ｓ１７０６において）、高機能化コントロールが表示され（Ｓ１７０７）、ジェスチャーがまだ検出されるかどうか判断される（Ｓ１７０９）。
ジェスチャーがまだ検出される場合（Ｓ１７０９）、エンゲージメントポーズがまだ存在するかどうか判断される（１７１０）。
エンゲージメントポーズがまだ存在する場合（Ｓ１７１０において）、手を振るジェスチャーが認識されるかどうかが判断される（Ｓ１７１１）。
手を振るジェスチャーが認識される場合（Ｓ１７１１において）、手を振ることに関連づけられた機能が、高機能化コントロールを介して呼び出され（Ｓ１７１２）、これによって、処理１７００が終了する（Ｓ１７１４）。
【００９２】
エンゲージメントポーズが認識されていないと判断された場合（Ｓ１７０５において）、表象に対する位置合わせ処理が終了し（Ｓ１７１５）、処理１７００は、エンゲージメントポーズが認識されるまで待つ（Ｓ１７０２）。
表象が目標画像と位置合わせされていない場合（Ｓ１７０６）、エンゲージメントポーズが認識されるかどうか判断される（Ｓ１７０５）。
ジェスチャーがまだ検出されない場合（Ｓ１７０９）、高機能化コントロールが除去され（Ｓ１７１６）、処理１７００は、エンゲージメントポーズが再び認識されるまで待つ（Ｓ１７０２）。
【００９３】
エンゲージメントポーズが認識されない場合（Ｓ１７１０）、指差すジェスチャーが認識されたかどうかが判断され（Ｓ１７１０）、そのように判断されれば、マウスコントロールモードがアクティブ化し（Ｓ１７１９）、処理１７００が終了する（Ｓ１７１５）。
指差すジェスチャーが認識されていない場合（Ｓ１７１７）、ジェスチャーがまだ検出されるかどうかが判断される（Ｓ１７０９）。
手を振るジェスチャーが認識される場合（Ｓ１７１１において）、ジェスチャーがまだ検出されるかどうかが判断される（Ｓ１７０９）。
【００９４】
このように、ユーザは高機能化オンスクリーンコントロールと相互連動することが可能となり、これによって、メディアセンター機能が呼び出される。これは例えば、ユーザの画像にアクセスすることに基づいて、自動認識を行うことができる特定のジェスチャーを行うことによってなされる。
他の特徴としては、コントロールには最初にユーザの表象を包囲するアイコンが含まれる。これによって、直接的、直感的で自然なユーザの身体の動きを介して、関連づけられたアイコンの機能を容易に選択することができる。
【００９５】
図１８は、プロセッサ及びユーザインタフェースをさらに備えたコンピューティングデバイス１８０１の外観の例を示す。
別の一般的な実装形態において、デバイスはユーザインタフェースとプロセッサを備える。
ユーザインタフェースは、中央領域に対して放射状に配置された相互連動要素を含んでいるコントロールの中央領域に、ユーザの表象を表示するように構成する。
プロセッサは、第１及び第２の画像からユーザのジェスチャーを認識されたユーザのジェスチャーに基づいてコントロールと相互連動し、コントロールとの相互連動に基づいてアプリケーションを制御するように構成する。
【００９６】
より詳細には、コンピューティングデバイス１８０１のハードウェア環境は、ユーザとのインタフェースのためにテキスト及び画像を表示するディスプレイモニター１８０８と、コンピューティングデバイス１８０１にテキストデータユーザコマンドを入力するキーボード１８０９と、ディスプレイモニター１８０８上に表示されたオブジェクトをポイント、選択、操作するマウス１８１０と、固定ディスクドライブ１８１１と、取り外し可能なディスクドライブ１８１２と、テープドライブ１８１４と、ハードコピー出力デバイスと、コンピュータネットワーク接続と、及びデジタル入力デバイス１８１７とを備える。
【００９７】
ディスプレイモニター１８０８は、コンピューティングデバイス１８０１によって使用されるソフトウェアアプリケーションと、さらにコンピューティングデバイス１８０１を動作させるために必要なオペレーティングシステムプログラムとのためのユーザインタフェースを作り上げるグラフィックス、画像及びテキストを表示する。
ユーザは、コンピュータのオペレーティングシステムプログラムと、さらにアプリケーションプログラムを動作させ制御する命令やデータを入力するキーボード１８０９を使用する。
マウス１８１０は、いずれの種類のポインティングデバイスであってもよく、ジョイスティック、トラックボール、タッチパッド、又は他のポインティングデバイスであってもよい。
ユーザインタフェースを表示し、テキストや数字をユーザが入力したり選択することを可能にし、あるいはメニューの選択肢を選択することを可能にするように使用されるソフトウェアが、固定ディスクドライブ１８１１のようなコンピュータの読み取り可能なメモリーメディア上にローカルに記憶される。
【００９８】
別の実装形態において、固定ディスクドライブ１８１１はそれ自身、独立ディスク冗長アレー（ＲＡＩＤ）のような物理的なドライブユニットを多く有していてもよく、ディスクドライブファーム（ｆａｒｍ）であってもよく、又は別の離れたコンピューティングユニットに物理的に位置するディスクアレーであってもよい。
このようなコンピュータ読み取り可能なメモリーメディアによって、コンピューティングデバイス１８０１が、取り外し可能及び取り外し不能なメモリーメディアに記憶されたコンピュータが実行可能な処理ステップ、アプリケーションプログラム等にアクセスすることを可能にする。
【００９９】
コンピュータネットワーク接続は、モデム接続、イー座ネットを含むローカルエリアネットワーク（ＬＡＮ）接続、又はデジタル加入者回線（ＤＳＬ）、ケーブル高速インターネット接続、ブロードバンドオバーパワーライン接続、ダイアルアップ接続、Ｔー１ライン、Ｔ−３ライン、光ファイバー接続、又は衛星接続のようなワイドエリアネットワーク（ＷＡＮ）接続であってもよい。
ネットワーク１３０６は、ＬＡＮネットワーク、企業内又は政府内ＷＡＮネットワーク、インターネット又は他のネットワークでもよい。
【０１００】
コンピュータネットワーク接続は、有線ライン又は無線のコネクターであってもよい。
無線コネクターの例としては、例えば、ＩＮＦＲＡＲＥＤ  ＤＡＴＡ  ＡＳＳＯＣＩＡＴＩＯＮ（登録商標）（ＩｒＤＡ（登録商標））無線コネクター、光無線コネクター、ＩＮＳＴＩＴＵＴＥ  ＯＦ  ＥＬＥＣＴＲＩＣＡＬ  ＡＮＤ  ＥＬＥＣＴＲＯＮＩＣＳ  ＥＮＧＩＮＥＥＲＳ（登録商標）（ＩＥＥＥ（登録商標））標準８０２．１１無線コネクター、ＢＬＵＥＴＯＯＴＨ（登録商標）無線コネクター、直交周波数分割多重（ＯＦＤＭ）ウルトラワイドバンド（ＵＷＢ）無線コネクター、時変調ウルトラワイドバンド（ＴＭ−ＵＷＢ）無線コネクター、又は他の無線コネクターが含まれる。有線コネクターの例としては、例えば、ＩＥＥＥ（登録商標）−１３９４  ＦＩＲＥＷＩＲＥ（登録商標）コネクター、ユニバーサルシリアルバス（ＵＳＢ）コネクター、シリアルポートコネクター、パラレルポートコネクター、又は他の有線コネクターが含まれる。
【０１０１】
取り外し可能なディスクドライブ１８１２は、コンピューティングデバイス１８０１からデータを書き出す、あるいはコンピューティングデバイス１８０１にデータをロードするのに用いられる取り外し可能なストレージデバイスである。
取り外し可能なディスクドライブ１８１２には、フロッピーディスクドライブ（登録商標）、ＩＯＭＥＧＡ（登録商標）  ＺＩＰ（登録商標）ドライブ、コンパクトディスクーリードオンリーメモリー（ＣＤ−ＲＯＭ）ドライブ、ＣＤ−レコーダブルドライブ（ＣＤ−Ｒ）、ＣＤ−リライタブルドライブ（ＣＤ−ＲＷ）、フラッシュメモリー、ＵＳＢフラッシュドライブ、サム（ｔｈｕｍｂ）ドライブ、ペンドライブ、キードライブ、高密度デジタル多用途ディスク（ＨＤ−ＤＶＤ）光ディスクドライブ、ＢｌｕーＲａｙ光ディスクドライブ、ホログラフィックデジタルデータストレージ（ＨＤＤＳ）光ディスクドライブ、あるいはＤＶＤ−レコーダブル（「ＤＶＤ−Ｒ」又は「ＤＶＤ＋Ｒ」）、ＤＶＤ−リライダブル（「ＤＶＤ−ＲＷ」又は「ＤＶＤ＋ＲＷ」）、又はＤＶＤ−ＲＡＭのような多様な記録可能又は再び書き込み可能なデジタル多用途ディスク（ＤＶＤ）ドライブのいずれであってもよい。
オペレーティングシステムプログラム、アプリケーション、及び多様なデータファイルが、固定ディスクドライブ１８１１、又は取り外し可能なディスクドライブ１８１２のための取り外し可能なメディアに記憶されたディスクに記憶される。
【０１０２】
テープドライブ１８１４は、コンピューティングデバイス１８０１からデータを書き出す、あるいはコンピューティングデバイス１８０１にデータをロードするために用いられるテープストレージデバイスである。テープドライブ１８１４は、１／４インチカートリッジ（ＱＩＣ）、４ｍｍデジタルオーディオテープ（ＤＡＴ）、８ｍｍデジタルリニアテープ（ＤＬＴ）のドライブ、又は他の種類のテープのものであってもよい。
【０１０３】
また、コンピューティングデバイス１８０１をデスクトップＰＣであるものとして上で説明したが、別の実装形態において、コンピューティングデバイス１８０１は、ラップトップ、ワークステーション、ミッドレンジコンピュータ、メインフレーム、エンベデッドシステム、電話器、ハンドヘルド又はタブレットコンピュータ、ＰＤＡ、ゲームデバイス又はコンソール、デジタル写真フレーム、遠隔会議デバイス、又は他の種類のコンピュータであってもよい。
【０１０４】
図１９は、図１８に示したコンピュータの内部アーキテクチャーを示すブロック図である。以下においてコンピューティングデバイス１８０１の例示的な内部アーキテクチャーを説明する。コンピューティング環境は、オペレーティングシステム又はアプリケーションを構成するコンピュータ命令が処理されるコンピュータの中央演算装置（ＣＰＵ）１９０１と、ディスプレイモニター１８０８上にグラフィックス、画像、及びテキストをレンダリングするようにコミュニケーションインタフェース及び処理機能を提供するディスプレイインタフェース１９０２と、キーボード１８０９に対してコミュニケーションインタフェースを提供するキーボードインタフェース１９０４と、マウス１８１０又は同等なポインティングデバイスにコミュニケーションインタフェースを提供するポインティングデバイスインタフェース１９０５と、デジタル入力デバイス１８１７にコミュニケーションインタフェースを提供するデジタル入力インタフェース１９０６と、ハードコピー出力デバイスにコミュニケーションインタフェースを提供するハードコピー出力デバイスインタフェースと、コンピュータのＣＰＵ１９０１によって処理されるために、コンピュータの命令及びデータが揮発性メモリーデバイスに記憶されるランダムアクセスメモリー（ＲＡＭ）１９１０と、基本入出力（Ｉ／Ｏ）、起動、又はキーボード１８０９からのキーストロークの受け入れのような基本的なシステム機能のための不可変な低レベルシステムコード又はシステムデータが不揮発性メモリーデバイスに記憶されるリードオンリーメモリー（ＲＯＭ）１９１１と、オペレーティングシステム１９２１、アプリケーションプログラム１９２２（必要に応じて高機能化コントロールのアプリケーション１９２３、及び他のアプリケーション１９２４を含む）及びデータファイル１９２５を構成するファイルが記憶されるストレージ１９２０又は他の適切な種類のメモリー（例、ランダムアクセスメモリー（ＲＡＭ）、リードオンリーメモリー（ＲＯＭ）、プログラマブルリードオンリーメモリー（ＰＲＯＭ）、消去可能プログラマブルリードオンリーメモリー（ＥＰＲＯＭ）、電気的に消去可能なプログラマブルリードオンリーメモリー（ＥＥＰＲＯＭ）、磁気ディスク、光学的ディスク、フロッピーディスク（登録商標）、ハードディスク、取り外し可能なカートリッジ、フラッシュドライブ）と、並びに、コンピュータネットワーク接続を介してネットワークにコミュニケーションインタフェースを提供するコンピュータネットワークインタフェースを含んでいる。これらの構成デバイスとコンピュータのＣＰＵ１９０１がコンピュータバス１９２７を介してお互いにやりとりをする。
【０１０５】
一般的な実装形態の１つにおいて、コンピュータプログラム製品が、ストレージ１９２０のような、機械によって読み取り可能な媒体に有体的に具現化される、又は記録される。
コンピュータプログラム製品は、機械によって読み取られて、第１及び第２の画像からユーザのジェスチャーを認識し、中央領域に対して放射状に配置された相互連動要素を含んでいるコントロールの中央領域にユーザの表象を表示し、認識されたユーザのジェスチャーに基づいてコントロールと相互連動し、コントロールとの相互連動に基づいてアプリケーションを制御することをデータ処理装置に行わせる命令を含んでいる。
【０１０６】
ＲＡＭ１９１０は、コンピュータバス１９２７とインタフェースし、オペレーティングシステム、アプリケーションプログラム、及びデバイスドライバのようなソフトウェアプログラムの実行時にコンピュータのＣＰＵ１９０１に対して速いＲＡＭストレージを提供する。より具体的には、コンピュータのＣＰＵ１９０１は、ソフトウェアプログラムを実行するため、固定ディスクドライブ１８１１又は他のメモリーメディアからＲＡＭ１９１０のフィールドへと、コンピュータが実行可能な処理ステップをロードする。データがＲＡＭ１９１０において記憶され、ここでデータが実行時にコンピュータのＣＰＵ１９０１によってアクセスされる。
【０１０７】
コンピューティングデバイス１８０１は、オペレーティングシステム１９２１、ワードプロセッシング、スプレッドシート、プレゼンテーション、ゲーム、又は他のアプリケーションのようなアプリケーションプログラム１９２２に対するコンピュータが実行可能なコードを記憶する。上記の実装形態を使用して、ユーザインタフェースを高機能化コントロールに出力し、テキストや数字をユーザが入力することを可能にし、あるいはコントロールから選択することは可能だが、本開示に従う機能を、ダイナミックリンクライブラリ（ＤＬＬ）、又はＭＩＣＲＯＳＯＦＴ（登録商標）Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒウェブブラウザのようなインタネットウェブブラウザ等の他のアプリケーションプログラムに対するプラグインとして実装することも可能である。
【０１０８】
コンピュータのＣＰＵ１９０１は、ＩＮＴＥＬ（登録商標）又はＡＭＤ（登録商標）プロセッサ、ＰＯＷＥＲＰＣ（登録商標）プロセッサ、ＭＩＰＳ（登録商標）縮小命令セットコンピュータ（ＲＩＳＣ）プロセッサ、ＳＰＡＲＣ（登録商標）プロセッサ、ＡＣＯＲＮ（登録商標）ＲＩＳＣ  Ｍａｃｈｉｎｅ（ＡＲＭ（登録商標））アーキテクチャープロセッサ、ＨＰ  ＡＬＰＨＡＳＥＲＶＥＲ（登録商標）又はメインフレーム用のプロプライエタリーなコンピュータプロセッサを含む多くのハイパフォーマンスコンピュータプロセッサのいずれかである。別の構成形態において、コンピュータのＣＰＵ１９０１は、ハイパフォーマンスワークステーション及びサーバにおいて使用される複数のＣＰＵ構成、又はメインフレームで使用される複数のスケーラブルプロセッシングユニットを含む、複数のプロセッシングユニットである。
【０１０９】
オペレーティングシステム１９２１は、ＭＩＣＲＯＳＯＦＴ（登録商標）  ＷＩＮＤＯＷＳ  ＮＴ（登録商標）／ＷＩＮＤＯＷＳ（登録商標）  ２０００／ＷＩＮＤＯＷＳ（登録商標）  ＸＰ  Ｗｏｒｋｓｔａｔｉｏｎ；  ＷＩＮＤＯＷＳ  ＮＴ（登録商標）／ＷＩＮＤＯＷＳ（登録商標）２０００／ＷＩＮＤＯＷＳ（登録商標）  ＸＰ  Ｓｅｒｖｅｒ；ＩＢＭ（登録商標）のワークステーション及びサーバ用のＡＩＸ（登録商標）、ＳＵＮ（登録商標）のワークステーション及びサーバ用のＳＵＮＯＳ（登録商標）、ＩＮＴＥＬ（登録商標）ＣＰＵベースのワークステーション及びサーバ用のＬＩＮＵＸ（登録商標）、ＨＰ（登録商標）のワークステーション及びサーバ用のＨＰ  ＵＸ  ＷＯＲＫＬＯＡＤ  ＭＡＮＡＧＥＲ（登録商標）、ＳＧＩ（登録商標）のワークステーション及びサーバ用のＩＲＩＸ（登録商標）、Ｄｉｇｉｔａｌ  Ｅｑｕｉｐｍｅｎｔ  Ｃｏｒｐｏｒａｔｉｏｎ製コンピュータ用のＶＡＸ／ＶＭＳ、ＨＰ  ＡＬＰＨＡＳＥＲＶＥＲ（登録商標）ベースのコンピュータ用のＯＰＥＮＶＭＳ（登録商標）、ＰＯＷＥＲＰＣ（登録商標）のベースのワークステーション及びサーバ用のＭＡＣ  ＯＳ（登録商標）  Ｘ、モバイルデバイス用のＳＹＭＢＩＡＮ  ＯＳ（登録商標）、ＷＩＮＤＯＷＳ  ＭＯＢＩＬＥ（登録商標）若しくはＷＩＮＤＯＷＳ  ＣＥ（登録商標）、ＰＡＬＭ（登録商標）、ＮＯＫＩＡ（登録商標）  ＯＳ（ＮＯＳ）、ＯＳＥ（登録商標）、又はＥＰＯＣ（登録商標）、あるいはコンピュータ若しくはエンベデッドシステム用のプロプライアタリーなオペレーションシステムであってもよい。オペレーティングシステム１９２１のためのアプリケーション開発プラットフォーム又はフレームワークは、ＢＩＮＡＲＹ  ＲＵＮＴＩＭＥ  ＥＮＶＩＲＯＮＭＥＮＴ  ＦＯＲ  ＷＩＲＥＬＥＳＳ（登録商標）（ＢＲＥＷ（登録商標））、若しくはＪａｖａ（登録商標）  Ｐｌａｔｆｏｒｍ，  Ｍｉｃｒｏ  Ｅｄｉｔｉｏｎ（Ｊａｖａ  ＭＥ（登録商標））又はＪａｖａ（登録商標）  ２  Ｐｌａｔｆｏｒｍ，  Ｍｉｃｒｏ  Ｅｄｉｔｉｏｎ（Ｊ２ＭＥ（登録商標））、ＰＹＴＨＯＮ（商標）、ＦＬＡＳＨ  ＬＩＴＥ（登録商標）、又はＭＩＣＲＯＳＯＦＴ（登録商標）  ．ＮＥＴ  Ｃｏｍｐａｃｔであってもよい。
【０１１０】
図１８及び１９は、ユーザがテキスト、数字を直感的かつ容易に入力させたり、あるいは複数のアイテムから選択させたりすることを可能にする高機能化コントロールを提供されるように構成された、プログラムコード又はプログラム若しくは処理のステップを実行するコンピューティングデバイスの可能性のある実装形態の１つを示したものだが、他の種類のコンピュータ又は実装形態も用いてもよい。
【０１１１】
上において幾つかの実装形態について説明した。しかし、本開示の精神及び範囲を離れずに多様な変更を行うことができるものと理解されるものである。したがって、他の実装形態も請求の範囲に含まれる。
【図１】
0005595935.tif 000002
【図２】
0005595935.tif 000003
【図３】
0005595935.tif 000004
【図４】
0005595935.tif 000005
【図５】
0005595935.tif 000006
【図６】
0005595935.tif 000007
【図７】
0005595935.tif 000008
【図８】
0005595935.tif 000009
【図９】
0005595935.tif 000010
【図１０】
0005595935.tif 000011
【図１１】
0005595935.tif 000012
【図１２】
0005595935.tif 000013
【図１３】
0005595935.tif 000014
【図１４】
0005595935.tif 000015
【図１５】
0005595935.tif 000016
【図１６】
0005595935.tif 000017
【図１７】
0005595935.tif 000018
【図１８】
0005595935.tif 000019
【図１９】
0005595935.tif 000020