Applications. Oversampled 3D scan data. ~150k triangles ~80k triangles

Similar documents
Geometric Modeling. Mesh Decimation. Mesh Decimation. Applications. Copyright 2010 Gotsman, Pauly Page 1. Oversampled 3D scan data

Mesh Decimation. Mark Pauly

Mesh and Mesh Simplification

Mesh Repairing and Simplification. Gianpaolo Palma

Surface Simplification Using Quadric Error Metrics

Mesh Simplification. Mesh Simplification. Mesh Simplification Goals. Mesh Simplification Motivation. Vertex Clustering. Mesh Simplification Overview

CGAL. Mesh Simplification. (Slides from Tom Funkhouser, Adam Finkelstein)

Appearance Preservation

A Developer s Survey of Polygonal Simplification algorithms. CS 563 Advanced Topics in Computer Graphics Fan Wu Mar. 31, 2005

Mesh Decimation Using VTK

Geometry Processing & Geometric Queries. Computer Graphics CMU /15-662

A Comparison of Mesh Simplification Algorithms

Geometric Modeling and Processing

CSE 554 Lecture 6: Fairing and Simplification

Geometric Modeling. Bing-Yu Chen National Taiwan University The University of Tokyo

Processing 3D Surface Data

Processing 3D Surface Data

Overview. Efficient Simplification of Point-sampled Surfaces. Introduction. Introduction. Neighborhood. Local Surface Analysis

Final Project, Digital Geometry Processing

3-Dimensional Object Modeling with Mesh Simplification Based Resolution Adjustment

Digital Geometry Processing. Computer Graphics CMU /15-662

Curvature-Adaptive Remeshing with Feature Preservation of Manifold Triangle Meshes with Boundary

Isotopic Approximation within a Tolerance Volume

Alex Li 11/20/2009. Chris Wojtan, Nils Thurey, Markus Gross, Greg Turk

Overview. Spectral Processing of Point- Sampled Geometry. Introduction. Introduction. Fourier Transform. Fourier Transform

Multiresolution structures for interactive visualization of very large 3D datasets

Adjacency Data Structures

Fast Stellar Mesh Simplification

To Do. Resources. Algorithm Outline. Simplifications. Advanced Computer Graphics (Spring 2013) Surface Simplification: Goals (Garland)

Handles. The justification: For a 0 genus triangle mesh we can write the formula as follows:

: Mesh Processing. Chapter 8

All the Polygons You Can Eat. Doug Rogers Developer Relations

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

Voronoi Diagram. Xiao-Ming Fu

A Short Survey of Mesh Simplification Algorithms

Simplification. Stolen from various places

Motivation. Freeform Shape Representations for Efficient Geometry Processing. Operations on Geometric Objects. Functional Representations

3/1/2010. Acceleration Techniques V1.2. Goals. Overview. Based on slides from Celine Loscos (v1.0)

As a consequence of the operation, there are new incidences between edges and triangles that did not exist in K; see Figure II.9.

EECS 487: Interactive Computer Graphics

Processing 3D Surface Data

Cross-Parameterization and Compatible Remeshing of 3D Models

Curves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification

Scientific Visualization Example exam questions with commented answers

Illumination and Geometry Techniques. Karljohan Lundin Palmerius

Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass

5.2 Surface Registration

Multi-level Partition of Unity Implicits

Saab. Kyle McDonald. Polygon Meshes

Moving Least Squares Multiresolution Surface Approximation

Surfaces, meshes, and topology

A General Framework for Mesh Decimation

A Study on View-Dependent Representation of 3-D Mesh Models Using Hierarchical Partitioning

Manipulating the Boundary Mesh

Subdivision Surfaces. Homework 1: Questions on Homework? Last Time? Today. Tensor Product. What s an illegal edge collapse?

Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees

Parameterization with Manifolds

Subdivision Surfaces. Homework 1: Questions/Comments?

Greedy Routing with Guaranteed Delivery Using Ricci Flow

and Recent Extensions Progressive Meshes Progressive Meshes Multiresolution Surface Modeling Multiresolution Surface Modeling Hugues Hoppe

Digital Geometry Processing

Deformation Sensitive Decimation

Finding Shortest Path on Land Surface

CS 532: 3D Computer Vision 12 th Set of Notes

Meshes and Manifolds. Computer Graphics CMU /15-662

Geometry: 3D coordinates Attributes. e.g. normal, color, texture coordinate. Connectivity

Point-based Simplification Algorithm

Mesh Generation. Quadtrees. Geometric Algorithms. Lecture 9: Quadtrees

Iso-surface cell search. Iso-surface Cells. Efficient Searching. Efficient search methods. Efficient iso-surface cell search. Problem statement:

Progressive Mesh. Reddy Sambavaram Insomniac Games

Outline. Reconstruction of 3D Meshes from Point Clouds. Motivation. Problem Statement. Applications. Challenges

Definitions. Topology/Geometry of Geodesics. Joseph D. Clinton. SNEC June Magnus J. Wenninger

Simple Silhouettes for Complex Surfaces

Scalar Algorithms: Contouring

Lecture notes: Object modeling

Geometric Features for Non-photorealistiic Rendering

Fathi El-Yafi Project and Software Development Manager Engineering Simulation

Computer Graphics Ray Casting. Matthias Teschner

Appearance-Preserving Simplification

Möbius Transformations in Scientific Computing. David Eppstein

Analytical and Computer Cartography Winter Lecture 9: Geometric Map Transformations

Lesson 01 Polygon Basics 17. Lesson 02 Modeling a Body 27. Lesson 03 Modeling a Head 63. Lesson 04 Polygon Texturing 87. Lesson 05 NURBS Basics 117

: Mesh Processing. Chapter 2

opology Based Feature Extraction from 3D Scalar Fields

Simplification and Streaming of GIS Terrain for Web Client

Surface Topology ReebGraph

Collision Detection. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering

Progressive Compression for Lossless Transmission of Triangle Meshes in Network Applications

Geometric Modeling Mortenson Chapter 11. Complex Model Construction

Parallel Computation of Spherical Parameterizations for Mesh Analysis. Th. Athanasiadis and I. Fudos University of Ioannina, Greece

Rafael Jose Falcon Lins. Submitted in partial fulfillment of the requirements for the degree of Master of Computer Science

Design Intent of Geometric Models

Efficient Minimization of New Quadric Metric for Simplifying Meshes with Appearance Attributes

CS 523: Computer Graphics, Spring Shape Modeling. Differential Geometry of Surfaces

Interpolating and Approximating Implicit Surfaces from Polygon Soup

CS 283: Assignment 1 Geometric Modeling and Mesh Simplification

An Algorithm of 3D Mesh Reconstructing Based on the Rendering Pipeline

Half-edge Collapse Simplification Algorithm Based on Angle Feature

Section 8.3: Examining and Repairing the Input Geometry. Section 8.5: Examining the Cartesian Grid for Leakages

Sensor Tasking and Control

Transcription:

Mesh Simplification

Applications Oversampled 3D scan data ~150k triangles ~80k triangles 2

Applications Overtessellation: E.g. iso-surface extraction 3

Applications Multi-resolution hierarchies for efficient geometry processing level-of-detail (LOD) rendering 4

Applications Adaptation to hardware capabilities 2013 1999 5

Size-Quality Tradeoff error size 6

Problem Statement Given: Find: such that 1. and is minimal, or 2. and is minimal Respect additional fairness criteria normal deviation, triangle shape, scalar attributes, etc. 7

Mesh Decimation Methods Vertex clustering Incremental decimation Resampling Mesh approximation 8

Vertex Clustering Cluster Generation Computing a representative Mesh generation Topology changes 9

Vertex Clustering Cluster Generation Uniform 3D grid Map vertices to cluster cells Computing a representative Mesh generation Topology changes 10

Vertex Clustering Cluster Generation Computing a representative Average/median vertex position Error quadrics Mesh generation Topology changes 12

Computing a Representative Average vertex position 13

Computing a Representative Median vertex position 14

Computing a Representative Error quadrics 15

Error Quadrics Patch is expected to be piecewise flat Minimize distance to neighboring triangles planes 16

Error Quadrics Squared distance of point p to plane q: 17

Error Quadrics Sum distances to planes q i of vertex neighboring triangles: Point p* that minimizes the error satisfies: 18

Comparison average median error quadric 19

Vertex Clustering Cluster Generation Computing a representative Mesh generation Clusters p {p 0,...,p n }, q {q 0,...,q m } Topology changes 20

Vertex Clustering Cluster Generation Computing a representative Mesh generation Clusters p {p 0,...,p n }, q {q 0,...,q m } Connect (p,q) if there was an edge (p i,q j ) Topology changes 21

Vertex Clustering Cluster Generation Computing a representative Mesh generation Topology changes If different sheets pass through one cell Can be non-manifold 22

Outline Applications Problem Statement Mesh Decimation Methods Vertex Clustering Incremental Decimation Extensions 23

Incremental Decimation 500K 50K 5K 0.5K 24

Incremental Decimation General Setup Decimation operators Error metrics Fairness criteria Topology changes 25

General Setup Repeat: pick mesh region apply decimation operator Until no further reduction possible 26

Greedy Optimization For each region evaluate quality after decimation enqeue(quality, region) Repeat: get best mesh region from queue apply decimation operator update queue Until no further reduction possible 27

Global Error Control For each region evaluate quality after decimation enqeue(quality, region) Repeat: get best mesh region from queue if error < ε apply decimation operator update queue Until no further reduction possible 28

Incremental Decimation General Setup Decimation operators Error metrics Fairness criteria Topology changes 29

Decimation Operators What is a "region"? What are the DOF for re-triangulation? Classification Topology-changing vs. topology-preserving Subsampling vs. filtering Inverse operation progressive meshes 30

Vertex Removal Select a vertex to be eliminated 31

Vertex Removal Select all triangles sharing this vertex 32

Vertex Removal Remove the selected triangles, creating the hole 33

Vertex Removal Fill the hole with new triangles 34

Decimation Operators Vertex Removal Vertex Insertion Remove vertex Re-triangulate hole Combinatorial degrees of freedom 35

Decimation Operators Edge Collapse Vertex Split Merge two adjacent vertices Define new vertex position Continuous degrees of freedom Filter along the way 36

Decimation Operators Half-Edge Collapse Restricted Vertex Split Collapse edge into one end point Special case of vertex removal Special case of edge collapse No degrees of freedom Separates global optimization from local optimization 37

Half-Edge Collapse 38

Half-Edge Collapse 39

Half-Edge Collapse 40

Half-Edge Collapse 41

Half-Edge Collapse 42

Half-Edge Collapse 43

Half-Edge Collapse 44

Half-Edge Collapse 45

Half-Edge Collapse 46

Half-Edge Collapse flip! 47

Incremental Decimation General Setup Decimation operators Error metrics Fairness criteria Topology changes 48

Local Error Metrics Local distance to mesh Compute average plane No comparison to original geometry 49

Global Error Metrics Error quadrics Squared distance to planes at vertex No bound on true error Q 1 p it Q i p i = 0, i={1,2} p 1 p 2 Q 2 solve v 3T Q 3 v 3 = min < ε? ok Q 3 = Q 1 +Q 2 v 3 50

Incremental Decimation General Setup Decimation operators Error metrics Fairness criteria Topology changes 51

Fairness Criteria Rate quality of decimation operation Approximation error Triangle shape Dihedral angles Valence balance... 52

Fairness Criteria Rate quality after decimation Approximation error Triangle shape r 1 Dihedral angles Valence balance... r 2 53

Fairness Criteria Rate quality after decimation Approximation error Triangle shape Dihedral angles Valence balance... 54

Fairness Criteria Rate quality after decimation Approximation error Triangle shape Dihedral angles Valence balance Color differences... 55

Fairness Criteria Rate quality after decimation Approximation error Triangle shape Dihedral angles Valence balance Color differences... 56

Fairness Criteria Rate quality after decimation Approximation error Triangle shape Dihedral angles Valence balance Color differences... 57

Fairness Criteria Rate quality after decimation Approximation error Triangle shape Dihedral angles Valence balance Color differences... 58

Incremental Decimation General Setup Decimation operators Error metrics Fairness criteria Topology changes 59

Topology Changes? Merge vertices across non-edges Changes mesh topology Need spatial neighborhood information Generates non-manifold meshes Vertex Contraction Vertex Separation 60

Topology Changes? Merge vertices across non-edges Changes mesh topology Need spatial neighborhood information Generates non-manifold meshes manifold non-manifold 61

Comparison Vertex clustering fast, but difficult to control simplified mesh topology changes, non-manifold meshes global error bound, but often not close to optimum Incremental decimation with quadric error metrics good trade-off between mesh quality and speed explicit control over mesh topology restricting normal deviation improves mesh quality 62