KR101053395B1 - 동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법 - Google Patents

동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법 Download PDF

Info

Publication number
KR101053395B1
KR101053395B1 KR1020090052017A KR20090052017A KR101053395B1 KR 101053395 B1 KR101053395 B1 KR 101053395B1 KR 1020090052017 A KR1020090052017 A KR 1020090052017A KR 20090052017 A KR20090052017 A KR 20090052017A KR 101053395 B1 KR101053395 B1 KR 101053395B1
Authority
KR
South Korea
Prior art keywords
discrete
motion
editing
constraints
path
Prior art date
Application number
KR1020090052017A
Other languages
English (en)
Other versions
KR20100133232A (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 KR1020090052017A priority Critical patent/KR101053395B1/ko
Priority to US13/376,781 priority patent/US9030479B2/en
Priority to PCT/KR2009/003307 priority patent/WO2010143766A1/ko
Publication of KR20100133232A publication Critical patent/KR20100133232A/ko
Application granted granted Critical
Publication of KR101053395B1 publication Critical patent/KR101053395B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • 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
    • G06T13/00Animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2213/00Indexing scheme for animation
    • G06T2213/08Animation software package

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)

Abstract

동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법을 개시한다. 동작 편집 시스템은 사용자의 제약에 따라 입력된 캐릭터 데이터의 공간적 경로를 편집하고, 상호작용적 시간 왜곡을 처리하는 라플라시안 동작 편집부 및 캐릭터 데이터가 처리되는 동안 디스크리트 변환을 적용하는 디스크리트 동작 편집부를 포함한다.
Figure R1020090052017
애니메이션, 캐릭터, 동작, 경로, 제약

Description

동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법{SYNCHRONIZED MULTI-CHARACTER MOTION EDITING SYSTEM AND METHOD}
본 발명에 따른 실시예들은 동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법에 관한 것이다.
복수의 캐릭터간에 협력적이고 적대적인 상호작용은 보통 공간 및 시간 모두에서 동기화가 요구된다. 대부분의 존재하는 동작 편집 기술은 각각의 개별 캐릭터의 동작을 독립적으로 변형한다. 동기화된 복수의 캐릭터 동작을 편집하는 경우 만약 사용자가 인간 사이에 존재하는 제약을 동기화를 위해 수동으로 유지하는 것은 매우 불편하고 비효율적이다. 본 명세서에서는 보다 효율적으로 복수의 캐릭터의 동작을 편집할 수 있는 동작 편집 시스템 및 방법을 제공한다.
본 발명의 일실시예는 통합된 프레임워크(framework)에서 복수의 캐릭터에 대한 공간적 경로 편집, 시간 왜곡 및 인간 사이에 발생하는 상호작용을 다룰 수 있는 동작 편집 시스템 및 방법을 제공한다.
본 발명의 일실시예는 복수의 캐릭터에 대해 상호작용적 조작 인터페이스를 통해 불연속적인 편집과 연속적인 경로 편집이 끊김없이 결합될 수 있고, 불연속적인 편집 특성을 통합함으로써 큰 스케일에서 동기화된 동작을 편집할 수 있는 동작 편집 시스템 및 방법을 제공한다.
본 발명의 일실시예에 따른 동작 편집 시스템은 사용자의 제약에 따라 입력된 캐릭터 데이터의 공간적 경로를 편집하고, 상호작용적 시간 왜곡을 처리하는 라플라시안 동작 편집부 및 캐릭터 데이터가 처리되는 동안 디스크리트 변환을 적용하는 디스크리트 동작 편집부를 포함한다.
본 발명의 일측면에 따르면, 상기 라플라시안 동작 편집부는 모양-보존 조작과 스케일 보상을 통해 상기 공간적 경로를 편집하는 공간 경로 편집부 및 상호작용적 시간 왜곡을 처리하는 시간 왜곡 처리부를 포함할 수 있다.
본 발명의 일측면에 따르면, 상기 라플라시안 동작 편집부는 디제너레이트(degenerate) 케이스를 처리하는 디제너레이트 케이스 처리부 및 캐릭터의 전체-몸체를 개선하는 전체 몸체 개선부를 더 포함할 수 있다.
본 발명의 일측면에 따르면, 상기 디스크리트 동작 편집부는 상기 캐릭터 데이터의 동작 경로에 디스크리트 변환을 적용하는 디스크리트 변환 적용부, 상기 디스크리트 변환이 적용된 동작 경로가 상기 사용자의 제약을 만족하기 위한 변형 에너지를 계산하는 변형 에너지 계산부, 불필요한 디스크리트 변환을 제거하는 디스크리트 변환 제거부 및 디스크리트 변환의 평가를 위한 부표본을 생성하는 가속화부를 포함할 수 있다.
본 발명의 일측면에 따르면, 상기 디스크리트 변환은 삽입, 삭제 및 대체의 세 가지 타입을 포함할 수 있고, 상기 사용자의 제약은 핀 제약, 관계 제약 및 엔드-이펙트 제약을 포함하는 공간적 제약 및 절대 시간, 존속기간 및 동기화를 포함하는 시간적 제약을 포함할 수 있다.
본 발명의 일실시예에 따른 라플라시안 동작 편집부 및 디스크리트 동작 편집부를 포함하는 동작 편집 시스템에서 동작을 편집하는 방법은 상기 라플라시안 동작 편집부에서 사용자의 제약에 따라 입력된 캐릭터 데이터의 공간적 경로를 편집하고, 상호작용적 시간 왜곡을 처리하는 단계 및 상기 디스크리트 동작 편집부에서 캐릭터 데이터가 처리되는 동안 디스크리트 변환을 적용하는 단계를 포함한다.
본 발명의 일실시예에 따르면, 통합된 프레임워크(framework)에서 복수의 캐릭터에 대한 공간적 경로 편집, 시간 왜곡 및 인간 사이에 발생하는 상호작용을 다룰 수 있다.
본 발명의 일실시예에 따르면, 복수의 캐릭터에 대해 상호작용적 조작 인터 페이스를 통해 불연속적인 편집과 연속적인 경로 편집이 끊김없이 결합될 수 있고, 불연속적인 편집 특성을 통합함으로써 큰 스케일에서 동기화된 동작을 편집할 수 있다.
이하 첨부된 도면을 참조하여 본 발명에 따른 다양한 실시예를 상세히 설명하기로 한다.
인간 동작 데이터를 대화식으로 상호작용적으로 편집하는 능력은 캐릭터 애니메이션에 있어서 필수적이다. 본 발명의 일실시예에 따른 동작 편집 시스템에서 이용되는 라플라시안 동작 편집은 복수의 캐릭터간의 상화작용을 선형제약의 컬렉션으로서 공식화하고, 사용자가 시공간적 영역(domain)에서 직접적으로 캐릭터의 동작을 조절하는 동안 상기 선형제약을 강제(enforce)한다. 다양한 타입의 조작핸들이 절대적/상대적 공간적 위치, 방향, 시간, 존속기간 그리고 복수의 캐릭터에 대한 동기화를 조건으로 지정하기 위해 제공될 수 있다. 또한, 비 순차적인 개별 편집 능력은 본 실시예에 따른 동작 편집 인터페이스에 의해 통합될 수 있고, 따라서 연속적이고 개별적인 편집이 일제히 그리고 한결같이 수행될 수 있다. 본 명세서에서는 복수의 캐릭터 동작이 시공간적 제약을 이용하여 실시간으로 동기화되고 조작됨을 설명한다.
상호작용적인 인간 동작 데이터의 편집 능력은 캐릭터 애니메이션에 있어서 필수적인 도구이다. 동작 편집의 공통적인 목표는 본질적인 품질과 원래 동작의 특징을 가능한 많이 보존하면서 존재하는 동작 데이터에 원하는 변화를 만들어 내 는 것이다. 상호작용 편집 기술은 일반적으로 사용자가 캐릭터의 이동궤적을 일부분을 선택하고, 선택한 지점을 직접적으로 드래그하여 동작 데이터를 조작한다.
복수의 캐릭터간에 협력적이고 적대적인 상호작용은 보통 공간 및 시간 모두에서 동기화가 요구된다. 대부분의 존재하는 동작 편집 기술은 각각의 개별 캐릭터의 동작이 독립적으로 조작되는 것을 허락한다. 동기화된 복수의 캐릭터 동작을 편집하는 것은 만약 사용자가 인간 사이에 존재하는 제약을 동기화를 위해 수동으로 유지해야 한다면 성가실 수 있다. 본 명세서에서는 제약을 유지하면서 사용자가 캐릭터들간에 상호작용을 선형 제약의 컬렉션으로서 지정하고, 동기화된 복수의 캐릭터 동작을 동시에 조작하는 것을 허락하는 새로운 상호작용 동작 편집 기술을 제공한다.
다양한 타입의 조작핸들과 인간 사이에 존재하는 제약은 절대적/상대적 공간 위치, 방향, 시간기간 및 상호작용의 시간적 조절을 조건으로서 지정함으로써 제공될 수 있다. 사용자는 동기화된 동작 데이터를 직관적이고, 사용하기 쉬운 사용자 인터페이스를 통해 공간적 그리고 시간적 영역에서 잡아 늘이거나 줄일 수 있다.
본 실시예에 따른 동작 편집 시스템은 라플라시안 메쉬 편집의 일차원 버전에 기초한다. 이 방법은 다각형 커브가 가능한 한 원래의 형상을 보존하면서 변형되는 것을 허락한다. 동기화된 동작 경로를 다루는 아이디어를 일반화하고, 라플라시안 공식에서 시공간적 제약이 어떻게 협력하는가 그리고 디제너레이트된 경우를 어떻게 극복하는가를 논의한다. 공간적 경로 편집과 상호작용적인 시간 뒤틀림(warping) 모두를 위해 이러한 경로 편집 알고리즘을 사용한다. 따라서, 동작 데이터의 공간적 그리고 시간적 관점이 균일하게 다뤄질 수 있다.
라플라시안 동작 편집은 캐릭터의 동작 궤도를 휘게 함으로써 원래 동작에 대한 부드럽고 연속적인 변화를 만든다. 이러한 동작의 근원적인 구조는 가벼운 늘임, 줄임, 구부림에 대하여 변하지 않고 유지된다. 그러나, 동작 패스에서 큰 편집을 수용하기 위해서는 워킹스텝의 추가나 제거와 같이 불연속적이고 구조적인 동작의 변형이 필요하다. 이러한 불연속적인 동작 편집은 동작 데이터를 짧은 클립(clip)으로 구분하고, 구분된 동작 데이터들을 이어 맞춤으로써 수행될 수 있다. 본 실시예에 따른 동작 편집 시스템은 동작 편집 인터페이스에서 비 순차적 불연속적 편집 능력을 끊김없이 통합시킨다. 따라서, 불연속적 변화는 상호작용적인 조작 동안 연속적인 경로 편집과 끊김없이 부드럽게 일어난다. 불연속적인 동작 경로의 최적화는 가능한 불연속적 변형의 수에 대한 기하급수적인 계산 복잡성이 잘 알려져 있다. 풍부한 연결 동작의 컬렉션을 이용한 일반적인 이산 최적화는 상호작용적 어플리케이션에서는 비 실용적이다. 다행히도, 상호작용적 편집은 그 특성상 점진적으로 변하고 따라서 갑작스런 변화가 조작에서 허락되지 않는다. 이러한 점증적인 변화 과정은 능률적이고 점증적인 전략을 통해 상호작용적인 성과에 도달하는 것을 허락한다. 본 실시예에 따른 동작 편집 시스템의 연속적이고 불연속적인 편집 능력을 각각 다른 캐릭터와 환경 물체에 대해 상호작용적인 복수의 캐릭터에 대해 정확한 시공간적 제어를 필요로 하는 예들을 통해 설명한다.
Ⅰ. 복수의 캐릭터 상호작용
애니메이션 캐릭터들은 시간과 공간 모두에 동기화된 다른 캐릭터들 및 환경과 상호작용한다. 이러한 캐릭터-환경 및 캐릭터-캐릭터간의 관계는 상대적 공간 위치, 공간 방향 및 상호작용 시간에 의해 묘사될 수 있다.
본 발명의 일실시예는 선형 제약을 조건으로 지정할 수 있는 복수의 캐릭터간 상호작용을 고려하고, 선형 균등 제약을 갖는 시스템으로서 선형 방정식의 모션 편집 문제를 공식화한다.
관절로 연결된 캐릭터의 동작은 기준 좌표계(reference coordinate system)에서 시간에 따라 변동하는 관절 각도와 함께 루트 몸체 부분의 시간에 따라 변동하는 위치 및 방향에 의해 표현될 수 있다. 지면 위에 설계된 루트 궤도는 동작 경로를 형성한다. 본 실시예에 따른 동작 편집 시스템은 동작 경로 및 전체 몸체의 동작을 편집하기 위한 엔드-이펙터(end-effector) 중 하나에 대한 제약을 조건으로 지정하는 것을 허락한다. 인간 사이에 존재하는 제약에 의해 동기화된 복수의 동작 경로의 편집에 집중한다. 각각의 경로가 수정될 때 엔드-이펙터 제약을 강제하고 풋 슬라이딩 문제점(foot-sliding artifact)를 제거하기 위해, 전체 몸체의 동작을 상세히 설명한다.
우선, 아래 표 1은 본 명세서에서 이용되는 수학적 기호들을 나타낸다.
Figure 112009035451573-pat00001
1-1. 공간적 제약
지평면 위에서 몸체(골반)의 위치와 방향의 시간의 연속을 묘사하는 동작 경로는 '{(p i , θ i ) ∈
Figure 112009035451573-pat00002
2 ×
Figure 112009035451573-pat00003
}'와 같이 표현될 수 있다. 수행의 편의를 위해 본 명세서에서는 전역 기준 좌표계(global reference coordinate system)에서 위치 'pi'를, 동작 경로의 탄젠트 벡터와 노멀 벡터에 의해 정의된 지역 좌표계에 대해서는 방향 'θi'를 각각 이용한다. 여기서, 탄젠트 벡터는 포인트 'p i '에서의 차분, 't i = p i +1 - p i -1'와 같이 나타낼 수 있고, 노멀 벡터는 'R'이 90° 각도의 2 × 2 회전행렬(rotation matrix)인 경우 'n i = Rt i '와 같이 나타낼 수 있다. 방향 'θ i'이 지역 좌표계(local coordinate system)에 속해있다면 캐릭터의 방향은 병진(translational) 이동 경로의 변형에 대해서는 자동적으로 결정될 수 있다. 따라서, 이후 모션 경로에서는 오직 위치 성분만을 조작하고, 방향 성분은 위치 성분의 조작에 따라 적절히 조정될 수 있다.
하나의 포인트에서 탄젠트 벡터는 '||t i || < ε'와 같은 정지(stationary) 모션에서 디제너레이트(degenerate)될 수 있다. 이러한 상황을 극복하기 위해, 우선 탄젠트 벡터의 길이를 확인함으로써, 모든 디제너레이트 포인트가 식별될 수 있다. 이때, 가까운 비-디제너레이트 탄젠트 벡터를 디제너레이트 포인트에 선형보간법으로 삽입함으로써, 새로운 탄젠트 벡터가 결정될 수 있다.
동작 편집 시스템은 상호작용적 조작을 위해 공간적 제약의 3가지 타입을 제공할 수 있다. 여기서, 핀(pinning) 제약 및 관계(relative) 제약은 엔드-이펙터(end-effector) 제약이 캐릭터 몸체의 특정 부위에 강제되는 동안 경로 패스상에 강제될 수 있다.
핀은 프레임 'i'에서 캐릭터의 위치와 방향이 전역 기준 좌표계에 대해 제약됨을 의미할 수 있다. 위치 제약이 '(c x , c y ) ∈
Figure 112009035451573-pat00004
2'와 같이 주어졌을 때, 제약에 따른 방정식은 pi들의 연속(series)에 대해 간단한 선형으로 하기 수학식 1과 같이 표현될 수 있다. 유사하게, '(d x , d y ) ∈
Figure 112009035451573-pat00005
2'와 같이 표현되는 방향에서 동작 경로의 탄젠트 방향은 하기 수학식 2와 같이 선형적으로 제약될 수 있다.
Figure 112009035451573-pat00006
Figure 112009035451573-pat00007
관계는 프레임 'i'에서 캐릭터 α의 위치 및 방향이 프레임 'j'에서 또 다른 캐릭터 β의 지역 좌표계의 몸체에 대해 제약됨을 의미할 수 있다. 관계 위치가 '(c x , c y ) ∈
Figure 112009035451573-pat00008
2'와 같이, 관계 방향이 '(d x , d y ) ∈
Figure 112009035451573-pat00009
2'와 같이 주어졌을 때 제약을 위한 방정식은 각각 하기 수학식 3 및 하기 수학식 4와 같이 표현될 수 있다.
Figure 112009035451573-pat00010
Figure 112009035451573-pat00011
엔드-이펙터는 표준 역기구학 솔버(standard inverse kinematics solver)에 의해 다뤄질 수 있는 제약의 타입을 포함한다. 일반적으로, 특정 프레임에서 캐릭터의 몸체 부분의 위치 및 방향은 기준 좌표계나 또 다른 캐릭터/물체의 지역 좌표 계에 관해서 제약될 수 있다.
모든 타입의 제약은 인스턴스 제약(instant constraints)이라 불리는 싱글 타임 인스턴스 및 변동 제약(variational constraints)이라 불리는 시간 간격 중 하나로 지정될 수 있다.
도 1은 복수의 캐릭터와 객체를 나타낸 일례이다. 여기서, 의자를 향해 걸어가고, 의자를 마주보고 들어올려 함께 나르는 제1 캐릭터(101) 및 제2 캐릭터(102)를 고려할 때, 협동적이고 동기화된 동작을 편집하기 위해 제1 캐릭터(101) 및 제2 캐릭터(102)가 정확한 위치에서 의지와의 관계를 유지하기 위한 관계 제약 및 의자를 옮기는 동안 캐릭터들의 손이 의자 상에 유지되도록 하기 위한 엔드-이펙터 제약이 조건으로 지정될 수 있다. 제3 캐릭터(103)는 의자를 나르는 제1 캐릭터(101) 및 제2 캐릭터(102)와의 충돌을 피하기 위한 관계 제약이 조건으로 지정될 수 있다. 제1 시간 트랙(104)은 제3 캐릭터(103)의, 제2 시간 트랙(105)는 제1 캐릭터(101)의 제3 시간 트랙(106)은 제2 캐릭터(102)의 시간적 제약을 각각 표현할 수 있다.
상술한 예에서, 관계 제약 및 엔드-이펙터 제약은 모두 변동 제약에서 강제되어야 한다.
동작 편집 시스템은 각각의 제약이 어떻게 정확히 요구조건을 만족시킬 것인가를 사용자가 결정하도록 할 수 있다. 하드(hard)한 제약이 정확하게 강제되는 동안 소프트한(soft) 제약은 최소 제곱 센스(least squares sense)에서 유지될 수 있다. 변동 제약은 소프트한 제약의 연속에 유사해진다. 복수의 경로에 대한 좌 표 값의 연속은 하기 수학식 5와 같은 벡터를 형성하기 위해 연관될 수 있다.
Figure 112009035451573-pat00012
경로 제약의 컬렉션은 상기 수학식 5의 벡터 'p'에 의해 선형 방정식 시스템의 형태를 가질 수 있다. 소프트한 공간적 제약과 하드한 공간적 제약은 각각 '
Figure 112009035451573-pat00013
' 및 '
Figure 112009035451573-pat00014
'와 같이 표현될 수 있다.
1-2. 시간적 제약
동작 클립(clip)은 보통 고정된 프레임 율에서 샘플링 된 동작 프레임의 시퀀스를 의미할 수 있다. 동작 클립의 컬렉션은 복수의 시간 트랙(track)과 정렬될 수 있고, 동기화된 복수의 캐릭터 상호작용과 함께 연결될 수 있다. 각각의 시간 트랙은 단일 캐릭터 동작의 시간적 조절을 관리한다. 각각의 동작 클립에서 시간적 조절은 동기화된 기준 시간에서 't i
Figure 112009035451573-pat00015
'에 맵핑되는 프레임 인덱스 'i'에 의해 지역적인 파라미터로서 나타내어질 수 있다. 시간적 제약에 대한 3가지 타입이 단일 시간 트랙에서의 시간-왜곡 동작 그리고 시간 트랙의 전역에 걸쳐 동기화된 복수의 캐릭터 동작에 대해 제공될 수 있다.
절대 시간(absolute time)은 프레임 'i'에서 캐릭터 동작의 시간적 조절이 기준 시간에 대해 제약될 수 있음을 의미할 수 있다. 절대 시간이 'c t
Figure 112009035451573-pat00016
'와 같 이 주어졌을 때 제약 방정식은 하기 수학식 6과 같이 표현될 수 있다.
Figure 112009035451573-pat00017
존속기간(duration)은 프레임 'i'와 프레임 'j' 사이에서 동작 시퀀스의 존속기간이 하기 수학식 7에 의해 공식화될 수 있는 제약에 의해 조건이 지정될 수 있음을 의미할 수 있다.
Figure 112009035451573-pat00018
여기서, 존속기간 'd t
Figure 112009035451573-pat00019
'는 스칼라 값을 가질 수 있다.
동기화(synchronization)은 두 캐릭터의 시간적 조절이 동기화될 수 있음을 의미할 수 있다. 이러한 제약 방정식은 하기 수학식 8과 같이 표현될 수 있다.
Figure 112009035451573-pat00020
여기서, 't i '는 프레임 'i'에서 캐릭터의 시간적 조절을, 't k '는 프레임 'j'에서 캐릭터의 시간적 조절을, 시간 불일치 'e t '는 일정한(constant) 스칼라 값을 가질 수 있다. 만약 'e t '가 '0'의 값을 갖는다면, 두 캐릭터 동작의 기준 시간의 프레임 'i' 및 프레임 'j'에서 정확하게 동기화되어야 한다.
시간적 제약 역시 소프트한 제약 및 하드한 제약 중 하나가 조건으로서 지정 될 수 있다. 소프트한 시간적 제약은 '
Figure 112009035451573-pat00021
'와 같이, 하드한 시간적 제약은 '
Figure 112009035451573-pat00022
'와 같이 각각 표현될 수 있다.
Ⅱ. 라플라시안 ( Laplacian ) 동작 편집
2-1. 공간적 경로 편집
동기화된 동작 경로의 컬렉션이 주어졌을 때, 두 개의 최소 제곱 문제를 순차적으로 풀어 사용자가 조건으로 지정한 제약과 만나기 위해 경로를 수정할 수 있다. 첫 번째 최소 제곱 문제의 해(solution)은 가능한 한 원래 경로의 상세한 특징을 보존하는 동안 사용자의 제약을 만족하는 중간결과를 생성할 수 있다. 상기 최종결과는 중간결과에서 바람직하지 않은 크기 변경(scaling) 문제점(artifact)을 보상하는 두 번째 최소 제곱 문제를 풀어 얻을 수 있다.
2-1-1. 모양-보존 조작(shape-preserving manipulation)
동작 경로상의 포인트 'p i '는 이웃 포인트에 의해 하기 수학식 9와 같이 표현될 수 있다.
Figure 112009035451573-pat00023
여기서, (x i , y i )는 포인트 'p i '의 지역 좌표를 의미할 수 있다. 알고리즘의 첫 번째 단계(phase)는 사용자의 제약을 만족시키면서 지역 좌표에서 왜곡을 최소화하고자 할 수 있다. 왜곡을 최소화하기 위해, 상기 수학식 9에서 모든 포인트에서 동일한 지역 좌표를 갖는 변형된 경로 '
Figure 112009035451573-pat00024
'를 유지하기를 기대할 수 있다. 이러한 조건은 각각의 동작 경로 'k'를 위한 선형 시스템 '
Figure 112009035451573-pat00025
'로서 공식화 될 수 있다. 상기 수학식 9에서 일정한 항(constant term)을 갖지 않기 때문에 선형 시스템 '
Figure 112009035451573-pat00026
'의 우측(right hand side)이 '0'의 값을 가질 수 있다. 복수의 동작 경로를 위한 선형 시스템과 사용자에 의해 정의된 소프트한 제약의 연관(concatenating)은 사용자에 의해 정의된 하드한 제약 '
Figure 112009035451573-pat00027
'으로 가정하였을 때 중복 결정된(over-determined) 선형 시스템 '
Figure 112009035451573-pat00028
'를 형성할 수 있고, 하기 수학식 10과 같이 표현될 수 있다.
Figure 112009035451573-pat00029
여기서, 'M s'의 유사역행렬(pseudo-inverse) 및 라그랑주 승수법(Lagrange multiplier) 'λs'를 이용하면, 모양-보존 조작의 목표(objective)는 하기 수학식 11과 같이 표현되는 에너지 함수를 최소화시키는 것이다.
Figure 112009035451573-pat00030
'
Figure 112009035451573-pat00031
'에 대해 미분하면 그때, 'λs'는 하기 수학식 12와 같이 표현될 수 있는 확장된 시스템을 야기한다.
Figure 112009035451573-pat00032
첫 번째 단계(phase)에서 중간결과 '
Figure 112009035451573-pat00033
'는 상기 수학식 12와 같이 표현된 시스템을 풀어 얻어질 수 있다. 여기서, 상기 시스템은 희소하고(sparse), 따라서 희소한(sparse) LU 솔버(solver)를 통해 효과적으로 풀릴 수 있다.
2-1-2. 스케일 보상(scale compensation)
두 번째 단계(phase)는 크기 변경 문제점을 제거함으로써 중간결과 '
Figure 112009035451573-pat00034
'를 조정할 수 있다. 변형된 경로에서 원래의 길이가 조정된 두 개의 연속적인 포인트 '
Figure 112009035451573-pat00035
' 및 '
Figure 112009035451573-pat00036
' 사이의 벡터는 하기 수학식 13과 같이 표현될 수 있다.
Figure 112009035451573-pat00037
두 번째 단계에서 스케일이 보상된 경로 '
Figure 112009035451573-pat00038
'는 사용자의 제약을 만족시키기 위해 구부러지거나 평평하게 펴질 수 있다. 따라서, 스케일 보호의 목적은 하기 수학식 14와 같은 선형 방정식을 야기할 수 있다.
Figure 112009035451573-pat00039
여기서, '
Figure 112009035451573-pat00040
'일 수 있다. 이러한 목적은 경로 'k'를 위해 선형 시스템 '
Figure 112009035451573-pat00041
'의 컬렉션을 형성한다. 복수의 경로를 위한 선형 시스템과 사용자에 의해 정의된 소프트한 제약의 연관(concatenating)은 하드한 제약으로 가정하였을 때 중복 결정된 선형 시스템 '
Figure 112009035451573-pat00042
'를 형성할 수 있다. 상기 수학식 11 및 상기 수학식 12에서 '
Figure 112009035451573-pat00043
'를 '
Figure 112009035451573-pat00044
'로 대체하면, 스케일 보상을 위한 목적 함수 'Escale'과 목적 함수에 상응하는 확장된 시스템을 얻을 수 있다.
2-2. 디제너레이트 케이스 핸들링(handling degenerate case)
동작 편집 시스템은 디제너레이트 케이스의 두 가지 타입을 다룰 수 있다.
이러한 디제너레이트 케이스의 첫 번째 타입은 고정(stationary) 경로이다. 일부(some) 인간의 동작 데이터들은 작은 변형에 대해서도 부숴지기 쉬운(fragile) 반면, 다른 일부 동작 데이터들은 큰 변형 후에도 자연스러움을 유지한다. 예를 들어, 걷는 동작은 보통 이동 경로를 늘이는 것에 탄력적(resilient)이고, 따라서 곡률각(curvature angle)의 넓은 범위에서도 변형될 수 있다. 반대로, 고정 동작의 경로를 조작하는 것은 캐릭터가 미끄러운 걸음(slippery feet)으로 부자연스럽게 주변을 배회하도록 만들 수 있다. 만약, 경로상의 평균 속도가 스레스홀드(threshold)를 넘지 않거나 두 발이 지면에 단단히 세워져 있다면 동작 경로의 부분인 부분-경로는 고정적이다. 동작 편집 시스템은 고정적인 부분-경로를 고정된 조각들(rigid segments)로서 간주하고, 그런 방법으로 부분-경로는 상호작용적으로 조정되는 동안 변형되지 않는다. 즉, 고정 경로에 대한 디제너레이트 케이스는 상기 수학식 9에서 대응하는 모양-보존 조작을 위한 제약을 하드한 제약의 컬렉션에 넣음으로써, 간단히 처리할 수 있다.
디제너레이터 케이스의 두 번째 타입은 탄젠트 플립핑(tangent flipping)이다. 도 2는 탄젠트 플립핑을 설명하기 위한 일례이다. 제1 곡선(201)과 같은 동작 경로에 압착을 가하는 경우, 제2 곡선(202)과 같이 동작 경로의 중간에 플립핑이 발생할 수 있다. 즉, 동작 경로의 작은 변형은 탄젠트 방향의 플립을 야기할 수 있다. 이때, 연속적인 탄젠트 벡터 사이의 각도를 확인함으로써, 탄젠트 플립핑을 식별할 수 있다. 즉, 탄젠트 방향의 갑작스러운 변화는 탄젠트 플립핑을 나타낼 수 있다. 보다 정확하게, 각각 변형되지 않은 경로와 변형된 경로의 탄젠트 벡터 '
Figure 112009035451573-pat00045
' 및 '
Figure 112009035451573-pat00046
'를 고려할 수 있다. '
Figure 112009035451573-pat00047
' 와 '
Figure 112009035451573-pat00048
' 사이의 각도 '
Figure 112009035451573-pat00049
'는 유용한 측도(measure)를 제공할 수 있다. 동작 편집 시스템은 만약, '
Figure 112009035451573-pat00050
'가 임의의 'i'에 대해 사용자로부터 제공되는 스레스홀드(threshold)를 넘어서는 경우, 탄젠트 플립핑을 기록할 수 있다. 이때, 단일의(singular) 포인트에서 이웃한 탄젠트 벡터를 선형보간하여 삽입함으로써, 새로운 탄젠트 벡터를 결정할 수 있다.
2-3. 전체-몸체 개선(full-body refinement)
변형된 경로 사이에 존재하는 캐릭터의 전체 몸체 동작은 사용자에 의해 정의된 엔드-이펙터 제약을 강제하고, 풋-슬라이딩 문제점을 피하기 위한 최종 수정이 요구된다. 만약, 발이 충분히 지면과 접하고 있고, 속도가 스레스홀드 이내라면, 발과 지면의 접촉은 자동적으로 식별될 수 있다. 지면과의 접촉에 따른 제약과 엔드-이펙터 제약은 하이브리드(hybrid) 역기구학 솔버 및 계층적 변위(hierarchical displacement) 맵핑에 공급될 수 있다.
루트 경로 편집이 매우 효과적인 선형 공식으로 공식화되는 동안, 엔드-이펙터 제약은 비선형 방정식을 수반할 수 있고, 따라서 역기구학 솔버의 반복이 요청될 수 있다. 루트 경로 편집과 IK-기반 클린업(clean up)의 결합은 동작 편집 시스템이 실질적인 어플리케이션을 위해 충분히 빨라지도록 만들 수 있는 실용적인 해답이 될 수 있다. 이러한 결합 작업을 위해 엔드-이펙터 제약은 루트 제약에 추가될 수 있다. 예를 들어, 캐릭터가 박스를 옮기도록 만들기 위해, 동작 편집 시스템은 우선, 관계 위치/방향 제약을 이용하여 박스가 루트 근처에 유지되도록 제약할 수 있고 그때, 엔드-이펙터 제약을 이용하여 캐릭터의 손이 박스와 접촉하도록 제약할 수 있다. 캐릭터가 이동하는 동안, 루트와 박스 사이의 제약은 박스가 캐릭터와 함께 이동하도록 유지하고, 엔드-이펙터 제약은 모든 시간 프레임에서 캐릭터의 손이 박스와 접촉하도록 유지함으로써 캐릭터의 포즈를 개선할 수 있다. 작은 스케일에서 캐릭터의 포즈를 조절하기 위해 캐릭터의 전역 위치/방향 제약을 조건으로 지정한 루트 제약과 엔드-이펙터 제약을 사용하는 것은 자연스런 결합이다.
2-4. 상호작용적 시간 왜곡(interactive time warping)
상호작용적 시간 왜곡을 위해 라플라시안 커브 조작 방법이 이용될 수 있다. 동작 편집 시스템에서는 사용자의 자의적인 시간적 제약이 조건으로 지정될 수 있다. 즉, 동작 편집 시스템은 사용자에 의해 정의된 제약을 만족시키기 위해 일차원의 부드러운 시간 왜곡을 계산할 수 있다.
도 3은 본 발명의 일실시예에 따른 동작 편집 시스템에서 두 동기화된 시간 트랙의 상호작용적 시간 왜곡을 처리하는 일례를 나타낸다. 원래의 균일한 시간 트랙(310)은 부드럽고, 동기화된 시간 왜곡을 생성하기 위해 상호작용적으로 조작 될 수 있다. 즉, 시간 왜곡이 발생한 시간 트랙(320)에서와 같이 사용자는 오직 하나의 시간 트랙에 대해서만 절대 시간(301, 302)을 조절할 수 있고, 그에 따라 다른 하나의 시간 트랙은 왜곡이 발생될 수 있다.
입력된 동작 데이터는 '
Figure 112009035451573-pat00051
'와 같이 균일하게 샘플링 될 수 있고, 여기서 '
Figure 112009035451573-pat00052
'는 샘플링 시간 단계를 의미할 수 있다. 시간 왜곡은 가능한 한 균일하게 보호되면서 수행되어야 한다. 이러한 조건은 각각의 동작 경로 'k'에 대한 선형 시스템 '
Figure 112009035451573-pat00053
'로서 공식화될 수 있다. 여기서, '
Figure 112009035451573-pat00054
'는 k-번째 동작 경로의 시간 왜곡을 의미할 수 있다. 매트릭스 '
Figure 112009035451573-pat00055
'는 오직 두 대각선만이 '0'이 아닌 값을 갖는다. '
Figure 112009035451573-pat00056
'는 컨스턴트(constant) 벡터일 수 있다. 복수의 동작 경로를 위한 선형 시스템과 소프트한 시간적 제약 '
Figure 112009035451573-pat00057
'간의 연관(concatenating)은 하드한 시간적 제약 '
Figure 112009035451573-pat00058
'으로 가정하였을 때 하기 수학식 15와 같이 표현될 수 있는 과결정 선형 시스템 '
Figure 112009035451573-pat00059
'을 형성할 수 있다.
Figure 112009035451573-pat00060
상기 수학식 11 및 상기 수학식 12에서 '
Figure 112009035451573-pat00061
'를 '
Figure 112009035451573-pat00062
'로 대체하면, 시간 왜 곡에 대한 목적 함수 '
Figure 112009035451573-pat00063
'과 하기 수학식 16과 같이 표현될 수 있는 확장된 시스템을 얻을 수 있다.
Figure 112009035451573-pat00064
시간 왜곡은 경로 편집 알고리즘의 첫 번째 단계(phase)만을 요구한다. 크기 변경 문제점은 직각 방향에서 조정자의 드래깅 방향으로 일어나고, 그러므로, 스케일 보상은 일차원 곡선을 위해서는 필요치 않다. 경로 편집 알고리즘의 두 번째 단계는, 오히려 해가 될 수 있다. 즉, 경로 편집 알고리즘은 동작 데이터의 시작과 끝에서 보다 동작 데이터의 중간에서 프레임이 더 빨리 스케일되는 것을 야기할 수 있다.
시간은 절대 뒤로 흐르지 않고, 따라서 시간 왜곡은 감소하지 않고 증가해야만 한다. 과도한 시간 왜곡은 시간 플립핑이나 모션 시퀀스에서 과도한 감속을 야기할 수 있다. 동작 편집 시스템은 각각의 'i'에 대해 부등식 제약 '
Figure 112009035451573-pat00065
'을 강제함으로써 상술한 문제를 다룰 수 있다. 여기서, 상기 수학식 16의 선형 시스템은 부등식 제약과 쉽게 결합되지 않는다. 대신에, 동작 편집 시스템은 반복적인 방법으로 부등식 제약을 강제할 수 있다. 우선, 선형 시스템을 부등식 제약 없이 풀고, 하기 수학식 17과 같은 등식 제약을 추가할 수 있다.
Figure 112009035451573-pat00066
Figure 112009035451573-pat00067
여기서, 부등식 제약은 위배된다. 따라서, 동작 편집 시스템은 모든 부등식 제약이 만족 될 때까지 프로세스를 반복할 수 있다.
Ⅲ. 디스크리트 ( discrete ) 동작 편집
본 발명의 일실시예에 따른 동작 편집 시스템에서의 디스크리트 동작 편집은 동작 경로가 조작되는 동안 디스크리트 변환이 고르고 적절하게 일어나도록 할 수 있다.
도 4는 캐릭터의 걷기 동작을 나타낸 일례이다. 도 4는 입력된 걷기 동작(401), 라플라시안 경로 편집이 반드시 수반하는 큰 걸음의 걷기 동작(402) 및 과도한 늘이기를 극복하기 위한 추가 스텝을 소개하는 디스크리트 동작 편집을 통한 걷기 동작(403)을 각각 나타낸다. 즉, 입력된 걷기 동작(401)을 디스크리트 변환 없이 두 개의 핀 제약만을 이용하여 늘이면, 부자연스러운 큰 걸음의 걷기 동작(402)을 야기하게 된다. 동작 편집 시스템은 디스크리트 최적화 절차를 통해 자동적으로 스텝을 추가함으로써, 과도하게 큰 걸음의 걷기 동작(402)이 발생하는 것을 피할 수 있다.
전체 경로를 재통합하는 것을 피하기 위해 상호작용적 조작 동안 경로 플래닝(planning) 또는 상태-공간(state-space) 검색 기술을 이용할 수 있다. 사용자는 일반적으로 마우스로 드래깅하는 동안 캐릭터의 동작이 단계적으로 변화하길 원한다. 스마트 플래너로부터 갑작스럽게 제안될 수 있는 전체적으로 새로 재-계획된 경로는 종종 사용자를 혼란스럽게 할 수 있다. 따라서, 동작 편집 시스템에서 제공 가능한 사용자 인터페이스는 각각의 순간에 작고, 예측 가능한 디스크리트 변화를 만들어 냄으로써 디스크리트 동작 편집이 연속적인 경로 편집과 끊김없이 통합되도록 할 수 있다. 게다가, 처음부터 경로를 재통합하는 것보다 계산적으로 더 효율적이다.
디스크리트 동작 편집은 라플라시안 경로 편집 중 끊김없이 발생하는 구조적 변화를 허락할 수 있다. 이하에서는 상호작용적 성능을 유지하면서 가능한 디스크리트 변환을 어떻게 식별하고, 어떻게 변환된 경로를 평가하고, 어떻게 디스크리트 최적화를 상호작용적 동작 편집의 인터페이스와 통합할 것인가에 대해 설명한다.
3-1. 디스크리트 변환(discrete transformations)
효과적으로 동작 데이터에서 구조적 변화를 식별하기 위해 입력된 동작 데이터의 동작 그래프를 생성할 수 있다. 동작 그래프의 노드들은 동작 프레임에 대응될 수 있고, 노드들의 엣지들은 프레임들간 연결된 전이(transition)에 대응될 수 있다. 이러한 동작 그래프는 입력된 동작 데이터로부터 유사한 프레임을 식별하고 유사한 프레임간의 전이를 발생시킴으로써 자동적으로 그려질 수 있다. 두 개의 프레임이 충분히 유사한지를 결정하기 위해 관절 각도, 루트 높이, 루트 방향, 관절 속도, 루트 이동 및 루트 회전과 같이 동작의 다양한 특징을 고려하는 측도가 고려될 수 있다. 동작 프레임은 시간적으로 일관되고(coherent), 따라서 많은 연결된 전이가 시작 프레임 및 종료 프레임에 근접할 수 있다. 동작 편집 시스템은 전이 매트릭스에서 지역 최대값들을 선택함으로써, 많은 유사한 전이 중 가장 알맞은 전이를 부여받을 수 있다. 다른 모든 전이들은 연결된 변화의 드문(sparse) 집합을 생성하기 위해 잘라내어 질 수 있다.
동작 편집 시스템은 디스크리트 변환의 세가지 타입인 삽입(insertion), 삭제(deletion) 그리고 대체(replacement)를 고려할 수 있다. 도 5는 디스크리트 변환의 세가지 타입을 설명하기 위한 일례이다. 즉, 도 5는 원래 데이터(501)가 삽입이 발생한 데이터(502), 삭제가 발생한 데이터(503), 대체가 발생한 데이터(504)로 각각 변화된 모습을 나타낸다.
프레임 'i' 와 프레임 'j'가 하나의 프레임에서 다른 프레임으로의 연결된 변화가 허락된 유사한 프레임이고, 'i'가 'j'보다 작다고 가정할 때, 'i'로부터 'j+1'까지의 전위 전이를 하는 것은 'i+1'과 'j' 사이의 프레임들을 삭제하는 결과를 낳는다. 반면, 'j'부터 'i'까지 후위 전이를 하는 것은 'i+1'과 'j' 사이의 프레임들의 중복을 이끈다. 여기서, 중복은 삽입의 특별한 타입일 수 있다. 또한, 삽입은 'i'로부터 'j+1'까지 그리고 'k'로부터 'i+1'까지의 두 개의 전이를 요청하고, 그때 'j+1'부터 'k'까지의 프레임을 복사되어 'i'와 'i+1' 사이에 삽입될 수 있다. 여기서, 'j'는 'k'보다 작을 수 있다. 유사하게, 'i'부터 'k+1'까지 그리고 'l'부터 'j+1'까지의 두 전이를 이용하는 대체는 프레임들을 'i+1'과 'j' 사이의 프레임들을 'k+1'과 'l' 사이의 프레임들로 대체하는 결과를 야기시킬 수 있다. 이때, 'i'는 'j'보다 작고, 'k'는 'l'보다 작을 수 있다.
3-2. 디스크리트 최적화(discrete optimization)
동작 편집 시스템은 필요에 따라 사용자의 조작에 대한 중간 과정에서 동작 경로에 적절한 디스크리트 변환을 제공할 수 있다. 이때, 오직 하나의 동작 경로가 사용자 제약 각각에 대한 갱신을 위해 변환될 수 있다. 도 6은 본 발명의 일실시예에 따른 동작 편집 시스템에서 디스크리트 변환의 최적화를 위해 이용 가능한 알고리즘의 일례이다. 도 6의 알고리즘에 따르면, 사용자는 한차례 시간적 또는 공간적 제약을 갱신하고, 이때 동작 편집 시스템은 모든 가능한 디스크리트 변환을 계산하여 사용자의 제약에 대해 평가한다. 그때, 가장 알맞은 디스크리트 변환이 선택되고, 라플라시안 동작 편집을 이용하여 정확하게 사용자의 제약에 적합하도록 변형된다. 도 6의 알고리즘은 사용자의 제약 각각에 대한 갱신에 대한 응답이 즉각적일 수 있고 예측 가능하기 때문에 상호작용적인 조작을 위해 이용하기 적합하다.
3-2-1. 변형 에너지(deformation energy)
여기서는, 각각 디스크리트 변환된 경로가 어떻게 사용자에 의해 정의된 제약에 적합하게 할 것인가에 대해 결정한다. 디스크리트 변환된 경로에서 경로와 시간 왜곡 모두에 대한 라플라시안 동작 편집이 사용자의 제약을 만족하도록 수행되도록 할 때 변형 에너지는 하기 수학식 18과 같이 표현될 수 있다.
Figure 112009035451573-pat00068
여기서, '
Figure 112009035451573-pat00069
'는 원래의 동작 경로를 의미하고, '
Figure 112009035451573-pat00070
'는 디스크리트 변환되고, 변형되고, 시간 왜곡된 동작 경로를 의미한다. 또한, '
Figure 112009035451573-pat00071
', '
Figure 112009035451573-pat00072
' 및 '
Figure 112009035451573-pat00073
'는 각각 모양-보존, 스케일-보상 및 시간-왜곡 각각에 대한 변형 에너지를 의미한다. 이에 더해, '
Figure 112009035451573-pat00074
'는 공간적 경로의 길이를, '
Figure 112009035451573-pat00075
'는 시간적 기간을 각각 의미한다. 라플라시안 동작 편집에 의해 처음 세 개의 기간은 경로 변형에 패널티가 부여되고, 마지막 두 개의 기간은 디스크리트 변환에 의해 동작 경로의 길이가 길어지고 짧아지는 패널티가 부여된다. 마지막으로, '
Figure 112009035451573-pat00076
'와 '
Figure 112009035451573-pat00077
'는 디스크리트 변환에 대비하여 경로 변형에 부여되는 가중치를 의미한다.
3-2-2. 디스크리트 변환 제거(pruning discrete transformation)
종종 상호작용적인 속도(interactive rates)로 조작하기에는 계산되고, 평가되어야 할 너무 많은 디스크리트 변환이 발생할 수 있다. 따라서, 라플라시안 동작 편집을 적용하기 전에 가능한 한 부적절한 디스크리트 변환을 제거하는 것은 매우 중요하다. 이러한 디스크리트 변환의 제거를 위한 동작 편집과 사용자의 제약에 대한 상호작용을 설명한다.
기간(duration): 디스크리트 변환에 의해 삭제되거나 삽입되는 동작 프레임의 기간이 너무 짧거나 너무 길면, 해당 디스크리트 변환을 제거할 수 있다. 동작 조작에서 매우 짧은 기간의 디스크리트 변환은 너무 빈번하게 발생하는 경향이 있고, 반면에 매우 긴 기간의 디스크리트 변환은 갑작스러운 동작의 변화를 야기시킬 수 있다. 실험적으로 0.3 내지 2.0초 사이의 디스크리트 변환이 허용된다.
포함(enclosing): 디스크리트 변환에 의해 삭제되거나 삽입되는 동작 프레임의 기간이 다른 디스크리트 변환의 영향이 미치는 동작 프레임의 기간을 포함하는 경우, 전자의 디스크리트 변환이 후자의 디스크리트 변환을 포함할 수 있다. 만약, 전자의 디스크리트 변환이 또 다른 디스크리트 변환을 포함한다면, 전자의 디스크리트 변환을 제거할 수 있다. 이러한 제거 룰을 위한 이론적 해석(rationale)은 조작의 상호작용으로부터 올 수 있다. 사용자의 제약이 사용자가 조작자(manipulator)를 드래그 함으로써 연속적으로 갱신된다고 가정한다. 따라서, 포함된 구간의 디스크리트 변환은 필요하나 포함하는 구간의 디스크리트 변환은 발생할 수 없다. 제약(constraints): 디스크리트 변환은 사용자에 의해 정의된 어떠한 제약도 제거해서는 안 된다. 보다 명확하게, 순간적인 제약이 존재하는 어떤 동작 프레임을 삭제 또는 대체한 디스크리트 변환은 금지된다. 변동 제약에 의해 강제된 동작 프레임은 변동 제약이 시작 및 끝나는 바운더리 프레임들이 손상되지 않고 유지되는 동안에는 디스크리트 변환에 의해 제거되거나, 다른 프레임으로 대체될 수 있고, 다른 프레임이 삽입될 수 있다.
로컬리티(locality): 디스크리트 변환은 사용자의 조작을 기대한 포인트나 시간으로부터 먼 곳에서 발생시킬 수 있다. 동작 편집 시스템은 사용자에게 디스크리트 변환을 활성화 또는 비활성화 시킬 수 있는 간단한 사용자 인터페이스를 제공할 수 있다. 따라서, 사용자는 특정 디스크리트 변환의 타입, 캐릭터, 시간 구역, 디스크리트 변환이 허락되는 공간적 지역에 따라 디스크리트 변환을 선택적으로 활성화시킬 수 있다.
3-2-3. 가속 기술(acceleration technique)
디스크리트 변환을 이용한 동작 편집의 성능 병목은 가능한 디스크리트 변환의 평가에 의해 발생할 수 있다. 각각의 디스크리트 변환의 평가는 연속적인 라플라시안 동작 편집을 위해 세 가지 크고, 드문 선형 시스템을 풀 것을 요구한다. 선형 시스템의 크기는 동작 경로들에서 프레임의 전체 수에 의존한다. 동작 편집 시스템은 성능 이득과 평가의 정확성을 교환(trade off)할 수 있다. 즉, 동작 편집 시스템은 더 작은 선형 시스템을 만들기 위해 동작 경로들의 부표본을 만들 수 있다. 부표본을 만들 때, 사용자에 의해 정의된 제약들과 가능한 디스크리트 변환 들은 계속 유지되어야 한다. 이러한 요구는 동작 프레임들의 불균일한 부표본의 생성을 야기할 수 있다. 그렇지만 부표본화된 경로를 갖는 라플라시안 동작 편집은 원래의, 완전한 프레임의 경로에 대한 거의 근사한 변형 에너지를 갖는다. 변형 에너지를 평가하는 것은 엔드-이펙터 제약을 요구하지 않는다. 계층적인 대체 맵핑은 알고리즘의 끝에서 한번 적용된다.
도 7은 본 발명의 일실시예에 있어서, 동작 편집 시스템의 내부 구성을 설명하기 위한 블록도이다. 본 실시예에 따른 동작 편집 시스템(700)은 도 7에 도시된 바와 같이 라플라시안 동작 편집부(710) 및 디스크리트 동작 편집부(720)를 포함한다.
라플라시안 동작 편집부(710)는 사용자의 제약에 따라 입력된 캐릭터 데이터의 공간적 경로를 편집하고, 상호작용적 시간 왜곡을 처리한다. 여기서, 상기 사용자의 제약은 핀 제약, 관계 제약 및 엔드-이펙트 제약을 포함하는 공간적 제약 및 절대 시간, 존속기간 및 동기화를 포함하는 시간적 제약을 포함할 수 있다.
이러한 공간적 경로 편집 및 상호작용적 시간 왜곡을 처리하기 위해 라플라시안 동작 편집부(710)는 도 7에 도시된 바와 같이 공간 경로 편집부(711), 시간 왜곡 처리부(712), 디제너레이트 케이스 처리부(713) 및 전체 몸체 개선부(714)를 포함할 수 있다.
공간 경로 편집부(711)는 모양-보존 조작과 스케일 보상을 통해 상기 공간적 경로를 편집한다. 이때, 공간 경로 편집부(711)는 상기 모양-보존 조작을 위한 과결정(over-determined) 선형 시스템을 유사역행렬 및 라그랑주 승수법을 통해 확장 하여 중간결과를 획득할 수 있다. 여기서, 상기 과결정 선형 시스템은, 모든 포인트에서 동일한 지역 좌표를 갖는 변형된 경로가 변형된 지역 좌표의 집합과 동일하도록 유지되고, 상기 사용자의 제약 중 소프트한 제약과 연관(concatenation)되어 형성될 수 있다.
또한, 공간 경로 편집부(711)는 상기 스케일 보상을 통해 크기 변경 문제점을 제거하여 상기 모양 보존 조작에 따른 중간결과를 조정할 수 있다. 이때, 상기 크기 변경 문제점은 과결정 선형 시스템을 유사역행렬 및 라그랑주 승수법을 통해 확장하여 얻은 시스템을 통해 제거될 수 있고, 상기 과결정 선형 시스템은 복수의 경로를 위한 선형 시스템과 상기 사용자의 제약 중 소프트한 제약간의 연관을 통해 형성될 수 있다.
시간 왜곡 처리부(712)는 상호작용적 시간 왜곡을 처리한다. 이때, 시간 왜곡 처리부(712)는 과결정 선형 시스템을 유사역행렬 및 라그랑주 승수법을 통해 확장하여 얻은 시스템을 통해 시간 왜곡을 처리할 수 있다. 여기서, 상기 과결정 선형 시스템은 입력되는 동작 데이터를 균일하게 샘플링하여 공식화한 선형 시스템과 상기 사용자의 제약 중 소프트한 제약간의 연관을 통해 형성된다.
디제너레이트 케이스 처리부(713)는 디제너레이트(degenerate) 케이스를 처리한다. 이때, 상기 디제너레이트 케이스는 고정 경로 또는 탄젠트 플립핑(flipping)을 포함할 수 있고, 디제너레이트 케이스 처리부(713)는 상기 사용자의 제약 중 상기 모양-보존 조작에 대한 제약을 하드한 제약의 컬렉션에 추가하여 상기 고정 경로를 처리하거나 또는 사용자로부터 제공되는 스레스홀드(threshold) 이상의 탄젠트 플립핑을 기록하여 단일의 포인트에서 이웃한 탄젠트 벡터를 선형보간하여 삽입하여 상기 탄젠트 플립핑을 처리한다.
전체 몸체 개선부(714)는 캐릭터의 전체-몸체를 개선한다. 이때, 전체 몸체 개선부(714)는 상기 사용자의 제약 중 엔드-이펙터(end-effector) 제약, 상기 캐릭터의 발과 지면간의 접촉에 따른 제약, 하이브리드 역기구학 솔버(hybrid inverse kinematics solver) 및 계층적 변위(hierarchical displacement) 맵핑을 이용하여 상기 캐릭터의 전체 몸체를 개선한다.
디스크리트 동작 편집부(720)는 캐릭터 데이터가 처리되는 동안 디스크리트 변환을 적용한다. 여기서, 상기 디스크리트 변환은 삽입, 삭제 및 대체의 세 가지 타입을 포함한다.
디스크리트 변환을 적용하기 위해 디스크리트 동작 편집부(720)는 도 7에 도시된 바와 같이 디스크리트 변환 적용부(721), 변형 에너지 계산부(722), 디스크리트 변환 제거부(723) 및 가속화부(724)를 포함할 수 있다.
디스크리트 변환 적용부(721)는 상기 캐릭터 데이터의 동작 경로에 디스크리트 변환을 적용한다. 이때, 디스크리트 변환 적용부(721)는 모든 가능한 디스크리트 변환을 계산하여 상기 사용자의 제약에 대해 평가하고, 상기 평가 결과에 따라 적용될 디스크리트 변환을 선택하여 적용할 수 있다.
변형 에너지 계산부(722)는 상기 디스크리트 변환이 적용된 동작 경로가 상기 사용자의 제약을 만족하기 위한 변형 에너지를 계산한다. 이때, 변형 에너지 계산부(722)는 모양-보존, 스케일-보상, 시간-왜곡 각각에 대한 변형 에너지 그리고 공간적 경로의 길이, 시간적 기간 및 디스크리트 변환에 대비하여 경로 변형에 부여되는 가중치에 기초하여 상기 제약을 만족하기 위한 변형 에너지를 한다.
디스크리트 변환 제거부(723)는 불필요한 디스크리트 변환을 제거한다. 이때, 디스크리트 변환 제거부(723)는 (1) 디스크리트 변환에 의해 삭제되거나 삽입되는 동작 프레임의 기간이 기선정된 범위를 벗어나는 경우, 해당 디스크리트 변환을 제거하거나, (2) 제1 디스크리트 변환에 의해 삭제되거나 삽입되는 동작 프레임의 기간이 제2 디스크리트 변환의 영향이 미치는 동작 프레임의 기간을 포함하고, 제2 디스크리트 변환이 제1 디스크리트 변환을 포함하는 경우, 제2 디스크리트 변환을 제거하거나, (3) 순간적인 제약에 의해 강제된 어떤 동작 프레임을 삭제 또는 대체한 디스크리트 변환을 제거하거나 또는 (4) 상기 디스크리트 변환을 활성화 또는 비활성화 시킬 수 있는 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통해 상기 사용자로부터 디스크리트 변환의 타입, 캐릭터, 시간 구역, 디스크리트 변환이 허락되는 공간적 지역에 대한 정보 및 활성화 또는 비활성화에 따른 정보를 입력받을 수 있다.
가속화부(724)는 디스크리트 변환의 평가를 위한 부표본을 생성한다.
도 8은 본 발명의 일실시예에 있어서, 동작 편집 방법을 도시한 흐름도이다. 본 실시예에 따른 동작 편집 방법은 도 7을 통해 설명한 동작 편집 시스템(700)에 의해 수행될 수 있다. 도 8에서는 동작 편집 시스템(700)을 통해 각각의 단계가 수행되는 과정을 설명함으로써 상기 동작 편집 방법을 설명한다.
단계(S810)에서 동작 편집 시스템(700)은 사용자의 제약에 따라 입력된 캐릭 터 데이터의 공간적 경로를 편집하고, 상호작용적 시간 왜곡을 처리한다. 여기서, 상기 사용자의 제약은 핀 제약, 관계 제약 및 엔드-이펙트 제약을 포함하는 공간적 제약 및 절대 시간, 존속기간 및 동기화를 포함하는 시간적 제약을 포함할 수 있다.
이러한 공간적 경로 편집 및 상호작용적 시간 왜곡을 처리하기 위해 동작 편집 시스템(700)은 도 8에 도시된 바와 같이 단계(S810)에 단계(S811) 내지 단계(S814)를 포함하여 수행할 수 있다.
단계(S811)에서 동작 편집 시스템(700)은 모양-보존 조작과 스케일 보상을 통해 상기 공간적 경로를 편집한다. 이때, 동작 편집 시스템(700)은 상기 모양-보존 조작을 위한 과결정(over-determined) 선형 시스템을 유사역행렬 및 라그랑주 승수법을 통해 확장하여 중간결과를 획득할 수 있다. 여기서, 상기 과결정 선형 시스템은, 모든 포인트에서 동일한 지역 좌표를 갖는 변형된 경로가 변형된 지역 좌표의 집합과 동일하도록 유지되고, 상기 사용자의 제약 중 소프트한 제약과 연관(concatenation)되어 형성될 수 있다.
또한, 동작 편집 시스템(700)은 상기 스케일 보상을 통해 크기 변경 문제점을 제거하여 상기 모양 보존 조작에 따른 중간결과를 조정할 수 있다. 이때, 상기 크기 변경 문제점은 과결정 선형 시스템을 유사역행렬 및 라그랑주 승수법을 통해 확장하여 얻은 시스템을 통해 제거될 수 있고, 상기 과결정 선형 시스템은 복수의 경로를 위한 선형 시스템과 상기 사용자의 제약 중 소프트한 제약간의 연관을 통해 형성될 수 있다.
단계(S812)에서 동작 편집 시스템(700)은 상호작용적 시간 왜곡을 처리한다. 이때, 시간 왜곡 처리부(712)는 과결정 선형 시스템을 유사역행렬 및 라그랑주 승수법을 통해 확장하여 얻은 시스템을 통해 시간 왜곡을 처리할 수 있다. 여기서, 상기 과결정 선형 시스템은 입력되는 동작 데이터를 균일하게 샘플링하여 공식화한 선형 시스템과 상기 사용자의 제약 중 소프트한 제약간의 연관을 통해 형성될 수 있다.
단계(S813)에서 동작 편집 시스템(700)은 디제너레이트(degenerate) 케이스를 처리한다. 이때, 상기 디제너레이트 케이스는 고정 경로 또는 탄젠트 플립핑(flipping)을 포함할 수 있고, 디제너레이트 케이스 처리부(713)는 상기 사용자의 제약 중 상기 모양-보존 조작에 대한 제약을 하드한 제약의 컬렉션에 추가하여 상기 고정 경로를 처리하거나 또는 사용자로부터 제공되는 스레스홀드(threshold) 이상의 탄젠트 플립핑을 찾아 단일의 포인트에서 이웃한 탄젠트 벡터를 선형보간으로 삽입하여 상기 탄젠트 플립핑을 처리할 수 있다.
단계(S814)에서 동작 편집 시스템(700)은 캐릭터의 전체-몸체를 개선한다. 이때, 동작 편집 시스템(700)은 상기 사용자의 제약 중 엔드-이펙터(end-effector) 제약, 상기 캐릭터의 발과 지면간의 접촉에 따른 제약, 하이브리드 역기구학 솔버(hybrid inverse kinematics solver) 및 계층적 변위(hierarchical displacement) 맵핑을 이용하여 상기 캐릭터의 전체 몸체를 개선할 수 있다.
단계(S820)에서 동작 편집 시스템(700)은 캐릭터 데이터가 처리되는 동안 디스크리트 변환을 적용한다. 여기서, 상기 디스크리트 변환은 삽입, 삭제 및 대체의 세 가지 타입을 포함할 수 있다.
디스크리트 변환을 적용하기 위해 동작 편집 시스템(700)은 도 8에 도시된 바와 같이 단계(S820)에 단계(S821) 내지 단계(S824)를 포함하여 수행할 수 있다.
단계(S821)에서 동작 편집 시스템(700)은 상기 캐릭터 데이터의 동작 경로에 디스크리트 변환을 적용한다. 이때, 동작 편집 시스템(700)은 모든 가능한 디스크리트 변환을 계산하여 상기 사용자의 제약에 대해 평가하고, 상기 평가 결과에 따라 적용될 디스크리트 변환을 선택하여 적용할 수 있다.
단계(S822)에서 동작 편집 시스템(700)은 상기 디스크리트 변환이 적용된 동작 경로가 상기 사용자의 제약을 만족하기 위한 변형 에너지를 계산한다. 이때, 동작 편집 시스템(700)은 모양-보존, 스케일-보상, 시간-왜곡 각각에 대한 변형 에너지 그리고 공간적 경로의 길이, 시간적 기간 및 디스크리트 변환에 대비하여 경로 변형에 부여되는 가중치에 기초하여 상기 제약을 만족하기 위한 변형 에너지를 계산할 수 있다.
단계(S823)에서 동작 편집 시스템(700)은 불필요한 디스크리트 변환을 제거한다. 이때, 동작 편집 시스템(700)은 (1) 디스크리트 변환에 의해 삭제되거나 삽입되는 동작 프레임의 기간이 기선정된 범위를 벗어나는 경우, 해당 디스크리트 변환을 제거하거나, (2) 제1 디스크리트 변환에 의해 삭제되거나 삽입되는 동작 프레임의 기간이 제2 디스크리트 변환의 영향이 미치는 동작 프레임의 기간을 포함하고, 제2 디스크리트 변환이 제3 디스크리트 변환을 포함하는 경우, 제1 디스크리트 변환을 제거하거나, (3) 순간적인 제약에 의해 강제된 어떤 동작 프레임을 삭제 또 는 대체한 디스크리트 변환을 제거하거나 또는 (4) 상기 디스크리트 변환을 활성화 또는 비활성화 시킬 수 있는 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통해 상기 사용자로부터 디스크리트 변환의 타입, 캐릭터, 시간 구역, 디스크리트 변환이 허락되는 공간적 지역에 대한 정보 및 활성화 또는 비활성화에 따른 정보를 입력받을 수 있다.
단계(S824)에서 동작 편집 시스템(700)은 디스크리트 변환의 평가를 위한 부표본을 생성한다.
본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 파일 데이터, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
도 1은 복수의 캐릭터와 객체를 나타낸 일례이다.
도 2는 탄젠트 플립핑을 설명하기 위한 일례이다.
도 3은 본 발명의 일실시예에 따른 동작 편집 시스템에서 두 동기화된 시간 트랙의 상호작용적 시간 왜곡을 처리하는 일례를 나타낸다.
도 4는 캐릭터의 걷기 동작을 나타낸 일례이다.
도 5는 디스크리트 변환의 세가지 타입을 설명하기 위한 일례이다.
도 6은 본 발명의 일실시예에 따른 동작 편집 시스템에서 디스크리트 변환의 최적화를 위해 이용 가능한 알고리즘의 일례이다.
도 7은 본 발명의 일실시예에 있어서, 동작 편집 시스템의 내부 구성을 설명하기 위한 블록도이다.
도 8은 본 발명의 일실시예에 있어서, 동작 편집 방법을 도시한 흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
700: 동작 편집 시스템
710: 라플라시안 동작 편집부
720: 디스크리트 동작 편집부

Claims (25)

  1. 사용자의 제약에 따라 입력된 캐릭터 데이터의 공간적 경로를 편집하고, 상호작용적 시간 왜곡을 처리하는 동작 편집부; 및
    캐릭터 데이터의 동작 경로에 상기 캐릭터 데이터에 따른 캐릭터의 동작을 삽입, 삭제 또는 대체하는 디스크리트 변환을 적용하는 디스크리트 동작 편집부
    를 포함하는 동작 편집 시스템.
  2. 제1항에 있어서,
    상기 동작 편집부는,
    모양-보존 조작과 스케일 보상을 통해 상기 공간적 경로를 편집하는 공간 경로 편집부; 및
    상호작용적 시간 왜곡을 처리하는 시간 왜곡 처리부
    를 포함하는 동작 편집 시스템.
  3. 제2항에 있어서,
    상기 공간 경로 편집부는,
    복수 캐릭터의 모션에 대해 모양을 유지하되, 상기 모션을 상기 사용자의 제약에 따라 변경하고, 상기 사용자의 제약 중 소프트한 제약 및 하드한 제약을 동시에 만족하는 선형 시스템을 이용하여 복수의 모션을 결정하는, 동작 편집 시스템.
  4. 제3항에 있어서,
    상기 선형 시스템은, 전역 기준 좌표계(global reference coordinate system)의 모든 포인트에서 동일한 지역 좌표를 갖는 변형된 경로가 변형된 지역 좌표의 집합과 동일하도록 유지되고, 상기 사용자의 제약 중 소프트한 제약과 연관(concatenation)되어 형성되는, 동작 편집 시스템.
  5. 제2항에 있어서,
    상기 공간 경로 편집부는,
    상기 스케일 보상을 통해 크기 변경 문제점을 제거하여 상기 모양 보존 조작에 따른 중간결과를 조정하는, 동작 편집 시스템.
  6. 제5항에 있어서,
    상기 크기 변경 문제점은 복수 캐릭터의 모션에 대해 상기 모션에 대해 모양을 유지하되, 상기 모션을 상기 사용자의 제약에 따라 변경함으로써 제거되는, 동작 편집 시스템.
  7. 제2항에 있어서,
    상기 시간 왜곡 처리부는,
    복수 캐릭터의 모션에 대해 상기 모션에 대해 시간을 유지하되, 상기 모션을 상기 사용자의 제약에 따라 변경함으로써 시간 왜곡을 처리하는, 동작 편집 시스템.
  8. 제2항에 있어서,
    상기 동작 편집부는,
    디제너레이트(degenerate) 케이스를 처리하는 디제너레이트 케이스 처리부; 및
    캐릭터의 전체-몸체를 개선하는 전체 몸체 개선부
    를 더 포함하는, 동작 편집 시스템.
  9. 제8항에 있어서,
    상기 디제너레이트 케이스는 고정 경로를 포함하고,
    상기 디제너레이트 케이스 처리부는,
    상기 사용자의 제약 중 상기 모양-보존 조작에 대한 제약을 하드한 제약의 컬렉션에 추가하여 상기 고정 경로를 처리하는, 동작 편집 시스템.
  10. 제8항에 있어서,
    상기 디제너레이트 케이스는, 탄젠트 플립핑(flipping)을 포함하고,
    상기 디제너레이트 케이스 처리부는,
    사용자로부터 제공되는 스레스홀드(threshold) 이상의 탄젠트 플립핑을 찾아 전역 기준 좌표계의 단일의 포인트에서 이웃한 탄젠트 벡터를 선형보간법으로 삽입하여 상기 탄젠트 플립핑을 처리하는, 동작 편집 시스템.
  11. 제8항에 있어서,
    상기 전체-몸체 개선부는,
    상기 사용자의 제약 중 엔드-이펙터(end-effector) 제약, 상기 캐릭터의 발과 지면간의 접촉에 따른 제약, 하이브리드 역기구학 솔버(hybrid inverse kinematics solver) 및 계층적 변위(hierarchical displacement) 맵핑을 이용하여 상기 캐릭터의 전체 몸체를 개선하는, 동작 편집 시스템.
  12. 제1항에 있어서,
    상기 디스크리트 동작 편집부는,
    상기 캐릭터 데이터의 동작 경로에 디스크리트 변환을 적용하는 디스크리트 변환 적용부;
    상기 디스크리트 변환이 적용된 동작 경로가 상기 사용자의 제약을 만족하기 위한 변형 에너지를 계산하는 변형 에너지 계산부;
    불필요한 디스크리트 변환을 제거하는 디스크리트 변환 제거부; 및
    디스크리트 변환의 평가를 위한 부표본을 생성하는 가속화부
    를 포함하는, 동작 편집 시스템.
  13. 제12항에 있어서,
    상기 디스크리트 변환 적용부는,
    모든 가능한 디스크리트 변환을 계산하여 상기 사용자의 제약에 대해 평가하고, 상기 평가 결과에 따라 적용될 디스크리트 변환을 선택하여 적용하는, 동작 편집 시스템.
  14. 제12항에 있어서,
    상기 변형 에너지 계산부는,
    모양-보존, 스케일-보상, 시간-왜곡 각각에 대한 변형 에너지 그리고 공간적 경로의 길이, 기간 및 디스크리트 변환에 대비하여 경로 변형에 부여되는 가중치에 기초하여 상기 제약을 만족하기 위한 변형 에너지를 계산하는, 동작 편집 시스템.
  15. 제12항에 있어서,
    상기 디스크리트 변환 제거부는,
    디스크리트 변환에 의해 삭제되거나 삽입되는 동작 프레임의 기간이 기선정된 범위를 벗어나는 경우, 해당 디스크리트 변환을 제거하는, 동작 편집 시스템.
  16. 제12항에 있어서,
    상기 디스크리트 변환 제거부는,
    제1 디스크리트 변환에 의해 삭제되거나 삽입되는 동작 프레임의 기간이 제2 디스크리트 변환의 영향이 미치는 동작 프레임의 기간을 포함하고, 제2 디스크리트 변환이 제1 디스크리트 변환을 포함하는 경우, 제2 디스크리트 변환을 제거하는, 동작 편집 시스템.
  17. 제12항에 있어서,
    상기 디스크리트 변환 제거부는,
    사용자에 의해 정의된 순간적인 제약이 적용된 동작 프레임을 삭제 또는 대체한 디스크리트 변환을 제거하는, 동작 편집 시스템.
  18. 제12항에 있어서,
    상기 디스크리트 변환 제거부는,
    상기 디스크리트 변환을 활성화 또는 비활성화 시킬 수 있는 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통해 상기 사용자로부터 디스크리트 변환의 타입, 캐릭터, 시간 구역, 디스크리트 변환이 허락되는 지역에 대한 정보 및 활성화 또는 비활성화에 따른 정보를 입력받는, 동작 편집 시스템.
  19. 제1항에 있어서,
    상기 디스크리트 변환은 삽입, 삭제 및 대체의 세 가지 타입을 포함하는, 동작 편집 시스템.
  20. 제1항에 있어서,
    상기 사용자의 제약은 핀 제약, 관계 제약 및 엔드-이펙트 제약을 포함하는 공간적 제약 및 절대 시간, 존속기간 및 동기화를 포함하는 시간적 제약을 포함하는, 동작 편집 시스템.
  21. 동작 편집부 및 디스크리트 동작 편집부를 포함하는 동작 편집 시스템에서 동작을 편집하는 방법에 있어서,
    상기 동작 편집부에서 사용자의 제약에 따라 입력된 캐릭터 데이터의 공간적 경로를 편집하고, 상호작용적 시간 왜곡을 처리하는 단계; 및
    상기 디스크리트 동작 편집부에서 캐릭터 데이터의 동작 경로에 상기 캐릭터 데이터에 따른 캐릭터의 동작을 삽입, 삭제 또는 대체하는 디스크리트 변환을 적용하는 단계
    를 포함하는 동작 편집 방법.
  22. 제21항에 있어서,
    상기 공간적 경로를 편집하고, 상호작용적 시간 왜곡을 처리하는 단계는,
    모양-보존 조작과 스케일 보상을 통해 상기 공간적 경로를 편집하는 단계; 및
    상호작용적 시간 왜곡을 처리하는 단계
    를 포함하는 동작 편집 방법.
  23. 제22항에 있어서,
    상기 공간적 경로를 편집하고, 상호작용적 시간 왜곡을 처리하는 단계는,
    디제너레이트(degenerate) 케이스를 처리하는 단계; 및
    캐릭터의 전체-몸체를 개선하는 단계
    를 더 포함하는, 동작 편집 방법.
  24. 제21항에 있어서,
    상기 디스크리트 변환을 적용하는 단계는,
    상기 캐릭터 데이터의 동작 경로에 디스크리트 변환을 적용하는 단계;
    상기 디스크리트 변환이 적용된 동작 경로가 상기 사용자의 제약을 만족하기 위한 변형 에너지를 계산하는 단계;
    불필요한 디스크리트 변환을 제거하는 단계; 및
    디스크리트 변환의 평가를 위한 부표본을 생성하는 단계
    를 포함하는, 동작 편집 방법.
  25. 제21항 내지 제24항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
KR1020090052017A 2009-06-11 2009-06-11 동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법 KR101053395B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020090052017A KR101053395B1 (ko) 2009-06-11 2009-06-11 동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법
US13/376,781 US9030479B2 (en) 2009-06-11 2009-06-19 System and method for motion editing multiple synchronized characters
PCT/KR2009/003307 WO2010143766A1 (ko) 2009-06-11 2009-06-19 동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090052017A KR101053395B1 (ko) 2009-06-11 2009-06-11 동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20100133232A KR20100133232A (ko) 2010-12-21
KR101053395B1 true KR101053395B1 (ko) 2011-08-01

Family

ID=43309010

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090052017A KR101053395B1 (ko) 2009-06-11 2009-06-11 동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법

Country Status (3)

Country Link
US (1) US9030479B2 (ko)
KR (1) KR101053395B1 (ko)
WO (1) WO2010143766A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101527792B1 (ko) * 2013-08-29 2015-06-12 한양대학교 산학협력단 상호작용하는 캐릭터를 모델링 하는 방법 및 장치

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110138321A1 (en) * 2009-12-04 2011-06-09 International Business Machines Corporation Zone-based functions in a user interface
KR20170086317A (ko) * 2016-01-18 2017-07-26 한국전자통신연구원 타이밍 변환을 이용한 3차원 캐릭터 동작 생성 장치 및 방법
KR101867991B1 (ko) * 2016-12-13 2018-06-20 한국과학기술원 다관절 오브젝트의 모션 에디팅 방법 및 장치
US11087514B2 (en) * 2019-06-11 2021-08-10 Adobe Inc. Image object pose synchronization

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002074396A (ja) 2000-06-16 2002-03-15 Sony Computer Entertainment Inc 群集の移動を表現する方法、記憶媒体、および情報処理装置
KR100682849B1 (ko) 2004-11-05 2007-02-15 한국전자통신연구원 디지털 캐릭터 생성 장치 및 그 방법
KR20080050277A (ko) * 2006-12-02 2008-06-05 한국전자통신연구원 대규모 가상 군중 동작의 획득 및 편집 방법 및 그 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002074396A (ja) 2000-06-16 2002-03-15 Sony Computer Entertainment Inc 群集の移動を表現する方法、記憶媒体、および情報処理装置
KR100682849B1 (ko) 2004-11-05 2007-02-15 한국전자통신연구원 디지털 캐릭터 생성 장치 및 그 방법
KR20080050277A (ko) * 2006-12-02 2008-06-05 한국전자통신연구원 대규모 가상 군중 동작의 획득 및 편집 방법 및 그 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
안민수, 백성민, 장진욱, 이인권, 이승용, "군중 장면 처리 시스템의 설계 및 구현", 한국정보과학회 2000년도 봄 학술발표논문집 제27권 제1호(B), 2000.4.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101527792B1 (ko) * 2013-08-29 2015-06-12 한양대학교 산학협력단 상호작용하는 캐릭터를 모델링 하는 방법 및 장치

Also Published As

Publication number Publication date
WO2010143766A1 (ko) 2010-12-16
KR20100133232A (ko) 2010-12-21
US20120075349A1 (en) 2012-03-29
US9030479B2 (en) 2015-05-12

Similar Documents

Publication Publication Date Title
Tsounis et al. Deepgait: Planning and control of quadrupedal gaits using deep reinforcement learning
US6256039B1 (en) Methods for manipulating curves constrained to unparameterized surfaces
EP1288867B1 (en) Method for generating motion
CN101147172B (zh) 图像处理系统以及图像处理方法
US10586371B2 (en) Motion retargeting method for character animation and apparatus thererof
Kim et al. Synchronized multi-character motion editing
KR101053395B1 (ko) 동기화된 복수의 캐릭터의 동작 편집 시스템 및 방법
KR101179496B1 (ko) 모션캡쳐 데이터베이스의 구축 방법과 이를 이용한 모션 합성 방법
US20100182326A1 (en) Rigging for an animated character moving along a path
Choi et al. SketchiMo: sketch-based motion editing for articulated characters
US20130141431A1 (en) Method of controlling model, and recording medium therewith
Ho et al. Topology aware data‐driven inverse kinematics
Ho et al. Motion adaptation for humanoid robots in constrained environments
Hong et al. Effective constrained dynamic simulation using implicit constraint enforcement
Lockwood et al. Biomechanically-inspired motion path editing
KR101686028B1 (ko) 리그 공간으로의 캐릭터 모션 리타겟팅 방법 및 장치
Yan et al. Learning topological motion primitives for knot planning
Ruchanurucks et al. Humanoid robot motion generation with sequential physical constraints
CN115511101A (zh) 一种服装变形预测模型的训练方法及制作动画的方法
Diaz de Leon S et al. Automatic path planning for a mobile robot among obstacles of arbitrary shape
KR101844278B1 (ko) 관절식 객체의 자세를 추정하기 위한 파라미터 학습 방법 및 관절식 객체의 자세 추정 방법
Ho et al. Computing inverse kinematics with linear programming
KR102548407B1 (ko) 뉴럴 네트워크가 포함된 상미분 방정식을 이용하는 점진적 이미지 해상도 향상 방법 및 장치와 이를 이용하는 이미지 초해상도 방법
Peng et al. A geometric constraint solver for 3-D assembly modeling
Hwang et al. Primitive object grasping for finger motion synthesis

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140709

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160204

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170626

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180620

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190625

Year of fee payment: 9