Lagos Flood Intelligence — mapping floods from space
When heavy rain flooded Lagos on 3–4 July 2024, reports came in from Lekki, Ibeju-Lekki and beyond — but no clear map of where the water went. This project builds a reproducible pipeline that compares Sentinel-1 radar imagery from before and after an event to find candidate flooded areas, with the long-term goal of a reusable runbook for any future flood.
View on GitHub →
The pipeline
Five stages, each producing auditable outputs: acquire a before/after Sentinel-1 pair, preprocess it in ESA SNAP, compare backscatter in decibels, extract candidate patches, and validate them against independent evidence.
Before, after, and the change
Radar sees through cloud — essential in a rainy-season flood. Open water reflects the radar signal away from the satellite, so newly flooded ground tends to appear darker. Comparing the same window before and after the event highlights where that darkening happened.

Why “candidates,” not “floods”
A darker radar return doesn’t prove flooding. Each patch is reviewed against terrain, historical water, and outside reports before anything is called a flood.
Candidate C0079, on the edge of Ologe Lagoon, shows why: a strong radar drop, flat terrain — but it overlaps historical water, so its flood status stays unknown until independent evidence settles it.

Knowing what we can’t see
71% of the study area had usable radar measurements on both dates. The rest — mostly lagoon water and a strip outside the radar footprint — is excluded, not assumed dry.

Progress so far
- Sentinel-1 pair acquired with provenance tracking; preprocessed in ESA SNAP (orbit, calibration, terrain correction)
- Backscatter change analysis across 71% of the Lagos study area
- 400 candidate patches (3.13 km²) with radar and terrain review attributes
- Validation against independent evidence (NEMA, GDACS, geolocated imagery) under way
Next
- Independent validation and accuracy assessment
- Second event (July 2021)
Built with
- Python
- GeoPandas
- ESA SNAP
- QGIS
- Sentinel-1/2
- NASADEM
- Docker