CMU-CS-00-163
Computer Science Department
School of Computer Science, Carnegie Mellon University



CMU-CS-00-163

Believable Automatically Synthesized Motion
by Knowledge-Enhanced Motion Transformation

F. Sebastian Grassia

August 2000

Ph.D. Thesis

CMU-CS-00-163.ps (with Color)
CMU-CS-00-163.ps.gz (with Color)
CMU-CS-00-163-bw.ps (Black & White)
CMU-CS-00-163-bw.ps.gz (Black & White)
CMU-CS-00-163.pdf


Keywords: Computer animation, automatic motion synthesis, motion editing, motion transformation, knowledge based animation, believable character animation


Automatic synthesis of character animation promises to put the power of professional animators in the hands of everyday would-be filmmakers, and to enable rich behaviors and personalities in 3D virtual worlds. This goal has many difficult sub-problems,including how to generate primitive motion for any class of action (run, jump, sigh, etc.) satisfying any goals and in any style (e.g. sad, hurried, like George walks, etc.), how to parameterize these actions at a high level while allowing detailed modifications to the result, and how to combine the primitive motions to create coherent sequences and combinations of actions. Previous approaches to automatic motion synthesis generally appeal to some combination of physics simulation and robotic control to generate motion from a high-level description.In addition to being generally difficult to implement, these algorithms are limited to producing styles that can be expressed numerically in terms of physical quantities.

In this thesis we develop a new automatic synthesis algorithm based on motion transformation, whichproduces new motions by combining and/or deforming existing motions. Current motion transformation techniques are low to mid level tools that are limited in the range and/or precision of deformations they can make to a motion or groups of motions. We believe these limitations follow from treating the motions as largely unstructured collections of signals. Consequently,the first contribution of our work is to create a powerful, general motion transformation algorithm that combines the strengths of previous techniques by structuring input motions in a way that allows us to combine the effects of several transformation techniques.

To utilize this algorithm in an automatic setting,we must be able to encapsulate control rules in primitive motion generators. We accomplish this by developing the "motion model,"which contains rules for transforming sets of example motions for a specific class of action. We show that because the example motions already contain detailed information about the action,the rules can be formulated on general properties of the action,such as targets/goals,rather than low-level properties such as muscle activations. This not only makes the rules relatively easy to devise, but allows a single motion model to generate motion in any style for which we can provide a few example motions. In the course of our experimentation we developed fifteen different motion models for humanoid character animation, several of which possess multiple styles (mainly derived from motion captured data).

After developing motion models,we continue to utilize knowledge encapsulation to address the problems of combining the output of motion models sequentially (segueing)and simultaneously (layering), collectively known as "transitioning. "Because of the action-specific knowledge we store in motion models, we are able to create much richer and higher quality transitions than past approaches. Our current results enable us to animate coherent stories, iteratively refining our initial directorial-like specification, in near-real-time. Some of our results can be viewed at http://www.cs.cmu.edu/~spiff/thesis/animations.htm#chapter8.

222 pages


Return to: SCS Technical Report Collection
School of Computer Science homepage

This page maintained by reports@cs.cmu.edu