JP6699406B2 - Information processing device, program, position information creation method, information processing system - Google Patents

Information processing device, program, position information creation method, information processing system Download PDF

Info

Publication number
JP6699406B2
JP6699406B2 JP2016133342A JP2016133342A JP6699406B2 JP 6699406 B2 JP6699406 B2 JP 6699406B2 JP 2016133342 A JP2016133342 A JP 2016133342A JP 2016133342 A JP2016133342 A JP 2016133342A JP 6699406 B2 JP6699406 B2 JP 6699406B2
Authority
JP
Japan
Prior art keywords
user
information
motion
speed
information processing
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.)
Active
Application number
JP2016133342A
Other languages
Japanese (ja)
Other versions
JP2018005660A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2016133342A priority Critical patent/JP6699406B2/en
Priority to EP17178703.9A priority patent/EP3267289B1/en
Priority to US15/640,730 priority patent/US10936077B2/en
Publication of JP2018005660A publication Critical patent/JP2018005660A/en
Application granted granted Critical
Publication of JP6699406B2 publication Critical patent/JP6699406B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置、プログラム、位置情報作成方法及び情報処理システムに関する。   The present invention relates to an information processing device, a program, a position information creating method, and an information processing system.

人が集まる場所や通過する場所に設置されたディスプレイに情報を表示するシステムが知られている。ディスプレイにはネットワークなどを介して情報処理装置が接続されており、静止画や動画を情報処理装置がディスプレイに表示させることで、情報処理装置は例えば広告、天気、ニュースなどの有益な情報を発信できる。このようなシステムや仕組みをデジタルサイネージと称する。ディスプレイは屋外、店頭、公共空間、交通機関、通路などに設置されており、往来者、来客者、施設の利用者(以下、単にユーザという)等に詳細かつ新しい情報を提供できる。   There is known a system that displays information on a display installed in a place where people gather or pass. An information processing device is connected to the display via a network or the like, and by allowing the information processing device to display a still image or a moving image on the display, the information processing device transmits useful information such as advertisement, weather, and news. it can. Such a system or mechanism is called digital signage. The display is installed outdoors, in stores, in public spaces, in transportation facilities, in corridors, etc., and can provide detailed and new information to visitors, visitors, users of facilities (hereinafter simply referred to as users), and the like.

ところで、現状のデジタルサイネージのうち特に大画面のデジタルサイネージは一方的に情報を表示することが主な機能となっている。しかしながら、ユーザから見ると、情報が刻々と変化するため表示されたある情報に興味を持ってもゆっくりと閲覧することができない場合がある。また、情報の提供者から見ると、情報を流しているだけでユーザからのリアクションが得られないので、どのような情報にユーザが興味を示したかを把握できない。また、デジタルサイネージの情報を窓口にしてユーザがより詳細な情報を表示させたり、ユーザが興味を持った情報の詳細情報を提供者が提供したくても困難である。すなわち、従来のデジタルサイネージではインタラクティブ(双方向性)な操作が困難であった。   By the way, among the current digital signage, a large-screen digital signage has a main function of unilaterally displaying information. However, from the user's point of view, since the information changes from moment to moment, it may not be possible to browse slowly even if the user is interested in certain displayed information. Further, from the viewpoint of the information provider, since the reaction from the user cannot be obtained simply by passing the information, it is not possible to grasp what information the user is interested in. In addition, it is difficult for the user to display more detailed information using the information of digital signage as a window, or for the provider to provide detailed information of information that the user is interested in. That is, it is difficult to operate interactively (bidirectionally) with the conventional digital signage.

インタラクティブな操作を実現するにはディスプレイの近くにユーザが操作を入力するための入力装置が用意されていればよいが、設置スペースの確保が難しかったり、設置スペースがあるとしても入力装置の破損や盗難のおそれがある。そこで、ユーザのジェスチャーをデジタルサイネージが検出して操作を受け付ける操作態様が検討される(例えば、特許文献1参照。)。特許文献1には、検出したユーザの動きから、表示面に表示されるカーソルを移動させると共に、ユーザとの距離に基づいてカーソルの動きを調整するポインティング制御装置が開示されている。   In order to realize interactive operation, an input device for the user to input an operation should be prepared near the display, but it is difficult to secure an installation space, or even if there is an installation space, the input device may be damaged. There is a risk of theft. Therefore, an operation mode in which the digital signage detects the user's gesture and accepts the operation is considered (for example, see Patent Document 1). Patent Document 1 discloses a pointing control device that moves a cursor displayed on a display surface based on the detected movement of a user and adjusts the movement of the cursor based on a distance from the user.

しかしながら、手や腕の動きでユーザがカーソルを任意の位置に操作することは必ずしも容易でないという問題がある。これは、カーソルを操作するための手や腕の意識的な動きとは別に人間の身体に無意識に生じる揺れなどにより手や腕の動きが影響されるためである。また、そもそも空間におけるユーザの手や腕の位置を検出した情報には誤差が含まれる。このため、例えばユーザが意図した位置にカーソルを移動させたりユーザが意図した位置で操作ボタンを押下したりすることは容易でなかった。   However, there is a problem that it is not always easy for the user to operate the cursor at an arbitrary position by the movement of the hand or arm. This is because the movements of the hands and arms are affected by the unconscious shaking of the human body in addition to the conscious movements of the hands and arms for operating the cursor. Further, the information that detects the position of the user's hand or arm in the space includes an error. Therefore, for example, it is not easy to move the cursor to the position intended by the user or press the operation button at the position intended by the user.

本発明は、上記課題に鑑み、位置情報の入力が容易な情報処理装置を提供することを目的する。   The present invention has been made in view of the above problems, and an object thereof is to provide an information processing apparatus in which position information can be easily input.

本発明は、動作検出装置が検出するユーザの動作に関する動作情報に基づき、表示装置において表示されるユーザが指示する位置を示す位置指示表示情報の位置情報を作成する情報処理装置であって、前記動作情報に基づきユーザの動作の速さを検出する速さ検出手段と、前記速さ検出手段が検出した速さが予め定められた速さの条件に合致しない場合、前記位置指示表示情報の移動方向を所定方向に制限して前記位置情報を作成する位置情報作成手段と、を有し、前記位置情報作成手段は、前記速さ検出手段が検出した速さが閾値以上か閾値未満かによって異なるユーザの身体の部位を用いて前記位置情報を作成するThe present invention is an information processing device for creating position information of position indication display information indicating a position indicated by a user displayed on a display device based on motion information related to a user's motion detected by a motion detection device, If the speed detecting means for detecting the speed of the user's operation based on the operation information and the speed detected by the speed detecting means do not match the condition of the predetermined speed, the movement of the position indication information is carried out. Position information creating means for creating the position information by limiting the direction to a predetermined direction, and the position information creating means differs depending on whether the speed detected by the speed detecting means is equal to or more than a threshold value or less than the threshold value. The position information is created using the body part of the user .

位置情報の入力が容易な情報処理装置を提供することができる。   It is possible to provide an information processing device that allows easy input of position information.

情報処理システムが有するディスプレイとカーソルの位置の制御について説明する図の一例である。It is an example of a diagram for explaining the control of the position of the display and the cursor that the information processing system has. 情報処理システムのシステム構成図の一例である。It is an example of a system configuration diagram of an information processing system. 情報処理装置のハードウェア構成図の一例である。It is an example of a hardware configuration diagram of an information processing apparatus. 動作検出装置のハードウェア構成図の一例である。It is an example of a hardware configuration diagram of an operation detection device. 三次元座標が得られる関節を示す図である。It is a figure which shows the joint in which three-dimensional coordinates are obtained. アプリケーションソフトとジェスチャー操作受付プログラムの関係を説明する図の一例である。It is an example of a diagram for explaining the relationship between the application software and the gesture operation reception program. ジェスチャー操作受付プログラムの機能がブロック状に示された機能ブロック図の一例である。It is an example of a functional block diagram in which the functions of a gesture operation reception program are shown in blocks. 動作検出装置に対する人の検出範囲と操作位置を説明する図の一例である。It is an example of a diagram for explaining a detection range and an operation position of a person with respect to the motion detection device. 検出範囲を立体的に示す図の一例である。It is an example of the figure which shows a detection range three-dimensionally. 操作エリアを説明する図の一例である。It is an example of a diagram illustrating an operation area. 操作エリアを詳細に説明する図の一例である。It is an example of a diagram for explaining the operation area in detail. ユーザの非操作動作を説明する図の一例である。It is an example of a diagram for explaining a non-operation operation of the user. 図12の立方体を側方から見た図の一例である。It is an example of the figure which looked at the cube of FIG. 12 from the side. 操作エリアにおける手首関節又は手関節の座標とカーソルの位置を示す図の一例である。It is an example of a diagram showing coordinates of a wrist joint or a wrist joint and a position of a cursor in an operation area. ユーザUの手首関節又は手関節の三次元座標を側方から見た図である。It is the figure which looked at the three-dimensional coordinates of the wrist joint of a user U or a wrist joint from the side. 操作エリアの変形例を説明する図の一例である。It is an example of the figure explaining the modification of the operation area. 手首関節又は手関節の速さの検出方法を説明する図の一例である。It is an example of a diagram for explaining a method of detecting the speed of the wrist joint or the wrist joint. イベントの検出方法について説明する図の一例である。It is an example of a diagram illustrating a method of detecting an event. 速さが閾値未満の場合の座標変換を説明する図の一例である。It is an example of a diagram for explaining the coordinate conversion when the speed is less than the threshold value. 動作検出装置によりユーザが検出された時の操作受付支援アイコンを示す図の一例である。It is an example of a diagram showing an operation reception support icon when a user is detected by the motion detection device. ユーザが操作位置で手を挙げた際の操作受付支援アイコンを示す図の一例である。It is an example of a diagram showing an operation reception support icon when the user raises his/her hand at the operation position. ユーザが操作位置で手を挙げているが手首関節又は手関節の速さが閾値未満の場合のガイドメッシュを示す図の一例である。It is an example of a diagram showing a guide mesh when the user raises his/her hand at the operation position but the speed of the wrist joint or the wrist joint is less than a threshold value. ジェスチャー操作受付プログラムがユーザに操作権を付与するまでの手順を示すフローチャート図の一例である。It is an example of a flowchart showing a procedure until the gesture operation reception program gives the operation right to the user. ジェスチャー操作受付プログラムがユーザの操作を受け付けてアプリケーションソフトを操作する手順を示すフローチャート図の一例である。It is an example of a flow chart showing a procedure in which a gesture operation reception program receives a user's operation and operates application software. 顔向きなどの分析のために情報記録部が記録するセンサ情報の一例を示す図である。It is a figure which shows an example of the sensor information which an information recording part records for analysis, such as a face direction. 図25のセンサ情報が取得された際に情報記録部が取得したスクリーンショットを示す図の一例である。It is an example of the figure which shows the screenshot which the information recording part acquired when the sensor information of FIG. 25 was acquired. 検出されないユーザを説明する図の一例である。It is an example of the figure explaining the user who is not detected. 情報記録部がセンサ情報DBに記憶したセンサ情報の解析例を説明する図の一例である。It is an example of a diagram for explaining an analysis example of the sensor information stored in the sensor information DB by the information recording unit.

以下、本発明を実施するための情報処理システム100及び情報処理システム100が行う位置情報作成方法について図面を参照しながら説明する。   Hereinafter, an information processing system 100 for implementing the present invention and a position information creating method performed by the information processing system 100 will be described with reference to the drawings.

<情報処理システムの概略的特徴>
図1を用いて、情報処理システム100の概略的特徴について説明する。図1は、情報処理システム100が有するディスプレイ310とカーソル3の位置の制御について説明する図の一例である。
<Outline of information processing system>
The schematic features of the information processing system 100 will be described with reference to FIG. FIG. 1 is an example of a diagram illustrating control of the positions of the display 310 and the cursor 3 included in the information processing system 100.

図1(a)に示すように、ディスプレイ310にはコンテンツのリスト101や動画102が表示されると共に操作入力のための各種の操作ボタン103(動画102の再生、停止等)が表示されている。動作検出装置10がユーザUを検出すると、情報処理装置30は操作受付支援アイコン81を表示する。操作受付支援アイコン81にはユーザUを表す人アイコン82が表示され、ユーザUは自分の立ち位置と動作が検出されていることを把握しながら操作できる。   As shown in FIG. 1A, a list of contents 101 and a moving image 102 are displayed on a display 310, and various operation buttons 103 (reproduction, stop, etc. of the moving image 102) for operation input are displayed. . When the motion detection device 10 detects the user U, the information processing device 30 displays the operation reception support icon 81. A person icon 82 representing the user U is displayed on the operation reception support icon 81, and the user U can operate while understanding that his/her standing position and motion are detected.

ユーザUは動作検出装置10の前方で、カーソル3を操作するための予め定められた動作を行う。動作検出装置10はユーザUの関節の三次元座標を検出して情報処理装置30に送信する。情報処理装置30は例えば手関節や手首関節等の三次元座標をディスプレイ310におけるカーソル3の位置に変換してこの位置にカーソル3を表示する。   The user U performs a predetermined action for operating the cursor 3 in front of the action detection device 10. The motion detection device 10 detects the three-dimensional coordinates of the joint of the user U and transmits it to the information processing device 30. The information processing device 30 converts three-dimensional coordinates of, for example, a wrist joint or a wrist joint into a position of the cursor 3 on the display 310 and displays the cursor 3 at this position.

本実施形態の情報処理装置30はユーザUの動作の「速さ」によってカーソル3の位置の決定方法を切り替える。まず、動作の速さが閾値以上の場合、情報処理装置30は手や手首の三次元座標をカーソル3の位置に変換する。つまり、三次元座標とカーソル3の位置を1対1に対応させる。このようなカーソル3の位置の決定方法を、以下「通常のカーソル3の位置の決定方法」という。   The information processing apparatus 30 of the present embodiment switches the method for determining the position of the cursor 3 depending on the “speed” of the operation of the user U. First, when the operation speed is equal to or higher than the threshold value, the information processing device 30 converts the three-dimensional coordinates of the hand or wrist into the position of the cursor 3. That is, the three-dimensional coordinates and the position of the cursor 3 have a one-to-one correspondence. Such a method of determining the position of the cursor 3 is hereinafter referred to as a "normal method of determining the position of the cursor 3."

次に、図1(b)を用いて動作の速さが閾値未満の場合を説明する。この場合、情報処理装置30はユーザの手や手首の動作の方向を上下左右のいずれかに分類して、マス目状にカーソル3を移動させる。図1(b)に示すように、動作の速さが閾値未満の場合、情報処理装置30はガイドメッシュ4を表示する。また、ガイドメッシュ4には現在のカーソル3の位置が強調して表示される。ユーザUがたとえ手関節や手首関節を斜め方向に移動させても、情報処理装置30は縦又は横のどちらかに移動したと判断して、上下左右方向にのみカーソル3を移動させる。   Next, a case where the operation speed is less than the threshold will be described with reference to FIG. In this case, the information processing device 30 classifies the movement direction of the user's hand or wrist into one of up, down, left and right, and moves the cursor 3 in a grid pattern. As shown in FIG. 1B, when the operation speed is less than the threshold value, the information processing device 30 displays the guide mesh 4. The current position of the cursor 3 is highlighted on the guide mesh 4. Even if the user U moves the wrist joint or the wrist joint diagonally, the information processing apparatus 30 determines that the information processing apparatus 30 has moved vertically or horizontally, and moves the cursor 3 only in the vertical and horizontal directions.

このようにして、ユーザはカーソル3の位置を制御して、クリックするジェスチャー(後述する)を行う。例えば、操作ボタン103を左クリックしたりスクロールするコンテンツのリスト101を選択したりすることができる。   In this way, the user controls the position of the cursor 3 and makes a click gesture (described later). For example, the operation button 103 can be left-clicked or the content list 101 to be scrolled can be selected.

動作の速さが閾値未満のカーソル3の位置の決定方法は、カーソル3の移動方向を制限することになる。しかし、カーソル3の移動量が微小になるようにユーザUがわずかに動作しようとしても、ユーザ自身の身体が揺れていたりするためユーザUが意図する方向に正確に手関節や手首関節を動かせるわけではない。例えば、斜め方向に移動させたつもりが縦方向又は横方向の移動になったり、縦方向又は横方向に移動させたつもりが斜め方向の移動になってしまう場合がある。また、動作検出装置10が検出する三次元座標にも誤差があるが、ユーザUがわずかに動作しようとした場合はこの誤差を無視しにくくなる。このため、三次元座標をそのままカーソル3の位置に変換しても、ユーザUが意図した位置にカーソル3を移動しにくい。   The method of determining the position of the cursor 3 whose operation speed is less than the threshold limits the moving direction of the cursor 3. However, even if the user U tries to move slightly so that the movement amount of the cursor 3 becomes minute, the user's own body may shake, so that the wrist joint or wrist joint can be accurately moved in the direction intended by the user U. is not. For example, there is a case in which the intention to move in the diagonal direction is a movement in the vertical direction or the horizontal direction, and the intention to move in the vertical direction or the horizontal direction is a movement in the diagonal direction. Moreover, although there is an error in the three-dimensional coordinates detected by the motion detection device 10, when the user U slightly tries to move, this error becomes difficult to ignore. Therefore, even if the three-dimensional coordinates are directly converted to the position of the cursor 3, it is difficult to move the cursor 3 to the position intended by the user U.

これに対し、カーソル3の移動方向が上下左右に制限されると、ユーザUが意図した方向にカーソル3が移動しやすい。例えば、右方向への移動を意図した場合、ユーザUの身体が揺れたり、意図した方向そのものに手関節や手首関節が動かなくても、上方向、下方向、又は左方向に手関節や手首関節が動くことは少ない。また、動作検出装置10の検出誤差があるとしても上下左右方向にしか影響しない。このため、ユーザUは意図した方向にカーソル3を移動させやすいという利点がある。   On the other hand, when the movement direction of the cursor 3 is limited to the vertical and horizontal directions, the cursor 3 is likely to move in the direction intended by the user U. For example, when the user wants to move to the right, even if the body of the user U shakes or the wrist joint or wrist joint does not move in the intended direction, the wrist joint or wrist moves upward, downward, or leftward. Joints rarely move. Further, even if there is a detection error of the motion detection device 10, it affects only the vertical and horizontal directions. Therefore, there is an advantage that the user U can easily move the cursor 3 in the intended direction.

このように、本実施形態の情報処理システム100は、ユーザUの動作の速さが閾値未満の場合、ユーザUがカーソル3の微小な移動を行うと推定して、カーソル3の移動方向を所定方向に制限することで、カーソル3の位置を入力する際の操作性を向上させることができる。   As described above, the information processing system 100 according to the present embodiment estimates that the user U moves the cursor 3 slightly when the operation speed of the user U is less than the threshold value, and sets the moving direction of the cursor 3 to the predetermined direction. By limiting the direction, it is possible to improve the operability when inputting the position of the cursor 3.

<用語について>
動作情報とは、ユーザの動作を表す情報である。あるいは、ユーザの動作が情報処理装置に解釈できる形態に変換された情報である。あるいは、ユーザの動作を情報処理装置に非接触で入力するための情報である。具体的には、位置、姿勢、手足の動きなどであり、本実施形態ではセンサ情報という用語で説明する。
<About terms>
The motion information is information indicating the motion of the user. Alternatively, it is information converted into a form in which the user's action can be interpreted by the information processing device. Alternatively, it is information for non-contact input of the user's action into the information processing device. Specifically, it is a position, a posture, a movement of a limb, and the like, and in the present embodiment, the term sensor information will be described.

位置指示表示情報とは、ディスプレイにおいてユーザが指示する位置を表示する表示物である。表示物は画像、数字、文字、記号、図形を含む概念であって、これらの2以上の種類の表示物を組み合わせて表示させてもよい。一般に、マウス(装置)やトラックボールなどの入力装置など、何らかのポインティングデバイスにより位置が指示される。具体的には、カーソル、マウス、マウスカーソル、マウスポインター、移動キーなどと呼ばれる。本実施形態では一例としてカーソルという用語で説明する。   The position designation display information is a display object that displays the position designated by the user on the display. The display object is a concept including an image, a number, a character, a symbol, and a figure, and these two or more kinds of display objects may be combined and displayed. Generally, the position is designated by some pointing device such as an input device such as a mouse (device) or a trackball. Specifically, it is called a cursor, a mouse, a mouse cursor, a mouse pointer, a move key, or the like. In this embodiment, the term cursor is used as an example.

ジェスチャーとは、ユーザが行う動作の内、予め定められた動作をいう。すなわち、特定の動作はジェスチャーと称される。一例として、ジェスチャーは情報処理装置を操作するためのイベントとして使用される。   The gesture means a predetermined operation among the operations performed by the user. That is, the specific action is called a gesture. As an example, the gesture is used as an event for operating the information processing device.

また、動作の速さとは、単位時間の動作量や単位時間にユーザの所定部位が移動する量などにより定義される。本実施形態では手の速さを例にして説明する。また、手とは手首を含みそれよりも先の部分をいうが、肘を含めたり肘と手首の間を手に含めてもよい。   The speed of movement is defined by the amount of movement per unit time, the amount of movement of a predetermined part of the user per unit time, and the like. In this embodiment, the speed of the hand will be described as an example. Further, the hand includes a wrist and a portion beyond the wrist, but may include an elbow or a portion between the elbow and the wrist.

予め定められた速さの条件に合致する場合の条件とは、カーソルの位置の制御に関するユーザの意図を検出するための条件をいう。この意図は位置を精度よく制御したい意図をいう。条件に合致する場合とは、例えば、速さが閾値未満であること、速さが所定の範囲内であること、等が挙げられる。以下では、速さが閾値未満であることを例にして説明する。   The condition that matches the predetermined speed condition is a condition for detecting the user's intention regarding the control of the position of the cursor. This intention means an intention to control the position with high accuracy. The case where the conditions are met includes, for example, that the speed is less than a threshold value, that the speed is within a predetermined range, and the like. In the following, the case where the speed is less than the threshold will be described as an example.

<システム構成例>
図2は、情報処理システム100のシステム構成図の一例である。図2(a)に示すように、情報処理システム100は、ディスプレイ310、動作検出装置10及び情報処理装置30を有する。動作検出装置10は情報処理装置30とUSBケーブルやIEEE1394などのケーブルで接続されており、情報処理装置30とディスプレイ310はDisplayPort(登録商標)、DVI(Digital Visual Interface)、HDMI(登録商標。High-Definition Multimedia Interface)及びVGA(Video Graphics Array)等の規格による通信が可能なケーブルを介して接続されている。なお、動作検出装置10と情報処理装置30は、無線LAN、Bluetooth(登録商標)、ZigBee(登録商標)などの無線で通信してもよい。同様に、情報処理装置30とディスプレイ310は、無線LAN、HDMIの無線規格などの無線で通信してもよい。
<System configuration example>
FIG. 2 is an example of a system configuration diagram of the information processing system 100. As shown in FIG. 2A, the information processing system 100 includes a display 310, a motion detection device 10, and an information processing device 30. The motion detection device 10 is connected to the information processing device 30 via a cable such as a USB cable or IEEE1394, and the information processing device 30 and the display 310 are DisplayPort (registered trademark), DVI (Digital Visual Interface), and HDMI (registered trademark. High. -Connected via a cable capable of communication according to standards such as Definition Multimedia Interface (VFD) and VGA (Video Graphics Array). The motion detection device 10 and the information processing device 30 may communicate with each other wirelessly such as a wireless LAN, Bluetooth (registered trademark), ZigBee (registered trademark). Similarly, the information processing device 30 and the display 310 may communicate with each other wirelessly such as a wireless LAN and a wireless standard of HDMI.

情報処理装置30は、PC(Personal Computer)、タブレット端末、スマートフォン、携帯電話、PDA(Personal Digital Assistant)などの汎用的なものを利用できる。情報処理装置30ではOS(Operating System)が動作しており、マウスやタッチパネルなどのポインティングデバイスの位置を検出しこの位置にカーソル3を表示する機能を有する。また、OSはポインティングデバイスにより行われるイベント(左クリック、右クリック、ダブルクリック、マウスオーバー、マウスダウン、マウスアップなど)を検出する。また、情報処理装置30はOS上で各種のアプリケーションソフトを動作させている。OSはポインティングデバイスの位置とイベントをアプリケーションソフトに通知するため、アプリケーションソフトはポインティングデバイスの位置で行われたイベントに基づき動作する。   As the information processing device 30, a general-purpose device such as a PC (Personal Computer), a tablet terminal, a smartphone, a mobile phone, and a PDA (Personal Digital Assistant) can be used. An OS (Operating System) is operating in the information processing device 30 and has a function of detecting the position of a pointing device such as a mouse or a touch panel and displaying the cursor 3 at this position. Further, the OS detects an event (left click, right click, double click, mouse over, mouse down, mouse up, etc.) performed by the pointing device. Further, the information processing apparatus 30 runs various application software on the OS. Since the OS notifies the application software of the position of the pointing device and the event, the application software operates based on the event performed at the position of the pointing device.

本実施形態では、動作検出装置10と後述するジェスチャー操作受付プログラムがポインティングデバイスとして動作する。ジェスチャー操作受付プログラムは、動作検出装置10からセンサ情報を取得してカーソル3の位置に変換したりイベントを検出するプログラムであり、情報処理装置30で動作している。このジェスチャー操作受付プログラム110がカーソル3の位置とイベントをアプリケーションソフト120に通知することで、アプリケーションソフト120はポインティングデバイスを意識することなく(ポインティングデバイスが動作検出装置10であることによる変更が必要なく)動作できる。   In the present embodiment, the motion detection device 10 and the gesture operation reception program described later operate as a pointing device. The gesture operation acceptance program is a program that acquires sensor information from the motion detection device 10 and converts it into the position of the cursor 3 or detects an event, and is operating in the information processing device 30. The gesture operation reception program 110 notifies the application software 120 of the position of the cursor 3 and the event, so that the application software 120 does not have to be aware of the pointing device (no change is required because the pointing device is the motion detection device 10). ) Can work.

ディスプレイ310は液晶型の表示装置、有機ELを発光原理とする表示装置、又は、プラズマ発光を利用した表示装置などである。アプリケーションソフト120はCUI(Character User Interface)やGUI(Graphical User Interface)と呼ばれる画面を作成しディスプレイ310に表示させる。   The display 310 is a liquid crystal display device, a display device using organic EL as a light emitting principle, or a display device using plasma emission. The application software 120 creates a screen called CUI (Character User Interface) or GUI (Graphical User Interface) and displays it on the display 310.

なお、ディスプレイ310として、ディスプレイ310を備えた何らかの装置を使用してもよい。例えば電子黒板、ノートPCなどが備えるディスプレイをディスプレイ310として使用できる。   Note that as the display 310, any device including the display 310 may be used. For example, a display provided on an electronic blackboard or a notebook PC can be used as the display 310.

動作検出装置10は、人の動作を検出するセンサである。例えば、ステレオカメラで空間を撮像すると画像データの画素毎に視差が得られ画素毎の距離情報が得られる。また、画像データをパターン認識することで人を検出したり、人の動作を認識することが可能になる。具体的には、人の手のひら、手首、肩等の三次元座標、姿勢などが得られる。このような人の動作の検出に適したセンサとしてキネクト(登録商標。以下、登録商標という付記を省略する)が知られている。キネクトについて詳細は後述する。なお、動作検出装置10はキネクトでなくてもよく、キネクトと同様の機能を備えたセンサ、ステレオカメラ、TOF(Time Of Flight)等により距離を検出するカメラなどでもよい。   The motion detection device 10 is a sensor that detects a motion of a person. For example, when a space is imaged by a stereo camera, parallax is obtained for each pixel of image data and distance information for each pixel is obtained. Further, it becomes possible to detect a person or recognize a person's motion by recognizing the pattern of the image data. Specifically, the three-dimensional coordinates and posture of a person's palm, wrist, shoulder, etc. can be obtained. Kinect (registered trademark; hereinafter, abbreviated as a registered trademark) is known as a sensor suitable for detecting such a human motion. Details of Kinect will be described later. The motion detection device 10 does not have to be Kinect, but may be a sensor having the same function as Kinect, a stereo camera, a camera that detects a distance by TOF (Time Of Flight), or the like.

なお、図2(a)の動作検出装置10の設置位置は一例であり、ディスプレイ310の上方、左側、又は右側に設置されてもよい。また、情報処理装置30での設置位置も一例に過ぎず、例えばディスプレイ310の背後など設置されてもよい。また、ネットワークを介して動作検出装置10と接続されていてもよい。   The installation position of the motion detection device 10 of FIG. 2A is an example, and may be installed above, on the left side, or on the right side of the display 310. Further, the installation position in the information processing device 30 is also only an example, and may be installed, for example, behind the display 310. Further, it may be connected to the motion detection device 10 via a network.

図2(b)に示すように、情報処理システム100がディスプレイ310の代わりにプロジェクタ5を有していてもよい。この場合、情報処理システム100は、動作検出装置10、プロジェクタ5、及び情報処理装置30を有する。プロジェクタ5は、LCD(透過型液晶)方式、LCOS(反射型液晶)方式、又はDLP(Digital Light Processing)方式などで画像をスクリーンなどの投影面6に投影する表示装置である。   As shown in FIG. 2B, the information processing system 100 may include the projector 5 instead of the display 310. In this case, the information processing system 100 includes the motion detection device 10, the projector 5, and the information processing device 30. The projector 5 is a display device that projects an image on a projection surface 6 such as a screen by an LCD (transmissive liquid crystal) system, an LCOS (reflective liquid crystal) system, a DLP (Digital Light Processing) system, or the like.

プロジェクタ5と情報処理装置30は、ディスプレイ310と情報処理装置30間の接続態様と同様に接続されている。プロジェクタ5は、いわゆる極単焦点から投影できることが好ましい。これにより、ユーザUが動作するスペースを確保しやすくなる。動作検出装置10は、プロジェクタ5よりもユーザU側にあってもよいし、スクリーン側にあってもよい。スクリーン側にある場合はスクリーンの下辺、上辺、左辺又は右辺に固定されてよい。また、ユーザU側にある場合は用意された台の上に設置される。また、動作検出装置10がディスプレイ310の右端に設置されているのは一例であって、左端に設置されてもよい。右端又は左端に設置されるのは、プロジェクタ5の廃棄熱を避けるためである。廃棄熱を無視できる場合は、ディスプレイ310の中央に設置されてもよい。   The projector 5 and the information processing device 30 are connected in the same manner as the connection mode between the display 310 and the information processing device 30. The projector 5 is preferably capable of projecting from a so-called extremely monofocal point. This makes it easier to secure a space in which the user U operates. The motion detection device 10 may be on the user U side or the screen side of the projector 5. When it is on the screen side, it may be fixed to the lower side, upper side, left side or right side of the screen. If it is on the side of the user U, it is installed on a prepared stand. Further, the motion detection device 10 is installed at the right end of the display 310, which is an example, and may be installed at the left end. It is installed at the right end or the left end in order to avoid waste heat of the projector 5. If the waste heat can be ignored, it may be installed in the center of the display 310.

なお、ディスプレイ310とプロジェクタ5を併用してもよい。この場合、例えばプロジェクタ5が床に向けて矢印などを投影することで、ユーザを操作位置52に誘導することができる。また、矢印を表示して進行方向を指示すること等ができる(例えば、エレベータはあちら、操作位置52はあちら等)。   The display 310 and the projector 5 may be used together. In this case, the projector 5 can guide the user to the operation position 52 by projecting an arrow or the like toward the floor. In addition, an arrow can be displayed to indicate the traveling direction (for example, the elevator is over there, the operation position 52 is over there, etc.).

<ハードウェア構成について>
<<情報処理装置30のハードウェア構成>>
図3は情報処理装置30のハードウェア構成図の一例である。情報処理装置30は、CPU301、ROM302、RAM303及び補助記憶装置304を備える。更に、私的使用サーバは、入力部305、表示制御部306、ネットワークI/F307及び外部機器I/F308を備える。なお、情報処理装置30の各部は、バスBを介して相互に接続されている。
<About hardware configuration>
<<Hardware Configuration of Information Processing Device 30>>
FIG. 3 is an example of a hardware configuration diagram of the information processing device 30. The information processing device 30 includes a CPU 301, a ROM 302, a RAM 303, and an auxiliary storage device 304. Furthermore, the private use server includes an input unit 305, a display control unit 306, a network I/F 307, and an external device I/F 308. Note that the respective units of the information processing device 30 are connected to each other via a bus B.

CPU301は、補助記憶装置304に格納された各種プログラム、OS等を実行する。ROM302は不揮発性メモリ16である。ROM302は、補助記憶装置304に格納された各種プログラムを、CPU301が実行するために必要なプログラム、データ等を格納する。   The CPU 301 executes various programs, OS, etc. stored in the auxiliary storage device 304. The ROM 302 is the non-volatile memory 16. The ROM 302 stores various programs stored in the auxiliary storage device 304, such as programs and data necessary for the CPU 301 to execute them.

RAM303は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)等の主記憶装置である。CPU301によって実行される際に補助記憶装置304に格納された各種プログラムがRAM303に展開され、RAM303はCPU301の作業領域となる。   The RAM 303 is a main storage device such as a DRAM (Dynamic Random Access Memory) or an SRAM (Static Random Access Memory). Various programs stored in the auxiliary storage device 304 when executed by the CPU 301 are expanded in the RAM 303, and the RAM 303 serves as a work area of the CPU 301.

補助記憶装置304は、CPU301により実行される各種プログラム及び各種プログラムがCPU301により実行される際に利用される各種データベースを記憶する。補助記憶装置304は例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)などの不揮発性メモリである。   The auxiliary storage device 304 stores various programs executed by the CPU 301 and various databases used when the various programs are executed by the CPU 301. The auxiliary storage device 304 is a non-volatile memory such as an HDD (Hard Disk Drive) or SSD (Solid State Drive).

入力部305は、オペレータが情報処理装置30に各種指示を入力するためのインタフェースである。例えば、キーボード、マウス、タッチパネル、音声入力装置などであるが、本実施形態では接続さてなくてよい。   The input unit 305 is an interface for an operator to input various instructions to the information processing device 30. For example, a keyboard, a mouse, a touch panel, a voice input device, or the like, which may not be connected in this embodiment.

表示制御部306は、CPU301からの要求により、情報処理装置30が有する各種情報をカーソル3、メニュー、ウィンドウ、文字、又は画像などの形態でディスプレイ310に表示する。表示制御部306は、例えばグラフィックチップやディスプレイ310I/Fである。   In response to a request from the CPU 301, the display control unit 306 displays various information included in the information processing device 30 on the display 310 in the form of the cursor 3, menus, windows, characters, images, or the like. The display control unit 306 is, for example, a graphic chip or a display 310 I/F.

ネットワークI/F307は、ネットワークを介して、他の機器と通信を行う通信装置である。ネットワークI/F307は例えばイーサネット(登録商標)カードであるがこれに限られない。   The network I/F 307 is a communication device that communicates with other devices via the network. The network I/F 307 is, for example, an Ethernet (registered trademark) card, but is not limited to this.

外部機器I/F308は、USBケーブル、又は、USBメモリ等の各種の記憶媒体320などを接続するためのインタフェースである。本実施形態では動作検出装置10が接続される。   The external device I/F 308 is an interface for connecting a USB cable or various storage media 320 such as a USB memory. In this embodiment, the motion detection device 10 is connected.

なお、情報処理装置30は、いわゆるクラウドコンピューティングに対応していることが好ましく、情報処理装置30は、1つの筐体に収納されていたりひとまとまりの装置として備えられていたりする必要はない。この場合、情報処理装置30の構成は、負荷に応じてハード的なリソースが動的に接続・切断されることで構成される。   The information processing device 30 is preferably compatible with so-called cloud computing, and the information processing device 30 does not have to be housed in a single housing or provided as a unit. In this case, the configuration of the information processing device 30 is configured by dynamically connecting/disconnecting hardware resources according to the load.

<<動作検出装置10のハードウェア構成>>
図4は、動作検出装置10のハードウェア構成図の一例である。動作検出装置10は、CPU11、カラーカメラ12、赤外線カメラ13、赤外線プロジェクタ14、主記憶装置15、不揮発性メモリ16、マイク17、加速度センサ18、及びLED19を有する。CPUは不揮発性メモリ16に記憶されたファームウェアを主記憶装置15に展開して実行することで、動作検出装置10の全体を制御する。主記憶装置15は例えばDRAMなどの高速な揮発性メモリであり、不揮発性メモリ16はフラッシュメモリなどである。
<<Hardware Configuration of Motion Detection Device 10>>
FIG. 4 is an example of a hardware configuration diagram of the motion detection device 10. The motion detection device 10 includes a CPU 11, a color camera 12, an infrared camera 13, an infrared projector 14, a main storage device 15, a nonvolatile memory 16, a microphone 17, an acceleration sensor 18, and an LED 19. The CPU controls the entire operation detection device 10 by expanding the firmware stored in the non-volatile memory 16 into the main storage device 15 and executing it. The main storage device 15 is a high-speed volatile memory such as a DRAM, and the non-volatile memory 16 is a flash memory or the like.

カラーカメラ12は一例として1920×1080の解像度でカラー画像を撮像する撮像装置である。すなわち、画素毎にR・G・Bの濃度情報が得られている。赤外線カメラ13と赤外線プロジェクタ14はこれらで1つのデプスセンサ(距離センサ)として機能する。赤外線プロジェクタ14はパルス変調された赤外線を投光し、赤外線カメラ13が投光した赤外線を撮像する。デプスセンサは、赤外線を投光してから反射して戻ってくる時間を測定し、投光された赤外線ごとに距離情報を得る。なお、距離情報の解像度は512×424であるがあくまで一例である。   The color camera 12 is, for example, an imaging device that captures a color image with a resolution of 1920×1080. That is, the R, G, B density information is obtained for each pixel. The infrared camera 13 and the infrared projector 14 function as one depth sensor (distance sensor). The infrared projector 14 projects pulse-modulated infrared light, and images the infrared light projected by the infrared camera 13. The depth sensor measures the time it takes for the infrared rays to be projected, then reflected and returned, and obtains distance information for each projected infrared ray. The resolution of the distance information is 512×424, but this is merely an example.

また、デプスセンサが距離を測定する原理は一例に過ぎず、投光した赤外線パターンを赤外線カメラ13で撮像し、パターンのゆがみから距離情報を取得してもよい。   Further, the principle that the depth sensor measures the distance is merely an example, and the infrared pattern projected may be imaged by the infrared camera 13 and the distance information may be acquired from the distortion of the pattern.

マイク17は周囲の音声を検出する装置であり、CPU11は複数のマイク17が検出する音声の位相を比較して音源の方向を推定する。加速度センサ18は動作検出装置10の水平に対する傾きを検出するセンサである。LED19は動作検出装置10の状態を色や点滅などで表示する。   The microphone 17 is a device that detects ambient sound, and the CPU 11 estimates the direction of the sound source by comparing the phases of the sounds detected by the plurality of microphones 17. The acceleration sensor 18 is a sensor that detects the inclination of the motion detection device 10 with respect to the horizontal. The LED 19 displays the state of the operation detecting device 10 by color or blinking.

<動作検出装置10が取得する情報>
続いて、動作検出装置10が取得する情報について説明する。動作検出装置10が取得する情報であれば情報処理装置30が利用することができる。ただし、以下で説明する全ての情報を使用する必要はない。以下で説明される、動作検出装置10が取得する情報を「センサ情報」という。
<Information acquired by the motion detection device 10>
Next, the information acquired by the motion detection device 10 will be described. The information acquired by the motion detection device 10 can be used by the information processing device 30. However, it is not necessary to use all the information described below. Information acquired by the motion detection device 10 described below is referred to as “sensor information”.

1.カラー画像
画素毎にR・G・Bの濃度情報が含まれる画像データである。動作検出装置10の赤外線カメラ13は所定のフレームレート(例えば30fps)でカラー画像を撮像する。
1. Color image This is image data that includes R, G, and B density information for each pixel. The infrared camera 13 of the motion detection device 10 captures a color image at a predetermined frame rate (for example, 30 fps).

2.距離画像
上記のように512×424の解像度で距離情報が得られた画像データである。動作検出装置10のデプスセンサは所定のフレームレート(例えば30fps)で距離画像を撮像する。したがって、所定の解像度でユーザUを含む対象までの距離が得られる。
2. Distance image This is image data for which distance information has been obtained at a resolution of 512×424 as described above. The depth sensor of the motion detection device 10 captures a distance image at a predetermined frame rate (for example, 30 fps). Therefore, the distance to the target including the user U can be obtained with a predetermined resolution.

3.赤外線画像
赤外線カメラ13で撮像されたグレイスケールの画像である。赤外線プロジェクタ14から投影されたパルスを撮像することができる。また、赤外線を発する人(ユーザU)を検出できる。
3. Infrared image This is a grayscale image captured by the infrared camera 13. The pulse projected from the infrared projector 14 can be imaged. Further, a person (user U) who emits infrared rays can be detected.

4.人物の形状データ
動作検出装置10は、距離画像から人物領域のみを抽出して人物の形状データを作成できる。例えば、赤外線画像から人の撮像領域を特定したり、フレームに応じて距離が変化する領域を人の撮像領域として特定する。距離画像からこの撮像領域を抽出したものが人物の形状データである。したがって、情報処理装置30はユーザUがいる画素領域が分かる。また、動作検出装置10は、複数のユーザUが検出された場合、ユーザUと画素領域とを対応付けて検出する。情報処理装置30はカラー画像から人物領域のみを切り出すこともできる。
4. The person shape data motion detection device 10 can create the person shape data by extracting only the person area from the distance image. For example, a person's imaging area is specified from the infrared image, or an area whose distance changes according to the frame is specified as a person's imaging area. A person's shape data is obtained by extracting this imaging region from the distance image. Therefore, the information processing device 30 knows the pixel region in which the user U is located. Further, when a plurality of users U are detected, the motion detection apparatus 10 detects the user U and the pixel area in association with each other. The information processing device 30 can also cut out only the person region from the color image.

5.骨格情報
関節の座標情報である。ボーン情報やスケルトン情報と呼ばれる場合がある。図5に三次元座標が得られる関節を示す。なお、図5ではユーザの関節を正面から見た図である。図5の符号と関節の名称を説明する。また、図5では左半分の関節は右側と同じなので符号が省略されている。
a…頭関節、b…首関節、c…肩中央関節、d…右肩関節、e…右肘関節、f…右手首関節、g…右手関節、h…右手先関節、i…右手親指関節、j…背骨関節、k…腰中央関節、l…右腰関節、m…右膝関節、n…右かかと関節、o…右足関節
なお、動作検出装置10は各関節の空間中の三次元座標(X,Y,Z)だけでなく、カラー画像上(ディスプレイ310上)の関節の座標(x,y)を提供する。ユーザUがいる画素領域が明らかであるためである。また、「右手先関節」「右手親指関節」「左手先関節」「左手親指関節」の三次元座標が分かるので、動作検出装置10はユーザUが手のひらを開いているか閉じているかを判断できる。
5. Skeleton information Joint coordinate information. It is sometimes called bone information or skeleton information. FIG. 5 shows a joint from which three-dimensional coordinates can be obtained. In addition, in FIG. 5, the joint of the user is viewed from the front. The reference numerals and joint names in FIG. 5 will be described. Also, in FIG. 5, the joints of the left half are the same as those on the right side, so the reference numerals are omitted.
a...head joint, b...neck joint, c...shoulder central joint, d...right shoulder joint, e...right elbow joint, f...right wrist joint, g...right wrist joint, h...right wrist joint, i...right thumb joint , J... spine joint, k... waist central joint, l... right hip joint, m... right knee joint, n... right heel joint, o... right foot joint In addition, the motion detection device 10 has three-dimensional coordinates in space of each joint. It provides not only (X,Y,Z) but also the coordinates (x,y) of the joint on the color image (on the display 310). This is because the pixel area in which the user U is located is clear. Further, since the three-dimensional coordinates of the “right hand joint”, the “right thumb joint”, the “left hand joint”, and the “left thumb joint” are known, the motion detection device 10 can determine whether the user U has the palm open or closed.

6.表情
顔の認識に基づくユーザUの表情である。動作検出装置10は普通、笑っている、驚いている、左・右の目を閉じているか開いているか、口が開いているか閉じているか、画面から目を離しているか、メガネをかけているか、などを認識できる。
6. Facial Expression The facial expression of the user U based on face recognition. The motion detection device 10 is usually laughing, surprised, left or right eyes closed or open, mouth open or closed, eyes off the screen, or wearing glasses. Can recognize, etc.

7.顔の向き
人物の顔の向きである。動作検出装置10はヨー角、ピッチ角、ロール角を検出できる。
7. Face orientation This is the face orientation of the person. The motion detection device 10 can detect a yaw angle, a pitch angle, and a roll angle.

8.心拍数
推定されたユーザUの心拍数である。カラー画像と赤外線画像で肌を推定し、血液の流れによる肌部分の微妙な変化から推定される。
8. Heart rate This is the estimated heart rate of the user U. The skin is estimated from the color image and the infrared image, and is estimated from the subtle changes in the skin portion due to the blood flow.

<情報処理装置30の機能について>
まず、図6を用いてアプリケーションソフト120とジェスチャー操作受付プログラム110の関係を説明する。アプリケーションソフト120とジェスチャー操作受付プログラム110は共にOS130上で動作する。アプリケーションソフト120は位置情報やイベントで操作可能なものであればよい。例えば、広告を表示するアプリケーションソフト120、プレゼンテーションなどのためのアプリケーションソフト120等がある。しかしこれらに限られず、例えば、ブラウザ、ワードプロセッサ、ゲームなどが含まれてよい。
<Regarding Functions of Information Processing Device 30>
First, the relationship between the application software 120 and the gesture operation acceptance program 110 will be described with reference to FIG. Both the application software 120 and the gesture operation acceptance program 110 operate on the OS 130. The application software 120 may be one that can be operated by position information or an event. For example, there are application software 120 for displaying advertisements, application software 120 for presentations, and the like. However, it is not limited to these, and may include, for example, a browser, a word processor, a game, and the like.

動作検出装置10のデバイスドライバ140が情報処理装置30にインストールされている。デバイスドライバ140は動作検出装置10が検出する信号をセンサ情報に加工するソフトウェアである。デバイスドライバ140はSDK(Software Development Kit)と呼ばれる場合がある。デバイスドライバ140が作成したセンサ情報を、任意のアプリケーションソフト120がOS130のAPI(Application Interface)を介して取得できる。本実施形態ではジェスチャー操作受付プログラム110がこのAPIを利用して処理に使用するセンサ情報を取得する。   The device driver 140 of the motion detection device 10 is installed in the information processing device 30. The device driver 140 is software that processes a signal detected by the motion detection device 10 into sensor information. The device driver 140 may be called SDK (Software Development Kit). Arbitrary application software 120 can acquire the sensor information created by the device driver 140 via an API (Application Interface) of the OS 130. In this embodiment, the gesture operation acceptance program 110 uses this API to acquire sensor information used for processing.

ジェスチャー操作受付プログラム110は、動作検出装置10からセンサ情報を取得して種々の処理を行い、ジェスチャー操作受付プログラム110自身を制御すると共に、アプリケーションソフト120に操作のためのカーソル3の位置とイベントを送信する。アプリケーションソフト120はマウスやタッチパネルなどのポインティングデバイスが操作されることで入力されるカーソル3の位置とイベントを検出する機能を備えている。一般に、OS130はポインティングデバイスの位置とイベントを検出してアプリケーションソフト120に提供している。本実施形態では汎用的なポインティングデバイスが使用されないので(情報処理装置30に接続されていない)、ジェスチャー操作受付プログラム110がカーソル3の位置とイベントをアプリケーションソフト120に提供する。なお、ジェスチャー操作受付プログラム110は複数のアプリケーションソフト120にカーソル3の位置とイベントを提供できる。   The gesture operation reception program 110 acquires sensor information from the motion detection device 10 and performs various processes to control the gesture operation reception program 110 itself, and at the same time, to the application software 120 to display the position of the cursor 3 and an event for operation. Send. The application software 120 has a function of detecting the position of the cursor 3 and an event input by operating a pointing device such as a mouse or a touch panel. Generally, the OS 130 detects the position and event of the pointing device and provides them to the application software 120. In this embodiment, since a general-purpose pointing device is not used (not connected to the information processing device 30), the gesture operation reception program 110 provides the position of the cursor 3 and the event to the application software 120. The gesture operation reception program 110 can provide the position of the cursor 3 and the event to a plurality of application software 120.

提供方法はOS130やアプリケーションソフト120の仕様に従えばよい。例えば、OS130が提供するアプリケーションソフト120とジェスチャー操作受付プログラム110とのプロセス間通信を利用してもよいし、ジェスチャー操作受付プログラム110がOS130に対しカーソル3の位置とイベントを通知しそれをアプリケーションソフト120が取得するような方法でもよい。このような仕組みにより、アプリケーションソフト120がジェスチャー操作受付プログラム110からカーソル3の位置とイベントを取得するための変更は不要であり、ジェスチャー操作受付プログラム110は汎用的なアプリケーションソフト120と共に利用されることができる。   The providing method may follow the specifications of the OS 130 and the application software 120. For example, the inter-process communication between the application software 120 provided by the OS 130 and the gesture operation reception program 110 may be used, or the gesture operation reception program 110 notifies the OS 130 of the position of the cursor 3 and an event, and notifies the application software of this. The method acquired by 120 may be used. With such a mechanism, there is no need for the application software 120 to change the position of the cursor 3 and the event from the gesture operation reception program 110, and the gesture operation reception program 110 should be used together with the general-purpose application software 120. You can

なお、ジェスチャー操作受付プログラム110はアプリケーションソフトの1つであるが、デバイスドライバとして実装されてもよい。   Although the gesture operation acceptance program 110 is one of application software, it may be implemented as a device driver.

<<ジェスチャー操作受付プログラム110の機能>>
図7は、ジェスチャー操作受付プログラム110の機能がブロック状に示された機能ブロック図の一例である。ジェスチャー操作受付プログラム110は、情報取得部31、人検出部32、操作開始検出部33、操作エリア作成部34、座標変換部35、UI制御部36、速さ検出部37、イベント判断部38、情報記録部43、及び、出力部39を有する。これら各部は、図3に示された各構成要素のいずれかが、補助記憶装置304からRAM303に展開されたプログラム304pに従ったCPU301からの命令により動作することで実現される機能又は手段である。なお、プログラム304pには、OS130、デバイスドライバ140、アプリケーションソフト120、及び、ジェスチャー操作受付プログラム110が含まれている。
<<Functions of the gesture operation reception program 110>>
FIG. 7 is an example of a functional block diagram in which the functions of the gesture operation reception program 110 are shown in blocks. The gesture operation acceptance program 110 includes an information acquisition unit 31, a person detection unit 32, an operation start detection unit 33, an operation area creation unit 34, a coordinate conversion unit 35, a UI control unit 36, a speed detection unit 37, an event determination unit 38, It has an information recording unit 43 and an output unit 39. Each of these units is a function or means that is realized by any one of the components shown in FIG. 3 being operated by an instruction from the CPU 301 according to a program 304p expanded from the auxiliary storage device 304 to the RAM 303. .. The program 304p includes an OS 130, a device driver 140, application software 120, and a gesture operation acceptance program 110.

また、情報処理装置30はセンサ情報DB44(データベース)を有しており、情報記録部43はこのセンサ情報DB44にセンサ情報を記録する。センサ情報DB44は、図3に示された補助記憶装置304やRAM303に構築されている。   Further, the information processing device 30 has a sensor information DB 44 (database), and the information recording unit 43 records the sensor information in the sensor information DB 44. The sensor information DB 44 is constructed in the auxiliary storage device 304 and the RAM 303 shown in FIG.

情報取得部31は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現され、デバイスドライバ140からセンサ情報を取得する。動作検出装置10は周期的に動作を検出しているため、情報取得部31は周期的に繰り返しセンサ情報を取得する。なお、全てのセンサ情報を取得する必要はなく、処理に使用するセンサ情報のみを取得すればよい。本実施形態では以下のような情報が使用される。
・ 右肩関節d、右手首関節f、右手関節g、右手先関節h、右手親指関節iの三次元座標が使用される。なお、ユーザは右手でも左手でも操作できるので、左肩関節、左手首関節、左手関節、左手先関節、左手親指関節の三次元座標も使用される。
・ユーザUごとの三次元座標(主に人アイコン82を表示するために使用される)
・顔の向き(人アイコン82の目を表示するために使用される)
人検出部32は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現され、情報取得部31が取得したセンサ情報に基づき動作検出装置10が人を検出したことを検出する。動作検出装置10が人を検出したことやその人数により人が検出されたことを検出してもよいし、動作検出装置10が人を検出すると人物形状データや骨格情報が得られることを利用して人が検出されたことを検出してもよい。なお、人の検出範囲51は動作検出装置10の仕様により決まっている。例えば、水平方向の角度は70度、距離は0.5〜4.5mの範囲である。動作検出装置10の仕様よりも狭い範囲でのみ人を検出してもよいし、動作検出装置10の仕様が変われば人を検出する範囲も変更されうる。また、同時に検出できる人の数は6人であるが、動作検出装置10の仕様が変わればこれも変更されうる。
The information acquisition unit 31 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation reception program 110 or the like, and acquires sensor information from the device driver 140. Since the motion detection device 10 periodically detects motion, the information acquisition unit 31 periodically and repeatedly acquires sensor information. In addition, it is not necessary to acquire all the sensor information, and only the sensor information used for the processing may be acquired. In this embodiment, the following information is used.
The three-dimensional coordinates of the right shoulder joint d, the right wrist joint f, the right hand joint g, the right hand joint h, and the right thumb joint i are used. Since the user can operate with either the right hand or the left hand, the three-dimensional coordinates of the left shoulder joint, the left wrist joint, the left hand joint, the left hand joint, and the left hand thumb joint are also used.
Three-dimensional coordinates for each user U (mainly used to display the person icon 82)
Face orientation (used to display the eyes of the person icon 82)
The human detection unit 32 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation reception program 110 or the like, and the action detection device 10 detects that a person is detected based on the sensor information acquired by the information acquisition unit 31. To detect. The motion detection apparatus 10 may detect that a person is detected or the number of people is detected by the number of people, or by utilizing that the shape data and skeleton information are obtained when the motion detection apparatus 10 detects a person. May detect that a person has been detected. The human detection range 51 is determined by the specifications of the motion detection device 10. For example, the angle in the horizontal direction is 70 degrees, and the distance is in the range of 0.5 to 4.5 m. A person may be detected only in a range narrower than the specification of the motion detection device 10, or the range of detecting a person may be changed if the specification of the motion detection device 10 changes. Further, although the number of people who can be detected at the same time is 6, this can be changed if the specifications of the motion detection apparatus 10 change.

操作開始検出部33は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現され、情報取得部31が取得したセンサ情報に基づきユーザUがアプリケーションソフト120を操作する意志を示したことを検出する。本実施形態では、ユーザUが「操作位置52に存在し+手を挙げること」により操作する意志を検出する。詳細は後述される。また、操作開始検出部33はセンサ情報に基づきユーザUがアプリケーションソフト120の操作を終了する意志を示したことを検出する。本実施形態では、ユーザUが「操作位置52から離れること」又は「手を下げること」により、操作を終了する意志を検出する。   The operation start detection unit 33 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation reception program 110, and the like, and the user U intends to operate the application software 120 based on the sensor information acquired by the information acquisition unit 31. Is detected. In the present embodiment, the user U detects the intention to operate by “being at the operation position 52 and +raising the hand”. Details will be described later. In addition, the operation start detection unit 33 detects that the user U indicates the intention to end the operation of the application software 120 based on the sensor information. In the present embodiment, the user U detects the intention to end the operation by “moving away from the operation position 52” or “lowering the hand”.

操作エリア作成部34は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現され、操作開始検出部33が操作の意志を検出すると、ユーザUが操作を行うための操作エリア54を作成する。操作エリア54とはユーザUが情報処理装置30を操作できる三次元空間上の範囲(領域)である。ユーザUの右手関節gや右手首関節f等が操作エリア54に入っていると、右手関節gや右手首関節fの三次元座標がカーソル3の位置に反映されたり、ジェスチャーが検出される。   The operation area creation unit 34 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation reception program 110 or the like. When the operation start detection unit 33 detects the intention of the operation, the user U performs the operation. The operation area 54 is created. The operation area 54 is a range (area) in the three-dimensional space in which the user U can operate the information processing device 30. When the right hand joint g, the right wrist joint f, and the like of the user U are in the operation area 54, the three-dimensional coordinates of the right hand joint g and the right wrist joint f are reflected in the position of the cursor 3, and a gesture is detected.

座標変換部35は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現され、情報取得部31が取得したセンサ情報に基づき操作エリア54におけるユーザUの右手関節gや右手首関節fの三次元座標をカーソル3の位置に変換する。   The coordinate conversion unit 35 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation reception program 110 or the like, and based on the sensor information acquired by the information acquisition unit 31, the right hand joint g of the user U in the operation area 54 or The three-dimensional coordinates of the right wrist joint f are converted into the position of the cursor 3.

速さ検出部37は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現され、情報取得部31が取得したセンサ情報に基づき操作エリア54におけるユーザUの右手関節gや右手首関節fの速さを検出する。右手関節gや右手首関節fはどちらの速さを検出してもよいが、ユーザUは肘を中心に操作するので手先に近い関節の方が早くカーソル3を移動させることができる。逆に、手先から遠い関節の方が微小な移動量を制御しやすい。   The speed detection unit 37 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation reception program 110 or the like, and the right hand joint g of the user U in the operation area 54 based on the sensor information acquired by the information acquisition unit 31. Or the speed of the right wrist joint f is detected. Either speed of the right hand joint g and the right wrist joint f may be detected, but since the user U operates with the elbow as the center, the cursor 3 can be moved earlier in the joint closer to the hand. On the contrary, the joint farther from the hand is easier to control the minute movement amount.

イベント判断部38は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現され、情報取得部31が取得したセンサ情報に基づき、ユーザUがイベントを発生させたかどうかを判断する。イベントは上記のように左クリック、右クリック、ダブルクリック、マウスオーバー、マウスダウン、マウスアップなどであるが、これらイベントに対応する一般的なジェスチャーは定められていない。このため、イベント判断部38はユーザUの動きをジェスチャーとして予めイベントに対応付けておき、ユーザUが予め定められたジェスチャーを行うと、対応付けられているイベントが発生したと判断する。例えば、ユーザUが操作エリア54で手を握るジェスチャーを行うと、イベント判断部38は左クリックであると判断する。   The event determination unit 38 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation reception program 110 or the like, and based on the sensor information acquired by the information acquisition unit 31, whether the user U has generated an event or not. to decide. Events are left click, right click, double click, mouse over, mouse down, mouse up, etc. as described above, but general gestures corresponding to these events are not defined. For this reason, the event determination unit 38 associates the movement of the user U as a gesture with the event in advance, and when the user U performs the predetermined gesture, it determines that the associated event has occurred. For example, when the user U makes a gesture of holding a hand in the operation area 54, the event determination unit 38 determines that the event is a left click.

情報記録部43は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現され、センサ情報をユーザごとに時系列にセンサ情報DB44に記憶しておく。上記のように動作検出装置10はユーザの位置とユーザの表情や顔向きを検出しているため、ディスプレイ310のどの辺り見ているかを推定できる程度にユーザがディスプレイ310を見ているかどうかを記録できる。また、情報記録部43はアプリケーションソフト120から、ディスプレイ310に表示されているコンテンツのスクリーンショットを取得する。センサ情報を記録するタイミングとスクリーンショットを取得するタイミングをほぼ同じにすることで、ユーザが興味を持っているコンテンツをコンテンツの提供者などが特定しやすくなる。   The information recording unit 43 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation accepting program 110 or the like, and stores the sensor information in the sensor information DB 44 in time series for each user. As described above, the motion detection device 10 detects the position of the user, the facial expression and the face direction of the user, and thus records whether or not the user is looking at the display 310 to the extent that the user can estimate where the display 310 is looking. it can. The information recording unit 43 also acquires a screen shot of the content displayed on the display 310 from the application software 120. By setting the timing at which the sensor information is recorded and the timing at which the screen shot is acquired to be substantially the same, the content provider or the like can easily identify the content that the user is interested in.

出力部39は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現され、座標変換部35が変換したカーソル3の位置と、イベント判断部38が判断したイベントを取得してアプリケーションソフト120に出力する。なお、出力部39は、アプリケーションソフト120の状況を取得する機能も有する。例えば、アプリケーションソフト120が全画面に動画を表示している場合、ユーザが操作する必要がないので、情報取得部31はセンサ情報を取得しない。また、出力部39は、現在、ユーザが操作中である場合はアプリケーションソフト120へその旨を通知する。これにより、アプリケーションソフト120はユーザの操作中に全画面の動画表示に移行しないので、ユーザが急に操作できなくなることを防止できる。   The output unit 39 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation accepting program 110 or the like, and acquires the position of the cursor 3 converted by the coordinate conversion unit 35 and the event determined by the event determination unit 38. And outputs it to the application software 120. The output unit 39 also has a function of acquiring the status of the application software 120. For example, when the application software 120 displays a moving image on the entire screen, the user does not need to operate the information acquisition unit 31, so the information acquisition unit 31 does not acquire the sensor information. Also, the output unit 39 notifies the application software 120 of the fact that the user is currently operating. Accordingly, the application software 120 does not shift to full-screen moving image display during the user's operation, and thus it is possible to prevent the user from suddenly becoming unable to operate.

UI制御部36は、図3に示されたCPU301がジェスチャー操作受付プログラム110を実行すること等により実現される。UI制御部36は更にカーソル表示部41とアイコン表示部42を有する。カーソル表示部41は、OS130の機能を利用してカーソル3を表示したり、通常のカーソル3の代わりにガイドメッシュ4を表示したりする。また、アイコン表示部42は、ディスプレイ310に操作受付支援アイコン81を表示する。アイコン表示部42は、ユーザUの状態に応じて操作受付支援アイコン81の表示態様を変更する。操作受付支援アイコン81は、ユーザUがジェスチャーによりアプリケーションソフト120を操作しやすくなるように支援するユーザインタフェースとして機能する。例えば、動作検出装置10がユーザの全ての骨格情報を取得できるようにユーザを操作位置52に誘導する。また、操作権を持っているユーザが誰なのかを明示する(複数の人アイコン82が表示されていても手を上げている人アイコン82が操作権を有する)。操作権とは、アプリケーションソフト120を操作する権利であり、同時には一人にのみ認められる。   The UI control unit 36 is realized by the CPU 301 shown in FIG. 3 executing the gesture operation reception program 110 and the like. The UI control unit 36 further includes a cursor display unit 41 and an icon display unit 42. The cursor display unit 41 displays the cursor 3 using the function of the OS 130, or displays the guide mesh 4 instead of the normal cursor 3. Further, the icon display unit 42 displays the operation reception support icon 81 on the display 310. The icon display unit 42 changes the display mode of the operation reception support icon 81 according to the state of the user U. The operation reception support icon 81 functions as a user interface that assists the user U in easily operating the application software 120 with a gesture. For example, the motion detection apparatus 10 guides the user to the operation position 52 so that all the skeleton information of the user can be acquired. In addition, it clearly indicates who has the operation right (the person icon 82 raising the hand has the operation right even if a plurality of people icons 82 are displayed). The operation right is a right to operate the application software 120, and is granted to only one person at the same time.

<人の検出範囲51と操作位置52>
図8を用いて人の検出範囲51と操作位置52を説明する。図8は、動作検出装置10に対する人の検出範囲51と操作位置52を説明する図の一例である。上記のように、動作検出装置10は所定の水平角度の範囲(例えば70度)で所定の距離内(例えば0.5〜4.5m)の人を検出する。当然ながら、操作位置52は人の検出範囲51内である。
<Person detection range 51 and operation position 52>
The human detection range 51 and the operation position 52 will be described with reference to FIG. FIG. 8 is an example of a diagram illustrating a human detection range 51 and an operation position 52 for the motion detection device 10. As described above, the motion detection device 10 detects a person within a predetermined distance (for example, 0.5 to 4.5 m) within a predetermined horizontal angle range (for example, 70 degrees). As a matter of course, the operation position 52 is within the human detection range 51.

操作位置52は、例えば人の検出範囲51の中央付近であるが、人の検出範囲51の内側であればどこでもよい。あえて操作位置52を決定するのは、人の検出範囲51を通過する任意のユーザUが手を挙げる動作をしてアプリケーションソフト120を操作できないようにするためでる。また、操作位置52があまり広いと操作権を取得できるユーザUの数が多くなり、自分が操作できるかどうかの判断が困難になるためである。また、操作位置52が決まっていることで、ユーザUは操作位置52に移動することでアプリケーションソフト120を操作できることを把握できる。なお、実際の操作位置52は他の場所と違う色で明示されていたり、「ここで操作してください」などの文字が表示されていることが好ましい。   The operation position 52 is, for example, near the center of the human detection range 51, but may be anywhere as long as it is inside the human detection range 51. The operation position 52 is intentionally determined in order to prevent any user U who passes the human detection range 51 from raising the hand to operate the application software 120. Also, if the operation position 52 is too wide, the number of users U who can acquire the operation right increases, and it becomes difficult to determine whether or not the user can operate. Further, since the operation position 52 is determined, the user U can understand that the application software 120 can be operated by moving to the operation position 52. It is preferable that the actual operation position 52 is clearly displayed in a color different from that of other places, or that characters such as “Please operate here” are displayed.

後述するように、ユーザは人アイコン82が操作受付支援アイコン81の操作位置指示表示83に入るように移動する。人アイコン82が操作位置指示表示83に入った時、ユーザは操作位置52に存在する。したがって、ユーザは人アイコン82、操作受付支援アイコン81、及び操作位置指示表示83により操作位置52に誘導される。   As described later, the user moves so that the person icon 82 enters the operation position instruction display 83 of the operation reception support icon 81. When the person icon 82 enters the operation position instruction display 83, the user is in the operation position 52. Therefore, the user is guided to the operation position 52 by the person icon 82, the operation reception support icon 81, and the operation position instruction display 83.

しかしながら、例えば操作中にユーザが操作位置52から外れてしまう場合も想定される。例えば、ディスプレイ310をよく見ようと接近するような場合である。   However, for example, it may be assumed that the user deviates from the operation position 52 during the operation. For example, there is a case where the user approaches the display 310 in order to see it closely.

図9は、検出範囲51を立体的に示す図の一例である。図9(a)では検出範囲51にユーザの骨格情報の全て含まれている。したがって、動作検出装置10は骨格情報の全てを取得してジェスチャー操作受付プログラム110に送出できる。換言すると、ユーザは動作によりデジタルサイネージを操作できる。   FIG. 9 is an example of a diagram showing the detection range 51 in three dimensions. In FIG. 9A, the detection range 51 includes all the skeleton information of the user. Therefore, the motion detection device 10 can acquire all the skeleton information and send it to the gesture operation reception program 110. In other words, the user can operate the digital signage by the operation.

これに対し図9(b)ではユーザの身体の一部が検出範囲51からはみ出ている。動作検出装置10は全ての骨格情報のうち取得できたものだけをジェスチャー操作受付プログラム110に送出する。例えば、ジェスチャー操作受付プログラム110の各機能(操作開始検出部33、操作エリア作成部34、座標変換部35、UI制御部36、速さ検出部37、イベント判断部38)は手の骨格情報を使用するが、センサ情報に含まれていない場合には骨格情報を取得できない。このため、所望の骨格情報が取得されていないことを検出できる。   On the other hand, in FIG. 9B, a part of the user's body protrudes from the detection range 51. The motion detection device 10 sends only the acquired skeleton information to the gesture operation reception program 110. For example, each function of the gesture operation reception program 110 (operation start detection unit 33, operation area creation unit 34, coordinate conversion unit 35, UI control unit 36, speed detection unit 37, event determination unit 38) stores the skeleton information of the hand. It is used, but if it is not included in the sensor information, the skeleton information cannot be acquired. Therefore, it can be detected that the desired skeleton information has not been acquired.

このような場合、UI制御部36は、図9(c)に示すようにメッセージ540をディスプレイ310に表示することで、ユーザを操作位置52に移動して貰うことができる。図9(c)では「Please away from the screen」というメッセージ540が表示されている。したがって、UI制御部36は重要な(制御に必要な)骨格情報が欠落するほどユーザの位置がずれてしまった場合、案内を表示してユーザを検出範囲51の中に誘導できる。   In such a case, the UI control unit 36 can display the message 540 on the display 310 as shown in FIG. 9C to move the user to the operation position 52 and receive the message. In FIG. 9C, a message 540 "Please away from the screen" is displayed. Therefore, the UI control unit 36 can display a guide and guide the user into the detection range 51 when the position of the user is displaced to such an extent that important skeletal information (necessary for control) is missing.

なお、図9ではユーザがディスプレイ310に接近しすぎた例を示すが、少なくとも関節を含むユーザの身体の一部が検出範囲51からはみ出した場合、ジェスチャー操作受付プログラム110は検出範囲51の中にユーザを誘導できる。   Note that FIG. 9 illustrates an example in which the user is too close to the display 310. However, if at least a part of the user's body including the joint is outside the detection range 51, the gesture operation reception program 110 is set within the detection range 51. Can guide the user.

<操作の意志の検出>
図10を用いて操作の意志の検出と操作エリア54について説明する。図10は操作の意志の検出と操作エリア54を説明する図の一例である。図10(a)は、ユーザUが操作位置52で行う初期動作を示している。ユーザUは操作位置52に到達するとまず手を挙げる。この操作を行うべきことは指示されているか既にユーザUが把握している。操作を開始する意志を検出することとしたのは、検出範囲51のユーザUの任意の手の動きから操作を受け付けると、ユーザが意図しない操作がアプリケーションソフト120に送出されてしまうためである。
<Detection of intention of operation>
The detection of the intention of the operation and the operation area 54 will be described with reference to FIG. FIG. 10 is an example of a diagram for explaining the detection of the intention of the operation and the operation area 54. FIG. 10A shows an initial operation performed by the user U at the operation position 52. When the user U reaches the operation position 52, he first raises his hand. The user U has already grasped whether or not it is instructed to perform this operation. The intention to start the operation is detected because an operation not intended by the user is sent to the application software 120 when the operation is accepted from an arbitrary hand movement of the user U in the detection range 51.

操作開始検出部33は頭関節aの高さよりも、右手関節gが高くなると操作を開始する意志を検出する。なお、ユーザUが挙げる手は、右でも左でもよい。操作開始検出部33は右手を優先に検出し、右手を挙げた後に左手を挙げても無視し、左手を挙げた後に右手を挙げても無視する。   The operation start detection unit 33 detects the intention to start the operation when the right-hand joint g is higher than the height of the head joint a. Note that the hand of the user U may be right or left. The operation start detection unit 33 preferentially detects the right hand and ignores raising the left hand after raising the right hand, and ignores raising the left hand after raising the left hand.

また、頭関節aの高さよりも、右手関節gが高くなることを操作開始検出部33が操作を開始する意志の検出基準としたのは、ユーザUは一般に頭よりも手を伸ばすことが少ないためである。例えば、携帯電話で通話したり、メガネを触ったりする場合、手は頭よりも低いままである。このため、アプリケーションソフト120を操作する意志のない人の動作により、操作の意志があると誤検出することを抑制しやすくなる。   In addition, the reason why the operation start detection unit 33 detects that the right hand joint g is higher than the height of the head joint a as the detection reference of the intention to start the operation is that the user U generally does not reach beyond the head. This is because. For example, when talking on a cell phone or touching glasses, the hand remains lower than the head. For this reason, it becomes easy to suppress erroneous detection that the user has the intention to operate the application software 120 by the action of a person who has no intention to operate the application software 120.

<操作エリア54>
操作エリア作成部34は、右肩関節dと頭関節aの長さ(以下、Aとする)を用いて操作エリア54を作成する。図10(b)に示すように、長さAを直径として右肩の上に中心がある円53を作成する。そして、図10(c)に示すように、円53の外接矩形を作成する。この外接矩形が操作エリア54である。なお、長さAは30cmくらいであるが、あくまで一例でありユーザUの手が届く程度の長さであればよい。
<Operation area 54>
The operation area creation unit 34 creates the operation area 54 using the lengths of the right shoulder joint d and the head joint a (hereinafter referred to as A). As shown in FIG. 10B, a circle 53 whose center is on the right shoulder is created with the length A as a diameter. Then, as shown in FIG. 10C, a circumscribed rectangle of the circle 53 is created. This circumscribed rectangle is the operation area 54. The length A is about 30 cm, but it is merely an example and may be a length that the user U can reach.

このように、肩よりも上に中心がある円53から操作エリア54を作成することで、動作検出装置10からユーザUの手を撮像しやすくなる。動作検出装置10が設置される高さにもよるが、動作検出装置10がユーザUの腰の位置程度に設置された場合、手が肩と同じくらいの高さになると動作検出装置10が肩を撮像できない。このため、右肩関節dと頭関節aの長さの誤差が大きくなり(長さAが短くなったり大きくなったりしてしまう)、操作エリア54の形状が安定しなくなる。   In this way, by creating the operation area 54 from the circle 53 centered above the shoulder, it becomes easier for the motion detection device 10 to capture the image of the hand of the user U. Although it depends on the height at which the motion detecting device 10 is installed, when the motion detecting device 10 is installed at the position of the waist of the user U, the motion detecting device 10 moves to the shoulder when the hand is as high as the shoulder. Cannot be imaged. Therefore, the length error between the right shoulder joint d and the head joint a becomes large (the length A becomes short or large), and the shape of the operation area 54 becomes unstable.

図11は、操作エリア54を詳細に説明する図の一例である。頭関節aの三次元座標をP1(X1,Y1,Z1)とし、右肩関節dの三次元座標をP2(X2,Y2,Z2)とする。なお、水平方向をX軸、高さ方向をY軸、紙面の垂直方向をZ軸とする。長さAは以下のように算出される。
A=Y1−Y2
また、円53の中心Oの座標は(X2、Y2+A/2)である。したがって、操作エリア作成部34は中心Oを中心として半径A/2の円53を描画すればよい。また、円53を求めなくても、操作エリア54の4つの頂点C1〜C4の座標を以下のように算出できる。なお、Z座標については省略したが、例えばZ1、Z2又はその平均を用いる。
C1=(X2-A/2、Y2+A)
C2=(X2+A/2、Y2+A)
C3=(X2+A/2、Y2)
C4=(X2-A/2、Y2)
このように操作エリア54を作成することで、ユーザUはカーソル3の位置を制御しやすくなる。ユーザUは手を挙げたままなので(下げると操作権を失う)、必然的に肘を基準に動作する。肩の位置はほぼ固定なので、肩の上方に作成された操作エリア54を肘を中心に操作できる。したがって、ユーザUは操作エリア54がどこにあるかを探したりすることなく肘を中心に右手首関節fや右手関節gを動かすとカーソル3を操作できる。
FIG. 11 is an example of a diagram for explaining the operation area 54 in detail. The three-dimensional coordinate of the head joint a is P1 (X1, Y1, Z1), and the three-dimensional coordinate of the right shoulder joint d is P2 (X2, Y2, Z2). Note that the horizontal direction is the X axis, the height direction is the Y axis, and the vertical direction of the paper surface is the Z axis. The length A is calculated as follows.
A=Y1-Y2
The coordinates of the center O of the circle 53 are (X2, Y2+A/2). Therefore, the operation area creation unit 34 may draw the circle 53 with the radius A/2 centered on the center O. Further, the coordinates of the four vertices C1 to C4 of the operation area 54 can be calculated as follows without obtaining the circle 53. Although the Z coordinate is omitted, for example, Z1, Z2 or the average thereof is used.
C1=(X2-A/2, Y2+A)
C2=(X2+A/2, Y2+A)
C3=(X2+A/2, Y2)
C4=(X2-A/2, Y2)
By creating the operation area 54 in this way, the user U can easily control the position of the cursor 3. Since the user U keeps raising his/her hand (when the user U lowers it, he/she loses the operation right), he/she inevitably operates based on the elbow. Since the position of the shoulder is almost fixed, the operation area 54 created above the shoulder can be operated around the elbow. Therefore, the user U can operate the cursor 3 by moving the right wrist joint f or the right wrist joint g around the elbow without searching for where the operation area 54 is.

<操作権が付与されない非操作動作>
ユーザが携帯電話で通話したり、メガネを触ったりする場合にユーザが手を頭よりも高くすることは少なくない。このため、より好ましくは以下のようにユーザの非操作動作を操作開始検出部33が検出することが有効である。
<Non-operational action to which operation right is not granted>
When a user talks on a mobile phone or touches eyeglasses, the user often raises his or her hands above the head. Therefore, more preferably, it is effective that the operation start detection unit 33 detects the non-operation operation of the user as follows.

図12は、ユーザの非操作動作を説明する図の一例である。非操作動作は、ユーザがデジタルサイネージを操作する意志を示す動作(例えば手を挙げる)と類似した動作である。例えば、ユーザが携帯電話で通話する動作、メガネを触ったりする動作、額に手を当てる動作、頭をかく動作などである。   FIG. 12 is an example of a diagram for explaining the non-operation operation of the user. The non-operation operation is an operation similar to an operation (for example, raising a hand) indicating that the user intends to operate the digital signage. For example, a user makes a call with a mobile phone, touches glasses, puts a hand on the forehead, and scratches the head.

図12(a)に示すように、操作開始検出部33は頭関節aを中心とする立方体55を定義する。この定義とは、設定すると称してもよく、具体的には立方体55の座標を特定するという意味である。立方体55の寸法は頭部や顔よりもやや大きい程度であり、ユーザの手が顔に触れた際に手が入る程度の大きさである。ユーザごとに可変でもよいし、固定でもよい。また、立方体でなく直方体、球体又は楕円体でもよい。   As shown in FIG. 12A, the operation start detection unit 33 defines a cube 55 centered on the head joint a. This definition may be referred to as setting, and specifically means to specify the coordinates of the cube 55. The size of the cube 55 is slightly larger than the size of the head or face, and is large enough to fit when the user's hand touches the face. It may be variable or fixed for each user. Further, it may be a rectangular parallelepiped, a sphere, or an ellipsoid instead of a cube.

ユーザが非操作動作を行う場合、ユーザの手はこの立方体の中に入ることが多い。したがって、操作開始検出部33は手が立方体55に入るかどうかで非操作動作か否かを判断できる。   When the user performs a non-operating action, the user's hand often goes into this cube. Therefore, the operation start detection unit 33 can determine whether or not the operation is a non-operation operation depending on whether the hand enters the cube 55.

図12(b)に示すように、右手関節gが立方体55に入らない場合、操作開始検出部33は非操作動作でないと判断する。この場合、ユーザUの手が挙がっているので操作開始検出部33は操作権を付与する。   As shown in FIG. 12B, when the right hand joint g does not enter the cube 55, the operation start detection unit 33 determines that it is not a non-operation operation. In this case, since the user U's hand is raised, the operation start detection unit 33 gives the operation right.

図12(c)に示すように、右手関節gが立方体55に入る場合、操作開始検出部33は非操作動作であると判断する。この場合、操作開始検出部33は手が挙がっていても、立方体55の中に手が入っているので、操作権を付与しない。   As shown in FIG. 12C, when the right hand joint g enters the cube 55, the operation start detection unit 33 determines that it is a non-operation operation. In this case, the operation start detection unit 33 does not give the operation right even if the hand is raised because the hand is inside the cube 55.

したがって、操作をする意志のないユーザUを操作する意志があるとして誤検出することを抑制できる。   Therefore, it is possible to suppress erroneous detection that the user U who has no intention to operate has an intention to operate.

図13は、図12の立方体55を側方から見た図の一例である。立方体55であるため、動作検出装置10との距離方向(Z方向)に立方体55は奥行きを有する。ユーザU1の手は立方体55に入っていないので非操作動作でないと判断され、ユーザU2の手は立方体55に入っているので非操作動作であると判断される。   FIG. 13 is an example of a view of the cube 55 of FIG. 12 viewed from the side. Since it is the cube 55, the cube 55 has a depth in the distance direction (Z direction) from the motion detection device 10. Since the hand of the user U1 is not in the cube 55, it is determined that it is not a non-operation motion, and since the hand of the user U2 is in the cube 55, it is determined that it is a non-operation motion.

このように、立方体55で判断するのでユーザが立方体55の奥行きに入らないように手を挙げた場合、操作開始検出部33はユーザに操作権を付与し、座標変換部35が右手関節g等の座標を検出できる。一方、ユーザが立方体55の奥行きに入るように手を挙げた場合、ユーザが手を挙げていても、操作開始検出部33はユーザに操作権を認めない。したがって、単にXY平面で顔の近くに手があるかどうかを判断するよりも、立方体55で判断することで非操作動作と操作する意志を示す動作を区別して検出しやすくなる。   In this way, since the determination is made by the cube 55, when the user raises his/her hand so as not to enter the depth of the cube 55, the operation start detection unit 33 gives the operation right to the user, and the coordinate conversion unit 35 makes the right hand joint g etc. The coordinates of can be detected. On the other hand, when the user raises his/her hand to enter the depth of the cube 55, the operation start detection unit 33 does not grant the user the operation right even if the user raises his/her hand. Therefore, rather than simply determining whether or not there is a hand near the face on the XY plane, the determination by the cube 55 makes it easier to distinguish and detect the non-operation action and the action indicating the intention to operate.

<座標変換>
続いて、図14を用いて、操作エリア54における手首関節又は手関節の座標からカーソル3の位置への変換を説明する。図14は操作エリア54における手首関節又は手関節の座標とカーソル3の位置を示す図の一例である。なお、図14は手の速さが閾値以上の場合におけるカーソル3の位置の決定方法を説明する。
<Coordinate conversion>
Next, conversion of the wrist joint or the coordinates of the wrist joint in the operation area 54 to the position of the cursor 3 will be described with reference to FIG. FIG. 14 is an example of a diagram showing the coordinates of the wrist joint or the wrist joint and the position of the cursor 3 in the operation area 54. Note that FIG. 14 illustrates a method of determining the position of the cursor 3 when the speed of the hand is equal to or higher than the threshold value.

座標変換部35は操作エリア54における手首関節又は手関節の三次元座標と、ディスプレイ310におけるカーソル3の位置を1対1に対応付ける。まず、座標変換部35は、操作エリア54の左上コーナーの頂点C1を原点(0,0)に決定する。そして、操作エリア54内の手首関節又は手関節の三次元座標を原点(0,0)を基準とする三次元座標に変換する。なお、操作エリア54はXY平面の二次元平面なので手首関節又は手関節のZ座標は使用されない。このためZ座標については常に一定と見なしてよく計算から省いてよい。C1を原点とする手首関節又は手関節の三次元座標をR(X,Y)とする。   The coordinate conversion unit 35 associates the three-dimensional coordinates of the wrist joint or the wrist joint in the operation area 54 with the position of the cursor 3 on the display 310 in a one-to-one correspondence. First, the coordinate conversion unit 35 determines the vertex C1 of the upper left corner of the operation area 54 as the origin (0,0). Then, the three-dimensional coordinates of the wrist joint or the wrist joint in the operation area 54 are converted into three-dimensional coordinates with the origin (0,0) as a reference. Since the operation area 54 is a two-dimensional plane of the XY plane, the wrist joint or the Z coordinate of the wrist joint is not used. Therefore, the Z coordinate may be regarded as constant and may be omitted from the calculation. Let R(X,Y) be the three-dimensional coordinates of the wrist joint or wrist joint with C1 as the origin.

また、ディスプレイ310の縦方向の解像度をH,横方向の解像度をWとする。また、操作エリア54の縦横の長さはAである。したがって、簡単な比例計算によりディスプレイ310におけるカーソル3の位置S(x、y)を算出できる。
x=W×A/X
y=H×A/Y
ユーザUの手首関節又は手関節が操作エリア54の外にはみ出すことが当然あるが、座標変換部35は操作エリア54外の手首関節又は手関節を無視する。
Further, the vertical resolution of the display 310 is H and the horizontal resolution is W. The vertical and horizontal lengths of the operation area 54 are A. Therefore, the position S(x, y) of the cursor 3 on the display 310 can be calculated by a simple proportional calculation.
x=W×A/X
y=H×A/Y
Of course, the wrist joint or the wrist joint of the user U may protrude outside the operation area 54, but the coordinate conversion unit 35 ignores the wrist joint or the wrist joint outside the operation area 54.

座標変換部35は、情報取得部31がセンサ情報を取得するごとに座標変換を行う。一方、操作エリア作成部34は、画像データの1フレームごとに操作エリア54を更新する。これにより、ユーザが正面を向いたり、肩を動作検出装置10に向けたりして動作が変わっても適切な操作エリア54を作成できる。   The coordinate conversion unit 35 performs coordinate conversion each time the information acquisition unit 31 acquires sensor information. On the other hand, the operation area creation unit 34 updates the operation area 54 for each frame of image data. This makes it possible to create an appropriate operation area 54 even if the user changes his/her action such that he/she faces the front or his/her shoulder faces the action detecting device 10.

なお、操作エリア54は、操作開始検出部33が操作の終了の意志を検出すると(ユーザUが手を下げると)消去される。   The operation area 54 is erased when the operation start detection unit 33 detects the intention of ending the operation (when the user U lowers his hand).

図15は、ユーザUの手首関節又は手関節の三次元座標を側方から見た図である。つまり、図15の横方向がZ軸に対応する。図15のユーザU1は自分の身体の近くで腕を動かしており、ユーザU2は自分の身体よりも前方で腕を動かしている。つまり、ユーザU1とU2の手首関節又は手関節のZ座標は異なっている。しかし、ユーザU1とU2の手首関節又は手関節のY座標はほぼ同じである(図15からは明らかでないがX座標もほぼ同じ)。   FIG. 15 is a side view of the three-dimensional coordinates of the wrist joint or the wrist joint of the user U. That is, the horizontal direction of FIG. 15 corresponds to the Z axis. The user U1 in FIG. 15 moves his arm near his body, and the user U2 moves his arm forward of his body. That is, the Z coordinates of the wrist joint or the wrist joint of the users U1 and U2 are different. However, the Y-coordinates of the wrist joints or the wrist joints of the users U1 and U2 are almost the same (although not clear from FIG. 15, the X-coordinates are almost the same).

このようにZ座標が異なっても、座標変換部35は手首関節又は手関節の座標をカーソル3の位置に変換する際にZ座標を使用しないので、ユーザU1とU2が操作するカーソル3の位置(軌跡)は同じになる。   Even if the Z-coordinates are different as described above, the coordinate conversion unit 35 does not use the Z-coordinates when converting the coordinates of the wrist joint or the wrist joint into the position of the cursor 3, so that the positions of the cursor 3 operated by the users U1 and U2 can be changed. The (trajectory) will be the same.

<<操作エリア54の変形例>>
一般に、ディスプレイ310のアスペクト比は1対1でなく横方向の方が長い。これに対し、操作エリア54の縦横の長さはどちらも長さAである。したがって、ユーザUが横方向に手を動かすとカーソル3は横方向に大きく動くため、ユーザUは横方向のカーソル3の位置を制御しにくいおそれがある。そこで、操作エリア54の縦横の長さをディスプレイ310のアスペクト比に応じて変更することが有効になる。なお、ディスプレイ310のアスペクト比は情報処理装置30に入力されている。
<<Modification of operation area 54>>
In general, the aspect ratio of the display 310 is not 1:1 but is longer in the horizontal direction. On the other hand, both the vertical and horizontal lengths of the operation area 54 are the length A. Therefore, when the user U moves his or her hand in the horizontal direction, the cursor 3 largely moves in the horizontal direction, which may make it difficult for the user U to control the position of the cursor 3 in the horizontal direction. Therefore, it is effective to change the vertical and horizontal lengths of the operation area 54 according to the aspect ratio of the display 310. The aspect ratio of the display 310 is input to the information processing device 30.

図16は、操作エリア54の変形例を説明する図の一例である。図16(a)はディスプレイ310のアスペクト比が横長の場合の操作エリア54の一例を示す。操作エリア作成部34は上記した正方形の操作エリア54の左右に拡張領域54aを付加して操作エリア54を作成する。拡張領域54aの長さαは例えば10cmである。これは、長さAが30cmであるとすると全体で50cmくらいの範囲ならユーザUの手が届くためである。したがって、10cmは一例に過ぎず、長さAを考慮して手の届く範囲で拡張すればよい。例えばユーザUの身長などに応じて可変としてもよい。   FIG. 16 is an example of a diagram illustrating a modified example of the operation area 54. FIG. 16A shows an example of the operation area 54 when the aspect ratio of the display 310 is horizontally long. The operation area creating unit 34 creates the operation area 54 by adding the extension areas 54a to the left and right of the square operation area 54 described above. The length α of the expansion region 54a is, for example, 10 cm. This is because if the length A is 30 cm, the user U can reach within a range of about 50 cm as a whole. Therefore, 10 cm is only an example, and the length A may be expanded within a reachable range. For example, it may be variable according to the height of the user U.

図16(b)はディスプレイ310のアスペクト比が縦長の場合の操作エリア54の一例を示す。αについては図16(a)と同様でよい。このように操作エリア54の縦横の長さがディスプレイ310のアスペクト比に応じて変更されることで、ユーザUの操作性が向上する。   FIG. 16B shows an example of the operation area 54 when the aspect ratio of the display 310 is vertically long. α may be the same as that in FIG. In this way, the vertical and horizontal lengths of the operation area 54 are changed according to the aspect ratio of the display 310, so that the operability of the user U is improved.

<速さの検出>
図17を用いて速さの検出について説明する。図17は手首関節又は手関節の速さの検出方法を説明する図の一例である。速さ検出部37は、手首関節又は手関節の過去の数周期の三次元座標を用いて加速度を算出する。例えば、時刻t1の手首関節又は手関節の速度Vは、時刻t0とt1の手首関節又は手関節の三次元座標から求めることができる。なお、センサ情報が取得される周期をΔtとする。上記のようにX,Y成分だけを使用して、時刻t1の速度V1が算出される。
Vx=(Xt1−Xto)/Δt、Vy=(Yt1−Yto)/Δt、
=√(Vx+Vy
同様に、時刻t2の手首関節又は手関節の速度V2は、時刻t1とt2の手首関節又は手関節の三次元座標から求めることができる。そして、時刻t2の加速度αは、速度V1とV2の差を周期Δtで割った値なので以下のように算出できる。
α=(V−V)/Δt
したがって、過去の3周期の三次元座標があれば、速さ検出部37は周期ごとに手首関節又は手関節の加速度を算出できる。
<Detection of speed>
The speed detection will be described with reference to FIG. FIG. 17 is an example of a diagram illustrating a method for detecting the speed of the wrist joint or the wrist joint. The speed detection unit 37 calculates the acceleration by using the past three-dimensional coordinates of the wrist joint or the wrist joint. For example, the velocity V 1 of the wrist joint or the wrist joint at time t1 can be obtained from the three-dimensional coordinates of the wrist joint or the hand joint at times t0 and t1. The period at which the sensor information is acquired is Δt. As described above, the velocity V1 at time t1 is calculated using only the X and Y components.
Vx=(X t1 −X to )/Δt, Vy=(Y t1 −Y to )/Δt,
V 1 =√(Vx 2 +Vy 2 )
Similarly, the wrist joint or wrist joint velocity V2 at time t2 can be obtained from the three-dimensional coordinates of the wrist joint or wrist joint at times t1 and t2. Then, the acceleration α at the time t2 is a value obtained by dividing the difference between the speeds V1 and V2 by the period Δt, and thus can be calculated as follows.
α=(V 2 −V 1 )/Δt
Therefore, if there are three-dimensional coordinates in the past three cycles, the speed detection unit 37 can calculate the wrist joint or the acceleration of the wrist joint for each cycle.

本実施形態では速度や加速度を手の速さの指標として用いる。これらの速さと比較される閾値は、実験的に定められるものとする。例えば、停止するよりもやや速い程度の速さを閾値とする(例えば1〜10〔cm/sec〕)。操作ボタン103をクリックしようとするは手首関節又は手関節の速さはゆっくりとしている場合が多いためである。   In this embodiment, speed and acceleration are used as an index of hand speed. The thresholds to be compared with these rates shall be determined experimentally. For example, the speed that is slightly faster than the stop is set as the threshold value (for example, 1 to 10 [cm/sec]). The reason for clicking the operation button 103 is that the speed of the wrist joint or the wrist joint is often slow.

なお、手首関節又は手関節の速さとして速度を用いる場合、過去の2周期の三次元座標を用いれば速さ検出部37が速度を算出できる。また、加速度の加速度を更に算出して速さの指標としてもよい。この場合、過去の4周期の三次元座標を用いれば算出できる。   When using velocity as the velocity of the wrist joint or the wrist joint, the velocity detection unit 37 can calculate the velocity by using the three-dimensional coordinates of the past two cycles. Further, the acceleration of the acceleration may be further calculated and used as the speed index. In this case, it can be calculated by using the three-dimensional coordinates of the past four cycles.

<イベントの検出>
図18を用いて、イベントの検出方法について説明する。図18(a)は手の部分に含まれる関節と手の形状を示し、図18(b)はユーザUが手を握った状態の手の部分に含まれる関節と手の形状を示す。イベント判断部38は、一例としてユーザUが手を握り素早く開くジェスチャーをクリックというイベントとして検出する。つまり、握った(グー)時点ではマウスの左ボタンダウン、開く(パー)と左ボタンアップというイベントになる。こうすることで、ユーザはクリックの他、握ったままドラッグすることなどが可能になる。また、握っている時間が長い場合、イベント判断部38は右ボタンダウンのイベントを検出する。
<Event detection>
A method of detecting an event will be described with reference to FIG. FIG. 18A shows the joints and the shape of the hand included in the hand portion, and FIG. 18B shows the joints and the shape of the hand included in the hand portion when the user U holds the hand. The event determination unit 38 detects, as an example, an event in which the user U holds a hand and clicks a gesture that opens quickly. In other words, at the time of grasping (goo), it becomes an event of left mouse button down, open (par) and left button up. This allows the user to click and drag while holding the hand. Further, when the holding time is long, the event determining unit 38 detects the event of right button down.

上記のように、動作検出装置10は右手関節g、右手首関節f、右手先関節h、右手親指関節i(及び、左手関節、左手首関節、左手先関節、左手親指関節)の三次元座標を検出している。図示するように、ユーザUが右手を握ると、右手先関節hと右手親指関節iの三次元座標が特定の方向に大きく移動する。図示するようにX,Y座標を取ると、右手先関節hのY座標が小さくなる。また、右手親指関節iのX座標も小さくなる。   As described above, the motion detection device 10 uses the three-dimensional coordinates of the right joint g, the right wrist joint f, the right wrist joint h, the right thumb joint i (and the left wrist joint, the left wrist joint, the left wrist joint, and the left thumb joint). Is being detected. As shown in the figure, when the user U grips the right hand, the three-dimensional coordinates of the right-hand joint h and the right-hand thumb joint i largely move in a specific direction. As shown in the figure, if the X and Y coordinates are taken, the Y coordinate of the right hand joint h becomes smaller. Further, the X coordinate of the right thumb joint i also becomes smaller.

イベント判断部38は、右手先関節hのY座標が小さくなり、かつ、右手親指関節iのX座標も小さくなると、左ボタンダウンのイベントが生じたと判断する。右手先関節hのY座標が大きくなり、かつ、右手親指関節iのX座標も大きくなると、左ボタンアップのイベントが生じたと判断する。なお、右手先関節hのY座標が小さくなるか、又は、右手親指関節iのX座標も小さくなった場合に、左ボタンダウンというイベントが生じたと判断してもよい。   When the Y coordinate of the right hand joint h decreases and the X coordinate of the right thumb joint i also decreases, the event determination unit 38 determines that the event of the left button down has occurred. When the Y coordinate of the right hand joint h increases and the X coordinate of the right thumb joint i also increases, it is determined that a left button up event has occurred. Note that it may be determined that the event of left button down occurs when the Y coordinate of the right hand joint h decreases or the X coordinate of the right thumb joint i also decreases.

また、動作検出装置10は、いわゆるじゃんけん(グー、チョキ、パー)というジェスチャーを検出しているので、これを利用して握るというジェスチャーを検出してもよい。例えば、グー又はチョキというジェスチャーが検出された場合に、左ボタンダウンというイベントが生じたと判断する。   In addition, since the motion detection device 10 detects a so-called rock-paper-scissors (guo, choki, par) gesture, it may be used to detect a gesture of gripping. For example, when the gesture of goo or choki is detected, it is determined that the event of left button down has occurred.

また、イベント判断部38は、三次元座標のうち二次元の座標だけを使うのでなく、Z座標を使って握るというジェスチャーを検出してもよい。ユーザUはアプリケーションソフト120をクリックする場合に、例えば前方(又は後方)に手を移動させる。イベント判断部38は、右手関節g等の所定以上の速さのZ軸方向の三次元座標の変化を検出して、クリックというイベントが生じたと判断する。   Further, the event determination unit 38 may detect a gesture of gripping by using the Z coordinate instead of using only the two-dimensional coordinate of the three-dimensional coordinate. When the user U clicks the application software 120, for example, the user U moves his or her hand forward (or backward). The event determination unit 38 detects a change in the three-dimensional coordinates in the Z-axis direction at a speed equal to or higher than a predetermined speed, such as the right-hand joint g, and determines that an event of click has occurred.

しかしながら、ユーザUがZ方向に手を動かそうとすると、X,Y座標も動きやすくなるため、カーソル3の位置がクリックしたい位置から動いてしまうおそれがある。このため、本実施形態のように、X座標、Y座標が変化しにくい手を握るというジェスチャーが有効である。したがって、主に指を動かすなどの手を握って開く以外のジェスチャーがクリックのイベントと対応付けられていてもよい。   However, when the user U tries to move his or her hand in the Z direction, the X and Y coordinates also tend to move, and the position of the cursor 3 may move from the position where the user wants to click. Therefore, as in the present embodiment, a gesture of holding a hand in which the X coordinate and the Y coordinate are difficult to change is effective. Therefore, gestures other than holding and opening the hand, such as mainly moving a finger, may be associated with the click event.

<速さが閾値未満の場合の座標変換>
図19を用いて速さが閾値未満の場合の座標変換を説明する。図19は、速さが閾値未満の場合の座標変換を説明する図の一例である。速さ検出部37が手首関節又は手関節の速さが閾値未満になったと判断すると、座標変換部35とUI制御部36は以下のように動作する。
(i) カーソル表示部41はガイドメッシュ4をカーソル3の位置に表示する。
(ii)三次元座標が閾値以上変化したかどうか(手首関節が閾値以上の大きさで動作したかどうか)を判断する。
(iii) 三次元座標が閾値以上変化した場合、X方向又はY方向のうちどちらの成分が大きいかを判断する。
(iv) X方向又はY方向のうち成分が大きい方に、ガイドメッシュ4を沿って移動量に応じたマス目だけ移動させる。
<Coordinate conversion when speed is less than threshold>
The coordinate conversion when the speed is less than the threshold will be described with reference to FIG. FIG. 19 is an example of a diagram illustrating coordinate conversion when the speed is less than the threshold value. When the speed detecting unit 37 determines that the speed of the wrist joint or the wrist joint is less than the threshold value, the coordinate conversion unit 35 and the UI control unit 36 operate as follows.
(i) The cursor display unit 41 displays the guide mesh 4 at the position of the cursor 3.
(ii) It is determined whether the three-dimensional coordinates have changed by a threshold value or more (whether the wrist joint has operated with a size of the threshold value or more).
(iii) If the three-dimensional coordinates have changed by a threshold value or more, it is determined which component is larger in the X direction or the Y direction.
(iv) The component having the larger component in the X direction or the Y direction is moved along the guide mesh 4 by only the grid corresponding to the movement amount.

(i)について説明する。速さが閾値未満であると速さ検出部37が判断した旨の情報をカーソル表示部41が取得すると、カーソル表示部41はガイドメッシュ4の表示を開始する。図19(a)に示すように、カーソル表示部41は座標変換部35から取得したカーソル3の位置をガイドメッシュ4の所定の交点に対応付けて、交点にカーソル3を配置してガイドメッシュ4を表示する。所定の交点はガイドメッシュ4の略中央のいずれかで予め定められている。したがって、ガイドメッシュ4の略中央にカーソル3が表示される。また、このガイドメッシュ4と共に表示されるカーソル3は、速さが閾値以上である場合のカーソル3とは形状が異なっている。図19(a)では縦横の両端矢印が垂直に交わった形状である。   (i) will be described. When the cursor display unit 41 acquires information indicating that the speed detection unit 37 determines that the speed is less than the threshold value, the cursor display unit 41 starts displaying the guide mesh 4. As shown in FIG. 19A, the cursor display unit 41 associates the position of the cursor 3 acquired from the coordinate conversion unit 35 with a predetermined intersection of the guide mesh 4 and arranges the cursor 3 at the intersection to place the guide mesh 4 in the guide mesh 4. Is displayed. The predetermined intersection is set in advance at any one of the approximate centers of the guide mesh 4. Therefore, the cursor 3 is displayed in the approximate center of the guide mesh 4. Further, the cursor 3 displayed together with the guide mesh 4 has a different shape from the cursor 3 when the speed is equal to or higher than the threshold value. In FIG. 19A, the vertical and horizontal double-ended arrows vertically intersect.

カーソル3はガイドメッシュ4の交点上を移動する。ガイドメッシュ4は速さが閾値以上になると消去される。速さが閾値未満の間、ガイドメッシュ4は移動してもよいし固定でもよい。   The cursor 3 moves on the intersection of the guide mesh 4. The guide mesh 4 is erased when the speed reaches or exceeds the threshold value. While the speed is less than the threshold value, the guide mesh 4 may move or may be fixed.

なお、ガイドメッシュ4の各マスは正方形でもよいが、ディスプレイ310のアスペクト比と同じ比で縦横の長さが決定されていてもよい。   Although each square of the guide mesh 4 may be square, the vertical and horizontal lengths may be determined with the same ratio as the aspect ratio of the display 310.

次に、(ii)のように判断するのは、ユーザUが意図しないわずかな手の動きによりカーソル3の位置が変化しないようにするためである。また、カーソル3がアプリケーションソフト120の例えば操作ボタン103上にある状態でユーザUがクリックしようと握るというジェスチャーを行う場合に、ジェスチャーにより手がジェスチャー以外の動きを行う場合が少なくない。この場合、ジェスチャーした時にはカーソル3が操作ボタン103外に移動しており、ユーザUが操作ボタン103をクリックできない場合が生じてしまう。そこで、(ii)のように判断することで、ユーザUが意図しないわずかな手の動きによりカーソル3の位置が変化してしまうことを抑制できる。   Next, the determination (ii) is made to prevent the position of the cursor 3 from changing due to a slight hand movement that the user U does not intend. In addition, when the user U makes a gesture of grasping to click while the cursor 3 is on the operation button 103 of the application software 120, there are many cases where the hand makes a motion other than the gesture. In this case, when the gesture is performed, the cursor 3 has moved to the outside of the operation button 103, and the user U may not be able to click the operation button 103. Therefore, by making the determination as in (ii), it is possible to prevent the position of the cursor 3 from changing due to a slight hand movement not intended by the user U.

図19(b)では、三次元座標が閾値以上変化したものとする。すなわち、手首関節又は手関節の座標が座標(X1,Y1)から(X2,Y2)に移動したものとする。カーソル表示部41は、X方向とY方向のそれぞれの移動量ΔX,ΔYを算出する。
ΔX=X2−X1
ΔY=Y2−Y1
カーソル表示部41は、ΔX,ΔYのうち少なくとも一方が閾値以上であるかどうかを判断する。閾値は、ユーザUが静止しようとしてもふらついてしまう一般的な手首関節又は手関節の移動量、及び、動作検出装置10の誤差が考慮して決定されている。例えば数cmにすればよいが、適宜、実験的に担当者等が定めることができる。
In FIG. 19B, it is assumed that the three-dimensional coordinates have changed by a threshold value or more. That is, it is assumed that the wrist joint or the coordinates of the wrist joint have moved from the coordinates (X1, Y1) to (X2, Y2). The cursor display unit 41 calculates the movement amounts ΔX and ΔY in the X direction and the Y direction, respectively.
ΔX=X2-X1
ΔY=Y2-Y1
The cursor display unit 41 determines whether at least one of ΔX and ΔY is equal to or more than a threshold value. The threshold value is determined in consideration of the amount of movement of a general wrist joint or a wrist joint that causes the user U to wander when trying to stand still, and an error of the motion detection device 10. For example, it may be set to several cm, but can be appropriately determined experimentally by a person in charge.

(iii)について説明する。移動量ΔX,ΔYの少なくとも一方が閾値以上である場合、カーソル表示部41はΔXとΔYのどちらの方が大きいかを判断する。図19(b)ではΔX>ΔYである。   (iii) will be described. When at least one of the movement amounts ΔX and ΔY is equal to or more than the threshold value, the cursor display unit 41 determines which of ΔX and ΔY is larger. In FIG. 19B, ΔX>ΔY.

(iv)について説明する。カーソル表示部41は手首関節又は手関節の座標(X2,Y2)のうちX2のみをカーソル3の位置を決定する。カーソル3の位置のガイドメッシュにおけるy方向の位置は直前の値をそのまま使用する。座標変換部35が変換したカーソル3の位置のx座標はメッシュガイドの交点上にあるとは限らないので、カーソル表示部41はx座標をメッシュガイドの交点上に補正する。例えば、以下のように補正する。
・カーソル3の位置のx座標が最も近いメッシュガイドの交点に補正する
・カーソル3の位置のx座標の次のメッシュガイドの交点に補正する
・カーソル3の位置のx座標の手前のメッシュガイドの交点に補正する
このように補正することで、カーソル表示部41はメッシュガイドと共に表示されるカーソル3を交点上に表示できる。図19(c)では、直前のカーソル3の位置から右方向に2マス分移動した交点にカーソル3が移動して表示される。
(iv) will be described. The cursor display unit 41 determines the position of the cursor 3 with respect to only X2 of the wrist joint or the coordinates (X2, Y2) of the wrist joint. For the position in the y direction on the guide mesh at the position of the cursor 3, the previous value is used as it is. Since the x coordinate of the position of the cursor 3 converted by the coordinate conversion unit 35 is not always on the intersection of the mesh guides, the cursor display unit 41 corrects the x coordinate on the intersection of the mesh guides. For example, the correction is made as follows.
-Correct to the intersection of the mesh guide where the x-coordinate of the position of the cursor 3 is closest-Correct to the intersection of the mesh guide next to the x-coordinate of the position of the cursor 3-For the mesh guide before the x-coordinate of the position of the cursor 3 Correction to the intersection By performing the correction in this way, the cursor display unit 41 can display the cursor 3 displayed together with the mesh guide on the intersection. In FIG. 19(c), the cursor 3 is moved and displayed at the intersection point that has been moved two spaces to the right from the position of the previous cursor 3.

<手首関節又は手関節の切り替え>
ユーザUはカーソル3を大きく移動させたい場合と、操作ボタン103の近くなどのように小さく移動させたい場合がある。また、ユーザUは肘を中心に手を動かすので、手の外側の関節ほど速く動く。そこで、座標変換部35は、速さ検出部37が閾値以上の速さを検出したか否かに応じて、カーソル3の位置に変換する関節(ユーザの身体の部位)を切り替える。
A.速さが閾値以上の場合、右手関節gの三次元座標をカーソル3の位置に変換する。
B.速さが閾値未満の場合、右手首関節fの三次元座標をカーソル3の位置に変換する。
<Wrist joint or hand joint switching>
The user U may want to move the cursor 3 largely, or may want to move it small, such as near the operation button 103. Further, since the user U moves his or her hand around the elbow, the joint outside the hand moves faster. Therefore, the coordinate conversion unit 35 switches the joint (part of the user's body) to be converted to the position of the cursor 3 depending on whether or not the speed detection unit 37 detects a speed equal to or higher than the threshold value.
A. When the speed is equal to or higher than the threshold value, the three-dimensional coordinates of the right hand joint g are converted into the position of the cursor 3.
B. When the speed is less than the threshold value, the three-dimensional coordinates of the right wrist joint f are converted into the position of the cursor 3.

これにより、カーソル3を大きく移動させたい場合、ユーザUは素早くカーソル3を移動させやすくなり、操作ボタン103などの近くでは手首を使って意図した位置にカーソル3を移動させやすくなる。なお、Aの場合、右手先関節hや右手親指関節iの三次元座標を使用してもよい。肘から更に遠いので、ユーザはより速くカーソル3を操作できる。   Accordingly, when the user wants to move the cursor 3 largely, the user U can easily move the cursor 3 quickly, and can easily move the cursor 3 to an intended position by using the wrist near the operation button 103 or the like. In the case of A, the three-dimensional coordinates of the right hand joint h and the right thumb joint i may be used. Further away from the elbow, the user can operate the cursor 3 faster.

<操作受付支援アイコンについて>
図20〜22を用いてアイコン表示部42が表示する操作受付支援アイコン81について説明する。図20は、動作検出装置10によりユーザUが検出された時の操作受付支援アイコン81を示す図の一例である。アイコン表示部42は、まずディスプレイ310に操作受付支援アイコン81を大きく表示させる。なお、操作受付支援アイコン81は動作検出装置10の検出範囲51とほぼ相似の形状を有している。
<About the operation reception support icon>
The operation reception support icon 81 displayed by the icon display unit 42 will be described with reference to FIGS. 20: is an example of the figure which shows the operation reception assistance icon 81 when the user U is detected by the motion detection apparatus 10. As shown in FIG. The icon display unit 42 first displays the operation reception support icon 81 in a large size on the display 310. The operation reception support icon 81 has a shape substantially similar to the detection range 51 of the motion detection device 10.

操作受付支援アイコン81は常に表示されていてもよいし、人が検出された場合にだけ表示されてもよいが、検出された時には大きく表示される。これにより、ユーザUは動作検出装置10により検出されたことを認識できる。また、ユーザの目をディスプレイ310に向けさせる効果がある。なお、アイコン表示部42は操作受付支援アイコン81を大きく表示するだけでなく、点滅させたり色を変えたりするなどして表示してもよい。この他、ディスプレイ310と別のプロジェクタ5に操作受付支援アイコン81を表示させフォログラム投影(立体視)してもよい。   The operation reception support icon 81 may be always displayed, or may be displayed only when a person is detected, but is displayed large when it is detected. As a result, the user U can recognize that the motion detection device 10 has detected it. Moreover, there is an effect that the user's eyes are turned to the display 310. It should be noted that the icon display unit 42 may not only display the operation reception support icon 81 in a large size, but may also display it by blinking it or changing its color. In addition to this, the operation reception support icon 81 may be displayed on the projector 5 different from the display 310 to perform follogram projection (stereoscopic viewing).

図20では、ユーザUが動作検出装置10の検出範囲51の右後方から検出範囲51に進入している。情報取得部31は、ユーザUの三次元座標を取得しているので、操作受付支援アイコン81においてユーザUの位置に対応する位置(アイコン上位置という)に人アイコン82を表示する。人アイコン82がアイコン上位置に表示されるので、ユーザUは検出範囲51における自分の位置を把握できる。また、情報取得部31は、ユーザUの顔の向きを取得しているので、アイコン表示部42は顔の向きから推定した目の位置を人アイコン82に表示する。   In FIG. 20, the user U enters the detection range 51 from the right rear of the detection range 51 of the motion detection device 10. Since the information acquisition unit 31 has acquired the three-dimensional coordinates of the user U, the information acquisition unit 31 displays the person icon 82 at the position corresponding to the position of the user U (referred to as the icon position) in the operation reception support icon 81. Since the person icon 82 is displayed at the position on the icon, the user U can grasp his/her position in the detection range 51. Since the information acquisition unit 31 has acquired the orientation of the face of the user U, the icon display unit 42 displays the eye position estimated from the orientation of the face on the person icon 82.

操作受付支援アイコン81には、操作位置52に対応する場所(以下、操作位置指示表示83という)が強調して表示されており、ユーザUは人アイコン82が操作位置指示表示83に入るように移動する。   On the operation reception support icon 81, a place corresponding to the operation position 52 (hereinafter, referred to as an operation position instruction display 83) is emphasized and displayed, and the user U makes the person icon 82 enter the operation position instruction display 83. Moving.

図21は、ユーザUが操作位置52で手を挙げた際の操作受付支援アイコン81を示す図の一例である。なお、図21は、手首関節又は手関節の速さが閾値以上の場合の画面例を示している。アイコン表示部42は、ユーザUが操作位置52に入って所定時間が経過するか、又は、ユーザUが操作位置52で手を挙げてから所定時間が経過すると、操作受付支援アイコン81を小さく表示する。これにより、ユーザUがディスプレイ310に表示されたアプリケーションソフト120の画面を見やすくなる。   FIG. 21 is an example of a diagram showing the operation reception support icon 81 when the user U raises his/her hand at the operation position 52. Note that FIG. 21 shows an example of a screen when the speed of the wrist joint or the wrist joint is equal to or higher than the threshold value. The icon display unit 42 displays the operation reception support icon 81 in a small size when a predetermined time has elapsed after the user U entered the operation position 52 or when a predetermined time has elapsed after the user U raised his/her hand at the operation position 52. To do. This makes it easier for the user U to see the screen of the application software 120 displayed on the display 310.

また、ユーザUが手を挙げると操作開始検出部33はユーザUが手を挙げたことを検出するので、アイコン表示部42は人アイコン82の手を挙げる。換言すると右手を挙げた人アイコン82を表示する。これにより、手を挙げたユーザUに操作権が与えられる。ジェスチャー操作受付プログラム110は、仮に、他のユーザUが手を挙げても操作を受け付けない。図21では左後方から別のユーザUが検出範囲51に進入しているが、このユーザUはアプリケーションソフト120を操作できない。つまり、操作位置52で最も早く手を挙げたユーザU(のみ)が操作権を得る。   When the user U raises his/her hand, the operation start detection unit 33 detects that the user U has raised his/her hand, so that the icon display unit 42 raises the hand of the person icon 82. In other words, the person icon 82 with the right hand raised is displayed. As a result, the operation right is given to the user U who has raised his hand. The gesture operation acceptance program 110 does not accept an operation even if another user U raises his hand. In FIG. 21, another user U enters the detection range 51 from the left rear, but this user U cannot operate the application software 120. That is, the user U (only) who raises his/her hand at the operation position 52 earliest obtains the operation right.

ユーザUは操作位置52で上記のように操作エリア54を作り、手を動かしてカーソル3を表示したり、ジェスチャーを行いイベントを生じさせたりする。   The user U creates the operation area 54 at the operation position 52 as described above, moves the hand to display the cursor 3, or makes a gesture to generate an event.

図22(a)は、ユーザUが操作位置52で手を挙げているが手首関節又は手関節の速さが閾値未満の場合のガイドメッシュを示す図の一例である。この場合、カーソル表示部41はガイドメッシュ4の交点にカーソル3を表示する。また、カーソル3は縦又は横にしか移動しないので、ユーザUはガイドメッシュ4のマスを参考にしてカーソル3の微小な動きを制御できる。   FIG. 22A is an example of a diagram showing a guide mesh when the user U raises his/her hand at the operation position 52 but the speed of the wrist joint or the wrist joint is less than the threshold value. In this case, the cursor display unit 41 displays the cursor 3 at the intersection of the guide mesh 4. Moreover, since the cursor 3 moves only vertically or horizontally, the user U can control the minute movement of the cursor 3 with reference to the squares of the guide mesh 4.

なお、ガイドメッシュ4は表示されなくてもよい。ガイドメッシュ4がなくてもカーソル3は縦又は横にしか移動しない点に変わりはなく、ユーザUはカーソル3の微小な動きを制御できる。しかし、ガイドメッシュ4が表示されることでユーザUはマス単位にしかカーソル3を移動できないことを把握できるので、操作性しやすいと感じることが期待される。   The guide mesh 4 may not be displayed. Even if the guide mesh 4 is not provided, the cursor 3 moves only vertically or horizontally, and the user U can control the minute movement of the cursor 3. However, by displaying the guide mesh 4, the user U can understand that the cursor 3 can be moved only in units of squares, so that it is expected that the user U feels that the operability is easy.

また、ガイドメッシュ4の横線は水平でなくてもよく、縦線は垂直でなくてもよい。例えば、縦横の直線が交差していればよい。   The horizontal lines of the guide mesh 4 may not be horizontal, and the vertical lines may not be vertical. For example, vertical and horizontal straight lines may intersect.

また、図22(b)に示すように、同心円の円周上を半径方向にカーソル3が移動してもよい。   Further, as shown in FIG. 22B, the cursor 3 may move in the radial direction on the circumference of the concentric circle.

<動作手順>
図23は、ジェスチャー操作受付プログラム110がユーザUに操作権を付与するまでの手順を示すフローチャート図の一例である。図23の処理は例えば、情報処理装置30がジェスチャー操作受付プログラム110を実行中、繰り返し実行される。
<Operating procedure>
FIG. 23 is an example of a flowchart showing a procedure until the gesture operation reception program 110 gives an operation right to the user U. The processing of FIG. 23 is repeatedly executed while the information processing apparatus 30 is executing the gesture operation reception program 110, for example.

まず、人検出部32により動作検出装置10が人を検出したか否かが判断される(S10)。人が検出されない場合(S10のNo)、図23の処理は終了する。   First, the person detection unit 32 determines whether or not the motion detection apparatus 10 has detected a person (S10). When no person is detected (No in S10), the process of FIG. 23 ends.

人が検出された場合(S10のYes)、アイコン表示部42は操作受付支援アイコン81をディスプレイ310に大きく表示する(S20)。この後、アイコン表示部42は、人が検出されていても操作受付支援アイコン81を一定時間後に小さく表示する。   When a person is detected (Yes in S10), the icon display unit 42 displays the operation reception assistance icon 81 in a large size on the display 310 (S20). After that, the icon display unit 42 displays the operation reception support icon 81 in a small size after a certain time even if a person is detected.

次に、アイコン表示部42は、ユーザUの位置に基づいて人アイコン82を操作受付支援アイコン81のアイコン上位置に表示する(S30)。情報取得部31はセンサ情報を周期的に取得するので、アイコン表示部42は人アイコン82の位置を更新する。   Next, the icon display unit 42 displays the person icon 82 at the position above the icon of the operation reception support icon 81 based on the position of the user U (S30). Since the information acquisition unit 31 periodically acquires the sensor information, the icon display unit 42 updates the position of the person icon 82.

操作開始検出部33はユーザUの位置が操作位置52に入ったか否かを判断する(S40)。すなわち、ユーザUのX,Y,Z座標が操作位置52に含まれているか否かを判断する。   The operation start detection unit 33 determines whether the position of the user U has entered the operation position 52 (S40). That is, it is determined whether or not the X, Y, Z coordinates of the user U are included in the operation position 52.

ユーザUが操作位置52に入るまでは(S40のNo)、人が未検出かどうか判断される(S50)。そして、人が未検出になると(S50のYes)、図23の処理が終了する。   Until the user U enters the operation position 52 (No in S40), it is determined whether a person is not detected (S50). Then, when no person is detected (Yes in S50), the process of FIG. 23 ends.

人が検出されている間(S50のNo)、繰り返しユーザUが操作位置52に入ったか否かが判断される。   While the person is being detected (No in S50), it is repeatedly determined whether or not the user U has entered the operation position 52.

次に、人が操作位置52に入った場合(S40のYes)、操作開始検出部33はユーザUが手を挙げたか否かを判断する(S60)。例えば、手がユーザの腰より一定(以上)の高さに位置するか否かを判断する。   Next, when a person enters the operation position 52 (Yes in S40), the operation start detection unit 33 determines whether the user U has raised his hand (S60). For example, it is determined whether or not the hand is located at a certain height (or higher) than the waist of the user.

ユーザUが手を挙げるまで(S60のNo)、ステップS40以降の判断が繰り返し実行される。   Until the user U raises his/her hand (No in S60), the determinations in and after step S40 are repeatedly executed.

ユーザUが手を挙げた場合(S60のYes)、操作開始検出部33は手が所定の周辺領域に入っていないかどうかを判断する(S70)。所定の周辺領域とは例えば、立方体55の内側をいう。なお、この立方体55を用いた判断は所定の領域内に入っているかどうかの判断の一例である。例えば、右手先関節hや右手関節gが頭関節aの周辺にないことを確認する。これにより、例えば電話中のユーザUがアプリケーションソフト120を操作してしまうことを抑制できる。なお、ステップS70の判断は、操作する意志のないユーザに操作権を与えることを防ぐものであって、必須ではない。また、ステップS70の判断では、ユーザの頭から腰に向かって作成される直方体(頭から腰のやや手前までを含む直方体)の領域(体の近くの周辺領域)に手が入っていないことを判断することが好ましい。これによりユーザの姿勢に依存しない領域が作成される。具体的には、ユーザがバインダーなどの荷物を抱えているケースでも、頭周辺の領域だけでなく胴回りの領域も非操作領域に含めることができる。   When the user U raises his/her hand (Yes in S60), the operation start detection unit 33 determines whether or not the hand is in the predetermined peripheral area (S70). The predetermined peripheral region is, for example, the inside of the cube 55. Note that the determination using the cube 55 is an example of determination as to whether or not it is within a predetermined area. For example, it is confirmed that the right hand joint h and the right hand joint g are not around the head joint a. As a result, it is possible to prevent the user U on the phone from operating the application software 120, for example. Note that the determination in step S70 is to prevent the user who has no intention to operate from being given the operation right, and is not essential. In addition, in the determination in step S70, it is determined that the area (the peripheral area near the body) of the rectangular parallelepiped (the rectangular parallelepiped including the area from the head to the front of the waist) created from the user's head toward the waist is not occupied. It is preferable to judge. This creates a region that does not depend on the posture of the user. Specifically, even in the case where the user is carrying luggage such as a binder, not only the area around the head but also the area around the waist can be included in the non-operation area.

ステップS70の判断がYesの場合、操作開始検出部33は操作を開始する意志を検出して、手を挙げたユーザUに操作権を付与する(S80)。したがって、他のユーザUが操作位置52で手を挙げてもアプリケーションソフト120を操作できないようにすることができる。   When the determination in step S70 is Yes, the operation start detection unit 33 detects the intention to start the operation and gives the operation right to the user U who raised his hand (S80). Therefore, it is possible to prevent other users U from operating the application software 120 even if they raise their hands at the operation position 52.

次に、アイコン表示部42はアイコン上位置に手を挙げた人アイコン82を表示する(S90)。これによりユーザUは自分が手を挙げたことが認識されたと判断でき、操作を開始できる。   Next, the icon display unit 42 displays the person icon 82 with the hand raised at the position above the icon (S90). Thereby, the user U can determine that he/she has recognized that he has raised his hand, and can start the operation.

操作を開始する意志が検出されると、操作エリア作成部34は操作エリア54を作成する(S100)。以降、ユーザUは手関節や手首関節によりカーソル3の位置を操作したり、ジェスチャーによりアプリケーションソフト120を操作できる。ジェスチャー操作受付プログラム110はユーザUによるアプリケーションソフト120の操作を受け付けを開始する。   When the intention to start the operation is detected, the operation area creation unit 34 creates the operation area 54 (S100). After that, the user U can operate the position of the cursor 3 with a wrist joint or a wrist joint, and can operate the application software 120 with a gesture. The gesture operation acceptance program 110 starts accepting the operation of the application software 120 by the user U.

図24は、ジェスチャー操作受付プログラム110がユーザUの操作を受け付けてアプリケーションソフト120を操作する手順を示すフローチャート図の一例である。図24の処理は操作エリア54が作成されるとスタートする。   FIG. 24 is an example of a flowchart showing a procedure in which the gesture operation reception program 110 receives the operation of the user U and operates the application software 120. The process of FIG. 24 starts when the operation area 54 is created.

まず、情報取得部31がセンサ情報を取得する(S110)。   First, the information acquisition unit 31 acquires sensor information (S110).

速さ検出部37はセンサ情報に基づいて手関節の速さが閾値以上か否かを判断する(S120)。   The speed detection unit 37 determines whether the speed of the wrist joint is equal to or higher than a threshold value based on the sensor information (S120).

手関節の速さが閾値以上である場合(S120のYes)、座標変換部35は手関節の三次元座標をカーソル3の位置に変換する(S130)。   When the speed of the wrist joint is equal to or more than the threshold value (Yes in S120), the coordinate conversion unit 35 converts the three-dimensional coordinates of the wrist joint into the position of the cursor 3 (S130).

出力部39は、カーソル3の位置をアプリケーションソフト120に出力する(S140)。   The output unit 39 outputs the position of the cursor 3 to the application software 120 (S140).

また、イベント判断部38は、ユーザUがイベントを発生させるジェスチャーをしたか否かを判断する(S150)。これは、ガイドメッシュ4が表示されていなくてもユーザUはジェスチャーすることが可能なためである。   In addition, the event determination unit 38 determines whether or not the user U has made a gesture that causes an event (S150). This is because the user U can make a gesture even if the guide mesh 4 is not displayed.

イベントが検出された場合は、出力部39は、カーソル3の位置及びイベントをアプリケーションソフト120に出力する(S160)。なお、カーソル3の位置とイベントは同時に出力されなくてもよい。   When an event is detected, the output unit 39 outputs the position of the cursor 3 and the event to the application software 120 (S160). The position of the cursor 3 and the event may not be output at the same time.

次に、手関節の速さが閾値以上でない場合(S120のNo)、カーソル表示部41はガイドメッシュ4を表示中か否かを判断する(S180)。これは、ガイドメッシュ4を表示中に再度ガイドメッシュ4を表示する必要がないためである。   Next, when the speed of the wrist joint is not equal to or more than the threshold value (No in S120), the cursor display unit 41 determines whether the guide mesh 4 is being displayed (S180). This is because it is not necessary to display the guide mesh 4 again while displaying the guide mesh 4.

ガイドメッシュ4を表示中でない場合(S180のNo)、カーソル表示部41は中央にカーソル3が表示されたガイドメッシュ4を表示する(S190)。なお、カーソル表示部41は座標変換部35からカーソル3の位置を取得する。この後、処理はステップS140に進む。   If the guide mesh 4 is not being displayed (No in S180), the cursor display unit 41 displays the guide mesh 4 in which the cursor 3 is displayed in the center (S190). The cursor display unit 41 acquires the position of the cursor 3 from the coordinate conversion unit 35. Thereafter, the process proceeds to step S140.

ガイドメッシュ4を表示中である場合(S180のYes)、カーソル表示部41は手首関節の三次元座標が閾値以上移動したか否かを判断する(S200)。すなわち、手関節でなく手首関節に着目することで、ユーザUはカーソル3の微小な移動を制御しやすくなる。   If the guide mesh 4 is being displayed (Yes in S180), the cursor display unit 41 determines whether the three-dimensional coordinates of the wrist joint have moved by a threshold value or more (S200). That is, by paying attention to the wrist joint instead of the wrist joint, the user U can easily control the minute movement of the cursor 3.

ステップS200の判断がYesの場合、カーソル表示部41はガイドメッシュ4のカーソル3の位置を更新する(S210)。すなわち、カーソル表示部41は手首関節が移動したX方向とY方向の移動量の内、大きい方だけをカーソル3の位置に変換する。カーソル表示部41はこのカーソル3の位置をガイドメッシュ4の交点に補正する。この後、処理はステップS140に進み、ガイドメッシュ4にカーソル3が表示される。   If the determination in step S200 is Yes, the cursor display unit 41 updates the position of the cursor 3 on the guide mesh 4 (S210). That is, the cursor display unit 41 converts only the larger amount of movement of the wrist joint in the X and Y directions to the position of the cursor 3. The cursor display unit 41 corrects the position of the cursor 3 to the intersection of the guide mesh 4. After that, the process proceeds to step S140, and the cursor 3 is displayed on the guide mesh 4.

また、操作開始検出部33は、ユーザUが操作位置52に入っているかどうか及び手を挙げているかどうかを適宜、判断する(S170)。これは、操作する意志を確認するためである。   In addition, the operation start detection unit 33 appropriately determines whether the user U is in the operation position 52 and raising his hand (S170). This is to confirm the intention to operate.

ステップS170の判断がYesの場合、処理はステップS110に戻りアプリケーションソフト120の操作が継続される。   If the determination in step S170 is Yes, the process returns to step S110 and the operation of the application software 120 is continued.

ステップS170の判断がNoの場合、出力部39はアプリケーションソフト120に対しガイドメッシュ及びカーソルを非表示にするよう要求する(S220)。以上で、図24の処理は終了する。この場合、操作エリア54が削除されユーザUは操作権を失う。   When the determination in step S170 is No, the output unit 39 requests the application software 120 to hide the guide mesh and the cursor (S220). With the above, the processing of FIG. 24 is completed. In this case, the operation area 54 is deleted and the user U loses the operation right.

<センサ情報の記録と活用>
続いて、図25〜図28を用いて、センサ情報の記録と活用について説明する。従来のデジタルサイネージは、ユーザにより閲覧されているかどうか履歴として残せていなかった。本実形態の情報処理装置30はユーザの顔向き等を動作検出装置10から取得しているので、コンテンツの提供者などが、後でどのくらいのユーザが閲覧していたかを分析できる。また、情報記録部43はディスプレイ310に表示されたコンテンツのスクリーンショットを記録しているため、ユーザがどのようなスクリーンショットに興味を示したか等を分析できる。なお、スクリーンショットはデータサイズが大きいので、ユーザの顔向きがディスプレイ310を向いている場合にだけ、記録すればよい。
<Recording and utilizing sensor information>
Subsequently, recording and utilization of sensor information will be described with reference to FIGS. 25 to 28. Conventional digital signage cannot keep a history as to whether or not it is viewed by a user. Since the information processing apparatus 30 of the present embodiment acquires the face orientation of the user from the motion detection apparatus 10, the content provider or the like can analyze how many users have browsed later. Further, since the information recording unit 43 records the screen shot of the content displayed on the display 310, it is possible to analyze what kind of screen shot the user is interested in. Since the screen shot has a large data size, it may be recorded only when the user's face is facing the display 310.

図25は、顔向きなどの分析のために情報記録部43が記録するセンサ情報の一例を示す。図25では、XML形式で一人のユーザに関し記録されるセンサ情報が記述されている。以下、これらの情報について説明する。
<TrackingID>タグは認識されているユーザ(操作権限を持たないユーザも含む)に対して割り当てられているユーザの識別情報である。
<Glasses>タグは眼鏡をしているかどうかを示す。
<Happy>タグは笑顔かどうか(幸せそうか)を示す。
<LeftEyeClosed>タグは左目を閉じているどうかを示す。
<RightEyeClosed>タグは右目を閉じているかどうかを示す
<LookingAway>タグはこちらを向いているかどうかを示す。
<MouthMoved>タグは口が動いているかどうかを示す。
<MouthOpen>タグは口が開いているかどうかを示す。
<Yaw>タグは顔の横方向の角度(ヨー角)を示し、動作検出装置10に向かって左横に首を曲げるとプラス値、右に首を曲げるとマイナス値となる。
<Pitch>タグは顔の上下方向の角度(ピッチ角)を示し、動作検出装置10に向かって上を向くとプラス値、下を向くとマイナス値となる。
<Roll>タグは顔を傾ける方向の角度(ロール角)を示し、目や口元が垂直である場合はゼロとなる。
<PositionInfo>タグはユーザの位置を示し、<X>タグは動作検出装置10の中心から横方向の距離(右側プラス値、左側マイナス値)を示す。<Y>タグは身長を示し、<Z>タグは動作検出装置10からの距離を示す。
<MouseTrackingInfo>タグの<LeftButtonDown>タグはマウスの左ボタンを押下しているかどうかを示し、<RightButtonDown>タグはマウスの右ボタンを押下しているかどうかを示す。<MousePositionInfo>タグは、カーソルのX座標とY座標を示す。
FIG. 25 shows an example of the sensor information recorded by the information recording unit 43 for analyzing the face orientation and the like. In FIG. 25, sensor information recorded for one user is described in XML format. Hereinafter, these pieces of information will be described.
The <TrackingID> tag is identification information of a user assigned to a recognized user (including a user who does not have operation authority).
The <Glasses> tag indicates whether you are wearing glasses.
The <Happy> tag indicates whether or not you are smiling (or happy).
The <LeftEyeClosed> tag indicates whether the left eye is closed.
<RightEyeClosed> tag indicates whether the right eye is closed
The <LookingAway> tag indicates whether or not it is facing you.
The <MouthMoved> tag indicates whether the mouth is moving.
The <MouthOpen> tag indicates if the mouth is open.
The <Yaw> tag indicates an angle (yaw angle) in the lateral direction of the face, which has a positive value when the head is bent laterally toward the left toward the motion detection device 10 and has a negative value when the head is bent to the right.
The <Pitch> tag indicates the angle (pitch angle) in the vertical direction of the face, and has a positive value when facing upward toward the motion detection device 10 and a negative value when facing downward.
The <Roll> tag indicates the angle (roll angle) in which the face is tilted, and is zero when the eyes and mouth are vertical.
The <PositionInfo> tag indicates the position of the user, and the <X> tag indicates the distance in the lateral direction from the center of the motion detection device 10 (right side plus value, left side minus value). The <Y> tag indicates the height, and the <Z> tag indicates the distance from the motion detection device 10.
The <LeftButtonDown> tag of the <MouseTrackingInfo> tag indicates whether the left mouse button is pressed, and the <RightButtonDown> tag indicates whether the right mouse button is pressed. The <MousePositionInfo> tag indicates the X coordinate and Y coordinate of the cursor.

なお、<MouseTrackingInfo>や<MousePositionInfo>は操作権限を持つユーザについてだけ記録される。情報記録部43はこのような情報を各ユーザごとに記録する。   Note that <MouseTrackingInfo> and <MousePositionInfo> are recorded only for users who have operation authority. The information recording unit 43 records such information for each user.

図26は、図25のセンサ情報が取得された際に情報記録部43が取得したスクリーンショット201を示す図の一例である。したがって、コンテンツの提供者等は、<Yaw>、<Pitch>、<Roll>の各タグにより、ユーザがコンテンツのどこを見ているか(どこに興味があるか)、更に視線の滞留時間等を測定することなどができる。また、<MouseTrackingInfo>タグにより、ユーザが何か操作をしているのか、操作をしていれば何に興味があるのかを、スクリーンショット201から判断できる。   FIG. 26 is an example of a diagram showing a screen shot 201 acquired by the information recording unit 43 when the sensor information of FIG. 25 is acquired. Therefore, the content provider, etc. can measure where the user is looking at the content (where they are interested) and the dwell time of the line of sight using the <Yaw>, <Pitch>, and <Roll> tags. You can do things. Further, with the <MouseTrackingInfo> tag, it is possible to determine from the screenshot 201 whether the user is performing any operation or what the user is interested in doing.

ところで、動作検出装置10は距離情報をユーザの検出に使用しているので、複数のユーザの位置によってはユーザを検出できない場合がある。図27は、検出されないユーザを説明する図の一例である。図27では動作検出装置10の検出範囲51に3人のユーザU1〜U3がいることが示されている。しかしながら、ユーザU1とユーザU3が、動作検出装置10から見て距離方向に重なっているため、動作検出装置10はユーザU3を検出できない。すなわち、骨格情報を取得できない。   By the way, since the motion detection device 10 uses the distance information to detect the user, the user may not be detected depending on the positions of the plurality of users. FIG. 27 is an example of a diagram illustrating a user who is not detected. FIG. 27 shows that there are three users U1 to U3 in the detection range 51 of the motion detection device 10. However, since the user U1 and the user U3 overlap in the distance direction when viewed from the motion detection device 10, the motion detection device 10 cannot detect the user U3. That is, the skeleton information cannot be acquired.

しかしながら、動作検出装置10は上記のようにカラー画像202を撮像しているため、カラー画像202にはユーザU3は写っている。また、ユーザU3が写っている領域の距離情報も取得されている。情報記録部43は、例えばカラー画像202から顔認識やシルエット認識することで、人だと判断する。これにより、検出範囲51のユーザの人数を正しく取得できる。   However, since the motion detection device 10 captures the color image 202 as described above, the user U3 appears in the color image 202. Further, the distance information of the area where the user U3 is captured is also acquired. The information recording unit 43 determines that the person is a person by recognizing a face or a silhouette from the color image 202, for example. Thereby, the number of users in the detection range 51 can be correctly acquired.

ユーザU3が写っている領域は、Z方向の座標がある範囲に入っている領域(例えば、ユーザU1よりも後方の処理範囲内)として抽出できるため、顔認識などを行う領域をユーザU1よりも後方のZ座標を有する領域に制限でき検出時間を短縮できる。   The area in which the user U3 appears can be extracted as an area (for example, within the processing range behind the user U1) in the Z-direction coordinate range. The detection time can be shortened by limiting the area to the rearward Z coordinate.

このように、骨格情報だけでは一度に取得できるユーザの人数に制限があるが(現在は最大6人)、カラー画像202や距離情報と組み合わせることで、人が群がっている場合でもユーザの数を検出できる。また、ユーザU3がU1により遮られる以前のカラー画像202と遮られた後のカラー画像を比較したり、ユーザU3がU1により遮られる以前の距離情報と遮られた後の距離情報を比較することもできる。人検出部32が検出するユーザの数が急に減った場合、情報記録部43はユーザが隠れていることを推定し、隠れる前と距離情報が同程度の領域から顔認識などで探索できる。   In this way, although there is a limit to the number of users that can be acquired at one time only with skeleton information (currently, up to 6 people), by combining with color image 202 and distance information, the number of users can be increased even when people are crowded Can be detected. Also, comparing the color image 202 before the user U3 is blocked by U1 with the color image after being blocked, or comparing the distance information before the user U3 is blocked by U1 with the distance information after being blocked. You can also When the number of users detected by the person detection unit 32 suddenly decreases, the information recording unit 43 estimates that the user is hiding, and can search by face recognition or the like from a region where the distance information is the same as before the hiding.

図28は、情報記録部43がセンサ情報DB44に記憶したセンサ情報の解析例を説明する図の一例である。情報処理装置30は、センサ情報DB44に記憶したセンサ情報から時間帯ごと(図では10分)のユーザの人数を合計する。図28では、棒グラフ205の高さが時間帯ごとのユーザの数を示す。また、各棒グラフ205では、時間帯のユーザの数が、操作権を有したユーザの数204とそれ以外のユーザの数203に分けて表示されている。なお、継続的に検出されている同じユーザには同じ<TrackingID>が付与されるため、情報処理装置30が重複してカウントするおそれはほとんどない。   FIG. 28 is an example of a diagram illustrating an example of analysis of sensor information stored in the sensor information DB 44 by the information recording unit 43. The information processing device 30 totals the number of users for each time period (10 minutes in the figure) from the sensor information stored in the sensor information DB 44. In FIG. 28, the height of the bar graph 205 indicates the number of users for each time period. Further, in each bar graph 205, the number of users in the time zone is divided into the number of users 204 who have the operation right and the number of users 203 other than that, and the number of users is displayed. Since the same <TrackingID> is given to the same user that is continuously detected, there is almost no possibility that the information processing device 30 will count duplicately.

また、図28では、各時間帯のスクリーンショット201がタイムラインのように棒グラフ205の上方に表示されている。あるいは、各時間帯の代表的なスクリーンショット201が表示されてもよい。代表的なスクリーンショット201とは、時間帯の最初又は最後のスクリーンショット、又は、画像の変化が最も大きいスクリーンショットなどである。   Further, in FIG. 28, the screen shot 201 of each time zone is displayed above the bar graph 205 like a timeline. Alternatively, a representative screenshot 201 of each time period may be displayed. The representative screen shot 201 is a screen shot at the beginning or the end of the time period, or a screen shot with the largest change in the image.

したがって、コンテンツの提供者等は、多くのユーザを集めたコンテンツがどれなのか判断できる。例えば、図28のコンテンツが異なる講師(学校や予備校の先生、後援者など)の場合、どの講師に人気があるか判断できる。   Therefore, a content provider or the like can determine which content is a collection of many users. For example, in the case of teachers (teachers in schools or prep schools, supporters, etc.) having different contents in FIG. 28, it is possible to determine which teacher is popular.

<まとめ>
以上説明したように、本実施形態の情報処理装置30は、動作の速さが閾値未満の場合、カーソル3の移動方向を所定方向に制限することで、カーソル3の位置の操作性を向上させることができる。また、動作の速さが閾値未満の場合、右手首関節fが閾値以上、移動しないとカーソルが移動しないので、ユーザがクリックのジェスチャーを行う際にカーソルが移動してしまうことを抑制しやすい。また、動作の速さが閾値以上か未満かによって、異なるユーザの関節を使って操作できるのでユーザの操作性を向上できる。また、ディスプレイ310のアスペクト比によって適宜、操作エリア54の縦横の長さを変更するのでユーザによるカーソル3の操作性を向上できる。また、複数のユーザが検出された場合も、最初に操作の意志を示したユーザに操作権を付与できる。また、操作受付支援アイコン81を表示することでユーザは操作位置52に移動しやすくなり、また、自分が操作していることを把握しやすい。
<Summary>
As described above, the information processing apparatus 30 of the present embodiment improves the operability of the position of the cursor 3 by limiting the moving direction of the cursor 3 to a predetermined direction when the operation speed is less than the threshold value. be able to. Further, when the operation speed is less than the threshold value, the cursor does not move unless the right wrist joint f moves by the threshold value or more, and thus it is easy to prevent the cursor from moving when the user makes a click gesture. In addition, since the operation can be performed using the joints of different users depending on whether the operation speed is equal to or higher than the threshold value or lower than the threshold value, the operability of the user can be improved. Moreover, since the vertical and horizontal lengths of the operation area 54 are changed as appropriate according to the aspect ratio of the display 310, the operability of the cursor 3 by the user can be improved. Further, even when a plurality of users are detected, the operation right can be given to the user who first indicates the intention of the operation. Further, by displaying the operation reception support icon 81, the user can easily move to the operation position 52, and can easily understand that he/she is operating.

<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
<Other application examples>
The best mode for carrying out the present invention has been described above with reference to the embodiments, but the present invention is not limited to these embodiments, and various modifications can be made without departing from the gist of the present invention. And substitutions can be added.

例えば、本実施形態では、主にカーソルの移動やクリックなどの操作を例に説明したが、ユーザの動作から情報処理装置30は種々の情報を取得できる。例えば、コンテンツは動画である場合が多く自動的に変わっていくので、ジェスチャー操作受付プログラム110が「チャンネルを固定しますか?」などの質問をコンテンツに重畳して(スーパーインポーズする)もよい。これに対し、ユーザが所定の動作を取ると、イベント判断部38がそれを検出して、出力部39がアプリケーションソフト120に一時停止を要求する。なお、質問はユーザが検出されている際にだけ表示することが好ましい。   For example, in the present embodiment, the operation such as the movement of the cursor or the click is mainly described as an example, but the information processing apparatus 30 can acquire various information from the operation of the user. For example, since the content is often a moving image and changes automatically, the gesture operation reception program 110 may superimpose (superimpose) a question such as “Do you want to fix the channel?” on the content. .. On the other hand, when the user takes a predetermined action, the event determination unit 38 detects it and the output unit 39 requests the application software 120 to pause. Note that it is preferable to display the question only when the user is detected.

また、ユーザが見ているコンテンツに簡単な質問(アンケート)を同様に表示して、ユーザの動作によりアンケート結果を取得することもできる。   Further, a simple question (questionnaire) can be similarly displayed on the content the user is looking at, and the questionnaire result can be acquired by the user's action.

例えば、情報処理装置30はサーバクライアント方式で動作してもよい。この場合、情報処理装置30はセンサ情報をサーバに送信し、サーバからカーソルの位置とイベントを受信する。そして、アプリケーションソフト120に送出する。   For example, the information processing device 30 may operate in a server client system. In this case, the information processing device 30 transmits the sensor information to the server and receives the cursor position and the event from the server. Then, it is sent to the application software 120.

また、主にジェスチャー操作受付プログラムがカーソル3を表示すると説明したが、適宜OS130の機能を利用してカーソル3を表示してよい。また、アプリケーションソフト120がカーソル3を表示してもよい。   Although it has been described that the gesture operation reception program mainly displays the cursor 3, the cursor 3 may be displayed by appropriately using the function of the OS 130. Further, the application software 120 may display the cursor 3.

また、操作エリア54内の座標とカーソルの位置を1対1に対応させるのではなく、ユーザは手の移動量でカーソルの位置を操作してもよい。例えば、カーソルと移動させる場合、手を握り、一定以上の速さで動かす。座標変換部は、手の移動量をカーソルの移動量に変換して、最後のカーソルの位置を更新する。したがって、この場合、操作エリア54はなくてもよい。   Further, instead of associating the coordinates in the operation area 54 with the cursor position on a one-to-one basis, the user may operate the cursor position with the amount of movement of the hand. For example, when moving with the cursor, hold the hand and move it at a certain speed or more. The coordinate conversion unit converts the amount of movement of the hand into the amount of movement of the cursor, and updates the position of the last cursor. Therefore, in this case, the operation area 54 may be omitted.

また、本実施例では左クリックのジェスチャーを説明したが、情報処理装置30が右手と左手を区別して検出するなどにより右クリックのジェスチャーを入力することなども可能である。また、足などの関節の三次元座標や顔向きなどでカーソルを移動させることもできる。また、手を握る以外に、人間の多種多様なジェスチャーをイベントと対応付けることができる。   Further, although the left-click gesture has been described in the present embodiment, it is also possible to input the right-click gesture by the information processing device 30 distinguishingly detecting the right hand and the left hand. Also, the cursor can be moved according to the three-dimensional coordinates of a joint such as a foot or the face orientation. In addition to holding hands, various human gestures can be associated with events.

また、手を挙げる動作が操作権を得る動作であると説明したが、以下のような動作により操作権が付与されてもよい。
・マイク17により声とか音(手を叩く)が検出された場合
・操作開始検出部33が検出した声とか音(手を叩く)が特定のリズムであると判断した場合
・操作開始検出部33が画像データを解析してスマートフォンなどの無線機器を持っていると判断した場合
・ユーザが持っているスマホなどの無線機器から送信された信号を操作開始検出部33が検出した場合
・ユーザが足を上げたことを操作開始検出部33が検出した場合
・手の形が予め定めた条件と一致する特定の形になったことを操作開始検出部33が検出した場合(グー、チョキ、パー等)
・ユーザが立っていることを操作開始検出部33が検出した場合(セミナーなどで会場に座っている人が立った場合に操作権を与えることができる)
・顔の表情が予め定めた条件と一致する特定の表情になったことを操作開始検出部33が検出した場合(例えば、笑っている等)
・ユーザの視線(顔向き)が特定の領域に向かっていることを操作開始検出部33が検出した場合
また、図7などの構成例は、情報処理装置30による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。情報処理装置30の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように分割することもできる。
Further, although the operation of raising the hand is the operation of obtaining the operation right, the operation right may be given by the following operation.
When the voice or sound (clapping hand) is detected by the microphone 17. When the voice or sound (clapping hand) detected by the operation start detection unit 33 is determined to have a specific rhythm. If the user analyzes the image data and determines that he/she has a wireless device such as a smartphone, or if the operation start detection unit 33 detects a signal transmitted from a wireless device such as a smartphone that the user has, When the operation start detection unit 33 detects that the hand has been raised-When the operation start detection unit 33 detects that the shape of the hand has become a specific shape that matches a predetermined condition (such as goo, choki, par, etc.) )
When the operation start detection unit 33 detects that the user is standing (the operation right can be given when a person sitting at the venue stands at a seminar etc.)
When the operation start detection unit 33 detects that the facial expression has a specific facial expression that matches a predetermined condition (for example, laughing)
-When the operation start detection unit 33 detects that the user's line of sight (face direction) is directed to a specific area Further, the configuration example of FIG. 7 and the like is for facilitating the understanding of the processing by the information processing apparatus 30. It is divided according to the main functions. The present invention is not limited by the division method or name of the processing unit. The processing of the information processing device 30 can be divided into more processing units according to the processing content. It is also possible to divide one processing unit so as to include more processing.

なお、速さ検出部37は速さ検出手段の一例であり、座標変換部35は位置情報作成手段の一例であり、カーソル表示部41は位置指示表示情報表示手段の一例であり、イベント判断部38はジェスチャー検出手段の一例であり、出力部39は出力手段の一例であり、操作開始検出部33は開始動作検出手段の一例であり、操作エリア作成部34はエリア作成手段の一例であり、アイコン表示部42はアイコン表示手段の一例である。情報記録部43は画像記録手段の一例である。   The speed detection unit 37 is an example of a speed detection unit, the coordinate conversion unit 35 is an example of a position information creation unit, the cursor display unit 41 is an example of a position instruction display information display unit, and an event determination unit. 38 is an example of a gesture detecting unit, the output unit 39 is an example of an output unit, the operation start detecting unit 33 is an example of a start action detecting unit, the operation area creating unit 34 is an example of an area creating unit, The icon display unit 42 is an example of an icon display unit. The information recording unit 43 is an example of an image recording unit.

3 カーソル
4 ガイドメッシュ
10 動作検出装置
30 情報処理装置
31 情報取得部
32 人検出部
33 操作開始検出部
34 操作エリア作成部
35 座標変換部
36 UI制御部
37 検出部
38 イベント判断部
39 出力部
41 カーソル表示部
42 アイコン表示部
43 情報記録部
54 操作エリア
81 操作受付支援アイコン
100 情報処理システム
3 cursor 4 guide mesh 10 motion detection device 30 information processing device 31 information acquisition unit 32 person detection unit 33 operation start detection unit 34 operation area creation unit 35 coordinate conversion unit 36 UI control unit 37 detection unit 38 event determination unit 39 output unit 41 Cursor display part 42 Icon display part 43 Information recording part 54 Operation area 81 Operation acceptance support icon 100 Information processing system

特開2015−176451号公報JP, 2005-176451, A

Claims (19)

動作検出装置が検出するユーザの動作に関する動作情報に基づき、表示装置において表示されるユーザが指示する位置を示す位置指示表示情報の位置情報を作成する情報処理装置であって、
前記動作情報に基づきユーザの動作の速さを検出する速さ検出手段と、
前記速さ検出手段が検出した速さが予め定められた速さの条件に合致しない場合、前記位置指示表示情報の移動方向を所定方向に制限して前記位置情報を作成する位置情報作成手段と、を有し、
前記位置情報作成手段は、前記速さ検出手段が検出した速さが閾値以上か閾値未満かによって異なるユーザの身体の部位を用いて前記位置情報を作成する情報処理装置。
An information processing device for creating position information of position indication display information indicating a position indicated by a user displayed on a display device, based on motion information related to a user's motion detected by a motion detection device,
Speed detection means for detecting the speed of the user's motion based on the motion information,
Position information creating means for creating the position information by limiting the moving direction of the position indication display information to a predetermined direction when the speed detected by the speed detecting means does not match a predetermined speed condition; Has,
The information processing apparatus, wherein the position information creating unit creates the position information using a body part of a user that differs depending on whether the speed detected by the speed detecting unit is equal to or more than a threshold value or less than a threshold value .
前記位置情報作成手段は、前記表示装置の横方向又は縦方向に前記位置指示表示情報の移動方向を制限する請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the position information creating unit limits a moving direction of the position instruction display information in a horizontal direction or a vertical direction of the display device. 前記位置情報に基づいて前記位置指示表示情報を表示する位置指示表示情報表示手段を有し、
前記速さ検出手段が検出した速さが閾値未満の場合、前記位置指示表示情報表示手段は、前記位置指示表示情報をメッシュと共に該メッシュの交点に表示する請求項1又は2に記載の情報処理装置。
A position indication display information display means for displaying the position indication display information based on the position information,
The information processing according to claim 1 or 2, wherein when the speed detected by the speed detection means is less than a threshold value, the position indication display information display means displays the position indication display information together with a mesh at an intersection of the mesh. apparatus.
前記速さ検出手段が検出した速さが閾値未満の場合、前記位置情報作成手段はユーザが動作した大きさが所定以上の場合に、前記メッシュにおける前記位置指示表示情報の位置を更新する請求項3に記載の情報処理装置。   When the speed detected by said speed detecting means is less than a threshold value, said position information creating means updates the position of said position indication display information on said mesh when the size of the user's movement is greater than or equal to a predetermined value. The information processing apparatus according to item 3. 前記速さ検出手段が検出した速さが閾値以上の場合に用いられるユーザの身体の部位は手関節であり、前記速さ検出手段が検出した速さが閾値未満の場合に用いられるユーザの身体の部位は手首関節であることを特徴とする請求項1に記載の情報処理装置。The body part of the user used when the speed detected by the speed detecting means is equal to or higher than the threshold is a wrist joint, and the body of the user used when the speed detected by the speed detecting means is less than the threshold. The information processing apparatus according to claim 1, wherein the part is a wrist joint. 前記動作情報に基づいて予め定められたジェスチャーを検出するジェスチャー検出手段と、
前記位置情報及び前記ジェスチャー検出手段が検出したジェスチャーをアプリケーションソフトに出力する出力手段と、を有する請求項1〜5のいずれか1項に記載の情報処理装置。
Gesture detection means for detecting a predetermined gesture based on the motion information,
The information processing apparatus according to claim 1, further comprising: an output unit that outputs the position information and the gesture detected by the gesture detection unit to application software.
前記ジェスチャー検出手段は、前記動作情報に基づいてユーザが手首を動かさずに手先を動かすジェスチャーを検出する請求項6に記載の情報処理装置。   7. The information processing apparatus according to claim 6, wherein the gesture detection unit detects a gesture in which the user moves a hand without moving a wrist based on the motion information. 前記ユーザが前記位置情報の入力を開始するために行う予め定められた動作を前記動作情報に基づき検出する開始動作検出手段を有し、
前記動作検出装置が複数のユーザを検出している場合、前記開始動作検出手段は、複数のユーザのうち最も早く前記予め定められた動作を行ったユーザに前記位置情報を入力するための操作権を与え、
前記位置情報作成手段は、前記開始動作検出手段が前記操作権を与えたユーザの動作から前記位置情報を作成する請求項1〜7のいずれか1項に記載の情報処理装置。
A start motion detection unit that detects a predetermined motion performed by the user to start inputting the position information based on the motion information;
When the motion detection device detects a plurality of users, the start motion detection means has an operation right for inputting the position information to the user who has performed the predetermined motion earliest among the plurality of users. give,
The information processing apparatus according to any one of claims 1 to 7, wherein the position information creating unit creates the position information from the action of the user who has been given the operation right by the start action detecting unit.
前記予め定められた動作は、手を挙げる動作であり、
前記開始動作検出手段が前記予め定められた動作を検出した場合、肩の上方に操作エリアを作成するエリア作成手段を有し、
前記位置情報作成手段は、前記操作エリアの原点を基準とするユーザの手の座標を、前記表示装置における前記位置指示表示情報の前記位置情報に変換する請求項8に記載の情報処理装置。
The predetermined motion is a motion of raising a hand,
When the start motion detecting means detects the predetermined motion, the area creating means creates an operation area above the shoulder,
The information processing apparatus according to claim 8, wherein the position information creating unit converts the coordinates of the user's hand with respect to the origin of the operation area as the position information of the position indication display information on the display device.
前記予め定められた動作は、手を挙げる動作かつ手がユーザの体の予め定められた所定の周辺領域に含まれない動作である請求項9に記載の情報処理装置。   The information processing apparatus according to claim 9, wherein the predetermined motion is a motion of raising a hand and a motion in which the hand is not included in a predetermined peripheral area of the user's body. 前記エリア作成手段は、前記表示装置のアスペクト比に応じて、縦横の長さが異なる前記操作エリアを作成する請求項9又は10に記載の情報処理装置。   The information processing apparatus according to claim 9 or 10, wherein the area creating means creates the operation areas having different vertical and horizontal lengths according to an aspect ratio of the display device. 前記動作検出装置がユーザを検出した場合、前記動作検出装置のユーザの検出範囲を前記表示装置に表示すると共に、前記動作情報に含まれる前記ユーザの位置に基づいて前記検出範囲の中に前記ユーザを示す人アイコンを表示するアイコン表示手段を有する請求項1〜11のいずれか1項に記載の情報処理装置。   When the motion detection device detects a user, the detection range of the user of the motion detection device is displayed on the display device, and the user is included in the detection range based on the position of the user included in the motion information. The information processing apparatus according to any one of claims 1 to 11, further comprising: an icon display unit that displays a person icon indicating. 前記アイコン表示手段は、ユーザが前記位置情報を入力するための位置を前記検出範囲に明示する請求項12に記載の情報処理装置。   The information processing apparatus according to claim 12, wherein the icon display unit clearly indicates a position for a user to input the position information in the detection range. 前記位置で前記ユーザが手を挙げた場合、前記アイコン表示手段は、手を挙げている前記人アイコンを表示する請求項13に記載の情報処理装置。   The information processing apparatus according to claim 13, wherein when the user raises a hand at the position, the icon display unit displays the icon of the person holding the hand. 予め定められた速さの条件に合致しない場合とは、速さが閾値未満である場合である請求項1〜14のいずれか1項に記載の情報処理装置。   The information processing apparatus according to any one of claims 1 to 14, wherein the case where the speed does not meet a predetermined speed condition is a case where the speed is less than a threshold value. 前記動作情報に含まれる前記ユーザの顔向きに関する情報と、ユーザの数と、前記表示装置に表示された画像を対応付けて記録する画像記録手段を有する請求項1〜15のいずれか1項に記載の情報処理装置。   The image recording means for recording the information regarding the face orientation of the user included in the motion information, the number of users, and the image displayed on the display device in association with each other. The information processing device described. 動作検出装置が検出するユーザの動作に関する動作情報に基づき、表示装置において表示されるユーザが指示する位置を示す位置指示表示情報の位置情報を作成する情報処理装置を、
前記動作情報に基づきユーザの動作の速さを検出する速さ検出手段と、
前記速さ検出手段が検出した速さが予め定められた速さの条件に合致しない場合、前記位置指示表示情報の移動方向を所定方向に制限して前記位置情報を作成する位置情報作成手段、として機能させるためのプログラムであって、
前記位置情報作成手段は、前記速さ検出手段が検出した速さが閾値以上か閾値未満かによって異なるユーザの身体の部位を用いて前記位置情報を作成するプログラム。
An information processing device that creates position information of position indication display information indicating a position indicated by a user displayed on a display device based on motion information regarding a user's motion detected by a motion detection device
Speed detection means for detecting the speed of the user's motion based on the motion information,
If the speed detected by the speed detecting means does not match the condition of a predetermined speed, position information creating means for creating the position information by limiting the moving direction of the position indication display information to a predetermined direction , an order of the program to function as,
The position information creating means is a program for creating the position information using a body part of a user which differs depending on whether the speed detected by the speed detecting means is equal to or higher than a threshold or lower than the threshold .
動作検出装置が検出するユーザの動作に関する動作情報に基づき、表示装置において表示されるユーザが指示する位置を示す位置指示表示情報の位置情報を作成する情報処理装置が行う位置情報作成方法であって、
速さ検出手段が、前記動作情報に基づきユーザの動作の速さを検出するステップと、
位置情報作成手段が、前記速さ検出手段が検出した速さが予め定められた速さの条件に合致しない場合、前記位置指示表示情報の移動方向を所定方向に制限して前記位置情報を作成するステップと、を有し、
前記位置情報作成手段は、前記速さ検出手段が検出した速さが閾値以上か閾値未満かによって異なるユーザの身体の部位を用いて前記位置情報を作成する位置情報作成方法。
A position information creating method performed by an information processing device, which creates position information of position pointing display information indicating a position pointed by a user displayed on a display device based on motion information related to a user's motion detected by a motion detecting device. ,
Speed detecting means detects the speed of the user's motion based on the motion information;
When the speed information detecting means does not match the speed detected by the speed detecting means with a predetermined speed condition, the position information creating means creates the position information by limiting the moving direction of the position indication display information to a predetermined direction. And a step of
The position information creating means creates the position information using the body part of the user, which differs depending on whether the speed detected by the speed detecting means is equal to or more than a threshold value or less than the threshold value .
ユーザの動作に関する動作情報を検出する動作検出装置と、
前記動作情報に基づきユーザの動作の速さを検出する速さ検出手段と、
前記速さ検出手段が検出した速さが予め定められた速さの条件に合致しない場合、表示装置において表示されるユーザが指示する位置を示す位置指示表示情報の移動方向を所定方向に制限して前記位置指示表示情報の位置情報を作成する位置情報作成手段と、を有し、
前記位置情報作成手段は、前記速さ検出手段が検出した速さが閾値以上か閾値未満かによって異なるユーザの身体の部位を用いて前記位置情報を作成する情報処理装置と、を有する情報処理システム。
A motion detection device that detects motion information related to a user's motion;
Speed detection means for detecting the speed of the user's motion based on the motion information,
When the speed detected by the speed detecting means does not match the predetermined speed condition, the moving direction of the position indication display information indicating the position indicated by the user displayed on the display device is restricted to a predetermined direction. Position information creating means for creating position information of the position indication display information,
An information processing system, wherein the position information creating unit includes an information processing device that creates the position information using a body part of a user that differs depending on whether the speed detected by the speed detecting unit is equal to or more than a threshold value or less than a threshold value. ..
JP2016133342A 2016-07-05 2016-07-05 Information processing device, program, position information creation method, information processing system Active JP6699406B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2016133342A JP6699406B2 (en) 2016-07-05 2016-07-05 Information processing device, program, position information creation method, information processing system
EP17178703.9A EP3267289B1 (en) 2016-07-05 2017-06-29 Information processing apparatus, position information generation method, and information processing system
US15/640,730 US10936077B2 (en) 2016-07-05 2017-07-03 User-interactive gesture and motion detection apparatus, method and system, for tracking one or more users in a presentation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016133342A JP6699406B2 (en) 2016-07-05 2016-07-05 Information processing device, program, position information creation method, information processing system

Publications (2)

Publication Number Publication Date
JP2018005660A JP2018005660A (en) 2018-01-11
JP6699406B2 true JP6699406B2 (en) 2020-05-27

Family

ID=60949414

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016133342A Active JP6699406B2 (en) 2016-07-05 2016-07-05 Information processing device, program, position information creation method, information processing system

Country Status (1)

Country Link
JP (1) JP6699406B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7224799B2 (en) * 2018-07-13 2023-02-20 キヤノン株式会社 IMAGE PROJECTION DEVICE, CONTROL METHOD FOR IMAGE PROJECTION DEVICE, AND PROGRAM
CN112740226A (en) * 2020-04-28 2021-04-30 深圳市大疆创新科技有限公司 Operating system and method of movable object based on human body indication

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009042579A1 (en) * 2007-09-24 2009-04-02 Gesturetek, Inc. Enhanced interface for voice and video communications
US9898675B2 (en) * 2009-05-01 2018-02-20 Microsoft Technology Licensing, Llc User movement tracking feedback to improve tracking
US20130241821A1 (en) * 2010-11-10 2013-09-19 Nec Corporation Image processing system, image processing method, and storage medium storing image processing program
US8920241B2 (en) * 2010-12-15 2014-12-30 Microsoft Corporation Gesture controlled persistent handles for interface guides
JP2014048936A (en) * 2012-08-31 2014-03-17 Omron Corp Gesture recognition device, control method thereof, display equipment, and control program
JP2015176451A (en) * 2014-03-17 2015-10-05 京セラドキュメントソリューションズ株式会社 Pointing control device and pointing control program
JP6011579B2 (en) * 2014-05-21 2016-10-19 株式会社デンソー Gesture input device

Also Published As

Publication number Publication date
JP2018005660A (en) 2018-01-11

Similar Documents

Publication Publication Date Title
US10936077B2 (en) User-interactive gesture and motion detection apparatus, method and system, for tracking one or more users in a presentation
US11494000B2 (en) Touch free interface for augmented reality systems
US11323658B2 (en) Display apparatus and control methods thereof
EP2919104B1 (en) Information processing device, information processing method, and computer-readable recording medium
US6594616B2 (en) System and method for providing a mobile input device
US20180292907A1 (en) Gesture control system and method for smart home
US20130055143A1 (en) Method for manipulating a graphical user interface and interactive input system employing the same
EP2790089A1 (en) Portable device and method for providing non-contact interface
Aghajan et al. Human-centric interfaces for ambient intelligence
CN103858074A (en) System and method for interfacing with a device via a 3d display
CN103529942A (en) Touchless gesture-based input
JP2004246578A (en) Interface method and device using self-image display, and program
KR102413074B1 (en) User terminal device, Electronic device, And Method for controlling the user terminal device and the electronic device thereof
Mäkelä et al. " It's Natural to Grab and Pull": Retrieving Content from Large Displays Using Mid-Air Gestures
Clark et al. Seamless interaction in space
JP6834197B2 (en) Information processing equipment, display system, program
JP6699406B2 (en) Information processing device, program, position information creation method, information processing system
KR20220057388A (en) Terminal for providing virtual augmented reality and control method thereof
US20240137462A1 (en) Display apparatus and control methods thereof
Xie et al. Natural Bare-Hand Interaction for Remote Operating Large Touch Screen.
WO2023028569A1 (en) Product comparison and upgrade in a virtual environment
Pyryeskin Investigating Selection above a Multitouch Surface
Bauer Large Display Interaction Using Mobile Devices

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190522

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200114

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200313

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200413

R151 Written notification of patent or utility model registration

Ref document number: 6699406

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151