Skip to main content

ImpactMesh package for mesh-based impact analysis

Project description

arXiv HuggingFace IBMblog

ImpactMesh

ImpactMesh is a large-scale multimodal, multitemporal dataset for flood and wildfire mapping, released by IBM, DLR, and the ESA Φ-lab. It combines Sentinel-1 SAR, Sentinel-2 optical imagery, and Copernicus DEM with high-quality annotations from Copernicus EMS. The dataset covers over 400 events globally with four temporal observations per event.

Dataset

Please find the wildfire subset at https://huggingface.co/datasets/ibm-esa-geospatial/ImpactMesh-Fire and the flood samples at https://huggingface.co/datasets/ibm-esa-geospatial/ImpactMesh-FLood. The following map gives an overview of events present in ImpactMesh:

ImpactMesh events world map

This repository provides code to build the pytorch dataloader or directly fine-tune a model with TerraTorch.

Setup

Quick start from pypi:

pip install impactmesh

Alternatively create a new environment and install TerraTorch and the package from source:

python -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install terratorch==1.2.1
pip install zarr==2.18.0 numcodecs==0.15.1
pip install -e .

ImpactMesh uses Zarr Version 2.

Fine-tuning

Run training using on of the configs provided in configs/.

terratorch fit --config configs/terramind_v1_tiny_impactmesh_fire.yaml

Run the evaluation on the test split.

terratorch test --config configs/terramind_v1_tiny_impactmesh_fire.yaml --ckpt output/terramind_tiny_impactmesh_fire/1e-4/best_val_loss.ckpt

Run prediction with the following commands. The predict_data_root is expected to have modalities as subfolders with tif/zarr.zip files similar to ImpactMesh. Add --predict_split <split>.txt with sample prefixes if you only want to predict a subset in predict_data_root. Note that terratorch predict requires DEM input, use run_inference.py as an alternative if you don't use DEM inputs.

terratorch predict -c configs/terramind_v1_tiny_impactmesh_fire.yaml --ckpt path/to/ckeckpoint.pt --predict_output_dir output/impactmesh_fire_predictions --data.init_args.predict_data_root data/fire_inputs

# TerraTorch automatically uses a tiled inference. It might still lead to OOM errors. In that case, you can use:
python impactmesh/run_inference.py -c configs/terramind_v1_tiny_impactmesh_fire.yaml --ckpt path/to/ckeckpoint.pt --output_dir output/impactmesh_fire_predictions

Citation

Our technical report is released soon!

Acknowledgement

ImpactMesh was developed as part of the FAST‑EO project funded by the European Space Agency Φ‑Lab (contract #4000143501/23/I‑DT).

Sentinel-2 Level-2A data were downloaded from Microsoft Planetary Computer and are provided under Copernicus Sentinel license conditions (© European Union 2015–2025, ESA) (https://planetarycomputer.microsoft.com/dataset/sentinel-2-l2a).

Sentinel-1 Radiometrically Terrain Corrected (RTC) SAR data were retrieved from Microsoft Planetary Computer (calibrated to GRD and terrain-corrected using PlanetDEM) under Copernicus Sentinel license terms (© European Union 2014–2025) (https://planetarycomputer.microsoft.com/dataset/sentinel-1-rtc).

The DEM data is produced using Copernicus WorldDEM-30 © DLR e.V. 2010-2014 and © Airbus Defence and Space GmbH 2014-2018 provided under COPERNICUS by the European Union and ESA; all rights reserved.

Annotations were sourced from the Copernicus Emergency Management Service (© European Union, 2012–2025), available at https://emergency.copernicus.eu/.

License

The code and models are release under Apache 2.0. The dataset is released under CC-BY 4.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

impactmesh-0.1.2.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

impactmesh-0.1.2-py3-none-any.whl (16.5 kB view details)

Uploaded Python 3

File details

Details for the file impactmesh-0.1.2.tar.gz.

File metadata

  • Download URL: impactmesh-0.1.2.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for impactmesh-0.1.2.tar.gz
Algorithm Hash digest
SHA256 3d12a6dfe5eae30ff428b576cd8487e13a78a0e50574ddea06892c9bd53374e3
MD5 3c3fa4a19a7d51f03ffe11d08bb13f20
BLAKE2b-256 cfd7f8b0cee6645fc74180fe361af2b5fb5fe804f31a96b8d266ee8ea1946893

See more details on using hashes here.

File details

Details for the file impactmesh-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: impactmesh-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 16.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for impactmesh-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9d5acb485c17f87c7d1e1a98cb0386855c14b7d8d82eac5b3d4f7c0208157212
MD5 52a54071b0b81114ed16fad245849788
BLAKE2b-256 aaba76e11c7ca26787943e7e598546f13e6b064c84133189252c243bb2fc150d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page