Title: Motion Graphs
1Motion Graphs
- Lucas Kovar
- Michael Gleicher
- Frederic Pighin
- University of Wisconsin-Madison
- University of Southern California
SIGGRAPH 2002
5. 9. 2006 - Presented by Nahyup Kang -
2Outline
- Introduction
- Related Works
- Background
- Motion Graph Construction
- Extracting Motion
- Path Synthesis
- Conclusion
3Introduction
- Realistic Human Motion is very important
- Video game
- Movie
- Motion Capture
- Good solution
- Hard to reuse
- Modify
- Edit
4Introduction
- Goal
- Retain the realism of motion capture
- Give a user the ability to control and direct a
character - Example
- With general walking motion sequence
- Generate special path of walking motion
5Related Work
- Editing individual clips of motion
- Retargeting Gleicher 1998 Lee and Shin 1999
- Multi-target blends
- Linear Interpolation Wiley and Hahn 1997
- Radial Basis Function Rose et al. 1998
- Move Trees Mizuguchi et al. 2001
- Game industry
- Manual Creation
- Motion Transition
- Perlin 1995 Rose et al. 1996 Lee 2000
6Background
- Motion Capture Data Structure
Root Joint End Effector
7Motion Capture Data Sample
HIERARCHY ROOT Hips OFFSET 0.00 0.00 0.00
CHANNELS 6 Xposition Yposition Zposition
Zrotation Xrotation Yrotation JOINT LeftHip
OFFSET 3.29 0.00 0.00 CHANNELS 3
Zrotation Xrotation Yrotation JOINT
LeftKnee . MOTION Frames 30
Frame Time 0.033333 10.87 36.65 13.54 8.70
1.67 91.18 10.89 9.41 -1.80 -2.30 7.50 12.08 0.00
-10.56 0.00 -13.95 10.19 2.52 1.45 7.58 -10.90
0.00 -12.38 0.00 -2.30 7.22 -0.10 -0.13 0.00 5.48
48.69 -5.16 13.44 -10.40 -22.07 -14.50 -0.21
-5.66 -0.02 7.72 0.00 -7.17 -52.62 2.63 -1.95
-1.90 -20.04 -18.84 0.16 -4.85 0.01 0.00 35.36
0.00 1.77 -36.47 -2.39
8Background
- General Representation
- F Number of Frames
- J Number of Joints
- t Frame Index
9Motion Graph Construction
- Motion Graph
- Directed Graph
- Edge
- Correspond to clip of motion
- Node
- Choice point connecting these clips
10Motion Graph Construction
Where is the proper point to make an edge?
11Detecting Candidate Transitions
- Find similar frames
- How about vector norm of frame?
- Priority of the joints are ignored
- No meaningful way to assign fixed weights
- Identifying compatible coordinate systems are
necessary - Joint velocities, accelerations, higher-order
derivatives are necessary.
12Pose Distance Metric
13Selecting Transition Points
- Local minimum in the distance function
- Transition better than its neighbors
- Local minimum with small error values
- Candidate Transition Points
14Creating Transitions
- Blending frames to with frames
to - Aligning
- On frame p linearly interpolate
- Blending Weight?
15Creating Transitions
- Linear blending
- Easy and simple and fast
- The constraints in the motion can be violated
- Foot sliding (footskate)
- We have to correct this violation
- Treat constraints as binary signal
- Blending this signal
- Enforce this blended constraints as a
post-processing step
16Pruning The Graph
- Can Motion Graphs synthesize motion indefinitely?
- NO! There may be deadend!
- Compute Strongly Connected Components of graph
- Remove any edge that does not attach two node in
the largest SCC.
17Extracting Motion
- How to play the motion?
- Exactly How to traverse the Graph?
- Converting Graph Walks to Motion
18Converting Graph Walks To Motion
- Every edge on the motion graph is a piece of
motion. - Aligning correct location and orientation of
pieces - Footskate clean-up Kovar et al. 2002
19Searching For Motion
- Problem of finding motion that satisfies
user-specified requirements - Graph Search Problem
- Metric
- Time elapsed
- Distance Traveled
- g(w,e) user define nonnegative error evaluator
- Find the path that minimize f
- Branch and Bound
20Deciding What To Ask For
- g should
- give some sort of guidance throughout the entire
motion - be no more restrictive than necessary
- be balanced.
21Path Synthesis
- Implementing Path Synthesis
- Cost Function Design
- Type Change
22Path Synthesis
- Application Of Path Synthesis
- Interactive Control
- Go left!
- Make left path immediately.
- Pre-compute a sequence of graph walks that fits
straight line path - High-Level Keyframing
- Path with appropriate action type
- Back-end for animating
- The path and action type can be specified by a
high-level process - Motion graph fill in the detail
- Crowds
- Can be applied to several characters in parallel.
23Path Synthesis
- Results
- Enjoy the movie clip
24Discussion Conclusion
- Framework for generating realistic, controllable
motion through a database of motion capture. - Graph is automatically constructed among
different piece of motion - Finding the candidate transitions is bottleneck.
- Transition Threshold is manually selected.
- Motion parameterization is not considered.
25End
- Thank you.
- Question and Comment.