KR102477006B1 - Method, system and non-transitory computer-readable recording medium for supporting object control - Google Patents

Method, system and non-transitory computer-readable recording medium for supporting object control Download PDF

Info

Publication number
KR102477006B1
KR102477006B1 KR1020200158512A KR20200158512A KR102477006B1 KR 102477006 B1 KR102477006 B1 KR 102477006B1 KR 1020200158512 A KR1020200158512 A KR 1020200158512A KR 20200158512 A KR20200158512 A KR 20200158512A KR 102477006 B1 KR102477006 B1 KR 102477006B1
Authority
KR
South Korea
Prior art keywords
coordinate
coordinates
motion
control
trigger
Prior art date
Application number
KR1020200158512A
Other languages
Korean (ko)
Other versions
KR20220021838A (en
Inventor
나진희
김석중
정직한
Original Assignee
주식회사 브이터치
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 주식회사 브이터치 filed Critical 주식회사 브이터치
Priority to US17/372,680 priority Critical patent/US11474690B2/en
Priority to JP2021122600A priority patent/JP7142387B2/en
Priority to EP21189817.6A priority patent/EP3961354A3/en
Priority to CN202110925190.8A priority patent/CN114077350B/en
Publication of KR20220021838A publication Critical patent/KR20220021838A/en
Application granted granted Critical
Publication of KR102477006B1 publication Critical patent/KR102477006B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • General Factory Administration (AREA)

Abstract

본 발명의 일 태양에 따르면, 객체 제어를 지원하기 위한 방법으로서, 제어 수단의 모션 좌표 중 상기 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정하는 단계, 상기 트리거 좌표와 상기 모션 좌표 사이의 거리, 상기 트리거 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간, 상기 제1 좌표와 상기 모션 좌표 사이의 거리 및 상기 제1 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간 중 적어도 하나를 참조하여 제2 좌표를 결정하는 단계, 및 상기 제1 좌표 및 상기 제2 좌표에 기초하여 결정되는 모션 벡터를 제어 대상 영역에서 제어 위치를 결정하기 위한 지시 벡터로서 결정하는 단계를 포함하는 방법이 제공된다.According to one aspect of the present invention, as a method for supporting object control, reference is made to a coordinate at a point in time when a trigger event related to the movement of the control means is generated among motion coordinates of the control means as trigger coordinates. Determining coordinates, a distance between the trigger coordinate and the motion coordinate, a straight line section specified by the trigger coordinate and the motion coordinate, a distance between the first coordinate and the motion coordinate, and the first coordinate and the motion Determining second coordinates by referring to at least one of the straight line sections specified by the coordinates, and instructions for determining a control position in a control target region using a motion vector determined based on the first coordinates and the second coordinates A method comprising determining as a vector is provided.

Description

객체 제어를 지원하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체{METHOD, SYSTEM AND NON-TRANSITORY COMPUTER-READABLE RECORDING MEDIUM FOR SUPPORTING OBJECT CONTROL}Method, system and non-transitory computer readable recording medium supporting object control

본 발명은 객체 제어를 지원하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체에 관한 것이다.The present invention relates to a method, system and non-transitory computer readable recording medium supporting object control.

디스플레이의 터치 과정, 버튼을 누르는 과정 및 스위치를 켜고 끄는 과정에서 불가피한 접촉이 발생하게 되는데, 바이러스(예를 들어, COVID-19) 등에 감염된 감염자의 비말이 묻은 곳에 손을 접촉한 사람이 그 손으로 자신의 점막을 만지게 되면 접촉 감염이 일어나게 된다.In the process of touching the display, pressing the button, and turning on/off the switch, unavoidable contact occurs. A person who touches a place with droplets of an infected person infected with a virus (eg, COVID-19), etc. Contact infection occurs when you touch your own mucous membranes.

특히, 불특정 다수가 함께 접촉하는 공공 장소의 터치 디스플레이, 버튼, 스위치 등은 접촉하는 사람이 많은 만큼 그 위험성도 커져, 비접촉으로 제어를 할 수 있는 방법이 필요하다.In particular, touch displays, buttons, switches, etc. in public places where many unspecified people come into contact with each other have a high risk as the number of people in contact with them increases, so a method for controlling them in a non-contact manner is required.

비접촉 제어 방식은 근접 센서, IR 터치, 핸드 제스처 등 여러 방법이 존재한다. 정확한 접촉 위치를 특정할 수 있는 접촉 제어 방식과는 달리 비접촉 제어 방식은 조작자가 의도한 영역을 정확하게 인식할 수 없기 때문에 조작자의 제어 위치를 예측해야 한다.There are several non-contact control methods such as proximity sensor, IR touch, and hand gesture. Unlike the contact control method capable of specifying an exact contact position, the non-contact control method cannot accurately recognize the area intended by the operator, so the operator's control position must be predicted.

예를 들어, 일정 거리 이내에서 제어 대상 영역과 가장 가까운 좌표가 선택되는 방식이 이용될 수 있다. 하지만, 사용자가 제어 대상 영역과 수직으로 접근하지 않으면 사용자 의도 좌표와 시스템에 의한 예측 좌표 간 오차가 발생하게 된다.For example, a method of selecting coordinates closest to the control target region within a predetermined distance may be used. However, if the user does not approach the control target area perpendicularly, an error occurs between the user's intended coordinates and the predicted coordinates by the system.

다른 예를 들어, 사용자 신체의 두 좌표(예를 들어, 손목의 좌표 및 손 끝의 좌표)를 서로 연결하여 제어 위치를 특정하는 방식이 이용될 수 있다. 하지만, 사용자가 제어 위치를 직관적으로 인지하기가 어려워 커서와 같은 시각적인 가이드가 반드시 제공되어야 한다.For another example, a method of specifying a control position by connecting two coordinates of the user's body (eg, wrist coordinates and fingertip coordinates) may be used. However, it is difficult for the user to intuitively recognize the control position, so a visual guide such as a cursor must be provided.

또 다른 예를 들어, 사용자의 눈과 손 끝을 연결하여 제어 위치를 특정하는 방식이 이용될 수 있다. 하지만, 눈과 손 끝을 연결한 위치가 선택되는 방식에 대한 별도의 가이드가 사용자에게 안내할 필요가 있으며, 특히 제어 대상 영역과의 거리가 가까워질수록 손 끝만 움직이는 경우가 많아 오차가 커지게 될 가능성이 있다.As another example, a method of specifying a control position by connecting the user's eyes and fingertips may be used. However, a separate guide is needed to guide the user on how the location where the eyes and the fingertips are connected is selected. In particular, as the distance to the control target area gets closer, only the fingertips often move, which will increase the error. There is a possibility.

또 다른 예를 들어, 제어 수단이 제어 대상 영역에 소정 거리 이내로 근접하면 제어가 이루어지도록 하는 방식이 이용될 수 있다. 하지만, 제어 대상 영역과 5cm 이내로 근접하면 트리거가 검출되는 시스템에서 사용자는 제어 대상 영역으로부터 5cm 떨어진 허공의 위치를 정확히 인지하기 어려워 섬세한 조작이 어려운 문제가 있다. 또한, 사용자가 제어 위치를 향해 이동하는 도중에 트리거가 검출될 수 있기 때문에 사용자의 의도와는 전혀 다른 위치가 선택될 수도 있다. 특히, 제어 수단이 제어 대상 영역에 더 근접시키게 되면 예측의 정확도가 높아지지만, 접촉의 위험도 함께 높아지게 되는 문제가 있다.As another example, a method of allowing control to be performed when the control unit approaches the control target area within a predetermined distance may be used. However, in a system in which a trigger is detected when the trigger is detected within 5 cm of the control target region, it is difficult for the user to accurately recognize the location of the air 5 cm away from the control target region, making it difficult to perform delicate manipulation. Also, since a trigger may be detected while the user is moving toward the control position, a position completely different from the user's intention may be selected. In particular, when the control means is brought closer to the control target region, the prediction accuracy increases, but there is a problem in that the risk of contact also increases.

한편, 사용자의 일반적인 제어 동작 과정을 살펴보게 되면, 제어 위치에 손 끝을 이동시키는 모션 (i) 및 제어 대상 영역에 접촉하여 제어를 하는 모션 (ii)의 단계로 구성될 수 있다.On the other hand, looking at the user's general control operation process, it can be composed of the steps of motion (i) of moving the fingertip to the control position and motion (ii) of controlling by contacting the control target area.

이때, 손 끝을 제어 위치로 이동시키는 모션 (i)은 사용자의 위치, 제어 전 손의 위치 등에 따라 달라질 수 있다. 예를 들어 사용자가 제어 대상 영역의 측면에 있는 경우 또는 손을 들어올려 제어를 해야 하는 경우에는 제어 위치에 손 끝을 이동시키는 모션 (i)과 접촉하여 제어하는 모션 (ii)의 방향이 달라 서로 구별되는 동작으로 이루어지게 된다. 즉, 제어 위치에 손 끝을 이동시키는 모션 (i)과 접촉하여 제어하는 모션 (ii)의 방향이 서로 다른 경우에 제어 위치로 손 끝을 이동시키는 모션을 통해서는 최종 제어 위치를 예측하기가 어렵게 된다. 하지만, 이 경우에 모션 (i)의 종료 위치에 기초하여 제어 위치를 예측할 수 있다.At this time, the motion (i) of moving the fingertip to the control position may vary depending on the position of the user, the position of the hand before control, and the like. For example, when the user is on the side of the area to be controlled or needs to control by raising his or her hand, the motion (i) of moving the fingertip to the control position and the motion (ii) of contacting and controlling are different in direction. It is made up of distinct actions. That is, when the motion (i) of moving the fingertip to the control position and the motion (ii) of contact and control are in different directions, it is difficult to predict the final control position through the motion of moving the fingertip to the control position. do. However, in this case, the control position can be predicted based on the end position of motion (i).

또한, 사용자가 정면에서 제어하는 경우에는 제어 위치에 손 끝을 이동시키는 모션 (i)과 접촉하여 제어하는 모션 (ii)의 방향이 서로 유사하며 연결 동작으로 동시에 이루어지게 된다. 즉, 제어 위치에 손 끝을 이동시키는 모션 (i)과 접촉하여 제어하는 모션 (ii)의 방향이 서로 유사한 경우 제어 위치로 손 끝을 이동시키는 모션에 기초하여 최종 제어 위치를 예측할 수 있다.In addition, when the user controls from the front, the direction of the motion (i) of moving the fingertip to the control position and the motion (ii) of contact and control are similar to each other and are simultaneously performed as a connecting motion. That is, when the direction of the motion (i) for moving the fingertip to the control position and the motion (ii) for contact and control are similar to each other, the final control position can be predicted based on the motion for moving the fingertip to the control position.

정리하면, 제어 동작을 제어 위치에 손 끝을 이동시키는 모션 (i) 및 접촉하여 제어하는 모션 (ii)로 분류하고, 모션 (i)-모션 (ii)가 하나의 동작으로 연결되는 경우에는 해당 모션에 기초하여 제어 위치를 예측하고 모션 (i)-모션 (ii)가 구별되는 경우는 모션 (i) 이후의 위치에 기초하여 제어 위치를 예측하게 되면 보다 정확하게 사용자가 제어를 의도한 위치를 예측할 수 있게 된다.In summary, the control motion is classified into motion (i) of moving the fingertip to the control position and motion (ii) of control by contact. If the control position is predicted based on motion and motion (i)-motion (ii) is distinguished, if the control position is predicted based on the position after motion (i), the position where the user intends to control can be more accurately predicted. be able to

한편, 사용자가 제어 수단을 멈추는 시점(時點)을 기준으로 제어 의도 및 제어 위치를 판단하게 되면 해당 사용자가 자신의 제어 시점을 인지하고 제어를 할 수 있게 된다. 특히, 모션 (i)-모션 (ii)가 서로 연결된 모션의 경우 제어 대상 영역으로부터 보다 멀리 떨어진 위치에서도 정확한 제어 위치를 예측할 수 있게 된다.On the other hand, if the control intention and control location are determined based on the point in time when the user stops the control means, the corresponding user can recognize the point in time for his/her own control and perform control. In particular, in the case of a motion in which motion (i) and motion (ii) are connected to each other, an accurate control position can be predicted even at a location farther from the control target area.

앞서 살펴본 내용을 기초로 하여, 본 발명자(들)은, 제어 수단의 모션 좌표 중 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 결정되는 제1 좌표와 그 제1 좌표 또는 트리거 좌표를 기준으로 특정되는 거리 및 직선 구간을 참조하여 결정되는 제2 좌표에 기초하여 모션 벡터를 특정하고, 그 특정되는 모션 벡터를 이용하여 제어 대상 영역에서 사용자의 의도에 부합되는 정확한 제어 위치를 특정할 수 있는 신규하고도 진보된 기술을 제안하는 바이다.Based on the foregoing, the present inventor(s), among the motion coordinates of the control means, the first coordinate determined by referring to the coordinate at the time when the trigger event related to the movement of the control means occurs as the trigger coordinate and specifying a motion vector based on second coordinates determined by referring to a distance and a straight line section specified based on the first coordinate or trigger coordinate, and using the specified motion vector to determine the user's intention in the control target area. We propose a new and advanced technique that can specify the exact control location to be matched.

본 발명은, 전술한 종래 기술의 문제점을 모두 해결하는 것을 그 목적으로 한다.The present invention has as its object to solve all the problems of the prior art described above.

또한, 본 발명은, 제어 대상 영역에서 사용자의 의도에 부합되는 제어 위치를 정확하게 예측하는 것을 그 목적으로 한다.In addition, an object of the present invention is to accurately predict a control position that meets a user's intention in a control target area.

또한, 본 발명은, 제어 위치를 특정하기 위한 모션 벡터의 유효성을 검증하여 오차 발생을 최소화하는 것을 또 다른 목적으로 한다.Another object of the present invention is to minimize the occurrence of an error by verifying the validity of a motion vector for specifying a control position.

또한, 본 발명은 복수의 제어 위치 산출 방식 중 정확도 높은 제어 위치 산출 방식을 동적으로 결정하여 사용자가 의도하는 제어 위치를 특정하는 것을 그 목적으로 한다.In addition, an object of the present invention is to specify a control position intended by a user by dynamically determining a control position calculation method with high accuracy among a plurality of control position calculation methods.

상기 목적을 달성하기 위한 본 발명의 대표적인 구성은 다음과 같다.Representative configurations of the present invention for achieving the above object are as follows.

본 발명의 일 태양에 따르면, 객체 제어를 지원하기 위한 방법으로서, 제어 수단의 모션 좌표 중 상기 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정하는 단계, 상기 트리거 좌표와 상기 모션 좌표 사이의 거리, 상기 트리거 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간, 상기 제1 좌표와 상기 모션 좌표 사이의 거리 및 상기 제1 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간 중 적어도 하나를 참조하여 제2 좌표를 결정하는 단계, 및 상기 제1 좌표 및 상기 제2 좌표에 기초하여 결정되는 모션 벡터를 제어 대상 영역에서 제어 위치를 결정하기 위한 지시 벡터로서 결정하는 단계를 포함하는 방법이 제공된다.According to one aspect of the present invention, as a method for supporting object control, reference is made to a coordinate at a point in time when a trigger event related to the movement of the control means is generated among motion coordinates of the control means as trigger coordinates. Determining coordinates, a distance between the trigger coordinate and the motion coordinate, a straight line section specified by the trigger coordinate and the motion coordinate, a distance between the first coordinate and the motion coordinate, and the first coordinate and the motion Determining second coordinates by referring to at least one of the straight line sections specified by the coordinates, and instructions for determining a control position in a control target region using a motion vector determined based on the first coordinates and the second coordinates A method comprising determining as a vector is provided.

또한, 본 발명의 다른 태양에 따르면, 객체 제어를 지원하기 위한 시스템으로서, 제어 수단의 모션 좌표 중 상기 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정하고, 상기 트리거 좌표와 상기 모션 좌표 사이의 거리, 상기 트리거 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간, 상기 제1 좌표와 상기 모션 좌표 사이의 거리 및 상기 제1 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간 중 적어도 하나를 참조하여 제2 좌표를 결정하는 좌표 관리부, 및 상기 제1 좌표 및 상기 제2 좌표에 기초하여 결정되는 모션 벡터를 제어 대상 영역에서 제어 위치를 결정하기 위한 지시 벡터로서 결정하는 지시 벡터 관리부를 포함하는 시스템이 제공된다.In addition, according to another aspect of the present invention, as a system for supporting object control, reference is made to a coordinate at a time point when a trigger event related to the movement of the control means occurs among motion coordinates of the control means as trigger coordinates. Determine a first coordinate, a distance between the trigger coordinate and the motion coordinate, a straight line section specified by the trigger coordinate and the motion coordinate, a distance between the first coordinate and the motion coordinate, and the first coordinate and the motion coordinate. A coordinate management unit for determining a second coordinate by referring to at least one of straight line sections specified by motion coordinates, and determining a control position in a control target region using a motion vector determined based on the first coordinate and the second coordinate A system including an indication vector management unit that determines as an indication vector for an object is provided.

이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 비일시성의 컴퓨터 판독 가능한 기록 매체가 더 제공된다.In addition to this, another method for implementing the present invention, another system, and a non-transitory computer readable recording medium recording a computer program for executing the method are further provided.

본 발명에 의하면, 제어 대상 영역에서 사용자의 의도에 부합되는 제어 위치를 정확하게 예측할 수 있게 된다.According to the present invention, it is possible to accurately predict a control position that meets the user's intention in the control target area.

또한, 본 발명에 의하면, 제어 위치를 특정하기 위한 모션 벡터의 유효성을 검증하여 오차 발생을 최소화할 수 있게 된다.In addition, according to the present invention, it is possible to minimize the occurrence of an error by verifying the validity of a motion vector for specifying a control position.

또한, 본 발명에 의하면, 복수의 제어 위치 산출 방식 중 정확도 높은 제어 위치 산출 방식을 동적으로 결정하여 사용자가 의도하는 제어 위치를 특정할 수 있게 된다.In addition, according to the present invention, it is possible to specify a control position intended by a user by dynamically determining a control position calculation method with high accuracy among a plurality of control position calculation methods.

도 1은 본 발명의 일 실시예에 따른 객체 제어 지원 시스템의 내부 구성을 상세하게 도시하는 도면이다.
도 2 내지 도 11은 본 발명의 일 실시예에 따라 사용자에게 객체 제어가 지원되는 과정을 예시적으로 나타내는 도면이다.
1 is a diagram showing in detail the internal configuration of an object control support system according to an embodiment of the present invention.
2 to 11 illustratively illustrate a process in which object control is supported to a user according to an embodiment of the present invention.

후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이러한 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 본 명세서에 기재되어 있는 특정 형상, 구조 및 특성은 본 발명의 정신과 범위를 벗어나지 않으면서 일 실시예로부터 다른 실시예로 변경되어 구현될 수 있다. 또한, 각각의 실시예 내의 개별 구성요소의 위치 또는 배치도 본 발명의 정신과 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 행하여지는 것이 아니며, 본 발명의 범위는 특허청구범위의 청구항들이 청구하는 범위 및 그와 균등한 모든 범위를 포괄하는 것으로 받아들여져야 한다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 구성요소를 나타낸다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The detailed description of the present invention which follows refers to the accompanying drawings which illustrate, by way of illustration, specific embodiments in which the present invention may be practiced. These embodiments are described in sufficient detail to enable any person skilled in the art to practice the present invention. It should be understood that the various embodiments of the present invention are different from each other but are not necessarily mutually exclusive. For example, specific shapes, structures, and characteristics described herein may be implemented from one embodiment to another without departing from the spirit and scope of the present invention. It should also be understood that the location or arrangement of individual components within each embodiment may be changed without departing from the spirit and scope of the present invention. Therefore, the detailed description to be described later is not performed in a limiting sense, and the scope of the present invention should be taken as encompassing the scope claimed by the claims and all scopes equivalent thereto. Like reference numbers in the drawings indicate the same or similar elements throughout the various aspects.

이하에서는, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 여러 바람직한 실시예에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, various preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings in order to enable those skilled in the art to easily practice the present invention.

객체 제어 지원 시스템의 구성Configuration of object control support system

이하에서는, 본 발명의 구현을 위하여 중요한 기능을 수행하는 객체 제어 지원 시스템(100)의 내부 구성 및 각 구성요소의 기능에 대하여 살펴보기로 한다.Hereinafter, the internal configuration of the object control support system 100 that performs important functions for the implementation of the present invention and the functions of each component will be reviewed.

도 1은 본 발명의 일 실시예에 따른 객체 제어 지원 시스템(100)의 내부 구성을 상세하게 도시하는 도면이다.1 is a diagram showing in detail the internal configuration of an object control support system 100 according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 객체 제어 지원 시스템(100)은 좌표 관리부(110), 지시 벡터 관리부(120), 통신부(130) 및 제어부(140)를 포함할 수 있다. 또한, 본 발명의 일 실시예에 따르면, 좌표 관리부(110), 지시 벡터 관리부(120), 통신부(130) 및 제어부(140)는 그 중 적어도 일부가 외부 시스템(미도시됨)과 통신하는 프로그램 모듈들일 수 있다. 이러한 프로그램 모듈들은 운영 시스템, 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 객체 제어 지원 시스템(100)에 포함될 수 있으며, 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈들은 객체 제어 지원 시스템(100)과 통신 가능한 원격 기억 장치에 저장될 수도 있다. 한편, 이러한 프로그램 모듈들은 본 발명에 따라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴, 서브루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포괄하지만, 이에 제한되지는 않는다.Referring to FIG. 1 , an object control support system 100 according to an embodiment of the present invention may include a coordinate management unit 110, an indication vector management unit 120, a communication unit 130, and a control unit 140. In addition, according to an embodiment of the present invention, the coordinate management unit 110, the indication vector management unit 120, the communication unit 130, and the control unit 140 are at least a part of a program that communicates with an external system (not shown). can be modules. These program modules may be included in the object control support system 100 in the form of an operating system, application program modules, and other program modules, and may be physically stored on various known storage devices. Also, these program modules may be stored in a remote storage device capable of communicating with the object control support system 100 . Meanwhile, these program modules include, but are not limited to, routines, subroutines, programs, objects, components, data structures, etc. that perform specific tasks or execute specific abstract data types according to the present invention.

한편, 객체 제어 지원 시스템(100)에 관하여 위와 같이 설명되었으나, 이러한 설명은 예시적인 것이고, 객체 제어 지원 시스템(100)의 구성요소 또는 기능 중 적어도 일부가 필요에 따라 후술할 디바이스 내에서 실현되거나 이러한 디바이스 내에 포함될 수도 있음은 당업자에게 자명하다. 또한, 경우에 따라서는, 객체 제어 지원 시스템(100)의 모든 기능과 모든 구성요소가 디바이스 내에서 전부 실행되거나 디바이스 내에 전부 포함될 수도 있다.On the other hand, although the object control support system 100 has been described as above, this description is exemplary, and at least some of the components or functions of the object control support system 100 are realized in a device to be described later as needed, or such It is obvious to those skilled in the art that it may be included in the device. Also, in some cases, all functions and all components of the object control support system 100 may be entirely executed in the device or included in the device.

본 발명의 일 실시예에 따른 디바이스는 메모리 수단을 구비하고, 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 디지털 기기로서, 스마트 글래스, 스마트 워치, 스마트 밴드, 스마트 링, 스마트 넥클리스, 스마트 이어셋, 스마트 이어폰, 스마트 이어링 등과 같은 웨어러블 디바이스이거나 스마트폰, 스마트 패드, 데스크탑 컴퓨터, 서버, 노트북 컴퓨터, 워크스테이션, 피디에이(PDA), 웹 패드, 이동 전화기, 리모트 컨트롤러 등과 같은 다소 전통적인 디바이스가 포함될 수 있으며, 디바이스는 전술한 예시뿐만 아니라 본 발명의 목적을 달성할 수 있는 범위 내에서 얼마든지 변경될 수 있다. 또한, 본 발명의 일 실시예에 따른 디바이스는 제어 수단(예를 들어, 포인터, 사용자 눈 또는 손 끝 부위 등)을 촬영하기 위한 카메라 모듈(미도시됨)을 포함하거나 공지의 통신망을 통해 카메라 모듈(또는 카메라 모듈을 포함하는 다른 디바이스와 통신 가능할 수 있다.A device according to an embodiment of the present invention is a digital device equipped with a memory means and equipped with a microprocessor and having an arithmetic capability, and includes smart glasses, smart watches, smart bands, smart rings, smart necklaces, smart earsets, smart earphones, Wearable devices such as smart earrings, etc., or rather traditional devices such as smart phones, smart pads, desktop computers, servers, notebook computers, workstations, PDAs, web pads, mobile phones, remote controllers, etc. may be included. Any number of changes may be made within the range capable of achieving the object of the present invention, not just one example. In addition, the device according to an embodiment of the present invention includes a camera module (not shown) for capturing a control means (eg, a pointer, a user's eye or a fingertip, etc.) or a camera module through a known communication network. (Alternatively, it may be capable of communicating with other devices including the camera module.

한편, 본 발명의 일 실시예에 따른 위의 디바이스에는 본 발명에 따른 객체 제어를 지원하는 애플리케이션이 포함되어 있을 수 있다. 이와 같은 애플리케이션은 외부의 애플리케이션 배포 서버(미도시됨)로부터 다운로드된 것일 수 있다. 한편, 이러한 프로그램 모듈의 성격은 후술할 바와 같은 객체 제어 지원 시스템(100)의 좌표 관리부(110), 지시 벡터 관리부(120), 통신부(130) 및 제어부(140)와 전반적으로 유사할 수 있다. 여기서, 애플리케이션은 그 적어도 일부가 필요에 따라 그것과 실질적으로 동일하거나 균등한 기능을 수행할 수 있는 하드웨어 장치나 펌웨어 장치로 치환될 수도 있다.Meanwhile, the above device according to an embodiment of the present invention may include an application supporting object control according to the present invention. Such an application may be downloaded from an external application distribution server (not shown). Meanwhile, the characteristics of these program modules may be generally similar to those of the coordinate management unit 110, the instruction vector management unit 120, the communication unit 130, and the control unit 140 of the object control support system 100, which will be described later. Here, at least a part of the application may be replaced with a hardware device or a firmware device capable of performing substantially the same or equivalent functions as necessary.

먼저, 본 발명의 일 실시예에 따른 좌표 관리부(110)는 제어 수단의 모션 좌표 중 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정하는 기능을 수행할 수 있다. 본 발명의 일 실시예에 따른 제어 수단의 이동에 관한 트리거 이벤트에는, 제어 수단의 이동 방향 전환, 제어 수단의 이동 정지 등이 포함될 수 있다. 보다 구체적으로, 이러한 트리거 이벤트에는 제어 수단이 전진 후 후진을 하거나, 전진 후 정지를 하는 것이 포함될 수 있다. 이러한 전진 및 후진 등의 방향은 제어 대상 영역을 기준으로 특정되는 것일 수 있다.First, the coordinate management unit 110 according to an embodiment of the present invention refers to the coordinates at the time when a trigger event related to the movement of the control means occurs among the motion coordinates of the control means as trigger coordinates, and obtains the first coordinates. It can perform a decision-making function. A trigger event related to the movement of the control means according to an embodiment of the present invention may include a change in the direction of movement of the control means, a movement stop of the control means, and the like. More specifically, such a trigger event may include that the control unit moves backward after moving forward or stops after moving forward. Directions such as forward and backward may be specified based on the control target region.

예를 들어, 좌표 관리부(110)는 제어 수단의 모션 좌표 중 제어 수단이 제어 대상 영역을 향하여 전진 후 정지하는 트리거 이벤트가 발생되는 시점에서의 좌표 즉, 트리거 좌표를 제1 좌표로 결정할 수 있다.For example, the coordinate management unit 110 may determine, as the first coordinate, a coordinate at a point in time when a trigger event in which the control unit advances toward the control target area and then stops among the motion coordinates of the control unit, that is, the trigger coordinate.

다른 예를 들어, 좌표 관리부(110)는 제어 수단이 제어 대상 영역을 향하여 전진 후 후진하는 트리거 이벤트가 발생된 경우에, 그 트리거 이벤트가 발생되는 시점에서의 제어 수단의 모션 좌표 즉, 트리거 좌표를 기준으로 소정의 이전(previous) 시점(예를 들어, 바로 직전 시점)에서의 제어 수단의 모션 좌표를 제1 좌표로 결정할 수 있다. 여기서의, 소정의 이전 시점은 제어 수단을 촬영하는 촬영 모듈(예를 들어, 카메라)의 촬영 간격 또는 프레임 속도에 기초하여 특정되는 것일 수 있다.For another example, when a trigger event in which the control unit advances and then moves backward toward the control target region occurs, the coordinate management unit 110 sets motion coordinates of the control unit at the time when the trigger event occurs, that is, trigger coordinates. As a reference, motion coordinates of the control unit at a predetermined previous time point (eg, immediately before the time point) may be determined as the first coordinates. Here, the predetermined previous viewpoint may be specified based on a photographing interval or frame rate of a photographing module (eg, camera) for photographing the control means.

또한, 트리거 이벤트가 발생되는 시점에서는 제어 수단의 흔들림이 발생될 수 있는데, 이를 보정하기 위하여 좌표 관리부(110)는 트리거 좌표를 기준으로 특정되는 제어 수단의 적어도 하나의 모션 좌표를 참조하여 제1 좌표를 결정할 수 있다.In addition, shaking of the control means may occur at the time when the trigger event occurs. In order to correct this, the coordinate management unit 110 refers to at least one motion coordinate of the control means specified based on the trigger coordinates to determine the first coordinate. can decide

예를 들어, 좌표 관리부(110)는 트리거 좌표가 특정되는 시점을 기준으로 소정 시간 동안 특정되는 제어 수단의 복수의 모션 좌표를 통계 분석하여 제1 좌표를 결정할 수 있다. 본 발명의 일 실시예에 따른 통계 분석에는 복수의 모션 좌표에 대한 평균, 가중 평균, 분산, 표준 편차 등에 기초한 분석이 포함될 수 있다. 보다 구체적으로, 좌표 관리부(110)는 트리거 좌표가 특정되는 시점을 기준으로 0.01초 내지 0.1초 동안에 특정되는 복수의 모션 좌표의 평균 좌표를 제1 좌표로 결정할 수 있다.For example, the coordinate management unit 110 may determine the first coordinate by statistically analyzing a plurality of motion coordinates of the control unit specified for a predetermined time based on the point in time at which the trigger coordinate is specified. Statistical analysis according to an embodiment of the present invention may include analysis based on average, weighted average, variance, standard deviation, etc. for a plurality of motion coordinates. More specifically, the coordinate management unit 110 may determine, as the first coordinate, an average coordinate of a plurality of motion coordinates specified for 0.01 second to 0.1 second based on the point in time at which the trigger coordinate is specified.

다른 예를 들어, 좌표 관리부(110)는 트리거 좌표로부터 소정 거리 이내에 존재하는 제어 수단의 복수의 모션 좌표를 통계 분석하여 제1 좌표를 결정할 수 있다. 보다 구체적으로, 좌표 관리부(110)는 트리거 좌표로부터 5 내지 10mm 이내에서 특정되는 제어 수단의 복수의 모션 좌표의 평균 좌표를 제1 좌표로 결정할 수 있다.For another example, the coordinate management unit 110 may determine the first coordinate by statistically analyzing a plurality of motion coordinates of the control unit existing within a predetermined distance from the trigger coordinate. More specifically, the coordinate management unit 110 may determine, as the first coordinate, an average coordinate of a plurality of motion coordinates of the control means specified within 5 to 10 mm from the trigger coordinate.

한편, 좌표 관리부(110)는 위의 트리거 좌표 및 그 트리거 좌표로부터 소정 거리 이내의 모션 좌표 중 적어도 하나를 통계 분석의 대상에서 제외되도록 할 수 있다.Meanwhile, the coordinate management unit 110 may exclude at least one of the above trigger coordinates and motion coordinates within a predetermined distance from the trigger coordinates from a target of statistical analysis.

예를 들어, 좌표 관리부(110)는 제어 수단이 전진 후 정지하거나 제어 수단이 전진 후 후진하는 트리거 이벤트가 발생하게 되면 그 트리거 이벤트가 발생되는 시점을 기준으로 특정되는 트리거 좌표 및 그 트리거 좌표로부터 5mm 이내의 모션 좌표는 흔들림이 클 수 있기 때문에, 트리거 좌표 및 그 트리거 좌표로부터 5mm 이내의 모션 좌표는 통계 분석의 대상에서 제외되도록 할 수 있다.For example, the coordinate management unit 110 determines the trigger coordinates specified based on the time point at which the trigger event occurs and 5 mm from the trigger coordinates when a trigger event in which the control unit moves forward and then stops or the control unit moves forward and then moves backward occurs. Since motion coordinates within the range may have large shaking, trigger coordinates and motion coordinates within 5 mm from the trigger coordinates may be excluded from statistical analysis.

또한, 좌표 관리부(110)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표 사이의 거리를 참조하여 제2 좌표를 결정할 수 있다.Also, the coordinate management unit 110 may determine the second coordinate by referring to the trigger coordinate or the distance between the first coordinate and the motion coordinate of the control unit.

예를 들어, 좌표 관리부(110)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표 사이의 거리가 소정 수준 이상이 되는 시점에서의 제어 수단의 모션 좌표를 제2 좌표로 결정할 수 있다. 보다 구체적으로, 도 2를 참조하면, 좌표 관리부(110)는 트리거 좌표(201) 및 제어 수단의 모션 좌표 사이의 거리가 40 내지 50mm 이상이 되는 시점에서의 제어 수단의 모션 좌표(202)를 제2 좌표로 결정할 수 있다.For example, the coordinate management unit 110 may determine, as the second coordinates, the motion coordinates of the control means at a point in time when the distance between the trigger coordinates or the first coordinates and the motion coordinates of the control means exceeds a predetermined level. More specifically, referring to FIG. 2 , the coordinate management unit 110 provides the motion coordinates 202 of the control means at the time when the distance between the trigger coordinates 201 and the motion coordinates of the control means is 40 to 50 mm or more. It can be determined by 2 coordinates.

다른 예를 들어, 좌표 관리부(110)는 트리거 좌표로부터 거리가 소정 수준 이상이 되는 제어 수단의 모션 좌표 중 제1 좌표가 특정되는 시점을 기준으로 가장 근접한 시점의 모션 좌표를 제2 좌표로 결정할 수 있다. 보다 구체적으로, 도 2를 참조하면, 좌표 관리부(110)는 트리거 좌표(201)로부터 거리가 50mm 이상인 제어 수단의 모션 좌표 중 제1 좌표(203)가 특정되는 시점을 기준으로 가장 근접한 시점의 모션 좌표(202)를 제2 좌표로 결정할 수 있다.For another example, the coordinate management unit 110 may determine, as the second coordinates, motion coordinates of a point in time closest to the point in time at which the first coordinate is specified among the motion coordinates of the control means at which the distance from the trigger coordinate is equal to or greater than a predetermined level. have. More specifically, referring to FIG. 2 , the coordinate management unit 110 is the motion coordinate of the closest point of time based on the point at which the first coordinate 203 is specified among the motion coordinates of the control means having a distance of 50 mm or more from the trigger coordinate 201. Coordinates 202 may be determined as the second coordinates.

또한, 좌표 관리부(110)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 제2 좌표를 결정할 수 있다.In addition, the coordinate management unit 110 may determine the second coordinate by referring to a straight line section specified by the trigger coordinate or the first coordinate and the motion coordinate of the control means.

예를 들어, 좌표 관리부(110)는 제1 좌표(또는 트리거 좌표)가 특정되는 시점을 기준으로 시간적으로 인접한 다른 시점에서의 제어 수단의 모션 좌표 각각을 위의 제1 좌표(또는 트리거 좌표)와 연결하여 직선 구간이 특정되는 모션 좌표 중 위의 제1 좌표(또는 트리거 좌표)로부터 가장 먼 거리에 존재하는 모션 좌표를 제2 좌표로서 결정할 수 있다. 여기서, 제1 좌표(또는 트리거 좌표)가 특정되는 시점으로부터 위의 다른 시점까지의 시간적으로 인접한 모든 모션 좌표가 위의 제1 좌표(또는 트리거 좌표)와 위의 다른 시점에서의 제어 수단의 모션 좌표를 연결하는 직선으로부터 소정 거리 이내에 존재하면, 직선 구간이 특정될 수 있는 것일 수 있다.For example, the coordinate management unit 110 sets each of the motion coordinates of the control means at another time point temporally adjacent to the time point at which the first coordinate (or trigger coordinate) is specified as the above first coordinate (or trigger coordinate). Among the motion coordinates in which a straight line segment is specified by connection, motion coordinates that exist at the farthest distance from the first coordinate (or trigger coordinate) above may be determined as the second coordinate. Here, all motion coordinates temporally adjacent from the point in time at which the first coordinate (or trigger coordinate) is specified to another point in time are the motion coordinates of the control means at the point in time other than the first coordinate (or trigger coordinate) above. If it exists within a predetermined distance from a straight line connecting , it may be that a straight section can be specified.

보다 구체적으로, 좌표 관리부(110)는 제1 좌표(또는 트리거 좌표)가 특정되는 시점이 제1 시점이고, 그 제1 시점을 기준으로 시간적으로 인접한 제2 시점에서의 제어 수단의 모션 좌표가 제2 모션 좌표이며, 그 제2 시점을 기준으로 시간적으로 인접한 제3 시점에서의 제어 수단의 모션 좌표가 제3 모션 좌표이고, 그 제3 시점을 기준으로 시간적으로 인접한 제4 시점에서의 제어 수단의 모션 좌표가 제4 모션 좌표인 경우에, 제1 좌표(또는 트리거 좌표)와 제3 모션 좌표를 연결하는 직선으로부터 제2 모션 좌표가 소정 거리 이내에 존재하는 경우에, 좌표 관리부(110)는 제1 좌표(또는 트리거 좌표), 제2 모션 좌표 및 제3 모션 좌표가 직선 구간인 것으로 특정할 수 있다. 또한, 제1 좌표(또는 트리거 좌표)와 제4 모션 좌표를 연결하는 직선으로부터 제2 모션 좌표 및 제3 모션 좌표가 모두 소정 거리 이내에 존재하는 경우에, 좌표 관리부(110)는 제1 좌표(또는 트리거 좌표), 제2 모션 좌표, 제3 모션 좌표 및 제4 모션 좌표가 직선 구간인 것으로 특정할 수 있다.More specifically, in the coordinate management unit 110, the point in time at which the first coordinate (or trigger coordinate) is specified is the first point in time, and the motion coordinates of the control unit at the second point in time temporally adjacent to the first point in time are the first point in time. 2 motion coordinates, the motion coordinates of the control unit at a third point in time temporally adjacent to the second point of view are the third motion coordinates, and the motion coordinates of the control unit in a fourth point in time temporally adjacent to the third point of view are When the motion coordinates are the fourth motion coordinates and the second motion coordinates exist within a predetermined distance from a straight line connecting the first coordinates (or trigger coordinates) and the third motion coordinates, the coordinate management unit 110 determines the first motion coordinates. It may be specified that the coordinates (or trigger coordinates), the second motion coordinates, and the third motion coordinates are straight-line sections. In addition, when both the second motion coordinate and the third motion coordinate exist within a predetermined distance from a straight line connecting the first coordinate (or trigger coordinate) and the fourth motion coordinate, the coordinate management unit 110 determines the first coordinate (or trigger coordinate). trigger coordinates), the second motion coordinates, the third motion coordinates, and the fourth motion coordinates may be specified as straight-line sections.

또한, 좌표 관리부(110)는 제1 좌표(또는 트리거 좌표)가 특정되는 시점을 기준으로 시간적으로 인접한 다른 시점에서의 제어 수단의 모션 좌표를 시간적으로 인접한 순서대로 각각 연결하여 특정될 수 있는 직선 구간 중 가장 긴 직선 구간을 특정하고, 그 가장 긴 직선 구간에 존재하는 제어 수단의 복수의 모션 좌표 중 제1 좌표(또는 트리거 좌표)로부터 가장 먼 거리에 위치하는 모션 좌표를 제2 좌표로 결정할 수 있다. 한편, 직선 구간에 존재하는 제어 수단의 복수의 모션 좌표 사이의 간격은 소정 거리 이내일 수 있다.In addition, the coordinate management unit 110 connects the motion coordinates of the control means at other time points temporally adjacent to the time point at which the first coordinates (or trigger coordinates) are specified, respectively, in a temporally adjacent order, and can be specified. Among the plurality of motion coordinates of the control unit existing in the longest straight section, motion coordinates located at the furthest distance from the first coordinate (or trigger coordinate) may be determined as the second coordinate. . Meanwhile, an interval between a plurality of motion coordinates of a control unit existing in a straight section may be within a predetermined distance.

또한, 도 3을 참조하면, 좌표 관리부(110)는 제1 좌표(321)가 특정되는 시점이 제1 시점이고, 제1 시점을 기준으로 시간적으로 인접한 제2 시점에서의 제어 수단의 모션 좌표가 제2 모션 좌표(322)이며, 제2 시점을 기준으로 시간적으로 인접한 제3 시점에서의 제어 수단의 모션 좌표가 제3 모션 좌표(323)이고, 제3 시점을 기준으로 시간적으로 인접한 제4 시점에서의 제어 수단의 모션 좌표(324)가 제4 모션 좌표인 경우에, 제1 좌표(321)와 제2 모션 좌표(322)를 연결하는 제1 직선 구간, 제1 좌표(321)와 제3 모션 좌표(323)를 연결하는 제2 직선 구간 및 제1 좌표(321)와 제4 모션 좌표(324)를 연결하는 제3 직선 구간을 특정 가능한 직선 구간으로 결정하고, 그 복수의 직선 구간(즉, 제1 직선 구간, 제2 직선 구간 및 제3 직선 구간) 중 가장 긴 직선 구간에 존재하는 제3 직선 구간 내 복수의 모션 좌표 중 제1 좌표(321)로부터 가장 먼 거리에 존재하는 모션 좌표(324)를 제2 좌표로 결정할 수 있다.In addition, referring to FIG. 3 , in the coordinate management unit 110, a time point at which the first coordinate 321 is specified is a first time point, and motion coordinates of the control means at a second point in time temporally adjacent to the first point of view are The second motion coordinates 322, the motion coordinates of the control unit at a third point in time temporally adjacent to the second point of view are the third motion coordinates 323, and a fourth point in time temporally adjacent to the third point of view. When the motion coordinates 324 of the control means in are the fourth motion coordinates, the first straight line section connecting the first coordinates 321 and the second motion coordinates 322, the first coordinates 321 and the third A second straight line section connecting the motion coordinates 323 and a third straight line section connecting the first coordinates 321 and the fourth motion coordinates 324 are determined as straight line sections that can be specified, and the plurality of straight line sections (that is, , the first straight section, the second straight section, and the third straight section) among the plurality of motion coordinates in the third straight section existing in the longest straight section ( 324) may be determined as the second coordinate.

한편, 좌표 관리부(110)는 트리거 좌표(또는 제1 좌표)와 제어 수단의 모션 좌표 사이의 거리를 참조하여 결정되는 좌표 및 제1 좌표(또는 트리거 좌표)와 제어 수단의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 결정되는 좌표 중 제1 좌표(또는 트리거 좌표)에 가까운 좌표를 제2 좌표로서 결정할 수 있다.Meanwhile, the coordinate management unit 110 is specified by the coordinates determined by referring to the distance between the trigger coordinates (or first coordinates) and the motion coordinates of the control unit and the first coordinates (or trigger coordinates) and the motion coordinates of the control unit. A coordinate close to the first coordinate (or trigger coordinate) among the coordinates determined by referring to the straight section may be determined as the second coordinate.

예를 들어, 도 4를 참조하면, 좌표 관리부(110)는 (i) 트리거 좌표와 제어 수단의 모션 좌표 사이의 거리가 소정 수준 이상이 되는 시점에서의 제어 수단의 모션 좌표(410, 412, 414, 416, 420, 422) 및 (ii) 제1 좌표가 특정되는 시점을 기준으로 시간적으로 인접한 다른 시점에서의 제어 수단의 모션 좌표 각각을 위의 제1 좌표와 연결하여 직선 구간이 특정될 수 있는 모션 좌표 중 위의 제1 좌표로부터 가장 먼 거리에 위치하는 모션 좌표(411, 413, 415, 417, 421, 423)를 결정하고, 복수의 모션 좌표(410, 411, 412, 413, 414, 415, 416, 417, 420, 421, 422, 423) 중 제1 좌표에 가까운 모션 좌표(411, 413, 415, 417, 420, 422)를 제2 좌표로 결정할 수 있다.For example, referring to FIG. 4 , the coordinate management unit 110 (i) the motion coordinates of the control means (410, 412, 414 , 416, 420, 422) and (ii) a straight line section can be specified by connecting each of the motion coordinates of the control unit at another time point temporally adjacent to the time point at which the first coordinate is specified with the first coordinate. Among motion coordinates, motion coordinates (411, 413, 415, 417, 421, 423) located at the farthest distance from the first coordinate are determined, and a plurality of motion coordinates (410, 411, 412, 413, 414, 415) are determined. .

다음으로, 지시 벡터 관리부(120)는 제1 좌표 및 제2 좌표에 기초하여 결정되는 모션 벡터를 제어 대상 영역에서 제어 위치를 결정하기 위한 지시 벡터로 결정할 수 있다. 본 발명의 일 실시예에 따른 제어 대상 영역은 사용자에 의해 제어 가능한 적어도 하나의 객체가 디스플레이되는 영역을 의미할 수 있다.Next, the instruction vector management unit 120 may determine the motion vector determined based on the first coordinates and the second coordinates as an instruction vector for determining a control position in the control target region. A control target area according to an embodiment of the present invention may refer to an area where at least one object controllable by a user is displayed.

예를 들어, 지시 벡터 관리부(120)는 위의 제2 좌표를 시점으로 하고, 위의 제1 좌표를 종점으로 하는 모션 벡터를 제어 대상 영역에서 제어 위치를 결정하기 위한 지시 벡터로 결정할 수 있다.For example, the instruction vector management unit 120 may determine a motion vector having the second coordinate as a start point and the first coordinate as an end point as an instruction vector for determining a control position in the control target region.

한편, 지시 벡터 관리부(120)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표 사이의 거리가 소정 수준 이상이 되는 모션 좌표가 존재하지 않는 경우에 모션 좌표가 특정될 수 없는 것으로 결정할 수 있다.Meanwhile, the instruction vector management unit 120 may determine that the motion coordinates cannot be specified when there is no motion coordinate in which the distance between the trigger coordinate or the first coordinate and the motion coordinate of the control unit exceeds a predetermined level.

예를 들어, 도 5를 참조하면, 지시 벡터 관리부(120)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 결정되는 제2 좌표(501, 502)가 특정될 수 있더라도, 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표 사이의 거리를 참조하여 결정되는 제2 좌표가 특정될 수 없다면, 모션 벡터가 특정될 수 없는 것으로 결정할 수 있다.For example, referring to FIG. 5 , the indication vector management unit 120 determines the second coordinates 501 and 502 determined with reference to a straight line section specified by the trigger coordinates or the first coordinates and the motion coordinates of the control unit. Even if it is possible, if the trigger coordinate or the second coordinate determined by referring to the distance between the first coordinate and the motion coordinate of the control means cannot be specified, it may be determined that the motion vector cannot be specified.

또한, 지시 벡터 관리부(120)는 모션 벡터의 길이, 속도, 방향 및 제1 좌표의 위치 중 적어도 하나를 참조하여 모션 벡터의 유효성을 검증할 수 있다.Also, the direction vector management unit 120 may verify the validity of the motion vector by referring to at least one of the length, speed, direction, and position of the first coordinates of the motion vector.

예를 들어, 지시 벡터 관리부(120)는 모션 벡터의 길이를 소정 배수 스케일링한 길이가 제어 대상 영역 및 제1 좌표 사이의 길이보다 긴 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.For example, the instruction vector management unit 120 may determine the motion vector as a valid motion vector when a length obtained by scaling the length of the motion vector by a predetermined multiple is longer than the length between the control target region and the first coordinate.

다른 예를 들어, 지시 벡터 관리부(120)는 모션 벡터의 길이에 기초하여 유효 영역을 특정하고, 그 유효 영역 내에 제어 대상 영역이 존재하는 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다. 보다 구체적으로, 도 6을 참조하면, 지시 벡터 관리부(120)는 모션 벡터의 길이를 소정 수준만큼 스케일링하여 특정되는 영역(또는 연장되는 영역)을 유효 영역(602)으로 특정하고, 그 유효 영역(602)과 제어 대상 영역 사이의 공통 영역이 존재하는 경우에 해당 벡터를 유효한 모션 벡터로 결정할 수 있다.For another example, the instruction vector management unit 120 may specify an effective region based on the length of the motion vector, and determine the corresponding motion vector as a valid motion vector when a control target region exists within the effective region. More specifically, referring to FIG. 6 , the indication vector management unit 120 scales the length of the motion vector by a predetermined level to specify a specified area (or extended area) as an effective area 602, and the effective area ( 602) and the control target region, the corresponding vector may be determined as a valid motion vector.

또 다른 예를 들어, 지시 벡터 관리부(120)는 모션 벡터의 길이가 소정 길이(예를 들어, 10 내지 20mm)보다 긴 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.As another example, when the length of the motion vector is longer than a predetermined length (eg, 10 to 20 mm), the instruction vector management unit 120 may determine the corresponding motion vector as a valid motion vector.

또 다른 예를 들어, 지시 벡터 관리부(120)는 모션 벡터의 속도가 소정 속도(예를 들어, 10mm/s 내지 20mm/s) 이상인 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.As another example, the instruction vector management unit 120 may determine the motion vector as a valid motion vector when the speed of the motion vector is greater than or equal to a predetermined speed (eg, 10 mm/s to 20 mm/s).

또 다른 예를 들어, 도 7를 참조하면, 지시 벡터 관리부(120)는 모션 벡터 및 제어 대상 영역이 이루어는 각도(구체적으로, 제어 대상 영역의 법선 벡터가 이루는 각)가 소정 각도 이내(예를 들어, -45도≤θx≤45도이고, 30도≤θy≤60도 이내)인 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.As another example, referring to FIG. 7 , the instruction vector management unit 120 determines that the motion vector and the angle formed by the control target region (specifically, the angle formed by the normal vector of the control target region) are within a predetermined angle (eg, For example, when -45 degrees ≤ θ x ≤ 45 degrees and within 30 degrees ≤ θ y ≤ 60 degrees), the corresponding motion vector may be determined as a valid motion vector.

또 다른 예를 들어, 지시 벡터 관리부(120)는 위의 제1 좌표(즉, 모션 벡터의 종점)가 제어 대상 영역으로부터 소정 거리 이내(예를 들어, 100mm 이내)에 존재하는 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.As another example, the instruction vector management unit 120 determines the motion vector when the above first coordinate (ie, the end point of the motion vector) is within a predetermined distance (eg, within 100 mm) from the control target area. can be determined as a valid motion vector.

한편, 지시 벡터 관리부(120)는 모션 벡터가 특정되지 않거나 유효하지 않은 경우에 제1 좌표 또는 트리거 좌표를 지나고 제어 대상 영역에 수직인 벡터를 해당 제어 대상 영역에서의 제어 위치를 결정하기 위한 지시 벡터로서 결정할 수 있다.On the other hand, if the motion vector is not specified or is not valid, the direction vector management unit 120 converts a vector perpendicular to the control target area passing through the first coordinates or trigger coordinates to an instruction vector for determining the control position in the corresponding control target area. can be determined as

예를 들어, 도 7을 참조하면, 지시 벡터 관리부(120)는 제어 수단이 전진 후 정지하는 트리거 이벤트가 발생되고 제1 좌표(또는 제어 수단의 모션 좌표)가 제어 대상 영역과의 거리가 소정 거리 이내인 경우에, 제1 좌표를 지나고 제어 대상 영역에 수직인 벡터를 제어 대상 영역에서의 제어 위치를 결정하기 위한 지시 벡터로서 결정할 수 있다.For example, referring to FIG. 7 , the instruction vector management unit 120 generates a trigger event in which the control unit moves forward and then stops, and the distance between the first coordinate (or the motion coordinate of the control unit) and the control target region is a predetermined distance. If it is within, a vector passing through the first coordinates and perpendicular to the control target region may be determined as an indication vector for determining a control position in the control target region.

다른 예를 들어, 지시 벡터 관리부(120)는 제어 수단이 전진 후 후진하는 트리거 이벤트가 발생되고 제1 좌표(또는 제어 수단의 모션 좌표)가 제어 대상 영역과의 거리가 소정 거리 이내인 경우에, 트리거 좌표를 지나고 제어 대상 영역에 수직인 벡터를 제어 대상 영역에서의 제어 위치를 결정하기 위한 지시 벡터로서 결정할 수 있다.For another example, the direction vector management unit 120 may, when a trigger event occurs in which the control means moves forward and backward, and the distance between the first coordinate (or the motion coordinates of the control means) and the control target region is within a predetermined distance, A vector passing through the trigger coordinates and perpendicular to the control target region may be determined as an indication vector for determining a control position in the control target region.

또한, 지시 벡터 관리부(120)는 제어 수단의 모션 좌표 및 제어 대상 영역과의 거리가 소정 거리 이상인 경우에, 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터를 제어 대상 영역에서의 제어 위치를 결정하기 위한 지시 벡터로서 결정할 수 있다. 본 발명의 일 실시예에 따른 사용자 신체 좌표는, 사용자의 눈(예를 들어, 우세안, 양안 등), 머리, 손, 손 끝 등의 다양한 신체 부위에 관한 신체 좌표가 포함될 수 있다. 한편, 본 발명에 따른 제어 수단이 사용자의 신체 부위인 경우에는, 해당 신체 부위와 그와 동일하지 않은 사용자의 다른 신체 부위에 기초하여 지시 벡터가 결정될 수 있다.In addition, when the distance between the motion coordinates of the control means and the control target region is greater than or equal to a predetermined distance, the instruction vector management unit 120 converts a vector specified based on the motion coordinates of the control means and the body coordinates of the user into the control target region. It can be determined as an indication vector for determining the control position. The user's body coordinates according to an embodiment of the present invention may include body coordinates of various body parts such as the user's eyes (eg, dominant eye, both eyes, etc.), head, hands, and fingertips. Meanwhile, when the control unit according to the present invention is a user's body part, an indication vector may be determined based on the user's other body part that is not the same as the corresponding body part.

예를 들어, 지시 벡터 관리부(120)는 제어 수단이 사용자의 손 끝인 경우에 해당 사용자의 손 끝의 모션 좌표 및 제어 대상 영역 사이의 거리가 8cm 이상인 경우에, 해당 사용자의 우세안의 좌표를 시점으로 하고, 손 끝의 모션 좌표를 종점으로 하는 벡터를 제어 대상 영역에서의 제어 위치를 결정하기 위한 지시 벡터로서 결정할 수 있다.For example, when the control means is the user's fingertip and the distance between the motion coordinates of the user's fingertip and the control target region is 8 cm or more, the instruction vector management unit 120 uses the coordinates of the user's dominant eye as the starting point. And, a vector having the motion coordinates of the fingertip as an end point may be determined as an instruction vector for determining a control position in the control target region.

다음으로, 본 발명의 일 실시예에 따르면, 통신부(130)는 좌표 관리부(110) 및 지시 벡터 관리부(120)로부터의/로의 데이터 송수신이 가능하도록 하는 기능을 수행할 수 있다.Next, according to an embodiment of the present invention, the communication unit 130 may perform a function of enabling data transmission/reception from/to the coordinate management unit 110 and the indication vector management unit 120 .

마지막으로, 본 발명의 일 실시예에 따르면, 제어부(140)는 좌표 관리부(110), 지시 벡터 관리부(120) 및 통신부(130) 간의 데이터의 흐름을 제어하는 기능을 수행할 수 있다. 즉, 본 발명에 따른 제어부(140)는 객체 제어 지원 시스템(100)의 외부로부터의/로의 데이터 흐름 또는 객체 제어 지원 시스템(100)의 각 구성요소 간의 데이터 흐름을 제어함으로써, 좌표 관리부(110), 지시 벡터 관리부(120) 및 통신부(130)에서 각각 고유 기능을 수행하도록 제어할 수 있다.Finally, according to an embodiment of the present invention, the control unit 140 may perform a function of controlling the flow of data between the coordinate management unit 110, the indication vector management unit 120, and the communication unit 130. That is, the control unit 140 according to the present invention controls the data flow from/to the outside of the object control support system 100 or the data flow between each component of the object control support system 100, so that the coordinate management unit 110 , it is possible to control the instruction vector management unit 120 and the communication unit 130 to perform unique functions, respectively.

이하에서는, 본 발명의 일 실시예에 따른 객체 제어 지원 시스템(100)이 포함된 디바이스를 이용하는 사용자에게 본 발명에 따른 객체 제어가 지원되는 상황을 살펴보기로 한다. 본 발명의 일 실시예에 따른 제어 수단은 사용자의 손 끝(예를 들어, 검지 끝)일 수 있다.Hereinafter, a situation in which object control according to the present invention is supported to a user using a device including the object control support system 100 according to an embodiment of the present invention will be described. The control unit according to an embodiment of the present invention may be a user's fingertip (eg, the tip of an index finger).

먼저, 본 발명의 일 실시예에 따른 디바이스는 사용자의 손 끝의 모션 좌표 중 제어 대상 영역을 향해 나아가는 방향으로 전진 후 정지하는 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표가 결정될 수 있다.First, the device according to an embodiment of the present invention refers to the coordinates at the time point when a trigger event that stops after moving forward in the direction toward the control target region among the motion coordinates of the user's fingertip as trigger coordinates, A first coordinate may be determined.

예를 들어, 사용자의 손 끝이 제어 대상 영역을 향해 나아가는 방향으로 전진 후 정지하는 트리거 이벤트가 발생되는 경우에, 사용자의 손 끝의 모션 좌표 중 그 트리거 이벤트가 발생되는 시점에서의 좌표 즉, 트리거 좌표를 제1 좌표로 결정할 수 있다.For example, when a trigger event occurs in which the user's fingertip moves in the direction of moving toward the control target area and then stops, the coordinates at the time when the trigger event occurs among the motion coordinates of the user's fingertip, that is, the trigger The coordinates may be determined as the first coordinates.

그 다음에, 위의 트리거 좌표와 사용자의 손 끝의 모션 좌표 사이의 거리 및 위의 제1 좌표와 사용자의 손 끝의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 제2 좌표가 결정될 수 있다.Next, second coordinates may be determined by referring to a straight line section specified by the distance between the above trigger coordinates and the motion coordinates of the user's fingertip and the above first coordinates and the motion coordinates of the user's fingertip.

구체적으로, 위의 트리거 좌표와 사용자의 손 끝의 모션 좌표 사이의 거리를 참조하여 결정되는 좌표 및 제1 좌표(또는 트리거 좌표)와 사용자의 손 끝의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 결정되는 좌표 중 위의 제1 좌표에 가까운 좌표가 제2 좌표로 결정될 수 있다.Specifically, with reference to the coordinates determined by referring to the distance between the above trigger coordinates and the motion coordinates of the user's fingertip, and the straight section specified by the first coordinate (or trigger coordinate) and the motion coordinates of the user's fingertip Among the determined coordinates, a coordinate close to the above first coordinate may be determined as the second coordinate.

그 다음에, 위의 제1 좌표 및 제2 좌표에 기초하여 결정되는 모션 벡터가 제어 대상 영역에서 제어 위치를 결정하기 위한 지시 벡터로서 결정될 수 있다.Then, a motion vector determined based on the above first and second coordinates may be determined as an indication vector for determining a control position in the control target region.

구체적으로, 위의 제2 좌표를 시점으로 하고 위의 제1 좌표를 종점으로 하여 특정되는 모션 벡터가 지시 벡터로 결정될 수 있다.Specifically, a motion vector specified by using the second coordinate as a start point and the first coordinate as an end point may be determined as a direction vector.

그 다음에, 위의 결정되는 모션 벡터의 길이, 속도, 방향 및 위의 제1 좌표의 위치 중 적어도 하나를 참조하여 위의 모션 벡터의 유효성이 검증될 수 있다.Then, the validity of the motion vector may be verified by referring to at least one of the determined length, speed, direction, and position of the first coordinate of the motion vector.

그 다음에, 위의 모션 벡터가 유효한 것으로 결정되는 경우에, 제어 대상 영역 중 위의 모션 벡터의 연장선과 만나는 영역이 사용자에 의해 의도되는 제어 위치로 결정될 수 있다.Then, when it is determined that the above motion vector is valid, an area intersecting with an extension line of the above motion vector among control target regions may be determined as a control position intended by the user.

도 9 내지 도 11은 본 발명의 일 실시예에 따라 제어 위치 산출 방식이 동적으로 변경되는 과정을 예시적으로 나타내는 도면이다.9 to 11 are diagrams illustrating a process of dynamically changing a control position calculation method according to an embodiment of the present invention by way of example.

도 9를 참조하면, 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리에 따라 적절한 벡터를 이용하여 제어 위치가 산출될 수 있다.Referring to FIG. 9 , the control position may be calculated using an appropriate vector according to the distance between the motion coordinates of the control means and the control target region.

먼저, 제어 수단의 모션 좌표가 제어 대상 영역으로부터 소정 거리(예를 들어, 8cm) 이상에 존재하는 경우에는 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902)를 이용하여 제어 위치가 산출될 수 있다. 예를 들어, 제어 수단의 모션 좌표가 제어 대상 영역으로부터 제1 거리(예를 들어, 30cm) 이상에 존재하는 경우에는 제어 수단의 모션 좌표(예를 들어, 손 끝) 및 사용자의 우세안 좌표를 연결하는 벡터(901)를 이용하여 제어 위치가 산출될 수 있고, 제어 수단의 모션 좌표가 제어 대상 영역으로부터 제2 거리(예를 들어, 8cm) 이상 및 제1 거리 이하(예를 들어, 30cm)에 존재하는 경우에는 제어 수단의 모션 좌표(예를 들어, 손 끝) 및 사용자의 양안(소정 조건에 따라 우세안) 좌표를 연결하는 벡터(902)를 이용하여 제어 위치가 산출될 수 있다.First, when the motion coordinates of the control means exist at a predetermined distance (eg, 8 cm) or more from the control target region, vectors 901 and 902 specified based on the motion coordinates of the control means and the coordinates of the user's body are used. Thus, the control position can be calculated. For example, when the motion coordinates of the control means exist at a first distance (eg, 30 cm) or more from the control target region, the motion coordinates of the control means (eg, the tip of the hand) and the coordinates of the user's dominant eye The control position can be calculated using the connecting vector 901, and the motion coordinates of the control means are greater than or equal to a second distance (eg, 8 cm) and less than or equal to a first distance (eg, 30 cm) from the target region to be controlled. If it exists in , the control position may be calculated using a vector 902 connecting the motion coordinates of the control means (for example, the tip of the hand) and the coordinates of the user's both eyes (dominant eye according to a predetermined condition).

그 다음에, 제어 수단의 모션 좌표가 제어 대상 영역으로부터 소정 거리(예를 들어, 2.5cm) 이상에 존재하는 경우에는 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902) 및 모션 벡터(903) 중 어느 하나의 벡터를 이용하여 제어 위치가 산출될 수 있다. 예를 들어, 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902)가 결정될 수 있는 경우에는 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902)를 이용하여 제어 위치가 산출되고, 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902)가 결정될 수 없거나 유효하지 않은 경우에 모션 벡터(903)를 이용하여 제어 위치가 산출될 수 있다.Next, when the motion coordinates of the control means are present at a predetermined distance (eg, 2.5 cm) or more from the control target region, vectors 901 and 902 specified based on the motion coordinates of the control means and the body coordinates of the user ) and the motion vector 903, the control position may be calculated. For example, when the vectors 901 and 902 specified based on the motion coordinates of the control means and the body coordinates of the user can be determined, the vectors 901 and 902 specified based on the motion coordinates of the control means and the body coordinates of the user 902), and if the vectors 901 and 902 specified based on the motion coordinates of the control unit and the body coordinates of the user cannot be determined or are invalid, control is performed using the motion vector 903. location can be calculated.

그 다음에, 제어 수단의 모션 좌표가 제어 대상 영역으로부터 소정 거리(예를 들어, 2.5cm) 이하에 존재하는 경우에는 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902), 모션 벡터(903) 및 수직 벡터(904) 중 어느 하나의 벡터를 이용하여 제어 위치가 산출될 수 있다. 예를 들어, 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902)가 결정될 수 있는 경우에는 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902)를 이용하여 제어 위치가 산출되고, 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902)가 결정될 수 없거나 유효하지 않은 경우에는 모션 벡터(903)를 이용하여 제어 위치가 산출될 수 있다. 또한, 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(901, 902) 및 모션 벡터(903)가 결정될 수 없거나 유효하지 않은 경우에는, 제어 대상 영역에 수직인 벡터인 수직 벡터(예를 들어, 트리거 좌표 또는 제1 좌표를 지나는 벡터)(904)를 이용하여 제어 위치가 산출될 수 있다.Next, when the motion coordinates of the control means are located within a predetermined distance (eg, 2.5 cm) or less from the control target region, vectors 901 and 902 specified based on the motion coordinates of the control means and the body coordinates of the user ), the motion vector 903 and the vertical vector 904 can be used to calculate the control position. For example, when the vectors 901 and 902 specified based on the motion coordinates of the control means and the body coordinates of the user can be determined, the vectors 901 and 902 specified based on the motion coordinates of the control means and the body coordinates of the user 902) is used to calculate the control position, and if the vectors 901 and 902 specified based on the motion coordinates of the control unit and the body coordinates of the user cannot be determined or are invalid, control is performed using the motion vector 903. location can be calculated. In addition, when the vectors 901 and 902 and the motion vector 903 specified based on the motion coordinates of the control unit and the body coordinates of the user cannot be determined or are invalid, a vertical vector (which is a vector perpendicular to the control target region) For example, the control position may be calculated using trigger coordinates or a vector passing through the first coordinates (904).

한편, 도 10 및 도 11을 참조하면, 사용자의 시선 또는 헤드 포즈에 의해 특정되는 주시 벡터를 이용하여 모션 벡터의 유효성이 검증될 수도 있다.Meanwhile, referring to FIGS. 10 and 11 , the validity of a motion vector may be verified using a gaze vector specified by a user's gaze or head pose.

예를 들어, 본 발명에 따른 모션 벡터를 이용하여 제어 대상 영역에서 특정되는 제1 제어 위치와 사용자의 시선 또는 헤드 포즈에 의해 특정되는 주시 벡터를 이용하여 제어 대상 영역에서 특정되는 제2 제어 위치 사이의 오차가 소정 수준 이하인 경우에, 해당 모션 벡터가 유효한 모션 벡터로서 결정될 수 있다.For example, between a first control position specified in the control target region using a motion vector according to the present invention and a second control position specified in the control target region using a gaze vector specified by the user's gaze or head pose. When the error of is less than a predetermined level, the corresponding motion vector may be determined as a valid motion vector.

이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 비일시성의 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 비일시성의 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 비일시성의 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 비일시성의 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Embodiments according to the present invention described above may be implemented in the form of program instructions that can be executed through various computer components and recorded in a non-temporary computer readable recording medium. The non-transitory computer readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the non-transitory computer readable recording medium may be specially designed and configured for the present invention or may be known and usable to those skilled in the art of computer software. Examples of non-transitory computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROM and DVD, and magneto-optical media such as floptical disks ( magneto-optical media), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter or the like as well as machine language codes such as those produced by a compiler. The hardware device may be configured to act as one or more software modules to perform processing according to the present invention and vice versa.

이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.In the above, the present invention has been described by specific details such as specific components and limited embodiments and drawings, but these are provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , Those skilled in the art to which the present invention pertains may seek various modifications and variations from these descriptions.

따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the above-described embodiments, and not only the claims described later, but also all modifications equivalent or equivalent to these claims belong to the scope of the spirit of the present invention. will do it

100: 객체 제어 지원 시스템
110: 좌표 관리부
120: 지시 벡터 관리부
130 통신부
140: 제어부
100: object control support system
110: coordinate management unit
120: instruction vector management unit
130 Ministry of Communications
140: control unit

Claims (14)

객체 제어를 지원하기 위한 방법으로서,
제어 수단의 모션 좌표 중 상기 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정하는 단계,
상기 트리거 좌표와 상기 모션 좌표 사이의 거리, 상기 트리거 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간, 상기 제1 좌표와 상기 모션 좌표 사이의 거리 및 상기 제1 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간 중 적어도 하나를 참조하여 제2 좌표를 결정하는 단계, 및
상기 제1 좌표 및 상기 제2 좌표에 기초하여 결정되는 모션 벡터를 제어 대상 영역에서 제어 위치를 결정하기 위한 지시 벡터로서 결정하는 단계를 포함하고,
상기 제2 좌표 결정 단계에서, 상기 제1 좌표가 특정되는 시점을 기준으로 시간적으로 인접한 다른 시점에서의 상기 제어 수단의 모션 좌표 각각을 상기 제1 좌표와 연결하여 직선 구간이 특정되는 모션 좌표 중 상기 제1 좌표로부터 가장 먼 거리에 존재하는 모션 좌표를 상기 제2 좌표로서 결정하고,
상기 직선 구간은, 상기 제1 좌표가 특정되는 시점으로부터 상기 다른 시점까지의 시간적으로 인접한 모든 모션 좌표가 상기 제1 좌표 및 상기 다른 시점에서의 제어 수단의 모션 좌표를 연결하는 직선으로부터 소정 거리 이내에 존재하는 경우에 특정되는,
방법.
As a method for supporting object control,
Determining a first coordinate by referring to a coordinate at a time when a trigger event related to the movement of the control unit occurs among motion coordinates of the control unit as a trigger coordinate;
A distance between the trigger coordinate and the motion coordinate, a straight line section specified by the trigger coordinate and the motion coordinate, a distance between the first coordinate and the motion coordinate, and a straight line specified by the first coordinate and the motion coordinate determining second coordinates with reference to at least one of the sections; and
determining a motion vector determined based on the first coordinates and the second coordinates as an instruction vector for determining a control position in a control target region;
In the second coordinate determining step, each of the motion coordinates of the control means at another time point temporally adjacent to the time point at which the first coordinate is specified is connected with the first coordinate, and among the motion coordinates at which a straight section is specified, Determine motion coordinates that are furthest from the first coordinates as the second coordinates;
In the straight line section, all temporally adjacent motion coordinates from the point in time at which the first coordinate is specified to the other point in time exist within a predetermined distance from a straight line connecting the first coordinate and the motion coordinates of the control unit at the other point in time. specified in the case of
Way.
제1항에 있어서,
상기 제1 좌표 결정 단계에서, 상기 트리거 좌표가 특정되는 시점을 기준으로 소정 시간 동안 특정되는 상기 제어 수단의 복수의 모션 좌표 및 상기 트리거 좌표로부터 소정 거리 이내에 존재하는 상기 제어 수단의 복수의 모션 좌표 중 적어도 하나를 통계 분석하여 상기 제1 좌표를 결정하는
방법.
According to claim 1,
In the first coordinate determining step, of the plurality of motion coordinates of the control means specified for a predetermined time based on the point in time at which the trigger coordinates are specified and the plurality of motion coordinates of the control means existing within a predetermined distance from the trigger coordinates. Determining the first coordinate by statistically analyzing at least one
Way.
제2항에 있어서,
상기 제1 좌표 결정 단계에서, 상기 트리거 좌표 및 상기 트리거 좌표로부터 소정 거리 이내의 모션 좌표 중 적어도 하나를 상기 통계 분석의 대상에서 제외하는
방법.
According to claim 2,
In the first coordinate determining step, at least one of the trigger coordinates and motion coordinates within a predetermined distance from the trigger coordinates is excluded from the statistical analysis.
Way.
삭제delete 삭제delete 제1항에 있어서,
상기 제2 좌표 결정 단계에서, 상기 직선 구간에 존재하는 상기 제어 수단의 복수의 모션 좌표 사이의 간격은 소정 거리 이내인
방법.
According to claim 1,
In the second coordinate determining step, an interval between a plurality of motion coordinates of the control means existing in the straight section is within a predetermined distance.
Way.
객체 제어를 지원하기 위한 방법으로서,
제어 수단의 모션 좌표 중 상기 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정하는 단계,
상기 트리거 좌표와 상기 모션 좌표 사이의 거리, 상기 트리거 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간, 상기 제1 좌표와 상기 모션 좌표 사이의 거리 및 상기 제1 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간 중 적어도 하나를 참조하여 제2 좌표를 결정하는 단계, 및
상기 제1 좌표 및 상기 제2 좌표에 기초하여 결정되는 모션 벡터를 제어 대상 영역에서 제어 위치를 결정하기 위한 지시 벡터로서 결정하는 단계를 포함하고,
상기 제2 좌표 결정 단계에서, 상기 트리거 좌표와 상기 제어 수단의 모션 좌표 사이의 거리를 참조하여 결정되는 좌표 및 상기 제1 좌표와 상기 제어 수단의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 결정되는 좌표 중 상기 제1 좌표에 가까운 좌표를 상기 제2 좌표로서 결정하는
방법.
As a method for supporting object control,
Determining a first coordinate by referring to a coordinate at a time when a trigger event related to the movement of the control unit occurs among motion coordinates of the control unit as a trigger coordinate;
A distance between the trigger coordinate and the motion coordinate, a straight line section specified by the trigger coordinate and the motion coordinate, a distance between the first coordinate and the motion coordinate, and a straight line specified by the first coordinate and the motion coordinate determining second coordinates with reference to at least one of the sections; and
determining a motion vector determined based on the first coordinates and the second coordinates as an instruction vector for determining a control position in a control target region;
In the second coordinate determining step, the coordinates determined by referring to the distance between the trigger coordinates and the motion coordinates of the control means and the straight line section specified by the first coordinates and the motion coordinates of the control means Determined with reference to Determining a coordinate close to the first coordinate among the coordinates as the second coordinate
Way.
제1항에 있어서,
상기 지시 벡터 결정 단계에서, 상기 결정되는 모션 벡터의 길이, 속도, 방향 및 상기 제1 좌표의 위치 중 적어도 하나를 참조하여 상기 모션 벡터의 유효성을 검증하는
방법.
According to claim 1,
In the indication vector determining step, verifying validity of the motion vector by referring to at least one of the determined length, speed, direction, and position of the first coordinate of the motion vector to be determined.
Way.
제1항에 있어서,
상기 지시 벡터 결정 단계에서, 상기 트리거 좌표 또는 상기 제1 좌표와 상기 제어 수단의 모션 좌표 사이의 거리가 소정 수준 이상이 되는 모션 좌표가 존재하지 않는 경우에 상기 모션 벡터가 특정될 수 없는 것으로 결정하는
방법.
According to claim 1,
In the indication vector determining step, determining that the motion vector cannot be specified when there is no motion coordinate in which the distance between the trigger coordinate or the first coordinate and the motion coordinate of the control means is equal to or greater than a predetermined level.
Way.
제1항에 있어서,
상기 지시 벡터 결정 단계에서, 상기 모션 벡터의 길이에 기초하여 결정되는 유효 영역과 상기 제어 대상 영역 사이의 공통 영역이 존재하는지 여부를 참조하여 상기 모션 벡터의 유효성을 검증하는
방법.
According to claim 1,
In the indicator vector determining step, verifying validity of the motion vector by referring to whether a common region exists between an effective region determined based on the length of the motion vector and the control target region.
Way.
제1항에 있어서,
상기 지시 벡터 결정 단계에서, 상기 모션 벡터가 특정되지 않거나 유효하지 않은 경우에, 상기 트리거 좌표 또는 상기 제1 좌표를 지나고 상기 제어 대상 영역에 수직인 벡터를 상기 제어 대상 영역에서의 제어 위치를 결정하기 위한 지시 벡터로서 결정하는
방법.
According to claim 1,
In the indication vector determining step, when the motion vector is not specified or is not valid, determining a control position in the control target region by using a vector passing through the trigger coordinate or the first coordinate and perpendicular to the control target region. to determine as an indicator vector for
Way.
제1항에 있어서,
상기 지시 벡터 결정 단계에서, 상기 제어 수단의 모션 좌표 및 상기 제어 대상 영역과의 거리가 소정 거리 이상인 경우에, 상기 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터를 상기 제어 대상 영역에서의 제어 위치를 결정하기 위한 지시 벡터로서 결정하는
방법.
According to claim 1,
In the indication vector determining step, when the distance between the motion coordinates of the control unit and the control target region is greater than or equal to a predetermined distance, a vector specified based on the motion coordinates of the control unit and the body coordinates of the user is determined as the control target region. Determined as an indication vector for determining the control position in
Way.
제1항에 따른 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 비일시성의 컴퓨터 판독 가능 기록 매체.A non-transitory computer-readable recording medium storing a computer program for executing the method according to claim 1. 객체 제어를 지원하기 위한 시스템으로서,
제어 수단의 모션 좌표 중 상기 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정하고, 상기 트리거 좌표와 상기 모션 좌표 사이의 거리, 상기 트리거 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간, 상기 제1 좌표와 상기 모션 좌표 사이의 거리 및 상기 제1 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간 중 적어도 하나를 참조하여 제2 좌표를 결정하는 좌표 관리부, 및
상기 제1 좌표 및 상기 제2 좌표에 기초하여 결정되는 모션 벡터를 제어 대상 영역에서 제어 위치를 결정하기 위한 지시 벡터로서 결정하는 지시 벡터 관리부를 포함하고,
상기 제2 좌표 결정 단계에서, 상기 제1 좌표가 특정되는 시점을 기준으로 시간적으로 인접한 다른 시점에서의 상기 제어 수단의 모션 좌표 각각을 상기 제1 좌표와 연결하여 직선 구간이 특정되는 모션 좌표 중 상기 제1 좌표로부터 가장 먼 거리에 존재하는 모션 좌표를 상기 제2 좌표로서 결정하고,
상기 직선 구간은, 상기 제1 좌표가 특정되는 시점으로부터 상기 다른 시점까지의 시간적으로 인접한 모든 모션 좌표가 상기 제1 좌표 및 상기 다른 시점에서의 제어 수단의 모션 좌표를 연결하는 직선으로부터 소정 거리 이내에 존재하는 경우에 특정되는,
시스템.
As a system for supporting object control,
A first coordinate is determined by referring to a coordinate at a point in time when a trigger event related to the movement of the control unit is generated among the motion coordinates of the control unit as a trigger coordinate, and the distance between the trigger coordinate and the motion coordinate is determined. The second coordinate is determined by referring to at least one of a straight line section specified by the trigger coordinate and the motion coordinate, a distance between the first coordinate and the motion coordinate, and a straight section specified by the first coordinate and the motion coordinate. a coordinate management unit to do, and
An instruction vector management unit configured to determine a motion vector determined based on the first coordinates and the second coordinates as an instruction vector for determining a control position in a control target region;
In the second coordinate determining step, each of the motion coordinates of the control means at another time point temporally adjacent to the time point at which the first coordinate is specified is connected with the first coordinate, and among the motion coordinates at which a straight section is specified, Determine motion coordinates that are furthest from the first coordinates as the second coordinates;
In the straight line section, all temporally adjacent motion coordinates from the point in time at which the first coordinate is specified to the other point in time exist within a predetermined distance from a straight line connecting the first coordinate and the motion coordinates of the control unit at the other point in time. specified in the case of
system.
KR1020200158512A 2020-08-14 2020-11-24 Method, system and non-transitory computer-readable recording medium for supporting object control KR102477006B1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US17/372,680 US11474690B2 (en) 2020-08-14 2021-07-12 Method, system and non-transitory computer-readable recording medium for non-contact control
JP2021122600A JP7142387B2 (en) 2020-08-14 2021-07-27 Method, system and non-transitory computer-readable recording medium for supporting object control
EP21189817.6A EP3961354A3 (en) 2020-08-14 2021-08-05 Method, system and non-transitory computer-readable recording medium for supporting object control
CN202110925190.8A CN114077350B (en) 2020-08-14 2021-08-12 Method, system and non-transitory computer readable recording medium for non-contact control

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR1020200102814 2020-08-14
KR20200102814 2020-08-14
KR20200121843 2020-09-21
KR1020200121843 2020-09-21

Publications (2)

Publication Number Publication Date
KR20220021838A KR20220021838A (en) 2022-02-22
KR102477006B1 true KR102477006B1 (en) 2022-12-14

Family

ID=80494313

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200158512A KR102477006B1 (en) 2020-08-14 2020-11-24 Method, system and non-transitory computer-readable recording medium for supporting object control
KR1020210005570A KR102448108B1 (en) 2020-08-14 2021-01-14 Method, system and non-transitory computer-readable recording medium for supporting object control

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020210005570A KR102448108B1 (en) 2020-08-14 2021-01-14 Method, system and non-transitory computer-readable recording medium for supporting object control

Country Status (1)

Country Link
KR (2) KR102477006B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004258837A (en) * 2003-02-25 2004-09-16 Nippon Hoso Kyokai <Nhk> Cursor operation device, method therefor and program therefor
JP2013030134A (en) * 2011-07-29 2013-02-07 Toshiba Corp Recognition device, method and program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101441882B1 (en) * 2012-11-12 2014-09-22 주식회사 브이터치 method for controlling electronic devices by using virtural surface adjacent to display in virtual touch apparatus without pointer
TW201510771A (en) * 2013-09-05 2015-03-16 Utechzone Co Ltd Pointing direction detecting device and its method, program and computer readable-medium
US10088971B2 (en) 2014-12-10 2018-10-02 Microsoft Technology Licensing, Llc Natural user interface camera calibration
KR101937823B1 (en) * 2016-10-24 2019-01-14 주식회사 브이터치 Method, system and non-transitory computer-readable recording medium for assisting object control
WO2018106542A1 (en) 2016-12-05 2018-06-14 Magic Leap, Inc. Virtual user input controls in a mixed reality environment
KR102455382B1 (en) * 2018-03-02 2022-10-18 엘지전자 주식회사 Mobile terminal and method for controlling the same
KR102155378B1 (en) * 2018-09-19 2020-09-14 주식회사 브이터치 Method, system and non-transitory computer-readable recording medium for supporting object control

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004258837A (en) * 2003-02-25 2004-09-16 Nippon Hoso Kyokai <Nhk> Cursor operation device, method therefor and program therefor
JP2013030134A (en) * 2011-07-29 2013-02-07 Toshiba Corp Recognition device, method and program

Also Published As

Publication number Publication date
KR20220021838A (en) 2022-02-22
KR20220021845A (en) 2022-02-22
KR102448108B1 (en) 2022-09-28

Similar Documents

Publication Publication Date Title
KR102517425B1 (en) Systems and methods of direct pointing detection for interaction with a digital device
CN107918485B (en) Gesture detection system and method
US10444908B2 (en) Virtual touchpads for wearable and portable devices
US20170293351A1 (en) Head mounted display linked to a touch sensitive input device
CN115443445A (en) Hand gesture input for wearable systems
US20110148755A1 (en) User interface apparatus and user interfacing method based on wearable computing environment
JP2010108500A (en) User interface device for wearable computing environmental base, and method therefor
US20120268359A1 (en) Control of electronic device using nerve analysis
US10296096B2 (en) Operation recognition device and operation recognition method
US10649555B2 (en) Input interface device, control method and non-transitory computer-readable medium
US20170046064A1 (en) Detecting input based on multiple gestures
JP2017102598A (en) Recognition device, recognition method, and recognition program
KR102477006B1 (en) Method, system and non-transitory computer-readable recording medium for supporting object control
JP7142387B2 (en) Method, system and non-transitory computer-readable recording medium for supporting object control
KR102325684B1 (en) Eye tracking input apparatus thar is attached to head and input method using this
JP6282072B2 (en) Information processing apparatus and program
JP7406817B2 (en) Method, system, and non-transitory computer-readable recording medium for supporting object control
JP2019021338A (en) Information processing device
KR102198867B1 (en) Method for user input and user interface device executing the method
JP2022142624A (en) Detection processing device, detection processing method, and information processing system
JP5367631B2 (en) Input device, input system, input control method, and program
CN117826977A (en) Interaction method, interaction device, electronic equipment, storage medium and computer program product
KR20190138968A (en) An electronic device for receiving an user input via heart rate sensor
JP2017157245A (en) Information processing unit and program
JP2018026179A (en) Information processing device and program

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right