Skip to content

eopf-geozarr — the GeoZarr driver for EOPF CPM

eopf-geozarr is the GeoZarr driver for ESA's EOPF CPM, the Core Python Modules of the Copernicus Earth Observation Processing Framework. It converts Sentinel-1, Sentinel-2 and Sentinel-3 products into cloud-optimized GeoZarr: Zarr v3 stores with multiscale pyramids, native projections and the OGC GeoZarr conventions.

Two ways to convert

For Sentinel-2, Sentinel-3 OLCI and the generic pipeline, both paths run the same code and write the same GeoZarr output.

Start from a native product (for example a .SAFE) or from any product that CPM can read. Needs Python 3.13 or later.

pip install "eopf-geozarr[cpm]"
eopf convert-geozarr S2B_MSIL2A_….SAFE out.zarr

Read the CPM driver guide.

Start from an EOPF Zarr product, for example from the EOPF Sentinel Zarr Samples Service hosted by EODC. The converter reads these products directly from their URLs. Needs Python 3.12 or later.

pip install eopf-geozarr
eopf-geozarr convert S2B_MSIL2A_….zarr out.zarr

Read the standalone converter guide.

Supported products

Mission Product CPM product:type Pipeline
Sentinel-2 MSI L1C, L2A S02MSIL1C, S02MSIL2A Sentinel-2 optimized: native r10m/r20m/r60m levels plus r120m/r360m/r720m overviews
Sentinel-3 OLCI L1 EFR, L1 ERR S03OLCEFR, S03OLCERR Sentinel-3 OLCI optimized: native swath geometry, or a regular grid
Sentinel-1 GRD — Generic pipeline with ground control points
Sentinel-1 GRD RTC (S1Tiling / Orfeo ToolBox COGs) — eopf-geozarr ingest-s1 and related commands (standalone only)
Sentinel-1 and other products CPM reads for example SLC for example S01SIWSLC Generic rechunker (CPM driver only, --generic-rechunker): rechunked, optionally sharded, no multiscales

What the output looks like

  • GeoZarr conventions: zarr_conventions declarations, geo-proj (proj:code), spatial (spatial:transform, spatial:bbox) and multiscales on every georeferenced node. See the GeoZarr mini spec.
  • Native projections: UTM and other source CRSs are kept; nothing is reprojected to Web Mercator.
  • Multiscale pyramids for fast visualization at every zoom level.
  • Source packing: reflectance stays as packed integers with CF attributes, as in the ESA products, or packed by the Zarr scale_offset + cast_value codecs on request. See Encoding.
  • Cloud storage: write to local paths or S3-compatible object storage.
  • Validation: eopf-geozarr validate checks a store against the mini spec.

Where to go next

About

eopf-geozarr is open source (Apache 2.0) and developed for the ESA EOPF Sentinel Explorer by Development Seed and EODC (Earth Observation Data Centre), which also hosts the EOPF Sentinel Zarr Samples Service. Source code and issues: EOPF-Explorer/data-model.