(57)【特許請求の範囲】
【請求項１】
コンピューティング装置であって、
前記コンピューティング装置との接触を示す少なくとも１つの接触入力イベントを提供するための、少なくとも１つの接触タイプの入力機構と、
前記コンピューティング装置の１つまたは複数の方位および動きを示す少なくとも１つの動き入力イベントを提供するための、少なくとも１つの動きタイプの入力機構と、
を含む、入力動作に応答する複数の入力機構と、
前記少なくとも１つの接触入力イベントおよび前記少なくとも１つの動き入力イベントの組合せを使用して、発生した前記入力動作の種類を検出するように構成された、解釈および動作選択モジュール（ＩＢＳＭ）と、
を備え、
前記ＩＢＳＭは、前記少なくとも１つの動き入力イベントが実際に受信されるタイミングに対して、前記少なくとも１つの接触入力イベントが受信されたと考えられるタイミングを自動的に調整することにより、１又は複数の意図的でない入力を検出し応答するよう更に構成される、コンピューティング装置。
【請求項２】
前記ＩＢＳＭが、前記入力動作の過程で前記接触入力イベントおよび前記動き入力イベントを繰り返し分析して、前記ＩＢＳＭが前記入力動作の種類を検出する信頼度を改良するように構成された、請求項１に記載のコンピューティング装置。
【請求項３】
前記ＩＢＳＭが、前記少なくとも１つの動き入力イベントが所定の閾値を超えるときに前記入力動作の少なくとも一部が意図的でないと結論付けるように構成され、前記入力動作が、前記コンピューティング装置を持ち上げることまたは下に置くことに関連付けられている、請求項１に記載のコンピューティング装置。
【請求項４】
前記ＩＢＳＭが、前記少なくとも１つの動き入力イベントが、ノイズ環境における前記コンピューティング装置の動作を示すノイズのような動きの特性を示すとき、前記入力動作の少なくとも一部が意図的でないと結論付けるように構成された、請求項１に記載のコンピューティング装置。
【請求項５】
前記ＩＢＳＭが、タッチ接触の適用中または除去中に発生する意図的でない動きのため前記入力動作の少なくとも一部が意図的でないと結論付けるように構成された、請求項１に記載のコンピューティング装置。
【請求項６】
前記ＩＢＳＭが、前記入力動作に関連付けられているジェスチャの種類を、前記少なくとも１つの接触入力イベントと前記少なくとも１つの動き入力イベントとの組合せに基づいて検出するように構成された、請求項１に記載のコンピューティング装置。
【請求項７】
前記ＩＢＳＭが、前記入力動作がタッチ接触の意図的でない適用に関連付けられている否かを、前記コンピューティング装置の決定された方位に基づいて判定するように構成された、請求項１に記載のコンピューティング装置。
【請求項８】
前記ＩＢＳＭがさらに、前記入力動作の前記種類の検出に応答して動作を実行するように構成され、
１つの動作として、前記ＩＢＳＭが、前記入力動作の少なくとも一部が意図的でないと前記ＩＢＳＭが判定するときに、前記少なくとも１つの接触入力イベントの少なくとも一部を拒絶するように構成され、
別の動作として、前記ＩＢＳＭが、前記入力動作の少なくとも一部が意図的でないと前記ＩＢＳＭが判定するときに、以前の状態を復元するように構成され、
別の動作として、前記ＩＢＳＭが、前記入力動作の少なくとも一部が意図的でないと前記ＩＢＳＭが判定するときに、前記少なくとも１つの接触入力イベントの解釈を補正して前記少なくとも１つの動き入力イベントの影響を除去するように構成された、請求項１に記載のコンピューティング装置。
【請求項９】
コンピューティング装置の意図的でない動きに応答して前記コンピューティング装置を制御するための方法であって、
前記コンピューティング装置との所定の方法での接触に応答して、少なくとも１つの接触入力イベントを少なくとも１つのタッチ入力機構から受け取るステップと、
前記コンピューティング装置の動きに応答して、少なくとも１つの動き入力イベントを少なくとも１つの動きタイプの入力機構から受け取るステップと、
前記コンピューティング装置との前記接触に関連付けられている入力動作の種類を、前記少なくとも１つの接触入力イベントおよび前記少なくとも１つの動き入力イベントに基づいて検出するステップと、
前記入力動作の少なくとも一部が意図的でない入力動作に対応すると判定されるとき、前記少なくとも１つの接触入力イベントの少なくとも一部を拒絶するステップと、
少なくとも１つの接触入力イベントが受信された前記コンピューティング装置における位置の指示を自動的に調整して、前記少なくとも１つの接触入力イベントの解釈を補正することにより、前記コンピューティング装置の意図的でない動きを考慮するステップと、
を含む方法。
【請求項１０】
プロセッサに、
コンピューティング装置との所定の方法での接触に応答して、少なくとも１つの接触入力イベントを少なくとも１つのタッチ入力機構から受け取らせ、
前記コンピューティング装置の動きに応答して、少なくとも１つの動き入力イベントを少なくとも１つの動きタイプの入力機構から受け取らせ、
前記コンピューティング装置との前記接触に関連付けられている入力動作の種類を、前記少なくとも１つの接触入力イベントおよび前記少なくとも１つの動き入力イベントに基づいて検出させ、
前記入力動作の少なくとも一部が意図的でないと判定されるとき、前記少なくとも１つの接触入力イベントが受信されたタイミングの指示を自動的に調整して、前記少なくとも１つの接触入力イベントの解釈を補正することにより、前記少なくとも１つの動き入力イベントを考慮させる、
コンピュータプログラム。
【請求項１１】
請求項１０に記載のコンピュータプログラムを記憶したコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピューティング装置の動きを利用するコンピューティング装置と相互作用するときに発生する入力イベントの解釈の強化に関する。
【背景技術】
【０００２】
ハンドヘルド・コンピューティング装置により、しばしば、ユーザは装置のディスプレイ面と直接接触することにより情報を入力することができる。これらの種類の入力機構を、本明細書では接触タイプの入力機構と称する。例えば、タッチ入力機構は、ユーザがコンピューティング装置のディスプレイ面に１本の指で（または複数の指で）タッチするときの直接タッチ入力イベントを提供する。ペン入力機構は、ユーザがディスプレイ面に、スタイラス・ペンとしても知られるペン装置でタッチするときの直接ペン入力イベントを提供する。
【０００３】
コンピューティング装置によりまた、ユーザは１つまたは複数の指またはペン装置を用いてジェスチャを実行することができる。例えば、ジェスチャは、ユーザが指またはペン入力装置でディスプレイ面をなぞる痕跡のマーク（telltale mark）に対応することができる。コンピューティング装置は、このジェスチャを関連するコマンドに関連付ける。コンピューティング装置は次にそのコマンドを実行する。そのような実行は、ユーザの入力動作（直接操作のドラッグ動作など）の過程で、または、ユーザが入力動作を完了した後に、起こりうる。
【０００４】
一般に、開発者は、リッチな入力ジェスチャのセットに適合する表現力豊かな接触タイプの入力機構を提供したいと思うかもしれない。しかしながら、ジェスチャの数を増やすと、いくつかの課題が生ずるおそれがある。例えば、コンピューティング装置が、類似する２つ以上の所定の意図的なジェスチャに適合すると仮定する。このケースでは、ユーザはある特定のジェスチャを入力するつもりであるが、コンピューティング装置は、そのジェスチャを類似するが別のジェスチャと誤って解釈してしまうかもしれない。別のケースでは、ユーザは、接触タイプの入力機構との意図した相互作用を必要としないタスクを、コンピューティング装置を用いて実施したいかもしれない。しかし、ユーザが、接触タイプの入力機構との故意でない接触を生じさせるようにコンピューティング装置を扱うかもしれない。あるいは、ユーザが、情報を入力している間に偶然に接触タイプの入力機構のディスプレイ面を擦るかまたはディスプレイ面にぶつかるかもしれず、これが接触タイプの入力機構との偶然の接触の原因となる。接触タイプの入力機構が、これらの偶然の接触を正当な入力イベントと誤って解釈してしまうかもしれない。これらの問題が、それらが頻繁に生ずるようになると、または、希であったとしてもユーザが実施しているタスクにおいてそれらが重大な途絶を引き起こす場合には、ユーザを苛つかせるのは理解できる。
【０００５】
開発者は、複合の独特なジェスチャを開発することでこれらの懸案の一部に対処することができる。しかしながら、これは完全に満足できる解決法ではない。なぜならば、ユーザが、特にこれらのジェスチャが複雑で「不自然」であるときには、これらのジェスチャを覚えて実行するのは困難であるかもしれないからである。さらに、しばしば、ユーザが複雑なジェスチャを表現するのには時間がかかる。この理由のため、これらの種類のジェスチャを１組の可能なジェスチャに追加することは、収穫逓減を生ずる。
【発明の概要】
【０００６】
本明細書では、入力動作を説明する複数の入力イベントを収集するコンピューティング装置を説明する。例えば、コンピューティング装置は、タッチ入力機構および／またはペン入力機構などの少なくとも１つの接触タイプの入力機構から、１つまたは複数の入力イベントを受け取る。コンピューティング装置はまた、加速度計および／またはジャイロ装置などの少なくとも１つの動きタイプの入力機構から、１つまたは複数の入力イベントを受け取る。動きタイプの入力機構は、コンピューティング装置の方位または動的な動きを示す（より具体的には、本明細書で使用する際、「動き」という用語は、コンピューティング装置の方位もしくはコンピューティング装置の動的な動きの何れか、またはその両方を広く包含する）。これらの入力イベントに基づいて、随意に他の因子と関連して、コンピューティング装置は発生した入力動作の種類を解釈する。この検出結果に基づいて、コンピューティング装置は次に入力イベントの少なくとも一部を無視するなどの所望の動作を実行することができる。
【０００７】
より簡潔に述べると、本明細書では、（タッチ入力機構および／またはペン入力機構を介した）ユーザの意図的なまたは意図しない接触タイプの入力を解釈するときにコンピューティング装置の動きを考慮する、コンピューティング装置を説明する。動きは、それらが（もしあれば）現在ユーザが示している任意の目標指向型の動作に対して偶然である限り、バックグラウンドの動きとして特徴付けられる。即ち、ユーザはこれらのバックグラウンドの動きを意図的な動作として行うことに集中しなくてもよい。
【０００８】
１つのケースでは、コンピューティング装置は、入力動作の過程で接触タイプの入力機構（複数可）および動きタイプの入力機構（複数可）から受け取った入力イベントを繰り返し分析するように構成される。これは、コンピューティング装置が入力動作の種類を検出する信頼度を改善するために行われる。
【０００９】
発明を実施するための形態では、コンピューティング装置の動きを使用して接触入力イベント（複数可）の分析を改良する多数のシナリオを説明する。これらの例の一部を以下で要約する。
【００１０】
１つのシナリオでは、コンピューティング装置は、動き入力イベント（複数可）が所定の時間ウィンドウで所定の閾値を超えるときに、入力動作の少なくとも一部が意図しないものであると結論付ける。この場合、その入力動作を、コンピューティング装置を持ち上げることまたは下に置くことに関連付けてもよい。
【００１１】
別のシナリオでは、コンピューティング装置は、ノイズ環境でのコンピューティング装置の操作を示すノイズのような動き特性を動き入力イベント（複数可）が示すときに、入力動作の少なくとも一部が意図しないものであると結論付ける。
【００１２】
別のシナリオでは、コンピューティング装置は、タッチ接触を適用または除去する間に生ずる意図しない動きを理由として、入力動作の少なくとも一部が意図しないものであると結論付ける。
【００１３】
別のシナリオでは、コンピューティング装置は、接触入力イベント（複数可）と動き入力イベント（複数可）の組合せに基づいて行われたジェスチャの種類をより正確に区別する。
【００１４】
別の例では、コンピューティング装置は、コンピューティング装置が手で真っ直ぐに立てて保持されていると動き入力イベント（複数可）が示すとき、入力動作が指または手の他の部分の意図しない適用に関連付けられると結論付ける。コンピューティング装置が手で真っ直ぐに立てて保持されていることは、コンピューティング装置の方位を決めることで検出することができる。
【００１５】
コンピューティング装置は、その分析に応答して様々な動作を行うことができる。１つのケースでは、コンピューティング装置は、入力動作の少なくとも一部が意図しないものであるとコンピューティング装置が判定するときに、接触入力イベント（複数可）の少なくとも一部を拒絶することができる。追加または代替として、コンピューティング装置は、入力動作の少なくとも一部が意図しないものであるとコンピューティング装置が判定するときに、動作前の状態を復元することができる。追加または代替として、コンピューティング装置は、入力動作の少なくとも一部が意図しないものであるとコンピューティング装置が判定するときに、接触入力イベント（複数可）の解釈を補正して動き入力イベント（複数可）の影響を除去することができる。追加または代替として、コンピューティング装置は、検出された入力動作の種類に基づいてユーザ・インタフェース表現を修正することができる。
【００１６】
以上の機能を、様々な種類のシステム、コンポーネント、方法、コンピュータ読取可能媒体、データ構造、製品、等で表現することができる。
【００１７】
本要約は概念の抜粋を簡潔な形で導入するために提供される。これらの概念を下記の発明を実施するための形態でさらに説明する。本要約は、主張する主題の主要な特徴または本質的な特徴を特定しようとするものではなく、主張する主題の範囲を限定するために使用しようとするものでもない。
【図面の簡単な説明】
【００１８】
【図１】図１は、接触入力イベントを動き入力イベントのコンテキストで解釈するため、および／または、動き入力イベントを接触入力イベントのコンテキストで解釈するための機能を含む、例示的なコンピューティング装置を示している。
【図２】図２は、図１のコンピューティング装置で使用する解釈および動作選択モジュール（ｉｎｔｅｒｐｒｅｔａｔｉｏｎ  ａｎｄ  ｂｅｈａｖｉｏｒ  ｓｅｌｅｃｔｉｏｎ  ｍｏｄｕｌｅ、ＩＢＳＭ）を示している。
【図３】図３は、図１のコンピューティング装置を使用できる例示的なシステムを示している。
【図４】図４は、意図的なジェスチャで使用できる回転の動きの例を示している。
【図５】図５は、意図的なジェスチャで使用できる回転の動きの例を示している。
【図６】図６は、図４または図５の何れかに示す種類の回転の動きを組み込むことができる様々なジェスチャを示している。
【図７】図７は、図４または図５の何れかに示す種類の回転の動きを組み込むことができる様々なジェスチャを示している。
【図８】図８は、図４または図５の何れかに示す種類の回転の動きを組み込むことができる様々なジェスチャを示している。
【図９】図９は、図４または図５の何れかに示す種類の回転の動きを組み込むことができる様々なジェスチャを示している。
【図１０】図１０は、コンピューティング装置を対象物に向けることを含む意図的なジェスチャを示している。
【図１１】図１１は、コンピューティング装置を静止した指に対して動かすことを含む意図的なジェスチャを示している。
【図１２】図１２は、少なくとも２つの表示部分を有するコンピューティング装置の２つの表示部分へ接触を適用することを含む意図的なジェスチャを示している。
【図１３】図１３は、独特なマルチ・タッチのジェスチャの適用により可能となる意図的なジェスチャを示している。
【図１４】図１４は、接触点をコンピューティング装置に適用し、次いでコンピューティング装置を回転することを含む、意図的なジェスチャを示している。
【図１５】図１５は、動き入力イベントを使用して、例えば指（または手の他の部分）をコンピューティング装置のディスプレイ面に適用するかまたはディスプレイ面から離すときの接触入力イベントの解釈を強化するための機能を示している。
【図１６】図１６は、一般的に大きな動き入力イベントを引き起こすバックグラウンドの動きを示している。
【図１７】図１７は、コンピューティング装置がコンピューティング装置の方位に基づいてタッチ入力イベントを無視できる状況を示している。
【図１８】図１８は、コンピューティング装置がコンピューティング装置の方位に基づいてタッチ入力イベントを無視できる状況を示している。
【図１９】図１９は、フォアグラウンドの動作モードにおける、図１のコンピューティング装置の１つの動作様式を説明する流れ図である。
【図２０】図２０は、バックグラウンドの動作モードにおける、図１のコンピューティング装置の１つの動作様式を説明する流れ図である。
【図２１】図２１は、以上の図面で示した特徴の任意の態様を実装するために使用できる処理機能を示している。
【００１９】
本開示および図面にわたって同一の番号を使用して、同様なコンポーネントおよび特徴を参照する。１００番台はもともと図１に示された特徴を示し、２００番台はもともと図２に示された特徴を示し、３００番台はもともと図３に示された特徴を示す、等である。
【発明を実施するための形態】
【００２０】
本開示は以下のように構成されている。セクションＡは、接触入力イベントを評価するときにコンピューティング装置の動きを考慮する、例示的なコンピューティング装置を説明する。セクションＢは、セクションＡのコンピューティング装置の動作を説明する、例示的な方法を説明する。セクションＣは、セクションＡおよびＢで説明した特徴の任意の態様を実装するために使用できる、例示的な処理機能を説明する。
【００２１】
本出願は、本願と同日に出願された、発明者はKenneth Hinckley他であり、表題は「Detecting Gestures Involving Intentional Movement of a Computing Device」である同一出願人による特許出願シリアルナンバー（代理人整理番号330018.01）に関連する。この出願は、参照により全体として本明細書に組み込まれる。
【００２２】
前段として、図の幾つかでは、１つまたは複数の構造的なコンポーネントのコンテキストで概念を説明する。そのコンポーネントは、関数、モジュール、特徴、要素、等と様々に称する。図で示した様々なコンポーネントを、（ハードウェア、ソフトウェア、ファームウェア、等、またはそれらの任意の組合せによって等）任意の物理的機構および有形的機構により任意の方法で実装することができる。１つのケースでは、図における様々なコンポーネントの別個のユニットへの例示した分割は、実際の実装における対応する別個のコンポーネントの使用を反映することができる。代替または追加として、図で示した任意の単一のコンポーネントを複数の実際のコンポーネントで実装してもよい。代替または追加として、図の任意の２つ以上の別々のコンポーネントが、単一の実際のコンポーネントで実施される様々な機能を反映してもよい。図２１は、後で論ずるが、図で示した機能の１つの例示的な実装に関する追加の詳細を提供する。
【００２３】
他の図では、概念を流れ図の形で説明する。この形では、特定の動作が、特定の順序で実施される別個のブロックを構成するとして説明される。そのような実装は例示的であり非限定的である。本明細書に記載の特定のブロックを、グループ化し、単一の動作で実施することができる。特定のブロックを複数のコンポーネント・ブロックに分解することができる。特定のブロックを、本明細書で示したものとは異なる順序（並列にブロックを実施することを含む）で実施することができる。流れ図で示したブロックは、（ハードウェア、ソフトウェア、ファームウェア、等、またはそれらの任意の組合せによって等）任意の物理的機構および有形的機構により任意の方法で実装されうる。
【００２４】
用語に関して、「〜するように構成される」という句は、特定された動作を実施するように任意の種類の物理的機能および有形的機能を構築できる任意の方法を包含する。当該機能を、例えば、ソフトウェア、ハードウェア、ファームウェア、等、および／またはそれらの任意の組合せを用いて、動作を実施するように構成することができる。
【００２５】
「論理」という用語は、タスクを実施するための任意の物理的機能および有形的機能を包含する。例えば、流れ図で示した各動作は、その動作を実施するための論理コンポーネントに対応する。動作を、例えば、ソフトウェア、ハードウェア、ファームウェア、等、および／またはそれらの任意の組合せを用いて実施することができる。コンピューティング・システムによって実装するとき、論理コンポーネントは、どのように実装されようとも、コンピューティング・システムの物理的部分である電子コンポーネントを表す。
【００２６】
以下の説明では、１つまたは複数の特徴を「任意」として特定することがある。この種の記述は、任意と考えうる特徴を網羅的に示すものとして解釈すべきではない。即ち、本明細書では明示的には示していないけれども、他の特徴も任意と考えることができる。同様に、説明で、特徴の単一の事例、または特徴の複数の事例を特定することがある。特徴の単一の事例に言及しても、この特徴の複数の事例を排除するものではない。さらに、複数の事例に言及しても、単一のこの特徴の事例を排除するものではない。最後に、「例」または「例示的」という用語は、潜在的に多数の実装形態のうち１つの実装形態を指す。
【００２７】
Ａ．例示的なコンピューティング装置
Ａ．１．概要
図１は、接触入力イベントを分析するときのコンピューティング装置１００の動きを考慮する、コンピューティング装置１００の例を示している。コンピューティング装置１００は、随意に、表示機構１０２を様々な入力機構１０４とともに含む。表示機構１０２が含まれる場合は、表示機構１０２はデジタル情報をディスプレイ面に視覚的に表示する。表示機構１０２を、液晶ディスプレイ等のような任意の種類のディスプレイで実装することができる。図示していないが、コンピューティング装置１００が音声出力機構、触覚（例えば振動）出力機構、等を含むこともできる。
【００２８】
入力機構１０４はタッチ入力機構（複数可）１０６およびペン入力機構（複数可）１０８を含むことができる。タッチ入力機構（複数可）１０６を、抵抗性のタッチ・スクリーン技術、容量性のタッチ・スクリーン技術、アコースティック・タッチ・スクリーン技術、双方向性のタッチ・スクリーン技術等の任意の技術を用いて実装することができる。双方向性のタッチ・スクリーン技術では、表示機構は、情報を表示することに専念する要素と情報を受信することに専念する要素とを提供する。したがって、双方向性の表示機構の表面はまた、キャプチャ機構でもある。タッチ入力機構（複数可）１０６およびペン入力機構（複数可）１０８を、表示機構１０２から分離された（または、少なくとも部分的に分離された）パッド・タイプの入力機構を用いて実装することもできる。パッド・タイプの入力機構はまた、タブレット、デジタイザ、グラフィック・パッド、等とも呼ばれる。
【００２９】
ペン入力機構（複数可）１０８を、パッシブ・ペン技術、アクティブ・ペン技術、等の任意の技術を用いて実装することができる。パッシブの場合は、コンピューティング装置１００はペン装置の存在を、ペン装置がディスプレイ面にタッチしたとき（または近づいたとき）に検出する。その場合、ペン装置は、独立した電源も処理機能ももたない単純に細長い器具を表してもよく、または、表示機構１０２との誘導結合によりペン装置は受動的に電力供給されてもよい。アクティブの場合は、ペン装置は、ディスプレイ面に関してその位置を検知するための独立した検出機能を組み込むことができる。さらに、アクティブ・ペン装置は、独立した動き検知機構を含むことができる。さらに、アクティブ・ペン装置は、独立したデプス検知機構を備えることができる。これらの例では、アクティブ・ペン装置がその入力データを分析用にコンピューティング装置１００に転送することができる。以下の説明では、ペン装置に関する入力データが、コンピューティング装置１００、ペン装置自体、またはそれらの組合せから生ずることができることは理解されよう。
【００３０】
本明細書で使用する用語では、接触タイプの入力機構は、ユーザが表示機構１０２のディスプレイ面またはコンピューティング装置１０２の他の部分との実際の接触または密接な接触を確立する、任意の種類の入力機構を表す。接触タイプの入力機構は、上述のタッチ入力機構（複数可）１０６およびペン入力機構（複数可）１０８、等を含む。さらに、コンピューティング装置１００との任意の接触が、１つまたは複数の別個の接触の事例を含んでもよい。例えば、ユーザが、１つまたは複数の指をディスプレイ面と近接または実際に接触させることにより、ディスプレイ面と接触することができる。
【００３１】
入力機構１０４はまた、様々な種類の動きタイプの入力機構（複数可）１１０を含む。動きタイプの入力機構という用語は、コンピューティング装置１００の方位もしくは動き、またはその両方を測定する任意の種類の入力機構を表す。動きタイプの入力機構（複数可）１１０を、線形の加速度計、ジャイロスコープ・センサ（本明細書で使用する用語に従えば「ジャイロ装置」）、様々な動き周波数帯域幅に調節された振動センサ、重力、トルク・センサ、歪ゲージ、曲げセンサ、光学エンコーダ機構、等に関連する、コンピューティング装置１００またはコンピューティング装置１００の一部の特定の姿勢または動きを検出する機械的手段を用いて、実装することができる。さらに、任意の動きタイプの入力機構が、任意の数の空間軸に沿った動きを検知することができる。例えば、コンピューティング装置１００は、３つの空間軸に沿った動きを測定する加速度計および／またはジャイロ装置を組み込むことができる。
【００３２】
入力機構１０４はまた、ビデオ・キャプチャ入力機構、デプス検知入力機構、ステレオ画像キャプチャ機構、等の任意の種類の画像検知入力機構（複数可）１１２を含むことができる。デプス検知入力機構は、コンピューティング装置１００の幾つかの部分からオブジェクトの距離を測定する。例えば、１つのケースでは、デプス検知入力機構は、コンピューティング装置１００のディスプレイ面からのオブジェクトの距離を測定する。デプス検知入力機構を、任意の種類のキャプチャ技術（例えば、飛行時間の技術）を任意の種類の電磁放射（例えば、可視スペクトル放射、赤外線スペクトル放射、等）とともに使用して実装することができる。画像検知入力機構（複数可）１１２の一部が、周囲の環境に関連するコンピューティング装置１００の動きを決定するために使用できる限り、動きタイプの入力機構として機能することもできる。代替または追加として、例えば、画像検知入力機構（複数可）の一部を動きタイプの入力機構（複数可）１１０とともに使用して、動きタイプの入力機構（複数可）１１０の性能および／または正確性を高めることができる。図１では具体的には列挙されていないが、他の入力機構は、キーパッド入力機構、マウス入力機構、音声入力機構、等を含むことができる。
【００３３】
本明細書で使用する用語では、各入力機構は、それが起動されたときに入力イベントを生成するといわれる。例えば、ユーザが表示機構１０２（またはコンピューティング装置１００の他の部分）のディスプレイ面にタッチすると、タッチ入力機構（複数可）１０６がタッチ入力イベントを生成する。ユーザがペン装置をディスプレイ面に適用すると、ペン入力機構（複数可）１０８がペン入力イベントを生成する。より一般的に述べると、接触タイプの入力機構が接触入力イベントを生成する。接触入力イベントは、何らかのオブジェクトがコンピューティング装置１００と近接または実際に物理的に接触したことを示す。一方、動きタイプの入力機構は、動き入力イベントを生成するといわれる。任意の入力イベントが、それ自体、１つまたは複数の入力イベント・コンポーネントを含んでもよい。言及を簡単かつ簡潔にするために、以下の説明では最も頻繁に、入力機構の出力を複数で、例えば、「入力イベント」として説明する。しかし、様々な分析を、単一の入力イベントに基づいて実施することもできる。
【００３４】
図１では、入力機構１０４が表示機構１０２に部分的に重複することを示す。この理由は、入力機構１０４の少なくとも一部を、表示機構１０２に関連する機能と統合できるからである。これは、タッチ入力機構（複数可）１０６およびペン入力機構１０８（複数可）等の接触タイプの入力機構に関するケースである。例えば、タッチ入力機構（複数可）１０６は、部分的に、表示機構１０２によって提供される機能に依存する。
【００３５】
解釈および動作選択モジュール（ＩＢＳＭ）１１４は、入力イベントを入力機構１０４から受け取る。即ち、解釈および動作選択モジュール（ＩＢＳＭ）１１４は、入力動作の過程で入力イベントを収集する。この場合、入力動作は、意図的なものであるかもしくは意図的でないものであるかの何れかであり、またはその組合せである。名前が示唆するように、ＩＢＳＭ１１４は入力イベントを解釈するタスクを実施する。それを行う際、ＩＢＳＭ１１４は接触入力イベントを、場合によっては他の因子とともに、動き入力イベントのコンテキストで解釈する（およびその逆も行う）。その解釈の役割を果たした後、ＩＢＳＭ１１４は、零個の、１つの、または複数の解釈された入力イベントに関連する動作を実施することができる。
【００３６】
高レベルの視点からは、ＩＢＳＭ１１４は、入力動作中に発生する動きの性質に応じて、２つの役割を果たす。第１の役割では、ＩＢＳＭ１１４は、接触入力イベントおよび動き入力イベントの両方を分析して、ユーザが意図的にコンピューティング装置１００を意図的なジェスチャの一部として動かしたか否かを判定する。動かした場合は、ＩＢＳＭ１１４は、そのジェスチャを認識して、そのジェスチャに対応付けられるどのような動作も実行する。このコンテキストでは、発生した動きはフォアグラウンドの運動である。なぜならば、ユーザが意図的にこの動作を実施する、即ち、その動作がユーザの認識の焦点のフォアグラウンド（前面）にあるからである。
【００３７】
より具体的には、第１のケースでは、ＩＢＳＭ１１４は動作をジェスチャの完了時に実行する。第２のケースでは、ＩＢＳＭ１１４は動作をジェスチャの過程で実行する。何れのケースでも、ＩＢＳＭ１１４は、同時におよび／または連続して発生する２つ以上のジェスチャを解釈し、そのジェスチャに関連する相応の動作を実行することもできる。何れのケースでも、ＩＢＳＭ１１４は、発生した（または現在発生している）ジェスチャの種類を分析し続け、適切と判断する場合にはそのジェスチャの解釈を変更することもできる。ＩＢＳＭ１１４のこれらの態様を明らかにする種々の例を説明する。
【００３８】
第２の役割では、ＩＢＳＭ１１４は、接触入力イベントと動き入力イベントとの両方を一緒に分析する。この場合、動き入力イベントはコンピューティング装置１００のバックグラウンドの動きに起因する。その動きは、ユーザの認識の背景にあるという意味で、バックグラウンドである。その動きは、（もしあれば）ユーザの任意の目標指向型の入力動作に対して偶然的であってもよい。このケースでは、ＩＢＳＭ１１４は、入力イベントに関連する入力動作の種類の解釈を試みて、例えば、ディスプレイ面への接触が意図的なものか意図的でないものかを判定する。ＩＢＳＭ１１４は次いで、その分析に応答して様々な動作を実施することができる。
【００３９】
セクションＡ．２（下記）では、フォアグラウンドの動作モードに関する追加の詳細を提供し、セクションＡ．３（下記）では、バックグラウンドの動作モードに関する追加の詳細を提供する。例の多くではタッチ入力を動き入力イベントとともに使用することを説明するが、これらの例の何れも、ペン入力（または他の任意の接触入力）を動き入力イベントとともに使用することにも適用される。
【００４０】
最後に、コンピューティング装置１００が、任意の１つまたは複数のアプリケーション・ソースから受け取った１つまたは複数のアプリケーション１１６を実行してもよい。アプリケーション１１６は、任意の高レベルの機能を任意のアプリケーション領域において提供することができる。
【００４１】
あるケースでは、ＩＢＳＭ１１４は、アプリケーション１１６に関して別個のコンポーネントを表す。別のケースでは、ＩＢＳＭ１１４に起因する１つまたは複数の機能を１つまたは複数のアプリケーション１１６によって実施することができる。例えば、一実装形態では、ＩＢＳＭ１１４が実施されたジェスチャを解釈することができ、アプリケーションが、その解釈に基づいて動作を選択し実行することができる。したがって、本明細書ではＩＢＳＭ１１４の概念は、特定の実装において任意の数のコンポーネントによって実装できる包括機能として自由に解釈される。
【００４２】
図２は、図１で導入したＩＢＳＭ１１４の別の説明を示す。図に示すように、ＩＢＳＭ１１４は様々な入力イベントを受け取る。例えば、ＩＢＳＭ１１４は、タッチ入力イベント、ペン入力イベント、方位入力イベント、動き入力イベント、画像検知入力イベント、等を受け取ることができる。これらのイベントに応答して、ＩＢＳＭ１１４は様々な出力動作を提供する。例えば、ＩＢＳＭ１１４は、意図的な動きベースのジェスチャの検出に応答して様々なコマンドを実行することができる。環境固有の要因に応じて、ＩＢＳＭ１１４はこれらの機能をユーザがジェスチャを実施する過程で、および／または、ジェスチャの完了時に、実施することができる。ＩＢＳＭ１１４はまた、様々な視覚、音声、触覚等のフィードバック・インジケータを提供して、最も実施された（または、実施されている）可能性のあるジェスチャの現在の解釈を示すことができる。代替または追加として、ＩＢＳＭ１１４は、入力動作が少なくとも部分的に意図的ではなかったと判定する場合は、接触入力イベントの一部を拒否することができる。代替または追加として、ＩＢＳＭ１１４は、（ディスプレイの状態および／またはアプリケーションの状態などの）状態を、入力動作の発生前の時点に復元することができる。代替または追加として、ＩＢＳＭ１１４は、接触入力イベントの解釈を補正して、入力動作の少なくとも一部が意図的ではないとＩＢＳＭ１１４が判定するときに動き入力イベントの影響を除去することができる。代替または追加として、ＩＢＳＭ１１４は、その入力動作の理解に基づいてコンピューティング装置１００の構成をなんらか調整して、例えば、さらに意図的な接触入力イベントをより効率的に受け取って意図的でない接触入力イベントの影響を最小化することができる。代替または追加として、ＩＢＳＭ１１４は、上述のフィードバック・インジケータを、その入力イベントの現在の解釈に基づいて、例えば、その現在の解釈が以前の解釈と異なりうる限り、修正または除去することができる。
【００４３】
説明したように機能するために、ＩＢＳＭ１１４は一連の分析モジュールを取り込むことができる。この場合、様々なジェスチャおよびバックグラウンドの動きのシナリオの検出が、それぞれの異なる分析モジュールを利用してもよい。任意の分析モジュールが１つまたは複数の技法に依存して入力イベントを分類することができる。その１つまたは複数の技法には、パターン・マッチング技法、ルール・ベースの技法、統計的技法等が含まれる。例えば、各ジェスチャまたはバックグラウンドのノイズ・シナリオを、入力イベントの特定の痕跡パターン（telltale pattern）により特徴付けることができる。特定の一連の入力イベントを分類するために、特定の分析モジュールがこれらの入力イベントを既知のパターンのデータストアに対して比較することができる。ジェスチャまたはバックグラウンドのシナリオの区別を支援できる代表的な特徴には、接触を適用してその後除去するやり方、（全てである場合）接触を適用している間に接触を動かすやり方、動き入力イベントの規模、動き入力イベントの特定の信号形状および他の特徴等が含まれる。上述したように、分析モジュールは、その結論を、到着した新たな入力イベントに関して継続的にテストすることができる。
【００４４】
図３は、図１のコンピューティング装置１００を使用できる例示的なシステム３００を示す。このシステム３００では、ユーザはコンピューティング装置１００と相互作用して入力イベントを提供し出力情報を受け取る。コンピューティング装置１００を、任意の種類の装置として物理的に実装することができる。任意の種類の装置には、任意の種類のハンドヘルド装置ならびに任意の種類の伝統的な固定装置が含まれる。例えば、コンピューティング装置１００を、携帯情報端末、モバイル通信装置、パッド・タイプの装置、電子書籍リーダ装置、ハンドヘルド・ゲーム装置、ラップトップ・コンピューティング装置、パーソナル・コンピュータ装置、ワークステーション装置、ゲーム・コンソール装置、セットトップ・ボックス装置等として実装することができる。さらに、コンピューティング装置１００が、１つまたは複数の装置の部分を含むことができ、その一部（または全部）がディスプレイ面の部分を有してもよい（またはそのどれもディスプレイ面の部分を有さなくてもよい）。
【００４５】
図３は、コンピューティング装置１００の代表的（であるが非包括的）な実装形態の集合を示す。シナリオＡでは、コンピューティング装置１００は、任意の大きさのハンドヘルド装置である。シナリオＢでは、コンピューティング装置１００は、複数の装置部分を有する電子書籍リーダ装置である。シナリオＣでは、コンピューティング装置１００は、例えば、パッド・タイプの入力装置を含み、例えば、それによりユーザは、タッチおよび／またはペンのジェスチャを、表示機構１０２のディスプレイ面ではなく（またはそれに加えて）パッド・タイプの入力装置の表面で行う。パッド・タイプの入力装置を、表示機構１０２と統合すること、または、表示機構１０２から分離すること（またはそれらの何らかの組合せ）が可能である。シナリオＤでは、コンピューティング装置１００は、任意の大きさのラップトップ・コンピュータである。シナリオＥでは、コンピューティング装置１００は、任意の種類のパーソナル・コンピュータである。シナリオＦでは、コンピューティング装置１００は、壁掛けタイプの表示機構に関連付けられる。シナリオＧでは、コンピューティング装置１００は、卓上の表示機構等に関連付けられる。
【００４６】
１つのシナリオでは、コンピューティング装置１００は、任意の他の機能と相互作用することなくローカル・モードで動作することができる。代替または追加として、コンピューティング装置１００が１つまたは複数の任意の種類のネットワーク３０４を介して任意の種類のリモート・コンピューティング機能３０２と相互作用することができる。例えば、リモート・コンピューティング機能３０２が、コンピューティング装置１００により実行できるアプリケーションを提供することができる。１つのケースでは、コンピューティング装置１００がそのアプリケーションをダウンロードすることができる。別のケースでは、コンピューティング装置１００が、ウェブ・インタフェース等を介してそのアプリケーションを利用することができる。リモート・コンピューティング機能３０２はまた、ＩＢＳＭ１１４の１つまたは複数の任意の態様を実装することができる。したがって、任意の実装において、コンピューティング装置１００のコンポーネントといわれる１つまたは複数の機能をリモート・コンピューティング機能３０２により実装することができる。リモート・コンピューティング機能３０２を、１つまたは複数のサーバコンピュータ、データストア、ルーティング機器等を用いて物理的に実装することができる。ネットワーク３０４を、任意の種類のローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク（例えば、インターネット）、またはそれらの組合せにより実装することができる。ネットワーク３０４を、任意のプロトコルまたはプロトコルの組合せによって支配される、無線リンク、ハードワイヤード・リンク、ネーム・サーバ、ゲートウェイ等の任意の組合せにより物理的に実装することができる。
【００４７】
Ａ．２．フォアグラウンド関連の動き
このセクションでは、ユーザがコンピューティング装置１００を意図的なジェスチャの一部として意図的に動かすかまたは叩くケースでのＩＢＳＭ１１４の動作を説明する。一般に述べると、任意の種類の動きを取り込むジェスチャを定義することができる。ここで、述べたように、動きという用語は本明細書では広い解釈を与えられる。幾つかのケースでは、ジェスチャは、コンピューティング装置１００を初期の方位に関して所定の方位に動かすことを必要とする。代替または追加として、ジェスチャは、所定の動き（例えば、経路に沿った動き、振動の動き等）をコンピューティング装置１００に適用することを必要としてもよい。動きを、速度、加速度、方向、周波数、等のパラメータの任意の組合せにより特徴づけることができる。
【００４８】
幾つかのケースでは、ジェスチャは、（タッチ装置および／またはペン装置等を介して）動きとともに接触の連結適用を必要とする。例えば、ユーザがディスプレイ面のオブジェクトをタッチし次にコンピューティング装置１００を所定の方位に動かし、および／または、コンピューティング装置１００を所定の動的な方法で、例えば、所定のジェスチャの経路をなぞることによって、動かしてもよい。ＩＢＳＭ１１４は、結果の入力イベントを、ディスプレイ面上の指定のオブジェクトまたは他のコンテンツ（例えば、ユーザが指またはペン装置でタッチしているオブジェクト）に関して何らかの動作を行うという要求として解釈することができる。このケースでは、接触入力イベントは、時間において少なくとも部分的に動き入力イベントと重複する。他のケースでは、ユーザは、コンピューティング装置１００に接触を適用し、次いで何らかの痕跡の動き（telltale movement）をコンピューティング装置１００に適用し、または、最初に何らかの痕跡の動きをコンピューティング装置１００に適用して次いでコンピューティング装置１００に接触を適用してもよい。ジェスチャは、１つまたは複数の追加の逐次的な接触段階（複数可）および／または動き、および／または、１つまたは複数の追加の同時接触段階（複数可）および動きを含むことができる。これらのケースでは、接触入力イベントを動き入力イベントと任意の方法で交互に配置してもよい。換言すれば、接触入力イベントが動き入力イベントと時間的に重複する必要はない。他のケースでは、ジェスチャが単に、所定の動きをコンピューティング装置１００に適用することを必要としてもよい。他のケースでは、ユーザが２つ以上のジェスチャを同時に適用してもよい。他のケースでは、ユーザが、別のジェスチャ等にシームレスに遷移するジェスチャを適用してもよい。以下の説明では、これらの一般的な点を特定の例に関して示す。これらの例は代表的であって、コンピューティング装置１００の意図的な動きに基づいて生成されうる多数のジェスチャを包括するものではない。
【００４９】
以下の例の多くでは、ユーザが表示機構１０２のディスプレイ面と接触しているとして示す。代替または追加として、ユーザは例えば図３のシナリオＣで示したパッド・タイプの入力装置と相互作用することができる。さらに、多くのケースでは、例えば、ユーザは２つの手のアプローチを用いて選択を行うとして示されており、この場合、ユーザは装置を片方の手で保持し、もう一方の手の１本の（または複数本の）指で選択を行う。しかし、これらのケースの何れにおいても、ユーザは、代わりに、装置を保持している手の親指（または手の他の部分）で選択を行うことができる。最後に、ユーザの手への一般的な言及は、手の任意の部分を包含するとして理解されるべきである。
【００５０】
下記の例の何れにおいても、コンピューティング装置１００は、ジェスチャが認識され対応する動作がまさに適用されようとしているかまたは適用されている過程にあることを示す、任意の種類のフィードバックをユーザに提示することができる。例えば、コンピューティング装置１００は、視覚フィードバック・インジケータ、音声フィードバック・インジケータ、触覚（例えば、振動）フィードバック・インジケータ等の任意の組合せを提示することができる。非視覚フィードバック・インジケータの使用は幾つかのケースにおいて有用でありうる。なぜならば、ユーザがコンピューティング装置を動かしている間に視覚インジケータに気づくのは困難であるかもしれないからである。別の一般的な特徴によれば、コンピューティング装置１００は、ユーザが任意の意図しないジェスチャの影響を除去できるようにするための取消コマンドを提示することができる。
【００５１】
図４は、ユーザが、手４０４（または、図示していないが、２つの手）でコンピューティング装置４０２を掴むシナリオを示している。ユーザは次にコンピューティング装置４０２を、その遠位端４０６が矢印４０８の方向に下方に動くように回転させる。補完的な動きにおいて、ユーザはコンピューティング装置４０２を、その遠位端４０６が矢印４０８の反対方向に上方に動くように回転させることができる。
【００５２】
図５は、ユーザがコンピューティング装置５０２を手５０４で掴むシナリオを示している。ユーザは次にコンピューティング装置５０２を、その側端５０６が矢印５０８の方向に上方に動くように回転させる。補完的な動きにおいて、ユーザはコンピューティング装置５０２を、その側端５０６が矢印５０８の反対方向に下方に動くように回転させることができる。
【００５３】
図示していないけれども、別の回転では、ユーザはコンピューティング装置を床と平行な平面内で回転させることができる。より一般には、これらの３つの回転軸は代表的なものにすぎず、ユーザはコンピューティング装置を任意の平面における任意の回転軸に関して回転させることができる。さらに、ユーザは、様々な種類の回転の動きおよび／または並進の動きを複合的なジェスチャへと結合することができる。
【００５４】
図６は、図４に示す種類の回転の動きを取り込む１つのジェスチャを示している。このケースでは、ユーザの意図が、コンピューティング装置６０４のディスプレイ面に表示されるオブジェクト６０２に関して何らかの機能を実施することであると仮定する。例えば、ユーザはオブジェクト６０２にズームインしてオブジェクト６０２を拡大したいかもしれない。ジェスチャの一部として、ユーザは、例えば（ある単に代表的なケースにおいて）オブジェクト６０２に自分の親指でタッチすることにより、オブジェクト６０２に接触を適用する。このケースでは、ズーム動作の拡大の中心が、ディスプレイ面の親指の位置に関連する点（ｘ、ｙ）に対応してもよいことに留意されたい。あるいは、拡大の中心が、親指の位置に関連する点（ｘ、ｙ）からの固定のオフセットに対応してもよい。このケースでは、ズーム動作を、親指の下方ではなく（１例では）親指の直上の点で生成する。別の例では、ユーザが、オブジェクト６０２を介して値を入力したいかもしれない。これを行うために、ユーザは、オブジェクトにタッチして値を増加させる（図示していない他の何らかのオブジェクトをタッチして値を減少させる）ことができる。
【００５５】
これらのシナリオでは、ユーザがコンピューティング装置６０４を保持する角度により、動作が行われる速度、例えば、（上述の第１の例では）ズームが発生する速度または（上述の第２の例では）数値フィールドの数字が増加または減少する速度等を制御する。角度を、ユーザがオブジェクト６０２にタッチするときのコンピューティング装置６０４の初期方位に関して測定してもよい。あるいは、角度を、ユーザが痕跡の回転の動き（telltale rotational movement）を開始するときの装置の初期方位に関して測定してもよい。痕跡の回転の動きは、一般に、タッチ動作（または他の接触動作）と同時に起こり、幾つかのケースではそのような痕跡の動きは接触の直後に行われ、他のケースでは接触の直前に行われることが可能である。
【００５６】
一般に述べると、回転ベースのジェスチャを実施するために、ユーザはコンピューティング装置６０４を手６０６で（または２つの手で）保持し、オブジェクト６０２にタッチし、コンピューティング装置６０４を傾けることができる。すなわち、ユーザが動作の速度を大幅に増速させたい場合、ユーザはコンピューティング装置６０４を元の方位に関して大幅に傾ける。ユーザが動作の速度を小幅に増速させたい場合、ユーザはコンピューティング装置６０４を小幅に傾けることができる。ユーザは、傾斜角を減少させることで速度を任意の時点で減少させることができる。他のケースでは、ＩＢＳＭ１１４が様々な動作を初期の傾斜角に関して様々な回転方向に対応付けることもできる。例えば、ユーザは、コンピューティング装置６０４を下方に傾けることによりオブジェクト６０２にズームインし、コンピューティング装置６０４を上方に傾けることによりオブジェクト６０２にズームアウトすることができる。小さな故意でない速度変化を防止するため、ＩＢＳＭ１１４は速度の変化が生じない初期傾斜角の範囲を組み込むことができる。ユーザがこの無応答幅の端の閾値を越える場合、ＩＢＳＭ１１４は速度を変更し始める。そのような閾値を、初期傾斜角に関する両方の回転方向において定義することができる。
【００５７】
ＩＢＳＭ１１４は、傾斜角をズーム量に対応付けるための任意の種類の機能を適用することができる（または、どのような動作も傾斜角に対応付けられる）。１つのケースでは、ＩＢＳＭ１１４が線形の速度関数を適用することができる。別のケースでは、ＩＢＳＭ１１４が任意の種類の非線形の速度関数を適用することができる。例えば、後者のケースに関して、ＩＢＳＭ１１４は、慣性ベースの関数、任意の種類の制御システム機能等を適用することができる。
【００５８】
図６の例では、ユーザはパン・コマンド（panning command）をコンピューティング装置６０４が提示するコンテンツに適用することもできる。例えば、上述のように、ユーザは、コンピューティング装置６０４を所定の方位に回転させるとともに、１本の指でオブジェクト６０２をタッチすることができる。これにより、オブジェクト６０４に関係するコンテンツの一部を拡大することができる。同時に、または交互に、例えば指でコンテンツにタッチして指を所望の方向に動かすことで、ユーザは自分の他方の手（または同じ手）を用いてコンテンツを横方向にパンすることができる。図６の実施形態は、この種類の複雑な制御に適合する。なぜならば、その実施形態では、ユーザの一方の手が、パン・タイプのジェスチャ（または任意の他の種類の意味あるジェスチャまたは入力コマンド）を行うために自由になっているからである。交互に行う場合は、この例はまた、どのように一方のジェスチャ（装置の回転によるズーム）を（指をディスプレイ面にわたって動かすことによるパンのような）別のジェスチャとシームレスに統合できるかの実証である。
【００５９】
さらに他のケースでは、ユーザはディスプレイ面上の任意の特定のオブジェクトを指定せずに上述の回転の動きを行うことができる。それに応答して、ＩＢＳＭ１１４はズーム（または任意の他の所定の動作）をディスプレイ面に提示されたコンテンツの全てに、または、環境固有のシナリオのコンテキストにおいて適切な任意の他のグローバル・コンテンツに適用することができる。
【００６０】
図７は、図６のシナリオと同様な概念を示している。ここで、ユーザはコンピューティング装置７０２を一方の手７０４で保持する（この特定のケースでは、ユーザはディスプレイ面のどの部分も手７０４でタッチしていない）。ユーザは次いで自分の他方の手７０８でスクロール機構７０６を操作する。説明を明確にするために、図７は、スクロール機構７０６が明示的なスクロール・ハンドルに関連づけられていることを示している。しかし、他のケースでは、スクロール機構を、ディスプレイ面に提示される任意のコンテンツにタッチしてそのコンテンツを動かすことにより、起動することができる。この動作が、従来式のスクロール動作を実行する。さらに、ユーザはコンピューティング装置７０２を初期位置から傾けて、スクロールが行われる速度を増速および減速させることができる。図７に示すシナリオは、良好なユーザ・エクスペリエンスを提供する。なぜならば、そのシナリオが、長いコンテンツ・アイテムを迅速に進むための便利な手段を提供し、望む場合にはコンテンツ・アイテムをよりゆっくりと進むための手段も提供するからである。
【００６１】
図６および７の例では、コンピューティング装置（６０４、７０２）は、初期開始位置に関する装置（６０４、７０２）の方位により支配される動作を提供する。追加または代替として、コンピューティング装置は、ユーザが装置を回転させるかまたは他の何らかの痕跡の動きを実施する速度に対応する動作を提供することができる。例えば、図６の例では、図示したように、ユーザは１本の指でオブジェクト６０２にタッチし、コンピューティング装置６０４を下方向に傾けることができる。ＩＢＳＭ１１４は、ユーザがこの傾ける動きを行う速度を、何らかの所定の動作が行われる速度を示すものとして解釈する。例えば、ユーザがコンピューティング装置６０４を下方向に（釣竿で釣り糸を投げるように）素早く傾ける場合、ＩＢＳＭ１１４はズーム・レベルを素早く増大（または減少）させることができる。または、オブジェクト６０２がスクロール・コマンドと関係すると仮定する。ＩＢＳＭ１１４は、ユーザの「釣り糸を投げる」動作を、大きなドキュメントを素早くスクロールする要求を示すものとして解釈することができる。例えば、ユーザは装置を図示したように下方に繰り返しスナップして、長い文書を連続的に大きく飛ばす（または、文書の先頭または終わりへ離散的に飛ぶ）ことができる。この例示的な動作のモードでは、ＩＢＳＭ１１４を、下方へのスナップを終えた後にユーザがコンピューティング装置を初期位置に戻すときのコンピューティング装置の動きを無視するように構成することができる。
【００６２】
図８は、図５に示した回転の動きを取り込むシナリオを示している。ここで、ユーザの意図は、元のページをマークして、文書内の別のページに進み、次いで元のページに戻るように指を適用することであると仮定する。これを行うために、ユーザはコンピューティング装置８０２を手８０４で保持してもよい。ユーザは指８０６をタブ８０８に置いて、マルチパートのコンテンツ・アイテム内の特定のページまたは他の位置を指定してもよい。ユーザが次にマルチパートのコンテンツ・アイテムの後続のページまたは他の部分をめくると仮定する。元のページに戻るために、ユーザは、本のページをめくるように、コンピューティング装置８０２を矢印８１０の方向へめくり上げることができる。これにより、元のページがコンピューティング装置８０２のディスプレイ面に復元される。
【００６３】
上記のシナリオを任意の方法で変更することができる。例えば、タブ８０８を、ディスプレイ面の別の位置に置くか、または、他の何らかの視覚的支援を選択して完全に除外することができる。あるいは、コンピューティング装置８０２が、全てのそのような永続的な視覚的支援を除外することができる。代替または追加として、コンピューティング装置８０２は、ブックマークとして解釈されるようにユーザが指をディスプレイ面に置くときに動的に起動される、視覚、音声、および／または触覚のフィードバック・インジケータ等を使用することができる。コンピューティング装置８０２はまた、例えば、ページがめくられているという視覚的なシミュレーションを表示することにより、ページめくり動作をユーザに伝達する任意の種類の適切な視覚体験を提供することができる。さらに、後述するように、図８に示す相互作用を、２画面装置で実現することができる。ここで、ユーザは一方の装置部分を保持し、他方の装置部分を回転させて「前にめくる」動作を起動してもよい。
【００６４】
図８に示すめくりジェスチャを使用して、例えば特定の環境またはアプリケーションで定義される、他のめくりの動作をディスプレイ面で実現することができる。１つの単に例示的なケースでは、コンピューティング装置８０２のディスプレイ面が複数の側面、次元、面等を有する任意の種類のオブジェクト８１２を表示すると仮定する。ユーザは、図８に示すめくりの動きを実行することにより別の側面に進むことができる。これには、オブジェクト８１２をその側面で傾けてオブジェクト８１２の新たな上部を表示する効果がある。ユーザはこの種類の動作を行って、様々なアプリケーション、オプション、フィルタ、ビュー等を切り替えることもできる。ユーザはまた、この種類の動作を実施して、第２の下層のオブジェクトの上部に提示される第１のオブジェクトを取り除くことができる。すなわち、ユーザは、コンピューティング装置８０２を素早く傾けて、重なっているオブジェクトを下層のオブジェクトの片側に動かし、それにより下層のオブジェクト（複数可）が現れるようにし、ゆえに重なったオブジェクトでの動作をより簡単および直感的にすることができる。ユーザは、この傾き動作を繰り返し行って、オブジェクトを一定量（ここで、その量をアプリケーション固有に定義することができる）連続的に回転することができ、または、連続的に層を取り除くことができる。
【００６５】
図９は、図８に関して上述した同一の基本的なページめくりジェスチャを示しているが、このケースでは、電子書籍リーダ・タイプのコンピューティング装置９０２のコンテキストで示す。ここで、ユーザは自分の親指９０４（または他の指）をコンピューティング装置９０２のディスプレイ面の左下方の余白（または他の何らかの位置）に付けてもよい。このブックマーク動作により元のページをマークする。次に、ここでも、ユーザが文書の後続のページを電子的にめくると仮定する。１つのケースでは、元のページに戻るために、ユーザが次にリーダ・タイプのコンピューティング装置９０２の１つの装置部分を、図８に示すように上方にめくることができる。ＩＢＳＭ１１４はこの痕跡めくり（telltale flipping）ジェスチャを動き検知入力機構に基づいて検出することができる。代替または追加として、ＩＢＳＭ１１４がこのジェスチャを、互いに関する２つの表示部分（９０６、９０８）の動きに基づいて、例えば、（装置部分の間の角度を検出する）角度センサから検出されるように、検出することができる。
【００６６】
別のケースでは、ＩＢＳＭ１１４がページめくりジェスチャをより明確に区別できるようにするために、ユーザはコンピューティング装置９０２の２つの装置部分（９０６、９０８）を閉じて、図示したように自分の親指９０４（または他の指）を２つの装置部分（９０６、９０８）で挟んでもよい。ユーザは次に上述のめくりの動きを実行して元のページに戻ってもよい。コンピューティング装置９０２は、装置部分（９０６、９０８）の間の角度を検知することによって、ユーザが親指９０４の周りの装置部分（９０６、９０８）を閉じたと判定することができる。上述のめくり動作がなくとも、２つの装置部分（９０６、９０８）の間に置かれた親指を置く動作により、ブックマーク位置を登録する有用な目的を果たす。
【００６７】
図１０は、ユーザがコンピューティング装置１００２を手１００４で保持し、コンピューティング装置１００２を何らかの対象物の方向、または、対象物の何らかの割り当てられた代理となるものの方向を指すというシナリオを示している。ユーザは次に、他の手１００６（または同じ手）を使用して、コンピューティング装置１００２のディスプレイ面上の幾つかのオブジェクト１００８（例えば、文書、コマンド、等）を特定してもよい。ＩＢＳＭ１１４は、このジェスチャをオブジェクト１００８のコピーを対象物へ送信する要求として、または、オブジェクト１００８の内容および／または状況を対象物と同期する要求として、または、オブジェクト１００８および対象物に関する任意の他のアプリケーション固有な目的を達する要求として、解釈する。ＩＢＳＭ１１４は、コンピューティング装置１００２を任意の種類の動きタイプの入力機構に基づいて指し示す方向を決定することができる。ＩＢＳＭ１１４は、対象物の相対的な位置を様々に、例えば、対象物の位置を手動で前もって登録すること、対象物の位置を対象物が発する信号に基づいて自動的に検知すること、対象物の位置をコンピューティング装置１００２自体が実行する画像キャプチャ技法に基づいて自動的に検知すること等により、決定することができる。代替または追加として、ＩＢＳＭ１１４はコンピューティング装置１００２の方位を決定することができ、対象のコンピューティング装置の補完的なＩＢＳＭがその対象の装置の方位を決定することもできる。ＩＢＳＭ１１４は次に、コンピューティング装置１００２が対象のコンピューティング装置に向けられていることを、各々のユーザが自分の装置を互いに対して向けているかどうかを判定することによって、判定することができる。他のケースでは、１人または複数のユーザが共有の対象オブジェクトを指しているかもしれず、各々のコンピューティング装置（複数可）のＩＢＳＭ（複数可）がこの事実を上述の方法の何れかで検出することができる。例えば、共有の対象オブジェクトが共有の周辺装置（例えば、プリンタ、ディスプレイ装置等）に対応してもよい。
【００６８】
図１０に示すシナリオの１つの例では、ユーザはディスプレイ面上のファイルの表現にタッチすることでファイル（または他のコンテンツ・アイテム）を選択することができる。ユーザは次に、装置をゴミ箱に向けて、ファイルを削除することができる（ここで、ゴミ箱の位置は、予め登録されているか、または、そうでなければ上述の１つまたは複数の方法で決定可能であると仮定する）。変形においては、ユーザはディスプレイ面上のファイルの表現にタッチして、コンピューティング装置１００２をディスプレイ面自体のゴミ箱アイコンに傾けて、それゆえ比喩的にファイルをゴミ箱に移すことができる。他の多くの応用例が可能である。１つのケースでは、ＩＢＳＭ１１４は、取消コマンドの視覚的表現を、コンテンツ・アイテムをこのように削除するときは常に、提示することができる。これにより、ユーザは意図しない削除の効果を覆すことができる。
【００６９】
図１１は、ユーザがコンピューティング装置１１０２を手１１０４で保持し、コンピューティング装置１１０２がユーザの他の手１１０６の指または他の手１１０６の他の部分と接触するようにコンピューティング装置１１０２を動かす、別のシナリオを示している。これは、ユーザが手１１０６を用いてコンピューティング装置１１０２のディスプレイ面を押し下げる従来の動きと対照的である。ＩＢＳＭ１１４は任意の種類のコマンドをこの動きと関連付けることができる。この種類のジェスチャを様々な予防手段と組み合わせてその故意ではない起動を防止することができる。例えば、図示していないが、ユーザが左手１１０４の親指を用いて、アイコン等と接触して、この特定のジェスチャ・モードを可能とすることができる。
【００７０】
別のケース（図示せず）では、ユーザはディスプレイ面の様々なオブジェクトを様々な強さで、例えば、通常の力でまたは大きな力で、タップすることができる。ＩＢＳＭ１１４は、これらの２つの種類のタッチ接触を異なるやり方で解釈することができる。ＩＢＳＭ１１４は第１の種類の動作を優しいタップに対して実施し、第２の種類の動作を激しいタップに対して実施することができる。起動されたこれらの動作はアプリケーション固有である。例えば、アプリケーションが優しいタップを使用して電話に出て、激しいタップを使用してその電話を無視することができる。または、アプリケーションが軽いタップを使用して着信音を弱め、激しいタップを使用して電話を無視することができる。
【００７１】
この種類のジェスチャを可能とするために、動きタイプの入力機構（複数可）１１０は、例えば、指を優しくディスプレイ面に置いてディスプレイ面を「通常の力で」タップすること、および激しくディスプレイ面をタップすることに対応する入力イベントを提供することができる。ＩＢＳＭ１１４は次に、これらの入力イベントに関連する入力信号を調べて、実施した入力イベントの種類を分類することができる。例えば、ＩＢＳＭ１１４は、大規模な信号の急上昇を有する入力イベントを、激しくタップするジェスチャを示すものとして解釈することができる。追加または代替として、ＩＢＳＭ１１４は（例えば１つまたは複数のマイクロフォンから受信した）音声信号、および／または、（圧力センサ（複数可）等のような）任意の他の入力機構（複数可）から受信した信号を使用して優しいタップと激しいタップを区別することができる。
【００７２】
関連するケースでは、ＩＢＳＭ１１４は、ユーザが最初に指をディスプレイ面に適用した力の大きさに基づいて様々な種類のドラッグの動きを区別することができる。これにより、例えば、ＩＢＳＭ１１４は軽いスワイプと激しくスクリーンを叩いてドラッグすることとを区別することができる。ＩＢＳＭ１１４は、任意の動作を様々な種類のタップ・アンド・ドラッグのジェスチャに再び対応付けることができる。
【００７３】
図１２は、ユーザが、２つの装置部分（１２０４、１２０６）を有するコンピューティング装置１２０２を手１２０８で保持する、別のシナリオを示している。他の手１２１０で、ユーザは、２つの装置部分（１２０４、１２０６）に提供された、２つの装置部分（１２０４、１２０６）の間の所定の角度１２１２を有するディスプレイ面にタッチする。ＩＢＳＭ１１４はこのジェスチャを任意の種類の動作に対応付けることができる。このジェスチャの変形を、２つの装置部分（１２０４、１２０６）の間の角度１２１２を動的に変更することによって、および／または、２つの装置部分（１２０４、１２０６）のディスプレイ面に置いた指および親指の位置を動的に変更することによって、定義することができる。
【００７４】
図１３は、シナリオＡにおいて、ユーザが手１３０２を用いて独特な指１３０４の組合せをコンピューティング装置１３０６のディスプレイ面に置く、より一般的なジェスチャを示している。他の手１３０８で、ユーザは、例えばコンピューティング装置１３０６を特定の方向に振ることによって、コンピューティング装置１３０６を任意の明確な方法（telltale manner）で動かし始めてもよい。独特なマルチ・タッチのタッチジェスチャが存在するので、コンピューティング装置１３０６がこのジェスチャをコンピューティング装置１３０６の偶然の動作と混同する可能性は低い。ユーザは、様々なマルチ・タッチのジェスチャを、様々なコマンドを伝達する同じ基本の動きとともに適用することもできる。
【００７５】
さらに、繰り返すと、ユーザは任意の所定の種類の接触を個々のオブジェクトまたはディスプレイ面上の特定の領域に対して適用し、次いで所定の動きをコンピューティング装置に適用することができる。集中的な接触と動きを組み合わせることで、意図的なジェスチャ・ベースの動きを偶然的な動きと区別することを支援する。例えば、図１３のシナリオＢで示したように、ユーザは、コンピューティング装置１３１２のディスプレイ面上のオブジェクト１３１０にタッチしてコンピューティング装置１３１２を激しく振ることができる。ＩＢＳＭ１１４がこの動作を、指定のオブジェクト１３１０が前面に表示されるように、指定のオブジェクト１３１０を削除する要求、指定のオブジェクト１３１０に対して行われた最後の動作を取り消す要求、指定のオブジェクト１３１０を特定のフォルダに動かす要求、オブジェクト１３１０をシャッフルする要求のような、任意の所定の方法で解釈することができる。
【００７６】
別のケースでは、ユーザはディスプレイ面のオブジェクトにタッチすることができ、タッチするとＩＢＳＭ１１４がメニューを提供する。ディスプレイ面に依然としてタッチしている間に、ユーザは痕跡の動きをコンピューティング装置に対して適用することができる。ＩＢＳＭ１１４は、この結合動作をメニューを拡大する要求として解釈するか、または、特定の選択肢をメニューから選択する要求として解釈することができる。このアプローチでは、３つのステップ、即ち、（１）オブジェクトの選択、（２）動き検知ジェスチャ・モードの起動、（３）選択されたオブジェクト（複数可）へ適用するための特定のコマンドまたはジェスチャの選択、を単一の連続動作に統合することに留意されたい。選択および動きのジェスチャの他の例は、例えば、ズーム、スクロール、およびページめくりの例に関して上述した。
【００７７】
さらに、ＩＢＳＭ１１４は動的な動きジェスチャをコンピューティング装置の方位に基づいて様々に解釈することができる。例えば、第１のシナリオでは、ユーザがコンピューティング装置を自分の手で保持し、それを前後に振ると仮定する。第２のシナリオでは、ユーザがコンピューティング装置をテーブルに置き、コンピューティング装置をうつ伏せに置いて前後に揺らすと仮定する。ＩＢＳＭ１１４は、これらの２つのシナリオを、２つの別個の種類のジェスチャを伝達するとして解釈することができる。さらに、ＩＢＳＭ１１４が、動きベースのジェスチャを、ユーザがその時点で相互作用しているいかなるアプリケーション（複数可）のコンテキストでも解釈することができる。例えば、ＩＢＳＭ１１４は、同じ動きタイプのジェスチャを、それが２つの各々のアプリケーションのコンテキストで行われているときに異なる方法で解釈することができる。
【００７８】
最後に、図１４は、ユーザが、コンピューティング装置１４０２で提示されているコンテンツも回転させることがないように、コンピューティング装置１４０２を横長モードから縦長モードへ（またはその逆へ）回転させたいと思っているシナリオを示す。このタスクを実施するために、ユーザはディスプレイ面の任意の部分、例えば（これには限定されないが）隅１４０４にタッチすることができる。例えば、ユーザは、コンピューティング装置１４０２がテーブルのような平面に置かれている間に、手１４０６で行うジェスチャが示すように、ディスプレイ面を押し下げることができる。または、ユーザは、コンピューティング装置１４０２を保持しつつ、手１４０８で行うジェスチャが示すように、コンピューティング装置を摘むことができる。ユーザは次いでコンピューティング装置１４０２をほぼ９０度（または他の何らかのアプリケーション固有な回転量だけ）回転させる。一実装形態では、このジェスチャを認識すると、ＩＢＳＭ１１４はコンピューティング装置１４０２が自動的にテキストを回転させることを防ぐことができる。これと同じ動作を反対に実施することができる。すなわち、デフォルトでは、コンピューティング装置１４０２は、コンピューティング装置１４０２が回転するときにコンテンツを回転させない。コンピューティング装置１４０２が回転しているときにディスプレイ面に接触すると、コンテンツも回転する。回転は、接触点自体で定義される軸のような、任意の軸に関して行うことができる。
【００７９】
別の例では、ユーザは接触点を確立し次いでコンピューティング装置を回転させることができるが、接触点を確立した指（複数可）に関してコンピューティング装置を動かさない。例えば、ユーザはコンピューティング装置を摘んで、接触点を確立し、次いで長椅子またはベッドに横たわり、それを行う過程で、コンピューティング装置をその初期方位に関してほぼ９０度回転させることができる。このケースでも、ＩＢＳＭ１１４は装置の動きを接触点の適用とともに、コンテンツの回転を無効（または有効）にする指示として解釈することができる。
【００８０】
１つのケースでは、ユーザが接触点を取り除くときでも、コンピューティング装置は、コンピューティング装置が適切な方位に動かされた後に、回転のロックを維持することができる。このモードでの動作を完了すると、ユーザは次に、回転のロックを取り除くコマンドを明示的に起動することができる。追加または代替として、ユーザは装置の方位を変更して回転のロックを取り除くことができる。
【００８１】
Ａ．３．バックグラウンド関連の動き
このセクションでは、コンピューティング装置１００に対して適用した動きが意図的なジェスチャの意図的な構成要素ではなく、したがってバックグラウンドの動きを構成するときの、ＩＢＳＭ１１４の動作を説明する。ＩＢＳＭ１１４は、この動きの性質を解釈し、動きに作用して入力動作の正確な分析を強化することができる。このセクションで提示する例は、代表的であって包括的ではない。
【００８２】
図１５は、ユーザが手１５０４の指１５０２を用いてコンピューティング装置１５０６のディスプレイ面を押下する、第１のシナリオを示している。または、ユーザが指１５０２をディスプレイ面から離したと仮定する。この動作に応答して、ＩＢＳＭ１１４はタッチ入力イベントをタッチ入力機構（複数可）１０６から受け取る。これらのイベントは、ディスプレイ面との指１５０２の実際の（または間近の）接触、または、その接触の除去を登録する。ＩＢＳＭ１１４はまた、動き入力イベントを動きタイプの入力機構（複数可）１１０から受け取る。これらのイベントは、ユーザが自分の指１５０２をディスプレイ面に対して適用または除去したとき不用意に生じさせた動きを登録する。
【００８３】
第１の入力解釈モジュール１５０８は、例えば、その観点からタッチ接触が適用または除去された位置およびタイミングを決定することによって、タッチ入力イベントを分析することができる。第１の入力解釈モジュール１５０８は、その結論を主に、ユーザの指とディスプレイ面との間の接触の範囲（および／または形状）に基づく。第２の入力解釈モジュール１５１０は、例えば、その観点からタッチ接触が適用または除去された位置およびタイミングをその過程で生じたかもしれない任意のぶつかりあいとともに決定することによって、動き入力イベントを分析することができる。これが可能であるのは、タッチが適用または除去された位置およびタイミングも動き入力イベントから推論できるからである。より具体的には、第２の入力解釈モジュール１５１０は、その結論を部分的に、動きタイプの入力機構（複数可）１１０が提供する動きの信号の大きさ、一般的形状、および周波数特性に基づく。これにより、接触が適用または除去された時点を正確に示すことを支援することができる。第２の入力解釈モジュール１５１０はまた、その結論を、タッチの適用または除去の際にコンピューティング装置が動く方法に基づくことができる。これにより、接触が適用または除去されている位置を区別することを支援することができる。例えば、ユーザがコンピューティング装置を真っ直ぐに立てて保持し、隅をタップする場合、タッチが行われた位置を示す明確な方法でコンピューティング装置がロックされると期待することができる。
【００８４】
最終入力解釈モジュール１５１２が第２の解釈モジュール１５１０の結論を使用して、第１の解釈モジュール１５０８の結論を修正（例えば、補正）することができる。例えば、最終入力解釈モジュール１５１２は、正しい位置（ｘ、ｙ）でタッチされたが、タッチに関連する不用意な動きのため、位置（ｘ＋Δｘ、ｙ＋Δｙ）への動きがあったと結論付けることができる。ユーザが自分の指を離すとき、同様な不用意な動きが生ずる可能性がある。代替または追加として、最終入力解釈モジュール１５１２は、タッチが適用または除去されたと考えられるタイミングを調整することができる。別の例として、接触が、関連する動きの信号が殆どまたは全くなく登録された場合は、最終入力解釈モジュール１５１２は、接触がディスプレイ面との不用意な接触を表すであろうと結論付けてもよい。ＩＢＳＭ１１４は、ゆえに、この接触を無視するか、または、「通常の」接触動作と別に扱うことができる。
【００８５】
ＩＢＳＭ１１４は、最終入力解釈モジュール１５１２が到達した結論に基づいて様々な動作を行うことができる。１つのケースでは、ＩＢＳＭ１１４は、例えばユーザがタッチ接触を適用または除去した位置および／またはタイミングの指示を改良することによって、タッチ入力イベントを補正して、検出された偶然の動きを考慮することができる。さらに、ＩＢＳＭ１１４は、ディスプレイ面および／またはアプリケーションを、任意の不用意な動きが発生したかもしれない時点より前の状態に復元することができる。
【００８６】
図１５の場合、複数のコンポーネント解釈モジュールが結論を最終解釈モジュール１５１２に供給する。しかし別の実装では、最終解釈モジュール１５１２は、入力機構が提供する生の入力イベントに対して、即ち、コンポーネント解釈モジュールなしに、分析を行うことができる。
【００８７】
図１５の基本的な機能を使用して、ジェスチャの認識を強化することもできる。例えば、（ディスプレイ面で行った接触の性質の観点からは）めくりタイプの動きが素早いスクロール動作と似ているかもしれないが、ユーザはこれらの２つの動作を行って異なる入力コマンドを伝達しているかもしれない。これらの２つの入力動作を区別することを支援するために、ＩＢＳＭ１１４は結果の接触入力イベントを動き入力イベントとともに解釈することができる。動き入力イベントは、めくりの動きがスクロール動作と異なる動きのプロフィールを有する限り、２つの入力動作の区別を支援することができる。
【００８８】
ＩＢＳＭ１１４はまた、動きの信号を用いて、反対の手の人差し指を用いてスクロールすることに対してコンピューティング装置を保持している手の親指でスクロールすることなどの、特定の動作を表現する様々な方法を検出してもよい。そのような状況を検出したときは、そのような状況を用いて、例えばＩＢＳＭ１１４がより正確にユーザの入力動作を区別できるようにすることにより、コンピューティング装置とのユーザの相互作用を最適化してもよい。例えば、コンピューティング装置が入力イベントの解釈を、コンピューティング装置に接触するためにどの指が使用されているかについての理解に基づいて、例えば、ユーザが親指でスクロールしていると判定されたときに軸外の動きをさらに許容できるようにすることによって、調節することができる。
【００８９】
別の例では、ＩＢＳＭ１１４は、ユーザがソフト（タッチ・スクリーン）キーボードをタイプするときにユーザが使用している指を決定することができる。１つのケースでは、ユーザは２つの親指でタイプするかもしれない。別のケースでは、ユーザは、装置を反対の手で保持しつつ１つの指でタイプするかもしれない。これらの２つのモードは、キー・ストライクを記述する異なる各動きのプロフィールを有する。ＩＢＳＭ１１４はこの異なる動きのプロフィールを使用して、ユーザが所与のキーを叩くためにどの方法を使用したかを推論するのを支援することができる。ＩＢＳＭ１１４は次に、各種のタッチ接触を解釈するときに適切なガウス分布を適用することができる。これにより、エラーの可能性を減らしつつタッチ・スクリーンのタイピングの効率性を高めることができる。
【００９０】
図１５の機能を使用して、完全に偶然である入力動作を検出することもできる。例えば、幾つかのケースでは、正当な入力イベントが１つまたは複数の所定の動きのプロフィールを有するかもしれず、一方、不用意な入力イベントが１つまたは複数の他の所定の動きのプロフィールを有するかもしれない。例えば、ディスプレイ面を人差し指で「綺麗に」タップすることが正当な入力動作を示すプロフィールを有し、例えば親指または小指でディスプレイ面を磨くことにより生じうる、偶然にディスプレイ面に接触することが不用意な入力動作を示すプロフィールを有するかもしれない。
【００９１】
図１６は、ユーザがコンピューティング装置１６０２を手で持ち上げ、または、コンピューティング装置１６０２を使用後に置く別のシナリオを示す。図１６のこの特定の例では、ユーザはコンピューティング装置１６０２を手１６０６でポケット１６０４に入れるプロセスにある。この状況では、ＩＢＳＭ１１４が、時間ウィンドウで所定の閾値を超えた動き入力イベントを動きタイプの入力機構（複数可）１１０から受け取ってもよい。入力イベントがまた、装置が普通でない視聴位置に動かされたことを示してもよい。ユーザが空間を通してコンピューティング装置１６０２を素早く動かしおよび倒してコンピューティング装置１６０２をポケット１６０４に入れた可能性があるので、大きな動きの入力イベントが生成される。また、ユーザが、コンピューティング装置１６０２をポケット１６０４に入れる過程でコンピューティング装置１６０２のディスプレイ面を不用意にタッチしたと仮定する。その場合、ＩＢＳＭ１１４はタッチ入力イベントが不用意なものである可能性があると（その大きな動き入力イベント、および場合によっては他の因子に基づいて）結論付けることができる。コンピューティング装置１６０２はまた光センサおよび／または近接センサを備えてもよい。光センサおよび／または近接センサは、例えばコンピューティング装置１６０２が暗い環境に動かされたことを光センサが突然に示したときに、コンピューティング装置１６０２がポケット１６０４に入れられたという事実を独立して確認することができる。ＩＢＳＭ１１４は次に、タッチ入力イベントを無視することでタッチ入力イベントに応答することができる。さらに、上述のように、ＩＢＳＭ１１４はディスプレイ面を不用意な入力動作より前の状態に復元することができる。追加または代替として、ＩＢＳＭ１１４は以前のアプリケーション状態を復元することができる。
【００９２】
例えば、ユーザが、装置を自分のポケットに入れる過程でコンピューティング装置のディスプレイ面にタッチしたと仮定する。ＩＢＳＭ１１４は、その動きのみに基づいて、そのタッチが不用意なものであったと結論付けてもよい。装置は次に、不用意なタッチにより引き起こされた任意のコマンドを「取り消す」ことができる。動きの情報が十分でない場合には、ＩＢＳＭ１１４は、光センサおよび／または他のセンサの出力に基づいて、タッチが不用意なものであったと結論付けることができる。コンピューティング装置１６０２は次に、再び不用意な接触の影響を除去することができる。
【００９３】
別のシナリオでは（図示せず）、ユーザはコンピューティング装置１６０２を、ガタガタ揺れるバスの乗車等のような、ノイズ環境（例えば、不安定な環境）で操作しているかもしれない。このケースでは、ＩＢＳＭ１１４は動き入力イベントを分析して、ノイズ環境を示す、コンピューティング装置１６０２の定期的な摂動を判別することができる。この状況を解決するために、ＩＢＳＭ１１４は、例えば偶然と評価されたタッチ入力イベントの部分を無視し、表示状態および／またはアプリケーション状態（複数可）を復元して間違った変化を除去することによって、上述の動作を実施することができる。追加または代替として、ＩＢＳＭ１１４は、動き入力イベントに関連するバックグラウンドのノイズを取り去るようにタッチ入力イベントの修正を試みることができる。追加または代替として、ＩＢＳＭ１１４は、ＩＢＳＭ１１４が妥当なタッチ・イベントが生じたと示す感度を低下させることができる。これにより、ユーザがより慎重に意図的なタッチ入力イベントを正確に入力するようにする。しかし、これはまた、ノイズ環境に起因する不用意な入力イベントをより効果的に無視するという望ましい効果を有する。
【００９４】
図１７は、ユーザが使用中にコンピューティング装置１７０２を手１７０４で保持するシナリオを示している。このケースでは、ユーザの親指１７０６が不用意にコンピューティング装置１７０２のディスプレイ面に接触するかもしれない。対照的に、図１８は、ユーザがコンピューティング装置１８０２をテーブル等に平らに置くシナリオを示している。ユーザは次に手１８０４を用いて、人差し指１８０６をコンピューティング装置１８０２のディスプレイ面の左下隅で押す。ＩＢＳＭ１１４はコンピューティング装置（１７０２、１８０２）の各方位を調べて、図１７で生じた親指の配置が図１８に示す指の配置と比較して不用意なものである可能性が高いと、これらの接触がディスプレイ面の同一の領域で発生し同様な形状を有する可能性があっても、結論付けることができる。この理由は、ユーザがコンピューティング装置１７０２を上方に保持するときは、ユーザがコンピューティング装置１７０２を図１７に示すように保持するのが自然であるからである。しかし、コンピューティング装置１８０２が図１８に示すようにうつ伏せに横たわっているときに、１本の指を偶然にディスプレイ面に置く可能性は低い。上述の動き分析では、方位に基づいて結論の確認を支援することができる。さらに、１つまたは複数の他のセンサ（例えば、光センサ、近接センサ等）が、コンピューティング装置１８０２の適切な位置（複数可）に置かれた場合は、コンピューティング装置が図１８に示すようにテーブルに平らに置かれているかどうかを判定するのを支援することができる。ＩＢＳＭ１１４は図１７に示す偶然のタッチを、タッチ入力イベントを無視する等の、上述の任意の方法で解決することができる。
【００９５】
図１７のケース（および、実際には全てのシナリオ）において、ＩＢＳＭ１１４は、接触入力イベントおよび動き入力イベントを解釈するときに、他の文脈的な因子を考慮することもできる。１つのそのような文脈的因子は、入力イベントが生じたときにユーザが相互作用しているアプリケーションである。例えば、第１のユーザが電子書籍リーダ・タイプの装置を用いてコンテンツを読んでいて、親指をページの特定部分に置くと仮定する。第２のユーザがウェブ・ページをスクロールしていて、親指をそのページの同じ一般的な部分に置くと仮定する。ＩＢＳＭ１１４は、親指の配置を、第２のシナリオと比べて第１のシナリオに対して意図的であると解釈する可能性が高いかもしれない。この理由は、第１のシナリオにおいてユーザが自分の親指をページ上に置いてそのページをブックマークしたかもしれないからである。さらに、誤ってページをブックマークする犠牲は無視でき、偶然に他のページへスクロールするかまたはめくる犠牲はユーザの現在のタスクを妨害するという観点から高い。
【００９６】
別の２画面のシナリオでは、ＩＢＳＭ１１４は動き入力機構を使用して、ユーザがコンピューティング装置を保持している方位を検知することができる。決定された方位は、ユーザが１つのディスプレイ部分を見ていて他方のディスプレイ部分は見ていないことを示すプロフィールに適合するかもしれない。すなわち、ユーザはディスプレイ部分のうち１つのみとの相互作用を最適化するように、コンピューティング装置の方向を決めたかもしれない。それに応答して、ＩＢＳＭ１１４は未使用と推定されたディスプレイ部分を低電力状態にすることができる。代替または追加として、ＩＢＳＭ１１４は、画像検知入力機構１１２のような他の入力機構を利用して、どのディスプレイ部分をユーザが見ているかを決定することができる。代替または追加として、幾つかの場合、ＩＢＳＭ１１４を、未使用のディスプレイ部分を介して受け取った入力イベントを無視して、それらの入力イベントを意図しない接触として分類するように構成することができる。
【００９７】
一般に、ＩＢＳＭ１１４は上述のシナリオを様々に実装することができる。１つのケースでは、ＩＢＳＭ１１４はデータストアを有することができる。データストアは、意図的な動作および意図的でない動作の両方を含む、様々な既知の動作の痕跡入力特性（telltale input characteristics）を記述する様々なプロフィールを提供する。ＩＢＳＭ１１４は次に、未知の入力動作に関連する入力イベントを、予め格納したプロフィールのデータストアと比較して、未知の入力動作の診断を支援することができる。データストアはまた、診断された後に入力動作を解決するために実行できる動作を示す情報を含むことができる。
【００９８】
代替または追加として、ＩＢＳＭ１１４は任意の種類のアルゴリズム技法を適用して接触入力イベントを動き入力イベントと組み合わせることができる。例えば、ＩＢＳＭ１１４は、ディスプレイ面上の可能なタッチ接触の位置を動き入力イベントに基づいて示す式を適用することができる。ＩＢＳＭ１１４は次に、どのように（動きのみに基づいて評価した）この位置を使用して接触入力イベントに基づいて評価される位置を補正できるかを示す、別の式を適用することができる。そのようなアルゴリズムの性質は装置固有であり、理論的分析および／または実験的分析に基づいて開発することができる。
【００９９】
Ｂ．例示的なプロセス
図１９および２０は、それぞれ、セクションＡで説明したフォアグラウンドおよびバックグラウンドの動作モードにおける図１のコンピューティング装置１００の動作を説明する手続き（１９００、２０００）を示している。コンピューティング装置の動作の基礎となる原理は既にセクションＡで説明したので、本セクションでは特定の動作を要約形式で説明する。
【０１００】
図１９は、コンピューティング装置１００の意図的な動きに応答してコンピューティング装置１００を制御するための手続き１９００を示している。ブロック１９０２で、ＩＢＳＭ１１４は第１の入力イベントを１つまたは複数の接触タイプの入力機構から受け取る。ブロック１９０４で、ＩＢＳＭ１１４は第２の入力イベントを１つまたは複数の動きタイプの入力機構から受け取る。第２の入力イベントは、意図的な方法におけるコンピューティング装置の動きを示すものである。図１９の右側の余白では、生じうる幾つかの可能な意図的な動きを列挙する。より一般には、ブロック１９０２および１９０４を任意の順序で行うことができ、および／または、これらの動作を重複させることができる。ブロック１９０６では、ＩＢＳＭ１１４は、可能であれば、ユーザが第１の入力イベントおよび第２の入力イベントに基づいて行った意図的なジェスチャを解釈する。ブロック１９０８では、ＩＢＳＭ１１４は、検出された意図的なジェスチャと関連する動作を適用する。この意味で、ブロック１９０６で行われた解釈により、その動作をブロック１９０８で実行することができる。ここで、ブロック１９０６および１９０８の動作を、同一のコンポーネントまたは異なる各コンポーネントにより実施することができる。図１９の右の余白では、起動できる数個の動作を列挙する。
【０１０１】
図１９に示すフィードバック・ループは、ＩＢＳＭ１１４が入力イベントを入力動作の時間的な進行において繰り返し分析することを示す。入力動作の過程において、ＩＢＳＭ１１４は、ＩＢＳＭ１１４が入力動作の性質を検出する信頼度を高めることができる。最初は、ＩＢＳＭ１１４が入力動作の性質を診断できないかもしれない。動作が進むと、ＩＢＳＭ１１４は次に比較的低い信頼度で動作を予測し、ＩＢＳＭ１１４が、実際には、入力動作を誤って解釈するかもしれない。入力動作がさらに進むと、ＩＢＳＭ１１４はその信頼度を高め、可能であれば、最終的に、発生した入力動作の種類を正確に決定する。または、ＩＢＳＭ１１４は、受け取っている入力イベントがもはやサポートしていない解釈を放棄することができる。ＩＢＳＭ１１４は、ディスプレイ面および／または任意のアプリケーションを上述のように動作前の状態に復元することによって、任意の不正確な仮定を「取り消す」ことができる。
【０１０２】
図２０は、コンピューティング装置１００の意図的でない動きに応答してコンピューティング装置１００を制御する手続き２０００を説明する。ブロック２００２で、ＩＢＳＭ１１４は第１の入力イベントを１つまたは複数の接触タイプの入力機構から受け取る。ブロック２００４で、ＩＢＳＭ１１４はコンピューティング装置１００の動きに応答して、第２の入力イベントを１つまたは複数の動きタイプの入力機構から受け取る。より一般的には、ブロック２００２および２００４を任意の順序で行うことができ、および／または、これらの動作を重複させることができる。このケースでの動きは、コンピューティング装置１００のバックグラウンドの動きを示し、ユーザが積極的に注目していない動きを意味する。図２０の右の余白では、生じうる可能なバックグラウンドの動きの一部を列挙する。ブロック２００６で、ＩＢＳＭ１１４は発生した入力動作の種類を、場合によっては他の因子と関連して、第１の入力イベントおよび第２の入力イベントに基づいて検出する。実際には、第２の入力イベントが第１の入力イベントの解釈を修正または制限する。ブロック２００８で、ＩＢＳＭ１１４は、ブロック２００６での入力イベントの種類の検出に応答して、適切な動作を適用することができる。ブロック２００６および２００８の動作を、同一のコンポーネントまたは異なる各コンポーネントによって実施することができる。図２０の右の余白では、ＩＢＳＭ１１４が実行できる可能な動作の一部を列挙する。
【０１０３】
図１９での説明と同様に、図２０で示すフィードバック・ループは、ＩＢＳＭ１１４が入力動作の過程を通して分析を繰り返して分析の信頼度を漸進的に高めることができることを示す。
【０１０４】
Ｃ．代表的な処理機能
図２１は、上述の機能の任意の態様を実装するために使用できる例示的な電子データ処理機能２１００を説明する。図１を参照すると、例えば、図２１に示す種類の処理機能２１００を使用してコンピューティング装置１００の任意の態様を実装することができる。１つのケースでは、処理機能２１００が、１つまたは複数の処理装置を含む任意の種類のコンピューティング装置に対応してもよい。全てのケースにおいて、電子データ処理機能２１００は１つまたは複数の物理的処理機構および有形的処理機構を表す。
【０１０５】
処理機能２１００は、ＲＡＭ２１０２およびＲＯＭ２１０４、ならびに１つまたは複数の処理装置２１０６のような揮発性および不揮発性のメモリを備えることができる。処理機能２１００はまた、場合によっては、ハード・ディスク・モジュール、光ディスク・モジュール等のような、様々な媒体装置２１０８を備える。処理機能２１００は、メモリ（例えば、ＲＡＭ２１０２、ＲＯＭ２１０４、または別の場所）で保持される命令を処理装置（複数可）２１０６が実行したときに、上述の様々な動作を実施することができる。
【０１０６】
より一般的には、命令および他の情報を任意のコンピュータ読取可能媒体２１１０上に格納することができる。コンピュータ読取可能媒体２１１０には、静的メモリ記憶装置、磁気記憶装置、光記憶装置等が含まれるがこれらに限らない。コンピュータ読取可能媒体という用語はまた、複数の記憶装置を包含する。全てのケースにおいて、コンピュータ読取可能媒体２１１０は、何らかの形態の物理的実体および有形的実体を表現する。
【０１０７】
処理機能２１００はまた、様々な入力を（入力機構２１１４を介して）ユーザから受け取り様々な出力を（出力モジュールを介して）ユーザに提供するための入出力モジュール２１１２を備える。１つの特定の出力機構が、表示機構２１１６および関連するＧＵＩ（graphical user interface）２１１８を備えてもよい。処理機能２１００がまた、データを１つまたは複数の通信コンジット２１２２を介して他の装置と交換するための１つまたは複数のネットワークインタフェース２１２０を含むことができる。１つまたは複数の通信バス２１２４が、上述のコンポーネントと通信可能に接続する。
【０１０８】
通信コンジット（複数可）２１２２を、例えば、ローカル・エリアネットワーク、ワイドネットワーク（例えば、インターネット）、等、またはそれらの任意の組合せによって、任意に実装することができる。通信コンジット（複数可）２１２２が、任意のプロトコルまたはプロトコルの組合せで支配された、ハードワイヤード・リンク、無線リンク、ルータ、ゲートウェイ機能、ネーム・サーバ等の任意の組合せを含むことができる。
【０１０９】
本発明を構造的な特徴および／または方法論的動作に固有な言葉で説明したが、添付の特許請求の範囲で定義した本発明は必ずしも上述の固有の特徴または動作に限定されないことは理解されよう。そうではなく、上述の固有な特徴および動作は請求項を実装する例示的な形態として開示されている。
【図１】
0006009454.tif 000002
【図２】
0006009454.tif 000003
【図３】
0006009454.tif 000004
【図４】
0006009454.tif 000005
【図５】
0006009454.tif 000006
【図６】
0006009454.tif 000007
【図７】
0006009454.tif 000008
【図８】
0006009454.tif 000009
【図９】
0006009454.tif 000010
【図１０】
0006009454.tif 000011
【図１１】
0006009454.tif 000012
【図１２】
0006009454.tif 000013
【図１３】
0006009454.tif 000014
【図１４】
0006009454.tif 000015
【図１５】
0006009454.tif 000016
【図１６】
0006009454.tif 000017
【図１７】
0006009454.tif 000018
【図１８】
0006009454.tif 000019
【図１９】
0006009454.tif 000020
【図２０】
0006009454.tif 000021
【図２１】
0006009454.tif 000022