(57)【要約】本発明の態様は、タッチ式オペレーティングシステムのハンズフリーナビゲーションを可能にする。システムは、タッチ式オペレーティングシステムと自動的に相互作用し、タッチ式コマンドに関連付けられたハンズフリーコマンドを生成できる。実施形態は、モーションおよび／または音声入力を利用して、タッチ式オペレーティングシステムとのハンズフリー対話を促進することができる。【選択図】図１
2020502719.tif 000002
【特許請求の範囲】
【請求項１】
ヘッドマウントコンピューティングデバイスのハンズフリーナビゲーションのためのコンピュータ実装方法であって、前記ヘッドマウントコンピューティングデバイス上で、タッチ式オペレーティングシステムのユーザインターフェースとの対話が可能になるハンズフリー対話モードを開始するステップと、１つまたは複数の軸に対する前記ヘッドマウントコンピューティングデバイスの位置を含む前記ヘッドマウントコンピューティングデバイスの初期位置を検出するステップと、前記ヘッドマウントコンピューティングデバイスのディスプレイに前記タッチ式オペレーティングシステムの前記ユーザインターフェースの第１のインスタンスを表示するステップと、前記ヘッドマウントコンピューティングデバイスの第１の変位を検出するステップであって、前記第１の変位は、前記初期位置に対する変位である第１の閾値変位を超える変位であるステップと、前記第１の変位に基づいて、１つまたは複数のタッチ式入力に対応する第１の指令を判定するステップと、前記タッチ式オペレーティングシステムに前記第１の指令を伝えるステップと、を含む方法。
【請求項２】
前記タッチ式オペレーティングシステムの前記ユーザインターフェースに関連付けられた第１の可聴入力を受け付けるステップと、前記第１の可聴入力に基づいて第２の指令を判定するステップと、をさらに含む請求項１に記載のコンピュータ実装方法。
【請求項３】
前記ユーザインターフェースが、前記タッチ式オペレーティングシステムにおける電子文書に関連付けられる、請求項１に記載のコンピュータ実装方法。
【請求項４】
前記第１の指令が、固定数のスクロールユニットを有するスクロール指令を備える、請求項２に記載のコンピュータ実装方法。
【請求項５】
前記第１の閾値変位は、前記１つまたは複数の軸に対する前記ヘッドマウントコンピューティングデバイスの最小角変位に対応する、請求項１に記載のコンピュータ実装方法。
【請求項６】
前記第１の変位は、前記ヘッドマウントコンピューティングデバイスの１つまたは複数のセンサによって検出される、請求項１に記載のコンピュータ実装方法。
【請求項７】
前記第１の変位を検出するステップは、前記第１の変位の持続時間を判定することを含む、請求項１に記載のコンピュータ実装方法。
【請求項８】
前記ヘッドマウントコンピューティングデバイスのディスプレイに前記タッチ式オペレーティングシステムの前記ユーザインターフェースの第２のインスタンスを表示するステップをさらに含む、請求項１に記載のコンピュータ実装方法。
【請求項９】
前記ヘッドマウントコンピューティングデバイスの第２の変位を検出するステップであって、前記第２の変位は、第２の閾値変位を超える変位であるステップと、前記第２の変位に基づいて、１つまたは複数のタッチ式入力に対応する第２の指令を判定し、前記ヘッドマウントコンピューティングデバイスの前記ディスプレイに前記タッチ式オペレーティングシステムの前記ユーザインターフェースの第３のインスタンスを表示するステップと、をさらに含む、請求項８に記載のコンピュータ実装方法。
【請求項１０】
１つまたは複数のコンピューティングデバイスによって使用されることにより、前記１つまたは複数のコンピューティングデバイスに、前記ヘッドマウントコンピューティングデバイス上で、タッチ式オペレーティングシステムのユーザインターフェースとの対話が可能になるハンズフリー対話モードを開始するステップと、前記タッチ式オペレーティングシステムの前記ユーザインターフェースにおける少なくとも１つのタッチ式制御ダイアログを識別するステップと、前記ヘッドマウントコンピューティングデバイスのディスプレイに前記タッチ式オペレーティングシステムの前記ユーザインターフェースの第１のインスタンスを表示するステップと、前記少なくとも１つのタッチ式制御ダイアログに関連付けられた第１の可聴入力を受け付けるステップと、前記第１の可聴入力に応じて前記ヘッドマウントコンピューティングデバイスに前記タッチ式オペレーティングシステムの前記ユーザインターフェースの第２のインスタンスを表示するステップと、を含む動作を実行させる、コンピュータ使用可能命令を記憶する非一時的なコンピュータ記憶媒体デバイス。
【請求項１１】
前記ヘッドマウントコンピューティングデバイスのディスプレイに、前記ユーザインターフェースの前記第１のインスタンスに重ねて少なくとも１つのグラフィカルオーバーレイコントロールを表示するステップをさらに含む、請求項１０に記載のコンピュータ記憶媒体。
【請求項１２】
前記少なくとも１つのグラフィカルオーバーレイコントロールは、前記少なくとも１つのタッチ式制御ダイアログに対応する可聴入力を表す視覚的指標を含む、請求項１１に記載のコンピュータ記憶媒体。
【請求項１３】
前記少なくとも１つのタッチ式制御ダイアログに関連する複数の所定のグラフィカルオーバーレイコントロールのうちのグラフィカルオーバーレイコントロールの識別に基づいて、前記少なくとも１つのグラフィカルオーバーレイコントロールを選択するステップをさらに含む、請求項１０に記載のコンピュータ記憶媒体。
【請求項１４】
前記ハンズフリー対話モードを一時停止する指令に対応する第２の可聴入力を受けつけるステップをさらに含む、請求項１０に記載のコンピュータ記憶媒体。
【請求項１５】
前記第１の可聴入力からテキストを認識するために音声認識を実行するステップをさらに含む、請求項１０に記載のコンピュータ記憶媒体。
【請求項１６】
前記ユーザインターフェースは、前記タッチ式オペレーティングシステムで実行されるモバイルアプリケーションに関連付けられている、請求項１０に記載のコンピュータ記憶媒体。
【請求項１７】
ヘッドマウントコンピューティングデバイスのハンズフリーナビゲーションのためのシステムであって、１つまたは複数のプロセッサと、１つまたは複数のコンピュータ記録媒体と、を備え、前記１つまたは複数のコンピュータ記録媒体は、前記１つまたは複数のプロセッサによって実行されることにより、前記ヘッドマウントコンピューティングデバイス上で、タッチ式オペレーティングシステムのユーザインターフェースとの対話が可能になるハンズフリー対話モードを開始するステップと、前記ヘッドマウントコンピューティングデバイスのディスプレイに前記タッチ式オペレーティングシステムの前記ユーザインターフェースの第１のインスタンスを表示するステップと、前記ヘッドマウントコンピューティングデバイスの閾値変位を超える第１の変位と、前記ユーザインターフェースの前記第１のインスタンスに含まれるタッチ式制御ダイアログに関連付けられた第１の可聴入力と、のうち１つまたは複数を備える第１のハンズフリー入力を検出するステップと、前記ハンズフリー入力に基づいて、１つまたは複数のタッチ式入力に対応する第１指令を判定するステップと、前記ヘッドマウントコンピューティングデバイスの前記ディスプレイに前記タッチ式オペレーティングシステムの前記ユーザインターフェースの第２のインスタンスを表示するステップと、を含む方法を指令するコンピュータ使用可能命令を記憶する、システム。
【請求項１８】
前記第１のハンズフリー入力は、前記第１の変位および前記第１の可聴入力を含む、請求項１７に記載のシステム。
【請求項１９】
前記実装された方法は、第２のハンズフリー入力を検出するステップと、前記第２のハンズフリー入力に基づいて、１つまたは複数のタッチ式入力に対応する第２の指令を判定するステップと、前記ヘッドマウントコンピューティングデバイスの前記ディスプレイに前記タッチ式オペレーティングシステムの前記ユーザインターフェースの第３のインスタンスを表示するステップと、をさらに含む、請求項１７に記載のシステム。
【請求項２０】
前記実装された方法は、ハンズフリー開始入力を検出するステップと、前記ヘッドマウントコンピューティングデバイス上で前記ハンズフリー対話モードを開始する指令を生成するステップと、をさらに含む、請求項１７に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
スマートフォン、タブレット、ラップトップなどのタッチ式デバイスは、日常生活のいたるところにある側面となっている。たとえば、スマートフォンやタブレット上のアプリケーションを使用して、人が社会的交流を組織して指揮することが一般的になっている。さらに、企業は、従業員とのコミュニケーション、仕事の監視、およびプロジェクトデータのレビューなど、他のさまざまな用途の中でも、タッチ式デバイスにしばしば頼っている。タッチ式デバイスは典型的に、タッチ式オペレーティングシステム（Ａｎｄｏｒｏｉｄ（登録商標）又はｉＯＳ（登録商標）など）を実行する。これは本質的に、タッチ式入力に依存してオペレーティングシステムとの対話を制御する。これらのデバイスは便利で価値があるが、すべて同じ制限がある。つまり、根本的に、ユーザは、デバイスと直接手動で対話する必要がある。
【０００２】
たとえば、タッチ式オペレーティングシステムは現在、テキスト入力を受け付けるために仮想キーボードに主に依存している。仮想キーボードは、単語を一度に１文字ずつ入力しなければならない比較的小さなボタンを持つことが多く、中程度の長さでさえメッセージを入力するには時間がかかり、実用的ではないことがある。いくつかのタッチ式オペレーティングシステムは、テキストを単語に翻訳するための音声認識を提供するが、そうした音声認識はしばしばインターネット接続を必要とし、それは常に利用可能であるとは限らない。さらに、たとえ音声認識が利用可能であっても、それは一般にテキスト入力に限定され、タッチ式オペレーティングシステムは、アプリケーション内のユーザインターフェースをナビゲートして複数のアプリケーション間をナビゲートするためのメカニズムをほとんど提供しない。例えば、タッチ式オペレーティングシステムにおいて複数ページの文書をナビゲートするには、一般に、水平にナビゲートするためにスクロールバーでスクリーンに触れること、またはスクロールするためにスクリーンを「スワイプ」することをユーザに要求する。
【０００３】
しかしながら、ユーザは、手動でのタッチ式の対話ができない、困難、または不可能である期間中にこれらの装置を使用することを望む（または必要とする）かもしれない。例えば、多くの個人は、そうすることを必要とする又は望んだとしても、タッチ式デバイスと物理的に対話する能力を持っていないかもしれない。さらに、ユーザがタッチ式デバイスと物理的に対話できる場合でも、環境上の制限により、安全または快適な方法でデバイスとの手動の対話が制限される場合がある。さらに、ユーザが自分の手を必要とするタスクに従事している間に、タッチ式デバイスの機能にアクセスすることが望ましい場合がある。
【０００４】
これらの問題を解決するためのこれまでの試みは、煩雑で柔軟性のないユーザ経験を提供する、高度に特殊化された専用デバイスまたはプロセスにしばしば依存していた。さらに、以前の解決策は、アプリケーションがハンズフリー入力源と調和するように、タッチ式オペレーティングシステム用に設計された既存のアプリケーションからのソースコードの修正を必要とした。また、タッチフリーの解決策を利用にするために、すべてのタッチ式アプリケーションを変更することは現実的ではない。したがって、既存の解決策は、いくつかの選択されたタッチ式アプリケーションとしか協調できなかった。さらに、従来の解決策は、タッチ式オペレーティングシステム自体との対話を可能にしておらず、代わりにオペレーティングシステムに頼っていた。結果として、従来の解決策は、一般に、既存のおよび広く採用されているタッチ式オペレーティングシステムとの対話を可能にするのではなく、まったく新しいオペレーティング環境を学習しなければならないことをユーザに要求していた。
【発明の概要】
【０００５】
この概要は、本開示の詳細な説明の節で以下にさらに説明される概念の抜粋を簡略化された形で紹介することを意図している。この概要は、特許請求の範囲に記載された主題の重要なまたは本質的な特徴を特定することを意図しておらず、特許請求の範囲に記載の主題の範囲を判断する際の補助として使用することも意図していない。
【０００６】
これらの問題に対処するために、本発明は概して、タッチ式オペレーティングシステムのハンズフリーナビゲーションを提供するシステムおよび方法を対象とする。さらに、本明細書で説明する態様は、ソースコードの変更を必要とせずに、タッチ式オペレーティングシステムおよびアプリケーションとのハンズフリー対話を促進する。つまり、本明細書で説明するシステムおよび／または方法の実装とは別に、ユーザは、ハンズフリー対話の利点を享受するために、異なるアプリケーションに変更したり、使い慣れたタッチ式オペレーティングシステムを放棄したりする必要がない。さらに、必須ではないが、実施形態では、ユーザは、ハンズフリーナビゲーションをカスタマイズして、ユーザのニーズおよび要望に基づいて調整された機能を提供することができる。
【０００７】
したがって、本明細書で説明する技術の態様は、タッチ式オペレーティングシステムのハンズフリーナビゲーションを促進するシステムおよび方法を提供する。一態様では、ハンズフリーナビゲーションシステムは、タッチ式オペレーティングシステムのタッチ式ユーザインターフェースを分析して、タッチ式スクロール機能を識別し、スクロール機能をハンズフリーコマンドに関連付け、ユーザへのディスプレイにタッチ式ユーザインターフェースを提示する。次に、システムが３Ｄ空間で回転、変換、または移動すると、システムはそれらの移動を検出し、タッチ式オペレーティングシステムのタッチ式ユーザインターフェースでタッチ式コマンドに変換する。言い換えれば、システムは、タッチ式スクロール機能をモーション式コマンドに変換し、モーションを検出し、モーションをスクロールコマンドに変換する。このように、タッチ式オペレーティングシステムは、モーション式ユーザコマンドを利用できるハンズフリーオペレーティングシステムに変換できる。
【０００８】
別の態様では、ハンズフリーシステムは、タッチ式オペレーティングシステムのタッチ式ユーザインターフェースを分析して、制御ダイアログ（コマンドに関連付けられたアイコンなど）を識別し、制御ダイアログをキーワードキューに関連付けて、ユーザへのディスプレイにタッチ式ユーザインターフェースを表示する。次いで、システムは、音声入力を処理し、音声入力内のキーワードキューを識別し、キーワードキューを関連するタッチ式オペレーティングシステムのタッチ式ユーザインターフェースにおけるタッチ式コマンドに変換し得る。言い換えれば、システムはタッチ式コマンドをキーワードキューに変換し、ユーザが発話すると、タッチ式環境で目的のコマンドの実行がなされる。このように、タッチ式オペレーティングシステムは、音声式ユーザコマンドを利用できるハンズフリーオペレーティングシステムに変換できる。ユーザとの対話を促進するために、別の態様では、システムはタッチ式ユーザインターフェースに重ねられたキーワードキューオーバーレイを表示してもよい。これらのオーバーレイは、ユーザが希望する制御ダイアログの選択を促進するためのキーワードキューを発行するのに役立つ視覚的なプロンプトを提供する。
【０００９】
一態様では、本明細書で開示される様々なハンズフリー入力タイプは、同時にまたは互いに組み合わせて使用され得る。例えば、システムは、モーション式ユーザコマンドと音声式ユーザコマンドとの両方に同時に応答し得る。さらに、モーション式ユーザコマンド、音声式ユーザコマンド、およびモーションプラス音声式ユーザコマンドを使用したハンズフリーナビゲーションを促進する方法が提供される。
【００１０】
本開示は、添付の図面を参照して以下に詳細に説明される。
【図面の簡単な説明】
【００１１】
【図１】図１は、本開示の実施形態を実施する際に使用するのに適した例示的なコンピューティング環境を示す図である。
【図２】図２は、本開示の形態による例示的なハンズフリーナビゲーションシステムを示す図である。
【図３】図３は、本開示の更なる形態による、図２に示す例示的なハンズフリーナビゲーションシステムを示す図である。
【図４Ａ】図４Ａは、本開示の形態による例示的なモーション式ハンズフリー対話方法を示す図である。
【図４Ｂ】図４Ｂは、本開示の形態による例示的な音声式ハンズフリー対話方法を示す図である。
【図４Ｃ】図４Ｃは、本開示の形態による例示的なモーション式および音声式ハンズフリー対話方法を示す図である。
【図５】図５は、本開示の形態による、多軸モーション式対話を判定するための例示的な方法を示す図である。
【図６Ａ】図６Ａは、本開示の形態による例示的なユーザ対話を示す図である。
【図６Ｂ】図６Ｂは、本開示の形態による例示的なユーザ対話を示す図である。
【図７Ａ】図７Ａは、本開示の形態による音声式入力を判定するための例示的な方法を示す図である。
【図７Ｂ】図７Ｂは、図７Ａの方法の拡大部分を示す図であり、本開示の形態による、音声式入力を判定するための例示的な方法を示す。
【図８Ａ】図８Ａは、本開示の形態による、例示的なタッチ式ユーザインターフェースにおける制御ダイアログの例示的な識別方法を示す図である。
【図８Ｂ】図８Ｂは、本開示の形態による、例示的なタッチ式ユーザインターフェースにおけるタッチ式制御ダイアログに関連する例示的なキーワードキューオーバーレイを示す図である。
【図９】図９は、本開示の形態による、例示的な基準フレームを有する例示的なヘッドマウントコンピューティングデバイスを示す図である。
【図１０】図１０は、本開示の形態による、例示的なコンピューティングデバイスを示す図である。
【発明を実施するための形態】
【００１２】
本開示の主題は、法定要件を満たすために本明細書中に詳細に記載されている。しかしながら、本説明自体は、特許の範囲を限定することを意図していない。むしろ、本発明者らは、他の現在または将来の技術と共に、本明細書に記載されたものと同様の異なるステップまたはステップの組み合わせを含めて、特許請求の範囲に記載された主題は、他の方法で具体化され得ると考えている。さらに、「ステップ」および／または「ブロック」という用語は、使用される方法の異なる要素を示すために本明細書で使用されることがあるが、個々のステップの順序が明白に記載されている場合を除き、本明細書に記載の様々なステップの間、またはその内における何らかの特定の順序を示すものとして解釈されるべきではない。本明細書に記載の各方法は、ハードウェア、ファームウェア、および／またはソフトウェアの任意の組み合わせを使用して実行され得るコンピューティングプロセスを含み得る。例えば、メモリに格納された指令を実行するプロセッサによって様々な機能が実行され得る。方法はまた、コンピュータ記憶媒体に記憶されたコンピュータ使用可能指令として実施することもできる。方法は、いくつか例を挙げると、スタンドアロンアプリケーション、サービスもしくはホスト型サービス（スタンドアロン型、または他のホスト型サービスと組み合わせて）、または別の製品へのプラグインによって提供されてもよい。
【００１３】
概して、本明細書の形態は、タッチ式オペレーティングシステムとのハンズフリー対話を可能にするメカニズムに関する。理解されるように、タッチ式オペレーティングシステム（Ａｎｄｏｒｏｉｄ（登録商標）、ｉＯＳ（登録商標）など）は、タッチ式オペレーティングシステムを実行しているモバイルデバイスのタッチスクリーンを介して受信した入力に依存することが多い。しかしながら、タッチスクリーンとの対話は、ユーザの能力およびモバイル機器が使用される状況に応じて、不可能または望ましくない場合がある。例えば、ユーザが別のタスクを実行するために自分の手を使用しているとき、そのタスクを中止してタッチ式オペレーティングシステムと対話することは、しばしば不便で時間がかかる。したがって、本形態は、タッチ式オペレーティングシステムとのハンズフリー対話を促進するデバイス、方法、およびシステムに関する。
【００１４】
本明細書の一形態は、タッチ式オペレーティングシステムとのハンズフリー対話のための方法を実装するヘッドマウントコンピューティングデバイス（ヘッドセットなど）に関する。非限定的な例では、ヘッドセットは、ディスプレイ（ヘッドアップディスプレイ、接眼ディスプレイなど）、センサ（とりわけカメラ、マイクロフォン、加速度計、ジャイロスコープ、磁力計など）、１つ又は複数のプロセッサ、及びメモリを含むことができる。ヘッドセットは、タッチ式オペレーティングシステムを実行しているモバイルデバイスと通信可能に結合されてもよい。また、ヘッドセットは、例えばヘッドセットの接眼ディスプレイ上に、タッチ式オペレーティングシステムのユーザインターフェースのインスタンスを表示するように構成され得る。さらに、ヘッドセットは、センサを介して受信したハンズフリー入力を使用して、タッチ式オペレーティングシステムのユーザインターフェースとの対話を促進するハンズフリー対話モードを提供することができる。例えば、例示的な一形態は、ヘッドセットによって検出された移動を使用して、タッチ式オペレーティングシステムの動作を実行するためにナビゲートするための指令またはコマンドを判定する。
【００１５】
別の例示的な態様は、ヘッドセットによって検出された音声コマンドを使用して、タッチ式オペレーティングシステムの動作を実行するための命令またはコマンドを判定する。したがって、ヘッドセットはまた、含まれるセンサ（とりわけ、マイクなど）を監視し、センサによって受信された入力を分析し、入力に関連するタッチ式オペレーティングシステムの指令またはコマンドを判定し、タッチ式オペレーティングシステムのユーザインターフェース内でナビゲートするための指令またはコマンドを実行するように、構成され得る。さらに、ヘッドセットは、ヘッドセットコンポーネントまたはソフトウェアモジュールを使用して、タッチ式オペレーティングシステムのユーザインターフェースおよびタッチ式オペレーティングシステムに関連するコードをリアルタイムで分析して、ハンズフリー対話モードを促進するように構成され得る。
【００１６】
別の例示的な態様は、タッチ式オペレーティングシステムのユーザインターフェースをナビゲートし、タッチ式オペレーティングシステムの動作を実行するための指令またはコマンドを判定するために、ヘッドセットによって検出された音声コマンドおよび移動の両方を使用する。さらに、ヘッドセットは、ハンズフリー対話モードの使い勝手を向上させるために、環境固有のデータ（ユーザ固有の設定、ハンズフリーインターフェース固有の設定、キーワードキューライブラリ、タッチ式インターフェース固有の設定、場所固有の設定など）を含むカスタマイズされたデータベースを含むか、または当該データベースと通信してもよい。ヘッドセットは、ハンズフリー対話モードの使い勝手を向上させるために無線通信システム（Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＮＦＣ、ＲＦＩＤ、ＷＩＦＩ（登録商標）など）を含むことができる。例として、無線通信システムは、カスタマイズされたデータベースに格納されている環境固有データと相関し得る位置情報をヘッドセットに提供することによって、ハンズフリー対話モードの使い勝手を高め得る。ヘッドセットは、ハンズフリー対話モードの使い勝手を向上させるために、無線通信システムを備えた携帯機器と通信可能に結合されてもよい。さらに、ヘッドセットは、環境固有のデータを含むネットワーク式のカスタマイズされたデータベースを利用するように構成されてもよい。
【００１７】
次に図１を参照すると、本開示のいくつかの実施形態で採用され得る例示的な動作環境１００を示すブロック図が提供されている。本明細書に記載されたこの構成および他の構成は例としてのみ記載されていることを理解されたい。示されたものに加えて、または代えて、他の配置および要素（例えば、機械、インターフェース、機能、順序、および機能のグループ化など）が使用されてもよく、いくつかの要素は明確さのために完全に省略されてもよい。さらに、本明細書で説明されている要素の多くは、個別のコンポーネントまたは分散されたコンポーネントとして、または他のコンポーネントと一緒に、ならびに任意の適切な組合せおよび場所で実装され得る機能存在である。本明細書で１つ又は複数の存在によって実行されるものとして説明されている様々な機能は、ハードウェア、ファームウェア、および／またはソフトウェアによって実行することができる。例えば、いくつかの機能は、メモリに格納された指令を実行するプロセッサによって実行され得る。
【００１８】
他のコンポーネントは示していないが、例示的動作環境１００は、ユーザデバイス１０２ａ−１０２ｎなどのいくつかのユーザデバイス、データソース１０４ａ、および１０４ｂから１０４ｎなどのいくつかのデータソース、サーバ１０６、センサ１０３ａ〜１０３ｎ、及びネットワーク１１０を含む。図１に示される環境１００は、適切な動作環境の一例であることを理解されたい。図１に示した各コンポーネントは、例えば、図１０に関連して説明されるコンピューティングデバイス１０００などの任意のタイプのコンピューティングデバイスを介して実装され得る。これらのコンポーネントは、限定はしないが、１つまたは複数のローカルエリアネットワーク（ＬＡＮ）および／またはワイドエリアネットワーク（ＷＡＮ）を含み得るネットワーク１１０を介して互いに通信することができる。例示的な実施態様では、ネットワーク１１０は、インターネットおよび／またはセルラーネットワークを含み、その中には、さまざまな可能な公衆および／または私設ネットワークが含まれる。
【００１９】
本開示の範囲内で、任意の数のユーザデバイス、サーバ、およびデータソースを動作環境１００内で採用することができることを理解されたい。各々は、単一の装置または分散環境において協働する複数の装置を含み得る。例えば、サーバ１０６は、本明細書に記載の機能を集合的に提供する分散環境に配置された複数の装置を介して提供されてもよい。さらに、図示されていない他のコンポーネントも分散環境内に含まれてもよい。
【００２０】
ユーザデバイス１０２ａ〜１０２ｎは、ユーザが使用することができる任意の種類のコンピューティングデバイスを備え得る。例えば、一実施形態では、ユーザデバイス１０２ａ〜１０２ｎは、本明細書の図１０に関して説明される種類のコンピューティングデバイスであり得る。限定ではなく例として、ユーザデバイスは、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、モバイルもしくはモバイルデバイス、スマートフォン、タブレットコンピュータ、スマートウォッチ、ウェアラブルコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、ＭＰ３プレーヤー、全地球測位システム（ＧＰＳ）またはデバイス、ビデオプレーヤー、ハンドヘルド通信デバイス、ゲーミングデバイスまたはシステム、エンターテインメントシステム、車載コンピュータシステム、組み込みシステムコントローラ、カメラ、リモコン、バーコードスキャナ、コンピュータ化された測定装置、機器、家庭用電化製品、ワークステーション、ヘッドマウントコンピューティングデバイス、またはこれらの描写された装置の任意の組み合わせ、または任意の他の適切な装置であり得る。
【００２１】
ユーザデバイス１０２ａ〜１０２ｎは、動作環境１００のクライアント側のクライアント装置とすることができ、一方、サーバ１０６は、動作環境１００のサーバ側とすることができる。サーバ１０６は、本開示で説明される特徴および機能の任意の組み合わせを実装するために、ユーザデバイス１０２ａ〜１０２ｎのクライアント側ソフトウェアと共に動作するように設計されたサーバ側ソフトウェアを備えてもよい。動作環境１００のこの区分は適切な環境の一例を示すために提供されており、サーバ１０６とユーザデバイス１０２ａ−１０２ｎとの任意の組み合わせが別個の要素とされることは各実施態様について要件ではない。
【００２２】
データソース１０４ａおよび１０４ｂから１０４ｎは、データを動作環境１００の様々なコンポーネントのいずれか、または図２に関連して説明されるハンズフリー対話システム２００に利用可能にするように構成されたデータソースおよび／またはデータシステムを備え得る。例えば、一実施形態では、１つまたは複数のデータソース１０４ａから１０４ｎが、図２のストレージ２７０に提供される（またはアクセス可能にする）。データソース１０４ａおよび１０４ｂから１０４ｎは、ユーザデバイス１０２ａ〜１０２ｎおよびサーバ１０６とは別個であってもよいし、またはそれらに組み込まれるおよび／またはそれらと統合されてもよい。一実施形態では、データソース１０４ａから１０４ｎのうちの１つまたは複数は、ユーザデバイス１０２ａ〜１０２ｎまたはサーバ１０６のうちの１つまたは複数に統合され得るかまたはそれらに関連付けられ得る１つまたは複数のセンサを備える。動作環境１００は、図２および図３で説明される、モーション処理、サウンド処理、ならびにキーワードカスタムライブラリ、ユーザデータ、環境固有データなどのデータストレージ用のコンポーネントを含む、ハンズフリー対話システム２００のコンポーネントのうちの１つまたは複数を実装するために利用することができる。
【００２３】
次に図２を参照すると、本開示のいくつかの実施形態で採用することができるハンズフリー対話システム２００の例示的な実施形態を示すブロック図が提供されている。ハンズフリー対話システム２００は、概して、タッチ式オペレーティングシステム２０２のアプリケーションおよび機能とのハンズフリー対話を促進するように動作する。図２に示されるハンズフリー対話システムは、本開示の実施形態で採用することができる１つのシステムの例であることを理解されたい。図示される各コンポーネントは、図１を参照して説明された動作環境１００と同様の１つまたは複数のコンピューティングデバイスを含み得る。ハンズフリー対話システム２００は、図示されている任意の単一のモジュール／コンポーネントまたはモジュール／コンポーネントの組み合わせに関連した依存または要件を有すると解釈されるべきではない。例えば、ハンズフリー対話システム２００は、本明細書に記載の機能を集合的に提供する分散環境において構成された複数の装置を含み得る。ハンズフリー対話システム２００および／またはその様々なコンポーネントは、本開示の様々な実施形態に従って任意の場所に配置し得ることを理解されたい。
【００２４】
ヘッドマウントコンピューティングデバイス２２０（図９を参照してより詳細に説明される）は、概して、タッチ式オペレーティングシステム２０２のタッチ式ユーザインターフェース２０６とのハンズフリー対話を促進する。ヘッドマウントコンピューティングデバイス２２０は、とりわけモーションセンサ、音声センサ、ディスプレイ、及び入力コントロールなど、さまざまなヘッドセットデバイスの入出力コンポーネントを備え得る。さらに、ヘッドマウントコンピューティングデバイス２２０は、ストレージ２７０などのコンピュータ記憶媒体に格納されたコンピュータ使用可能指令を含み得る。したがって、ヘッドマウントコンピューティングデバイス２２０は、ハードウェア、ファームウェア、および／またはソフトウェアの任意の組み合わせを使用して実行できるコンピューティングプロセスを実行するように構成できる。例えば、メモリに格納された指令を実行するプロセッサ（例えば、ヘッドセットプロセッサ２８０）によって様々な機能が実行され得る。こうした方法は、いくつか例を挙げると、スタンドアロンアプリケーション、サービスもしくはホスト型サービス（スタンドアロン型、または他のホスト型サービスと組み合わせて）、又は他の製品へのプラグインによって提供されてもよい。
【００２５】
ハンズフリー対話システム２００によって実行される機能およびプロセスは、アプリケーション、サービス、またはルーチン（ヘッドセットアプリケーション２７６など）に関連付けられてもよい。特に、そのようなアプリケーション、サービス、またはルーチンは、ヘッドマウントコンピューティングデバイス２２０上で動作してもよく、または複数のデバイスにわたって分散されてもよい。例えば、本明細書に記載されている機能およびプロセスは、タッチ式ユーザデバイス（ユーザデバイス１０２ａなど）、サーバ（サーバ１０６など）上で実行されてもよいし、またはクラウド内に実装されてもよい。さらに、いくつかの実施形態では、ハンズフリー対話システム２００のコンポーネントは、ネットワーク１１０にわたって分散され得る。加えて、これらのコンポーネント、これらのコンポーネントによって実行される機能、またはこれらのコンポーネントによって実行されるサービスは、コンピューティングシステムのオペレーティングシステム層、アプリケーション層、ハードウェア層など、適切な抽象化層で実装され得る。コンピューティングシステムの）。あるいは、または加えて、本明細書に記載のこれらのコンポーネントの機能および／または本発明の実施形態は、少なくとも部分的には、１つまたは複数のハードウェア論理コンポーネントによって実行することができる。例えば、限定ではなく、使用可能な例示的な種類のハードウェア論理コンポーネントには、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、特定用途向け標準製品（ＡＳＳＰ）、チップシステム上システム（ＳＯＣｓ）、複雑なプログラマブルロジックデバイス（ＣＰＬＤ）、が含まれる。さらに、本明細書では、例示的なハンズフリー対話システム２００に示されている特定のコンポーネントに関して機能性を説明しているが、いくつかの実施形態では、これらのコンポーネントは他のコンポーネントと共有されるまたは分散されることが想定される。
【００２６】
したがって、ヘッドマウントコンピューティングデバイス２２０は、ハンドフリー対話モードを提供するための指令（ヘッドセットアプリケーション２７６によって記憶され得る）を実行する１つまたは複数のヘッドセットプロセッサ２８０を含み得る。ハンズフリー対話モードは、ヘッドマウントコンピューティングデバイス２２０を介したタッチ式オペレーティングシステム２０２のプログラム、アプリケーション、および機能との対話を促進することができる。一形態では、ヘッドセットアプリケーション２７６は、タッチ式オペレーティングシステム２０２で動作する既存のバイナリアプリケーションとのハンズフリー対話を促進するための指令を含む。例えば、ハンズフリー対話システム２００は、発行元、またはＰｌａｙｓｔｏｒｅ、Ａｐｐｓｔｏｒｅ、及びタッチ式アプリケーションの他の供給源から利用可能なアプリケーションのような既存のバイナリを通じて、任意の数のアプリケーションと共に使用できるように構成され得る。さらに、ヘッドセットエンジン２１０は、タッチ式オペレーティングシステム２０２上で実行されているアプリケーション２０８に問い合わせて、とりわけタッチ式ユーザインターフェースに含まれる入力制御、フォーム要素、およびナビゲーションコマンドなどの画面コンポーネント／機能を判定し得る。例えば、ヘッドセットエンジン２１０は、タッチ式オペレーティングシステム２０２のユーザインターフェース層を分析して、様々な画面コンポーネント／機能が表示のためにいつ提供されているかを判断することができる。このようにして、タッチ式アプリケーションが実行されているときに、アプリケーションの様々な表示されたＵＩコンポーネントを判定することができる。下記で説明するように、画面コンポーネント／特徴を抽出または識別し、処理のためにハンズフリー対話システム２００の他のコンポーネントに提供することができる。結果として、タッチ式オペレーティングシステム２０２で動作可能な実質的にあらゆるアプリケーションは、実行時に、ハンズフリー対話のために有効にすることができる。さらに、ハンズフリー対話システム２００は、標準のハンズフリー対話モードの指令と互換性がないアプリケーション用のＸＭＬファイルを含んでもよい。ＸＭＬファイルは、標準のハンズフリー対話モードの指示を無効にし、カスタマイズされた指示を提供し得る。加えて、ＸＭＬファイルは、既存のバイナリが修正されなくてもよいように、実行時にアプリケーション２０８の既存のバイナリと混合されてもよい。
【００２７】
さらに、ヘッドマウントコンピューティングデバイス２２０は、様々なヘッドセットデバイスＩ／Ｏ２２２、例えば、ヘッドマウントコンピューティングデバイス２２０を介して受信されたハンズフリー入力を感知または検出することができるコンポーネントを含んでもよい。受信された入力は、例えばハンズフリー入力判定部２４０によって、１つまたは複数のハンズフリーコマンドを生成するために処理される。さらに、ハンズフリー対話システム２００は、受信したハンズフリー入力に関連するコマンドを判定および／または生成するように構成され得る。生成されたハンズフリーコマンドは、（例えば、通信コンポーネント２３２によって）実行のためにタッチ式オペレーティングシステム２０２に通信され得る。判定されたコマンドは、あたかも対応するタッチ式入力を実行しているかのように、コマンドを実行するようにタッチ式オペレーティングシステム２０２にプログラム的に指示することができる。
【００２８】
ヘッドセットエンジン２１０は、概して、タッチ式オペレーティングシステム２０２、タッチ式ユーザインターフェース２０６、モーション処理システム２４２、サウンド処理システム２５０、インターフェース分析部２１２、ストレージ２７０、ヘッドセットデバイス入出力部（Ｉ／Ｏ）２２２、及び他のそれぞれのサブコンポーネント間の通信を促進することを担当する。いくつかの形態では、ヘッドセットエンジン２１０は、ヘッドセットデバイスＩ／Ｏ２２２から信号を受信したことに応じて、ハンズフリー対話モードを開始する。例えば、（ボタン、スイッチなどの）物理的入力制御部２３８は、ハンズフリー対話モードを開始する入力を受けることができる。いくつかの形態では、ヘッドセットエンジン２１０は、判定されたタッチ式スクロール機能およびタッチ式制御ダイアログなど、タッチ式ユーザインターフェース２０６および／またはタッチ式オペレーティングシステム２０２の分析を開始する。いくつかの形態では、ヘッドセットエンジン２１０は、（たとえば、センサ２２６ａ〜２２６ｎから）モーションデータを受信し、情報をハンズフリー入力判定部２４０へ送信する。いくつかの形態では、ヘッドセットエンジン２１０は、ヘッドセットデバイスＩ／Ｏ２２２から音声入力部２２４を受信し、情報をハンズフリー入力判定部２４０へ送信する。
【００２９】
タッチ式ユーザインターフェース２０６は、概して、ハンズフリー対話システム２００におけるタッチ式オペレーティングシステム２０２とのユーザ対話を促進する。いくつかの形態では、タッチ式ユーザインターフェース２０６は、タッチ式スクロール機能（「スワイプ」機能、水平スクロールバー、垂直スクロールバーなど）を含み得る。いくつかの形態では、タッチ式ユーザインターフェース２０６は、（たとえば、テキストボックスまたはフィールド、チェックボックス、アプリケーションアイコン、文書ツール、ラジオボタンなどの）タッチ式制御ダイアログを含む。
【００３０】
いくつかの形態では、ストレージ２７０は、キーワードカスタムライブラリ２７２を含み得る。キーワードカスタムライブラリ２７２は、タッチ式制御ダイアログの関連付けに対するキーワードキューを含むデータベースを含み得る。一形態では、ストレージ２７０は、ユーザ固有の設定、好み、閾値、許可、または個人もしくは個人のグループに関連する任意のデータも含み得る。一形態では、ストレージ２７０は、ヘッドセットアプリケーション２７６であり得る。ストレージ２７０は、ハンズフリー対話システム２００の任意のコンポーネントおよびサブコンポーネントと通信可能に結合され得る。
【００３１】
音声入力部２２４は、概して、マイクロフォンなど（例えば指向性および全方向性マイクロフォン）のような、音声を取り込むためのコンポーネントを指す。実施形態では、音声入力部２２４は、周囲雑音を捕捉して最終的にユーザ音声入力の処理および分析を助けるために使用されるように構成されたヘッドマウントコンピューティングデバイス２２０の様々な地点に配置された複数のマイクロフォンを含み得る。音声入力部２２４は、本開示の範囲から逸脱することなく、音声入力を感知して音声入力を音声フィードに変換することができる任意のセンサまたはセンサのシステムとすることができることが理解されよう。音声出力部２３０は、概して、ユーザへのサウンド出力を促進する。本開示の範囲から逸脱することなく、電気的入力に応じてサウンドを生成することが可能な任意の音声出力コンポーネント（スピーカなど）を実施形態で使用することができることが理解されよう。実施形態では、音声出力部２３０は、少なくともヘッドセットデバイスＩ／Ｏ２２２と通信するように構成され得る。通信コンポーネント２３２は、概して、任意の適切な通信プロトコルを介してヘッドマウントコンピューティングデバイス２２０と他の装置との間の通信を促進する。実施形態では、通信コンポーネントは、図１０を参照して上記または下記で説明された無線通信システムを備えることができる。
【００３２】
ディスプレイ２３４は、概して、ユーザへのデータの視覚的提示を促進する。本開示の範囲から逸脱することなく、任意のディスプレイが様々な実施形態において使用され得ることが理解されるであろう。センサ２２６ａ〜２２６ｎは、とりわけ、カメラ、マイクロフォン、ＧＰＳ、ＲＦＩＤセンサ、赤外線センサ、光センサ、磁力計、ジャイロスコープ、容量トランスデューサ、ポテンショメータ、抵抗トランスデューサ、シンクロ、加速度計、およびマイクロジャイロスコープを含み得る。
【００３３】
次に図３を参照すると、ハンズフリー対話システム２００のさらなる態様を示すブロック図が提供されており、例示的なヘッドマウントコンピューティングデバイス２２０は、本開示のいくつかの実施形態を採用することができる。ヘッドマウントコンピューティングデバイス２２０は、本開示の実施形態を採用することができる、モーションキャプチャ、モーション分析、音声入力、音声分析、音声出力、画像キャプチャ、位置検出、方向判定、環境判定、インターフェース表示、位置検出、およびネットワーク接続のためのシステムと、ヘッドマウントコンピューティングデバイス２２０と通信可能に結合することができ、ネットワーク１１０と通信可能に結合することができるユーザデバイス１０２ａ〜１０２ｎと、図１に関連して説明されているネットワーク１１０と、サーバ１０６と、データソース１０４ａと、を含み得る。ハンズフリー対話システム２００のコンポーネントは、例えば、１組のコンパイルされたコンピュータ指令または機能、プログラムモジュール、コンピュータソフトウェアサービス、または、図１０に関連して説明されるコンピューティングデバイスのように、１つまたは複数のコンピュータシステム上で実行されるプロセス構成として実施することができる。
【００３４】
一実施形態では、ハンズフリー対話システム２００のコンポーネントによって実行される機能は、変位をタッチ式指令、コマンド、またはタッチ式オペレーティングシステム内の入力に変換することに関連する。実施形態では、ハンズフリー対話システム２００は、ヘッドマウントコンピューティングデバイスのヘッドセット入出力（Ｉ／Ｏ）２２２と、ヘッドセットエンジン２１０と、ハンズフリー対話システム内のシステムまたはサブシステムを、検出すること、処理すること、分散すること、監視すること、および／または作動すること、を担当することができるハンズフリー入力判定部２４０と、を含む。例えば、起動コマンドの受信に応じて、ヘッドセットエンジン２１０は、ヘッドマウントコンピューティングデバイス上でハンズフリー対話モードを開始し、ハンズフリー対話モードは、タッチ式オペレーティングシステム（ＯＳ）のユーザインターフェースとの対話を可能にしてもよい。ハンズフリー対話モードの開始の一部として、ヘッドセットエンジン２１０は、インターフェース分析部２１２、モーション処理システム２４２、サウンド処理システム２５０、および環境分析部２１４を起動することができる。
【００３５】
モーション処理システム２４２は、概して、ヘッドセットデバイスＩ／Ｏ２２２によって検出されたモーション式入力データの処理を促進する。モーション処理システム２４２は、ヘッドマウントコンピューティングデバイス２２０、ユーザデバイス１０２ａ〜１０２ｎ、サーバ１０６、又は例えばネットワーク１１０を介してハンズフリー対話システム２００と通信可能に接続され得る任意の場所に存在してもよい。実施形態では、モーション処理システム２４２は、ヘッドセットエンジンのサブシステムであり得る。実施形態では、モーション処理システム２４２は、通信コンポーネント２３２を介してヘッドマウントコンピューティングデバイス２２０と通信可能に結合された１つまたは複数のユーザデバイス１０２ａ〜１０２ｎのサブシステムとすることができる。他の実施形態では、モーション処理システム２４２は、通信コンポーネント２３２を介してヘッドマウントコンピューティングデバイス２２０と通信可能に結合された１つまたは複数のネットワークデバイスのサブシステムとすることができる。
【００３６】
このように、センサ２２６ａ〜２２６ｎからのデータは、分析のためにモーション処理システム２４２に送信され得る。いくつかの実施形態では、モーション処理システム２４２は、モーション検出コンポーネント２４４、較正制御コンポーネント２４６、およびモーション変換コンポーネント２４８（以下でさらに詳細に説明される）を含むサブコンポーネントを含み得る。形態では、モーション処理システム２４２は、通信コンポーネント２３２を介してハンズフリー対話システム２００と通信可能に接続され得る。ヘッドセットの横方向移動、並進移動、および回転移動は、センサ２２６ａ〜２２６ｎによって検出され、モーション処理システム２４２によって処理されて、ニュートラル位置および向きを判定する。例えば、センサデータは、モーション処理システム２４２によって処理されて３つの軸に対して９自由度でヘッドセットの位置および向きを検出してもよい。実施形態では、モーション処理システム２４２は、ハンズフリー対話モードの開始時にヘッドセットの向きを検出することによって、ハンズフリー対話モードの開始中にニュートラル位置を較正することができる。
【００３７】
形態では、閾値変位は、任意の軸において、ニュートラルから＋／−１０度だけヘッドセットを回転させるなど、ニュートラル位置からの所定の変位値であり得る。加えて、閾値変位は、ヘッドマウントコンピューティングデバイス２２０の角度変化、並進移動、回転、または任意の他の移動であり得る。理解され得るように、本説明では概して単数形を示しているが、任意の数の閾値変位を判定することができる。閾値変位は、タッチ式オペレーティングシステム２０２と対話するための任意の数のタッチ式入力に対応し得る。例えば、スクロールアップタッチ式入力は、ヘッドマウントコンピューティングデバイス２２０の上方への回転とする対応するハンズフリー入力を有し得る。したがって、ハンズフリー回転入力は、ニュートラル位置から上方に所定の度数の対応する閾値を有し得る。その結果、不注意によるハンズフリー入力を減少または排除することができる。
【００３８】
他の形態では、閾値変位は、例えばモーション処理システム２４２および／またはヘッドセットエンジン２１０によって自動的かつ反復的に調整され得る。限定ではなく例として、ハンズフリー対話システム２００は、以前のヘッドセットモーションデータに基づいて閾値変位を調整するためのハンズフリー入力（ユーザデータ２７４に格納されてもよい）を監視するコンピュータ学習または機械学習指令を含むことができる。他の形態では、閾値変位は、ヘッドマウントコンピューティングデバイス２２０に関連する（例えば、位置判定部２１６によって判定され得る）任意の数の場所に関連する使用データに基づいて自動的に調整され得る。他の形態では、変位閾値は、カスタマイズされた値であり得、これはユーザによって判定され得る。例えば、ユーザは、ハンズフリー対話アプリケーションのユーザインターフェースを介して閾値変位設定を調整することができ、これは、ハンズフリー対話システム２００内に記憶され、本明細書に記載の任意の装置によって実行され得る。したがって、モーション処理システム２４２は、以下により詳細に説明されるように、検出された変位、またはヘッドセットの並進を、閾値変位と比較してもよい。
【００３９】
モーション検出コンポーネント２４４は、ヘッドマウントコンピューティングデバイス２２０の変位を検出するためにモーション処理システム２４２を監視してもよい。例えば、モーション検出コンポーネント２４４は、較正制御コンポーネント２４６によって記憶された初期参照画像と、ヘッドマウントコンピューティングデバイス２２０の変位を検出するためのモーション処理システム２４２によって捕捉されるヘッドマウントコンピューティングデバイス２２０の初期位置に対する後続する画像と、を比較し得る。初期参照画像と後続する画像とを比較することによってヘッドマウントコンピューティングデバイス２２０の初期位置に対するヘッドマウントディスプレイの変位を検出するために任意の数の画像解析アルゴリズムを使用できることが理解されよう。さらに、閾値および／または検出された変位は、変位の期間を判定することを含み得る。例えば、閾値変位は、ハンズフリー入力として認識されるために、変位が５秒間持続されることを必要とし得る。さらに、モーション検出センサ（本明細書で説明されるように、加速度計、ジャイロスコープなどを含み得るセンサ２２６ａ〜２２６ｎなど）からの任意の種類のデータを使用して変位を測定または検出することができることを理解されたい。
【００４０】
モーション検出コンポーネント２４４が閾値変位を超えるヘッドマウントコンピューティングデバイス２２０の変位を検出すると、モーション変換コンポーネント２４８は、角度変位を１つまたは複数のタッチ式入力に対応する命令に変換することができる。モーション変換コンポーネント２４８は、変位の種類に基づいて適切な命令を判定することができる。実施形態では、モーション変換コンポーネント２４８は修飾部を用いて指令を補強することができる。例えば、ページスクロール指令は、１０ページスクロールのように、複数のページの修正部で補強されてもよい。修正部は、検出された変位の持続時間など、検出されたハンズフリー入力に関連する特徴に基づいてもよい。
【００４１】
サウンド処理システム２５０は、概して、ヘッドセットデバイスＩ／Ｏ２２２によって検出された音声入力データの処理を促進する。したがって、センサ２２６ａ〜２２６ｎからのデータは分析のためにサウンド処理システム２５０に送信されてもよい。いくつかの形態では、音声入力部２２４からのデータは分析のためにサウンド処理システム２５０に送信されてもよい。いくつかの実施形態では、サウンド処理システム２１５、２５０は、インターフェース分析部２１２、２５２、音声処理コンポーネント２５４、および音声変換コンポーネント２５６を含む音声検出コンポーネントを含むサブコンポーネントを含むことができる。いくつかの形態では、サウンド処理システム２５０は、タッチ式制御ダイアログに関連するキーワードキューを検出された音声入力と比較することができる。いくつかの形態では、サウンド処理システム２５０は、通信コンポーネント２３２を介してハンズフリー対話システム２００と通信可能に接続され得る。したがって、サウンド処理システム２５０は、ユーザデバイス、ネットワーク、サーバ、またはハンズフリー対話システム２００と通信可能に接続されている任意の場所に配置され得る。
【００４２】
実施形態では、タッチ式オペレーティングシステムは、サウンド処理システムの１つのアプリケーションのみへの音声入力を可能にするように構成されているので、音声共有コンポーネント（図示せず）をさらに含んでもよい。音声共有コンポーネントは、複数のプロセス、アプリケーション、コンポーネントなどが音声入力を同時に受信することを可能にし得る。言い換えれば、音声共有コンポーネントは、さらなる処理または分析なしで音声フィードがタッチ式オペレーティングシステムに継続し、音声検出コンポーネント２５２に継続することを可能にすることができる。他の方法で言うと、音声共有コンポーネントは、音声共有コンポーネントは、サウンド処理システムの機能を損なうことなく、タッチ式アプリケーションへの音声フィードの提供を促進する。
【００４３】
例えば、ユーザは、ハンズフリーナビゲーションシステム内のタッチ式オペレーティングシステムと遠隔会議アプリケーションとを同時に実行することができ、音声共有コンポーネントは、音声フィードが遠隔会議アプリケーションに継続することを可能にすることができる。さらに、音声共有コンポーネントは、音声検出コンポーネント２５２に音声フィードを提供することができる。したがって、実施形態では、音声共有コンポーネントは音声フィードを複製することができる。
【００４４】
音声検出コンポーネント２５２は、概して、音声フィードを検出するために音声入力部２２４および／またはセンサ２２６ａ〜２２６ｎを監視することを促進する。例えば、音声検出コンポーネント２５２は、信号がマイクロフォンによって受信されていることを検出するために、ヘッドマウントコンピューティングデバイス２２０のマイクロフォンを聴取してもよい。この例を続けると、音声検出コンポーネント２５２は、マイクロフォンによって受信された信号が所定の音量より上であると判定することを担当してもよく、それは、信号がハンズフリー可聴入力を判定するためにさらに処理されるべきことを示し得る。実施形態では、音声検出コンポーネント２５２は、検出した音声フィードを音声処理コンポーネント２５４に提供する。
【００４５】
音声処理コンポーネント２５４は、概して、ユーザの発話を識別、分離、および分析するために音声フィードの処理を促進する。実施形態では、音声処理コンポーネント２５４は、音声フィードを処理するために、音声認識アルゴリズム、ノイズ低減アルゴリズム、音声−文章アルゴリズム、機械学習アルゴリズムなどを使用することができる。いくつかの形態では、音声処理コンポーネント２５４は、音声検出コンポーネント２５２から複数の音声フィードを受信することができる。これらの実施形態では、音声処理コンポーネント２５４は複数の音声フィードを処理して、ユーザの音声を背景雑音から少なくとも部分的に分離することができる。ユーザの音声を背景から少なくとも部分的に分離するために、任意の雑音低減アルゴリズム、音声分離アルゴリズム、または任意の適切なアルゴリズムもしくは技法を使用することができることが理解されよう。実施形態では、音声処理コンポーネント２５４は、音声検出コンポーネント２５２から音声フィードを受信し、インターフェース分析部２１２によってタッチ式制御ダイアログに関連付けられた第１の可聴入力を識別することができる。実施形態では、音声処理コンポーネント２５４は、音声フィードを分析し、音声フィードをキーワードキューと比較して、処理された音声フィードがキーワードキューと一致するかどうかを判断する。
【００４６】
音声変換コンポーネント２５６は、概して、音声フィード−キーワードキュー一致の関連する制御ダイアログへの変換を促進する。したがって、音声変換コンポーネント２５６は、音声処理コンポーネント２５４から一致するキーワードキューを受け取り、そのキーワードキューに関連付けられている制御ダイアログを判定することができる。
【００４７】
インターフェース分析部２１２は、概して、タッチ式ユーザインターフェース２０６、タッチ式オペレーティングシステム２０２、タッチ式ユーザインターフェース２０６内のアプリケーション２０８、およびタッチ式ユーザインターフェース２０６内の文書２０４内のタッチ式ユーザ対話機能の検出を促進する。本明細書で使用するとき、タッチ式ユーザ対話機能は、タッチ式スクロール機能（「スワイプ」機能、水平スクロールバー、垂直スクロールバーなど）、タッチ式制御ダイアログ（テキストボックスまたはフィールド、チェックボックス、アプリケーションアイコン、文書ツール、放射状ボタンなど）、並びに、タッチ式ユーザインターフェース、オペレーティングシステム、アプリケーション、および／または文書内でのユーザ操作を促進する、より一般的な任意の要素、機能、アイコン、コマンド、コード、拡張子、マクロなどを含む。形態では、インターフェース分析部２１２は、タッチ式ユーザインターフェース２０６、タッチ式オペレーティングシステム２０２、および／またはタッチ式ユーザインターフェース２０６内のアプリケーション２０８のソースコードをスキャンすることによって、タッチ式ユーザ対話機能を検出および／または識別し得る。形態では、インターフェース分析部２１２は、環境固有の機能を促進するためにキーワードカスタムライブラリ２７２および／またはユーザデータ２７４を参照してもよい。
【００４８】
いくつかの実施形態では、環境分析部２１４は、概してハンズフリー対話システム２００の環境データおよび環境固有の特徴の分析を促進する。環境データは、ヘッドセットエンジン２１０またはそのサブコンポーネントの動作に関連する任意のデータであり得る。非限定的な例として、環境データは、（ユーザデータ２７４などの）ユーザデータ、（アプリケーション２０８に関連付けられたなどの）アプリケーションデータ、または通信コンポーネント２３２もしくは位置判定部２１６から受信したデータであり得る。実施形態では、環境分析部２１４はさらに、インターフェース分析部２１２を監視し、カスタマイズされたデータがタッチ式ユーザインターフェースの現在のインスタンスに関連しているかどうかを判定する。実施形態では、環境分析部は、分析に応じて、ハンズフリー入力判定部２４０、ヘッドセットエンジン２１０、またはそれらのそれぞれのサブコンポーネントの機能を変更することができる。例えば、インターフェース分析部２１２がタッチ式ユーザインターフェースの特定のインスタンスを分析することに応じて、環境分析部２１４は、タッチ式ユーザインターフェースの特定のインスタンスに関連するカスタムキーワードキューライブラリ（カスタムキーワードライブラリ２７２など）を配置することができる。そして、環境分析部２１４は、カスタムキーワードキューライブラリをサウンド処理システム２５０に通信し得る
【００４９】
実施形態では、環境分析部２１４は、ハンズフリー入力判定部２４０の機能を変更するために位置情報を使用し得る。例えば、環境分析部２１４は、特定のカスタムキーワードライブラリに関連する位置データ（位置判定部２１６によって検出されるＢｌｕｅｔｏｏｔｈビーコン情報など）を分析することができる。実施形態では、環境分析部２１４は、特定のモーション式閾値が環境データの結果として示されることを判定し得る。
【００５０】
実施形態では、インターフェース分析部２１２は、互換性のあるタッチ式ユーザインターフェース、例えば、Ｇｏｏｇｏｌｅ  ＡｎｄｒｏｉｄまたはＡｐｐｌｅのｉＯＳを検出し、タッチ式ＯＳを分析して、ユーザインターフェースの第１のインスタンスに関連するタッチ式コマンドを検出する。インターフェース分析部は、例えば、ユーザインターフェースの第１のインスタンスがタッチ式スクロール機能を備えることを検出することができる。例えば、タッチ式スクロール機能は、タッチ式オペレーティングシステムの異なるメニュー画面に案内するための、タッチ式オペレーティングシステムに関連するタッチ式スクロール機能、アプリケーションの異なるメニュー画面に案内するための、アプリケーションに関連付けられたタッチ式スクロール機能、および／または文書の異なる部分に案内するための、文書に関連付けられたタッチ式スクロール機能を備え得る。
【００５１】
実施形態では、インターフェース分析部２１２がタッチ式スクロール機能を検出すると、ヘッドセットエンジン２１０は、モーションキャプチャシステムを較正し、変位を監視し、変位を関連するタッチ式スクロール機能に変換するモーション処理システム２４２を起動する。起動されると、モーション処理システム２４２は、較正制御コンポーネント２４６を作動させることができる。較正制御コンポーネント２４６は、ヘッドマウントコンピューティングデバイス２２０の初期位置を検出する。この初期位置は、１つ又は複数の軸に対するヘッドマウントコンピューティングデバイス２２０の配向を含む。実施形態では、較正制御コンポーネント２４６は、カメラ（例えば、センサ２２６ａ〜２２６ｎのうちの１つ）を使用してモーション検出コンポーネント２４４を作動させることによって、ヘッドマウントコンピューティングデバイスの初期位置を判定することができる。較正制御コンポーネント２４６は、ヘッドマウントコンピューティングデバイス２２０の相対移動を測定するために、後続の画像と比較するための初期参照画像として少なくとも一時的に画像を記憶し得る。
【００５２】
さらに、実施形態では、インターフェース分析部２１２は、検出されたタッチ式スクロール機能を対応する方向のヘッドマウントコンピューティングデバイス２２０の変位と関連付ける。例えば、インターフェース分析部２１２が、ユーザインターフェースの第１のインスタンス内で左から右への「スワイプ」に対応するタッチ式ＯＳに関連するタッチ式スクロール機能を検出した場合。インターフェース分析部２１２は、ヘッドマウントコンピューティングデバイス２２０の初期位置に対する右への変位を、左から右へのタッチ式スワイプと関連付けることができる。別の例では、インターフェース分析部２１２がユーザインターフェースの第１のインスタンス内で垂直スクロールバーを検出した場合、インターフェース分析部２１２は、ヘッドマウントコンピューティングデバイス２２０の初期位置に対する角度変位「上」を、垂直スクロールバーを所定数のスクロール単位だけ上に移動させることへ、関連付けることができる。インターフェース分析部２１２がユーザインターフェースの第１のインスタンス内で水平スクロールバーを検出した場合。インターフェース分析部２１２は、ヘッドマウントコンピューティングデバイス２２０の初期位置に対する右への角度変位を、水平スクロールバーを所定数のスクロール単位だけ右に移動させることへ、関連付けることができる。
【００５３】
さらに、ヘッドセットエンジン２１０は、ディスプレイコンポーネント２３４を起動して、タッチ式オペレーティングシステムのユーザインターフェースの第１のインスタンスを、ヘッドマウントコンピューティングデバイス２２０のディスプレイに表示することができる（図２を参照してより詳細に説明され、参照番号２３４によって示される）。実施形態では、次いで、ヘッドセットエンジン２１０は、ヘッドマウントコンピューティングデバイスの第１の角変位を検出するモーション検出コンポーネント２４４を起動することができる。第１の角変位は第１の閾値角変位を上回るものであり、第１の閾値角変位は、初期位置に対する角変位である。
【００５４】
さらに、インターフェース分析部２１２が、左から右へのスワイプに対応すると共にヘッドマウントコンピューティングデバイスの初期位置に対する右への角変位を左から右へのタッチ式スワイプに関連付けられたタッチ式スクロール機能を検出し、モーション検出コンポーネント２４４が、初期位置から閾値を上回る右へのヘッドマウントコンピューティングデバイスの角変位を検出し、モーション変換コンポーネント２４８は、左から右へスワイプする指令が求められていると判定することができる。次に、モーション変換コンポーネント２４８は、角変位を左から右へのスワイプに対応する命令に変換し、その命令をコマンド生成部２１３に渡すことができる。コマンド生成部２１３は、モーション変換コンポーネント２４８によって示される指令に対応するタッチ式入力を生成し、タッチ式ユーザインターフェース内で指令を実行する。任意の変位がシステムによって検出され、分析され、変換されてもよく、前述の例は例として意図されており、限定として意図されていないことが理解されよう。
【００５５】
実施形態では、インターフェース分析部２１２は、互換性のあるタッチ式オペレーティングシステムを検出し、タッチ式ユーザインターフェースを分析して、ユーザインターフェースの第１のインスタンスに関連する少なくとも１つのタッチ式制御ダイアログを検出する。例えば、タッチ式制御ダイアログは、音声出力を可能にするため、または音声出力ボリュームを変更するための、タッチ式オペレーティングシステムに関連するタッチ式コマンド、および／または、例えば、アプリケーションを起動するための、またはアプリケーション要素、テキストフィールドもしくは「送信」要素を選択するための、アプリケーションに関連するタッチ式制御ダイアログを備えてもよい。前述の例は、潜在的なタッチ式制御ダイアログのほんの一部にすぎず、限定を意図するものではないことが理解されよう。
【００５６】
実施形態では、インターフェース分析部２１２がタッチ式制御ダイアログを検出すると、ヘッドセットエンジン２１０は、音声入力を監視および処理し、音声入力を分析し、音声入力を関連するタッチ式制御ダイアログに変換するサウンド処理システム２５０を起動することができる。起動されると、サウンド処理システム２５０は、制御ダイアログオプションを検出し、識別し、そしてキーワードキューを関連付けるインターフェース分析部２１２を起動する。実施形態では、インターフェース分析部２１２は、実行時にユーザインターフェースの第１のインスタンスに関連付けられたソースコードをスキャンして特徴を抽出することによって、タッチ式制御ダイアログを検出する。例えば、インターフェース分析部２１２がユーザインターフェースの第１のインスタンスに埋め込まれた「ボタン」を検出した場合、インターフェース分析部２１２はボタンテキストをキーワードキューに関連付ける。実施形態では、インターフェース分析部２１２は、（ストレージ２７０などの）ハンズフリーコンピューティングデバイスのメモリに格納されているユーザインターフェースの第１のインスタンスに関連するカスタマイズされたキーワードキューライブラリを検出することができる。実施形態では、インターフェース分析部２１２は、通信的に結合されたユーザデバイス（ユーザデバイス１０２ａなど）に格納されているカスタマイズされたキーワードキューライブラリを検出することができる。実施形態では、インターフェース分析部２１２は、（データソース１０４ａなどの）通信可能に結合されたデータソースに格納されているカスタマイズされたキーワードキューライブラリを検出することができる。
【００５７】
ヘッドセットエンジン２１０は、ディスプレイコンポーネント２３４を起動して、タッチ式オペレーティングシステムのユーザインターフェースの第１のインスタンスをヘッドマウントコンピュータデバイスのディスプレイに表示する。実施形態では、ヘッドセットエンジン２１０は、次いで、音声検出コンポーネント２５２を起動して、例えば、センサ２２６ａ−２２６ｎまたは音声入力部２２４を介して受信された音声を検出し、音声入力を音声処理コンポーネント２５４に渡す。本明細書で使用される際に、音声フィードは、音声入力装置によって取り込まれた音響信号、または音声入力要素によって生成された電気信号のいずれかを指し得る。
【００５８】
コマンド生成部２１３がタッチ式ユーザインターフェース内で指令を実行することに応じて、ヘッドセットエンジン２１０は次に、ディスプレイコンポーネント２３４に指示して、タッチ式オペレーティングシステムのユーザインターフェースの第２のインスタンスをヘッドマウントコンピューティングデバイスのディスプレイに表示させる。
【００５９】
次に図４を参照すると、図３を参照して説明したヘッドセットによって少なくとも部分的に実施することができる例示的なモーション式ハンズフリー対話モード４００を示すブロック図が提供されている。実施形態では、ヘッドセットエンジンは、モーション処理システム２４２に関連付けられたハンズフリー対話モード４０２を開始する。ハンズフリー対話モード４０２は、インターフェース分析部を起動して、ユーザインターフェースの第１のインスタンス内のタッチ式スクロール機能を検出し、タッチ式スクロール機能を第１の角変位と関連付けることを含み得る。ブロック４０４において、ハンズフリーコンピューティングデバイスの初期位置が検出され、初期基準配向が判定される。実施形態では、これは、図３を参照して説明したように、較正制御コンポーネント２４６によって行われてもよい。実施形態では、較正制御コンポーネント２４６は、基準配向をリセットするために任意の時点でユーザによって再起動されてもよい。例えば、ユーザは、最初の基準配向が判定された時点で、ハンズフリーナビゲーション中にその位置を維持することは望ましくないであろう奇妙なまたは不快な位置に頭をおくことがあるので、ユーザは、基準配向が再判定され得るように、較正制御コンポーネント２４６を再起動し得る。実施形態では、ヘッドマウントコンピューティングデバイス２２０は、較正制御コンポーネント２４６を再起動することに関連するボタン（物理的入力要素２３８など）を有することができる。さらに、又は代替的に、一実施形態では、所定の音声コマンドが、較正制御コンポーネントを再起動することに関連付けられる。
【００６０】
ブロック４０６で、ディスプレイはユーザインターフェースの第１のインスタンスを示す。実施形態では、これは、図３を参照して説明したようにヘッドセットエンジン２１０によって行われる。ブロック４０８で、図３を参照して説明したように、ヘッドマウントコンピューティングデバイスの移動がモーション検出コンポーネント２４４によって検出される。ブロック４１０で、検出された移動は、図３を参照して説明したように、モーション検出コンポーネント２４４によってタッチ式スクロール機能に関連する角度閾値を超えたと判定される。ブロック４１２で、検出された変位は、モーション変換コンポーネント２４８によって、タッチ式スクロール機能に関連するタッチ式スクロール指令に変換される。さらに、コマンドが、タッチ式インターフェースの第１のインスタンス内で生成され実行される。ブロック４１４で、タッチ式スクロールコマンドの実行に応じて、ユーザインターフェースの第２のインスタンスが表示される。方法４００は、必要に応じて何度でも繰り返し方式で実行することができることが理解されよう。
【００６１】
実施形態では、モーション式ハンズフリー対話モードのいくつかのプロセスは、図３を参照して説明したようにヘッドマウントコンピューティングデバイス３０２、２２０と通信可能に接続されたユーザデバイス（ユーザデバイス１０２ａなど）によって少なくとも部分的に完了してもよい。
【００６２】
次に図４ｂを参照すると、図３に示されるヘッドセットによって少なくとも部分的に実施され得る例示的な音声式ハンズフリー対話モード４１６を示すブロック図が提供される。実施形態では、ヘッドセットエンジンは、サウンド処理システム２５０に関連するハンズフリー対話モード４１８を開始する。ハンズフリー対話モード４１８を開始することは、インターフェース分析部を起動して、ユーザインターフェースの第１のインスタンス内で、少なくとも１つのタッチ式制御ダイアログを検出することを含み得る。ブロック４２０で、少なくとも１つのタッチ式制御ダイアログが識別され、キーワードキューと関連付けられる。実施形態では、インターフェース分析部は、タッチ式ユーザインターフェース内で実行されているアプリケーションのソースコードを分析し、アプリケーションソースコード内のタッチ式制御ダイアログに関連付けられている名前を識別することができる。次いで、インターフェース分析部は、アプリケーションソースコードからの名前と実質的に同様のキーワードキューを生成し、生成されたキーワードキューをタッチ式制御ダイアログと関連付けることができる。たとえば、タッチ式ユーザインターフェースがアプリケーションの構造図を表示していて、アプリケーション内にズーム機能を開くタッチ式コントロールダイアログがある場合、インターフェース分析部はリアルタイムで、アプリケーションのソースコードにアクセスし、ズーム機能をエンコードしているコードの部分を識別し、その機能が「ズーム」と命名されていることを検出し、キーワードキュー「ズーム」を生成し、生成されたキーワードキュー「ズーム」を、ズーム機能を開くタッチ式制御ダイアログと関連付ける。実施形態では、インターフェース分析部は、図７Ｂを参照して詳細に説明するように、タッチ式制御ダイアログをキーワードキューと関連付けるときに、予め決められた又はカスタムキーワードキューライブラリを参照してもよい。
【００６３】
ブロック４２２で、ディスプレイはユーザインターフェースの最初のインスタンスを表示する。実施形態では、ヘッドセットエンジン２１０は、図３を参照して説明したようにユーザインターフェースの表示を調整する。実施形態では、ブロック４２４で、第１のユーザインターフェースでインターフェース分析部に識別されたキーワードキューの少なくとも１つの視覚的指標を含むグラフィカルオーバーレイを第１のユーザインターフェース上に同時に表示することができる。さらなる実施形態では、視覚的指標は、図
を参照して図示および説明したように、タッチ式制御ダイアログの位置に実質的に近接して配置され得る。
【００６４】
ブロック４２６で、可聴入力がヘッドセットによって検出される。実施形態では、可聴入力、例えばユーザによって話されたフレーズ「ズーム」によって、音声入力部２２４によって最初に検出されてもよい。次いで、音声入力部２２４は、話されたフレーズ「ズーム」を音声フィードに変換し、音声フィードを音声検出コンポーネント２５２に渡すことができる。音声検出コンポーネント２５２は、次に音声処理コンポーネント２５４を起動することができる。
【００６５】
ブロック４２８で、音声入力が処理され分析されて、可聴入力がキーワードキュー、したがってタッチ式制御ダイアログと一致するかどうかが判定される。実施形態では、音声処理コンポーネント２５４は、音声フィードを処理するために、音声認識アルゴリズム、ノイズ低減アルゴリズム、スピーチからテキストへのアルゴリズム、機械学習アルゴリズムなどを使用することができる。例えば、音声フィードは、周囲の雑音、付随的な雑音、または背景雑音からユーザによって話されたフレーズ「ズーム」を分離するために処理され得る。次いで、音声処理コンポーネント２５４は、処理された音声フィードを分析し、処理された音声フィードをキーワードキューと比較して、処理された音声フィードがキーワードキューと一致するかどうかを判定することができる。
【００６６】
ブロック４３０で、検出されたキーワードキューに関連するタッチ式制御ダイアログに対応するタッチ式コマンドが生成され、コマンドはタッチ式ユーザインターフェースの第１のインスタンス内で実行される。言い換えれば、音声フィードがキーワードキューと一致すると音声処理コンポーネントが判断した場合、音声変換コンポーネントは、一致したキーワードキューを関連する制御ダイアログに変換する。次に、音声変換コンポーネントは、タッチ式制御ダイアログと同等のコマンドを生成コマンド生成部に制御ダイアログを渡す。生成されたコマンドは、その後、タッチ式ユーザインターフェース内のヘッドセットエンジンによって実行される。例えば、音声処理コンポーネントがフレーズ「ズーム」をキーワードキュー「ズーム」に一致させると、音声変換コンポーネントは、キーワードキュー「ズーム」を、ズーム制御ダイアログを選択することと等価な指令に変換する。その後、指令はコマンド生成部に渡され、コマンド生成部は、ズームタッチ式制御ダイアログのタッチ式ユーザ選択と等価なコマンドを生成する。次に、コマンドがタッチ式ユーザインターフェース内のヘッドセットエンジンによって実行され、ズーム機能が有効になる。方法４１６は、必要に応じて何度でも反復的に実行することができることが理解されよう。
【００６７】
ここで図４ｃを参照すると、図３に示すヘッドセットによって少なくとも部分的に実施することができる例示的なモーション式および音声式のハンズフリー対話モードを示すブロック図が提供されている。ブロック４４０において、ハンズフリー対話モードが開始される。図３に参照して説明したように、ユーザインターフェースの第１のインスタンスに関連する少なくとも１つのタッチ式コマンドを検出するためにタッチ式ＯＳを分析する。例えば、インターフェース分析部は、例えばタッチ式オペレーティングシステムの異なるメニュー画面にナビゲートするためのユーザインターフェースの第１のインスタンスがタッチ式スクロール機能を備えることを検出してもよく、インターフェース分析部２１２は、ユーザインターフェースの第１のインスタンスが、例えば、タッチ式オペレーティングシステムにインストールされているアプリケーションを開くためのタッチ式制御ダイアログを備えることを検出してもよい。
【００６８】
次に、ヘッドセットエンジン２１０は、ハンズフリー移動プロトコル４３６を起動し、ハンズフリー音声プロトコル４３８を起動させることができる。実施形態では、ハンズフリー移動プロトコル４３６は、モーション式ハンズフリー対話モード４００のプロセスの一部、または全部を備え得る。例えば、ヘッドセットエンジン２１０は、較正制御コンポーネント２４６を起動して、１つ又は複数の軸に対するヘッドマウントコンピューティングデバイスの向きを含むヘッドマウントコンピューティングデバイスの初期位置を判定することができる。実施形態では、ハンズフリー音声プロトコル４３８は、音声式ハンズフリー対話モード４１６の一部、全部、または代替的なプロセスを備え得る。例えば、ヘッドセットエンジンは、音声式ハンズフリーナビゲーションを可能にするために制御ダイアログ検出モジュールを起動することができる。ヘッドセットエンジンは、ハンズフリー移動プロトコル４３６およびハンズフリー音声プロトコル４３８を任意の順序でまたは同時に開始させることができることが理解されよう。
【００６９】
ヘッドセットの初期基準方位が判定され、タッチ式制御ダイアログがキーワードキューに関連付けられると、ブロック４４０に示すように、タッチ式ユーザインターフェースの第１のインスタンスが表示される。ブロック４４２で、モーション検出コンポーネントおよび音声検出コンポーネントは、図４Ａおよび図４Ｂを参照して説明したように、ヘッドセットＩ／Ｏシステムからの入力データを監視、検出、および分析する。
【００７０】
ブロック４４４で、移動が検出されると、モーション検出コンポーネントは、ブロック４１０を参照して説明したように、移動が関連閾値を超えているかどうかを判定する。関連閾値を超えた場合、ブロック４１２及び４１４で説明したように、ブロック４４６で表示が調整される。関連する閾値を超えていない場合、システムはブロック４４２に戻る。
【００７１】
ブロック４４８で、音声入力が検出されると、音声処理コンポーネントは、ブロック４２８を参照して説明したように、音声入力がキーワードキューと一致するかどうかを判定する。音声入力がキーワードキューと一致する場合、ブロック４３０を参照して説明したように、関連する制御ダイアログに等価なタッチ式コマンドがブロック４５０で実行される。方法４３２は、必要に応じて何度でも反復的に実行することができることが理解されよう。
【００７２】
ここで図５を参照すると、タッチ式オペレーティングシステムとのハンズフリー対話を促進する例示的な多軸モーション式の方法５００を示すブロック図が提供されている。言い換えれば、方法５００は、互換性のあるヘッドセットと共に利用されるときに、タッチ式オペレーティングシステムとの単純で複雑なモーション式ハンズフリー対話を促進する。例示的な例として、ブロック５１０において、互換性のあるヘッドセットを装着しているユーザがハンズフリーナビゲーションインタフェースを開始させる。前述のように、ヘッドセットの初期基準方位は、中立位置で前方を向くことと等価であると判定される。ブロック５１２で、ヘッドセットは移動を検出する。例えば、ユーザは、頭を中立から右へ、そして同時に上に向ける。ブロック５１４で、システムは、移動が第１の軸内にあるかどうかを判定する。例えば、第１の軸における移動は、初期基準位置からｘ軸に向かって（ユーザの右に）ｚ軸を中心にした回転であり得る。言い換えれば、システムは、ユーザが自分の頭を正面から右に向けた（回転）したことを検出することができる。また、ブロック５１６で、システムは、移動が第２の軸で発生したかどうかを判定する。例えば、第２の軸における移動は、初期基準位置からｚ軸に向かって（着用者の視点から見て上向きに）ｘ軸を中心にした回転であり得る。言い換えれば、システムは、ユーザが自分の頭をｙ軸に実質的に平行な位置からｚ軸に向けた（回転）したことを検出することができる。
【００７３】
ブロック５１８において、システムは、第１の軸における移動が第１の軸閾値を超えたかどうかを判定する。第１軸閾値は、例えば、初期基準位置から±１０度であるように予め判定され得る。システムが最初の軸で±１０度を超える変位を検出した場合、システムは閾値を超えたと判断する。システムが最初の軸で±１０度以下の変位を検出した場合、システムは閾値を超えていないと判断する。例えば、ユーザが自分の頭を２０度右に向けた場合、システムは第１軸閾値を超えたと判断するであろう。
【００７４】
ブロック５２０において、システムは、第２の軸における移動が第２の軸閾値を超えたかどうかを判定する。第２軸閾値は、例えば、初期基準位置から±１０度になるように予め定められ得る。システムが第２の軸において±１０度を超える変位を検出した場合、システムは閾値を超えたと判断する。システムが±１０度以下の第２の軸の変位を検出した場合、システムは閾値を超えていないと判断する。例えば、ユーザが頭を２０度上に向けた場合、システムは第２の軸閾値を超えたと判断するであろう。
【００７５】
ブロック５２２で、システムは多軸入力に関連するタッチ式スクロール機能を実行し、タッチ式ユーザインターフェースの第２のインスタンスを表示する。実施形態では、多軸入力は、２つの独立したタッチ式スクロール機能を表してもよい。前の例を続けると、多軸入力（右および上）は、水平スクロールバーを右に所定の数のスクロール単位だけ動かすこと、および垂直スクロールバーを所定の数のスクロール単位だけ上に動かすことに対応し得る。実施形態では、多軸入力は単一のタッチ式スクロール機能を表してもよい。例えば、多軸入力（右上）は、垂直スクロールバーを表示されている文書の全ページに相当する数のスクロール単位だけ移動させることに対応し得る。
【００７６】
ブロック５１６に戻って、移動が第１の軸においてのみ検出される場合、システムは、ブロック５２４において、移動が第１の軸閾値を超えたかどうかを判定する。移動が第１の軸閾値を超えなかった場合、システムはブロック５１２に戻る。移動が第１の軸閾値を超えた場合、ブロック５２６において、システムは、第１の軸入力に関連付けられたタッチ式スクロール機能を実行し、タッチ式ユーザインターフェースの第２のインスタンスを表示する。
【００７７】
ブロック５１８に戻って、検出された移動が第１の軸の閾値を超えない場合、システムはブロック５２８に進む。ブロック５２８で、システムは移動が第２の軸閾値を超えたかどうかを判定する。移動が第２の軸閾値を超えなかった場合、システムはブロック５１２に戻る。移動が第２の軸閾値を超えた場合、ブロック５３０において、システムは、第２の軸入力に関連するタッチ式スクロール機能を実行し、タッチ式ユーザインターフェースの第２のインスタンスを表示する。
【００７８】
例示的な方法５００に関して提供された例は、本開示の範囲内の可能な多軸入力および関連するタッチ式スクロールコマンドのサブセットのみを表し、これらの実施例は単なる例示であって限定として解釈されることを意図するものではないことが理解されよう。
【００７９】
ここで図６Ａを参照すると、開示された発明の実施形態と一致する可能なユースケースを示す例示的な図が提供されている。図６Ａは、図の明瞭さを確保するために実施形態のシステムおよびコンポーネントのサブセットのみを含む。ハンズフリーナビゲーションインターフェースを開始した後、互換性のあるヘッドセットを装着しているユーザに、ディスプレイを介して、ユーザが構築している建物に関連するブループリント６０２の第１の部分が提示される。ブループリント６０２の第１の部分に関連する建物６００の領域を検査した後、ユーザは自分の頭を左に向けることができる。６０４において、システムは、第１の軸、この場合はｘ軸における移動を検出し、第１の軸における移動が第１の軸閾値を超えたと判定する。次にシステムは、その移動を、左へのスクロールと等価のタッチ式スクロール機能に関連するコマンドに変換する。その後、システムはタッチ式ユーザインターフェース内でコマンドを実行する。次にシステムは、タッチ式ユーザインターフェースの第２のインスタンスを表示する。ここで、コマンドは、表示されたブループリント内を所定の距離だけ左にスクロールすることをもたらし、ディスプレイはブループリント６０６の第２の部分を示す。
【００８０】
ここで図６Ｂを参照すると、開示された発明の実施形態と一致する他の可能なユースケースを示す例示的な図が提供されている。図６Ｂは、図の明確さを確保するために実施形態のシステムおよびコンポーネントのサブセットのみを含む。ハンズフリーナビゲーションインターフェースを開始し、スクロールバー位置６１６ａで垂直スクロールバーとスクロールバー位置６１４ａで水平スクロールバーとを検出した後、互換性のあるヘッドセットを装着しているユーザに、ディスプレイを通してユーザが構築している建物に関連する経費報告書６１２の最初のページが表示される。経費報告書６１２の最初のページを検討した後、ユーザは自分の頭を下に回転させることができる。６１８において、ヘッドセットは、ｘ軸周りの角変位を検出し、そして第１の軸におけるモーションが第１の軸閾値を超えると判定し得る。次にシステムは、その移動を、スクロールバー位置６１６ａからスクロールバー位置６１６ｂまで所定の距離だけ下方に移動させることに関連するコマンドに変換する。その後、システムはタッチ式ユーザインターフェース内でコマンドを実行する。次にシステムは、タッチ式ユーザインターフェースの第２のインスタンスを表示する。ここで、ディスプレイは、経費報告書６２０の第２ページを表示する。
【００８１】
ここで図７Ａを参照すると、タッチ式オペレーティングシステムのタッチ式ユーザインターフェース内で実行されるコマンドへの音声入力の正確な変換を概して促進する方法７００を示すフローダイアグラムが提供される。まず、ブロック７０１に示されるように、方法は、ヘッドセットセンサから入力データを受信することを含む。さらに、ブロック７０２で、方法は、受信した入力データが音声フィードであるかどうかを判定することを含み得る。例えば、タッチ式制御ダイアログに関連付けられた音声入力が検出され得る。いくつかの態様では、ブロック７０４で、方法は音声入力を分析することを含む。実施形態において、音声フィードは、コンピュータベースの音声認識技術を使用して処理され、音声入力を識別する。ブロック７０６で、方法は、分析された音声入力がキーワードキューと一致するかどうかを判定し得る。実施形態では、分析された音声入力は、制御ダイアログ検出部によるタッチ式制御ダイアログに関連付けられた生成されたキーワードキューと比較される。音声入力がキーワードキューに一致するかどうかを判断するために、１つまたは複数の音声―テキスト一致アルゴリズムを使用できることを理解されたい。実施形態では、タッチ式制御ダイアログは、タッチ式オペレーティングシステムで実行されるモバイルアプリケーションに関連付けられてもよい。実施形態では、ブロック７０８で、方法は、音声入力と一致するキーワードキューがハンズフリー対話モードを一時停止する命令に対応するかどうかを判定することを含む。例えば、方法は、キーワードキューが音声入力コンポーネントをパッシブモードに設定する命令に対応するかどうかを判定してもよい。これに関連して、パッシブモードとは、ハンズフリー対話モード内でヘッドセットセンサや音声入力システムの分析を（少なくとも一時的に）一時停止することを指す。しかし、実施形態では、ヘッドセットセンサおよび／または音声入力システムは、他のプロセスで使用するためにアクティブのままとされる。つまり、ヘッドセットセンサおよび／または音声入力システムは、タッチ式オペレーティングシステム内で実行されているアプリケーションにデータを送信し続ける可能性がある。たとえば、ハンズフリー対話モードを使用してビデオチャットアプリケーションからのビデオチャットリクエストに応答した後、ユーザはパッシブモードに関連付けられたキーワードキューを話すことで、ハンズフリー対話モードをパッシブモードにすることができるが、ビデオチャットアプリケーション内でヘッドセットのマイクとカメラを使用することは続けられる。
【００８２】
本方法の実施形態では、ブロック７１０で、キーワードキューが音声入力をパッシブモードに設定するに指令に関連付けられていると判定されることに応じて、音声入力はパッシブモードに設定される。いくつかの実施形態では、ブロック７１２で、パッシブモードを解除するコマンドが受信され、方法はブロック７０２に戻る。実施形態では、パッシブモードを解除するコマンドは、ヘッドセットに配置された物理入力要素（ボタンなど）に関連付けられ得る。ブロック７０８に戻ると、実施形態では、キーワードキューがパッシブモード指令以外のものである場合、タッチ式制御ダイアログコマンドが生成され、タッチ式ユーザインターフェース内で実行される。
【００８３】
ここで図７Ｂを参照すると、音声入力をキーワードキューと比較するための例示的な方法７１６を示す図７Ａに示されるフローダイアグラムの一部が提供される。例示的な方法７１６は、概して、音声入力を、生成されたキーワードキュー、カスタムキーワードキュー、および補助キーワードキューと比較することを促進する。図７Ａを参照して説明したように、ブロック７０４で、方法は、音声入力を分析することを含む。ブロック７１８で、分析された音声入力は、インターフェース分析部によって生成されたキーワードキューと比較され得る。前述のように、キーワードキューは、ユーザインターフェースの第１のインスタンスに関連付けられたソースコードを分析することにより、インターフェース分析部によって識別および生成され得る。
【００８４】
いくつかの実施形態では、ブロック７２０で、分析された音声入力をカスタムキーワードキューライブラリ７２２と比較することができる。したがって、ユーザはカスタマイズされたキーワードキューを作成し、カスタマイズされたキーワードキューをタッチ式制御ダイアログに関連付けることができる。実施形態では、このカスタムキーワードライブラリは、少なくとも部分的に、インターフェース分析部によって生成されたキーワードキューに取って代わることができる。実施形態において、キーワードキューは、ユーザインターフェースの特定の第１のインスタンスに関連付けられたカスタマイズされたまたは所定のキーワードキュー制御ダイアログの組み合わせであり得る。
【００８５】
実施形態において、ブロック７２４において、分析された音声入力は、補助キーワードキューライブラリ７２８と比較され得る。実施形態において、補助キーワードキューライブラリは、タッチ式制御ダイアログに関連する複数のキーワードキューを含むテーブルを含み得る。たとえば、インターフェース分析部が発音できないタッチ式コントロールダイアログを識別する場合、インターフェース分析部は、発音できないコントロールダイアログに関連付けられている補助キーワードキューライブラリから少なくとも１つの補助キーワードキューを自動的に置き換え得る。加えて、および／または代替として、タッチ式ユーザインターフェースの第１のインスタンスが、実質的に同様の生成されたキーワードキューをもたらす複数のタッチ式制御ダイアログを含む場合、補助キーワードキューライブラリは、同じように代替キーワードキューを提供し得る。
【００８６】
ここで図８Ａを参照すると、検出された制御ダイアログの例示的なインスタンスを示す例示的なタッチ式ユーザインターフェースが提供されている。つまり、１〜２８は、タッチ式コントロールダイアログとして識別されるインターフェース機能を示す。実施形態では、インターフェース分析部２１２は、ユーザインターフェースに関連付けられたソースコードを解析することにより、インターフェース機能１〜２８を検出し得る。図示の例では、インターフェース分析部２１２は、タッチ式ユーザインターフェースによって現在提示されているタッチ式オペレーティングシステム内で実行されているアプリケーションに関連するソースコードを分析することができる。しかしながら、インターフェース分析部２１２は、タッチ式オペレーティングシステム自体に関連するソースコードまたは存在する他のコードも分析してもよい。
【００８７】
実施形態において、インターフェース機能（インターフェース機能１〜２８など）がインターフェース分析部２１２によってタッチ式制御ダイアログとして識別されると、インターフェース分析部２１２は制御ダイアログを分析し、キーワードキューを生成し、キーワードキューを制御ダイアログに関連付けることができる。実施形態では、インターフェース分析部２１２は、関連するソースコードを再分析することができる。実施形態では、インターフェース分析部２１２は、関連するソースコードの少なくとも部分的な分析をインターフェース分析部２１２に提供してもよい。
【００８８】
ここで図８ｂを参照すると、キーワードキューオーバーレイを有する例示的なタッチ式ユーザインターフェースが示されている。言い換えれば、３０〜３８は、本開示の実施形態による音声式ハンズフリーナビゲーションの使用を支援するためにユーザに提示され得るディスプレイオーバーレイを示す。実施形態において、オーバーレイは、インターフェース分析部２１２によるタッチ式ユーザインターフェースの分析に基づいて、ヘッドセットエンジン２１０によって自動的に表示され得る。実施形態において、オーバーレイは、ヘッドセットエンジン２１０の複数のサブコンポーネントによって自動的に生成され得る。例えば、インターフェース分析部２１２は、インターフェース機能（図８Ａのインターフェース機能１〜２８など）を検出し、インターフェース機能を制御ダイアログとして識別し、音声検出コンポーネント２５２を開始させることができる。音声検出コンポーネント２５２は、制御ダイアログを分析し、キーワードキューを生成し、キーワードキューを制御ダイアログに関連付け、ヘッドセットエンジン２１０が関連付けを検出し、キーワードキューを含むオーバーレイを生成し、オーバーレイをタッチ式ユーザインターフェースのディスプレイ（オーバーレイ３０〜３８など）上に重ねさせ得る。上記は、本開示と一致するオーバーレイを作成するための例示的な方法として使用されているに過ぎず、限定を意味するものではないことを理解されたい。
【００８９】
ただし、オーバーレイの自動作成により、タッチ式ユーザインターフェースの特定のインスタンスでオーバーレイに表示される必要、有用、または望ましいものよりも多くの制御ダイアログが表示される場合がある。言い換えると、キーワードキューオーバーレイの純粋な自動生成は、タッチ式ユーザインターフェースのハンズフリーナビゲーションを不注意に妨げる可能性がある。したがって、実施形態において、オーバーレイは、カスタマイズされた好みに基づいてヘッドセットエンジン２１０によって自動的に表示されてもよい。こうした実施形態では、ヘッドセットエンジン２１０は、カスタムライブラリ内のタッチ式ユーザインターフェースのインスタンスに関連付けられた所定のオーバーレイテンプレートを識別することができる。
【００９０】
実施形態において、制御ダイアログの機能は、ヘッドセットエンジン２１０および／またはそのサブコンポーネントによって判定されてもよく、オーバーレイは、ユーザに関連すると判定された関連キーワードキューについてのみ生成されてもよい。実施形態では、この判定は、環境データに基づいて環境分析部２１４によって行われ得る。実施形態では、この判定は、少なくとも部分的に、ユーザ選好（例えば、ユーザデータ２７４に格納されたユーザ選好）に基づいて行われ得る。
【００９１】
ここで図９を参照すると、本開示のいくつかの実施形態と一致する例示的なヘッドマウントコンピューティングデバイス９００が示されている。ヘッドマウントコンピューティングデバイス９００は、概して、タッチ式オペレーティングシステムのタッチ式ユーザインターフェースとのハンズフリー対話を促進する。例示的なヘッドマウントコンピューティングデバイス９００が様々なセンサとともに示されているが、センサの位置および数は、本開示の範囲から逸脱することなく実施形態において異なり得ることが理解されるであろう。実施形態では、ヘッドマウントコンピューティングデバイス９００は、モーションおよび音声を感知するための複数のセンサと、タッチ式ユーザインターフェースをユーザに表示するためのコンポーネントとを備えてもよい。例えば、典型的なディスプレイ９０２は概して、タッチ式ユーザインターフェースをユーザに表示することを促進する。実施形態では、ディスプレイ９０２は、ディスプレイ９０２がタッチ式ユーザインターフェースを表示するために存在するように、ヘッドマウントコンピューティングデバイス９００で構成されてもよい。実施形態では、ディスプレイ９０２は、上述のように、キーワードキューオーバーレイを表示するようにさらに構成され得る。実施形態において、ディスプレイ９０２は、少なくとも部分的に半透明であり、ユーザがディスプレイ９０２を見て、表示されたタッチ式ユーザインターフェースと環境との両方を知覚できるようにすることができる。実施形態では、ディスプレイ９０２は単眼ディスプレイであってもよい。実施形態では、ディスプレイ９０２は両眼ディスプレイであってもよい。しかし、本開示の範囲から逸脱することなく、開示された発明の実施形態において任意のディスプレイを使用できることが理解されるであろう。実施形態では、ディスプレイ９０２は、少なくともヘッドセットデバイスＩ／Ｏ２２２と通信するように構成され得る。
【００９２】
例示的なセンサ９０４は、概して、音声入力のキャプチャを促進する。実施形態では、センサ９０４は指向性マイクロフォンであり得る。実施形態では、センサ９０４は、無指向性マイクロフォンであり得る。図示されていない実施形態では、センサ９０４は、周囲雑音をキャプチャし、最終的に使用してユーザ音声入力の処理および分析を支援するように構成された複数のマイクロフォンであって、ヘッドマウントコンピューティングデバイス９００のさまざまなポイントに配置された複数のマイクロフォンをさらに備えてもよい。センサ９０４は、本開示の範囲から逸脱することなく、音声入力を知覚し、音声入力を音声フィードに変換することができる任意のセンサまたはセンサのシステムであり得ることが理解されよう。実施形態において、例示的なセンサ９０４は、ハンズフリー入力判定部２４０およびそのサブシステムと通信するように構成され得る。
【００９３】
例示的な物理的入力センサ９０６は、概して、様々なハンズフリーナビゲーション機能の再起動を促進する入力コンポーネントを提供する。実施形態において、物理的入力センサ９０６は、図７Ａに関して説明したように、パッシブコマンドが発令された後に、ハンズフリー入力判定部２４０に信号を送って音声式コマンドを再起動するように構成され得る。実施形態では、物理的入力部９０６は、上述のようにヘッドセットの基準配向を再較正するためにハンズフリー入力判定部２４０に信号を送るように構成され得る。実施形態では、物理的入力センサ９０６は、複数の物理入力センサを備えてもよく、第１センサがハンズフリー入力判定部２４０に信号を送って音声式コマンドを再起動するように構成され、第２センサがハンズフリー入力判定部２４０に信号を送って基準配向を再較正するように構成されてもよい。物理的入力センサ９０６は、本開示の範囲から逸脱することなく物理的相互作用を検出することができる任意のセンサであり得ることが理解されるであろう。
【００９４】
例示的な音声出力部９０８は、概して、ヘッドマウントコンピューティングデバイス９００からの音声出力をユーザに提供する。本開示の範囲から逸脱することなく、実施形態では、電気入力に応じてサウンドを生成することができる任意の音声出力コンポーネント（スピーカーなど）を使用できることを理解されたい。実施形態では、音声出力部９０２は、少なくともヘッドセットデバイスＩ／Ｏ２２２と通信するように構成され得る。
【００９５】
例示的なモーションセンサ９１０は、概して、上述のモーション処理システムのモーション検出を促進する。本明細書で使用されるように、モーションセンサは、少なくとも１つの加速度計、多軸加速度計、磁力計、ジャイロスコープ、容量性トランスデューサ、ポテンショメータ、抵抗性トランスデューサ、シンクロ、または少なくとも１つの軸におけるモーションを検出できる任意の同様のセンサを備えることができる。実施形態では、モーションセンサ９１０は、少なくとも１つのモーションセンサを備えてもよい。実施形態では、モーションセンサ９１０は、複数のモーションセンサを備えてもよい。実施形態では、モーションセンサ９１０は、ハンズフリー入力判定部２４０およびそのサブシステムと通信するように構成されてもよい。
【００９６】
実施形態では、例示的なセンサ９１２は概してモーションの判定を行う。実施形態では、センサ９１２は、定期的に（６０フレーム／秒または任意の所定のレートなどで）画像をキャプチャするように構成された光に敏感なデジタルセンサであってもよい。実施形態では、画像キャプチャコンポーネント９１２は、画像を連続的にキャプチャするように構成された光に敏感なデジタルセンサであってもよい。実施形態では、センサ９１２は、ハンズフリー入力判定部２４０およびそのサブシステムと通信するように構成されてもよい。例示的なセンサ９１２は、本開示の範囲から逸脱することなく実施形態で使用され得るデジタル画像（カメラ、ビデオカメラなど）をキャプチャすることができる任意のセンサを含み得ることが理解されるであろう。
【００９７】
本明細書で言及されるように、変位は、３つの軸に対する９つの自由度におけるヘッドセット（ヘッドマウントコンピューティングデバイス９００など）の位置の任意の変化を指し得る。これには、３つの軸のいずれかでの平行移動または回転が含まれるが、これらに限定されない。３次元空間での変位に関連して使用される用語は、分野（航空、生体力学、コンピュータサイエンスなど）によって大きく異なり、一般的な使用法では大きく異なる場合があることに注意されたい。そのため、移動、変位、回転、および/または角変位を説明する記載部分を明確にし、簡素化するためのあらゆる試みが行われている。ただし、明示的に反対の記述がない限り、各例は状況を提供するものであり、本開示を限定するものではない。
【００９８】
たとえば、ｘ軸の平行移動は、右に移動または左に移動すると言うことができる。ただし、これは、横軸での原点からの移動（正（右）または負（左））と同等と考えることもできることを理解されたい。ｘ軸を中心とした回転（角度変位）は、上または下に回転すると言うことができる。ただし、これはピッチアップまたはピッチダウンと同等と考えることもできることを理解されたい。したがって、たとえば、上に回転しながら右に移動すると、ピッチアップしながら原点から横軸の正の値に向かって移動すると理解され得る。
【００９９】
ｙ軸の平行移動は、前方または後方に移動すると言うことができる。ただし、これは、縦軸での原点からの移動（正（前方）または負（後方））と同等と考えることもできることを理解されたい。ｙ軸を中心とした回転（角度変位）は、左または右に傾けると言うことができる。ただし、これは左（反時計回り）または右（時計回り）に回転するのと同等と考えることもできることを理解されたい。したがって、たとえば、左に傾けながら前方に移動すると、左に回転しながら原点から縦軸の正の値に向かって移動すると理解され得る。
【０１００】
ｚ軸の平行移動は、上下に移動すると言うことができる。ただし、これは、垂直軸の原点からの移動（正（上）または負（下））と同等と考えることもできることを理解されたい。ｚ軸を中心とした回転（角度変位）は、左または右への回転と言うことができる。ただし、これは左または右に振ることと同等と考えることもできることを理解されたい。したがって、たとえば、左に回転しながら上に移動すると、左に振りながら原点から垂直軸の正の値に向かって移動すると理解され得る。
【０１０１】
本開示の様々な実施形態を説明してきたが、本開示の実施形態を実装するのに適した例示的なコンピューティング環境について説明する。図１０を参照して、例示的なコンピューティングデバイスが提供され、概してコンピューティングデバイス１０００と呼称している。コンピューティングデバイス１０００は、適切なコンピューティング環境の一例にすぎず、本開示の使用または機能の範囲に関する制限を示唆することを意図したものではない。また、コンピューティングデバイス１０００は、図示されたコンポーネントのいずれかまたは組み合わせに関する依存性または要件を有すると解釈されるべきではない。
【０１０２】
本開示の実施形態は、パーソナルデータアシスタント、スマートフォン、タブレットＰＣ、または他の形態デバイスなどのコンピュータまたは他の機械によって実行されるプログラムモジュールなどのコンピュータ使用可能またはコンピュータ実行可能指令を含むコンピュータコードまたは機械使用可能指令の一般的な状況で説明することができる。一般に、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含むプログラムモジュールは、特定のタスクを実行したり、特定の抽象データ型を実装したりするコードを参照する。本開示の実施形態は、ハンドヘルドデバイス、家庭用電化製品、汎用コンピュータ、より専門的なコンピューティングデバイスなどを含む様々なシステム構成で実施することができる。本開示の実施形態は、通信ネットワークを介してリンクされているリモート処理デバイスによってタスクが実行される分散コンピューティング環境で実施することもできる。分散コンピューティング環境では、プログラムモジュールは、メモリストレージデバイスを含むローカルおよびリモートのコンピューターストレージメディアの両方に配置され得る。
【０１０３】
図１０を参照し、コンピューティングデバイス１０００は、以下のデバイスを直接的または間接的に結合するバス１０１０を含む。つまり、バス１０１０は、メモリ１０１２、１つまたは複数のプロセッサ１０１４、１つまたは複数の表示コンポーネント１０１６、１つまたは複数の入出力（Ｉ／Ｏ）ポート１０１８、１つまたは複数のＩ／Ｏコンポーネント１０２０、および例示的な電源１０２２を結合する。バス１０１０は、１つまたは複数のバス（アドレスバス、データバス、またはそれらの組み合わせなど）であり得るものを表す。図１０の様々なブロックは、明確にするために線で示されているが、実際には、これらのブロックは論理的な、必ずしも実際のコンポーネントではない。たとえば、ディスプレイデバイスなどの表示コンポーネントをＩ／Ｏコンポーネントと見なすこともできる。また、プロセッサはメモリを備えているため、メモリ１０１２および１つまたは複数のプロセッサ１０１４は、別個のコンポーネントまたは分散したコンポーネントを含んでもよいし含まなくてもよい。本発明の発明者は、それが当技術分野の性質であることを認識し、図１０のダイアグラムが、１つまたは複数の実施形態に関連して使用できる例示的なコンピューティングデバイスの単なる例示であることを繰り返し述べている。「ワークステーション」、「サーバ」、「ラップトップ」、「ハンドヘルドデバイス」などのカテゴリ間で区別はされず、すべて図１０の範囲内および「コンピューティングデバイス」を参照して考えられる。
【０１０４】
コンピューティングデバイス１０００は、典型的に、さまざまなコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピューティングデバイス１０００がアクセスできる任意の利用可能な媒体とすることができ、揮発性および不揮発性媒体、取り外し可能および取り外し不能媒体の両方を含む。例として、限定ではなく、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含み得る。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータなどの情報を保存するための任意の方法または技術で実装される揮発性および不揮発性、取り外し可能および取り外し不能な媒体の両方が含まれる。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭＥＥＰＲＯＭ、フラッシュメモリもしくはその他のメモリテクノロジ、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）もしくはその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、磁気記憶装置、または所望の情報を記録するために使用できてコンピューティングデバイス１０００がアクセス可能な他の任意の記録媒体が含まれるが、これらに限定されない。コンピュータ記憶媒体はそれ自体信号を含まない。通信媒体は、典型的に、コンピュータ読み取り可能命令、データ構造、プログラムモジュール、または他のデータを、搬送波やその他のトランスポートメカニズムなどの変調データ信号に組み込んでおり、任意の情報配信メディアを含む。「変調データ信号」という用語は、信号内の情報をエンコードするように設定または変更された特性の１つまたは複数を持つ信号を意味する。一例として、限定ではなく、通信媒体には、有線ネットワークまたは直接有線接続などの有線媒体、および音波、ＲＦ、赤外線、およびその他の無線媒体などの無線媒体が含まれる。上記のいずれかの組み合わせも、コンピュータ読み取り可能媒体の範囲内に含まれる。
【０１０５】
メモリ１０１２は、揮発性および／または不揮発性メモリの形態のコンピュータ記憶媒体を含む。メモリは、取り外し可能、取り外し不能、またはそれらの組み合わせであり得る。例示的なハードウェアデバイスには、ソリッドステートメモリ、ハードドライブ、光ディスクドライブなどが含まれる。コンピューティングデバイス１０００は、メモリ１０１２またはＩ／Ｏコンポーネント１０２０などの様々な実在物からデータを読み取る１つまたは複数のプロセッサ１０１４を含む。表示コンポーネント１０１６は、データ表示をユーザまたは他のデバイスに提示する。例示的な表示コンポーネントには、ディスプレイデバイス、スピーカ、印刷コンポーネント、振動コンポーネントなどが含まれる。
【０１０６】
Ｉ／Ｏポート１０１８により、コンピューティングデバイス１０００は、Ｉ／Ｏコンポーネント１０２０を含む他のデバイスに論理的に結合されることが可能になり、その一部が組み込まれ得る。例示的なコンポーネントには、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナ、プリンタ、無線デバイスなどが含まれる。Ｉ／Ｏコンポーネント１０２０は、空気ジェスチャ、音声、またはユーザによって生成された他の生理学的入力を処理する自然なユーザインターフェース（ＮＵＩ）を提供し得る。場合によっては、入力は適切なネットワーク要素に送信され、さらに処理される。ＮＵＩは、音声認識、タッチおよびスタイラス認識、顔認識、生体認証、画面上、並びに画面に隣接した空気ジェスチャ、頭、および目の追跡によるジェスチャ認識、およびコンピューティングデバイス１０００のディスプレイに関連付けられたタッチ認識の任意の組み合わせを実装し得る。コンピューティングデバイス１０００は、ジェスチャ検出および認識のために、立体視カメラシステム、赤外線カメラシステム、ＲＧＢカメラシステム、およびこれらの組み合わせなどの深度（Ｄｅｐｔｈ）カメラを備え得る。加えて、コンピューティングデバイス６００は、モーションの検出を可能にする加速度計またはジャイロスコープを備えてもよい。加速度計またはジャイロスコープの出力は、没入型拡張現実または仮想現実を描写するために、コンピューティングデバイス１０００のディスプレイに提供されてもよい。
【０１０７】
コンピューティングデバイス１０００のいくつかの実施形態は、１つまたは複数の無線機１０２４（または同様の無線通信コンポーネント）を含み得る。無線機１０２４は、無線電信または無線通信を送受信する。コンピューティングデバイス１０００は、様々なワイヤレスネットワークを介して通信およびメディアを受信するように適合されたワイヤレス端末であり得る。コンピューティングデバイス１０００は、コード分割多重アクセス（「ＣＤＭＡ」）、モバイル用グローバルシステム（「ＧＳＭ（登録商標）」）、または時分割多重アクセス（「ＴＤＭＡ」）などの他の装置と通信するための無線プロトコルを介して通信することができる。無線通信は、短距離接続、長距離接続、または短距離無線通信接続と長距離無線通信接続の両方の組み合わせであり得る。「短」タイプと「長」タイプの接続を言う場合、２つのデバイス間の空間的な関係を指すわけではない。代わりに、概して、短距離と長距離を異なるカテゴリまたはタイプの接続（つまり、プライマリ接続とセカンダリ接続）と言う。短距離接続には、限定ではなく例として、８０２．１１プロトコルを使用したＷＬＡＮ接続などの無線通信ネットワークへのアクセスを提供するデバイス（モバイルホットスポットなど）へのＷｉ−Ｆｉ（登録商標）接続が含まれる。別のコンピューティングデバイスへのＢｌｕｅｔｏｏｔｈ（登録商標）接続は、短距離接続または近距離通信接続の２番目の例である。長距離接続は、限定ではなく例として、ＣＤＭＡ、ＧＰＲＳ、ＧＳＭ、ＴＤＭＡ、および８０２．１６プロトコルの１つまたは複数を使用する接続を含み得る。
【０１０８】
特許請求の範囲から逸脱することなく、図示されていないコンポーネントと同様に、図示されている様々なコンポーネントの多くの異なる配置が可能である。本開示の実施形態は、限定的ではなく例示的であることを意図して説明されている。代替実施形態は、本明細書を読んだ後、および読むことによって、本開示の読者に明らかになるであろう。前述した内容を実施する代替手段は、特許請求の範囲から逸脱することなく想定され得る。特定の機能およびサブコンビネーションは有用であり、他の機能およびサブコンビネーションを参照せずに使用することができ、特許請求の範囲内で想定されている。
【図１】
2020502719.tif 000003
【図２】
2020502719.tif 000004
【図３】
2020502719.tif 000005
【図４Ａ】
2020502719.tif 000006
【図４Ｂ】
2020502719.tif 000007
【図４Ｃ】
2020502719.tif 000008
【図５】
2020502719.tif 000009
【図６Ａ】
2020502719.tif 000010
【図６Ｂ】
2020502719.tif 000011
【図７Ａ】
2020502719.tif 000012
【図７Ｂ】
2020502719.tif 000013
【図８Ａ】
2020502719.tif 000014
【図８Ｂ】
2020502719.tif 000015
【図９】
2020502719.tif 000016
【図１０】
2020502719.tif 000017
【国際調査報告】
2020502719.tif 000018