JP2014130450A - 情報処理装置およびその制御方法 - Google Patents

情報処理装置およびその制御方法 Download PDF

Info

Publication number
JP2014130450A
JP2014130450A JP2012287245A JP2012287245A JP2014130450A JP 2014130450 A JP2014130450 A JP 2014130450A JP 2012287245 A JP2012287245 A JP 2012287245A JP 2012287245 A JP2012287245 A JP 2012287245A JP 2014130450 A JP2014130450 A JP 2014130450A
Authority
JP
Japan
Prior art keywords
touch
touch point
information processing
processing apparatus
acquired
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012287245A
Other languages
English (en)
Other versions
JP6066725B2 (ja
JP2014130450A5 (ja
Inventor
Hikari Ito
光 伊藤
Seiko Kono
星子 河野
Takeshi Yamazaki
健史 山崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2012287245A priority Critical patent/JP6066725B2/ja
Priority to US14/141,338 priority patent/US9430089B2/en
Publication of JP2014130450A publication Critical patent/JP2014130450A/ja
Publication of JP2014130450A5 publication Critical patent/JP2014130450A5/ja
Application granted granted Critical
Publication of JP6066725B2 publication Critical patent/JP6066725B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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
    • 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
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen

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)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Abstract

【課題】 タッチ入力対象領域の端部において移動を伴わないタッチ点による操作が全て無効とされる方法では、表示可能な内容が制限されるといった不都合が生じる場合がある。
【解決手段】 本発明は上記課題に鑑みてなされたものであり、タッチパネルディスプレイ上のタッチ操作を認識する情報処理装置であって、タッチ操作の対象領域においてタッチされている複数のタッチ点を取得し、前記タッチパネルディスプレイにおける、前記取得された複数のタッチ点のそれぞれに対応する位置に表示されたオブジェクトを特定し、前記特定された複数のオブジェクトの関係に基づいて、前記取得された複数のタッチ点のうち、所定の範囲に含まれるタッチ点の入力を無効とするか判定することを特徴とする。
【選択図】 図6

Description

本発明は、タッチ操作を認識する技術に関する。
近年、ユーザの指あるいはスタイラスにより画面がタッチされたことに応答して、タッチされた位置のX,Y座標値を入力値として取り込み、この入力値に基づいて各種処理を実行するタッチ入力機器が普及している。また、画面の複数点をタッチすることにより操作を行う、いわゆるマルチタッチの技術が発展しつつある。このマルチタッチの操作においては、例えば右手の人差し指と親指の2つを使って2点をタッチするなどにより、拡大、縮小、スクロールなどの多種多様な操作が可能である。
このようなタッチ入力機器では、多くの場合、できるだけ装置全体を画面として設計することが望まれる。従って、例えばユーザが手でタッチ入力機器を保持するためなど、無意識に画面をタッチしてしまう事が起こり得る。マルチタッチ操作が可能なタッチ入力機器において、上述したようにユーザが誤って画面を触ってしまった場合には、ユーザの意図よりも多くのタッチ入力が認識されてしまい、誤動作の原因となりえる。
ユーザの意図しないタッチ点を無効にする技術として、特許文献1が知られている。特許文献1では、タッチパネルの周囲の端部でのタッチを選択的に無視することが開示されている。その際、端部での接触が所定の距離または速度を超えて移動した場合、および、タッチパネルの中心領域での接触が端部に進入した場合には、端部での接触はジェスチャーの一部として認識される。
特開2009−217814号
しかしながら、多くのタッチ入力機器では、タッチパネルの表示領域を効率よく利用するために、タッチパネルの端部においても、ユーザインタフェースを含む様々な表示が行われる。特許文献1のように、端部では、移動を伴わないタッチ点が全て無効とされる方法では、端部に表示可能な内容が制限されるといった不都合が生じる場合がある。
本発明は上記課題に鑑みてなされたものであり、タッチパネルディスプレイの所定の範囲におけるタッチ点による入力を選択的に無効とする場合に、該所定の範囲に表示されるユーザインタフェースの操作性を向上させることを主な目的とする。
本発明は上記課題に鑑みてなされたものであり、タッチパネルディスプレイ上のタッチ操作を認識する情報処理装置であって、タッチ操作の対象領域においてタッチされている複数のタッチ点を取得する取得手段と、前記タッチパネルディスプレイにおける、前記取得手段が取得した複数のタッチ点のそれぞれに対応する位置に表示されたオブジェクトを特定する特定手段と、前記特定された複数のオブジェクトの関係に基づいて、前記取得手段が取得した複数のタッチ点のうち、所定の範囲に含まれるタッチ点の入力を無効とするか判定する判定手段とを備えることを特徴とする。
本発明によれば、本発明は上記課題に鑑みてなされたものであり、タッチパネルディスプレイの所定の範囲におけるタッチ点による入力を選択的に無効とする場合に、該所定の範囲に表示されるユーザインタフェースの操作性を向上させることができる。
情報処理装置の外観と構成の一例を示す図 ユーザによるタッチ入力の認識処理の流れの一例を示すフローチャート タッチ点の取得処理の流れの一例を示すフローチャート オブジェクトの関連付け情報に基づく判定処理の流れの一例を示すフローチャート オブジェクトの表示状態と関連付け情報の一例を示す図 情報処理装置の操作例を示す図 情報処理装置の操作例を示す図 タッチ点に関して保持される情報の一例を示す図 ユーザによるタッチ入力の認識処理の流れの一例を示すフローチャート タッチ点の取得処理の流れの一例を示すフローチャート オブジェクトの関連付け情報に基づく判定処理の流れの一例を示すフローチャート 情報処理装置の操作例を示す図 情報処理装置の操作例を示す図 タッチ点に関して保持される情報の一例を示す図
以下、本発明を実施するための形態について、図面を参照しながら説明する。なお、以下で説明する実施形態は、本発明を具体的に実施した場合の一例を示すものであり、これに限るものではない。
[第1の実施形態]
図1は、本実施形態に適用可能な情報処理装置の外観とハードウェア構成の一例を示す。図1(a)は、情報処理装置100の一例である携帯端末を画面の正面及び側面から見た外観を示す図である。図1(a)において、筐体101は、入力領域102の外周部であり、合成樹脂や金属等で形成される。入力領域102は、タッチセンサ等で構成され、ユーザがタッチの対象とする対象領域であり、情報処理装置100に対する入力を受け付ける。本実施形態では、入力領域102は表示部であるディスプレイ上にタッチセンサを設置したタッチパネルディスプレイによって構成される。この表示画面は、情報処理装置100、あるいは情報処理装置100と接続された装置を操作するための画像を表示するインタフェースである。ユーザが情報処理装置100を支持する場合、通常はこの筐体101の一部を手で掴むことになる。その際、入力領域102の外縁に近い部分に、指が触れてしまう場合がある。本実施形態では、外縁から入力領域102の内側に向かって所定の距離までの範囲103を、ユーザが誤ってタッチしてしまいやすいと想定される所定の範囲として設定する。なお、ここで説明する情報処理装置100のタッチパネルディスプレイ115の入力領域102は、480[dot]×640[dot]の解像度を有し、紙面に向かって左上を原点とする座標平面として位置情報を管理することができるものとする。
以降、本実施形態では、図1(a)に示す携帯端末を、情報処理装置100として説明する。
以下、本実施形態では、ユーザが入力領域102に触れた位置を、点で特定し、タッチ点と呼ぶ。そして、タッチ点の位置情報を、入力領域102を、向かって左上を原点とする座標平面であるとして座標の情報で扱う。ただし、ユーザがタッチした位置は点を特定する以外の方法で取得されても構わない。例えば、指などに接触された面積に相当する情報と、接触された領域の重心(あるいは中心)となる点の位置を示す情報を両方取得しても構わない。
本実施形態では、まずユーザが入力領域102に触れた1以上のタッチ点のうち、入力領域102の外縁に設定された所定の範囲103において取得されているタッチ点は、当該装置を手で支持するために入力領域102に触れた可能性が高いと考える。ただし、取得されている複数のタッチ点が、関連する1以上のオブジェクトに接触している場合には、所定の範囲103において取得されたタッチ点であっても、当該オブジェクトを操作する為に入力領域102に触れたものであるとみなす。従って、所定の範囲103内で取得されたタッチ点のうち、他のタッチ点が接触しているオブジェクトと関連するオブジェクトに接触しないタッチ点は、入力として無効とする。
図1(b)は、本実施形態に適用可能な情報処理装置100のハードウェア構成を示すブロック図の一例である。図1(b)において、CPU111は、Central Processing Unitである。また、ROM112は、Read Only Memoryであり、HDD113は、Hard Disk Driveである。本実施形態では、CPU111が、ROM112やHDD113に格納されている制御プログラムを読み出して実行し、各デバイスを制御する。この制御プログラムは、本実施形態で説明される各種動作を情報処理装置100に実行させるための制御プログラムである。ROM112は、それらの制御プログラムやそのプログラムに利用される各種データを保持する。RAM114は、Random Access Memoryであり、CPU111の上記プログラムのワーク領域、エラー処理時のデータの退避領域、上記制御プログラムのロード領域などを有する。HDD113は、上述の各種制御プログラムや各種データを格納する。タッチパネルディスプレイ115は、入力領域102におけるユーザの操作情報を取り込むためのタッチセンサ等と表示出力を行う表示画面を兼ねるデバイスである。出力I/F116はネットワーク等を介してディスプレイ以外の出力装置に各種情報を出力するためのインタフェースである。バス117は、CPU111の制御の対象とする構成要素を指示するアドレス信号、各構成要素を制御するためのコントロール信号、各構成機器相互間でやりとりされるデータの転送を行う。なお、上述した制御プログラムは、ROM112又はHDD113に予め記憶されていてもよいし、必要に応じてネットワークを介して外部装置などから受理し、ROM112又はHDD113に記憶しても良い。
CPU111は、ROM112又はHDD113等に記憶されているプログラムを実行することにより、後述する情報処理装置100の各種機能あるいは後述するフローチャートに示す各種動作を実行する。
図1(c)は、情報処理装置100のソフトウェアの構成を示すブロック図の一例である。
取得部121は、CPU、ROM、RAM(以下、CPU等)によって構成され、タッチパネルディスプレイ115のタッチセンサから通知される信号に基づいて、ユーザによってタッチされているタッチ点に関する情報を取得する。タッチ点に関する情報とは、例えば入力領域102内でのタッチ点の位置を示す座標情報、その位置でタッチ点が取得された取得時刻、取得された順番等を示す情報である。取得部121は、取得した情報を、RAM114に構成される第1保持部123に保持させる。
判定部122は、CPU等によって構成され、第1保持部123に保持された情報に基づいて取得部121が取得したタッチ点が複数であると判断される場合、各タッチ点を情報処理装置100に対する入力として有効とするか無効とするか判定する。本実施形態では、入力領域102において、所定の範囲103が設定されている。所定の範囲103は、例えば入力領域の外縁から所定の距離までの範囲など、ユーザが情報処理装置100を保持するときに触れてしまいやすい部分に相当する。判定部122は、タッチ点の位置が設定された所定の範囲103に含まれる場合には、当該タッチ点を、入力を無効とする候補にする。そして、当該候補とされたタッチ点それぞれの位置に、他のタッチ点に表示されたオブジェクトとに関連があるオブジェクトが表示されていた場合には、当該タッチ点による入力を有効、表示されていない場合には当該タッチ点による入力を無効と判定する。本実施形態では、判定部122が判定処理に利用する、タッチパネルディスプレイ115に表示される表示画像を構成するオブジェクトやコンテンツデータの情報は、第2保持部126に記憶されている。
認識部124は、CPU等によって構成され、判定部122による判定結果を受け、第1保持部123に保持された中から、有効なタッチ点に関する情報を取得し、タッチ操作を構成する入力情報として認識する。
表示制御部125は、第2保持部126に記憶された情報をもとに、入力に対応する結果を反映した表示画像を生成し、表示部としてのタッチパネルディスプレイ115に出力する制御を行う。例えば、有効とされたタッチ点によって指定されたユーザインタフェースを構成するオブジェクトであった場合には、当該オブジェクトに対応した操作を反映した表示画像を生成し、出力する。
第2保持部126は、表示制御部125が表示画像を生成するために必要な画像データやその属性情報を保持している。例えば、情報処理装置100で実行される各種アプリケーションやオペレーションシステムのグラフィカルユーザインタフェースの構成部品である複数のオブジェクトに関して、画像情報や表示位置を示す情報が保持されている。さらに第2保持部126では、グラフィカルユーザインタフェース画面を構成するオブジェクトに、他のオブジェクトを関連付けて記憶している場合がある。例えば、複数のオブジェクトを連動させることによって1つの機能を操作するユーザインタフェースが構成される場合、当該複数のオブジェクト間には関連があるとして、各オブジェクトに互いとの関連付け情報が付加される。判定部122は、複数のタッチ点のそれぞれの位置に表示されているオブジェクトに付加された関連付け情報を基に、所定の範囲103内に含まれるタッチ点に表示されたオブジェクトが、他のタッチ点に表示されたオブジェクトに関連付けられているかを判定する。そして、関連付けられていると判定された場合には、当該所定の範囲103内に含まれるタッチ点を有効とし、関連付けられていないと判定された場合には、当該所定の範囲103内に含まれるタッチ点を無効とする。なお、第2保持部126は、HDD113や外部記憶装置あるいはROM112に記憶された情報が、RAM114に読み出されることによって構成される。なお、本実施形態では、関連付け情報は、あるオブジェクトと、その他のオブジェクトとの関連のみを示すため、複数のタッチ点の位置に渡って同一のオブジェクトが表示されている場合には、関連付けされていないオブジェクトをタッチしているものと判定する。
本実施形態では、これらの各機能部は、CPU111がROM112に格納されたプログラムをRAM114に展開し実行することでその機能を実現する。ただし、本発明は、これらの機能部をハードウェアで実現する情報処理装置によっても同様に実現可能である。
次に、図2のフローチャートに従い、本実施形態においてユーザのタッチ入力を認識する処理の流れを説明する。なお、本実施形態では、情報処理装置100において電源が投入されたことに応じて以降の処理が開始される。ただしこれに限らず、装置のロックが解除されたり、特定のアプリケーションが起動されたり、あるいは表示画像の描画が完了したことに応じてタッチ入力を認識する処理が開始されても構わない。
まず、ステップS201において、取得部121が入力領域102に対するタッチ点に関する情報を取得する。ここでは、ユーザが操作のために入力領域102に指をタッチさせたことをタッチパネルディスプレイ115のタッチセンサが検知し、取得部121は、タッチセンサから得られる情報を基に、タッチされた位置の情報を取得する。
ここで、図3は、ステップS201において実行される、タッチ点取得処理の流れを示すフローチャートである。
まず、ステップS301において、取得部121は、タッチセンサから通知されたタッチイベントが「TOUCH」であるか否かを判定する。本実施形態において用いるタッチセンサからは、入力領域102がタッチされていることを取得したとき、あるいは取得されていたタッチが離されたときにタッチイベントを通知される。ここでは、入力領域102がタッチされていることを取得したときにはタッチイベントとして「TOUCH」を、取得されていたタッチが離されたときにはタッチイベントとして「RELEASE」が取得部121に通知される。通知されたタッチイベントが「TOUCH」だと判定された場合(ステップS301でYES)には、ステップS302に進む。通知されたタッチイベントが「TOUCH」ではない、すなわち「RELEASE」であった場合(ステップS301でNO)には、ステップS307に進む。
ステップS302では、取得部121が、「TOUCH」が通知されたタッチ点と同じIDのタッチ点が既に取得されているか否かを判定する。取得部121は、第1保持部123に保持された情報を参照し、対応するIDが含まれているかを判定する。タッチ点のIDとは、取得部121が取得したタッチ点を識別するための識別情報である。本実施形態では、入力領域102を何番目にタッチした点かに基づき、取得順に1、2、…という番号のIDを割り当てる。同じIDのタッチ点が取得されていないと判定された場合(ステップS302でNO)には、処理はステップS303に進む。一方、同じIDのタッチ点が既に取得されていると判定された場合(ステップS302でYES)には、処理はステップS304に進む。
ステップS303において、取得部121は、「TOUCH」が取得されたタッチ点のID、座標、取得時刻の情報を第1保持部123に保持されている情報に新規追加する。なお、本実施形態において、位置の情報は、図1(a)に示したように、入力領域102の左上を原点とした座標平面に基づく座標(x,y)で示される。
ステップS303において、取得部121は、「TOUCH」が取得されたタッチ点のID、座標、取得時刻の情報を第1保持部123に保持されている情報に新規追加する。
また、ステップS304において、取得部121は、第1保持部123に保持されている情報のうち、「TOUCH」が取得されたタッチ点と同じIDのタッチ点の座標、取得時刻の情報を更新する。
次に、ステップS305では、取得部121が、第2保持部126に保持されたオブジェクトの情報を参照し、取得されたタッチ点の位置に表示されているオブジェクトのIDを特定し、第1保持部123に保持する。そして処理はタッチ入力を認識する処理(図2)にリターンする。
一方、ステップS301でNOと判定された場合、すなわち「TOUCH」以外のタッチイベントがタッチセンサから通知された場合、本実施形態ではすなわち「RELEASE」が通知されたことになる。従って、ステップS306では、取得部121が、第1保持部123に保持されていた情報のうち、「RELEASE」が取得されたタッチ点に対応するIDに関連付けられた位置、取得時刻、及び表示オブジェクトのID情報を、タッチ点のIDとともに削除する。そして処理はタッチ入力を認識する処理(図2)にリターンする。
ユーザのタッチ入力を認識する処理に戻ると、続くステップS202において、判定部122が、取得部121によって複数のタッチ点が取得されているかを判定する。この際、判定部122は、第1保持部123に保持された情報を参照し、保持されたIDの数からタッチ点数を求め、取得されているタッチ点の数が複数か否かを判定する。ステップS202において、複数のタッチ点が取得されていると判定された場合(ステップS202でYES)には、処理はステップS203に進む。複数のタッチ点が取得されていないと判定された場合(ステップS202でNO)には、処理はステップS208に進む。
ステップS203では、判定部122が、取得されている複数のタッチ点の少なくともいずれかの位置が、入力領域102上で予め設定された所定の範囲103に含まれるか否かを判定する。本実施形態の判定部122は、第1保持部123に保持された情報を参照し、保持されているタッチ点の座標の値と、予め設定された条件式に基づいて、少なくとも1つのタッチ点が所定の範囲103に含まれるかを判定する。取得されている複数のタッチ点の少なくともいずれかの位置が、所定の範囲に含まれると判定された場合(ステップS203でYES)には、ステップS204に進む。一方、取得されている複数のタッチ点の全ての位置が、所定の範囲内にないと判定された場合(ステップS203でNO)には、ステップS209に進む。
ステップS204では、判定部122が、所定の範囲103に含まれるタッチ点を、入力を無効とする候補とし、特定したタッチ点のIDに関連付けて無効候補フラグの値「TRUE」の情報を第1保持部123に保持させる。
ステップS205では、判定部122が、入力領域102に表示されているオブジェクトに基づいて、取得されているタッチ点による入力を有効とするか無効とするかを判定する処理が実行される。本実施形態では、所定の範囲103に含まれるタッチ点の位置に表示されているオブジェクトと、他のタッチ点の位置に表示されているオブジェクトとが関連付けられているかを、第2保持部126に保持されたオブジェクトの情報に基づいて判定する。
ここで、図4は、ステップS205において実行される、表示オブジェクトに基づく判定処理の流れを示すフローチャートである。
まず、ステップS401において、判定部122は、ステップS203において所定の範囲103に含まれることが確認されたタッチ点を1つ選択する。本実施形態では、判定部122は第1保持部123に保持された情報を参照し、無効候補フラグが「TRUE」であるタッチ点のIDを1つ取得する。本実施形態は、IDの番号が小さい順に無効候補フラグが「TRUE」であるものを探索し、順次1つずつ選択する。
次に、ステップS402において、判定部122は、選択されたタッチ点の位置に表示されているオブジェクトを特定する。本実施形態の判定部122は、第1保持部123に保持された情報を参照し、ステップS401で取得したタッチ点のIDに関連付けられた情報のうち、表示オブジェクトのIDを取得する。
ステップS403では、判定部122が、特定されたオブジェクトと、他のタッチ点の位置に表示されたオブジェクトが関連しているか否かを判定する。本実施形態では、第2保持部126が、ステップS402で判定部122が取得した表示オブジェクトのIDに関連付けて保持している情報を参照して、当該IDの表示オブジェクトに関連付けられたオブジェクトがあるか否かを判定する。そして、関連付けられたオブジェクトが存在した場合、関連付けられたオブジェクトのIDを特定し、第1保持部123に保持されたタッチ点の中に、当該IDの表示オブジェクトが関連付けられたタッチ点が存在するか否かを判定する。そして、当該IDの表示オブジェクトが関連付けられたタッチ点が存在した場合に、特定されたオブジェクトと、他のタッチ点の位置に表示されたオブジェクトが関連していると判定する。特定されたオブジェクトと、他のタッチ点の位置に表示されたオブジェクトが関連していると判定された場合(ステップS403でYES)には、ステップS405に進む。特定されたオブジェクトと、他のタッチ点の位置に表示されたオブジェクトが関連していないと判定された場合(ステップS403でNO)には、ステップS404に進む。
ステップS404では、判定部122が、ステップS401で選択されたタッチ点による入力が無効と判定し、無効候補フラグの値を「TRUE」で維持してステップS406に進む。
一方、ステップS405では、判定部122が、ステップS401で選択されたタッチ点による入力が有効であるべきと判定する。すなわち、当該タッチ点を、入力を無効とする候補のタッチ点から除外する。このとき、判定部122は、第1保持部123に保持された情報において、ステップS401で特定されたIDのタッチ点に関連付けられた無効候補フラグの値を「FALSE」に更新する。
ステップS406では、判定部122が、所定の範囲に含まれる全てのタッチ点を処理済みか否か判定する。本実施形態では、第1保持部123に保持されたタッチ点のうち、番号が最大のIDのタッチ点の情報までの探索が終了した場合に、所定の範囲103に含まれる全てのタッチ点を処理済みであると判定する。所定の範囲に含まれる全てのタッチ点を処理済みではないと判定された場合(ステップS406でNO)、ステップS401に戻って、無効候補フラグが「TRUE」であるタッチ点のうち、次にIDの番号が大きいタッチ点を選択する。所定の範囲に含まれる全てのタッチ点を処理済みであると判定された場合(ステップS406でYES)、判定処理は終了し、図2のフローチャートに戻る。
ユーザのタッチ入力を認識する処理に戻ると、続くステップS206では、認識部124が、判定部122の判定の結果、無効とされなかったタッチ点による入力を認識する。本実施形態の認識部124は、第1保持部123に保持された情報を参照し、無効候補フラグが「TRUE」ではない全てのタッチ点の座標入力として認識し、対応する処理を実行する。
そして、ステップS207において、表示制御部125が、認識部124によって認識された入力の結果を出力に反映する。本実施形態では、表示制御部125が、認識された入力よって指示された操作の結果を、タッチパネルディスプレイ115に表示される表示画像に反映し、出力する。
一方、ステップS208では、判定部122が、取得された1つのタッチ点が、判定部122によって既に無効とされたタッチ点であるか否かを判定する。取得されている1つのタッチ点が、他のタッチ点が取得されなくなった(リリースされた)ことにより、複数から1つに減少したタッチ点であれば、既に判定部122による判定が行われている。その場合に、入力を無効とする判定が行われたタッチ点は、引き続き無効とされることが望ましいため、ステップS207の判定を行う。取得された1つのタッチ点が、判定部122によって既に無効とされていた場合には、当該タッチ点が、情報処理装置100を支持するために入力領域102に触れた指によるタッチ点である可能性が高いので、本実施形態では、引き続き無効とする。従って、取得されたタッチ点が、判定部122によって既に無効とされたタッチ点であると判定された場合(ステップS208でYES)には、ステップS206に進む。一方で、取得された1つのタッチ点が、判定部122によって既に無効とされたタッチ点ではないと判定された場合(ステップS208でNO)には、ステップS209に進む。
ステップS209では、判定部122が、取得されている全てのタッチ点による入力を有効とすると判定し、判定結果を示す情報を認識部124に通知する。
なお、本実施形態では、タッチセンサがタッチを取得したときには「TOUCH」を、取得されていたタッチ点が解除されたときには「RELEASE」をタッチイベントとして通知するタッチパネルを用いたが、これに限らない。例えば、新たに入力領域102がタッチされた場合には「TOUCH_DOWN」、既に取得されていたIDのタッチ点の移動が取得された場合には「MOVE」、離された時には「TOUCH_UP」をタッチイベントとして通知するものでもよい。この場合、「TOUCH_DOWN」が通知された場合に、第1保持部123に保持される情報をIDに関連付けて新規追加する。そして、「MOVE」が通知された場合には同じIDに関連付けられた情報を更新し、「TOUCH_UP」が通知された場合に、同じIDに関連付けられた情報を削除すればよい。
このように、情報処理装置100は、入力装置であるタッチパネルで取得されている複数のタッチ点をIDによって識別して情報を管理する。従って、複数のタッチ点それぞれの動きを取得することができるので、それらのタッチ点に構成されるマルチタッチ操作を認識することができる。
ここで、具体的に、第1の実施形態による情報処理装置100をユーザが操作する操作例を、図5〜8を参照して説明する。
まず、図5は、オブジェクトの表示状態と関連付け情報の一例を示す。図5(a)は、情報処理装置100をカメラとして使用する場合に表示されるユーザインタフェースの状態の一例を示す。ここで、入力領域102には、図示されない撮像部によって撮像されている撮像画像500と、オブジェクト501、オブジェクト502、オブジェクト503が表示されている。これらのオブジェクトは、情報処理装置100のユーザインタフェースとして、それぞれカメラのズームレベルの調整機能、ISO感度の調整機能、シャッタ速度の調整機能(以下、「シャッタ速度」)を呼び出すためのアイコンの役割を有している。図5(b)は、ユーザがタッチ点504によって、オブジェクト501を指示したことにより、新たにオブジェクト505が表示された様子を示す。今、タッチ点504によって指示されたのはズームレベル調整機能(以下、単に「ズーム」という)を呼び出すアイコンであったため、オブジェクト505は、ズーム調整バーとしての役割を割り当てられる。同様に、オブジェクト505は、ISO感度の調整機能(以下、単に「ISO」という)に対応するオブジェクト502が指示された場合にはISO調整バーとしての役割を割り当てられる。そして、シャッタ速度調整機能(以下、単に「シャッタ速度」という)に対応するオブジェクト503が指示された場合にはシャッタ速度調整バーとしての役割を割り当てられる。
図5(c)は、第2保持部126が保持する情報の一例を示すテーブルであり、表示される各オブジェクトを識別するためのIDと、他のオブジェクトとの関連付け情報が格納されている。例えば、図5(b)に示したように、ズーム調整バーに対応するオブジェクト505は、「ズーム」に対応するオブジェクト501が指示されることに応じて表示される。従って、図5(c)では、「ズーム」に対応するIDが1のオブジェクトと、ズーム調整バーに対応するIDが1−1のオブジェクトは、関連付け情報として互いのIDが保持されている。「ISO」「シャッタ速度」に関しても同様である。
次に、図6は、図5で説明した情報処理装置100の操作例を示す。まず、図6(a)のように、情報処理装置100は図1(a)の状態から反時計方向に90度回転した状態であるとする。従って、タッチパネルディスプレイ115の入力領域102は、向かって左下を原点として、480[dot]×640[dot]の解像度の座標平面として位置情報を管理することができるものとする。さらに図6の例では、一例として、入力領域102の外縁から20[dot]の範囲が、所定の範囲103として予め定められている。また、図8(a)〜(c)は、図6(b)〜(d)の各状態において、取得部121によって取得され、第1保持部123に保持される情報の一例を示すテーブルである。
図6(b)は、ユーザが、入力領域102に表示されたオブジェクト501にタッチすることによって、タッチ点504が取得された状態を示す(ステップ201)。取得部121は、図8(a)に示されるように、1番目にタッチされたことを示すIDが1のタッチ点について、X座標が380[dot]、Y座標が10[dot]という位置座標と、その位置に表示されているオブジェクト501を示す1というIDを取得する。このとき、取得されているタッチ点は複数ではなく(ステップS202でNO)、既に無効とされたタッチ点でもないため(ステップS208でNO)、タッチ点504による操作が認識される(ステップS206)。従って、操作結果の出力として、図6(c)のように、ズーム調整バーであるオブジェクト505が表示される(ステップS207)。
次に図6(c)では、ユーザが、新たにオブジェクト505をタッチすることによって、タッチ点601が取得された様子を示す(ステップS201)。取得部121は、図8(b)のように、2番目にタッチされたことを示すIDが2のタッチ点について、X座標が80[dot]、Y座標が620[dot]という位置座標と、その位置に表示されているオブジェクト505を示す1−1というIDを取得する。このとき、取得されているタッチ点は複数であるので(ステップS202でYES)、判定部122によって、少なくとも1つのタッチ点の位置が所定の範囲103に含まれるかが判定される。今、IDが1のタッチ点及びIDが2のタッチ点は、いずれも、Y軸方向において、外縁から20[dot]の範囲に含まれる(ステップS203でYES)。従って、判定部122は、所定の範囲103に含まれる2つのタッチ点(ID=1、ID=2)を取得する(ステップS204)。そしてまず、IDが1のタッチ点を選択し(ステップS401)、その位置に表示されているIDが1のオブジェクト501に関連付けられたオブジェクトが存在するかを判定する(ステップS403)。この例では、図5(c)のテーブルに基づいて、IDが1−1のオブジェクト505が存在することを判定し、第1保持部123に保持された図8(b)のテーブルに基づいて、IDが2のタッチ点にIDが1−1のオブジェクトが関連づけられていると判定される。従って、特定されたオブジェクトと、他のタッチ点の位置に表示されたオブジェクトが関連している(ステップS403でYES)ので、IDが1のタッチ点による入力は有効と判定され、無効候補フラグは「FALSE」となる。同様に、IDが2のタッチ点による入力も有効であると判定され、無効候補フラグは「FALSE」となる(ステップS405)。なお、所定の範囲103に含まれる1つのタッチ点に関連づいた表示オブジェクトが、所定の範囲103に含まれる他のタッチ点の表示オブジェクトとして関連付けられていた場合に、当該タッチ点による入力を全て有効と判定してもかまわない。
図6(d)は、2点のタッチ点による入力は有効として判定されるために、引き続きズームレベルを調整する操作が入力されている情報処理装置100を示す。ここでは、IDが2のタッチ点601が、X軸の正方向に移動されたことに応じて、撮像画像がズームアップしている(ステップS207)。図8(c)は、このとき第1保持部123に保持されている情報の一例を示し、無効候補フラグがFALSEである2つのタッチ点による入力はいずれも有効とされているため、当該タッチ点による操作が認識されることがわかる。
次に、図7(a)〜(c)は、情報処理装置100において、撮像された人物の画像700を閲覧している様子を示す。ここで、画像700は、図5(a)の撮像画像500と同様、図5(c)のテーブルにおいてオブジェクトID=4が関連付けられている
図7(a)は、ユーザが、情報処理装置100を左手で支持した際に、親指が入力領域102に触れたことによって、タッチ点701が取得された状態を示す。取得部121は、図8(d)に示されるように、1番目にタッチされたことを示すIDが1のタッチ点について、X座標が220[dot]、Y座標が10[dot]という位置座標と、その位置に表示されている画像700を示すID=4を取得する。このとき、図6(b)の場合と同様の処理に沿って、タッチ点701による入力は有効とされる。ただし、この操作画面では、画像700をタッチする操作には、情報処理装置100が実行する処理が対応付けられていないため、出力される表示画像には変化がない。
次に、図7(b)は、ユーザが、入力領域102に表示される画像を変更する操作を行うために、入力領域102をさらにタッチした様子を示す。図8(e)は、このとき取得されているタッチ点について、第1保持部123に保持される情報の一例を示す。2番目にタッチされたことを示すIDが2のタッチ点702には、X座標が200[dot]、Y座標が600[dot]という位置座標と、その位置に表示されている画像700を示すID=4という情報が関連付けられる。
次に図7(b)では、ユーザが、入力領域102に表示される画像を変更する操作を行うために、入力領域102をさらにタッチしたタッチ点702が取得された様子を示す(ステップS201)。取得部121は、図8(e)のように、2番目にタッチされたことを示すIDが2のタッチ点702について、X座標が200[dot]、Y座標が600[dot]という位置座標と、その位置に表示されている画像700を示す4というIDを取得する。このとき、取得されているタッチ点は複数であるので(ステップS202でYES)、判定部122によって、少なくとも1つのタッチ点の位置が所定の範囲103に含まれるかが判定される。今、IDが1のタッチ点が、Y軸方向において、外縁から20[dot]の範囲に含まれる(ステップS203でYES)。従って、判定部122は、所定の範囲103に含まれるタッチ点(ID=1)を取得し(ステップS204)、その位置に表示されているIDが4の画像700に関連付けられたオブジェクトが存在するかを判定する(ステップS403)。第2保持部126に保持された図5(c)のテーブルに基づいて、IDが4の画像700には、関連付けられたオブジェクトが存在しないことが判定されると、タッチ点701による入力を無効とすると判定される(ステップS404)。従って、図8(e)では、IDが1のタッチ点の無効候補フラグは「TRUE」、IDが2のタッチ点の無効候補フラグは「FALSE」となる。
図7(c)は、有効となったタッチ点702によって、矢印方向にフリック操作(指を高速ではじくようにする操作)が入力された結果として、表示中の画像700がスライドされ、画像700と異なる風景の画像703が表示された様子を示す(ステップS207)。
以上のように、本実施形態によれば、タッチ操作の対象となる領域のうち、装置を支持するための指が接触してしまう可能性が高い範囲内でタッチ点を、入力として認識しない候補とし、候補となったタッチ点での表示内容に基づいて、認識するか否かを判定する。これにより、表示画面に表示可能な内容に制限を受けることなく、無効とすべきタッチ点を効率的に選択して、情報処理装置100の誤動作を低減できる。
<第2の実施形態>
第1の実施形態では、複数のタッチ点が取得されている場合には、タッチされた順序に関わらず、所定の範囲103に含まれるタッチ点に表示されたオブジェクトと、他のタッチ点に表示されるオブジェクトとに関連があるか否かに基づく処理を行った。それに対し、第2の実施形態では、取得されているタッチ点のうち最も新しいタッチ点(以下、「最新のタッチ点」と省略する)は、ユーザが新たな操作を開始するためにタッチした可能性が高いとして、その位置に関わらず入力を有効とする。なお、最新のタッチ点とは、タッチが開始された、あるいは、位置が移動されたことにより、最も遅い取得時刻が保持されているタッチ点である。所定の範囲103に含まれるタッチ点のうち、最新のタッチ点に表示されたオブジェクトと関連付けられたオブジェクトが表示されているタッチ点による入力は有効とする処理を行う。
第2の実施形態に係る情報処理装置100の外観、ハードウェア構成及び機能構成は、第1の実施形態の図1(a)〜(c)に対応する。ただし、第2の実施形態の判定部122は、所定の範囲103に含まれるうち、最新のタッチ点以外のタッチ点を、入力を無効とするタッチ点の候補とする。そして、当該候補とされたタッチ点それぞれの位置に、最新のタッチ点に表示されたオブジェクトとに関連があるオブジェクトが表示されていた場合には、当該タッチ点による入力を有効、表示されていない場合には当該タッチ点による入力を無効と判定する。その他の機能部が行う処理の内容は第1の実施形態に準じる。
図9は、変形例1において実行される、ユーザのタッチ入力を認識する処理を示すフローチャートである。図2と同番号が付されているステップでは、第1の実施形態と同様の内容の処理が実行されるため、重複する処理の詳細な説明を省略し、第1の実施形態と異なる点を中心に説明する。
第2の実施形態では、まず、ステップS901において、取得部121が入力領域102に対するタッチ点に関する情報を取得する。本実施形態では、後述する図10に示されるフローチャートに従って処理される。
図10のフローチャートにおいて、図3と同番号が付されているステップでは、第1の実施形態と同様の内容の処理が実行されるため、重複する処理の詳細な説明を省略し、第1の実施形態と異なる点を中心に説明する。
第2の実施形態では、ステップS304において、取得部121が、第1保持部123に保持されている情報のうち、取得されたタッチ点と同じIDのタッチ点の情報を更新する処理が完了すると、処理がステップS1001に進む。
ステップS1001では、取得部121が、取得したタッチ点は、以前に取得された位置から移動したタッチ点か否かを判定する。本実施形態では、ステップS304においてタッチ点の情報が更新される際に、取得部121が更新前後の位置情報が一致するか否かを示す情報を一時的に保持し、ステップS1001の判定に利用する。取得したタッチ点が、移動したタッチ点であると判定される場合(ステップS1001でYES)には、ステップS1002に進む。一方で、取得したタッチ点が、移動したタッチ点ではないと判定される場合(ステップS1002)には、ステップS305に進む。
また、第2の実施形態では、ステップS303において、取得部121が、第1保持部123に保持される情報に、タッチ点の情報を新規追加する処理が完了した場合にも、処理はステップS1002に進む。
ステップS1002では、取得部121が、取得されたタッチ点が最新のタッチ点であることを示す情報を更新する。本実施形態では、第1保持部123に保持されている、各タッチ点の情報において、最も取得時刻が新しいタッチ点のIDに、最新のタッチ点であることを示す情報として、最新フラグの値「TRUE」を関連付けて保持する。ステップS1002では、最新フラグの値「TRUE」を関連付けるタッチ点を更新して、ステップS305に進む。
ステップS305では、第1の実施形態と同様に、取得されたタッチ点の位置に表示されているオブジェクトのIDを特定し、第1保持部123に保持する。そして処理はタッチ入力を認識する処理(図2)に戻る。
また、第2の実施形態では、ステップS202において、判定部122が、取得部121によって複数のタッチ点が取得されていると判定した場合(ステップS202でYES)には、処理はステップS902に進む。
ステップS902では、判定部122が、最新のタッチ点以外のタッチ点の位置が、所定の範囲103に含まれるか否かを判定する。本実施形態では、第1保持部123に保持された情報を参照し、最新フラグが「TRUE」でないタッチ点の位置情報が、所定の範囲103に含まれるか否かを判定する。所定の範囲103に含まれるタッチ点が存在した場合、最新のタッチ点以外のタッチ点の位置が、所定の範囲103に含まれると判定され(ステップS902でYES)、ステップS903に進む。
ステップS903では、判定部122が、最新タッチ点以外のタッチ点のうち、所定の範囲に含まれるタッチ点を、入力を無効とするタッチ点の候補として特定し、そのIDに無効候補フラグの値「TRUE」を関連付けて保持する。
ステップS904では、図11のフローチャートに従って、タッチ点の位置での表示オブジェクトに基づく判定処理が実行される。
図11のフローチャートにおいて、まず、ステップS1101では、判定部122が、最新のタッチ点の位置に表示されているオブジェクトを特定する。判定部122は、第1保持部123に保持されている情報を参照し、最新フラグが「TRUE」であるタッチ点に関連付けられた、表示オブジェクトを特定し、IDを取得する。
次に、ステップS1102では、判定部122が、ステップS1101で特定されたオブジェクトに関連付けられた他の表示オブジェクトが存在するか否かを判定する。本実施形態では、第2保持部126に保持された情報を参照し、取得したIDのオブジェクトに関連付け情報として、他の表示オブジェクトのIDが保持されているか否かを判定する。特定されたオブジェクトに関連付けられた他の表示オブジェクトが存在すると判定された場合(ステップS1102でYES)には、当該表示オブジェクトのIDを取得して、ステップS1103に進む。一方、特定されたオブジェクトに関連付けられた他の表示オブジェクトが存在しないと判定された場合(ステップS1103でNO)には、図9のフローチャートに戻る。
ステップS1103では、判定部122が、特定されたオブジェクトに関連付けられたオブジェクトが、所定の範囲内に含まれるタッチ点の位置に表示されているかを判定する。本実施形態では、ステップS1102で取得した表示オブジェクトのIDが、第1保持部123に保持された情報に含まれている場合、特定されたオブジェクトに関連付けられたオブジェクトが、所定の範囲内に含まれるタッチ点の位置に表示されていると判定する。特定されたオブジェクトに関連付けられたオブジェクトが、所定の範囲内に含まれるタッチ点の位置に表示されていると判定された場合(ステップS1103でYES)、ステップS1104に進む。一方、所定の範囲内に含まれるタッチ点の位置に表示されていないと判定された場合(ステップS1103でNO)、図9のフローチャートに戻る。
ステップS1104では、判定部122が、特定されたオブジェクトに関連付けられたオブジェクトが表示されている少なくとも1つのタッチ点を特定する。本実施形態では、第1保持部123に保持されている情報を参照し、ステップS1102で取得した表示オブジェクトのIDに関連付けられている少なくとも1つのタッチ点のIDを取得する。
ステップS1105では、判定部122が、特定された少なくとも1つのタッチ点による入力を有効とすると判定する。すなわち、当該タッチ点を、入力を無効とする候補のタッチ点からから除外する。従って、取得したIDに関連付けられた無効候補フラグの値を「FALSE」に更新し、図9のフローチャートに戻る。
なお、これに続く、ステップS206以降の処理は、第1の実施形態と同様に実行されるため、詳細な説明を省略する。
ここで、具体的に、第1の実施形態による情報処理装置100をユーザが操作する例を、図12〜14を参照して説明する。
まず、図12は、第1の実施形態において、図5及び図6を利用して説明したのと同じ、情報処理装置100のカメラ機能のズーム操作の例である。ここでも、第2保持部126は、図5(c)に示されるテーブルを保持し、表示される各オブジェクトを識別するためのIDと、他のオブジェクトとの関連付け情報が格納されているとする。また、図12(a)は図6(b)、図12(b)は図6(c)の操作状況にそれぞれ対応する。図12(c)〜(e)は、図8(a)〜(c)に対応する。
図12(a)は、ユーザが、入力領域102に表示されたオブジェクト501にタッチすることによって、タッチ点1201が取得された状態を示す(ステップS901)。ここで取得部121は、図12(c)に示されるように、1番目にタッチされたIDが1のタッチ点について、X座標が380[dot]、Y座標が10[dot]という位置座標と、その位置に表示されているオブジェクト501を示す1というIDを取得する。そしてさらに、この時点での最新のタッチ点であることを示す情報として、最新フラグを「TRUE」としてIDが1のタッチ点に関連付ける(ステップS1002)。このとき、取得されているタッチ点は複数ではなく(ステップS202でNO)、既に無効とされたタッチ点でもないため(ステップS208でNO)、タッチ点504による操作が認識される(ステップS206)。従って、操作結果の出力として、図6(c)のように、ズーム調整バーであるオブジェクト505が表示される(ステップS207)。
次に図12(b)では、ユーザが、新たにオブジェクト505をタッチすることによって、タッチ点1202が取得された様子を示す(ステップS901)。取得部121は、図12(d)のように、2番目にタッチされたIDが2のタッチ点について、X座標が80[dot]、Y座標が620[dot]という位置座標と、その位置に表示されているオブジェクト505を示す1−1というIDを取得する。そしてさらに、この時点での最新のタッチ点であることを示す情報として最新フラグ「TRUE」をIDが2のタッチ点に関連付け、IDが1のタッチ点に関連付けられた最新フラグの値を「FALSE」に更新する(ステップS1002)。このとき、取得されているタッチ点は複数であるので(ステップS202でYES)、判定部122によって、最新のタッチ点以外のタッチ点であるIDが1のタッチ点の位置が、所定の範囲103に含まれるかが判定される。今、ID1のタッチ点1201は、いずれも、Y軸方向において、外縁から20[dot]の範囲に含まれる(ステップS902でYES)。従って、判定部122は、所定の範囲103に含まれるタッチ点(ID=1)に、無効候補フラグ「TRUE」を関連付けて保持する(ステップS903)。次に、最新のタッチ点1202に表示されているオブジェクトのIDとして、1−1が特定される(ステップS1101)。さらに、図5(c)に示される、第2保持部126が保持している情報が参照されることで、IDが1−1のオブジェクトに関連付けられたオブジェクト501(ID=1)が特定される(ステップS1102でYES)。ここでは第1保持部123が保持している情報である図12(d)のテーブルの表示オブジェクトのIDの格納部分に、オブジェクト501を示す1の値が含まれる(ステップS1103でYES)。図12(d)のテーブルに基づいて、当該タッチ点がタッチ点1202(ID=1)と特定され (ステップS1104)、タッチ点1202による入力は有効とされる。そして、図12(e)に示されるように、IDが1のタッチ点に関連付けられた無効候補フラグの値が「FALSE」に更新される。従って、図6で説明した第1の実施形態と同様、タッチ点1201とタッチ点1202の両方による入力が認識される(ステップS206)。
次に、図13(a)〜(d)は、情報処理装置100において、ブラウザのスクロール操作を行う例を示す。また、図14は、ここで説明するスクロール操作に関して、第1保持部123と第2保持部126に保持される情報の一例を示す。
まず、図13(a)は、情報処理装置100に表示されるユーザインタフェースの状態の一例を示す。ここで、入力領域102には、一例としてテキスト情報を含むWEBページを表示する画像1300とスクロールバー1301とが表示される。スクロールバー1301は、情報処理装置100のユーザインタフェースを構成する部品として、WEBページの全体長に対する相対位置を指定することによって、ブラウザが表示するWEBページの一部分を変更させる役割を有している。また、画像1300部分を上下にフリック操作することによっても、WEBページのうち入力領域102に表示される一部分は変更される。図14(a)は、第2保持部126が保持する情報の一例を示すテーブルであり、表示される各オブジェクトを識別するためのIDと、他のオブジェクトとの関連付け情報が格納されている。ここでは、ブラウザの表示領域であるIDが1の画像1300と、スクロールバー1301に対応するIDが2のオブジェクトの情報が格納されている。そして、この2つのオブジェクトはそれぞれ独立したタッチ操作で操作されるため、互いに関連付けがなされていない。
図13(b)は、ユーザが、情報処理装置100を左手で支持した際に、親指が入力領域102に触れたことによって、タッチ点1302が取得された状態を示す。取得部121は、図14(b)に示されるように、1番目にタッチされたことを示すIDが1のタッチ点のX座標10[dot]、Y座標320[dot]、その位置に表示されているブラウザの表示領域である画像1300を示すIDの1を取得する(ステップS901)。この際、この時点での最新のタッチ点であることを示す情報として、最新フラグを「TRUE」としてIDが1のタッチ点に関連付ける(ステップS1002)。このとき、取得されているタッチ点は複数ではなく(ステップS202でNO)、既に無効とされたタッチ点でもないため(ステップS208でNO)、タッチ点1302による操作が認識される(ステップS206)。ただし、タッチ点1302は移動されていないため、スクロールのためのフリック操作は認識されず、表示内容に変化はない(ステップS207)。
次に図13(c)では、ユーザが、新たにスクロールバー1301をタッチすることによって、タッチ点1303が取得された様子を示す(ステップS901)。取得部121は、図14(c)のように、2番目にタッチされたIDが2のタッチ点について、X座標が470[dot]、Y座標が100[dot]という位置座標と、その位置に表示されているスクロールバー1301を示す2というIDを取得する。そしてさらに、この時点での最新のタッチ点であることを示す情報として最新フラグ「TRUE」をIDが2のタッチ点に関連付け、IDが1のタッチ点に関連付けられた最新フラグの値を「FALSE」に更新する(ステップS1002)。このとき、取得されているタッチ点は複数であるので(ステップS202でYES)、判定部122によって、最新のタッチ点以外のタッチ点であるIDが1のタッチ点の位置が、所定の範囲103に含まれるかが判定される。今、IDが1のタッチは、X軸方向において、外縁から20[dot]の範囲に含まれる(ステップS902でYES)。従って、判定部122は、所定の範囲103に含まれるタッチ点(ID=1)に、無効候補フラグ「TRUE」を関連付けて保持する(ステップS903)。次に、最新のタッチ点1302に表示されているオブジェクトのIDとして、2が特定される(ステップS1101)。さらに、図14(a)に示される、第2保持部126が保持している情報が参照されることで、IDが2のオブジェクトに関連付けられたオブジェクトが存在しないと判定される(ステップS1102でNO)。従って、タッチ点1302(ID=1)の無効候補フラグの値「TRUE」と、タッチ点1303(ID=2)の無効候補フラグの値「FALSE」は維持される。タッチ点1303による入力が、スクロールバー1301の位置を指定する操作が認識されるため(ステップS206)、画像1300の内容が一部変化する(ステップS207)。
図13(d)は、タッチ点1303による入力が有効として判定される(ステップS206)ために、ブラウザが表示する内容がスクロールされ、画像1300が変化する様子を示す。ここでは、IDが2のタッチ点1303が、Y軸の正方向に移動されたことに応じて、WEBページが上方向にスクロール移動して、表示される部分が移動するように表示される(ステップS207)。図14(d)は、このとき第1保持部123に保持されている情報の一例を示し、無効候補フラグがFALSEであるタッチ点1303(ID=2)による操作が認識されることがわかる。
図13(a)で説明したブラウザのスクロール操作のように、スクロールバーが表示されている場面において、スクロールバーは、入力領域102の外縁付近に表示されることが一般的であり、多く実施されている。また、スクロールバー以外にも、画面の中央に表示される情報を阻害しないように、ユーザインタフェースに係るオブジェクトを入力領域の外縁近くに表示させる場合が多々ある。従って、画面の外縁近くに位置するタッチ点による入力を一律に無効にする制御方法や、当該タッチ点が移動した場合に入力を有効とする制御方法では、図13(c)に示した例のような時に、ユーザのタッチ操作を正確に認識できない場合が生じる。また、ユーザインタフェースを表示させる位置に制限を受ける場合が生じる。それに対し、本実施形態では、操作が開始されるタイミングを考慮した処理を行うため、表示内容に制限を受けることなく、入力領域102の外縁付近におけるタッチ操作も認識することが可能となる。
以上説明したように、本実施形態では、入力領域102が同時にタッチされることによって取得される複数のタッチ点のうち、最も新しく取得されたタッチ点による入力を、その位置関わらず有効と判定する。そして、所定の範囲103に含まれるため、入力を無効とする候補となるタッチ点のち、最新のタッチ点の位置に表示されたオブジェクトに関連するオブジェクトが表示される位置のタッチ点による入力は有効と判定する。このように判定する理由は、最新のタッチ点は、ユーザが新しくタッチ操作を開始する意図により、タッチされている可能性が高いからである。同様に、当該タッチ点と関連するオブジェクトが表示されている位置をタッチしているタッチ点も、開始されるタッチ操作に関連する可能性が高いからである。このように、タッチ点が開始された順番に応じて、入力を無効とするタッチ点の候補を絞ることで、無効とするか有効とするかを判定する処理の負荷を低減することができる。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (14)

  1. タッチパネルディスプレイ上のタッチ操作を認識する情報処理装置であって、
    タッチ操作の対象領域においてタッチされている複数のタッチ点を取得する取得手段と、
    前記タッチパネルディスプレイにおける、前記取得手段が取得した複数のタッチ点のそれぞれに対応する位置に表示されたオブジェクトを特定する特定手段と、
    前記特定された複数のオブジェクトの関係に基づいて、前記取得手段が取得した複数のタッチ点のうち、所定の範囲に含まれるタッチ点の入力を無効とするか判定する判定手段とを備える
    ことを特徴とする情報処理装置。
  2. 前記判定手段は、前記取得手段が取得した複数のタッチ点のうち、前記所定の範囲内に含まれるタッチ点を、当該タッチ点による入力を無効とする候補のタッチ点であると判定し、前記特定手段が特定したオブジェクトのうち、互いに関連するオブジェクトが表示された位置をタッチするタッチ点を、前記候補から除外することで、前記判定を行うことを特徴とする請求項1に記載の情報処理装置。
  3. 前記対象領域に表示される1つ以上のオブジェクト間の関連を示す情報を保持する保持手段を更に備え、
    前記判定手段は、前記保持手段に保持されている情報に基づいて、前記判定を行うことを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記所定の範囲とは、前記タッチ操作の対象領域の外縁から所定の距離の範囲であることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記判定手段は、前記取得された複数のタッチ点のうち、最も新しいタッチ点ではないタッチ点を前記処理の対象とする、
    ことを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記判定手段は、前記取得手段が取得した複数のタッチ点のそれぞれによる入力を有効とするか無効とするかを判定した後、前記複数のタッチ点が1つに減少した場合、当該1つのタッチ点に対する判定結果を維持する、
    ことを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. コンピュータに読み込ませ実行させることで、前記コンピュータを請求項1乃至6のいずれか1項に記載の情報処理装置として動作させるためのプログラム。
  8. 請求項7に記載のプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
  9. タッチパネルディスプレイ上のタッチ操作を認識する情報処理装置の制御方法であって、
    取得手段により、タッチ操作の対象領域においてタッチされている複数のタッチ点を取得する取得工程と、
    特定手段により、前記タッチパネルディスプレイにおける、前記取得工程で取得した複数のタッチ点のそれぞれに対応する位置に表示されたオブジェクトを特定する特定工程と、
    判定手段により、前記特定された複数のオブジェクトの関係に基づいて、前記取得工程で取得した複数のタッチ点のうち、所定の範囲に含まれるタッチ点の入力を無効とするか判定する判定工程とを有する
    ことを特徴とする情報処理装置の制御方法。
  10. 前記判定工程では、前記取得手段が取得した複数のタッチ点のうち、前記所定の範囲内に含まれるタッチ点を、当該タッチ点による入力を無効とする候補のタッチ点であると判定し、前記特定工程で特定したオブジェクトのうち、互いに関連するオブジェクトが表示された位置をタッチするタッチ点を、前記候補から除外することで、前記判定を行うことを特徴とする請求項9に記載の情報処理装置の制御方法。
  11. 前記対象領域に表示される1つ以上のオブジェクト間の関連を示す情報を保持する保持手段を更に備え、
    前記判定手段は、前記保持手段に保持されている情報に基づいて、前記判定を行うことを特徴とする請求項9または10に記載の情報処理装置の制御方法。
  12. 前記所定の範囲とは、前記タッチ操作の対象領域の外縁から所定の距離の範囲であることを特徴とする請求項9乃至11のいずれか1項に記載の情報処理装置の制御方法。
  13. 前記判定手段は、前記取得された複数のタッチ点のうち、最も新しいタッチ点ではないタッチ点を前記処理の対象とする、
    ことを特徴とする請求項9乃至12のいずれか1項に記載の情報処理装置の制御方法。
  14. 前記判定手段は、前記取得表示で取得した複数のタッチ点のそれぞれによる入力を有効とするか無効とするかを判定した後、前記複数のタッチ点が1つに減少した場合、当該1つのタッチ点に対する判定結果を維持する、
    ことを特徴とする請求項9乃至13のいずれか1項に記載の情報処理装置の制御方法。
JP2012287245A 2012-12-28 2012-12-28 情報処理装置およびその制御方法 Active JP6066725B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012287245A JP6066725B2 (ja) 2012-12-28 2012-12-28 情報処理装置およびその制御方法
US14/141,338 US9430089B2 (en) 2012-12-28 2013-12-26 Information processing apparatus and method for controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012287245A JP6066725B2 (ja) 2012-12-28 2012-12-28 情報処理装置およびその制御方法

Publications (3)

Publication Number Publication Date
JP2014130450A true JP2014130450A (ja) 2014-07-10
JP2014130450A5 JP2014130450A5 (ja) 2016-02-12
JP6066725B2 JP6066725B2 (ja) 2017-01-25

Family

ID=51016656

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012287245A Active JP6066725B2 (ja) 2012-12-28 2012-12-28 情報処理装置およびその制御方法

Country Status (2)

Country Link
US (1) US9430089B2 (ja)
JP (1) JP6066725B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016066254A (ja) * 2014-09-25 2016-04-28 シャープ株式会社 タッチ検出装置を備えた電子装置
EP3073363A1 (en) 2015-03-24 2016-09-28 Fujitsu Limited Electronic device, control method and control program
JP2017122984A (ja) * 2016-01-05 2017-07-13 キヤノン株式会社 電子機器及びその制御方法
WO2023018110A1 (ko) * 2021-08-10 2023-02-16 삼성전자주식회사 핸들 부분을 이용한 어플리케이션의 이동 방법 및 장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9671896B2 (en) * 2014-11-18 2017-06-06 Toshiba Tec Kabushiki Kaisha Interface system, object for operation input, operation input supporting method
CN104731498B (zh) * 2015-01-30 2016-07-13 努比亚技术有限公司 移动终端防误触控方法及装置
US9804717B2 (en) * 2015-03-11 2017-10-31 Synaptics Incorporated Input sensing and exclusion
CN104777979B (zh) * 2015-03-31 2017-03-08 努比亚技术有限公司 终端及其触控操作方法和装置
TWI602098B (zh) * 2016-09-05 2017-10-11 Salt Int Corp 觸控感測裝置及觸碰點的感測方法
JP6816594B2 (ja) * 2017-03-22 2021-01-20 富士ゼロックス株式会社 入力装置及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011028345A (ja) * 2009-07-22 2011-02-10 Olympus Imaging Corp 条件変更装置、カメラ、携帯機器、およびプログラム
JP2011048665A (ja) * 2009-08-27 2011-03-10 Sony Corp 情報処理装置、情報処理方法、及びプログラム
WO2012060589A2 (en) * 2010-11-03 2012-05-10 Samsung Electronics Co., Ltd. Touch control method and portable terminal supporting the same
JP2012093932A (ja) * 2010-10-27 2012-05-17 Kyocera Corp 携帯端末装置及び処理方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090174679A1 (en) * 2008-01-04 2009-07-09 Wayne Carl Westerman Selective Rejection of Touch Contacts in an Edge Region of a Touch Surface
US20130227413A1 (en) * 2012-02-24 2013-08-29 Simon Martin THORSANDER Method and Apparatus for Providing a Contextual User Interface on a Device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011028345A (ja) * 2009-07-22 2011-02-10 Olympus Imaging Corp 条件変更装置、カメラ、携帯機器、およびプログラム
JP2011048665A (ja) * 2009-08-27 2011-03-10 Sony Corp 情報処理装置、情報処理方法、及びプログラム
JP2012093932A (ja) * 2010-10-27 2012-05-17 Kyocera Corp 携帯端末装置及び処理方法
WO2012060589A2 (en) * 2010-11-03 2012-05-10 Samsung Electronics Co., Ltd. Touch control method and portable terminal supporting the same

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016066254A (ja) * 2014-09-25 2016-04-28 シャープ株式会社 タッチ検出装置を備えた電子装置
EP3073363A1 (en) 2015-03-24 2016-09-28 Fujitsu Limited Electronic device, control method and control program
US10055050B2 (en) 2015-03-24 2018-08-21 Fujitsu Limited Touch panel detection area modification
JP2017122984A (ja) * 2016-01-05 2017-07-13 キヤノン株式会社 電子機器及びその制御方法
US10530989B2 (en) 2016-01-05 2020-01-07 Canon Kabushiki Kaisha Electronic apparatus and method for controlling the same
WO2023018110A1 (ko) * 2021-08-10 2023-02-16 삼성전자주식회사 핸들 부분을 이용한 어플리케이션의 이동 방법 및 장치

Also Published As

Publication number Publication date
JP6066725B2 (ja) 2017-01-25
US20140184572A1 (en) 2014-07-03
US9430089B2 (en) 2016-08-30

Similar Documents

Publication Publication Date Title
JP6066725B2 (ja) 情報処理装置およびその制御方法
US9483172B2 (en) Information processing device, information processing method, and computer-readable recording medium which records program
US9582188B2 (en) Method for adjusting display area and electronic device thereof
CN109643210B (zh) 使用悬停的设备操纵
US9317197B2 (en) Storage medium storing information processing program to be executed by computer of information processor to perform a process according to an input to touch surfaces
JP6054892B2 (ja) 複数のディスプレイに対するアプリケーション画像の表示方法、電子機器およびコンピュータ・プログラム
US8633909B2 (en) Information processing apparatus, input operation determination method, and input operation determination program
JP5620440B2 (ja) 表示制御装置、表示制御方法及びプログラム
US20140325443A1 (en) Method and apparatus for operating menu in electronic device including touch screen
KR20170041219A (ko) 렌더링된 콘텐츠와의 호버 기반 상호작용
KR20130127146A (ko) 다중 터치에 대응하는 기능을 처리하기 위한 방법 및 그 전자 장치
JP5664147B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JPWO2013094371A1 (ja) 表示制御装置、表示制御方法およびコンピュータプログラム
KR20140112296A (ko) 다중 터치에 대응하는 기능을 처리하기 위한 방법 및 그 전자 장치
JP5814147B2 (ja) 入力装置、入力制御方法、および入力制御プログラム
JP2016110518A (ja) 情報処理装置、その制御方法、プログラム、及び記憶媒体
US20150185975A1 (en) Information processing device, information processing method, and recording medium
US10691287B2 (en) Touch panel type information terminal device, information input processing method and program thereof
JP5820414B2 (ja) 情報処理装置及び情報処理方法
JP2014078116A (ja) ユーザインタフェース装置、ユーザインタフェース方法及びプログラム
JP6284459B2 (ja) 端末装置
JP2015127953A (ja) 携帯端末、及びその制御方法、プログラム
EP2977878B1 (en) Method and apparatus for displaying screen in device having touch screen
KR101165388B1 (ko) 이종의 입력 장치를 이용하여 화면을 제어하는 방법 및 그 단말장치
JP2014153833A (ja) 電子機器、文字列操作方法、及びプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151217

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160913

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160914

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161104

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161220

R151 Written notification of patent or utility model registration

Ref document number: 6066725

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151