: 3
Why Parameterize?
3 Big Reasons:
Texture mapping, Texture mapping, and Texture
mapping
2D images are a great place to store surface data.
Fast graphics hardware supported rendering.
Easy to post-filter (bilinear filtering, mip-mapping).
Other Reasons:
2D is sometimes easier to work with
Remeshing
Surface Computation
Cylindrical Projection
Spherical Projection
Some Definitions
Let M be a surface in 3-D
Def: M is a manifold iff a neighborhood of any point x in
M is topologically equivalent to the unit disk ( e.g. locally
appears like R2 )
Q1: Why is the manifold property important?
Q2: How can I violate this property in constructing some
triangle mesh?
embedding
Def: forms an embedding for M iff no fold-overs
occur in the parameter domain .
Texture Atlases
Texture Atlas
Def: An injective mapping between an objects
surface and a texture.
Surface
Texture domain
Texture Map
U
Isosceles Pack With Area Distribution
v
Polyhedral Projection
w u
u j N i
ij
w u
u j Bi
ij
ui
Border Neighbors
(known)
wij 0
Property 1
w w
jNi
ij
jBi
ij
Property 2
w u
u j N i
ij
w u
u j Bi
ij
ui
Position To Solve For
Non-Border Neighbors
(unknown)
Border Neighbors
(known)
Rearrange Terms
ui wij u j wij u j
u j N i
u j Bi
Ax
w
2n
21
w
u
1 un nj j
wn1 wn 2
u j Bn
conjugate-gradient (wij=wji)
biconjugate-gradient (wijwji)
Internal Vertices
(unknown)
Border Vertices
(known)
1
wij
valence(ui )
ui
tan(1 / 2) tan( 2 / 2)
wij
ui u j
1 2
1 2
uj
Conformal **:
wij
cot(1 ) cot( 2 )
ui u j
Authalic **:
* Strictly Positive (
embedding is
guaranteed)
**Normalize weights so
they sum to one
High Area
Distortion
: 3
p3
P(u)
p1
u2
u=[u,v]2
(u )
p2
u, u2 , u3 p1 u, u3 , u1 p2 u, u1 , u2 p3
u1 , u2 , u3
p3
u1
u2
(u,v)2
p1
p2
Mapped
Tangent Vectors
x
u
y
J
u v u
z
u
x
v
y
v
z
y
J
u v u
z
u
x
v
y
v
z
v
a c 2 4b 2
1
2
a c
2
a c 2 4b 2
u u
u v
v v
E(T) = max(1)
E(T) = max(1/ 2)
E(T) = max(1 , 1/2)
E(T) = sqrt( (12 + 22) / 2)
max stretching
stretching over shrinkage
max shrinkage or stretching
rms shrinkage & stretching
A(Ti )E (Ti )
E (M )
Ti M
A(T )
Ti M
A(T) area of
triangle in 3D
Analytic Gradient
Newtons method
Conjugate Gradient
Multi-grid
Authalic
L2 Stretch
oversampled
Conformal
Mean-Value
L2 Multi-Chart
undersampled
Developable Surfaces
developable
Def: M is developable iff it is flattenable without
distortion. For this to be true M must have zero
Gaussian curvature at every point x on the surface
Gaussian Curvature: product of principle curvatures K1 and K2
K1
K1
K2
K2
Idea:
Given a manifold (w/ or w/out boundary ) perform the
following:
1. Find the cuts necessary to flatten the model into 2D.
2. Parameterize the model forcing the boundary (cut
edges) to lie along edges of a rectangle.
3. If distortion is high
Geometry Images
Example of the iterative cut and
parameterize process..