KR101819535B1 - 표정 제어점에 기초한 강체 영역의 표현 방법 및 장치 - Google Patents
표정 제어점에 기초한 강체 영역의 표현 방법 및 장치 Download PDFInfo
- Publication number
- KR101819535B1 KR101819535B1 KR1020110064292A KR20110064292A KR101819535B1 KR 101819535 B1 KR101819535 B1 KR 101819535B1 KR 1020110064292 A KR1020110064292 A KR 1020110064292A KR 20110064292 A KR20110064292 A KR 20110064292A KR 101819535 B1 KR101819535 B1 KR 101819535B1
- Authority
- KR
- South Korea
- Prior art keywords
- facial expression
- expression
- facial
- samples
- control point
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
입력된 표정을 표현하기 위해 복수의 표정 샘플들에 대한 표정 벡터에 적용되는 가중치 및 복수의 표정 샘플들마다의 강체 영역에 대응하여 설정된 변환 행렬을 이용하여 아바타의 표정 변화를 보간하여 입력된 표정에 대한 강체 영역의 움직임 변화를 표현하는 표정 제어점에 기초한 강체 영역의 표현 방법 및 장치가 제공된다.
Description
아래의 실시예들은 표정 제어점에 기초한 강체 영역을 표현하는 방법 및 장치에 관한 것이다.
아바타 제작 시에 얼굴은 아바타로 제작하고자 하는 사람의 특성과 다양한 정보를 표현하는 매우 중요한 요소이다. 특히 눈과 입은 사람의 감정과 대화를 전달하기 위해 가장 중요한 부분으로 3D Avatar의 감정 및 대화를 표현하기 위해 매우 중요한 역할을 한다. 하지만 일반적으로 Animation 기술들은 얼굴 형상의 움직임에만 초점을 맞추어 왔다. 따라서, 눈과 치아를 포함한 턱 관절의 움직임은 아티스트들의 수작업을 기반으로 생성/제어 되었다. 하지만, 얼굴의 피부에 대한 변형과 달리 눈과 치아를 포함하는 턱은 강체(rigid object)로 구성된다. 그러므로, 눈과 치아를 포함하는 턱을 일반적인 얼굴 형상 또는 피부를 표현하는 방식으로 제어하는 경우, 강체의 성질이 보존되지 않아 눈이나 치아가 자연스럽지 않게 휘거나 뒤틀리게 된다.
일 실시예에 따른 표정 제어점에 기초한 강체 영역의 표현 방법은 입력된 표정을 표현할 수 있는 포즈 벡터(pose vector)를 생성하는 단계; 상기 포즈 벡터를 기초로, 상기 입력된 표정을 표현하기 위해 복수의 표정 샘플들에 대한 표정 벡터에 적용되는 가중치를 산출하는 단계; 상기 가중치 및 상기 복수의 표정 샘플들마다의 강체 영역에 대응하는 변환 행렬을 이용하여 상기 입력된 표정에 대응하는 아바타의 표정 변화를 보간(interpolation)하는 단계; 및 상기 입력된 표정에 대한 페이스 메쉬(face mesh)를 기초로 상기 입력된 표정에 대한 강체 영역의 움직임 변화를 표현하는 단계를 포함한다.
상기 포즈 벡터를 생성하는 단계는 상기 입력된 표정에 대한 표정 제어점을 기초로 상기 포즈 벡터(pose vector)를 생성할 수 있다.
상기 아바타에 대한 복수의 표정을 나타내는 복수의 표정 샘플들을 표현하는 표정 벡터 및 상기 복수의 표정 샘플들을 표현하는데 이용되는 변환 행렬을 포함하는 아바타 포즈 데이터베이스를 유지하는 단계를 더 포함할 수 있다.
상기 복수의 표정 샘플들마다의 강체 영역에 대응하여 변환 행렬을 설정하는 단계를 더 포함할 수 있다.
상기 변환 행렬을 설정하는 단계는 상기 복수의 표정 샘플들마다의 강체 영역에 대한 3차원 위치, 회전, 확대 및 축소를 포함하는 변환 행렬을 설정하는 단계일 수 있다.
상기 입력된 표정에 대한 표정 제어점을 이용하여 상기 아바타(avatar)를 제어하기 위한 페이스 메쉬(face mesh)를 생성하는 단계를 더 포함할 수 있다.
상기 아바타의 표정 변화를 보간(interpolation)하는 단계는 상기 복수의 표정 샘플들마다의 강체 영역의 위치를 기초로, 상기 표정 벡터와 상기 강체 영역의 위치 간의 상관 관계를 나타내는 보간 함수를 산출하는 단계를 더 포함할 수 있다.
상기 강체 영역은 눈 또는 턱 관절 중 적어도 하나일 수 있다.
일 실시예에 따른 표정 제어점에 기초한 강체 영역의 표현 장치는 입력된 표정을 표현할 수 있는 포즈 벡터(pose vector)를 생성하는 생성부; 상기 포즈 벡터를 기초로, 상기 입력된 표정을 표현하기 위해 복수의 표정 샘플들에 대한 표정 벡터에 적용되는 가중치를 산출하는 산출부; 상기 가중치 및 상기 복수의 표정 샘플들마다의 강체 영역에 대응하는 변환 행렬을 이용하여 상기 입력된 표정에 대응하는 아바타의 표정 변화를 보간(interpolation)하는 보간부; 및 상기 입력된 표정에 대한 페이스 메쉬(face mesh)를 기초로 상기 입력된 표정에 대한 강체 영역의 움직임 변화를 표현하는 표현부를 포함할 수 있다.
상기 생성부는 상기 입력된 임의의 표정에 대한 표정 제어점을 기초로 상기 포즈 벡터(pose vector)를 생성할 수 있다.
상기 아바타에 대한 복수의 표정을 나타내는 복수의 표정 샘플들을 표현하는 표정 벡터 및 상기 복수의 표정 샘플들을 표현하는데 이용되는 변환 행렬을 포함하는 아바타 포즈 데이터베이스를 더 포함할 수 있다.
상기 복수의 표정 샘플들마다의 강체 영역에 대응하여 변환 행렬을 설정하는 설정부를 더 포함할 수 있다.
상기 설정부는 상기 복수의 표정 샘플들마다의 강체 영역에 대한 3차원 위치, 회전, 확대 및 축소를 포함하는 변환 행렬을 설정할 수 있다.
상기 입력된 표정에 대한 표정 제어점을 이용하여 상기 아바타(avatar)를 제어하기 위한 페이스 메쉬(face mesh)를 생성하는 메쉬 생성부를 더 포함할 수 있다.
상기 보간부는 상기 복수의 표정 샘플들마다의 강체 영역의 위치를 기초로, 상기 표정 벡터와 상기 강체 영역의 위치 간의 상관 관계를 나타내는 보간 함수를 산출하는 함수 산출 수단을 더 포함할 수 있다.
상기 강체 영역은 눈 또는 턱 관절 중 적어도 하나일 수 있다.
일 실시예에 따르면, 표정 제어점을 기초로 생성된 사용자의 표정에 대한 포즈벡터 및 강체 영역에 대한 변환 행렬을 이용함으로써 눈 및 치아를 포함하는 턱 관절과 같은 강체 영역의 움직임을 보다 자연스럽게 표현할 수 있다.
일 실시예에 따르면, 강체로 구성된 눈과 치아의 형태를 변형하지 않고 강체 영역에 대한 변환 행렬을 이용하여 눈과 치아의 움직임만을 표현함으로써 얼굴 중 강체 영역을 보다 자연스럽게 표현할 수 있다.
도 1은 일 실시예에 따른 표정 제어점에 기초한 강체 영역의 표현 방법을 나타낸 플로우 차트이다.
도 2는 일 실시예에 따른 어느 하나의 표정 샘플들을 표현하는 표정 벡터를 나타낸 도면이다.
도 3은 일 실시예에 따른 복수의 표정 샘플들마다의 눈에 대응하는 변환 행렬을 설정하는 과정을 나타낸 도면이다.
도 4는 일 실시예에 따른 복수의 표정 샘플들마다의 치아를 포함하는 턱 관절에 대응하는 변환 행렬을 설정하는 과정을 나타낸 도면이다.
도 5는 일 실시예에 따른 눈 및 치아를 포함하는 턱 관절에 대한 애니메이션을 생성한 결과를 나타낸 도면이다.
도 6은 일 실시예에 따른 표정 제어점에 기초한 강체 영역의 표현 장치의 블록도이다.
도 2는 일 실시예에 따른 어느 하나의 표정 샘플들을 표현하는 표정 벡터를 나타낸 도면이다.
도 3은 일 실시예에 따른 복수의 표정 샘플들마다의 눈에 대응하는 변환 행렬을 설정하는 과정을 나타낸 도면이다.
도 4는 일 실시예에 따른 복수의 표정 샘플들마다의 치아를 포함하는 턱 관절에 대응하는 변환 행렬을 설정하는 과정을 나타낸 도면이다.
도 5는 일 실시예에 따른 눈 및 치아를 포함하는 턱 관절에 대한 애니메이션을 생성한 결과를 나타낸 도면이다.
도 6은 일 실시예에 따른 표정 제어점에 기초한 강체 영역의 표현 장치의 블록도이다.
이하, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 일실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일 실시예에 따른 표정 제어점에 기초한 강체 영역의 표현 방법을 나타낸 플로우 차트이다.
표정 제어점에 기초한 강체 영역의 표현 장치(이하, '표현 장치'는 입력된 표정을 표현할 수 있는 포즈 벡터(pose vector) 를 생성한다(110). 포즈 벡터는 3D 아바타 제어 좌표에 기반한 것으로써 이하에서는 3D 아바타를 제어하기 위한 좌표를 표정 제어점으로 표기한다. 표정 제어점은 Vision으로 추출한 (얼굴의) 특징점으로부터 추출할 수 있다. (얼굴의) 특징점은 어느 한 사람의 얼굴에서 드러나는 특징을 다른 사람과 구별할 수 있게 특징짓는 부분에 해당하는 지점으로써, 예를 들어, 눈, 코, 입, 이마 및 눈썹 등의 위치(또는 좌표)가 특징점에 해당할 수 있다.
표현 장치는 포즈 벡터를 생성하기에 앞서 페이스 메쉬의 정점들 및 특징점들을 이용하여 특징점들과 표정 제어점 간의 대응 관계를 설정할 수 있다. 여기서, 페이스 메쉬(face mesh)는 사용자의 얼굴에 대응되는 아바타(avatar)를 제어하기 위해 구성한 메쉬이다.
표현 장치는 페이스 메쉬의 정점들 중 애니메이션을 제어하기 위해 선택된 정점들(즉, 표정 제어점)이 특징점들과 서로 1:1 매칭이 되도록 같은 개수의 점과 형태로 모델링 한 후, 각 정점들을 라벨링(labeling)할 수 있다.
페이스 메쉬 상에 나타나는 표정 제어점은 다양한 형태의 얼굴 표정들을 표현하기 위한 제어점이다. 표정 제어점의 위치를 제어함으로써 예를 들어, 희로애락을 나타내는 웃거나, 울거나, 찡그리거나, 화내거나 시무룩하거나, 무표정한 얼굴 표정들 등과 같이 사용자의 얼굴에 대응되는 아바타(avatar)의 다양한 표정들을 제어할 수 있다.
표현 장치는 특징점들과 표정 제어점들 중 예를 들어, 미간과 코에 지정된 세 개의 정점을 이용하여 특징점과 표정 제어점 간의 대응 관계를 설정하는 변환 매트릭스(Transformation Matrix)를 생성할 수 있다.
표현 장치는 변환 매트릭스를 이용하여 특징점들을 글로벌 아핀 변환(global affine transformation)하여 페이스 메쉬 상의 좌표로 이동시킬 수 있다.
표현 장치는 특징점과 표정 제어점 간의 대응 관계에 기초하여 특징점들의 좌표를 페이스 메쉬 상의 표정 제어점으로 변환할 수 있다. 즉, 표현 장치는 특징점들의 좌표에 의해 나타난 사용자의 얼굴 표정을 아바타에 나타내기 위해 페이스 메쉬 상의 표정 제어점으로 변환할 수 있다.
표현 장치는 각 점들 간의 대응 관계를 통해 특징점과 표정 제어점 간의 맵핑 함수를 정의할 수 있다. 표현 장치는 임의의 영상 프레임에 대한 정점의 위치를 맵핑 함수를 통해 계산함으로써 특징점들의 좌표를 페이스 메쉬 상의 표정 제어점으로 변환할 수 있다. 특징점과 표정 제어점 간의 맵핑 함수로는 예를 들어, Radial Basis Function을 이용할 수 있다.
표현 장치는 입력된 표정에 대한 표정 제어점을 기초로 아바타에 대한 복수의 표정을 표현할 수 있는 포즈 벡터(pose vector)를 생성할 수 있다.
표현 장치는 포즈 벡터를 기초로, 입력된 표정을 표현하기 위해 복수의 표정 샘플들에 대한 표정 벡터에 적용되는 가중치를 산출한다(120).
이 때, 표현 장치는 포즈 벡터를 표정 벡터의 weighted sum으로 표현하고, 이를 위한 가중치를 계산할 수 있다. 표현 장치는 이후에 120에서 산출한 가중치에 아바타의 포즈 공간에서의 변환 행렬을 브렌딩(Blending)함으로써 입력된 표정에 대한 변화를 보간할 수 있다.
표현 장치는 아바타에 대한 복수의 표정 샘플들을 표현하는 표정 벡터 및 복수의 표정 샘플들을 표현하는데 이용되는 변환 행렬을 포함하는 아바타 포즈 데이터베이스를 유지할 수 있다(130). 아바타 포즈 데이터베이스는 아바타에 사실적인 표정 또는 이때의 눈 또는 치아를 포함하는 턱 관절과 같은 강체의 움직임 변화 등을 표현하기 위한 아바타의 주요 표정으로 구성되는 복수의 정보를 포함할 수 있다.
복수의 표정 샘플들을 표현하는 포즈 벡터는 아바타의 표정을 대표하는 정점들의 집합, 혹은 이들 정점들 간의 연결로 이루어진 그래프로 구성될 수 있다. 아바타에 대한 복수의 표정 샘플들을 표현하는 표정 벡터의 일 실시예가 도 2에 나타나 있다.
표현 장치는 복수의 표정 샘플들마다의 강체 영역에 대응하는 변환 행렬을 설정할 수 있다(140). 140은 각 표정에 맞게 변형(transform)을 셋-업(set-up)하는 단계로서, 표현 장치는 복수의 표정 샘플들 각각마다의 강체 영역에 대응하여 변환 행렬을 설정한다. 예를 들어, 웃는 표정을 표현하고자 하는 경우에 표현 장치는 웃는 표정에서의 입 또는 치아를 포함하는 턱에 대응하여 입의 윤곽 또는 턱의 위치, 벌어진 정도 등을 표현하는 표정 제어점의 좌표를 변경하여야 한다. 따라서, 140에서 표현 장치는 복수의 표정 샘플들 각각을 표현하기 위해 표정 제어점이 변화되어야 하는 정도를 나타낸 변환 행렬을 설정한다.
이때, 표현 장치는 강체 영역에 대한 3차원 위치, 회전, 확대 및 축소를 포함하는 변환 행렬을 설정할 수 있다. 강체 영역은 예를 들어, 눈 및 치아를 포함하는 턱 관절 중 적어도 하나를 포함할 수 있다. 복수의 표정 샘플들에 맞추어 눈에 대응하는 변환 행렬을 설정하는 방법은 도 3을 참조하여 설명한다. 또한, 복수의 표정 샘플들에 맞추어 턱 관절에 대응하는 변환 행렬을 설정하는 방법은 도 4를 참조하여 설명한다.
표현 장치는 가중치 및 복수의 표정 샘플들마다의 강체 영역에 대응하는 변환 행렬을 이용하여 입력된 표정에 대응하는 아바타의 표정 변화를 보간(interpolation)한다(150). 표현 장치는 120에서 산출한 가중치를 이용하여 아바타의 포즈 공간에서의 변환 행렬을 브렌딩(Blending)함으로써 입력된 표정에 대한 변화를 보간할 수 있다.
표현 장치는 복수의 표정 샘플들마다의 강체 영역의 위치를 기초로, 표정 벡터와 강체 영역의 위치 간의 상관 관계를 나타내는 보간 함수를 산출할 수 있다. 표현 장치는 120에서 산출한 가중치를 이용하여 아바타의 포즈 공간에서의 각 표정 샘플들에 대한 변화를 보간 함으로써 변환된 포즈 벡터를 생성할 수 있다. 보간 함수의 일 예로는 아래의 [수학식 1]과 같은 Radial Basis Function을 이용한 Pose Space Interpolation 함수를 들 수 있다.
예를 들어, 아바타 포즈 데이터베이스에 기반하여 눈에 대한 보간(Interpolation) 함수를 생성하는 방법은 다음과 같다.
도 3과 같이 복수의 표정 샘플들에 대해 눈의 위치가 주어지면 도 2와 같이 각 표정을 대표하는 표정 벡터와 눈의 위치의 상관 관계를 구할 수 있다. 표정 벡터와 눈의 위치의 상관 관계는 예를 들어, Scattered Interpolation 방법을 이용하여 아래의 [수학식 1]과 같이 구할 수 있다.
여기서, Pj는 표정 샘플 j에 대한 표정 벡터이고, Pi는 표정 샘플 i에 대한 표정 벡터이다. 그리고 ti 는 기본 표정에서 표정 샘플 Pi로 눈을 변환(Transformation) 하기 위한 행렬 혹은 벡터이다. 여기서, 기본 표정은 아무런 표정을 나타내지 않고 있는 즉, 무표정 상태를 나타내는 표정이거나, 그 밖에 다양하게 변화된 표정들과의 차이를 구별하기 용이한 얼굴 표정이 될 수 있다. λi는 아바타에서 아바타의 미세한 표정, 주름 및 움직임 등의 정밀한 표현을 하기 위하여 각각의 표정 벡터들에 적용되는 가중치이다.
이러한 Pi, Pj, ti 이 Nsample 있는 경우, 표현 장치는 이들(Pi, Pj, ti)을 이용하여 선형 시스템(linear system)을 통해 가중치 λi를 구할 수 있다. 이때 φ는 커널 함수로써 가우시안(Gaussian) 함수 등을 이용할 수 있다.
또한, 예를 들어, 아바타 포즈 데이터베이스에 기반하여 턱 관절에 대한 보간(Interpolation) 함수를 생성하는 방법은 다음과 같다.
도 4와 같이 복수의 표정 샘플들에 대해 턱 관절의 위치가 주어지면, 예를 들어, Scattered Interpolation 방법을 이용하여 각 표정을 대표하는 표정 벡터(도 2 참조)와 턱 관절의 위치의 상관 관계를 구할 수 있다. 이때, 표현 장치는 표정 벡터와 턱 관절의 위치의 상관 관계를 눈의 경우와 마찬가지로 상술한 [수학식 1]을 이용할 수 있다. 다만, 이 경우 [수학식 1]에서 ti 는 기본 표정에서 표정 샘플 Pi로 턱 관절을 변형(Transformation)하기 위한 행렬 혹은 벡터이다.
표현 장치는 입력된 표정에 대한 표정 제어점을 이용하여 아바타(avatar)를 제어하기 위한 페이스 메쉬(face mesh)를 생성할 수 있다(160).
160에서 표현 장치는 표정 제어점을 이용하여 Smoothness 제한 기반 메쉬 최적화 알고리즘을 이용하여 표정 제어점의 위치를 최대한 반영하면서 메쉬를 부드럽게 변형하는 메쉬 변형 방법에 의해 초기 변형 메쉬(즉, 페이스 메쉬)를 생성할 수 있다.
표현 장치가 페이스 메쉬를 생성하는 단계는 일 실시예에서의 수행 단계에 한정되지 않으며, 170의 과정을 수행하기 전이라면 110 내지 150까지의 과정 중 어디에서라도 수행될 수 있다.
표현 장치는 입력된 표정에 대한 페이스 메쉬(face mesh)를 기초로 입력된 표정에 대한 강체 영역의 움직임 변화를 표현할 수 있다(170).
170에서 표현 장치는 보간 함수를 이용하여 입력된 임의의 표정에 대한 눈의 변환(transformation) 위치를 구할 수 있다. 이때, 보간 함수는 150에서 산출한 것일 수 있다. 표현 장치는 예를 들어, 아래의 [수학식 2]와 같은 Radial Basis Function을 이용하여 눈의 변환(transformation) 위치를 구하고 도 5와 같이 눈에 대한 애니메이션을 생성할 수 있다.
여기서, t0는 기준이 되는 눈이나 치아(또는 턱)의 위치에 대한 기본 행렬 혹은 벡터이다. 표현 장치는 기본 행렬 또는 기본 벡터를 기준으로 임의의 표정 Pa에 따라 눈이나 치아가 얼마나 움직이는가를 나타낼 수 있다.
Pa는 입력된 임의의 표정에 대한 표정 벡터를 나타내고, Pi는 표정 샘플 i에 대한 표정 벡터이다. 또한, t: RP -> RT 는 표현 장치를 통해 복수의 표정 샘플들이 있는 다차원 벡터, 즉 포즈 공간(pose space)(RP)이 변환 공간(transformation space)(RT)으로 변화됨을 나타낸다.
눈의 경우와 마찬가지로 턱 관절의 경우에도 150에서 산출한 보간 함수를 이용하여 임의의 표정 Pa에 대한 턱 관절의 변화된 위치를 구할 수 있다. 또한, 턱 관절의 경우에도 [수학식 2]를 통해 도 5와 같이 턱 관절의 애니메이션을 생성할 수 있다.
도 2는 일 실시예에 따른 어느 하나의 표정 샘플들을 표현하는 표정 벡터를 나타낸 도면이다.
사람의 얼굴 또는 신체의 다른 부분 등을 3차원 공간에서 표현하고자 하는 경우에 3D 오브젝트로 표현할 수 있다. 3차원 공간에서 사람의 얼굴은 복수의 선 및 복수의 점(특징점)들이 다각형(polygon)을 이루고, 복수의 다각형들이 3D 오브젝트를 구성할 수 있다. 따라서, 각 다각형을 변형시키거나, 다각형을 구성하는 점(특징점)의 좌표를 변경함으로써 3D 오브젝트의 움직임을 표현할 수 있다.
도 2에서 왼쪽 도면은 다양한 표정들 중 어느 하나의 표정 샘플(예를 들어, 웃는 표정)을 대한 점(특징점)을 나타낸 것이고, 오른쪽 도면은 어느 하나의 표정 샘플에 대한 표정 벡터를 나타낸 것이다.
상술한 바와 같이 도 2의 오른쪽 도면에 나타난 표정 벡터에 가중치를 적용함으로써 3D 오브젝트의 각 다각형을 변형시키거나, 다각형을 구성하는 점(특징점)의 좌표를 변경하여 다양한 표정을 표현할 수 있다.
도 3은 일 실시예에 따른 복수의 표정 샘플들마다의 눈에 대응하는 변환 행렬을 설정하는 과정을 나타낸 도면이다.
예를 들어, 도 3의 321, 323, 325 및 327과 같은 복수의 표정 샘플들이 주어졌다고 가정하면, 변환 장치는 복수의 표정 샘플들(321, 323, 325 및 327) 각각의 눈(301, 303, 305 및 307)에 대응하여, 복수의 표정 샘플들 각각에 맞는 변환 행렬(341, 343, 345 및 347)을 설정한다.
이때, 변환 행렬은 눈의 3차원 위치, 회전, 확대/축소를 포함하는 행렬 혹은 벡터로 표현할 수 있다.
도 4는 일 실시예에 따른 복수의 표정 샘플들마다의 치아를 포함하는 턱 관절에 대응하는 변환 행렬을 설정하는 과정을 나타낸 도면이다.
예를 들어, 도 4의 421, 423, 425 및 427과 같은 복수의 표정 샘플들이 주어졌다고 가정하면, 변환 장치는 복수의 표정 샘플들(421, 423, 425 및 427) 각각의 치아를 포함하는 턱 관절(401, 403, 405 및 407)에 대응하여, 복수의 표정 샘플들 각각에 맞는 변환 행렬(441, 443, 445 및 447)을 설정한다.
이때, 치아를 포함하는 턱 관절의 경우, 턱 모델은 턱 관절을 기준으로 상부와 하부로 나누고, 상부는 얼굴 메쉬에 고정한 후 하부만 움직이는 것으로 한다. 변환 행렬은 턱 관절을 기준으로 3차원 위치, 회전, 확대/축소를 포함하는 행렬 혹은 벡터로 표현할 수 있다.
도 5는 일 실시예에 따른 눈 및 치아를 포함하는 턱 관절에 대한 애니메이션을 생성한 결과를 나타낸 도면이다.
표현 장치는 예를 들어, 상술한 [수학식 2]와 같은 Radial Basis Function을 이용하여 입력된 임의의 표정에 대한 눈 또는 치아를 포함하는 턱 관절의 변환(transformation) 위치를 구하고, 도 5와 같이 눈 또는 치아를 포함하는 턱 관절에 대한 애니메이션을 생성할 수 있다. 표현 장치는 도 5와 같이 눈 또는 치아를 포함하는 턱 관절의 다양한 애니메이션 결과를 생성할 수 있다.
도 6은 일 실시예에 따른 표정 제어점에 기초한 강체 영역의 표현 장치의 블록도이다.
표정 제어점에 기초한 강체 영역의 표현 장치(이하, 표현 장치)(600)는 생성부(610), 산출부(620), 보간부(630) 및 표현부(640)를 포함한다. 또한, 표현 장치(600)는 아바타 포즈 데이터베이스(650), 설정부(660) 및 메쉬 생성부(670)를 더 포함할 수 있다.
생성부(610)는 입력된 표정을 표현할 수 있는 포즈 벡터(pose vector)를 생성한다. 생성부(610)는 입력된 임의의 표정에 대한 표정 제어점을 기초로 아바타에 대한 복수의 표정을 표현할 수 있는 포즈 벡터(pose vector)를 생성할 수 있다.
산출부(620)는 포즈 벡터를 기초로, 입력된 표정을 표현하기 위해 복수의 표정 샘플들에 대한 표정 벡터에 적용되는 가중치를 산출한다.
보간부(630)는 가중치 및 복수의 표정 샘플들마다의 강체 영역에 대응하는 변환 행렬을 이용하여 입력된 표정에 대응하는 아바타의 표정 변화를 보간(interpolation)한다. 강체 영역은 눈 및 치아를 포함하는 턱 관절 중 적어도 하나일 수 있다.
또한, 보간부(630)는 복수의 표정 샘플들마다의 강체 영역의 위치를 기초로, 표정 벡터와 강체 영역의 위치 간의 상관 관계를 나타내는 보간 함수를 산출하는 함수 산출 수단(635)을 더 포함할 수 있다.
표현부(640)는 입력된 표정에 대한 페이스 메쉬(face mesh)를 기초로 입력된 표정에 대한 강체 영역의 움직임 변화를 표현한다.
아바타 포즈 데이터베이스(650)는 아바타에 대한 복수의 표정 샘플들을 표현하는 표정 벡터 및 복수의 표정 샘플들을 표현하는데 이용되는 변환 행렬을 포함할 수 있다.
설정부(660)는 복수의 표정 샘플들마다의 강체 영역에 대응하는 변환 행렬을 설정할 수 있다. 이때, 설정부(660)는 강체 영역에 대한 3차원 위치, 회전, 확대 및 축소를 포함하는 변환 행렬을 설정할 수 있다.
메쉬 생성부(670)는 입력된 표정에 대한 표정 제어점을 이용하여 아바타(avatar)를 제어하기 위한 페이스 메쉬(face mesh)를 생성할 수 있다.
상술한 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
610: 생성부
620: 산출부
630: 보간부
635: 함수 산출 수단
640: 표현부
650: 아바타 포즈 데이터베이스
660: 설정부
670: 메쉬 생성부
620: 산출부
630: 보간부
635: 함수 산출 수단
640: 표현부
650: 아바타 포즈 데이터베이스
660: 설정부
670: 메쉬 생성부
Claims (17)
- 입력된 표정을 표현할 수 있는 포즈 벡터(pose vector)를 생성하는 단계;
상기 포즈 벡터를 기초로, 상기 입력된 표정을 표현하기 위해 복수의 표정 샘플들에 대한 표정 벡터- 상기 표정 벡터는 아바타의 복수의 표정들을 표현함- 에 적용되는 가중치를 산출하는 단계;
상기 가중치를 상기 복수의 표정 샘플들과 관련된 변환 행렬(Ti)에 적용함으로써 상기 복수의 표정 샘플들마다의 강체 영역에 대응하는 변환 행렬을 산출하는 단계- 상기 변환 행렬 각각은 상기 복수의 표정 샘플들에 대응되는 강체 영역의 표정 제어점들 및 기본 표정의 강체 영역의 표정 제어점들 간의 변화 정도를 나타내고, 상기 변환 행렬은 상기 복수의 표정 샘플을 표현하는 데에 사용됨-; 및
상기 기본 표정과 상기 산출된 변환 행렬에 기초하여 상기 입력된 표정에 대한 강체 영역의 움직임 변화를 표현하는 단계
를 포함하는, 표정 제어점에 기초한 강체 영역의 표현 방법. - 제1항에 있어서,
상기 포즈 벡터를 생성하는 단계는
상기 입력된 표정에 대한 표정 제어점을 기초로 상기 포즈 벡터(pose vector)를 생성하는 표정 제어점에 기초한 강체 영역의 표현 방법. - 제1항에 있어서,
상기 아바타에 대한 복수의 표정을 나타내는 복수의 표정 샘플들을 표현하는 표정 벡터 및 상기 복수의 표정 샘플들을 표현하는데 이용되는 변환 행렬을 포함하는 아바타 포즈 데이터베이스를 유지하는 단계
를 더 포함하는 표정 제어점에 기초한 강체 영역의 표현 방법. - 제1항에 있어서,
상기 복수의 표정 샘플들마다의 강체 영역에 대응하여 변환 행렬을 설정하는 단계
를 더 포함하는 표정 제어점에 기초한 강체 영역의 표현 방법. - 제4항에 있어서,
상기 변환 행렬을 설정하는 단계는
상기 복수의 표정 샘플들마다의 강체 영역에 대한 3차원 위치, 회전, 확대 및 축소를 포함하는 변환 행렬을 설정하는 단계인 표정 제어점에 기초한 강체 영역의 표현 방법. - 제1항에 있어서,
상기 입력된 표정에 대한 표정 제어점을 이용하여 상기 아바타(avatar)를 제어하기 위한 페이스 메쉬(face mesh)를 생성하는 단계
를 더 포함하는 표정 제어점에 기초한 강체 영역의 표현 방법. - 제1항에 있어서,
상기 복수의 표정 샘플들마다의 강체 영역의 위치를 기초로, 상기 표정 벡터와 상기 강체 영역의 위치 간의 상관 관계를 나타내는 보간 함수를 산출하는 단계; 및
상기 보간 함수를 이용하여 상기 아바타의 표정 변화를 보간하는 단계
를 더 포함하는 표정 제어점에 기초한 강체 영역의 표현 방법.. - 제1항에 있어서,
상기 강체 영역은
눈 또는 턱 관절 중 적어도 하나인 표정 제어점에 기초한 강체 영역의 표현 방법. - 제1항 내지 제8항 중 어느 한 항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
- 입력된 표정을 표현할 수 있는 포즈 벡터(pose vector)를 생성하는 생성부;
상기 포즈 벡터를 기초로, 상기 입력된 표정을 표현하기 위해 복수의 표정 샘플들에 대한 표정 벡터- 상기 표정 벡터는 아바타의 복수의 표정들을 표현함- 에 적용되는 가중치를 산출하는 산출부;
상기 가중치를 상기 복수의 표정 샘플들과 관련된 변환 행렬에 적용함으로써 상기 복수의 표정 샘플들마다의 강체 영역에 대응하는 변환 행렬을 산출하는 보간부- 상기 변환 행렬 각각은 상기 복수의 표정 샘플들에 대응되는 강체 영역의 표정 제어점들 및 기본 표정의 강체 영역의 표정 제어점들 간의 변화 정도를 나타내고, 상기 변환 행렬은 상기 복수의 표정 샘플을 표현하는 데에 사용됨-; 및
상기 기본 표정과 상기 산출된 변환 행렬에 기초하여 상기 입력된 표정에 대한 강체 영역의 움직임 변화를 표현하는 표현부
를 포함하는 표정 제어점에 기초한 강체 영역의 표현 장치.. - 제10항에 있어서,
상기 생성부는
상기 입력된 임의의 표정에 대한 표정 제어점을 기초로 상기 포즈 벡터(pose vector)를 생성하는 표정 제어점에 기초한 강체 영역의 표현 장치. - 제10항에 있어서,
상기 아바타에 대한 복수의 표정을 나타내는 복수의 표정 샘플들을 표현하는 표정 벡터 및 상기 복수의 표정 샘플들을 표현하는데 이용되는 변환 행렬을 포함하는 아바타 포즈 데이터베이스
를 더 포함하는 표정 제어점에 기초한 강체 영역의 표현 장치. - 제10항에 있어서,
상기 복수의 표정 샘플들마다의 강체 영역에 대응하여 변환 행렬을 설정하는 설정부
를 더 포함하는 표정 제어점에 기초한 강체 영역의 표현 장치. - 제13항에 있어서,
상기 설정부는
상기 복수의 표정 샘플들마다의 강체 영역에 대한 3차원 위치, 회전, 확대 및 축소를 포함하는 변환 행렬을 설정하는 표정 제어점에 기초한 강체 영역의 표현 장치. - 제10항에 있어서,
상기 입력된 표정에 대한 표정 제어점을 이용하여 상기 아바타(avatar)를 제어하기 위한 페이스 메쉬(face mesh)를 생성하는 메쉬 생성부
를 더 포함하는 표정 제어점에 기초한 강체 영역의 표현 장치. - 제10항에 있어서,
상기 보간부는
상기 복수의 표정 샘플들마다의 강체 영역의 위치를 기초로, 상기 표정 벡터와 상기 강체 영역의 위치 간의 상관 관계를 나타내는 보간 함수를 산출하는 함수 산출수단
을 더 포함하는 표정 제어점에 기초한 강체 영역의 표현 장치. - 제10항에 있어서,
상기 강체 영역은
눈 또는 턱 관절 중 적어도 하나인 표정 제어점에 기초한 강체 영역의 표현 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110064292A KR101819535B1 (ko) | 2011-06-30 | 2011-06-30 | 표정 제어점에 기초한 강체 영역의 표현 방법 및 장치 |
US13/335,461 US9454839B2 (en) | 2011-06-30 | 2011-12-22 | Method and apparatus for expressing rigid area based on expression control points |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110064292A KR101819535B1 (ko) | 2011-06-30 | 2011-06-30 | 표정 제어점에 기초한 강체 영역의 표현 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130003170A KR20130003170A (ko) | 2013-01-09 |
KR101819535B1 true KR101819535B1 (ko) | 2018-01-17 |
Family
ID=47390179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110064292A KR101819535B1 (ko) | 2011-06-30 | 2011-06-30 | 표정 제어점에 기초한 강체 영역의 표현 방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9454839B2 (ko) |
KR (1) | KR101819535B1 (ko) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9082222B2 (en) | 2011-01-18 | 2015-07-14 | Disney Enterprises, Inc. | Physical face cloning |
CN104170318B (zh) | 2012-04-09 | 2018-06-01 | 英特尔公司 | 使用交互化身的通信 |
US20140168204A1 (en) * | 2012-12-13 | 2014-06-19 | Microsoft Corporation | Model based video projection |
WO2014139118A1 (en) * | 2013-03-14 | 2014-09-18 | Intel Corporation | Adaptive facial expression calibration |
US9381426B1 (en) * | 2013-03-15 | 2016-07-05 | University Of Central Florida Research Foundation, Inc. | Semi-automated digital puppetry control |
US9378576B2 (en) * | 2013-06-07 | 2016-06-28 | Faceshift Ag | Online modeling for real-time facial animation |
US9830728B2 (en) | 2014-12-23 | 2017-11-28 | Intel Corporation | Augmented facial animation |
US20170069124A1 (en) * | 2015-04-07 | 2017-03-09 | Intel Corporation | Avatar generation and animations |
KR102065692B1 (ko) * | 2015-04-17 | 2020-01-13 | 한국전자통신연구원 | 3차원 프린팅을 위한 두께 모델 생성 장치 및 방법 |
US10475225B2 (en) | 2015-12-18 | 2019-11-12 | Intel Corporation | Avatar animation system |
US10304244B2 (en) * | 2016-07-08 | 2019-05-28 | Microsoft Technology Licensing, Llc | Motion capture and character synthesis |
US10860841B2 (en) | 2016-12-29 | 2020-12-08 | Samsung Electronics Co., Ltd. | Facial expression image processing method and apparatus |
CN107153816B (zh) * | 2017-04-16 | 2021-03-23 | 五邑大学 | 一种用于鲁棒人脸识别的数据增强方法 |
TWI694384B (zh) * | 2018-06-07 | 2020-05-21 | 鴻海精密工業股份有限公司 | 人臉圖像處理方法、電子裝置和存儲介質 |
KR102243040B1 (ko) * | 2019-04-10 | 2021-04-21 | 한양대학교 산학협력단 | 전자 장치, 아바타 얼굴 표정 표시 시스템 및 제어 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100896065B1 (ko) * | 2007-12-17 | 2009-05-07 | 한국전자통신연구원 | 3차원 얼굴 표정 애니메이션 생성 방법 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0812706B2 (ja) | 1993-03-25 | 1996-02-07 | 株式会社エイ・ティ・アール通信システム研究所 | 視線アニメーション表示装置 |
US6480190B1 (en) * | 1999-01-29 | 2002-11-12 | Mitsubishi Electric Research Laboratories, Inc | Graphical objects represented as surface elements |
US6807290B2 (en) * | 2000-03-09 | 2004-10-19 | Microsoft Corporation | Rapid computer modeling of faces for animation |
US7068277B2 (en) | 2003-03-13 | 2006-06-27 | Sony Corporation | System and method for animating a digital facial model |
US7554549B2 (en) | 2004-10-01 | 2009-06-30 | Sony Corporation | System and method for tracking facial muscle and eye motion for computer graphics animation |
US7286127B2 (en) * | 2005-06-22 | 2007-10-23 | Microsoft Corporation | Large mesh deformation using the volumetric graph Laplacian |
KR100827749B1 (ko) | 2006-08-25 | 2008-05-08 | 성결대학교 산학협력단 | 피디에이를 이용한 맞춤형 쓰리디 얼굴 생성/표정구현시스템 및 구현 방법 |
US20080136814A1 (en) * | 2006-09-17 | 2008-06-12 | Chang Woo Chu | System and method for generating 3-d facial model and animation using one video camera |
JP4764381B2 (ja) | 2007-06-05 | 2011-08-31 | 株式会社コナミデジタルエンタテインメント | 画像処理装置、画像処理方法及びプログラム |
IE20070634A1 (en) * | 2007-09-05 | 2009-04-15 | Nat Univ Ireland Maynooth | Method and system for synthesis of non-primary facial expressions |
US8730231B2 (en) | 2007-11-20 | 2014-05-20 | Image Metrics, Inc. | Systems and methods for creating personalized media content having multiple content layers |
US9129434B2 (en) | 2008-05-29 | 2015-09-08 | Robert R. Taylor | Method and system for 3D surface deformation fitting |
KR100962986B1 (ko) | 2008-10-22 | 2010-06-09 | 성균관대학교산학협력단 | 컴퓨터 그래픽 애니메이션용 인체 피부의 부피 변화 표현 방법 및 장치 |
CN101826217A (zh) * | 2010-05-07 | 2010-09-08 | 上海交通大学 | 人脸动画快速生成方法 |
-
2011
- 2011-06-30 KR KR1020110064292A patent/KR101819535B1/ko active IP Right Grant
- 2011-12-22 US US13/335,461 patent/US9454839B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100896065B1 (ko) * | 2007-12-17 | 2009-05-07 | 한국전자통신연구원 | 3차원 얼굴 표정 애니메이션 생성 방법 |
Also Published As
Publication number | Publication date |
---|---|
US9454839B2 (en) | 2016-09-27 |
US20130002669A1 (en) | 2013-01-03 |
KR20130003170A (ko) | 2013-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101819535B1 (ko) | 표정 제어점에 기초한 강체 영역의 표현 방법 및 장치 | |
Deng et al. | Computer facial animation: A survey | |
Jörg et al. | Data-driven finger motion synthesis for gesturing characters | |
Schumacher et al. | Efficient simulation of example-based materials | |
Choe et al. | Analysis and synthesis of facial expressions with hand-generated muscle actuation basis | |
WO2001099048A2 (en) | Non-linear morphing of faces and their dynamics | |
JP2009534774A (ja) | 演技から作り出される顔アニメーション | |
Alkawaz et al. | Blend shape interpolation and FACS for realistic avatar | |
US9129434B2 (en) | Method and system for 3D surface deformation fitting | |
JP2011159329A (ja) | 自動3dモデリングシステム及び方法 | |
KR20080050284A (ko) | 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법 및장치 | |
Orvalho et al. | Transferring the rig and animations from a character to different face models | |
Ju et al. | Expressive facial gestures from motion capture data | |
Li et al. | Orthogonal-blendshape-based editing system for facial motion capture data | |
Costigan et al. | Facial retargeting using neural networks | |
KR100792704B1 (ko) | 와이어 곡선과 예제 표정 모델에 기반한 3차원 얼굴애니메이션의 재적용 방법 | |
Tejera et al. | Animation control of surface motion capture | |
JP4357155B2 (ja) | アニメーション画像の生成プログラム | |
Park et al. | A feature‐based approach to facial expression cloning | |
Çetinaslan | Position manipulation techniques for facial animation | |
US8704828B1 (en) | Inverse kinematic melting for posing models | |
JP4361878B2 (ja) | 統計力学的モデリングの方法と装置 | |
US20240320920A1 (en) | Systems and methods for generating a model database with blendshape representation | |
Di Fiore et al. | Mimicing 3d transformations of emotional stylised animation with minimal 2d input | |
Bibliowicz | An automated rigging system for facial animation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |