(57)【特許請求の範囲】
【請求項１】
デバイスの動きを検知するステップと、
前記デバイスの検知された動きの形を標準化することによって、標準化された動きを決定するステップとを含み、前記標準化は、複数の次元において検知された動きの縮尺を変更することを含み、
更に、前記デバイスの標準化された動きに対応するジェスチャを認識するステップと、
認識されたジェスチャに対応する前記デバイスの機能を決定するステップと、
前記機能を呼び出すステップとを含み、
前記機能を決定するステップまたは機能を呼び出すステップは、第１の次元における形状のサイズの第２の次元における形状のサイズに対する比率に基づく、
コンピュータにより実施される方法。
【請求項２】
前記動きは、第１の軌跡の第１の動きと、第２の異なる軌跡の第２の動きとを含む、請求項１記載の方法。
【請求項３】
前記ジェスチャを認識するステップは、
検知された前記デバイスの動きによって画定される文字の形状、幾何学的形状またはパターンを認識するステップをさらに含む、
請求項１記載の方法。
【請求項４】
前記デバイスの動きを検知するステップは、
前記デバイスのユーザの無意識の身体運動を検出するステップをさらに含み、
呼び出される機能は、前記無意識の身体運動に関連付けられる、
請求項１記載の方法。
【請求項５】
第１および第２の時間で第１および第２のユーザ入力をそれぞれ検出するステップをさらに含み、
前記デバイスの動きを検知するステップは、前記第１および第２の時間の間に発生する前記デバイスの動きを検知するステップをさらに含む、
請求項１記載の方法。
【請求項６】
前記第１のユーザ入力は、振るユーザ入力、コントロール選択のユーザ入力、または静止して保持するユーザ入力である、
請求項５記載の方法。
【請求項７】
前記ジェスチャを認識するステップは、
検知された動きと、ジェスチャのモデル化された語彙との比較に基づいて、前記ジェスチャを選択するステップをさらに含む、
請求項１記載の方法。
【請求項８】
前記ジェスチャの語彙は、隠れマルコフモデル（ＨＭＭ）またはルールに基づくモデルを用いてモデル化される、請求項７記載の方法。
【請求項９】
前記ジェスチャの語彙の中で全てより少ない利用可能なジェスチャを選択的に起動するステップをさらに含み、
前記ジェスチャは、検知された動きと起動されたジェスチャとの比較に基づいて選択される、
請求項７記載の方法。
【請求項１０】
前記全てより少ない利用可能なジェスチャは、製造業者の設定、ユーザの設定またはアプリケーションの設定に基づいて使用可能となる、請求項９記載の方法。
【請求項１１】
特定のジェスチャを認識するように前記デバイスを学習させるステップと、
前記特定のジェスチャをジェスチャの語彙に追加するステップとをさらに含む、
請求項７記載の方法。
【請求項１２】
前記機能を呼び出すステップは、アプリケーションを実行する、画像を操作する、または文字を入力するステップをさらに含む、請求項１記載の方法。
【請求項１３】
前記デバイスの動きを検知するステップは、
第１および第２の時間で第１および第２のユーザ入力をそれぞれ検出するステップであって、前記第１の時間は前記第２の時間の前に生じるステップと、
前記第１の時間の前に第１の軌跡の第１の動きを検知するステップと、
前記第２の時間の後に第２の異なる軌跡の第２の動きを検知するステップと、
前記第１および第２の動きを結合するステップと、
結合された第１および第２の動きを検知された動きとして出力するステップとをさらに含む、
請求項１記載の方法。
【請求項１４】
前記機能を呼び出すステップは、仮想環境中をナビゲートする、画像を操作する、文字を入力する、アプリケーションを実行する、またはメディアハブ機能を呼び出すステップをさらに含む、請求項１記載の方法。
【請求項１５】
前記デバイスの動きは、画像データを用いて検知される、請求項１記載の方法。
【請求項１６】
前記標準化は、複数の次元のうちの少なくとも１つの次元に沿って、検知された動きの大きさを調節することを含む、請求項１記載の方法。
【請求項１７】
前記検知された動きは、複数の次元のうちの少なくとも１つにおいて縮尺が変更されない、請求項１記載の方法。
【請求項１８】
動きを検知するように構成されたセンサと、
前記センサによって検知された動きの形を標準化することによって、標準化された動きを決定して、前記標準化は、複数の次元において検知された動きの縮尺を変更することを含み、
前記センサによって検知された標準化された動きに対応するジェスチャを認識し、
認識されたジェスチャに対応する機能を決定し、
前記機能を呼び出すように構成されたプロセッサと、
を含み、
前記機能を決定することまたは機能を呼び出すことは、第１の次元における形状のサイズの第２の次元における形状のサイズに対する比率に基づく、
デバイス。
【請求項１９】
前記センサはカメラであり、
前記動きはオプティカルフローを用いて検知される、
請求項１８記載のデバイス。
【請求項２０】
実行されると、コンピュータに、
デバイスの動きを検知するステップと、
前記デバイスの検知された動きの形を標準化することによって、標準化された動きを決定するステップとを含む動作を実行させ、前記標準化は、複数の次元において検知された動きの縮尺を変更することを含み、
更に、前記デバイスの標準化された動きに対応するジェスチャを認識するステップと、
認識されたジェスチャに対応する前記デバイスの機能を決定するステップと、
前記機能を呼び出すステップとを含む動作を実行させる命令を含み、
前記機能を決定するステップまたは機能を呼び出すステップは、第１の次元における形状のサイズの第２の次元における形状のサイズに対する比率に基づく、
コンピュータプログラムで実際に符号化されたコンピュータ可読記録媒体。
【請求項２１】
デバイスの動きを検知する手段と、
前記デバイスの検知された動きの形を標準化することによって、標準化された動きを決定する手段とを備えていて、前記標準化は、複数の次元において検知された動きの縮尺を変更することを含み、
更に、前記デバイスの標準化された動きに対応するジェスチャを認識する手段と、
認識されたジェスチャに対応する前記デバイスの機能を決定する手段と、
前記機能を呼び出す手段とを備えていて、
前記機能を決定する手段または機能を呼び出す手段は、決定される機能または呼び出される機能を第１の次元における形状のサイズの第２の次元における形状のサイズに対する比率に基づかせる手段を含む、
装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的には、インタラクティブな装置に関し、少なくとも一つの特定の実施例は、定義されたジェスチャ群を使用して、モバイル機器と相互に連動することに関する。
【背景技術】
【０００２】
[関連出願についてのクロス・リファレンス]
本出願は、引用によって本出願に組み込まれる、２００７年８月２０日に出願の米国仮特許出願番号第６０／９５６，７７６号及び２００７年８月２０日に出願の米国仮特許出願番号第６０／９５６，７８４号の優先権を主張する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
例えば携帯電話又はＰＤＡ（ｐｅｒｓｏｎａｌ ｄａｔａ ａｓｓｉｓｔａｎｔ）などのモバイル機器は、複数の機能を有する。そして、それぞれはユーザによる一意のシーケンスのキーの選択、又は、画面上のメニューを使用して起動することができる。モバイル機器がますます多くの機能を得るにつれて、モバイル機器に設けることができるコントロールの数に限界があるため、機能の全てにアクセスすることは、ますます複雑になっていくことが想定される。
【課題を解決するための手段】
【０００４】
一般的な一実施例によれば、入力ジェスチャの状態量を選択された語彙のモデル化ジェスチャの対応する状態に対して比較したときに、入力ジェスチャが所定の閾値を満たさない場合、入力ジェスチャは語彙外であるとして拒否される。隠れマルコフモデルを使用して、モデル化ジェスチャが、入力ジェスチャで最も適合した語彙のジェスチャとして選択される。入力ジェスチャの状態シーケンスが選択されたモデル化ジェスチャの対応する状態シーケンスに適合するか否かなど、他の要因を、入力ジェスチャを「語彙内」又は「語彙外」ジェスチャであるとして受け入れるか又は拒否するための基準として用いてもよい。
【０００５】
他の一般的な実施例によると、コンピュータにより実施される処理は、入力ジェスチャを、学習ジェスチャの語彙を総合的にモデル化する隠れマルコフモデルに適用することに基づいて、入力ジェスチャが学習ジェスチャの各々に適合する尤度と、最大の尤度を有すると判断されたモデル化された学習ジェスチャの対応する状態に適合する入力ジェスチャの状態量と、を決定するステップを含む。この処理はまた、決定された量が閾値を満たさない場合は、入力ジェスチャを拒否するステップを含む。
【０００６】
実施例は、次の１以上の特徴を含むことができる。例えば、決定された量が閾値を満たす場合は、入力ジェスチャを受け入れてもよい。アプリケーションを、認識された入力ジェスチャに基づいて制御してもよい。決定された量が閾値の量を満たすと判断された場合、最大の尤度を有すると判断されたモデル化された学習ジェスチャの対応する入力コマンドを決定してもよい。２番目に高い尤度を有すると判断された第２のモデル化された学習ジェスチャの対応する状態と適合する、拒否された入力ジェスチャの第２の状態量を決定し、決定された第２の量が閾値を満たさない場合、拒否された入力ジェスチャを拒否してもよい。入力ジェスチャを定義する観察記号を隠れマルコフモデルに適用してもよい。入力ジェスチャの状態のシーケンスが、最大の尤度を有すると判断された、モデル化された学習ジェスチャの対応する状態のシーケンスと適合しない場合、入力ジェスチャを拒否してもよい。
【０００７】
さらなる例では、入力ジェスチャの最初又は最後の状態が、最大の尤度を有すると判断されたモデル化された学習ジェスチャの対応する状態のそれぞれの最初又は最後と適合しない場合、入力ジェスチャを拒否してもよい。尤度と、状態の変化のシーケンスは、ビタビアルゴリズムを用いて決定してもよい。決定された量が閾値を満たさない場合、入力ジェスチャを語彙の外として拒否してもよい。学習ジェスチャの語彙を認識するために、隠れマルコフモデルを学習させてもよい。入力ジェスチャに関連する状態の変化の群を抽出してもよい。入力ジェスチャの状態量は、抽出された状態の変化の群から決定してもよい。
【０００８】
他の例では、最大の尤度を有すると判断されたモデル化された学習ジェスチャの対応する状態に適合する入力ジェスチャの状態量を決定するステップは、各々の状態において入力ジェスチャの抽出されたメディアンが、最大の尤度を有すると判断されたモデル化された学習ジェスチャの学習サンプル群の対応する状態における抽出されたメディアンの最小値以上である状態の量を決定するステップ、又は、各々の状態において入力ジェスチャの抽出されたメディアンが、非ゼロ調整パラメータを加えた、最大の尤度を有すると判断されたモデル化された学習ジェスチャの学習サンプル群の対応する状態における抽出されたメディアンの最小値以上である、状態の量を決定するステップをさらに含んでもよい。閾値は、対応する状態の量として表現してもよい。入力ジェスチャは、標準化してもよい。
【０００９】
他の一般的な実施例によると、デバイスは、入力ジェスチャを、学習ジェスチャの語彙を総合的にモデル化する隠れマルコフモデルに適用することに基づいて、入力ジェスチャが学習ジェスチャの各々に適合する尤度と、最大の尤度を有すると判断されたモデル化された学習ジェスチャの対応する状態に適合する入力ジェスチャの状態量と、を決定する用に構成されたプロセッサを含む。プロセッサは、また、決定された量が閾値を満たさない場合は、入力ジェスチャを拒否する、ように構成されている。代表的な実施例では、デバイスは入力ジェスチャを受けるように構成された入力モジュールをさらに含んでもよく。入力モジュールはカメラを備えた、相互連動する画面であってもよい。
【００１０】
他の一般的な実施例によると、コンピュータプログラムで符号化されたコンピュータ可読媒体は、実行されると、コンピュータに、入力ジェスチャを、学習ジェスチャの語彙を総合的にモデル化する隠れマルコフモデルに適用することに基づいて、入力ジェスチャが学習ジェスチャの各々に適合する尤度と、最大の尤度を有すると判断されたモデル化された学習ジェスチャの対応する状態に適合する入力ジェスチャの状態量と、を決定するステップを含む動作を実行させる命令を含む。また、かかる動作は、決定された量が閾値を満たさない場合は、入力ジェスチャを拒否するステップも含む。
【００１１】
他の一般的な実施例によると、モバイル機器のコントロールを選択する代わりに、ユーザは、モバイル機器をジェスチャを規定する一連の動きに動かして、そのジェスチャと関連するモバイル機器の特定の機能を呼び出すことができる。これによって、物理的なボタン又はユーザインタフェースコントロールを用いることを必要とせずに、機能を実行することができるので、モバイル機器をより小型化し、機能選択の精度をより一層向上することを可能とする。
【００１２】
他の一般的な実施例によると、コンピュータにより実施される処理は、画像データを用いてデバイスの動きを検知するステップと、検出されたデバイスの動きに対応する、ジェスチャを認識するステップと、を含む。この処理はまた、認識されたジェスチャに対応するデバイスの機能を決定するステップと、かかる機能を呼び出すステップと、を含む。
【００１３】
実施例は、以下の１以上の特徴を含んでもよい。例えば、動きは、第１の軌跡の第１の動きと、第２の、異なる軌跡の第２の動きと、を含んでもよい。ジェスチャを認識するステップは、検知されたデバイスの動きによって画定される、文字の形状、幾何学的形状、又はパターンを認識するステップをさらに含んでもよい。デバイスの動きを検知するステップは、デバイスのユーザの無意識（ｓｕｂｃｏｎｓｉｃｏｕｓ）の身体運動を検出するステップをさらに含み、呼び出される機能は、無意識の身体運動に関連付けられるようにしてもよい。処理はまた、第１の時間と第２の時間で第１のユーザ入力と第２のユーザ入力とをそれぞれ検出するステップをさらに含み、デバイスの動きを検知するステップは、第１の時間と第２の時間の間に発生するデバイスの動きを検知するステップをさらに含んでもよい。
【００１４】
第１の入力は、振るユーザ入力、コントロール選択のユーザ入力、又は、静止して保持するユーザ入力であってもよい。ジェスチャを認識するステップは、検知された動きと、ジェスチャのモデル化された語彙との比較に基づいて、ジェスチャを選択するステップをさらに含んでもよい。処理は、また、デバイスの検知された動きを標準化するステップと、標準化された検知された動きと、ジェスチャのモデル化された語彙とを比較するステップと、検知された動きと、標準化された動きとの比較に基づいて、パラメータを決定するステップをさらに含んでもよい。機能は、パラメータに基づいて決定されてもよい。パラメータを呼び出された機能に入力してもよい。
【００１５】
追加の例では、ジェスチャの語彙を、任意の数の隠れマルコフモデル（ＨＭＭ）、又は、ルールに基づくモデルを用いて、モデル化してもよい。処理はまた、ジェスチャの語彙の利用可能なジェスチャの全てより少ないジェスチャを選択的に起動するステップをさらに含んでもよく、ジェスチャは、検知された動きと起動されたジェスチャとの比較に基づいて選択されてもよい。利用可能なジェスチャの全てより少ないジェスチャは、製造者の設定、ユーザの設定、又はアプリケーションの設定に基づいて使用可能となるようにしてもよい。処理はまた、特定のジェスチャを認識するためにデバイスを学習させるステップと、ジェスチャの語彙に、特定のジェスチャを追加するステップと、をさらに含んでもよい。機能を呼び出すステップは、アプリケーションを実行するステップ、画像を操作するステップ、又は、文字を入力するステップをさらに含んでもよい。
【００１６】
他の例によると、デバイスの動きを検知するステップは、第１の時間と第２の時間で第１のユーザ入力と第２のユーザ入力とをそれぞれ検出するステップであって、第１の時間は第２の時間の前に生じるステップと、第１の時間の前に第１の軌跡の第１の動きを検知するステップと、第２の時間の後に第２の、異なる軌跡の第２の動きを検知するステップと、第１の動きと第２の動きとを連結するステップと、連結された、第１の動きと第２の動きとを検知された動きとして出力するステップと、を含んでもよい。機能を呼び出すステップは、仮想の環境をナビゲートするステップ、画像を操作するステップ、文字を入力するステップ、アプリケーションを実行するステップ、又はメディアハブ機能を呼び出すステップ、をさらに含んでもよい。
【００１７】
他の一般的な実施例によると、デバイスは、センサとプロセッサとを含む。センサは、画像データを用いて動きを検知するように構成されている。プロセッサは、センサによって検知された、検知された動きに対応するジェスチャを認識し、認識されたジェスチャに対応する機能を決定し、機能を呼び出すように構成されている。代表的な実施例では、センサがカメラであってもよく、動きが、オプティカルフローを用いて検知されてもよい。
【００１８】
他の一般的な実施例によると、コンピュータ可読媒体は、コンピュータプログラムで符号化される。コンピュータプログラムは、実行されると、コンピュータに、画像データを用いてデバイスの動きを検知するステップと、検知された前記デバイスの動きに対応するジェスチャを認識するステップと、認識された前記ジェスチャに対応するデバイスの機能を決定するステップと、前記機能を呼び出すステップと、を含む動作を実行させる命令を含む。
【００１９】
上述のいずれの技術の実施例も、方法、処理、システム、デバイス、装置、インタラクションインタフェース、コンピュータ可読媒体に記憶された命令、又はコンピュータプログラムで符号化されたコンピュータ可読媒体を含んでもよい。以下、添付の図面を参照して、１以上の実施例の詳細について説明する。他の特徴についても、説明、図面、及び特許請求の範囲から明らかになる。
【図面の簡単な説明】
【００２０】
【図１】ジェスチャの認識及び拒否を説明する概念図である。
【図２】デバイスのブロック図である。
【図３】ジェスチャ認識に応じたデバイスの機能の呼び出しを説明する図である。
【図４】ジェスチャの組み合わせを説明する図である。
【図５】ジェスチャの正規化を説明する図である。
【図６】ジェスチャの学習を説明する図である。
【図７】無意識のジェスチャを説明する図である。
【図８】代表的なジェスチャ語彙を説明する図である。
【図９】代表的な処理のフローチャートである。
【図１０】ジェスチャ学習の環境を説明する図である。
【図１１】ジェスチャ構成設定の環境を説明する図である。
【図１２】選択的なジェスチャ起動のためのユーザインタフェースを説明する図である。
【図１３】代表的な処理のフローチャートである。
【図１４】代表的なジェスチャを説明する図である。
【図１５】ジェスチャを認識するための様々なアプローチを説明する図である。
【図１６】代表的なコンピューティングデバイスを説明する図である。
【発明を実施するための形態】
【００２１】
明細書中で同様の構成には同様の参照番号を付している。
一般的な一実施例によれば、語彙の選択されたモデル化ジェスチャの対応する状態と比較して、入力ジェスチャの状態量が所定の閾値を満たさない場合、入力ジェスチャは語彙外（ｏｕｔ−ｏｆ−Ｖｏｃａｂｕｌａｒｙ）であるとして拒否される。隠れマルコフモデルを使用して、モデル化ジェスチャが入力ジェスチャの最も適合した語彙のジェスチャとして選択される。入力ジェスチャの状態シーケンスが選択されたモデル化ジェスチャの対応する状態シーケンスに適合するかどうかなどの他の要因を、「語彙内」又は「語彙外」ジェスチャであるとして入力ジェスチャを受け入れるか又は拒否するための基礎として使うこともできる。
【００２２】
このように、そして、モバイル機器上の、又は、ユーザインタフェース上のコントロールを選択する代わりに、ユーザは、ジェスチャを定義、即ち、規定する一連の動きで動き（例えば、それらの手又は他の部位を動かすか、又はモバイル機器を動かす）、そのジェスチャと関連する特定の機能を呼び出すことができる。これによって、物理的なボタン又はユーザインタフェースコントロールを用いることを必要とせずに、機能を実行することができるので、モバイル機器の小型化、ユーザインタフェースの小型化、及び、機能選択の精度の一層の向上を可能とする。
【００２３】
一例では、ユーザは、一連の規定されたジェスチャを実行することによって、モバイル機器などのデバイスと相互連動する。モバイル機器は、人間の手に持つことができる、小型でもよいので、ユーザは、モバイル機器を持ちながらジェスチャを実行することもできる。ユーザは、自分の手又はタッチペンで、タッチ画面又はタブレットコンピュータに書き込むなど、モバイル機器を動かす以外のアプローチを用いて、ジェスチャを行うことができる。学習ジェスチャの語彙を全体としてモデル化する隠れマルコフモデルに入力ジェスチャを適用し、入力ジェスチャを、適合する状態について決定した尤度、及び／又は、決定した量が閾値を満たすか否かに基づいて、認識又は拒否する、高度なアプローチがある。
【００２４】
本明細書で使用される、「ジェスチャ」とは、発話などの言語コミュニケーションと対比される、人体の一部を用いてなされる非言語コミュニケーションの形態を意味する。例えば、ジェスチャは、第１の位置、ポーズ、又は表現と第２の位置、ポーズ、又は表現との間の動き、変化、又は変形として定義することができる。毎日の会話で用いる共通のジェスチャは、例えば、「エアクォーツ」のジェスチャ、お辞儀のジェスチャ、片膝を曲げたお辞儀、頬キス、指又は手の動き、平身低頭、頭を振る又は動かす、ハイファイブ、うなずき、悲しい顔、拳を挙げる、敬礼、親指を立てる動き、ピンチジェスチャ、手又は身体をねじるジェスチャ、又は指さすジェスチャを含む。ジェスチャは、カメラを用いてユーザの画像を分析するなどして検出する、傾斜センサを用いてユーザがデバイスを保持する、又は傾けた角度を検出してデバイスの動きを検知する、又は、その他のアプローチを用いて検出することができる。ジェスチャは、特定のパターン又は手法の一連の動きを実行することによって形作ることができる。
【００２５】
ユーザは、身体の一部の位置を変化させる（すなわち、身体を動かす動き）、又は、身体の一部の位置を変化させることなく、ジェスチャで表現する（すなわち、握り拳のジェスチャを行う、又は身体の一部を所定の時間固定して維持する）ことによってジェスチャを行う（すなわち、「ジェスチャする」又は「ジェスチャで表現する」）ことができる。高度なアプローチは、例えば、手、腕、指のジェスチャを用いるが、あるいは、その他の種類のジェスチャを用いてもよい。
【００２６】
図１は、ジェスチャの認識及び拒否を説明する概念図である。第１の入力ジェスチャ１０４は、指又はタッチペンでタブレットコンピュータ１０５に描くことによって行うことができる。他の例のジェスチャ入力として、ユーザ１０６は、デバイス１１０を特定のパターンで動かすことによって空中で第２の入力ジェスチャ１０８を行う。デバイス１１０は、携帯電話、オーディオプレーヤ、ストップウォッチ又はその他のデバイスでもよい。デバイス１１０は、デバイス１１０の動きを（例えば、センサを用いて）検知することができる。第１の入力ジェスチャ１０４と第２の入力ジェスチャ１０８は、入力ジェスチャパターンとして、例えば、隠れマルコフモデルのための観察記号の群として、又は、ジェスチャが交差する空間の二次元又は三次元の位置を表すドット、ピクセル、又は格子の点として、表すことができる。ベクトルの集合、運動指示（ｄｉｒｅｃｔｉｖｅ）の群（例えば、「右に水平に動き、上そして左に動く」）としてジェスチャを表すなどの、他のアプローチを、ジェスチャの表現のために用いてもよい。
【００２７】
第１の入力ジェスチャ１０４及び第２の入力ジェスチャ１０８に関連する入力ジェスチャパターンは、モデル化された学習ジェスチャの語彙１１２と比較することができる。例えば、語彙１１２は、数字８、６、２、３にそれぞれ対応する学習ジェスチャ１１４ａ〜ｄを含む。
【００２８】
ジェスチャ運動のシーケンスなどの時間的シーケンスは、複数の隠れマルコフモデル（ＨＭＭｓ）を用いて認識することができる。認識を目的とするＨＭＭｓを用いることは、ＨＭＭｓの群（例えば、語彙１１２のジェスチャと同数）を有することと、これらのジェスチャの学習サンプル群を用いて学習させることを含む。所与の入力ジェスチャについて、学習済みのモデルを採用して、所与の入力ジェスチャが、語彙の中の学習済みジェスチャの一つである尤度を生成することができる。
【００２９】
学習ジェスチャ１１４ａなどの学習ジェスチャは、１以上のジェスチャ部分又は状態に分割することができる。例えば、数字「８」を、右上の始点１１８から下方の「８」の左下の部分に対応する第１のジェスチャ部分１１６ａと、続く「８」の底部に対応する第２のジェスチャ部分１１６ｂと、続く「８の」右下から左上に対応する第３のジェスチャ部分１１６ｃと、続く「８」の頂部に対応する第４のジェスチャ部分１１６ｄとして表すことができる。
【００３０】
ジェスチャ部分は、ジェスチャ状態に対応することができる。隠れマルコフモデルは、状態と状態推移の群を含むことができる。ジェスチャ状態は、この例では、ジェスチャ部分１１６ａ〜ｄにそれぞれ対応する状態１２２ａ〜ｄを含む、トポロジー１２０を用いて表すことができる。
【００３１】
トポロジー１２０は、状態推移を表す。例えば、第１の状態１２２ａは、ジェスチャ部分１１６ａを実行した時に入力することができる。第２の状態は、矢印１２４ａに示されるように、ジェスチャ部分１１６ｂを実行した時に入力することができる。
【００３２】
全体で語彙１１２をモデル化する隠れマルコフモデル群を用いて、学習ジェスチャ１１４ａ〜ｄごとに、尤度を決定することができる。この尤度は、入力ジェスチャ（例えば、ジェスチャ１０４、１０８など）が特定の学習ジェスチャ１１４ａ〜ｄに適合する尤度を示す。最大と判定された尤度を有する学習ジェスチャについて、適合した状態量を決定することができる。適合した状態量は、高い（又は最大）尤度を有すると判定された、モデル化された学習ジェスチャの対応する状態に適合する入力ジェスチャの状態量を表すことができる。
【００３３】
例えば、尤度を、学習ジェスチャ１１４ａ〜ｄの各々について、それぞれの学習ジェスチャが入力ジェスチャ１０４に適合する尤度を示すように決定することができる。この例では、学習ジェスチャ１１４ａ（例えば、数字「８」）が最大と判定された尤度を有する。表示部１３０ａは、第１の入力ジェスチャ１０４が、学習ジェスチャ１１４ａの第１の状態１２２ａに適合することを示し、表示部１３０ｂは、第１の入力ジェスチャ１０４が、学習ジェスチャ１１４ａの第２の状態１２２ｂに適合することを示し、表示部１３０ｃは、第１の入力ジェスチャ１０４が、学習ジェスチャ１１４ａの第３の状態１２２ｃに適合しないことを示し、表示部１３０ｄは、第１の入力ジェスチャ１０４が、学習ジェスチャ１１４ａの第４の状態１２２ｄに適合しないことを示している。
【００３４】
学習ジェスチャ１１４ａの対応する状態に適合する入力ジェスチャ１０４の状態の数を示す、量１３０を決定することができる（例えば、この例では「２」）。決定された量１３０を閾値１３２と比較して、決定された量１３０が閾値１３２を満たさない場合は、入力ジェスチャ１４０を拒否することができる。この例で示すように、第１の入力ジェスチャ１０４は、学習ジェスチャ１１４ａの二つの状態に適合しているが、閾値１３２を満たさないので、入力ジェスチャ１０４は語彙外であるとして拒否される。
【００３５】
尤度もまた、学習ジェスチャ１１４ａ〜ｄごとに、学習ジェスチャが入力ジェスチャ１０８を適合する尤度を示すように、決定することができる。この例でも、学習ジェスチャ１１４ａが、最大と判定された尤度を有する。表示部１４０ａ〜ｃは、第２の入力ジェスチャ１０８が、学習ジェスチャ１１４ａの最初の三つの状態１２２ａ〜ｃに適合することを示している。表示部１４０ｄは、第２のジェスチャ１０８が学習ジェスチャ１１４ａの第４の状態１２２ｄに適合しないことを示している。
【００３６】
学習ジェスチャ１１４ａの対応する状態に適合する入力ジェスチャ１０８の状態の数を示す、量１５０を決定することができる（例えば、この例では「３」）。決定された量１５０を閾値１５２と比較して、決定された量１５０が閾値１５２を満たす場合は、入力ジェスチャ１４０を受け入れることができる。この例で示すように、入力ジェスチャ１０８は、学習ジェスチャ１１４ａの三つの状態に適合しており、閾値１５２を満たすので、入力ジェスチャ１０４は語彙内であるとして受け入れられる。
【００３７】
アプリケーションは、認識されたジェスチャに応じて制御することができる。例えば、学習ジェスチャ１１４ａに適合するとして入力ジェスチャ１０８が認識されると、テーブル又はその他のデータ構造にアクセスをして、呼び出す機能又はコマンドを決定することができる。例えば、「ボブを呼び出す」（Ｃａｌｌ Ｂｏｂ）機能１５４が学習ジェスチャ１１４ａにマッピングされると判断できて（例えば、ルックアップテーブルを用いて）、入力ジェスチャ１０８が学習ジェスチャ１１４ａと受け入れ可能に適合していると認識された場合は、機能１５４を呼び出すことができる。
【００３８】
図２は、デバイス２００のブロック図である。デバイス２００は、携帯電話でもよく、及び／又は、パーソナルコンピュータ（ＰＣ）、又はゲームシステム、ラップトップ、ハンドヘルドコンピュータ又はタブレットコンピュータ、ＰＤＡ（ｐｅｒｓｏｎａｌ ｄａｔａ ａｓｓｉｓｔａｎｔ）の一部、又は、コンピュータのキーボード、リモコンなどのその他の種類の組み込みシステムでもよく、又は、それらを含んでもよい。また、デバイス２００は、ｉＰｏｄ（登録商標）デバイス、又はその他のポータブルミュージックプレーヤ、ビーパー又はその他の通信機器、又は、ゲーム、通信、時間管理、及び／又はデータ編成用の、手持ち可能な、又は携帯可能な電子機器であってもよい。いくつかの実施例では、デバイス２００は、ユーザの身体に装着、又は、着用される。デバイス２００は、動きセンサ２０２、プロセッサ２０４、媒体２０６、及びユーザインタフェース２０８を含む。
【００３９】
動きセンサ２０２は、デバイス２００が動いた時を検出してもよく、動きの方向及び大きさを検出してもよい。動きセンサ２０２は、デバイス２００の動き又は位置を検出又は検知するように構成された任意の種類の部品又は装置でよい。例えば、動きセンサ２０２は、１以上のカメラ、１以上のジャイロスコープ、１以上のＧＰＳ（ｇｌｏｂａｌ ｐｏｓｉｔｉｏｎｉｎｇ ｓｙｓｔｅｍ）トラッカー、又は、これら機器の組み合わせでもよい。動きセンサ２０２は、デバイス２００の外部又は内部の様々な位置及び向きに配置されてもよい。
【００４０】
プロセッサ２０４は、ユーザインタフェース２０８からの入力を受けて、動きセンサ２０２によって得られたデータを分析する。プロセッサは、デバイス２００で実行されているオペレーティングシステム、及びアプリケーションプログラムを実行することができる。デバイス２００は、複数のプロセッサ（又は他の制御回路）を含んでもよく、さらに、アプリケーションプログラム、オペレーティングシステム、ユーザ入力プログラム、及び、アプリケーションプログラム、オペレーティングシステム及びユーザ入力プログラムが使用するデータを記憶したメモリ（又は他のコンピュータ可読記録媒体）を含んでもよい。
【００４１】
媒体２０６は、情報又はデータを記憶又は記録する。媒体２０６は、光記録媒体、磁気記録媒体、フラッシュメモリ、又はその他の種類の記録媒体でもよい。媒体２０６は、語彙２１０、学習モジュール２１２、ジェスチャ認識モジュール２１４、選択的起動モジュール２１６を含む。
【００４２】
語彙２１０は、デバイス２００が認識してもよいジェスチャに関する情報を含む。例えば、語彙２１０は、認識されたジェスチャごとに、ジェスチャに含まれる軌道群又は動きの群を規定するジェスチャの定義を含んでもよい。他の例では、語彙２１０に含まれるジェスチャの定義は、ジェスチャの動きの境界、及び／又は、ジェスチャの動きのパターンを画定する点の群を含んでもよい。ジェスチャの定義は、また、隠れマルコフモデルを規定するための情報を含んでもよい。
【００４３】
学習モジュール２１２は、ユーザがジェスチャをカスタマイズすることを可能とする。例えば、ユーザは、ジェスチャの境界を画定する学習インタフェースを用いてジェスチャを繰り返し実行してもよい。学習インタフェースはまた、ユーザが手動でジェスチャの境界の大きさを整える、又は引き伸ばすことを可能としてもよい。
【００４４】
ジェスチャ認識モジュール２１４は、動きセンサ２０２から動きデータを受け取り、受け取った動きデータを、語彙２１０に保存された動きデータと比較して、認識可能なジェスチャが実行されたか否かを判断する。例えば、ジェスチャ認識モジュールは、隠れマルコフモデルを用いて、決定された適合した状態量を許容可能な閾値と比較することができる。
【００４５】
選択的起動モジュール２１６を用いて、語彙２１９０のジェスチャを選択的に起動及び起動解除する。ジェスチャは、ユーザごと、アプリケーションごと、及び／又は、デバイスごとに、起動又は起動解除することができる。例えば、大量のテキスト入力を用いるアプリケーション（例えば、電子メールエディター）の場合、「２」の文字ジェスチャと「Ｚ」の文字のジェスチャが両方とも起動してもよい。テキスト入力をほとんど有していない、又は全く有していない、比較的少数のコマンドを有するアプリケーションでは、「２」又は「Ｚ」の文字のジェスチャの一つを起動させるが、両方を起動させなくてもよい。類似の形状のジェスチャが同時に動作しない場合、ジェスチャ認識は、より有効又は正確となりうるからである。
【００４６】
図３〜１２は、図１３に記載する代表的な処理に基づいて受け入れる、又は拒否することができる、ジェスチャを入力するための代表的な処理及びデバイスを示す。
1371611235974_0.htm
に記載するデバイスを用いるなど、ジェスチャを入力するための他のアプローチを用いてもよいし、上述の処理、及び
1371611235974_1.htm
で説明する処理を用いて行ってもよい。
【００４７】
例えば、図３に、ジェスチャ認識に応じたデバイス機能の呼び出しを示す。ユーザ３０２は、デバイス３０４を用いて空中でＺ形状のジェスチャを行う（すなわち、ユーザ３０２は、デバイス３０４を右方向に（読者の視点から見て）、続いて、左下方向に、その後、１回目の右方向と略平行に２回目の右方向に動かす）。音楽又はその他の再生音をデバイス３０４で再生している。デバイス３０４は、携帯電話、オーディオプレーヤ又はその他のデバイスでもよい。デバイス３０４は、ユーザ３０２の動きを（例えば、センサを用いて）検知し、検知した動きに対応するジェスチャを認識し、認識されたジェスチャに対応する機能を決定し、決定された機能を呼び出すことができる。
【００４８】
例えば、デバイス３０４は、ここでは一連のドットとして示される入力ジェスチャパターン３０６として、ユーザ３０２の動きを表してもよい。入力ジェスチャパターン３０６は、デバイス３０４に記憶された語彙に含まれるジェスチャ定義と比較することができる。例えば、テーブル３０８に、それぞれが文字「Ｚ」、「Ｏ」、「Ｐ」、及び「Ｚ」を表す、ジェスチャ３１０ａ〜ｄのジェスチャ定義を含む語彙を示す。より少ない、又はより多くのジェスチャ定義を規定してもよい。
【００４９】
語彙は、ジェスチャ定義に含まれる、あるいは、ジェスチャ定義と関連付けられる境界３１２ａ〜ｄなどの境界を含んでもよい。例えば、「Ｚ」の文字のジェスチャ３１０ａは、境界３１２ａと関連付けられ、「Ｏ」の文字のジェスチャ３１０ｂは、境界３１２ｂと関連付けられ、「Ｐ」の文字のジェスチャ３１０ｃは、境界３１２ｃと関連付けられ、「２」の文字のジェスチャ３１０ｄは、境界３１２ｄと関連付けられてもよい。ユーザによって実行された動きが境界と比較されて、特定のジェスチャが実行されたか否かを判断されるように、この境界（又は、テンプレート）は、正規化された、又は標準化されたバージョンのジェスチャを画定してもよい。
【００５０】
境界を可視的な境界として示しても、各ジェスチャは、ジェスチャを規定する許容可能なベクトル、動き、又は加速の群、あるいは、ジェスチャを規定する隠れマルコフモデルの群として表されてもよい。さらに、ジェスチャの定義は、特定の動きが特定の方向に発生すること、又は、ジェスチャを構成する動きが特定のシーケンスで発生することを必須としてもよい。
【００５１】
ユーザによって実行されて入力されたジェスチャパターンは、語彙のジェスチャ定義の各々と比較され、入力されたジェスチャパターンが、一以上の語彙ジェスチャの境界の内部に含まれるか否かを判断してもよい。例えば、入力ジェスチャパターン３０６（すなわち、「Ｚ」形状のパターン）を境界３１２ａ〜ｄの各々と比較してもよい。入力ジェスチャパターン３０６は、境界３１２ｂの「Ｏ」形状の内部、又は境界３１２ｃの「Ｐ」の形状の内部に適合しない。しかしながら、入力ジェスチャパターン３０６は、境界３１２ａの「Ｚ」の形状の内部、及び境界３１２ｄの「２」の形状の内部に適合することができる。ジェスチャ３１０ａ、３１０ｄは、したがって、候補ジェスチャとして識別される。さらに、比較は、入力ジェスチャパターンを１以上の隠れマルコフモデルに適応するようによって行ってもよい。
【００５２】
実行されたジェスチャが、１より多くの境界又は定義に合うことが予想されるので、語彙の個別のジェスチャは、競合を解消して演算コストを削減して、精度を向上するために、ユーザ又はアプリケーションによって使用不能（又は起動解除）としてもよい。このため、個別の語彙ジェスチャを、作動又は非作動とすることができる。例えば、テーブル３０８では、「Ｚ」文字ジェスチャ３１０ａ、「０」文字ジェスチャ３１０ｂ、及び「Ｐ」文字ジェスチャ３１０ｃを作動させて、「２」文字ジェスチャ３１０ｄを非作動として示している。
【００５３】
ジェスチャは、デバイスごとに、又はアプリケーションごとに起動又は起動解除してもよく、又は、エンドユーザ、製造者、及び／又は、アプリケーション開発者によって起動又は起動解除してもよい。ジェスチャの認識の効率性のため、類似のジェスチャ群では一つのジェスチャを作動し、同群の他のジェスチャは非作動としてもよい。例えば、「２」と「Ｚ」の文字は、形状が類似しているため、関連するジェスチャは一つのみを作動する。この例では、候補ジェスチャ３１０ａ及び３１０ｄの一つのみを作動するので、ユーザ３０２の動きに応じて、「Ｚ」の文字ジェスチャ３１０ａが認識される。
【００５４】
デバイス機能はジェスチャにマッピングされ、ジェスチャが認識されると、ジェスチャの実行に応じて、マッピングされた機能が呼び出される。例えば、テーブル３０８では、「音量を上げる」機能３１４ａが「Ｚ」文字ジェスチャ３１０ａにマッピングされ、「メールを読む」機能３１４ｂが「Ｏ」文字ジェスチャ３１０ｂにマッピングされ、「マッピングプログラム」機能３１４ｃが「Ｐ」文字ジェスチャ３１０ｃにマッピングされ、「特定の人間を呼び出す」機能３１４ｄ（例えば、「ボブ」を呼び出す）が「２」文字ジェスチャ３１０ｄにマッピングされる。作動した「Ｚ」文字ジェスチャを認識すると、「音量を上げる」機能が識別されて呼び出され、デバイス３０４で再生しているオーディオの音量が上がる。
【００５５】
上述のように、入力されたジェスチャパターンが語彙ジェスチャ定義によって画定された境界の内部にある場合に、ジェスチャは認識されることができる。他のアプローチを用いて、ジェスチャを認識してもよい。例えば、語彙ジェスチャを１以上の動きの方向記述の群として定義してもよい。例えば、「Ｚ」文字ジェスチャ３１０ａは、「右に水平に動く」、「下方向及び左方向に動く」、「第１の動きに対して平行に、右に水平に動く」として表（記述）してもよい。入力されたジェスチャの動きが語彙ジェスチャ定義によって定義された動きに適合する場合に、入力されたジェスチャを認識するようにしてもよい。ジェスチャ認識の他の例として、語彙ジェスチャを、格子の点の群の占有として定義し、入力されたジェスチャの動きが同一の点の群（又は点の群の所定の割合）を「交差」する場合に、入力されたジェスチャを認識するようにしてもよい。
【００５６】
デバイスを用いてジェスチャを行う際、壁、机、他の人間、又はその他の何らかの物理的な物体がユーザの動きの経路を遮断する場合などの、いくつかの状況では、ユーザは、ジェスチャを完了することを物理的に妨げられる場合がある。ユーザは、ジェスチャを途中で停止又は休止して部分的に完了し、デバイスを再び位置決めして（例えば、腕を再び位置決めするなど）、デバイスの動きを再開して、ジェスチャを完了してもよい。
【００５７】
ユーザは、デバイスのボタンを押す、デバイスを振る、又はデバイスを短い時間期間（例えば、１秒）静止して保持する、などの行動を実行してジェスチャの開始を希望することを示すことができる。図３に示すように、ジェスチャの第１の動きとして、ユーザはデバイスを第１の位置４０２から第２の位置４０４へ右方向に動かすことができる。ユーザは、下方向に動かしてジェスチャを連続したいが、物理的に妨げられる場合がある。ユーザは、デバイスを振る、デバイスを静止して保持する、又はデバイスのボタンを押すなどの行動を実行して、現在のジェスチャを休止することを示すことができる。デバイスが休止された状態で、ユーザがデバイスの位置を位置４０５から位置４０６へ再び位置決めしてもよい。ユーザは、デバイスを振る、デバイスを静止して保持する、デバイスのボタンを押すなどの、行動を実行して、ジェスチャを再開することを示すことができる。ユーザは、デバイスを位置４０６から位置４０８へ動かすことによって、ジェスチャを完了することができる。
【００５８】
ジェスチャの描写４１０ａ〜ｄは、位置４０２と４０８の間との間のデバイスの動きから認識される可能性のあるジェスチャを示す。ジェスチャの描写４１０ａは、上述の水平の動きと垂直の動きを連続的なジェスチャに統合したことを示している。描写４１０ｂは、２つの不連続なジェスチャの認識であることを示す。描写４１０ｃは、最後のジェスチャのみが受け入れられるか、あるいは拒否され、前のジェスチャ（１回目の水平のジェスチャ）は削除、フィルタアウト、又は無視されるごとく、２回目の、垂直のジェスチャのみが認識されていることを示す。描写４１０ｄは、ジェスチャ開始境界が位置４０４で開始し、ジェスチャ停止境界が位置４０６で終了するように、位置４０４から位置４０６までの円弧の動きが認識されていることを示す。ユーザ又はアプリケーションは、これらの描写のうち何れが所望の描写であるかを判断してもよい。
【００５９】
図５は、ジェスチャの正規化を示す。ジェスチャ定義は、形状の正規化のために用いることができる高さ幅比を含んでもよい。例えば、「Ｏ」の文字のような形状のジェスチャについて、１対１（すなわち、１：１）の高さ幅比を記憶して、真円（ｐｅｒｆｅｃｔ 円）である標準的な「Ｏ」形状を画定するように保存してもよいし、又は、１．２：１を記憶して、幅よりも僅かに高い標準的な「Ｏ」形状を画定してもよい。ジェスチャが認識されると、検出されたジェスチャの高さと幅を決定し、検出されたジェスチャの高さ幅比を算出し、ジェスチャ定義に記憶されている高さ幅比と比較することができる。算出された比率がジェスチャ定義に記憶された比率と異なる場合、検出されたジェスチャは、ジェスチャ定義に記憶された比率に縮尺を変更又は標準化することができる。
【００６０】
例えば、「Ｏ」形状５０２が「Ｏ」形状のジェスチャとして許容可能な境界を画定する。「Ｏ」形状５０２が１：１の標準化された高さ比を有する。ユーザは、高さ幅比２：１を有する高く痩せた「Ｏ」形状５０４、高さ幅比１：２を有する低く幅広の「Ｏ」形状５０６、高さ幅比２：２を有する大きな「Ｏ」形状５０８、など、１：１比でない「Ｏ」形状のジェスチャを実行してもよい。ユーザは、小さい「Ｏ」形状５１０などの１：１の比を有する「Ｏ」形状のジェスチャを実行してもよい。形状とは無関係に、形状５０４〜５１０の一つなどの「Ｏ」形状のジェスチャが認識された場合、検出された高さ幅比を標準化された形状５０２の高さ幅比と比較をして、比較した比率が異なる場合は、検出されたジェスチャの縮尺を変更してもよい。
【００６１】
ジェスチャを標準化するために用いる縮尺変更の量を用いて、呼び出す機能を決定してもよい。例えば、テーブル５１１に示すように、２：１比の５１２ａ（例えば、標準的なジェスチャと比較して）を有するジェスチャが認識された場合、「ボブを呼び出す」機能５１４が呼び出されるようにしてもよい。１：１比に対して２：１比は、５０％の垂直縮尺変更で、０％水平縮尺変更とすることができる。他の例として、２：２比５１２ｂを有するジェスチャを実行したことが認識されると（５０％の垂直縮尺変更で５０％の水平縮尺変更となり）、「メールを読む」機能５１４ｂが呼び出されるようにしてもよい。２：２比５１２ｂは、２距離単位の高さと２距離単位の幅を有する寸法の動きを表し、５０％垂直縮尺変更で、５０％水平縮尺変更とした場合、１：１比の運動又はジェスチャとなる（すなわち、１距離単位の高さで１距離単位の幅）。
【００６２】
例を続けると、１：１比５１２ｃ（縮尺変更していない）のジェスチャを実行したことが認識されると、「電源をオフにする」機能５１４ｃが呼び出されるようにしてもよい。最後の例では、１：２比５１２ｄを有するジェスチャの実行が認識されると（５０％水平の縮尺変更、０％垂直の縮尺変更となり）、「音量を下げる」機能５１４ｄが呼び出されるようにしてもよい。
【００６３】
縮尺変更の量又は比率もまた、呼び出す機能の入力パラメータとして用いることができる。例えば、「Ｏ」ジェスチャが認識された場合に、「ＲＵＮ ＰＲＯＧＲＡＭ Ｙ」（プログラムＹ作動）５１６などの特定の機能が呼び出されるようにデバイスを構成してもよい。機能（例えば、「ＲＵＮ ＰＲＯＧＲＡＭ Ｙ」機能５１６）は、機能が入力として用いることができる、１以上のパラメータを受け付けてもよい。この例では、「Ｖａｒｉａｂｌｅ＿Ｘ」（変数_X）と呼ばれる一つのパラメータ５１８が機能５１６の入力として使用される。
【００６４】
パラメータ５１８の値は、検出された認識されたジェスチャの比によって決定してもよい。例えば、テーブル５１９によって図示されるように、２：１の比５２０ａのジェスチャが認識された場合、パラメータ５１８が「変数Ａ」５２２ａの値をとるようにしてもよい。他の例では、２：２の比５２０ｂのジェスチャが認識された場合、パラメータ５１８が「変数Ｂ」５２２ｂの値をとるようにしてもよい。この例で続けると、１：１の比５２０ｃのジェスチャが認識された場合、パラメータ５１８が「変数Ｃ」５２２ｃの値をとるようにしてもよい。最後の例では、１：２の比５２０ｄのジェスチャが認識された場合、パラメータ５１８が「変数Ｄ」５２２ｄの値をとるようにしてもよい。総括すると、呼び出す機能に付与したパラメータ値（例えば、入力値）が、実行されたジェスチャから検出された高さ幅比によって決定されるようにして、ジェスチャの実行に応じて特定の機能を実行するように、ジェスチャを構成することができる。
【００６５】
入力されたジェスチャの特徴に基づいて複数のパラメータ値を決定してもよい。例えば、ジェスチャは、ジェスチャの実行に応じてＡＤＪＵＳＴ−ＡＵＤＩＯ機能５２４を呼び出すように構成してもよい。ＡＤＪＵＳＴ−ＡＵＤＩＯ機能５２４は、オーディオのトレブル設定の調整に影響を与えるために用いることができるパラメータ５２６と、オーディオのベース設定の調整に影響を与えるために用いることができるパラメータ５２８と、を受け付けるようにしてもよい。
【００６６】
パラメータ５２６と５２８の値は、入力されたジェスチャから検出された高さ幅比によって決定することができる。例えば、テーブル５２９に示されるように、２：１比５３０ａを有するジェスチャが検出された場合、「１００％」５３２ａの値をパラメータ５２６の値として、「０％」５３４ａの値をパラメータ５２８の値として用いてもよい。換言すると、検出された入力ジェスチャが標準的なジェスチャの２倍の高さである場合、トレブル設定を１００％増加させ（すなわち、２倍）、検出された入力ジェスチャが標準的なジェスチャと同様の幅である場合は、ベース設定を変更しないで維持する（すなわち、０％増加）ようにしてもよい。
【００６７】
他の例では、２：２比５３０ｂのジェスチャが検出された場合、「１００％」５３２ｂの値をパラメータ５２６の値として用い、「１００％」５３４ｂの値をパラメータ５２８の値として用いてもよい（すなわち、入力ジェスチャが標準的なジェスチャの高さと幅の２倍である場合、トレブル設定とベース設定の両方を２倍（１００％増加）とする）。最後の例では、１：２比５３０ｃのジェスチャが検出された場合、「０％」５３２ｃの値をパラメータ５２６の値（トレブル設定に変化がないことを示す）として用い、「１００％」５３４ｃの値（ベース設定を倍とすることを示す）をパラメータ５２８の値として用いてもよい。
【００６８】
図６に、ジェスチャ学習を示す。ジェスチャ描写６０２ａ〜ｈは、１以上のユーザが「Ｚ」形状のジェスチャを繰り返し実行することによって得られた様々な学習ジェスチャ入力を示す。ジェスチャ描写６０２ａ〜ｈは各々、それぞれのジェスチャを実行した際のユーザの動きを表すドット群として示されている。ジェスチャ描写６０２ａ〜ｈはそれぞれ重ね合わされて、Ｚ文字の形状６０４の境界を形成する（すなわち、一旦Ｚ文字の形状６０４が画成された後、ユーザの動きがＺ文字の形状６０４の境界の内部に存在すると、Ｚ文字ジェスチャが認識されるようになる）。
【００６９】
デバイスは、一連の規定されたジェスチャを含む既存の語彙６０６を含んでもよい。Ｚ文字の形状６０４を既存の語彙６０６に組み込み、以後、ユーザによって実行されるＺ形状のジェスチャは認識されるようにしてもよい。ジェスチャは、製造者、及び／又はユーザによって規定されてもよい。製造者は、１以上の試験ユーザを用いて、デバイスに学習をさせ、文字、又は、デバイスの規定の語彙に含まれるその他の形状の認識可能な境界を形成してもよい。ユーザは、カスタムのジェスチャをデバイスの語彙に追加し、デバイスに学習をさせて、ジェスチャを実行する際に用いる、ユーザ別の動きを認識するようにしてもよい。
【００７０】
図７に、無意識（ｓｕｂｃｏｎｓｉｃｏｕｓ）のジェスチャを示す。例えば、腕時計装置７０４を装着したユーザ７０２は、人間「ボブ」７０６と握手する。腕時計装置７０４は、密接に繋がった上下運動群として規定される、握手ジェスチャ７０８を認識する。握手ジェスチャ７０８を認識すると、腕時計装置７０４は録音装置を起動し、握手ジェスチャ７０８を検出してから短い時間（例えば、２秒）の録音を開始する。例えば、腕時計装置７０４は、人間ボブ７０６によって発話された「今日は。私の名前はボブです。」７１０という短い音声を録音する。後で、ユーザ７０２は、録音した音声を腕時計装置７０４のスピーカ７１２を介するなどして再生してもよい。
【００７１】
テーブル７１４は、無意識のジェスチャと、無意識のジェスチャの実行を認識することによって呼び出される付随機器の機能の他の例を説明する。例えば、息苦しいジェスチャ認識すると、９１１緊急電話呼び出し（例えば、緊急電話装置によって）を行ってもよい。他の例では、ユーザの神経過敏が認識されると、心の和む音楽を再生する、又は、ユーザに娯楽性のビデオゲームを行うように促してもよい。さらに他の例では、緊急電話装置が、「電話を耳に」するジェスチャを検出すると、タイマーを開始してもよい。デバイスは、腕時計装置、携帯電話、又はその他の携帯可能なデバイスでよく、装着可能なアイテムに内蔵する、又は装着可能なアイテムであってもよい。
【００７２】
図８に、代表的なジェスチャ語彙８００を示す。例えば、語彙８００は、代表的なジェスチャ描写８２０ａ〜０を含む。ジェスチャは、アルファベット（例えば、８０２ａ、８０２ｄ）、又は数字（８０２ｃ）、又はその他の種類の記号でもよい。例えば、ジェスチャは、波形、又は螺旋形の線（例えば、８０２ｇ、８０２ｊ）であってもよい。ジェスチャは、実世界のアイテムを表す記号（例えば、描写８０２ｅは手紙を表し、描写８０２ｍは八角形又は停止標識を表す）であってもよい。
【００７３】
他の図示の例では、ジェスチャは、略線形（例えば、８０２ｎ）、又は多角形（例えば、８０２ｄ、８０２ｍ）であってもよい。ジェスチャは、連結した動きで形成されてもよく、又は、ジェスチャは非連続の動き又は軌道を含んでもよい（例えば、８０２ｈ）。ジェスチャは、連続した動きで形成されてもよく、又は、不連続な動き（例えば、８０２ｋ、又は、文字「Ｔ」を表すジェスチャ（図示していない））を含んでもよい。ジェスチャは、交差する線（例えば、８０２ｅ、８０２Ｌ）を含んでもよい。他の代表的なジェスチャは、三次元のジェスチャ（例えば、８０２ｏ）、握手から形成される密接した動きからなるジェスチャ（例えば、８０２ｉ）なども可能である。
【００７４】
ジェスチャは、Ｕｎｉｓｔｒｏｋｅｓ、Ｑｕｉｋｗｒｉｔｉｎｇ、及びＧｒａｆｆｉｔｉなどの手書き認識技術で用いられる文字を表してもよい。手書き認識技術は、ユーザが一筆書きで文字を書くことを可能とする文字定義を含む。例えば、描写８０２ｂは、Ｇｒａｆｆｉｔｉで文字「Ｔ」を表し、描写８０２ｆは、Ｕｎｉｓｔｒｏｋｅｓで文字「Ｆ」を表す。ジェスチャはまた、単語を表してもよい。例えば、描写８０２Ｌは、Ｑｕｉｋｗｒｉｔｉｎｇで単語「ｔｈｅ」を表す。
【００７５】
図９は、ジェスチャの認識に応じて機能の呼び出しに影響を与える、コンピュータにより実施される処理９００を説明するフローチャートである。簡潔には、コンピュータにより実施される処理９００は、デバイスの動きを検知することと、デバイスの検知された動きに対応するジェスチャを認識することと、認識されたジェスチャに対応するデバイスの機能を決定することと、決定された機能を呼び出すことを含む。
【００７６】
より詳細には、処理９００が開始すると（Ｓ９０１）、デバイスの動きが検知される（Ｓ９０２）。例えば、センサがデバイスの動きを検出してもよい。かかるセンサは、デバイスの動き又は位置を検出又は検知するように構成された、いかなる種類の部品又は装置であってよい。例えば、センサは、１以上の内蔵カメラ、１以上のジャイロスコープ、１以上のＧＰＳ（ｇｌｏｂａｌ ｐｏｓｉｔｉｏｎｉｎｇ ｓｙｓｔｅｍ）トラッカーでもよい。デバイスは、これらのデバイスの何れか、あるいは、これらのデバイスの組み合わせを装備してもよい。
【００７７】
プロセッサは、センサからの入力に基づいてデバイスの動きを検出してもよい。例えば、デバイスがカメラを含む実施例では、プロセッサは、カメラによって撮像された画像のシーケンス、又は一連の画像を分析して、モバイル機器の動きを検出してもよい。この例では、プロセッサは、カメラによって撮像された画像にオプティカルフロー処理を実施して、デバイスの動きを検出してもよい。デバイスがジャイロスコープを含む実施例では、プロセッサは、ジャイロスコープからのデータを分析してデバイスの動きを検出してもよい。これらの実施例では、動きの軌跡が、ジャイロスコープにより生成される動きベクトルを介して、プロセッサにより検出されるようにしてもよい。デバイスがＧＰＳトラッカー又は受信機を含む実施例では、プロセッサは、デバイスの動きをＧＰＳトラッカー又は受信機によって提供されるデータを分析することによって検出してもよい。これらの実施例では、プロセッサは、動いている間、デバイスの相対的な位置を記録して分析することによって動きベクトルを決定してもよい。
【００７８】
いくつかの実施例では、デバイスは、オンセット又はオフセットのいずれかの、無線位置追跡ツールなどの位置検出／追跡装置を装備してもよい。デバイスの固有の動きに従って固有の軌跡を提示するデバイス又は装置を用いて、デバイスの動きを検知してもよい。例えば、プロセッサによって検出された動きは、デバイスの動きの検出された軌跡又はパターンであってもよい。
【００７９】
デバイスの検出された動きに応じて、検知されたデバイスの動きに対応するジェスチャが認識される（Ｓ９０４）。プロセッサは、ジェスチャの語彙にアクセスすることができる。例えば、プロセッサは、デバイスに関連する電子的ストレージからジェスチャの語彙を規定するデータにアクセスしてもよい。軌道群を語彙として定義してもよい。これらのジェスチャは、デバイスを空中で動かして、意図する軌跡を描くことによって実行することができる。動きの意図する軌跡又はパターンは、上述のようにプロセッサによって検出してもよい。ジェスチャの語彙は、デバイスによって認識されたジェスチャに対応する、デバイスの動きを規定するデータを含んでもよい。
【００８０】
プロセッサは、デバイスの検出された動き、及びアクセスした動きのデータに基づいてジェスチャを決定してもよい。例えば、複数の処理を用いて、媒体又はセンサから受け取った入力を処理して、手のジェスチャ、特に、手書きの軌道を認識してもよい。いくつかの実施例では、点マッチングルーチン処理、隠れマルコフモデル処理、及びその他のパターン認識の処理を用いて、ジェスチャの語彙に規定されたジェスチャを認識してもよい。
【００８１】
ジェスチャを決定する際、プロセッサはまた、語彙に規定されていないジェスチャは拒否するようにしてもよい。プロセッサが、ユーザ入力コマンドとして意図された動きから、ユーザ入力コマンドを意図していない動きを区別できるため、ジェスチャを拒否することは重要でありうる。ジェスチャを拒否することは、隠れマルコフモデル（ＨＭＭｓ）に基づいて行ってもよい。例えば、手ジェスチャを認識するためのＨＭＭに基づく拒否方法を用いて、任意の動きを拒否してもよい。
【００８２】
いくつかの実施例では、プロセッサは、検出されたデバイスの動きと、ジェスチャの語彙に含まれる動きデータとを比較してもよい。プロセッサが適合しているものを発見した場合、プロセッサは、デバイスの動きを、適合した動きデータに関連するジェスチャに対応させるように判断する。プロセッサが適合しているものを発見しない場合、プロセッサは、適合しているものを発見する、又は、プロセッサが、検出された動きはジェスチャの何れにも適合しないと判定するまで、継続してデバイスの検出された動きを、ジェスチャの語彙の他のジェスチャに関連する動きデータと比較する。プロセッサは、検出された動きデータとジェスチャの語彙に含まれる動きデータとを比較する前に、検出された動きデータを処理してもよい。
【００８３】
あるいは、未知のジェスチャを、語彙のモデルの全てと比較して、最も適合する可能性のある一つの候補ジェスチャを選択してもよい。拒否アプローチは、最大尤度のみを発見することにより生じうるミスマッチを回避するために開発された。
【００８４】
一般的に、ジェスチャは、考え、意見、感情、コミュニケーション、コマンド、実演又は表現を表す、動き、位置、ポーズ、又は、姿勢を意味する。ユーザは、手持ち可能なデバイスを保持しながら、ジェスチャを行ってもよく、ユーザは、身体の一部にデバイスを装着して、身体の一以上の部分を用いてジェスチャを行ってもよい。例えば、ユーザのジェスチャは、一つ又は複数の指のジェスチャでもよく、一つの手のジェスチャでもよく、一つの手又は腕のジェスチャでもよく、一つの手及び腕、及び身体のジェスチャでもよく、両手のジェスチャでもよく、頭のポーズ又は姿勢、目の位置、顔の表情、身体のポーズ又は姿勢、又はその他の表現可能な身体の状態でもよい。
【００８５】
ユーザのジェスチャは、使用可能又は「契約（ｅｎｇａｇｅｍｅｎｔ）」ジェスチャを表してもよい。契約ジェスチャは、所定の時間維持された手のポーズ又は手の動きシーケンスで表現されるジェスチャであってもよい。一つの代表的な契約ジェスチャは、ユーザが手持ち可能なデバイスを３秒間固定して保持することである。他の例は、ユーザが手持ち可能なデバイスを保持しながら、顔の前に腕を伸ばし、腕で頭の前方に円を描くことによる、円形の手の動きである。他の例として、契約ジェスチャは、ユーザがデバイスを振ることでもよい。基本的に契約ジェスチャは、デバイスに、ユーザがさらなる入力を行う準備があることを明確にすることである。誤りを低減するため、契約ジェスチャは、通常の会話の際にボディランゲージによって無意識に行うことのないジェスチャ、通常の人間の行動を普通に実行する際に行いえないジェスチャなどの非定形のジェスチャがよい。
【００８６】
ユーザの考え、意見、感情、コミュニケーション、コマンド、実演又は表現を規定するジェスチャを導き出してもよい。例えば、ユーザのジェスチャは、一つ又は複数の指のジェスチャでもよく、一つの手のジェスチャでもよく、一つの手又は腕のジェスチャでもよく、一つの手及び腕、及び身体のジェスチャでもよく、両手のジェスチャでもよく、頭のポーズ又は姿勢の変化、目の位置の変化、顔の表情の変化、デバイスを保持しながらの手の動き、身体のポーズ又は姿勢の変化、又はその他の表現可能な身体の状態の変化でもよい。
【００８７】
簡潔には、関連するジェスチャを実行するために用いる身体の一部又は複数の部分を、広く「コントロールオブジェクト」と呼ぶ。例えば、ユーザが全身、又は他の物理的な物体を用いてコマンドを表現してもよい。この場合、全身又は他の物理的な物体をコントロールオブジェクトとすることができる。ユーザは、目を瞬かせる、小鼻をふくらませる、指を小刻みに動かすことによってより微妙にコマンドを表現してもよい。この場合、瞼、鼻、又は指をコントロールオブジェクトとすることができる。コントロールオブジェクトはまた、いくつか例を挙げると、赤外線フィンガーライト、モバイル機器、腕時計装置、再帰反射器、又はリモコンなどの物理的デバイスでもよい。
【００８８】
動きデータからユーザのジェスチャを判断するための多くの方法がある。例えば、「空に円を描く」又は「手で一方の側にスワイプする」ジェスチャを、ジェスチャ分析及び検出処理によって、手、腕、身体、頭、又は他のオブジェクトの位置情報を用いて検出してもよい。ジェスチャは、スワイプジェスチャを行った時など、２次元又は３次元の位置の変位を含んでもよいが、他の例では、ジェスチャは、付随する位置の変位のない変形を含む。例えば、５本の指を伸ばし、掌を前にして手が「停止」の合図をしている際に、掌を前にしたまま５本の全ての指を丸める場合、手又は腕の全体の位置は静止しているとしても、ユーザのジェスチャは変化する。
【００８９】
ジェスチャは、手又はデバイスの位置情報が明示的なルール群に合格しているか否かを判断するなどの、発見的方法を用いて検出してもよい。例えば、「手で一方の側にスワイプする」ジェスチャは、次のジェスチャ検出ルールを満たしている場合に識別されるようにしてもよい。（１）所定の限度を下回る時間にわたって、水平位置の変化が所定の距離を上回る、（２）水平位置の変化がその時間期間にわたって単調である、（３）垂直位置の変化がその時間期間にわたって所定の距離を下回る、及び（４）その時間期間の終了時の位置が、時間期間の開始時の位置よりも、手検出領域境界に近い、又は、境界にある。
【００９０】
いくつかのジェスチャは、あるルール群を満たすと、システムは、異なるルール群が適用される状態に変化することになる明確な順番で実行され、満たされる複数のルール群を用いる。システムは、隠れマルコフモデルを用いる場合などでは、これらのモデルは特定の動きの連鎖を検出させるが、動きがジェスチャに十分に適合する全体的な確率も考慮するので、微妙なジェスチャを検出することができなくてもよい。
【００９１】
複雑なコマンドの入力を可能とし、入力のオプションの数を増加させるために、ユーザのジェスチャを認識する処理はさらに、第１の方向の第１の変位を認識することと、第２の方向の第２の変位を認識することと、これら複数の変位を一つのジェスチャとして統合することと、を含んでもよい。さらに、ユーザのジェスチャの認識は、ユーザのジェスチャの大きさと方向を判断してもよい。
【００９２】
ジェスチャの認識に応じて、認識されたジェスチャに対応するデバイスの機能が決定される（Ｓ９０６）。例えば、プロセッサは、認識されたジェスチャに関連付けられた機能データにアクセスしてもよい。例えば、プロセッサは、デバイスに関連する電子的ストレージから、決定されたジェスチャに関連付けられた機能データにアクセスしてもよい。この例では、決定されたジェスチャに関連付けられた機能データは、ジェスチャの語彙に保存されてもよい。例えば、ジェスチャの語彙が、認識されたジェスチャを特定の機能又はユーザ入力コマンドと関連付ける、又は対応付けるデータを含んでもよい。ジェスチャの語彙は、各ジェスチャをデバイスの機能に割り当てるように規定してもよい。例えば、空中にＺを描くジェスチャを、緊急電話装置の「ボイスメールボックスを開く」機能に割り当てる、円を描くジェスチャを「リダイアル」機能に割り当てる、半円を描くジェスチャを、デバイスのディスプレイに表示された画像又はアイコンを回転する「回転」機能に割り当てる、などしてもよい。
【００９３】
機能を決定した後、その機能を呼び出し（Ｓ９０８）、処理９００を終了する（Ｓ９１０）。例えば、プロセッサは、決定された機能を実行する命令を実行してもよい。デバイスによって実行された機能は、ボイスメールの受信箱を開く、特定の電話番号をダイアルする、デバイスに関連するディスプレイに表示された画像を回転する、デバイスに関連するディスプレイに表示されたアイコン又はオブジェクトを移動する、などでよい。
【００９４】
図１０に、ジェスチャ学習の環境１０００を示す。ユーザ１００２は、学習ジェスチャを実行し、この例では、デバイス１００４を動かして円形の動きをさせる。ユーザ１００２は、デバイス１００４を所有者の用途のためにカスタマイズするデバイス１００４のエンドユーザ（すなわち、消費者）であってもよく、又は、ユーザ１００２は、デバイス１００４を、デバイス１００４の開発の一部として、及び／又は、製造者の設計の一部として、学習させる、試験ユーザであってもよい。
【００９５】
コンピューティングデバイス１００８のディスプレイ１００７に示されるユーザインタフェース１００６は、前回実行されたジェスチャの描写１０１０（ここでは一連のドットとして示す）とともに実行したジェスチャの描写を表示する。ユーザ１００２は、ボタン１０１１を選択して、他の学習ジェスチャを入力してもよい。ユーザ１００２は、所望の数の学習ジェスチャを入力してもよい。ユーザ１００２は、繰り返し、学習ジェスチャを実行し、コンピューティングデバイス１００８は、境界１０１２を入力されたジェスチャの描写１０１０の周りに設ける。境界１０１２は動きの領域を画成し、領域は一旦画成されると、規定されたジェスチャを認識するために続くユーザの動きと比較される。ユーザ１００２は、１以上のサイズ変更ハンドル１０１４ａ〜ｄを（例えば、選択してドラッグして）動かして、境界１０１２を（例えば、サイズ、位置、向きなどを変化させて）再画成してもよい。
【００９６】
ユーザ１００２は、ボタン１０１６を選択して、直前に入力された学習ジェスチャに関連付けられた情報を削除してもよい。ユーザ１００２は、ボタン１０１８を選択して、受け入れた入力によってモデル化されたジェスチャ定義を受け入れてもよい。最新のジェスチャ定義の生成をキャンセルするために用いられるボタン（図示していない）などの他のユーザインタフェース要素を示してもよい。
【００９７】
ユーザインタフェース１００６を用いて、複数のジェスチャをモデル化してもよい。ユーザインタフェース１００６を用いて、新たなジェスチャ定義を規定してもよく、及び／又は、既存の、又は予め規定されたジェスチャ定義を調整又は再画成してもよい。例えば、消費者ユーザは、ユーザインタフェース１００６を用いて、予め規定されたジェスチャの境界を拡大してもよい。
【００９８】
コンピューティングデバイス１００８は、デスクトップパーソナルコンピュータ、ラップトップコンピュータ、携帯電話、ＰＤＡ（personal digital assistant）、ゲーム機器、又は、ディスプレイを有するその他のデバイスでもよい。デバイス１００４は、１以上の有線又は無線のネットワーク、及び／又は、接続を介して、コンピューティングデバイス１００８と通信してもよい。いくつかの実施例では、デバイス１００４及びコンピューティングデバイス１００８は、同一のデバイスであっってもよい（すなわち、ユーザは、デバイス１００４を用いて学習ジェスチャを実行し、デバイス１００４に表示されたユーザインタフェース１００６と相互連動してもよい）。
【００９９】
図１１に、ジェスチャの構成設定のための環境１１００を示す。環境１１００は、ユーザインタフェース１１０１を含む。ユーザインタフェース１１０１は、例えば、ジェスチャが学習された後に、表示するようにしてもよい。ユーザインタフェース１１０１は、エンドユーザ（例えば、消費者）によって開始（ｌａｕｎｃｈ）してもよいし、あるいは、製造者又はアプリケーション開発者の代わりに作業する試験ユーザによって開始してもよい。
【０１００】
ユーザインタフェース１１０１は、コンピューティングデバイス１１０３のディスプレイ１１０２に示してもよい。コンピューティングデバイス１１０３は、デスクトップパーソナルコンピュータ、ラップトップコンピュータ、携帯電話、ＰＤＡ（personal digital assistant）、ゲーム機、又はディスプレイを有するその他のデバイスでもよい。コンピューティングデバイス１１０３は、１以上の有線又は無線のネットワーク、及び／又は、接続を介して、モバイル機器１１０４と通信してもよい。いくつかの実施例では、モバイル機器１１０４とコンピューティングデバイス１１０３は同一のデバイスでもよい。
【０１０１】
ジェスチャ名１１０５は、ユーザインタフェース１１０１を用いて、入力、及び／又は、編集してもよい。ユーザは、１以上のサイズ変更ハンドル１１０７ａ〜ｄをドラッグ、及び移動させて、ジェスチャの境界１１０６を調整してもよい。ユーザインタフェース１１０１を用いて機能をジェスチャに割り当ててもよい。チェックボックス１１０８を用いて、割り当てられた機能が大きさに依存することを示してもよい。
【０１０２】
例えば、ジェスチャは、２：１の幅比１１１０ａを有するジェスチャを実行した場合（すなわち、実行されたジェスチャの幅が規定された標準的なジェスチャの幅の２倍）、「メールボックスＡを開く」機能１１１２ａが呼び出されるようにしてもよい。さらに、次の代表的な構成設定を設けてもよい。１）１：１の幅比１１１０ｂを有するジェスチャを実行した場合、「メールボックスＢを開く」機能１１１２ｂを呼び出すようにしてもよい。２）３：１の高さ比１１１０ｃを有するジェスチャを実行した場合、「アプリケーションをマッピングする」機能１１１２ｃを呼び出すようにしてもよい。３）４：１の高さ比１１１０ｄを有するジェスチャを実行した場合、「ボブを呼び出す」機能１１１２ｄを呼び出すようにしてもよい。デフォルト値１１１４を定義して、規定された標準的なジェスチャと比較して１：１の幅対高さ比を有するジェスチャを実行した場合、デフォルトの「電源をオフにする」機能１１１６を呼び出すようにしてもよい。
【０１０３】
ジェスチャ構成設定の一例として、ユーザ１１１８がモバイル機器１１０４を用いて「高く痩せた」長円形のジェスチャ１１２０を実行した場合、モバイル機器１１０４は、ジェスチャ１１２０を認識し、認識されたジェスチャ１１２０の高さと規定された標準的なジェスチャの高さとを比較して、高さ比４：１と判断してもよい。モバイル機器１１０４は、機能１１１２ｄ（「ボブを呼び出す」）を４：１の高さ比１１１０ｄに割り当て、ジェスチャ１１２０を認識すると、「ボブを呼び出す」機能１１１２ｄを呼び出すようにしてもよい。
【０１０４】
他のジェスチャ構成設定を設けてもよい。例えば、機能の割り当てをジェスチャの高さ及び幅以外の要因に依存するようにしてもよい。例えば、機能割り当てをジェスチャの速度に依存させてもよい（例えば、第１の機能をゆっくりと実行されたジェスチャに応じて呼び出すように設定し、第２の機能を、そのジェスチャをより早く実行した場合に呼び出されるように設定してもよい）。
【０１０５】
図１２に、選択的なジェスチャ起動のためのユーザインタフェース１２００を示す。ユーザインタフェース１２００を用いて、デバイスの語彙に含まれたジェスチャを選択的に起動又は起動解除してもよい。例えば、デバイスの語彙１２０２は、文字「Ｏ」、「Ｐ」、「Ｄ」、「Ｒ」、「Ｑ」、「Ｆ」をそれぞれが表す、ジェスチャ１２０４ａ〜ｆを含む。ジェスチャ１２０４ａ〜ｆは、アプリケーションごとに選択的に使用可能又は起動されるようしてもよい。例えば、ジェスチャ１２０４ａと１２０４ｂは、アプリケーションをマッピングする１２０５を使用可能にし、ジェスチャ１２０４ｃ、１２０４ｄ、１２０４ｅ、１２０４ｆは、アプリケーションをマッピングする１２０５を使用不可にする（すなわち、起動解除する）。
【０１０６】
アプリケーションをマッピングする１２０５などの、いくつかのアプリケーションについて、類似した形状のジェスチャ群の一つのジェスチャを使用可能とし、同群の他のジェスチャを使用不可として、ジェスチャを解釈又は認識する際に、混乱が生じることのないようにしてもよい。例えば、ジェスチャ１２０４ｃと１２０４ｅ（それぞれ「Ｄ」と「Ｑ」の形状）を、ジェスチャ１２０４ａの「Ｏ」形状の形状に類似しているために使用不可としてもよい。同様に、ジェスチャ１２０４ｄと１２０３ｆ（それぞれ「Ｒ」と「Ｆ」の形状）を、ジェスチャ１２０４ｂの「Ｐ」の形状と類似しているために使用不可としてもよい。他の例として、ジェスチャ１２０４ａ〜ｆの全てを、電子メールエディターのアプリケーション１２０８、及びウェブブラウザのアプリケーション１２１０について使用可能とする。これらのアプリケーション１２０８と１２１０については、ユーザはがテキストを入力する（例えば、電子メールメッセージの本文、ウェブサイトのアドレス）ことが必要となり、どの文字ジェスチャも使用可能とすることが望まれうるためである。ジェスチャの起動及び起動解除はまた、製造者の設定、あるいは、文字間の過去の混乱に基づいて行うことができる。
【０１０７】
図１３は、決定された尤度と、決定された適合した状態量に基づいて入力ジェスチャを拒否するコンピュータにより実施される処理１３００を説明するフローチャートである。簡潔には、入力ジェスチャを、コンピュータにより実施される処理１３００は、学習ジェスチャの語彙を総合的にモデル化する隠れマルコフモデルに適用することに基づいて、入力ジェスチャが各々の学習ジェスチャに適合する尤度を決定することと、最大の尤度を有すると判断されたモデル化された学習ジェスチャの対応する状態に適合する入力ジェスチャの状態量を決定することと、決定された量が閾値を満たしていない場合は入力ジェスチャを拒否することと、を含む。
【０１０８】
より詳細には、処理１３００が開始すると（Ｓ１３０１）、入力ジェスチャが学習ジェスチャ群の各々と適合する尤度を、学習ジェスチャの語彙を総合的にモデル化する隠れマルコフモデルに入力ジェスチャを適用することに基づいて、決定する（Ｓ１３０２）。
【０１０９】
例えば、個々の隠れマルコフモデルを、学習ジェスチャ群のジェスチャごとに割り当ててもよい。ジェスチャのサイズは、学習フェーズ及び認識フェーズ時に、水平及び垂直の両方についてサンプルごとの平均及び標準偏差を用いて、標準化してもよい。ＨＭＭｓを学習することによって、各モデルのパラメータを抽出してもよい。
【０１１０】
λｉ＝（Ａｉ、Ｂｉ、πｉ）は、ｉ番目のジェスチャに割り当てられた代表的な隠れマルコフモデルλを意味する。πはセッション開始時（例えば、ｉ＝１）の特定の状態の確率のベクトルを表す。Ａは、状態推移マトリクスを表し、Ｂは、特定の状態の確率と、記号を観察している確率が与えられた場合の観察マトリクスを表す。Ｖ＝｛ｖ１、ｖ２、・・・、ｖＭ｝は、可能な観察記号群を表す。したがって、学習ジェスチャ群のジェスチャのサンプルは、観察記号のシーケンスによって表すことができる。
【０１１１】
適当な信頼レベルを生成するため、状態変化のシーケンスを抽出してもよい。ＨＭＭの各々が、ジェスチャのサンプルｋを学習するためのＮ個（Ｎは２以上）の状態を有する場合、状態シーケンスは、式（１）及び（２）に従って、ビタビ処理を用いて抽出してもよい。
Ｓｇ、ｋ＝｛ＳＯ１、ＳＯ２、・・・、ＳＯＰ｝      （１）
Ｏｇ、ｋ＝｛Ｏｇ、ｋ、１、Ｏｇ、ｋ、２、・・・、Ｏｇ、ｋ、ｐ｝      （２）
ここで、ｇは１以上Ｇ以下である。
【０１１２】
式２において、Ｏｇ、ｋ、ｊは、ジェスチャｇのｋ番目の学習サンプルにおいてｊ番目に観測された記号を表す。式（１）では、簡潔のためにｇとｋは省略している。
【０１１３】
ＨＭＭｓは、状態を去る時に、所与のシーケンスの残りの処理においてその状態に戻る方法はないように定義してもよい。これらの実施例では、その状態に費やした時間とは無関係に、各状態が所与の観察記号のシーケンスについて適合することができる。また、以下の式（３）に反映させて、Φを学習サンプル群として定義してもよい。
Φ＝｛Ω１、Ω２、・・・、ΩＧ｝      （３）
【０１１４】
式（３）において、Ｇは、語彙の中の単語（例えば、ジェスチャ）の数を表す（例えば、図１を参照して説明した例では、Ｇ＝４）。
Ωｇ＝｛Ｏｇ、１、Ｏｇ、２、・・・、Ｏｇ、Ｒ｝      （４）
【０１１５】
式（４）は、ジェスチャｇに関する全ての学習サンプルの群を表す。関数ｆを、観察マトリクスＢの要素に基づいて定義してもよい。
Ｂ＝｛Ｂ１、Ｂ２、・・・、ＢＧ｝      （５）
δｇ、ｎ、ｒ＝ｆ（Ｂｇ、ｎ（Ｏｇ、ｒ））      （６）
【０１１６】
式（６）において、（Ｂｇ、ｎ（Ｏｇ、ｒ））は、学習サンプルの状態ｎのジェスチャｇの観察マトリクスＢの要素群を表す。学習サンプルは、その状態における所与の観察群Ｏｇ、ｒのｒ番目である。関数ｆは、上述の群のメディアン又は他の機能性（ｆｕｎｃｔｉｏｎａｌｉｔｙ）を表す。関数ｆの他の定義は、平均値、最小値、最大値などを含んでもよい。したがって、関数ｆをメディアンとして定義した実施例では、δｇ、ｎ、ｒは、Ｂｇ、ｎ（Ｏｇ、ｒ）によって示される群の要素のメディアンとなる。第２の関数ｈを、語彙の所与の単語（例えば、ジェスチャ）に関するδ群について定義してもよい。
Δｇ、ｎ＝｛δｇ、ｎ、１、δｇ、ｎ、２、・・・、δｇ、ｎ、Ｒ｝      （７）
τｇ、ｎ＝ｈ（Δｇ、ｎ）      （８）
【０１１７】
式（７）において、Ｒは、ジェスチャＲに関する学習サンプルの数であり、式（８）のｈは、所与の群の最小値として定義される。ｈの他の定義を用いてもよい。これらの定義では、τｇ、ｎは、このジェスチャの学習サンプル群を用いて抽出した、状態ｎのジェスチャｇの観察マトリクスＢの要素のメディアンの数を表す。ＨＭＭが各々Ｎ個の状態を有する場合、以下のようになる。
Ｔｇ＝｛τｇ、１、τｇ、２、・・・、τｇ、Ｎ｝    Ｎは２以上      （９）
【０１１８】
式（９）で定義した群は、一つのＨＭＭを定義するパラメータの一部でもよい。
Ψｇ＝｛Ａｇ、Ｂｇ、πｇ、Ｔｇ｝      （１０）
【０１１９】
したがって、所与の入力ジェスチャについて、学習済みのＨＭＭｓを採用して、所与のジェスチャが語彙の学習済み単語の一つである尤度を生成する。最大の尤度を生成するＨＭＭをベストマッチとして選択する。学習済み隠れマルコフモデル群を与えた場合、入力ジェスチャを表すデータを、全てのモデルに提供し、実行したジェスチャ又は動きが学習済みのモデルの何れかに適合する尤度を、ビタビ処理を用いて算出することができる。最大の確率を生成するモデルを、所与のジェスチャについて適合する可能性の最も高い候補とする。このモデルを選択して所与のジェスチャを評価し、このジェスチャが、どの程度の信頼性をもって選択したモデルによって表されるジェスチャと同一として判断されうるかを評価してもよい。
【０１２０】
処理１３００を続けると、最大の尤度を有すると判断されたモデル化された学習ジェスチャの対応する状態に適合する入力ジェスチャの状態量を決定する（Ｓ１３０４）。
【０１２１】
選択されたＨＭＭの状態変化群を抽出することができる（式（１１）を参照）。
Σ＝｛σ１、σ２、・・・｝      （１１）
δｕ、ｎ＝ｆ（Ｂｇ、ｎ（Ｏｕ））      （１２）
【０１２２】
式（１２）において、Ｂｇ、ｎ（Ｏｕ）は、所与の観察群Ｏｕの状態ｎの観察マトリクスＢｇの要素群を表す。観察マトリクスＢｇはその状態にある。関数ｆは、式（６）と同様の機能性（ｆｕｎｃｔｉｏｎａｌｉｔｙ）を有してもよい。状態ごとに抽出した値が与えられているとすると、所与のシーケンス（例えば、ジェスチャ）が発見されたＨＭＭで合格した状態の数をカウントすることができる。状態の数は、以下に定義する式を用いてカウントすることができる。
【０１２３】
【数１】
0005619961.tif 000002
【０１２４】
ｘが０以上の場合、ｚ（ｘ）＝１
それ以外の場合、ｚ（ｘ）＝０      （１４）
ｄ（ｘ、ｙ）＝ｘ―ｙ＋ε    εは−１以上１以下      （１５）
【０１２５】
式（１３）において、ｚは式（１４）で定義される単位ステップ関数であり、式（１５）でεは調整可能な値として定義される。ε＝０とした場合、ｃは、所用のジェスチャについて抽出したメディアンが、選択したモデルの学習サンプル群について抽出されたメディアンの最小値以上である状態の数として解釈することができる。式（１３）は、それらのシーケンスとは無関係に状態をカウントする。
【０１２６】
他の実施例では、我々は以下の代替の定義を有してもよい。
ｑｎ＝ｚ（ｄ（δｕ、ｎ、τｇ、ｎ））・ｑｎ−１、  ｑ０＝１      （１６）
【０１２７】
【数２】
0005619961.tif 000003
【０１２８】
式（１７）は、ＨＭＭによって定義された正しい順番で状態の数をカウントする。
【０１２９】
処理１３００を続けると、決定された量が閾値を満たさない場合に入力ジェスチャは拒否され（Ｓ１３０６）、処理１３００は終了する（Ｓ１３０８）。例えば、状態の数に基づいて、所与のジェスチャが式（１３）及び式（１７）のｃ又はｃ’を超えると、発見されたモデルが所与の入力ジェスチャに信頼性をもって、又は正確に適合するかについて判定を行うことができる。閾値は、対応する状態の総量の百分率又は量として表してもよい。閾値は、製造者又はアプリケーション開発者などにより、設定可能としてもよい。
【０１３０】
いくつかの実施例では、二つの調整可能な変数εと許容可能な量ｃ又はｃ’の値は、処理に、ジェスチャが語彙の最も確からしい学習済みジェスチャの全ての部分とどれだけ近く適合するかに基づいて、ジェスチャを受け入れるか拒否するかの柔軟性を与える。パラメータεは、観察された記号のメディアンと、学習フェーズで抽出された記号の学習済みメディアンとの間の受け入れ可能な距離を調整する。εをゼロに設定することは、観察されたメディアンが、適合したＨＭＭの所与の状態について学習時に観察されたメディアンの最小値以上である必要があることを意味する。
【０１３１】
ｃ又はｃ’の値は、首尾良く適合したと判断された状態の数を表す。柔軟性をジェスチャに付与する場合、より低い値が受け入れられるようにしながらも、適合する全ての状態に制限的な基準を要求してもよい。
【０１３２】
したがって、ｃ’は、前の状態が首尾良くパスしていることを必須として、ＨＭＭによって定義された状態の順番が考慮されるようにできるため、ｃ’はより制限的にすることができる。
【０１３３】
入力ジェスチャの状態のシーケンスが、対応するＨＭＭによって最大の尤度を有すると判断されたモデル化された学習ジェスチャの対応する状態のシーケンスに適合しない場合、入力ジェスチャは拒否することができる。例えば、ユーザは、「２」を表すモデル化された学習ジェスチャの全ての部分に適合はするが、「２」を後ろから、又は、学習ジェスチャについてＨＭＭで定義されシーケンスとは反対のシーケンスで、「２」を描いてもよい。この「逆方向の２」は、状態シーケンスに適合しないということで拒否することができる。他の例では、ユーザは、一つの円を第２の円の頂部に描いて、「８」を生成してもよいが、「８」を表す学習ジェスチャの全ての部分に適合するが、学習ジェスチャで定義されたシーケンスには適合しない可能性がある。以下により詳細に説明するが、入力ジェスチャの最初の状態と最後の状態が、最大の尤度を有すると判断されたモデル化された対応する状態の最初と最後に適合しない場合、拒否するようにしてもよい。
【０１３４】
入力ジェスチャが、尤度が最大と判定された学習ジェスチャとの適合として拒否された場合、入力ジェスチャを拒否すると最終的に決定する前に、２番目に可能性のあるジェスチャ（及び、場合によっては追加のジェスチャ）を潜在的な適合として考慮することができる。例えば、２番目に高い尤度を有するとして、第２のモデル化された学習ジェスチャを決定することができる。第２のモデル化された学習ジェスチャの対応する状態に適合する入力ジェスチャの第２の状態量を決定することができる。決定された第２の量が、閾値を満たさない場合、入力ジェスチャを拒否することができる。例えば、ユーザのジェスチャが「Ｓ」の形状であり、入力ジェスチャを、「８」を表す最大尤度の学習ジェスチャと比較することができる場合、入力ジェスチャが、「８」に適合しないと判定された場合、入力ジェスチャは、「５」を表す２番目に高い尤度の学習ジェスチャと比較することができる。
【０１３５】
人間又はユーザは、テーブルの画面の下のカメラがユーザの指の位置を撮像し、位置を追跡してジェスチャを認識する、インタラクティブテーブルで複数のジェスチャを実行してもよい。いくつかの実施例では、「０」から「９」の数字と、「プラス」、「マイナス」、「等号」の演算記号を、語彙にジェスチャ群として定義してもよい。個別の４状態ＨＭＭを各ジェスチャに割り当て、特定の数の学習サンプル（例えば、３０）、順方向―逆方向処理、及び上述の処理を用いて学習させてもよい。
【０１３６】
ジェスチャのサイズは、学習フェーズ及び認識フェーズ時に、水平及び垂直の両方についてサンプルごとの平均及び標準偏差を用いて、標準化してもよい。学習済みのモデルを用いて、主に、語彙に定義されていないジェスチャを含めて、４６のジェスチャの群を実行した。しかし、語彙で定義された複数のジェスチャも、処理の精度を試験するためにこの群に含めた。ジェスチャは、未加工（raw）で標準化されていない、手の動きとして定義してもよい。未加工のデータは、認識処理に送られる前に標準化することができる。
【０１３７】
図１４に、代表的なジェスチャ１４０１〜１４１２を示す。各ジェスチャの下の第１の番号（例えば、ジェスチャ１４０１の下の「８」１４１４）は、ＨＭＭによって最も適合していると認識されたジェスチャを示し、第２の番号（例えば、ジェスチャ１４０１の下の「１１１０」１４１６）は、ジェスチャの４状態のどれが、代表的な処理で説明される基準に適合しているかを二進法の数字列で示す。例えば、「１０１１」は、第１、第３、及び第４の状態に適合しているが、第２の状態は適合していないことを示す。この例では、観察された記号と、学習フェーズ時に抽出された記号の学習済みメディアンとの間の許容可能な距離を調整するパラメータ（ε）は、ゼロと仮定している（ε＝０）。
【０１３８】
ジェスチャ１４０１は、最後の状態を除くと数字の８に類似したジェスチャを表している。代表的な処理１３００を用いると、最初の三つの状態は、数字の８のジェスチャの基準に適合するが、最後の状態が定義された基準に適合しない。処理は、ジェスチャ１４０２について、最初の三つの状態が合格しているので、数字の６のジェスチャとして認識されていることを示している。ジェスチャ１４０２は、いくつかの点で数字の５のジェスチャと類似しているが、ジェスチャ１４０２の最後は、数字の５と類似していない。
【０１３９】
ジェスチャ１４０３は、最後の状態を除くと数字の８の状態と類似している。代表的な処理を用いると、最初の三つの状態は、数字の８のジェスチャの基準に合格しているが、最後の状態は定義された基準に適合していない。ジェスチャ１４０４は、最初の状態を除くと数字の３と類似している。代表的な処理を用いると、最初の三つの状態は、数字の３のジェスチャの基準に適合していないが、最後の状態はこの基準に適合している。
【０１４０】
ジェスチャ１４０５と１４０６は、両方とも、数字の９のジェスチャに最も類似していると認識されている。しかし、ジェスチャ１４０５では、ジェスチャの最初は、数字の９ととても異なっている。ジェスチャ１４０５は、第３と第４の状態が合格している。ジェスチャ１４０６では、ジェスチャの最初は、数字の９と類似しているが、続いて数字の９と類似しなくなり、動きの最後に到達すると、再び数字の９のジェスチャと類似するようになる。ジェスチャ１４０６の第１、第３、及び第４の状態は定義された基準に適合するが、第２の状態は適合しない。
【０１４１】
ジェスチャ１４０７は、規定されたジェスチャの何れにも類似していないが、数字の４と最も類似していると認識されている。代表的な処理を用いると、どの状態も、数字の４のジェスチャの基準と適合しない。ジェスチャ１４０８は、数字の６の最初と類似しているが、ジェスチャの最後に向かうと、数字の６とは異なる。代表的な処理を用いると、第１の状態は、数字の６のジェスチャの基準に適合するが、最後の三つの状態は、基準に適合しない。ジェスチャ１４０９から１４１２は、定義された数字のジェスチャに類似した動きを示す。図示されるように、ジェスチャ１４０９から１４１２は、４つの全ての状態が定義された基準に適合している。
【０１４２】
閾値は、ジェスチャを受け入れる又は拒否するための基準として使用可能に定義することができる。ジェスチャが少なくとも、閾値によって定義された状態の数に合格した場合、ジェスチャは受け入れられる。ジェスチャが少なくとも、閾値によって定義された状態の数に合格しない場合、ジェスチャは拒否される。例えば、閾値３が定義されると、ジェスチャ１４０１〜１４０３、１４０６、及び１４０９〜１４１２は、少なくとも三つの状態に合格しているので、受け入れられることができる。ジェスチャ１４０４、１４０５、１４０７、１４０８は、少なくとも３つの状態に合格していないので、拒否される。
【０１４３】
追加的に、あるいは代替として、ジェスチャは、最初、及び／又は、最後の状態が合格していない場合、拒否することができる。例えば、ジェスチャ１４０１〜１４０３が、３つの状態、及び最初の状態が合格していても、最後の状態が合格していないので、拒否することもできる。他の例では、ジェスチャ１４０４は、ジェスチャの部分が「３」のように見えるが、ジェスチャが第１の状態に合格していないので、拒否することもできる。
【０１４４】
既に説明し、図１５に示すように、ユーザ１５０２は、デバイス１５０６を用いて空中にジェスチャ１５０４を行うことができる。ユーザはまた、様々な他のアプローチを用いてジェスチャを行ってもよい。例えば、ユーザはタブレットコンピュータ１５１０上で指又はタッチペンを用いてジェスチャ１５０８を行ってもよい。ユーザ１５１２は、キオスク１５１８にタッチ画面１５１６を含ませるなどした、タッチ画面１５１６でジェスチャ１５１４を行ってもよい。他の例では、ユーザ１５２０は、テーブル１５２４の下に配設されたカメラ１５２６でジェスチャ１５２２が認識される、インタラクティブテーブル１５２４でジェスチャ１５２２を行ってもよい。
【０１４５】
図１６は、本書に説明したシステム、方法、及び処理を、クライアントとして、又は１以上のサーバとして実施するために使用することができるコンピューティングデバイス１６００、１６５０のブロック図である。コンピューティングデバイス１６００は、ラップトップ、デスクトップ、ワークステーション、ＰＤＡ（ｐｅｒｓｏｎａｌ ｄｉｇｉｔａｌ ａｓｓｉｓｔａｎｔ）、サーバ、ブレードサーバ、メインフレーム、及び他の適当なコンピュータを含む、様々な形態のデジタルコンピュータを表す。コンピューティングデバイス１６５０は、ＰＤＡ（ｐｅｒｓｏｎａｌ ｄｉｇｉｔａｌ ａｓｓｉｓｔａｎｔ）、携帯電話、スマートフォン、又は他の類似のコンピューティングデバイスなどの、様々な形態のモバイル機器を表す。ここに示す構成要素、接続、及び関係、機能は、例示にすぎず、本書で記載、又は、請求される、実施例に限定されない。
【０１４６】
コンピューティングデバイス１６００は、プロセッサ１６０２、メモリ１６０４、ストレージデバイス１６０６、メモリ１６０４及び高速拡張ポート１６１０と接続した高速インタフェース１６０８、メモリ１６０４と高速拡張ポート１６１０と接続した低速インタフェース１６１２を含む。構成要素１６０２、１６０４、１６０６、１６０８、１６１０、１６１２の各々は、様々なバスを用いて相互接続されており、共通のマザーボード又はその他の適当な方式によって装着することができる。プロセッサ１６０２は、メモリ１６０４又はストレージデバイス１６０６に保存された命令を含む、コンピューティングデバイス１６００の内部で実行するための命令を処理して、高速インタフェース１６０８と連結したディスプレイ１６１６などの外部入力／出力デバイスに、ＧＵＩの図形情報を表示する。他の実施例では、複数のプロセッサ、及び／又は、複数のバスを、適当であれば、複数のメモリ、複数の種類のメモリとともに用いてもよい。また、複数のコンピューティングデバイス１６００は、必要な動作（例えば、サーババンク、ブレードサーバのグループ、又は、マルチプロセッサシステム）の一部を提供する各デバイスと連結してもよい。
【０１４７】
メモリ１６０４は、コンピューティングデバイス１６００の内部の情報を保存する。一実施例では、メモリ１６０４は、コンピュータ可読媒体である。一実施例では、メモリ１６０４は、１以上の揮発性メモリユニットである。他の実施例では、メモリ１６０４は、１以上の不揮発性メモリユニットである。
【０１４８】
ストレージデバイス１６０６は、コンピューティングデバイス１６００のためのマスストレージを提供することができる。一実施例では、ストレージデバイス１６０６は、コンピュータ可読媒体である。様々な異なる実施例では、ストレージデバイス１６０６は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、又はテープデバイス、フラッシュメモリ、又は他の類似の固体メモリデバイス、又は、ストレージエリアネットワークのデバイス又は他の構成設定を含むデバイスのアレイであってもよい。一実施例では、コンピュータプログラム製品は、情報坦体に有形に具現化されている。コンピュータプログラム製品は、実行されると、上述のものなど、１以上の方法を実行する命令を含む。情報坦体は、メモリ１６０４、ストレージデバイス１６０６、プロセッサ１６０２のメモリなどのコンピュータ又はマシン可読媒体、又は伝播される信号である。
【０１４９】
高速コントローラ１６０８は、コンピューティングデバイス１６００の帯域幅集約型（ｂａｎｄｗｉｄｔｈ−ｉｎｔｅｎｓｉｖｅ）動作を管理し、低速コントローラ１６１２は、よい少ない帯域幅集約型の動作を管理する。かかる仕事の割り当ては、一例にすぎない。一実施例では、高速コントローラ１６０８は、メモリ１６０４、ディスプレイ１６１６（例えば、グラフィックプロセッサ又はグラフィックアクセラレータを介して）、及び、様々な拡張カード（図示していない）を受けることができる高速拡張ポート１６１０と接続する。この実施例では、低速コントローラ１６１２は、ストレージデバイス１６０６及び低速拡張ポート１６１４に接続する。低速拡張ポートは、様々な通信ポート（例えば、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、イーサネット（登録商標）、無線イーサネット（登録商標））を含んでもよく、キーボード、ポインティングデバイス、スキャナーなどの１以上の入力／出力デバイス、又は、スイッチ、ルータなどのネットワークデバイスと、例えば、ネットワークアダプタを介して接続することができる。
【０１５０】
コンピューティングデバイス１６００は、図に示すように、複数の異なる形態で実施することができる。例えば、標準的なサーバ１６２０として、実施してもよく、又は、かかるサーバのグループの複数のアイテムとして実施してもよい。ラックサーバシステム１６２４の一部として実施してもよい。さらに、ラップトップコンピュータ１６２２などのパーソナルコンピュータに実施してもよい。あるいは、コンピューティングデバイス１６００からの構成要素を、デバイス１６５０などのモバイル機器（図示していない）の他の構成要素と組み合わせてもよい。かかるデバイスの各々は、１以上のコンピューティングデバイス１６００、１６５０を含み、全システムは、相互に通信しあう複数のコンピューティングデバイス１６００、１６５０によって構成されてもよい。コンピューティングデバイス１６００は、コンピューティングデバイス１６００の動き又は位置を検出又は検知するように構成された、ジャイロスコープ、カメラ又はＧＰＳ（Ｇｌｏｂａｐ Ｐｏｓｉｔｉｏｎｉｎｇ Ｓａｔｅｌｌｉｔｅ）トラッカーなどの１以上のセンタ（図示していない）を含んでもよい。
【０１５１】
コンピューティングデバイス１６５０は、構成要素の中でも特に、プロセッサ１６５２と、メモリ１６６４と、ディスプレイ１６５４、通信インタフェース１６６６、及び、送受信機１６６８などの入力／出力デバイスと、を含む。デバイス１６５０は、追加の記憶部を提供するマイクロドライブなどのストレージデバイスなどを備えてもよい。構成要素１６５０、１６５２、１６６４、１６５４、１６６６、及び１６６８の各々は、様々なバスを介して相互接続し、構成要素のいくつかは、共通マザーボード又は適当なその他の適当な手法によって装着することができる。コンピューティングデバイス１６５０は、コンピューティングデバイス１６００の動き又は位置を検出又は検知するように構成された、ジャイロスコープ、カメラ又はＧＰＳ（Ｇｌｏｂａｐ Ｐｏｓｉｔｉｏｎｉｎｇ Ｓａｔｅｌｌｉｔｅ）トラッカーなどの１以上のセンタ（図示していない）を含んでもよい。
【０１５２】
プロセッサ１６５２は、メモリ１６６４に保存された命令を含む、コンピューティングデバイス１６５０の内部で実行するための命令を処理することができる。プロセッサはまた、アナログプロセッサ及びデジタルプロセッサを別々に含んでもよい。プロセッサは、例えば、ユーザインタフェースのコントロール、デバイス１６５０によって作動するアプリケーション、及びデバイス１６５０による無線通信など、デバイス１６５０の他の構成要素の座標を提供してもよい。
【０１５３】
プロセッサ１６５２は、コントロールインタフェース１６５８及び、ディスプレイ１６５４と接続したディスプレイインタフェース１６５６を介して、ユーザと通信することができる。ディスプレイ１６５４は、例えば、ＴＦＴＬＣＤディスプレイ、又はＯＬＥＤディスプレイ、又は他の適当なディスプレイ技術でよい。ディスプレイインタフェース１６５６は、ディスプレイ１６５４を駆動して、ユーザに図形又はその他の情報を提示するための適当な回路を含むことができる。コントロールインタフェース１６５８は、コマンドをユーザから受けると、変換してプロセッサ１６５２に送出する。さらに、外部インタフェース１６６２はプロセッサ１６５２と通信を行い、デバイス１６５０と他のデバイスとの近距離通信（ｎｅａｒ ａｒｅａ ｃｏｍｕｎｃａｔｉｏｎ）を可能とする。外部インタフェース１６６２は、例えば、（例えば、ドッキング手順を介した）有線通信、又は、（例えば、Bluetooth（登録商標）などの技術を介した）無線通信を行ってもよい。
【０１５４】
メモリ１６６４は、コンピューティングデバイス１６５０の内部の情報を保存する。一実施例では、メモリ１６６４は、コンピュータ可読媒体である。一実施例では、メモリ１６６４は１以上の揮発性メモリユニットである。他の実施例では、メモリ１６６４は１以上の不揮発性メモリユニットである。また、拡張メモリ１６７４を設け、デバイス１６５０と、例えば、ＳＩＭＭカードインタフェースを含む拡張インタフェース１６７２を介して接続するようにしてもよい。かかる拡張メモリ１６７４は、デバイス１６５０に追加の記憶領域を提供し、デバイス１６５０のアプリケーション又は他の情報を保存することができる。具体的には、拡張メモリ１６７４は、上述の処理を実行する、又は捕捉するための命令を含んでもよく、さらに、保護情報を含んでもよい。このようにして、例えば、拡張メモリ１６７４を、デバイス１６５０のセキュリティモジュールとして配設し、デバイス１６５０の安全な使用を可能にするための命令をプログラムしてもよい。さらに、保護アプリケーションは識別情報などの追加情報とともに、ＳＥＶＩＭカードを介して、ＳＩＭＭカードにハッキングできないように配置してもよい。
【０１５５】
メモリは、例えば、以下に説明するように、フラッシュメモリ、及び／又は、ＭＲＡＭメモリを含んでもよい。一実施例では、コンピュータプログラム製品は、情報坦体に有形に具現化されている。コンピュータプログラム製品は、実行されると、上述のものなど、１以上の方法を実行する命令を含む。情報坦体は、メモリ１６６４、拡張メモリ１６７４、プロセッサ１６５２のメモリなどのコンピュータ又はマシン可読媒体、又は伝播される信号である。
【０１５６】
デバイス１６５０は、必要な場合、デジタル信号処理回路を有する通信インタフェース１６６６を介して無線通信してもよい。通信インタフェース１６６６は、とりわけ、ＧＳＭボイスコール、ＳＭＳ、ＥＭＳ、又はＭＭＳメッセージング、ＣＤＭＡ、ＴＤＭＡ、ＰＤＣ、ＷＣＤＭＡ、ＣＤＭＡ２０００、又はＧＰＲＳなどの、様々なモード又はプロトコルで通信を行うことができる。かかる通信は、例えば、無線周波数送受信機１６６８を介して行ってもよい。さらに、短距離通信を、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＷｉＦｉ、又は、その他の送受信機（図示していない）を用いて行ってもよい。さらに、ＧＰＳ受信機モジュール１６７０は、デバイス１６５０で起動しているアプリケーションに必要であれば、追加の無線データをデバイス１６５０に提供してもよい。
【０１５７】
デバイス１６５０は、ユーザからの発話の情報を受けて、処理可能なデジタル情報に変換する、オーディオコーデック１６６０を用いて音声による通信を行ってもよい。オーディオコーデック１６６０は同様に、例えば、デバイス１６５０のハンドセットを介して話者などのユーザに、可聴音声を生成することができる。この音声は、音声電話呼び出しからの音声、録音された音声（例えば、ボイスメッセージ、音楽ファイル、など）、さらにデバイス１６５０で動作するアプリケーションによって生成された音声を含んでもよい。
【０１５８】
コンピューティングデバイス１６５０は、図示のように、複数の異なった態様で実施することができる。例えば、携帯電話１６８０として実施してもよい。また、スマートフォン１６８２、ＰＤＳ（ｐｅｒｓｏｎａｌ ｄｉｇｉｔａｌ ａｓｓｉｓｔａｎｔ）、又は、その他の類似のモバイル機器の一部として実施してもよい。
【０１５９】
ここで説明した様々な実施例のシステム、及び技術については、デジタル電子回路、集積回路、特別に設計されたＡＳＩＣ（ａｐｐｌｉｃａｔｉｏｎ ｓｐｅｃｉｆｉｃ ｉｎｔｅｇｒａｔｅｄ ｃｉｒｃｕｉｔ）、コンピュータのハードウェア、ファームウェア、ソフトウェア、及び／又は、それらの組み合わせによって実現することができる。これらの様々な実施例は、ストレージシステム、少なくとも一つの入力デバイス、及び少なくとも一つの出力デバイスとの間で、データ及び命令を送受信する、専用又は汎用の少なくとも一つのプログラム可能なプロセッサを含む、プログラム可能なシステムで実行可能、及び／又は、解釈可能な１以上のコンピュータプログラムの実施例を含んでもよい。
【０１６０】
これらのコンピュータプログラム（また、プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも呼ぶ）は、プログラム可能なプロセッサのマシン命令を含み、高級手続き型、及び／又は、オブジェクト指向プログラミング言語、及び／又は、アセンブリ／マシン言語で実施してもよい。ここで用いた用語「マシン可読媒体」、「コンピュータ可読媒体」は、マシン命令をマシン可読信号として受ける、マシン可読媒体を含むプログラム可能なプロセッサに、マシン命令及び／又はデータを提供するために用いられる、コンピュータプログラム製品、装置、及び／又は、デバイス（例えば、磁気ディスク、光ディスク、メモリ、プログラム可能な論理デバイス（ＰＬＤ））を意味する。
【０１６１】
ユーザとの相互連動を行うため、本書で説明したシステム及び技術は、情報をユーザに表示するディスプレイデバイス（例えば、ＣＲＴ（陰極線管）又はＬＣＤ（液晶ディスプレイ）モニタ）と、ユーザがコンピュータに入力を行うことができる、キーボード、ポインティングデバイス（例えば、マウス又はトラックボール）とを有するコンピュータで実施してもよい。他の種類のデバイスを用いて、ユーザとの相互連動を行ってもよい。例えば、ユーザに提供されたフィードバックは任意の形態の感覚フィードバック（例えば、可視的なフィードバック、聴覚的なフィードバック、又は、触覚的なフィードバック）であってもよく、ユーザからの入力は、音、発話、触覚的な入力を含む、任意の形態で受けてもよい。
【０１６２】
本書で説明したシステム及び技術は、バックエンド構成要素を含むコンピューティングシステム（例えば、データサーバとして）、ミドルウェア構成要素を含むコンピューティングシステム（例えば、アプリケーションサーバ）、フロントエンド構成要素を含むコンピューティングシステム（ユーザが本書に説明したシステム及び技術の実施例と相互連動することができる、グラフィカルユーザインタフェース、又はウェブブラウザを有するクライアントコンピュータ）、又は、かかるバックエンド、ミドルウェア、又は、フロントエンド構成要素の任意の組み合わせを含む。システムの構成要素は、デジタルデータ通信（例えば、通信ネットワーク）の任意の形態、又は任意の媒体によって相互接続することができる。通信ネットワークの例として、ローカルエリアネットワーク（「ＬＡＮ」）、ワイドエリアネットワーク（「ＷＡＮ」）、及びインターネットが含まれる。
【０１６３】
コンピューティングシステムは、クライアントとサーバを含んでもよい。クライアントとサーバは、一般的に互いに離れており、通常、通信ネットワークを介して相互連動する。クライアントとサーバの関係は、それぞれのコンピュータで作動して、クライアントとサーバの関係を相互に有するコンピュータプログラムによって成立する。
【０１６４】
複数の実施例について説明した。しかしながら、本開示の趣旨と範囲を逸脱しない限りにおいて様々な変形が可能であることに理解されたい。したがって、他の実施例も、以下の特許請求の範囲内にある。
【符号の説明】
【０１６５】
１０４  第１の入力ジェスチャ
１０５  タブレットコンピュータ
１０６  ユーザ
１０８  第２の入力ジェスチャ
１１０  デバイス
１１２  語彙
１１４ａ〜ｄ  学習ジェスチャ
【図１】
0005619961.tif 000004
【図２】
0005619961.tif 000005
【図３】
0005619961.tif 000006
【図４】
0005619961.tif 000007
【図５】
0005619961.tif 000008
【図６】
0005619961.tif 000009
【図７】
0005619961.tif 000010
【図８】
0005619961.tif 000011
【図９】
0005619961.tif 000012
【図１０】
0005619961.tif 000013
【図１１】
0005619961.tif 000014
【図１２】
0005619961.tif 000015
【図１３】
0005619961.tif 000016
【図１４】
0005619961.tif 000017
【図１５】
0005619961.tif 000018
【図１６】
0005619961.tif 000019