KR102448108B1 - 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 PDFInfo
- Publication number
- KR102448108B1 KR102448108B1 KR1020210005570A KR20210005570A KR102448108B1 KR 102448108 B1 KR102448108 B1 KR 102448108B1 KR 1020210005570 A KR1020210005570 A KR 1020210005570A KR 20210005570 A KR20210005570 A KR 20210005570A KR 102448108 B1 KR102448108 B1 KR 102448108B1
- Authority
- KR
- South Korea
- Prior art keywords
- coordinates
- vector
- control
- control means
- motion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/04812—Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/013—Eye tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0416—Control or interface arrangements specially adapted for digitisers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction 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/0488—Interaction 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/04883—Interaction 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 가이드 벡터와 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표에 기초하여 특정되는 제2 가이드 벡터 사이의 관계에 기초하여 보정되는 상기 지시 벡터를 참조하여 상기 제어 대상 영역에서의 제어 위치를 결정하는 단계를 포함하는 방법이 제공된다.
본 발명은 2020년도 포스트 코로나 특화 인공지능 기술사업화 지원사업(CY201054) "접촉감염이 원천 차단되는 비접촉 원거리 가상터치 패널의 제어의도 인식기술 개발"을 통해 개발된 기술이다.According to an aspect of the present invention, there is provided a method for supporting object control, referring to at least one of whether a trigger event related to movement of a control unit occurs and a distance between a motion coordinate of the control unit and a control target area is referred to. and when the position of the control means is changed, a virtual reference point specified based on the extension line of the indication vector before the position is changed and the motion coordinates of the control means after the position is changed are connected The control position in the control target region is determined by referring to a vector of There is provided a method comprising determining a control position in the control target region with reference to the pointing vector corrected based on a relationship between a second guide vector specified based on the coordinates.
The present invention is a technology developed through the 2020 Post-Corona Specialized Artificial Intelligence Technology Commercialization Support Project (CY201054) "Development of control intention recognition technology of non-contact remote virtual touch panel that prevents contact infection".
Description
본 발명은 객체 제어를 지원하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체에 관한 것이다.The present invention relates to a method, system, and non-transitory computer-readable recording medium for supporting object control.
디스플레이의 터치 과정, 버튼을 누르는 과정 및 스위치를 켜고 끄는 과정에서 불가피한 접촉이 발생하게 되는데, 바이러스(예를 들어, COVID-19) 등에 감염된 감염자의 비말이 묻은 곳에 손을 접촉한 사람이 그 손으로 자신의 점막을 만지게 되면 접촉 감염이 일어나게 된다. 특히, 불특정 다수가 함께 접촉하는 공공 장소의 터치 디스플레이, 버튼, 스위치 등의 경우에 접촉하는 사람이 많은 만큼 그 위험성도 커지게 된다.In the process of touching the display, pressing the button, and turning the switch on and off, unavoidable contact occurs. Contact infection occurs when you touch your own mucous membranes. In particular, in the case of a touch display, a button, a switch, etc. in a public place where an unspecified number of people come into contact with each other, the risk increases as the number of people in contact increases.
근래에 들어, 이러한 문제를 해결하기 위하여 비접촉식으로 객체를 제어하기 위한 다양한 방식이 소개되고 있다.In recent years, in order to solve this problem, various methods for controlling an object in a non-contact manner have been introduced.
이에 관한 종래 기술의 일 예로서, 한국공개특허공보 제2016-97410호에 개시된 기술을 예로 들 수 있는데, 이에 따르면, 사용자로부터 입력 사항을 제공받기 위한 입력 인터페이스에 있어서, 표시부, 하나 이상의 감지 장치를 갖고, 상기 감지 장치를 통해 사용자의 비접촉 손 동작을 감지하는 감지부, 상기 감지부로부터 감지된 비접촉 감지 신호들을 분석하여 비접촉 동작 인식 정보를 생성하는 동작 인식부, 및 상기 생성된 비접촉 동작 인식 정보에 따라 제어된 화면을 상기 표시부에 디스플레이하는 제어부를 포함하여 구성되는 동작 인식을 통한 비접촉식 입력 인터페이스가 소개된 바 있다.As an example of the related art, the technology disclosed in Korean Patent Application Laid-Open No. 2016-97410 may be cited as an example. According to this, in an input interface for receiving input information from a user, a display unit and one or more sensing devices are provided. a sensing unit for detecting a user's non-contact hand motion through the sensing device, a motion recognition unit generating non-contact motion recognition information by analyzing the non-contact sensing signals sensed by the sensing unit, and the generated non-contact motion recognition information A non-contact input interface through gesture recognition including a control unit for displaying a screen controlled according to the display unit has been introduced.
하지만, 위와 같은 종래 기술을 비롯하여 지금까지 소개된 기술에 의하면, 제어 수단(예를 들어, 손, 손 끝)의 위치가 변동되는 경우에, 제어 수단에 기초하여 제어 대상 영역상에서의 제어 위치(예를 들어, 커서, 포인터)를 특정하는데 이용된 지시 벡터로 제어 대상 영역상에서의 변동되는 제어 위치를 특정하고 있다. 이러한 방식의 경우에 사용자와 제어 대상 영역 사이의 위치 관계에 따라 제어 대상 영역에서의 제어 위치가 사용자의 의도보다 더 많이 또는 더 적게 변동될 수밖에 없어 사용자에 의한 직관적인 제어가 어려운 문제가 있었다.However, according to the techniques introduced so far, including the prior art as described above, when the position of the control means (eg, hand, fingertip) is changed, the control position on the control target area (eg, For example, a variable control position on the control target area is specified by an instruction vector used for specifying a cursor and a pointer). In the case of this method, the control position in the control target area varies more or less than the user's intention according to the positional relationship between the user and the control target area, so that intuitive control by the user is difficult.
이에 본 발명자(들)는, 제어 수단의 위치가 변동되는 경우에 지시 벡터를 기반으로 하여 제어 대상 영역에서의 변동되는 제어 위치를 특정하기 위한 벡터를 특정하고, 이에 기초하여 제어 대상 영역에서의 변동될 제어 위치를 특정함으로써, 사용자에 의한 직관적인 제어가 이루어질 수 있도록 하는 신규하고도 진보된 기술을 제안하는 바이다.
본 발명은 2020년도 포스트 코로나 특화 인공지능 기술사업화 지원사업(CY201054) "접촉감염이 원천 차단되는 비접촉 원거리 가상터치 패널의 제어의도 인식기술 개발"을 통해 개발된 기술이다.Accordingly, the inventor(s) specifies a vector for specifying the changed control position in the control target region based on the indication vector when the position of the control means is changed, and based on this, the vector to be changed in the control target region By specifying the control position, we propose a new and advanced technology that enables intuitive control by a user.
The present invention is a technology developed through the 2020 Post-Corona Specialized Artificial Intelligence Technology Commercialization Support Project (CY201054) "Development of control intention recognition technology of non-contact remote virtual touch panel that prevents contact infection".
본 발명은, 전술한 종래 기술의 문제점을 모두 해결하는 것을 그 목적으로 한다.An object of the present invention is to solve all the problems of the prior art described above.
또한, 본 발명은, 사용자가 제어 대상 영역에서의 제어 위치를 직관적이고 정교하게 제어할 수 있도록 지원하는 것을 그 목적으로 한다.Another object of the present invention is to support a user to intuitively and precisely control a control position in a control target area.
또한, 본 발명은, 사용자의 의도에 부합되는 제어 위치를 특정하기 위한 지시 벡터가 동적으로 결정될 수 있도록 하는 것을 또 다른 목적으로 한다.In addition, it is another object of the present invention to dynamically determine an indication vector for specifying a control position conforming to a user's intention.
상기 목적을 달성하기 위한 본 발명의 대표적인 구성은 다음과 같다.A representative configuration of the present invention for achieving the above object is as follows.
본 발명의 일 태양에 따르면, 객체 제어를 지원하기 위한 방법으로서, 제어 수단의 이동에 관한 트리거 이벤트의 발생 여부 및 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리 중 적어도 하나를 참조하여 지시 벡터를 결정하는 단계, 및 상기 제어 수단의 위치가 변동되면, 상기 위치가 변동되기 전 상기 지시 벡터의 연장선에 기초하여 특정되는 가상의 기준 지점과 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표를 연결하는 벡터를 참조하여 상기 제어 대상 영역에서의 제어 위치를 결정하는 단계를 포함하는 방법이 제공된다.According to an aspect of the present invention, there is provided a method for supporting object control, referring to at least one of whether a trigger event related to movement of a control unit occurs and a distance between a motion coordinate of the control unit and a control target area is referred to. and when the position of the control means is changed, a virtual reference point specified based on the extension line of the indication vector before the position is changed and the motion coordinates of the control means after the position is changed are connected There is provided a method comprising determining a control position in the control target region by referring to a vector of
본 발명의 다른 태양에 따르면, 객체 제어를 지원하기 위한 방법으로서, 제어 수단의 이동에 관한 트리거 이벤트의 발생 여부 및 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리 중 적어도 하나를 참조하여 지시 벡터를 결정하는 단계, 및 상기 제어 수단의 위치가 변동되면, 상기 위치가 변동되기 전 상기 제어 수단의 모션 좌표를 참조하여 특정되는 제1 가이드 벡터와 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표를 참조하여 특정되는 제2 가이드 벡터 사이의 관계에 기초하여 보정된 상기 지시 벡터를 참조하여 상기 제어 대상 영역에서의 제어 위치를 결정하는 단계를 포함하는 방법이 제공된다.According to another aspect of the present invention, there is provided a method for supporting object control by referring to at least one of whether a trigger event related to movement of a control means occurs and a distance between a motion coordinate of the control means and a control target area. and, when the position of the control unit is changed, a first guide vector specified with reference to the motion coordinates of the control unit before the position is changed and the motion coordinates of the control unit after the position is changed There is provided a method comprising determining a control position in the control target region with reference to the corrected pointing vector based on a relationship between a second guide vector specified by reference.
본 발명의 또 다른 태양에 따르면, 객체 제어를 지원하기 위한 시스템으로서, 제어 수단의 이동에 관한 트리거 이벤트의 발생 여부 및 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리 중 적어도 하나를 참조하여 지시 벡터를 결정하는 지시 벡터 결정부, 및 상기 제어 수단의 위치가 변동되면, 상기 위치가 변동되기 전 상기 지시 벡터의 연장선에 기초하여 특정되는 가상의 기준 지점과 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표를 연결하는 벡터를 참조하여 상기 제어 대상 영역에서의 제어 위치를 결정하는 제어 위치 관리부를 포함하는 시스템이 제공된다.According to another aspect of the present invention, there is provided a system for supporting object control, indicating at least one of whether a trigger event related to movement of a control means occurs and a distance between a motion coordinate of the control means and a control target area. a pointer vector determining unit for determining a vector, and when the position of the control means is changed, an imaginary reference point specified on the basis of the extension line of the instruction vector before the position is changed and the control means after the position is changed There is provided a system including a control position manager that determines a control position in the control target region by referring to a vector connecting motion coordinates.
본 발명의 또 다른 태양에 따르면, 객체 제어를 지원하기 위한 시스템으로서, 제어 수단의 이동에 관한 트리거 이벤트의 발생 여부 및 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리 중 적어도 하나를 참조하여 지시 벡터를 결정하는 지시 벡터 결정부, 및 상기 제어 수단의 위치가 변동되면, 상기 위치가 변동되기 전 상기 제어 수단의 모션 좌표를 참조하여 특정되는 제1 가이드 벡터와 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표를 참조하여 특정되는 제2 가이드 벡터 사이의 관계에 기초하여 보정된 상기 지시 벡터를 참조하여 상기 제어 대상 영역에서의 제어 위치를 결정하는 제어 위치 관리부를 포함하는 시스템이 제공된다.According to another aspect of the present invention, there is provided a system for supporting object control, indicating at least one of whether a trigger event related to movement of a control means occurs and a distance between a motion coordinate of the control means and a control target area. an instruction vector determining unit for determining a vector, and when the position of the control unit is changed, a first guide vector specified with reference to the motion coordinates of the control unit before the position is changed and the control unit after the position is changed There is provided a system including a control position manager that determines a control position in the control target region with reference to the corrected reference vector based on a relationship between a second guide vector specified with reference to the motion coordinates of .
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 비일시성의 컴퓨터 판독 가능한 기록 매체가 더 제공된다.In addition to this, another method for implementing the present invention, another system, and a non-transitory computer-readable recording medium for recording a computer program for executing the method are further provided.
본 발명에 의하면, 사용자가 제어 대상 영역에서의 제어 위치를 직관적이고 정교하게 제어할 수 있게 된다.According to the present invention, the user can intuitively and precisely control the control position in the control target area.
또한, 본 발명에 의하면, 사용자의 의도에 부합되는 제어 위치를 특정하기 위한 지시 벡터가 동적으로 결정될 수 있게 된다.In addition, according to the present invention, an indication vector for specifying a control position conforming to a user's intention can be dynamically determined.
도 1은 본 발명의 일 실시예에 따른 객체 제어 지원 시스템의 내부 구성을 상세하게 도시하는 도면이다.
도 2는 본 발명의 일 실시예에 따라 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리에 따라 지시 벡터가 동적으로 결정되는 과정을 예시적으로 나타내는 도면이다.
도 3 내지 도 6은 본 발명의 일 실시예에 따라 제어 대상 영역에서 제어 위치가 변동되는 과정을 예시적으로 나타내는 도면이다.
도 7 내지 도 12는 본 발명의 일 실시예에 따라 모션 벡터가 결정되는 과정을 예시적으로 나타내는 도면이다.
도 13 및 도 14는 본 발명의 일 실시예에 따라 지시 벡터에 의해 제어 대상 영역에서 제어 위치가 특정되는 과정을 예시적으로 나타내는 도면이다.
도 15는 본 발명의 일 실시예에 따른 지시 벡터에 따라 제어 대상 영역에서 변동되는 제어 위치를 예시적으로 나타내는 도면이다.
도 16은 본 발명의 일 실시예에 따른 수직 벡터가 결정되는 과정을 예시적으로 나타내는 도면이다.
도 17 내지 도 20은 본 발명의 일 실시예에 따른 가상의 기준 지점이 특정되는 과정을 예시적으로 나타내는 도면이다.1 is a diagram illustrating in detail an internal configuration of an object control support system according to an embodiment of the present invention.
2 is a diagram exemplarily illustrating a process in which an indication vector is dynamically determined according to a distance between a motion coordinate of a control means and a control target area according to an embodiment of the present invention.
3 to 6 are diagrams exemplarily illustrating a process of changing a control position in a control target area according to an embodiment of the present invention.
7 to 12 are diagrams exemplarily illustrating a process in which a motion vector is determined according to an embodiment of the present invention.
13 and 14 are diagrams exemplarily illustrating a process of specifying a control position in a control target region by an indication vector according to an embodiment of the present invention.
15 is a diagram exemplarily illustrating a control position that is changed in a control target area according to an indication vector according to an embodiment of the present invention.
16 is a diagram exemplarily illustrating a process in which a vertical vector is determined according to an embodiment of the present invention.
17 to 20 are diagrams exemplarily illustrating a process of specifying a virtual reference point according to an embodiment of the present invention.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이러한 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 본 명세서에 기재되어 있는 특정 형상, 구조 및 특성은 본 발명의 정신과 범위를 벗어나지 않으면서 일 실시예로부터 다른 실시예로 변경되어 구현될 수 있다. 또한, 각각의 실시예 내의 개별 구성요소의 위치 또는 배치도 본 발명의 정신과 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 행하여지는 것이 아니며, 본 발명의 범위는 특허청구범위의 청구항들이 청구하는 범위 및 그와 균등한 모든 범위를 포괄하는 것으로 받아들여져야 한다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 구성요소를 나타낸다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0012] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0014] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0016] Reference is made to the accompanying drawings, which show by way of illustration specific embodiments in which the present invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the present invention. It should be understood that the various embodiments of the present invention are different but need not be mutually exclusive. For example, certain shapes, structures, and characteristics described herein may be implemented with changes from one embodiment to another without departing from the spirit and scope of the present invention. In addition, it should 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. Accordingly, the following detailed description is not to be taken in a limiting sense, and the scope of the present invention should be taken as encompassing the scope of the claims and all equivalents thereto. In the drawings, like reference numerals refer to 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 of ordinary skill in the art to easily practice the present invention.
객체 제어 지원 시스템의 구성Configuration of object control support system
이하에서는, 본 발명의 구현을 위하여 중요한 기능을 수행하는 객체 제어 지원 시스템(100)의 내부 구성 및 각 구성요소의 기능에 대하여 살펴보기로 한다.Hereinafter, the internal configuration of the object
도 1은 본 발명의 일 실시예에 따른 객체 제어 지원 시스템(100)의 내부 구성을 상세하게 도시하는 도면이다.1 is a diagram illustrating in detail an internal configuration of an object
도 1을 참조하면, 본 발명의 일 실시예에 따른 객체 제어 지원 시스템(100)은 지시 벡터 결정부(110), 제어 위치 관리부(120), 통신부(130) 및 제어부(140)를 포함할 수 있다. 또한, 본 발명의 일 실시예에 따르면, 지시 벡터 결정부(110), 제어 위치 관리부(120), 통신부(130) 및 제어부(140)는 그 중 적어도 일부가 외부 시스템(미도시됨)과 통신하는 프로그램 모듈들일 수 있다. 이러한 프로그램 모듈들은 운영 시스템, 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 객체 제어 지원 시스템(100)에 포함될 수 있으며, 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈들은 객체 제어 지원 시스템(100)과 통신 가능한 원격 기억 장치에 저장될 수도 있다. 한편, 이러한 프로그램 모듈들은 본 발명에 따라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴, 서브루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포괄하지만, 이에 제한되지는 않는다.Referring to FIG. 1 , the object
한편, 객체 제어 지원 시스템(100)에 관하여 위와 같이 설명되었으나, 이러한 설명은 예시적인 것이고, 객체 제어 지원 시스템(100)의 구성요소 또는 기능 중 적어도 일부가 필요에 따라 후술할 디바이스 내에서 실현되거나 이러한 디바이스 내에 포함될 수도 있음은 당업자에게 자명하다. 또한, 경우에 따라서는, 객체 제어 지원 시스템(100)의 모든 기능과 모든 구성요소가 디바이스 내에서 전부 실행되거나 디바이스(200) 내에 전부 포함될 수도 있다.On the other hand, although described above with respect to the object
본 발명의 일 실시예에 따른 디바이스는 메모리 수단을 구비하고, 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 디지털 기기로서, 스마트 글래스, 스마트 워치, 스마트 밴드, 스마트 링, 스마트 넥클리스, 스마트 이어셋, 스마트 이어폰, 스마트 이어링 등과 같은 웨어러블 디바이스이거나 스마트폰, 스마트 패드, 데스크탑 컴퓨터, 서버, 노트북 컴퓨터, 워크스테이션, 피디에이(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 to have computing power, and includes smart glasses, smart watches, smart bands, smart rings, smart necklaces, smart earphones, smart earphones, It may be a wearable device such as a smart earring, or it may include a more or less traditional device such as a smartphone, smart pad, desktop computer, server, notebook computer, workstation, personal digital assistant (PDA), web pad, mobile phone, remote controller, etc. Not only one example, but may be changed as much as possible within the scope that can achieve the object of the present invention. In addition, the device according to an embodiment of the present invention includes a camera module (not shown) for photographing a control means (eg, a pointer, a user's eye or fingertip, etc.) or a camera module through a known communication network. (or another device including a camera module) may be able to communicate.
한편, 본 발명의 일 실시예에 따른 위의 디바이스에는 본 발명에 따른 객체 제어를 지원하기 위한 애플리케이션이 포함되어 있을 수 있다. 이와 같은 애플리케이션은 외부의 애플리케이션 배포 서버(미도시됨)로부터 다운로드된 것일 수 있다. 한편, 이러한 프로그램 모듈의 성격은 후술할 바와 같은 객체 제어 지원 시스템(100)의 지시 벡터 결정부(110), 제어 위치 관리부(120), 통신부(130) 및 제어부(140)와 전반적으로 유사할 수 있다. 여기서, 애플리케이션은 그 적어도 일부가 필요에 따라 그것과 실질적으로 동일하거나 균등한 기능을 수행할 수 있는 하드웨어 장치나 펌웨어 장치로 치환될 수도 있다.Meanwhile, the above device according to an embodiment of the present invention may include an application for supporting object control according to the present invention. Such an application may be downloaded from an external application distribution server (not shown). On the other hand, the characteristics of such a program module may be generally similar to the instruction vector determiner 110 , the
먼저, 본 발명의 일 실시예에 따른 지시 벡터 결정부(110)는 제어 수단의 이동에 관한 트리거 이벤트의 발생 여부 및 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리 중 적어도 하나를 참조하여 지시 벡터를 결정하는 기능을 수행할 수 있다. 본 발명의 일 실시예에 따른 제어 수단의 이동에 관한 트리거 이벤트에는 제어 수단의 이동 방향 전환, 제어 수단의 이동 정지 등이 포함될 수 있다. 보다 구체적으로, 이러한 트리거 이벤트에는 제어 수단이 전진 후 후진을 하거나, 전진 후 정지를 하는 것이 포함될 수 있다. 이러한 전진 및 후진 등의 방향은 제어 대상 영역, 사용자의 특정 신체 부위(예를 들어, 눈) 또는 후술할 가상의 기준 지점을 기준으로 특정되는 것일 수 있다. 여기서, 본 발명의 일 실시예에 따른 제어 대상 영역은 사용자에 의해 제어 가능한 적어도 하나의 객체가 디스플레이되는 영역을 의미할 수 있다.First, the indication vector determiner 110 according to an embodiment of the present invention refers to at least one of whether a trigger event related to the movement of the control means occurs and the distance between the motion coordinates of the control means and the control target area. can perform the function of determining The trigger event related to the movement of the control means according to an embodiment of the present invention may include a change of the movement direction of the control means, a stop of movement of the control means, and the like. More specifically, such a trigger event may include a control means moving backward after moving forward or stopping after moving forward. Such forward and backward directions may be specified based on a control target region, a specific body part of the user (eg, an eye), or a virtual reference point to be described later. Here, the control target area according to an embodiment of the present invention may mean an area in which at least one object controllable by a user is displayed.
예를 들어, 지시 벡터 결정부(110)는 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 경우에, 제어 수단의 모션 좌표 중 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정할 수 있고, 트리거 좌표와 모션 좌표 사이의 거리, 트리거 좌표와 모션 좌표에 의해 특정되는 직선 구간, 제1 좌표와 모션 좌표 사이의 거리 및 제1 좌표와 모션 좌표에 의해 특정되는 직선 구간 중 적어도 하나를 참조하여 제2 좌표를 결정할 수 있으며, 제1 좌표 및 제2 좌표에 기초하여 결정되는 벡터(이하, "모션 벡터"라 한다.)를 지시 벡터로서 결정할 수 있다. 보다 구체적으로, 지시 벡터 결정부(110)는 위의 제2 좌표를 시점으로 하고 위의 제1 좌표를 종점으로 하는 모션 벡터를 결정할 수 있다. 이러한 모션 벡터의 결정 방식과 관련된 자세한 내용은 후술하기로 한다.For example, when a trigger event related to the movement of the control means is generated, the
다른 예를 들어, 지시 벡터 결정부(110)는 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리가 소정 수준 이하(예를 들어, 2.5cm 이하)이거나, 제어 수단의 이동에 관한 트리거 이벤트가 발생되고 위의 모션 벡터가 유효하지 않은 경우에, 위의 트리거 좌표 또는 제1 좌표를 지나고, 제어 대상 영역에 수직인 벡터(이하, "수직 벡터"라 한다.)를 지시 벡터로서 결정할 수 있다.For another example, the
보다 구체적으로, 지시 벡터 결정부(110)는 제어 수단이 전진 후 정지하는 트리거 이벤트가 발생되고 제1 좌표(또는 제어 수단의 모션 좌표)가 제어 대상 영역과의 거리가 소정 거리 이내(보다 구체적으로, 1cm 내지 2.5cm)이며 모션 벡터가 유효하지 않은 경우에, 제1 좌표를 지나고 제어 대상 영역에 수직인 벡터를 지시 벡터(예를 들어, 제1 좌표를 시점으로 하고, 제1 좌표와 최단 거리에 존재하는 제어 대상 영역의 소정 지점을 종점으로 하는 벡터)로서 결정할 수 있다. 또한, 지시 벡터 결정부(110)는 제어 수단이 전진 후 후진하는 트리거 이벤트가 발생되고 제1 좌표(또는 제어 수단의 모션 좌표)가 제어 대상 영역과의 거리가 소정 거리 이내(보다 구체적으로, 1cm 내지 2.5cm)이며 위의 모션 벡터가 유효하지 않은 경우에, 트리거 좌표를 지나고 제어 대상 영역에 수직인 벡터(예를 들어, 트리거 좌표를 시점으로 하고, 제1 좌표와 최단 거리에 존재하는 제어 대상 영역의 소정 지점을 종점으로 하는 벡터)를 지시 벡터로서 결정할 수 있다. 또한, 지시 벡터 결정부(110)는 제1 좌표(또는 제어 수단의 모션 좌표)가 제어 대상 영역과의 거리가 소정 거리 이내(보다 구체적으로, 0cm 내지 1cm)이며 위의 모션 벡터가 유효하지 않은 경우에 제1 좌표를 지나고 제어 대상 영역에 수직인 벡터를 지시 벡터(예를 들어, 제1 좌표를 시점으로 하고, 제1 좌표와 최단 거리에 존재하는 제어 대상 영역의 소정 지점을 종점으로 하는 벡터)로서 결정할 수 있다.More specifically, the
또 다른 예를 들어, 지시 벡터 결정부(110)는 제어 수단의 모션 좌표 및 제어 대상 영역과의 거리가 소정 수준 이상(예를 들어, 8cm 이상)인 경우에, 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터(이하, "지칭 벡터"라 한다.)를 지시 벡터(예를 들어, 사용자의 신체 좌표를 시점으로 하고, 제어 수단의 모션 좌표를 종점으로 하는 벡터)로 결정할 수 있다. 본 발명의 일 실시예에 따른 사용자 신체 좌표는, 사용자의 눈(예를 들어, 우세안, 양안 등), 머리, 손, 손 끝 등의 다양한 신체 부위에 관한 신체 좌표가 포함될 수 있다. 한편, 본 발명에 따른 제어 수단이 사용자의 신체 부위인 경우에는, 해당 신체 부위와 그와 동일하지 않은 사용자의 다른 신체 부위에 기초하여 지시 벡터가 결정될 수 있다.As another example, when the distance between the motion coordinates of the control means and the control target area is at least a predetermined level (eg, 8 cm or more), the
보다 구체적으로, 지시 벡터 결정부(110)는 제어 수단이 사용자의 손 끝인 경우에 해당 사용자의 손 끝의 모션 좌표 및 제어 대상 영역 사이의 거리가 8cm 이상인 경우에, 해당 사용자의 눈(구체적으로, 우세안)의 좌표를 시점으로 하고, 손 끝의 모션 좌표를 종점으로 하는 벡터를 지시 벡터로서 결정할 수 있다.More specifically, when the control means is the user's fingertip and the distance between the motion coordinate of the user's fingertip and the control target area is 8 cm or more, the
도 2는 본 발명의 일 실시예에 따라 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리에 따라 지시 벡터가 동적으로 결정되는 과정을 예시적으로 나타내는 도면이다.2 is a diagram exemplarily illustrating a process in which an indication vector is dynamically determined according to a distance between a motion coordinate of a control means and a control target area according to an embodiment of the present invention.
도 2를 참조하면, 먼저, 본 발명의 일 실시예에 따른 제어 수단의 모션 좌표가 사용자의 손 끝의 좌표(즉, 제1 신체 좌표)이고, 그 제어 수단의 모션 좌표가 제어 대상 영역으로부터 제2 거리(예를 들어, 8cm) 이상에 존재하는 경우에 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202)가 지시 벡터로서 결정될 수 있다. 예를 들어, 제어 수단의 모션 좌표가 제어 대상 영역으로부터 제1 거리(예를 들어, 30cm) 이상에 존재하는 경우에는 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 우세안의 좌표(즉, 제2 신체 좌표)를 연결하는 벡터(201)가 지시 벡터로서 결정될 수 있고, 제어 수단의 모션 좌표가 제어 대상 영역으로부터 제2 거리(예를 들어, 8cm) 이상 및 제1 거리 미만(예를 들어, 30cm)에 존재하는 경우에는 (i) 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 우세안의 좌표(즉, 제2 신체 좌표)를 연결하는 벡터(201) 또는 (ii) 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 양안의 중심 좌표(즉, 제2 신체 좌표)를 연결하는 벡터(202)가 지시 벡터로서 결정될 수 있다.Referring to FIG. 2 , first, the motion coordinates of the control means according to an embodiment of the present invention are the coordinates of the user's fingertip (ie, the first body coordinates), and the motion coordinates of the control means are the second coordinates from the control target area. A vector that is specified based on the coordinates of the user's fingertips (i.e., first body coordinates) and the user's eye coordinates (i.e., second body coordinates) when present at a distance of 2 or more (e.g., 8 cm) 201 and 202) may be determined as an indication vector. For example, when the motion coordinates of the control means exist at a first distance (eg, 30 cm) or more from the control target area, the coordinates of the user's fingertip (ie, the first body coordinates) and the coordinates of the user's dominant
그 다음에, 본 발명의 일 실시예에 따라 제어 수단의 모션 좌표가 제어 대상 영역으로부터 제3 거리(예를 들어, 2.5cm) 이상이고 제2 거리(예를 들어, 8cm) 미만에 존재하는 경우에는 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202)와 모션 벡터(203) 중 어느 하나의 벡터가 지시 벡터로서 결정될 수 있다. 예를 들어, 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202)가 결정될 수 있는 경우에는 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202)가 지시 벡터로서 결정되고, 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202)가 결정될 수 없거나 유효하지 않은 경우에 모션 벡터(203)가 지시 벡터로서 결정될 수 있다.Then, according to an embodiment of the present invention, when the motion coordinates of the control means are greater than or equal to a third distance (eg, 2.5 cm) and less than a second distance (eg, 8 cm) from the area to be controlled is any one of the
그 다음에, 본 발명의 일 실시예에 따라 제어 수단의 모션 좌표가 제어 대상 영역으로부터 제3 거리(예를 들어, 2.5cm) 미만에 존재하는 경우에는 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202), 모션 벡터(203) 및 수직 벡터(204) 중 어느 하나의 벡터가 지시 벡터로서 결정될 수 있다. 예를 들어, 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202)가 결정될 수 있는 경우에는 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202)가 지시 벡터로서 결정되고, 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202)가 결정될 수 없거나 유효하지 않은 경우에는 모션 벡터(203)가 지시 벡터로서 결정될 수 있다. 또한, 사용자의 손 끝의 좌표(즉, 제1 신체 좌표) 및 사용자의 눈의 좌표(즉, 제2 신체 좌표)에 기초하여 특정되는 벡터(201, 202)와 모션 벡터(203)가 결정될 수 없거나 유효하지 않은 경우에는, 제어 대상 영역에 수직인 벡터인 수직 벡터(예를 들어, 트리거 좌표 또는 제1 좌표를 지나는 벡터)(204)가 지시 벡터로서 결정될 수 있다.Then, according to an embodiment of the present invention, when the motion coordinates of the control means are less than a third distance (eg, 2.5 cm) from the control target area, the coordinates of the user's fingertip (ie, the first Any one of the
다음으로, 본 발명의 일 실시예에 따른 제어 위치 관리부(120)는 제어 수단의 위치가 변동되면, 그 위치가 변동되기 전 지시 벡터의 연장선에 기초하여 특정되는 가상의 기준 지점과 위의 위치가 변동된 후 제어 수단의 모션 좌표를 연결하는 벡터(이하, "연결 벡터"라 한다.)를 참조하여 제어 대상 영역에서의 제어 위치를 결정하는 기능을 수행할 수 있다.Next, when the position of the control means is changed, the control
예를 들어, 제어 위치 관리부(120)는 제어 수단의 위치가 변동되면, 그 위치가 변동되기 전 지시 벡터가 향하는 방향의 반대 방향의 연장선상에 존재하는 소정의 지점을 가상의 기준 지점으로 특정하고 그 가상의 기준 지점과 위의 위치가 변동된 후 제어 수단의 모션 좌표를 연결하는 벡터를 결정할 수 있으며, 위의 연결 벡터의 연장선과 제어 대상 영역이 교차하는 지점(또는 영역)을 제어 위치로 결정할 수 있다.For example, when the position of the control means is changed, the control
보다 구체적으로, 도 3을 참조하면, 지시 벡터가 모션 벡터이고 제어 수단의 위치가 변동되는 경우에, 제어 위치 관리부(120)는 그 위치가 변동되기 전(301) 모션 벡터(310)가 향하는 방향의 반대 방향의 연장선상에 존재하는 소정의 지점 중 모션 벡터(예를 들어, 모션 벡터의 시점 또는 종점)로부터 40 내지 50cm 떨어진 지점을 가상의 기준 지점(302)으로 특정하고 그 가상의 기준 지점(302)과 위의 위치가 변동된 후 제어 수단의 모션 좌표(303)를 연결하는 벡터(320)(즉, 연결 벡터)를 결정할 수 있으며, 그 벡터(320) 또는 그 벡터(320)의 연장선과 제어 대상 영역이 교차하는 지점을 제어 위치(330)로 결정할 수 있다.More specifically, referring to FIG. 3 , when the indication vector is a motion vector and the position of the control means is changed, the control
또한, 도 4를 참조하면, 지시 벡터가 수직 벡터이고 제어 수단의 위치가 변동되는 경우에, 제어 위치 관리부(120)는 그 위치가 변동되기 전(401) 수직 벡터(410)가 향하는 방향의 반대 방향의 연장선상에 존재하는 소정의 지점 중 수직 벡터(예를 들어, 수직 벡터의 시점 또는 종점)로부터 40 내지 50cm 떨어진 지점을 가상의 기준 지점(402)으로 특정하고 그 가상의 기준 지점(402)과 위의 위치가 변동된 후 제어 수단의 모션 좌표(403)를 연결하는 벡터(420)(즉, 연결 벡터)를 결정할 수 있으며, 그 벡터(420) 또는 그 벡터(420)의 연장선과 제어 대상 영역이 교차하는 지점을 제어 위치(430)로 결정할 수 있다.In addition, referring to FIG. 4 , when the indication vector is a vertical vector and the position of the control means is changed, the control
또한, 제어 위치 관리부(120)는 제어 수단의 위치가 변동되면, 그 위치 가 변동되기 전 제어 수단의 모션 좌표를 참조하여 특정되는 제1 가이드 벡터와 위의 위치가 변동된 후 제어 수단의 모션 좌표를 참조하여 특정되는 제2 가이드 벡터 사이의 관계(예를 들어, 위치 관계)에 기초하여 보정된 지시 벡터를 참조하여 제어 대상 영역에서의 제어 위치를 결정하는 기능을 수행할 수 있다.In addition, when the position of the control means is changed, the control
예를 들어, 제어 위치 관리부(120)는 제어 수단의 위치가 변동되면, 그 위치가 변동되기 전 제어 수단의 모션 좌표를 참조하여 특정되는 제1 가이드 벡터 및 위의 위치가 변동된 후 제어 수단의 모션 좌표를 참조하여 특정되는 제2 가이드 벡터 사이의 위치 또는 방향의 변화 정도에 기초하여 지시 벡터를 평행 이동(예를 들어, 제1 가이드 벡터 및 제2 가이드 벡터 사이의 위치(보다 구체적으로, 각 가이드 벡터의 종점 또는 각 시점 사이의 위치)가 변화된 만큼 평행 이동) 또는 지시 벡터가 향하는 방향(예를 들어, 제1 가이드 벡터 및 제2 가이드 벡터 사이의 방향 또는 각도가 변화된 만큼 방향)을 보정할 수 있으며, 그 보정된 지시 벡터 또는 그 보정된 지시 벡터의 연장선과 제어 대상 영역이 교차하는 지점(또는 영역)을 제어 위치로 결정할 수 있다. 이러한 가이드 벡터는 제어 수단(또는 사용자의 제어 의도)과 연관되는 방향을 특정하기 위하여 설정되는 벡터로서, 예를 들어, 제어 수단의 모션 좌표 및 그 모션 좌표와 연관되는 제어 수단의 다른 좌표를 연결하여 특정되는 벡터일 수 있다. 보다 구체적으로, 제어 수단의 모션 좌표가 손의 검지 끝의 좌표인 경우에, 검지 끝을 종점으로 하고 검지의 마디(또는 조인트)의 좌표를 시점으로 하는 벡터(예를 들어, 핑거 벡터)가 가이드 벡터로 특정되거나, 제어 수단의 모션 좌표가 손바닥 중심의 좌표인 경우에, 검지 끝을 종점으로 하고 손바닥 중심의 좌표를 시점으로 하는 벡터가 가이드 벡터로 특정될 수 있다. 한편, 본 발명에 따른 위의 다른 좌표가 반드시 제어 수단의 다른 좌표로만 한정되지 않고, 제어 수단 외 그 제어 수단과 인접한 다른 것의 좌표로 변경될 수도 있음을 밝혀 둔다.For example, when the position of the control means is changed, the control
보다 구체적으로, 도 5를 참조하면, 지시 벡터가 모션 벡터(510)이고 제어 수단의 위치가 변동되는 경우에, 제어 위치 관리부(120)는 그 위치가 변동되기 전 제어 수단의 모션 좌표(501)(예를 들어, 손의 검지 끝의 좌표)를 참조하여 특정되는 제1 핑거 벡터(511)(예를 들어, 검지 끝의 좌표를 종점으로 하고 검지의 마디의 좌표를 시점으로 하는 벡터)(즉, 가이드 벡터) 및 위의 위치가 변동된 후 제어 수단의 모션 좌표(503)를 참조하여 특정되는 제2 핑거 벡터(521) 사이의 위치의 변화 정도(551) 및 방향의 변화 정도(552)를 참조하여, 모션 벡터(510)를 평행 이동(예를 들어, 그 위치 변화만큼 평행 이동)하고 그 모션 벡터(510)가 향하는 방향(예를 들어, 그 방향 변화만큼 회전 변환)을 보정함으로써 보정된 모션 벡터를 결정할 수 있다. 그 다음에, 그 보정된 모션 벡터 또는 그 보정된 모션 벡터의 연장선과 제어 대상 영역이 교차하는 지점을 제어 위치(530)로 결정할 수 있다.More specifically, referring to FIG. 5 , when the indication vector is a
또한, 도 6을 참조하면, 지시 벡터가 수직 벡터(610)이고 제어 수단의 위치가 변동되는 경우에, 제어 위치 관리부(120)는 그 위치가 변동되기 전 제어 수단의 모션 좌표(601)(예를 들어, 손의 검지 끝의 좌표)를 참조하여 특정되는 제1 핑거 벡터(611)(예를 들어, 검지 끝의 좌표를 종점으로 하고 검지의 마디의 좌표를 시점으로 하는 벡터)(즉, 가이드 벡터) 및 위의 위치가 변동된 후 제어 수단의 모션 좌표(603)를 참조하여 특정되는 제2 핑거 벡터(621) 사이의 위치의 변화 정도 및 방향의 변화 정도를 참조하여, 수직 벡터(610)를 평행 이동(예를 들어, 그 위치 변화만큼 평행 이동)하고 그 수직 벡터(610)가 향하는 방향(예를 들어, 그 방향 변화만큼 회전 변환)을 보정함으로써 보정된 수직 벡터를 결정할 수 있다. 그 다음에, 그 보정된 수직 벡터(620) 또는 그 보정된 수직 벡터(620)의 연장선과 제어 대상 영역이 교차하는 지점을 제어 위치(630)로 결정할 수 있다.In addition, referring to FIG. 6 , when the indication vector is a vertical vector 610 and the position of the control means is changed, the control
한편, 본 발명의 일 실시예에 따라 제어 수단의 방향이 더 변동되는 경우를 고려해 볼 수 있다. 여기서, 제어 수단의 방향은 사용자의 제어 의도와 연관되는 방향을 의미하며, 제어 수단의 모션 좌표 및 그 모션 좌표와 연관되는 제어 수단의 다른 좌표에 기초하여 특정되거나 제어 수단의 형상에 기초하여 특정되는 것일 수 있다. 예를 들어, 제어 수단의 모션 좌표가 손의 검지 끝의 좌표인 경우에, 검지가 가리키는 방향이 제어 수단의 방향일 수 있다. 이러한 제어 수단의 방향은 앞서 살펴본 가이드 벡터의 방향과 동일할 수도 있지만, 필요에 따라 다르게 설정될 수도 있다.Meanwhile, a case in which the direction of the control means is further changed according to an embodiment of the present invention may be considered. Here, the direction of the control means means a direction associated with the user's control intention, and is specified based on the motion coordinates of the control means and other coordinates of the control means associated with the motion coordinates or is specified based on the shape of the control means. it could be For example, when the motion coordinates of the control means are coordinates of the tip of the index finger of the hand, the direction indicated by the index finger may be the direction of the control means. The direction of the control means may be the same as the direction of the guide vector described above, but may be set differently as needed.
예를 들어, 본 발명의 일 실시예에 따라 제어 위치 관리부(120)는 제어 수단의 위치 및 방향이 변동되면, 그 위치 및 방향이 변동되기 전 제어 수단의 모션 좌표 및 제어 수단의 방향을 참조하여 특정(예를 들어, 위의 위치 및 방향이 변동되기 전 제어 수단의 모션 좌표를 시점으로 제어 수단의 방향과 동일하거나 평행한 방향으로 연장되어 제어 대상 영역과 만나는 점을 종점으로 하여 특정되거나, 위의 위치 및 방향이 변동되기 전 제어 수단의 모션 좌표를 시점으로 제어 수단의 방향과 동일하거나 평행한 방향으로 소정 길이만큼 연장되어 특정)되는 제1 가이드 벡터와 위의 위치 및 방향이 변동된 후 제어 수단의 모션 좌표 및 제어 수단의 방향을 참조하여 특정(예를 들어, 위의 위치 및 방향이 변동된 후 제어 수단의 모션 좌표를 시점으로 제어 수단의 방향과 동일하거나 평행한 방향으로 연장되어 제어 대상 영역과 만나는 점을 종점으로 하여 특정되거나, 위의 위치 및 방향이 변동되기 전 제어 수단의 모션 좌표를 시점으로 제어 수단의 방향과 동일하거나 평행한 방향으로 소정 길이만큼 연장되어 특정)되는 제2 가이드 벡터 사이의 관계(예를 들어, 위치 또는 방향 사이의 관계)에 기초하여 보정된 지시 벡터를 참조하여 제어 대상 영역에서의 제어 위치를 결정하는 기능을 수행할 수 있다.For example, according to an embodiment of the present invention, when the position and direction of the control unit is changed, the control
또한, 제어 위치 관리부(120)는 사용자의 객체 제어 패턴(또는 사용자의 선호 제어 패턴)을 참조하여 위의 연결 벡터 및 위의 보정된 지시 벡터 중 해당 사용자의 객체 제어에 이용될 벡터를 결정할 수 있고, 그 벡터의 연장선과 제어 대상 영역이 교차하는 지점을 제어 위치로 결정할 수 있다.In addition, the control
예를 들어, 제어 위치 관리부(120)는 위의 연결 벡터 및 위의 보정된 지시 벡터 중 사용자에 의해 소정 수준 이상으로 빈번 사용되는 벡터, 사용자의 피드백을 참조하여 특정되는 벡터(예를 들어, 정확도 또는 만족도가 높은 것으로 특정되는 벡터) 또는 사용자의 사용 패턴을 분석 또는 학습하여 특정되는 벡터를 해당 사용자의 객체 제어에 이용될 벡터로 결정할 수 있다.For example, the control
다음으로, 본 발명의 일 실시예에 따르면, 통신부(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 to/from the
마지막으로, 본 발명의 일 실시예에 따르면, 제어부(140)는 지시 벡터 결정부(110), 제어 위치 관리부(120) 및 통신부(130) 간의 데이터의 흐름을 제어하는 기능을 수행할 수 있다. 즉, 본 발명에 따른 제어부(140)는 객체 제어 지원 시스템(100)의 외부로부터의/로의 데이터 흐름 또는 객체 제어 지원 시스템(100)의 각 구성요소 간의 데이터 흐름을 제어함으로써, 지시 벡터 결정부(110), 제어 위치 관리부(120) 및 통신부(130)에서 각각 고유 기능을 수행하도록 제어할 수 있다.Finally, according to an embodiment of the present invention, the
모션 벡터의 결정 과정Determination of motion vectors
이하에서는, 앞서 살펴본 모션 벡터를 결정하는 과정에 대하여 자세히 살펴보기로 한다.Hereinafter, the process of determining the motion vector discussed above will be described in detail.
본 발명의 일 실시예에 따른 지시 벡터 결정부(110)는 제어 수단의 모션 좌표 중 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정하는 기능을 수행할 수 있다.The
예를 들어, 지시 벡터 결정부(110)는 제어 수단의 모션 좌표 중 제어 수단이 제어 대상 영역을 향하여 전진 후 정지하는 트리거 이벤트가 발생되는 시점에서의 좌표 즉, 트리거 좌표를 제1 좌표로 결정할 수 있다.For example, the
다른 예를 들어, 지시 벡터 결정부(110)는 제어 수단이 제어 대상 영역을 향하여 전진 후 후진하는 트리거 이벤트가 발생된 경우에, 그 트리거 이벤트가 발생되는 시점에서의 제어 수단의 모션 좌표 즉, 트리거 좌표를 기준으로 소정의 이전(previous) 시점(예를 들어, 바로 직전 시점)에서의 제어 수단의 모션 좌표를 제1 좌표로 결정할 수 있다. 여기서의, 소정의 이전 시점은 제어 수단을 촬영하는 촬영 모듈(예를 들어, 카메라)의 촬영 간격 또는 프레임 속도에 기초하여 특정되는 것일 수 있다.For another example, when a trigger event in which the control means moves forward and backward toward the control target area occurs, the
또한, 트리거 이벤트가 발생되는 시점에서는 제어 수단의 흔들림이 발생될 수 있는데, 이를 보정하기 위하여 지시 벡터 결정부(110)는 트리거 좌표를 기준으로 특정되는 제어 수단의 적어도 하나의 모션 좌표를 참조하여 제1 좌표를 결정할 수 있다.In addition, shaking of the control means may be generated at the time when the trigger event is generated. In order to correct this, the
예를 들어, 지시 벡터 결정부(110)는 트리거 좌표가 특정되는 시점을 기준으로 소정 시간 동안 특정되는 제어 수단의 복수의 모션 좌표를 통계 분석하여 제1 좌표를 결정할 수 있다. 본 발명의 일 실시예에 따른 통계 분석에는 복수의 모션 좌표에 대한 평균, 가중 평균, 분산, 표준 편차 등에 기초한 분석이 포함될 수 있다. 보다 구체적으로, 지시 벡터 결정부(110)는 트리거 좌표가 특정되는 시점을 기준으로 0.01초 내지 0.1초 동안에 특정되는 복수의 모션 좌표의 평균 좌표를 제1 좌표로 결정할 수 있다.For example, the
다른 예를 들어, 지시 벡터 결정부(110)는 트리거 좌표로부터 소정 거리 이내에 존재하는 제어 수단의 복수의 모션 좌표를 통계 분석하여 제1 좌표를 결정할 수 있다. 보다 구체적으로, 지시 벡터 결정부(110)는 트리거 좌표로부터 5 내지 10mm 이내에서 특정되는 제어 수단의 복수의 모션 좌표의 평균 좌표를 제1 좌표로 결정할 수 있다.As another example, the
한편, 지시 벡터 결정부(110)는 위의 트리거 좌표 및 그 트리거 좌표로부터 소정 거리 이내의 모션 좌표 중 적어도 하나를 통계 분석의 대상에서 제외되도록 할 수 있다.Meanwhile, the
예를 들어, 지시 벡터 결정부(110)는 제어 수단이 전진 후 정지하거나 제어 수단이 전진 후 후진하는 트리거 이벤트가 발생하게 되면 그 트리거 이벤트가 발생되는 시점을 기준으로 특정되는 트리거 좌표 및 그 트리거 좌표로부터 5mm 이내의 모션 좌표는 흔들림이 클 수 있기 때문에, 트리거 좌표 및 그 트리거 좌표로부터 5mm 이내의 모션 좌표는 통계 분석의 대상에서 제외되도록 할 수 있다.For example, when the control means stops after moving forward, or when a trigger event in which the control means moves backward after moving forward occurs, the
또한, 지시 벡터 결정부(110)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표 사이의 거리를 참조하여 제2 좌표를 결정할 수 있다.In addition, the
예를 들어, 지시 벡터 결정부(110)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표 사이의 거리가 소정 수준 이상이 되는 시점에서의 제어 수단의 모션 좌표를 제2 좌표로 결정할 수 있다. 보다 구체적으로, 도 7을 참조하면, 지시 벡터 결정부(110)는 트리거 좌표(701) 및 제어 수단의 모션 좌표 사이의 거리가 40 내지 50mm 이상이 되는 시점에서의 제어 수단의 모션 좌표(702)를 제2 좌표로 결정할 수 있다.For example, the
다른 예를 들어, 지시 벡터 결정부(110)는 트리거 좌표로부터 거리가 소정 수준 이상이 되는 제어 수단의 모션 좌표 중 제1 좌표가 특정되는 시점을 기준으로 가장 근접한 시점의 모션 좌표를 제2 좌표로 결정할 수 있다. 보다 구체적으로, 도 7을 참조하면, 지시 벡터 결정부(110)는 트리거 좌표(701)로부터 거리가 50mm 이상인 제어 수단의 모션 좌표 중 제1 좌표(703)가 특정되는 시점을 기준으로 가장 근접한 시점의 모션 좌표(702)를 제2 좌표로 결정할 수 있다.For another example, the
또한, 지시 벡터 결정부(110)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 제2 좌표를 결정할 수 있다.In addition, the
예를 들어, 지시 벡터 결정부(110)는 제1 좌표(또는 트리거 좌표)가 특정되는 시점을 기준으로 시간적으로 인접한 다른 시점에서의 제어 수단의 모션 좌표 각각을 위의 제1 좌표(또는 트리거 좌표)와 연결하여 직선 구간이 특정되는 모션 좌표 중 위의 제1 좌표(또는 트리거 좌표)로부터 가장 먼 거리에 존재하는 모션 좌표를 제2 좌표로서 결정할 수 있다. 여기서, 제1 좌표(또는 트리거 좌표)가 특정되는 시점으로부터 위의 다른 시점까지의 시간적으로 인접한 모든 모션 좌표가 위의 제1 좌표(또는 트리거 좌표)와 위의 다른 시점에서의 제어 수단의 모션 좌표를 연결하는 직선으로부터 소정 거리 이내에 존재하면, 직선 구간이 특정될 수 있는 것일 수 있다.For example, the
보다 구체적으로, 지시 벡터 결정부(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
또한, 지시 벡터 결정부(110)는 제1 좌표(또는 트리거 좌표)가 특정되는 시점을 기준으로 시간적으로 인접한 다른 시점에서의 제어 수단의 모션 좌표를 시간적으로 인접한 순서대로 각각 연결하여 특정될 수 있는 직선 구간 중 가장 긴 직선 구간을 특정하고, 그 가장 긴 직선 구간에 존재하는 제어 수단의 복수의 모션 좌표 중 제1 좌표(또는 트리거 좌표)로부터 가장 먼 거리에 위치하는 모션 좌표를 제2 좌표로 결정할 수 있다. 한편, 직선 구간에 존재하는 제어 수단의 복수의 모션 좌표 사이의 간격은 소정 거리 이내일 수 있다.In addition, the
또한, 도 8을 참조하면, 지시 벡터 결정부(110)는 제1 좌표(821)가 특정되는 시점이 제1 시점이고, 제1 시점을 기준으로 시간적으로 인접한 제2 시점에서의 제어 수단의 모션 좌표가 제2 모션 좌표(822)이며, 제2 시점을 기준으로 시간적으로 인접한 제3 시점에서의 제어 수단의 모션 좌표가 제3 모션 좌표(823)이고, 제3 시점을 기준으로 시간적으로 인접한 제4 시점에서의 제어 수단의 모션 좌표(824)가 제4 모션 좌표인 경우에, 제1 좌표(821)와 제2 모션 좌표(822)를 연결하는 제1 직선 구간, 제1 좌표(821)와 제3 모션 좌표(823)를 연결하는 제2 직선 구간 및 제1 좌표(821)와 제4 모션 좌표(824)를 연결하는 제3 직선 구간을 특정 가능한 직선 구간으로 결정하고, 그 복수의 직선 구간(즉, 제1 직선 구간, 제2 직선 구간 및 제3 직선 구간) 중 가장 긴 직선 구간에 존재하는 제3 직선 구간 내 복수의 모션 좌표 중 제1 좌표(821)로부터 가장 먼 거리에 존재하는 모션 좌표(824)를 제2 좌표로 결정할 수 있다.In addition, referring to FIG. 8 , in the
한편, 지시 벡터 결정부(110)는 트리거 좌표(또는 제1 좌표)와 제어 수단의 모션 좌표 사이의 거리를 참조하여 결정되는 좌표 및 제1 좌표(또는 트리거 좌표)와 제어 수단의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 결정되는 좌표 중 제1 좌표(또는 트리거 좌표)에 가까운 좌표를 제2 좌표로서 결정할 수 있다.On the other hand, the
예를 들어, 도 9를 참조하면, 지시 벡터 결정부(110)는 (i) 트리거 좌표와 제어 수단의 모션 좌표 사이의 거리가 소정 수준 이상이 되는 시점에서의 제어 수단의 모션 좌표(910, 912, 914, 916, 920, 922) 및 (ii) 제1 좌표가 특정되는 시점을 기준으로 시간적으로 인접한 다른 시점에서의 제어 수단의 모션 좌표 각각을 위의 제1 좌표와 연결하여 직선 구간이 특정될 수 있는 모션 좌표 중 위의 제1 좌표로부터 가장 먼 거리에 위치하는 모션 좌표(911, 913, 915, 917, 921, 923)를 결정하고, 복수의 모션 좌표(910, 911, 912, 913, 914, 915, 916, 917, 920, 921, 922, 923) 중 제1 좌표에 가까운 모션 좌표(911, 913, 915, 917, 920, 922)를 제2 좌표로 결정할 수 있다.For example, referring to FIG. 9 , the indication vector determining unit 110 (i) the motion coordinates 910 and 912 of the control means at the point in time when the distance between the trigger coordinates and the motion coordinates of the control means becomes greater than or equal to a predetermined level. , 914, 916, 920, 922) and (ii) a straight line section is specified by connecting each of the motion coordinates of the control means at other temporally adjacent time points with the first coordinates based on the point at which the first coordinates are specified. Among the possible motion coordinates, the motion coordinates (911, 913, 915, 917, 921, 923) located at the farthest distance from the above first coordinates are determined, and a plurality of motion coordinates (910, 911, 912, 913, 914) are determined. , 915 , 916 , 917 , 920 , 921 , 922 , 923 of motion coordinates 911 , 913 , 915 , 917 , 920 , and 922 close to the first coordinate may be determined as the second coordinate.
또한, 지시 벡터 결정부(110)는 제1 좌표 및 제2 좌표에 기초하여 결정되는 모션 벡터를 결정할 수 있다.Also, the
예를 들어, 지시 벡터 결정부(110)는 위의 제2 좌표를 시점으로 하고, 위의 제1 좌표를 종점으로 하는 벡터를 모션 벡터로서 결정할 수 있다.For example, the
한편, 지시 벡터 결정부(110)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표 사이의 거리가 소정 수준 이상이 되는 모션 좌표가 존재하지 않는 경우에 모션 벡터가 특정될 수 없는 것으로 결정할 수 있다.On the other hand, the
예를 들어, 도 10을 참조하면, 지시 벡터 결정부(110)는 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 결정되는 제2 좌표(1001, 1002)가 특정될 수 있더라도, 트리거 좌표 또는 제1 좌표와 제어 수단의 모션 좌표 사이의 거리를 참조하여 결정되는 제2 좌표가 특정될 수 없다면, 모션 벡터가 특정될 수 없는 것으로 결정할 수 있다.For example, referring to FIG. 10 , the indication
또한, 지시 벡터 결정부(110)는 모션 벡터의 길이, 속도, 방향 및 제1 좌표의 위치 중 적어도 하나를 참조하여 모션 벡터의 유효성을 검증할 수 있다.In addition, the
예를 들어, 지시 벡터 결정부(110)는 모션 벡터의 길이를 소정 배수 스케일링한 길이가 제어 대상 영역 및 제1 좌표 사이의 길이보다 긴 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.For example, when a length obtained by scaling a length of a motion vector by a predetermined multiple is longer than a length between the control target region and the first coordinates, the
다른 예를 들어, 지시 벡터 결정부(110)는 모션 벡터의 길이에 기초하여 유효 영역을 특정하고, 그 유효 영역 내에 제어 대상 영역이 존재하는 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다. 보다 구체적으로, 도 11을 참조하면, 지시 벡터 결정부(110)는 모션 벡터의 길이를 소정 수준만큼 스케일링하여 특정되는 영역(또는 연장되는 영역)을 유효 영역(1102)으로 특정하고, 그 유효 영역(1102)과 제어 대상 영역 사이의 공통 영역이 존재하는 경우에 해당 벡터를 유효한 모션 벡터로 결정할 수 있다.For another example, the
또 다른 예를 들어, 지시 벡터 결정부(110)는 모션 벡터의 길이가 소정 길이(예를 들어, 10 내지 20mm)보다 긴 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.As another example, when the length of the motion vector is longer than a predetermined length (eg, 10 to 20 mm), the
또 다른 예를 들어, 지시 벡터 결정부(110)는 모션 벡터의 속도가 소정 속도(예를 들어, 10mm/s 내지 20mm/s) 이상인 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.As another example, when the speed of the motion vector is greater than or equal to a predetermined speed (eg, 10 mm/s to 20 mm/s), the
또 다른 예를 들어, 도 12를 참조하면, 지시 벡터 결정부(110)는 모션 벡터 및 제어 대상 영역이 이루어는 각도(구체적으로, 제어 대상 영역의 법선 벡터가 이루는 각)가 소정 각도 이내(예를 들어, -45도≤θx≤45도이고, 30도≤θy≤60도 이내)인 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.For another example, referring to FIG. 12 , the
또 다른 예를 들어, 지시 벡터 결정부(110)는 위의 제1 좌표(즉, 모션 벡터의 종점)가 제어 대상 영역으로부터 소정 거리 이내(예를 들어, 100mm 이내)에 존재하는 경우에 해당 모션 벡터를 유효한 모션 벡터로 결정할 수 있다.As another example, when the first coordinate (ie, the end point of the motion vector) above is within a predetermined distance (eg, within 100 mm) of the control target area, the
한편, 도 13 및 도 14를 참조하면, 사용자의 시선 또는 헤드 포즈에 의해 특정되는 주시 벡터를 이용하여 모션 벡터의 유효성이 검증될 수도 있다.Meanwhile, referring to FIGS. 13 and 14 , the validity of the motion vector may be verified using the gaze vector specified by the user's gaze or head pose.
예를 들어, 본 발명에 따른 모션 벡터를 이용하여 제어 대상 영역에서 특정되는 제1 제어 위치와 사용자의 시선 또는 헤드 포즈에 의해 특정되는 주시 벡터를 이용하여 제어 대상 영역에서 특정되는 제2 제어 위치 사이의 오차가 소정 수준 이하인 경우에, 해당 모션 벡터가 유효한 모션 벡터로서 결정될 수 있다.For example, between a first control position specified in the control target region using the 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 or equal to a predetermined level, the corresponding motion vector may be determined as a valid motion vector.
제1 실시예first embodiment
이하에서는, 본 발명의 일 실시예에 따른 객체 제어 지원 시스템(100)이 포함된 디바이스를 이용하는 사용자에게 본 발명에 따른 객체 제어가 지원되는 상황을 살펴보기로 한다. 본 발명의 일 실시예에 따른 제어 수단은 사용자의 손 끝(예를 들어, 검지 끝)일 수 있다.Hereinafter, a situation in which object control according to the present invention is supported to a user using a device including the object
먼저, 본 발명의 일 실시예에 따른 디바이스는 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리가 소정 수준 이하(예를 들어, 8cm 사이)이고 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 경우에, 사용자의 손 끝의 모션 좌표 중 제어 대상 영역을 향해 나아가는 방향으로 전진 후 정지하는 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정할 수 있다.First, in the device according to an embodiment of the present invention, when the distance between the motion coordinate of the control means and the control target area is less than a predetermined level (for example, between 8 cm) and a trigger event related to the movement of the control means occurs , among the motion coordinates of the user's fingertip, the first coordinates may be determined by referring to the coordinates at the point in time at which the trigger event that stops after advancing in the direction advancing toward the control target area occurs as the trigger coordinates.
예를 들어, 사용자의 손 끝이 제어 대상 영역을 향해 나아가는 방향으로 전진 후 정지하는 트리거 이벤트가 발생되는 경우에, 사용자의 손 끝의 모션 좌표 중 그 트리거 이벤트가 발생되는 시점에서의 좌표 즉, 트리거 좌표가 제1 좌표로 결정될 수 있다.For example, when a trigger event in which the user's fingertip moves forward in the direction toward the control target area and stops occurs occurs, the coordinates at the time 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 좌표가 결정될 수 있다.Then, the second coordinate may be determined with reference to the distance between the trigger coordinates above and the motion coordinates of the user's fingertip and the straight line section specified by the above first coordinates and the motion coordinates of the user's fingertips.
구체적으로, 위의 트리거 좌표와 사용자의 손 끝의 모션 좌표 사이의 거리를 참조하여 결정되는 좌표 및 제1 좌표(또는 트리거 좌표)와 사용자의 손 끝의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 결정되는 좌표 중 위의 제1 좌표에 가까운 좌표가 제2 좌표로 결정될 수 있다.Specifically, the coordinates determined by referring to the distance between the trigger coordinates above and the motion coordinates of the user's fingertips and the first coordinates (or trigger coordinates) and the straight line section specified by the motion coordinates of the user's fingertips Among the determined coordinates, a coordinate close to the above first coordinate may be determined as the second coordinate.
그 다음에, 위의 제2 좌표를 시점으로 하고 위의 제1 좌표를 종점으로 하여 특정되는 벡터(즉, 모션 벡터)의 길이, 속도, 방향 및 위의 제1 좌표의 위치 중 적어도 하나를 참조하여 위의 모션 벡터의 유효성이 검증될 수 있다.Then, referring to at least one of the length, velocity, direction and position of the first coordinate of a vector (i.e., motion vector) specified with the above second coordinate as the starting point and the above first coordinate as the end point Thus, the validity of the above motion vector can be verified.
그 다음에, 위의 모션 벡터가 유효한 것으로 결정되는 경우에, 모션 벡터가 지시 벡터로 결정될 수 있고, 제어 대상 영역 중 모션 벡터의 연장선과 만나는 영역이 사용자에 의해 의도되는 제어 위치로 결정될 수 있다.Then, when it is determined that the above motion vector is valid, the motion vector may be determined as an indication vector, and a region of the control target region that meets the extension line of the motion vector may be determined as a control position intended by the user.
한편, 본 발명의 일 실시예에 따라 앞서 설명된 트리거 이벤트의 발생과 연관되는 방향(예를 들어, 트리거 이벤트의 발생 여부의 기준이 되는 방향)은 지시 벡터의 유형(또는 그 지시 벡터가 특정되는 기준) 또는 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리에 따라 결정될 수도 있다.On the other hand, according to an embodiment of the present invention, the direction associated with the occurrence of the trigger event described above (for example, a direction that is a reference for whether the trigger event occurs) is the type of the indication vector (or the indication vector is specified). reference) or it may be determined according to the distance between the motion coordinates of the control means and the control target area.
예를 들어, 본 발명의 일 실시예에 따른 지시 벡터 중 지칭 벡터의 경우에는 사용자의 특정 신체 부위(예를 들어, 눈)를 기준으로 그 방향(즉, 트리거 이벤트의 발생 여부의 기준이 되는 방향)이 특정될 수 있고, 지시 벡터 중 모션 벡터의 경우에는 모션 벡터(또는 그 연장선)에 기초하여 특정되는 가상의 기준 지점을 기준으로 그 방향(즉, 트리거 이벤트의 발생 여부의 기준이 되는 방향)이 특정될 수 있으며, 지시 벡터 중 수직 벡터의 경우에는 제어 대상 영역을 기준으로 그 방향(즉, 트리거 이벤트의 발생 여부의 기준이 되는 방향)이 특정되거나 수직 벡터(또는 그 연장선)에 기초하여 특정되는 가상의 기준 지점을 기준으로 그 방향(즉, 트리거 이벤트의 발생 여부의 기준이 되는 방향)이 특정될 수 있다.For example, in the case of a reference vector among the indication vectors according to an embodiment of the present invention, its direction (ie, a direction as a reference for whether a trigger event occurs or not) based on a specific body part (eg, eye) of the user. ) can be specified, and in the case of a motion vector among the indication vectors, its direction (that is, a reference direction of whether a trigger event occurs) based on a virtual reference point specified based on the motion vector (or an extension line thereof). can be specified, and in the case of a vertical vector among the indication vectors, its direction (ie, a direction that is a criterion for whether a trigger event occurs) is specified based on the control target area, or is specified based on a vertical vector (or an extension line thereof) A direction (ie, a direction as a reference for whether or not a trigger event occurs) may be specified based on a virtual reference point.
다른 예를 들어, 본 발명의 일 실시예에 따른 제어 수단의 모션 좌표 및 제어 대상 영역과의 거리가 제1 거리(예를 들어, 8cm) 이상인 경우에는 사용자의 특정 신체 부위(예를 들어, 눈)를 기준으로 그 방향(즉, 트리거 이벤트의 발생 여부의 기준이 되는 방향)이 특정될 수 있고, 제어 수단의 모션 좌표 및 제어 대상 영역과의 거리가 제1 거리 미만이고 제2 거리(예를 들어, 2.5cm) 이상인 경우에는 가상의 기준 지점(예를 들어, 모션 벡터(또는 그 연장선)에 기초하여 특정되는 가상의 기준 지점)을 기준으로 그 방향(즉, 트리거 이벤트의 발생 여부의 기준이 되는 방향)이 특정될 수 있으며, 제어 수단의 모션 좌표 및 제어 대상 영역과의 거리가 제2 거리 미만(예를 들어, 0cm 이상 제2 거리 미만)인 경우에는 제어 대상 영역을 기준으로 그 방향(즉, 트리거 이벤트의 발생 여부의 기준이 되는 방향)이 특정되거나 가상의 기준 지점(예를 들어, 수직 벡터(또는 그 연장선)에 기초하여 특정되는 가상의 기준 지점)을 기준으로 그 방향(즉, 트리거 이벤트의 발생 여부의 기준이 되는 방향)이 특정될 수 있다. 한편, 본 발명에 따른 거리의 구분 방식(예를 들어, 구간의 수)이 반드시 앞서 열거된 것에만 한정되는 것은 아니며, 본 발명의 목적을 달성할 수 있는 범위 내에서 보다 세분화되는 등 다양하게 변형될 수 있음을 밝혀 둔다.For another example, when the distance between the motion coordinates of the control means and the control target area according to an embodiment of the present invention is equal to or greater than the first distance (eg, 8 cm), the user's specific body part (eg, eyes ) may be specified based on the direction (that is, a direction that is a criterion for whether a trigger event occurs or not), and the distance between the motion coordinates of the control means and the control target area is less than the first distance and the second distance (eg, For example, 2.5 cm) or more, the direction (that is, the criterion of whether a trigger event occurs) is direction) can be specified, and when the distance between the motion coordinates of the control means and the control target area is less than the second distance (for example, 0 cm or more and less than the second distance), the direction ( That is, the direction (i.e., the direction that is the basis of whether the trigger event occurs) is specified or the direction (ie, the virtual reference point specified based on a vertical vector (or an extension line thereof)) is specified. direction) as a criterion for whether a trigger event occurs or not may be specified. On the other hand, the method of dividing the distance according to the present invention (eg, the number of sections) is not necessarily limited to those listed above, and various modifications such as more subdivision within the range that can achieve the object of the present invention make it clear that it can be
그 다음에, 도 15를 참조하면, 위의 사용자의 손 끝의 위치가 변동되는 경우에, 그 위치가 변동되기 전 모션 벡터의 연장선에 기초하여 특정되는 가상의 기준 지점과 그 위치가 변동된 후 사용자의 손 끝의 모션 좌표를 연결하는 벡터(즉, 연결 벡터)를 참조하여 제어 대상 영역에서의 변동될 제어 위치가 되거나, 위의 위치가 변동되기 전 사용자의 손 끝의 모션 좌표를 참조하여 특정되는 제1 가이드 벡터와 위의 위치가 변동된 후 사용자의 손 끝의 모션 좌표를 참조하여 특정되는 제2 가이드 벡터 사이의 관계에 기초하여 보정된 위의 모션 벡터(즉, 보정된 모션 벡터)를 참조하여 제어 대상 영역에서의 변동될 제어 위치가 결정될 수 있다. 한편, 사용자의 객체 제어 패턴(또는 사용자에 기설정되는 객체 제어 방식)을 참조하여 위의 연결 벡터 및 위의 보정된 모션 벡터 중 해당 사용자의 객체 제어에 이용될 벡터가 결정될 수 있다.Then, referring to FIG. 15 , when the position of the user's fingertip is changed, the virtual reference point specified based on the extension line of the motion vector before the position is changed and after the position is changed It becomes the control position to be changed in the control target area by referring to the vector (ie, the connection vector) that connects the motion coordinates of the user's fingertips, or is specified by referring to the motion coordinates of the user's fingertips before the above position is changed Refer to the corrected upper motion vector (ie, the corrected motion vector) based on the relationship between the first guide vector and the second guide vector specified with reference to the motion coordinates of the user's fingertip after the position of the stomach is changed Thus, the control position to be changed in the control target area may be determined. Meanwhile, a vector to be used for object control of a corresponding user among the above connection vectors and the above corrected motion vectors may be determined with reference to the user's object control pattern (or an object control method preset to the user).
제2 실시예second embodiment
이하에서는, 본 발명의 일 실시예에 따른 객체 제어 지원 시스템(100)이 포함된 디바이스를 이용하는 사용자에게 본 발명에 따른 객체 제어가 지원되는 다른 상황을 살펴보기로 한다. 본 발명의 일 실시예에 따른 제어 수단은 사용자의 손 끝(예를 들어, 검지 끝)일 수 있다.Hereinafter, another situation in which object control according to the present invention is supported to a user using a device including the object
먼저, 본 발명의 일 실시예에 따른 디바이스는 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리가 소정 수준 이하(예를 들어, 2.5cm 이하)이고 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 경우에, 사용자의 손 끝의 모션 좌표 중 제어 대상 영역을 향해 나아가는 방향으로 전진 후 정지하는 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정할 수 있다.First, in the device according to an embodiment of the present invention, when the distance between the motion coordinates of the control means and the control target area is less than or equal to a predetermined level (for example, 2.5 cm or less) and a trigger event related to movement of the control means occurs For example, the first coordinates may be determined by referring to coordinates at a time point at which a trigger event that stops after moving forward in a direction advancing toward the control target area occurs among motion coordinates of the user's fingertip as the trigger coordinates.
그 다음에, 위의 트리거 좌표와 사용자의 손 끝의 모션 좌표 사이의 거리 및 위의 제1 좌표와 사용자의 손 끝의 모션 좌표에 의해 특정되는 직선 구간을 참조하여 제2 좌표가 결정될 수 있다.Then, the second coordinate may be determined with reference to the distance between the trigger coordinates above and the motion coordinates of the user's fingertip and the straight line section specified by the above first coordinates and the motion coordinates of the user's fingertips.
그 다음에, 위의 제1 좌표 및 제2 좌표에 기초하여 결정되는 벡터(즉, 모션 벡터)의 길이, 속도, 방향 및 위의 제1 좌표의 위치 중 적어도 하나를 참조하여 위의 모션 벡터의 유효성이 검증될 수 있다.Then, with reference to at least one of a length, a velocity, a direction of a vector (ie, a motion vector) determined based on the first coordinates and the second coordinates, and a position of the first coordinates above, Validity can be verified.
그 다음에, 위의 제1 좌표 및 제2 좌표에 기초하여 결정되는 벡터(즉, 모션 벡터)가 유효하지 않은 경우에, 위의 트리거 좌표 또는 제1 좌표를 지나고, 제어 대상 영역에 수직인 벡터(1601)(즉, 수직 벡터)가 지시 벡터로서 결정될 수 있다.Then, when a vector (ie, a motion vector) determined based on the above first coordinates and second coordinates is invalid, the above trigger coordinates or a vector passing through the first coordinates and perpendicular to the control target area 1601 (ie, a vertical vector) may be determined as the pointer vector.
그 다음에, 다시 도 15를 참조하면, 위의 사용자의 손 끝의 위치가 변동되는 경우에, 그 위치가 변동되기 전 수직 벡터의 연장선에 기초하여 특정되는 가상의 기준 지점과 그 위치가 변동된 후 사용자의 손 끝의 모션 좌표를 연결하는 벡터(즉, 연결 벡터)를 참조하여 제어 대상 영역에서의 변동될 제어 위치가 결정되거나, 위의 위치가 변동되기 전 사용자의 손 끝의 모션 좌표를 참조하여 특정되는 제1 가이드 벡터와 위의 위치가 변동된 후 사용자의 손 끝의 모션 좌표를 참조하여 특정되는 제2 가이드 벡터 사이의 관계에 기초하여 보정된 위의 수직 벡터(즉, 보정된 수직 벡터)를 참조하여 제어 대상 영역에서의 변동될 제어 위치가 결정될 수 있다. 한편, 사용자의 객체 제어 패턴(또는 사용자에 기설정되는 객체 제어 방식)을 참조하여 위의 연결 벡터 및 위의 보정된 수직 벡터 중 해당 사용자의 객체 제어에 이용될 벡터가 결정될 수 있다.Then, referring back to FIG. 15 , when the position of the user's fingertip is changed above, the virtual reference point specified based on the extension line of the vertical vector before the position is changed and the position is changed. Then, the control position to be changed in the control target area is determined by referring to the vector (that is, the connection vector) that connects the motion coordinates of the user's fingertips, or by referring to the motion coordinates of the user's fingertips before the above position is changed. The upper vertical vector corrected based on the relationship between the specified first guide vector and the second guide vector specified with reference to the motion coordinates of the user's fingertip after the position of the stomach is changed (ie, the corrected vertical vector) A control position to be changed in the control target region may be determined with reference to . Meanwhile, with reference to the user's object control pattern (or an object control method preset to the user), a vector to be used for object control of the corresponding user among the above connection vector and the above corrected vertical vector may be determined.
가상의 기준 지점의 특정과 연관된 확장적인 실시예Extensive embodiments associated with the identification of virtual reference points
본 발명의 일 실시예에 따른 제어 수단이 제어 대상 영역과 근접하거나 멀어지는 과정에서 트리거 이벤트의 발생 여부 또는 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리에 따라 각각의 시점(時點)별로 지시 벡터가 결정(즉, 복수의 지시 벡터가 결정)될 수 있게 된다. 이하에서는, 이러한 경우에 가상의 기준 지점 및 제어 위치가 결정되는 구체적인 상황을 살펴보기로 한다.In the process where the control means according to an embodiment of the present invention approaches or moves away from the control target area, the indication vector is determined for each time point according to whether a trigger event occurs or the distance between the motion coordinates of the control means and the control target area. It may be determined (ie, a plurality of indication vectors may be determined). Hereinafter, a detailed situation in which a virtual reference point and a control position are determined in this case will be described.
예를 들어, 도 17을 참조하면, 본 발명의 일 실시예에 따라 t시점에서의 제어 수단의 모션 좌표가 PFTt이고, t시점에서의 가상의 기준 지점이 RPt이며, t시점에서의 제어 대상 영역에서의 제어 위치가 Ct인 경우에, t=-5 시점에는 모션 벡터가 유효하게 결정되지 않아 이에 기초한 가상의 기준 지점이 특정되지 않고 제어 대상 영역에서의 제어 위치 C-5(1721)도 결정되지 않을 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-4 시점에 모션 벡터가 유효하게 결정되면 그 모션 벡터에 기초하여 가상의 기준 지점 RP-4(1702)가 특정될 수 있으며, 가상의 기준 지점 RP-4(1702) 및 제어 수단의 모션 좌표 PFT-4(1712)에 기초하여 제어 대상 영역에서의 제어 위치 C-4(1722)가 결정될 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-3 시점에 모션 벡터가 유효하게 결정되면 그 모션 벡터에 기초하여 가상의 기준 지점 RP-3(1703)이 특정될 수 있으며, 가상의 기준 지점 RP-3(1703) 및 제어 수단의 모션 좌표 PFT-3(1713)에 기초하여 제어 대상 영역에서의 제어 위치 C-3(1723)이 결정될 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-2 시점에 모션 벡터가 유효하게 결정되면 그 모션 벡터에 기초하여 가상의 기준 지점 RP-2(1704)가 특정될 수 있으며, 가상의 기준 지점 RP-2(1704) 및 제어 수단의 모션 좌표 PFT-2(1714)에 기초하여 제어 대상 영역에서의 제어 위치 C-2(1724)가 결정될 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-1 시점에 모션 벡터가 유효하게 결정되면 그 모션 벡터에 기초하여 가상의 기준 지점 RP-1(1705)이 특정될 수 있으며, 가상의 기준 지점 RP-1(1705) 및 제어 수단의 모션 좌표 PFT-1(1715)에 기초하여 제어 대상 영역에서의 제어 위치 C-1(1725)이 결정될 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=0 시점에 모션 벡터가 유효하게 결정되지 않으면 이에 기초한 가상의 기준 지점이 특정되지 않고, 이전 시점에서의 유효한 가상의 기준 지점(구체적으로, 직전 또는 최근 시점에서의 유효한 가상의 기준 지점)인 RP-1(1705) 및 제어 수단의 모션 좌표 PFT0(1716)에 기초하여 제어 대상 영역에서의 제어 위치 C0(1726)가 결정될 수 있다.For example, referring to FIG. 17 , according to an embodiment of the present invention, the motion coordinate of the control means at time t is P FTt , the virtual reference point at time t is RP t , and control at time t When the control position in the target region is C t , the motion vector is not determined effectively at the time t=-5, so a virtual reference point based thereon is not specified, and the control position C -5 in the control region (1721) may not be determined. Then, when the motion vector is effectively determined at t=-4 according to an embodiment of the present invention, a virtual reference point RP -4 1702 may be specified based on the motion vector, and the virtual
또한, 본 발명의 일 실시예에 따라 이전 시점에서의 유효한 가상의 기준 지점(구체적으로, 직전 또는 최근 시점에서의 유효한 가상의 기준 지점)에 기초하여 현재의 가상의 기준 지점이 보정되는 과정을 살펴보기로 한다.In addition, a process in which the current virtual reference point is corrected based on an effective virtual reference point at a previous time point (specifically, an effective virtual reference point at the immediately preceding or recent time point) according to an embodiment of the present invention will be described. let's see
도 18을 참조하면, 본 발명의 일 실시예에 따라 먼저, t=-5 시점에 모션 벡터가 유효하게 결정되지 않으면, 이에 기초한 가상의 기준 지점이 특정되지 않고 제어 대상 영역에서의 제어 위치 C-5(1821)도 결정되지 않을 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-4 시점에 모션 벡터가 유효하게 결정되면 그 모션 벡터에 기초하여 가상의 기준 지점 RP-4(1802)가 특정될 수 있고, 가상의 기준 지점 RP-4(1802) 및 제어 수단의 모션 좌표 PFT-4(1812)에 기초하여 제어 대상 영역에서의 제어 위치 C-4(1822)가 결정될 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-3 시점에 모션 벡터가 유효하게 결정되면 그 모션 벡터에 기초하여 가상의 기준 지점 RP-3(1803)이 특정될 수 있으며, 이전 시점(또는 직전 시점)에서의 유효한 가상의 기준 지점 RP-4(1802) 및 현재의 가상의 기준 지점 RP-3(1803)에 기초하여 특정(예를 들어, 두 지점의 좌표에 대한 통계적 분석을 통해 특정될 수 있으며, 이러한 통계적 분석에는, 평균, 가중 평균, 분산, 표준 편차 등이 이용될 수 있음)되는 가상의 기준 지점 RP'-3(1806)과 제어 수단의 모션 좌표 PFT-3(1813)에 기초하여 제어 대상 영역에서의 제어 위치 C'-3(1823)이 결정될 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-2 시점에 모션 벡터가 유효하게 결정되면 그 모션 벡터에 기초하여 가상의 기준 지점 RP-2(1804)가 특정될 수 있으며, 이전 시점에서의 유효한 가상의 기준 지점 RP'-3(1806) 및 현재의 가상의 기준 지점 RP-2(1804)에 기초하여 특정(예를 들어, 두 지점의 좌표에 대한 통계적 분석을 통해 특정될 수 있으며, 이러한 통계적 분석에는, 평균, 가중 평균, 분산, 표준 편차 등이 이용될 수 있음)되는 가상의 기준 지점 RP'-2(1807)와 제어 수단의 모션 좌표 PFT-2(1814)에 기초하여 제어 대상 영역에서의 제어 위치 C'-2(1824)가 결정될 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-1 시점에 모션 벡터가 유효하게 결정되면 그 모션 벡터에 기초하여 가상의 기준 지점 RP-1(1805)이 특정될 수 있으며, 이전 시점에서의 유효한 가상의 기준 지점 RP'-2(1807) 및 현재의 가상의 기준 지점 RP-1(1805)에 기초하여 특정(예를 들어, 두 지점의 좌표에 대한 통계적 분석을 통해 특정될 수 있으며, 이러한 통계적 분석에는, 평균, 가중 평균, 분산, 표준 편차 등이 이용될 수 있음)되는 가상의 기준 지점 RP'-1(1808)과 제어 수단의 모션 좌표 PFT-1(1815)에 기초하여 제어 대상 영역에서의 제어 위치 C'-1(1825)이 결정될 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=0 시점에 모션 벡터가 유효하게 결정되지 않으면, 이에 기초한 가상의 기준 지점이 특정되지 않고, 이전 시점에서의 유효한 가상의 기준 지점(구체적으로, 직전 또는 최근 시점에서의 유효한 가상의 기준 지점)인 RP'-1(1808) 및 제어 수단의 모션 좌표 PFT0(1816)에 기초하여 제어 대상 영역에서의 제어 위치 C'0(1826)가 결정될 수 있다.Referring to FIG. 18 , according to an embodiment of the present invention, first, if a motion vector is not effectively determined at time t=-5, a virtual reference point based on this is not specified and a control position C in the control target region is not specified. 5 (1821) may also not be determined. Then, when the motion vector is effectively determined at the time t=-4 according to an embodiment of the present invention, a virtual
또한, 본 발명의 일 실시예에 따라 유효한 모션 벡터만을 이용하여 가상의 기준 지점이 특정되는 과정을 살펴보기로 한다.Also, a process in which a virtual reference point is specified using only a valid motion vector according to an embodiment of the present invention will be described.
도 19를 참조하면, 본 발명의 일 실시예에 따라 먼저, t=-5 내지 -2 시점에 모션 벡터가 유효하게 결정되지 않으면 이에 기초한 가상의 기준 지점이 특정되지 않고 제어 대상 영역에서의 제어 위치 C-5(1921), C-4(1922), C-3(1922) 및 C-2(1924)도 결정되지 않을 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-1 시점에 모션 벡터가 유효하게 결정되면, 그 모션 벡터에 기초하여 가상의 기준 지점 RP-1(1905)이 특정될 수 있으며, 가상의 기준 지점 RP-1(1905) 및 제어 수단의 모션 좌표 PFT-1(1915)에 기초하여 제어 대상 영역에서의 제어 위치 C-1(1925)이 결정될 수 있다. 다음에, 본 발명의 일 실시예에 따른 t=0 시점에 모션 벡터가 유효하게 결정되지 않으면, 이에 기초한 가상의 기준 지점이 특정되지 않고, 이전 시점에서의 유효한 가상의 기준 지점(구체적으로, 직전 또는 최근 시점에서의 유효한 가상의 기준 지점)인 RP-1(1905) 및 제어 수단의 모션 좌표 PFT0(1916)에 기초하여 제어 대상 영역에서의 제어 위치 C0(1926)가 결정될 수 있게 된다.Referring to FIG. 19 , according to an embodiment of the present invention, if a motion vector is not effectively determined at time points t=-5 to -2, a virtual reference point based thereon is not specified and a control position in the control target region is not specified. C -5 (1921), C -4 (1922), C -3 (1922) and C -2 (1924) may also be undetermined. Then, when the motion vector is effectively determined at t = -1 according to an embodiment of the present invention, a virtual reference point RP -1 (1905) may be specified based on the motion vector, and the virtual reference point RP -1 (1905) may be specified. Based on the reference point RP -1 (1905) and the motion coordinate P FT-1 (1915) of the control means, the control position C -1 (1925) in the control target region can be determined. Next, if the motion vector is not effectively determined at time t=0 according to an embodiment of the present invention, a virtual reference point based thereon is not specified, and a valid virtual reference point at the previous time point (specifically, immediately before Alternatively, the control position C 0 (1926) in the control target region can be determined based on RP -1 (1905), which is a valid virtual reference point at the latest point in time) and the motion coordinate P FT0 (1916) of the control means.
다른 예를 들어, 도 20을 참조하면, 본 발명의 일 실시예에 따라 t시점에서의 제어 수단의 모션 좌표가 PFTt이고, t시점에서의 가상의 기준 지점이 RPt이고, t시점에서의 제어 대상 영역에서의 제어 위치가 Ct인 경우에, 먼저, t=-5 내지 -2 시점에 모션 벡터 및 수직 벡터(예를 들어, 제어 대상 영역과 제어 수단의 모션 좌표 사이의 거리가 소정 거리 이상에 해당되어 유효하지 않음)가 유효하게 결정되지 않아 이에 기초한 가상의 기준 지점이 특정되지 않고, 제어 대상 영역에서의 제어 위치 C-5(2021), C-4(2022), C-3(2023) 및 C-2(2024)도 결정되지 않을 수 있다. 그 다음에, 본 발명의 일 실시예에 따른 t=-1 시점에 모션 벡터가 유효하지 않고 수직 벡터가 유효(예를 들어, 제어 대상 영역과 제어 수단의 모션 좌표 사이의 거리가 소정 거리 이하에 해당)하게 결정되면 그 수직 벡터에 기초하여 가상의 기준 지점 RP-1(2005)이 특정될 수 있으며, 그 가상의 기준 지점 RP-1(2005) 및 제어 수단의 모션 좌표 PFT-1(2015)에 기초하여 제어 대상 영역에서의 위치 C-1(2025)이 결정될 수 있다. 다음에, 본 발명의 일 실시예에 따른 t=0 시점에 모션 벡터 및 수직 벡터(예를 들어, 제어 대상 영역과 제어 수단의 모션 좌표 사이의 거리가 소정 거리 이상에 해당되어 유효하지 않음)가 유효하게 결정되지 않으면 이에 기초한 가상의 기준 지점이 특정되지 않고 이전 시점에서의 유효한 가상의 기준 지점(구체적으로, 직전 또는 최근 시점에서의 유효한 가상의 기준 지점)인 RP-1(2005) 및 제어 수단의 모션 좌표 PFT0(2016)에 기초하여 제어 대상 영역에서의 제어 위치 C0(2026)가 결정될 수 있게 된다.For another example, referring to FIG. 20 , according to an embodiment of the present invention, the motion coordinates of the control means at time t are P FTt , and the virtual reference point at time t is RP t , and at time t When the control position in the control target region is C t , first, the motion vector and the vertical vector (eg, the distance between the control target region and the motion coordinates of the control means is a predetermined distance at t=-5 to -2 time points) Invalid due to the above) is not determined validly, so the virtual reference point based on this is not specified, and the control positions C -5 (2021), C -4 (2022), C -3 ( 2023) and C -2 (2024) may also be undetermined. Then, the motion vector is invalid and the vertical vector is valid (for example, if the distance between the control target area and the motion coordinates of the control means is less than or equal to a predetermined distance If the corresponding) is determined, a virtual reference point RP -1 (2005) can be specified based on the vertical vector, and the virtual reference point RP -1 (2005) and the motion coordinates of the control means P FT-1 (2015) ), the position C −1 ( 2025 ) in the control target region may be determined. Next, the motion vector and the vertical vector (for example, the distance between the control target area and the motion coordinates of the control means is invalid because it corresponds to a predetermined distance or more) at the time t = 0 according to an embodiment of the present invention If not determined to be valid, the virtual reference point based thereon is not specified, and RP -1 (2005), which is a valid virtual reference point at a previous time (specifically, a valid virtual reference point at the immediately preceding or recent time) and control means Based on the motion coordinate P FT0 (2016) of the control position C 0 (2026) in the control target region can be determined.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 비일시성의 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 비일시성의 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 비일시성의 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 비일시성의 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The 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-transitory computer-readable recording medium. The non-transitory computer-readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded in the non-transitory computer-readable recording medium may be specially designed and configured for the present invention, or may be known and used by those skilled in the computer software field. Examples of the non-transitory computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floppy 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 not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate 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 with specific matters 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 of ordinary skill in the art to which the present invention pertains can devise 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 below, but also all modifications equivalently or equivalently to the claims described below 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: instruction vector determining unit
120: control position management unit
130: communication department
140: control unit
Claims (12)
제어 수단의 이동에 관한 트리거 이벤트의 발생 여부 및 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리 중 적어도 하나를 참조하여 지시 벡터를 결정하는 단계, 및
상기 제어 수단의 위치가 변동되면, 상기 위치가 변동되기 전 상기 지시 벡터의 연장선에 기초하여 특정되는 가상의 기준 지점과 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표를 연결하는 벡터를 참조하여 상기 제어 대상 영역에서의 제어 위치를 결정하는 단계를 포함하는
방법.A method for supporting object control, comprising:
determining an indication vector by referring to at least one of whether a trigger event related to movement of the control means occurs and a distance between a motion coordinate of the control means and a control target area; and
When the position of the control means is changed, a vector connecting the virtual reference point specified based on the extension line of the indication vector before the position is changed and the motion coordinates of the control means after the position is changed is referred to. determining a control position in the control target area;
Way.
제어 수단의 이동에 관한 트리거 이벤트의 발생 여부 및 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리 중 적어도 하나를 참조하여 지시 벡터를 결정하는 단계, 및
상기 제어 수단의 위치가 변동되면, 상기 위치가 변동되기 전 상기 제어 수단의 모션 좌표를 참조하여 특정되는 제1 가이드 벡터와 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표를 참조하여 특정되는 제2 가이드 벡터 사이의 관계에 기초하여 보정되는 상기 지시 벡터를 참조하여 상기 제어 대상 영역에서의 제어 위치를 결정하는 단계를 포함하는
방법.A method for supporting object control, comprising:
determining an indication vector by referring to at least one of whether a trigger event related to movement of the control means occurs and a distance between a motion coordinate of the control means and a control target area; and
When the position of the control means is changed, a first guide vector specified with reference to the motion coordinates of the control means before the position is changed and a second guide vector specified with reference to the motion coordinates of the control means after the position is changed Determining a control position in the control target region with reference to the pointer vector corrected based on a relationship between guide vectors
Way.
상기 지시 벡터 결정 단계에서, 상기 제어 수단의 모션 좌표와 상기 제어 대상 영역 사이의 거리가 소정 수준 이하인 경우에, 상기 제어 수단의 모션 좌표 중 상기 제어 수단의 이동에 관한 트리거 이벤트가 발생되는 시점(時點)에서의 좌표를 트리거 좌표로서 참조하여 제1 좌표를 결정하고, 상기 트리거 좌표와 상기 모션 좌표 사이의 거리, 상기 트리거 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간, 상기 제1 좌표와 상기 모션 좌표 사이의 거리 및 상기 제1 좌표와 상기 모션 좌표에 의해 특정되는 직선 구간 중 적어도 하나를 참조하여 제2 좌표를 결정하고, 상기 제1 좌표 및 상기 제2 좌표에 기초하여 결정되는 벡터를 상기 지시 벡터로서 결정하는
방법.3. The method of any one of claims 1 and 2,
In the indication vector determining step, when the distance between the motion coordinates of the control means and the control target area is less than or equal to a predetermined level, a time point at which a trigger event related to movement of the control means is generated among the motion coordinates of the control means. ) by referring to the coordinates in the trigger coordinates to determine the first coordinates, the distance between the trigger coordinates and the motion coordinates, the straight line section specified by the trigger coordinates and the motion coordinates, the first coordinates and the motion coordinates A second coordinate is determined with reference to at least one of a distance between the first coordinates and a straight line section specified by the motion coordinates, and a vector determined based on the first coordinates and the second coordinates is used as the pointing vector to decide as
Way.
상기 지시 벡터 결정 단계에서, 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리가 소정 수준 이하이거나 상기 제1 좌표 및 상기 제2 좌표에 기초하여 결정되는 벡터가 유효하지 않은 경우에, 상기 트리거 좌표 또는 상기 제1 좌표를 지나고, 상기 제어 대상 영역에 수직인 벡터를 상기 지시 벡터로 결정하는
방법.4. The method of claim 3,
In the indication vector determining step, when the distance between the motion coordinates of the control means and the control target region is less than a predetermined level or the vectors determined based on the first coordinates and the second coordinates are invalid, the trigger coordinates or passing through the first coordinate and determining a vector perpendicular to the control target area as the indication vector
Way.
상기 지시 벡터 결정 단계에서, 상기 제어 수단의 모션 좌표 및 상기 제어 대상 영역과의 거리가 소정 수준 이상인 경우에, 상기 제어 수단의 모션 좌표 및 사용자의 신체 좌표에 기초하여 특정되는 벡터를 상기 지시 벡터로 결정하는
방법.3. The method of any one of claims 1 and 2,
In the indication vector determining step, when the distance between the motion coordinates of the control means and the control target area is equal to or greater than a predetermined level, a vector specified based on the motion coordinates of the control means and the user's body coordinates is used as the indication vector to decide
Way.
상기 지시 벡터 결정 단계에서, 상기 제어 수단의 이동에 관한 트리거 이벤트의 발생 여부를 특정하기 위한 방향은 상기 지시 벡터의 유형에 따라 결정되는
방법.3. The method of any one of claims 1 and 2,
In the indication vector determining step, a direction for specifying whether a trigger event related to the movement of the control means occurs is determined according to the type of the indication vector
Way.
상기 지시 벡터 결정 단계에서, 상기 제어 수단의 이동에 관한 트리거 이벤트의 발생 여부를 특정하기 위한 방향은 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리를 참조하여 결정되는
방법.3. The method of any one of claims 1 and 2,
In the indication vector determining step, the direction for specifying whether a trigger event related to the movement of the control means occurs is determined with reference to the distance between the motion coordinates of the control means and the control target area
Way.
상기 제어 위치 결정 단계에서, 상기 위치가 변동되기 전 상기 지시 벡터가 향하는 방향의 반대 방향의 연장선상에 존재하는 소정의 지점을 상기 가상의 기준 지점으로 특정하는
방법.According to claim 1,
In the control position determining step, before the position is changed, a predetermined point existing on an extension line opposite to the direction in which the pointing vector is directed is specified as the virtual reference point.
Way.
상기 제어 위치 결정 단계에서, 상기 위치가 변동되기 전 상기 제어 수단의 모션 좌표에 기초하여 특정되는 제1 핑거 벡터 및 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표에 기초하여 특정되는 제2 핑거 벡터 사이의 위치 및 방향의 변화 정도에 기초하여 상기 지시 벡터를 보정하는
방법.3. The method of claim 2,
In the control position determining step, a first finger vector specified based on the motion coordinates of the control means before the position is changed and a second finger vector specified based on the motion coordinates of the control means after the position is changed Correcting the indication vector based on the degree of change in position and direction between
Way.
제어 수단의 이동에 관한 트리거 이벤트의 발생 여부 및 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리 중 적어도 하나를 참조하여 지시 벡터를 결정하는 지시 벡터 결정부, 및
상기 제어 수단의 위치가 변동되면, 상기 위치가 변동되기 전 상기 지시 벡터의 연장선에 기초하여 특정되는 가상의 기준 지점과 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표를 연결하는 벡터를 참조하여 상기 제어 대상 영역에서의 제어 위치를 결정하는 제어 위치 관리부를 포함하는
시스템.A system for supporting object control, comprising:
An indication vector determining unit that determines an indication vector by referring to at least one of whether a trigger event related to the movement of the control means occurs and a distance between a motion coordinate of the control means and a control target area, and
When the position of the control means is changed, a vector connecting the virtual reference point specified based on the extension line of the indication vector before the position is changed and the motion coordinates of the control means after the position is changed is referred to. and a control position management unit that determines a control position in the control target area.
system.
제어 수단의 이동에 관한 트리거 이벤트의 발생 여부 및 상기 제어 수단의 모션 좌표와 제어 대상 영역 사이의 거리 중 적어도 하나를 참조하여 지시 벡터를 결정하는 지시 벡터 결정부, 및
상기 제어 수단의 위치가 변동되면, 상기 위치가 변동되기 전 상기 제어 수단의 모션 좌표를 참조하여 특정되는 제1 가이드 벡터와 상기 위치가 변동된 후 상기 제어 수단의 모션 좌표를 참조하여 특정되는 제2 가이드 벡터 사이의 관계에 기초하여 보정되는 상기 지시 벡터를 참조하여 상기 제어 대상 영역에서의 제어 위치를 결정하는 제어 위치 관리부를 포함하는
시스템.A system for supporting object control, comprising:
An indication vector determining unit that determines an indication vector by referring to at least one of whether a trigger event related to the movement of the control means occurs and a distance between a motion coordinate of the control means and a control target area, and
When the position of the control means is changed, a first guide vector specified with reference to the motion coordinates of the control means before the position is changed and a second guide vector specified with reference to the motion coordinates of the control means after the position is changed A control position management unit for determining a control position in the control target region with reference to the instruction vector corrected based on a relationship between guide vectors
system.
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US17/372,706 US20220050432A1 (en) | 2020-08-14 | 2021-07-12 | Method, system and non-transitory computer-readable recording medium for supporting object control |
| JP2021122615A JP7406817B2 (en) | 2020-08-14 | 2021-07-27 | Method, system, and non-transitory computer-readable recording medium for supporting object control |
| EP21190151.7A EP4020136A1 (en) | 2020-08-14 | 2021-08-06 | Method, system and non-transitory computer-readable recording medium for supporting object control |
| CN202110924201.0A CN114077309A (en) | 2020-08-14 | 2021-08-12 | Method, system and non-transitory computer readable recording medium for assisting object control |
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR20200102814 | 2020-08-14 | ||
| KR1020200102814 | 2020-08-14 | ||
| KR20200121843 | 2020-09-21 | ||
| KR1020200121843 | 2020-09-21 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20220021845A KR20220021845A (en) | 2022-02-22 |
| KR102448108B1 true KR102448108B1 (en) | 2022-09-28 |
Family
ID=80494313
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020200158512A Active KR102477006B1 (en) | 2020-08-14 | 2020-11-24 | Method, system and non-transitory computer-readable recording medium for supporting object control |
| KR1020210005570A Active KR102448108B1 (en) | 2020-08-14 | 2021-01-14 | Method, system and non-transitory computer-readable recording medium for supporting object control |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020200158512A Active KR102477006B1 (en) | 2020-08-14 | 2020-11-24 | Method, system and non-transitory computer-readable recording medium for supporting object control |
Country Status (1)
| Country | Link |
|---|---|
| KR (2) | KR102477006B1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102802179B1 (en) | 2022-04-15 | 2025-05-02 | 한국전자통신연구원 | Synaptic element for performing polynomial operation and electronic circuit including the same |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016094109A2 (en) | 2014-12-10 | 2016-06-16 | Microsoft Technology Licensing, Llc | Natural user interface camera calibration |
| US20180157398A1 (en) | 2016-12-05 | 2018-06-07 | Magic Leap, Inc. | Virtual user input controls in a mixed reality environment |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004258837A (en) * | 2003-02-25 | 2004-09-16 | Nippon Hoso Kyokai <Nhk> | Cursor operating device, its method and its program |
| JP5547139B2 (en) * | 2011-07-29 | 2014-07-09 | 株式会社東芝 | Recognition device, method and program |
| 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 |
| KR101937823B1 (en) * | 2016-10-24 | 2019-01-14 | 주식회사 브이터치 | Method, system and non-transitory computer-readable recording medium for assisting object control |
| 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 |
-
2020
- 2020-11-24 KR KR1020200158512A patent/KR102477006B1/en active Active
-
2021
- 2021-01-14 KR KR1020210005570A patent/KR102448108B1/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016094109A2 (en) | 2014-12-10 | 2016-06-16 | Microsoft Technology Licensing, Llc | Natural user interface camera calibration |
| US20180157398A1 (en) | 2016-12-05 | 2018-06-07 | Magic Leap, Inc. | Virtual user input controls in a mixed reality environment |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20220021838A (en) | 2022-02-22 |
| KR102477006B1 (en) | 2022-12-14 |
| KR20220021845A (en) | 2022-02-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11983326B2 (en) | Hand gesture input for wearable system | |
| KR102346294B1 (en) | Method, system and non-transitory computer-readable recording medium for estimating user's gesture from 2d images | |
| US10444908B2 (en) | Virtual touchpads for wearable and portable devices | |
| KR102517425B1 (en) | Systems and methods of direct pointing detection for interaction with a digital device | |
| EP3090331B1 (en) | Systems with techniques for user interface control | |
| US20110148755A1 (en) | User interface apparatus and user interfacing method based on wearable computing environment | |
| KR20240145034A (en) | Method, device and storage medium for input identification in a virtual scene | |
| CN113760085A (en) | Virtual environment construction and application method, VR (virtual reality) equipment and virtual reality interaction system | |
| KR102448108B1 (en) | Method, system and non-transitory computer-readable recording medium for supporting object control | |
| KR102191061B1 (en) | Method, system and non-transitory computer-readable recording medium for supporting object control by using a 2d camera | |
| KR101503159B1 (en) | Method of controlling touch-screen detecting eyesight | |
| JP7406817B2 (en) | Method, system, and non-transitory computer-readable recording medium for supporting object control | |
| US20250182425A1 (en) | Human-computer interaction method and apparatus, device, and medium | |
| JP7142387B2 (en) | Method, system and non-transitory computer-readable recording medium for supporting object control | |
| US20220192487A1 (en) | Method and system for determining dominant eye, and non-transitory computer-readable recording medium | |
| KR101980725B1 (en) | Method, system and non-transitory computer-readable recording medium for supporting an object control | |
| EP4443272A1 (en) | Freehand typing for augmented reality | |
| JP7733414B2 (en) | Control device and control method | |
| KR102198867B1 (en) | Method for user input and user interface device executing the method | |
| CN120743123A (en) | Character input method, apparatus, storage medium, and product | |
| CN120066243A (en) | Information input method and device, wearable device and computer readable storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20210114 |
|
| PA0201 | Request for examination | ||
| PG1501 | Laying open of application | ||
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20220920 |
|
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20220922 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20220923 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration |