Substrate Classification

Static app

The model classifies riverbed substrate per pixel; pixels it is not confident about are held back as Unknown rather than forced into a class. Toggle the map layers to compare the raw sonar, the stock classification, and the confidence-thresholded result.

Map could not load (a network may be blocking the basemap tiles). The tables and downloads are still available.

One row per inference patch: the model's leading substrate class, its confidence, and the label assigned after thresholding — exported as the per-patch confidence CSV.

Each histogram shows, across all patches, how confident the model was in one substrate class. A spread piled near 1.0 means the model is decisive for that class; a low or flat spread means it is often unsure — those are the patches thresholding holds back as Unknown. Reading these shows which substrates the model handles well on this river and which need tuning or reference data before they can be trusted.

Best on desktop for track inspection.
Best on desktop for matrix comparison.
Best on desktop for wide validation tables.

Offline pipeline

The deep-learning inference runs once, before publishing. This site reads the saved artifacts and needs no TensorFlow at view time — reproducible and auditable.

Per-patch confidence export

The model's per-class probabilities are surfaced as a first-class output via a small, upstreamable MIT patch to PINGMapper.

Open, GIS-ready output

Every figure traces to a CSV, GeoPackage, or Excel artifact the pipeline generates.

Upstreamable source patch