Skip to main content

Advertisement

Log in

Terrain trees: a framework for representing, analyzing and visualizing triangulated terrains

  • Published:
GeoInformatica Aims and scope Submit manuscript

Abstract

We propose a family of spatial data structures for the representation and processing of Triangulated Irregular Networks (TINs). We call such data structures Terrain trees. A Terrain tree combines a minimal encoding of the connectivity of the TIN with a hierarchical spatial index. Connectivity relations are extracted locally at run-time, within each leaf block of the hierarchy, based on specific application needs. Spatial queries are performed by exploring the hierarchical data structure. We present a new framework for terrain analysis based on Terrain trees. The framework, implemented in the Terrain trees library (TTL), contains algorithms for morphological features extraction, such as roughness and curvature, and for topology-based analysis of terrains. Moreover, it includes a technique for multivariate visualization, which enables the analysis of multiple scalar fields defined on the same terrain. To prove the effectiveness and scalability of such framework, we have compared the different Terrain trees against each other and also against the most compact state-of-the-art data structure for TINs. Comparisons are performed on storage and generation costs and on the efficiency in performing terrain analysis operations.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19

Similar content being viewed by others

Availability of data and material

The LiDAR datasets used in this manuscript are publicly available data provided by the OpenTopography Facility with support from the National Science Foundation under NSF Award Numbers 1833703, 1833643, and 1833632. The experimental results reported in this manuscript are collected in the same hardware environment and with the standard process.

Code availability

The source codes of the Terrain trees library and the Indexed data structure with Adjacencies (IA data structure) are available in public domain.

Notes

  1. https://opentopography.org/

References

  1. Agarwal PK, Beutel A, Mølhave T (2016) TerraNNI: Natural neighbor interpolation on 2D and 3D Grids Using a GPU. ACM Transactions on Spatial Algorithms and Systems 2(2):1–31. https://doi.org/10.1145/2786757

    Article  Google Scholar 

  2. Allili M, Kaczynski T, Landi C, Masoni F (2015) A new matching algorithm for multidimensional persistence. arXiv:1511.05427

  3. Baker WE, Emmitt GD, Robertson F, Atlas RM, Molinari JE, Bowdle DA, Paegle J, Hardesty RM, Menzies RT, Krishnamurti T et al (1995) Lidar-measured winds from space: a key component for weather and climate prediction. Bulletin of the American Meteorological Society 76(6):869–888

    Article  Google Scholar 

  4. Banchoff TF (1970) Critical points and curvature for embedded polyhedral surfaces. The American Mathematical Monthly 77(5): 475–485. http://www.jstor.org/stable/2317380

  5. Bentley J (1975) Multidimensional binary search trees used for associative searching. Communications of the ACM 18(9):509–517

    Article  MATH  Google Scholar 

  6. Boissonnat JD, Cazals F (2002) Smooth surface reconstruction via natural neighbour interpolation of distance functions. Computational Geometry 22(1–3):185–203. https://doi.org/10.1016/S0925-7721(01)00048-7

    Article  MathSciNet  MATH  Google Scholar 

  7. Carr H, Duke D (2013) Joint contour nets: Computation and properties. In: Visualization symposium (PacificVis), 2013 IEEE Pacific, pp 161–168 . https://doi.org/10.1109/PacificVis.2013.6596141

  8. Carr H, Geng Z, Tierny J, Chattopadhyay A, Knoll A (2015) Fiber surfaces: generalizing isosurfaces to bivariate data. Comput Graphics Forum 34(3):241–250. https://doi.org/10.1111/cgf.12636, http://onlinelibrary.wiley.com/doi/10.1111/cgf.12636/full

  9. Computational Geometry Algorithms Library (CGAL) (2020) https://www.cgal.org/. Accessed 1 Feb 2020

  10. Cignoni P, Ganovelli F, Gobbetti E, Marton F, Ponchio F, Scopigno R (2003) BDAM - Batched Dynamic Adaptive Meshes for high performance terrain visualization. Computer Graphics Forum 22(3):505–514

    Article  Google Scholar 

  11. Clarke L, Glendinning I, Hempel R (1994) The MPI Message Passing Interface standard. In: Decker KM, Rehmann RM (eds) Programming environments for massively parallel distributed systems. Birkhäuser Basel, Basel, pp 213–218

    Chapter  Google Scholar 

  12. Dalponte M, Bruzzone L, Gianelle D (2008) Fusion of hyperspectral and lidar remote sensing data for classification of complex forest areas. IEEE Transactions on Geoscience and Remote Sensing 46(5):1416–1427

    Article  Google Scholar 

  13. De Floriani L, Dimitri D, Facinoli M, Magillo P (2007) The \(PM_2\)-Triangle quadtree. Tech. rep., Dipartimento di Informatica e Scienze dell’Informazione (DISI), Università degli Studi di Genova

  14. De Floriani L, Facinoli M, Magillo P, Dimitri D (2008) A hierarchical spatial index for triangulated surfaces. In: Proceedings of the third international conference on computer graphics theory and applications (GRAPP 2008). pp 86–91

  15. De Floriani L, Fugacci U, Iuricich F, Magillo P (2015) Morse complexes for shape segmentation and homological analysis: discrete models and algorithms. In: Computer graphics forum, vol. 34. Blackwell Publishing Ltd., pp 761–785. https://doi.org/10.1111/cgf.12596

  16. De Floriani L, Hui A (2005) Data structures for simplicial complexes: An analysis and a comparison. In: Proceedings of the third Eurographics symposium on Geometry processing. Eurographics Association, pp 119–es

  17. Dolan MF, Grehan AJ, Guinan JC, Brown C (2008) Modelling the local distribution of cold-water corals in relation to bathymetric variables: Adding spatial context to deep-sea video data. Deep Sea Research Part I: Oceanographic Research Papers 55(11):1564–1579

    Article  Google Scholar 

  18. Edelsbrunner H, Harer J (2004) Jacobi sets of multiple Morse functions. In: Foundations of computational mathematics, Minneapolis 2002, London Mathematical Society Lecture Note Series, vol. 312. Cambridge University Press, pp 35–57. https://doi.org/10.1017/CBO9781139106962.003

  19. Edelsbrunner H, Harer J (2004) Jacobi Sets of multiple Morse functions. In: Foundations of Computational Mathematics, London Mathematical Society Lecture Note Series, vol. 312. Cambridge University Press, pp 37–57. https://doi.org/10.1017/CBO9781139106962.003

  20. Edelsbrunner H, Harer J, Patel AK (2008) Reeb spaces of piecewise linear mappings. In: Proceedings of the twenty-fourth annual symposium on computational geometry, SoCG ’08. ACM, New York, NY, USA, pp 242–250. https://doi.org/10.1145/1377676.1377720

  21. Edelsbrunner H, Mücke EP (1990) Simulation of simplicity: A technique to cope with degenerate cases in geometric algorithms. ACM Transactions on Graphics 9(1):66–104. https://doi.org/10.1145/77635.77639

    Article  MATH  Google Scholar 

  22. Fellegara R (2014) Spatial indexes for simplicial and cellular meshes. In: New trends in databases and information systems. Springer International Publishing, pp 373–382

  23. Fellegara R, Iuricich F, De Floriani L (2017) Efficient representation and analysis of triangulated terrains. In: Proceedings of the 25th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems, SIGSPATIAL’17. ACM, New York, NY, USA, pp 74:1–74:4. https://doi.org/10.1145/3139958.3140050

  24. Fellegara R, Iuricich F, De Floriani L, Weiss K (2014) Efficient computation and simplification of discrete Morse decompositions on triangulated terrains. In: Proceedings of the 22th ACM SIGSPATIAL international conference on advances in geographic information systems. ACM

  25. Fellegara R, Song Y (2021) LibTri code repository. https://github.com/UMDGeoVis/Terrain_Analysis_on_IA. Accessed 22 Feb 2022

  26. Fellegara R, Song Y (2021) Terrain trees library code repository. https://github.com/UMDGeoVis/Terrain_Trees. Accessed 22 Feb 2022

  27. Fellegara R, Weiss K, De Floriani L (2021) The Stellar decomposition: A compact representation for simplicial complexes and beyond. Computers & Graphics 98:322–343. https://doi.org/10.1016/j.cag.2021.05.002

    Article  Google Scholar 

  28. Finkel R, Bentley J (1974) Quad trees a data structure for retrieval on composite keys. Acta informatica 4(1):1–9

    Article  MATH  Google Scholar 

  29. Forman R (1998) Morse theory for cell complexes. Advances in Mathematics 134:90–145

    Article  MathSciNet  MATH  Google Scholar 

  30. Forman R (2002) A user’s guide to discrete Morse theory. Sém. Lothar Combin 48:B48c

    MathSciNet  MATH  Google Scholar 

  31. Gobbetti E, Marton F, Cignoni P, Di Benedetto M, Ganovelli F (2006) C-bdam–compressed batched dynamic adaptive meshes for terrain rendering. In: Computer graphics forum, vol. 25. Wiley Online Library, pp 333–342

  32. Gurung T, Rossignac J (2009) SOT: A compact representation for tetrahedral meshes. In: Proceedings SIAM/ACM Geometric and Physical Modeling, SPM ’09. San Francisco, USA, pp 79–88. https://doi.org/10.1145/1629255.1629266

  33. Heine C, Leitte H, Hlawitschka M, Iuricich F, De Floriani L, Scheuermann G, Hagen H, Garth C (2016) A Survey of Topology-based Methods in Visualization. Computer Graphics Forum 35(3):643–667. https://doi.org/10.1111/cgf.12933

    Article  Google Scholar 

  34. Held G, Marshall T (1991) Data compression; techniques and applications: Hardware and software considerations. John Wiley & Sons, New York

    Google Scholar 

  35. Hjaltason G, Samet H (2002) Speeding up construction of PMR quadtree-based spatial indexes. The VLDB Journal, The International Journal on Very Large Data Bases 11(2):137

    Google Scholar 

  36. Huettenberger L, Heine C, Garth C (2014) Decomposition and simplification of multivariate data using Pareto Sets. 20(12): 2684–93. https://doi.org/10.1109/TVCG.2014.2346447

  37. Hyde P, Dubayah R, Peterson B, Blair J, Hofton M, Hunsaker C, Knox R, Walker W (2005) Mapping forest structure for wildlife habitat analysis using waveform lidar: Validation of montane ecosystems. Remote Sensing of Environment 96(3–4):427–437

    Article  Google Scholar 

  38. Iuricich F, De Floriani L (2017) Hierarchical forman triangulation: A multiscale model for scalar field analysis. Computers & Graphics. https://doi.org/10.1016/j.cag.2017.05.015

  39. Iuricich F, Scaramuccia S, Landi C, De Floriani L (2016) A discrete morse-based approach to multivariate data analysis. In: SIGGRAPH ASIA 2016 Symposium on Visualization on - SA ’16, SA ’16. ACM, New York, NY, USA, pp 1–8. https://doi.org/10.1145/3002151.3002166

  40. de Smith J, M, Goodchild M, Longley P, (2018) Geospatial analysis: A comprehensive guide. The Winchelsea Press, S.l

  41. King HC, Knudson K, Neza M (2005) Generating discrete Morse functions from point data. Experimental Mathematics 14(4):435–444. https://doi.org/10.1080/10586458.2005.10128941

    Article  MathSciNet  MATH  Google Scholar 

  42. Lanier A, Romsos C, Goldfinger C (2007) Seafloor habitat mapping on the oregon continental margin: A spatially nested gis approach to mapping scale, mapping methods, and accuracy quantification. Marine Geodesy 30(1–2):51–76

    Article  Google Scholar 

  43. Lee S, Har D, Kum D (2016) Drone-assisted disaster management: Finding victims via infrared camera and lidar sensor fusion. In: 2016 3rd Asia-Pacific World Congress on Computer Science and Engineering (APWC on CSE). IEEE, pp 84–89

  44. Lewiner T (2013) Critical sets in discrete Morse theories: Relating Forman and piecewise-linear approaches. Computer Aided Geometric Design 30(6):609–621. https://doi.org/10.1016/j.cagd.2012.03.012

    Article  MathSciNet  MATH  Google Scholar 

  45. Lindenbaum M, Samet H, Hjaltason GR (2005) A probabilistic analysis of trie-based sorting of large collections of line segments in spatial databases. SIAM Journal on Computing 35(1):22–58

    Article  MathSciNet  MATH  Google Scholar 

  46. Mancinelli C, Livesu M, Puppo E (2018) Gradient field estimation on triangle meshes. In: Livesu M, Pintore G, Signoroni A (eds.) Smart tools and apps for graphics - Eurographics Italian chapter conference. The Eurographics Association. https://doi.org/10.2312/stag.20181301

  47. Meigs A (2013) Active tectonics and the lidar revolution. Lithosphere 5(2):226–229

    Article  Google Scholar 

  48. Mesmoudi M, De Floriani L, Magillo P (2008) Morphological analysis of terrains based on discrete curvature and distortion. In: Aref W, Mokbel M, Samet H, Schneider M, Shahabi C, Wolfson O (eds.) Proceedings of the 16th ACM SIGSPATIAL international conference on Advances in geographic information systems. Irvine, CA, USA, pp 415–418. . https://doi.org/10.1145/1463434.1463498

  49. Mesmoudi M, De Floriani L, Port U (2008) Discrete distortion in triangulated 3-manifolds. Computer Graphics Forum 27(5):1333–1340. https://doi.org/10.1111/j.1467-8659.2008.01272.x

    Article  Google Scholar 

  50. Mesmoudi MM, De Floriani L, Magillo P (2009) Discrete distortion for surface meshes. In: International conference on image analysis and processing. Springer, pp 652–661

  51. Meyer M, Desbrun M, Schroder M, Barr AH (2003) Discrete differential-geometry operators for triangulated 2-manifolds. In: Hege HC, Polthier K (eds.) Proceedings VisMath 2002. pp 35–57

  52. Milnor J (1963) Morse Theory. Princeton University Press, New Jersey

    Book  MATH  Google Scholar 

  53. Nagaraj S, Natarajan V, Nanjundiah RS (2011) A gradient-based comparison measure for visual analysis of multifield data. 30(3):1101–1110. https://doi.org/10.1111/j.1467-8659.2011.01959.x

  54. Nelson R, Samet H (1986) A consistent hierarchical representation for vector data. ACM SIGGRAPH Computer Graphics 20(4):197–206

    Article  Google Scholar 

  55. Nielson GM (1997) Tools for triangulations and tetrahedralizations and constructing functions defined over them. In: Nielson GM, Hagen H, Müller H (eds.) Scientific Visualization: overviews, Methodologies and Techniques, chap. \(20\). IEEE Computer Society, Silver Spring, MD, pp 429–525

  56. Opentopography - high-resolution topography data and tools (2020). http://www.opentopography.org/ [Online; accessed February-2020]

  57. Orenstein JA (1982) Multidimensional tries used for associative searching. Information Processing Letters 14(4):150–157

    Article  Google Scholar 

  58. Pajarola R, Gobbetti E (2007) Survey of semi-regular multiresolution models for interactive terrain rendering. The Visual Computer 23(8):583–605

    Article  Google Scholar 

  59. Paoluzzi A, Bernardini F, Cattani C, Ferrucci V (1993) Dimension-independent modeling with simplicial complexes. ACM Transactions on Graphics (TOG) 12(1):56–102

    Article  MATH  Google Scholar 

  60. Robins V, Wood P, Sheppard A (2011) Theory and algorithms for constructing discrete Morse complexes from grayscale digital images. IEEE Transactions on Pattern Analysis and Machine Intelligence 33(8):1646–1658. https://doi.org/10.1109/TPAMI.2011.95

    Article  Google Scholar 

  61. Rossignac J, Safonova A, Szymczak A (2001)3D compression made simple: Edge-Breaker on a Corner Table. In: Proceedings shape modeling international 2001. IEEE Computer Society, Genova, Italy

  62. Samet H (1990) The Design and analysis of spatial data structure. Addison Wesley, Reading

    Google Scholar 

  63. Samet H (2006) Foundations of multidimensional and metric data structures. Morgan Kaufmann, San Mateo

    MATH  Google Scholar 

  64. Samet H, Webber R (1985) Storing a collection of polygons using quadtrees. ACM Transactions on Graphics (TOG) 4(3):182–222

    Article  Google Scholar 

  65. Saye S, van der Wal D, Pye K, Blott S (2005) Beach-dune morphological relationships and erosion/accretion: An investigation at five sites in England and Wales using lidar data. Geomorphology 72(1):128–155. https://doi.org/10.1016/j.geomorph.2005.05.007, https://www.sciencedirect.com/science/article/pii/S0169555X05 001698

  66. Shepard MK, Campbell BA, Bulmer MH, Farr TG, Gaddis LR, Plaut JJ (2001) The roughness of natural terrain: A planetary and remote sensing perspective. Journal of Geophysical Research: Planets 106(E12):32777–32795

    Article  Google Scholar 

  67. Shivashankar N, Senthilnathan M, Natarajan V (2012) Parallel computation of 2D Morse-Smale complexes. IEEE Transactions on Visualization and Computer Graphics 18(10):1757–1770. https://doi.org/10.1109/TVCG.2011.284

    Article  Google Scholar 

  68. Tierny J, Carr H (2017) Jacobi Fiber Surfaces for Bivariate Reeb Space Computation 23(1):960–969. https://doi.org/10.1109/TVCG.2016.2599017

  69. Wang R, Peethambaran J, Chen D (2018) Lidar point clouds to 3-d urban models : a review. IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing 11(2):606–627

    Article  Google Scholar 

  70. Warner FW (1983) Foundations of differentiable manifolds and Lie groups, vol. 94. Springer Science & Business Media

  71. Webster TL, Forbes DL, Dickie S, Shreenan R (2004) Using topographic lidar to map flood risk from storm-surge events for Charlottetown, Prince Edward Island, Canada. Canadian Journal of Remote Sensing 30(1):64–76

    Article  Google Scholar 

  72. Weiss K, Iuricich F, Fellegara R, De Floriani L (2013) A primal/dual representation for discrete Morse complexes on tetrahedral meshes. Computer Graphics Forum 32:361–370

    Article  Google Scholar 

  73. White SA, Wang Y (2003) Utilizing dems derived from lidar data to analyze morphologic change in the North Carolina Coastline. Remote Sensing of Environment 85(1):39–47

    Article  Google Scholar 

  74. Xu X, Iuricich F, De Floriani L (2020) A persistence-based approach for individual tree mapping. In: Proceedings of the 28th international conference on advances in geographic information systems. ACM, pp 191–194. https://doi.org/10.1145/3397536.3422231

  75. Yonglin S, Lixin W, Zhi W (2010) Identification of inclined buildings from aerial lidar data for disaster management. In: 2010 18th international conference on geoinformatics. IEEE, pp 1–5

  76. Zaharia M, Chowdhury M, Franklin MJ, Shenker S, Stoica, I (2010) Spark: Cluster computing with working sets. In: Proceedings of the 2nd USENIX Workshop on Hot Topics in Cloud Computing , HotCloud’10, pp. 10–10. USENIX Association, Berkeley, CA, USA. http://dl.acm.org/citation.cfm?id=1863103.1863113

Download references

Acknowledgements

This work has been mainly developed while Riccardo Fellegara was with the University of Maryland at College Park, USA. This work has been supported by the US National Science Foundation under grant number IIS-1910766. It has also been performed under the auspices of the German Aerospace Center (DLR) under Grant DLR-SC-2467209. The big creek, canyon lake gorge, great smokey mountain, and sonoma county point clouds are kindly provided by the OpenTopography Facility [56] with support from the National Science Foundation under NSF Award Numbers 1833703, 1833643, and 1833632. We also acknowledge NASA Grant NNX13AP69G for the collection of sonoma county dataset, NSF Award number 1043051 for the collection of big creek, canyon lake gorge, and great smokey mountain datasets

Funding

This study was funded by the US National Science Foundation under grant number IIS-1910766.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yunting Song.

Ethics declarations

Conflicts of interest

The authors declare that they have no conflict of interest.

Competing interest

The authors declare that they have no competing interests to declare that are relevant to the content of this article.

Additional information

Publisher's note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendix A

Appendix A

Figures 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31.

Fig. 20
figure 20

The storage costs for storing the hierarchical index of the Terrain trees on canyon lake gorge dataset using different values of \(k_v\) and \(k_t\). The x-axis shows the threshold value on the vertices

Fig. 21
figure 21

Timings for generating the spatial decomposition of Terrain trees and extracting the VT relation in Terrain trees on canyon lake gorge dataset using different values of \(k_v\) and \(k_t\). The x-axis shows the vertex threshold value

Fig. 22
figure 22

The storage costs for storing the hierarchical index of the Terrain trees on sonoma county 1 dataset using different values of \(k_v\) and \(k_t\). The x-axis shows the threshold value on the vertices

Fig. 23
figure 23

Timings for generating the spatial decomposition of Terrain trees and extracting the VT relation in Terrain trees on sonoma county 1 dataset using different values of \(k_v\) and \(k_t\). The x-axis shows the vertex threshold value

Fig. 24
figure 24

The storage costs for storing the hierarchical index of the Terrain trees on sonoma county 2 dataset using different values of \(k_v\) and \(k_t\). The x-axis shows the threshold value on the vertices

Fig. 25
figure 25

Timings for generating the spatial decomposition of Terrain trees and extracting the VT relation in Terrain trees on sonoma county 2 dataset using different values of \(k_{\textit{v}}\) and \(k_t\). The x-axis shows the vertex threshold value

Fig. 26
figure 26

The storage costs for storing the hierarchical index of the Terrain trees on big creek dataset using different values of \(k_{\textit{v}}\) and \(k_t\). The x-axis shows the threshold value on the vertices

Fig. 27
figure 27

Timings for generating the spatial decomposition of Terrain trees and extracting the VT relation in Terrain trees on big creek dataset using different values of \(k_{\textit{v}}\) and \(k_t\). The x-axis shows the vertex threshold value

Fig. 28
figure 28

The storage costs for storing the hierarchical index of the Terrain trees on sonoma county 3 dataset using different values of \(k_{\textit{v}}\) and \(k_t\). The x-axis shows the threshold value on the vertices

Fig. 29
figure 29

Timings for generating the spatial decomposition of Terrain trees and extracting the VT relation in Terrain trees on sonoma county 3 dataset using different values of \(k_{\textit{v}}\) and \(k_t\). The x-axis shows the vertex threshold value

Fig. 30
figure 30

The storage costs for storing the hierarchical index of the Terrain trees on sonoma county 4 dataset using different values of \(k_{\textit{v}}\) and \(k_t\). The x-axis shows the threshold value on the vertices

Fig. 31
figure 31

Timings for generating the spatial decomposition of Terrain trees and extracting the VT relation in Terrain trees on sonoma county 4 dataset using different values of \(k_v\) and \(k_t\). The x-axis shows the vertex threshold value

Rights and permissions

Springer Nature or its licensor holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Fellegara, R., Iuricich, F., Song, Y. et al. Terrain trees: a framework for representing, analyzing and visualizing triangulated terrains. Geoinformatica 27, 525–564 (2023). https://doi.org/10.1007/s10707-022-00472-3

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10707-022-00472-3

Keywords

Navigation