Measuring Simplification Error Jonathan Cohen Computer Science Department Johns Hopkins University

Slides:



Advertisements
Similar presentations
Surface Simplification using Quadric Error Metrics Guowei Wu.
Advertisements

Surface Simplification Using Quadric Error Metrics Speaker: Fengwei Zhang September
Exploration of bump, parallax, relief and displacement mapping
03/16/2009Dinesh Manocha, COMP770 Texturing Surface’s texture: its look & feel Graphics: a process that takes a surface and modifies its appearance using.
View-Dependent Simplification of Arbitrary Polygonal Environments David Luebke.
Developer’s Survey of Polygonal Simplification Algorithms Based on David Luebke’s IEEE CG&A survey paper.
Real-Time Rendering POLYGONAL TECHNIQUES Lecture 05 Marina Gavrilova.
UVA / UNC / JHU Perceptually Guided Simplification of Lit, Textured Meshes Nathaniel WilliamsUNC David LuebkeUVA Jonathan D. CohenJHU Michael KelleyUVA.
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.
Haptic Rendering using Simplification Comp259 Sung-Eui Yoon.
View-Dependent Refinement of Progressive Meshes Hugues Hoppe Microsoft Research SIGGRAPH 97.
1 Displaced Subdivision Surfaces Aaron Lee Princeton University Henry Moreton Nvidia Hugues Hoppe Microsoft Research.
Lapped Textures SIGGRAPH 2000 Emil Praun Adam Finkelstein Hugues Hoppe.
Korea Game Society, 1~3 February 2005, Muju Simple and Fast Polygonal Simplification using IAMC, Kim Nam Woo Simple and Fast Polygonal Simplification using.
(conventional Cartesian reference system)
Visibility-Guided Simplification Eugene Zhang and Greg Turk GVU Center, College of Computing Georgia Institute of Technology.
Irregular to Completely Regular Meshing in Computer Graphics Hugues Hoppe Microsoft Research International Meshing Roundtable 2002/09/17 Hugues Hoppe Microsoft.
Visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Dynamic View-Dependent Simplification for Polygonal.
Visualization and graphics research group CIPIC Feb 18, 2003Multiresolution (ECS 289L) - Winter Progressive Meshes (SIGGRAPH ’96) By Hugues Hoppe.
3D Model Simplification (GATE-540)
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.
Originally presented at: ACM SIGGRAPH 2003 Symposium on Interactive 3D Graphics Interruptible Rendering Joint work with: David Luebke * Benjamin Watson†
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.
DPL10/16/2015 CS 551/651: Simplification Continued David Luebke
Level of Detail: Choosing and Generating LODs David Luebke University of Virginia.
Surface Simplification Using Quadric Error Metrics Garland & Heckbert Siggraph 97.
Levels of Detail COMP 770 3/25/09. Problem Models can be very detailed Look great when close up Last week we explored one way of attacking this problem.
CSE554SimplificationSlide 1 CSE 554 Lecture 7: Simplification Fall 2013.
HRTFs can be calculated
Andrew Nealen / Olga Sorkine / Mark Alexa / Daniel Cohen-Or SoHyeon Jeong 2007/03/02.
Simplifying Surfaces with Color and Texture using Quadric Error Metrics Michael Garland Paul S. Heckbert Carnegie Mellon University October 1998 Michael.
3D Mesh Simplification Electrical and Computer Engineering Department University of Coimbra Faculty of Science and Technology Presented by Luis A. Almeida.
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
Level of Detail Management for Games David Luebke University of Virginia Introduction, Overview.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
CS418 Computer Graphics John C. Hart
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.
Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 9 Ravi Ramamoorthi
Solid Modeling 2002 A Multi-resolution Topological Representation for Non-manifold Meshes Leila De Floriani, Paola Magillo, Enrico Puppo, Davide Sobrero.
ALGORITHMS FOR POLYGON REDUCTION Author: Ing. Roman Schulz FIT VUT, 2008.
Level of Detail: Generating LODs David Luebke University of Virginia.
DPL2/10/2016 CS 551/651: Final Review David Luebke
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)
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.
CSL 859: Advanced Computer Graphics Dept of Computer Sc. & Engg. IIT Delhi.
1 Geometry for Game. Geometry Geometry –Position / vertex normals / vertex colors / texture coordinates Topology Topology –Primitive »Lines / triangles.
1 Real-Time High-Quality View-dependent Texture Mapping using Per-Pixel Visibility Damien Porquet Jean-Michel Dischler Djamchid Ghazanfarpour MSI Laboratory,
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
Parallel Model Simplification of Very Large Polygonal Meshes
Chap 10. Geometric Level of Detail
Presentation transcript:

Measuring Simplification Error Jonathan Cohen Computer Science Department Johns Hopkins University

Why Measure Error? * Guide simplification process –Making better choices produces better simplifications Know quality of results –Object-space error bounds describes quality Know when to show a particular LOD –Which LOD for a given screen-space error * Balance quality for large environments –What error bound for a given polygon count

Geometric Error Measures Promote accurate 3D shape preservation Also preserves screen-space shape –Silhouettes –Pixel coverage

Ford Bronco Model Triangles : 41,855 27,970 20,922 12,939 8,385 4,766 courtesy of Division and Viewpoint

Performing Simplification Measure cost of possible operations according to error measure –Crucial to simplification quality Place operations in queue according to error Perform operations in queue –After each operation, re-evaluate error of operations in neighborhood

Classifying Geometric Error Metrics Vertex-vertex distance Vertex-plane distance Point-surface distance Surface-surface distance

Vertex-Vertex Distance E = max( dist(v 1, v 3 ), dist(v 2, v 3 ) ) Measures the maximum distance travelled by merging vertices Appropriate during topology changes –Rossignac and Borrel 93, –Luebke and Erikson 97 Loose for topology-preserving collapses v1v1v1v1 v2v2v2v2 v3v3v3v3

Minimizing/Propagating Error Error spheres record error at each vertex –Guaranteed bound, but very conservative Minimum location lies on edge –Not always at the center

Vertex-Plane Distance Store set of planes with each vertex –Error based on distance from vertex to planes –When vertices are merged, merge sets Ronfard and Rossignac 96 –Store plane sets –Compute max distance Error Quadrics - Garland and Heckbert 96 –Store quadratic form (symmetric 4x4 matrix) –Compute sum of square distances a b c a b c

Minimizing/Propagating Error Minimal position found by solving 4x4 linear system Error propagated by summing 4x4 matrices of merged vertices Error quadrics visualized as ellipsoids (Garland/Heckbert 1997)

Memoryless Simplification Don’t measure error from original mesh –Measure from the current mesh –Incremental rather than total error –Lindstrom/Turk 98 New minimization process –Preserve volume and area as simplification progresses Low error demonstrated after-the-fact –Metro - Cignoni et al. 96

Point-Surface Distance Used in Hoppe 93 and 96 Map point set to closest points on simplified surface Compute sum of square distances

Minimizing/Propagating Error Error is minimized by solving a linear least squares system Propagation is unnecessary –Error always measured from original, high-resolution points –Slows down as more points associated with simplified mesh region

Surface-Surface Distance Bound maximum distance between input and simplified surfaces –Tolerance Volumes - Guéziec 96 –Simplification Envelopes - Cohen/Varshney 96 –Hausdorf Distance - Klein 96 –Mapping Distance - Bajaj/Schikore 96, Cohen et al. 97

Minimizing/Propagating Error Minimum position need not lie on edge Bounding volume covers surface, not just vertices Simplified mesh volume always contains original mesh

Vertex-Vertex != Surface-Surface Error is zero at vertices and exterior edges Error is non-zero everywhere else –Be careful! – Not captured by vertex-vertex or vertex-plane metrics Edge swap

Screen-space Geometric Error

Attribute Error Metrics Attributes include colors, normals, and texture coordinates Promote accuracy of final pixel colors

Classifying Attribute Error Metrics Vertex-vertex distance Vertex-plane distance Point-surface distance Surface-surface distance Image-driven metric Perceptually-based metric

Vertex-Vertex Distance GAPS point clouds - Erikson/Manocha 98 –Measure sum of square distances from vertex to its constituent vertices (area-weighted) –Used for colors, normals, and texture coordinates Normal cones –Luebke/Erikson 97, Xia et al. 97

Vertex-Plane Distance Higher-dimensional error quadrics –Garland and Heckbert 98 –Vertices live in higher-dimensional position + attribute space –Planes defined in this space Multiple attribute quadrics –Hoppe 99 –Decouples affects of position and attributes –Reduces storage and computational complexity

Point-Surface Distance Extension of geometric point-surface distance –Hoppe 96 Geometric correspondences found between original surface samples and simplified surface Sum of square attribute distances minimized Used primarily for vertex colors

Surface-Surface Distance Bajaj / Schikore 96 –Geometric projections provide local mappings –Maximum distance of scalar attributes measured over surface

Image-driven Simplification Measure error by rendering –Compare resulting images –Lindstrom/Turk 2000 Captures attribute and shading error, as well as texture content 12 cameras used to capture quality of bunny simplification (Lindstrom/Turk 2000)

Perceptually-guided Simplification Use contrast sensitivity function to guide simplification –Gives some handle on perceptibility –Williams et al Measure contrast and spatial frequency of changes induced by operation Lit, textured modelTexture contrastLit texture contrast

Screen-space Attribute Error? Normal error controls dynamic refinement around highlights –Xia et al. 97, Klein 98 –Doesn’t allow more simplification as objects recede Color control? Texture coordinates work like geometric error –Cohen et al. 98 Perceptual metrics can weigh relative importance of color, normal, textures, lighting and silhouettes – for a price

Appearance Preserving Simplification Preserve three appearance attributes: –Surface Position –Surface Curvature –Material Color Each may require different sampling

Normals Undersampled 13,433 triangles 1,749 triangles 10 pixel surface deviation

Normals Properly Sampled 13,433 triangles 1,749 triangles, 10 pixel deviation

v 1, c 1, n 1 v = vertex coordinate = (x,y,z) c = color = (r,g,b) n = normal = (n x,n y,n z ) v 2, c 2, n 2 v 3, c 3, n 3 Traditional Polygonal Representation

Traditional Simplification Filters surface position, colors, and normals Must filter all three equally

texture map normal map v 1, t 1 v 2, t 2 v 3, t 3 v = vertex coordinate = (x,y,z) t = texture coordinate = (u,v) c = color = (r,g,b) n = normal vector = (n x,n y,n z ) c1c1 c2c2 c3c3 n1n1 n2n2 n3n3 Decoupled Representation

Decoupled Approach Simplification filters surface position and texture coordinates Color and normal attributes filtered per-pixel (mip-mapping, etc.)

Sample Normal Map polygonal surface patchnormal map

Normal Map vs. Bump Map Normal map –Absolute normals in object space –Constant as object is simplified Same normal map okay for all LODs Bump map –Perturbations of triangle normal –Changes as object is simplified Need different bump map for each LOD

Texture Deviation Metric Distance between corresponding 3D points –Same 2D texture coordinates –Projects at run time to 2D pixel deviation Intuitive error tolerance specification –Pixels of deviation for both surface position and texture error!

Point Correspondence mesh M i mesh M i+1 2D texture domain (i+1) st edge collapse XiXiXiXi X i+1 x e i,i+1 (x) = dist(X i, X i+1 ) E i,i+1 = max e i,i+1 (x)  x  P P

Hardware Requirements Texture and normal (or bump) map capability –Bandwidth for attribute map lookups –Per-pixel lighting computation Demonstrated originally on PixelFlow Possible on most modern graphics hardware

Model Requirements Parameterized model Ideal parameterization –Each patch fills [0,1] texture space –Allows each patch to simplify to 2 triangles –Allows equal texture resolution along patch boundaries –Allows standard mip-mapping Acceptable parameterization –Each patch occupies simple polygon in texture space –Simplification limited by polygon sides –Mip-mapping problematic Want to minimize required resolution

APS Level-of-detail Hierarchy model courtesy of Stanford and Caltech 7,809 tris 3,905 tris 1,951 tris 975 tris 488 tris

250,000 Tris Original

62,000 Tris Phong Shading 3 pixel error

250,000 Tris Original

62,000 Tris Normal Map 3 pixel error

250,000 Tris Original

8,000 Tris Phong Shading 15 pixel error

250,000 Tris Original

8,000 Tris Normal Map 15 pixel error

250,000 Tris Original

1,000 Tris Phong Shading 78 pixel error

250,000 Tris Original

1,000 Tris Normal Map 78 pixel error

Conclusions Geometric error measured in object-space –Used during simplification and at run-time Attribute error measured in attribute space –Used during simplification, and more limited use at run-time Appearance-preserving simplification captures attributes and simplifies geometry –Texture deviation used during simplification and at run-time (same as geometric error) –Attributes “simplified” using mip-mapping

References –Bajaj, Chandrajit and Daniel Schikore. Error-bounded Reduction of Triangle Meshes with Multivariate Data. SPIE. vol pp –Cohen, Jonathan, Dinesh Manocha, and Marc Olano. Simplifying Polygonal Models using Successive Mappings. Proceedings of IEEE Visualization '97. pp –Cohen, Jonathan, Marc Olano, and Dinesh Manocha. Appearance-Preserving Simplification. Proceedings of ACM SIGGRAPH 98. pp –Cohen, Jonathan, Amitabh Varshney, Dinesh Manocha, Gregory Turk, Hans Weber, Pankaj Agarwal, Frederick Brooks, and William Wright. Simplification Envelopes. Proceedings of SIGGRAPH 96. pp –DeFloriani, Leila, Paola Magillo, and Enrico Puppo. Building and Traversing a Surface at Variable Resolution. Proceedings of IEEE Visualization ‘97. pp –Erikson, Carl and Dinesh Manocha. GAPS: General and Automatic Polygonal Simplification. Proceedings of 1999 ACM Symposium on Interactive 3D Graphics. pp

References –Garland, Michael and Paul Heckbert. Simplifying Surfaces with Color and Texture using Quadric Error Metrics. Proceedings of IEEE Visualization '98. pp , 542. –Garland, Michael and Paul Heckbert. Surface Simplification using Quadric Error Bounds. Proceedings of SIGGRAPH 97. pp –Guéziec, André. Surface Simplification with Variable Tolerance. Proceedings of Second Annual International Symposium on Medical Robotics and Computer Assisted Surgery (MRCAS '95). pp –Hoppe, Hugues. Progressive Meshes. Proceedings of SIGGRAPH 96. pp –Hoppe, Hugues. View-Dependent Refinement of Progressive Meshes. Proceedings of SIGGRAPH 97. pp –Hoppe, Hugues, Tony DeRose, Tom Duchamp, John McDonald, and Werner Stuetzle. Mesh Optimization. Proceedings of SIGGRAPH 93. pp –Hoppe, Hugues H. New Quadric Metric for Simplifying Meshes with Appearance Attributes. Proceedings of IEEE Visualization '99. pp

References –Klein, Reinhard, Gunther Liebich, and Wolfgang Straßer. Mesh Reduction with Error Control. Proceedings of IEEE Visualization '96. –Lindstrom, Peter and Greg Turk. Fast and Memory Efficient Polygonal Simplification. Proceedings of IEEE Visualization '98. pp , 544. –Lindstrom, Peter and Greg Turk. Image-Driven Simplification. ACM Transactions on Graphics. vol 19(3). pp –Luebke, David and Carl Erikson. View-Dependent Simplification of Arbitrary Polygonal Environments. Proceedings of SIGGRAPH 97. pp –Luebke, David, Martin Reddy, Jonathan Cohen, Benjamin Watson, Amitabh Varshney, and Robert Huebner. Level of Detail for 3D Computer Graphics. Morgan-Kaufman –Ronfard, Remi and Jarek Rossignac. Full-range Approximation of Triangulated Polyhedra. Computer Graphics Forum. vol. 15(3) pp and 462.

References –Rossignac, Jarek and Paul Borrel. Multi-Resolution 3D Approximations for Rendering. Modeling in Computer Graphics. Springer-Verlag pp –Williams, Nathaniel, David Luebke, Jonathan Cohen, Mike Kelly, and Brenden Schubert. Perceptually-guided Simplification of Lit, Textured Meshes. Proceedings of 2003 ACM Symposium on Interactive 3D Graphics. –Xia, Julie C., Jihad El-Sana, and Amitabh Varshney. Adaptive Real-Time Level-of-Detail-Based Rendering for Polygonal Models. IEEE Transactions on Visualization and Computer Graphics. vol. 3(2) pp