Bounded-distortion Piecewise Mesh Parameterization

Slides:



Advertisements
Similar presentations
Signal-Specialized Parametrization Microsoft Research 1 Harvard University 2 Microsoft Research 1 Harvard University 2 Steven J. Gortler 2 Hugues Hoppe.
Advertisements

Texture-Mapping Progressive Meshes
Multi-chart Geometry Images Pedro Sander Harvard Harvard Hugues Hoppe Microsoft Research Hugues Hoppe Microsoft Research Steven Gortler Harvard Harvard.
Ray Space Factorization for From-Region Visibility Tommer Leyvand Olga Sorkine Daniel Cohen-Or Tel-Aviv University, Israel.
Mesh Parameterization: Theory and Practice Setting the Boundary Free Mesh Parameterization: Theory and Practice Setting the Boundary Free Bruno Lévy -
Surface Simplification Using Quadric Error Metrics Speaker: Fengwei Zhang September
2D/3D Shape Manipulation, 3D Printing
Developable Surface Fitting to Point Clouds Martin Peternell Computer Aided Geometric Design 21(2004) Reporter: Xingwang Zhang June 19, 2005.
© University of Wisconsin, CS559 Spring 2004
Olga Sorkine and Daniel Cohen-Or Tel-Aviv University Warped textures for UV mapping encoding.
Texture Synthesis on [Arbitrary Manifold] Surfaces Presented by: Sam Z. Glassenberg* * Several slides borrowed from Wei/Levoy presentation.
Application of Angle-Preserving Parameterization: Remeshing.
Least-squares Meshes Olga Sorkine and Daniel Cohen-Or Tel-Aviv University SMI 2004.
Consistent Mesh Parameterizations Peter Schröder Caltech Wim Sweldens Bell Labs Emil Praun Princeton.
SGP 2008 A Local/Global Approach to Mesh Parameterization Ligang Liu Lei Zhang Yin Xu Zhejiang University, China Craig Gotsman Technion, Israel Steven.
Geometry Image Xianfeng Gu, Steven Gortler, Hugues Hoppe SIGGRAPH 2002 Present by Pin Ren Feb 13, 2003.
Mesh Parameterization: Theory and Practice Differential Geometry Primer.
Siggraph Course Mesh Parameterization: Theory and Practice
Discrete Geometry Tutorial 2 1
3D Surface Parameterization Olga Sorkine, May 2005.
Xianfeng Gu, Yaling Wang, Tony Chan, Paul Thompson, Shing-Tung Yau
Inter-Surface Mapping John Schreiner, Arul Asirvatham, Emil Praun (University of Utah) Hugues Hoppe (Microsoft Research)
MATHIEU GAUTHIER PIERRE POULIN LIGUM, DEPT. I.R.O. UNIVERSITÉ DE MONTRÉAL GRAPHICS INTERFACE 2009 Preserving Sharp Edges in Geometry Images.
Consistent Spherical Parameterization Arul Asirvatham, Emil Praun (University of Utah) Hugues Hoppe (Microsoft Research)
Lapped Textures Emil Praun and Adam Finkelstien (Princeton University) Huges Hoppe (Microsoft Research) SIGGRAPH 2000 Presented by Anteneh.
Signal-Specialized Parameterization for Piecewise Linear Reconstruction Geetika Tewari, Harvard University John Snyder, Microsoft Research Pedro V. Sander,
Segmentation into Planar Patches for Recovery of Unmodeled Objects Kok-Lim Low COMP Computer Vision 4/26/2000.
Signal-Specialized Parametrization Microsoft Research 1 Harvard University 2 Microsoft Research 1 Harvard University 2 Steven J. Gortler 2 Hugues Hoppe.
Shape from Contours and Multiple Stereo A Hierarchical, Mesh-Based Approach Hendrik Kück, Wolfgang Heidrich, Christian Vogelgsang.
Spherical Parameterization and Remeshing Emil Praun, University of Utah Hugues Hoppe, Microsoft Research.
Iso-charts: Stretch-driven Mesh Parameterization using Spectral Analysis Kun Zhou, John Snyder*, Baining Guo, Heung-Yeung Shum Microsoft Research Asia.
Lapped Textures Emil Praun Adam Finkelstein Hugues Hoppe Emil Praun Adam Finkelstein Hugues Hoppe Princeton University Microsoft Research Princeton University.
Lapped Textures SIGGRAPH 2000 Emil Praun Adam Finkelstein Hugues Hoppe.
Polygonal Mesh – Data Structure and Smoothing
Shape Modeling International 2007 – University of Utah, School of Computing Robust Smooth Feature Extraction from Point Clouds Joel Daniels ¹ Linh Ha ¹.
Visualization and graphics research group CIPIC January 30, 2003Multiresolution (ECS 289L) - Winter MAPS – Multiresolution Adaptive Parameterization.
1 Dr. Scott Schaefer Surface Parameterization. Parameterization and Texturing 2/30.
CS CS 175 – Week 7 Parameterization Boundary, Non-Linear, and Global Methods.
FiberMesh: Designing Freeform Surfaces with 3D Curves
Mesh Parameterization: Theory and Practice Non-Planar Domains.
Part Two Multiresolution Analysis of Arbitrary Meshes M. Eck, T. DeRose, T. Duchamp, H. Hoppe, M. Lounsbery, W. Stuetzle SIGGRAPH 95.
Visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Surface Simplification Using Quadric Error Metrics.
Consistent Parameterizations Arul Asirvatham Committee Members Emil Praun Hugues Hoppe Peter Shirley.
Projective Texture Atlas for 3D Photography Jonas Sossai Júnior Luiz Velho IMPA.
Informatik VIII Computer Graphics & Multimedia Martin Marinov and Leif Kobbelt Direct Quad-Dominated Anisotropic Remeshing Martin Marinov and Leif Kobbelt.
Parameterization.
Intrinsic Parameterization for Surface Meshes Mathieu Desbrun, Mark Meyer, Pierre Alliez CS598MJG Presented by Wei-Wen Feng 2004/10/5.
Gwangju Institute of Science and Technology Intelligent Design and Graphics Laboratory Multi-scale tensor voting for feature extraction from unstructured.
Signal-Specialized Parameterization for Piecewise Linear Reconstruction Geetika Tewari, Harvard University John Snyder, Microsoft Research Pedro V. Sander,
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert.
1 Background and definitions Cindy Grimm. 2 Siggraph 2005, 8/1/ Overview What does it mean to be.
Algorithms for Triangulations of a 3D Point Set Géza Kós Computer and Automation Research Institute Hungarian Academy of Sciences Budapest, Kende u
1 Mesh Parametrization and Its Applications 동의대학교 멀티미디어공학과 김형석 포항공과대학교 ( 이윤진, 이승용 )
Cindy Grimm Parameterization with Manifolds Cindy Grimm.
Scalable and Fully Distributed Localization With Mere Connectivity.
1 Surface Applications Fitting Manifold Surfaces To 3D Point Clouds, Cindy Grimm, David Laidlaw and Joseph Crisco. Journal of Biomechanical Engineering,
Computer Graphics Some slides courtesy of Pierre Alliez and Craig Gotsman Texture mapping and parameterization.
INFORMATIK Laplacian Surface Editing Olga Sorkine Daniel Cohen-Or Yaron Lipman Tel Aviv University Marc Alexa TU Darmstadt Christian Rössl Hans-Peter Seidel.
1 Interactive Thickness Visualization of Articular Cartilage Author :Matej Mlejnek, Anna Vilanova,Meister Eduard GröllerMatej MlejnekAnna VilanovaMeister.
Andrew Nealen / Olga Sorkine / Mark Alexa / Daniel Cohen-Or SoHyeon Jeong 2007/03/02.
Mesh Coarsening zhenyu shu Mesh Coarsening Large meshes are commonly used in numerous application area Modern range scanning devices are used.
View-dependent Adaptive Tessellation of Spline Surfaces
Geometric Modeling using Polygonal Meshes Lecture 3: Discrete Differential Geometry and its Application to Mesh Processing Office: South B-C Global.
Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일.
Representation and modelling 3 – landscape specialisations 4.1 Introduction 4.2 Simple height field landscapes 4.3 Procedural modeling of landscapes- fractals.
Controlled-Distortion Constrained Global Parametrization
Mesh Resampling Wolfgang Knoll, Reinhard Russ, Cornelia Hasil 1 Institute of Computer Graphics and Algorithms Vienna University of Technology.
Reverse Engineering of Point Clouds to Obtain Trimmed NURBS Lavanya Sita Tekumalla Advisor: Prof. Elaine Cohen School of Computing University of Utah Masters.
1 Spherical manifolds for hierarchical surface modeling Cindy Grimm.
Mesh Parameterization: Theory and Practice
Presentation transcript:

Bounded-distortion Piecewise Mesh Parameterization Olga Sorkine, Daniel Cohen-Or Tel-Aviv University Rony Goldenthal, Dani Lischinski The Hebrew University of Jerusalem

Overview Parameterization – definition Applications Distortion and partition Previous work Our approach Results

Parameterization - definition S  R3 - given surface D  R2 - parameter domain s : D  S 1-1 and onto

Mesh parameterization Uniquely defined by mapping the mesh vertices to the parameter domain: U : {v1, v2, …, vn} → D  R2 U(vi) = (ui, vi) No two edges cross in the plane U is piecewise linear (linear inside each face) Mesh parameterization  mesh embedding

Applications Texture mapping, 3D painting Resampling, remeshing Digital geometry processing Multi-resolution analysis Using parameterization, we can operate on the 3D surface as if it were flat. Remeshing images taken from “Interactive Geometry Remeshing”, P. Alliez, M. Meyer and M. Desbrun, SIGGRAPH 2002

Distortion and partition Ideal parameterization is an isometry General surfaces cannot be embedded without distortion Surfaces with non-zero Gaussian curvature Non-disk topology Partitioning the surface reduces distortion But: the parameterization is not continuous over the boundaries between the patches of the partition

Previous work Partition/cut the mesh in pre-process Interactive user input Normals bucketing Region growing from feature curves (Lévy et al. 02) Flatten each patch by energy minimization Convex mapping (Floater 97) Harmonic mapping (Maillot et al. 93, Eck et al 95) Conformal mapping (Lévy et al. 02, Desbrun et al. 02) Non-linear Jacobian energy minimization (Sander et al. 01)

Previous work – partial list Maillot et al. 93 Eck et al. 95 Floater 97 Lévy and Mallet 98 Lee et al. 98 Haker et al. 00 Sander et al. 01 Gu et al. 02 Sheffer 02 Lévy et al. 02 Desbrun et al. 02 Zigelman et al. 02 Bennis et al. 91

Previous framework - discussion A-priori partition sets lower bound on the distortion  cannot comply with preset upper bound on the distortion. If the distortion is too high, need to subdivide the partition and recompute the parameterization. Most of the methods cannot prevent triangle flips and global self-intersections (overlaps). High computational cost (for non-linear optimizations).

If distortion > threshold stop Bennis et al. 91 If distortion > threshold stop   Surface Plane Works on C2 surfaces sampled on regular grid, even geodesic spacing in both u and v directions.

Our contribution Parameterization with bounded distortion Simultaneous partition and parameterization Valid parameterization – no self-intersections Simple and fast algorithm Generic scheme

Algorithm overview Greedy algorithm: grow one patch at a time, until no more vertices can be added. At each step, attempts to flatten the “best” vertex adjacent to the current patch – local criteria. The distortion of each mesh triangle is guaranteed to be below specified threshold.

Algorithm overview Select random seed triangle, flatten it. Maintain a priority queue of the vertices adjacent to the current patch. Flatten triangles adjacent to current patch: At each step, take the best vertex off the queue Check for self-intersections Stop when no triangles can be added to the patch, and start a new one.

Patch Growth The 3D surface

Patch Growth The 3D surface The planar patch

Patch Growth The 3D surface The planar patch

Patch Growth The 3D surface The planar patch

Patch Growth The 3D surface The planar patch

Patch Growth The 3D surface The planar patch

Patch Growth The 3D surface The planar patch

Patch Growth The 3D surface The planar patch

Patch Growth The 3D surface The planar patch

Patch Growth The 3D surface The planar patch

Patch Growth The 3D surface The planar patch

The Jacobian distortion metric In 2D In 3D D(T, T’) = max{max , 1/ min } max and min are the singular values of the Jacobian [S/s S/t]: The values max and min are the maximal stretching and shrinking caused to a unit-length vector by the mapping S We want to equally “punish” stretch and shrink Any other reasonable metric can be used!

Flattening a single vertex We can apply local relaxation to optimize the vertex position, but it’s slower, the initial guess performs well, and we wanted to keep the algorithm as simple as we can. t1 t2 t1 t2

Vertex grade components Maximal distortion caused to the triangles flattened with the vertex. If it’s greater than the threshold, the grade is set to zero and the vertex can’t be flattened in the current patch! The ratio between patch area and squared perimeter (to create round patches with small boundary length). Crease angles or other segmentation information. More criteria…

Checking self-intersections Local self-intersection – triangle flipping V 1  2 1 2

Checking self-intersections Global self-intersections: maintain space partition data structure, check the new triangles with the existing boundary edges.

Adding seams After the patch is finished, we may add seams as a post-process, to benefit from cylinder-like structure.

Adding seams After the patch is finished, we may add seams as a post-process, to benefit from cylinder-like structure.

Results 11,000 triangles, 1.3 seconds, unoptimized code

Results 1.0 1.5 2.0 3.0 1.0 1.5 2.0 3.0 1.0 1.5 2.0 3.0

Results Bounding the area/perimeter2 ratio... 40,000 triangles, 4 seconds, unoptimized code

Results 100,000 triangles, 9 seconds, unoptimized code

Results

Conclusions from the comparison: Comparison with global relaxation technique, normal bucketing partition Conclusions from the comparison: Much faster Lower average distortion Boundary length – sometimes the same, sometimes longer…

Texture mapping with our parameterization

3D painting with our parameterization

Summary A simple and fast method for surface parameterization Simultaneously computes the partition and the parameterization Employs local (generic) criteria rather than global ones No self-intersections No explicit control on the number and the size of the patches Future work: to incorporate segmentation information to gain some “global” properties

Acknowledgements Israel Science Foundation founded by the Israel Academy of Sciences and Humanities Israeli Ministry of Science German Israel Foundation (GIF) Deutsch Institute

Thank you!

Normal partition Doesn’t detect developable structures Prone to self-intersection problems

The Jacobian distortion metric p3 q3 S T T’ p1 q1 q2 p2 In 2D In 3D

Flattening a single vertex The obtained position v can be used as initial guess for a relaxation procedure that finds better position v’ (for example, minimizes the average distortion of triangles incident to the vertex). However, it is slower, and the initial guess performs well in practice.