Parameterization
Introduction The goal of parameterization is to attach a coordinate system to the object In particular, assign (2D) texture coordinates to the 3D vertices One application of mesh parameterization is texture mapping
UVMapper in Blender
Introduction (cont) Another class of application concerns remeshing algorithm converting from a mesh representation into an alternative one
Introduction (cont) In summary, constructing a parameterization of a triangulated surface means finding a set of coordinates (ui,vi) associated to each vertex i. Moreover, the parameter space does not self-intersect. Self-intersect
Mappings in the PMP Book 5.3 Barycentric mapping Tutte-Floater Discrete Laplacian (Laplace-Beltrami) 5.4 Conformal mapping 5.4.2 Least square conformal maps 5.4.4 (Geometric-based) ABF (angle-based flattening) [5.5 Distortion analysis based methods]
Barycentric Mapping One of the most widely used Based on Tutte’s barycentric mapping theorem from graph theory [Tutte60]
Wikipedia Convex combination Barycentric coordinate system
Barycentric Mapping (cont) Fixing the vertices of the boundary on a convex polygon. The coordinates at the internal vertices are found by solving the equation. One simple way: (without considering mesh geometry)
1 3 2 4 5 7 6 Example
Ax = b, Solved by Gauss Seidel DETAILS
Other Alternatives Discrete harmonic coordinates [Eck et al 1995] Mean value coordinates [Floater 2003]
Mean Value Coordinate
For some surfaces, fixing the boundary on a convex polygon may be problematic “Free” boundary
Conformal Mapping Iso-u and iso-v lines are orthogonal Minimize mesh distorsion A conformal parameterization transforms a small circle into a small circle. It is locally a similarity transform.
Types of Distortion L stretch, L shear, AngD Isometric (length-preserving) Conformal (angle-preserving) Equi-areal (area-preserving) Global isometric paramterization only exists for developable surfaces, with vanishing Gaussian curvature K(p) = 0 at all surface points a developable surface is a surface with zero Gaussian curvature. That is, it is a "surface" that can be flattened onto a plane without distortion (i.e. "stretching" or "compressing").
[Differential Geometry Primer] Gaussian curvature
Gradient in a Triangle X, Y: orthonormal basis of the triangle xi, xj, xk: vertex coordinates in the XY basis Study the inverse of parameterization: maps (X,Y) of the triangle to a point (u,v) DETAILS u intersects the iso-u lines; v intersects the iso-v lines Conformality condition iso-u lines iso-v lines
Least Square Conformal Map Only developable surfaces admit a conformal paramterization. For general (non-developable) surface, LSCM minimizes an energy ELSCM that corresponds to the non-conformality of the application Mimizing a quadratic form ELSCM is invariant to translation and rotation in the parametric space. To have a unique minimizer, it is required to fixed at least two vertices. From [Levy et al.2002], if the pinned vertices are chosen on the boundary, all the triangles are consistently oriented (no flips).
Quadratic Optimization Quadratic form: a polynomial function that the degree is not larger than two. G is symmetric Minimizer occurs at its stationary point:
Least Square Minimize the sum of residuals: F is a quadratic form (m > n) Minimize the sum of residuals: F is a quadratic form Minimizer found at stationary point
Least Square with Reduced D.O.F. Free parameters Lock parameters
1 3 2 2 1 a 2 3 b 3 1 c Fixed vertices 1 & 2 (u1,v1) & (u2,v2) locked Variable change columns swap -AaRMa AaMa
Af Al Af Al
ELSCM is invariant to translation and rotation in the parametric space ELSCM is invariant to translation and rotation in the parametric space. To have a unique minimizer, it is required to fixed at least two vertices.
Angle-Based Flattening (ABF) [Sheffer & de Sturler 2000] Constrained quadratic optimization with equality constraints Nonlinear optimization Constraints: (wheel consistency) Finding (ui,vi) coordinates, in terms of angles, a Stable (ui,vi) to ai conversion
Wheel Consistency b3 g2 c a b b2 g3 b1 g1
1963 1995 2003 2002
Segmentation and atlas Other Issues Segmentation and atlas
Model Segmentation Planar parameterization is only applicable to surfaces with disk topology Closed surfaces and surfaces with genus greater than zero have to be cut prior to planar parameterization Cut to reduce complexity (to reduce distortion) Cut introduce cross-cut discontinuities Segmentation technique (partition the surface into multiple charts) and seam generaton technique (introduce cuts into the surface but keep it as a single chart)
Numerical Optimization From “Mesh Parameterization, Theory and Practice”, Siggraph 2007 Coursenote
Sparse Linear System SOR (successive over-relaxation) Simplest, both from the conceptual and the implementation points of view
SOR (cont) New Update Scheme: Successive Over-Relaxation 1w<2
Other Methods Conjugate gradient method Sparse direct solvers (LU) Summary SOR-like methods are easy to understand and implement, but do not perform well for more than 10K variables Direct methods are most efficient, but consume considerable amounts of memory
References “Polygon Mesh Processing”, Mario Botsch, Leif Kobbelt, Mark Pauly, Pierre Alliez and Bruno Levy, AK Peters, 2010 “Mesh Parameterization: Theory and Practice”, Kai Hormann, Bruno Lévy and Alla Sheffer, ACM SIGGRAPH Course Notes, 2007 “Least Squares Conformal Maps for Automatic Texture Atlas Generation”, Bruno Lévy, Sylvain Petitjean, Nicolas Ray and Jérome Maillot, ACM SIGGRAPH conference proceedings, 2002
Ai Ab Ai Ab BACK
[From Siggraph Course 2007] Study inverse of parameterization (X,Y) (u,v) (li, lj, lk) barycentric coordinates, computed as:
MT solely depends on the geometry of the triangle T Similarly, we can get u= MT solely depends on the geometry of the triangle T BACK