JP6245938B2 - Information processing apparatus and control method thereof, computer program, and storage medium - Google Patents
Information processing apparatus and control method thereof, computer program, and storage medium Download PDFInfo
- Publication number
- JP6245938B2 JP6245938B2 JP2013222524A JP2013222524A JP6245938B2 JP 6245938 B2 JP6245938 B2 JP 6245938B2 JP 2013222524 A JP2013222524 A JP 2013222524A JP 2013222524 A JP2013222524 A JP 2013222524A JP 6245938 B2 JP6245938 B2 JP 6245938B2
- Authority
- JP
- Japan
- Prior art keywords
- touch
- unit
- recognition target
- target surface
- target
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Position Input By Displaying (AREA)
- User Interface Of Digital Computer (AREA)
Description
本発明は認識対象とタッチ対象面の近接状態に基づいて、当該認識対象によって行われるタッチ操作を認識する技術に関する。 The present invention relates to a technique for recognizing a touch operation performed by a recognition target based on a proximity state between the recognition target and a touch target surface.
近年では、AR(Augmented Reality)やMR(Mixed Reality)といった環境において、物理的には存在しないタッチ対象面(仮想面)に対するタッチ操作が行われる場面がある。また、プロジェクションによってユーザインタフェース(以下、UI)を壁や机、物体の表面など任意のタッチ対象面に投影し、投影したUIに対してタッチ操作が行われる場面がある。以下、特に、UIを構成する部品や動画像を投影対象とする面(例えば、壁面や机の上面)に投影し、投影した内容に対するユーザの操作を実現するUIの形態を投影UIという。投影UIにおいては、タッチ状態における認識対象の動作に基づいて、行われたタッチ操作の種別を判定する。これによって、従来のタッチパネルUIにおけるタップ(画面中の1箇所を軽くたたくようにタッチする操作で、マウス操作におけるクリックに相当)やドラッグ(タッチしたまま指示位置を動かす)と同等の操作が実現されている。以下、タップやドラッグ等といった操作の種別を操作種別という。 In recent years, in an environment such as AR (Augmented Reality) and MR (Mixed Reality), there is a scene where a touch operation is performed on a touch target surface (virtual surface) that does not physically exist. Further, there is a scene in which a user interface (hereinafter referred to as UI) is projected onto an arbitrary touch target surface such as a wall, a desk, or an object surface by projection, and a touch operation is performed on the projected UI. Hereinafter, in particular, a UI form that projects a part or a moving image constituting a UI onto a projection target surface (for example, a wall surface or an upper surface of a desk) and realizes a user operation on the projected content is referred to as a projection UI. In the projection UI, the type of the touch operation performed is determined based on the recognition target operation in the touch state. As a result, an operation equivalent to a tap on a conventional touch panel UI (touching with a single tap on the screen, equivalent to a click on a mouse operation) or dragging (moving the indicated position while touching) is realized. ing. Hereinafter, the type of operation such as tap or drag is referred to as an operation type.
投影UIや仮想面に対するタッチ操作を認識する場合、ステレオカメラや距離画像センサ等を用い、タッチ対象面と、操作を行う指示部として認識すべき認識対象(例えばユーザの指)との間の距離に基づき、両者が接触しているか否かを判断することが多い。具体的には、タッチ対象面と、タッチ対象面に近接している認識対象との間の距離に所定の閾値を設ける。そして、当該距離が閾値より小さければ、タッチ対象面がタッチされている状態を示す「タッチ状態」、閾値より大きければタッチ対象面がタッチされていない状態を示す「非タッチ状態(リリース状態)」であるという判定を行う。以下、このように、認識対象とタッチ操作の対象面の近接状態に基づいてタッチ状態と非タッチ状態を判定する処理をタッチ判定、タッチ判定にいる閾値をタッチ判定閾値と記載する。 When recognizing a touch operation on a projection UI or a virtual surface, a distance between a touch target surface and a recognition target (for example, a user's finger) to be recognized as an instruction unit for performing the operation using a stereo camera, a distance image sensor, or the like. In many cases, it is determined whether or not both are in contact with each other. Specifically, a predetermined threshold is provided for the distance between the touch target surface and the recognition target close to the touch target surface. If the distance is smaller than the threshold, a “touch state” indicating that the touch target surface is touched, and if the distance is greater than the threshold, a “non-touch state (release state)” indicating a state where the touch target surface is not touched. It is determined that Hereinafter, the process for determining the touch state and the non-touch state based on the proximity state between the recognition target and the target surface of the touch operation will be described as touch determination, and the threshold for touch determination will be referred to as a touch determination threshold.
このように、タッチ対象面と認識対象の間の近接状態に応じてユーザによるタッチ操作を判定する方法として、特許文献1が提案されている。特許文献1では、センサと認識対象の間の距離に応じて表示内容を変化させることで、ユーザによる操作が、装置によってどのように認識されるかを教示し、ユーザの入力を支援することを可能にしている。 As described above, Patent Document 1 has been proposed as a method of determining a touch operation by a user according to a proximity state between a touch target surface and a recognition target. Patent Document 1 teaches how the operation by the user is recognized by the device by changing the display content according to the distance between the sensor and the recognition target, and supports the user's input. It is possible.
投影UIや仮想面に対するタッチ操作の場合、タッチ操作の対象となる面は必ずしも平面である必要はない。しかしながら、特許文献1では、センサと認識対象の間の距離とあらかじめ設定された基準との比較を行うものであった。すなわち、タッチ対象面の高さは一様であることが前提とされている。しかしながら、タッチ操作の種別によっては、認識対象は操作中も平行移動を続けるため、タッチ対象面の高さが一様でない場合には、認識対象の高さが変化しなくても、タッチ対象面との間隔が変わってしまうことがある。 In the case of a touch operation on a projection UI or a virtual surface, the surface that is the target of the touch operation is not necessarily a flat surface. However, in Patent Document 1, the distance between the sensor and the recognition target is compared with a preset reference. That is, it is assumed that the height of the touch target surface is uniform. However, depending on the type of touch operation, the recognition target continues to move during the operation. Therefore, if the height of the touch target surface is not uniform, the touch target surface may be changed even if the height of the recognition target does not change. The interval between and may change.
本発明は、上記課題を考慮したものであり、タッチ対象面が、高さが一様な平面ではない場合でも、認識対象とタッチ対象面の近接状態に基づいて複数の種別のタッチ操作を認識する場合の誤認識を低減することを目的とする。 The present invention takes the above-mentioned problems into consideration, and recognizes a plurality of types of touch operations based on the proximity state of the recognition target and the touch target surface even when the touch target surface is not a uniform flat surface. The purpose is to reduce misrecognition.
上記課題を解決するため、本発明は、認識対象によるタッチ操作を認識する情報処理装置であって、前記認識対象によって示される指示位置を検出する検出手段と、基準面の表面と前記基準面に載置された物体の表面とを含む、高さが一様でないタッチ対象面の、当該高さを含む表面形状を示す情報を取得する取得手段と、前記タッチ対象面における、前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を、前記表面形状を示す情報に基づいて異ならせて設定する設定手段と、前記検出手段が検出した指示位置が、前記設定手段が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定手段と、を備え、前記判定手段は、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記取得手段が取得した前記タッチ対象面の表面形状を示す情報のうち、前記認識対象が移動してきた経路上で得た高さを示す情報に基づいて、前記判定を行うことを特徴とする。 In order to solve the above problems, the present invention provides an information processing apparatus for recognizing a touch operation by a recognition target, a detection unit that detects an indication position indicated by the recognition target, a reference surface, and a reference surface. An acquisition unit that acquires information indicating a surface shape including a height of a touch target surface having a non-uniform height including the surface of the placed object, and the detection unit detects the touch target surface. A setting unit that sets a condition for determining whether the position corresponding to the designated position is touched by the recognition target based on the information indicating the surface shape, and the instruction detected by the detection unit position, when satisfying said setting means has set, and a determination means to have been touched by the touch object surface the recognition target, the determination means before While the recognition object is moving while touching the touch object surface, of the information showing the surface shape of the touch object surface obtained by the obtaining unit, the high the recognition target is obtained on path has moved The determination is performed based on information indicating the above.
本発明によれば、タッチ対象面が一様な平面ではない場合でも、認識対象とタッチ対象面の近接状態に基づいて複数の種別のタッチ操作を認識する場合の誤認識を低減することが可能となる。 According to the present invention, even when the touch target surface is not a uniform plane, it is possible to reduce misrecognition when recognizing a plurality of types of touch operations based on the proximity state of the recognition target and the touch target surface. It becomes.
以下、本発明の実施形態について図面を参照して詳細に説明する。なお、以下で説明する実施形態は、本発明を具体的に実施した場合の一例を示すものであり、これに限るものではない。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In addition, embodiment described below shows an example at the time of implementing this invention concretely, and is not restricted to this.
<第1の実施形態>
第1の実施形態として、平面上に物体が載置された状態で、平面上および物体上の両方に対するタッチ操作が認識される例を説明する。特に、本実施形態に係る情報処理装置では、平面上および物体上の両者を経由するドラッグ操作を認識可能とする。なお、本実施形態では、情報処理装置に対する操作を行う指示部として認識すべき認識対象の一例として、ユーザの手及びその指先を挙げて説明する。ただし、本実施形態は認識対象をスタイラスペンや差し棒などの操作器具に置き換えても適応可能である。
<First Embodiment>
As a first embodiment, an example will be described in which a touch operation on both a plane and an object is recognized while the object is placed on the plane. In particular, in the information processing apparatus according to the present embodiment, it is possible to recognize a drag operation via both a plane and an object. In the present embodiment, a user's hand and its fingertip will be described as an example of a recognition target to be recognized as an instruction unit that performs an operation on the information processing apparatus. However, the present embodiment can be applied even if the recognition target is replaced with an operation instrument such as a stylus pen or a pointing stick.
図1(A)は、本実施形態で説明する情報処理装置100を設置したシステムの外観の一例を示している。図1(A)に示すように情報処理装置100には投影装置105が搭載されており、自由に投影対象とする面を設定できる。テーブル101上には物体102が置かれている。の例の場合は、情報処理装置100を、テーブル101の上面および物体102の上面に対して投影ができるように設置していることを示している。ここで、図1(A)の103a〜dは、投影装置105によってテーブル上面および物体上面に投影された電子データやボタンなどUIを構成する部品(以下、まとめて表示オブジェクトと記載する)を示している。本実施形態では、テーブル101に載置された物がない初期状態では、テーブル101表面がタッチ対象面となり、テーブル101に物が載置されている場合は、テーブル101および載置された物の上側の面がタッチ対象面である。初期状態におけるタッチ対象面を、基準面といい、情報処理装置100は、認識対象と基準面との距離に基づいて、タッチ対象面が認識対象によってタッチされているかを判断する。本実施形態では、ユーザが手指104を使ってタップ操作やドラッグ操作を行い、前記表示オブジェクトに対して入力操作を行う場合について説明する。なお、本実施形態において、ドラッグ操作とは、単に指示位置が移動される操作と、移動が開始されたときの指示位置に表示されているオブジェクトを移動させる操作とを総称するものである。一般に、これらを区別する場合には、単に指示位置が移動される操作はムーブ操作と表現される。また本実施形態ではテーブル101および物体102に投影対象とする例を述べるが、投影対象はテーブルおよびそこに置かれた物体以外でもよい。例えば壁およびそこに張り付けられた物体に投影して利用しても構わない。また、投影対象面自体が凹凸を有ししている場合にも利用可能である。本実施形態の情報処理装置100には、投影装置105の他に、赤外光発光部106と赤外カメラ107が搭載されている。赤外光発光部106から照射された赤外光はテーブル101と物体102およびユーザの手指104に反射し、赤外反射光として赤外カメラにおいて撮像される。情報処理装置100は、この赤外画像を各種画像処理することによってタッチ対象面となるテーブル上面と物体上面の表面形状(凹凸状態)および認識対象となる手指の三次元位置を計測し、その結果からタッチ判定を行う。可視光カメラ108は、テーブル上に載置された物体や紙媒体等の読み取り対象を読み取った読み取り画像を撮像する。
FIG. 1A shows an example of the appearance of a system in which an
本実施形態では、赤外光発光部106と赤外カメラ107を利用して、テーブル上面と物体上面からなるタッチ対象面の三次元位置および手指の三次元位置を計測する方法について記載する。しかし、タッチ対象面の三次元位置および手指の三次元位置を計測する方法はこの限りではなく、代わりにステレオカメラや距離画像センサを利用することで、三次元位置を計測する方法を適応することも可能である。
In this embodiment, a method for measuring the three-dimensional position of the touch target surface including the table upper surface and the object upper surface and the three-dimensional position of the finger using the infrared
図1(B)は、本実施形態における情報処理装置100のハードウェア構成図である。同図において、CPU110は、バス113を介して接続する各デバイスを統括的に制御する。CPU110は、読み出し専用メモリ(ROM)112に記憶された処理ステップやプログラムを読み出して実行する。オペレーティングシステム(OS)をはじめ、本実施形態に係る各処理プログラム、デバイスドライバ等はROM112に記憶されており、ランダムアクセスメモリ(RAM)111に一時記憶され、CPU110によって適宜実行される。RAM111は、高速にアクセス可能なCPU110の主メモリ、ワークエリア等の一時記憶領域として用いられる。ここでOSおよび各処理プログラム等は図示されていない外部ストレージに記憶されていてもよく、その場合は電源投入時にRAM111に適宜読み込まれ、CPU110によって起動される。また、ディスプレイI/F114は、情報処理装置100内部で生成される表示オブジェクト(表示画面)を投影装置105が処理可能な信号に変換する。入力I/F115は、赤外カメラ107が生成する赤外画像を入力信号として受信し、情報処理装置100が処理可能な情報に変換する。出力I/F116は、情報処理装置100内部で生成される赤外発光命令を赤外光発光部106が処理可能な信号に変換する。さらに、可視光カメラ108は、本実施形態ではタッチ対象面を上から撮像するように設置され、主に操作エリアに載置されたドキュメントに対する書画カメラの役割を果たす。具体的には、所定の面に載置された紙媒体や物体等、認識対象以外のオブジェクトの、カメラ108に向けられた面を可視光撮影し、その撮像画像を取得する。これを本実施形態では、読み取り対象を「読み取る」という。読み取りによって得られた撮像画像は、読み取り対象物以外の部分を除いた画像や、操作によって指示された部分だけが抽出された部分画像として加工され、読み取り画像として記憶される。本実施形態では、情報処理装置100で投影するデジタルデータは図示されていない外部ストレージに格納されている。さらに、読み取りによって得られた読み取り画像は、外部ストレージに記憶される。外部ストレージとしては、ディスクデバイスやフラッシュメモリ、ネットワークやUSBなどの各種I/Fを介して接続される記憶装置が考えられる。また、赤外カメラ107で生成された赤外画像データはRAM111で一時保存され、CPU110によって適宜処理され、破棄される。ただし、適宜必要なデータは図示されていない外部ストレージに蓄積しても構わない。
FIG. 1B is a hardware configuration diagram of the
図2(A)は、本実施形態における情報処理装置100の機能ブロック図である。情報処理装置100は、画像取得部200、面情報取得部201、位置検出部202、設定部203、最大値取得部204、タッチ判定部205、特定部206、表示制御部207、読み取り制御部208から構成される。これらの各機能部は、CPU110が、ROM112に格納されたプログラムをRAM111に展開し、後述する各フローチャートに従った処理を実行することで実現されている。また例えば、CPU110を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。
FIG. 2A is a functional block diagram of the
画像取得部200は、赤外カメラ107で撮像されたタッチ対象面の赤外強度画像を、入力画像として取得する。本実施形態では、情報処理装置100は、起動されている(電源がONである)間は、赤外光発光部106から投影装置105の投影方向と同じ方向に赤外光を常時照射する。投影装置105の投影範囲にあるテーブル上に物体が置かれると、赤外光はテーブル101の表面および物体表面からなるタッチ対象面で反射される。またさらに、タッチ対象面と赤外カメラ107の間の空間にユーザの手などの認識対象が挿入された場合には、認識対象の表面によって反射される。赤外カメラ107は、このように反射された赤外光を撮像し、赤外強度画像を得る。以後、この赤外強度画像を入力画像として記載する。
The
面情報取得部201は、画像取得部200にて取得した入力画像を基に、タッチ対象面で反射された赤外光の強度を解析することによって、タッチ対象面の表面形状を示す情報を取得する。タッチ対象面の表面形状情報とは、タッチ対象面の表面上の各点の三次元座標情報であり、少なくともタッチ対象面上の各点と基準面に交わる方向の高さ情報を含む。赤外カメラ107に撮像される強度画像の各画素は、赤外光の輝度値に相当する。赤外反射強度は、輝度値が大きいほど反射光が強い、すなわち赤外光発光部106に近い位置で反射されたと言え、輝度が小さいほど反射光が弱い、すなわち赤外光発光部106に遠い位置で反射されたと言える。従って本実施形態では、このように赤外光の輝度値を、赤外光発光部106との距離の情報として利用する。つまり、入力画像は距離画像として扱われる。面情報取得部201は、入力画像の画素の位置と輝度値を基に、タッチ対象面の各点の、基準面に平行な二次元面における座標と高さ情報(高さ方向の座標軸における座標)を取得する。
The surface
位置検出部202は、認識対象によって指示される指示位置を示す三次元位置情報を検出する。本実施形態では、画像取得部200が取得した入力画像から、背景差分法あるいはフレーム間差分法などにより動体が写る領域を抽出する。本実施形態では、認識対象として人の手指を認識するので、動体領域が、予め記憶された人の手の形状モデルと類似する場合に認識対象として認識し、指先とみなされる位置の座標、指示位置として検出する。タッチ対象面に平行な二次元面における座標は、入力画像の画素の位置から、高さ方向の情報は、指先とみなされる位置周辺で反射された赤外光の輝度値の値から導出される。以下では、指示位置の3次元座標を検出することを、単に「指示位置を検出する」と記載する。なお、動体の検出方法、及び人の手の認識方法、指先の検出方法は、ここで例示したものに限らない。
The
設定部203は、認識対象によってタッチ対象面がタッチされていると決定する(タッチ状態と非タッチ状態を区別する)ための条件となる、基準面からの高さの閾値を設定する。本実施形態では、閾値は、面情報取得部201で取得したタッチ対象面の表面形状を示す情報と、位置検出部202で検出した指示位置、および、特定部206によって特定される現在継続中の操作種別とに基づいて設定される。本実施形態の設定部203は、タッチ対象面の表面の高さに一定値を加算した高さを、基準の閾値として設定する。さらに、ユーザがドラッグ操作中の場合には、各時点までのドラッグ操作の経路(認識対象が移動してきた経路)上で最大の高さを有する点に設定された基準の閾値を、その後のタッチ判定に用いる閾値として設定する。ドラッグ操作中以外の場合には、基準の閾値を使ってタッチ判定が行われる。そこで本実施形態の設定部203は、最大値取得部204を備える。最大値取得部204は、ユーザがドラッグ操作中の場合に、当該ドラッグ操作のそれまでの経路上で設定された基準閾値のうちの最大値を取得する機能をもつ。
The
タッチ判定部205は、位置検出部202で検出したと、設定部203で設定した基準面からの高さとを利用して、認識対象によってタッチ対象面がタッチされているか否かの判断、すなわちタッチ判定を行う。具体的には、指示位置の高さが、その位置に設定された基準面からの高さの閾値よりも小さい場合には、認識対象はタッチ対象面をタッチしているタッチ状態、閾値よりも大きければタッチしていない非タッチ状態であると判定する。つまり、本実施形態では、認識対象が実際にタッチ対象面に接触しているかに関わらず、認識対象が所定の条件を満たすだけタッチ対象面に近接した状態にあることが認識できたことをもって、認識対象がタッチ対象面にタッチしているとみなす。そして、その状態において行われる操作をタッチ操作と表現する。ただし、実際にはタッチ対象面をタッチせず、近接した状態で行われる操作(ホバー操作と呼ばれる)を認識する場合にも、条件の程度を変化させることで、本発明を適応し、高さが一様ではない面に対する操作の誤認識を低減することができる。本実施形態では、指示位置の高さが、その位置に設定された基準面からの高さの閾値と一致する場合は、タッチ状態であると判定するが、これに限らない。高さの閾値に対して、指示位置の高さが閾値未満の場合にタッチ状態と判定されるか、閾値以下の場合にタッチ状態と判定されるかは適宜選択されればよい。
The
特定部206は、タッチ判定部205で、タッチ状態と判定されている間の指示位置の動き、及びタッチ状態と非タッチ状態とが反転するタイミングに基づいて、ユーザが情報処理装置100に入力するタッチ操作の種別を特定する。本実施形態では、少なくともタップ操作とドラッグ操作とを区別して特定する。そして、特定された種別を示すイベントと、種別を特定する根拠となった指示位置の情報とを、表示制御部207や読み取り制御部208等に通知する。従って例えば、タップ操作が入力された位置に、装置に対して読み取りの実行を指示するコマンドが発生するような操作に関わるUI部品が投影されていれば、当該コマンドが発生され、読み取り制御部208に伝えられる。また、UI部品が移動するドラッグ操作が入力されれば、UI部品を移動して投影させるべき位置が表示制御部207に伝えられる。
The specifying
表示制御部207は、特定部206が特定したタッチ操作に対する情報処理装置100の応答をユーザに提示するため、投影装置105に投影させる表示画像を生成し、投影装置105に出力する。
The
読み取り制御部208は、ユーザ操作に応じて可視光カメラ108を制御し、読み取りのための撮像を行わせるタイミングや、読み取り対象へのフォーカスやズームレベルを調整する。
The
以下、本実施形態における情報処理装置100が実行する処理の流れを図3、図4のフローチャートを用いて詳細に説明する。図3は、情報処理装置100が実行するタッチ操作の認識処理の一例を示すフローチャートである。本実施形態では、上述したように、情報処理装置100の電源が起動されている状態では、常に入力画像の撮像が行われており、連続して撮像された画像同士の比較からテーブル上に何かしらの変化が生じたことを認識可能な状態にある。本実施形態では、ユーザによってテーブル101上に物体102が置かれたことで初期状態(テーブル上に何も置かれていない状態)に対して変化が生じたことに応じ、図3のフローチャートが開始される。また、別途置かれたものが何かを認識する処理を実行し、認識結果に応じた投影UIを表示させるなどした状態で、フローチャートを開始してもいい。
Hereinafter, the flow of processing executed by the
まず、ステップS100において、画像取得部200が、赤外カメラ107によって撮像された入力画像を取得する。なお、ここで取得する入力画像は、赤外光発光部106によって情報処理装置100からテーブル101方向に照射された赤外光が、テーブル101および物体102の表面で反射された赤外反射光を、赤外カメラ107によって撮像した画像である。本実施形態では、情報処理装置100が起動している間は常に入力画像の撮像が行われているため、ステップS100の処理は、撮像されている映像のうち、その時点での最新のフレームに相当する静止画像を取得することを示す。
First, in step S <b> 100, the
ステップS101において、面情報取得部201が、ステップS100にて取得したタッチ対象面の赤外強度画像からタッチ対象面の表面形状を示す情報を取得する。表面形状を示す情報には、少なくともタッチ対象面の表面の高さ情報が含まれる。本実施形態では、テーブル上面の一点を基準点(原点)とした場合の、タッチ対象面の各点の三次元座標を、表面形状を示す情報とする。三次元座標情報は、タッチ対象面の全xy座標について、赤外強度画像の対応する画素の輝度から変換式を利用するなどしてz方向の垂直距離を算出することによって取得する。本実施形態では、図1(A)に示されるように三次元の座標軸が設定されているものとする。
In step S101, the surface
本実施形態では、以下に示すステップS102からステップS108を繰り返して操作種別の特定を行う。以下、ステップS102からステップS108までの一連の処理を、特定シーケンスとして記載する。 In the present embodiment, the operation type is specified by repeating steps S102 to S108 described below. Hereinafter, a series of processing from step S102 to step S108 will be described as a specific sequence.
まず、ステップS102において、画像取得部200が、入力画像を取得する。ステップS102で入力画像を取得する目的は、認識対象であるユーザの手を検出することである。本実施形態では、ステップ100と同様ステップS102の処理は、赤外カメラ107で常時撮像されている映像のうち、その時点での最新のフレームに相当する静止画像を取得することを示す。
First, in step S102, the
次に、ステップS103において、位置検出部202が、ステップS102にて取得した入力画像から指示位置を検出する処理を行う。そして、指示位置が検出されたか(検出に成功したか)を判定する。本実施形態では、背景差分法を用い、例えばステップS100で取得した入力画像(ユーザの手が写っていないものとする)と、ステップS102で取得した入力画像の差分となる領域を抽出する。さらに、抽出された領域の形状と人の手のモデルとのマッチングを取る。マッチング処理の結果、抽出された差分領域が、1本だけ指を伸ばした人の手であるとみなされる場合、そのうち延ばされた指先の位置を、指示位置として検出する。なお、例えば抽出された領域のうち、赤外カメラ107の撮影範囲の外郭から最も遠い点を、指示位置として検出するなどの方法を用いても良い。検出処理の結果、指示位置が検出された場合(ステップS103でYES)はステップS104に進む。指示位置が検出された場合(ステップS103でNO)はステップS105に進む。
Next, in step S103, the
ステップS104において、設定部203が、タッチ判定処理に用いる指示位置の高さの閾値(タッチ判定閾値HT)を設定する。本実施形態では、ステップS103にて検出した指示位置のxy座標と、ステップS101にて取得したタッチ対象面の表面形状を示す情報、および、前回までのタッチ操作の認識結果から現在ドラッグ操作中であるか否かを示す情報を利用して閾値を設定する。本実施形態の設定部203はまず、タッチ対象面の各点におけるタッチ判定で使用される高さ閾値は、当該点におけるタッチ対象面の表面の高さに一定値を加算した値を基準の閾値と設定する。さらに、設定部203は、ドラッグ操作中の状態では、ドラッグ操作の経路の各点において設定された基準の閾値のうち、最大の閾値を、実際のタッチ判定で使用する閾値として設定する。タッチ判定の閾値設定処理の詳細は後述する。
In step S <b> 104, the
ステップS105では、タッチ判定部205が、ステップS103で検出した指示位置と、ステップS104で設定したタッチ判定閾値HTを用いてタッチ判定処理を行う。具体的には、指先が検出されており、かつ指示位置のz座標がH以下であるならば「タッチ状態」と判定し、それ以外であれば「非タッチ状態」と判定する。本実施形態のタッチ判定部205は、タッチ判定を行うたびに、タッチ判定の結果と、判定の根拠となった指示位置の位置情報をRAM111に保持する。そして少なくとも、最新の2回分のタッチ判定の結果と、判定結果の根拠となった指示位置の位置情報を蓄積する。本実施形態では、最新の2回分のタッチ判定結果のうち、最後の判定結果が「タッチ状態」で、その直前の判定結果が「非タッチ状態」であった場合は、その時点でタッチ操作が開始されたとみなす。その場合、RAM111において、最後の判定結果の根拠となった指示位置の情報を「タッチ開始位置」であることを示す情報とともに保持する。タッチ開始位置の位置情報は、最新の2回分のタッチ判定に関する情報とは別に、開始されたタッチ操作が終了されるまで保持され続ける。
In step S105, the
ステップS106では、特定部206が、ドラッグ操作がなされている途中か否かを判定する。具体的には、まず、最後のタッチ判定の結果が「タッチ状態」であり、かつ、xy平面における、タッチ開始位置と最後に検出された指示位置の間の距離が、閾値D以下であれば、その時点は「ドラッグ操作がなされている途中である」と判定する。以下では、ドラッグ操作がなされている途中の状態を「ドラッグ中」、そうではない状態を「非ドラッグ中」と表記する。なお、閾値Dは、ユーザが、タッチ対象面にタッチした状態のまま、操作のために指を平行移動させたか否かを区別するための距離の閾値である。例えば、ユーザは、タッチ対象面上の同じ位置をタッチしている間でも、体が極小さく動いてしまうことがある。また、赤外発光部106と指の位置関係や赤外強度画像の解像度(分解能)によっては、認識対象の位置が固定されていても、検出される指示位置の位置に誤差が生じることがある。従って、そのような小さな体の動きや、検出の誤差による指示位置の変化と、ユーザが意思をもって指を動かしたことによる指示位置の平行移動とを区別するために、閾値Dによる判定を行う。つまり本実施形態では、タッチ対象面上をタッチした指を、タッチ状態のまま閾値D以上の距離平行移動させない限り、ドラッグ操作は認識されない。本実施形態の特定部206は、タッチ判定の結果が「非タッチ状態」から「タッチ状態」に移行してから初めて「ドラッグ操作がなされている途中である」と判定された場合、ドラッグ操作の開始直後であることを示す情報をRAM111に保持する。例えばフラグ等の情報として、前回の判定結果が「非ドラッグ中」であり、かつ今回の判定結果が「ドラッグ中」である場合、例えばドラッグ開始フラグを「1」と設定して保持し、それ以外の場合はフラグを「0」に設定する。なおこの情報は、後述する閾値設定処理において使用される。
In step S106, the specifying
次に、ステップS107において、特定部206が、ユーザによって入力された操作を特定する。本実施形態では、これまでのステップS105及び、ステップS106の処理においてRAM111に蓄積された情報に基づいて操作種別を判定する。例えば、最新の2回分のタッチ判定の結果が「非タッチ状態」であれば「操作なし」、すなわち情報処理装置100に対してタッチ操作は入力されていないと特定する。また、最後のタッチ判定結果が「非タッチ状態」であって、その直前のタッチ判定結果が「タッチ状態」で「非ドラッグ中」と判定されていた場合、特定部206は、情報処理装置100に対してタップ操作が入力されたと特定する。また例えば、最後のタッチ判定結果が「タッチ状態」で、「ドラッグ中」であると判定されていれば、情報処理装置100には「ドラッグ操作」が入力されていると特定する。最後のタッチ判定結果が「非タッチ状態」で、その直前のタッチ判定結果が「タッチ状態」でかつ「ドラッグ中」であると判定されていれば、情報処理装置100入力された「ドラッグ操作終了」したと特定する。最後のタッチ判定結果が「タッチ状態」であって、その直前のタッチ判定結果が「タッチ状態」で「非ドラッグ中」と判定されていた場合、特定部206は、「タップ操作中」とみなす。ただし、この後で指示位置が平行移動される可能性があるため、「タップ操作中」という状態は、タップあるいはドラッグ操作が開始された直後を示す。従って、特定部206によって「タップ操作中」であると特定された後で、「ドラッグ中」と判定されることがあれば「ドラッグ操作」が、「ドラッグ中」と判定されることなく「非タッチ状態」に移行すれば「タップ操作」が最終的に特定される。本実施形態では、特定部206が、特定した操作種別、および操作状態に応じたイベントと、最後に検出された指示位置の位置情報とを、表示制御部207や読み取り制御部208の、情報処理装置100の出力を制御する機能部に通知する。
Next, in step S107, the specifying
ステップS108では、情報処理装置100の出力を制御する機能部が、入力された操作に対して応答する。例えば、ステップS107において「ドラッグ操作中」と特定された場合、表示制御部207が、ドラッグ操作に応じて表示オブジェクトが移動されるように表示するための表示画像を生成し、プロジェクタ104に出力する。また例えば、「タップ操作」が特定され、その位置が情報処理装置100に読み取りを実行させるコマンドに相当するGUIのUI部品の位置であった場合、読み取り制御部208が、可視光カメラ108を制御して読み取り画像を取得する。
In step S108, the functional unit that controls the output of the
ステップS109において、情報処理装置100が、この時点でのタッチ対象面に対するタッチ操作認識処理を継続するか否かを判定する。具体的には、ユーザのタップ操作によって、「操作終了指示」のコマンドが入力されたかを検出する。処理を継続すると判定される場合(ステップS109でNO)はステップS102へ戻る。処理を継続しないと判定された場合と判定される場合(ステップS109でYES)、上記処理を終了する。また例えば、ユーザのタップ操作によって「リセット」のコマンドが入力された場合には、ステップS100に戻って図3のフローチャートを繰り返してもよい。この場合、ユーザがタッチ対象面に変更を加えても(物体を取り除く、あるいは変える等)新たに表面形状の情報を取得して、適切なタッチ判定の閾値を設定することができる。また、電源がOFFされた場合には、タッチ操作認識処理のどの段階にあっても、全ての処理を中断する。
In step S109, the
次に、図4のフローチャートを用いて、ステップS104において実行される閾値設定処理を詳細に説明する。 Next, the threshold value setting process executed in step S104 will be described in detail using the flowchart of FIG.
まず、ステップS104のタッチ判定の閾値設定処理が開始されると、ステップS200において、設定部203が、ステップS103において検出された指示位置に相当するタッチ対象面の高さHOFを取得する。具体的には、ステップS101にて取得された、タッチ対象面の表面形状を示す情報から、ステップS103にて検出した指示位置のxy座標対応する座標のz座標の値を取得し、これを指示位置におけるタッチ対象面高さHOFをとする。
First, when the threshold setting process for touch determination in step S104 is started, in step S200, the
次に、ステップS201において、設定部203が、ステップS103において検出された指示位置におけるタッチ判定の基準の閾値HTFを取得する。本実施形態では、ステップS200にて取得した指示位置におけるタッチ対象面高さHOFに一定の値を加算することにより、指示位置におけるタッチ判定閾値HTFをする。ただし、HOFを変数とする他の変換式を用いたり、ルックアップテーブルを参照したりすることにより、基準となる閾値を取得してもかまわない。
Next, in step S201, the
ここで、本実施形態において設定される基準の閾値HTFの例を、図5を用いて説明する。図5の(A)および(B)は、それぞれ、図1(a)に示すテーブル101と物体102の表面をタッチ対象面とする場合に設定される閾値の分布を、z軸、x軸、y軸それぞれの方向から見た様子を示す。
Here, an example of the reference threshold value HTF set in the present embodiment will be described with reference to FIG. (A) and (B) in FIG. 5 show threshold value distributions set when the surfaces of the table 101 and the
図5(A)の例では、指示位置におけるタッチ対象面高さHOFに一定値を加算した値を指示位置におけるタッチ判定の基準閾値HTFとしている。つまり、テーブル101上では、テーブル上面から一定の高さ上方を、タッチ判定閾値500a、物体102上では物体上面から一定の高さ上方を、タッチ判定閾値500bと設定する。このように基準となる閾値HTFを設定した場合、物体上でのタップ操作は、テーブル上でのタップ操作よりも物体の高さの分大きな閾値に基づいて判定されるので、物体を置いたことでタップ操作が認識されなくなるといった問題を生じさせない。
In the example of FIG. 5A, a value obtained by adding a certain value to the touch target surface height H OF at the designated position is used as the reference threshold value H TF for touch determination at the designated position. That is, on the table 101, a certain height above the table upper surface is set as the touch
図5(B)の例では、ステップS103で検出された指示位置の周囲の複数の点について、タッチ対象面の高さHOFを取得し、それらの平均値に一定値を加算することで、基準閾値HTFを設定している。この場合、物体の境界付近においても、閾値HOFの大きさが連続となったタッチ判定閾値510を設定できる。従って物体の境界付近の指示位置が、検出誤差や指の微小な動きなどにより物体の境界をまたぐようにぶれたとしても、安定したタッチ判定の結果を得ることができるという効果がある。
In the example of FIG. 5B, the height H OF of the touch target surface is acquired for a plurality of points around the designated position detected in step S103, and a constant value is added to the average value thereof. A reference threshold HTF is set. In this case, it is possible to set the touch
タッチ判定の基準となる閾値の設定方法として2つの例を示したが、方法はこの限りではなく、タッチ対象面情報から各種変換式等を用いて様々なタッチ判定閾値を導出することができる。 Although two examples have been shown as the threshold value setting method used as a reference for touch determination, the method is not limited to this, and various touch determination threshold values can be derived from touch target surface information using various conversion formulas.
ここまで、指示位置xy座標から一意に導出できる閾値HTFを基準閾値と取得することを説明した。取得した基準閾値を、実際にタッチ判定に用いる閾値として設定することで、高さが一様ではないタッチ対象面に対するタッチを判定することができる。なお、さらにその他の条件に応じで、実際にタッチ判定に用いる閾値を選択的に設定することもできる。本実施形態では、続くステップS202〜ステップS208において、前回の操作特定シーケンスにおけるタッチ判定結果やドラッグ判定結果に応じて、実際にタッチ判定に用いる閾値HTFを切り替える。 So far, it has been described that the threshold value HTF that can be uniquely derived from the designated position xy coordinates is acquired as the reference threshold value. By setting the acquired reference threshold value as a threshold value that is actually used for touch determination, it is possible to determine a touch on a touch target surface whose height is not uniform. Note that a threshold value actually used for touch determination can be selectively set according to other conditions. In the present embodiment, followed by the step S202~ step S208, in response to the touch determination result and drug determination result in the previous operation specific sequence actually switch the threshold H TF used for touch determination.
本実施形態では、前回の操作シーケンスのステップS106において、「非ドラッグ中」と判定された場合には、基準閾値として設定された閾値に基づいてタッチ判定を行う。そして「ドラッグ中」と判定されていた場合には、ドラッグ操作のそれまでの経路において設定されていた基準閾値のうち、最大の値を、実際にタッチ判定に用いる閾値として設定する。つまり、認識対象(ここでは指先)が移動してきた経路上で、タッチ対象面の高さが最大となった位置での基準閾値を、実際にタッチ判定に用いる閾値として設定する。これにより、テーブル上と物体上の両方を経由するドラッグ操作中において、意図に反して指先がタッチ対象面から大きく離れてしまうことで、ドラッグ操作が中断されてしまうという問題を回避できる。 In the present embodiment, when it is determined that “not dragging” in step S106 of the previous operation sequence, the touch determination is performed based on the threshold set as the reference threshold. If it is determined as “dragging”, the maximum value among the reference threshold values set in the route until the drag operation is set as a threshold value actually used for touch determination. That is, the reference threshold value at the position where the height of the touch target surface is maximized on the route along which the recognition target (here, the fingertip) has moved is set as the threshold value actually used for touch determination. Thereby, during the drag operation via both the table and the object, it is possible to avoid the problem that the drag operation is interrupted because the fingertip is largely separated from the touch target surface unintentionally.
本実施形態では、ステップS201において指示位置のタッチ判定の基準となる閾値HTFを取得すると、次にステップS202において、設定部203が、ドラッグ操作中か否かを判定する。すなわち、認識対象がタッチ対象面をタッチしたまま移動しているか否かを判定する。この判定は、前回の操作特定シーケンスのステップS106にて判定したドラッグ判定結果の参照によって行う。ドラッグ判定結果が「ドラッグ中」の場合はステップS203へ進み、「非ドラッグ中」の場合はステップS208へ進む。
In the present embodiment, when the threshold value HTF that is a reference for touch determination of the designated position is acquired in step S201, the
ステップS203では、最大値取得部204が、ドラッグ開始直後か否かの判定を行う。この判定は、前回の特定シーケンスのステップS106にて設定、保持した、ドラッグ開始直後か否かを示すフラグなどの情報の参照によって行う。ドラッグ開始直後であればステップS204へ進み、ドラッグ開始直後でなければステップS205へ進む。
In step S203, the maximum
ステップS204では、最大値取得部204が、RAM111に保持されている最大閾値HTMAXの値を初期化する。ここでは、以降のステップで必ず更新されるよう、例えば0などの値で初期化する。
In step S < b > 204, the maximum
ステップS205では、最大値取得部204が、ステップS202で取得された基準の閾値HTFと、RAM111に保持されている最大閾値HTMAXの大きさを比較し、基準閾値の方が大きいかを判定する。ステップS103で検出された指示位置での基準閾値HTFが最大閾値HTMAXより大きいと判定された場合(ステップS205でYES)はステップS206へ進む。指示位置での基準閾値HTFが最大閾値HTMAXより大きくないと判定された場合(ステップS205でNO)は、ステップS206を省略してステップS207に進む。
In step S205, the maximum
ステップS206では、最大値取得部204が、最大閾値HTMAXの値を指示位置での基準閾値HTFに更新する。
In step S206, the maximum
ステップS207では、設定部203が、実際にタッチ判定に使用する閾値HTとして、最大閾値HTMAXを設定する。これにより、本実施形態では、ドラッグ操作のそれまでの経路において、タッチ対象面が最大の高さとなる点での基準閾値を、タッチ判定をするための閾値として使用することになる。これにより、例えばユーザの指先が、物体上を経てテーブル上までドラッグ操作を行う際に、物体の境界を越えたことで突然タッチ対象面から指先が離れてしまったとしても、ドラッグ操作の認識が中断されることがない。
In step S207, the
一方、ステップS208では、設定部203が、実際にタッチ判定に使用する閾値HTとして、ステップS201で取得した基準の閾値HTFを設定する。
On the other hand, in step S208, the
ステップS207かステップS208のいずれかの閾値設定処理が完了したら、処理は図3のフローチャートにリターンする。 When the threshold setting process in either step S207 or step S208 is completed, the process returns to the flowchart of FIG.
ここで、図6及び図7を参照して、本実施形態のようにドラッグ中か否かに応じて、選択的にタッチ判定の閾値を設定する処理の具体例と効果を詳しく説明する。 Here, with reference to FIGS. 6 and 7, specific examples and effects of processing for selectively setting a threshold for touch determination according to whether or not dragging is performed as in the present embodiment will be described in detail.
図6(A)〜(C)は、テーブル101の上面とテーブル上に置かれた物体102の上面とを含む、一様な平面でないタッチ対象面上でのドラッグ操作の様子を示す図(z軸に垂直な方向からみた断面図)である。ステップS201の処理で取得される基準閾値HTFは、基準面であるテーブル101上では閾値600a、物体102上では閾値600bとなる。なおここでは図5(A)のパターンで取得された基準閾値を例示するが、もちろん図5(B)やその他の方法によって設定された基準閾値であっても構わない。
FIGS. 6A to 6C are diagrams (z) showing the state of the drag operation on the touch target surface that is not a uniform plane, including the upper surface of the table 101 and the upper surface of the
図6(A)において、手指601a、601b、601c、601d、601e、601f、601gは、この順に動かされたユーザの手指104の位置を示す。指示位置602a、602b、602c、602d、602e、602f、602gはそれぞれ、手指601a、601b、601c、601d、601e、601f、601gのときに検出される指示位置である。図6(A)の場合、601c〜601eにかけて、テーブル101上から開始されて物体102上を経由するドラッグ操作が入力されている。ここで図7は、ドラッグ操作を行った際に取得できるデータと判定結果の一例を示す表である。図7(A)は図6(A)に示された操作例に対応する。
In FIG. 6A,
まず、手指601a及び手指601bの状態では、検出される指示位置602aの高さは閾値600aより大きいため、ステップS105のタッチ判定において「非タッチ状態」と判定される。タッチ判定結果が「非タッチ状態」であるため、ステップS106のドラッグ中か否かの判定において「非ドラッグ中」と判定され、結果としてステップS107の操作判定において「操作なし」と判定される。次に、手指601cの状態では、検出される指示位置602cの高さは閾値600aより小さいため、「タッチ状態」と判定される。また、この時点の指先位置が、タッチ開始位置として保持される。続くステップS106のドラッグ操作中かの判定においては、タッチ開始位置からの移動距離が0であるため「非ドラッグ状態」と判定され、結果としてステップS107の操作判定において「タップ中」と判定される。手指601dの状態でも、タッチ判定の結果は「タッチ状態」と判定される。このとき、タッチ開始位置から平行移動した距離は閾値Dより大きいとする。従って「ドラッグ中」と判定され、結果としてステップS107の操作判定において「ドラッグ中」と判定される。なお、手指601dの状態の直後、つまりドラッグ開始直後の操作特定シーケンスにおいて、最大タッチ判定閾値HTMAXは600aに設定されている。次に、手指601eの状態では、検出される指示位置602eの高さは閾値600bより小さいため、「タッチ状態」と判定される。さらに、ドラッグ操作は継続中であるため、当然、タッチ開始位置から平行移動した距離は閾値Dより大きく、「ドラッグ中」と判定される。さらに、この時点ではドラッグ開始直後ではないため、ステップS204はスキップされる。また、閾値600b>閾値600a=HTMAXであることから、ステップS206において最大タッチ判定閾値HTMAXが600bに更新される。従って、このドラッグ操作の過程において実際にタッチ判定に用いられる閾値は、図6(A)において実線で示される閾値600cとなる。続くステップS207にて、このあとドラッグ操作が継続されている間は、実際にタッチ判定に仕様する閾値HTとして最大タッチ判定閾値HTMAX=600bが設定される。続く手指601fの状態では、指示位置602fが閾値600bより小さいため、タッチ判定結果は「タッチ状態」、さらに「ドラッグ中」と判定される。最後に、手指601gの状態では、指示位置602fが閾値600bより大きいため、「非タッチ状態」と判定される。タッチ判定結果が「非タッチ」であるため、ステップS106のドラッグ判定にて「非ドラッグ中」と判定される。「非タッチ状態」で、前回が「ドラッグ中」であるので、結果としてステップS107の操作判定において「ドラッグ操作終了」と判定される。つまり、手指601fの状態から手指601gの状態の過程のタッチ判定結果が「タッチ状態」から「非タッチ状態」に変化した時点で、ステップS107の操作判定においてドラッグ操作の入力が特定される。従って1回分のドラッグ操作は終了したので、次にドラッグ操作が入力されるときにはHTMAXは初期化される。
First, in the state of the
このように、ユーザが物体上を経由したドラッグ操作を行う途中で、物体上からテーブル上にかけ移動した直後は、指先が直下のタッチ対象面から離れてしまう場面が生じ得る。本実施形態では、ドラッグ操作中は、当該ドラッグ操作の経路上でのタッチ対象面の最大の高さに基づき、タッチ判定の閾値を設定することで、このような場合でもドラッグ操作の認識が中断されてしまうことを防止することができる。従って、ユーザはドラッグ操作において、「タッチ対象面に指を沿わせる」ことを意識しなくてよいので、より操作性を向上することができる。 In this way, immediately after the user moves from the object onto the table while performing the drag operation via the object, a scene may occur where the fingertip is separated from the touch target surface directly below. In the present embodiment, during the drag operation, the touch operation threshold is set based on the maximum height of the touch target surface on the drag operation path, and the recognition of the drag operation is interrupted even in such a case. Can be prevented. Therefore, the user does not need to be aware that “the finger is placed on the touch target surface” in the drag operation, so that the operability can be further improved.
次に、図8、図9、図10を参照して、本実施形態を効果的に利用した情報処理装置100の具体的な操作例を説明する。図8、図9、図10は、情報処理装置100に対して行われる一連の操作のうち、特徴的な8つの段階でのテーブル101を、俯瞰して見た状態を示している。
Next, a specific operation example of the
まず、図8の状態800は、テーブル101の上に物体の一例として読み取り対象(一例として、新聞紙810)が載置された状態を表す。これ以降、この新聞紙810に対して、記事単位の読み取り画像を取得し、当該読み取り画像をA4の原稿にレイアウトしなおしたデータを生成するという機能を例に説明する。この機能により、実際に記事のスクラップをするよりも容易に、自分に必要な情報をみやすくまとめたデータを生成するという作業ができるようになる。ここで、新聞紙810は、ユーザにより、テーブル101上にユーザが読み取りたい記事と日付欄が見えるように配置される。
First, a
状態801は、テーブル101に置かれた物体102が、新聞紙810であることが認識されたのに応じて、テーブル101上で投影UIが構成された様子を示す。認識処理は、可視光カメラ108の撮像画像に基づいて、CPU110が行う。ここでは、読み取りを行う最大範囲を示す認識枠811、タップ操作により指示コマンドを入力するためのボタン812a、812b、812c、読み取りが完了した記事のサムネイル画像が配置されるトレイ813といった表示オブジェクトが投影される。ここで例えば、ボタン812aが、「ブロック分割の上読み取りを実行」コマンドに対応するUI部品であったとする。ボタン812aは、テーブル上に投影されている表示オブジェクトであるため、タッチ対象面は基準面となるテーブル上面になる。従って、図6の基準閾値600aのように、テーブル上面から一定の高さの閾値が設定され(ステップS208)、タッチ判定が行われる(ステップS105)。そして、タッチ状態にある間にユーザの指先がxy平面において閾値D以上の移動がなければ、タップ操作が認識される(ステップS107)。タップされた位置が、ボタン812aの表示範囲であれば、CPU110が可視光カメラ108に撮像された新聞紙810の画像を解析して、記事ごとにブロック化した上で、読み取りを行う。読み取り画像は、ブロック毎にトリミングされた状態で、メモリに保持される。
A
状態802は、ブロック化された記事毎の領域を囲むようにブロック枠814が投影表示された様子を示す。この状態において、ユーザにより、読み取りたい記事を囲む領域が、タップ操作されると、タップされたブロックの読み取り画像が、当該新聞紙810の同じブロックに重畳するように投影される。ここで、タップ操作が行われるのは物体102である新聞紙810の上であるので、タッチ判定の閾値は、テーブル上に対するタップ操作の場合とは異なる閾値が設定される。本実施形態の場合は、新聞紙810とテーブルとからなるタッチ対象面の表面形状が取得される(ステップS101)。この情報には、新聞紙810によって生じたタッチ対象面の凹凸を示す高さ情報が含まれる。それに基づき、図6の基準閾値600bのように、テーブル上よりも新聞紙810の厚みの分大きい閾値が設定され(ステップS208)、タッチ判定(ステップS105)とタップ操作の特定(ステップS107)がなされる。
A
図9の状態803は、さらにユーザにより、重畳された読み取り画像をトレイ813に向けて移動させるドラッグ操作が入力されている様子を示す。このドラッグ操作は、新聞紙810上から、テーブル上にかけて行われる。本実施形態では、まず新聞紙810上では、記事のブロックを指示したときと同じ基準閾値(例えば閾値600b)に基づいてタッチ判定(ステップS105)が行われる。そして、xy方向に平行移動した距離がDを越えた時点で、ドラッグ操作が開始されたと特定される(ステップS107)。そして、最大閾値HTMAXが、新聞紙810上での閾値に設定されるので、例えユーザの指先が、新聞紙を離れテーブル101の情報に至った時点でも、新聞紙810上と同じ閾値に基づいてタッチ判定が行われる。ここで、読み取り画像815は、表示制御部207によるドラッグ操作に対する応答として、ドラッグ操作によって移動される距離が大きくなるのに従い、そのサイズを縮小させるように表示される。
A
状態804は、記事の読み取り画像815が、トレイ813の中までドラッグされた結果として、そのサムネイル画像がトレイ813内に表示された様子を示す。そして状態805は、ユーザは上記のように、記事ブロックへのタップ操作と、読み取り画像のトレイ813へのドラッグ操作を繰り返して、所望の記事を選択し終えた状態に相当する。
A
そして、図10の状態806は、ユーザにより、テーブル101上から新聞紙810が取り除かれた様子を示す。CPU110は、所望とする記事が選択された状態で、読み取り対象が取り除かれたこと認識すると、表示制御部207により、操作コマンドに対応するボタンUIの内容を変更する。ここで新たに投影されるボタン816aは、例えば「トレイにドラッグした記事をA4用紙サイズの原稿にレイアウトさせる指示」のコマンドに対応するものとする。テーブルに対するタップ操作を認識する処理により、ボタン816aに対するタップ操作を特定すると、CPU110は、メモリに保持されている読み取り画像に基づき、その記事の形状や文字の大きさ等に基づき、適切なレイアウトを導出する。
A
状態807は、自動レイアウトされたA4の原稿を示す画像817が、テーブル101の中央に投影されていることを示す。ユーザは、ボタン816bやボタン816cをタップすることで、ドキュメントデータとして生成し、記憶することを指示したり、あるいは印刷装置に送って印刷出力させることを指示したりすることができる。
A
このように、本実施形態によれば、高さが一様ではないタッチ対象面に対しても、タップ操作やドラッグ操作などさまざまなタッチ操作を利用した使い方ができる。 As described above, according to the present embodiment, it is possible to use various touch operations such as a tap operation and a drag operation even on a touch target surface having a non-uniform height.
以上述べたように、本実施形態では、高さが一様ではないタッチ対象面におけるタッチ操作では、検出される指示位置と同じxy座標におけるタッチ対象面の高さを基に、タッチ判定に用いる閾値を設定する。さらに、ドラッグ操作中の場合は、その経路においては、当該ドラッグ操作のそれまで経路におけるタッチ対象面の最大の高さに基づく閾値を用いてタッチ判定を行う。それにより、タッチ対象面の高さが変化する境界付近において、認識対象とタッチ対象面との間が急激に離れたとしても、ドラッグ操作の認識が中断される誤認識を低減することができる。 As described above, in the present embodiment, in the touch operation on the touch target surface whose height is not uniform, the touch determination is used based on the height of the touch target surface at the same xy coordinates as the detected indication position. Set the threshold. Further, when a drag operation is being performed, touch determination is performed for the route using a threshold value based on the maximum height of the touch target surface in the route until the drag operation. Accordingly, even when the recognition target and the touch target surface are suddenly separated in the vicinity of the boundary where the height of the touch target surface changes, it is possible to reduce erroneous recognition in which the recognition of the drag operation is interrupted.
なお、本実施形態では、タッチ対象面の表面形状を三次元座標情報として取得してタッチ判定の基準閾値を導出したが、閾値の導出方法はこれに限るものではない。例えば、可視光カメラ等で取得した画像から取得した物***置の二次元座標情報と、あらかじめ数値で指定するなどして与えた物体の高さhの情報を用いて、タッチ対象面の表面形状を示す情報を取得しても良い。この場合の、物体が存在する領域ではタッチ対象面の高さを所定の値(例えばh)とし、それ以外の領域では0とすればよい。 In the present embodiment, the surface shape of the touch target surface is acquired as three-dimensional coordinate information and the reference threshold value for touch determination is derived. However, the threshold value deriving method is not limited to this. For example, the surface shape of the touch target surface is determined by using the two-dimensional coordinate information of the object position acquired from the image acquired by a visible light camera or the like and the information on the height h of the object given by specifying numerical values in advance. The information shown may be acquired. In this case, the height of the touch target surface may be set to a predetermined value (for example, h) in the region where the object exists, and may be set to 0 in other regions.
また、本実施形態では、赤外光発光部206と赤外カメラ207を利用して、ユーザの手指の三次元位置を取得したが、ステレオカメラや距離画像センサを利用することもできる。認識対象と操作面との近接状態に基づいてタッチ判定を行う方法は、三次元位置に基づく距離の判定に限らず、例えば感熱センサや静電容量センサ等を利用し、操作面に対してユーザの手指がどの程度近接したかを検出した結果に基づく判定に置き換えてもよい。また、本実施形態では、プロジェクタによる投影対象面をタッチ操作の操作面とする例について説明したが、ヘッドマウントディスプレイを利用し、ARやMR空間上の仮想面(仮想的に表示された物体の表面など)を操作面とする場合にも適応可能である。
In the present embodiment, the three-dimensional position of the user's finger is acquired using the infrared
また、本実施形態では、常にタッチ対象面の高さに応じたタッチ判定閾値の設定を行った。しかし、タッチ対象面の表面形状を示す情報を取得した時点で、タッチ対象面が一様の高さであるとみなせるほど、物体の高さが小さい場合は、全xy座標において、あらかじめ指定するなどして与えた一定のタッチ判定閾値を用いたタッチ判定を行っても良い。 In this embodiment, the touch determination threshold value is always set according to the height of the touch target surface. However, when the information indicating the surface shape of the touch target surface is acquired, if the height of the object is small enough that the touch target surface can be regarded as having a uniform height, it is specified in advance in all xy coordinates, etc. The touch determination using the given touch determination threshold value may be performed.
さらに、本実施形態では、1つの認識対象(1本の指)によるタッチ操作、特にドラッグ操作におけるタッチ判定閾値の設定方法について記載したが、認識対象の数はこれに限るものではない。本実施形態にて記載した方法は、複数の認識対象(2本以上の指)によって複数の指示位置が指示される場合でもそれぞれの位置において適用できる。例えば、2つの認識対象がそれぞれ、タッチしたまま位置を動かすことによって行う操作の例として、ピンチ操作(複数の指示位置の間隔を拡縮する)、ローテート操作(複数の位置の相対関係を維持したまま回転させる)がある。2つの認識対象のそれぞれについて、本実施形態にて記載した方法(ステップ102からステップS108)を用いて設定したタッチ判定閾値によるタッチ判定を行い、かつ、その結果を用いて、上述したようにドラッグ操作途中かの判定を行う。それぞれの認識対象に対するタッチ判定結果とドラッグ操作中かの判定結果を統合することで、ピンチ操作、ローテート操作などの操作種別を判定することができる。例えば、2つの認識対象のドラッグ判定結果が共に「ドラッグ中」であり、かつ認識対象間の距離が前回の操作判定特定シーケンスにおける認識対象間の距離よりも小さい場合、「ピンチイン操作中」と判定する。このように、本実施形態にて記載した方法を2つの認識対象に適用することで、高さが一様でないタッチ対象面にたいするマルチタッチ操作において、ユーザの意図しない操作の中断を低減することができる。 Furthermore, in this embodiment, although the touch determination threshold value setting method in touch operation by one recognition target (one finger), especially drag operation was described, the number of recognition targets is not restricted to this. The method described in the present embodiment can be applied at each position even when a plurality of designated positions are designated by a plurality of recognition objects (two or more fingers). For example, as an example of operations performed by moving the positions of two recognition objects while touching each other, a pinch operation (expanding or reducing the interval between a plurality of designated positions), a rotate operation (maintaining a relative relationship between a plurality of positions) Rotate). For each of the two recognition targets, a touch determination is performed using the touch determination threshold set using the method described in the present embodiment (step 102 to step S108), and the result is used to drag as described above. Determine if operation is in progress. By integrating the touch determination result for each recognition target and the determination result indicating whether the drag operation is being performed, it is possible to determine an operation type such as a pinch operation or a rotate operation. For example, when both drag recognition results of two recognition targets are “dragging” and the distance between the recognition targets is smaller than the distance between the recognition targets in the previous operation determination specific sequence, it is determined as “pinch-in operation in progress”. To do. As described above, by applying the method described in the present embodiment to two recognition targets, it is possible to reduce interruption of an operation that is not intended by the user in a multi-touch operation on a touch target surface having a non-uniform height. it can.
<第2の実施形態>
第1の実施形態は、高さが一様ではないタッチ対象面上におけるタッチ判定に用いる閾値を設定する際、ドラッグ操作中は、当該ドラッグ操作のそれまでの経路にあたるタッチ対象面の最大の高さに対応する閾値を、当該ドラッグ操作が終了するまで適応した。それに対し、第2の実施形態では、ドラッグ操作の経路において、タッチ対象面の高さが低下してからもドラッグ操作が継続される場合、再度タッチ判定に用いる閾値の大きさを再設定する例を説明する。
<Second Embodiment>
In the first embodiment, when setting a threshold value used for touch determination on a touch target surface whose height is not uniform, during the drag operation, the maximum height of the touch target surface corresponding to the route until the drag operation is reached. The threshold corresponding to the height was applied until the drag operation was completed. On the other hand, in the second embodiment, in the drag operation route, when the drag operation is continued even after the height of the touch target surface is reduced, the threshold value used for touch determination is reset again. Will be explained.
以下、本実施形態について図面を用いて詳細に説明する。他図を用いて説明したものには同一の符号を付し、その説明を省略する。 Hereinafter, the present embodiment will be described in detail with reference to the drawings. Components described with reference to other drawings are denoted by the same reference numerals, and description thereof is omitted.
図2(B)は、本実施形態における情報処理装置100の機能ブロック図である。情報処理装置100は、図2(A)にて説明した各ブロックと、再設定部209から構成される。これら各機能ブロックは、上述した各処理プログラムをCPU110で実行することによって実現できる機能に相当する。再設定部209は、面情報取得部201で取得したタッチ対象面の表面形状を示す情報と、位置検出部202で検出した指示位置とを利用して、それ以降のドラッグ操作の経路において実際にタッチ判定に使用される閾値を、各位置における基準閾値に再設定する。
FIG. 2B is a functional block diagram of the
次に、第2の実施形態に係る情報処理装置100が実行する、閾値設定処理のフローチャートを図11に示す。第1の実施形態の図4のフローチャートと同じ符号を付した処理ステップでは、第1の実施形態と同内容の処理が実行される。図4のフローチャートとの差異は、ステップS300からステップS307である。
Next, FIG. 11 shows a flowchart of threshold setting processing executed by the
ステップS204までの処理は、第1の実施形態と同様であるため、説明を省略する。本実施形態では、ドラッグ開始直後の閾値設定処理において、ステップS300が実行される。ステップS300にて、再設定部209が、タッチ対象面の最大の高さを示す値HOMAXを初期化する。ここでは、以降のステップで必ず更新されるよう、例えば0などの値で初期化する。最大高さHOMAXはタッチ対象面の高さが低下したことを検出するのに使用する。続くステップS205、ステップS206の処理は、第1の実施形態と同様である。ステップS301およびステップS303において、再設定部209が、最後に検出された指示位置におけるタッチ対象面高さHOFと最大高さHOMAXを比較する。指示位置でのタッチ対象面の高さHOFが最大高さHOMAXより大きいと判定される場合(ステップS301でYES)は、ステップS302に進む。指示位置でのタッチ対象面の高さHOFが最大高さHOMAXより小さいと判定される場合(ステップS303でYES)は、ステップS304に進む。それ以外の場合、つまりの指示位置でのタッチ対象面の高さHOFが最大高さHOMAXに等しい場合は、ステップS207に進む。ステップS302では、再設定部209が、最大タッチ対象面高さHOMAXを、最後に検出された指示位置でのタッチ対象面の高さHOFに更新する。これは、タッチ対象面の上昇に応じて、最大高さHOMAXを上昇したタッチ対象面の高さに更新することに相当する。ステップS304からステップS307の処理が、タッチ対象面高さが、低下した場合に実行される理に相当する。まず、ステップS304では、再設定部209が、タッチ対象面の高さが低下した直後かどうかを判定する。この判定は、ステップS301およびステップS302の判定結果を、前回の操作判定特定シーケンスにおける当該判定結果と比較して行う。具体的には、前回の判定結果が「指示位置でのタッチ対象面の高さHOFが最大高さHOMAX以上」であり、かつ今回の判定結果が「高さHOFが最大高さHOMAXより小さい」場合、タッチ対象面高さが低下した直後だと判定する。タッチ対象面の高さが低下した直後であると判定された場合(ステップS304でYES)は、ステップS305に進み、タッチ対象面の高さが低下した直後ではないと判定された場合(ステップS304でNO)は、ステップS306に進む。ステップS305では、再設定部209が、タッチ対象面の高さが低下した時刻を、その時点の時刻で更新する。ステップS306では、再設定部209が、ステップS305にて更新したタッチ対象面の高さが低下した時刻から、その時点までの経過時間を算出し、タッチ対象面の高さが低下してから一定時間が経過したかを判定する。一定時間が経過していると判定された場合(ステップS306でYES)は、ステップS307に進み、一定時間が経過していないと判定された場合(ステップS306でNO)はステップS207に進む。ステップS307では、再設定部209が、実際にタッチ判定に使用する閾値HTを、最後に検出された指示位置での基準閾値HTFに再設定する。以降、ドラッグ操作が継続されている間は、ステップS207においては、タッチ判定には基準閾値が使用される。
Since the processing up to step S204 is the same as that of the first embodiment, the description thereof is omitted. In the present embodiment, step S300 is executed in the threshold setting process immediately after the start of dragging. In step S300, the resetting
次に、本実施形態の情報処理装置100における処理の流れを、図6(B)と(C)、および図3、図11のフローチャートを用いて説明する。
Next, the flow of processing in the
図6(B)は、図6(A)と同様に、ユーザが物体上で開始したドラッグ操作をテーブル上まで継続してからリリースする様子を示す図である。手指610a、610b、610c、610d、610eは、この順にドラッグ操作を行う様子を示している。手指610cは、手指がテーブル上に近づいている(の高さが小さくなっている)様子を示している。一般に、ユーザには、空中で手指の高さを一定に保つったまま操作を行うことは難しく、例えば長い距離をドラッグ操作する過程等では、タッチ対象面上に物理的に接触している方が、負担が軽い場合がある。また、表示オブジェクトを移動させる目的でドラッグ操作を行っていた場合などは、ドラッグ操作を終了させるにあたり、表示オブジェクトの最終的な位置をタッチ対象面に触れた状態で調整してから終了させたいという場合もある。移動させていた手指610cは、そのような場合に、ユーザが指先をタッチ対象面に近づけた状態を示している。そして、手指610dは、ユーザがドラッグをリリースするために手指をタッチ対象面から離し始めた状態を示している。指示位置611a、611b、611c、611d、611eはそれぞれ、手指610a、610b、610c、610d、610eの状態で検出される指示位置である。
FIG. 6B is a diagram illustrating a state in which the drag operation started on the object by the user is continued to the table and then released, as in FIG. 6A.
ここで物体上を経由した後のドラッグ操作の間、常に物体の最大の高さに基づく閾値600cをタッチ判定に用いるとすると、手指610dの状態において、ユーザはドラッグをリリースしようとしているにも関わらず「タッチ状態」と判定されてしまう。つまり、指示位置611dの高さが、依然としてタッチ判定閾値600cより小さいため、この時点では、ドラッグ操作が終了されたとは認識されない。次に、手指610eは、ユーザがドラッグをリリースするために手指をさらにタッチ対象面から離した状態を示している。この時、指示位置611eの高さが閾値600cより大きくなるので、この時点で、ドラッグ操作の終了が認識される。一方で本実施形態では、ドラッグ操作中にタッチ対象面の高さが低下した後、一定時間経過後にタッチ判定に使用する閾値を基準閾値に再設定するため、ドラッグ操作が終了したことを速やかに認識できるという効果がある。
Here, if the
図6(C)は図6(B)と同様、ユーザが物体上で開始したドラッグ操作をテーブル上まで継続してからリリースする様子を示す図である。ここで図7(B)は図6(C)に示された操作例に対応する、ドラッグ操作を行った際に取得できるデータと判定結果の一例を示す。手指610aから610dおよび指示位置611aから611dは、図6(B)と同じものを示す。つまり、手指610aの位置でドラッグを開始する(この時点以降のシーケンスでドラッグ中と判定されるものとする)。そして、手指610bの位置で、指先が物体102上からテーブル101上へと移動することに伴い、タッチ対象面の高さが物体102上からテーブル101上へと低下している。さらに手指610dの位置の直前までドラッグを継続し、手指610dの位置でユーザがドラッグをリリースするために手指をタッチ対象面から離している。図6(C)では、手指610dの直前で、タッチ対象面の高さが低下してから、つまり手指610bの時刻から一定時間が経過するとする。
FIG. 6C is a diagram illustrating a state in which the drag operation started on the object by the user is continued on the table and then released, as in FIG. 6B. Here, FIG. 7B shows an example of data and determination results that can be acquired when a drag operation is performed, corresponding to the operation example shown in FIG.
手指610aの状態では、図6(A)の手指601aから601eにて示したのと同様の処理を経て、タッチ判定結果が「タッチ状態」であり、「ドラッグ中」であり、ドラッグ操作が入力されていると特定される。また、最大閾値HTMAX、タッチ判定に用いる閾値HTはともに600b、タッチ対象面の最大高さHOMAXは物体102の上面の高さとなっている。手指610bの状態では、指示位置611bでのタッチ対象面の高さHOFとしてテーブル上面の高さが、指示位置611bでの基準閾値HTFとして閾値600aが取得される。この時点では、「ドラッグ中」と判断され、かつドラッグ開始直後ではない(ステップS203でNO)。また、指示位置611bでの基準閾値HTF=600aは、最大閾値HTMAXより小さい(ステップS205でNO)。そして、指示位置611bでのタッチ対象面の高さHOFが最大高さHOMAXより小さい(ステップS301でNO、ステップS303でYES)ため、この時点がタッチ対象面の高さが低下した時刻として保持される(ステップS305)。まだタッチ対象面の高さが低下してからの経過時間は一定時間に満たないため、ステップS207以降において、図6(A)における手指601fの状態と同様の処理が行われる。手指610cの状態でも、手指610bの状態と同様のタッチ操作認識処理が行われる。最後に、手指610dの状態では、タッチ対象面の高さが低下してからの経過時間が、一定時間以上となる(ステップS306でYES)。このため、タッチ判定に用いられる閾値HTが、指示位置611dでの基準閾値HTF=600aと再設定される(ステップS307)。その結果、指示位置611dの高さが閾値600aより大きいため「非タッチ状態」(ステップS105)、「非ドラッグ中」(ステップS106)と判定されることでドラッグ操作が終了したことが認識される。
In the state of the
以上、本実施形態で述べたように、高さが一様ではないタッチ対象面に対して行われるドラッグ操作において、タッチ対象面の高さが低下してから一定時間後に、タッチ判定閾値をその時点の指示位置に対応するタッチ対象面の高さに基づき再設定する。これによって、ユーザが一定時間ドラッグ操作を継続する間に指先の位置を低下させていた場合でも、ドラッグ操作が終了されたことを速やかに認識でき、操作性を向上することができる。 As described above, in the drag operation performed on the touch target surface whose height is not uniform as described in the present embodiment, the touch determination threshold is set to the touch determination threshold after a certain time after the height of the touch target surface decreases. Reset based on the height of the touch target surface corresponding to the indicated position at the time. As a result, even when the position of the fingertip is lowered while the user continues the drag operation for a certain time, it is possible to quickly recognize that the drag operation has been completed, and to improve the operability.
なお、本実施形態では、タッチ対象面の高さが低下した時刻からの経過時間を条件として、閾値の再設定を行った。これにより認識対象が動かなくなっても、タッチ開始位置から所定の距離以上離れた位置で、タッチ状態が継続されている間は、ドラッグ操作が継続されているとみなすことができる。例えば、表示オブジェクトを移動させるドラッグ操作において、最終的に表示オブジェクトを配置する位置を定めるために認識対象がタッチ状態にまま一時的に停止する場合には、一定時間の経過に応じて閾値が再設定される。なお、ドラッグ操作が継続されるかを判断する条件はこれに限るものではない。例えば、タッチ対象面の高さが低下した位置からのxy平面距離(直線距離)や、ドラッグ操作中の指先の移動距離の累積(ドラッグの軌跡の長さ)などを条件としても良い。さらには、経過時間とこれらの距離を組み合わせたものを条件としても良い。このような距離の要件を用いれば、ユーザが何らかの理由で指先の平行移動を一時的に停止している間に、経過時間が一定値に達し、結果として閾値の再設定が行われるのを防ぐことができる。 In the present embodiment, the threshold value is reset on the condition that the elapsed time from the time when the height of the touch target surface decreases. As a result, even if the recognition target stops moving, it can be considered that the drag operation is continued while the touch state is continued at a position away from the touch start position by a predetermined distance or more. For example, in a drag operation for moving a display object, if the recognition target is temporarily stopped while being touched in order to finally determine the position where the display object is to be placed, the threshold value is reset as the fixed time elapses. Is set. The condition for determining whether the drag operation is continued is not limited to this. For example, the xy plane distance (straight line distance) from the position where the height of the touch target surface is reduced, the cumulative movement distance of the fingertip during the drag operation (the length of the drag trajectory), or the like may be used as conditions. Further, a combination of elapsed time and these distances may be used as a condition. Using such a distance requirement prevents the elapsed time from reaching a certain value while the user temporarily stops the translation of the fingertip for some reason, resulting in resetting the threshold. be able to.
<他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
<Other embodiments>
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.
200 画像取得部
201 面情報取得部
202 位置検出部
203 設定部
205 タッチ判定部
206 特定部
200
Claims (14)
前記認識対象によって示される指示位置を検出する検出手段と、
基準面の表面と前記基準面に載置された物体の表面とを含む、高さが一様でないタッチ対象面の、当該高さを含む表面形状を示す情報を取得する取得手段と、
前記タッチ対象面における、前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を、前記表面形状を示す情報に基づいて異ならせて設定する設定手段と、
前記検出手段が検出した指示位置が、前記設定手段が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定手段と、
を備え、
前記判定手段は、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記取得手段が取得した前記タッチ対象面の表面形状を示す情報のうち、前記認識対象が移動してきた経路上で得た高さを示す情報に基づいて、前記判定を行うことを特徴とする情報処理装置。 An information processing apparatus for recognizing a touch operation by a recognition target,
Detecting means for detecting an indicated position indicated by the recognition target;
An acquisition means for acquiring information indicating a surface shape including the height of a touch target surface having a non-uniform height, including a surface of a reference surface and a surface of an object placed on the reference surface ;
A condition for determining whether a position corresponding to the indicated position detected by the detection unit on the touch target surface is touched by the recognition target is set differently based on the information indicating the surface shape. Setting means;
The detection means indication position is detected, when conditions are satisfied where the setting unit has set, a determination unit that is touched the touch object surface by the recognition target,
With
While the recognition target moves while the recognition target touches the touch target surface, the recognition target has moved among the information indicating the surface shape of the touch target surface acquired by the acquisition unit. An information processing apparatus that performs the determination based on information indicating a height obtained on a route.
前記認識対象によって示される指示位置を検出する検出手段と、
タッチ対象面の表面形状を示す情報を取得する取得手段と、
前記取得手段が取得した前記タッチ対象面の表面形状を示す情報に基づいて、前記タッチ対象面における、前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を設定する設定手段と、
前記検出手段が検出した指示位置が、前記設定手段が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定手段とを備え、
前記判定手段は、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記認識対象が移動してきた経路上で、前記タッチ対象面の高さが最大であった位置において前記設定手段に設定された条件に基づいて、前記判定を行うことを特徴とする情報処理装置。 An information processing apparatus for recognizing a touch operation by a recognition target,
Detecting means for detecting an indicated position indicated by the recognition target;
Obtaining means for obtaining information indicating the surface shape of the touch target surface;
Based on the information indicating the surface shape of the touch target surface acquired by the acquisition unit, it is determined whether a position corresponding to the indicated position detected by the detection unit on the touch target surface is touched by the recognition target. Setting means for setting conditions for
A determination unit that determines that the touch target surface is touched by the recognition target when the indication position detected by the detection unit satisfies a condition set by the setting unit;
While the recognition target is moving while touching the touch target surface, the determination unit is configured such that the height of the touch target surface is the maximum on the path along which the recognition target has moved. An information processing apparatus that performs the determination based on a condition set in a setting unit.
前記設定手段は、前記特定手段が特定したタッチ操作の種別が、ドラッグ操作である場合は、前記特定手段が特定したタッチ操作の種別がドラッグ操作ではない場合とは異なる条件を設定することを特徴とする請求項1又は2に記載の情報処理装置。 And a specifying unit that specifies a type of a touch operation performed by the recognition target based on a determination result by the determining unit and a movement of the designated position detected by the detecting unit.
In the case where the type of the touch operation specified by the specifying unit is a drag operation, the setting unit sets a condition different from that in the case where the type of the touch operation specified by the specifying unit is not a drag operation. The information processing apparatus according to claim 1 or 2 .
前記判定手段は、前記基準面と前記認識対象の間の距離が、前記設定手段が設定した閾値より小さい場合、前記タッチ対象面の前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされていると判定することを特徴とする請求項3又は4に記載の情報処理装置。 The setting means, as the condition, is based on information indicating the surface shape acquired by the acquisition means, between the reference surface corresponding to the indicated position detected by the detection means of the touch target surface and the recognition target. Set the distance threshold,
When the distance between the reference surface and the recognition target is smaller than the threshold set by the setting unit, the determination unit has a position corresponding to the indicated position detected by the detection unit on the touch target surface. the information processing apparatus according to claim 3 or 4, characterized in that determined to be touched by the subject.
当該ドラッグ操作が終了されるまでの間は、前記基準面と前記認識対象の間の距離が、前記最大値取得手段が取得した最大の閾値より小さい場合、前記タッチ対象面の前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされていると判定することを特徴とする請求項5に記載の情報処理装置。 The setting means, when the specifying means specifies that the drag operation is being performed by the recognition target, out of the threshold values set in the setting means on the route until the drag operation It has a maximum value acquisition means for acquiring the maximum threshold,
Until the drag operation is completed, when the distance between the reference surface and the recognition target is smaller than the maximum threshold acquired by the maximum value acquisition unit, the detection unit of the touch target surface detects The information processing apparatus according to claim 5 , wherein a position corresponding to the designated position is determined to be touched by the recognition target.
検出手段により、前記認識対象によって示される指示位置を検出する検出工程と、
取得手段により、基準面の表面と前記基準面に載置された物体の表面とを含む、高さが一様でないタッチ対象面の、当該高さを含む表面形状を示す情報を取得する取得工程と、
設定手段により、前記タッチ対象面における、前記検出工程で検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を、前記表面形状を示す情報に基づいて異ならせて設定する設定工程と、
判定手段により、前記検出工程で検出した指示位置が、前記設定手段が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定工程と、を有し、
前記判定工程では、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記取得手段が取得した前記タッチ対象面の表面形状を示す情報のうち、前記認識対象が移動してきた経路上で得た高さを示す情報に基づいて、前記判定を行うことを特徴とする情報処理装置の制御方法。 A method for controlling an information processing apparatus that recognizes a touch operation by a recognition target,
A detection step of detecting an indication position indicated by the recognition target by a detection means;
An acquisition step of acquiring information indicating a surface shape including the height of a touch target surface having a non-uniform height including the surface of the reference surface and the surface of the object placed on the reference surface by an acquisition unit. When,
A condition for determining whether the position corresponding to the indicated position detected in the detection step on the touch target surface by the setting unit is touched by the recognition target is different based on the information indicating the surface shape. Setting process to set,
The determination means, the detection step detects at the indicated position, when satisfying said setting means has set, the touch object surface anda a determination process being touched by the recognition target,
In the determination step, while the recognition target is moving while touching the touch target surface, the recognition target has moved among the information indicating the surface shape of the touch target surface acquired by the acquisition unit. A control method for an information processing apparatus, characterized in that the determination is performed based on information indicating a height obtained on a route.
検出手段により、前記認識対象によって示される指示位置を検出する検出工程と、A detection step of detecting an indication position indicated by the recognition target by a detection means;
取得手段により、タッチ対象面の表面形状を示す情報を取得する取得工程と、An acquisition step of acquiring information indicating the surface shape of the touch target surface by an acquisition unit;
設定手段により、前記取得工程で取得した前記タッチ対象面の表面形状を示す情報に基づいて、前記タッチ対象面における、前記検出工程で検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を設定する設定工程と、Based on the information indicating the surface shape of the touch target surface acquired in the acquisition step by the setting unit, a position corresponding to the indicated position detected in the detection step on the touch target surface is touched by the recognition target. A setting step for setting conditions for determining whether or not
判定手段により、前記検出工程で検出した指示位置が、前記設定工程が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定工程とを備え、A determination step of determining that the touch target surface is touched by the recognition target when the indication position detected in the detection step satisfies the condition set by the setting step by the determination unit;
前記判定工程は、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記認識対象が移動してきた経路上で、前記タッチ対象面の高さが最大であった位置において前記設定工程に設定された条件に基づいて、前記判定を行うことを特徴とする情報処理装置の制御方法。In the determination step, while the recognition target moves while touching the touch target surface, the height of the touch target surface is the maximum on the path along which the recognition target has moved. A control method for an information processing apparatus, wherein the determination is performed based on a condition set in a setting step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013222524A JP6245938B2 (en) | 2013-10-25 | 2013-10-25 | Information processing apparatus and control method thereof, computer program, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013222524A JP6245938B2 (en) | 2013-10-25 | 2013-10-25 | Information processing apparatus and control method thereof, computer program, and storage medium |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2015084173A JP2015084173A (en) | 2015-04-30 |
JP2015084173A5 JP2015084173A5 (en) | 2016-12-08 |
JP6245938B2 true JP6245938B2 (en) | 2017-12-13 |
Family
ID=53047743
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013222524A Expired - Fee Related JP6245938B2 (en) | 2013-10-25 | 2013-10-25 | Information processing apparatus and control method thereof, computer program, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6245938B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5850970B2 (en) * | 2014-04-09 | 2016-02-03 | 株式会社東芝 | Information processing apparatus, video projection apparatus, information processing method, and program |
JP6540305B2 (en) * | 2015-06-18 | 2019-07-10 | カシオ計算機株式会社 | Touch input device, projection device, touch input method and program |
JP6582954B2 (en) * | 2015-12-11 | 2019-10-02 | 富士通クライアントコンピューティング株式会社 | Document camera device, clipping support method and program |
JP6902340B2 (en) * | 2016-09-01 | 2021-07-14 | 株式会社デンソーテン | Input device, program and detection method |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5471137B2 (en) * | 2009-08-05 | 2014-04-16 | ソニー株式会社 | Display device, display method, and program |
JP5488306B2 (en) * | 2010-07-29 | 2014-05-14 | 船井電機株式会社 | projector |
JP5304848B2 (en) * | 2010-10-14 | 2013-10-02 | 株式会社ニコン | projector |
JP2013065066A (en) * | 2011-09-15 | 2013-04-11 | Funai Electric Co Ltd | Projector |
-
2013
- 2013-10-25 JP JP2013222524A patent/JP6245938B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2015084173A (en) | 2015-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6202942B2 (en) | Information processing apparatus and control method thereof, computer program, and storage medium | |
US9529527B2 (en) | Information processing apparatus and control method, and recording medium | |
KR101227610B1 (en) | Image recognizing apparatus, operation judging method, and computer-readable recording medium for recording program therefor | |
JP6393341B2 (en) | Projection-type image display device | |
US20120169671A1 (en) | Multi-touch input apparatus and its interface method using data fusion of a single touch sensor pad and an imaging sensor | |
JP5990011B2 (en) | Information processing apparatus and control method thereof | |
WO2012120958A1 (en) | Projection device | |
US9400562B2 (en) | Image projection device, image projection system, and control method | |
JP6039248B2 (en) | Information processing apparatus and control method thereof | |
US9916043B2 (en) | Information processing apparatus for recognizing user operation based on an image | |
JP6711817B2 (en) | Information processing apparatus, control method thereof, program, and storage medium | |
JP2018517984A (en) | Apparatus and method for video zoom by selecting and tracking image regions | |
JP2012185630A (en) | Projection device | |
JP6245938B2 (en) | Information processing apparatus and control method thereof, computer program, and storage medium | |
JP5817149B2 (en) | Projection device | |
US20190220185A1 (en) | Image measurement apparatus and computer readable medium | |
JP6248462B2 (en) | Information processing apparatus and program | |
JP6255954B2 (en) | Motion input device, motion input program, and motion input method | |
JP2009251702A (en) | Information processing unit, information processing method, and information processing program | |
US20150077331A1 (en) | Display control device, display control method, and program | |
US10379678B2 (en) | Information processing device, operation detection method, and storage medium that determine the position of an operation object in a three-dimensional space based on a histogram | |
JP6000553B2 (en) | Information processing apparatus and control method thereof | |
JP5558899B2 (en) | Information processing apparatus, processing method thereof, and program | |
JP6579866B2 (en) | Information processing apparatus, control method therefor, program, and storage medium | |
JP6618301B2 (en) | Information processing apparatus, control method therefor, program, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161019 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161019 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170724 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170801 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170926 |
|
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: 20171017 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171114 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6245938 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |