KR20240030109A - 사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법 - Google Patents

사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법 Download PDF

Info

Publication number
KR20240030109A
KR20240030109A KR1020220108717A KR20220108717A KR20240030109A KR 20240030109 A KR20240030109 A KR 20240030109A KR 1020220108717 A KR1020220108717 A KR 1020220108717A KR 20220108717 A KR20220108717 A KR 20220108717A KR 20240030109 A KR20240030109 A KR 20240030109A
Authority
KR
South Korea
Prior art keywords
texture
tone
user
segment
face
Prior art date
Application number
KR1020220108717A
Other languages
English (en)
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 KR1020220108717A priority Critical patent/KR20240030109A/ko
Priority to PCT/KR2023/009425 priority patent/WO2024048960A1/ko
Publication of KR20240030109A publication Critical patent/KR20240030109A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/02Non-photorealistic rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/06Topological mapping of higher dimensional structures onto lower dimensional surfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration using histogram techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법을 제공한다. 본 개시의 일 실시 예에 따른 전자 장치는 사용자 얼굴에 관한 3차원 형상을 2차원 평면 상에 대응시킴으로써 복수의 로우(raw) 텍스쳐들을 획득하고, 기 복수의 로우 텍스쳐들의 피부 톤(tone)의 평균에 기초하여 복수의 로우 텍스쳐들의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행하고, 톤매칭된 복수의 로우 텍스쳐들 중 적어도 하나를 얼굴 내 특징 영역 별로 분할하여 복수의 텍스쳐 세그먼트들을 획득하고, 획득된 복수의 텍스쳐 세그먼트들 중 사용자 입력에 의해 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득하고, 조합 텍스쳐에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득할 수 있다.

Description

사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법{AN ELECTRONIC APPARATUS FOR PROVIDING AVATAR BASED ON AN USER'S FACE AND A METHOD FOR OPERATING THE SAME}
본 개시는 사용자 얼굴에 기초한 아바타(avatar)를 제공하는 전자 장치 및 그 동작 방법에 관한 것이다. 구체적으로, 본 개시는 사용자 얼굴에 관한 다양한 이미지에 기초하여 사용자 얼굴의 여러 영역의 세그먼트들을 재조합함으로써 아바타를 제공하되, 세그먼트들의 색상을 평활화함으로써 자연스러운 아바타를 제공하는 전자 장치 및 그 동작 방법을 제공한다.
아바타(avatar)는 현실 세계의 사용자를 나타내는 그래픽으로 표현된 가상의 그래픽 객체로서, 예를 들어 2차원 아이콘 또는 3차원 모델일 수 있다. 아바타는 사용자의 사진과 같이 간단한 것이거나 사용자의 외모, 표정, 활동, 관심 사항, 또는 인간성 등을 표현할 수 있는 그래픽 객체일 수 있다. 아바타는 또한 애니메이션으로 표현될 수 있다.
아바타는 게임, 소셜 네트워크 서비스(Social Network Service, SNS), 메신져 애플리케이션 서비스, 건강 애플리케이션, 또는 운동 애플리케이션에 널리 활용되고 있다. 게임 또는 소셜 네트워크 서비스 등에서 사용되는 아바타는 애플리케이션이 제공하는 서비스의 목적에 따라 아바타가 생성되고, 변경된다. 게임 또는 소셜 네트워크 서비스에서의 아바타는 사용자의 외모, 자세, 또는 표정과 관계없거나, 사용자와 비슷하지만 사용자가 원하는 대로 변경할 수 있는 기능을 제공한다. 예를 들어, 게임 또는 소셜 네트워크 서비스는 아바타의 의류, 액세서리, 아이템 등을 꾸밀 수 있는 기능을 제공한다.
메타버스 및 증강 현실(AR; Augmented Reality) 서비스 이용을 위한 아바타의 경우, 사용자 얼굴의 다양한 외형적 특성을 반영한 아바타를 제공하는 것은 사용자의 취향을 만족시키거나, 개인적 자아를 표현하는 수단이 될 수 있다. 또한, 사용자에게 현실과 유사한 경험을 제공하기 위해, 사용자 얼굴을 보다 자연스럽게 표현하고, 매일 변화하는 사용자의 얼굴 화장과 같은 얼굴 텍스쳐를 자유로이 표현할 수 있는 아바타를 제공할 필요가 있다.
상술한 기술적 과제를 해결하기 위하여 본 개시는 사용자 얼굴에 기초한 아바타를 제공하는 전자 장치를 제공한다. 본 개시의 일 실시 예에 따른 전자 장치는 메모리, 적어도 하나의 프로세서를 포함할 수 있다. 메모리는 적어도 하나의 명령어들(instructions)을 저장할 수 있다. 적어도 하나의 프로세서는 적어도 하나의 명령어들을 실행할 수 있다. 적어도 하나의 프로세서는 사용자 얼굴에 관한 3차원 형상을 2차원 평면 상에 대응시킴으로써 복수의 로우 텍스쳐들을 획득할 수 있다. 적어도 하나의 프로세서는 복수의 로우 텍스쳐들의 피부 톤(tone)의 평균에 기초하여 복수의 로우 텍스쳐들의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행할 수 있다. 적어도 하나의 프로세서는 톤매칭된 복수의 로우 텍스쳐들 중 적어도 하나를 얼굴 내 특징 영역 별로 분할하여 복수의 텍스쳐 세그먼트들을 획득할 수 있다. 적어도 하나의 프로세서는 획득된 복수의 텍스쳐 세그먼트들 중 사용자 입력에 의해 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득할 수 있다. 적어도 하나의 프로세서는 조합 텍스쳐에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득할 수 있다.
본 개시의 일 실시 예에 따른 방법은 사용자 얼굴에 기초한 아바타를 제공할 수 있다. 상기 방법은 사용자 얼굴에 관한 3차원 형상을 2차원 평면 상에 대응시킴으로써 복수의 로우(raw) 텍스쳐들을 획득하는 단계를 포함할 수 있다. 상기 방법은 복수의 로우 텍스쳐들의 피부 톤(tone)의 평균에 기초하여 복수의 로우 텍스쳐들의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행하는 단계를 포함할 수 있다. 상기 방법은 톤매칭된 복수의 로우 텍스쳐들 중 적어도 하나를 얼굴 내 특징 영역 별로 분할하여 복수의 텍스쳐 세그먼트들을 획득하는 단계를 포함할 수 있다. 상기 방법은 획득된 복수의 텍스쳐 세그먼트들 중 사용자 입력에 의해 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득하는 단계를 포함할 수 있다. 상기 방법은 조합 텍스쳐에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득하는 단계를 포함할 수 있다.
상술한 기술적 과제를 해결하기 위하여, 본 개시의 다른 실시 예는 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
본 개시는, 다음의 자세한 설명과 그에 수반되는 도면들의 결합으로 쉽게 이해될 수 있으며, 참조 번호(reference numerals)들은 구조적 구성요소(structural elements)를 의미한다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴에 기초한 아바타를 제공하는 동작을 도시한 개념도이다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 구성 요소를 도시한 블록도이다.
도 3은 본 개시의 일 실시 예에 따른 전자 장치의 동작 방법을 도시한 흐름도이다.
도 4a 및 도 4b는 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴에 대한 로우 텍스쳐를 획득하는 방법을 설명하기 위한 도면들이다.
도 5는 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴에 기초한 아바타를 제공하기 위해 사용자 얼굴과 관련된 로우 텍스쳐로부터 각각의 영역에 대응되는 복수의 세그먼트들을 분할하는 기준을 설명하기 위한 도면이다.
도 6은 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴에 기초하여 사용자 얼굴과 관련된 로우 텍스쳐들을 톤매칭하는 방법을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시 예에 따라 사용자 얼굴에 기초하여 사용자 얼굴과 관련된 로우 텍스쳐들을 톤매칭하는 전자 장치의 동작 방법을 도시한 흐름도이다.
도 8은 본 개시의 일 실시 예에 따라 사용자 얼굴에 기초하여 사용자 얼굴과 관련된 로우 텍스쳐들을 톤매칭하는 방법을 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴에 기초한 아바타를 제공하는 동작을 도시한 개념도이다.
도 10은 본 개시의 일 실시 예에 따라 사용자 얼굴 내 각각의 영역에 관한 데이터베이스에 기초하여 획득된 조합 텍스쳐를 평활화하는 전자 장치의 동작 방법을 도시한 흐름도이다.
도 11은 본 개시의 일 실시 예에 따른 전자 장치가 조합 텍스쳐를 평활화하는 방법을 구체적으로 설명하기 위한 도면이다.
도 12는 본 개시의 일 실시 예에 따른 전자 장치가 여러 사용자의 얼굴로부터 조합 텍스쳐를 획득하는 방법을 설명하기 위한 도면이다.
도 13은 본 개시의 일 실시 예에 따른 전자 장치가 평활화 텍스쳐에 기초하여 아바타를 획득하는 방법을 설명하기 위한 도면이다.
본 명세서의 실시예들에서 사용되는 용어는 본 개시의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 실시예의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다.
본 개시 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 본 명세서에 기재된 "..부", "..모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
본 개시에서 사용된 표현 "~하도록 구성된(또는 설정된)(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)를 의미할 수 있다.
또한, 본 개시에서 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
본 개시에서, '아바타(avatar)'는 현실 세계의 사용자를 나타내는 그래픽으로 표현된 가상의 그래픽 객체로서, 예를 들어 2차원 또는 3차원 아이콘, 캐릭터, 모델일 수 있다. 본 개시의 일 실시예에서, 아바타는 사용자의 사진과 같이 간단한 것이거나 사용자의 외모, 표정, 활동, 관심 사항, 또는 인간성 등을 표현하는 그래픽 객체 또는 애니메이션일 수 있다. 아바타는 예를 들어, 게임, 소셜 네트워크 서비스(Social Network Service, SNS), 메신져 애플리케이션 서비스, 건강 애플리케이션, 또는 운동 애플리케이션 등을 통해 제공될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.
이하에서는 도면을 참조하여 본 개시의 실시 예들을 상세하게 설명한다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴에 기초한 아바타를 제공하는 동작을 도시한 개념도이다.
도 1을 참조하면, 전자 장치는 사용자 얼굴을 포함하는 얼굴 이미지(10)를 획득할 수 있다. 일 실시 예에서, 얼굴 이미지(10)는 하나 또는 하나 이상의 복수 개로 구성될 수 있다.
얼굴 이미지(10)는 특정 사용자의 얼굴을 촬영한 이미지일 수 있다. 얼굴 이미지(10)는 두 눈, 코 및 입을 포함하는 사용자 얼굴의 정면을 촬영한 이미지일 수 있다.
얼굴 이미지(10)는 동일한 사용자의 얼굴을 다양한 환경에서 촬영한 이미지일 수 있다. 예를 들어, 얼굴 이미지(10)는 아침에 촬영된 제1 사용자의 얼굴에 대한 이미지 및 밤에 촬영된 제1 사용자의 얼굴에 대한 이미지를 포함할 수 있다. 시간에 따라 제1 사용자의 얼굴이 받는 빛의 양이 다르므로, 아침에 촬영된 제1 사용자의 얼굴의 피부 색상과 밤에 촬영된 제1 사용자의 얼굴의 피부 색상은 다를 수 있다.
다른 예로, 얼굴 이미지(10)는 화장 전의 제1 사용자의 얼굴에 대한 이미지 및 화장 후의 제1 사용자의 얼굴에 대한 이미지를 포함할 수 있다. 화장 여부에 따라 제1 사용자의 얼굴의 피부 톤은 다를 수 있다. 또한, 화장 방식의 차이에 따라서도 제1 사용자의 얼굴의 피부 톤은 다를 수 있다.
도 1에서, 사용자의 얼굴을 포함하는 얼굴 이미지(10)들은 사용자의 얼굴에 대한 3차원 형상이 촬영된 평면 이미지일 수 있다.
일 실시 예에서, 전자 장치는 얼굴 이미지(10)에 기초하여 복수의 로우(raw) 텍스쳐들(21, 22, 23, 24)을 획득할 수 있다. 일 실시 예에서, 전자 장치는 얼굴 이미지(10)로부터 획득된 3차원 형상에 기초하여 복수의 로우 텍스쳐들(21, 22, 23, 24)을 획득할 수 있다.
복수의 로우 텍스쳐들(21, 22, 23, 24)은 얼굴 이미지(10)에 기초하여 사용자 얼굴을 2차원 평면 상에 대응시킨 이미지일 수 있다. 복수의 로우 텍스쳐들(21, 22, 23, 24)은 얼굴 이미지(10) 내 사용자 얼굴에 관한 3차원 형상을 2차원 평면 상에 대응시킨 이미지일 수 있다. 예를 들어, 전자 장치는 UV 언래핑(UV unwrapping) 방식을 이용하여, 얼굴 이미지(10) 내 사용자 얼굴에 대한 3차원 형상을 2차원 평면 상에 펼쳐 2차원 이미지를 획득할 수 있다. 단, 3차원 형상에 기초하여 2차원 이미지를 획득하는 방식은 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다.
로우 텍스쳐는 얼굴 이미지(10)에 대응하여 획득될 수 있다. 즉, 획득된 얼굴 이미지(10)의 개수에 따라, 획득되는 로우 텍스쳐의 개수가 정해질 수 있다. 도 1에서는 4개의 로우 텍스쳐가 획득되는 것으로 도시되었으나, 이는 편의상 4개의 로우 텍스쳐가 그려졌을 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다.
로우 텍스쳐의 개수가 많을수록 피부 평활화의 표본 영역이 넓어지는 것이므로, 본 개시의 일 실시 예에 따른 전자 장치는 많은 개수의 로우 텍스쳐를 이용함으로써, 보다 평균적인 피부 톤으로 평활화를 수행할 수 있다. 단, 획득하는 로우 텍스쳐의 개수는 사용자 의도에 따라 정해질 수 있으므로, 본 개시의 기술적 사상은 이에 한정되지 않는다. 일 실시 예에서, 상기 방법의 평균적인 피부 톤은 로우 텍스쳐의 평균 피부 톤뿐만 아니라 로우 텍스쳐들 중 임의로 선택된 로우 텍스쳐의 평균 피부 톤으로 정의될 수 있다. 즉, 본 개시의 일 실시 예에 따른 전자 장치는 로우 텍스쳐들 중 사용자에 의해 임의로 선택된 로우 텍스쳐를 이용함으로써, 평균적인 피부 톤으로 평활화를 수행할 수 있다.
본 개시의 일 실시 예에 따른 아바타를 제공하는 전자 장치는, 복수의 로우 텍스쳐들(21, 22, 23, 24), 복수의 톤매칭 텍스쳐들(31, 32, 33, 34) 및 조합 텍스쳐(50)를 획득할 수 있다. 복수의 로우 텍스쳐들(21, 22, 23, 24), 복수의 톤매칭 텍스쳐들(31, 32, 33, 34) 및 조합 텍스쳐(50)는 각각 피부 톤 세그먼트, 눈 세그먼트, 코 세그먼트, 입 세그먼트를 포함할 수 있다. 예를 들어, 복수의 톤매칭 텍스쳐들 중 제1 톤매칭 텍스쳐(31)는 제1 톤매칭 피부 톤 세그먼트(41_4), 제1 톤매칭 눈 세그먼트(41_1), 제1 톤매칭 코 세그먼트(41_2) 및 제1 톤매칭 입 세그먼트(41_3)를 포함할 수 있다. 각각의 텍스쳐들을 세그먼트들로 분할하는 기준 영역에 관하여 도 5에서 설명한다.
피부 톤 세그먼트는 대응되는 얼굴 이미지에 포함된 피부 톤에 대한 정보를 포함할 수 있다. 피부 톤(tone)은 피부의 색상을 의미할 수 있다. 구체적으로, 피부 톤은 피부의 색상, 채도, 명도 중 적어도 하나를 포함하는 개념일 수 있다.
눈 세그먼트는 대응하는 얼굴 이미지로부터 획득된 사용자의 눈 모양, 길이, 깊이 등 형상에 관한 데이터를 포함할 수 있다. 또한, 눈 세그먼트는 사용자의 눈 주변의 피부 톤에 대한 정보를 포함할 수 있다. 또한, 눈 세그먼트는 대응하는 얼굴 이미지로부터 획득된 사용자의 눈썹 모양, 길이, 색상 등 형상에 관한 데이터일 수 있다.
코 세그먼트는 대응하는 얼굴 이미지로부터 획득된 사용자의 코 모양, 길이, 높이 등 형상에 관한 데이터를 포함할 수 있다. 또한, 코 세그먼트는 사용자의 코 주변의 피부 톤에 대한 정보를 포함할 수 있다.
입 세그먼트는 대응하는 얼굴 이미지로부터 획득된 사용자의 길이, 색상, 두께 등 형상에 관한 데이터를 포함할 수 있다. 또한, 입 세그먼트는 사용자의 입 주변의 피부 톤에 대한 정보를 포함할 수 있다.
로우 눈 세그먼트, 로우 코 세그먼트, 로우 입 세그먼트는 사용자의 데일리 화장법에 따라 다양하게 촬영된 얼굴 이미지(10)로부터 획득될 수 있다. 전자 장치는 얼굴 이미지(10)에 대응하는 복수의 로우 텍스쳐들(21, 22, 23, 24)에 기초하여 피부 톤을 평활화함으로써, 사용자의 모습을 보다 구체적으로 반영하는 아바타(70)를 획득할 수 있다.
일 실시 예에서, 전자 장치는 평균 피부 톤 세그먼트(25)를 획득할 수 있다. 평균 피부 톤 세그먼트(25)는 복수의 로우 텍스쳐들(21, 22, 23, 24)에 기초하여 획득될 수 있다.
구체적으로, 전자 장치는 복수의 로우 텍스쳐들(21, 22, 23, 24)에 각각 대응되는 복수의 로우 피부 톤 세그먼트들을 획득할 수 있다. 피부 톤 세그먼트는 대응되는 로우 텍스쳐에 포함된 피부 톤에 대한 정보를 포함할 수 있다. 복수의 로우 텍스쳐들은 제1 로우 텍스쳐(21), 제2 로우 텍스쳐(22), 제3 로우 텍스쳐(23) 및 제4 로우 텍스쳐(24)를 포함할 수 있다. 전자 장치는 제1 로우 텍스쳐(21)로부터 제1 로우 텍스쳐에 대응되는 제1 로우 피부 톤 세그먼트를 획득할 수 있다. 전자 장치는 제2 로우 텍스쳐(22)로부터 제2 로우 텍스쳐에 대응되는 제2 로우 피부 톤 세그먼트를 획득할 수 있다. 전자 장치는 제3 로우 텍스쳐(23)로부터 제3 로우 텍스쳐에 대응되는 제3 로우 피부 톤 세그먼트를 획득할 수 있다. 전자 장치는 제4 로우 텍스쳐(24)로부터 제4 로우 텍스쳐에 대응되는 제4 로우 피부 톤 세그먼트를 획득할 수 있다.
제1 로우 피부 톤 세그먼트 내지 제4 로우 피부 톤 세그먼트은 서로 다른 피부 톤에 대한 정보를 포함할 수 있다. 예를 들어, 제1 로우 피부 톤 세그먼트의 색상은 제2 로우 피부 톤 세그먼트의 색상과 다를 수 있다. 다른 예로, 제2 로우 피부 톤 세그먼트의 명도는 제4 로우 피부 톤 세그먼트의 명도와 다를 수 있다. 다른 예로, 제3 로우 피부 톤 세그먼트의 채도는 제4 로우 피부 톤 세그먼트의 채도와 다를 수 있다.
전자 장치는 획득된 제1 로우 피부 톤 세그먼트 내지 제4 로우 피부 톤 세그먼트에 기초하여, 평균 피부 톤 세그먼트(25)를 획득할 수 있다. 평균 피부 톤 세그먼트(25)는 제1 로우 피부 톤 세그먼트 내지 제4 로우 피부 톤 세그먼트의 평균 색상, 평균 채도 및 평균 명도 중 적어도 하나에 대한 정보를 포함할 수 있다. 평균 피부 톤 세그먼트(25)는 제1 로우 피부 톤 세그먼트 내지 제4 로우 피부 톤 세그먼트에 기초하여 획득되는 것으로 설명되었으나, 이는 예시일 뿐, 평균 피부 톤 세그먼트(25)를 획득하기 위한 표본의 수는 본 개시의 기술적 사상을 한정하지 않는다. 예를 들어, 전자 장치는 제1 로우 피부 톤 세그먼트 내지 제10 로우 피부 톤 세그먼트에 기초하여, 평균 피부 톤 세그먼트(25)를 획득할 수 있다.
전자 장치는 평균 피부 톤 세그먼트(25)에 기초하여 복수의 로우 텍스쳐들(21, 22, 23, 24)의 피부 톤을 평활화하는 톤매칭(tone-matching)을 수행할 수 있다. 전자 장치는 평균 피부 톤 세그먼트(25)에 기초하여, 복수의 톤매칭 텍스쳐(tone-matching texture)들(31, 32, 33, 34)을 획득할 수 있다. 복수의 톤매칭 텍스쳐들(31, 32, 33, 34)은 평균 피부 톤 세그먼트(25)에 기초하여, 복수의 로우 텍스쳐들(21, 22, 23, 24)을 각각 평활화한 이미지들일 수 있다.
복수의 톤매칭 텍스쳐들은 제1 톤매칭 텍스쳐(31), 제2 톤매칭 텍스쳐(32), 제3 톤매칭 텍스쳐(33) 및 제4 톤매칭 텍스쳐(34)를 포함할 수 있다.
예를 들어, 전자 장치는 평균 피부 톤 세그먼트(25)에 기초하여 제1 로우 텍스쳐(21)를 평활화함으로써, 제1 톤매칭 텍스쳐(31)를 획득할 수 있다. 전자 장치는 평균 피부 톤 세그먼트(25)에 기초하여 제2 로우 텍스쳐(22)를 평활화함으로써, 제2 톤매칭 텍스쳐(32)를 획득할 수 있다. 전자 장치는 평균 피부 톤 세그먼트(25)에 기초하여 제3 로우 텍스쳐(23)를 평활화함으로써, 제3 톤매칭 텍스쳐(33)를 획득할 수 있다. 전자 장치는 평균 피부 톤 세그먼트(25)에 기초하여 제4 로우 텍스쳐(24)를 평활화함으로써, 제4 톤매칭 텍스쳐(34)를 획득할 수 있다. 설명의 편의상, 제1 로우 텍스쳐(21) 및 제1 톤매칭 텍스쳐(31)를 중심으로, 제1 톤매칭 텍스쳐(31)를 획득하는 방법을 구체적으로 설명하지만, 제2 내지 제4 톤매칭 텍스쳐(32, 33, 34)를 획득하는 방법 또한 동일할 수 있다.
평균 피부 톤 세그먼트(25)와, 제1 로우 텍스쳐(21)에 포함된 제1 로우 피부 톤 세그먼트는 다를 수 있다. 예를 들어, 평균 피부 톤 세그먼트(25)의 색상과 제1 로우 텍스쳐(21)에 포함된 제1 로우 피부 톤 세그먼트의 색상은 다를 수 있다. 다른 예로, 평균 피부 톤 세그먼트(25)의 채도는 제1 로우 피부 톤 세그먼트의 채도와 다를 수 있다.
전자 장치는 평균 피부 톤 세그먼트(25)에 기초하여 제1 로우 텍스쳐(21)에 포함된 제1 로우 피부 톤 세그먼트를 평활화할 수 있다. 예를 들어, 전자 장치는 제1 로우 피부 톤 세그먼트를 평균 피부 톤 세그먼트(25)에 따른 피부 톤에 가깝게 변경할 수 있다. 즉, 전자 장치는 제1 로우 피부 톤 세그먼트보다 평균 피부 톤 세그먼트(25)에 가까운 피부 톤을 가지는 제1 톤매칭 피부 톤 세그먼트를 획득할 수 있다. 제1 톤매칭 피부 톤 세그먼트는 제1 톤매칭 텍스쳐(31)에 포함된 피부 톤 세그먼트일 수 있다.
일 실시 예에서, 피부 톤 또는 피부 톤 세그먼트를 평활화한다는 의미는, 복수의 로우 텍스쳐들(21, 22, 23, 24)에 포함된 복수의 피부 톤들이 유사한 피부 톤을 갖도록, 복수의 로우 텍스쳐들(21, 22, 23, 24)에 포함된 피부 톤들의 색상, 명도 및 채도 중 적어도 하나를 균일화(또는 재분배)한다는 의미일 수 있다.
피부 톤을 평활화하는 방법은 본 개시의 기술적 사상을 한정하지 않는다. 예를 들어, 전자 장치는 히스토그램 매칭(histogram matching) 방식을 이용하여 피부 톤을 평활화하는 방법을 통해, 복수의 로우 텍스쳐들(21, 22, 23, 24)에 포함된 피부 톤 세그먼트들로부터 복수의 톤매칭 피부 톤 세그먼트들을 획득할 수 있다.
일 실시 예에서, 전자 장치는 획득된 제1 톤매칭 피부 톤 세그먼트에 기초하여, 제1 톤매칭 텍스쳐(31)를 획득할 수 있다.
일 실시 예에서, 전자 장치는 제1 톤매칭 텍스쳐(31)를 특징 영역별로 분할함으로써, 복수의 텍스쳐 세그먼트들을 획득할 수 있다.
본 개시에서, 텍스쳐 세그먼트는 로우 텍스쳐, 톤매칭 텍스쳐 및 조합 텍스쳐에 포함된 신체 부위 조각 이미지를 의미할 수 있다. 텍스쳐 세그먼트는 피부 톤 세그먼트, 눈 세그먼트, 코 세그먼트, 입 세그먼트를 포함할 수 있다. 예를 들어, 텍스쳐 세그먼트는 사용자의 코의 형태에 관한 조각 이미지, 즉, 코 세그먼트일 수 있다.
제1 톤매칭 텍스쳐(31)에 포함된 피부 톤은 제1 로우 텍스쳐(21)에 포함된 피부 톤과 다를 수 있다. 즉, 제1 톤매칭 피부 톤 세그먼트는 평균 피부 톤 세그먼트(25)에 기초하여, 제1 로우 피부 톤 세그먼트를 평활화한 데이터일 수 있다.
제1 톤매칭 텍스쳐(31)에 포함된 제1 톤매칭 눈 세그먼트는 제1 로우 텍스쳐(21)에 포함된 제1 로우 눈 세그먼트와 동일할 수 있다. 제1 톤매칭 텍스쳐(31)에 포함된 제1 톤매칭 코 세그먼트는 제1 로우 텍스쳐(21)에 포함된 제1 로우 코 세그먼트와 동일할 수 있다. 제1 톤매칭 텍스쳐(31)에 포함된 제1 톤매칭 입 세그먼트는 제1 로우 텍스쳐(21)에 포함된 제1 로우 입 세그먼트와 동일할 수 있다. 제1 톤매칭 텍스쳐(31)는 제1 로우 피부 톤 세그먼트를 톤매칭하여 획득한 제1 톤매칭 피부 톤 세그먼트에 따른 피부 톤을 가질 수 있다. 즉, 제1 톤매칭 텍스쳐(31)는 제1 로우 텍스쳐(21)와 피부 톤이 다를 뿐, 동일한 눈, 코 및 입의 형상을 가지는 텍스쳐 세그먼트들을 포함할 수 있다.
설명의 편의상, 제1 로우 텍스쳐(21) 및 제1 톤매칭 텍스쳐(31)를 중심으로 설명하였으나, 제2 내지 제4 톤매칭 텍스쳐(32, 33, 34)에 관한 설명 또한 동일하다.
일 실시 예에서, 전자 장치는 복수의 텍스쳐 세그먼트들(41_1 내지 41_4, 42_1 내지 42_4, 43_1 내지 43_4 및 44_1 내지 44_4)을 특징 영역별로 저장하는 세그먼트 데이터베이스를 포함할 수 있다.
세그먼트 데이터베이스는 피부 톤 세그먼트 데이터 베이스, 눈 세그먼트 데이터베이스, 코 세그먼트 데이터베이스, 입 세그먼트 데이터베이스를 포함할 수 있다.
전자 장치는 피부 톤 세그먼트 데이터베이스 내에 복수의 톤매칭 피부 톤 세그먼트들을 저장할 수 있다. 예를 들어, 도 1에 도시된 바와 같이, 전자 장치는 피부 톤 세그먼트 데이터베이스 내에 제1 내지 제4 톤매칭 피부 톤 세그먼트(41_4, 42_4, 43_4, 44_4)를 저장할 수 있다.
전자 장치는 눈 세그먼트 데이터베이스 내에 복수의 톤매칭 눈 세그먼트들을 저장할 수 있다. 예를 들어, 도 1에 도시된 바와 같이, 전자 장치는 눈 세그먼트 데이터베이스 내에 제1 내지 제4 톤매칭 눈 세그먼트(41_1, 42_1, 43_1, 44_1)를 저장할 수 있다.
전자 장치는 코 세그먼트 데이터베이스 내에 복수의 톤매칭 코 세그먼트들을 저장할 수 있다. 예를 들어, 도 1에 도시된 바와 같이, 전자 장치는 코 세그먼트 데이터베이스 내에 제1 내지 제4 톤매칭 코 세그먼트(41_3, 42_3, 43_3, 44_3)를 저장할 수 있다.
전자 장치는 입 세그먼트 데이터베이스 내에 복수의 톤매칭 입 세그먼트들을 저장할 수 있다. 예를 들어, 도 1에 도시된 바와 같이, 전자 장치는 입 세그먼트 데이터베이스 내에 제1 내지 제4 톤매칭 입 세그먼트(41_2, 42_2, 43_2, 44_2)를 저장할 수 있다.
일 실시 예에서, 전자 장치는 세그먼트 데이터베이스에 저장된 텍스쳐 세그먼트들(41_1 내지 41_4, 42_1 내지 42_4, 43_1 내지 43_4 및 44_1 내지 44_4)을 조합함으로써, 조합 텍스쳐(50)를 획득할 수 있다. 전자 장치는 사용자 입력에 의해 특징 영역 별로 하나씩 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써, 조합 텍스쳐(50)를 획득할 수 있다.
구체적으로, 전자 장치는 사용자 입력에 의해 피부 영역, 눈 영역, 코 영역 및 입 영역에 대해 하나씩 선택된 복수의 텍스쳐 세그먼트들을 획득할 수 있다.
예를 들어, 전자 장치는 세그먼트 데이터베이스로부터 제4 톤매칭 피부 톤 세그먼트(44_4)를 선택하는 사용자 입력을 수신할 수 있고, 수신된 사용자 입력에 기초하여 제4 톤매칭 피부 톤 세그먼트(44_4)를 획득할 수 있다. 전자 장치는 세그먼트 데이터베이스로부터 제1 톤매칭 눈 세그먼트(41_1)를 선택하는 사용자 입력을 수신할 수 있고, 수신된 사용자 입력에 기초하여 제1 톤매칭 눈 세그먼트(41_1)를 획득할 수 있다. 전자 장치는 세그먼트 데이터베이스로부터 제2 톤매칭 코 세그먼트(42_3)를 선택하는 사용자 입력을 수신할 수 있고, 수신된 사용자 입력에 기초하여 제2 톤매칭 코 세그먼트(42_3)를 획득할 수 있다. 전자 장치는 세그먼트 데이터베이스로부터 제3 톤매칭 입 세그먼트(43_2)를 선택하는 사용자 입력을 수신할 수 있고, 수신된 사용자 입력에 기초하여 제3 톤매칭 입 세그먼트(43_2)를 획득할 수 있다.
전자 장치는 획득된 제4 톤매칭 피부 톤 세그먼트(44_4), 제1 톤매칭 눈 세그먼트(41_1), 제2 톤매칭 코 세그먼트(42_3) 및 제3 톤매칭 입 세그먼트(43_2)를 조합함으로써, 조합 텍스쳐(50)를 획득할 수 있다.
조합 텍스쳐(50)에 포함된 제4 톤매칭 피부 톤 세그먼트(44_4)는 제4 톤매칭 텍스쳐(34)에 포함된 피부 톤에 대한 정보를 포함할 수 있다. 조합 텍스쳐(50)에 포함된 제1 톤매칭 눈 세그먼트(41_1)는 제1 톤매칭 텍스쳐(31)에 포함된 피부 톤에 대한 정보를 포함할 수 있다. 조합 텍스쳐(50)에 포함된 제2 톤매칭 코 세그먼트(42_3)는 제2 톤매칭 텍스쳐(32)에 포함된 피부 톤에 대한 정보를 포함할 수 있다. 조합 텍스쳐(50)에 포함된 제3 톤매칭 입 세그먼트(43_2)는 제3 톤매칭 텍스쳐(33)에 포함된 피부 톤에 대한 정보를 포함할 수 있다.
제1 내지 제4 톤매칭 피부 톤 세그먼트(41_4 내지 44_4)는 각각 평균 피부 톤 세그먼트(25)에 기초하여 피부 톤을 톤매칭함으로써 획득되므로, 조합 텍스쳐(50)는 다양한 얼굴 이미지로부터 조합되었음에도 불구하고 보다 자연스럽게 연결되는 피부 톤을 가질 수 있다.
일 실시 예에서, 전자 장치는 사용자의 얼굴에 관한 3차원 메시(mesh)(60)를 획득할 수 있다. 3차원 메시(60)는 사용자의 얼굴 골격에 관한 3차원 형상을 의미할 수 있다.
전자 장치는 3차원 메시(60)에 조합 텍스쳐(50)를 매핑(mapping)시킴으로써 아바타(70)를 획득할 수 있다. 전자 장치는 UV 매핑(UV mapping) 방식, 즉, 3차원 메시(60) 표면에 2차원 이미지인 조합 텍스쳐(50)를 투사하는 방식을 이용하여, 아바타(70)를 획득할 수 있다. 본 개시의 아바타(70)를 획득하는 방식이 UV 매핑 방식으로 한정되는 것은 아니다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 구성 요소를 도시한 블록도이다.
도 2를 참조하면, 본 개시의 일 실시예에 따른 전자 장치(100)는 사용자에게 아바타 서비스를 제공하는 디바이스로서, 예를 들어 스마트 폰, 태블릿 PC, 또는 증강 현실 디바이스(Augmented Reality device)로 구성될 수 있다. 그러나, 이에 한정되는 것은 아니고, 전자 장치(100)는 노트북 컴퓨터(laptop computer), 데스크 탑 PC, 전자책 단말기, 디지털 방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션, MP3 플레이어, 캠코더, IPTV(Internet Protocol Television), DTV(Digital Television), 착용형 기기(wearable device)(예를 들어, 스마트 워치) 등과 같은 다양한 디바이스로 구현될 수 있다.
전자 장치(100)는 메모리(110) 및 프로세서(120)를 포함할 수 있다. 프로세서(120) 및 메모리(110)는 각각 전기적 및/또는 물리적으로 서로 연결될 수 있다.
도 2에 도시된 구성 요소는 본 개시의 일 실시예에 따른 것일 뿐, 전자 장치(100)가 포함하고 있는 구성 요소가 도 2에 도시된 바와 같이 한정되는 것은 아니다. 전자 장치(100)는 도 2에 도시된 구성 요소 중 일부를 포함하지 않을 수 있고, 도 2에 도시되지 않은 구성 요소를 더 포함할 수도 있다.
본 개시의 일 실시예에서, 전자 장치(100)는 외부 디바이스 또는 서버와 데이터 통신을 수행하도록 구성되는 통신 인터페이스를 더 포함할 수 있다. 통신 인터페이스는 예를 들어, 와이파이(WiFi), WFD(Wi-Fi Direct) 통신 모듈, 블루투스 통신 모듈, BLE(Bluetooth Low Energy) 통신 모듈, NFC(Near Field Communication unit), 지그비(Zigbee) 통신 모듈, Ant+ 통신 모듈, 마이크로 웨이브(μWave) 통신 모듈, 또는 이동 통신 모듈(예를 들어, 3G, 4G LTE, 5G mmWave, 또는 5G NR) 중 적어도 하나의 하드웨어 모듈을 포함할 수 있다.
본 개시의 일 실시예에서, 전자 장치(100)는 사용자 입력을 수신하는 입력 인터페이스를 더 포함할 수 있다. 입력 인터페이스는 예를 들어, 키보드, 마우스, 터치스크린, 또는 음성 입력 장치(예를 들어, 마이크로폰) 등을 포함할 수 있으며, 기타 당업자에게 자명한 입력 장치를 포함할 수 있다.
본 개시의 일 실시예에서, 전자 장치(100)는 휴대용 디바이스로 구성되고, 카메라, 프로세서, 디스플레이부 및 디스플레이부에 구동 전력을 공급하는 배터리를 더 포함할 수도 있다.
카메라는 현실 공간 또는 사용자를 촬영함으로써, 이미지를 획득하도록 구성될 수 있다. 카메라는 렌즈 모듈, 이미지 센서, 및 영상 처리 모듈을 포함할 수 있다. 카메라는 이미지 센서(예를 들어, CMOS 또는 CCD)에 의해 얻어지는 정지 이미지 또는 동영상을 획득할 수 있다. 영상 처리 모듈은 이미지 센서를 통해 획득된 정지 이미지 또는 동영상을 가공하여, 필요한 정보를 추출하고, 추출된 정보를 프로세서(120)에 전달할 수 있다. 본 개시의 일 실시예에서, 카메라는 사용자를 촬영함으로써, 사용자의 얼굴 피부 톤 및 사용자의 얼굴 각각의 부위 등에 관한 이미지를 프로세서(120)에 제공할 수 있다.
프로세서(120)는 메모리(110)에 저장된 프로그램의 하나 이상의 명령어들(instructions)을 실행할 수 있다. 프로세서(120)는 산술, 로직 및 입출력 연산과 시그널 프로세싱을 수행하는 하드웨어 구성 요소로 구성될 수 있다. 예를 들어, 프로세서(120)는 중앙 처리 장치(Central Processing Unit), 마이크로 프로세서(microprocessor), 그래픽 프로세서(Graphic Processing Unit), ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), 및 FPGAs(Field Programmable Gate Arrays) 중 적어도 하나로 구성될 수 있으나, 이에 한정되는 것은 아니다.
도 2에는 프로세서(120)가 하나의 엘리먼트로 도시되었으나, 이에 한정되는 것은 아니다. 일 실시예에서, 프로세서(120)는 하나 또는 하나 이상의 복수 개로 구성될 수 있다.
본 개시의 일 실시예에서, 프로세서(120)는 인공 지능(Artificial Intelligence; AI) 학습을 수행하는 AI 프로세서를 포함할 수 있다. 이 경우, AI 프로세서는 인공지능(AI) 시스템의 학습 네트워크 모델을 이용하여 피부 톤이 평활화된 아바타를 획득할 수 있다. AI 프로세서는, 인공 지능(AI)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전자 장치(100) 내의 프로세서(130)에 탑재될 수 있다.
본 개시의 일 실시 예에 따라 아바타를 제공하는 전자 장치(100)는 메모리(110), 적어도 하나의 프로세서(120)를 포함할 수 있다. 메모리(110)는 적어도 하나의 명령어들(instructions)을 저장할 수 있다. 적어도 하나의 프로세서(120)는 적어도 하나의 명령어들을 실행할 수 있다. 적어도 하나의 프로세서(120)는 사용자 얼굴에 관한 3차원 형상을 2차원 평면 상에 대응시킴으로써 복수의 로우 텍스쳐들을 획득할 수 있다.
적어도 하나의 프로세서(120)는 사용자 얼굴에 관한 2차원 이미지를 획득할 수 있다. 적어도 하나의 프로세서(120)는 2차원 이미지를 카툰화함으로써 카툰 이미지를 획득할 수 있다. 적어도 하나의 프로세서(120)는 획득된 카툰 이미지에 기초하여, 사용자 얼굴에 대응되는 3차원 입체 이미지를 획득할 수 있다. 적어도 하나의 프로세서(120)는 3차원 입체 이미지를 펼쳐 2차원 평면 상에 대응시킴으로써, 사용자 얼굴에 대응하는 복수의 로우 텍스쳐들을 획득할 수 있다.
적어도 하나의 프로세서(120)는 카툰화 모듈(113)과 관련된 명령어들 또는 프로그램 코드를 실행함으로써, 2차원 이미지를 입력받고, 2차원 이미지를 카툰 이미지로 변환할 수 있다. 여기서, '카툰 이미지'는 사용자 얼굴의 특징들을 캐릭터화하여 표현한 이미지를 의미한다.
2차원 이미지는 두 눈, 코 및 입을 포함하는 사용자 얼굴의 정면에 관한 이미지일 수 있다.
적어도 하나의 프로세서(120)는 복수의 로우 텍스쳐들의 피부 톤(tone)의 평균에 기초하여 복수의 로우 텍스쳐들의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행할 수 있다.
적어도 하나의 프로세서(120)는 복수의 로우 텍스쳐들의 피부 톤에 기초하여, 평균 피부 톤 세그먼트를 획득할 수 있다. 적어도 하나의 프로세서(120)는 평균 피부 톤 세그먼트에 포함된 색상들의 빈도에 관한 제1 빈도 정보를 획득할 수 있다. 적어도 하나의 프로세서(120)는 복수의 로우 텍스쳐들에 포함된 피부 톤 색상들의 빈도에 관한 제2 빈도 정보를 획득할 수 있다. 적어도 하나의 프로세서(120)는 제1 빈도 정보 및 제2 빈도 정보에 기초하여, 톤매칭을 수행할 수 있다.
적어도 하나의 프로세서(120)는 톤매칭 모듈(111)과 관련된 명령어들 또는 프로그램 코드를 실행함으로써, 복수의 로우 텍스쳐들의 피부 톤의 평균을 획득하고, 상기 복수의 로우 텍스쳐들의 피부 톤을 복수의 로우 텍스쳐들의 피부 톤의 평균에 가깝게 톤매칭함으로써, 복수의 톤매칭 텍스쳐를 획득할 수 있다. 여기서, '톤매칭' 단계(또는 동작)는 서로 다른 피부 톤을 표현하는 복수의 로우 텍스쳐들이 보다 유사한 피부 톤을 갖도록 복수의 로우 텍스쳐들의 피부 톤을 변경하는 동작이다. 적어도 하나의 프로세서(120)는 톤매칭 모듈(111)과 관련된 명령어들 또는 프로그램 코드를 실행함으로써, 복수의 톤매칭 텍스쳐를 획득한다.
적어도 하나의 프로세서(120)는 평균 피부 톤 세그먼트에 기초하여, 히스토그램 매칭(histogram matching) 알고리즘을 이용하여 복수의 로우 텍스쳐들을 톤매칭할 수 있다.
적어도 하나의 프로세서(120)는 톤매칭된 복수의 로우 텍스쳐들 중 적어도 하나를 얼굴 내 특징 영역 별로 분할하여 복수의 텍스쳐 세그먼트들을 획득할 수 있다. 적어도 하나의 프로세서(120)는 획득된 복수의 텍스쳐 세그먼트들 중 사용자 입력에 의해 특정 영역 별로 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득할 수 있다.
메모리(110)는 복수의 텍스쳐 세그먼트들을 특징 영역별로 저장하는 세그먼트 데이터베이스를 포함할 수 있다. 적어도 하나의 프로세서(120)는 텍스쳐 세그먼트들을 특징 영역 별로 세그먼트 데이터베이스에 저장할 수 있다. 적어도 하나의 프로세서(120)는 사용자 입력에 의해 특징 영역 별로 하나씩 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득할 수 있다.
특징 영역은 사용자 얼굴의 피부 영역, 눈 영역, 코 영역 및 입 영역 중 적어도 하나를 포함할 수 있다.
복수의 텍스쳐 세그먼트들은 제1 사용자 얼굴에 관한 복수의 제1 텍스쳐 세그먼트들과 제2 사용자 얼굴에 관한 복수의 제2 텍스쳐 세그먼트들을 포함할 수 있다. 적어도 하나의 프로세서(120)는 사용자 입력에 의해 선택된, 복수의 제1 텍스쳐 세그먼트들 중 적어도 하나의 제1 텍스쳐 세그먼트와 복수의 제2 텍스쳐 세그먼트들 중 적어도 하나의 제2 텍스쳐 세그먼트를 조합함으로써, 조합 텍스쳐를 획득할 수 있다.
적어도 하나의 프로세서(120)는 조합 텍스쳐를 매핑함으로써 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득할 수 있다.
적어도 하나의 프로세서(120)는 조합 텍스쳐 내 복수의 텍스쳐 세그먼트들 중 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 평활화하여 평활화 텍스쳐를 획득할 수 있다.
적어도 하나의 프로세서(120)는 조합 텍스쳐 내 인접한 두 텍스쳐 세그먼트 간의 경계를 스무딩(smoothing)할 수 있다. 적어도 하나의 프로세서(120)는 조합 텍스쳐 내 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 균일화(harmonization)할 수 있다.
적어도 하나의 프로세서(120)는 평활화 모듈(112)과 관련된 명령어들 또는 프로그램 코드를 실행함으로써, 조합 텍스쳐 내 복수의 텍스쳐 세그먼트들 중 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 평활화하여 평활화 텍스쳐를 획득할 수 있다. 여기서 '평활화' 단계(또는 동작)는 조합 텍스쳐 내 인접한 텍스쳐 세그먼트들의 경계를 부드럽게 하기 위한 동작이다. 일 실시 예에서, '평활화' 단계(또는 동작)는 조합 텍스쳐 내 인접한 텍스쳐 세그먼트들의 경계를 스무딩(smoothing)하는 동작과, 스무딩된 경계를 사이에 두고 인접한 두 텍스쳐 세그먼트의 색상이 유사하도록 균일화하는 단계를 포함할 수 있다. 적어도 하나의 프로세서(120)는 톤매칭 모듈(111)과 관련된 명령어들 또는 프로그램 코드를 실행함으로써, 복수의 평활화 텍스쳐를 획득한다.
적어도 하나의 프로세서(120)는 평활화 텍스쳐에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득할 수 있다.
적어도 하나의 프로세서(120)는 얼굴의 골격에 관한 3차원 메시(mesh)를 획득할 수 있다. 적어도 하나의 프로세서(120)는 3차원 메시에 조합 텍스쳐를 매핑(mapping)시킴으로써 아바타를 획득할 수 있다.
메모리(110)는 예를 들어, 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 또는 광 디스크 중 적어도 하나의 타입의 저장매체로 구성될 수 있다. 본 개시의 일 실시예에서, 메모리(110)는 네트워크를 통해 접속 가능하고, 저장 기능을 수행하는 웹 스토리지(web storage) 또는 클라우드 서버로 구현될 수도 있다. 이 경우, 전자 장치(100)는 통신 인터페이스를 통해 웹 스토리지 또는 클라우드 서버와 통신 연결하고, 데이터 송수신을 수행할 수 있다.
메모리(110)에는 전자 장치(100)가 조합 텍스쳐에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득하는 동작을 수행하기 위한 명령어들 또는 프로그램 코드가 저장될 수 있다. 본 개시의 일 실시예에서, 메모리(110)에는 프로세서(120)에 의해 판독될 수 있는 명령어들(instructions), 알고리즘(algorithm), 데이터 구조, 프로그램 코드(program code), 및 애플리케이션 프로그램(application program) 중 적어도 하나가 저장될 수 있다. 메모리(110)에 저장되는 명령어들, 알고리즘, 데이터 구조, 및 프로그램 코드는 예를 들어, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다.
메모리(110)에는 복수의 텍스쳐 세그먼트들을 특징 영역별로 저장하는 세그먼트 데이터베이스를 포함할 수 있다. 메모리(110)에는 톤매칭 모듈(111), 평활화 모듈(112) 및 카툰화 모듈(113)에 관한 명령어들, 알고리즘, 데이터 구조, 또는 프로그램 코드가 저장되어 있을 수 있다. 메모리(110)에 포함되는 '모듈'은 프로세서(120)에 의해 수행되는 기능이나 동작을 처리하는 단위를 의미하고, 이는 명령어들, 알고리즘, 데이터 구조, 또는 프로그램 코드와 같은 소프트웨어로 구현될 수 있다.
톤매칭 모듈(111)은 복수의 로우 텍스쳐들의 평균 피부 톤에 기초하여 복수의 로우 텍스쳐들의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행하는 기능 및/또는 동작과 관련된 명령어들 또는 프로그램 코드로 구성된다. 평활화 모듈(112)은 조합 텍스쳐 내 인접한 복수의 텍스쳐 세그먼트들 간의 피부 톤을 평활화하는 기능 및/또는 동작과 관련된 명령어들 또는 프로그램 코드로 구성된다. 카툰화 모듈(113)은 얼굴 이미지(10)를 카툰화하는 기능 및/또는 동작과 관련된 명령어들 또는 프로그램 코드로 구성된다.
이하의 실시예들은, 프로세서(120)는 메모리(110)에 저장된 명령어들 또는 프로그램 코드들을 실행함으로써 구현될 수 있다.
도 3은 본 개시의 일 실시 예에 따른 전자 장치의 동작 방법을 도시한 흐름도이다. 도 1을 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다.
도 3을 참조하면, 단계 S310에서, 전자 장치는 사용자 얼굴에 관한 3차원 형상을 2차원 평면 상에 대응시킴으로써 복수의 로우 텍스쳐들을 획득할 수 있다.
일 실시 예에서, 전자 장치는 두 눈, 코 및 입을 포함하는 사용자 얼굴의 정면을 촬영한 얼굴 이미지를 획득할 수 있다. 얼굴 이미지는 사용자의 얼굴에 대한 3차원 형상이 촬영된 평면 이미지일 수 있다. 전자 장치는 얼굴 이미지로부터 3차원 형상 이미지를 획득할 수 있다. 예를 들어, 전자 장치는 3DMM(3D Morphable Model) 기반 아바타 생성 기술을 이용하여, 얼굴 이미지로부터 사용자의 얼굴에 대한 3차원 형상 이미지를 획득할 수 있다.
일 실시 예에서, 전자 장치는 얼굴 이미지로부터 획득된 3차원 형상 이미지에 기초하여 복수의 로우 텍스쳐들을 획득할 수 있다. 전자 장치는 3차원 형상 이미지에 포함된 얼굴 이미지의 3차원 형상을 2차원 평면 상에 대응시킴으로써 복수의 로우 텍스쳐들을 획득할 수 있다. 예를 들어, 전자 장치는 UV 언래핑(UV unwrapping) 방식을 이용하여, 사용자 얼굴에 대한 3차원 형상을 2차원 평면 상에 펼침으로써 복수의 로우 텍스쳐들을 획득할 수 있다.
단계 S320에서, 전자 장치는 복수의 로우 텍스쳐들의 피부 톤의 평균에 기초하여 복수의 로우 텍스쳐들의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행할 수 있다.
일 실시 예에서, 전자 장치는 복수의 로우 텍스쳐들로부터 평균 피부 톤 세그먼트를 획득할 수 있다. 각각의 로우 텍스쳐는 피부 톤 세그먼트를 포함할 수 있다. 피부 톤 세그먼트는 대응되는 로우 텍스쳐에 포함된 피부 톤에 대한 정보를 포함할 수 있다. 전자 장치는 각각의 로우 텍스쳐로부터 획득된 각각의 피부 톤 세그먼트에 기초하여 평균 피부 톤 세그먼트를 획득할 수 있다.
일 실시 예에서, 전자 장치는 평균 피부 톤 세그먼트에 기초하여 복수의 로우 텍스쳐들의 피부 톤을 각각 평활화하는 톤매칭을 수행함으로써, 복수의 톤매칭 텍스쳐들을 획득할 수 있다.
단계 S330에서, 전자 장치는 복수의 매칭 텍스쳐들 중 적어도 하나를 얼굴 내 특징 영역 별로 분할하여 복수의 텍스쳐 세그먼트들을 획득할 수 있다.
일 실시 예에서, 전자 장치는 톤매칭 텍스쳐를 피부 영역, 눈 영역, 코 영역 및 입 영역으로 분할할 수 있다. 이에 따라, 전자 장치는 복수의 텍스쳐 세그먼트들을 획득할 수 있다. 복수의 텍스쳐 세그먼트들은 톤매칭 피부 톤 세그먼트, 톤매칭 눈 세그먼트, 톤매칭 코 세그먼트 및 톤매칭 입 세그먼트를 포함할 수 있다.
톤매칭 피부 톤 세그먼트는 톤매칭 텍스쳐 중 피부 영역을 분할한 조각 이미지일 수 있다. 톤매칭 눈 세그먼트는 톤매칭 텍스쳐 중 눈 영역을 분할한 조각 이미지일 수 있다. 톤매칭 코 세그먼트는 톤매칭 텍스쳐 중 코 영역을 분할한 조각 이미지일 수 있다. 톤매칭 입 세그먼트는 톤매칭 텍스쳐 중 입 영역을 분할한 조각 이미지일 수 있다. 각각의 톤매칭 텍스쳐를 세그먼트들로 분할하는 기준 영역에 관하여 도 5에서 설명한다.
단계 S340에서, 전자 장치는 획득된 복수의 텍스쳐 세그먼트들 중 사용자 입력에 의해 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득할 수 있다.
일 실시 예에서, 전자 장치는 사용자 입력에 의해 특징 영역 별로 하나씩 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써, 조합 텍스쳐를 획득할 수 있다. 예를 들어, 전자 장치는 복수의 톤매칭 피부 톤 세그먼트 중 하나, 복수의 톤매칭 눈 세그먼트 중 하나, 복수의 톤매칭 코 세그먼트 중 하나 및 복수의 톤매칭 입 세그먼트 중 하나를 조합함으로써, 조합 텍스쳐를 획득할 수 있다.
단계 S350에서, 전자 장치는 조합 텍스쳐에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득할 수 있다.
일 실시 예에서, 전자 장치는 사용자의 얼굴에 관한 3차원 메시(mesh)를 획득할 수 있다. 3차원 메시는 사용자의 얼굴 골격에 관한 3차원 형상을 의미할 수 있다. 전자 장치는 3차원 메시에 조합 텍스쳐를 매핑시킴으로써, 아바타를 획득할 수 있다.
일 실시 예에서, 전자 장치는 UV 매핑(UV mapping) 방식, 즉, 3차원 메시 표면에 2차원 이미지인 조합 텍스쳐를 투사하는 방식을 이용하여, 아바타를 획득할 수 있다.
도 4a 및 도 4b는 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴에 대한 로우 텍스쳐를 획득하는 방법을 설명하기 위한 도면들이다.
도 4a를 참조하면, 일 실시 예에서, 전자 장치는 얼굴 이미지(10)를 획득할 수 있다. 전자 장치는 얼굴 이미지(10)의 3차원 형상을 2차원 평면 상에 대응시킴으로써 로우 텍스쳐(raw texture)(20)를 획득할 수 있다.
구체적으로, 전자 장치는 얼굴 이미지(10)로부터 3차원 형상(shape) 이미지(15)를 획득할 수 있다.
전자 장치는 예를 들어, 3DMM(3D Morphable Model) 기반 아바타 생성 기술을 이용하여, 얼굴 이미지(10)로부터 사용자의 얼굴에 대한 3차원 형상 이미지(15)를 획득할 수 있다. 전자 장치는 얼굴 이미지(10)를 미리 입력된 얼굴 영역에 대한 3D 형상 데이터베이스와 비교함으로써, 3D 형상 데이터베이스로부터 얼굴 이미지(10)와 유사한 얼굴 영역 조각들을 획득할 수 있다. 전자 장치는 유사한 얼굴 영역 조각들을 조합함으로써 사용자의 얼굴에 대한 3차원 형상 이미지(15)를 획득할 수 있다. 전자 장치는 3DMM 기반 아바타 생성 기술을 이용하여, 얼굴 이미지(10)와 유사하게 조합된 3차원 형상 이미지(15)를 획득할 수 있다.
단, 3차원 형상 이미지(15)를 획득하는 방법은 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다.
일 실시 예에서, 전자 장치는 3차원 형상 이미지(15)에 기초하여 로우 텍스쳐(20)를 획득할 수 있다.
로우 텍스쳐(20)는 3차원 형상 이미지(15)에 기초하여 사용자 얼굴을 2차원 평면 상에 대응시킨 이미지일 수 있다. 로우 텍스쳐(20)는 3차원 형상 이미지(15) 내 사용자 얼굴에 관한 3차원 형상을 2차원 평면 상에 대응시킨 이미지일 수 있다. 예를 들어, 전자 장치는 UV 언래핑(UV unwrapping) 방식을 이용하여, 3차원 형상 이미지(15) 내 사용자 얼굴에 대한 3차원 형상을 2차원 평면 상에 펼쳐 2차원 이미지인 로우 텍스쳐(20)를 획득할 수 있다. 단, 3차원 형상에 기초하여 로우 텍스쳐(20)를 획득하는 방식은 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다.
도 4b를 참조하면, 일 실시 예에서, 전자 장치는 얼굴 이미지(10)를 획득할 수 있다. 전자 장치는 얼굴 이미지(10)에 기초하여 카툰 이미지(10c)를 획득할 수 있다. 설명의 편의상, 도 4a를 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다.
카툰 이미지(10c)는 얼굴 이미지(10)에 포함된 사용자 얼굴을 카툰화(cartoonize)한 이미지일 수 있다. 전자 장치는 예를 들어, 카툰화 모듈(도 2의 113)에 얼굴 이미지(10)를 입력하고, 얼굴 이미지(10)에 카툰화 필터를 처리함에 따라 카툰 이미지(10c)를 획득할 수 있다. 본 개시에서 얼굴 이미지(10)를 카툰화하는 방법이 카툰화 필터를 이용하는 것으로 한정되는 것은 아니다.
일 실시 예에서, 전자 장치는 카툰 이미지(10c)로부터 3차원 형상(shape) 이미지(15)를 획득할 수 있다. 전자 장치는 예를 들어, 3DMM(3D Morphable Model) 기반 아바타 생성 기술을 이용하여, 카툰 이미지(10c)로부터 사용자의 얼굴에 대한 3차원 형상 이미지(15)를 획득할 수 있다.
일 실시 예에서, 전자 장치는 3차원 형상 이미지(15)에 기초하여 로우 텍스쳐(20)를 획득할 수 있다. 예를 들어, 전자 장치는 UV 언래핑(UV unwrapping) 방식을 이용하여, 3차원 형상 이미지(15) 내 사용자 얼굴에 대한 3차원 형상을 2차원 평면 상에 펼쳐 2차원 이미지인 로우 텍스쳐(20)를 획득할 수 있다.
도 5는 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴에 기초한 아바타를 제공하기 위해 사용자 얼굴과 관련된 로우 텍스쳐로부터 각각의 영역에 대응되는 복수의 세그먼트들을 분할하는 기준을 설명하기 위한 도면이다.
도 5를 참조하면, 기준 텍스쳐(R1)는 사용자 얼굴을 2차원 평면 상에 대응시킨 이미지일 수 있다.
기준 텍스쳐(R1)는 기준 피부 톤 세그먼트(S1), 기준 눈 세그먼트(S2), 기준 코 세그먼트(S3) 및 기준 입 세그먼트(S4)를 포함할 수 있다. 기준 텍스쳐(R1)는 각각의 얼굴 영역을 기준으로 기준 피부 톤 세그먼트(S1), 기준 눈 세그먼트(S2), 기준 코 세그먼트(S3) 및 기준 입 세그먼트(S4)로 분할될 수 있다.
기준 텍스쳐(R1)는 기준점(P)에 기초하여 기준 피부 톤 세그먼트(S1), 기준 눈 세그먼트(S2), 기준 코 세그먼트(S3) 및 기준 입 세그먼트(S4)로 분할될 수 있다. 기준점(P)은 얼굴의 영역을 구분하기 위해 설정될 수 있다. 기준점(P)은 제1 내지 제4 기준점(P1, P2, P3, P4)을 포함할 수 있다.
기준 눈 세그먼트(S2)는 복수의 제1 기준점(P1)을 연결한 영역에 대응되는 조각 이미지일 수 있다. 기준 눈 세그먼트(S2)는 사용자의 두 눈을 포함하는 이미지일 수 있다. 설명의 편의상, 복수의 제1 기준점 중 하나의 제1 기준점(P1)이 표시되었으나, 기준 눈 세그먼트(S2)의 영역을 형성하는 복수의 기준점들은 모두 제1 기준점(P1)을 의미할 수 있다.
기준 코 세그먼트(S3)는 복수의 제2 기준점(P2)을 연결한 영역에 대응되는 조각 이미지일 수 있다. 기준 코 세그먼트(S3)는 사용자의 코를 포함하는 이미지일 수 있다. 설명의 편의상, 복수의 제2 기준점 중 하나의 제2 기준점(P2)이 표시되었으나, 기준 코 세그먼트(S3)의 영역을 형성하는 복수의 기준점들은 모두 제2 기준점(P2)을 의미할 수 있다.
기준 입 세그먼트(S4)는 복수의 제3 기준점(P3)을 연결한 영역에 대응되는 조각 이미지일 수 있다. 기준 입 세그먼트(S4)는 사용자의 입을 포함하는 이미지일 수 있다. 설명의 편의상, 복수의 제3 기준점 중 하나의 제3 기준점(P3)이 표시되었으나, 기준 입 세그먼트(S4)의 영역을 형성하는 복수의 기준점들은 모두 제3 기준점(P3)을 의미할 수 있다.
기준 피부 톤 세그먼트(S1)는 복수의 제4 기준점(P4)을 연결한 영역에 대응되는 조각 이미지일 수 있다. 기준 피부 톤 세그먼트(S1)는 복수의 제4 기준점(P4)을 연결한 영역 중, 기준 눈 세그먼트(S2), 기준 코 세그먼트(S3) 및 기준 입 세그먼트(S4)의 영역을 제외한 영역에 대응되는 조각 이미지일 수 있다. 기준 피부 톤 세그먼트(S1)는 사용자의 눈, 코 및 입을 제외한 피부 영역을 포함하는 이미지일 수 있다. 설명의 편의상, 복수의 제4 기준점 중 하나의 제4 기준점(P4)이 표시되었으나, 기준 피부 톤 세그먼트(S1)의 영역을 형성하는 복수의 기준점들은 모두 제4 기준점(P4)을 의미할 수 있다.
일 실시 예에서, 기준점(P)은 얼굴에 포함된 근육 및 뼈의 위치에 기초하여 설정될 수 있다. 구체적으로, 제1 기준점(P1) 중 하나는 비근(코 근육)의 상부 끝(edge)에 위치할 수 있다. 비근의 상부 끝에 위치한 상기 제1 기준점(P1) 중 하나는 기준 텍스쳐(R1)로부터 기준 눈 세그먼트(S2)를 획득하는 데에 이용될 수 있다.
단, 기준점(P)의 설정 위치는 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다. 일 실시 예에 따른 전자 장치는 일정한 기준점을 설정함으로써, 로우 텍스쳐로부터 분할된 텍스쳐 세그먼트들을 어색함없이 조합할 수 있다. 따라서, 전자 장치는 분할된 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득할 수 있다.
본 개시의 일 실시 예에 따른 아바타를 제공하는 전자 장치는, 복수의 로우 텍스쳐들(도 1 및 도 9의 21, 22, 23, 24), 복수의 톤매칭 텍스쳐들(도 1 및 도 9의 31, 32, 33, 34), 조합 텍스쳐(도 1 및 도 9의 50) 및 평활화 텍스쳐(도 9의 55)를 획득할 수 있다. 복수의 로우 텍스쳐들(도 1 및 도 9의 21, 22, 23, 24), 복수의 톤매칭 텍스쳐들(도 1 및 도 9의 31, 32, 33, 34), 조합 텍스쳐(도 1 및 도 9의 50) 및 평활화 텍스쳐(도 9의 55)는 각각 피부 톤 세그먼트, 눈 세그먼트, 코 세그먼트, 입 세그먼트를 포함할 수 있다. 설명의 편의상, 도 5의 기준 텍스쳐(R1)는 얼굴 영역을 각각의 세그먼트로 분할하는 기준을 설명하기 위해 도시된 것이고, 얼굴 영역을 각각의 세그먼트로 분할하는 기준은 로우 텍스쳐(도 1 및 도 9의 21, 22, 23, 24), 톤매칭 텍스쳐(도 1 및 도 9의 31, 32, 33, 34), 조합 텍스쳐(도 1 및 도 9의 50) 및 평활화 텍스쳐(도 9의 55)에 적용될 수 있다.
도 6은 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴에 기초하여 사용자 얼굴과 관련된 로우 텍스쳐들을 톤매칭하는 방법을 설명하기 위한 도면이다. 도 1을 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다.
도 6을 참조하면, 일 실시 예에서, 전자 장치는 복수의 얼굴 이미지를 획득할 수 있다. 복수의 얼굴 이미지는 제1 내지 제4 얼굴 이미지(11, 12, 13, 14)를 포함할 수 있다.
제1 내지 제4 얼굴 이미지(11, 12, 13, 14)는 각각 다른 상황에서 촬영된 제1 사용자의 얼굴을 포함하는 이미지일 수 있다. 예를 들어, 제1 내지 제4 얼굴 이미지(11, 12, 13, 14)는 각각 다른 피부 화장법을 통해 화장된 제1 사용자의 얼굴을 포함할 수 있다.
전자 장치는 제1 얼굴 이미지(11)에 기초하여 제1 로우 텍스쳐(21)를 획득할 수 있다. 전자 장치는 제1 얼굴 이미지(11)에 포함된 제1 사용자 얼굴의 3차원 형상을 2차원 평면 상에 대응시킴으로써 제1 로우 텍스쳐(21)를 획득할 수 있다.
일 실시 예에서, 도 4a에서 설명한 바와 같이, 전자 장치는 제1 얼굴 이미지(11)에 기초하여 3차원 형상 이미지(도 4a의 15)를 획득할 수 있다. 전자 장치는 3차원 형상 이미지(15)에 기초하여 제1 얼굴 이미지(11)에 대응되는 제1 로우 텍스쳐(21)를 획득할 수 있다.
일 실시 예에서, 전자 장치는 제1 로우 텍스쳐(21)로부터 제1 로우 피부 톤 세그먼트(21a)를 획득할 수 있다. 제1 로우 피부 톤 세그먼트(21a)는 대응되는 제1 얼굴 이미지(11) 및 제1 로우 텍스쳐(21)에 포함된 피부 톤에 대한 정보를 포함할 수 있다. 피부 톤(tone)은 피부의 색상을 의미할 수 있다.
설명의 편의상, 제1 얼굴 이미지(11), 제1 로우 텍스쳐(21) 및 제1 로우 피부 톤 세그먼트(21a)를 중심으로 설명하였을 뿐, 제2 내지 제4 로우 피부 톤 세그먼트(22a, 23a, 24a)는 제1 로우 피부 톤 세그먼트(21a)를 획득하는 방법과 동일한 방법을 통해 획득될 수 있다.
제1 내지 제4 로우 피부 톤 세그먼트(21a, 22a, 23a, 24a)는 제1 내지 제4 얼굴 이미지(11, 12, 13, 14)에 포함된 제1 사용자의 얼굴의 화장법, 밝기, 날씨, 조도 등에 따라 다양한 피부 톤에 대한 정보를 각각 포함할 수 있다.
일 실시 예에서, 전자 장치는 제1 내지 제4 로우 피부 톤 세그먼트(21a, 22a, 23a, 24a)에 기초하여 평균 피부 톤 세그먼트(25)를 획득할 수 있다. 평균 피부 톤 세그먼트(25)는 제1 내지 제4 로우 피부 톤 세그먼트(21a, 22a, 23a, 24a)의 평균 색상, 평균 채도 및 평균 명도 중 적어도 하나에 대한 정보를 포함할 수 있다.
일 실시 예에서, 전자 장치는 평균 피부 톤 세그먼트(25)에 기초하여 제1 내지 제4 로우 텍스쳐들(21, 22, 23, 24)의 피부 톤을 평활화하는 톤매칭(tone-matching)을 수행할 수 있다. 전자 장치는 톤매칭을 수행함으로써, 제1 내지 제4 톤매칭 텍스쳐(31, 32, 33, 34)를 획득할 수 있다. 전자 장치는 제1 내지 제4 로우 텍스쳐(21, 22, 23, 24)를 각각 톤매칭함으로써 제1 내지 제4 톤매칭 텍스쳐(31, 32, 33, 34)를 획득할 수 있다.
일 실시 예에서, 피부 톤 또는 피부 톤 세그먼트를 평활화한다는 의미는, 복수의 로우 텍스쳐들에 포함된 복수의 피부 톤들이 유사한 피부 톤을 갖도록, 복수의 로우 텍스쳐들에 포함된 피부 톤들의 색상, 명도 및 채도 중 적어도 하나를 균일화(또는 재분배)한다는 의미일 수 있다.
예를 들어, 전자 장치는 제1 로우 텍스쳐(21) 내에 포함된 제1 로우 피부 톤 세그먼트(21a)를 평균 피부 톤 세그먼트(25)에 따른 피부 톤에 가깝게 변경할 수 있다. 즉, 전자 장치는 제1 로우 피부 톤 세그먼트(21a)보다 평균 피부 톤 세그먼트(25)에 가까운 피부 톤을 가지는 제1 톤매칭 피부 톤 세그먼트(31a)를 획득할 수 있다.
전자 장치는 제1 톤매칭 피부 톤 세그먼트(31a)를 포함하는 제1 톤매칭 텍스쳐(31)를 획득할 수 있다. 제1 톤매칭 텍스쳐(31)는 제1 톤매칭 눈 세그먼트, 제1 톤매칭 코 세그먼트 및 제1 톤매칭 입 세그먼트를 더 포함할 수 있다. 제1 톤매칭 눈 세그먼트는 제1 로우 텍스쳐(21) 내에 포함된 제1 로우 눈 세그먼트와 동일할 수 있다. 제1 톤매칭 코 세그먼트는 제1 로우 텍스쳐(21) 내에 포함된 제1 로우 코 세그먼트와 동일할 수 있다. 제1 톤매칭 입 세그먼트는 제1 로우 텍스쳐(21) 내에 포함된 제1 로우 입 세그먼트와 동일할 수 있다. 즉, 제1 톤매칭 텍스쳐(31)는 제1 로우 텍스쳐(21)의 피부 톤을 평활화한 제1 톤매칭 피부 톤 세그먼트(31a)에 따른 피부 톤을 포함할 뿐, 제1 로우 텍스쳐(21)에 포함된 눈, 코 및 입의 형상은 그대로 포함할 수 있다.
설명의 편의상, 제1 로우 텍스쳐(21)를 평활화함으로써 제1 톤매칭 텍스쳐(31)를 획득하는 방법을 중심으로 설명하였을 뿐, 제2 내지 제4 톤매칭 텍스쳐(32, 33, 34)는 제1 톤매칭 텍스쳐(31)를 획득하는 방법과 동일한 방법으로 획득될 수 있다.
도 7은 본 개시의 일 실시 예에 따라 사용자 얼굴에 기초하여 사용자 얼굴과 관련된 로우 텍스쳐들을 톤매칭하는 전자 장치의 동작 방법을 도시한 흐름도이다. 도 8은 본 개시의 일 실시 예에 따라 사용자 얼굴에 기초하여 사용자 얼굴과 관련된 로우 텍스쳐들을 톤매칭하는 방법을 설명하기 위한 도면이다.
설명의 편의상, 도 1 내지 도 6을 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다. 참고적으로, 도 8은 제1 로우 텍스쳐(21)를 톤매칭함으로써 제1 톤매칭 텍스쳐(31)를 획득하는 방법을 예로 들어 설명하지만, 제2 내지 제4 톤매칭 텍스쳐(도 6의 32, 33 및 34) 또한 동일한 방식으로 획득될 수 있다.
도 7 및 도 8을 함께 참조하면, 도 3을 이용하여 설명한 단계 S320은 단계 S710 내지 단계 S740을 포함할 수 있다.
단계 S710에서, 전자 장치는 복수의 로우 텍스쳐들(도 6의 21 내지 24)의 피부 톤에 기초하여, 평균 피부 톤 세그먼트(25)를 획득할 수 있다.
단계 S720에서, 전자 장치는 평균 피부 톤 세그먼트(25)에 포함된 색상들의 빈도에 관한 제1 빈도 정보를 획득할 수 있다.
일 실시 예에서, 제1 빈도 정보는 평균 피부 톤 세그먼트(25)에 포함된 제1 색상, 제2 색상 및 제3 색상의 빈도에 관한 정보를 포함할 수 있다. 제1 색상은 평균 피부 톤 세그먼트(25) 내 가장 높은 빈도의 색상일 수 있다. 제2 색상은 평균 피부 톤 세그먼트(25) 내 두번째로 높은 빈도의 색상일 수 있다. 제3 색상은 평균 피부 톤 세그먼트(25) 내 세번째로 높은 빈도의 색상일 수 있다.
도 8에 도시된 바와 같이, 제1 색상은 평균 피부 톤 세그먼트(25)의 제1 영역(A1)의 색상일 수 있다. 제2 색상은 평균 피부 톤 세그먼트(25)의 제2 영역(A2)의 색상일 수 있다. 제3 색상은 평균 피부 톤 세그먼트(25)의 제3 영역(A3)의 색상일 수 있다.
설명의 편의상, 제1 색상 내지 제3 색상 즉, 3가지 색상을 중심으로 설명할 뿐, 색상의 수는 본 개시의 기술적 사상을 한정하지 않는다.
단계 S730에서, 전자 장치는 복수의 로우 텍스쳐들에 포함된 피부 톤 색상들의 빈도에 관한 제2 빈도 정보를 획득할 수 있다.
일 실시 예에서, 제2 빈도 정보는 복수의 로우 텍스쳐들에 포함된 제4 색상, 제5 색상 및 제6 색상의 빈도에 관한 정보를 포함할 수 있다. 예를 들어, 제2 빈도 정보는 제1 로우 텍스쳐(21)에 포함된 제4 색상, 제5 색상 및 제6 색상의 빈도에 관한 정보를 포함할 수 있다. 제4 색상은 제1 로우 텍스쳐(21) 내 가장 높은 빈도의 색상일 수 있다. 제5 색상은 제1 로우 텍스쳐(21) 내 두번째로 높은 빈도의 색상일 수 있다. 제6 색상은 제1 로우 텍스쳐(21) 내 세번째로 높은 빈도의 색상일 수 있다.
도 8에 도시된 바와 같이, 제4 색상은 제1 로우 텍스쳐(21)의 제4 영역(A4)의 색상일 수 있다. 제5 색상은 제1 로우 텍스쳐(21)의 제5 영역(A5)의 색상일 수 있다. 제6 색상은 제1 로우 텍스쳐(21)의 제6 영역(A6)의 색상일 수 있다.
단계 S740에서, 전자 장치는 제1 빈도 정보 및 제2 빈도 정보에 기초하여 톤매칭을 수행할 수 있다.
일 실시 예에서, 전자 장치는 제1 빈도 정보 및 제2 빈도 정보에 기초하여, 제1 로우 텍스쳐(21)를 톤매칭함으로써, 제1 톤매칭 텍스쳐(31)를 획득할 수 있다.
구체적으로, 전자 장치는 평균 피부 톤 세그먼트(25) 내 가장 높은 빈도의 색상인 제1 색상과 제1 로우 텍스쳐(21) 내 가장 높은 빈도의 색상인 제4 색상을 매칭할 수 있다. 전자 장치는 제1 로우 텍스쳐(21)의 제1 영역(A1)의 색상을 제1 색상에서 제4 색상으로 변경할 수 있다.
또한, 전자 장치는 평균 피부 톤 세그먼트(25) 두번째로 높은 빈도의 색상인 제2 색상과 제1 로우 텍스쳐(21) 내 두번째로 높은 빈도의 색상인 제5 색상을 매칭할 수 있다. 전자 장치는 제1 로우 텍스쳐(21)의 제2 영역(A2)의 색상을 제2 색상에서 제5 색상으로 변경할 수 있다.
또한, 전자 장치는 평균 피부 톤 세그먼트(25) 세번째로 높은 빈도의 색상인 제3 색상과 제1 로우 텍스쳐(21) 내 세번째로 높은 빈도의 색상인 제6 색상을 매칭할 수 있다. 전자 장치는 제1 로우 텍스쳐(21)의 제3 영역(A3)의 색상을 제3 색상에서 제6 색상으로 변경할 수 있다.
결과적으로, 전자 장치는 제1 로우 텍스쳐(21)를 톤매칭함으로써 제1 톤매칭 텍스쳐(31)를 획득할 수 있다. 제1 톤매칭 텍스쳐(31)는 제1 색상을 갖는 제7 영역(A7), 제2 색상을 갖는 제8 영역(A8) 및 제3 색상을 갖는 제9 영역(A9)을 포함할 수 있다. 즉, 전자 장치는 평균 피부 톤 세그먼트(25)의 색상들의 빈도가 높은 순서에 기초하여, 제1 로우 텍스쳐(21)의 색상들의 빈도 순서에 따라 제1 로우 텍스쳐(21)의 색상들을 변경할 수 있다. 이에 따라, 전자 장치는 제1 로우 텍스쳐(21)의 색상들을 변경함으로써, 제1 톤매칭 텍스쳐(31)를 획득할 수 있다.
도 9는 본 개시의 일 실시 예에 따른 전자 장치가 사용자 얼굴 내 각각의 영역에 관한 데이터베이스에 기초하여 획득된 조합 텍스쳐를 평활화하는 방법을 설명하기 위한 도면이다. 도 10은 본 개시의 일 실시 예에 따라 사용자 얼굴 내 각각의 영역에 관한 데이터베이스에 기초하여 획득된 조합 텍스쳐를 평활화하는 전자 장치의 동작 방법을 도시한 흐름도이다.
설명의 편의상, 도 1을 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다.
도 9 및 도 10을 함께 참조하면, 도 10에 도시된 단계 S1010은 도 3에 도시된 단계 S340이 수행된 이후에 수행될 수 있다.
단계 S1010에서, 전자 장치는 조합 텍스쳐(50) 내 복수의 텍스쳐 세그먼트들 중 인접한 두 텍스쳐 세그먼트들 간의 피부 톤을 평활화할 수 있다.
일 실시 예에서, 전자 장치는 조합 텍스쳐(50)를 평활화함으로써, 평활화 텍스쳐(55)를 획득할 수 있다. 전자 장치는 조합 텍스쳐(50) 내 인접한 복수의 텍스쳐 세그먼트들 간의 피부 톤을 평활화할 수 있다.
예를 들어, 조합 텍스쳐(50)는 제1 톤매칭 눈 세그먼트(41_1) 및 제2 톤매칭 피부 톤 세그먼트(42_4)를 조합함으로써 획득된 이미지일 수 있다. 제1 톤매칭 눈 세그먼트(41_1) 및 제2 톤매칭 피부 톤 세그먼트(42_4)는 동일한 피부 톤을 가지지 않을 수 있으므로, 제1 톤매칭 눈 세그먼트(41_1) 및 제2 톤매칭 피부 톤 세그먼트(42_4)가 인접한 경계 주변에 이질감이 있을 수 있다.
일 실시 예에서, 전자 장치는 조합 텍스쳐(50) 내 인접한 복수의 텍스쳐 세그먼트들 간의 경계를 스무딩(smoothing)할 수 있다. 즉, 전자 장치는 조합 텍스쳐(50) 내 인접한 제1 톤매칭 눈 세그먼트(41_1) 및 제2 톤매칭 피부 톤 세그먼트(42_4) 간의 경계를 스무딩할 수 있다.
일 실시 예에서, 전자 장치는 조합 텍스쳐(50) 내 인접한 복수의 텍스쳐 세그먼트들 간의 피부 톤을 균일화(harmonize)할 수 있다. 전자 장치는 스무딩 동작 이후에 인접한 복수의 텍스쳐 세그먼트들 간의 피부 톤을 균일화하는 동작을 수행할 수 있다.
일 실시 예에서, 전자 장치의 평활화 모듈(도 2의 112)은 인접한 복수의 텍스쳐 세그먼트들 간의 경계를 흐리게 스무딩하는 기능 및/또는 동작과 관련된 명령어들 또는 프로그램 코드를 포함할 수 있다. 또한, 전자 장치의 평활화 모듈(도 2의 112)은 인접한 복수의 텍스쳐 세그먼트들의 피부 톤을 균일화하는 기능 및/또는 동작과 관련된 명령어들 또는 프로그램 코드를 포함할 수 있다.
단계 S1020에서, 전자 장치는 평활화 텍스쳐(55)에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타(70)를 획득할 수 있다. 단계 S1020에 대한 설명은 도 3의 단계 S350에 대한 설명과 유사할 수 있으므로, 간략히 한다.
일 실시 예에서, 전자 장치는 사용자의 얼굴에 관한 3차원 메시(mesh)(60)를 획득할 수 있다. 전자 장치는 3차원 메시(60)에 평활화 텍스쳐(55)를 매핑시킴으로써, 아바타(70)를 획득할 수 있다.
일 실시 예에서, 전자 장치는 UV 매핑(UV mapping) 방식, 즉, 3차원 메시(60) 표면에 2차원 이미지인 평활화 텍스쳐(55)를 투사하는 방식을 이용하여, 아바타(70)를 획득할 수 있다.
도 11은 본 개시의 일 실시 예에 따른 전자 장치가 조합 텍스쳐를 평활화하는 방법을 구체적으로 설명하기 위한 도면이다.
도 11을 참조하면, 전자 장치는 조합 텍스쳐(50)를 평활화함으로써, 평활화 텍스쳐(55)를 획득할 수 있다. 전자 장치는 조합 텍스쳐(50) 내 인접한 두 텍스쳐 세그먼트들 간의 경계를 스무딩하고, 조합 텍스쳐(50) 내 인접한 두 텍스쳐 세그먼트들 간의 피부 톤을 균일화(harmonization)함으로써, 평활화 텍스쳐(55)를 획득할 수 있다.
일 실시 예에서, 전자 장치는 조합 텍스쳐(50) 내 인접한 두 텍스쳐 세그먼트들 간의 경계를 스무딩할 수 있다. 도 11에서 인접한 두 텍스쳐 세그먼트는 서로 인접한 피부 톤 세그먼트와 눈 세그먼트를 예시로 하여 설명되지만, 이는 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다. 예를 들어, 조합 텍스쳐(50) 내 인접한 복수의 텍스쳐 세그먼트는, 피부 톤 세그먼트와 눈 세그먼트, 피부 톤 세그먼트와 코 세그먼트, 피부 톤 세그먼트와 입 세그먼트, 눈 세그먼트와 코 세그먼트, 코 세그먼트와 입 세그먼트일 수 있다.
일 실시 예에서, 텍스쳐 세그먼트들 간의 피부 톤을 평활화한다는 의미는, 조합 텍스쳐(50)에 포함된 복수의 텍스쳐 세그먼트들이 유사한 피부 톤을 갖도록, 복수의 텍스쳐 세그먼트들에 포함된 피부 톤들의 색상, 명도 및 채도 중 적어도 하나를 균일화(또는 재분배)한다는 의미일 수 있다.
조합 텍스쳐(50)는 제1 경계 영역(E1)을 포함할 수 있다. 제1 경계 영역(E1)은 인접한 두 텍스쳐 세그먼트들의 영역을 포함할 수 있다. 예를 들어, 도 11에 도시된 바와 같이, 제1 경계 영역(E1)은 피부 톤 세그먼트의 영역 중 일부와 눈 세그먼트의 영역 중 일부를 포함할 수 있다.
제1 경계 영역(E1)은 제1_1 영역(E1_1) 및 제1_2 영역(E1_2)을 포함할 수 있다. 제1_1 영역(E1_1)은 조합 텍스쳐(50) 내의 인접한 두 텍스쳐 세그먼트 중 하나의 영역일 수 있다. 제1_2 영역(E1_1)은 조합 텍스쳐(50) 내의 인접한 두 텍스쳐 세그먼트 중 또다른 하나의 영역일 수 있다.
예를 들어, 제1_1 영역(E1_1)은 조합 텍스쳐(50)의 피부 톤 세그먼트의 영역일 수 있다. 제1_2 영역(E1_1)은 조합 텍스쳐(50)의 눈 세그먼트의 영역일 수 있다. 조합 텍스쳐(50)의 피부 톤 세그먼트의 피부 톤은, 조합 텍스쳐(50)의 눈 세그먼트의 피부 톤과 다를 수 있다.
전자 장치는 인접한 제1_1 영역(E1_1) 및 제1_2 영역(E1_1)의 경계면 주위를 스무딩할 수 있다. 이에 따라, 제1_1 영역(E1_1) 및 제1_2 영역(E1_1) 사이에 중간 영역(제2_2 영역; E2_2)이 형성될 수 있다. 전자 장치는 제1_1 영역(E1_1) 및 제1_2 영역(E1_1)의 경계면 주위를 스무딩함에 따라, 제2_1 영역(E2_1), 제2_2 영역(E2_2) 및 제2_3 영역(E2_3)을 획득할 수 있다.
제2_1 영역(E2_1)은 제1_1 영역(E1_1) 중 스무딩 처리되지 않은 영역일 수 있다. 제2_2 영역(E2_2)은 제1_1 영역(E1_1) 중 스무딩 처리된 영역과 제1_2 영역(E1_1) 중 스무딩 처리된 영역을 포함할 수 있다. 제2_3 영역(E2_3)은 제1_2 영역(E1_1) 중 스무딩 처리되지 않은 영역일 수 있다.
스무딩 처리 후 제2_2 영역(E2_2)과 제2_1 영역(E2_1) 사이의 색감 차이는 스무딩 처리 전 제1_1 영역(E1_1)과 제1_2 영역(E1_1) 사이의 색감 차이보다 작을 수 있다. 또한, 스무딩 처리 후 제2_2 영역(E2_2)과 제2_3 영역(E2_3) 사이의 색감 차이는 스무딩 처리 전 제1_1 영역(E1_1)과 제1_2 영역(E1_1) 사이의 색감 차이보다 작을 수 있다.
일 실시 예에서, 전자 장치는 가우시안 분포(Gaussian distribution) 함수를 근사하여 생성한 필터 마스크를 이용하여 이미지를 필터링하는 가우시안 스무딩(Gaussian Smoothing) 방식을 통해, 조합 텍스쳐(50) 내 인접한 두 텍스쳐 세그먼트들을 스무딩(smoothing)할 수 있다. 예를 들어, 전자 장치는 가우시안 스무딩 필터(Gaussian Smoothing Filter)를 조합 텍스쳐(50) 내 인접한 눈 세그먼트(제1_2 영역; E1_2) 및 피부 톤 세그먼트(제1_1 영역; E1_1) 간의 경계에서 수행할 수 있다. 이에 따라, 전자 장치는 인접한 눈 세그먼트 및 피부 톤 세그먼트 간의 경계를 따라 형성되는 미세한 색감 차이를 최소화할 수 있다.
단, 조합 텍스쳐(50)를 스무딩하는 방식은 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다.
일 실시 예에서, 전자 장치는 조합 텍스쳐(50) 내 인접한 복수의 텍스쳐 세그먼트들 간의 피부 톤을 균일화(harmonization)할 수 있다. 도 11에서 인접한 복수의 텍스쳐 세그먼트는 서로 인접한 피부 톤 세그먼트와 눈 세그먼트를 예시로 하여 설명되지만, 이는 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다. 예를 들어, 조합 텍스쳐(50) 내 인접한 복수의 텍스쳐 세그먼트는, 피부 톤 세그먼트와 눈 세그먼트, 피부 톤 세그먼트와 코 세그먼트, 피부 톤 세그먼트와 입 세그먼트, 눈 세그먼트와 코 세그먼트, 코 세그먼트와 입 세그먼트일 수 있다.
스무딩된 조합 텍스쳐 내 인접한 텍스쳐 세그먼트 간의 피부 톤은 다를 수 있다. 전자 장치는 스무딩에 따라 인접한 텍스쳐 세그먼트 간의 경계를 따라 형성되는 미세한 색감 차이를 최소화한 후에, 상기 인접한 텍스쳐 세그먼트들의 피부 톤을 균일화할 수 있다. 예를 들어, 전자 장치는 조합 텍스쳐(50) 내 인접한 눈 세그먼트 및 코 세그먼트 간의 경계를 스무딩 처리한 후에, 상기 눈 세그먼트의 피부 톤과 상기 코 세그먼트의 피부 톤을 균일화할 수 있다.
일 실시 예에서, 전자 장치는 딥러닝 모듈인 생성모델(Generative Model)을 이용하여 인접한 텍스쳐 세그먼트들 간의 피부 톤을 균일화할 수 있다. 예를 들어, 전자 장치는 적대적 생성모델(Generative Adversarial Network; GAN)을 이용하여 인접한 텍스쳐 세그먼트들 간의 피부 톤을 균일화할 수 있다. 단, 인접한 텍스쳐 세그먼트들 간의 피부 톤을 균일화하기 위한 모델은 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다.
전자 장치는 스무딩된 조합 텍스쳐 내 인접한 두 텍스쳐 세그먼트 사이의 피부 톤을 균일화할 수 있다. 예를 들어, 도 11에 도시된 바와 같이, 스무딩된 조합 텍스쳐는 인접한 피부 톤 세그먼트와 눈 세그먼트 사이에 제2_1 영역(E2_1), 제2_2 영역(E2_2) 및 제2_3 영역(E2_3)을 포함할 수 있다.
전자 장치는 제2_1 영역(E2_1) 및 제2_3 영역(E2_3) 간의 피부 톤을 균일화(harmonization)할 수 있다. 일 실시 예에서, 전자 장치는 제2_1 영역(E2_1)의 피부 톤에 기초하여, 제2_3 영역(E2_3)의 피부 톤을 변경할 수 있다. 전자 장치는 제2_1 영역(E2_1)의 피부 톤과 일치하도록, 제2_3 영역(E2_3)의 피부 톤을 변경할 수 있다. 일 실시 예에서, 전자 장치는 제2_3 영역(E2_3)의 피부 톤과 일치하도록, 제2_1 영역(E2_1)의 피부 톤을 변경할 수도 있음은 물론이다.
단, 피부 톤을 변경하는 기준이 되는 영역은 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다. 예를 들어, 전자 장치는 제2_1 영역(E2_1)의 피부 톤과 제2_2 영역(E2_2)의 피부 톤이 일치하도록, 제2_1 영역(E2_1)의 피부 톤과 제2_2 영역(E2_2)의 피부 톤을 모두 변경할 수도 있다.
또한, 피부 톤이 일치하는지 여부는 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다. 예를 들어, 전자 장치는 제2_1 영역(E2_1)의 피부 톤에 가까워지도록, 제2_3 영역(E2_3)의 피부 톤을 변경할 수 있다.
도 12는 본 개시의 일 실시 예에 따른 전자 장치가 여러 사용자의 얼굴로부터 조합 텍스쳐를 획득하는 방법을 설명하기 위한 도면이다. 설명의 편의상, 도 1을 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다.
도 12를 참조하면, 일 실시 예에서, 전자 장치는 사용자 얼굴을 포함하는 얼굴 이미지(도 1의 10)를 획득할 수 있다. 얼굴 이미지는 제1 사용자 얼굴을 포함하는 제1 얼굴 이미지(10a)와 제2 사용자 얼굴을 포함하는 제2 얼굴 이미지(10b)를 포함할 수 있다. 제1 사용자와 제2 사용자는 서로 다른 사용자일 수 있다.
일 실시 예에서, 전자 장치는 얼굴 이미지에 기초하여 복수의 톤매칭 텍스쳐들을 획득할 수 있다.
전자 장치는 제1 얼굴 이미지(10a)에 기초하여 제1_1 톤매칭 텍스쳐(31_1) 및 제2_1 톤매칭 텍스쳐(32_1)를 획득할 수 있다. 또한, 전자 장치는 제2 얼굴 이미지(10b)에 기초하여 제1_2 톤매칭 텍스쳐(31_2) 및 제2_2 톤매칭 텍스쳐(32_2)를 획득할 수 있다. 설명의 편의상, 사용자마다 두 개의 톤매칭 텍스쳐를 이용하여 설명할 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다.
제1_1 톤매칭 텍스쳐(31_1), 제2_1 톤매칭 텍스쳐(32_1), 제1_2 톤매칭 텍스쳐(31_2) 및 제2_2 톤매칭 텍스쳐(32_2)에 관한 설명은 도 1의 제1 내지 제4 톤매칭 텍스쳐(31 내지 34)에 관한 설명과 유사하므로 생략한다.
설명의 편의상, 전자 장치가 복수의 톤매칭 텍스쳐들을 획득하기 위해 복수의 로우 텍스쳐들 및 평균 피부 톤 세그먼트를 획득하는 구성에 관한 설명은 생략되었으나, 도 1을 이용하여 설명된 톤매칭 텍스쳐를 획득하는 방법과 동일할 수 있다.
일 실시 예에서, 전자 장치는 복수의 톤매칭 텍스쳐를 특징 영역별로 분할함으로써, 복수의 텍스쳐 세그먼트들을 획득할 수 있다.
예를 들어, 도 12에 도시된 바와 같이, 전자 장치는 제1_1 톤매칭 텍스쳐(31_1)를 특징 영역별로 분할함으로써, 복수의 텍스쳐 세그먼트들 중 제1_1 톤매칭 눈 세그먼트(1)를 획득할 수 있다. 전자 장치는 제2_1 톤매칭 텍스쳐(32_1)를 특징 영역별로 분할함으로써, 복수의 텍스쳐 세그먼트들 중 제2_1 톤매칭 코 세그먼트(2)를 획득할 수 있다. 전자 장치는 제1_2 톤매칭 텍스쳐(31_2)를 특징 영역별로 분할함으로써, 복수의 텍스쳐 세그먼트들 중 제1_2 톤매칭 입 세그먼트(3)를 획득할 수 있다. 전자 장치는 제2_2 톤매칭 텍스쳐(32_2)를 특징 영역별로 분할함으로써, 복수의 텍스쳐 세그먼트들 중 제2_2 톤매칭 피부 톤 세그먼트(4)를 획득할 수 있다.
일 실시 예에서, 전자 장치는 사용자 입력에 의해 특징 영역 별로 하나씩 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써, 조합 텍스쳐(51)를 획득할 수 있다.
예를 들어, 전자 장치는 사용자 입력에 의해 선택된 제1_1 톤매칭 눈 세그먼트(1), 제2_1 톤매칭 코 세그먼트(2), 제1_2 톤매칭 입 세그먼트(3) 및 제2_2 톤매칭 피부 톤 세그먼트(4)를 조합함으로써, 조합 텍스쳐(51)를 획득할 수 있다. 즉, 조합 텍스쳐(51)는 제1 사용자에 관한 제1 얼굴 이미지(10a) 및 제2 사용자에 관한 제2 얼굴 이미지(10b)에 기초하여 획득될 수 있다.
도 13은 본 개시의 일 실시 예에 따른 전자 장치가 평활화 텍스쳐에 기초하여 아바타를 획득하는 방법을 설명하기 위한 도면이다.
도 13을 참조하면, 전자 장치는 평활화 텍스쳐(55)에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득할 수 있다.
일 실시 예에서, 전자 장치는 사용자의 얼굴에 관한 3차원 메시(mesh)를 획득할 수 있다. 3차원 메시는 제1 메시(61) 및 제2 메시(62)를 포함할 수 있다. 다양한 사용자들의 얼굴 골격을 형상화하기 위해, 3차원 메시의 형상은 다양할 수 있다. 설명의 편의상, 다양한 3차원 메시 중 제1 메시(61) 및 제2 메시(62)를 중심으로 설명한다.
전자 장치는 제1 메시(61)에 평활화 텍스쳐(55)를 매핑시킴으로써, 제1 아바타(71)를 획득할 수 있다. 또한, 전자 장치는 제2 메시(62)에 평활화 텍스쳐(55)를 매핑시킴으로써, 제2 아바타(72)를 획득할 수 있다. 제1 아바타(71) 및 제2 아바타(72)는 동일한 평활화 텍스쳐(55)에 기초하여 획득된다. 따라서, 제1 아바타(71) 및 제2 아바타(72)는 사용된 메시 즉, 제1 메시(61)와 제2 메시(62)의 차이에 따라 골격이 다를 수 있다. 다만, 동일한 평활화 텍스쳐(55)에 기초하여 획득된, 제1 아바타(71) 및 제2 아바타(72)의 피부 톤이나, 눈, 코, 입의 형상은 동일할 수 있다.
일 실시 예에서, 전자 장치는 UV 매핑(UV mapping) 방식, 즉, 3차원 메시(61, 62) 표면에 2차원 이미지인 평활화 텍스쳐(55)를 투사하는 방식을 이용하여, 아바타(71, 72)를 획득할 수 있다.
본 개시의 일 실시 예에 따라 아바타를 제공하는 전자 장치는 메모리 및 적어도 하나의 프로세서를 포함할 수 있다. 메모리는 적어도 하나의 명령어들(instructions)을 저장할 수 있다. 적어도 하나의 프로세서는 적어도 하나의 명령어들을 실행할 수 있다. 적어도 하나의 프로세서는, 사용자 얼굴에 관한 3차원 형상을 2차원 평면 상에 대응시킴으로써 복수의 로우(raw) 텍스쳐들을 획득할 수 있다. 적어도 하나의 프로세서는 복수의 로우 텍스쳐들의 피부 톤(tone)의 평균에 기초하여 복수의 로우 텍스쳐들의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행할 수 있다. 적어도 하나의 프로세서는, 톤매칭된 복수의 로우 텍스쳐들 중 적어도 하나를 얼굴 내 특징 영역 별로 분할하여 복수의 텍스쳐 세그먼트들을 획득할 수 있다. 적어도 하나의 프로세서는, 획득된 복수의 텍스쳐 세그먼트들 중 사용자 입력에 의해 특정 영역 별로 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득할 수 있다. 적어도 하나의 프로세서는, 조합 텍스쳐을 매핑함으로써, 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득할 수 있다.
일 실시 예에서, 적어도 하나의 프로세서는 사용자 얼굴에 관한 2차원 이미지를 획득할 수 있다. 적어도 하나의 프로세서는 2차원 이미지를 카툰화(cartoonize)함으로써, 카툰 이미지를 획득할 수 있다. 적어도 하나의 프로세서는 획득된 카툰 이미지에 기초하여, 사용자 얼굴에 대응되는 3차원 형상 이미지를 획득할 수 있다. 적어도 하나의 프로세서는 3차원 형상 이미지를 펼쳐 2차원 평면 상에 대응시킴으로써, 사용자 얼굴에 대응하는 복수의 로우 텍스쳐들을 획득할 수 있다.
일 실시 예에서, 2차원 이미지는 두 눈, 코 및 입을 포함하는 사용자 얼굴의 정면에 관한 이미지일 수 있다.
일 실시 예에서, 적어도 하나의 프로세서는, 복수의 로우 텍스쳐들의 피부 톤에 기초하여, 평균 피부 톤 세그먼트를 획득할 수 있다. 적어도 하나의 프로세서는 평균 피부 톤 세그먼트에 포함된 색상들의 빈도에 관한 제1 빈도 정보를 획득할 수 있다. 적어도 하나의 프로세서는 복수의 로우 텍스쳐들에 포함된 피부 톤 색상들의 빈도에 관한 제2 빈도 정보를 획득할 수 있다. 적어도 하나의 프로세서는 제1 빈도 정보 및 제2 빈도 정보에 기초하여, 톤매칭을 수행할 수 있다.
일 실시 예에서, 적어도 하나의 프로세서는, 평균 피부 톤 세그먼트에 기초하여, 히스토그램 매칭(histogram matching) 알고리즘을 이용하여 복수의 로우 텍스쳐들을 톤매칭할 수 있다.
일 실시 예에서, 메모리는 복수의 텍스쳐 세그먼트들을 특징 영역별로 저장하는 세그먼트 데이터베이스를 포함할 수 있다. 적어도 하나의 프로세서는, 텍스쳐 세그먼트들을 특징 영역 별로 세그먼트 데이터베이스에 저장할 수 있다. 적어도 하나의 프로세서는 사용자 입력에 의해 특징 영역 별로 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득할 수 있다.
일 실시 예에서, 특징 영역은 사용자 얼굴의 피부 영역, 눈 영역, 코 영역 및 입 영역 중 적어도 하나를 포함할 수 있다.
일 실시 예에서, 복수의 텍스쳐 세그먼트들은 제1 사용자 얼굴에 관한 복수의 제1 텍스쳐 세그먼트들과 제2 사용자 얼굴에 관한 복수의 제2 텍스쳐 세그먼트들을 포함할 수 있다. 적어도 하나의 프로세서는, 사용자 입력에 의해 선택된, 복수의 제1 텍스쳐 세그먼트들 중 적어도 하나의 제1 텍스쳐 세그먼트와 복수의 제2 텍스쳐 세그먼트들 중 적어도 하나의 제2 텍스쳐 세그먼트를 조합함으로써, 조합 텍스쳐를 획득할 수 있다.
일 실시 예에서, 적어도 하나의 프로세서는, 조합 텍스쳐 내 복수의 텍스쳐 세그먼트들 중 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 평활화하여 평활화 텍스쳐를 획득할 수 있다. 적어도 하나의 프로세서는 평활화 텍스쳐에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득할 수 있다.
일 실시 예에서, 적어도 하나의 프로세서는, 조합 텍스쳐 내 인접한 두 텍스쳐 세그먼트 간의 경계를 스무딩(smoothing)할 수 있다. 적어도 하나의 프로세서는 조합 텍스쳐 내 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 균일화(harmonization)할 수 있다.
일 실시 예에서, 적어도 하나의 프로세서는, 얼굴의 골격에 관한 3차원 메시(mesh)를 획득할 수 있다. 적어도 하나의 프로세서는 3차원 메시에 조합 텍스쳐를 매핑(mapping)시킴으로써 아바타를 획득할 수 있다.
본 개시의 일 실시 예에 따라 아바타를 제공하는 방법은 사용자 얼굴에 관한 3차원 형상을 2차원 평면 상에 대응시킴으로써 복수의 로우(raw) 텍스쳐들을 획득하는 단계를 포함할 수 있다. 상기 방법은 복수의 로우 텍스쳐들의 피부 톤(tone)의 평균에 기초하여 복수의 로우 텍스쳐들의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행하는 단계를 포함할 수 있다. 상기 방법은 톤매칭된 복수의 로우 텍스쳐들 중 적어도 하나를 얼굴 내 특징 영역 별로 분할하여 복수의 텍스쳐 세그먼트들을 획득하는 단계를 포함할 수 있다. 상기 방법은 획득된 복수의 텍스쳐 세그먼트들 중 사용자 입력에 의해 특정 영역 별로 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득하는 단계를 포함할 수 있다. 상기 방법은 조합 텍스쳐를 매핑함으로써, 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득하는 단계를 포함할 수 있다.
일 실시 예에서, 복수의 로우 텍스쳐들을 획득하는 단계는, 사용자 얼굴에 관한 2차원 이미지를 획득하는 단계를 포함할 수 있다. 복수의 로우 텍스쳐들을 획득하는 단계는 2차원 이미지를 카툰화(cartoonize)함으로써, 카툰 이미지를 획득하는 단계를 포함할 수 있다. 복수의 로우 텍스쳐들을 획득하는 단계는 획득된 카툰 이미지에 기초하여, 사용자 얼굴에 대응되는 3차원 형상 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은 3차원 형상 이미지를 펼쳐 2차원 평면 상에 대응시킴으로써, 사용자 얼굴에 대응하는 복수의 로우 텍스쳐들을 획득하는 단계를 포함할 수 있다.
일 실시 예에서, 톤매칭을 수행하는 단계는, 복수의 로우 텍스쳐들의 피부 톤에 기초하여, 평균 피부 톤 세그먼트를 획득하는 단계를 포함할 수 있다. 톤매칭을 수행하는 단계는 평균 피부 톤 세그먼트에 포함된 색상들의 빈도에 관한 제1 빈도 정보를 획득하는 단계를 포함할 수 있다. 톤매칭을 수행하는 단계는 복수의 로우 텍스쳐들에 포함된 피부 톤 색상들의 빈도에 관한 제2 빈도 정보를 획득하는 단계를 포함할 수 있다. 톤매칭을 수행하는 단계는 제1 빈도 정보 및 제2 빈도 정보에 기초하여, 톤매칭을 수행하는 단계를 포함할 수 있다.
일 실시 예에서, 조합 텍스쳐를 획득하는 단계는 텍스쳐 세그먼트들을 특징 영역 별로 세그먼트 데이터베이스에 저장하는 단계를 포함할 수 있다. 조합 텍스쳐를 획득하는 단계는 사용자 입력에 의해 특징 영역 별로 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐를 획득하는 단계를 포함할 수 있다.
일 실시 예에서, 특징 영역은 사용자 얼굴의 피부 영역, 눈 영역, 코 영역 및 입 영역 중 적어도 하나를 포함할 수 있다.
일 실시 예에서, 복수의 텍스쳐 세그먼트들은 제1 사용자 얼굴에 관한 복수의 제1 텍스쳐 세그먼트들과 제2 사용자 얼굴에 관한 복수의 제2 텍스쳐 세그먼트들을 포함할 수 있다. 일 실시 예에서, 조합 텍스쳐를 획득하는 단계는 사용자 입력에 의해 선택된, 복수의 제1 텍스쳐 세그먼트들 중 적어도 하나의 제1 텍스쳐 세그먼트와 복수의 제2 텍스쳐 세그먼트들 중 적어도 하나의 제2 텍스쳐 세그먼트를 조합함으로써, 조합 텍스쳐를 획득하는 단계를 포함할 수 있다.
일 실시 예에서, 아바타를 제공하는 방법은 조합 텍스쳐 내 복수의 텍스쳐 세그먼트들 중 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 평활화하여 평활화 텍스쳐를 획득하는 단계를 더 포함할 수 있다. 상기 방법은 평활화 텍스쳐에 기초하여 사용자 얼굴을 3차원 형상으로 나타내는 아바타를 획득하는 단계를 더 포함할 수 있다.
일 실시 예에서, 평활화하는 단계는 조합 텍스쳐 내 인접한 두 텍스쳐 세그먼트 간의 경계를 스무딩(smoothing)하는 단계를 포함할 수 있다. 평활화하는 단계는 조합 텍스쳐 내 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 균일화(harmonization)하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에 따른 아바타를 제공하는 방법을 구현하기 위한 적어도 하나의 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체가 제공될 수 있다.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.

Claims (20)

  1. 아바타(70)를 제공하는 전자 장치에 있어서,
    적어도 하나의 명령어들(instructions)을 저장하는 메모리(110); 및
    상기 적어도 하나의 명령어들을 실행하는 적어도 하나의 프로세서(120);
    를 포함하고,
    상기 적어도 하나의 프로세서(120)는,
    사용자 얼굴에 관한 3차원 형상(10)을 2차원 평면 상에 대응시킴으로써 복수의 로우(raw) 텍스쳐들(21 내지 24)을 획득하고,
    상기 복수의 로우 텍스쳐들(21 내지 24)의 피부 톤(tone)의 평균에 기초하여 상기 복수의 로우 텍스쳐들(21 내지 24)의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행하고,
    상기 톤매칭된 복수의 로우 텍스쳐들(31 내지 34) 중 적어도 하나를 얼굴 내 특징 영역 별로 분할하여 복수의 텍스쳐 세그먼트들(41_1 내지 44_1, 41_2 내지 44_2, 41_3 내지 44_3, 41_4 내지 44_4)을 획득하고,
    상기 획득된 복수의 텍스쳐 세그먼트들 중 사용자 입력에 의해 특정 영역 별로 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐(50)를 획득하고,
    상기 조합 텍스쳐(50)을 매핑함으로써, 상기 사용자 얼굴을 3차원 형상으로 나타내는 상기 아바타(70)를 획득하는, 전자 장치.
  2. 제1항에 있어서,
    상기 적어도 하나의 프로세서(120)는,
    상기 사용자 얼굴에 관한 2차원 이미지(10)를 획득하고,
    상기 2차원 이미지(10)를 카툰화(cartoonize)함으로써, 카툰 이미지(10c)를 획득하고,
    상기 획득된 카툰 이미지(10c)에 기초하여, 상기 사용자 얼굴에 대응되는 3차원 형상 이미지(도 4a의 15)를 획득하고,
    상기 3차원 형상 이미지(15)를 펼쳐 2차원 평면 상에 대응시킴으로써, 상기 사용자 얼굴에 대응하는 상기 복수의 로우 텍스쳐들(도 4a의 20 및 21 내지 24)을 획득하는, 전자 장치.
  3. 제2항에 있어서,
    상기 2차원 이미지(10)는 두 눈, 코 및 입을 포함하는 상기 사용자 얼굴의 정면에 관한 이미지인, 전자 장치.
  4. 제1항 내지 제3항 중 어느 하나의 항에 있어서,
    상기 적어도 하나의 프로세서(120)는,
    상기 복수의 로우 텍스쳐들(21 내지 24)의 피부 톤에 기초하여, 평균 피부 톤 세그먼트(25)를 획득하고,
    상기 평균 피부 톤 세그먼트(25)에 포함된 색상들의 빈도에 관한 제1 빈도 정보(도 8의 A1 내지 A3 참고)를 획득하고,
    상기 복수의 로우 텍스쳐들(21 내지 24)에 포함된 피부 톤 색상들의 빈도에 관한 제2 빈도 정보(도 8의 A4 내지 A6 참고)를 획득하고,
    상기 제1 빈도 정보 및 상기 제2 빈도 정보에 기초하여, 상기 톤매칭을 수행하는, 전자 장치.
  5. 제4항에 있어서,
    상기 적어도 하나의 프로세서(120)는,
    상기 평균 피부 톤 세그먼트(25)에 기초하여, 히스토그램 매칭(histogram matching) 알고리즘을 이용하여 상기 복수의 로우 텍스쳐들(21 내지 24)을 톤매칭하는, 전자 장치.
  6. 제1항 내지 제5항 중 어느 하나의 항에 있어서,
    상기 메모리(110)는 상기 복수의 텍스쳐 세그먼트들(41_1 내지 44_1, 41_2 내지 44_2, 41_3 내지 44_3, 41_4 내지 44_4)을 상기 특징 영역별로 저장하는 세그먼트 데이터베이스를 포함하고,
    상기 적어도 하나의 프로세서(120)는,
    상기 텍스쳐 세그먼트들(41_1 내지 44_1, 41_2 내지 44_2, 41_3 내지 44_3, 41_4 내지 44_4)을 상기 특징 영역 별로 상기 세그먼트 데이터베이스에 저장하고,
    상기 사용자 입력에 의해 상기 특징 영역 별로 선택된 상기 복수의 텍스쳐 세그먼트들을 조합함으로써 상기 조합 텍스쳐(50)를 획득하는, 전자 장치.
  7. 제6항에 있어서,
    상기 특징 영역은 상기 사용자 얼굴의 피부 영역, 눈 영역, 코 영역 및 입 영역 중 적어도 하나를 포함하는, 전자 장치.
  8. 제1항 내지 제7항 중 어느 하나의 항에 있어서,
    상기 복수의 텍스쳐 세그먼트들(41_1 내지 44_1, 41_2 내지 44_2, 41_3 내지 44_3, 41_4 내지 44_4)은 제1 사용자 얼굴에 관한 복수의 제1 텍스쳐 세그먼트들(1, 2)과 제2 사용자 얼굴에 관한 복수의 제2 텍스쳐 세그먼트들(3, 4)을 포함하고,
    상기 적어도 하나의 프로세서(120)는,
    상기 사용자 입력에 의해 선택된, 상기 복수의 제1 텍스쳐 세그먼트들 중 적어도 하나의 제1 텍스쳐 세그먼트(1, 2)와 상기 복수의 제2 텍스쳐 세그먼트들 중 적어도 하나의 제2 텍스쳐 세그먼트(3, 4)를 조합함으로써, 상기 조합 텍스쳐(도 12의 51)를 획득하는, 전자 장치.
  9. 제1항 내지 제8항 중 어느 하나의 항에 있어서,
    상기 적어도 하나의 프로세서(120)는,
    상기 조합 텍스쳐(50) 내 상기 복수의 텍스쳐 세그먼트들 중 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 평활화하여 평활화 텍스쳐(55)를 획득하고,
    상기 평활화 텍스쳐(55)에 기초하여 상기 사용자 얼굴을 3차원 형상으로 나타내는 상기 아바타(70)를 획득하는, 전자 장치.
  10. 제9항에 있어서,
    상기 적어도 하나의 프로세서(120)는,
    상기 조합 텍스쳐(50) 내 상기 인접한 두 텍스쳐 세그먼트 간의 경계를 스무딩(smoothing)하고,
    상기 조합 텍스쳐(50) 내 상기 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 균일화(harmonization)하는, 전자 장치.
  11. 제1항에 있어서,
    상기 적어도 하나의 프로세서(120)는,
    얼굴의 골격에 관한 3차원 메시(mesh) (60)를 획득하고,
    상기 3차원 메시(60)에 상기 조합 텍스쳐(50)를 매핑(mapping)시킴으로써 상기 아바타(70)를 획득하는, 전자 장치.
  12. 아바타(70)를 제공하는 방법에 있어서,
    사용자 얼굴에 관한 3차원 형상(10)을 2차원 평면 상에 대응시킴으로써 복수의 로우(raw) 텍스쳐들(21 내지 24)을 획득하는 단계;
    상기 복수의 로우 텍스쳐들(21 내지 24)의 피부 톤(tone)의 평균에 기초하여 상기 복수의 로우 텍스쳐들(21 내지 24)의 피부 톤을 각각 평활화하는 톤매칭(tone-matching)을 수행하는 단계;
    상기 톤매칭된 복수의 로우 텍스쳐들(31 내지 34) 중 적어도 하나를 얼굴 내 특징 영역 별로 분할하여 복수의 텍스쳐 세그먼트들(41_1 내지 44_1, 41_2 내지 44_2, 41_3 내지 44_3, 41_4 내지 44_4)을 획득하는 단계;
    상기 획득된 복수의 텍스쳐 세그먼트들 중 사용자 입력에 의해 특정 영역 별로 선택된 복수의 텍스쳐 세그먼트들을 조합함으로써 조합 텍스쳐(50)를 획득하는 단계; 및
    상기 조합 텍스쳐(50)를 매핑함으로써, 상기 사용자 얼굴을 3차원 형상으로 나타내는 상기 아바타(70)를 획득하는 단계;
    를 포함하는 방법.
  13. 제12항에 있어서,
    상기 복수의 로우 텍스쳐들(21 내지 24)을 획득하는 단계는,
    상기 사용자 얼굴에 관한 2차원 이미지(10)를 획득하는 단계;
    상기 2차원 이미지(10)를 카툰화(cartoonize)함으로써, 카툰 이미지(10c)를 획득하는 단계;
    상기 획득된 카툰 이미지(10c)에 기초하여, 상기 사용자 얼굴에 대응되는 3차원 형상 이미지(15)를 획득하는 단계; 및
    상기 3차원 형상 이미지(15)를 펼쳐 2차원 평면 상에 대응시킴으로써, 상기 사용자 얼굴에 대응하는 상기 복수의 로우 텍스쳐들(도 4a의 20, 21 내지 24)을 획득하는 단계;
    를 포함하는 방법.
  14. 제12항 내지 제13항 중 어느 하나의 항에 있어서,
    상기 톤매칭을 수행하는 단계는,
    상기 복수의 로우 텍스쳐들(21 내지 24)의 피부 톤에 기초하여, 평균 피부 톤 세그먼트(25)를 획득하는 단계;
    상기 평균 피부 톤 세그먼트(25)에 포함된 색상들의 빈도에 관한 제1 빈도 정보(도 8의 A1 내지 A3 참고)를 획득하는 단계;
    상기 복수의 로우 텍스쳐들(21 내지 24)에 포함된 피부 톤 색상들의 빈도에 관한 제2 빈도 정보(도 8의 A4 내지 A6 참고)를 획득하는 단계; 및
    상기 제1 빈도 정보 및 상기 제2 빈도 정보에 기초하여, 상기 톤매칭을 수행하는 단계;
    를 포함하는, 방법.
  15. 제12항 내지 제14항 중 어느 하나의 항에 있어서,
    상기 조합 텍스쳐(50)를 획득하는 단계는,
    상기 텍스쳐 세그먼트들(41_1 내지 44_1, 41_2 내지 44_2, 41_3 내지 44_3, 41_4 내지 44_4)을 특징 영역 별로 세그먼트 데이터베이스에 저장하는 단계; 및
    상기 사용자 입력에 의해 상기 특징 영역 별로 선택된 상기 복수의 텍스쳐 세그먼트들을 조합함으로써 상기 조합 텍스쳐(50)를 획득하는 단계;
    를 포함하는, 방법.
  16. 제15항에 있어서,
    상기 특징 영역은 상기 사용자 얼굴의 피부 영역, 눈 영역, 코 영역 및 입 영역 중 적어도 하나를 포함하는, 방법.
  17. 제12항 내지 제16항 중 어느 하나의 항에 있어서,
    상기 복수의 텍스쳐 세그먼트들은 제1 사용자 얼굴에 관한 복수의 제1 텍스쳐 세그먼트들(1, 2)과 제2 사용자 얼굴에 관한 복수의 제2 텍스쳐 세그먼트들(3, 4)을 포함하고,
    상기 조합 텍스쳐(50)를 획득하는 단계는,
    상기 사용자 입력에 의해 선택된, 상기 복수의 제1 텍스쳐 세그먼트들 중 적어도 하나의 제1 텍스쳐 세그먼트(1, 2)와 상기 복수의 제2 텍스쳐 세그먼트들 중 적어도 하나의 제2 텍스쳐 세그먼트(3, 4)를 조합함으로써, 상기 조합 텍스쳐(도 12의 51)를 획득하는 단계를 포함하는, 방법.
  18. 제12항 내지 제17항 중 어느 하나의 항에 있어서,
    상기 조합 텍스쳐(50) 내 상기 복수의 텍스쳐 세그먼트들(41_1 내지 44_1, 41_2 내지 44_2, 41_3 내지 44_3, 41_4 내지 44_4) 중 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 평활화하여 평활화 텍스쳐(55)를 획득하는 단계; 및
    상기 평활화 텍스쳐(55)에 기초하여 상기 사용자 얼굴을 3차원 형상으로 나타내는 상기 아바타(70)를 획득하는 단계;
    를 더 포함하는, 방법.
  19. 제18항에 있어서,
    상기 평활화하는 단계는,
    상기 조합 텍스쳐(50) 내 상기 인접한 두 텍스쳐 세그먼트 간의 경계를 스무딩(smoothing)하는 단계; 및
    상기 조합 텍스쳐(50) 내 상기 인접한 두 텍스쳐 세그먼트 간의 피부 톤을 균일화(harmonization)하는 단계;
    를 포함하는, 방법.
  20. 제12 항 내지 제19 항 중 어느 하나의 항에 기재된 방법을 구현하기 위한 적어도 하나의 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020220108717A 2022-08-29 2022-08-29 사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법 KR20240030109A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220108717A KR20240030109A (ko) 2022-08-29 2022-08-29 사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법
PCT/KR2023/009425 WO2024048960A1 (ko) 2022-08-29 2023-07-04 사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220108717A KR20240030109A (ko) 2022-08-29 2022-08-29 사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법

Publications (1)

Publication Number Publication Date
KR20240030109A true KR20240030109A (ko) 2024-03-07

Family

ID=90098035

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220108717A KR20240030109A (ko) 2022-08-29 2022-08-29 사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법

Country Status (2)

Country Link
KR (1) KR20240030109A (ko)
WO (1) WO2024048960A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102135770B1 (ko) * 2014-02-10 2020-07-20 한국전자통신연구원 스테레오 카메라 기반의 3차원 얼굴 복원 방법 및 장치
KR102357340B1 (ko) * 2014-09-05 2022-02-03 삼성전자주식회사 얼굴 인식 방법 및 장치
GB2543893A (en) * 2015-08-14 2017-05-03 Metail Ltd Methods of generating personalized 3D head models or 3D body models
KR20200044198A (ko) * 2018-10-10 2020-04-29 (주)필링크아이 딥 러닝 기반의 의상 스타일 평가 방법 및 시스템
KR20200045759A (ko) * 2018-10-23 2020-05-06 홍은비 퍼스널 컬러 매칭 스타일링 시스템

Also Published As

Publication number Publication date
WO2024048960A1 (ko) 2024-03-07

Similar Documents

Publication Publication Date Title
US11676342B2 (en) Providing 3D data for messages in a messaging system
US11748957B2 (en) Generating 3D data in a messaging system
CN113362263B (zh) 变换虚拟偶像的形象的方法、设备、介质及程序产品
KR20220051376A (ko) 메시징 시스템에서의 3d 데이터 생성
KR20220167323A (ko) 메시징 시스템 내의 3d 데이터를 포함하는 증강 현실 콘텐츠 생성기들
CN110688948A (zh) 视频中人脸性别变换方法、装置、电子设备和存储介质
WO2022252866A1 (zh) 一种互动处理方法、装置、终端及介质
EP4200745A1 (en) Cross-domain neural networks for synthesizing image with fake hair combined with real image
US20240013463A1 (en) Applying animated 3d avatar in ar experiences
EP4272063A1 (en) Media content items with haptic feedback augmentations
KR20230156953A (ko) 실시간에서의 실제 크기 안경류 경험
US20230120037A1 (en) True size eyewear in real time
US20220318303A1 (en) Transmitting metadata via inaudible frequencies
US20220319061A1 (en) Transmitting metadata via invisible light
US20220319059A1 (en) User-defined contextual spaces
US20220319125A1 (en) User-aligned spatial volumes
KR20240030109A (ko) 사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법
EP4314999A1 (en) User-defined contextual spaces
US20220377309A1 (en) Hardware encoder for stereo stitching
US11874960B2 (en) Pausing device operation based on facial movement
US20220373791A1 (en) Automatic media capture using biometric sensor data
WO2022246373A1 (en) Hardware encoder for stereo stitching
WO2024010800A1 (en) Applying animated 3d avatar in ar experiences
WO2022245831A1 (en) Automatic media capture using biometric sensor data
WO2023192426A1 (en) Surface normals for pixel-aligned object