a deep learning framework for editingtheorangeduck.com/media/uploads/other_stuff/motion... ·...

64

Upload: others

Post on 11-Jul-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 2: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

A Deep Learning Framework for

Character Motion Synthesis and

Editing

Daniel Holden *, Jun Saito †, Taku Komura *,

*The University of Edinburgh

†Marza Animation Planet

Page 3: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Outline

Motivation

Synthesis

Editing

Discussion

Page 4: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Goal

Data driven synthesis of motion

from high level controls with

no manual preprocessing

Page 5: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 6: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Previous Work

• Lots of manual processing (Graphs, Trees)

• Segmentation

• Alignment

• Classification

[Heck et al. 2007] [Kovar et al. 2002]

Page 7: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Previous Work

• Scalability Issues

(RBF, GP, GPLVM, kNN)

• Must store whole database

in memory

• Grows O(n²) with number of

data points

• Requires expensive

acceleration structures

[Park et al. 2002]

[Mukai and Kuriyama 2005]

[Lee et al. 2010]

Page 8: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Previous Work

• Instability issues

(GPDM, CRBM, RNN)

• Limited to some classes of

motion

• Can suffer high frequency

noise or “dying out”

[Wang et al. 2005]

[Taylor et al. 2011]

[Levine et al. 2012]

Page 9: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Previous Work

• Deep Neural Network

Hidden Units used to

represent motion

• Denoising

• Retrieval

• Interpolation [Holden et al. 2015]

Page 10: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Previous Work

• Deep Learning not

always ready for

production

• Results can look

strange

[Radford et al. 2015]

Page 11: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Contribution

• High quality synthesis with no manual

preprocessing

• Motion synthesis and editing in unified

framework

• Procedural, parallel technique

Page 12: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Overview

Page 13: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Overview

Page 14: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Overview

Page 15: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Outline

Motivation

Synthesis

Editing

Discussion

Page 16: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 17: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Convolutional Neural Networks

• Great success in classification and

segmentation for images, video, sound

• We can use CNN on motion data too

Page 18: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

ConvolutionFilters convolve over temporal dimension

Page 19: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

ConvolutionFilters convolve over temporal dimension

Page 20: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

ConvolutionFilters convolve over temporal dimension

Page 21: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

ConvolutionFilters convolve over temporal dimension

Page 22: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

ConvolutionFilters convolve over temporal dimension

Page 23: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 24: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

What Happened?

• Ambiguity: the same control signal maps

to multiple motions

• These motions are averaged in the output

Page 25: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Foot Contact

• Contact times resolve

ambiguity

• Automatically label using foot

speed and height

• Learn model that generates

contact times from trajectory

Page 26: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Foot Contact

Contact Durations

Contact Frequencies

Trajectory Contact Timings

• Use small neural network to map trajectories to

contact durations and frequencies

• Produce timings from durations and frequencies

Page 27: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Overview

Page 28: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 29: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Outline

Motivation

Synthesis

Editing

Discussion

Page 30: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Motion Editing

Once motion is generated it must be edited

Page 31: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 32: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Motion Editing

Post processing may not ensure naturalness

Page 33: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 34: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Motion Editing

• We edit using the motion

manifold learned by a

Convolutional Autoencoding

Network [Holden et al. 2015]

Page 35: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Autoencoder

• Learns projection operator of motion manifold

Page 36: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Manifold Surface

• Hidden Unit values parametrise manifold surface

• Adjusting them ensures motion remains natural

Page 37: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Constraint Satisfaction

• Motion editing is a constraint satisfaction

problem over Hidden Units

Page 38: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Constraint Satisfaction

• Local foot velocity must equal global velocity

• Output trajectory must equal input trajectory

Page 39: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Overview

Page 40: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 41: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 42: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 43: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 44: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 45: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 46: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

A Neural Algorithm of Artistic Style

• Combine style of

one image with

content of another

[Gatys et al. 2015]

Page 47: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Style Constraint

• Gram Matrix of Hidden Units encode style

• Actual Values of Hidden Units encode content

• No correspondence between clips required!

Page 48: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Style Constraint

• Gram Matrix of Hidden Units encode style

• Actual Values of Hidden Units encode content

• No correspondence between clips required!

Content Term

Page 49: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Style Constraint

• Gram Matrix of Hidden Units encode style

• Actual Values of Hidden Units encode content

• No correspondence between clips required!

Style Term

Page 50: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Style Constraint

• Gram Matrix of Hidden Units encode style

• Actual Values of Hidden Units encode content

• No correspondence between clips required!

Gram Matrix

Page 51: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Style Constraint

• Gram Matrix of Hidden Units encode style

• Actual Values of Hidden Units encode content

• No correspondence between clips required!

Page 52: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 53: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 54: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 55: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 56: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Outline

Motivation

Synthesis

Editing

Discussion

Page 57: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Representation

• We use joint positions local to hip

• Global rotation / translation removed

using hips and shoulders direction

• Root velocity and contact times

appended to representation

Page 58: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Training

• Motion Manifold

• Several large databases (including whole CMU)

• Training takes around 6 hours

• Motion Synthesis

• Task specific data only (e.g. locomotion only)

• Training takes around 1 hour

Page 59: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Procedural vs Simulated

• Procedural

• Output computed

at arbitrary times or

in parallel

• Ideal for precise

animation

• Simulated

• Output computed

frame by frame in

series

• Ideal for interactive

applications

Page 60: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Performance

• Using GPU system runs in parallel over frames

• Very fast for long motions or many characters

Page 61: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Performance

• Using GPU system runs in parallel over frames

• Very fast for long motions or many characters

Page 62: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline
Page 63: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline

Future Work

• Need more general solution for ambiguity

issue

• Wish to use more high level features with

a deeper network

• What changes are required for interactive

applications?

Page 64: A Deep Learning Framework for Editingtheorangeduck.com/media/uploads/other_stuff/motion... · •Motion synthesis and editing in unified ... Overview. Overview. Overview. Outline