(57)【特許請求の範囲】
【請求項１】
タッチ感知式計算装置であって、
ディスプレイと、
タッチセンサーと、
論理サブシステムと、
前記論理サブシステムによって実行可能な命令を保持する記憶装置サブシステムと、を備え、前記命令は、
前記タッチ感知式計算装置の前記ディスプレイ上にグラフィカルユーザインタフェースを表示し、
前記タッチ感知式計算装置の前記タッチセンサーを介してタッチ入力を感知位置で受け取り、
以前に判定された一組の感知されたタッチ入力位置の統計的分布を確率的な判定への入力として利用することにより、前記タッチ入力に基づいて、意図されたタッチ位置の確率的な判定を行うようにタッチ感知システムを動作させ、前記以前に判定された一組の感知されたタッチ入力位置は、前記タッチ感知システムの開発中に形成されたテストデータの組を含み、
前記確率的な判定に基づいて、前記タッチ入力に対する応答を、前記感知位置に対して調整された前記グラフィカルユーザインタフェース上の調整された位置に表示する、
ように実行可能である、タッチ感知式計算装置。
【請求項２】
前記命令が、
前記応答を前記調整された位置に表示した後に、前記タッチセンサーを介して取消し入力を受け取り、
前記取消し入力に応答して、前記タッチ入力に対する応答を前記感知位置に表示し、
前記タッチセンサーを介して受け取った後続のタッチ入力に対する応答を前記後続のタッチ入力の感知位置に表示する、
ようにさらに実行可能である、請求項１に記載のタッチ感知式計算装置。
【請求項３】
前記応答を表示するステップが、前記確率的な判定によって生じた確率がしきい値条件を満たす場合は、前記応答を前記調整された位置に表示するステップと、前記確率が前記しきい値条件を満たさない場合は、前記応答を前記感知位置に表示するステップとを含む、請求項１又は２に記載のタッチ感知式計算装置。
【請求項４】
前記しきい値条件が前記感知位置と前記意図されたタッチ位置との間の距離に基づく、請求項３に記載のタッチ感知式計算装置。
【請求項５】
前記命令が、前記タッチセンサーへの物体の接近を感知し、
前記物体が前記タッチセンサーに接近するときに、前記物体の意図されたタッチ位置の複数の確率的な判定をサンプルレートで行う、
ようにさらに実行可能である、請求項１から４のいずれか一項に記載のタッチ感知式計算装置。
【請求項６】
前記確率的な判定が、前記グラフィカルユーザインタフェース上に表示された仮想キーボードの１つまたは複数のキーに関する情報を含む、前記グラフィカルユーザインタフェースの前後の状況にさらに基づく、請求項１から５のいずれか一項に記載のタッチ感知式計算装置。
【請求項７】
前記確率的な判定を行うステップが、
前記感知位置と１つまたは複数の意図された可能性のあるタッチ位置との間の距離を求めるステップと、
前記確率的な判定への入力として距離の統計的分布を利用することによって、前記１つまたは複数の意図された可能性のあるタッチ位置から前記意図されたタッチ位置を選択するステップと、
を含む、請求項１から６のいずれか一項に記載のタッチ感知式計算装置。
【請求項８】
前記命令が前記タッチセンサーを介して受け取ったタッチ入力に基づいて前記統計的分布を更新するようにさらに実行可能である、請求項７に記載のタッチ感知式計算装置。
【請求項９】
前記命令が前記タッチ入力を受け取った前記位置に応じて異なる統計的分布を利用するように実行可能である、請求項７又は８に記載のタッチ感知式計算装置。
【請求項１０】
前記意図されたタッチ位置が現在アクティブな状態にある、以前にアクティブにされたタッチ位置に対応する、請求項１から９のいずれか一項に記載のタッチ感知式計算装置。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]  タッチ感知式計算装置は、グラフィカルユーザインタフェースによってユーザとの対話が可能となるようにタッチセンサーおよびディスプレイ装置を利用することがある。タッチセンサーは、容量性、抵抗性および光学的技術を含む、タッチ入力を検出するためのいくつかの技術のいずれも利用することができる。同様に、ユーザは、１つまたは複数のスタイラスおよび／または人間の指などの、様々な異なるタッチ入力プローブによって入力を行うことができる。
【発明の概要】
【課題を解決するための手段】
【０００２】
[0002]  タッチ入力システムにおいて、感知されたタッチ入力位置を調整するために確率的な判定を利用することに関連する実施形態が開示される。例えば、開示される一実施形態は、計算装置のタッチ感知式ディスプレイを操作する方法を提供する。本方法は、タッチ感知式ディスプレイ上にグラフィカルユーザインタフェースを表示するステップと、タッチ感知式ディスプレイのタッチセンサーを介してタッチ入力を感知位置で受け取るステップと、入力に基づいて、意図されたタッチ位置の確率的な判定を行うステップと、確率的な判定に基づいて、入力に対する応答を、感知位置に対して調整されたグラフィカルユーザインタフェース上の調整された位置に表示するステップと、を含む。
【０００３】
[0003]  本概要は、発明を実施するための形態において以下でさらに記載される概念の抜粋を簡略化された形態で紹介するために提供されている。本概要は、特許請求された主題の主要な特徴または本質的な特徴を識別することは意図されておらず、特許請求された主題の範囲を限定するために使用されることも意図されていない。さらに、特許請求された主題は、本開示のいずれかの部分で言及されるいずれかのまたはすべての欠点を解決する実施態様に限定されない。
【図面の簡単な説明】
【０００４】
【図１Ａ】[0004]タッチ感知システムの使用中に発生することがある視差の例を概略的に示す図である。
【図１Ｂ】タッチ感知システムの使用中に発生することがある視差の例を概略的に示す図である。
【図１Ｃ】タッチ感知システムの使用中に発生することがある視差の例を概略的に示す図である。
【図２Ａ】[0005]意図されたと思われるタッチ位置の確率的な判定に基づいて、感知されたタッチ位置に対して行われる例示的な調整である。
【図２Ｂ】意図されたと思われるタッチ位置の確率的な判定に基づいて、感知されたタッチ位置に対して行われる例示的な調整である。
【図３Ａ】[0006]意図されたと思われるタッチ位置の確率的な判定に基づいて、感知されたタッチ位置に対して行われる別の例示的な調整である。
【図３Ｂ】意図されたと思われるタッチ位置の確率的な判定に基づいて、感知されたタッチ位置に対して行われる別の例示的な調整である。
【図４】[0007]意図されたと思われるタッチ位置の確率的な判定に基づいて、感知されたタッチ位置に対して行われるさらなる例示的な調整である。
【図５Ａ】[0008]意図されたと思われるタッチ位置の確率的な判定に基づいて、感知されたタッチ位置に対して行われるさらに別の例示的な調整である。
【図５Ｂ】[0009]ユーザ入力による図５Ａの例示的な調整を取り消す図である。
【図６】[0010]本開示の実施態様による、意図されたと思われるタッチ位置の確率的な判定を行うために使用することができる例示的な一組のタッチ位置データを概略的に示す図である。
【図７】[0011]本開示の実施態様による、意図されたと思われるタッチ位置を判定するための方法を示す流れ図である。
【図８】[0012]本開示の実施態様による計算装置のブロック図である。
【発明を実施するための形態】
【０００５】
[0013]  上記したように、タッチ感知式計算装置は、人間の指またはスタイラスなどの入力装置を介して入力を受け取ることができる。タッチ入力中に、入力が計算装置に印加される位置と、入力が計算装置によって感知される位置との間に差が発生することがある。様々な要因がこの効果に寄与することがあり、この効果は、差の発生源とは無関係に本明細書では視差と呼ばれる。
【０００６】
[0014]  図１Ａ〜図１Ｃは、計算装置のタッチ感知式ディスプレイ１０２を概略的に示し、そのような視差がどのように発生し得るかについての例を示す。タッチ感知式ディスプレイ１０２は、ディスプレイとタッチ感知が一体となったスタック１１４を共に形成する、カバーシート１０８（例えば、ガラス）、ディスプレイ１１０（例えば、LCDまたはOLEDディスプレイ）、およびタッチセンサー１１２（例えば、容量性または抵抗性のセンサー）を備える。タッチセンサーは、一部の実施態様ではカバーシートとディスプレイとの間に位置してもよいことが理解されるであろう。
【０００７】
[0015]  視差の第１の例として、図１Ａは、１０４で、物理的位置１１６で接触し、タッチセンサー１１２によって感知位置１１８で感知されるスタイラス１０６を示す。１０４の例では、スタイラス１０６内に配置された、タッチを感知するための容量性タッチセンサーによって使用される感知素子１２０が、物理的接触が起こるスタイラスの先端と垂直に位置合わせされているため、感知位置１１８は、物理的位置１１６と一致する。そのため、ディスプレイ１１０は、タッチ入力に対する応答を物理的位置１１６と一致する表示位置１２２に表示する。１０４でのタッチに対する表示された応答は、正確な位置にあるが、ユーザの目がスタック１１４の表面に対して斜角にあるため、ユーザ１２４は、タッチ入力に対して表示された応答の物理的位置を表示位置１２２からオフセットされた知覚位置１２６にあるとして知覚することに気付かれるであろう。このタイプの視差は、本明細書では「視覚」視差と呼ばれ、ユーザがタッチ入力を不正確な位置で行う原因となる場合がある。
【０００８】
[0016]  視差の別の例として、図１Ｂの１２８で示されるように、感知素子１２０は、スタイラス１０６のカバーシートの表面に対する角度の向きにより、タッチ入力の物理的位置１１６’と垂直に位置合わせされていない。その結果、タッチセンサー１１２は、タッチ入力を物理的位置１１６’とは異なる、および感知されたタッチ入力に応答して表示されるユーザインタフェース要素（例えば、カーソル、インキングなど）の表示位置１２２’とも異なる感知位置１１８’で感知する。このタイプの視差は、本明細書では「ハードウェア」視差と呼ばれる。この差は、スタイラスとカバーシート１０８の表面との間の角度が減少するとともに、悪化する可能性がある。この一例が図１Ｃの１３０で示されており、ここではスタイラスの角度の向きにより物理的なタッチ位置１１６’’と感知位置１１８’’との間に相対的により大きな差が発生し、物理的位置１１６’’とＵＩ要素の表示位置１２２’’との間に相対的により大きな差異が生じる。
【０００９】
[0017]  タッチ入力システムは、感知されたタッチ入力に適用するオフセットを求めるための較正によってハードウェア視差を修正しようとする場合がある。しかしながら、そのような補償は、異なるスタイラスの接触角には効果的でない可能性がある。
【００１０】
[0018]  視覚および／またはハードウェア視差は、ユーザの意図に反してユーザインタフェース要素を誤って選択するなどの、様々な問題を引き起こすことがある。そのような問題を軽減するために、計算装置は、例えば、カーソル、十字線などビジュアルキューを表示して、ユーザに感知位置を示す場合がある。しかしながら、ビジュアルキューは、ディスプレイによって表示されるユーザインタフェース要素を遮ることがあり、かつキューがスタイラス１０６の動きよりも遅れるため、待ち時間をもたらすことがあり、このことがユーザ体験を低下させる可能性がある。較正された、固定のオフセットが、タッチ位置を修正するために適用されることもある。しかし、ビジュアルキューの代わりにタッチ入力に適用される較正されたオフセットを使用することは、上記のような、スタイラス１０６の角度の向きの変動を十分に補償することができない。
【００１１】
[0019]  したがって、タッチ入力の感知位置に基づいて、意図されたタッチ位置を確率的に判定する例が本明細書で開示される。本明細書に記載された例は、ユーザ体験を低下させるビジュアルキューを表示することなく、タッチ入力の印加の最中に発生する視差を軽減することができる。図２Ａおよび図２Ｂは、本開示の実施態様による、感知されたタッチ位置の例示的な調整を示す。図２Ａに示すように、タッチ入力は、スタイラス２０２によってタッチ感知式計算装置２０４に印加される。計算装置２０４は、タブレット計算装置の形態で示されているが、計算装置のその他の適切な形態も本開示の範囲内にあることを認識されるであろう。
【００１２】
[0020]  計算装置２０４は、例えば、計算装置上で動くワード処理または電子メールのアプリケーションにおいて、スタイラス２０２から受け取ったタッチ入力に基づいて、ディスプレイ上にテキストを生成することができる仮想キーボード２０８を含むグラフィカルユーザインタフェース（GUI）を表示するディスプレイ２０６を含む。図示するように、スタイラス先端は、表示された「Ｔ」キーの境界内部でタッチ感知式ディスプレイに物理的にタッチする。しかしながら、ハードウェア視差のために、タッチ入力は、「Ｙ」キーと「Ｔ」キーとの間の位置で感知される。したがって、ユーザが選択を意図したと思われる最も近いキーがどれかを判定するために、計算装置２０４は、タッチ入力の感知位置に基づいて、意図されたタッチ位置の確率的な判定を行うように実行可能な命令を含むことができる。計算装置２０４の例示的なハードウェアの実施態様は、図８を参照して以下で記載される。
【００１３】
[0021]  図２Ｂは、確率的な判定の性能に基づいて表示することができる応答を示す。この図で、表示されたキーボードの「Ｔ」キーは、意図されたと思われるタッチ位置が「Ｔ」キーの境界内部にあったという判定に基づいて選択されていることがわかる。
【００１４】
[0022]  確率的な判定は、意図されたと思われるタッチ位置を判定するためのいかなる適切な情報も利用することができる。例えば、確率的な判定は、入力として、タッチ入力の感知位置２１０、タッチ入力を受け取ったときに表示される１つまたは複数のユーザインタフェース要素（例えば、図２Ａならびに図２Ｂの「T」および「Y」キー）の位置、および意図されたタッチ位置の周囲の以前に判定されたタッチ位置の一組のばらつきも利用することができる。
【００１５】
[0023]  確率的な判定は、ユーザインタフェース要素の２つ以上に対して意図されているタッチ入力のそれぞれの確率を求めることを含んでもよい。例えば、感知位置２１０からしきい値距離内にある仮想キーボード２０８のキーに対する確率を求めることができる。図示する例では、「Ｔ」および「Ｙ」が、意図された可能性があるタッチ位置と考えることができる。したがって、キーと感知位置２１０との間のそれぞれの（例えば、xおよびy方向の）距離を求めることによって、これらのキーのそれぞれに対する確率的な判定を行うことができる。意図されたと思われるタッチ位置の確率（複数可）を求めるために、任意の適切な計算（複数可）を利用することができ、一部の実施態様では、異なる確率関数を異なる事例において利用することができることを理解されるであろう。
【００１６】
[0024]  図２Ｂに示す例では、この事例の「Ｔ」キーに対して行われる確率的な判定は、「Ｙ」キーに対する確率的な判定によって生じるものよりも高い確率を生じる。そのため、確率的な判定に基づいて、「Ｔ」キーが意図されたタッチ位置として選択される。本例では、「Ｔ」キーが「Ｙ」キーよりも感知位置に近い。しかしながら、一部の事例では、感知位置からもっと遠いキーが、用いられる統計的分布の性質、ユーザインタフェース要素と比較した、感知されるタッチ位置の相対位置、確率を求めるために用いられる確率関数、および可能性のある他の要因に応じて、確度がより高いと判定されることがある。
【００１７】
[0025]  本事例における確率的な判定の結果は、調整された位置（例えば、「Ｙ」キーの境界内部の位置）への感知位置のオフセットの適用である。固定の較正されたオフセットをタッチ入力に適用する方法とは対照的に、本事例におけるオフセットは、動的に求められ、タッチ入力間で大きさおよび方向の両方が変わってもよい。さらに、調整は、タッチ入力を受け取ったときに表示される１つまたは複数のユーザインタフェース要素に基づいて決定されてもよい。
【００１８】
[0026]  上述したように、一部の実施態様では、感知されたタッチ入力があるユーザインタフェース要素に対して意図された可能性があるかどうかを判定する際に、しきい値条件をその要素に適用することができる。例えば、しきい値最小確率、しきい値最大距離、および／または他のしきい値条件を適用することができる。ユーザインタフェース要素が適用されるしきい値条件を全く満たさない場合は、タッチ入力に対する応答は、代わりに、感知位置に表示されてもよく、あるいは、適用されるオフセットを求めるために確率的な判定を依然として利用してもよい。
【００１９】
[0027]  図３Ａおよび図３Ｂは、意図されたタッチ位置の確率的な判定に基づいて、タッチ入力に対する表示された応答に対して行われる別の例示的な調整を示す。図３Ａでわかるように、タッチ入力は、感知位置３０２でスタイラス２０２によってタッチ感知式計算装置２０４に印加される。感知位置２１０と同様に、感知位置３０２は、「Ｙ」キーと「Ｔ」キーとの間に位置する。本例では、図２Ａおよび図２Ｂの場合と異なり、感知位置３０２は、タッチが行われる物理的位置と一致する。しかしながら、光学視差のために、ユーザは、タッチが「Ｙ」キー内部にあると知覚して、不正確な位置でディスプレイをタッチする。本例では、「Ｙ」キーに対して行われる確率的な判定は、「Ｔ」キーに対して行われる確率的な判定によって生じるものよりも高い確率を生じる。それに応じて、「Ｙ」キーが意図されたタッチ位置として選択される。したがって、タッチ入力に対する応答は、図２Ａ〜図２Ｂの例で適用されたオフセットとは方向および大きさが両方とも異なるオフセットを有する、調整された位置３０４に表示される。
【００２０】
[0028]  一部の実施態様では、確率的な判定は、ディスプレイ２０６によって提示されるＧＵＩの前後の状況にさらに基づいてもよい。任意の適切な前後の状況情報を利用することができる。一例として、仮想キーボード２０８の各キーは、関連付けられた選択の頻度を有することができる。したがって、選択の頻度を用いて、確率的な判定を重み付けすることができ、それによって、より頻繁に選択されるキーをそれほど頻繁に選択されないキーよりも強く重み付けすることができる。別の例として、前後の状況情報は、他の受け取るユーザ入力に関する情報を含んでもよい。例えば、仮想キーボード２０８を介して現在入力されている未完成の用語を完成する、さもなければ未完成の用語に一致する仮想キーボード２０８のキーをそうでないキーよりも高く重み付けすることができる。別の例として、感知されたタッチ位置に対する調整は、少なくとも一部はタッチ入力を受け取ったディスプレイ２０６上の位置に基づいて決定されてもよく、例えば、ディスプレイの左上象限の入力に対しては、ディスプレイの右下象限で受け取ったタッチ入力に対するものとは異なるオフセットが求められてもよい。同様に、異なる統計的分布を、タッチ入力を受け取るディスプレイ２０６上の位置に応じて確率的な判定への入力として使用することができる。
【００２１】
[0029]  また、本明細書に記載された手法は、入力装置が計算装置上をホバリングするが、計算装置とは物理的接触を行わない「ホバリング」入力に適用することができる。本明細書で使用されるような用語「タッチ入力」などは、物理的接触およびホバリング入力の両方を指す。したがって、一部の実施態様では、計算装置２０４は、タッチ感知式ディスプレイへの物体（例えば、スタイラス、指）の接近を感知し、物体がタッチセンサーに接近するときに物体の意図されたタッチ位置の複数の確率的な判定をサンプルレートで行う。一部の例において、確率的な判定は、物体の接近中に、物体によってタッチセンサー中に生成される、しきい値信号対雑音比（SNR）を下回る信号に対してではなく、しきい値ＳＮＲを上回る信号に対して求めることができる。
【００２２】
[0030]  図４は、本開示の実施態様による、感知されたタッチ入力に対する表示される応答の調整のさらに別の例を示す。ここでは、スタイラス２０２によって自由形式のタッチ入力に応答する計算装置２０４のディスプレイ２０６上に幾何学的図形４０２をあらかじめ描き、スタイラスを、図形４０２を描いた後にディスプレイ２０６から持ち上げた。次いで、スタイラス２０２を、図形４０２の終了点４０６から離れた感知位置４０４で、ディスプレイ２０６にもう一度接触させた。このタッチ入力の受取りに応じて、意図されたタッチ位置の確率的な判定が、入力として以前にアクティブにされた、現在アクティブな図形４０２を利用して、感知位置４０４および図形４０２に基づいて行われる。確率的な判定に基づいて、意図されたタッチ位置は、現在アクティブな状態にある以前にアクティブにされたタッチ位置、またはユーザインタフェース要素、すなわち、以前に行われた図形４０２を形成するユーザ入力の終了点４０６に対応すると判定される。このように、タッチ入力を、以前に行われたユーザ入力に「素早く合わせ込む（snapped）」ことができ、それによって本例では、ユーザが図形４０２の描画を再開することができる。そのような、応答に対する素早い合わせ込みを実施する例について以下でより詳細に記載する。
【００２３】
[0031]  図５Ａは、意図されたと思われるタッチ位置の確率的な判定に基づいて、感知されたタッチ入力に対する表示された応答の調整の別の例を示す。本例では、スタイラス２０２を介して受け取ったタッチ入力に応答して、テキスト「ダイアル（Dial）」が、「ｉ」の上のドットを除いて、計算装置２０４のディスプレイ２０６上に表示されている。テキストを完成し、「ｉ」の上のドットを描くために、タッチ入力は、「ｉ」から離れた感知位置５０２で印加される。このタッチ入力の受取りに応答して、意図されたタッチ位置の確率的な判定は、結果として以前にインク付けされた、まだアクティブな「ｉ」の終点に素早く合わせ込まれた表示位置になることがある。したがって、タッチ入力に対する応答は、入力が「ｉ」の幹の部分に誤って素早く合わせ込まれるように、調整された位置５０４に表示されることが可能性としてある場合がある。しかしながら、本事例では、ユーザは、調整された位置５０４に入力を行う意図はなかった。そのため、ユーザは、タッチ入力が不正確に解釈されたことを示す取消し入力を行うように選択することができる。取消し入力は、例えば、アンドゥ（undo）ボタン５０６、バックスペースボタン、消しゴムのようなスタイラス２０２の操作などによって、任意の適切なやり方で行うことができる。
【００２４】
[0032]  取消し入力の受取りに応答して、図５Ｂに示すように、タッチ入力に対する応答が感知位置５０２に再び表示され、「ｉ」の上のドットの表示を行うことができる。さらに、一部の例において、取消し入力は、１つまたは複数の後続のタッチ入力に対する確率的な判定をオフすることもでき、それによって後続の入力に対する応答が調整された位置ではなく、感知位置に表示される。一部の実施態様では、制御ボタンをディスプレイ２０６によって提示されたＧＵＩに表示することができ、これによってユーザがタッチ入力のタッチ入力位置を明示的に調整するおよび／または素早く合わせ込むことをオンおよびオフにすることが可能となる。
【００２５】
[0033]  上述したように、意図されたと思われるタッチ位置の確率的な判定は、以前に判定された、一組のタッチ入力位置のデータの入力を利用することができる。図６は、そのような統計的分布として使用することができる、意図されたタッチ位置６０４の周囲の以前に判定された一組の感知された入力位置６０２の例を概略的に示す。本例では、意図されたタッチ位置６０４は、例えば、ＧＵＩ上に提示されたユーザインタフェース要素の中心に対応してもよい。
【００２６】
[0034]  一組の以前に判定されたタッチ位置は、例えば、タッチ感知システムの開発中に、最初にテストによって形成されてもよい。データの組は、計算装置２０４のタッチセンサーを介して受け取ったタッチ入力に基づいて、さらに更新されてもよい。例えば、感知されたタッチ位置と仮想キーボード２０８の頻繁に選択されるキーとの間の観察された距離および方向を、タッチが取り消されない限り、感知されたタッチ位置６０２と意図されたタッチ位置６０４との間のすでにある距離に加えることができる。データの組を更新する場合、頻繁に選択されるユーザインタフェース要素を、単位時間当たりより多くのデータを得るためにデータ取得に使用することができる。同様に、ばらつき特性が画面位置に応じて変わることがあるため、異なる表示位置のユーザインタフェース要素を選択してもよい。一部の実施態様では、ばらつきの通常の分布を仮定することができ、距離の平均および標準偏差などのパラメータ（ならびにスタイラスの角度などの他のデバイスパラメータ）を周期的に更新することができる。
【００２７】
[0035]  統計的分布も他の基準に基づくことができる。基準には、例えば、スタイラス２０２のサイズ（例えば、スタイラスの先端のサイズ）および／またはスタイラスが計算装置２０４の表面に対して向く角度を含むことができる。また、統計的分布は、ユーザインタフェース要素の距離が関連付けられているユーザインタフェース要素のサイズ、形状、および／またはタイプに応じて変わってもよい。さらに、２つ以上の統計的分布を、計算装置２０４上で行われる確率的な判定に対する入力として使用することができる。例えば、タッチ入力を計算装置上で受け取る位置に応じて、所与の確率的な判定に使用される統計的分布を変えることができる。
【００２８】
[0036]  図７は、本開示の実施態様による、意図されたタッチ位置を確率的に判定する方法７００を示す流れ図を示す。方法７００は、計算装置の記憶装置サブシステムに記憶された命令を実行することによって計算装置上で行うことができる。
【００２９】
[0037]  ７０２では、方法７００は、計算装置（例えば、図２の計算装置２０４）のタッチ感知式ディスプレイ（例えば、図２のディスプレイ２０６）上にＧＵＩを表示するステップを含む。ＧＵＩは、仮想キーボード（例えば、図２の仮想キーボード２０８）の１つまたは複数のキーなどの、１つまたは複数のユーザインタフェース要素を含んでも、あるいは含まなくてもよい。７０４では、タッチ入力を計算装置のタッチセンサーを介して感知位置で受け取る。一部の例では、タッチは、タッチ感知式ディスプレイの表面上の物理的なタッチであってもよい。他の例では、タッチ入力を受け取るステップは、物体がタッチセンサーに接近するときに、７０６で、物体からのホバリング入力を検出するステップを含むことができる。
【００３０】
[0038]  続いて、７１０では、方法７００は、７０４で受け取ったタッチ入力に基づいて、意図されたタッチ位置の確率的な判定を行うステップを含む。一部の実施態様では、タッチ入力がタッチ感知式ディスプレイに接触するときに、単一または固定数の確率的な判定（複数可）をそれぞれの感知されたタッチ入力に対して行うことができる。他の実施態様では、確率的な判定を行うステップは、７１２で、例えば、ホバリング入力がタッチセンサーに接近するときに、意図されたタッチ位置の複数の確率的な判定をサンプルレートで行うステップを含むことができる。そのような実施態様では、確率的な判定は、上記のように、ホバリング入力によってタッチセンサーに誘起された信号がしきい値ＳＮＲを超えるかどうかに基づいて行うことができる。さらに、一部の実施態様では、７１４で示すように、確率的な判定は、上記のように、入力として７０２で表示されたＧＵＩの前後の状況を利用することができる。加えて、一部の例において、確率的な判定は、７１６で、可能性のある意図されたタッチ位置に対する一組のタッチ位置を（例えば、オフセットの形態で）確率的な分布に対する入力として含む統計的分布を利用するステップを含むことができる。
【００３１】
[0039]  一部の実施態様では、方法７００は、７１８で、７１０で行われた確率的な判定によって生じた結果が、最小確率などのしきい値条件を満たすかどうかを判定するステップを含むことができる。他の実施態様では、そのようなしきい値が適用されなくてもよい。
【００３２】
[0040]  続いて、確率的な判定によって生じた確率がしきい値条件を超えないと判定された場合は、方法７００は、７２０に進み、ここでタッチ入力に対する応答が感知位置に表示される。一方、確率的な判定によって生じた確率がしきい値条件を超えると判定された場合は、方法７００は、任意選択により７２２に進み、ここで現在アクティブである、以前にアクティブにされたタッチ入力位置いずれかがしきい値条件（例えば、しきい値距離、しきい値確率など）を満たすかどうかが判定される。現在アクティブである、しきい値条件を満たす以前にアクティブにされたタッチ入力位置がない場合は、タッチ入力に対する応答は、７１８での確率的な判定の結果に対応する調整された位置に表示される。一方、そのような以前にアクティブにされたタッチ入力位置がある場合は、方法７００は、７２５で、７２４で示されるように、タッチ入力に対する応答を以前にアクティブにされたタッチ位置に対応する調整された位置に表示するステップを含む。
【００３３】
[0041]  上述したように、一部の事例では、意図されたと思われるタッチ位置の確率的な判定は、結果としてユーザの実際の意図と一致しない調整となる場合がある。そのような事例では、ユーザは、調整を取り消すことができる。そのため、方法７００は、７２６で、ユーザの取消し入力を受け取ったかどうかを判定するステップを含む。ユーザの取消し入力を受け取らない場合は、確率的な判定のために利用される統計的分布を、７０４で受け取ったタッチ入力に基づいて、７２８で更新することができる。しかしながら、取消し入力を受け取った場合は、方法７００は、７３０に進み、ここで取消し入力に対する応答が感知位置に表示される。さらに、７３２で、後続のタッチ入力に対する応答も、感知位置に表示することができる。
【００３４】
[0042]  一部の実施形態では、本明細書に記載された方法およびプロセスを、１つまたは複数の計算装置のうちのある計算装置に関連付けることができる。特に、そのような方法およびプロセスは、コンピュータアプリケーションプログラムもしくはサービス、アプリケーションプログラミングインタフェース（API）、ライブラリおよび／または他のコンピュータプログラム製品として実施することができる。
【００３５】
[0043]  図８は、上記の方法およびプロセスの１つまたは複数を実行することができる計算装置８００の非限定的な実施形態を概略的に示す。計算装置８００は、簡略化された形態で示されている。計算装置８００は、１つまたは複数のパーソナルコンピュータ、サーバコンピュータ、タブレットコンピュータ、家庭用娯楽コンピュータ、ネットワーク計算装置、ゲーム装置、モバイル計算装置、モバイル通信装置（例えば、スマートフォン）、および／またはタッチスクリーンを有する他の計算装置（例えば、サーモスタット、目覚まし時計、キッチン用電気器具、自動車コンピュータなどの電気器具、埋め込まれたタッチスクリーン制御計算装置を有する他のものなど）の形態をとることができる。
【００３６】
[0044]  計算装置８００は、論理サブシステム８０２および記憶装置サブシステム８０４を含む。計算装置８００は、任意選択によりディスプレイサブシステム８０６、入力サブシステム８０８、通信サブシステム８１０、および／または図８に示されない他の構成要素を含むことができる。
【００３７】
[0045]  論理サブシステム８０２は、命令を実行するように構成された１つまたは複数の物理デバイスを含む。例えば、論理マシンは、１つまたは複数のアプリケーション、サービス、プログラム、ルーチン、ライブラリ、オブジェクト、コンポーネント、データ構造、または他の論理構造の一部である命令を実行するように構成することができる。そのような命令は、タスクを行い、データ型を実装し、１つまたは複数のコンポーネントの状態を変換し、技術的な効果を実現し、あるいはその他の方法で、所望の結果に達するように実施することができる。
【００３８】
[0046]  論理マシンは、ソフトウェア命令を実行するように構成された１つまたは複数のプロセッサを含むことができる。加えてまたは代替として、論理マシンは、ハードウェアもしくはファームウェア命令を実行するように構成された１つまたは複数のハードウェアあるいはファームウェア論理マシンを含むことができる。論理マシンのプロセッサは、シングルコアまたはマルチコアであってもよく、このプロセッサ上で実行される命令は、順次、並列、および／または分散処理用に構成されてもよい。論理マシンの個々のコンポーネントは、任意選択により２つ以上の個別の装置間に分散されてもよく、これらの装置は、遠隔に位置しても、および／または連携処理用に構成されてもよい。論理マシンの態様は、クラウドコンピューティング構成で構成された、遠隔からアクセス可能な、ネットワーク接続された計算装置によって仮想化され、実行されてもよい。
【００３９】
[0047]  記憶装置サブシステム８０４は、本明細書に記載された方法およびプロセスを実施するために論理マシンによって実行可能な命令を保持するように構成された１つまたは複数の物理デバイスを含む。そのような方法およびプロセスが実施される場合、記憶装置サブシステム８０４の状態を、例えば、異なるデータを保持するように変換することができる。
【００４０】
[0048]  記憶装置サブシステム８０４は、取り外し可能な、および／または組み込みの装置を含んでもよい。記憶装置サブシステム８０４は、とりわけ、光メモリ（例えば、CD、DVD、HD-DVD、ブルーレイディスクなど）、半導体メモリ（例えば、RAM、EPROM、EEPROMなど）、および／または磁性記憶装置（例えば、ハードディスクドライブ、フロッピーディスクドライブ、テープ駆動装置、MRAMなど）を含むことができる。記憶装置サブシステム８０４は、揮発性、不揮発性、ダイナミック、スタティック、読み出し／書き込み、読み出し専用、ランダムアクセス、シーケンシャルアクセス、位置アドレス指定可能、ファイルアドレス指定可能、および／またはコンテンツアドレス指定可能な装置を含むことができる。
【００４１】
[0049]  記憶装置サブシステム８０４は、１つまたは複数の物理デバイスを含むことを認識されるであろう。しかしながら、本明細書に記載された命令の態様を、代替として、有限の期間物理デバイスによって保持されない通信媒体（例えば、電磁信号、光信号など）によって伝播させることができる。
【００４２】
[0050]  論理サブシステム８０２および記憶装置サブシステム８０４の態様は、１つまたは複数のハードウェア論理コンポーネントに一体化することができる。そのようなハードウェア論理コンポーネントは、例えば、フィールドプログラマブルゲートアレイ（FPGA）、プログラムおよび特定用途向け集積回路（PASIC/ASIC）、プログラムおよび特定用途向けの標準製品（PSSP/ASSP）、システムオンチップ（SOC）、ならびに複合プログラム可能論理デバイス（CPLD）を含むことができる。
【００４３】
[0051]  用語「方法」および「プログラム」を使用して、特定機能を行うために実施される計算装置８００の態様を記載することができる。場合によっては、方法またはプログラムを、記憶装置サブシステム８０４によって保持された命令を実行する論理サブシステム８０２によってインスタンス化することができる。異なる方法および／またはプログラムを、同一のアプリケーション、サービス、符号ブロック、オブジェクト、ライブラリ、ルーチン、ＡＰＩ、関数などからインスタンス化することができることを理解されるであろう。同様に、同一の方法および／またはプログラムを、異なるアプリケーション、サービス、符号ブロック、オブジェクト、ルーチン、ＡＰＩ、関数などによってインスタンス化することができる。用語「方法」および「プログラム」は、実行可能ファイル、データファイル、ライブラリ、ドライバ、スクリプト、データベースレコードなどのそれぞれまたはグループを包含することができる。
【００４４】
[0052]  本明細書で使用されるような「サービス」は、複数のユーザセッションにわたって実行可能なアプリケーションプログラムであることを認識されるであろう。サービスは、１つまたは複数のシステムコンポーネント、プログラム、および／または他のサービスに対して利用可能であってもよい。一部の実施態様では、サービスは、１つまたは複数のサーバ計算装置上で動くことができる。
【００４５】
[0053]  ディスプレイサブシステム８０６を使用して、記憶装置サブシステム８０４によって保持されたデータの視覚表現を提示することができる。この視覚表現は、ＧＵＩの形態をとってもよい。本明細書に記載された方法およびプロセスは、記憶装置マシンによって保持されたデータを変え、したがって記憶装置マシンの状態を変換するため、ディスプレイサブシステム８０６の状態を、基礎をなすデータの変化を視覚的に表現するために同様に変換することができる。ディスプレイサブシステム８０６は、任意のタイプの技術を事実上利用する１つまたは複数のディスプレイ装置を含むことができる。そのようなディスプレイ装置は、共有された筐体内で論理サブシステム８０２および／または記憶装置サブシステム８０４と一体にされてもよく、またはそのようなディスプレイ装置は、周辺のディスプレイ装置であってもよい。
【００４６】
[0054]  入力サブシステム８０８は、タッチ感知式表示画面、キーボード、マウス、またはゲーム制御装置などの１つまたは複数のユーザ入力装置を備える、あるいはそのような装置とインタフェースをとることができる。一部の実施形態では、入力サブシステムは、選択された自然なユーザ入力（NUI）コンポーネント類を備える、またはそのようなコンポーネント類とインタフェースをとることができる。そのようなコンポーネント類は、一体化されても、または周辺であってもよく、入力動作の変換および／または処理は、オンボードで、またはオフボードで操作されてもよい。例示的なＮＵＩのコンポーネント類には、音声および／または声認識用のマイクロホン、マシンビジョンおよび／またはジェスチャー認識用の赤外線、カラー、立体、および／または深さカメラ、動き検出および／または意図認識用のヘッドトラッカー、アイトラッカー、加速度計、および／またはジャイロスコープ、ならびに、脳活動を評価するための電場感知コンポーネント類を含むことができる。
【００４７】
[0055]  含まれる場合、通信サブシステム８１０は、計算装置８００を１つまたは複数の他の計算装置と通信可能に結合するように構成することができる。通信サブシステム８１０は、１つまたは複数の異なる通信プロトコルと互換性をもつ有線および／または無線通信装置を含むことができる。非限定的な例として、通信サブシステムは、無線電話ネットワーク、あるいは有線もしくは無線ローカルエリアネットワークまたは広域ネットワークによる通信用に構成することができる。一部の実施形態では、通信サブシステムによって、計算装置８００がインターネットなどのネットワークを介して他の装置との間でメッセージを送信および／または受信することが可能となる。
【００４８】
[0056]  本明細書に記載された構成および／または手法は、例として提示され、これらの具体的な実施形態または例は、多数の変形形態が可能であるため、限定的な意味で考えられるべきではないことを理解されるであろう。本明細書に記載された特定のルーチンまたは方法は、任意の数の処理方策の１つまたは複数を表すことがある。そのため、図示されたおよび／または記載された様々な行為は、図示されたおよび／または記載された順序で、他の順序で、並行して行われてもよく、あるいは省略されてもよい。同様に、上記のプロセスの順番は、変えられてもよい。
【００４９】
[0057]  本開示の主題は、様々なプロセス、システムおよび構成の新奇かつ非自明のすべての組合せおよびサブ組合せ、ならびに他の特徴、機能、行為、および／または本明細書に開示された特性、ならびにそれらのあらゆる均等物を含む。
【図１Ａ】
0006500041.tif 000002
【図１Ｂ】
0006500041.tif 000003
【図１Ｃ】
0006500041.tif 000004
【図２Ａ】
0006500041.tif 000005
【図２Ｂ】
0006500041.tif 000006
【図３Ａ】
0006500041.tif 000007
【図３Ｂ】
0006500041.tif 000008
【図４】
0006500041.tif 000009
【図５Ａ】
0006500041.tif 000010
【図５Ｂ】
0006500041.tif 000011
【図６】
0006500041.tif 000012
【図７】
0006500041.tif 000013
【図８】
0006500041.tif 000014