JP2017228216A - Information processing apparatus, control method therefor, program, and storage medium - Google Patents

Information processing apparatus, control method therefor, program, and storage medium Download PDF

Info

Publication number
JP2017228216A
JP2017228216A JP2016125592A JP2016125592A JP2017228216A JP 2017228216 A JP2017228216 A JP 2017228216A JP 2016125592 A JP2016125592 A JP 2016125592A JP 2016125592 A JP2016125592 A JP 2016125592A JP 2017228216 A JP2017228216 A JP 2017228216A
Authority
JP
Japan
Prior art keywords
input
operation surface
input position
distance
threshold value
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.)
Pending
Application number
JP2016125592A
Other languages
Japanese (ja)
Inventor
伊藤 光
Hikari Ito
光 伊藤
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 JP2016125592A priority Critical patent/JP2017228216A/en
Publication of JP2017228216A publication Critical patent/JP2017228216A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Position Input By Displaying (AREA)

Abstract

PROBLEM TO BE SOLVED: To improve operability of an operation that is inputted by using multiple input positions, in a system for recognizing input on the basis of a proximity state between an object and a touch target surface.SOLUTION: An information processing apparatus comprises: a three-dimensional information acquisition part 210 for acquiring information corresponding to a distance from a predetermined operation surface regarding an input position that is inputted in a space above the predetermined operation surface; a recognition part 213 for recognizing a first operation inputted by using one input position of which the distance from the predetermined operation surface is less than a first threshold, and a second operation inputted by using multiple input positions of which the distances to the predetermined operation surface are less than the first threshold value, on the basis of the acquired information; and a display control part 125 configured to control output for responding to the recognized operation. The recognition part 213 does not respond to the first operation while there are multiple input positions of which the distances from the predetermined operation surface are smaller than a second threshold value that is greater than the first threshold value and there is one input position of which the distance from the predetermined operation surface is smaller than the first threshold.SELECTED DRAWING: Figure 2

Description

本発明は、連動する複数の位置によって入力される操作を認識する技術に関する。   The present invention relates to a technique for recognizing operations input by a plurality of linked positions.

タッチ操作を認識するシステムでは、操作面上の複数の複数の位置を指先やペン先等の物体によってタッチして連動させることで所定の指示を入力するマルチタッチ操作が広く利用されている。ユーザがマルチタッチ操作を意図した状況であっても、複数の物体が時間的な誤差なく同時に操作面にタッチできるという理想的な状況は稀である。現実のマルチタッチの入力では、複数の物体がそれぞれ操作面をタッチするタイミングには多少の時間差が生じる。   In a system that recognizes a touch operation, a multi-touch operation that inputs a predetermined instruction by touching and interlocking a plurality of positions on an operation surface with an object such as a fingertip or a pen tip is widely used. Even in a situation where the user intends to perform a multi-touch operation, an ideal situation where a plurality of objects can touch the operation surface at the same time without any time error is rare. In actual multi-touch input, there is a slight time difference between the timings at which a plurality of objects touch the operation surface.

そこで特許文献1では、2つのタッチ位置間の距離又はタッチ開始時間の差分が条件を満たすほど小さい場合に、2つのタッチ位置の入力が、2つの操作入力を意図するものではなく、1のマルチタッチ操作の入力を意図したものであると判定する。   Therefore, in Patent Literature 1, when the distance between the two touch positions or the difference in touch start time is small enough to satisfy the condition, the input of the two touch positions is not intended to be two operation inputs, but one multi It is determined that the input of the touch operation is intended.

特開2013−25621号公報JP 2013-25621 A

任意のテーブル面や壁面に画像やUI(ユーザインタフェース)を映して操作面とし、その画像やUIに指やペン等で接触して操作するシステムでは、各種カメラやセンサを用い、指先やペン先等の操作面への近接状態を検出する方式が使用される。例えば、近接状態として手やペン等の所定の物体の先端と操作面との間の距離を取得し、その距離が所定値より小さい状態をタッチ入力と認識することがある。物体の先端と操作面との間の距離が所定値より小さい状態をタッチ入力とみなすシステムでは、実質的には、物体が操作面に接触するより前であって、物体が空中に存在する間にタッチ入力が認識される。そのため、たとえユーザが各物体を操作面に物理的に接触させるタイミングを揃えたとしても、物体が空中にあった間の位置にずれがあれば、タッチ入力が検出されるタイミングに差が生じる可能性もある。また、このようなシステムでは、センサの精度や各物体の位置関係に影響され、物体の先端と操作面との間の距離計測の結果に誤差が生じ得る。そのため、物体によって、先端と操作面との間の距離が所定値より小さくなったと検出されるタイミングに差が生じる可能性もある。このように生じた時間差の結果として、2つの物体の片方だけがタッチ入力中であると認識される時間が長くなり、その間にシングルタッチ操作が認識されてしまう場合がある。   In a system in which an image or UI (user interface) is projected on an arbitrary table surface or wall surface to be used as an operation surface, and the image or UI is operated by touching the image or UI with a finger, pen, etc., various cameras and sensors are used. A method for detecting the proximity state to the operation surface is used. For example, a distance between a tip of a predetermined object such as a hand or a pen and an operation surface may be acquired as a proximity state, and a state where the distance is smaller than a predetermined value may be recognized as a touch input. In a system in which the distance between the tip of the object and the operation surface is smaller than a predetermined value is regarded as a touch input, it is substantially before the object touches the operation surface and while the object exists in the air. Touch input is recognized. Therefore, even if the user arranges the timing at which each object is physically brought into contact with the operation surface, if the position of the object is in the air, there is a difference in the timing at which the touch input is detected. There is also sex. Further, in such a system, an error may occur in the result of distance measurement between the tip of the object and the operation surface, affected by the accuracy of the sensor and the positional relationship between the objects. Therefore, there is a possibility that a difference occurs in the timing at which it is detected that the distance between the tip and the operation surface is smaller than a predetermined value depending on the object. As a result of the time difference thus generated, it may take a long time to recognize that only one of the two objects is being touch-input, and a single touch operation may be recognized during that time.

特許文献1では、物体と操作面の近接状態が所定条件を満たすことをタッチ入力として検出する場合に、1のマルチタッチ操作の入力を意図した複数の入力位置を特定することまで十分考慮されてはいなかった。   In Patent Document 1, when it is detected as a touch input that the proximity state between the object and the operation surface satisfies a predetermined condition, sufficient consideration is given to specifying a plurality of input positions intended for one multi-touch operation input. I didn't.

本発明は、上記を鑑みてなされたものであり、物体とタッチ対象面の近接状態に基づいて入力を認識するシステムにおける、複数の入力位置を使って入力される操作の操作性を向上させることを目的とする。   The present invention has been made in view of the above, and improves the operability of an operation input using a plurality of input positions in a system that recognizes an input based on a proximity state of an object and a touch target surface. With the goal.

以上の課題を解決するために、本発明における情報処理装置は、所定の操作面上の空間に入力される入力位置について前記所定の操作面からの距離に相当する情報を取得する取得手段と、前記取得手段に取得される情報に基づいて、前記所定の操作面からの距離が第1閾値を下回る1つの入力位置を用いて入力される第1操作と、前記所定の操作面に対する距離が前記第1閾値を下回る複数の入力位置を用いて入力される第2操作を認識する認識手段と、前記認識手段に認識された操作への応答するための出力を制御する出力制御手段を備え、前記出力制御手段は、前記所定の操作面からの距離が、前記第1閾値より大きい第2閾値を下回る入力位置の数が複数で、かつ、前記所定の操作面からの距離が前記第1閾値を下回る入力位置が1つの間、前記第1操作に応答しないことを特徴とする。   In order to solve the above problems, an information processing apparatus according to the present invention includes an acquisition unit that acquires information corresponding to a distance from the predetermined operation surface with respect to an input position input to a space on the predetermined operation surface; Based on the information acquired by the acquisition means, the first operation input using one input position whose distance from the predetermined operation surface is less than the first threshold, and the distance to the predetermined operation surface is Recognizing means for recognizing a second operation input using a plurality of input positions below a first threshold, and output control means for controlling an output for responding to the operation recognized by the recognizing means, The output control means includes a plurality of input positions whose distance from the predetermined operation surface is less than a second threshold value that is greater than the first threshold value, and the distance from the predetermined operation surface satisfies the first threshold value. One input position below During, characterized in that it does not respond to the first operation.

本発明によれば、物体とタッチ対象面の近接状態に基づいて入力を認識するシステムにおける、複数の入力位置を使って入力される操作の操作性が向上する。   According to the present invention, the operability of an operation input using a plurality of input positions in a system that recognizes an input based on the proximity state of the object and the touch target surface is improved.

情報処理装置100を利用するテーブルトップインタフェースシステムの一例を表す図The figure showing an example of the table top interface system using information processor 100 情報処理装置100のハードウェア構成、及び機能構成の一例を表す図The figure showing an example of hardware constitutions and functional composition of information processor 100 情報処理装置100が実行するメイン処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of the main process which the information processing apparatus 100 performs マルチタッチ操作に有効な入力位置を特定する処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of the process which specifies the input position effective for multi-touch operation. 入力位置のタッチ状態を判定する処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of the process which determines the touch state of an input position 入力位置によるタッチ操作を認識する処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of the process which recognizes the touch operation by an input position. ユーザの手の状態の具体例とそれに対応する入力位置と各種閾値の例を表す図The figure showing the example of a user's hand state, the input position corresponding to it, and the example of various threshold values ユーザの手の状態の具体例とそれに対応する入力位置と各種閾値の例を表す図The figure showing the example of a user's hand state, the input position corresponding to it, and the example of various threshold values 情報処理装置100が実行するメイン処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of the main process which the information processing apparatus 100 performs 情報処理装置100が実行するメイン処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of the main process which the information processing apparatus 100 performs 変形例において設定される2つの閾値を概念的に表す図The figure which represents notionally two threshold values set in a modification

以下、本発明に係る実施形態を、図面を参照して詳細に説明する。なお、実施形態に記載する構成は例示であり、本発明の範囲は必ずしもそれらの具体的な構成に限定されるとは限らない。   Hereinafter, embodiments according to the present invention will be described in detail with reference to the drawings. Note that the configurations described in the embodiments are examples, and the scope of the present invention is not necessarily limited to these specific configurations.

<第1の実施形態>
まず、第1の実施形態として、テーブルトップインタフェースシステムのテーブル面に投影されたアイテムに対し、ユーザが行うタッチ操作を認識する処理の例を説明する。特に、1つの入力位置によって入力されるシングルタッチ操作と、複数の入力位置によって入力されるマルチタッチ操作の両方を認識可能であることが前提となる。
<First Embodiment>
First, as a first embodiment, an example of processing for recognizing a touch operation performed by a user on an item projected on a table surface of a table top interface system will be described. In particular, it is assumed that both a single touch operation input at one input position and a multi-touch operation input at a plurality of input positions can be recognized.

図1(a)は、本実施形態に係る情報処理装置100を設置したテーブルトップインタフェースシステムの外観の一例である。操作面101は、テーブルトップインタフェースのテーブル部分であり、ユーザは、操作面101をタッチすることでタッチ操作を入力することが可能である。ただし、本実施形態では、操作面101にタッチセンサは搭載されない。そのため、情報処理装置100は、操作面101とユーザが操作する指やペンなどの操作体が実際に接触したかではなく、接触したとみなせる程度に近接した状態をタッチ入力中の状態(以下、タッチ状態)検出することで、タッチ操作の認識を可能とする。   FIG. 1A is an example of the appearance of a tabletop interface system in which the information processing apparatus 100 according to the present embodiment is installed. The operation surface 101 is a table portion of the table top interface, and the user can input a touch operation by touching the operation surface 101. However, in this embodiment, a touch sensor is not mounted on the operation surface 101. For this reason, the information processing apparatus 100 does not determine whether the operation surface 101 and an operation body such as a finger or a pen operated by the user are actually in contact with each other, but a state close enough to be regarded as being in contact (hereinafter referred to as touch input). The touch operation can be recognized by detecting the touch state.

本実施形態では、操作面101の上方に、操作面を見下ろすようにして距離画像センサ102が設置される。距離画像とは、各画素の値に、当該距離画像を撮像する撮像手段の基準位置(例えばレンズ中心など)から、当該画素に撮像された被写体表面までの距離に対応する情報が反映された画像である。本実施形態において、距離画像センサ102が撮像する距離画像の画素値には、距離画像センサ102から、操作面101あるいはその上方に存在する物体表面までの距離が反映される。撮像された距離画像は、情報処理装置100に距離画像として入力される。情報処理装置100は、距離画像を解析することでユーザの手106の三次元位置を取得し、入力される操作を認識する。従ってユーザは、操作面上の空間(操作面101と距離画像センサ102の間の空間)のうち、距離画像センサ102によって撮像可能な範囲において、手などの所定の物体を動かすことにより空間ジェスチャ操作を入力することが可能である。本実施形態では、赤外光の反射パターン(または反射時間)によって距離情報を取得する方式のセンサを利用する。ただし、例えばステレオカメラシステムや、赤外光発光素子と赤外受光素子を設置することで距離画像を得ることも可能である。また、操作面101を含む空間において、操作体の高さ方向を含む三次元の位置情報が得られる手段であれば、距離画像を撮像する形態に限らず、例えば静電センサや感圧センサや温度センサにより三次元の位置情報を得る方法でも、本実施形態を実施可能である。   In the present embodiment, the distance image sensor 102 is installed above the operation surface 101 so as to look down at the operation surface. A distance image is an image in which information corresponding to the distance from the reference position (for example, the center of a lens, etc.) of the imaging means that captures the distance image to the subject surface imaged by the pixel is reflected in the value of each pixel. It is. In the present embodiment, the distance image sensor 102 captures the distance value from the distance image sensor 102 to the operation surface 101 or the object surface above the distance image. The captured distance image is input to the information processing apparatus 100 as a distance image. The information processing apparatus 100 acquires the three-dimensional position of the user's hand 106 by analyzing the distance image and recognizes the input operation. Therefore, the user operates a space gesture by moving a predetermined object such as a hand within a range that can be imaged by the distance image sensor 102 in a space on the operation surface (a space between the operation surface 101 and the distance image sensor 102). Can be entered. In the present embodiment, a sensor that acquires distance information using a reflection pattern (or reflection time) of infrared light is used. However, for example, a distance image can be obtained by installing a stereo camera system or an infrared light emitting element and an infrared light receiving element. Further, in the space including the operation surface 101, any means capable of obtaining three-dimensional position information including the height direction of the operation body is not limited to a mode for capturing a distance image, for example, an electrostatic sensor, a pressure sensor, The present embodiment can also be implemented by a method of obtaining three-dimensional position information using a temperature sensor.

また本実施形態では、可視光カメラ103が上方から操作面101を見下ろすようにして設置される。情報処理装置100は、可視光カメラ103を制御して、操作面101に載置された物体を撮像してその読み取り画像を得る書画カメラとして機能することができる。従って情報処理装置100は、可視光カメラ103によって得られる可視光画像や、距離画像センサ102によって得られる距離画像に基づいて、操作面101上の空間に存在する物体を検出し、さらに識別する。物体には、例えば、ユーザの手、紙媒体や本などのドキュメントやその他の立体物を含む。ただし、図1(a)に例示するシステムの場合は、距離画像センサ102と可視光カメラ103の画角には、テーブル周囲に存在するユーザの頭部は含まれない。そのため得られた距離画像では、画像端部がユーザの腕(肩から先の部分)の何処か一部と交差する。   In the present embodiment, the visible light camera 103 is installed so as to look down on the operation surface 101 from above. The information processing apparatus 100 can function as a document camera that controls the visible light camera 103 to capture an image of an object placed on the operation surface 101 and obtain a read image thereof. Therefore, the information processing apparatus 100 detects and further identifies an object existing in the space on the operation surface 101 based on the visible light image obtained by the visible light camera 103 and the distance image obtained by the distance image sensor 102. The object includes, for example, a user's hand, a paper medium, a document such as a book, and other three-dimensional objects. However, in the case of the system illustrated in FIG. 1A, the angle of view of the distance image sensor 102 and the visible light camera 103 does not include the user's head existing around the table. Therefore, in the obtained distance image, the end of the image intersects with some part of the user's arm (portion beyond the shoulder).

プロジェクタ104は、操作面101の上面に画像の投影を行う。本システムでは、ユーザは投影された画像に含まれるアイテム105に対して、タッチや空間ジェスチャによる操作を行う。上述したように、本実施形態では、手106の検出および操作の認識には、距離画像センサ102で取得した距離画像を用いる。距離画像を用いることで、プロジェクタ104の投影光の影響でユーザの手の色が変化しても影響を受けにくいという利点がある。本システムの表示装置は、プロジェクタ104に替えて、操作面101を液晶ディスプレイとするなどで構成することもできる。その場合、可視光画像からの肌色領域を検出するなどして画像から人の手を検出する方式を用いても、投影光の影響は受けずに手の検出が可能である。   The projector 104 projects an image on the upper surface of the operation surface 101. In this system, the user performs an operation by touch or space gesture on the item 105 included in the projected image. As described above, in the present embodiment, the distance image acquired by the distance image sensor 102 is used for detecting the hand 106 and recognizing the operation. By using the distance image, there is an advantage that even if the color of the user's hand changes due to the projection light of the projector 104, it is difficult to be affected. The display device of the present system can be configured by using the operation surface 101 as a liquid crystal display instead of the projector 104. In that case, even if a method of detecting a human hand from an image by detecting a skin color region from a visible light image, the hand can be detected without being affected by the projection light.

なお、操作面101を上方から見た画像が得られる構成であれば、必ずしも距離画像センサ102及び可視光カメラ103自体が上方に設置されている必要はない。例えば、上方に設置されたミラーからの反射光を撮像するように距離画像センサ102及び可視光カメラ103を構成しても構わない。プロジェクタ104も同様に、図1(a)の例では、斜め上方から見下ろすように操作面101上への投影を行うが、異なる方向に向けて投影された投影光を、ミラーなどを利用して操作面101に反射させてもよい。操作面101が鉛直方向に沿って設置されたような場合も同様である。   Note that the distance image sensor 102 and the visible light camera 103 themselves are not necessarily installed above as long as an image obtained by viewing the operation surface 101 from above is obtained. For example, the distance image sensor 102 and the visible light camera 103 may be configured so as to capture reflected light from a mirror installed above. Similarly, in the example of FIG. 1A, the projector 104 projects onto the operation surface 101 so as to look down from diagonally above, but the projection light projected in different directions is used using a mirror or the like. It may be reflected on the operation surface 101. The same applies to the case where the operation surface 101 is installed along the vertical direction.

本実施形態では、操作面101上の三次元空間に、図1に示すx、y、z軸を定義し、位置情報を扱う。図1(a)の例では、点107を座標軸の原点とする。ここでは一例として、テーブルの上面に平行な二次元がxy平面、テーブル上面に直交し上方に伸びる方向(法線方向)をz軸の正方向としている。本実施形態では、z軸方向は、世界座標系での高さ方向に相当する。しかしながら本実施形態は、ホワイトボードや壁面など、水平ではない面を操作面101とするシステムや、操作面が凹凸を有する場合や、公知のAR(拡張現実)システムを利用して生成された仮想面である場合にも適用可能である。   In the present embodiment, the x, y, and z axes shown in FIG. 1 are defined in the three-dimensional space on the operation surface 101 to handle position information. In the example of FIG. 1A, the point 107 is the origin of the coordinate axes. Here, as an example, the two dimensions parallel to the upper surface of the table are the xy plane, and the direction perpendicular to the upper surface of the table and extending upward (normal direction) is the positive direction of the z axis. In the present embodiment, the z-axis direction corresponds to the height direction in the world coordinate system. However, in the present embodiment, a non-horizontal surface such as a whiteboard or a wall surface is used as the operation surface 101, or the operation surface has irregularities, or a virtual generated using a known AR (augmented reality) system. It can also be applied to a surface.

図1(b)は、距離画像センサ102によって撮像される距離画像とシステムの関係を表す図である。本実施形態において、距離画像センサ102は、画角に含む所定の空間の三次元の位置情報が反映された距離画像を取得する機能を持つ。本実施形態では、距離画像センサ102は、距離画像センサ102から操作面101方向に赤外光を照射し、被写体の表面で反射された反射光を、センサの受光素子で受光する。   FIG. 1B is a diagram illustrating the relationship between the distance image captured by the distance image sensor 102 and the system. In the present embodiment, the distance image sensor 102 has a function of acquiring a distance image in which three-dimensional position information of a predetermined space included in the angle of view is reflected. In the present embodiment, the distance image sensor 102 emits infrared light from the distance image sensor 102 toward the operation surface 101, and the reflected light reflected by the surface of the subject is received by the light receiving element of the sensor.

本実施形態で利用する距離画像は、受光された反射光の位相遅れを計測することで、画素毎に反射するまでにかかった時間に対応する被写体表面までの距離を、画素値に反映させたものである。本実施形態では、距離画像センサ102は操作面101を見下ろすように距離画像を撮像するため、距離画像の画素値が表す距離情報は、距離画像センサ102から操作面101を見下ろす方向の奥行き方向の距離である。言い換えれば、距離画像の各画素値は、操作面101からの距離方向の位置情報(z座標)を得るための情報を含む。ただし、本実施形態では、距離画像センサ102は、z軸に対して斜めに角度をもつように設置されている。従って、本実施形態では距離画像の画素値をそのままz座標として利用するのではなく、後述するようにセンサや設置環境に応じたパラメータを使った座標変換を施す。そして、後述するように距離画像内に定義された位置情報のuvd座標を、世界座標のxyz座標に変換して利用する。本実施形態では、操作面は地面に平行なテーブル面を想定しているので、入力位置のz座標が表す操作面101からの距離は、操作面101からの高さを表す距離値に相当する。従って、z座標のことを高さと表現する場合がある。   The distance image used in this embodiment reflects the distance to the subject surface corresponding to the time taken to reflect each pixel by measuring the phase delay of the received reflected light in the pixel value. Is. In the present embodiment, since the distance image sensor 102 captures a distance image so as to look down the operation surface 101, the distance information represented by the pixel value of the distance image is in the depth direction in the direction of looking down the operation surface 101 from the distance image sensor 102. Distance. In other words, each pixel value of the distance image includes information for obtaining position information (z coordinate) in the distance direction from the operation surface 101. However, in the present embodiment, the distance image sensor 102 is installed so as to have an angle with respect to the z axis. Therefore, in this embodiment, the pixel value of the distance image is not used as it is as the z coordinate, but coordinate conversion using parameters according to the sensor and the installation environment is performed as described later. Then, as will be described later, the uvd coordinates of the position information defined in the distance image are converted into xyz coordinates of the world coordinates and used. In the present embodiment, since the operation surface is assumed to be a table surface parallel to the ground, the distance from the operation surface 101 represented by the z coordinate of the input position corresponds to a distance value representing the height from the operation surface 101. . Therefore, the z coordinate may be expressed as height.

図1(b)において、距離画像108は、距離画像センサ102によって撮像される距離画像の内容の一例を表す。ただし、図1(b)では画素値に反映された距離情報は省略し、被写体のエッジのみを明示する。操作面101及び原点107は図1(a)に対応している。画像端111は、距離画像センサ102の画角に相当する。   In FIG. 1B, the distance image 108 represents an example of the content of the distance image captured by the distance image sensor 102. However, in FIG. 1B, the distance information reflected in the pixel value is omitted, and only the edge of the subject is clearly shown. The operation surface 101 and the origin 107 correspond to FIG. The image end 111 corresponds to the angle of view of the distance image sensor 102.

距離画像には、図1(b)に示すようにu軸及びv軸による二次元座標系が設定される。なお図1(b)の例では、距離画像の解像度は640[dot]×480[dot]とする。入力位置110の距離画像内の位置座標が(u,v)であり、距離画像センサ102から入力位置までの距離に相当する画素値がdであるとする。本実施形態では、このように距離画像内で定義される位置情報に対して、距離画像センサ102のレンズ特性および操作面101との相対位置関係等に基づく座標変換を施す。これにより、各画素の座標をテーブルに定義された実世界上の座標系にマッピングし、入力位置110について、実空間の三次元位置(x,y,z)を取得することができる。座標変換に利用する変換行列は、距離画像センサ102が設置された時に、予め調整作業を行い取得する。なお、三次元座標の算出に用いる距離dは、単一の画素値だけでなく、手領域内で入力位置110の近傍の数ピクセル分の画素を対象に、ノイズ除去処理や平均化処理を実施した上で特定してもよい。   As shown in FIG. 1B, a two-dimensional coordinate system based on the u axis and the v axis is set in the distance image. In the example of FIG. 1B, the resolution of the distance image is 640 [dot] × 480 [dot]. Assume that the position coordinates in the distance image of the input position 110 are (u, v), and the pixel value corresponding to the distance from the distance image sensor 102 to the input position is d. In the present embodiment, coordinate conversion based on the lens characteristics of the distance image sensor 102 and the relative positional relationship with the operation surface 101 is performed on the position information defined in the distance image in this way. As a result, the coordinates of each pixel are mapped to the real-world coordinate system defined in the table, and the three-dimensional position (x, y, z) in the real space can be acquired for the input position 110. The transformation matrix used for coordinate transformation is acquired by performing adjustment work in advance when the distance image sensor 102 is installed. Note that the distance d used for calculating the three-dimensional coordinates is not limited to a single pixel value, but a noise removal process and an averaging process are performed on pixels corresponding to several pixels near the input position 110 in the hand region. And may be specified.

斜線で示す領域109は、距離画像108に写っているユーザの手106の像である(以下では単に手領域109という)。本実施形態では、z座標に閾値処理を行うことで、テーブル表面である操作面101より高い位置に存在する被写体が写る領域を、手領域として検出する。本実施形態では、検出される手のそれぞれに対して1箇所の入力位置を検出する。入力位置とは、ユーザが手指を使って指し示していると推定される位置であり、三次元座標で表される。本実施形態では、前提として、ユーザがタッチ操作のために点を指定する場合には、1本だけ指を伸ばした「指さしポーズ」を取ることが規定される。1本指を延ばすポーズが、多くの人にとっては1点を指し示すのに自然な体勢だからである。従って、入力位置としては、手領域109のうち端部だと推定される位置を特定する。指差しポーズであれば、端部は指先に当たる。具体的には、距離画像から、手領域109を検出し、手領域109のうち画像端111から最も遠い位置に存在する画素を示す座標を、指先にあたる1点とみなす。図1(b)に示される手領域109の場合、画像端111から最も遠い点が入力位置110として特定される。なお、入力位置の特定方法はこれに限らず、例えば、手領域から手の五指を検出して、所定の指の端部を特定してもよい。   A hatched area 109 is an image of the user's hand 106 in the distance image 108 (hereinafter simply referred to as the hand area 109). In the present embodiment, by performing threshold processing on the z-coordinate, an area where a subject existing at a position higher than the operation surface 101 that is the table surface is detected as a hand area. In this embodiment, one input position is detected for each detected hand. The input position is a position estimated that the user is pointing with a finger, and is represented by three-dimensional coordinates. In the present embodiment, it is premised that when the user designates a point for a touch operation, a “pointing pose” in which only one finger is extended is taken. This is because a pose with one finger extended is a natural posture for many people to point to one point. Therefore, as the input position, a position estimated to be an end portion of the hand region 109 is specified. In a pointing pose, the edge hits the fingertip. Specifically, the hand region 109 is detected from the distance image, and the coordinate indicating the pixel located farthest from the image end 111 in the hand region 109 is regarded as one point corresponding to the fingertip. In the case of the hand region 109 shown in FIG. 1B, the point farthest from the image end 111 is specified as the input position 110. Note that the method of specifying the input position is not limited to this, and for example, the five fingers of the hand may be detected from the hand region to specify the end portion of the predetermined finger.

また本実施形態では、フレームレートに従い繰り返し撮像される距離画像の各フレームで、手領域109が画像端111と交差する部分の中央を、手の侵入位置として定義する。図1(b)の手領域109の場合、侵入位置112が特定される。侵入位置112もまた、距離画像内に定義された位置情報を変換することで、実空間内での三次元位置情報として取得される。本実施形態では、距離画像から複数の手領域が検出された場合、そのそれぞれについて、入力位置及び侵入位置が特定される。そして、複数の手領域のそれぞれについてタッチ操作を認識する。   In the present embodiment, the center of the portion where the hand region 109 intersects the image end 111 in each frame of the distance image repeatedly captured according to the frame rate is defined as the hand entry position. In the case of the hand region 109 in FIG. 1B, the intrusion position 112 is specified. The intrusion position 112 is also acquired as three-dimensional position information in real space by converting the position information defined in the distance image. In the present embodiment, when a plurality of hand regions are detected from the distance image, the input position and the intrusion position are specified for each of them. Then, the touch operation is recognized for each of the plurality of hand regions.

以下、本明細書ではユーザがタッチ操作の入力に用いる操作体及びその端部の一例として、ユーザの手106及びその指が利用される場合を説明する。ただし、本実施形態では操作体として、手指だけでなくスタイラスやロボットアームなどの器具を利用する場合にも適用可能である。なお操作体の端部とは、タッチ操作のために入力位置を指し示すのに用いられる部位を示すが、操作体の一部に属し、タッチ操作の入力が可能な部位であれば、突起形状の端部に限定せずともよい。   Hereinafter, in the present specification, a case where the user's hand 106 and its finger are used as an example of an operation body used for input of a touch operation by the user and an end thereof will be described. However, in the present embodiment, the present invention can be applied not only to fingers but also instruments such as a stylus and a robot arm as the operating body. Note that the end of the operating body refers to a part used to point to the input position for the touch operation. However, if the part belongs to a part of the operating body and allows input of the touch operation, the end of the operating body has a protruding shape. It does not need to be limited to the end.

本実施形態では、距離画像センサ102によって撮像される距離画像を使って操作体と操作面101の間の距離を取得し、その距離が第1閾値より小さい場合に、その操作体が操作面101にタッチしたと認識する。さらに、操作体が操作面101にタッチしたと認識するための距離の閾値とは別に、第2閾値を設ける。そして、複数の操作体が検出される場合は、第1閾値による判定の前に第2閾値による閾値判定を行うことで、複数の操作体が連動して1のマルチタッチ操作を入力するのに用いられるかを判定した上で、各操作体によりタッチ入力がなされたかを判定する。図2(a)は、本実施形態に係る情報処理装置100を含むテーブルトップインタフェースのハードウェア構成図である。中央処理ユニット(CPU)200は、RAM202をワークメモリとして、ROM201や記憶装置203に格納されたOSやプログラムを実行して、各種処理の演算や論理判断などを行う。さらにシステムバス204に接続された各構成を制御する。記憶装置203は、ハードディスクドライブや各種インタフェースによって接続された外部記憶装置などであり、実施形態の操作認識処理にかかるプログラムや各種データを記憶する。   In the present embodiment, the distance between the operation body and the operation surface 101 is acquired using the distance image captured by the distance image sensor 102, and when the distance is smaller than the first threshold, the operation body is the operation surface 101. Recognize that you touched. Further, a second threshold value is provided separately from the distance threshold value for recognizing that the operating body touches the operation surface 101. When a plurality of operating objects are detected, a threshold determination by the second threshold is performed before the determination by the first threshold so that the plurality of operating objects can input one multi-touch operation in conjunction with each other. After determining whether it is used, it is determined whether touch input has been made by each operating tool. FIG. 2A is a hardware configuration diagram of a tabletop interface including the information processing apparatus 100 according to the present embodiment. A central processing unit (CPU) 200 uses the RAM 202 as a work memory, executes an OS and a program stored in the ROM 201 and the storage device 203, and performs various processing operations and logical determinations. Further, each component connected to the system bus 204 is controlled. The storage device 203 is a hard disk drive, an external storage device connected by various interfaces, and the like, and stores programs and various data related to the operation recognition processing of the embodiment.

距離画像センサ102は、CPU200の制御に従い、アイテムが表示されるテーブルとアイテムを操作するユーザの手を含む、操作面101上の空間の距離画像を撮像し、撮影した距離画像をシステムバス204に出力する。本実施形態では、距離画像の取得方法として、環境光やテーブル面の表示の影響が小さい反射時間方式(Time−of−Flight方式)を基に説明するが、用途に応じて視差方式や赤外パターン方式などを利用することも可能である。プロジェクタ104は、CPU200の制御に従い、テーブルに操作対象となる画像アイテムを投影表示する。   The distance image sensor 102 captures a distance image of a space on the operation surface 101 including a table on which the item is displayed and a user's hand operating the item according to the control of the CPU 200, and the captured distance image is input to the system bus 204. Output. In the present embodiment, the distance image acquisition method will be described based on a reflection time method (Time-of-Flight method) that is less affected by ambient light or table surface display. It is also possible to use a pattern method or the like. The projector 104 projects and displays an image item to be operated on the table according to the control of the CPU 200.

なお上述したシステムでは、可視光カメラ103、距離画像センサ102、プロジェクタ104はそれぞれ情報処理装置100に入出力用のインタフェースを介して接続された外部装置であり、情報処理装置100と協同して情報処理システムを構成する。ただし、これらのデバイスは、情報処理装置100に一体化されていても構わない。なお、距離画像センサ102は、静電センサや感圧センサや温度センサ等でもよく、入力位置の三次元の位置情報や入力位置の接触圧力や接触面積等の接触情報を取得する。   In the above-described system, the visible light camera 103, the distance image sensor 102, and the projector 104 are external devices connected to the information processing apparatus 100 via an input / output interface, respectively. Configure the processing system. However, these devices may be integrated with the information processing apparatus 100. The distance image sensor 102 may be an electrostatic sensor, a pressure sensor, a temperature sensor, or the like, and acquires contact information such as three-dimensional position information of the input position, contact pressure of the input position, and a contact area.

図2(b)は、情報処理装置100のソフトウェアの構成を示すブロック図の一例である。これらの各機能部は、CPU200が、ROM201に格納されたプログラムをRAM202に展開し、後述する各フローチャートに従った処理を実行することで実現されている。そして、各処理の実行結果をRAM202に保持する。また例えば、CPU200を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。   FIG. 2B is an example of a block diagram illustrating a software configuration of the information processing apparatus 100. Each of these functional units is realized by the CPU 200 developing a program stored in the ROM 201 in the RAM 202 and executing processing according to each flowchart described later. The execution result of each process is held in the RAM 202. Further, for example, when hardware is configured as an alternative to software processing using the CPU 200, arithmetic units and circuits corresponding to the processing of each functional unit described here may be configured.

三次元情報取得部210は、距離画像センサ102によって撮像された距離画像をフレームレートに従う一定時間毎に取得し、RAM202に随時保持する。なお三次元情報取得部210が取得し、各機能部とやりとりする対象は、実際には画像データに対応する信号であるが、本明細書では単に「距離画像を取得する」として説明する。   The three-dimensional information acquisition unit 210 acquires a distance image captured by the distance image sensor 102 at regular intervals according to the frame rate, and stores the acquired distance image in the RAM 202 as needed. The target acquired by the three-dimensional information acquisition unit 210 and exchanged with each functional unit is actually a signal corresponding to the image data, but will be described as simply “acquiring a distance image” in the present specification.

操作体取得部211は、三次元情報取得部210によって取得された距離画像の各画素について、閾値判定やノイズ低減処理を施し、距離画像中の手領域(腕を含む)を検出する。手領域とは、入力された距離画像のうち、ユーザが操作体として利用する手が被写体として写る画素群である。そして、検出した手領域にIDを付与し、RAM202に保持する。IDを付与する際、異なる距離画像のフレームで検出された手領域が、同一の手領域とみなされた場合には、同じIDを付与する。同一の手領域とみなされる条件とは、時間的に近い距離画像のフレームで検出され、かつ手領域の侵入位置112の距離が近いことである。一方、同一の手領域とみなされない場合には、手領域が検出された順番に数字を付与する(ID=1、2、・・・)。   The operating tool acquisition unit 211 performs threshold determination and noise reduction processing on each pixel of the distance image acquired by the three-dimensional information acquisition unit 210, and detects a hand region (including an arm) in the distance image. The hand region is a pixel group in which a hand used as an operating tool by the user is captured as a subject in the input distance image. Then, an ID is assigned to the detected hand region and is held in the RAM 202. When assigning IDs, if the hand regions detected in the frames of different distance images are regarded as the same hand region, the same ID is assigned. The condition that is regarded as the same hand region is that it is detected in a frame of a distance image that is close in time and that the intrusion position 112 of the hand region is short. On the other hand, if they are not regarded as the same hand area, numbers are assigned in the order in which the hand areas are detected (ID = 1, 2,...).

入力位置取得部212は、操作体取得部211によって検出された手領域の輪郭情報に基づき、手領域の端部に当たる1点を入力位置として検出する。本実施形態では図1(a)(b)に示したように、手領域の輪郭のうち、画像端111から最も遠くに存在する画素を示す座標を、入力位置として検出する。そして、検出された入力位置の距離画像における位置情報を、世界座標のxyz座標に変換し、手領域と同じIDを付与して、RAM202に保持する。なお、静電センサや感圧センサ等により、操作面101に近接する指先位置の三次元の位置情報(座標値)や接触情報(接触圧力や接触面積等)を取得し、入力位置情報としてRAM202に保持する方法を採用しもよい。   The input position acquisition unit 212 detects one point corresponding to the end of the hand region as an input position based on the contour information of the hand region detected by the operating tool acquisition unit 211. In the present embodiment, as shown in FIGS. 1A and 1B, coordinates indicating a pixel that is farthest from the image end 111 in the contour of the hand region are detected as the input position. Then, the position information in the distance image of the detected input position is converted into xyz coordinates of world coordinates, the same ID as that of the hand region is given, and held in the RAM 202. Note that three-dimensional position information (coordinate values) and contact information (contact pressure, contact area, etc.) of the fingertip position close to the operation surface 101 are acquired by an electrostatic sensor, a pressure sensor, or the like, and the RAM 202 is used as input position information. It is also possible to adopt a method of holding in.

特定部213は、入力位置取得部212により検出された入力位置で、所定の条件を満たす入力位置を、マルチタッチ操作に有効な入力位置を特定する。本実施形態では、入力位置取得部212により検出された複数の入力位置のうち、操作面101からの距離が、所定の第2閾値小さい入力位置が複数存在する場合に、それらの中からマルチタッチ操作の入力として有効な入力位置を特定する。ここで用いられる第2閾値は、入力位置がタッチ状態にあることを判定するために用いられる第1閾値(タッチ閾値と呼ばれることもある)よりも大きい距離が設定される。このように2段階の閾値判定により、本実施形態では、各タッチ位置がタッチ状態にあるか否かを判定するより前に、その入力位置がマルチタッチ操作に用いられる可能性があるか否かを判定した結果を得ることを可能とする。例えば2つの入力位置のうちの片方だけがタッチ状態に遷移した状態にあっても、それらがマルチタッチ操作に用いられる可能性が高い場合は、タッチ状態に遷移した入力位置に基づくシングルタッチ操作の認識を抑制する。そして、他方の入力位置がタッチ状態に遷移するのを待機し、マルチタッチ状態に遷移したことに応じてマルチタッチ操作を認識することが可能となる。   The specifying unit 213 specifies an input position that satisfies a predetermined condition at the input position detected by the input position acquiring unit 212 and an input position that is effective for the multi-touch operation. In the present embodiment, among a plurality of input positions detected by the input position acquisition unit 212, when there are a plurality of input positions whose distance from the operation surface 101 is smaller by a predetermined second threshold, multi-touch is selected from them. A valid input position is specified as an operation input. As the second threshold value used here, a distance larger than a first threshold value (sometimes referred to as a touch threshold value) used for determining that the input position is in the touch state is set. In this way, in this embodiment, whether or not there is a possibility that the input position may be used for the multi-touch operation before determining whether or not each touch position is in the touch state by the two-stage threshold determination. It is possible to obtain the result of determining. For example, even if only one of the two input positions is in the state of transition to the touch state, if there is a high possibility that they will be used for multi-touch operation, the single touch operation based on the input position transitioned to the touch state Suppress recognition. And it waits for the other input position to change to a touch state, and it becomes possible to recognize multi-touch operation according to having changed to the multi-touch state.

本実施形態では、操特定部213は、操作面101からの距離が第2閾値よりも小さい複数の入力位置が、予め定義した条件を満たす場合に、それらをマルチタッチ操作の入力として有効な入力位置として特定する。そして、特定された入力位置をIDと関連付けて、特定結果をペアリング情報としてRAM202に保持する。以降、このマルチタッチ操作に有効な複数の入力位置を特定する処理を、複数の入力位置を“ペアリングする”と記載する。   In the present embodiment, the operation specifying unit 213, when a plurality of input positions whose distances from the operation surface 101 are smaller than the second threshold satisfy a predefined condition, input them as effective inputs for a multi-touch operation. Specify as location. Then, the identified input position is associated with the ID, and the identification result is held in the RAM 202 as pairing information. Hereinafter, the process of specifying a plurality of input positions effective for the multi-touch operation is referred to as “pairing” the plurality of input positions.

認識部214は、入力されるタッチ操作を認識する。まず、入力位置の三次元座標に基づいて、各入力位置の操作面101に対する近接状態が、タッチ入力中とみなされる状態かを判定し、判定結果をRAM202に保持する。本実施形態では、入力位置と操作面101の間の距離(高さに相当するz座標)が所定の閾値より小さい場合は、タッチ入力中とみなされる状態(以下、タッチ状態)だと判定する。そして、タッチ状態にある間の入力位置により指示された操作面101上の位置(入力位置のxy座標に相当)を追跡することで、タッチ、リリース、ムーブ、フリック、ピンチ、ローテート等のタッチイベントを生成する。そして、生成したタッチイベントを表示制御部215に通知する。   The recognition unit 214 recognizes an input touch operation. First, based on the three-dimensional coordinates of the input position, it is determined whether the proximity state of each input position to the operation surface 101 is considered to be a touch input, and the determination result is held in the RAM 202. In this embodiment, when the distance (z coordinate corresponding to the height) between the input position and the operation surface 101 is smaller than a predetermined threshold, it is determined that the touch input is being performed (hereinafter referred to as a touch state). . Then, by tracking the position on the operation surface 101 (corresponding to the xy coordinates of the input position) indicated by the input position while in the touch state, touch events such as touch, release, move, flick, pinch, rotate, etc. Is generated. Then, the generated touch event is notified to the display control unit 215.

表示制御部215は、認識部214により通知されるユーザ操作に応じて実行される各処理の結果(タッチイベント等)を反映した描画データを生成し、プロジェクタ104に出力することで、操作面101に表示する内容を制御する。ユーザ操作とは、入力位置や入力位置の動き等によって定義され、情報処理装置100に対して所定の指示を入力することができるものである。また、表示制御部215は、入力位置がペアリングされた結果を描画データに反映することで、ユーザにペアリング結果を通知する。例えば、ペアリングされた入力位置に同じ色を投影したり、同じ形状(円や多角形等)や記号を投影したり、数字や文字の表示等で視覚的に通知する。なお、ペアリング結果の通知は視覚に限定せず、音声や触角等による通知でもよい。例えば、ペアリング完了時に通知音を鳴らしたり、入力位置を振動させたりしてもよい。   The display control unit 215 generates drawing data reflecting the result of each process (such as a touch event) executed in response to a user operation notified by the recognition unit 214, and outputs the drawing data to the projector 104, thereby operating the operation surface 101. Control what is displayed on the screen. The user operation is defined by an input position, a movement of the input position, and the like, and can input a predetermined instruction to the information processing apparatus 100. Further, the display control unit 215 notifies the user of the pairing result by reflecting the result of pairing the input position in the drawing data. For example, the same color is projected on the paired input position, the same shape (circle, polygon, etc.) or symbol is projected, and the number or character is displayed for visual notification. Note that the notification of the pairing result is not limited to the visual sense, and may be a notification by voice, a feeler, or the like. For example, a notification sound may be sounded when pairing is completed, or the input position may be vibrated.

図3は、本実施形態における情報処理装置のメイン処理の流れを表すフローチャートである。本実施形態では、情報処理装置100の電源がONになると、まず、図3のステップS301において、表示制御部215が、記憶装置203から取得したデータに基づいてUI部品を配置した画面を生成し、プロジェクタ104へ出力する。そして、プロジェクタ104が操作面101に画面を投影する。   FIG. 3 is a flowchart showing the flow of main processing of the information processing apparatus according to this embodiment. In the present embodiment, when the information processing apparatus 100 is turned on, first, in step S301 of FIG. 3, the display control unit 215 generates a screen on which UI components are arranged based on the data acquired from the storage device 203. And output to the projector 104. Then, the projector 104 projects a screen on the operation surface 101.

次に、ステップS302において、三次元情報取得部210が、距離画像センサ102から距離画像を取得する。なお、距離画像センサ102は、情報処理装置の電源がONになっている間、操作面101の操作領域の距離画像を、所定の時間間隔(フレームレート)で撮像し、取得された距離画像を情報処理装置に入力する。従って、本処理は距離画像のフレームレートに伴って繰り返される。   Next, in step S <b> 302, the three-dimensional information acquisition unit 210 acquires a distance image from the distance image sensor 102. The distance image sensor 102 captures a distance image of the operation area of the operation surface 101 at a predetermined time interval (frame rate) while the information processing apparatus is turned on, and the acquired distance image is displayed. Input to the information processing apparatus. Therefore, this process is repeated with the frame rate of the distance image.

ステップS303において、操作体取得部211がユーザの手領域(腕を含む)を検出する。手領域が検出された場合(ステップS303でYES)は、ステップS304に進む。一方、手領域が検出されなかった場合(ステップS303でNO)は、ステップS302に処理が戻り、手領域が検出されるまでステップS302とS303の処理を繰り返す。   In step S303, the operating tool obtaining unit 211 detects the user's hand area (including the arm). If a hand area is detected (YES in step S303), the process proceeds to step S304. On the other hand, if the hand area is not detected (NO in step S303), the process returns to step S302, and the processes in steps S302 and S303 are repeated until the hand area is detected.

ステップS304において、操作体取得部211が、ステップS303で検出した手領域にIDを付与し、RAM202に保持する。例えばIDは、検出した順番に数字を付与する(1、2、・・・)。ステップS305において、入力位置取得部212が、ステップS303で検出された手領域の入力位置を検出し、検出した入力位置に手領域と同じIDを付与して、RAM202に保持する。ステップS306において、特定部213が、ステップS305で検出された入力位置で、マルチタッチ操作に有効な入力位置を特定する。ステップS306の処理の内容は、図4のフローチャートを参照して後述する。ステップS307において、認識部214が、ステップS305で検出された入力位置のタッチ状態の判定処理を実行する。ステップS307の処理の内容は、図5のフローチャートを参照して後述する。   In step S <b> 304, the operating tool acquisition unit 211 assigns an ID to the hand region detected in step S <b> 303 and stores the ID in the RAM 202. For example, IDs are given numbers in the detected order (1, 2,...). In step S <b> 305, the input position acquisition unit 212 detects the input position of the hand area detected in step S <b> 303, assigns the same ID as the hand area to the detected input position, and holds it in the RAM 202. In step S306, the specifying unit 213 specifies an input position effective for the multi-touch operation at the input position detected in step S305. The contents of the process of step S306 will be described later with reference to the flowchart of FIG. In step S307, the recognition unit 214 performs a process for determining the touch state of the input position detected in step S305. The contents of the process of step S307 will be described later with reference to the flowchart of FIG.

ステップS308において、認識部214が、ステップS306とステップS307の処理結果に基づいて、ステップS305で検出された入力位置による操作を認識する。ステップS308の処理の内容は、図6のフローチャートを参照して後述する。ステップS309において、表示制御部215が、ステップS308で認識された操作に応じて、プロジェクタ104によって投影されている画面中のオブジェクト(画像、データ、UI等)の表示を更新する。ステップS310において、情報処理装置の電源がOFFにされたか否かを判定する。電源がOFFされた場合(ステップS306でYES)は、情報処理装置100は全ての処理を終了する。一方、電源がOFFにされていない場合(ステップS306でNO)は、ステップS302の処理へ戻る。   In step S308, the recognition unit 214 recognizes the operation based on the input position detected in step S305 based on the processing results in steps S306 and S307. The contents of the process of step S308 will be described later with reference to the flowchart of FIG. In step S309, the display control unit 215 updates the display of the object (image, data, UI, etc.) on the screen projected by the projector 104 in accordance with the operation recognized in step S308. In step S310, it is determined whether or not the information processing apparatus has been turned off. If the power is turned off (YES in step S306), the information processing apparatus 100 ends all the processes. On the other hand, if the power is not turned off (NO in step S306), the process returns to step S302.

図4は、本実施形態のステップS304において実行される入力位置の特定処理の流れの一例を表すフローチャートである。まず、ステップS401において、検出されている入力位置の中から1つ処理対象とする入力位置を選択する。ステップS402において、特定部213が、処理対象の入力位置が既にペアリングされているか否か、を判定する。入力位置が既にペアリングされている場合(ステップS402でYES)は、ステップS403へ進む。入力位置がペアリングされていない場合(ステップS402でNO)は、ステップS406へ進む。   FIG. 4 is a flowchart showing an example of the flow of the input position specifying process executed in step S304 of the present embodiment. First, in step S401, one input position to be processed is selected from the detected input positions. In step S402, the specifying unit 213 determines whether the input position to be processed has already been paired. If the input position is already paired (YES in step S402), the process proceeds to step S403. If the input position is not paired (NO in step S402), the process proceeds to step S406.

次にステップS403では、特定部213が、入力位置の高さが第3閾値以上か否かを判定する。第3閾値とは、ペアリングを解除するか否かを判定する為に用いられる、操作面からの距離の基準を表す閾値である。第3閾値の大きさは、ペアリングされている複数の入力位置のいずれかの高さが第3閾値以上の状態に遷移した場合、操作体が操作面101から十分離れたため、このあとマルチタッチ操作が継続される可能性は低いとみなすことができる程度に設定する。処理対象となっている入力位置の高さが、第3閾値以上の場合(ステップS403でYES)は、ステップS404へ進む。入力位置の高さが第3閾値より小さい場合(ステップS403でNO)は、ステップS405へ進む。ステップS404では、特定部213が、入力位置のペアリングを解除し、それを表す情報をRAM202に保持する。   In step S403, the specifying unit 213 determines whether the height of the input position is greater than or equal to a third threshold value. The third threshold value is a threshold value that represents a reference for the distance from the operation surface and is used for determining whether or not to cancel pairing. The size of the third threshold is determined by multi-touch since the operating body is sufficiently separated from the operation surface 101 when any of the plurality of paired input positions transitions to a state of the third threshold or higher. It is set to such an extent that the possibility of continuing the operation is low. If the height of the input position to be processed is greater than or equal to the third threshold (YES in step S403), the process proceeds to step S404. If the height of the input position is smaller than the third threshold (NO in step S403), the process proceeds to step S405. In step S <b> 404, the specifying unit 213 cancels the pairing of the input position, and holds information representing it in the RAM 202.

ステップS405では、特定部213が、ステップS305で検出された全ての入力位置で、ペアリングの判定が完了したか否かを判定する。全ての入力位置でペアリングの判定が完了している場合(ステップS405でYES)は、図4の処理を終了し、ステップS307へ進む。全ての入力位置でペアリングの判定が完了していない場合(ステップS405でNO)は、ステップS401へ戻り、処理を繰り返す。   In step S405, the specifying unit 213 determines whether or not the pairing determination has been completed at all the input positions detected in step S305. If the pairing determination has been completed at all input positions (YES in step S405), the process in FIG. 4 is terminated, and the process proceeds to step S307. If pairing determination has not been completed at all input positions (NO in step S405), the process returns to step S401 and the process is repeated.

ステップS402でNOと判定された場合、ステップS406では、特定部213が、処理対象となっている入力位置の高さが第2閾値以下か否かを判定する。第2閾値とは、操作面からの距離の基準を表す閾値である。その大きさは、高さが第2閾値以下の入力位置が複数存在する状態が、複数の操作体が操作面101に十分近づき、このあと連動してマルチタッチ操作を入力する可能性があるとみなすことができる程度に設定する。入力位置の高さが第2閾値以下の場合(ステップS406でYES)は、ステップS407へ進む。入力位置の高さが第2閾値より大きい場合(ステップS406でNO)は、ステップS405へ進む。本実施形態では、第3閾値は、距離の検出誤差等を考慮し、ペアリングされた入力位置が操作面101から十分離れた位置に遷移したことを確実に検出するため、第2閾値より大きい値とする。ただし、第2閾値と第3閾値は同一の値であってもよい。   When it is determined NO in step S402, in step S406, the specifying unit 213 determines whether or not the height of the input position to be processed is equal to or less than the second threshold value. The second threshold value is a threshold value that represents a reference for the distance from the operation surface. When there are a plurality of input positions whose height is equal to or less than the second threshold, there is a possibility that a plurality of operating objects will be sufficiently close to the operation surface 101, and then a multi-touch operation may be input in conjunction with the size. Set to a level that can be considered. If the height of the input position is less than or equal to the second threshold (YES in step S406), the process proceeds to step S407. If the height of the input position is greater than the second threshold (NO in step S406), the process proceeds to step S405. In the present embodiment, the third threshold value is larger than the second threshold value in order to reliably detect that the paired input position has shifted to a position sufficiently away from the operation surface 101 in consideration of distance detection errors and the like. Value. However, the second threshold value and the third threshold value may be the same value.

ステップS407では、特定部213が、高さが第2閾値以下である入力位置が、2つ存在するか否かを判定する。より具体的には、RAM202に保持された情報の中で、ステップS305で検出された複数の入力位置のうち、処理対象になっていない入力位置のz座標を参照し、高さが第2閾値以下であるものがもう1つ相殺するかを判定する。高さが第2閾値以下である入力位置が2つ存在する場合(ステップS407でYES)は、ステップS408へ進む。高さが第2閾値以下である入力位置が2つ存在しない場合(ステップS407でNO)は、ステップS405へ進む。ステップS408では、特定部213が、検出されている複数の入力位置のうち、高さが第2閾値以下の2つの入力位置の間の距離が、基準となる距離より小さいかを判定する。ここでの基準となる距離とは、2つの入力位置がマルチタッチ操作のために連動する間に動き得る範囲の基準となる距離であり、xy平面内で定義される。基準となる距離の大きさは、情報処理装置100が認識することができるマルチタッチ操作の種類に応じて適切な距離が選ばれればよい。例えば、情報処理装置100が認識することができるマルチタッチ操作に、2つの入力位置の間をある程度広い状態から狭めるように動かす縮小操作が含まれているとする。この場合、少なくとも、縮小操作を認識するために必要な程度に、2つの入力位置が離れている状態も、ステップS408で判定する基準となる距離に関する条件を満たしている必要がある。2つの入力位置の間の距離が基準となる距離より小さい場合(ステップS408でYES)は、ステップS409へ進む。2つの入力位置の間の距離が基準となる距離より小さくない場合(ステップS408でNO)は、ステップS405へ進む。ただし、操作環境によってはステップS408の処理は省略されてもよい。例えば、操作面101が1人の操作者が所定のマルチタッチ操作を行うのに最低限必要な程度に小さい場合、上述したステップS408の判定結果は自明となるため省略可能である。また例えば同時に操作を行う操作者が1人に限定される場合、高さが第2閾値以下である入力位置が複数存在する時点で、マルチタッチ操作が行われる確実性が高いので、ステップS408の処理を省略してもよい。ステップS409では、特定部213が、ステップS408で、距離に関する条件を満たしたと判定された2つの入力位置をペアリングして、ペアリング情報をRAM202に保持する。   In step S407, the specifying unit 213 determines whether there are two input positions whose height is equal to or less than the second threshold value. More specifically, among the information held in the RAM 202, the z-coordinate of the input position not to be processed among the plurality of input positions detected in step S305 is referred to, and the height is the second threshold value. It is determined whether the following cancels another. If there are two input positions whose height is equal to or less than the second threshold (YES in step S407), the process proceeds to step S408. If there are no two input positions whose height is less than or equal to the second threshold (NO in step S407), the process proceeds to step S405. In step S408, the specifying unit 213 determines whether the distance between two input positions whose height is equal to or smaller than the second threshold is smaller than a reference distance among the plurality of detected input positions. The reference distance here is a reference distance of a range in which two input positions can move while interlocking for multi-touch operation, and is defined in the xy plane. An appropriate distance may be selected as the reference distance according to the type of multi-touch operation that can be recognized by the information processing apparatus 100. For example, it is assumed that the multi-touch operation that can be recognized by the information processing apparatus 100 includes a reduction operation that moves the two input positions so as to be narrowed from a relatively wide state. In this case, at least the state where the two input positions are separated to the extent necessary for recognizing the reduction operation also needs to satisfy the condition regarding the reference distance determined in step S408. If the distance between the two input positions is smaller than the reference distance (YES in step S408), the process proceeds to step S409. If the distance between the two input positions is not smaller than the reference distance (NO in step S408), the process proceeds to step S405. However, depending on the operating environment, the process of step S408 may be omitted. For example, when the operation surface 101 is small enough to allow a single operator to perform a predetermined multi-touch operation, the determination result in step S408 described above is self-evident and can be omitted. In addition, for example, when the number of operators who perform operations simultaneously is limited to one, since there is a high degree of certainty that the multi-touch operation is performed when there are a plurality of input positions whose height is equal to or less than the second threshold value, Processing may be omitted. In step S409, the specifying unit 213 pairs the two input positions determined to satisfy the distance condition in step S408, and holds the pairing information in the RAM 202.

図5は、本実施形態のステップS307で実行される、入力位置のタッチ状態の判定処理の流れを表すフローチャートである。まず、ステップS501において、検出されている入力位置の中から1つ処理対象とする入力位置を選択する。ステップS502において、認識部214が、処理対象の入力位置が既にタッチ状態になっているか否かを判定する。入力位置が既にタッチ状態になっている場合(ステップS502でYES)は、ステップS503へ進む。入力位置がタッチ状態となっていない場合(ステップS502でNO)は、S506へ進む。次にステップS503では、認識部214が、入力位置の高さが第4閾値以上か否かを判定する。第4閾値は、操作体が操作面101から十分離れたことに応じてタッチ状態が解除されたと判定するための入力位置の高さの閾値であり、リリース閾値と呼ばれることもある。入力位置の高さが第4閾値以上の場合(ステップS503でYES)は、ステップS504へ進む。入力位置の高さが第4閾値より小さい場合(ステップS503でNO)は、S505へ進む。ステップS504では、認識部214が、入力位置のタッチ状態を解除し、入力位置が非タッチ状態であることをRAM202に保持し、ステップS505へ進む。   FIG. 5 is a flowchart showing the flow of the determination process of the touch state of the input position, which is executed in step S307 of the present embodiment. First, in step S501, one input position to be processed is selected from the detected input positions. In step S502, the recognition unit 214 determines whether or not the input position to be processed has already been touched. If the input position has already been touched (YES in step S502), the process proceeds to step S503. If the input position is not touched (NO in step S502), the process proceeds to S506. In step S503, the recognition unit 214 determines whether the height of the input position is equal to or greater than a fourth threshold value. The fourth threshold value is a threshold value of the height of the input position for determining that the touch state has been released in response to the operating body sufficiently moving away from the operation surface 101, and may be referred to as a release threshold value. If the height of the input position is greater than or equal to the fourth threshold (YES in step S503), the process proceeds to step S504. If the height of the input position is smaller than the fourth threshold (NO in step S503), the process proceeds to S505. In step S504, the recognition unit 214 cancels the touch state of the input position, holds in the RAM 202 that the input position is in the non-touch state, and proceeds to step S505.

ステップS505では、認識部214が、ステップS305で検出された全ての入力位置で、タッチ状態の判定が完了したか否かを判定する。全ての入力位置でタッチ状態の判定が完了している場合(ステップS505でYES)は、図5の処理を終了し、ステップS308へ進む。全ての入力位置でタッチ状態の判定が完了していない場合(ステップS505でNO)は、図5の処理の開始に戻り、ステップS501へ進む。   In step S505, the recognition unit 214 determines whether or not the determination of the touch state has been completed at all the input positions detected in step S305. If the determination of the touch state has been completed at all input positions (YES in step S505), the process in FIG. 5 is terminated, and the process proceeds to step S308. If the determination of the touch state is not completed at all input positions (NO in step S505), the process returns to the start of the process in FIG. 5 and proceeds to step S501.

一方、ステップS506では、認識部214が、処理対象となっている入力位置の、操作面からの距離(高さに相当する)が第1閾値以下か否かを判定する。第1閾値は、操作体が操作面101に十分近づいたことを検出して、タッチ入力がなされたと判定するための距離の閾値である。操作面からの距離が第1閾値以下の場合(ステップS506でYES)は、ステップS507へ進む。操作面からの距離が第1閾値より大きい場合(ステップS506でNO)は、ステップS505へ進む。ステップS507では、認識部214が、入力位置をタッチ状態とし、入力位置がタッチ状態であることをRAM202に保持し、ステップS505へ進む。なお、本実施形態では、操作体が操作面101から十分離れるまで、誤ってタッチ状態の解除が行われないように、第1閾値より第4閾値が大きいとする。ただし、これらの距離は一致してもよい。   On the other hand, in step S506, the recognition unit 214 determines whether the distance (corresponding to the height) from the operation surface of the input position to be processed is equal to or less than the first threshold value. The first threshold value is a distance threshold value for determining that a touch input has been made by detecting that the operating tool has sufficiently approached the operation surface 101. If the distance from the operation surface is equal to or less than the first threshold (YES in step S506), the process proceeds to step S507. If the distance from the operation surface is greater than the first threshold (NO in step S506), the process proceeds to step S505. In step S507, the recognition unit 214 sets the input position to the touch state, holds in the RAM 202 that the input position is in the touch state, and proceeds to step S505. In the present embodiment, it is assumed that the fourth threshold value is larger than the first threshold value so that the touch state is not accidentally released until the operating tool is sufficiently separated from the operation surface 101. However, these distances may coincide.

図6は、本実施形態のステップS308で実行される入力位置のタッチ操作の認識処理の流れを表すフローチャートである。まず、ステップS601において、検出されている入力位置の中から1つ処理対象とする入力位置を選択する。ステップS602において、認識部214が、処理対象の入力位置のタッチ状態の判定結果を参照する。入力位置がタッチ状態の場合(ステップS602でYES)は、ステップS603へ進む。入力位置がタッチ状態でない場合(ステップS602でNO)は、ステップS606へ進む。   FIG. 6 is a flowchart showing the flow of recognition processing for the input position touch operation executed in step S308 of the present embodiment. First, in step S601, one input position to be processed is selected from the detected input positions. In step S602, the recognition unit 214 refers to the determination result of the touch state of the input position to be processed. If the input position is in the touch state (YES in step S602), the process proceeds to step S603. If the input position is not in the touch state (NO in step S602), the process proceeds to step S606.

次にステップS603では、認識部214が、処理対象の入力位置のペアリング状態の判定結果を参照する。入力位置がペアリング状態の場合(ステップS603でYES)は、ステップS604へ進む。入力位置がペアリング状態でない場合(ステップS603でNO)は、S607へ進む。ステップS604では、認識部214が、処理対象の入力位置とペアリングされている、もう一方の入力位置のタッチ状態の判定結果を参照する。ペアリングされているもう一方の入力位置がタッチ状態の場合(ステップS604でYES)は、ステップS605へ進む。ペアリングされているもう一方の入力位置がタッチ状態でない場合(ステップS604でNO)は、ステップS606へ進む。   Next, in step S603, the recognition unit 214 refers to the determination result of the pairing state of the input position to be processed. If the input position is in the pairing state (YES in step S603), the process proceeds to step S604. If the input position is not in the pairing state (NO in step S603), the process proceeds to S607. In step S604, the recognition unit 214 refers to the determination result of the touch state of the other input position that is paired with the input position to be processed. If the other input position that is paired is in the touch state (YES in step S604), the process proceeds to step S605. If the other input position that is paired is not in the touch state (NO in step S604), the process proceeds to step S606.

ステップS605では、認識部214が、入力位置によるマルチタッチ操作を認識する。そして、認識結果を表す情報(タッチイベント等)を表示制御部215に通知し、S606へ進む。ステップS606では、認識部214が、ステップS305で検出された全ての入力位置で、タッチ操作の認識が完了したか否かを判定する。このとき、ステップS604でペアリング相手として読み出され、ステップS606のマルチタッチ操作認識に利用された入力位置は、タッチ操作認識済みの入力位置として扱われる。全ての入力位置でタッチ操作の認識が完了している場合(ステップS606でYES)は、図6の処理を終了し、ステップS309へ進む。全ての入力位置でタッチ操作の認識が完了していない場合(ステップS606でNO)は、ステップS601へ進む。一方、ステップS603でNOとなった場合は、ステップS607に進む。ステップS607では、認識部214が、入力位置によるシングルタッチ操作を認識する。そして、認識結果を表す情報(タッチイベント等)を表示制御部215に通知し、ステップS606へ進む。   In step S605, the recognition unit 214 recognizes the multi-touch operation based on the input position. Then, information (such as a touch event) indicating the recognition result is notified to the display control unit 215 and the process proceeds to S606. In step S606, the recognition unit 214 determines whether or not the recognition of the touch operation has been completed at all the input positions detected in step S305. At this time, the input position read as the pairing partner in step S604 and used for the multi-touch operation recognition in step S606 is treated as an input position that has been recognized for touch operation. If the recognition of the touch operation has been completed at all the input positions (YES in step S606), the process of FIG. 6 ends and the process proceeds to step S309. If the recognition of the touch operation is not completed at all input positions (NO in step S606), the process proceeds to step S601. On the other hand, if NO in step S603, the process proceeds to step S607. In step S607, the recognition unit 214 recognizes a single touch operation based on the input position. Information (such as a touch event) representing the recognition result is notified to the display control unit 215, and the process proceeds to step S606.

以上説明したように、本実施形態では、ステップS604で、処理対象の入力位置がタッチ状態にあっても、その入力位置にペアリングされている入力位置がタッチ状態でない場合、タッチ状態にある入力位置に基づくシングルタッチ操作認識を行わない。よって、マルチタッチ操作が行われる前後に、ユーザが意図しないシングルタッチイベントが発声してしまう動作を低減できる。なお、図4〜図6のフローチャートでは、ペアリングする入力位置の数が2つに設定された場合の条件を説明したが、本実施形態は2つに限定せず3つ以上の入力位置を連動させるマルチタッチ操作を認識する場合にも適用できる。N個(N:3以上の整数)の入力位置を用いるマルチタッチ操作が入力される場合、ステップS407では、操作面からの距離が第2閾値以下の入力位置がN個であるかを判定する。またステップS408では、例えば、N個の入力位置から定まる重心位置と各入力位置の距離が基準となる距離より小さいかを判定すればよい。このとき基準となる距離は、想定される操作者の人数などによって定められれば良い。また、図6のフローチャートでは、ペアリングされている全ての入力位置がタッチ状態に至るまで、1〜「N−1」個の入力位置による操作は認識せずに待機する。   As described above, in this embodiment, in step S604, even if the input position to be processed is in the touched state, if the input position paired with the input position is not in the touched state, the input in the touched state Does not perform single-touch operation recognition based on position. Therefore, before and after the multi-touch operation is performed, an operation in which a single touch event unintended by the user is uttered can be reduced. In the flowcharts of FIGS. 4 to 6, the condition when the number of input positions to be paired is set to two has been described. However, the present embodiment is not limited to two, and three or more input positions are set. It can also be applied when recognizing linked multi-touch operations. When a multi-touch operation using N (N: integer greater than or equal to 3) input positions is input, it is determined in step S407 whether there are N input positions whose distance from the operation surface is equal to or less than the second threshold value. . In step S408, for example, it may be determined whether the distance between the gravity center position determined from the N input positions and each input position is smaller than the reference distance. At this time, the reference distance may be determined by the number of assumed operators. Further, in the flowchart of FIG. 6, an operation with 1 to “N−1” input positions is waited for without being recognized until all paired input positions reach the touch state.

次に、図7と図8を参照して、ユーザの手の状態の具体例に対応付けて、本実施形態の情報処理装置100による動作を説明する。図7(a)〜(e)は、ユーザが操作面101の上空に手700及び手701を差し伸べてから、指先を操作面101に接触(もしくは近接)させてマルチタッチ操作(2つの手での操作)を入力する様子を段階的に表す。ただし、入力位置の動きを解り易く示すため、図7(b)〜(e)では手700及び手701の図示を省略する。予め第1閾値703と第2閾値702が設定されている。それぞれ操作面を基準とした高さ(操作面からの距離)で設定されている。一例として、第1閾値703=10mm、第2閾値702=20mmとする。各段階の特徴的な処理と、上述したフローチャート各ステップの対応関係を、ステップの番号を括弧書きすることで示す。   Next, operations performed by the information processing apparatus 100 according to the present embodiment will be described with reference to FIGS. 7 and 8 in association with specific examples of the user's hand state. 7A to 7E show a multi-touch operation (with two hands) when the user extends the hand 700 and the hand 701 over the operation surface 101 and then touches (or closes) the fingertip to the operation surface 101. ) In a stepwise manner. However, the hand 700 and the hand 701 are not shown in FIGS. 7B to 7E in order to show the movement of the input position in an easy-to-understand manner. A first threshold 703 and a second threshold 702 are set in advance. Each is set at a height (distance from the operation surface) relative to the operation surface. As an example, the first threshold 703 = 10 mm and the second threshold 702 = 20 mm. The characteristic processing at each stage and the correspondence between each step in the flowchart described above are shown by writing the step number in parentheses.

まず、ユーザの指が操作面101から離れた位置にある状態を、図7(a)を用いて説明する。図7(a)は、時刻t1の操作面101上の空間を側面から見た図である。距離画像センサ102から取得された時刻t1の距離画像から、操作している手700と操作している手701の2つの手領域が検出される(ステップS303)。検出された手領域に、手領域を識別するための手IDを付与する。具体的には、手700の手領域にID=1を付与し、手701の手領域にID=2を付与する(ステップS304)。検出された手領域から入力位置を検出する。具体的には、操作している手700の手領域の入力位置としてP1が検出され、操作している手701の手領域の入力位置としてP2が検出される。入力位置P1にID=1を、入力位置P2にID=2を付与する。そして、入力位置P1とP2の距離画像における位置情報のuvd座標を、世界座標のxyz座標に変換する(ステップS305)。具体的には、入力位置P1の座標を(u1,v1,d1)から(x1,y1,z1)に変換し、入力位置P2の座標を(u2,v2,d2)から(x2,y2,z2)に変換する(ステップS305)。   First, a state where the user's finger is at a position away from the operation surface 101 will be described with reference to FIG. FIG. 7A shows the space on the operation surface 101 at time t1 as viewed from the side. Two hand regions of the operated hand 700 and the operated hand 701 are detected from the distance image acquired from the distance image sensor 102 at time t1 (step S303). A hand ID for identifying the hand region is given to the detected hand region. Specifically, ID = 1 is assigned to the hand area of the hand 700, and ID = 2 is assigned to the hand area of the hand 701 (step S304). An input position is detected from the detected hand area. Specifically, P1 is detected as the input position of the hand region of the operating hand 700, and P2 is detected as the input position of the hand region of the operating hand 701. ID = 1 is assigned to the input position P1, and ID = 2 is assigned to the input position P2. Then, the uvd coordinates of the position information in the distance image between the input positions P1 and P2 are converted into xyz coordinates of world coordinates (step S305). Specifically, the coordinates of the input position P1 are converted from (u1, v1, d1) to (x1, y1, z1), and the coordinates of the input position P2 are converted from (u2, v2, d2) to (x2, y2, z2). (Step S305).

次にマルチタッチ操作に有効な入力位置を特定し、互いをペアリングする処理(ステップS306)に進む。まず入力位置P1を処理対象とする(ステップS401)。入力位置P1がペアリングされておらず(ステップS402でNO)、入力位置P1の高さz1が第2閾値702より大きい(ステップS406でNO)。今回取得した距離画像で検出された全ての入力位置で、ペアリング判定が完了していないので(ステップS405でNO)、次に未処理である入力位置P2を処理対象とする(ステップS401)。入力位置P2はペアリングされておらず(ステップS402でNO)、入力位置P2の高さz2が第2閾値702より大きい(ステップS406でNO)。今回取得した距離画像で検出された全ての入力位置で、ペアリング判定が完了している(ステップS405でYES)、ペアリング判定処理を終了する。   Next, an input position effective for the multi-touch operation is specified, and the process proceeds to a process of pairing each other (step S306). First, the input position P1 is set as a processing target (step S401). The input position P1 is not paired (NO in step S402), and the height z1 of the input position P1 is greater than the second threshold 702 (NO in step S406). Since the pairing determination is not completed at all the input positions detected in the distance image acquired this time (NO in step S405), the unprocessed input position P2 is set as a processing target (step S401). The input position P2 is not paired (NO in step S402), and the height z2 of the input position P2 is larger than the second threshold 702 (NO in step S406). If the pairing determination has been completed at all input positions detected in the distance image acquired this time (YES in step S405), the pairing determination process ends.

こうして、入力位置のタッチ状態を判定する処理(ステップS307)に進む。ただし、図7(a)の状態では、操作している手700と操作している手701は、いずれも操作面101よりも十分高い位置で維持されており、入力位置P1とP2はタッチ状態ではない。従って、タッチ操作の認識も行われない(ステップS308)ため、詳細な説明は省略する。   Thus, the process proceeds to the process for determining the touch state of the input position (step S307). However, in the state of FIG. 7A, the operating hand 700 and the operating hand 701 are both maintained at a position sufficiently higher than the operation surface 101, and the input positions P1 and P2 are in the touch state. is not. Therefore, since the touch operation is not recognized (step S308), detailed description is omitted.

次に、操作している手700の指示位置P3の高さz3が、第2閾値702以下の状態を、図7(b)を用いて説明する。図7(b)は時刻t2の操作面101上の空間を側面から見た図である。距離画像センサ102から、時刻t2の距離画像が取得され(ステップS302)、取得した距離画像から、操作している手700と操作している手701の2つの手領域が検出される(ステップS303)。操作している手700の手領域にID=1を付与し、操作している手701の手領域にID=2を付与する(ステップS304)。操作している手700の手領域の入力位置としてP3が検出され、操作している手701の手領域の入力位置としてP4が検出される。そして、入力位置P3の座標を(u3,v3,d3)から(x3,y3,z3)に変換し、入力位置P4の座標を(u4,v4,d4)から(x4,y4,z4)に変換する(ステップS305)。   Next, a state where the height z3 of the designated position P3 of the operating hand 700 is equal to or less than the second threshold value 702 will be described with reference to FIG. FIG. 7B shows the space on the operation surface 101 at time t2 as viewed from the side. A distance image at time t2 is acquired from the distance image sensor 102 (step S302), and two hand regions of the operated hand 700 and the operated hand 701 are detected from the acquired distance image (step S303). ). ID = 1 is assigned to the hand area of the operating hand 700, and ID = 2 is assigned to the hand area of the operating hand 701 (step S304). P3 is detected as the input position of the hand region of the operating hand 700, and P4 is detected as the input position of the hand region of the operating hand 701. Then, the coordinates of the input position P3 are converted from (u3, v3, d3) to (x3, y3, z3), and the coordinates of the input position P4 are converted from (u4, v4, d4) to (x4, y4, z4). (Step S305).

特定処理(ステップS306)において、まず入力位置P3を処理対象とする(ステップS401)。入力位置P3はペアリングされておらず(ステップS402でNO)、入力位置P3の高さz3が第2閾値702以下で(ステップS406でYES)、高さが第2閾値702以下の入力位置が複数存在しない(ステップS407でNO)。全ての入力位置で、ペアリング判定が完了していないので(ステップS405でNO)、未処理である入力位置P4を処理対象として選択する(ステップS401)。入力位置P4はペアリングされておらず(ステップS402でNO)、入力位置P4の高さz4が第2閾値702より大きい(ステップS406でNO)。今回取得した距離画像で検出された全ての入力位置で、ペアリング判定が完了したので(ステップS405でYES)、ペアリング判定処理を終了する。そして、入力位置のタッチ状態の判定処理(ステップS307)に進む。図7(b)でも操作している手700と操作している手701は、いずれも操作面101よりも十分高い位置で維持されており、入力位置P1とP2はタッチ状態ではない。従って、タッチ操作の認識も行われない(ステップS308)ため、詳細な説明は省略する。   In the specifying process (step S306), first, the input position P3 is set as a processing target (step S401). The input position P3 is not paired (NO in step S402), the height z3 of the input position P3 is equal to or less than the second threshold value 702 (YES in step S406), and the input position whose height is equal to or less than the second threshold value 702 is There are not a plurality (NO in step S407). Since the pairing determination has not been completed at all the input positions (NO in step S405), the unprocessed input position P4 is selected as a processing target (step S401). The input position P4 is not paired (NO in step S402), and the height z4 of the input position P4 is greater than the second threshold 702 (NO in step S406). Since the pairing determination has been completed at all input positions detected in the distance image acquired this time (YES in step S405), the pairing determination process ends. Then, the process proceeds to the determination process of the touch state of the input position (step S307). In FIG. 7B, both the operating hand 700 and the operating hand 701 are maintained at positions sufficiently higher than the operation surface 101, and the input positions P1 and P2 are not in the touch state. Therefore, since the touch operation is not recognized (step S308), detailed description is omitted.

次に、操作している手700の指示位置P5の高さz5と操作している手701の指示位置P6の高さz6が、第2閾値702以下の状態を、図7(c)を用いて説明する。図7(c)は時刻t3の操作面101上の空間を側面から見た図である。距離画像センサ102から、時刻t3の距離画像が取得され(ステップS302)、取得した距離画像から、操作している手700と操作している手701の2つの手領域が検出される(ステップS303)。操作している手700の手領域にID=1を付与し、操作している手701の手領域にID=2を付与する(ステップS304)。操作している手700の手領域の入力位置としてP5が検出され、操作している手701の手領域の入力位置としてP6が検出される。そして、入力位置P5の座標を(u5,v5,d5)から(x5,y5,z5)に変換し、入力位置P6の座標を(u6,v6,d6)から(x6,y6,z6)に変換する(ステップS305)。   Next, a state where the height z5 of the designated position P5 of the operated hand 700 and the height z6 of the designated position P6 of the operated hand 701 are equal to or smaller than the second threshold value 702 will be described with reference to FIG. I will explain. FIG. 7C is a view of the space on the operation surface 101 at time t3 as viewed from the side. A distance image at time t3 is acquired from the distance image sensor 102 (step S302), and two hand regions of the operating hand 700 and the operating hand 701 are detected from the acquired distance image (step S303). ). ID = 1 is assigned to the hand area of the operating hand 700, and ID = 2 is assigned to the hand area of the operating hand 701 (step S304). P5 is detected as the input position of the hand region of the operating hand 700, and P6 is detected as the input position of the hand region of the operating hand 701. Then, the coordinates of the input position P5 are converted from (u5, v5, d5) to (x5, y5, z5), and the coordinates of the input position P6 are converted from (u6, v6, d6) to (x6, y6, z6). (Step S305).

特定処理(ステップS306)では、まず入力位置P6を処理対象とする(ステップS401)。入力位置P6はペアリングされておらず(ステップS402でNO)、入力位置P5の高さz5が第2閾値702以下で(ステップS406でYES)ある。図7(c)では、高さが第2閾値702以下の入力位置が2つ存在する(ステップS407でYES)。ここで、入力位置P5とP6の間隔が、基準となる距離よりも小さいとする(ステップS408でYES)。入力位置P5とP6はペアリングされ、入力位置P5のID1と入力位置のP6のID2をペアリング情報として関連付けて、保持する(ステップS409)。今回取得した距離画像で検出された全ての入力位置で、ペアリング判定が完了していないので(ステップS404でNO)、未処理である操作位置P6を処理対象とする(ステップS401)。操作位置P6は操作位置P5と既にペアリングされており(ステップS402でYES)、操作位置P6の高さz6が第3閾値802より小さい(ステップS403でNO)。今回取得した距離画像で検出された全ての操作位置で、ペアリング判定が完了している(ステップS405でYES)、ペアリング判定処理を終了する。   In the specifying process (step S306), first, the input position P6 is set as a processing target (step S401). The input position P6 is not paired (NO in step S402), and the height z5 of the input position P5 is equal to or less than the second threshold 702 (YES in step S406). In FIG. 7C, there are two input positions whose height is equal to or less than the second threshold value 702 (YES in step S407). Here, it is assumed that the interval between the input positions P5 and P6 is smaller than the reference distance (YES in step S408). The input positions P5 and P6 are paired, and ID1 of the input position P5 and ID2 of P6 of the input position are associated and held as pairing information (step S409). Since the pairing determination has not been completed at all the input positions detected in the distance image acquired this time (NO in step S404), the unprocessed operation position P6 is set as the processing target (step S401). The operation position P6 is already paired with the operation position P5 (YES in step S402), and the height z6 of the operation position P6 is smaller than the third threshold 802 (NO in step S403). When the pairing determination has been completed at all the operation positions detected in the distance image acquired this time (YES in step S405), the pairing determination process ends.

入力位置のタッチ状態を判定は(ステップS307)、図7(a)(b)と同様に入力位置P5とP6共にタッチ状態ではない。よって、図7(c)の状態では、操作している手700と操作している手701は、操作面101よりも十分高い位置で維持されており、入力位置P5とP6はタッチ状態ではないため、タッチ操作も認識されない。
次に、操作している手700の指示位置P7の高さz7が、第1閾値703以下の状態を、図7(d)を用いて説明する。図7(d)は時刻t4の操作面101上の空間を側面から見た図である。距離画像センサ102から、時刻t4の距離画像が取得され(ステップS302)、取得した距離画像から、操作している手700と操作している手701の2つの手領域が検出される(ステップS303)。操作している手700の手領域にID=1を付与し、操作している手701の手領域にID=2を付与する(ステップS304)。操作している手700の手領域の入力位置としてP7が検出され、操作している手701の手領域の入力位置としてP8が検出される。そして、入力位置P7の座標を(u7,v7,d7)から(x7,y7,z7)に変換し、入力位置P8の座標を(u8,v8,d8)から(x8,y8,z8)に変換する(ステップS305)。
The touch state of the input position is determined (step S307), and both the input positions P5 and P6 are not in the touch state as in FIGS. 7A and 7B. Therefore, in the state of FIG. 7C, the operating hand 700 and the operating hand 701 are maintained at a position sufficiently higher than the operation surface 101, and the input positions P5 and P6 are not in the touch state. Therefore, the touch operation is not recognized.
Next, a state where the height z7 of the designated position P7 of the operating hand 700 is equal to or less than the first threshold value 703 will be described with reference to FIG. FIG. 7D shows the space on the operation surface 101 at time t4 as viewed from the side. A distance image at time t4 is acquired from the distance image sensor 102 (step S302), and two hand regions of the operating hand 700 and the operating hand 701 are detected from the acquired distance image (step S303). ). ID = 1 is assigned to the hand area of the operating hand 700, and ID = 2 is assigned to the hand area of the operating hand 701 (step S304). P7 is detected as the input position of the hand region of the operating hand 700, and P8 is detected as the input position of the hand region of the operating hand 701. Then, the coordinates of the input position P7 are converted from (u7, v7, d7) to (x7, y7, z7), and the coordinates of the input position P8 are converted from (u8, v8, d8) to (x8, y8, z8). (Step S305).

特定処理(ステップS306)では、まず入力位置P7を処理対象とする(ステップS401)。入力位置P7はペアリング済みであり(ステップS402でYES)、入力位置P7の高さz7がペアリング解消閾値802より小さい(ステップS403でNO)。また、今回取得した距離画像で検出された全ての入力位置で、ペアリング判定が完了していないので(ステップS405でNO)、次に未処理である入力位置P8が処理対象となる(ステップS401)。入力位置P8は既にペアリング済みであり(ステップS402でYES)、入力位置P8の高さz8がペアリング解消閾値802より小さい(ステップS403でNO)。今回取得した距離画像で検出された全ての入力位置で、ペアリング判定が完了している(ステップS405でYES)。従って、ペアリング情報は維持されたまま、ペアリング判定処理を終了する。   In the specifying process (step S306), first, the input position P7 is set as a processing target (step S401). The input position P7 has been paired (YES in step S402), and the height z7 of the input position P7 is smaller than the pairing elimination threshold 802 (NO in step S403). Further, since the pairing determination has not been completed at all the input positions detected in the distance image acquired this time (NO in step S405), the unprocessed input position P8 is next processed (step S401). ). The input position P8 has already been paired (YES in step S402), and the height z8 of the input position P8 is smaller than the pairing elimination threshold 802 (NO in step S403). Pairing determination is completed at all input positions detected in the distance image acquired this time (YES in step S405). Accordingly, the pairing determination process is terminated while the pairing information is maintained.

入力位置のタッチ状態を判定する処理(ステップS307)でも、まず入力位置P7を処理対象とする(ステップS501)。入力位置P7はここまでタッチ状態と判定されてはいない(ステップS502でNO)。ただし、時刻t4において入力位置P7の高さz7が第1閾値703以下であり(ステップS506でYES)、入力位置P7をタッチ状態としRAM202に保持する。全ての入力位置で、タッチ状態判定が完了していないので(ステップS505でNO)、未処理である入力位置P8を処理対象とする(ステップS501)。入力位置P8はここまでタッチ状態ではなく(ステップS502でNO)、時刻t4においても入力位置P8の高さz8が第1閾値703より大きい(ステップS506でNO)。今回取得した距離画像で検出された全ての入力位置で、タッチ状態判定が完了しているので(ステップS505でYES)、タッチ状態判定処理を終了する。   Also in the process of determining the touch position of the input position (step S307), first, the input position P7 is set as a processing target (step S501). The input position P7 has not been determined to be touched so far (NO in step S502). However, the height z7 of the input position P7 is equal to or less than the first threshold value 703 at time t4 (YES in step S506), and the input position P7 is set in the touch state and held in the RAM 202. Since the touch state determination is not completed at all the input positions (NO in step S505), the unprocessed input position P8 is set as a processing target (step S501). The input position P8 has not been touched so far (NO in step S502), and the height z8 of the input position P8 is greater than the first threshold 703 even at time t4 (NO in step S506). Since the touch state determination has been completed at all input positions detected in the distance image acquired this time (YES in step S505), the touch state determination process ends.

次に、入力位置P7とP8によるタッチ操作を認識する処理(ステップS308)において、入力位置P7を処理対象とする(ステップS601)。入力位置P7はタッチ状態であり(ステップS602でYES)、入力位置P7はペアリング済みであり(ステップS603でYES)、入力位置P7のペアリング相手である入力位置P8はタッチ状態ではない(ステップS604でNO)。全ての入力位置で、タッチ操作認識が完了していないので(ステップS606でNO)、次に未処理である入力位置P8が処理対象となる(ステップS601)。入力位置P8はタッチ状態ではなく(ステップS602でNO)、全ての入力位置で、タッチ操作認識処理が完了したので(ステップS606でYES)、タッチ操作認識処理を終了する。このように、図7(d)の状態では、操作している手700の入力位置P7はタッチ状態であるが、入力位置P8とペアリングされており、マルチタッチ操作が入力される可能性が高いとみなされるため、シングルタッチ操作の認識は実行されない。タッチ操作は認識されないので、投影内容は変更されない(ステップS309)。   Next, in the process of recognizing the touch operation at the input positions P7 and P8 (step S308), the input position P7 is set as a processing target (step S601). The input position P7 is in the touched state (YES in step S602), the input position P7 has been paired (YES in step S603), and the input position P8 that is the pairing partner of the input position P7 is not in the touched state (step NO in S604). Since the touch operation recognition is not completed at all the input positions (NO in step S606), the unprocessed input position P8 is the next processing target (step S601). The input position P8 is not in the touch state (NO in step S602), and the touch operation recognition process is completed at all input positions (YES in step S606), so the touch operation recognition process is terminated. In this way, in the state of FIG. 7D, the input position P7 of the operating hand 700 is in the touch state, but it is paired with the input position P8 and there is a possibility that the multi-touch operation is input. Since it is considered high, recognition of single touch operations is not performed. Since the touch operation is not recognized, the projection content is not changed (step S309).

次に、操作している手700の指示位置P9と操作している手701の指示位置P10がペアリングされ、共にタッチ状態である状態を、図7(e)を用いて説明する。図7(e)は時刻t5の操作面101上の空間を側面から見た図である。距離画像センサ102から、時刻t5の距離画像が取得され(ステップS302)、取得した距離画像から、操作している手700と操作している手701の2つの手領域が検出される(ステップS303)。操作している手700の手領域にID=1を付与し、操作している手701の手領域にID=2を付与する(ステップS304)。操作している手700の手領域の入力位置としてP9が検出され、操作している手701の手領域の入力位置としてP10が検出される。入力位置P7の座標(x7,y7,z7)と、入力位置P8の座標(x8,y8,z8)が取得される(ステップS305)。この時点で入力位置P9と入力位置P10がペアリングされており、また、それぞれタッチ状態であるため、ステップS306及びステップS307の詳細説明は省略する。   Next, a state where the pointing position P9 of the operating hand 700 and the pointing position P10 of the operating hand 701 are paired and both are in a touch state will be described with reference to FIG. FIG. 7E shows the space on the operation surface 101 at time t5 as viewed from the side. A distance image at time t5 is acquired from the distance image sensor 102 (step S302), and two hand regions of the operating hand 700 and the operating hand 701 are detected from the acquired distance image (step S303). ). ID = 1 is assigned to the hand area of the operating hand 700, and ID = 2 is assigned to the hand area of the operating hand 701 (step S304). P9 is detected as the input position of the hand region of the operating hand 700, and P10 is detected as the input position of the hand region of the operating hand 701. The coordinates (x7, y7, z7) of the input position P7 and the coordinates (x8, y8, z8) of the input position P8 are acquired (step S305). Since the input position P9 and the input position P10 are paired at this time and are in the touch state, detailed descriptions of step S306 and step S307 are omitted.

入力位置P9とP10によるタッチ操作を認識する処理(ステップS308)では、まず入力位置P9が処理対象となる(ステップS601)。入力位置P9はタッチ状態にあり(ステップS602でYES)、入力位置P10とペアリング済みであるので(ステップS603でYES)、入力位置P10もタッチ状態にある(ステップS604でYES)。よって、入力位置P9とP10はマルチタッチ操作として認識される(ステップS605)。例えば、2点間の距離の変化に基づく表示画像の拡大・縮小、あるいは2点の相対的な回転に基づく表示画像の回転操作などとして認識される。入力位置P9とP10のマルチタッチ操作の認識結果により、表示が更新される(ステップS309)。   In the process of recognizing the touch operation at the input positions P9 and P10 (step S308), the input position P9 is first processed (step S601). Since the input position P9 is in a touch state (YES in step S602) and has been paired with the input position P10 (YES in step S603), the input position P10 is also in a touch state (YES in step S604). Therefore, the input positions P9 and P10 are recognized as a multi-touch operation (step S605). For example, it is recognized as an enlargement / reduction of a display image based on a change in the distance between two points, or a display image rotation operation based on a relative rotation of two points. The display is updated based on the recognition result of the multi-touch operation at the input positions P9 and P10 (step S309).

以上、図7を用いて説明したように、本実施形態では、第1閾値より高い位置に第2閾値を設けることで、入力位置がタッチ状態に遷移する前に、他の入力位置とのペアリングの要否の判定を行う。このため、マルチタッチ操作が意図されている可能性が高い状況で、ユーザが意図しないシングルタッチイベントが発生することを低減できる。   As described above with reference to FIG. 7, in the present embodiment, by providing the second threshold at a position higher than the first threshold, the input position is paired with another input position before the input position transitions to the touch state. Determine whether a ring is necessary. For this reason, it is possible to reduce the occurrence of a single touch event unintended by the user in a situation where there is a high possibility that a multi-touch operation is intended.

次に、図8(a)〜(d)はユーザが指先を操作面101に接触(もしくは近接)させてマルチタッチ操作(2つの手での操作)を入力している状態から、マルチタッチ操作している指先を操作面101から離す様子を段階的に表す。ただし、入力位置の動きを解り易く示すため、図8(b)〜(d)では手800及び手801の図示を省略する。予め第3閾値802と第4閾値803が設定されている。それぞれ操作面を基準とした高さで設定されている。一例として、第3閾値802=25mm、第4閾値=15mmとする。各段階の特徴的な処理と、上述したフローチャート各ステップの対応関係を、ステップの番号を括弧書きすることで示す。   Next, FIGS. 8A to 8D show a multi-touch operation from a state where the user inputs a multi-touch operation (operation with two hands) by bringing the fingertip into contact with (or close to) the operation surface 101. A state in which the fingertip being released is separated from the operation surface 101 is shown step by step. However, in order to show the movement of the input position in an easy-to-understand manner, the illustration of the hand 800 and the hand 801 is omitted in FIGS. A third threshold value 802 and a fourth threshold value 803 are set in advance. Each height is set based on the operation surface. As an example, the third threshold 802 = 25 mm and the fourth threshold = 15 mm. The characteristic processing at each stage and the correspondence between each step in the flowchart described above are shown by writing the step number in parentheses.

まず、図8(a)の状態は、操作面101に近接する、ユーザの操作している手800の指先(入力位置P11)と、操作している手801の指先(入力位置P12)により、マルチタッチ操作が行われている。図8(a)は時刻t6の操作面101上の空間を側面から見た図である。まず、距離画像センサ102から、時刻t6の距離画像が取得され(ステップS302)、取得した距離画像から、操作している手800と操作している手801の2つの手領域が検出される(ステップS303)。操作している手800の手領域にID=3を付与し、操作している手801の手領域にID=4を付与する(ステップS304)。操作している手800の手領域の入力位置P11と、操作している手801の手領域の入力位置P12が検出される。検出された入力位置に手領域と同じIDが付与され、P11はID=3、P12はID=4となる。入力位置P11の座標(x11,y11,z11)と、入力位置P12の座標(x12,y12,z12)が取得される(ステップS305)。   First, the state of FIG. 8A is based on the fingertip of the hand 800 operated by the user (input position P11) and the fingertip of the operated hand 801 (input position P12) close to the operation surface 101. Multi-touch operation is being performed. FIG. 8A shows the space on the operation surface 101 at time t6 as viewed from the side. First, a distance image at time t6 is acquired from the distance image sensor 102 (step S302), and two hand regions of an operating hand 800 and an operating hand 801 are detected from the acquired distance image ( Step S303). ID = 3 is assigned to the hand area of the operating hand 800, and ID = 4 is assigned to the hand area of the operating hand 801 (step S304). The input position P11 of the hand region of the operating hand 800 and the input position P12 of the hand region of the operating hand 801 are detected. The detected input position is assigned the same ID as the hand area, P11 is ID = 3, and P12 is ID = 4. The coordinates (x11, y11, z11) of the input position P11 and the coordinates (x12, y12, z12) of the input position P12 are acquired (step S305).

そして入力位置P11と入力位置P12がペアリングされて、ペアリング情報として入力位置IDの3と4が関連付けて保持される(ステップS306)。入力位置P11と入力位置P12はタッチ状態であり(ステップS307)、マルチタッチ操作として認識され(ステップS308)、マルチタッチ操作の認識結果により、表示が更新される(ステップS309)。   Then, the input position P11 and the input position P12 are paired, and the input position IDs 3 and 4 are associated and held as pairing information (step S306). The input position P11 and the input position P12 are in a touch state (step S307), recognized as a multi-touch operation (step S308), and the display is updated based on the recognition result of the multi-touch operation (step S309).

次に、図8(b)の状態は、ユーザの操作している手800の指先(入力位置P13)がタッチ状態であり、操作している手801の指先(入力位置P14)がタッチ状態ではなくなった状態である。図8(b)は時刻t7の操作面101上の空間を側面から見た図である。ず、距離画像センサ102から、時刻t7の距離画像が取得される(ステップS302)。図8(a)と同様に、取得した距離画像から手領域が検出され、検出された手領域から入力位置を取得される。操作している手800の入力位置はP13(x13,y13,z13)となり、操作している手801の入力位置はP14(x14,y14,z14)となる。入力位置はいずれも第3閾値802より低い位置にあるので、ペアリング状態は維持される(ステップS306)。   Next, in the state of FIG. 8B, the fingertip (input position P13) of the hand 800 operated by the user is in the touched state, and the fingertip (input position P14) of the operated hand 801 is in the touched state. It is in a state of disappearing. FIG. 8B is a view of the space on the operation surface 101 at time t7 as seen from the side. First, the distance image at time t7 is acquired from the distance image sensor 102 (step S302). Similarly to FIG. 8A, a hand region is detected from the acquired distance image, and an input position is acquired from the detected hand region. The input position of the operating hand 800 is P13 (x13, y13, z13), and the input position of the operating hand 801 is P14 (x14, y14, z14). Since all the input positions are lower than the third threshold value 802, the pairing state is maintained (step S306).

タッチ状態判定処理(ステップS307)では、入力位置P14の高さz14が第4閾値803以上のため(ステップS503でYES)、入力位置P14のタッチ状態が解除される(ステップS504)。入力位置P13は、ペアリング相手の入力位置P14がタッチ状態でないため(ステップS604でNO)、マルチタッチ操作ともシングルタッチ操作とも認識されず(ステップS308)、表示が更新されない(ステップS309)。このように、本実施形態では、ペアリング状態が維持されている限り、1つの入力位置がタッチ状態であってもシングルタッチ操作が認識されることはない。   In the touch state determination process (step S307), since the height z14 of the input position P14 is not less than the fourth threshold value 803 (YES in step S503), the touch state of the input position P14 is canceled (step S504). Since the input position P14 of the pairing partner is not in the touch state (NO in step S604), neither the multi-touch operation nor the single touch operation is recognized (step S308), and the display is not updated (step S309). As described above, in this embodiment, as long as the pairing state is maintained, the single touch operation is not recognized even if one input position is in the touch state.

次に、図8(c)の状態は、ユーザの操作している手800の指先(入力位置P15)と、操作している手801の指先(入力位置P16)が共にタッチ状態ではなくなった状態である。図8(c)は時刻t8の操作面101上の空間を側面から見た図である。距離画像センサ102から、時刻t8の距離画像が取得される(ステップS302)。図8(a)と同様に、取得した距離画像から手領域が検出され、検出された手領域から入力位置を取得される。操作している手800の入力位置はP15(x15,y15,z15)となり、操作している手801の入力位置はP16(x16,y16,z16)となる。入力位置P15の高さz15と入力位置P16の高さz16は、共に第3閾値802より小さいため(ステップS403でNO)、ペアリング状態は継続される。入力位置P15の高さz15が第4閾値803以上のため(ステップS503でYES)、入力位置P15のタッチ状態は解除される(ステップS504)。   Next, the state of FIG. 8C is a state in which the fingertip (input position P15) of the hand 800 operated by the user and the fingertip (input position P16) of the operated hand 801 are not in the touch state. It is. FIG. 8C shows the space on the operation surface 101 at time t8 as viewed from the side. A distance image at time t8 is acquired from the distance image sensor 102 (step S302). Similarly to FIG. 8A, a hand region is detected from the acquired distance image, and an input position is acquired from the detected hand region. The input position of the operating hand 800 is P15 (x15, y15, z15), and the input position of the operating hand 801 is P16 (x16, y16, z16). Since the height z15 of the input position P15 and the height z16 of the input position P16 are both smaller than the third threshold 802 (NO in step S403), the pairing state is continued. Since the height z15 of the input position P15 is greater than or equal to the fourth threshold value 803 (YES in step S503), the touch state of the input position P15 is released (step S504).

次に、図8(d)の状態は、ユーザの操作している手800の指先(入力位置P17)と、操作している手801の指先(入力位置P18)のペアリングが解除された状態である。図8(d)は時刻t9の操作面101上の空間を側面から見た図である。まず、距離画像センサ102から、時刻t9の距離画像が取得される(ステップS302)。図8(a)と同様に、取得した距離画像から手領域が検出され、検出された手領域から入力位置を取得される。操作している手800の入力位置はP17(x17,y17,z17)となり、操作している手801の入力位置はP18(x18,y18,z18)となる。特定処理(ステップS306)において、入力位置P18の高さz18が第3閾値802以上のため(ステップS403でYES)、入力位置P17と入力位置P18のペアリングが解除される(ステップS404)。   Next, FIG. 8D shows a state in which the pairing of the fingertip (input position P17) of the hand 800 operated by the user and the fingertip (input position P18) of the operated hand 801 is released. It is. FIG. 8D is a view of the space on the operation surface 101 at time t9 as seen from the side. First, a distance image at time t9 is acquired from the distance image sensor 102 (step S302). Similarly to FIG. 8A, a hand region is detected from the acquired distance image, and an input position is acquired from the detected hand region. The input position of the operating hand 800 is P17 (x17, y17, z17), and the input position of the operating hand 801 is P18 (x18, y18, z18). In the specific process (step S306), since the height z18 of the input position P18 is equal to or greater than the third threshold value 802 (YES in step S403), the pairing between the input position P17 and the input position P18 is canceled (step S404).

以上、図8を用いて説明したように、本実施形態では、第4閾値より高い位置に第3閾値を設けることで、入力位置がタッチ操作の有効領域から出た後もペアリング継続の判定が行える。よって、シングルタッチ操作とマルチタッチ操作を両方認識可能な環境で、マルチタッチ操作後にユーザが意図しないシングルタッチイベントが発生することを低減できる。   As described above with reference to FIG. 8, in this embodiment, by providing the third threshold value at a position higher than the fourth threshold value, it is determined whether to continue pairing even after the input position leaves the effective area of the touch operation. Can be done. Therefore, it is possible to reduce the occurrence of a single touch event that is not intended by the user after the multi-touch operation in an environment where both the single-touch operation and the multi-touch operation can be recognized.

<変形例1>
図6のフローチャートで示した通り、第1の実施形態のタッチ操作の認識処理では、処理対象の入力位置がタッチ状態であり、かつ、ペアリングされている場合、ペアリングされた他の入力位置もタッチ状態にあるか否かを判定した(ステップS604)。変形例1では、第1の実施形態の一連の処理のうちステップS604の処理を省略する。すなわち、2つの入力位置がペアリング状態にあるならば、片方がタッチ状態になった時点で(ステップS603deYES)、マルチタッチ操作の認識を開始する(ステップS605)。2つの入力位置がペアリング状態にある場合、その後マルチタッチ操作が行われる可能性が高いため、程なく他方の入力位置のz座標がタッチ状態と判定される範囲に到達することが推定される。そこで変形例1は、他方の入力位置のz座標がタッチ状態と判定されるのを待たずに、2つの入力位置のxy座標の動きに基づいてマルチタッチ操作の認識を開始する。変形例1では、ユーザが意図していないシングルタッチイベントが発生を抑制しつつ、ユーザにとってマルチタッチ操作に対する応答の感度が向上する効果を得られる。
<Modification 1>
As shown in the flowchart of FIG. 6, in the touch operation recognition process according to the first embodiment, when the input position to be processed is in a touch state and is paired, another paired input position It is determined whether or not the touch state is also present (step S604). In Modification 1, the process of step S604 is omitted from the series of processes of the first embodiment. That is, if the two input positions are in the pairing state, the recognition of the multi-touch operation is started (step S605) when one of the two input positions is in the touch state (step S603 deYES). When the two input positions are in the pairing state, there is a high possibility that a multi-touch operation will be performed after that, so it is estimated that the z coordinate of the other input position will soon reach the range where the touch state is determined. Therefore, in the first modification, the multi-touch operation recognition is started based on the movement of the xy coordinates of the two input positions without waiting for the z-coordinate of the other input position to be determined as the touch state. In the first modification, it is possible to obtain an effect of improving the sensitivity of the response to the multi-touch operation for the user while suppressing the occurrence of a single touch event that is not intended by the user.

ここで、図7(d)と図8(b)を用いて、第1の実施形態と、その変形例1との処理の違いを説明する。図7(d)は、操作している手700の指先(入力位置P7)と操作している手701の指先(入力位置P8)がペアリングされており、入力位置P7だけがタッチ状態にある時刻t4の状態である。上述した通り、第1の実施形態では、図7(d)の状態は、入力位置P7とP8はペアリングされており(ステップS306)、入力位置P7だけがタッチ状態である(ステップS604でNO)ため、マルチタッチ操作は認識されない。それに対し、変形例1の場合、入力位置P7はタッチ状態であり(ステップS602でYES)、ペアリング済みであることに応じ(ステップS603でYES)、ステップS605でマルチタッチ操作が認識される。   Here, with reference to FIG. 7D and FIG. 8B, a difference in processing between the first embodiment and the modification example 1 will be described. In FIG. 7D, the fingertip of the operating hand 700 (input position P7) and the fingertip of the operating hand 701 (input position P8) are paired, and only the input position P7 is in a touch state. This is the state at time t4. As described above, in the first embodiment, in the state of FIG. 7D, the input positions P7 and P8 are paired (step S306), and only the input position P7 is in the touch state (NO in step S604). Therefore, multi-touch operation is not recognized. On the other hand, in the case of the modified example 1, the input position P7 is in the touch state (YES in step S602), and the multi-touch operation is recognized in step S605 in response to having been paired (YES in step S603).

一方、図8(b)の状態は、ユーザの操作している手800の指先(入力位置P13)がタッチ状態であり、操作している手801の指先(入力位置P14)がタッチ状態ではなくなった時刻t7の状態である。入力位置P13とP14はペアリング済みである。上述した通り、第1の実施形態では、入力位置P14がタッチ状態ではなくなったため(ステップS604でNO)、マルチタッチ操作及びシングルタッチ操作のいずれも認識されない。それに対し、変形例1では、入力位置P13が依然としてタッチ状態にあり(ステップS602でYES)、入力位置P14とペアリングされていることに応じ(ステップS603でYES)、ステップS605のマルチタッチ操作の認識が実行される。   On the other hand, in the state of FIG. 8B, the fingertip (input position P13) of the hand 800 operated by the user is in the touched state, and the fingertip (input position P14) of the operated hand 801 is not in the touched state. This is the state at time t7. The input positions P13 and P14 have been paired. As described above, in the first embodiment, since the input position P14 is no longer in the touch state (NO in step S604), neither the multi-touch operation nor the single touch operation is recognized. On the other hand, in the first modification, the input position P13 is still in the touch state (YES in step S602), and in response to being paired with the input position P14 (YES in step S603), the multi-touch operation in step S605 is performed. Recognition is performed.

第2閾値702と第1閾値703は、異なる値ではあるが、図8の例では20mmと10mmであるように、有る程度近い値が設定される。従って、2つの入力位置が第2閾値702を下回り、かつ、片方は第1閾値703を下回った場合、他方の入力位置も第1閾値703に極近い位置に存在することが推定可能である。変形例1では、このような状況では、2つの入力位置が両方マルチタッチ操作に用いられる可能性が高いとみなし、その時点(そのフレーム)からマルチタッチ操作の認識を開始する。そのためユーザにとってはマルチタッチ操作開始時の応答が早くなる、多少指が操作面101から浮いてもマルチタッチ操作の継続が可能となるなど、認識感度が高くなったように感じられる場合がある。第1の実施形態と、その変形例1は、応答の速さを求めるか否かといったユーザの操作性の好みに応じて特定されてもよい。   Although the second threshold value 702 and the first threshold value 703 are different values, a value close to a certain extent is set, such as 20 mm and 10 mm in the example of FIG. Therefore, when two input positions are below the second threshold value 702 and one of them is below the first threshold value 703, it can be estimated that the other input position is also in a position very close to the first threshold value 703. In the first modification, in such a situation, it is considered that there is a high possibility that both two input positions are used for the multi-touch operation, and recognition of the multi-touch operation is started from that point (that frame). For this reason, the user may feel that the recognition sensitivity has increased, such as a quick response at the start of the multi-touch operation, and the ability to continue the multi-touch operation even if the finger is slightly lifted from the operation surface 101. The first embodiment and the first modification thereof may be specified according to the user's operability preference, such as whether or not to obtain the response speed.

<変形例2>
第1の実施形態では、距離画像からユーザの指先の三次元位置を取得し、操作面と指先の間の距離が所定値を下回ったことをタッチによる入力とみなすシステムを前提とした。それに対し、変形例2では、距離画像センサではなく、操作面に、物体の接触と近接を区別して検出可能な近接センサを設置することで入力位置を検出するシステムへの適用例を説明する。
<Modification 2>
The first embodiment is based on a system that acquires the three-dimensional position of the user's fingertip from the distance image and regards that the distance between the operation surface and the fingertip is below a predetermined value as input by touch. On the other hand, in the second modification, an application example to a system that detects an input position by installing a proximity sensor that can be detected by distinguishing between contact and proximity of an object on an operation surface instead of a distance image sensor will be described.

図9は、変形例2における情報処理装置のメイン処理の流れを表すフローチャートである。図3との違いは、ステップS302〜ステップS305の距離画像に対する処理の代わりに、ステップS901が実行されることである。なお、他のステップで実行される処理は第1の実施形態と同じため、説明を省略する。   FIG. 9 is a flowchart showing a flow of main processing of the information processing apparatus in the second modification. The difference from FIG. 3 is that step S901 is executed instead of the processing for the distance image in steps S302 to S305. Note that the processing executed in other steps is the same as that in the first embodiment, and a description thereof will be omitted.

ステップS901では、近接センサにより入力位置を検出する。入力位置が検出された場合(ステップS901でYES)入力位置の位置情報を保持し、ステップS306へ進む。取得される入力位置の位置情報は(x,y)座標と高さ情報とする。高さ情報は、操作面に接触している状態と、接触していないが近接している状態の2つの状態とする。例えば近接センサが静電容量方式のセンサである場合、厳密には指先の高さを検出しているわけではない。例えば、入力位置で生じる静電容量の変化の大きさに閾値を設け、閾値以上の変化がある場合には操作体が接触している、閾値より小さい変化は操作体が接触するに至っていないが近接しているとみなすことで、接触と近接を区別する。例えば、操作面に接触している状態を“1”とし、操作面に近接している状態を“0”とする2値を高さに相当する情報として保持する。高さに相当する情報は、多値や数値で保持してもよい。ただし、第1実施形態と同様、高さ情報は操作面からの距離に相当する情報であればよく、鉛直方向に限定される訳ではない。例えば、操作面として任意の壁面が設定される場合、操作面からの距離は水平方向の座標軸での座標値に相当する場合もある。   In step S901, an input position is detected by a proximity sensor. When the input position is detected (YES in step S901), the position information of the input position is held, and the process proceeds to step S306. The position information of the acquired input position is (x, y) coordinates and height information. The height information includes two states: a state in which the operation surface is in contact and a state in which the operation surface is not in contact but is in proximity. For example, when the proximity sensor is a capacitive sensor, the fingertip height is not strictly detected. For example, a threshold is provided for the magnitude of the change in capacitance that occurs at the input position, and when there is a change greater than or equal to the threshold, the operating tool is in contact. Distinguish between contact and proximity by considering them close. For example, a binary value in which the state in contact with the operation surface is “1” and the state in proximity to the operation surface is “0” is stored as information corresponding to the height. Information corresponding to the height may be held in multiple values or numerical values. However, as in the first embodiment, the height information may be information corresponding to the distance from the operation surface, and is not limited to the vertical direction. For example, when an arbitrary wall surface is set as the operation surface, the distance from the operation surface may correspond to a coordinate value on a horizontal coordinate axis.

図11(a)は、変形例2第1閾値で扱われる3つの閾値を概念的に表す図である。上記のように静電容量方式で近接検知を行うセンサでは、操作体によって近接が検知できる高さが異なっている場合もある。ただし図11(a)では、変形例2の概念を視覚的に示すため、便宜的に一定の距離の閾値1100より操作面に近い範囲が、近接センサが操作体の位置を検出可能な範囲であるとする。また、操作体が操作面に物理的に接触した、つまり操作体と操作面の間の距離を閾値1101とする。閾値1100は、第1の実施形態における第2閾値に対応する役割をもつものであり、閾値1101は、第1の実施形態における第1閾値に対応する役割をもつものである。第2閾値第1閾値
図11(a)のように設定することで、変形例2では、近接している状態にある入力位置が複数検出されている時点でペアリングを行い、ペアリングされた入力位置のうちいずれか1つだけがタッチ状態に移行した時点では、シングルタッチ操作を行わない。そして、全ての入力位置がタッチ状態に移行したことに応じてマルチタッチ操作の認識を行う。このように、第1の実施形態は、距離画像センサを利用するテーブルトップインタフェースだけでなく、近接センサを利用するシステムにも適用可能である。近接センサを使用することで、装置の設置条件や使用条件等により、装置のコストダウンや入力位置の位置検出精度の向上が可能になる場合がある。
FIG. 11A is a diagram conceptually illustrating three threshold values handled by the first threshold value of the second modification. As described above, in the sensor that performs proximity detection by the electrostatic capacitance method, the height at which proximity can be detected may differ depending on the operation body. However, in FIG. 11A, in order to visually show the concept of the modified example 2, for convenience, a range closer to the operation surface than the threshold 1100 of a certain distance is a range in which the proximity sensor can detect the position of the operation body. Suppose there is. Further, a threshold 1101 is defined as the distance between the operating body and the operating surface that the operating body physically touches the operating surface. The threshold value 1100 has a role corresponding to the second threshold value in the first embodiment, and the threshold value 1101 has a role corresponding to the first threshold value in the first embodiment. Second Threshold First Threshold By setting as shown in FIG. 11A, in the second modification, pairing is performed when a plurality of input positions in close proximity are detected, and pairing is performed. When only one of the input positions shifts to the touch state, the single touch operation is not performed. Then, the multi-touch operation is recognized in response to the transition of all input positions to the touch state. As described above, the first embodiment can be applied not only to a table top interface using a distance image sensor but also to a system using a proximity sensor. By using the proximity sensor, the cost of the apparatus may be reduced and the position detection accuracy of the input position may be improved depending on the installation conditions and use conditions of the apparatus.

<変形例3>
変形例3では、上述した距離画像センサや近接センサではなく、操作面に、物体による押圧を検出可能な感圧センサを設置することで入力位置を検出するシステムへの適用例を示す。ここでは1つの入力位置に圧力がかけられた状態で入力される操作と、複数の入力位置に圧力がかけられた状態で入力される操作を区別して認識可能であることが前提となる。
<Modification 3>
Modification 3 shows an application example to a system in which an input position is detected by installing a pressure-sensitive sensor capable of detecting pressing by an object on the operation surface instead of the above-described distance image sensor and proximity sensor. Here, it is premised that an operation input in a state where pressure is applied to one input position and an operation input in a state where pressure is applied to a plurality of input positions can be distinguished and recognized.

図10は、本変形例における情報処理装置のメイン処理の流れを表すフローチャートである。図3との違いは、ステップS302〜ステップS305の距離画像に対する処理の代わりに、ステップS901が実行されることである。なお、他のステップで実行される処理は第1の実施形態と同じため、説明を省略する。   FIG. 10 is a flowchart showing the flow of the main process of the information processing apparatus in this modification. The difference from FIG. 3 is that step S901 is executed instead of the processing for the distance image in steps S302 to S305. Note that the processing executed in other steps is the same as that in the first embodiment, and a description thereof will be omitted.

ステップS1001では、感圧センサにより操作面上の入力位置を検出する。入力位置が検出された場合(ステップS1001でYES)入力位置の位置情報を保持し、ステップS306へ進む。入力位置の位置情報は、(x,y)座標と接触圧力情報とする。接触圧力情報は、操作面に接触している状態と、操作面に接触し、更に押しこんでいる(基準を超える押圧力を加えている)状態の2つの状態とする。例えば、操作面に接触している状態を“0”とし、操作面に近接し押しこんでいる状態を“1”とする2値で保持する。なお、接触圧力情報に関しては、多値や数値で保持してもよい。   In step S1001, the input position on the operation surface is detected by the pressure sensor. When the input position is detected (YES in step S1001), the position information of the input position is held, and the process proceeds to step S306. The position information of the input position is (x, y) coordinates and contact pressure information. The contact pressure information includes two states: a state in which the operation surface is in contact and a state in which the operation surface is in contact with and further pushed in (a pressing force exceeding the reference is applied). For example, the state of being in contact with the operation surface is set to “0”, and the state of being pushed in close proximity to the operation surface is held as “1”. Note that the contact pressure information may be held in multiple values or numerical values.

図11(b)は、変形例3で利用される2つの閾値第1閾値第2閾値を概念的に表す図である。上記のように感圧センサでは、操作体によって入力位置に加えられた圧力を検出するものであり、操作面が押しこまれた距離を検出するものではない。ただし図11(b)では、変形例3の概念を視覚的に示すため、便宜的に操作面に圧力が加えられることで概念的に操作面が押しこまれる距離に閾値を設ける。ここでは操作体が操作面に物理的に接触した段階を表す距離0を第2閾値1102とし、さらに基準以上の押圧力が加えられたときに押し込まれる距離を第1閾値1103として設定する。閾値1102は、第1の実施形態における第2閾値に対応する役割をもつものであり、閾値1103は、第1の実施形態における第1閾値に対応する役割をもつものである。ただし、変形例3の場合、閾値1102から閾値1103に至るまでの間でも、タッチ入力は認識されている。押し込まれる距離が第1閾値1103以上となるのは、入力位置で加えられた押圧力が基準となる圧力以上となるときである。なお、ユーザの操作感を考慮し、閾値1102第2閾値は操作面近傍の範囲で、閾値1103第1閾値は入力位置の接触圧力が検出できる範囲で、それぞれ調整されることが好ましい。ただし、閾値の調整において、閾値1103第1閾値は閾値1100第2閾値よりも大きな接触圧力に対応する値が設定される。このように、第1の実施形態は、距離画像センサを利用するテーブルトップインタフェースだけでなく、感圧センサを利用するシステムにも適用可能である。特に、感圧センサで各入力位置における操作面に対する押圧力の大きさを検出し、1つの入力位置でのみ基準を超える押圧力が検出される場合と複数の入力位置で基準を超える押圧力が検出される場合とで、認識する操作を異ならせる場合に効果的である。変形例3によれば、複数の入力位置に押圧力を加えるタイミングがずれ、一時的に一部の入力位置でしか基準を超える押圧力が検出されない場合でも、ユーザに意図に沿わない操作を誤って認識してしまう問題を低減できる。   FIG. 11B is a diagram conceptually showing two threshold values, the first threshold value and the second threshold value used in the third modification. As described above, the pressure sensor detects the pressure applied to the input position by the operating body, and does not detect the distance by which the operation surface is pushed. However, in FIG. 11B, in order to visually show the concept of the third modification, a threshold is provided for the distance that the operation surface is conceptually pushed in by applying pressure to the operation surface for convenience. Here, the distance 0 representing the stage at which the operating body physically touches the operation surface is set as the second threshold 1102, and the distance pushed when a pressing force equal to or higher than the reference is applied is set as the first threshold 1103. The threshold value 1102 has a role corresponding to the second threshold value in the first embodiment, and the threshold value 1103 has a role corresponding to the first threshold value in the first embodiment. However, in the case of the modification 3, the touch input is recognized even from the threshold value 1102 to the threshold value 1103. The pushing distance is equal to or greater than the first threshold 1103 when the pressing force applied at the input position is equal to or greater than the reference pressure. In consideration of the user's feeling of operation, it is preferable that the threshold 1102 and the second threshold are adjusted in the vicinity of the operation surface, and the threshold 1103 and the first threshold are adjusted in the range in which the contact pressure at the input position can be detected. However, in the threshold adjustment, the threshold 1103 first threshold is set to a value corresponding to a contact pressure larger than the threshold 1100 second threshold. As described above, the first embodiment can be applied not only to a table top interface using a distance image sensor but also to a system using a pressure sensor. In particular, the pressure sensor detects the magnitude of the pressing force on the operation surface at each input position, and when a pressing force exceeding the reference is detected only at one input position, and the pressing force exceeding the reference is detected at a plurality of input positions. This is effective when the recognized operation differs depending on the detected case. According to the third modification, even when the pressing force applied to a plurality of input positions is shifted and a pressing force exceeding a reference is temporarily detected only at a part of the input positions, an operation unintended by the user is mistakenly performed. Can be reduced.

なお、上述した第1実施形態およびその変形例の説明の中で、閾値を用いる判定処理において「以上」又は「以下」という表現を用いたが、判定対象の距離が各閾値と一致する場合をいずれの判定結果に含めるかは、閾値の大きさとともに適宜設定されればよい。例えば、ステップS506でタッチ状態を判定する第1閾値の処理については、操作面から入力位置までの距離が少なくとも第1閾値を下回る態をタッチ状態と認識すればよい。ステップS406での第2閾値の場合も同様である。また例えば、ステップS503でタッチ状態の解除を判定する第4閾値の処理については、操作面から入力位置までの距離が少なくとも第4閾値を上回ることをタッチ状態の解除と認識すればよい。ステップS403での第3閾値の場合も同様である。   In the description of the first embodiment and the modifications thereof described above, the expression “above” or “below” is used in the determination process using the threshold value, but the determination target distance matches each threshold value. Which determination result is included may be set as appropriate together with the threshold value. For example, with regard to the first threshold value processing for determining the touch state in step S506, a state where the distance from the operation surface to the input position is at least below the first threshold value may be recognized as the touch state. The same applies to the second threshold value in step S406. Further, for example, with regard to the fourth threshold value processing for determining the release of the touch state in step S503, it may be recognized that the touch state is released when the distance from the operation surface to the input position exceeds at least the fourth threshold value. The same applies to the third threshold value in step S403.

<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
<Other embodiments>
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

210 三次元情報取得部
211 操作体取得部
212 入力位置取得部
213 特定部
214 認識部
215 表示制御部
210 Three-dimensional information acquisition unit 211 Operation body acquisition unit 212 Input position acquisition unit 213 Identification unit 214 Recognition unit 215 Display control unit

Claims (18)

所定の操作面上の空間に入力される入力位置について前記所定の操作面からの距離に相当する情報を取得する取得手段と、
前記取得手段に取得される情報に基づいて、前記所定の操作面からの距離が第1閾値を下回る1つの入力位置を用いて入力される第1操作と、前記所定の操作面に対する距離が前記第1閾値を下回る複数の入力位置を用いて入力される第2操作を認識する認識手段と、
前記認識手段に認識された操作への応答するための出力を制御する出力制御手段を備え、
前記出力制御手段は、前記所定の操作面からの距離が、前記第1閾値より大きい第2閾値を下回る入力位置の数が複数で、かつ、前記所定の操作面からの距離が前記第1閾値を下回る入力位置が1つの間、前記第1操作に応答しないことを特徴とする情報処理装置。
Obtaining means for obtaining information corresponding to a distance from the predetermined operation surface with respect to an input position input to a space on the predetermined operation surface;
Based on the information acquired by the acquisition means, the first operation input using one input position whose distance from the predetermined operation surface is less than the first threshold, and the distance to the predetermined operation surface is Recognition means for recognizing a second operation input using a plurality of input positions below a first threshold;
An output control means for controlling an output for responding to the operation recognized by the recognition means;
The output control means includes a plurality of input positions whose distance from the predetermined operation surface is less than a second threshold value that is greater than the first threshold value, and the distance from the predetermined operation surface is the first threshold value. An information processing apparatus characterized by not responding to the first operation while there is one input position below.
前記認識手段は、前記所定の操作面からの距離が、前記第2閾値を下回る入力位置の数が複数ではなく、かつ、前記所定の操作面からの距離が前記第1閾値を下回る入力位置が1つの場合、前記第1操作を認識し、前記出力制御手段は認識された前記第1操作に応答するための出力を行うことを特徴とする請求項1に記載の情報処理装置。   The recognizing unit is configured such that the number of input positions whose distance from the predetermined operation surface is less than the second threshold is not plural, and the input position where the distance from the predetermined operation surface is less than the first threshold. The information processing apparatus according to claim 1, wherein in one case, the first operation is recognized, and the output control unit performs output for responding to the recognized first operation. 前記所定の操作面からの距離が、前記第1閾値より大きい第2閾値を下回る複数の入力位置を、前記第2操作を入力するために有効な入力位置として特定する特定手段を更に備え、
前記認識手段は、前記特定手段によって前記第2操作を入力するために有効な入力位置として特定された全ての入力位置の前記操作面からの距離が前記第1閾値を下回ったことに基づいて前記第2操作を認識し、前記出力制御手段は認識された前記第1操作に応答するための出力を行うことを特徴とする請求項1又は2に記載の情報処理装置。
A specifying unit that specifies a plurality of input positions whose distance from the predetermined operation surface is lower than a second threshold value that is greater than the first threshold value as effective input positions for inputting the second operation;
The recognizing means is based on the fact that the distance from the operation surface of all the input positions specified as effective input positions for inputting the second operation by the specifying means is less than the first threshold value. The information processing apparatus according to claim 1, wherein the information processing apparatus recognizes a second operation, and the output control unit performs output for responding to the recognized first operation.
前記所定の操作面からの距離が、前記第1閾値より大きい第2閾値を下回る複数の入力位置のうち、該複数の入力位置の間の距離が基準よりも小さい入力位置を、前記第2操作を入力するために有効な入力位置として特定する特定手段を更に備え、
前記認識手段は、前記特定手段によって前記第2操作を入力するために有効な入力位置として特定された全ての入力位置の前記操作面からの距離が前記第1閾値を下回ったことに基づいて前記第2操作を認識し、前記出力制御手段は認識された前記第2操作に応答するための出力を行うことを特徴とする請求項1又は2に記載の情報処理装置。
Among a plurality of input positions whose distance from the predetermined operation surface is less than a second threshold value that is greater than the first threshold value, an input position whose distance between the plurality of input positions is smaller than a reference is selected as the second operation. Is further provided with a specifying means for specifying as an effective input position for inputting
The recognizing means is based on the fact that the distance from the operation surface of all the input positions specified as effective input positions for inputting the second operation by the specifying means is less than the first threshold value. The information processing apparatus according to claim 1, wherein the information processing apparatus recognizes a second operation, and the output control unit performs output for responding to the recognized second operation.
前記認識手段は、前記入力位置の前記所定の操作面からの距離が少なくとも前記第1閾値を下回ったことを、前記入力位置を用いたタッチ入力として認識し、前記第1操作は所定のシングルタッチ操作であって、前記第2操作は所定のマルチタッチ操作であることを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。   The recognition means recognizes that the distance from the predetermined operation surface of the input position is at least below the first threshold value as a touch input using the input position, and the first operation is a predetermined single touch. The information processing apparatus according to claim 1, wherein the second operation is a predetermined multi-touch operation. 前記認識手段は、前記入力位置の前記所定の操作面からの距離が前記第1閾値より大きい第3閾値を上回った状態に基づいて前記入力位置を用いたタッチ入力が解除されたと認識することを特徴とする請求項5に記載の情報処理装置。   The recognition means recognizes that the touch input using the input position has been released based on a state where the distance of the input position from the predetermined operation surface exceeds a third threshold value that is greater than the first threshold value. The information processing apparatus according to claim 5, characterized in that: 前記特定手段は、前記特定手段によって前記第2操作を入力するために有効な入力位置として特定された複数の入力位置のうち、少なくとも1つの入力位置の前記所定の操作面からの距離が第4閾値を上回った場合、前記第2操作を入力するために有効な入力位置として特定された全ての入力位置の前記特定を解除する請求項3又は4に記載の情報処理装置。   The specifying means has a fourth distance from the predetermined operation surface of at least one input position among a plurality of input positions specified as an effective input position for inputting the second operation by the specifying means. 5. The information processing apparatus according to claim 3, wherein when the threshold value is exceeded, the specification of all input positions specified as effective input positions for inputting the second operation is canceled. 前記所定の操作面上の、前記特定手段によって前記第2操作を入力するために有効な入力位置として特定された複数の入力位置に相当する部分に、前記特定手段による特定の結果を表すための制御を行う表示制御手段を更に備えることを特徴とする請求項3又は4に記載の情報処理装置。   In order to represent a specific result by the specifying means in a portion corresponding to a plurality of input positions specified as effective input positions for inputting the second operation by the specifying means on the predetermined operation surface The information processing apparatus according to claim 3, further comprising display control means for performing control. 前記取得手段は、前記所定の操作面を上方から見下ろすように設置された距離画像センサが撮像する距離画像から、所定の操作体のうち端部の三次元の位置情報を取得することを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。   The acquisition unit acquires three-dimensional position information of an end portion of a predetermined operation body from a distance image captured by a distance image sensor installed so as to look down on the predetermined operation surface from above. The information processing apparatus according to any one of claims 1 to 8. 前記取得手段は、前記所定の操作面に設置された近接センサから、前記近接センサで検出可能な範囲に存在する操作体の前記操作面に平行な二次元の位置情報と、前記操作面からの距離に相当する情報を取得することを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。   The acquisition means includes, from the proximity sensor installed on the predetermined operation surface, two-dimensional position information parallel to the operation surface of the operation body existing in a range detectable by the proximity sensor, and from the operation surface. The information processing apparatus according to claim 1, wherein information corresponding to a distance is acquired. 前記所定の操作体は人の手であり、前記入力位置は前記人の手のうち指先に相当する位置であることを特徴とする請求項9又は10に記載の情報処理装置。   The information processing apparatus according to claim 9 or 10, wherein the predetermined operation body is a human hand, and the input position is a position corresponding to a fingertip in the human hand. 取得手段により、所定の操作面上の空間に入力される入力位置について前記所定の操作面からの距離に相当する情報を取得する取得工程と、
認識手段により、取得される前記情報に基づいて、前記所定の操作面からの距離が第1閾値を下回る1つの入力位置を用いて入力される第1操作と、前記所定の操作面に対する距離が前記第1閾値を下回る複数の入力位置を用いて入力される第2操作を認識する認識工程とを有し、
前記認識工程では、前記所定の操作面からの距離が、前記第1閾値より大きい第2閾値を下回る入力位置の数が複数で、かつ、前記所定の操作面からの距離が前記第1閾値を下回る入力位置が1つの場合、前記第1操作の認識は行わないことを特徴とする情報処理装置の制御方法。
An acquisition step of acquiring information corresponding to a distance from the predetermined operation surface with respect to an input position input to a space on the predetermined operation surface by an acquisition unit;
Based on the information acquired by the recognition means, a first operation input using one input position whose distance from the predetermined operation surface is lower than a first threshold, and a distance to the predetermined operation surface is Recognizing a second operation that is input using a plurality of input positions below the first threshold,
In the recognition step, there are a plurality of input positions whose distance from the predetermined operation surface is less than a second threshold value that is greater than the first threshold value, and the distance from the predetermined operation surface is equal to the first threshold value. The information processing apparatus control method according to claim 1, wherein the first operation is not recognized when there is one input position below.
コンピュータに読み込ませ実行させることによって、前記コンピュータを、請求項1に記載の情報処理装置として動作させるプログラム。   A program that causes a computer to operate as the information processing apparatus according to claim 1 by being read and executed by the computer. 請求項13に記載されたプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。   A computer-readable storage medium storing the program according to claim 13. 所定の操作面上に接触することで入力される入力位置について前記所定の操作面にかかる圧力の大きさに相当する情報を取得する取得手段と、
前記取得手段に取得される情報を用いて、前記所定の操作面にかかる圧力の大きさが第1閾値を上回る1つの入力位置によって入力される第1操作と、前記所定の操作面に対する距離が前記第1閾値を上回る複数の入力位置によって入力される第2操作を認識する認識手段と、
前記認識手段に認識された操作への応答するための出力を制御する出力制御手段を備え、
前記認識手段は、前記所定の操作面からの距離が、前記第1閾値より小さい第2閾値を下回る入力位置の数が複数で、かつ、前記所定の操作面からの距離が前記第1閾値を上回る入力位置が1つの間、前記第1操作に応答しないことを特徴とする情報処理装置。
Obtaining means for obtaining information corresponding to the magnitude of pressure applied to the predetermined operation surface with respect to an input position input by contacting on the predetermined operation surface;
Using the information acquired by the acquisition means, the first operation input by one input position where the magnitude of the pressure applied to the predetermined operation surface exceeds a first threshold, and the distance to the predetermined operation surface is Recognition means for recognizing a second operation input by a plurality of input positions exceeding the first threshold;
An output control means for controlling an output for responding to the operation recognized by the recognition means;
The recognition means includes a plurality of input positions whose distance from the predetermined operation surface is less than a second threshold value that is smaller than the first threshold value, and the distance from the predetermined operation surface satisfies the first threshold value. An information processing apparatus characterized by not responding to the first operation while there is one more input position.
取得手段により、所定の操作面上に接触することで入力される入力位置について前記所定の操作面にかかる圧力の大きさに相当する情報を取得する取得工程と、
認識手段により、取得される前記情報を用いて、前記所定の操作面にかかる圧力の大きさが第1閾値を上回る1つの入力位置によって入力される第1操作と、前記所定の操作面に対する距離が前記第1閾値を上回る複数の入力位置によって入力される第2操作を認識する認識工程と、
前記認識工程で認識された操作への応答するための出力を制御する出力制御工程を有し、
前記出力制御工程では、前記所定の操作面からの距離が、前記第1閾値より小さい第2閾値を下回る入力位置の数が複数で、かつ、前記所定の操作面からの距離が前記第1閾値を上回る入力位置が1つの場合、前記第1操作に応答しないことを特徴とする情報処理装置の制御方法。
An acquisition step of acquiring information corresponding to the magnitude of pressure applied to the predetermined operation surface with respect to an input position input by contacting the predetermined operation surface by an acquisition unit;
Using the information acquired by the recognition means, the first operation input by one input position where the magnitude of the pressure applied to the predetermined operation surface exceeds the first threshold, and the distance to the predetermined operation surface Recognizing a second operation input by a plurality of input positions exceeding the first threshold;
An output control step of controlling an output for responding to the operation recognized in the recognition step;
In the output control step, there are a plurality of input positions whose distance from the predetermined operation surface is less than a second threshold value that is smaller than the first threshold value, and the distance from the predetermined operation surface is the first threshold value. If the number of input positions exceeds 1, the information processing apparatus control method does not respond to the first operation.
コンピュータに読み込ませ実行させることによって、前記コンピュータを、請求項15に記載の情報処理装置として動作させるプログラム。   A program that causes a computer to operate as the information processing apparatus according to claim 15 by being read and executed by the computer. 請求項17に記載されたプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。   A computer-readable storage medium storing the program according to claim 17.
JP2016125592A 2016-06-24 2016-06-24 Information processing apparatus, control method therefor, program, and storage medium Pending JP2017228216A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016125592A JP2017228216A (en) 2016-06-24 2016-06-24 Information processing apparatus, control method therefor, program, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016125592A JP2017228216A (en) 2016-06-24 2016-06-24 Information processing apparatus, control method therefor, program, and storage medium

Publications (1)

Publication Number Publication Date
JP2017228216A true JP2017228216A (en) 2017-12-28

Family

ID=60889266

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016125592A Pending JP2017228216A (en) 2016-06-24 2016-06-24 Information processing apparatus, control method therefor, program, and storage medium

Country Status (1)

Country Link
JP (1) JP2017228216A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020170311A (en) * 2019-04-02 2020-10-15 船井電機株式会社 Input device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020170311A (en) * 2019-04-02 2020-10-15 船井電機株式会社 Input device
JP7400205B2 (en) 2019-04-02 2023-12-19 船井電機株式会社 input device

Similar Documents

Publication Publication Date Title
JP6539816B2 (en) Multi-modal gesture based interactive system and method using one single sensing system
US10444908B2 (en) Virtual touchpads for wearable and portable devices
US9069386B2 (en) Gesture recognition device, method, program, and computer-readable medium upon which program is stored
KR101844390B1 (en) Systems and techniques for user interface control
JP6371475B2 (en) Eye-gaze input device, eye-gaze input method, and eye-gaze input program
JP6618276B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP6004716B2 (en) Information processing apparatus, control method therefor, and computer program
WO2017029749A1 (en) Information processing device, control method therefor, program, and storage medium
JP6452369B2 (en) Information processing apparatus, control method therefor, program, and storage medium
CN109964202B (en) Display control apparatus, display control method, and computer-readable storage medium
JP5342806B2 (en) Display method and display device
CN104978018B (en) Touch system and touch method
US20180373392A1 (en) Information processing device and information processing method
JP2017084307A (en) Information processing device, control method therefor, program, and recording medium
JP5882270B2 (en) Information processing apparatus and program
JP6555958B2 (en) Information processing apparatus, control method therefor, program, and storage medium
WO2016208099A1 (en) Information processing device, input control method for controlling input upon information processing device, and program for causing information processing device to execute input control method
JP2017228216A (en) Information processing apparatus, control method therefor, program, and storage medium
JP6618301B2 (en) Information processing apparatus, control method therefor, program, and storage medium
US20160018924A1 (en) Touch device and corresponding touch method
JP2010086367A (en) Positional information inputting device, positional information inputting method, program, information processing system, and electronic equipment
JP2018063555A (en) Information processing device, information processing method, and program
JP5456817B2 (en) Display control apparatus, display control method, information display system, and program
JP6570376B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP2017022590A (en) Image processing apparatus, control method for image processing apparatus, and program