Volume Graphics (lecture 5 : Contour Tree / Contour Spectrum) lecture notes acknowledgement : J. Snoeyink, C. Bajaj Bong-Soo Sohn School of Computer Science.

Slides:



Advertisements
Similar presentations
Lecture 15. Graph Algorithms
Advertisements

Augmenting Data Structures Advanced Algorithms & Data Structures Lecture Theme 07 – Part I Prof. Dr. Th. Ottmann Summer Semester 2006.
DREAM PLAN IDEA IMPLEMENTATION Introduction to Image Processing Dr. Kourosh Kiani
Computational Topology for Computer Graphics Klein bottle.
Topology-Based Analysis of Time-Varying Data Scalar data is often used in scientific data to represent the distribution of a particular value of interest,
Isocontour/surface Extractions 2D Isocontour 3D Isosurface.
A graph, non-tree representation of the topology of a gray scale image Peter Saveliev Marshall University, USA.
Electron denisty, isosurfaces and contour trees Jack Snoeyink GCMB’07.
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 ©
I/O-Efficient Batched Union-Find and Its Applications to Terrain Analysis Pankaj K. Agarwal, Lars Arge, Ke Yi Duke University University of Aarhus.
Lecture 6 Image Segmentation
lecture 4 : Isosurface Extraction
1 Spanning Trees Lecture 20 CS2110 – Spring
Coloring Away Communication in Parallel Query Optimization Waqar Hasan, Rajeev Motwani Stanford University Παυλάτος Χρήστος
Advanced Iso- Surfacing Algorithms Mengxia Zhu, Fall 2007.
Data Analysis and Visualization Using the Morse-Smale complex
I/O-Efficient Batched Union-Find and Its Applications to Terrain Analysis Pankaj K. Agarwal, Lars Arge, and Ke Yi Duke University University of Aarhus.
CS5371 Theory of Computation Lecture 1: Mathematics Review I (Basic Terminology)
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
Fast Isocontouring For Improved Interactivity Chandrajit L. Bajaj Valerio Pascucci Daniel R. Schikore.
Quadtrees and Mesh Generation Student Lecture in course MATH/CSC 870 Philipp Richter Thursday, April 19 th, 2007.
CS2420: Lecture 42 Vladimir Kulyukin Computer Science Department Utah State University.
Connected Dominating Sets in Wireless Networks My T. Thai Dept of Comp & Info Sci & Engineering University of Florida June 20, 2006.
GI Systems and Science January 23, Points to Cover  What is spatial data modeling?  Entity definition  Topology  Spatial data models Raster.
Distance Indexing on Road Networks A summary Andrew Chiang CS 4440.
Hidden Surface Removal
Contour Trees CSE Han-Wei Shen. Level Sets Level set: Level sets is also called Isolines for n=2, isosurface for n=3, or isocontours in general.
CSE 589 Applied Algorithms Spring Colorability Branch and Bound.
Isosurface Extractions 2D Isocontour 3D Isosurface.
Lecture 4 : Isosurface Extraction (Advanced Topics)
Volume Graphics (graduate course) Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University.
Scalar Visualization Chap. 5 September 23, 2008 Jie Zhang Copyright ©
1Ellen L. Walker Segmentation Separating “content” from background Separating image into parts corresponding to “real” objects Complete segmentation Each.
Spring 2015 Lecture 11: Minimum Spanning Trees
A Clustering Algorithm based on Graph Connectivity Balakrishna Thiagarajan Computer Science and Engineering State University of New York at Buffalo.
Flow Simulation in TINs Drainage Queries in TINs: from local to global and back again S. Yu, M. van Kreveld, and J. Snoeylink.
I/O-Efficient Batched Union-Find and Its Applications to Terrain Analysis Pankaj K. Agarwal, Lars Arge, Ke Yi Duke University University of Aarhus.
Introduction to Graph Theory
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2015.
Hank Childs, University of Oregon Lecture #10 CIS 410/510: Isosurfacing.
Efficient Computing k-Coverage Paths in Multihop Wireless Sensor Networks XuFei Mao, ShaoJie Tang, and Xiang-Yang Li Dept. of Computer Science, Illinois.
Hank Childs, University of Oregon Isosurfacing (Part 3)
CS 146: Data Structures and Algorithms July 16 Class Meeting Department of Computer Science San Jose State University Summer 2015 Instructor: Ron Mak
Union-Find  Application in Kruskal’s Algorithm  Optimizing Union and Find Methods.
CHAPTER 5 CONTOURING. 5.3 CONTOURING Fig 5.7. Relationship between color banding and contouring Contour line (isoline): the same scalar value, or isovalue.
Riccardo Fellegara University of Genova Genova, Italy
Introduction Terrain Level set and Contour tree Problem Maintaining the contour tree of a terrain under the following operation: ChangeHeight(v, r) : Change.
Lecture 3 : Isosurface Extraction. Isosurface Definition  Isosurface (i.e. Level Set ) :  Constant density surface from a 3D array of data  C(w) =
CSE554Contouring IISlide 1 CSE 554 Lecture 5: Contouring (faster) Fall 2015.
CSE554Contouring IISlide 1 CSE 554 Lecture 3: Contouring II Fall 2011.
CSE554Contouring IISlide 1 CSE 554 Lecture 5: Contouring (faster) Fall 2013.
CDS 301 Fall, 2008 Image Visualization Chap. 9 November 11, 2008 Jie Zhang Copyright ©
Volume Graphics (graduate course) Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University.
ITree: Exploring Time-Varying Data using Indexable Tree Yi Gu and Chaoli Wang Michigan Technological University Presented at IEEE Pacific Visualization.
October 2005 Center for Computational Visualization Institute of Computational and Engineering Sciences Department of Computer Sciences University of.
Computational Visualization
CSE 554 Lecture 5: Contouring (faster)
Isosurface Extractions (II)
CIS 410/510: Isosurfacing (pt 2)
dij(T) - the length of a path between leaves i and j
Salient Contour Extraction Using Contour Tee
ME 521 Computer Aided Design 15-Optimization
DICOM 11/21/2018.
T. C. van Dijk1, J.-H. Haunert2, J. Oehrlein2 1University of Würzburg
Hank Childs, University of Oregon
Shortest-Paths Trees Kun-Mao Chao (趙坤茂)
Richard Anderson Lecture 5 Graph Theory
Presentation transcript:

Volume Graphics (lecture 5 : Contour Tree / Contour Spectrum) lecture notes acknowledgement : J. Snoeyink, C. Bajaj Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University

Contour Tree h(x,y) x y Definition : a tree with (V,E) –Vertex ‘V’ Critical Points(CP) (points where contour topology changes, gradient vanishes) –Edge ‘E’: connecting CP where an infinite contour class is created and CP where the infinite contour class is destroyed. contour class : maximal set of continuous contours which don’t contain critical points

Properties Display of Level Sets Topology (Structural Information) –Merge, Split, Create, Disappear, Genus Change (Betti number change) Minimal Seed Set Generation Contour Segmentation –A point on any edge of CT corresponds to one contour component

Contour tree Optimal Single-Resolution Isocontouring

Copyright: Chandrajit Bajaj, CCV, University of Texas at Austin Minimal Seed Set Contour Tree f Optimal Single-Resolution Isocontouring

Copyright: Chandrajit Bajaj, CCV, University of Texas at Austin Minimal Seed Set Contour Tree (local minima) f Optimal Single-Resolution Isocontouring

Copyright: Chandrajit Bajaj, CCV, University of Texas at Austin Minimal Seed Set Contour Tree (local maxima) f Optimal Single-Resolution Isocontouring

Copyright: Chandrajit Bajaj, CCV, University of Texas at Austin Minimal Seed Set Contour Tree f Each seed cell corresponds to a monotonic path on the contour tree Optimal Single-Resolution Isocontouring

Copyright: Chandrajit Bajaj, CCV, University of Texas at Austin Minimal Seed Set Contour Tree f For a minimal seed set each seed cell corresponds to a path that is not covered by any over seed cell Optimal Single-Resolution Isocontouring

Copyright: Chandrajit Bajaj, CCV, University of Texas at Austin Minimal Seed Set Contour Tree f Current isovalue Each connected component of any isocontour corresponds exactly to one point of the contour tree Optimal Single-Resolution Isocontouring

Copyright: Chandrajit Bajaj, CCV, University of Texas at Austin Range sweep Optimal Single-Resolution Isocontouring

Evolution of level sets Watch contours of L(v) as v increases

Evolution of level sets Contour tree

Evolution of level sets Contour tree

Evolution of level sets Contour tree

Evolution of level sets Contour tree

Evolution of level sets Contour tree

Evolution of level sets Contours appear, merge, split, & vanish Contour tree

Morse theory & Contour trees Karron et al 95, digital Morse theory Bajaj et al 97–99, seed sets Van Kreveld et al 97, 2-D contour tree Tarasov & Vyalyi 98, 3-D contour tree

How to compute contour trees without sweeping all level sets Build join and split trees Merge to form contour tree Works in all dimensions...

The join tree Represents set {p | f(p) >= x} Can be computed w/out the surface of the level set

Join tree construction Sort data by  value Maintain union/find for comp. of {p | f(p) >= x}

Union/Find Data structure for integers 1..n supporting: –Initialize() each integer starts in its own group for i = 1..n, g(i) = i; –Union(i,j) union groups of i and j g(Find(i)) = Find(j); –Find(i) return name of group containing i group = i; while group != g(group), group = g(group); // find group while i != group, {nx = g(i), g(i) = group, i = nx} // compress path Does n union/finds in O(n a(n)) steps [T72]

Join tree construction Sort data by  value Maintain union/find for comp. of {p | f(p) >= x} O(n+ t·α ( t ) ) after sort

The split tree Represents the set {p | f(p) <= x} Reverse join tree computation

Merge join and split trees

Merge join and split trees Algorithm

1. Add nodes from other tree Nodes have correct up degree in join & down degree in the split tree

2. Identify leaves A leaf in one tree, with up/down degree < 1 in other tree

3. Add to contour tree A leaf in one tree, with up/down degree < 1 in other tree

3. Add to contour tree

3. Add to contour tree

3. Add to contour tree Note that 4 is not a leaf

3. Add to contour tree The merge time is proportional to the tree size; much smaller than the data

4. Ends with Contour tree

Advantages Doesn’t need the surface structure to build the contour tree. The merge becomes simple, and works on a subset of the points The tree structure can advise where to choose the threshold value Can cut diff. branches at diff. values.

Flexible contouring Threshold diff. areas at diff. values

Flexible contouring Threshold diff. areas at diff. Values Guided by the Contour Tree

Contour Spectrum User Interface Signature Computation Real Time Quantitative Queries Topological Information Semi-Automatic Isovalue Selection

Input 3D Fuction Consider a terrain of which you want to compute the length of each isocontour and the area contained inside each isocontour.

Contour Spectrum : GUI for static data Plot of a set of signatures (length, area, gradient...) as functions of the scalar value .

Contour Spectrum : GUI for time-varying data ( ,t ) --> c The color c is mapped to the magnitude of a signature function of time t and isovalue  low high magnitude

Isovalue Selection Copyright: Chandrajit Bajaj, CCV, University of Texas at Austin The contour spectrum allows the development of an adaptive ability to separate interesting isovalues from the others.

Signature Computation –The length of each contour is a c 0 spline function. The area inside/outside each isocontour is a C 1 spline function.

Signature Computation In general the size of each isocontour of a scalar field of dimension d is a spline function of d- 2 continuity. The size of the region inside/outside is given by a spline function of d-1 continuity