Inspiration In August 2023, floods in Himachal Pradesh washed away roads and bridges around Mandi and Kullu, and phone lines went down too. Rescuers needed to know where the damage was and which villages were cut off, but the places that needed help most were the ones sending no news. We wanted to build something that answers those two questions from space.
What it does Our system turns satellite images into a flood damage map and a list of cut-off villages. It compares images from before and after the flood, and uses radar when clouds block the view. It checks rainfall data to confirm that a change is a real flood and not something normal like a harvest. Then it lays the flood over road and bridge maps to find villages with no dry route out. Rescue teams get a damage map, a cut-off list, and a printable A4 report that works offline on a laptop.
How we built it We use Sentinel-2 imagery for before and after views and Sentinel-1 radar for cloudy days. The backend is Python with FastAPI, NumPy, Rasterio and OpenCV. It masks clouds, aligns the two images, and calculates NDVI and MNDWI, which we combine in change vector analysis to separate flooded land from lost vegetation. Rainfall history from Open-Meteo and NASA POWER tells us whether the rain was far above normal. The dashboard is built with React and MapLibre, with a 3D terrain map and a before and after slider. We tested it on the Mandi floods of August 2023.
Challenges we ran into Monsoon clouds hide optical images exactly when floods happen. Small shifts between two satellite passes create fake changes along riverbanks and roads. And a simple before and after comparison flags harvests and seasonal greenery as damage. Cloud masking, image alignment and the rainfall check were our answers to these.
What we learned Raw satellite images are not enough for rescue teams. They need context, like rainfall, and a clear answer, like which villages are cut off. We also learned that simple, explainable maths is easier to trust and faster to run than a heavy model.
What's next A pilot in Himachal, then flood-prone states like Assam, Bihar and Odisha, and finally a national API that sends SMS and webhook alerts to district magistrates.
Before you submit, please check two things. Keep the radar and cut-off village parts only if your team has actually built or can demo them. And if the form has a "Built with" field, list: Python, FastAPI, NumPy, Rasterio, OpenCV, React, MapLibre, Sentinel-1, Sentinel-2, Open-Meteo, NASA POWER, OpenStreetMap.
Built With
- leaflet.js
- networkx
- openstreetmap
- streamlit
Log in or sign up for Devpost to join the conversation.