Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


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

1 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

2 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

3 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

4 Contour tree 20 25 0 20 0 Optimal Single-Resolution Isocontouring

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

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

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

8 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

9 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

10 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

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

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

13 Evolution of level sets 7 8 9 10 5 6 4 3 1 2 Contour tree

14 Evolution of level sets 7 8 9 10 5 6 4 3 1 2 Contour tree

15 Evolution of level sets 7 8 9 10 5 6 4 3 1 2 Contour tree

16 Evolution of level sets 7 8 9 10 5 6 4 3 1 2 Contour tree

17 Evolution of level sets 7 8 9 10 5 6 4 3 1 2 Contour tree

18 Evolution of level sets Contours appear, merge, split, & vanish 7 8 9 10 5 6 4 3 1 2 Contour tree

19 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

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

21 The join tree Represents set {p | f(p) >= x} Can be computed w/out the surface of the level set. 7 8 9 10 5 6 4 1

22 Join tree construction Sort data by  value Maintain union/find for comp. of {p | f(p) >= x} 7 8 9 10 5 6 4

23 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]

24 Join tree construction Sort data by  value Maintain union/find for comp. of {p | f(p) >= x} O(n+ t·α ( t ) ) after sort 7 8 9 10 5 6 4 1

25 The split tree 10 3 1 2 Represents the set {p | f(p) <= x} Reverse join tree computation

26 Merge join and split trees 10 3 1 2 7 8 9 5 6 4 1 7 8 9 5 6 4 3 1 2

27 Merge join and split trees Algorithm

28 1. Add nodes from other tree Nodes have correct up degree in join & down degree in the split tree. 7 8 9 10 5 6 4 1 7 8 9 5 6 4 3 1 2 3 2

29 2. Identify leaves A leaf in one tree, with up/down degree < 1 in other tree 7 8 9 10 5 6 4 1 7 8 9 5 6 4 3 1 2 3 2

30 3. Add to contour tree A leaf in one tree, with up/down degree < 1 in other tree 7 8 9 10 5 6 4 1 7 8 9 5 6 4 3 1 3 3 2

31 3. Add to contour tree 7 8 9 10 5 6 4 1 7 8 9 5 6 4 3 1 3 3 2

32 3. Add to contour tree 7 8 9 10 5 6 4 7 8 9 5 6 4 3 1 3 3 2

33 3. Add to contour tree Note that 4 is not a leaf 7 8 9 10 5 6 4 7 8 9 5 6 4 1 3 2 4

34 3. Add to contour tree The merge time is proportional to the tree size; much smaller than the data 8 9 10 5 6 4 8 9 5 6 4 1 3 2 4 7 5

35 4. Ends with Contour tree 7 8 9 10 5 6 4 3 1 2

36 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.

37 Flexible contouring Threshold diff. areas at diff. values

38 Flexible contouring Threshold diff. areas at diff. Values Guided by the Contour Tree 7 8 9 10 5 6 4 3 1 2

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

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

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

42 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

43 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.

44 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.

45 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


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

Similar presentations


Ads by Google