Image Classification
Transformers
Safetensors
resnet
EO
SAR
sentinel-1
wind
ocean
earth-observation
remote-sensing
satellite-imagery
synthetic-aperture-radar
foundation-model
linear-probing
oceanography
marine-forecasting
open-source
ocean-wind
Instructions to use galeio-research/OceanSAR-1-wind with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use galeio-research/OceanSAR-1-wind with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-classification", model="galeio-research/OceanSAR-1-wind") pipe("https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/hub/parrots.png")# Load model directly from transformers import AutoImageProcessor, AutoModelForImageClassification processor = AutoImageProcessor.from_pretrained("galeio-research/OceanSAR-1-wind") model = AutoModelForImageClassification.from_pretrained("galeio-research/OceanSAR-1-wind") - Notebooks
- Google Colab
- Kaggle
File size: 3,926 Bytes
954edf6 49ca720 070fc2e 49ca720 954edf6 1f8ecf8 49ca720 1f8ecf8 49ca720 1f8ecf8 ee54c15 954edf6 070fc2e 954edf6 df02927 ee54c15 954edf6 070fc2e 954edf6 1f8ecf8 070fc2e 1f8ecf8 954edf6 1f8ecf8 954edf6 1f8ecf8 954edf6 1f8ecf8 954edf6 3003f5e 954edf6 1f8ecf8 a2e3773 1f8ecf8 954edf6 1f8ecf8 954edf6 1f8ecf8 6190ea3 954edf6 1f8ecf8 070fc2e 954edf6 1f8ecf8 954edf6 1f8ecf8 070fc2e 1f8ecf8 954edf6 1f8ecf8 070fc2e 954edf6 1f8ecf8 954edf6 1f8ecf8 954edf6 1f8ecf8 954edf6 1f8ecf8 d8a3036 954edf6 1f8ecf8 954edf6 1f8ecf8 954edf6 1f8ecf8 954edf6 1f8ecf8 954edf6 1f8ecf8 070fc2e 954edf6 1f8ecf8 954edf6 070fc2e 1f8ecf8 954edf6 1f8ecf8 954edf6 1f8ecf8 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 | ---
license: apache-2.0
base_model:
- galeio-research/OceanSAR-1
pipeline_tag: image-classification
library_name: transformers
tags:
- EO
- SAR
- sentinel-1
- wind
- ocean
- earth-observation
- remote-sensing
- satellite-imagery
- synthetic-aperture-radar
- foundation-model
- linear-probing
- oceanography
- marine-forecasting
- open-source
- ocean-wind
---
# Model Card for OceanSAR-1-Wind
<img src="OceanSAR-1-logo.png" width=400>
## Model Description
OceanSAR-1-Wind is a linear probing head for wind speed prediction built on top of the OceanSAR-1 foundation model. It leverages the powerful features extracted by OceanSAR-1 to accurately predict wind speed from 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 Regression 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 collocated wind speed measurements
## Uses
### Direct Use
This model is designed for wind speed prediction from SAR imagery, particularly over ocean surfaces. It can be used for:
- Near-real-time wind speed estimation from SAR images
- Assimilation into meteorological models
- Marine weather forecasting
- Offshore operations planning
### Performance Results
The model achieves state-of-the-art linear probing performances on wind speed prediction, with performance varying by backbone architecture:
| Backbone | Wind RMSE (m/s) |
|----------|----------------|
| ResNet50 | 1.62 |
| ViT-S/16 | 1.39 |
| ViT-S/8 | 1.38 |
| ViT-B/8 | 1.37 |
## How to Use
```python
import torch
from transformers import AutoModelForImageClassification
# Load the foundation model and wind prediction head
oceansar = AutoModelForImageClassification.from_pretrained("galeio-research/OceanSAR-1-wind")
# Prepare your SAR image (should be single-channel VV polarization)
dummy_image = torch.randn(1, 1, 256, 256) # (C, H, W)
# Extract features and predict wind speed
with torch.no_grad():
wind_speed = oceansar(dummy_image).logits # Output in m/s
```
## Training Details
### Training Data
- **Dataset:** Sentinel-1 Wave Mode (WV) SAR images with collocated wind speed measurements
- **Source:** Wind speed measurements from scatterometer and buoy data
- **Preprocessing:** Same as base OceanSAR-1 model
## Evaluation
### Metrics
Wind speed prediction performance is evaluated using Root Mean Square Error (RMSE), achieving:
- 1.62 m/s RMSE with ResNet50 backbone
- 1.39 m/s RMSE with ViT-S/16 backbone
- 1.38 m/s RMSE with ViT-S/8 backbone
- 1.37 m/s RMSE with ViT-B/8 backbone
### Comparison to Other Backbones
The model outperforms existing approaches:
- MoCo: 1.80 m/s RMSE
- DeCUR: 1.93 m/s RMSE
- SoftCon ViT-S/14: 1.98 m/s RMSE
- SoftCon ViT-B/14: 1.95 m/s RMSE
## 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. |