OneOcean

Platform Guide

Ocean data for marine robotics.

Combine bathymetry and ocean currents to build environments, run benchmark tasks, and explore ocean conditions in the browser.

Overview

From ocean data to benchmark tasks

Acquire the ocean dataset, choose a variant, and export currents for the core or underwater-scene backend.

01

Acquire the data

Start from the released dataset or rebuild a custom crop from Copernicus Marine currents and GEBCO bathymetry.

02

Choose a dataset variant

Choose tiny, scene, or public variants depending on whether the target is debugging, browser preview, task deployment, or public release.

03

Run benchmark tasks

Export currents from the selected dataset and run tasks with the core or OceanGym backend.

Data Subset Example

Web subset demo

Explore a sample of the public dataset by time, depth, region, and ocean variable.

Controls

Filter the subset before rendering the field view.

Latitude range
Longitude range
Vector density

The explorer averages the selected time interval and clips the view to the selected geographic range.

Subset field map

Bathymetry is rendered as the base layer. Arrow direction shows current direction, and arrow color encodes the selected variable.

vector color: current speed

Resolution

Dataset resolution

The scene variant combines currents sampled on a 0.083° source grid with GEBCO bathymetry. Its export grid, depth levels, and time sampling are listed below.

Scene dataset resolution

Horizontal step (scene export) ~0.00418° (about 460 m); meter-level local grids available through interpolation
Spatial grid (scene export) 240 × 240
Depth levels 26 by default, supports meter-level custom depth sampling for local exports
Temporal sampling Daily by default, supports hourly products where available

Currents are interpolated onto the scene export grid. Finer grids and custom depth samples are generated by interpolation for rendering and simulation.

Pipeline

Data pipeline

The pipeline aligns currents, bathymetry, optional tides, and masks into one canonical environment file, then exports variants for benchmarking, scene deployment, and lightweight web delivery.

01

Ocean fields

Copernicus Marine variables such as currents, SSH, salinity, and temperature.

02

Bathymetry

GEBCO GeoTIFF crops provide terrain structure and masking for the requested region.

03

Merge and align

The pipeline interpolates and aligns the fields, then writes the combined NetCDF dataset.

04

Export and reuse

Produce dataset variants and current exports for both backends.

Customize region, time, and depth

Use geographic bounds plus start/end timestamps to define the slice. Depth can be passed as a range or as an explicit list.

python Data_pipeline/run_pipeline.py --overwrite \
  --lat-min 32.0 --lat-max 33.0 --lon-min -66.5 --lon-max -65.5 \
  --start 2024-06-01T00:00:00 --end 2024-06-30T00:00:00 \
  --depths "0,10,20,50,100,200" \
  --include-tides

Surface tide components are extended across depth using a configurable decay profile.

Export variants for different uses

Variants are exported with a consistent schema and manifest.

python Data_pipeline/generate_variants.py \
  --which tiny,scene,public \
  --overwrite
  • tiny: fast debugging and small browser-safe exports
  • scene: dataset variant for underwater-scene tasks
  • public: broader temporal coverage with lighter spatial resolution
Credentials: Copernicus Marine access uses COPERNICUSMARINE_USERNAME and COPERNICUSMARINE_PASSWORD. GEBCO GeoTIFF files must be available before running the pipeline.

Data Sources

Data sources

OneOcean merges multiple open ocean data sources. The list below shows the source type, the primary dataset, and the responsible organization.

Source type
Dataset
Organization
Bathymetry
GEBCO Compilation Group under IHO and IOC-UNESCO
Ocean physics
Copernicus Marine Service, implemented by Mercator Ocean International for the European Union
Tides
Oregon State University (TPXO / OTIS development)
Marine pollution
NOAA Marine Debris Program
Marine biodiversity
IOC-UNESCO / OBIS Secretariat
CORA (China Ocean ReAnalysis) / CGOFD track
National Marine Data and Information Service (NMDIS), Ministry of Natural Resources, China

Export manifests record the source product, version, and geographic extent.

Execution

Two backends with shared ocean data

The core backend runs large task and difficulty sweeps. The OceanGym backend runs tasks in packaged underwater scenes. Both use currents exported from the same ocean dataset.

Core benchmark backend (benchmark_core)

Export a drift cache from combined_environment.nc, then run task and difficulty sweeps with shared metrics.

python -m benchmark_core.cli.export_drift_cache \
  --nc Data_pipeline/Data/Combined/variants/scene/combined/combined_environment.nc \
  --u-var utotal --v-var vtotal --time-index 0 --depth-index 0 \
  --out runs/benchmark_core/_cache/drift_scene_t0_d0.npz

python -m benchmark_core.cli.run_matrix \
  --drift-npz runs/benchmark_core/_cache/drift_scene_t0_d0.npz \
  --preset paper_v1 \
  --dynamics-model 6dof \
  --constraint-mode hard \
  --bathy-mode hard \
  --validate

OceanGym scene backend (tracks/oceangym_benchmark)

Export a time series of ocean currents and inject them into the underwater-scene task suite.

python tracks/oceangym_benchmark/export_current_series_npz.py \
  --dataset Data_pipeline/Data/Combined/combined_environment.nc \
  --out_npz runs/_cache/data_grounding/currents/cmems_center_uovo.npz

python tracks/oceangym_benchmark/run_task_suite.py \
  --preset ocean_worlds_camera \
  --episodes 3 \
  --current_npz runs/_cache/data_grounding/currents/cmems_center_uovo.npz

This backend assumes a working HoloOcean client plus packaged worlds installed locally.

Core benchmark runs

Run large task and difficulty sweeps with the core backend.

Underwater-scene runs

Run tasks in packaged underwater scenes with the OceanGym backend.

Reuse

Publish artifacts others can rerun

A reproducible release includes the ocean dataset, export settings, run configurations, results, and task demonstrations.

Recommended artifact bundle

  • combined_environment.nc or the specific exported variant used in the study
  • variants/<tier>/variant.json with the geographic extent and export settings
  • runs/benchmark_core/**/results_manifest.json
  • runs/oceangym_benchmark/**/media/ screenshots, GIFs, and MP4s