11 1 remeshing
play

11.1 Remeshing Hao Li http://cs621.hao-li.com 1 Outline What is - PowerPoint PPT Presentation

Spring 2017 CSCI 621: Digital Geometry Processing 11.1 Remeshing Hao Li http://cs621.hao-li.com 1 Outline What is remeshing? Why remeshing? How to do remeshing? 2 Outline What is remeshing? Why remeshing? How to do


  1. Spring 2017 CSCI 621: Digital Geometry Processing 11.1 Remeshing Hao Li http://cs621.hao-li.com 1

  2. Outline • What is remeshing? • Why remeshing? • How to do remeshing? 2

  3. Outline • What is remeshing? • Why remeshing? • How to do remeshing? 3

  4. Definition Given a 3D mesh • Already a manifold mesh Compute another mesh • Satisfy some quality requirements • Approximate well the input mesh 4

  5. Outline • What is remeshing? • Why remeshing? • How to do remeshing? 5

  6. Motivation Unsatisfactory “raw” mesh • By scanning or implicit representations 6

  7. Motivation Unsatisfactory “raw” mesh • By scanning or implicit representations Improve mesh quality for further use 7

  8. Motivation Unsatisfactory “raw” mesh • By scanning or implicit representations Improve mesh quality for further use • Modeling: easy processing • Simulation: numerical robustness • …… Quality requirements • Local structure • Global structure 8

  9. Local structure Element type • Triangles vs. quadrangles all-quad mesh all-triangle mesh quad-dominant mesh 9

  10. Local structure Element type • Triangles vs. quadrangles 10

  11. Local structure Element type • Triangles vs. quadrangles Element shape • Isotropic vs. anisotropic 11

  12. Local structure Element type • Triangles vs. quadrangles Element shape • Isotropic vs. anisotropic Element distribution • Uniform vs. adaptive 12

  13. Local structure Element type • Triangles vs. quadrangles Element shape • Isotropic vs. anisotropic Element distribution • Uniform vs. adaptive Element alignment • Preserve sharp features and curvature lines 13

  14. Global structure Valence of a regular vertex Interior vertex Boundary vertex Triangle mesh 6 4 Quadrangle mesh 4 3 14

  15. Global structure Valence of a regular vertex Interior vertex Boundary vertex Triangle mesh 6 4 Quadrangle mesh 4 3 Different types of mesh structure • Irregular • Semi-regular: multi-resolution analysis / modeling • Highly regular: numerical simulation • Regular: only possible for special models 15

  16. Outline • What is remeshing? • Why remeshing? • How to do remeshing? 16

  17. Outline • What is remeshing? • Why remeshing? • How to do remeshing? - Isotropic remeshing - Anisotropic remeshing 17

  18. Outline • What is remeshing? • Why remeshing? • How to do remeshing? - Isotropic remeshing - Anisotropic remeshing 18

  19. Isotropic remeshing Incremental remeshing • Simple to implement and robust • Not need parameterization • Efficient for high-resolution input Variational remeshing • Energy minimization • Parameterization-based → expensive • Works for coarse input mesh Greedy remeshing 19

  20. Isotropic remeshing Incremental remeshing • Simple to implement and robust • Not need parameterization • Efficient for high-resolution input Variational remeshing • Energy minimization • Parameterization-based → expensive • Works for coarse input mesh Greedy remeshing 20

  21. Local remeshing operators Edge Edge Edge Vertex Collapse Split Flip Shift 21

  22. Incremental remeshing Specify target edge length L L max = 4/3 * L; L min = 4/5 * L; Iterate: 1. Split edges longer than L max 2. Collapse edges shorter than L min 3. Flip edges to get closer to optimal valence 4. Vertex shift by tangential relaxation 5. Project vertices onto reference mesh 22

  23. Edge split L max 1 1 2 L max 2 L max Edge Split � � 1 � � | L max − L | 2 L max − L = � � � � 4 ⇒ L max = 3 L Split edges longer than L max 23

  24. Edge collapse L min L min L min 3 3 2 L min 2 L min Edge Collapse � � 3 � � | L min − L | 2 L min − L = � � � � 4 ⇒ L min = 5 L Collapse edges shorter than L min 24

  25. Edge flip Optimal valence • 6 for interior vertices • 4 for boundary vertices 25

  26. Edge flip Optimal valence • 6 for interior vertices • 4 for boundary vertices Edge Improve valences Flip • Minimize valence excess -1 4 (valence( v i ) − opt valence( v i )) 2 � +1 +1 i =1 -1 26

  27. Vertex shift Local “spring” relaxation • Uniform Laplacian smoothing • Barycenter of one-ring neighborhood 1 Vertex � c i = p j Shift valence( v i ) j ∈ N ( v i ) 27

  28. Vertex shift Local “spring” relaxation • Uniform Laplacian smoothing p i • Barycenter of one-ring neighborhood c i 1 � c i = p j valence( v i ) j ∈ N ( v i ) 28

  29. Vertex shift n i Local “spring” relaxation • Uniform Laplacian smoothing p i • Barycenter of one-ring neighborhood c i tangent 1 � c i = p j valence( v i ) j ∈ N ( v i ) Keep vertex (approx.) on surface project • Restrict movement to tangent plane I − n i n T � ⇥ p i ← p i + λ ( c i − p i ) i 29

  30. Vertex projection Onto original reference mesh • Find closet triangle • Use BSP to accelerate → O (log n ) • Barycentric interpolation to compute position & normal project 30

  31. Incremental remeshing Specify target edge length L Iterate: 1. Split edges longer than L max 2. Collapse edges shorter than L min 3. Flip edges to get closer to optimal valence 4. Vertex shift by tangential relaxation 5. Project vertices onto reference mesh 31

  32. Remeshing result 32

  33. Adaptive remeshing 33

  34. Adaptive remeshing • Compute maximum principle curvature on reference mesh • Determine local target edge length from max- curvature • Adjust edge split / collapse criteria accordingly 34

  35. Feature preservation 35

  36. Feature preservation Define feature edges / vertices • Large dihedral angles • Material boundaries Adjust local operators • Do not touch corner vertices • Do not flip feature edges • Collapse along features • Univariate smoothing • Project to feature curves 36

  37. Isotropic remeshing Incremental remeshing • Simple to implement and robust • Not need parameterization • Efficient for high-resolution input Variational remeshing • Energy minimization • Parameterization-based → expensive • Works for coarse input mesh Greedy remeshing 37

  38. Voronoi Diagram 38

  39. Voronoi Diagram Divide space into a number of cells 39

  40. Voronoi Diagram Divide space into a number of cells Dual graph: Delaunay triangulation 40

  41. Centroidal Voronoi Diagram For each cell The generating point = mass of center non CVD CVD 41

  42. Centroidal Voronoi Diagram Compute CVD by Lloyd relaxation 1. Compute Voronoi diagram of given points p i 2. Move points p i to centroids c i of their Voronoi cells V i 3. Repeat steps 1 and 2 until satisfactory convergence � V i x · ρ ( x ) d x p i ← c i = � V i ρ ( x ) d x 42

  43. Centroidal Voronoi Diagram Compute CVD by Lloyd relaxation 1. Compute Voronoi diagram of given points p i 2. Move points p i to centroids c i of their Voronoi cells V i 3. Repeat steps 1 and 2 until satisfactory convergence � V i x · ρ ( x ) d x p i ← c i = � V i ρ ( x ) d x CVD maximizes compactness • Minimize the energy: ⇥ ρ ( x ) ⇤ x � p i ⇤ 2 d x ⇥ min � V i i 43

  44. Variational remeshing 1. Conformal parameterization of input mesh 2. Compute local density 3. Perform in 2D parameter space A. Randomly sample according to local density B. Compute CVD by Lloyd relaxation 4. Lift 2D Delaunay triangulation to 3D 44

  45. Variational remeshing 45

  46. Adaptive remeshing 46

  47. Feature preservation 47

  48. Outline • What is remeshing? • Why remeshing? • How to do remeshing? - Isotropic remeshing - Anisotropic remeshing 48

  49. Anisotropic remeshing Artist-designed models • Conform to the anisotropy of a surface 49

  50. Anisotropic remeshing [Alliez et al. 2003] Anisotropic Polygonal Remeshing. 50

  51. Anisotropic remeshing [Alliez et al. 2003] Anisotropic Polygonal Remeshing. input principal output sampling meshing mesh direction fields mesh 51

  52. Anisotropy Differential geometry • A local orthogonal frame: min/max curvature directions and normal 52

  53. 3D curvature tensor k > 0 k = 0 Isotropic spherical planar k min > 0 k min < 0 k min = 0 Anisotropic k max > 0 k max > 0 2 principal directions k max > 0 elliptic parabolic hyperbolic 53

  54. Principal direction fields min curvature max curvature overlay 54

  55. Flattening to 2D piecewise linear interpolation of 2D tensors 2D tensor field one 3D tensor discrete conformal using barycentric per vertex parameterization coordinates 55

  56. 2D direction fields • Regular case minor foliation major foliation principal foliations 56

  57. 2D direction fields • Singularities umbilic (spherical point) 2D tensor proportional to identity trisector wedge 57

  58. Umbilics 58

  59. Umbilics trisector wedge 59

  60. Lines of curvature minor net major net overlay 60

  61. Lines of curvature minor net major net 61

  62. Overlay • Overlay curvature lines in anisotropic regions • Add umbilical points in isotropic regions 62

  63. Vertices intersect lines of curvatures 63

  64. Edges straighten lines of curvatures + Delaunay triangulation near umbilics 64

  65. Resolve T-junctions T-junction 65

Recommend


More recommend