dynamic geometry processing
play

Dynamic Geometry Processing EG 2012 Tutorial Will Chang, Hao Li, - PowerPoint PPT Presentation

Dynamic Geometry Processing EG 2012 Tutorial Will Chang, Hao Li, Niloy Mitra, Mark Pauly, Michael Wand Tutorial: Dynamic Geometry Processing 1 Eurographics 2012, Cagliari, Italy Articulated Global Registration Introduction and Overview


  1. Dynamic Geometry Processing EG 2012 Tutorial Will Chang, Hao Li, Niloy Mitra, Mark Pauly, Michael Wand Tutorial: Dynamic Geometry Processing 1

  2. Eurographics 2012, Cagliari, Italy Articulated Global Registration Introduction and Overview Tutorial: Dynamic Geometry Processing 2

  3. Eurographics 2012, Cagliari, Italy Articulated Global Registration • Complete models from dynamic range scans • No template, markers, skeleton, segmentation • Articulated models • Movement described by piecewise- rigid components Input Range Scans Reconstructed 3D Model Tutorial: Dynamic Geometry Processing 3

  4. Eurographics 2012, Cagliari, Italy Features • Handles large, fast motion • Incomplete scans (holes, missing data) • 1 or 2 simultaneous viewpoints • Optimization is over all scans Input Range Scans Reconstructed 3D Model Tutorial: Dynamic Geometry Processing 4

  5. Eurographics 2012, Cagliari, Italy Reconstructing Articulated Models • For every frame, determine • Labeling into constituent parts (per-vertex) • Motion of each part into reference pose (per-label) • Solve simultaneously for labels, motion, joint constraints Alignment Reference Unlabeled Labeled Labeled Tutorial: Dynamic Geometry Processing 5

  6. Eurographics 2012, Cagliari, Italy Algorithm Overview • Initialization Initialization • Global refinement • Post-process Global Refinement Post-process Tutorial: Dynamic Geometry Processing 6

  7. Eurographics 2012, Cagliari, Italy Algorithm Overview . . . Initialization – Coarse pairwise registration Initialization Labels (per-vertex) and Transformations (per-label) for a coarse registration Tutorial: Dynamic Geometry Processing 7

  8. Eurographics 2012, Cagliari, Italy Algorithm Overview Initialized Frames Initialization – Coarse pairwise registration Global refinement Global – Solve global model Refinement incorporating all frames Optimized labels, motion, joints, and geometry Tutorial: Dynamic Geometry Processing 8

  9. Eurographics 2012, Cagliari, Italy Algorithm Overview Initialized Frames Initialization – Coarse pairwise registration Global refinement Global – Solve global model Refinement incorporating all frames Post-process – Gather frames, reconstruct mesh Post- process Tutorial: Dynamic Geometry Processing 9

  10. Eurographics 2012, Cagliari, Italy Part I: Initialization Tutorial: Dynamic Geometry Processing 10

  11. Eurographics 2012, Cagliari, Italy Initialization Goal: To establish initial correspondence of consecutive frames Frame i and i+1 Registered Result Tutorial: Dynamic Geometry Processing 11

  12. Eurographics 2012, Cagliari, Italy Initialization 1. Point correspondence using feature descriptors Spin Image examples Frame i Frame i+1 Tutorial: Dynamic Geometry Processing 12

  13. Eurographics 2012, Cagliari, Italy Initialization 1. Point correspondence (R,t) (R,t) using feature descriptors 2. Transformation (R,t) per (R,t) (R,t) correspondence (R,t) 3. Cluster (R,t) (R,t) (R,t) (R,t) (R,t) Frame i Frame i+1 Transformation Space se(3) Tutorial: Dynamic Geometry Processing 13

  14. Eurographics 2012, Cagliari, Italy Initialization 1. Point correspondence using feature descriptors 2. Transformation (R,t) per correspondence 3. Cluster (R,t) Which (R,t)? 4. Optimize using “Graph Cuts” [Boykov et al. 2001] Frame i Frame i+1 Tutorial: Dynamic Geometry Processing 14

  15. Eurographics 2012, Cagliari, Italy Initialization 1. Point correspondence using feature descriptors (R,t) 1 2. Transformation (R,t) per correspondence 3. Cluster (R,t) (R,t) 2 4. Optimize using “Graph Cuts” [Boykov et al. 2001] (R,t) 3 Frame i Frame i+1 Tutorial: Dynamic Geometry Processing 15

  16. Eurographics 2012, Cagliari, Italy Initialization Result Both Frames Registered Result Tutorial: Dynamic Geometry Processing 16

  17. Eurographics 2012, Cagliari, Italy Part II: Global Refinement Tutorial: Dynamic Geometry Processing 17

  18. Eurographics 2012, Cagliari, Italy Global Refinement Initialized Global refinement Frames – Solve global model incorporating all frames Global Refinement Optimized labels, motion, joints, and geometry Tutorial: Dynamic Geometry Processing 18

  19. Eurographics 2012, Cagliari, Italy Dynamic Sample Graph (DSG) Sparse representation – Increases efficiency – Joints: part connectivity Continuously updating – Update samples from new surface data Dynamic Sample Extracted Graph (DSG) Joints Tutorial: Dynamic Geometry Processing 19

  20. Eurographics 2012, Cagliari, Italy Global Refinement Global Fit the DSG to all scans simultaneously (Global Fit) (Global Fit) Fit Alternating Optimization 1. Optimize Transformations 2. Optimize Labels 3. Update joint locations Update joint locations Repeat until convergence Dynamic Sample – 3-5 iterations/frame Graph (DSG) Input Update samples Scans Tutorial: Dynamic Geometry Processing 20

  21. Eurographics 2012, Cagliari, Italy Transformation Optimization • Align DSG as closely as possible to all scans • Labels fixed • Measure alignment using closest point distance Before After Tutorial: Dynamic Geometry Processing 21

  22. Eurographics 2012, Cagliari, Italy Transformation Optimization • Multi-part, multi-frame articulated Iterative Closest Point (ICP) • Update closest point • Solve for transformation • Repeat until convergence • Gauss-Newton for non- linear least squares (Converged) Tutorial: Dynamic Geometry Processing 22

  23. Eurographics 2012, Cagliari, Italy Joint Constraint Prevents parts from separating Two types of joints Ball Joints (3 DOF) – Hinge Joints (1 DOF) – Derived from part boundaries & transformations solved so far Reconstructed Joints Tutorial: Dynamic Geometry Processing 23

  24. Eurographics 2012, Cagliari, Italy Joint Constraint No Joints Ball Joints Ball and Only Hinge Joints Tutorial: Dynamic Geometry Processing 24

  25. Eurographics 2012, Cagliari, Italy Label Optimization • Change the labels to produce better alignment • Transformations fixed • Measure alignment using closest point distance Before After Tutorial: Dynamic Geometry Processing 25

  26. Eurographics 2012, Cagliari, Italy Label Optimization • Graph Cuts [Boykov et al. 2002] – Data constraint: minimize distance – Smoothness constraint: consolidate labels Before After Tutorial: Dynamic Geometry Processing 26

  27. Eurographics 2012, Cagliari, Italy Global Refinement: Step Through Optimizing Optimizing Transformations Transformations Optimizing Optimizing Weights Weights C? Update Update Samples Samples (Converged) Add Add next frame next frame Tutorial: Dynamic Geometry Processing 27

  28. Eurographics 2012, Cagliari, Italy Global Refinement: Fast Forward Tutorial: Dynamic Geometry Processing 28

  29. Eurographics 2012, Cagliari, Italy Post-processing • Gather all frames into reference pose • Resample surface, reconstruct mesh Tutorial: Dynamic Geometry Processing 29

  30. Eurographics 2012, Cagliari, Italy Results Tutorial: Dynamic Geometry Processing 30

  31. Eurographics 2012, Cagliari, Italy Results: Registration • Intel Xeon 2.5 GHz • 90 Frames • 7 Parts • 0.84 million points • 5000 DSG samples • Total 165 mins • 110 sec/frame Tutorial: Dynamic Geometry Processing 31

  32. Eurographics 2012, Cagliari, Italy Results: Registration • Intel Xeon 2.5 GHz • 90 Frames • 4 Parts • 0.48 million points • 2700 DSG samples • Total 66 mins • 44 sec/frame Tutorial: Dynamic Geometry Processing 32

  33. Eurographics 2012, Cagliari, Italy Results: Registration • Intel Xeon 2.5 GHz • 40 Frames • 10 Parts • 2.4 million points • 4000 DSG samples • Total 75 mins • 113 sec/frame Tutorial: Dynamic Geometry Processing 33

  34. Eurographics 2012, Cagliari, Italy Ground truth comparison Red: Ground-truth Blue: Reconstructed Tutorial: Dynamic Geometry Processing 34

  35. Eurographics 2012, Cagliari, Italy Results: Inverse Kinematics Tutorial: Dynamic Geometry Processing 35

  36. Eurographics 2012, Cagliari, Italy Limitations Piecewise rigid approximation Tutorial: Dynamic Geometry Processing 36

  37. Eurographics 2012, Cagliari, Italy Limitations Needs sufficient overlap Frame i+1 Frame i+2 Frame i Frame i+3 Tutorial: Dynamic Geometry Processing 37

  38. Eurographics 2012, Cagliari, Italy Limitations Needs sufficient overlap Frame i Frame i+1 Tutorial: Dynamic Geometry Processing 38

  39. Eurographics 2012, Cagliari, Italy Articulated Global Registration Implementation Details Tutorial: Dynamic Geometry Processing 39

  40. Eurographics 2012, Cagliari, Italy Major Implementation Issues Global registration T-step Simple outline of the essential steps Setting up the non-linear system for optimization Global registration W-step Setting up the graph-cut optimization Tutorial: Dynamic Geometry Processing 40

Recommend


More recommend