WO2017163297A1 - 座標補正装置、座標補正方法及び座標補正プログラム - Google Patents

座標補正装置、座標補正方法及び座標補正プログラム Download PDF

Info

Publication number
WO2017163297A1
WO2017163297A1 PCT/JP2016/058898 JP2016058898W WO2017163297A1 WO 2017163297 A1 WO2017163297 A1 WO 2017163297A1 JP 2016058898 W JP2016058898 W JP 2016058898W WO 2017163297 A1 WO2017163297 A1 WO 2017163297A1
Authority
WO
WIPO (PCT)
Prior art keywords
coordinate
touch
coordinates
unit
coordinate correction
Prior art date
Application number
PCT/JP2016/058898
Other languages
English (en)
French (fr)
Inventor
佐々木 雄一
堀 淳志
森 健太郎
博康 根岸
Original Assignee
三菱電機株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to DE112016006646.5T priority Critical patent/DE112016006646T5/de
Priority to CA3008371A priority patent/CA3008371C/en
Priority to CN201680082273.2A priority patent/CN108700961B/zh
Priority to US16/061,554 priority patent/US20190310755A1/en
Priority to JP2016548391A priority patent/JP6022137B1/ja
Priority to PCT/JP2016/058898 priority patent/WO2017163297A1/ja
Publication of WO2017163297A1 publication Critical patent/WO2017163297A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • G06F3/04182Filtering of noise external to the device and not generated by digitiser components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/04104Multi-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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • G06F3/0446Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means using a grid-like structure of electrodes in at least two directions, e.g. using row and column electrodes

Definitions

  • Patent Document 2 in order to prevent a coordinate greatly different from the original coordinate from being obtained as an average value when the coordinate displacement direction changes in the middle, the number of coordinate samples to be averaged is determined according to the coordinate displacement direction.
  • FIG. 15 is a flowchart showing the operation of the coordinate correction apparatus according to the sixth embodiment.
  • Graph showing an example of a function of the filter intensity W y corresponding to the vertical distance H of the touch position.
  • Table showing an example of a table that specifies a filter intensity W y corresponding to the vertical distance H relative position and the touch position of the touch position on the touch sensor 105.
  • FIG. 10 is a block diagram illustrating a configuration of a coordinate correction apparatus according to a seventh embodiment.
  • the coordinate correction apparatus 100 includes a coordinate acquisition unit 110, a coordinate correction unit 120, and an application unit 130 as functional elements.
  • the coordinate correction unit 120 includes a movement amount calculation unit 121, a filter strength setting unit 123, a parameter update unit 126, and a coordinate filter unit 127.
  • Functions of “units” such as the coordinate acquisition unit 110, the coordinate correction unit 120, and the application unit 130 are realized by software.
  • the application unit 130 may be provided outside the coordinate correction apparatus 100.
  • the touch panel 103 includes a display 104 and a touch sensor 105.
  • the display 104 is specifically an LCD (Liquid Crystal Display).
  • the touch sensor 105 is specifically a capacitive sensor, but may be another sensor such as a resistive film sensor.
  • the touch sensor 105 is a grid-like X electrode and Y electrode configured by arranging ITO (Indium Tin Oxide) so as to be orthogonal to each other in the vertical and horizontal directions.
  • the operation of the coordinate correction apparatus 100 corresponds to the coordinate correction method according to the present embodiment.
  • the operation of the coordinate correction apparatus 100 corresponds to the processing procedure of the coordinate correction program according to the present embodiment.
  • the movement amount calculation unit 121 may apply a plurality of filter methods and calculate the touch movement amount based on the obtained coordinate difference after filtering. Alternatively, the movement amount calculation unit 121 may calculate the touch movement amount by averaging or a combination of a plurality of filter methods. The movement amount calculation unit 121 stores the calculated touch movement amount in the memory 102.
  • step S14 the parameter update unit 126 adjusts the filter strength based on the filter strength set in step S11 and the touch movement amount obtained in step S13. Specifically, the parameter update unit 126 determines the filter strength from the filter strength parameter input by the filter strength setting unit 123 and the touch movement amount stored in the memory 102, and stores the final filter in the memory 102. Store the intensity parameter.
  • the capacitive touch panel 103 has a problem that the coordinates are blurred even when the same position is touched when the touch is stationary under a poor power supply environment.
  • the number of samples is only two in total, one first coordinate and one second coordinate.
  • the delay that occurs during processing of the touch operation becomes small. Therefore, a smooth operation can be performed during touch movement.
  • the number of samples is preferably small, but may be three or more.
  • the filter is made stronger or weaker according to the touch movement amount.
  • the parameter update unit 126 can improve the followability of the touch operation by reducing the filter strength when the touch movement amount obtained by the movement amount calculation unit 121 is large. Also, when the touch movement amount obtained by the movement amount calculation unit 121 is small, the parameter updating unit 126 can improve the performance of suppressing the coordinate blur by increasing the filter strength.
  • step S25 the parameter updating unit 126 adjusts the filter strength based on the filter strength set in step S21, the touch movement amount obtained in step S23, and the touch movement direction obtained in step S24. Specifically, the parameter update unit 126 determines the filter strength from the filter strength parameter input by the filter strength setting unit 123 and the touch movement amount and the touch movement direction stored in the memory 102 and stores them in the memory 102. Store the final filter strength parameters.
  • the coordinate correction unit 120 sets the weight of the second coordinate to be larger as the change in the touch movement direction is larger. Therefore, it is possible to suppress both the coordinate blur that is noticeable when the change in the touch movement direction is large and the delay that is noticeable when the change in the touch movement direction is small.
  • the noise measurement unit 124 estimates the amount of noise based on the coordinate history stored in the memory 102, and stores the amount of noise in the memory 102. Specifically, the noise measurement unit 124 obtains the touch movement direction from the coordinates of several samples as shown in FIG. When the touch movement direction is not determined, that is, when the touch is stationary, the noise measurement unit 124 extracts a deviation value from the average value as the noise amount. When the touch movement direction is determined, that is, when the touch movement is performed, the noise measurement unit 124 extracts the distance between the touch movement direction and the vertical component of each coordinate as a noise amount. As a result, it is possible to detect the coordinate movement due to the touch operation and the coordinate blur due to noise without making a mistake.
  • step S44 the parameter updating unit 126 sets the filter strength based on the touch movement amount obtained in step S42 and the noise amount obtained in step S43. Specifically, the parameter updating unit 126 determines the filter strength from the touch movement amount and the noise amount stored in the memory 102 and stores the filter strength parameter in the memory 102.
  • W and V are readjusted so that the speed of the coordinate movement after the filtering process does not fall below the target speed.
  • W is small, if W is applied as it is, the delay becomes large.
  • W 0 (> W) where the moving speed of the coordinate after the filtering process does not fall below the target speed is obtained from the current V, and the filter A filter can be applied so that the delay does not increase by using the update parameter.
  • W is large, filter processing with an emphasis on followability can be performed by applying the filter as it is.
  • the parameter updating unit 126 may adjust the filter strength by an arbitrary method using an expression or table that defines the relationship between the noise amount ⁇ and W from the past to the present.
  • step S45 the coordinate correction unit 120 corrects the lower limit value instead of the calculation result when the distance between the calculation result of the weighted average and the corrected coordinate output last time is smaller than the lower limit value that differs depending on the touch movement amount. Output as later coordinates.
  • the setting of the lower limit value may be performed by any method, but as a specific example, as described above, it can be performed by setting the target speed.
  • the specific gravity corresponding to the finger movement amount is given.
  • the specific gravity can be adjusted according to the amount of noise. Since R is small when the amount of noise is small, the specific gravity is calculated so that the observed coordinate itself is used rather than the estimated value of the coordinate. Since R increases when the amount of noise is large, the specific gravity is calculated so as to use coordinates estimated from speed or the like rather than the observed coordinates. This makes it possible to obtain the same effect as when W and V in Expression 1 are increased or decreased.
  • the filter strength setting unit 123 estimates the touch position by averaging the coordinates of several samples, and the filter strength W corresponding to the touch position Z prepared in advance as shown in FIG. From the function, W in Equation 1 is determined.
  • the filter strength setting unit 123 uses the median value or frequency distribution or the like, or uses a table specifying the filter strength W according to the touch position Z as shown in FIG. To decide.
  • step S53 the coordinate correction unit 120 estimates the relative position of the new touch position with respect to the plurality of touch sensors 105 provided in the touch panel 103 from the first coordinates.
  • step S54 the coordinate correction unit 120 sets the weight of the second coordinate to be larger as the estimated relative position is closer to the boundary position between the two touch sensors 105 adjacent to each other.
  • Embodiment 6 FIG. In the present embodiment, differences from the fifth embodiment will be mainly described.
  • the coordinate correction unit 120 includes a movement amount calculation unit 121, a filter strength setting unit 123, a parameter update unit 126, and a coordinate filter unit 127.
  • step S67 in the case of a one-point touch, the coordinate filter unit 127 uses the W obtained in step S64 as W x and W y , and uses the following Expression 2 and X for the X direction and the Y direction, respectively. Filtering is performed according to Equation 3, and the obtained result is stored in the memory 102.
  • the X direction is the horizontal direction.
  • the Y direction is the vertical direction.
  • the coordinate filter unit 127 uses the W x and W y obtained in step S65 to perform filter processing according to the following formulas 2 and 3 for the X direction and the Y direction, respectively. And the obtained result is stored in the memory 102.
  • the coordinate correction unit 120 includes a movement amount calculation unit 121, a filter strength setting unit 123, an interval measurement unit 125, a parameter update unit 126, and a coordinate filter unit 127.
  • the interval measuring unit 125 initializes variables of the touch interval and the drawing interval.
  • the interval measuring unit 125 initializes the drawing interval variable in about 16 milliseconds, and measures the touch interval variable in advance. Set the interval. Each variable is stored in the memory 102.
  • step S75 the interval measuring unit 125 measures the touch interval from the time when the coordinates are acquired in step S74, and updates the variable stored in the memory 102.
  • step S76 to step S78 is repeated for the number of acquired coordinates.
  • the drawing interval and the touch interval are the same, it is not necessary to adjust the drawing interval. However, in situations where power supply noise occurs, it is more likely that the coordinates of the touch position will be more delayed if there are as many coordinates as possible. It is possible to perform a filtering process with suppressed. Therefore, it is effective to consider the drawing interval while making the touch interval as fast as possible.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Position Input By Displaying (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

座標補正装置(100)において、座標取得部(110)は、タッチパネル(103)に対するタッチ操作が継続されているときにタッチパネル(103)におけるタッチ位置の座標を順次取得する。座標補正部(120)は、座標取得部(110)により新たなタッチ位置の座標である第1座標が取得された場合、タッチパネル(103)におけるタッチ移動量に応じて異なる重み付けを適用して、第1座標と、座標取得部(110)により取得された過去のタッチ位置の座標から決定される第2座標との加重平均を計算する。座標補正部(120)は、計算結果を補正後の座標として出力する。アプリケーション部(130)は、補正後の座標を利用する。

Description

座標補正装置、座標補正方法及び座標補正プログラム
 本発明は、座標補正装置、座標補正方法及び座標補正プログラムに関するものである。
 特許文献1には、タッチパネルにおけるペン軌跡を滑らかな線で表示するために、タッチパネルから取得される座標のうちの数サンプルを平均化して座標ぶれを抑える技術が記載されている。
 特許文献2には、座標の変位方向が途中で変わった場合に本来の座標と大きく異なった座標が平均値として得られることを防ぐために、平均化する座標のサンプル数を座標の変位方向に応じて異ならせる技術が記載されている。
特開平8-272534号公報 特開2005-85141号公報
 静電容量方式のタッチパネルには、劣悪な電源環境下において、タッチ静止時に同じ位置がタッチされているのに、座標がぶれてしまうという課題がある。この座標ぶれを特許文献1に記載の技術で抑えるためには、平均化する座標のサンプル数を多くする必要がある。しかし、サンプル数が多くなるほど、タッチ操作の処理時に生じる遅延が大きくなる。この遅延は、タッチ移動時にスムーズな操作を妨げる要因となる。
 劣悪な電源環境下において、タッチ静止時には、座標がぶれるだけでなく、座標の変位方向が変わってしまう。特許文献2に記載の技術では、座標の変位方向が変わると、平均化する座標のサンプル数を少なくするため、余計に座標ぶれが多く発生してしまう。
 本発明は、タッチ静止時の座標ぶれとタッチ移動時の遅延との両方を抑えることを目的とする。
 本発明の一態様に係る座標補正装置は、
 タッチパネルに対するタッチ操作が継続されているときに前記タッチパネルにおけるタッチ位置の座標を順次取得する座標取得部と、
 前記座標取得部により新たなタッチ位置の座標である第1座標が取得された場合、前記タッチパネルにおけるタッチ移動量及びタッチ移動方向の少なくともいずれかに応じて異なる重み付けを適用して、前記第1座標と、前記座標取得部により取得された過去のタッチ位置の座標から決定される第2座標との加重平均を計算し、計算結果を補正後の座標として出力する座標補正部とを備える。
 本発明では、新たなタッチ位置の座標である第1座標と、過去のタッチ位置の座標から決定される第2座標との加重平均が計算され、計算結果が補正後の座標として出力される。加重平均の計算には、タッチ移動量及びタッチ移動方向の少なくともいずれかに応じて異なる重み付けが適用される。このため、タッチ静止時の座標ぶれとタッチ移動時の遅延との両方を抑えることができる。
実施の形態1に係る座標補正装置の構成を示すブロック図。 実施の形態1に係る座標補正装置の動作を示すフローチャート。 フィルタ強度の違いによる軌跡の変化の例を示す図。 タッチ移動量とフィルタ強度Vとの対応関係を定義したテーブルの例を示す表。 実施の形態2に係る座標補正装置の構成を示すブロック図。 実施の形態2に係る座標補正装置の動作を示すフローチャート。 タッチ移動量及びタッチ移動方向を考慮したフィルタ強度の設定の例を示す図。 平行移動の2点タッチ操作が別の2点タッチ操作と誤認識される例を示す図。 実施の形態3に係る座標補正装置の構成を示すブロック図。 実施の形態3に係る座標補正装置の動作を示すフローチャート。 平行移動の2点タッチ操作の軌跡が補正される例を示す図。 実施の形態4に係る座標補正装置の構成を示すブロック図。 実施の形態4に係る座標補正装置の動作を示すフローチャート。 ノイズ量を抽出する例を示す図。 目標の速さの設定の例を示すグラフ。 短冊状のセンサパターンの例を示す図。 タッチ位置の違いによる座標ぶれの変化の例を示す図。 実施の形態5に係る座標補正装置の構成を示すブロック図。 実施の形態5に係る座標補正装置の動作を示すフローチャート。 タッチ位置Zに応じたフィルタ強度Wの関数の例を示すグラフ。 タッチ位置Zに応じたフィルタ強度Wを指定したテーブルの例を示す表。 2点タッチ操作時の2点の位置関係による座標ぶれの変化の例を示す図。 実施の形態6に係る座標補正装置の構成を示すブロック図。 実施の形態6に係る座標補正装置の動作を示すフローチャート。 タッチ位置の縦の距離Hに応じたフィルタ強度Wの関数の例を示すグラフ。 タッチ位置の縦の距離Hに応じたフィルタ強度Wを指定したテーブルの例を示す表。 タッチセンサ105に対するタッチ位置の相対位置とタッチ位置の縦の距離Hとに応じたフィルタ強度Wを指定したテーブルの例を示す表。 描画間隔とタッチ間隔との違いによるGUI部品の移動速度のばらつきの例を示す図。 実施の形態7に係る座標補正装置の構成を示すブロック図。 実施の形態7に係る座標補正装置の動作を示すフローチャート。 描画間隔及びタッチ間隔の例を示す図。 描画間隔及びタッチ間隔を考慮したフィルタ強度の設定の例を示す図。
 以下、本発明の実施の形態について、図を用いて説明する。なお、各図中、同一又は相当する部分には、同一符号を付している。実施の形態の説明において、同一又は相当する部分については、その説明を適宜省略又は簡略化する。
 実施の形態1.
 ***構成の説明***
 図1を参照して、本実施の形態に係る座標補正装置100の構成を説明する。
 座標補正装置100は、コンピュータである。座標補正装置100は、プロセッサ101、メモリ102、タッチパネル103、タッチ検出回路106といったハードウェアを備える。プロセッサ101は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
 座標補正装置100は、機能要素として、座標取得部110と、座標補正部120と、アプリケーション部130とを備える。本実施の形態において、座標補正部120は、移動量計算部121と、フィルタ強度設定部123と、パラメータ更新部126と、座標フィルタ部127とを備える。座標取得部110、座標補正部120、アプリケーション部130といった「部」の機能は、ソフトウェアにより実現される。なお、アプリケーション部130は、座標補正装置100の外部に備えられていてもよい。
 プロセッサ101は、プロセッシングを行うIC(Integrated Circuit)である。プロセッサ101は、具体的には、CPU(Central Processing Unit)である。
 メモリ102は、具体的には、フラッシュメモリ、又は、RAM(Random Access Memory)である。
 タッチパネル103は、表示器104と、タッチセンサ105とを備える。表示器104は、具体的には、LCD(Liquid Crystal Display)である。タッチセンサ105は、具体的には、静電容量方式のセンサであるが、抵抗膜方式等、他の方式のセンサでもよい。タッチセンサ105は、本実施の形態では、ITO(Indium Tin Oxide)を縦横に直交するように並べて構成された格子状のX電極及びY電極である。
 タッチ検出回路106は、タッチパネル103におけるタッチ位置を検出するICである。タッチ検出回路106は、タッチセンサ105の各電極に対し、静電容量を検出するための信号を印加する。タッチ検出回路106は、指が接触したときの信号の変化からタッチ位置を検出する。タッチ検出回路106は、検出したタッチ位置の座標をプロセッサ101に送信する。
 座標補正装置100は、ハードウェアとして、通信装置を備えていてもよい。
 通信装置は、データを受信するレシーバ及びデータを送信するトランスミッタを含む。通信装置は、具体的には、通信チップ又はNIC(Network Interface Card)である。
 メモリ102には、「部」の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ101に読み込まれ、プロセッサ101によって実行される。メモリ102には、GUI(Graphic User Interface)を提供するOS(Operating System)も記憶されている。プロセッサ101は、OSを実行しながら、座標取得部110及び座標補正部120の機能を実現するプログラムを実行する。或いは、プロセッサ101は、座標取得部110及び座標補正部120の機能を実現するプログラムとして、OSを実行する。メモリ102には、GUIを利用するアプリケーションプログラムも記憶されている。プロセッサ101は、OSを実行しながら、アプリケーション部130の機能を実現するプログラムとして、アプリケーションプログラムを実行する。
 なお、「部」の機能を実現するプログラム及びOSは、補助記憶装置に記憶されていてもよい。補助記憶装置は、具体的には、フラッシュメモリ、又は、HDD(Hard Disk Drive)である。補助記憶装置に記憶されているプログラム及びOSは、メモリ102にロードされ、プロセッサ101によって実行される。
 座標補正装置100は、1つのプロセッサ101のみを備えていてもよいし、複数のプロセッサ101を備えていてもよい。複数のプロセッサ101が「部」の機能を実現するプログラムを連携して実行してもよい。
 「部」の処理の結果を示す情報、データ、信号値、及び、変数値は、メモリ102、補助記憶装置、又は、プロセッサ101内のレジスタ又はキャッシュメモリに記憶される。
 「部」の機能を実現するプログラムは、磁気ディスク、光ディスクといった可搬記録媒体に記憶されてもよい。
 ***動作の説明***
 図2を参照して、本実施の形態に係る座標補正装置100の動作を説明する。座標補正装置100の動作は、本実施の形態に係る座標補正方法に相当する。座標補正装置100の動作は、本実施の形態に係る座標補正プログラムの処理手順に相当する。
 ステップS11において、フィルタ強度設定部123は、パラメータ更新部126に、フィルタ強度を設定する。具体的には、フィルタ強度設定部123は、予めメモリ102に記憶されたフィルタ強度パラメータを読み込み、パラメータ更新部126にフィルタ強度パラメータを入力する。
 ステップS12において、座標取得部110は、タッチパネル103から出力されるタッチ位置の座標を取得する。具体的には、座標取得部110は、タッチ検出回路106から送信された座標を受信する。タッチ位置の座標の履歴がメモリ102に記憶されている場合、座標取得部110は、その履歴に、取得した座標を登録する。タッチ位置の座標の履歴がメモリ102に記憶されていない場合、座標取得部110は、取得した座標を登録した新たな履歴をメモリ102に記憶する。
 ステップS13において、移動量計算部121は、履歴に登録された座標の点列から、タッチ移動量を計算する。具体的には、移動量計算部121は、前回フィルタをかけられた座標と、今回取得された座標との距離をタッチ移動量として計算する。なお、移動量計算部121は、他の方法でタッチ移動量を計算してもよい。具体的には、移動量計算部121は、N回分の座標点列のうち、前半のN/2個と後半のN/2個の座標との平均値の差をタッチ移動量として計算してもよい。ここで、Nは4以上の偶数である。或いは、移動量計算部121は、複数のフィルタ方式を適用し、得られたフィルタ処理後の座標の差により、タッチ移動量を計算してもよい。或いは、移動量計算部121は、平均化又は複数のフィルタ方式の組み合わせにより、タッチ移動量を計算してもよい。移動量計算部121は、計算したタッチ移動量をメモリ102に記憶する。
 ステップS14において、パラメータ更新部126は、ステップS11で設定されたフィルタ強度と、ステップS13で求められたタッチ移動量とに基づき、フィルタ強度を調整する。具体的には、パラメータ更新部126は、フィルタ強度設定部123により入力されたフィルタ強度パラメータと、メモリ102に記憶されたタッチ移動量とから、フィルタ強度を決定し、メモリ102に最終的なフィルタ強度パラメータを記憶する。
 ステップS15において、座標フィルタ部127は、パラメータ更新部126により調整されたフィルタ強度と、座標取得部110により取得された座標とを基に、フィルタを適用する。具体的には、座標フィルタ部127は、メモリ102に記憶されたフィルタ強度パラメータと、現在のタッチ位置の座標と、過去のフィルタ処理後の座標とを基に、フィルタ処理を施し、得られた座標をメモリ102に記憶する。本実施の形態において、座標フィルタ部127は、パラメータ更新部126により入力されたフィルタ強度パラメータと、現在の座標と、前回のフィルタ処理後の座標とをメモリ102から読み込み、以下の式1によりフィルタ処理を行い、得られた結果をメモリ102に記憶する。
 P=(W・X+V・Pi-1)/(W+V)・・・式1
 ここで、Pはフィルタ処理後の座標、Pi-1は前回フィルタ処理された座標、Xは取得された現在のタッチ位置の座標、W及びVはパラメータ更新部126により調整されたフィルタ強度である。なお、式1において、前回フィルタ処理された座標が存在しない場合、P=Xとなる。
 図3は、指を一定の速度で動かした場合に、式1でWの値を固定し、Vの値を徐々に大きくした場合のフィルタ適用時の軌跡の変化を示している。Vが大きくなるほど、前回フィルタ処理された座標の比重が大きくなり、指に対する追従性が落ちるが、座標ぶれを抑えることができるようになる。一方で、画面上のリストをスクロールするような操作をする場合、指をゆっくり動かしているときのぶれは際立って見えるが、指を素早く動かしているときのぶれは指の移動量に比べて小さいため、スクロール中にぶれが発生しているように見えにくい。画面上のリストをタップするような操作が行われた場合、座標ぶれが発生すると、リストをスクロールする操作と誤認識されてしまう場合がある。
 以上から、座標ぶれを抑えるためのフィルタは、指が静止していると推定される場合には、ぶれを抑制するために強度を上げて、指が移動していると推定される場合には、追従性を向上させるために強度を下げるのがよい。
 ステップS14では、上記の理由から、ステップS13で求められたタッチ移動量を用いてフィルタ強度を調整することで、移動中及び静止中の両方に適したフィルタを行えるようにする。具体的には、パラメータ更新部126は、式1のWについてはフィルタ強度設定部123がメモリ102に記憶したフィルタ強度パラメータを用いる。パラメータ更新部126は、式1のVについては移動量計算部121がメモリ102に記憶したタッチ移動量ΔXを読み込み、V=A・ΔXとすることで、フィルタ強度を調整する。ここで、Aは、Vを求めるための調整用のパラメータである。或いは、パラメータ更新部126は、移動量計算部121がメモリ102に記憶した現在のタッチ移動量ΔXと、前回のタッチ移動量ΔXi-1とを読み込み、V=A・ΔX+B・ΔXi-1とすることで、過去のタッチ移動量も考慮してフィルタ強度を調整する。ここで、AとBは、Vを求めるための調整用のパラメータである。或いは、パラメータ更新部126は、移動量計算部121がメモリ102に記憶した現在のタッチ移動量ΔXを読み込み、図4に示すような、タッチ移動量とフィルタ強度Vとの対応関係を定義したテーブルを参照することで、フィルタ強度を調整する。なお、パラメータ更新部126は、移動量計算部121がメモリ102に記憶したタッチ移動量を読み込み、過去から現在までのタッチ移動量とVとの関係を定義した式又はテーブルを用いた任意の方法で、フィルタ強度を調整してもよい。
 ステップS16において、アプリケーション部130は、座標フィルタ部127でフィルタ処理された後の座標を用いて、タッチ操作時のGUI制御を行う。具体的には、アプリケーション部130は、メモリ102からフィルタ処理後の座標を読み込み、その座標に応じたタッチイベント制御及びGUIコンポーネントの移動を行う。アプリケーション部130は、表示器104へGUIの表示命令を送る。
 ステップS16の処理の後、再びステップS12の処理が行われる。
 上記のように、ステップS12において、座標取得部110は、タッチパネル103に対するタッチ操作が継続されているときにタッチパネル103におけるタッチ位置の座標を順次取得する。ステップS13からステップS15において、座標補正部120は、座標取得部110により新たなタッチ位置の座標である第1座標が取得された場合、タッチパネル103におけるタッチ移動量に応じて異なる重み付けを適用して、第1座標と、座標取得部110により取得された過去のタッチ位置の座標から決定される第2座標との加重平均を計算する。座標補正部120は、計算結果を補正後の座標として出力する。ステップS16において、アプリケーション部130は、補正後の座標を利用する。
 本実施の形態では、式1のPが座標補正部120により出力される補正後の座標に相当する。また、式1のXが第1座標に相当し、座標補正部120により過去に出力された補正後の座標、具体的には式1のPi-1が第2座標に相当する。
 前述したように、静電容量方式のタッチパネル103には、劣悪な電源環境下において、タッチ静止時に同じ位置がタッチされているのに、座標がぶれてしまうという課題がある。本実施の形態では、タッチ移動量に応じて異なる重み付けを適用することで、平均化する座標のサンプル数を多くしなくても、タッチ静止時の座標ぶれを抑えることができる。式1では、サンプル数が、1つの第1座標と、1つの第2座標との合計2つのみである。このように、サンプル数が少なければ、タッチ操作の処理時に生じる遅延が小さくなる。よって、タッチ移動時にスムーズな操作が可能となる。なお、サンプル数は、少ないことが望ましいが、3つ以上であってもよい。
 本実施の形態において、座標補正部120は、タッチ移動量が小さいほど、第2座標の重みを大きく設定する。したがって、タッチ移動量が小さいときに目立つ座標ぶれと、タッチ移動量が大きいときに目立つ遅延との両方を抑えることができる。
 以上のように、本実施の形態では、タッチ移動量に応じてフィルタ強度が切り替えられ、現在のタッチ位置の座標にフィルタがかけられていく。そのため、指静止中にはぶれをより抑えたフィルタを実現し、指移動時にはフィルタ処理による遅延をより抑えたフィルタを実現することができる。
 本実施の形態では、画面上のリストをスクロールするような場合に、前述したようなフィルタ処理を行うことで、見た目のぶれ、及び、タップ又は長押し等の誤動作を軽減し、かつ、指を移動させたときのスクロールの遅れを抑えることができるようになる。
 本実施の形態では、式1を基にしてフィルタを適用した場合に、フィルタを強弱させる方式を採用しているが、このほかにもカルマンフィルタを適用することができる。
 カルマンフィルタを用いる場合、観測されるタッチ位置の座標には誤差が含まれると考えられる。過去のタッチ位置の座標及び移動速度等から座標が推測される。推測された座標についても誤差が含まれると考えられる。観測値と推測された座標のうち誤差が小さい方の座標の比重が大きくなるようにフィルタが適用される。この比重を調整するためには、観測誤差Rと座標位置を推測するときの誤差Qとを設定すればよい。
 本実施の形態のフィルタ強弱に当てはめた場合、フィルタ強度設定部123がメモリ102に記憶した値をRとし、移動量計算部121が求めたタッチ移動量をQとすれば、指が大きく移動している場合はQが大きくなるため、座標の推測値よりも観測した座標そのものを使うように比重が計算される。指があまり移動していない場合はQが小さくなるため、観測した座標よりも速度等から推測した座標を使うように比重が計算される。これにより、式1のVを増減する場合と同等の効果を得ることが可能となる。
 本実施の形態をカルマンフィルタに応用する場合は、過去のタッチ位置の座標から座標取得部110により次に取得されると推測された座標が、前述した第2座標に相当する。
 上記以外の座標を用いたフィルタ全般に対して、フィルタ強度をタッチ移動量に応じて強弱させることで、本実施の形態と同等の効果を得ることが可能である。
 ***実施の形態の効果の説明***
 本実施の形態では、新たなタッチ位置の座標である第1座標と、過去のタッチ位置の座標から決定される第2座標との加重平均が計算され、計算結果が補正後の座標として出力される。加重平均の計算には、タッチ移動量に応じて異なる重み付けが適用される。このため、タッチ静止時の座標ぶれとタッチ移動時の遅延との両方を抑えることができる。
 本実施の形態では、タッチ移動量に応じてフィルタが強弱させられる。具体的には、パラメータ更新部126が、移動量計算部121が求めたタッチ移動量が大きい場合にフィルタ強度を弱くすることでタッチ操作の追従性を向上させることができる。また、パラメータ更新部126が、移動量計算部121が求めたタッチ移動量が小さい場合にはフィルタ強度を強くすることで座標ぶれ抑制の性能を向上させることができる。
 本実施の形態は、カルマンフィルタにも応用できる。具体的には、タッチパネル103から取得される観測値の誤差が予め設定される。座標取得部110から与えられる座標点列の移動速度及び位置から、次のタッチ位置が推定される。推定されたタッチ位置の誤差も設定される。パラメータ更新部126は、推定されたタッチ位置の誤差と観測値の誤差との比重によってフィルタ強度を調整する。観測値の誤差には、定数が設定される。推定されたタッチ位置の誤差には、移動量計算部121が求めたタッチ移動量に対応する値が設定される。
 ***他の構成***
 本実施の形態では、「部」の機能がソフトウェアにより実現されるが、変形例として、「部」の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。すなわち、1つ又はいくつかの「部」の機能が専用のハードウェアにより実現され、残りの機能がソフトウェアにより実現されてもよい。
 プロセッサ101、メモリ102、及び、タッチ検出回路106を、総称して「プロセッシングサーキットリ」という。「部」の機能がソフトウェアにより実現される場合も、「部」の機能がソフトウェアとハードウェアとの組み合わせにより実現される場合も、「部」の機能は、プロセッシングサーキットリにより実現される。
 「部」を「工程」、「手順」又は「処理」に読み替えてもよい。
 実施の形態2.
 本実施の形態について、主に実施の形態1との差異を説明する。
 実施の形態1では、タッチ移動量のパラメータを用いて操作の追従性を向上させているが、本実施の形態では、タッチ移動方向のパラメータを用いて、さらに追従性を上げる。
 ***構成の説明***
 図5を参照して、本実施の形態に係る座標補正装置100の構成を説明する。
 本実施の形態において、座標補正部120は、移動量計算部121と、移動方向推定部122と、フィルタ強度設定部123と、パラメータ更新部126と、座標フィルタ部127とを備える。
 ***動作の説明***
 図6を参照して、本実施の形態に係る座標補正装置100の動作を説明する。座標補正装置100の動作は、本実施の形態に係る座標補正方法に相当する。座標補正装置100の動作は、本実施の形態に係る座標補正プログラムの処理手順に相当する。
 ステップS21からステップS23の処理については、実施の形態1におけるステップS11からステップS13の処理と同じであるため、説明を省略する。
 ステップS24において、移動方向推定部122は、メモリ102に記憶されている履歴に登録された座標の点列を基に、タッチ移動方向を推定する。具体的には、移動方向推定部122は、前回フィルタをかけられた座標から、今回取得された座標までの移動ベクトルの向きを求めることで、タッチ移動方向を取得する。なお、移動方向推定部122は、他の方法でタッチ移動方向を推定してもよい。具体的には、移動方向推定部122は、M回分の座標点列の近似直線を求めることで、タッチ移動方向を推定してもよい。ここで、Mは3以上の整数である。移動方向推定部122は、推定したタッチ移動方向をメモリ102に記憶する。
 ステップS25において、パラメータ更新部126は、ステップS21で設定されたフィルタ強度と、ステップS23で求められたタッチ移動量と、ステップS24で求められたタッチ移動方向とに基づき、フィルタ強度を調整する。具体的には、パラメータ更新部126は、フィルタ強度設定部123により入力されたフィルタ強度パラメータと、メモリ102に記憶されたタッチ移動量及びタッチ移動方向とから、フィルタ強度を決定し、メモリ102に最終的なフィルタ強度パラメータを記憶する。
 ステップS26の処理については、実施の形態1におけるステップS15の処理と同じであるため、詳細な説明を省略するが、本実施の形態においても、座標フィルタ部127は、前述した式1によりフィルタ処理を行う。
 ステップS25では、ステップS23及びステップS24で求められたタッチ移動量及びタッチ移動方向を用いてフィルタ強度を調整することで、移動中及び静止中の両方に適したフィルタを行えるようにする。具体的には、パラメータ更新部126は、式1のWについてはフィルタ強度設定部123がメモリ102に記憶したフィルタ強度パラメータを用いる。パラメータ更新部126は、式1のVについては移動量計算部121がメモリ102に記憶したタッチ移動量ΔXを読み込み、V=A・ΔXとすることで、フィルタ強度を調整する。ここで、Aは、タッチ移動方向から求められたフィルタ強度決定係数である。具体例として、パラメータ更新部126は、移動方向推定部122がメモリ102に記憶した現在及び過去のタッチ移動方向を読み込み、図7に示すように、指が移動していない場合はAを大きく設定する。パラメータ更新部126は、指が同じ方向に移動している場合はAを小さく設定する。パラメータ更新部126は、指が斜めに進んでいる場合はAを中程度に設定する。パラメータ更新部126は、指が逆方向に進んでいる場合はAを大きく設定する。これにより、タッチ移動量とタッチ移動方向とを考慮してフィルタ強度を決定することができる。
 ステップS27の処理については、実施の形態1におけるステップS16の処理と同じであるため、説明を省略する。
 ステップS27の処理の後、再びステップS22の処理が行われる。
 上記のように、ステップS22において、座標取得部110は、タッチパネル103に対するタッチ操作が継続されているときにタッチパネル103におけるタッチ位置の座標を順次取得する。ステップS23からステップS26において、座標補正部120は、座標取得部110により新たなタッチ位置の座標である第1座標が取得された場合、タッチパネル103におけるタッチ移動量及びタッチ移動方向の両方に応じて異なる重み付けを適用して、第1座標と、座標取得部110により取得された過去のタッチ位置の座標から決定される第2座標との加重平均を計算する。座標補正部120は、計算結果を補正後の座標として出力する。ステップS27において、アプリケーション部130は、補正後の座標を利用する。なお、座標補正部120により適用される重み付けは、タッチパネル103におけるタッチ移動量及びタッチ移動方向のうちタッチ移動方向のみに応じて異なる重み付けであってもよい。
 前述したように、静電容量方式のタッチパネル103には、劣悪な電源環境下において、タッチ静止時に同じ位置がタッチされているのに、座標がぶれてしまうという課題がある。本実施の形態では、タッチ移動方向に応じて異なる重み付けを適用することで、平均化する座標のサンプル数を多くしなくても、タッチ静止時の座標ぶれを抑えることができる。式1では、サンプル数が、1つの第1座標と、1つの第2座標との合計2つのみである。このように、サンプル数が少なければ、タッチ操作の処理時に生じる遅延が小さくなる。よって、タッチ移動時にスムーズな操作が可能となる。なお、サンプル数は、少ないことが望ましいが、3つ以上であってもよい。
 本実施の形態において、座標補正部120は、タッチ移動方向の変化が大きいほど、第2座標の重みを大きく設定する。したがって、タッチ移動方向の変化が大きいときに目立つ座標ぶれと、タッチ移動方向の変化が小さいときに目立つ遅延との両方を抑えることができる。
 以上のように、本実施の形態では、タッチ移動量に加えてタッチ移動方向も考慮して、フィルタ強度を強弱させることで、同じ方向に移動している場合の追従性を向上させることができる。また、違う方向にたびたび進む座標ぶれのような動きがある場合はフィルタを強くかけることで、ユーザの操作している方向への追従性を高めつつ、フィルタの精度を向上させることができる。
 ***実施の形態の効果の説明***
 本実施の形態では、新たなタッチ位置の座標である第1座標と、過去のタッチ位置の座標から決定される第2座標との加重平均が計算され、計算結果が補正後の座標として出力される。加重平均の計算には、タッチ移動方向、又は、タッチ移動量及びタッチ移動方向の両方に応じて異なる重み付けが適用される。このため、タッチ静止時の座標ぶれとタッチ移動時の遅延との両方を抑えることができる。
 本実施の形態では、タッチ移動量に加えて、タッチ移動方向に応じてフィルタが強弱させられる。具体的には、パラメータ更新部126が、移動方向推定部122が推定した方向が同じ場合はフィルタ強度を弱くして追従性を向上させることができる。また、パラメータ更新部126が、移動方向推定部122が推定した方向が違う場合はフィルタ強度を強くして座標ぶれ抑制の性能を向上させることができる。
 ***他の構成***
 本実施の形態では、実施の形態1と同じように、「部」の機能がソフトウェアにより実現されるが、実施の形態1の変形例と同じように、「部」の機能がハードウェアにより実現されてもよい。或いは、「部」の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。
 実施の形態3.
 本実施の形態について、主に実施の形態2との差異を説明する。
 実施の形態2では、1点のなぞり操作の向きに着目しているが、2点タッチ操作の場合は、その操作が、実際にユーザが意図している操作と一致しない場合がある。具体例として、図8に示すように2点で平行にスクロールするようなタッチ操作が行われたとき、1点目及び2点目のタッチ移動量が同じではない場合がある。このようなタッチ操作は、従来技術では、平行に移動するタッチ操作とみなされず、指の距離を広げるピンチのようなタッチジェスチャ、又は、円を描くように2点の指を動かす回転のようなタッチジェスチャと誤認識されてしまう。このように、人が2点タッチ操作を行う場合は、厳密に指を平行移動させることが難しい。本実施の形態では、そのような操作も平行移動であると正しく認識できるようにする。
 ***構成の説明***
 図9を参照して、本実施の形態に係る座標補正装置100の構成を説明する。
 本実施の形態において、座標補正部120は、移動量計算部121と、移動方向推定部122と、フィルタ強度設定部123と、パラメータ更新部126と、座標フィルタ部127とを備える。
 ***動作の説明***
 図10を参照して、本実施の形態に係る座標補正装置100の動作を説明する。座標補正装置100の動作は、本実施の形態に係る座標補正方法に相当する。座標補正装置100の動作は、本実施の形態に係る座標補正プログラムの処理手順に相当する。
 ステップS31及びステップS32の処理については、実施の形態2におけるステップS21及びステップS22の処理と同じであるため、説明を省略する。
 ステップS33及びステップS34の処理は、タッチ点数分繰り返される。
 ステップS33の処理については、実施の形態2におけるステップS23の処理とほとんど同じであるため、詳細な説明を省略するが、本実施の形態において、移動量計算部121は、座標取得部110がメモリ102に記憶したマルチタッチの座標の履歴を基に、各指のタッチ移動量を計算する。
 ステップS34の処理については、実施の形態2におけるステップS24の処理とほとんど同じであるため、詳細な説明を省略するが、本実施の形態において、移動方向推定部122は、座標取得部110がメモリ102に記憶したマルチタッチの座標の履歴を基に、各指のタッチ移動方向を推定する。
 ステップS35において、パラメータ更新部126は、ステップS34で求められた各点のタッチ移動方向が同じである場合、各点のタッチ移動量が同じになるようにフィルタ強度を調整する。すなわち、パラメータ更新部126は、平行移動中の指のタッチ移動量が同じになるように、フィルタの強弱を調整する。パラメータ更新部126は、ステップS34で求められた各点のタッチ移動方向が違う場合、各点に対して実施の形態2と同じようにフィルタ強度を調整する。
 ステップS36及びステップS37の処理については、実施の形態2におけるステップS26及びステップS27の処理と同じであるため、説明を省略する。
 ステップS37の処理の後、再びステップS32の処理が行われる。
 図11にステップS31からステップS37の処理を適用した例を示す。この例では、ユーザが平行に2点のなぞり操作をしようとしている一方で、実際に検出される座標は、1点目の方が遅く動いており、2点目の方が速く動いている。
 図11では、移動方向推定部122の処理により求められた1点目及び2点目のタッチ移動方向を点線矢印で示している。パラメータ更新部126は、2つの点線矢印のなす角度を求め、この角度が一定以下であれば、同方向であるとみなす。移動量計算部121の処理により求められた1点目及び2点目のタッチ移動量から、パラメータ更新部126は、1点目及び2点目について、過去から現在までのタッチ移動量の比率を求める。この比率から、図11に示すようにパラメータ更新部126は、速度の遅い方のフィルタ強度を弱くし、速度の速い方のフィルタ強度を強くすることで、2点が平行に移動されるように調整する。
 上記のように、ステップS32において、座標取得部110は、タッチパネル103の複数箇所で同時にタッチ操作を行うマルチタッチ操作が継続されているときにタッチパネル103における複数のタッチ位置の座標を順次取得する。ステップS35において、座標補正部120は、座標取得部110により複数のタッチ位置の座標が第1座標として取得され、かつ、複数箇所におけるタッチ移動方向の差が閾値以下である場合、複数箇所のうちタッチ移動量が大きい箇所ほど、第2座標の重みを大きく設定する。
 以上のように、本実施の形態では、2点が別々の方向に移動している場合は、各点のタッチ移動量及びタッチ移動方向を考慮してフィルタ強度が設定される。2点がまったく同じ方向又はほとんど同じ方向に移動している場合は、2点のタッチ移動量が同じになるようにフィルタ強度が調整されることで、2点の平行移動で片方の指だけが速く動いた場合でも、タッチ操作がピンチ又は回転と誤認識されないようにすることが可能となる。
 ***実施の形態の効果の説明***
 本実施の形態では、マルチタッチの各点のタッチ移動方向に応じてフィルタが強弱させられて、平行移動の場合の2点のタッチ移動量が揃えられる。具体的には、パラメータ更新部126が、移動方向推定部122が求めた各点のタッチ移動方向が同じ方向の場合は、各点のタッチ移動量が同じになるようにフィルタ強度を調整することで、誤認識を防止することができる。パラメータ更新部126は、移動方向推定部122が求めた各点のタッチ移動方向が違う場合は、実施の形態2と同じようにタッチ移動方向とタッチ移動量に応じたパラメータ調整を行う。
 ***他の構成***
 本実施の形態では、実施の形態1と同じように、「部」の機能がソフトウェアにより実現されるが、実施の形態1の変形例と同じように、「部」の機能がハードウェアにより実現されてもよい。或いは、「部」の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。
 実施の形態4.
 本実施の形態について、主に実施の形態1との差異を説明する。
 実施の形態1から実施の形態3では、タッチ移動量及びタッチ移動方向の少なくともいずれかに応じてフィルタの強弱が設定されるが、本実施の形態では、タッチパネル103に加わるノイズの大きさが環境によって変わることを考慮してフィルタの強弱が設定される。
 ***構成の説明***
 図12を参照して、本実施の形態に係る座標補正装置100の構成を説明する。
 本実施の形態において、座標補正部120は、移動量計算部121と、ノイズ計測部124と、パラメータ更新部126と、座標フィルタ部127とを備える。
 ***動作の説明***
 図13を参照して、本実施の形態に係る座標補正装置100の動作を説明する。座標補正装置100の動作は、本実施の形態に係る座標補正方法に相当する。座標補正装置100の動作は、本実施の形態に係る座標補正プログラムの処理手順に相当する。
 ステップS41及びステップS42の処理については、実施の形態1におけるステップS12及びステップS13の処理と同じであるため、説明を省略する。
 ステップS43において、ノイズ計測部124は、メモリ102に記憶されている座標の履歴を基に、ノイズ量を推定し、メモリ102にノイズ量を記憶する。具体的には、ノイズ計測部124は、図14に示すように数サンプルの座標からタッチ移動方向を求める。ノイズ計測部124は、タッチ移動方向が定まらない場合、すなわち、タッチ静止時は、平均値からのはずれ値をノイズ量として抽出する。ノイズ計測部124は、タッチ移動方向が定まる場合、すなわち、タッチ移動時は、タッチ移動方向と各座標の垂直成分との距離をノイズ量として抽出する。これにより、タッチ操作による座標移動とノイズによる座標ぶれとを間違えずに検出することができる。或いは、ノイズ計測部124は、タッチ移動方向が定まらない場合のみノイズ量を抽出し、メモリ102に記憶したノイズ量を更新することで、座標ぶれと推定される動きがあった場合のみのノイズ量を取得することができる。或いは、ノイズ計測部124は、メモリ102に記憶された前回の座標と現在の座標との差をメモリ102に記憶し、この差の過去から現在までの分散をノイズ量として抽出する。このようにタッチ移動量を分散に含めないようにすることで、ノイズ量のみを推定することができる。或いは、ノイズ計測部124は、メモリ102に記憶された座標の履歴、ステップS42で求められたタッチ移動量、及び、過去のフィルタ結果を組み合わせることで、ノイズ量を推定する。
 ステップS44において、パラメータ更新部126は、ステップS42で求められたタッチ移動量と、ステップS43で求められたノイズ量とに基づき、フィルタ強度を設定する。具体的には、パラメータ更新部126は、メモリ102に記憶されたタッチ移動量及びノイズ量から、フィルタ強度を決定し、メモリ102にフィルタ強度パラメータを記憶する。
 ステップS45の処理については、実施の形態1におけるステップS15の処理と同じであるため、詳細な説明を省略するが、本実施の形態においても、座標フィルタ部127は、前述した式1によりフィルタ処理を行う。
 ステップS44では、パラメータ更新部126が、メモリ102からノイズ量とタッチ移動量とを取得し、式1のWとVを調整することで、ノイズの大きさ及び指のタッチ移動量を考慮したフィルタ強度を決定する。具体的には、パラメータ更新部126は、実施の形態1と同じようにVを求め、Wについてはノイズ計測部124がメモリ102に記憶したノイズ量σを読み込み、W=C/σとすることで、フィルタ強度を調整する。ここで、Cは、Wを求めるための調整用のパラメータである。本実施の形態において、パラメータ更新部126は、図15に示すようにタッチ移動量に応じた目標の速さのパラメータを持ち、ノイズ量から求めたWとタッチ移動量から求めたVとでフィルタ強度を設定した後、フィルタ処理後の座標の移動の速さが目標の速さを下回らないようにW及びVを再調整する。Wが小さい場合、そのままWを適用すると遅延が大きくなってしまうが、現在のVからフィルタ処理後の座標の移動の速さが目標の速さを下回らないW(>W)を求め、フィルタ更新用のパラメータとすることで遅延が大きくならないようにフィルタをかけることができる。また、Wが大きい場合は、そのままフィルタを適用することで追従性を重視したフィルタ処理が可能となる。なお、パラメータ更新部126は、過去から現在までのノイズ量σとWとの関係を定義した式又はテーブルを用いた任意の方法で、フィルタ強度を調整してもよい。
 ステップS46の処理については、実施の形態1におけるステップS16の処理と同じであるため、説明を省略する。
 ステップS46の処理の後、再びステップS41の処理が行われる。
 上記のように、ステップS43において、座標補正部120は、座標取得部110により取得された座標の時系列データの平均値と時系列データに含まれる座標との差をノイズ量として算出する。或いは、座標補正部120は、座標取得部110により取得された座標の時系列データの近似直線と時系列データに含まれる座標との距離をノイズ量として算出する。ステップS44において、座標補正部120は、算出したノイズ量が大きいほど、第2座標の重みを大きく設定する。
 ステップS45において、座標補正部120は、加重平均の計算結果と前回出力した補正後の座標との距離がタッチ移動量に応じて異なる下限値よりも小さい場合、計算結果の代わりに下限値を補正後の座標として出力する。下限値の設定は、任意の方法で実施してよいが、具体例としては、前述したように、目標の速さを設定することで実施することができる。
 以上のように、本実施の形態では、タッチ移動量に加えて、ノイズ量を求め、ノイズ量とタッチ移動量とによってフィルタ強度を切り替えて、現在のタッチ位置の座標にフィルタをかけていく。そのため、ノイズが小さい場合はフィルタ強度を上げないようにして、操作の追従性を上げることができるようになる。
 ノイズ量は自動的に更新されていくため、環境変化により座標ぶれが大きくなった場合でも、人手による調整をせずに適切な座標ぶれ抑制が実現できる。タッチパネル103が置かれる環境を考慮してタッチ検出回路106のセンシングを調整したり、座標ぶれの度合いを考慮してフィルタ強度を微調整したりといった手間を省くことができるようになる。
 本実施の形態では、ノイズ量とタッチ移動量との両方を考慮し、図15に示すような目標の速さを設けることで、ノイズに応じた微調整をしなくても、自動的に望ましい追従性を維持しながらフィルタ強度を調整することができるようになる。
 本実施の形態で式1でなくカルマンフィルタを用いる場合、実施の形態1でカルマンフィルタを用いる場合と同じように、観測値と推測された座標のうち誤差が小さい方の座標の比重が大きくなるようにフィルタが適用される。この比重を調整するためには、観測誤差Rと座標位置を推測するときの誤差Qを設定すればよい。
 本実施の形態のフィルタ強弱に当てはめた場合、ノイズ計測部124が求めたノイズ量をRとし、移動量計算部121が求めたタッチ移動量をQとすれば、指の移動量に応じた比重の調整だけでなく、ノイズ量に応じた比重の調整ができるようになる。ノイズ量が小さい場合はRが小さくなるため、座標の推測値よりも観測した座標そのものを使うように比重が計算される。ノイズ量が大きい場合はRが大きくなるため、観測した座標よりも速度等から推測した座標を使うように比重が計算される。これにより、式1のW及びVを増減する場合と同等の効果を得ることが可能となる。
 上記以外の座標を用いたフィルタ全般に対して、フィルタ強度をノイズ量とタッチ移動量とに応じて強弱させることで、本実施の形態と同等の効果を得ることが可能である。
 ***実施の形態の効果の説明***
 本実施の形態では、タッチ移動量だけでなく、タッチ位置の座標ぶれの度合い、すなわち、ノイズ量も考慮してフィルタが強弱させられる。よって、タッチパネル103に加わるノイズの大きさが環境によって変わることに対応できる。
 また、本実施の形態では、タッチ移動量とノイズ量によってフィルタの強弱を調整する際に目標の速さが維持される。よって、最低限の操作の追従性を確保することができる。
 本実施の形態は、実施の形態1と同じように、カルマンフィルタにも応用できる。具体的には、タッチパネル103から取得される観測値の誤差が予め設定される。座標取得部110から与えられる座標点列の移動速度及び位置から、次のタッチ位置が推定される。推定されたタッチ位置の誤差も設定される。パラメータ更新部126は、推定されたタッチ位置の誤差と観測値の誤差との比重によってフィルタ強度を調整する。観測値の誤差には、ノイズ計測部124が求めたノイズ量に対応する値が設定される。推定されたタッチ位置の誤差には、移動量計算部121が求めたタッチ移動量に対応する値が設定される。
 ***他の構成***
 本実施の形態では、実施の形態1と同じように、「部」の機能がソフトウェアにより実現されるが、実施の形態1の変形例と同じように、「部」の機能がハードウェアにより実現されてもよい。或いは、「部」の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。
 実施の形態5.
 本実施の形態について、主に実施の形態1との差異を説明する。
 電源ノイズによる座標ぶれの影響は、タッチ位置に依存する傾向がある。具体的には、図16に示すような短冊状のタッチセンサ105のパターン上でタッチ操作が行われる場合、タッチされる個所によっては、センサ出力のピーク位置が変わることで、座標ぶれの度合いが変わる。
 具体例として、図17に示すように短冊状のタッチセンサ105の中央位置がタッチされた場合、センサ出力のピーク位置が変わらないことが多いため、座標ぶれは小さい。一方、2つのタッチセンサ105の境界位置がタッチされた場合、センサ出力のピーク位置が変わりやすいため、座標ぶれが大きくなる。本実施の形態では、このようなタッチ位置に応じた座標ぶれの変化が抑制される。
 ***構成の説明***
 図18を参照して、本実施の形態に係る座標補正装置100の構成を説明する。
 本実施の形態において、座標補正部120は、移動量計算部121と、フィルタ強度設定部123と、パラメータ更新部126と、座標フィルタ部127とを備える。
 ***動作の説明***
 図19を参照して、本実施の形態に係る座標補正装置100の動作を説明する。座標補正装置100の動作は、本実施の形態に係る座標補正方法に相当する。座標補正装置100の動作は、本実施の形態に係る座標補正プログラムの処理手順に相当する。
 ステップS51及びステップS52の処理については、実施の形態1におけるステップS12及びステップS13の処理と同じであるため、説明を省略する。
 ステップS53において、フィルタ強度設定部123は、ユーザがタッチしている位置を推定する。具体的には、フィルタ強度設定部123は、メモリ102に記憶されている座標の履歴を基に、タッチパネル103上のタッチ位置が、2つのタッチセンサ105の境界位置に近いか、又は、1つのタッチセンサ105の中央位置に近いかを推定する。
 ステップS54において、フィルタ強度設定部123は、予め設定されたタッチ位置とフィルタ強度との対応関係から、フィルタ強度を決定する。具体的には、フィルタ強度設定部123は、ステップS53で推定した位置が2つのタッチセンサ105の境界位置に近いほど、フィルタ強度を強く設定する。フィルタ強度設定部123は、ステップS53で推定した位置が1つのタッチセンサ105の中央位置に近いほどフィルタ強度を弱く設定する。フィルタ強度設定部123は、メモリ102にフィルタ強度パラメータを記憶する。
 ステップS55の処理については、実施の形態1におけるステップS14の処理とほとんど同じであるため、詳細な説明を省略するが、本実施の形態において、パラメータ更新部126は、ステップS52で求められたタッチ移動量に基づき、フィルタ強度を調整する。
 ステップS56の処理については、実施の形態1におけるステップS15の処理と同じであるため、詳細な説明を省略するが、本実施の形態においても、座標フィルタ部127は、前述した式1によりフィルタ処理を行う。
 ステップS53及びステップS54では、フィルタ強度設定部123が、数サンプルの座標を平均化することでタッチ位置を推定し、図20に示すように予め用意された、タッチ位置Zに応じたフィルタ強度Wの関数から、式1のWを決定する。或いは、フィルタ強度設定部123が、メジアン値又は頻度分布等を用いたり、図21に示すような、タッチ位置Zに応じたフィルタ強度Wを指定したテーブルを用いたりすることで、式1のWを決定する。
 ステップS55では、パラメータ更新部126が、実施の形態1と同じように、式1のVを決定する。
 ステップS57の処理については、実施の形態1におけるステップS16の処理と同じであるため、説明を省略する。
 ステップS57の処理の後、再びステップS51の処理が行われる。
 上記のように、ステップS53において、座標補正部120は、第1座標から、タッチパネル103に備えられた複数のタッチセンサ105に対する新たなタッチ位置の相対位置を推定する。ステップS54において、座標補正部120は、推定した相対位置が互いに隣接する2つのタッチセンサ105の境界位置に近いほど、第2座標の重みを大きく設定する。
 以上のように、本実施の形態では、タッチ移動量に加えて、推定したタッチ位置によってフィルタ強度を切り替えるため、位置に応じて増減する座標ぶれ量を考慮し、座標ぶれが少ないと推定される位置の場合はフィルタ強度を弱くすることで、操作の追従性を上げることができるようになる。
 また、本実施の形態では、電源ノイズの影響が出やすい2つのタッチセンサ105の境界位置が押されたときに、フィルタ強度を強くすることで、操作の誤認識をより抑えることができるようになる。
 ***実施の形態の効果の説明***
 本実施の形態では、タッチ移動量に加えて、タッチ位置によってフィルタが強弱させられる。よって、タッチ位置に応じた座標ぶれの変化を抑制することができる。
 ***他の構成***
 本実施の形態では、実施の形態1と同じように、「部」の機能がソフトウェアにより実現されるが、実施の形態1の変形例と同じように、「部」の機能がハードウェアにより実現されてもよい。或いは、「部」の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。
 実施の形態6.
 本実施の形態について、主に実施の形態5との差異を説明する。
 2点のタッチ操作が行われた場合、2点の位置関係によって座標ぶれが増減することがある。具体的には、図22に示すように、横方向に近い位置にある2点がタッチされたときは、横に大きな座標ぶれが生じやすい。縦方向に近い位置にある2点がタッチされたときは、縦に大きな座標ぶれが生じやすい。縦横方向ともに離れた位置にある2点がタッチされたときは、座標ぶれが発生しにくい。本実施の形態では、このように2点の位置関係によっても座標ぶれが増減することを考慮し、2点の位置関係に応じてフィルタを強弱させるようにする。
 ***構成の説明***
 図23を参照して、本実施の形態に係る座標補正装置100の構成を説明する。
 本実施の形態において、座標補正部120は、移動量計算部121と、フィルタ強度設定部123と、パラメータ更新部126と、座標フィルタ部127とを備える。
 ***動作の説明***
 図24を参照して、本実施の形態に係る座標補正装置100の動作を説明する。座標補正装置100の動作は、本実施の形態に係る座標補正方法に相当する。座標補正装置100の動作は、本実施の形態に係る座標補正プログラムの処理手順に相当する。
 ステップS61及びステップS62の処理については、実施の形態5におけるステップS51及びステップS52の処理と同じであるため、説明を省略する。
 ステップS63において、フィルタ強度設定部123は、ユーザがタッチしている位置を推定する。具体的には、フィルタ強度設定部123は、ユーザが1点をタッチ中であるか2点をタッチ中であるかを判定する。1点タッチ中の場合、フィルタ強度設定部123は、メモリ102に記憶されている座標の履歴を基に、タッチパネル103上のタッチ位置が、2つのタッチセンサ105の境界位置に近いか、又は、1つのタッチセンサ105の中央位置に近いかを推定する。そして、フィルタ強度設定部123は、ステップS64の処理に進む。2点タッチ中の場合、フィルタ強度設定部123は、メモリ102に記憶されている座標の履歴を基に、2点のタッチ位置の縦横の距離を求める。すなわち、フィルタ強度設定部123は、2点のタッチ位置の位置関係を特定する。そして、フィルタ強度設定部123は、ステップS65の処理に進む。
 ステップS64の処理については、実施の形態5におけるステップS54の処理と同じであるため、説明を省略する。
 ステップS65において、フィルタ強度設定部123は、図25に示すような関数を用いて、ステップS63で求めた2点のタッチ位置の縦の距離Hから、フィルタ強度Wを決定する。フィルタ強度設定部123は、同様の関数を用いて、ステップS63で求めた2点のタッチ位置の横の距離から、フィルタ強度Wを決定する。或いは、フィルタ強度設定部123は、図26に示すようなテーブルを参照して、ステップS63で求めた2点のタッチ位置の縦の距離Hから、フィルタ強度Wを決定する。フィルタ強度設定部123は、同様のテーブルを参照して、ステップS63で求めた2点のタッチ位置の横の距離から、フィルタ強度Wを決定する。或いは、フィルタ強度設定部123は、図27に示すようなテーブルを参照して、ステップS63で求めた2点のタッチ位置の縦の距離Hだけでなく、1点タッチ中の場合と同じように推定される、タッチセンサ105に対するタッチ位置の相対位置も考慮して、フィルタ強度Wを決定する。フィルタ強度設定部123は、同様のテーブルを参照して、ステップS63で求めた2点のタッチ位置の横の距離だけでなく、1点タッチ中の場合と同じように推定される、タッチセンサ105に対するタッチ位置の相対位置も考慮して、フィルタ強度Wを決定する。
 ステップS64の処理とステップS65の処理とのいずれが行われた後も、ステップS66の処理が行われる。
 ステップS66の処理については、実施の形態5におけるステップS55の処理と同じであるため、詳細な説明を省略する。
 ステップS67において、座標フィルタ部127は、1点タッチの場合はステップS64で求められたWをWとWとして用いて、X方向とY方向とのそれぞれに対して、以下の式2及び式3によりフィルタ処理を行い、得られた結果をメモリ102に記憶する。X方向とは、水平方向のことである。Y方向とは、垂直方向のことである。座標フィルタ部127は、2点タッチの場合はステップS65で求められたWとWとを用いて、X方向とY方向とのそれぞれに対して、以下の式2及び式3によりフィルタ処理を行い、得られた結果をメモリ102に記憶する。
 P=(W・X+V・Pi-1)/(W+V)・・・式2
 Q=(W・Y+V・Qi-1)/(W+V)・・・式3
 ここで、P及びQはフィルタ処理後の座標、Pi-1及びQi-1は前回フィルタ処理された座標、Xは取得された現在のタッチ位置のX座標、Yは取得された現在のタッチ位置のY座標、W及びWはフィルタ強度設定部123により決定されたフィルタ強度、Vはパラメータ更新部126により調整されたフィルタ強度である。なお、式2及び式3において、前回フィルタ処理された座標が存在しない場合、P=X、Q=Yとなる。
 ステップS68の処理については、実施の形態5におけるステップS57の処理と同じであるため、説明を省略する。
 ステップS68の処理の後、再びステップS61の処理が行われる。
 上記のように、ステップS61において、座標取得部110は、タッチパネル103の複数箇所で同時にタッチ操作を行うマルチタッチ操作が継続されているときにタッチパネル103における複数のタッチ位置の座標を順次取得する。ステップS65及びステップS67において、座標補正部120により適用される重み付けは、座標取得部110により複数のタッチ位置の座標が第1座標として取得された場合、複数のタッチ位置の位置関係に応じて異なる。
 以上のように、本実施の形態では、タッチされている位置及び2点の位置関係に応じてフィルタの強弱が変えられるため、1点のタッチ操作だけでなく、2点のタッチ操作時に座標ぶれの特性が変わるような場合でも、適切なフィルタ処理ができるようになる。
 なお、本実施の形態では、2点タッチ操作時のタッチ点の位置関係に応じてフィルタ強度が強弱させられるが、3点以上のタッチ操作があった場合でもそれぞれのタッチ点の位置関係に応じてフィルタ強度を強弱させることが可能である。
 ***実施の形態の効果の説明***
 本実施の形態では、タッチ移動量に加えて、タッチされた2点の位置関係によってフィルタが強弱させられる。よって、2点の位置関係による座標ぶれの変化を抑えることができる。
 ***他の構成***
 本実施の形態では、実施の形態1と同じように、「部」の機能がソフトウェアにより実現されるが、実施の形態1の変形例と同じように、「部」の機能がハードウェアにより実現されてもよい。或いは、「部」の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。
 実施の形態7.
 本実施の形態について、主に実施の形態1との差異を説明する。
 図28に示すように、タッチパネル103が出力する座標のサンプリング間隔(以下、「タッチ間隔」)と、タッチによりGUI部品が移動し、実際に表示に反映される間隔(以下、「描画間隔」)は異なる。そのため、GUI部品の移動速度が速くなったり、遅くなったりすることがある。本実施の形態では、このような移動速度のばらつきが抑えられる。
 ***構成の説明***
 図29を参照して、本実施の形態に係る座標補正装置100の構成を説明する。
 本実施の形態において、座標補正部120は、移動量計算部121と、フィルタ強度設定部123と、間隔測定部125と、パラメータ更新部126と、座標フィルタ部127とを備える。
 ***動作の説明***
 図30を参照して、本実施の形態に係る座標補正装置100の動作を説明する。座標補正装置100の動作は、本実施の形態に係る座標補正方法に相当する。座標補正装置100の動作は、本実施の形態に係る座標補正プログラムの処理手順に相当する。
 ステップS71の処理については、実施の形態1におけるステップS11の処理と同じであるため、説明を省略する。
 ステップS72において、間隔測定部125は、タッチ間隔と描画間隔との変数を初期化する。具体例として、間隔測定部125は、60fps(frames per second)の描画性能を目標値とする場合、16ミリ秒程度で描画間隔の変数を初期化し、タッチ間隔の変数には予め測定しておいた間隔を設定する。各変数は、メモリ102に記憶されている。
 ステップS73において、間隔測定部125は、メモリ102に記憶したタッチ間隔と描画間隔との変数を基に、次回の描画までに取得されるタッチ位置の座標の数を予測する。具体例として、描画間隔が16ミリ秒でタッチ間隔が12ミリ秒の場合、図31に示すように、1回目の描画の後、2回目の描画時点までに取得されるタッチ位置の座標の数は1つであるが、その後、3回目の描画時点までに取得されるタッチ位置の座標の数は2つである。
 ステップS74の処理については、実施の形態1におけるステップS12の処理と同じであるため、説明を省略する。
 ステップS75において、間隔測定部125は、ステップS74で座標を取得した時刻からタッチ間隔を測定し、メモリ102に記憶した変数を更新する。
 次回の描画までに取得される座標数分、タッチ位置の座標が取得されるまで、間隔測定部125は、ステップS74及びステップS75の処理を繰り返す。
 ステップS76からステップS78の処理は、取得された座標数分繰り返される。
 ステップS76の処理については、実施の形態1におけるステップS13の処理とほとんど同じであるため、詳細な説明を省略するが、本実施の形態において、移動量計算部121は、座標取得部110がメモリ102に記憶した座標の履歴を基に、該当する座標について、タッチ移動量を計算する。
 ステップS77において、パラメータ更新部126は、前回の描画までに取得された座標の合計数と、前回のタッチ移動量と、今回の描画までに取得された座標の合計数とから、最終的なフィルタ処理後の座標が大きく進まないように式1のVを調整する。具体的には、図32に示すように、前々回の描画から前回の描画までに取得されたタッチ位置の座標の合計数よりも、前回の描画から今回の描画までに取得されたタッチ位置の座標の合計数の方が大きい場合、フィルタ強度Vを強くすればよい。
 ステップS78及びステップS79の処理については、実施の形態1におけるステップS15及びステップS16の処理と同じであるため、説明を省略する。
 ステップS80において、間隔測定部125は、描画間隔を測定し、メモリ102に記憶した変数を更新する。そして、間隔測定部125は、ステップS73の処理に戻る。
 なお、本実施の形態では、タッチ間隔と描画間隔とに基づいて、次回の描画までに取得されるタッチ位置の座標の合計数が予測されるが、アプリケーション部130が描画可能となる度に、間隔測定部125に通知が送られてもよい。その場合、通知が送られるまでに取得されたタッチ点についてタッチ移動量が求められ、フィルタのパラメータが調整される。
 上記のように、本実施の形態において、座標補正部120は、タッチパネル103におけるグラフィックスの描画間隔ごとに、座標取得部110により取得される座標の数を予測し、予測した数が多いほど、第2座標の重みを大きく設定する。
 以上のように、本実施の形態では、描画間隔とタッチ間隔とを考慮して、フィルタを強弱させることで、タッチパネル103の性能及びGUIの描画性能の微調整を行わずに、滑らかなGUI部品の移動が可能となる。移動するGUI部品の具体例としては、スクロール操作時のスクロールバーがある。
 描画間隔とタッチ間隔とを同じにすれば、描画間隔の調整は不要となるが、電源ノイズが発生するようなシチュエーションでは、少しでも多くのタッチ位置の座標を取得した方がより座標ぶれや遅延を抑えたフィルタ処理が可能となる。そのため、タッチ間隔を可能な限り早くしつつ描画間隔を考慮することが効果的である。
 ***実施の形態の効果の説明***
 本実施の形態では、タッチ移動量に加えて、次の描画までに取得されるタッチ点数を考慮して、フィルタが強弱させられる。具体的には、パラメータ更新部126が、間隔測定部125が予測したタッチ点数が前回よりも多い場合にフィルタ強度を強くすることで、描画間隔ごとのタッチ移動量を一定にすることができる。
 ***他の構成***
 本実施の形態では、実施の形態1と同じように、「部」の機能がソフトウェアにより実現されるが、実施の形態1の変形例と同じように、「部」の機能がハードウェアにより実現されてもよい。或いは、「部」の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。
 以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、2つ以上の実施の形態を組み合わせて実施しても構わない。或いは、これらの実施の形態のうち、1つの実施の形態又は2つ以上の実施の形態の組み合わせを部分的に実施しても構わない。具体的には、これらの実施の形態に係る座標補正装置100の機能要素のうち、一部の機能要素のみを採用してもよい。なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
 100 座標補正装置、101 プロセッサ、102 メモリ、103 タッチパネル、104 表示器、105 タッチセンサ、106 タッチ検出回路、110 座標取得部、120 座標補正部、121 移動量計算部、122 移動方向推定部、123 フィルタ強度設定部、124 ノイズ計測部、125 間隔測定部、126 パラメータ更新部、127 座標フィルタ部、130 アプリケーション部。

Claims (14)

  1.  タッチパネルに対するタッチ操作が継続されているときに前記タッチパネルにおけるタッチ位置の座標を順次取得する座標取得部と、
     前記座標取得部により新たなタッチ位置の座標である第1座標が取得された場合、前記タッチパネルにおけるタッチ移動量及びタッチ移動方向の少なくともいずれかに応じて異なる重み付けを適用して、前記第1座標と、前記座標取得部により取得された過去のタッチ位置の座標から決定される第2座標との加重平均を計算し、計算結果を補正後の座標として出力する座標補正部と
    を備える座標補正装置。
  2.  前記第2座標は、前記座標補正部により過去に出力された補正後の座標である請求項1に記載の座標補正装置。
  3.  前記第2座標は、前記過去のタッチ位置の座標から前記座標取得部により次に取得されると推測された座標である請求項1に記載の座標補正装置。
  4.  前記座標補正部は、前記タッチ移動量が小さいほど、前記第2座標の重みを大きく設定する請求項1から3のいずれか1項に記載の座標補正装置。
  5.  前記座標補正部は、前記タッチ移動方向の変化が大きいほど、前記第2座標の重みを大きく設定する請求項1から4のいずれか1項に記載の座標補正装置。
  6.  前記座標取得部は、前記タッチパネルの複数箇所で同時にタッチ操作を行うマルチタッチ操作が継続されているときに前記タッチパネルにおける複数のタッチ位置の座標を順次取得し、
     前記座標補正部は、前記座標取得部により前記複数のタッチ位置の座標が前記第1座標として取得され、かつ、前記複数箇所におけるタッチ移動方向の差が閾値以下である場合、前記複数箇所のうちタッチ移動量が大きい箇所ほど、前記第2座標の重みを大きく設定する請求項1から5のいずれか1項に記載の座標補正装置。
  7.  前記座標取得部は、前記タッチパネルの複数箇所で同時にタッチ操作を行うマルチタッチ操作が継続されているときに前記タッチパネルにおける複数のタッチ位置の座標を順次取得し、
     前記座標補正部により適用される重み付けは、前記座標取得部により前記複数のタッチ位置の座標が前記第1座標として取得された場合、前記複数のタッチ位置の位置関係に応じて異なる請求項1から5のいずれか1項に記載の座標補正装置。
  8.  前記座標補正部は、前記座標取得部により取得された座標の時系列データの平均値と前記時系列データに含まれる座標との差をノイズ量として算出し、算出したノイズ量が大きいほど、前記第2座標の重みを大きく設定する請求項1から7のいずれか1項に記載の座標補正装置。
  9.  前記座標補正部は、前記座標取得部により取得された座標の時系列データの近似直線と前記時系列データに含まれる座標との距離をノイズ量として算出し、算出したノイズ量が大きいほど、前記第2座標の重みを大きく設定する請求項1から7のいずれか1項に記載の座標補正装置。
  10.  前記座標補正部は、前記計算結果と前回出力した補正後の座標との距離が前記タッチ移動量に応じて異なる下限値よりも小さい場合、前記計算結果の代わりに前記下限値を前記補正後の座標として出力する請求項1から9のいずれか1項に記載の座標補正装置。
  11.  前記座標補正部は、前記第1座標から、前記タッチパネルに備えられた複数のタッチセンサに対する前記新たなタッチ位置の相対位置を推定し、推定した相対位置が互いに隣接する2つのタッチセンサの境界位置に近いほど、前記第2座標の重みを大きく設定する請求項1から10のいずれか1項に記載の座標補正装置。
  12.  前記座標補正部は、前記タッチパネルにおけるグラフィックスの描画間隔ごとに、前記座標取得部により取得される座標の数を予測し、予測した数が多いほど、前記第2座標の重みを大きく設定する請求項1から11のいずれか1項に記載の座標補正装置。
  13.  座標取得部が、タッチパネルに対するタッチ操作が継続されているときに前記タッチパネルにおけるタッチ位置の座標を順次取得し、
     座標補正部が、前記座標取得部により新たなタッチ位置の座標である第1座標が取得された場合、前記タッチパネルにおけるタッチ移動量及びタッチ移動方向の少なくともいずれかに応じて異なる重み付けを適用して、前記第1座標と、前記座標取得部により取得された過去のタッチ位置の座標から決定される第2座標との加重平均を計算し、計算結果を補正後の座標として出力する座標補正方法。
  14.  コンピュータに、
     タッチパネルに対するタッチ操作が継続されているときに前記タッチパネルにおけるタッチ位置の座標を順次取得する処理と、
     新たなタッチ位置の座標である第1座標が取得された場合、前記タッチパネルにおけるタッチ移動量及びタッチ移動方向の少なくともいずれかに応じて異なる重み付けを適用して、前記第1座標と、過去のタッチ位置の座標から決定される第2座標との加重平均を計算し、計算結果を補正後の座標として出力する処理と
    を実行させる座標補正プログラム。
PCT/JP2016/058898 2016-03-22 2016-03-22 座標補正装置、座標補正方法及び座標補正プログラム WO2017163297A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE112016006646.5T DE112016006646T5 (de) 2016-03-22 2016-03-22 Koordinatenkorrekturvorrichtung, koordinatenkorrekturverfahren und koordinatenkorrekturprogramm
CA3008371A CA3008371C (en) 2016-03-22 2016-03-22 Coordinate correction apparatus
CN201680082273.2A CN108700961B (zh) 2016-03-22 2016-03-22 坐标校正装置、坐标校正方法及计算机可读取的记录介质
US16/061,554 US20190310755A1 (en) 2016-03-22 2016-03-22 Coordinate correction apparatus
JP2016548391A JP6022137B1 (ja) 2016-03-22 2016-03-22 座標補正装置、座標補正方法及び座標補正プログラム
PCT/JP2016/058898 WO2017163297A1 (ja) 2016-03-22 2016-03-22 座標補正装置、座標補正方法及び座標補正プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/058898 WO2017163297A1 (ja) 2016-03-22 2016-03-22 座標補正装置、座標補正方法及び座標補正プログラム

Publications (1)

Publication Number Publication Date
WO2017163297A1 true WO2017163297A1 (ja) 2017-09-28

Family

ID=57247471

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/058898 WO2017163297A1 (ja) 2016-03-22 2016-03-22 座標補正装置、座標補正方法及び座標補正プログラム

Country Status (6)

Country Link
US (1) US20190310755A1 (ja)
JP (1) JP6022137B1 (ja)
CN (1) CN108700961B (ja)
CA (1) CA3008371C (ja)
DE (1) DE112016006646T5 (ja)
WO (1) WO2017163297A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021086538A (ja) * 2019-11-29 2021-06-03 株式会社アスコ タッチパネル装置およびタッチパネル装置の制御方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI669942B (zh) * 2016-10-14 2019-08-21 聯發科技股份有限公司 用以移除漣漪效應之平滑化濾波方法和裝置
US10444899B2 (en) * 2017-01-23 2019-10-15 Stmicroelectronics Asia Pacific Pte Ltd Multiple threshold motion tolerance to filter coordinate jitter in touch sensing
KR101993257B1 (ko) * 2017-09-11 2019-06-26 (주)컴버스테크 손떨림 보정 기반의 터치 입력 보정 장치
KR102205454B1 (ko) * 2017-10-19 2021-01-20 에스케이텔레콤 주식회사 터치 인식 방법 및 그 장치
CN109308013B (zh) * 2018-09-29 2020-07-24 安徽独角仙信息科技有限公司 一种基于红外传感器检测的触摸开关智能化调控系统
US11301128B2 (en) * 2019-05-01 2022-04-12 Google Llc Intended input to a user interface from detected gesture positions
CN110727372B (zh) * 2019-09-29 2023-04-07 RealMe重庆移动通信有限公司 防误触方法、终端及存储介质
CN112230801A (zh) * 2020-10-23 2021-01-15 上海磐启微电子有限公司 应用于触摸轨迹的卡尔曼平滑处理方法、存储器及设备
CN113741750B (zh) * 2021-08-27 2024-05-28 北京字节跳动网络技术有限公司 光标位置更新方法、装置和电子设备
KR20230047281A (ko) * 2021-09-30 2023-04-07 삼성디스플레이 주식회사 터치 센싱 방법 및 표시 장치
CN114415857B (zh) * 2022-01-19 2024-02-09 惠州Tcl移动通信有限公司 一种终端的操作方法、装置、终端和存储介质
CN117827034B (zh) * 2024-03-04 2024-06-18 上海海栎创科技股份有限公司 一种基于运动方向分解的触摸屏坐标滤波方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09101853A (ja) * 1995-10-04 1997-04-15 Oki Electric Ind Co Ltd 座標入力装置のデータ処理方法
JP2013134621A (ja) * 2011-12-26 2013-07-08 Nintendo Co Ltd 座標処理プログラム、座標処理装置、座標処理システムおよび座標処理方法
JP2014059738A (ja) * 2012-09-18 2014-04-03 Sharp Corp 情報入力装置
JP2014067286A (ja) * 2012-09-26 2014-04-17 Sharp Corp 手書入力装置、手書入力プログラム、および手書入力装置の制御方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5053757A (en) * 1987-06-04 1991-10-01 Tektronix, Inc. Touch panel with adaptive noise reduction
US5229551A (en) * 1991-11-04 1993-07-20 Summagraphics Corporation Hysteresis compensation for a digitizer tablet
JPH08272534A (ja) 1995-03-29 1996-10-18 Nec Software Ltd タッチパネルデータ誤差除去装置
JPH09325860A (ja) * 1996-06-04 1997-12-16 Alps Electric Co Ltd 座標入力装置
JP2000122801A (ja) * 1998-10-13 2000-04-28 Matsushita Electric Ind Co Ltd 座標値補正装置
JP2001282449A (ja) * 2000-03-31 2001-10-12 Pentel Corp 座標入力装置
US9195344B2 (en) * 2002-12-10 2015-11-24 Neonode Inc. Optical surface using a reflected image for determining three-dimensional position information
JP3896106B2 (ja) 2003-09-10 2007-03-22 Necアクセステクニカ株式会社 座標データ入力誤差吸収装置
US8477106B2 (en) * 2009-07-29 2013-07-02 Elo Touch Solutions, Inc. System and method for a projected capacitive touchscreen having weight based coordinate determination
KR20110022347A (ko) * 2009-08-27 2011-03-07 삼성전자주식회사 터치 스크린에서의 노이즈 제거 방법 및 터치 스크린을 구비한 디스플레이 장치에서의 터치 동작 디스플레이 방법
KR101652828B1 (ko) * 2010-05-20 2016-08-31 삼성전자주식회사 터치 센싱 시스템에서 적응형 디지털 필터링 방법 및 장치
JP5716019B2 (ja) * 2010-05-21 2015-05-13 レノボ・イノベーションズ・リミテッド(香港) タッチパネルの指示位置確定装置、タッチパネル装置、それを備えた電子機器、タッチパネルの指示位置確定方法およびコンピュータプログラム記憶媒体
US9323390B2 (en) * 2010-11-29 2016-04-26 Toshiba Tec Kabushiki Kaisha Coordinate recognition apparatus and control method thereof
JP5615235B2 (ja) * 2011-06-20 2014-10-29 アルプス電気株式会社 座標検出装置及び座標検出プログラム
US9285923B2 (en) * 2012-12-19 2016-03-15 Sharp Laboratories Of America, Inc. Touch sensitive display system
KR101617143B1 (ko) * 2012-12-19 2016-05-02 엘지디스플레이 주식회사 디스플레이 장치 및 디스플레이 장치의 터치 인식 방법
JP2015088021A (ja) * 2013-10-31 2015-05-07 株式会社東芝 電子機器及び座標補正方法
TWI507960B (zh) * 2014-03-14 2015-11-11 Mstar Semiconductor Inc 觸控系統及其座標修正方法
US9430085B2 (en) * 2014-09-12 2016-08-30 Microsoft Technology Licensing, Llc Classification of touch input as being unintended or intended
JP6513513B2 (ja) * 2015-07-09 2019-05-15 アルプスアルパイン株式会社 入力装置とその制御方法及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09101853A (ja) * 1995-10-04 1997-04-15 Oki Electric Ind Co Ltd 座標入力装置のデータ処理方法
JP2013134621A (ja) * 2011-12-26 2013-07-08 Nintendo Co Ltd 座標処理プログラム、座標処理装置、座標処理システムおよび座標処理方法
JP2014059738A (ja) * 2012-09-18 2014-04-03 Sharp Corp 情報入力装置
JP2014067286A (ja) * 2012-09-26 2014-04-17 Sharp Corp 手書入力装置、手書入力プログラム、および手書入力装置の制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021086538A (ja) * 2019-11-29 2021-06-03 株式会社アスコ タッチパネル装置およびタッチパネル装置の制御方法
JP7283662B2 (ja) 2019-11-29 2023-05-30 株式会社アスコ タッチパネル装置およびタッチパネル装置の制御方法

Also Published As

Publication number Publication date
CA3008371A1 (en) 2017-09-28
JP6022137B1 (ja) 2016-11-09
CA3008371C (en) 2022-07-26
CN108700961B (zh) 2022-05-31
DE112016006646T5 (de) 2018-12-13
CN108700961A (zh) 2018-10-23
US20190310755A1 (en) 2019-10-10
JPWO2017163297A1 (ja) 2018-04-05

Similar Documents

Publication Publication Date Title
JP6022137B1 (ja) 座標補正装置、座標補正方法及び座標補正プログラム
US10788934B2 (en) Input adjustment
US8847978B2 (en) Information processing apparatus, information processing method, and information processing program
US9372577B2 (en) Method and device to reduce swipe latency
US8982045B2 (en) Using movement of a computing device to enhance interpretation of input events produced when interacting with the computing device
EP2652579B1 (en) Detecting gestures involving movement of a computing device
WO2014160436A1 (en) Baseline management for sensing device
JP5732854B2 (ja) 表示制御装置、表示制御方法及びプログラム
AU2017203910B2 (en) Glove touch detection
JP5812015B2 (ja) 入力装置、入力方法およびプログラム
WO2014160425A1 (en) Proximity sensing
EP2613246A2 (en) Touch control method
US9563346B2 (en) Method for scrolling a displayed image in a touch system
KR20180010555A (ko) 좌표 예측을 통한 좌표 출력 지연시간 감소 방법
JP6758922B2 (ja) 電子機器及びその制御方法
TWI485582B (zh) 修正觸碰位置的方法
US9239649B2 (en) Method for correcting touch position
US9213459B2 (en) Electronic apparatus provided with resistive film type touch panel
JP6907368B2 (ja) 電子機器及びその制御方法
KR101993257B1 (ko) 손떨림 보정 기반의 터치 입력 보정 장치
US20140019897A1 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
JP6655880B2 (ja) 表示制御装置、表示制御方法及びプログラム
WO2015135336A1 (en) Systems and methods for improved touch sensor linearity

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2016548391

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 3008371

Country of ref document: CA

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16895335

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16895335

Country of ref document: EP

Kind code of ref document: A1