Tushar365's picture
Upload folder using huggingface_hub
bad1fb6 verified
---
language: en
license: apache-2.0
tags:
- earth-observation
- geospatial
- flood-detection
- prithvi
- pytorch
- semantic-segmentation
- sentinel-2
datasets:
- sen1floods11
metrics:
- iou
- accuracy
- f1
model-index:
- name: Prithvi-2.0 300M - Flood Detection (Sen1Floods11)
results:
- task:
type: semantic-segmentation
name: Semantic Segmentation
dataset:
name: Sen1Floods11
type: sen1floods11
split: test
metrics:
- type: iou
value: 0.7196
name: Flood IoU
- type: f1
value: 0.8370
name: Flood F1
- type: accuracy
value: 0.9633
name: Overall Accuracy
---
# Prithvi-2.0 300M - Fine-tuned for Flood Detection (Sen1Floods11)
This model is a fine-tuned version of the **Prithvi-2.0 300M** foundation model, specialized for binary flood detection using Sentinel-2 optical imagery.
## Model Description
- **Developed by:** Tushar Thokdar
- **Model Type:** Semantic Segmentation
- **Backbone:** Prithvi-2.0 300M (ViT-Base)
- **Segmentation Head:** UPerNet
- **Input Resolution:** 224x224
- **Input Bands:** 6 (Red, Green, Blue, Narrow NIR, SWIR 1, SWIR 2)
- **Fine-tuned on:** Sen1Floods11 dataset
## Performance Metrics (Official Test Split)
Metrics derived from fine-tuning for 80 epochs on the official Sen1Floods11 test split.
### Model Metrics
| Metric | Fine-Tuned (80 Epochs) | Baseline | Gain (%) |
| -------------------- | ---------------------- | -------- | -------- |
| **Flood IoU** | 0.7196 | 0.1339 | +437.3% |
| **Flood F1** | 0.8370 | 0.2362 | +254.3% |
| **Flood Precision** | 0.8902 | 0.1638 | +443.4% |
| **Flood Recall** | 0.7897 | 0.4234 | +86.5% |
| **Mean IoU** | 0.8396 | 0.3953 | +112.3% |
| **Overall Accuracy** | 0.9633 | 0.6741 | +42.9% |
### Per-Class Metrics (Fine-Tuned)
- **No Flood IoU:** 0.9595
- **No Flood F1:** 0.9793
- **Flood IoU:** 0.7196
- **Flood F1:** 0.8370
## Training Configuration
- **Epochs:** 80
- **Batch Size:** 16
- **Learning Rate:** 5e-5
- **Loss:** Dice (0.5) + Focal (0.5)
- **Data Splits:** Official (252 Train / 89 Val / 90 Test)
## Inference Performance
- **Throughput:** 20.66 samples/sec (NVIDIA T4)
- **Inference Time (Avg):** 0.048s per sample
## Usage Instructions
To use this model with the `godel-train` library:
```python
import torch
from godel_train.models.factory import ModelFactory
# 1. Initialize model with appropriate config
model = ModelFactory.segmentation(
backbone="prithvi_eo_v2_300m",
num_classes=2,
checkpoint_path="pytorch_model.bin" # Local or downloaded file
)
model.eval()
# 2. Prepare sample input (Batch, 6 Bands, 224, 224)
# Bands: Red, Green, Blue, Narrow NIR, SWIR 1, SWIR 2
sample_input = torch.randn(1, 6, 224, 224)
# 3. Run Inference
with torch.no_grad():
prediction = model(sample_input)
# prediction shape: [1, 2, 224, 224] (Logits)
mask = torch.argmax(prediction, dim=1)
# mask shape: [1, 224, 224] (0: No Flood, 1: Flood)
```
## Data and Credits
- **Dataset:** Sen1Floods11
- **Fine-tuning:** Performed by Tushar Thokdar
- **Foundation Model:** IBM/NASA Prithvi-2.0