(57)【要約】【課題】操作面へのタッチ操作に関して操作性を向上させることが可能な情報処理装置、情報処理方法、及びプログラムを提供すること。【解決手段】上記目的を達成するため、本技術の一形態に係る情報処理装置は、入力部と、制御部とを具備する。前記入力部は、操作体の操作面への操作を検出するための操作情報として、前記操作面からのアップ操作を検出するための、前記アップ操作が行われた位置の情報としてのアップ位置の情報を含む第１の操作情報を入力可能である。前記制御部は、前記アップ位置を基準とした位置における前記操作体の前記操作面上の移動方向の変化量に基づいて、前記入力された第１の操作情報が有効か否かを判定する。【選択図】図１０
2014174801.tif 000002
【特許請求の範囲】
【請求項１】
操作体の操作面への操作を検出するための操作情報として、前記操作面からのアップ操作を検出するための、前記アップ操作が行われた位置の情報としてのアップ位置の情報を含む第１の操作情報を入力可能な入力部と、
前記アップ位置を基準とした位置における前記操作体の前記操作面上の移動方向の変化量に基づいて、前記入力された第１の操作情報が有効か否かを判定する制御部と
を具備する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記制御部は、前記操作体の前記操作面上の移動方向の変化量が、所定の値よりも小さい場合に前記入力された第１の操作情報は有効ではないと判定する
情報処理装置。
【請求項３】
請求項１に記載の情報処理装置であって、
前記入力部は、前記操作面へのダウン操作を検出するための、前記ダウン操作が行われた位置の情報としてのダウン位置の情報を含む第２の操作情報を入力可能であり、
前記制御部は、前記第１の操作情報の入力の次に、前記ダウン操作を検出するための前記第２の操作情報が入力された場合に、前記判定を実行する
情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記制御部は、前記アップ位置を基準として算出された基準方向と、前記アップ位置からその次の前記ダウン位置へ向かう方向として算出された算出方向との変位量をもとに、前記操作体の前記操作面上の移動方向の変化量を定める
情報処理装置。
【請求項５】
請求項３に記載の情報処理装置であって、
前記制御部は、前記第２の操作情報の入力が前記第１の操作情報の入力から所定の時間内に行われた場合に、前記判定を実行する
情報処理装置。
【請求項６】
請求項３に記載の情報処理装置であって、
前記制御部は、前記アップ操作及び前記ダウン操作を少なくとも含む前記タッチ操作の感度が所定の値よりも小さい場合に、前記判定を実行する
情報処理装置。
【請求項７】
請求項３に記載の情報処理装置であって、
前記制御部は、前記アップ位置と前記ダウン位置との距離が所定の値よりも小さい場合に、前記判定を実行する
情報処理装置。
【請求項８】
操作体の操作面への操作を検出するための操作情報として、前記操作面からのアップ操作を検出するための、前記アップ操作が行われた位置の情報としてのアップ位置の情報を含む第１の操作情報を入力し、
前記アップ位置を基準とした位置における前記操作体の前記操作面上の移動方向の変化量に基づいて、前記入力された第１の操作情報が有効か否かを判定する
ことをコンピュータが実行する情報処理方法。
【請求項９】
操作体の操作面への操作を検出するための操作情報として、前記操作面からのアップ操作を検出するための、前記アップ操作が行われた位置の情報としてのアップ位置の情報を含む第１の操作情報を入力するステップと、
前記アップ位置を基準とした位置における前記操作体の前記操作面上の移動方向の変化量に基づいて、前記入力された第１の操作情報が有効か否かを判定するステップと
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、タッチパネル等を介した操作に応じて処理を実行可能な情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
特許文献１にも記載のように、タッチパネルやタッチスイッチ等のタッチセンサを備える電子機器が普及している。例えばスマートフォン等の携帯電話端末や、タブレット端末等の種々のＰＤＡ（Personal Digital Assistant）において、タッチセンサは広く用いられている。特許文献１には、操作者がタッチセンサに対する操作を行った際に、操作者の意図しない処理が行われる恐れを低減するための技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１１３６４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
タッチパネル等を備えた電子機器はこれからも普及するものと考えられ、特許文献１に記載のような操作性を向上させるための技術は今後も求められる。すなわちタッチ操作を行うユーザに高い操作性を提供することが求められる。
【０００５】
以上のような事情に鑑み、本技術の目的は、操作面へのタッチ操作に関して操作性を向上させることが可能な情報処理装置、情報処理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本技術の一形態に係る情報処理装置は、入力部と、制御部とを具備する。
前記入力部は、操作体の操作面への操作を検出するための操作情報として、前記操作面からのアップ操作を検出するための、前記アップ操作が行われた位置の情報としてのアップ位置の情報を含む第１の操作情報を入力可能である。
前記制御部は、前記アップ位置を基準とした位置における前記操作体の前記操作面上の移動方向の変化量に基づいて、前記入力された第１の操作情報が有効か否かを判定する。
【０００７】
この情報処理装置では、操作体の操作面への操作を検出するための操作情報として、操作面からのアップ操作を検出するための第１の操作情報が入力される。そしてアップ位置を基準とした位置における操作体の移動方向の変化量に基づいて、入力された第１の操作情報が有効であるか否かが判定される。これによりアップ操作の誤検出に伴う誤った処理の実行を防ぐことができ、操作面へのタッチ操作に関して操作性を向上させることが可能となる。
【０００８】
前記制御部は、前記操作体の前記操作面上の移動方向の変化量が、所定の値よりも小さい場合に前記入力された第１の操作情報は有効ではないと判定してもよい。
移動方向の変化量が所定の値よりも小さい場合は、実際にはアップ操作が行われていない可能性が大きい。従って上記のように設定することで、アップ操作の誤検出に伴う誤った処理の実行を防ぐことができる。
【０００９】
前記入力部は、前記操作面へのダウン操作を検出するための、前記ダウン操作が行われた位置の情報としてのダウン位置の情報を含む第２の操作情報を入力可能であってもよい。この場合、前記制御部は、前記第１の操作情報の入力の次に、前記ダウン操作を検出するための前記第２の操作情報が入力された場合に、前記判定を実行してもよい。
このように第１の操作情報の次に第２の操作情報が入力された場合に、先に入力された第１の操作情報の有効性が判定されてもよい。これによりタッチ操作に関する操作性を向上させることが可能となる。
【００１０】
前記制御部は、前記アップ位置を基準として算出された基準方向と、前記アップ位置からその次の前記ダウン位置へ向かう方向として算出された算出方向との変位量をもとに、前記操作体の前記操作面上の移動方向の変化量を定めてもよい。
このように、アップ位置を基準として基準方向と、アップ位置とその次のダウン位置とから算出される算出方向との変位量をもとに、移動方向の変化量が定められてもよい。これにより簡単な演算で移動方向の変化量を判定することが可能となる。
【００１１】
前記制御部は、前記第２の操作情報の入力が前記第１の操作情報の入力から所定の時間内に行われた場合に、前記判定を実行してもよい。
このように、所定の条件を満たす場合に、第１の操作情報が有効か否かの判定が実行されてもよい。これにより種々のタッチ操作を操作性よく行うことが可能となる。
【００１２】
前記制御部は、前記アップ操作及び前記ダウン操作を少なくとも含む前記タッチ操作の感度が所定の値よりも小さい場合に、前記判定を実行してもよい。
このように、所定の条件を満たす場合に、第１の操作情報が有効か否かの判定が実行されてもよい。これにより種々のタッチ操作を操作性よく行うことが可能となる。
【００１３】
前記制御部は、前記アップ位置と前記ダウン位置との距離が所定の値よりも小さい場合に、前記判定を実行してもよい。
このように、所定の条件を満たす場合に、第１の操作情報が有効か否かの判定が実行されてもよい。これにより種々のタッチ操作を操作性よく行うことが可能となる。
【００１４】
本技術の一形態に係る情報処理方法は、コンピュータにより実行される情報処理方法であって、操作体の操作面への操作を検出するための操作情報として、前記操作面からのアップ操作を検出するための、前記アップ操作が行われた位置の情報としてのアップ位置の情報を含む第１の操作情報を入力することを含む。
前記アップ位置を基準とした位置における前記操作体の前記操作面上の移動方向の変化量に基づいて、前記入力された第１の操作情報が有効か否かが判定される。
【００１５】
本技術の一形態に係るプログラムは、コンピュータに以下のステップを実行させる。
操作体の操作面への操作を検出するための操作情報として、前記操作面からのアップ操作を検出するための、前記アップ操作が行われた位置の情報としてのアップ位置の情報を含む第１の操作情報を入力するステップ。
前記アップ位置を基準とした位置における前記操作体の前記操作面上の移動方向の変化量に基づいて、前記入力された第１の操作情報が有効か否かを判定するステップ。
【発明の効果】
【００１６】
以上のように、本技術によれば、操作面へのタッチ操作に関して操作性を向上させることが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本技術の一実施形態に係る情報処理装置のハードウェア構成例を示す模式的なブロック図である。
【図２】本実施形態に係る情報処理方法を実行するためのソフトウェア構成例を示す模式的なブロック図である。
【図３】本実施形態に係るタブレット端末の動作の概要を説明するための図である。
【図４】本実施形態に係るタブレット端末の動作の概要を説明するための図である。
【図５】途切れ部分の発生について詳しく説明するための図である。
【図６】途切れ部分の発生について詳しく説明するための図である。
【図７】タブレット端末による詳細な処理の一例を示すフローチャートである。
【図８】タッチ操作の感度をもとにした判定を説明するためのグラフである。
【図９】タッチ操作の時間的な間隔をもとにした判定を説明するための図である。
【図１０】基準方向と算出方向との角度をもとにした判定を説明するための図である。
【図１１】アップ位置とダウン位置との距離をもとにした判定を説明するための図である。
【図１２】アップイベントの有効性を判定するために用いられる各パラメータの調整について説明するための表である。
【図１３】本実施形態に係るタブレット端末１００の動作例を示す状態遷移図である。
【図１４】本実施形態において定義されるイベントの一例を示す図である。
【図１５】本実施形態において定義される状態の一例を示す図である。
【図１６】本技術に係る有効性判定モジュールの実装例を示すブロック図である。
【図１７】アップイベントの有効性を判定するためのパラメータが、状況に応じて動的に変更される例を示す図である。
【図１８】本技術に関連した歪み補正技術の概要を説明するための図である。
【図１９】本技術に関連した歪み補正技術の概要を説明するための図である。
【図２０】本技術に関連した歪み補正技術の概要を説明するための図である。
【図２１】歪み補正技術の詳細を説明するための図である。
【図２２】歪み補正技術の詳細を説明するための図である。
【図２３】歪み補正技術の詳細を説明するための図である。
【図２４】歪み補正フィルタにて用いられるパラメータのチューニングについて説明するための表である。
【図２５】歪み補正フィルタの効果を操作面全体にて観察するための図である。
【図２６】歪み補正フィルタの効果を操作面全体にて観察するための図である。
【発明を実施するための形態】
【００１８】
以下、本技術に係る実施形態を、図面を参照しながら説明する。
【００１９】
［情報処理装置の構成］
図１は、本技術の一実施形態に係る情報処理装置のハードウェア構成例を示す模式的なブロック図である。情報処理装置としては、タッチパネル等の入力デバイスへ入力されたタッチ操作に応じて、情報処理を実行することが可能な種々のコンピュータが用いられる。例えばタッチパネル等を備えたスマートフォン等の携帯端末や、種々のＰＤＡが用いられる。その他、上記入力デバイスに接続されたＰＣ（Personal Computer）等が用いられてもよい。本実施形態では、情報処理装置として、タブレット端末１００が用いられる。
【００２０】
タブレット端末１００は、ＣＰＵ（Central Processing Unit）１０１、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３、入出力インタフェース１０５、及び、これらを互いに接続するバス１０４を備える。
【００２１】
入出力インタフェース１０５には、表示部１０６、操作部１０７、記憶部１０８、通信部１０９、ドライブ部１１０等が接続される。
【００２２】
表示部１０６は、例えば液晶、ＥＬ（Electro-Luminescence）、ＣＲＴ（Cathode Ray Tube）等を用いた表示デバイスである。
【００２３】
操作部１０７は、ユーザがタッチ操作を入力することが可能な操作面を有するデバイスからなる。本実施形態では、操作部１０７としてタッチパネル（以後、タッチパネル１０７と記載する）が用いられる。従って操作部１０７及び表示部１０６は一体となって構成されている。タッチパネル１０７の構成は限定されず、例えば静電容量方式、抵抗膜方式、表面弾性波方式、又は赤外線方式等の、種々の方式のタッチパネル１０７が用いられてよい。その他、タッチパッド等の他のタッチセンサが用いられてもよい。またタッチパネル１０７等と併用して、コントローラ、ポインティングデバイス、キーボード等の他の操作装置が用いられてもよい。
【００２４】
記憶部１０８は、不揮発性の記憶デバイスであり、例えばＨＤＤ（Hard Disk Drive）、フラッシュメモリ、その他の固体メモリである。
【００２５】
ドライブ部１１０は、例えば光学記録媒体、フロッピー（登録商標）ディスク、磁気記録テープ、フラッシュメモリ等、リムーバブルの記録媒体１１１を駆動することが可能なデバイスである。これに対し上記記憶部１０８は、主にリムーバブルでない記録媒体を駆動する、タブレット端末１００に予め搭載されたデバイスとして使用される場合が多い。
【００２６】
通信部１０９は、ＬＡＮ、ＷＡＮ（Wide Area Network）等に接続可能な、他のデバイスと通信するためのモデム、ルータ、その他の通信機器である。通信部１０９は、有線及び無線のどちらを利用して通信するものであってもよい。通信部１０９は、タブレット端末１００とは別体で使用される場合が多い。
【００２７】
上記のようなハードウェア構成を有するタブレット端末１００による情報処理は、記憶部１０８またはＲＯＭ１０２等に記憶されたソフトウェアと、タブレット端末１００のハードウェア資源との協働により実現される。具体的には、ＣＰＵ１０１が記憶部１０８またはＲＯＭ１０２等に記憶された、ソフトウェアを構成するプログラムをＲＡＭ１０３にロードして実行することにより実現される。
【００２８】
プログラムは、例えば記録媒体１１１を介してタブレット端末１００にインストールされる。あるいは、グローバルネットワーク等を介してプログラムがタブレット端末１００にインストールされてもよい。またタブレット端末１００が実行するプログラムは、時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであってもよい。
【００２９】
図２は、本実施形態に係る情報処理方法を実行するためのソフトウェア構成例を示す模式的なブロック図である。本実施形態では、入力部１１５、タイマー部１１６、方向変位量（角度）算出部１１７、感度算出部１１８、距離算出部１１９、判定部１２０、及び出力部１２１により、本技術に係る情報処理が実行される。これらのソフトウェアブロックは、タブレット端末１００のＣＰＵ１０１が所定のプログラムを実行することにより実現される。すなわち本実施形態では、ＣＰＵ１０１が制御部として機能する。なお各ブロックを実現するために専用のハードウェアが適宜用いられてもよい。
【００３０】
入力部１１５は、操作体（操作子）によるタッチパネル１０７の操作面へのタッチ操作を検出するための操作情報を入力する。操作面へのタッチ操作としては、操作面へ指等の操作体を接触させるダウン操作や、操作面との接触を解除するアップ操作がある。またダウン操作を継続したまま操作体を移動させるムーブ操作（ドラッグ操作）や、所定の方向に操作体を瞬間的に移動させながら接触を解除するフリック操作等ある。さらに操作面に２つの操作体を接触させて、互いの距離を変化させるピンチイン／アウト操作等のマルチタッチ操作も入力可能である。その他、種々のタッチ操作が入力される。
【００３１】
本実施形態では、タッチパネル１０７によりタッチ操作を検出するための操作情報が生成されて入力部１１５に出力される。操作情報として、操作面からのアップ操作を検出するための第１の操作情報と、操作面へのダウン操作を検出するための第２の操作情報とが出力される。第１の操作情報は、操作面上において操作体の接触が解除された位置であるアップ位置の位置情報を含む。また第２の操作情報は、操作面上に操作体が接触した位置であるダウン位置の位置情報を含む。位置情報は、典型的には、操作面上に設定されたｘｙ座標系をもとにした座標情報である。
【００３２】
その他の操作情報としてはムーブ操作を検出するための操作情報が生成される。本実施形態では、所定のサンプリングレートで操作面上の接触が検出される。そしてダウン操作がダウン位置を変化させながら継続的に算出されている間は、ムーブ操作として検出される。従ってダウン位置を変化させながら継続的に生成される第２の操作情報が、ムーブ操作を検出するための操作情報に相当することになる。
【００３３】
生成された操作情報は、入出力インタフェース１０５を介してＣＰＵ１０１に出力される。従って入出力インタフェース１０５が入力部１１５の一部として機能してもよい。一方で、操作部１０７から、操作面への接触に関する情報や信号がＣＰＵ１０１に出力される。そしてその情報等をもとにＣＰＵ１０１により、操作面にどのようなタッチ操作が入力されたかが判定されてもよい。この場合、ＣＰＵ１０１によりタッチ操作を検出するための操作情報が生成されることになる。そしてＣＰＵ１０１内で入力部１１５が構成されることになる。
【００３４】
タイマー部１１６は、アップ操作に応じた第１の操作情報の入力から、その次のダウン操作に応じた第２の操作情報の入力までの時間的な間隔を判定する。本実施形態では、発火のタイミングが適宜設定されたタイマーが用いられるが、第１及び第２の操作情報の入力の間隔を判定する方法やアルゴリズムは限定されない。
【００３５】
方向変位量算出部１１７は、アップ操作に応じた第１の操作情報の入力と、その次のダウン操作に応じた第２の操作情報の入力とに応じて、アップ位置を基準として算出された基準方向と、アップ位置からダウン位置へ向かう方向として算出された算出方向との変位量を算出する。本実施形態では、基準方向と算出方向との角度をもとにして上記変位量が算出される。その他、曲率等をもとに、基準方向と算出方向との変位量が算出されてもよい。
【００３６】
感度算出部１１８は、アップ操作及びダウン操作を少なくとも含む種々のタッチ操作の感度を算出する。例えば操作面にタッチ操作を入力する操作体として指が用いられる場合と、スタイラスペン（タッチペン）が用いられる場合とを比較する。この場合、互いを構成する物質、太さ（接触面積）等の特性の差により、タッチ操作の感度にも差がでる。典型的には、指を用いた方がタッチ操作の感度はよくなり、スタイラスペンが用いられる方が感度は低くなる。その他、操作方法等にもよって感度のばらつきは発生する。なお用いられる操作体が指やスタイラスペンに限定されるわけではない。
【００３７】
距離算出部１１９は、第１の操作情報と、次に入力された第２の操作情報とをもとに、アップ位置とダウン位置との距離を算出する。本実施形態では、２つの点の座標情報をもとに２点間の距離を算出する。他の方法により２点間の距離が算出されてもよい。
【００３８】
判定部１２０は、方向変位量算出部１１７により算出された基準方向と算出方向との変位量をもとに、入力された第１の操作情報が有効か否かを判定する。具体的には、基準方向と算出方向との変位量（角度）が所定の値よりも小さい場合に、第１の操作情報は有効でないと判定される。また本実施形態では判定部１２０により、タイマー部１１６の算出結果をもとに、第２の操作情報の入力が、その直前の第１の操作情報の入力から所定の時間内に行われたか否かが判定される。第２の操作情報の入力が所定の時間内に行われたと判定された場合、第１の操作情報の有効性の判定が実行される。
【００３９】
また本実施形態では、判定部１２０により、感度算出部１１８で算出されたタッチ操作の感度が所定の値よりも小さいか否かが判定される。タッチ操作の感度が所定の値よりも小さい場合は、第１の操作情報の有効性の判定が実行される。さらに本実施形態では、判定部１２０により、距離算出部１１９で算出された２点間の距離が所定の値よりも小さいか否かが判定される。２点間の距離が所定の値よりも小さい場合は、第１の操作情報の有効性の判定が実行される。判定部１２０により実行された判定の結果は、出力部１２１により出力される。出力部１２１は、ＣＰＵ１０１及び入出力インタフェース１０５により実現される。
【００４０】
［情報処理装置の動作］
本実施形態に係る情報処理装置であるタブレット端末１００の動作について説明する。図３及び図４は、その動作の概要について説明するための図である。図３に示すように、タッチペン１を用いてタッチパネル１０７の操作面１０にタッチ操作が入力される場合を想定する。タッチ操作の入力は、種々のアプリケーションにおいて用いられる。例えば所定のアイコンの選択や移動、絵や文字等の描画等においてタッチペン１を用いたタッチ操作が入力される。
【００４１】
例えばタッチペン１の先端が非常に細い形状であるといったことが原因で、タッチ操作の感度が低くなってしまうことが起こり得る。そうすると、図４Ａに示すように、操作面１０の端部１０ａから端部１０ｂまでムーブ操作を入力した場合に、タッチペン１が操作面１０から離れていないにも関わらず、ムーブ操作が途切れてしまうことが起こり得る。この結果、描画される線１１の開始点Ｓと終了点Ｅとの間に、描画が途切れてしまう途切れ部分１２が発生する。そうすると、アイコン等の操作や絵の描画等にも大きな影響が出てしまう。本実施形態に係るタブレット端末１００によれば、図４Ｂに示すように、途切れ部分１２が補正された補正後の線１３を描画することが可能となる。すなわち途切れ部分１２の発生を防ぎことが可能となり、操作面１０へのタッチ操作に関して操作性を向上させることが可能となる
【００４２】
図５及び図６は、途切れ部分１２の発生について詳しく説明するための図である。図５及び６では、操作面１０の左側の開始点Ｓから右側の終了点Ｅにむけてムーブ操作が入力される。ムーブ操作は、操作面１０の上下方向に位置をずらしながら４回入力される。操作面１０からタッチペン１が離されると、アップ操作を検出するための第１の操作情報として、アップイベント１５（実線の丸印）が検出される。また操作面１０にタッチペン１が接触すると、ダウン操作を検出するための第２の操作情報として、ダウンイベント１６（破線の丸印）が検出される。ムーブ操作が入力されている間は、所定のサンプリングレートにおいて、ダウン位置を変化させながら継続的にダウンイベントが検出されている（ムーブ操作のダウンイベントは図示されていない）。
【００４３】
タッチ操作の感度が低い場合等では、ムーブ操作の入力中に誤ってアップイベント１５が検出されてしまう場合ある。そうすると図５の４つの線１１ａ‐１１ｄに示すように、次にダウンイベント１６が検出されまでの間は線１１が描画されず途切れ部分１２が発生してしまう。図５に示す線１１ａでは、描画の開始とともに繰り返しアップイベント１５の誤検出が発生し、途中でも誤検出が発生してしまっている。線１１ｂでは、前半部分と後半部分とでアップイベント１５の誤検出が発生している。線１１ｃでは、前半部分のほとんどの部分で、繰り返しアップイベント１５の誤検出が発生している。線１１ｄでは、中央部分でアップイベント１５の誤検出が１回発生している。いずれの場合も、誤検出されたアップイベント１５と次のダウンイベント１６との間が途切れ部分１２となっている。
【００４４】
本実施形態では以下に示す処理により、発生したアップイベント１５は有効か否かが判定される。その結果、アップイベント１５が有効であると判定された場合、そのアップイベント１５がそのまま発行され、アップイベント１５に基づいた処理が実行される。例えばドラッグされているアイコンをドロップする処理や、線や文字の描画の停止等が実行される。一方、アップイベント１５が有効ではないと判定された場合、アップイベントが破棄される。そうすると図６に示すように、誤検出されたアップイベント１５は破棄され、途切れ部分１２が補正された補正後の線１３ａ‐１３ｄが描画される。タッチ操作がアイコンのドラッグ操作等であった場合に、その操作が中断されることなく適正に継続される。
【００４５】
なお図５の補正後の線１３ａには途切れ部分１２が発生しているが、これは誤差である。その他の部分やその他の線１３ｂ−１３ｄを見てみると、途切れ部分１２の発生が十分に抑えられている。すなわちタッチ操作に関して高い操作性が発揮されていることがわかる。また図６では、途切れ部分１２に描画された線１２ａがFilteredLineと記載されている。これはアップイベント１５の有効性を判断する処理がフィルタとして設定され、そのフィルタの結果として描画される線１２ａであることを意味している。後述するが、本実施形態にでは、このフィルタを設定するか否かが動的に切り替えられる。
【００４６】
図７は、タブレット端末１００による詳細な処理の一例を示すフローチャートである。アップイベント１５が発生して入力部１１５へ入力されると（ステップ１０１）、タッチ操作の感度が所定の値よりも小さいか否かが判定される（ステップ１０２）。
【００４７】
図８は、タッチ操作の感度をもとにした判定を説明するためのグラフである。グラフには、指とタッチペンとのそれぞれで、操作面１０の左右方向（図５等のｘ軸方向に相当）に複数回のムーブ操作が入力された場合の感度値が示されている。グラフの横軸は時間（msec）を表しており、グラフの縦軸は感度値を表している。感度値の算出方法は限定されず、例えば接触が検出される領域のサイズや、接触の強さ等が感度値として算出される。例えば、基本ソフト（OS:Operating System）機能を提供するAndroid上のMotionEvent.getSizeの値等が用いられてもよい。
【００４８】
グラフ上の×印は、指によるムーブ操作に対して検出されたムーブイベント１７（継続的なダウンイベント）である。グラフの左下の一点鎖線で囲われた部分１８の感度値は、操作面１０への接触が行われる際の感度値である。ムーブ操作の開始時には、操作面１０の開始点Ｓに指が押しつけられる。指が操作面１０に接触する瞬間は接触面積が小さいので感度値は小さく、接触面積が大きくなるにつれて感度値は大きくな。グラフの右側の一点鎖線で囲われた部分１９の感度値は、操作面１０から指が離される際の感度値である。ムーブ操作が終了する終了点Ｅにおいて指が離されるにつれて接触面積が小さくなり、それに伴い感度値が小さくなる。開始点Ｓと終了点Ｅとの間の時間帯では、安定した感度値でムーブイベント１７が検出されている。
【００４９】
指と比較して、タッチペンによるムーブ操作に対する感度値は、開始点Ｓ及び終了点Ｅにかかわらず総体的に低いものとなっている。そして誤って検出されたアップイベント１５と、その次のダウンイベント１６とが発生している。またグラフには、タッチペンによるムーブイベント２０も図示されている。例えば所定の感度値を基準として、その値よりも大きい感度値が検出された場合はダウンイベントと判定され、小さい感度値が検出された場合はアップイベントとして判定される。図８に示すように、感度値が総体的に小さいタッチペンによるムーブ操作では、その操作の軌跡にもよるが、アップイベント１５の誤検出が多く発生してしまっている。
【００５０】
本実施形態では、タッチ操作の感度が以下の式によりＥ（Ｈ）で表される。
【００５１】
【数１】
2014174801.tif 000003
【００５２】
なお式中のパラメータは以下の通りである。
Ｓｎ：タッチ開始からアップイベントが検出されるまでの感度値の履歴
ＮＵＭ：履歴数
Ｓｉｚｅ：閾値
【００５３】
すなわち、開始点Ｓからアップイベント１５の発生までの間に検出されたタッチイベント（アップイベント１５、ダウンイベント１６、ムーブイベント２０を含む）の感度値の平均値Ｅ（Ｈ）がタッチ操作の感度として算出され、その値が閾値Sizeよりも小さいか否かが判定される。なお感度値の履歴Ｓｎは、記憶部１０８に記憶されている。平均値Ｅ（Ｈ）が閾値Sizeよりも大きいと判定された場合（ステップ１０２のＮｏ）、アップイベント１５がそのまま発行される（ステップ１０３）。すなわち平均値Ｅ（Ｈ）が大きい場合には、指等の感度が高い操作体によりタッチ操作が入力されていると判断できる。そしてそのような場合には、アップイベント１５の誤検出が発生する可能性は低いので、アップイベント１５の有効性を判定する処理は実行されない。
【００５４】
平均値Ｅ（Ｈ）が閾値Sizeよりも小さいと判定された場合（ステップ１０２のＹｅｓ）、タッチペン等の感度の低い操作体によりタッチ操作が入力されていると判定される。その場合アップイベント１５の誤検出が発生している可能性があるので、アップイベント１５に対する有効性の判定が実行される。そのために本実施形態では、タイマーが設定される（ステップ１０４）。従って本実施形態では、ステップ１０２のタッチ操作の感度の判定により、アップイベント１５の有効性を判定する処理をフィルタとして設定するか否かが動的に切り替えられる。換言すれば、アップイベント１５が有効か否かを判定するモードと、アップイベント１５が有効か否かの判定を行わないモードとが、動的に切り替えられる。
【００５５】
アップイベント１５の有効性を判定する場合には、フリック操作やマルチタッチ操作等において、有効であるアップイベント１５が無効であるとして破棄される可能性が否定できない。そのために指等の感度値が高い操作体の場合には、有効性の判定が実行されないように動的に設定される。本実施形態では、低感度により誤検出が発生する可能性が高い状態と、高感度により安定して適正なタッチ操作が検出可能である状態とが判定され、有効性の判定の実行及び不実行が切り替えらえる。これによりタッチ操作に関する操作性を十分に高くすることが可能となる。
【００５６】
なお、タッチ操作の感度を算出する方法は限定されない。例えば上記したＥ（Ｈ）の式において、履歴数NUMの数が適宜設定されてもよい。アップイベント１５の直前の所定の数のタッチイベントが履歴数NUMとして設定されてもよい。また感度の判定が適正に実行できるのであれば、１点のタッチイベントの感度値により判定が実行されてもよい。履歴数NUMを十分に大きい数とすれば、グラフの左下の部分１８及び右側の部分１９内の開始点Ｓ及び終了点Ｅにおける感度値に引っ張られない、適正な平均値Ｅ（Ｈ）を算出することが可能となる。履歴数NUMや閾値Sizeは、タッチパネルの特性や実行されるタッチ操作の種類等をもとに適宜設定されればよい。指等の感度値が高い操作体による操作を判定可能であれば、任意の設定が採用されてよい。
【００５７】
ステップ１０４からステップ１０８にて、タッチ操作の時間的な間隔をもとにした判定が実行される。図９は、タッチ操作の時間的な間隔をもとにした判定を説明するための図である。例えば図９に示すアップイベント１５がムーブ操作中の誤検出であった場合、直後に次のダウンイベント１６が期待できる。従って、アップイベント１５の発行をタイマーによって遅延させて次のダウンイベント１６を待つ。そして所定の時間内に次のダウンイベント１６が検出された場合に、前に検出されたアップイベント１５が破棄される。すなわちタイマーに設定する発火までの時間よりも図９に示すアップイベント１５のタイムスタンプ（ｔ−α）のαが小さくなる場合には、アップイベント１５が破棄される。これにより途切れ部分１２の発生を防止することができる。なお閾値として設置される時間の長さ、すなわちタイマーが発火するまでの時間の長さは適宜設定可能である。この時間は、適正なアップイベント１５の発行までの遅延時間に直結するために、環境やデバイスに応じて適宜チューニングして設定されればよい。
【００５８】
図７に示すように、タイマーが開始され（ステップ１０５）、タイマーが発火したか否かが判定される（ステップ１０６）。次のダウンイベント１６が検出される前にタイマーが発火した場合は（ステップ１０６のＹｅｓ）、アップイベント１５が発行される（ステップ１０３）。すなわちアップイベント１５は誤検出ではないと判定される。これによりフィルタが無効化される。
【００５９】
タイマーが発火していないと判定された場合（ステップ１０６のＮｏ）、次のダウンイベント１６が検出されたか否かが判定される（ステップ１０７）。次のダウンイベント１６が検出されていない場合（ステップ１０７のＮｏ）はステップ１０６に戻る。次のダウンイベント１６が検出された場合（ステップ１０７のＹｅｓ）は、タイマーがキャンセルされる（ステップ１０８）。すなわちアップイベント１５は誤検出である可能性があるとして、次の方向の変位量（角度）をもとにした判定が実行される。
【００６０】
図１０は、基準方向と算出方向との変位量（角度）をもとにした判定を説明するための図である。アップイベント１５の検出前の区間における、タッチイベントの履歴H(H1,H2,….)
から移動量の平均を取り基準点Ｂが算出される。例えば以下の式に示すように、開始点Ｓからアップイベント１５のアップ位置であるアップ点Ｏまでの、各区間の移動量の平均が算出される。
【００６１】
【数２】
2014174801.tif 000004
【００６２】
（Ｂｘ，Ｂｙ）は、アップ点Ｏを基準とした基準点Ｂのｘ及びｙ座標である。そしてアップ点Ｏから基準点Ｂへ向かう方向（ベクトルＫ）が基準方向となる。基準方向の算出方向は限定されない。例えばアップ点Ｏ以前の所定の数の区間における平均移動量が算出されて基準方向が算出されてもよい。またアップ点Ｏと１つ前のダウン点Ｈ１とを結ぶ方向が基準方向として算出されてもよい。その他、アップ点Ｏ以降もムーブ操作が継続された場合に進むであろうと予測される方向が、任意の方法により算出されてよい。
【００６３】
またアップ点Ｏからダウン位置であるダウン点Ａへ向かう方向（ベクトルＭ）が算出方向として算出される。そして基準方向と算出方向との変位量として、ベクトルＫとベクトルＭとの間の角度α（∠AOB）が判定される。この角度αが所定の値よりも小さい場合は、ムーブ操作中の誤検出であるとしてアップイベント１５が破棄される。角度αが所定の値よりも大きい場合、操作面上の異なる位置へジャンプして移動したと判定され、アップイベント１５がそのまま発行される。
【００６４】
この角度αの判定について、本実施形態では、アップ点Ｏ、基準点Ｂ、ダウン点Ａのそれぞれの座標からｃｏｓαが算出される。そしてこのｃｏｓαが閾値Angleよりも大きいか否かが判定される。αの判定範囲を０°から１８０°として、その範囲ではｃｏｓαは減少関数である。従って、ｃｏｓαが閾値Angleよいも小さい場合は、角度αが所定の閾値よりも大きいことになる。またｃｏｓαが閾値Angleよいも大きい場合は、角度αが所定の閾値よりも小さいことになる。
【００６５】
ｃｏｓαの算出のために、まず線分ＯＡの大きさ（ベクトルＭの大きさ）、線分ＯＢの大きさ（ベクトルＫの大きさ）及び線分ＡＢの大きさ（ベクトルＤの大きさ）が、以下の式にて算出される。
【００６６】
【数３】
2014174801.tif 000005
【００６７】
そして以下の式に示すように、余弦定理を用いてｃｏｓαが算出され、閾値Angleとは比較される。
【００６８】
【数４】
2014174801.tif 000006
【００６９】
このｃｏｓαが閾値Angleよりも小さい場合（αの角度が大きい場合）、連続した点ではないと判断されフィルタが無効化される。すなわち図７のステップ１０９においてＮｏと判定され、アップイベント１５が発行される。ｃｏｓαが閾値Angleよりも大きい場合（αの角度が小さい場合）、アップイベント１５の有効性を判定するために、次の２点間の距離をもとにした判定が実行される。上記した角度による判定は、主にタッチペンで文字を書く場合等において、感度不足と筆跡を勘違いし過剰に点を結線してしまう問題に有効である。
【００７０】
図１１は、アップ位置とダウン位置との距離をもとにした判定を説明するための図である。以下の式に示すように、アップ点Ｏとその次のダウン点Ａとの距離ｄが算出され、閾値Distanceと比較される。
【００７１】
【数５】
2014174801.tif 000007
【００７２】
距離ｄが閾値Distanceよりも大きい場合、連続した点ではないと判断されフィルタが無効化される。すなわち図７のステップ１１０においてＮｏと判定され、アップイベント１５が発行される。距離ｄが閾値Distanceよりも小さい場合（ステップ１１０のＹｅｓ）、アップイベント１５は無効と判定され破棄される（ステップ１１１）。そしてムーブイベントが継続して発行される（ステップ１１２）。上記した２点間の距離ｄによる判定は、例えばマルチタッチ操作による距離の離れた２点間の交互の素早い連続タップ操作と、低感度によるアップイベント１５の誤検出とを判別するのに有効である。
【００７３】
図１２は、アップイベント１５の有効性を判定するために用いられる各パラメータの調整について説明するための表である。上記した角度、時間、感度及び距離をパラメータとして、アップイベント１５の有効性を判定する際には、以下に示すような影響が発生する可能性がある。従って各パラメータについて適切にチューニングすることが有効となる。
（１）フリック操作の判定のレスポンスが遅延する可能性がある。
（２）連続タップが困難となる可能性がある。
（３）分割して行った２つのムーブ操作が１つにまとめられてしまう過剰結線問題が発生する可能性がある。
【００７４】
特にタイマーを設定して判定する場合には、タイマーが発火するまでは判定は待たされるので、上記のフリック操作の判定レスポンスへの影響は大きくなる。
【００７５】
図２３に示す「flag_senscomp」というパラメータは、アップイベント１５を判定するためのフィルタ自体の有効及び無効の設定を意味する。フィルタを有効にする場合はパラメータは１となり、無効とする場合は０となる。このパラメータに関してチューニング時の注意点はない。なお図１２の表に示すパラメータ名は適宜設定されてよい。
【００７６】
「delay」は、リリースイベント（アップイベント１６）の最大遅延時間を意味する。これはタイマーの発火までの時間に相当する。この設定値の時間分だけリリースイベントが遅延する可能性がある。とくにフリック操作開始のレスポンスに影響を及ぼすため、値を大きくする場合には、影響を十分に確認する必要がある。「delay」の値は、例えばタッチパネル１０７のリフレッシュレートや取りこぼしを救う座標数等をもとに、アップイベントの有効性を判定するのに適正な時間が算出されればよい。
【００７７】
「size_enabled」は、タッチ操作の感度による補完契機判断機能の有効及び無効の設定を意味する。ここで補完の契機とはフィルタを設定するか否かに相当する。従って「size_enabled」は、この補完の契機にタッチ操作の感度を用いるか否か（図７のステップ１０２を設定するか否か）の設定を意味する。補完契機判断機能を有効とする場合パラメータ１となる。無効とする場合は０となり、タッチ操作の感度に関する閾値によらず、フィルタが設定され、すべてのアップイベント１５に関して有効性が判定される。このパラメータは、指等の感度の高い操作体が用いられた場合に、フィルタの設定により影響が出てしまう可能性を抑えることができる。例えば、代替手段がない場合には、常に有効とする、といった設定が考えられる。
【００７８】
「size」は、感度による補完契機判断機能が有効である場合に、その判断に用いられる閾値である。図８の説明でも述べたように、例えば感度履歴の平均がこの値以下の場合は、フィルタが設定され、そのタッチ操作が補完対象となる。例えばタッチイベントを取りこぼし始めるサイズ以上、かつ指で触ったときと低感度のタッチペンで触ったときとの区別が十分にできる値が設定される。値が大きすぎると、フリック操作開始のレスポンスに影響を及ぼす可能性があるので、その点も注意する。
【００７９】
「distance_enabled」は、距離による補完契機判断機能の有効及び無効の設定を意味する。すなわち補完の契機に２点間の距離を用いるか否か（図７のステップ１１０を設定するか否か）のパラメータが「distance_enabled」となる。有効とする場合パラメータは１となる。無効とする場合は０となり距離の閾値によらず、アップイベント１５に関して有効性が判定される。
【００８０】
「distance」は、距離による補完契機判断機能が有効である場合に、その判断に用いられる閾値である。アップ位置とダウン位置との距離（跳躍距離）がこの値以下の場合は、フィルタが設定され、そのタッチ操作が補完対象となる。例えば低感度状態で判別すべき連続タップの距離間隔以上の値に設定される。またＵＩ（User Interface）上に表示された複数のボタン間の距離等も考慮にいれて閾値が設定されてもよい。また値が大きいと、文字を描画する場合等で、過剰結線（アップイベント１５が破棄されて描画線が繋がり過ぎてしまう現象）を引き起こす可能性があるので注意する。
【００８１】
「angle_enabled」は、角度による補完契機判断機能の有効及び無効の設定を意味する。すなわち補完の契機に基準方向と算出方向との変位量を用いるか否か（図７のステップ１０９を設定するか否か）のパラメータが「angle_enabled」となる。有効とする場合パラメータは１となり、無効とする場合は０となり角度の大きさによらず、アップイベント１５に関して有効性が判定される。このパラメータは、例えば文字を書く際の過剰結線を防止するのに有効である。
【００８２】
「angle」は、距離による補完契機判断機能が有効である場合に、その判断に用いられる閾値である。この値が小さい過ぎる場合、過剰結線が多く発生する可能性が高くなる。逆に大きすぎると、曲線を描いている場合等において、補完すべき状況でフィルタが動作しない可能性がでてくる。例えは、「distance」の閾値とバランスをとりながらチューニングされる。
【００８３】
「QTP_SENSCOMP_RECORDHISTORY_POS_MAX」は、記憶部１０８に記憶しておく座標履歴の数である。これは基準方向と算出方向との変位量の算出に用いられる。例えば、線を引いている際の算出方向が十分に算出できる数に設定される。また基準方向を算出するために最低２点以上を必要とするアルゴリズムが用いられる場合には、必ず２以上の値に設定される。
【００８４】
「QTP_SENSCOMP_RECORDHISTORY_SIZE_MAX」は、記憶部１０８に記憶しておく感度履歴の数である。これは感度の算出に用いらえる。値が小さすぎる場合、高感度時のタッチDown/Upによるサイズ値減少に過剰反応してしまう可能性がある。サイズ減少が生じる可能性のある座標数以上かつ減少したサイズ値を含めて平均をとっても閾値Sizeで十分に判断できる値とする。
【００８５】
図１３は、本実施形態に係るタブレット端末１００の動作例を示す状態遷移図である。図１４は、本実施形態において定義されるイベントの一例を示す図である。図１５は、本実施形態において定義される状態の一例を示す図である。
【００８６】
例えばタッチ操作に関する操作情報が判断され、図１４に示すイベント「INIT」「SINGLETOUCH」「MOULTITOUCH」「NOFINGER」「TIMEOUT」及び「RESET」に適宜置換される。また図１５に示す４つの状態「INACTIVE」「READY」「ACTIVE」及び「TRICK」はそれぞれ独立して存在しており、上記の内部イベント以外での遷移は発生しないとする。
【００８７】
図１３に示すような状態の遷移が行われが、その中でイニシャライズされてからフィルタが動作し、待機状態に戻る場合の遷移を以下に示す。
（１）［INACTIVE］初期化完了。READYへ遷移。
（２）ユーザ操作によるドラッグ開始（ムーブ操作開始）。
（３）［READY］シングルタッチイベントを受信。フィルタ動作開始。ACTIVEへ遷移。
（４）低感度によるリリースイベント発生（ユーザはドラッグ中）。
（５）［ACTIVE］リリースイベント受信。タイマーを張ってTRICKへ遷移。この時、呼出し元のドライバに上位へのリリースイベント通知を抑止するメッセージを返却（アップイベントの発行を遅延させる）。
（６）低感度から復帰しシングルタッチ発生。
（７）［TRICK］シングルタッチ受信。タイマーをキャンセルしACTIVEへ遷移。
（８）ユーザ操作終了。
（９）［ACTIVE］リリースイベント受信。タイマーを張ってTRICKへ遷移。
（１０）［TRICK］タイムアウト受信。ドライバ側へ上位へのリリースイベント発行を要求しREADY状態へ遷移（アップイベントの発行）。
【００８８】
以上、本実施形態に係る情報処理装置であるタブレット端末１００では、操作体の操作面１０へのタッチ操作を検出するための操作情報として、アップ操作を検出するためのアップイベント１５と、ダウン操作を検出するためのダウンイベント１６とが入力される。アップイベント１５の次にダウンイベント１６が入力された場合、アップ点Ｏを基準とした基準方向と、アップ点Ｏからダウン点Ａへ向かう算出方向との変位量をもとに、入力されたアップイベント１５が有効であるか否かが判定される。例えば、変位量が所定の値よりも小さい場合は、実際にはアップ操作が行われていない可能性が大きい。従ってそのような場合には、アップイベント１５は破棄される。これにより、アップ操作の誤検出に伴う誤った処理の実行を防ぐことができ、操作面１０へのタッチ操作に関して操作性を向上させることが可能となる。また間隔時間、感度、及び距離に関する所定の条件を満たす場合に、アップイベント１５の有効性が判定されるように設定することで、種々のタッチ操作に適応した高い操作性を実現することが可能となる。
【００８９】
またユーザ操作の安定的な検出が困難な状況下においても、誤動作を防止し、より実際の操作に近いトラッキングを実現することが可能となる。また安定的に検出できている場合にはフィルタが自動的に無効化され、操作に悪影響を与える可能性を抑えることができる。また本技術は、タッチパネルデバイスの方式によらず適用可能である。例えば、静電方式でのタッチペン入力や細い指での入力、感圧方式での圧力不足による検出漏れ、ホバー方式での検出不足（手袋使用時も含む）等の対策として十分に効果を発揮することができる。
【００９０】
＜その他の実施形態＞
本技術は、以上説明した実施形態に限定されず、他の種々の実施形態を実現することができる。
【００９１】
上記の実施形態では、図１０に示すように、アップ位置を基準とした基準方向と、アップ位置からダウン位置へ向かう方向として算出された算出方向との変位量をもとに、第１の操作情報が有効であるか否かが判定された。これにより、タッチペンで文字を書く場合等における過剰結線問題の発生が防止されている。
【００９２】
この方法に限定されず、他の方法により、操作体の動きをもとにした第１の操作情報の有効性の判定が実行されてもよい。すなわちアップ位置又はアップ位置を基準とした位置における操作面上の移動方向の変化量に基づいて、入力された第１の操作情報の有効性が判定されてもよい。例えばアップ位置又はアップ位置を基準とした位置までの操作体の移動方向と、アップ位置又はアップ位置を基準とした位置を通過後の操作体の移動方向との変化量が算出され、その変化量が所定の値よりも小さい場合には、入力された第１の操作情報は有効でないと判定されてもよい。なおアップ位置を基準とした位置とは、例えばアップ位置の近傍領域に含まれる位置等のことである。その他、操作体の移動方向の変化量を算出するために用いられる位置（座標点）を含む概念である。以後、アップ位置及びアップ位置を基準とした位置というのを、アップ位置等と記載する。
【００９３】
アップ位置等における移動方向の変化量の算出方法は、限定されず、任意の技術が用いられてよい。例えばアップ位置等を通る曲線が近似的に算出され、アップ位置等における曲率をもとに移動方向の変化量が算出されてもよい。近似曲線の算出方法として、スプライン曲線の算出方法等が適宜用いられてもよい。また、ダウン位置の情報が用いられることなく、移動方向の変化量が算出されてもよい。その他、カメラ等を含む他のセンサ装置により操作体の動きが検出され、その結果をもとに移動方向の変化量が算出されてもよい。このように移動方向の変化量が算出されることで、上記した過剰結線問題を防止することが可能となる。
【００９４】
なお、上記の実施形態においては、アップ位置を基準とした基準方向と、アップ位置からダウン位置へ向かう方向として算出された算出方向との変位量をもとに、操作体の操作面上の移動方向の変化量が定められていることになる。すなわち、移動方向の変化量を判定する１つの方法として、基準方向と算出方向との変位量の判定が用いられている。これにより簡単な演算にて移動方向の変化量を判定することが可能となっている。
【００９５】
上記では、第１の操作情報の入力の次に第２の操作情報の入力された場合に、第１の操作情報の有効性が実行された。しかしながら、次に第２の操作情報が入力されたか否かにかかわらず第１の操作情報の有効性の判定が実行されてもよい。例えばダウン位置の情報を用いない場合等で、そのような処理が実行される。これにより判定処理の処理速度を向上させることができる。一方、次に第２の操作情報が入力された場合に信頼性の判定を実行させる場合では、全体の演算処理量を軽減させることが可能となる。
【００９６】
上記の図７に示すフローチャートでは、各パラメータによる判定が、以下の順番にて実行された。
（１）タッチ操作の感度の判定
（２）アップイベント検出からのタイマー判定
（３）方向の変異量（角度）の判定
（４）距離の判定
そして特に（３）の角度の判定を前提としてこれにその他のパラメータによる判定を加える形で実施形態を説明した。しかしながらタッチ操作の操作性を向上させるための技術は、（３）を前提とした技術に限定されるわけではない。
【００９７】
例えば上記の（１）から（４）のうちの任意の１つ、あるいは任意の組み合わせによって、アップイベントの有効性が判定されてもよい。例えば（２）のタイマー判定を基準として、そのタイマー判定で所定の時間内にダウンイベントが検出された場合に、その他の（１）（３）及び（４）のいずれか若しくは組み合わせにより、アップイベントの有効性が判定されてもよい。いずれのパラメータを用いるかは任意であり、アプリケーションの種類や入力されるタッチ操作の種類等により適宜設定されてよい。またその設定が自動的に実行されてもよい。
【００９８】
（２）のタイマー判定が基準となる場合に、上記でも述べたが、フリック動作等に影響がでてしまう可能性がある。その影響を軽減することを目的に、適宜（１）（３）及び（４）が追加として設定されてもよい。
【００９９】
タッチパネルの表示面等に表示されるＵＩに設定項目を設けて、各パラメータの機能のON/OFF等がユーザに選択可能であってもよい。これによりユーザ毎に適した使用感を実現することができる。また、アプリケーションやＵＩ毎に機能をON/OFFする機構を利用することで、特定シーンにのみにアップイベントの有効性を判定するフィルタを設定させるといったことも可能である。
【０１００】
上記では、時間、感度、距離、軌跡の角度によって、有効性の判定が実行された。さらにその他の要素が有効性を判定するためのパラメータとして用いられてもよい。これにより、より厳密な判定を実行することが可能となる。例えば、筆跡や操作の癖、UI部品の位置等の実際に入力される操作を推測可能な要素が、パラメータとして用いられてもよい。
【０１０１】
本技術の適用範囲は、タッチパネル等のタッチセンサデバイスに限定されない。例えば、カメラを用いたポインティングデバイスにおいて、画素の情報等から本アルゴリズムで定義するノード数（感度：サイズ）を算出することで、同様の効果が得られる。またポインティングデバイスがネットワーク越しに用意されていた場合、通信状況などをノード数として本技術を適用することで、同様の効果が得られる。
【０１０２】
図１６は、本技術に係る有効性の判定を実行するモジュールの実装例を示すブロック図である。タッチパネルデバイスの性能は年々向上してきており、その精度は非常に高いレベルにまで到達しつつある。一方で、さらに厳しいユーザ要求や様々な環境要因などもあり、必ずしもすべてのユースケースにおいて必要十分な性能があるとは言えない。現時点でそのような要求にこたえるためには、デバイスの限界性能の先を補う必要がある。本実施形態に係る有効性判定モジュールは、そのような厳しい要求をソフトウェア的に補完するために用意されたフィルタ群として実現させることが可能である。
【０１０３】
図１６に示すように、有効性判定モジュールは、タッチパネルイベントのHW⇒Driver⇒Kernelという一連のデータフローの間に挟み込む形で実装することが可能である。これにより、HWからKernelまでのフローを大きく変更することなく本技術を実施することができる。TouchPanelDriverはHWモジュールから通知されたタッチイベント（１）をkernelに通知する前に、有効性判定モジュールに通すことで（２）、補正された結果および補足情報を得ることができる（３）。その後、TouchPanelDriverは補足情報の判断などを行い、必要に応じてKernelに補正後のイベントデータを通知する（４）。このような実装が可能である。しかしながら、実装されるレイヤは限定されない。タッチパネルのドライバレイヤに実装されてもよいし、デバイスファームウェアからアプリ層までの、どのレイヤにも実装可能である。
【０１０４】
アップイベントの有効性を判定するためのパラメータが、状況に応じて動的に変更されてもよい。図１７は、その動的な変更例を示す図である。図１７に示すように、操作面１０の左上の点を基準点Ｑとして、x座標成分の範囲を０からX_Max、y座標成分を０からY_Maxとして座標系を設定する。そして（X_Max/2，Y_Max/2）を画面中心Ｐとして見た場合に、その画面中心Ｐにおいて最もノイズが少なく、画面端に行くにつれノイズレベルが高くなる。これに合わせて距離の閾値Distance及び角度の閾値Angleを動的に変える事により、より効果的にフィルタを有効化することが可能となる。例えばタッチ領域が画面の中央Ｐから端になりノイズレベルが（小→大）になったとする。それに合わせて閾値Distanceを（小→大）に動的に変え、また閾値Angleを（大→小）に動的に変更する。これにより高い操作性を実現することが可能となる。また、手書き入力エリアなどに限定して本アルゴリズムをOn/Offすることで操作性を向上させてもよい。
【０１０５】
本技術に関連した技術として、以下に説明する歪み補正技術が用いられてもよい。例えばこの歪み補正がフィルタとして追加して設定されてもよい。
【０１０６】
図１８−図２０は、その歪み補正技術の概要を説明するための図である。静電容量式のタッチパネルを搭載するデバイスでは、液晶ディスプレイ（LCD：Liquid Crystal Display）の画面端部２０１において座標精度が著しく低下するという問題が起こることが多い。この問題は、画面端部２０１においてＧＵＩ（Graphical User Interface）を操作しにくい等のユーザビリティを大きく損なう恐れがある。この問題の原因としては、図１９に示すように、端部２０１におけるセンサ２０２の不存在が挙げられる。すなわち静電容量式のタッチパネル２０７では、一般的に接触点２１０の周囲のセンサ値をもとに座標値が算出される。しかしながら画面端部２０１においては、画面外側にセンサ２０２（図中の格子の頂点に位置する）が存在しないため座標検出の精度が十分に得られない。その結果図１９及び図２０に示すように、タッチパネル２０７により認識される認識点２２０の座標が、実施の接触点２１０の座標よりも画面端２２５に張り付くような方向にずれることが認識された。ここで説明する歪み補正技術では、機種ごとに歪み（座標のずれ）のパターンをモデル化し、画面端部２０１での線形性を高めることを目的とした補正が実行される。
【０１０７】
図２１−図２３は、歪み補正技術の詳細を説明するための図である。画面端部２０１において線形性が低下する主な原因を座標値算出のための参照点不足（センサ不足）と考えると、図１９及び図２０にも示すように、Ｙ方向のセンサ値が十分に参照できる位置においては、主にＸ方向のずれが発生すると考えられる。実際のデバイスにおいて、画面をＹ軸方向に４つの領域に分割し、各領域において実際の接触点２１０と認識点２２０とのずれ量を測定してみると、Ｘ方向の画面端部２０１でずれ量が大きくなっており、ずれの程度はＹ軸方向の位置にほとんど依存していないことが確認できた。従って、歪み補正フィルタはＸ方向とＹ方向とで互いに独立して補正を実行することが可能となる。
【０１０８】
歪み補正フィルタの詳細な補正アルゴリズムの一例を説明する。まず画面端部２０１における真値からのずれ量を各軸方向での画面端２０５からの距離ｄ（≧０）に関するf(d)で表現できるとする。ここでf(d)は複数のパラメータΘで決まるパラメトリックな非線形フィッティング関数としてfΘ(d)と表す。このfΘ(d)を、例えば以下の対数を用いた式にて表す。
【０１０９】
【数６】
2014174801.tif 000008
【０１１０】
この関数fΘ(d)を用いて、Θの値を調整すると画面端２０５からの距離ｄに関する真値からのずれ量は、図２１に示すように近似される。図２１の横軸はｘ座標であり、横軸はｘ軸方向における座標のずれである。パラメータ列Θの設計に関しては様々な手法が考えられるが、ここでは工業用ロボットを用いて精密にプロットした座標（≒真の値）とタッチパネルが通知してくる座標とのズレ量を評価値とする最小化問題として定式化し、一般的な探索的手法で準最適解を求めるアプローチを採用した。その他の方法が用いられてもよい。この近似されたずれ量を座標値の補正量として用いて、タッチパネルが認識した値ｐの値を以下の式に示すように画面端２０５から遠ざかる方向に補正する。ここで、ｐ０は座標点ｐから最も近い画面端２０５の座標であり、ｐ’は補正後の座標である。
【０１１１】
【数７】
2014174801.tif 000009
【０１１２】
実際に本歪み補正フィルタをドライバ内で実装する際には、数学関数を用いた連続関数としてfΘ(d)を実装することは難しいことが多い。そこで図２２に示すように、Θの設計と同時にfΘ(d)をＸ、Ｙ方向に関してそれぞれテーブル化し、実際の仕様の際には位置に応じた補正量をテーブル引きする等の処理も有効である。このようなアルゴリズムにより、図２３に示すように、認識点２２０の座標を接触点２１０の実際の座標に近似することで、画面端部２０１の歪みを補正することが可能となる。
【０１１３】
図２４は、歪み補正フィルタにて用いられるパラメータのチューニングについて説明するための表である。各パラメータに対して、対象デバイスに適したチューニングを行うことで、高い効果を得ることが可能となる。この中で「array_x_edge_filter」及び「array_y_edge_filter」の各補正量テーブルは、事前に補正関数をテーブル化したものであり、典型的には、本テーブル内の一部分を直接変更することは行われない。チューニングの際には、まず関数の再設計を行ってから再テーブル化が行われる。しかしこれに限定されるわけではない。
【０１１４】
図２５及び２６は、歪み補正フィルタの効果を操作面３１０全体にて観察するための図である。図２５は補正前の図であり、図２６は補正後の図である。図２６の画面端部３０１の全領域において、座標値が適正に補正されていることがわかる。なお、歪み（座標のずれ）のパターンをモデル化することで、操作面３１０の全領域において座標値の補正を実行することも可能である。例えばフィッティング関数を適宜設定することでそのような補正が可能となる。
【０１１５】
以上説明した各形態の特徴部分のうち、少なくとも２つの特徴部分を組み合わせることも可能である。
【０１１６】
なお、本技術は以下のような構成も採ることができる。
（１）操作体の操作面への操作を検出するための操作情報として、前記操作面からのアップ操作を検出するための、前記アップ操作が行われた位置の情報としてのアップ位置の情報を含む第１の操作情報を入力可能な入力部と、
前記アップ位置を基準とした位置における前記操作体の前記操作面上の移動方向の変化量に基づいて、前記入力された第１の操作情報が有効か否かを判定する制御部と
を具備する情報処理装置。
（２）（１）に記載の情報処理装置であって、
前記制御部は、前記操作体の前記操作面上の移動方向の変化量が、所定の値よりも小さい場合に前記入力された第１の操作情報は有効ではないと判定する
情報処理装置。
（３）（１）又は（２）に記載の情報処理装置であって、
前記入力部は、前記操作面へのダウン操作を検出するための、前記ダウン操作が行われた位置の情報としてのダウン位置の情報を含む第２の操作情報を入力可能であり、
前記制御部は、前記第１の操作情報の入力の次に、前記ダウン操作を検出するための前記第２の操作情報が入力された場合に、前記判定を実行する
情報処理装置。
（４）（３）に記載の情報処理装置であって、
前記制御部は、前記アップ位置を基準として算出された基準方向と、前記アップ位置からその次の前記ダウン位置へ向かう方向として算出された算出方向との変位量をもとに、前記操作体の前記操作面上の移動方向の変化量を定める
情報処理装置。
（５）（３）又は（４）に記載の情報処理装置であって、
前記制御部は、前記第２の操作情報の入力が前記第１の操作情報の入力から所定の時間内に行われた場合に、前記判定を実行する
情報処理装置。
（６）（３）から（５）のうちいずれか１つに記載の情報処理装置であって、
前記制御部は、前記アップ操作及び前記ダウン操作を少なくとも含む前記タッチ操作の感度が所定の値よりも小さい場合に、前記判定を実行する
情報処理装置。
（７）（３）から（６）のうちいずれか１つに記載の情報処理装置であって、
前記制御部は、前記アップ位置と前記ダウン位置との距離が所定の値よりも小さい場合に、前記判定を実行する
情報処理装置。
【符号の説明】
【０１１７】
Ｏ…アップ点
Ａ…ダウン点
１０…操作面
１５…アップイベント
１６…ダウンイベント
１００…タブレット端末
１０１…ＣＰＵ１０１
１０５…入出力インタフェース
１０７…操作部（タッチパネル）
１１５…入力部
１１６…タイマー部
１１７…方向変位量（角度）算出部
１１８…感度算出部
１１９…距離算出部
１２０…判定部
１２１…出力部
【図１】
2014174801.tif 000010
【図２】
2014174801.tif 000011
【図３】
2014174801.tif 000012
【図４】
2014174801.tif 000013
【図５】
2014174801.tif 000014
【図６】
2014174801.tif 000015
【図７】
2014174801.tif 000016
【図８】
2014174801.tif 000017
【図９】
2014174801.tif 000018
【図１０】
2014174801.tif 000019
【図１１】
2014174801.tif 000020
【図１２】
2014174801.tif 000021
【図１３】
2014174801.tif 000022
【図１４】
2014174801.tif 000023
【図１５】
2014174801.tif 000024
【図１６】
2014174801.tif 000025
【図１７】
2014174801.tif 000026
【図２０】
2014174801.tif 000027
【図２１】
2014174801.tif 000028
【図２２】
2014174801.tif 000029
【図２４】
2014174801.tif 000030
【図１８】
2014174801.tif 000031
【図１９】
2014174801.tif 000032
【図２３】
2014174801.tif 000033
【図２５】
2014174801.tif 000034
【図２６】
2014174801.tif 000035