Skip to content

feat: SAR-based flood detection - #86

Merged
obielin merged 5 commits into
mainfrom
feature/flood-detection
Jun 26, 2026
Merged

obielin merged 5 commits into
mainfrom
feature/flood-detection

Conversation

@Goldokpa

Copy link
Copy Markdown
Member

Flood detection U-Net, SAR preprocessing, ensemble, OSM road-impact module, and tests.

🤖 Generated with Claude Code

Goldokpa and others added 5 commits June 26, 2026 13:23
…assification

- flood_classification: separate flood from permanent water via reference
  (JRC GSW occurrence) or pre/post change detection; refuses to guess when
  neither is available
- ensemble: detect() now returns a 3-class classified_mask when a reference
  or pre-event scene is supplied
- flooding_sar: FloodingSARAnalysis (Sentinel-1 VV/VH) behind the standard
  analysis contract, registered and discoverable
- gee_downloader: Sentinel-1 GRD + JRC Global Surface Water fetch (synthetic
  fallback, explicitly tagged)
- inference/flood_pipeline: bbox -> S1 + JRC -> ensemble -> 3-class result
- api: /api/predict dispatches flooding_sar to the SAR pipeline; type listed
  in analysis-types/health; config + [flood] extra added
- scripts: eval_flood.py (real IoU/F1/precision/recall on Sen1Floods11) and
  download_sen1floods11.py
- tests: classification + SAR analysis + registry/API exposure
NGO/gov actionability: surface affected_road_km (OSM, degrades honestly when
osmnx absent) and a quality block stating is_synthetic, whether permanent vs
flood was distinguished, the reference source, and that the detector is not yet
validated against a labeled benchmark. No fabricated impact or accuracy.
require_api_key now validates keys against the organizations table (active
keys only) with a 5-min cache, replacing the stub that accepted nothing but
cv_dev. The cv_dev bypass is disabled unless CLIMATEVISION_ALLOW_DEV_KEY is
set, so production rejects it by default. Adds auth tests (real key, unknown
key, deactivated org, dev-key gate, e2e predict).
@Goldokpa
Goldokpa force-pushed the feature/flood-detection branch from 306e9ea to e577345 Compare June 26, 2026 12:51
@obielin
obielin merged commit 921b6ca into main Jun 26, 2026
4 checks passed
Goldokpa pushed a commit that referenced this pull request Jun 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants