Skip to content

Conversation

@groutr
Copy link
Contributor

@groutr groutr commented Feb 20, 2024

Implements variations of the Priority Flood algorithm mentioned in "Priority-Flood: An Optimal Depression-Filling and Watershed-Labeling Algorithm for Digital Elevation Models"

The methods are placed in their own module to facilitate easy maintenance.

The methods are:

  • fill_depressions: A priority flood based method for fill depressions. First implemented in Use Priority Flood algorithm to fill depressions #243.
  • fill_depressions_epsilon: A modification of priority flood that automatically resolves flats. This is achieved by adding an epsilon to neighboring cells that are raised.
  • flow_dirs: Instead of using fill_depressions_epsilon, this variant computes the flow directions directly from the DEM. The paper describes this as a "depression carving" algorithm (rather than filling depressions, it drills through their walls). This helps preserve flow directions within depressions that otherwise would have been filled.
  • basins: Uses priority flood to label watersheds.

@mdbartos How would you envision exposing these methods to pysheds API?

Implements variations of the Priority Flood algorithm mentioned in "Priority-Flood: An Optimal Depression-Filling and Watershed-Labeling Algorithm for Digital Elevation Models"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant