Skip to content

[PJDSC 2025] Explainable, street-level flood-risk mapping for Philippine cities.

License

Notifications You must be signed in to change notification settings

KubangPawis/project-sbafn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SBAFN Banner Image

Project SBAFN: Street-based Assessment for Flood-prone Neighborhoods

πŸ“– Overview

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.


SBAFN Map Snapshot

What Project SBAFN Adds

  • 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.


🏁 Get Started

The latest version of Project SBAFN can be accessed through the following link:

https://project-sbafn.vercel.app


πŸ§‘β€πŸ’» Install Locally

Prerequisites

To setup this project locally, ensure you have:

Requirement Version
Python 3.11+
Git 2.30+
Flutter 3.35+

Setup

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-sbafn

Run 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.core

Warning

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.


🎯 Methodology

Project SBAFN's Methodology Diagram

🌊 Flood-Proneness Indicators

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


πŸ€– Models

Street-View Indicators: Object Detection

  • Model: YOLOv11
  • Data: Manila street-view corpus (330k+ images); trained on a labeled subset for v1.0
  • Output: Physical indicator count per street segment

Flood-Proneness Scoring: Positive-Unlabeled (PU) Model

  • 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.


πŸ›£οΈ Roadmap

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

πŸͺͺ License

  • 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.


Team

Lance Alexander P. Ventura

  • School: Manuel S. Enverga University Foundation Lucena
  • Program: BS Computer Science
  • Specialization: Data Science
  • Email: vlancealexander@gmail.com

Peter Angelo C. Dantes

  • School: Manuel S. Enverga University Foundation Lucena
  • Program: BS Computer Science
  • Specialization: Data Science
  • Email: petergelodantes@gmail.com

Rainzle John M. Estuesta

  • School: Manuel S. Enverga University Foundation Lucena
  • Program: BS Computer Science
  • Specialization: Data Science
  • Email: rjestuesta@gmail.com

Juan Carlos R. Macatangga

  • School: Manuel S. Enverga University Foundation Lucena
  • Program: BS Computer Science
  • Specialization: Data Science
  • Email: juanmacatangga1@gmail.com