
# Model Card for OceanSAR-1-TenGeoP

## Model Details

<img src="OceanSAR-1-logo.png" width=400>

### Model Description

OceanSAR-1-TenGeoP is a linear probing head for classifying ocean geophysical phenomena, built on top of the OceanSAR-1 foundation model. It leverages the powerful features extracted by OceanSAR-1 to accurately identify 10 different geophysical phenomena in Synthetic Aperture Radar (SAR) imagery.

- **Developed by:** Thomas Kerdreux, Alexandre Tuel @ [Galeio](http://galeio.fr)
- **Deployed by:** Antoine Audras @ [Galeio](http://galeio.fr)
- **Model type:** Linear Classification Head on Vision Foundation Model
- **License:** Apache License 2.0
- **Base model:** OceanSAR-1 (ResNet50/ViT variants)
- **Training data:** Sentinel-1 Wave Mode (WV) SAR images with labeled geophysical phenomena

## Uses

### Direct Use

This model is designed for automated classification of geophysical phenomena in SAR imagery over ocean surfaces. It can be used for:

- Rapid identification of ocean features in SAR data
- Monitoring of maritime environments
- Automated analysis of large SAR datasets
- Ocean science and research applications

### Performance Results

The model achieves state-of-the-art performance on TenGeoP classification, with performance varying by backbone architecture:

| Backbone | TenGeoP Accuracy (%) |
|----------|---------------------|
| ResNet50 | 75.5 |
| ViT-S/16 | 78.6 |
| ViT-S/8  | 82.1 |
| ViT-B/8  | 83.6 |

## How to Use

```python
import torch
from transformers import AutoModelForImageClassification

# Load the foundation model and classification head
oceansar = AutoModelForImageClassification.from_pretrained("galeio-research/OceanSAR-1-tengeop")

# Prepare your SAR image (should be single-channel VV polarization)
dummy_image = torch.randn(1, 1, 256, 256)  # (B, C, H, W)

# Extract features and classify geophysical phenomena
with torch.no_grad():
    outputs = oceansar(dummy_image)
    predicted_class = torch.argmax(outputs.logits, dim=1).item()
```

## Training Details

### Training Data

- **Dataset:** Sentinel-1 Wave Mode (WV) SAR images with labeled geophysical phenomena
- **Labels:** 10 classes of ocean geophysical phenomena
- **Size:** Balanced dataset across all classes
- **Preprocessing:** Same as base OceanSAR-1 model

## Evaluation

### Metrics

TenGeoP classification performance is evaluated using accuracy (%), achieving:
- 75.5% accuracy with ResNet50 backbone
- 78.6% accuracy with ViT-S/16 backbone
- 82.1% accuracy with ViT-S/8 backbone
- 83.6% accuracy with ViT-B/8 backbone

### Comparison to Other Backbones

The model outperforms existing approaches:
- CROMA (ViT-B/8): 65.4% accuracy
- MoCo (ResNet50): 60.9% accuracy
- DeCUR (ResNet50): 58.3% accuracy
- DOFA (ViT-B/16): 58.4% accuracy
- DOFA (ViT-L/16): 63.4% accuracy
- SoftCon (ViT-S/14): 73.2% accuracy
- SoftCon (ViT-B/14): 74.8% accuracy

## Technical Specifications

### Hardware Requirements

- Same as base model
- Minimal additional computational cost for inference

### Dependencies

- PyTorch >= 1.8.0
- Transformers >= 4.30.0
- Base OceanSAR-1 model

### Input Specifications

- Same as base OceanSAR-1 model
- Single channel (VV polarization) SAR images
- 256x256 pixel resolution

## Citation

**BibTeX:**
```bibtex
@article{kerdreux2025efficientselfsupervisedlearningearth,
  title={Efficient Self-Supervised Learning for Earth Observation via Dynamic Dataset Curation},
  author={Kerdreux, Thomas and Tuel, Alexandre and Febvre, Quentin and Mouche, Alexis and Chapron, Bertrand},
  journal={arXiv preprint arXiv:2504.06962},
  year={2025},
  eprint={2504.06962},
  archivePrefix={arXiv},
  primaryClass={cs.CV},
  url={https://arxiv.org/abs/2504.06962},
}
```

## Acknowledgements

This work was granted access to the HPC resources of IDRIS and TGCC under the allocation 2025-[A0171015666] made by GENCI.
label_0 label_1 label_2 label_3 label_4 label_5 label_6 label_7 label_8 label_9