1 / 32

Pose-independent Simplification of Articulated Meshes

Pose-independent Simplification of Articulated Meshes. Christopher DeCoro Szymon Rusinkiewicz. Motivation. Decimation enables complex scenes Interactive rendering Automatic Level of Detail Non-static geometry crucial for movies and games Goal: single decimated mesh for multiple poses

mistyb
Download Presentation

Pose-independent Simplification of Articulated Meshes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pose-independent Simplification of Articulated Meshes Christopher DeCoro Szymon Rusinkiewicz

  2. Motivation • Decimation enables complex scenes • Interactive rendering • Automatic Level of Detail • Non-static geometry crucial for movies and games • Goal: single decimated mesh for multiple poses • Lower cost than view / pose-dependent LOD • Framework for geometric processing on non-static geometry

  3. Pose-Independent Simplification • Current methods consider a single pose • Do not preserve enough detail for some poses • Coloration based on triangle area, note uniform color Reference from “Surface Simplification using Quadric Error Metrics”, M. Garland, P. Heckbert, 1997

  4. Pose-Independent Simplification • Heuristics for adapting static simplification • Bending joints then applying • Preserve high detail near joints • Drawbacks: manual intervention,excessive preservation of detail

  5. Pose-Independent Simplification • Adapt decimation to considererror across all poses • Preserve detail where necessary to allow deformation • Preserve detail only where necessary

  6. Simplifying Articulated Models • Observation: need to specify meaningful, but restrictedclass of deformation • Kinematic skeletons with linear blend skinning • Probability distribution constraining deformations • Major result: define pose-independent quadric containing information about all poses • Computed as a preprocess • Used by standard iterative decimation method • Generalizes quadric from union of multiple planes tounion over multiple planes and poses

  7. Framework • Preprocess • Monte Carlo sampling of pose probability distribution • Build pose-independent quadrics • Run-Time • Standard iterative contraction • Update skinning weight vectors

  8. Outline • Framework • Background • Kinematic skeletons • Linear blend skinning • Pose probability distributions • QSlim • Algorithm • Results

  9. Kinematic Skeletons • Heirarchy of affine linear transformations (“bones”) • Each non-root bone defined in frame of unique parent • Changes to parent frame affect all descendent bones

  10. Linear Blend Skinning • Each vertex of skin potentially influenced by all bones • Normalized weight vertex wv gives influence of each bone transform • When bones move, influenced vertices also move • We can compute a transformation Mv for a skinned vertex • For each bone • Compute transformation Nb from bind pose to bone coordinates • Compute global bone transformation Mb from parent transformation • For each vertex • Take a linear combination of bone transforms • Apply transformation to vertex in original pose

  11. Assigning Probability Distributions • Simplest: Box functions • Range of values for which probability is non-zero • More control: Gaussian distributions • Assign “preferred angle” (mean), “stiffness” (standard deviation) • Corresponds to intuitive quantities • Detailed control: sampled functions • Pre-defined animations • Motion capture • All of these are high-dimensional functions withcomplex correlations • Can reduce dimensionality by letting Mb = Translate*Rotate*Scale

  12. QSlim Simplification Algorithm • Combine framework, primitive, and metric: QSlim • Framework: Greedy selection • Primitive: Edge collapse • Metric: Quadric error • Compute initial quadrics Qv for every vertex v • Compute optimal error for each edge collapse • Place into min-priority queue keyed on collapse cost • While the queue is not empty • Collapse the edge on the top of the queue to a single vertex • Update the costs of all edges in the affected neighborhood Reference from “Surface Simplification using Quadric Error Metrics”, M. Garland, P. Heckbert

  13. Quadric Error Metric • Compute sum-of-squared distances over all planes • Goal is to approximate distance of simplified to original mesh • Each vertex has associated set of constraint planes • We can factor out vertices from the summation • Factor planes into error quadrics (symmetric 4x4 matrices) • Avoids requirement to keep list of planes; plane union as quadric addition • Common math technique to represent quadratic form as a matrix multiplication

  14. Outline • Framework • Background • Algorithm • Expectations • Overview • Pose-independent Quadric Derivation • Blend-weight Update Rule • Results

  15. Intuitive Expectations • Suppose we have a “leg” model • Joint bends at the knee, 90 degree range of motion • What do we expect to see? • Areas away from the joints dramatically simplified • Crease at the bottom preserved in high detail • Rounded top maintains mid-level of detail

  16. Incorporating Multiple Poses • Mohr & Gleicher 03 – Arbitrary Deformation • Consider error in each pose for every collapse • Our Method – Linear Blend Skinning • Consider all poses in a preprocess • Collapses are independent of pose Foreach collapse Foreach pose Compute error Perform collapse Foreach vertex Foreach pose Compute quadric Combine quadrics from all poses Foreach collapse Use single quadric to compute error Perform collapse

  17. Pose-independent Metric • Each vertex v corresponds to vertex vp in pose P • The quadric for v in pose P, Qv(P), can be computed directly • Expected point-to-plane distance over all poses, weighted by  • Our goal will be to factor the vertices out of the integral, and define a pose-independent quadric that incorporates all poses

  18. Algorithm Overview: • Integrated over every pose P • Compute initial quadrics Qv(P) for every vertex v • Map quadrics into reference coordinate system • Compute optimal error for each edge collapse • Place into min-priority queue keyed on collapse cost • While the queue is not empty • Collapse the edge on the top of the queue to a single vertex • Compute new skin influence vector • Update the costs of all edges in the affected neighborhood • Similar structure to QSlim • Makes large changes to initial quadric computation • We define a metric, which is independent of framework

  19. Remapping Quadrics • A vertex v in pose P is transformed by Mv(P) • Suppose we compute error d(v) integrated over all poses • We can let vP = Mv(P)v, then factor out Qvindependentof pose • Equivalent to applying quadric update rule with Mv-1

  20. Monte Carlo Integration • Integral over poses can not be evaluated analytically • Standard quadrature exponential in dimensionality • We have up to 12 degrees of freedom per bone • Evaluate pose-independent quadrics withMonte Carlo sampling • Recursively stratified to reduce variance • In practice: good results with 10-20 poses

  21. Weight Update Rule • New vertices must be given a bone influence vector • Each parent exerts an influence on the child per bone • Directly proportional to bone influence on parent vertex • Influence falls-off based on distance • Use the following linear interpolation system: • Strong empirical justification

  22. Outline • Framework • Background • Algorithm • Results • Intuitive results • Weight-update rule validation • Simplification results • Quantitative analysis • Timing

  23. Intuitive Results • Previously, we discussed our intuitive expectations • We show various levels of simplification (26%, 13, 5, 2.5) • We can see these were achieved in the results • Crease kept in highest detail • Simplified in time 32% longer than Qslim colored randomly coloredby area Less simplified  More simplified

  24. Simplification Results • Standard QSlim is on the left, our method is on the right • 64k polygons, 16 poses, 25% longer than standard QSlim

  25. Simplification Results • Our method better approximates than QSlim/Straight Pose • Leg was simplified, then bent. 0.5% resolution, 35% time penalty

  26. Changing Probability Distribution • Left knee has larger range of motion, thus greater detail • Note that region at crease is flat under deformation

  27. Quantitative Comparison • Used the Metro tool to compare generated meshes • Computes the approximate Hausdorff distance • We reduce variance of approximation across poses

  28. Future Work • Apply to more general classes of deformations • Linear Free Form Deformation is a natural choice • When geometry is known, but not skeleton, we require fitting transforms • Potentially fit linear transforms to non-linear deformations • Determine the effect of importance sampling • Does it effectively reduce variance? • Analyze under which conditions this is qualitatively effective • Subtle effect for the meshes seen • Certain conditions may result in more drastic benefits

  29. Algorithm Timings • Compares favorably to standard QSlim • Considering 16 poses only 25% more than single pose

  30. Algorithm Timings • Compares favorably to standard Qslim • About 25% overhead w/ 16 samples, less with fewer samples • For larger models, QSlim iterative contraction dominates • Our preprocess is O(kn), the contraction is O(kn + n log n)

  31. Weight-update Rule Tests • We show both procedural and automatic weights • Procedural weights are “ground truth” • Our method is virtually indistinguishable from ground truth

More Related