algorithms for visualization constructing contour
play

Algorithms for Visualization: Constructing Contour Trees 1 - PowerPoint PPT Presentation

Algorithms for Visualization: Constructing Contour Trees 1 Raghavendra G S PhD Student, Visualization and Graphics Lab, CSA, IISc. July 6th, 2017 1 Hamish Carr, Jack Snoeyink, and Ulrike Axen. Computing contour trees in all dimensions.


  1. Algorithms for Visualization: Constructing Contour Trees 1 Raghavendra G S PhD Student, Visualization and Graphics Lab, CSA, IISc. July 6th, 2017 1 Hamish Carr, Jack Snoeyink, and Ulrike Axen. “Computing contour trees in all dimensions.” Computational Geometry 24.2 (2003): 75-94. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 1 / 45

  2. Introduction Introduction Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 2 / 45

  3. Introduction Scientific Visualization 2 http://www.cc.gatech.edu/scivis/tutorial/linked/whatisscivis.html Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 3 / 45

  4. Introduction Scientific Visualization Scientific Visualization (SciVis) 2 is the representation of data graphically as a means of gaining understanding and insight into the scientific data. 2 http://www.cc.gatech.edu/scivis/tutorial/linked/whatisscivis.html Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 3 / 45

  5. Introduction Why algorithms for SciVis? Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 4 / 45

  6. Introduction Why algorithms for SciVis? Automate the process/minimize human intervention. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 4 / 45

  7. Introduction Why algorithms for SciVis? Automate the process/minimize human intervention. Spatio-temporal nature of data. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 4 / 45

  8. Introduction Why algorithms for SciVis? Automate the process/minimize human intervention. Spatio-temporal nature of data. Huge data size. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 4 / 45

  9. Introduction Why algorithms for SciVis? Automate the process/minimize human intervention. Spatio-temporal nature of data. Huge data size. Real-time visualization. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 4 / 45

  10. Introduction Today’s Agenda Visualization Scienti fi c Visualization Information Visualization (Data with geometry (Data without geomtery information) information) T ext/Document Scalar Field Vector Field T ensor Field Tree/Graphs/Network Visualization Visualization Visualization Visualization Visualization Contour Trees Isosurfaces T opological Methods Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 5 / 45

  11. Background Background Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 6 / 45

  12. Background Some background Scalar fields. f : R 2 , 3 − → R Isovalue. Real value v in the range. Level sets. All points p ∈ R 2 , 3 s.t. f ( p ) = v Can have many components. Isosurfaces. When the domain is R 3 Topological Structures. Figure: Top Scalar field defined on R 2 a Middle Isocontours and contour tree b Stick figures. Succinct representation of the a from Wikipedia functions. b from Rephael Wagner, “Isosurfaces: geometry, topology, and algorithms”, 2013. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 7 / 45

  13. Background The data Continuity? Data representation. Dividing cubes into tetrahedra. Triangulation. Linear interpolation. Figure: Top Example mesh/grid a Bottom Dividing a cube b a from Wang et al. “Three-dimensional DC anisotropic resistivity modelling using finite elements on unstructured grids”. Geophys J Int 2013. b from Rephael Wagner Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 8 / 45

  14. Background More about Isosurfaces Figure: Left: Data set. Right: Isosurfaces. 3 3 from Alexandru Telea, “Data visualization: principles and practice”. CRC Press, 2014. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 9 / 45

  15. Background More about Isosurfaces Figure: Marching cubes lookup table. 4 4 from Wikipedia Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 10 / 45

  16. Contour trees Contour trees Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 11 / 45

  17. Contour trees Problems/Why contour trees? Figure: Need for contour tree. 5 5 from Rephael Wagner,“Isosurfaces: geometry, topology, and algorithms”, 2013. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 12 / 45

  18. Contour trees What are contour trees? We can see how the level sets evolve by changing the isovalues Figure: Evolution of level sets 6 6 from J.Snoeyink,C Bajaj Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 13 / 45

  19. Contour trees What are contour trees? Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 14 / 45

  20. Contour trees What are contour trees? Contour tree tracks the changes in the connectivity of level sets of the function. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 14 / 45

  21. Contour trees What are contour trees? Contour tree tracks the changes in the connectivity of level sets of the function. It has set of nodes where connectivity of level sets change. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 14 / 45

  22. Contour trees What are contour trees? Contour tree tracks the changes in the connectivity of level sets of the function. It has set of nodes where connectivity of level sets change. It has set of edges which connects these nodes in a meaningful manner. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 14 / 45

  23. Contour trees What are contour trees? Running Example Figure: Evolution of level sets 7 7 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 15 / 45

  24. Contour trees What are contour trees? Running Example Figure: Evolution of level sets 8 8 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 16 / 45

  25. Contour trees What are contour trees? Running Example Figure: Evolution of level sets 9 9 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 17 / 45

  26. Contour trees What are contour trees? Running Example Figure: Evolution of level sets 10 10 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 18 / 45

  27. Contour trees What are contour trees? Running Example Figure: Evolution of level sets 11 11 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 19 / 45

  28. Contour trees What are contour trees? Running Example Figure: Evolution of level sets 12 12 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 20 / 45

  29. Contour trees More background Link. Lower link (LL). Upper link (UL). Critical points. Maxima (Empty UL). Minimum Regular Minima (Empty LL). Saddle (UL/LL not simply connected). Identifying by Lower links Saddle Maximum Nodes of Contour tree are all critical Figure: Top Link in Triagulations a points. Middle/Bottom Classification based on LL b a from Wikipedia b from slides by Julian Tierny Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 21 / 45

  30. Contour trees Evolution in terms of Critical points Minima = ⇒ Level set component is created. Maxima = ⇒ Level set component is destroyed. Saddle = ⇒ Level set components split or join. Figure: Contour Tree 13 Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 22 / 45

  31. Algorithm Algorithm Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 23 / 45

  32. Algorithm Join tree + Split tree = Contour Tree Join tree. Split tree. Figure: Join tree + Split tree = Contour Tree 14 14 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 24 / 45

  33. Algorithm Algorithm 15 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 25 / 45

  34. Algorithm Algorithm Construct Join tree. 15 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 25 / 45

  35. Algorithm Algorithm Construct Join tree. Construct Split tree. 15 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 25 / 45

  36. Algorithm Algorithm Construct Join tree. Construct Split tree. Merge them to get Contour tree. 15 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 25 / 45

  37. Algorithm Algorithm Construct Join tree. Construct Split tree. Merge them to get Contour tree. Figure: Join tree + Split tree = Contour Tree 15 15 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 25 / 45

  38. Algorithm Some observations and details Joins are easy to track but splits aren’t. Why/how? 16 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 26 / 45

  39. Algorithm Some observations and details Joins are easy to track but splits aren’t. Why/how? Notice that Split tree is actually Join tree for the function swept in opposite direction. 16 from Hamish Carr et al. Raghavendra G S (VGL CSA, IISc) Constructing Contour Trees July 6th, 2017 26 / 45

Recommend


More recommend