KR101465896B1 - Mobile terminal for generating control commands using front side camera and rear side camera - Google Patents

Mobile terminal for generating control commands using front side camera and rear side camera Download PDF

Info

Publication number
KR101465896B1
KR101465896B1 KR1020130114195A KR20130114195A KR101465896B1 KR 101465896 B1 KR101465896 B1 KR 101465896B1 KR 1020130114195 A KR1020130114195 A KR 1020130114195A KR 20130114195 A KR20130114195 A KR 20130114195A KR 101465896 B1 KR101465896 B1 KR 101465896B1
Authority
KR
South Korea
Prior art keywords
color marker
coordinate value
side camera
region
area
Prior art date
Application number
KR1020130114195A
Other languages
Korean (ko)
Inventor
홍광석
오병훈
Original Assignee
성균관대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 성균관대학교산학협력단 filed Critical 성균관대학교산학협력단
Priority to KR1020130114195A priority Critical patent/KR101465896B1/en
Application granted granted Critical
Publication of KR101465896B1 publication Critical patent/KR101465896B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/033Indexing scheme relating to G06F3/033
    • G06F2203/0331Finger worn pointing device

Abstract

A mobile terminal (100) for generating control commands using a front-facing camera and a rear-facing camera comprises the followings: the front-facing camera (110) configured to receive a first target image including a first color marker region attached on a finger; a rear-facing camera (120) configured to receive a second target image including a second color marker region attached on another finger; a marker region detection module (130) configured to detect the first color marker region from the first target image and the second color marker region from the second target image using a color detection technology; and a coordinates calculation module (140) configured to calculate first three-dimensional coordinates values using the first color marker region and second three-dimensional coordinates values using the second color marker region.

Description

전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말{MOBILE TERMINAL FOR GENERATING CONTROL COMMANDS USING FRONT SIDE CAMERA AND REAR SIDE CAMERA}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a mobile terminal for generating a control command using a front-side camera and a rear-

이하 설명하는 기술은 전면부 카메라 및 후면부 카메라에 입력되는 손가락 영상을 이용하여 삼차원 좌표값과 같은 제어 명령을 생성하는 이동 단말에 관한 것이다.The present invention relates to a mobile terminal that generates a control command such as a three-dimensional coordinate value by using a finger image input to a front side camera and a rear side camera.

최근 스마트폰과 같은 이동 단말이 보급되면서, 이동 단말에 포함된 터치 스크린, 센서 및 카메라 등을 이용한 다양한 인터페이스 기술이 연구되고 있다.Recently, as a mobile terminal such as a smart phone becomes popular, a variety of interface technologies using a touch screen, a sensor, and a camera included in a mobile terminal are being studied.

특히 카메라에 입력되는 영상을 분석하여 특정한 제스처를 인터페이스로 사용하는 방법에 대한 연구가 많이 진행되고 있다.Especially, there is a lot of research on how to use a specific gesture as an interface by analyzing images input to a camera.

한편 최근 이동 단말은 전면부 카메라와 후면부 카메라를 동시에 사용하는 기술을 선보이고 있다.In recent years, a mobile terminal has introduced a technique of simultaneously using a front side camera and a rear side camera.

한국공개특허 10-2011-0037053호Korean Patent Publication No. 10-2011-0037053

김장운, 김송국, 홍석주, 장한별, 이칠우, “HLF(Haar-like Feature)를 이용한 실시간 손 포즈 인식”, 한국HCI학회 2007년도 학술대회 1부, p.897-902, 2007년 2월."Real-time Hand Pose Recognition Using HLF (Haar-like Feature)", Proceedings of the 2007 HCI Conference, Vol. 1, pp.897-902, February 2007. Kim, JK, Kim,

종래 카메라를 이용한 인터페이스 방식은 주로 특정한 제스처(손동작 등) 또는 사용자의 눈동자의 움직임을 인식하여 특정한 명령을 생성하는 것이다. 종래 삼차원 좌표를 생성하기 위한 연구는 주로 추가적인 장비를 요구하거나, 별도의 인터페이스 입력 장치를 사용하였다. 또한 이미지 처리 과정은 배경이 복잡하거나 배경이 특정 색상인 경우 대상 물체를 제대로 인식하지 못하는 문제점이 있다.Conventionally, the interface method using a camera mainly generates a specific command by recognizing a specific gesture (such as a hand gesture) or the movement of the user's pupil. Conventionally, the research for generating three-dimensional coordinates mainly requires additional equipment or a separate interface input device. Also, the image processing process has a problem that the object is not recognized properly when the background is complicated or the background is a specific color.

이하 설명하는 기술은 전면부 카메라 및 후면부 카메라를 동시에 사용하여 획득하는 손가락 영상을 이용하여 3차원 좌표를 생성하고자 한다. 이하 설명하는 기술은 카메라에 입력되는 영상에서 손가락 영역을 검출하기 어려운 경우 마커를 사용하여 3차원 좌표를 생성하고자 한다.The technique described below is intended to generate three-dimensional coordinates using a finger image acquired using a front-side camera and a rear-side camera simultaneously. In the technique described below, when it is difficult to detect a finger region in an image input to a camera, a marker is used to generate three-dimensional coordinates.

이하 설명하는 기술의 해결과제는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 해결과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The solutions to the technical problems described below are not limited to those mentioned above, and other solutions not mentioned can be clearly understood by those skilled in the art from the following description.

상기 과제를 해결하기 위한 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말은 손가락에 부착하는 제1 색상 마커 영역을 포함하는 제1 타겟 영상을 입력받는 전면부 카메라, 손가락에 부착하는 제2 색상 마커 영역을 포함하는 제2 타겟 영상을 입력받는 후면부 카메라, 색상 검출 기술을 이용하여 제1 타겟 영상에서 제1 색상 마커 영역을 검출하고, 제2 타겟 영상에서 제2 색상 마커 영역을 검출하는 마커 영역 검출 모듈 및 제1 색상 마커 영역을 이용하여 제1 삼차원 좌표값을 연산하고, 제2 색상 마커 영역을 이용하여 제2 삼차원 좌표값을 연산하는 좌표 연산 모듈을 포함한다.A mobile terminal for generating a control command using a front side camera and a rear side camera for solving the above problems includes a front side camera which receives a first target image including a first color marker area attached to a finger, Detecting a first color marker region in a first target image using a rear face camera that receives a second target image including a second color marker region, a color detection technique, and detecting a second color marker region in the second target image And a coordinate calculation module for calculating a first three-dimensional coordinate value using the first color marker area and a second three-dimensional coordinate value using the second color marker area.

상기 과제를 해결하기 위한 다른 측면의 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말은 제1 손가락 영역 또는 손가락에 부착하는 제1 색상 마커 영역 중 적어도 하나를 포함하는 제1 타겟 영상을 입력받는 전면부 카메라, 제2 손가락 영역 또는 손가락에 부착하는 제2 색상 마커 영역 중 적어도 하나를 포함하는 제2 타겟 영상을 입력받는 후면부 카메라, 영상 처리 기술을 이용하여 제1 손가락 영역 또는 제2 손가락 영역 중 적어도 하나에서 끝 영역을 검출하는 손가락 끝 영역 검출 모듈, 색상 검출 기술을 이용하여 제1 색상 마커 영역 또는 제2 색상 마커 영역 중 적어도 하나를 검출하는 마커 영역 검출 모듈, 사용자의 입력을 기준으로 손가락 끝 영역 검출 모듈 또는 마커 영역 검출 모듈을 구동하는 제어 모듈 및 제1 손가락 영역의 끝 영역 또는 제1 색상 마커 영역 중 적어도 하나를 이용하여 제1 삼차원 좌표값을 연산하고, 제2 손가락 영역의 끝 영역 또는 제2 색상 마커 영역 중 적어도 하나를 이용하여 제2 삼차원 좌표값을 연산하는 좌표 연산 모듈을 포함한다.A mobile terminal for generating a control command using a front side camera and a rear side camera of another aspect for solving the above problems includes a first target image area including at least one of a first finger area or a first color marker area attached to a finger, A rear face camera for receiving a second target image including at least one of a front face camera, a second face area, and a second color marker area attached to a finger, A fingertip detection module for detecting an ending region in at least one of the finger regions, a marker region detection module for detecting at least one of the first color marker region and the second color marker region using a color detection technique, A control module for driving the fingertip detection module or the marker detection module, Calculating a first three-dimensional coordinate value using at least one of an end area of the lock area and a first color marker area, calculating a first three-dimensional coordinate value using at least one of an end area of the second finger area and a second color marker area, And a coordinate calculation module for calculating a coordinate value

전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말은 제1 삼차원 좌표값과 제2 삼차원 좌표값을 하나의 삼차원 공간에서 정합하는 좌표 정합 모듈을 더 포함할 수 있다.The mobile terminal for generating the control command using the front side camera and the rear side camera may further include a coordinate matching module for matching the first three-dimensional coordinate values and the second three-dimensional coordinate values in one three-dimensional space.

이하 설명하는 기술은 이동 단말의 전면부 카메라와 후면부 카메라를 동시에 이용하여 다양한 인터페이스 방법을 제공한다. 또한 이하 설명하는 기술은 사용자가 다양한 배경에서도 단말의 카메라를 통해 손가락에 부착한 마커를 인식하여 인터페이스 수단으로 사용할 수 있게 한다. The technique described below provides various interface methods by simultaneously using the front-end camera and the rear-panel camera of the mobile terminal. In addition, the technology described below enables a user to recognize a marker attached to a finger through a camera of the terminal in various backgrounds and use it as an interface means.

이하 설명하는 기술은 이동 단말에서 실행되는 애플리케이션에서 사용자가 편리하게 제어 명령을 입력하게 한다. 나아가 이동 단말뿐만 아니라 카메라를 장착한 다양한 기기(리모콘, 콘트롤러 등)에도 응용이 가능하다. 예컨대, 게임기의 컨트롤러에도 적용이 가능하다.The technique described below allows a user to conveniently input a control command in an application executed in a mobile terminal. Furthermore, the present invention can be applied not only to mobile terminals but also to various devices (remote controllers, controllers, etc.) equipped with cameras. For example, it can be applied to a controller of a game machine.

이하 설명하는 기술의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the techniques described below are not limited to those mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the following description.

도 1은 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 예를 도시한다.
도 2는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말에 대한 구성을 도시한 블럭도의 예이다.
도 3은 손가락에 부착하는 마커의 예를 도시한다.
도 4는 CAMshift 알고리즘을 이용하여 색상 마커 영역을 검출하는 과정에 대한 예를 도시한다.
도 5는 CAMshift 알고리즘을 이용하여 색상 마커 영역을 검출하는 실험예를 도시한다.
도 6(a)은 전면부 카메라의 삼차원 좌표 공간과 후면부 카메라의 삼차원 좌표 공간을 도시하고, 도 6(b)는 전면부 카메라의 삼차원 좌표 공간과 후면부 카메라의 삼차원 좌표 공간을 정합한 예를 도시한다.
도 7은 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말에 대한 구성을 도시한 블럭도의 다른 예이다.
도 8은 손가락 영역을 이용한 삼차원 좌표값 생성의 기준이 되는 예를 도시한다.
1 shows an example of generating a control command using a front side camera and a rear side camera.
2 is a block diagram illustrating a configuration of a mobile terminal for generating a control command using a front side camera and a rear side camera.
Fig. 3 shows an example of a marker attached to a finger.
FIG. 4 shows an example of a process of detecting a color marker region using the CAMshift algorithm.
FIG. 5 shows an experimental example of detecting a color marker region using the CAMshift algorithm.
6 (a) shows a three-dimensional coordinate space of a front-side camera and a three-dimensional coordinate space of a rear-side camera. FIG. 6 (b) shows an example of a three-dimensional coordinate space of a front- do.
7 is another example of a block diagram illustrating a configuration of a mobile terminal for generating a control command using a front side camera and a rear side camera.
8 shows an example of a reference for generation of a three-dimensional coordinate value using a finger region.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 해당 구성요소들은 상기 용어들에 의해 한정되지는 않으며, 단지 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, A, B, etc., may be used to describe various components, but the components are not limited by the terms, but may be used to distinguish one component from another . For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

본 명세서에서 사용되는 용어에서 단수의 표현은 문맥상 명백하게 다르게 해석되지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함한다" 등의 용어는 설시된 특징, 개수, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 의미하는 것이지, 하나 또는 그 이상의 다른 특징들이나 개수, 단계 동작 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하지 않는 것으로 이해되어야 한다.As used herein, the singular " include "should be understood to include a plurality of representations unless the context clearly dictates otherwise, and the terms" comprises & , Parts or combinations thereof, and does not preclude the presence or addition of one or more other features, integers, steps, components, components, or combinations thereof.

도면에 대한 상세한 설명을 하기에 앞서, 본 명세서에서의 구성부들에 대한 구분은 각 구성부가 담당하는 주기능 별로 구분한 것에 불과함을 명확히 하고자 한다. 즉, 이하에서 설명할 2개 이상의 구성부가 하나의 구성부로 합쳐지거나 또는 하나의 구성부가 보다 세분화된 기능별로 2개 이상으로 분화되어 구비될 수도 있다. 그리고 이하에서 설명할 구성부 각각은 자신이 담당하는 주기능 이외에도 다른 구성부가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성부 각각이 담당하는 주기능 중 일부 기능이 다른 구성부에 의해 전담되어 수행될 수도 있음은 물론이다. 따라서, 본 명세서를 통해 설명되는 각 구성부들의 존재 여부는 기능적으로 해석되어야 할 것이며, 이러한 이유로 본 발명의 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(100,200)에 따른 구성부들의 구성은 본 발명의 목적을 달성할 수 있는 한도 내에서 대응하는 도면과는 상이해질 수 있음을 명확히 밝혀둔다.Before describing the drawings in detail, it is to be clarified that the division of constituent parts in this specification is merely a division by main functions of each constituent part. That is, two or more constituent parts to be described below may be combined into one constituent part, or one constituent part may be divided into two or more functions according to functions that are more subdivided. In addition, each of the constituent units described below may additionally perform some or all of the functions of other constituent units in addition to the main functions of the constituent units themselves, and that some of the main functions, And may be carried out in a dedicated manner. Accordingly, the presence or absence of each component described in the present specification should be interpreted as a function. For this reason, the components (100, 200) according to the mobile terminal (100, 200) generating the control command using the front side camera and the rear side camera of the present invention It is to be clearly understood that the configuration of the present invention may be different from the corresponding drawings within the scope of achieving the object of the present invention.

또, 방법 또는 동작 방법을 수행함에 있어서, 상기 방법을 이루는 각 과정들은 문맥상 명백하게 특정 순서를 기재하지 않은 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 과정들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
Also, in performing a method or an operation method, each of the processes constituting the method may take place differently from the stated order unless clearly specified in the context. That is, each process may occur in the same order as described, may be performed substantially concurrently, or may be performed in the opposite order.

본 발명은 이동 단말을 포함하는 단말기에 내장된 카메라를 이용하여 사용자의 손가락 영상을 촬영하고, 촬영된 손가락 영상을 이용하여 이동 단말 또는 이동 단말에서 실행되는 애플리케이션에 특정 제어 명령(삼차원 좌표값 등)을 입력하는 기법에 관한 것이다. 또한 본 발명은 손가락 영상에서 색상 마커로 표시되는 특정 영역(색상 마커 영역)을 검출하여 색상 마커 영역을 기준으로 이동 단말에 특정 제어 명령을 전달할 수 있다. 카메라에 입력되는 영상에서 손가락을 쉽게 검출할 수 있는 환경이라면, 손가락 영역을 검출하여 특정 객체를 제어하는 제어 명령을 생성하고, 손가락 검출이 쉽지 않은 환경이라면, 색상 마커 영역을 검출하여 특정 객체를 제어하는 제어 명령을 생성할 수 있다.The present invention takes a finger image of a user using a camera built in a terminal including a mobile terminal and transmits a specific control command (a three-dimensional coordinate value or the like) to an application executed in the mobile terminal or the mobile terminal, As shown in FIG. Further, the present invention can detect a specific area (color marker area) represented by a color marker in a finger image and transmit a specific control command to the mobile terminal based on the color marker area. In the environment where the finger can be easily detected from the image input to the camera, a control command for controlling the specific object is detected by detecting the finger region. If the finger is not easily detected, the color marker region is detected, Can be generated.

제어 명령은 이동 단말 등에서 실행되는 애플리케이션에서 사용자가 입력하는 명령을 말한다. 예컨대, 제어 명령은 게임과 같은 애플리케이션에서 특정 객체를 조정하기 위한 2차원 또는 삼차원 좌표값일 수 있다. 또한 제어 명령은 특정 애플리케이션에서 특정한 메뉴를 선택하기 위한 입력일 수도 있다. 제어 명령은 일반적으로 특정 객체에 대한 위치를 변경하는 명령에 해당한다.A control command is a command input by a user in an application executed in a mobile terminal or the like. For example, the control command may be a two-dimensional or three-dimensional coordinate value for coordinating a particular object in an application, such as a game. The control command may also be an input for selecting a particular menu in a particular application. A control command generally corresponds to a command that changes the position of a particular object.

타겟 영상은 손가락 영상이 포함된 소스 영상을 의미한다. 타겟 영상은 카메라와 같은 영상 획득 장치를 통해 촬영된다. 사용자가 이동 단말을 통해 특정 애플리케이션을 실행하고, 애플리케이션이 수행되는 디스플레이 화면을 보면서 손가락으로 애플리케이션의 특정 객체에 대한 움직임(좌표)을 제어한다.The target image means a source image including a finger image. The target image is captured through an image acquisition device such as a camera. A user executes a specific application through a mobile terminal, and controls the movement (coordinates) of a specific object of the application with a finger while viewing a display screen on which the application is executed.

본 발명은 이동 단말에 내장된 전면부 카메라와 후면부 카메라를 이용하여 2개의 타겟 영상을 획득한다. 전면부 카메라가 획득하는 타겟 영상을 제1 타겟 영상이라고 하고, 후면부 카메라가 획득하는 타겟 영상을 제2 타겟 영상이라고 명명한다. 전면부 카메라는 이동 단말에서 디스플레이 장치가 설치된 방향의 카메라를 의미하고, 후면부 카메라는 상기 디스플레이 장치의 배면 방향으로 설치된 카메라를 의미한다. The present invention acquires two target images using a front side camera and a rear side camera built in a mobile terminal. The target image acquired by the front side camera is referred to as a first target image and the target image acquired by the rear side camera is referred to as a second target image. The front side camera means a camera in a direction in which a display device is installed in a mobile terminal and the rear side camera means a camera installed in a rear direction of the display device.

도 1은 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 예를 도시한다. 도 1(a)는 전면부 카메라 및 후면부 카메라 각각에 사용자 양손의 손가락을 이용하여 2차원 좌표(x 및 y)를 생성하기 위한 움직임의 예를 도시한다. 도 1(b)는 전면부 카메라 및 후면부 카메라 각각에 사용자 양손의 손가락을 이용하여 z 방향 좌표를 생성하기 위한 움직임의 예를 도시한다. 1 shows an example of generating a control command using a front side camera and a rear side camera. 1 (a) shows an example of movement for generating two-dimensional coordinates (x and y) using the fingers of the user's both hands on the front side camera and the rear side camera, respectively. Fig. 1 (b) shows an example of movement for generating z-direction coordinates using the fingers of the user's hands on the front side camera and the rear side camera, respectively.

도 1은 전면부 카메라와 후면부 카메라를 이용하는 하나의 예를 도시한 것에 불과하다. 예컨대, 엄지와 검지를 이용하는 경우와 같이 사용자는 하나의 손으로 전면부 카메라와 후면부 카메라에 손가락 영상을 입력할 수 있다. 또한 2 명 이상의 사용자가 전면부 카메라와 후면부 카메라에 손가락 영상을 각각 입력할 수도 있다. 1 shows only one example using a front-side camera and a rear-side camera. For example, as in the case of using the thumb and index finger, the user can input a finger image to the front side camera and the rear side camera with one hand. Also, two or more users may input finger images to the front side camera and the rear side camera, respectively.

본 발명은 전면부 카메라와 후면부 카메라를 동시에 이용하여 애플리케이션에서 동작하는(디스플레이 장치에 출력되는) 하나의 객체를 제어할 수도 있고, 복수의 객체를 제어할 수도 있다. 나아가 두 명의 사용자가 전면부 카메라와 후면부 카메라를 각각 이용하여 서로 다른 객체를 제어할 수도 있다. 예컨대, 게임과 같은 애플리케이션에서 두 명이 서로 대항하여 게임을 즐길 수도 있는 것이다. 이하 설명하는 본 발명은 본 발명을 활용한 다양한 응용예를 제한하지 않는다.The present invention can control one object (output to the display device) operating in an application using a front-side camera and a rear-side camera at the same time, or control a plurality of objects. Furthermore, two users can control different objects using the front camera and the rear camera, respectively. For example, in an application such as a game, two people may enjoy the game against each other. The present invention described below does not limit the various applications utilizing the present invention.

본 발명에서 이동 단말은 스마트폰, 태블릿 PC, 노트북, 포터블 게임기, TV나 게임기에 사용되는 리모컨 등을 포함하는 의미이다. 나아가 이동성이 없는 일반 PC, 서버에 연결된 터미널 등을 이용하는 경우에도 본 발명을 사용할 수 있다.
In the present invention, the mobile terminal includes a smart phone, a tablet PC, a notebook, a portable game machine, a remote controller used in a TV or a game machine, and the like. Furthermore, the present invention can also be used when a general PC having no mobility, a terminal connected to a server, or the like is used.

이하에서는 도면을 참조하면서 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(100,200)에 관하여 구체적으로 설명하겠다.Hereinafter, the mobile terminals 100 and 200 that generate control commands using the front-side camera and the rear-side camera will be described in detail with reference to the drawings.

도 2는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(100)에 대한 구성을 도시한 블럭도의 예이다.2 is an example of a block diagram illustrating a configuration of a mobile terminal 100 that generates a control command using a front side camera and a rear side camera.

전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(100)은 손가락에 부착하는 제1 색상 마커 영역을 포함하는 제1 타겟 영상을 입력받는 전면부 카메라(110), 손가락에 부착하는 제2 색상 마커 영역을 포함하는 제2 타겟 영상을 입력받는 후면부 카메라(120), 색상 검출 기술을 이용하여 제1 타겟 영상에서 제1 색상 마커 영역을 검출하고, 제2 타겟 영상에서 제2 색상 마커 영역을 검출하는 마커 영역 검출 모듈(130) 및 제1 색상 마커 영역을 이용하여 제1 삼차원 좌표값을 연산하고, 제2 색상 마커 영역을 이용하여 제2 삼차원 좌표값을 연산하는 좌표 연산 모듈(140)을 포함한다.The mobile terminal 100 for generating a control command using a front side camera and a rear side camera includes a front side camera 110 receiving a first target image including a first color marker area attached to a finger, A rear camera 120 for receiving a second target image including a second color marker region, a first color marker region in the first target image using a color detection technique, and a second color marker region in the second target image, A coordinate calculation module 140 for calculating a first three-dimensional coordinate value using the first color marker area and a second three-dimensional coordinate value using the second color marker area, ).

도 2는 손가락에 부착된 색상 마커를 인식하고, 이를 인터페이스의 기준으로 사용하고자 한다 손가락에 부착된 색상 마커는 피부색이 아닌 다른 색인 것이 바람직하다. 제1 타겟 영상에 나타나는 색상 마커 부분을 제1 색상 마커 영역이라고 명명하고, 제2 타겟 영상에 나타나는 색상 마커 부분을 제2 색상 마커 영역이라고 명명한다.FIG. 2 illustrates a color marker attached to a finger and is used as a reference of an interface. The color marker attached to the finger is preferably a color other than the skin color. The color marker portion appearing in the first target image is called a first color marker region and the color marker portion appearing in the second target image is called a second color marker region.

전면부 카메라(110) 및 후면부 카메라(120)는 각각 색상 마커를 부착한 사용자의 손가락 영상을 입력받고, 이를 마커 영역 검출 모듈(130)에 전달한다.The front-side camera 110 and the rear-side camera 120 receive a finger image of a user with a color marker attached thereto, respectively, and transmit the image to the marker region detection module 130.

마커 영역 검출 모듈(130)은 색상 검출 기술 중 CAMshift(Continuously Adaptive Mean Shift) 알고리즘을 사용하여 타겟 영상에서 색상 마커 영역을 검출할 수 있다. The marker region detection module 130 can detect a color marker region in a target image using a Continuous Adaptive Mean Shift (CAMshift) algorithm among color detection techniques.

CAMshift 알고리즘은 데이터 집합의 밀도 분포(특징점, 코너, 색상)를 기반으로 관심영역 객체를 고속으로 추적하는 Meanshift 알고리즘을 개선한 것이다. CAMshift 알고리즘은 탐색윈도우의 크기를 스스로 조정하는 기법을 사용하여 Mean-shift의 단점을 보완한 것이다. CAMshift 알고리즘은 객체의 관심 영역의 Hue 값의 분포를 이용하여 변화될 위치를 예측하고, 탐지한 후 중심을 찾아 객체를 추적하게 된다. 나아가 색상 마커 영역을 검출하기 위하여 CAMshift 알고리즘 외에 다양한 알고리즘이 사용될 수 있음은 자명하다.The CAMshift algorithm is an improvement on the Meanshift algorithm that tracks objects of interest at high speed based on the density distribution (feature points, corners, colors) of the data set. The CAMshift algorithm complements the disadvantage of mean-shift by using the technique of adjusting the size of the search window by itself. The CAMshift algorithm predicts the position to be changed by using the distribution of the Hue value of the region of interest of the object, and tracks the object by detecting the center after detecting it. Furthermore, it is apparent that various algorithms other than the CAMshift algorithm can be used to detect the color marker region.

마커 영역 검출 모듈(130)이 제1 타겟 영상에서 제1 색상 마커 영역을 검출하면, 좌표 연산 모듈(140)이 제1 색상 마커 영역을 이용하여 삼차원 좌표값을 연산할 수 있다. 전면부 카메라에 입력되는 손가락 영상을 이용하여 연산되는 삼차원 좌표값을 제1 삼차원 좌표값이라고 명명한다. 또한 마커 영역 검출 모듈(130)이 제2 타겟 영상에서 제2 색상 마커 영역을 검출하면, 좌표 연산 모듈(140)이 제2 색상 마커 영역을 이용하여 삼차원 좌표값을 연산할 수 있다. 후면부 카메라에 입력되는 손가락 영상을 이용하여 연산되는 삼차원 좌표값을 제2 삼차원 좌표값이라고 명명한다.When the marker area detection module 130 detects the first color marker area in the first target image, the coordinate calculation module 140 can calculate the three-dimensional coordinate value using the first color marker area. The three-dimensional coordinate value calculated using the finger image input to the front-side camera is called a first three-dimensional coordinate value. When the marker area detection module 130 detects the second color marker area in the second target image, the coordinate calculation module 140 can calculate the three-dimensional coordinate value using the second color marker area. The three-dimensional coordinate value calculated using the finger image input to the rear-side camera is referred to as a second three-dimensional coordinate value.

마커 영역 검출 모듈(130)은 색상 마커 영역이 관심 영역으로 지정되면, RGB 영상을 HSV 영상으로 변환하고, HSV 영상의 H 채널에 대해 히스토그램의 최대 빈도수 특성을 이용하여 기본 영상을 생성하고, HSV 영상의 S 채널과 V 채널 각각에 대해 임계값을 추출한 결과를 합산하여 마스크 영상을 생성하고, 기본 영상과 마스크 영상을 결합하여 색상 마커 영역을 검출한다. 구체적인 과정은 후술하도록 한다.When the color marker region is designated as a region of interest, the marker region detection module 130 converts the RGB image into the HSV image, generates a basic image using the maximum frequency characteristic of the histogram for the H channel of the HSV image, A mask image is generated by summing up the results of extracting the threshold values for the S channel and the V channel of each of the S and V channels, and a color marker region is detected by combining the basic image and the mask image. The detailed procedure will be described later.

인터페이스 입력 모듈(160)은 좌표 연산 모듈(140)을 통해 연산된 최종 삼차원 좌표를 전달받는 모듈을 의미한다. 인터페이스 입력 모듈(160)은 삼차원 좌표를 이동 단말 또는 이동 단말에서 구동되는 애플리케이션에 전달하는 구성이다.The interface input module 160 refers to a module that receives the final three-dimensional coordinates calculated through the coordinate calculation module 140. The interface input module 160 transmits the three-dimensional coordinates to a mobile terminal or an application driven by the mobile terminal.

한편 전면부 카메라에서 획득한 제1 색상 마커 영역을 이용하여 연산되는 제1 삼차원 좌표값과 후면부 카메라에서 획득한 제2 색상 마커 영역을 이용하여 연산되는 제2 삼차원 좌표값이 하나의 애플리케이션에서 객체를 제어하는 경우 제1 삼차원 좌표값과 제2 삼차원 좌표값은 동일한 삼차원 공간에서 정합되는 것이 바람직하다. 이를 위해 이동 단말(100)은 좌표 정합 모듈(150)을 포함할 수 있다. 구체적인 내용은 후술하도록 한다.The second three-dimensional coordinate value calculated using the first three-dimensional coordinate value calculated using the first color marker area acquired by the front-side camera and the second color marker area acquired by the rear-side camera corresponds to the object The first three-dimensional coordinate value and the second three-dimensional coordinate value are preferably matched in the same three-dimensional space. For this, the mobile terminal 100 may include a coordinate matching module 150. The details will be described later.

도 3은 손가락에 부착하는 마커의 예를 도시한다. 도 3(a)는 손가락 끝에 스티커 형태의 마커를 부착한 예이고, 도 3(b)는 손가락 끝에 밴드 형태의 마커를 부착한 예이고, 도 3(c)는 손가락 끝에 골무형태의 마커를 부착한 예이고, 도 3(d)는 손가락 끝에 색상 마커를 색칠할 형태의 예이다. 도 3는 본 발명에서 사용될 수 있는 마커를 예시한 것에 불과하다. 따라서, 도 3에 예시되지 않은 다양한 색상, 다양한 크기, 다양한 모양의 마커가 사용될 수 있음은 자명하다. 도 3는 예시된 화면은 실제 카메라에 입력된 타겟 영상의 예이기도 한다. 도 3에서 'M'으로 표시한 점선 영역이 색상 마커 영역에 해당한다.
Fig. 3 shows an example of a marker attached to a finger. Fig. 3 (a) shows an example in which a marker in the form of a sticker is attached to a fingertip, Fig. 3 (b) shows an example in which a marker in the form of a band is attached to the fingertip, Fig. 3 Fig. 3 (d) is an example of a form in which a color marker is colored at the fingertip. Figure 3 is merely an example of a marker that can be used in the present invention. Therefore, it is apparent that markers of various colors, various sizes, and shapes not illustrated in Fig. 3 can be used. 3 is an example of a target image input to an actual camera. In FIG. 3, the dotted area indicated by 'M' corresponds to the color marker area.

도 4는 CAMshift 알고리즘을 이용하여 색상 마커 영역을 검출하는 과정(400)에 대한 예를 도시한다. 전술한 마커 영역 검출 모듈(130)이 동작하는 과정을 의미한다.FIG. 4 illustrates an example of a process 400 for detecting a color marker region using the CAMshift algorithm. Means the process of operating the marker region detection module 130 described above.

먼저 카메라를 통해 타겟 영상이 입력된다(410). 입력된 타겟 영상에서 색상 마커 영역이 관심 영역으로 지정된다(420). 사용자가 타겟 영상에서 색상 마커 영역을 선택하는 방식으로 관심 영역을 지정할 수 있다. 예컨대, 이동 단말의 디스플레이 장치가 터치 패널이라면, 색상 마커 영역을 터치하여 관심 영역으로 지정할 수 있다. 또는 사용자가 커서 등을 이용하여 색상 마커 영역을 관심 영역으로 지정할 수도 있다. 나아가, 이미지 처리 기술을 이용하여 타겟 영상에서 색상 마커 영역을 추출할 수도 있을 것이다.First, a target image is input through a camera (410). In the input target image, a color marker region is designated as a region of interest 420. The user can specify the region of interest by selecting a color marker region in the target image. For example, if the display device of the mobile terminal is a touch panel, a color marker area can be touched to designate it as a region of interest. Alternatively, the user may designate the color marker area as a region of interest by using a cursor or the like. Further, a color marker region may be extracted from the target image using an image processing technique.

처리할 관심 영역이 결정되면, 관심 영역에 대한 색상 분석을 통하여 변화될 위치를 예측하고, 탐지한 후 중심을 찾아 객체를 추적하게 되는데 그 과정은 다음과 같다. Once the region of interest to be processed is determined, the position to be changed is predicted through color analysis of the region of interest, and the object is tracked by detecting the center after the detection.

카메라를 통해 입력된 타겟 영상의 RGB 이미지를 HSV 이미지로 변환한다(430). 이 과정에서 HSV로 변환된 이미지를 각각의 Hue(색상), Saturation(채도), Value(명도) 채널로 분리한다. 본 발명에서는 Hue 채널(H 채널)뿐만 아니라 Saturation 채널(S 채널), Value 채널(V 채널)도 같이 사용하였는데 이는 다양한 손가락 동작에 따라 빈번하게 발생하는 유사 색상의 물체 혹은 배경과의 겹침 문제를 해결하고, 배경 및 조명 변화에 강인한 추적 성능을 확보하기 위해서이다. The RGB image of the target image input through the camera is converted into the HSV image (430). In this process, HSV converted images are separated into Hue, Saturation, and Value channels. In the present invention, saturation channel (S channel) and value channel (V channel) as well as a Hue channel (H channel) are used in combination to solve a problem of overlapping of similar color objects or backgrounds And to ensure robust tracking performance against background and illumination changes.

이후 각 채널에서 이미지 처리가 수행되는데 H 채널에서 수행되는 과정, S 채널 및 V 채널에서 수행되는 과정은 순서에 상관없이 수행될 수 있다.Thereafter, image processing is performed on each channel, and a process performed in the H channel, a process performed in the S channel and the V channel can be performed in any order.

H 채널에서 수행되는 과정은 H 채널에 대한 히스토그램 분석을 수행하고(441), 분석된 히스토그램의 최대 빈도수 특성을 이용하여 영상을 다시 재생성하는 단계(442)를 포함한다. 본 발명에서는 이 과정에서 재생성되는 영상을 기본 영상이라고 명명한다.The process performed on the H channel includes performing a histogram analysis on the H channel (441) and regenerating the image using the maximum frequency characteristic of the analyzed histogram (442). In the present invention, an image to be regenerated in this process is called a basic image.

S 채널 및 V 채널에서 수행되는 과정은 S 채널에서는 최대 임계값 및 최소 임계값을 이용하여 S 채널의 최대값 및 최소값을 추출하는 단계(451), V 채널에서는 최소 임계값을 이용하여 V 채널의 최소값을 추출하는 단계(452) 및 S 채널에서 추출한 값과 V 채널에서 추출한 값에 대한 AND 연산을 수행하여 마스크(mask) 영상을 생성하는 단계(453)를 포함한다. Hue 정보 이외에 Saturation 및 Value 채널의 성분을 추가적으로 사용함으로써 적은 연산량으로 낮은 Hue 값에서의 색상 분별력 개선 효과를 가지도록 하였다. The process performed in the S channel and the V channel includes a step 451 of extracting the maximum value and the minimum value of the S channel using the maximum threshold value and the minimum threshold value in the S channel, A step 452 of extracting the minimum value, and a step 453 of generating a mask image by performing an AND operation on the value extracted from the S channel and the value extracted from the V channel. In addition to the Hue information, Saturation and Value channels are used additionally to improve the color discrimination power at low hue values with a small amount of computation.

H 채널에서 생성한 기본 영상과 S 채널과 V 채널을 이용하여 생성한 마스크 영상을 AND 연상으로 결합하여 최종 영상을 생성하고(460), 생성된 최종 영상에서 색상 마커 영역을 검출하게 된다(470).
A final image is generated by combining the basic image generated in the H channel with the mask image generated using the S channel and the V channel in an AND relationship, and a color marker region is detected in the generated final image (470) .

도 5는 CAMshift 알고리즘을 이용하여 색상 마커 영역을 검출하는 실험예를 도시한다. 도 5에서 (a)는 색상 마커 영역을 포함하는 타겟 영상을 도시하고, (b)는 HSV 영상으로 변환된 예를 도시한다. 도 5에서 (c)는 HSV 영상에서 H 채널을 분리한 예이고, (d)는 H 채널에서 기본 영상을 생성한 예이다. 도 5에서 (e)는 HSV 영상에서 분리한 S 채널과 V 채널을 이용하여 마스크 영상을 생성한 예이다. 도 5에서 (f)는 기본 영상과 마스크 영상을 AND 연산하여 최종 영상을 생성한 예이고, (g)는 최종 영상에서 색상 마커 영역을 검출한 예를 도시한다.
FIG. 5 shows an experimental example of detecting a color marker region using the CAMshift algorithm. 5 (a) shows a target image including a color marker region, and FIG. 5 (b) shows an example converted into an HSV image. 5 (c) shows an example of separating H channels from the HSV image, and FIG. 5 (d) shows an example of generating a basic image on the H channel. 5 (e) shows an example of generating a mask image using the S channel and the V channel separated from the HSV image. In FIG. 5, (f) shows an example of generating a final image by ANDing a basic image and a mask image, and (g) shows an example of detecting a color marker region in the final image.

손가락에 부착한 마커를 이용하여 제어 명령을 생성하는 이동 단말(100)에서 좌표 연산 모듈(430)은 검출한 색상 마커 영역을 이용하여 3 차원 좌표를 생성하는 구성이다. 좌표 연산 모듈(430)은 검출된 색상 마커 영역의 너비(폭) 또는 지름을 이용하여 X, Y, Z 좌표를 추정한다. 이하 좌표 연산 모듈(430)이 삼차원 좌표를 생성하는 과정을 구체적으로 설명한다. 이하 설명하는 내용은 전면부 카메라(110)에서 획득한 제1 색상 마커 영역을 이용하여 생성하는 제1 삼차원 좌표 및 후면부 카메라(120)에서 획득한 제2 색상 마커 영역을 이용하여 생성하는 제2 삼차원 좌표에 공통된 내용이다.In the mobile terminal 100, which generates a control command using a marker attached to a finger, the coordinate computing module 430 generates a three-dimensional coordinate using the detected color marker area. The coordinate computing module 430 estimates the X, Y, and Z coordinates using the width (width) or diameter of the detected color marker area. Hereinafter, the process of generating the three-dimensional coordinates by the coordinate calculation module 430 will be described in detail. The second three-dimensional coordinates are generated using the first three-dimensional coordinates generated using the first color marker region acquired by the front-side camera 110 and the second color marker region acquired by the rear-side camera 120, This is common to the coordinates.

본 발명에서는 색상 마커의 모양이 원형인 경우 지름을 이용하여 Z 좌표를 추정하고, 사각형 종류인 경우 너비 또는 높이를 이용하여 Z 좌표를 추정한다. 이 밖에 다른 모양인 경우 기준이 될 수 있는 영역의 너비 또는 길이를 이용하여 Z 좌표를 추정할 수 있을 것이다.In the present invention, the Z coordinate is estimated using the diameter when the shape of the color marker is circular, and the Z coordinate is estimated using the width or height when the shape is a rectangle. In other cases, the Z-coordinate can be estimated using the width or length of the reference area.

마커 영역 검출 모듈(130)이 색상 마커 영역을 검출하면, 색상 마커 영역의 중앙 픽셀의 영상 내에서의 x 좌표값 및 y 좌표값을 획득할 수 있고, 색상 마커 영역의 너비 또는 지름 등을 획득할 수 있다. 본 발명에 대한 설명에서 (1) X,Y,Z와 같이 대문자로 표시한 좌표값은 이동 단말 등에서 이용할 수 있는 가상 삼차원 공간에서의 좌표값을 의미하고, (2) x,y와 같이 소문자로 표시한 좌표값은 영상 내에서의 픽셀 위치를 기준으로 한 좌표값을 의미한다.When the marker region detection module 130 detects the color marker region, it is possible to obtain the x-coordinate value and the y-coordinate value in the image of the central pixel of the color marker region, and obtain the width or diameter of the color marker region . In the description of the present invention, (1) upper case letters such as X, Y and Z denote coordinate values in a virtual three-dimensional space usable in a mobile terminal, and (2) lower case letters such as x and y The displayed coordinate value means a coordinate value based on the pixel position in the image.

Z 좌표는 검출된 색상 마커 영역의 너비 또는 지름을 이용하여 거리 추정을 한 뒤 추정된 거리 값을 이용하여 Z 좌표로 매핑(mapping)한다. 색상 마커 영역의 너비 또는 지름은 아래의 수학식 1을 이용하여 추정된다
The Z coordinate is mapped to the Z coordinate using the estimated distance value after the distance is estimated using the width or diameter of the detected color marker area. The width or diameter of the color marker region is estimated using Equation 1 below

Figure 112013087100419-pat00001
Figure 112013087100419-pat00001

여기서, ColorPoint는 색상 마커 영역의 실제 너비 또는 지름이고, PreviewWidth는 카메라에 입력되는 타겟 영상 전체의 너비 또는 지름에 대한 픽셀 값이고, ColorPoint.Region은 타겟 영상에서 색상 마커 영역의 너비 또는 지름에 대한 픽셀 값이고, WidthFOV는 카메라의 가로 시야각이다.Where ColorPoint is the actual width or diameter of the color marker area, PreviewWidth is the pixel value for the width or diameter of the entire target image input to the camera, ColorPoint.Region is the pixel width or diameter of the color marker area in the target image, Value, and WidthFOV is the horizontal viewing angle of the camera.

일 예로 ColorPoint는 0.5cm이고, PreviewWidth는 160 픽셀, WidthFOV는 62도를 사용할 수 있다. 다양한 색상 마커의 모양을 고려해 볼 때 ColorPoint는 다각형의 너비 값 또는 원의 지름 값으로 설정이 가능하다. For example, ColorPoint is 0.5 cm, PreviewWidth is 160 pixels, and WidthFOV is 62 degrees. Given the shape of the various color markers, ColorPoint can be set to the width of a polygon or to the diameter of a circle.

상기 수학식 1에서 사용되는 변수는 전면부 카메라(110)와 후면부 카메라(120)에 따라 다른 상수가 사용될 수 있다. 카메라에 입력되는 색상 마커 영역의 크기에 따라 ColorPoint 및 ColorPoint.Region가 달라질 수 있고, 카메라의 사양에 따라 PreviewWidth, ColorPoint.Region 및 WidthFOV가 달라질 수 있다.The variable used in Equation (1) may be a constant depending on the front-side camera 110 and the rear-side camera 120. Depending on the size of the color marker area that is input to the camera, the ColorPoint and ColorPoint.Region may vary, and PreviewWidth, ColorPoint.Region, and WidthFOV may vary depending on camera specifications.

따라서 제1 삼차원 좌표값 경우 ColorPoint는 제1 색상 마커 영역의 실제 너비 또는 지름, PreviewWidth는 제1 타겟 영상 전체의 너비에 대한 픽셀 값, ColorPoint.Region은 제1 색상 마커 영역의 너비 또는 지름에 대한 픽셀 값, WidthFOV는 전면부 카메라의 가로 시야각이고, 제2 삼차원 좌표값 경우 ColorPoint는 제2 색상 마커 영역의 실제 너비 또는 지름, PreviewWidth는 제2 타겟 영상 전체의 너비에 대한 픽셀 값, ColorPoint.Region은 제2 색상 마커 영역의 너비 또는 지름에 대한 픽셀 값, WidthFOV는 후면부 카메라의 가로 시야각이 된다. 이하 모든 수식에 대하여 전면부 카메라(110)와 후면부 카메라(120)에 대한 변수값에 서로 다른 값이 적용될 수 있다.
Therefore, in the case of the first three-dimensional coordinate value, ColorPoint is the actual width or diameter of the first color marker region, PreviewWidth is the pixel value with respect to the width of the entire first target image, ColorPoint.Region is the pixel width or diameter of the first color marker region , ColorPoint is the actual width or diameter of the second color marker region, PreviewWidth is the pixel value of the width of the entire second target image, ColorPoint.Region is the width of the second target image, 2 The pixel value for the width or diameter of the color marker area, WidthFOV is the horizontal viewing angle of the rear camera. Different values may be applied to the variable values for the front-side camera 110 and the rear-side camera 120 for all equations below.

X 좌표는 검출된 손가락 영역의 중앙 x 픽셀 좌표와 앞서 수학식 1로부터 추정된 거리를 이용하여 X 좌표로 매핑한다. 먼저, X 좌표를 알기 위해 거리에 따라 카메라에서 획득 가능한 가로 길이(X 방향 길이)를 알아야한다. 카메라에서 획득 가능한 가로 길이는 아래의 수학식 2로부터 구할 수 있다. 획득 가능한 가로 길이란 실제 길이를 의미한다.The X coordinate is mapped to the X coordinate using the center x pixel coordinate of the detected finger area and the distance estimated from equation (1). First, we need to know the horizontal length (X direction length) that can be obtained from the camera according to the distance to know the X coordinate. The obtainable horizontal length of the camera can be obtained from the following equation (2). The obtainable width means the actual length.

Figure 112013087100419-pat00002
Figure 112013087100419-pat00002

여기서, FingerPoint.Z는 수학식 1에서 연산한 Z좌표 값이고, WidthFOV는 카메라의 가로 시야각이다. 일 예로 WidthFOV는 62도를 사용할 수 있다.Here, FingerPoint.Z is the Z coordinate value calculated in Equation (1), and WidthFOV is the horizontal viewing angle of the camera. For example, a WidthFOV of 62 degrees can be used.

수학식 2로 구한 값을 이용하여 픽셀 당 거리 값을 계산할 수 있다. 픽셀 당 거리 값을 연산하는 수식은 아래의 수학식 3과 같다.
The distance value per pixel can be calculated using the value obtained by Equation (2). The formula for calculating the distance per pixel is given by Equation 3 below.

Figure 112013087100419-pat00003
Figure 112013087100419-pat00003

FovWidthLength는 수학식 2를 통해 연산되는 획득 가능한 가로 길이 값이고, PreviewWidth는 카메라에 입력되는 타겟 영상 전체의 너비 픽셀 값이다.
FowWidthLength is an obtainable length value calculated through Equation (2), and PreviewWidth is a width pixel value of the entire target image input to the camera.

상기 수학식들의 결과 값을 이용하여 아래의 수학식 4와 같이 삼차원 좌표의 X 좌표값을 연산할 수 있다.
The X coordinate value of the three-dimensional coordinate can be calculated using the result of the above equations as shown in Equation (4) below.

Figure 112013087100419-pat00004
Figure 112013087100419-pat00004

여기서, ColorPoint.x는 타겟 영상에서 색상 마커 영역의 중심 픽셀에 대한 x 픽셀 좌표값이고, DistancePerPixel은 가로 길이 방향의 픽셀 당 거리 값이다. Where ColorPoint.x is the x pixel coordinate value for the center pixel of the color marker region in the target image and DistancePerPixel is the distance value per pixel in the horizontal direction.

전술한 바와 같이 상기 수학식 2 내지 수학식 4의 변수에는 전면부 카메라(110) 또는 후면부 카메라(120)에 따라 서로 다른 값이 적용될 수 있다.
As described above, different values may be applied to the parameters of Equations (2) to (4) depending on the front-side camera 110 or the rear-side camera 120.

Y 좌표는 검출된 손가락 영역의 중앙 y 픽셀 좌표와 앞서 수학식 1로부터 추정된 거리를 이용하여 Y 좌표로 매핑한다. 먼저, Y 좌표를 알기 위해 거리에 따라 전면부 카메라 또는 후면부 카메라에 획득 가능한 세로 길이(Y 방향 길이)를 알아야한다. 각 카메라에 잡히는 세로 길이는 아래의 수학식 5로부터 구할 수 있다.
The Y coordinate maps to the Y coordinate using the center y pixel coordinates of the detected finger area and the distance estimated from equation (1). First of all, you need to know the obtainable vertical length (Y direction length) of the front camera or rear camera depending on the distance to know the Y coordinate. The vertical length taken by each camera can be obtained from the following equation (5).

Figure 112013087100419-pat00005
Figure 112013087100419-pat00005

여기서, FingerPoint.Z는 수학식 1에서 구한 Z좌표 값이고, HeightFOV는 카메라의 세로 시야각이다. 일 예로 HeightFOV는 45도를 사용할 수 있다.
Here, FingerPoint.Z is the Z coordinate value obtained by Equation (1), and Height FOV is the vertical viewing angle of the camera. As an example, Height FOV can be used at 45 degrees.

수학식 5로 구한 값을 이용하여 픽셀 당 거리 값을 연산할 수 있다. 픽셀 당 거리 값은 아래의 수학식 6을 이용하여 연산할 수 있다.
The distance value per pixel can be calculated using the value obtained by Equation (5). The distance per pixel value can be calculated using Equation (6) below.

Figure 112013087100419-pat00006
Figure 112013087100419-pat00006

여기서, FovHeightLength는 카메라가 획득 가능한 세로 길이 값이고, PreviewHeight는 카메라로 입력되는 타겟 영상 전체의 높이에 대한 픽셀 값이다.
Here, FovHeightLength is a vertical length value obtainable by the camera, and PreviewHeight is a pixel value with respect to the height of the entire target image input to the camera.

상기 수학식 5와 수학식 6을 통해 연산된 값을 이용하여, 아래의 수학식 7과 같이 삼차원 좌표의 Y 좌표값은 연산할 수 있다.
The Y coordinate values of the three-dimensional coordinates can be calculated using the values calculated through Equations (5) and (6) as shown in Equation (7) below.

Figure 112013087100419-pat00007
Figure 112013087100419-pat00007

여기서, ColorPoint.y는 타겟 영상에서 색상 마커 영역의 중심 픽셀에 대한 y 픽셀 좌표값이고, DistancePerPixel은 세로 길이 방향의 픽셀 당 거리 값이다.Where ColorPoint.y is the y pixel coordinate value for the center pixel of the color marker region in the target image and DistancePerPixel is the distance value per pixel in the vertical direction.

상기 수학식 5 내지 수학식 7의 변수에 적용되는 값은 전면부 카메라(110) 및 후면부 카메라(120)에 따라 서로 다른 값이 될 수 있다.
The values applied to the variables of Equations (5) to (7) may be different values depending on the front-side camera 110 and the rear-side camera 120.

이와 같이 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(100)의 좌표 연산 모듈(140)은 상기 수학식 1, 수학식 4 및 수학식 7을 이용하여 삼차원 좌표값을 산출할 수 있다. 구체적으로 좌표 연산 모듈(140)은은 전면부 카메라(110)에 입력되는 제1 타겟 영상의 제1 색상 마커 영역을 이용하여 제1 삼차원 좌표값을 산출할 수 있고, 후면부 카메라(120)에 입력되는 제2 타겟 영상의 제2 색상 마커 영역을 이용하여 제2 삼차원 좌표값을 산출할 수 있다.
As described above, the coordinate calculation module 140 of the mobile terminal 100, which generates the control commands using the front-side camera and the rear-side camera, calculates the three-dimensional coordinate values using Equations 1, 4 and 7 . Specifically, the coordinate calculation module 140 can calculate the first three-dimensional coordinate value using the first color marker region of the first target image input to the front-side camera 110, And the second three-dimensional coordinate value can be calculated using the second color marker region of the second target image.

전술한 바와 같이 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(100)은 제1 삼차원 좌표값과 제2 삼차원 좌표값을 하나의 삼차원 공간에서 정합하는 좌표 정합 모듈(150)을 더 포함하는 것이 바람직하다. 전면부 카메라(110)과 후면부 카메라(120)이 획득하는 영상이 서로 다르고, 카메라의 성능이 서로 다를 수도 있고, 각 카메라 앞에서 손가락이 움직이는 범위도 다를 수 있기 때문에 하나의 공간에서 정의되는 삼차원 좌표값으로 정합이 필요하다.As described above, the mobile terminal 100, which generates the control commands using the front-side camera and the rear-side camera, generates a coordinate matching module 150 for matching the first three-dimensional coordinate values and the second three- . Since the images obtained by the front side camera 110 and the rear side camera 120 may be different from each other and the performances of the cameras may be different from each other or the range of movement of the fingers in front of each camera may be different, .

좌표 정합 모듈(150)은 삼차원 x, y 및 z 방향 각각에 대하여 전면부 카메라에서 획득 가능한 일 방향 최대 거리 및 일 방향과 동일한 방향에 대해 후면부 카메라에서 획득 가능한 최대 거리의 비를 제1 삼차원 좌표값 또는 제2 삼차원 좌표값 중 일 방향에 대한 좌표값을 곱하여 좌표를 정합한다.
The coordinate matching module 150 compares the ratio of the one-direction maximum distance obtainable from the front-side camera and the maximum distance obtainable from the rear-side camera with respect to the same direction to the one direction for each of the three-dimensional x, y and z directions as the first three- Or the coordinate values for one direction among the second three-dimensional coordinate values.

도 6(a)은 전면부 카메라의 삼차원 좌표 공간과 후면부 카메라의 삼차원 좌표 공간을 도시하고, 도 6(b)는 전면부 카메라의 삼차원 좌표 공간과 후면부 카메라의 삼차원 좌표 공간을 정합한 예를 도시한다.6 (a) shows a three-dimensional coordinate space of a front-side camera and a three-dimensional coordinate space of a rear-side camera. FIG. 6 (b) shows an example of a three-dimensional coordinate space of a front- do.

좌표 정합을 위해 전면부에서의 손가락이 움직일 수 있는 범위와 후면부에서의 손가락이 움직일 수 있는 범위 간에 길이 비례식을 도출해야 한다. 먼저, 전면부 및 후면부에서 손가락이 움직일 수 있는 최대 범위를 지정한다. For coordinate matching, a proportional representation of length must be derived between the range of movement of the fingers on the front side and the range of movement of the fingers on the rear side. First, specify the maximum range in which the fingers can move in the front and back sides.

도 6(a)를 살펴보면, FrontMax.Z, FrontMax.X, FrontMax.Y는 각각 전면부 카메라(110)를 이용하여 검출되는 Z 좌표의 최대 거리, X 좌표의 최대 거리 Y 좌표의 최대 거리이고, BackMax.Z, BackMax.X, BackMax.Y는 각각 후면부 카메라(120)를 이용하여 검출되는 Z 좌표의 최대 거리, X 좌표의 최대 거리, Y 좌표 최대 거리이다.6A, FrontMax.Z, FrontMax.X, and FrontMax.Y are the maximum distance of the Z coordinate detected using the front panel camera 110 and the maximum distance of the Y coordinate of the maximum distance of the X coordinate, respectively, BackMax.Z, BackMax.X, and BackMax.Y are the maximum distance of the Z coordinate detected by using the rear side camera 120, the maximum distance of the X coordinate, and the maximum distance of the Y coordinate.

일 예로 전면부에서 손가락이 최대 움직일 수 있는 범위와 후면부에서 손가락이 검출할 수 있는 최대 거리를 다양한 실험을 통해 설정할 수 있다. 예컨대, FrontMax.Z의 값은 30cm, BackMax.Z의 값은 10cm를 사용할 수 있다. 다양한 손의 크기, 다양한 손가락을 사용할 수 있는 인터페이스 방법 등을 고려해 볼 때 FrontMax.Z 및 BackMax.Z의 범위는 조절 가능하다.For example, the range of maximum movement of the fingers on the front side and the maximum distance that the fingers can detect on the rear side can be set through various experiments. For example, the value of FrontMax.Z is 30 cm, and the value of BackMax.Z is 10 cm. The range of FrontMax.Z and BackMax.Z is adjustable considering various hand sizes, interface methods that can use various fingers, and so on.

또한, 앞서 구한 수학식 2 및 수학식 5를 통해 X축 및 Y축 거리에서의 최대 거리를 추정하고, 이를 대입하여 FrontMax.X, FrontMax.Y와 BackMax.X, BackMax.Y의 값을 구할 수 있다.Further, the maximum distance in the X-axis and Y-axis distances can be estimated through Equations 2 and 5, and the values of FrontMax.X, FrontMax.Y, BackMax.X, and BackMax.Y can be obtained have.

위와 같이 얻어진 변수들을 이용하여 아래 수학식과 같이 비례식을 만들 수 있으며, 최종적으로 후면부로부터 전면부로 정합된 Z, X, Y 삼차원 공간좌표 값을 얻을 수 있다. 아래의 수학식 8 내지 수학식 9는 후면부를 기준으로 전면부로 Z, X, Y의 값을 정합한 예이다. 물론 반대로 전면부를 기준으로 삼차원 좌표값을 정합할 수도 있다.
Using the obtained variables, we can make proportional expression as shown in the following equation, and finally obtain the Z, X, Y three-dimensional space coordinate values matched to the front part from the rear part. Equations (8) to (9) below are examples in which the values of Z, X, and Y are matched to the front portion based on the rear portion. Of course, it is also possible to match the three-dimensional coordinate values based on the front part.

Figure 112013087100419-pat00008
Figure 112013087100419-pat00008

여기서, FingerPoint.Z는 수식 1로부터 구한 Z좌표 값이고, FrontMax.Z는 전면부 카메라(110)에서의 Z축 최대 거리이고, BackMax.Z는 후면부 카메라(120)에서의 Z축 최대 거리를 나타낸다.
Here, FingerPoint.Z is the Z coordinate value obtained from the equation 1, FrontMax.Z is the Z-axis maximum distance in the front side camera 110, and BackMax.Z is the Z-axis maximum distance in the rear side camera 120 .

Figure 112013087100419-pat00009
Figure 112013087100419-pat00009

여기서, FingerPoint.X는 수식 4로부터 구한 X좌표 값이고, FrontMax.X는 전면부 카메라(110)에서의 X축 최대 거리이고, BackMax.X는 후면부 카메라(120)에서의 X축 최대 거리이다.
Here, FingerPoint.X is the X coordinate value obtained from the equation (4), FrontMax.X is the X axis maximum distance in the front side camera 110, and BackMax.X is the X axis maximum distance in the rear side camera 120.

Figure 112013087100419-pat00010
Figure 112013087100419-pat00010

여기서, FingerPoint.Y는 수식 7로부터 구한 Y좌표 값이고, FrontMax.Y는 전면부 카메라(110)에서의 Y축 최대 거리이고, BackMax.Y는 후면부 카메라(120)에서의 Y축 최대 거리이다.
Here, FingerPoint.Y is the Y coordinate value obtained from the equation 7, FrontMax.Y is the Y axis maximum distance in the front side camera 110, and BackMax.Y is the Y axis maximum distance in the rear side camera 120. [

도 6(b)는 상기 수학식 8 내지 수학식 10을 통해 정합된 삼차원 공간 좌표에 대한 예를 도시한다.
FIG. 6 (b) shows an example of three-dimensional spatial coordinates that are matched through the equations (8) to (10).

도 7은 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(200)에 대한 구성을 도시한 블럭도의 다른 예이다. 도 7에서 설명하는 이동 단말(200)은 색상 마커 없이 손가락 영상을 이용하여 삼차원 좌표를 생성하는 구성과 색상 마커를 이용하여 삼차원 좌표를 생성하는 구성을 선택적으로 이용할 수 있다. 예컨대, 전면부 카메라(210)와 후면부 카메라(220)가 모두 색상 마커를 이용하지 않고 손가락 영역만으로 삼차원 좌표를 생성하거나, 모두 색상 마커를 이용하여 삼차원 좌표를 생성할 수 있다. 나아가 전면부 카메라(210)는 손가락 영역만으로 제1 삼차원 좌표를 생성하고, 후면부 카메라(220)는 색상 마커를 이용하여 제2 삼차원 좌표를 생성할 수도 있다. 즉, 손가락에 부착한 마커 및 타겟 영상에 포함된 손가락 중 어느 하나를 이용하여 삼차원 좌표를 생성하는 것이다.
7 is another example of a block diagram showing a configuration of a mobile terminal 200 that generates a control command using a front side camera and a rear side camera. The mobile terminal 200 illustrated in FIG. 7 can selectively use a configuration for generating three-dimensional coordinates using a finger image without a color marker and a configuration for generating three-dimensional coordinates using a color marker. For example, both the front-side camera 210 and the rear-side camera 220 may generate the three-dimensional coordinates using only the finger region without using the color marker, or all of the three-dimensional coordinates may be generated using the color marker. Further, the front-side camera 210 may generate the first three-dimensional coordinate by only the finger region, and the rear-side camera 220 may generate the second three-dimensional coordinate by using the color marker. That is, the three-dimensional coordinates are generated by using any one of the markers attached to the finger and the finger included in the target image.

전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(200)은 제1 손가락 영역 또는 손가락에 부착하는 제1 색상 마커 영역 중 적어도 하나를 포함하는 제1 타겟 영상을 입력받는 전면부 카메라(210), 제2 손가락 영역 또는 손가락에 부착하는 제2 색상 마커 영역 중 적어도 하나를 포함하는 제2 타겟 영상을 입력받는 후면부 카메라(220), 영상 처리 기술을 이용하여 제1 손가락 영역 또는 제2 손가락 영역 중 적어도 하나에서 끝 영역을 검출하는 손가락 끝 영역 검출 모듈(250), 색상 검출 기술을 이용하여 제1 색상 마커 영역 또는 제2 색상 마커 영역 중 적어도 하나를 검출하는 마커 영역 검출 모듈(240), 사용자의 입력을 기준으로 손가락 끝 영역 검출 모듈 또는 마커 영역 검출 모듈을 구동하는 제어 모듈(230) 및 제1 손가락 영역의 끝 영역 또는 제1 색상 마커 영역 중 적어도 하나를 이용하여 제1 삼차원 좌표값을 연산하고, 제2 손가락 영역의 끝 영역 또는 제2 색상 마커 영역 중 적어도 하나를 이용하여 제2 삼차원 좌표값을 연산하는 좌표 연산 모듈(260)을 포함한다.The mobile terminal 200, which generates a control command using a front-side camera and a rear-side camera, includes a front-side camera 200 receiving a first target image including at least one of a first finger region or a first color marker region attached to a finger A back side camera 220 that receives a second target image including at least one of a first finger region 210, a second finger region, and a second color marker region attached to a finger, A fingertip region detection module 250 for detecting an end region in at least one of the finger regions, a marker region detection module 240 for detecting at least one of a first color marker region or a second color marker region using color detection technology, A control module 230 for driving the fingertip area detection module or the marker area detection module on the basis of the user's input, Or a first color marker area, and calculates a second three-dimensional coordinate value using at least one of an end area of the second finger area and a second color marker area, Module 260, as shown in FIG.

인터페이스 입력 모들(280)은 전술한 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(100)의 인터페이스 입력 모듈(160)과 동일한 구성이다. The interface input models 280 have the same configuration as the interface input module 160 of the mobile terminal 100 that generates control commands using the front panel camera and the rear panel camera.

마커 영역 검출 모듈(240)은 CAMshift 알고리즘을 사용하여 타겟 영상에서 색상 마커 영역을 검출할 수 있다. 마커 영역 검출 모듈(240)은 전술한 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(100)의 마커 검출 모듈(130)과 동일한 구성이다.The marker region detection module 240 can detect the color marker region in the target image using the CAMshift algorithm. The marker region detection module 240 has the same configuration as the marker detection module 130 of the mobile terminal 100 that generates control commands using the front side camera and the rear side camera.

또한 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(200)은 좌표 정합 모듈(270)을 더 포함할 수 있다. 좌표 정합 모듈(270)은 전술한 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말(100)의 좌표 정합 모듈(150)과 동일한 구성이다.The mobile terminal 200, which generates control commands using the front-side camera and the rear-side camera, may further include the coordinate matching module 270. The coordinate matching module 270 has the same configuration as the coordinate matching module 150 of the mobile terminal 100 that generates the control command using the front side camera and the rear side camera described above.

손가락 끝 영역 검출 모듈(250)은 피부색 검출 기술 또는 에지 검출 기술을 사용하여 타겟 영상에서 손가락 끝 영역을 검출한다. 손가락 끝 영역 검출 모듈(250)은 타겟 영상에서 좌표 산출의 기준이 되는 손가락 영역의 끝 영역을 검출하며, 이 과정에서 Adaboost 알고리즘이 사용될 수도 있다.The fingertip area detection module 250 detects the fingertip area in the target image using the skin color detection technique or the edge detection technique. The fingertip region detection module 250 detects an end region of a finger region serving as a reference of coordinate calculation in a target image, and an Adaboost algorithm may be used in this process.

손가락 영역은 타겟 영상에서 손가락이 위치하는 영역을 의미하고, 손가락 영역의 끝 영역은 손가락 끝(tip) 부위를 의미한다. 본 발명에서는 손가락 영역의 끝 영역을 기준으로 삼차원 좌표값을 산출하고자 한다.The finger region means a region where a finger is located in the target image, and the end region of the finger region means a tip region. In the present invention, a three-dimensional coordinate value is calculated based on an end region of a finger region.

도 8은 손가락 영역을 이용한 삼차원 좌표값 생성의 기준이 되는 예를 도시한다. 도 8에서 중앙의 사각형 박스로 도시된 영역이 손가락 끝 영역에 해당한다. 원형으로 표시된 사각박스 좌측 상단의 모서리를 손가락 끝 영역의 시작점이라고 한다. ①은 손가락 끝 영역의 시작점 y좌표값(y축 길이)을 의미한다. 타겟 영상에서 손가락 끝 영역이 y축으로 어떤 좌표에 위치하는지 기산하기 위한 기준이 된다. ②는 손가락 끝 영역의 시작점 x 좌표값(x축 길이)을 의미한다. ③은 손가락 끝 영역의 높이(Height)를 의미하고, ④는 손가락 끝 영역의 너비(Width)를 의미한다. 따라서 ③과 ④로 표시되는 사각형 박스 영역이 손가락 끝 영역에 해당한다. 도 6에서는 사각박스의 중앙위치(삼각형 표시)를 삼차원 좌표값 측정을 위한 기준으로 삼았다. 도 8에서 설명한 각 기준점은 삼차원 좌표를 연산하기 위한 하나의 기준이며 다른 위치의 기준들이 사용될 수 있음은 자명하다.
8 shows an example of a reference for generation of a three-dimensional coordinate value using a finger region. In FIG. 8, the area indicated by the center square box corresponds to the fingertip area. The corner at the upper left corner of the rectangular box is called the starting point of the fingertip area. ① indicates the starting point y coordinate value (y axis length) of the fingertip area. It is a criterion for calculating the coordinates of the fingertip area on the y-axis in the target image. And ② denotes the starting point x coordinate value (x axis length) of the fingertip area. ③ means the height of the fingertip region, and ④ means the width of the fingertip region. Therefore, the square box area indicated by ③ and ④ corresponds to the fingertip area. In Fig. 6, the center position (triangle mark) of the rectangular box is used as a reference for measuring the three-dimensional coordinate value. It is obvious that each of the reference points described in FIG. 8 is one reference for calculating the three-dimensional coordinates, and references of other positions can be used.

제어 모듈(230)은 사용자의 모드 선택에 따라 손가락 끝 영역을 이용할지(손가락 모드) 또는 색상 마커 영역을 이용할지(색상 마커 모드) 여부를 결정한다. 사용자는 이동 단말의 인터페이스를 이용하여 모드를 설정할 수 있다. The control module 230 determines whether to use the fingertip area (finger mode) or the color marker area (color marker mode) according to the user's mode selection. The user can set the mode using the interface of the mobile terminal.

본 발명에서 색상 마커 영역을 검출하기 위하여 CAMShift 알고리즘을 사용하는 예를 설명하였는데, 이 과정에서는 특정 영역을 관심 영역으로 지정하는 과정이 필요하다. 예컨대, 이동 단말(200)은 제1 색상 마커 영역 또는 제2 색상 마커 영역 중 적어도 하나가 출력되는 터치 디스플레이 장치(미도시)를 더 포함할 수 있고, 제어 모듈(230)은 터치 디스플레이 장치에서 출력되는 색상 마커 영역에 대한 터치 입력이 발생하면, 터치 입력이 발생한 색상 마커 영역에 대하여 마커 영역 검출 모듈(240)을 구동하고, 터치 입력이 발생하지 않으면 손가락 끝 영역 검출 모듈(250)을 구동할 수 있다. 이 경우 색상 마커 영역을 관심 영역으로 지정하는 과정과 동시에 마커 영역 검출 모듈(240)을 선택하여 구동하는 과정이 동시에 수행되는 것이다. 물론 색상 마커 영역을 관심 영역으로 지정하는 과정과 마커 영역 검출 모듈(240) 또는 손가락 끝 영역 검출 모듈(250)을 선택하여 구동하는 과정을 별도로 선택할 수도 있을 것이다.
In the present invention, the CAMShift algorithm is used to detect a color marker region. In this process, a process of designating a specific region as a region of interest is required. For example, the mobile terminal 200 may further include a touch display device (not shown) in which at least one of the first color marker area and the second color marker area is output, and the control module 230 may output When the touch input to the color marker area is generated, the marker area detection module 240 is driven for the color marker area where the touch input is generated. If the touch input is not generated, the fingertip area detection module 250 can be driven have. In this case, the process of designating the color marker region as the region of interest and the process of selecting and driving the marker region detection module 240 are simultaneously performed. Of course, the process of designating the color marker region as the region of interest and the process of selecting and driving the marker region detection module 240 or the fingertip region detection module 250 may be separately selected.

색상 마커 영역을 사용하여 삼차원 좌표값을 산출하는 과정(색상 마커 모드)은 전술한 바와 같다. 나아가 손가락 영역을 사용하는 손가락 모드에서 좌표 연산 모듈(260)은 제1 삼차원 좌표의 경우 제1 손가락 영역의 끝 영역의 기준점을 이용하여 X 좌표값 및 Y 좌표값을 연산하고, 제1 손가락 영역의 끝 영역의 너비, 높이 또는 면적 중 적어도 하나를 이용하여 Z 좌표값을 연산하고, 제2 삼차원 좌표의 경우 제2 손가락 영역의 끝 영역의 기준점을 이용하여 X 좌표값 및 Y 좌표값을 연산하고, 제2 손가락 영역의 끝 영역의 너비, 높이 또는 면적 중 적어도 하나를 이용하여 Z 좌표값을 연산한다.The process (color marker mode) for calculating the three-dimensional coordinate value using the color marker area is as described above. Further, in the finger mode using the finger area, the coordinate calculation module 260 calculates the X coordinate value and the Y coordinate value using the reference point of the end area of the first finger area in the case of the first three-dimensional coordinate, The Z coordinate value is calculated using at least one of the width, height, and area of the end area, and in the case of the second three-dimensional coordinate, the X coordinate value and the Y coordinate value are calculated using the reference point of the end area of the second finger area, The Z coordinate value is calculated using at least one of the width, height, and area of the end area of the second finger area.

구체적으로 손가락 끝 영역을 이용하는 손가락 모드 경우, 좌표 연산 모듈(260)은 다음과 같이 삼차원 좌표값을 연산할 수 있다. Specifically, in the case of the finger mode using the fingertip region, the coordinate calculation module 260 can calculate the three-dimensional coordinate value as follows.

삼차원 좌표값 중 X 좌표값(Finger Point(x))은 아래의 수학식 11로 연산될 수 있다.
The X coordinate value (Finger Point (x)) of the three-dimensional coordinate values can be calculated by the following Equation (11).

Figure 112013087100419-pat00011
Figure 112013087100419-pat00011

FingerRegion.x는 입력된 영상에서의 검출된 손가락 영역의 시작점 x좌표이고, FingerWidth는 검출된 영역의 너비다. 우선 손가락 영역의 너비(FingerWidth)를 2로 나누어서 손가락 영역 중간을 설정한 후 손가락 영역의 시작점 x좌표(FingerRegion.x)를 더해서 입력 영상에서 손가락 포인터의 X좌표를 설정하게 된다. FingerRegion.x is the starting x coordinate of the detected finger region in the input image, and FingerWidth is the width of the detected region. First, the width of the finger area (FingerWidth) is divided by 2, the middle of the finger area is set, and the starting point x coordinate (FingerRegion.x) of the finger area is added to set the X coordinate of the finger pointer in the input image.

삼차원 좌표값 중 Y 좌표값(Finger Point(y))은 아래의 수학식 12로 연산될 수 있다.
The Y coordinate value (Finger Point (y)) of the three-dimensional coordinate values can be calculated by the following equation (12).

Figure 112013087100419-pat00012
Figure 112013087100419-pat00012

FingerRegion.y는 입력된 영상에서의 검출된 손가락 영역의 시작점 y좌표이고, FingerWidth는 검출된 영역의 높이다. 우선 손가락 영역의 높이(FingerHeight)를 2로 나누어서 손가락 영역 중간을 설정한 후 손가락 영역의 시작점 y좌표(FingerRegion.y)를 더해서 입력 영상에서 손가락 포인터의 Y좌표를 설정하게 된다.
FingerRegion.y is the y coordinate of the start point of the detected finger region in the input image, and FingerWidth is the height of the detected region. First, the height of the finger area (FingerHeight) is divided by 2, the center of the finger area is set, and the y coordinate of the finger pointer in the input image is set by adding the y coordinate (FingerRegion.y) of the starting point of the finger area.

삼차원 좌표값 중 Z 좌표값은 아래의 수학식 13과 같이 연산될 수 있다. z 좌표값은 카메라와 손가락의 거리(FingertoCameraDistance)를 이용하여 설정된다. 카메라와 손가락의 거리는 손가락 끝 영역의 너비를 이용하여 추정한다. 기준이 되는 거리에서의 너비과 현재 카메라를 통해 입력되는 손가락 끝 영역의 너비를 비교하여 카메라와 손가락의 거리를 추정할 수 있는 것이다. 물론 너비, 높이 또는 면적 중 어느 하나의 값을 기준으로 추정될 수 있음은 자명하다.
The Z coordinate value among the three-dimensional coordinate values can be calculated as shown in Equation (13) below. The z coordinate value is set using the distance between the camera and the finger (FingertoCameraDistance). The distance between the camera and the finger is estimated using the width of the fingertip area. The distance between the camera and the finger can be estimated by comparing the width at the reference distance and the width of the fingertip area input through the current camera. Obviously, it can be estimated based on any one of width, height, and area.

Figure 112013087100419-pat00013
Figure 112013087100419-pat00013

fingerwidth는 사용자의 실제 손가락 너비이고, previewwidth는 모노 카메라로 입력되는 영상의 너비 픽셀 값이다. FOV(Field of View)는 카메라에서 특정 지점(손가락 끝 영역)을 관측할 때 나타나는 범위 시야를 각도로 표현한 것이다. 상기 수학식 13을 이용하여 카메라와 손가락의 거리가 측정되면, 손가락이 위치한 z 좌표의 상대적 위치를 파악할 수 있다.
fingerwidth is the actual finger width of the user, and previewwidth is the width pixel value of the image input to the mono camera. A field of view (FOV) is an angle representation of the field of view when viewing a specific point (fingertip area) in the camera. When the distance between the camera and the finger is measured using Equation (13), the relative position of the z coordinate at which the finger is located can be grasped.

본 실시예 및 본 명세서에 첨부된 도면은 본 발명에 포함되는 기술적 사상의 일부를 명확하게 나타내고 있는 것에 불과하며, 본 발명의 명세서 및 도면에 포함된 기술적 사상의 범위 내에서 당업자가 용이하게 유추할 수 있는 변형 예와 구체적인 실시예는 모두 본 발명의 권리범위에 포함되는 것이 자명하다고 할 것이다.It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. It will be understood that variations and specific embodiments which may occur to those skilled in the art are included within the scope of the present invention.

100 : 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말
110 : 전면부 카메라 120 : 후면부 카메라
130 : 마커 영역 검출 모듈 140 : 좌표 연산 모듈
150 : 좌표 정합 모듈 160 : 인터페이스 입력 모듈
200 : 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말
210 : 전면부 카메라 220 : 후면부 카메라
230 : 제어 모듈 240 : 마커 영역 검출 모듈
250 : 손가락 영역 검출 모듈 260 : 좌표 연산 모듈
270 : 좌표 정합 모듈 280 : 인터페이스 입력 모듈
100: a mobile terminal for generating a control command using a front side camera and a rear side camera
110: front side camera 120: rear side camera
130: marker area detection module 140: coordinate calculation module
150: coordinate matching module 160: interface input module
200: a mobile terminal for generating a control command using a front side camera and a rear side camera
210: front side camera 220: rear side camera
230: Control module 240: Marker area detection module
250: finger area detection module 260: coordinate calculation module
270: coordinate matching module 280: interface input module

Claims (19)

손가락에 부착하는 제1 색상 마커 영역을 포함하는 제1 타겟 영상을 입력받는 전면부 카메라;
손가락에 부착하는 제2 색상 마커 영역을 포함하는 제2 타겟 영상을 입력받는 후면부 카메라;
색상 검출 기술을 이용하여 상기 제1 타겟 영상에서 상기 제1 색상 마커 영역을 검출하고, 상기 제2 타겟 영상에서 상기 제2 색상 마커 영역을 검출하는 마커 영역 검출 모듈; 및
상기 제1 색상 마커 영역을 이용하여 제1 삼차원 좌표값을 연산하고, 상기 제2 색상 마커 영역을 이용하여 제2 삼차원 좌표값을 연산하는 좌표 연산 모듈을 포함하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
A front side camera which receives a first target image including a first color marker area attached to a finger;
A back side camera for receiving a second target image including a second color marker area attached to a finger;
A marker region detection module for detecting the first color marker region in the first target image using the color detection technique and detecting the second color marker region in the second target image; And
And a coordinate calculating module for calculating a first three-dimensional coordinate value using the first color marker area and a second three-dimensional coordinate value using the second color marker area, A mobile terminal that generates a control command.
제1항에 있어서,
상기 제1 삼차원 좌표값과 상기 제2 삼차원 좌표값을 하나의 삼차원 공간에서 정합하는 좌표 정합 모듈을 더 포함하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
The method according to claim 1,
And a coordinate matching module for matching the first three-dimensional coordinate value and the second three-dimensional coordinate value in one three-dimensional space, wherein the control command is generated using a front-side camera and a rear-side camera.
제2항에 있어서,
상기 좌표 정합 모듈은
삼차원 x, y 및 z 방향 각각에 대하여 상기 전면부 카메라에서 획득 가능한 일 방향 최대 거리 및 상기 일 방향과 동일한 방향에 대해 상기 후면부 카메라에서 획득 가능한 최대 거리의 비를 상기 제1 삼차원 좌표값 또는 상기 제2 삼차원 좌표값 중 상기 일 방향에 대한 좌표값을 곱하여 좌표를 정합하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
3. The method of claim 2,
The coordinate matching module
A ratio of a one-direction maximum distance obtainable from the front-side camera and a maximum distance obtainable from the rear-side camera with respect to the same direction as the one direction with respect to each of the three-dimensional x, y and z directions is set as the first three- And a control unit for generating a control command by using a front-side camera and a rear-side camera that compares coordinates obtained by multiplying the coordinates of the one direction among the three-dimensional coordinate values.
제1항에 있어서,
상기 마커 영역 검출 모듈은
CAMshift 알고리즘을 사용하여 상기 제1 색상 마커 영역 및 상기 제2 색상 마커 영역을 검출하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
The method according to claim 1,
The marker region detection module
And generates a control command using a front side camera and a rear side camera that detect the first color marker area and the second color marker area using a CAMshift algorithm.
제3항에 있어서,
상기 마커 영역 검출 모듈은
상기 제1 색상 마커 영역 및 상기 제2 색상 마커 영역 각각에 대하여
상기 색상 마커 영역이 관심 영역으로 지정되면, RGB 영상을 HSV 영상으로 변환하고, 상기 HSV 영상의 H 채널에 대해 히스토그램의 최대 빈도수 특성을 이용하여 기본 영상을 생성하고, 상기 HSV 영상의 S 채널과 V 채널 각각에 대해 임계값을 추출한 결과를 합산하여 마스크 영상을 생성하고, 상기 기본 영상과 상기 마스크 영상을 결합하여 상기 색상 마커 영역을 검출하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
The method of claim 3,
The marker region detection module
For each of the first color marker region and the second color marker region
And converting the RGB image into an HSV image, generating a basic image using the maximum frequency characteristic of the histogram for the H channel of the HSV image, and converting the S channel and the V Generating a mask image by summing the results of extracting the threshold value for each of the channels and generating a control command using a front side camera and a rear side camera that detect the color marker region by combining the basic image and the mask image, Terminal.
제1항에 있어서,
상기 좌표 연산 모듈은
상기 제1 삼차원 좌표값 및 상기 제2 삼차원 좌표값 각각에 대하여
Z 좌표값(FingerPoint.Z)을 상기 색상 마커 영역의 너비 또는 지름을 기준으로 아래의 수식으로 연산하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
Figure 112013087100419-pat00014

(제1 삼차원 좌표값 경우 ColorPoint는 제1 색상 마커 영역의 실제 너비 또는 지름, PreviewWidth는 제1 타겟 영상 전체의 너비에 대한 픽셀 값, ColorPoint.Region은 제1 색상 마커 영역의 너비 또는 지름에 대한 픽셀 값, WidthFOV는 전면부 카메라의 가로 시야각이고,
제2 삼차원 좌표값 경우 ColorPoint는 제2 색상 마커 영역의 실제 너비 또는 지름, PreviewWidth는 제2 타겟 영상 전체의 너비에 대한 픽셀 값, ColorPoint.Region은 제2 색상 마커 영역의 너비 또는 지름에 대한 픽셀 값, WidthFOV는 후면부 카메라의 가로 시야각임)
The method according to claim 1,
The coordinate computing module
For each of the first three-dimensional coordinate value and the second three-dimensional coordinate value
A mobile terminal that generates a control command using a front-side camera and a rear-side camera that calculates a Z coordinate value (FingerPoint.Z) using the following formula based on the width or diameter of the color marker area.
Figure 112013087100419-pat00014

(Where ColorPoint is the actual width or diameter of the first color marker region, PreviewWidth is the pixel value for the width of the entire first target image, ColorPoint.Region is the width or diameter of the first color marker region, Value, WidthFOV is the horizontal viewing angle of the front side camera,
ColorPoint is the actual width or diameter of the second color marker region, PreviewWidth is the pixel value for the width of the entire second target image, ColorPoint.Region is the pixel value for the width or diameter of the second color marker region, , WidthFOV is the horizontal viewing angle of the rear camera)
제6항에 있어서,
상기 좌표 연산 모듈은
상기 제1 삼차원 좌표값 및 상기 제2 삼차원 좌표값 각각에 대하여
X 좌표값(FingerPoint.X)을 상기 색상 마커 영역의 너비 또는 지름을 기준으로 아래의 수식으로 연산하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
Figure 112013087100419-pat00015

(제1 삼차원 좌표값 경우 ColorPoint.x는 제1 색상 마커 영역의 중심 픽셀에 대한 x 픽셀 좌표값,
Figure 112013087100419-pat00016
,
Figure 112013087100419-pat00017
이고,
제2 삼차원 좌표값 경우 ColorPoint.x는 제2 색상 마커 영역의 중심 픽셀에 대한 x 픽셀 좌표값,
Figure 112013087100419-pat00018
,
Figure 112013087100419-pat00019
임)
The method according to claim 6,
The coordinate computing module
For each of the first three-dimensional coordinate value and the second three-dimensional coordinate value
A mobile terminal that generates a control command using a front camera and a rear camera that calculates an X coordinate value (FingerPoint.X) using the following formula based on the width or diameter of the color marker area.
Figure 112013087100419-pat00015

(In the case of the first three-dimensional coordinate value, ColorPoint.x is the x pixel coordinate value for the center pixel of the first color marker region,
Figure 112013087100419-pat00016
,
Figure 112013087100419-pat00017
ego,
In the case of the second three-dimensional coordinate value, ColorPoint.x is the x pixel coordinate value for the center pixel of the second color marker region,
Figure 112013087100419-pat00018
,
Figure 112013087100419-pat00019
being)
제6항에 있어서,
상기 좌표 연산 모듈은
상기 제1 삼차원 좌표값 및 상기 제2 삼차원 좌표값 각각에 대하여
Y 좌표값(FingerPoint.Y)을 상기 색상 마커 영역의 너비 또는 지름을 기준으로 아래의 수식으로 연산하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
Figure 112013087100419-pat00020

(제1 삼차원 좌표값 경우 ColorPoint.y는 제1 색상 마커 영역의 중심 픽셀에 대한 y 픽셀 좌표값,
Figure 112013087100419-pat00021
, PreviewHeight는 제1 타겟 영상 전체의 높이에 대한 픽셀 값,
Figure 112013087100419-pat00022
, HeightFOV는 전면부 카메라 세로 시야각이고,
제2 삼차원 좌표값 경우 ColorPoint.y는 제2 색상 마커 영역의 중심 픽셀에 대한 y 픽셀 좌표값,
Figure 112013087100419-pat00023
, PreviewHeight는 제2 타겟 영상 전체의 높이에 대한 픽셀 값,
Figure 112013087100419-pat00024
, HeightFOV는 후면부 카메라 세로 시야각임)
The method according to claim 6,
The coordinate computing module
For each of the first three-dimensional coordinate value and the second three-dimensional coordinate value
A mobile terminal that generates a control command using a front camera and a rear camera that calculates a Y coordinate value (FingerPoint.Y) based on a width or a diameter of the color marker area using the following equation.
Figure 112013087100419-pat00020

(In the case of the first three-dimensional coordinate value, ColorPoint.y is a y pixel coordinate value for the center pixel of the first color marker region,
Figure 112013087100419-pat00021
, PreviewHeight is a pixel value for the height of the entire first target image,
Figure 112013087100419-pat00022
, HeightFOV is the vertical viewing angle of the front side camera,
In the second three-dimensional coordinate value, ColorPoint.y is a y pixel coordinate value for the center pixel of the second color marker region,
Figure 112013087100419-pat00023
, PreviewHeight is a pixel value with respect to the height of the entire second target image,
Figure 112013087100419-pat00024
, And HeightFOV is the vertical viewing angle of the rear camera)
제1 손가락 영역 또는 손가락에 부착하는 제1 색상 마커 영역 중 적어도 하나를 포함하는 제1 타겟 영상을 입력받는 전면부 카메라;
제2 손가락 영역 또는 손가락에 부착하는 제2 색상 마커 영역 중 적어도 하나를 포함하는 제2 타겟 영상을 입력받는 후면부 카메라;
영상 처리 기술을 이용하여 상기 제1 손가락 영역 또는 상기 제2 손가락 영역 중 적어도 하나에서 끝 영역을 검출하는 손가락 끝 영역 검출 모듈;
색상 검출 기술을 이용하여 상기 제1 색상 마커 영역 또는 상기 제2 색상 마커 영역 중 적어도 하나를 검출하는 마커 영역 검출 모듈;
사용자의 입력을 기준으로 상기 손가락 끝 영역 검출 모듈 또는 상기 마커 영역 검출 모듈을 구동하는 제어 모듈; 및
상기 제1 손가락 영역의 끝 영역 또는 상기 제1 색상 마커 영역 중 적어도 하나를 이용하여 제1 삼차원 좌표값을 연산하고, 상기 제2 손가락 영역의 끝 영역 또는 상기 제2 색상 마커 영역 중 적어도 하나를 이용하여 제2 삼차원 좌표값을 연산하는 좌표 연산 모듈을 포함하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
A front side camera which receives a first target image including at least one of a first finger region or a first color marker region attached to a finger;
A rear face camera for receiving a second target image including at least one of a second finger area or a second color marker area attached to a finger;
A fingertip detection module for detecting an ending region in at least one of the first finger region and the second finger region using an image processing technique;
A marker region detection module for detecting at least one of the first color marker region or the second color marker region using a color detection technique;
A control module for driving the fingertip detection module or the marker detection module based on a user input; And
Calculating a first three-dimensional coordinate value using at least one of an end region of the first finger region and the first color marker region and using at least one of the end region of the second finger region or the second color marker region And generating a control command using a front side camera and a rear side camera including a coordinate calculation module for calculating a second three-dimensional coordinate value.
제9항에 있어서,
상기 제1 삼차원 좌표값과 상기 제2 삼차원 좌표값을 하나의 삼차원 공간에서 정합하는 좌표 정합 모듈을 더 포함하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
10. The method of claim 9,
And a coordinate matching module for matching the first three-dimensional coordinate value and the second three-dimensional coordinate value in one three-dimensional space, wherein the control command is generated using a front-side camera and a rear-side camera.
제10항에 있어서,
상기 좌표 정합 모듈은
삼차원 x, y 및 z 방향 각각에 대하여 상기 전면부 카메라에서 획득 가능한 일 방향 최대 거리 및 상기 일 방향과 동일한 방향에 대해 상기 후면부 카메라에서 획득 가능한 최대 거리의 비를 상기 제1 삼차원 좌표값 또는 상기 제2 삼차원 좌표값 중 상기 일 방향에 대한 좌표값을 곱하여 좌표를 정합하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
11. The method of claim 10,
The coordinate matching module
A ratio of a one-direction maximum distance obtainable from the front-side camera and a maximum distance obtainable from the rear-side camera with respect to the same direction as the one direction with respect to each of the three-dimensional x, y and z directions is set as the first three- And a control unit for generating a control command by using a front-side camera and a rear-side camera that compares coordinates obtained by multiplying the coordinates of the one direction among the three-dimensional coordinate values.
제9항에 있어서,
상기 마커 영역 검출 모듈은
CAMshift 알고리즘을 사용하여 상기 제1 색상 마커 영역 또는 상기 제2 색상 마커 영역 중 적어도 하나를 검출하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
10. The method of claim 9,
The marker region detection module
And generates a control command using a front side camera and a rear side camera that detect at least one of the first color marker area and the second color marker area using a CAMshift algorithm.
제12항에 있어서,
상기 마커 영역 검출 모듈은
상기 제1 색상 마커 영역 또는 상기 제2 색상 마커 영역 중 적어도 하나에 대하여 상기 색상 마커 영역이 관심 영역으로 지정되면, RGB 영상을 HSV 영상으로 변환하고, 상기 HSV 영상의 H 채널에 대해 히스토그램의 최대 빈도수 특성을 이용하여 기본 영상을 생성하고, 상기 HSV 영상의 S 채널과 V 채널 각각에 대해 임계값을 추출한 결과를 합산하여 마스크 영상을 생성하고, 상기 기본 영상과 상기 마스크 영상을 결합하여 상기 색상 마커 영역을 검출하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
13. The method of claim 12,
The marker region detection module
Converting an RGB image into an HSV image when the color marker region is designated as an ROI with respect to at least one of the first color marker region and the second color marker region and extracting a maximum frequency of a histogram Generating a mask image by summing the results of extracting threshold values for each of the S channel and the V channel of the HSV image, combining the mask image with the mask image, Wherein the control command is generated using a front-side camera and a rear-side camera.
제9항에 있어서,
상기 손가락 끝 영역 검출 모듈은 피부색 검출 기술 또는 에지 검출 기술을 사용하여 상기 제1 손가락 영역의 끝 영역 또는 상기 제2 손가락 영역의 끝 영역 중 적어도 하나를 검출하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
10. The method of claim 9,
The fingertip detection module may include a front camera and a rear camera that detect at least one of an end area of the first finger area and an end area of the second finger area using a skin color detection technique or an edge detection technique A mobile terminal that generates an instruction.
제9항에 있어서,
상기 좌표 연산 모듈은
상기 제1 삼차원 좌표의 경우 상기 제1 손가락 영역의 끝 영역의 기준점을 이용하여 X 좌표값 및 Y 좌표값을 연산하고, 상기 제1 손가락 영역의 끝 영역의 너비, 높이 또는 면적 중 적어도 하나를 이용하여 Z 좌표값을 연산하고,
상기 제2 삼차원 좌표의 경우 상기 제2 손가락 영역의 끝 영역의 기준점을 이용하여 X 좌표값 및 Y 좌표값을 연산하고, 상기 제2 손가락 영역의 끝 영역의 너비, 높이 또는 면적 중 적어도 하나를 이용하여 Z 좌표값을 연산하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
10. The method of claim 9,
The coordinate computing module
Calculating an X coordinate value and a Y coordinate value using the reference point of the end area of the first finger area in the case of the first three-dimensional coordinate, and using at least one of the width, height, or area of the end area of the first finger area The Z coordinate value is calculated,
Calculating an X coordinate value and a Y coordinate value using the reference point of the end area of the second finger area in the case of the second three-dimensional coordinate, and using at least one of the width, height, or area of the end area of the second finger area And generates a control command by using a front-side camera and a rear-side camera that calculate a Z coordinate value.
제9항에 있어서,
상기 좌표 연산 모듈은
상기 제1 삼차원 좌표값 또는 상기 제2 삼차원 좌표값에 대하여
Z 좌표값(FingerPoint.Z)을 상기 색상 마커 영역의 너비 또는 지름을 기준으로 아래의 수식으로 연산하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
Figure 112013087100419-pat00025

(제1 삼차원 좌표값 경우 ColorPoint는 제1 색상 마커 영역의 실제 너비 또는 지름, PreviewWidth는 제1 타겟 영상 전체의 너비에 대한 픽셀 값, ColorPoint.Region은 제1 색상 마커 영역의 너비 또는 지름에 대한 픽셀 값, WidthFOV는 전면부 카메라의 가로 시야각이고,
제2 삼차원 좌표값 경우 ColorPoint는 제2 색상 마커 영역의 실제 너비 또는 지름, PreviewWidth는 제2 타겟 영상 전체의 너비에 대한 픽셀 값, ColorPoint.Region은 제2 색상 마커 영역의 너비 또는 지름에 대한 픽셀 값, WidthFOV는 후면부 카메라의 가로 시야각임)
10. The method of claim 9,
The coordinate computing module
The first three-dimensional coordinate value or the second three-dimensional coordinate value
A mobile terminal that generates a control command using a front-side camera and a rear-side camera that calculates a Z coordinate value (FingerPoint.Z) using the following formula based on the width or diameter of the color marker area.
Figure 112013087100419-pat00025

(Where ColorPoint is the actual width or diameter of the first color marker region, PreviewWidth is the pixel value for the width of the entire first target image, ColorPoint.Region is the width or diameter of the first color marker region, Value, WidthFOV is the horizontal viewing angle of the front side camera,
ColorPoint is the actual width or diameter of the second color marker region, PreviewWidth is the pixel value for the width of the entire second target image, ColorPoint.Region is the pixel value for the width or diameter of the second color marker region, , WidthFOV is the horizontal viewing angle of the rear camera)
제16항에 있어서,
상기 좌표 연산 모듈은
상기 제1 삼차원 좌표값 또는 상기 제2 삼차원 좌표값에 대하여
X 좌표값(FingerPoint.X)을 상기 색상 마커 영역의 너비 또는 지름을 기준으로 아래의 수식으로 연산하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
Figure 112013087100419-pat00026

(제1 삼차원 좌표값 경우 ColorPoint.x는 제1 색상 마커 영역의 중심 픽셀에 대한 x 픽셀 좌표값,
Figure 112013087100419-pat00027
,
Figure 112013087100419-pat00028
이고,
제2 삼차원 좌표값 경우 ColorPoint.x는 제2 색상 마커 영역의 중심 픽셀에 대한 x 픽셀 좌표값,
Figure 112013087100419-pat00029
,
Figure 112013087100419-pat00030
임)
17. The method of claim 16,
The coordinate computing module
The first three-dimensional coordinate value or the second three-dimensional coordinate value
A mobile terminal that generates a control command using a front camera and a rear camera that calculates an X coordinate value (FingerPoint.X) using the following formula based on the width or diameter of the color marker area.
Figure 112013087100419-pat00026

(In the case of the first three-dimensional coordinate value, ColorPoint.x is the x pixel coordinate value for the center pixel of the first color marker region,
Figure 112013087100419-pat00027
,
Figure 112013087100419-pat00028
ego,
In the case of the second three-dimensional coordinate value, ColorPoint.x is the x pixel coordinate value for the center pixel of the second color marker region,
Figure 112013087100419-pat00029
,
Figure 112013087100419-pat00030
being)
제16항에 있어서,
상기 좌표 연산 모듈은
상기 제1 삼차원 좌표값 또는 상기 제2 삼차원 좌표값에 대하여
Y 좌표값(FingerPoint.Y)을 상기 색상 마커 영역의 너비 또는 지름을 기준으로 아래의 수식으로 연산하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
Figure 112013087100419-pat00031

(제1 삼차원 좌표값 경우 ColorPoint.y는 제1 색상 마커 영역의 중심 픽셀에 대한 y 픽셀 좌표값,
Figure 112013087100419-pat00032
, PreviewHeight는 제1 타겟 영상 전체의 높이에 대한 픽셀 값,
Figure 112013087100419-pat00033
, HeightFOV는 전면부 카메라 세로 시야각이고,
제2 삼차원 좌표값 경우 ColorPoint.y는 제2 색상 마커 영역의 중심 픽셀에 대한 y 픽셀 좌표값,
Figure 112013087100419-pat00034
, PreviewHeight는 제2 타겟 영상 전체의 높이에 대한 픽셀 값,
Figure 112013087100419-pat00035
, HeightFOV는 후면부 카메라 세로 시야각임)
17. The method of claim 16,
The coordinate computing module
The first three-dimensional coordinate value or the second three-dimensional coordinate value
A mobile terminal that generates a control command using a front camera and a rear camera that calculates a Y coordinate value (FingerPoint.Y) based on a width or a diameter of the color marker area using the following equation.
Figure 112013087100419-pat00031

(In the case of the first three-dimensional coordinate value, ColorPoint.y is a y pixel coordinate value for the center pixel of the first color marker region,
Figure 112013087100419-pat00032
, PreviewHeight is a pixel value for the height of the entire first target image,
Figure 112013087100419-pat00033
, HeightFOV is the vertical viewing angle of the front side camera,
In the second three-dimensional coordinate value, ColorPoint.y is a y pixel coordinate value for the center pixel of the second color marker region,
Figure 112013087100419-pat00034
, PreviewHeight is a pixel value with respect to the height of the entire second target image,
Figure 112013087100419-pat00035
, And HeightFOV is the vertical viewing angle of the rear camera)
제9항에 있어서,
상기 이동 단말은 상기 제1 색상 마커 영역 또는 상기 제2 색상 마커 영역 중 적어도 하나가 출력되는 터치 디스플레이 장치를 더 포함하고,
상기 제어 모듈은 상기 터치 디스플레이 장치에서 출력되는 색상 마커 영역에 대한 터치 입력이 발생하면, 터치 입력이 발생한 색상 마커 영역에 대하여 상기 마커 영역 검출 모듈을 구동하고, 터치 입력이 발생하지 않으면 상기 손가락 끝 영역 검출 모듈을 구동하는 전면부 카메라 및 후면부 카메라를 이용하여 제어 명령을 생성하는 이동 단말.
10. The method of claim 9,
Wherein the mobile terminal further comprises a touch display device for outputting at least one of the first color marker area and the second color marker area,
Wherein the control module drives the marker area detection module for a color marker area where a touch input is generated when a touch input to the color marker area output from the touch display device occurs, A mobile terminal for generating a control command using a front side camera and a rear side camera that drives a detection module.
KR1020130114195A 2013-09-26 2013-09-26 Mobile terminal for generating control commands using front side camera and rear side camera KR101465896B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130114195A KR101465896B1 (en) 2013-09-26 2013-09-26 Mobile terminal for generating control commands using front side camera and rear side camera

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130114195A KR101465896B1 (en) 2013-09-26 2013-09-26 Mobile terminal for generating control commands using front side camera and rear side camera

Publications (1)

Publication Number Publication Date
KR101465896B1 true KR101465896B1 (en) 2014-11-26

Family

ID=52291736

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130114195A KR101465896B1 (en) 2013-09-26 2013-09-26 Mobile terminal for generating control commands using front side camera and rear side camera

Country Status (1)

Country Link
KR (1) KR101465896B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108363485A (en) * 2018-01-25 2018-08-03 广州杰赛科技股份有限公司 Control method, device, system and the computer equipment of non-touch screen display terminal
CN110040394A (en) * 2019-04-10 2019-07-23 广州大学 A kind of interactive intelligent rubbish robot and its implementation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080005798A (en) * 2006-07-10 2008-01-15 (주)유리시스 A cognitive and conduct disorder rehabilitation therapy systems using mothion tracking technologies and augmented reality
KR20110089021A (en) * 2010-01-29 2011-08-04 주식회사 팬택 Apparatus and method for obtaining 3d location information
KR20120010374A (en) * 2010-07-26 2012-02-03 이종우 Terminal providing 3d interface by recognizing motion of fingers and method thereof
KR20130082031A (en) * 2012-01-10 2013-07-18 주식회사 인프라웨어 Web-browser pointing method using camera module of smart-phone and marker on finger, and computer-readable recording medium with web-browser pointing program using camera module of smart-phone and marker on finger

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080005798A (en) * 2006-07-10 2008-01-15 (주)유리시스 A cognitive and conduct disorder rehabilitation therapy systems using mothion tracking technologies and augmented reality
KR20110089021A (en) * 2010-01-29 2011-08-04 주식회사 팬택 Apparatus and method for obtaining 3d location information
KR20120010374A (en) * 2010-07-26 2012-02-03 이종우 Terminal providing 3d interface by recognizing motion of fingers and method thereof
KR20130082031A (en) * 2012-01-10 2013-07-18 주식회사 인프라웨어 Web-browser pointing method using camera module of smart-phone and marker on finger, and computer-readable recording medium with web-browser pointing program using camera module of smart-phone and marker on finger

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108363485A (en) * 2018-01-25 2018-08-03 广州杰赛科技股份有限公司 Control method, device, system and the computer equipment of non-touch screen display terminal
CN110040394A (en) * 2019-04-10 2019-07-23 广州大学 A kind of interactive intelligent rubbish robot and its implementation

Similar Documents

Publication Publication Date Title
US10394334B2 (en) Gesture-based control system
US10082879B2 (en) Head mounted display device and control method
Reale et al. A multi-gesture interaction system using a 3-D iris disk model for gaze estimation and an active appearance model for 3-D hand pointing
KR101807241B1 (en) Apparatus and method for assuming finger location based on image acquired by single camera and computer readable media storing program performing the method
TWI499966B (en) Interactive operation method of electronic apparatus
US8705868B2 (en) Computer-readable storage medium, image recognition apparatus, image recognition system, and image recognition method
WO2016054896A1 (en) Depth determining method and apparatus and electronic device
Hu et al. Hand pointing estimation for human computer interaction based on two orthogonal-views
Jing et al. Human-computer interaction using pointing gesture based on an adaptive virtual touch screen
US8625898B2 (en) Computer-readable storage medium, image recognition apparatus, image recognition system, and image recognition method
Caputo et al. 3D hand gesture recognition based on sensor fusion of commodity hardware
US20120219177A1 (en) Computer-readable storage medium, image processing apparatus, image processing system, and image processing method
TW201120681A (en) Method and system for operating electric apparatus
KR101465894B1 (en) Mobile terminal for generating control command using marker put on finger and method for generating control command using marker put on finger in terminal
US8571266B2 (en) Computer-readable storage medium, image processing apparatus, image processing system, and image processing method
KR20130006186A (en) Method, terminal, and computer readable recording medium for controlling content by detecting gesture of head and gesture of hand
Hongyong et al. Finger tracking and gesture recognition with kinect
US8718325B2 (en) Computer-readable storage medium, image processing apparatus, image processing system, and image processing method
KR20140019950A (en) Method for generating 3d coordinate using finger image from mono camera in terminal and mobile terminal for generating 3d coordinate using finger image from mono camera
Guo Research of hand positioning and gesture recognition based on binocular vision
CN106909871A (en) Gesture instruction recognition methods
KR101465896B1 (en) Mobile terminal for generating control commands using front side camera and rear side camera
KR101447958B1 (en) Method and apparatus for recognizing body point
Xu et al. Bare hand gesture recognition with a single color camera
Gupta et al. Hand gesture based region marking for tele-support using wearables

Legal Events

Date Code Title Description
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171027

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180917

Year of fee payment: 5