KR101558094B1 - Multi-modal system using for intuitive hand motion and control method thereof - Google Patents
Multi-modal system using for intuitive hand motion and control method thereof Download PDFInfo
- Publication number
- KR101558094B1 KR101558094B1 KR1020140076507A KR20140076507A KR101558094B1 KR 101558094 B1 KR101558094 B1 KR 101558094B1 KR 1020140076507 A KR1020140076507 A KR 1020140076507A KR 20140076507 A KR20140076507 A KR 20140076507A KR 101558094 B1 KR101558094 B1 KR 101558094B1
- Authority
- KR
- South Korea
- Prior art keywords
- hand
- movement
- mouse
- user
- event
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
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)
Abstract
Description
본 발명의 실시예들은 직관적인 핸드 모션에 기반한 멀티-모달 시스템 및 그 제어 방법에 관한 것이다.Embodiments of the present invention relate to a multi-modal system based on intuitive hand motion and a control method thereof.
영상 디스플레이 장치의 다양화로 새로운 인터페이스의 수요가 늘고 있으며, 컴퓨터와 인간과의 의사 전달을 위해서, 현재 상용되고 있는 마우스, 키보드, 더 나아가 직접적 시각 제어장치인 터치스크린, 심지어 몸동작과 손동작을 통해 제어되는 공간 터치 등 단순하면서도 직관적인 제어방법으로 연구가 점차 증가하는 추세이다.With the diversity of image display devices, the demand for new interfaces is increasing. In order to communicate with a computer, a mouse, a keyboard, a touch screen as a direct visual control device, and even a gaming device Research on the simple and intuitive control method such as space touch is gradually increasing.
음성과 몸동작은 인간과 인간의 의사소통에 중요한 수단이며 컴퓨터 비젼 관련 분야에서 음성 및 몸동작을 인식하기 위한 다양한 기술이 개발되어 왔다. 이러한 기술은 인간-컴퓨터 상호작용(Hunan-Computer Interaction, HCI)의 한 분야이며 더 정확한 표현으로 사람의 신체기관으로 컴퓨터와 상호작용하는 기술을 상술한 NUI(Natural User Interface) 또는 NUX(Natural User eXperience)라 한다.Voice and gesture are important tools for communication between humans and humans. Various techniques have been developed to recognize voice and gesture in computer vision related fields. This technology is a field of human-computer interaction (HCI). It is a more accurate representation of the technology that interacts with a computer as a body organs of a person. It describes the NUI (Natural User Interface) or NUX (Natural User Experience) ).
내츄럴 유저 인터페이스는 마우스, 키보드, 펜과 마커 등을 이용하지 않고, 신체를 이용하여 제공되는 자연스런 모션 인터페이스이다. 지금까지 대표적인 동작 인식 방법은 마커를 이용하는 방식이었고, 그러한 종래기술의 인식 방법은 각 마커의 좌표를 상대적인 데이터로 입력 받아 데이터베이스에 각 좌표 값을 저장하는 것이었다. 그러나 정확한 동작을 인식하기 위해서는 더 많은 마커들이 필요하며, 그러한 마커들을 신체에 부착하고, 데이터들을 처리하는 데에는 상당한 시간이 걸린다. 또, NUI/NUX 프레임워크를 개발하면서, 가장 중요한 직관성을 배제한 개발로 인해 사용상에 문제가 발생하였으며, 지속적으로 사용자에게 암기를 강요하고 있다.The natural user interface is a natural motion interface provided by the body without using a mouse, a keyboard, a pen and a marker. Conventionally, a typical motion recognition method uses a marker. In the conventional recognition method, coordinates of each marker are input as relative data, and each coordinate value is stored in a database. However, more markers are needed to recognize correct motion, and it takes a considerable amount of time to attach such markers to the body and process the data. In addition, while developing the NUI / NUX framework, the most important intuition has been eliminated, resulting in problems in usage and constantly forcing users to memorize.
직관적인 손동작을 인식하는 것과 모니터에 그것을 매핑하기 위한 새로운 마우스 이벤트 알고리즘에 기반하여 사용자들이 쉽고 직관적으로 핸드마우스 이벤트를 다룰 수 있는 멀티-모달 시스템 및 그 제어 방법을 제공한다.It provides a multi-modal system and its control method that allows users to easily and intuitively handle hand mouse events based on recognizing intuitive hand gestures and new mouse event algorithms for mapping them to a monitor.
멀티-모달 시스템의 제어 방법에 있어서, 핸드마우스 조작 영역에서의 사용자의 제1 손의 이동을 인식하는 단계; 및 상기 핸드마우스 조작 영역에서의 상기 제1 손의 이동에 따라 마우스 이동 이벤트를 제어하는 단계를 포함하는 제어 방법이 제공된다.A method of controlling a multi-modal system, comprising: recognizing movement of a first hand of a user in a hand-mouse operating area; And controlling a mouse movement event in accordance with the movement of the first hand in the hand mouse operation area.
일측에 따르면, 상기 핸드마우스 조작 영역은, 디스플레이의 표시영역에 매핑되고, 상기 제1 손의 이동에 따라 제어되는 마우스 이동 이벤트를 통해 상기 디스플레이의 마우스 포인트가 이동되는 것을 특징으로 할 수 있다.According to one aspect, the hand mouse operation area is mapped to a display area of the display, and the mouse point of the display is moved through a mouse movement event controlled according to the movement of the first hand.
다른 측면에 따르면, 상기 제1 손의 이동은, 상기 핸드마우스 조작 영역이 갖는 3차원 좌표축의 X-축 및 Y-축 중 적어도 하나의 축 방향으로의 이동을 포함하는 것을 특징으로 할 수 있다.According to another aspect, the movement of the first hand includes movement of at least one of the X-axis and Y-axis of the three-dimensional coordinate axis of the hand mouse operation region in the axial direction.
또 다른 측면에 따르면, 상기 제어 방법은, 상기 3차원 좌표축에서, 상기 제1 손의 Z-축 방향으로의 이동을 인식하는 단계; 및 상기 제1 손의 Z-축 방향으로의 이동에 따라 마우스 클릭 이벤트의 발생을 제어하는 단계를 더 포함하는 것을 특징으로 할 수 있다.According to another aspect, the control method further comprises: recognizing movement of the first hand in the Z-axis direction on the three-dimensional coordinate axis; And controlling the generation of a mouse click event according to the movement of the first hand in the Z-axis direction.
또 다른 측면에 따르면, 상기 제어 방법은, 상기 사용자의 제2 손의 이동을 인식하는 단계; 및 상기 제2 손의 이동에 따라 마우스 클릭 이벤트를 제어하는 단계를 더 포함하는 것을 특징으로 할 수 있다.According to another aspect, the control method further comprises: recognizing movement of the second hand of the user; And controlling a mouse click event according to the movement of the second hand.
또 다른 측면에 따르면, 상기 핸드마우스 조작 영역은, 디스플레이의 표시영역에 매핑되고, 상기 제2 손의 이동에 따라 제어되는 마우스 클릭 이벤트를 통해 상기 디스플레이의 마우스 포인트의 위치에서 마우스 클릭이 발생되는 것을 특징으로 할 수 있다.According to another aspect, the hand mouse operation area is mapped to a display area of a display, and a mouse click is generated at a position of the mouse point of the display through a mouse click event controlled according to the movement of the second hand .
또 다른 측면에 따르면, 상기 제2 손의 이동은, 상기 핸드마우스 조작 영역이 갖는 3차원 좌표축의 Z-축 방향으로 기설정된 거리 이상 이동하는 동작을 포함하는 것을 특징으로 할 수 있다.According to another aspect of the present invention, the movement of the second hand includes an operation of moving the hand mouse operation region over a predetermined distance in the Z-axis direction of the three-dimensional coordinate axis of the hand mouse operation region.
또 다른 측면에 따르면, 상기 마우스 클릭 이벤트를 제어하는 단계는, 상기 Z-축 방향으로 기설정된 거리 이상 이동하는 동작이 기설정된 시간 범위 내에서 연속으로 인식되는 경우, 마우스 더블클릭 이벤트를 제어하는 것을 특징으로 할 수 있다.According to another aspect of the present invention, the step of controlling the mouse-click event includes: controlling a mouse double-click event when an operation of moving at least a predetermined distance in the Z-axis direction is consecutively recognized within a predetermined time range .
또 다른 측면에 따르면, 상기 제1 손의 이동을 인식하는 단계는, 상기 사용자의 제2 손의 이동을 더 인식하고, 상기 제어 방법은, 상기 제1 손의 이동 및 상기 제2 손의 이동에 따라 마우스 드래그 이벤트를 제어하는 단계를 더 포함하는 것을 특징으로 할 수 있다.According to another aspect, the step of recognizing the movement of the first hand further recognizes movement of the second hand of the user, and the control method further comprises the step of moving the first hand and the movement of the second hand And controlling the mouse drag event in accordance with the mouse drag event.
또 다른 측면에 따르면, 상기 마우스 드래그 이벤트를 제어하는 단계는, 상기 제2 손이 상기 핸드마우스 조작 영역이 갖는 3차원 좌표축의 Z-축 방향으로 기설정된 거리 이상 이동한 상태에서 상기 제1 손이 상기 3차원 좌표축의 X-축 및 Y-축 중 적어도 하나의 방향으로 이동하는 경우, 상기 마우스 드래그 이벤트를 제어하는 것을 특징으로 할 수 있다.According to another aspect of the present invention, the step of controlling the mouse drag event may include a step of, when the second hand is moved in a Z-axis direction of the three-dimensional coordinate axis of the hand mouse operation area by a predetermined distance or more, And controls the mouse dragging event when moving in at least one of an X-axis and a Y-axis of the three-dimensional coordinate axis.
또 다른 측면에 따르면, 상기 핸드마우스 조작 영역은, 디스플레이의 표시영역에 매핑되고, 상기 제2 손의 이동이 발생된 시점의 상기 디스플레이의 마우스 포인트의 위치에서부터 상기 제1 손의 이동에 따라 상기 디스플레이에서 드래그가 발생되는 것을 특징으로 할 수 있다.According to another aspect of the present invention, the hand mouse operation area is mapped to a display area of a display, and from the position of the mouse point of the display at the time when the movement of the second hand occurs, And a drag is generated in the display unit.
또 다른 측면에 따르면, 상기 제1 손의 이동을 인식하는 단계는, 상기 사용자의 제2 손의 이동을 더 인식하고, 상기 제어 방법은, 상기 제1 손의 이동 및 상기 제2 손의 이동에 따라 마우스 휠 스크롤 이벤트를 제어하는 단계를 더 포함하는 것을 특징으로 할 수 있다.According to another aspect, the step of recognizing the movement of the first hand further recognizes movement of the second hand of the user, and the control method further comprises the step of moving the first hand and the movement of the second hand And controlling the mouse wheel scroll event according to the mouse wheel scroll event.
또 다른 측면에 따르면, 상기 마우스 휠 스크롤 이벤트를 제어하는 단계는, 상기 제1 손이 상기 핸드마우스 조작 영역이 갖는 3차원 좌표축의 Z-축 방향으로 기설정된 거리 이상 이동한 상태에서 상기 제2 손이 상기 3차원 좌표축의 Y-축 방향으로 이동하는 경우, 상기 마우스 휠 스크롤 이벤트를 제어하는 것을 특징으로 할 수 있다.According to another aspect of the present invention, the step of controlling the mouse wheel scroll event may include a step of, when the first hand is moved in a Z-axis direction of the three-dimensional coordinate axis of the hand mouse operation area by a predetermined distance or more, Axis direction of the three-dimensional coordinate axis, the mouse wheel scroll event is controlled.
또 다른 측면에 따르면, 상기 핸드마우스 조작 영역은, 사용자에 대해 인식된 특징점으로부터 기설정된 거리만큼 이격된 좌표에 기반하여 결정되는 것을 특징으로 할 수 있다.According to another aspect, the hand mouse operation region may be determined based on coordinates spaced by a predetermined distance from the recognized minutiae for the user.
또 다른 측면에 따르면, 상기 기설정된 거리는, 상기 사용자의 키에 기설정된 조정 인수를 곱한 값에서 상기 사용자의 키를 뺀 값을 포함하는 것을 특징으로 할 수 있다.According to another aspect of the present invention, the predetermined distance may include a value obtained by subtracting the key of the user from a value obtained by multiplying the key of the user by a preset adjustment factor.
또 다른 측면에 따르면, 상기 핸드마우스 조작 영역은, 상기 사용자를 마주보는 방향을 기준으로, 상기 사용자의 우측 어깨의 특징점에서 좌측으로 기설정된 거리를 이동한 좌표의 x값, 상기 사용자의 좌측 어깨의 특징점에서 우측으로 상기 기설정된 거리를 이동한 좌표의 x값, 상기 사용자의 머리의 특징점에서 상단으로 상기 기설정된 거리를 이동한 좌표의 y값 및 상기 사용자의 엉치뼈의 특징점에서 상단으로 상기 기설정된 거리를 이동한 좌표의 y값에 기반하여 결정되는 것을 특징으로 할 수 있다.According to another aspect of the present invention, the hand mouse operation region includes: an x value of a coordinate shifted by a predetermined distance to the left from a feature point of the right shoulder of the user with respect to a direction facing the user; An x value of the coordinates shifted from the minutia point to the right by the predetermined distance, a y value of the coordinates shifted from the minutiae point of the user's head to the upper side by a predetermined distance, Is determined based on the y value of the coordinates at which the distance is shifted.
또 다른 측면에 따르면, 상기 인식하는 단계는, 카메라 및 깊이 센서를 이용하여 생성된 이미지의 상기 핸드마우스 조작 영역에서, 상기 사용자의 손을 인식하는 것을 특징으로 할 수 있다.According to another aspect, the recognizing step may be characterized in that, in the hand mouse operation area of the image generated using the camera and the depth sensor, the hand of the user is recognized.
멀티-모달 시스템에 있어서, 핸드마우스 조작 영역에서의 사용자의 제1 손의 이동을 인식하는 이동 인식부; 및 상기 핸드마우스 조작 영역에서의 상기 제1 손의 이동에 따라 마우스 이동 이벤트를 제어하는 이벤트를 포함하는 멀티-모달 시스템 이 제공된다.A multi-modal system, comprising: a movement recognizing unit which recognizes movement of a first hand of a user in a hand mouse operation area; And an event for controlling a mouse movement event in accordance with the movement of the first hand in the hand mouse operation area.
직관적인 손동작을 인식하는 것과 모니터에 그것을 매핑하기 위한 새로운 마우스 이벤트 알고리즘에 기반하여 사용자들이 쉽고 직관적으로 핸드마우스 이벤트를 다룰 수 있다.Based on a new mouse event algorithm for recognizing intuitive hand motions and mapping it to the monitor, users can easily and intuitively handle hand mouse events.
도 1은 본 발명의 일실시예에 있어서, 멀티-모달 시스템 구조의 예를 도시한 도면이다.
도 2는 본 발명의 일실시예에 있어서, 손동작을 이용한 NUI 명령어로 디스플레이에 표시된 객체를 이동시키는 예를 도시한 도면이다.
도 3은 본 발명의 일실시예에 있어서, 한 손으로 제어 가능한 핸드마우스를 설명하기 위한 도면이다.
도 4는 본 발명의 일실시예에 있어서, 핸드 마우스 조작 영역의 예를 도시한 도면이다.
도 5는 본 발명의 일실시예에 있어서, 핸드마우스 조작 영역과 모니터를 매핑하는 과정의 예를 도시한 도면이다.
도 6은 본 발명의 일실시예에 있어서, 양손 핸드마우스를 처리하는 과정의 예를 도시한 순서도이다.
도 7은 본 발명의 일실시예에 있어서, 멀티-모달 시스템의 내부 구성을 설명하기 위한 블록도이다.
도 8은 본 발명의 일실시예에 있어서, 멀티-모달 시스템의 제어 방법을 도시한 흐름도이다.
도 9는 본 발명의 다른 실시예에 있어서, 멀티-모달 시스템의 제어 방법에 더 포함 가능한 과정의 예를 도시한 흐름도이다.
도 10은 본 발명의 또 다른 실시예에 있어서, 멀티-모달 시스템의 제어 방법에 더 포함 가능한 과정의 예를 도시한 흐름도이다.1 is a diagram showing an example of a multi-modal system structure in an embodiment of the present invention.
FIG. 2 is a diagram illustrating an example of moving an object displayed on a display using an NUI command using a hand gesture according to an exemplary embodiment of the present invention. Referring to FIG.
3 is a diagram for explaining a hand-controllable hand mouse in an embodiment of the present invention.
4 is a diagram showing an example of a hand mouse operation area in an embodiment of the present invention.
5 is a diagram illustrating an example of a process of mapping a hand mouse operation area and a monitor in an embodiment of the present invention.
6 is a flowchart showing an example of a process of processing a two-handed mouse in an embodiment of the present invention.
7 is a block diagram for explaining an internal configuration of a multi-modal system in an embodiment of the present invention.
8 is a flowchart illustrating a method of controlling a multi-modal system, according to an embodiment of the present invention.
9 is a flowchart illustrating an example of a process that can be further included in a control method of a multi-modal system in another embodiment of the present invention.
10 is a flowchart showing an example of a process that can be further included in a control method of a multi-modal system according to another embodiment of the present invention.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일실시예에 있어서, 멀티-모달 시스템 구조의 예를 도시한 도면이다. 도 1의 실시예에 따른 멀티-모달 시스템은 NUI/NUX 인터페이스(110), 동작 인식 모듈(120), 음성 인식 모듈(130) 및 얼굴 인식 모듈(140)을 포함할 수 있다.1 is a diagram showing an example of a multi-modal system structure in an embodiment of the present invention. The multi-modal system according to the embodiment of FIG. 1 may include an NUI /
NUI/NUX 인터페이스(110)는 동작 인식, 음성 인식, 표정 인식 등을 위한 센서들(일례로, 깊이 센서, 카메라 등)의 출력을 통해 필요한 이미지나 신호를 동작 인식 모듈(120), 음성 인식 모듈(130) 및 얼굴 인식 모듈(140)로 전달하는 인터페이스일 수 있다. 예를 들어, 동작 인식 모듈(120)은 깊이 이미지, RGB 이미지, 뼈대(skeleton) 이미지 등을 수신하고, 관절 및 깊이 설정 데이터베이스(150)를 통해 수신된 정보에 대응하는 특징점들, 관절들 및 동작 이벤트 메서드(method) 등을 출력할 수 있다. 음성 인식 모듈(130)은 오디오 신호를 수신하여 음성 명령 데이터베이스(160)를 통해 수신된 정보에 대응하는 소리(sound) 및 음성 이벤트 메서드 등을 출력할 수 있다. 얼굴 인식 모듈(140)은 얼굴 특징 설정 데이터베이스(170)를 통해 RGB 이미지를 수신하여 특징점들 및 얼굴 이벤트 메서드 등을 출력할 수 있다.The NUI /
또한, 도 1에 도시된 단계(180)는 멀티-모달 시스템에서 동작 인식 모듈(120), 음성 인식 모듈(130) 및 얼굴 인식 모듈(140)의 출력을, XML(eXtensible Markup Language)을 이용하여 각각의 메서드들을 결합하고, 스크립트화하는 과정일 수 있고, 단계(190)는 멀티-모달 시스템에서 스크립트화된 문장을 평가 및 적용하는 과정일 수 있다.The
이러한 멀티-모달 시스템은 동작 인식, 음성 인식, 표정 인식 등을 위한 다양한 인터페이스들을 결합하고, XML을 이용하여 다양한 기기들에서 인식된 정보를 활용할 수 있는 시스템일 수 있다.Such a multi-modal system may be a system that combines various interfaces for motion recognition, speech recognition, facial recognition, and the like, and utilizes information recognized by various devices using XML.
이러한 멀티-모달 시스템에서, 손가락은 누구나 쉽게 알 수 있는 가장 편리하고 직관적인 수단이며, 이러한 손동작은 음성이나 얼굴표정 등과 같은 다양한 정보들과 결합하여 더욱 정확하게 효과적으로 활용될 수 있다.In such a multi-modal system, fingers are the most convenient and intuitive means that anyone can readily recognize, and such hand gestures can be utilized more accurately and effectively in combination with various information such as voice and facial expressions.
예를 들어, 동작 인식을 위해, 멀티-모달 시스템은 먼저 적외선 카메라를 이용하여 직관적인 핸드 모션에 기반하여 각 특징점들의 3D 데이터를 캡처할 수 있다. 적외선 카메라는 어두운 곳에서도 쉽게 동작 인식을 가능하게 해줄 수 있다. 이 과정에서의 특징점은 동작 인식에서는 사람의 스켈레톤의 각 관절이고 얼굴 인식에서는 눈썹 양끝, 눈꺼풀의 각 끝점과 중앙점이 될 수 있다. 이 특징점들은 데이터베이스(일례로, 도 1의 관절 및 깊이 설정 데이터베이스(150) 및 얼굴 특징 설정 데이터베이스(170))에 자동으로 저장될 수 있다.For example, for motion recognition, a multi-modal system may first use an infrared camera to capture 3D data of each feature point based on intuitive hand motion. Infrared cameras can easily recognize motion in dark places. The feature points in this process are the joints of the human skeleton in motion recognition, and the end points and center points of eyebrows and eyelids in face recognition. These feature points may be automatically stored in a database (e.g., the joint and
또한, 카메라로 찍은 영상에서 배경은 고정되어 있고 사람은 움직이므로, 멀티-모달 시스템은 영상처리 기술의 차영상을 이용하여 사람과 배경을 분리하고 사람의 관절 동선을 파악하여 어떤 명령어인지 분석하는 3D 모델링 과정을 수행할 수 있다.In addition, since the background is fixed and the human being is moving in the image taken by the camera, the multi-modal system uses the car image of the image processing technology to separate the human and the background, The modeling process can be performed.
이후, 멀티-모달 시스템은 사람을 트래킹하기 위한 기술(일례로, 루카스 카나데 방법(Lucas-Kanade method))을 이용하여 몸동작 영역을 추적하고, 이러한 추적 과정을 반복하여 정확한 데이터를 산출해내어 사용자의 동작의 인식 결과를 도출할 수 있다. 이러한 동작 인식 결과는 사용자가 어떤 동작을 취하고 있는지 정확하게 표현할 수 있다.Thereafter, the multi-modal system traces the body-motion area using a technique for tracking a person (for example, the Lucas-Kanade method) and repeats this tracking process to produce accurate data, The recognition result of the operation can be derived. This motion recognition result can accurately express what kind of motion the user is taking.
도 2는 본 발명의 일실시예에 있어서, 손동작을 이용한 NUI 명령어로 디스플레이에 표시된 객체를 이동시키는 예를 도시한 도면이다. 기존에는 모니터 안에 있는 창이나 아이콘을 이동시키려면 마우스를 이용했지만, 본 실시예에 따른 멀티-모달 시스템에서는 도 2에서와 같이 직관적인 손동작을 이용하여 마우스 기능을 구현할 수 있다. 이후에서는 이러한 손동작으로 구현되는 기능을 핸드마우스라 명명한다. 예를 들어, 도 2은 사용자의 손(210)이 이동함에 따라 디스플레이 장치(220)에 표시중인 객체(230)가 손(210)의 이동에 대응하여 이동하는 직관적인 NUI의 예를 나타내고 있다. 일례로, 적어도 카메라를 포함하는 센서(240)는 손(210)의 이동과 관련된 손 영상을 생성할 수 있으며, 이러한 핸드마우스는 손 영상에서 손(210)의 위치 변화를 통해 손(210)의 이동을 감지함으로써, 대응되는 객체를 이동시킬 수 있다.FIG. 2 is a diagram illustrating an example of moving an object displayed on a display using an NUI command using a hand gesture according to an exemplary embodiment of the present invention. Referring to FIG. Conventionally, a mouse is used to move a window or an icon in a monitor, but in a multi-modal system according to the present embodiment, a mouse function can be implemented using an intuitive hand gesture as shown in FIG. Hereafter, the function realized by such a hand gesture is called a hand mouse. For example, FIG. 2 shows an example of an intuitive NUI in which an
이러한 직관적인 NUI의 예로, 본 실시예에 따른 멀티-모달 시스템은, 사용자가 사진기의 셔터를 누르는 손동작을 장치에 포함된 카메라의 촬영 명령으로 인식하거나, 또는 윈도우 창 틀을 잡아 늘리는 손동작을 모니터에 표시된 윈도우 창의 크기를 키우기 위한 명령으로 인식할 수 있다.As an example of such an intuitive NUI, the multi-modal system according to the present embodiment can recognize the hand operation of the user pressing the shutter of the camera as a photographing command of the camera included in the apparatus, It can be recognized as a command for increasing the size of the displayed window window.
도 3은 본 발명의 일실시예에 있어서, 한 손으로 제어 가능한 핸드마우스를 설명하기 위한 도면이다. 도 3의 그래프(300)는 공간좌표축에서의 손의 움직임을 나타낸 일례이다. 한 손으로 제어 가능한 핸드마우스에서, 점 (x, y)는 모니터의 한 점에 대응될 수 있다. 예를 들어, 손의 X-축 이동과 Y-축 이동은 모니터에서 마우스 포인터의 이동을 표현할 수 있다. 손의 Z-축으로의 이동은, 깊이 센서를 통해 인식될 수 있으며, 카메라와 사람의 손간의 거리를 나타낼 수 있다. 이때, 그래프(300)에서는 사람의 손이 Z-축을 따라 이동한 거리를 "Δ"로 나타내고 있다. 본 실시예에 따른 멀티-모달 시스템은, 핸드마우스가 Z-축에 따라 이동한 거리 "Δ"가 일정크기(일례로, 0.4 미터) 이상의 거리인 경우, 핸드마우스의 Z-축으로의 이동에 따라 "마우스 클릭"이 발생한 것으로 인식할 수 있다.3 is a diagram for explaining a hand-controllable hand mouse in an embodiment of the present invention. The
아래 표 1은, 상술한 한 손으로 제어 가능한 핸드마우스를 구현한 알고리즘의 일례이다.Table 1 below is an example of an algorithm implementing the above-described hand-controllable hand mouse.
표 1의 알고리즘에서 각 심볼의 의미는 다음과 같다.The meaning of each symbol in the algorithm of Table 1 is as follows.
'HMZ'는 핸드마우스와 카메라의 거리를, 'BCZ'는 사용자와 카메라의 거리를 각각 나타낼 수 있다. 이때, 'Click_flag'는 클릭이 발생된 횟수를 나타내고 각각 0,1,2로 표현될 수 있다. 'HMZ' is 'BCZ' the distance between the hand and the mouse, camera, may be indicative of the distance of the user and the camera, respectively. At this time, 'Click_flag' represents the number of times the click is generated and can be represented by 0, 1, and 2, respectively.
도 4는 본 발명의 일실시예에 있어서, 핸드 마우스 조작 영역의 예를 도시한 도면이다. 도 4에서는 모든 사람들이 핸드마우스를 쉽게 이용할 수 있도록 하기 위해, 사람에 따라 핸드 마우스 조작 영역이 설정되는 예를 나타내고 있다. 사용자의 키에 조정 인수(일례로, 9/8)를 곱한 값에서 사람의 키를 뺀 거리를 'δ'라 하자. 수평적으로 양 어깨에서 'δ'를 더한 위치(410, 420), 그리고 수직적으로는 머리 중심과 엉치뼈의 위치에서 각각 'δ'를 더한 위치(430, 440)에 기반하여 핸드 마우스 조작 영역이 설정될 수 있다.4 is a diagram showing an example of a hand mouse operation area in an embodiment of the present invention. FIG. 4 shows an example in which a hand mouse operation area is set according to a person so that everyone can easily use the hand mouse. Let δ be the distance obtained by multiplying the user's key by the adjustment factor (eg, 9/8) minus the key of the person. (420, 440), which is obtained by horizontally adding 'δ' to both shoulders, and a position (430, 440) obtained by adding 'δ' to the positions of the head center and the union bones vertically Can be set.
아래 표 2는 이러한 핸드 마우스 조작 영역을 설정하기 위한 알고리즘의 일례이다. Table 2 below is an example of an algorithm for setting such a hand mouse operation area.
표 2에서 함수 'DrawJoint()'는 연결부위(Joint)를 이어 핸드마우스 영역을 그리기 위한 함수일 수 있다.In Table 2, the function 'DrawJoint ()' may be a function for drawing a hand mouse area followed by a joint.
도 5는 본 발명의 일실시예에 있어서, 핸드마우스 조작 영역과 모니터를 매핑하는 과정의 예를 도시한 도면이다. 도 5는 핸드마우스 조작 영역의 좌측 상단(Joint00), 좌측 하단(Joint10), 우측 상단(Joint01) 및 우측 하단(Joint11)이 모니터의 좌측 상단에, 좌측 하단, 우측 상단 및 우측 하단에 매칭되는 예를 나타내고 있다. 이때, 핸드마우스 조작 영역의 좌측 상단(Joint00)의 좌표는 클라이언트 영역(510)(일례로, 동작이 인식되는 전체 영역)의 좌표 (0, 0)과 비교하여 (+A, +B) 만큼 차이를 갖는다(여기서, A 및 B는 양의 정수). 따라서, 좌측 상단(Joint00)의 좌표가 (A, B)가 될 수 있고, 좌표 (A, B)가 모니터의 좌측 상단(일례로, 모니터 절대 좌표계의 (0, 0)에 매칭될 수 있다. 따라서, 핸드마우스 조작 영역에서의 움직임은 모니터의 전체 영역으로 매핑될 수 있다. 예를 들어, 핸드마우스의 위치가 좌표 (A, B)로 인식되는 경우, 모니터에서 마우스 포인터의 위치는 (0, 0)이 될 수 있다. 또한, 핸드마우스 조작 영역과 모니터의 전체 영역간의 비율적 차이가 반영될 수 있다.5 is a diagram illustrating an example of a process of mapping a hand mouse operation area and a monitor in an embodiment of the present invention. FIG. 5 is a diagram showing a state where the left upper end (Joint 00 ), the lower left end (Joint 10 ), the right upper end (Joint 01 ) and the right lower end (Joint 11 ) As shown in Fig. At this time, the coordinates of the upper left corner (Joint 00 ) of the hand mouse operation area are compared with the coordinates (0, 0) of the client area 510 (for example, (Where A and B are positive integers). Therefore, the coordinates of the upper left corner (Joint 00 ) may be (A, B) and the coordinates (A, B) may be matched to the upper left corner of the monitor (for example, (0, 0) For example, when the position of the hand mouse is recognized as the coordinates (A, B), the position of the mouse pointer on the monitor is (0, 0) , 0). Further, the ratio difference between the hand mouse operation area and the entire area of the monitor can be reflected.
표 3에서 'AllFramesEvent'는 RGB 영상과 뼈대 영상을 합한 프레임에 대한 이벤트를 나타내고 있다.In Table 3, 'AllFramesEvent' represents an event for a frame including an RGB image and a skeleton image.
한 손으로 제어 가능한 핸드마우스는, 한 손으로 z 좌표를 움직이고자 할 때, x, y 좌표eh 동시에 움직이기 때문에 정확한 마우스 이벤트를 표현하기가 어렵다. 따라서, 이러한 불편함을 없애고자 양손 핸드마우스가 이용될 수 있다. 양손 핸드마우스는, 왼손에 마우스의 x, y 좌표를 매핑하여 마우스의 이동을 제어할 수 있으며, 오른손에 z 좌표를 매핑하여 마우스의 클릭 이벤트를 제어할 수 있다. 따라서, 한 손으로 제어 가능한 핸드마우스에 비해 보다 뚜렷하고 정확한 결과를 제공할 수 있다A hand-controllable hand mouse is difficult to express accurate mouse events because it moves simultaneously with x and y coordinates eh when trying to move z coordinates with one hand. Therefore, a two-handed hand mouse can be used to eliminate such inconvenience. The two-handed mouse can control the movement of the mouse by mapping the mouse's x and y coordinates to the left hand, and the mouse's click event can be controlled by mapping the z coordinate to the right hand. Thus, it can provide more pronounced and accurate results than a one-hand controllable hand mouse
도 6은 본 발명의 일실시예에 있어서, 양손 핸드마우스를 처리하는 과정의 예를 도시한 순서도이다. 도 6의 순서도에 따르면, 카메라로부터 기설정된 거리(일례로, 1미터) 이상 떨어지면, 멀티-모달 시스템은 카메라에서 생성되는 영상에 기반하여 사용자의 포즈를 디코딩하여 사용자의 동작을 인식할 수 있다. 이때, 멀티-모달 시스템은 왼손을 통해 모니터에서 마우스 포인트의 이동을 제어할 수 있으며, 오른손의 이동을 통해 마우스의 클릭 이벤트와 더블클릭 이벤트의 발생을 제어할 수 있다. 또한, 왼손과 오른손의 이동을 조합하여 드래그 이벤트를 제어할 수 있다. 또한, 클릭 이벤트나 더블클릭 이벤트에 의해 아이콘이 선택되는지 여부나 모니터 매핑을 통해 아이콘이 발견되는 경우, 마우스 이벤트를 실행할 수 있다. 이러한 멀티-모달 시스템의 핸드마우스를 처리하는 과정들 중 일부는 이벤트 처리 방식에 따라 이벤트가 발생하면, 스스로 피드백을 받아 처리할 수 있다.6 is a flowchart showing an example of a process of processing a two-handed mouse in an embodiment of the present invention. According to the flowchart of FIG. 6, when the camera is separated from the camera by a predetermined distance (for example, one meter), the multi-modal system can recognize the user's operation by decoding the pose of the user based on the image generated by the camera. At this time, the multi-modal system can control the movement of the mouse point on the monitor through the left hand and control the generation of the mouse click event and double click event through the movement of the right hand. In addition, the drag event can be controlled by combining movement of the left hand and right hand. In addition, a mouse event can be executed when the icon is selected by the click event or the double-click event or when the icon is found through the monitor mapping. Some of the processes of processing the hand mouse of the multi-modal system can receive and process feedback by themselves when an event occurs according to the event processing method.
이러한 핸드마우스의 구조는 보다 다양한 마우스 기능들을 위해 이용될 수 있다. 예를 들어, 사용자가 왼손을 z 좌표 이동한 상태에서, 오른손으로 y 좌표 이동하는 경우, 마우스의 휠 스크롤 이벤트가 발생될 수 있다.The structure of such a hand mouse can be used for a variety of mouse functions. For example, when the user moves the y-coordinate with the right hand while the left hand is moved in the z-coordinate, a wheel scroll event of the mouse may be generated.
도 7은 본 발명의 일실시예에 있어서, 멀티-모달 시스템의 내부 구성을 설명하기 위한 블록도이고, 도 8은 본 발명의 일실시예에 있어서, 멀티-모달 시스템의 제어 방법을 도시한 흐름도이다.FIG. 7 is a block diagram for explaining an internal configuration of a multi-modal system in an embodiment of the present invention, and FIG. 8 is a flowchart illustrating a method of controlling a multi-modal system according to an embodiment of the present invention. to be.
본 실시예에 따른 멀티-모달 시스템(700)은 프로세서(710), 버스(720), 네트워크 인터페이스(730) 및 메모리(740)를 포함할 수 있다. 메모리(740)는 운영체제(741) 및 제어 루틴(742)을 포함할 수 있다. 프로세서(710)는 이동 인식부(711) 및 이벤트 제어부(712)를 포함할 수 있다. 다른 실시예들에서 멀티-모달 시스템(700)은 도 7의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 멀티-모달 시스템(700)은 카메라나 디스플레이, 또는 트랜시버(transceiver)와 같은 다른 구성요소들을 포함할 수도 있다. 일례로, 디스플레이는 스마트폰에서와 같이 멀티-모달 시스템(700)에 포함될 수도 있으나, PC에서와 같이 멀티-모달 시스템(700)과 연계되는 별도의 장치로 구현될 수도 있다.The
메모리(740)는 컴퓨터에서 판독 가능한 기록 매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 또한, 메모리(740)에는 운영체제(741)와 제어 루틴(742)을 위한 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 드라이브 메커니즘(drive mechanism, 미도시)을 이용하여 메모리(740)와는 별도의 컴퓨터에서 판독 가능한 기록 매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록 매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록 매체(미도시)를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록 매체가 아닌 네트워크 인터페이스(730)를 통해 메모리(740)에 로딩될 수도 있다. 예를 들어, 제어 루틴(742)는 개발사들이 제공하는 파일들에 의해 메모리(740)에 로딩될 수 있다.The
버스(720)는 멀티-모달 시스템(700)의 구성요소들간의 통신 및 데이터 전송을 가능하게 할 수 있다. 버스(720)는 고속 시리얼 버스(high-speed serial bus), 병렬 버스(parallel bus), SAN(Storage Area Network) 및/또는 다른 적절한 통신 기술을 이용하여 구성될 수 있다.
네트워크 인터페이스(730)는 멀티-모달 시스템(700)을 컴퓨터 네트워크에 연결하기 위한 컴퓨터 하드웨어 구성요소일 수 있다. 네트워크 인터페이스(730)는 멀티-모달 시스템(700)을 무선 또는 유선 커넥션을 통해 컴퓨터 네트워크에 연결시킬 수 있다. 일례로, 디스플레이가 별도의 장치로 구현된 예에서, 멀티-모달 시스템(700)은 네트워크 인터페이스(730)를 통해 디스플레이와 연결되어 통신할 수 있다.
프로세서(710)는 기본적인 산술, 로직 및 멀티-모달 시스템(700)의 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(740) 또는 네트워크 인터페이스(730)에 의해, 그리고 버스(720)를 통해 프로세서(710)로 제공될 수 있다. 프로세서(710)는 이동 인식부(711) 및 이벤트 제어부(712)를 위한 프로그램 코드를 실행하도록 구성될 수 있다. 이러한 프로그램 코드(일례로, 상술한 제어 루틴(742))는 메모리(740)와 같은 기록 장치에 저장될 수 있다.The
이때, 프로세서(710)가 포함하는 이동 인식부(711) 및 이벤트 제어부(712)는 도 8에 도시된 제어 방법의 단계들(810 및 820)를 수행하기 위해 구성될 수 있다.At this time, the
단계(810)에서 이동 인식부(711)는, 핸드마우스 조작 영역에서의 사용자의 제1 손의 이동을 인식할 수 있다.In
단계(820)에서 이벤트 제어부(712)는, 핸드마우스 조작 영역에서의 상기 제1 손의 이동에 따라 마우스 이동 이벤트를 제어할 수 있다.In
예를 들어, 핸드마우스 조작 영역은, 디스플레이의 표시영역에 매핑될 수 있다. 이 경우, 제1 손의 이동에 따라 제어되는 마우스 이동 이벤트를 통해 디스플레이의 마우스 포인트가 이동될 수 있다.For example, the hand mouse operation area can be mapped to the display area of the display. In this case, the mouse point of the display can be moved through the mouse movement event controlled according to the movement of the first hand.
이러한 제1 손의 이동은, 핸드마우스 조작 영역이 갖는 3차원 좌표축의 X-축 및 Y-축 중 적어도 하나의 축 방향으로의 이동을 포함할 수 있다.Such movement of the first hand may include movement of at least one of the X-axis and Y-axis of the three-dimensional coordinate axis of the hand mouse operation region in the axial direction.
이와 같이, 본 실시예에 따르면, 제1 손의 이동을 통해 디스플레이의 마우스 포인트의 이동을 제어할 수 있다.As described above, according to the present embodiment, the movement of the mouse point of the display can be controlled through the movement of the first hand.
다른 실시예에서, 제어 방법은, 도 8에 도시된 단계들(810 및 820) 이외에, 도 9에 도시된 단계들(910 및 920)을 더 포함할 수 있다.In another embodiment, the control method may further include
도 9는 본 발명의 다른 실시예에 있어서, 멀티-모달 시스템의 제어 방법에 더 포함 가능한 과정의 예를 도시한 흐름도이다.9 is a flowchart illustrating an example of a process that can be further included in a control method of a multi-modal system in another embodiment of the present invention.
단계(910)에서 이동 인식부(711)는, 차원 좌표축에서, 제1 손의 Z-축 방향으로의 이동을 인식할 수 있다.In
단계(920)에서 이벤트 제어부(712)는, 제1 손의 Z-축 방향으로의 이동에 따라 마우스 클릭 이벤트의 발생을 제어할 수 있다.In
이러한 단계(910) 및 단계(920)는, 도 8의 단계(820) 이후에 수행되거나 또는 도 8의 단계(810) 이전에 수행될 수 있다. 도 9에서는 단계(910) 및 단계(920)가 단계(820) 이후에 수행되는 예를 나타내고 있다.This
이와 같이, 본 실시예에 따르면, 한 손으로 제어 가능한 핸드마우스에서 제1 손의 x, y 좌표 이동을 통해 마우스 포인트의 이동을 제어할 수 있고, 제1 손의 z 좌표 이동을 통해 마우스 클릭을 제어할 수 있다.As described above, according to the present embodiment, it is possible to control the movement of the mouse point through the movement of the x and y coordinates of the first hand in the hand mouse which can be controlled by one hand, Can be controlled.
또 다른 실시예에서, 제어 방법은, 도 8에 도시된 단계들(810 및 820) 이외에, 도 10에 도시된 단계들(1010 및 1020)을 더 포함할 수 있다.In yet another embodiment, the control method may further include
도 10은 본 발명의 또 다른 실시예에 있어서, 멀티-모달 시스템의 제어 방법에 더 포함 가능한 과정의 예를 도시한 흐름도이다.10 is a flowchart illustrating an example of a process that may be further included in a control method of a multi-modal system according to another embodiment of the present invention.
단계(1010)에서 이동 인식부(711)는 사용자의 제2 손의 이동을 인식할 수 있다.In
단계(1020)에서 이벤트 제어부(712)는 제2 손의 이동에 따라 마우스 클릭 이벤트를 제어할 수 있다.In
이러한 단계(1010) 및 단계(1020)는, 도 8의 단계(820) 이후에 수행되거나 또는 도 8의 단계(810) 이전에 수행될 수 있다. 도 10에서는 단계(1010) 및 단계(1020)가 단계(820) 이후에 수행되는 예를 나타내고 있다.These
이미 설명한 바와 같이, 핸드마우스 조작 영역은, 디스플레이의 표시영역에 매핑될 수 있다. 이때, 제2 손의 이동에 따라 제어되는 마우스 클릭 이벤트를 통해 디스플레이의 마우스 포인트의 위치에서 마우스 클릭이 발생될 수 있다. 예를 들어, 제2 손의 이동은, 핸드마우스 조작 영역이 갖는 3차원 좌표축의 Z-축 방향으로 기설정된 거리 이상 이동하는 동작을 포함할 수 있다. 또한, 이벤트 제어부(712)는 단계(1020)에서 Z-축 방향으로 기설정된 거리 이상 이동하는 동작이 기설정된 시간 범위 내에서 연속으로 인식되는 경우, 마우스 더블클릭 이벤트를 제어할 수 있다.As described above, the hand mouse operation area can be mapped to the display area of the display. At this time, a mouse click may occur at the position of the mouse point of the display through a mouse click event controlled according to the movement of the second hand. For example, the movement of the second hand may include an operation of moving over a predetermined distance in the Z-axis direction of the three-dimensional coordinate axis of the hand mouse operation region. The
이와 같이, 본 실시예에 따르면, 양손 핸드마우스에 따라 제1 손을 통해 마우스의 이동을, 제2 손을 통해 마우스의 클릭을 각각 제어할 수 있으며, 제2 손의 동작에 따라 마우스의 더블클릭을 제어하는 것도 가능해진다.As described above, according to the present embodiment, it is possible to control the movement of the mouse through the first hand and the click of the mouse through the second hand, respectively, in accordance with the two-handed mouse, Can be controlled.
또 다른 실시예에서, 이동 인식부(711)는 단계(810)에서 사용자의 제2 손의 이동을 더 인식할 수 있다. 이때, 제어 방법은 제1 손의 이동 및 상기 제2 손의 이동에 따라 마우스 드래그 이벤트를 제어하는 단계(미도시)를 더 포함할 수 있다. 예를 들어, 상기 미도시 단계에서 이벤트 제어부(712)는, 제2 손이 핸드마우스 조작 영역이 갖는 3차원 좌표축의 Z-축 방향으로 기설정된 거리 이상 이동한 상태에서 제1 손이 3차원 좌표축의 X-축 및 Y-축 중 적어도 하나의 방향으로 이동하는 경우, 마우스 드래그 이벤트를 제어할 수 있다. 이 경우, 제2 손의 이동이 발생된 시점의 디스플레이의 마우스 포인트의 위치에서부터 제1 손의 이동에 따라 디스플레이에서 드래그가 발생될 수 있다.In another embodiment, the
또 다른 실시예에서, 이동 인식부(711)는 단계(810)에서 사용자의 제2 손의 이동을 더 인식할 수 있다. 이때, 제어 방법은 제1 손의 이동 및 제2 손의 이동에 따라 마우스 휠 스크롤 이벤트를 제어하는 단계(미도시)를 더 포함할 수 있다. 예를 들어, 상기 미도시 단계에서 이벤트 제어부(712)는, 제1 손이 핸드마우스 조작 영역이 갖는 3차원 좌표축의 Z-축 방향으로 기설정된 거리 이상 이동한 상태에서 제2 손이 3차원 좌표축의 Y-축 방향으로 이동하는 경우, 마우스 휠 스크롤 이벤트를 제어할 수 있다.In another embodiment, the
이상에서 설명한 핸드마우스 조작 영역은, 사용자에 대해 인식된 특징점으로부터 기설정된 거리만큼 이격된 좌표에 기반하여 결정될 수 있다. 여기서, 기설정된 거리는 사용자의 키에 기설정된 조정 인수를 곱한 값에서 상기 사용자의 키를 뺀 값을 포함할 수 있다.The above-described hand mouse operation area can be determined based on coordinates spaced by a predetermined distance from the recognized minutiae for the user. Here, the predetermined distance may include a value obtained by subtracting the key of the user from a value obtained by multiplying the user's key by a preset adjustment factor.
예를 들어, 핸드마우스 조작 영역은, 사용자를 마주보는 방향을 기준으로, 사용자의 우측 어깨의 특징점에서 좌측으로 기설정된 거리를 이동한 좌표의 x값, 사용자의 좌측 어깨의 특징점에서 우측으로 기설정된 거리를 이동한 좌표의 x값, 사용자의 머리의 특징점에서 상단으로 기설정된 거리를 이동한 좌표의 y값 및 사용자의 엉치뼈의 특징점에서 상단으로 기설정된 거리를 이동한 좌표의 y값에 기반하여 결정될 수 있다. 이러한 핸드마우스 조작 영역의 결정예는 이미 도 4를 통해 설명한 바 있다.For example, the hand mouse operation area may include an x value of a coordinate shifted by a predetermined distance to the left from a minutiae of a right shoulder of a user on the basis of a direction facing the user, Based on the x value of the coordinates shifting the distance, the y value of the coordinates shifted from the feature point of the user's head to a predetermined distance to the top, and the y value of the coordinates shifted by a predetermined distance from the feature point of the user's bony bone to the top Can be determined. Such an example of determination of the hand mouse operation area has already been described with reference to FIG.
이상에서 설명한 이동 인식부(711)는 카메라 및 깊이 센서를 이용하여 생성된 이미지의 상기 핸드마우스 조작 영역에서 제1 손 및 제2 손 중 적어도 하나의 이동을 인식할 수 있다.The
이와 같이, 본 발명의 실시예들에 따르면, 직관적인 손동작을 인식하는 것과 모니터에 그것을 매핑하기 위한 새로운 마우스 이벤트 알고리즘에 기반하여 사용자들이 쉽고 직관적으로 핸드마우스 이벤트를 다룰 수 있다.Thus, according to embodiments of the present invention, users can easily and intuitively handle hand mouse events based on recognizing intuitive hand gestures and new mouse event algorithms for mapping them to a monitor.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
Claims (22)
핸드마우스 조작 영역에서의 사용자의 제1 손의 이동을 인식하는 단계; 및
상기 핸드마우스 조작 영역에서의 상기 제1 손의 이동에 따라 마우스 이동 이벤트를 제어하는 단계
를 포함하고,
상기 핸드마우스 조작 영역은, 사용자에 대해 인식된 특징점으로부터 기설정된 거리만큼 이격된 좌표에 기반하여 결정되고,
상기 기설정된 거리는, 상기 사용자의 키에 기설정된 조정 인수를 곱한 값에서 상기 사용자의 키를 뺀 값을 포함하는 것을 특징으로 하는 제어 방법.A method of controlling a multi-modal system,
Recognizing movement of the first hand of the user in the hand mouse operation area; And
Controlling a mouse movement event in accordance with the movement of the first hand in the hand mouse operation area
Lt; / RTI >
Wherein the hand mouse operation region is determined based on coordinates spaced from a recognized feature point for a user by a predetermined distance,
Wherein the predetermined distance includes a value obtained by subtracting the key of the user from a value obtained by multiplying the key of the user by a preset adjustment factor.
상기 핸드마우스 조작 영역은, 디스플레이의 표시영역에 매핑되고,
상기 제1 손의 이동에 따라 제어되는 마우스 이동 이벤트를 통해 상기 디스플레이의 마우스 포인트가 이동되는 것을 특징으로 하는 제어 방법.The method according to claim 1,
Wherein the hand mouse operation area is mapped to a display area of the display,
Wherein a mouse point of the display is moved through a mouse movement event controlled according to the movement of the first hand.
상기 제1 손의 이동은, 상기 핸드마우스 조작 영역이 갖는 3차원 좌표축의 X-축 및 Y-축 중 적어도 하나의 축 방향으로의 이동을 포함하는 것을 특징으로 하는 제어 방법.The method according to claim 1,
Wherein the movement of the first hand includes movement of at least one of an X-axis and a Y-axis of the three-dimensional coordinate axis of the hand mouse operation region in the axial direction.
상기 3차원 좌표축에서, 상기 제1 손의 Z-축 방향으로의 이동을 인식하는 단계; 및
상기 제1 손의 Z-축 방향으로의 이동에 따라 마우스 클릭 이벤트의 발생을 제어하는 단계
를 더 포함하는 것을 특징으로 하는 제어 방법.The method of claim 3,
Recognizing movement of the first hand in the Z-axis direction on the three-dimensional coordinate axis; And
Controlling the generation of a mouse click event in accordance with the movement of the first hand in the Z-axis direction
Further comprising the steps of:
상기 사용자의 제2 손의 이동을 인식하는 단계; 및
상기 제2 손의 이동에 따라 마우스 클릭 이벤트를 제어하는 단계
를 더 포함하는 것을 특징으로 하는 제어 방법.The method according to claim 1,
Recognizing movement of the second hand of the user; And
Controlling a mouse click event according to the movement of the second hand
Further comprising the steps of:
상기 핸드마우스 조작 영역은, 디스플레이의 표시영역에 매핑되고,
상기 제2 손의 이동에 따라 제어되는 마우스 클릭 이벤트를 통해 상기 디스플레이의 마우스 포인트의 위치에서 마우스 클릭이 발생되는 것을 특징으로 하는 제어 방법.6. The method of claim 5,
Wherein the hand mouse operation area is mapped to a display area of the display,
Wherein a mouse click is generated at a position of a mouse point of the display through a mouse click event controlled according to the movement of the second hand.
상기 제2 손의 이동은, 상기 핸드마우스 조작 영역이 갖는 3차원 좌표축의 Z-축 방향으로 기설정된 거리 이상 이동하는 동작을 포함하는 것을 특징으로 하는 제어 방법.6. The method of claim 5,
Wherein the movement of the second hand includes an operation of moving at least a predetermined distance in the Z-axis direction of the three-dimensional coordinate axis of the hand mouse operation region.
상기 마우스 클릭 이벤트를 제어하는 단계는,
상기 Z-축 방향으로 기설정된 거리 이상 이동하는 동작이 기설정된 시간 범위 내에서 연속으로 인식되는 경우, 마우스 더블클릭 이벤트를 제어하는 것을 특징으로 하는 제어 방법.8. The method of claim 7,
Wherein the controlling the mouse click event comprises:
And a mouse double-click event is controlled when an operation of moving in a Z-axis direction over a predetermined distance is consecutively recognized within a predetermined time range.
상기 제1 손의 이동을 인식하는 단계는,
상기 사용자의 제2 손의 이동을 더 인식하고,
상기 제1 손의 이동 및 상기 제2 손의 이동에 따라 마우스 드래그 이벤트를 제어하는 단계
를 더 포함하는 것을 특징으로 하는 제어 방법.The method according to claim 1,
Wherein recognizing movement of the first hand comprises:
Further recognizing movement of the second hand of the user,
Controlling a mouse drag event in accordance with the movement of the first hand and the movement of the second hand
Further comprising the steps of:
상기 마우스 드래그 이벤트를 제어하는 단계는,
상기 제2 손이 상기 핸드마우스 조작 영역이 갖는 3차원 좌표축의 Z-축 방향으로 기설정된 거리 이상 이동한 상태에서 상기 제1 손이 상기 3차원 좌표축의 X-축 및 Y-축 중 적어도 하나의 방향으로 이동하는 경우, 상기 마우스 드래그 이벤트를 제어하는 것을 특징으로 하는 제어 방법.10. The method of claim 9,
Wherein controlling the mouse drag event comprises:
Wherein the first hand moves at least one of the X-axis and Y-axis of the three-dimensional coordinate axis in a state where the second hand is moved in a Z-axis direction of the three-dimensional coordinate axis of the hand- The control unit controls the mouse drag event.
상기 핸드마우스 조작 영역은, 디스플레이의 표시영역에 매핑되고,
상기 제2 손의 이동이 발생된 시점의 상기 디스플레이의 마우스 포인트의 위치에서부터 상기 제1 손의 이동에 따라 상기 디스플레이에서 드래그가 발생되는 것을 특징으로 하는 제어 방법.10. The method of claim 9,
Wherein the hand mouse operation area is mapped to a display area of the display,
Wherein a drag is generated in the display in accordance with the movement of the first hand from the position of the mouse point of the display at the time of movement of the second hand.
상기 제1 손의 이동을 인식하는 단계는,
상기 사용자의 제2 손의 이동을 더 인식하고,
상기 제1 손의 이동 및 상기 제2 손의 이동에 따라 마우스 휠 스크롤 이벤트를 제어하는 단계
를 더 포함하는 것을 특징으로 하는 제어 방법.The method according to claim 1,
Wherein recognizing movement of the first hand comprises:
Further recognizing movement of the second hand of the user,
Controlling a mouse wheel scroll event in accordance with the movement of the first hand and the movement of the second hand
Further comprising the steps of:
상기 마우스 휠 스크롤 이벤트를 제어하는 단계는,
상기 제1 손이 상기 핸드마우스 조작 영역이 갖는 3차원 좌표축의 Z-축 방향으로 기설정된 거리 이상 이동한 상태에서 상기 제2 손이 상기 3차원 좌표축의 Y-축 방향으로 이동하는 경우, 상기 마우스 휠 스크롤 이벤트를 제어하는 것을 특징으로 하는 제어 방법.13. The method of claim 12,
Wherein controlling the mouse wheel scroll event comprises:
When the second hand moves in the Y-axis direction of the three-dimensional coordinate axis in a state where the first hand is moved by a predetermined distance or more in the Z-axis direction of the three-dimensional coordinate axis of the hand- And the wheel scroll event is controlled.
핸드마우스 조작 영역에서의 사용자의 제1 손의 이동을 인식하는 단계; 및
상기 핸드마우스 조작 영역에서의 상기 제1 손의 이동에 따라 마우스 이동 이벤트를 제어하는 단계
를 포함하고,
상기 핸드마우스 조작 영역은, 사용자에 대해 인식된 특징점으로부터 기설정된 거리만큼 이격된 좌표에 기반하여 결정되고,
상기 핸드마우스 조작 영역은, 상기 사용자를 마주보는 방향을 기준으로, 상기 사용자의 우측 어깨의 특징점에서 좌측으로 기설정된 거리를 이동한 좌표의 x값, 상기 사용자의 좌측 어깨의 특징점에서 우측으로 상기 기설정된 거리를 이동한 좌표의 x값, 상기 사용자의 머리의 특징점에서 상단으로 상기 기설정된 거리를 이동한 좌표의 y값 및 상기 사용자의 엉치뼈의 특징점에서 상단으로 상기 기설정된 거리를 이동한 좌표의 y값에 기반하여 결정되는 것을 특징으로 하는 제어 방법.A method of controlling a multi-modal system,
Recognizing movement of the first hand of the user in the hand mouse operation area; And
Controlling a mouse movement event in accordance with the movement of the first hand in the hand mouse operation area
Lt; / RTI >
Wherein the hand mouse operation region is determined based on coordinates spaced from a recognized feature point for a user by a predetermined distance,
Wherein the hand mouse operation region includes an x value of a coordinate shifted by a predetermined distance to the left from a feature point of the right shoulder of the user on the basis of a direction facing the user, A y value of coordinates obtained by shifting the predetermined distance from the feature point of the user's head to the upper end, and a y value of the coordinates shifted from the feature point of the user's bony bone to the upper end y < / RTI > value.
상기 인식하는 단계는,
카메라 및 깊이 센서를 이용하여 생성된 이미지의 상기 핸드마우스 조작 영역에서, 상기 사용자의 손을 인식하는 것을 특징으로 하는 제어 방법.The method according to claim 1,
Wherein the recognizing comprises:
And recognizes the hand of the user in the hand mouse operation area of the image generated using the camera and the depth sensor.
핸드마우스 조작 영역에서의 사용자의 제1 손의 이동을 인식하는 이동 인식부; 및
상기 핸드마우스 조작 영역에서의 상기 제1 손의 이동에 따라 마우스 이동 이벤트를 제어하는 이벤트
를 포함하고,
상기 핸드마우스 조작 영역은, 사용자에 대해 인식된 특징점으로부터 기설정된 거리만큼 이격된 좌표에 기반하여 결정되고,
상기 기설정된 거리는, 상기 사용자의 키에 기설정된 조정 인수를 곱한 값에서 상기 사용자의 키를 뺀 값을 포함하는 것을 특징으로 하는 멀티-모달 시스템.In a multi-modal system,
A movement recognition unit for recognizing movement of the first hand of the user in the hand mouse operation area; And
An event for controlling a mouse movement event in accordance with the movement of the first hand in the hand mouse operation area
Lt; / RTI >
Wherein the hand mouse operation region is determined based on coordinates spaced from a recognized feature point for a user by a predetermined distance,
Wherein the predetermined distance includes a value obtained by subtracting the key of the user from a value obtained by multiplying the key of the user by a preset adjustment factor.
상기 이동 인식부는,
상기 사용자의 제2 손의 이동을 더 인식하고, 상기 제2 손의 이동에 따라 마우스 클릭 이벤트를 제어하는 것을 특징으로 하는 멀티-모달 시스템.20. The method of claim 19,
Wherein the movement recognition unit comprises:
Further recognizing movement of the second hand of the user and controlling a mouse click event in accordance with movement of the second hand.
상기 이동 인식부는,
상기 사용자의 제2 손의 이동을 더 인식하고,
상기 제1 손의 이동 및 상기 제2 손의 이동에 따라 마우스 드래그 이벤트 및 마우스 휠 이벤트 중 하나의 이벤트를 제어하는 것을 특징으로 하는 멀티-모달 시스템.20. The method of claim 19,
Wherein the movement recognition unit comprises:
Further recognizing movement of the second hand of the user,
And controls an event of one of a mouse drag event and a mouse wheel event in accordance with the movement of the first hand and the movement of the second hand.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140076507A KR101558094B1 (en) | 2014-06-23 | 2014-06-23 | Multi-modal system using for intuitive hand motion and control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140076507A KR101558094B1 (en) | 2014-06-23 | 2014-06-23 | Multi-modal system using for intuitive hand motion and control method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101558094B1 true KR101558094B1 (en) | 2015-10-12 |
Family
ID=54347159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140076507A KR101558094B1 (en) | 2014-06-23 | 2014-06-23 | Multi-modal system using for intuitive hand motion and control method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101558094B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101847577B1 (en) * | 2016-09-30 | 2018-04-10 | 포항공과대학교 산학협력단 | 3d interaction method for display |
-
2014
- 2014-06-23 KR KR1020140076507A patent/KR101558094B1/en active IP Right Grant
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101847577B1 (en) * | 2016-09-30 | 2018-04-10 | 포항공과대학교 산학협력단 | 3d interaction method for display |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11392212B2 (en) | Systems and methods of creating a realistic displacement of a virtual object in virtual reality/augmented reality environments | |
US11237625B2 (en) | Interaction engine for creating a realistic experience in virtual reality/augmented reality environments | |
US11954808B2 (en) | Rerendering a position of a hand to decrease a size of a hand to create a realistic virtual/augmented reality environment | |
US11875012B2 (en) | Throwable interface for augmented reality and virtual reality environments | |
US10761612B2 (en) | Gesture recognition techniques | |
JP6469706B2 (en) | Modeling structures using depth sensors | |
US20130010071A1 (en) | Methods and systems for mapping pointing device on depth map | |
JP5807686B2 (en) | Image processing apparatus, image processing method, and program | |
KR20120068253A (en) | Method and apparatus for providing response of user interface | |
RU2708027C1 (en) | Method of transmitting motion of a subject from a video to an animated character | |
US11009963B2 (en) | Sign language inputs to a vehicle user interface | |
KR101558094B1 (en) | Multi-modal system using for intuitive hand motion and control method thereof | |
KR101611709B1 (en) | Multi-modal system for displaying hand mouse recognition region and mapping between hand mouse and monitor user interface and control method thereof | |
Maidi et al. | Interactive media control using natural interaction-based Kinect | |
Chu et al. | A study of motion recognition system using a smart phone | |
KR20200127312A (en) | Apparatus and method for shopping clothes using holographic images | |
KR20200116195A (en) | Apparatus and method for shopping clothes using holographic images | |
KR20200115967A (en) | Apparatus and method for shopping clothes using holographic images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180927 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190722 Year of fee payment: 5 |