Update README.md
Browse files
README.md
CHANGED
|
@@ -57,7 +57,91 @@ Benchmark results on 4 datasets :
|
|
| 57 |
|
| 58 |
<hr>
|
| 59 |
|
| 60 |
-
##
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 61 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 62 |
|
| 63 |
-
|
|
|
|
| 57 |
|
| 58 |
<hr>
|
| 59 |
|
| 60 |
+
## 🚀 Getting Started
|
| 61 |
+
|
| 62 |
+
First, set up the module with [Poetry](https://python-poetry.org/).
|
| 63 |
+
|
| 64 |
+
```bash
|
| 65 |
+
# 1. Change directory
|
| 66 |
+
cd MAESTRO
|
| 67 |
+
|
| 68 |
+
# 2. Install dependencies with Poetry
|
| 69 |
+
poetry install
|
| 70 |
+
```
|
| 71 |
+
|
| 72 |
+
Then, you can start from the following minimal examples.
|
| 73 |
+
|
| 74 |
+
Intra-dataset MAESTRO on TreeSatAI-TS:
|
| 75 |
+
```bash
|
| 76 |
+
# pre-train, probe and finetune on TreeSatAI-TS
|
| 77 |
+
poetry run python main.py \
|
| 78 |
+
model.model=mae model.model_size=medium \
|
| 79 |
+
opt_pretrain.epochs=100 opt_probe.epochs=10 opt_finetune.epochs=50 \
|
| 80 |
+
datasets.name_dataset=treesatai_ts \
|
| 81 |
+
datasets.root_dir=/path/to/dataset/dir datasets.treesatai_ts.rel_dir=TreeSatAI-TS \
|
| 82 |
+
run.exp_dir=/path/to/experiments/dir run.exp_name=mae-m_treesat
|
| 83 |
+
```
|
| 84 |
+
|
| 85 |
+
Intra-dataset MAESTRO on PASTIS-HD:
|
| 86 |
+
```bash
|
| 87 |
+
# pre-train, probe and finetune on PASTIS-HD
|
| 88 |
+
poetry run python main.py \
|
| 89 |
+
model.model=mae model.model_size=medium \
|
| 90 |
+
opt_pretrain.epochs=100 opt_probe.epochs=10 opt_finetune.epochs=50 \
|
| 91 |
+
datasets.name_dataset=pastis_hd \
|
| 92 |
+
datasets.root_dir=/path/to/dataset/dir datasets.pastis_hd.rel_dir=PASTIS-HD \
|
| 93 |
+
run.exp_dir=/path/to/experiments/dir run.exp_name=mae-m_pastis
|
| 94 |
+
```
|
| 95 |
+
|
| 96 |
+
Intra-dataset MAESTRO on FLAIR-HUB:
|
| 97 |
+
```bash
|
| 98 |
+
# pre-train, probe and finetune on FLAIR-HUB
|
| 99 |
+
poetry run python main.py \
|
| 100 |
+
model.model=mae model.model_size=medium \
|
| 101 |
+
opt_pretrain.epochs=100 opt_probe.epochs=15 opt_finetune.epochs=100 \
|
| 102 |
+
datasets.name_dataset=flair \
|
| 103 |
+
datasets.root_dir=/path/to/dataset/dir datasets.flair.rel_dir=FLAIR-HUB \
|
| 104 |
+
run.exp_dir=/path/to/experiments/dir run.exp_name=mae-m_flair
|
| 105 |
+
```
|
| 106 |
+
|
| 107 |
+
Cross-dataset MAESTRO from S2-NAIP urban to TreeSatAI-TS:
|
| 108 |
+
```bash
|
| 109 |
+
# pre-train on S2-NAIP urban
|
| 110 |
+
poetry run python main.py \
|
| 111 |
+
model.model=mae model.model_size=medium \
|
| 112 |
+
opt_pretrain.epochs=15 opt_probe.epochs=0 opt_finetune.epochs=0 \
|
| 113 |
+
datasets.name_dataset=s2_naip \
|
| 114 |
+
datasets.root_dir=/path/to/dataset/dir datasets.s2_naip.rel_dir=s2-naip-urban \
|
| 115 |
+
run.exp_dir=/path/to/experiments/dir run.exp_name=mae-m_s2-naip && \
|
| 116 |
+
# probe and finetune on TreeSatAI-TS
|
| 117 |
+
poetry run python main.py \
|
| 118 |
+
model.model=mae model.model_size=medium \
|
| 119 |
+
opt_pretrain.epochs=0 opt_probe.epochs=10 opt_finetune.epochs=50 \
|
| 120 |
+
datasets.name_dataset=treesatai_ts \
|
| 121 |
+
datasets.treesatai_ts.aerial.image_size=240 datasets.treesatai_ts.aerial.patch_size.mae=16 \
|
| 122 |
+
datasets.treesatai_ts.s1_asc.name_embed=s1 datasets.treesatai_ts.s1_des.name_embed=s1 \
|
| 123 |
+
datasets.root_dir=/path/to/dataset/dir datasets.treesatai_ts.rel_dir=TreeSatAI-TS \
|
| 124 |
+
run.exp_dir=/path/to/experiments/dir run.load_name=mae-m_s2-naip run.exp_name=mae-m_s2-naip-x-treesat
|
| 125 |
+
|
| 126 |
+
```
|
| 127 |
|
| 128 |
+
<hr>
|
| 129 |
+
|
| 130 |
+
## Reference
|
| 131 |
+
|
| 132 |
+
If you use this code, please cite:
|
| 133 |
+
|
| 134 |
+
```bibtex
|
| 135 |
+
@article{labatie2025maestro,
|
| 136 |
+
title={MAESTRO: Masked AutoEncoders for Multimodal, Multitemporal, and Multispectral Earth Observation Data},
|
| 137 |
+
author={Labatie, Antoine and Vaccaro, Michael and Lardiere, Nina and Garioud, Anatol and Gonthier, Nicolas},
|
| 138 |
+
journal={arXiv preprint arXiv:2508.10894},
|
| 139 |
+
year={2025}
|
| 140 |
+
}
|
| 141 |
+
```
|
| 142 |
+
|
| 143 |
+
<hr>
|
| 144 |
+
|
| 145 |
+
## Acknowledgement
|
| 146 |
|
| 147 |
+
The experiments in the paper were conducted using HPC/AI resources from GENCI-IDRIS (allocations A0181013803, A0161013803, and AD010114597R1).
|