KR102543650B1 - 모션 합성 장치 및 모션 합성 방법 - Google Patents

모션 합성 장치 및 모션 합성 방법 Download PDF

Info

Publication number
KR102543650B1
KR102543650B1 KR1020180088621A KR20180088621A KR102543650B1 KR 102543650 B1 KR102543650 B1 KR 102543650B1 KR 1020180088621 A KR1020180088621 A KR 1020180088621A KR 20180088621 A KR20180088621 A KR 20180088621A KR 102543650 B1 KR102543650 B1 KR 102543650B1
Authority
KR
South Korea
Prior art keywords
motion
feature values
style
motion data
synthesized
Prior art date
Application number
KR1020180088621A
Other languages
English (en)
Other versions
KR20200013430A (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 KR1020180088621A priority Critical patent/KR102543650B1/ko
Priority to US16/506,402 priority patent/US10957087B2/en
Priority to CN201910619253.XA priority patent/CN110782478B/zh
Priority to JP2019129806A priority patent/JP6902071B2/ja
Priority to EP19188315.6A priority patent/EP3605389A1/en
Publication of KR20200013430A publication Critical patent/KR20200013430A/ko
Application granted granted Critical
Publication of KR102543650B1 publication Critical patent/KR102543650B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • G06V40/25Recognition of walking or running movements, e.g. gait recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • 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]
    • 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/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • 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

Abstract

본 발명의 일실시예에 따르면, 모션 합성 장치가 컨텐츠 모션 데이터들 및 스타일 모션 데이터들에 따라 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 획득하는 동작, 모션 합성 장치가 상기 획득한 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 이용하여 타겟 특징 값들(target features values)을 생성하는 동작, 모션 합성 장치가 합성된 모션(synthesized motion) 데이터들을 인식하고, 상기 인식한 합성된 모션 데이터들에서 합성된 모션 특징 값들(synthesized motion features values)을 획득하는 동작 및 모션 합성 장치가 상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)을 이용하여 손실(loss)을 획득하고, 상기 획득한 손실에 따라 상기 합성된 모션을 업데이트 하는 동작을 포함한다.

Description

모션 합성 장치 및 모션 합성 방법{APPARATUS AND METHOD FOR MOTION SYNTHESIZATION}
아래의 실시예들은 모션 합성 장치 및 모션 합성 방법에 관한 것으로, 보다 상세하게는 타겟 특징 값들과 합성된 모션의 특징 값들을 이용하여 손실을 획득하고, 상기 획득한 손실에 따라 합성된 모션을 업데이트하는 모션 합성 장치 및 모션 합성 방법에 관한 것이다.
머신 러닝(machine learning)은 인공 지능의 한 분야로, 패턴인식과 컴퓨터 학습 이론의 연구로부터 진화한 분야이며, 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야를 말한다.
머신 러닝은 경험적 데이터를 기반으로 학습을 하고 예측을 수행하고 스스로의 성능을 향상시키는 시스템과 이를 위한 알고리즘을 연구하고 구축하는 기술이라 할 수 있다. 머신 러닝의 알고리즘들은 엄격하게 정해진 정적인 프로그램 명령들을 수행하는 것이 아니라, 입력 데이터를 기반으로 예측이나 결정을 이끌어내기 위해 특정한 모델을 구축하는 방식을 취한다.
머신 러닝의 핵심은 표현(representation)과 일반화(generalization)에 있다. 표현이란 데이터의 평가이며, 일반화란 아직 알 수 없는 데이터에 대한 처리이다. 이는 전산 학습 이론 분야이기도 하다.
딥 러닝(deep learning)은 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화를 시도하는 기계학습(machine learning) 알고리즘의 집합으로 정의되며, 큰 틀에서 사람의 사고방식을 컴퓨터에게 가르치는 기계학습의 한 분야라고 이야기할 수 있다.
어떠한 데이터가 있을 때 이를 컴퓨터가 알아 들을 수 있는 형태로 표현하고 이를 학습에 적용하기 위해 많은 연구가 진행되고 있으며, 이러한 노력의 결과로 deep neural networks, convolutional deep neural networks, deep belief networks와 같은 다양한 딥 러닝 기법들이 컴퓨터 비젼, 음성인식, 자연어처리, 음성/신호처리 등의 분야에 적용되어 최첨단의 결과들을 보여주고 있다.
대한민국 등록특허공보 제10- 1501405호(2015.03.04.등록)
본 발명의 일실시예에 따르면, 모션 합성 장치가 컨텐츠 모션 데이터들 및 스타일 모션 데이터들에 따라 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 획득하는 동작, 모션 합성 장치가 상기 획득한 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 이용하여 타겟 특징 값들(target features values)을 생성하는 동작, 모션 합성 장치가 합성된 모션(synthesized motion) 데이터들을 인식하고, 상기 인식한 합성된 모션 데이터들에서 합성된 모션 특징 값들(synthesized motion features values)을 획득하는 동작 및 모션 합성 장치가 상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)을 이용하여 손실(loss)을 획득하고, 상기 획득한 손실에 따라 상기 합성된 모션을 업데이트 하는 동작을 포함한다.
또한, 상기 합성된 모션을 업데이트 하는 동작은, 상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)이 매치될 때까지 백프로퍼게이션(back-propagation) 알고리즘을 이용할 수 있다.
또한, 상기 모션 합성 장치는 학습되지 않은(untrained) 컨볼루셔널 뉴럴 네트워크(Convolutional Neural Network)를 이용하여 특징 값들을 획득할 수 있다.
또한, 상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들은 애니메이션 데이터들일 수 있다.
또한, 상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들은 뼈(bone)의 정보를 포함할 수 있다.
또한, 상기 스타일 특징 값들을 이용하여 스타일 로스를 획득하고, 상기 획득한 스타일 로스에 가중치를 부여하여 상기 타겟 특징 값들을 생성할 수 있다.
본 발명의 다른 실시예에 따르면, 모션 합성 장치에 있어서, 상기 모션 합성 장치는 프로세서를 포함하고, 상기 프로세서는, 컨텐츠 모션 데이터들 및 스타일 모션 데이터들에 따라 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 획득하고, 상기 획득한 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 이용하여 타겟 특징 값들(target features values)을 생성하고, 합성된 모션(synthesized motion) 데이터들을 인식하고, 상기 인식한 합성된 모션 데이터들에서 합성된 모션 특징 값들(synthesized motion features values)을 획득하며, 상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)을 이용하여 손실(loss)을 획득하고, 상기 획득한 손실에 따라 상기 합성된 모션을 업데이트한다.
또한, 상기 합성된 모션을 업데이트 하는 것은, 상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)이 매치될 때까지 백프로퍼게이션(back-propagation) 알고리즘을 이용할 수 있다.
또한, 상기 프로세서는, 학습되지 않은(untrained) 컨볼루셔널 뉴럴 네트워크(Convolutional Neural Network)를 이용하여 특징 값들을 획득할 수 있다.
또한, 상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들은 애니메이션 데이터들일 수 있다.
또한, 상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들은 뼈(bone)의 정보를 포함할 수 있다.
상기 스타일 특징 값들을 이용하여 스타일 로스를 획득하고, 상기 획득한 스타일 로스에 가중치를 부여하여 상기 타겟 특징 값들을 생성할 수 있다.
도 1은 본 발명의 일실시예에 따른 모션 합성 장치의 동작을 나타내는 도면이다.
도 2는 본 발명의 일실시예에 따른 모션 합성 장치의 구성을 나타내는 도면이다.
도 3은 본 발명의 일실시예에 따른 제1 컨볼루셔널 뉴럴 네트워크의 구성을 나타내는 도면이다.
도 4는 본 발명의 일실시예에 따른 제2 컨볼루셔널 뉴럴 네트워크의 구성을 나타내는 도면이다.
도 5는 본 발명의 일실시예에 따른 모션 합성 방법을 나타내는 플로우 차트이다.
도 6은 본 발명의 일실시예에 따라 컨텐츠 모션 및 스타일 모션을 이용하여 모션을 합성하는 일 예를 나타내는 도면이다.
도 7은 본 발명의 일실시예를 구현하기 위한 예시적인 컴퓨터 시스템의 블록도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소는 제1구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하의 설명에서 동일한 식별 기호는 동일한 구성을 의미하며, 불필요한 중복적인 설명 및 공지 기술에 대한 설명은 생략하기로 한다.
본 발명의 실시 예에서 '통신', '통신망' 및 '네트워크'는 동일한 의미로 사용될 수 있다. 상기 세 용어들은, 파일을 사용자 단말, 다른 사용자들의 단말 및 다운로드 서버 사이에서 송수신할 수 있는 유무선의 근거리 및 광역 데이터 송수신망을 의미한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다.
도 1은 본 발명의 일실시예에 따른 모션 합성 장치의 동작을 나타내는 도면이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 모션 합성 장치(100)는 컨텐츠 모션 데이터들(101)과 스타일 모션 데이터들(102)을 입력 받아 합성된 모션 데이터들(105)을 생성한다.
컨텐츠 모션 데이터들(101)과 스타일 모션 데이터들(102)은 모션 합성 장치(100)로 각각 입력되며, 컨텐츠 모션 데이터들(101)과 스타일 모션 데이터들(102)은 서로 다른 모션 데이터들인 것이 바람직하다.
컨텐츠 모션 데이터들(101)과 스타일 모션 데이터들(102)은 크기가 같은 모션 데이터들일 수 있다.
컨텐츠 모션 데이터들(101)은 애니메이션 데이터들 일 수 있다.
컨텐츠 모션 데이터들(101)은 걷기, 뛰기, 점프 등의 동작인 것이 바람직하나 이에 한정되는 것은 아니다.
컨텐츠 모션 데이터들(101)은 뼈(bone)의 회전 정보를 포함할 수 있다.
컨텐츠 모션 데이터들(101)은 뼈(bone)의 위치 정보를 포함할 수 있다.
컨텐츠 모션 데이터들(101)은 뼈(bone)의 회전 정보 및 위치 정보를 포함할 수 있다.
이때, 상기 뼈는 인체를 구성하는 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 상체 또는 하체를 구성하는 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 인체를 구성하는 뼈를 필요(예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg) 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈 중 적어도 어느 하나에 해당할 수 있다.
컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 데이터일 수 있다.
컨텐츠 모션 데이터들(101)은 뼈의 회전 정보가 인덱싱(indexing)된 데이터일 수 있다.
컨텐츠 모션 데이터들(101)은 뼈의 위치 정보가 인덱싱(indexing)된 데이터일 수 있다.
컨텐츠 모션 데이터들(101)은 뼈의 회전 정보 및 위치 정보가 인덱싱(indexing)된 데이터일 수 있다.
컨텐츠 모션 데이터들(101)은 뼈의 회전 정보에 따라 분류된(classified) 데이터들일 수 있다.
컨텐츠 모션 데이터들(101)은 뼈의 위치 정보에 따라 분류된(classified) 데이터들일 수 있다.
컨텐츠 모션 데이터들(101)은 뼈의 회전 정보 및 위치 정보에 따라 분류된(classified) 데이터들일 수 있다.
컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 데이터들일 수 있다.
컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 데이터들일 수 있다.
컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 데이터들일 수 있다.
스타일 모션 데이터들(102)은 애니메이션 데이터들 일 수 있다.
스타일 모션 데이터들(102)은 컨텐츠 모션 데이터들(101)이 합성될 수 있는 모션(예컨대, 게임 내의 캐릭터, 총을 들고 있는 사람, 칼 2 개를 들고 있는 사람, 오크, 좀비 등)을 표현한 데이터들인 것이 바람직하다.
스타일 모션 데이터들(102)은 뼈(bone)의 회전 정보를 포함할 수 있다.
스타일 모션 데이터들(102)은 뼈(bone)의 위치 정보를 포함할 수 있다.
스타일 모션 데이터들(102)은 뼈(bone)의 회전 정보 및 위치 정보를 포함할 수 있다.
이때, 상기 뼈는 인체를 구성하는 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 상체 또는 하체를 구성하는 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 인체를 구성하는 뼈를 필요(예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg) 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈 중 적어도 어느 하나에 해당할 수 있다.
스타일 모션 데이터들(102)은 인덱싱(indexing)된 데이터일 수 있다.
스타일 모션 데이터들(102)은 뼈의 회전 정보가 인덱싱(indexing)된 데이터일 수 있다.
스타일 모션 데이터들(102)은 뼈의 위치 정보가 인덱싱(indexing)된 데이터일 수 있다.
스타일 모션 데이터들(102)은 뼈의 회전 정보 및 위치 정보가 인덱싱(indexing)된 데이터일 수 있다.
스타일 모션 데이터들(102)은 뼈의 회전 정보에 따라 분류된 데이터들일 수 있다.
스타일 모션 데이터들(102)은 뼈의 위치 정보에 따라 분류된 데이터들일 수 있다.
스타일 모션 데이터들(102)은 뼈의 회전 정보 및 위치 정보에 따라 분류된 데이터들일 수 있다.
스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 데이터들일 수 있다.
스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 데이터들일 수 있다.
스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 데이터들일 수 있다.
도 2는 본 발명의 일실시예에 따른 모션 합성 장치의 구성을 나타내는 도면이고, 도 3은 본 발명의 일실시예에 따른 제1 컨볼루셔널 뉴럴 네트워크의 구성을 나타내는 도면이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 모션 합성 장치(100)는 제1 컨볼루셔널 뉴럴 네트워크(Convolutional Neural Network), 타겟 특성 값들 생성 모듈(120), 제2 컨볼루셔널 뉴럴 네트워크(Convolutional Neural Network)(130) 및 손실(loss) 생성 모듈(140)을 포함한다.
도 2 및 도 3을 참조하면, 제1 컨볼루셔널 뉴럴 네트워크(110)는 6개의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 학습되지 않은(untrained) 컨볼루셔널 뉴럴 네트워크일 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 컨텐츠 모션 데이터들(101)을 획득한다.
이때, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 인체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 상체 또는 하체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 인체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 상체 또는 하체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 인체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 상체 또는 하체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)로 분류된 데이터들일 수 있다.
또한, 컨텐츠 모션 데이터들(101)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈로 분류된 데이터들일 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 컨텐츠 모션 데이터들(101)에 따라 컨텐츠 특징 값들(content features values)을 획득한다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 컨텐츠 모션 데이터들(101)에 따라 컨텐츠 특징 값들(content features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)에 따라 컨텐츠 특징 값들(content features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)에 따라 컨텐츠 특징 값들(content features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 복수개의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)에 대응되는 6개의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 컨텐츠 모션 데이터들(101)과 상기 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 6개의 서브 컨볼루셔널 뉴럴 네트워크들(111, 112, 113, 114, 115, 116)을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 6개의 서브 컨볼루셔널 뉴럴 네트워크들(111, 112, 113, 114, 115, 116)을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 컨텐츠 모션 데이터들(101)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 6개의 서브 컨볼루셔널 뉴럴 네트워크들(111, 112, 113, 114, 115, 116)을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 머리(head)로 분류된 컨텐츠 모션 데이터들(101)을 제1 서브 컨볼루셔널 뉴럴 네트워크(111)와 매칭시킬 수 있다.
제1 서브 컨볼루셔널 뉴럴 네트워크(111)는 본 발명의 일실시예에 따라 매칭된 머리(head)로 분류된 컨텐츠 모션 데이터들(101)에서 머리 특징 값들(head features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 척추(spine)로 분류된 컨텐츠 모션 데이터들(101)을 제2 서브 컨볼루셔널 뉴럴 네트워크(112)와 매칭시킬 수 있다.
제2 서브 컨볼루셔널 뉴럴 네트워크(112)는 본 발명의 일실시예에 따라 매칭된 척추(spine)로 분류된 컨텐츠 모션 데이터들(101)에서 척추 특징 값들(spine features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 왼쪽 팔(left arm)로 분류된 컨텐츠 모션 데이터들(101)을 제3 서브 컨볼루셔널 뉴럴 네트워크(113)와 매칭시킬 수 있다.
제3 서브 컨볼루셔널 뉴럴 네트워크(113)는 본 발명의 일실시예에 따라 매칭된 왼쪽 팔(left arm)로 분류된 컨텐츠 모션 데이터들(101)에서 왼쪽 팔 특징 값들(left arm features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 오른쪽 팔(right arm)로 분류된 컨텐츠 모션 데이터들(101)을 제4 서브 컨볼루셔널 뉴럴 네트워크(114)와 매칭시킬 수 있다.
제4 서브 컨볼루셔널 뉴럴 네트워크(114)는 본 발명의 일실시예에 따라 매칭된 오른쪽 팔(right arm)로 분류된 컨텐츠 모션 데이터들(101)에서 오른쪽 팔 특징 값들(right arm features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 왼쪽 다리(left leg)로 분류된 컨텐츠 모션 데이터들(101)을 제5 서브 컨볼루셔널 뉴럴 네트워크(115)와 매칭시킬 수 있다.
제5 서브 컨볼루셔널 뉴럴 네트워크(115)는 본 발명의 일실시예에 따라 매칭된 왼쪽 다리(left leg)로 분류된 컨텐츠 모션 데이터들(101)에서 왼쪽 다리 특징 값들(left leg features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 오른쪽 다리(right leg)로 분류된 컨텐츠 모션 데이터들(101)을 제6 서브 컨볼루셔널 뉴럴 네트워크(116)와 매칭시킬 수 있다.
제6 서브 컨볼루셔널 뉴럴 네트워크(116)는 본 발명의 일실시예에 따라 매칭된 오른쪽 다리(right leg)로 분류된 컨텐츠 모션 데이터들(101)에서 오른쪽 다리 특징 값들(right leg features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 머리 특징 값들(head features values), 척추 특징 값들(spine features values), 왼쪽 팔 특징 값들(left arm features values), 오른쪽 팔 특징 값들(right arm features values), 왼쪽 다리 특징 값들(left leg features values) 및 오른쪽 다리 특징 값들(right leg features values)을 이용하여 컨텐츠 특징 값들(content features values)(103)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)가 획득한 컨텐츠 특징 값들(103)을 컨텐츠 피쳐 맵(content feature map)이라 할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)가 획득한 컨텐츠 특징 값들(103)을 컨텐츠 벡터(content vector)라 할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)가 획득한 컨텐츠 특징 값들(103)의 배열(array)을 컨텐츠 벡터(content vector)라 할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 스타일 모션 데이터들(102)을 획득한다.
이때, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 인체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 상체 또는 하체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 인체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 상체 또는 하체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 인체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 상체 또는 하체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)로 분류된 데이터들일 수 있다.
또한, 스타일 모션 데이터들(102)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈로 분류된 데이터들일 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 스타일 모션 데이터들(102)에 따라 스타일 특징 값들(style features values)을 획득한다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 스타일 모션 데이터들(102)에 따라 스타일 특징 값들(style features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 스타일 모션 데이터들(102)에 따라 스타일 특징 값들(style features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 스타일 모션 데이터들(102)에 따라 스타일 특징 값들(style features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 스타일 모션 데이터들(102)과 상기 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 6개의 서브 컨볼루셔널 뉴럴 네트워크들(111, 112, 113, 114, 115, 116)을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 6개의 서브 컨볼루셔널 뉴럴 네트워크들(111, 112, 113, 114, 115, 116)을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 스타일 모션 데이터들(102)과 제1 컨볼루셔널 뉴럴 네트워크(110)에 포함된 상기 6개의 서브 컨볼루셔널 뉴럴 네트워크들(111, 112, 113, 114, 115, 116)을 매칭시킬 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 머리(head)로 분류된 스타일 모션 데이터들(102)을 제1 서브 컨볼루셔널 뉴럴 네트워크(111)와 매칭시킬 수 있다.
제1 서브 컨볼루셔널 뉴럴 네트워크(111)는 본 발명의 일실시예에 따라 매칭된 머리(head)로 분류된 스타일 모션 데이터들(102)에서 머리 특징 값들(head features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 척추(spine)로 분류된 스타일 모션 데이터들(102)을 제2 서브 컨볼루셔널 뉴럴 네트워크(112)와 매칭시킬 수 있다.
제2 서브 컨볼루셔널 뉴럴 네트워크(112)는 본 발명의 일실시예에 따라 매칭된 척추(spine)로 분류된 스타일 모션 데이터들(102)에서 척추 특징 값들(spine features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 왼쪽 팔(left arm)로 분류된 스타일 모션 데이터들(102)을 제3 서브 컨볼루셔널 뉴럴 네트워크(113)와 매칭시킬 수 있다.
제3 서브 컨볼루셔널 뉴럴 네트워크(113)는 본 발명의 일실시예에 따라 매칭된 왼쪽 팔(left arm)로 분류된 스타일 모션 데이터들(102)에서 왼쪽 팔 특징 값들(left arm features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 오른쪽 팔(right arm)로 분류된 스타일 모션 데이터들(102)을 제4 서브 컨볼루셔널 뉴럴 네트워크(114)와 매칭시킬 수 있다.
제4 서브 컨볼루셔널 뉴럴 네트워크(114)는 본 발명의 일실시예에 따라 매칭된 오른쪽 팔(right arm)로 분류된 스타일 모션 데이터들(102)에서 오른쪽 팔 특징 값들(right arm features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 왼쪽 다리(left leg)로 분류된 스타일 모션 데이터들(102)을 제5 서브 컨볼루셔널 뉴럴 네트워크(115)와 매칭시킬 수 있다.
제5 서브 컨볼루셔널 뉴럴 네트워크(115)는 본 발명의 일실시예에 따라 매칭된 왼쪽 다리(left leg)로 분류된 스타일 모션 데이터들(102)에서 왼쪽 다리 특징 값들(left leg features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 본 발명의 일실시예에 따라 오른쪽 다리(right leg)로 분류된 스타일 모션 데이터들(102)을 제6 서브 컨볼루셔널 뉴럴 네트워크(116)와 매칭시킬 수 있다.
제6 서브 컨볼루셔널 뉴럴 네트워크(116)는 본 발명의 일실시예에 따라 매칭된 오른쪽 다리(right leg)로 분류된 스타일 모션 데이터들(102)에서 오른쪽 다리 특징 값들(right leg features values)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)는 머리 특징 값들(head features values), 척추 특징 값들(spine features values), 왼쪽 팔 특징 값들(left arm features values), 오른쪽 팔 특징 값들(right arm features values), 왼쪽 다리 특징 값들(left leg features values) 및 오른쪽 다리 특징 값들(right leg features values)을 이용하여 스타일 특징 값들(style features values)(104)을 획득할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)가 획득한 스타일 특징 값들(104)을 스타일 피쳐 맵(style feature map)이라 할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)가 획득한 스타일 특징 값들(104)을 스타일 벡터(style vector)라 할 수 있다.
제1 컨볼루셔널 뉴럴 네트워크(110)가 획득한 스타일 특징 값들(104)의 배열(array)을 스타일 벡터(style vector)라 할 수 있다.
타겟 특성 값들 생성 모듈(120)은 제1 컨볼루셔널 뉴럴 네트워크(110)가 획득한 상기 컨텐츠 특징 값들(content features values)(103) 및 상기 스타일 특징 값들(style features values)(104)을 이용하여 타겟 특징 값들(target features values)을 생성한다.
타겟 특성 값들 생성 모듈(120)은 하기 [수학식 1]을 이용하여 상기 타겟 특징 값들(target features values)에 해당하는 F(t)를 생성할 수 있다.
Figure 112018075209916-pat00001
여기서, i는 인덱스(index)를 의미하고, 신체 부분(예컨대, 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg))별로 각기 다른 i 값이 인덱스 될 수 있다.
상기 [수학식 1]에서
Figure 112018075209916-pat00002
부분은 컨텐츠 로스이다. 상기 컨텐츠 로스는 타겟 특징 값들과 컨텐츠 특징 값들의 차이를 나타낸다.
상기 컨텐츠 로스는 신체 부분별로 달라질 수 있다.
상기 컨텐츠 로스는 상기 각기 다른 i 값이 인덱스 된 신체 부분별로 달라질 수 있다.
상기 컨텐츠 로스에서 MSE는 평균 제곱 오차(Mean Square Error)를 나타낸다.
상기 [수학식 1]에서
Figure 112018075209916-pat00003
부분은 가중된 스타일 로스이다. 상기 가중된 스타일 로스는 타겟 특징 값들과 스타일 특징 값들의 차이를 나타낸다.
상기 가중된 스타일 로스는 신체 부분별로 달라질 수 있다.
상기 가중된 스타일 로스는 상기 각기 다른 i 값이 인덱스 된 신체 부분별로 달라질 수 있다.
상기 가중된 스타일 로스에서 MSE는 평균 제곱 오차(Mean Square Error)를 나타낸다.
가중치
Figure 112018075209916-pat00004
는 상기 각기 다른 i 값이 인덱스 된 상기 신체 부분별로 다르게 부여될 수 있다.
따라서, 상기 신체 부분별로 부여된 가중치
Figure 112018075209916-pat00005
를 수정하여 상기 신체 부분별 가중된 스타일 로스를 수정할 수 있다.
상기 타겟 특징 값들에 상기 가중된 스타일 로스가 반영되는 정도는 상기 가중치
Figure 112018075209916-pat00006
에 의해 조정될 수 있다.
상기 가중치
Figure 112018075209916-pat00007
에 의해 상기 스타일 특징 값들이 타겟 특징 값들에 반영되는 정도를 조절할 수 있다.
상기 가중치
Figure 112018075209916-pat00008
를 이용하여 상기 스타일 특징 값들이 타겟 특징 값들에 반영되는 정도를 조정하여 합성된 모션을 수정할 수 있다.
즉, 상기 가중치
Figure 112018075209916-pat00009
가 수정되면, 신체 부분별 가중된 스타일 로스가 수정된다.
그리고, 상기 신체 부분별 가중된 스타일 로스가 수정되면, 상기 수정된 신체 부분별 가중된 스타일 로스에 따라 상기 신체 부분별 상기 타겟 특징 값들이 수정된다.
그리고, 상기 신체 부분별 상기 타겟 특징 값들이 수정되면, 상기 수정된 신체 부분별 상기 타겟 특징 값을 이용하여 업데이트 되는 합성된 모션이 상기 신체 부분별로 수정된다.
상기 [수학식 1]에서 상기 컨텐츠 로스와 상기 가중된 스타일 로스를 더한 값에서 에러를 최소화하기 위한 벡터를 생성하기 위하여 argmin이 이용된다.
타겟 특성 값들 생성 모듈(120)이 생성한 타겟 특징 값들(target features values)은 벡터일 수 있다.
도 4는 본 발명의 일실시예에 따른 제2 컨볼루셔널 뉴럴 네트워크의 구성을 나타내는 도면이다.
다시 도 2 및 도 4를 참조하면, 제2 컨볼루셔널 뉴럴 네트워크(130)는 6개의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 본 발명의 일실시예에 따라 학습되지 않은(untrained) 컨볼루셔널 뉴럴 네트워크일 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 합성된 모션 데이터들(105)을 획득한다.
합성된 모션 데이터들(105)은 애니메이션 데이터들 일 수 있다.
합성된 모션 데이터들(105)은 컨텐츠 모션 데이터들(101)과 크기가 같은 노이즈 데이터들일 수 있다.
합성된 모션 데이터들(105)은 컨텐츠 모션 데이터들(101)과 크기가 같은 모션 데이터들일 수 있다.
합성된 모션 데이터들(105)은 스타일 모션 데이터들(102)과 크기가 같은 노이즈 데이터들일 수 있다.
합성된 모션 데이터들(105)은 스타일 모션 데이터들(102)과 크기가 같은 모션 데이터들일 수 있다.
합성된 모션 데이터들(105)은 뼈(bone)의 회전 정보를 포함할 수 있다.
합성된 모션 데이터들(105)은 뼈(bone)의 위치 정보를 포함할 수 있다.
합성된 모션 데이터들(105)은 뼈(bone)의 회전 정보 및 위치 정보를 포함할 수 있다.
이때, 상기 뼈는 인체를 구성하는 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 상체 또는 하체를 구성하는 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 인체를 구성하는 뼈를 필요(예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg) 뼈 중 적어도 어느 하나에 해당할 수 있다.
또한, 상기 뼈는 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈 중 적어도 어느 하나에 해당할 수 있다.
합성된 모션 데이터들(105)은 인덱싱(indexing)된 데이터일 수 있다.
합성된 모션 데이터들(105)은 뼈의 회전 정보가 인덱싱(indexing)된 데이터일 수 있다.
합성된 모션 데이터들(105)은 뼈의 위치 정보가 인덱싱(indexing)된 데이터일 수 있다.
합성된 모션 데이터들(105)은 뼈의 회전 정보 및 위치 정보가 인덱싱(indexing)된 데이터일 수 있다.
합성된 모션 데이터들(105)은 뼈의 회전 정보에 따라 분류된(classified) 데이터들일 수 있다.
합성된 모션 데이터들(105)은 뼈의 위치 정보에 따라 분류된(classified) 데이터들일 수 있다.
합성된 모션 데이터들(105)은 뼈의 회전 정보 및 위치 정보에 따라 분류된(classified) 데이터들일 수 있다.
합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 데이터들일 수 있다.
합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 데이터들일 수 있다.
합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 데이터들일 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 합성된 모션 데이터들(105)을 획득한다.
이때, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 인체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 상체 또는 하체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 인체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 상체 또는 하체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 인체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 상체 또는 하체를 구성하는 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 뼈로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)로 분류된 데이터들일 수 있다.
또한, 합성된 모션 데이터들(105)은 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)를 구성하는 각각의 뼈로 분류된 데이터들일 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 합성된 모션 데이터들(105)에 따라 합성된 모션 특징 값들(synthesized motion features values)을 획득한다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 합성된 모션 데이터들(105)에 따라 합성된 모션 특징 값들(synthesized motion features values)을 획득할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 합성된 모션 데이터들(105)에 따라 합성된 모션 특징 값들(synthesized motion features values)을 획득할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 합성된 모션 데이터들(105)에 따라 합성된 모션 특징 값들(synthesized motion features values)을 획득할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 복수개의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 머리(head), 척추(spine), 왼쪽 팔(left arm), 오른쪽 팔(right arm), 왼쪽 다리(left leg) 및 오른쪽 다리(right leg)에 대응되는 6개의 서브 컨볼루셔널 뉴럴 네트워크들을 포함할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 합성된 모션 데이터들(105)과 상기 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 인체를 구성하는 뼈의 숫자와 같은 수의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 상체 또는 하체에 대응되는 2개의 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 인체를 필요 (예컨대, 합성되는 모션)에 따라 임의로 분류한 부분의 개수에 대응되는 서브 컨볼루셔널 뉴럴 네트워크들을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 6개의 서브 컨볼루셔널 뉴럴 네트워크들(131, 132, 133, 134, 135, 136)을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 위치 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 6개의 서브 컨볼루셔널 뉴럴 네트워크들(131, 132, 133, 134, 135, 136)을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 인덱싱(indexing)된 뼈의 회전 정보 및 위치 정보에 따라 분류된 합성된 모션 데이터들(105)과 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 상기 6개의 서브 컨볼루셔널 뉴럴 네트워크들(131, 132, 133, 134, 135, 136)을 매칭시킬 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 본 발명의 일실시예에 따라 합성된 머리(head)로 분류된 합성된 모션 데이터들(105)을 제1 서브 컨볼루셔널 뉴럴 네트워크(131)와 매칭시킬 수 있다.
제1 서브 컨볼루셔널 뉴럴 네트워크(131)는 본 발명의 일실시예에 따라 매칭된 합성된 머리(head)로 분류된 합성된 모션 데이터들(105)에서 합성된 머리 특징 값들(synthesized head features values)을 획득할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 본 발명의 일실시예에 따라 합성된 척추(spine)로 분류된 합성된 모션 데이터들(105)을 제2 서브 컨볼루셔널 뉴럴 네트워크(132)와 매칭시킬 수 있다.
제2 서브 컨볼루셔널 뉴럴 네트워크(132)는 본 발명의 일실시예에 따라 매칭된 합성된 척추(spine)로 분류된 합성된 모션 데이터들(105)에서 합성된 척추 특징 값들(synthesized spine features values)을 획득할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 본 발명의 일실시예에 따라 합성된 왼쪽 팔(left arm)로 분류된 합성된 모션 데이터들(105)을 제3 서브 컨볼루셔널 뉴럴 네트워크(133)와 매칭시킬 수 있다.
제3 서브 컨볼루셔널 뉴럴 네트워크(133)는 본 발명의 일실시예에 따라 매칭된 합성된 왼쪽 팔(left arm)로 분류된 합성된 모션 데이터들(105)에서 합성된 왼쪽 팔 특징 값들(synthesized left arm features values)을 획득할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 본 발명의 일실시예에 따라 합성된 오른쪽 팔(right arm)로 분류된 합성된 모션 데이터들(105)을 제4 서브 컨볼루셔널 뉴럴 네트워크(134)와 매칭시킬 수 있다.
제4 서브 컨볼루셔널 뉴럴 네트워크(134)는 본 발명의 일실시예에 따라 매칭된 합성된 오른쪽 팔(right arm)로 분류된 합성된 모션 데이터들(105)에서 합성된 오른쪽 팔 특징 값들(synthesized right arm features values)을 획득할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 본 발명의 일실시예에 따라 합성된 왼쪽 다리(left leg)로 분류된 합성된 모션 데이터들(105)을 제5 서브 컨볼루셔널 뉴럴 네트워크(135)와 매칭시킬 수 있다.
제5 서브 컨볼루셔널 뉴럴 네트워크(135)는 본 발명의 일실시예에 따라 매칭된 합성된 왼쪽 다리(left leg)로 분류된 합성된 모션 데이터들(105)에서 합성된 왼쪽 다리 특징 값들(synthesized left leg features values)을 획득할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 본 발명의 일실시예에 따라 합성된 오른쪽 다리(right leg)로 분류된 합성된 모션 데이터들(105)을 제6 서브 컨볼루셔널 뉴럴 네트워크(136)와 매칭시킬 수 있다.
제6 서브 컨볼루셔널 뉴럴 네트워크(136)는 본 발명의 일실시예에 따라 매칭된 합성된 오른쪽 다리(right leg)로 분류된 합성된 모션 데이터들(105)에서 합성된 오른쪽 다리 특징 값들(synthesized right leg features values)을 획득할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)는 합성된 머리 특징 값들(synthesized head features values), 합성된 척추 특징 값들(synthesized spine features values), 합성된 왼쪽 팔 특징 값들(synthesized left arm features values), 합성된 오른쪽 팔 특징 값들(synthesized right arm features values), 합성된 왼쪽 다리 특징 값들(synthesized left leg features values) 및 합성된 오른쪽 다리 특징 값들(synthesized right leg features values)을 이용하여 합성된 모션 특징 값들(synthesized motion features values)(106)을 획득할 수 있다.
본 발명의 다른 실시예에 따라 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 서브 컨볼루셔널 뉴럴 네트워크들(미도시)의 개수는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 합성된 모션 데이터들(105)에 따라 인체를 구성하는 뼈의 숫자와 같을 수 있다.
본 발명의 또 다른 실시예에 따라 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 서브 컨볼루셔널 뉴럴 네트워크들(미도시)의 개수는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 합성된 모션 데이터들(105)에 따라 상체와 하체에 대응되는 2개일 수 있다.
본 발명의 또 다른 실시예에 따라 제2 컨볼루셔널 뉴럴 네트워크(130)에 포함된 서브 컨볼루셔널 뉴럴 네트워크들(미도시)의 개수는 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 합성된 모션 데이터들(105)에 따라 인체를 구성하는 뼈를 필요 (예컨대, 합성되는 모션)에 따라 상기 인체를 임의로 분류한 부분의 개수에 대응될 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)가 획득한 합성된 모션 특징 값들(106)을 합성된 모션 피쳐 맵(synthesized motion features map)라 할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)가 획득한 합성된 모션 특징 값들(106)을 합성된 모션 벡터(synthesized motion vector)라 할 수 있다.
제2 컨볼루셔널 뉴럴 네트워크(130)가 획득한 합성된 모션 특징 값들(106)의 배열(arry)을 합성된 모션 벡터(synthesized motion vector)라 할 수 있다.
본 발명의 다른 실시예에 따라 제1 컨볼루셔널 뉴럴 네트워크(110) 및 제2 컨볼루셔널 뉴럴 네트워크(130)를 하나의 컨볼루셔널 뉴럴 네트워크로 구현하는 것도 가능하다.
손실(loss) 생성 모듈(140)은 합성된 모션 특징 값들(synthesized motion features values)(106)과 상기 타겟 특징 값들(target features values)을 이용하여 손실(loss)을 획득할 수 있다.
손실(loss) 생성 모듈(140)은 하기 [수학식 2]를 이용하여 손실(loss)을 획득할 수 있다.
Figure 112018075209916-pat00010
상기 [수학식 2]를 이용하여 손실(loss) 생성 모듈(140)은 상기 합성된 모션 특징 값들과 상기 타겟 특징 값들의 차이가 최소인 손실(loss)을 획득할 수 있다.
상기 [수학식 2]에서 MSE는 평균 제곱 오차(Mean Square Error)를 나타낸다.
손실(loss) 생성 모듈(140)은 상기 획득한 손실에 따라 상기 합성된 모션을 반복적으로 업데이트할 수 있다.
손실(loss) 생성 모듈(140)은 백프로퍼게이션(back-propagation) 알고리즘을 이용하여 상기 합성된 모션을 반복적으로 업데이트할 수 있다.
손실(loss) 생성 모듈(140)은 백프로퍼게이션(back-propagation) 알고리즘을 이용하여 상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)이 매치될 때까지 상기 합성된 모션을 반복적으로 업데이트 할 수 있다.
도 5는 본 발명의 일실시예에 따른 모션 합성 방법을 나타내는 플로우 차트이다.
도 5를 참조하면, 모션 합성 장치가 컨텐츠 모션 데이터들 및 스타일 모션 데이터들을 인식한다(500).
이때, 상기 컨텐츠 모션 데이터들 및 스타일 모션 데이터들은 애니메이션 데이터들 일 수 있다.
또한, 상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들은 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 데이터들일 수 있다.
모션 합성 장치가 컨텐츠 특징 값들 및 스타일 특징 값들을 획득한다(510).
이때, 모션 합성 장치는 머리 특징 값들(head features values), 척추 특징 값들(spine features values), 왼쪽 팔 특징 값들(left arm features values), 오른쪽 팔 특징 값들(right arm features values), 왼쪽 다리 특징 값들(left leg features values) 및 오른쪽 다리 특징 값들(right leg features values)을 이용하여 상기 컨텐츠 특징 값들 또는 상기 스타일 특징 값들을 획득할 수 있다.
모션 합성 장치가 타겟 특징 값들을 생성한다(520).
이때, 모션 합성 장치는 타겟 특징 값들과 컨텐츠 특징 값들의 차이 및 타겟 특징 값들과 스타일 특징 값의 차이를 이용하여 타겟 특징 값들을 생성할 수 있다.
모션 합성 장치가 합성된 모션 데이터들을 인식한다(530).
이때, 상기 합성된 모션 데이터들은 애니메이션 데이터들 일 수 있다.
또한, 상기 합성된 모션 데이터들은 인덱싱(indexing)된 뼈의 회전 정보에 따라 분류된 데이터들일 수 있다.
모션 합성 장치가 합성된 모션 특징 값들을 획득한다(540).
이때, 모션 합성 장치는 머리 특징 값들(head features values), 척추 특징 값들(spine features values), 왼쪽 팔 특징 값들(left arm features values), 오른쪽 팔 특징 값들(right arm features values), 왼쪽 다리 특징 값들(left leg features values) 및 오른쪽 다리 특징 값들(right leg features values)을 이용하여 상기 합성된 모션 특징 값들을 획득할 수 있다.
모션 합성 장치가 합성된 모션 특징 값들과 상기 타겟 특징 값들을 이용하여 손실을 획득한다(550).
이때, 모션 합성 장치는 상기 합성된 모션 특징 값들과 상기 타겟 특징 값들의 차이를 이용하여 손실(loss)을 획득할 수 있다.
모션 합성 장치가 획득한 손실에 따라 상기 합성된 모션을 반복적으로 업데이트한다(560).
이때, 모션 합성 장치는 백프로퍼게이션(back-propagation) 알고리즘을 이용하여 상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)이 매치될 때까지 상기 합성된 모션을 반복적으로 업데이트 할 수 있다.
도 6은 본 발명의 일실시예에 따라 컨텐츠 모션 및 스타일 모션을 이용하여 모션을 합성하는 일 예를 나타내는 도면이다.
도 6의 (a)를 참조하면, 본 발명의 일실시예에 따라 컨텐츠 모션 데이터들은 인간이 달리는 모션(running)을 나타내는 애니메이션 데이터들이다.
도 6의 (b)를 참조하면, 본 발명의 일실시예에 따라 스타일 모션 데이터들은 상기 컨텐츠 모션 데이터들(도 6의 (a))이 합성될 수 있도록 창조된 캐릭터가 상체를 약간 숙이고 서 있는 모션을 나타내는 애니메이션 데이터들이다.
도 6의 (c)를 참조하면, 본 발명의 일실시예에 따라 합성된 모션 데이터들은 인간이 달리는 모션을 나타내는 상기 컨텐츠 모션 데이터들(도 6의 (a))과 창조된 캐릭터가 상체를 약간 숙이고 서 있는 모션을 나타내는 상기 스타일 모션 데이터들(도 6 의 (b))이 합성된 모션을 나타내는 애니메이션 데이터들이 된다.
즉, 합성된 모션 데이터들은 창조된 캐릭터가 상체를 약간 숙이고 달리는 모션을 나타내는 애니메이션 데이터들이 된다.
도 7은 본 발명의 일실시예를 구현하기 위한 예시적인 컴퓨터 시스템의 블록도이다.
도 7을 참조하면, 본 발명의 일실시예를 구현하기 위한 예시적인 컴퓨터 시스템은 정보를 교환하기 위한 버스 또는 다른 커뮤니케이션 채널(701)을 포함하고, 프로세서(702)는 정보를 처리하기 위하여 버스(701)와 연결된다.
컴퓨터 시스템(700)은 정보 및 프로세서(702)에 의해 처리되는 명령들을 저장하기 위하여 버스(701)와 연결된 RAM(Random Access Memory) 또는 다른 동적 저장 장치인 메인 메모리(703)를 포함한다.
또한, 메인 메모리(703)는 프로세서(702)에 의한 명령들의 실행동안 임시변수들 또는 다른 중간 정보를 저장하기 위해 사용될 수 있다.
컴퓨터 시스템(700)은 프로세서(702)에 대한 정적인 정보 또는 명령들을 저장하기 위하여 버스(701)에 결합된 ROM(Read Only Memory) 및 다른 정적 저장장치(704)를 포함할 수 있다.
마그네틱 디스크, 집(zip) 또는 광 디스크 같은 데이터 저장장치(705) 및 그것과 대응하는 드라이브 또한 정보 및 명령들을 저장하기 위하여 컴퓨터 시스템(700)에 연결될 수 있다.
컴퓨터 시스템(700)은 엔드 유저(end user)에게 정보를 디스플레이 하기 위하여 버스(701)를 통해 음극선관 또는 엘씨디 같은 디스플레이 장치(710)와 연결될 수 있다.
키보드(720)와 같은 문자 입력 장치는 프로세서(702)에 정보 및 명령을 전달하기 위하여 버스(701)에 연결될 수 있다.
다른 유형의 사용자 입력 장치는 방향 정보 및 명령 선택을 프로세서(702)에 전달하고, 디스플레이(710) 상의 커서의 움직임을 제어하기 위한 마우스, 트랙볼 또는 커서 방향 키들과 같은 커서 컨트롤 디바이스(730)이다.
통신 장치(740) 역시 버스(701)와 연결된다.
통신 장치(740)는 지역 네트워크 또는 광역망에 접속되는 것을 서포트 하기 위하여 모뎀, 네트워크 인터페이스 카드, 이더넷, 토큰 링 또는 다른 유형의 물리적 결합물과 연결하기 위해 사용되는 인터페이스 장치를 포함할 수 있다. 이러한 방식으로 컴퓨터 시스템(700)은 인터넷 같은 종래의 네트워크 인프라 스트럭쳐를 통하여 다수의 클라이언트 및 서버와 연결될 수 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 적어도 하나로 선택적으로 결합하여 동작할 수도 있다.
또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다.
이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다.
기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다.
따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100...모션 합성 장치 110...제1 컨볼루셔널 뉴럴 네트워크
120...타겟 특징 값들 생성모듈 130...제2 컨볼루셔널 뉴럴 네트워크
140...로스 생성 모듈

Claims (14)

  1. 모션 합성 장치가 컨텐츠 모션 데이터들 및 스타일 모션 데이터들에 따라 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 획득하는 동작;
    모션 합성 장치가 상기 획득한 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 이용하여 타겟 특징 값들(target features values)을 생성하는 동작;
    모션 합성 장치가 합성된 모션(synthesized motion) 데이터들을 인식하고, 상기 인식한 합성된 모션 데이터들에서 합성된 모션 특징 값들(synthesized motion features values)을 획득하는 동작; 및
    모션 합성 장치가 상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)을 이용하여 손실(loss)을 획득하고, 상기 획득한 손실에 따라 상기 합성된 모션을 업데이트 하는 동작
    을 포함하되,
    상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들은 뼈(bone)의 회전 정보를 포함하고,
    모션 합성 장치는 상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들을 미리 설정된 부분으로 분류하고, 컨볼루셔널 뉴럴 네트워크에 포함된 서브 컨볼루셔널 네트워크 중 상기 미리 설정된 부분에 대응되는 서브 컨볼루셔널 뉴럴 네트워크를 이용하여 상기 컨텐츠 특징 값들(content features values) 및 상기 스타일 특징 값들(style features values)을 획득하는 모션 합성 방법.
  2. 제1항에 있어서,
    상기 합성된 모션을 업데이트 하는 동작은,
    상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)이 매치될 때까지 백프로퍼게이션(back-propagation) 알고리즘을 이용하는 모션 합성 방법.
  3. 제1항에 있어서,
    상기 모션 합성 장치는 학습되지 않은(untrained) 컨볼루셔널 뉴럴 네트워크(Convolutional Neural Network)를 이용하여 특징 값들을 획득하는 모션 합성 방법.
  4. 제1항에 있어서,
    상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들은 애니메이션 데이터들인 모션 합성 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 스타일 특징 값들을 이용하여 스타일 로스를 획득하고, 상기 획득한 스타일 로스에 가중치를 부여하여 상기 타겟 특징 값들을 생성하는 모션 합성 방법.
  7. 모션 합성 장치에 있어서,
    상기 모션 합성 장치는 프로세서를 포함하고,
    상기 프로세서는,
    컨텐츠 모션 데이터들 및 스타일 모션 데이터들에 따라 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 획득하고,
    상기 획득한 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 이용하여 타겟 특징 값들(target features values)을 생성하고,
    합성된 모션(synthesized motion) 데이터들을 인식하고, 상기 인식한 합성된 모션 데이터들에서 합성된 모션 특징 값들(synthesized motion features values)을 획득하며,
    상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)을 이용하여 손실(loss)을 획득하고, 상기 획득한 손실에 따라 상기 합성된 모션을 업데이트 하되,
    상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들은 뼈(bone)의 회전 정보를 포함하고,
    상기 프로세서는,
    상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들을 미리 설정된 부분으로 분류하고, 컨볼루셔널 뉴럴 네트워크에 포함된 서브 컨볼루셔널 네트워크 중 상기 미리 설정된 부분에 대응되는 서브 컨볼루셔널 뉴럴 네트워크를 이용하여 상기 컨텐츠 특징 값들(content features values) 및 상기 스타일 특징 값들(style features values)을 획득하는 모션 합성 장치.
  8. 제7항에 있어서,
    상기 합성된 모션을 업데이트 하는 것은,
    상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)이 매치될 때까지 백프로퍼게이션(back-propagation) 알고리즘을 이용하는 모션 합성 장치.
  9. 제7항에 있어서,
    상기 프로세서는,
    학습되지 않은(untrained) 컨볼루셔널 뉴럴 네트워크(Convolutional Neural Network)를 이용하여 특징 값들을 획득하는 모션 합성 장치.
  10. 제7항에 있어서,
    상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들은 애니메이션 데이터들인 모션 합성 장치.
  11. 삭제
  12. 제7항에 있어서,
    상기 스타일 특징 값들을 이용하여 스타일 로스를 획득하고, 상기 획득한 스타일 로스에 가중치를 부여하여 상기 타겟 특징 값들을 생성하는 모션 합성 장치.
  13. 모션 합성 장치가 컨텐츠 모션 데이터들 및 스타일 모션 데이터들에 따라 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 획득하는 동작;
    모션 합성 장치가 상기 획득한 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 이용하여 타겟 특징 값들(target features values)을 생성하는 동작;
    모션 합성 장치가 합성된 모션(synthesized motion) 데이터들을 인식하고, 상기 인식한 합성된 모션 데이터들에서 합성된 모션 특징 값들(synthesized motion features values)을 획득하는 동작; 및
    모션 합성 장치가 상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)을 이용하여 손실(loss)을 획득하고, 상기 획득한 손실에 따라 상기 합성된 모션을 업데이트 하는 동작
    을 포함하되,
    모션 합성 장치는 상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들을 미리 설정된 부분으로 분류하고, 컨볼루셔널 뉴럴 네트워크에 포함된 서브 컨볼루셔널 네트워크 중 상기 미리 설정된 부분에 대응되는 서브 컨볼루셔널 뉴럴 네트워크를 이용하여 상기 컨텐츠 특징 값들(content features values) 및 상기 스타일 특징 값들(style features values)을 획득하는 모션 합성 방법.
  14. 모션 합성 장치에 있어서,
    상기 모션 합성 장치는 프로세서를 포함하고,
    상기 프로세서는,
    컨텐츠 모션 데이터들 및 스타일 모션 데이터들에 따라 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 획득하고,
    상기 획득한 컨텐츠 특징 값들(content features values) 및 스타일 특징 값들(style features values)을 이용하여 타겟 특징 값들(target features values)을 생성하고,
    합성된 모션(synthesized motion) 데이터들을 인식하고, 상기 인식한 합성된 모션 데이터들에서 합성된 모션 특징 값들(synthesized motion features values)을 획득하며,
    상기 합성된 모션 특징 값들(synthesized motion features values)과 상기 타겟 특징 값들(target features values)을 이용하여 손실(loss)을 획득하고, 상기 획득한 손실에 따라 상기 합성된 모션을 업데이트 하되,
    상기 프로세서는 상기 컨텐츠 모션 데이터들 및 상기 스타일 모션 데이터들을 미리 설정된 부분으로 분류하고, 컨볼루셔널 뉴럴 네트워크에 포함된 서브 컨볼루셔널 네트워크 중 상기 미리 설정된 부분에 대응되는 서브 컨볼루셔널 뉴럴 네트워크를 이용하여 상기 컨텐츠 특징 값들(content features values) 및 상기 스타일 특징 값들(style features values)을 획득하는 모션 합성 장치.
KR1020180088621A 2018-07-30 2018-07-30 모션 합성 장치 및 모션 합성 방법 KR102543650B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020180088621A KR102543650B1 (ko) 2018-07-30 2018-07-30 모션 합성 장치 및 모션 합성 방법
US16/506,402 US10957087B2 (en) 2018-07-30 2019-07-09 Motion synthesis apparatus and motion synthesis method
CN201910619253.XA CN110782478B (zh) 2018-07-30 2019-07-10 运动合成装置和运动合成方法
JP2019129806A JP6902071B2 (ja) 2018-07-30 2019-07-12 モーション合成装置及びモーション合成方法
EP19188315.6A EP3605389A1 (en) 2018-07-30 2019-07-25 Motion synthesis apparatus and motion synthesis method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180088621A KR102543650B1 (ko) 2018-07-30 2018-07-30 모션 합성 장치 및 모션 합성 방법

Publications (2)

Publication Number Publication Date
KR20200013430A KR20200013430A (ko) 2020-02-07
KR102543650B1 true KR102543650B1 (ko) 2023-06-15

Family

ID=67438993

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180088621A KR102543650B1 (ko) 2018-07-30 2018-07-30 모션 합성 장치 및 모션 합성 방법

Country Status (5)

Country Link
US (1) US10957087B2 (ko)
EP (1) EP3605389A1 (ko)
JP (1) JP6902071B2 (ko)
KR (1) KR102543650B1 (ko)
CN (1) CN110782478B (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11132606B2 (en) * 2019-03-15 2021-09-28 Sony Interactive Entertainment Inc. Reinforcement learning to train a character using disparate target animation data

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2486337A (en) * 2010-12-08 2012-06-13 Chao-Hua Lee Generation, recognition and extraction of movement styles
CN102638202A (zh) * 2012-05-14 2012-08-15 王世英 电磁运动能量产生装置与方法
US9436911B2 (en) * 2012-10-19 2016-09-06 Pearson Education, Inc. Neural networking system and methods
KR101501405B1 (ko) 2014-01-29 2015-03-12 김봉회 합성 이미지 전송 장치
KR102252730B1 (ko) * 2015-02-06 2021-05-18 한국전자통신연구원 애니메이션 생성 장치 및 방법
KR102097016B1 (ko) * 2015-02-09 2020-04-06 한국전자통신연구원 동작 분석 장치 및 방법
US10854104B2 (en) * 2015-08-28 2020-12-01 Icuemotion Llc System for movement skill analysis and skill augmentation and cueing
US10095957B2 (en) * 2016-03-15 2018-10-09 Tata Consultancy Services Limited Method and system for unsupervised word image clustering
JP2018038455A (ja) * 2016-09-05 2018-03-15 セイコーエプソン株式会社 情報処理システム、ウェアラブル機器及び情報処理方法
US10902343B2 (en) * 2016-09-30 2021-01-26 Disney Enterprises, Inc. Deep-learning motion priors for full-body performance capture in real-time
CN106570194A (zh) * 2016-11-16 2017-04-19 上海卓易云汇智能技术有限公司 一种数据更新方法以及装置
CN106897670B (zh) * 2017-01-19 2020-09-22 南京邮电大学 一种基于计算机视觉的快递暴力分拣识别方法
CN107767343B (zh) * 2017-11-09 2021-08-31 京东方科技集团股份有限公司 图像处理方法、处理装置和处理设备
US10719742B2 (en) * 2018-02-15 2020-07-21 Adobe Inc. Image composites using a generative adversarial neural network

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Dong Hu ET AL:"Automatic Character Motion Style Transfer via Autoencoder Generative Model and Spatio-Temporal Correlation Mining", CCCV 2017: Computer Vision, 30 Nov. 2017, pp. 705-716(2017.11.30.) 1부.*
Dong Hu ET AL:"Pixel-Level Character Motion Style Transfer using Conditional Adversarial Networks", CGI 2018: Proceedings of Computer Graphics International 2018, 11-14 June 2018, Pages 129-138(2018.06.11.) 1부.*
Leon A ET AL:"Image Style Transfer Using Convolutional Neural Networks", Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 26-30 June 2016, pp. 2414-2423(2016.06.26.) 1부.*

Also Published As

Publication number Publication date
CN110782478B (zh) 2023-12-15
EP3605389A1 (en) 2020-02-05
CN110782478A (zh) 2020-02-11
US10957087B2 (en) 2021-03-23
JP6902071B2 (ja) 2021-07-14
KR20200013430A (ko) 2020-02-07
US20200035008A1 (en) 2020-01-30
JP2020021474A (ja) 2020-02-06

Similar Documents

Publication Publication Date Title
Esser et al. A disentangling invertible interpretation network for explaining latent representations
Mao et al. Multi-level motion attention for human motion prediction
CN108780519B (zh) 卷积神经网络的结构学习
US9818032B2 (en) Automatic video summarization
KR102410820B1 (ko) 뉴럴 네트워크를 이용한 인식 방법 및 장치 및 상기 뉴럴 네트워크를 트레이닝하는 방법 및 장치
CN116635866A (zh) 用于挖掘少数类数据样本以训练神经网络的方法和系统
JP7282363B2 (ja) 言語識別モデルの訓練方法及び装置、並びにそのためのコンピュータプログラム
US20160092779A1 (en) Implementations of, and methods of use for a pattern memory engine applying associative pattern memory for pattern recognition
Behzadan et al. Mitigation of policy manipulation attacks on deep q-networks with parameter-space noise
Sharma et al. Continuous sign language recognition using isolated signs data and deep transfer learning
KR102560754B1 (ko) 모션 리타겟팅 장치 및 모션 리타겟팅 방법
KR20220036956A (ko) 생성적 및 검색-기반 애플리케이션들을 위한 효과적인 음악적 특징들을 학습하는 방법
KR102543650B1 (ko) 모션 합성 장치 및 모션 합성 방법
KR102129161B1 (ko) 컨볼루션 신경망의 하이퍼파라미터를 설정하는 방법 및 이를 수행하는 단말 장치
KR20200010061A (ko) 전자 장치 및 전자 장치의 학습 방법
Turhan et al. Variational autoencoded compositional pattern generative adversarial network for handwritten super resolution image generation
KR20200092453A (ko) 키워드에 기초하여 이미지를 생성하는 이미지 생성 장치 및 이미지 생성 방법
Wu et al. C-ELM: A curious extreme learning machine for classification problems
Nasir et al. Improved Shark Smell Optimization Algorithm for Human Action Recognition.
Zhu et al. Learning to transfer learn
Fürrutter et al. Quantum circuit synthesis with diffusion models
CN115951588B (zh) 基于ai自适应调整的按摩机械作用控制方法及系统
KR102441185B1 (ko) 가중 클러스터 손실을 이용하여 학습하는 전이학습 기반의 얼굴표정 인식 방법 및 얼굴표정 인식 장치
KR102408189B1 (ko) 인공 신경망의 학습을 위해 표 형태의 데이터를 전처리 하는 방법
KR102421987B1 (ko) 깊은 신경망 내에서의 강화된 배치 정규화를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체

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)