Buckets:
About the ESAWAAI Legacy dataset
The Explainable SAR measurements for Wind Assessment with Artificial Intelligence (ESAWAAI) project, funded by the European Space Agency (ESA) PhiLab, is dedicated to advancing the retrieval of sea surface wind fields using a diverse range of observables derived from multi-polarization Single-Look Complex (SLC) Synthetic Aperture Radar (SAR) data, with a particular focus on Sentinel-1 sensors.
The project combines advanced SAR processing techniques to build a comprehensive legacy dataset supporting both data-driven and physics-informed Deep Learning (DL) models for wind and wave estimation.
This dataset incorporates key SAR observables and focuses on the NORA3 and CERRA domain. It aggregates SLC L1B SAR data processed within the XSAR SLC processor devoloped within the framework of SARWAVES project, along with operational L2 OCN SAR variables and Numerical Weather Prediction outputs from the NORA3 and CERRA models.
Only Sentinel-1 Interferometric Wide (IW) mode data in VV polarization are considered.
The dataset preserves the structure of the original Level-1 SLC product: each subswath (IW1, IW2, IW3) is processed independently. Within each subswath, data is segmented by burst, and each burst is further divided into smaller tiles to support not only wind retrieval but also wave-related analyses.
Two spatial grids are defined to organize the data:
- Intraburst grid: Tiles extracted within individual bursts.
- Interburst grid: Tiles representing the overlap areas between successive bursts.
This structured tiling approach ensures flexibility and consistency for downstream processing tasks, such as machine learning model training and evaluation.
Developed by a consortium of leading institutions—CLS (France), IFREMER (France), DTU (Technical University of Denmark), and UPB (University Politechnica of Bucharest, Romania)—the ESAWAAI project also aims to deepen scientific understanding of SAR observables across varying metocean and geometric conditions. Ultimately, this work supports a range of applications in meteorology, climate science, and wind energy resource assessment.
Content and Example use
The dataset is organized chronologically by date (YYYY/MM/DD), following standard Sentinel-1 SAFE directory naming conventions. Each product folder contains NetCDF files processed independently for each subswath (iw1, iw2, iw3).
Example structure:
.
├── 2019
│ ├── 06
│ │ ├── 26
│ │ │ ├── S1A_IW_ESAWAAI__1SDV_20190626T050245_20190626T050312_027846_0324C8_2FD1_A21.SAFE
│ │ │ │ ├── s1a-iw1-esawaai-1sdv-20190626t050246-20190626t050311-027846-0324c8-a21.nc
│ │ │ │ ├── s1a-iw2-esawaai-1sdv-20190626t050247-20190626t050312-027846-0324c8-a21.nc
│ │ │ │ └── s1a-iw3-esawaai-1sdv-20190626t050245-20190626t050311-027846-0324c8-a21.nc
Within each subswath, two spatial grids (i.e group) are defined to organize the data : intraburst and interburst.
Documentation
For a comprehensive technical description, variable definitions, and detailed specifications of the dataset, please refer to the documentation PDF Technical note.
Data Reader
To streamline data discovery and eliminate the need to manually track complex .SAFE directory structures or NetCDF file hashes across the 300 GB bucket, a CDSE-inspired query utility is provided below.
This helper uses huggingface_hub and xarray to dynamically search the bucket by date range and subswath, streaming or lazily loading the requested intraburst or interburst groups directly into a structured Python dictionary without requiring local pre-downloads.
Python Utility (esawaai_loader.py)
from datetime import datetime, timedelta
from typing import Dict
from huggingface_hub import HfFileSystem
import xarray as xr
def load_esawaai_by_timerange(
start_date: str,
end_date: str,
subswath: str = "iw1",
group: str = "intraburst"
) -> Dict[str, xr.Dataset]:
"""
Searches and loads ESAWAAI NetCDF datasets directly from the bucket
on-demand based on a specified time range, mirroring Copernicus Data
Space Ecosystem (CDSE) workflows.
Args:
start_date (str): Start date in 'YYYY-MM-DD' format (e.g., '2019-06-26').
end_date (str): End date in 'YYYY-MM-DD' format (e.g., '2019-06-28').
subswath (str): Target subswath ('iw1', 'iw2', or 'iw3').
group (str): NetCDF internal group ('intraburst' or 'interburst').
Returns:
Dict[str, xr.Dataset]: A dictionary mapping bucket file paths to their
respective lazy-loaded xarray Datasets.
"""
fs = HfFileSystem()
bucket_path = "buckets/ESA-philab/ESAWAAI_legacy_dataset"
start = datetime.strptime(start_date, "%Y-%m-%d")
end = datetime.strptime(end_date, "%Y-%m-%d")
delta = timedelta(days=1)
datasets_dict = {}
current = start
print(f"Querying ESAWAAI bucket for date range {start_date} to {end_date} [Subswath: {subswath.upper()}]...")
while current <= end:
year = current.strftime("%Y")
month = current.strftime("%m")
day = current.strftime("%d")
pattern = f"{bucket_path}/{year}/{month}/{day}/**/*.SAFE/*-{subswath}-*.nc"
matching_files = fs.glob(pattern)
for file_path in matching_files:
hf_url = f"hf://{file_path}"
print(f" -> Accessing stream: {file_path}")
try:
ds = xr.open_dataset(hf_url, group=group)
datasets_dict[file_path] = ds
except Exception as e:
print(f" Warning: Failed to load {file_path}. Reason: {e}")
current += delta
print(f"\nSuccessfully loaded {len(datasets_dict)} dataset(s).")
return datasets_dict
Quick Starter
The following example demonstrates how to import the loader utility, query a specific temporal window, and inspect the retrieved xarray.Dataset objects.
from esawaai_loader import load_esawaai_by_timerange
# 1. Load intraburst tiles for a specific date range and subswath
data_dict = load_esawaai_by_timerange(
start_date="2019-06-26",
end_date="2019-06-26",
subswath="iw1",
group="intraburst",
)
# 2. Iterate through the dictionary and inspect the loaded datasets
for file_path, ds in data_dict.items():
print(f"\nSuccessfully loaded dataset: {file_path}")
# Display dataset metadata and coordinate dimensions
print(ds)
# Break after the first file for quick demonstration
break
Cite
Benchaabane, A., Toft, L. D. D. S., Ristea, N.-C., Dimitriadou, K., Husson, R., Hasager, C. B., Anghel, A., Longépé, N., Mouche, A., Grouazel, A., & Datcu, M. (2026). Explainable SAR measurements for Wind Assessment with Artificial Intelligence (ESAWAAI).
License
This dataset and its associated documentation are released under the terms of the Creative Commons Attribution 4.0 International (CC-BY 4.0) license.
You are free to:
- Share — copy and redistribute the material in any medium or format.
- Adapt — remix, transform, and build upon the material for any purpose, even commercially.
Under the following terms:
- Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
Copyright
2026, Roberto Del Prete
Powered by Φ-lab, European Space Agency (ESA) 🛰️
- Total size
- 371 GB
- Files
- 232,335
- Last updated
- Sep 30
- Pre-warmed CDN
- US EU US EU