CoolFace
Datasetpublic

Lemoni/ERA5_SR

This dataset contains modified Copernicus Climate Change Service information [2026]. Source: ERA5 reanalysis data from the Copernicus Climate Data Store (CDS/ECMWF). Licensed under CC BY 4.0, consistent with the source dataset terms. Dataset Description ERA5 reanalysis data prepared for 4x super-resolution training. The dataset provides paired low-resolution (LR) and high-resolution (HR) atmospheric fields covering 2010–2020. Variables Name Description Units… See the full description on the dataset page: https://huggingface.co/datasets/Lemoni/ERA5_SR.

sourceHugging Facecc-by-4.0updated 6mo agoView on Hugging Face
0likes645downloads
Dataset Card

This dataset contains modified Copernicus Climate Change Service information [2026].

Source: ERA5 reanalysis data from the Copernicus Climate Data Store (CDS/ECMWF).

Licensed under CC BY 4.0, consistent with the source dataset terms.

Dataset Description

ERA5 reanalysis data prepared for 4x super-resolution training. The dataset provides paired low-resolution (LR) and high-resolution (HR) atmospheric fields covering 2010–2020.

Variables

NameDescriptionUnits
u1010 metre U wind componentm s⁻¹
v1010 metre V wind componentm s⁻¹
t2m2 metre temperatureK
mslMean sea level pressurePa

Files

FileResolutionShape (time, lat, lon)Description
hr.zarr.zip0.25° (~28 km)(16072, 720, 1440)High-resolution target (zarr, ZipStore)
lr.zarr.zip1.0° (~111 km)(16072, 180, 360)Low-resolution input (zarr, ZipStore)
era5_dataset.pyDataset class + normalization utilities
train_stats.jsonPer-variable min/max statistics (training split)

Temporal Coverage

  • Period: 2010-01-01 00:00 UTC – 2020-12-31 18:00 UTC
  • Interval: 6-hourly
  • Total timesteps: 16,072
SplitPeriodSamples
train2010–201813,148
valid20191,460
test20201,464

Super-Resolution Setup

  • Scale factor: 4×
  • LR resolution: 1.0° × 1.0° (180 × 360 grid)
  • HR resolution: 0.25° × 0.25° (720 × 1440 grid, last row at −90° removed for exact 4× divisibility)
  • LR was generated from HR using MATLAB-style bicubic downsampling with antialiasing (equivalent to imresize(HR, 1/4) default settings).

Normalization

train_stats.json contains per-variable min/max computed over the training split (2010–2018). Use it for min-max normalization to [0, 1] before training or evaluation.

python
from era5_dataset import load_stats, normalize, unnormalize
from era5_dataset import normalize_batch, unnormalize_batch

stats = load_stats()  # loads train_stats.json alongside this file

# numpy array or scalar
x_norm = normalize(x, 'msl', stats)        # raw → [0, 1]
x_raw  = unnormalize(x_norm, 'msl', stats) # [0, 1] → raw

# torch tensor (C, H, W) or (B, C, H, W)
t_norm = normalize_batch(tensor, stats)
t_raw  = unnormalize_batch(t_norm, stats)

Training-set statistics:

Variableminmax
u10−39.52 m/s36.27 m/s
v10−39.15 m/s61.36 m/s
t2m190.91 K326.34 K
msl91,093.69 Pa107,707.50 Pa

Usage

python
from era5_dataset import ERA5SRDataset
from torch.utils.data import DataLoader

# normalize=True (default): returns torch.FloatTensor in [0, 1]
ds = ERA5SRDataset(data_dir='/path/to/data', split='train')
loader = DataLoader(ds, batch_size=4, shuffle=True, num_workers=4)

for hr, lr in loader:
    # hr: (B, 4, 720, 1440), lr: (B, 4, 180, 360) — normalized to [0, 1]
    ...

# normalize=False: returns raw np.ndarray in physical units
ds_raw = ERA5SRDataset(data_dir='/path/to/data', split='train', normalize=False)
hr, lr = ds_raw[0]  # np.ndarray, raw physical values
Note: train_stats.json must be present in data_dir when normalize=True.