JP2017058817A - Information processing device, program, and recording medium - Google Patents

Information processing device, program, and recording medium Download PDF

Info

Publication number
JP2017058817A
JP2017058817A JP2015181577A JP2015181577A JP2017058817A JP 2017058817 A JP2017058817 A JP 2017058817A JP 2015181577 A JP2015181577 A JP 2015181577A JP 2015181577 A JP2015181577 A JP 2015181577A JP 2017058817 A JP2017058817 A JP 2017058817A
Authority
JP
Japan
Prior art keywords
clustering
light
feature amount
cluster
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.)
Pending
Application number
JP2015181577A
Other languages
Japanese (ja)
Inventor
洋平 加藤
Yohei Kato
洋平 加藤
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 JP2015181577A priority Critical patent/JP2017058817A/en
Publication of JP2017058817A publication Critical patent/JP2017058817A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Position Input By Displaying (AREA)

Abstract

PROBLEM TO BE SOLVED: To appropriately detect the operation position of an operation by fingers of both hands while suppressing costs when detecting coordinates indicated by an indication unit that performs an indication operation on the face of a board.SOLUTION: When detecting coordinates of an indication operation performed by fingers of both hands on the board face of a display 200, a coordinate detection system 500 receives a light radiated from a periphery light-emission unit and propagating down the board face of the display with the detection units 11a-11d a computer 100, the system in which a detection control unit 131 acquires the received amount of light of the detection units in correlation to an incident direction, a block area extraction unit 132 extracts a block area where the received amount of light is below a prescribed standard, a block area feature value calculation unit 133 calculates its feature value, and a block area clustering unit 134 performs clustering to each block area on the basis of the feature value of each block area. A trigonometric measurement unit 136 calculates the coordinates of the indication operation on the basis of the feature value of each cluster obtained by clustering.SELECTED DRAWING: Figure 3

Description

この発明は、情報処理装置、プログラム及び記録媒体に関する。   The present invention relates to an information processing apparatus, a program, and a recording medium.

従来から、ディスプレイ画面と座標入力装置とを一体化し、ディスプレイ画面上をタッチしながらディスプレイ画面に表示される画像を制御することができるタッチパネル付きディスプレイ装置が知られている。また、このような装置において、再帰反射部材と光学ユニットを用いて、光学的に座標入力面に対してなされた操作の位置の方向を、2つの異なる位置に設けたセンサからそれぞれ検知して、その検知結果に基づき操作位置の座標を算出する技術が知られている。
このような技術については例えば特許文献1に記載がある。
Conventionally, a display device with a touch panel is known in which a display screen and a coordinate input device are integrated, and an image displayed on the display screen can be controlled while touching the display screen. Further, in such an apparatus, using the retroreflective member and the optical unit, the direction of the operation position optically performed on the coordinate input surface is detected from sensors provided at two different positions, respectively. A technique for calculating the coordinates of the operation position based on the detection result is known.
Such a technique is described in Patent Document 1, for example.

しかし、上述したような従来の光学式座標入力装置では、両手でタッチを行った場合に複数の指の影が重なり合ってしまうと、タッチを正しく検出できなかった。このため、両手を使ったジェスチャ操作の機能を設けることができないという問題があった。
この点について、操作位置を検出するための光学センサの数を増やすことにより、検出可能なタッチ点の数は増えるが、複数の指の影が重なり合ってしまった場合はタッチを正しく検出できないという問題は残る。また、コストも上がってしまう。
However, in the conventional optical coordinate input device as described above, when the touch of both hands is performed and the shadows of a plurality of fingers overlap, the touch cannot be detected correctly. For this reason, there has been a problem in that a gesture operation function using both hands cannot be provided.
In this regard, the number of touch points that can be detected increases by increasing the number of optical sensors for detecting the operation position, but the touch cannot be detected correctly if the shadows of multiple fingers overlap. Remains. In addition, the cost increases.

静電容量方式のセンサを用いた場合は入力可能なタッチ点数は増え、両手でのタッチを検出することはできるが、よりいっそうコストが上がってしまう。また、アレイ状の光学センサを用いた場合、入力可能なタッチ点数は増えるが、複数の指の影の重なりによる誤検出を十分に低減することはできない。
また、特許文献1にも、2つの指示具が重なっても安定して精度劣化の少ない座標入力を行うことを目的とした技術が開示されているが、この構成であっても、両手の10本の手指のように、多数のタッチが同時になされる場合、その操作位置を正しく検出することは難しい。
When a capacitive sensor is used, the number of touch points that can be input is increased and a touch with both hands can be detected, but the cost is further increased. In addition, when an arrayed optical sensor is used, the number of touch points that can be input increases, but it is not possible to sufficiently reduce erroneous detection due to overlapping of shadows of a plurality of fingers.
Also, Patent Document 1 discloses a technique for stably inputting coordinates with little deterioration in accuracy even when two pointing tools overlap, but even with this configuration, both hands 10 When a large number of touches are made simultaneously like a finger of a book, it is difficult to correctly detect the operation position.

この発明は、以上のような問題を解決し、盤面に対して指示動作を行う指示部により指示された座標を検出する場合において、コストを抑えつつ、両手の手指による操作の操作位置を適切に検出できるようにすることを目的とする。なお、全ての手指による操作位置を個別に検出できることまでは要しない。   The present invention solves the above-described problems, and appropriately detects the operation position of the fingers of both hands while reducing the cost when detecting the coordinates instructed by the instruction unit that performs the instruction operation on the board surface. The purpose is to enable detection. Note that it is not necessary to be able to individually detect the operation positions of all fingers.

この発明の情報処理装置は、上記の目的を達成するため、盤面に対して指示動作を行う指示部により指示された座標を検出する情報処理装置において、所定の光源から照射され上記盤面上を進む光を受光する受光手段と、上記受光手段の受光光量を、入射方向と対応付けて取得する光量取得手段と、上記光量取得手段が取得した受光光量が所定の基準を下回る遮断領域を抽出しその特徴量を算出する特徴量算出手段と、上記特徴量算出手段が算出した各遮断領域の特徴量に基づき、その各遮断領域をクラスタリングするクラスタリング手段と、上記クラスタリング手段により得られた各クラスタの特徴量に基づき、上記指示部により指示された座標を算出する座標算出手段とを設けたものである。   In order to achieve the above object, an information processing apparatus according to the present invention detects a coordinate instructed by an instruction unit that performs an instruction operation on a board surface. The information processing apparatus is irradiated with a predetermined light source and travels on the board surface. A light receiving means for receiving light, a light quantity acquisition means for acquiring the received light quantity of the light receiving means in association with an incident direction, and a cut-off area in which the received light quantity acquired by the light quantity acquisition means is below a predetermined reference A feature quantity calculating means for calculating a feature quantity; a clustering means for clustering each block area based on the feature quantity for each block area calculated by the feature quantity calculation means; and a feature of each cluster obtained by the clustering means. Coordinate calculation means for calculating the coordinates instructed by the instruction unit based on the quantity is provided.

上記構成によれば、盤面に対して指示動作を行う指示部により指示された座標を検出する場合において、コストを抑えつつ、両手の手指による操作の操作位置を適切に検出できるようにすることができる。   According to the above configuration, it is possible to appropriately detect the operation position of the operation with the fingers of both hands while suppressing the cost when detecting the coordinates instructed by the instruction unit that performs the instruction operation on the board surface. it can.

この発明の情報処理装置の一実施形態であるコンピュータを含む座標検出システムの構成を示す図である。It is a figure which shows the structure of the coordinate detection system containing the computer which is one Embodiment of the information processing apparatus of this invention. 図1に示したコンピュータのハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of the computer shown in FIG. 図1に示した座標検出システムが備える、指示操作がなされた座標を検出するための機能の構成を示す図である。It is a figure which shows the structure of the function for detecting the coordinate with which instruction | indication operation was made with which the coordinate detection system shown in FIG. 1 was equipped. 図3に示した各部の機能により指示操作の座標を特定する処理のフローチャートである。It is a flowchart of the process which specifies the coordinate of instruction | indication operation by the function of each part shown in FIG. 遮断領域の抽出及びラベリングの一例を示す図である。It is a figure which shows an example of extraction of a interruption | blocking area | region, and labeling. 図4のステップS14で実行するクラスタリングの処理の一例のフローチャートである。It is a flowchart of an example of the process of clustering performed by step S14 of FIG. 図6のステップS30の処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of a process of FIG.6 S30. ディスプレイの盤面に対する指示操作の例を示す図である。It is a figure which shows the example of instruction | indication operation with respect to the board surface of a display. 図8Aの操作がなされた場合になされる遮断領域のクラスタリングについての説明図である。It is explanatory drawing about the clustering of the interruption | blocking area | region performed when operation of FIG. 8A is made. ディスプレイの盤面に対する指示操作の別の例を示す図である。It is a figure which shows another example of instruction | indication operation with respect to the board surface of a display. 図9Aの操作がなされた場合になされる遮断領域のクラスタリングについての説明図である。It is explanatory drawing about the clustering of the interruption | blocking area | region performed when operation of FIG. 9A is made. ディスプレイの盤面に対する指示操作のさらに別の例を示す図である。It is a figure which shows another example of instruction | indication operation with respect to the board surface of a display. 図10Aの操作がなされた場合になされる、図6の処理による遮断領域のクラスタリングについての説明図である。It is explanatory drawing about the clustering of the interruption | blocking area | region by the process of FIG. 6 performed when operation of FIG. 10A is made. 図4のステップS14で実行するクラスタリングの処理の別の例のフローチャートである。It is a flowchart of another example of the process of clustering performed by step S14 of FIG. 図10Aの操作がなされた場合になされる、図11の処理による遮断領域のクラスタリングについての説明図である。It is explanatory drawing about the clustering of the interruption | blocking area | region by the process of FIG. 11 performed when operation of FIG. 10A is made. 発光部及び検出部の別の構成例を示す図である。It is a figure which shows another structural example of a light emission part and a detection part.

以下、この発明の実施形態について、図面を参照しつつ説明する。
図1は、この発明の情報処理装置の一実施形態であるコンピュータ100を含む座標検出システムのシステム構成図の一例である。
座標検出システム500は、ディスプレイ200、4つの検出部11a〜11d(任意の1つ以上検出部を示す場合は、単に検出部11という)、4つの周辺発光部15a〜15d(任意の1つ以上検出部を示す場合は、単に周辺発光部15という)、コンピュータ100、及び、付加的な要素としてPC(Personal Computer)300を有している。
Embodiments of the present invention will be described below with reference to the drawings.
FIG. 1 is an example of a system configuration diagram of a coordinate detection system including a computer 100 which is an embodiment of an information processing apparatus of the present invention.
The coordinate detection system 500 includes a display 200, four detection units 11a to 11d (in the case of indicating any one or more detection units, simply referred to as the detection unit 11), and four peripheral light emitting units 15a to 15d (any one or more detection units). When the detection unit is shown, it is simply referred to as a peripheral light emitting unit 15), a computer 100, and a PC (Personal Computer) 300 as an additional element.

4つの周辺発光部15a〜15dはディスプレイ200の周囲に配置されているか、着脱可能に装着されている。コンピュータ100にはPCが接続されており、コンピュータ100はPC300が出力した映像をディスプレイ200に表示することができる。
コンピュータ100には座標検出システム500に対応したアプリケーションがインストールされており、アプリケーションは検出部11からの信号に基づきユーザが操作した位置を検出する。アプリケーションはその操作位置に基づきジェスチャを解析し、コンピュータ100を制御する。この制御を、本明細書では「ジェスチャ操作」と呼ぶ。なお、アプリケーションは、操作用のメニューをディスプレイ200に表示することができる。
The four peripheral light emitting units 15a to 15d are arranged around the display 200 or are detachably mounted. A PC is connected to the computer 100, and the computer 100 can display an image output from the PC 300 on the display 200.
An application corresponding to the coordinate detection system 500 is installed in the computer 100, and the application detects a position operated by the user based on a signal from the detection unit 11. The application analyzes the gesture based on the operation position and controls the computer 100. This control is referred to as “gesture operation” in this specification. The application can display an operation menu on the display 200.

例えば、ユーザが線を描画するメニューに触れた後、指示具13でディスプレイ200の盤面に図形を描画した場合、コンピュータ100は指示具13が触れている位置をリアルタイムに解析して、時系列の座標を作成する。コンピュータ100は時系列の座標を接続して線を作成しディスプレイ200に表示する。図ではユーザが三角形の形状に沿って指示具13を移動させたため、コンピュータ100は一連の座標を1つのストローク(三角形)として記録する。そして、PC300の画像と合成してディスプレイ200に表示する。   For example, when the user touches a menu for drawing a line and then draws a figure on the board surface of the display 200 with the pointing tool 13, the computer 100 analyzes the position touched by the pointing tool 13 in real time, Create coordinates. The computer 100 connects the time-series coordinates to create a line and displays it on the display 200. In the figure, since the user has moved the pointing tool 13 along the shape of a triangle, the computer 100 records a series of coordinates as one stroke (triangle). Then, it is combined with the image of the PC 300 and displayed on the display 200.

このように、ディスプレイ200がタッチパネル機能を有していなくても、座標検出システム500を適用することで、ユーザは指示具13でディスプレイ200に触れるだけで様々な操作が可能になる。ここでは、後述するように、ユーザは指示具13を用いなくても手指で位置を入力できる。   Thus, even if the display 200 does not have a touch panel function, by applying the coordinate detection system 500, the user can perform various operations by simply touching the display 200 with the pointing tool 13. Here, as will be described later, the user can input the position with the finger without using the pointing tool 13.

図2は、コンピュータ100のハードウェア構成図の一例を示す。
コンピュータ100は、市販の情報処理装置又は座標検出システム用に開発された情報処理装置である。コンピュータ100は、アドレスバスやデータバス等のバスライン118を介して電気的に接続されたCPU101、ROM102、RAM103、SSD(Solid State Drive)104、ネットワークコントローラ105、外部記憶コントローラ106、センサコントローラ114、GPU112、及び、キャプチャデバイス111を有している。
FIG. 2 shows an example of a hardware configuration diagram of the computer 100.
The computer 100 is a commercially available information processing apparatus or an information processing apparatus developed for a coordinate detection system. The computer 100 includes a CPU 101, a ROM 102, a RAM 103, an SSD (Solid State Drive) 104, a network controller 105, an external storage controller 106, a sensor controller 114, which are electrically connected via a bus line 118 such as an address bus or a data bus. A GPU 112 and a capture device 111 are included.

CPU101はアプリケーションを実行して座標検出システム500の動作全体を制御する。ROM102にはIPL(Initial Program Loader)等が記憶されており、主に起動時にCPU101が実行するプログラムが記憶されている。RAM103は、CPU101がアプリケーションを実行する際のワークエリアとなる。SSD104は、座標検出システム用のアプリケーション119や各種データが記憶された不揮発メモリである。ネットワークコントローラ105は、不図示のネットワークを介してサーバなどと通信する際に通信プロトコルに基づく処理を行う。なお、ネットワークは、LAN又は複数のLANが接続されたWAN(例えばインターネット)などである。   The CPU 101 executes an application and controls the overall operation of the coordinate detection system 500. The ROM 102 stores an IPL (Initial Program Loader) and the like, and mainly stores a program executed by the CPU 101 at startup. The RAM 103 serves as a work area when the CPU 101 executes an application. The SSD 104 is a nonvolatile memory that stores an application 119 for the coordinate detection system and various data. The network controller 105 performs processing based on a communication protocol when communicating with a server or the like via a network (not shown). The network is a LAN or a WAN (for example, the Internet) to which a plurality of LANs are connected.

外部記憶コントローラ106は、着脱可能な外部メモリ117に対する書き込み又は外部メモリ117からの読み出しを行う。外部メモリ117は、例えばUSB(Universal Serial Bus)メモリ、SDカードなどである。キャプチャデバイス111は、PC300が表示装置301に表示している映像を取り込む(キャプチャする)。GPU(Graphics Processing Unit)112は、ディスプレイ200の各ピクセルの画素値を演算する描画専用のプロセッサである。ディスプレイコントローラ113は、GPU112が作成した画像をディスプレイ200に出力する。
センサコントローラ114には、4つの検出部11a〜11dが接続されており、赤外線光遮断またはペン発光方式による三角測量方式による座標の検出を行う。詳しくは後述する。
The external storage controller 106 performs writing to or reading from the removable external memory 117. The external memory 117 is, for example, a USB (Universal Serial Bus) memory, an SD card, or the like. The capture device 111 captures (captures) video displayed on the display device 301 by the PC 300. The GPU (Graphics Processing Unit) 112 is a processor dedicated to drawing that calculates the pixel value of each pixel of the display 200. The display controller 113 outputs the image created by the GPU 112 to the display 200.
Four detectors 11a to 11d are connected to the sensor controller 114, and coordinates are detected by a triangulation method using an infrared light blocking or pen light emission method. Details will be described later.

なお、本実施形態では、コンピュータ100は指示具13と通信する必要はないが、通信機能を有していてもよい。この場合、図示するようにコンピュータ100は電子ペンコントローラ116を有し、指示具13から押圧信号を受信する(指示具13が通知手段を有している場合)。これにより、コンピュータ100は先端が押圧されているか否かを検出することができる。
なお、座標検出システム用のアプリケーションは、外部メモリ117に記憶された状態で流通されてもよいし、ネットワークコントローラ105を介して不図示のサーバからダウンロードされてもよい。アプリケーションは圧縮された状態でも実行形式でもよい。
In the present embodiment, the computer 100 does not need to communicate with the pointing tool 13, but may have a communication function. In this case, as shown in the figure, the computer 100 has an electronic pen controller 116 and receives a pressing signal from the pointing tool 13 (when the pointing tool 13 has a notification means). Thereby, the computer 100 can detect whether or not the tip is pressed.
The application for the coordinate detection system may be distributed while being stored in the external memory 117, or may be downloaded from a server (not shown) via the network controller 105. The application may be compressed or executable.

以上の構成を備える本実施形態の座標検出システムにおいて特徴的な点は、ユーザがディスプレイ200の盤面に対して、両手の手指を指示部として用いて指示動作を行った場合でも、その指示動作により指示された座標を検出できる点である。ただし、手指全ての座標を個別に検出するとは限らず、基本的には、両手の10本の指を同時に使って指示動作がなされた場合でも、右手による指示動作の位置と左手による指示動作の位置とを区別できるようにすることに主眼を置いている。以下、この検出のための動作について詳細に説明する。   A characteristic feature of the coordinate detection system according to the present embodiment having the above-described configuration is that even when the user performs an instruction operation on the surface of the display 200 using the fingers of both hands as an instruction unit, the instruction operation is performed. This is a point where the designated coordinates can be detected. However, the coordinates of all the fingers are not necessarily detected individually. Basically, even when the pointing operation is performed using 10 fingers of both hands at the same time, the position of the pointing operation with the right hand and the pointing operation with the left hand are not performed. The focus is on making it possible to distinguish the position. Hereinafter, the operation for this detection will be described in detail.

図3は、座標検出システム500が備える、各検出部11の検出信号に基づきディスプレイ200中で指示操作がなされた座標を検出するための機能の構成を示す図である。
図3において、破線Aで囲われた領域内の10箇所の丸印が、両手の10本の手指による指示動作の位置の例を示す。
FIG. 3 is a diagram illustrating a configuration of a function included in the coordinate detection system 500 for detecting coordinates for which an instruction operation has been performed in the display 200 based on detection signals from the respective detection units 11.
In FIG. 3, ten circles in the area surrounded by the broken line A show examples of the position of the pointing operation with ten fingers of both hands.

図3に示すように、座標検出システム500は、検出制御部131、遮断領域抽出部132、遮断領域特徴量算出部133、遮断領域クラスタリング部134、クラスタリング領域特徴量算出部135、および三角測量部136の機能を備える。これらの機能は、コンピュータ100においてCPU101がアプリケーション119を実行することにより実現されるものである。   As shown in FIG. 3, the coordinate detection system 500 includes a detection control unit 131, a block region extraction unit 132, a block region feature amount calculation unit 133, a block region clustering unit 134, a clustering region feature amount calculation unit 135, and a triangulation unit. 136 functions are provided. These functions are realized by the CPU 101 executing the application 119 in the computer 100.

上記のうち検出制御部131は、各検出部11を制御して、周辺発光部15の光源から照射されディスプレイ200の盤面上を進み検出部11に入射する入射光の受光光量を、その入射方向と対応付けて取得する光量取得手段の機能を備える。この受光光量の取得は、各検出部11a〜11dについて個別に行う。特に断らない限り、以降に説明する各部も、各検出部11a〜11dから取得した受光光量を、検出部毎に別に処理する。また、受光方向を変化させる範囲は、指示操作がなされた座標を検出したい範囲とすればよい。受光方向を変化させるに当たり、各検出部11そのものを駆動する必要はなく、例えばイメージセンサの所定画素範囲(1画素でもよい)毎に異なる方向からの入射する光を結像させ、各所定画素範囲で検出した光量を、対応する入射方向からの入射光の受光光量とすることが考えられる。また、受光光量は、輝度値として取得してもよい。   Among the above, the detection control unit 131 controls each detection unit 11 to determine the amount of incident light received from the light source of the peripheral light-emitting unit 15 and traveling on the surface of the display 200 and entering the detection unit 11 in the incident direction. The function of the light quantity acquisition means acquired in association with is provided. The acquisition of the received light amount is performed individually for each of the detection units 11a to 11d. Unless otherwise specified, each unit described below processes the received light amount acquired from each of the detection units 11a to 11d separately for each detection unit. Further, the range in which the light receiving direction is changed may be a range in which the coordinates where the instruction operation is performed are desired to be detected. When changing the light receiving direction, it is not necessary to drive each detection unit 11 itself. For example, incident light from different directions is imaged for each predetermined pixel range (or one pixel) of the image sensor, and each predetermined pixel range is formed. It is conceivable that the amount of light detected in step 1 is used as the received light amount of incident light from the corresponding incident direction. The received light quantity may be acquired as a luminance value.

遮断領域抽出部132は、検出制御部131が取得した各入射方向の受光光量に基づき、受光光量が所定の基準を下回る遮断領域を抽出する機能を備える。例えば、各入射方向について、盤面上に何ら障害物がない場合の光量を標準光量として予め記憶しておき、その標準光量に対する検出光量の比率が連続して40%といった所定の閾値を下回った入射方向の範囲を、遮断領域として抽出することが考えられる。また、遮断領域抽出部132は、抽出した遮断領域を相互に区別できるよう、識別番号等によりラベリングする。   The blocking area extraction unit 132 has a function of extracting a blocking area in which the received light amount falls below a predetermined reference based on the received light amount in each incident direction acquired by the detection control unit 131. For example, for each incident direction, the amount of light when there is no obstacle on the board is stored in advance as a standard amount of light, and the ratio of the detected amount of light to the standard amount of light is continuously below a predetermined threshold value of 40%. It is conceivable to extract a range of directions as a blocking area. Further, the blocking area extraction unit 132 labels the extracted blocking areas with an identification number or the like so that the extracted blocking areas can be distinguished from each other.

従って、例えば、盤面に対して10本の手指による指示操作がなされると、各手指により光が遮られる方向が、図5に示す遮断領域R(0)〜R(6)のように、多数の遮断領域として抽出される。図5において、縦軸が受光光量(あるいは輝度値)であり、横軸が入射方向である。   Therefore, for example, when an instruction operation with ten fingers is performed on the board surface, there are many directions in which light is blocked by each finger as shown in the blocking regions R (0) to R (6) shown in FIG. It is extracted as a blocking area. In FIG. 5, the vertical axis represents the amount of received light (or luminance value), and the horizontal axis represents the incident direction.

なお、検出部11から見て同じ方向に複数の手指が重なる場合もあるため、指示操作に用いた手指の数が多い場合、それよりも少ない数の遮断領域が抽出されることが通常である。図5の例では、遮断領域は7つあるが、最初の4つの遮断領域R(0)〜R(3)が左手によるものであり、残りの3つの遮断領域R(4)〜R(6)が右手によるものである。また、各遮断領域は、入射角度の一方向への変化(単調増加あるいは単調減少)につれて番号が大きくなるようにラベリングし、後述のクラスタリング処理においてこの番号順でクラスタへの分類対象とするとよい。   Since a plurality of fingers may overlap in the same direction as viewed from the detection unit 11, when the number of fingers used for the instruction operation is large, it is normal that a smaller number of blocking regions are extracted. . In the example of FIG. 5, there are seven blocking regions, but the first four blocking regions R (0) to R (3) are left-handed, and the remaining three blocking regions R (4) to R (6 ) Is by the right hand. Further, each blocking area may be labeled so that the number increases as the incident angle changes in one direction (monotonically increases or decreases), and is classified into clusters in the order of the numbers in the clustering process described later.

次に、遮断領域特徴量算出部133は、遮断領域抽出部132が抽出した各遮断領域の特徴量を算出する機能を備える。算出する特徴量は、例えば、光量重心座標、遮断領域の光量軸方向の幅(縦幅)、入射方向軸方向の幅(横幅)、遮断領域のピクセル数、隣の遮断領域との距離(例えば遮断領域の光量重心間の距離として定義)、遮断領域の端点(左端点及び右端点)などが挙げられ、これらの値はクラスタリングや必要があれば外れ値の除去などに用いる。この遮断領域特徴量算出部133は、遮断領域抽出部132と合わせて特徴量算出手段として機能する。   Next, the block region characteristic amount calculation unit 133 has a function of calculating the feature amount of each block region extracted by the block region extraction unit 132. The feature amount to be calculated includes, for example, the light barycentric coordinates, the width in the light axis direction (vertical width) of the blocking area, the width in the incident axis direction (horizontal width), the number of pixels in the blocking area, and the distance to the adjacent blocking area (for example, And the end points (left end point and right end point) of the blocking area, and these values are used for clustering or removal of outliers if necessary. The blocking area feature amount calculation unit 133 functions as a feature amount calculation unit together with the blocking region extraction unit 132.

遮断領域クラスタリング部134は、遮断領域特徴量算出部133が算出した各遮断領域の特徴量に基づき、その各遮断領域をクラスタリングするクラスタリング手段の機能を備える。このクラスタリングは、例えば各遮断領域の横幅及び隣の遮断領域との距離に基づき行うことができるが、その詳細については後述する。   The block region clustering unit 134 has a function of clustering means for clustering each block region based on the block region feature amount calculated by the block region feature amount calculation unit 133. This clustering can be performed based on, for example, the horizontal width of each blocking area and the distance to the adjacent blocking area, details of which will be described later.

クラスタリング領域特徴量算出部135は、遮断領域クラスタリング部134によるクラスタリングで得られた各クラスタが存在するクラスタリング領域の特徴量を算出する機能を備える。クラスタリング領域の特徴量は、クラスタの特徴量でもある。また、クラスタの特徴量としては、例えばクラスタリング領域の光量重心、クラスタリング領域の端点(左端点及び右端点)、クラスタリング領域間の距離(例えばクラスタリング領域の光量重心間の距離として定義)などを算出することが考えられる。しかし、クラスタリング領域特徴量算出部135は、三角測量部136に提供する特徴量のみを算出すれば足りる。   The clustering region feature amount calculation unit 135 has a function of calculating the feature amount of the clustering region where each cluster obtained by clustering by the blocking region clustering unit 134 exists. The feature quantity of the clustering region is also a cluster feature quantity. Further, as the cluster feature amount, for example, the light intensity centroid of the clustering area, the end points (left end point and right end point) of the clustering area, the distance between the clustering areas (for example, defined as the distance between the light intensity centroids of the clustering area), and the like are calculated. It is possible. However, the clustering region feature value calculation unit 135 only needs to calculate only the feature values provided to the triangulation unit 136.

三角測量部136は、クラスタリング領域特徴量算出部135が算出した各クラスタリング領域の光量重心(図5の横軸である入射方向軸上の特定の位置、すなわち特定の入射角を示す値である)から、三角測量の要領で、盤面上で指示操作のなされた座標を算出する座標算出手段の機能を備える。また、その結果をPC300に提供し、種々の制御に使用させる機能も備える。   The triangulation unit 136 calculates the light intensity centroid of each clustering region calculated by the clustering region feature amount calculation unit 135 (a specific position on the incident direction axis that is the horizontal axis in FIG. 5, that is, a value indicating a specific incident angle). Thus, a function of coordinate calculation means for calculating the coordinate where the pointing operation is performed on the board in the manner of triangulation is provided. Moreover, the result is provided to the PC 300 and provided with a function to be used for various controls.

なお、指示操作の座標を算出するに当たっては、各クラスタリング領域の光量重心と対応する入射方向を、検出部11から見て、該当クラスタに分類された指示操作のなされた方向であるとする。従って、2対上の検出部11から取得した受光光量に基づきそれぞれ指示操作のなされた方向を特定できれば、それらに基づき三角測量の要領で、盤面上で指示操作のなされた座標を求めることができる。この座標を求めるアルゴリズムについては、例えば特開2015−56064号公報あるいは特開2015−118426号公報に記載のものを採用することができる。   In calculating the coordinates of the instruction operation, it is assumed that the incident direction corresponding to the light intensity centroid of each clustering region is the direction in which the instruction operation classified into the corresponding cluster is performed as viewed from the detection unit 11. Accordingly, if the directions in which the instruction operation is performed can be specified based on the received light amounts acquired from the two pairs of detection units 11, the coordinates on which the instruction operation has been performed on the board surface can be obtained based on the directions of the triangulation. . For example, an algorithm described in Japanese Patent Application Laid-Open No. 2015-56064 or Japanese Patent Application Laid-Open No. 2015-118426 can be adopted as an algorithm for obtaining the coordinates.

クラスタが複数ある場合、必要な数の検出部11から取得した受光光量に基づきそれぞれその各クラスタと対応する指示操作の方向を特定し、それらの情報に基づいて各クラスタと対応する指示操作のなされた座標を求めればよい。従って、例えば両手の手指による指示操作で生じた遮断領域を検出し、これを左手による操作に係るクラスタと右手による操作に係るクラスタとに分離できれば、各クラスタの特徴量を用いて、左手による指示操作の座標と右手による指示操作の座標とをそれぞれ算出できることになる。   When there are a plurality of clusters, the direction of the instruction operation corresponding to each cluster is specified based on the received light quantity acquired from the required number of detection units 11, and the instruction operation corresponding to each cluster is performed based on the information. Find the coordinates. Therefore, for example, if a blocking area caused by an instruction operation with fingers of both hands can be detected and separated into a cluster related to an operation with the left hand and a cluster related to an operation with the right hand, the feature value of each cluster can be used to indicate with the left hand. The coordinates of the operation and the coordinates of the pointing operation with the right hand can be calculated respectively.

次に、図4に、図3に示した各部の機能により指示操作の座標を特定する処理のフローチャートを示す。この処理は、コンピュータ100のCPU101が定期的に実行するものである。
図4の処理において、CPU101はまず、各検出部11を制御して、検出部11に入射する入射光の受光光量を、入射方向毎に、その入射方向と対応付けて取得する(S11)。この処理は、検出制御部131の機能と対応するものである。
Next, FIG. 4 shows a flowchart of processing for specifying the coordinates of the pointing operation by the function of each unit shown in FIG. This process is periodically executed by the CPU 101 of the computer 100.
In the process of FIG. 4, the CPU 101 first controls each detection unit 11 to acquire the received light amount of incident light incident on the detection unit 11 in association with the incident direction for each incident direction (S <b> 11). This process corresponds to the function of the detection control unit 131.

次に、CPU101は、ステップS11で取得した各入射方向の受光光量に基づき、受光光量が所定の基準を下回る遮断領域を抽出し、ラベリングする(S12)。この処理は、遮断領域特徴量算出部133の機能と対応するものである。
次に、CPU101は、ステップS12でラベリングした各遮断領域の特徴量を算出する(S13)。ここでは、各遮断領域の横幅及び隣の遮断領域との距離を算出すればよい。この処理は、遮断領域特徴量算出部133の機能と対応するものである。
Next, based on the received light amount in each incident direction acquired in step S11, the CPU 101 extracts a cut-off area where the received light amount falls below a predetermined reference and labels it (S12). This process corresponds to the function of the cut-off area feature amount calculation unit 133.
Next, the CPU 101 calculates the feature amount of each blocking area labeled in step S12 (S13). Here, the width of each blocking area and the distance from the adjacent blocking area may be calculated. This process corresponds to the function of the cut-off area feature amount calculation unit 133.

次に、CPU101は、ステップS13で算出した各遮断領域の特徴量に基づき、その各遮断領域をクラスタリングする(S14)。このクラスタリングのアルゴリズムとしては、例えば図6あるいは図11に示すものを採用できる。これらの処理の特性については後に詳述する。この処理は、遮断領域クラスタリング部134の機能と対応するものである。   Next, the CPU 101 clusters each block area based on the feature amount of each block area calculated in step S13 (S14). As the clustering algorithm, for example, the algorithm shown in FIG. 6 or 11 can be adopted. The characteristics of these processes will be described in detail later. This process corresponds to the function of the blocking area clustering unit 134.

次に、CPU101は、ステップS14のクラスタリングで得られた各クラスタの特徴量を算出する(S15)。ここでは、各クラスタが存在するクラスタリング領域の光量重心を求めればよい。この処理は、クラスタリング領域特徴量算出部135の機能と対応するものである。
次に、CPU101は、ステップS15で算出した各クラスタリング領域の光量重心から、三角測量の要領で、盤面上で指示操作のなされた座標を算出する(S16)。この処理は、三角測量部136の機能と対応する。
Next, the CPU 101 calculates the feature amount of each cluster obtained by the clustering in step S14 (S15). Here, the light intensity centroid of the clustering region where each cluster exists may be obtained. This process corresponds to the function of the clustering region feature quantity calculation unit 135.
Next, the CPU 101 calculates the coordinates for which an instruction operation has been performed on the board in the manner of triangulation from the light intensity centroid of each clustering area calculated in step S15 (S16). This process corresponds to the function of the triangulation unit 136.

以上の処理により、CPU101は、盤面上に両手の手指による指示操作がなされた場合でも、その指示操作がなされた座標を算出することができる。なお、以上の処理では、指示操作が1箇所のみになされた場合でもその座標を算出できるし、指示操作が全くなされていない場合には、遮断領域が抽出されないことを通じてその旨を検出できる。   With the above processing, the CPU 101 can calculate the coordinates at which the pointing operation is performed even when the pointing operation with the fingers of both hands is performed on the board surface. In the above processing, the coordinates can be calculated even when the instruction operation is performed only at one place, and when the instruction operation is not performed at all, it can be detected through the fact that the blocking area is not extracted.

次に、図6に、図4のステップS14で実行するクラスタリングの処理の一例のフローチャートを示す。
図6の処理において、CPU101はまず、変数Nと変数Mにそれぞれ0を代入する(S21)。その後、遮断領域R(N)(すなわちR(0))が存在するか否か判断する(S22)。ここでNoであれば、遮断領域が1つもないことになるので、クラスタリングを行わずに処理を終了する。この場合、図4の処理では、指示操作は行われていない、という結果になる。
Next, FIG. 6 shows a flowchart of an example of the clustering process executed in step S14 of FIG.
In the process of FIG. 6, the CPU 101 first substitutes 0 for each of the variables N and M (S21). Thereafter, it is determined whether or not a blocking region R (N) (that is, R (0)) exists (S22). If “No” here, there is no blocking area, and the process is terminated without performing clustering. In this case, the result of the instruction operation is not performed in the process of FIG.

一方、ステップS22でYesであると、CPU101は、クラスタC(M)(すなわち1番目のクラスタC(0))のサイズを1インクリメントする(S23)。なお、クラスタの初期サイズは0であるとする。
次に、CPU101は、遮断領域R(N)(初めはR(0))を、クラスタC(M)(初めはC(0))にクラスタリングする(S24)。その後、クラスタC(M)のサイズが閾値未満であるか否か判断する(S25)。
On the other hand, if Yes in step S22, the CPU 101 increments the size of the cluster C (M) (that is, the first cluster C (0)) by 1 (S23). It is assumed that the initial size of the cluster is 0.
Next, the CPU 101 clusters the blocking region R (N) (initially R (0)) into the cluster C (M) (initially C (0)) (S24). Thereafter, it is determined whether or not the size of the cluster C (M) is less than a threshold value (S25).

ステップS25での閾値は、1つのクラスタに分類したい一群の指示部のうち、検出部11から見て他の指示部の後ろに隠れずに見える指示部の数に応じた値とするとよい。例えば、両手の手指を指示部とし、左手の手指と右手の手指を別々のクラスタに分類したい場合、検出部11から見て、片手の手指のうち他の手指の後ろに隠れずに見える手指の数がいくつであるかを考えればよい。発明者による実験(実測)に基づいて、この数は4であることが多いと判明しているため、ここでは閾値の値を4とする。   The threshold value in step S25 may be a value corresponding to the number of instruction units that are not hidden behind other instruction units when viewed from the detection unit 11 among a group of instruction units to be classified into one cluster. For example, when the fingers of both hands are used as the instruction unit, and the fingers of the left hand and the fingers of the right hand are to be classified into separate clusters, the fingers of the fingers that appear without being hidden behind the other fingers of one hand are viewed from the detection unit 11. You just have to think about how many the numbers are. Based on an experiment (actual measurement) by the inventor, it has been found that this number is often 4. Therefore, the threshold value is 4 here.

ステップS25でYesの場合、CPU101は次に、次の遮断領域R(N+1)が存在するか否か判断する(S26)。これが存在すれば、遮断領域R(N)と遮断領域R(N+1)との間の距離を算出する(S27)。その距離が所定の閾値よりも大きければ(S28のYes)、Mを1インクリメントする(S29)。すなわち、今までのクラスタへの遮断領域のクラスタリングを終了し、次のクラスタについてのクラスタリングを開始する。ステップS28でNoであれば、ステップS29はスキップする。   In the case of Yes in step S25, the CPU 101 next determines whether or not the next blocking area R (N + 1) exists (S26). If this exists, the distance between the blocking region R (N) and the blocking region R (N + 1) is calculated (S27). If the distance is larger than the predetermined threshold (Yes in S28), M is incremented by 1 (S29). In other words, the clustering of the blocking area to the previous cluster is finished, and the clustering for the next cluster is started. If No in step S28, step S29 is skipped.

ステップS28及びS29の処理は、隣接する遮断領域間の距離が離れている場合に、同じ手の手指による遮断領域ではないと判断して、以後の遮断領域を別のクラスタに分類するためのものである。従って、ステップS28で用いる閾値は、片手の手指により生じる複数の遮断領域間の間隔として考えられない程度の値とするとよい。   The processes of steps S28 and S29 are for determining that the area is not a blocked area by fingers of the same hand when the distance between adjacent blocked areas is long and classifying the subsequent blocked areas into different clusters. It is. Therefore, the threshold value used in step S28 is preferably set to a value that cannot be considered as an interval between a plurality of blocking regions generated by a finger of one hand.

次に、CPU101は、遮断領域R(N)の幅に応じてクラスタC(M)のサイズをインクリメントする(S30)。この処理は、より詳細には図7に示すものであり、遮断領域R(N)の横幅W(N)を、5つの閾値T1〜T5と比較し、クラスタC(M)のサイズを、以下のようにインクリメントするものである。
(a)W(N)<T1のとき、1インクリメント
(b)T1≦W(N)<T2のとき、2インクリメント
(c)T2≦W(N)<T3のとき、3インクリメント
(d)T3≦W(N)<T4のとき、4インクリメント
(e)T4≦W(N)<T5のとき、5インクリメント
(f)以上のいずれでもないとき、何もしない
Next, the CPU 101 increments the size of the cluster C (M) according to the width of the blocking area R (N) (S30). This process is shown in FIG. 7 in more detail. The width W (N) of the blocking region R (N) is compared with the five threshold values T1 to T5, and the size of the cluster C (M) is set as follows. It increments like this.
(A) When W (N) <T1, 1 increment (b) When T1 ≦ W (N) <T2, 2 increment (c) When T2 ≦ W (N) <T3, 3 increment (d) T3 When ≦ W (N) <T4, 4 increments (e) When T4 ≦ W (N) <T5, nothing is done if it is not more than 5 increments (f)

遮断領域は、複数本分の手指と対応する領域が1つにつながって形成される場合もある。このような場合にも遮断領域の数は1つであるが、上述したように片手の手指と対応する遮断領域を1つのクラスタに分類しようとする場合、サイズを1と数えたのでは適切なカウントとは言えない。そこで、複数本分の手指と対応する領域が1つにつながったような、横幅の広い遮断領域については、複数本文のサイズとしてカウントするようにしたのが、図7の処理である。従って、T1は1本の手指により形成される遮断領域の幅の上限を示す値、T2は2本の手指により形成される遮断領域の幅の上限を示す値、といったように上記各閾値T1〜T5を定めるとよい。   The blocking region may be formed by connecting a plurality of regions corresponding to a plurality of fingers. Even in such a case, the number of blocking areas is one. However, as described above, when the blocking areas corresponding to the fingers of one hand are to be classified into one cluster, it is appropriate to count the size as 1. It's not a count. Therefore, the processing of FIG. 7 is to count the wide cut-off area where the areas corresponding to a plurality of fingers are connected to one as the size of a plurality of texts. Therefore, T1 is a value indicating the upper limit of the width of the blocking area formed by one finger, T2 is a value indicating the upper limit of the width of the blocking area formed by two fingers, and the above threshold values T1 to T1. It is good to set T5.

図6の説明に戻ると、CPU101は、ステップS30の後、Nを1インクリメントして(S31)、次の遮断領域を分類対象としてステップS24に戻り、処理をくり返す。
また、ステップS25でNoとなると、CPU101は、まだクラスタリングしていない遮断領域を全て、現在分類先としているものの次のクラスタC(M+1)にクラスタリングし(S32)、処理を終了する。
また、ステップS26でNoの場合、全ての遮断領域についてクラスタリングが済んだことになるので、処理を終了する。
以上で図6の説明を終了する。
Returning to the description of FIG. 6, after step S30, the CPU 101 increments N by 1 (S31), returns to the step S24 with the next blocking area as a classification target, and repeats the process.
If the answer is No in step S25, the CPU 101 clusters all the blocked areas that have not yet been clustered into the next cluster C (M + 1) that is currently the classification destination (S32), and ends the process.
In the case of No in step S26, clustering has been completed for all the cut-off areas, so the process ends.
This is the end of the description of FIG.

次に、図6の処理によるクラスタリングのいくつかの具体例について説明する。
まず、図8Aに示す、ディスプレイ200の盤面に対し、領域401に左手の手指による指示操作が、領域402に右手の手指による指示操作がなされた場合を考える。この場合、四隅のどの検出部11から見ても、左手の手指の位置と右手の手指の位置は、破線で示す対角線の左右に分かれ、重なることはない。
従って、遮断領域は例えば図8Bに示すように、左手の手指による遮断領域R(0)〜R(3)と、右手の手指による遮断領域R(4)〜R(6)とが分かれて抽出される。
Next, some specific examples of clustering by the processing of FIG. 6 will be described.
First, let us consider a case where an instruction operation with the left hand finger is performed in the area 401 and an instruction operation with the right hand finger is performed in the area 402 on the board surface of the display 200 shown in FIG. 8A. In this case, the position of the finger of the left hand and the position of the finger of the right hand are separated on the left and right of the diagonal line indicated by the broken line and do not overlap when viewed from any detection unit 11 at the four corners.
Therefore, for example, as shown in FIG. 8B, the blocking areas R (0) to R (3) with the left hand and the blocking areas R (4) to R (6) with the right hand are extracted separately. Is done.

この遮断領域に対して図6の処理を適用することを考える。全ての遮断領域の幅は、閾値T1未満であるとすると、ステップS23の後、ステップ24〜S31を3回繰り返し、さらにステップS24をもう一度実行することにより、遮断領域R(0)〜R(3)がクラスタC(0)にクラスタリングされた状態で、クラスタC(0)のサイズが4となるため、ステップS25の判断がNとなる。そこで、ステップS32に進み、残りの遮断領域R(4)〜R(7)をクラスタC(1)にクラスタリングして処理を終了する。   Consider applying the processing of FIG. 6 to this blocking region. Assuming that the widths of all the blocking regions are less than the threshold value T1, after step S23, steps 24 to S31 are repeated three times, and step S24 is executed once more, thereby blocking regions R (0) to R (3 ) Is clustered into cluster C (0), the size of cluster C (0) is 4, so the determination in step S25 is N. Then, it progresses to step S32, the remaining interruption | blocking area | region R (4) -R (7) is clustered to cluster C (1), and a process is complete | finished.

この手順により、図8Bに示すように、左手の手指による遮断領域R(0)〜R(3)と、右手の手指による遮断領域R(4)〜R(6)とを、別々のクラスタC(0)及びC(1)にクラスタリングすることができる。
従って、これらのクラスタの特徴量に基づき、左手による指示操作の座標と右手による指示操作の座標とを分離して求めることができる。
By this procedure, as shown in FIG. 8B, the blocking regions R (0) to R (3) with the left hand fingers and the blocking regions R (4) to R (6) with the right hand fingers are separated into separate clusters C Clustering can be performed on (0) and C (1).
Therefore, the coordinates of the pointing operation with the left hand and the coordinates of the pointing operation with the right hand can be obtained separately based on the feature quantities of these clusters.

図9Aに示す例では、図8Aの場合よりも、領域401と領域402の位置が近接している。しかし、四隅のどの検出部11から見ても、左手の手指の位置と右手の手指の位置が重ならないことは、図8Aの場合と同様である。
従って、図9Bのように抽出される遮断領域は、図8Bの場合と同様に、左手の手指による遮断領域R(0)〜R(3)と、右手の手指による遮断領域R(4)〜R(6)とを、別々のクラスタC(0)及びC(1)にクラスタリングすることができる。
In the example shown in FIG. 9A, the positions of the region 401 and the region 402 are closer than in the case of FIG. 8A. However, the position of the finger of the left hand does not overlap the position of the finger of the right hand when viewed from any of the detection units 11 at the four corners, as in the case of FIG. 8A.
Accordingly, the extracted block areas as shown in FIG. 9B are the block areas R (0) to R (3) with the left hand finger and the block areas R (4) to R (4) with the right hand finger as in FIG. 8B. R (6) can be clustered into separate clusters C (0) and C (1).

従って、コンピュータ100は、図8Aから図9Aに至るような、両手の間隔を縮めるジェスチャを検出することができる。そして、この検出結果をPC300に送信すれば、ユーザは、両手の手指を使ってPC300をジェスチャ操作できることになる。
この機能を実現するために必要な検出部11は、既に述べたように、所定の範囲について入射方向と対応付けて受光光量を検出する機能を備えていればよく、特段に高価なものではないため、低コストで両手の手指を使ったジェスチャの検出ができると言える。
Therefore, the computer 100 can detect a gesture that shortens the distance between both hands, as shown in FIGS. 8A to 9A. If this detection result is transmitted to the PC 300, the user can perform a gesture operation on the PC 300 using the fingers of both hands.
As described above, the detection unit 11 necessary for realizing this function is not particularly expensive as long as it has a function of detecting the amount of received light in association with the incident direction for a predetermined range. Therefore, it can be said that gestures using fingers of both hands can be detected at low cost.

ただし、図6の処理では、図10Aに示すように、領域401と領域402とが1本の対角線上に乗ってしまう場合、すなわち、ある検査部11から見て、左手の手指による遮断領域と右手の手指による遮断領域とが重なってしまう場合には、適切なクラスタリングができないことがある。   However, in the process of FIG. 6, as shown in FIG. 10A, when the region 401 and the region 402 are on one diagonal line, that is, when viewed from a certain inspection unit 11, If the area blocked by the finger of the right hand overlaps, appropriate clustering may not be possible.

ここで、図10Aに示す位置に指示操作がなされた場合の遮断領域が図10Bに示すように抽出されたとする。図10Bに示す6つの遮断領域R(0)〜R(5)は、図10Aとの対比からわかるように、左手の手指による遮断領域と右手の手指による遮断領域とがある位置を境に分かれているわけではない。しかし、図6の処理を適用すると、図8B及び図9Bの場合と同様、初めの4つの遮断領域R(0)〜R(3)と、その他の遮断領域R(4)〜R(5)とを、別々のクラスタにクラスタリングしてしまう。   Here, it is assumed that the blocking region when the instruction operation is performed at the position illustrated in FIG. 10A is extracted as illustrated in FIG. 10B. As can be seen from the comparison with FIG. 10A, the six blocking areas R (0) to R (5) shown in FIG. 10B are divided by the boundary between the blocking area by the left hand finger and the blocking area by the right hand finger. I don't mean. However, when the process of FIG. 6 is applied, as in the case of FIGS. 8B and 9B, the first four blocking regions R (0) to R (3) and the other blocking regions R (4) to R (5). Are clustered into separate clusters.

従って、必ずしも片手分の手指毎のクラスタリングとはならず、各クラスタの特徴量も、左右の手による指示操作の位置を反映したものとならない。従って、図9Aの状態から図10Aの状態になるように操作を行うとすると、その間のどこかで特徴量が離散的に変化してしまうことになる。例えば両手でズーム操作を行った場合に、両手のクラスタが重なる前後で急激に拡大縮小の量が変化してしまう等である。   Therefore, the clustering is not necessarily performed for each finger of one hand, and the feature amount of each cluster does not reflect the position of the pointing operation by the left and right hands. Therefore, if the operation is performed so as to change from the state of FIG. 9A to the state of FIG. 10A, the feature amount changes discretely somewhere in between. For example, when the zoom operation is performed with both hands, the amount of enlargement / reduction suddenly changes before and after the clusters of both hands overlap.

図11に、この点を改善したクラスタリングの処理を示す。
図11の処理は、ステップS25でNoの場合の処理が図6と異なるのみである。そして、ステップS25でNoの場合、CPU101は、次の遮断領域R(N+1)が存在するか否か判断する(S41)。これが存在しなければ、クラスタリングは終了であるので処理を終了する。一方、存在すれば、遮断領域R(N)と遮断領域R(N+1)との間の距離を算出する(S42)。
FIG. 11 shows a clustering process that improves this point.
The process in FIG. 11 is different from that in FIG. 6 only in the case of No in step S25. If the answer is No in step S25, the CPU 101 determines whether or not the next blocking area R (N + 1) exists (S41). If this does not exist, clustering is complete and the process is terminated. On the other hand, if it exists, the distance between the blocking region R (N) and the blocking region R (N + 1) is calculated (S42).

その距離が所定の閾値よりも大きければ(S43のYes)、次以降の遮断領域は遮断領域R(N)までと異なる指示操作に由来するものであると考えられるため、残りの遮断領域を次のクラスタC(M+1)にクラスタリングして(S44)、処理を終了する。また、ステップS43でNoであれば、逆に、異なる指示操作に由来するものでない可能性があるため、残りの遮断領域をそれまでと同じクラスタC(M)にクラスタリングする(S44)。そして、この場合、左右の手による操作指示の座標を正しく検出することはできないため、ジェスチャ操作を一時的に無効化して(S46)、処理を終了する。この無効化は、今回のクラスタリング結果に基づき算出した指示操作の座標についてのみ適用すればよい。   If the distance is larger than the predetermined threshold (Yes in S43), the subsequent blocking areas are considered to be derived from a different instruction operation up to the blocking area R (N). Cluster to cluster C (M + 1) (S44), and the process ends. On the other hand, if the answer is No in step S43, there is a possibility that it does not originate from a different instruction operation, so the remaining cut-off areas are clustered into the same cluster C (M) as before (S44). In this case, since the coordinates of the operation instruction by the left and right hands cannot be detected correctly, the gesture operation is temporarily invalidated (S46), and the process is terminated. This invalidation may be applied only to the coordinates of the instruction operation calculated based on the current clustering result.

以上の処理によれば、図10Bのように抽出された遮断領域は、図12に示すように、全て同じクラスタC(0)にクラスタリングされる。従って、左右の手による指示操作の座標として、誤った値が算出されることを防止できる。そして、両手を使ったジェスチャ操作の誤動作を防止できる。なお、ステップS43でNoの場合にジェスチャ操作を一時的に無効化すれば、誤動作防止を一層確実にすることができる。   According to the above processing, the cut-off areas extracted as shown in FIG. 10B are all clustered into the same cluster C (0) as shown in FIG. Accordingly, it is possible to prevent an incorrect value from being calculated as the coordinates of the pointing operation by the left and right hands. And it is possible to prevent malfunction of gesture operation using both hands. In addition, if the gesture operation is temporarily invalidated in the case of No in step S43, the prevention of malfunction can be further ensured.

なお、例えば1本の手指や1つの指示具で操作がなされた場合、遮断領域は1つのみ抽出される。従って、図6の処理でも図11の処理でも、遮断領域R(0)をクラスタC(0)にクラスタリングした直後にステップS26でNoになり、クラスタリングを終了することになる。また、この場合、クラスタC(0)の特徴量は、そこに属する唯一の遮断領域R(0)の特徴量と一致する。このため、ステップS16では、遮断領域R(0)の特徴量に従って指示操作の座標を算出することができる。従って、図6の処理でも図11の処理でも、少ない数の手指や指示具による操作の検出に不都合はない。   For example, when an operation is performed with one finger or one pointing tool, only one blocking area is extracted. Accordingly, in both the processing of FIG. 6 and the processing of FIG. 11, immediately after clustering the blocking region R (0) into the cluster C (0), No is made in step S26, and the clustering is terminated. In this case, the feature amount of the cluster C (0) matches the feature amount of the only blocking region R (0) belonging to the cluster C (0). For this reason, in step S16, the coordinates of the pointing operation can be calculated according to the feature amount of the blocking region R (0). Therefore, neither the process of FIG. 6 nor the process of FIG. 11 is inconvenient for detecting operations with a small number of fingers or pointing tools.

以上で実施形態の説明を終了するが、この発明において、装置の具体的な構成、具体的な処理の手順、データの形式等は、実施形態で説明したものに限るものではない。
例えば、上述した実施形態では、指示動作の対象となる盤面の周囲に4つの周辺発光部15a〜15d及び4つの検出部11a〜11dを設ける例について説明した。しかし、これ以外にも、再帰反射板を用いる構成を採用可能である。
Although the description of the embodiment is finished as described above, in the present invention, the specific configuration of the apparatus, the specific processing procedure, the data format, and the like are not limited to those described in the embodiment.
For example, in the above-described embodiment, the example in which the four peripheral light emitting units 15a to 15d and the four detection units 11a to 11d are provided around the board surface that is the target of the instruction operation has been described. However, other than this, a configuration using a retroreflecting plate can be adopted.

図13に、この場合のディスプレイ200の構成を示す。
図13の例においては、ディスプレイ200の周囲三方に再帰反射板213を設け、検出部11と対応する構成として、光遮断用照明211及び入力装置212を、二つの頂点に設ける。
そして、光遮断用照明211に備えるレーザ等の発光手段からシリンドリカルレンズを含む光学系を介して出射された光が、ディスプレイ200の表面に沿った平行光として盤面上を進行するようにする。盤面に平行に進行した光は、ディスプレイ200を囲むように配置された再帰性反射部材である再帰反射板213で再帰的に反射され、再び同一光路を辿って戻り、入力装置212に入射する。従って、手指等で盤面に対して指示動作を行うと、盤面に平行に進行した光が遮られて入力装置212に入射する光量が変化する。光遮断用照明211が、角度が異なる多数のビームを出射し、入力装置212が各角度のビームの光量を検出するようにすれば、上述した実施形態の検出部11の場合と同様、受光光量を、その入射方向と対応付けて取得することができる。
FIG. 13 shows the configuration of the display 200 in this case.
In the example of FIG. 13, retroreflecting plates 213 are provided in three directions around the display 200, and a light blocking illumination 211 and an input device 212 are provided at two vertices as a configuration corresponding to the detection unit 11.
Then, the light emitted from the light emitting means such as a laser provided in the light blocking illumination 211 via the optical system including the cylindrical lens is allowed to travel on the board surface as parallel light along the surface of the display 200. The light traveling parallel to the board surface is recursively reflected by the retroreflective plate 213 which is a retroreflective member disposed so as to surround the display 200, returns again along the same optical path, and enters the input device 212. Accordingly, when an instruction operation is performed on the board surface with fingers or the like, the light that travels parallel to the board surface is blocked and the amount of light incident on the input device 212 changes. If the light blocking illumination 211 emits a large number of beams having different angles and the input device 212 detects the light amount of the beam at each angle, the received light amount is the same as in the detection unit 11 of the above-described embodiment. Can be acquired in association with the incident direction.

また、この発明において、盤面はディスプレイ200に限らず、任意の物体として構成してよい。また、物理的な実態のない仮想的な平面を、盤面として用いることも妨げられない。   In the present invention, the board surface is not limited to the display 200 and may be configured as an arbitrary object. Further, it is not hindered to use a virtual plane having no physical reality as a board surface.

また、この発明のプログラムの実施形態は、コンピュータに所要のハードウェアを制御させて上述した実施形態におけるコンピュータ100の機能を、実現させるためのプログラムである。
このようなプログラムは、はじめからコンピュータに備えるROMや他の不揮発性記憶媒体(フラッシュメモリ,EEPROM等)などに格納しておいてもよい。しかし、メモリカード、CD、DVD、ブルーレイディスク等の任意の不揮発性記録媒体に記録して提供することもできる。それらの記録媒体に記録されたプログラムをコンピュータにインストールして実行させることにより、上述した各機能を実現させることができる。
The embodiment of the program of the present invention is a program for causing a computer to control required hardware to realize the functions of the computer 100 in the above-described embodiment.
Such a program may be stored in a ROM or other nonvolatile storage medium (flash memory, EEPROM, etc.) provided in the computer from the beginning. However, it can also be provided by being recorded on an arbitrary nonvolatile recording medium such as a memory card, CD, DVD, or Blu-ray disc. The functions described above can be realized by installing the programs recorded in these recording media into a computer and executing them.

さらに、ネットワークに接続され、プログラムを記録した記録媒体を備える外部装置あるいはプログラムを記憶手段に記憶した外部装置からダウンロードし、コンピュータにインストールして実行させることも可能である。
また、以上説明してきた各実施形態及び変形例の構成は、相互に矛盾しない限り任意に組み合わせて実施可能であることは勿論である。
Furthermore, it is also possible to download from an external device that is connected to a network and includes a recording medium that records the program, or an external device that stores the program in a storage unit, and install and execute the program on a computer.
In addition, it is needless to say that the configurations of the embodiments and modifications described above can be arbitrarily combined and implemented as long as they do not contradict each other.

11:検出部、13:指示具、15:周辺発光部、100:コンピュータ、101:CPU、102:ROM,103:RAM、104:SSD、105:ネットワークコントローラ、106:外部記憶コントローラ、114:センサコントローラ、112:GPU、111:キャプチャデバイス、116:電子ペンコントローラ、117:外部メモリ、
118:バスライン、119:アプリケーション、131:検出制御部、132:遮断領域抽出部、133:遮断領域特徴量算出部、134:遮断領域クラスタリング部、135:クラスタリング領域特徴量算出部、136:三角測量部、200:ディスプレイ、211:光遮断用照明、212:入力装置、213:再帰反射板、300:PC、301:表示装置、401,402:領域、500:座標検出システム
DESCRIPTION OF SYMBOLS 11: Detection part, 13: Indicator, 15: Peripheral light emission part, 100: Computer, 101: CPU, 102: ROM, 103: RAM, 104: SSD, 105: Network controller, 106: External storage controller, 114: Sensor Controller: 112: GPU; 111: Capture device; 116: Electronic pen controller; 117: External memory;
118: Bus line, 119: Application, 131: Detection control unit, 132: Blocking region extraction unit, 133: Blocking region feature amount calculation unit, 134: Blocking region clustering unit, 135: Clustering region feature amount calculation unit, 136: Triangle Surveying unit, 200: display, 211: light blocking illumination, 212: input device, 213: retroreflective plate, 300: PC, 301: display device, 401, 402: area, 500: coordinate detection system

特開2006−146816号公報JP 2006-146816 A

Claims (6)

盤面に対して指示動作を行う指示部により指示された座標を検出する情報処理装置であって、
所定の光源から照射され前記盤面上を進む光を受光する受光手段と、
前記受光手段の受光光量を、入射方向と対応付けて取得する光量取得手段と、
前記光量取得手段が取得した受光光量が所定の基準を下回る遮断領域を抽出しその特徴量を算出する特徴量算出手段と、
前記特徴量算出手段が算出した各遮断領域の特徴量に基づき、該各遮断領域をクラスタリングするクラスタリング手段と、
前記クラスタリング手段により得られた各クラスタの特徴量に基づき、前記指示部により指示された座標を算出する座標算出手段とを備えることを特徴とする情報処理装置。
An information processing apparatus that detects coordinates instructed by an instruction unit that performs an instruction operation on a board surface,
A light receiving means for receiving light irradiated from a predetermined light source and traveling on the board surface;
A light quantity acquisition means for acquiring a received light quantity of the light receiving means in association with an incident direction;
A feature amount calculating means for extracting a cut-off area in which the received light amount acquired by the light amount acquiring means is below a predetermined reference, and calculating the feature amount;
Clustering means for clustering each block region based on the feature amount of each block region calculated by the feature amount calculation unit;
An information processing apparatus comprising: coordinate calculation means for calculating coordinates instructed by the instruction unit based on the feature amount of each cluster obtained by the clustering means.
請求項1に記載の情報処理装置であって、
前記クラスタリング手段によるクラスタリングを、各クラスタに属する遮断領域のサイズに基づき行うことを特徴とする情報処理装置。
The information processing apparatus according to claim 1,
An information processing apparatus characterized in that clustering by the clustering means is performed based on the size of a block region belonging to each cluster.
請求項2に記載の情報処理装置であって、
前記クラスタリング手段によるクラスタリングにおいて、対応する入射方向が単調に変化するように順次各遮断領域を対象として1つのクラスタへの分類を行い、該1つのクラスタのサイズが所定の閾値を超えた場合に、最後に分類した遮断領域とその次に分類対象とする遮断領域との間の距離に基づき、次に分類対象とする遮断領域を別のクラスタへ分類するか、残りの全遮断領域をそれまでと同じクラスタに分類するかを決定することを特徴とする情報処理装置。
An information processing apparatus according to claim 2,
In the clustering by the clustering means, the respective incident areas are sequentially classified into one cluster so that the corresponding incident direction changes monotonously, and when the size of the one cluster exceeds a predetermined threshold, Based on the distance between the last classified area and the next classified area, classify the next classified area into another cluster, or treat all remaining blocked areas as before. An information processing apparatus that determines whether to classify into the same cluster.
請求項3に記載の情報処理装置であって、
前記クラスタリング手段によるクラスタリングにおいて、最後に分類した遮断領域とその次に分類対象とする遮断領域との間の距離に基づき残りの全遮断領域を同じクラスタに分類した場合に、前記座標算出手段が算出した座標に基づく操作を一時的に無効にする手段を設けたことを特徴とする情報処理装置。
The information processing apparatus according to claim 3,
In the clustering by the clustering means, the coordinate calculating means calculates when all the remaining block areas are classified into the same cluster based on the distance between the block area classified last and the block area to be classified next. An information processing apparatus comprising means for temporarily invalidating an operation based on the coordinates obtained.
コンピュータを、盤面に対して指示動作を行う指示部により指示された座標を検出する情報処理装置として機能させるためのプログラムであって、
前記コンピュータを、
所定の光源から照射され前記盤面上を進む光を受光する受光手段を制御する制御手段と、
前記受光手段の受光光量を、入射方向と対応付けて取得する光量取得手段と、
前記光量取得手段が取得した受光光量が所定の基準を下回る遮断領域を抽出しその特徴量を算出する特徴量算出手段と、
前記特徴量算出手段が算出した各遮断領域の特徴量に基づき、該各遮断領域をクラスタリングするクラスタリング手段と、
前記クラスタリング手段により得られた各クラスタの特徴量に基づき、前記指示部により指示された座標を算出する座標算出手段として機能させるためのプログラム。
A program for causing a computer to function as an information processing device that detects coordinates instructed by an instruction unit that performs an instruction operation on a board surface,
The computer,
A control means for controlling a light receiving means for receiving light emitted from a predetermined light source and traveling on the board surface;
A light quantity acquisition means for acquiring a received light quantity of the light receiving means in association with an incident direction;
A feature amount calculating means for extracting a cut-off area in which the received light amount acquired by the light amount acquiring means is below a predetermined reference, and calculating the feature amount;
Clustering means for clustering each block region based on the feature amount of each block region calculated by the feature amount calculation unit;
A program for functioning as a coordinate calculation means for calculating coordinates instructed by the instruction section based on a feature amount of each cluster obtained by the clustering means.
請求項5に記載のプログラムを格納した、コンピュータにより読み取り可能な記録媒体。   A computer-readable recording medium storing the program according to claim 5.
JP2015181577A 2015-09-15 2015-09-15 Information processing device, program, and recording medium Pending JP2017058817A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015181577A JP2017058817A (en) 2015-09-15 2015-09-15 Information processing device, program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015181577A JP2017058817A (en) 2015-09-15 2015-09-15 Information processing device, program, and recording medium

Publications (1)

Publication Number Publication Date
JP2017058817A true JP2017058817A (en) 2017-03-23

Family

ID=58390216

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015181577A Pending JP2017058817A (en) 2015-09-15 2015-09-15 Information processing device, program, and recording medium

Country Status (1)

Country Link
JP (1) JP2017058817A (en)

Similar Documents

Publication Publication Date Title
US10019074B2 (en) Touchless input
EP3234732B1 (en) Interaction with 3d visualization
EP2480955B1 (en) Remote control of computer devices
JP6370893B2 (en) System and method for performing device actions based on detected gestures
KR102347248B1 (en) Method and apparatus for recognizing touch gesture
KR20150002776A (en) Rapid gesture re-engagement
KR101794148B1 (en) Efficient free-space finger recognition
JP2020067999A (en) Method of virtual user interface interaction based on gesture recognition and related device
US8884904B2 (en) Touch panel apparatus, system and operation method thereof
JP2017058817A (en) Information processing device, program, and recording medium
US9569013B2 (en) Coordinate detection system, information processing apparatus, and recording medium
CN104281381B (en) The device and method for controlling the user interface equipped with touch screen
JP6264003B2 (en) Coordinate input system, coordinate instruction unit, coordinate input unit, control method of coordinate input system, and program
JP2016110492A (en) Optical position information detection system, program, and object linking method
CN103221912A (en) Entering a command
US10175825B2 (en) Information processing apparatus, information processing method, and program for determining contact on the basis of a change in color of an image
EP3059664A1 (en) A method for controlling a device by gestures and a system for controlling a device by gestures
US20150016725A1 (en) Retrieval method and electronic apparatus
CN110162233B (en) Screen icon adjusting method, device and equipment and computer readable storage medium
JP2015135537A (en) Coordinate detection system, information processing device, coordinate detection method and program
JP6476626B2 (en) Indicator determination device, coordinate input device, indicator determination method, coordinate input method, and program
JP2016048454A (en) Display body, position calculation device, information processing method, program and information processor
JP2016110299A (en) Coordination detection system, coordination detection method, information processing apparatus, and program
US20150370441A1 (en) Methods, systems and computer-readable media for converting a surface to a touch surface
JP2016091208A (en) Coordinate detection device and coordinate detection system