-
-
Sahayak landing page : Satellite-based flood damage mapping and rescue prioritization dashboard.
-
Dashboard overview : Flood extent, cut-off settlements, affected population, and priority metrics from real Sentinel-1 SAR data.
-
Interactive flood map : Flood extent (blue), strict cut-offs (red), practical cut-offs (orange), and accessible settlements (green).
-
Rescue priority list : 15 cut-off settlements ranked by population weight and distance from nearest service center.
-
Auto-generated situation report : Region summary, top priority areas, and recommended tactical action with CSV export.
Inspiration
When floods hit Assam, roads and bridges wash away, leaving entire villages completely cut off. Rescue teams waste critical hours figuring out where the damage is and who needs help first. We wanted to build a tool that answers this from space, in minutes, without relying on ground reports.
What it does
Sahayak processes Sentinel-1 SAR satellite imagery to detect flood extent. It then overlays this flood mask onto the OpenStreetMap road network and uses graph theory (Dijkstra's algorithm) to identify settlements that are strictly cut off or practically isolated (detour > 3x). Finally, it ranks these settlements by a priority score (population + distance from nearest service center) and presents them on an interactive dashboard for rescue dispatch.
How we built it
- Data Pipeline: Used Google Earth Engine to download Sentinel-1 GRD SAR imagery (pre & post-flood), applied radiometric calibration, speckle filtering, terrain correction, and log-ratio change detection to generate a flood mask. Slope filtering (DEM-based) removed radar shadow false positives.
- ML Model: Trained a U-Net (ResNet34 encoder) on the Sen1Floods11 dataset for pixel-level flood segmentation, with an ensemble approach combining ML output with traditional Otsu thresholding.
- Graph Analysis: Built a road network graph using OSMnx (8,632 nodes, 20,669 edges). Overlaid the flood mask to remove submerged edges, then computed strict cut-offs (no path) and practical cut-offs (detour ≥ 3x) using NetworkX.
- Frontend: Built a React + TypeScript dashboard with Leaflet for interactive maps, Tailwind CSS for styling, and Framer Motion for micro-interactions.
Challenges we ran into
- CRS alignment: SAR imagery (EPSG:4326) with OSM road networks required careful reprojection and spatial indexing.
- False positives from radar: Steep slopes caused false flood detections — solved with DEM-based slope filtering (>5% slope excluded).
- Practical cut-off logic: Traditional connectivity only checks if a path exists. We had to implement a "practical cut-off" where a path exists but the detour is 3x longer — making it unusable for emergency response.
- Population estimation: OSM doesn't have census data, so we derived estimates from settlement classification (village, hamlet, town, suburb).
Accomplishments that we're proud of
- Built a fully end-to-end pipeline from raw Sentinel-1 SAR data to actionable rescue priority lists.
- Validated the flood mask against Sentinel-2 optical imagery — achieved IoU of 0.76 and F1-score of 0.82.
- Introduced the "Practical Cut-off" concept — a novel metric that reflects real-world rescue scenarios.
- Designed a dual-scenario dashboard (Real Event vs Severe Simulation) to demonstrate scalability.
- Zero LLM hallucination principle — every number traceable to source data.
What we learned
- How to process SAR imagery for disaster response applications.
- Graph theory applications in real-world logistics and rescue operations.
- The importance of explainable AI in humanitarian contexts — trust matters more than accuracy.
- Working across multiple data sources (satellite, OSM, DEM) requires careful coordinate system handling.
What's next for Sahayak
- Complete U-Net model training for higher accuracy flood segmentation.
- Cron-based pipeline automation for real-time satellite data ingestion.
- Multi-region validation (Bihar, Kerala, Bangladesh).
- Backend API + database for multi-user deployment.
- Mobile app for field rescue teams with offline map support.
- Integration with real-time river gauge data (CWC) for flood forecasting.
Built With
- disaster-response
- geopandas
- google-earth-engine
- graph-analysis
- leaflet.js
- machine-learning
- networkx
- openstreetmap
- osmnx
- python
- pytorch
- rasterio
- react
- remote-sensing
- sar
- sentinel-1
- tailwind-css
- typescript
- u-net
- vite
Log in or sign up for Devpost to join the conversation.