KR101815995B1 - 표정 제어점을 이용한 아바타 제어 장치 및 방법 - Google Patents
표정 제어점을 이용한 아바타 제어 장치 및 방법 Download PDFInfo
- Publication number
- KR101815995B1 KR101815995B1 KR1020170014058A KR20170014058A KR101815995B1 KR 101815995 B1 KR101815995 B1 KR 101815995B1 KR 1020170014058 A KR1020170014058 A KR 1020170014058A KR 20170014058 A KR20170014058 A KR 20170014058A KR 101815995 B1 KR101815995 B1 KR 101815995B1
- Authority
- KR
- South Korea
- Prior art keywords
- facial expression
- point position
- feature point
- user
- face
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G06K9/00221—
-
- G06K9/00302—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0012—Biomedical image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/174—Facial expression recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Radiology & Medical Imaging (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
표정 제어점을 이용한 아바타 제어 장치 및 방법이 개시된다. 아바타 제어 장치는 사용자의 얼굴 표정에서 특징점 위치와 머리 움직임을 추적하고, 특징점 위치에 머리 움직임을 제거한 후, 표정 제어점을 생성하여 사용자의 얼굴 표정을 아바타의 얼굴에 반영할 수 있다.
Description
본 발명의 일실시예들은 아바타 제어 장치 및 방법에 관한 것으로, 보다 구체적으로는 사용자의 얼굴 표정으로부터 표정 제어점을 생성하고, 표정 제어점을 이용하여 아바타를 제어하는 장치 및 방법에 관한 것이다.
최근 가상 세계를 이용한 서비스가 널리 사용되면서, 가상 세계에서 아바타를 제어하는 것이 중요해졌다. 이를 위해, 아바타에 대응하는 사용자의 얼굴 표정을 아바타에 반영함으로써 아바타를 보다 사실적으로 표현하는 기술이 나타났다.
사람의 얼굴 표정은 매우 섬세하기 때문에 아주 작은 움직임을 아바타에 반영하지 못하면, 아바타는 부자연스러운 표정을 나타낸다. 따라서, 사용자의 얼굴 표정의 변화를 보다 정확하게 추적하여 보다 자연스럽게 아바타를 제어할 수 있는 기술이 요구되고 있다.
본 발명의 일실시예에 따른 장치는 사용자의 얼굴 표정 영상으로부터 얼굴 표정의 특징점 위치 및 머리 움직임을 추적하는 표정 추적부; 상기 추적한 특징점 위치에서 머리 움직임을 제거하여 상기 얼굴 표정의 특징점 위치를 재설정하는 특징점 위치 재설정부; 및 상기 재설정된 특징점 위치에 기초한 표정 파라미터를 이용하여 표정 제어점을 생성하는 제어점 생성부를 포함할 수 있다.
본 발명의 일실시예에 따른 장치는 상기 표정 제어점을 이용하여 아바타의 표정을 제어하는 표정 제어부를 더 포함할 수 있다.
본 발명의 일실시예에 따른 방법은 사용자의 얼굴 표정 영상으로부터 얼굴 표정의 특징점 위치 및 머리 움직임을 추적하는 단계; 상기 추적한 특징점 위치에서 머리 움직임을 제거하여 상기 얼굴 표정의 특징점 위치를 재설정하는 단계; 및 상기 재설정된 특징점 위치에 기초한 표정 파라미터를 이용하여 표정 제어점을 생성하는 단계를 포함할 수 있다.
본 발명의 일실시예에 따른 방법은 상기 표정 제어점을 이용하여 아바타의 표정을 제어하는 단계를 더 포함할 수 있다.
본 발명의 일실시예에 따르면, 마커를 이용하지 않고 사용자의 얼굴에 대한 표정 변화를 감지할 수 있는 특징점 위치를 추적함으로써, 한 대의 카메라로 사실적인 아바타 표정 제어가 가능하다.
본 발명의 일실시예에 따르면, 사용자의 얼굴 표정으로부터 추적한 특징점 위치에 머리 움직임을 제거함으로써 얼굴 표정에 강인한 결과를 도출할 수 있다.
본 발명의 일실시예에 따르면, 마커를 통해 수집한 모션 캡쳐 데이터를 사용자의 얼굴 표정으로부터 추출한 특징점 위치에 따라 조정하여 표정 파라미터를 도출한 후 표정 제어점을 생성함으로써 보다 자연스러운 아바타 표정을 재현할 수 있다.
도 1은 본 발명의 일실시예에 따른 아바타를 제어하는 장치의 세부 구성을 도시한 블록 다이어그램이다.
도 2는 본 발명의 일실시예에 따른 도 1의 표정 추적부의 동작을 도시한 도면이다.
도 3은 본 발명의 일실시예에 따른 도 1의 특징점 위치 재설정부의 동작을 도시한 도면이다.
도 4는 본 발명의 일실시예에 따라 특징점 위치를 재설정하는 일례를 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 도 1의 제어점 생성부의 동작을 도시한 도면이다.
도 6은 본 발명의 일실시예에 따라 제어점을 생성하기 위한 모션 캡쳐 데이터를 도시한 도면이다.
도 7은 본 발명의 일실시예에 따른 도 1의 표정 제어부의 동작을 도시한 도면이다.
도 8은 본 발명의 일실시예에 따라 아바타를 제어하는 일례를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 도 1의 표정 추적부의 동작을 도시한 도면이다.
도 3은 본 발명의 일실시예에 따른 도 1의 특징점 위치 재설정부의 동작을 도시한 도면이다.
도 4는 본 발명의 일실시예에 따라 특징점 위치를 재설정하는 일례를 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 도 1의 제어점 생성부의 동작을 도시한 도면이다.
도 6은 본 발명의 일실시예에 따라 제어점을 생성하기 위한 모션 캡쳐 데이터를 도시한 도면이다.
도 7은 본 발명의 일실시예에 따른 도 1의 표정 제어부의 동작을 도시한 도면이다.
도 8은 본 발명의 일실시예에 따라 아바타를 제어하는 일례를 도시한 도면이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 아바타를 제어하는 장치의 세부 구성을 도시한 블록 다이어그램이다.
도 1을 참고하면, 아바타를 제어하는 장치(101)는 표정 추적부(102), 특징점 위치 재설정부(103), 제어점 생성부(104) 및 표정 제어부(105)를 포함할 수 있다.
표정 추적부(102)는 사용자의 얼굴 표정 영상으로부터 얼굴 표정의 특징점 위치 및 머리 움직임을 추적할 수 있다. 그리고, 표정 추적부(102)는 사용자의 눈동자 움직임도 추적할 수 있다. 일례로, 사용자의 얼굴 표정 영상은 1대의 카메라를 통해 수집될 수 있다. 카메라를 통해 수집된 사용자의 얼굴 표정 영상은 사용자의 얼굴 표정의 변화가 반영된 영상일 수 있다.
표정 추적부(102)에 대해서는 도 2에서 구체적으로 설명하기로 한다.
특징점 위치 재설정부(103)는 추적한 특징점 위치에서 머리 움직임을 제거하여 얼굴 표정의 특징점 위치를 재설정할 수 있다. 구체적으로, 표정 추적부(102)가 추적한 특징점 위치는 머리 움직임이 반영된 결과이다. 특징점 위치 재설정부(103)는 특징점 위치에서 머리 움직임을 제거하여 사용자가 정면을 바라보고 있을 때의 특징점 위치로 재설정할 수 있다.
특징점 위치 재설정부(103)에 대해서는 도 3 및 도 4에서 구체적으로 설명하기로 한다.
제어점 생성부(104)는 재설정된 특징점 위치에 기초한 표정 파라미터를 이용하여 표정 제어점을 생성할 수 있다. 이 때, 재설정된 특징점 위치는 표정 추적부(102)가 추적한 특징점 위치에서 머리 움직임이 제거된 결과이다. 일례로, 제어점 생성부(104)는 마커에 기초한 모션 캡쳐 데이터로부터 생성된 표정 파라미터를 이용하여 표정 제어점을 생성할 수 있다. 제어점 생성부(104)에 대해서는 도 5 및 도 6에서 구체적으로 설명하기로 한다.
표정 제어부(105)는 생성된 표정 제어점을 이용하여 아바타의 표정을 제어할 수 있다. 즉, 표정 제어부(105)는 사용자의 얼굴 표정 변화를 아바타의 표정에 반영할 수 있다. 구체적으로, 표정 제어부(105)는 표정 제어점을 이용하여 아바타의 눈동자 움직임, 머리 움직임, 표정을 제어할 수 있다. 표정 제어부(105)에 대해서는 도 7 및 도 8에서 구체적으로 설명하기로 한다.
도 2는 본 발명의 일실시예에 따른 도 1의 표정 추적부의 동작을 도시한 도면이다.
표정 추적부(102)는 사용자의 얼굴 표정 영상으로부터 특징점을 추출할 수 있다(S201). 일례로, 표정 추적부(102)는 얼굴 모양을 학습하여 얼굴 표정의 특징점 위치를 추출할 수 있다. 특징점은 얼굴 및 얼굴 표정을 감지할 수 있도록 학습 또는 시맨틱(Semantic)하게 정의된 얼굴의 특정 부분을 의미한다. 구체적으로, 표정 추적부(102)는 Active Appearance Model 기법 등을 이용하여 얼굴 패턴을 학습하여 얼굴 표정 영상으로부터 특징점 위치를 자동으로 추출할 수 있다.
그리고, 표정 추적부(102)는 추출된 특징점 위치를 이용하여 머리 회전각에 기초한 머리 움직임을 추정할 수 있다(S202). 이 때, 머리 움직임은 전역 움직임(global movement)으로 표현될 수 있다.
일례로, 표정 추적부(102)는 특징점 위치를 이용하여 얼굴의 좌측 면적과 우측 면적을 구할 수 있다. 이 때, 표정 추적부(102)는 얼굴 미간의 중간에 위치한 특징점 위치, 얼굴의 윤곽을 나타내는 특징점 위치, 코 끝에 대응하는 특징점 위치, 입술 주위에 위치한 특징점 위치와 같은 대표 특징점 위치를 이용하여 얼굴의 좌측 면적과 우측 면적을 구할 수 있다. 구체적으로, 표정 추적부(102)는 대표 특정점 위치를 기초로 삼각형을 만들고, 삼각형 면적의 합을 계산하여 얼굴의 좌측 면적과 우측 면적을 구할 수 있다.
그런 다음, 표정 추적부(102)는 얼굴의 좌측 면적과 우측 면적의 비율로부터 얼굴의 포즈인 머리 회전각을 추정할 수 있다. 사용자의 머리가 오른쪽으로 회전하면 머리 회전각은 양의 값을 가지고, 사용자의 머리가 왼쪽으로 회전하면 머리 회전각은 음의 값을 가진다고 가정한다. 이 때, 사용자의 머리가 오른쪽으로 회전한 경우, 머리 회전각의 범위를 0°≤θ≤45°로 가정한다. 이 때, 얼굴의 좌측 면적(LHP)은 하기 수학식 1로 표현되고, 얼굴의 우측 면적(RHP)은 하기 수학식 2로 표현될 수 있다.
여기서, θ는 머리 회전각을 의미한다. 그리고, w1은 얼굴의 좌측 폭, w2은 얼굴의 우측 폭, h1은 얼굴의 볼에 대응하는 길이, h2은 얼굴의 턱에 대응하는 길이를 의미한다. 또한, r은 머리의 중심으로부터 머리의 외각선까지의 거리를 의미한다.
그러면, 얼굴의 좌측 면적과 우측 면적의 비율은 하기 수학식 3에 따라 결정되고, 머리 회전각은 하기 수학식 4에 따라 추정될 수 있다.
반대로, 사용자의 머리가 왼쪽으로 회전한 경우, 머리 회전각의 범위를 -45°≤θ≤0로 가정한다. 이 때, 얼굴의 좌측 면적(LHP)은 하기 수학식 5로 표현되고, 얼굴의 우측 면적(RHP)은 하기 수학식 6으로 표현될 수 있다.
여기서, θ는 머리 회전각을 의미한다. 그리고, w1은 얼굴의 좌측 폭, w2은 얼굴의 우측 폭, h1은 얼굴의 볼에 대응하는 길이, h2은 얼굴의 턱에 대응하는 길이를 의미한다. 또한, r은 머리의 중심으로부터 머리의 외각선까지의 거리를 의미한다.
그러면, 얼굴의 좌측 면적과 우측 면적의 비율은 하기 수학식 7에 따라 결정되고, 머리 회전각은 하기 수학식 8에 따라 추정될 수 있다.
이와 같은 방법을 통해 표정 추적부(102)는 머리 움직임에 따른 roll, pitch, yaw 방향의 머리 회전각을 추정할 수 있다.
도 3은 본 발명의 일실시예에 따른 도 1의 특징점 위치 재설정부의 동작을 도시한 도면이다.
특징점 위치 재설정부(103)는 머리 움직임에 기초한 역이동(inverse translation), 역회전(inverse rotation) 또는 역스케일(inverse scale)을 계산할 수 있다(S301). 머리 움직임이 존재하는 경우, 사용자가 정면을 볼 때와 비교했을 때 X, Y, Z축 회전이 존재하고, X, Y 축의 위치 변화 및 스케일 변화가 존재한다.
만약, 표정 추적부(102)를 통해 머리 움직임이 roll, pitch, yaw 방향으로 각각 -α, -β, -γ 만큼 회전한 것으로 추정된 경우, 특징점 위치 재설정부(103)는 수학식 9에 따라 머리 움직임을 α, β, γ 만큼 역회전시키는 행렬을 계산할 수 있다.
그리고, 특징점 위치 재설정부(103)는 얼굴 표정 변화에도 움직이지 않는 특징점 위치를 기준으로 X, Y축의 원점을 해당 특징점 위치로 이동시키는 역이동을 계산할 수 있다. 또는, 특징점 위치 재설정부(103)는 기준 표정 또는 처음 프레임에서 모든 특징점 위치의 자취(centroid)를 구하여 X, Y축의 원점을 이동시키는 역이동을 계산할 수 있다.
또한, 특징점 위치 재설정부(103)는 기준 표정 또는 처음 프레임에서 모든 특징점 위치의 자취를 구하고, 자취로부터 각 특징점 위치의 평균 거리(S0)를 계산할 수 있다. 특징점 위치 재설정부(103)는 다음 프레임에서 모든 특징점 위치의 자취를 구하고, 자취로부터 각 특징점 위치의 평균 거리(S')를 계산할 수 있다. 그런 다음, 특징점 위치 재설정부(103)는 평균 거리(S0)와 평균 거리(S')의 비율인 역스케일을 계산할 수 있다.
특징점 위치 재설정부(103)는 계산된 역이동(inverse translation), 역회전(inverse rotation) 또는 역스케일(inverse scale)을 이용하여 사용자가 정면을 볼 때의 기준 표정으로 특징점 위치를 재설정할 수 있다(S302).
일례로, 특징점 위치 재설정부(103)는 표정 추적부(102)가 추적한 특징점 위치에서 머리 움직임을 제거하여 특징점 위치를 재설정할 수 있다. 이 때, 수학식 10은 표정 추적부(102)가 추적한 특징점 위치와 재설정된 특징점 위치의 관계를 나타낸다.
F'는 표정 추적부(102)가 추적한 특징점 위치, F는 재설정된 특징점 위치를 나타낸다. 그리고, s는 스케일, R은 회전, t는 이동을 나타낸다. 따라서, 특징점 위치 재설정부(103)는 수학식 10에서 역스케일인 -S, 역회전인 R-1, 역이동인 -t를 적용하여 재설정된 특징점 위치를 결정할 수 있다.
도 4는 본 발명의 일실시예에 따라 특징점 위치를 재설정하는 일례를 도시한 도면이다.
도 4를 참고하면, 영상(401)은 사용자의 얼굴 표정 영상으로, 얼굴 표정의 특징점 위치가 표시되어 있다. 영상(401)에서 사용자의 머리는 중심으로부터 왼쪽으로 회전된 것을 알 수 있다.
특징점 위치 재설정부(103)는 영상(401)에 표시된 특징점 위치를 사용자가 정면으로 바라보았을 때의 기준 표정으로 재설정할 수 있다. 재설정된 특징점 위치는 영상(402)에 표시되어 있다. 본 발명의 일실시예에 따르면, 특징점 위치를 기준 표정에 대응하여 재설정함으로써 사용자의 머리 움직임에도 안정적으로 얼굴 표정 분석을 수행할 수 있다.
도 5는 본 발명의 일실시예에 따른 도 1의 제어점 생성부의 동작을 도시한 도면이다.
제어점 생성부(104)는 재설정된 특징점 위치에 기초한 표정 파라미터를 이용하여 표정 제어점을 생성할 수 있다. 일례로, 제어점 생성부(104)는 마커에 기초한 모션 캡쳐 데이터로부터 생성된 표정 파라미터를 이용하여 표정 제어점을 생성할 수 있다. 이 때, 제어점 생성부(104)는 재설정된 특징점 위치에 기초한 표정 컴포넌트의 변화와 표정 파라미터로부터 생성된 제어점 위치에 기초한 표정 컴포넌트의 변화에 기초하여 표정 파라미터를 업데이트할 수 있다. 이하에서는, 제어점 생성부(104)의 동작을 보다 구체적으로 설명하기로 한다.
제어점 생성부(104)는 DB(106)에 저장된 모션 캡쳐 데이터로부터 생성된 표정 파라미터를 사용자의 얼굴에 기초하여 조정(calibration)하고, 초기 표정 파라미터를 설정할 수 있다(S501). 이 때, 모션 캡쳐 데이터는 기준 표정을 나타내는 배우의 얼굴에 부착한 마커의 위치 정보를 의미하며, 사용자의 특징점 위치와는 다르다. 그리고, 표정 파라미터는 표정 제어점을 생성하기 위한 변수로써, 하기 수학식 11의 λ를 나타낸다. 표정 제어점은 구성요소 분석(Principal Component analysis)을 통해 생성된다.
여기서, Fc는 표정 제어점이고, M은 모션 캡쳐 데이터로부터 추출한 고유 벡터(eigen vector)를 의미한다. 이 때, Cm은 하기 수학식 12에 따라 결정된다.
Cf는 f번째 프레임에서의 표정 제어점을 나타내고, Cm은 각각의 프레임에서 표정 제어점을 평균한 값을 나타낸다.
수학식 11에서 λ는 모션 캡쳐 데이터에서부터 생성된 표정 파라미터이다. 그러나, 모션 캡쳐 데이터는 사용자의 재설정된 특징점과는 다르기 때문에 DB(106)에 저장된 표정 파라미터를 그대로 이용하면 아바타의 표정은 사용자의 얼굴 표정과 전혀 다르게 나타난다. 그래서, 제어점 생성부(106)는 모션 캡쳐 데이터로부터 생성된 표정 파라미터를 사용자의 얼굴 표정에 가깝도록 조정할 필요가 있다.
구체적으로, 제어점 생성부(104)는 DB(106)에 저장된 모션 캡쳐 데이터와 사용자의 재설정된 특징점 위치를 비교한다. 이 후, 제어점 생성부(104)는 재설정된 특징점 위치에 따라 모션 캡쳐 데이터의 입, 눈, 코, 눈썹 등의 크기와 위치의 차이를 보상할 수 있다. 이러한 과정은 사용자가 변경될 때마다 한 번씩 수행할 수 있다.
이후, 제어점 생성부(104)는 단계(S501)에서 조정된 모션 캡쳐 데이터를 이용하여 얼굴 표정 분석을 수행할 수 있다(S502). 구체적으로, 제어점 생성부(104)는 조정된 모션 캡쳐 데이터로부터 표정 파라미터를 생성한다. 그리고, 제어점 생성부(104)는 표정 파라미터에 따라 측정한 표정 컴포넌트의 변화와 재설정된 특징점 위치에 따라 측정한 표정 컴포넌트의 변화를 비교하여 얼굴 표정 분석을 수행할 수 있다. 표정 컴포넌트는 얼굴 표정 분석을 위한 컴포넌트로, 입술의 상하 길이, 입술 끝의 길이, 입술 끝의 연결된 선분이 올라가거나 내려간 정도, 한쪽 입술 끝이 좌측 또는 우측으로 이동한 정도, 입술을 연결한 선분의 기울기, 오른쪽(또는 왼쪽) 눈썹이 올라간 정도, 좌우 눈썹 사이의 길이, 코의 좌우 끝이 올라간 정도를 포함할 수 있다.
그러면, 제어점 생성부(104)는 표정 파라미터에 따라 측정한 표정 컴포넌트의 변화와 재설정된 특징점 위치에 따라 측정한 표정 컴포넌트의 변화를 각각 벡터로 표현하여, 그 차이를 계산할 수 있다. 구체적으로, 제어점 생성부(104)는 하기 수학식 13에 따라 벡터의 차이를 계산할 수 있다.
여기서, D는 벡터의 차이로 표정 파라미터에 따라 측정한 표정 컴포넌트의 변화를 나타내는 벡터(f(V))와 재설정된 특징점 위치에 따라 측정한 표정 컴포넌트의 변화를 나타내는 벡터(f(C)) 간의 유클리디안 거리(Euclidean Distance)를 의미한다. 그리고, C는 표정 제어점 set를 의미하고, V는 특징점 위치 set를 나타낸다. f는 얼굴 표정 분석을 수행하는 함수를 나타낸다.
이 때, D가 미리 설정된 임계치보다 큰 경우, 제어점 생성부(104)는 표정 파라미터를 업데이트할 수 있다(S503). 구체적으로, 제어점 생성부(104)는 하기 수학식 14에 따라 반복적으로 표정 파라미터를 업데이트할 수 있다.
여기서, ε는 반복 횟수를 나타낸다. 제어점 생성부(104)는 D가 미리 설정된 임계치보다 작거나 변하지 않을 때까지 반복적으로 표정 파라미터를 업데이트할 수 있다.
만약, D가 미리 설정된 임계치보다 작거나 변하지 않는 경우, 제어점 생성부(104)는 수학식 11에 최종적인 표정 파라미터를 입력하여 표정 제어점을 생성할 수 있다(S504).
도 6은 본 발명의 일실시예에 따라 제어점을 생성하기 위한 모션 캡쳐 데이터를 도시한 도면이다.
영상(601)은 기준 표정을 나타내는 배우의 얼굴에 부착한 마커를 표시한다. 그리고, 영상(602)은 마커의 위치 정보로 모션 캡쳐 데이터를 의미한다. 본 발명의 일실시예에 따르면, 모션 캡쳐 데이터를 사용자의 기준 표정에 기초한 특징점 위치와 유사하도록 조정한 후, 조정된 모션 캡쳐 데이터로부터 표정 파라미터를 추출하여 제어점을 생성할 수 있다.
도 7은 본 발명의 일실시예에 따른 도 1의 표정 제어부의 동작을 도시한 도면이다.
표정 제어부(105)는 표정 제어점과 아바타의 페이스 메쉬에 대응하는 제어 좌표 간의 대응 관계를 설정할 수 있다(S701). 이 때, 페이스 메쉬(face mesh)는 사용자의 얼굴에 대응되는 아바타(avatar)를 제어하기 위해 구성한 메쉬이다. 표정 제어부(105)는 페이스 메쉬의 정점들 중 애니메이션을 제어하기 위해 선택된 정점들(여기서는 제어 좌표들)이 표정 제어점들과 서로 1:1 매칭이 되도록 같은 개수의 점과 형태로 모델링 한 후, 각 정점들을 라벨링(labeling)할 수 있다.
표정 제어부(105)는 표정 제어점들과 제어 좌표들 중 미간과 코에 지정된 세 개의 정점을 이용하여 표정 제어점과 제어 좌표들 간의 대응 관계를 설정하는 변환 매트릭스(Transformation Matrix)를 생성할 수 있다. 표정 제어부(105)는 변환 매트릭스를 이용하여 특징점들을 global affine transformation하여 페이스 메쉬 상의 좌표로 이동시킬 수 있다.
표정 제어부(105)는 대응 관계에 기초하여 표정 제어점들의 좌표를 페이스 메쉬 상의 제어 좌표로 변환할 수 있다(S702). 구체적으로, 표정 제어부(105)는 표정 제어점과 제어 좌표 간의 맵핑 함수(F)를 정의하고, 임의의 영상 프레임에 대한 정점의 위치를 맵핑 함수를 통해 계산함으로써 표정 제어점들의 좌표를 페이스 메쉬 상의 제어 좌표로 변환할 수 있다. 표정 제어점과 제어 좌표 간의 맵핑 함수로는 예를 들어, Radial Basis Function을 이용할 수 있다.
표정 제어부(105)는 제어 좌표를 통해 아바타의 표정을 제어할 수 있다(S703). 구체적으로, 표정 제어부(105)는 제어 좌표(Cin)를 기초로 아바타에 대한 복수의 표정 정보를 표현할 수 있는 포즈 벡터(pose vector)(Pin)를 생성할 수 있다. 포즈 벡터 (Pin)는 포즈 벡터인 Pi의 Weighted Sum(Pin = ∑ Wi*Pi)으로 표현될 수 있다. 여기서, Wi는 아바타의 미세한 표정, 주름 및 움직임을 표현하기 위하여 포즈 벡터(Pin)에 적용되는 가중치이다.
표정 제어부(105)는 아바타의 미세한 표정, 주름 및 움직임을 표현하기 위하여 포즈 벡터(Pin)에 적용되는 가중치(Wi)를 산출할 수 있다. 가중치(Wi)는 입력 포즈에 대한 포즈 공간(Pose Space)에서의 위치를 나타낸다.
표정 제어부(105)는 복수의 표정 정보로부터 계산된 사용자의 표정 변화에 대한 보정치(Di) 및 가중치(Wi)를 이용하여 아바타의 표정을 보간(interpolate)할 수 있다. 표정 제어부(105)는 가중치(Wi)를 이용하여 아바타의 포즈 공간에서의 사용자의 표정 변화에 대한 보정치(Di)를 블렌딩(Blending)하여 입력 포즈에 대한 미세한 변화를 보간할 수 있다.
또한, 표정 제어부(105)는 Smoothness 제한 기반 메쉬 최적화 알고리즘에 따라 제어 좌표의 위치를 최대한 반영하면서 메쉬를 부드럽게 변형하는 얼굴 메쉬 변형 방법에 의해 초기 변형 메쉬인 Ma(Cin)을 계산할 수 있다.
그리고, 표정 제어부(105)는 아바타의 얼굴과 결합되는 사용자의 목 부분을 표현할 수 있다. 이 때, 표정 제어부(105)는 아바타의 얼굴과 결합되는 사용자의 목 부분을 포함하는 나머지 머리 부분(Head pose)을 나타내기 위하여 목 관절(joint)의 3 Rotation 값을 이용하여 목 관절에 대한 관절체 변형(Articulated Deformation)을 수행할 수 있다. 이 때, 관절체 변형에는 얼굴 애니메이션 알고리즘이 아닌 일반적인 골격 기반 변형(Skeletal based Deformation) 알고리즘을 이용할 수 있다.
표정 제어부(105)는 아바타의 얼굴과 목 부분의 연결 지점의 좌표를 고정시킴으로써 연결 지점을 끊김 없이(seamless) 표현할 수 있다. 표정 제어부(105)는 관절체 변형과 얼굴 변형 간의 경계 부분을 자연스럽게 표현하기 위하여 아바타의 얼굴과 목 부분의 연결 지점의 정점(vertex)을 고정하고, 관절체 변형을 위한 골격 기반 변형의 가중치를 ‘1’로 정의하여 메쉬 변형을 수행한다.
도 8은 본 발명의 일실시예에 따라 아바타를 제어하는 일례를 도시한 도면이다.
도 8을 참조하면, 영상(801)과 영상(802)에 표시된 점들은 다양한 형태의 얼굴 표정들에 대한 제어 좌표 제어 좌표(Ci)를 의미한다. 제어 좌표를 통해 사용자의 얼굴 표정을 아바타의 얼굴에 반영할 수 있다. 예를 들어, 사용자가 웃거나, 울거나, 찡그리거나, 화내거나 시무룩하거나, 무표정한 얼굴 표정들을 제어 좌표를 통해 아바타의 얼굴에 반영할 수 있다.
본 발명의 실시 예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
101: 장치
102: 표정 추적부
103: 특징점 위치 재설정부
104: 제어점 생성부
105: 표정 제어부
106: DB
102: 표정 추적부
103: 특징점 위치 재설정부
104: 제어점 생성부
105: 표정 제어부
106: DB
Claims (13)
- 사용자의 얼굴 표정 영상으로부터 얼굴 표정의 특징점 위치를 추출하고, 상기 추출된 특징점 위치에 기초하여 상기 사용자의 머리 움직임을 추적하는 표정 추적부;
상기 추출한 특징점 위치에서 머리 움직임을 제거하여 상기 사용자가 정면을 바라볼 때의 기준 표정에 대응되도록 상기 얼굴 표정의 특징점 위치를 재설정하는 특징점 위치 재설정부; 및
기준 표정을 나타내는 얼굴로부터 획득되어 기 저장된 기준 특징 데이터 및 상기 재설정된 특징점 위치를 비교함으로써 상기 기준 특징 데이터로부터 생성된 표정 파라미터를 상기 재설정된 특징점 위치에 대응되도록 조정하고, 상기 조정된 표정 파라미터를 이용하여 표정 제어점을 생성하는 제어점 생성부
를 포함하고,
상기 사용자의 머리 움직임은, 상기 사용자의 머리에 대한 이동, 스케링 및 회전을 포함하는 장치. - 제1항에 있어서,
상기 표정 추적부는,
얼굴 모양을 학습하여 얼굴 표정의 특징점 위치를 추출하고, 추출된 특징점 위치를 이용하여 머리 회전각에 기초한 머리 움직임을 추정하는 것을 특징으로 하는 장치. - 제1항에 있어서,
상기 특징점 위치 재설정부는,
상기 머리 움직임에 기초한 역이동(inverse translation), 역회전(inverse rotation) 또는 역스케일(inverse scale)을 이용하여 사용자가 정면을 볼 때의 기준 표정으로 특징점 위치를 재설정하는 것을 특징으로 하는 장치. - 제1항에 있어서,
상기 제어점 생성부는,
상기 재설정된 특징점 위치에 기초한 표정 컴포넌트의 변화와 상기 표정 파라미터로부터 생성된 제어점 위치에 기초한 표정 컴포넌트의 변화에 기초하여 상기 표정 파라미터를 업데이트하는 것을 특징으로 하는 장치. - 제1항에 있어서,
상기 장치는,
상기 표정 제어점을 이용하여 아바타의 표정을 제어하는 표정 제어부
를 더 포함하는 장치. - 제5항에 있어서,
상기 표정 제어부는,
상기 표정 제어점을 상기 사용자의 얼굴에 대응하는 아바타를 제어하기 위한 페이스 메쉬(face mesh) 상의 제어 좌표로 전환하여 아바타의 표정을 제어하는 것을 특징으로 하는 장치. - 사용자의 얼굴 표정 영상으로부터 얼굴 표정의 특징점 위치를 추출하고, 상기 추출된 특징점 위치에 기초하여 상기 사용자의 머리 움직임을 추적하는 단계;
상기 추출한 특징점 위치에서 머리 움직임을 제거하여 상기 사용자가 정면을 바라볼 때의 기준 표정에 대응되도록 상기 얼굴 표정의 특징점 위치를 재설정하는 단계; 및
기준 표정을 나타내는 얼굴로부터 획득되어 기 저장된 기준 특징 데이터 및 상기 재설정된 특징점 위치를 비교함으로써 상기 기준 특징 데이터로부터 생성된 표정 파라미터를 상기 재설정된 특징점 위치에 대응되도록 조정하고, 상기 조정된 표정 파라미터를 이용하여 표정 제어점을 생성하는 단계
를 포함하고,
상기 사용자의 머리 움직임은, 상기 사용자의 머리에 대한 이동, 스케링 및 회전을 포함하는 방법. - 제7항에 있어서,
상기 추적하는 단계는,
얼굴 모양을 학습하여 얼굴 표정의 특징점 위치를 추출하고, 추출된 특징점 위치를 이용하여 머리 회전각에 기초한 머리 움직임을 추정하는 것을 특징으로 하는 방법. - 제7항에 있어서,
상기 재설정하는 단계는,
상기 머리 움직임에 기초한 역이동(inverse translation), 역회전(inverse rotation) 또는 역스케일(inverse scale)을 이용하여 사용자가 정면을 볼 때의 기준 표정으로 특징점 위치를 재설정하는 것을 특징으로 하는 방법. - 제7항에 있어서,
상기 표정 제어점을 생성하는 단계는,
상기 재설정된 특징점 위치에 기초한 표정 컴포넌트의 변화와 상기 표정 파라미터로부터 생성된 제어점 위치에 기초한 표정 컴포넌트의 변화에 기초하여 상기 표정 파라미터를 업데이트하는 것을 특징으로 하는 방법. - 제7항에 있어서,
상기 표정 제어점을 이용하여 아바타의 표정을 제어하는 단계
를 더 포함하는 방법. - 제11항에 있어서,
상기 아바타의 표정을 제어하는 단계는,
상기 표정 제어점을 상기 사용자의 얼굴에 대응하는 아바타를 제어하기 위한 페이스 메쉬(face mesh) 상의 제어 좌표로 전환하여 아바타의 표정을 제어하는 것을 특징으로 하는 방법. - 제7항 내지 제12항 중 어느 한 항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170014058A KR101815995B1 (ko) | 2017-01-31 | 2017-01-31 | 표정 제어점을 이용한 아바타 제어 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170014058A KR101815995B1 (ko) | 2017-01-31 | 2017-01-31 | 표정 제어점을 이용한 아바타 제어 장치 및 방법 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100121533A Division KR20120059994A (ko) | 2010-12-01 | 2010-12-01 | 표정 제어점을 이용한 아바타 제어 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170016901A KR20170016901A (ko) | 2017-02-14 |
KR101815995B1 true KR101815995B1 (ko) | 2018-02-21 |
Family
ID=58121289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170014058A KR101815995B1 (ko) | 2017-01-31 | 2017-01-31 | 표정 제어점을 이용한 아바타 제어 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101815995B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230167826A (ko) | 2022-06-03 | 2023-12-12 | (주)스마트큐브 | 메타휴먼 아바타 생성장치 및 방법 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230102182A (ko) * | 2021-12-30 | 2023-07-07 | 아리아엣지 주식회사 | 모션 기반 3d 아바타의 표정 재현 장치 및 방법 |
CN116129091B (zh) * | 2023-04-17 | 2023-06-13 | 海马云(天津)信息技术有限公司 | 生成虚拟形象视频的方法及装置、电子设备和存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007069681A (ja) * | 2005-09-05 | 2007-03-22 | Toyota Motor Corp | 顔画像撮影カメラの搭載構造 |
-
2017
- 2017-01-31 KR KR1020170014058A patent/KR101815995B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007069681A (ja) * | 2005-09-05 | 2007-03-22 | Toyota Motor Corp | 顔画像撮影カメラの搭載構造 |
Non-Patent Citations (1)
Title |
---|
논문1 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230167826A (ko) | 2022-06-03 | 2023-12-12 | (주)스마트큐브 | 메타휴먼 아바타 생성장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20170016901A (ko) | 2017-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9298257B2 (en) | Apparatus and method for controlling avatar using expression control point | |
US11600013B2 (en) | Facial features tracker with advanced training for natural rendering of human faces in real-time | |
US11430169B2 (en) | Animating virtual avatar facial movements | |
KR101681096B1 (ko) | 얼굴 애니메이션 시스템 및 방법 | |
Stoll et al. | Fast articulated motion tracking using a sums of gaussians body model | |
Ganapathi et al. | Real time motion capture using a single time-of-flight camera | |
EP2710557B1 (en) | Fast articulated motion tracking | |
US10147219B2 (en) | Determining control values of an animation model using performance capture | |
Bhat et al. | High fidelity facial animation capture and retargeting with contours | |
WO2009091029A1 (ja) | 顔姿勢推定装置、顔姿勢推定方法、及び、顔姿勢推定プログラム | |
KR101819535B1 (ko) | 표정 제어점에 기초한 강체 영역의 표현 방법 및 장치 | |
CN112602090A (zh) | 用于插值不同输入的方法和系统 | |
JP2009534774A (ja) | 演技から作り出される顔アニメーション | |
KR101148101B1 (ko) | 얼굴 표정 리타게팅 방법 | |
KR101815995B1 (ko) | 표정 제어점을 이용한 아바타 제어 장치 및 방법 | |
EP3711029A1 (en) | A method of generating training data | |
CN115689869A (zh) | 一种视频美妆迁移方法及系统 | |
JP5109192B2 (ja) | モーションキャプチャにおけるfacs(顔の表情符号化システム)解決法 | |
CN116433718A (zh) | 特征追踪系统和方法 | |
Woodward et al. | A low cost framework for real-time marker based 3-D human expression modeling | |
JP7251003B2 (ja) | 細かいしわを有する顔メッシュ変形 | |
Somepalli et al. | Implementation of single camera markerless facial motion capture using blendshapes | |
Chang-Wei et al. | Synthesizing performance-driven facial animation | |
Neog et al. | Seeing Skin in Reduced Coordinates | |
Zhao et al. | Subtle facial animation transfer from 2d videos to 3d faces with laplacian deformation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |