KR101909326B1 - 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템 - Google Patents

얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템 Download PDF

Info

Publication number
KR101909326B1
KR101909326B1 KR1020150174033A KR20150174033A KR101909326B1 KR 101909326 B1 KR101909326 B1 KR 101909326B1 KR 1020150174033 A KR1020150174033 A KR 1020150174033A KR 20150174033 A KR20150174033 A KR 20150174033A KR 101909326 B1 KR101909326 B1 KR 101909326B1
Authority
KR
South Korea
Prior art keywords
unit
frame
triangle mesh
change
face
Prior art date
Application number
KR1020150174033A
Other languages
English (en)
Other versions
KR20170067398A (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 KR1020150174033A priority Critical patent/KR101909326B1/ko
Publication of KR20170067398A publication Critical patent/KR20170067398A/ko
Application granted granted Critical
Publication of KR101909326B1 publication Critical patent/KR101909326B1/ko

Links

Images

Classifications

    • G06K9/00268
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06K9/00281
    • G06K9/00604
    • G06K9/4671

Abstract

얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템이 개시된다. 사용자 인터페이스 제어 방법은, 입력되는 제1 프레임과 제1 프레임 다음에 입력되는 제2 프레임 각각에서 얼굴 영역을 검출하는 단계, 얼굴 영역에서 특징점들을 추출하는 단계, 특징점들을 토대로 삼각 매쉬를 생성하는 단계, 제1 프레임과 제2 프레임을 비교하여 삼각 매쉬의 변화를 추적하는 단계, 삼각 매쉬의 변화가 문턱치 이상인지를 판단하는 단계, 및 문턱치 이상의 삼각 매쉬의 변화에 대응하는 얼굴 모션에 따라 제어 이벤트를 발생시키는 단계를 포함한다.

Description

얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템{USER INTERFACE CONTROL METHOD AND SYSTEM USING TRIANGULAR MESH MODEL ACCORDING TO THE CHANGE IN FACIAL MOTION}
본 발명의 실시예들은 사용자 인터페이스 제어 기술에 관한 것으로, 보다 상세하게는 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템에 관한 것이다.
종래의 얼굴 인식을 이용하는 사용자 인터페이스는 주로 얼굴의 눈동자 인식을 통한 제어를 지칭한다. 이러한 종래의 얼굴 인식을 통한 제어는 사용자 얼굴 양쪽의 두 눈이 모두 입력 장치에서 인식되어야 사용 가능하다.
하지만, 종래의 얼굴 인식을 통한 제어는 사용자 얼굴의 눈동자의 움직임을 파악하는 시스템으로, 두 손을 자유로이 사용할 수 있는 장점은 있으나 휴대 단말 등과 같은 이동성 장치에서 사용자 특히 노약자 등이 사용하기가 쉽지 않은 문제가 있다.
상기와 같은 기존의 얼굴 인식을 통한 제어의 문제점을 해결하기 위한 것으로, 본 발명의 목적은 종래의 얼굴 인식보다 얼굴 모션 인식의 향상을 얻을 수 있고, 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템을 제공하는데 있다.
상기의 목적을 달성하기 위하여 본 발명의 일 측면에서는, 카메라가 장착된 모바일 디바이스와 데스크탑 기기를 대상으로, 사용자 얼굴 모션에 따른 삼각 매쉬 모델을 통하여 시스템 동작을 제어하는 인터페이스를 제공하고자 한다.
즉, 본 발명의 일 측면에서는 외부 입력 장치(예, 카메라)를 통해 입력되는 영상에 대해 사용자의 얼굴 영역을 검출하고, 해당 영역에서 사용자 얼굴의 특징점을 추출하고, 추출된 특징점을 기반으로 삼각형의 매쉬를 생성하고, 사용자 얼굴 움직임에 따라 변화되는 삼각 매쉬의 변화량을 추적하여, 시스템의 동작을 제어하는 사용자 인터페이스 제어 방법을 제공한다.
상기의 목적을 달성하기 위하여 본 발명의 다른 측면에서는, 사용자 얼굴 특징점으로, 입력 영상에서 검출하는 사용자의 얼굴 외곽선, 눈썹, 눈, 눈동자, 코, 입 등의 위치에 해당하는 점들을 영상 처리 기술을 통하여 검출하고, 하나의 점에서 복수 개의 최상위 근접점들을 계산하여 해당 점들 간의 거리를 연결하는 선분을 통해 삼각형의 매쉬를 생성하고, 생성한 삼각 매쉬의 벡터 성분을 추적하여 매쉬 모델에 따라 변화되는 기울기와 점들의 거리를 삼각함수와 이동거리를 산출하고, 얼굴 모션의 변화를 감지하여, 제어하고자 하는 장치에 대한 사용자 인터페이스 신호 또는 사용자 상호 동작을 지원하는 신호를 출력할 수 있는 사용자 인터페이스 제어 방법을 제공한다.
상기의 목적을 달성하기 위하여 본 발명의 또 다른 측면에서는, 입력되는 제1 프레임과 상기 제1 프레임 다음에 입력되는 제2 프레임 각각에서 얼굴 영역을 검출하는 단계, 얼굴 영역에서 특징점들을 추출하는 단계, 특징점들을 토대로 삼각 매쉬를 생성하는 단계, 제1 프레임과 제2 프레임을 비교하여 삼각 매쉬의 변화를 추적하는 단계, 삼각 매쉬의 변화가 문턱치 이상인지를 판단하는 단계, 및 문턱치 이상의 삼각 매쉬의 변화에 대응하는 얼굴 모션에 따라 제어 이벤트를 발생시키는 단계를 포함하는, 사용자 인터페이스 제어 방법을 제공한다.
상기의 목적을 달성하기 위하여 본 발명의 또 다른 측면에서는, 입력되는 제1 프레임과 제1 프레임 다음에 입력되는 제2 프레임 각각에서 얼굴 영역을 검출하는 검출부, 얼굴 영역에서 특징점들을 추출하는 추출부, 특징점들을 토대로 삼각 매쉬를 생성하는 생성부, 제1 프레임과 제2 프레임을 비교하여 삼각 매쉬의 변화를 추적하는 추적부, 삼각 매쉬의 변화가 문턱치 이상인지를 판단하는 판단부, 및 문턱치 이상의 삼각 매쉬의 변화에 대응하는 얼굴 모션에 따라 제어 이벤트를 발생시키는 출력부를 포함하는, 사용자 인터페이스 제어 장치를 제공한다.
상기와 같은 본 발명에 따른 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 장치를 이용할 경우에는 사용자 얼굴의 눈동자나 눈 이외에 다른 여러 특징점 분포를 포함하기 때문에 향상된 인식율을 제공할 수 있으며, 또한 다른 제한적 요소(안경, 선글라스, 모자 등)에 의한 제한성을 배제하고 보다 강인한 사용자 동작 제어가 가능하다.
또한, 본 발명의 사용자 인터페이스 제어 방법 및 장치를 이용할 경우에는, 사용자 얼굴 모션을 추적함에 있어, 특징점을 기반으로 하여 삼각 메쉬 모델을 생성하기 때문에, 기존의 특정 영역의 움직임을 추적하는 방법과는 달리, 사용자 얼굴 방향과 카메라 위치 방향에 무관하게 삼각 메쉬 변화량을 추적할 수 있다. 이러한 제약성의 배제는, 보다 넓은 활용범위 제공이 가능하다. 예를 들어, 눈 또는 입술 등을 추적할 경우, 카메라의 위치가 정면으로 한정되는 제약이 존재하나, 본 발명의 방법 및 장치는 그러한 제약으로부터 크게 자유롭다.
또한, 본 발명의 사용자 인터페이스 제어 방법 및 장치를 이용할 경우에는, 기존의 사용자 몸동작 인식을 통한 제어 시스템(예컨대, Kinect)이 두 손의 움직임을 추적하기 위해서 고정된 카메라 장치로부터의 입력만을 지원하는 것과 비교할 때, 편리한 이동성을 가진 모바일 장치에서 제한적인 한계를 극복할 수 있다. 즉, 본 발명에 의하면, 손에 들고 이동하면서 카메라의 얼굴 움직임을 추적하여 얼굴 인식에 대한 분석이 가능하기 때문에 모바일의 이동성을 제공하면서 사용자 편리성이 향상된 (두 손을 자유로이 사용할 수 있는) 제어 기술을 제공할 수 있다.
또한, 본 발명의 사용자 인터페이스 제어 방법 및 장치를 이용할 경우에는, 행위 인식 대상이 사용자의 손동작, 몸짓이 아닌 얼굴 표정 및 그 추적을 통한 사용자 인식이기에, 사용자의 자유도가 높으며, 신체적 약자 즉, 신체적으로 불편한 사용자와 노약자까지도 쉽게 제어할 수 있는 사용자 인터페이스 (특히, 모바일 장치용 사용자 인터페이스)로도 활용 가능한 장점이 있다.
도 1은 본 발명의 일 실시예에 따른 사용자 인터페이스 제어 장치의 하드웨어 구성도이다.
도 2는 본 발명의 다른 실시예에 따른 사용자 인터페이스 제어 장치에 채용할 수 있는 프로그램 블록의 구성도이다.
도 3은 본 발명의 또 다른 실시예에 따른 사용자 인터페이스 제어 방법에 대한 플로우차트이다.
도 4는 도 1의 사용자 인터페이스 제어 장치를 채용할 수 있는 컴퓨팅 장치의 개략적인 블록도이다.
도 5는 도 4의 컴퓨팅 장치에 구현되는 사용자 인터페이스 제어 장치의 구성도이다.
도 6은 도 5의 사용자 인터페이스 제어 장치의 추적부에 대한 구성도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 명세서에서 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 사용자 인터페이스 제어 장치의 하드웨어 구성도이다.
도 1을 참조하면, 본 실시예에 따른 사용자 인터페이스 제어 장치는 처리 장치(processing device, 100) 및 카메라 모듈(camera module, 110)을 포함한다. 여기서, 처리 장치(100)는 삼각 매쉬 모델(triangular mash model, 200)과 연결되고, 삼각 매쉬 모델(200)은 훈련 데이터(training data, 400)와 연결될 수 있다.
처리 장치(100)는 영상 처리 장치로서 정지 영상이나 동영상에 대응하는 입력 스트림(input stream)을 처리할 수 있는 프로세서의 적어도 일부 기능부나 이러한 기능부에 대응하는 기능을 수행하는 프로세서의 적어도 일부 구성부로 구현될 수 있다. 처리 장치(100)는 사용자의 얼굴 영상을 포함하는 입력 스트림에서 얼굴 영역을 추출할 수 있다. 또한, 처리 장치(100)는 얼굴 영역에서 특징점을 추출할 수 있다.
이러한 처리 장치(100)는 모바일 단말, 노트북, 데스크탑 컴퓨터 등에 탑재되는 프로세서로 구현될 수 있으나, 이에 한정되지는 않는다. 예를 들어, 처리 장치(100)는 카메라 모듈(110)에 연결되며 IoT(internet of Thing)에 연결되는 장치에 탑재되어 모바일 단말, 노트북, 데스크탑 컴퓨터 등의 외부 장치에 제어 이벤트 신호를 출력하거나 상호 동작을 위한 제어 신호를 출력하도록 구현될 수 있다.
카메라 모듈(110)은 사용자(user)의 얼굴 정보를 포함하는 입력 스트림을 획득하거나 생성하고, 입력 스트림을 처리 장치(100)에 전달한다. 카메라 모듈(110)은 처리 장치(100)에 일체로 결합할 수 있으나, 이에 한정되지는 않는다. 카메라 모듈(110)은 별도의 카메라 장치에 설치되고 유선 또는 무선 네트워크를 통해 처리 장치(100)와 연결되도록 구현될 수 있다.
본 실시예에서 처리 장치(100)에 연결되는 삼각 매쉬 모델(200)은 얼굴 특징점들에 기초하여 삼각 매쉬를 생성한다. 삼각 매쉬 모델(200)은 처리 장치(100)의 메모리에 저장되어 처리 장치(100)의 프로세서에 의해 수행되도록 구현될 수 있으나, 이에 한정되지는 않는다. 삼각 매쉬 모델(200)은 처리 장치(100)가 연결되는 다른 장치의 메모리에 저장되거나 다른 장치의 프로세서에 의해 수행되고 그 결과만을 처리 장치에 반환하도록 구현될 수 있다. 그 경우, 본 실시예에 따른 사용자 인터페이스 제어 장치는 넓은 의미에서 처리 장치(100)와 처리 장치(100)에 연결되며 삼각 매쉬 모델(200)을 포함하는 다른 장치를 포함하도록 구현될 수 있다.
삼각 매쉬 모델(200)은 다양한 방법으로 얼굴 특징점들에 기초한 삼각 매쉬를 생성할 수 있다.
본 실시예에 적용가능한 삼각 매쉬 모델(200)은, 얼굴 영역에서 얻은 특징점들 중 하나를 주축으로 설정하고, 설정된 주축을 기준으로 얼굴 영역을 복수 개로 분할하고 각 분할된 영역에 대하여 2차원 딜로니 삼각화(2D Delaunay triangulation)를 이용하여 삼각 매쉬를 생성하는 방식을 포함할 수 있다.
본 실시예에 따른 삼각 매쉬 모델(200)은, 얼굴 특징점들을 삼각형들로 연결하여 평면 또는 공간을 분할할 때 삼각형들의 내각이 최소값이 되도록 하는 들로네 삼각분할(Delaunay triangulation)을 이용하는 방식으로 구현될 수 있다.
본 실시예에 따른 삼각 매쉬 모델(200)은, 얼굴 특징점들이 서로 도달 가능하면서 전체 거리의 합이 최소가 되도록 연결한 트리 구조를 토대로 삼각 매쉬를 생성하는 방식으로 구현될 수 있다.
본 실시예에 따른 삼각 매쉬 모델(200)은 전술한 여러 가지 방법들의 적어도 일부의 조합으로 구현될 수 있음은 물론이다.
훈련 데이터(400)는 삼각 매쉬 모델(200)에 연결된다. 훈련 데이터(400)는 삼각 매쉬 모델(200)의 삼각 매쉬 형성에 있어서 이전에 학습된 알려진 속성을 기반으로 얼굴 특징점들에서 최적의 삼각 매시를 생성하는 것을 지원할 수 있다. 예를 들어, 훈련 데이터(400)는 다양한 얼굴 영상에 대한 데이터와 얼굴 영상 데이터의 특징이나 분류에 따라 삼각 매쉬 생성 절차를 선택하도록 구현될 수 있다.
이러한 훈련 데이터(400)는 처리 장치(100)가 탑재되는 컴퓨팅 장치에 구비될 수 있으나, 이에 한정되지는 않는다. 훈련 데이터(400)는 기계 학습(machine learning)을 지원하는 컴퓨팅 장치에 탑재되어 네트워크를 통해 삼각 매쉬 모델(200)과 상호 작용할 수 있도록 구현될 수 있다.
본 실시예에 의하면, 사용자 인터페이스 제어 장치는 사용자의 얼굴 영상을 포함하는 입력 스트림을 카메라 모듈(110)을 통해 획득하고, 카메라 모듈(110)에 연결되는 얼굴 영상에서 얼굴 영역을 추출하고, 추출한 얼굴 영역에서 특징점들을 추출하고, 삼각 매쉬 모델(200)을 통해서 혹은 삼각 매쉬 모델(200)과 이에 연결되는 훈련 데이터(400)의 조합을 통해서 특징점들에 기초한 삼각 매쉬를 생성하고, 삼각 매쉬의 변화에 기초하여 제어 이벤트를 발생시킬 수 있다. 여기서, 제어 이벤트는 처리 장치(100)에 연결되거나 처리 장치(100)를 탑재하는 장치(500)와의 상호동작 제어(Interactive control)에 이용될 수 있다. 장치(500)는 사용자 인터페이스 제어 장치의 제어 이벤트 신호에 따라 제어되는 장치로서 액추에이터를 포함하거나, 프로세서를 포함할 수 있다. 이러한 장치(500)는 제어 이벤트 신호에 응답하여 단순 동작하는 제어 대상 타겟이거나 사용자 인터페이스 제어 장치와 상호동작할 수 있는 컴퓨팅 장치(상호동작 장치)일 수 있다. 컴퓨팅 장치는 데스크탑 컴퓨터, 노트북 컴퓨터 등을 포함하고, 특히 애플사의 아이폰이나 아이패드, 삼성전자의 갤럭시노트, 엘지전자의 G패드 등과 같은 모바일 단말을 포함할 수 있다.
도 2는 본 발명의 다른 실시예에 따른 사용자 인터페이스 제어 장치에 채용할 수 있는 프로그램 블록의 구성도이다.
도 2를 참조하면, 본 실시예에 따른 사용자 인터페이스 제어 장치는, 입력 비디오 시퀀스(input video sequences) 제공부(112), 프레임 필터(frame filter, 114), 얼굴 영역 검출부(face area detector, 120), 얼굴 특징점 추출부(facial feature points extractro, 130), 삼각 매쉬 생성부(triangular mash creator, 140), 삼각 매쉬 변화 추적부(triangular mash variation tracker, 210), 변화 추정부(variances estimator, 220), 문턱치 판단부(threshold checker, 230), 최근접 이웃 분류부(nearest neighbor classifier, 310), 가중 결정 평가부(weighted decision evaluator, 320) 및 사용자 제어 제공부(user control provider, 330)를 포함한다.
입력 비디오 시퀀스 제공부(112)는 카메라 모듈이나 카메라 모듈에 연결되는 처리 장치의 입력단에 대응할 수 있다. 입력 비디오 시퀀스 제공부(112)는 사용자의 얼굴 이미지를 포함하는 입력 스트림을 처리 장치에 제공할 수 있다. 입력단은 접속 포트, 접속 단자 등의 형태를 가질 수 있으며, 입력 스트림의 데이터 크기, 데이터 타입(RGB, YCbCr, 흑백), 데이터 포맷(JPEG, MPEG-1, MPEG-2) 등의 해상도나 포맷에 따라 필요한 프로토콜을 지원하도록 구현될 수 있다.
프레임 필터(114)는 입력 비디오 시퀀스 제공부(112)로부터 받은 입력 스트림의 복수의 프레임들 중 원하는 하나의 프레임을 선택하는 수단이나 이러한 수단에 상응하는 기능을 수행하는 구성부로 구현될 수 있다. 프레임 필터(114)는 기본적으로 입력 스트림에서 원하는 프레임을 추출하는 기능을 구비하고, 구현에 따라서 추출한 프레임에서 노이즈를 제거하는 기능을 더 구비할 수 있다.
얼굴 영역 검출부(120)는 프레임 필터(114)로부터 전달된 프레임에서 사용자의 얼굴 영역을 검출하는 수단이나 이러한 수단에 상응하는 기능을 수행하는 구성부로 구현될 수 있다. 검출된 얼굴 영역이 두 개 이상일 때, 얼굴 영역 검출부(120)는 기 설정된 기준에 따라 복수의 얼굴 영역들 중 어느 하나를 선택할 수 있다. 예를 들어, 얼굴 영역 검출부(120)는 복수의 얼굴 영역들 중 가장 큰 크기를 가진 얼굴 영역을 선택하거나, 프레임의 중앙에 위치하는 얼굴 영역을 선택하거나, 소정의 마커에 의해 인식되는 얼굴 영역을 선택하도록 구현될 수 있다.
얼굴 특징점 추출부(130)는 얼굴 영역 검출부(120)로부터 전달된 프레임의 얼굴 영역에서 특징점을 추출한다. 얼굴 특징점 추출부(130)는 2차원 영상 데이터를 주파수와 시간의 국부성을 갖도록 분해하여 프레임 데이터를 처리하는 웨이브렛 기반 특징점 추출 기법을 이용할 수 있다.
삼각 매쉬 생성부(140)는 얼굴 특징점 추출부(130)로부터 전달된 얼굴 영역의 특징점들 중 적어도 일부를 연결하여 삼각형으로 이루어진 매쉬를 생성한다. 삼각 매쉬 생성부(140)는 삼각 매쉬 모델을 포함할 수 있다. 삼각 매쉬 생성부(140)에 채용할 수 있는 기법들은 도 1을 참조하여 앞서 설명한 바와 같다.
삼각 매쉬 변화 추적부(210)는 삼각 매쉬 생성부(140)로부터 전달된 제1 프레임의 제1 삼각 매쉬와 제2 프레임의 제2 삼각 매쉬를 비교하고 제1 삼각 매쉬에서 제2 삼각 매쉬로의 변화를 추적한다. 삼각 매쉬 변화가 추적되지 않으면, 삼각 매쉬 변화 추적부(210)는 얼굴 영역 검출부(120)에 얼굴 영역의 재검출을 요청하는 신호를 전달할 수 있다.
변화 추정부(220)는 삼각 매쉬 변화 추적부(210)에서 전달된 제1 프레임과 제2 프레임에서 삼각 매쉬의 변화의 형태나 세기를 추정한다. 변화 추정부(220)는 삼각 매쉬의 변화가 복수 개인지, 복합적인지, 얼굴 특징자의 어느 위치에서 시작하는지, 어느 방향으로 향하는지, 크기 혹은 변화량이 얼마인지 등을 계산할 수 있다.
문턱치 판단부(230)는 변화 추정부(220)에서 추정된 삼각 매쉬의 변화 형태나 변화 세기가 미리 설정된 문턱치를 초과하는지 확인한다. 문턱치 초과의 확인에 있어서, 문턱치 판단부(230)는 훈련 데이터(training data, 400)를 이용할 수 있다. 또한, 문턱치 판단부(230)는 삼각 매쉬의 변화 형태나 변화 세기가 문턱치 이하이면, 얼굴 영역 검출부(120)에 얼굴 영역의 재검출을 위한 신호를 전달할 수 있다.
문턱치 판단부(230)로부터 프레임을 받으면, 최근접 이웃 분류부(310)는 훈련 데이터(400)를 토대로 얼굴 영역에서 삼각 매쉬 변화가 가장 큰 서브영역이나 특징자를 검출한다. 이러한 최근접 이웃 분류부(310)는 추적된 삼각 매쉬의 변화에 대응하여 원하는 제어 이벤트를 발생시키는데 이용된다.
가중 결정 평가부(320)는 최근접 이웃 분류부(310)에서 분류된 얼굴 영역의 특징자나 서브영역의 종류 혹은 위치에 따라 미리 설정된 가중치를 부여할 수 있다. 가중 결정 평가부(320)는 삼각 매쉬의 변화를 토대로 사용자의 얼굴 영역에서이벤트를 감지한 후, 해당 이벤트가 발생한 얼굴 특징자나 영역에 따라 미리 저장된 신뢰도의 레벨을 반영한 가중치를 제어 이벤트 발생에 부여하도록 구현될 수 있다.
사용자 제어 제공부(330)는 문턱치 판단부(230), 최근접 이웃 분류부(310) 혹은 가중 결정 평가부(320)로부터 전달되거나 이들 중 어느 하나의 동작에 의해 발생하는 신호에 응하여 사용자의 얼굴을 이용하는 제어 신호를 제어 대상 장치에 제공한다. 사용자 제어 제공부(330)는 처리 장치의 출력단으로 구현될 수 있다. 그 경우, 사용자 제어 제공부(330)는 버퍼를 구비하거나, 제어 대상 장치와의 네트워크 접속에 필요한 프로토콜을 지원하도록 구현될 수 있다.
도 3은 본 발명의 또 다른 실시예에 따른 사용자 인터페이스 제어 방법에 대한 플로우차트이다.
본 실시예는 도 1과 도 2에 도식화된 하드웨어와 소프트웨어를 이용하여 얼굴 모션 변화에 따라 시스템을 제어하는 인터페이스 방법에서 특성화된 부분에 관한 것이다.
도 3을 참조하면, 본 실시예에 따른 사용자 인터페이스 제어 방법은, 처리 장치에 카메라 모듈이 연결되어 있는지를 확인한다(S31). 카메라 모듈(camera module)의 연결 성공(connection success)은 미리 정해진 횟수만큼 확인될 수 있으며, 연결 성공이 확인되지 않으면(S32의 No), 본 절차를 종료할 수 있다. 연결 성공이 확인되면(S32의 Yes), 카메라 모듈의 비디오 스트림(video stream)은 처리 장치에 전달된다.
다음, 처리 장치는 카메라 모듈 또는 카메라 모듈이 탑재된 카메라로부터 비디오 스트림을 받는다(S33). 카메라 모듈이나 카메라는 처리 장치에 일체로 결합할 수 있으나, 이에 한정되지는 않는다.
다음, 처리 장치는 비디오 스트림(video frames)을 필터링한다(S34). 필터링은 미리 지정된 환경설정에 따라 특정 프레임을 제외한 나머지 프레임을 필터링하는 것을 포함할 수 있다.
다음, 처리 장치는 필터링된 하나의 프레임(one frame) 즉 입력 프레임에서 사용자의 얼굴 영역을 검출한다(S35). 얼굴 영역은 얼굴의 하나 이상의 서브-영역을 포함할 수 있다. 검출된 사용자 얼굴 영역은 하나의 프레임에 대하여 얼굴 서브영역(facial sub-area)에 대응할 수 있다.
얼굴 영역 검출에는 다양한 방법이 사용될 수 있다. 예를 들어, 처리 장치는 영역 분할과 위치 정보를 이용하여 얼굴 영역을 검출할 수 있다. 이 얼굴 영역 검출 방법은 RGB 공간의 피부색의 RGB 분포에 기초하여 사용자의 피부색을 검출하고, 피부색을 가진 제1 영역을 제1 색상(예컨대, 흰색)으로, 피부색이 아닌 색을 가진 제2 영역을 제2 색상(예컨대, 검정색)으로 이진화하는 과정을 포함할 수 있다. 이때, 에지 보존을 위해 미디언 필터를 사용할 수 있으며, 미리 설정된 크기 이상을 갖는 얼굴 추정 영역 외에 상대적으로 작은 크기의 제1 색상의 영역을 제거하여 최종적인 얼굴 영역을 검출하도록 구현될 수 있다.
또 다른 얼굴 영역 검출의 예로써, 처리 장치는 비전센서, 열센서, 적외선센서 등으로부터 얻은 영상에서 남여, 피부색, 연령, 포즈 변화(정면, 좌측, 우측, 상단, 또는 하단 방향 바라봄), 조명 변화, 카메라 모듈과의 거리, 얼굴의 수, 데이터 크기(영상의 해상도), 데이터 타입(RGB, YCbCr, 흑백), 데이터 포맷(JPEG, MPEG-1, MPEG-2)의 조건 혹은 환경에 따라 단일 사용자의 얼굴을 검출하거나 얼굴 영역을 검출하는 얼굴 영역 검출부를 구비할 수 있다. 얼굴 영역 검출부는 피부색를 이용하는 방법 이외에 기하학적 및/또는 통계적으로 기 학습된 모델과 현재의 영상(단일 프레임)에서 검출된 모델과의 비교를 통해 얼굴 영역과 배경 영역을 구분하도록 구현될 수 있다. 모델들의 비교에는 유클리드 거리(euclidean distance) 및 절대기준치가 이용될 수 있다. 물론, 전술한 방법 이외에도 얼굴 영역 검출부는 타원 마스크를 이용한 얼굴 영역 검출, HSI 색상 정보를 이용한 얼굴 영역 검출, HUE와 차영상(difference image)를 이용한 얼굴 영역 검출 등의 방법들에서 선택되는 적어도 어느 하나의 방법을 이용하여 얼굴 영역을 검출할 수 있다.
다음, 처리 장치는 얼굴 영역의 검출 성공을 판단한다(S36). 검출 성공이 아니면, 처리 장치는 필터링된 하나의 프레임에서 사용자의 얼굴 영역을 다시 검출하기 위해 이전 단계(S35)로 되돌아갈 수 있다. 또한, 검출 성공이 아니면, 처리 장치는 카메라 모듈로부터 비디오 스트림을 받는 단계(S33)로 되돌아갈 수 있다. 상기의 검출 성공이 아닐 때, 이전 단계들(S33, S35) 중 어느 하나로 되돌아가는데 있어서, 소정의 판단 단계(S36a)가 수행될 수 있다. 소정의 판단 단계는 예를 들어 반복 횟수(예컨대, 3회)를 정하고, 검출 성공이 아닌 3회 동안은 얼굴 영역 검출 단계로 되돌아가고, 3회 이후에는 비디오 스트림을 받는 단계로 되돌아갈 수 있다.
다음, 처리 장치는 얼굴 영역에서 얼굴 특징점을 추출한다(S37). 얼굴 특징점 추출부에서 추출된 얼굴 특징점은 미리 정해진 차원에서의 특징점 좌표(coordinate of feature points) 형태로 출력될 수 있다.
얼굴 특징점 검출은 두 프레임 이상에서의 영상 처리가 필요한 변화 탐지를 위해 필요하다. 얼굴 특징점 검출은 얼굴 특징자들(눈, 코, 입 등)에 대한 에지 성분과 얼굴의 기하학적 위치 정보를 이용하여 혹은 이를 기준으로 하여 수행될 수 있으나, 이에 한정되지 않고 기타 기존의 다른 적당한 특징점 검출 기법을 이용하도록 구현될 수도 있다.
다음, 처리 장치는 얼굴 특징점 추출의 성공 여부를 판단한다(S38). 추출 성공(extraction success)이 아니면, 처리 장치는 얼굴 특징점 추출 단계로 되돌아갈 수 있다. 물론, 일정 횟수 이상 얼굴 특징점 추출에 성공하지 못하면, 처리 장치는 비디오 스트림을 받는 단계로 되돌아가거나, 에러를 출력하고 현재의 프레임에 대한 처리 과정을 종료할 수 있다.
다음, 처리 장치는 삼각 매쉬 모델을 통해 삼각 매쉬를 형성한다(S39). 본 단계에서는 삼각 매쉬 생성부가 얼굴 영역의 특징점들 중 적어도 일부를 연결하여 삼각형으로 이루어진 매쉬를 생성하는 것을 포함하며, 삼각 매쉬 생성 방법은 도 1를 참조하여 앞서 설명한 바와 같을 수 있다. 삼각 매쉬 모델은 훈련 데이터를 참조하거나 이용하여 얼굴 영역에 삼각 매쉬를 생성할 수 있다(도 1의 200 참조).
다음, 처리 장치는 삼각 매쉬 추적을 위한 버퍼링의 수행 여부를 결정할 수 있다(S40). 버퍼링을 수행할 필요가 있으면(S40의 Yes), 처리 장치는 삼각 매쉬를 생성한 프레임(이전 프레임 또는 제1 프레임)에 대하여 버퍼링을 수행할 수 있다(S41). 그 경우, 처리 장치는 버퍼링부 또는 버퍼(buffer)를 구비할 수 있다. 버퍼링부는 제1 프레임의 얼굴 영역에 대한 삼각 매쉬(제1 삼각 매쉬)를 저장할 수 있다. 한편, 처리 장치는, 제1 프레임의 경우와 유사하게, 제1 프레임(이전 프레임) 다음에 수신한 제2 프레임(현재 프레임)에 대하여 얼굴 영역 추출, 얼굴 특징점 추출 및 삼각 매쉬(제2 삼각 매쉬) 생성 단계들을 수행할 수 있다.
한편, 버퍼링을 수행할 필요가 없으면(S40의 No), 처리 장치는 제1 프레임의 얼굴 영역에 대한 제1 삼각 매쉬 및 제2 프레임의 얼굴 영역에 대한 제2 삼각 매쉬를 비교하거나 추적하는 단계로 진행할 수 있다. 이 경우, 처리 장치는 병렬처리부를 통해 제1 프레임과 제2 프레임에 대한 병렬적 처리를 설정하고, 그에 따라 처리 장치에 구비된 복수의 처리 프로세스들을 통해 복수의 프레임들에 대한 삼각 매쉬 생성을 병렬적으로 처리할 수 있다.
제1 프레임의 얼굴 영상에 대한 제1 삼각 매쉬와 제2 프레임의 얼굴 영상에 대한 제2 삼각 매쉬가 준비되면, 처리 장치는 제2 프레임의 제2 삼각 매쉬를 제1 프레임의 제1 삼각 매쉬와 비교하고 제1 삼각 매쉬에서 제2 삼각 매쉬로의 변화를 추적할 수 있다(S42).
다음, 처리 장치는 삼각 매쉬의 변화를 문턱치와 비교하여 삼각 매쉬의 변화가 오차 범위를 초과하는지 혹은 허용범위 오차 이내인지를 판단한다(S43). 판단 결과가 허용범위 오차 이내이면, 처리 장치는 삼각 매쉬들을 비교하고 추적하는 단계로 되돌아가거나 제1 프레임에 대한 본 프로세스를 종료할 수 있다. 그리고, 상기의 판단 결과가 허용범위 오차의 초과이면, 삼각 매쉬의 변화에 대응하여 미리 설정된 제어 이벤트를 발생할 수 있다(S44).
한편, 상기의 판단 결과가 허용범위 오차의 초과일 때, 처리 장치는 삼각 매쉬 변화의 시작 위치, 범위, 형태, 방향, 변화량 또는 이들의 조합에 따라 미리 설정된 다양한 제어 이벤트들 중 그에 대응하는 어느 하나를 선택하는 단계를 더 포함할 수 있다. 이러한 구성에 의하면, 사용자 인터페이스 제어 장치는 얼굴 영역의 눈썹, 눈, 눈동자, 입, 입술, 얼굴, 뺨, 턱선, 인중 등의 다수의 얼굴 특징자들을 이용하여 이들 중 어느 하나의 특징자 또는 복수의 특징자들에 대한 크기, 위치, 방향, 대칭성 또는 이들 조합의 변화에 따라 다양한 제어 이벤트를 대응시켜 설정할 수 있다.
도 4는 도 1의 사용자 인터페이스 제어 장치를 채용할 수 있는 컴퓨팅 장치의 개략적인 블록도이다.
도 4를 참조하면, 본 실시예에 따른 사용자 인터페이스 제어 장치를 채용하는 컴퓨팅 장치(500)는 사용자 인터페이스 제어 장치로부터 제어 이벤트 신호를 수신하거나 상호 동작 제어 신호를 수신할 수 있다. 이러한 컴퓨팅 장치(500)는 프로세서(510), 메모리(520), 입출력 장치(530), 네트워크 인터페이스(540) 및 저장 장치(550)를 포함할 수 있다. 컴퓨팅 장치(500)의 전술한 구성요소들은 신호 또는 데이터의 송수신을 위한 배선, 도전성 패턴 또는 버스(560)에 의해 서로 연결될 수 있다.
프로세서(510)는 하나 이상의 코어와 캐시 메모리를 포함할 수 있다. 프로세서(510)가 멀티 코어 구조를 구비하는 경우, 멀티 코어(multi-core)는 두 개 이상의 독립 코어를 단일 집적 회로로 이루어진 하나의 패키지로 통합한 것을 지칭할 수 있다. 프로세서(510)가 단일 코어 구조를 구비하는 경우, 프로세서(510)는 중앙 처리 장치로 지칭될 수 있다. 중앙처리장치(CPU)는 MCU(micro control unit)와 주변 장치(외부 확장 장치를 위한 집적회로)가 함께 배치되는 SOC(system on chip)로 구현될 수 있으나, 이에 한정되지는 않는다. 코어는 처리할 명령어를 저장하는 레지스터(register), 비교, 판단, 연산을 담당하는 산술논리연산장치(arithmetic logical unit, ALU), 명령어의 해석과 실행을 위해 CPU를 내부적으로 제어하는 내부 컨트롤 유닛(control unit), 내부 버스 등을 구비할 수 있다.
전술한 프로세서(510)는 하나 이상의 데이터 프로세서, 이미지 프로세서, 또는 코덱(CODEC)을 포함할 수 있으나, 이에 한정되지는 않는다. 데이터 프로세서, 이미지 프로세서 또는 코덱은 별도로 구성될 수 있다.
또한, 프로세서(510)는 주변장치 인터페이스와 메모리 인터페이스를 더 포함할 수 있다. 주변장치 인터페이스는 프로세서(510)와 입출력 장치(530) 및/또는 프로세서와 다른 주변 장치를 연결하고, 메모리 인터페이스는 프로세서(510)와 메모리(520)를 연결할 수 있다.
전술한 프로세서(510)는 메모리(520)에 저장되어 있는 특정한 소프트웨어 모듈(명령어 세트)을 실행하여 해당 모듈에 대응하는 특정한 여러 가지의 기능을 수행할 수 있다.
메모리(520)는 본 실시예에 따른 사용자 인터페이스 제어 방법을 구현하는 소프트웨어 모듈을 저장할 수 있다. 소프트웨어 모듈은 병렬처리 모듈, 검출 모듈, 추출 모듈, 생성 모듈, 버퍼링 모듈, 추적 모듈, 판단 모듈, 최근접 이웃 분류 모듈, 가중 결정 평가 모듈, 및 사용자 제어 제공 모듈을 포함할 수 있다. 그리고 추적 모듈은 구분 서브모듈, 선택 서브모듈, 및 비교 서브모듈을 포함할 수 있다.
메모리(520)는 하나 이상의 자기 디스크 저장 장치와 같은 고속 랜덤 액세스 메모리 및/또는 비휘발성 메모리, 하나 이상의 광 저장 장치 및/또는 플래시 메모리를 포함할 수 있다. 메모리(520)는 소프트웨어, 프로그램, 명령어 집합 또는 이들의 조합을 저장할 수 있다. 본 실시예에서 메모리(520)는, 삼각 매쉬 모델 및/또는 훈련 데이터를 적어도 일시적으로 저장할 수 있다.
입출력 장치(530)는 입력 스트림을 프로세서(510) 또는 프로세서 내 사용자 인터페이스 제어 장치에 전달한다. 입출력 장치(530)는 기본적으로 카메라 모듈 또는 카메라를 포함할 수 있으며, 아날로그 디지털 컨버터, 래치, 샘플앤홀더 또는 이들의 조합을 포함할 수 있으나, 이에 한정되지는 않는다. 또한, 입출력 장치(530)는 사용자 인터페이스 제어 장치 또는 이를 포함하는 프로세서(510)로부터 사용자 얼굴의 이벤트 감지에 기초한 제어 이벤트 정보를 포함한 신호를 외부로 출력한다. 입출력 장치(530)는 디지털 아날로그 컨버터, 버퍼, 앰프 또는 이들의 조합을 포함할 수 있다. 또한, 전술한 입출력 장치(530)는 키보드, 마우스, 스피커, 마이크로폰, 터치스크린 등의 다양한 입력 장치, 출력 장치 또는 이들의 조합을 포함할 수 있다.
네트워크 인터페이스(540)는 프로세서(510), 메모리(520), 입출력 장치(530), 네트워크 인터페이스(540) 및 저장 장치(550) 중 하나 이상을 네트워크를 통해 외부 장치와 연결한다. 네트워크 인터페이스(540)는 네트워크 또는 송수신 데이터 포맷에서 요구하는 프로토콜을 지원할 수 있다. 네트워크 인터페이스(540)는 컴퓨팅 장치(500)가 제어 대상 장치와 연결되도록 지원하거나 컴퓨팅 장치(500) 내 사용자 인터페이스 제어 장치가 외부 장치에 위치하는 삼각 매쉬 모델 및/또는 훈련 데이터에 접근하거나 연동하도록 구현될 수 있다. 이 경우, 훈련 데이터는 사용자 인터페이스 제어 장치가 네트워크를 통해 연결되는 서버 장치나 데이터베이스 서버나 클라우드 서버 등에 저장될 수 있다.
저장 장치(550)는, 구현에 따라서 훈련 데이터를 저장할 수 있다. 이러한 저장 장치(550)는 하드디스크, 광디스크, 플래시 메모리 등의 저장 매체가 사용될 수 있다.
도 5는 도 4의 컴퓨팅 장치에 구현되는 사용자 인터페이스 제어 장치의 구성도이다.
도 5를 참조하면, 본 실시예에 따른 사용자 인터페이스 제어 장치(100)는, 검출부(20), 추출부(30), 생성부(40), 추적부(60) 및 판단부(70)를 포함한다. 또한, 사용자 인터페이스 제어 장치(100)는 구현에 따라서 버퍼링부(50) 및/또는 병렬처리부(10)를 더 포함할 수 있다.
병렬처리부(10)는 사용자 인터페이스 제어 장치(100)에 입력되는 스트림 데이터에서 사용자의 얼굴 영상을 포함하는 제1 프레임과 제2 프레임을 동시에 처리할지를 판단하거나 설정할 수 있다. 병렬처리부(10)에서 병렬 처리 환경이 활성화된 상태로 설정되어 있으면, 사용자 인터페이스 제어 장치(100)는 얼굴 영역을 검출하고 특징점을 추출하는 등의 이후의 과정을 제1 프레임과 제2 프레임에 대하여 독립적으로 혹은 병렬적으로 수행할 수 있다.
검출부(20)는 카메라 모듈 또는 입력 비디오 시퀀스 제공부로부터 제공되고 프레임 필터에 의해 필터링된 하나의 프레임에서 얼굴 영역을 검출하는 수단이나 구성부를 포함한다. 검출부(20)는 메모리에 저장되는 검출 모듈(제1 모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 얼굴 영역 검출부로서 동작할 수 있다.
추출부(30)는 검출부(20)에 의해 검출된 얼굴 영역에서 특징점을 추출하는 수단이나 구성부를 포함한다. 추출부(30)는 메모리에 저장되는 추출 모듈(제2 모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 얼굴 특징점 추출부로서 동작할 수 있다.
생성부(40)는 추출부(30)에 의해 추출된 얼굴 특징점에 기초하여 삼각 매쉬를 생성하는 수단이나 구성부를 포함한다. 생성부(40)는 메모리에 저장되는 생성 모듈(제3 모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 삼각 매쉬 생성부로서 동작할 수 있다.
버퍼링부(50)는 생성부(40)가 제1 프레임과 제2 프레임을 순차적으로 처리하는 경우 미리 처리된 제1 프레임의 처리 결과를 저장하는 수단이나 구성부를 포함한다. 버퍼링부(50)는 메모리에 저장되는 버퍼링 모듈(제4 모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 버퍼로서 동작할 수 있다.
추적부(60)는 생성부(40)에 의해 생성된 제1 프레임의 제1 삼각 매쉬와 제2 프레임의 제2 삼각 매쉬를 비교하여 제1 삼각 매쉬에서 제2 삼각 매쉬로의 변화를 추적하는 수단이나 구성부를 포함한다. 추적부(60)는 메모리에 저장되는 추적 모듈(제5 모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 삼각 매쉬 변화 추적부로서 동작할 수 있다.
판단부(70)는 추적부(60)에 의해 추적된 삼각 매쉬의 변화에 기초하여 사용자 인터페이스 제어를 위한 제어 이벤트 발생 여부를 판단하는 수단이나 구성부를 포함한다. 판단부(70)는 메모리에 저장되는 판단 모듈(제6 모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 문턱치 판단부 등으로서 동작할 수 있다.
도 5에 도시하지는 않았지만, 본 실시예에 따른 사용자 인터페이스 제어 장치(100)는 분류부, 평가부 및 제공부를 더 포함할 수 있다.
분류부는 최근접 이웃 분류 기법 등을 이용하여 판단부(70)에 의해 판단된 삼각 매쉬 변화 내에서 가장 큰 변화 혹은 관심 영역에서의 변화를 분류하는 수단이나 구성부를 포함할 수 있다. 분류부는 메모리에 저장되는 분류 모듈(제7 모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 최근접 이웃 분류부로서 동작할 수 있다.
평가부는 분류부에 의해 분류된 가장 큰 삼각 매쉬 변화 혹은 관심 영역에서의 삼각 매쉬 변화에 대하여 얼굴 영역에서의 위치나 특징자 등을 토대로 미리 설정된 가중치를 결정하는 수단이나 구성부를 포함할 수 있다. 평가부는 메모리에 저장되는 평가 모듈(제8 모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 가중 결정 평가부로서 동작할 수 있다.
제공부는 판단부(70), 분류부 및 평가부 중 하나 이상에 의해 얻어지는 삼각 매쉬 변화에 따라 이에 대응하도록 미리 설정된 제어 이벤트를 발생시키는 수단이나 구성부를 포함할 수 있다. 제공부는 메모리에 저장되는 제공 모듈(제9 모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 사용자 제어 제공부로서 동작할 수 있다.
전술한 제1 내지 제9 모듈들은 메모리에 저장되는 소프트웨어 모듈들일 수 있으며, 메모리에 연결되는 프로세서에 의해 수행되어 본 실시예에 따른 사용자 인터페이스 제어 방법을 구현할 수 있다.
도 6은 도 5의 사용자 인터페이스 제어 장치의 추적부에 대한 구성도이다.
도 6을 참조하면, 본 실시예에 따른 사용자 인터페이스 제어 장치에 있어서 추적부(60)는 구분부(62), 선택부(64) 및 비교부(66)를 포함할 수 있다.
구분부(62)는 생성부 또는 삼각 매쉬 생성부에서 생성된 제1 삼각 매쉬를 포함하는 제1 프레임과 제2 삼각 매쉬를 포함하는 제2 프레임 각각에 있어서, 각 프레임의 얼굴 영역을 미리 설정된 복수의 서브영역들로 구분할 수 있다. 구분부(62)는 복수의 서브영역들에 대한 정보(제1 정보)를 출력할 수 있다. 구분부(62)는 메모리에 저장되는 구분 모듈(제1 서브모듈) 형태를 구비할 수 있으며, 프로세서에 의해 수행되어 삼각 매쉬 변화 추적부의 일부 기능부로서 동작할 수 있다.
선택부(64)는 구분부(62)에 의해 구분된 서브영역들 중 변화가 가장 큰 관심서브영역을 선택할 수 있다. 선택부(64)는 선택된 관심서브영역에 대한 정보를 출력할 수 있다. 선택부(64)는 메모리에 저장되는 선택 모듈(제2 서브모듈)일 수 있으며, 프로세서에 의해 수행되어 삼각 매쉬 변화 추적부의 일부 기능부로서 동작할 수 있다.
비교부(66)는 선택부(64)에서 선택된 관심서브영역에서 제1 프레임과 제2 프레임 간의 삼각 매쉬들을 비교하여 삼각 매쉬의 변화를 추적한다. 비교부(66)는 삼각 매쉬의 변화 형태, 분포, 볼륨(변화량, 크기, 세기 등) 또는 이들의 조합에 대한 정보를 출력할 수 있다. 비교부(66)는 메모리에 저장되는 비교 모듈(제3 서브모듈)일 수 있으며, 프로세서에 의해 수행되어 삼각 매쉬 변화 추적부의 일부 기능부로서 동작할 수 있다.
전술한 구분부(62), 선택부(64) 및 비교부(66)는 추적부(60)에 대응하는 모듈의 서브모듈 형태로 메모리에 저장되고 프로세서에 의해 수행되어 삼각 매쉬 변화 추적부로서 동작할 수 있다.
전술한 실시예에 의하면, 입력되는 얼굴 영상의 서브-영역 내에서 복수의 특징점을 추출하고, 특징점을 연결하는 삼각 매쉬의 변화량을 추적하여 미리 설정된 삼각 매쉬 모델에 따른 제어 이벤트를 발생할 수 있다. 이것은 행위 인식 대상이 사용자의 손 동작이나 몸짓이 아닌 얼굴 표정과 이에 대한 추적을 통해 사용자의 의도 혹은 명령을 인식하고, 그에 따라 제어 이벤트, 제어 명령, 혹은 제어 신호를 출력하여 제어 타겟(모바일 단말, 노트북 컴퓨터, 액츄에어터 장착 장치 등)을 제어할 수 있는 효과가 있다. 또한, 이것은 사용자의 자유도를 매우 높일 수 있고, 아울러 신체적 약자에 대한 활용도를 크게 향상시킬 수 있는 장점이 있다.
한편, 본 실시예에 있어서, 사용자 인터페이스 제어 장치의 구성요소들은 사용자의 모바일 단말이나 컴퓨터 장치에 탑재되는 기능 블록 또는 모듈일 수 있으나, 이에 한정되지 않는다. 전술한 구성요소들은 이들이 수행하는 일련의 기능을 구현하기 위한 소프트웨어 형태로 컴퓨터 판독 가능 매체(기록매체)에 저장되거나 혹은 캐리어 형태로 원격지에 전송되어 다양한 컴퓨터 장치에서 동작하도록 구현될 수 있다. 여기서 컴퓨터 판독 가능 매체는 네트워크를 통해 연결되는 복수의 컴퓨터 장치나 클라우드 시스템에 배치될 수 있고, 복수의 컴퓨터 장치나 클라우드 시스템 중 적어도 하나 이상은 메모리 시스템에 본 실시예의 사용자 인터페이스 제어 방법을 수행하기 위한 프로그램이나 소스 코드 등을 저장할 수 있다.
즉, 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하는 형태로 구현될 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것을 포함할 수 있다.
또한, 컴퓨터 판독 가능 매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 하드웨어 장치는 본 실시예의 사용자 인터페이스 제어 방법을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (20)

  1. 입력되는 제1 프레임과 상기 제1 프레임 다음에 입력되는 제2 프레임 각각에서 얼굴 영역을 검출하는 단계;
    상기 얼굴 영역에서 특징점들을 추출하는 단계;
    상기 특징점들을 토대로 삼각 매쉬를 생성하는 단계;
    상기 제1 프레임과 상기 제2 프레임을 비교하여 상기 삼각 매쉬의 변화를 추적하는 단계;
    상기 삼각 매쉬의 변화가 문턱치 이상인지를 판단하는 단계; 및
    상기 문턱치 이상의 삼각 매쉬의 변화에 대응하는 얼굴 모션에 따라 제어 이벤트를 발생시키는 단계를 포함하는, 사용자 인터페이스 제어 방법.
  2. 청구항 1에 있어서,
    상기 삼각 매쉬를 생성하는 단계는,
    상기 특징점들 중 하나를 주축으로 설정하고, 상기 주축을 기준으로 상기 얼굴 영역을 복수 개로 분할하고 각 분할된 영역에 대하여 2차원 딜로니 삼각화(delaunay triangulation)를 이용하여 상기 삼각 매쉬를 생성하는, 사용자 인터페이스 제어 방법.
  3. 청구항 1에 있어서,
    상기 삼각 매쉬를 생성하는 단계는,
    상기 특징점들을 삼각형들로 연결하여 평면 또는 공간을 분할할 때 상기 삼각형들의 내각이 최소값이 되도록 하는 들로네 삼각분할(Delaunay triangulation)을 이용하는, 사용자 인터페이스 제어 방법.
  4. 청구항 3에 있어서,
    상기 삼각 매쉬를 생성하는 단계는,
    상기 특징점들이 서로 도달 가능하면서 전체 거리의 합이 최소가 되도록 연결한 트리 구조에 따라 생성되는, 사용자 인터페이스 제어 방법.
  5. 청구항 1에 있어서,
    상기 삼각 매쉬의 변화를 추적하는 단계 이전에,
    상기 삼각 매쉬를 포함하는 상기 제1 프레임을 버퍼링하는 단계를 더 포함하는, 사용자 인터페이스 제어 방법.
  6. 청구항 1에 있어서,
    상기 제1 프레임과 상기 제2 프레임은 영상 처리 장치의 서로 다른 프로세스에서 처리되는, 사용자 인터페이스 제어 방법.
  7. 청구항 1에 있어서,
    상기 삼각 매쉬의 변화를 추적하는 단계는,
    상기 얼굴 영역을 미리 설정된 복수의 서브영역들로 구분하고, 상기 서브영역들 중 변화가 가장 큰 관심서브영역을 선택하고, 상기 관심서브영역에서의 삼각 매쉬의 변화를 비교하는, 사용자 인터페이스 제어 방법.
  8. 청구항 7에 있어서,
    상기 관심서브영역은 눈썹, 눈, 눈동자, 입, 입술, 뺨, 턱선, 얼굴 방향 또는 이들의 조합을 포함하는, 사용자 인터페이스 제어 방법.
  9. 청구항 1에 있어서,
    상기 삼각 매쉬의 변화가 문턱치 이상인지를 판단하는 단계는,
    상기 삼각 매쉬의 변화를 훈련 데이터와 비교하는, 사용자 인터페이스 제어 방법.
  10. 청구항 9에 있어서,
    상기 훈련 데이터는 상기 제어 이벤트에 따른 신호를 수신하는 제어 대상 장치 혹은 상호 동작 장치의 저장부에 저장되거나 상기 제어 대상 장치 혹은 상호 동작 장치와 네트워크를 통해 연결되는 서버 장치 혹은 클라우드 서버에 저장되는, 사용자 인터페이스 제어 방법.
  11. 청구항 10에 있어서,
    상기 제어 대상 장치 혹은 상호 동작 장치는 모바일 단말을 포함하고, 상기 제1 프레임 및 상기 제2 프레임은 상기 모바일 단말의 카메라 모듈로부터 획득되는, 사용자 인터페이스 제어 방법.
  12. 입력되는 제1 프레임과 상기 제1 프레임 다음에 입력되는 제2 프레임 각각에서 얼굴 영역을 검출하는 검출부;
    상기 얼굴 영역에서 특징점들을 추출하는 추출부;
    상기 특징점들을 토대로 삼각 매쉬를 생성하는 생성부;
    상기 제1 프레임과 상기 제2 프레임을 비교하여 상기 삼각 매쉬의 변화를 추적하는 추적부;
    상기 삼각 매쉬의 변화가 문턱치 이상인지를 판단하는 판단부; 및
    상기 문턱치 이상의 삼각 매쉬의 변화에 대응하는 얼굴 모션에 따라 제어 이벤트를 발생시키는 유저 컨트롤 제공부를 포함하는, 사용자 인터페이스 제어 장치.
  13. 청구항 12에 있어서,
    상기 생성부는,
    상기 특징점들 중 하나를 주축으로 설정하고, 상기 주축을 기준으로 상기 얼굴 영역을 복수 개로 분할하고 각 분할된 영역에 대하여 2차원 딜로니 삼각화(delaunay triangulation)를 이용하여 상기 삼각 매쉬를 생성하거나,
    상기 특징점들을 삼각형들로 연결하여 평면 또는 공간을 분할할 때 상기 삼각형들의 내각이 최소값이 되도록 하는 들로네 삼각분할(Delaunay triangulation)을 이용하거나,
    상기 특징점들이 서로 도달 가능하면서 전체 거리의 합이 최소가 되도록 연결한 트리 구조에 따라 상기 삼각 매쉬를 생성하는, 사용자 인터페이스 제어 장치.
  14. 청구항 12에 있어서,
    상기 삼각 매쉬를 포함하는 상기 제1 프레임을 버퍼링하며, 상기 생성부와 상기 추적부 사이에 배치되는 버퍼링부를 더 포함하는, 사용자 인터페이스 제어 장치.
  15. 청구항 12에 있어서,
    상기 제1 프레임을 처리하는 제1 프로세스 및 상기 제2 프레임을 처리하는 제2 프로세스를 독립적으로 수행하도록 지원하는 병렬처리부를 더 포함하는, 사용자 인터페이스 제어 장치.
  16. 청구항 12에 있어서,
    상기 추적부는,
    상기 얼굴 영역을 미리 설정된 복수의 서브영역들로 구분하는 구분부;
    상기 서브영역들 중 변화가 가장 큰 관심서브영역을 선택하는 선택부; 및
    상기 관심서브영역에서의 상기 삼각 매쉬의 변화를 추적하는 비교부를 포함하는, 사용자 인터페이스 제어 장치.
  17. 청구항 16에 있어서,
    상기 관심서브영역은 눈썹, 눈, 눈동자, 입, 입술, 턱선, 얼굴 방향 또는 이들의 조합을 포함하는, 사용자 인터페이스 제어 장치.
  18. 청구항 12에 있어서,
    상기 판단부는, 상기 삼각 매쉬의 변화를 기 저장된 훈련 데이터와 비교하는, 사용자 인터페이스 제어 장치.
  19. 청구항 12에 있어서,
    상기 판단부 및 상기 유저 컨트롤 제공부 사이에 최근접 이웃 분류부를 더 포함하며, 여기서 상기 최근접 이웃 분류부는 훈련 데이터를 토대로 상기 삼각 매쉬 변화가 가장 큰 상기 얼굴 영역의 서브영역이나 특징자를 검출하는, 사용자 인터페이스 제어 장치.
  20. 청구항 19에 있어서,
    상기 최근접 이웃 분류부 및 상기 유저 컨트롤 제공부 사이에 가중 결정 평가부를 더 포함하며, 여기서 상기 가중 결정 평가부는 상기 특징자 또는 상기 서브영역의 종류나 위치에 따라 가중치를 부여하는, 사용자 인터페이스 제어 장치.
KR1020150174033A 2015-12-08 2015-12-08 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템 KR101909326B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150174033A KR101909326B1 (ko) 2015-12-08 2015-12-08 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150174033A KR101909326B1 (ko) 2015-12-08 2015-12-08 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20170067398A KR20170067398A (ko) 2017-06-16
KR101909326B1 true KR101909326B1 (ko) 2018-12-19

Family

ID=59278396

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150174033A KR101909326B1 (ko) 2015-12-08 2015-12-08 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101909326B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108269333A (zh) * 2018-01-08 2018-07-10 平安科技(深圳)有限公司 人脸识别方法、应用服务器及计算机可读存储介质
KR102126652B1 (ko) * 2018-01-29 2020-06-25 박길주 해킹 방지를 위한 이미지 인증 시스템 및 그 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015007952A (ja) 2013-06-24 2015-01-15 由田新技股▲ふん▼有限公司 顔の動きを検知して信号を生成する装置、方法及びコンピュータ可読記憶媒体

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015007952A (ja) 2013-06-24 2015-01-15 由田新技股▲ふん▼有限公司 顔の動きを検知して信号を生成する装置、方法及びコンピュータ可読記憶媒体

Also Published As

Publication number Publication date
KR20170067398A (ko) 2017-06-16

Similar Documents

Publication Publication Date Title
US10198823B1 (en) Segmentation of object image data from background image data
US10394318B2 (en) Scene analysis for improved eye tracking
KR102364993B1 (ko) 제스처 인식 방법, 장치 및 디바이스
US10891473B2 (en) Method and device for use in hand gesture recognition
US9480417B2 (en) Posture estimation device, posture estimation system, and posture estimation method
US20130342636A1 (en) Image-Based Real-Time Gesture Recognition
KR101612605B1 (ko) 얼굴 특징점 추출 방법 및 이를 수행하는 장치
US9213897B2 (en) Image processing device and method
KR20170056860A (ko) 이미지 생성 방법 및 장치
JP6221505B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
KR20220007882A (ko) 단안 스틸 카메라 비디오에서의 레이어드 모션 표현 및 추출
KR20140019950A (ko) 단말기의 모노 카메라에 입력된 손가락 영상을 이용한 3차원 좌표 생성 방법 및 모노 카메라에 입력된 손가락 영상을 이용하여 3차원 좌표를 생성하는 이동 단말기
JP2016099643A (ja) 画像処理装置、画像処理方法および画像処理プログラム
KR101909326B1 (ko) 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템
JP2017033556A (ja) 画像処理方法及び電子機器
Tarrataca et al. The current feasibility of gesture recognition for a smartphone using J2ME
US9761009B2 (en) Motion tracking device control systems and methods
CN112183155B (zh) 动作姿态库建立、动作姿态生成、识别方法及装置
CN112541418A (zh) 用于图像处理的方法、装置、设备、介质和程序产品
US11847823B2 (en) Object and keypoint detection system with low spatial jitter, low latency and low power usage
KR20160107587A (ko) 스테레오 이미지를 이용한 동작인식 장치 및 방법
KR101491413B1 (ko) 단말기의 모노 카메라에 입력된 손가락 영상을 이용한 3차원 좌표 생성 방법 및 모노 카메라에 입력된 손가락 영상을 이용하여 3차원 좌표를 생성하는 이동 단말기
CN112711324B (zh) 基于tof相机的手势交互方法及其系统
Thakur Robust hand gesture recognition for human machine interaction system
KR101396098B1 (ko) 단말기의 모노 카메라에 입력된 손가락 영상을 이용한 3차원 좌표 생성 방법 및 모노 카메라에 입력된 손가락 영상을 이용하여 3차원 좌표를 생성하는 이동 단말기

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant