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

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

Info

Publication number
JP6555958B2
JP6555958B2 JP2015144405A JP2015144405A JP6555958B2 JP 6555958 B2 JP6555958 B2 JP 6555958B2 JP 2015144405 A JP2015144405 A JP 2015144405A JP 2015144405 A JP2015144405 A JP 2015144405A JP 6555958 B2 JP6555958 B2 JP 6555958B2
Authority
JP
Japan
Prior art keywords
image
coordinate system
area
position information
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2015144405A
Other languages
Japanese (ja)
Other versions
JP2017027311A5 (en
JP2017027311A (en
Inventor
久保山 英生
英生 久保山
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 JP2015144405A priority Critical patent/JP6555958B2/en
Publication of JP2017027311A publication Critical patent/JP2017027311A/en
Publication of JP2017027311A5 publication Critical patent/JP2017027311A5/ja
Application granted granted Critical
Publication of JP6555958B2 publication Critical patent/JP6555958B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、撮像された画像に基づいて操作者の操作を認識する技術に関する。   The present invention relates to a technique for recognizing an operator's operation based on a captured image.

可視光カメラや赤外線カメラ、又は距離画像センサ等によって得られた画像から、ユーザの手など所定の物体が写る領域を抽出し、その動きや位置に応じて空間ジェスチャによるUI(ユーザインターフェース)操作を認識する技術が広まりつつある。特に、テーブルのような操作面に画像やUIを投影し、その画像やUIを触れて操作するテーブルトップインタフェースにも、タッチパネルではなく画像に基づくジェスチャ認識技術が使用され始めている。   A region in which a predetermined object such as a user's hand is captured is extracted from an image obtained by a visible light camera, an infrared camera, a distance image sensor, or the like, and a UI (user interface) operation by a space gesture is performed according to the movement and position. Recognition technology is spreading. In particular, a gesture recognition technique based on an image instead of a touch panel has begun to be used for a table top interface for projecting an image or UI on an operation surface such as a table and touching and operating the image or UI.

特許文献1では、手が存在する空間を撮像した映像から所定の時間間隔毎で取得した2フレーム分の画像間の差分に基づいて検出した手の形状をトラッキングして、ジェスチャ操作を認識することが開示されている。このようなジェスチャ認識技術には、実空間の三次元位置座標と、空間を撮像した画像内の位置情報との対応関係を定義するキャリブレーションが重要となる。   In Patent Document 1, a gesture operation is recognized by tracking the shape of a hand detected based on a difference between two frames of images acquired at predetermined time intervals from an image of a space in which a hand is present. Is disclosed. For such gesture recognition technology, calibration that defines the correspondence between the three-dimensional position coordinates of the real space and the position information in the image obtained by imaging the space is important.

特許文献2では、実空間に定義した世界座標と、カメラが撮影した画像内に定義される画像座標との対応関係に基づいて、カメラの最適なパラメータを定める場合に、対応関係の誤りを検出してユーザに提示することが開示される。   In Patent Document 2, when an optimum camera parameter is determined based on the correspondence between world coordinates defined in real space and image coordinates defined in an image captured by the camera, an error in correspondence is detected. And presenting to the user.

特開2013−257686号公報JP2013-257686A 特開2006−67272号公報JP 2006-67272 A

現実的には、ハードウェアの設置環境などによって、実空間での三次元位置を示す座標(世界座標)と撮像画像内に定義される座標との間の座標変換には変換誤差が生じる。撮像部の撮像範囲よりもテーブル等の操作面が小さい場合など、操作面の境界部分が画像の中に写り込む場合、座標の変換誤差によって操作面の境界にずれが生じ得る。その結果、境界付近での操作体の検出が安定的に行えなかったり、操作体による操作面のタッチを誤検出したりする可能性があった。   Actually, a conversion error occurs in the coordinate conversion between the coordinates (world coordinates) indicating the three-dimensional position in the real space and the coordinates defined in the captured image depending on the installation environment of the hardware. When the operation surface such as a table is smaller than the image capturing range of the image capturing unit or the like, when the boundary portion of the operation surface appears in the image, the operation surface boundary may be shifted due to a coordinate conversion error. As a result, there is a possibility that the operation tool cannot be stably detected in the vicinity of the boundary, or the touch of the operation surface by the operation tool is erroneously detected.

本発明は、上記課題を考慮したものであり、背景の条件の異なる複数の領域を含む空間内の物体を、撮像画像を用いての認識する処理の精度を向上させることを目的とする。   The present invention has been made in consideration of the above-described problems, and an object of the present invention is to improve the accuracy of processing for recognizing an object in a space including a plurality of regions having different background conditions using a captured image.

上記目的を達するために、本発明の情報処理装置は、第1座標系が定義された空間を撮像した画像を取得する画像取得手段と、前記第1座標系における位置情報を、前記画像取得手段によって取得される画像内に定義された第2座標系における位置情報に変換する変換手段と、前記第1座標系における位置情報を用いて表された、前記空間に含まれる所定の操作面の少なくとも一部に設定される操作領域の情報を取得する操作領域取得手段と、前記変換手段が前記操作領域取得手段によって取得された情報を変換した結果として得られる前記第2座標系における位置情報を使って、前記画像取得手段によって取得された画像内で前記操作領域の境界の周囲の画素群に含まれる各画素を探索し、前記各画素に前記操作面が被写体として撮像されているかに基づいて、前記第2座標系において前記操作領域を表す位置情報を決定する操作領域決定手段と、
を備える。
In order to achieve the above object, an information processing apparatus according to the present invention includes an image acquisition unit that acquires an image of a space in which a first coordinate system is defined, and position information in the first coordinate system. Conversion means for converting into position information in the second coordinate system defined in the image acquired by the method, and at least a predetermined operation surface included in the space represented by using the position information in the first coordinate system An operation region acquisition unit that acquires information on an operation region that is set in part, and position information in the second coordinate system obtained as a result of the conversion unit converting the information acquired by the operation region acquisition unit Te, wherein searching the pixels included within the obtained image by the image obtaining means to the pixel group around a boundary of the operating area, the operating surface is captured as a subject to the each pixel Based on dolphins, and the operation region determining means for determining the position information representing the operation area in said second coordinate system,
Is provided.

本発明によれば、背景の条件の異なる複数の領域を含む空間内の物体を、撮像画像を用い認識する処理の精度が向上する。 According to the present invention, the accuracy of processing for recognizing an object in a space including a plurality of regions having different background conditions using a captured image is improved.

情報処理装置100を利用するシステムの一例を表す図。1 is a diagram illustrating an example of a system that uses an information processing apparatus 100. FIG. 情報処理装置のハードウェア構成、及び機能構成の一例を表すブロック図。2 is a block diagram illustrating an example of a hardware configuration and a functional configuration of an information processing device. FIG. 操作領域決定処理の流れの一例を表すフローチャート。The flowchart showing an example of the flow of an operation area | region determination process. 情報処理装置100が取得する操作領域データの一例を表す図。The figure showing an example of the operation area data which information processor 100 acquires. 操作面と操作領域が一致する場合の補正処理の様子を表す図。The figure showing the mode of a correction process in case an operation surface and an operation area correspond. 操作面の一部の距離値が検出されない場合の補正処理の様子を表す図。The figure showing the mode of the correction | amendment process when some distance values of an operation surface are not detected. 操作面と操作領域が一致しない場合の補正処理の様子を表す図。The figure showing the mode of a correction process when an operation surface and an operation area | region do not correspond. 操作検出処理の流れの一例を表すフローチャート。The flowchart showing an example of the flow of an operation detection process. 補正後に検出される移動領域の一例を表す図。The figure showing an example of the movement area | region detected after correction | amendment. 操作面の高さが位置により異なる場合に取得される操作領域データの一例を表す図。The figure showing an example of the operation area | region data acquired when the height of an operation surface changes with positions.

<第1の実施形態>
まず、第1の実施形態として、テーブルトップインタフェースシステムのテーブル面に投影されたアイテムに対し操作者が行うタッチ操作を認識する処理の例を説明する。
<First Embodiment>
First, as a first embodiment, an example of processing for recognizing a touch operation performed by an operator on an item projected on a table surface of a table top interface system will be described.

図1(a)は、本実施形態に係る情報処理装置100を設置したテーブルトップインタフェースシステムの外観の一例である。操作面101は、テーブルトップインタフェースのテーブル部分であり、操作者は、操作面101をタッチすることでタッチ操作を入力することが可能である。本実施形態では、操作面101の上方に、操作面を見下ろすようにして距離画像センサ102が設置される。距離画像とは、各画素の値に、当該距離画像を撮像する撮像手段の基準位置(例えばレンズ中心など)から、当該画素に撮像された被写体表面までの距離Dに対応する情報が反映された画像である。各画素値の大きさが、撮像手段から見た深さに相当することから、距離画像センサを深度センサ(デプスセンサ)と呼ぶこともある。本実施形態において、距離画像センサ102が撮像する距離画像の画素値には、距離画像センサ102から、操作面101あるいはその上方に存在する物体表面までの距離Dの大きさが反映される。撮像された距離画像は、情報処理装置100に入力画像として入力される。情報処理装置100は、入力画像を解析することで操作者の手105の三次元位置を取得し、入力される操作を認識する。従って操作者は、操作空間(操作面101とその周囲を含み、距離画像センサ102に撮像可能な空間)のうち、距離画像センサ102によって撮像可能な範囲において、手などの所定の物体を動かすことにより空間ジェスチャ操作を入力することが可能である。本実施形態では、赤外光の反射パターン(または反射時間)によって距離情報を取得する方式(Time-of-Flight方式)のセンサを利用する。ただし、例えばステレオカメラシステムや赤外光発光素子と赤外カメラを設置することで入力画像を得ることも可能である。   FIG. 1A is an example of the appearance of a tabletop interface system in which the information processing apparatus 100 according to the present embodiment is installed. The operation surface 101 is a table portion of the table top interface, and the operator can input a touch operation by touching the operation surface 101. In the present embodiment, the distance image sensor 102 is installed above the operation surface 101 so as to look down at the operation surface. In the distance image, information corresponding to the distance D from the reference position (for example, the center of the lens) of the imaging unit that captures the distance image to the object surface captured by the pixel is reflected in the value of each pixel. It is an image. Since the size of each pixel value corresponds to the depth viewed from the imaging means, the distance image sensor may be referred to as a depth sensor (depth sensor). In the present embodiment, the pixel value of the distance image captured by the distance image sensor 102 reflects the magnitude of the distance D from the distance image sensor 102 to the operation surface 101 or the object surface existing above it. The captured distance image is input to the information processing apparatus 100 as an input image. The information processing apparatus 100 acquires the three-dimensional position of the operator's hand 105 by analyzing the input image, and recognizes the input operation. Accordingly, the operator moves a predetermined object such as a hand within a range that can be imaged by the distance image sensor 102 in an operation space (a space that includes the operation surface 101 and its periphery and can be imaged by the distance image sensor 102). It is possible to input a space gesture operation. In the present embodiment, a sensor (Time-of-Flight system) that acquires distance information using a reflection pattern (or reflection time) of infrared light is used. However, for example, an input image can be obtained by installing a stereo camera system or an infrared light emitting element and an infrared camera.

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

プロジェクタ104は、操作面101の上面に画像の投影を行う。上述したように、本実施形態では、手105の検出および操作の認識には、距離画像センサ102で取得した距離画像を用いる。距離画像を用いることで、プロジェクタ104の投影光の影響で操作者の手の色が変化しても影響を受けにくいという利点がある。本システムの表示装置は、プロジェクタ104に替えて、操作面101を液晶ディスプレイとするなどで構成することもできる。その場合、可視光画像からの肌色領域を検出するなどして画像から人の手を検出する方式を用いても、投影光の影響は受けずに手の検出が可能である。可視光画像から移動領域を検出する場合、可視光カメラ103を入力画像の取得手段として兼用してもよい。   The projector 104 projects an image on the upper surface of the operation surface 101. As described above, in this embodiment, the distance image acquired by the distance image sensor 102 is used for detecting the hand 105 and recognizing the operation. By using the distance image, there is an advantage that even if the color of the operator's hand changes due to the projection light of the projector 104, the distance image is hardly affected. The display device of the present system can be configured by using the operation surface 101 as a liquid crystal display instead of the projector 104. In that case, even if a method of detecting a human hand from an image by detecting a skin color region from a visible light image, the hand can be detected without being affected by the projection light. When detecting a moving area from a visible light image, the visible light camera 103 may also be used as an input image acquisition unit.

なお、操作面101を上方から見た画像が得られる構成であれば、必ずしも距離画像センサ102及び可視光カメラ103自体が上方に設置されている必要はない。例えばミラーを用いて反射光を撮像するように構成しても構わない。同様にプロジェクタ104も、図1(a)の例では、斜め上方から見下ろすように操作面101上への投影を行う。しかしながら、図示されたものとは異なる方向に向けて投影された投影光を、ミラーなどを利用して操作面101に導いてもよい。本実施形態を、操作面101が鉛直方向に沿って設置されたシステムで利用される距離画像センサやプロジェクタに適用する場合でも、同様にミラーを含む光学系を利用可能である。   Note that the distance image sensor 102 and the visible light camera 103 themselves are not necessarily installed above as long as an image obtained by viewing the operation surface 101 from above is obtained. For example, you may comprise so that reflected light may be imaged using a mirror. Similarly, in the example of FIG. 1A, the projector 104 also projects onto the operation surface 101 so as to look down from diagonally above. However, the projection light projected in a direction different from that shown in the figure may be guided to the operation surface 101 using a mirror or the like. Even when this embodiment is applied to a distance image sensor or a projector used in a system in which the operation surface 101 is installed along the vertical direction, an optical system including a mirror can be similarly used.

本実施形態では、操作空間(操作面101上の三次元空間)に図1に示すX、Y、Z軸を定義し、位置情報を扱う。図1(a)の例では、点106を座標軸の原点とする。ここでは一例として、テーブルの上面に平行な二次元がXY平面、テーブル上面に直交し上方に伸びる方向をZ軸の正方向としている。本実施形態では、Z軸方向は、世界座標系での高さ方向に相当する。しかしながら本実施形態は、ホワイトボードや壁面など、水平ではない面を操作面101とするシステムにも適用可能である。その場合、Z軸方向の値は必ずしも高さを表すものではないが、少なくとも操作面と交差する方向の座標軸に相当する。   In this embodiment, the X, Y, and Z axes shown in FIG. 1 are defined in the operation space (three-dimensional space on the operation surface 101), and position information is handled. In the example of FIG. 1A, the point 106 is set as the origin of the coordinate axes. Here, as an example, the two-dimensional parallel to the upper surface of the table is the XY plane, and the direction perpendicular to the table upper surface and extending upward is the positive direction of the Z axis. In the present embodiment, the Z-axis direction corresponds to the height direction in the world coordinate system. However, this embodiment can also be applied to a system in which a non-horizontal surface such as a whiteboard or a wall surface is used as the operation surface 101. In this case, the value in the Z-axis direction does not necessarily represent the height, but at least corresponds to the coordinate axis in the direction intersecting the operation surface.

図1(b)は、距離画像センサ102によって撮像される距離画像と、画像内に定義される座標系を表す図である。画像108は、距離画像センサ102によって撮像される距離画像の内容の一例を表す。斜線で示す領域109は、距離画像108に写っている操作者の手105の像が撮像された領域である。以下では単に手領域109という。点110は、手領域109から指先位置として検出された画素であり、操作者が手指を使って指し示していると推定される位置の座標である。   FIG. 1B illustrates a distance image captured by the distance image sensor 102 and a coordinate system defined in the image. An image 108 represents an example of the content of a distance image captured by the distance image sensor 102. A hatched area 109 is an area in which an image of the operator's hand 105 shown in the distance image 108 is captured. Hereinafter, it is simply referred to as a hand region 109. A point 110 is a pixel detected as a fingertip position from the hand region 109, and is a coordinate of a position estimated that the operator is pointing with the finger.

本システムは、上方から照射された赤外光が被写体表面によって反射された反射光を撮像し、撮像された反射光の強度が、距離画像センサ102の光源から被写体表面までの距離Dの大きさを表すとみなす。そして距離画像の各画素には、距離画像センサ102から被写体までの距離に対応する値が、画素値dとして保持される。画素値dは、図1(a)に示した距離Dの大きさが反映されている。従って、本来は画素値dが大きい(反射光が強く、明るい)画素ほど距離画像センサ102に近い位置に、画素値dが小さい(反射光が弱く、暗い)画素ほど距離画像センサ102から遠い位置に、被写体が存在すること示す。ただし、図1(b)では簡略化し、被写体のエッジのみを明示する。本実施形態で取得される距離画像には、図1(b)に示すx軸及びy軸と、画素値dによって定義される座標系が定義される。例えば、指先位置110の入力画像内の位置座標が(x,y,d)で表される。一例として、入力画像の解像度は640[dot]×450[dot]とする。   In this system, infrared light irradiated from above is imaged by reflected light reflected by the subject surface, and the intensity of the reflected light is the magnitude of the distance D from the light source of the distance image sensor 102 to the subject surface. Is assumed to represent. In each pixel of the distance image, a value corresponding to the distance from the distance image sensor 102 to the subject is held as a pixel value d. The pixel value d reflects the magnitude of the distance D shown in FIG. Accordingly, a pixel that is originally larger in pixel value d (reflected light is stronger and brighter) is closer to the distance image sensor 102, and a pixel that is smaller in pixel value d (reflected light is weaker and darker) is farther from the distance image sensor 102. Indicates that the subject is present. However, in FIG. 1B, it is simplified and only the edge of the subject is clearly shown. In the distance image acquired in the present embodiment, a coordinate system defined by the x-axis and y-axis shown in FIG. 1B and the pixel value d is defined. For example, the position coordinates in the input image of the fingertip position 110 are represented by (x, y, d). As an example, the resolution of the input image is 640 [dot] × 450 [dot].

本実施形態では、図1(a)で示す操作空間内での座標(X,Y,Z)を、図1(b)で示す入力画像内の画像内座標(x,y)に座標変換するため、入力画像中の被写体の位置を、実空間における位置情報と同等の情報として扱うことができる。ここで画像108のうち、台形領域111は、図1(a)の操作面101の表面が撮像された領域である。操作面101の全面を操作領域とするか、あるいは操作面101の一部を操作領域とするかは、システムで実行されるアプリケーションや操作面101の形状によって予め決定される。操作領域とは、操作面101上で、タッチ操作やジェスチャ操作を認識可能とする領域である。さらに本実施形態では、プロジェクタ104によって画像を投影することが可能な操作面101上の範囲が、操作領域に一致するとする。ただし、操作面101の全面が操作領域とされた場合であっても、操作領域のエッジを情報処理装置100が自動で検出することによって操作領域の境界位置を取得することは困難である場合が多い。距離画像センサ102の位置や角度の微妙なずれ等の原因により、検出結果に誤差が発生するためである。従って、本実施形態の情報処理装置100は、ユーザによる入力により、操作空間に定義された三次元位置情報を示す座標(X,Y,Z)を利用して定義された操作領域の境界情報を取得する。   In the present embodiment, the coordinates (X, Y, Z) in the operation space shown in FIG. 1A are coordinate-converted into the in-image coordinates (x, y) in the input image shown in FIG. Therefore, the position of the subject in the input image can be handled as information equivalent to the position information in the real space. Here, in the image 108, the trapezoidal region 111 is a region where the surface of the operation surface 101 in FIG. Whether the entire operation surface 101 is used as the operation region or a part of the operation surface 101 is used as the operation region is determined in advance according to the application executed in the system and the shape of the operation surface 101. The operation area is an area in which a touch operation or a gesture operation can be recognized on the operation surface 101. Furthermore, in this embodiment, it is assumed that the range on the operation surface 101 in which an image can be projected by the projector 104 matches the operation area. However, even when the entire operation surface 101 is an operation region, it may be difficult for the information processing apparatus 100 to automatically detect the edge of the operation region to acquire the boundary position of the operation region. Many. This is because an error occurs in the detection result due to a slight deviation in the position and angle of the distance image sensor 102. Therefore, the information processing apparatus 100 according to the present embodiment receives the boundary information of the operation area defined by using the coordinates (X, Y, Z) indicating the three-dimensional position information defined in the operation space by the input by the user. get.

本実施形態では、操作領域の境界を表す情報を、予め定められたパラメータを使うことで、操作空間内に定義された三次元位置情報から、操作空間を撮像した画像内の画素の位置を表す位置情報に変換した後、変換誤差を特定する。具体的には、変換結果として得られた画像内の画素の位置を表す位置情報によって、操作領域の境界付近であると示される画素を、実際に撮像された画像内から特定し、その画素に、実際に操作面101が撮像されているかを判定する。このような判定を、境界を囲む画素群の全体に対して行い、実際に操作面101が撮像されていると判定された画素を、操作領域の内部に属する画素であるとみなす。その結果として、操作面101が写っていると判定された画素群に相当する部分を、操作領域内と定義しなおす。さらに、定義情報の変換結果として得ていた操作領域の境界情報と、実際に撮像した画像から検出した操作面の境界情報との誤差(ずれの方向および量)を用いて、その後の変換処理について補正を加える。   In the present embodiment, the information representing the boundary of the operation area is represented by using a predetermined parameter to represent the position of the pixel in the image obtained by imaging the operation space from the three-dimensional position information defined in the operation space. After conversion into position information, a conversion error is specified. Specifically, the position information indicating the position of the pixel in the image obtained as a conversion result identifies a pixel that is indicated near the boundary of the operation area from within the actually captured image, and Then, it is determined whether the operation surface 101 is actually imaged. Such a determination is performed on the entire pixel group surrounding the boundary, and a pixel for which it is determined that the operation surface 101 is actually imaged is regarded as a pixel belonging to the inside of the operation region. As a result, the portion corresponding to the pixel group determined to include the operation surface 101 is redefined as the operation region. Furthermore, with regard to the subsequent conversion processing using the error (direction and amount of deviation) between the boundary information of the operation area obtained as the conversion result of the definition information and the boundary information of the operation surface detected from the actually captured image Add corrections.

図2(a)は、本実施形態に係る情報処理装置100を含むテーブルトップインタフェースのハードウェア構成図である。中央処理ユニット(CPU)200は、RAM202をワークメモリとして、ROM201や記憶装置203に格納されたOSやプログラムを実行して、各種処理の演算や論理判断などを行い、システムバス204に接続された各構成を制御する。記憶装置203は、ハードディスクドライブや各種インタフェースによって接続された外部記憶装置などであり、実施形態の操作認識処理にかかるプログラムや各種データを記憶する。距離画像センサ102は、CPU200の制御に従い、操作面101上の空間の距離画像を撮像し、撮影した距離画像をシステムバス204に出力する。本実施形態では、距離画像の取得方法として、環境光やテーブル面の表示の影響が小さい赤外パターン投影方式を基に説明するが、用途に応じて視差方式や赤外光の反射時間を利用する方式などを利用することも可能である。プロジェクタ104は、CPU200の制御に従い、テーブルに操作対象となる画像アイテムを投影表示する。   FIG. 2A is a hardware configuration diagram of a tabletop interface including the information processing apparatus 100 according to the present embodiment. The central processing unit (CPU) 200 is connected to the system bus 204 by using the RAM 202 as a work memory, executing an OS and a program stored in the ROM 201 and the storage device 203, performing various processing calculations and logical determinations, and the like. Control each configuration. The storage device 203 is a hard disk drive, an external storage device connected by various interfaces, and the like, and stores programs and various data related to the operation recognition processing of the embodiment. The distance image sensor 102 captures a distance image of the space on the operation surface 101 under the control of the CPU 200 and outputs the captured distance image to the system bus 204. In this embodiment, the distance image acquisition method will be described based on an infrared pattern projection method that is less affected by ambient light or table surface display. However, a parallax method or infrared light reflection time is used depending on the application. It is also possible to use a method to do so. The projector 104 projects and displays an image item to be operated on the table according to the control of the CPU 200.

なお上述したシステムでは、可視光カメラ103、距離画像センサ102、プロジェクタ104はそれぞれ情報処理装置100に入出力用のインタフェースを介して接続された外部装置であり、情報処理装置100と協働して情報処理システムを構成する。ただし、これらのデバイスは、情報処理装置100に一体化されていても構わない。   In the above-described system, the visible light camera 103, the distance image sensor 102, and the projector 104 are external devices connected to the information processing apparatus 100 via an input / output interface, and cooperate with the information processing apparatus 100. Configure an information processing system. However, these devices may be integrated with the information processing apparatus 100.

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

画像取得部210は、距離画像センサ102によって撮像された距離画像を、入力画像として一定時間毎に取得し、RAM202に随時保持する。なお画像取得部210が取得し、各機能部とやりとりする対象は、実際には画像データに対応する信号であるが、本明細書では単に「距離画像を取得する」あるいは「入力画像を取得する」として説明する。   The image acquisition unit 210 acquires a distance image captured by the distance image sensor 102 as an input image at regular intervals, and stores the acquired distance image in the RAM 202 as needed. The object acquired by the image acquisition unit 210 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”. ".

移動領域検出部211は、距離画像取得部210によって取得された入力画像の各画素について、閾値判定やノイズ低減処理を施し、距離画像から1以上移動領域を抽出する。本実施形態の場合は距離画像の画素値によって、背景である操作面101よりも高い位置に存在することが示される被写体が写る領域で、かつ、画像端に接している領域を手領域として抽出する。ただし、このような背景差分法に限らず、フレーム間差分等の方法でも、移動領域を検出することもできる。また、可視光カメラ103を入力画像の取得手段として兼用し、可視光画像から肌色領域を探索することで移動領域を検出することも可能である。操作検出部212は、周期的に取得される入力画像から、移動領域検出部211によって検出される移動領域の位置、形状の変化に基づいて、情報処理装置100に入力される操作を認識する。   The movement area detection unit 211 performs threshold determination and noise reduction processing on each pixel of the input image acquired by the distance image acquisition unit 210, and extracts one or more movement areas from the distance image. In the case of the present embodiment, an area in which a subject is shown to be present at a position higher than the operation surface 101 that is the background by the pixel value of the distance image and an area in contact with the edge of the image is extracted as a hand area. To do. However, the moving region can be detected not only by such a background difference method but also by a method such as inter-frame difference. It is also possible to detect the moving region by searching the skin color region from the visible light image by using the visible light camera 103 also as an input image acquisition unit. The operation detection unit 212 recognizes an operation input to the information processing apparatus 100 based on a change in the position and shape of the moving area detected by the moving area detection unit 211 from the periodically acquired input image.

操作領域取得部213は、操作空間に定義された三次元座標系を利用して定義された操作領域の情報を取得する。本実施形態では、システムの設置時のユーザ入力によって操作領域の情報が取得されるとする。ただし、操作領域の情報は、外部装置や記憶装置に記憶された履歴情報や外部入力によって、操作領域の境界情報を取得しても構わない。座標変換部214は、操作空間の三次元座標系における座標と、入力画像内に定義される画像座標系での座標情報に変換する。また逆に、入力画像内に定義される画像座標系での座標情報を、操作空間の三次元座標系における座標に変換するという相互の変換が可能である。本実施形態の座標変換部214は、操作領域取得部213によって取得された操作領域を表す座標情報を、入力画像内の位置を表す座標情報に変換することで、画像内での操作領域の位置情報を得る。また、画像取得部210によって取得された入力画像の内容から検出される位置情報を、操作空間に定義される三次元座標に変換することで、操作物体の位置などの位置情報を得ることができる。例えば、入力画像から検出されるユーザの指先位置の位置情報を、操作空間内の三次元位置情報に変換した結果を取得する。また、移動領域が含まれない入力画像から得られる位置情報を変換することで、操作面101の境界情報の実測値を得る。この変換についての詳細は後述する。   The operation area acquisition unit 213 acquires information on the operation area defined using the three-dimensional coordinate system defined in the operation space. In the present embodiment, it is assumed that information on the operation area is acquired by a user input when the system is installed. However, the operation region boundary information may be acquired from history information stored in an external device or a storage device or external input. The coordinate conversion unit 214 converts coordinates in the three-dimensional coordinate system of the operation space and coordinate information in the image coordinate system defined in the input image. Conversely, mutual conversion is possible in which coordinate information in the image coordinate system defined in the input image is converted into coordinates in the three-dimensional coordinate system of the operation space. The coordinate conversion unit 214 according to the present embodiment converts the coordinate information representing the operation region acquired by the operation region acquisition unit 213 into coordinate information representing the position in the input image, so that the position of the operation region in the image get information. Also, by converting the position information detected from the content of the input image acquired by the image acquisition unit 210 into the three-dimensional coordinates defined in the operation space, position information such as the position of the operation object can be obtained. . For example, the result of converting position information of the user's fingertip position detected from the input image into three-dimensional position information in the operation space is acquired. Moreover, the actual value of the boundary information of the operation surface 101 is obtained by converting the position information obtained from the input image not including the moving area. Details of this conversion will be described later.

操作領域決定部215は、画像取得部210によって取得された入力画像中での操作領域の境界周辺に操作面101が被写体として写っているかを判定する。その際、入力画像中での操作領域の境界周辺を探索するために、操作領域取得部213が取得した操作領域の情報を、座標変換部214が変換した結果として得られた画像座標系での操作領域の情報を用いる。操作領域決定部215は、まず変換部214による変換結果から入力画像中で操作領域の周囲にあたる画素群を特定する。そして、当該画素群の各画素の、画像中に定義された座標系での位置情報を変換部214により変換した結果から、操作空間に定義された座標系での高さ情報(Z座標)と、操作面101の高さを表すZ座標の差分が小さいかを判定する。操作面101の高さとの差が基準値(例えば所定の閾値)より小さいZ座標が得られる画素には、操作面101が被写体として写っていると判定されることになる。操作領域決定部215は、入力画像中の、操作面101が写っていると判定された画素は操作領域の内部であって、操作面101が写っていると判定されない画素は操作領域の外部であるとして、操作領域の境界を定義する情報を決定する。決定した操作領域の情報は、RAM202に保持され、操作領域内での操作体による操作を認識する処理で参照される。   The operation region determination unit 215 determines whether the operation surface 101 is captured as a subject around the boundary of the operation region in the input image acquired by the image acquisition unit 210. At that time, in order to search for the vicinity of the boundary of the operation area in the input image, the information of the operation area acquired by the operation area acquisition unit 213 is converted into the image coordinate system obtained as a result of the conversion by the coordinate conversion unit 214. Information on the operation area is used. The operation region determination unit 215 first identifies a pixel group that surrounds the operation region in the input image from the conversion result by the conversion unit 214. Then, the height information (Z coordinate) in the coordinate system defined in the operation space is obtained from the result of converting the position information in the coordinate system defined in the image of each pixel of the pixel group by the conversion unit 214. Then, it is determined whether or not the difference between the Z coordinates representing the height of the operation surface 101 is small. It is determined that the operation surface 101 is captured as a subject in a pixel from which a Z coordinate whose difference from the height of the operation surface 101 is smaller than a reference value (for example, a predetermined threshold) is obtained. The operation area determination unit 215 determines that pixels in the input image that are determined to include the operation surface 101 are inside the operation area and pixels that are not determined to include the operation surface 101 are outside the operation area. If there is, information that defines the boundary of the operation area is determined. Information on the determined operation area is stored in the RAM 202 and is referred to in processing for recognizing an operation by an operating body in the operation area.

補正部216は、操作領域決定部215による、画素毎の判定の結果に基づいて、変換部214の変換処理に生じている誤差を補正する。補正部216は、操作領域決定部215によって操作面101が被写体として写っていると判定された画素と、操作面101が被写体として写っていると判定されない画素との境界を、操作領域の境界として決定する。ユーザ入力によって入力された位置情報の変換結果との差分が、変換誤差として特定される。例えば、誤差によって座標のずれが生じている方向やその量を特定する。本実施形態では、補正部216は、操作検出部212による操作の認識の根拠となる位置情報に、誤差に基づく補正を加える。なお、本実施形態では、座標変換部214の変換結果として得られる操作領域の位置情報をシフトさせることで補正を加えるが、変換部214に対して、パラメータを調整させることによって補正を行うとしてもよい。   The correction unit 216 corrects an error occurring in the conversion process of the conversion unit 214 based on the determination result for each pixel by the operation region determination unit 215. The correction unit 216 uses, as the boundary of the operation region, the boundary between the pixel that is determined by the operation region determination unit 215 that the operation surface 101 is captured as the subject and the pixel that is not determined that the operation surface 101 is captured as the subject. decide. A difference from the conversion result of the position information input by the user input is specified as a conversion error. For example, the direction and the amount in which the coordinate shift is caused by the error are specified. In the present embodiment, the correction unit 216 adds correction based on the error to the position information that is the basis for the operation recognition by the operation detection unit 212. In the present embodiment, correction is performed by shifting the position information of the operation region obtained as a conversion result of the coordinate conversion unit 214. However, even if correction is performed by adjusting the parameter to the conversion unit 214, the correction may be performed. Good.

出力制御部217は、ROM201や記憶装置203に記憶された情報を用いて、本実施形態の表示部であるプロジェクタ104によってテーブル101上に投影させる画像を生成し、出力する。例えば、マルチタッチ操作の認識結果に基づいて、表示中の画像の少なくとも一部に対して、拡大/縮小、回転などの変形を施し、表示部に出力させる。また例えば、操作領域決定部215によって決定された操作領域に合わせて、プロジェクタ104による投影が行われる範囲を変更してもよい。出力された画像は、プロジェクタ104によって、操作面であるテーブル101上に投影される。   The output control unit 217 uses the information stored in the ROM 201 or the storage device 203 to generate and output an image to be projected on the table 101 by the projector 104 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. Further, for example, the range in which the projection by the projector 104 is performed may be changed according to the operation region determined by the operation region determination unit 215. The output image is projected on the table 101 which is an operation surface by the projector 104.

図3のフローチャートは、本実施形態で実行される、操作領域決定処理の流れを表す。図3のフローチャートの処理は、情報処理装置100の設置時に、キャリブレーションの一部として実行される。また、情報処理装置100の起動時に、操作を検出する処理の前段階として、図3のフローチャートの処理が実行されてもよい。   The flowchart of FIG. 3 represents the flow of the operation area | region determination process performed by this embodiment. 3 is executed as part of calibration when the information processing apparatus 100 is installed. Further, when the information processing apparatus 100 is activated, the process of the flowchart of FIG. 3 may be executed as a pre-stage of the process of detecting an operation.

まずステップS301において、操作領域取得部213が、実空間に定義された座標系での操作領域の情報を取得する。操作領域の情報は、操作領域の境界を定義する位置情報を含む。ここで、図4を参照して、操作領域取得部213が取得する操作領域データのフォーマットの一例を説明する。図4(a)は操作領域データである。図4(b)は、図4(a)の操作領域データの意味を、操作空間を上方向から見下ろした状態に相当するXY平面に表したものである。図4(a)において、401は、操作領域の大きさ(size_X,size_Y)である。この場合size_X及びsize_Yの値はそれぞれ操作領域の縦横の幅に相当する。402は、操作領域の基準点(図4(b)では操作領域の左上の点)の、原点106からのXYZ軸に沿ったシフト量(shift_X,shift_Y,shift_Z)である。特に、shift_Zは操作面の三次元位置座標の原点106からの相対的高さを表す。図3(a)の例は、操作面の高さは原点の高さと一致している。403は、操作領域の大きさ(size_X,size_Y)内の操作領域の形状を表している。操作領域の形状403は、(size_X,size_Y)の行列で表現しており、値0は、その点が操作領域外に相当することを、値1はその点が操作領域内に含まれることを表す。   First, in step S301, the operation area acquisition unit 213 acquires operation area information in a coordinate system defined in the real space. The operation area information includes position information that defines the boundary of the operation area. Here, an example of the format of the operation region data acquired by the operation region acquisition unit 213 will be described with reference to FIG. FIG. 4A shows operation area data. FIG. 4B shows the meaning of the operation area data in FIG. 4A on the XY plane corresponding to a state where the operation space is looked down from above. In FIG. 4A, 401 is the size (size_X, size_Y) of the operation area. In this case, the values of size_X and size_Y correspond to the vertical and horizontal widths of the operation area, respectively. Reference numeral 402 denotes a shift amount (shift_X, shift_Y, shift_Z) along the XYZ axes from the origin 106 of the reference point of the operation area (the upper left point of the operation area in FIG. 4B). In particular, shift_Z represents the relative height from the origin 106 of the three-dimensional position coordinates of the operation surface. In the example of FIG. 3A, the height of the operation surface matches the height of the origin. Reference numeral 403 denotes the shape of the operation area within the size (size_X, size_Y) of the operation area. The shape 403 of the operation area is expressed by a matrix of (size_X, size_Y). A value of 0 indicates that the point is outside the operation area, and a value of 1 indicates that the point is included in the operation area. Represent.

図3のフローチャートの説明に戻る。ステップS302では座標変換部214が、ステップS301で取得された、三次元位置座標系で表された操作領域の情報を、距離画像センサ102が撮像する入力画像内の座標系(以下、単に画像座標系という)に変換する。三次元位置座標系と画像座標系の変換式は式(1)で表される。   Returning to the flowchart of FIG. In step S302, the coordinate conversion unit 214 uses the coordinate system in the input image captured by the distance image sensor 102 (hereinafter simply referred to as image coordinates) to acquire the information on the operation area expressed in the three-dimensional position coordinate system acquired in step S301. System). A conversion formula between the three-dimensional position coordinate system and the image coordinate system is expressed by Formula (1).

Figure 0006555958
Figure 0006555958

ここで、dは入力画像の各画素であって、距離Dに対応する値である。r00〜r22、t0〜t2、fx、fy、cx、cyはセンサ設置時にキャリブレーションによって予め求めるパラメータである。キャリブレーションで求めるパラメータは、操作空間に定義された三次元位置情報を表す座標(X,Y、Z)と、画像座標系の座標(x,y)の対応関係が取れた既知の点がパラメータ数以上あれば、最小二乗法などで値を予め計算しておくことができる。座標変換部214は、これらのパラメータを用いて、式(1)により三次元位置座標系で入力された操作領域の各点を距離画像センサの画像座標系に変換する。   Here, d is each pixel of the input image and is a value corresponding to the distance D. r00 to r22, t0 to t2, fx, fy, cx, and cy are parameters obtained in advance by calibration when the sensor is installed. Parameters obtained by calibration are known points where the correspondence between the coordinates (X, Y, Z) representing the three-dimensional position information defined in the operation space and the coordinates (x, y) of the image coordinate system is taken. If the number is greater than or equal to the number, the value can be calculated in advance by the least square method or the like. Using these parameters, the coordinate conversion unit 214 converts each point of the operation region input in the three-dimensional position coordinate system according to Equation (1) into the image coordinate system of the distance image sensor.

図4(c)に、座標変換前後の操作領域を示す。404は、操作領域データで定義される三次元位置座標系の操作領域である。405は、座標変換部214によって、式(1)を利用して変換された、画像座標系の操作領域である。領域205は、全体の四角が距離画像で映される範囲であって、このうち白色の領域が距離画像のなかで設定される操作領域となる。   FIG. 4C shows an operation area before and after coordinate conversion. Reference numeral 404 denotes an operation area of the three-dimensional position coordinate system defined by the operation area data. Reference numeral 405 denotes an operation area of the image coordinate system converted by the coordinate conversion unit 214 using the expression (1). A region 205 is a range in which the entire square is displayed as a distance image, and a white region is an operation region set in the distance image.

ステップS303では、画像取得部210が、入力画像となる距離画像を取得する。入力画像は、距離画像センサ102が、操作面101のうち少なくとも操作領域として定義された領域を含むような操作空間を撮影した画像である。次に、ステップS304において、操作領域決定部215が、画像取得部210によって取得した入力画像内で、ステップS302で座標変換部214によって画像座標系での位置情報に変換された操作領域405の境界の画素を探索する。ここで探索とは、操作領域405の境界周辺とみなされる領域内の画素を1つずつ処理対象として選択し、(x,y,d)の値を取得することをいう。   In step S303, the image acquisition unit 210 acquires a distance image as an input image. The input image is an image obtained by capturing an operation space in which the distance image sensor 102 includes at least an area defined as an operation area in the operation surface 101. Next, in step S304, the operation region determination unit 215 converts the boundary of the operation region 405 converted into the position information in the image coordinate system by the coordinate conversion unit 214 in step S302 in the input image acquired by the image acquisition unit 210. Search for pixels. Here, the search means that pixels in an area regarded as the periphery of the boundary of the operation area 405 are selected one by one as a processing target, and a value of (x, y, d) is acquired.

ステップS305では、操作領域決定部215によって、処理対象として選択中の画素に、操作面101が被写体として写っているとみなされるかが判定される。本実施形態では、操作領域決定部215は、まず、座標変換部214から、処理対象としている画素の画像座標系での位置情報を、操作空間の三次元座標系での位置情報に変換する処理を実行する。そして、操作空間での三次元位置情報に変換できないか、あるいは、変換結果が定義としてステップS301で得た情報と異なるかを判定する。この判定が、画素値から変換された高さが、高さshift_Zとの差が小さい値であるかを判定することに相当する。なお、三次元位置情報に変換できない場合には、距離画像に立体物が撮像されている場合に、そのエッジ付近で距離情報がうまく取得されない場合がある。なお、Z軸が高さに相当しない場合でも、操作面に交差する座標軸での座標値に基づいて、同様の判定を行えばよい。ステップS305においてNoであれば、ステップS306へ進み、操作領域決定部215が、処理対象として選択中の画素は操作領域外である、すなわち操作領域には含まれないと決定する。ステップS305においてYesであればステップS307へ進み、操作領域決定部215が、処理対象として選択中の画素は操作領域内であると決定する。すなわち、その画素は操作領域に含まれていると決定する。そしてステップS308では、操作領域決定部215が、操作領域の境界周辺とみなされる領域内の全画素を探索したか否かを判定する。全画素の探索が終了するまでステップS304からステップS308の処理が繰り返される。ステップS308でYesと判定される場合、ステップS309に進む。 In step S <b> 305, the operation area determination unit 215 determines whether the operation surface 101 is regarded as a subject in the pixel selected as the processing target. In the present embodiment, the operation area determination unit 215 first converts the position information in the image coordinate system of the pixel to be processed from the coordinate conversion unit 214 into position information in the three-dimensional coordinate system of the operation space. Execute. Then, it is determined whether the information cannot be converted into the three-dimensional position information in the operation space, or whether the conversion result is different from the information obtained in step S301 as a definition. This determination corresponds to determining whether or not the height converted from the pixel value is a small difference from the height shift_Z. In addition, when it cannot convert into three-dimensional position information, when the solid object is imaged by the distance image, distance information may not be acquired well near the edge. Even when the Z-axis does not correspond to the height, the same determination may be performed based on the coordinate value on the coordinate axis intersecting the operation surface. If “ No” in step S305, the process proceeds to step S306, and the operation area determination unit 215 determines that the pixel being selected as a processing target is outside the operation area, that is, not included in the operation area. If Yes in step S305, the process proceeds to step S307, and the operation region determination unit 215 determines that the pixel being selected as a processing target is within the operation region. That is, it is determined that the pixel is included in the operation area. In step S308, the operation region determination unit 215 determines whether or not all the pixels in the region considered as the periphery of the boundary of the operation region have been searched. The processing from step S304 to step S308 is repeated until the search for all pixels is completed. When it determines with Yes by step S308, it progresses to step S309.

ステップS309では、操作領域決定部215が、入力画像に定義された画像座標系において、画像中の操作領域の境界を決定する。すなわち、ステップS307で操作領域内と決定した画素と、ステップS306で操作領域外と決定した画素との境界を、操作領域の境界として決定し、その情報を保持する。このとき、そしてステップS302で変換された情報との差分が、変換誤差として保持される。ステップS310では、移動領域検出部211が、入力画像のうち操作領域内と決定した領域内の部分を、移動領域を検出するための背景画像として取得する。背景画像は、操作空間に操作体が含まれない状態で距離画像センサ102によって撮像された画像から抽出される。以上が、本実施形態における操作領域決定処理である。   In step S309, the operation region determination unit 215 determines the boundary of the operation region in the image in the image coordinate system defined for the input image. That is, the boundary between the pixel determined to be within the operation region in step S307 and the pixel determined to be outside the operation region in step S306 is determined as the boundary of the operation region, and the information is retained. At this time, the difference from the information converted in step S302 is held as a conversion error. In step S <b> 310, the movement area detection unit 211 acquires a part of the input image that is determined to be within the operation area as a background image for detecting the movement area. The background image is extracted from an image captured by the distance image sensor 102 in a state where the operation body is not included in the operation space. The above is the operation region determination processing in the present embodiment.

ここで、図5を用いてステップS304〜ステップS309の処理が実行される前後における、画像座標系での操作領域の違いを説明する。図5は、操作面101と操作領域が一致する場合の具体例を表す。図5(a)は、ステップS303において画像取得部210が取得する入力画像である。また、図5(a)には座標変換部214が座標変換した後の、画像座標系の操作領域405が示されている。ここで、501は距離画像中に実際に操作面101、すなわち操作領域が存在する領域である。座標(x,y)と画素値dから、操作空間の三次元座標系における高さZを計算すると、shift_Z(シフト量402に記載された、操作領域の定義に相当する情報)との差が小さい値になる。一方、502は操作面101が存在しない領域であり、高さZはshift_Zとの差が小さい値とならない。操作領域決定部215はステップS304において境界周辺の領域を探索する。   Here, the difference in the operation area in the image coordinate system before and after the processing of step S304 to step S309 is executed will be described with reference to FIG. FIG. 5 shows a specific example when the operation surface 101 and the operation area match. FIG. 5A shows an input image acquired by the image acquisition unit 210 in step S303. FIG. 5A shows an operation area 405 in the image coordinate system after the coordinate conversion unit 214 performs coordinate conversion. Here, reference numeral 501 denotes an area where the operation surface 101, that is, the operation area actually exists in the distance image. When the height Z in the three-dimensional coordinate system of the operation space is calculated from the coordinates (x, y) and the pixel value d, the difference from shift_Z (information corresponding to the definition of the operation area described in the shift amount 402) is obtained. Small value. On the other hand, 502 is an area where the operation surface 101 does not exist, and the height Z does not have a small difference from shift_Z. In step S304, the operation area determination unit 215 searches for an area around the boundary.

図5(b)は境界周辺とみなされる領域を説明する図である。503で示される、破線に挟まれた範囲内が、入力画像のうち境界周辺とみなされる領域である。入力画像のうち境界周辺とみなされる領域は、操作領域405の内側および外側の両方を含む。操作領域決定部215は、境界周辺とみなされる領域503内の全画素について、ステップS305で三次元位置を取得し、高さZが取得できるか、あるいは、高さZがshift_Zとの差が小さい値となるか否かを計算する。その結果、高さがshift_Zから大きく異なる場合にはステップS306で操作領域外として決定する。shift_Zとの差が小さい場合はステップS307において操作領域内として設定する。図5(c)は、変換誤差を考慮して決定した後の操作領域の様子を示す。504は決定された操作領域であり、操作面がある領域と距離画像中で一致する操作領域を取得できる。   FIG. 5B is a diagram for explaining a region regarded as a boundary periphery. A range between the broken lines indicated by reference numeral 503 is a region regarded as the periphery of the boundary in the input image. The area considered as the periphery of the boundary in the input image includes both the inside and outside of the operation area 405. The operation region determination unit 215 acquires the three-dimensional position in step S305 for all the pixels in the region 503 regarded as the boundary periphery, and can acquire the height Z, or the difference between the height Z and shift_Z is small. Calculate whether it becomes a value. As a result, if the height is significantly different from shift_Z, it is determined that it is outside the operation region in step S306. If the difference from shift_Z is small, it is set in the operation area in step S307. FIG. 5C shows the state of the operation area after being determined in consideration of the conversion error. Reference numeral 504 denotes the determined operation area, which can acquire an operation area that matches the area where the operation surface is located in the distance image.

図6は、操作領域を決定する別の例であって、入力画像中に距離画像が取得されていない画素部分が存在する場合を示す。図6(a)は、画像座標系の操作領域が示された入力画像である。ここで、601は、入力画像において距離情報が取得されなかった領域である。距離画像センサ102の特性により、特に立体物の境界周辺で601のように距離情報を取得出来ない領域が現れることがある。本実施形態では、ステップS305において距離情報を取得出来ないと判定された場合、その画素は、操作領域外として決定される。これは、本領域ではステップS310において背景となる距離情報を取得出来ない場合、後段で実行される操作の認識処理において誤りを発生させる原因となるため、そのような誤認識を低減する目的である。図6(b)で示す603が、決定された操作領域である。距離情報を取得出来ない領域が、操作領域から除外されている。   FIG. 6 is another example of determining the operation region, and shows a case where a pixel portion for which no distance image is acquired exists in the input image. FIG. 6A is an input image showing the operation area of the image coordinate system. Here, reference numeral 601 denotes an area where distance information has not been acquired in the input image. Depending on the characteristics of the distance image sensor 102, an area where distance information cannot be acquired, such as 601 around the boundary of a three-dimensional object, may appear. In this embodiment, when it is determined in step S305 that distance information cannot be acquired, the pixel is determined to be outside the operation area. This is an object of reducing such misrecognition because in this area, if distance information as a background cannot be acquired in step S310, it causes an error in recognition processing of an operation executed in the subsequent stage. . 603 shown in FIG. 6B is the determined operation area. The area where the distance information cannot be acquired is excluded from the operation area.

図7は、操作領域が、操作面101の一部である場合の例である。アプリケーションによっては、このように、操作領域として操作面101の全域を必要としなかったり、あるいは距離画像センサ102の画角よりも操作面101が大きかったりする場合は、このような状況が発生する。図7の例であっても、ステップS301において、ユーザ入力によって操作領域データを取得する。なお、距離画像センサ102の画角の全体が操作面101に包含されているのであれば、入力画像に、操作面101が存在しない部分が写り込むことは無い。しかしながら、ステップS301の処理において、操作領域と操作面101の包含関係は不問である。従って、そのような場合でも、図5や図6の例と同様、ステップS301で取得した定義データに沿って処理が行われる。   FIG. 7 shows an example in which the operation area is a part of the operation surface 101. Depending on the application, as described above, such a situation occurs when the entire operation surface 101 is not required as the operation region or when the operation surface 101 is larger than the angle of view of the distance image sensor 102. Even in the example of FIG. 7, in step S301, operation area data is acquired by user input. If the entire angle of view of the distance image sensor 102 is included in the operation surface 101, a portion where the operation surface 101 does not exist does not appear in the input image. However, in the process of step S301, the inclusion relationship between the operation area and the operation surface 101 is not questioned. Therefore, even in such a case, processing is performed according to the definition data acquired in step S301, as in the examples of FIGS.

図7(a)において、画像座標系で設定された操作領域405が距離画像中に示されている。図7(b)において、操作領域405の境界周辺とみなされる領域を701で示す。図7の例では、境界周辺とみなされる領域を、境界の外側に広げて設定してしまうと、操作面101のうち、想定していた操作領域以外の画素も、ステップS305の判定対象となり、操作領域内であるという判定結果が得られてしまう。従って、図7のような場合、境界周辺とみなされる領域は、操作領域の境界の内側にのみ設定する。操作領域が操作面101の一部のみであるか否かは、ステップS301において取得された操作領域の形状データ403において、画像内に操作領域の境界が存在するにも関わらず、入力画像の距離値にエッジが現れないことなどから検出可能である。この結果、操作領域の境界が設定されるのは、操作面101の外にも関わらず操作領域内と定義されてしまっている部分を、正しく操作領域外であると決定しなおす場合のみとなる。図7(c)において、702は、操作領域決定部215が境界周辺とみなされる領域701を探索して、決定した操作領域である。   In FIG. 7A, the operation area 405 set in the image coordinate system is shown in the distance image. In FIG. 7B, an area regarded as the periphery of the boundary of the operation area 405 is indicated by 701. In the example of FIG. 7, if an area regarded as the boundary periphery is set outside the boundary, pixels other than the assumed operation area in the operation surface 101 are also determined in step S305. The determination result that it is in the operation area is obtained. Therefore, in the case of FIG. 7, the area regarded as the periphery of the boundary is set only inside the boundary of the operation area. Whether or not the operation area is only a part of the operation surface 101 is determined based on the distance of the input image in spite of the presence of the operation area boundary in the image in the shape data 403 of the operation area acquired in step S301. It can be detected because no edge appears in the value. As a result, the boundary of the operation area is set only when it is determined that the part that is defined within the operation area outside the operation surface 101 is correctly outside the operation area. . In FIG. 7C, reference numeral 702 denotes an operation region that is determined by searching the region 701 that the operation region determination unit 215 regards as the boundary periphery.

以上説明したように本実施形態では、ユーザ入力によりキャリブレーションの一部として取得した「操作領域」の位置情報の変換結果に、実際に撮像された入力画像の画像情報中での「操作面」の写り方を使った修正を加えることで「操作領域」を決定する。ここで、操作面とはテーブルやホワイトボード、壁などの物理的な面であり、操作領域は操作面の表面の少なくとも一部であるという包含関係がある。操作面は物理面であるため、撮像画像の画素の情報を解析すればその存在の有無を判定することが可能であるので、操作面が存在する場所としない場所の境界が画像から検出できる。一方で、操作領域は操作面上で任意に設定可能であるので、撮像画像の画素だけでは、その境界を判断することは難しい。図1(a)に示したシステムにおいて、誤動作の原因の1つとなるのは、操作面101であるテーブルよりも外側が誤って操作領域であると設定されてしまうことである。そのような誤りがあった場合、例えば、ユーザがテーブルの縁に手を近づけただけで、手が操作領域をタッチしたと誤認識され、意図しない動作が行われてしまうことになる。従って、本実施形態では、このような問題を解決するため、画像情報から、確実に操作面101が存在しないと判断できる位置は、操作領域として設定される画素群から除外する。従って、変換誤差を考慮した修正が行われる前に取得した情報が示した操作領域と、変換誤差分を修正する処理後の操作領域が必ずしも同じ大きさであるとは限らない。   As described above, in the present embodiment, the “operation surface” in the image information of the actually captured input image is converted into the conversion result of the position information of the “operation region” acquired as part of the calibration by the user input. The “operation area” is determined by making corrections using the method of copying. Here, the operation surface is a physical surface such as a table, a white board, or a wall, and the operation area has at least a part of the surface of the operation surface. Since the operation surface is a physical surface, the presence / absence of the presence of the operation surface can be determined from the image by analyzing the pixel information of the captured image. On the other hand, since the operation area can be arbitrarily set on the operation surface, it is difficult to determine the boundary only with the pixels of the captured image. In the system shown in FIG. 1A, one of the causes of malfunction is that the outside of the table that is the operation surface 101 is erroneously set as the operation area. If there is such an error, for example, if the user simply brings his hand close to the edge of the table, it will be erroneously recognized that the hand has touched the operation area, and an unintended operation will be performed. Therefore, in this embodiment, in order to solve such a problem, a position where it can be determined from the image information that the operation surface 101 does not exist reliably is excluded from the pixel group set as the operation area. Therefore, the operation area indicated by the information acquired before the correction considering the conversion error is not necessarily the same size as the operation area after the process for correcting the conversion error.

また、テーブルや壁のような所定の操作面を背景とする空間を撮像した画像に基づいて人の手指やスタイラスなどの操作体を検出する場合に安定した検出結果を得るためには、背景は静的で既知であることが望ましい。図1(a)に示したシステムの場合、撮像画像を使った操作体の検出では、背景に操作面101が存在する部分では、背景からの差分をとることで安定的な検出が行い易い。一方で、実際には操作面101が存在しない部分で、変換誤差が含まれる背景情報と、入力画像との差分を取ってしまうと、操作体の検出結果の精度が低下する恐れがある。従って、上述した本実施形態によって、実際に撮像された画像で操作面101が写っている画素と写っていない画素の境界を特定し、背景の条件が異なる領域毎に、移動領域の検出方法を切り替えることで、操作体の検出精度を向上させることができる。以下では、上述した前処理として操作領域決定処理が行われた後、このような切り替えを行った上で検出した移動領域に基づいて操作を認識する流れを説明する。   In addition, in order to obtain a stable detection result when detecting an operation body such as a human finger or a stylus based on an image obtained by imaging a space with a predetermined operation surface such as a table or a wall in the background, the background is It should be static and known. In the case of the system shown in FIG. 1A, in the detection of the operating body using the captured image, it is easy to perform stable detection by taking a difference from the background in a portion where the operation surface 101 exists in the background. On the other hand, if the difference between the background information including the conversion error and the input image is taken at a portion where the operation surface 101 does not actually exist, the accuracy of the detection result of the operation tool may be lowered. Therefore, according to the above-described embodiment, the boundary between the pixels on which the operation surface 101 is captured and the pixels that are not captured in the actually captured image is specified, and the detection method of the moving region is determined for each region having different background conditions. By switching, the detection accuracy of the operating tool can be improved. In the following, a flow of recognizing an operation based on a moving area detected after such switching is performed after the operation area determination process is performed as the above-described pre-process will be described.

図8は、前処理として操作領域決定処理が行われた後、後段の処理として、操作を検出する操作検出処理の流れを表す。本実施形態では、距離画像センサ102から入力画像が所定の周期毎に入力される度に、図8(a)のフローチャートが繰り返される。所定の周期は、例えば30フレーム/1秒、15フレーム/1秒である。まずステップS801において、画像取得部210が、距離画像センサ102が撮像した距離画像を、入力画像として取得する。次にステップS802において、移動領域検出部211が、移動領域を検出する。ユーザの操作する手やペンなどの操作体が距離画像センサ102の画角に入ると、その操作体が写った部分が移動領域として検出される。   FIG. 8 shows a flow of an operation detection process for detecting an operation as a subsequent process after the operation area determination process is performed as a pre-process. In the present embodiment, the flowchart of FIG. 8A is repeated every time an input image is input from the distance image sensor 102 at predetermined intervals. The predetermined period is, for example, 30 frames / 1 second and 15 frames / 1 second. First, in step S801, the image acquisition unit 210 acquires a distance image captured by the distance image sensor 102 as an input image. Next, in step S802, the movement area detection unit 211 detects a movement area. When an operating body such as a hand or pen operated by the user enters the angle of view of the distance image sensor 102, a portion where the operating body is captured is detected as a movement region.

ここで、図8(b)は、ステップS802において移動領域検出部211が実行する、本実施形態の移動領域検出の処理の流れを表すフローチャートである。また、図9は、検出される移動領域と操作体である手の状態の関係を表す図である。ステップS811において、移動領域検出部211は、入力画像の画素を一つ順番にする。そしてステップS812において、その画素がステップS309で決定した操作領域内かを判定する。その画素がステップS309で決定した操作領域内の場合(ステップS812でYes)は、ステップS813において、入力画像と背景画像を使った背景差分によりその画素が移動領域か否かを判定する。対象画素がステップS309で決定した操作領域内ではない場合(ステップS812でNo)は、ステップS814に進む。ステップS814において移動領域検出部211は、操作空間に定義された三次元位置座標の絶対値を用いて移動領域を検出する。すなわち、入力画像の画素値を、操作空間に定義された三次元位置座標に変換して、操作面があるべき高さZよりも大きいZ座標が得られた画素を、移動領域とする。ステップS815において、本処理を入力画像の全ての画素で実行したかを判定し、Yesと判定されるまで処理を繰り返す。 Here, FIG. 8B is a flowchart showing the flow of the movement area detection process of the present embodiment, which is executed by the movement area detection unit 211 in step S802. FIG. 9 is a diagram illustrating the relationship between the detected moving region and the state of the hand that is the operating body. In step S811, the movement area detection unit 211 places the pixels of the input image one by one. In step S812, it is determined whether the pixel is within the operation region determined in step S309. If the pixel is within the operating area determined in step S309 (Yes in Step S 812), at step S813, it determines whether the pixel is either moving region by the background difference with input image and the background image. If the target pixel is not within the operation region determined in step S309 (No in Step S 812), the process proceeds to step S814. In step S814, the moving area detection unit 211 detects the moving area using the absolute value of the three-dimensional position coordinates defined in the operation space. That is, the pixel value obtained by converting the pixel value of the input image into the three-dimensional position coordinates defined in the operation space and obtaining a Z coordinate larger than the height Z where the operation surface should be is defined as a moving region. In step S815, it is determined whether this process has been executed for all pixels of the input image, and the process is repeated until it is determined Yes.

図9(a)は、操作空間にユーザの手が挿入された状態で取得される入力画像の一例である。図9(b)は、移動領域検出部211が、ステップS310において取得した背景画像である。ただし、背景画像として利用されるのは、操作空間に操作体が存在しない状態で撮像された画像の中で、操作領域決定部215によって決定された境界情報で定義される操作領域の内部のみである。それ以外の部分では、背景に操作面101が存在しないため、距離情報の誤差の増加や、操作体以外の物体(ユーザの手以外の部位や他の人間等が)が写り込むことに起因するノイズを含む。従って、操作領域外と決定されている領域については背景画像を生成しない。この部分は図9(b)では黒色の塗りつぶしで示される。   FIG. 9A is an example of an input image acquired with the user's hand inserted in the operation space. FIG. 9B shows the background image acquired by the moving region detection unit 211 in step S310. However, the background image is used only within the operation area defined by the boundary information determined by the operation area determination unit 215 in the image captured in the state where the operation body does not exist in the operation space. is there. In other parts, since the operation surface 101 does not exist in the background, an error in distance information increases, and objects other than the operation body (parts other than the user's hand, other humans, etc.) are reflected. Includes noise. Therefore, no background image is generated for the area determined to be outside the operation area. This portion is shown in black in FIG. 9B.

移動領域検出部211は、図9(a)のうち操作領域内とされる部分では、ステップS813において図9(b)の背景画像との差分により、移動領域を検出する。一方、操作領域外とされる部分では、ステップS814において、各画素の画素値dを使って変換される、高さZの値に基づいて移動領域を検出する。具体的には、距離画像中の(x,y)および画素値dから、前述の式(1)に基づいて高さZを得る。この高さがshift_Z(操作面の高さ)+α(距離誤差に基づく固定値)よりも高い場合に、移動領域として検出する。このように、本実施形態では、操作領域外でも移動領域を検出する事が可能である。ただし、静的な背景との背景差分が利用できる部分に比較すると、移動領域の輪郭があいまいになる場合がある。しかしながら、本実施形態によって背景に操作面101が存在する領域の境界を再定義しない場合、実際には操作面101が存在しない(背景が安定しない)領域でも、背景差分で移動領域が検出される。そのため、移動領域の輪郭の検出誤差や操作の認識誤差がより発生し易い。従って、上記のように、背景の操作面101の有無に応じて、移動領域の検出方法を分ける本発明は、安定的に移動領域を検出可能とするために重要である。なお、操作領域外で検出された移動領域は、各種補正やスムージング処理を施した上で、操作領域内で検出された移動領域との統合を行っても構わない。図9(c)に、検出した移動領域を統合した結果を示す。901は、背景差分で検出した移動領域、902は三次元位置に基づいて検出した移動領域である。   The moving area detection unit 211 detects a moving area based on the difference from the background image in FIG. 9B in step S813 in the portion within the operation area in FIG. On the other hand, in the portion outside the operation area, in step S814, the moving area is detected based on the value of the height Z converted using the pixel value d of each pixel. Specifically, the height Z is obtained from (x, y) and the pixel value d in the distance image based on the above equation (1). When this height is higher than shift_Z (the height of the operation surface) + α (a fixed value based on a distance error), it is detected as a moving region. As described above, in this embodiment, it is possible to detect the moving area even outside the operation area. However, the outline of the moving region may become ambiguous when compared with a portion where the background difference from the static background can be used. However, when the boundary of the region where the operation surface 101 exists in the background is not redefined according to the present embodiment, the moving region is detected by the background difference even in the region where the operation surface 101 does not actually exist (the background is not stable). . Therefore, the detection error of the outline of the moving area and the recognition error of the operation are more likely to occur. Therefore, as described above, the present invention in which the moving region detection method is divided according to the presence or absence of the background operation surface 101 is important in order to enable stable detection of the moving region. Note that the movement area detected outside the operation area may be integrated with the movement area detected within the operation area after various corrections and smoothing processing. FIG. 9C shows the result of integrating the detected moving areas. Reference numeral 901 denotes a moving area detected by background difference, and reference numeral 902 denotes a moving area detected based on a three-dimensional position.

図8(a)のフローチャートの説明に戻る。ステップS802において移動領域検出部211が移動領域を検出したら、ステップS803において、操作検出部212が、操作領域内で入力される操作を検出する。より具体的には、検出されている移動領域を追跡し、予め定義されたコマンドに対応する動きがなされた場合に、操作として検出する。情報処理装置100に入力可能な操作としては、操作面に対するタッチ操作や、空中で手を動かすジェスチャ操作などがある。予め定義されたコマンドに対応する動きとは、操作体の先端が操作面101にタッチして離れる“タップ操作”の動きなどである。なお操作体の先端の位置は、移動領域のうち、入力画像の画像端から最も遠い画素の位置としたり、移動領域の形状が手とみなされる場合はその形状から検出された指先位置として特定することができる。タップの他にも、指先などの操作体の先端の、操作空間の三次元位置座標系での位置やその軌跡が、コマンドして定義されたものに沿うか否かによって、操作の有無が検出される。例えば、タップ操作は、指先の高さZが操作面の高さshift_Zに十分近づいて、離れた時に検出される。ここで、タップした位置は、仮に、指先の三次元位置座標(X,Y,Z)が特定される。なお、タップを含むタッチ操作は、図4(b)に示した三次元位置座標系での操作領域の内側に、タッチ位置(X,Y)が含まれる場合にのみ、操作入力として認識されるとすれば、さらに誤認識を押さえることができる。   Returning to the flowchart of FIG. If the movement area detection unit 211 detects a movement area in step S802, the operation detection part 212 detects an operation input in the operation area in step S803. More specifically, the detected moving area is tracked and detected as an operation when a movement corresponding to a predefined command is made. The operations that can be input to the information processing apparatus 100 include a touch operation on the operation surface and a gesture operation that moves a hand in the air. The movement corresponding to the predefined command is a “tap operation” movement in which the tip of the operation body touches the operation surface 101 and leaves. Note that the position of the tip of the operating body is the position of the pixel farthest from the image edge of the input image in the moving area, or if the shape of the moving area is regarded as a hand, it is specified as the fingertip position detected from that shape. be able to. In addition to taps, the presence or absence of an operation is detected based on whether the position of the tip of the operating body, such as the fingertip, in the three-dimensional position coordinate system of the operation space and its locus are in line with those defined by the command. Is done. For example, a tap operation is detected when the height Z of the fingertip is sufficiently close to the height shift_Z of the operation surface and separated. Here, as for the tapped position, the three-dimensional position coordinates (X, Y, Z) of the fingertip are specified. Note that a touch operation including a tap is recognized as an operation input only when the touch position (X, Y) is included inside the operation region in the three-dimensional position coordinate system shown in FIG. If so, false recognition can be further suppressed.

次に、ステップS804において、補正部216が、ステップS803で検出された操作に関する操作位置の座標を補正する。ここで、図3のフローチャートで説明した処理の中で、座標変換部214が式(1)を使って行う座標変換処理には、誤差があることが既に判明している。従って、ステップS309で特定されている誤差に応じて、移動領域の位置情報も補正される必要がある。従って本実施形態では、操作位置(例えばタップ操作で指定された位置)を認識し、応答する前の、ステップS804の段階で、入力画像から検出されている移動領域の、操作空間内での三次元位置に、誤差を考慮した補正を行う。例えば、画像座標系で設定された操作領域405と、補正された操作領域504との補正前後の操作領域の重心位置のx,y移動量を誤差として保持しておき、X座標とY座標を誤差の分シフトさせた値を補正後の操作位置の座標とする。補正部216は、誤差を考慮して補正された操作位置(例えばタップされた位置)を、出力制御部217など、操作に対する応答を出力する機能部に通知する。   Next, in step S804, the correction unit 216 corrects the coordinates of the operation position related to the operation detected in step S803. Here, in the processing described in the flowchart of FIG. 3, it has already been found that there is an error in the coordinate conversion processing performed by the coordinate conversion unit 214 using Expression (1). Therefore, the position information of the moving area needs to be corrected according to the error specified in step S309. Therefore, in the present embodiment, before the operation position (for example, the position specified by the tap operation) is recognized and responded, the moving region detected from the input image at the stage of step S804 is tertiary in the operation space. The original position is corrected in consideration of the error. For example, the x and y movement amounts of the centroid positions of the operation areas before and after the correction between the operation area 405 set in the image coordinate system and the corrected operation area 504 are held as errors, and the X coordinate and the Y coordinate are stored. The value shifted by the error is used as the coordinates of the corrected operation position. The correction unit 216 notifies the operation position (for example, the tapped position) corrected in consideration of the error to a function unit that outputs a response to the operation, such as the output control unit 217.

なお、操作位置の補正方法は、上述した順序に沿ったものでなくてもよい。例えば、ステップS803の前に、補正を行っても良い。また、補正方法も上記に限らず、例えば、補正前後の操作領域のx,y方向の長さの変動を(X,Y)に乗じて補正しても良い。あるいは単に操作位置の(X、Y)が図4(b)で設定された三次元位置座標系での操作領域の外になる場合のみ、最も近い操作領域内の(X、Y)に補正しても構わない。また、補正された距離画像中の操作領域504を用いれば、(X、Y)だけでなく高さZも補正可能である。例えば、操作領域504における距離画像の各画素の高さZの平均を計算し、その値と予め設定されていた操作面高さshift_Zとの差をZに加えることで、高さ方向も補正する事が好ましい。   Note that the operation position correction method does not have to follow the order described above. For example, correction may be performed before step S803. Further, the correction method is not limited to the above, and for example, the variation in the lengths in the x and y directions of the operation area before and after correction may be corrected by multiplying by (X, Y). Alternatively, only when (X, Y) of the operation position is outside the operation area in the three-dimensional position coordinate system set in FIG. 4B, it is corrected to (X, Y) in the nearest operation area. It doesn't matter. If the operation area 504 in the corrected distance image is used, not only (X, Y) but also the height Z can be corrected. For example, the average of the height Z of each pixel of the distance image in the operation area 504 is calculated, and the height direction is also corrected by adding the difference between the value and the preset operation surface height shift_Z to Z. Things are preferable.

ステップS804の後、ステップS805において、出力制御部217が、操作検出部212が検出した操作および補正部216が補正した操作位置によって入力された操作に対を出力する。本実施形態では、プロジェクタ104に投影させる出力画像を更新する。またこの際、決定された操作領域に合わせてプロジェクタ104に投影させる出力画像の投影領域を移動させる。ステップS801からステップS805までの処理が、情報処理装置100が終了するまで繰り返す。例えば、終了指示が入力された場合や、所定時間以上の間、移動領域が検出されない場合に、情報処理装置100は終了する。   After step S804, in step S805, the output control unit 217 outputs a pair to the operation input by the operation detected by the operation detection unit 212 and the operation position corrected by the correction unit 216. In this embodiment, the output image projected on the projector 104 is updated. At this time, the projection area of the output image projected on the projector 104 is moved in accordance with the determined operation area. The processing from step S801 to step S805 is repeated until the information processing apparatus 100 ends. For example, the information processing apparatus 100 ends when an end instruction is input or when a moving region is not detected for a predetermined time or longer.

以上のように、本実施形態によれば、操作空間内に任意の操作領域が規定される場合に、操作空間を撮像した画像内の座標と実空間での三次元位置座標との変換において生じる誤差を、操作領域の境界付近で実測される情報に基づいて補正する。これによって、撮像画像から操作体が写る移動領域に係る位置を検出する際に生じる誤差を補正し、操作の誤認識を低減することができる。   As described above, according to the present embodiment, when an arbitrary operation region is defined in the operation space, it occurs in the conversion between the coordinates in the image obtained by imaging the operation space and the three-dimensional position coordinates in the real space. The error is corrected based on information measured in the vicinity of the boundary of the operation area. Accordingly, it is possible to correct an error that occurs when detecting a position related to a moving region in which the operating tool is captured from the captured image, and reduce erroneous recognition of the operation.

<変形例>
第1の実施形態で例示した操作面101は、一定の高さの平面であった。ここで変形例1として、表面が曲面であったり、高さの異なる複数の平面で構成される操作面を有するシステムへの適用を可能とする例を説明する。図10は、操作面の高さが位置により異なる場合にステップS301で取得される、操作領域データの一例を表す図である。操作領域の大きさ401、シフト量402は第1の実施形態の図4で示したものと同じである。一方、操作領域の形状、高さを表す情報である1001は、第1の実施形態と異なり、単に操作領域か否かを表す0、1のフラグではない。このように、形状データに0、1以外の数値が含まれる場合、それらは、高さ方向のシフト量shift_Zからの高さの差分を表す値である。一方、数値ではなく同図で“n”で記されているフラグ場合、その位置が操作領域外であることを表す。図10(b)は、入力の距離画像に図10(a)の操作領域データを座標変換して重ねた図。1002が操作領域データに基づき画像座標系で設定される。
<Modification>
The operation surface 101 illustrated in the first embodiment is a flat surface having a certain height. Here, as a first modification, an example will be described in which the present invention can be applied to a system having an operation surface composed of a plurality of planes having a curved surface or different heights. FIG. 10 is a diagram illustrating an example of operation area data acquired in step S301 when the height of the operation surface varies depending on the position. The size 401 of the operation area and the shift amount 402 are the same as those shown in FIG. 4 of the first embodiment. On the other hand, unlike the first embodiment, 1001 which is information indicating the shape and height of the operation area is not a flag of 0 or 1 indicating whether or not the operation area is simply used. As described above, when the shape data includes numerical values other than 0 and 1, these are values representing a difference in height from the shift amount shift_Z in the height direction. On the other hand, when the flag is not “numeric” but indicated by “n” in the figure, it indicates that the position is outside the operation area. FIG. 10B is a diagram in which the operation area data in FIG. 10A is coordinate-transformed and superimposed on the input distance image. 1002 is set in the image coordinate system based on the operation area data.

第1の実施形態では、ステップS305において操作領域決定部215は、境界周辺の各画素が高さshift_Zになるか否かに基づいて操作領域内として決定するか、操作領域外として決定するかを決定した。しかし上記実施形態では、参照すべき高さが(X,Y)座標の位置によって異なる。参照する高さの決定方法として、上記実施形態では、当該画素に対応する操作領域の形状・高さデータ1001を参照し、shift_Zに加算した値を得る。例えば、図10(b)の右側の境界付近の高さは(shift_Z+5=5)、左側の境界付近の高さは(shift_Z+10=10)となる。この高さに基づき、当該画素が操作領域内か操作領域外かを判定する。本変形例によれば、操作面が曲面や複数の平面で構成され、位置によって高さが異なる場合でも、操作面上に任意の操作領域が規定される場合であっても、実空間の三次元画像と操作面を撮像した画像内との間の座標変換の誤差を補正できる。   In the first embodiment, in step S305, the operation region determination unit 215 determines whether to determine the inside of the operation region or outside the operation region based on whether or not each pixel around the boundary has the height shift_Z. Were determined. However, in the above embodiment, the height to be referenced differs depending on the position of the (X, Y) coordinates. As a method for determining the height to be referred to, in the above embodiment, the shape / height data 1001 of the operation region corresponding to the pixel is referred to, and a value added to shift_Z is obtained. For example, the height near the right boundary in FIG. 10B is (shift_Z + 5 = 5), and the height near the left boundary is (shift_Z + 10 = 10). Based on this height, it is determined whether the pixel is inside the operation area or outside the operation area. According to this modification, even if the operation surface is configured by a curved surface or a plurality of planes and the height varies depending on the position, or even when an arbitrary operation region is defined on the operation surface, the tertiary of the real space It is possible to correct an error of coordinate conversion between the original image and the image obtained by imaging the operation surface.

また、第1の実施形態では、操作領域決定部215がステップS305において、三次元位置が異なる事の判断基準として、図4(a)もしくは図10(a)の操作領域データに基づき注目画素で検出される高さが入力されたものと異なることを判定した。しかしステップS305の処理には、入力画像の画素情報を、操作空間の三次元位置座標に変換した値が利用されていれば、判断基準は異なるものであってもよい。例えば、注目画素近傍の高さZを探索し、近傍の高さが不連続となる画素を、操作領域の実際の境界位置として決定しても良い。   In the first embodiment, the operation region determination unit 215 determines whether the three-dimensional position is different in step S305 as a reference pixel based on the operation region data in FIG. 4A or 10A. It was determined that the detected height was different from the input. However, the determination criteria may be different as long as the value obtained by converting the pixel information of the input image into the three-dimensional position coordinates in the operation space is used in the process of step S305. For example, the height Z in the vicinity of the target pixel may be searched, and a pixel in which the height in the vicinity is discontinuous may be determined as the actual boundary position of the operation region.

また、第1の実施形態では画像座標系における、境界位置の周辺とみなされる領域のみを、ステップS305の処理の対象とした。しかしながら、操作領域の全画素に対して処理を行ったとしても、同じ結果を得ることができる。いずれを処理対象とするかは、システムのリソースやアプリケーションの目的に応じて選択されればよい。   In the first embodiment, only the area considered as the periphery of the boundary position in the image coordinate system is set as the processing target in step S305. However, the same result can be obtained even if processing is performed on all pixels in the operation area. Which one is to be processed may be selected according to the system resource and the purpose of the application.

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

210 画像取得部
211 移動領域検出部
212 操作検出部
213 操作領域取得部
214 座標変換部
215 操作領域決定部
216 補正部
217 出力制御部
210 Image acquisition unit 211 Moving region detection unit 212 Operation detection unit 213 Operation region acquisition unit 214 Coordinate conversion unit 215 Operation region determination unit 216 Correction unit 217 Output control unit

Claims (15)

第1座標系が定義された空間を撮像した画像を取得する画像取得手段と、
前記第1座標系における位置情報を、前記画像取得手段によって取得される画像内に定義された第2座標系における位置情報に変換する変換手段と、
前記第1座標系における位置情報を用いて表された、前記空間に含まれる所定の操作面の少なくとも一部に設定される操作領域の情報を取得する操作領域取得手段と、
前記変換手段が前記操作領域取得手段によって取得された情報を変換した結果として得られる前記第2座標系における位置情報を使って、前記画像取得手段によって取得された画像内で前記操作領域の境界の周囲の画素群に含まれる各画素を探索し、
前記各画素に前記操作面が被写体として撮像されているかに基づいて、前記第2座標系において前記操作領域を表す位置情報を決定する操作領域決定手段と、
を備えることを特徴とする情報処理装置。
Image acquisition means for acquiring an image of a space in which the first coordinate system is defined;
Conversion means for converting position information in the first coordinate system into position information in a second coordinate system defined in an image acquired by the image acquisition means;
Operation region acquisition means for acquiring information of an operation region set on at least a part of a predetermined operation surface included in the space, expressed using position information in the first coordinate system;
Using the position information in the second coordinate system obtained as a result of the conversion means converting the information acquired by the operation area acquisition means, the boundary of the operation area in the image acquired by the image acquisition means Search for each pixel in the surrounding pixel group,
An operation area determining means for determining position information representing the operation area in the second coordinate system based on whether the operation surface is imaged as a subject in each pixel;
An information processing apparatus comprising:
更に、前記操作領域取得手段によって取得された情報を前記変換手段が変換した結果として得られる前記第2座標系における位置情報と、前記画像取得手段によって取得された画像のうち、前記操作領域決定手段によって前記操作領域として決定された領域を表す前記第2座標系における位置情報との差に基づいて、前記変換手段による変換の結果に補正を加える補正手段をさらに備えることを特徴とする請求項1に記載の情報処理装置。   Further, among the position information in the second coordinate system obtained as a result of the conversion means converting the information acquired by the operation area acquisition means, and the image acquired by the image acquisition means, the operation area determination means 2. The image processing apparatus according to claim 1, further comprising a correction unit that corrects a result of conversion by the conversion unit based on a difference from position information in the second coordinate system that represents the region determined as the operation region by the step. The information processing apparatus described in 1. 前記操作領域決定手段は、前記画素群のうち、前記操作面が被写体として撮像されていると判定されない画素を、前記操作領域から除外することを特徴とする請求項1または2に記載の情報処理装置。   3. The information processing according to claim 1, wherein the operation area determining unit excludes, from the operation area, pixels that are not determined that the operation surface is captured as a subject in the pixel group. apparatus. 前記操作領域決定手段は、前記画素群のうち、前記操作面が被写体として撮像されていると判定された画素は、前記操作領域に含まれると決定することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。   The operation region determination means determines that a pixel determined to have the operation surface captured as a subject in the pixel group is included in the operation region. The information processing apparatus according to any one of claims. 前記変換手段は、更に、前記第2座標系における位置情報を、前記第1座標系における位置情報に変換することが可能であって、
前記操作領域決定手段は、前記画素群に含まれる各画素の前記第2座標系における位置情報を、前記変換手段が前記第1座標系における位置情報に変換した結果に基づいて、前記各画素に前記操作面が被写体として撮像されているかを判定することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
The converting means can further convert position information in the second coordinate system into position information in the first coordinate system,
The operation region determination unit is configured to apply the position information of each pixel included in the pixel group in the second coordinate system to each pixel based on a result of the conversion unit converting the position information into the position information in the first coordinate system. The information processing apparatus according to claim 1, wherein it is determined whether the operation surface is captured as a subject.
前記操作領域決定手段は、前記画素群に含まれる各画素の、前記第2座標系における位置情報を、前記変換手段が変換した結果として得られる前記第1座標系における位置情報のうち、前記操作面に交差する方向の座標軸に沿った座標値に基づいて、前記画素群に含まれる各画素に前記操作面が被写体として撮像されているかをと判定することを特徴とする請求項5に記載の情報処理装置。   The operation area determination means includes, among the position information in the first coordinate system obtained as a result of the conversion means converting position information of each pixel included in the pixel group in the second coordinate system, the operation area 6. The method according to claim 5, wherein it is determined whether or not the operation surface is captured as an object by each pixel included in the pixel group based on a coordinate value along a coordinate axis in a direction intersecting the surface. Information processing device. 前記操作領域決定手段は、前記画素群に含まれる各画素に対応する前記第1座標系における位置情報のうち、前記操作面に交差する方向に沿った座標値と、前記操作面の高さを示す座標値との差が基準より小さい場合に、前記画素群に含まれる各画素に前記操作面が被写体として撮像されていると判定することを特徴とする請求項6に記載の情報処理装置。   The operation area determining means calculates a coordinate value along a direction intersecting the operation surface, and a height of the operation surface, out of position information in the first coordinate system corresponding to each pixel included in the pixel group. The information processing apparatus according to claim 6, wherein when the difference from the indicated coordinate value is smaller than a reference, the information processing apparatus determines that the operation surface is captured as an object at each pixel included in the pixel group. 更に、前記画像取得手段によって取得された画像のうち、前記操作領域決定手段によって決定された操作領域内から検出される操作体の動きに基づいて、前記情報処理装置に入力される操作を検出する操作検出手段を備えることを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。   Furthermore, an operation input to the information processing apparatus is detected based on the movement of the operating body detected from the operation area determined by the operation area determination means among the images acquired by the image acquisition means. The information processing apparatus according to claim 1, further comprising an operation detection unit. 前記操作検出手段は、前記補正手段によって補正された前記第2座標系における前記操作体の位置に基づいて、前記操作を検出することを特徴とする請求項2に従属する場合の請求項8に記載の情報処理装置。   The operation detection unit detects the operation based on the position of the operation body in the second coordinate system corrected by the correction unit. The claim according to claim 8 when dependent on claim 2 The information processing apparatus described. 前記画像取得手段によって取得される画像から、前記操作体が被写体として写る移動領域を検出する移動領域検出手段を更に備え、
前記移動領域検出手段は、
前記画像取得手段によって取得される画像のうち、前記操作領域決定手段によって決定された操作領域に相当する部分において、前記空間を前記操作体が挿入されていない状態で撮像された画像と前記空間に操作体が挿入された状態で撮像された画像との差分に基づいて、前記移動領域を検出するものであって、
前記操作検出手段は、前記移動領域検出手段によって検出される移動領域に基づいて特定される操作位置の位置情報に基づいて、前記操作体による前記操作面へのタッチ操作を検出することを特徴とする請求項8または9に記載の情報処理装置。
A moving area detecting means for detecting a moving area in which the operating body appears as a subject from the image acquired by the image acquiring means;
The moving area detecting means includes
Among the images acquired by the image acquisition means, in a portion corresponding to the operation area determined by the operation area determination means, the space is divided into an image captured in a state where the operating body is not inserted and the space. Based on the difference from the image captured with the operating tool inserted, the moving area is detected,
The operation detection unit detects a touch operation on the operation surface by the operation body based on position information of an operation position specified based on a movement region detected by the movement region detection unit. The information processing apparatus according to claim 8 or 9.
前記画像取得手段は、テーブルトップインタフェースシステムを構成するテーブル面である前記操作面を、上方から見下ろす位置に設置された距離画像センサによって撮像された距離画像を取得する手段であることを特徴とする請求項10に記載された情報処理装置。   The image acquisition means is means for acquiring a distance image captured by a distance image sensor installed at a position overlooking the operation surface, which is a table surface constituting a table top interface system. The information processing apparatus according to claim 10. 前記移動領域検出手段は、
前記画像取得手段によって取得される距離画像のうち、前記操作領域決定手段によって決定された操作領域に相当しない部分では、前記距離画像の画素から得られる三次元位置情報に基づいて、前記操作面より上方に存在する被写体が写るとみなされる領域を、前記移動領域として検出するものであることを特徴とする請求項11に記載の情報処理装置。
The moving area detecting means includes
Of the distance image acquired by the image acquisition unit, a portion that does not correspond to the operation region determined by the operation region determination unit is based on the three-dimensional position information obtained from the pixels of the distance image from the operation surface. The information processing apparatus according to claim 11, wherein an area in which an object existing above is considered to be captured is detected as the moving area.
情報処理装置の制御方法であって、
画像取得手段により、第1座標系が定義された空間を撮像した画像を取得する画像取得工程と、
変換手段により、前記第1座標系における位置情報を、前記画像取得工程において取得される画像内に定義された第2座標系における位置情報に変換する変換工程と、
操作領域取得手段により、前記第1座標系における位置情報を用いて表された、前記空間に含まれる所定の操作面の少なくとも一部に設定される操作領域の情報を取得する操作領域取得工程と、
操作領域決定手段により、前記操作領域取得工程において取得された情報を、前記変換工程で変換した結果として得られる前記第2座標系における位置情報を使って、前記画像取得工程において取得された画像のうち、前記操作領域の境界の周囲の画素群に含まれる各画素を探索する工程と、
さらに前記操作領域決定手段により、探索された前記各画素に、前記操作面が被写体として撮像されているかに基づいて、前記第2座標系において前記操作領域を表す位置情報を決定する操作領域決定工程と、
を備えることを特徴とする情報処理装置の制御方法。
A method for controlling an information processing apparatus,
An image acquisition step of acquiring an image obtained by imaging a space in which the first coordinate system is defined by the image acquisition means;
A conversion step of converting the position information in the first coordinate system by the conversion means into the position information in the second coordinate system defined in the image acquired in the image acquisition step;
An operation region acquisition step of acquiring information of an operation region set on at least a part of a predetermined operation surface included in the space, expressed by position information in the first coordinate system, by an operation region acquisition unit; ,
By using the position information in the second coordinate system obtained as a result of converting the information acquired in the operation region acquisition step by the operation region determination means, the information acquired in the image acquisition step. Of these, searching for each pixel included in a pixel group around the boundary of the operation region,
Further, an operation region determination step of determining position information representing the operation region in the second coordinate system based on whether the operation surface is imaged as a subject at each searched pixel by the operation region determination means. When,
An information processing apparatus control method comprising:
コンピュータに読み込ませ実行させることによって、前記コンピュータを、
第1座標系が定義された空間を撮像した画像を取得する画像取得手段と、
前記第1座標系における位置情報を、前記画像取得手段によって取得される画像内に定義された第2座標系における位置情報に変換する変換手段と、
前記第1座標系における位置情報を用いて表された、前記空間に含まれる所定の操作面の少なくとも一部に設定される操作領域の情報を取得する操作領域取得手段と、
前記変換手段が前記操作領域取得手段によって取得された情報を変換した結果として得られる前記第2座標系における位置情報を使って、前記画像取得手段によって取得された画像内で前記操作領域の境界の周囲の画素群に含まれる各画素を探索し、
前記各画素に前記操作面が被写体として撮像されているかに基づいて、前記第2座標系において前記操作領域を表す位置情報を決定する操作領域決定手段と、
を備える情報処理装置として機能させるプログラム。
By loading and executing the computer, the computer is
Image acquisition means for acquiring an image of a space in which the first coordinate system is defined;
Conversion means for converting position information in the first coordinate system into position information in a second coordinate system defined in an image acquired by the image acquisition means;
Operation region acquisition means for acquiring information of an operation region set on at least a part of a predetermined operation surface included in the space, expressed using position information in the first coordinate system;
Using the position information in the second coordinate system obtained as a result of the conversion means converting the information acquired by the operation area acquisition means, the boundary of the operation area in the image acquired by the image acquisition means Search for each pixel in the surrounding pixel group,
An operation area determining means for determining position information representing the operation area in the second coordinate system based on whether the operation surface is imaged as a subject in each pixel;
A program that functions as an information processing apparatus.
請求項14に記載されたプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。   A computer-readable storage medium storing the program according to claim 14.
JP2015144405A 2015-07-21 2015-07-21 Information processing apparatus, control method therefor, program, and storage medium Expired - Fee Related JP6555958B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015144405A JP6555958B2 (en) 2015-07-21 2015-07-21 Information processing apparatus, control method therefor, program, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015144405A JP6555958B2 (en) 2015-07-21 2015-07-21 Information processing apparatus, control method therefor, program, and storage medium

Publications (3)

Publication Number Publication Date
JP2017027311A JP2017027311A (en) 2017-02-02
JP2017027311A5 JP2017027311A5 (en) 2018-08-23
JP6555958B2 true JP6555958B2 (en) 2019-08-07

Family

ID=57945960

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015144405A Expired - Fee Related JP6555958B2 (en) 2015-07-21 2015-07-21 Information processing apparatus, control method therefor, program, and storage medium

Country Status (1)

Country Link
JP (1) JP6555958B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018211659A1 (en) * 2017-05-18 2018-11-22 マクセル株式会社 Operation detection device, video display device equipped with same, and video display method
JP2023050543A (en) * 2021-09-30 2023-04-11 セイコーエプソン株式会社 Method of controlling projector and projector

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020136455A1 (en) * 2001-01-31 2002-09-26 I-Jong Lin System and method for robust foreground and background image data separation for location of objects in front of a controllable display within a camera view
JP2008152622A (en) * 2006-12-19 2008-07-03 Mitsubishi Electric Corp Pointing device
JP5623138B2 (en) * 2010-05-31 2014-11-12 キヤノン株式会社 Information processing apparatus and operation method thereof
JP2012113653A (en) * 2010-11-26 2012-06-14 Canon Inc Control device, input device, input determination method, and program
JP5999615B2 (en) * 2011-10-07 2016-09-28 国立研究開発法人情報通信研究機構 Camera calibration information generating apparatus, camera calibration information generating method, and camera calibration information generating program
JP2015026219A (en) * 2013-07-25 2015-02-05 船井電機株式会社 Electronic device
JP6202942B2 (en) * 2013-08-26 2017-09-27 キヤノン株式会社 Information processing apparatus and control method thereof, computer program, and storage medium
JP6417702B2 (en) * 2014-05-01 2018-11-07 富士通株式会社 Image processing apparatus, image processing method, and image processing program

Also Published As

Publication number Publication date
JP2017027311A (en) 2017-02-02

Similar Documents

Publication Publication Date Title
US20120169671A1 (en) Multi-touch input apparatus and its interface method using data fusion of a single touch sensor pad and an imaging sensor
JP6482196B2 (en) Image processing apparatus, control method therefor, program, and storage medium
JP6711817B2 (en) Information processing apparatus, control method thereof, program, and storage medium
US10642422B2 (en) Information processing apparatus, control method for the information processing apparatus, and storage medium
US9916043B2 (en) Information processing apparatus for recognizing user operation based on an image
KR102347248B1 (en) Method and apparatus for recognizing touch gesture
US10042426B2 (en) Information processing apparatus for detecting object from image, method for controlling the apparatus, and storage medium
US10254893B2 (en) Operating apparatus, control method therefor, and storage medium storing program
JP2015022624A (en) Information processing apparatus, control method thereof, computer program, and storage medium
JP6452369B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP6555958B2 (en) Information processing apparatus, control method therefor, 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
JP2017084307A (en) Information processing device, control method therefor, program, and recording medium
JP2017219942A (en) Contact detection device, projector device, electronic blackboard system, digital signage device, projector device, contact detection method, program and recording medium
JP6618301B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP6452658B2 (en) Information processing apparatus, control method thereof, and program
JP2018063555A (en) Information processing device, information processing method, and program
JP2018055685A (en) Information processing device, control method thereof, program, and storage medium
JP6898021B2 (en) Operation input device, operation input method, and program
TWI444875B (en) Multi-touch input apparatus and its interface method using data fusion of a single touch sensor pad and imaging sensor
JP6570376B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP2018181169A (en) Information processor, and information processor control method, computer program, and storage medium
JP2012113653A (en) Control device, input device, input determination method, and program
JP2017228216A (en) Information processing apparatus, control method therefor, program, and storage medium
JP5530887B2 (en) Electronic board system, coordinate point correction apparatus, coordinate point correction method, and program

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180711

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190529

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: 20190611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190709

R151 Written notification of patent or utility model registration

Ref document number: 6555958

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees