KR102535266B1 - Apparatus and method for learning motion generation model, apparatus and method for genrating motion - Google Patents

Apparatus and method for learning motion generation model, apparatus and method for genrating motion Download PDF

Info

Publication number
KR102535266B1
KR102535266B1 KR1020180079443A KR20180079443A KR102535266B1 KR 102535266 B1 KR102535266 B1 KR 102535266B1 KR 1020180079443 A KR1020180079443 A KR 1020180079443A KR 20180079443 A KR20180079443 A KR 20180079443A KR 102535266 B1 KR102535266 B1 KR 102535266B1
Authority
KR
South Korea
Prior art keywords
data
virtual object
motion
learning
posture
Prior art date
Application number
KR1020180079443A
Other languages
Korean (ko)
Other versions
KR20200005885A (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 KR1020180079443A priority Critical patent/KR102535266B1/en
Publication of KR20200005885A publication Critical patent/KR20200005885A/en
Application granted granted Critical
Publication of KR102535266B1 publication Critical patent/KR102535266B1/en

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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Abstract

일 실시예에 따른 동작 생성 모델 학습 방법은, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서, 가상 객체에 대한 제어 데이터, 상기 가상 객체의 현재 자세 데이터, 상기 현재 자세에 대한 위상(phase) 데이터, 상기 가상 객체의 다음 자세 데이터를 포함하는 학습 데이터를 입력받는 과정 및 상기 학습 데이터에 기초하여 상기 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델을 학습시키는 과정을 포함한다.A motion generation model learning method according to an embodiment is performed in a computing device having one or more processors and a memory storing one or more programs executed by the one or more processors, and includes controlling a virtual object. A process of receiving learning data including data, current posture data of the virtual object, phase data of the current posture, and next posture data of the virtual object, and generating motion of the virtual object based on the learning data It includes a process of learning a motion generation model based on a deep neural network for

Description

동작 생성 모델 학습 장치 및 방법, 동작 생성 장치 및 방법{APPARATUS AND METHOD FOR LEARNING MOTION GENERATION MODEL, APPARATUS AND METHOD FOR GENRATING MOTION}Apparatus and method for learning motion generating model, apparatus and method for generating motion

아래의 설명은 가상 객체의 동작 생성 기술에 관한 것이다.The following description relates to motion generation techniques of virtual objects.

가상현실, 게임 등과 같이 가상의 객체를 이용하여 제공되는 콘텐츠는 실시간으로 가상 객체의 움직임을 생성해야 하는 경우가 빈번하다. 그러나, 실시간으로 생성되는 가상 객체의 움직임이 부자연스럽거나 단조로운 움직임만 반복되는 경우, 가상 객체에 대한 사실감을 저하시키고 콘텐츠에 대한 몰입감을 떨어트릴 수 있다. Contents provided using virtual objects, such as virtual reality and games, frequently require motion of the virtual object to be generated in real time. However, when motions of virtual objects generated in real time are unnatural or only monotonous motions are repeated, realism of the virtual objects may deteriorate and immersion in content may deteriorate.

이에 따라, 가상 객체의 움직임이 보다 사실적이고 자연스럽게 표현되도록 하기 위한 동작 생성 방안이 요구되고 있다.Accordingly, there is a demand for a method for generating a motion to more realistically and naturally express the motion of a virtual object.

한국공개특허공보 제10-2017-0086317호 (2017.07.26. 공개)Korean Patent Publication No. 10-2017-0086317 (published on July 26, 2017)

일 실시예에 따른 동작 생성 모델 학습 방법은, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서, 가상 객체에 대한 제어 데이터, 상기 가상 객체의 현재 자세 데이터, 상기 현재 자세에 대한 위상(phase) 데이터, 상기 가상 객체의 다음 자세 데이터를 포함하는 학습 데이터를 입력받는 과정 및 상기 학습 데이터에 기초하여 상기 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델을 학습시키는 과정을 포함한다.A motion generation model learning method according to an embodiment is performed in a computing device having one or more processors and a memory storing one or more programs executed by the one or more processors, and includes controlling a virtual object. A process of receiving learning data including data, current posture data of the virtual object, phase data of the current posture, and next posture data of the virtual object, and generating motion of the virtual object based on the learning data It includes a process of learning a motion generation model based on a deep neural network for

상기 학습시키는 과정은, 상기 제어 데이터, 상기 현재 자세 데이터 및 상기 페이즈 데이터를 상기 동작 생성 모델의 입력 데이터로 이용하고, 상기 현재 자세 데이터 및 상기 다음 자세 데이터에 기초하여 생성된 데이터를 상기 동작 생성 모델의 타겟(target) 데이터로 이용하여 상기 동작 생성 모델을 학습시킬 수 있다.In the learning process, the control data, the current posture data, and the phase data are used as input data of the motion generating model, and data generated based on the current posture data and the next posture data is used as input data for the motion generating model. The motion generation model may be trained using target data of .

상기 타겟 데이터는, 상기 제어 데이터, 상기 현재 자세 데이터 및 상기 다음 자세 데이터의 가중치 합을 통해 생성될 수 있다.The target data may be generated through a weighted sum of the control data, the current posture data, and the next posture data.

상기 타겟 데이터는, 아래의 수학식 1을 이용하여 생성될 수 있다.The target data may be generated using Equation 1 below.

[수학식 1][Equation 1]

Figure 112018067332419-pat00001
(이때, α는 0<α<1, Dtarget은 상기 타겟 데이터, Pn은 상기 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
Figure 112018067332419-pat00001
(At this time, α is 0<α<1, D target is the target data, P n is the next attitude data, and P c is the current attitude data)

일 실시예에 따른 동작 생성 모델 학습 장치는, 하나 이상의 프로세서들, 메모리 및 하나 이상의 프로그램들을 포함하고, 상기 하나 이상의 프로그램들은 상기 메모리에 저장되고, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되며, 상기 하나 이상의 프로그램들은, 가상 객체에 대한 제어 데이터, 상기 가상 객체의 현재 자세 데이터, 상기 현재 자세에 대한 위상(phase) 데이터, 상기 가상 객체의 다음 자세 데이터를 포함하는 학습 데이터를 입력받는 과정 및 상기 학습 데이터에 기초하여 상기 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델을 학습시키는 과정을 포함한다.An apparatus for learning a motion generation model according to an embodiment includes one or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, One or more programs may include a process of receiving learning data including control data of a virtual object, current posture data of the virtual object, phase data of the current posture, and next posture data of the virtual object; and and learning a motion generation model based on a deep neural network for motion generation of the virtual object based on data.

상기 학습시키는 과정은, 상기 제어 데이터, 상기 현재 자세 데이터 및 상기 페이즈 데이터를 상기 동작 생성 모델의 입력 데이터로 이용하고, 상기 현재 자세 데이터 및 상기 다음 자세 데이터에 기초하여 생성된 데이터를 상기 동작 생성 모델의 타겟(target) 데이터로 이용하여 상기 동작 생성 모델을 학습시킬 수 있다.In the learning process, the control data, the current posture data, and the phase data are used as input data of the motion generating model, and data generated based on the current posture data and the next posture data is used as input data for the motion generating model. The motion generation model may be trained using target data of .

상기 타겟 데이터는, 상기 제어 데이터, 상기 현재 자세 데이터 및 상기 다음 자세 데이터의 가중치 합을 통해 생성될 수 있다.The target data may be generated through a weighted sum of the control data, the current posture data, and the next posture data.

상기 타겟 데이터는, 아래의 수학식 1을 이용하여 생성될 수 있다.The target data may be generated using Equation 1 below.

[수학식 1][Equation 1]

Figure 112018067332419-pat00002
(이때, α는 0<α<1, Dtarget은 상기 타겟 데이터, Pn은 상기 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
Figure 112018067332419-pat00002
(At this time, α is 0<α<1, D target is the target data, P n is the next attitude data, and P c is the current attitude data)

일 실시예에 따른 동작 생성 방법은, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서, 가상 객체에 대한 제어 데이터, 상기 가상 객체의 현재 자세 데이터, 상기 현재 자세에 대한 위상(phase) 데이터를 포함하는 입력 데이터을 상기 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델로 입력하는 과정 및 상기 동작 생성 모델의 출력 데이터와 상기 현재 자세 데이터에 기초하여 상기 가상 객체의 다음 자세를 결정하는 과정을 포함한다.A motion generation method according to an embodiment is a method performed in a computing device having one or more processors and a memory storing one or more programs executed by the one or more processors, comprising: control data for a virtual object; Inputting input data including current posture data and phase data of the current posture of the virtual object into a motion generation model based on a deep neural network for motion generation of the virtual object, and the operation and determining a next posture of the virtual object based on output data of a generation model and the current posture data.

상기 동작 생성 모델은, 상기 출력 데이터가 아래의 수학식 1을 만족하도록 사전 학습될 수 있다.The motion generating model may be pre-learned so that the output data satisfies Equation 1 below.

[수학식 1][Equation 1]

Figure 112018067332419-pat00003
(이때, α는 0<α<1, Dout은 상기 출력 데이터, Pn은 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
Figure 112018067332419-pat00003
(At this time, α is 0<α<1, D out is the output data, P n is the next attitude data, and P c is the current attitude data)

상기 결정하는 과정은, 상기 출력 데이터와 상기 현재 자세 데이터의 가중치 합을 이용하여 상기 다음 자세를 결정할 수 있다.In the determining process, the next posture may be determined using a weighted sum of the output data and the current posture data.

상기 결정하는 과정은, 아래의 수학식 2를 이용하여 상기 다음 자세를 결정할 수 있다.In the determining process, the next posture may be determined using Equation 2 below.

[수학식 2][Equation 2]

Figure 112018067332419-pat00004
(이때, α는 0<α<1, Dout은 상기 출력 데이터, Pn은 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
Figure 112018067332419-pat00004
(At this time, α is 0<α<1, D out is the output data, P n is the next attitude data, and P c is the current attitude data)

일 실시예에 따른 동작 생성 장치는, 하나 이상의 프로세서들, 메모리 및 하나 이상의 프로그램들을 포함하고, 상기 하나 이상의 프로그램들은 상기 메모리에 저장되고, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되며, 상기 하나 이상의 프로그램들은, 가상 객체에 대한 제어 데이터, 상기 가상 객체의 현재 자세 데이터, 상기 현재 자세에 대한 위상(phase) 데이터를 포함하는 입력 데이터을 상기 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델로 입력하는 과정 및 상기 동작 생성 모델의 출력 데이터와 상기 현재 자세 데이터에 기초하여 상기 가상 객체의 다음 자세를 결정하는 과정을 포함한다.An action generating apparatus according to an embodiment includes one or more processors, a memory and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, The programs use input data including control data for the virtual object, current posture data of the virtual object, and phase data for the current posture as a deep neural network-based method for generating motion of the virtual object. and determining a next pose of the virtual object based on output data of the motion generation model and the current pose data.

상기 동작 생성 모델은, 상기 출력 데이터가 아래의 수학식 1을 만족하도록 사전 학습될 수 있다.The motion generating model may be pre-learned so that the output data satisfies Equation 1 below.

[수학식 1][Equation 1]

Figure 112018067332419-pat00005
(이때, α는 0<α<1, Dout은 상기 출력 데이터, Pn은 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
Figure 112018067332419-pat00005
(At this time, α is 0<α<1, D out is the output data, P n is the next attitude data, and P c is the current attitude data)

상기 결정하는 과정은, 상기 출력 데이터와 상기 현재 자세 데이터의 가중치 합을 이용하여 상기 다음 자세를 결정할 수 있다.In the determining process, the next posture may be determined using a weighted sum of the output data and the current posture data.

상기 결정하는 과정은, 아래의 수학식 2를 이용하여 상기 다음 자세를 결정할 수 있다.In the determining process, the next posture may be determined using Equation 2 below.

[수학식 2][Equation 2]

Figure 112018067332419-pat00006
(이때, α는 0<α<1, Dout은 상기 출력 데이터, Pn은 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
Figure 112018067332419-pat00006
(At this time, α is 0<α<1, D out is the output data, P n is the next attitude data, and P c is the current attitude data)

도 1은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
도 2는 일 실시예에 따른 동작 생성 모델 학습 방법의 흐름도
도 3은 일 실시예에 따른 동작 생성 방법의 흐름도
1 is a block diagram illustrating and describing a computing environment including a computing device suitable for use in example embodiments;
2 is a flowchart of a motion generation model learning method according to an embodiment
3 is a flow chart of a method for generating an action according to an exemplary embodiment;

이하, 도면을 참조하여 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 이에 제한되지 않는다.Hereinafter, specific embodiments will be described with reference to the drawings. The detailed descriptions that follow are provided to provide a comprehensive understanding of the methods, devices and/or systems described herein. However, this is only an example and is not limited thereto.

실시예들을 설명함에 있어서, 관련된 공지기술에 대한 구체적인 설명이 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing the embodiments, if it is determined that a detailed description of related known technologies may unnecessarily obscure the subject matter of the invention, the detailed description will be omitted. In addition, terms to be described later are terms defined in consideration of functions, which may vary according to intentions or customs of users and operators. Therefore, the definition should be made based on the contents throughout this specification. Terminology used in the detailed description is only for describing the embodiments and should in no way be limiting. Unless expressly used otherwise, singular forms of expression include plural forms. In this description, expressions such as "comprising" or "comprising" are intended to indicate any characteristic, number, step, operation, element, portion or combination thereof, one or more other than those described. It should not be construed to exclude the existence or possibility of any other feature, number, step, operation, element, part or combination thereof.

도 1은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술되지 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.1 is a block diagram illustrating and illustrating a computing environment 10 including a computing device suitable for use in example embodiments. In the illustrated embodiment, each component may have different functions and capabilities other than those described below, and may include additional components other than those described below.

도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 본 실시예들에 따른 동작 생성 모델 학습 장치 또는 동작 생성 장치일 수 있다. 컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.The illustrated computing environment 10 includes a computing device 12 . In one embodiment, the computing device 12 may be a motion generation model learning device or a motion generation device according to the present embodiments. Computing device 12 includes at least one processor 14 , a computer readable storage medium 16 and a communication bus 18 . Processor 14 may cause computing device 12 to operate according to the above-mentioned example embodiments. For example, processor 14 may execute one or more programs stored on computer readable storage medium 16 . The one or more programs may include one or more computer-executable instructions, which when executed by processor 14 are configured to cause computing device 12 to perform operations in accordance with an illustrative embodiment. It can be.

컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.Computer-readable storage medium 16 is configured to store computer-executable instructions or program code, program data, and/or other suitable form of information. Program 20 stored on computer readable storage medium 16 includes a set of instructions executable by processor 14 . In one embodiment, computer readable storage medium 16 includes memory (volatile memory such as random access memory, non-volatile memory, or a suitable combination thereof), one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, other forms of storage media that can be accessed by computing device 12 and store desired information, or any suitable combination thereof.

통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.Communications bus 18 interconnects various other components of computing device 12, including processor 14 and computer-readable storage medium 16.

컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(102)와 연결될 수도 있다.Computing device 12 may also include one or more input/output interfaces 22 and one or more network communication interfaces 26 that provide interfaces for one or more input/output devices 24 . An input/output interface 22 and a network communication interface 26 are connected to the communication bus 18 . Input/output device 24 may be coupled to other components of computing device 12 via input/output interface 22 . Exemplary input/output devices 24 include a pointing device (such as a mouse or trackpad), a keyboard, a touch input device (such as a touchpad or touchscreen), a voice or sound input device, various types of sensor devices, and/or a photographing device. input devices, and/or output devices such as display devices, printers, speakers, and/or network cards. Exemplary input/output device 24 may be included inside computing device 12 as a component constituting computing device 12, or may be connected to computing device 102 as a separate device distinct from computing device 12. may be

도 2는 일 실시예에 따른 동작 생성 모델 학습 방법의 흐름도이다. 2 is a flowchart of a motion generation model learning method according to an exemplary embodiment.

도 2에 도시된 방법은 예를 들어, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치(12)에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.The method illustrated in FIG. 2 may be performed, for example, by computing device 12 having one or more processors and a memory storing one or more programs executed by the one or more processors. In the illustrated flowchart, the method is divided into a plurality of steps, but at least some of the steps are performed in reverse order, combined with other steps, performed together, omitted, divided into detailed steps, or not shown. One or more steps may be added and performed.

도 2를 참조하면, 컴퓨팅 장치(12)는 가상 객체에 대한 제어 데이터, 가상 객체의 현재 자세 데이터, 가상 객체의 현재 자세에 대한 위상(phase) 데이터 및 가상 객체의 다음 자세 데이터를 포함하는 학습 데이터를 입력 받는다(210).Referring to FIG. 2 , the computing device 12 provides learning data including control data for a virtual object, current posture data of the virtual object, phase data for the current posture of the virtual object, and next posture data of the virtual object. is input (210).

이때, 가상 객체는 예를 들어, 가상 현실 또는 현실 세계의 이미지 내에서 표시되는 가상의 이미지로서, 사용자의 조작에 따라 움직이는 객체를 의미한다. 예를 들어, 가상 객체는 게임 내에서 사용자에 의해 조작되는 게임 캐릭터, 가상 현실 기술 또는 증강 현실 기술 등을 통해 표현되는 객체 중 사용자의 조작에 따라 움직이는 객체를 포함할 수 있다.In this case, the virtual object is, for example, a virtual image displayed in virtual reality or an image of the real world, and refers to an object that moves according to a user's manipulation. For example, the virtual object may include a game character manipulated by a user in a game or an object that moves according to a user's manipulation among objects expressed through virtual reality technology or augmented reality technology.

제어 데이터는 가상 객체가 예를 들어, 달리기, 걷기, 점프, 구르기, 앉기, 공격 등과 같은 특정 동작을 수행하도록 제어하기 위한 사용자 입력에 대응되는 데이터를 포함할 수 있다. The control data may include data corresponding to a user input for controlling the virtual object to perform a specific motion, such as running, walking, jumping, rolling, sitting, or attacking.

현재 자세 데이터는 가상 객체가 현재 취하고 있는 자세와 관련된 데이터를 포함할 수 있다. 예를 들어, 현재 자세 데이터는 현재 자세에서 가상 객체를 구성하는 요소들(예를 들어, 관절, 손, 발, 머리 등)의 위치, 각도, 방향 등과 관련된 데이터들을 포함할 수 있다.The current posture data may include data related to a posture currently taken by the virtual object. For example, the current posture data may include data related to positions, angles, directions, and the like of elements constituting the virtual object (eg, joints, hands, feet, head, etc.) in the current posture.

다음 자세 데이터는 제어 데이터에 따른 동작 수행을 위해 가상 객체가 취해야 할 다음 자세와 관련된 데이터를 포함할 수 있다. 예를 들어, 다음 자세 데이터는 가상 객체가 취해야 할 다음 자세에서 가상 객체를 구성하는 요소들(예를 들어, 관절, 손, 발, 머리 등)의 위치, 각도, 방향 등과 관련된 데이터들을 포함할 수 있다.The next posture data may include data related to the next posture to be taken by the virtual object to perform an operation according to the control data. For example, the next posture data may include data related to positions, angles, directions, etc. of elements constituting the virtual object (eg, joints, hands, feet, head, etc.) in the next posture to be taken by the virtual object. there is.

위상 데이터는 가상 객체가 현재 수행 중인 동작 내에서 가상 객체의 현재 자세가 가지는 변화 국면을 나타내는 위상과 관련된 데이터를 포함할 수 있다.The phase data may include phase-related data indicating a change phase of a current posture of the virtual object within an operation currently being performed by the virtual object.

구체적으로, 가상 객체에 의해 수행되는 각 동작은 가상 객체가 취하는 자세의 시간의 흐름에 따른 변화로 이루어질 수 있다. 예를 들어, 사람 형태의 가상 객체에 의해 수행되는 앉기 동작은 예를 들어, 가상 객체의 무릎 관절의 각도가 180도인 자세로 시작되어 무릎 관절의 각도가 특정 각도(예를 들어, 10도)로 굽혀진 자세로 종료된다. 이때, 현재 가상 객체에 의해 수행되는 동작이 앉기 동작인 것으로 가정하면, 가상 객체의 무릎 관절 각도가 180도, 85도, 10도인 자세 각각에 대한 위상 데이터는 각각 0, π, 2π의 값을 가질 수 있다.Specifically, each motion performed by the virtual object may be formed by a change in posture taken by the virtual object over time. For example, a sitting motion performed by a virtual object in the form of a person starts with a posture in which the angle of the knee joint of the virtual object is 180 degrees, for example, and the angle of the knee joint changes to a specific angle (eg, 10 degrees). It ends in a bent position. At this time, assuming that the motion currently performed by the virtual object is a sitting motion, phase data for postures in which the knee joint angles of the virtual object are 180 degrees, 85 degrees, and 10 degrees, respectively, have values of 0, π, and 2π, respectively. can

이후, 컴퓨팅 장치(120)는 입력된 학습 데이터에 기초하여 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델을 학습시킨다(220).Thereafter, the computing device 120 learns a motion generation model based on a deep neural network for motion generation of a virtual object based on the input learning data (220).

일 실시예에 따르면, 컴퓨팅 장치(120)는 입력된 학습 데이터 중 제어 데이터, 현재 자세 데이터, 위상 데이터를 동작 생성 모델의 입력 데이터로 이용하고, 입력된 학습 데이터 중 현재 자세 데이터와 다음 자세 데이터에 기초하여 생성된 데이터를 동작 생성 모델의 타겟(target) 데이터로 이용하여 동작 생성 모델을 학습시킬 수 있다.According to an embodiment, the computing device 120 uses control data, current posture data, and phase data among the input learning data as input data of a motion generating model, and uses the current posture data and the next posture data among the input learning data as input data. The motion generation model may be trained by using data generated based thereon as target data of the motion generation model.

이때, 타겟 데이터는 예를 들어, 아래의 수학식 1과 같이 현재 자세 데이터와 다음 자세 데이터 사이의 가중치 합을 통해 생성될 수 있다.In this case, the target data may be generated through a weighted sum between the current posture data and the next posture data as shown in Equation 1 below, for example.

[수학식 1][Equation 1]

Figure 112018067332419-pat00007
Figure 112018067332419-pat00007

이때, Dtarget은 타겟 데이터, Pn은 다음 자세 데이터, Pc는 현재 자세 데이터를 각각 나타낸다. 또한, α는 사용자에 의해 설정 가능한 변수이며, 0과 1 사이의 값을 가질 수 있다. At this time, D target represents target data, P n represents next posture data, and P c represents current posture data. Also, α is a variable that can be set by a user and may have a value between 0 and 1.

도 3은 일 실시예에 따른 동작 생성 방법의 흐름도이다. 3 is a flow diagram of a method for creating an action according to an embodiment.

도 3에 도시된 방법은 예를 들어, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치(12)에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.The method illustrated in FIG. 3 may be performed, for example, by computing device 12 having one or more processors and a memory storing one or more programs executed by the one or more processors. In the illustrated flowchart, the method is divided into a plurality of steps, but at least some of the steps are performed in reverse order, combined with other steps, performed together, omitted, divided into detailed steps, or not shown. One or more steps may be added and performed.

도 3을 참조하면, 컴퓨팅 장치(12)는 가상 객체의 동작 제어를 위한 제어 데이터, 가상 객체의 현재 자세 데이터 및 가상 객체의 현재 자세에 대한 위상 데이터를 포함하는 입력 데이터를 동작 생성 모델로 입력한다(310).Referring to FIG. 3 , the computing device 12 inputs input data including control data for motion control of a virtual object, current posture data of the virtual object, and phase data on the current posture of the virtual object to a motion generation model. (310).

이때, 동작 생성 모델은 도 2에 도시된 방법에 의해 사전 학습될 수 있다. 즉, 동작 생성 모델은 예를 들어, 출력 데이터가 아래의 수학식 2를 만족하도록 학습될 수 있다.In this case, the motion generating model may be pre-learned by the method shown in FIG. 2 . That is, the motion generation model may be learned such that output data satisfies Equation 2 below, for example.

[수학식 2][Equation 2]

Figure 112018067332419-pat00008
Figure 112018067332419-pat00008

이때, Dout은 동작 생성 모델의 출력 데이터At this time, D out is the output data of the motion generation model.

이후, 컴퓨팅 장치(12)는 동작 생성 모델의 출력 데이터와 가상 객체의 현재 자세 데이터에 기초하여 가상 객체의 다음 자세를 결정한다(320).Then, the computing device 12 determines the next posture of the virtual object based on the output data of the motion generation model and the current posture data of the virtual object (320).

이때, 일 실시예에 따르면, 컴퓨팅 장치(12)는 예를 들어, 아래의 수학식 3과 같이 동작 생성 모델의 출력 데이터와 가상 객체의 현재 자세 데이터 사이의 가중치 합을 이용하여 가상 객체의 다음 자세를 결정할 수 있다.At this time, according to an embodiment, the computing device 12 uses the sum of the weights between the output data of the motion generating model and the current posture data of the virtual object as shown in Equation 3 below, for example, to determine the next posture of the virtual object. can decide

[수학식 3][Equation 3]

Figure 112018067332419-pat00009
Figure 112018067332419-pat00009

즉, 일반적으로 심층 신경망은 다수의 곱셈과 덧셈 연산으로 구성되어 있어 부동 소수점 오류(floating point error)가 누적될 수 있으며, 이에 따라 동작 생성 모델의 출력 데이터에 오류가 존재할 수 있다. 그러나, 수학식 2에 따르면, 가상 객체의 다음 자세 결정을 위한 동작 생성 모델의 출력 데이터의 비율을 (1-α)로 설정함으로써 동작 생성 모델의 출력 데이터에 존재할 수 있는 오류를 줄임과 동시에 가상 객체의 현재 자세를 α의 비율로 고려할 수 있도록 함으로써 결정된 다음 자세에 포함될 수 있는 오류를 최소화할 수 있다.That is, since a deep neural network is generally composed of a plurality of multiplication and addition operations, floating point errors may accumulate, and accordingly, errors may exist in output data of a motion generation model. However, according to Equation 2, by setting the ratio of the output data of the motion generating model for determining the next posture of the virtual object to (1-α), errors that may exist in the output data of the motion generating model are reduced and at the same time, the virtual object Errors that may be included in the next determined posture can be minimized by allowing the current posture of to be considered as a ratio of α.

한편, 일 실시예에 따르면, 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.On the other hand, according to one embodiment, it may include a program for performing the methods described in this specification on a computer, and a computer readable recording medium containing the program. The computer readable recording medium may include program instructions, local data files, local data structures, etc. alone or in combination. The media may be specially designed and constructed, or may be commonly available in the field of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and specially configured to store and execute program instructions such as ROM, RAM, and flash memory. Hardware devices are included. Examples of the program may include not only machine language codes generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter.

이상에서 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Representative embodiments have been described in detail above, but those skilled in the art will understand that various modifications are possible within the above-described embodiments without departing from the scope of the invention. Therefore, the scope of the present invention should not be limited to the described embodiments and should not be defined, and should be defined by not only the claims to be described later, but also those equivalent to these claims.

10: 컴퓨팅 환경
12: 컴퓨팅 장치
14: 프로세서
16: 컴퓨터 판독 가능 저장 매체
18: 통신 버스
20: 프로그램
22: 입출력 인터페이스
24: 입출력 장치
26: 네트워크 통신 인터페이스
10: Computing environment
12: computing device
14: Processor
16: computer readable storage medium
18: communication bus
20: program
22: I/O interface
24: I/O device
26: network communication interface

Claims (16)

하나 이상의 프로세서들, 및
상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서,
가상 객체에 대한 제어 데이터, 상기 가상 객체의 현재 자세 데이터, 상기 현재 자세에 대한 위상(phase) 데이터 및 상기 가상 객체의 다음 자세 데이터를 포함하는 학습 데이터를 입력받는 과정; 및
상기 학습 데이터에 기초하여 상기 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델을 학습시키는 과정을 포함하고,
상기 학습시키는 과정은, 상기 현재 자세 데이터 및 상기 다음 자세 데이터의 가중치 합을 통해 생성된 데이터를 상기 동작 생성 모델이 출력할 타겟(target) 데이터로 이용하여 상기 동작 생성 모델을 학습시키는 동작 생성 모델 학습 방법.
one or more processors; and
A method performed in a computing device having a memory storing one or more programs executed by the one or more processors,
receiving learning data including control data of a virtual object, current posture data of the virtual object, phase data of the current posture, and next posture data of the virtual object; and
Learning a motion generation model based on a deep neural network for motion generation of the virtual object based on the learning data;
The learning process may include learning a motion generation model in which the motion generation model is trained using data generated through a weighted sum of the current posture data and the next posture data as target data to be output by the motion generation model. method.
청구항 1에 있어서,
상기 학습시키는 과정은, 상기 제어 데이터, 상기 현재 자세 데이터 및 상기 위상 데이터를 상기 동작 생성 모델의 입력 데이터로 이용하고, 상기 현재 자세 데이터 및 상기 다음 자세 데이터의 가중치 합을 통해 생성된 데이터를 상기 동작 생성 모델의 타겟(target) 데이터로 이용하여 상기 동작 생성 모델을 학습시키는 동작 생성 모델 학습 방법.
The method of claim 1,
In the learning process, the control data, the current posture data, and the phase data are used as input data of the motion generating model, and data generated through a weighted sum of the current posture data and the next posture data is used as the motion generation model. A motion generation model learning method for learning the motion generation model by using it as target data of the generation model.
삭제delete 청구항 1에 있어서,
상기 타겟 데이터는, 아래의 수학식 1을 이용하여 생성되는 동작 생성 모델 학습 방법.
[수학식 1]
Figure 112023047135267-pat00010
(이때, α는 0<α<1, Dtarget은 상기 타겟 데이터, Pn은 상기 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
The method of claim 1,
The target data is generated using Equation 1 below.
[Equation 1]
Figure 112023047135267-pat00010
(At this time, α is 0<α<1, D target is the target data, P n is the next attitude data, and P c is the current attitude data)
하나 이상의 프로세서들;
메모리; 및
하나 이상의 프로그램들을 포함하고,
상기 하나 이상의 프로그램들은 상기 메모리에 저장되고, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되며,
상기 하나 이상의 프로그램들은,
가상 객체에 대한 제어 데이터, 상기 가상 객체의 현재 자세 데이터, 상기 현재 자세에 대한 위상(phase) 데이터 및 상기 가상 객체의 다음 자세 데이터를 포함하는 학습 데이터를 입력받는 과정; 및
상기 학습 데이터에 기초하여 상기 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델을 학습시키는 과정을 포함하고,
상기 학습시키는 과정은, 상기 현재 자세 데이터 및 상기 다음 자세 데이터의 가중치 합을 통해 생성된 데이터를 상기 동작 생성 모델이 출력할 타겟(target) 데이터로 이용하여 상기 동작 생성 모델을 학습시키는 동작 생성 모델 학습 장치.
one or more processors;
Memory; and
contains one or more programs;
the one or more programs are stored in the memory and configured to be executed by the one or more processors;
The one or more programs,
receiving learning data including control data of a virtual object, current posture data of the virtual object, phase data of the current posture, and next posture data of the virtual object; and
Learning a motion generation model based on a deep neural network for motion generation of the virtual object based on the learning data;
The learning process may include learning a motion generation model in which the motion generation model is trained using data generated through a weighted sum of the current posture data and the next posture data as target data to be output by the motion generation model. Device.
청구항 5에 있어서,
상기 학습시키는 과정은, 상기 제어 데이터, 상기 현재 자세 데이터 및 상기 위상 데이터를 상기 동작 생성 모델의 입력 데이터로 이용하고, 상기 현재 자세 데이터 및 상기 다음 자세 데이터의 가중치 합을 통해 생성된 데이터를 상기 동작 생성 모델의 타겟(target) 데이터로 이용하여 상기 동작 생성 모델을 학습시키는 동작 생성 모델 학습 장치.
The method of claim 5,
In the learning process, the control data, the current posture data, and the phase data are used as input data of the motion generating model, and data generated through a weighted sum of the current posture data and the next posture data is used as the motion generation model. An apparatus for learning a motion generation model for learning the motion generation model by using it as target data of the generation model.
삭제delete 청구항 5에 있어서,
상기 타겟 데이터는, 아래의 수학식 1을 이용하여 생성되는 동작 생성 모델 학습 장치.
[수학식 1]
Figure 112023047135267-pat00011
(이때, α는 0<α<1, Dtarget은 상기 타겟 데이터, Pn은 상기 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
The method of claim 5,
The target data is generated using Equation 1 below.
[Equation 1]
Figure 112023047135267-pat00011
(At this time, α is 0<α<1, D target is the target data, P n is the next attitude data, and P c is the current attitude data)
하나 이상의 프로세서들, 및
상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서,
가상 객체에 대한 제어 데이터, 상기 가상 객체의 현재 자세 데이터 및 상기 현재 자세에 대한 위상(phase) 데이터를 포함하는 입력 데이터를 상기 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델로 입력하는 과정; 및
상기 동작 생성 모델의 출력 데이터와 상기 현재 자세 데이터의 가중치 합을 이용하여 상기 가상 객체의 다음 자세를 결정하는 과정을 포함하는 동작 생성 방법.
one or more processors; and
A method performed in a computing device having a memory storing one or more programs executed by the one or more processors,
Motion generation based on a deep neural network for motion generation of the virtual object using input data including control data for the virtual object, current posture data of the virtual object, and phase data for the current posture. The process of entering into the model; and
and determining a next posture of the virtual object using a weighted sum of output data of the motion generating model and the current posture data.
청구항 9에 있어서,
상기 동작 생성 모델은, 상기 출력 데이터가 아래의 수학식 1을 만족하도록 사전 학습되는 동작 생성 방법.
[수학식 1]
Figure 112018067332419-pat00012
(이때, α는 0<α<1, Dout은 상기 출력 데이터, Pn은 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
The method of claim 9,
The motion generation model is pre-learned such that the output data satisfies Equation 1 below.
[Equation 1]
Figure 112018067332419-pat00012
(At this time, α is 0<α<1, D out is the output data, P n is the next attitude data, and P c is the current attitude data)
삭제delete 청구항 9에 있어서,
상기 결정하는 과정은, 아래의 수학식 2를 이용하여 상기 다음 자세를 결정하는 동작 생성 방법.
[수학식 2]
Figure 112023047135267-pat00013
(이때, α는 0<α<1, Dout은 상기 출력 데이터, Pn은 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
The method of claim 9,
In the determining step, the motion generating method determines the next posture using Equation 2 below.
[Equation 2]
Figure 112023047135267-pat00013
(At this time, α is 0<α<1, D out is the output data, P n is the next attitude data, and P c is the current attitude data)
하나 이상의 프로세서들;
메모리; 및
하나 이상의 프로그램들을 포함하고,
상기 하나 이상의 프로그램들은 상기 메모리에 저장되고, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되며,
상기 하나 이상의 프로그램들은,
가상 객체에 대한 제어 데이터, 상기 가상 객체의 현재 자세 데이터 및 상기 현재 자세에 대한 위상(phase) 데이터를 포함하는 입력 데이터를 상기 가상 객체의 동작 생성을 위한 심층 신경망(Deep Neural Network) 기반의 동작 생성 모델로 입력하는 과정; 및
상기 동작 생성 모델의 출력 데이터와 상기 현재 자세 데이터의 가중치 합을 이용하여 상기 가상 객체의 다음 자세를 결정하는 과정을 포함하는 동작 생성 장치.
one or more processors;
Memory; and
contains one or more programs;
the one or more programs are stored in the memory and configured to be executed by the one or more processors;
The one or more programs,
Motion generation based on a deep neural network for motion generation of the virtual object using input data including control data for the virtual object, current posture data of the virtual object, and phase data for the current posture. The process of entering into the model; and
and determining a next posture of the virtual object using a weighted sum of output data of the motion generating model and the current posture data.
청구항 13에 있어서,
상기 동작 생성 모델은, 상기 출력 데이터가 아래의 수학식 1을 만족하도록 사전 학습되는 동작 생성 장치.
[수학식 1]
Figure 112018067332419-pat00014
(이때, α는 0<α<1, Dout은 상기 출력 데이터, Pn은 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
The method of claim 13,
The motion generating model is pre-learned such that the output data satisfies Equation 1 below.
[Equation 1]
Figure 112018067332419-pat00014
(At this time, α is 0<α<1, D out is the output data, P n is the next attitude data, and P c is the current attitude data)
삭제delete 청구항 13에 있어서,
상기 결정하는 과정은, 아래의 수학식 2를 이용하여 상기 다음 자세를 결정하는 동작 생성 장치.
[수학식 2]
Figure 112023047135267-pat00015
(이때, α는 0<α<1, Dout은 상기 출력 데이터, Pn은 다음 자세 데이터, Pc는 상기 현재 자세 데이터)
The method of claim 13,
In the determining process, the motion generating device determines the next posture using Equation 2 below.
[Equation 2]
Figure 112023047135267-pat00015
(At this time, α is 0<α<1, D out is the output data, P n is the next attitude data, and P c is the current attitude data)
KR1020180079443A 2018-07-09 2018-07-09 Apparatus and method for learning motion generation model, apparatus and method for genrating motion KR102535266B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180079443A KR102535266B1 (en) 2018-07-09 2018-07-09 Apparatus and method for learning motion generation model, apparatus and method for genrating motion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180079443A KR102535266B1 (en) 2018-07-09 2018-07-09 Apparatus and method for learning motion generation model, apparatus and method for genrating motion

Publications (2)

Publication Number Publication Date
KR20200005885A KR20200005885A (en) 2020-01-17
KR102535266B1 true KR102535266B1 (en) 2023-05-22

Family

ID=69370056

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180079443A KR102535266B1 (en) 2018-07-09 2018-07-09 Apparatus and method for learning motion generation model, apparatus and method for genrating motion

Country Status (1)

Country Link
KR (1) KR102535266B1 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170086317A (en) 2016-01-18 2017-07-26 한국전자통신연구원 Apparatus and Method for Generating 3D Character Motion via Timing Transfer

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Barsoum, Emad, John Kender, and Zicheng Liu. "HP-GAN: Probabilistic 3D human motion prediction via GAN." arXiv preprint arXiv:1711.09561v1 (2017.11.27.)*
Daniel Holden, Taku Komura, and Jun Saito. "Phase-functioned neural networks for character control." ACM Transactions on Graphics (TOG), 36(4):42, 2017. (2017.07.20.)*

Also Published As

Publication number Publication date
KR20200005885A (en) 2020-01-17

Similar Documents

Publication Publication Date Title
US11127311B2 (en) Systems and methods for programming instruction
US10223621B1 (en) Artificially intelligent systems, devices, and methods for learning and/or using visual surrounding for autonomous object operation
US10565792B2 (en) Approximating mesh deformations for character rigs
US11321895B2 (en) Neural state machine digital character animation
US20140170633A1 (en) Programming learning center
KR101483054B1 (en) Mobile -based augmented reality authoring system and method for interaction
EP2950274B1 (en) Method and system for generating motion sequence of animation, and computer-readable recording medium
CN108776544A (en) Exchange method and device, storage medium, electronic equipment in augmented reality
CN111080755B (en) Motion calculation method and device, storage medium and electronic equipment
Mousas et al. Performance-driven hybrid full-body character control for navigation and interaction in virtual environments
KR20120030406A (en) Scrubbing variable content paths
CN109155004A (en) Model free control for intensified learning agency
KR102535266B1 (en) Apparatus and method for learning motion generation model, apparatus and method for genrating motion
US10839249B2 (en) Methods and systems for analyzing images utilizing scene graphs
US8683429B2 (en) Systems and methods for runtime control of hierarchical objects
Adjeisah et al. Joint Filtering: Enhancing gesture and mouse movement in Microsoft Kinect application
Whalen et al. Capturing behaviour for the use of avatars in virtual environments
Rivera et al. Object detection with a model trained in Google Cloud AutoML
Kamal et al. A platform for developing and fine tuning adaptive 3d navigation techniques for the immersive web
KR102542830B1 (en) Mobile game system for playing Baduk-ball based on augmented reality and method therefor
KR102286160B1 (en) Method and apparatus of providing tactile feedback
Tas et al. TeamCAD--A Multimodal Interface for Remote Computer Aided Design
CN117788977A (en) Training method and device for 3D attitude estimation model and computer equipment
KR101699930B1 (en) Method and Device for Generating Behavior of Avatar
Ye et al. AR Visualization System for Ship Detection and Recognition Based on AI

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant