Stefan Gumhold,* Pavel Borodin, # Reinhard Klein # *University of Tuebingen, Germany # University of Bonn, Germany Intersection Free Simplification.

Slides:



Advertisements
Similar presentations
 Over-all: Very good idea to use more than one source. Good motivation (use of graphics). Good use of simplified, loosely defined -- but intuitive --
Advertisements

Surface Simplification using Quadric Error Metrics Guowei Wu.
Surface Simplification Using Quadric Error Metrics Speaker: Fengwei Zhang September
Chapter 4.2 Collision Detection and Resolution. 2 Collision Detection Complicated for two reasons 1. Geometry is typically very complex, potentially requiring.
Real-Time Rendering POLYGONAL TECHNIQUES Lecture 05 Marina Gavrilova.
Mesh Simplification. Plan Introduction Mesh Simplifications Current Techniques The Projet Results.
Discrete Geometry Tutorial 2 1
Computing Stable and Compact Representation of Medial Axis Wenping Wang The University of Hong Kong.
Experiences with Streaming Construction of SAH KD Trees Stefan Popov, Johannes Günther, Hans-Peter Seidel, Philipp Slusallek.
5/1/2000Deepak Bandyopadhyay / UNC Chapel Hill 1 Extended Quadric Error Functions for Surface Simplification Deepak Bandyopadhyay COMP 258 F2000 Project.
High-Quality Simplification with Generalized Pair Contractions Pavel Borodin,* Stefan Gumhold, # Michael Guthe,* Reinhard Klein* *University of Bonn, Germany.
New quadric metric for simplifying meshes with appearance attributes Hugues Hoppe Microsoft Research IEEE Visualization 1999 Hugues Hoppe Microsoft Research.
CS CS 175 – Week 4 Mesh Decimation General Framework, Progressive Meshes.
Haptic Rendering using Simplification Comp259 Sung-Eui Yoon.
Mesh Simplification Global and Local Methods:
Visualization and graphics research group CIPIC January 30, 2003Multiresolution (ECS 289L) - Winter MAPS – Multiresolution Adaptive Parameterization.
Progressive Meshes A Talk by Wallner and Wurzer for the overfull MathMeth auditorium.
Vieira et al. - Fast Stellar Mesh Simplification 1 Fast Stellar Mesh Simplification Antônio W. Vieira 1,2 Luiz Velho 3 Hélio Lopes 1 Geovan Tavares 1 Thomas.
Efficient simplification of point-sampled geometry Mark Pauly Markus Gross Leif Kobbelt ETH Zurich RWTH Aachen.
Randomized Planning for Short Inspection Paths Tim Danner and Lydia E. Kavraki 2000 Presented by Dongkyu, Choi On the day of 28 th May 2003 CS326a: Motion.
Visualization 2000 Tutorial Mesh-Based Methods for Multiresolution Representations Instructor: Ken Joy Center for Image Processing and Integrated Computing.
Advanced Computer Graphics (Spring 2006) COMS 4162, Lecture 11: Quadric Error Metrics Ravi Ramamoorthi Some material.
Visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Surface Simplification Using Quadric Error Metrics.
ECS 289L A Survey of Mesh-Based Multiresolution Representations Ken Joy Center for Image Processing and Integrated Computing Computer Science Department.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 10: Mesh simplification Ravi Ramamoorthi Many slides courtesy.
Visualization and graphics research group CIPIC February 13, 2003ECS289L – Multiresolution Methods – Winter Illumination Dependent Refinement of.
CSE554SimplificationSlide 1 CSE 554 Lecture 7: Simplification Fall 2014.
Compressing Multiresolution Triangle Meshes Emanuele Danovaro, Leila De Floriani, Paola Magillo, Enrico Puppo Department of Computer and Information Sciences.
Dual/Primal Mesh Optimization for Polygonized Implicit Surfaces
10/14/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Level of Detail.
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert.
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Quadric Error Metrics 1/20 Quadric Error Metrics.
Dynamic Meshing Using Adaptively Sampled Distance Fields
Presented By Greg Gire Advised By Zoë Wood California Polytechnic State University.
Geometry Images Xiang Gu Harvard University Steven J. Gortler Harvard university Hugues Hoppe Microsoft Research Some slides taken from Hugues Hoppe.
10/02/2001CS 638, Fall 2001 Today Level of Detail Overview Decimation Algorithms LOD Switching.
Progressive Meshes with Controlled Topology Modification University of Bonn Institute II. for Computer Science Computer Graphics Group Pavcl Borodin Rchinhard.
DPL10/16/2015 CS 551/651: Simplification Continued David Luebke
Level of Detail: Choosing and Generating LODs David Luebke University of Virginia.
1 Dr. Scott Schaefer Surface Simplification. 2/32 Surface Simplification Given a closed polygon model, reduce the number of polygons and maintain appearance.
Surface Simplification Using Quadric Error Metrics Garland & Heckbert Siggraph 97.
CSE554SimplificationSlide 1 CSE 554 Lecture 7: Simplification Fall 2013.
CIS 350 – I Game Programming Instructor: Rolf Lakaemper.
CSE554Fairing and simplificationSlide 1 CSE 554 Lecture 6: Fairing and Simplification Fall 2012.
Simplifying Surfaces with Color and Texture using Quadric Error Metrics Michael Garland Paul S. Heckbert Carnegie Mellon University October 1998 Michael.
Polygonal Simplification Techniques
Mesh Coarsening zhenyu shu Mesh Coarsening Large meshes are commonly used in numerous application area Modern range scanning devices are used.
Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 8 Ravi Ramamoorthi
Hierarchical Error-Driven Approximation of Implicit Surfaces from Polygonal Meshes Takashi Kanai Yutaka Ohtake Kiwamu Kase University of Tokyo RIKEN, VCAD.
Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 7 Ravi Ramamoorthi
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert August 1997 Michael Garland Paul S. Heckbert August 1997.
Using simplified meshes for crude registration of two partially overlapping range images Mercedes R.G.Márquez Wu Shin-Ting State University of Matogrosso.
Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 9 Ravi Ramamoorthi
JinJin Hong, Lixia Yan, Jiaoying Shi (State Key Lab. of CAD&CG, Zhejiang University) A Tetrahedron Based Volume Model Simplification Algorithm.
Solid Modeling 2002 A Multi-resolution Topological Representation for Non-manifold Meshes Leila De Floriani, Paola Magillo, Enrico Puppo, Davide Sobrero.
Level of Detail: Generating LODs David Luebke University of Virginia.
Mesh Resampling Wolfgang Knoll, Reinhard Russ, Cornelia Hasil 1 Institute of Computer Graphics and Algorithms Vienna University of Technology.
Rendering Large Models (in real time)
1 Overview (Part 1) Background notions A reference framework for multiresolution meshes Classification of multiresolution meshes An introduction to LOD.
DPL3/10/2016 CS 551/651: Simplification Continued David Luebke
Advanced Computer Graphics (Spring 2013) Mesh representation, overview of mesh simplification Many slides courtesy Szymon Rusinkiewicz.
Decimation of Triangle Meshes Paper by W.J.Schroeder et.al Presented by Guangfeng Ji.
A Multiphase Approach to Efficient Surface Simplification Michael Garland Eric Shaffer University of Illinois at Urbana–Champaign Michael Garland Eric.
Advanced Computer Graphics
CS Computer Graphics II
User-Guided Simplification
CS475 3D Game Development Level Of Detail Nodes (LOD)
Today Runtime LOD Spatial Data Structures Overview
Iso-Surface extraction from red and green samples on a regular lattice
Chap 10. Geometric Level of Detail
Presentation transcript:

Stefan Gumhold,* Pavel Borodin, # Reinhard Klein # *University of Tuebingen, Germany # University of Bonn, Germany Intersection Free Simplification

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 2 Outline  Introduction and Problem Description  Related Work  Spatial Data Structure  Detection and Avoidance of Collisions  Results  Conclusion

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 3 Introduction  Mesh simplification Original model (34834 vertices) Simplified model (3483 vertices) More simplification (1000 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 4 Original model (34834 vertices) Simplified model (3483 vertices) More simplification (1000 vertices) Introduction  Mesh simplification

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 5 Original model (34834 vertices) Simplified model (3483 vertices) More simplification (1000 vertices) Introduction  Mesh simplification

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 6 Problem Description  Original models Man with trousers and shirt (17060 vertices) Two nested spheres (1028 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 7 Problem Description  Simplified models with self- intersections Simplified to 600 vertices Simplified to 70 vertices

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 8 Problem Description  Self-intersections detected and avoided Simplified to 600 vertices intersection free Simplified to 70 vertices intersection free

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 9 Related Work  Edge contraction simplification Hoppe 1996  contracts two adjacent vertices  performs no topology alteration vcvcvcvc v2v2v2v2 v1v1v1v1

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 10 Related Work  Vertex pair contraction simplification Popovic & Hoppe / Garland & Heckbert 1997  generalizes the edge contraction  the contracted vertices do not necessarily lie on a common edge vcvcvcvc v1v1v1v1 v2v2v2v2

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 11 Related Work  Vertex pair contraction simplification Popovic & Hoppe / Garland & Heckbert 1997  allows to sew together unconnected components and to close small gaps  allows topology modifications vcvcvcvc v1v1v1v1 v2v2v2v2

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 12 Related Work  Quadric error metrics (QEM) Garland & Heckbert 1997  Fundamental error quadric Q f (p) measures the squared distance d of a point p to the plane of a face f.  Each vertex v is assigned an initial quadric Q constructed as the sum of the fundamental quadrics of its incident faces weighted by their areas.

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 13 Related Work  Quadric error metrics (QEM) Garland & Heckbert 1997  After contracting two vertices v 1 and v 2 the quadric of the new vertex v c is defined as Q c = Q 1 + Q 2.  The location of new vertex v c is set in a way to minimize the error e = v T Q c v.  This minimum error e is used to measure the error caused by the performed contraction operation.

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 14 Classical Simplification algorithm  Initialization  build spatial grid, insert vertices  find close vertex pairs  build queue, sorted by QEM  Simplification loop  extract operation with minimum error e  if isValid (normal test)  remove invalidated operations from queue  perform operation  insert new operations into queue

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 15 Related Work  Avoidance of self-collisions during simplification  Ronfard & Rossignac 1996:  normal check  only prevention of local self- intersections  Staadt & Gross 1998:  progressive tetrahedralizations  prevention of self-intersections of the boundary surface of the tetrahedral mesh

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 16 Modified simplification algorithm  Initialization  remove initial self-intersections  build spatial grid, insert simplices  find close vertex pairs  build queue, sorted by QEM  Simplification loop

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 17 Modified simplification algorithm  Initialization  Simplification loop  extract operation with minimum error e  if isValid (normal test, collision detection / avoidance)  remove invalidated operations from queue  remove affected simplices from grid  perform operation  insert remaining simplices into grid  insert new operations to queue

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 18 Spatial Data Structure  Remove initial self-intersections Query 1:find all intersecting pairs of edge and triangle  Find close vertex pairs Query 2:for given vertex find the closest not adjacent vertex  Collision test Query 3:find all simplices in region affected by operation

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 19 Spatial Data Structure  Search structure must support fast dynamic updates  Regular grid (Zachmann 2001)  average edge length as cell side length of grid  keep track of average edge length during simplification  rebuild grid, whenever average edge length increases by factor of two

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 20 Detection of Collisions  Classification of simplices:   12 : contracted simplices are incident to both contraction vertices v 1 and v 2   1 and  2 : affected simplices are incident to one of the contraction vertices v 1 or v 2   0 : stationary simplices - all remaining simplices v2v2v2v2 v1v1v1v1

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 21 Detection of Collisions  The affected simplices can cause two problems:  We parametrize the vertex pair contraction operation over the time interval t  [0, 1] : v j (t) = v j + t · (v c - v j ), j  {1, 2} v2v2v2v2 v1v1v1v1 vcvcvcvc v2v2v2v2 v1v1v1v1 vcvcvcvc Intersection Inside-outside switch

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 22 Detection of Collisions  Classification of collisions:  hit collisions of the 1st kind between a simplex from  1 or  2 and a simplex from  0  hit collisions of the 2nd kind between a simplex from  12 and a simplex from  0  fan collisions between two simplices from  1 or two simplices from  2 v2v2v2v2 v1v1v1v1

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 23 Detection of Collisions  Classification of collisions:  contraction collisions of the 1st kind between a simplex from  1 and a simplex from  2  contraction collisions of the 2nd kind between a simplex from  1 or  2 and a simplex from  12 or between two simplices from  12 v2v2v2v2 v1v1v1v1

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 24 Detection of Collisions Lemma: Any collision between an edge and a triangle or between two triangles is preceeded by or coincides with a collision between a vertex and a simplex or between two edges.  We have to check only collisions between a vertex and a simplex or between two edges. vcvcvcvc TsTsTsTs TaTaTaTa TsTsTsTs v1v1v1v1 vcvcvcvc TaTaTaTa TsTsTsTs v1v1v1v1 vcvcvcvc TaTaTaTa

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 25 Detection of Collisions Theorem: Any fan collision is preceeded by or coincides with a hit collision.  Fan collisions and contraction collisions of the 2nd kind always coincide with another type of collision and therefore do not have to be tested v1v1v1v1 vcvcvcvc ea2ea2ea2ea2 ea1ea1ea1ea1 vsvsvsvs v1v1v1v1 vcvcvcvc ea2ea2ea2ea2 ea1ea1ea1ea1 vsvsvsvs vcvcvcvc ea2ea2ea2ea2 ea1ea1ea1ea1 vsvsvsvs

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 26 Detection of Collisions  To reduce the number of different collision tests, we split the pair contraction into two phases:  we drag vertex v 1 with fixed v 2 onto v c  then we drag v 2 onto v c  Only hit collisions of the 1st kind can arise.

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 27 Detection of Collisions  Hit collision tests  We detect hit collisions of the 1st kind by an intersection test between the time sweep of the affected simplex with the stationary simplex. titititi t = 0 TsTsTsTs v1v1v1v1 vcvcvcvc t = 1 titititi eseseses v1v1v1v1 vsvsvsvs vcvcvcvc t = 0 t = 1 v1v1v1v1 vcvcvcvc titititi vs1vs1vs1vs1 t = 0 t = 1 vs2vs2vs2vs2 vivivivi Time sweep of the edge ( v s v 1 ) Time sweep of the vertex v 1 Time sweep of the triangle ( v s1 v s2 v 1 )

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 28 Detection of Collisions  Skipping invalid operations does not allow the generation of coarse meshes with low error. Original (17060 vertices) Without collision test (600 vertices) Prevention of collisions (600 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 29 Detection of Collisions  Skipping invalid operations does not allow the generation of coarse meshes with low error.  Most operations of vertices close to the clothes won't be valid in a late stage.  Only some parts (head) can be reduced further. Original Without collision test Prevention of collisions

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 30 Avoidance of Collisions  Strategies to avoid the large number of invalid operations:  Move the part of the mesh, into which the contracted part bumped.  Look for a different target position, that does not cause an intersection. In this case the progressive representation of the model can be stored in the same way.  Both.

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 31 Avoidance of Collisions  Avoidance algorithm  Look for a valid target location that does not cause a self- intersection.  If a valid target location is found  evaluate quadric error metric at new target position  re-insert operation into priority queue.

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 32 Avoidance of Collisions  Find a valid target location that does not cause a self- intersection.  Not possible in some situations.  In most situations there is a valid region of valid target positions.  Find location in the valid region that minimizes the quadric error metric.  Explicit computation is very expensive.  We use approximate solutions TsTsTsTs v1v1v1v1 v2v2v2v2

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 33 Avoidance of Collisions  1st approximate solution: First Hit  Among all collision times t i we determine the time t min of the first collision.  As new target location we take the position at time t min of the contraction vertex causing the collision.  If not valid, we repeat it up to n times. titititi t = 0 TsTsTsTs v1v1v1v1 vcvcvcvc t = 1

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 34 Avoidance of Collisions  2nd approximate solution: Barycentric Sampling  We sample 14 possible target locations on the triangle ( v 1 v 2 v c ).  Sort the sample locations by increasing QEM error and check for collisions until the first valid target location is found. v1v1v1v1 vcvcvcvc v2v2v2v2

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 35 Avoidance of Collisions Original vertices Without collision test 600 vertices, error=0.105 Prevention of collisions 600 vertices, error=0.129 Avoidance of collisions 600 vertices, error=0.118

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 36 Results Original model: woman with dress (19498 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 37 Results The model simplified without collision test (370 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 38 Results The model simplified without collision test (370 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 39 Results The model simplified with collission avoidance (370 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 40 Results The model simplified with collission avoidance (370 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 41 Results Original model: man with trousers and shirt (17060 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 42 Results Simplified model with self-itersections (600 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 43 Results Simplified model with self-itersections (600 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 44 Results The model simplified with collision prevention (600 vertices) The model simplified with collision avoidance (600 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 45 Results The model simplified with collision prevention (600 vertices) The model simplified with collision avoidance (600 vertices)

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 46 Results Measurement of Hausdorff Distances (HD) Models Man WomanBunny No. of vertices: original No. of vertices: reduced HD: classical algorithm HD: collision prevention HD: first hit HD: barycentric sampling

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 47 Results Measurement of performance (sec / 1000 contractions) Models Man WomanBunny No. of vertices: original No. of vertices: reduced Time: classical algorithm Time: collision prevention Time: first hit Time: barycentric sampling

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 48 Conclusion  First approach to globally prevent and avoid self- intersections during mesh simplification.  We used vertex pair contraction, other approaches could be supported.  No new operations introduced, therefore progressive transmission and LOD can be supported without any modifications.  Generation of high quality approximations for models with close surface layers.

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 49 Future Works  Avoidance of insertion into grid in regions where no collision can arise.  Generalization for animated models.

Stefan Gumhold, Pavel Borodin, Reinhard Klein - Intersection Free Simplification University of Tuebingen  University of Bonn 50 Thank you