Term Project Final Report for CPSC526 Statistical Models of Poses Using Inverse Kinematics

Size: px
Start display at page:

Download "Term Project Final Report for CPSC526 Statistical Models of Poses Using Inverse Kinematics"

Transcription

1 Term Project Final Report for CPSC526 Statistical Models of Poses Using Inverse Kinematics Department of Computer Science The University of British Columbia Abstract In this project, we built the inverse kinematics(ik) system which can generate some novel and natural poses. Our system consists of 2 components. The first component is the offline training process: we started with reading motion capture data, followed by Principle Component Analysis(PCA) to reduce the dimension of the input data. Then the Gaussian Mixture Model(GMM) is learned to fit the data on the latent space in order to compute the Probability Distribution Function(PDF). Finally, for each pose in the original pose space, there is an associated PDF value for it. The second component of the system is the online optimization process which can be repeatedly used for different PDF s to generate new poses. This system can generate the most likely poses which are similar to the training data and fulfill the user constraints. Different types of input data will lead to different styles of inverse kinematics. We also demonstrat our system in the context of interactive character posing. Keywords: Inverse Kinematics, Motion Capture, Poses, Machine Learning, Principle Component Analysis, Gaussian Mixture Model, Constrained Nonlinear Optimization 1 Introduction Inverse kinematics (IK) is the process of computing the human poses subject to some given data constraints. Without other conditions, this problem is ill-posed in most cases. For example, given the positions of the hands and feet of a character, there are many possible poses that satisfy this constraints. However, some poses are more likely than others. Generally speaking, the likelihood of human poses is relevant to the constrains and the style of motion, which means it s difficult and impractical to manually design the likely human poses. In this project, we present an IK system based on learning from previously-recorded poses. We pose the IK as an optimization problem, which targets to find a maximum of the object function given by the Probability Distribution Function(PDF) of Gaussian Mixture Model(GMM). There are 2 components in our system, the machine learning component and the optimization component. In the machine learning process, we compute GMM model and its PDF based on the input poses data sequence. We firstly read motion capture data to get the skeleton tree structure as well as the related positions and joint angles. Since GMM model doesn t work well on high dimensional space(e.g. 69 dimensions), we used the PCA method to reduce the original mocap data to 2D/3D space. We then learned a GMM over the low dimensional data. This mapping give us the PDF over the vectors representing the different poses. We call this is the offline training process, which means this machine learning process is a preprocess to generate object function. In the optimization process, the objective function describes how desirable the pose is. The bigger the probability, the more likely the new pose is. Our task is to optimize the objective function subject to the constraints given by some user interaction(e.g. fix some joints 3D position, move some joints 3D position). Note that both optimization objective function and the constraints are nonlinear. We call this process as the online optimization process. Our system mostly focuses on the study and research of statistical model and optimization. We proved that our system is able to generate the most likely poses based on the input motion capture data in the context of interactive character posing. Since there are lots of Matlab resources related to motion capture data and optimization algorithm on the internet, we used Matlab to implement our system. There are several limitations and possible improvements to our styled-based IK system. First, our system is not userfriendly enough. Secondly, we cannot provide the IK solution in real time. Thirdly, display of human pose is simple. 2 Related Work There are some early work study on the basic IK problem for finding the pose which satisfies the constraints (e.g. [Bodenheimer et al. 1997] [Girard and Maciejewski 1985]). As

2 mentioned above, most IK problems are ill-posed because the solutions are not unique. Unfortunately, most poses which satisfy the constraints appear unnatural and irregular. In practice, animators usually need to specify many constraints in order to generate a desirable pose. Another category of approaches to keep the animated character natural are based on biomechanics(e.g. measuring the contribution of individual joints, minimizing energy consumption, mass displacement from some initial pose). However, this is still a not good way for describing poses. The most related approach is generating realistic poses from examples (e.g. warp an existing animation [Witkin and Popovic 1995], interpolate between sequences [Rose et al. 1998]). Our system is mainly based on [Grochow et al. 2004]. This article presented an IK system based on a learned probability model of human poses.the main difference between their work and ours is that we used simpler GMM model instead of the Scaled Gaussian Process Latent Variable Model (SGPLVM) to formulate the objective function. [wang et al. 2005] provides good understanding of GPDM model. [Redner and Walker 1984] talks about the optimization problem. They are both very useful to our project. 3 Methods 3.1 Character Model In this section, we presented the structure for our character model. We represented the pose as an skeleton model. This skeleton model is a tree-like model, where we can calculate 3D positions of the joints based on the parent and child information. In our project, the skeleton has 27 joints(figure 1). The skeleton model represents each pose as a 69- dimension vector, which includes the the 3D position of the root(hip), the offset at each joint angle. When calculating the 3D position of one joint, we backtrack to the parent of the joint to get the position and rotation matrix of the parent. We do it recursively until we get to the root. The input of the offline training process is a sequence of certain human motion such as running and walking. Figure 1: Skeleton tree structure. Each node represents one joint, which is labeled by the joint name and joint number. In order to calculate the 3D position of one node, we need its parent node s position, offset and joint angles. 3.2 Pipeline (Figure 2) shows the pipeline of our system. Once again, our system consists of two phases: the offline training process and online optimization process. 3.3 PCA As mentioned above, the poses in the training data set are represented as high dimensional vectors. Before fitting an Gaussian Mixture Model(GMM), we applied PCA as a preprocess on the high dimension data. There are several reasons why we did this. Figure 2: The architecture of our system: top box is the offline training process. We read the motion capture data, applied PCA dimensional reduction on them, then learned to get the GMM model and its PDF; bottom box is the online optimization process. The input is the objective function (based on the GMM model) and the user-specified constraints. The output is the trained vector representing the new pose. 2

3 3.5 Optimization and Pose Synthesis Learning a GMM gives us the objective function which is represented as a PDF of GMM. In order to synthesize a likely pose, the remaining work is to optimize the objective function subject to the constraints. Here is the general form of our optimization statement: Figure 3: Top left: PCA estimated the 2D positions associated with each training pose. Top right The 3 Gaussians generated during the learning process. Bottom left: The likelihood is represented as the 2D GMM probability distribution function. The points in the latent space are superimposed. Bottom right: The 3D illustration of the GMM probability distribution function. First, GMM works well only for low dimensional data. We did experiments on learning GMM on high dimension(69d, 67D) space, and we found that there were lots of artifacts in the final likelihood. Secondly, the optimization process, which is detailed in section 3.5, is more efficient only if the dimensionality of the latent space is low. Thirdly, 2D is more convenient for users to visualize and edit the data. In our system, we reduced the training data to 2D using the PCA functions from the PMTK MATLAB Package. 3.4 Learning a Gaussian Mixture Model Given the data points in the 2D latent space, we used GMM to model the likelihood of certain kind of human motions. More specifically, the model is represented as the probability distribution G that is a linear combination of several Gaussian distributions. G(x) = n a i G i (x; µ i, σ i ) i=1 where G i (x; µ i, σ i ) s are Gaussian probability distribution functions, and a i s are the associated weights. We applied cross validation to decide for each dataset the number of Gaussians in the GMM. We used the well-known Expectation-Maximization (EM) to compute the parameters (a i,σ i,µ i ) of the model. We modified the conventional EM method to compute maximum a posteriori (MAP) estimates for Bayesian inference. Applying MAP helps to prevent the singularity problem. In our system, we used the GMM functions from the PMTK MATLAB Package. s.t. arg max P IK (P CA(q)) q Ceq i (x, y, z) = 0 As for the objective function, the parameter q is a 69- dimension vector in the pose space, which we projected to 2D latent space using PCA. P IK is the GMM PDF over the latent space generated in offline training process. Several constraints comes from the 3D positions of certain joints specified by the users. For example, if the user gives the joint position of LeftHand, then for such 3D position constraint input (xc lh, yc lh, zc lh ), we find its ancestors upward recursively until we reach the root. Then we get the expression of the constraint: Ceq i = x lh xc lh = 0 Ceq i+1 = y lh yc lh = 0 Ceq i+2 = z lh zc lh = 0 For each joint constraint which user specified, we can get 3 constraints equations for x,y and z coordinates. In our experiment, 3-5 constraints should be enough to synthesize a human pose. More constraints are needed if we are given less training data. It this project, we are facing one optimization problem with nonlinear objective function and nonlinear constraints. Since it s difficult to compute the derivative formula of the object function, Steepest Descent or Newton s method cannot work. In our system, we used the FMINCON from the Matlab Optimization Toolbox, to optimize the objective function with nonlinear hard constrains. We used Sequence Quadratic Programming(SQP) algorithm here, which is supported by FMINCON and works well for hard constraints. 4 Results In order to test the effectiveness of the styled-base IK, we tested on the application of interactive character posing. Given a set of motion capture training data, an initial pose and a set of constraints, our system is able to provide the most likely pose which satisfies these constraints (Figure 4). Also, training the model on different input data leads to different style of IK. Since we used the Sequence Quadratic Programming optimization method instead of the gradientbased method mentioned in [Grochow et al. 2004], our method cannot response in real time. In most cases, it takes less than 30 seconds to generate a result. 3

4 5 Discussion and Future Work We have presented one inverse kinematics system based on a learned probability model of human pose. Given a input poses sequence, our system can produce the most likely pose satisfies the user-specified constraints. We demonstrated our system in the context of interactive character posing. we have shown that different style of input motion capture data leads to different pose. Our system runs well over different data sets and we get some good results. The implementation is in Matlab environment, we integrated many techniques and also got some good and smooth intermediate procedure (e.g. PCA, GMM) results. There are some limitations and future work of our project. The user interaction interface is limited by the flexibility of Matlab environment and therefore is not userfriendly. If the system can be built in development environment such as VC++, users can interact with our system more conveniently. The optimization process in our system is not in real time. The SGPLVM model introduced in [Grochow et al. 2004] is more efficient than the GMM we used. The display is simple. In our system, the human pose is displayed as the skeleton. We can improve it by integrating more decent models instead of drawing the poses with simple skeleton lines and nodes. To sum up, the system fulfills the purpose of study on statistical model for inverse kinematics and has a broad range of applications. But There are still possible improvements to our work. Acknowledgements Figure 4: Interactive character posing. Animators can interactively define a character by giving the constraints. Left column: The initial poses and user specified constraints. Right Column: The resulting poses. Top row: We used the running motion capture data. Middle row: We used the walking motion capture data. Bottom row: We used the skipping motion capture data. In each case, the poses are constrained by the positions of limbs and hip. We use red lines and red dots to represent the constraints. Thanks a lot to Prof. Michiel van de Panne for detailed discussion. He also gave us many good ideas. Thanks to Prof. Neil Lawrence s motion capture toolbox for reading and displaying for the motion capture data. The motion capture data we used are from ACCAD motion capture lab. We also want to thank to Prof. Kevin Murphy for its PMTK package as well as his machine learning course. References BODENHEIMER, B., ROSE, C., ROSENTHAL, S., AND PELLA, J The process of motion capture - dealing with the data. In Computer Animation and Simulation 97, GIRARD, M., AND MACIEJEWSKI, A. A Computational modeling for the computer animation of legged figures. In Computer graphics(proc. of SIGGRAPH 85) 19,

5 GROCHOW, K., MARTIN, S. L., HERTZMANN, A., AND POPOVIC, Z Style-based inverse kinematics. ACM Transactions on Graphics (TOG), Proceedings of ACM SIGGRAPH , 3, REDNER, R. A., AND WALKER, H. F Mixture densities, maximum likelihood and the em algorithm. SIAM Review 26, 2, ROSE, C., COHEN, M. F., AND BODENHEIMER, B Verbs and adverbs: Mutidimensional motion interpolation. IEEE Computer Graphics and Applications 18, 5, WANG, J. M., FLEET, D. J., AND HERTZMANN, A Gaussian process dynamical models. In Proc. NIPS 2005, WITKIN, A., AND POPOVIC, Z Motion warping. Proceedings of SIGGRAPH 95,

Style-based Inverse Kinematics

Style-based Inverse Kinematics Style-based Inverse Kinematics Keith Grochow, Steven L. Martin, Aaron Hertzmann, Zoran Popovic SIGGRAPH 04 Presentation by Peter Hess 1 Inverse Kinematics (1) Goal: Compute a human body pose from a set

More information

Using GPLVM for Inverse Kinematics on Non-cyclic Data

Using GPLVM for Inverse Kinematics on Non-cyclic Data 000 00 002 003 004 005 006 007 008 009 00 0 02 03 04 05 06 07 08 09 020 02 022 023 024 025 026 027 028 029 030 03 032 033 034 035 036 037 038 039 040 04 042 043 044 045 046 047 048 049 050 05 052 053 Using

More information

Human Motion Synthesis by Motion Manifold Learning and Motion Primitive Segmentation

Human Motion Synthesis by Motion Manifold Learning and Motion Primitive Segmentation Human Motion Synthesis by Motion Manifold Learning and Motion Primitive Segmentation Chan-Su Lee and Ahmed Elgammal Rutgers University, Piscataway, NJ, USA {chansu, elgammal}@cs.rutgers.edu Abstract. We

More information

Learnt Inverse Kinematics for Animation Synthesis

Learnt Inverse Kinematics for Animation Synthesis VVG (5) (Editors) Inverse Kinematics for Animation Synthesis Anonymous Abstract Existing work on animation synthesis can be roughly split into two approaches, those that combine segments of motion capture

More information

Optimal motion trajectories. Physically based motion transformation. Realistic character animation with control. Highly dynamic motion

Optimal motion trajectories. Physically based motion transformation. Realistic character animation with control. Highly dynamic motion Realistic character animation with control Optimal motion trajectories Physically based motion transformation, Popovi! and Witkin Synthesis of complex dynamic character motion from simple animation, Liu

More information

Motion Synthesis and Editing. Yisheng Chen

Motion Synthesis and Editing. Yisheng Chen Motion Synthesis and Editing Yisheng Chen Overview Data driven motion synthesis automatically generate motion from a motion capture database, offline or interactive User inputs Large, high-dimensional

More information

Animation Lecture 10 Slide Fall 2003

Animation Lecture 10 Slide Fall 2003 Animation Lecture 10 Slide 1 6.837 Fall 2003 Conventional Animation Draw each frame of the animation great control tedious Reduce burden with cel animation layer keyframe inbetween cel panoramas (Disney

More information

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

Homework 2 Questions? Animation, Motion Capture, & Inverse Kinematics. Velocity Interpolation. Handing Free Surface with MAC Homework 2 Questions? Animation, Motion Capture, & Inverse Kinematics Velocity Interpolation Original image from Foster & Metaxas, 1996 In 2D: For each axis, find the 4 closest face velocity samples: Self-intersecting

More information

TIEA311 Tietokonegrafiikan perusteet kevät 2018

TIEA311 Tietokonegrafiikan perusteet kevät 2018 TIEA311 Tietokonegrafiikan perusteet kevät 2018 ( Principles of Computer Graphics Spring 2018) Copyright and Fair Use Notice: The lecture videos of this course are made available for registered students

More information

Gaussian Process Dynamical Models

Gaussian Process Dynamical Models DRAFT Final version to appear in NIPS 18. Gaussian Process Dynamical Models Jack M. Wang, David J. Fleet, Aaron Hertzmann Department of Computer Science University of Toronto, Toronto, ON M5S 3G4 jmwang,hertzman

More information

Gaussian Process Dynamical Models

Gaussian Process Dynamical Models Gaussian Process Dynamical Models Jack M. Wang, David J. Fleet, Aaron Hertzmann Department of Computer Science University of Toronto, Toronto, ON M5S 3G4 jmwang,hertzman@dgp.toronto.edu, fleet@cs.toronto.edu

More information

Does Dimensionality Reduction Improve the Quality of Motion Interpolation?

Does Dimensionality Reduction Improve the Quality of Motion Interpolation? Does Dimensionality Reduction Improve the Quality of Motion Interpolation? Sebastian Bitzer, Stefan Klanke and Sethu Vijayakumar School of Informatics - University of Edinburgh Informatics Forum, 10 Crichton

More information

Motion Interpretation and Synthesis by ICA

Motion Interpretation and Synthesis by ICA Motion Interpretation and Synthesis by ICA Renqiang Min Department of Computer Science, University of Toronto, 1 King s College Road, Toronto, ON M5S3G4, Canada Abstract. It is known that high-dimensional

More information

A Generative Model for Motion Synthesis and Blending Using Probability Density Estimation

A Generative Model for Motion Synthesis and Blending Using Probability Density Estimation A Generative Model for Motion Synthesis and Blending Using Probability Density Estimation Dumebi Okwechime and Richard Bowden University of Surrey, Guildford, Surrey, GU2 7XH, UK {d.okwechime,r.bowden}@surrey.ac.uk

More information

Motion Capture, Motion Edition

Motion Capture, Motion Edition Motion Capture, Motion Edition 2013-14 Overview Historical background Motion Capture, Motion Edition Motion capture systems Motion capture workflow Re-use of motion data Combining motion data and physical

More information

Synthesis and Editing of Personalized Stylistic Human Motion

Synthesis and Editing of Personalized Stylistic Human Motion Synthesis and Editing of Personalized Stylistic Human Motion Jianyuan Min Texas A&M University Huajun Liu Texas A&M University Wuhan University Jinxiang Chai Texas A&M University Figure 1: Motion style

More information

Physically Based Character Animation

Physically Based Character Animation 15-464/15-664 Technical Animation April 2, 2013 Physically Based Character Animation Katsu Yamane Disney Research, Pittsburgh kyamane@disneyresearch.com Physically Based Character Animation Use physics

More information

animation projects in digital art animation 2009 fabio pellacini 1

animation projects in digital art animation 2009 fabio pellacini 1 animation projects in digital art animation 2009 fabio pellacini 1 animation shape specification as a function of time projects in digital art animation 2009 fabio pellacini 2 how animation works? flip

More information

Learning Deformations of Human Arm Movement to Adapt to Environmental Constraints

Learning Deformations of Human Arm Movement to Adapt to Environmental Constraints Learning Deformations of Human Arm Movement to Adapt to Environmental Constraints Stephan Al-Zubi and Gerald Sommer Cognitive Systems, Christian Albrechts University, Kiel, Germany Abstract. We propose

More information

Generating Different Realistic Humanoid Motion

Generating Different Realistic Humanoid Motion Generating Different Realistic Humanoid Motion Zhenbo Li,2,3, Yu Deng,2,3, and Hua Li,2,3 Key Lab. of Computer System and Architecture, Institute of Computing Technology, Chinese Academy of Sciences, Beijing

More information

Dimensionality Reduction and Generation of Human Motion

Dimensionality Reduction and Generation of Human Motion INT J COMPUT COMMUN, ISSN 1841-9836 8(6):869-877, December, 2013. Dimensionality Reduction and Generation of Human Motion S. Qu, L.D. Wu, Y.M. Wei, R.H. Yu Shi Qu* Air Force Early Warning Academy No.288,

More information

Hierarchical Gaussian Process Latent Variable Models

Hierarchical Gaussian Process Latent Variable Models Neil D. Lawrence neill@cs.man.ac.uk School of Computer Science, University of Manchester, Kilburn Building, Oxford Road, Manchester, M13 9PL, U.K. Andrew J. Moore A.Moore@dcs.shef.ac.uk Dept of Computer

More information

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

Announcements: Quiz. Animation, Motion Capture, & Inverse Kinematics. Last Time? Today: How do we Animate? Keyframing. Procedural Animation Announcements: Quiz Animation, Motion Capture, & Inverse Kinematics On Friday (3/1), in class One 8.5x11 sheet of notes allowed Sample quiz (from a previous year) on website Focus on reading comprehension

More information

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

Last Time? Animation, Motion Capture, & Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation Last Time? Animation, Motion Capture, & Inverse Kinematics Navier-Stokes Equations Conservation of Momentum & Mass Incompressible Flow Today How do we animate? Keyframing Procedural Animation Physically-Based

More information

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

Animation, Motion Capture, & Inverse Kinematics. Announcements: Quiz Animation, Motion Capture, & Inverse Kinematics Announcements: Quiz On Tuesday (3/10), in class One 8.5x11 sheet of notes allowed Sample quiz (from a previous year) on website Focus on reading comprehension

More information

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

Last Time? Animation, Motion Capture, & Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation Last Time? Animation, Motion Capture, & Inverse Kinematics Navier-Stokes Equations Conservation of Momentum & Mass Incompressible Flow Today How do we animate? Keyframing Procedural Animation Physically-Based

More information

3D Human Motion Analysis and Manifolds

3D Human Motion Analysis and Manifolds D E P A R T M E N T O F C O M P U T E R S C I E N C E U N I V E R S I T Y O F C O P E N H A G E N 3D Human Motion Analysis and Manifolds Kim Steenstrup Pedersen DIKU Image group and E-Science center Motivation

More information

Epitomic Analysis of Human Motion

Epitomic Analysis of Human Motion Epitomic Analysis of Human Motion Wooyoung Kim James M. Rehg Department of Computer Science Georgia Institute of Technology Atlanta, GA 30332 {wooyoung, rehg}@cc.gatech.edu Abstract Epitomic analysis is

More information

Behaviour based particle filtering for human articulated motion tracking

Behaviour based particle filtering for human articulated motion tracking Loughborough University Institutional Repository Behaviour based particle filtering for human articulated motion tracking This item was submitted to Loughborough University's Institutional Repository by

More information

Keyframing an IK Skeleton Maya 2012

Keyframing an IK Skeleton Maya 2012 2002-2012 Michael O'Rourke Keyframing an IK Skeleton Maya 2012 (This tutorial assumes you have done the Creating an Inverse Kinematic Skeleton tutorial in this set) Concepts Once you have built an Inverse

More information

CS-184: Computer Graphics. Today

CS-184: Computer Graphics. Today CS-184: Computer Graphics Lecture #20: Motion Capture Prof. James O Brien University of California, Berkeley V2005-F20-1.0 Today Motion Capture 2 Motion Capture Record motion from physical objects Use

More information

MOTION capture is a technique and a process that

MOTION capture is a technique and a process that JOURNAL OF L A TEX CLASS FILES, VOL. 6, NO. 1, JANUARY 2008 1 Automatic estimation of skeletal motion from optical motion capture data xxx, Member, IEEE, Abstract Utilization of motion capture techniques

More information

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

Last Time? Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation Last Time? Inverse Kinematics Navier-Stokes Equations Conservation of Momentum & Mass Incompressible Flow Today How do we animate? Keyframing Procedural Animation Physically-Based Animation Forward and

More information

Clustering K-means. Machine Learning CSEP546 Carlos Guestrin University of Washington February 18, Carlos Guestrin

Clustering K-means. Machine Learning CSEP546 Carlos Guestrin University of Washington February 18, Carlos Guestrin Clustering K-means Machine Learning CSEP546 Carlos Guestrin University of Washington February 18, 2014 Carlos Guestrin 2005-2014 1 Clustering images Set of Images [Goldberger et al.] Carlos Guestrin 2005-2014

More information

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

CS 231. Motion Capture Data I. The Pipeline. Bodenheimer et al CS 231 Motion Capture Data I The Pipeline Bodenheimer et al 1 Marker Magnetic Optical Marker placement On limbs vs joints neither is ideal Over tight clothing or thin skin In repeatable 'landmarks' Using

More information

THE capability to precisely synthesize online fullbody

THE capability to precisely synthesize online fullbody 1180 JOURNAL OF MULTIMEDIA, VOL. 9, NO. 10, OCTOBER 2014 Sparse Constrained Motion Synthesis Using Local Regression Models Huajun Liu a, Fuxi Zhu a a School of Computer, Wuhan University, Wuhan 430072,

More information

Gaussian Process Motion Graph Models for Smooth Transitions among Multiple Actions

Gaussian Process Motion Graph Models for Smooth Transitions among Multiple Actions Gaussian Process Motion Graph Models for Smooth Transitions among Multiple Actions Norimichi Ukita 1 and Takeo Kanade Graduate School of Information Science, Nara Institute of Science and Technology The

More information

Learning Alignments from Latent Space Structures

Learning Alignments from Latent Space Structures Learning Alignments from Latent Space Structures Ieva Kazlauskaite Department of Computer Science University of Bath, UK i.kazlauskaite@bath.ac.uk Carl Henrik Ek Faculty of Engineering University of Bristol,

More information

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

Human body animation. Computer Animation. Human Body Animation. Skeletal Animation Computer Animation Aitor Rovira March 2010 Human body animation Based on slides by Marco Gillies Human Body Animation Skeletal Animation Skeletal Animation (FK, IK) Motion Capture Motion Editing (retargeting,

More information

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

Introduction to Computer Graphics. Animation (1) May 19, 2016 Kenshi Takayama Introduction to Computer Graphics Animation (1) May 19, 2016 Kenshi Takayama Skeleton-based animation Simple Intuitive Low comp. cost https://www.youtube.com/watch?v=dsonab58qva 2 Representing a pose using

More information

Kinematics & Motion Capture

Kinematics & Motion Capture Lecture 27: Kinematics & Motion Capture Computer Graphics and Imaging UC Berkeley CS184/284A, Spring 2017 Forward Kinematics (Slides with James O Brien) Forward Kinematics Articulated skeleton Topology

More information

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

Thiruvarangan Ramaraj CS525 Graphics & Scientific Visualization Spring 2007, Presentation I, February 28 th 2007, 14:10 15:00. Topic (Research Paper): Thiruvarangan Ramaraj CS525 Graphics & Scientific Visualization Spring 2007, Presentation I, February 28 th 2007, 14:10 15:00 Topic (Research Paper): Jinxian Chai and Jessica K. Hodgins, Performance Animation

More information

CS 4620 Program #2: Character Animation

CS 4620 Program #2: Character Animation Cornell University CS 4620 Program #2: Character Animation Forward and Inverse Kinematics out: Tuesday 28 September 2010 due: Tuesday 19 October 2010 Author: Prof. Doug James In this second programming

More information

CS 231. Inverse Kinematics Intro to Motion Capture. 3D characters. Representation. 1) Skeleton Origin (root) Joint centers/ bones lengths

CS 231. Inverse Kinematics Intro to Motion Capture. 3D characters. Representation. 1) Skeleton Origin (root) Joint centers/ bones lengths CS Inverse Kinematics Intro to Motion Capture Representation D characters ) Skeleton Origin (root) Joint centers/ bones lengths ) Keyframes Pos/Rot Root (x) Joint Angles (q) Kinematics study of static

More information

Scaled Functional Principal Component Analysis for Human Motion Synthesis

Scaled Functional Principal Component Analysis for Human Motion Synthesis Scaled Functional Principal Component Analysis for Human Motion Synthesis Han Du 1 Somayeh Hosseini 1 Martin Manns 2 Erik Herrmann 1 Klaus Fischer 1 1 German Research Center for Artificial Intelligence,

More information

A Novel Image Super-resolution Reconstruction Algorithm based on Modified Sparse Representation

A Novel Image Super-resolution Reconstruction Algorithm based on Modified Sparse Representation , pp.162-167 http://dx.doi.org/10.14257/astl.2016.138.33 A Novel Image Super-resolution Reconstruction Algorithm based on Modified Sparse Representation Liqiang Hu, Chaofeng He Shijiazhuang Tiedao University,

More information

Computer Animation Fundamentals. Animation Methods Keyframing Interpolation Kinematics Inverse Kinematics

Computer Animation Fundamentals. Animation Methods Keyframing Interpolation Kinematics Inverse Kinematics Computer Animation Fundamentals Animation Methods Keyframing Interpolation Kinematics Inverse Kinematics Lecture 21 6.837 Fall 2001 Conventional Animation Draw each frame of the animation great control

More information

COMP30019 Graphics and Interaction Kinematics

COMP30019 Graphics and Interaction Kinematics COMP30019 Graphics and Interaction Kinematics Department of Computing and Information Systems The Lecture outline Introduction Forward kinematics Inverse kinematics Kinematics I am robot (am I?) Forward

More information

A 12-DOF Analytic Inverse Kinematics Solver for Human Motion Control

A 12-DOF Analytic Inverse Kinematics Solver for Human Motion Control Journal of Information & Computational Science 1: 1 (2004) 137 141 Available at http://www.joics.com A 12-DOF Analytic Inverse Kinematics Solver for Human Motion Control Xiaomao Wu, Lizhuang Ma, Zhihua

More information

CS-184: Computer Graphics. Today. Forward kinematics Inverse kinematics. Wednesday, November 12, Pin joints Ball joints Prismatic joints

CS-184: Computer Graphics. Today. Forward kinematics Inverse kinematics. Wednesday, November 12, Pin joints Ball joints Prismatic joints CS-184: Computer Graphics Lecture #18: Forward and Prof. James O Brien University of California, Berkeley V2008-F-18-1.0 1 Today Forward kinematics Inverse kinematics Pin joints Ball joints Prismatic joints

More information

Modeling Style and Variation in Human Motion

Modeling Style and Variation in Human Motion Eurographics/ ACM SIGGRAPH Symposium on Computer Animation (2010) M. Otaduy and Z. Popovic (Editors) Modeling Style and Variation in Human Motion Wanli Ma 1,2 Shihong Xia 1 Jessica K. Hodgins 3 Xiao Yang

More information

Game Programming. Bing-Yu Chen National Taiwan University

Game Programming. Bing-Yu Chen National Taiwan University Game Programming Bing-Yu Chen National Taiwan University Character Motion Hierarchical Modeling Character Animation Motion Editing 1 Hierarchical Modeling Connected primitives 2 3D Example: A robot arm

More information

Motion Tweening for Skeletal Animation by Cardinal Spline

Motion Tweening for Skeletal Animation by Cardinal Spline Motion Tweening for Skeletal Animation by Cardinal Spline Murtaza Ali Khan 1 and Muhammad Sarfraz 2 1 Department of Computing Science Royal University for Women Bahrain drkhanmurtaza@gmail.com 2 Department

More information

CS 231. Inverse Kinematics Intro to Motion Capture

CS 231. Inverse Kinematics Intro to Motion Capture CS 231 Inverse Kinematics Intro to Motion Capture Representation 1) Skeleton Origin (root) Joint centers/ bones lengths 2) Keyframes Pos/Rot Root (x) Joint Angles (q) 3D characters Kinematics study of

More information

Pro-actively Interactive Evolution for Computer Animation

Pro-actively Interactive Evolution for Computer Animation Pro-actively Interactive Evolution for Computer Animation Ik Soo Lim and Daniel Thalmann Computer Graphics Lab (LIG) Swiss Federal Institute of Technology CH 1015 Lausanne EPFL, Switzerland iksoolim@email.com,

More information

Identifying Humans by Their Walk and Generating New Motions Using Hidden Markov Models

Identifying Humans by Their Walk and Generating New Motions Using Hidden Markov Models Identifying Humans by Their Walk and Generating New Motions Using Hidden Markov Models CPSC 532A Topics in AI: Graphical Models and CPSC 526 Computer Animation December 15, 2004 Andrew Adam andyadam@cs.ubc.ca

More information

CS-184: Computer Graphics

CS-184: Computer Graphics CS-184: Computer Graphics Lecture #19: Motion Capture!!! Prof. James O Brien! University of California, Berkeley!! V2015-S-18-1.0 Today 1 18-MoCap.key - April 8, 2015 Motion Capture 2 2 18-MoCap.key -

More information

6.837 Computer Graphics Hierarchical Modeling Wojciech Matusik, MIT EECS Some slides from BarbCutler & Jaakko Lehtinen

6.837 Computer Graphics Hierarchical Modeling Wojciech Matusik, MIT EECS Some slides from BarbCutler & Jaakko Lehtinen 6.837 Computer Graphics Hierarchical Modeling Wojciech Matusik, MIT EECS Some slides from BarbCutler & Jaakko Lehtinen Image courtesy of BrokenSphere on Wikimedia Commons. License: CC-BY-SA. This content

More information

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

animation computer graphics animation 2009 fabio pellacini 1 animation shape specification as a function of time animation computer graphics animation 2009 fabio pellacini 1 animation shape specification as a function of time computer graphics animation 2009 fabio pellacini 2 animation representation many ways to

More information

Interactive Computer Graphics

Interactive Computer Graphics Interactive Computer Graphics Lecture 18 Kinematics and Animation Interactive Graphics Lecture 18: Slide 1 Animation of 3D models In the early days physical models were altered frame by frame to create

More information

animation computer graphics animation 2009 fabio pellacini 1

animation computer graphics animation 2009 fabio pellacini 1 animation computer graphics animation 2009 fabio pellacini 1 animation shape specification as a function of time computer graphics animation 2009 fabio pellacini 2 animation representation many ways to

More information

CS 664 Flexible Templates. Daniel Huttenlocher

CS 664 Flexible Templates. Daniel Huttenlocher CS 664 Flexible Templates Daniel Huttenlocher Flexible Template Matching Pictorial structures Parts connected by springs and appearance models for each part Used for human bodies, faces Fischler&Elschlager,

More information

Directable Motion Texture Synthesis

Directable Motion Texture Synthesis Directable Motion Texture Synthesis A Thesis presented by Ashley Michelle Eden to Computer Science in partial fulfillment of the honors requirements for the degree of Bachelor of Arts Harvard College Cambridge,

More information

Flexible Registration of Human Motion Data with Parameterized Motion Models

Flexible Registration of Human Motion Data with Parameterized Motion Models Flexible Registration of Human Motion Data with Parameterized Motion Models Yen-Lin Chen Texas A&M University Jianyuan Min Texas A&M University Jinxiang Chai Texas A&M University Figure 1: Our registration

More information

Advanced Graphics and Animation

Advanced Graphics and Animation Advanced Graphics and Animation Character Marco Gillies and Dan Jones Goldsmiths Aims and objectives By the end of the lecture you will be able to describe How 3D characters are animated Skeletal animation

More information

Evaluation of motion retargeting using spacetime constraints. Master s Thesis of Bas Lommers. December 6, Supervisor: Dr. J.

Evaluation of motion retargeting using spacetime constraints. Master s Thesis of Bas Lommers. December 6, Supervisor: Dr. J. Evaluation of motion retargeting using spacetime constraints Master s Thesis of Bas Lommers Student Number: 3441431 December 6, 2013 Supervisor: Dr. J. Egges Thesis number: ICA-3441431 Utrecht University

More information

Motion Control with Strokes

Motion Control with Strokes Motion Control with Strokes Masaki Oshita Kyushu Institute of Technology oshita@ces.kyutech.ac.jp Figure 1: Examples of stroke-based motion control. Input strokes (above) and generated motions (below).

More information

Tracking Generic Human Motion via Fusion of Low- and High-Dimensional Approaches

Tracking Generic Human Motion via Fusion of Low- and High-Dimensional Approaches XU, CUI, ZHAO, ZHA: TRACKING GENERIC HUMAN MOTION VIA FUSION 1 Tracking Generic Human Motion via Fusion of Low- and High-Dimensional Approaches Yuandong Xu xuyd@cis.pku.edu.cn Jinshi Cui cjs@cis.pku.edu.cn

More information

CSE 481C Imitation Learning in Humanoid Robots Motion capture, inverse kinematics, and dimensionality reduction

CSE 481C Imitation Learning in Humanoid Robots Motion capture, inverse kinematics, and dimensionality reduction 1 CSE 481C Imitation Learning in Humanoid Robots Motion capture, inverse kinematics, and dimensionality reduction Robotic Imitation of Human Actions 2 The inverse kinematics problem Joint angles Human-robot

More information

02/22/02. Assignment 1 on the web page: Announcements. Test login procedure NOW!

02/22/02.   Assignment 1 on the web page: Announcements. Test login procedure NOW! Announcements Assignment on the web page: www.cs.cmu.edu/~jkh/anim_class.html est login procedure NOW! 0//0 Forward and Inverse Kinematics Parent: Chapter 4. Girard and Maciejewski 985 Zhao and Badler

More information

Footskate Cleanup for Motion Capture Editing

Footskate Cleanup for Motion Capture Editing Footskate Cleanup for Motion Capture Editing Lucas Kovar John Schreiner Michael Gleicher University of Wisconsin, Madison Abstract While motion capture is commonplace in character animation, often the

More information

Computer Kit for Development, Modeling, Simulation and Animation of Mechatronic Systems

Computer Kit for Development, Modeling, Simulation and Animation of Mechatronic Systems Computer Kit for Development, Modeling, Simulation and Animation of Mechatronic Systems Karol Dobrovodský, Pavel Andris, Peter Kurdel Institute of Informatics, Slovak Academy of Sciences Dúbravská cesta

More information

Human Motion Reconstruction by Direct Control of Marker Trajectories

Human Motion Reconstruction by Direct Control of Marker Trajectories Human Motion Reconstruction by Direct Control of Marker Trajectories Emel Demircan, Luis Sentis, Vincent De Sapio and Oussama Khatib Artificial Intelligence Laboratory, Stanford University, Stanford, CA

More information

Graph-based High Level Motion Segmentation using Normalized Cuts

Graph-based High Level Motion Segmentation using Normalized Cuts Graph-based High Level Motion Segmentation using Normalized Cuts Sungju Yun, Anjin Park and Keechul Jung Abstract Motion capture devices have been utilized in producing several contents, such as movies

More information

Inverse Kinematics Programming Assignment

Inverse Kinematics Programming Assignment Inverse Kinematics Programming Assignment CS 448D: Character Animation Due: Wednesday, April 29 th 11:59PM 1 Logistics In this programming assignment, you will implement a simple inverse kinematics solver

More information

Character Motion Control by Hands and Principal Component Analysis

Character Motion Control by Hands and Principal Component Analysis Character Motion Control by Hands and Principal Component Analysis Masaki Oshita Hayato Oshima Yuta Senju Syun Morishige Kyushu Institute of Technology (a) Picture of our interface (b) Interface design

More information

The Line of Action: an Intuitive Interface for Expressive Character Posing. Martin Guay, Marie-Paule Cani, Rémi Ronfard

The Line of Action: an Intuitive Interface for Expressive Character Posing. Martin Guay, Marie-Paule Cani, Rémi Ronfard The Line of Action: an Intuitive Interface for Expressive Character Posing Martin Guay, Marie-Paule Cani, Rémi Ronfard LJK, INRIA, Université de Grenoble [S.Lee and J. Buscema, Drawing Comics the Marvel

More information

Kinematics. Why inverse? The study of motion without regard to the forces that cause it. Forward kinematics. Inverse kinematics

Kinematics. Why inverse? The study of motion without regard to the forces that cause it. Forward kinematics. Inverse kinematics Kinematics Inverse kinematics The study of motion without regard to the forces that cause it Forward kinematics Given a joint configuration, what is the osition of an end oint on the structure? Inverse

More information

Panoramic Image Stitching

Panoramic Image Stitching Mcgill University Panoramic Image Stitching by Kai Wang Pengbo Li A report submitted in fulfillment for the COMP 558 Final project in the Faculty of Computer Science April 2013 Mcgill University Abstract

More information

INFOMCANIM Computer Animation Motion Synthesis. Christyowidiasmoro (Chris)

INFOMCANIM Computer Animation Motion Synthesis. Christyowidiasmoro (Chris) INFOMCANIM Computer Animation Motion Synthesis Christyowidiasmoro (Chris) Why Motion Synthesis? We don t have the specific motion / animation We don t have the skeleton and motion for specific characters

More information

CSE452 Computer Graphics

CSE452 Computer Graphics CSE452 Computer Graphics Lecture 19: From Morphing To Animation Capturing and Animating Skin Deformation in Human Motion, Park and Hodgins, SIGGRAPH 2006 CSE452 Lecture 19: From Morphing to Animation 1

More information

which is shown in Fig We can also show that the plain old Puma cannot reach the point we specified

which is shown in Fig We can also show that the plain old Puma cannot reach the point we specified 152 Fig. 7.8. Redundant manipulator P8 >> T = transl(0.5, 1.0, 0.7) * rpy2tr(0, 3*pi/4, 0); The required joint coordinates are >> qi = p8.ikine(t) qi = -0.3032 1.0168 0.1669-0.4908-0.6995-0.1276-1.1758

More information

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

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 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 1 Overview of Animation Section Techniques Traditional

More information

Graphical Models for Human Motion Modeling

Graphical Models for Human Motion Modeling Graphical Models for Human Motion Modeling Kooksang Moon and Vladimir Pavlović Rutgers University, Department of Computer Science Piscataway, NJ 8854, USA Abstract. The human figure exhibits complex and

More information

Interpolation and extrapolation of motion capture data

Interpolation and extrapolation of motion capture data Interpolation and extrapolation of motion capture data Kiyoshi Hoshino Biological Cybernetics Lab, University of the Ryukyus and PRESTO-SORST, Japan Science and Technology Corporation Nishihara, Okinawa

More information

An Analysis of Motion Blending Techniques

An Analysis of Motion Blending Techniques An Analysis of Motion Blending Techniques Andrew Feng 1, Yazhou Huang 2, Marcelo Kallmann 2, and Ari Shapiro 1 1 Institute for Creative Technologies, University of Southern California 2 University of California,

More information

Adding Hand Motion to the Motion Capture Based Character Animation

Adding Hand Motion to the Motion Capture Based Character Animation Adding Hand Motion to the Motion Capture Based Character Animation Ge Jin and James Hahn Computer Science Department, George Washington University, Washington DC 20052 {jinge, hahn}@gwu.edu Abstract. Most

More information

CMSC 425: Lecture 10 Skeletal Animation and Skinning

CMSC 425: Lecture 10 Skeletal Animation and Skinning CMSC 425: Lecture 10 Skeletal Animation and Skinning Reading: Chapt 11 of Gregory, Game Engine Architecture. Recap: Last time we introduced the principal elements of skeletal models and discussed forward

More information

Computer Graphics II

Computer Graphics II Computer Graphics II Autumn 2017-2018 Outline MoCap 1 MoCap MoCap in Context WP Vol. 2; Ch. 10 MoCap originated in TV and film industry but games industry was first to adopt the technology as a routine

More information

Animation, Motion Capture, & Inverse Kinematics

Animation, Motion Capture, & Inverse Kinematics Animation, Motion Capture, & Inverse Kinematics Pop Worksheet! Teams of 2. SOMEONE YOU HAVEN T ALREADY WORKED WITH Enumerate all cases (including rotations) of the 2D version of Marching Cubes, labeling

More information

A Responsiveness Metric for Controllable Characters Technical Report CS

A Responsiveness Metric for Controllable Characters Technical Report CS A Responsiveness Metric for Controllable Characters Technical Report CS05-50-0 Madhusudhanan Srinivasan Ronald A. Metoyer School of Electrical Engineering and Computer Science Oregon State University ρ

More information

Motion Control Methods for Skeleton Daniel Thalmann

Motion Control Methods for Skeleton Daniel Thalmann Motion Control Methods for Skeleton Daniel Thalmann Cagliari, May 2008 Animation of articulated bodies Characters, humans, animals, robots. Characterized by hierarchical structure: skeleton. Skeleton:

More information

Machine Learning. B. Unsupervised Learning B.1 Cluster Analysis. Lars Schmidt-Thieme, Nicolas Schilling

Machine Learning. B. Unsupervised Learning B.1 Cluster Analysis. Lars Schmidt-Thieme, Nicolas Schilling Machine Learning B. Unsupervised Learning B.1 Cluster Analysis Lars Schmidt-Thieme, Nicolas Schilling Information Systems and Machine Learning Lab (ISMLL) Institute for Computer Science University of Hildesheim,

More information

Robotic Imitation from Human Motion Capture using Gaussian Processes

Robotic Imitation from Human Motion Capture using Gaussian Processes Robotic Imitation from Human Motion Capture using Gaussian Processes Aaron P. Shon Keith Grochow Rajesh P.N. Rao University of Washington Computer Science and Engineering Department Seattle, WA 98195 USA

More information

Practical Least-Squares for Computer Graphics

Practical Least-Squares for Computer Graphics Outline Least Squares with Generalized Errors Robust Least Squares Constrained Least Squares Practical Least-Squares for Computer Graphics Outline Least Squares with Generalized Errors Robust Least Squares

More information

Animation. CS 465 Lecture 22

Animation. CS 465 Lecture 22 Animation CS 465 Lecture 22 Animation Industry production process leading up to animation What animation is How animation works (very generally) Artistic process of animation Further topics in how it works

More information

COMS 4771 Clustering. Nakul Verma

COMS 4771 Clustering. Nakul Verma COMS 4771 Clustering Nakul Verma Supervised Learning Data: Supervised learning Assumption: there is a (relatively simple) function such that for most i Learning task: given n examples from the data, find

More information

Lecture 8: The EM algorithm

Lecture 8: The EM algorithm 10-708: Probabilistic Graphical Models 10-708, Spring 2017 Lecture 8: The EM algorithm Lecturer: Manuela M. Veloso, Eric P. Xing Scribes: Huiting Liu, Yifan Yang 1 Introduction Previous lecture discusses

More information

Convexization in Markov Chain Monte Carlo

Convexization in Markov Chain Monte Carlo in Markov Chain Monte Carlo 1 IBM T. J. Watson Yorktown Heights, NY 2 Department of Aerospace Engineering Technion, Israel August 23, 2011 Problem Statement MCMC processes in general are governed by non

More information

Animating Non-Human Characters using Human Motion Capture Data

Animating Non-Human Characters using Human Motion Capture Data Animating Non-Human Characters using Human Motion Capture Data Laurel Bancroft 1 and Jessica Hodgins 2 1 College of Fine Arts, Carngie Mellon University, lbancrof@andrew.cmu.edu 2 Computer Science, Carnegie

More information