380 likes | 550 Views
Mesh Parameterization: Theory and Practice Setting the Boundary Free. Bruno Lévy - INRIA. Overview. 1. Introduction - Motivations 2. Using differential geometry 3. Analytic methods 4. Conclusion. 1. Introduction Setting the bndy free, why ?. Floater-Tutte: provably correct result
E N D
Mesh Parameterization:Theory and PracticeSetting the Boundary Free Bruno Lévy - INRIA
Overview 1. Introduction - Motivations 2. Using differential geometry 3. Analytic methods 4. Conclusion
1. IntroductionSetting the bndy free, why ? • Floater-Tutte: provably correct result for fixed convex boundary
1. Introduction Seamster [Sheffer et.al] Cuts the model, ready for "pelting"
1. IntroductionWhy is this important ? Demo: Normal mapping
2. Using Differential Geometry... to minimize deformations B A Q1) How can we compare these two mappings ? Q2) How can we design an algorithm that prefers B ?
2. Using Differential Geometry... to minimize deformations • [Greiner et.al]: Variational principles for geometric modeling with Splines PDEs for geometric optimization Can we port this principle to the discrete setting ?
2. Using Differential Geometry... to minimize deformations • [Hormann and Greiner] MIPS • [Pinkall and Poltier] cotan formula [Do Carmo] for meshes
u(x,y,z) x(u,v) 3 I R 2 I R 2. Using Differential Geometry Notion of parameterization x(.,.) u W v S Object space (3D) Texture space (2D)
dv du x/v P x/u TP(S) 2. Geometry of Tp(S)Partial derivatives of x(.,.) v u
dxP(w) w 2. Geometry of Tp(S)Differential dxP ; directional derivatives u0,v0 P dxP(w) = / t (x( (u0,v0)+ t.w )))
w dxP(w) x/v x/u [ ] JP= y/v y/u z/v z/u 2. Geometry of Tp(S)Jacobian Matrix JP dv x/v u0,v0 du P x/u dxP(w) = wux/u + wvx/v = JP.w
TP(S) V1 = dxp(w1) ; V2 = dxp(w2) 2. Geometry of Tp(S)Measuring things,First Fundamental Form Ip V1t V2 = (J w1)t J w2 = w1tJt J w2 = w1tIp w2 V2 V1 w1 w2 v u
2. Geometry of Tp(S)Measuring things,First Fundamental Form Ip Distances : || V1 ||2 = w1t Ip w1 Angles : V1t V2 = w1t Ip w2 Ip is called the metric tensor
x x v TP(S) u dv du 2. Geometry of Tp(S)Anisotropy v u r2(q) = || dxP(cos q, sinq) ||2
2 x x x u v u IP= x 2 x x u v v 2. Geometry of Tp(S)Anisotropy ; 1st fundamental form IP || dxP(w) ||2 = || JP.w ||2 = (JPw).(JPw)t = wt.JPt.JP.w = wt.IP.w
b 2 a x x x u v u IP= x 2 x x u v v a = l1 ; b = l2 (eigen values of Ip) 2. Geometry of Tp(S)Anisotropy ; eigen structure of IP
x x v u a 0 0 b 0 0 y y Jp = = U Vt v u z z v u Singular values decomposition (SVD) of J a = l1 ; b = l2 Rem: Ip = Jt.J 2. Geometry of Tp(S)Anisotropy ; eigen structure of IP b a
ui ,vi Pi 3 I R 2 I R 2. Using Differential GeometryTriangulated surfaces u v Object space (3D) Texture space (2D)
Y v X u 2. Using Differential GeometryTriangulated Surfaces
2. Using Differential GeometryAnisotropy - See Kai's diff. geo. primer • first fundamental form • eigenvalues of • singular values of (anisotropy ellipse axes)
3. Analytic methodsGeneral Principle • Define some energy functional F in function of Jp, Ip, l1,l2 • Expand their expression in F in function of the unknown ui, vi • Design an algorithm to find the ui,vi's that minimizes F
3. Analytic methods The first fundamental form I is the metric tensor Minimize a matrix norm of I - Id [Maillot, Yahia & Verroust, 1993]
3. Analytic methodsMIPS [Hormann et. al] Principle: F should be invariant by similarity and shoud punish collapsing triangles [Hormann & Greiner]
dxP(w(q)) TP(S) Stretch L2 = 1/2p ∫ r2(q)dq 3. Analytic methodsStretch optimization [Sander et.al] w(q) v u r2(q) = ||dxp(w(q))||2= || dxP(cos q, sinq) ||2 L∞ = max(r(q))
x x x v v u x N ^ = u 3. Analytic MethodsConformal Parameterization l2 = l1
u v v u y x y y x v x u { = - Cauchy-Riemann: = 3. Analytic MethodsConformal Parameterization No Piecewise Linear solution in general
2 v u S - x y - u v T x y 3. Analytic MethodsLSCM [Levy et.al] Fix two vertices to determine rot,transl,scaling Minimize + easy to implement - overlaps, deformations
3. Analytic MethodsDNCP [Desbrun et.al] Tutte-Floater with harmonic weights (cotan) + additional equation for natural boundaries Bndry point i, grad of Dirichlet energy Natural idea for "setting the bndry free" (Laplace eqn with Neumman bndry)
ED(u) = ½ . | u |2 D Au(T) = det(Ju) Isotropic ParameterizationsConformal = Harmonic EC(u) + Au(T) = ED(u) where: Dirichlet Energy Area of T Conformal Energy EC(u) = ½ . || D90(u) - v ||2 [Douglas31] [Rado30] [Courant50] [Brakke90]
Application of free boundaries Segmentation: VSA [Alliez et.al] Show 2D domain
Geometric methods Epilogue Limits of analytic methods LSCM ; DNCP distortions ; validity
Resources • Source code & papers on http://alice.loria.fr • Graphite • OpenNL
Calls for papers • Eurographics 2008 • Abstracts: Sept 21, papers: Sept 26 • SPM / SPMI 2008 • Abstracts: Nov 27, papers: Dec 4 • SGP 2008 • Abstracts: April 20, papers: April 27 • Special issue Computing - eigenfunctions • Abstracts: Nov 1st, Papers: Nov, 15 Paper copies of CfP available, ask us !
Course Evaluations 4 Random Individuals will win an ATI Radeontm HD2900XT http://www.siggraph.org/course_evaluation