You are on page 1of 67

Surface  Parametrization

Chapter 4
Flächenmodellierung
R. Grosso
Content

•  Motivation
•  Some History
•  Differential Geometry Background
•  Conformal and Harmonic mappings
•  The Spring Model
•  Some remarks: closed surfaces
•  Deformation Analysis
–  Most Isometric ParametrizationS

Flächenmodellierung  
Motivation

•  Literature
–  Siggraph Course Notes: Mesh Parametrization: Theory and
Practice, 2007. Kai Hormann, Bruno Levy and Alla Sheffer
–  Eurographics 2008 Full-Day Tutorial Geometric Modeling Based
on Polygonal Meshes
–  Surface Parameterization: a Tutorial and Survey. Michael S.
Floater and Kai Hormann

Flächenmodellierung  
Motivation

•  Texture mapping

Flächenmodellierung  
Motivation

•  Surface Fitting

Parameter domain

Flächenmodellierung  
Motivation

•  Mesh completion, surface reconstruction

Mesh completion, Kraevoy and Sheffer 2005

Flächenmodellierung  
Motivation

•  Remeshing

parameter domain

Flächenmodellierung  
Motivation

•  Mesh editing

Flächenmodellierung  
Motivation

•  Detail Mapping

Siggraph Course Notes 2007: Mesh Parameterization: Theory and Practice

Flächenmodellierung  
Motivation

•  Complex topology

segmentation and texture atlases for Isocharts, Zhou et al. 2004

Flächenmodellierung  
Some  History

•  Notes from Carlos A. Furuti,


www.progonos.com/furuti/index.html
•  Azimuthal orthographic "
projection
•  mentioned by Hipparchus "
200 B.C. but probably older
•  do not preserve angles and "
areas

                     Copyright  ©  2008  C.A.Furu:  

Flächenmodellierung  
Some  History

•  Azimuthal stereographic projection


•  attributed to Hipparchus, "
190 -120 B.C.
•  name given by d’Aiguillon "
1613
•  conformal: preserves angles "
but does not preserve areas
•  maps circles to circles

             Copyright  ©  2008  C.A.Furu:  

Flächenmodellierung  
Some  History

•  Mercator’s cylindrical conformal projection


•  Flemish cartographer, 1512 -1594
•  used navigation from "
the 16th century until present
•  any straight line between two "
points is a loxodrome (line of "
constant course on the sphere)
•  Mercator loxodrome bears "
the same angle from all "
meridians.
                 Copyright  ©  2008  C.A.Furu:  

Flächenmodellierung  
Some  History

•  Lambert’s azimuthal equal-area projection


•  Johann H. Lambert 1772
•  preserves areas
•  strong distortion in the "
boundary of the worldwide "
map

         Copyright  ©  2008  C.A.Furu:  

Flächenmodellierung  
Differential  Geometry

•  Surface S ⊂ R³

•  Assumptions:
–  Regular:
•  Diff. as many times as necessary"

•  are linearly independent

–  Note:
•  tangent"

•  normal

Flächenmodellierung  
Differential  Geometry

•  First fundamental form or metric tensor


gαβ = xα·xβ, α,β = 1,2"

ds2 = gαβ duα duβ quadratic form



⎛ g11 g12 ⎞ ⎛ E F ⎞
(g) = (I f ) = ⎜ = ⎜
⎝ g21 g22 ⎠ ⎝ F G ⎟⎠
⎟

det(gαβ ) = g > 0

Flächenmodellierung  
Differential  Geometry

•  Differentiable Manifold
–  Topological manifold Χ
•  Locally homeomorphic to euclidean space
–  Vα ⊂ Χ, Vα open
–  chart pair (Vα , Φα), Φα : Vα → R3
–  Atlas: set {(Vα , Φα)} which covers Χ with transition maps

–  if Φαβ (Rn→Rn) is Ck for all transition maps then the atlas {(Vα ,
Φα)} is Ck. In this case we say that the pair {Χ, {(Vα , Φα)} is
Ck differentiable manifold

Flächenmodellierung  
Differential  Geometry

φ φ’

u2 u’2

u1 u’1

Flächenmodellierung  
Parametrization

•  Notation:
–  S surface, (u1,u2) coordinates
–  S* second surface
–  f map, f: S→S*
–  A parametrization of S* is given by φ* = f◦φ
–  A point p in S* has the same coordinates as in S.

S f

φ S*
u2

φ*

u1
Flächenmodellierung  
Isometric  Mapping

•  Definition
f: S→S* is an isometric or length-preserving map if the length of
any arc on S* is the same as its pre-image on S"
We call f an isometry.
•  Theorem
–  A map f: S→S* is an isometry iff the coefficient of the first
fundamental form are the same, i.e. I = I*"
The surface S and S* are called isometric.

Flächenmodellierung  
Conformal  Mapping

•  Definition
f: S→S* is a conformal or angle-preserving map if the angle at the
intersection of two curves on S* is the same as the angle of
intersection of the corresponding curves on S.
•  Theorem
–  f: S→S* is conformal iff the first fundamental form are
proportional, i.e. I=η(u1,u2)I* ; η≠0 scalar

Flächenmodellierung  
Equiareal  Mapping

•  Definition
f: S→S* is an equiareal map if every set on S is mapped to a set
on S* with the same area
•  Theorem
–  f: S→S* is a equiareal map iff g=g*

•  Theorem
–  Every isometric mapping is conformal and equiareal
–  Every conformal and equiareal mapping is isometric

Flächenmodellierung  
Surface  Parametrization

•  Note:
–  Jf: Jacobian of f ⇒ If =JT⋅ J (2x2 Matrix)
–  Singular values of J (3x2 Matrix) are the square roots of the
eigenvalues of g"
Singular values of Jf: σi, Eigenvalues of g: λi ⇒ σi2 = λi

Then
f is isometric "

f is conformal"

f is equiareal

Flächenmodellierung  
Surface  Parametrization

•  Strategy for computing a surface parametrization


–  Ideal case: isometric mapping, but not possible in general.
Therefore, attempt one of the following mappings:
1.  Conformal: no distortion in angles
2.  Equiareal: no distortion in areas
3.  Minimize some combination of both

Flächenmodellierung  
Conformal  Map

•  Conformal map
–  complex transformation w=f(z) w,z ∈ C that preserves angles
–  f is analytic
–  z=x+iy; w=u+iv

–  It follows
Δu=0; Δv=0;
i.e. u(x,y) and v(x,y) are harmonic"

Flächenmodellierung  
Conformal  Map

•  Minimal surfaces: Plateau’s Problem


ϕ (x,y) displacements on domain Ω
•  Potential energy

•  Minimize surface area with boundary conditions ϕ=ϕ0 on


δΩ. The Euler-Lagrange equations "
ϕxx(1+ϕy2)+ϕyy(1+ϕx2)-2ϕxϕyϕxy=0 (nonlinear!)
•  Linearized problem: minimize Dirichlet’s energy"

⇒Δϕ=0 (∇⋅∇ϕ=0) in Ω!
Flächenmodellierung  
Conformal  Map

•  Result
–  harmonic map can be viewed as minimizing the Dirichlet’s
energy over the surface S.
•  Note:
–  In this case the domain is planar, i.e. Ω ⊂ R2
–  For S ⊂ R3 use the generalized Laplace equation: use operators
defined on S:"
Δs=divs⋅grads
•  Result
–  Isometric ⇒ conformal ⇒ harmonic
•  Remark:
–  Not every harmonic map is conformal.

Flächenmodellierung  
Harmonic  Map

•  Harmonic maps: discretization


–  ST piecewise linear surface
–  T={ti} triangulation of ST
•  Parametrization problem:
–  Given ST
–  Find polygonal domain S*⊂ R2
–  Piecewise linear map f: ST→S*
–  f is uniquely determined by the values of f at the vertices in T

Flächenmodellierung  
Harmonic  Map

1.  Set boundary mapping

vi
f(vi)

2.  Compute piecewise linear f: ST→S* which minimizes"


Flächenmodellierung  
Harmonic  Map

•  Note:
–  Quadratic minimization problem
–  For a triangle t=[v1v2v3]

Flächenmodellierung  
Harmonic  Map

•  Lest squares minimization:


–  The normal equations are:
•  Let V be the set of all vertices and VI the set of all interior vertices of
T.
•  Let Ni be the set of the indices of the neighbors of vi ∈ VI

vj

vi
Flächenmodellierung  
Harmonic  Map

•  Remark:
–  The matrix is symmetric and positive definite
–  The bandwidth of the matrix is given by the max. valence of
vi∈VI
–  at the boundary for vi∈VI

boundary edges

Flächenmodellierung  
Harmonic  Map

•  Minimize the Dirichlet energy functional:


–  Notation fi=f(vi).

E D → min ⇒ solve ∇E D = 0,
where the gradient is taken with respect to f i ,v i ∈VI
Flächenmodellierung  
Harmonic  Map

•  The linear system:

Flächenmodellierung  
Harmonic  Map

•  The system of equations


–  For v1,v3 consider the triangles {v1,v3,v2} and {v1,v4,v3}.

v3

θ12 α14
v2
θ13 α13 v4
β15

v1 β14

v7 v5

v6

Flächenmodellierung  
Harmonic  Map

•  Remark:
–  Matrix is symmetric and positive definite, therefore the system is
solvable and solution is unique

–  Matrix is sparse, bandwidth = max. valence in T

–  There are not one but two entries for each vi


•  One for the x-coordinate
•  One for the y-coordinate

Flächenmodellierung  
Harmonic  Map

•  Remark:
–  Harmonic map
•  If S* is convex ⇒ f is one-to-one
–  Discrete harmonic map
•  S* is convex and the weights wij are positive ⇒ f is one-to-one
•  orientation of triangles is preserved t=[v1,v2,v3] → f(t)=[f(v1) f(v2) f(v3)]
–  This can be seen as follows:

Flächenmodellierung  
Convex  Combination

•  Convex combination
–  Set of points {pi} i=1,…,N.
–  Convex combination

–  If p is a convex combination ⇒ p is in the convex hull of {pi}.

vi

λij>0 ∀ij
Flächenmodellierung  
Convex  Combination

•  The discrete harmonic map


–  λij>0 ⇔ wij>0
–  wij ⇒ λij>0 ⇒ fi is a convex combination of the fj
Therefore fi is in the convex hull of fj ⇒ the orientation of the
triangles in S does not change in S* and the map is one-to-one,
i.e. there is no flip-over

flip-over, weight < 0

Flächenmodellierung  
Convex  Combination

•  The weights are negative if:

quadrilateral ⇒ opposite angles sum < Π

Flächenmodellierung  
Surface  Parametrization

•  General discrete formulation


–  The one dimensional case

p1 p2
p0 p3 p4
p5

x0 x1 x2 x3 x4 x5

–  At the boundary f(p0) = x0, f(p5) = x5.

Flächenmodellierung  
Surface  Parametrization

•  Energy functional, linear minimization problem

∂F
= 0 ⇒ x k ∑ w kj − ∑w kj xj =0 ⇒ xk ∑w kj − ∑w kj xj = ∑w kj xj
∂x k j∈N (k ) j∈N (k ) j∈N ( j ) j∈N (k ) j∈N (k )
j∉B j∈B

Flächenmodellierung  


Surface  Parametrization

•  The linear system

⎧ ∑ w ik , i= j
⎪ k∈N (i)
⎪
Aij = ⎨ −w ij , j ∈ N(i) bi = ∑w ij xj
⎪ 0 , otherwise
j∈N (i)
j∈B
⎪⎩

⇒ A⋅x =b

Flächenmodellierung  
Surface  Parametrization

•  Procedure
–  Step 1: Parametrization of the boundary: Compute a
parametrization for the boundary points
–  Step 2: Set the weights wij (use some heuristic model)
–  Step 3: Solve linear system for the inner points!

•  Analysis
p1 p2 f
p0 p3 x0 x1 x2 x3

x 0 = f ( p0 ) ⎫
⎬ boundary, fix
x 3 = f ( p3 ) ⎭

Flächenmodellierung  


Surface  Parametrization

•  The system of equations

1
Example: choose w ij = p (the spring model)
pi − p j
it follows ⎫
p ⎪ p = 0 uniform
x1 − x 0 ⎛ p1 − p0 ⎞ ⎪
⇒ = ⎜ ⎟ ⎬ p = 1 chordal
x 2 − x1 ⎝ p2 − p1 ⎠ ⎪ 1
⎪ p= centripedal
⎭ 2

Flächenmodellierung  


Surface  Parametrization

•  Physical motivation

–  p → different models for the spring constant


1.  p=0 all springs are equal ⇒ uniform distribution of the xi
2.  p=1 different spring constant (cut an ∞ spring, spring constant
proportional to length)

Flächenmodellierung  
Surface  Parametrization

•  The general two dimensional case


•  Step 1: Parametrization of the boundary
–  Asumption: the boundary is a closed closed polygon
–  Map the boundary using e.g. the spring model
–  Set the weight, choose p=0,1 or ½ (uniform, chordal,
centripetal)
–  Problem: Form/geometry of boundary curve
–  The boundary should be mapped to a convex polygon!
•  Choosing the geometry of the boundary
i.  Circle convex

Flächenmodellierung  
Surface  Parametrization

•  Geometry
ii.  n-polygon

iii.  Choose best fitting plane (least squares)


project (orthogonally) boundary vertices

Überfaltung

Flächenmodellierung  
Surface  Parametrization

•  The inner vertices


–  Requirements for a good map
i.  Identity property:
–  Preserves topology
–  For planar meshes, the resulting map in the identity

ii.  Regularity with respect to convolutions (Überfaltung) (one-to-one!)

Flächenmodellierung  
Surface  Parametrization

•  Step 2: Set the weights wij

a)  The spring model


•  wij= || pi – pj ||-p , with p=0 (uniform), p=1 (chordal) or p=1/2 (centripetal)
•  p=0 and p=1/2 do not satisfy (i), but satisfy (ii)

b)  Harmonic parametrization


•  Solution of Laplace (elliptic) equation
ΔSu=0; ΔSv=0
•  Weak formulation

Flächenmodellierung  
Surface  Parametrization

b)  Harmonic parametrization cont.


•  Weak formulation
–  min(ED);

–  Use Dirichlet boundary conditions


–  wij = cotαij + cotβij
vj

vi
•  One-to-one only if
αij+βij < ∏ (wij > 0) ⇒ it satisfy (i) but not (ii)!

Flächenmodellierung  
Surface  Parametrization

c)  Shape preserving


•  Remark: convex combination → regular triangulation

•  The method:
Step 1: Flattening

Step 2: Compile weights

Step 3: Solve linear system

Flächenmodellierung  
Surface  Parametrization

c)  Shape preserving


•  Flattening by exponential mp: consider P and corresponding triangle
fan
•  Compute mapping of P and corresponding triangle fan to a plane

P
y
q3
q4
Q3
Q4
p
σ1 q2
Q2
q5
Q5 q1
q6
Q1 x
Q6

Flächenmodellierung  
Surface  Parametrization

c)  Shape preserving: map of triangle fan

⎛ 0 ⎞
P → p = ⎜ ⎟
⎝ 0 ⎠
⎛ 1 ⎞
Q1 → q1 = Q1 − P ⎜ ⎟
⎝ 0 ⎠
⎛ cosσ i ⎞
Qi → qi = Qi − P ⎜ ⎟ i = 2,K,N QN = Q1
⎝ sin σ i ⎠

i

σ i = ρ∑ γ λ ; ρ = N ; γ i = ∠(Qi ,P,Qi+1 )
€ λ =2
∑γ i
i=2

Flächenmodellierung  

Surface  Parametrization

c)  Shape preserving, cont.

Qi
γi Qi-1
qi
P σi q
p i

Flächenmodellierung  
Surface  Parametrization

c)  Shape preserving: the weights


i.  For each qi find qj such that

p = ς iiqi + ς ij q j + ς ij +1q j +1, ς ii + ς ij + ς ij +1 = 1, ς ki = 0,k ≠ i, j,.......ς ii ≥ 0


ii.  Define


iii.  Obtain

•  Thus p is a convex combination of qi.


–  Remark: wij ≠ wji, i.e. the system matrix of equation is not
symmetric
Flächenmodellierung  
Surface  Parametrization

•  Shape preserving, example


–  Step 1: flattening the 1-neighborhood of vi (using the
exponential map)

vi v`j4 v`j3

v`i

v`j1 v`j2

Flächenmodellierung  
Surface  Parametrization

•  Shape preserving, example


–  Step 2: computing the barycentric coords.
v`j4 v`j3

v`i v`i v`i v`i

v`j1 v`j2

v'i = τ12v' j1 +τ 22v' j 2 +τ 42v' j 4

Flächenmodellierung  
Surface  Parametrization

•  shape preserving, example cont.


–  use the average of the barycentric coords as weights
v`j4 v`j3

v`i

v`j1 v`j2

–  Result: no deformations, no overlaps!


–  Shape preserving satisfy requirements i) and ii) for a good map!

Flächenmodellierung  
Surface  Parametrization

•  Closed Surfaces
1)  Surfaces with genus 0, i.e. sphere
i.  Find map to the unit sphere
ii.  A harmonic map is conformal, Gu. And Yan, 2002
iii.  Many methods are nonlinear
2)  Surfaces with arbitrary genus
i.  Segment surface into open disk like meshes
ii.  Use network for open surfaces
iii.  Problem: smooth transition across patch boundaries

Flächenmodellierung  
MIPS

•  Most Isometric ParametrizationS


–  Fact: except for developable surfaces, such as planes or
cylinders, any parametrization will deform the shape of the
triangles
–  Problem statement: find a way to measure this deformation

Flächenmodellierung  
MIPS

•  Statement:
–  the map between two triangles is linear: fj: Tj → tj.
–  call the map fj atomic linear map.
•  Idea
–  find a functional that measures the distortion (or deformation) of
the atomic linear map
–  minimize a functional over all these atomic maps ∑ E(fj).

R3 R2
fj

Flächenmodellierung  
MIPS

•  The deformation functional should be invariant under


–  translation
–  orthogonal transformations, e.g. rotations
–  uniform scaling
•  The functional should
–  penalize triangle collaps

Flächenmodellierung  
MIPS

•  The functional
–  consider atomic linear map

g:R2 → R2 , x a Ax + b
ignore in the following the translation part b.
–  Singular value decomposition

T ⎛ σ1 0 ⎞
U AV = Σ = ⎜ ⎟
⎝ 0 σ 2 ⎠
–  2-norm condition
σ
κ 2 (A) = A 2 A −1 2 = 1
σ2
€ •  this number gives information on deformation and collaps
•  A value of 1 corresponds to an isometry

Flächenmodellierung  
MIPS

•  Problem
–  the computation of the two norm condition number is difficult
•  Solution
–  use the Frobenius norm condition instead.

−1 trace(AT A)
κ F (A) = A F
A =
F det(A)

–  The global functional takes the form

€ κ = ∑κ F ( f j )
j

Flächenmodellierung   €
MIPS

•  The global deformation functional is non linear


–  solution through an iterative method, e.g. Gauß-Seidel like
iteration
–  the parametrization of the boundary is determined during the
iteration and must not be specified before.
–  needs an efficient technique to compute the Frobenious
condition number for each atomic linear map.

Flächenmodellierung  
Surface  Parametrization

•  Final remarks
–  linear methods, e.g. the spring model, are easy to implement
and fast
–  the harmonic energy can produce overlaps, e.g. if some of the
weights are negative
–  non linear methods, e.g. MIPS or more realistic spring models,
produce better results. Implementation is difficult and require
much more computation time.
–  Most methods require to specify first the parametrization of the
boundary, except MIPS

Flächenmodellierung  

You might also like