CHAPTER 5 CONTOURING. 5.3 CONTOURING Fig 5.7. Relationship between color banding and contouring Contour line (isoline): the same scalar value, or isovalue.

Slides:



Advertisements
Similar presentations
Reconstruction from Voxels (GATE-540)
Advertisements

Yingcai Xiao Chapter 6 Fundamental Algorithms. Types of Visualization Transformation Types 1.Data (Attribute Transformation) 2.Topology (Topological Transformation)
3D Head Mesh Data Stereo Vision Active Stereo 3D Reconstruction 3dMD System 1.
Visualization Data Representation Ray Gasser SCV Visualization Workshop – Fall 2008.
CLASS 9 ADVANCE RENDERING RAY TRACING RADIOSITY LIGHT FIELD CS770/870.
3DSkeleton-based Human Modeling with Metaballs 18 April 2008 Donghun Kim Robot Vision Lab.
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2013.
Contour Tree and Small Seed Sets for Isosurface Traversal Marc van Kreveld Rene van Oostrum Chandrajit Bajaj Valerio Pascucci Daniel R. Schikore.
CDS 301 Fall, 2009 Scalar Visualization Chap. 5 September 24, 2009 Jie Zhang Copyright ©
1 Computer Graphics Chapter 7 3D Object Modeling.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Information Visualization.
lecture 4 : Isosurface Extraction
Surface Reconstruction from 3D Volume Data. Problem Definition Construct polyhedral surfaces from regularly-sampled 3D digital volumes.
Advanced Iso- Surfacing Algorithms Mengxia Zhu, Fall 2007.
Introduction to Volume Visualization Mengxia Zhu Fall 2007.
Tetra-Cubes: An algorithm to generate 3D isosurfaces based upon tetrahedra BERNARDO PIQUET CARNEIRO CLAUDIO T. SILVA ARIE E. KAUFMAN Department of Computer.
Seminar 1 Surface Rendering, Decimation Presented By Sonali Barua Date:10/31/2005.
Fast Isocontouring For Improved Interactivity Chandrajit L. Bajaj Valerio Pascucci Daniel R. Schikore.
Fluid Surface Rendering in CUDA Andrei Monteiro Marcelo Gattass Assignment 4 June 2010.
ITUppsala universitet Data representation and fundamental algorithms Filip Malmberg
Marching Cubes A High Resolution 3D Surface Construction Algorithm.
Continuous Scatter Plot Paper by: Sven Bachthaler and Daniel Weiskopf Presented by: Ayan Biswas.
Marching Cubes: A High Resolution 3D Surface Construction Algorithm
Volumetric and Blobby Objects Lecture 8 (Modelling)
lecture 2 : Visualization Basics
Scalar Visualization Chap. 5 September 23, 2008 Jie Zhang Copyright ©
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Graphics Graphics Korea University cgvr.korea.ac.kr Creating Virtual World I 김 창 헌 Department of Computer Science Korea University
19/18/ :34 Graphics II Volume Rendering Session 10.
COLLEGE OF ENGINEERING UNIVERSITY OF PORTO COMPUTER GRAPHICS AND INTERFACES / GRAPHICS SYSTEMS JGB / AAS 1 Shading (Shading) & Smooth Shading Graphics.
Presented By Greg Gire Advised By Zoë Wood California Polytechnic State University.
Scientific Visualization Module 6 Volumetric Algorithms (adapted by S.V. Moore – slides deleted, modified, and added) prof. dr. Alexandru (Alex) Telea.
Geometric Modeling using Polygonal Meshes Lecture 1: Introduction Hamid Laga Office: South.
University of Coimbra Reconstruction of Voxels from Sensor Data Ricardo Martins Coimbra, 19 th January 2010 Doctoral Programme in Electrical Engineering.
SURFACE RECONSTRUCTION FROM POINT CLOUD Bo Gao Master’s Thesis December, 2007 Thesis Committee: Professor Harriet Fell Professor Robert Futrelle College.
Marching Cubes: A High Resolution 3D Surface Construction Algorithm William E. Lorenson Harvey E. Cline General Electric Company Corporate Research and.
Unstructured Volume Rendering Jian Huang, CS 594, Spring 2002 This set of slides reference slides developed by Prof. Torsten Moeller, SFU, Canada.
CMSC 635 Volume Rendering. Volume data  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind.
Volume Rendering CMSC 491/635. Volume data  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind.
Simplifying Surfaces with Color and Texture using Quadric Error Metrics Michael Garland Paul S. Heckbert Carnegie Mellon University October 1998 Michael.
3D Object Representations
3D Volume Visualization. Volume Graphics  Maintains a 3D image representation that is close to the underlying fully-3D object (but discrete)  경계표면 (Boundary.
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2015.
Daniele D’Agostino CNR - IMATI - Sezione di Genova
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Hank Childs, University of Oregon Lecture #10 CIS 410/510: Isosurfacing.
Hank Childs, University of Oregon Isosurfacing (Part 3)
SCALAR VISUALIZATION. OUTLINE Visualizing scalar data A number of the most popular scalar visualization techniques Color mapping Contouring Height plots.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
CSE554Contouring IISlide 1 CSE 554 Lecture 5: Contouring (faster) Fall 2013.
Advisor : Ku-Yaw Chang Speaker : Ren-Li Shen /6/12.
CDS 301 Fall, 2008 Domain-Modeling Techniques Chap. 8 November 04, 2008 Jie Zhang Copyright ©
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
67 x 89 = ? 67 x
1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Marching Squares Ed Angel Professor Emeritus of Computer Science University.
1 Interactive Volume Isosurface Rendering Using BT Volumes John Kloetzli Marc Olano Penny Rheingans UMBC.
POLYGON MESH Advance Computer Graphics
CIS 410/510: Isosurfacing (pt 2)
Introduction to Graphics Modeling
Chapter 5(1) Color MaPPING
Chapter 5(1) Color MaPPING
CSc4730/6730 Scientific Visualization
3D Head Mesh Data Stereo Vision Active Stereo 3D Reconstruction
Domain-Modeling Techniques
CSc4730/6730 Scientific Visualization
Hank Childs, University of Oregon
Meshing of 3-D Data Clouds for Object Description
Lecture 3 : Isosurface Extraction
Volume Graphics (lecture 4 : Isosurface Extraction)
Marching Squares Ed Angel
Presentation transcript:

CHAPTER 5 CONTOURING

5.3 CONTOURING Fig 5.7. Relationship between color banding and contouring Contour line (isoline): the same scalar value, or isovalue

5.3 CONTOURING A contour C is defined as all points p, in a dataset D, that have the same scalar value x: s(p) = x. For 2D dataset: contour line (isoline); For 3D dataset: contour surface (iso-surface)

5.3 CONTOURING Fig 5.8. Isoline properties Contour properties:  Closed curve or open curves  Never stop inside the dataset itself  Never intersects itself  No intersect of an isoline with another scalar value  Contours are perpendicular to the gradient of the contoured function (Fig 5.9)

5.3 CONTOURING Fig 5.9. The gradient of a scalar field is perpendicular to the field's contours

5.3 CONTOURING Fig Constructing the isoline for the scalar value v = The figure indicates scalar values at the grid vertices. Given a discrete, sampled dataset, compute contours

5.3 CONTOURING Contouring need At least piecewise linear, C 1 dataset The complexity of computing contours The most popular method 2D: Marching Squares (§5.3.1) 3D: Marching Cubes (§5.3.2)

5.3 CONTOURING MARCHING SQUARES Fig5.12. Topological states of a quad cell (marching squares algorithm). Red indicates "inside" vertices. Bold indices mark ambiguous cases.

5.3.1 MARCHING SQUARES Listing 5.2. Marching squares pseudocode

5.3.2 MARCHING CUBES Similar to Marching Squares but 3D versus 2D 2 8 = 256 different topological cases; reduced to only 15 by symmetry considerations 16 topological states ( Fig 5.13 )

5.3.2 MARCHING CUBES Marching Cubes: A High Resolution 3D Surface Construction Algorithm William E. Lorensen & Harvey E. Cline International Conference on Computer Graphics and Interactive Techniques (ACM/SIGGRAPH 1987) Marching Cubes: A High Resolution 3D Surface Construction Algorithm

WHAT ARE MARCHING CUBES? Marching Cubes is an algorithm which “creates triangle models of constant density surfaces from 3D medical data.”

MEDICAL DATA ACQUISITION Computed Tomography (CT) Magnetic Resonance (MRI) Single-Photon Emission Computed Tomography (SPECT) Each scanning process results in two dimensional “slices” of data.

SURFACE CONSTRUCTION Construction/Reconstruction of scanned surfaces or objects. Problem of interpreting/interpolating 2D data into 3D visuals. Marching Cubes provides a new method of creating 3D surfaces.

MARCHING CUBES EXPLAINED High resolution surface construction algorithm. Extracts surfaces from adjacent pairs of data slices using cubes. Cubes “march” through the pair of slices until the entire surface of both slices has been examined.

MARCHING CUBES OVERVIEW Load slices. Create a cube from pixels on adjacent slices. Find vertices on the surfaces. Determine the intersection edges. Interpolate the edge intersections. Calculate vertex normals. Output triangles and normals.

HOW ARE CUBES CONSTRUCTED Uses identical squares of four pixels connected between adjacent slices. Each cube vertex is examined to see if it lies on or off of the surface.

5.3.2 MARCHING CUBES Fig Topological states of a hex cell (marching cubes algorithm). Red indicates "inside" vertices. Bold indices mark ambiguous cases.

5.3.2 MARCHING CUBES -- AMBIGUITY Fig Ambiguous cases for marching cubes. Each case has two contouring variants.

HOW ARE THE CUBES USED Pixels on the slice surfaces determine 3D surfaces. 256 surface permutations, but only 14 unique patterns. A normal is calculated for each triangle vertex for rendering.

TRIANGLE CREATION Determine triangles contained by a cube. Determine which cube edges are intersected. Interpolate intersection point using pixel density. Calculate unit normals for each triangle vertex using the gradient vector.

GRID RESOLUTION Variations can increase/decrease surface density.

IMPROVEMENTS OVER OTHER METHODS Utilizes pixel, line and slice coherency to minimize the number of calculations. Can provide solid modeling. Can use conventional rendering techniques and hardware. No user interaction is necessary. Enables selective displays. Can be used with other density values.

5.3.2 MARCHING CUBES Fig Ringing artifacts on isosurface. (a) Overview. (b) Detail mesh. MRI scan data “wavy” pattern: Caused by subsampling

EXAMPLES

5.3.2 MARCHING CUBES (ATTENTIOIN!) General rule: most isosurface details that are under or around the size of the resolution of the iso-surfaced dataset can be either actual data or artifact should be interpreted with great care Can draw more than a single iso-surface of the same dataset in one visualization (Fig 5.16)

5.3.2 MARCHING CUBES Fig Two nested isosurfaces of a tooth scan dataset

5.3.2 MARCHING CUBES Fig Isosurfaces, isolines, and slicing Isosurfaces and isolines are strongly related

5.3.2 MARCHING CUBES Marching Cubes provides a simple algorithm to translate a series of 2D scans into 3D objects Marching Squares and Marching Cubes have many variations to address: Generalcity in terms of input dataset type Speed of execution Quality of obtained contours Isosurface can also be generated and rendered using point-based techniques 3D surface can be rendered using large numbers of (shaded) point primitives Point primitive can be considerably faster and demand less memory than polygonal ones on some graphics hardware Point cloud

ADDITIONAL RESOURCES “The Marching Cubes”, Polytech’Nice-Sophia, ( Nielson, G. “Dual Marching Cubes” IEEE Visualization, Proceedings of the Conference on Visualization ’04. Shekar, R., et al. “Octree-based Decimation of Marching Cubes Surfaces” IEEE Visualization, Proceedings of the 7 th Conference on Visualization ’96. Matveyev, S. “Approximation of Isosurface in the Marching Cube: Ambiguity Problem”. IEEE Visualization, Proceedings of the Conference on Visualization ’94. Fuchs, H., M. Levoy, and S. Pizer. “Interactive Visualization of 3D Medical Data” Computer, Vol

ADDITIONAL RESOURCES (CONT.) Miller, J., et al. “Geometrically Deformed Models” Proceedings of the 18th Annual Conference on Computer Graphics and Interactive Techniques. Livnat, Y., Han-Wei Shen, and C. Johnson. “A Near Optimal Isosurface Extraction Algorithm Using the Span Space” IEEE Transactions on Visualization and Computer Graphics, Vol. 2-1.

5.4 HEIGHT PLOTS Height plots (elevation or carpet plots)  S(x) is the scalar value of D at the point x  n(x) is the normal to the surface D s at x The height plot mapping operation “warp” a given surface D s included in the dataset along the surface normal, with a factor proportional to the scalar values. Height plots are a particular case of displacement, or warped plots

5.4 HEIGHT PLOTS Fig Height plot over a non-planar surface

5.5 CONCLUSION Visualizing scalar data Color mapping Assign a color as a function of the scalar value at each point of a given domain Contouring Displaying all points with a given 2D or 3D domain that have a given scalar value Height plots Deform the scalar dataset domain in a given direction as a function of the scalar data Advantage Produce intuitive results Easily understood by the vast majority of users Simple to implement Disadvantage A number of restrictions One or two dimensional scalar dataset We want to visualize the scalar values of ALL, not just a few of the data points of a 3D dataset Other scalar visualization method Specific method for data over images or volumes