Flood Warning Technology

What it is

A native Android app that measures river surface velocity from video using Space-Time Image Velocimetry (STIV). Point a phone at moving water, draw search lines parallel to the flow, and the app builds a space-time image along each line: surface texture drifting downstream shows up as diagonal stripes, and the stripe angle -- found with a structure tensor -- is the pixel velocity. Calibration turns that into metres per second. Add depth soundings and it estimates discharge by the velocity-area method.

Screenshots

HydroSTIV — Home screen. Captured from the app running on an Android emulator, Pixel 3a profile.
Home screen. Captured from the app running on an Android emulator, Pixel 3a profile.

How it works

phone video of the surface --> search lines drawn parallel to the flow | brightness along each line, frame by frame --> space-time image | structure tensor --> stripe angle --> pixel velocity | calibration (scale / rectification) --> m/s per line | + depth soundings --> velocity-area method --> m³/s, ML/d

Code and download

⬇ Download APK (v1.0)

Android 8+, about 19 MB. Signed with the standard Android debug key: it installs fine, but a later Play Store or properly signed build will need this one uninstalled first.

github.com/agmurf/HydroSTIV ↗

MIT licensed. No agency sensor register and no key material is included. Field engineering on a live warning path, published because the reasoning may help others — not a product, no warranty.