WhiteboxTools Elevation Above Stream produces NoData holes
Hi everyone,
I'm calculating a HAND raster using WhiteboxTools in QGIS.
Workflow
- ALOS PALSAR DEM
- Breach Single Cell Pits
- Breach Depressions (Least Cost)
- D8 Pointer
- D8 Flow Accumulation
- Extract Streams (threshold = 3000)
- Elevation Above Stream
Problem
The HAND output contains several relatively large NoData holes, mostly located in valley bottoms. Stream cells themselves are NoData (which I assume is expected), but these larger holes are not.
I've checked the inputs:
- the breached DEM has valid elevation values everywhere
- the D8 Pointer has valid flow directions in these areas
- the Flow Accumulation raster has valid values (including high accumulation values in some of the holes)
- the stream raster is valid (streams = 1, background = 0)
- WhiteboxTools finishes without warnings or errors
Interestingly, I observed what seems to be the same issue during watershed delineation. In those locations, the watershed boundary unexpectedly stops even though the extracted stream continues downstream.
Because both tools fail in nearly the same locations, I suspect there may be a missing hydrological connection somewhere in the processing chain, possibly introduced or exposed during the DEM preprocessing.
I also tried using the original (unbreached) PULSAR DEM, but then the HAND result becomes much worse and is largely unusable due to uncorrected depressions.
The Elevation Above Stream Euclidean tool works much better and does not produce these large holes, only a few isolated NoData pixels near streams.
Question
Has anyone encountered this behaviour before?
Could this indicate a problem with the Breach Depressions workflow, D8 flow routing, or is it a known limitation or bug in WhiteboxTools' HAND implementation?
Any suggestions on how to diagnose or fix this would be greatly appreciated.
Posted Jul 5, 2026, 12:36 PM UTC