Project SBAFN is an explainable, street-level flood-proneness visualization and decision-support app for Philippine cities. It visually communicates per-street, evidence-backed flood insights that planners can act on.
Note
This project aims to supersede Project NOAH, the Philippines' state-of-the-art initiative that provides area-based hazard overview, highlighting flood hazard zones at the national level. SBAFN offers the next step by covering the existing gaps of NOAH, by showing the street-level specifics of why floods happen, and give the explainability that was long needed for actual, effective decision making.
- Street-Level Granularity - scores every road segment (green/yellow/red) instead of broad barangay/city polygons.
- Explainability - shows why a specific street scores that way. It includes insights about street-level physical flood proneness indicators, topography data, road data, all mapped to historical flood events as basis.
- Scenario + Prioritization - stress-test each street segment based on previous reported rainfall events (30/50/100 mm/hr rain).
- Actionable Insights - Upon full release of Project SBAFN, outputs can be used for LGU planning, work orders, and DRRM briefings.
β‘οΈ For the specifics, refer to the overview in the Methodology section below or docs/METHODOLOGY.md.
The latest version of Project SBAFN can be accessed through the following link:
https://project-sbafn.vercel.app
To setup this project locally, ensure you have:
| Requirement | Version |
|---|---|
| Python | 3.11+ |
| Git | 2.30+ |
| Flutter | 3.35+ |
The following indicates a quick step-by-step to run the project using Windows PowerShell.
REM 1) Clone the repo (pick one)
git clone git@github.com:KubangPawis/project-sbafn.git
git clone https://github.com/KubangPawis/project-sbafn.git
REM 2) Go into the project folder
cd /d C:\path\to\project-sbafnRun the app (Flutter web):
REM 1.) Navigate to the Flutter app directory
cd sbafn_app
REM 2.) Run the app
flutter run -d chrome --dart-define=MAPTILER_KEY=<INSERT_API_KEY>(Optional) Rebuild data pipeline
To rebuild the data pipeline, follow the set of steps listed below. Large third-party data (e.g., Mapillary imagery) is not stored in this repo due to licensing and size. Use the provided scripts to fetch and prepare data.
REM 1) Create and activate a venv
py -3.11 -m venv .venv
.venv/Scripts/Activate.ps1
REM 2) Install Python dependencies
python -m pip install -U pip
python -m pip install -r requirements.txt
REM 3) Run pipeline
python -m pipeline.coreWarning
Rebuilding the pipeline require large downloads. Downloading all raw feature files can take about β24+ hours to complete. Instead, a pre-built features dataset was used to supply the model for the prediction.
Project SBAFN employs a hybrid geo implementation, employing both raster and vector geodata. Specifically through the following metrics:
| Feature Type | Indicator Name |
|---|---|
| Physical Indicators | Curb Inlets |
| Drainage Grates | |
| Vegetation Strips | |
| Open Canals | |
| Curb Height (to add) | |
| Driveway Gaps (to add) | |
| Topographic Data | Absolute Elevation |
| Relative Elevation | |
| Road Slope | |
| Geospatial Data | Road Classification |
| Road Width |
β‘οΈ Full definitions, examples, and edge cases: see docs/INDICATORS.md
- Model: YOLOv11
- Data: Manila street-view corpus (330k+ images); trained on a labeled subset for v1.0
- Output: Physical indicator count per street segment
- Model: LightGBM
- Inputs: Physical indicators, topography, road network, rainfall/reports
- Output: calibrated flood-proneness probability score [0, 1]
β‘οΈ Full model detailings: see docs/MODELS.md
Disclaimer (Pilot): Scores are model-derived estimates and may be inaccurate. Not for emergency useβverify with LGU/DRRM advisories.
Project SBAFN envisions to expand its feature to the following in future versions:
- Scale beyond Manila β Metro Manila β nationwide
- Context-based Story Map generation
- AI Assistant for natural-language queries
- Flood-aware routing (citizen view)
- Data pipeline scheduling for frequent risk update
- Code: Apache-2.0 (see
LICENSE). - Street View Imagery: Mapillary imagery is not included in this repo and is governed by Mapillaryβs Terms of Use and attribution rules. We only store metadata and our own annotations.
- Elevation data (DEM): Contains modified Copernicus DEM (GLO-30). Β© European Union, 1995β2025, produced using Copernicus data and information funded by the European Union β accessed via the AWS Open Data Registry. See Copernicus terms of use and license.
Note
This repository does not grant rights to any third-party datasets. Use of Mapillary/Copernicus materials must follow their respective licenses and terms.
- School: Manuel S. Enverga University Foundation Lucena
- Program: BS Computer Science
- Specialization: Data Science
- Email: vlancealexander@gmail.com
- School: Manuel S. Enverga University Foundation Lucena
- Program: BS Computer Science
- Specialization: Data Science
- Email: petergelodantes@gmail.com
- School: Manuel S. Enverga University Foundation Lucena
- Program: BS Computer Science
- Specialization: Data Science
- Email: rjestuesta@gmail.com
- School: Manuel S. Enverga University Foundation Lucena
- Program: BS Computer Science
- Specialization: Data Science
- Email: juanmacatangga1@gmail.com


