remeshing i
TRANSCRIPT
Remeshing Ig
RemeshingRemeshing
Given a 3D mesh find a “better” discreteGiven a 3D mesh, find a better discrete representation of the underlying surface
2
What is a good mesh?What is a good mesh?
• Equal edge lengths• Equal edge lengths
• Equilateral triangles
• Valence close to 6
3
What is a good mesh?What is a good mesh?
• Equal edge lengths• Equal edge lengths
• Equilateral triangles
• Valence close to 6
U if d ti li• Uniform vs. adaptive sampling
4
What is a good mesh?What is a good mesh?
• Equal edge lengths• Equal edge lengths
• Equilateral triangles
• Valence close to 6
U if d ti li• Uniform vs. adaptive sampling
• Feature preservationp
5
What is a good mesh?What is a good mesh?
• Equal edge lengths• Equal edge lengths
• Equilateral triangles
• Valence close to 6
Uniform vs adaptive sampling• Uniform vs. adaptive sampling
• Feature preservation
• Alignment to curvature lines
I t i i t i• Isotropic vs. anisotropic
6
What is a good mesh?What is a good mesh?• Equal edge lengthsEqual edge lengths
• Equilateral triangles
• Valence close to 6
Uniform vs adaptive sampling• Uniform vs. adaptive sampling
• Feature preservation
• Alignment to curvature lines
• Isotropic vs. anisotropic
• Triangles vs. quadrangles
7
Triangles vs. quadrangles
ApplicationsApplications
– Design– Reverse engineering– Simulation– Simulation– Visualization
8
Local StructureLocal Structure
• Element type• Element type– Triangle– Quadrangle– Polygonyg
9
Local StructureLocal Structure
• Element shape (isotropy vs anisotropy)• Element shape (isotropy vs anisotropy)
10
Local StructureLocal StructureElement distribution (sizing, grading)
Uniform AdaptiveInput 11
Local StructureLocal Structure• Element orientation
12
Local StructureLocal Structure
• Element orientation• Element orientation
13
Isotropic RemeshingIsotropic RemeshingWell-shaped elementsp
– for processing & simulation (numerical stability & efficiency)efficiency)
14
Two Fundamental ApproachesTwo Fundamental Approaches
• Parameterization based• Parameterization-based– map to 2D domain / 2D problem– computationally more expensive– works even for coarse resolution remeshingg
• Surface-oriented– operate directly on the surface– treat surface as a set of points / polygons in space– efficient for high resolution remeshing
15
Parameterization BasedParameterization Based
16
Parameterization BasedParameterization Based
parameter domain
17
Parameterization BasedParameterization Based
parameterize
18
Parameterization BasedParameterization Based
re-parameterize
19
Parameterization BasedParameterization Based
apply
20
Surface OrientedSurface Oriented
21
Surface OrientedSurface Oriented
sample
22
Surface OrientedSurface Oriented
filter
23
Surface OrientedSurface Oriented
back-project
24
Variational MethodsVariational Methods
• Minimize a global energy• Minimize a global energy– Both discrete and continuous degrees of freedom
• Connectivity, geometry
• What to optimizeWhat to optimize– Edge lengths, angles, triangle shapes,…
• Isotropic point sampling well shaped trianglesIsotropic point sampling well shaped triangles– Simple and effective
25
Parameterization-Based Remeshing[Alli t l ‘03][Alliez et al. ‘03]
• Compute 2D parameterization• Compute 2D parameterization– Conformal: only area distortion
S l 2D d i• Sample 2D domain– Density based on area distortion
• Triangulate
• Project back to 3D• Project back to 3D26
Isotropic 2D SamplingIsotropic 2D Sampling
• Density based random sampling• Density based random sampling– Does not guarantee uniform distance between
samples
27
Sampling EnergySampling Energy
• Given sites x and regions R minimize• Given sites xi and regions Ri, minimize
2( ) || ||k kE x x R R x x dx= −∑ ∫
S d t i t
1 11..
( , .., , , ..., ) || ||i
k k ii k x R
E x x R R x x dx= ∈∑ ∫
• Spreads out points
xi
R
xi
28
Sampling EnergySampling Energy
• Given sites x and regions R minimize• Given sites xi and regions Ri, minimize
2( ) || ||k kE x x R R x x dx= −∑ ∫
• If sites are fixed energy is minimized by the
1 11..
( , .., , , ..., ) || ||i
k k ii k x R
E x x R R x x dx= ∈∑ ∫
• If sites are fixed, energy is minimized by the Voronoi TesselationVoronoi cell Ri =
All points closer to xi than to other xj
29
Sampling EnergySampling Energy
• Given sites x and regions R minimize• Given sites xi and regions Ri, minimize
2( ) || ||k kE x x R R x x dx= −∑ ∫• If sites are fixed, energy is minimized by the Voronoi
1 11..
( , .., , , ..., ) || ||i
k k ii k x R
E x x R R x x dx= ∈∑ ∫
Tesselation
• Among all Voronoi tesselations, energy is minimized when sitesgyare centroids of cells =Centroidal Voronoi Tesselation
30
Varying Density2( ) ( ) || || d∑ ∫
Varying Density2
1 11..
( , .., , , ..., ) ( ) || ||i
k k ii k x R
E x x R R x x x dx= ∈
= −∑ ∫ ρ
R
xj
Initial Sample ScatterInitial Sample Scatter
Voronoi tesselation32
Optimized Sample PlacementOptimized Sample Placement
LloydLloyd
centroidal Voronoi tesselation
Uniform RemeshingUniform Remeshing
back-project
50kV50kV
Lloyd AlgorithmLloyd Algorithm
• Alternate:– Voronoi partitioning
Move sites to respective centroids– Move sites to respective centroids
35
Centroidal Voronoi DiagramsCentroidal Voronoi Diagrams
36
demo
Centroidal Voronoi DiagramsCentroidal Voronoi Diagrams
37
demo
Centroidal Voronoi DiagramsCentroidal Voronoi Diagrams
38
demo
Centroidal Voronoi DiagramsCentroidal Voronoi Diagrams
39
demo
Centroidal Voronoi TesselationCentroidal Voronoi Tesselation
• Lloyd converges slowly• Lloyd converges slowly– Stop when points “stop” moving
• Recent fast algorithm: direct optimization of the• Recent fast algorithm: direct optimization of the energy using quasi-Newton“On centroidal voronoi tessellation energy smoothness and fastOn centroidal voronoi tessellation—energy smoothness and fast computation” [Liu et al., TOG ’09]
40
Uniform vs. AdaptiveUniform vs. Adaptive
41
Uniform SamplingUniform Sampling
42
Adaptive SamplingAdaptive Sampling
43
LimitationsLimitations
• Closed meshes• Closed meshes– Need a good cut– Free boundary parameteriztion– Stitch seams afterwards
• Protruding legs– Sampling– Numerical problemsNumerical problems
44
Smart Cut, Free BoundarySmart Cut, Free Boundary
45
Free vs. Fixed BoundaryFree vs. Fixed Boundary
46
Visible SeamsVisible Seams
47
Naive Cut, Numerical ProblemsNaive Cut, Numerical Problems
48
Direct Surface Remeshing[Botsch et al. ’04]
• Avoid global parameterization• Avoid global parameterization– Numerically very sensitive– Topological restrictions
• Avoid local parameterizations– Expensive computationsExpensive computations
• Use local operators & back-projectionsUse local operators & back-projections– Resampling of 100k triangles in < 5s
49
Local Remeshing OperatorsLocal Remeshing Operators
Edge VertexEdge EdgeEdgeSplit
VertexShift
EdgeCollapse
EdgeFlip
50
Isotropic RemeshingIsotropic Remeshing
S if t t d l th LSpecify target edge length L
Compute edge length range [Lmin, Lmax]p g g g [ ]
Iterate:1. Split edges longer than Lmax
2. Collapse edges shorter than Lmin2. Collapse edges shorter than Lmin
3. Flip edges to get closer to valence 64 V t hift b t ti l l ti4. Vertex shift by tangential relaxation5. Project vertices onto reference mesh
51
Edge Collapse / SplitEdge Collapse / Split
52
Edge FlipEdge Flip
• Improve valences• Improve valences– Avg. valence is 6 (Euler)– Reduce variation
• Optimal valence is• Optimal valence is– 6 for interior vertices– 4 for boundary vertices
53
Edge FlipEdge Flip
• Improve valences• Improve valences– Avg. valence is 6 (Euler)– Reduce variation
• Optimal valence is Edge• Optimal valence is– 6 for interior vertices
EdgeFlip
1– 4 for boundary vertices
• Minimize valence excess +1 +1
-1
Minimize valence excess-1
54
Vertex ShiftVertex Shift
• Local “spring” relaxation• Local spring relaxation– Uniform Laplacian smoothing– Bary-center of one-ring neighbors
VertexVertexShift
55
Vertex ShiftVertex Shift
• Local “spring” relaxation• Local spring relaxation– Uniform Laplacian smoothing– Bary-center of one-ring neighbors
56
Vertex ShiftVertex Shift
• Local “spring” relaxation• Local spring relaxation– Uniform Laplacian smoothing– Bary-center of one-ring neighbors
tangent
• Keep vertex (approx.) on surface– Restrict movement to tangent plane
projectRestrict movement to tangent plane
57
Vertex ProjectionVertex Projection
• Project vertices onto• Project vertices onto original reference mesh
• Assign position & interpolated normal
project
interpolated normal
58
Remeshing ResultsRemeshing Results
Original
59
Remeshing ResultsRemeshing Results
Edge length DeviationEdge lengthdeviation (%)
Deviationfrom 60º
60
Feature Preservation?Feature Preservation?
61
Feature PreservationFeature Preservation
• Define features• Define features– Sharp edges– Material boundaries
• Adjust local operators– Don’t move corners– Collapse only along features
Don’t flip feature edges– Don t flip feature edges– Univariate smoothing
62
– Project to feature curves
Adaptive RemeshingAdaptive Remeshing
• Precompute max curvature• Precompute max. curvature on reference mesh
• Target edge length locally determined by curvaturedetermined by curvature
• Adjust split / collapse criteria
63
Next Time:Quad Dominant Meshing
64