(57)【要約】【課題】操作の誤検出を防ぐことができるようにする。【解決手段】本技術の一側面の情報処理装置は、入力位置を検出する位置検出部と、複数の前記入力位置の周りに、前記入力位置を通る線を境界線とする複数の領域を設定する設定部と、少なくともいずれかの前記入力位置の移動方向を、前記入力位置の移動方向にある前記領域に基づいて検出し、検出した前記入力位置の移動方向に応じて操作の種類を検出する操作検出部とを備える。本技術は、タッチパネルに対する入力を検出する装置に適用することができる。【選択図】図１
2012203440.tif 000002
【特許請求の範囲】
【請求項１】
入力位置を検出する位置検出部と、
複数の前記入力位置の周りに、前記入力位置を通る線を境界線とする複数の領域を設定する設定部と、
少なくともいずれかの前記入力位置の移動方向を、前記入力位置の移動方向にある前記領域に基づいて検出し、検出した前記入力位置の移動方向に応じて操作の種類を検出する操作検出部と
を備える情報処理装置。
【請求項２】
前記位置検出部は、タッチパネル上の前記入力位置を検出する
請求項１に記載の情報処理装置。
【請求項３】
前記設定部は、二本の直線をそれぞれの前記入力位置上に設定し、２つの前記入力位置の周りにそれぞれ４つの前記領域を設定する
請求項１に記載の情報処理装置。
【請求項４】
前記操作検出部は、それぞれの前記入力位置の移動方向が、前記領域が設定された前記入力位置を基準として同じ方向にある前記領域の方向である場合、二箇所のドラッグ操作が行われたことを検出する
請求項３に記載の情報処理装置。
【請求項５】
前記操作検出部は、それぞれの前記入力位置の移動方向が、前記領域が設定された前記入力位置を基準として、２つの前記入力位置を通る第１の軸の方向で反対にある前記領域の方向である場合、ピンチ操作が行われたことを検出する
請求項３に記載の情報処理装置。
【請求項６】
前記操作検出部は、それぞれの前記入力位置の移動方向が、前記領域が設定された前記入力位置を基準として、２つの前記入力位置を通る第１の軸と直交する第２の軸の方向で反対にある前記領域の方向である場合、回転操作が行われたことを検出する
請求項３に記載の情報処理装置。
【請求項７】
前記設定部は、２つの前記入力位置を通る第１の軸に対して４５度の角度で交わる第１の直線と、前記第１の直線に対して直交する第２の直線とを設定する
請求項３に記載の情報処理装置。
【請求項８】
前記設定部は、前記入力位置を中心として所定の範囲の遊び領域を設定し、
前記操作検出部は、前記遊び領域を越える移動が行われた場合、前記入力位置の移動方向を検出する
請求項１に記載の情報処理装置。
【請求項９】
入力位置を検出し、
複数の前記入力位置の周りに、前記入力位置を通る線を境界線とする複数の領域を設定し、
少なくともいずれかの前記入力位置の移動方向を、前記入力位置の移動方向にある前記領域に基づいて検出し、検出した前記入力位置の移動方向に応じて操作の種類を検出する
ステップを含む情報処理方法。
【請求項１０】
入力位置を検出し、
複数の前記入力位置の周りに、前記入力位置を通る線を境界線とする複数の領域を設定し、
少なくともいずれかの前記入力位置の移動方向を、前記入力位置の移動方向にある前記領域に基づいて検出し、検出した前記入力位置の移動方向に応じて操作の種類を検出する
ステップを含む処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、特に、操作の誤検出を防ぐことができるようにした情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、スマートフォンなどの、タッチパネルを備えた携帯端末が普及してきている。このような携帯端末の中には、いわゆるシングルタッチ操作に対応した端末だけでなく、マルチタッチ操作に対応した端末もある。
【０００３】
シングルタッチ操作は、一本の指で画面上（タッチパネル上）にタッチし、一箇所の入力位置を検出させることによって行う操作をいう。また、マルチタッチ操作は、二本などの複数の指で画面上にタッチし、複数箇所の入力位置を同時に検出させることによって行う操作をいう。以下、主に、二本の指を使って、二箇所の入力位置を検出させて行うマルチタッチ操作について説明する。
【０００４】
マルチタッチ操作の種類には、主に、ピンチ操作（ピンチイン操作／ピンチアウト操作）、回転操作、二本指ドラッグ操作がある。
【０００５】
ピンチ操作は、２本の指で画面上をタッチし、画面上に指を載せたまま、２本の指の間隔を広げたり、狭めたりする操作である。携帯端末においては、２本の指の間隔の広がり具合に基づいてピンチ操作が検出される。ピンチ操作は、例えば画面に表示されている画像を拡大したり、縮小したりするときに行われる。
【０００６】
回転操作は、２本の指で画面上をタッチし、画面上に指を載せたまま、画面に対する垂線方向を軸方向として２本の指を回転させる操作である。携帯端末においては、２本の指の回転角度に基づいて回転操作が検出される。回転操作は、例えば画面に表示されている画像を回転させるときに行われる。
【０００７】
二本指ドラッグ操作は、２本の指で画面上をタッチし、画面上に指を載せたまま、２本の指の位置を同じ方向に移動させる操作である。携帯端末においては、２本の指の移動方向に基づいて二本指ドラッグ操作が検出される。二本指ドラッグ操作は、例えば画面に表示されている２つの対象を同時に移動させるときに行われる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１１−２２９１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従来の携帯端末によるマルチタッチ操作の種類の判別アルゴリズムによれば、複数の種類の操作が同時に検出されてしまうことがある。例えば、ユーザが、二本の指の間隔を広げながら回転させた場合、ピンチ操作と回転操作の両方の操作が検出されることになる。
【００１０】
従って、ピンチ操作によって対象の拡大／縮小のみを行いたい場合でも意図しない回転操作が検出され、対象が拡大／縮小して表示されるだけでなく、回転して表示されるケースがある。意図しない処理が行われてしまうこのような操作ミスは、指の動きが、操作のスタイル、端末の画面サイズ、使用する指によって異なる点によるものであることが多い。
【００１１】
本技術はこのような状況に鑑みてなされたものであり、操作の誤検出を防ぐことができるようにするものである。
【課題を解決するための手段】
【００１２】
本技術の一側面の情報処理装置は、入力位置を検出する位置検出部と、複数の前記入力位置の周りに、前記入力位置を通る線を境界線とする複数の領域を設定する設定部と、少なくともいずれかの前記入力位置の移動方向を、前記入力位置の移動方向にある前記領域に基づいて検出し、検出した前記入力位置の移動方向に応じて操作の種類を検出する操作検出部とを備える。
【００１３】
例えば、前記操作検出部は、複数の前記入力位置の移動方向の組み合わせに応じて操作の種類を検出する。前記入力位置の移動方向の組み合わせには、所定の前記入力位置が所定の方向に移動した場合のその移動方向と、他の前記入力位置の移動がない場合との組み合わせも含まれる。
【００１４】
前記位置検出部には、タッチパネル上の前記入力位置を検出させることができる。
【００１５】
前記設定部には、二本の直線をそれぞれの前記入力位置上に設定させ、２つの前記入力位置の周りにそれぞれ４つの前記領域を設定させることができる。
【００１６】
前記操作検出部には、それぞれの前記入力位置の移動方向が、前記領域が設定された前記入力位置を基準として同じ方向にある前記領域の方向である場合、二箇所のドラッグ操作が行われたことを検出させることができる。
【００１７】
前記操作検出部には、それぞれの前記入力位置の移動方向が、前記領域が設定された前記入力位置を基準として、２つの前記入力位置を通る第１の軸の方向で反対にある前記領域の方向である場合、ピンチ操作が行われたことを検出させることができる。
【００１８】
前記操作検出部には、それぞれの前記入力位置の移動方向が、前記領域が設定された前記入力位置を基準として、２つの前記入力位置を通る第１の軸と直交する第２の軸の方向で反対にある前記領域の方向である場合、回転操作が行われたことを検出させることができる。
【００１９】
前記設定部には、２つの前記入力位置を通る第１の軸に対して４５度の角度で交わる第１の直線と、前記第１の直線に対して直交する第２の直線とを設定させることができる。
【００２０】
前記設定部には、前記入力位置を中心として所定の範囲の遊び領域を設定させ、前記操作検出部には、前記遊び領域を越える移動が行われた場合、前記入力位置の移動方向を検出させることができる。
【００２１】
本技術の一側面においては、入力位置が検出され、複数の前記入力位置の周りに、前記入力位置を通る線を境界線とする複数の領域が設定され、少なくともいずれかの前記入力位置の移動方向が、前記入力位置の移動方向にある前記領域に基づいて検出され、検出された前記入力位置の移動方向に応じて操作の種類が検出される。
【発明の効果】
【００２２】
本技術によれば、操作の誤検出を防ぐことができる。
【図面の簡単な説明】
【００２３】
【図１】本技術の一実施形態に係る情報処理端末の外観構成の例を示す図である。
【図２】二本の指の検出位置の例を示す図である。
【図３】座標変換の例を示す図である。
【図４】格子領域の設定の例を示す図である。
【図５】マルチタッチ操作の種類の検出について説明する図である。
【図６】ピンチ操作について説明する図である。
【図７】回転操作について説明する図である。
【図８】二本指ドラッグ操作について説明する図である。
【図９】情報処理端末のハードウェア構成例を示すブロック図である。
【図１０】情報処理端末の機能構成例を示すブロック図である。
【図１１】情報処理端末の操作検出処理について説明するフローチャートである。
【図１２】遊び領域の設定の例を示す図である。
【図１３】遊び領域の設定の他の例を示す図である。
【図１４】格子領域の設定の例を示す図である。
【図１５】格子領域の設定の他の例を示す図である。
【図１６】格子領域の設定のさらに他の例を示す図である。
【図１７】操作の検出例について説明する図である。
【図１８】コンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００２４】
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
１．マルチタッチ操作の検出アルゴリズム
２．情報処理端末の構成
３．情報処理端末の動作
４．変形例
【００２５】
＜マルチタッチ操作の検出アルゴリズム＞
図１は、本技術の一実施形態に係る情報処理端末の外観構成の例を示す図である。
【００２６】
図１の情報処理端末１は、携帯電話機、PDA(Personal Digital Assistants)、デジタルカメラ、PND(Portable Navigation Device)などの携帯型の装置であり、ユーザが片手で把持可能な大きさの筐体を有している。情報処理端末１の筐体の前面にはLCD(Liquid Crystal Display)などよりなる表示部１１が設けられる。
【００２７】
表示部１１にはタッチパネルが積層して設けられており、表示部１１に表示されるボタンなどを指で直接タッチして操作することができるようになっている。指ではなく、タッチペンなどを使って操作するようにしてもよい。
【００２８】
表示部１１に設けられるタッチパネルは、抵抗膜方式、静電容量式、感圧方式、赤外線方式などの所定の方式のタッチパネルであり、少なくとも二箇所の入力位置を同時に検出することが可能とされている。ユーザは、マルチタッチ操作によって各種の操作を行うことができる。表示部１１の下には複数のボタンよりなる操作部１２が設けられる。
【００２９】
ここで、情報処理端末１によるマルチタッチ操作の検出アルゴリズムについて説明する。情報処理端末１においては、ピンチ操作、回転操作、二本指ドラッグ操作が検出される。
【００３０】
上述したように、ピンチ操作は、例えば画面に表示されている画像を拡大したり、縮小したりするときに行われる操作であり、回転操作は、例えば画面に表示されている画像を回転させるときに行われる操作である。二本指ドラッグ操作は、例えば画面に表示されている２つの対象を同時に移動させるときに行われる操作である。ピンチ操作、回転操作、二本指ドラッグ操作以外の種類のマルチタッチ操作によって情報処理端末１を操作することができるようにしてもよい。
【００３１】
図２は、二本の指の検出位置の例を示す図である。
【００３２】
ユーザが二本の指を表示部１１上に載せたとき、図２に示すように、二箇所の入力位置である位置Ｐ１，Ｐ２が検出される。図２の例においては、位置Ｐ１，Ｐ２は、いずれもＸ軸上以外の位置である。図２のＸ−Ｙ平面は表示部１１上の面に対応し、Ｘ軸、Ｙ軸は、それぞれ、長方形の形状を有する表示部１１の短辺方向、長辺方向に対応する。Ｘ軸、Ｙ軸は表示部１１に表示される情報ではない。
【００３３】
位置Ｐ１，Ｐ２を検出した場合、情報処理端末１は、図３の矢印＃１に示すように、位置Ｐ１と位置Ｐ２を通る直線をＸ軸とする相対座標系に座標変換を行う。位置Ｐ１，Ｐ２は、いずれもＸ軸上の位置となる。
【００３４】
座標変換を行った後、情報処理端末１は、図４に示すように、位置Ｐ１と位置Ｐ２のそれぞれの位置において所定の角度θで交わる二本の直線を設定し、相対座標上に格子領域を設定する。
【００３５】
図４の直線Ｌ１と直線Ｌ３は位置Ｐ１において９０度の角度で交わり、直線Ｌ２と直線Ｌ４は位置Ｐ２において９０度の角度で交わる。位置Ｐ１を通る直線Ｌ１と位置Ｐ２を通る直線Ｌ２は平行な直線となり、位置Ｐ１を通る直線Ｌ３と位置Ｐ２を通る直線Ｌ４は平行な直線となる。位置Ｐ１を通る直線Ｌ１の、Ｘ軸、Ｙ軸に対する鋭角は４５度となり、直線Ｌ３の、Ｘ軸、Ｙ軸に対する鋭角も４５度となる。同様に、位置Ｐ２を通る直線Ｌ２の、Ｘ軸、Ｙ軸に対する鋭角は４５度となり、直線Ｌ４の、Ｘ軸、Ｙ軸に対する鋭角も４５度となる。
【００３６】
格子領域は入力位置を通る直線を境界線とする領域であり、この例においては、位置Ｐ１と位置Ｐ２の周りに４つずつ設定されることになる。
【００３７】
また、情報処理端末１は、図４の破線円で示すように、所定の長さｒを半径とし、入力位置を中心とする円形の領域を遊び領域Ｒ１，Ｒ２として位置Ｐ１と位置Ｐ２の周りにそれぞれ設定する。遊び領域は、その範囲内に指があり続ける場合、指が移動していないものとして検出される領域である。
【００３８】
格子領域を設定した後、情報処理端末１は、図５に示すように、指の移動方向を、指の移動方向にある格子領域に基づいて検出し、指の移動方向に応じて、ユーザにより行われたマルチタッチ操作の種類を検出する。マルチタッチ操作の種類の検出は、位置Ｐ１にある指が遊び領域Ｒ１を越えた場合と位置Ｐ２にある指が遊び領域Ｒ２を越えた場合のいずれかの場合に行われる。
【００３９】
指の移動方向を格子領域の方向によって表すと、太線矢印＃１１で示す図５の位置Ｐ１にある指の移動方向は、位置Ｐ１を基準として、座標変換後のＸ軸の方向で＋方向にある格子領域の方向となる。また、太線矢印＃１２で示す位置Ｐ２にある指の移動方向は、位置Ｐ２を基準として、座標変換後のＸ軸の方向で−方向にある格子領域の方向となる。
【００４０】
この場合、情報処理端末１は、ピンチ操作（ピンチアウト操作）が行われたものとして検出する。すなわち、情報処理端末１においては、マルチタッチ操作の種類が、二本の指の移動方向の組み合わせに応じて検出される。
【００４１】
以下、適宜、図５の破線矢印で示すように、入力位置を基準として、座標変換後のＸ軸の方向で−方向をＡ方向、＋方向をＢ方向として説明する。また、Ｙ軸の方向で＋方向をＣ方向、−方向をＤ方向として説明する。
【００４２】
例えば、位置Ｐ１にある指が、位置Ｐ１を基準としてＡ方向にある格子領域に移動し、位置Ｐ２にある指が、位置Ｐ２を基準としてＡ方向にある格子領域に移動した場合、位置Ｐ１にある指の移動方向と位置Ｐ２にある指の移動方向は同じ方向となる。また、位置Ｐ１にある指が、位置Ｐ１を基準としてＣ方向にある格子領域に移動し、位置Ｐ２にある指が、位置Ｐ２を基準としてＤ方向にある格子領域に移動した場合、位置Ｐ１にある指の移動方向と位置Ｐ２にある指の移動方向は反対方向となる。
【００４３】
図６は、ピンチ操作について説明する図である。太線矢印が指の移動方向を表す。
【００４４】
図６Ａに示すように、位置Ｐ１にある指が遊び領域Ｒ１を越えてＢ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２を越えてＡ方向にある領域に移動した場合、ピンチアウト操作が検出される。この場合、位置Ｐ１にある指と位置Ｐ２にある指の移動方向はＸ軸の方向で反対方向となる。
【００４５】
位置Ｐ１にある指が遊び領域Ｒ１を越えてＢ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２内にあり続ける場合も同様にピンチアウト操作が検出される。また、位置Ｐ２にある指が遊び領域Ｒ２を越えてＡ方向にある領域に移動し、位置Ｐ１にある指が遊び領域Ｒ１内にあり続ける場合も同様にピンチアウト操作が検出される。
【００４６】
図６Ｂに示すように、位置Ｐ１にある指が遊び領域Ｒ１を越えてＡ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２を越えてＢ方向にある領域に移動した場合、ピンチイン操作が検出される。この場合、位置Ｐ１にある指と位置Ｐ２にある指の移動方向はＸ軸の方向で反対方向となる。
【００４７】
位置Ｐ１にある指が遊び領域Ｒ１を越えてＡ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２内にあり続ける場合も同様にピンチイン操作が検出される。また、位置Ｐ２にある指が遊び領域Ｒ２を越えてＢ方向にある領域に移動し、位置Ｐ１にある指が遊び領域Ｒ１内にあり続ける場合も同様にピンチイン操作が検出される。
【００４８】
図７は、回転操作について説明する図である。
【００４９】
図７Ａに示すように、位置Ｐ１にある指が遊び領域Ｒ１を越えてＤ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２を越えてＣ方向にある領域に移動した場合、時計回りの方向の回転操作が検出される。この場合、位置Ｐ１にある指と位置Ｐ２にある指の移動方向はＹ軸の方向で反対方向となる。
【００５０】
位置Ｐ１にある指が遊び領域Ｒ１を越えてＤ方向に移動し、位置Ｐ２にある指が遊び領域Ｒ２内にあり続ける場合も同様に時計回りの方向の回転操作が検出される。また、位置Ｐ２にある指が遊び領域Ｒ２を越えてＣ方向に移動し、位置Ｐ１にある指が遊び領域Ｒ１内にあり続ける場合も同様に時計回りの方向の回転操作が検出される。
【００５１】
図７Ｂに示すように、位置Ｐ１にある指が遊び領域Ｒ１を越えてＣ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２を越えてＤ方向にある領域に移動した場合、反時計回りの方向の回転操作が検出される。この場合、位置Ｐ１にある指と位置Ｐ２にある指の移動方向はＹ軸の方向で反対方向となる。
【００５２】
位置Ｐ１にある指が遊び領域Ｒ１を越えてＣ方向に移動し、位置Ｐ２にある指が遊び領域Ｒ２内にあり続ける場合も同様に反時計回りの方向の回転操作が検出される。また、位置Ｐ２にある指が遊び領域Ｒ２を越えてＤ方向に移動し、位置Ｐ１にある指が遊び領域Ｒ１内にあり続ける場合も同様に反時計回りの方向の回転操作が検出される。
【００５３】
図８は、二本指ドラッグ操作について説明する図である。
【００５４】
図８Ａに示すように、位置Ｐ１にある指が遊び領域Ｒ１を越えてＡ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２を越えてＡ方向にある領域に移動した場合、二本指ドラッグ操作が検出される。この場合、位置Ｐ１にある指と位置Ｐ２にある指の移動方向はＸ軸の方向で同じ方向となる。
【００５５】
図８Ｂに示すように、位置Ｐ１にある指が遊び領域Ｒ１を越えてＢ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２を越えてＢ方向にある領域に移動した場合、二本指ドラッグ操作が検出される。この場合、位置Ｐ１にある指と位置Ｐ２にある指の移動方向はＸ軸の方向で同じ方向となる。
【００５６】
図８Ｃに示すように、位置Ｐ１にある指が遊び領域Ｒ１を越えてＣ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２を越えてＣ方向にある領域に移動した場合、二本指ドラッグ操作が検出される。この場合、位置Ｐ１にある指と位置Ｐ２にある指の移動方向はＹ軸の方向で同じ方向となる。
【００５７】
図８Ｄに示すように、位置Ｐ１にある指が遊び領域Ｒ１を越えてＤ方向にある領域に移動し、位置Ｐ２にある指が遊び領域Ｒ２を越えてＤ方向にある領域に移動した場合、二本指ドラッグ操作が検出される。この場合、位置Ｐ１にある指と位置Ｐ２にある指の移動方向はＹ軸の方向で同じ方向となる。
【００５８】
このように、情報処理端末１においては、二本の指の移動方向が、指の移動方向にある格子領域に基づいて検出され、マルチタッチ操作の種類が、二本の指の移動方向の組み合わせに応じて検出される。
【００５９】
二本の指の移動方向の組み合わせに応じて操作を検出することにより、情報処理端末１は、操作を排他的に検出することができる。
【００６０】
これにより、ユーザが二本の指の間隔を広げながら回転させた場合であっても、情報処理端末１は、ピンチ操作と回転操作の両方の操作を検出しないで済み、ユーザの意図しない処理を行ってしまうことを防ぐことが可能になる。情報処理端末１は、いずれかの操作を検出した場合、少なくとも一方の指が表示部１１の表面から離れるまでは他の操作を検出しない。ユーザが二本の指の間隔を広げながら回転させた場合、先に行われた方の操作のみが検出され、他方の操作は検出されないことになる。
【００６１】
なお、遊び領域を越えないまま表示部１１の表面から指が離された場合、二本指タップ操作が行われたものとして検出される。
【００６２】
＜情報処理端末の構成＞
図９は、情報処理端末１のハードウェア構成例を示すブロック図である。
【００６３】
情報処理端末１は、コントローラ２１に対して、表示部１１、操作部１２、撮影部２４、および通信部２５が接続されることによって構成される。表示部１１はディスプレイ２２とタッチパネル２３から構成される。
【００６４】
コントローラ２１は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)などより構成される。コントローラ２１のCPUは、ROMからプログラムをロードしてRAMを用いて実行し、情報処理端末１の全体の動作を制御する。
【００６５】
表示部１１のディスプレイ２２は、コントローラ２１による制御に従って画像やテキストなどの各種の情報を表示する。
【００６６】
タッチパネル２３は、ディスプレイ２２に積層して設けられ、指などを用いて行われるユーザによる入力を検出し、検出した入力の位置を表す信号をコントローラ２１に出力する。タッチパネル２３による検出は所定の周期で繰り返し行われる。
【００６７】
操作部１２は、情報処理端末１の筐体表面に設けられたボタンに対するユーザの操作を検出し、検出したユーザの操作の内容を表す情報をコントローラ２１に出力する。
【００６８】
撮影部２４は、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの撮像素子よりなり、情報処理端末１の筐体の背面側に設けられたレンズにより取り込まれた光の光電変換を行い、画像データを生成する。例えば、撮影部２４により生成された画像データに基づいて、ディスプレイ２２に画像が表示される。
【００６９】
通信部２５は、携帯電話機の基地局からの電波を受信し、携帯電話機のネットワークを介してインターネット上の装置と通信を行う。
【００７０】
図１０は、情報処理端末１の機能構成例を示すブロック図である。図１０に示す機能部のうちの少なくとも一部は、図９のコントローラ２１により所定のプログラムが実行されることによって実現される。
【００７１】
情報処理端末１においては、位置検出部３１、座標変換部３２、格子領域設定部３３、操作検出部３４、および処理部３５が実現される。タッチパネル２３から出力された入力位置を表す信号は位置検出部３１に入力される。
【００７２】
位置検出部３１は、タッチパネル２３から供給された信号に基づいて、変換前の座標平面上におけるユーザの入力位置を検出し、入力位置を表す情報を座標変換部３２と操作検出部３４に出力する。
【００７３】
座標変換部３２は、二本の指の位置を表す情報が位置検出部３１から供給された場合、二箇所の入力位置を通る直線をＸ軸とする相対座標系に座標変換を行う。座標変換部３２は、座標の情報を格子領域設定部３３に出力する。
【００７４】
格子領域設定部３３は、二箇所の入力位置のそれぞれの位置で所定の角度θで交わる二本の直線を設定し、格子領域を設定する。格子領域設定部３３は、格子領域の情報を操作検出部３４に出力する。
【００７５】
操作検出部３４は、格子領域が設定された二箇所の入力位置を基準とし、二本の指の移動方向を、指の移動方向にある格子領域に基づいて検出する。操作検出部３４は、二本の指の移動方向の組み合わせに応じて、ユーザにより行われたマルチタッチ操作の種類を検出する。操作検出部３４は、検出したマルチタッチ操作の種類を表す情報を処理部３５に出力する。
【００７６】
処理部３５は、操作検出部３４により検出された操作に応じた処理を行う。すなわち、処理部３５は、ピンチ操作が検出された場合、ピンチ操作に応じた処理を行い、回転操作が検出された場合、回転操作に応じた処理を行い、二本指ドラッグ操作が検出された場合、二本指ドラッグ操作に応じた処理を行う。
【００７７】
＜情報処理端末の動作＞
ここで、図１１のフローチャートを参照して、マルチタッチ操作を検出する情報処理端末１の処理について説明する。図１１の処理は、表示部１１上に指が載せられたことがタッチパネル２３により検出されたときに開始される。
【００７８】
ステップＳ１において、位置検出部３１は、タッチパネル２３から供給された情報に基づいて、二本の指による入力位置を検出する。
【００７９】
ステップＳ２において、座標変換部３２は、二箇所の入力位置を通る直線をＸ軸とする相対座標系に座標変換を行う。
【００８０】
ステップＳ３において、格子領域設定部３３は、二箇所の入力位置のそれぞれの位置上で所定の角度θで交わる二本の直線を設定し、格子領域を設定する。
【００８１】
ステップＳ４において、操作検出部３４は、位置検出部３１から供給された情報に基づいて、少なくとも一本の指が遊び領域を越えたか否かを判定し、越えたと判定するまで待機する。ステップＳ４での待機中に遊び領域を越えないまま指が離された場合、二本指タップ操作が行われたものとして検出され、処理が終了される。
【００８２】
少なくとも一本の指が遊び領域を越えたとステップＳ４において判定した場合、ステップＳ５において、操作検出部３４は、二本の指の移動方向が同じ方向であるか否かを判定する。
【００８３】
二本の指が遊び領域を越えており、その二本の指の移動方向が同じ方向であるとステップＳ５において判定した場合、ステップＳ６において、操作検出部３４は、二本指ドラッグ操作が行われたことを検出する。その後、二本指ドラッグ操作に応じた処理が処理部３５により行われ、処理が終了される。
【００８４】
一方、二本の指の移動方向が同じ方向ではないとステップＳ５において判定した場合、ステップＳ７において、操作検出部３４は、遊び領域を最初に越えた指の移動方向がＡ方向またはＢ方向にある格子領域の方向であるか否かを判定する。
【００８５】
遊び領域を最初に越えた指の移動方向がＡ方向またはＢ方向にある格子領域の方向であるとステップＳ７において判定した場合、ステップＳ８において、操作検出部３４は、ピンチ操作が行われたことを検出する。
【００８６】
二本の指がともに遊び領域を越えており、そのうちの遊び領域を最初に越えた方の指の移動方向がＡ方向またはＢ方向にある格子領域の方向である場合、ピンチ操作が検出されることになる。また、一本の指が遊び領域を越えており、その指の移動方向がＡ方向またはＢ方向にある格子領域の方向である場合、ピンチ操作が検出されることになる。その後、ピンチ操作に応じた処理が処理部３５により行われ、処理が終了される。
【００８７】
一方、遊び領域を最初に越えた指の移動方向がＡ方向またはＢ方向にある格子領域の方向ではなく、Ｃ方向またはＤ方向にある格子領域の方向であるとステップＳ７において判定した場合、ステップＳ９において、操作検出部３４は、回転操作が行われたことを検出する。
【００８８】
二本の指がともに遊び領域を越えており、そのうちの遊び領域を最初に越えた方の指の移動方向がＣ方向またはＤ方向にある格子領域の方向である場合、回転操作が検出されることになる。また、一本の指が遊び領域を越えており、その指の移動方向がＣ方向またはＤ方向にある格子領域の方向である場合、回転操作が検出されることになる。その後、回転操作に応じた処理が処理部３５により行われ、処理が終了される。
【００８９】
以上の処理により、情報処理端末１は、操作を排他的に検出することができ、ユーザの意図しない処理を行ってしまうことを防ぐことが可能になる。
【００９０】
＜変形例＞
図１２に示すように、遊び領域を大きく設定することも可能である。図１２の遊び領域Ｒ１，Ｒ２は、図４の遊び領域Ｒ１，Ｒ２よりも大きい。遊び領域の大きさは、例えば、情報処理端末１を使うユーザの年齢に応じて、または、情報処理端末１のディスプレイ２２のサイズに応じて切り替えられる。
【００９１】
また、図１３に示すように、一方の入力位置の遊び領域を大きく設定し、他方の入力位置の遊び領域を小さく設定するといったように、遊び領域の大きさをそれぞれ異なる大きさとして設定することも可能である。図１３の例においては、遊び領域Ｒ１は遊び領域Ｒ２より大きい。例えば、情報処理端末１を使うユーザが右利きであるか左利きであるかに応じて、それぞれ異なる大きさの遊び領域が設定される。
【００９２】
さらに、以上においては、入力位置において９０度で交わる二本の直線を設定し、格子領域を設定するものとしたが、図１４に示すように、格子領域の境界線となる二本の直線が９０度以外の角度で交わるようにしてもよい。
【００９３】
また、位置Ｐ１において交わる二本の直線の角度と、位置Ｐ２において交わる二本の直線の角度が同じ角度ではなく、図１５に示すように異なる角度であってもよい。
【００９４】
以上においては、入力位置において交わる二本の直線が設定され、入力位置の周りに４つの格子領域が設定されるものとしたが、図１６に示すように、入力位置を通るように一本の直線が設定され、入力位置の周りに２つの格子領域が設定されるようにしてもよい。また、三本以上の直線が設定され、６つ以上の格子領域が設定されるようにしてもよい。この場合においても、指の移動方向が、指の移動方向にある格子領域に基づいて検出され、移動方向の組み合わせに応じて、マルチタッチ操作の種類が検出される。
【００９５】
格子領域の境界線となる線は、直線だけでなく、屈折した線や曲線を含む線であってもよい。
【００９６】
図１２と図１３に示す遊び領域の大きさ、図１４と図１５に示す格子領域の境界線となる直線の角度、および、図１６に示す格子領域の数のうちの少なくとも一部は、設定画面からユーザが設定することができるようにしてもよい。
【００９７】
以上においては、タッチパネル２３により検出された、表示部１１上における入力位置を検出し、ユーザの操作を検出するものとしたが、撮影部２４により撮影された画像上の入力位置を検出し、ユーザの操作を検出するようにしてもよい。
【００９８】
図１７は、画像上の入力位置を検出し、ユーザの操作を検出する例を示す図である。
【００９９】
図１７の例においては、ユーザＨは、ポインティングデバイス５１Ａを右手に持ち、ポインティングデバイス５１Ｂを左手に持っている。ポインティングデバイス５１Ａの先端には発光部５２Ａが設けられ、ポインティングデバイス５１Ｂの先端には発光部５２Ｂが設けられる。
【０１００】
ユーザＨから所定の距離だけ離れた位置に、筐体の背面をユーザＨに向けた状態で情報処理端末１が設置される。情報処理端末１の筐体の背面にはレンズが設けられており、撮影部２４によりユーザＨが撮影される。
【０１０１】
情報処理端末１は、撮影した画像を解析することによって、撮影した画像上における発光部５２Ａと発光部５２Ｂの位置を検出し、発光部５２Ａの位置を位置Ｐ１、発光部５２Ｂの位置を位置Ｐ２として、上述したようにしてユーザの操作を検出する。
【０１０２】
このように、撮影された画像上の入力位置を検出し、入力位置の移動方向を発光部５２Ａと発光部５２Ｂの移動方向にある格子領域に応じて検出し、移動方向の組み合わせに応じてユーザの操作を検出することも可能である。
【０１０３】
以上においては、二本の指によるマルチタッチ操作について説明したが、マルチタッチ操作の種類を検出する上述した方法は、三本以上の指を使ったマルチタッチ操作の種類の検出にも適用可能である。
【０１０４】
［コンピュータの構成例］
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１０５】
図１８は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０１０６】
CPU１０１、ROM１０２、RAM１０３は、バス１０４により相互に接続されている。
【０１０７】
バス１０４には、さらに、入出力インタフェース１０５が接続されている。入出力インタフェース１０５には、キーボード、マウスなどよりなる入力部１０６、ディスプレイ、スピーカなどよりなる出力部１０７が接続される。また、入出力インタフェース１０５には、ハードディスクや不揮発性のメモリなどよりなる記憶部１０８、ネットワークインタフェースなどよりなる通信部１０９、リムーバブルメディア１１１を駆動するドライブ１１０が接続される。
【０１０８】
以上のように構成されるコンピュータでは、CPU１０１が、例えば、記憶部１０８に記憶されているプログラムを入出力インタフェース１０５及びバス１０４を介してRAM１０３にロードして実行することにより、上述した一連の処理が行われる。
【０１０９】
CPU１０１が実行するプログラムは、例えばリムーバブルメディア１１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部１０８にインストールされる。
【０１１０】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１１１】
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０１１２】
［構成の組み合わせ例］
本技術は、以下のような構成をとることもできる。
【０１１３】
（１）
入力位置を検出する位置検出部と、
複数の前記入力位置の周りに、前記入力位置を通る線を境界線とする複数の領域を設定する設定部と、
少なくともいずれかの前記入力位置の移動方向を、前記入力位置の移動方向にある前記領域に基づいて検出し、検出した前記入力位置の移動方向に応じて操作の種類を検出する操作検出部と
を備える情報処理装置。
【０１１４】
（２）
前記位置検出部は、タッチパネル上の前記入力位置を検出する
前記（１）に記載の情報処理装置。
【０１１５】
（３）
前記設定部は、二本の直線をそれぞれの前記入力位置上に設定し、２つの前記入力位置の周りにそれぞれ４つの前記領域を設定する
前記（１）または（２）に記載の情報処理装置。
【０１１６】
（４）
前記操作検出部は、それぞれの前記入力位置の移動方向が、前記領域が設定された前記入力位置を基準として同じ方向にある前記領域の方向である場合、二箇所のドラッグ操作が行われたことを検出する
前記（１）乃至（３）のいずれかに記載の情報処理装置。
【０１１７】
（５）
前記操作検出部は、それぞれの前記入力位置の移動方向が、前記領域が設定された前記入力位置を基準として、２つの前記入力位置を通る第１の軸の方向で反対にある前記領域の方向である場合、ピンチ操作が行われたことを検出する
前記（１）乃至（４）のいずれかに記載の情報処理装置。
【０１１８】
（６）
前記操作検出部は、それぞれの前記入力位置の移動方向が、前記領域が設定された前記入力位置を基準として、２つの前記入力位置を通る第１の軸と直交する第２の軸の方向で反対にある前記領域の方向である場合、回転操作が行われたことを検出する
前記（１）乃至（５）のいずれかに記載の情報処理装置。
【０１１９】
（７）
前記設定部は、２つの前記入力位置を通る第１の軸に対して４５度の角度で交わる第１の直線と、前記第１の直線に対して直交する第２の直線とを設定する
前記（１）乃至（６）のいずれかに記載の情報処理装置。
【０１２０】
（８）
前記設定部は、前記入力位置を中心として所定の範囲の遊び領域を設定し、
前記操作検出部は、前記遊び領域を越える移動が行われた場合、前記入力位置の移動方向を検出する
前記（１）乃至（７）のいずれかに記載の情報処理装置。
【０１２１】
（９）
入力位置を検出し、
複数の前記入力位置の周りに、前記入力位置を通る線を境界線とする複数の領域を設定し、
少なくともいずれかの前記入力位置の移動方向を、前記入力位置の移動方向にある前記領域に基づいて検出し、検出した前記入力位置の移動方向に応じて操作の種類を検出する
ステップを含む情報処理方法。
【０１２２】
（１０）
入力位置を検出し、
複数の前記入力位置の周りに、前記入力位置を通る線を境界線とする複数の領域を設定し、
少なくともいずれかの前記入力位置の移動方向を、前記入力位置の移動方向にある前記領域に基づいて検出し、検出した前記入力位置の移動方向に応じて操作の種類を検出する
ステップを含む処理をコンピュータに実行させるプログラム。
【符号の説明】
【０１２３】
１  情報処理端末，  １１  表示部，  ２１  コントローラ，  ２２  ディスプレイ，  ２３  タッチパネル，  ３１  位置検出部，  ３２  座標変換部，  ３３  格子領域設定部，  ３４  操作検出部，  ３５  処理部
【図１】
2012203440.tif 000003
【図２】
2012203440.tif 000004
【図３】
2012203440.tif 000005
【図４】
2012203440.tif 000006
【図５】
2012203440.tif 000007
【図６】
2012203440.tif 000008
【図７】
2012203440.tif 000009
【図８】
2012203440.tif 000010
【図９】
2012203440.tif 000011
【図１０】
2012203440.tif 000012
【図１１】
2012203440.tif 000013
【図１２】
2012203440.tif 000014
【図１３】
2012203440.tif 000015
【図１４】
2012203440.tif 000016
【図１５】
2012203440.tif 000017
【図１６】
2012203440.tif 000018
【図１７】
2012203440.tif 000019
【図１８】
2012203440.tif 000020