KR100366210B1 - 인간의 얼굴 모델을 생성하는 모델러 제작방법 및 기록매체 - Google Patents

인간의 얼굴 모델을 생성하는 모델러 제작방법 및 기록매체 Download PDF

Info

Publication number
KR100366210B1
KR100366210B1 KR1020000003179A KR20000003179A KR100366210B1 KR 100366210 B1 KR100366210 B1 KR 100366210B1 KR 1020000003179 A KR1020000003179 A KR 1020000003179A KR 20000003179 A KR20000003179 A KR 20000003179A KR 100366210 B1 KR100366210 B1 KR 100366210B1
Authority
KR
South Korea
Prior art keywords
face model
points
movement
feature point
information
Prior art date
Application number
KR1020000003179A
Other languages
English (en)
Other versions
KR20010073961A (ko
Inventor
양현승
김용주
한태우
이주호
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020000003179A priority Critical patent/KR100366210B1/ko
Publication of KR20010073961A publication Critical patent/KR20010073961A/ko
Application granted granted Critical
Publication of KR100366210B1 publication Critical patent/KR100366210B1/ko

Links

Classifications

    • 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
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • 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)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명은 하나의 표준 얼굴모델로 시작하여 다양한 형상의 얼굴모델을 제작하는 방법에 관한 것이다. 먼저, MPEG-4 SNHC에서 정한 특징점의 위치를 이동시켜 하위 레벨에서 얼굴모델을 변형하고, 하위 레벨 파라미터들을 조합하여 상위레벨에서 전체적인 얼굴을 변형한다. 이러한 얼굴 모델러 제작방법은 계층적으로 구성되어 있기 때문에, 하위 레벨에서의 파라미터 설정이 잘못되어 있으면 그 부분만 변경하면 된다. 또한, 고정된 표준 얼굴모델만을 사용할 수 있는 것이 아니라 다양한 표준 얼굴모델을 생성하여 새로운 모델을 생성해 낼 수도 있다. 따라서, 본 발명을 이용하면 사용 목적에 적합한 얼굴모델을 생성할 수 있다.

Description

인간의 얼굴 모델을 생성하는 모델러 제작방법 및 기록매체 { Human Head/Face Modeller Generation Method }
본 발명은 하나의 얼굴 표준 모델에 특징점 파라미터들을 적용하여 다양한 형상의 사람 얼굴 모델들을 생성하는 툴(모델러)을 제작하는 방법 및 이 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
이러한 인간의 얼굴 모델러에 의해 생성된 다양한 형상의 얼굴 모델들은 멀티미디어 통신에서 대리인으로 사용될 수 있으며, 인터넷 게임에서 자신만의 모델을 만들어 게임을 진행할 수도 있어 게임을 하는 사람의 흥미를 더 유발시킬 수 있다. 또한, 성형외과 시술, 영화, 광고제작, 컴퓨터 애니메이션 등 다양한 분야에 이용될 수 있다.
사람의 얼굴모델을 생성하는 방법은 아주 다양한데, 3차원 레이저 스캐너를이용하는 방법과 그래픽 모델러를 사용하는 방법 등이 있다.
먼저, 3차원 레이저 스캐너를 사용하는 방법은, 대상으로 하고 있는 사람의 실제 얼굴과 유사한 얼굴모델을 얻을 수 있는 장점이 있는 반면에, 사람이 레이저 스캐너가 있는 곳으로 이동하여야 하고, 많은 비용이 드는 단점이 있다.
또한, 그래픽 모델러를 이용하는 방법은, 캐릭터를 디자인하는 사람의 재능에 따라 생성된 얼굴모델의 결과에 차이가 심하게 나타나며 새로운 얼굴모델을 만들 때마다 비슷한 과정을 반복하여야 하는 단점이 있다.
또한, 인터넷이 일상 생활과 밀접해짐에 따라 인터넷상에서 자신을 표현하기 위해 대리인(아바타)을 사용하고 있는데, 가능한 한 자신과 비슷한 형상을 지닌 얼굴모델을 생성하기 위해 3차원 스튜디오맥스(3D Studio MAX)와 같은 복잡한 프로그램을 사용해야 하며, 이는 비전문가인 일반 사용자들에게는 매우 어려운 일이다. 특히, 사용자가 3차원 폴리곤 모델이나 NURBS 모델 같은 것에 익숙하지 않은 경우에는 얼굴모델을 구성하는 특징점 하나 하나를 직접 제어하는 데 많은 어려움이 따른다.
따라서, 일반 사용자들이 표준 얼굴모델을 사용하여 원하는 형상의 얼굴모델을 손쉽게 만들 수 있도록 한 프로그램이 필요하다. 종래의 프로그램들은 고정된 하나의 표준 얼굴모델만을 제공하고 있으며 고정된 표준 얼굴모델을 바꿀 수 있는 메커니즘은 제공하지 않는다. 하지만, 실제 사람은 인종, 성별, 연령에 따라 얼굴의 형태가 너무나 다양하기 때문에 단 하나의 표준 얼굴모델로 시작하여 모든 사람의 얼굴 형상을 표현하는 데에는 한계가 있다. 그리고, 프로그램에 따라서는 여러가지 얼굴모델들을 제공하는 것처럼 보이는 것이 있는데, 이런 프로그램들은 단지 몇 가지 얼굴모델들을 제공할 뿐이고 이 얼굴모델을 변형하는 메커니즘을 제공하지 않고 있다.
종래기술 중 다양한 형상의 표준 얼굴모델이 설정된 경우가 있으나, 이 다양한 표준 얼굴모델들의 구조가 모두 달라서, 제어하는 방법이 모든 모델들마다 다르게 설정하여야 하기 때문에 사용하기가 매우 불편하다. 따라서, 형상은 다를지라도 구조가 동일한 표준 얼굴모델들을 생성할 수 있는 방법이 요구된다.
따라서, 본 발명은 상기와 같은 종래기술의 문제점을 해결하기 위하여 안출된 것으로서, 각각의 파라미터 설정모듈들이 계층적으로 구성되어 서로 다른 레벨에서의 파라미터 정의와 설정이 각각 독립적으로 변경될 수 있는 인간의 얼굴 모델을 생성하는 모델러 제작방법을 제공하기 위한 것이다.
도 1은 본 발명의 한 실시예에 따른 인간의 얼굴 모델을 생성하는 모델러 제작방법을 도시한 흐름도이다.
상기한 목적을 달성하기 위한 본 발명에 따른 인간의 얼굴 모델을 생성하는 모델러 제작방법은, 임의의 표준 얼굴모델을 읽어 오는 단계와;상기 읽어 온 표준 얼굴모델을 분석하여, 상기 표준 얼굴모델을 구성하는 버텍스들의 총 개수와 폴리곤 형태의 패치들의 총 개수와 버텍스 그룹들에 대한 정보와 패치 그룹들에 대한 정보와 각 버텍스에 대한 정보와 각 패치에 대한 정보와 상기 표준 얼굴모델의 얼굴 모양을 특징짓는 특징점들에 대한 정보를 포함하는 TPL 파일 형식으로 변경하는 중간파일 생성단계와;상기 표준 얼굴모델의 얼굴 모양을 변형시키는 데 필요한 최소한의 점들을 특징점으로 설정하는 특징점 매핑단계와;상기 특징점별로 상기 특징점이 움직일 때 같이 움직이는 주변 점들과 그 움직임 양을 설정하는 하위 레벨 파라미터 설정단계, 및사용자 인터페이스용 상위 레벨 파라미터의 종류에 따라 상기 상위 레벨 파라미터 조절에 필요한 상기 특징점들의 움직임 양을 결정하는 상위 레벨 파라미터 편집단계를 포함하는 것을 특징으로 한다.
보다 양호하게는, 상기 하위 파라미터 설정단계는, 상기 움직이는 특징점을 중심으로 움직임 구간을 설정하는 제 1 단계와, 상기 움직임 구간을 다수 개의 레벨로 나누는 제 2 단계, 및 상기 특징점과 가까운 레벨의 구간에서는 점들의 움직임 양을 크게 설정하고 상기 특징점과 먼 레벨의 구간에서는 점들의 움직임 양을 작게 설정하는 제 3 단계를 포함한 것을 특징으로 한다.
보다 더 양호하게는, 상기 제 1 단계의 움직임 구간은, 상기 특징점을 중심으로 반경이 얼굴모델 총 길이의 1/3인 구(球)의 내부로 기본값을 설정하는 것을 특징으로 한다. 또한, 상기 제 1 단계의 움직임 구간은, 사용자에 의해 설정되는 것을 특징으로 한다.
보다 더 양호하게는, 상기 제 3 단계는, 상기 특징점(레벨 0)의 움직임 양이 1일 때, 특징점과 가장 먼 레벨의 움직임 양이 0이 되도록 하는 3차원 함수를 이용하여 각 레벨에서의 움직임 양을 설정하는 것을 특징으로 한다. 여기서, 상기 제3 단계는, 움직임 구간을 m 개의 레벨로 나누고, 임의의 레벨(x)에 따른 움직임 양(y)은 아래의 수식을 이용하여 구하는 것을 특징으로 한다.
《 수 식 》
또한, 본 발명에 따르면 상술하였던 인간의 얼굴 모델을 생성하는 모델러 제작방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공된다.
이하, 첨부한 도면을 참조하면서 본 발명의 한 실시예에 따른 "인간의 얼굴 모델을 생성하는 모델러 제작방법 및 기록매체"를 설명하면 다음과 같다.
본 발명에서 제시하는 인간의 얼굴 모델러는 앞서 지적한 문제점들을 해결하기 위하여 계층성, 편의성, 확장성, 호환성 등의 4가지 특성을 지닌다. 여기서, 계층성이라 함은, 각각의 파라미터 설정 모듈들이 계층적으로 구성되어 서로 다른 레벨에서의 파라미터 정의와 설정이 각각 독립적으로 변경될 수 있는 특성을 말한다. 편의성이라 함은, 상품화를 위해 모든 사용자들이 손쉽게 사용할 수 있는 편리한 인터페이스를 제공하는 바, 얼굴모델 상의 특징점이나 특징점에 영향을 받는정점들을 마우스로 쉽게 선택할 수 있으며 선택된 결과를 알기 쉽게 보여주는 특성을 말한다. 확장성이라 함은, 얼굴모델 편집에서 사용하는 표준 모델이 하나로 고정되어 있지 않고 다른 모델을 표준모델로 사용할 수 있도록 하여 비슷하게 변형된 얼굴모델을 얻을 수 있는 특성을 말한다. 호환성이라 함은, 다른 그래픽 모델러에서 제작한 모델들을 사용할 수 있도록 다른 파일 형식의 모델들도 입출력이 가능한 특성을 말한다.
본 발명의 한 실시예에 따른 인간의 얼굴 모델러 제작방법은, 도 1에 도시된 바와 같이 표준 얼굴모델을 생성/변경하여 중간파일 형식으로 저장하는 중간파일 저장단계와, 얼굴모양을 만드는데 필요한 최소한의 특징점들을 상기 중간파일로 저장된 표준 얼굴모델의 점(이하, 버텍스(vertex)와 동일한 개념으로 사용)들과 매핑시키는 특징점 매핑단계(S11), 상기 표준 얼굴모델의 점과 매핑된 임의의 특징점(이하, 하위 레벨 파라미터와 동일한 개념으로 사용)이 움직임에 따라 같이 움직이는 상기 얼굴모델의 점들의 그룹을 결정하는 하위 레벨 파라미터 설정단계(S12), 및 사용자 인터페이스용 상위 레벨 파라미터를 몇 개의 하위 레벨 파라미터들과 매핑시키는 상위 레벨 파라미터 편집단계(S13)를 포함한다.
다양한 얼굴모델을 사용할 수 있는 메커니즘을 제공하기 위해서는 먼저 표준 얼굴모델을 생성하고 읽어 들여야 한다. 이 표준 얼굴모델은 그래픽 모델러나 3차원 레인지 스캐너 등을 이용하여 생성하며, 이식성이 쉬운 가상현실마크업언어(VRML : Virtual Reality Markup Language 2.0)의 형식으로 변환하여 읽어 들이고, 중간형식으로 변경하고 편집한다.
이렇게 표준 얼굴모델이 결정되면, 상기 표준 얼굴모델의 하위 레벨 파라미터와 상위 레벨 파라미터를 매핑시킨다. 하위 레벨 파라미터와 상위 레벨 파라미터의 매핑과정은 하위 레벨 파라미터 설정과정과 상위 레벨 편집과정으로 이루어진다. 하위 레벨 파라미터 설정과정은 하위 레벨 파라미터와 표준 얼굴모델 상의 특징점들을 매핑하는 과정이고, 상위 레벨 편집과정은 상위 레벨 파라미터와 하위 레벨 파라미터들을 매핑시키는 과정이다. 이와 같이 하위 레벨 파라미터와 상위 레벨 파라미터가 매핑되면 상위 레벨 파라미터만을 사용하여 다양한 얼굴모델을 생성할 수 있다.
상술한 하위 레벨 파라미터 설정과정을 설명하면, 하위 레벨 편집자는 하위레벨 파라미터로 사용하고자 하는 MPEG-4 표준 특징점들을 상기 표준 얼굴모델의 한 점에 찍는다. 이를 위해서 하위 레벨 편집자는 최소한 MPEG-4 표준 특징점들의 위치와 인덱스에 대한 지식을 필요로 한다. 모든 특징점들이 각각의 점(vertex)과 매핑된 후에는 특징점이 자연스럽게 변형될 수 있도록 특징점 주위에 있는 점들의 움직임을 조정한다. 세세한 움직임을 나타내기 위해서는 모든 점 하나 하나마다 움직임 조절이 가능하지만, 가능한 그룹 단위로 묶어서 움직임을 편하게 제어할 수 있도록 인터페이스를 구현한다.
이렇게 하위 레벨 파라미터 설정과정이 끝나면, 상위 레벨 파라미터들을 몇 개의 하위 레벨 파라미터들과 매핑시키는 상위 레벨 편집과정을 수행한다. 이 상위 레벨 편집과정에서는 하위 레벨 파라미터 설정과정에서 결정한 여러 특징점들의 움직임을 조합하여 각각의 상위 레벨 파라미터의 움직임을 결정한다. 하나의 표준 얼굴모델에 대해 모든 매핑 작업이 이루어지면, 일반 사용자들은 위와 같은 매핑작업과는 상관없이, 이해하기 쉬운 형용사로 표현되는 상위 레벨 파라미터만을 사용하여, 표준 얼굴모델로부터 임의의 다양한 얼굴 모양을 생성해 낼 수 있다. 얼굴 모양이 완성되면 자체적으로 사용하는 중간파일 형식으로 저장하는데, 확장성을 위하여 VRML 2.0의 형식으로 변환하여 저장할 수 있다.
여기서, 완성된 얼굴 모양을 저장하는 중간파일 형식은 읽어 들여서 편집하기가 용이하도록 구성한 파일이다. 본 발명에 따른 프로그램에서는 확장자가 TPL인 중간파일을 이용한다. 중간파일의 내용을 살펴보면 다음과 같다.
중간파일에 가장 처음에 나타나는 정보는, 얼굴모델을 구성하는 점들의 총 개수, 패치(patch)의 총 개수, 얼굴모델이 여러 개의 폴리곤(polygon)으로 구성되어 있는 경우 그 폴리곤들을 VRML에서 각각 하나씩의 노드로 읽어 들였을 때 총 몇 개의 노드가 필요한 지에 대한 정보들이다. 프로그램 내에서는 얼굴모델의 각 노드를 구성하는 점들을 묶어서 버텍스 그룹(vertex group)으로 칭하고, 그 점들을 연결하는 패치들을 묶어서 패치 그룹(patch group)으로 칭하는데, 보통 패치 그룹의 개수와 버텍스 그룹의 개수는 같다. 위에서 말한 모델이 몇 개의 노드로 이루어져 있는 지에 대한 정보란 버텍스 그룹의 개수와 패치 그룹의 개수이다.
다음은 버텍스 그룹에 대한 정보가 나타난다. 즉, 버텍스 그룹의 인덱스, 그 버텍스 그룹을 구성하는 점들의 개수, 그 버텍스 그룹이 시작되는 점의 인덱스 등의 정보가 나타난다. 그러므로, 한 버텍스 그룹의 시작점의 인덱스에 그 버텍스 그룹을 구성하는 점들의 개수를 더해주면 다음 버텍스 그룹의 시작점이 된다.
그 다음으로 중간파일에 나타나는 정보는 패치 그룹에 대한 정보이다. 여기서도 버텍스 그룹과 마찬가지로 패치 그룹 인덱스, 각 패치 그룹을 구성하는 패치들의 개수, 그 패치 그룹이 시작되는 패치의 인덱스를 포함한다. 그러나, 버텍스 그룹과 다른 점은 패치 그룹 안에는 그 패치 그룹과 관계되는 폴리곤의 재질(material)값들이 포함되는 것이다. 패치 그룹과 관계되는 폴리곤의 재질 정보에는, 재질 노드(material node) 내에 있던 확산색(diffuse color), 방사색(emissive color), 거울색(line specular color), 주변강도(ambient intensity), 밝음(shininess), 및 투명도(transparency) 등이 포함된다.
다음으로 중간파일에 나타나는 정보는, 얼굴모델을 구성하는 점 하나 하나에 대한 정보들이다. 하나의 점마다 그 점이 속한 버텍스/패치 그룹의 그룹 인덱스와 현재 (x,y,z) 좌표값, 변경되기 전 처음에 VRML 파일에서 읽어 들였던 (x,y,z) 좌표 값을 가진다. 이 값은 현재까지 편집한 얼굴모델을 바꾸어 다시 원래의 표준 얼굴모델로 돌려보내고 싶을 때 사용할 수 있다.
다음에는 한 패치(patch)에 대한 정보들이 나타난다. 한 패치마다 그 패치의 인덱스, 그 패치가 속한 패치 그룹의 인덱스, 그 패치가 포함하는 점들이 속해있는 버텍스 그룹의 인덱스, 그리고 그 패치를 구성하는 세 개의 점들의 인덱스들을 가진다. 그리고, 화면에 그릴 때 삼각형의 패치 단위로 그리기 때문에 그 패치에 해당하는 확산색값을 패치 정보로 가지고 있도록 한다.
다음, 중간파일에는 특징점들에 대한 정보가 나타난다. 총 사용되는 특징점의 개수는 84 개이다. 하나의 특징점이 갖는 정보는 그 매핑되는 점의 인덱스, 그점이 최대로 움직일 수 있는 범위, 최소로 움직일 수 있는 범위, 현재 움직인 정도, 이 특징점이 움직일 때 따라 움직이는 주변 점들의 개수, 그 점들의 인덱스와 움직이는 정도에 관한 레벨, 총 레벨의 수와 각 레벨에 해당하는 0과 1사이의 가중치 값들이다. 이 정보들이 어떻게 사용되는 지는 아래에서 살펴보도록 하겠다. 이 정보들은 특징점을 결정한 후, 하위 레벨의 편집 과정에서 생성되는 정보들이다.
마지막으로 저장되어 있는 정보들은 상위 레벨 편집과정에서 생성되는 정보들로써, 상위 레벨에서 정의한 각각의 파라미터들의 움직임 정도는 여러 개의 하위 레벨 파라미터들의 움직임들의 조합으로 생성된다. 그 정보들은 하나의 상위 레벨 파라미터가 얼마만큼 변형되었는지, 그리고 그 파라미터의 움직임을 구성하는 하위 레벨 파라미터들의 개수, 각 하위 레벨 파라미터로 지정된 특징점의 인덱스와 그 특징점들의 움직이는 정도들이다. 이 움직임의 정도는 0과 1 사이의 값이다.
다음, 특징점을 선택하고 하위 레벨 파라미터를 설정하는 과정을 보다 상세하게 설명하면 다음과 같다.
얼굴모델을 편집하기 위해서는 먼저 하위 레벨 파라미터로 사용하고자 하는 특징점들을 얼굴모델 상의 하나의 점으로 매핑시켜야 한다. 본 발명에 따른 모델러에서 얼굴 형태를 만들기 위해 사용하는 특징점은 MPEG-4 SNHC(Synthetic /Natural Hybrid Coding)에서 정의한 84개의 FDP(Facial Description Parameter)(하위 레벨 파라미터)들이다. 이 특징점들은 일반적인 모든 얼굴 모양을 만드는 데 필요하다고 생각되는 최소한의 파라미터들이다. 화면상에서 특징점의 위치에 해당하는 점을 마우스로 선택한 후 그에 맞는 특징점의 인덱스를 선택하면 특징점과 얼굴모델 상의 점이 매핑된다. 이 특징점들에 대해서는 이동 가능한 최대 좌표값과 최소 좌표값을 주어 범위를 제한하는데, 그 범위를 전체 모델 크기의 1/3 정도로 충분히 주면 만화같은 캐릭터를 생성하는 것도 가능해진다.
이때, FDP들은 각각 하나의 점들과 매핑되기 때문에 한 특징점을 움직인다고 해서, 주변에 있는 점들도 따라서 움직이는 것은 아니다. 즉, 한 점만 튀어 나가는 비정상적인 형태로 변형되는 것이다. 그렇기 때문에 한 특징점을 움직였을 때 주변 점들도 부드럽게 따라 움직일 수 있도록, 함께 움직여야 하는 주변 점들의 범위와, 그 범위 안의 점들이 각각 얼마나 많이 움직여야 되는지를 결정해 주어야 한다.
본 발명에 따른 얼굴 모델러에서는 한 특징점에 대해서 함께 움직일 주변 점들은, 그 특징점을 중심으로 하고 반경이 얼굴모델 총 길이의 1/3 이 되는 구의 내부에 있는 모든 점들로 결정한다. 함께 움직이는 점들은 특징점으로부터 그 점까지의 거리에 따라 m개의 레벨로 나누는데, 사용자가 특징점을 어떤 양만큼 움직였을 때, 가장 가까이에 있는 레벨 1 그룹의 점들은 특징점보다는 작게 움직이지만 다른 그룹의 점들보다는 많이 움직여야 하고, 그 다음으로는 레벨 2 그룹의 점들이 많이 움직여야 한다. 그리고, 특징점으로부터 가장 멀리 떨어져 있는 레벨 (m-1) 그룹의 점들은 가장 적게 움직여야 하며, 레벨 m 그룹의 점들은 움직이지 않아야 한다.
특징점 자체는 레벨 0으로 항상 고정적으로 1만큼 움직인다고 보았을 때, 레벨과 움직이는 양과의 상관관계를 위해 레벨을 입력값으로 받아서 0과 1사이의 움직이는 양(weight)을 결정하는 함수를 정의한다. 움직이는 양을 결정하는 함수는, 레벨 x가 0일 때 결과값 y로 1을 갖고, 레벨 x가 m일 때 결과값 y로 0을 갖는 3차 함수로 결정한다. 이 함수는 레벨 0과 레벨 1 사이의 결과값, 레벨 (m-1)과 레벨 m 사이의 결과값이 아주 서서히 변하기 때문에 특징점의 움직임에 따라 주변의 따라 움직이는 점들이 어느 정도 부드러운 곡선 형태를 유지하면서 움직일 수 있도록 한다. 다음은 총 레벨의 수를 m 이라고 하였을 때 각 레벨 0 ∼ 레벨 m 에 따른 움직임 양을 결정하는 함수는 수학식 1과 같다.
상기한 수학식 1을 적용할 때, 턱이나 코, 뺨, 귀 등에는 레벨의 수를 6으로 하면 움직이는 정도와 범위가 매우 자연스러우나, 눈이나 입 주변에는 적용하기에 무리가 있다. 눈꺼풀을 편집할 때에는 눈동자 영역이 포함되어서는 안되고, 윗입술을 편집할 때에는 아랫입술이 포함되어서는 안 되는 등의 제한이 있기 때문이다. 또한, 잘 적용이 되는 부분이라도 사용자에 따라 세밀한 움직임을 조절하고 싶은 경우도 있다. 이런 경우를 위해서 움직임 범위와 양을 바꿀 수 있는 메커니즘을 제공한다.
움직이는 범위를 설정하기 위해서 사용자는 마우스를 이용하여 특징점을 중심으로 움직임 영역을 그린다. 그러면, 그 특징점이 움직일 때 따라 움직이는 점들은 그 영역 내부에 있는 모든 점들로 결정되고, 자동적으로 특징점은 레벨 0으로, 특징점으로부터 먼 곳에 있는 점일수록 큰 레벨로 레벨 값이 할당된다. 레벨에 따라 움직이는 정도는 위의 식에 의하여 결정된다.
이하에서는, 상위 레벨 파라미터 편집과정을 보다 상세하게 설명하면 다음과 같다. 상술하였던 하위 레벨 파라미터 설정과정에서는 특징점 각각의 움직임을 제어할 수 있다. 사용자는 이 특징점만을 움직여도 얼굴의 형태를 변형하는 것이 가능하지만, 사용자에게 특징점의 인덱스나, 따라 움직여야 하는 점들의 결정 등과 같은 세부적인 내용에 대해서 알게 하는 것은 그리 바람직한 일이 아니다. 그런 내용에 손을 대지 않고, 슬라이더 바만을 움직여서 변형을 한다고 해도 얼굴의 어느 방향이 x, y, z축인지조차 알기 어렵다. 그렇기 때문에 하위 레벨의 파라미터들이 결정된 후에는, 사용자가 이해하기 쉬운 형용사로 상위 레벨 파라미터들을 정의하고, 파라미터 값으로 사용하기 위해 그 형용사에 해당하는 정도를 슬라이더 바로 제어할 수 있도록 함으로써 좀 더 사용자에게 친숙한 인터페이스를 제공해야 한다. 상위 레벨 파라미터의 움직임은 하위 레벨 파라미터인 특징점들의 움직임의 조합을 통해 이루어진다.
본 모델러에서 정의해 놓은 상위 레벨의 파라미터 집합(set)은 아래의 표 1과 같다.
얼굴형 윗 폭, 아랫 폭, 높이, 윗 깊이(앞, 뒤), 아랫 깊이, 둥근 정도
이목구비 배치 이마 높이, 턱 위치, 광대뼈 높이, 뒤통수 높이, 인중의 길이, 코와 눈 사이의 길이, 눈과 눈썹 사이의 길이
깊이, 폭, 각도
길이, 폭, 콧등의 높이, 코끝의 위치
길이, 윗 입술 두께, 아랫 입술 두께
높이, 폭, 귀가 서 있는 정도, 귓볼의 길이
눈썹 길이, 폭, 각도, 구부러진 정도
치아 위 치아의 폭, 아랫 치아의 폭
상위 레벨의 파라미터 값을 결정하기 위해서는 한 파라미터를 조절하기 위한 특징점들을 먼저 결정을 해야 하고, 그 파라미터에 관한 슬라이더 바를 움직일 때 각각의 특징점들을 x, y, z축으로 각각 얼마만큼씩 움직여야 하는지 결정해 주어야 한다.이렇게 상위 레벨 파라미터에 따라 움직여야 할 특징점과 해당 특징점의 움직임 양과, 해당 특징점이 움직임에 따라 같이 움직이는 주변점들 및 그 움직임 양이 결정되면, 사용자가 얼굴 특징에 따라 상위 레벨 파라미터를 조절하면 그에 따라 특징점 및 그 주변점들이 적절하게 움직이기 때문에, 사용자들은 원하는 얼굴 모양을 손쉽게 편집할 수 있게 된다.
위에서 양호한 실시예에 근거하여 이 발명을 설명하였지만, 이러한 실시예는 이 발명을 제한하려는 것이 아니라 예시하려는 것이다. 이 발명이 속하는 분야의 숙련자에게는 이 발명의 기술사상을 벗어남이 없이 위 실시예에 대한 다양한 변화나 변경 또는 조절이 가능함이 자명할 것이다. 그러므로, 이 발명의 보호범위는 첨부된 청구범위에 의해서만 한정될 것이며, 위와 같은 변화예나 변경예 또는 조절예를 모두 포함하는 것으로 해석되어야 할 것이다.
이상과 같이 본 발명에 의하면, VRML로 변환이 가능한 얼굴모델을 특징점들을 정하면 모두 표준 얼굴모델로 사용할 수 있다. 또한, 계층 구조로 설계되어 있기 때문에 다양한 상위 레벨 파라미터의 정의와 하위 레벨 파라미터로의 매핑 관계가 가능하게 함으로써 프로그램의 확장성을 제공할 수 있다. 그리고, 하위 레벨 파라미터로 MPEG-4 SNHC에서 정의한 표준 FDP를 사용함으로써 이식성을 확장시키고 있으며, 하위 레벨 파라미터 값을 결정할 때 디폴트로 간단한 변형 방법을 제공하고 보다 자연스러운 변형을 할 수 있도록 얼굴모델을 구성하는 점들 하나 하나의 움직임까지 제어 할 수 있는 기능도 제공하고 있어 사용자로 하여금 보다 편리한 얼굴모델 편집이 가능하도록 할 수 있다.

Claims (9)

  1. 임의의 표준 얼굴모델을 읽어 오는 단계와;
    상기 읽어 온 표준 얼굴모델을 분석하여, 상기 표준 얼굴모델을 구성하는 버텍스들의 총 개수와 폴리곤 형태의 패치들의 총 개수와 버텍스 그룹들에 대한 정보와 패치 그룹들에 대한 정보와 각 버텍스에 대한 정보와 각 패치에 대한 정보와 상기 표준 얼굴모델의 얼굴 모양을 특징짓는 특징점들에 대한 정보를 포함하는 TPL 파일 형식으로 변경하는 중간파일 생성단계와;
    상기 표준 얼굴모델의 얼굴 모양을 변형시키는 데 필요한 최소한의 점들을 특징점으로 설정하는 특징점 매핑단계와;
    상기 특징점별로 상기 특징점이 움직일 때 같이 움직이는 주변 점들과 그 움직임 양을 설정하는 하위 레벨 파라미터 설정단계, 및
    사용자 인터페이스용 상위 레벨 파라미터의 종류에 따라 상기 상위 레벨 파라미터 조절에 필요한 상기 특징점들의 움직임 양을 결정하는 상위 레벨 파라미터 편집단계를 포함하는 것을 특징으로 하는 인간의 얼굴 모델을 생성하는 모델러 제작방법.
  2. 제 1 항에 있어서, 상기 하위 레벨 파라미터 설정단계는,
    상기 특징점을 중심으로 움직임 구간을 설정하는 제 1 단계와,
    상기 움직임 구간을 상기 특징점과의 거리에 따라 다수 레벨의 부분 구간으로 나누는 제 2 단계, 및
    상기 특징점과 가까운 레벨의 부분 구간에서는 점들의 움직임 양을 크게 설정하고 상기 특징점과 먼 레벨의 부분 구간에서는 점들의 움직임 양을 작게 설정하는 제 3 단계를 포함한 것을 특징으로 하는 인간의 얼굴 모델을 생성하는 모델러 제작방법.
  3. 제 2 항에 있어서, 상기 제 1 단계의 움직임 구간은, 상기 특징점을 중심으로 반경이 얼굴모델 총 길이의 1/3인 구(球)의 내부로 설정하는 것을 특징으로 하는 인간의 얼굴 모델을 생성하는 모델러 제작방법.
  4. 제 2 항에 있어서, 상기 제 3 단계는, 상기 특징점의 움직임 양이 1이고, 상기 특징점과 가장 먼 레벨의 부분 구간에서의 움직임 양이 0이 되도록 하는 3차원 함수를 이용하여 각 레벨의 부분 구간에서의 움직임 양을 설정하는 것을 특징으로 하는 인간의 얼굴 모델을 생성하는 모델러 제작방법.
  5. 삭제
  6. 삭제
  7. 제 4 항에 있어서, 상기 제 3 단계는, 움직임 구간을 m 개의 레벨로 나누고, 임의의 레벨(x)의 부분 구간에서의 움직임 양(y)은 아래의 수식을 이용하여 구하는 것을 특징으로 하는 인간의 얼굴 모델을 생성하는 모델러 제작방법.
    《 수 식 》
  8. 삭제
  9. 컴퓨터에,
    임의의 표준 얼굴모델을 읽어 오는 단계와;
    상기 읽어 온 표준 얼굴모델을 분석하여, 상기 표준 얼굴모델을 구성하는 버텍스들의 총 개수와 폴리곤 형태의 패치들의 총 개수와 버텍스 그룹들에 대한 정보와 패치 그룹들에 대한 정보와 각 버텍스에 대한 정보와 각 패치에 대한 정보와 상기 표준 얼굴모델의 얼굴 모양을 특징짓는 특징점들에 대한 정보를 포함하는 TPL 파일 형식으로 변경하는 중간파일 생성단계와;
    상기 표준 얼굴모델의 얼굴 모양을 변형시키는 데 필요한 최소한의 점들을 특징점으로 설정하는 특징점 매핑단계와;
    상기 특징점별로 상기 특징점이 움직일 때 같이 움직이는 주변 점들과 그 움직임 양을 설정하는 하위 레벨 파라미터 설정단계, 및
    사용자 인터페이스용 상위 레벨 파라미터의 종류에 따라 상기 상위 레벨 파라미터 조절에 필요한 상기 특징점들의 움직임 양을 결정하는 상위 레벨 파라미터 편집단계를 포함하는 모델러 제작방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020000003179A 2000-01-24 2000-01-24 인간의 얼굴 모델을 생성하는 모델러 제작방법 및 기록매체 KR100366210B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000003179A KR100366210B1 (ko) 2000-01-24 2000-01-24 인간의 얼굴 모델을 생성하는 모델러 제작방법 및 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000003179A KR100366210B1 (ko) 2000-01-24 2000-01-24 인간의 얼굴 모델을 생성하는 모델러 제작방법 및 기록매체

Publications (2)

Publication Number Publication Date
KR20010073961A KR20010073961A (ko) 2001-08-03
KR100366210B1 true KR100366210B1 (ko) 2002-12-31

Family

ID=19640835

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000003179A KR100366210B1 (ko) 2000-01-24 2000-01-24 인간의 얼굴 모델을 생성하는 모델러 제작방법 및 기록매체

Country Status (1)

Country Link
KR (1) KR100366210B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100830673B1 (ko) * 2006-06-23 2008-05-20 (주)에프엑스기어 사용자 특성반영 가상캐릭터 시뮬레이션 시스템
KR101118467B1 (ko) * 2010-06-04 2012-03-12 주식회사 테스 기판처리장치의 rf접지 어셈블리
KR102054773B1 (ko) * 2014-12-17 2019-12-12 한국전자통신연구원 3차원 프린팅을 위한 3차원 객체 저작 장치 및 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0896162A (ja) * 1994-09-21 1996-04-12 Atr Tsushin Syst Kenkyusho:Kk 表情再現装置
JPH08305836A (ja) * 1995-05-09 1996-11-22 Casio Comput Co Ltd 顔画像作成装置
JPH1011609A (ja) * 1996-05-16 1998-01-16 Cyberglass Ltd 動画キャラクタの生成装置及び方法
KR19990011403A (ko) * 1997-07-23 1999-02-18 이해규 계층구조를 적용한 그래픽모델러의 작도방법
KR19990034391A (ko) * 1997-10-29 1999-05-15 전주범 3 차원 모델 기반 코딩 시스템의 변형 입술 합성 장치
JPH11213132A (ja) * 1998-01-27 1999-08-06 Atr Ningen Joho Tsushin Kenkyusho:Kk 任意表情を持つ3次元顔モデルの生成方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0896162A (ja) * 1994-09-21 1996-04-12 Atr Tsushin Syst Kenkyusho:Kk 表情再現装置
JPH08305836A (ja) * 1995-05-09 1996-11-22 Casio Comput Co Ltd 顔画像作成装置
JPH1011609A (ja) * 1996-05-16 1998-01-16 Cyberglass Ltd 動画キャラクタの生成装置及び方法
KR19990011403A (ko) * 1997-07-23 1999-02-18 이해규 계층구조를 적용한 그래픽모델러의 작도방법
KR19990034391A (ko) * 1997-10-29 1999-05-15 전주범 3 차원 모델 기반 코딩 시스템의 변형 입술 합성 장치
JPH11213132A (ja) * 1998-01-27 1999-08-06 Atr Ningen Joho Tsushin Kenkyusho:Kk 任意表情を持つ3次元顔モデルの生成方法

Also Published As

Publication number Publication date
KR20010073961A (ko) 2001-08-03

Similar Documents

Publication Publication Date Title
US6999084B2 (en) Method and apparatus for computer graphics animation utilizing element groups with associated motions
US8139068B2 (en) Three-dimensional animation of soft tissue of characters using controls associated with a surface mesh
US6283858B1 (en) Method for manipulating images
KR20210002888A (ko) 2차원 이미지로부터 3차원 아바타를 생성하는 방법, 장치 및 시스템
US11461950B2 (en) Object creation using body gestures
JPH1011609A (ja) 動画キャラクタの生成装置及び方法
US20180005428A1 (en) Method and apparatus for generating graphic images
CN111324334A (zh) 一种基于叙事油画作品开发虚拟现实体验系统的设计方法
CN110443872B (zh) 一种具备动态纹理细节的表情合成方法
Wang et al. Langwidere: A new facial animation system
Maraffi Maya character creation: modeling and animation controls
KR100366210B1 (ko) 인간의 얼굴 모델을 생성하는 모델러 제작방법 및 기록매체
JP5920858B1 (ja) プログラム、情報処理装置、深度定義方法及び記録媒体
WO1998035320A1 (en) Animation system and method
JP2003337956A (ja) コンピュータグラフィックス・アニメーション装置及びコンピュータグラフィックス・アニメーション方法
Bill et al. Computer sculpting of polygonal models using virtual tools
JP7145359B1 (ja) 推論モデル構築方法、推論モデル構築装置、プログラム、記録媒体、構成装置及び構成方法
CN110163957A (zh) 一种基于唯美人脸程序的表情生成系统
KR20050009504A (ko) 사용자 애니메이션 캐릭터 제작 방법 및 사용자애니메이션 캐릭터 제공 서비스 시스템
KR20060067242A (ko) 해부 데이터를 이용한 얼굴 애니메이션 생성 시스템 및 그방법
KR20020015229A (ko) 캐리커쳐의 표정변형을 위한 방법 및 장치
Bibliowicz An automated rigging system for facial animation
Gunpinar et al. Computer Sand Art
Santos Virtual Avatars: creating expressive embodied characters for virtual reality
Küderle Muscle-Based Facial Animation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20081201

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee