KR102462947B1 - 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치 - Google Patents
디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치 Download PDFInfo
- Publication number
- KR102462947B1 KR102462947B1 KR1020220004548A KR20220004548A KR102462947B1 KR 102462947 B1 KR102462947 B1 KR 102462947B1 KR 1020220004548 A KR1020220004548 A KR 1020220004548A KR 20220004548 A KR20220004548 A KR 20220004548A KR 102462947 B1 KR102462947 B1 KR 102462947B1
- Authority
- KR
- South Korea
- Prior art keywords
- facial expression
- map
- color
- texture
- region
- Prior art date
Links
- 230000008921 facial expression Effects 0.000 title claims abstract description 123
- 230000008859 change Effects 0.000 title claims abstract description 35
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000036548 skin texture Effects 0.000 title claims abstract description 12
- 230000014509 gene expression Effects 0.000 claims abstract description 18
- 239000000463 material Substances 0.000 claims description 21
- 210000001097 facial muscle Anatomy 0.000 claims description 20
- 230000009471 action Effects 0.000 claims description 6
- 238000011161 development Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 9
- 210000001061 forehead Anatomy 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000001815 facial effect Effects 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 7
- 230000037303 wrinkles Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 230000008602 contraction Effects 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 2
- 230000008326 skin blood flow Effects 0.000 description 2
- 206010061991 Grimacing Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000017531 blood circulation Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/80—Shading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
-
- 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
- G06T2207/30201—Face
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/44—Morphing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
본 발명의 실시예에 따른 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치가 제공된다. 상기 방법은, 기본 얼굴 표정에 해당하는 컬러 맵(color map)과 노멀 맵(normal map)을 생성하는 단계; 적어도 두개의 얼굴 표정 각각에 해당하는 컬러 맵과 노멀 맵을 생성하는 단계; 얼굴 모델에 대한 UV 맵에 기반하여 분할된 복수의 영역을 포함하는 마스크 맵(mask map)을 생성하는 단계; 및 상기 얼굴 모델에 대한 몰프 타겟(Morph Target)이 몰핑되면 상기 컬러 맵들과 상기 노멀 맵들, 및 상기 마스크 맵에 기반하여 상기 몰프 타겟에 관련된 상기 얼굴 모델의 텍스처를 변화시키는 단계를 포함한다.
Description
본 발명은 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치에 관한 것이다.
일반적으로 3차원 그래픽 기술은 현실감 있는 3차원 객체를 생성하여 이를 시각화하는 기술로, 방송, 게임, 영화, 및 의료 등 다양한 분야에서 이용된다. 이러한 3차원 객체는 3차원 모델링 소프트웨어 또는 애플리케이션 등과 같은 3차원 그래픽 툴을 이용하여 제작자들에 의해 디자인된다. 최근 그래픽 분야에서는 디지털 휴먼(Digital Human)과 같이 사람을 사실적이고, 현실감 있게 표현하기 위한 다양한 방법을 개발하고 있다.
특히, 사람의 얼굴을 사실적이고, 현실감 있게 표현하기 위해서 종래에는 1개의 3차원 얼굴 모델을 텍스처링(Texturing)하기 위해 사용되는 데이터(예: 컬러 맵(color map), 노멀 맵(normal map) 등)를 하나씩만 생성하고, 생성된 데이터를 얼굴 모델에서 구현되는 모든 얼굴 표정에 적용하였다.
발명의 배경이 되는 기술은 본 발명에 대한 이해를 보다 용이하게 하기 위해 작성되었다. 발명의 배경이 되는 기술에 기재된 사항들이 선행기술로 존재한다고 인정하는 것으로 이해되어서는 안 된다.
실제 사람의 얼굴은 얼굴 근육을 찡그리는 등의 표정 변화에 따라 피부의 혈류량에 대한 변화가 생기면서 피부색의 변화가 발생되고, 피부 표면에 미세한 주름의 변화가 발생된다.
그러나, 종래의 텍스처링 기술은 사람의 얼굴 표정 각각에 대응하는 몰프 타겟(Morph Target, Blend Shape Target)을 몰핑하여 몰핑에 의한 얼굴 모델의 지오메트리의 형태 변화만을 표현할 수 있을 뿐, 피부 표면의 잔주름이나 피부색의 변화를 상세하고 사실적으로 표현하기 어렵다는 문제점이 있다.
이에, 피부 표면의 잔주름이나 피부색의 변화를 상세하고 사실적으로 표현하기 위한 새로운 방법이 요구된다.
그 결과, 본 발명의 발명자들은, 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치를 개발하고자 하였다.
본 발명의 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
전술한 바와 같은 과제를 해결하기 위하여 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치가 제공된다.
상기 방법은, 기본 얼굴 표정에 해당하는 컬러 맵(color map)과 노멀 맵(normal map)을 생성하는 단계, 적어도 두개의 얼굴 표정 각각에 해당하는 컬러 맵과 노멀 맵을 생성하는 단계, 얼굴 모델에 대한 UV 맵에 기반하여 분할된 복수의 영역을 포함하는 마스크 맵(mask map)을 생성하는 단계 및 얼굴 모델에 대한 몰프 타겟(Morph Target)이 몰핑되면 컬러 맵들과 노멀 맵들, 및 마스크 맵에 기반하여 몰프 타겟에 관련된 얼굴 모델의 텍스처를 변화시키는 단계를 포함하도록 구성된다.
본 발명의 특징에 따르면, 적어도 두개의 얼굴 표정은, 얼굴 근육이 수축되는 제1 얼굴 표정 및 상기 얼굴 근육이 확장되는 제2 얼굴 표정을 포함할 수 있다.
본 발명의 다른 특징에 따르면, 적어도 두개의 얼굴 표정 각각에 관련된 복수의 AU(Action Unit) 및 복수의 영역 중 상기 복수의 AU 각각에 관련된 적어도 하나의 영역을 대응시킨 데이터를 저장하는 단계를 더 포함할 수 있다.
본 발명의 또 다른 특징에 따르면, 몰프 타겟에 관련된 얼굴 모델의 텍스처를 변화시키는 단계는, 저장된 데이터를 이용하여 몰프 타겟에 관련된 적어도 하나의 AU에 대응하는 적어도 하나의 영역 및 얼굴 표정을 결정하는 단계 및 결정된 얼굴 표정의 컬러 맵과 노멀 맵을 이용하여 결정된 적어도 하나의 영역의 텍스처를 변화시키는 단계를 포함할 수 있다.
본 발명의 또 다른 특징에 따르면, 결정된 적어도 하나의 영역의 텍스처를 변화시키는 단계는, 컬러 맵들 및 노멀 맵들을 기반으로 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키는 셰이더(shader)를 이용하여 수행될 수 있다.
본 발명의 또 다른 특징에 따르면, 결정된 적어도 하나의 영역의 텍스처를 변화시키는 단계는, 결정된 얼굴 표정에 관련된 컬러 맵과 노멀 맵, 및 기본 얼굴 표정에 해당하는 컬러 맵과 노멀 맵을 소스로 하여 셰이더를 통해 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키는 단계일 수 있다.
본 발명의 또 다른 특징에 따르면, 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키는 단계는, 텍스처를 결정된 얼굴 표정의 컬러 맵과 노멀 맵으로 선형 보간(linear interpolation)하여 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키는 단계일 수 있다.
상기 3차원 그래픽 인터페이스 장치는, 데이터를 저장하도록 구성되는 메모리; 및 메모리와 연결되어 얼굴 모델을 생성하도록 구성되는 프로세서를 포함하고, 상기 프로세서는, 기본 얼굴 표정에 해당하는 컬러 맵과 노멀 맵을 생성하고, 적어도 두개의 얼굴 표정 각각에 해당하는 컬러 맵과 노멀 맵을 생성하고, 얼굴 모델에 대한 UV 맵에 기반하여 분할된 복수의 영역을 포함하는 마스크 맵을 생성하고, 얼굴 모델에 대해서 적어도 두개의 얼굴 표정 중 어느 하나에 관련된 몰프 타겟(Morph Target)이 몰핑되면 컬러 맵들과 노멀 맵들, 및 마스크 맵에 기반하여 몰프 타겟에 관련된 얼굴 모델의 텍스처를 변화시키도록 구성된다.
본 발명의 특징에 따르면, 적어도 두개의 얼굴 표정은, 얼굴 근육이 수축되는 제1 얼굴 표정 및 상기 얼굴 근육이 확장되는 제2 얼굴 표정을 포함할 수 있다.
본 발명의 다른 특징에 따르면, 프로세서는, 적어도 두개의 얼굴 표정 각각에 관련된 복수의 AU(Action Unit) 및 복수의 영역 중 복수의 AU 각각에 관련된 적어도 하나의 영역을 대응시킨 데이터를 메모리에 저장하도록 구성될 수 있다.
본 발명의 또 다른 특징에 따르면, 프로세서는, 저장된 데이터를 이용하여 몰프 타겟에 관련된 적어도 하나의 AU에 대응하는 적어도 하나의 영역 및 얼굴 표정을 결정하고, 결정된 얼굴 표정의 컬러 맵과 노멀 맵을 이용하여 결정된 적어도 하나의 영역의 텍스처를 변화시키도록 구성될 수 있다.
본 발명의 또 다른 특징에 따르면, 프로세서는, 컬러 맵들 및 노멀 맵들을 기반으로 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키는 셰이더를 이용하여, 결정된 적어도 하나의 영역의 텍스처를 변화시키도록 구성될 수 있다.
본 발명의 또 다른 특징에 따르면, 프로세서는, 결정된 얼굴 표정의 컬러 맵과 노멀 맵을 소스로 하여 셰이더를 통해 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키도록 구성될 수 있다.
본 발명의 또 다른 특징에 따르면, 프로세서는, 텍스처를 결정된 얼굴 표정의 컬러 맵과 노멀 맵으로 선형 보간하여 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키도록 구성될 수 있다.
기타 실시예의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명은 디지털 휴먼의 표정 변화에 따른 지오메트리의 형태 변화뿐만 아니라 지오메트리만으로 표현하기 어려운 미세 주름의 형성, 움직임, 및 피부의 당김과 수축과 같은 상세한 표현이 가능하고, 표정 변화에 의한 피부 혈류량의 미세한 변화 등을 함께 표현할 수 있어 디지털 휴먼을 표현하는데 있어 사실성을 대폭 향상시킬 수 있다.
또한, 본 발명은 적어도 두개의 얼굴 표정에 관련된 컬러 맵과 노멀 맵을 셰이더의 소스로서 이용함으로써, 최소한의 소스를 이용하여 최대한의 효과를 얻을 수 있다.
효과는 이상에서 예시한 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.
도 1은 본 발명의 일 실시예에 따른 3차원 그래픽 인터페이스 장치의 구성을 나타낸 블록도이다.
도 2는 본 발명의 실시예에 따른 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법을 설명하기 위한 흐름도이다.
도 3 및 도 4는 본 발명의 실시예에 따른 기본 얼굴 표정, 및 적어도 두개의 얼굴 표정 각각에 대한 컬러 맵 및 노멀 맵을 생성하는 방법을 설명하기 위한 예시도들이다.
도 5는 본 발명의 실시예에 따른 마스크 맵의 예시도이다.
도 6 내지 도 8은 본 발명의 실시예에 따른 얼굴 모델의 특정 영역에 해당하는 텍스처를 변화시키기 위해 사용되는 데이터를 설명하기 위한 예시도들이다.
도 9는 종래의 방식을 이용하여 텍스처를 표현한 결과 형상과 본 발명의 실시예에 따라 변화된 텍스처를 표현한 결과 형상의 예시도이다.
도 2는 본 발명의 실시예에 따른 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법을 설명하기 위한 흐름도이다.
도 3 및 도 4는 본 발명의 실시예에 따른 기본 얼굴 표정, 및 적어도 두개의 얼굴 표정 각각에 대한 컬러 맵 및 노멀 맵을 생성하는 방법을 설명하기 위한 예시도들이다.
도 5는 본 발명의 실시예에 따른 마스크 맵의 예시도이다.
도 6 내지 도 8은 본 발명의 실시예에 따른 얼굴 모델의 특정 영역에 해당하는 텍스처를 변화시키기 위해 사용되는 데이터를 설명하기 위한 예시도들이다.
도 9는 종래의 방식을 이용하여 텍스처를 표현한 결과 형상과 본 발명의 실시예에 따라 변화된 텍스처를 표현한 결과 형상의 예시도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조부호가 사용될 수 있다.
본 문서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는(3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 문서에서 사용된 "제1," "제2," "첫째," 또는 "둘째," 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제1 사용자 기기와 제2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~ 를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것 만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된)프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 문서에서 사용된 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시예들을 배제하도록 해석될 수 없다.
본 발명의 여러 실시예들의 각각 특징들이 부분적으로 또는 전체적으로 서로 결합 또는 조합 가능하며, 당업자가 충분히 이해할 수 있듯이 기술적으로 다양한 연동 및 구동이 가능하며, 각 실시예들이 서로에 대하여 독립적으로 실시 가능할 수도 있고 연관 관계로 함께 실시 가능할 수도 있다.
본 명세서의 해석의 명확함을 위해, 이하에서는 본 명세서에서 사용되는 용어들을 정의하기로 한다.
본 명세서에서 FACS(Facial Action Coding System)는 사람의 해부학적 얼굴 근육을 기반으로 사람의 얼굴 표정을 분석하는 방법으로서, 단위 표정(Action Unit) 및 얼굴 행동 설명자(facial action descriptors)로 구성된다.
본 명세서에서 단위 표정(Action Unit)은 개별 얼굴 근육 또는 복수의 얼굴 근육의 조합에 의해 형성되는 표정의 기본 단위를 의미한다. 얼굴 표정은 단위 표정 단독으로 또는 둘 이상의 단위 표정의 조합에 의해 이루어질 수 있다.
본 명세서에서 몰핑(Morphing, Blend Shape)은 기본 표정 모델(예: 무표정)과 다른 표정의 모델 간의 선형 보간 등을 통해 새로운 표정의 형상을 생성할 수 있는 기술을 의미한다.
본 명세서에서 지오메트리(Geometry)는 점, 선, 및 면[폴리곤(polygon)]을 이용하여 3차원 모델링을 통해 만들어진 3차원 면인 메쉬(Mesh)로 표현된 3차원 객체를 의미한다.
본 명세서에서 얼굴 모델은 지오메트리로 이루어진 머리 객체를 의미한다. 이 얼굴 모델은 기본 표정, 혹은 FACS 상의 각 얼굴 표정 모습을 하고 있다.
본 명세서에서 컬러 맵(Color map)은 표면 재질의 색을 결정하기 위해 사용되는 데이터이고, 노멀 맵(Normal map)은 모델의 지오메트리만으로 표현할 수 없는 표면 재질의 작은 디테일을 표현하기 위해 사용되는 데이터를 의미한다.
본 명세서에서 UV 맵은 텍스처 매핑을 위해 2D 이미지를 3D 모델의 표면에 투영하는 3D 모델링 프로세스에서 사용되는 3D 모델의 표면, 예를 들면 전개도에 해당하는 데이터를 의미한다.
이하, 첨부된 도면을 참조하여 본 발명의 다양한 실시예들을 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 3차원 그래픽 인터페이스 장치의 구성을 나타낸 블록도이다.
도 1을 참조하면, 3차원 그래픽 인터페이스 장치(100)는 메모리 인터페이스(110), 하나 이상의 프로세서(120) 및 주변 인터페이스(130)를 포함할 수 있다. 3차원 그래픽 인터페이스 장치(100) 내의 다양한 컴포넌트들은 하나 이상의 통신 버스 또는 신호 라인에 의해 연결될 수 있다.
메모리 인터페이스(110)는 메모리(150)에 연결되어 프로세서(120)로 다양한 데이터를 전할 수 있다. 여기서, 메모리(150)는 플래시 메모리 타입, 하드디스크 타입, 멀티미디어 카드 마이크로 타입, 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램, SRAM, 롬, EEPROM, PROM, 네트워크 저장 스토리지, 클라우드, 블록체인 데이터베이스 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
다양한 실시예에서, 메모리(150)는 운영 체제(151), 통신 모듈(152), 그래픽 사용자 인터페이스 모듈(GUI)(153), 센서 처리 모듈(154), 전화 모듈(155) 및 애플리케이션 모듈(156) 중 적어도 하나 이상을 저장할 수 있다. 구체적으로, 운영 체제(151)는 기본 시스템 서비스를 처리하기 위한 명령어 및 하드웨어 작업들을 수행하기 위한 명령어를 포함할 수 있다. 통신 모듈(152)은 다른 하나 이상의 디바이스, 컴퓨터 및 서버 중 적어도 하나와 통신할 수 있다. 그래픽 사용자 인터페이스 모듈(GUI)(153)은 그래픽 사용자 인터페이스를 처리할 수 있다. 센서 처리 모듈(154)은 센서 관련 기능(예를 들어, 하나 이상의 마이크(192)를 이용하여 수신된 음성 입력을 처리함)을 처리할 수 있다. 전화 모듈(155)은 전화 관련 기능을 처리할 수 있다. 애플리케이션 모듈(156)은 사용자 애플리케이션의 다양한 기능들, 예컨대 전자 메시징, 웹 브라우징, 미디어 처리, 탐색, 이미징, 기타 프로세스 기능을 수행할 수 있다. 아울러, 3차원 그래픽 인터페이스 장치(100)는 메모리(150)에 어느 한 종류의 서비스와 연관된 하나 이상의 소프트웨어 애플리케이션(156-1, 156-2)(예. 팬미팅 어플리케이션)을 저장할 수 있다.
다양한 실시예에서, 메모리(150)는 디지털 어시스턴트 클라이언트 모듈(157)(이하, DA 클라이언트 모듈)을 저장할 수 있으며, 그에 따라 디지털 어시스턴트의 클라이언트 측의 기능을 수행하기 위한 명령어 및 다양한 사용자 데이터(158)(예. 사용자 맞춤형 어휘 데이터, 선호도 데이터, 사용자의 전자 주소록, 할 일 목록, 쇼핑 리스트 등과 같은 기타 데이터)를 저장할 수 있다.
한편, DA 클라이언트 모듈(157)은 3차원 그래픽 인터페이스 장치(100)에 구비된 다양한 사용자 인터페이스(예. I/O 서브시스템(140))를 통해 사용자의 음성 입력, 텍스트 입력, 터치 입력 및/또는 제스처 입력을 획득할 수 있다.
또한, DA 클라이언트 모듈(157)은 시청각적, 촉각적 형태의 데이터를 출력할 수 있다. 예를 들어, DA 클라이언트 모듈(157)은 음성, 소리, 알림, 텍스트 메시지, 메뉴, 그래픽, 비디오, 애니메이션 및 진동 중 적어도 둘 하나 이상의 조합으로 이루어진 데이터를 출력할 수 있다. 아울러, DA 클라이언트 모듈(157)은 통신 서브시스템(180)을 이용하여 디지털 어시스턴트 서버(미도시)와 통신할 수 있다.
다양한 실시예에서, DA 클라이언트 모듈(157)은 사용자 입력과 연관된 상황(context)을 구성하기 위하여 다양한 센서, 서브시스템 및 주변 디바이스로부터 3차원 그래픽 인터페이스 장치(100)의 주변 환경에 대한 추가 정보를 수집할 수 있다. 예를 들어, DA 클라이언트 모듈(157)은 사용자 입력과 함께 상황 정보를 디지털 어시스턴트 서버에 제공하여 사용자의 의도를 추론할 수 있다. 여기서, 사용자 입력에 동반될 수 있는 상황 정보는 센서 정보, 예를 들어, 광(lighting), 주변 소음, 주변 온도, 주변 환경의 이미지, 비디오 등을 포함할 수 있다. 다른 예를 들어, 상황 정보는 3차원 그래픽 인터페이스 장치(100)의 물리적 상태(예. 디바이스 배향, 디바이스 위치, 디바이스 온도, 전력 레벨, 속도, 가속도, 모션 패턴, 셀룰러 신호 강도 등)을 포함할 수 있다. 또 다른 예를 들어, 상황 정보는 3차원 그래픽 인터페이스 장치(100)의 소프트웨어 상태에 관련된 정보(예. 3차원 그래픽 인터페이스 장치(100)에서 실행 중인 프로세스, 설치된 프로그램, 과거 및 현재 네트워크 활동성, 백그라운드 서비스, 오류 로그, 리소스 사용 등)를 포함할 수 있다.
다양한 실시예에서, 메모리(150)는 추가 또는 삭제된 명령어를 포함할 수 있으며, 나아가 3차원 그래픽 인터페이스 장치(100)도 도 1에 도시된 구성 외에 추가 구성을 포함하거나, 일부 구성을 제외할 수도 있다.
프로세서(120)는 3차원 그래픽 인터페이스 장치(100)의 전반적인 동작을 제어할 수 있으며, 메모리(150)에 저장된 어플리케이션 또는 프로그램을 구동하여 얼굴 모델의 특정 영역에 대한 텍스처를 변화시키기 위한 다양한 명령들을 수행할 수 있다.
프로세서(120)는 CPU(Central Processing Unit)나 AP(Application Processor)와 같은 연산 장치에 해당할 수 있다. 또한, 프로세서(120)는 NPU(Neural Processing Unit)과 같은 다양한 연산 장치가 통합된 SoC(System on Chip)와 같은 통합 칩(Integrated Chip (IC))의 형태로 구현될 수 있다.
다양한 실시예에서, 프로세서(120)는 얼굴 근육의 확장 및 수축 각각에 관련된 얼굴 표정에 대한 컬러 맵 및 노멀 맵을 생성하고, 얼굴 모델의 UV 맵에 기반으로 하는 복수의 영역이 포함된 마스크 맵을 생성하며, 얼굴 모델에 대해서 확장 및 수축 중 어느 하나의 얼굴 표정에 관련된 몰프 타겟이 몰핑되면 생성된 컬러 맵 및 노멀 맵, 및 마스크 맵에 기반하여 몰프 타겟에 관련된 얼굴 모델의 텍스처를 변화시킬 수 있다.
주변 인터페이스(130)는 서브 시스템 및 주변 디바이스와 연결되어, 3차원 그래픽 인터페이스 장치(100)가 다양한 기능을 수행할 수 있도록 데이터를 제공해 줄 수 있다. 여기서, 3차원 그래픽 인터페이스 장치(100)가 어떠한 기능을 수행한다는 것은 프로세서(120)에 의해 수행되는 것으로 이해될 수 있다.
다양한 실시예에서, 3차원 그래픽 인터페이스 장치(100)는 주변 인터페이스(130)와 연결된 통신 서브 시스템(180)을 포함할 수 있다. 통신 서브 시스템(180)은 하나 이상의 유/무선 네트워크로 구성되며, 다양한 통신 포트, 무선 주파수 송수신기, 광학 송수신기를 포함할 수 있다.
다양한 실시예에서, 3차원 그래픽 인터페이스 장치(100)는 주변 인터페이스(130)와 연결된 I/O 서브시스템(140)을 포함할 수 있다. 예를 들어, I/O 서브시스템(140)은 기타 입력 제어기(들)(142)를 통해 3차원 그래픽 인터페이스 장치(100)에 포함된 기타 입력/제어 디바이스(144)를 제어할 수 있다. 일 예로서, 기타 입력 제어기(들)(142)은 하나 이상의 버튼, 로커 스위치(rocker switches), 썸 휠(thumb-wheel), 적외선 포트, USB 포트 및 스타일러스 등과 같은 포인터 디바이스를 제어할 수 있다.
이하에서는 3차원 그래픽 인터페이스 장치(100)에서 수행되는 디지털 휴먼의 표정 변화에 따라 피부 텍스처의 색과 데이터를 변화시키기 위한 방법에 대해서 도 2 내지 도 7을 참조하여 설명하도록 한다.
도 2는 본 발명의 실시예에 따른 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법을 설명하기 위한 흐름도이다. 제시된 실시예에서 설명되는 동작들은 3차원 그래픽 인터페이스 장치(100)의 프로세서(120)에 의해서 수행될 수 있다.
도 2를 참조하면, 프로세서(120)는 기본 얼굴 표정에 해당하는 컬러 맵과 노멀 맵을 생성하고(S200), 적어도 두개의 얼굴 표정 각각에 해당하는 컬러 맵과 노멀 맵을 생성한다(S210). 이에 대해서, 도 3 및 도 4를 참조하여 상세하게 설명하도록 한다.
도 3 및 도 4는 본 발명의 실시예에 따른 기본 얼굴 표정, 및 적어도 두개의 얼굴 표정 각각에 대한 컬러 맵 및 노멀 맵을 생성하는 방법을 설명하기 위한 예시도들이다.
도 3을 참조하면, 사람의 기본 얼굴 표정을 촬영한 기본 얼굴 이미지(300), 사람의 얼굴 근육을 수축하여 만들어지는 제1 얼굴 표정을 촬영한 제1 얼굴 이미지(310) 및 사람의 얼굴 근육을 확장하여 만들어지는 제2 얼굴 표정을 촬영한 제2 얼굴 이미지(320)가 제공된다. 여기서, 제1 얼굴 표정은 얼굴 근육을 최대한 얼굴 안쪽으로 찌푸린 표정(Scrunch)를 의미하고, 제2 얼굴 표정은 얼굴 근육을 최대한 얼굴 바깥쪽으로 펼친 표정(Scream)을 의미할 수 있다. 이러한 얼굴 이미지들은 사람의 얼굴을 3D 스캐닝하거나, 카메라 촬영을 통해 획득될 수 있다.
프로세서(120)는 기본 얼굴 이미지에 대한 컬러 맵(302)과 노멀 맵(304)을 생성한다. 기본 얼굴 이미지에 대한 컬러 맵(302)과 노멀 맵(304)은 도 4와 같이 나타낼 수 있다. 도 4를 참조하면, 도 4의 (a)는 기본 얼굴 이미지(300)에 대한 컬러 맵(302)의 예시를 나타내고, 도 4의 (b)는 기본 얼굴 이미지(300)에 대한 노멀 맵(304)의 예시를 나타낸다.
이어서, 프로세서(120)는 제1 얼굴 이미지(310)에 대한 컬러 맵(312)과 노멀 맵(314)을 생성하고, 제2 얼굴 이미지(320)에 대한 컬러 맵(322)과 노멀 맵(324)을 생성한다. 도 4를 참조하면, 도 4의 (c)는 제1 얼굴 이미지(310)에 대한 컬러 맵(312)의 예시를 나타내고, 도 4의 (d)는 제1 얼굴 이미지(310)에 대한 노멀 맵(314)의 예시를 나타낸다. 또한, 도 4의 (e)는 제2 얼굴 이미지(320)에 대한 컬러 맵(322)의 예시를 나타내고, 도 4의 (f)는 제2 얼굴 이미지(320)에 대한 노멀 맵(324)의 예시를 나타낸다.
다시 도 2를 참조하면, 프로세서(120)는 얼굴 모델에 대한 UV 맵에 기반하여 분할된 복수의 영역을 포함하는 마스크 맵을 생성한다(S220). 이에 대해서, 도 5를 참조하여 상세하게 설명하도록 한다.
도 5는 본 발명의 실시예에 따른 마스크 맵의 예시도이다.
도 5를 참조하면, 마스크 맵(500)은 얼굴 모델의 얼굴 영역을 복수개로 분할한 복수의 영역을 포함할 수 있다. 여기서, 복수의 영역은 이마 영역(510), 눈 영역(520), 코 영역(530), 광대 영역(540), 입 영역(550), 뺨 영역(560) 및 턱 영역(570)을 포함할 수 있다.
이러한 복수의 영역은 다양한 색상 영역을 포함하고, 다양한 색상 영역은 FACS의 각 AU에 따라 얼굴 근육이 움직이는 영역으로 분할된 적어도 하나의 영역일 수 있다. 예를 들어, 이마 영역(510)은 제1 얼굴 표정(수축(Scrunch))에 관련된 AU(예: Brow lowerer 등) 및 제2 얼굴 표정(확장(Scream))에 관련된 AU(예: Inner brow raiser, Outer brow raiser 등) 각각에 따라 이마 영역(510)의 중앙에 해당하는 Green 영역 및 이마 영역(520)의 측면에 해당하는 Red 영역을 포함할 수 있다.
이어서, 눈 영역(520)은 제1 얼굴 표정에 관련된 AU(예: Lid tightener 등)에 따른 Blue 영역을 포함하고, 코 영역(530)은 제1 얼굴 표정에 관련된 AU(예: Nose wrinkler 등)에 따른 Orange 영역을 포함하며, 광대 영역(540)은 제1 얼굴 표정에 관련된 AU(예: Cheek raiser 등)에 따른 Green 영역을 포함할 수 있다.
나아가, 입 영역(550)은 제1 얼굴 표정에 관련된 AU(예: Lip pucker, Lip funneler 등) 및 제2 얼굴 표정에 관련된 AU(예: Lip corner puller, Dimpler, Jaw drop 등) 각각에 따른 Blue 영역을 포함하고, 뺨 영역(560)은 제2 얼굴 표정에 관련된 AU(예: Upper lip raiser, Nasolabial deepener, Lip corner puller, Dimpler, Jaw drop 등)에 따른 Purple 영역을 포함할 수 있다. 턱 영역(570)은 제1 얼굴 표정에 관련된 AU(예: Chin raiser, Lip pucker, Lip funneler 등) 및 제2 얼굴 표정에 관련된 AU(예: Dimpler, Jaw drop 등) 각각에 따라 턱 영역의 중앙에 해당하는 Red 영역 및 턱 영역의 측면에 해당하는 Green 영역을 포함할 수 있다.
프로세서(120)는 이와 같은 마스크 맵을 이용하여 얼굴 모델의 특정 영역에 해당하는 텍스처를 변화시키기 위해 사용되는 데이터를 저장할 수 있다. 구체적으로, 프로세서(120)는 적어도 두개의 얼굴 표정(즉, 제1 얼굴 표정 및 제2 얼굴 표정) 각각에 관련된 복수의 AU(예: Inner brow raiser, Outer brow raiser, Brow lowerer, Cheek raiser, Lid tightener, Nose wrinkle, Upper lip raiser, Nasolabial deepener, Lip corner puller, Dimpler, Chin raiser, Lip pucker, Lip funneler, Jaw drop 등)과, 마스크 맵의 복수의 영역 중 복수의 AU 각각에 관련된 적어도 하나의 영역(즉, 다양한 색상 영역)을 대응시켜 저장할 수 있다. 이에 대해서 도 6 내지 도 8을 참조하여 상세하게 설명하도록 한다.
도 6 내지 도 8은 본 발명의 실시예에 따른 얼굴 모델의 특정 영역에 해당하는 텍스처를 변화시키기 위해 사용되는 데이터를 설명하기 위한 예시도들이다.
도 6을 참조하면, 프로세서(120)는 도 6의 (a)와 같이 얼굴을 수축하여 생성된 제1 얼굴 표정(Scrunch)에 관련된 AU인 Brow lowerer와 이마 영역(510)의 Green 영역, 혹은 Green 영역 및 Red 영역을 대응시키고, 제2 얼굴 표정(Scream)에 관련된 AU인 Inner brow raiser와 이마 영역(510)의 Green 영역을 대응시키며, 제2 얼굴 표정(Scream)에 관련된 AU인 Outer brow raiser와 이마 영역(510)의 Red 영역을 대응시킨 데이터를 생성할 수 있다. 이와 같이 생성된 데이터는 도 6의 (b)와 같이 테이블 형식으로 나타낼 수 있으나, 이에 한정되지 않는다.
도 7을 참조하면, 프로세서(120)는 도 7의 (a)와 같이 제1 얼굴 표정(Scrunch)에 관련된 AU인 Lid tightener와 눈 영역(520)의 Blue 영역을 대응시키고, 제1 얼굴 표정(Scrunch)에 관련된 AU인 Nose wrinkler와 코 영역(530)의 Orange 영역을 대응시키며, 제1 얼굴 표정(Scrunch)에 관련된 AU인 Cheek raiser와 광대 영역(540)의 Green 영역을 대응시킨 데이터를 생성할 수 있다. 이와 같이 생성된 데이터는 도 7의 (b)와 같이 테이블 형식으로 나타낼 수 있다.
도 8을 참조하면, 프로세서(120)는 도 8의 (a)와 같이 제1 얼굴 표정(Scrunch)에 관련된 AU인 Chin raiser와 턱 영역(570)의 Red 영역을 대응시키고, 제1 얼굴 표정(Scrunch)에 관련된 AU인 Lip pucker와, 입 영역(550)의 Blue 영역 및 턱 영역(570)의 Red 영역을 대응시킨 데이터를 생성할 수 있다. 이어서, 프로세서(120)는 제1 얼굴 표정(Scrunch)에 관련된 AU인 Lip funneler와 입 영역(550)의 Blue 영역 및 턱 영역(570)의 Red 영역을 대응시킨 데이터를 생성할 수 있다. 나아가, 프로세서(120)는 제2 얼굴 표정(Scream)에 관련된 AU인 Upper lip raiser와 뺨 영역(560)의 Purple 영역을 대응시키고, 제2 얼굴 표정(Scream)에 관련된 AU인 Nasolabial deepener와 뺨 영역(560)의 Purple 영역을 대응시키며, 제2 얼굴 표정(Scream)에 관련된 AU인 Lip corner puller와, 뺨 영역(560)의 Purple 영역 및 입 영역(550)의 blue 영역을 대응시킨 데이터를 생성할 수 있다, 이어서, 프로세서(120)는 제2 얼굴 표정(Scream)에 관련된 AU인 Dimpler와, 뺨 영역(560)의 Purple 영역, 턱 영역(570)의 Green 영역 및 입 영역(550)의 blue 영역을 대응시키고, 제2 얼굴 표정(Scream)에 관련된 AU인 Jaw drop과, 뺨 영역(560)의 Purple 영역, 턱 영역(570)의 Green 영역, 입 영역(550)의 blue 영역 및 턱 영역(570)의 Red 영역을 대응시킨 데이터를 생성할 수 있다. 이와 같이 생성된 데이터는 도 8의 (b)와 같은 테이블 형식으로 나타낼 수 있다.
프로세서(120)는 도 6 내지 도 8에서 설명한 바와 같이 생성된 데이터를 메모리(150)에 저장하여 후술하는 얼굴 모델의 텍스처를 변화시키기 위해 사용할 수 있다.
다시 도 2를 참조하면, 프로세서(120)는 얼굴 모델에 대한 몰프 타겟을 몰핑하고(S230), 생성된 컬러 맵들과 노멀 맵들, 및 마스크 맵에 기반하여 몰프 타겟에 관련된 얼굴 모델의 텍스처를 변화시킨다(S240).
몰프 타겟에 관련된 얼굴 모델의 텍스처를 변화시키기 위해 프로세서(120)는 생성된 컬러 맵들, 노멀 맵들 및 마스크 맵을 기반으로 얼굴 모델의 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키는 셰이더(shader)를 이용할 수 있다.
구체적으로, 프로세서(120)는 얼굴 모델에 대한 몰프 타겟이 몰핑되면 메모리(150)에 저장된 데이터를 이용하여 몰프 타겟에 관련된 적어도 하나의 AU에 대응하는 적어도 하나의 영역 및 얼굴 표정을 결정한다. 예를 들어, 몰프 타겟이 'Inner brow raiser'에 관련되는 경우 프로세서(120)는 도 6에서 설명한 데이터를 참조하여 'Inner brow raiser'에 대응하는 이마 영역(510)의 Green 영역 및 제2 얼굴 표정(Scream)을 결정할 수 있다.
이어서, 프로세서(120)는 결정된 얼굴 표정의 컬러 맵과 노멀 맵을 이용하여 결정된 적어도 하나의 영역의 텍스처를 변화시키는데, 이를 위해 상술한 셰이더가 이용될 수 있다.
구체적으로, 프로세서(120)는 결정된 얼굴 표정의 컬러 맵과 노멀 맵 및 기본 얼굴 표정에 관련된 컬러 맵과 노멀 맵을 소스로 하여 셰이더를 통해 적어도 하나의 영역의 색상 및 표면 재질 중 적어도 하나를 변화시킬 수 있다. 예를 들어, 프로세서(120)는 Inner brow raiser에 대응하는 제2 얼굴 표정(Scream)에 관련된 제2 얼굴 이미지(310)의 컬러 맵(312)과 노멀 맵(314), 및 기본 얼굴 이미지의 컬러 맵과 노멀 맵을 소스로 하여 셰이더를 통해 Green 영역에 해당하는 얼굴 모델의 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시킬 수 있다.
얼굴 모델의 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키기 위해 프로세서(120)는 셰이더를 통해 적어도 하나의 영역에 해당하는 얼굴 모델의 텍스처를 결정된 얼굴 표정의 컬러 맵 및 노멀 맵으로 선형 보간(linear interpolation)하여 해당 텍스처의 기본 값을 선형 보간을 통해 계산된 값으로 변경할 수 있다. 예를 들어, 프로세서(120)는 Green 영역에 해당하는 얼굴 모델의 텍스처를 제2 얼굴 표정(Scream)에 관련된 제2 얼굴 이미지(310)의 컬러 맵(312)과 노멀 맵(314)으로 선형 보간하여 해당 텍스처의 기본 색상 값을 선형 보간을 통해 계산된 값으로 변경하거나, 해당 텍스처의 기본 표면 재질 값을 선형 보간을 통해 계산된 값으로 변경할 수 있다. 다양한 실시예에서는 프로세서(120)는 해당 텍스처의 기본 색상 값 및 기본 표면 재질 값을 선형 보간을 통해 계산된 색상값 및 표면 재질값으로 변경할 수도 있다.
이를 통해, 본 발명의 실시예에 따른 방법은 몰핑에 의한 얼굴 모델의 형태 변화뿐만 아니라, 지오메트리만으로 표현하기 어려운 미세 주름의 형성 및 움직임, 피부의 당김과 수축과 같은 상세한 표현이 가능하고, 표정 변화에 의한 피부 혈류랑의 미세한 변화 등을 함께 표현할 수 있어 디지털 휴먼을 표현하는데 있어 사실성을 대폭 향상시킬 수 있다.
이하에서는 본 실시예에 따라 변화된 텍스처에 관한 결과 형상을 도 9를 참조하여 설명하도록 한다.
도 9는 종래의 방식을 이용하여 텍스처를 표현한 결과 형상과 본 발명의 실시예에 따라 변화된 텍스처를 표현한 결과 형상의 예시도이다.
도 9를 참조하면, 도 9의 (a)는 종래의 방식을 이용하여 얼굴 모델의 특정 영역에 대한 텍스처를 변화시킨 결과 형상(900)을 나타내고, 도 9의 (b)는 본 실시예에 따라 얼굴 모델의 특정 영역에 대한 텍스처를 변화시킨 결과 형상(910)을 나타낸다.
구체적으로, 프로세서(120)는 얼굴 모델에 대한 몰프 타겟을 몰핑하고, 도 2를 참조하여 상술한 컬러 맵들과 노멀 맵들 및 마스크 맵에 기반하여 몰프 타겟에 관련된 적어도 하나의 AU에 대응하는 적어도 하나의 영역의 텍스처를 변화시킨다.
예를 들어, 몰프 타겟이 'Brow lowerer'와 'Nose wrinkler'와 같은 AU에 대응한다고 가정하면 프로세서(120)는 도 6 내지 도 8을 참조하여 설명한 데이터를 이용하여 'Brow lowerer'에 대응하는 이마 영역(510)의 Green 영역과 Red 영역 및 제1 얼굴 표정(Scrunch)을 결정하고, 'Nose wrinkler'에 대응하는 코 영역(530)의 Orange 영역 및 제1 얼굴 표정(Scrunch)을 결정할 수 있다. 프로세서(120)는 제1 얼굴 표정(Scrunch)에 관련된 컬러 맵(312)과 노멀 맵(314), 및 기본 얼굴 표정에 관련된 컬러 맵(302)과 노멀 맵(304)을 소스로 하여 셰이더를 통해 Green 영역과 Red 영역에 해당하는 얼굴 모델의 텍스처 및 Orange 영역에 해당하는 얼굴 모델의 텍스처를 변화시킬 수 있다.
이와 같이 수행된 본 실시예에 따른 결과 형상(910)은 Green 영역과 Red 영역에 해당하는 제1 영역(912) 및 Orange 영역에 해당하는 제2 영역(914)의 텍스처가 종래의 결과 형상(900)의 제1 영역(902)과 제2 영역(904)의 텍스처에 비해 미세한 피부 혈류량의 변화 및 미세 주름의 형성 및 움직임 등이 보다 상세하고 사실적으로 표현될 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 일 실시예들을 더욱 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것은 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형 실시될 수 있다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 3차원 그래픽 인터페이스 장치
110: 메모리 인터페이스 120: 프로세서
130: 주변 인터페이스 140: I/O 서브 시스템
142: 기타 입력 제어기
144: 기타 입력 제어 디바이스
150: 메모리 151: 운영 체제
152: 통신 모듈 153: GUI 모듈
154: 센서 처리 모듈 155: 전화 모듈
156: 애플리케이션들
156-1, 156-2: 애플리케이션
157: 디지털 어시스턴트 클라이언트 모듈
158: 사용자 데이터
180: 통신 서브 시스템
190: 오디오 서브 시스템
191: 스피커 192: 마이크
110: 메모리 인터페이스 120: 프로세서
130: 주변 인터페이스 140: I/O 서브 시스템
142: 기타 입력 제어기
144: 기타 입력 제어 디바이스
150: 메모리 151: 운영 체제
152: 통신 모듈 153: GUI 모듈
154: 센서 처리 모듈 155: 전화 모듈
156: 애플리케이션들
156-1, 156-2: 애플리케이션
157: 디지털 어시스턴트 클라이언트 모듈
158: 사용자 데이터
180: 통신 서브 시스템
190: 오디오 서브 시스템
191: 스피커 192: 마이크
Claims (14)
- 프로세서에 의해서 수행되는 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법에 있어서,
얼굴 근육의 움직임이 없는 기본 얼굴 표정에 해당하는 컬러 맵(color map)과 노멀 맵(normal map)을 생성하는 단계;
얼굴 근육이 수축되는 제1 얼굴 표정 및 상기 얼굴 근육이 확장되는 제2 얼굴 표정 각각에 해당하는 컬러 맵과 노멀 맵을 생성하는 단계;
3D 얼굴 모델의 표면 전개도에 해당하는 UV 맵에 기반하여, 얼굴 영역을 이마 영역, 눈 영역, 코 영역, 광대 영역, 입 영역, 뺨 영역 및 턱 영역으로 분할시킨 복수의 영역을 포함하는 마스크 맵(mask map)을 생성하는 단계;
상기 마스크 맵을 이용하여 상기 얼굴 모델의 특정 영역에 해당하는 텍스처를 변화시키기 위해 사용되는, 상기 제1 얼굴 표정 및 제2 얼굴 표정 각각에 관련된 복수의 AU(Action Unit) 및 상기 복수의 AU 별로 상기 복수의 영역 중 적어도 하나의 영역을 대응시킨 데이터를 저장하는 단계; 및
상기 얼굴 모델에 대해서 어느 하나의 새로운 얼굴 표정에 대응하는 몰프 타겟(Morph Target)이 몰핑되면, 상기 저장된 데이터를 이용하여 상기 몰프 타겟에 관련된 적어도 하나의 AU에 대응하며, 텍스처가 변화될 적어도 하나의 영역 및, 상기 영역에 대응되는 상기 제1 얼굴 표정 또는 상기 제2 얼굴 표정을 결정하는 단계;
상기 결정된 제1 얼굴 표정 또는 제2 얼굴 표정에 해당하는 컬러 맵과 노멀 맵에서 상기 결정된 적어도 하나의 영역에 해당하는 컬러 맵과 노멀 맵을 추출하는 단계;
상기 추출된 컬러 맵과 노멀 맵 및 상기 기본 얼굴 표정에 해당하는 컬러 맵과 노멀 맵을 소스로 하여 셰이더를 통해 상기 얼굴 모델에 대응되는 마스크 맵에서 상기 결정된 적어도 하나의 영역에 해당하는 텍스처의 색상 및 표면 재질을 변화시키는 단계; 를 포함하는, 피부 텍스처를 변화시키기 위한 방법. - 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 제1항에 있어서,
상기 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키는 단계는,
상기 텍스처를 상기 결정된 제1 얼굴 표정 또는 제2 얼굴 표정의 컬러 맵과 노멀 맵으로 선형 보간(linear interpolation)하여 상기 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키는 단계인, 피부 텍스처를 변화시키기 위한 방법. - 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 3차원 그래픽 인터페이스 장치에 있어서,
데이터를 저장하도록 구성되는 메모리; 및
상기 메모리와 연결되어 얼굴 모델을 생성하도록 구성되는 프로세서를 포함하고,
상기 프로세서는,
얼굴 근육의 움직임이 없는 기본 얼굴 표정에 해당하는 컬러 맵(color map)과 노멀 맵(normal map)을 생성하고,
얼굴 근육이 수축되는 제1 얼굴 표정 및 상기 얼굴 근육이 확장되는 제2 얼굴 표정 각각에 해당하는 컬러 맵과 노멀 맵을 생성하고,
3D 얼굴 모델의 표면 전개도에 해당하는 UV 맵에 기반하여, 얼굴 영역을 이마 영역, 눈 영역, 코 영역, 광대 영역, 입 영역, 뺨 영역 및 턱 영역으로 분할시킨 복수의 영역을 포함하는 마스크 맵(mask map)을 생성하고,
상기 마스크 맵을 이용하여 상기 얼굴 모델의 특정 영역에 해당하는 텍스처를 변화시키기 위해 사용되는, 상기 제1 얼굴 표정 및 상기 제2 얼굴 표정 각각에 관련된 복수의 AU(Action Unit) 및 상기 복수의 영역 중 상기 복수의 AU 별로 상기 복수의 영역 중 적어도 하나의 영역을 대응시킨 데이터를 저장하고,
상기 얼굴 모델에 대해서 어느 하나의 새로운 얼굴 표정에 대응하는 몰프 타겟(Morph Target)이 몰핑되면, 상기 저장된 데이터를 이용하여 상기 몰프 타겟에 관련된 적어도 하나의 AU에 대응하며, 텍스처가 변화될 적어도 하나의 영역 및, 상기 영역에 대응되는 상기 제1 얼굴 표정 또는 상기 제2 얼굴 표정을 결정하고,
상기 결정된 제1 얼굴 표정 또는 제2 얼굴 표정에 해당하는 컬러 맵과 노멀 맵에서 상기 결정된 적어도 하나의 영역에 해당하는 컬러 맵과 노멀 맵을 추출하는 단계;
상기 추출된 컬러 맵과 노멀 맵 및 상기 기본 얼굴 표정에 해당하는 컬러 맵과 노멀 맵을 소스로 하여 셰이더를 통해 상기 얼굴 모델에 대응되는 마스크 맵에서 상기 결정된 적어도 하나의 영역에 해당하는 텍스처의 색상 및 표면 재질을 변화시키도록 구성되는, 3차원 그래픽 인터페이스 장치. - 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 제8항에 있어서,
상기 프로세서는,
상기 텍스처를 상기 결정된 제1 얼굴 표정 또는 제2 얼굴 표정의 컬러 맵과 노멀 맵으로 선형 보간(linear interpolation)하여 상기 텍스처에 대한 색상 및 표면 재질 중 적어도 하나를 변화시키도록 구성되는, 3차원 그래픽 인터페이스 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220004548A KR102462947B1 (ko) | 2022-01-12 | 2022-01-12 | 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220004548A KR102462947B1 (ko) | 2022-01-12 | 2022-01-12 | 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102462947B1 true KR102462947B1 (ko) | 2022-11-04 |
Family
ID=84045290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220004548A KR102462947B1 (ko) | 2022-01-12 | 2022-01-12 | 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102462947B1 (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080050284A (ko) * | 2006-12-02 | 2008-06-05 | 한국전자통신연구원 | 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법 및장치 |
-
2022
- 2022-01-12 KR KR1020220004548A patent/KR102462947B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080050284A (ko) * | 2006-12-02 | 2008-06-05 | 한국전자통신연구원 | 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법 및장치 |
Non-Patent Citations (1)
Title |
---|
이돈수 외 3명, "얼굴 표정의 자동 인식을 통한 PDA 상에서의 3차원 얼굴 애니메이션", 정보처리학회 논문지, 2005.10.31.* * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11734844B2 (en) | 3D hand shape and pose estimation | |
US11062494B2 (en) | Electronic messaging utilizing animatable 3D models | |
KR102616010B1 (ko) | 포토리얼리스틱 실시간 인물 애니메이션을 위한 시스템 및 방법 | |
US11798261B2 (en) | Image face manipulation | |
WO2021003499A1 (en) | Textured mesh building | |
US11790621B2 (en) | Procedurally generating augmented reality content generators | |
US11783556B2 (en) | Augmented reality content generators including 3D data in a messaging system | |
US20220270332A1 (en) | Face animation synthesis | |
US11875600B2 (en) | Facial synthesis in augmented reality content for online communities | |
US20220319231A1 (en) | Facial synthesis for head turns in augmented reality content | |
WO2021051605A1 (zh) | 基于表情驱动的虚拟视频合成方法、装置及存储介质 | |
US20220101419A1 (en) | Ingestion pipeline for generating augmented reality content generators | |
US11741650B2 (en) | Advanced electronic messaging utilizing animatable 3D models | |
KR102462947B1 (ko) | 디지털 휴먼의 표정 변화에 따라 피부 텍스처를 변화시키기 위한 방법 및 이를 위한 3차원 그래픽 인터페이스 장치 | |
US20230154084A1 (en) | Messaging system with augmented reality makeup | |
KR102587198B1 (ko) | 조인트 기반 페이셜 리그를 생성하기 위한 방법 및 이를 위한 장치 | |
US20240029346A1 (en) | Single image three-dimensional hair reconstruction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |