Scalar Algorithms: Contouring

Size: px
Start display at page:

Download "Scalar Algorithms: Contouring"

Transcription

1 Scalar Algorithms: Contouring Computer Animation and Visualisation Lecture Institute for Perception, Action & Behaviour School of Informatics Contouring Scaler Data

2 Last Lecture... Colour mapping Designing the colour lookup table / transfer function Interpolating in various colour spaces HSV, RGB, greyscale Contouring Scaler Data

3 Contouring Contours explicitly construct the boundary between regions with values Boundaries correspond to: lines in D surfaces in D (known as isosurfaces) of constant scalar value Contouring Scaler Data

4 Example : contours lines of constant pressure on a weather map (isobars) surfaces of constant density in medical scan (isosurface) iso roughly means equal / similar / same as Contouring Scaler Data 4

5 Overview Contouring - Problem statement - Tracking - Marching squares - Ambiguity problems - Marching cubes - Dividing squares Volume rendering Contouring Scaler Data 5

6 Contours Contours are boundaries between regions they DO NOT just connect points of equal value they DO also indicate a TRANSITION from a value below the contour to a value above the contour Contouring Scaler Data 6

7 D contours Data : D structured grid of scalar values Difficult to visualise transitions in data use contour at specific scalar value to highlight transition What is the contour of 5? Contouring Scaler Data

8 Methods of Contour Line Generation Approach : Tracking find contour intersection with an edge track it through the cell boundaries if it enters a cell then it must exit via one of the boundaries track until it connects back onto itself or exits dataset boundary If it is known to be only one contour, stop otherwise Check every edge Approach : Marching Squares Algorithm Contouring Scaler Data 8

9 Marching Squares Algorithm Focus : intersection of contour and cell edges how the contour passes through the cell Assumption: a contour can pass through a cell in only a finite number of ways A vertex is inside contour if scalar value > contour outside contour if scalar value < contour 4 vertices, states (in or out) Contouring Scaler Data 9

10 Marching Squares No intersection. Ambiguous case. 4 = 6 possible cases for each square Contour intersects edge(s) small number so just treat each one separately Contouring Scaler Data 0

11 MS Algorithm Overview Main algorithm?. Select a cell. Calculate inside/outside state for each vertex. Look up topological state of cell in state table determine which edge must be intersected (i.e. which of the 6 cases) 4. Calculate contour location for each intersected edge 5. Move (or march) onto next cell until all cells are visited GOTO Contouring Scaler Data

12 MS Algorithm - notes Intersections for each cell must be merged to form a complete contour cells processed independently further merging computation required disadvantage over tracking (continuous tracked contour) Easy to implement (also to extend to D) Easy to parallelise Contouring Scaler Data

13 MS : Dealing with ambiguity? Split Ambiguous case. Join Choice independent of other choices either valid : both give continuous and closed contour Contouring Scaler Data

14 Example : Contour Line Generation 0 No intersection. Contour intersects edge Contour intersects edges Ambiguous case. main steps for each cell here using simplified summary model of cases Contouring Scaler Data 4

15 Step : classify vertices 0 No intersection. Contour intersects edge Contour intersects edges Contour value =5 Ambiguous case. Decide whether each vertex is inside or outside contour Contouring Scaler Data 5

16 Step : identify cases No intersection. Contour intersects edge Contour intersects edges Ambiguous case. Contour value =5 Classify each cell as one of the cases Contouring Scaler Data 6

17 Step : interpolate contour intersections 0 No intersection. Contour intersects edge Contour intersects edges Ambiguous case. Split Determine the edges that are intersected compute contour intersection with each of these edges Contouring Scaler Data

18 Ambiguous contour No intersection. Contour intersects edge Contour intersects edges Ambiguous case. Join Finally : resolve any ambiguity here choosing join (example only) Contouring Scaler Data 8

19 MS : Dealing with ambiguity? One solution Calculate the value at the middle of the square by interpolation Check if it is under or above the threshold value Choose the pattern that matches Contouring Scaler Data 9

20 Ambiguous contour No intersection. Contour intersects edge Contour intersects edges ? Ambiguous case. Finally : resolve any ambiguity here choosing join (example only) Contouring Scaler Data 0

21 D : Example contour A slice through the head A Quadric function. (with colour mapping added) Contouring Scaler Data

22 D surfaces : marching cubes Extension of Marching Squares to D data : D regular grid of scalar values result : D surface boundary instead of D line boundary D cube has 8 vertices 8 = 56 cases to consider use symmetry to reduce to 5 Problem : ambiguous cases cannot simply choose arbitrarily as choice is determined by neighbours poor choice may leave hole artefact in surface Contouring Scaler Data

23 Marching Cubes - cases Ambiguous cases,6,0,, split or join? Contouring Scaler Data

24 Example of bad choices The dark dots are the interior There are edges which are not shared by both cubes Need to make sure there is no contradiction with the neighbors Contouring Scaler Data 4

25 Cracks eliminated Contouring Scaler Data 5

26 Other two possible triangulations Need to decide how the faces are intersected by the contours Contouring Scaler Data 6

27 Adding more patterns Adding more patterns for,6,0,, [Neilson '9] Compute the values at the middle of the faces and the cubes Selecting the pattern that matches Contouring Scaler Data

28 Results : isosurfaces examples isosurface of Electron potential isosurface of flow density white outline shows bounds of D data grid surface = D contour (i.e. isosurface) through grid method : Marching Cubes Contouring Scaler Data 8

29 Rendering Metaballs The marching cubes algorithm is useful for rendering metaballs (implicit functions) D ( x, y, z)= b i exp(ai r i ) i r i= ( x xi ) +( y y i ) +( zz i ) ( x i, y i, z i ): the center of the particle i F ( x, y, z )=D ( x, y, z)t Rendering the surface where F(x,y,z) = 0 Contouring Scaler Data 9

30 Marching Cubes by CUDA Contouring Scaler Data 0

31 Problems with Marching Cubes Generates lots of polygons -4 triangles per cell intersected many unnecessary e.g. co-planar triangles Increases the cost of rendering As with marching squares separate merging required Contouring Scaler Data

32 Dividing Cubes Algorithm Marching cubes often produces more polygons than pixels for given rendering scale Problem : causes high rendering overhead Solution : Dividing Cubes Algorithm draw points instead of polygons (faster rendering) Need : efficient method to find points on surface : method to shade points Contouring Scaler Data

33 Example : D divided squares for D lines Find pixels that intersect contour - Subdivide them Contouring Scaler Data

34 D divided squares for lines Find pixels that intersect line Subdivide them ( usually in x) Repeat recursively Contouring Scaler Data 4

35 D divided squares for lines Find pixels that intersect line Subdivide them Repeat recursively until screen resolution reached Fill in the pixel with the color of the line Contouring Scaler Data 5

36 Extension to D Find voxels which intersect surface Recursively subdivide the voxels that intersect the contour Until the voxel fits within a pixel Calculate mid-points of voxels Calculate the color of the pixel by shading Contouring Scaler Data 6

37 Drawing divided cubes surfaces surface normal for lighting calculations interpolate from voxel corner points problem with camera zoom ideally dynamically re-calculate points not always computationally possible Contouring Scaler Data

38 Dividing Cubes : Example 50,000 points when sampling less than screen resolution structure of surface can be seen Contouring Scaler Data 8

39 Viewing the volume data Originally we had the volume data Contouring: visualisation via surface shading volumetric data geometric primitives screen pixels Only watching the objects at the threshold value What if we want to watch other parts? Contouring Scaler Data 9

40 Volume Rendering Shaded iso-surface surface based rendering Volume Rendering voxel based rendering Data : D dense volume; structured D grid of voxels regular geometry and topology Contouring Scaler Data 40

41 Volume Rendering display the information inside the volume direct display : volumetric data screen pixels use transparency (seeing through volumes) Volview (now opensource) Contouring Scaler Data 4

42 Summary Contouring Theory D : Marching Squares Algorithm D : Marching Cubes Algorithm [Lorensen '8] marching tetrahedra, ambiguity resolution limited to regular structured grids D Rendering : Dividing Cubes Algorithm [Cline '88] - Volume Rendering Readings G.M. Nielson, B Hamann, The Asymptotic Decider: Resolving the Ambiguity in Marching Cubes W.E. Lorensen, H.E. Cline, Marching Cubes: A high resolution D surface construction algorithm H.E. Cline, W.E. Lorensen and S. Ludke, Two algorithms for the threedimensional reconstruction of tomograms Contouring Scaler Data 4

Volume Illumination, Contouring

Volume Illumination, Contouring Volume Illumination, Contouring Computer Animation and Visualisation Lecture 0 tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour School of Informatics Contouring Scaler Data Overview -

More information

Isosurface Rendering. CSC 7443: Scientific Information Visualization

Isosurface Rendering. CSC 7443: Scientific Information Visualization Isosurface Rendering What is Isosurfacing? An isosurface is the 3D surface representing the locations of a constant scalar value within a volume A surface with the same scalar field value Isosurfaces form

More information

Contours & Implicit Modelling 4

Contours & Implicit Modelling 4 Brief Recap Contouring & Implicit Modelling Contouring Implicit Functions Visualisation Lecture 8 lecture 6 Marching Cubes lecture 3 visualisation of a Quadric toby.breckon@ed.ac.uk Computer Vision Lab.

More information

Contours & Implicit Modelling 1

Contours & Implicit Modelling 1 Contouring & Implicit Modelling Visualisation Lecture 8 Institute for Perception, Action & Behaviour School of Informatics Contours & Implicit Modelling 1 Brief Recap Contouring Implicit Functions lecture

More information

Lecture overview. Visualisatie BMT. Fundamental algorithms. Visualization pipeline. Structural classification - 1. Structural classification - 2

Lecture overview. Visualisatie BMT. Fundamental algorithms. Visualization pipeline. Structural classification - 1. Structural classification - 2 Visualisatie BMT Fundamental algorithms Arjan Kok a.j.f.kok@tue.nl Lecture overview Classification of algorithms Scalar algorithms Vector algorithms Tensor algorithms Modeling algorithms 1 2 Visualization

More information

Scalar Visualization

Scalar Visualization Scalar Visualization Visualizing scalar data Popular scalar visualization techniques Color mapping Contouring Height plots outline Recap of Chap 4: Visualization Pipeline 1. Data Importing 2. Data Filtering

More information

Previously... contour or image rendering in 2D

Previously... contour or image rendering in 2D Volume Rendering Visualisation Lecture 10 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Previously... contour or image rendering in 2D 2D Contour line

More information

CIS 467/602-01: Data Visualization

CIS 467/602-01: Data Visualization CIS 467/60-01: Data Visualization Isosurfacing and Volume Rendering Dr. David Koop Fields and Grids Fields: values come from a continuous domain, infinitely many values - Sampled at certain positions to

More information

Data Visualization (DSC 530/CIS )

Data Visualization (DSC 530/CIS ) Data Visualization (DSC 530/CIS 60-0) Isosurfaces & Volume Rendering Dr. David Koop Fields & Grids Fields: - Values come from a continuous domain, infinitely many values - Sampled at certain positions

More information

Indirect Volume Rendering

Indirect Volume Rendering Indirect Volume Rendering Visualization Torsten Möller Weiskopf/Machiraju/Möller Overview Contour tracing Marching cubes Marching tetrahedra Optimization octree-based range query Weiskopf/Machiraju/Möller

More information

Processing 3D Surface Data

Processing 3D Surface Data Processing 3D Surface Data Computer Animation and Visualisation Lecture 12 Institute for Perception, Action & Behaviour School of Informatics 3D Surfaces 1 3D surface data... where from? Iso-surfacing

More information

Data Representation in Visualisation

Data Representation in Visualisation Data Representation in Visualisation Visualisation Lecture 4 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Taku Komura Data Representation 1 Data Representation We have

More information

Processing 3D Surface Data

Processing 3D Surface Data Processing 3D Surface Data Computer Animation and Visualisation Lecture 17 Institute for Perception, Action & Behaviour School of Informatics 3D Surfaces 1 3D surface data... where from? Iso-surfacing

More information

Volume Illumination & Vector Field Visualisation

Volume Illumination & Vector Field Visualisation Volume Illumination & Vector Field Visualisation Visualisation Lecture 11 Institute for Perception, Action & Behaviour School of Informatics Volume Illumination & Vector Vis. 1 Previously : Volume Rendering

More information

Contouring and Isosurfaces. Ronald Peikert SciVis Contouring 2-1

Contouring and Isosurfaces. Ronald Peikert SciVis Contouring 2-1 Contouring and Isosurfaces Ronald Peikert SciVis 2007 - Contouring 2-1 What are contours? Set of points where the scalar field s has a given value c: Examples in 2D: height contours on maps isobars on

More information

Data Visualization (DSC 530/CIS )

Data Visualization (DSC 530/CIS ) Data Visualization (DSC 530/CIS 60-01) Scalar Visualization Dr. David Koop Online JavaScript Resources http://learnjsdata.com/ Good coverage of data wrangling using JavaScript Fields in Visualization Scalar

More information

CIS 4930/ SCIENTIFICVISUALIZATION

CIS 4930/ SCIENTIFICVISUALIZATION CIS 4930/6930-902 SCIENTIFICVISUALIZATION ISOSURFACING Paul Rosen Assistant Professor University of South Florida slides credits Tricoche and Meyer ADMINISTRATIVE Read (or watch video): Kieffer et al,

More information

Volume Illumination and Segmentation

Volume Illumination and Segmentation Volume Illumination and Segmentation Computer Animation and Visualisation Lecture 13 Institute for Perception, Action & Behaviour School of Informatics Overview Volume illumination Segmentation Volume

More information

CSC Computer Graphics

CSC Computer Graphics // CSC. Computer Graphics Lecture Kasun@dscs.sjp.ac.lk Department of Computer Science University of Sri Jayewardanepura Polygon Filling Scan-Line Polygon Fill Algorithm Span Flood-Fill Algorithm Inside-outside

More information

Scientific Visualization. CSC 7443: Scientific Information Visualization

Scientific Visualization. CSC 7443: Scientific Information Visualization Scientific Visualization Scientific Datasets Gaining insight into scientific data by representing the data by computer graphics Scientific data sources Computation Real material simulation/modeling (e.g.,

More information

Volume visualization. Volume visualization. Volume visualization methods. Sources of volume visualization. Sources of volume visualization

Volume visualization. Volume visualization. Volume visualization methods. Sources of volume visualization. Sources of volume visualization Volume visualization Volume visualization Volumes are special cases of scalar data: regular 3D grids of scalars, typically interpreted as density values. Each data value is assumed to describe a cubic

More information

Scalar Visualization

Scalar Visualization Scalar Visualization 5-1 Motivation Visualizing scalar data is frequently encountered in science, engineering, and medicine, but also in daily life. Recalling from earlier, scalar datasets, or scalar fields,

More information

Geometric Representations. Stelian Coros

Geometric Representations. Stelian Coros Geometric Representations Stelian Coros Geometric Representations Languages for describing shape Boundary representations Polygonal meshes Subdivision surfaces Implicit surfaces Volumetric models Parametric

More information

Data Visualization (CIS/DSC 468)

Data Visualization (CIS/DSC 468) Data Visualization (CIS/DSC 46) Volume Rendering Dr. David Koop Visualizing Volume (3D) Data 2D visualization slice images (or multi-planar reformating MPR) Indirect 3D visualization isosurfaces (or surface-shaded

More information

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes CSCI 420 Computer Graphics Lecture 26 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 2.11] Jernej Barbic University of Southern California Scientific Visualization

More information

Visualization. CSCI 420 Computer Graphics Lecture 26

Visualization. CSCI 420 Computer Graphics Lecture 26 CSCI 420 Computer Graphics Lecture 26 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 11] Jernej Barbic University of Southern California 1 Scientific Visualization

More information

Processing 3D Surface Data

Processing 3D Surface Data Processing 3D Surface Data Computer Animation and Visualisation Lecture 15 Institute for Perception, Action & Behaviour School of Informatics 3D Surfaces 1 3D surface data... where from? Iso-surfacing

More information

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics Volume Rendering Computer Animation and Visualisation Lecture 9 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Volume Data Usually, a data uniformly distributed

More information

Introduction to Computer Graphics. Modeling (3) April 27, 2017 Kenshi Takayama

Introduction to Computer Graphics. Modeling (3) April 27, 2017 Kenshi Takayama Introduction to Computer Graphics Modeling (3) April 27, 2017 Kenshi Takayama Solid modeling 2 Solid models Thin shapes represented by single polygons Unorientable Clear definition of inside & outside

More information

Volume Illumination. Visualisation Lecture 11. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics

Volume Illumination. Visualisation Lecture 11. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics Volume Illumination Visualisation Lecture 11 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Taku Komura Volume Illumination & Vector Vis. 1 Previously : Volume Rendering

More information

Scalar Algorithms -- surfaces

Scalar Algorithms -- surfaces Scalar Algorithms -- surfaces Color Mapping Slicing Clipping Contouring / iso-surface 1 Sources of Scalar Data Sensors CT/MRI Surface Scanners: laser/range scans Simulations CFD/FEM Mathematical Implicit

More information

Visualization Computer Graphics I Lecture 20

Visualization Computer Graphics I Lecture 20 15-462 Computer Graphics I Lecture 20 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 15, 2003 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University

Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University 15-462 Computer Graphics I Lecture 21 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

Scalar Field Visualization I

Scalar Field Visualization I Scalar Field Visualization I What is a Scalar Field? The approximation of certain scalar function in space f(x,y,z). Image source: blimpyb.com f What is a Scalar Field? The approximation of certain scalar

More information

Visualization Computer Graphics I Lecture 20

Visualization Computer Graphics I Lecture 20 15-462 Computer Graphics I Lecture 20 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] November 20, 2003 Doug James Carnegie Mellon University http://www.cs.cmu.edu/~djames/15-462/fall03

More information

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

Iso-surface cell search. Iso-surface Cells. Efficient Searching. Efficient search methods. Efficient iso-surface cell search. Problem statement: Iso-Contouring Advanced Issues Iso-surface cell search 1. Efficiently determining which cells to examine. 2. Using iso-contouring as a slicing mechanism 3. Iso-contouring in higher dimensions 4. Texturing

More information

SURFACE CONSTRUCTION USING TRICOLOR MARCHING CUBES

SURFACE CONSTRUCTION USING TRICOLOR MARCHING CUBES SURFACE CONSTRUCTION USING TRICOLOR MARCHING CUBES Shaojun Liu, Jia Li Oakland University Rochester, MI 4839, USA Email: sliu2@oakland.edu, li4@oakland.edu Xiaojun Jing Beijing University of Posts and

More information

Scalar Field Visualization I

Scalar Field Visualization I Scalar Field Visualization I What is a Scalar Field? The approximation of certain scalar function in space f(x,y,z). Image source: blimpyb.com f What is a Scalar Field? The approximation of certain scalar

More information

Scalar Field Visualization. Some slices used by Prof. Mike Bailey

Scalar Field Visualization. Some slices used by Prof. Mike Bailey Scalar Field Visualization Some slices used by Prof. Mike Bailey Scalar Fields The approximation of certain scalar function in space f(x,y,z). Most of time, they come in as some scalar values defined on

More information

Polygonization of Implicit Surfaces

Polygonization of Implicit Surfaces Polygonization of Implicit Surfaces Hongxin Zhang and Jieqing Feng 2007-01-11 State Key Lab of CAD&CG Zhejiang University Contents Polygonization of Implicit Surfaces Other Methods for Displaying Implicit

More information

Visualization. Images are used to aid in understanding of data. Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26]

Visualization. Images are used to aid in understanding of data. Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26] Visualization Images are used to aid in understanding of data Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26] Tumor SCI, Utah Scientific Visualization Visualize large

More information

03 - Reconstruction. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Spring 17 - Daniele Panozzo

03 - Reconstruction. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Spring 17 - Daniele Panozzo 3 - Reconstruction Acknowledgements: Olga Sorkine-Hornung Geometry Acquisition Pipeline Scanning: results in range images Registration: bring all range images to one coordinate system Stitching/ reconstruction:

More information

Level Set Extraction from Gridded 2D and 3D Data

Level Set Extraction from Gridded 2D and 3D Data Level Set Extraction from Gridded 2D and 3D Data David Eberly, Geometric Tools, Redmond WA 98052 https://www.geometrictools.com/ This work is licensed under the Creative Commons Attribution 4.0 International

More information

Topology Preserving Tetrahedral Decomposition of Trilinear Cell

Topology Preserving Tetrahedral Decomposition of Trilinear Cell Topology Preserving Tetrahedral Decomposition of Trilinear Cell Bong-Soo Sohn Department of Computer Engineering, Kyungpook National University Daegu 702-701, South Korea bongbong@knu.ac.kr http://bh.knu.ac.kr/

More information

Scientific Visualization Example exam questions with commented answers

Scientific Visualization Example exam questions with commented answers Scientific Visualization Example exam questions with commented answers The theoretical part of this course is evaluated by means of a multiple- choice exam. The questions cover the material mentioned during

More information

Special Topics in Visualization

Special Topics in Visualization Special Topics in Visualization Final Project Report Dual contouring of Hermite Data Submitted By S M Shahed Nejhum 8589-1199 May 19, 2008 Introduction Iso-surface extraction from 3D volumetric data is

More information

Approximation of Isosurface in the Marching Cube: Ambiguity Problem.

Approximation of Isosurface in the Marching Cube: Ambiguity Problem. Approximation of Isosurface in the Marching Cube: Ambiguity Problem Sergey V Matveyev Computer Science Department Institute for High Energy Physics 142284, Protvino, Moscow Region, Russia E-mail: matveyev@desertihepsu

More information

Fundamental Algorithms and Advanced Data Representations

Fundamental Algorithms and Advanced Data Representations Fundamental Algorithms and Advanced Data Representations Anders Hast Outline Isosurfaces (Volume Data) Cuberille Contouring Marching Squares Linear Interpolation methods Marching Cubes Non Linear Interpolation

More information

A Survey of Volumetric Visualization Techniques for Medical Images

A Survey of Volumetric Visualization Techniques for Medical Images International Journal of Research Studies in Computer Science and Engineering (IJRSCSE) Volume 2, Issue 4, April 2015, PP 34-39 ISSN 2349-4840 (Print) & ISSN 2349-4859 (Online) www.arcjournals.org A Survey

More information

Vector Field Visualisation

Vector Field Visualisation Vector Field Visualisation Computer Animation and Visualization Lecture 14 Institute for Perception, Action & Behaviour School of Informatics Visualising Vectors Examples of vector data: meteorological

More information

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

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 Three-Dimensional Object Reconstruction from Layered Spatial Data Michael Dangl and Robert Sablatnig Vienna University of Technology, Institute of Computer Aided Automation, Pattern Recognition and Image

More information

5. Volume Visualization

5. Volume Visualization 5. Volume Visualization Scalar volume data Medical Applications: CT, MRI, confocal microscopy, ultrasound, etc. 1 5. Volume Visualization 2 5. Volume Visualization 3 5. Volume Visualization Some possible

More information

Solid Modeling. Michael Kazhdan ( /657) HB , FvDFH 12.1, 12.2, 12.6, 12.7 Marching Cubes, Lorensen et al.

Solid Modeling. Michael Kazhdan ( /657) HB , FvDFH 12.1, 12.2, 12.6, 12.7 Marching Cubes, Lorensen et al. Solid Modeling Michael Kazhdan (601.457/657) HB 10.15 10.17, 10.22 FvDFH 12.1, 12.2, 12.6, 12.7 Marching Cubes, Lorensen et al. 1987 Announcement OpenGL review session: When: Today @ 9:00 PM Where: Malone

More information

Lecture notes: Object modeling

Lecture notes: Object modeling Lecture notes: Object modeling One of the classic problems in computer vision is to construct a model of an object from an image of the object. An object model has the following general principles: Compact

More information

Project Updates Short lecture Volumetric Modeling +2 papers

Project Updates Short lecture Volumetric Modeling +2 papers Volumetric Modeling Schedule (tentative) Feb 20 Feb 27 Mar 5 Introduction Lecture: Geometry, Camera Model, Calibration Lecture: Features, Tracking/Matching Mar 12 Mar 19 Mar 26 Apr 2 Apr 9 Apr 16 Apr 23

More information

Scalar Data. Visualization Torsten Möller. Weiskopf/Machiraju/Möller

Scalar Data. Visualization Torsten Möller. Weiskopf/Machiraju/Möller Scalar Data Visualization Torsten Möller Weiskopf/Machiraju/Möller Overview Basic strategies Function plots and height fields Isolines Color coding Volume visualization (overview) Classification Segmentation

More information

3D Volume Mesh Generation of Human Organs Using Surface Geometries Created from the Visible Human Data Set

3D Volume Mesh Generation of Human Organs Using Surface Geometries Created from the Visible Human Data Set 3D Volume Mesh Generation of Human Organs Using Surface Geometries Created from the Visible Human Data Set John M. Sullivan, Jr., Ziji Wu, and Anand Kulkarni Worcester Polytechnic Institute Worcester,

More information

Kent Academic Repository

Kent Academic Repository Kent Academic Repository Full text document (pdf) Citation for published version Hill, Steve and Roberts, Jonathan C. (1995) Surface Models and the Resolution of N-Dimensional Cell Ambiguity. In: Paeth,

More information

A type-merging algorithm for extracting an isosurface from volumetric data

A type-merging algorithm for extracting an isosurface from volumetric data 1 Introduction A type-merging algorithm for extracting an isosurface from volumetric data Kwang-Man Oh, Kyu Ho Park Computer Engineering Research Laboratory, Department of Electrical Engineering, Korea

More information

MARCHING CUBES AND VARIANTS

MARCHING CUBES AND VARIANTS CHAPTER MARCHING CUBES AND VARIANTS In the introduction, we mentioned four different approaches to isosurface construction. In this chapter, we describe one of those approaches to isosurface construction,

More information

Solid Modeling. Thomas Funkhouser Princeton University C0S 426, Fall Represent solid interiors of objects

Solid Modeling. Thomas Funkhouser Princeton University C0S 426, Fall Represent solid interiors of objects Solid Modeling Thomas Funkhouser Princeton University C0S 426, Fall 2000 Solid Modeling Represent solid interiors of objects Surface may not be described explicitly Visible Human (National Library of Medicine)

More information

Mesh Decimation Using VTK

Mesh Decimation Using VTK Mesh Decimation Using VTK Michael Knapp knapp@cg.tuwien.ac.at Institute of Computer Graphics and Algorithms Vienna University of Technology Abstract This paper describes general mesh decimation methods

More information

Visualizer An implicit surface rendering application

Visualizer An implicit surface rendering application June 01, 2004 Visualizer An implicit surface rendering application Derek Gerstmann - C1405511 MSc Computer Animation NCCA Bournemouth University OVERVIEW OF APPLICATION Visualizer is an interactive application

More information

Introduction to volume rendering. Paul Bourke

Introduction to volume rendering. Paul Bourke Introduction to volume rendering Paul Bourke 2D drafting/drawing Points + lines + curves + primitives (circle, rectangle ) Describes boundaries 2D image Pixels Describes the interior of a rectangle, a

More information

Who has worked on a voxel engine before? Who wants to? My goal is to give the talk I wish I would have had before I started on our procedural engine.

Who has worked on a voxel engine before? Who wants to? My goal is to give the talk I wish I would have had before I started on our procedural engine. 1 Who has worked on a voxel engine before? Who wants to? My goal is to give the talk I wish I would have had before I started on our procedural engine. Three parts to this talk. A lot of content, so I

More information

Homework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments?

Homework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments? Homework 1: Questions/Comments? Implicit Surfaces,, & Volumetric Data Structures Loop Subdivision Shirley, Fundamentals of Computer Graphics Loop Subdivision SIGGRAPH 2000 course notes Subdivision for

More information

LAPLACIAN MESH SMOOTHING FOR TETRAHEDRA BASED VOLUME VISUALIZATION 1. INTRODUCTION

LAPLACIAN MESH SMOOTHING FOR TETRAHEDRA BASED VOLUME VISUALIZATION 1. INTRODUCTION JOURNAL OF MEDICAL INFORMATICS & TECHNOLOGIES Vol.4/2002, ISSN 642-6037 Rafał STĘGIERSKI *, Paweł MIKOŁAJCZAK * volume data,triangle mesh generation, mesh smoothing, marching tetrahedra LAPLACIAN MESH

More information

Computer Graphics 1. Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2011

Computer Graphics 1. Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2011 Computer Graphics 1 Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling 1 The 3D rendering pipeline (our version for this class) 3D models in model coordinates 3D models in world coordinates 2D Polygons in

More information

11/1/13. Polygon Meshes and Implicit Surfaces. Shape Representations. Polygon Models in OpenGL. Modeling Complex Shapes

11/1/13. Polygon Meshes and Implicit Surfaces. Shape Representations. Polygon Models in OpenGL. Modeling Complex Shapes CSCI 420 Computer Graphics Lecture 7 and Constructive Solid Geometry [Angel Ch. 12.1-12.3] Jernej Barbic University of Southern California Modeling Complex Shapes An equation for a sphere is possible,

More information

Computer Graphics Ray Casting. Matthias Teschner

Computer Graphics Ray Casting. Matthias Teschner Computer Graphics Ray Casting Matthias Teschner Outline Context Implicit surfaces Parametric surfaces Combined objects Triangles Axis-aligned boxes Iso-surfaces in grids Summary University of Freiburg

More information

Flow Visualisation 1

Flow Visualisation 1 Flow Visualisation Visualisation Lecture 13 Institute for Perception, Action & Behaviour School of Informatics Flow Visualisation 1 Flow Visualisation... so far Vector Field Visualisation vector fields

More information

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

Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees Alexander Greß and Reinhard Klein University of Bonn Institute of Computer Science II Römerstraße 164, 53117 Bonn, Germany

More information

Polygon Meshes and Implicit Surfaces

Polygon Meshes and Implicit Surfaces CSCI 420 Computer Graphics Lecture 9 Polygon Meshes and Implicit Surfaces Polygon Meshes Implicit Surfaces Constructive Solid Geometry [Angel Ch. 10] Jernej Barbic University of Southern California 1 Modeling

More information

Polygon Meshes and Implicit Surfaces

Polygon Meshes and Implicit Surfaces CSCI 420 Computer Graphics Lecture 9 and Constructive Solid Geometry [Angel Ch. 10] Jernej Barbic University of Southern California Modeling Complex Shapes An equation for a sphere is possible, but how

More information

Open Topology: A Toolkit for Brain Isosurface Correction

Open Topology: A Toolkit for Brain Isosurface Correction Open Topology: A Toolkit for Brain Isosurface Correction Sylvain Jaume 1, Patrice Rondao 2, and Benoît Macq 2 1 National Institute of Research in Computer Science and Control, INRIA, France, sylvain@mit.edu,

More information

Course Review. Computer Animation and Visualisation. Taku Komura

Course Review. Computer Animation and Visualisation. Taku Komura Course Review Computer Animation and Visualisation Taku Komura Characters include Human models Virtual characters Animal models Representation of postures The body has a hierarchical structure Many types

More information

Level of Details in Computer Rendering

Level of Details in Computer Rendering Level of Details in Computer Rendering Ariel Shamir Overview 1. Photo realism vs. Non photo realism (NPR) 2. Objects representations 3. Level of details Photo Realism Vs. Non Pixar Demonstrations Sketching,

More information

Marching Squares Algorithm. Can you summarize the marching squares algorithm based on what we just discussed?

Marching Squares Algorithm. Can you summarize the marching squares algorithm based on what we just discussed? Marching Squares Algorithm Can you summarize the marching squares algorithm based on what we just discussed? Marching Squares Algorithm Can you summarize the marching squares algorithm based on what we

More information

Scalar Data. Alark Joshi

Scalar Data. Alark Joshi Scalar Data Alark Joshi Announcements Pick two papers to present Email me your top 3/4 choices. FIFO allotment Contact your clients Blog summaries: http://cs.boisestate.edu/~alark/cs564/participants.html

More information

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include motion, behavior Graphics is a form of simulation and

More information

9. Three Dimensional Object Representations

9. Three Dimensional Object Representations 9. Three Dimensional Object Representations Methods: Polygon and Quadric surfaces: For simple Euclidean objects Spline surfaces and construction: For curved surfaces Procedural methods: Eg. Fractals, Particle

More information

Clipping. CSC 7443: Scientific Information Visualization

Clipping. CSC 7443: Scientific Information Visualization Clipping Clipping to See Inside Obscuring critical information contained in a volume data Contour displays show only exterior visible surfaces Isosurfaces can hide other isosurfaces Other displays can

More information

: Mesh Processing. Chapter 8

: Mesh Processing. Chapter 8 600.657: Mesh Processing Chapter 8 Handling Mesh Degeneracies [Botsch et al., Polygon Mesh Processing] Class of Approaches Geometric: Preserve the mesh where it s good. Volumetric: Can guarantee no self-intersection.

More information

Point based Rendering

Point based Rendering Point based Rendering CS535 Daniel Aliaga Current Standards Traditionally, graphics has worked with triangles as the rendering primitive Triangles are really just the lowest common denominator for surfaces

More information

Optimal Iso-Surfaces

Optimal Iso-Surfaces 503 Optimal Iso-Surfaces Carlos Andújar 1, Pere Brunet 2, Antoni Chica 3, Isabel Navazo 4, Jarek Rossignac 5 and Àlvar Vinacua 6 1 Universitat Politècnica de Catalunya, andujar@lsi.upc.es 2 Universitat

More information

Implicit Surfaces & Solid Representations COS 426

Implicit Surfaces & Solid Representations COS 426 Implicit Surfaces & Solid Representations COS 426 3D Object Representations Desirable properties of an object representation Easy to acquire Accurate Concise Intuitive editing Efficient editing Efficient

More information

MULTI-RESOLUTION DUAL CONTOURING FROM VOLUMETRIC DATA

MULTI-RESOLUTION DUAL CONTOURING FROM VOLUMETRIC DATA MULTI-RESOLUTION DUAL CONTOURING FROM VOLUMETRIC DATA Ricardo Uribe Lobello, Florent Dupont, Florence Denis Université de Lyon, CNRS, LIRIS, UMR5205, Villeurbanne F-69622, France {Ricardo.Uribe-lobello,Florent.Dupont,Florence.Denis}@liris.cnrs.fr

More information

GPU-based Volume Rendering. Michal Červeňanský

GPU-based Volume Rendering. Michal Červeňanský GPU-based Volume Rendering Michal Červeňanský Outline Volume Data Volume Rendering GPU rendering Classification Speed-up techniques Other techniques 2 Volume Data Describe interior structures Liquids,

More information

Volume Visualization. Part 1 (out of 3) Volume Data. Where do the data come from? 3D Data Space How are volume data organized?

Volume Visualization. Part 1 (out of 3) Volume Data. Where do the data come from? 3D Data Space How are volume data organized? Volume Data Volume Visualization Part 1 (out of 3) Where do the data come from? Medical Application Computed Tomographie (CT) Magnetic Resonance Imaging (MR) Materials testing Industrial-CT Simulation

More information

lecture 21 volume rendering - blending N layers - OpenGL fog (not on final exam) - transfer functions - rendering level surfaces

lecture 21 volume rendering - blending N layers - OpenGL fog (not on final exam) - transfer functions - rendering level surfaces lecture 21 volume rendering - blending N layers - OpenGL fog (not on final exam) - transfer functions - rendering level surfaces - 3D objects Clouds, fire, smoke, fog, and dust are difficult to model with

More information

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

Applications. Oversampled 3D scan data. ~150k triangles ~80k triangles 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

More information

Isosurface Visualization of Data with Nonparametric Models for Uncertainty

Isosurface Visualization of Data with Nonparametric Models for Uncertainty Isosurface Visualization of Data with Nonparametric Models for Uncertainty Tushar Athawale, Elham Sakhaee, and Alireza Entezari Department of Computer & Information Science & Engineering University of

More information

Multi-View Matching & Mesh Generation. Qixing Huang Feb. 13 th 2017

Multi-View Matching & Mesh Generation. Qixing Huang Feb. 13 th 2017 Multi-View Matching & Mesh Generation Qixing Huang Feb. 13 th 2017 Geometry Reconstruction Pipeline RANSAC --- facts Sampling Feature point detection [Gelfand et al. 05, Huang et al. 06] Correspondences

More information

Surface Modeling. Polygon Tables. Types: Generating models: Polygon Surfaces. Polygon surfaces Curved surfaces Volumes. Interactive Procedural

Surface Modeling. Polygon Tables. Types: Generating models: Polygon Surfaces. Polygon surfaces Curved surfaces Volumes. Interactive Procedural Surface Modeling Types: Polygon surfaces Curved surfaces Volumes Generating models: Interactive Procedural Polygon Tables We specify a polygon surface with a set of vertex coordinates and associated attribute

More information

Dual Marching Cubes. Gregory M. Nielson. Arizona State University

Dual Marching Cubes. Gregory M. Nielson. Arizona State University Dual Marching Cubes Gregory M. Nielson Arizona State University Figure 1. March Cubes Surface MC-Patch surface, S MC-Dual surface, S. ABSTRACT We present the definition and computational algorithms for

More information

arxiv: v1 [math.na] 2 Aug 2013

arxiv: v1 [math.na] 2 Aug 2013 arxiv:1308.0387 [math.na] 2 Aug 2013 3D Volume Calculation For the Marching Cubes Algorithm in Cartesian Coordinates Contents Shuqiang Wang 06/20/2013 1 Introduction 1 2 Method 2 2.1 Volume Calculations

More information

Comparative Study of Marching Cubes Algorithms for the Conversion of 2D image to 3D

Comparative Study of Marching Cubes Algorithms for the Conversion of 2D image to 3D International Journal of Computational Intelligence Research ISSN 0973-1873 Volume 13, Number 3 (2017), pp. 327-337 Research India Publications http://www.ripublication.com Comparative Study of Marching

More information

Volume Visualization

Volume Visualization Volume Visualization Part 1 (out of 3) Overview: Volume Visualization Introduction to volume visualization On volume data Surface vs. volume rendering Overview: Techniques Simple methods Slicing, cuberille

More information

Edge Groups: An Approach to Understanding the Mesh Quality of Marching Methods

Edge Groups: An Approach to Understanding the Mesh Quality of Marching Methods Edge Groups: An Approach to Understanding the Mesh Quality of Marching Methods Carlos A. Dietrich, Carlos Scheidegger João L. D. Comba, Luciana Porcher Nedel, Cláudio T. Silva Triangle Quality of Marching

More information

COMPUTER GRAPHICS COURSE. Rendering Pipelines

COMPUTER GRAPHICS COURSE. Rendering Pipelines COMPUTER GRAPHICS COURSE Rendering Pipelines Georgios Papaioannou - 2014 A Rendering Pipeline Rendering or Graphics Pipeline is the sequence of steps that we use to create the final image Many graphics/rendering

More information