JP2023528061A - タッチ入力の補正 - Google Patents
タッチ入力の補正 Download PDFInfo
- Publication number
- JP2023528061A JP2023528061A JP2022574627A JP2022574627A JP2023528061A JP 2023528061 A JP2023528061 A JP 2023528061A JP 2022574627 A JP2022574627 A JP 2022574627A JP 2022574627 A JP2022574627 A JP 2022574627A JP 2023528061 A JP2023528061 A JP 2023528061A
- Authority
- JP
- Japan
- Prior art keywords
- touch
- value
- measured
- touch input
- inputs
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 61
- 230000015654 memory Effects 0.000 claims description 42
- 238000012545 processing Methods 0.000 claims description 15
- 230000008859 change Effects 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 description 18
- 230000000875 corresponding effect Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 230000000007 visual effect Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 8
- 239000013598 vector Substances 0.000 description 7
- 238000005259 measurement Methods 0.000 description 4
- 239000002184 metal Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241001422033 Thestylus Species 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 239000012780 transparent material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0416—Control or interface arrangements specially adapted for digitisers
- G06F3/0418—Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/044—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/046—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by electromagnetic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/041—Indexing scheme relating to G06F3/041 - G06F3/045
- G06F2203/04104—Multi-touch detection in digitiser, i.e. details about the simultaneous detection of a plurality of touching locations, e.g. multiple fingers or pen and finger
Abstract
コンピューティングデバイスは、コンピューティングデバイスに含まれるカメラ付近の第1の位置における第1のタッチ入力を示す第1の測定されたタッチ値を受信し得るとともに、第1の位置よりもカメラから遠い第2の位置における第2のタッチ入力を示す第2の測定されたタッチ値を受信し得るとともに、第2の位置におけるタッチセンサの密度は第1の位置におけるタッチセンサの密度よりも大きく、コンピューティングデバイスはさらに、第1の測定されたタッチ値および第1のスケーリング値に基づいて第1の補償されたタッチ値を生成し得るとともに、第2の測定されたタッチ値と、第1のスケーリング値よりも小さい第2のスケーリング値とに基づいて第2の補償されたタッチ値を生成し得るとともに、第1の補償されたタッチ値および第2の補償されたタッチ値に基づいて、第1のタッチ入力および第2のタッチ入力を処理し得る。
Description
技術分野
本記載は、タッチ入力を受信するコンピューティングデバイスに関する。
本記載は、タッチ入力を受信するコンピューティングデバイスに関する。
背景
コンピューティングデバイスは、視覚出力を提示するとともにタッチ入力を受信するタッチスクリーンディスプレイを含み得る。いくつかのコンピューティングデバイスはタッチスクリーンディスプレイの内部にカメラを含み得る。カメラ付近のタッチ入力を正確に処理することは困難である可能性がある。
コンピューティングデバイスは、視覚出力を提示するとともにタッチ入力を受信するタッチスクリーンディスプレイを含み得る。いくつかのコンピューティングデバイスはタッチスクリーンディスプレイの内部にカメラを含み得る。カメラ付近のタッチ入力を正確に処理することは困難である可能性がある。
概要
一例に従うと、非一時的なコンピュータ可読記憶媒体には命令が格納され得る。当該命令は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、(コンピューティングデバイスに含まれるカメラ付近であり得る)第1の位置における第1のタッチ入力を示す第1の測定されたタッチ値を受信することと、当該第1の位置よりも当該カメラから遠い第2の位置における第2のタッチ入力を示す第2の測定されたタッチ値を受信することとを行なわせるように構成され得る。当該第2の位置におけるタッチセンサの密度は、当該第1の位置におけるタッチセンサの密度よりも大きい。当該命令はさらに、第1の測定されたタッチ値および第1のスケーリング値に基づいて第1の補償されたタッチ値を生成することと、当該第2の測定されたタッチ値と、当該第1のスケーリング値よりも小さい第2のスケーリング値とに基づいて第2の補償されたタッチ値を生成することと、当該第1の補償されたタッチ値および当該第2の補償されたタッチ値に基づいて当該第1のタッチ入力および当該第2のタッチ入力を処理することとを行なわせるように構成され得る。
一例に従うと、非一時的なコンピュータ可読記憶媒体には命令が格納され得る。当該命令は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、(コンピューティングデバイスに含まれるカメラ付近であり得る)第1の位置における第1のタッチ入力を示す第1の測定されたタッチ値を受信することと、当該第1の位置よりも当該カメラから遠い第2の位置における第2のタッチ入力を示す第2の測定されたタッチ値を受信することとを行なわせるように構成され得る。当該第2の位置におけるタッチセンサの密度は、当該第1の位置におけるタッチセンサの密度よりも大きい。当該命令はさらに、第1の測定されたタッチ値および第1のスケーリング値に基づいて第1の補償されたタッチ値を生成することと、当該第2の測定されたタッチ値と、当該第1のスケーリング値よりも小さい第2のスケーリング値とに基づいて第2の補償されたタッチ値を生成することと、当該第1の補償されたタッチ値および当該第2の補償されたタッチ値に基づいて当該第1のタッチ入力および当該第2のタッチ入力を処理することとを行なわせるように構成され得る。
一例に従うと、非一時的なコンピュータ可読記憶媒体には命令が格納され得る。当該命令は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、タッチスクリーン上のタッチ入力の測定された位置がカメラに近接する所定のエリア内にある(すなわち、カメラに対する近接基準を満たしている)と判断することと、当該タッチ入力の当該測定された位置に基づいて当該タッチ入力についてのシフト値を決定することと、当該測定された位置および当該シフト値に基づいて当該タッチ入力についてのシフトされた位置を決定することと、当該シフトされた位置に基づいて当該タッチ入力を処理することとを行なわせるように構成され得る。実際には、スタイラスまたはユーザの指などの物体がタッチスクリーンに接触するエリアは、タッチ入力が含まれる(すなわち、加えられた力がゼロ以外の測定値である)複数の位置を含み得る。これらのうちのいくつかは、予め定義されたエリア内にあってもよく、いくつかは予め定義されたエリア内になくてもよい。シフト値は、当該エリア内にある測定された位置のシフト値に適用され得る。その後、物体がタッチスクリーンに触れたエリアの中心の位置を推定するための動作が(例えば、シフトされた位置と予め定義されたエリア外の測定された値とに基づいて)適用され得る。
一例に従うと、方法は、複数の既知の位置でタッチスクリーンに接触するステップを含み得る。当該複数の既知の位置は、少なくとも、タッチセンサが第1の密度である第1の位置と、タッチセンサが第2の密度である第2の位置とを含む。タッチセンサの第2の密度はタッチセンサの第1の密度よりも小さい。当該方法はさらに、当該複数の既知の位置に対応する当該タッチスクリーン上の複数の測定された位置を決定するステップと、当該複数の測定された位置を当該複数の既知の位置にマッピングするマップを生成するステップとを含む。
一例に従うと、非一時的なコンピュータ可読記憶媒体には命令が格納され得る。当該命令は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、異なる時間に受信されるとともに単一の可動接点に含まれる複数のタッチ入力を受信することと、当該複数のタッチ入力のうち少なくとも1つのタッチ入力の測定された位置が歪んでいると判断することと、当該複数のタッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいると判断することに基づいて、当該複数のタッチ入力のうち少なくとも1つのタッチ入力の歪んでいる位置と、当該複数のタッチ入力のうち少なくとも2つの他のタッチ入力の位置とに基づき、当該複数のタッチ入力のうち当該少なくとも1つのタッチ入力の歪んだ位置を補正することと、補正された位置で当該複数のタッチ入力を処理することとを行なわせるように構成され得る。
さらなる例では、プロセッサと、上記で定義されたいずれかのタイプのコンピュータ可読記憶媒体とを備えるとともに命令を実行するように構成されたコンピュータシステムが提供される。添付の図面および以下の説明に1つ以上の実現例の詳細が記載されている。他の特徴は、以下の説明および添付の図面、ならびに添付の特許請求の範囲から明らかになるだろう。
詳細な説明
タッチスクリーンは、画像を取込むカメラの能力を向上させるために、カメラ付近および/またはカメラ上方にタッチセンサを低密度に有し得る。カメラ付近にあるタッチセンサの密度が低くなればなるほど、測定されたタッチ値は、カメラから遠くにありタッチセンサを高密度に備えた位置の場合よりも小さくなる。コンピューティングデバイスは、測定されたタッチ値およびスケーリング値に基づいて、補償されたタッチ値を生成することができる。スケーリング値は、タッチ値が測定されたタッチ入力の位置に関連付けることができる。タッチセンサの密度は、タッチスクリーンの単位面積当たりのタッチセンサの数であり、例えば、任意の位置におけるタッチセンサの密度は、その位置を中心とする予め定められたサイズおよび/または配向を有する円形、長方形または正方形内にあるタッチセンサの数として定義されてもよい。
タッチスクリーンは、画像を取込むカメラの能力を向上させるために、カメラ付近および/またはカメラ上方にタッチセンサを低密度に有し得る。カメラ付近にあるタッチセンサの密度が低くなればなるほど、測定されたタッチ値は、カメラから遠くにありタッチセンサを高密度に備えた位置の場合よりも小さくなる。コンピューティングデバイスは、測定されたタッチ値およびスケーリング値に基づいて、補償されたタッチ値を生成することができる。スケーリング値は、タッチ値が測定されたタッチ入力の位置に関連付けることができる。タッチセンサの密度は、タッチスクリーンの単位面積当たりのタッチセンサの数であり、例えば、任意の位置におけるタッチセンサの密度は、その位置を中心とする予め定められたサイズおよび/または配向を有する円形、長方形または正方形内にあるタッチセンサの数として定義されてもよい。
センサがより低密度である場合、および/または密度の異なるタッチセンサの位置間で移行する場合、タッチ入力の測定された位置がタッチ入力の実際の位置および/または真の位置からシフトされる可能性がある。コンピューティングデバイス100は、測定された位置と、シフト値または測定された位置に関連付けられたシフトされた位置のいずれかとに基づいて、シフトされた位置を決定することができる。いくつかの例では、別のコンピューティングシステムは、複数の既知の位置においてスタイラスでタッチスクリーンに接触し、当該スタイラスがタッチスクリーンに接触した既知の位置を測定されたタッチ位置にマッピングすることによって、シフト値またはシフトされた位置を決定することができる。
センサがより低密度である場合、および/または密度の異なるタッチセンサの位置間で移行する場合、タッチ入力の測定された位置がタッチ入力の実際の位置および/または真の位置から歪む可能性がある。コンピューティングデバイスは、測定された位置および/またはシフトされた位置を連続接点内の他の測定された位置および/またはシフトされた位置と比較することによって、測定された位置が歪んでいると判断し得る。コンピューティングデバイスは、フィルタを複数の位置に適用することなどによって、他の測定された位置に基づいて歪んだ位置を補正することができる。
図1Aは、一実現例に従ったコンピューティングデバイス100を示す。コンピューティングデバイス100は、例えば、タッチスクリーン102を備えたスマートフォン、タッチスクリーン102を備えたタブレットコンピューティングデバイス、タッチスクリーン102を備えたノートブックもしくはラップトップコンピューティングデバイス、または、タッチスクリーン102を備えたパーソナルコンピューティングデバイスを含み得る。
タッチスクリーン102はユーザに視覚出力を提示することができる。タッチスクリーン102は、絵、アイコン、文字、または他の画像を一括して表示するために着色光を発するピクセルを含み得る。
タッチスクリーン102はまた、ユーザからタッチ入力を受信し得る。タッチ入力は、タッチスクリーン102内の静電容量の変化および/または抵抗の変化などの測定可能な変化を引起こすタッチスクリーン102上の物理的接触を含み得る。いくつかの例では、タッチスクリーン102は、タッチスクリーン102に接触するユーザの指などの人体の一部によって引起こされる静電容量の変化を測定することによってタッチ入力を検出する静電容量式タッチスクリーンを含み得る。いくつかの例では、タッチスクリーン102に含まれるタッチセンサは、ピクセルを囲む金属トレースを含み得る。いくつかの例では、タッチスクリーン102は、抵抗の変化を測定することによってタッチ入力を検出することができる。
コンピューティングデバイス100は、タッチスクリーンを支持し、封入し、および/または取り囲むフレーム104を含み得る。フレーム104はまた、図1Aに示されていないコンピューティングデバイス100の他の構成要素、たとえば非限定的な例として、メモリ、プロセッサ、スピーカ、マイクロフォン、有線通信インターフェイス、および/または無線通信インターフェイスなど、を支持すること、封入すること、および/または取り囲むことができる。
コンピューティングデバイス100はカメラ106を含み得る。カメラ106は、コンピューティングデバイス100の外部から視覚データを取込むことができる。カメラ106は、タッチスクリーン102の内部および/または背後に含まれ得るとともに、タッチスクリーン102を通過する光から視覚データを取込むように構成され得る。
図1Aは、タッチスクリーン102およびカメラ106を含むコンピューティングデバイス100の正面部分を示す。いくつかの例では、コンピューティングデバイス100は、第2のカメラを含むがタッチスクリーンまたは他のディスプレイを含まない、前方部分とは反対側の後方部分を含み得る。
タッチスクリーン102がカメラ106上のエリアにおいて視覚出力を提示することを可能にする一方で、カメラ106が視覚データを取込むことも可能にするために、タッチスクリーン102のうちカメラ106上のエリアにおけるピクセル密度は、タッチスクリーン102のうちカメラ106上にないエリアにおけるピクセル密度よりも低くなり得る。ここで、「カメラ上」という語句は、タッチスクリーンのうち法線方向がカメラと交差する部分を指している。タッチスクリーンのうちいくつかのこのような部分の場合、法線方向はカメラの光取込み領域を遮る可能性がある。ピクセル密度がより低ければ、カメラ106が視覚データを充分に正確に取込むことが可能となり、十分な品質の視覚出力が提示される。しかしながら、ピクセル密度がより低ければ、タッチスクリーンの他の部分と比較して、タッチ入力を判定するために測定される寄生容量が不均一となる可能性がある。以下で説明する図2は、カメラ106の上および周囲におけるタッチスクリーン102の拡大エリア108を示しており、タッチスクリーン102のうち拡大エリア108内のいくつかの部分は、タッチスクリーン102の他の部分よりも低いピクセル密度を有する。
図1Bは、一実現例に従った、図1Aに示すコンピューティングデバイス100の部分断面図を示す。当該断面図は図1Aの破線Aに沿ったものである。
タッチスクリーン102は、カバー112、タッチセンサ層114、および/またはディスプレイ層116を含み得る。カバー112は、ガラスまたはプラスチックなどの透明な材料で作ることができる。カバー112は、タッチスクリーン102の他の構成要素、例えばタッチセンサ層114および/またはディスプレイ層116などを被覆および/または保護することができる。カバー112は、タッチスクリーン102の他の構成要素、例えばタッチセンサ層114および/またはディスプレイ層116などの上に重ね合わせること、および/またはその上方に配置すること、ができる。
タッチスクリーン102はタッチセンサ層114を含み得る。タッチセンサ層114はタッチ入力を検出および/または測定することができる。タッチセンサ層114は、タッチ入力に応答して静電容量の変化および/または抵抗の変化を検出および/または測定することなどによって、タッチ入力を検出および/または測定することができる。いくつかの例では、タッチセンサ層114は、カバー112とディスプレイ層116との間に配置および/または位置付けすることができる。いくつかの例では、タッチセンサ層114のうちのいくつかの部分は、ディスプレイ層116に含まれる表示ピクセルを取り囲むタッチセンサ層114に含まれる金属トレースなどによって、ディスプレイ層116のうちのいくつかの部分を取り囲むことができる。
タッチスクリーン102はディスプレイ層116を含み得る。ディスプレイ層116は、グラフィック出力などの視覚出力を生成および/または表示することができる。ディスプレイ層116は、絵、アイコン、文字、または他の画像を一括して表示するために各々が着色光を生成する複数のピクセルを含み得る。
コンピューティングデバイス100はカメラ106を含み得る。いくつかの例では、カメラ106は、タッチスクリーン102の下方に(すなわち、カバー112の法線方向に、ディスプレイ層116に向かって)配置および/または位置付けすることができる。いくつかの例では、カメラ106は、タッチスクリーン102とフレーム104との間に配置および/または位置付けすることができる。いくつかの例では、カメラ106は、タッチスクリーン102のタッチセンサ層114および/またはディスプレイ層116内に配置および/または位置付けすることができる。
コンピューティングデバイス100はフレーム104を含み得る。フレーム104は、タッチスクリーン102および/またはカメラ106などのコンピューティングデバイス100の構成要素を支持すること、取り囲むこと、および/または封入することができる。
図2は、一実現例に従った、図1Aに示すコンピューティングデバイス100に含まれるタッチスクリーン102およびカメラ106の拡大エリア108を示す。拡大エリア108は複数の位置211~288を含む。図2に示すように、位置211~288についての参照番号の2桁目はそれぞれの位置の行を示し、参照番号の3桁目は列を示す。図2は拡大エリア108を64個の位置に分割したものであるが、他のレベルの粒度も実現可能であり、拡大エリアは64個よりも多くの位置または少ない位置に分割することができる。
この例では、影付きの位置233、234、235、243、244、245、253、254、255は、拡大エリア108内の他の位置よりも低密度でタッチセンサを有する。タッチセンサの密度は、タッチセンサの上に重なっているタッチスクリーン102の単位面積当たりのタッチセンサの数、および/または、タッチスクリーン102の所与のエリア下でのタッチセンサの数を表わし得る。いくつかの例では、より低密度のタッチセンサは、より低密度のピクセル、および/または、当該ピクセルを取り囲むより低密度の金属トレースを含み得るとともに、それらの静電容量の変化が測定される。いくつかの例では、タッチセンサがより低密度である影付きの位置233、234、235、243、244、245、253、254、255は、拡大エリア108内の他の位置よりもカメラ106により近接した位置および/またはカメラ106により近い位置にあり得る。「近接」という語は、「近接基準を満たしている」ことを意味するために用いられる。例えば、近接基準は、位置がカメラから予め定められた距離内にあること、または位置がカメラの上に重なっている(すなわち、当該位置におけるセンサ層に対する法線がカメラを遮っている)こと、または、当該位置が、センサ層114のうちカメラの光軸上にある部分からセンサ層114の平面内の予め定められた距離内にあること、であってもよい。密度の変化は、隣り合う位置にあるタッチセンサの密度が互いよりもはるかに高いかまたは低い場合には急激な変化であってもよく、または、位置の経路に応じてタッチセンサの密度が徐々に増加もしくは減少する場合には段階的な変化であってもよい。いくつかの例では、タッチセンサの密度がより高い他の位置は、位置233、234、235、243、244、245、253、254、255よりもカメラ106から離れた位置、および/またはカメラ106により近接した位置、にあり得る。いくつかの例では、タッチセンサの密度がより低い位置233、234、235、243、244、245、253、254、255は、カメラ106の上に完全に重ね合わせる(すなわち、カバー112を横断する方向に見て、カメラ106を全体的に覆う)ことができる。
図3Aは、一実現例に従った、拡大エリア108のうちカメラ106付近にある部分に接触する指300を示す。指300は、拡大エリア108の内側または外側にある任意の数の位置211~288に接触することができる。
図3Bは、一実現例に従った、指300が接触した拡大エリア108内の位置についての測定されたタッチ値を示す。図3Bは、図2および図3Aに示す位置211~288に対応する測定されたタッチ値マップ310を示す。見易くするために、測定されたタッチ値が対応する位置211~288の参照番号は図3Bには示していない。しかしながら、タッチセンサの密度が低い位置は、参照し易くするために陰影が付けられている。図3Bは、測定されたタッチ値を2次元マップに図表により示しているが、測定されたタッチ値は、コンマ区切り値ファイルまたは2次元アレイなどの他のフォーマットで表現および/または格納することができる。測定されたタッチ値は、静電容量の変化および/または抵抗の変化などの、タッチセンサから受信した生データを表わし得る。測定されたタッチ値は、接触またはタッチが検出されなかったことを示すためのゼロ(0)という下限、ならびに、最大限測定可能な力または静電容量および/または抵抗の変化を表わすための上限などの数値の範囲を含み得る。タッチ入力の測定された位置は、測定されたタッチ値がゼロ(0)よりも大きい位置を表わし得る。
図3Bに示す例では、値が0であるエリアは、値が0であるエリアに対応する位置で接触またはタッチが測定または検出されなかったことを示す。また、この例では、位置232、242、243、および252に対応するエリアは50という測定されたタッチ値を有する。また、この例では、位置233、234、244、253、254に対応するエリアは50という測定されたタッチ値を有する。これらの測定されたタッチ入力値は例であり、コンピューティングデバイス100は他のタッチ入力値を測定する可能性もある。これらの未加工のタッチ入力データのみに基づけば、指300による接触は、位置232、242、252についての50の測定されたタッチ値によって反映されるように、第2の列に沿って左側に向かって最も高密度に配置されるように表示されるだろう。しかしながら、上述したように、位置233、234、235、243、244、245、253、254、255では他の位置よりもタッチセンサの密度がより低く、これにより、位置233、234、235、243、244、245、253、254、255における測定された値が、指300による実際の接触が反映させるべきものよりも小さくなる可能性がある。不正確に低い測定されたタッチ値を補正するために、コンピューティングデバイス100は、位置233、234、235、243、244、245、253、254、255についてのタッチ値を増やすことにより、タッチセンサのより低い密度を補償することができる。
図3Cは、一実現例に従った、拡大エリア内の位置についてのスケーリングマップ320(または「スケーリング値マップ」)を示す。スケーリングマップは、複数のスケーリング値を複数の位置に関連付けることができる。これらの位置は、当該位置がタッチスクリーン102上の点を表わしているx値およびy値によって、ならびに/または、当該位置がタッチスクリーン102上の矩形エリアを表わしているx値およびy値の範囲によって、識別することができる。スケーリングマップ320は、カメラ106に近接するおよび/またはカメラ106の付近にある位置233、234、235、243、244、245、253、254、255におけるタッチセンサの低い密度を補償するために、当該測定されたタッチ値が乗じられるであろうスケーリング値を示す。スケーリング値は、タッチセンサの低い密度を補正するであろう位置に関連付けられた値であり得るので、異なる位置に異なる密度のタッチセンサを有する場合であっても、同じ物体により同じ量の力で接触した場合には、測定されたタッチ値およびスケーリング値に基づく補正後、補償されたタッチ値は異なる位置においても同じものになるだろう。
この例では、カメラ106に近接するおよび/またはカメラ106付近にある位置233、234、235、243、244、245、253、254、255についてのスケーリング値は2であり、他の位置についてのスケーリング値は1である。これは単なる一例に過ぎず、いくつかの位置におけるタッチセンサの低い密度を補償するために、他のスケーリング値をスケーリング値マップ320に含めること、および/または格納することができる。スケーリング値は、図3Cに示す例では2つの値を含み得るか、または、スケーリング値は粒度をより細かくすることができ、3つ以上の多くの別個の値がスケーリングマップ上に表わされ得る。図3Cは、スケーリング値マップ320を2次元マップで図表により示しているが、スケーリング値マップ320は、コンマ区切り値ファイルまたは2次元アレイなどの他のフォーマットで表現および/または格納することができる。いくつかの例では、各位置ごとのスケーリング値は、それぞれの位置におけるタッチセンサの密度に反比例し得る、および/または、2つの異なる位置のスケーリング値の互いに対する比は、これら2つの異なる位置におけるタッチセンサの密度の互いに対する比に反比例し得る。
コンピューティングデバイス100は、図3Bに示される測定されたタッチ値に図3Cのスケーリング値を乗ずることにより、位置233、234、235、243、244、245、253、254、255におけるタッチセンサの低い密度を補正および/または補償することができる。図3Bに示される測定されたタッチ値に図3Cのスケーリング値を乗じた結果は、補償されたタッチ値であり得る。
図3Dは、一実現例に従った、拡大エリア108内において指が接触した位置についての補償されたタッチ値を示す。補償されたタッチ値は、図3Dにおいて、補償されたタッチ値マップ330(または「補償値マップ」)内に表わされる。図3Dは補償値マップ330を2次元マップで図表により示しており、補償値マップ330は、コンマ区切り値ファイルまたは2次元アレイなどの他のフォーマットで表現および/または格納することができる。補償されたタッチ値は、測定されたタッチ値をスケーリング値によって補正および/または補償した後に物体が加える力を表わす、測定されたタッチ値と同じ範囲を有する数値であり得る。補償されたタッチ値は、アプリケーションおよび/もしくはオペレーティングシステムによって処理されるべきタッチ入力として、アプリケーションおよび/もしくはオペレーティングシステムに渡すこと、ならびに/または、アプリケーションおよび/もしくはオペレーティングシステムによって処理することができる。
コンピューティングデバイス100は、補償されたタッチ値をタッチ入力として処理して、タッチ入力にどのように応答すべきかを決定することができる。位置243についての100という補償されたタッチ値と、位置232、233、234、242、244、252、253、254についての50という補償されたタッチ値とは、指300による接触が位置243において最も強かったことおよび/または最も重かったこと、ならびに、位置232、233、234、242、244、252、253、254の場合にも有意であったことを示す。
図3Eは、一実現例に従った、測定されたタッチ値315および補償されたタッチ値335を位置の関数として示すグラフである。図3Eのグラフは、垂直または水平などの単一の方向のみにおける位置の関数としてのタッチ値を示す。図3Eに示される測定されたタッチ値315および補償されたタッチ値335の滑らかな曲線は、測定されたタッチ値の粒度がより大きいこと、ならびに/または、タッチスクリーン102および/もしくは拡大エリア108が前述の図に示されるよりも多くの位置に分割されることを示す。さらに、この例では、低密度エリア内のさまざまな対応する位置についてさまざまなスケーリング値があってもよく、例えば、スケーリング値は低密度エリア350の重心に向かって大きくなっている。低密度エリア350における補償されたタッチ値335と測定されたタッチ値315との間の差は、タッチセンサがより低密度である位置233、234、235、243、244、245、253、254、255に対応し得るとともに、測定されたタッチ値にスケーリング値を乗ずる効果を示している。測定されたタッチ値315の歪んだ曲線は、強いタッチ接触を接点の右側に不正確に示すだろう。補償されたタッチ値335の対称的な曲線は、最も強いタッチ接触を接点の中心に正確に示す。
図3Eに示す例では、測定されたタッチ値315の歪んだ曲線は、補償されたタッチ値335曲線のピークによって示されるように、測定されたタッチ値曲線315のピークにおける、接触の実際の中心370の右側へと歪められたおよび/またはシフトされた、測定された中心360を示す。コンピューティングデバイス100は、補償されたタッチ値マップ330に基づいて当該測定されたタッチ値を補償することによって、実際の中心370における、および/または補償されたタッチ値335曲線のピークにおける、接触の中心の正確な位置を決定することができる。
図4Aは、一実現例に従った、拡大エリア108内のうち、測定された位置がシフトされるであろう予め定義されたエリア400を示す。予め定義されたエリア400は、タッチセンサの密度の変化に起因して、当該測定された位置がシフトされる可能性および/または不正確になる可能性があるタッチスクリーン102上のエリアであり得る。予め定義されたエリア400は、コンピューティングデバイス100に、例えばコンピューティングデバイス100のメモリなどに、格納することができる。いくつかの例では、予め定義されたエリア400は、タッチセンサの密度がより低い位置の端縁上に、および/または端縁にある。いくつかの例では、予め定義されたエリア400は、タッチセンサの密度がより低い位置と、タッチセンサの密度が正常および/または標準的である位置との間の境界面にある。
いくつかの例では、予め定義されたエリア400は環形と位相同型な形状を有する。2つの形状は、それらのそれぞれの部分を破断するか切断するかまたはこれらの部分同士をくっつけることなく、それらのそれぞれの部分を曲げるかまたは引き伸ばすことによって互いに変形させることができる場合、位相同型であるとみなすことができる。予め定義されたエリア400は、予め定義されたエリア400の一部ではない場所402を定義することができ、および/または、場所402は、予め定義されたエリア400によって範囲を定めることができる。予め定義されたエリア400は、場所402を取り囲む形状、例えば、非限定的な例として、正方形、円形、長方形または楕円形などを有し得る。場所402は、(図4Aに示さない)カメラ106の少なくとも一部分に重なり得る。
いくつかの例では、予め定義されたエリア400は、正方形、例えば非限定的な例として正方形、円形、長方形または楕円形などと位相同型である形状を有する。予め定義されたエリア400は、カメラ106のうち少なくとも一部分および/または全体に重なり得る。
いくつかの例では、予め定義されたエリア400内のタッチスクリーン102の拡大エリア内における低密度のタッチセンサからより高密度のタッチセンサへの移行により、タッチ位置が測定される実際の接触位置と比較して、測定されたタッチ位置を、外向きに、および/またはカメラ106から離れるように、シフトさせることができる。コンピューティングデバイス100は、測定された位置をカメラ106に向かって内側にシフトさせることにより、外側へのシフトを補正することができる。コンピューティングデバイス100は、x値およびy値などのベクトルを測定されたタッチ位置に追加することによって、測定された位置を内側にシフトさせることができる。コンピューティングデバイス100は、測定されたタッチ位置をベクトルにマッピングすることにより、当該測定されたタッチ位置に追加するべきベクトルを決定することができる。測定されたタッチ位置およびベクトルは、非限定的な例として、格納されたマップおよび/またはテーブル、コンマ区切り値ファイル、または2次元アレイ上で互いに関連付けることができる。
図4Bは、一実現例に従った、測定された位置を補正するためのシフト値を示す。シフト値は、測定されたタッチ値が補正された値および/またはシフトされた値に達するように変更されるであろうベクトルであり得る。この例では、シフト値はシフトマップ410上に図表により示されている。黒丸の場所が示す測定された位置については、シフトは不要である。矢印はシフト値を図で示す。シフト値はまた、水平(x)方向および垂直(y)方向の各々についての正の値または負の値などの値の対として表わすことができる。
コンピューティングデバイス100は、シフト値を当該測定されたタッチ位置に追加して、正しいシフトされた位置を決定することができる。コンピューティングデバイス100は、当該測定されたタッチ値をシフト位置にマッピングすることなどによって、当該測定されたタッチ位置に基づいてシフト値を決定することができる。コンピューティングデバイス100は、シフトされた値および/またはシフトされた位置に基づいてタッチ入力を処理することができる。シフトされた値および/またはシフトされた位置は、タッチセンサの密度の変化によって引起こされるシフトを補正した後にタッチ入力が処理されるであろう位置であり得る。いくつかの例では、コンピューティングデバイス100は、測定されたタッチ位置を補正された位置および/またはシフトされた位置にマッピングすることなどによって、測定されたタッチ位置に基づいて、直接、シフトされた位置および/または補正された位置を決定することができる。実際には、スタイラスまたはユーザの指などの物体が位置するエリアは、ゼロ以外のタッチ値を有する複数の位置を含み得る。これらのうちのいくつかは、予め定義されたエリア内にあってもよく、いくつかは予め定義されたエリア内になくてもよい。シフト値は、エリア内にある測定された位置のシフト値に適用されてもよい。その後、物体がタッチスクリーンに触れたエリアの中心の位置を推定するために(例えば、シフトされた位置と、予め定義されたエリア外の(シフトされていない)測定された値とに基づいて)動作が適用され得る。例えば、推定された位置は、シフトされた位置とシフトされていない位置との加重平均であってもよく、この場合、重みは、それぞれのタッチ値または補償されたタッチ値である。または、シフトされた位置およびシフトされていない位置におけるタッチ値(または補償されたタッチ値)は、曲線のピークを見出すために曲線適合プロセスにおいて使用されてもよい。
コンピューティングデバイス100および/または別のコンピューティングシステムはシフト値を実験的に決定することができる。いくつかの例では、コンピューティングシステムは、タッチスクリーン上の複数の既知の位置で、スタイラスまたは他の物体を、タッチスクリーン102に、またはタッチスクリーン102および/もしくはコンピューティングデバイス100と同様のハードウェア特徴を有する別のタッチスクリーンに、接触させることができる。コンピューティングシステムは、既知のタッチ位置を対応する測定されたタッチ位置にマッピングすること、および/または、既知のタッチ位置を対応する測定されたタッチ位置に関連付けること、ができる。コンピューティングシステムは、既知のタッチ位置と対応する測定されたタッチ位置との間の差を決定することができる。コンピューティングシステムは、既知のタッチ位置と対応する測定されたタッチ位置との間の差を、対応する測定されたタッチ位置に関連付けてシフト値として格納することができる。コンピューティングシステムは、シフト値を、対応する測定されたタッチ位置と関連付けて、図4Bに示すようなシフトマップ410として、または、非限定的な例としてテーブル、コンマ区切り値ファイルもしくは2次元アレイなどの他のフォーマットで、格納することができる。
図4Cは、一実現例に従った、スタイラス420を拡大エリア108に接触させるアーム430を示す。アーム430および/またはスタイラスは、スタイラス420を複数の既知の位置においてタッチスクリーン102および/またはタッチスクリーン102内の拡大エリア108に接触させるコンピューティングシステムによって制御することができる。当該既知の位置は、タッチスクリーン102上の予め決定された位置、ならびに/または、スタイラス420がタッチスクリーン102に接触することが意図される位置、ならびに/または、スタイラス420が接触しているコンピューティングデバイス100および/もしくはコンピューティングシステムの外部の器具がスタイラスの接触を測定する位置、であり得る。タッチスクリーン102上においてスタイラス420がタッチスクリーン102に接触する位置はコンピューティングシステムに知られていてもよく、および/または、予め定められていてもよい。コンピューティングシステムは、接触についての既知の位置と接触についての測定されたタッチ位置との間の差に基づいてシフト値を決定することができる。コンピューティングシステムは、図4Bに示すようなシフトマップ410などで、または、非限定的な例としてテーブル、コンマ区切り値ファイルもしくは2次元アレイなどの他のフォーマットで、決定されたシフト値を格納し得る。いくつかの例では、コンピューティングシステムは、接触についての既知の位置および接触についての測定されたタッチ位置に基づいてシフトマップ410を生成することができる。コンピューティングシステムおよび/または中間コンピューティングシステムは、格納されたシフト値をコンピューティングデバイス100に提供することができる。
いくつかの例では、測定されたタッチ位置は、いくつかのエリアにおけるセンサ密度の低下によって引起こされる歪みに起因する、図3Eに示される測定された中心360などの、接触についての測定された中心であり得る。これらの例では、コンピューティングデバイス100は、シフトマップ410に基づいて、測定された中心360の位置を実際の中心にシフトさせることができる。
図5は、一実現例に従った、測定されたタッチ位置502、504、506、508、510、512および補正されたタッチ位置507、509を示す。コンピューティングデバイス100は別々の時間に複数のタッチ入力を受信することができる。コンピューティングデバイス100は、複数のタッチ入力を予め定められた期間内に、例えば互いに1秒以内などに、受信することができる。これは、測定されたタッチ位置に関連付けられたそれぞれの記録された時間を用いて行なうことができる。複数のタッチ入力は、タッチスクリーン102および/またはタッチスクリーン102の拡大エリア108にわたる単一の動かすことができる可動接点の一部であり得る、および/または、当該単一の可動接点に含まれ得る。測定されたタッチ位置502、504、506、508、510、512は、複数のタッチ入力の測定された位置を表わし得る。いくつかの例では、タッチセンサの密度が変化することで、測定された位置のいくつかを実際の接触位置から歪ませることができる。いくつかの例では、タッチセンサの密度が変化することで、図4A、図4Bおよび図4Cに関して上述したシフトを実行した後であっても、測定された位置のいくつかを実際の接触位置から歪ませることができる。
コンピューティングデバイス100は、複数の測定されたタッチ位置502、504、506、508、510、512のうち少なくとも1つのタッチ位置の位置が歪んでいると判断することができる。図5に示す例では、コンピューティングデバイス100は、測定されたタッチ位置506、508が歪んでいると判断する。位置506、508と補正された位置507、509との間の距離は、図5においては例示の目的で誇張して示されている。コンピューティングデバイス100は、複数の測定されたタッチ位置502、504、506、508、510、512の位置および/もしくは時間を互いに比較することに基づいて(ここで、「測定されたタッチ位置の時間」とは、力がその位置で測定された時間を意味しており、この時間が記録されてもよい)、例えば、測定されたタッチ位置502、504、506、508、510、512の位置および/もしくは時間を予測された曲線および/もしくは円弧と比較することによって、ならびに/または、測定されたタッチ位置502、504、506、508、510、512の位置および/もしくは時間に1つ以上のフィルタを適用し、測定されたタッチ位置502、504、506、508、510、512のうち少なくとも1つのタッチ位置の位置が歪んでいると判断することなどによって、測定されたタッチ位置502、504、506、508、510、512のうち少なくとも1つが歪んでいると判断することができる。
測定されたタッチ位置502、504、506、508、510、512のうち少なくとも1つのタッチ位置の位置が歪んでいると判断することに基づいて、コンピューティングデバイス100は、タッチ値の位置および/または測定されたタッチ位置506、508と、測定されたタッチ位置502、504、510、512などの少なくとも2つの他のタッチ値とに基づいて、測定されたタッチ位置506、508などの、歪んでいると判断されるタッチ入力の測定された位置を補正することができる。いくつかの例では、コンピューティングデバイス100は、測定されたタッチ位置502、504、506、508、510、512にフィルタを適用することによって、歪んだ位置を補正することができる。いくつかの例では、当該フィルタは、無限インパルス応答フィルタ、カルマン(Kalman)フィルタおよび/またはバターワース(Butterworth)フィルタを含み得る。
図5に示す例では、ベクトル530、532は、測定されたタッチ位置506、508に対する補正を表わす。コンピューティングデバイス100は、補正された位置507、509および/または補正された経路に到達するように、ベクトル530、532を測定されたタッチ位置506、508に追加することができる。コンピューティングデバイス100は、補正された位置507、509および/または補正された経路540と、歪んでいなかったと判断される当該測定されたタッチ位置502、504、510、512とに基づいて、タッチ入力を処理することができる。
図6は、一実現例に従ったコンピューティングデバイス100の概略図である。コンピューティングデバイス100はタッチ入力プロセッサ602を含み得る。タッチ入力プロセッサ602は、タッチスクリーン102に接触する物体によってもたらされるタッチセンサの静電容量の変化を測定することなどによってタッチ入力を処理することができる。
タッチ入力プロセッサ602はタッチ値測定部604を含み得る。タッチ値測定部604は、タッチスクリーン102へのタッチ入力に関連付けられた値、例えば位置、大きさおよび/または時間などを測定することができる。
タッチ値測定部604に含まれる位置測定部606はタッチ入力の位置を測定することができる。当該位置は、どのタッチセンサの静電容量が変化したかに基づいて測定することができる。当該位置は、タッチスクリーン102の角からの水平距離およびタッチスクリーン102の当該角からの垂直距離を表わし得るx値およびy値として表現および/または格納することができる。いくつかの例では、水平距離をピクセル単位で測定することができ、および/または、垂直距離をピクセル単位で測定することができる。
タッチ値測定部604に含まれる大きさ測定部608は、タッチ入力の大きさおよび/または力を測定することができる。当該大きさは、タッチセンサが被る静電容量の変化量に基づいて測定することができる。当該大きさは絶対値として表現および/または格納することができる。
タッチ値測定部604に含まれる時間測定部609はタッチ入力の時間および/または期間を測定することができる。当該時間は、静電容量の変化をコンピューティングデバイス100内部のクロックおよび/またはコンピューティングデバイス100によってアクセスされるクロックと比較することによって測定することができる。当該時間は、絶対的な日付および/もしくは時間として、または特定の時間に関連付けて表現および/または格納することができる。期間は、タッチ入力が始まってからタッチ入力が終了するまでの時間であり得る。期間は、秒および/またはコンマ数秒として表現および/または格納することができる。
コンピューティングデバイスはタッチ値補償部610を含み得る。タッチ値補償部610は、測定されたタッチ値をスケーリング値によって補償すること、増強すること、および/または、測定されたタッチ値にスケーリング値を乗ずることができ、当該スケーリング値は、タッチ接触の位置にあるより少数のタッチセンサに基づいているとともに、より少数のタッチセンサを補償するように選択されるものである。
タッチ値補償部610はスケールマッパー612を含み得る。スケールマッパー612は、タッチ接触の位置を、図3Cに示すスケーリング値マップ320に含まれるスケーリング値などのスケーリング値にマッピングすることができる。タッチ値補償部610は、測定されたタッチ値にスケーリング値を乗じて、補償されたタッチ値を生成することができる。
コンピューティングデバイス100はシフト補正部614を含み得る。シフト補正部614は、図4Aに関連付けて上述した予め定義されたエリア400内のシフトされたタッチ位置値などの、タッチセンサ密度の変化によってもたらされるシフトされたタッチ位置値を補正することができる。
シフト補正部614はシフトマッパー616を含み得る。シフトマッパー616は、検出されたタッチ位置および/または測定されたタッチ位置をシフト値にマッピングすることができる。シフトマッパー616は、例えば、タッチ入力の測定された位置が予め定義されたエリア400内にあるかどうかを判断することができる。測定された位置が予め定義されたエリア内にある場合、シフトマッパー616は、測定されたタッチ位置に基づいてシフト値を決定することができる。いくつかの例では、シフトマッパー616は、例えば、測定されたタッチ位置をシフトマップ410上に含まれるシフト値にマッピングすることによってシフト値を決定することができる。いくつかの例では、シフトマッパー616は、測定されたタッチ位置に関連付けられるとともにファイルに格納されたシフト値を見出すことによってシフト値を決定することができる。いくつかの例では、シフト補正部614は、シフト値の代わりに、測定されたタッチ位置に関連付けられてファイルに格納された補正された位置を見出すことによって、タッチ入力についての補正された位置を決定することができる。
シフト補正部614は、測定された位置およびシフト値に基づいて、タッチ入力について補正された位置および/またはシフトされた位置を決定することができる。コンピューティングデバイス100は、シフトされた位置および/または補正された位置に基づいてタッチ入力を処理することができる。
コンピューティングデバイス100は歪み補正部618を含み得る。歪み補正部618は、タッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいることを複数のタッチ入力が示していた歪み位置を補正することができる。いくつかの例では、歪み補正部618は、タッチ値補償部610が測定されたタッチ値を補正および/もしくは補償した後、ならびに/またはシフト補正部614がシフトされた位置を補正した後、歪んだ位置を補正することができる。
歪み補正部618は歪み判断部620を含み得る。歪み判断部620は、複数のタッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいると判断することができる。歪み判断部620は、複数のタッチ入力の時間および位置に基づいて、複数のタッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいると判断することができる。歪み判断部620は、例えば、円弧または線などの予め格納されたパターンに適合しない複数のタッチ入力に基づいて、複数のタッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいると判断することができる。
歪み補正部618はフィルタ622を含み得る。フィルタ622は、歪み判断部620が歪んでいたと判断したタッチ入力位置の位置を補正することができる。フィルタ622は、無限インパルス応答フィルタ、カルマンフィルタおよび/またはバターワースフィルタなどのフィルタを複数のタッチ入力に適用することによって、歪んだタッチ入力位置の位置を補正することができる。
コンピューティングデバイス100はディスプレイプロセッサ624を含み得る。ディスプレイプロセッサ624は、コンピューティングデバイス100上で実行される1つ以上のアプリケーションからの命令および/またはコンピューティングデバイス100上で実行されるオペレーティングシステムからの命令などに基づいて、タッチスクリーン102によって生成されるグラフィカル出力を制御することができる。
コンピューティングデバイス100はカメラプロセッサ626を含み得る。カメラプロセッサ626は、カメラ106が受信した視覚データを受信および/または処理することができる。
コンピューティングデバイス100は少なくとも1つのプロセッサ628を含み得る。少なくとも1つのプロセッサ628は、少なくとも1つのメモリデバイス630に格納された命令などの命令を実行して、コンピューティングデバイス100に、本明細書で説明する方法、機能および/または技術のいずれかの組合せを実行させることができる。
コンピューティングデバイス100は少なくとも1つのメモリデバイス630を含み得る。少なくとも1つのメモリデバイス630は非一時的なコンピュータ可読記憶媒体を含み得る。少なくとも1つのメモリデバイス630は、プロセッサ628などの少なくとも1つのプロセッサによって実行されると、コンピューティングデバイス100に、本明細書で説明する方法、機能および/または技術のいずれかの組合せを実行させるように構成されたデータおよび命令を格納することができる。したがって、本明細書で説明する実現例(特定の実現例に関連付けて明確に述べられていない場合であっても)のいずれかにおいて、コンピューティングデバイス100に関連付けられているかもしくはそれに含まれているソフトウェア(例えば、処理モジュール、格納された命令)および/またはハードウェア(例えば、プロセッサ、メモリデバイス等)は、単独で、またはコンピューティングデバイス100と組合わせて、本明細書で説明する方法、機能および/または技術のいずれかの組合せを実行するように構成され得る。
メモリ630は、上述のスケーリングマップ320および/またはシフトマップ410などのマップを格納することができる。メモリ630は上述のタッチ値などのタッチ値632を格納することができる。格納された各タッチ値632ごとに、メモリ630は、位置634、大きさ636、ならびに/または時間638および/もしくは期間を格納することができる。
コンピューティングデバイス100は、少なくとも1つの入出力ノード640(すなわち、インターフェイス)を含み得る。少なくとも1つの入出力ノード640は、例えば、サーバからデータを受信してもよく、および/もしくはサーバにデータを送信してもよく、ならびに/または、ユーザから入力を受信してもよく、および/もしくはユーザに出力を提供してもよい。入力機能および出力機能は、単一のノードに組合わされてもよく、または、別個の入力ノードおよび出力ノードに分割されてもよい。入出力ノード640は、例えば、タッチスクリーン102、カメラ106、スピーカ、マイクロフォン、1つ以上のボタン、および/または他のコンピューティングデバイスと通信するための1つ以上の有線もしくは無線のインターフェイスを含み得る。
図7は、一実現例に従った、コンピューティングデバイス100によって実行される機能のパイプライン700を示す。コンピューティングデバイス100はタッチ入力を受信することができる(702)。コンピューティングデバイス100は、タッチスクリーン102を介してタッチ入力を受信することができる。
コンピューティングデバイス100は、測定されたタッチ値を処理することができる(704)。コンピューティングデバイス100は、例えば、タッチ入力を検出したタッチセンサの静電容量に対する変化の量に基づいてタッチ値の大きさを決定することによって、測定されたタッチ値を処理することができる。
コンピューティングデバイス100は、測定されたタッチ値を補償することができる(706)。コンピューティングデバイス100は、例えば、タッチ入力の位置に関連付けられたスケーリング値を決定し、測定されたタッチ値にスケーリング値を乗ずることによって、測定されたタッチ値を補償することができる。
コンピューティングデバイス100は、タッチ入力の位置が予め定義されたエリア400内にあるかどうかを判断することができる(708)。タッチ入力が予め定義されたエリア400内に位置する場合、コンピューティングデバイス100は、シフトマップ410に基づいてタッチ入力の測定された位置をシフトすることなどによって、タッチ入力の測定された位置をシフトすることができる(710)。
コンピューティングデバイス100は、測定されたタッチ入力のジッタを低減させることができる(712)。コンピューティングデバイス100は、例えば、平均化フィルタなどのフィルタを複数のタッチ入力に適用することによって、測定されたタッチ入力のジッタを低減させることができる。
コンピューティングデバイス100は、(710)においてシフトされたかまたはシフトされていない可能性のある1つ以上の位置が歪んでいるかどうかを判断することができる(714)。コンピューティングデバイス100は、複数の位置および時間にフィルタを適用することなどによって、複数のタッチ入力の位置および時間に基づいて、これらの位置が歪んでいるかどうかを判断することができる。当該位置が歪んでいないとコンピューティングデバイスが判断した場合、コンピューティングデバイス100はタッチ値を処理することができる(716)。位置が歪んでいるとコンピューティングデバイス100が判断した場合、コンピューティングデバイス100は、歪みを補正し(718)、次いで、補正されたタッチ値を処理することができる(716)。
図8は、一実現例に従った、コンピューティングデバイス100によって実行される方法を示すフローチャートである。当該方法は、第1の測定されたタッチ値を受信するステップ(802)を含み得る。第1の測定されたタッチ値は、コンピューティングデバイス100に含まれるカメラ106付近にある位置243などの第1の位置における第1のタッチ入力を示すことができる。測定されたタッチ値の例を図3Bに示す。当該方法はまた、第2の測定されたタッチ値を受信するステップ(804)を含み得る。第2の測定されたタッチ値は、第1の位置よりもカメラ106から遠い位置242などの第2の位置における第2のタッチ入力を示すことができる。第2の位置におけるタッチセンサの密度は、第1の位置におけるタッチセンサの密度よりも大きくなり得る。当該方法はまた、第1の補償されたタッチ値を生成するステップ(806)を含み得る。第1の補償されたタッチ値は、第1の測定されたタッチ値および第1のスケーリング値に基づいて生成され得る。スケーリング値の例を図3Cに示す。当該方法はまた、第2の補償されたタッチ値を生成するステップ(808)を含み得る。第2の補償されたタッチ値は、第2の測定されたタッチ値および第2のスケーリング値に基づいて生成され得る。第2のスケーリング値は第1のスケーリング値未満であり得る。当該方法はまた、第1のタッチ入力および第2のタッチ入力を処理するステップ(810)を含み得る。第1のタッチ入力および第2のタッチ入力は、第1の補償されたタッチ値および第2の補償されたタッチ値に基づいて処理され得る。
一例に従うと、第1のスケーリング値と第2のスケーリング値との間の比は、第2の位置におけるタッチセンサの密度に対する第1の位置におけるタッチセンサの密度の比に反比例し得る。
一例に従うと、第1の測定されたタッチ値は、第1のタッチ入力に応じた静電容量の変化を示し得る。
一例に従うと、第2の測定されたタッチ値は、第2のタッチ入力に応じた静電容量の変化を示し得る。
一例に従うと、第1の測定されたタッチ値は、タッチスクリーン102などのタッチスクリーンから受信することができる。
一例に従うと、第1の測定されたタッチ値は、静電容量式タッチスクリーンから受信することができる。
図9は、一実現例に従ったコンピューティングデバイスによって実行される方法を示すフローチャートである。当該方法は、タッチスクリーン上のタッチ入力の測定された位置が予め定義されたエリア内にあると判断するステップ(902)を含み得る。予め定義されたエリア400などの予め定義されたエリアはカメラ106に近接し得る。当該方法は、シフト値を決定するステップ(904)を含み得る。シフト値は、その例が図4Bに図表により示されているが、タッチ入力の測定された位置に基づくタッチ入力についてのものであり得る。当該方法は、シフトされた位置を決定するステップ(906)を含み得る。シフトされた位置は、測定された位置およびシフト値に基づいてタッチ入力に関して決定され得る。当該方法は、タッチ入力を処理するステップ(908)を含み得る。タッチ入力は、シフトされた位置に基づいて処理することができる。
一例に従うと、予め定義されたエリアは、環形と位相同型な形状を有し得るとともに、場所402などの場所は、その形状によって範囲が定められ得る。当該場所は、カメラのうち少なくとも一部分に重なり得る。
一例に従うと、シフトを決定するステップは、タッチ入力の位置をシフト値にマッピングするステップを含み得る。
図10は、一実現例に従ったコンピューティングシステムによって実行される方法を示すフローチャートである。当該方法は、複数の既知の位置でタッチスクリーンに接触するステップ(1002)を含み得る。複数の既知の位置でタッチスクリーン102に接触する例を図4Cに示す。既知の位置を識別する例を図2に示す。複数の既知の位置は、少なくとも、タッチセンサが第1の密度である位置242などの第1の位置と、タッチセンサが第2の密度である位置243などの第2の位置とを含み得る。タッチセンサの第2の密度はタッチセンサの第1の密度未満であり得る。当該方法はまた、複数の測定された位置を決定するステップ(1004)を含み得る。複数の測定された位置はタッチスクリーン102上にあり得る。複数の測定された位置は複数の既知の位置に対応し得る。当該方法はまた、マップを生成するステップ(1006)を含み得る。当該マップは、その例が、図4Bに示されるシフトマップ410であり得るかまたは測定された位置を既知の位置に置換するマップのいずれかであり得るが、複数の測定された位置を複数の既知の位置にマッピングすることができる。
一例に従うと、当該方法はさらに、コンピューティングデバイス100のメモリ630などのモバイルコンピューティングデバイスのメモリにマップを格納するステップを含み得る。
一例に従うと、タッチスクリーンは、第1のタッチスクリーン、例えば、測定デバイスおよび/または較正デバイス上の第1のタッチスクリーンなどであり得る。当該方法はさらに、タッチスクリーン102などの第2のタッチスクリーン上でタッチ入力を受信するステップを含み得る。当該方法はさらに、第2のタッチスクリーン102上のタッチ入力の位置が、カメラ106に近接する予め定義されたエリア400などの予め定義されたエリア内にあったと判断するステップを含み得る。当該方法はさらに、タッチ入力の位置および生成されたマップに基づいて、タッチ入力についてのシフト値、例えば図4Bに示されるシフト値等を決定するステップを含み得る。生成されるマップの例は、図4Bに示されるシフトマップ410であり得る。当該方法はまた、タッチ入力の位置および決定されたシフト値に基づいてタッチ入力を処理するステップを含み得る。タッチ入力はコンピューティングデバイス100などのクライアントデバイスによって処理することができる。
図11は、一実現例に従った、コンピューティングデバイス100によって実行される方法を示すフローチャートである。当該方法は、複数のタッチ入力を受信するステップ(1102)を含み得る。複数のタッチ入力は、さまざまな時間に受信することができ、単一の可動接点に含めることができる。複数のタッチ入力502、504、506、508、510、512の例を図5に示す。当該方法は、複数のタッチ入力のうち少なくとも1つのタッチ入力についての測定された位置が歪んでいると判断するステップ(1104)を含み得る。図5の例では、タッチ入力506、508は歪んでいると判断される。当該方法は、複数のタッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいると判断することに基づいて、複数のタッチ入力のうち少なくとも1つのタッチ入力の歪んだ位置を補正するステップ(1106)を含み得る。歪んだ位置は、複数のタッチ入力のうち少なくとも1つのタッチ入力の歪んだ位置と、複数のタッチ入力のうち少なくとも2つの他のタッチ入力の位置とに基づいて補正することができる。複数のタッチ入力のうち少なくとも2つの他のタッチ入力の例としてタッチ入力502、504、510、512が挙げられる。当該方法はまた、補正された位置で複数のタッチ入力を処理するステップ(1108)を含み得る。補正された位置は、補正されたタッチ位置507、509を含み得る。
一例に従うと、歪んだ位置を補正するステップは、フィルタを複数のタッチ入力の位置に適用するステップを含み得る。
一例に従うと、歪んだ位置を補正するステップは、無限インパルス応答フィルタを複数のタッチ入力の位置に適用するステップを含み得る。
一例に従うと、歪んだ位置を補正するステップは、カルマンフィルタを複数のタッチ入力の位置に適用するステップを含み得る。
一例に従うと、歪んだ位置を補正するステップは、バターワースフィルタを複数のタッチ入力の位置に適用するステップを含み得る。
一例に従うと、複数のタッチ入力は、タッチスクリーン102などのタッチスクリーンを介して受信することができる。
一例に従うと、複数のタッチ入力は静電容量式タッチスクリーンを介して受信することができる。
一例に従うと、当該方法はさらに、複数のタッチ入力が予め定められた期間内に受信されたと判断するステップを含み得る。歪んだ位置を補正するステップは、複数のタッチ入力が予め定められた期間内に受信されたと判断することと、複数のタッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいると判断することとに基づいて、歪んだ位置を補正するステップを含み得る。
図12は、本明細書で説明する技術とともに使用され得る汎用コンピュータデバイス1200および汎用モバイルコンピュータデバイス1250の一例を示す。コンピューティングデバイス1200は、ラップトップ、デスクトップ、タブレット、ワークステーション、携帯情報端末、テレビ、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピューティングデバイスなどの、様々な形態のデジタルコンピュータを表わすよう意図されている。コンピューティングデバイス1250は、携帯情報端末、携帯電話、スマートフォン、および他の同様のコンピューティングデバイスなどの、様々な形態のモバイルデバイスを表わすよう意図されている。本明細書に示される構成要素、それらの接続および関係、ならびにそれらの機能は、例示的なものとして意図されたものにすぎず、本明細書で説明および/または主張される発明の実現例を限定するよう意図されたものではない。
コンピューティングデバイス1200は、プロセッサ1202と、メモリ1204と、ストレージデバイス1206と、メモリ1204および高速拡張ポート1210に接続する高速インターフェイス1208と、低速バス1214およびストレージデバイス1206に接続する低速インターフェイス1212とを含む。プロセッサ1202は半導体ベースのプロセッサであり得る。メモリ1204は半導体ベースのメモリであり得る。構成要素1202、1204、1206、1208、1210、および1212の各々は、様々なバスを用いて相互接続されるとともに、共通のマザーボード上に、または他の態様で適宜、実装され得る。プロセッサ1202は、高速インターフェイス1208に結合されたディスプレイ1216などの外部入出力デバイス上にGUIのためのグラフィカル情報を表示するために、メモリ1204またはストレージデバイス1206に格納された命令を含む、コンピューティングデバイス1200内で実行するための命令を処理することができる。他の実現例では、複数のプロセッサおよび/または複数のバスが、複数のメモリおよびメモリのタイプとともに適宜使用され得る。また、複数のコンピューティングデバイス1200が接続されてもよく、各デバイスは、必要な動作の(例えば、サーババンクとして、ブレードサーバのグループとして、またはマルチプロセッサシステムとしての)部分を提供する。
メモリ1204はコンピューティングデバイス1200内に情報を格納する。一実現例では、メモリ1204は1つまたは複数の揮発性メモリユニットである。別の実現例では、メモリ1204は1つまたは複数の不揮発性メモリユニットである。メモリ1204はまた、磁気ディスクまたは光ディスクなどの別の形態のコンピュータ可読媒体であり得る。
ストレージデバイス1206は、コンピューティングデバイス1200に大容量ストレージを提供することができる。一実現例では、ストレージデバイス1206は、コンピュータ可読媒体、例えば、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイスなど、または、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、または、ストレージエリアネットワークもしくは他の構成内のデバイスを含むデバイスのアレイであり得るか、またはそれらを含み得る。コンピュータプログラム製品は、情報担体において有形に具現化することができる。コンピュータプログラム製品はまた、実行されると、上述したものなどの1つ以上の方法を実行する命令を含み得る。情報担体は、メモリ1204、ストレージデバイス1206、またはプロセッサ1202上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
高速コントローラ1208は、コンピューティングデバイス1200のための帯域幅集約型動作を管理し、低速コントローラ1212は、より低い帯域幅集約型動作を管理する。このような機能の割当ては一例に過ぎない。一実現例では、高速コントローラ1208は、(例えば、グラフィックスプロセッサまたはアクセラレータを介して)メモリ1204、ディスプレイ1216に結合されるとともに、様々な拡張カード(図示せず)を受け入れ得る高速拡張ポート1210に結合される。この実現例では、低速コントローラ1212は、ストレージデバイス1206および低速拡張ポート1214に結合される。様々な通信ポート(例えば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、無線イーサネット(登録商標))を含み得る低速拡張ポートは、例えばネットワークアダプタを介して、キーボード、ポインティングデバイス、スキャナ、またはスイッチもしくはルータなどのネットワーキングデバイスなどの1つ以上の入出力デバイスに結合され得る。
コンピューティングデバイス1200は、図に示すように、いくつかの様々な形態で実現され得る。コンピューティングデバイス1200は、例えば、標準サーバ1220として、またはそのようなサーバのグループ内で複数回実現され得る。また、コンピューティングデバイス1200は、ラックサーバシステム1224の一部として実現されてもよい。加えて、コンピューティングデバイス1200はラップトップコンピュータ1222などのパーソナルコンピュータにおいて実現され得る。代替的には、コンピューティングデバイス1200からの構成要素は、デバイス1250等のモバイルデバイス(図示せず)内の他の構成要素と組合わされてもよい。このようなデバイスの各々は、コンピューティングデバイス1200、1250のうちの1つ以上を含み得るとともに、システム全体は、互いに通信する複数のコンピューティングデバイス1200、1250から構成され得る。
コンピューティングデバイス1250は、他の構成要素の中でも特に、プロセッサ1252と、メモリ1264と、ディスプレイ1254などの入出力デバイスと、通信インターフェイス1266と、トランシーバ1268とを含む。デバイス1250はまた、追加のストレージを提供するために、マイクロドライブまたは他のデバイスなどのストレージデバイスを備え得る。構成要素1250、1252、1264、1254、1266、および1268の各々は様々なバスを用いて相互接続されるとともに、当該構成要素のうちのいくつかは、共通のマザーボード上に、または、適宜、他の態様で実装され得る。
プロセッサ1252は、メモリ1264に格納された命令を含む命令を、コンピューティングデバイス1250内で実行することができる。プロセッサは、別個の複数のアナログプロセッサおよびデジタルプロセッサを含むチップのチップセットとして実装されてもよい。プロセッサは、例えば、ユーザインターフェイスの制御、デバイス1250によって実行されるアプリケーション、およびデバイス1250による無線通信などの、デバイス1250の他の構成要素の連携を提供し得る。
プロセッサ1252は、ディスプレイ1254に結合された制御インターフェイス1258およびディスプレイインターフェイス1256を介してユーザと通信してもよい。ディスプレイ1254は、例えば、薄膜トランジスタ液晶ディスプレイ(Thin-Film-Transistor Liquid Crystal Display:TFT LCD)または有機発光ダイオード(Organic Light Emitting Diode:OLED)ディスプレイ、または他の適切なディスプレイ技術であってもよい。ディスプレイインターフェイス1256は、グラフィカル情報および他の情報をユーザに提示するようにディスプレイ1254を駆動するための適切な回路を備え得る。制御インターフェイス1258は、ユーザからコマンドを受信し得るとともに、当該コマンドを変換してプロセッサ1252に提出し得る。加えて、デバイス1250と他のデバイスとの近距離通信を可能にするために、プロセッサ1252と通信する外部インターフェイス1262を設けてもよい。外部インターフェイス1262は、例えば、いくつかの実現例では有線通信を提供してもよく、または他の実現例では無線通信を提供してもよく、複数のインターフェイスが用いられてもよい。
メモリ1264は、コンピューティングデバイス1250内に情報を格納する。メモリ1264は、1つもしくは複数のコンピュータ可読媒体、1つもしくは複数の揮発性メモリユニット、または1つもしくは複数の不揮発性メモリユニットのうちの1つ以上として実現され得る。拡張メモリ1274が設けられてよく、例えば、シングルインラインメモリモジュール(Single In Line Memory Module:SIMM)カードインターフェイスを含み得る拡張インターフェイス1272を介してデバイス1250に接続され得る。このような拡張メモリ1274は、デバイス1250のための追加のストレージ空間を提供し得るか、または、デバイス1250のためのアプリケーションまたは他の情報を格納し得る。具体的には、拡張メモリ1274は、上述したプロセスを実行または補足するための命令を含み得るとともに、セキュリティ保護された情報も含み得る。したがって、例えば、拡張メモリ1274は、デバイス1250のためのセキュリティモジュールとして設けられてもよく、デバイス1250の安全な使用を可能にする命令でプログラムされてもよい。加えて、ハッキング不可能な態様でSIMMカード上に識別情報を配置するなどして、追加の情報とともに、セキュリティ保護されたアプリケーションがSIMMカードを介して提供され得る。
メモリは、以下で説明するように、例えば、フラッシュメモリおよび/またはNVRAMメモリを含み得る。一実現例では、コンピュータプログラム製品は情報担体において有形に具現化される。コンピュータプログラム製品は、実行されると、上述の方法などの1つ以上の方法を実行する命令を含む。情報担体は、メモリ1264、拡張メモリ1274、またはプロセッサ1252上のメモリなどのコンピュータ可読媒体または機械可読媒体であり、例えば、トランシーバ1268または外部インターフェイス1262を介して受信され得る。
デバイス1250は、必要に応じてデジタル信号処理回路を含み得る通信インターフェイス1266を介して無線で通信し得る。通信インターフェイス1266は、とりわけ、GSM(登録商標)音声通話、SMS、EMS、またはMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSなどの様々なモードまたはプロトコル下での通信を提供し得る。このような通信は、例えば、無線周波数トランシーバ1268を通じて行なわれてもよい。加えて、Bluetooth(登録商標)、WiFi、または他のこのようなトランシーバ(図示せず)などを用いて短距離通信が行われてもよい。加えて、全地球測位システム(Global Positioning System:GPS)受信機モジュール1270は、デバイス1250上で実行されるアプリケーションによって適宜使用され得る追加のナビゲーション関連および位置関連の無線データをデバイス1250に提供し得る。
デバイス1250はまた、音声コーデック1260を用いて音声認識可能に通信してもよく、これは、ユーザからの発話情報を受信して、使用可能なデジタル情報に変換し得る。音声コーデック1260は、同様に、例えばデバイス1250のハンドセット内のスピーカなどを通じて、ユーザのために可聴音を生成し得る。そのような音は、音声電話通話からの音を含んでもよく、録音された音(例えば、音声メッセージ、音楽ファイルなど)を含んでもよく、デバイス1250上で動作するアプリケーションによって生成される音を含んでもよい。
コンピューティングデバイス1250は、図に示すように、いくつかの異なる形態で実現され得る。例えば、コンピューティングデバイス1250は携帯電話1280として実現されてもよい。コンピューティングデバイス1250はまた、スマートフォン1282、携帯情報端末、または他の同様のモバイルデバイスの一部として実現されてもよい。
本明細書で説明されるシステムおよび技術の種々の実現例は、デジタル電子回路、集積回路、特別に設計された特定用途向け集積回路(application specific integrated circuit:ASIC)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組合わせで実現することができる。これらの様々な実現例は、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスから/へのデータおよび命令の受信および送信を行なうように結合された、専用または汎用であり得る少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能である1つ以上のコンピュータプログラムでの実現例を含み得る。
(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても公知である)これらのコンピュータプログラムは、プログラマブルプロセッサのための機械命令を含むとともに、高水準手続き型および/もしくはオブジェクト指向型のプログラミング言語で、ならびに/またはアセンブリ/機械言語で実現され得る。「機械可読媒体」、「コンピュータ可読媒体」という語は、本明細書で用いられる場合。機械可読信号として機械命令を受信する機械可読媒体を含む、機械命令および/またはデータをプログラマブルプロセッサに提供するために用いられる任意のコンピュータプログラム製品、装置、および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(Programmable Logic Device:PLD))を指す。「機械可読信号」という語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために用いられる任意の信号を指している。
ユーザとの対話を提供するために、本明細書で説明されるシステムおよび技術は、情報をユーザに表示するためのディスプレイデバイス(例えば、陰極線管(cathode ray tube:CRT)または液晶ディスプレイ(liquid crystal display:LCD)モニタ)と、入力をコンピュータに与えるためにユーザが使用することができるキーボードおよびポインティングデバイス(例えば、マウスまたはトラックボール)とを有するコンピュータ上で実現することができる。他の種類のデバイスを用いてユーザとの対話を行なうことができる、例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバックまたは触覚フィードバック)であり得るとともに、ユーザからの入力は、音響入力、音声入力または触覚入力を含む任意の形態で受信することができる。
本明細書で説明されるシステムおよび技術は、バックエンド構成要素を(例えば、データサーバとして)含むか、または、ミドルウェア構成要素(例えば、アプリケーションサーバ)を含むか、または、フロントエンド構成要素(例えば、本明細書で説明されるシステムおよび技術の実現例とユーザが対話することを可能にするグラフィカルユーザインターフェイスもしくはウェブブラウザを有するクライアントコンピュータ)を含むか、または、そのようなバックエンド構成要素、ミドルウェア構成要素、もしくはフロントエンド構成要素の任意の組合わせを含むコンピューティングシステムにおいて実現することができる。システムの構成要素は、デジタルデータ通信(例えば、通信ネットワーク)の任意の形態または媒体によって相互接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(local area network:LAN)、ワイドエリアネットワーク(wide area network:WAN)、およびインターネットを含む。
コンピューティングシステムはクライアントおよびサーバを含み得る。クライアントおよびサーバは、概して、互いに遠隔にあり、典型的には通信ネットワークを通して互いに対話する。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行されるとともに互いに対してクライアント・サーバ関係を有するコンピュータプログラムによって生じるものである。
多数の実施形態を説明してきたが、本発明の精神および範囲から逸脱することなく、種々の変更が行なわれ得ることが理解されるだろう。
加えて、図に示される論理フローは、所望の結果を達成するために、示される特定の順序または連続した順序を必要とするものではない。加えて、他のステップが設けられてもよく、または、説明したフローからステップが排除されてもよく、他の構成要素が、説明したシステムに追加されてもよく、またはそこから除去されてもよい。したがって、他の実施形態は添付の特許請求の範囲内にある。
Claims (23)
- 命令が格納された非一時的なコンピュータ可読記憶媒体であって、前記命令は、少なくとも1つのプロセッサによって実行されると、カメラを含むコンピューティングデバイスに、
第1の位置における第1のタッチ入力を示す第1の測定されたタッチ値を受信することと、
前記第1の位置よりも前記カメラから遠い第2の位置における第2のタッチ入力を示す第2の測定されたタッチ値を受信することとを行なわせるように構成され、前記第2の位置におけるタッチセンサの密度は、前記第1の位置におけるタッチセンサの密度よりも大きく、前記命令はさらに、
前記第1の測定されたタッチ値および第1のスケーリング値に基づいて、第1の補償されたタッチ値を生成することと、
前記第2の測定されたタッチ値と、前記第1のスケーリング値よりも小さい第2のスケーリング値とに基づいて第2の補償されたタッチ値を生成することと、
前記第1の補償されたタッチ値および前記第2の補償されたタッチ値に基づいて、前記第1のタッチ入力および前記第2のタッチ入力を処理することとを行なわせるように構成される、非一時的なコンピュータ可読記憶媒体。 - 前記第1のスケーリング値と前記第2のスケーリング値との間の比は、前記第2の位置における前記タッチセンサの前記密度に対する前記第1の位置における前記タッチセンサの前記密度の比に反比例する、請求項1に記載の非一時的なコンピュータ可読記憶媒体。
- 前記第1の測定されたタッチ値は、前記第1のタッチ入力に応じた静電容量の変化を示す、請求項1または2に記載の非一時的なコンピュータ可読記憶媒体。
- 前記第2の測定されたタッチ値は、前記第2のタッチ入力に応じた静電容量の変化を示す、請求項3に記載の非一時的なコンピュータ可読記憶媒体。
- 前記第1の測定されたタッチ値はタッチスクリーンから受信される、先行する請求項のいずれか1項に記載の非一時的なコンピュータ可読記憶媒体。
- 前記第1の測定されたタッチ値は静電容量式タッチスクリーンから受信される、請求項1に記載の非一時的なコンピュータ可読記憶媒体。
- 命令が格納された非一時的なコンピュータ可読記憶媒体であって、前記命令は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、
タッチスクリーン上のタッチ入力の測定された位置が、カメラに対する近接基準を満たす予め定義されたエリア内にあると判断することと、
前記タッチ入力の前記測定された位置に基づいて前記タッチ入力についてのシフト値を決定することと、
前記測定された位置および前記シフト値に基づいて、前記タッチ入力についてのシフトされた位置を決定することと、
前記シフトされた位置に基づいて前記タッチ入力を処理することとを行なわせるように構成される、非一時的なコンピュータ可読記憶媒体。 - 前記予め定義されたエリアは、環形と位相同型な形状を有し、
前記形状によって範囲が規定される場所は、前記カメラの少なくとも一部分と重なる、請求項7に記載の非一時的なコンピュータ可読記憶媒体。 - シフトを決定することは、前記タッチ入力の位置を前記シフト値にマッピングすることを含む、請求項7または8に記載の非一時的なコンピュータ可読記憶媒体。
- 方法であって、
複数の既知の位置でタッチスクリーンに接触するステップを含み、前記複数の既知の位置は、少なくとも、タッチセンサが第1の密度である第1の位置と、タッチセンサが第2の密度である第2の位置とを含み、前記タッチセンサの前記第2の密度は前記タッチセンサの前記第1の密度よりも小さく、前記方法はさらに、
前記タッチスクリーン上において前記複数の既知の位置に対応する複数の測定された位置を決定するステップと、
前記複数の測定された位置を前記複数の既知の位置にマッピングするマップを生成するステップとを含む、方法。 - モバイルコンピューティングデバイスのメモリに前記マップを格納するステップをさらに含む、請求項10に記載の方法。
- 前記タッチスクリーンは第1のタッチスクリーンを含み、
前記方法はさらに、
第2のタッチスクリーン上でタッチ入力を受信するステップと、
前記第2のタッチスクリーン上の前記タッチ入力の位置がカメラに近接する予め定義されたエリア内にあったと判断するステップと、
前記タッチ入力の前記位置および前記生成されたマップに基づいて前記タッチ入力についてのシフト値を決定するステップと、
前記タッチ入力の前記位置および前記決定されたシフト値に基づいて前記タッチ入力を処理するステップとを含む、請求項10または11に記載の方法。 - 命令が格納された非一時的なコンピュータ可読記憶媒体であって、前記命令は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、
異なる時間に受信されるとともに単一の可動接点に含まれる複数のタッチ入力を受信することと、
前記複数のタッチ入力のうち少なくとも1つのタッチ入力の測定された位置が歪んでいると判断することと、
前記複数のタッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいると判断することに基づいて、前記複数のタッチ入力のうち少なくとも1つのタッチ入力の歪んでいる位置と、前記複数のタッチ入力のうち少なくとも2つの他のタッチ入力の位置とに基づき、前記複数のタッチ入力のうち前記少なくとも1つのタッチ入力の歪んだ位置を補正することと、
補正された位置で前記複数のタッチ入力を処理することとを行なわせるように構成される、非一時的なコンピュータ可読記憶媒体。 - 前記歪んだ位置を補正することは、前記複数のタッチ入力の位置にフィルタを適用することを含む、請求項13に記載の非一時的なコンピュータ可読記憶媒体。
- 前記歪んだ位置を補正することは、無限インパルス応答フィルタを前記複数のタッチ入力の位置に適用することを含む、請求項13に記載の非一時的なコンピュータ可読記憶媒体。
- 前記歪んだ位置を補正することは、カルマンフィルタを前記複数のタッチ入力の位置に適用することを含む、請求項13に記載の非一時的なコンピュータ可読記憶媒体。
- 前記歪んだ位置を補正することは、前記複数のタッチ入力の位置にバターワースフィルタを適用することを含む、請求項13に記載の非一時的なコンピュータ可読記憶媒体。
- 前記複数のタッチ入力はタッチスクリーンを介して受信される、請求項13から17のいずれか1項に記載の非一時的なコンピュータ可読記憶媒体。
- 前記複数のタッチ入力は静電容量式タッチスクリーンを介して受信される、請求項13から17のいずれか1項に記載の非一時的なコンピュータ可読記憶媒体。
- 前記命令はさらに、前記コンピューティングデバイスに、
前記複数のタッチ入力が予め定められた期間内に受信されたと判断することを行なわせるように構成され、
前記歪んだ位置を補正することは、前記複数のタッチ入力が前記予め定められた期間内に受信されたと判断することと、前記複数のタッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいると判断することとに基づいて、前記歪んだ位置を補正することを含む、請求項13から19のいずれか1項に記載の非一時的なコンピュータ可読記憶媒体。 - プロセッサと、カメラと、非一時的なコンピュータ可読記憶媒体とを備えるコンピュータシステムであって、
前記プロセッサは、前記コンピュータ可読記憶媒体に格納された命令を実行すると、
第1の位置における第1のタッチ入力を示す第1の測定されたタッチ値を受信することと、
前記第1の位置よりも前記カメラから遠い第2の位置における第2のタッチ入力を示す第2の測定されたタッチ値を受信することとを行なうように構成され、前記第2の位置におけるタッチセンサの密度は、前記第1の位置におけるタッチセンサの密度よりも大きく、さらに、
前記第1の測定されたタッチ値および第1のスケーリング値に基づいて、第1の補償されたタッチ値を生成することと、
前記第2の測定されたタッチ値と、前記第1のスケーリング値よりも小さい第2のスケーリング値とに基づいて第2の補償されたタッチ値を生成することと、
前記第1の補償されたタッチ値および前記第2の補償されたタッチ値に基づいて、前記第1のタッチ入力および前記第2のタッチ入力を処理することとを行なうように構成される、コンピュータシステム。 - プロセッサと、非一時的なコンピュータ可読記憶媒体とを備えるコンピュータシステムであって、
前記プロセッサは、前記コンピュータ可読記憶媒体に格納された命令を実行すると、
タッチスクリーン上のタッチ入力の測定された位置が、カメラに対する近接基準を満たす予め定義されたエリア内にあると判断することと、
前記タッチ入力の前記測定された位置に基づいて前記タッチ入力についてのシフト値を決定することと、
前記測定された位置および前記シフト値に基づいて、前記タッチ入力についてのシフトされた位置を決定することと、
前記シフトされた位置に基づいて前記タッチ入力を処理することとを行なうように構成される、コンピュータシステム。 - プロセッサと、非一時的なコンピュータ可読記憶媒体とを備えるコンピュータシステムであって、
前記プロセッサは、前記コンピュータ可読記憶媒体に格納された命令を実行すると、
異なる時間に受信されるとともに単一の可動接点に含まれる複数のタッチ入力を受信することと、
前記複数のタッチ入力のうち少なくとも1つのタッチ入力の測定された位置が歪んでいると判断することと、
前記複数のタッチ入力のうち少なくとも1つのタッチ入力の位置が歪んでいると判断することに基づいて、前記複数のタッチ入力のうち少なくとも1つのタッチ入力の歪んでいる位置と、前記複数のタッチ入力のうち少なくとも2つの他のタッチ入力の位置とに基づき、前記複数のタッチ入力のうち前記少なくとも1つのタッチ入力の前記歪んだ位置を補正することと、
補正された位置で前記複数のタッチ入力を処理することとを行なうように構成される、コンピュータシステム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2020/070117 WO2021247086A1 (en) | 2020-06-03 | 2020-06-03 | Correcting touch inputs |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023528061A true JP2023528061A (ja) | 2023-07-03 |
Family
ID=71950850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022574627A Pending JP2023528061A (ja) | 2020-06-03 | 2020-06-03 | タッチ入力の補正 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20230236698A1 (ja) |
EP (1) | EP4162350A1 (ja) |
JP (1) | JP2023528061A (ja) |
KR (1) | KR20230003202A (ja) |
CN (1) | CN115605831A (ja) |
WO (1) | WO2021247086A1 (ja) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201203052A (en) * | 2010-05-03 | 2012-01-16 | Flatfrog Lab Ab | Touch determination by tomographic reconstruction |
US9164607B2 (en) * | 2012-11-30 | 2015-10-20 | 3M Innovative Properties Company | Complementary touch panel electrodes |
US10410037B2 (en) * | 2015-06-18 | 2019-09-10 | Shenzhen GOODIX Technology Co., Ltd. | Under-screen optical sensor module for on-screen fingerprint sensing implementing imaging lens, extra illumination or optical collimator array |
GB2544307B (en) * | 2015-11-12 | 2018-02-07 | Cambridge Touch Tech Ltd | Processing signals from a touchscreen panel |
US10025428B2 (en) * | 2015-11-19 | 2018-07-17 | Synaptics Incorporated | Method and apparatus for improving capacitive sensing detection |
US9874974B2 (en) * | 2016-04-08 | 2018-01-23 | Stmicroelectronics Asia Pacific Pte Ltd | Dead zone compensation for touch screens |
CN107450841B (zh) * | 2017-08-08 | 2019-05-07 | 腾讯科技(深圳)有限公司 | 交互对象控制方法及装置 |
-
2020
- 2020-06-03 WO PCT/US2020/070117 patent/WO2021247086A1/en unknown
- 2020-06-03 CN CN202080100917.2A patent/CN115605831A/zh active Pending
- 2020-06-03 US US17/999,019 patent/US20230236698A1/en active Pending
- 2020-06-03 EP EP20751847.3A patent/EP4162350A1/en active Pending
- 2020-06-03 JP JP2022574627A patent/JP2023528061A/ja active Pending
- 2020-06-03 KR KR1020227041963A patent/KR20230003202A/ko unknown
Also Published As
Publication number | Publication date |
---|---|
WO2021247086A1 (en) | 2021-12-09 |
KR20230003202A (ko) | 2023-01-05 |
CN115605831A (zh) | 2023-01-13 |
EP4162350A1 (en) | 2023-04-12 |
US20230236698A1 (en) | 2023-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107111400B (zh) | 估计触摸力的方法和装置 | |
AU2014307237B2 (en) | Method and apparatus for recognizing grip state in electronic device | |
JP5620440B2 (ja) | 表示制御装置、表示制御方法及びプログラム | |
US9798420B2 (en) | Electronic apparatus, control method therefor, and storage medium | |
WO2015163842A1 (en) | Apportionment of forces for multi-touch input devices of electronic devices | |
US10228840B2 (en) | Method of controlling touch function and an electronic device thereof | |
US11243639B2 (en) | Touch detection method, touch detection apparatus, and touch sensor controller | |
US9557781B2 (en) | Adjusting coordinates of touch input | |
US20140181734A1 (en) | Method and apparatus for displaying screen in electronic device | |
US20120026135A1 (en) | Methods and devices for determining user input location based on device support configuration | |
TWI485582B (zh) | 修正觸碰位置的方法 | |
JP2013156895A (ja) | タッチパネルのタッチ位置補正処理方法及びプログラム | |
JP2023528061A (ja) | タッチ入力の補正 | |
JP6141290B2 (ja) | マルチポインタ間接入力装置の加速度によるインターラクション | |
CN112102794B (zh) | 消除触控屏触摸痕迹的方法、装置和计算机可读存储介质 | |
CN105335118A (zh) | 一种电子设备控件的显示方法和装置 | |
US20130342581A1 (en) | Touch sensor navigation | |
US20110142260A1 (en) | Method and apparatus for outputting audio signal in portable terminal | |
US9870085B2 (en) | Pointer control method and electronic device thereof | |
EP2801015A1 (en) | Adjusting coordinates of touch input | |
KR20190028963A (ko) | 손떨림 보정 기반의 터치 입력 보정 장치 | |
CN110187144B (zh) | 加速度传感器校准方法及装置 | |
TWI465981B (zh) | 觸控裝置及其觸控點位置校準方法 | |
US20240004478A1 (en) | Gesture interaction method, apparatus and electronic device | |
US20210208677A1 (en) | Apparatus and method for adaptively magnifying graphic user interfaces on display |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230221 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230221 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240305 |