JP2017045332A - Information processing device, control method thereof, program, and storage medium - Google Patents

Information processing device, control method thereof, program, and storage medium Download PDF

Info

Publication number
JP2017045332A
JP2017045332A JP2015168293A JP2015168293A JP2017045332A JP 2017045332 A JP2017045332 A JP 2017045332A JP 2015168293 A JP2015168293 A JP 2015168293A JP 2015168293 A JP2015168293 A JP 2015168293A JP 2017045332 A JP2017045332 A JP 2017045332A
Authority
JP
Japan
Prior art keywords
fingertip
touch
fingertips
finger
target surface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015168293A
Other languages
Japanese (ja)
Other versions
JP6570376B2 (en
JP2017045332A5 (en
Inventor
佐藤 浩之
Hiroyuki Sato
浩之 佐藤
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 JP2015168293A priority Critical patent/JP6570376B2/en
Publication of JP2017045332A publication Critical patent/JP2017045332A/en
Publication of JP2017045332A5 publication Critical patent/JP2017045332A5/ja
Application granted granted Critical
Publication of JP6570376B2 publication Critical patent/JP6570376B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Abstract

PROBLEM TO BE SOLVED: To solve a problem that, when a touch of the finger to the predetermined object surface is detected based on a degree of approach between both the finger and the object surface, an erroneous recognition of the touch operation caused due to the influence of the other fingers moved in association with the finger used for the operation.SOLUTION: Information processing device includes: in order to solve the problem, an image acquisition part 120 for acquiring an input image reflected with position information inside a space into which a person inserts a hand to perform an operation; a position detection part 121 for detecting each position information of a plurality of fingertips from the hand of the person from the acquired input image; a specifying part 123 for specifying the fingertip serving as an object of processing for determining whether the predetermined object surface is touched among the plurality of finger tips using the relationship among the plurality of detected finger tips; the detected position information about the specified fingertip; and recognition part 125 for recognizing the touch operation which is input on the prescribed object surface by the fingertip.SELECTED DRAWING: Figure 1

Description

本発明は、画像に基づいてタッチ操作を認識する技術に関する。   The present invention relates to a technique for recognizing a touch operation based on an image.

近年、プロジェクタによる重畳表示を行う新しいユーザーインターフェース(以下、UI)システムが開発されている。上述のシステムでは、テーブルや壁、あるいは文書や物体にボタン等のタッチ操作可能なユーザーインターフェース部品(以下、UI部品)を投影し、UI部品をユーザがタッチ操作する。上述のシステムは、大型のディスプレイを備える装置に比べると小さく構成することが可能であるため持ち運びが比較的容易であり、かつ物理媒体と電子媒体を組み合わせたリッチなインタラクションが可能になるといった利点がある。上述のシステムにおいては、タッチパネルを利用せず、様々な物体に対象面を設け、対象面に対するタッチ操作を認識するために、センサやカメラ等で撮像した画像を使って、ユーザの指などの操作体が対象面に接触したことを検出することが多い。具体的には、対象面からの距離に閾値を設定し、閾値よりも対象面に近い範囲に指先が存在する状態を、タッチ中の状態とみなす。   In recent years, a new user interface (hereinafter referred to as UI) system that performs superimposed display by a projector has been developed. In the above-described system, a user interface component (hereinafter referred to as UI component) such as a button is projected onto a table, a wall, a document, or an object, and the user touches the UI component. The above-described system can be configured smaller than an apparatus having a large display, and thus is relatively easy to carry, and has the advantage that rich interaction combining physical and electronic media is possible. is there. In the above-described system, an operation such as a finger of a user is performed using an image captured by a sensor or a camera in order to provide a target surface on various objects and recognize a touch operation on the target surface without using a touch panel. Often it is detected that the body has touched the target surface. Specifically, a threshold is set for the distance from the target surface, and a state where the fingertip is present in a range closer to the target surface than the threshold is regarded as a touched state.

特許文献1には、距離センサを用いて指先と対象物の3次元位置を取得し、指の速さや指と対象物との距離によってタッチ認識を行う方法が開示されている。また、特許文献2では、操作体のうち最も対象面に近い位置を指先位置として決定するため、手の複数の指先のうち、最も対象面に近い指先の位置を特定してその位置を指先位置とすることが開示されている。   Japanese Patent Application Laid-Open No. 2004-228561 discloses a method of acquiring a three-dimensional position between a fingertip and an object using a distance sensor and performing touch recognition based on the speed of the finger or the distance between the finger and the object. Further, in Patent Document 2, since the position closest to the target surface among the operating bodies is determined as the fingertip position, the position of the fingertip closest to the target surface is specified among the plurality of fingertips of the hand, and the position is determined as the fingertip position. It is disclosed that.

特開2014−157515号公報JP 2014-157515 A 特開2014−142695号公報JP 2014-142695 A

ユーザが複数の指のうちの一部で対象面をタッチする際には、タッチに用いられる指の動きに付随して、タッチに用いられない他の指が対象面に近づく現象がある。タッチパネルのように直接物体が接触したことを検出するデバイスを利用する場合であれば、そのようなタッチに利用されない指の動きがタッチ検出の精度に影響することはない。しかしながら、撮像画像を用い、操作体の対象面からの距離と閾値の比較に基づいてタッチを検出する場合には、タッチに利用することが意図されない指までが、閾値よりも対象面に近い範囲に侵入してしまうことでタッチが検出されることがありうる。一方で、マルチタッチ操作と呼ばれる複数の指を利用するタッチ操作が入力される場合には、ユーザが意図を持って複数の指を同時に対象面に近づけることもある。   When the user touches the target surface with a part of the plurality of fingers, there is a phenomenon that other fingers not used for the touch approach the target surface along with the movement of the finger used for the touch. When using a device that detects that an object is in direct contact, such as a touch panel, finger movement that is not used for such touch does not affect touch detection accuracy. However, when a touch is detected using a captured image based on a comparison between the distance from the target surface of the operating tool and a threshold value, the range of the finger that is not intended to be used for the touch is closer to the target surface than the threshold value The touch may be detected by intruding into the screen. On the other hand, when a touch operation using a plurality of fingers called a multi-touch operation is input, the user may bring the plurality of fingers close to the target surface simultaneously with an intention.

従来技術では、複数の指がタッチ対象面に近接する場合、操作に用いられない指が含まれる可能性と、マルチタッチ操作のために複数の指がタッチに用いられる可能性の両方が存在しえること、それらを区別することは考慮されていない。   In the prior art, when multiple fingers are close to the touch target surface, there are both the possibility of including fingers that are not used for operation and the possibility of using multiple fingers for touch for multi-touch operations. It is not considered to distinguish between them.

本発明は上記課題に鑑みてなされたものであり、所定の対象面に対する指のタッチを両者の近接の程度に基づいて検出する場合において、操作に利用される指に連動して動いてしまう他の指の影響により生じるタッチ操作の誤認識を低減することを目的とする。   The present invention has been made in view of the above problems, and in the case of detecting the touch of a finger with respect to a predetermined target surface based on the degree of proximity between the two, it moves in conjunction with the finger used for the operation. An object of the present invention is to reduce misrecognition of touch operations caused by the influence of fingers.

本発明は、上記課題を解決するため、人が手を挿入して操作を行う空間内の位置情報が反映された入力画像を取得する画像取得手段と、前記画像取得手段によって取得された入力画像のうち前記人の手が写る部分に反映された前記位置情報に基づいて、前記人の手のうちの複数の指先のそれぞれの位置情報を検出する位置検出手段と、前記位置検出手段によって検出された前記複数の指先の関係を使って、前記複数の指先のうち前記所定の対象面にタッチしたかを判定する処理の対象とする指先を特定する特定手段と、前記特定手段によって特定された指先について前記位置検出手段によって検出された位置情報と、前記タッチ対象面の位置情報を使って、前記指先によって前記所定の対象面上に入力されるタッチ操作を認識する認識手段と、を備える。   In order to solve the above-described problems, the present invention provides an image acquisition unit that acquires an input image reflecting position information in a space where a person inserts a hand and performs an operation, and the input image acquired by the image acquisition unit Position detecting means for detecting position information of each of a plurality of fingertips of the person's hand based on the position information reflected in the portion of the person's hand, and detected by the position detecting means A specifying unit that specifies a fingertip that is a target of processing for determining whether the predetermined target surface is touched among the plurality of fingertips using the relationship between the plurality of fingertips; and the fingertip specified by the specifying unit Recognizing means for recognizing a touch operation input on the predetermined target surface by the fingertip using the position information detected by the position detecting means and the position information of the touch target surface. Equipped with a.

本発明によれば、所定の対象面に対する指のタッチを両者の近接の程度に基づいて検出する場合において、操作に利用される指に連動して動いてしまう他の指の影響により生じるタッチ操作の誤認識を低減することができる。   According to the present invention, when a finger touch on a predetermined target surface is detected based on the degree of proximity between the two, a touch operation caused by the influence of another finger moving in conjunction with the finger used for the operation False recognition can be reduced.

情報処理装置を利用したテーブルトップシステムの外観の一例を表す図The figure showing an example of the external appearance of the table top system using information processor 情報処理装置を利用したテーブルトップシステムの構成の一例を示す図The figure which shows an example of a structure of the table top system using information processing apparatus タッチの認識の原理を表す図Diagram showing the principle of touch recognition シングルタッチを入力する手の状態と認識結果の一例を表す図The figure showing an example of the state of the hand which inputs single touch, and a recognition result マルチタッチを入力する手の状態と認識結果の一例を表す図The figure showing an example of the state of the hand which inputs multi-touch, and a recognition result マルチタッチを入力する手の状態と認識結果の一例を表す図The figure showing an example of the state of the hand which inputs multi-touch, and a recognition result マルチタッチ認識処理の認識結果を利用するアプリケーションの一例を示す図The figure which shows an example of the application which utilizes the recognition result of a multi-touch recognition process タッチ操作認識処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of touch operation recognition processing シングルタッチ操作認識処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of a single touch operation recognition process 各指先が操作に関わる指とみなされるかの判定処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of the determination process whether each fingertip is considered as the finger in connection with operation マルチタッチ認識処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of multi-touch recognition processing 指同士の関係に基づく閾値の決定処理の流れの一例を示すフローチャートThe flowchart which shows an example of the flow of the determination process of the threshold value based on the relationship between fingers 平面以外の物体に対するタッチ認識の原理を示す図Diagram showing the principle of touch recognition for objects other than planes タッチ判定の条件を指ごとに設定する場合の一例を示す図The figure which shows an example in the case of setting the conditions of touch determination for every finger | toe

以下に、図面を参照して本発明の実施形態を詳細に説明する。なお、以下で説明する実施形態は、本発明を具体的に実施した場合の一例を示すものであり、これに限るものではない。   Embodiments of the present invention will be described below in detail with reference to the drawings. In addition, embodiment described below shows an example at the time of implementing this invention concretely, and is not restricted to this.

[第1の実施形態]
<システムの外観と構成>
図1は、本実施形態で説明する情報処理装置100を設置したテーブルトップシステムの外観の一例を示している。情報処理装置100は、プロジェクタの投影光照射部105から投影光を照射することにより、テーブル上や壁面など、任意の平面を対象面として設定できる。図1に示すテーブルトップシステムの場合は、情報処理装置100をテーブル面101上に設置し、テーブル面上に表示画像を投影する。ここで画像102は、プロジェクタによってテーブル面上に投影されたUI部品の1つである。以下では、プロジェクタによってテーブル面上に投影されるUI部品や写真などの各種画像など全てを総称して表示アイテムという。
[First Embodiment]
<Appearance and configuration of system>
FIG. 1 shows an example of the appearance of a table top system in which an information processing apparatus 100 described in this embodiment is installed. The information processing apparatus 100 can set an arbitrary plane such as a table or a wall surface as a target surface by irradiating the projection light from the projection light irradiation unit 105 of the projector. In the case of the table top system shown in FIG. 1, the information processing apparatus 100 is installed on the table surface 101, and a display image is projected on the table surface. Here, the image 102 is one of UI parts projected on the table surface by the projector. In the following, all of the UI parts and various images such as photographs projected on the table surface by the projector are collectively referred to as display items.

また、受光部106は、赤外パターン投影方式(あるいはTime-of-Flight方式でもよい)の距離画像センサ115が得る距離画像の視点を示す。一例として図1のシステムの場合は、発光部107から照射された赤外光が、被写体表面で反射した反射光を受光部106で受光し、撮像する。本実施形態では、受光部106は、対象面に対して上方から見下ろす画角で撮像する位置に設置される。従って、距離画像センサ115によって得られた距離画像の各画素には、受光部106から被写体表面までの距離が反映される。なお、距離画像の取得方法は、一例として環境光やテーブル面の表示の影響が小さい赤外パターン投影方式を基に説明するが、用途に応じて視差方式や赤外光反射時間方式などを利用することも可能である。操作領域104は、本実施形態において、ユーザの操作を認識可能な範囲を表す。また操作領域104は、プロジェクタによる投影が可能な範囲、及び距離画像センサ115の視野範囲と一致する。   The light receiving unit 106 indicates the viewpoint of the distance image obtained by the distance image sensor 115 of the infrared pattern projection method (or the time-of-flight method). As an example, in the case of the system of FIG. 1, the infrared light emitted from the light emitting unit 107 receives reflected light reflected by the subject surface by the light receiving unit 106 and images it. In the present embodiment, the light receiving unit 106 is installed at a position for imaging at an angle of view looking down from above on the target surface. Accordingly, the distance from the light receiving unit 106 to the subject surface is reflected in each pixel of the distance image obtained by the distance image sensor 115. The distance image acquisition method will be described based on an infrared pattern projection method that is less affected by ambient light and table surface display as an example, but a parallax method or an infrared light reflection time method is used depending on the application. It is also possible to do. The operation area 104 represents a range in which a user operation can be recognized in the present embodiment. In addition, the operation area 104 matches the range in which the projector can project and the visual field range of the distance image sensor 115.

なお、対象面101を上方から見た画像が得られる構成であれば、必ずしも発光部107及び受光部106は上方に設置されている必要はない。例えばミラーを用いて反射光を撮像するように構成しても構わない。同様に投影光照射部105も、図1の例では、斜め上方から見下ろすように対象面101上への投影を行うが、図示されたものとは異なる方向に向けて投影された投影光を、ミラーなどを利用して対象面101に導いてもよい。本実施形態を、対象面101が鉛直方向に沿って設置されたシステムで利用される距離画像センサやプロジェクタに適用する場合でも、同様にミラーを含む光学系を利用可能である。   Note that the light emitting unit 107 and the light receiving unit 106 do not necessarily have to be installed above as long as an image obtained by viewing the target surface 101 from above is obtained. For example, you may comprise so that reflected light may be imaged using a mirror. Similarly, in the example of FIG. 1, the projection light irradiation unit 105 also projects onto the target surface 101 so as to look down from obliquely above. However, the projection light projected in a direction different from that shown in FIG. You may guide to the object surface 101 using a mirror etc. Even when this embodiment is applied to a distance image sensor or projector used in a system in which the target surface 101 is installed along the vertical direction, an optical system including a mirror can be used in the same manner.

本実施形態では、ユーザが手103aや手103bなどに示すように、複数の方向から手を、操作領域104上の操作空間(対象面101に設定された操作領域104表面と距離画像センサ115の受光部106の間の空間)に挿入可能である。ユーザが手を使って、テーブルトップシステムに対して、表示アイテムを操作対象とするジェスチャ操作を入力する場合の情報処理装置100の動作について述べる。ただし、本実施形態は、表示アイテムがテーブル面101に投影される場合だけでなく、例えばホワイトボードや任意の壁面に投影光が照射される場合や、投影面が平面でない場合であっても適用可能である。   In the present embodiment, as shown by the hand 103a, the hand 103b, etc., the user moves his / her hands from a plurality of directions in the operation space on the operation area 104 (the surface of the operation area 104 set on the target surface 101 and the distance image sensor 115. It can be inserted into the space between the light receiving portions 106. An operation of the information processing apparatus 100 when the user inputs a gesture operation with a display item as an operation target to the table top system by using a hand will be described. However, this embodiment is applicable not only when the display item is projected on the table surface 101 but also when the projection light is irradiated on a whiteboard or an arbitrary wall surface, or when the projection surface is not a flat surface. Is possible.

本実施形態では、図1に示されるように操作領域104に対して平行な二次元平面にx軸とy軸、操作領域104に直交する高さ方向にz軸を設定し三次元位置情報を座標値として扱う。ただし、対象面が平面でない場合やユーザと対象面との位置関係によっては、必ずしも対象面に平行あるいは直交の関係の座標軸ではなくてもよい。その場合も、z軸は認識対象と対象面との近接の程度(両者の間の距離の大きさの程度)を検出するため対象面と交差する方向に設定され、x軸とy軸はz軸と交わる方向に設定される。本実施形態では、入力された距離画像の各画素値に対して、受光部106のレンズ特性および対象面101との相対位置関係に基づく座標変換を施す。本実施形態において取得される距離画像の各画素には、受光部106から被写体表面までの距離の大きさに対応する値が、画素値として保持されている。従って、座標変換により、距離画像内での各画素の座標がテーブルに定義された実世界上の座標系にマッピングされ、x、y、z座標の値を得ることができる。   In the present embodiment, as shown in FIG. 1, the x-axis and y-axis are set on a two-dimensional plane parallel to the operation area 104, and the z-axis is set in the height direction orthogonal to the operation area 104, thereby obtaining three-dimensional position information Treat as coordinate values. However, when the target surface is not a flat surface or depending on the positional relationship between the user and the target surface, the coordinate axis may not necessarily be parallel or orthogonal to the target surface. In this case as well, the z axis is set in a direction intersecting the target surface in order to detect the degree of proximity between the recognition target and the target surface (the degree of the distance between the two), and the x axis and the y axis are z. Set to the direction intersecting the axis. In the present embodiment, coordinate conversion based on the lens characteristics of the light receiving unit 106 and the relative positional relationship with the target surface 101 is performed on each pixel value of the input distance image. In each pixel of the distance image acquired in the present embodiment, a value corresponding to the magnitude of the distance from the light receiving unit 106 to the subject surface is held as a pixel value. Therefore, by coordinate conversion, the coordinates of each pixel in the distance image are mapped to the real-world coordinate system defined in the table, and the values of the x, y, and z coordinates can be obtained.

なお、本実施形態では、ユーザの指先がタッチ対象面に触れたか否かを判定するために検出する、指先とタッチ対象面の近接の程度は、距離画像の画素値に基づいて得られる距離情報を例に説明する。ただし、指先とタッチ対象面の近接の程度として利用可能な情報はこれに限らない。例えば、操作体がタッチ対象面に近接することによって生じる静電容量の変化量や、温度や圧力、接触面積の変化量の情報であってもよい。   In this embodiment, the degree of proximity between the fingertip and the touch target surface that is detected to determine whether or not the user's fingertip has touched the touch target surface is distance information obtained based on the pixel value of the distance image. Will be described as an example. However, information that can be used as the degree of proximity between the fingertip and the touch target surface is not limited thereto. For example, it may be information on the amount of change in capacitance caused by the operating body approaching the touch target surface, or information on the amount of change in temperature, pressure, or contact area.

図2(A)は、本実施形態における情報処理装置100のハードウェア構成の一例を示すブロック図である。同図において、CPU110は、バス113を介して接続する各デバイスを統括的に制御する。オペレーティングシステム(OS)をはじめ、後述するフローチャートに示されるような本発明に係る各処理プログラム、デバイスドライバ等はROM112に記憶されており、RAM111に一時記憶され、CPU110によって適宜実行される。RAM111は、高速にアクセス可能なCPU110の主メモリ、ワークエリア等の一時記憶領域として用いられる。ここでOSおよび各処理プログラム等は外部の記憶装置116に記憶されていてもよく、その場合は電源投入時に必要な情報がRAM111に適宜読み込まれる。また、ディスプレイI/F117は、情報処理装置100内部で生成される表示アイテム(表示画像)をプロジェクタ118が処理可能な信号に変換する。入出力I/F114は、距離画像センサ115から距離情報を取得し、情報処理装置100が処理可能な情報に変換するとともに、記憶装置116と情報処理装置100間で相互にデータの変換を行う。   FIG. 2A is a block diagram illustrating an example of a hardware configuration of the information processing apparatus 100 according to the present embodiment. In the figure, a CPU 110 comprehensively controls each device connected via a bus 113. In addition to the operating system (OS), each processing program, device driver, and the like according to the present invention as shown in the flowcharts described later are stored in the ROM 112, temporarily stored in the RAM 111, and appropriately executed by the CPU 110. The RAM 111 is used as a temporary storage area such as a main memory or work area of the CPU 110 that can be accessed at high speed. Here, the OS, each processing program, and the like may be stored in the external storage device 116, and in this case, information necessary when the power is turned on is appropriately read into the RAM 111. The display I / F 117 converts a display item (display image) generated inside the information processing apparatus 100 into a signal that can be processed by the projector 118. The input / output I / F 114 acquires distance information from the distance image sensor 115, converts it into information that can be processed by the information processing apparatus 100, and converts data between the storage device 116 and the information processing apparatus 100.

本実施形態では、情報処理装置100で投影するデジタルデータは記憶装置116に格納されているものとする。記憶装置116としては、ディスクデバイスやフラッシュメモリ、ネットワークやUSBなどの各種の入出力I/F114を介して接続される記憶装置116を使用する。本実施形態において、距離画像センサ115は、操作領域104上の情報を取得するために用いられる撮像部である。距離画像センサ115によって取得された画像は入力画像としてRAM111で一時保存され、CPU110によって適宜処理され、破棄されるが、適宜必要なデータは記憶装置116に蓄積しても構わない。   In the present embodiment, it is assumed that the digital data projected by the information processing apparatus 100 is stored in the storage device 116. As the storage device 116, a storage device 116 connected via various input / output I / Fs 114 such as a disk device, a flash memory, a network, and a USB is used. In the present embodiment, the distance image sensor 115 is an imaging unit used to acquire information on the operation area 104. The image acquired by the distance image sensor 115 is temporarily stored in the RAM 111 as an input image, and is appropriately processed and discarded by the CPU 110. However, necessary data may be stored in the storage device 116.

なお図2(A)の例では、距離画像センサ115、プロジェクタ118はそれぞれ情報処理装置100に一体化したデバイスである。しかしながら、入出力用のインタフェースを介して接続された外部装置であり、情報処理装置100と協働して情報処理システムを構成するようにしてもよい。また、さらに操作領域104内に載置されたドキュメントや立体物の可視光画像を撮像する可視光カメラ等を加えて、書画カメラとしての機能を有するシステムとして構成することもできる。   In the example of FIG. 2A, the distance image sensor 115 and the projector 118 are devices integrated with the information processing apparatus 100, respectively. However, it may be an external device connected via an input / output interface, and the information processing system may be configured in cooperation with the information processing device 100. Further, a visible light camera that captures a visible light image of a document or a three-dimensional object placed in the operation area 104 may be added to constitute a system having a function as a document camera.

図2(B)は、本実施形態における情報処理装置100の機能構成の一例を示すブロック図である。情報処理装置100は、少なくとも画像取得部120、領域検出部121、位置検出部122、特定部123、条件決定部124、識別部125、認識部126から構成される。これらの各機能部は、CPU110が、ROM112に格納されたプログラムをRAM111に展開し、後述する各フローチャートに従った処理を実行することで実現されている。また例えば、CPU110を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。また保持部126は、ROM112あるいは、記憶装置116のいずれかに対応する機能部であり、後述する連動指先補正に用いるルックアップテーブルや、プロジェクタ118に出力される画像の基となる画像データ等を保持する。   FIG. 2B is a block diagram illustrating an example of a functional configuration of the information processing apparatus 100 according to the present embodiment. The information processing apparatus 100 includes at least an image acquisition unit 120, a region detection unit 121, a position detection unit 122, a specification unit 123, a condition determination unit 124, an identification unit 125, and a recognition unit 126. Each of these functional units is realized by the CPU 110 developing a program stored in the ROM 112 in the RAM 111 and executing processing according to each flowchart described later. Further, for example, when hardware is configured as an alternative to software processing using the CPU 110, arithmetic units and circuits corresponding to the processing of each functional unit described here may be configured. The holding unit 126 is a functional unit corresponding to either the ROM 112 or the storage device 116, and stores a look-up table used for linked fingertip correction, which will be described later, image data that is a basis of an image output to the projector 118, and the like. Hold.

画像取得部120は、距離画像センサ115によって撮像された距離画像を、入力画像として一定時間毎に取得し、RAM111に随時保持する。なお画像取得部120が取得し、各機能部とやりとりする対象は、実際には画像データに対応する信号であるが、本明細書では単に「距離画像を取得する」あるいは「入力画像を取得する」として説明する。   The image acquisition unit 120 acquires a distance image captured by the distance image sensor 115 as an input image at regular intervals, and stores the acquired distance image in the RAM 111 as needed. The object acquired by the image acquisition unit 120 and exchanged with each functional unit is actually a signal corresponding to the image data, but in this specification, simply “acquire a distance image” or “acquire an input image”. ".

領域検出部121は、画像取得部120によって取得された入力画像の各画素について、閾値判定やノイズ低減処理を施し、距離画像から1以上の手領域を抽出する。手領域とは、入力された距離画像のうち、操作体としてユーザが利用する手が写っている領域である。本実施形態の場合は距離画像の画素値によって、対象面101よりも高い位置に存在することが示される被写体が写る領域で、かつ、画像端に接している領域を手領域として抽出する。   The region detection unit 121 performs threshold determination and noise reduction processing on each pixel of the input image acquired by the image acquisition unit 120, and extracts one or more hand regions from the distance image. The hand region is a region in which the hand used by the user as an operation tool is shown in the input distance image. In the case of the present embodiment, an area in which a subject that is indicated to be present at a position higher than the target surface 101 is captured by the pixel value of the distance image and an area in contact with the image edge is extracted as a hand area.

位置検出部122は、領域検出部121によって抽出された手領域の輪郭の情報に基づき、ユーザの手の1以上の指を検出し、その先端とみなした1点の3次元位置を表す座標値を、指先の位置情報として取得する。本実施形態で入力画像として扱う距離画像の場合、指先に相当する画素の画素値は、ユーザの指先の上面で反射された赤外光の輝度値に相当する。この輝度値は、発光部107から照射された赤外光の反射光強度を表すため、強度が強いほど距離画像センサ115からユーザの指の上面までの距離が近く、強度が弱いほど距離画像センサ115から指までの距離が離れているとみなせる。このように本実施形態の場合は、距離画像の中で特定された指先位置の画素値が、距離画像センサ115と指先の距離を反映した距離情報として扱われる。そのため情報処理装置100は、操作空間内での指先位置の位置情報(画像内の画素を示す位置情報)及び画素値に対し、所定のキャリブレーションパラメータを反映させて、図1に示されている(x、y、z)座標に変換し、指先の3次元位置として取得する。指先のz方向の座標値は「指先高さ」ともいう。本実施形態では指先高さの尺度として三次元空間上のユークリッド距離(mm)を用いるが、別の距離尺度を用いてもよい。   The position detection unit 122 detects one or more fingers of the user's hand based on the contour information of the hand region extracted by the region detection unit 121, and represents a coordinate value representing a three-dimensional position of one point regarded as the tip of the finger Is acquired as position information of the fingertip. In the case of a distance image handled as an input image in the present embodiment, the pixel value of the pixel corresponding to the fingertip corresponds to the luminance value of infrared light reflected by the upper surface of the user's fingertip. Since this luminance value represents the reflected light intensity of infrared light emitted from the light emitting unit 107, the stronger the intensity, the closer the distance from the distance image sensor 115 to the upper surface of the user's finger, and the weaker the intensity, the distance image sensor. It can be considered that the distance from 115 to the finger is long. As described above, in the present embodiment, the pixel value of the fingertip position specified in the distance image is handled as distance information reflecting the distance between the distance image sensor 115 and the fingertip. Therefore, the information processing apparatus 100 is illustrated in FIG. 1 by reflecting predetermined calibration parameters on the position information (position information indicating the pixels in the image) and the pixel value of the fingertip position in the operation space. It is converted into (x, y, z) coordinates and acquired as a three-dimensional position of the fingertip. The coordinate value of the fingertip in the z direction is also referred to as “fingertip height”. In this embodiment, the Euclidean distance (mm) in the three-dimensional space is used as a measure of the fingertip height, but another distance measure may be used.

特定部123は、位置検出部122が検出した指先が複数であった場合、複数の指先のそれぞれの位置情報の相対的な関係に基づいて、タッチ操作の入力に用いられるとみなされる指を特定する。本実施形態では、最もタッチ操作の入力に用いられる可能性が高いとみなされる指先を1つ特定した上で、特定された指先に対する相対的な関係に基づいて、他の指先を、タッチ操作の入力に用いられる指とみなすか判定する条件を決定する。そして決定された条件を使って、他の指を絞り込むことにより、全体からタッチ操作の入力に用いられるとみなされる指を特定する。特定された指先は、後述する認識部126によって行われる、タッチ対象面にタッチしたかを判定する処理の対象となる。   When there are a plurality of fingertips detected by the position detection unit 122, the specifying unit 123 specifies a finger that is considered to be used for input of the touch operation based on the relative relationship between the position information of each of the plurality of fingertips. To do. In this embodiment, after identifying one fingertip that is considered to be most likely to be used for input of the touch operation, another fingertip is connected to the touch operation based on the relative relationship with the specified fingertip. A condition for determining whether the finger is used for input is determined. Then, by narrowing down the other fingers using the determined condition, the finger that is considered to be used for the input of the touch operation is specified from the whole. The identified fingertip is a target of processing for determining whether or not the touch target surface is touched, which is performed by the recognition unit 126 described later.

条件決定部124は、位置検出部122が検出した指先それぞれの指先に対して対象面であるテーブル101にタッチしたかを判定するための条件を決定する。また本実施形態では、条件決定部124はさらに、テーブル101から指先が意図的に離された、つまりはタッチ入力が終了されたことを判定するための条件を決定する。本実施形態では、タッチ対象面と指先の間の距離がと閾値の比較によって、タッチを検出する。従って条件決定部124は、上記の条件として閾値の大きさを決定する。   The condition determination unit 124 determines a condition for determining whether the fingertip of each fingertip detected by the position detection unit 122 has touched the table 101 that is the target surface. In the present embodiment, the condition determining unit 124 further determines a condition for determining that the fingertip is intentionally released from the table 101, that is, the touch input is ended. In this embodiment, the touch is detected by comparing the distance between the touch target surface and the fingertip with a threshold value. Accordingly, the condition determining unit 124 determines the size of the threshold as the above condition.

識別部125は、検出された指先の幾何学的な位置関係に基づいて、腕の左右を識別する。例えば、指先が5つ検出され、侵入位置から見て、最も左側にある指先の座標が、他のどの指先よりも侵入位置の座標に近い場合には、最も短い指(親指)が左側に位置することになるので、その腕領域は右手に相当すると認識される。ただし、腕の左右の認識方法はこれに限られず、腕形状のパターンを学習したSVM(Support Vector Machine)を用いる等してもよい。さらに識別部125は、腕の左右の識別結果と指先の幾何学的な位置関係に基づいて、検出された複数の指先の種類を識別する。例えば、右手の指先が5つ検出された場合には、侵入位置から見て、時計回りに、小指、薬指、中指、人差し指、親指であると識別する。   The identification unit 125 identifies the left and right sides of the arm based on the detected geometric positional relationship of the fingertips. For example, when five fingertips are detected and the coordinates of the leftmost fingertip are closer to the coordinates of the intrusion position than any other fingertip as viewed from the intrusion position, the shortest finger (thumb) is located on the left side Therefore, it is recognized that the arm region corresponds to the right hand. However, the left / right recognition method of the arm is not limited to this, and an SVM (Support Vector Machine) in which an arm-shaped pattern is learned may be used. Further, the identification unit 125 identifies the types of the plurality of detected fingertips based on the identification results of the left and right arms and the geometric positional relationship of the fingertips. For example, when five fingertips of the right hand are detected, it is identified as a little finger, a ring finger, a middle finger, an index finger, and a thumb clockwise from the intrusion position.

認識部126は、位置検出部122が検出したユーザの各指先の位置情報と、条件決定部124が決定した条件を使って、指先が前記所定の対象面にタッチしたことを認識する。本実施形態では、認識部126が認識可能なタッチ操作にはシングルタッチ操作とマルチタッチ操作が含まれる。認識部126がタッチを認識する処理の具体的な内容は図3を参照して後述する。   The recognition unit 126 recognizes that the fingertip has touched the predetermined target surface using the position information of each fingertip of the user detected by the position detection unit 122 and the condition determined by the condition determination unit 124. In the present embodiment, touch operations that can be recognized by the recognition unit 126 include a single touch operation and a multi-touch operation. Specific contents of the process of recognizing the touch by the recognition unit 126 will be described later with reference to FIG.

出力制御部127は、ROM112や記憶装置116に記憶された情報を用いて、本実施形態の表示部であるプロジェクタ118によって、テーブル101上に投影させる画像を生成する。例えば、マルチタッチ操作の認識結果に基づいて、表示中の画像の少なくとも一部に対して、拡大/縮小、回転などの変形を施し、表示部に出力させる。出力された画像は、プロジェクタ118によって、対象面であるテーブル101上に投影される。投影される画像は、複数の表示アイテムを含み、アイテム毎に移動や拡大/縮小、回転が可能であってもよく、画像全体が移動や拡大/縮小、回転の対象であってもよい。   The output control unit 127 uses the information stored in the ROM 112 and the storage device 116 to generate an image to be projected on the table 101 by the projector 118 that is the display unit of the present embodiment. For example, based on the recognition result of the multi-touch operation, at least a part of the displayed image is subjected to deformation such as enlargement / reduction and rotation, and is output to the display unit. The output image is projected onto the table 101 that is the target surface by the projector 118. The projected image may include a plurality of display items, and may be moved, enlarged / reduced, and rotated for each item, or the entire image may be a target of movement, enlargement / reduction, and rotation.

この他、手ぶり等の空間ジェスチャ動作を認識するジェスチャ認識部、プロジェクタ118に出力される画像を制御する表示制御部等、情報処理装置100の使用目的やアプリケーションに応じた機能部を構成することができる。なお上述した各機能部は、RAM111を、本実施形態に係る処理で利用される情報を一時的に保持する保持部として利用する。ただし、保持部はROM112、記憶装置116等の一部であっても構わない。   In addition, a function recognition unit that configures a function unit according to the purpose of use or application of the information processing apparatus 100, such as a gesture recognition unit that recognizes a spatial gesture operation such as a hand gesture, a display control unit that controls an image output to the projector 118, or the like. Can do. Each functional unit described above uses the RAM 111 as a holding unit that temporarily holds information used in the processing according to the present embodiment. However, the holding unit may be a part of the ROM 112, the storage device 116, or the like.

以下、ユーザが操作の入力に用いる操作体及びその先端の一例として、ユーザの手103a、b及びその指を挙げて第1の実施形態を説明していく。ただし、本実施形態では操作体として、生身の手指に限らず、義手やロボットアームなどを利用し、指に相当する部位を識別する必要がある場合にも適用可能である。   Hereinafter, the first embodiment will be described using the user's hands 103a and 103b and their fingers as an example of an operation body used for input of an operation by the user and its tip. However, in the present embodiment, the operation body is not limited to a live finger, but can also be applied to a case where a part corresponding to a finger needs to be identified using a prosthetic hand or a robot arm.

<タッチの認識処理>
ここで、認識部126が実行するタッチ認識処理の概要を説明する。認識部126は、検出された各指先について、次の二つの状態を検出する。一つはタッチ状態である。タッチ状態は、指先が指先の指先高さがタッチ閾値を下回っている場合であって、指先と対象面がタッチしているとみなされる程度に十分近接している状態である。十分近接しているか否かを判定するための条件は、条件決定部124によって指毎に決定される。もう一つの状態は非タッチ状態である。非タッチ状態は、ユーザが意図的に指先を対象面から離している状態であり、指先高さがリリース閾値を上回っている場合に認識される。本実施形態では、リリース閾値もまた、条件決定部124によって指毎に決定される。
<Touch recognition process>
Here, an outline of the touch recognition process executed by the recognition unit 126 will be described. The recognition unit 126 detects the following two states for each detected fingertip. One is a touch state. The touch state is a state where the fingertip height of the fingertip is below the touch threshold and is sufficiently close to the extent that the fingertip and the target surface are considered to be touching. A condition for determining whether or not they are close enough is determined for each finger by the condition determination unit 124. Another state is a non-touch state. The non-touch state is a state in which the user intentionally moves the fingertip away from the target surface, and is recognized when the fingertip height exceeds the release threshold. In the present embodiment, the release threshold is also determined for each finger by the condition determination unit 124.

本実施形態では、タッチ閾値とリリース閾値としては、それぞれ異なる値が用いられ、特に、タッチ閾値よりリリース閾値が大きい値である。これは、指先を近接させる時と離す時とで指先の動き方が異なることや、センサに検出誤差が発生することを踏まえた上で、タッチ状態の間は対象面から指先が十分に離れるまでリリースが検出されないようにするための工夫である。これにより、検出誤差や指先のぶれにより、タッチ操作の継続中に誤ってリリースが検出されてしまうという誤認識が低減される。ただし、タッチ閾値とリリース閾値の差分は、センサの検出精度や装置の設置環境に応じて調節されればよく、両者は一致しても構わない。また、多くの場合、タッチ閾値とリリース閾値の大きさは、指の厚みに対して十分に大きく設定される。これは、距離画像センサから得られる距離情報にノイズがある場合でもロバストなタッチ認識を可能にするためである。ただしこの点も、センサの検出精度や装置の設置環境に応じて調節されればよい。   In the present embodiment, different values are used as the touch threshold and the release threshold, and in particular, the release threshold is larger than the touch threshold. This is based on the fact that the movement of the fingertip differs between when the fingertip is brought close to and away from the fingertip, and detection errors occur in the sensor, until the fingertip is sufficiently separated from the target surface during the touch state. This is a device to prevent the release from being detected. As a result, erroneous recognition that a release is erroneously detected during the continuation of the touch operation due to detection error or fingertip shake is reduced. However, the difference between the touch threshold value and the release threshold value may be adjusted according to the detection accuracy of the sensor and the installation environment of the device, and they may be the same. In many cases, the size of the touch threshold and the release threshold is set sufficiently large with respect to the thickness of the finger. This is to enable robust touch recognition even when there is noise in the distance information obtained from the distance image sensor. However, this point may also be adjusted according to the detection accuracy of the sensor and the installation environment of the apparatus.

以降、本実施形態において「タッチの認識」とは、指先がタッチ閾値より小さいか、あるいは指先がリリース閾値より大きくなったかを判定することにより、指先の状態を判定することをいう。それに対し、「タッチ操作の認識」とは、タッチ状態での指先の位置や移動軌跡が辞書に記憶された各種コマンドに対応するものであった場合に、情報処理装置100に入力された指示として解釈することをいう。本実施形態においてタッチ操作という語は、指先高さの変動によって、タッチ状態および非タッチ状態の相互の遷移が発生する、指先による操作一般を指す。特に、シングルタッチ操作という語は、1つの指先によるタッチ操作一般を指す。本実施形態ではシングルタッチ操作の一例としてタップ操作を挙げて説明する。タップ操作とは、一般的に、対象面上のある位置をタッチした後、スライド移動させることなく所定時間内にリリースする操作を指し、主に対象面上のアイテムを選択する場合に利用される。シングルタッチ操作に対し、マルチタッチ操作という語は、複数の指先によって1つの指示が入力されるタッチ操作一般を指す。本実施形態では、マルチタッチ操作の例として、2箇所のタッチ位置の間隔を広げたり狭めたりすることによって表示画像の拡大縮小を指示するピンチ操作と、2箇所のタッチ位置を相対的に回転させることによって表示画像の回転を指示する回転操作を挙げる。   Hereinafter, “touch recognition” in the present embodiment refers to determining the state of the fingertip by determining whether the fingertip is smaller than the touch threshold or whether the fingertip is larger than the release threshold. On the other hand, “recognition of touch operation” is an instruction input to the information processing apparatus 100 when the position of the fingertip or the movement locus in the touch state corresponds to various commands stored in the dictionary. Interpretation. In the present embodiment, the term touch operation refers to a general operation with a fingertip in which a transition between a touch state and a non-touch state occurs due to a change in fingertip height. In particular, the term “single touch operation” refers to a general touch operation with one fingertip. In the present embodiment, a tap operation will be described as an example of a single touch operation. The tap operation generally refers to an operation of releasing within a predetermined time without touching a certain position on the target surface, and is mainly used when selecting an item on the target surface. . In contrast to the single touch operation, the term multi-touch operation refers to a general touch operation in which one instruction is input by a plurality of fingertips. In the present embodiment, as an example of the multi-touch operation, a pinch operation instructing enlargement / reduction of the display image by widening or narrowing the interval between the two touch positions and the two touch positions are relatively rotated. Thus, a rotation operation for instructing rotation of the display image is given.

本実施形態では、認識部126は、指先が非タッチ状態からタッチ状態に遷移した場合、TOUCHイベントをアプリケーションに通知する。また、タッチ状態から非タッチ状態に遷移した場合は、RELEASEイベントを発行する。以後、認識部126が、後に続く処理のトリガーとなるイベントを出力制御部127やアプリケーションに通知することを、「イベントを発行する」と表現する。イベント情報は、どの指先が、どの位置で状態遷移を行ったかという情報とともに通知される。通知を受けたアプリケーションは出力制御部127に対し、イベント情報と指先の情報及びUI部品の情報に基づいて、投影される画像を更新させる。   In the present embodiment, the recognition unit 126 notifies the application of a TOUCH event when the fingertip transitions from the non-touch state to the touch state. When the touch state is changed to the non-touch state, a RELEASE event is issued. Hereinafter, the event that the recognition unit 126 notifies the output control unit 127 and the application of an event that triggers subsequent processing is expressed as “issue an event”. The event information is notified together with information indicating which fingertip has made a state transition at which position. Upon receiving the notification, the application causes the output control unit 127 to update the projected image based on the event information, the fingertip information, and the UI component information.

ここで図3(A)〜(C)を用いて、タッチに伴う指先高さの変動、上述した指先の状態遷移、イベントの発行について具体的に説明する。図3(A)に指202の指先203のタッチを行う前の様子を示す。指先高さ204はリリース閾値201を上回っているため、指先203は非タッチ状態であると認識される。状態遷移が発生していないため、イベントは発行されない。図3(B)は、指先が対象面(Z=0の面)をタッチした瞬間の様子である。指先高さ205はタッチ閾値200を下回っているため、指先203はタッチ状態であると認識される。非タッチ状態からタッチ状態へと指先203の状態が遷移したため、TOUCHイベントが発行される。図3(C)はタッチしてすぐに(タップ操作に定義された閾値時間の間に)、指先が対象面から離された様子を表す。指先高さ206はリリース閾値201を上回っているので、指先203は非タッチ状態であると認識される。タッチ状態から非タッチ状態への指先203の状態が遷移したことで、RELEASEイベントが発行される。このとき、タッチ状態から非タッチ状態へと遷移するまでの時間がタップ時間閾値以内、かつタッチ状態になった瞬間のxy座標と非タッチ状態になった瞬間のxy座標のずれがタップずれ閾値以内であったとする。タップ操作が認識される条件が満たされたことで、タップ操作が入力されたことを示すTAPイベントが発行される。   Here, with reference to FIGS. 3A to 3C, the fingertip height variation accompanying the touch, the above-described fingertip state transition, and event issuance will be specifically described. FIG. 3A shows a state before the fingertip 203 of the finger 202 is touched. Since the fingertip height 204 exceeds the release threshold 201, the fingertip 203 is recognized as being in a non-touch state. Since no state transition has occurred, no event is issued. FIG. 3B shows a state at the moment when the fingertip touches the target surface (surface of Z = 0). Since the fingertip height 205 is below the touch threshold value 200, the fingertip 203 is recognized as being in a touch state. Since the state of the fingertip 203 has transitioned from the non-touch state to the touch state, a TOUCH event is issued. FIG. 3C shows a state in which the fingertip is released from the target surface immediately after touching (during the threshold time defined for the tap operation). Since the fingertip height 206 exceeds the release threshold 201, the fingertip 203 is recognized as being in a non-touch state. A RELEASE event is issued when the state of the fingertip 203 transitions from the touch state to the non-touch state. At this time, the time until the transition from the touch state to the non-touch state is within the tap time threshold, and the deviation between the xy coordinates at the moment when the touch state is reached and the xy coordinates at the moment when the touch state is not within the tap deviation threshold. Suppose that When the condition for recognizing the tap operation is satisfied, a TAP event indicating that the tap operation has been input is issued.

認識部126におけるタッチ認識処理は、大きく分けてシングルタッチ認識処理とマルチタッチ認識処理に分かれている。シングルタッチ認識処理はある1つの指先のタッチ状態であるか非タッチ状態であるかの認識を行い、TOUCHイベント、RELEASEイベント、TAPイベントを発行する。マルチタッチ認識処理では、前段階として実行されるシングルタッチ認識処理の結果と、各指先の位置関係に基づいてタッチ状態にある複数の指先のペアリングが行われる。そして、ペアリングされた指先の位置の変化によってピンチ操作およびローテート操作が認識され、それらが入力されたことを表すPINCHイベントおよびROTATEイベントが発行される。   The touch recognition process in the recognition unit 126 is roughly divided into a single touch recognition process and a multi-touch recognition process. The single touch recognition process recognizes whether one fingertip is touched or not touched, and issues a TOUCH event, a RELEASE event, and a TAP event. In the multi-touch recognition process, pairing of a plurality of fingertips in a touch state is performed based on the result of the single-touch recognition process executed as the previous stage and the positional relationship between the fingertips. Then, a pinch operation and a rotate operation are recognized by a change in the position of the paired fingertips, and a PINCH event and a ROTATE event indicating that they are input are issued.

本実施形態は、上述したようなタッチ認識において、ユーザが操作に用いる意図を持って対象面に近づけた指に連動して、操作に用いられない指が動いた結果タッチ閾値よりも低い高さで指先がされてしまい、タッチが誤検出されることを課題として認識する。そこで、本実施形態では、複数の指先を検出した場合、操作に用いられる可能性が高いとみなされる指を絞り込み、絞り込まれた指を対象にタッチの認識を行う。言い換えると、操作に用いられない指であるにも関わらず他の指に連動して対象面に近づいてしまった指を、タッチ認識処理の対象としないことで、タッチの誤認識を低減する。   In this embodiment, in the touch recognition as described above, the height lower than the touch threshold as a result of the finger that is not used for the operation being moved in conjunction with the finger that is intended to be used for the operation and that is close to the target surface. It is recognized as a problem that the fingertip has been touched and touch is erroneously detected. Therefore, in the present embodiment, when a plurality of fingertips are detected, the fingers that are considered to be highly likely to be used for the operation are narrowed down, and touch recognition is performed on the narrowed fingers. In other words, erroneous recognition of a touch is reduced by not setting a finger that is close to the target surface in conjunction with another finger despite being a finger that is not used for an operation as a target of the touch recognition process.

<タッチ操作認識処理の流れ>
図8のフローチャートを参照して、本実施形態のメイン処理となるタッチ操作の認識処理の流れを説明する。本実施形態では、図8のフローチャートの処理は、距離画像センサ115から距離画像が入力される毎に周期的に繰り返される。従って処理が繰り返される周期は、距離画像センサ115の撮像映像のフレームレートに一致する。
<Flow of touch operation recognition processing>
With reference to the flowchart of FIG. 8, the flow of the recognition process of the touch operation which is the main process of this embodiment will be described. In the present embodiment, the process of the flowchart of FIG. 8 is periodically repeated every time a distance image is input from the distance image sensor 115. Therefore, the cycle in which the process is repeated matches the frame rate of the captured image of the distance image sensor 115.

ステップS100において、画像取得部120は距離画像センサ115によって撮像された距離画像を、入力画像として一定時間毎に取得し、RAM111に随時保持する。距離画像センサ115によって撮像された距離画像の画素値は距離画像センサ115までの距離を反映している。ステップS101において、領域検出部121は、画像取得部120によって取得された距離画像から人の腕が写る領域(腕領域)を抽出し、その輪郭を示す位置情報を取得し、RAM111にその情報を保持する。   In step S <b> 100, the image acquisition unit 120 acquires the distance image captured by the distance image sensor 115 as an input image at regular intervals, and stores it in the RAM 111 as needed. The pixel value of the distance image captured by the distance image sensor 115 reflects the distance to the distance image sensor 115. In step S <b> 101, the region detection unit 121 extracts a region (arm region) in which a person's arm is captured from the distance image acquired by the image acquisition unit 120, acquires position information indicating the contour, and stores the information in the RAM 111. Hold.

ここで人の「腕」とは、人の肩から指先にかけての部位の全てを指し、撮像画像のうち、人の腕に該当する部分が一部写る領域が、腕領域である。操作体また本実施形態において「手」とは、腕のうち、手首から先の全てを差す。「手」には、5指、掌、甲が含まれる。領域検出部121の実際の処理としては、取得した距離画像の各画素が示すz方向の座標値に対して閾値処理を行うことで、テーブルよりも高さが高い座標値を持つ画素群からなる領域であって、かつ画像端と接触する領域を、腕領域として抽出する。図1において、腕領域は、手103aおよび手103bのうち、操作領域104に侵入している部分(破線で表された操作領域104の境界より内側の部分)が、撮像画像に写った部分に相当する。ただし、腕領域の抽出方法はこれに限られず、例えば別途撮像された操作領域104のRGB画像における肌色領域に対応する部分を抽出する等してもよい。また、本実施形態の領域検出部121は、腕領域が抽出された入力画像に微分フィルタを適用することに基づいて、輪郭線の座標を取得する。さらに、領域検出部121は腕領域と画像端が接触するピクセルの平均位置(以下では、操作領域に対する腕領域の侵入位置と称する)を算出し、これをRAM111に保持する。   Here, the person's “arm” refers to all the parts from the person's shoulder to the fingertip, and an area where a portion corresponding to the person's arm is captured in the captured image is an arm area. In the operating body or in this embodiment, the “hand” refers to all of the arms from the wrist to the tip. “Hand” includes five fingers, palm, and back. As an actual process of the area detection unit 121, the threshold value process is performed on the coordinate value in the z direction indicated by each pixel of the acquired distance image, and thus the pixel group includes a pixel group having a coordinate value higher than the table. A region that is in contact with the edge of the image is extracted as an arm region. In FIG. 1, the arm region is a portion of the hand 103 a and the hand 103 b where the portion that has entered the operation region 104 (the portion inside the boundary of the operation region 104 indicated by a broken line) is reflected in the captured image. Equivalent to. However, the extraction method of the arm region is not limited to this, and for example, a portion corresponding to the skin color region in the RGB image of the operation region 104 separately captured may be extracted. Further, the region detection unit 121 according to the present embodiment acquires the coordinates of the contour line based on applying a differential filter to the input image from which the arm region is extracted. Further, the region detection unit 121 calculates an average position of pixels where the arm region and the image edge are in contact (hereinafter referred to as an arm region intrusion position with respect to the operation region), and stores this in the RAM 111.

ステップS102において、位置検出部122は、取得された腕領域から、1以上の指先位置を検出する。本実施形態では、位置検出部122はまず、手領域の輪郭線が領域の内側になす角度に基づいて指の先端とみなす1画素を特定する。ただし、指の先端の特定方法は輪郭が成す内角を基準とする方法に限られず、例えば輪郭の極値を算出する等してもよい。さらに位置検出部122は検出した指先の画素の位置および画素値の情報から、指先の位置情報として高さを含む3次元位置を取得し、RAM111にその情報を保持する。ステップS103において、識別部125は、検出された指先の幾何学的な位置関係に基づいて、腕の左右と指先の種類を識別する。腕と指先の識別結果はRAM111に保持される。また、種類認識部124は腕と指先のトラッキングを行う。そして現フレームの腕や指先の種類を認識することが困難な場合には、前フレームまでの認識結果を用いて、現フレームの腕と指先の認識情報を補完する。ステップS104において、条件決定部124は、前フレームと現フレームの指先高さの変動から指先の上下移動のスピードを算出する。   In step S102, the position detection unit 122 detects one or more fingertip positions from the acquired arm region. In the present embodiment, the position detection unit 122 first identifies one pixel that is regarded as the tip of the finger based on the angle formed by the contour line of the hand region inside the region. However, the method for specifying the tip of the finger is not limited to the method based on the inner angle formed by the contour, and for example, the extreme value of the contour may be calculated. Further, the position detection unit 122 acquires a three-dimensional position including the height as the fingertip position information from the detected pixel position and pixel value information of the fingertip, and holds the information in the RAM 111. In step S103, the identification unit 125 identifies the left and right sides of the arm and the type of the fingertip based on the detected geometrical positional relationship of the fingertip. The identification result of the arm and fingertip is held in the RAM 111. Further, the type recognition unit 124 performs tracking of the arm and the fingertip. If it is difficult to recognize the type of arm or fingertip of the current frame, the recognition information up to the previous frame is used to supplement the recognition information of the arm and fingertip of the current frame. In step S <b> 104, the condition determination unit 124 calculates the speed of the fingertip's vertical movement from the variation in fingertip height between the previous frame and the current frame.

ステップS105において、条件決定部124は、検出されている各指のタッチ認識条件を決定する。タッチ認識条件とは、指先がタッチ対象面をタッチしたかを判定するための条件である。第1の実施形態の場合、予め設定されているタッチ閾値及びリリース閾値の値をROM112や記憶装置116から読み出すことで、条件として決定する。   In step S <b> 105, the condition determination unit 124 determines a touch recognition condition for each detected finger. The touch recognition condition is a condition for determining whether the fingertip has touched the touch target surface. In the case of the first embodiment, the touch threshold value and the release threshold value that are set in advance are read from the ROM 112 and the storage device 116 to be determined as conditions.

ステップS106において、認識部126は、シングルタッチ認識処理を行う。本実施形態では、シングルタッチ認識処理の中で、ユーザがタッチ操作に用いる可能性が高い指を絞り込んだ上で、タッチ認識を行う。シングルタッチ操作認識処理の詳細は後述する。ステップS107において、認識部126は、マルチタッチ操作処理を行う。本実施形態では、ステップS106の処理でタッチ状態にあると認識された指が、1つの手につき複数存在した場合は、それらをペアリングし、ステップS107において、マルチタッチ操作の認識を行う。ただし、ペアリングされた指先が、マルチタッチ操作としての意味を持つ動作を成していなかった場合は、ステップS107では認識結果を出力せず、それぞれをシングルタッチ操作として認識する場合がある。マルチタッチ操作認識処理の詳細は後述する。ステップS108では、出力制御部127が、ステップS106あるいはステップS107で認識されたタッチ操作に対する応答を出力する。例えば、プロジェクタ118によってテーブル101に投影する画像を生成し、出力する。以上が、本実施形態におけるメインの処理の流れである。   In step S106, the recognition unit 126 performs a single touch recognition process. In the present embodiment, touch recognition is performed after narrowing down the fingers that the user is likely to use for the touch operation in the single touch recognition process. Details of the single touch operation recognition process will be described later. In step S107, the recognition unit 126 performs multi-touch operation processing. In the present embodiment, when there are a plurality of fingers recognized as being in the touched state in the process of step S106 per hand, they are paired, and in step S107, the multi-touch operation is recognized. However, if the paired fingertips do not perform an operation having a meaning as a multi-touch operation, the recognition result may not be output in step S107, and each may be recognized as a single touch operation. Details of the multi-touch operation recognition process will be described later. In step S108, the output control unit 127 outputs a response to the touch operation recognized in step S106 or step S107. For example, an image to be projected onto the table 101 is generated by the projector 118 and output. The above is the main processing flow in this embodiment.

<指先が操作に関わる指とみなされるかの判定>
ここで、本実施形態で実行される指先が操作に関わる指とみなされるかの判定方法について説明する。本実施形態では、ステップS106において実行されるシングルタッチ認識処理の中で、ユーザがタッチ操作に用いる可能性が高い指を絞り込む処理を行う。まずは、図4(A)〜(C)を参照して、本実施形態で実行されるこの絞り込みについて説明する。
<Determining whether the fingertip is regarded as a finger related to the operation>
Here, a method for determining whether the fingertip executed in the present embodiment is regarded as a finger related to the operation will be described. In the present embodiment, in the single touch recognition process executed in step S106, a process of narrowing down fingers that are highly likely to be used by the user for the touch operation is performed. First, with reference to FIGS. 4A to 4C, this narrowing performed in the present embodiment will be described.

図4(A)は、ユーザが右手を、指を曲げたり伸ばしたりする意思を持たずに、自然な姿勢で維持している状態でテーブル面101上に静止させた状態を、y軸方向から見た図である。以下では、このようなユーザの手の自然な状態をニュートラルポジションという。図中の5つの円は指先の位置情報が検出された5つの指先を示している。タッチを認識するためにタッチ閾値と比較される指先の高さは、円の上面かつx軸と平行な接線のz座標である。図4(A)では、中指302が最も指先高さが高く、次いで薬指301や人差し指303の高さが高く、小指300と親指304は最も指先高さが低い。   FIG. 4A shows a state in which the right hand is rested on the table surface 101 in a state where the right hand is maintained in a natural posture without intention to bend or extend a finger from the y-axis direction. FIG. Hereinafter, such a natural state of the user's hand is referred to as a neutral position. The five circles in the figure indicate the five fingertips from which the fingertip position information has been detected. The height of the fingertip compared to the touch threshold to recognize the touch is the z coordinate of the tangent parallel to the top surface of the circle and the x axis. In FIG. 4A, the middle finger 302 has the highest fingertip height, the ring finger 301 and the index finger 303 have the highest height, and the little finger 300 and the thumb 304 have the lowest fingertip height.

次に、ユーザの右手の状態が、ニュートラルポジションから変移し、人差し指303でタッチ対象面(Z=0の面)に対して、タッチを行う場合を考える。まず図4(B)は、全ての指に対して、図3で説明した一定のタッチ閾値200とリリース閾値201を適用してタッチ認識を行う場合を表す。全ての指に一定のタッチ閾値200を適用した場合に、タッチ状態であると認識される指先が、黒塗りされた円で表される。図4(B)の場合、ユーザは人差し指303でタッチをしたつもりであるにも関わらず、小指300と親指304もタッチ閾値を下回る。この場合、人差し指303に加えて、小指300と親指304もタッチ状態であると認識され、各指先ついてTOUCHイベントが発行される。こうした意図しない指先のタッチの誤認識は、意図しない場所のUI部品が反応してしまったり、シングルタッチ操作の入力が意図されているにも関わらず、マルチタッチ操作が認識されたりする原因にもなりえる。   Next, consider a case where the state of the user's right hand changes from the neutral position and the index finger 303 touches the touch target surface (Z = 0 surface). First, FIG. 4B shows a case where touch recognition is performed by applying the constant touch threshold 200 and the release threshold 201 described with reference to FIG. 3 to all fingers. When a certain touch threshold value 200 is applied to all fingers, the fingertip recognized as being in a touch state is represented by a black circle. In the case of FIG. 4B, although the user intends to touch with the index finger 303, the little finger 300 and the thumb 304 are also below the touch threshold. In this case, in addition to the index finger 303, the little finger 300 and the thumb 304 are also recognized as being in a touch state, and a TOUCH event is issued for each fingertip. Such misrecognition of an unintended fingertip touch may cause a UI part in an unintended location to react or cause a multi-touch operation to be recognized even though a single touch operation input is intended. It can be.

ここで図4(C)は、本実施形態によって、指先の相対的な位置関係に基づいて、タッチ閾値200と比較する指先を絞り込み、タッチ対象面にタッチしているかを判定する場合を表す。図4(C)に示す手及び各指先の姿勢は、図4(B)と同一である。本実施形態では、検出されている複数の指先のうち、最も高さが小さい指を特定し、特定された指との相対的な高さを使って、他の指先の中でタッチ閾値200によるタッチ判定処理の対象とする指を絞り込む。本実施形態では、最も高さが小さい指はタッチ操作に用いられる可能性が最も高い指であるとみなすため、その高さを基準とすることで効率の良い絞り込みを行うことができる。図4(C)の場合、検出されている複数の指先の中で、最も高さが小さい指先は、人差し指303であると特定される。例えば、特定された人差指303の高さを、Hminとする。そして、検出されている複数の指先の中で、指先の高さが、絞り込み閾値305を表すHminH(εHは正の定数)を下回るか否かを判定し、絞り込み閾値よりも高さが小さい指先を絞り込む。絞り込み閾値305は、最も高さが小さい指先を基準とする相対的な高さの閾値である。本実施形態では、このように絞り込まれた指先が、ユーザがタッチ操作の入力に用いる意図を持っている指である可能性が高いとみなす。一方で、絞り込み結果に含まれていない指先は、操作の入力に用いることが意図されていない指先であるとみなす。そして本実施形態では、絞り込まれた指先の高さが、タッチ閾値200を下回るか否かに基づいて、実際にタッチ入力が行われているかを判定する。 Here, FIG. 4C illustrates a case where it is determined whether the touch target surface is touched by narrowing down the fingertip to be compared with the touch threshold 200 based on the relative positional relationship of the fingertip according to the present embodiment. The postures of the hand and each fingertip shown in FIG. 4C are the same as those in FIG. In the present embodiment, the finger with the smallest height is identified from among the plurality of detected fingertips, and the relative height with the identified finger is used to determine the touch threshold value 200 among other fingertips. Narrow down the fingers for the touch determination process. In the present embodiment, since the finger with the smallest height is regarded as the finger that is most likely to be used for the touch operation, efficient narrowing down can be performed by using the height as a reference. In the case of FIG. 4C, the fingertip having the smallest height among the plurality of detected fingertips is identified as the index finger 303. For example, the height of the identified index finger 303 is set to H min . Then, it is determined whether or not the height of the fingertip is lower than H min + ε HH is a positive constant) representing the narrowing threshold 305 among the plurality of detected fingertips. Narrow down the fingertips with small height. The narrowing-down threshold 305 is a relative height threshold based on the fingertip having the smallest height. In the present embodiment, it is considered that there is a high possibility that the fingertip narrowed down in this way is a finger that the user intends to use for input of a touch operation. On the other hand, a fingertip that is not included in the narrowing-down result is regarded as a fingertip that is not intended to be used for operation input. In the present embodiment, whether or not the touch input is actually performed is determined based on whether or not the height of the narrowed fingertip is below the touch threshold value 200.

図4(C)の例では、人差し指303の指先高さはHminであり、HminHを下回っているのでタッチ閾値200との比較によるタッチ認識処理の対象となる。そして人差し指303の指先高さHminはタッチ閾値200を下回っているので、人差し指303はタッチ状態であると認識される。人差し指以外の指は指先高さがHminHを上回っているので、タッチ閾値200によるタッチ判定の対象から外れ、タッチ状態であると認識されることはない。このようにして、図4(B)のように誤認識抑制を行わない場合にタッチ状態になってしまう小指300と親指304の誤認識を防ぐことができる。 In the example of FIG. 4 (C), the fingertip height of the index finger 303 is H min, subject to touch recognition process by comparing the touch threshold 200 because below the H min + ε H. Since the fingertip height H min of the index finger 303 is below the touch threshold value 200, the index finger 303 is recognized as being in a touch state. Since the fingertip height of the fingers other than the index finger is higher than H min + ε H , the finger is excluded from the touch determination target by the touch threshold 200 and is not recognized as being in the touch state. In this manner, it is possible to prevent erroneous recognition of the little finger 300 and the thumb 304 that are brought into a touch state when erroneous recognition suppression is not performed as illustrated in FIG.

なお、上述したようにタッチ認識処理の対象とする指先を絞り込むことは、タッチ閾値200を予め小さい値に設定することと等価ではない。タッチ閾値200は、センサの精度や環境によって生じてしまう位置情報の検出誤差やぶれを許容できるように、ある程度大きく設定される必要があるからである。タッチ閾値を小さくすると、検出誤差やぶれにより、ユーザがタッチしたつもりなのに情報処理装置100がそれを認識できないといった問題を発生させる可能性がある。従って本実施形態では、十分な大きさを持ったタッチ閾値200を設定し、タッチ閾値200と比較する指先を絞り込むことによって、ユーザがタッチしようとしている場合の認識漏れを防いでいる。   It should be noted that narrowing down the fingertips to be subjected to touch recognition processing as described above is not equivalent to setting the touch threshold 200 to a small value in advance. This is because the touch threshold 200 needs to be set to be large to some extent so as to allow detection errors and blurring of position information caused by the accuracy and environment of the sensor. If the touch threshold value is decreased, there is a possibility that the information processing apparatus 100 may not recognize it although the user intends to touch it due to a detection error or a shake. Therefore, in this embodiment, the touch threshold 200 having a sufficient size is set, and the fingertips to be compared with the touch threshold 200 are narrowed down, thereby preventing recognition failure when the user is trying to touch.

次に、指先の移動スピードの比較によって絞り込みを行う方法について、図5(A)〜(C)を参照して説明する。図5(A)では前フレームの指先位置を破線の円で、現フレームの指先位置を実線の円で示している。さらに、前フレームと現フレームの指先高さ位置を繋いだ矢印は、Z軸方向のスピードの大きさを示している。全ての指先の中で最も指先スピードが大きい指先は人差し指303であり、その指先スピードをVmaxとする。指先スピードが絞り込み閾値を表すVmaxV(εVは正の定数)を上回った相対的な指先スピードが大きい指先のが、タッチ操作に用いられる指先である可能性が高いとみなされ、タッチ閾値200によるタッチ認識処理の対象となる。図5(A)では、人差し指303の指先スピードはVmaxであり、VmaxVを上回っているのでタッチ閾値200によるタッチ判定が行われる。そして、人差し指303の指先高さはタッチ閾値200を下回っているので、人差し指303はタッチ状態であると認識される。人差し指以外の指は指先スピードがVmaxVを下回っているので、タッチ閾値200によるタッチ判定の対象から外れ、タッチ状態であると認識されることはない。 Next, a method of narrowing down by comparing the movement speeds of the fingertips will be described with reference to FIGS. In FIG. 5A, the fingertip position of the previous frame is indicated by a broken-line circle, and the fingertip position of the current frame is indicated by a solid-line circle. Furthermore, an arrow connecting the fingertip height positions of the previous frame and the current frame indicates the magnitude of the speed in the Z-axis direction. The fingertip with the highest fingertip speed among all the fingertips is the index finger 303, and the fingertip speed is V max . It is considered that the fingertip with a large relative fingertip speed exceeding V max −ε VV is a positive constant) representing the narrowing threshold is likely to be a fingertip used for touch operation, It becomes a target of touch recognition processing by the touch threshold 200. In FIG. 5A, the fingertip speed of the index finger 303 is V max, which is higher than V max −ε V , so that touch determination based on the touch threshold 200 is performed. Since the fingertip height of the index finger 303 is below the touch threshold value 200, the index finger 303 is recognized as being in a touch state. Since the fingertip speed of the fingers other than the index finger is lower than V max −ε V , the finger is excluded from the touch determination target by the touch threshold 200 and is not recognized as being in the touch state.

本実施形態では、上述した、指先の高さを基準とした絞り込みと、指先のスピードを基準とした絞り込みの両方を段階的に行うことで精度のよい絞り込み結果を得ることができる。ただし、これらはそれぞれ効果を有するものであるため、システムの構成や状況によっては片方を省略してもよい。また、両方の処理を、結果のORをとる形で併用してもよい。   In the present embodiment, it is possible to obtain an accurate narrowing result by performing both the above-described narrowing based on the fingertip height and the narrowing based on the fingertip speed in stages. However, since these have their respective effects, one of them may be omitted depending on the system configuration and situation. Moreover, you may use both processing together in the form which takes OR of a result.

<シングルタッチ操作の認識処理>
次に、本実施形態のステップS106の処理で実行されるシングルタッチ操作の認識処理を、図9のフローチャートを参照して説明する。なお、図9のフローチャートの処理が開始されると、ステップS102で位置情報が検出された全ての指先のそれぞれに対し、後述するステップS201〜S214の処理を繰り返す。全ての指先に対する処理が終了した段階で、シングルタッチ認識処理は終了となり、図8のフローチャートに戻る。
<Single touch operation recognition process>
Next, the single touch operation recognition process executed in the process of step S106 of the present embodiment will be described with reference to the flowchart of FIG. When the process of the flowchart of FIG. 9 is started, the processes of steps S201 to S214 described later are repeated for each of the fingertips whose position information is detected in step S102. At the stage where the processing for all the fingertips is completed, the single touch recognition processing ends, and the process returns to the flowchart of FIG.

ステップS201において、特定部123は、その時点で処理対象としている指先が、タッチ操作に用いられる指とみなされるかを判定する。ステップS201の処理が、図4を使って説明した絞り込みに相当する。なおステップS201での判定は、ユーザが、処理対象としている指先をタッチ操作の入力に用いる意図を持っている可能性が高いことを、センサを使って検出している情報に基づいて推定するものである。従って判定結果は、実際のユーザの思考や意図には依存しない。   In step S <b> 201, the specifying unit 123 determines whether the fingertip that is a processing target at that time is regarded as a finger used for a touch operation. The process of step S201 corresponds to the narrowing down described with reference to FIG. Note that the determination in step S201 is based on information detected using a sensor that the user is likely to have the intention of using the fingertip to be processed for input of the touch operation. It is. Therefore, the determination result does not depend on the actual user's thoughts and intentions.

ここで、図10のフローチャートは、ステップS201で実行される処理の流れを表すものである。ステップS300において、特定部123は、指先高さとHminHとを比較する。もし指先高さのほうが小さければステップS301に進み、そうでなければステップS303に進む。ステップS301において、特定部123は指先スピードとVmaxVを比較する。もし指先スピードの方が大きければステップS302に進み、そうでなければステップS303に進む。ステップS302ではタッチ操作に用いられる指であるとの判定が行われ、ステップS201の判定結果は「YES」となる。その結果、この時処理対象とされている指先は、高さをタッチ閾値と比較することによりタッチ状態か否かを判定する処理の対象となる。ステップS303では、タッチ操作に用いられる指でないとの判定が行われ、ステップS201の判定結果は「NO」となる。ステップS302でタッチ操作に用いられる指であると判定された場合(ステップS201でYES)、ステップS202に進む。ステップS303でタッチ操作に用いられる指でないと判定された場合(ステップS201でNO)、処理はステップS208に進む。 Here, the flowchart of FIG. 10 represents a flow of processing executed in step S201. In step S300, the specifying unit 123 compares the fingertip height and H min + ε H. If the fingertip height is smaller, the process proceeds to step S301; otherwise, the process proceeds to step S303. In step S301, the identifying unit 123 compares the fingertip speed with V max −ε V. If the fingertip speed is larger, the process proceeds to step S302; otherwise, the process proceeds to step S303. In step S302, it is determined that the finger is used for the touch operation, and the determination result in step S201 is “YES”. As a result, the fingertip that is the processing target at this time is a processing target for determining whether or not the fingertip is in the touch state by comparing the height with the touch threshold. In step S303, it is determined that the finger is not used for the touch operation, and the determination result in step S201 is “NO”. If it is determined in step S302 that the finger is used for a touch operation (YES in step S201), the process proceeds to step S202. If it is determined in step S303 that the finger is not used for the touch operation (NO in step S201), the process proceeds to step S208.

ステップS202では、認識部126は、ステップS102で検出された指先の位置情報のうちz座標(高さ)が、ステップS105で決定されたタッチ閾値より小さいかを判定する。指先の高さがタッチ閾値より小さいと判定された場合(ステップS202でYES)、ステップS203に進む。指先の高さがタッチ閾値より小さいと判定されない場合(ステップS202でNO)、ステップS209に進む。   In step S202, the recognition unit 126 determines whether the z-coordinate (height) of the fingertip position information detected in step S102 is smaller than the touch threshold determined in step S105. If it is determined that the height of the fingertip is smaller than the touch threshold (YES in step S202), the process proceeds to step S203. If it is not determined that the height of the fingertip is smaller than the touch threshold (NO in step S202), the process proceeds to step S209.

ステップS203において認識部126は、処理対象の指先が、この時点で既にタッチ状態であるかの判定を行う。タッチ状態であれば(ステップS203でYES)、ステップS207に進む。タッチ状態ではない、すなわち非タッチ状態であれば(ステップS203でNO)、ステップS204に進む。ステップS204において、認識部126は、処理対象の指先のタッチ状態への状態遷移があったことを確定する。本実施形態では、RAM111に保持するタッチフラグの値を「TRUE」とし、ステップS205に進む。   In step S <b> 203, the recognition unit 126 determines whether the fingertip to be processed is already in the touch state at this time. If it is in the touch state (YES in step S203), the process proceeds to step S207. If it is not a touch state, that is, if it is a non-touch state (NO in step S203), the process proceeds to step S204. In step S204, the recognition unit 126 determines that there has been a state transition to the touch state of the fingertip to be processed. In the present embodiment, the value of the touch flag held in the RAM 111 is set to “TRUE”, and the process proceeds to step S205.

ステップS205で、認識部126は、TOUCHイベントを発行する。ステップS206において、認識部126は、ステップS204でタッチ状態への遷移が確定した時刻の情報を、タッチ時刻としてRAM111に保持する。ステップS207において、認識部126は、処理対象の指先位置の位置情報を、この時点でのタッチ位置としてRAM111に保持する。そして検出されている全ての指先が処理されるまで、処理を繰り返す。   In step S205, the recognition unit 126 issues a TOUCH event. In step S206, the recognizing unit 126 holds information on the time when the transition to the touch state is confirmed in step S204 in the RAM 111 as the touch time. In step S207, the recognition unit 126 holds the position information of the fingertip position to be processed in the RAM 111 as the touch position at this time. The process is repeated until all the detected fingertips are processed.

ステップS208において、認識部126は、処理対象の指先が、この時点でタッチ状態であるかの判定を行う。タッチ状態であれば(ステップS208でYES)、ステップS209に進む。タッチ状態ではない、すなわち非タッチ状態であれば(ステップS208でNO)、図9のフローチャートの処理を終了する。あるいは、処理対象の指を変えて処理を繰り返す。   In step S208, the recognition unit 126 determines whether or not the fingertip to be processed is in a touch state at this time. If it is in the touch state (YES in step S208), the process proceeds to step S209. If it is not in the touch state, that is, if it is in the non-touch state (NO in step S208), the process of the flowchart of FIG. Alternatively, the process is repeated by changing the finger to be processed.

ステップS209において、認識部126は、指先高さがリリース閾値より大きいかの判定を行う。指先高さがリリース閾値より大きいと判定される場合(ステップS209でYES)、ステップS210に進む。指先高さがリリース閾値より大きいと判定されない場合(ステップS209でNO)、ステップS207に進む。ステップS210において、認識部126は、対象の指先のタッチ状態から非タッチ状態への遷移を確定させ、RAM111に保持するタッチフラグの値を「FALSE」とする。ステップS211において、認識部126は、RELEASEイベントを発行する。ステップS212において、認識部126は、ステップS210で非タッチ状態への遷移が確定した時刻の情報を、リリース時刻としてRAM111に保持する。ステップS213において、認識部126は、処理対象である指先について、タッチイベントが発行されてからリリースイベントが発行されるまでに得られた情報によって、タップ操作の認識条件が満たされたかを判定する。具体的には、以下の式1の条件が満たされるかの判定を行う。
(リリース時刻−タッチ時刻)<εかつ
(リリース位置とタッチ位置の距離)<ε(ε、εは正の定数)…(式1)
タップ操作の条件が満たされると判定された場合(ステップS213でYES)、ステップS214に進む。タップ操作の条件が満たされると判定されない場合(ステップS213でNO)、図9のフローチャートの処理を終了する。あるいは、処理対象の指を変えて処理を繰り返す。全ての指について処理を行われた段階で、シングルタッチ認識処理は終了する。
In step S209, the recognition unit 126 determines whether the fingertip height is greater than the release threshold. If it is determined that the fingertip height is greater than the release threshold (YES in step S209), the process proceeds to step S210. If it is not determined that the fingertip height is greater than the release threshold (NO in step S209), the process proceeds to step S207. In step S210, the recognition unit 126 determines the transition from the touch state of the target fingertip to the non-touch state, and sets the value of the touch flag held in the RAM 111 to “FALSE”. In step S211, the recognition unit 126 issues a RELEASE event. In step S212, the recognition unit 126 holds, in the RAM 111, information on the time when the transition to the non-touch state is confirmed in step S210 as the release time. In step S213, the recognition unit 126 determines whether the recognition condition for the tap operation is satisfied with respect to the fingertip that is the processing target, based on information obtained from when the touch event is issued until the release event is issued. Specifically, it is determined whether the condition of the following formula 1 is satisfied.
(Release time−touch time) <ε T and (Distance between release position and touch position) <ε DT and ε D are positive constants) (Equation 1)
If it is determined that the condition for the tap operation is satisfied (YES in step S213), the process proceeds to step S214. If it is not determined that the tap operation condition is satisfied (NO in step S213), the process of the flowchart of FIG. 9 ends. Alternatively, the process is repeated by changing the finger to be processed. The single touch recognition process ends when the process is performed for all fingers.

<マルチタッチ操作の認識処理>
次に、本実施形態のステップS107の処理で実行されるマルチタッチ操作の認識処理を、図11のフローチャートを参照して説明する。なお本実施形態では、マルチタッチ操作の認識処理の前にシングルタッチ認識処理が行われ、各指先の状態が得られている。
<Multi-touch operation recognition process>
Next, multi-touch operation recognition processing executed in step S107 of this embodiment will be described with reference to the flowchart of FIG. In the present embodiment, the single touch recognition process is performed before the multi-touch operation recognition process, and the state of each fingertip is obtained.

ステップS400において、認識部126は、タッチ状態にある複数の指先をペアリングする。本実施形態では、タッチ時刻が最も早い指先から、タッチ時刻に沿って順次2つの指先をペアリングする。ただしこれは一例である、他のペアリング方法を用いてもよい。なお、ステップS400において複数の組み合わせがペアリングされた場合、以下のステップS401〜ステップS406の処理は全ての組み合わせのそれぞれを対象に、複数回繰り返される。   In step S400, the recognition unit 126 pairs a plurality of fingertips in a touch state. In the present embodiment, the two fingertips are sequentially paired along the touch time from the fingertip with the earliest touch time. However, this is an example, and other pairing methods may be used. When a plurality of combinations are paired in step S400, the processes in steps S401 to S406 below are repeated a plurality of times for each of the combinations.

ステップS401において、認識部126は、ペアリングされている2つの指先の間の距離を取得する。本実施形態では、xy平面上の二次元のユークリッド距離を用いるが、別の距離尺度を用いてもよい。ステップS402において、認識部126は、取得した指先間の距離と、前フレームで取得された距離に差が生じているかを判定する。ここでは、フレーム間での距離の差分が、所定の値より大きいか否かで判定を行う。距離に差があると判定される場合(ステップS402でYES)、ステップS403に進む。距離に差があると判定されない場合(ステップS402でNO)、ステップS404に進む。   In step S401, the recognition unit 126 acquires a distance between two paired fingertips. In the present embodiment, a two-dimensional Euclidean distance on the xy plane is used, but another distance measure may be used. In step S402, the recognition unit 126 determines whether there is a difference between the acquired distance between the fingertips and the distance acquired in the previous frame. Here, the determination is made based on whether or not the difference in distance between frames is greater than a predetermined value. If it is determined that there is a difference in distance (YES in step S402), the process proceeds to step S403. If it is not determined that there is a difference in distance (NO in step S402), the process proceeds to step S404.

ステップS403において、認識部126は、PINCHイベントを発行する。PINCHイベントは、2つの指先間の距離が変化したことで拡大・縮小操作を認識した場合に通知されるイベントである。PINCHイベントは、2つの指先間の距離の変化から計算された、拡大・縮小の割合や差分距離といった情報を伴って出力制御部127に通知される。例えば、拡大・縮小の割合(%)は、式2で計算できる。
(現在の指先間の距離)/(ペアリングされた時点での指先間の距離)×100…(式2)
また、例えば、差分距離は(現在の指先間の距離−ペアリングされた時点での指先間の距離)で計算できる。出力制御部127は、例えば、PINCHイベントの通知を受け、表示アイテムの大きさを拡大したり縮小したりできる。
In step S403, the recognition unit 126 issues a PINCH event. The PINCH event is an event that is notified when an enlargement / reduction operation is recognized due to a change in the distance between two fingertips. The PINCH event is notified to the output control unit 127 together with information such as the enlargement / reduction ratio and the difference distance calculated from the change in the distance between the two fingertips. For example, the enlargement / reduction ratio (%) can be calculated by Equation 2.
(Current distance between fingertips) / (Distance between fingertips when paired) × 100 (Equation 2)
Further, for example, the difference distance can be calculated by (current distance between fingertips−distance between fingertips when paired). For example, the output control unit 127 can receive a notification of a PINCH event and can enlarge or reduce the size of the display item.

ステップS404において、認識部126は、ペアリングされている指先間を結ぶ線分の角度を取得する。角度の取得方法の例は後述する。ステップS405において、認識部126は、算出した角度が前フレームと比較して変化しているかどうかを判定する。角度が変化していると判定される場合(ステップS405でYES)には、ステップS406へ進む。角度が変化していると判定されない場合(ステップS405でNO)には、処理を終了する。あるいはステップS401に戻って繰り返す。   In step S404, the recognizing unit 126 acquires the angle of the line segment connecting the paired fingertips. An example of an angle acquisition method will be described later. In step S405, the recognition unit 126 determines whether or not the calculated angle has changed compared to the previous frame. If it is determined that the angle has changed (YES in step S405), the process proceeds to step S406. If it is not determined that the angle has changed (NO in step S405), the process ends. Or it returns to step S401 and repeats.

ステップS406において、認識部126は、ROTATEイベントを発行する。ROTATEイベントは、ペアリングされた2つの指先の絶対的な角度が変化したことで回転操作を認識した場合に通知されるイベントである。絶対的な角度の計算方法は、例えば、2つの指先を繋いでできる線分とx軸のなす角度を用い、時計回りの角度をプラスとし、反時計回りの角度をマイナスとすることができる。ROTATEイベントは2つの指先の絶対的な角度の変化から計算された、回転の割合等の情報を伴って出力制御部127に通知される。例えば、回転の割合は、式3で計算できる。
(現在の2つの指先の絶対的な角度−ペアリング時点の2つの指先の絶対的な角度)…(式3)
出力制御部127は例えば、ROTATEイベントの情報を用いて、表示アイテムを回転させることができる。
In step S406, the recognition unit 126 issues a ROTATE event. The ROTATE event is an event that is notified when a rotation operation is recognized because the absolute angle of two paired fingertips has changed. As an absolute angle calculation method, for example, an angle formed by a line segment formed by connecting two fingertips and an x axis can be used, a clockwise angle can be positive, and a counterclockwise angle can be negative. The ROTATE event is notified to the output control unit 127 together with information such as a rotation ratio calculated from a change in absolute angle between two fingertips. For example, the rotation rate can be calculated by Equation 3.
(Absolute angles of the current two fingertips-Absolute angles of the two fingertips at the time of pairing) (Equation 3)
For example, the output control unit 127 can rotate the display item using information on the ROTATE event.

<マルチタッチ操作の具体例>
マルチタッチ操作を、距離画像センサ115を用いたタッチ認識で実現する場合には、操作に用いられる複数の指先がそれぞれタッチ状態であることが認識されている必要がある。マルチタッチ操作の認識においても、操作入力に用いられない指の指先がタッチ状態であると誤認識されると、誤動作の原因となる可能性がある。
<Specific examples of multi-touch operation>
When the multi-touch operation is realized by touch recognition using the distance image sensor 115, it is necessary to recognize that a plurality of fingertips used for the operation are in a touch state. Also in recognition of multi-touch operation, if the fingertip of a finger that is not used for operation input is erroneously recognized as being in a touch state, it may cause a malfunction.

まず、本実施形態の絞り込みを行わずに全ての指先の高さを、一定のタッチ閾値200と比較する場合、マルチタッチ操作が入力される場合に起こり得た問題を、図7(A)と図6(A)を参照して説明する。図7(A)はUI部品102に対してマルチタッチ操作をするために、手103aの人差し指303と親指304でタッチした瞬間の様子である。拡大・縮小操作や回転操作を行う場合には人差し指と親指が用いられることが多いが、ユーザにとって、人差し指と親指だけを伸ばし、他の指が誤検出されないように曲げたり向きを変えたりする姿勢を取ることは負担を伴うことがある。従って、ユーザには、図7(A)のように、手及び指を自然と開いた姿勢でマルチタッチ操作を行える環境が期待される。   First, when comparing the heights of all the fingertips with a certain touch threshold value 200 without performing the narrowing down of the present embodiment, problems that may occur when a multi-touch operation is input are shown in FIG. This will be described with reference to FIG. FIG. 7A shows a state in which the index finger 303 and the thumb 304 of the hand 103a are touched to perform a multi-touch operation on the UI component 102. FIG. The index finger and thumb are often used to perform enlargement / reduction operations and rotation operations, but for the user, only the index finger and thumb are stretched, and the posture of bending or changing the direction so that other fingers are not erroneously detected Taking can be burdensome. Therefore, as shown in FIG. 7A, the user is expected to have an environment in which a multi-touch operation can be performed with the hands and fingers naturally open.

図6(A)は図7(A)における指先高さを、zx平面にマッピングしたものである。図4及び図5で示したのと同じ要素については、同じ番号を付与し、説明を省略する。この場合、ユーザが操作入力に用いることを意図したのは人差し指303と親指304であるが、他の指も広げられた状態にあるため、人差し指303と親指304の動きに連動して動く。図6(A)の場合、人差し指303と親指304とは離れた小指300が連動して下がったことで、小指300の指先高さがタッチ閾値200を下回っている。従って、例えば、誤って小指300が親指304あるいは人差指303とペアリングされてしまい、ユーザの意図と異なるマルチタッチ操作が認識されることが有り得る。   FIG. 6A shows the fingertip height in FIG. 7A mapped on the zx plane. The same elements as those shown in FIGS. 4 and 5 are given the same numbers, and the description thereof is omitted. In this case, it is the index finger 303 and the thumb 304 that the user intends to use for the operation input. However, since the other fingers are also spread, the user moves in conjunction with the movement of the index finger 303 and the thumb 304. In the case of FIG. 6A, the fingertip height of the little finger 300 is lower than the touch threshold 200 because the little finger 300 separated from the index finger 303 and the thumb 304 has been lowered in conjunction. Therefore, for example, the little finger 300 is erroneously paired with the thumb 304 or the index finger 303, and a multi-touch operation different from the user's intention may be recognized.

本実施形態では、上述したように、タッチ閾値と指先高さの比較によるタッチ認識処理を行う前に、タッチ認識処理の対象とする指先を絞り込む。図6(B)に、図6(A)と同様の状況で、本実施形態の絞り込みを適用した結果を示す。図6(B)に示す手の状態では、複数の指先の中でも人差し指303の指先高さが最も小さい。その指先高さがHminとなる。操作入力に用いられる人差し指303と親指304は、絞り込み閾値305となる高さHminHを下回っているため、タッチ認識の対象となる。そしてタッチ閾値200を下回っているので、タッチ状態であると認識される。一方で、操作入力に用いられる指ではない小指300の指先高さは、タッチ閾値200を下回っているものの、絞り込み閾値305である高さHminHを上回っているため、タッチ閾値200との比較が行われない。従って、タッチ状態であるとは認識されない。 In the present embodiment, as described above, the fingertips to be subjected to the touch recognition process are narrowed down before performing the touch recognition process by comparing the touch threshold and the fingertip height. FIG. 6B shows the result of applying the narrowing of the present embodiment in the same situation as in FIG. In the hand state shown in FIG. 6B, the fingertip height of the index finger 303 is the smallest among the plurality of fingertips. The fingertip height is H min . Since the index finger 303 and the thumb 304 used for operation input are below the height H min + ε H that is the narrowing threshold 305, they are targets for touch recognition. And since it is less than the touch threshold value 200, it is recognized as a touch state. On the other hand, although the fingertip height of the little finger 300 that is not a finger used for operation input is below the touch threshold value 200, it is higher than the height H min + ε H that is the narrowing threshold value 305. Is not compared. Accordingly, the touch state is not recognized.

次に指先の移動スピードに基づく指先の絞り込みの例を図6(C)を参照して説明する。図6(C)では図5(A)と同様に前フレームの指先位置を破線の円で、現フレームの指先位置を実線の円で示し、前フレームと現フレームの指先高さ位置を繋いだ矢印はZ軸方向のスピードの大きさを示している。全ての指先の中で最も指先スピードが大きい指先は人差し指303である。その指先スピードをVmaxとする。指先スピードがVmaxVを上回っているのは人差し指303と親指304である。従って、本実施形によれば、人差し指303と親指304がタッチ認識処理の対象となり、それらはタッチ閾値300より高さが小さいため、タッチ状態であると認識される。一方、小指300の指先高さは、タッチ閾値200を下回っているものの、指先のスピードがVmaxVを下回っているため、タッチ認識の対象とされない。従って、小指300はタッチ状態であると認識されない。 Next, an example of fingertip narrowing based on the fingertip movement speed will be described with reference to FIG. In FIG. 6C, as in FIG. 5A, the fingertip position of the previous frame is indicated by a dashed circle, the fingertip position of the current frame is indicated by a solid circle, and the fingertip height position of the previous frame and the current frame are connected. The arrow indicates the magnitude of the speed in the Z-axis direction. The index finger 303 is the fingertip having the highest fingertip speed among all the fingertips. Let the fingertip speed be V max . The fingertip speed is higher than the V max -ε V is the index finger 303 and the thumb 304. Therefore, according to the present embodiment, the index finger 303 and the thumb 304 are targets for touch recognition processing, and since they are smaller than the touch threshold 300, it is recognized as being in a touch state. On the other hand, although the fingertip height of the little finger 300 is lower than the touch threshold value 200, the fingertip speed is lower than V max −ε V , so that it is not a target for touch recognition. Therefore, the little finger 300 is not recognized as being in a touch state.

図7(B)は、本実施形態によって指先のペアリングが正しく行われたことにより、縮小操作が認識され、UI部品102が縮小された様子を表す。人差し指303と親指304の距離を小さくすることでPINCHイベントが発行され、アプリケーションはPINCHイベントの拡大・縮小割合を参照し、UI部品102の大きさを変化させている。図7(C)は、UI部品102に回転操作を行われた様子を表す。人差し指303と親指304を時計回りに回転させることでROTATEイベントが発行され、アプリケーションはROTATEイベントの回転の割合を参照し、UI部品102を時計回りに回転させている。このように、本実施形態では、一部の指だけを使ったマルチタッチ操作を行った場合でも、適切な指の情報を使ってマルチタッチ操作が認識されるので、ユーザが自然と手を広げた楽な姿勢で操作を行うことができる。   FIG. 7B shows a state in which the reduction operation is recognized and the UI component 102 is reduced due to the fingertip pairing being correctly performed according to the present embodiment. A PINCH event is issued by reducing the distance between the index finger 303 and the thumb 304, and the application refers to the enlargement / reduction ratio of the PINCH event and changes the size of the UI component 102. FIG. 7C shows a state in which a rotation operation is performed on the UI component 102. By rotating the index finger 303 and the thumb 304 clockwise, a ROTATE event is issued, and the application refers to the rotation rate of the ROTATE event and rotates the UI component 102 clockwise. As described above, in this embodiment, even when a multi-touch operation using only some fingers is performed, the multi-touch operation is recognized using appropriate finger information. It can be operated with a comfortable posture.

なお、本実施形態では、ユーザが一人で片手でのマルチタッチ操作を行うことを前提として説明して来た。従って、高さやスピードの比較は、同一の手に属する複数の指先間で行われた。ただし、マルチタッチ操作は、両手で行われる場合もあり得る。また、右手での操作中に、別途左手の誤タッチが検出されてしまうといった場合があり得る。そのような場合に対応するために、抽出された複数の手領域の中で同一ユーザの両手を組み合わせを特定し、1ユーザの両手に属する指先の中で高さやスピードを比較してもよい。こうすることで、指だけでなく手に関しても、ユーザが操作に用いる意図を持っているか否かを推定することで、操作の誤認識を低減することができる。また、複数ユーザの指先の高さやスピードを全て比較して絞り込みを行うことで、あるユーザが主体的に操作している場合に、他のユーザの指先による誤タッチが認識されてしまうことを防ぐことができる。また、上述した例ではマルチタッチ操作に用いられる指先は2つずつペアリングしたが、3本以上の指先が協働してマルチタッチ操作を行う場合にも、本実施形態は有効である。
このように、意図した人差し指303と親指304のみがタッチ状態になると、この2つの指がペアリングされる。そして、人差し指303と親指304をタッチ状態のまま動かすことによって、マルチタッチ操作を行うことができる。
Note that the present embodiment has been described on the assumption that the user performs a multi-touch operation with one hand alone. Therefore, the comparison of height and speed was performed between a plurality of fingertips belonging to the same hand. However, the multi-touch operation may be performed with both hands. Further, there may be a case where an erroneous touch of the left hand is detected during the operation with the right hand. In order to cope with such a case, a combination of both hands of the same user may be specified in the extracted plurality of hand regions, and the height and speed may be compared among the fingertips belonging to both hands of one user. By doing so, it is possible to reduce misrecognition of the operation by estimating whether the user intends to use the operation for not only the finger but also the hand. Also, by comparing and narrowing down the heights and speeds of the fingertips of multiple users, it is possible to prevent an erroneous touch due to the fingertips of other users from being recognized when a user is actively operating. be able to. In the above-described example, two fingertips used for the multi-touch operation are paired, but this embodiment is also effective when three or more fingertips cooperate to perform the multi-touch operation.
In this way, when only the intended forefinger 303 and thumb 304 are touched, the two fingers are paired. Then, a multi-touch operation can be performed by moving the index finger 303 and the thumb 304 in a touched state.

<平面以外へのタッチ操作>
ここまで、平面を対象としたタッチ操作を例に挙げて説明してきたが、本実施形態は、任意形状の物体が対象であっても同様の方法で誤認識を抑制したタッチ操作を行うことが可能である。一例として、平面上におかれた球500を対象にタッチ操作を行う場合の例を図13(A)に示す。球400を覆うように、一定のタッチ閾値401、リリース閾値402を設定する。そして、指先403の球400の表面までの距離404が、最小となる指先の位置情報を基準として絞り込みを行う。また、指先の移動スピードを取得する際には、指先403が球400の表面へ向かう方向のスピード405を比較すればよい。
<Touch operation to other than plane>
Up to this point, the touch operation for a plane has been described as an example. However, in the present embodiment, even if an object having an arbitrary shape is the target, the touch operation with the erroneous recognition suppressed can be performed by the same method. Is possible. As an example, FIG. 13A illustrates an example in which a touch operation is performed on a sphere 500 placed on a plane. A fixed touch threshold 401 and a release threshold 402 are set so as to cover the sphere 400. Then, the fingertip 403 is narrowed down with reference to the position information of the fingertip at which the distance 404 to the surface of the sphere 400 is minimum. Further, when acquiring the moving speed of the fingertip, the speed 405 in the direction in which the fingertip 403 moves toward the surface of the sphere 400 may be compared.

また、仮想オブジェクトが対象であっても、同様の方法で誤認識を抑制したタッチ操作を行うことが可能である。図13(B)を用いて、3Dプロジェクタで空中に投影された3Dオブジェクトである球406に対するタッチ操作の例を示す。この場合も、球406を覆うようにタッチ閾値407とリリース閾値408を設定する。そして、指先409の球406の表面までの距離410が最小距離となる乳美先指先高さ410が最小となる指先の位置情報を基準として絞り込みを行う。また、指先の移動スピードを取得する際には、指先409が球406の表面へ向かう方向のスピード411を比較すればよい。   Moreover, even if a virtual object is a target, it is possible to perform a touch operation in which erroneous recognition is suppressed by a similar method. An example of a touch operation on a sphere 406 that is a 3D object projected into the air by a 3D projector will be described with reference to FIG. Also in this case, the touch threshold value 407 and the release threshold value 408 are set so as to cover the sphere 406. Then, narrowing is performed based on the position information of the fingertip at which the milky beauty fingertip height 410 at which the distance 410 to the surface of the ball 406 of the fingertip 409 is the minimum distance is the minimum. Further, when acquiring the moving speed of the fingertip, the speed 411 in the direction in which the fingertip 409 moves toward the surface of the sphere 406 may be compared.

[変形例]
上述した第1の実施形態では、絞り込まれた指先がタッチ状態であるかを判定する条件は、予め設定された一定のタッチ閾値及びリリース閾値であった。それに対し変形例として、ユーザ毎に、あるいは指毎に、より適切な閾値を決定する例を説明する。なお、以下の変形例で説明するタッチ閾値の決定処理は、図8のフローチャートのステップS105の処理において行われる。変形例では、ステップS105以外の処理は、第1の実施形態に準じるため、詳細な説明は省略する。
[Modification]
In the first embodiment described above, the condition for determining whether or not the narrowed fingertip is in the touch state is a predetermined touch threshold and release threshold set in advance. On the other hand, as a modification, an example in which a more appropriate threshold is determined for each user or for each finger will be described. Note that the touch threshold value determination process described in the following modification is performed in the process of step S105 in the flowchart of FIG. In the modification, the processes other than step S105 are the same as those in the first embodiment, and thus detailed description thereof is omitted.

<変形例1:指同士の関係に基づく閾値の補正処理>
第1の実施形態、及びその変形例は、操作に利用される指に連動して動いてしまう他の指の影響により生じるタッチ操作の誤認識を低減することを目的としている。ここで、操作に利用される指の種類によっては、それに連動して動いてしまう傾向が強い指を予め想定することが可能である。例えば、ユーザやアプリケーションの都合で、小指でタッチ操作が行われる場合、小指と隣り合う薬指は、小指の動きに連動して動いてしまい易い。またその際、入力操作に用いられる小指と、高さやスピードが近いものになることが統計的に解っている。ここで変形例1では、このような指同士の関係に基づいて閾値を決定する。
<Modification 1: Threshold correction processing based on the relationship between fingers>
The first embodiment and its modification are intended to reduce erroneous recognition of touch operations caused by the influence of other fingers that move in conjunction with the fingers used for the operations. Here, depending on the type of finger used for the operation, it is possible to assume in advance a finger that tends to move in conjunction with the finger. For example, when the touch operation is performed with the little finger for the convenience of the user or the application, the ring finger adjacent to the little finger is likely to move in conjunction with the movement of the little finger. At that time, it is statistically understood that the height and speed are close to those of the little finger used for the input operation. Here, in Modification 1, the threshold value is determined based on such a relationship between fingers.

図5(B)は小指300でタッチした場合の様子である。このとき薬指301は、指先高さおよび指先スピードが小指300とほぼ等しいため、第1の実施形態の絞り込みによって除外することが難しい場合がある。そこで変形例1では、小指300と連動して動く傾向が強い薬指301、及び中指302に関しては、小指300がタッチ操作に用いられる可能性が最も高い指だとみなされた場合に用いるタッチ閾値及びリリース閾値を先に補正しておく。なお、第1の実施形態の場合、タッチ操作に用いられる可能性が最も高い指だとみなされるのは、最もタッチ対象面からの距離が近く、また移動スピードが速い指である。   FIG. 5B shows a state where the little finger 300 is touched. At this time, the ring finger 301 has a fingertip height and a fingertip speed that are substantially the same as those of the little finger 300, and therefore it may be difficult to exclude the ring finger 301 by narrowing down the first embodiment. Therefore, in the first modification, for the ring finger 301 and the middle finger 302 that have a strong tendency to move in conjunction with the little finger 300, the touch threshold value used when the little finger 300 is regarded as the finger most likely to be used for the touch operation, and The release threshold is corrected first. In the case of the first embodiment, the finger that is most likely to be used for the touch operation is the finger that has the shortest distance from the touch target surface and the fastest movement speed.

図5(C)は、小指300が最もタッチ対象面からの距離が近く、また移動スピードが速い指であったことに応じて、薬指301、及び中指302のタッチが認識される条件が厳しくなった様子を表す。小指300と連動して動く薬指301のタッチ閾値306は、通常のタッチ閾値200よりも小さい値に決定されている。同様に中指302のタッチ閾値が、閾値200から閾値307に補正される。最終的に、指先高さおよび指先スピードを比較することによって、小指300と薬指301に対してタッチ判定が行われるが、薬指301の指先高さは補正されたタッチ閾値306を下回っていないためタッチ状態であると認識されない。意図したタッチである小指300だけがタッチ状態であると認識される。   In FIG. 5C, the condition for recognizing the touch of the ring finger 301 and the middle finger 302 becomes strict according to the fact that the little finger 300 is the closest finger from the touch target surface and the moving speed is fast. Represents the appearance. The touch threshold 306 of the ring finger 301 that moves in conjunction with the little finger 300 is determined to be smaller than the normal touch threshold 200. Similarly, the touch threshold value of the middle finger 302 is corrected from the threshold value 200 to the threshold value 307. Finally, by comparing the fingertip height and the fingertip speed, the touch determination is performed on the little finger 300 and the ring finger 301, but the touch is performed because the fingertip height of the ring finger 301 is not below the corrected touch threshold 306. It is not recognized as a state. Only the little finger 300 that is the intended touch is recognized as being in the touch state.

図12(A)は上述した、指同士の関係に基づく閾値の決定処理の流れを表すフローチャートである。この処理はステップS105の中で実行される。ステップS500において、タッチ認識部126は、指先高さが最小の指先を特定し、その指先と連動して動く指先の閾値を決定する。ステップS301において、タッチ認識部126は、指先速度が最大の指先を特定し、その指先と連動して動く指先の閾値を決定する。ステップS500及びステップS501では例えば、予め設定されているタッチ閾値に、所定の補正量を加えるあるいは減じることで、補正された閾値を算出し、対象としている指の閾値として決定する。ただしステップS300で決定済みの指先は決定しない。一例として、ステップS300およびステップS301で、連動して動く指先および補正量を取得するために、図12(B)に示すルックアップテーブルを用いる。   FIG. 12A is a flowchart showing the flow of the threshold value determination process based on the relationship between fingers described above. This process is executed in step S105. In step S500, the touch recognition unit 126 identifies the fingertip having the minimum fingertip height, and determines the threshold value of the fingertip that moves in conjunction with the fingertip. In step S301, the touch recognition unit 126 identifies the fingertip with the highest fingertip speed, and determines the threshold value of the fingertip that moves in conjunction with the fingertip. In step S500 and step S501, for example, a corrected threshold value is calculated by adding or subtracting a predetermined correction amount to a preset touch threshold value, and determined as the threshold value of the target finger. However, the fingertip already determined in step S300 is not determined. As an example, the lookup table shown in FIG. 12B is used to acquire the fingertips that move in conjunction with each other and the correction amount in steps S300 and S301.

なお変形例1では、連動して動く指先および補正量を取得するために図12(B)に示すルックアップテーブルを用いるが、連動して動く指先および補正量を決めるために他の方法を用いることも可能である。例えば、統計情報に基づいて確率的に決めることができる。なお、変形例1では指の種類の情報を使って、連動して動きやすい関係にある指先を特定しタッチ閾値を決定しているが、そのような情報がない場合でも、連動して動く指先を特定することは可能である。例えば、指先高さが低いあるいは指先速度が大きい指先に隣接する指先を、連動して動く指先であると判定し、その指先の閾値を決定することができる。   In the first modification, the lookup table shown in FIG. 12B is used in order to acquire the fingertips that move in conjunction and the correction amount, but other methods are used to determine the fingertips that move in conjunction and the correction amount. It is also possible. For example, it can be determined probabilistically based on statistical information. In the first modification example, the finger type information is used to identify the fingertips that are linked and move easily, and the touch threshold is determined. However, even if there is no such information, the fingertips that move in conjunction with each other are determined. It is possible to specify. For example, it is possible to determine a fingertip adjacent to a fingertip having a low fingertip height or a high fingertip speed as a fingertip that moves in conjunction with the fingertip, and determine a threshold value for the fingertip.

<変形例2:ユーザのニュートラルポジションに合わせた指毎の閾値補正>
第1の実施形態では、どのようなユーザについても一定のタッチ閾値、及びリリース閾値を使った。しかしながら、ユーザによって、ニュートラルポジション(自然な手の状態)での各指の高さは異なる。そこで、ユーザの手の状態がニュートラルポジションにあるときの各指の高さに基づいて閾値を補正する場合を説明する。
<Modification 2: Threshold correction for each finger according to the user's neutral position>
In the first embodiment, a constant touch threshold and a release threshold are used for any user. However, the height of each finger in the neutral position (natural hand state) varies depending on the user. Therefore, a case will be described in which the threshold value is corrected based on the height of each finger when the user's hand is in the neutral position.

図14(B)はニュートラルポジションの指先高さによって閾値を変動させた様子を示している。変形例2では、条件決定部124は、手がニュートラルポジションにあることが確認できた状態で得られた、各指先の高さ情報を使って閾値を補正する。例えば、手のシルエットを投影し、ユーザにそのシルエット上に手を静止させてもらうガイダンス表示を使って、ユーザの手をニュートラルポジションに誘導してから図8のフローチャートの処理を開始する。この場合、シルエット上に指先が5つ検出され、一定時間経過した場合にニュートラルポジションになったことを認識することができる。   FIG. 14B shows a state in which the threshold value is varied depending on the fingertip height at the neutral position. In the second modification, the condition determination unit 124 corrects the threshold value using the height information of each fingertip obtained in a state where it is confirmed that the hand is in the neutral position. For example, the processing of the flowchart of FIG. 8 is started after the user's hand is guided to the neutral position using a guidance display that projects the silhouette of the hand and allows the user to rest the hand on the silhouette. In this case, it is possible to recognize that the neutral position has been reached when five fingertips are detected on the silhouette and a certain time has elapsed.

そして、条件決定部124は、ニュートラルポジションにある手の各指先の高さを予め設定した高さ閾値αと比較する。ここで用いる高さ閾値αは、タッチ閾値及びリリース閾値とは異なるものであり、これ以上高い位置にある指は、タッチ操作に関わる可能性が低いとみなされ、タッチ閾値の補正が必要ではないと判定するための基準の高さである。図14(B)において、薬指301、中指302、人差し指303は指先高さが一定の高さαより高いため、タッチ閾値200とリリース閾値201はデフォルトのまま変化させない。しかし小指300はニュートラルポジションにおける指先高さが低いため、その高さに合わせてタッチ閾値を510、リリース閾値が511と再設定する。同様に、親指304もタッチ閾値を512、リリース閾値を513と再設定する。変形例2では、このように、ユーザに合わせて閾値を設定することで誤認識が少ない自然なタッチ操作が可能になる。   Then, the condition determining unit 124 compares the height of each fingertip of the hand in the neutral position with a preset height threshold value α. The height threshold α used here is different from the touch threshold and the release threshold, and it is considered that a finger at a higher position is less likely to be involved in the touch operation, and correction of the touch threshold is not necessary. It is the height of the standard for judging. In FIG. 14B, since the ring finger 301, the middle finger 302, and the index finger 303 have fingertip heights higher than a certain height α, the touch threshold value 200 and the release threshold value 201 are not changed as defaults. However, since the little finger 300 has a low fingertip height at the neutral position, the touch threshold value is reset to 510 and the release threshold value is set to 511 according to the height. Similarly, the thumb 304 also resets the touch threshold to 512 and the release threshold to 513. In the second modification, a natural touch operation with few misrecognitions can be performed by setting a threshold value according to the user.

ただし、所定の高さαによる区別を行わず、全ての指について、ニュートラルポジションでの指の高さ応じて閾値を変えてもよい。図14(A)は指の種類に応じて閾値を設定した例を示している。小指300のタッチ閾値は500、リリース閾値は501である。同様に、薬指301のタッチ閾値は502、リリース閾値は503である。中指302のタッチ閾値は504、リリース閾値は505である。人差し指303のタッチ閾値は506、リリース閾値は507である。親指304のタッチ閾値は508、リリース閾値は509となる。このように詳細に閾値を合わせこむことで、どの指先でも直観的に同程度の認識率と操作感を実現することができる。   However, the threshold value may be changed according to the height of the finger at the neutral position for all the fingers without distinguishing by the predetermined height α. FIG. 14A shows an example in which a threshold is set according to the type of finger. The touch threshold of the little finger 300 is 500, and the release threshold is 501. Similarly, the touch threshold of the ring finger 301 is 502, and the release threshold is 503. The touch threshold of the middle finger 302 is 504, and the release threshold is 505. The touch threshold of the index finger 303 is 506, and the release threshold is 507. The touch threshold of the thumb 304 is 508, and the release threshold is 509. By matching the thresholds in detail in this way, it is possible to intuitively realize the same recognition rate and operational feeling at any fingertip.

<変形例3:アプリケーションに応じた指毎の閾値補正>
また別の変形例3として、ニュートラルポジションでの高さにはよらず、ステップS103で特定した種類に応じて、所定の指のタッチ閾値を調整してもよい。例えば、アプリケーションによっては、所定の種類の指先を認識しやすくすることで、自然な操作感を実現できる場合がある。人差し指と親指によるマルチタッチ操作を頻繁に行うアプリケーションにおいて、人差し指と親指を認識しやすくし、それ以外の指を認識しにくくする場合を説明する。図14(C)は、小指300、薬指301、中指302に関して、タッチを検出する条件が厳しくなるように、閾値を設定した様子を表す。まず、小指300、薬指301、中指302のタッチ閾値514およびリリース閾値515を低く設定する。また、人差し指303および親指304のタッチ閾値516、リリース閾値517を高めに設定することでタッチを認識しやすくしている。
<Modification 3: Threshold correction for each finger according to application>
As another modified example 3, a predetermined finger touch threshold value may be adjusted according to the type specified in step S103 without depending on the height at the neutral position. For example, depending on the application, it may be possible to realize a natural feeling of operation by easily recognizing a predetermined type of fingertip. A case where the index finger and the thumb are easily recognized in an application that frequently performs multi-touch operations using the index finger and the thumb and the other fingers are difficult to recognize will be described. FIG. 14C illustrates a state in which threshold values are set for the little finger 300, the ring finger 301, and the middle finger 302 so that the condition for detecting touch becomes severe. First, the touch threshold value 514 and the release threshold value 515 for the little finger 300, the ring finger 301, and the middle finger 302 are set low. Further, the touch threshold value 516 and the release threshold value 517 of the index finger 303 and thumb 304 are set higher to make it easier to recognize the touch.

また、マルチタッチ操作を行う場合には、操作する以外の指が折り曲げられていると、5つ全ての指先が検出できず、指先の種類の認識結果が得られない場合がある。このような場合、指が検出できていなくても、ステップS103での指の特定結果を利用して、各指に最適な閾値を設定することができる。例えば、右手であれば、侵入位置から見て左(図14(D)においては右)から1番目の指先と2番目の指先がそれぞれ親指と人差し指であると思われるので、それらの指先を認識しやすくできる。図14(D)は右手の4つの指先518、519、520、521が検出されているが、種類は分からない状態を示している。ここで指先520と521は人差し指と親指であると思われるので、高めのタッチ閾値516、リリース閾値517が設定されており、指先518と519には低めのタッチ閾値514およびリリース閾値515が設定されている。同様に、左手であれば、侵入位置から見て右から1番目の指先と2番目の指先がそれぞれ親指と人差し指であると思われるので、それらの指先を認識しやすくできる。   In addition, when performing a multi-touch operation, if fingers other than the operated one are bent, all five fingertips cannot be detected and a fingertip type recognition result may not be obtained. In such a case, even if a finger is not detected, an optimum threshold value can be set for each finger using the finger identification result in step S103. For example, in the case of the right hand, the first fingertip and the second fingertip from the left (right in FIG. 14D) when viewed from the intrusion position are considered to be the thumb and the index finger, respectively. It can be done easily. FIG. 14D shows a state in which the four fingertips 518, 519, 520, and 521 of the right hand are detected, but the type is unknown. Here, since it is considered that the fingertips 520 and 521 are the index finger and the thumb, a higher touch threshold 516 and a release threshold 517 are set, and a lower touch threshold 514 and a release threshold 515 are set for the fingertips 518 and 519. ing. Similarly, in the case of the left hand, the first fingertip and the second fingertip from the right when viewed from the intrusion position are considered to be the thumb and the index finger, respectively, so that the fingertips can be easily recognized.

以上説明した変形例1〜3によって、タッチ閾値を決定する場合、決定されたタッチ閾値に合わせてリリース閾値を決定することで、タッチ操作認識処理の全体の精度をより向上させることができる。変形例においても、第1の実施形態で説明したように、決定されたタッチ閾値及びリリース閾値を使ってタッチ状態か否かを判定する指先を絞り込むことで、操作に利用される指に連動して動いてしまうにより生じるタッチ操作の誤認識を低減することができる。   When the touch threshold is determined according to the first to third modifications described above, the overall accuracy of the touch operation recognition process can be further improved by determining the release threshold in accordance with the determined touch threshold. Also in the modified example, as described in the first embodiment, by using the determined touch threshold value and the release threshold value to narrow down the fingertip for determining whether or not it is in the touch state, the fingertip used for the operation is linked. Misrecognition of a touch operation caused by the movement of the user can be reduced.

(その他の実施形態)
本発明は、上述の実施形態の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.

120 画像取得部
121 領域検出部
122 位置検出部 123 特定部
124 条件決定部
125 識別部
126 認識部
127 出力制御部
DESCRIPTION OF SYMBOLS 120 Image acquisition part 121 Area | region detection part 122 Position detection part 123 Specification part 124 Condition determination part 125 Identification part 126 Recognition part 127 Output control part

Claims (12)

人が手を挿入して操作を行う空間内の位置情報が反映された入力画像を取得する画像取得手段と、
前記画像取得手段によって取得された入力画像のうち前記人の手が写る部分に反映された前記位置情報に基づいて、前記人の手のうちの複数の指先のそれぞれの位置情報を検出する位置検出手段と、
前記位置検出手段によって検出された前記複数の指先の関係を使って、前記複数の指先のうち前記所定の対象面にタッチしたかを判定する処理の対象とする指先を特定する特定手段と、
前記特定手段によって特定された指先について前記位置検出手段によって検出された位置情報と、前記タッチ対象面の位置情報を使って、前記指先によって前記所定の対象面上に入力されるタッチ操作を認識する認識手段と、
を備えることを特徴とする情報処理装置。
An image acquisition means for acquiring an input image reflecting position information in a space where a person inserts a hand and performs an operation;
Position detection for detecting position information of each of a plurality of fingertips of the person's hand based on the position information reflected in a part of the input image acquired by the image acquisition means in which the person's hand is reflected Means,
Using the relationship between the plurality of fingertips detected by the position detection unit, a specifying unit that specifies a fingertip that is a target of a process of determining whether the predetermined target surface is touched among the plurality of fingertips;
Using the position information detected by the position detecting unit and the position information of the touch target surface for the fingertip specified by the specifying unit, a touch operation input on the predetermined target surface by the finger tip is recognized. Recognition means;
An information processing apparatus comprising:
前記特定手段は、前記位置検出手段によって検出された前記複数の指先の位置情報によって、最も前記所定の対象面に近いことが示される指先を特定し、前記特定された指先からの距離に基づいて、さらに前記判定する処理の対象とする指先を特定する
ことを特徴とする請求項1に記載の情報処理装置。
The specifying means specifies a fingertip that is closest to the predetermined target surface based on position information of the plurality of fingertips detected by the position detecting means, and based on a distance from the specified fingertip The information processing apparatus according to claim 1, further specifying a fingertip that is a target of the determination process.
前記特定手段は、繰り返し取得される前記入力画像から前記位置検出手段によって検出された前記複数の指先の位置情報によって、最も前記所定の対象面に近づくスピードが速いことが示される指先を特定し、前記特定された指先のスピードと他の指先が前記所定の対象面に近づくスピードの相対的な関係に基づいて、さらに前記判定する処理の対象とする指先を特定する
ことを特徴とする請求項1又は2に記載の情報処理装置。
The specifying means specifies a fingertip that indicates that the speed of approaching the predetermined target surface is fastest according to position information of the plurality of fingertips detected by the position detecting means from the repeatedly acquired input image, 2. The fingertip as a target of the determination process is further specified based on a relative relationship between the speed of the specified fingertip and a speed at which another fingertip approaches the predetermined target surface. Or the information processing apparatus of 2.
前記認識手段は、前記判定する処理の対象となった指先のそれぞれと、前記所定の対象面との近接の程度に基づいて、前記指先によって前記所定の対象面がタッチされたかを判定することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。   The recognizing unit determines whether the predetermined target surface is touched by the fingertip based on a degree of proximity between each of the fingertips subjected to the determination process and the predetermined target surface. The information processing apparatus according to any one of claims 1 to 3, wherein the information processing apparatus is characterized in that: 前記認識手段の前記近接の程度を判定するための条件として、閾値を決定する決定手段をさらに備え、
前記認識手段は、前記位置検出手段によって検出された前記複数の指先のそれぞれの位置情報が、前記決定手段によって決定された閾値よりも前記所定の対象面に近接していることを表す場合、前記指先によって前記所定の対象面がタッチされたと判定する
ことを特徴とする請求項4に記載の情報処理装置。
As a condition for determining the degree of proximity of the recognition means, further comprising a determination means for determining a threshold value,
When the recognizing means indicates that the position information of each of the plurality of fingertips detected by the position detecting means is closer to the predetermined target surface than the threshold value determined by the determining means, The information processing apparatus according to claim 4, wherein it is determined that the predetermined target surface is touched by a fingertip.
前記認識手段は、前記所定の対象面にタッチした指先が複数存在する場合、該複数の指先によって入力されるマルチタッチ操作を認識することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。   6. The recognition unit according to claim 1, wherein when there are a plurality of fingertips touching the predetermined target surface, the recognition unit recognizes a multi-touch operation input by the plurality of fingertips. The information processing apparatus described. 前記入力画像は、前記空間を上方から見下ろす画角で撮像された距離画像であって、前記距離画像の各画素値には、前記所定の対象面からの高さに相当する方向の位置情報が反映されることを特徴とする
請求項1乃至6のいずれか1項に記載の情報処理装置。
The input image is a distance image captured at an angle of view looking down on the space from above, and each pixel value of the distance image includes position information in a direction corresponding to the height from the predetermined target surface. The information processing apparatus according to claim 1, wherein the information processing apparatus is reflected.
前記決定手段は、前記入力画像から抽出される1つの人の手に含まれる複数の指先に対して、各指先の位置情報の相対的な関係に基づいて前記条件を決定する
ことを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
The determination unit determines the condition based on a relative relationship of positional information of each fingertip with respect to a plurality of fingertips included in one person's hand extracted from the input image. The information processing apparatus according to any one of claims 1 to 7.
前記位置検出手段によって検出された複数の指先の種類を識別する識別手段を更に備え、
前記認識手段は、前記識別手段によって識別された特定の種類の指に対して、前記閾値を決定することを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
An identification means for identifying a plurality of types of fingertips detected by the position detection means;
The information processing apparatus according to claim 1, wherein the recognition unit determines the threshold value for a specific type of finger identified by the identification unit.
画像取得手段により、人が手を挿入して操作を行う空間内の位置情報が反映された入力画像を取得する画像取得工程と、
位置検出手段により、前記取得された入力画像のうち前記人の手が写る部分に反映された前記位置情報に基づいて、前記人の手のうちの複数の指先のそれぞれの位置情報を検出する位置検出工程と、
特定手段により、前記検出された前記複数の指先の関係を使って、前記複数の指先のうち前記所定の対象面にタッチしたかを判定する処理の対象とする指先を特定する特定工程と、
認識手段により、前記特定された指先について前記位置検出工程で検出された位置情報と、前記タッチ対象面の位置情報を使って、前記指先によって前記所定の対象面上に入力されるタッチ操作を認識する認識工程と、
を備えることを特徴とする情報処理装置の制御方法。
An image acquisition step of acquiring an input image reflecting position information in a space where a person inserts a hand and operates by an image acquisition means;
A position for detecting position information of each of a plurality of fingertips in the person's hand based on the position information reflected in a portion of the acquired input image in which the person's hand is captured by the position detecting means. A detection process;
A specifying step of specifying a fingertip that is a target of processing for determining whether the predetermined target surface is touched among the plurality of fingertips by using the relationship between the detected plurality of fingertips by an specifying unit;
Recognizing the touch operation input on the predetermined target surface by the fingertip using the position information detected in the position detection step and the position information of the touch target surface by the recognition means. A recognition process to
An information processing apparatus control method comprising:
コンピュータを、に、請求項1に記載された情報処理装置として機能させるプログラム。   A program for causing a computer to function as the information processing apparatus according to claim 1. 請求項11に記載されたプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。   A computer-readable storage medium storing the program according to claim 11.
JP2015168293A 2015-08-27 2015-08-27 Information processing apparatus, control method therefor, program, and storage medium Active JP6570376B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015168293A JP6570376B2 (en) 2015-08-27 2015-08-27 Information processing apparatus, control method therefor, program, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015168293A JP6570376B2 (en) 2015-08-27 2015-08-27 Information processing apparatus, control method therefor, program, and storage medium

Publications (3)

Publication Number Publication Date
JP2017045332A true JP2017045332A (en) 2017-03-02
JP2017045332A5 JP2017045332A5 (en) 2018-09-20
JP6570376B2 JP6570376B2 (en) 2019-09-04

Family

ID=58210538

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015168293A Active JP6570376B2 (en) 2015-08-27 2015-08-27 Information processing apparatus, control method therefor, program, and storage medium

Country Status (1)

Country Link
JP (1) JP6570376B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113531423A (en) * 2021-07-13 2021-10-22 读书郎教育科技有限公司 Interactive intelligent projection table lamp and method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11305895A (en) * 1998-04-21 1999-11-05 Toshiba Corp Information processor
JP2012108857A (en) * 2010-10-28 2012-06-07 Yoshihiro Wada Key input device, portable terminal equipped with the same, and program allowing portable terminal to function as input device
US20140029789A1 (en) * 2012-07-30 2014-01-30 Bruno Delean Method and system for vision based interfacing with a computer
JP2015102983A (en) * 2013-11-25 2015-06-04 三菱電機株式会社 3d dynamic input device
JP2015519624A (en) * 2012-02-24 2015-07-09 トーマス ジェイ モスカリッロMOSCARILLO, Thomas, J. Gesture recognition apparatus and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11305895A (en) * 1998-04-21 1999-11-05 Toshiba Corp Information processor
JP2012108857A (en) * 2010-10-28 2012-06-07 Yoshihiro Wada Key input device, portable terminal equipped with the same, and program allowing portable terminal to function as input device
JP2015519624A (en) * 2012-02-24 2015-07-09 トーマス ジェイ モスカリッロMOSCARILLO, Thomas, J. Gesture recognition apparatus and method
US20140029789A1 (en) * 2012-07-30 2014-01-30 Bruno Delean Method and system for vision based interfacing with a computer
JP2015102983A (en) * 2013-11-25 2015-06-04 三菱電機株式会社 3d dynamic input device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113531423A (en) * 2021-07-13 2021-10-22 读书郎教育科技有限公司 Interactive intelligent projection table lamp and method

Also Published As

Publication number Publication date
JP6570376B2 (en) 2019-09-04

Similar Documents

Publication Publication Date Title
US8933882B2 (en) User centric interface for interaction with visual display that recognizes user intentions
US9756265B2 (en) Information processing apparatus recognizing certain object in captured image, and method for controlling the same
US9916043B2 (en) Information processing apparatus for recognizing user operation based on an image
JP6539816B2 (en) Multi-modal gesture based interactive system and method using one single sensing system
WO2017029749A1 (en) Information processing device, control method therefor, program, and storage medium
JP2016520946A (en) Human versus computer natural 3D hand gesture based navigation method
JP6452456B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP6562752B2 (en) Information processing apparatus, control method therefor, program, and storage medium
US10042426B2 (en) Information processing apparatus for detecting object from image, method for controlling the apparatus, and storage medium
JP2015022624A (en) Information processing apparatus, control method thereof, computer program, and storage medium
US10379678B2 (en) Information processing device, operation detection method, and storage medium that determine the position of an operation object in a three-dimensional space based on a histogram
US20160093055A1 (en) Information processing apparatus, method for controlling same, and storage medium
JP2017219942A (en) Contact detection device, projector device, electronic blackboard system, digital signage device, projector device, contact detection method, program and recording medium
JP2017084307A (en) Information processing device, control method therefor, program, and recording medium
JP6570376B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP6555958B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP6579866B2 (en) Information processing apparatus, control method therefor, program, and storage medium
US10416814B2 (en) Information processing apparatus to display an image on a flat surface, method of controlling the same, and storage medium
JP6618301B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP4901670B2 (en) Electronic board system
KR102107182B1 (en) Hand Gesture Recognition System and Method
US20200167005A1 (en) Recognition device and recognition method
JP2018181169A (en) Information processor, and information processor control method, computer program, and storage medium
US11789543B2 (en) Information processing apparatus and information processing method
JP2017228216A (en) Information processing apparatus, control method therefor, program, and storage medium

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180807

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180807

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190510

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190806

R151 Written notification of patent or utility model registration

Ref document number: 6570376

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151