2022 CSDMS meeting-099: Difference between revisions

From CSDMS
No edit summary
No edit summary
Line 54: Line 54:
}}
}}
{{CSDMS meeting abstract template 2022
{{CSDMS meeting abstract template 2022
|CSDMS meeting abstract=“Depression” is a blanket term used for inwardly draining regions of digital elevation models, for noise, and features of interest in image processing and morphological segmentation. Previously, depressions have presented topological and modeling difficulties so they were algorithmically removed and "hydrologically corrected" digital elevation models (DEMs) in place of DEMs of the naturally occurring Earth surface. Our novel data structure – the depression hierarchy – encodes these depressions into landscapes so that their full complexity is exposed and workable. Individual sub-depressions are successively merged together into meta-depressions in a process that continues until they drain externally. This is mapped out in a forest of binary trees algorithmically. This hierarchy can be used to manipulate individual depressions or depression networks, as well as to accelerate dynamic models of hydrological flow. While the algorithm was originally implemented in C++, in this work a Python wrapper has been built using the pybind11 library, allowing for the dynamic passage of C++ input/output files through Python. This enables users to capitalize on the strengths of both languages. The Python wrapper also streamlines the process of integrating the depression hierarchy into the CSDMS model interfaces and into Landlab. Here, we outline the structure and mechanics of the depression hierarchy algorithm and its accompanying Python wrapper.
|CSDMS meeting abstract=Depressions are inwardly-draining regions of digital elevation models (DEMs). For modeling purposes, depressions are often removed to create a "hydrologically corrected" DEM. However, this compromises model realism and creates perfectly flat surfaces that must be handled in some other way. If depressions are not removed, the movement of water within them must be modeled. This is challenging because depressions are often deeply nested, one inside the other.


Open-source code is available on GitHub at:
Here, we present a novel data structure – the depression hierarchy – which uses a forest of binary trees to capture and abstract the full topographic and the topologic complexity of depressions. The depression hierarchy can be used to quickly manipulate individual depressions or depression networks, as well as to accelerate dynamic models of hydrological flow, as shown in our Fill-Spill-Merge poster. While the algorithm is implemented in C++ for performance reasons, we have also developed a Python wrapper using the pybind11 library. This enables users to capitalize on the strengths of both languages. The Python wrapper also streamlines the process of integrating the depression hierarchy into the CSDMS model interfaces and Landlab. Open source code is available on GitHub at https://github.com/r-barnes/Barnes2019-DepressionHierarchy and https://github.com/r-barnes/pydephier.
* https://github.com/r-barnes/Barnes2019-DepressionHierarchy
https://github.com/r-barnes/pydephier
}}
}}
{{blank line template}}
{{blank line template}}

Revision as of 17:45, 15 April 2022



(if you haven't already)




Log in (or create account for non-CSDMS members)
Forgot username? Search or email:CSDMSweb@colorado.edu


Browse  abstracts


The Depression Hierarchy and Python Bindings: Quantifying Internally-Drained Regions

Campbell Dunn, (she/her),University of Wisconsin Madison Wisconsin, United States. cndunn@wisc.edu
Richard Barnes, Lawrence Berkeley National Laboratory Berkeley California, United States. rbarnes@umn.edu
Andrew Wickert, University of Minnesota Minneapolis Minnesota, United States. awickert@umn.edu
Kerry Callaghan, Columbia University New York New York, United States. kerryc@ldeo.columbia.edu



Depressions are inwardly-draining regions of digital elevation models (DEMs). For modeling purposes, depressions are often removed to create a "hydrologically corrected" DEM. However, this compromises model realism and creates perfectly flat surfaces that must be handled in some other way. If depressions are not removed, the movement of water within them must be modeled. This is challenging because depressions are often deeply nested, one inside the other. Here, we present a novel data structure – the depression hierarchy – which uses a forest of binary trees to capture and abstract the full topographic and the topologic complexity of depressions. The depression hierarchy can be used to quickly manipulate individual depressions or depression networks, as well as to accelerate dynamic models of hydrological flow, as shown in our Fill-Spill-Merge poster. While the algorithm is implemented in C++ for performance reasons, we have also developed a Python wrapper using the pybind11 library. This enables users to capitalize on the strengths of both languages. The Python wrapper also streamlines the process of integrating the depression hierarchy into the CSDMS model interfaces and Landlab. Open source code is available on GitHub at https://github.com/r-barnes/Barnes2019-DepressionHierarchy and https://github.com/r-barnes/pydephier.