(57)【要約】【課題】  マルチタッチによる操作が可能な装置において、ユーザの個体差や操作時のタッチ入力機器の傾きの違いがある場合でも、装置を支持する手によるタッチに起因する誤動作を低減することを主な目的とする。【解決手段】  本発明は、指示位置を用いて入力される操作を認識する情報処理装置であって、表示画面上で指示される１以上の指示位置を取得する位置取得部１２１と、前記取得された１以上の指示位置のそれぞれに対応する圧力に関する情報を取得する圧力取得部１２２と、前記表示画面上で指示されている指示位置が同時刻に複数存在する場合に、該複数の指示位置のうち、前記圧力取得部によって取得された圧力に関する情報に基づいて前記情報処理装置に対する操作に用いられる入力ではないと決定される指示位置を除く指示位置を用いて入力される前記操作を認識する認識部１２４とを備えることを特徴とする。【選択図】  図１
2015118541.tif 000002
【特許請求の範囲】
【請求項１】
指示位置を用いて入力される操作を認識する情報処理装置であって、
表示画面上で指示される１以上の指示位置を取得する位置取得手段と、
前記位置取得手段によって取得された１以上の指示位置のそれぞれに対応する圧力に関する情報を取得する圧力取得手段と、
前記表示画面上で指示されている指示位置が同時刻に複数存在する場合に、該複数の指示位置のうち、前記圧力取得手段によって取得された圧力に関する情報に基づいて前記情報処理装置に対する操作に用いられる入力ではないと決定される指示位置を除く指示位置を用いて、入力される前記操作を認識する認識手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記表示画面上で指示されている指示位置が同時刻に複数存在する場合、前記複数の指示位置のそれぞれについて、前記圧力取得手段によって取得された圧力に関する情報に基づいて、前記情報処理装置に対する操作に用いられる入力かを決定する決定手段
をさらに備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記圧力取得手段は、前記位置取得手段によって取得された１以上の指示位置のそれぞれに対応する圧力の一定の時間における変化量を取得し、
前記決定手段は、前記複数の指示位置のそれぞれについて、前記圧力取得手段によって取得された圧力の変化量に基づいて、前記情報処理装置に対する操作に用いられる入力かを決定する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記決定手段は、前記複数の指示位置のうち、前記前記圧力取得手段によって取得された圧力の変化量が所定の値を越えた指示位置を、前記圧力取得手段によって取得された圧力に関する情報に基づいて、前記情報処理装置に対する操作に用いられる入力ではないと決定する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記情報処理装置の傾きに対応する角度情報を検知する角度取得手段をさらに備え、
前記決定手段は、前記角度取得手段によって取得された角度情報に基づいて、指示位置の決定手段が所定の値を選択する
ことを特徴とする請求項３又は４に記載の情報処理装置。
【請求項６】
前記決定手段は、前記複数の指示位置のうち、最新ではない指示位置のそれぞれについて、前記圧力取得手段によって取得された圧力に関する情報に基づいて、前記情報処理装置に対する操作に用いられる入力かを決定する
ことを特徴とする請求項２乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記圧力取得手段は、前記位置取得手段によって取得された１以上の指示位置のうち、基準となる指示位置のそれぞれに対応する圧力と、基準ではない指示位置に対応する圧力との圧力差を取得し、
前記決定手段は、前記複数の指示位置のそれぞれについて、前記圧力取得手段によって取得された圧力差に基づいて、前記情報処理装置に対する操作に用いられる入力かを決定する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項８】
前記基準となる指示位置は、前記複数の指示位置のうち、最新の指示位置であって、
前記決定手段は、前記最新の指示位置は、前記情報処理装置に対する操作に用いられる入力であると決定する
ことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記最新の指示位置とは、前記位置取得手段によって取得される指示位置の数が増えたときに最後に取得された指示位置、あるいは、前記位置取得手段によって取得される指示位置が最後に移動した指示位置であることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記圧力取得手段は、前記位置取得手段によって取得された１以上の指示位置のそれぞれに加わる接触圧力の大きさを示す値を取得する
ことを特徴とする請求項１乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記圧力取得手段は、前記位置取得手段によって取得された１以上の指示位置のそれぞれにおいて検出される接触面積の大きさを、当該指示位置に加わる接触圧力の大きさを示す値であるとみなす
ことを特徴とする請求項１０項に記載の情報処理装置。
【請求項１２】
指示位置を用いて入力される操作を認識する情報処理装置の制御方法であって、
位置取得手段により、表示画面上で指示される１以上の指示位置を取得する位置取得工程と、
圧力取得手段により、前記位置取得工程において取得された１以上の指示位置のそれぞれに対応する圧力に関する情報を取得する圧力取得工程と、
認識手段により、前記表示画面上で指示されている指示位置が同時刻に複数存在する場合に、該複数の指示位置のうち、前記圧力取得工程において取得された圧力に関する情報に基づいて、前記情報処理装置に対する操作に用いられる入力ではないと決定された指示位置を除く指示位置に基づいて、前記操作を認識する認識工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項１３】
コンピュータに読み込ませ実行させることで、前記コンピュータに請求項１２に記載の制御方法を実行させるための制御プログラム。
【請求項１４】
請求項１３に記載の制御プログラムを格納したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１以上の指示位置を用いて入力される操作を認識する技術に関する。
【背景技術】
【０００２】
近年、ユーザの指あるいはスタイラスにより画面がタッチされたことに応答して、タッチされた位置のＸ，Ｙ座標値を入力値として取り込み、この入力値に基づいて各種処理を実行するタッチ入力機器が普及している。また、画面の複数点をタッチすることにより操作を行う、いわゆるマルチタッチの技術が発展しつつある。このマルチタッチの操作においては、例えば右手の人差し指と親指の２つを使って２点をタッチするなどにより、拡大、縮小、スクロールなどの多種多様な操作が可能である。
【０００３】
このようなタッチ入力機器では、多くの場合、できるだけ装置全体を画面として設計することが望まれる。従って、例えばユーザが手でタッチ入力機器を保持するためなど、無意識に画面をタッチしてしまう事が起こり得る。マルチタッチ操作が可能なタッチ入力機器において、上述したようにユーザが誤って画面を触ってしまった場合には、ユーザの意図よりも多くのタッチ入力が認識されてしまい、誤動作の原因となりえる。
【０００４】
ユーザの意図しないタッチ入力を無効にする技術として、特許文献１が知られている。
特許文献１では、タッチ入力における押圧荷重を検出し、設定された荷重基準に基づいて、このタッチ入力を受けつけるか否かを制御することが開示されている。その際、タッチ入力を受け付ける荷重基準は、第１の荷重基準とこれよりも高い第２の荷重基準を設定する。そして、第１の荷重基準の入力用オブジェクトに対するタッチ入力の押圧荷重が、第２の荷重基準を満たした場合は、このタッチ入力を受け付けないように制御する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１５０７３８号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、多くのタッチ入力機器において、タッチ入力の押圧荷重はユーザ毎に異なり、さらに操作されている時のタッチ入力機器の傾きによっても異なる。例えば、タッチ入力の押圧荷重は、ユーザの年齢や性別等により異なる。また、ユーザが仰向けに寝た状態で、タッチ入力機器を下から操作した場合は、タッチ入力にタッチ入力機器の重さも荷重され、通常よりも押圧荷重が大きくなり、また不安定になり易い。
【０００７】
本発明は上記課題に鑑みてなされたものであり、マルチタッチによる操作が可能な装置において、ユーザの個体差や操作時のタッチ入力機器の傾きの違いがある場合でも、装置を支持する手によるタッチに起因する誤動作を低減することを主な目的とする。
【課題を解決するための手段】
【０００８】
本発明は上記課題に鑑みてなされたものであり、指示位置を用いて入力される操作を認識する情報処理装置であって、表示画面上で指示される１以上の指示位置を取得する位置取得手段と、前記位置取得手段によって取得された１以上の指示位置のそれぞれに対応する圧力に関する情報を取得する圧力取得手段と、前記表示画面上で指示されている指示位置が同時刻に複数存在する場合に、該複数の指示位置のうち、前記圧力取得手段によって取得された圧力に関する情報に基づいて前記情報処理装置に対する操作に用いられる入力ではないと決定される指示位置を除く指示位置を用いて入力される前記操作を認識する認識手段と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、マルチタッチによる操作が可能な装置において、ユーザの個体差や操作時のタッチ入力機器の傾きの違いがある場合でも、装置を支持する手によるタッチに起因する誤動作が低減する。
【図面の簡単な説明】
【００１０】
【図１】情報処理装置の外観と構成の一例を示す図
【図２】ユーザによるタッチ入力の認識処理の流れの一例を示すフローチャート
【図３】指示位置の検出処理の流れの一例を示すフローチャート
【図４】指示位置の接触圧力に基づく指示位置の無効決定処理の流れの一例を示すフローチャート
【図５】情報処理装置の操作例を示す図
【図６】情報処理装置の傾きを示す図
【図７】指示位置に関して保持される情報の一例を示す図
【図８】指示位置に関して保持される情報の一例を示す図
【図９】指示位置の接触圧力に基づく指示位置の無効決定処理の流れの一例を示すフローチャート
【図１０】指示位置に関して保持される情報の一例を示す図
【図１１】情報処理装置を操作するユーザの姿勢の一例を示す図
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について、図面を参照しながら説明する。なお、以下で説明する実施形態は、本発明を具体的に実施した場合の一例を示すものであり、これに限るものではない。
【００１２】
［第１の実施形態］
図１は、本実施形態に適用可能な情報処理装置の外観とハードウェア構成とソフトウェア構成の一例を示す。
【００１３】
図１（ａ）は、情報処理装置１００の一例である携帯端末を画面の正面及び側面から見た外観を示す図である。図１（ａ）において、筐体１０１は、入力領域１０２の外周部であり、合成樹脂や金属等で形成される。入力領域１０２は、タッチセンサ等で構成され、ユーザがタッチの対象とする対象領域であり、情報処理装置１００に対する操作入力に用いられるタッチ入力を受け付ける。本実施形態では、入力領域１０２は表示部であるディスプレイの表示画面部分にタッチセンサを設置したタッチパネルディスプレイによって構成される。この表示画面は、情報処理装置１００、あるいは情報処理装置１００と接続された装置を操作するための画像を表示するインタフェースである。ユーザが情報処理装置１００を支持する場合、通常はこの筐体１０１の一部を手で掴むことになる。なお、ここで説明する情報処理装置１００のタッチパネルディスプレイ１１５の入力領域１０２は、４８０［ｄｏｔ］×６４０［ｄｏｔ］の解像度を有し、紙面に向かって左上を原点とする座標平面として位置情報を管理することができるものとする。さらにタッチセンサは、指示位置における接触情報も取得でき、具体的には接触圧力や接触面積等を取得する。以降、本実施形態では、図１（ａ）に示す携帯端末を、情報処理装置１００として説明する。
指示位置指示位置  図１（ｂ）は、本実施形態に適用可能な情報処理装置１００のハードウェア構成を示すブロック図の一例である。図１（ｂ）において、ＣＰＵ１１１は、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔである。また、ＲＯＭ１１２は、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙであり、ＨＤＤ１１３は、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅである。本実施形態では、ＣＰＵ１１１が、ＲＯＭ１１２やＨＤＤ１１３に格納されている制御プログラムを読み出して実行し、各デバイスを制御する。この制御プログラムは、本実施形態で説明される各種動作を情報処理装置１００に実行させるための制御プログラムである。ＲＯＭ１１２は、それらの制御プログラムやそのプログラムに利用される各種データを保持する。ＲＡＭ１１４は、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙであり、ＣＰＵ１１１の上記プログラムのワーク領域、エラー処理時のデータの退避領域、上記制御プログラムのロード領域などを有する。ＨＤＤ１１３は、上述の各種制御プログラムや各種データを格納する。タッチパネルディスプレイ１１５は、入力領域１０２におけるユーザの操作情報を取り込むためのタッチセンサ等と表示出力を行う表示画面を兼ねるデバイスである。タッチパネルディスプレイ１１５は、入力領域１０２が人の手などでタッチされた場合にその接触部分を検出し、入力領域１０２に定義される座標平面上で、タッチされている位置を１つの座標点として特定する。接触部分が面積を有する場合にはその重心あるいは中心の座標を特定する。以下、当該点を指示位置と言う。なお、指示位置は、タッチパネルに検出されている１以上の接触部分のうち、独立しているとみなされる１以上の接触部分（例えば、複数の指でタッチされた場合、接触部分は複数存在する）のそれぞれについて検出可能とする。すなわち本実施形態のタッチパネルディスプレイ１１５は、いわゆるマルチタッチ検出が可能なものであって、同時刻において指示されている１以上の指示位置を全て検出することができるものである。タッチの検出方式は、抵抗膜方式、静電容量方式、赤外線方式、超音波方式、音響波方式、振動検出方式等の各種タッチパネルが利用できる。他にも、距離画像センサや、ステレオカメラなどの三次元空間での位置を検出できるもので入力対象面に触れたかどうかを検出し、入力対象面上で定義される位置情報を取得してもよい。また、情報処理装置の表面に接触していない、近接した状態でのユーザの指などの位置情報を検出できる検出手段を用いて得られた近接状態での位置（近接位置）情報を、指示位置として扱うことも可能である。本実施形態では、指示位置は１点の座標点として検出するものとするが、これに限らない。面積を持った接触部分を指示位置とみなしてもよく、また例えば入力領域１０２をアレイ状のタッチエリアに区分し、いずれのエリアにおいてタッチが検出されているかを示すエリアの識別情報を、指示位置として扱うこともできる。また、指示位置の接触圧力は、タッチによる指示位置近傍の圧力センサにより検出された圧力の総和である。本実施形態では、接触圧力の最大値は１５００で、非接触状態では０となる。近接位置が検出される場合、当該指示位置における接触圧力の大きさは０となる。よって、指示位置での接触圧力値は、０〜１５００の範囲で圧力の強さに比例する離散値となる。なお、接触圧力を、接触面積で代用してもよい。すなわち、指をタッチパネルに押し付ける圧力が大きいほど、指がタッチパネルの表面に接触する面積が大きくなる性質を利用し、接触部分の面積の大きさを示す情報を、接触圧力の大きさを示す情報として扱ってもよい。つぎに、出力Ｉ／Ｆ１１６はネットワーク等を介してディスプレイ以外の出力装置に各種情報を出力するためのインタフェースである。角度センサ１１７は、例えば加速度センサであって、情報処理装置１００が鉛直方向に対して傾いている傾きの角度情報を取得する。なお、指示位置を、タッチ操作を構成する入力に用いられる指示位置ではないか（タッチ操作を構成する入力として無効か）を決定する、指示位置の無効決定処理において、情報処理装置１００の傾きを考慮しない場合は、角度センサ１１７は不要となる。バス１１８は、ＣＰＵ１１１の制御の対象とする構成要素を指示するアドレス信号、各構成要素を制御するためのコントロール信号、各構成機器相互間でやりとりされるデータの転送を行う。なお、上述した制御プログラムは、ＲＯＭ１１２又はＨＤＤ１１３に予め記憶されていてもよいし、必要に応じてネットワークを介して外部装置などから受理し、ＲＯＭ１１２又はＨＤＤ１１３に記憶しても良い。
【００１４】
図１（ｃ）は、情報処理装置１００のソフトウェアの構成を示すブロック図の一例である。
【００１５】
位置取得部１２１は、ＣＰＵ、ＲＯＭ、ＲＡＭ（以下、ＣＰＵ等）によって構成され、タッチパネルディスプレイ１１５のタッチセンサからの信号に基づき、表示画面上（入力領域上）でユーザによってタッチされている指示位置に関する情報を取得する。ただし、必ずしも接触状態にない近接位置を、タッチされた指示位置とみなす場合も含む。なお、本実施形態で用いるタッチセンサは、複数の指示位置が同時にタッチされている場合（いわゆるマルチタッチ状態）でも、１点ずつ順に情報を通知してくるものとする。そして、これらのタッチに関する情報を、ＲＡＭ１１４により構成される保持部１２７に保持する。指示位置に関する情報とは、例えば入力領域１０２内での指示位置を示す座標情報、指示位置が検出された検出時刻、検出された順番を示す情報である。さらに、本実施形態では、指示位置毎に最新フラグが関連付けられる。最新フラグとは、１以上の指示位置のうち、最後に検出した指示位置を識別可能とするためのフラグである。ただし、本実施形態のタッチセンサは周期的に指示位置を検出しているため、移動せずに同じ位置に存在し続ける指示位置も、一定の時間間隔毎に検出されてしまう。最新フラグを「ＴＲＵＥ」とする指示位置は、単にタッチセンサが最後に検出した指示位置ではなく、ユーザが最後にタッチした指による指示位置、あるいはユーザにより最後に移動された指による指示位置とみなされる指示位置である。つまり、同時刻に複数の指示位置が指示されている場合、タッチセンサが最後の検出した指示位置の最新フラグを「ＴＲＵＥ」となる。そして、タッチセンサが一定時間後に指示位置の検出を開始した際、前回の位置からの移動のない指示位置の最新フラグは「ＦＡＬＳＥ」となり、タッチセンサによる検出順に関わらず、移動があった指示位置の最新フラグは「ＴＲＵＥ」となる。位置取得部１２１は、保持部１２７に指示位置毎に情報を保持する際に、新たに検出された指示位置、または移動した指示位置の場合は、最新フラグ「ＴＲＵＥ」、それ以外は最新フラグ「ＦＡＬＳＥ」を対応付けて保持させる。
【００１６】
圧力取得部１２２は、ＣＰＵ等によって構成され、タッチパネルディスプレイ１１５のタッチセンサからの信号に基づき、位置取得部１２１が座標情報を取得した各指示位置に対応する接触圧力を取得し、保持部１２７に保持する。さらに、接触圧力の時間変化を表す圧力変化、または指示位置間における相対圧力差である圧力差を示す情報を取得し、保持する。本実施形態では、圧力変化は、接触圧力値の更新時に、
｜今回検出された接触圧力値−前回接触圧力値｜＝圧力変化
として算出することで取得する。圧力差は、接触圧力値の更新時に、
｜今回検出された接触圧力値−最新フラグが「ＴＲＵＥ」の接触圧力値｜＝圧力差
として算出することで取得する。もし最新フラグが「ＴＲＵＥ」の指示位置が無い場合は、算出する処理を実行しない。
【００１７】
角度取得部１２６は、ＣＰＵ等によって構成され、角度センサ１１７が一定の周期で情報処理装置１００の傾きを示す情報を保持部１２７に保持する。本実施形態では、保持部１２７において、指示位置毎に対応する情報が保持されており、指示位置の検出時刻において角度取得部１２６が取得した角度の情報が、当該指示位置に対応づけて保持される。なお、指示位置の無効決定において、情報処理装置１００の傾きを考慮しない場合は、角度取得部１２６は省略可能である。
【００１８】
決定部１２３は、ＣＰＵ等によって構成される。そして、保持部１２７に保持された情報に基づいて、位置取得部１２１により検出された指示位置に関する各種決定処理を行う。本実施形態では、位置取得部１２１により座標情報が取得された指示位置が、情報処理装置１００に対するタッチ操作を構成する入力として有効とするか、無効とするかを決定する。本実施形態では、保持部１２７において、指示位置毎に無効フラグの値が関連付けて保持される。無効フラグの初期値は「ＦＡＬＳＥ」であり、決定部１２３は、決定処理の結果に応じて無効フラグの値を変更する。無効フラグが「ＴＲＵＥ」の指示位置は、操作として認識されない。
【００１９】
認識部１２４は、ＣＰＵ等によって構成される。そして、決定部１２３による決定結果を受け、保持部１２７に保持された中から、決定部１２３によって有効（無効ではない）と決定された指示位置に関する情報を取得し、タッチ操作を構成する入力情報として認識する。すなわち、決定部１２３によって無効（有効ではない）と決定された指示位置は、タッチ操作に用いられる入力として認識する指示位置から除く。
【００２０】
表示制御部１２５は、ＣＰＵ等によって構成される。そして、認識部１２４により認識されたタッチ操作に対応するように、保持部１２７を参照して表示画像を制御する。
【００２１】
本実施形態では、これらの各機能部は、ＣＰＵ１１１がＲＯＭ１１２に格納されたプログラムをＲＡＭ１１４に展開し実行することでその機能を実現する。ただし、本発明は、これらの機能部をハードウェアで実現する情報処理装置によっても、同様に実現可能である。
【００２２】
次に、図２のフローチャートに従い、本実施形態においてユーザのタッチ入力を認識する処理の流れを説明する。なお、本実施形態では、情報処理装置１００において電源が投入されたことに応じて以降の処理が開始される。ただしこれに限らず、装置のロックが解除されたり、特定のアプリケーションが起動されたり、あるいは表示画像の描画が完了したことに応じてタッチ入力を認識する処理が開始されても構わない。
【００２３】
まず、ステップＳ２０１では、位置取得部１２１および圧力取得部１２２が、タッチパネルディスプレイ１１５からの信号に基づき、入力領域１０２上の指示位置に関する情報を取得する。位置取得部１２１は、タッチセンサから得られる情報を基に、指示位置の座標、検出された時刻等に関する情報を取得し、保持部１２７に保持する。また、圧力取得部１２２は、各指示位置に対応する接触圧力の大きさを取得し、保持部１２７に保持する。ここで、ステップＳ２０１において実行される指示位置検出処理の流れの詳細を、図３のフローチャートに示す。
【００２４】
まず、ステップＳ３０１では、位置取得部１２１は、タッチセンサから通知されたタッチイベントが「ＴＯＵＣＨ」であるか否かを決定する。本実施形態において用いるタッチセンサからは、入力領域１０２がタッチされていることを検出したとき、あるいは検出されていたタッチが離されたときにタッチイベントを通知される。ここでは、入力領域１０２がタッチされていることを検出したときにはタッチイベントとして「ＴＯＵＣＨ」が、検出されていたタッチが離されたときにはタッチイベントとして「ＲＥＬＥＡＳＥ」が通知される。そして、位置取得部１２１はタッチイベントと、指示位置の座標情報、及び検出時刻を取得する。同時に圧力取得部１２２は、指示位置に対応する接触圧力の大きさを取得する。位置取得部１２１によって、通知されたタッチイベントが「ＴＯＵＣＨ」だと決定された場合（ステップＳ３０１でＹＥＳ）には、ステップＳ３０２に進む。通知されたタッチイベントが「ＴＯＵＣＨ」ではない、すなわち「ＲＥＬＥＡＳＥ」であった場合（ステップＳ３０１でＮＯ）には、ステップＳ３０６に進む。
【００２５】
ステップＳ３０２では、位置取得部１２１が、「ＴＯＵＣＨ」が通知された指示位置と同じＩＤの指示位置が既に検出されているか否かを決定する。位置取得部１２１は、保持部１２７に保持された情報を参照し、対応するＩＤが含まれているかを決定する。指示位置のＩＤとは、位置取得部１２１が検出した指示位置の識別情報である。本実施形態では、その指示位置が、入力領域１０２を同時刻にタッチしている１以上の指示位置のいち、何番目に検出された点かに基づき、検出順に１、２、…という番号のＩＤを割り当てる。同じＩＤの指示位置が検出されていないと決定された場合（ステップＳ３０２でＮＯ）には、処理はステップＳ３０７に進む。一方、同じＩＤの指示位置が既に検出されていると決定された場合（ステップＳ３０２でＹＥＳ）には、処理はステップＳ３０３に進む。
【００２６】
ステップＳ３０３では、位置取得部１２１が、保持部１２７に保持されている情報のうち、「ＴＯＵＣＨ」が検出された指示位置と同じＩＤの指示位置の座標、検出時刻の情報を更新する。そして圧力取得部１２２が、接触圧力の大きさの情報を更新し、さらに接触圧力の時間変化を算出して、保持部１２７に保持する。
【００２７】
ステップＳ３０４では、位置取得部１２１が、検出した指示位置は、以前に検出された位置から移動した指示位置か否かを決定する。本実施形態では、ステップＳ３０３において指示位置の情報が更新される際に、更新前後の指示位置の座標情報から指示位置の移動距離を算出し、算出された移動距離と所定の距離との大きさを比較する。比較した結果、指示位置の移動距離が所定の距離より大きい場合には、指示位置が移動したと決定する。ここで用いられる所定の距離とは、ユーザがタッチによる操作を行うために、指示位置を移動させたと判断できるか否かを決定するための、距離の閾値である。この閾値は、予め情報処理装置１００に登録されているタッチ操作が、認識されるために必要な指示位置の最小の移動距離程度の大きさとして設定される。そして、検出した指示位置が、移動した指示位置であると決定される場合（ステップＳ３０４でＹＥＳ）には、ステップＳ３０５に進む。一方で、取得した指示位置が、移動した指示位置ではないと決定される場合（ステップＳ３０４でＮＯ）には、ステップＳ３０９に進む。
【００２８】
ステップＳ３０５では、位置取得部１２１が、検出された指示位置が移動した指示位置であり、最新の指示位置であることを示す情報を更新する。本実施形態では、保持部１２７に保持されている各指示位置に、最新の指示位置であることを示す情報として、最新フラグの値「ＴＲＵＥ」を関連付けて保持する。そして、図２の処理に戻る。
【００２９】
一方、Ｓ３０１でＮＯと決定された場合、すなわち「ＴＯＵＣＨ」以外のイベントである「ＲＥＬＥＡＳＥ」がタッチセンサから通知された場合は、ステップＳ３０６に進む。ステップＳ３０６では、位置取得部１２１が、保持部１２７に保持されていた情報のうち、「ＲＥＬＥＡＳＥ」が検出された指示位置に対応するＩＤに、関連付けられた指示位置の情報（座標、検出時刻、ＩＤ、接触圧力、角度等）を削除する。そして、処理はステップＳ３１０に進む。
【００３０】
ステップＳ３１０では、ステップＳ３０６で処理された指示位置の最新フラグ、無効フラグを初期化する。本実施形態では、初期化処理として、最新フラグと無効フラグの値を「ＦＡＬＳＥ」する。そして、図２の処理に戻る。
【００３１】
一方、Ｓ３０２でＮＯと決定された場合、すなわち新しい指示位置が検出された場合は、Ｓ３０７に進む。ステップＳ３０７では、位置取得部１２１が、「ＴＯＵＣＨ」が検出された指示位置のＩＤ、位置座標、検出時刻、接触圧力の大きさ、装置の角度等の情報を保持部１２７に保持されている情報に新規追加する。なお、本実施形態において、位置座標の情報は、図１（ａ）に示したように、入力領域１０２の左上を原点とした座標平面に基づく座標（ｘ，ｙ）で示される。そして、処理はステップＳ３０８に進む。
ステップＳ３０８では、位置取得部１２１が、検出された指示位置が最新の指示位置であることを示す情報を更新する。本実施形態では、Ｓ３０７で保持部１２７に保持された指示位置の最新フラグを「ＴＲＵＥ」する。そして、図２の処理に戻る。
【００３２】
一方、ステップＳ３０４でＮＯと決定された場合、すなわち検出された指示位置が移動していないと決定された場合は、ステップＳ３０９に進む。ステップＳ３０９では、位置取得部１２１が、ステップＳ３０３で保持された指示位置の、最新フラグを初期化する。本実施形態では、初期化処理として、最新フラグを「ＦＡＬＳＥ」とする。そして、図２の処理に戻る。
【００３３】
図２の処理に戻ると、続くステップＳ２０２において、決定部１２３が、位置取得部１２１によって検出されている指示位置が、複数か否かを決定する。ここで決定するのは、２本の指が同じタイミングで入力領域１０２に触れたか時間差があったかに関わらず、入力領域１０２上で、指示位置が同時刻に複数存在するか否かである。つまり、いわゆるマルチタッチが入力されている場合に、指示位置が複数である、との決定がされる。本実施形態の決定部１２３は、保持部１２７に保持された情報を参照し、保持されたＩＤの数から指示位置数を求め、検出されている指示位置の数が複数か否かを決定する。ステップＳ２０２において、複数の指示位置が検出されていると決定された場合（ステップＳ２０２でＹＥＳ）には、処理はステップＳ２０３に進む。一方、複数の指示位置が検出されていないと決定された場合（ステップＳ２０２でＮＯ）には、処理はステップＳ２０７に進む。
【００３４】
ステップＳ２０３とステップＳ２０４では、決定部１２３が、検出されている指示位置の数が増えたか、または指示位置が移動したかを決定する。決定部１２３は、保持部１２７に保持されている、今回検出された指示位置に関連づけられている最新フラグを参照する。最新フラグが「ＴＲＵＥ」の場合は、指示位置の数が増えたか、または指示位置が移動したと決定（ステップＳ２０３またはステップＳ２０４でＹＥＳ）し、処理はステップＳ２０５に進む。一方、最新フラグが「ＦＡＬＳＥ」の場合は、タッチ数が増えていないか、または指示位置が移動していないと決定（ステップＳ２０３またはステップＳ２０４でＮＯ）し、処理はステップＳ２０７に進む。
【００３５】
ステップＳ２０５では、この時点において、入力領域１０２上で検出されている全ての指示位置について、それぞれがタッチ操作を構成する入力として無効かを判断する。図４に、ステップＳ２０５において実行される、指示位置に対応する接触圧力に基づいて、有効な指示位置を決定する処理の流れの詳細を示すフローチャートを示す。
【００３６】
まず、ステップＳ４０１では、決定部１２３が、全ての指示位置のうち、最新の指示位置を有効と決定する。本実施形態では、決定部１２３が、保持部１２７に保持された情報を参照し、最新フラグが「ＴＲＵＥ」である指示位置のＩＤを取得する。そして、取得されたＩＤの指示位置に関連付けられている無効フラグを「ＦＡＬＳＥ」とする。
【００３７】
ステップＳ４０２では、圧力取得部１２２が、最新でない全ての指示位置の接触圧力の時間変化を取得する。本実施形態では、まず圧力取得部１２２が、保持部１２７に保持された情報を参照し、最新フラグが「ＦＡＬＳＥ」である指示位置のＩＤを全て取得する。次に、取得されたＩＤの指示位置の接触圧力の時間変化である圧力変化を取得する。
【００３８】
ステップＳ４０３では、角度取得部１２６が、情報処理装置１００の傾きの角度情報を取得する。本実施形態では、圧力取得部１２２が、ステップＳ２０１で取得された指示位置に関連付けられている角度を取得する。なお、指示位置の無効決定において、情報処理装置１００の傾きを考慮しない場合は、ステップＳ４０３の処理は不要である。
【００３９】
ステップＳ４０４では、決定部１２３が、ステップＳ４０３で取得された情報処理装置１００の傾きに基づき、指示位置の無効決定に用いる閾値Ｔ１を取得する。閾値Ｔ１とは、情報処理装置１００を支持する手による指示位置の圧力の変動を許容する限界の幅を示す圧力変動幅である。閾値Ｔ１は、予め記憶され、保持部１２７に読み出されている。圧力変動幅は、一般的には数値で登録するが、検出された接触圧力に対する割合（例えば１０％等）で登録してもよい。また、情報処理装置１００が傾けられている角度によっては、装置を支持する手によって入力領域１０２にかけられる圧力の大きさ、及び変動の幅は異なる。従って本実施形態では、決定精度を向上させるため、装置の角度の状態に応じた閾値Ｔ１を変更する。例えば、情報処理装置１００を安定して保持できる角度の場合、装置を支持する手による指示位置において許容される圧力変動幅が小さくて良い。例えば、図６の角度３０［°］から１５０［°］の場合は、閾値Ｔ１を小さくすることが好ましい。本実施形態では、決定部１２３が、ステップＳ４０３で取得された角度を参照し、角度に対応する閾値Ｔ１を取得する。
【００４０】
ステップＳ４０５では、決定部１２３が、ステップＳ４０２で取得された指示位置の接触圧力の時間変化に基づいて、有効な指示位置を決定する。本実施形態では、決定部１２３が、ステップＳ４０２で取得された指示位置の圧力変化の大きさが、ステップＳ４０４で取得された閾値Ｔ１を超えるか否かに応じた決定が行われる。具体的には、圧力変化の大きさが閾値Ｔ１を超える場合は、その指示位置を操作点と推定し、有効な指示位置と決定する。一方、圧力変化の大きさが閾値Ｔ１を下回る場合は、その指示位置を支持点と推定し、無効な指示位置と決定する。なお、圧力変化の大きさが閾値Ｔ１と一致する場合に有効と決定するか無効と決定するかは、予め閾値Ｔ１を設定する際に適宜選択されればよい。ここでは、閾値Ｔ１を超えた場合と同様の処理が行われるとする。すなわち、本実施形態では、圧力変化の大きさが、ステップＳ４０４で取得された閾値Ｔ１以上であると決定された場合は、タッチを有効と決定し、無効フラグを「ＦＡＬＳＥ」として保持部１２７に保持する。一方、圧力変化の大きさが、ステップＳ４０４で取得された閾値Ｔ１未満であると決定された場合は、タッチを無効と決定し、無効フラグを「ＴＲＵＥ」として保持する。そして、図２のフローチャートに戻る。
【００４１】
図２の処理に戻り、続くステップＳ２０６では、認識部１２４が、ステップＳ２０５で有効と決定された指示位置による入力を認識する。本実施形態では、認識部１２４が、保持部１２７を参照し、無効フラグが「ＦＡＬＳＥ」となっている、全ての指示位置を入力として認識する。そして、表示制御部１２５が、認識部１２４により認識されたユーザの入力に基づき、タッチパネルディスプレイ１１５に表示する画像を制御する。そして、図２の処理を終了する。
【００４２】
一方、ステップＳ２０７では、指示位置の決定結果を保持する。本実施形態では、保持部１２７が、無効フラグが「ＴＲＵＥ」の場合は、引き続き「ＴＲＵＥ」を保持する。一方、無効フラグが「ＴＲＵＥ」以外の場合は、「ＦＡＬＳＥ」とする。
【００４３】
なお、本実施形態では、タッチセンサがタッチを検出したときには「ＴＯＵＣＨ」を、検出されていた指示位置が解除されたときには「ＲＥＬＥＡＳＥ」をタッチイベントとして通知するタッチパネルを用いたが、これに限らない。例えば、新たに入力領域１０２がタッチされた場合には「ＴＯＵＣＨ＿ＤＯＷＮ」、既に検出されていたＩＤの指示位置の移動が検出された場合には「ＭＯＶＥ」、離された時には「ＴＯＵＣＨ＿ＵＰ」をタッチイベントとして通知するものでもよい。この場合、「ＴＯＵＣＨ＿ＤＯＷＮ」が通知された場合に、保持部１２７に保持される情報をＩＤに関連付けて新規追加する。そして、「ＭＯＶＥ」が通知された場合には同じＩＤに関連付けられた情報を更新し、「ＴＯＵＣＨ＿ＵＰ」が通知された場合に、同じＩＤに関連付けられた情報を削除すればよい。このように、情報処理装置１００は、入力装置であるタッチパネルで検出されている複数の指示位置をＩＤによって識別して情報を管理する。従って、複数の指示位置それぞれの動きを検出することができるので、それらの指示位置に構成されるマルチタッチ操作を認識することができる。
【００４４】
また、上述した実施形態では、指示位置の無効決定において、情報処理装置１００の傾きを考慮することで、圧力変動幅を最適化した。しかしながら、傾きの取得を省略し、閾値Ｔ１を情報処理装置１００の傾きに関係なく一定値とした場合でも、圧力の変化に基づいてユーザの操作意図を推定し、誤認識を低減することは可能である。その場合、閾値Ｔの値は、表示画面を見るユーザが最も装置を支持し易い態勢に合わせて設定すると、ユーザに対して違和感のない操作感を提供できる。
【００４５】
ここで、第１の実施形態による情報処理装置１００をユーザが操作する操作例を、図５と図６を参照して説明する。図５は、情報処理装置１００を入力領域１０２側から見た状態を示す図であり、図５（ａ）から図５（ｃ）の順に、ユーザの操作が進んでいく。また、図６は、情報処理装置１００を側面から見た状態を示す図であり、情報処理装置１００がユーザにより支持されている角度を、垂直線６０１と水平線６０２を用いて示す。図６に示すように、本実施形態では、角度センサ１１７により検知された傾き情報に基づいて、垂直線６０１を基準として時計回りに、装置の角度が算出される。よって、垂直線６０１が０［°］、水平線６０２が９０［°］、垂直線６０１の反対側が１８０［°］、水平線６０２の反対側が２７０［°］となる。図６（ａ）は、第１の操作例において、ユーザにより支持されている情報処理装置１００の角度が６０［°］であることを示す。図６（ｂ）は、第２と第３の操作例において、ユーザにより支持されている情報処理装置１００の角度が２７０［°］であることを示す。
【００４６】
まず、第１の操作例を、図５と図６（ａ）を参照して説明する。第１の操作例では、卓上等の平らな面の上で、ユーザが左手で情報処理装置１００を見やすい角度で支持し、右手の指で情報処理装置１００を操作する。例えば、図１１（ａ）のような姿勢を想定する。図６（ａ）で示すように、ユーザにより支持される情報処理装置１００の角度は６０［°］である。この角度は、図５（ａ）から図５（ｃ）におけるユーザの操作において、変わらずに一定である。ここでは、装置の角度が６０［°］である場合の圧力変動幅（閾値Ｔ１）は、１００であるとする。
【００４７】
まず、図５（ａ）は、ユーザが左手により情報処理装置１００を、支持している状態を示している。この時、情報処理装置１００を支持している左手の親指が、入力領域１０２に触れると、親指による指示位置５０１の位置、ＩＤ、検出時刻、接触圧力等の情報が取得され、保持される（ステップＳ２０１）。ここで図７（ａ）は、この時に保持される情報の一例を示すテーブルである。保持される項目は、指示位置を識別するためのＩＤ、指示位置のＸＹ座標と検出時刻、最新の指示位置を表す最新フラグ、指示位置に対応する接触圧力とその時間変化量、情報処理装置の角度、指示位置が入力として無効であることを表す無効フラグである。図５（ａ）の段階では、ＩＤを１とし、座標（５０，３２０）、検出時刻０［ｍｓ］、最新フラグ「ＴＲＵＥ」、接触圧力９００、接触圧力の時間変化０、角度６０［°］、無効フラグ「ＦＡＬＳＥ」が保持される。なお、指示位置の検出が初めての時（直前まで指示位置が検出されていない状態だった時）は、常に最新フラグは「ＴＲＵＥ」、接触圧力の時間変化は「０」、無効フラグは「ＦＡＬＳＥ」である。この時点で検出されている指示位置数は１点のため、指示位置は複数でないと決定されることから（ステップＳ２０２でＮｏ）、無効フラグは「ＦＡＬＳＥ」のまま保持され（ステップＳ２０７）、指示位置５０１は有効な入力情報として認識される。ここでは、認識されたタッチ入力に応じた表示内容の変更は生じないため、表示画像を変更されない（ステップＳ２０６）。以下、表示の変更がない場合は、表示制御部１２５の記述は省略する。
【００４８】
次に、図５（ｂ）は、ユーザが左手により情報処理装置１００を支持した状態を維持しつつ、右手により情報処理装置１００を操作し始める状態を示している。この時、入力領域１０２に触れている左手の指示位置５０１と右手の指示位置５０２の情報が、新たに検出される。本実施形態では、タッチセンサはマルチタッチ状態においても、１点ずつ指示位置の情報を通知している。図５（ｂ）の場合、左手の指示位置５０１の方が、ＸＹ座標の値がより小さいため、タッチセンサから先に情報が通知される。従ってまず、左手の指示位置５０１に対する処理を説明する。図７（ｂ）は、周期的に入力領域１０２の指示位置を検出するタッチセンサから、図５（ｂ）の指示位置５０１の情報が取得された時（ステップＳ２０１）に、保持部１２７に保持される情報の一例を示すテーブルである。指示位置５０１は、ＩＤは１で、座標（５０，３２０）、検出時刻１０００［ｍｓ］、最新フラグ「ＦＡＬＳＥ」、接触圧力８８０、接触圧力の時間変化｜８８０−９００｜＝２０、角度６０［°］、無効フラグ「ＦＡＬＳＥ」である。タッチセンサから、指示位置５０１の処理の情報だけが通知されているこの段階では、指示位置数は１点と認識されるため、指示位置は複数でないと決定される（ステップＳ２０２でＮｏ）。無効フラグは「ＦＡＬＳＥ」のまま保持され（ステップＳ２０７）、指示位置５０１は、有効な入力情報として認識される（ステップＳ２０６）。次に、右手の指示位置５０２に対して行われる処理を説明する。図７（ｃ）は、タッチセンサから指示位置５０２の情報が取得された時（ステップＳ２０１）に、保持部１２７に保持される情報の一例を示す。指示位置５０２は新たに検出された別の指示位置のため、ＩＤは２となる。そして、座標（４３０，１００）、検出時刻１０１０［ｍｓ］、最新フラグ「ＴＲＵＥ」、接触圧力７００、接触圧力の時間変化０、角度６０［°］、無効フラグ「ＦＡＬＳＥ」が、新規追加される。この時点で検出されている指示位置は２点のため、指示位置は複数であると決定される（ステップＳ２０２でＹｅｓ）。そして、指示位置数が増えたので（ステップＳ２０３でＹｅｓ）、指示位置５０１と指示位置５０２の全てに対して、有効な指示位置か否かを決定する処理が行われる（ステップＳ２０５）。まず、指示位置５０２は、最新の指示位置のため、有効な指示位置と決定され、無効フラグは「ＦＡＬＳＥ」となる（ステップＳ４０１）。そして、最新でない指示位置５０１について、接触圧力の時間変化２０、情報処理装置１００の傾き角度６０［°］が取得され（ステップＳ４０２、Ｓ４０３）、取得された傾き角度６０［°］に対応する閾値Ｔ１＝１００が取得される（ステップＳ４０４）。そして、取得された接触圧力の時間変化が２０であり、閾値Ｔ１未満のため、指示位置５０１は無効と決定され、無効フラグを「ＴＲＵＥ」とする（ステップＳ４０５）。結果的に、無効フラグが「ＦＡＬＳＥ」である指示位置５０２のみが、有効な入力情報として認識される（ステップＳ２０６）。
【００４９】
次に、図５（ｃ）は、ユーザが左手により情報処理装置１００を支持した状態を維持しつつ、右手により情報処理装置１００を操作している状態を示している。この時、タッチセンサにより、入力領域１０２に触れている左手の指示位置５０１と右手の指示位置５０２の情報が、新たに検出される。図７（ｄ）は、指示位置５０１について保持される情報の一例である。ＩＤは１で、座標（５０，３２０）、検出時刻２０００［ｍｓ］、最新フラグ「ＦＡＬＳＥ」、接触圧力８５０、接触圧力の時間変化｜８５０−８８０｜＝３０、角度６０［°］、無効フラグは引き続き「ＴＲＵＥ」である。このとき、検出されている指示位置は２点のため、指示位置は複数であると決定され（ステップＳ２０２）、指示位置数が増えていない（ステップＳ２０３でＮｏ）。また、指示位置５０１は移動していないので（ステップＳ２０４でＮｏ）、無効フラグは「ＴＲＵＥ」のまま変更されない（ステップＳ２０７）。従って、無効フラグが「ＦＡＬＳＥ」である指示位置５０２のみが、有効な入力情報として認識される（ステップＳ２０６）。次に、右手の指示位置５０２に対する処理の説明をする。図７（ｅ）は、指示位置５０２について保持される情報の一例を示すテーブルである。ＩＤは２、座標（４３０，４００）、検出時刻２０１０［ｍｓ］、最新フラグ「ＴＲＵＥ」、接触圧力４００、接触圧力の時間変化｜４００−７００｜＝３００、角度６０［°］、無効フラグ「ＦＡＬＳＥ」が保持される。検出されている指示位置は２点であり（ステップＳ２０２でＹｅｓ）、指示位置数は増えておらず（ステップＳ２０３）、指示位置５０２は移動している（ステップＳ２０４でＹｅｓ）。従って、指示位置５０１と指示位置５０２の全てについて、有効な指示位置か否かが決定される（ステップＳ２０５）。指示位置５０２は、最新の指示位置のため、有効な指示位置と決定され、無効フラグは「ＦＡＬＳＥ」となる（ステップＳ４０１）。一方、最新でない指示位置５０１については、接触圧力の時間変化３０、情報処理装置１００の傾き角度６０［°］が取得され（ステップＳ４０２、Ｓ４０３）、それに対応する閾値Ｔ１＝１００が取得される（ステップＳ４０４）。そして、指示位置５０１の接触圧力の時間変化が３０であり、閾値Ｔ１未満のため、指示位置は無効と決定され、無効フラグは「ＴＲＵＥ」となる（ステップＳ４０５）。結果的に、無効フラグが「ＦＡＬＳＥ」である指示位置５０２のみが、タッチ操作に有効な入力情報として認識される。そして、有効な指示位置５０２が、Ｙ軸の正方向に３００［ｄｏｔ］移動した操作に対応して、表示画像が下方向にスクロールするように、表示制御部１２５による表示画像の制御が実行される（ステップＳ２０６）。
【００５０】
次に、第２の操作例を、図５と図６（ｂ）を参照して説明する。第１の操作例との違いは、ユーザにより支持される情報処理装置１００の角度が、第１の操作例では６０［°］だったのに対し、第２の操作例では２７０［°］であることである。第２の操作例では、ユーザが仰向けに寝た状態で、左手により見やすい角度で情報処理装置１００を支持し、右手の指で情報処理装置１００を操作する。例えば、図１１（ｂ）のような姿勢を想定する。この場合、図１１（ａ）の場合に比べて、装置を支持する手による指示位置にかかる押圧荷重は大きく、かつ装置の角度は不安定になり易い。図６（ｂ）で示すように、ユーザにより支持される情報処理装置１００の角度は２７０［°］となる。この角度は、図５（ａ）から図５（ｃ）におけるユーザの操作において、変わらずに一定である。ここでは、装置の角度が６０［°］である場合の圧力変動幅（閾値Ｔ１）は、２００であるとする。
【００５１】
以下、説明において第１の操作例と重複する部分は省略する。まず、図５（ａ）は、ユーザが左手により情報処理装置１００を、支持している状態を示している。この時、情報処理装置１００を支持している左手の親指による指示位置５０１は、唯一の指示位置であるため、第１の操作例と同様、一連の処理の間、無効フラグは「ＦＡＬＳＥ」で維持され、タッチ操作を構成する入力として認識される。
【００５２】
次に、図５（ｂ）は、ユーザが左手により情報処理装置１００を支持した状態を維持しつつ、右手により情報処理装置１００を操作し始める状態を示している。この時、入力領域１０２に触れている左手の指示位置５０１と右手の指示位置５０２の情報が、新たに検出される。先に行われる、左手の指示位置５０１に対する処理は、第１の操作例と同様である。図８（ｂ）は、指示位置５０１が検出された時点で保持される情報の一例を示すテーブルである。ＩＤは１で、座標（５０，３２０）、検出時刻１０００［ｍｓ］、最新フラグ「ＦＡＬＳＥ」、接触圧力１１４０、接触圧力の時間変化｜１１４０−１２００｜＝６０、角度２７０［°］、無効フラグ「ＦＡＬＳＥ」という情報が保持される。タッチセンサから先に指示位置５０１の情報が通知されているこの段階では、指示位置の数は１点と認識されているため、無効フラグ「ＦＡＬＳＥ」が維持され、指示位置５０１は有効な入力情報として認識される。
【００５３】
次に、右手の指示位置５０２について通知される情報に基づき取得情報の一例が、図８（ｃ）のテーブルに示される。ＩＤは２、座標（４３０，１００）、検出時刻１０１０［ｍｓ］、最新フラグ「ＴＲＵＥ」、接触圧力６５０、接触圧力の時間変化０、角度２７０［°］、無効フラグ「ＦＡＬＳＥ」という情報が保持される。指示位置は複数で増えたことから、指示位置５０１と指示位置５０２の全てについて、指示位置５０２の入力が無効か否かの決定が行われる。ここで、指示位置５０２は、最新の指示位置のため、有効な指示位置と決定され、無効フラグは「ＦＡＬＳＥ」となる。そして、最新でない指示位置５０１について、接触圧力の時間変化６０、情報処理装置１００の傾き角度２７０［°］に基づき、取得された傾き角度２７０［°］に対応する、閾値Ｔ１＝２００が取得される。そして、指示位置５０１の接触圧力の時間変化が６０であり、閾値Ｔ１未満のため、指示位置を無効と決定し無効フラグを「ＴＲＵＥ」とする。そして、認識部１２４が、無効フラグが「ＦＡＬＳＥ」である指示位置５０２は、有効な入力情報として認識される。
【００５４】
次に、図５（ｃ）は、ユーザが左手により情報処理装置１００を支持した状態を維持しつつ、右手により情報処理装置１００を操作している状態を示している。この時、入力領域１０２に触れている左手の指示位置５０１と右手の指示位置５０２の情報が、新たに検出される。図８（ｄ）は、左手の指示位置５０１の情報が通知された段階で保持される情報の一例を示すテーブルである。ＩＤは１で、座標（５０，３２０）、検出時刻２０００［ｍｓ］、最新フラグ「ＦＡＬＳＥ」、接触圧力１３００、接触圧力の時間変化｜１３００−１１４０｜＝１６０、角度２７０［°］、無効フラグは引き続き「ＴＲＵＥ」である。最新フラグが「ＦＡＬＳＥ」であるため、無効フラグが「ＴＲＵＥ」で維持され、この時点でも、操作として認識されるのは、指示位置５０２のみである。
【００５５】
次に、図８（ｅ）は、続いて指示位置５０２の情報が通知された段階で、保持される情報の一例を示すテーブルである。ＩＤは２、座標（４３０，４００）、指示位置５０２は、最新フラグが「ＴＲＵＥ」ため、指示位置５０１と指示位置５０２の全てについて、無効決定が行われる。まず、指示位置５０２は、最新の指示位置のため、有効な指示位置と決定され、無効フラグは「ＦＡＬＳＥ」となる。そして、最新でない指示位置５０１について、接触圧力の時間変化１６０、傾き角度２７０［°］と、傾き角度２７０［°］に対応する閾値Ｔ１＝２００が取得される。そして、指示位置５０１の接触圧力の時間変化が１６０であり、閾値Ｔ１未満のため、指示位置５０２は無効と決定され、無効フラグは「ＴＲＵＥ」となる。そして、無効フラグが「ＦＡＬＳＥ」である指示位置５０２が、有効な入力情報として認識され、指示位置５０２がＹ軸の正方向に３００［ｄｏｔ］移動したことに応じて、表示画像が下方向にスクロールするように表示制御が行われる。
【００５６】
第１の操作例に比べ、第２の操作例では、入力面は垂直方向の下側の面となっているために情報処理装置１００の重さが、入力面に接触する１本の指に集中し、支持が不安定となる。このように情報処理装置１００の支持されている傾きを考慮することで、第１の操作例よりも、第２の操作例の閾値Ｔ１をより大きな値としたことにより、第１の操作例同様にスクロール操作が認識可能となる。
【００５７】
以上説明したように、第１の実施形態では、マルチタッチの操作が可能な情報処理装置１００において、ユーザが装置を支持する為に入力領域１０２に触れた指示位置５０１が、入力として認識されるために発生する誤動作を避けることができる。ここでの誤動作とは、指示位置５０２によるシングルタッチ操作が、指示位置５０１が認識されることにより、マルチタッチ操作となってしまい、装置がユーザの意図とは違う動作をすることである。本実施形態では、指示位置の接触圧力の時間変動の幅に基づく判断を行う。そのため、ユーザ毎の力の個人差や、装置を奏させうるときの姿勢の違い等による指示位置への押圧荷重の違い影響を抑えつつ、装置を支持するための手がタッチパネルに触れることに起因する装置の誤動作を低減することができる。これにより、例えば、図１１（ａ）のように、仰向けに寝た状態など自由な姿勢でユーザが情報処理装置を操作する際の誤動作の発生を低減することができる。
【００５８】
さらに、情報処理装置１００の支持されている傾きの違いを考慮することで、閾値Ｔ１をより適切な数値とし、決定精度を向上することができる。圧力変動幅（閾値Ｔ１）は、装置を支持するための指示位置と、装置を操作するための指示位置とを、区別するための判断基準である。よって、閾値Ｔ１は大き過ぎず、小さ過ぎない、適切な数値とする必要がある。第１の操作例の情報処理装置１００の角度では、垂直方向の上側の面が入力面となっており、入力面の反対側の面に接触する４本の指により、情報処理装置１００が安定して支えられている。よって、指示位置５０１の接触圧力の変動幅は小さくなり、閾値Ｔ１も小さな値となる。さらに、新たに検出された指示位置と移動が検出された指示位置は、ユーザの操作による指示位置と推定できるため、接触圧力に基づく無効決定の処理は行わずに、有効な指示位置と決定する。従って、決定精度を低下させることなく、処理効率を向上することができる。
【００５９】
なお、上述した第１の実施形態では、同時刻に検出されている複数の指示位置のうち最新の指示位置（最後に検出された指示位置）は、圧力の情報によらず、操作に用いられる入力であると決定していた。これは、タッチ位置あるいは近接位置である指示位置が複数のとき、操作を行うため入力は、装置を支持した時点よりも後に行われる可能性が高いことから、圧力の情報に基づく判断処理を省略しているからである。例えば、ユーザが装置を支持する手という役割と操作をする手（あるいはスタイラスを持つ等）という役割を、両手のいずれかに対応させる場合を考えれば、先に操作を支持してから、もう一方の手で最後に表示画面にタッチあるいは近接する可能性が高い。従って、最新の指示位置に対しては、無効決定処理を省略することで、速やかに操作に対応することが可能である。しかしながら、最新の指示位置に対しても、圧力の変化量に基づいて、指示位置が無効か否かの決定処理を行っても構わない。これによれば、ユーザは両手で装置を支えたり、装置を持ち変えたりする場合にも、誤動作を低減するという効果を奏することができる。
【００６０】
＜変形例＞
第１の実施形態では、１つ指示位置に対応する接触圧力の変動幅に基づいて、有効な指示位置を決定する。それに対し、変形例では、複数の指示位置に対応する接触圧力の圧力差に基づいて、有効な指示位置を決定する例を説明する。ユーザが仰向けになって、下方向に向けた表示画面にタッチ操作を行う場面など、装置を支持するための指示位置と、装置を操作するための指示位置で接触圧力の大きさの違いが生じやすい場面において、変形例は有効である。
【００６１】
変形例に係る情報処理装置１００の外観、ハードウェア構成は、第１の実施形態の図１に示したものと一部を除き同様であるため、説明を省略する。ただし、機能構成において、変形例の圧力取得部１２２は、指示位置の接触圧力の時間変化ではなく、最新の指示位置を基準とした圧力差を取得し、保持部１２７に指示位置毎に保持する。また、決定部１２３は、圧力変動幅ではなく、圧力差に基づいて、指示位置の無効決定を行う。なお、変形例は第１の実施形態と別に実施してもよいし、組み合せて実施してもよい。
【００６２】
変形例においても、情報処理装置１００は図２及び図３のフローチャートに沿って、タッチ入力を認識する。ただし、変形例において、Ｓ２０５で実行される、指示位置の接触圧力に基づいて、有効な指示位置を決定する処理の流れを示すフローチャートを、図９に示す。
【００６３】
まず、ステップＳ９０１では、決定部１２３が、最新の指示位置を有効と決定する。本実施形態では、決定部１２３が、保持部１２７に保持された情報を参照し、最新フラグが「ＴＲＵＥ」である指示位置のＩＤを取得する。そして、取得されたＩＤの指示位置に関連付けられている無効フラグを「ＦＡＬＳＥ」とする。
【００６４】
ステップＳ９０２では、圧力取得部１２２が、最新の指示位置と最新でない指示位置での接触圧力の圧力差を取得する。本実施形態では、保持部１２７を参照し、ステップＳ２０１において取得され接触圧力の情報に基づいて、最新でない指示位置と（複数存在する場合はそのそれぞれと）、基準となる最新の指示位置での圧力差を取得する。
【００６５】
ステップＳ９０３では、決定部１２３が、ステップＳ９０２で取得された指示位置の接触圧差に基づいて、有効な指示位置を決定する。変形例の決定方法は、装置を支持するための指示位置と、装置を操作するための指示位置では、接触圧力が大きく異なることに注目し、決定基準として利用している。従って、操作点と推定される最新の指示位置を基準とした接触圧力差が、閾値Ｔ２以上の指示位置を、装置を支持する手による指示位置と推定し、この指示位置を、操作入力としては無効と決定する。閾値Ｔ２は、装置を支持する手によるタッチと、タッチ操作を行うためのタッチの接触圧力差の最小値として、予め設定された値である。なお、閾値Ｔ２は、第１の実施形態と同様に、情報処理装置１００が指示されているときの角度に応じて、いくつかの値が用意されていてもよい。また例えば、角度センサ１１７の検知結果等により、表示画面がある程度以上下方向に向けられたことが判断された場合にのみ、変形例の処理を行うようにすることも可能である。決定部１２３は、ステップＳ９０２で取得された指示位置の接触圧力差が、閾値Ｔ２以上であると決定した指示位置に対し、無効フラグを「ＴＲＵＥ」とし、決定結果が閾値Ｔ２未満の指示位置に対し、無効フラグを「ＦＡＬＳＥ」とする。ただし、圧力差が閾値Ｔ２と一致したときの判断をいずれとするかは、閾値Ｔ２を設定する時点で適宜選択されればよい。なお、図９のフローチャートの処理が終了したら、図２のフローチャートに戻る。
【００６６】
ここで、変形例に沿った第３の操作例を、図５と図６（ｂ）を参照して説明する。変形例は、第３の操作例では、ユーザが仰向けに寝た状態で、左手により見やすい角度で情報処理装置１００を支持し、右手の指で情報処理装置１００を操作する場合を想定する。図６（ｂ）で示すように、ユーザにより支持される情報処理装置１００の角度は２７０［°］となる。この角度は、図５（ａ）から図５（ｃ）におけるユーザの操作において、変わらずに一定である。なお、第３の操作例において、圧力差の閾値Ｔ２は２００であるとする。
【００６７】
まず、図５（ａ）は、ユーザが左手により情報処理装置１００を、支持している状態を示している。この時、情報処理装置１００を支持している左手の親指が、入力領域１０２に触れると、指示位置５０１の情報がタッチセンサから通知され、保持部１２７に保持される（ステップＳ２０１）。図１０（ａ）は、指示位置５０１に対する処理について保持される情報の一例を示すテーブルである。なお、図１０の図７、図８との差異は、最新の指示位置（最新フラグが「ＴＲＵＥ」の指示位置）を基準とした接触圧力差の項目があることである。接触圧力差は、検出されている指示位置が複数のときのみ、取得され、保持される。従って、図１０（ａ）では、ＩＤを１、座標（５０，３２０）、検出時刻０［ｍｓ］、最新フラグ「ＴＲＵＥ」、接触圧力１２００、無効フラグ「ＦＡＬＳＥ」とする。次に、検出されている指示位置の数は１点のため（ステップＳ２０２でＮｏ）、無効フラグは「ＦＡＬＳＥ」のまま維持され（ステップＳ２０７）、指示位置５０１は有効な入力情報として認識される（ステップＳ２０６）。
【００６８】
次に、図５（ｂ）は、ユーザが左手により情報処理装置１００を支持した状態を維持しつつ、右手により情報処理装置１００を操作し始める状態を示している。この時、入力領域１０２に触れている左手の指示位置５０１と右手の指示位置５０２の情報が、新たに検出される。図１０（ｂ）は、指示位置５０１の情報が取得されたことに応じて、保持される情報の一例を示すテーブルである。ＩＤは１で、座標（５０，３２０）、検出時刻１０００［ｍｓ］、最新フラグ「ＦＡＬＳＥ」、接触圧力１１５０、無効フラグは「ＦＡＬＳＥ」である。今回検出している指示位置数は１点のため（ステップＳ２０２でＮｏ）、無効フラグは「ＦＡＬＳＥ」が維持され（ステップＳ２０７）、指示位置５０１は有効な入力情報として認識される（ステップＳ２０６）。次に、図１０（ｃ）は、指示位置５０２の情報が取得されたことに応じて、保持される情報の一例を示すテーブルである。ＩＤは２、座標（４３０，１００）、検出時刻１０１０［ｍｓ］、最新フラグ「ＴＲＵＥ」、接触圧力７００、無効フラグは「ＦＡＬＳＥ」である。このとき、検出されている指示位置が複数になったことから、最新フラグが「ＴＲＵＥ」である指示位置５０２に対応する接触圧力が基準となり、他の指示位置について取得された接触圧力の大きさとの圧力差が、各指示位置に対応づけられた情報に加えられる。図１０（ｃ）の場合、ＩＤが１の指示位置５０１の情報において、圧力差４５０が保持される。この段階では、指示位置は２点で複数であり（ステップＳ２０２でＹｅｓ）、指示位置数が増えたので（ステップＳ２０３でＹｅｓ）、指示位置５０１と指示位置５０２の全てについて無効決定が実行される（ステップＳ２０５）。まず、指示位置５０２は最新の指示位置のため、有効な指示位置と決定され、無効フラグは「ＦＡＬＳＥ」となる（ステップＳ９０１）。そして、最新フラグが「ＴＲＵＥ」である指示位置５０２を基準に、最新フラグが「ＦＡＬＳＥ」である指示位置５０１との接触圧力差４５０を取得する（ステップＳ９０２）。そして、決定部１２３が閾値Ｔ２＝２００を取得し、指示位置５０１の接触圧力差は４５０で、閾値Ｔ２以上のため、指示位置５０１を無効と決定し、無効フラグを「ＴＲＵＥ」とする（ステップＳ９０３）。そして、認識部１２４が、無効フラグが「ＦＡＬＳＥ」である指示位置５０２を、有効な入力情報として認識する（ステップＳ２０６）。
【００６９】
次に、図５（ｃ）は、ユーザが左手により情報処理装置１００を支持した状態を維持しつつ、右手により情報処理装置１００を操作している状態を示している。この時、入力領域１０２に触れている左手の指示位置５０１と右手の指示位置５０２の情報が、新たに検出される。図１０（ｄ）は、指示位置５０１の情報が取得されたことに応じて保持される情報の一例を示すテーブルである。ＩＤは１で、座標（５０，３２０）、検出時刻２０００［ｍｓ］、最新フラグ「ＦＡＬＳＥ」、接触圧力１３００、接触圧力差｜１３００−７００｜＝６００、無効フラグは引き続き「ＴＲＵＥ」である。次に、決定部１２３が、今回検出されている指示位置は２点で複数であるため（ステップＳ２０２でＹｅｓ）、指示位置が移動していないので（ステップＳ２０４でＮｏ）、無効フラグ「ＴＲＵＥ」が維持される（ステップＳ２０７）。そして、無効フラグが「ＦＡＬＳＥ」である指示位置５０２を有効な入力情報として認識される（ステップＳ２０６）。次に、図１０（ｅ）は、指示位置５０２の情報が取得されたことに応じて保持される情報の一例を示すテーブルである。ＩＤは２、座標（４３０，４００）、検出時刻２０１０［ｍｓ］、最新フラグ「ＴＲＵＥ」、接触圧力４００、無効フラグは「ＦＡＬＳＥ」である。さらに、指示位置であるので、ＩＤが１の指示位置５０１について保持される情報に対し、最新フラグが「ＴＲＵＥ」の指示位置を基準とした接触圧力差｜１３００−４００｜＝９００が加えられる。そして、指示位置５０２は移動したので（ステップＳ２０４でＹｅｓ）、指示位置５０１と指示位置５０２に全てについて、無効決定が行われる（ステップＳ２０５）。まず、指示位置５０２は、最新の指示位置のため、有効な指示位置と決定され、無効フラグは「ＦＡＬＳＥ」となる（ステップＳ９０１）。そして、最新フラグが「ＴＲＵＥ」でない指示位置について、接触圧力差が参照され、取得される（ステップＳ９０２）。図１０（ｅ）のように、この段階では接触圧力差は９００であり、閾値Ｔ２の２００以上のため、指示位置を無効と決定し無効フラグを「ＴＲＵＥ」とする（ステップＳ９０４）。そして、無効フラグが「ＦＡＬＳＥ」である指示位置５０２が、有効な入力情報として認識される。そして、有効な入力情報として認識された指示位置５０２が、Ｙ軸の正方向に３００［ｄｏｔ］移動した操作に対応して、表示画像が下方向にスクロールするように、表示制御が行われる（ステップＳ２０６）。
【００７０】
第３の操作例のように、情報処理装置１００が表示画面を下に向けた角度で指示されている場合、情報処理装置１００の重さが、入力面に接触する１本の指に集中するため、支持が不安定となる。よって、装置を支持する手による指示位置５０１の接触圧力の変動幅は大きくなる傾向があるため、変動幅ではなく（あるいは変動幅と組み合わせて）、変形例のように、複数の指示位置の圧力差を用いることで、決定精度を向上させることができる。
【００７１】
なお、変形例においても、操作を行うため入力は、装置を支持した時点よりも後に行われる可能性が高いことから、最新の指示位置に対する無効決定処理を省略した例を説明したが、これに限らない。ただし、圧力差を用いる無効決定処理には、圧力差の基準となる指示位置を特定することが必要になる。最新の指示位置に対しても、圧力差に基づく処理を行う場合には、既に無効か有効かの決定処理が実行された指示位置を基準として圧力差を求めることで、装置を支持する手と装置を操作する手による圧力の違いに基づく判断が可能となる。これによれば、ユーザは両手で装置を支えたり、装置を持ち変えたりする場合にも、誤動作を低減するという効果を奏する。
【００７２】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００７３】
１２１  位置取得部
１２２  圧力取得部
１２３  決定部
１２４  認識部
１２５  表示制御部
１２６  角度取得部
【図１】
2015118541.tif 000003
【図２】
2015118541.tif 000004
【図３】
2015118541.tif 000005
【図４】
2015118541.tif 000006
【図５】
2015118541.tif 000007
【図６】
2015118541.tif 000008
【図７】
2015118541.tif 000009
【図８】
2015118541.tif 000010
【図９】
2015118541.tif 000011
【図１０】
2015118541.tif 000012
【図１１】
2015118541.tif 000013