River and Basin Profiler: a module for extracting watershed boundaries,
river centerlines, and catchment statistics
Abstract
Watersheds serve as natural spatial boundaries whose characteristics are
often indicators of the hydrologic processes within them. Watershed
characteristics are frequently used as predictors, parameters, or
proxies in models of hydrologic and ecologic dynamics. Developments in
DEMs over the past decade have resulted in elevation data spanning the
globe that allows watershed delineation at arbitrary locations. In
tandem, satellite-based observations and large-scale modeling efforts
provide many sources of near-global watershed characteristics, e.g.
topography, soil types, vegetation, climate, permafrost extent, and many
more. However, with growing data availability comes a growing need for
tools that can rapidly query and summarize them. We developed River and
Basin Profiler (RaBPro), a Python module providing a pipeline to
delineate drainage basins for any point on Earth and calculate watershed
statistics for practically any geospatial raster dataset. RaBPro makes
use of the MERIT-Hydro or HydroBASINS datasets to define watershed
polygons, which can be exported in GeoJSON or ESRI shapefile format for
further use in GIS software. RaBPro will also generate streamlines and
river elevation profiles. Finally, RaBPro calculates statistics over
delineated basins using Google Earth Engine (GEE). By taking advantage
of GEE’s vast dataset archive and distributed computing system, RaBPro
can quickly compute many statistics over even very large basins
efficiently and without the need for storing large geo-rasters locally.
Additionally, users may upload their own datasets to GEE and create
custom statistic functions.