KR102280412B1 - Electronic terminal device that performs control command execution and feedback output corresponding to a user's hand gesture and operating method thereof - Google Patents
Electronic terminal device that performs control command execution and feedback output corresponding to a user's hand gesture and operating method thereof Download PDFInfo
- Publication number
- KR102280412B1 KR102280412B1 KR1020200060858A KR20200060858A KR102280412B1 KR 102280412 B1 KR102280412 B1 KR 102280412B1 KR 1020200060858 A KR1020200060858 A KR 1020200060858A KR 20200060858 A KR20200060858 A KR 20200060858A KR 102280412 B1 KR102280412 B1 KR 102280412B1
- Authority
- KR
- South Korea
- Prior art keywords
- gesture
- user
- vector
- determination reference
- hand
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- 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/002—Specific input/output arrangements not covered by G06F3/01 - G06F3/16
- G06F3/005—Input arrangements through a video camera
-
- G06K9/00355—
-
- G06K9/6201—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
-
- G06K2209/055—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/03—Recognition of patterns in medical or anatomical images
- G06V2201/033—Recognition of patterns in medical or anatomical images of skeletal patterns
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
Abstract
Description
본 발명은 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치 및 그 동작 방법에 대한 것이다.The present invention relates to an electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback, and an operating method thereof.
최근, 터치스크린이 탑재된 다양한 전자 단말 장치가 출시되면서, 이러한 전자 단말 장치를 제어하기 위한 다양한 인터페이싱 기술이 등장하고 있다. 터치스크린이 탑재된 전자 단말 장치는 터치스크린 상에 입력되는 사용자의 터치 입력 패턴을 인식하여 해당 패턴에 대응되는 제어 명령을 실행하는 형태로 동작한다.Recently, as various electronic terminal devices equipped with touch screens have been released, various interfacing technologies for controlling such electronic terminal devices have emerged. An electronic terminal device equipped with a touch screen recognizes a user's touch input pattern input on the touch screen and executes a control command corresponding to the pattern.
아울러, 최근에는 VR(Virtual Reality) 기기 등이 등장함에 따라 별도의 콘트롤러 없이 사용자의 제스처만으로 기기를 제어할 수 있도록 하는 인터페이싱 기술에 대한 연구가 활발하게 진행되고 있다.In addition, recently, with the advent of virtual reality (VR) devices, research on an interfacing technology that allows a device to be controlled only with a user's gesture without a separate controller is being actively conducted.
이러한 인터페이싱 기술은 소정의 카메라를 통해 사용자의 손 모양을 촬영한 후 촬영된 이미지에서의 사용자의 손 모양에 따라 그에 대응되는 적절한 제어 명령을 전자 단말 장치 상에 인가하도록 구성된다.This interfacing technique is configured to photograph a user's hand shape through a predetermined camera and then apply an appropriate control command corresponding thereto to the electronic terminal device according to the user's hand shape in the captured image.
이렇게, 사용자가 특정 형태의 손 모양을 만드는 것만으로 기기를 제어할 수 있도록 하는 인터페이싱 기술은 VR 기기 등과 같이 별도의 콘트롤러를 사용하지 않는 차세대 멀티미디어 장비에서의 활용성이 높다는 점에서, 기술에 대한 수요가 점점 증가하는 추세이다.In this way, the interfacing technology, which allows the user to control the device only by making a specific shape of the hand, has high utility in next-generation multimedia equipment that does not use a separate controller, such as a VR device, so the demand for the technology is high. is a growing trend.
한편, 사용자는 제스처만으로 기기를 제어할 수 있도록 하는 인터페이싱 기술을 이용할 때, 자신이 전자 단말 장치에 제스처를 제대로 인식시켰는지 여부를 파악하기 힘든 경우가 많다. 그래서, 사용자가 제스처를 전자 단말 장치에 인식시켰을 때, 사용자에게 해당 제스처가 정확하게 인식되었는지 여부를 알려주기 위한 피드백 기술이 도입될 필요가 있다.On the other hand, when using an interfacing technology that allows a user to control a device using only a gesture, it is often difficult to determine whether the user has properly recognized the gesture in the electronic terminal device. Therefore, when the user recognizes the gesture to the electronic terminal device, there is a need to introduce a feedback technology for notifying the user whether the gesture has been correctly recognized.
예컨대, 사용자가 전자 단말 장치에 소정의 제스처를 인식시켰을 때, 특정 애니메이션 효과가 디스플레이되거나 소리가 출력되는 등의 피드백이 출력된다면, 사용자는 자신이 전자 단말 장치에 제스처를 정확하게 인식시켰는지 여부를 쉽게 파악할 수 있을 것이다. 만약, 사용자는 자신이 입력한 특정 제스처에 대응되는 피드백이 출력되지 않는 경우, 전자 단말 장치에서 제스처가 제대로 인식되지 않은 것으로 파악할 수 있고, 전자 단말 장치에 제스처를 다시 인식시킴으로써, 자신이 원하는 제어 명령을 전자 단말 장치에 정확히 인가할 수 있을 것이다.For example, if feedback such as a specific animation effect is displayed or a sound is output when the user recognizes a predetermined gesture in the electronic terminal device, the user can easily determine whether the user has correctly recognized the gesture in the electronic terminal device. you will be able to figure out If the feedback corresponding to the specific gesture input by the user is not output, the user may recognize that the gesture is not properly recognized in the electronic terminal device, and by re-recognizing the gesture in the electronic terminal device, a control command desired by the user can be accurately applied to the electronic terminal device.
본 발명은 사용자가 소정의 손 모양을 취하게 되면, 카메라를 통해 사용자의 손에 대한 이미지를 획득하고, 상기 이미지에서 사용자의 손에 대한 관절 포인트들을 추출하며, 사용자의 손 영역에 대해 제스처 확인을 위한 소정의 기준 원을 생성한 후 각 관절 포인트 중 어떤 관절 포인트가 상기 기준 원 내에 속하는지 속하지 않은지 확인함으로써, 사용자의 손 모양에 대응되는 적절한 제어 명령을 실행할 수 있는 전자 단말 장치 및 그 동작 방법을 제시하고자 한다.According to the present invention, when the user takes a predetermined hand shape, an image of the user's hand is obtained through a camera, joint points of the user's hand are extracted from the image, and gesture confirmation is performed on the user's hand region. An electronic terminal device capable of executing an appropriate control command corresponding to a user's hand shape by generating a predetermined reference circle for would like to present
또한, 본 발명에 따른 전자 단말 장치 및 그 동작 방법은 사용자가 손 제스처를 전자 단말 장치에 입력하였을 때, 그에 대응되는 피드백을 출력해 줌으로써, 사용자가 자신이 입력한 손 제스처가 전자 단말 장치에서 정확히 인식되었는지 여부를 인지할 수 있도록 지원하고자 한다.In addition, the electronic terminal device and the method for operating the same according to the present invention output a corresponding feedback when a user inputs a hand gesture to the electronic terminal device, so that the hand gesture input by the user is accurately performed in the electronic terminal device. We want to support you in recognizing whether it has been recognized or not.
본 발명의 일실시예에 따른 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치는 미리 설정된 서로 다른 복수의 제어 명령들과, 상기 복수의 제어 명령들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 n(n은 2이상의 자연수)차원의 제스처 판단 기준 벡터들 - 상기 복수의 제스처 판단 기준 벡터들 각각은 '0'과 '1'의 코드를 성분으로 갖는 벡터임 - 이 저장되어 있는 제스처 판단 기준 벡터 저장부, 상기 복수의 제스처 판단 기준 벡터들과, 상기 복수의 제스처 판단 기준 벡터들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 제스처 매칭 알림 피드백 출력 정보들 - 상기 복수의 제스처 매칭 알림 피드백 출력 정보들 각각은 상기 전자 단말 장치를 통해 출력 가능한 피드백에 대한 정보를 의미함 - 이 저장되어 있는 제스처 매칭 알림 피드백 출력 정보 저장부, 카메라를 통해 상기 사용자의 손(Hand)을 촬영하여 상기 사용자의 손이 포함된 이미지를 획득하는 이미지 획득부, 상기 이미지에서 상기 사용자의 손 영역을 검출하고, 상기 사용자의 손 영역으로부터 n개의 관절 포인트들을 추출하는 관절 포인트 추출부, 상기 사용자의 손 영역에 대해 제스처 확인을 위한 가상의 기준 원(Circle)을 생성하는 기준 원 생성부, 상기 가상의 기준 원의 내부에 상기 n개의 관절 포인트들이 위치하는지 여부를 확인하여 상기 n개의 관절 포인트들 중 상기 가상의 기준 원의 내부에 위치하는 포인트에 대해 '1'의 코드를 할당하고, 상기 가상의 기준 원의 외부에 위치하는 포인트에 대해 '0'의 코드를 할당함으로써, 상기 n개의 관절 포인트들 각각에 할당된 코드를 성분으로 갖는 n차원의 제스처 벡터를 생성하는 제스처 벡터 생성부, 상기 제스처 판단 기준 벡터 저장부에 저장되어 있는 상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 유사도를 연산한 후 상기 복수의 제스처 판단 기준 벡터들 중 최대 값의 유사도를 갖는 것으로 확인되는 제1 제스처 판단 기준 벡터를 선택하는 유사도 연산부, 상기 제1 제스처 판단 기준 벡터가 선택되면, 상기 제1 제스처 판단 기준 벡터와 상기 제스처 벡터 간에 연산된 상기 최대 값의 유사도가 미리 설정된 임계치를 초과하는지 확인하고, 상기 최대 값의 유사도가 상기 임계치를 초과하는 것으로 확인되면, 상기 제스처 매칭 알림 피드백 출력 정보 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제스처 매칭 알림 피드백 출력 정보를 추출한 후 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백을 상기 전자 단말 장치를 통해 출력하는 피드백 출력부 및 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백이 출력되면, 상기 제스처 판단 기준 벡터 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제어 명령을 상기 사용자의 손의 모양에 대응되는 제어 명령으로 확인한 후 상기 제1 제어 명령을 실행하는 제어 명령 실행부를 포함한다.According to an embodiment of the present invention, the electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback is a plurality of preset different control commands and corresponding to each of the plurality of control commands. A plurality of preset different n (n is a natural number greater than or equal to 2) dimensional gesture determination reference vectors - Each of the plurality of gesture determination reference vectors is a vector having codes of '0' and '1' as components - this storage A gesture determination reference vector storage unit, the plurality of gesture determination reference vectors, and a plurality of different gesture matching notification feedback output information preset to correspond to each of the plurality of gesture determination reference vectors - the plurality of gestures Each of the matching notification feedback output information means information on feedback that can be output through the electronic terminal device - by capturing the user's hand through the stored gesture matching notification feedback output information storage unit and the camera An image acquisition unit for acquiring an image including the user's hand, a joint point extraction unit for detecting the user's hand region from the image, and extracting n joint points from the user's hand region, the user's hand region A reference circle generator for generating a virtual reference circle (Circle) for confirming a gesture, by checking whether the n joint points are located inside the virtual reference circle, the virtual among the n joint points By assigning a code of '1' to a point located inside the reference circle of , and a code of '0' to a point located outside the virtual reference circle, to each of the n joint points After calculating the similarity between the gesture vector and each of the plurality of gesture determination reference vectors stored in the gesture vector generation unit and the gesture determination reference vector storage unit for generating an n-dimensional gesture vector having the assigned code as a component, It is confirmed that the plurality of gesture determination reference vectors have the highest degree of similarity. A similarity calculating unit that selects a first gesture determination reference vector to be used. When the first gesture determination reference vector is selected, whether the similarity of the maximum value calculated between the first gesture determination reference vector and the gesture vector exceeds a preset threshold. If it is confirmed that the similarity of the maximum value exceeds the threshold, the first gesture matching notification feedback output information stored in correspondence with the first gesture determination reference vector is retrieved from the gesture matching notification feedback output information storage unit. After extraction, a feedback output unit for outputting a feedback according to the first gesture matching notification feedback output information through the electronic terminal device, and when the feedback according to the first gesture matching notification feedback output information is output, the gesture determination criterion vector storage unit and a control command execution unit configured to execute the first control command after checking a first control command stored in correspondence with the first gesture determination reference vector as a control command corresponding to the shape of the user's hand.
또한, 본 발명의 일실시예에 따른 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치의 동작 방법은 미리 설정된 서로 다른 복수의 제어 명령들과, 상기 복수의 제어 명령들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 n(n은 2이상의 자연수)차원의 제스처 판단 기준 벡터들 - 상기 복수의 제스처 판단 기준 벡터들 각각은 '0'과 '1'의 코드를 성분으로 갖는 벡터임 - 이 저장되어 있는 제스처 판단 기준 벡터 저장부를 유지하는 단계, 상기 복수의 제스처 판단 기준 벡터들과, 상기 복수의 제스처 판단 기준 벡터들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 제스처 매칭 알림 피드백 출력 정보들 - 상기 복수의 제스처 매칭 알림 피드백 출력 정보들 각각은 상기 전자 단말 장치를 통해 출력 가능한 피드백에 대한 정보를 의미함 - 이 저장되어 있는 제스처 매칭 알림 피드백 출력 정보 저장부를 유지하는 단계, 카메라를 통해 상기 사용자의 손을 촬영하여 상기 사용자의 손이 포함된 이미지를 획득하는 단계, 상기 이미지에서 상기 사용자의 손 영역을 검출하고, 상기 사용자의 손 영역으로부터 n개의 관절 포인트들을 추출하는 단계, 상기 사용자의 손 영역에 대해 제스처 확인을 위한 가상의 기준 원을 생성하는 단계, 상기 가상의 기준 원의 내부에 상기 n개의 관절 포인트들이 위치하는지 여부를 확인하여 상기 n개의 관절 포인트들 중 상기 가상의 기준 원의 내부에 위치하는 포인트에 대해 '1'의 코드를 할당하고, 상기 가상의 기준 원의 외부에 위치하는 포인트에 대해 '0'의 코드를 할당함으로써, 상기 n개의 관절 포인트들 각각에 할당된 코드를 성분으로 갖는 n차원의 제스처 벡터를 생성하는 단계, 상기 제스처 판단 기준 벡터 저장부에 저장되어 있는 상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 유사도를 연산한 후 상기 복수의 제스처 판단 기준 벡터들 중 최대 값의 유사도를 갖는 것으로 확인되는 제1 제스처 판단 기준 벡터를 선택하는 단계, 상기 제1 제스처 판단 기준 벡터가 선택되면, 상기 제1 제스처 판단 기준 벡터와 상기 제스처 벡터 간에 연산된 상기 최대 값의 유사도가 미리 설정된 임계치를 초과하는지 확인하고, 상기 최대 값의 유사도가 상기 임계치를 초과하는 것으로 확인되면, 상기 제스처 매칭 알림 피드백 출력 정보 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제스처 매칭 알림 피드백 출력 정보를 추출한 후 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백을 상기 전자 단말 장치를 통해 출력하는 단계 및 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백이 출력되면, 상기 제스처 판단 기준 벡터 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제어 명령을 상기 사용자의 손의 모양에 대응되는 제어 명령으로 확인한 후 상기 제1 제어 명령을 실행하는 단계를 포함한다.In addition, the method of operating an electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback according to an embodiment of the present invention includes a plurality of preset different control commands and the plurality of control commands. A plurality of different n (n is a natural number greater than or equal to 2) dimensional gesture determination reference vectors preset to correspond to each - Each of the plurality of gesture determination reference vectors has a code of '0' and '1' as a component vector - maintaining the stored gesture determination reference vector storage unit, the plurality of gesture determination reference vectors, and a plurality of different gesture matching notification feedback preset to correspond to each of the plurality of gesture determination reference vectors The output information - each of the plurality of gesture matching notification feedback output information means information on feedback outputable through the electronic terminal device - maintaining the stored gesture matching notification feedback output information storage unit; acquiring an image including the user's hand by photographing the user's hand through the steps, detecting the user's hand area from the image, and extracting n joint points from the user's hand area, the user generating a virtual reference circle for gesture confirmation for a hand region of , checking whether the n joint points are located inside the virtual reference circle and checking whether the n joint points are the virtual reference circle among the n joint points A code assigned to each of the n joint points by assigning a code of '1' to a point located inside of and assigning a code of '0' to a point located outside the virtual reference circle generating an n-dimensional gesture vector having as a component, calculating a degree of similarity between each of the plurality of gesture determination reference vectors stored in the gesture determination reference vector storage unit and the gesture vector, and then determining the plurality of gesture determination standards Determining the first gesture confirmed to have the maximum similarity among vectors selecting a reference vector; if the first gesture determination reference vector is selected, it is checked whether the degree of similarity between the maximum value calculated between the first gesture determination reference vector and the gesture vector exceeds a preset threshold, and the maximum value When it is confirmed that the similarity of , exceeds the threshold, first gesture matching notification feedback output information stored in correspondence to the first gesture determination reference vector is extracted from the gesture matching notification feedback output information storage unit, and then the first gesture outputting a feedback according to the matching notification feedback output information through the electronic terminal device, and when the feedback according to the first gesture matching notification feedback output information is output, the first gesture determination reference vector from the gesture determination reference vector storage unit and executing the first control command after confirming that the stored first control command corresponds to the control command corresponding to the shape of the user's hand.
본 발명은 사용자가 소정의 손 모양을 취하게 되면, 카메라를 통해 사용자의 손에 대한 이미지를 획득하고, 상기 이미지에서 사용자의 손에 대한 관절 포인트들을 추출하며, 사용자의 손 영역에 대해 제스처 확인을 위한 소정의 기준 원을 생성한 후 각 관절 포인트 중 어떤 관절 포인트가 상기 기준 원 내에 속하는지 속하지 않은지 확인함으로써, 사용자의 손 모양에 대응되는 적절한 제어 명령을 실행할 수 있는 전자 단말 장치 및 그 동작 방법을 제시할 수 있다.According to the present invention, when the user takes a predetermined hand shape, an image of the user's hand is obtained through a camera, joint points of the user's hand are extracted from the image, and gesture confirmation is performed on the user's hand region. An electronic terminal device capable of executing an appropriate control command corresponding to a user's hand shape by generating a predetermined reference circle for can present
또한, 본 발명에 따른 전자 단말 장치 및 그 동작 방법은 사용자가 손 제스처를 전자 단말 장치에 입력하였을 때, 그에 대응되는 피드백을 출력해 줌으로써, 사용자가 자신이 입력한 손 제스처가 전자 단말 장치에서 정확히 인식되었는지 여부를 인지할 수 있도록 지원할 수 있다.In addition, the electronic terminal device and the method for operating the same according to the present invention output a corresponding feedback when a user inputs a hand gesture to the electronic terminal device, so that the hand gesture input by the user is accurately performed in the electronic terminal device. It can help to recognize whether or not it has been recognized.
도 1은 본 발명의 일실시예에 따른 전자 단말 장치의 구조를 도시한 도면이다.
도 2 내지 도 5는 본 발명의 일실시예에 따른 전자 단말 장치의 동작을 설명하기 위한 도면이다.
도 6은 본 발명의 일실시예에 따른 전자 단말 장치의 동작 방법을 도시한 순서도이다.1 is a diagram showing the structure of an electronic terminal device according to an embodiment of the present invention.
2 to 5 are diagrams for explaining the operation of the electronic terminal device according to an embodiment of the present invention.
6 is a flowchart illustrating a method of operating an electronic terminal device according to an embodiment of the present invention.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. These descriptions are not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. While describing each drawing, like reference numerals are used for similar components, and unless otherwise defined, all terms used in this specification, including technical or scientific terms, refer to those of ordinary skill in the art to which the present invention belongs. It has the same meaning as is commonly understood by those who have it.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.In this document, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated. In addition, in various embodiments of the present invention, each of the components, functional blocks or means may be composed of one or more sub-components, and the electrical, electronic, and mechanical functions performed by each component are electronic. A circuit, an integrated circuit, an ASIC (Application Specific Integrated Circuit), etc. may be implemented as various well-known devices or mechanical elements, and may be implemented separately or two or more may be integrated into one.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.On the other hand, the blocks in the accompanying block diagram or steps in the flowchart are computer program instructions that are loaded in a processor or memory of equipment capable of data processing, such as a general-purpose computer, a special-purpose computer, a portable notebook computer, and a network computer, and perform specified functions. can be interpreted as meaning Since these computer program instructions may be stored in a memory provided in a computer device or in a memory readable by a computer, the functions described in the blocks of the block diagrams or the steps of the flowcharts are produced as articles of manufacture containing instruction means for performing the same. could be In addition, each block or each step may represent a module, segment, or portion of code comprising one or more executable instructions for executing the specified logical function(s). It should also be noted that, in some alternative embodiments, it is also possible for the functions recited in blocks or steps to be executed out of the prescribed order. For example, two blocks or steps shown one after another may be performed substantially simultaneously or in the reverse order, and in some cases, some blocks or steps may be omitted.
도 1은 본 발명의 일실시예에 따른 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치의 구조를 도시한 도면이다.1 is a diagram illustrating a structure of an electronic terminal device that executes a control command corresponding to a user's hand gesture and outputs a feedback according to an embodiment of the present invention.
도 1을 참조하면, 본 발명에 따른 전자 단말 장치(110)는 제스처 판단 기준 벡터 저장부(111), 제스처 매칭 알림 피드백 출력 정보 저장부(112), 이미지 획득부(113), 관절 포인트 추출부(114), 기준 원 생성부(115), 제스처 벡터 생성부(116), 유사도 연산부(117), 피드백 출력부(118) 및 제어 명령 실행부(119)를 포함한다.Referring to FIG. 1 , the
제스처 판단 기준 벡터 저장부(111)에는 미리 설정된 서로 다른 복수의 제어 명령들과, 상기 복수의 제어 명령들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 n(n은 2이상의 자연수)차원의 제스처 판단 기준 벡터들이 저장되어 있다.In the gesture determination reference
여기서, 상기 복수의 제스처 판단 기준 벡터들 각각은 '0'과 '1'의 코드를 성분으로 갖는 벡터를 의미한다.Here, each of the plurality of gesture determination reference vectors means a vector having codes of '0' and '1' as components.
관련해서, 'n=21'이라고 하는 경우, 제스처 판단 기준 벡터 저장부(111)에는 하기의 표 1과 같이 정보가 저장되어 있을 수 있다.In relation to this, when 'n=21', information may be stored in the gesture determination reference
제스처 매칭 알림 피드백 출력 정보 저장부(112)에는 상기 복수의 제스처 판단 기준 벡터들과, 상기 복수의 제스처 판단 기준 벡터들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 제스처 매칭 알림 피드백 출력 정보들이 저장되어 있다.The gesture matching notification feedback output
여기서, 상기 복수의 제스처 매칭 알림 피드백 출력 정보들 각각은 전자 단말 장치(110)를 통해 출력 가능한 피드백에 대한 정보를 의미한다. 관련해서, 상기 복수의 제스처 매칭 알림 피드백 출력 정보들 각각에 대응되는 피드백으로는 전자 단말 장치(110)의 스피커를 통해 출력될 수 있는 소정의 효과음, 전자 단말 장치(110)의 디스플레이를 통해 출력될 수 있는 소정의 화면 애니메이션 효과, 전자 단말 장치(110)에 탑재된 LED 모듈을 통해 출력될 수 있는 특정 색상의 빛, 전자 단말 장치(110)에 탑재된 햅틱 모듈을 통해 출력될 수 있는 진동 피드백 등을 의미한다.Here, each of the plurality of gesture matching notification feedback output information means information on feedback outputable through the
관련해서, 제스처 매칭 알림 피드백 출력 정보 저장부(112)에는 하기의 표 2와 같이 정보가 저장되어 있을 수 있다.In relation to this, information as shown in Table 2 below may be stored in the gesture matching notification feedback output
이미지 획득부(113)는 카메라를 통해 사용자의 손(Hand)을 촬영하여 상기 사용자의 손이 포함된 이미지를 획득한다.The
관절 포인트 추출부(114)는 상기 이미지에서 상기 사용자의 손 영역을 검출하고, 상기 사용자의 손 영역으로부터 n개의 관절 포인트들을 추출한다.The joint
여기서, 관절 포인트 추출부(114)는 CPM(Convolutional Pose Machines) 기술을 활용하여 상기 사용자의 손 영역으로부터 상기 n개의 관절 포인트들을 추출할 수 있다.Here, the joint
CPM이란 1명의 사람에 대해 사람 자세(Pose)를 출력하는 네트워크를 학습시킨 모델로, 사람의 관절 간의 관계를 이해하고, 출력을 정제(Refine)하기 위해 Multi-State의 네트워크 형태로 구성하고 이를 평가(Evaluation)한 것이 특징인 모델이다. CNN(Convolutional Neural Networks)을 이용해 각 관절의 Heatmap을 출력하는 네트워크 구조를 가지고 있으며, Stage 1의 결과는 이미지 특징(Feature)과 함께 Stage 2의 입력으로 다시 사용되고, 이렇게 반복적으로 동일한 Heatmap 결과를 여러 Stage에 걸쳐서 처리한 최종적인 결과가 CPM 네트워크의 출력이 된다. 이렇게 하는 것은 초반의 Stage에서는 일부분의 이미지 영역을 통해 관절을 찾아내고, 후반의 Stage에서는 더욱 커진 Receptive Field의 영향으로 서로 다른 관절 간의 관계까지 고려되므로 더욱 정확한 Heatmap 결과를 얻을 수 있기 때문이다.CPM is a model that trains a network that outputs a human pose for one person. In order to understand the relationship between human joints and refine the output, it is constructed in the form of a multi-state network and evaluated. It is a model characterized by evaluation. It has a network structure that outputs the heatmap of each joint using CNN (Convolutional Neural Networks), and the result of
이때, 관절 포인트 추출부(114)는 이러한 CPM 기술을 활용하여 상기 사용자의 손 영역으로부터 도 2에 도시된 그림과 같이 주요 관절 포인트인 21개의 관절 포인트들(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)을 추출할 수 있다.At this time, the joint
이때, 본 발명의 일실시예에 따르면, 관절 포인트 추출부(114)는 상기 n개의 관절 포인트들의 상기 사용자의 손 영역에서의 위치에 기초하여 상기 n개의 관절 포인트들 각각에 대응되는 순번을 할당할 수 있다.At this time, according to an embodiment of the present invention, the joint
관련해서, 관절 포인트 추출부(114)는 도 2에 도시된 그림과 같이, 21개의 관절 포인트들의 상기 사용자의 손 영역에서의 위치에 따라, 1부터 21까지의 순번을 하나씩 할당할 수 있다.In relation to this, as shown in the figure shown in FIG. 2 , the joint
기준 원 생성부(115)는 상기 사용자의 손 영역에 대해 제스처 확인을 위한 가상의 기준 원(Circle)을 생성한다.The
관련해서, 기준 원 생성부(115)는 도 3에서 도면부호 310으로 표시한 그림과 같이, 상기 사용자의 손 영역에 대해 제스처 확인을 위한 가상의 기준 원(310)을 생성할 수 있다.In relation to this, the reference
제스처 벡터 생성부(116)는 상기 가상의 기준 원의 내부에 상기 n개의 관절 포인트들이 위치하는지 여부를 확인하여 상기 n개의 관절 포인트들 중 상기 가상의 기준 원의 내부에 위치하는 포인트에 대해 '1'의 코드를 할당하고, 상기 가상의 기준 원의 외부에 위치하는 포인트에 대해 '0'의 코드를 할당함으로써, 상기 n개의 관절 포인트들 각각에 할당된 코드를 성분으로 갖는 n차원의 제스처 벡터를 생성한다.The
이때, 본 발명의 일실시예에 따르면, 제스처 벡터 생성부(116)는 상기 n개의 관절 포인트들 각각에 대응되는 순번에 따라 상기 n개의 관절 포인트들 각각에 할당된 코드를 벡터의 성분으로 하나씩 지정함으로써, 상기 제스처 벡터를 생성할 수 있다.At this time, according to an embodiment of the present invention, the
관련해서, 도 3에 도시된 그림과 같이, 21개의 관절 포인트들이 추출되었고, 1부터 21까지의 순번이 할당되었다고 하는 경우, 제스처 벡터 생성부(116)는 21개의 관절 포인트들 중 가상의 기준 원(310)의 내부에 위치하는 포인트에 대해 '1'의 코드를 할당하고, 가상의 기준 원(310)의 외부에 위치하는 포인트에 대해 '0'의 코드를 할당할 수 있다.In relation to, as shown in FIG. 3 , when 21 joint points are extracted and
그리고, 제스처 벡터 생성부(116)는 21개의 관절 포인트들의 순번에 따라 각 관절 포인트에 할당된 코드를 벡터의 성분으로 하나씩 순차적으로 지정함으로써, '[1 1 1 0 1 1 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0]'이라고 하는 21차원의 제스처 벡터를 생성할 수 있다.Then, the
유사도 연산부(117)는 제스처 판단 기준 벡터 저장부(111)에 저장되어 있는 상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 유사도를 연산한 후 상기 복수의 제스처 판단 기준 벡터들 중 최대 값의 유사도를 갖는 것으로 확인되는 제1 제스처 판단 기준 벡터를 선택한다.The
이때, 본 발명의 일실시예에 따르면, 유사도 연산부(117)는 상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 아다마르 곱(Hadamard product)을 연산하고, 상기 아다마르 곱의 연산에 따라 산출되는 벡터를 구성하는 성분에서 '1'의 코드 값이 존재하는 개수를 상기 유사도로 연산할 수 있다.At this time, according to an embodiment of the present invention, the
여기서, 아다마르 곱이란 같은 크기의 벡터나 행렬에서 각 성분을 곱하는 연산을 의미하는 것으로, [a b c]와 [x y z]라는 벡터가 존재할 때, 두 벡터 간의 아다마르 곱은 [ax by cz]로 연산될 수 있다.Here, the Hadamard product means the operation of multiplying each component in a vector or matrix of the same size. can
관련해서, 전술한 예시와 같이, 제스처 벡터 생성부(116)에서 '[1 1 1 0 1 1 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0]'이라는 21차원의 제스처 벡터가 생성되었다고 하고, 제스처 판단 기준 벡터 저장부(111)에 상기 표 1과 같이 정보가 저장되어 있다고 하는 경우, 유사도 연산부(117)는 제스처 판단 기준 벡터 저장부(111)에 저장되어 있는 첫 번째 제스처 판단 기준 벡터인 '[1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0]'과 '[1 1 1 0 1 1 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0]'이라는 제스처 벡터 간의 아다마르 곱을 연산하여 '[1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0]'이라는 벡터를 산출한 후 산출된 벡터를 구성하는 성분에서 '1'의 코드 값이 존재하는 개수인 '8'을 '[1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0]'이라는 제스처 판단 기준 벡터와 '[1 1 1 0 1 1 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0]'이라는 제스처 벡터 간의 유사도로 연산할 수 있다.In this regard, as in the above example, the
이러한 방식으로, 유사도 연산부(117)는 상기 표 1과 같은 제스처 판단 기준 벡터 저장부(111)에 저장되어 있는 제스처 판단 기준 벡터들과 상기 제스처 벡터 간의 유사도를 모두 연산할 수 있다.In this way, the
그 이후, 유사도 연산부(117)는 제스처 판단 기준 벡터 저장부(111)에 저장되어 있는 제스처 판단 기준 벡터들 중 최대 값의 유사도를 갖는 것으로 확인되는 제스처 판단 기준 벡터를 상기 제1 제스처 판단 기준 벡터로 선택할 수 있다.Thereafter, the
한편, 상기 복수의 제스처 판단 기준 벡터들 중 상기 최대 값의 유사도를 갖는 것으로 확인되는 제스처 판단 기준 벡터가 둘 이상 존재하는 상황도 고려해 볼 수 있다.Meanwhile, a situation in which two or more gesture determination reference vectors identified as having the maximum similarity among the plurality of gesture determination reference vectors exist may be considered.
관련해서, 본 발명의 일실시예에 따르면, 유사도 연산부(117)는 상기 복수의 제스처 판단 기준 벡터들 중 상기 최대 값의 유사도를 갖는 것으로 확인되는 제스처 판단 기준 벡터가 둘 이상 존재하는 경우, 상기 둘 이상의 제스처 판단 기준 벡터들 중 랜덤하게 선택된 어느 하나의 제스처 판단 기준 벡터를 상기 제1 제스처 판단 기준 벡터로 결정할 수 있다.In relation to this, according to an embodiment of the present invention, the
피드백 출력부(118)는 상기 제1 제스처 판단 기준 벡터가 선택되면, 상기 제1 제스처 판단 기준 벡터와 상기 제스처 벡터 간에 연산된 상기 최대 값의 유사도가 미리 설정된 임계치를 초과하는지 확인하고, 상기 최대 값의 유사도가 상기 임계치를 초과하는 것으로 확인되면, 제스처 매칭 알림 피드백 출력 정보 저장부(112)로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제스처 매칭 알림 피드백 출력 정보를 추출한 후 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백을 전자 단말 장치(110)를 통해 출력한다.When the first gesture determination reference vector is selected, the
제어 명령 실행부(119)는 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백이 출력되면, 제스처 판단 기준 벡터 저장부(111)로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제어 명령을 상기 사용자의 손의 모양에 대응되는 제어 명령으로 확인한 후 상기 제1 제어 명령을 실행한다.When the feedback according to the first gesture matching notification feedback output information is output, the control
관련해서, 상기 제1 제스처 판단 기준 벡터가 '[1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0]'으로 선택되었다고 하는 경우, 피드백 출력부(118)는 상기 제1 제스처 판단 기준 벡터인 '[1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0]'과 상기 제스처 벡터인 '[1 1 1 0 1 1 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0]' 간에 연산된 상기 최대 값의 유사도인 '8'이 상기 임계치를 초과하는지 확인할 수 있다.In this regard, when it is said that the first gesture determination reference vector is selected as '[1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0]', the
만약, 상기 임계치를 '7'이라고 하는 경우, 피드백 출력부(118)는 상기 최대 값의 유사도인 '8'이 상기 임계치인 '7'을 초과하는 것으로 확인함으로써, 상기 표 2와 같은 제스처 매칭 알림 피드백 출력 정보 저장부(112)로부터 상기 제1 제스처 판단 기준 벡터인 '[1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0]'에 대응되어 저장되어 있는 제1 제스처 매칭 알림 피드백 출력 정보인 '스피커를 통해 효과음을 출력'을 추출한 후 상기 제1 제스처 매칭 알림 피드백 출력 정보인 '스피커를 통해 효과음을 출력'에 따른 피드백을 전자 단말 장치(110)를 통해 출력할 수 있다.If the threshold value is '7', the
즉, 피드백 출력부(118)는 전자 단말 장치(110)에 구비된 스피커를 통해 소정의 효과음을 출력할 수 있다. 이를 통해, 사용자는 자신이 전자 단말 장치(110)에 제스처를 제대로 인식시킨 것으로 파악할 수 있다.That is, the
그 이후, 제어 명령 실행부(119)는 상기 표 1과 같은 제스처 판단 기준 벡터 저장부(111)로부터 '[1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0]'이라는 제스처 판단 기준 벡터에 대응되어 저장되어 있는 '제어 명령 1'을 상기 사용자의 손 모양에 대응되는 제어 명령으로 확인한 후 '제어 명령 1'을 실행할 수 있다.After that, the control
결국, 본 발명에 따른 전자 단말 장치(110)는 사용자가 소정의 손 모양을 취하게 되면, 카메라를 통해 사용자의 손에 대한 이미지를 획득하고, 상기 이미지에서 사용자의 손에 대한 관절 포인트들을 추출하며, 사용자의 손 영역에 대해 제스처 확인을 위한 소정의 기준 원을 생성한 후 각 관절 포인트 중 어떤 관절 포인트가 상기 기준 원 내에 속하는지 속하지 않은지 확인함으로써, 사용자의 손 모양에 대응되는 적절한 제어 명령을 실행할 수 있다. 이를 통해, 사용자는 별도의 콘트롤러 없이, 손을 이용하여 소정의 제스처를 취하는 것만으로 전자 단말 장치(110)를 손쉽게 제어할 수 있다.After all, when the user takes a predetermined hand shape, the electronic
또한, 본 발명에 따른 전자 단말 장치(110)는 사용자가 손 제스처를 전자 단말 장치(110)에 입력하였을 때, 그에 대응되는 피드백을 출력해 줌으로써, 사용자가 자신이 입력한 손 제스처가 전자 단말 장치(110)에 정확히 인식되었는지 여부를 인지할 수 있도록 지원할 수 있다.In addition, when the user inputs a hand gesture to the electronic
본 발명에 따른 전자 단말 장치(110)는 어떤 관절 포인트가 기준 원에 포함되는지 포함되지 않는지 확인함으로써, 사용자의 손 모양에 대응되는 제스처를 결정하는 방식을 취하고 있다는 점에서, 사용자의 손이 촬영된 이미지의 크기 등에 따라 상기 기준 원의 크기나 위치가 적절하게 지정되어야 할 필요가 있다.The electronic
이와 관련해서, 본 발명의 일실시예에 따르면, 기준 원 생성부(115)는 생성부(120) 및 배치부(121)를 포함할 수 있다.In this regard, according to an embodiment of the present invention, the reference
생성부(120)는 상기 사용자의 손 영역을 둘러싸는 가상의 사각 영역을 생성하고, 상기 가상의 사각 영역과, 미리 설정된 모양과 크기를 갖는 기준 사각 영역을 서로 비교하여 상기 기준 사각 영역에 대한 상기 가상의 사각 영역의 가로 축 크기 비율과 세로 축 크기 비율을 확인한 후 미리 설정된 모양과 크기를 갖는 참조 원의 가로 축 지름에 대해 상기 가로 축 크기 비율을 곱하고, 상기 참조 원의 세로 축 지름에 대해 상기 세로 축 크기 비율을 곱하여 상기 참조 원의 모양과 크기를 변경함으로써, 상기 가상의 기준 원을 생성한다.The generating
그리고, 배치부(121)는 상기 가상의 사각 영역의 가로 축에서, 좌측 지점을 기준으로 미리 설정된 제1 상대 비율에 해당되는 제1 지점을 확인하고, 상기 가상의 사각 영역의 세로 축에서, 상단 지점을 기준으로 미리 설정된 제2 상대 비율에 해당되는 제2 지점을 확인한 후 상기 제1 지점을 통과하는 세로 선과 상기 제2 지점을 통과하는 가로 선이 만나는 교점을 상기 가상의 기준 원의 중심점으로 설정함으로써, 상기 가상의 기준 원을 상기 가상의 사각 영역 상에 배치한다.In addition, the
관련해서, 도 3 내지 도 5를 참조하여, 생성부(120)와 배치부(121)의 동작을 예를 들어 설명하면 다음과 같다.In relation to this, with reference to FIGS. 3 to 5 , the operations of the
생성부(120)는 도 3에 도시된 그림과 같이, 이미지에서 사용자의 손 영역을 둘러싸는 가상의 사각 영역(320)을 생성할 수 있다.As illustrated in FIG. 3 , the
그러고 나서, 생성부(120)는 도 4의 도면부호 410에 도시된 그림과 같이, 가상의 사각 영역(320)과, 미리 설정된 모양과 크기를 갖는 기준 사각 영역(411)을 서로 비교하여 기준 사각 영역(411)에 대한 가상의 사각 영역(320)의 가로 축 크기 비율과 세로 축 크기 비율을 확인할 수 있다.Then, the generating
그 이후, 생성부(120)는 도 4의 도면부호 420에 도시된 그림과 같이, 미리 설정된 모양과 크기를 갖는 참조 원(421)의 가로 축 지름에 대해 상기 가로 축 크기 비율을 곱하고, 참조 원(421)의 세로 축 지름에 대해 상기 세로 축 크기 비율을 곱하여 참조 원(421)의 모양과 크기를 변경함으로써, 가상의 기준 원(310)을 생성할 수 있다.After that, the generating
예컨대, 상기 가로 축 크기 비율이 '1.3', 상기 세로 축 크기 비율이 '1.8'이라고 하는 경우, 생성부(120)는 참조 원(421)의 가로 축 지름에 대해 '1.3'을 곱하고, 세로 축 지름에 대해 '1.8'을 곱함으로써, 가상의 기준 원(310)을 생성할 수 있다.For example, when the horizontal axis size ratio is '1.3' and the vertical axis size ratio is '1.8', the
이렇게, 가상의 기준 원(310)이 생성되면, 배치부(120)는 도 5에 도시된 그림과 같이, 가상의 사각 영역(320)의 가로 축에서, 좌측 지점을 기준으로 미리 설정된 제1 상대 비율에 해당되는 제1 지점(510)을 확인하고, 가상의 사각 영역(320)의 세로 축에서, 상단 지점을 기준으로 미리 설정된 제2 상대 비율에 해당되는 제2 지점(520)을 확인할 수 있다.In this way, when the
예컨대, 상기 제1 상대 비율이 '3/5', 상기 제2 상대 비율이 '4/7'라고 하는 경우, 배치부(120)는 가상의 사각 영역(320)의 가로 축에서, 좌측 지점을 기준으로 '3/5'에 해당되는 지점을 제1 지점(510)으로 확인하고, 가상의 사각 영역(320)의 세로 축에서, 상단 지점을 기준으로 '4/7'에 해당되는 지점을 제2 지점(520)으로 확인할 수 있다.For example, when the first relative ratio is '3/5' and the second relative ratio is '4/7', the
그 이후, 배치부(120)는 도 5에 도시된 그림과 같이, 제1 지점(510)을 통과하는 세로 선과 제2 지점(520)을 통과하는 가로 선이 만나는 교점(530)을 가상의 기준 원(310)의 중심점으로 설정함으로써, 가상의 기준 원(310)을 가상의 사각 영역(320) 상에 배치할 수 있다. 이를 통해, 가상의 기준 원(310)은 도 3에 도시된 그림과 같이, 사용자의 손 영역 상의 적절한 위치에 적절한 크기와 모양으로 배치될 수 있다.Thereafter, as shown in the figure shown in FIG. 5 , the
도 6은 본 발명의 일실시예에 따른 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치의 동작 방법을 도시한 순서도이다.6 is a flowchart illustrating a method of operating an electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback according to an embodiment of the present invention.
단계(S610)에서는 미리 설정된 서로 다른 복수의 제어 명령들과, 상기 복수의 제어 명령들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 n(n은 2이상의 자연수)차원의 제스처 판단 기준 벡터들(상기 복수의 제스처 판단 기준 벡터들 각각은 '0'과 '1'의 코드를 성분으로 갖는 벡터임)이 저장되어 있는 제스처 판단 기준 벡터 저장부를 유지한다.In step S610, a plurality of different preset control commands and a plurality of different preset n (n is a natural number greater than or equal to 2) dimensional gesture determination reference vectors (the above) are set to correspond to each of the plurality of control commands. Each of the plurality of gesture determination reference vectors is a vector having codes of '0' and '1' as components) and maintains a gesture determination reference vector storage unit in which is stored.
단계(S620)에서는 상기 복수의 제스처 판단 기준 벡터들과, 상기 복수의 제스처 판단 기준 벡터들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 제스처 매칭 알림 피드백 출력 정보들(상기 복수의 제스처 매칭 알림 피드백 출력 정보들 각각은 상기 전자 단말 장치를 통해 출력 가능한 피드백에 대한 정보를 의미함)이 저장되어 있는 제스처 매칭 알림 피드백 출력 정보 저장부를 유지한다.In step S620, the plurality of gesture determination reference vectors and a plurality of different gesture matching notification feedback output information (the plurality of gesture matching notification feedback output) preset to correspond to each of the plurality of gesture determination reference vectors Each piece of information maintains a gesture matching notification feedback output information storage unit in which information on feedback outputable through the electronic terminal device is stored.
단계(S630)에서는 카메라를 통해 상기 사용자의 손을 촬영하여 상기 사용자의 손이 포함된 이미지를 획득한다.In step S630, the user's hand is photographed through a camera to obtain an image including the user's hand.
단계(S640)에서는 상기 이미지에서 상기 사용자의 손 영역을 검출하고, 상기 사용자의 손 영역으로부터 n개의 관절 포인트들을 추출한다.In step S640, the user's hand region is detected in the image, and n joint points are extracted from the user's hand region.
단계(S650)에서는 상기 사용자의 손 영역에 대해 제스처 확인을 위한 가상의 기준 원을 생성한다.In step S650, a virtual reference circle for gesture confirmation is generated for the user's hand region.
단계(S660)에서는 상기 가상의 기준 원의 내부에 상기 n개의 관절 포인트들이 위치하는지 여부를 확인하여 상기 n개의 관절 포인트들 중 상기 가상의 기준 원의 내부에 위치하는 포인트에 대해 '1'의 코드를 할당하고, 상기 가상의 기준 원의 외부에 위치하는 포인트에 대해 '0'의 코드를 할당함으로써, 상기 n개의 관절 포인트들 각각에 할당된 코드를 성분으로 갖는 n차원의 제스처 벡터를 생성한다.In step S660, it is checked whether the n joint points are located inside the virtual reference circle, and a code of '1' for a point located inside the virtual reference circle among the n joint points. , and assigning a code of '0' to a point located outside the virtual reference circle, an n-dimensional gesture vector having a code assigned to each of the n joint points as a component is generated.
단계(S670)에서는 상기 제스처 판단 기준 벡터 저장부에 저장되어 있는 상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 유사도를 연산한 후 상기 복수의 제스처 판단 기준 벡터들 중 최대 값의 유사도를 갖는 것으로 확인되는 제1 제스처 판단 기준 벡터를 선택한다.In step S670, the degree of similarity between each of the plurality of gesture determination reference vectors stored in the gesture determination reference vector storage unit and the gesture vector is calculated, and the maximum similarity of the plurality of gesture determination reference vectors is obtained. A first gesture determination reference vector that is confirmed to be selected is selected.
단계(S680)에서는 상기 제1 제스처 판단 기준 벡터가 선택되면, 상기 제1 제스처 판단 기준 벡터와 상기 제스처 벡터 간에 연산된 상기 최대 값의 유사도가 미리 설정된 임계치를 초과하는지 확인하고, 상기 최대 값의 유사도가 상기 임계치를 초과하는 것으로 확인되면, 상기 제스처 매칭 알림 피드백 출력 정보 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제스처 매칭 알림 피드백 출력 정보를 추출한 후 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백을 상기 전자 단말 장치를 통해 출력한다.In step S680, when the first gesture determination reference vector is selected, it is checked whether the degree of similarity of the maximum value calculated between the first gesture determination reference vector and the gesture vector exceeds a preset threshold, and the degree of similarity of the maximum value When it is determined that ? exceeds the threshold, first gesture matching notification feedback output information stored in correspondence with the first gesture determination reference vector is extracted from the gesture matching notification feedback output information storage unit, and then the first gesture matching notification A feedback according to the feedback output information is output through the electronic terminal device.
단계(S690)에서는 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백이 출력되면, 상기 제스처 판단 기준 벡터 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제어 명령을 상기 사용자의 손의 모양에 대응되는 제어 명령으로 확인한 후 상기 제1 제어 명령을 실행하는 단계를 포함한다.In step S690, when the feedback according to the first gesture matching notification feedback output information is output, a first control command stored in correspondence to the first gesture determination reference vector is transmitted from the gesture determination reference vector storage unit to the user. and executing the first control command after confirming the control command corresponding to the shape of the hand.
이때, 본 발명의 일실시예에 따르면, 단계(S640)에서는 상기 n개의 관절 포인트들의 상기 사용자의 손 영역에서의 위치에 기초하여 상기 n개의 관절 포인트들 각각에 대응되는 순번을 할당할 수 있다.At this time, according to an embodiment of the present invention, in step S640, an order number corresponding to each of the n joint points may be assigned based on the positions of the n joint points in the user's hand region.
이때, 단계(S660)에서는 상기 n개의 관절 포인트들 각각에 대응되는 순번에 따라 상기 n개의 관절 포인트들 각각에 할당된 코드를 벡터의 성분으로 하나씩 지정함으로써, 상기 제스처 벡터를 생성할 수 있다.In this case, in step S660, the gesture vector may be generated by designating one code assigned to each of the n joint points as a component of the vector according to the order corresponding to each of the n joint points.
또한, 본 발명의 일실시예에 따르면, 단계(S670)에서는 상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 아다마르 곱을 연산하고, 상기 아다마르 곱의 연산에 따라 산출되는 벡터를 구성하는 성분에서 '1'의 코드 값이 존재하는 개수를 상기 유사도로 연산할 수 있다.In addition, according to an embodiment of the present invention, in step S670, a Hadamard product between each of the plurality of gesture determination reference vectors and the gesture vector is calculated, and a vector calculated according to the operation of the Hadamard product is configured. The number of code values of '1' in the component may be calculated with the degree of similarity.
또한, 본 발명의 일실시예에 따르면, 단계(S650)에서는 상기 사용자의 손 영역을 둘러싸는 가상의 사각 영역을 생성하고, 상기 가상의 사각 영역과, 미리 설정된 모양과 크기를 갖는 기준 사각 영역을 서로 비교하여 상기 기준 사각 영역에 대한 상기 가상의 사각 영역의 가로 축 크기 비율과 세로 축 크기 비율을 확인한 후 미리 설정된 모양과 크기를 갖는 참조 원의 가로 축 지름에 대해 상기 가로 축 크기 비율을 곱하고, 상기 참조 원의 세로 축 지름에 대해 상기 세로 축 크기 비율을 곱하여 상기 참조 원의 모양과 크기를 변경함으로써, 상기 가상의 기준 원을 생성하는 단계 및 상기 가상의 사각 영역의 가로 축에서, 좌측 지점을 기준으로 미리 설정된 제1 상대 비율에 해당되는 제1 지점을 확인하고, 상기 가상의 사각 영역의 세로 축에서, 상단 지점을 기준으로 미리 설정된 제2 상대 비율에 해당되는 제2 지점을 확인한 후 상기 제1 지점을 통과하는 세로 선과 상기 제2 지점을 통과하는 가로 선이 만나는 교점을 상기 가상의 기준 원의 중심점으로 설정함으로써, 상기 가상의 기준 원을 상기 가상의 사각 영역 상에 배치하는 단계를 포함할 수 있다.In addition, according to an embodiment of the present invention, in step S650, a virtual rectangular area surrounding the user's hand area is generated, and the virtual rectangular area and a reference rectangular area having a preset shape and size are defined. After confirming the horizontal axis size ratio and the vertical axis size ratio of the virtual rectangular region with respect to the reference rectangular region by comparing with each other, multiply the horizontal axis size ratio by the horizontal axis diameter of the reference circle having a preset shape and size, generating the virtual reference circle by changing the shape and size of the reference circle by multiplying the vertical axis size ratio by the vertical axis diameter of the reference circle; A first point corresponding to a preset first relative ratio is identified as a reference, and a second point corresponding to a preset second relative ratio is identified on the vertical axis of the virtual rectangular area with respect to an upper point, and then the second point is identified. Placing the virtual reference circle on the virtual rectangular area by setting an intersection point where the vertical line passing through the first point and the horizontal line passing through the second point meet as the center point of the virtual reference circle. can
또한, 본 발명의 일실시예에 따르면, 단계(S670)에서는 상기 복수의 제스처 판단 기준 벡터들 중 상기 최대 값의 유사도를 갖는 것으로 확인되는 제스처 판단 기준 벡터가 둘 이상 존재하는 경우, 상기 둘 이상의 제스처 판단 기준 벡터들 중 랜덤하게 선택된 어느 하나의 제스처 판단 기준 벡터를 상기 제1 제스처 판단 기준 벡터로 결정할 수 있다.In addition, according to an embodiment of the present invention, in step S670, when two or more gesture determination reference vectors identified as having the maximum similarity among the plurality of gesture determination reference vectors exist, the two or more gestures Any one randomly selected gesture determination reference vector among the determination reference vectors may be determined as the first gesture determination reference vector.
이상, 도 6을 참조하여 본 발명의 일실시예에 따른 전자 단말 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 전자 단말 장치의 동작 방법은 도 1 내지 도 5를 이용하여 설명한 전자 단말 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.In the above, a method of operating an electronic terminal device according to an embodiment of the present invention has been described with reference to FIG. 6 . Here, since the method of operating the electronic terminal device according to an embodiment of the present invention may correspond to the configuration of the operation of the electronic
본 발명의 일실시예에 따른 전자 단말 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.The method of operating an electronic terminal device according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium for execution through combination with a computer.
또한, 본 발명의 일실시예에 따른 전자 단말 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. In addition, the method of operating an electronic terminal device according to an embodiment of the present invention 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, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and carry out 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.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described 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. , various modifications and variations are possible from these descriptions by those of ordinary skill in the art to which the present invention pertains.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and not only the claims to be described later, but also all those with equivalent or equivalent modifications to the claims will be said to belong to the scope of the spirit of the present invention. .
110: 전자 단말 장치
111: 제스처 판단 기준 벡터 저장부
112: 제스처 매칭 알림 피드백 출력 정보 저장부
113: 이미지 획득부 114: 관절 포인트 추출부
115: 기준 원 생성부 116: 제스처 벡터 생성부
117: 유사도 연산부 118: 피드백 출력부
119: 제어 명령 실행부 120: 생성부
121: 배치부110: electronic terminal device
111: gesture determination criterion vector storage unit
112: gesture matching notification feedback output information storage unit
113: image acquisition unit 114: joint point extraction unit
115: reference circle generator 116: gesture vector generator
117: similarity calculating unit 118: feedback output unit
119: control command execution unit 120: generation unit
121: placement unit
Claims (12)
미리 설정된 서로 다른 복수의 제어 명령들과, 상기 복수의 제어 명령들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 n(n은 2이상의 자연수)차원의 제스처 판단 기준 벡터들 - 상기 복수의 제스처 판단 기준 벡터들 각각은 '0'과 '1'의 코드를 성분으로 갖는 벡터임 - 이 저장되어 있는 제스처 판단 기준 벡터 저장부;
상기 복수의 제스처 판단 기준 벡터들과, 상기 복수의 제스처 판단 기준 벡터들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 제스처 매칭 알림 피드백 출력 정보들 - 상기 복수의 제스처 매칭 알림 피드백 출력 정보들 각각은 상기 전자 단말 장치를 통해 출력 가능한 피드백에 대한 정보를 의미함 - 이 저장되어 있는 제스처 매칭 알림 피드백 출력 정보 저장부;
카메라를 통해 상기 사용자의 손(Hand)을 촬영하여 상기 사용자의 손이 포함된 이미지를 획득하는 이미지 획득부;
상기 이미지에서 상기 사용자의 손 영역을 검출하고, 상기 사용자의 손 영역으로부터 n개의 관절 포인트들을 추출하는 관절 포인트 추출부;
상기 사용자의 손 영역에 대해 제스처 확인을 위한 가상의 기준 원(Circle)을 생성하는 기준 원 생성부;
상기 가상의 기준 원의 내부에 상기 n개의 관절 포인트들이 위치하는지 여부를 확인하여 상기 n개의 관절 포인트들 중 상기 가상의 기준 원의 내부에 위치하는 포인트에 대해 '1'의 코드를 할당하고, 상기 가상의 기준 원의 외부에 위치하는 포인트에 대해 '0'의 코드를 할당함으로써, 상기 n개의 관절 포인트들 각각에 할당된 코드를 성분으로 갖는 n차원의 제스처 벡터를 생성하는 제스처 벡터 생성부;
상기 제스처 판단 기준 벡터 저장부에 저장되어 있는 상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 유사도를 연산한 후 상기 복수의 제스처 판단 기준 벡터들 중 최대 값의 유사도를 갖는 것으로 확인되는 제1 제스처 판단 기준 벡터를 선택하는 유사도 연산부;
상기 제1 제스처 판단 기준 벡터가 선택되면, 상기 제1 제스처 판단 기준 벡터와 상기 제스처 벡터 간에 연산된 상기 최대 값의 유사도가 미리 설정된 임계치를 초과하는지 확인하고, 상기 최대 값의 유사도가 상기 임계치를 초과하는 것으로 확인되면, 상기 제스처 매칭 알림 피드백 출력 정보 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제스처 매칭 알림 피드백 출력 정보를 추출한 후 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백을 상기 전자 단말 장치를 통해 출력하는 피드백 출력부; 및
상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백이 출력되면, 상기 제스처 판단 기준 벡터 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제어 명령을 상기 사용자의 손의 모양에 대응되는 제어 명령으로 확인한 후 상기 제1 제어 명령을 실행하는 제어 명령 실행부
를 포함하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치.An electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback, the electronic terminal device comprising:
A plurality of different preset control commands and a plurality of different n (n is a natural number greater than or equal to 2) dimensional gesture determination reference vectors preset to correspond to each of the plurality of control commands - the plurality of gesture determination standards Each of the vectors is a vector having codes of '0' and '1' as components - a gesture determination reference vector storage unit in which this is stored;
The plurality of gesture determination reference vectors and a plurality of different gesture matching notification feedback output information preset to correspond to each of the plurality of gesture determination reference vectors - Each of the plurality of gesture matching notification feedback output information is the means information on feedback outputable through the electronic terminal device - a gesture matching notification feedback output information storage unit that is stored;
an image acquisition unit for acquiring an image including the user's hand by photographing the user's hand through a camera;
a joint point extraction unit for detecting the user's hand region from the image and extracting n joint points from the user's hand region;
a reference circle generator for generating a virtual reference circle for gesture confirmation with respect to the user's hand region;
Checking whether the n joint points are located inside the virtual reference circle assigns a code of '1' to a point located inside the virtual reference circle among the n joint points, and a gesture vector generator for generating an n-dimensional gesture vector having a code assigned to each of the n joint points as a component by assigning a code of '0' to a point located outside the virtual reference circle;
After calculating the degree of similarity between each of the plurality of gesture determination reference vectors and the gesture vector stored in the gesture determination reference vector storage unit, a first determined to have a maximum degree of similarity among the plurality of gesture determination reference vectors a similarity calculating unit that selects a gesture determination reference vector;
When the first gesture determination reference vector is selected, it is checked whether the degree of similarity of the maximum value calculated between the first gesture determination reference vector and the gesture vector exceeds a preset threshold, and the degree of similarity of the maximum value exceeds the threshold. If it is confirmed that, after extracting the first gesture matching notification feedback output information stored in correspondence to the first gesture determination reference vector from the gesture matching notification feedback output information storage unit, the first gesture matching notification feedback output information is extracted according to the first gesture matching notification feedback output information. a feedback output unit for outputting feedback through the electronic terminal device; and
When the feedback according to the first gesture matching notification feedback output information is output, a first control command stored in correspondence to the first gesture determination reference vector from the gesture determination reference vector storage unit corresponds to the shape of the user's hand A control command execution unit that executes the first control command after confirming that the control command is
An electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback, comprising:
상기 관절 포인트 추출부는
상기 n개의 관절 포인트들의 상기 사용자의 손 영역에서의 위치에 기초하여 상기 n개의 관절 포인트들 각각에 대응되는 순번을 할당하고,
상기 제스처 벡터 생성부는
상기 n개의 관절 포인트들 각각에 대응되는 순번에 따라 상기 n개의 관절 포인트들 각각에 할당된 코드를 벡터의 성분으로 하나씩 지정함으로써, 상기 제스처 벡터를 생성하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치.According to claim 1,
The joint point extraction unit
Allocating an order number corresponding to each of the n joint points based on the location of the n joint points in the user's hand region,
The gesture vector generator
Executing a control command corresponding to the user's hand gesture generating the gesture vector by designating a code assigned to each of the n joint points as a component of a vector one by one according to an order corresponding to each of the n joint points; and An electronic terminal device that performs feedback output.
상기 유사도 연산부는
상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 아다마르 곱(Hadamard product)을 연산하고, 상기 아다마르 곱의 연산에 따라 산출되는 벡터를 구성하는 성분에서 '1'의 코드 값이 존재하는 개수를 상기 유사도로 연산하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치.According to claim 1,
The similarity calculator
A Hadamard product is calculated between each of the plurality of gesture determination reference vectors and the gesture vector, and a code value of '1' exists in a component constituting a vector calculated according to the operation of the Hadamard product. An electronic terminal device that executes a control command corresponding to a user's hand gesture for calculating the number as the degree of similarity and outputs a feedback.
상기 기준 원 생성부는
상기 사용자의 손 영역을 둘러싸는 가상의 사각 영역을 생성하고, 상기 가상의 사각 영역과, 미리 설정된 모양과 크기를 갖는 기준 사각 영역을 서로 비교하여 상기 기준 사각 영역에 대한 상기 가상의 사각 영역의 가로 축 크기 비율과 세로 축 크기 비율을 확인한 후 미리 설정된 모양과 크기를 갖는 참조 원의 가로 축 지름에 대해 상기 가로 축 크기 비율을 곱하고, 상기 참조 원의 세로 축 지름에 대해 상기 세로 축 크기 비율을 곱하여 상기 참조 원의 모양과 크기를 변경함으로써, 상기 가상의 기준 원을 생성하는 생성부; 및
상기 가상의 사각 영역의 가로 축에서, 좌측 지점을 기준으로 미리 설정된 제1 상대 비율에 해당되는 제1 지점을 확인하고, 상기 가상의 사각 영역의 세로 축에서, 상단 지점을 기준으로 미리 설정된 제2 상대 비율에 해당되는 제2 지점을 확인한 후 상기 제1 지점을 통과하는 세로 선과 상기 제2 지점을 통과하는 가로 선이 만나는 교점을 상기 가상의 기준 원의 중심점으로 설정함으로써, 상기 가상의 기준 원을 상기 가상의 사각 영역 상에 배치하는 배치부
를 포함하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치.According to claim 1,
The reference circle generating unit
A virtual rectangular area surrounding the user's hand area is generated, and the virtual rectangular area and a reference rectangular area having a preset shape and size are compared with each other, and the width of the virtual rectangular area with respect to the reference rectangular area is compared with each other. After checking the axis size ratio and the vertical axis size ratio, the horizontal axis size ratio is multiplied by the horizontal axis diameter of the reference circle having a preset shape and size, and the vertical axis size ratio is multiplied by the vertical axis diameter of the reference circle. a generator configured to generate the virtual reference circle by changing the shape and size of the reference circle; and
In the horizontal axis of the virtual rectangular area, a first point corresponding to a first relative ratio preset with respect to the left point is identified, and on the vertical axis of the virtual rectangular area, a second preset point based on the upper point is confirmed. After confirming the second point corresponding to the relative ratio, the point of intersection of the vertical line passing through the first point and the horizontal line passing through the second point is set as the central point of the virtual reference circle, thereby forming the virtual reference circle. an arrangement unit disposed on the virtual rectangular area
An electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback, comprising:
상기 유사도 연산부는
상기 복수의 제스처 판단 기준 벡터들 중 상기 최대 값의 유사도를 갖는 것으로 확인되는 제스처 판단 기준 벡터가 둘 이상 존재하는 경우, 상기 둘 이상의 제스처 판단 기준 벡터들 중 랜덤하게 선택된 어느 하나의 제스처 판단 기준 벡터를 상기 제1 제스처 판단 기준 벡터로 결정하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치.According to claim 1,
The similarity calculator
When there are two or more gesture determination reference vectors that are confirmed to have the maximum similarity among the plurality of gesture determination reference vectors, any one randomly selected gesture determination reference vector among the two or more gesture determination reference vectors is selected. An electronic terminal device that executes a control command corresponding to the user's hand gesture determined by the first gesture determination reference vector and outputs a feedback.
미리 설정된 서로 다른 복수의 제어 명령들과, 상기 복수의 제어 명령들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 n(n은 2이상의 자연수)차원의 제스처 판단 기준 벡터들 - 상기 복수의 제스처 판단 기준 벡터들 각각은 '0'과 '1'의 코드를 성분으로 갖는 벡터임 - 이 저장되어 있는 제스처 판단 기준 벡터 저장부를 유지하는 단계;
상기 복수의 제스처 판단 기준 벡터들과, 상기 복수의 제스처 판단 기준 벡터들 각각에 대응되는 것으로 미리 설정된 서로 다른 복수의 제스처 매칭 알림 피드백 출력 정보들 - 상기 복수의 제스처 매칭 알림 피드백 출력 정보들 각각은 상기 전자 단말 장치를 통해 출력 가능한 피드백에 대한 정보를 의미함 - 이 저장되어 있는 제스처 매칭 알림 피드백 출력 정보 저장부를 유지하는 단계;
카메라를 통해 상기 사용자의 손(Hand)을 촬영하여 상기 사용자의 손이 포함된 이미지를 획득하는 단계;
상기 이미지에서 상기 사용자의 손 영역을 검출하고, 상기 사용자의 손 영역으로부터 n개의 관절 포인트들을 추출하는 단계;
상기 사용자의 손 영역에 대해 제스처 확인을 위한 가상의 기준 원(Circle)을 생성하는 단계;
상기 가상의 기준 원의 내부에 상기 n개의 관절 포인트들이 위치하는지 여부를 확인하여 상기 n개의 관절 포인트들 중 상기 가상의 기준 원의 내부에 위치하는 포인트에 대해 '1'의 코드를 할당하고, 상기 가상의 기준 원의 외부에 위치하는 포인트에 대해 '0'의 코드를 할당함으로써, 상기 n개의 관절 포인트들 각각에 할당된 코드를 성분으로 갖는 n차원의 제스처 벡터를 생성하는 단계;
상기 제스처 판단 기준 벡터 저장부에 저장되어 있는 상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 유사도를 연산한 후 상기 복수의 제스처 판단 기준 벡터들 중 최대 값의 유사도를 갖는 것으로 확인되는 제1 제스처 판단 기준 벡터를 선택하는 단계;
상기 제1 제스처 판단 기준 벡터가 선택되면, 상기 제1 제스처 판단 기준 벡터와 상기 제스처 벡터 간에 연산된 상기 최대 값의 유사도가 미리 설정된 임계치를 초과하는지 확인하고, 상기 최대 값의 유사도가 상기 임계치를 초과하는 것으로 확인되면, 상기 제스처 매칭 알림 피드백 출력 정보 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제스처 매칭 알림 피드백 출력 정보를 추출한 후 상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백을 상기 전자 단말 장치를 통해 출력하는 단계; 및
상기 제1 제스처 매칭 알림 피드백 출력 정보에 따른 피드백이 출력되면, 상기 제스처 판단 기준 벡터 저장부로부터 상기 제1 제스처 판단 기준 벡터에 대응되어 저장되어 있는 제1 제어 명령을 상기 사용자의 손의 모양에 대응되는 제어 명령으로 확인한 후 상기 제1 제어 명령을 실행하는 단계
를 포함하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치의 동작 방법.A method of operating an electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback, the method comprising:
A plurality of different preset control commands and a plurality of different n (n is a natural number greater than or equal to 2) dimensional gesture determination reference vectors preset to correspond to each of the plurality of control commands - the plurality of gesture determination standards Each of the vectors is a vector having codes of '0' and '1' as components - maintaining the stored gesture determination reference vector storage unit;
The plurality of gesture determination reference vectors and a plurality of different gesture matching notification feedback output information preset to correspond to each of the plurality of gesture determination reference vectors - Each of the plurality of gesture matching notification feedback output information is the means information on feedback outputable through the electronic terminal device - maintaining the stored gesture matching notification feedback output information storage;
acquiring an image including the user's hand by photographing the user's hand through a camera;
detecting the user's hand region in the image, and extracting n joint points from the user's hand region;
generating a virtual reference circle for gesture confirmation with respect to the user's hand region;
Checking whether the n joint points are located inside the virtual reference circle assigns a code of '1' to a point located inside the virtual reference circle among the n joint points, and generating an n-dimensional gesture vector having a code assigned to each of the n joint points as a component by assigning a code of '0' to a point located outside the virtual reference circle;
After calculating the degree of similarity between each of the plurality of gesture determination reference vectors and the gesture vector stored in the gesture determination reference vector storage unit, a first determined to have a maximum degree of similarity among the plurality of gesture determination reference vectors selecting a gesture criterion vector;
When the first gesture determination reference vector is selected, it is checked whether the degree of similarity of the maximum value calculated between the first gesture determination reference vector and the gesture vector exceeds a preset threshold, and the degree of similarity of the maximum value exceeds the threshold. If it is confirmed that, after extracting the first gesture matching notification feedback output information stored in correspondence with the first gesture determination reference vector from the gesture matching notification feedback output information storage unit, outputting feedback through the electronic terminal device; and
When the feedback according to the first gesture matching notification feedback output information is output, a first control command stored in correspondence to the first gesture determination reference vector from the gesture determination reference vector storage unit corresponds to the shape of the user's hand executing the first control command after confirming that the control command is
An operating method of an electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback, comprising:
상기 추출하는 단계는
상기 n개의 관절 포인트들의 상기 사용자의 손 영역에서의 위치에 기초하여 상기 n개의 관절 포인트들 각각에 대응되는 순번을 할당하고,
상기 제스처 벡터를 생성하는 단계는
상기 n개의 관절 포인트들 각각에 대응되는 순번에 따라 상기 n개의 관절 포인트들 각각에 할당된 코드를 벡터의 성분으로 하나씩 지정함으로써, 상기 제스처 벡터를 생성하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치의 동작 방법.7. The method of claim 6,
The extraction step
Allocating an order number corresponding to each of the n joint points based on the location of the n joint points in the user's hand region,
The step of generating the gesture vector is
Executing a control command corresponding to the user's hand gesture generating the gesture vector by designating a code assigned to each of the n joint points as a component of a vector one by one according to an order corresponding to each of the n joint points; and A method of operating an electronic terminal device for performing feedback output.
상기 선택하는 단계는
상기 복수의 제스처 판단 기준 벡터들 각각과 상기 제스처 벡터 간의 아다마르 곱(Hadamard product)을 연산하고, 상기 아다마르 곱의 연산에 따라 산출되는 벡터를 구성하는 성분에서 '1'의 코드 값이 존재하는 개수를 상기 유사도로 연산하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치의 동작 방법.7. The method of claim 6,
The selecting step
A Hadamard product is calculated between each of the plurality of gesture determination reference vectors and the gesture vector, and a code value of '1' exists in a component constituting a vector calculated according to the operation of the Hadamard product. A method of operating an electronic terminal device for executing a control command corresponding to a user's hand gesture for calculating the number as the degree of similarity and outputting a feedback.
상기 기준 원을 생성하는 단계는
상기 사용자의 손 영역을 둘러싸는 가상의 사각 영역을 생성하고, 상기 가상의 사각 영역과, 미리 설정된 모양과 크기를 갖는 기준 사각 영역을 서로 비교하여 상기 기준 사각 영역에 대한 상기 가상의 사각 영역의 가로 축 크기 비율과 세로 축 크기 비율을 확인한 후 미리 설정된 모양과 크기를 갖는 참조 원의 가로 축 지름에 대해 상기 가로 축 크기 비율을 곱하고, 상기 참조 원의 세로 축 지름에 대해 상기 세로 축 크기 비율을 곱하여 상기 참조 원의 모양과 크기를 변경함으로써, 상기 가상의 기준 원을 생성하는 단계; 및
상기 가상의 사각 영역의 가로 축에서, 좌측 지점을 기준으로 미리 설정된 제1 상대 비율에 해당되는 제1 지점을 확인하고, 상기 가상의 사각 영역의 세로 축에서, 상단 지점을 기준으로 미리 설정된 제2 상대 비율에 해당되는 제2 지점을 확인한 후 상기 제1 지점을 통과하는 세로 선과 상기 제2 지점을 통과하는 가로 선이 만나는 교점을 상기 가상의 기준 원의 중심점으로 설정함으로써, 상기 가상의 기준 원을 상기 가상의 사각 영역 상에 배치하는 단계
를 포함하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치의 동작 방법.7. The method of claim 6,
The step of generating the reference circle is
A virtual rectangular area surrounding the user's hand area is generated, and the virtual rectangular area and a reference rectangular area having a preset shape and size are compared with each other, and the width of the virtual rectangular area with respect to the reference rectangular area is compared with each other. After checking the axis size ratio and the vertical axis size ratio, the horizontal axis size ratio is multiplied by the horizontal axis diameter of a reference circle having a preset shape and size, and the vertical axis size ratio is multiplied by the vertical axis diameter of the reference circle. generating the virtual reference circle by changing the shape and size of the reference circle; and
In the horizontal axis of the virtual rectangular area, a first point corresponding to a first relative ratio preset with respect to the left point is identified, and on the vertical axis of the virtual rectangular area, a second preset point based on the upper point is confirmed. After confirming the second point corresponding to the relative ratio, the point of intersection of the vertical line passing through the first point and the horizontal line passing through the second point is set as the central point of the virtual reference circle, thereby forming the virtual reference circle. disposing on the virtual rectangular area
A method of operating an electronic terminal device for executing a control command corresponding to a user's hand gesture and outputting a feedback, comprising:
상기 선택하는 단계는
상기 복수의 제스처 판단 기준 벡터들 중 상기 최대 값의 유사도를 갖는 것으로 확인되는 제스처 판단 기준 벡터가 둘 이상 존재하는 경우, 상기 둘 이상의 제스처 판단 기준 벡터들 중 랜덤하게 선택된 어느 하나의 제스처 판단 기준 벡터를 상기 제1 제스처 판단 기준 벡터로 결정하는 사용자의 손 제스처에 대응되는 제어 명령 실행 및 피드백 출력을 수행하는 전자 단말 장치의 동작 방법.7. The method of claim 6,
The selecting step
When there are two or more gesture determination reference vectors that are confirmed to have the maximum similarity among the plurality of gesture determination reference vectors, any one randomly selected gesture determination reference vector among the two or more gesture determination reference vectors is selected. A method of operating an electronic terminal device for executing a control command corresponding to the user's hand gesture determined by the first gesture determination reference vector and outputting a feedback.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200060858A KR102280412B1 (en) | 2020-05-21 | 2020-05-21 | Electronic terminal device that performs control command execution and feedback output corresponding to a user's hand gesture and operating method thereof |
JP2020158131A JP6994207B2 (en) | 2020-05-21 | 2020-09-23 | An electronic terminal device that executes control commands corresponding to user hand gestures and outputs feedback, and its operation method. |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200060858A KR102280412B1 (en) | 2020-05-21 | 2020-05-21 | Electronic terminal device that performs control command execution and feedback output corresponding to a user's hand gesture and operating method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102280412B1 true KR102280412B1 (en) | 2021-07-22 |
Family
ID=77157978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200060858A KR102280412B1 (en) | 2020-05-21 | 2020-05-21 | Electronic terminal device that performs control command execution and feedback output corresponding to a user's hand gesture and operating method thereof |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6994207B2 (en) |
KR (1) | KR102280412B1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101548872B1 (en) * | 2014-06-13 | 2015-09-02 | 세종대학교산학협력단 | Fingers recognition method and system using image processing |
KR20200051166A (en) * | 2018-11-05 | 2020-05-13 | 주식회사 한글과컴퓨터 | Electronic terminal device capable of executing a gesture recognition-based control command and operating method thereof |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8897491B2 (en) | 2011-06-06 | 2014-11-25 | Microsoft Corporation | System for finger recognition and tracking |
TWI475422B (en) | 2012-10-31 | 2015-03-01 | Wistron Corp | Method for recognizing gesture and electronic device |
JP2016081286A (en) * | 2014-10-16 | 2016-05-16 | 株式会社東芝 | Terminal operation support apparatus and terminal operation support method |
-
2020
- 2020-05-21 KR KR1020200060858A patent/KR102280412B1/en active IP Right Grant
- 2020-09-23 JP JP2020158131A patent/JP6994207B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101548872B1 (en) * | 2014-06-13 | 2015-09-02 | 세종대학교산학협력단 | Fingers recognition method and system using image processing |
KR20200051166A (en) * | 2018-11-05 | 2020-05-13 | 주식회사 한글과컴퓨터 | Electronic terminal device capable of executing a gesture recognition-based control command and operating method thereof |
Also Published As
Publication number | Publication date |
---|---|
JP6994207B2 (en) | 2022-01-14 |
JP2021184233A (en) | 2021-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10559062B2 (en) | Method for automatic facial impression transformation, recording medium and device for performing the method | |
DK2996015T3 (en) | PROCEDURE TO USE IMPROVED REALITY AS HMI VIEW | |
KR20200032055A (en) | Method and program for making reactive video | |
KR101897072B1 (en) | Method and apparatus for verifying facial liveness in mobile terminal | |
KR102280408B1 (en) | Electronic terminal device for executing a control command by recognizing a user's hand gesture and operating method thereof | |
JP2012137899A (en) | Video processing device and video display device | |
KR20130043394A (en) | Method of image processing for detecting object, device, method for user interface and user interface thereof | |
JP5550124B2 (en) | INPUT DEVICE, DEVICE, INPUT METHOD, AND PROGRAM | |
JP2018036965A (en) | Living body detection device | |
KR20170078176A (en) | Apparatus for presenting game based on action recognition, method thereof and computer recordable medium storing the method | |
KR20150107499A (en) | Object recognition apparatus and control method thereof | |
KR100967379B1 (en) | Method, system, and computer-readable recording medium for setting initial value for graph cut | |
KR102187525B1 (en) | Electronic terminal device capable of executing a gesture recognition-based control command and operating method thereof | |
KR101330531B1 (en) | Method of virtual touch using 3D camera and apparatus thereof | |
WO2019128086A1 (en) | Stage interactive projection method, apparatus and system | |
KR102280412B1 (en) | Electronic terminal device that performs control command execution and feedback output corresponding to a user's hand gesture and operating method thereof | |
WO2011145180A1 (en) | Pointer information processing device, pointer information processing program and conference system | |
KR100845274B1 (en) | Apparatus and method for generating user-interface based on face recognition in a exhibition system | |
JP2013080266A (en) | Input device | |
JP2019074939A (en) | Terminal device, and system, method and program for information processing | |
JP2015203680A (en) | Information processing device, method, and program | |
JP2015153180A (en) | Information processor and information processing method | |
CN106952217B (en) | Intelligent robot-oriented facial expression enhancement method and device | |
CN114138250A (en) | Method, device and equipment for generating steps of system case and storage medium | |
KR101595960B1 (en) | 3d image generation method and apparatus performing the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |