Motion Graphs for Character Animation

Similar documents
Motion Capture, Motion Edition

INFOMCANIM Computer Animation Motion Synthesis. Christyowidiasmoro (Chris)

CS 231. Motion Capture Data I. The Pipeline. Bodenheimer et al

Computer Animation and Visualisation. Lecture 3. Motion capture and physically-based animation of characters

Adding Hand Motion to the Motion Capture Based Character Animation

Synthesis by Example. Connecting Motion Planning and Example based Movement. Michael Gleicher

CSE452 Computer Graphics

Human body animation. Computer Animation. Human Body Animation. Skeletal Animation

Motion Synthesis and Editing. Yisheng Chen

Stylistic Reuse of View-Dependent Animations

MOTION CAPTURE DATA PROCESSING - MOTION EDITING / RETARGETING - MOTION CONTROL / GRAPH - INVERSE KINEMATIC. Alexandre Meyer Master Informatique

CS-184: Computer Graphics

05 Mesh Animation. Steve Marschner CS5625 Spring 2016

Skinning Mesh Animations

Introduction to Computer Graphics. Animation (1) May 19, 2016 Kenshi Takayama

Animation. CS 465 Lecture 22

Motion Graphs. Abstract. 1 Introduction. Lucas Kovar University of Wisconsin-Madison

Motion Patches: Building Blocks for Virtual Environments Annotated with Motion Data

Rigging / Skinning. based on Taku Komura, Jehee Lee and Charles B.Own's slides

Analyzing and Segmenting Finger Gestures in Meaningful Phases

To Do. Advanced Computer Graphics. The Story So Far. Course Outline. Rendering (Creating, shading images from geometry, lighting, materials)

Feature-Based Locomotion with Inverse Branch Kinematics

3D Character Animation Synthesis From 2D Sketches

Video based Animation Synthesis with the Essential Graph. Adnane Boukhayma, Edmond Boyer MORPHEO INRIA Grenoble Rhône-Alpes

Announcements. Midterms back at end of class ½ lecture and ½ demo in mocap lab. Have you started on the ray tracer? If not, please do due April 10th

Deformation Transfer for Triangle Meshes

Chapter 9 Animation System

Kinematics & Motion Capture

Animations. Hakan Bilen University of Edinburgh. Computer Graphics Fall Some slides are courtesy of Steve Marschner and Kavita Bala

Character Animation Seminar Report: Complementing Physics with Motion Capture

Last Time? Animation, Motion Capture, & Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation

CS-184: Computer Graphics. Introduction to Animation. Lecture #17: Introduction to Animation. 17-AnimationIntro.key - April 15, 2014

3D Reconstruction of Human Bodies with Clothes from Un-calibrated Monocular Video Images

Character Animation from Motion Capture Data

Last Time? Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation

Motion Texture. Harriet Pashley Advisor: Yanxi Liu Ph.D. Student: James Hays. 1. Introduction

SCAPE: Shape Completion and Animation of People

Course Outline. Advanced Computer Graphics. Animation. The Story So Far. Animation. To Do

Last Time? Animation, Motion Capture, & Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation

A Dynamics-based Comparison Metric for Motion Graphs

Measuring the Steps: Generating Action Transitions Between Locomotion Behaviours

Homework 2 Questions? Animation, Motion Capture, & Inverse Kinematics. Velocity Interpolation. Handing Free Surface with MAC

MOTION capture is a technique and a process that

How does the magic happen?

Modeling Variation in Motion Data

Thiruvarangan Ramaraj CS525 Graphics & Scientific Visualization Spring 2007, Presentation I, February 28 th 2007, 14:10 15:00. Topic (Research Paper):

Animation, Motion Capture, & Inverse Kinematics. Announcements: Quiz

Angular momentum guided motion concatenation. Introduction. Related Work. By Hubert P. H. Shum *, Taku Komura and Pranjul Yadav

CMSC 425: Lecture 10 Skeletal Animation and Skinning

animation computer graphics animation 2009 fabio pellacini 1 animation shape specification as a function of time

Real-Time Motion Transition by Example

animation computer graphics animation 2009 fabio pellacini 1

Dynamics Based Comparison Metrics for Motion Graphs

Learnt Inverse Kinematics for Animation Synthesis

Announcements: Quiz. Animation, Motion Capture, & Inverse Kinematics. Last Time? Today: How do we Animate? Keyframing. Procedural Animation

Animation. CS 4620 Lecture 33. Cornell CS4620 Fall Kavita Bala

CS-184: Computer Graphics

CS-184: Computer Graphics. Introduction to Animation. Generate perception of motion with sequence of image shown in rapid succession

Motion for Computer Animation. Michael Gleicher Department of Computer Sciences University of Wisconsin, Madison

CS 523: Computer Graphics, Spring Shape Modeling. Skeletal deformation. Andrew Nealen, Rutgers, /12/2011 1

Topics in Computer Animation

COMP 175 COMPUTER GRAPHICS. Lecture 10: Animation. COMP 175: Computer Graphics March 12, Erik Anderson 08 Animation

Example-Based Skeleton Extraction. Scott Schaefer Can Yuksel

Computer Animation Fundamentals. Animation Methods Keyframing Interpolation Kinematics Inverse Kinematics

A Responsiveness Metric for Controllable Characters Technical Report CS

Modeling of Bodies and Clothes for Virtual Environments

CS-184: Computer Graphics. Administrative

Splicing of concurrent upper-body motion spaces with locomotion

Animation by Adaptation Tales of Motion Use and Re-Use

Animation of 3D Avatars Progress Report

M I RA Lab. Speech Animation. Where do we stand today? Speech Animation : Hierarchy. What are the technologies?

Polar Express 1) 3DCG 1.1. L. Kovar 4) 2005 SIGGRAPH

Character Animation COS 426

Epitomic Analysis of Human Motion

MOTION CAPTURE DATA PROCESSING - MOTION EDITING / RETARGETING - MOTION CONTROL / GRAPH - INVERSE KINEMATIC. Alexandre Meyer Master Informatique

Data-driven Approaches to Simulation (Motion Capture)

Generating Different Realistic Humanoid Motion

CSC 2529F Computer Animation Graduate Project -Collaborative Motion Graphs. Alex & Philipp Hertel

Why animate humans? Why is this hard? Aspects of the Problem. These lectures. Animation Apreciation 101

CNM 190 Advanced Digital Animation Lec 12 : Walk Cycles & Autonomous Motion

Skeletal deformation

Game Programming. Bing-Yu Chen National Taiwan University

Motion Interpretation and Synthesis by ICA

COMPUTER ANIMATION 3 KEYFRAME ANIMATION, RIGGING, SKINNING AND CHARACTER ANIMATION. Rémi Ronfard, Animation, M2R MOSIG

Motion Capture & Simulation

Synthesizing Human Motion From Intuitive Constraints

Preparation Behaviour Synthesis with Reinforcement Learning

Simulation in Computer Graphics. Introduction. Matthias Teschner. Computer Science Department University of Freiburg

Session #5 2D Mechanisms: Mobility, Kinematic Analysis & Synthesis

The ExtReAM Library: Extensible Real-time Animations for Multiple Platforms

Real-Time Ambient Occlusion for Dynamic Character Skins

Pose Space Deformation A unified Approach to Shape Interpolation and Skeleton-Driven Deformation

animation projects in digital art animation 2009 fabio pellacini 1

Real Time Skin Deformation with Bones Blending

Achieving Good Connectivity in Motion Graphs

CS-184: Computer Graphics. Today

Sketch-based Interface for Crowd Animation

CS 231. Basics of Computer Animation

Simple and Powerful Animation Compression. Nicholas Fréchette Programming Consultant for Eidos Montreal

Motion Synthesis and Editing. in Low-Dimensional Spaces

Transcription:

Parag Chaudhuri Indian Institute of Technology Bombay Research Promotion Workshop on Introduction to Graph and Geometric Algorithms Thapar University Patiala October 30, 2010

Outline Introduction The Need for Motion Data Using Motion Data Character and Motion Data Character Representation Motion Representation Motion Graphs Idea Construction Generating Motion More Motion Graphs Conclusions

The Need for Motion Data Character animation is about movement. c Aardman Animations, Nintendo Co., Ltd.

The Need for Motion Data Creating plausible movement requires a lot of skill and time. Source: Sintel, The Durian Open Movie Project

The Need for Motion Data How difficult can it be - it is only one character...

The Need for Motion Data...then imagine a thousand or a million! c Walden Media, Rhythm and Hues Studios, Massive Software

The Need for Motion Data Capture movement of performers and use it in animation. c James Cameron, 20th Century Fox, Vicon, Ubisoft

Using Motion Data Problems Captured data can be voluminous. Processing data motion data is intensive. Capturing all possible motion is impossible. Motion Capture is expensive and cumbersome. Solutions Organize and represent data. Combine data intelligently to synthesize new motion. Simulate physics to dynamically generate new motion.

Using Motion Data Problems Captured data can be voluminous. Processing data motion data is intensive. Capturing all possible motion is impossible. Motion Capture is expensive and cumbersome. Solutions Organize and represent data. Combine data intelligently to synthesize new motion. Simulate physics to dynamically generate new motion.

Outline Introduction The Need for Motion Data Using Motion Data Character and Motion Data Character Representation Motion Representation Motion Graphs Idea Construction Generating Motion More Motion Graphs Conclusions

Character Representation A layered representation for the character Source: Model courtesy MIRALab

Character Representation A set of joints with fixed degrees of freedom... Source: Model courtesy MIRALab

Character Representation...joined with rigid links or bones form the skeleton of the character. Source: Model courtesy MIRALab

Character Representation This forms a rooted tree of rigid transformations. Source: Model courtesy MIRALab

Character Representation Layered on top of this is a triangle mesh of the character s skin. Source: Model courtesy MIRALab

Character Representation When the skeleton moves, the skin moves along. Source: Model courtesy MIRALab

Motion Representation Motion data is typically captured in the form of joint trajectories Source: Vicon IQ

Motion Representation Motion data is typically captured in the form of joint trajectories

Motion Representation It is stored in one of many standard formats

Outline Introduction The Need for Motion Data Using Motion Data Character and Motion Data Character Representation Motion Representation Motion Graphs Idea Construction Generating Motion More Motion Graphs Conclusions

Idea Every motion clip is a graph. Vertex pose, Edge transition frames.

Idea There are many such clips in a motion database.

Idea Find similar poses between clips. Add transitions between them.

Idea Find similar poses between clips. Add transitions between them.

Idea Now any walk on this graph...

Idea...generates a new, smooth motion.

Construction Similarity between poses across clips A simple distance measure between joints is a bad idea as some joints have more influence on the pose and they may also be subject to constraints. A pose is defined only up to a rigid coordinate transformation. Hence comparing two pose requires identifying compatible coordinate systems. A seamless transition must account not only for differences in body posture, but also in joint velocities, accelerations, and possibly higher-order derivatives.

Construction Similarity between poses across clips A simple distance measure between joints is a bad idea as some joints have more influence on the pose and they may also be subject to constraints. A pose is defined only up to a rigid coordinate transformation. Hence comparing two pose requires identifying compatible coordinate systems. A seamless transition must account not only for differences in body posture, but also in joint velocities, accelerations, and possibly higher-order derivatives.

Construction Similarity between poses across clips A simple distance measure between joints is a bad idea as some joints have more influence on the pose and they may also be subject to constraints. A pose is defined only up to a rigid coordinate transformation. Hence comparing two pose requires identifying compatible coordinate systems. A seamless transition must account not only for differences in body posture, but also in joint velocities, accelerations, and possibly higher-order derivatives.

Construction D(P i, P j ) = min θ,x o,z o n ω k pi k T θ,xo,zo pj k 2 k=1 Compute the distance metric over a window of 2L + 1 frames centered at P i and P j. Constructing Good Quality Motion Graphs for Realistic Human Animation, Limin Zhaog, PhD Thesis, University of Pennsylvania, 2009. Motion Graphs, Lucas Kovar, Michael Gleicher and Frédéric Pighin, SIGGRAPH 2002

Construction Create transitions between frames for which similarity satisfies a threshold. Linear interpolations of translations, Spherical linear interpolations for rotations. Prune the graph for dead ends. Retain only the largest strongly connected component. Motion Graphs, Lucas Kovar, Michael Gleicher and Frédéric Pighin, SIGGRAPH 2002

Generating Motion Random walks on the motion graph are not interesting So we search for motion that satisfies some objective Minimize a function f (w) such that n f (w) = f ([e 1, e n ]) = g([e 1, e i 1 ], e i ) - where f (w) gives the total path error for a path w = [e 1, e n ] on the graph i=1 - g(w, e) is a scalar function that gives the additional error when the edge e is added to an existing path w. - In addition to this we also have a halting criteria.

Generating Motion Path Synthesis - making the character move on a path given by the user g(w, e) = n Q (s(w, e i ) Q(s(w, e i ) 2 i=1 Motion Graphs, Lucas Kovar, Michael Gleicher and Frédéric Pighin, SIGGRAPH 2002

Generating Motion Motion Styles Motion Graphs, Lucas Kovar, Michael Gleicher and Frédéric Pighin, SIGGRAPH 2002

Outline Introduction The Need for Motion Data Using Motion Data Character and Motion Data Character Representation Motion Representation Motion Graphs Idea Construction Generating Motion More Motion Graphs Conclusions

Motion from Annotations Annotate the motions, paint a time line, search Motion Synthesis from Annotations, Okan Arikan, David Forsyth, James O Brien, SIGGRAPH 2003

Motion Patches Motion capture motion in patches, graph between patches Motion Patches: Building Blocks for Virtual Environments Annotated with Motion Data, Kang Hoon Lee, Myung Geol Choi and Jehee Lee, SIGGRAPH 2006

Dynamic Response Motion capture motion in patches, graph between patches Dynamic Response for Motion Capture Animation, Victor Zordan, Anna Majkowska, Bill Chiu and Matthew Fast, SIGGRAPH 2005

Self Adaptive Animation Transitions driven by camera position Self Adaptive Animation based on User Perspective, Parag Chaudhuri, George Papagiannakis, Nadia Magnenat-Thalmann, CGI 2008

Outline Introduction The Need for Motion Data Using Motion Data Character and Motion Data Character Representation Motion Representation Motion Graphs Idea Construction Generating Motion More Motion Graphs Conclusions

Conclusions Motion Graphs are very useful in character animation. Extensively used for real-time animation synthesis. Cutting edge research area in Computer Graphics. Future going toward a combination of physics simulation and motion capture.

Thank You