Dual Marching Cubes: An Overview

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

CSE554Cell ComplexesSlide 1 CSE 554 Lecture 3: Shape Analysis (Part II) Fall 2014.
Computer Graphics1 Geometry Area of polygons & Volume Of Polygonal surfaces.
Surface Simplification Using Quadric Error Metrics Speaker: Fengwei Zhang September
Efficient access to TIN Regular square grid TIN Efficient access to TIN Let q := (x, y) be a point. We want to estimate an elevation at a point q: 1. should.
Approximations of points and polygonal chains
Applications of Euler’s Formula for Graphs Hannah Stevens.
Computational Geometry II Brian Chen Rice University Computer Science.
Extended Gaussian Images
Developer’s Survey of Polygonal Simplification Algorithms Based on David Luebke’s IEEE CG&A survey paper.
COMPUTER GRAPHICS CS 482 – FALL 2014 OCTOBER 13, 2014 IMPLICIT REPRESENTATIONS IMPLICIT FUNCTIONS IMPLICIT SURFACES MARCHING CUBES.
Discrete Geometry Tutorial 2 1
CHAPTER 5: CONVEX POLYTOPES Anastasiya Yeremenko 1.
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2013.
1 Computer Graphics Chapter 7 3D Object Modeling.
CS447/ Realistic Rendering -- Solids Modeling -- Introduction to 2D and 3D Computer Graphics.
2. Voronoi Diagram 2.1 Definiton Given a finite set S of points in the plane , each point X of  defines a subset S X of S consisting of the points of.
3. Delaunay triangulation
Shape from Contours and Multiple Stereo A Hierarchical, Mesh-Based Approach Hendrik Kück, Wolfgang Heidrich, Christian Vogelgsang.
Mesh Simplification Global and Local Methods:
Surface Reconstruction from 3D Volume Data. Problem Definition Construct polyhedral surfaces from regularly-sampled 3D digital volumes.
Polygonal Mesh – Data Structure and Smoothing
Visualization and graphics research group CIPIC January 30, 2003Multiresolution (ECS 289L) - Winter MAPS – Multiresolution Adaptive Parameterization.
Visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Surface Simplification Using Quadric Error Metrics.
ITUppsala universitet Data representation and fundamental algorithms Filip Malmberg
Geometry Chapter 20. Geometry is the study of shapes Geometry is a way of thinking about and seeing the world. Geometry is evident in nature, art and.
Chapter 12 Surface Area and Volume. Topics We Will Discuss 3-D Shapes (Solids) Surface Area of solids Volume of Solids.
Chapter 12 Surface Area and Volume. Topics We Will Discuss 3-D Shapes (Solids) Surface Area of solids Volume of Solids.
9-4 Geometry in Three Dimensions  Simple Closed Surfaces  Regular Polyhedra  Cylinders and Cones.
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Curves and Surfaces (cont’) Amy Zhang. Conversion between Representations  Example: Convert a curve from a cubic B-spline curve to the Bézier form:
Marching Cubes: A High Resolution 3D Surface Construction Algorithm
Volumetric and Blobby Objects Lecture 8 (Modelling)
Subdivision/Refinement Dr. S.M. Malaek Assistant: M. Younesi.
How much deeper would oceans be if sponges didn’t live there?
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.
Vertex – A point at which two or more edges meet Edge – A line segment at which two faces intersect Face – A flat surface Vertices, Edges, Faces.
Approximating Normals for Marching Cubes applied to Locally Supported Isosurfaces Gregory M. Nielson H. Adam Huang (Speaker) Steve Sylvester Computer Science.
Marching Cubes: A High Resolution 3D Surface Construction Algorithm William E. Lorenson Harvey E. Cline General Electric Company Corporate Research and.
TEL-AVIV UNIVERSITY RAYMOND AND BEVERLY SACKLER FACULTY OF EXACT SCIENCES SCHOOL OF MATHEMATICAL SCIENCES An Algorithm for the Computation of the Metric.
Geometry Final Vocabulary. A ____________________ polygon is both equilateral and equiangular. regular.
Euler’s characteristic and the sphere
Solid Modeling. Solid Modeling - Polyhedron A polyhedron is a connected mesh of simple planar polygons that encloses a finite amount of space. A polyhedron.
Mesh Coarsening zhenyu shu Mesh Coarsening Large meshes are commonly used in numerous application area Modern range scanning devices are used.
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2015.
A New Voronoi-based Reconstruction Algorithm
Chapter Area, Pythagorean Theorem, and Volume 14 Copyright © 2013, 2010, and 2007, Pearson Education, Inc.
Geometry Bingo. A parallelogram with four right angles. Opposite sides are parallel and congruent.
12.1 Exploring Solids.
CHAPTER 5 CONTOURING. 5.3 CONTOURING Fig 5.7. Relationship between color banding and contouring Contour line (isoline): the same scalar value, or isovalue.
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
Section 12-1 Exploring Solids. Polyhedron Three dimensional closed figure formed by joining three or more polygons at their side. Plural: polyhedra.
11-1 Space Figures and Cross Sections Objectives To recognize polyhedra and their parts To visualize cross sections of space figures.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 10, 2015 TRIANGLE MESHES 3D MESHES MESH OPERATIONS.
Slide 1Lecture Fall ‘00 Surface Modeling Types: Polygon surfaces Curved surfaces Volumes Generating models: Interactive Procedural.
APE'07 IV INTERNATIONAL CONFERENCE ON ADVANCES IN PRODUCTION ENGINEERING June 2007 Warsaw, Poland M. Nowakiewicz, J. Porter-Sobieraj Faculty of.

Unit 11: 3-Dimensional Geometry
POLYGON MESH Advance Computer Graphics
Decimation Of Triangle Meshes
Y. Davis Geometry Notes Chapter 1.
Unit 11: 3-Dimensional Geometry
Symmetry and three-dimensional geometry
Lecture 3 : Isosurface Extraction
Volume Graphics (lecture 4 : Isosurface Extraction)
Vertical Angles Vertical angles are across from each other and are created by intersecting lines.
Iso-Surface extraction from red and green samples on a regular lattice
Subdivision Surfaces 고려대학교 컴퓨터 그래픽스 연구실 cgvr.korea.ac.kr.
14 Chapter Area, Pythagorean Theorem, and Volume
Presentation transcript:

Dual Marching Cubes: An Overview Paper by Gregory M. Nielson

Purpose Improve existing Marching Cube algorithm Eliminate or reduce poorly shaped triangles Eliminate or reduce wonky specular highlights

Motivation Duality Principal of Projective Geometry Dual Polyhedra All propositions occur in dual pairs. One can infer the corresponding proposition of a pair by interchanging the words point and line. Dual Polyhedra For every polyhedron there is another polyhedron where faces and vertices occupy complementary locations.

Examples:

What Is Needed Develop a correspondence between the surface elements of a mesh and the vertices of some other mesh. Both meshes must have specific properties for this to occur.

Creating a Dual Surface Create a “patch” surface realized by eliminating the edges of the interior surface to the voxels. Make each patch of the new surface polygon bounded. Include each vertex of the original MC surface in exactly four patches. Call this surface S.

Creating a Dual Surface, pt. 2 The dual surface will consist of quad patches. The connectivity of the patches is the same as the connectivity of the vertices of the surface S Now exploit duality principal.

Marching Cubes Defined Input: Fi,j,k = F(ix, jy, kz) Denote the voxel: (ix, jy, kz) to ((I+1)x, (j+1)y, (k+1)z) By: Bijk Separate lattice points with: Fi,j,k > a

Defining the Patch The patch surface has a fine structure given that it consist of three mutually orthogonal planar curves. Let Fj where j = 1, …, M denote the patches of S and Fj = (Vj1, V,j2 …, Vj3) where j = 1, …, M denote the vertices of each patch.

Defining the Patch, cont. Each vertex of S lies on the edge of the lattice. Four voxels share each edge of the lattice. Thus each vertex, Vj, has exactly four patches of S that contain it.

Defining the Patch, cont. Let X(X) be the space of surfaces produced by allowing the vertices of S to slide anywhere along their respective lattice edges. The edges (of the lattice) joining a point in X to points not in X are the same edges containing the vertices of the MC surface.

Defining the Dual For S in X(X) S is a surface comprised of quad patches with the following properties: For each patch Fj of S there is a vertex of S lying in the interior of the voxel containing Fj For every vertex of S there is one quad patch Pj of S For every edge of S there is an associated edge of S

Four Adjacent Patches Dual and Patch Surface

Summary of Definitions The topology for both the patch space, X(X), and the dual space (X) is completely determined by the subset X of the lattice L The connectivity of the vertices of X(X) is the same as the connectivity of the patches of (X) and vice versa. There is a one-to-one coorespondance between the edges of S and S. The edge joining two vertices of S cooresponds to the common edge of their associated quad patches.

Producing the Dual Directly It is not necessary to produce the patch surface and then the dual surface afterwards. There is a triangulation (quadulation?) table for computing the dual surface directly.

MC Triangulator Dual Rectangulator

Examples of the Dual Surface Splatting: Mesh Viewing:

Improvement of Specular Lighting

Viewing Segmented Volumes The original volume with the samples of the function is not needed in order to apply the algorithm. Using the separating midpoint surface we can still view the mesh using the algorithm

Utilizing the Duality Principal Since the correspondance is one-to-one we have an inverse mapping back into the patch space Triangulation of Quadrilaterals will need to occur.

To Infinity and Beyond Repeated application of the v operator leads to increasing approximation of the original object. Eventually the v operator has no effect on the surface produced. This staged is called the fixed-point shroud.

Summary: Pros A definite refinement over the standard MC algorithm. Reduces visual artifacts from elongated triangles and improves specular lighting. Allows the user to define the level of precision in the final mesh.

Summary: Cons Not all surfaces produced are manifolds. Parallelism? Normals, Curvature, etc Simplification, Multiresolution, etc. Quad rendering is somewhat slower. Complexity? Parallelism?