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