Synthetic scene generator for the DTE-S2GOS service. This package generates realistic Earth observation scenes by combining Digital Elevation Models (DEM), land cover data, and spectral material properties into comprehensive 3D scene descriptions.
The S2GOS Scene Generator creates synthetic scenes for Earth observation simulation by:
- Python 3.9+
- pixi (recommended) or conda/mamba
# Clone the repository
git clone <repository-url>
cd s2gos/packages/s2gos-generator
# Install development environment with pixi
pixi install -e dev
# Or install with pip in development mode
pip install -e .The S2GOS Scene Generator requires several external data sources. Follow these steps to set up your data environment:
Source: Copernicus GLO-30 DEM
Source: ESA WorldCover 2021
Included: Pre-configured material library with spectral data
Location: src/s2gos_generator/data/materials.json
examples/simple_scene_generation.py: Basic scene generation workflow
Change defaults in default.yaml to match where you have placed the DEM and land cover dataset, index and material config files are already included.
# Simple scene generation
pixi run python examples/simple_scene_generation.pyGenerated scenes follow this directory structure:
output/
└── scene_name/
├── scene_config.json # Scene configuration
├── scene_description.yaml # Eradiate scene description
├── data/ # Processed geospatial data
│ ├── dem.zarr # Digital elevation model
│ ├── landcover.zarr # Land cover classification
│ └── materials.json # Material assignments
├── meshes/ # 3D surface meshes
│ ├── surface.ply # Main surface mesh
│ ├── buffer.ply # Buffer zone mesh (if enabled)
│ └── background.ply # Background mesh (if enabled)
└── textures/ # Material textures
├── landcover_map.png # Land cover visualization
└── material_preview.png # Material assignment preview