Moteur d'intelligence terrestre
Création de visualisations physiquement cohérentes des événements climatiques avec des modèles de vision générative approfondie
Il s'agit du référentiel officiel du Earth Intelligence Engine. Ce code entraîne et évalue un modèle de vision générative profonde (GAN) pour synthétiser des images physiquement cohérentes des futures inondations. Le code entraîne également un modèle de segmentation des inondations sur l'imagerie aérienne.
Commencer
Installation
git clone --recursive [email protected]:blutjens/earth-eie.git
cd earth-eie
conda env create -f conda.yaml
conda activate eie_vision
pip install -e .
Nous vous recommandons de configurer votre environnement avec conda. Si vous n'êtes pas familier avec conda, lisez cette introduction.
Pourquoi git clone --recursive
? Parce que nous avons au moins un sous-module git pour héberger des modèles. Cela signifie que vous devrez exécuter git submodule update
lors de la mise à jour de votre télécommande.
Ensemble de données
Télécharger depuis huggingface
Notre ensemble de données complet, eie-earth-intelligence-engine, est disponible sur huggingface. Pour télécharger l'ensemble de données via git lfs, veuillez suivre les instructions dans l'ensemble de données README.md
Reproduire les principaux résultats
Modèle de traduction image à image (im2im) d'inondation de trains
- Pour le modèle principal, suivez le carnet sur le lien. Ce cahier contient les commandes de terminal pour entraîner le modèle Flood im2im sur xbd2xbd. Après la formation, le modèle est utilisé pour créer des prédictions sur l'ensemble de test et le modèle de segmentation d'inondation est utilisé pour créer des masques d'inondation de l'imagerie générée.
- Surveillez la formation en ouvrant index.html
Recréer les modèles de visualisation des inondations de base
- Le VAEGAN peut être recyclé avec lien.
- La ligne de base générée manuellement peut être créée avec [link]("sandbox/Color Baseline/Segment Flood_color.ipynb").
Évaluer le modèle im2im
- Évaluez les images avec eval_main() comme appelé dansestimate_notebook.ipynb
Facultatif : reproduire les résultats auxiliaires
Ré-entraîner le modèle de segmentation des inondations sur xbd-seg et créer des segmentations avant et après les inondations
- Entraînez-vous, évaluez le modèle de segmentation des inondations en suivant notre autre référentiel eie-flood-seg
- Copiez et collez les poids du modèle des points de contrôle/temp/ dans pré-entraîné/
Former les expériences de généralisation pour naip2xbd et naip2hou
- Suivez le cahier Train_conditional_binary_scratch_naip.ipynb
Extensions aux images forestières, forestières-gtm et arctiques
- Entraîner un modèle de segmentation de la glace de mer arctique avec arctic-sea-ice-seg
- Le code permettant de générer des visualisations de reboisement n'est actuellement pas disponible.
Re-télécharger et traiter les données brutes
- xbd2xbd : exécutez les étapes dans notre référentiel de prétraitement eie pour télécharger et traiter l'ensemble de données. La première étape consistera à télécharger les images brutes d'inondation xBD à partir de xview en suivant le script à l'adresse : eie-preprocessing/scripts/download_xBD_geotiles.sh.
- xbd-seg : données d'étiquetage manuel dans xbd2xbd
- {naip2xbd, naip2hou, hou-seg} : suivez les instructions dans le document.
- arctique : suivez les instructions dans full-pipeline/pipeline.sh dans le référentiel arctic-sea-ice
- {forest, forest-gtm} : suivez les instructions contenues dans le document.
Visualisation
- Visualisez les images générées sous la forme d'une grande carte géospatiale avec align_slosh_w_naip.ipynb -> "Créer un grand tif à partir des images générées"
Structure des dossiers
- archive: legacy code and documents
- configs: hyperparameters for the tested models
- data: placeholder for raw, interim, and processed data
- docs: documentation, references, and figures
- pretrained: placeholder for model checkpoints
- results: generated imagery
- sandbox: prototyping scripts and notebooks
- scripts: important scripts and notebooks
- src: model source code, forked from existing git repositories
- temp: temporary results while training the models
Référence
@article{lutjens2024eie,
author = {Lütjens, Björn and Leshchinskiy, Brandon and Boulais, Océane and Chishtie, Farrukh and Díaz-Rodríguez, Natalia and Masson-Forsythe, Margaux and Mata-Payerro, Ana and Requena-Mesa, Christian and Sankaranarayanan, Aruna and Piña, Aaron and Gal, Yarin and Raïssi, Chedy and Lavin, Alexander and Newman, Dava},
journal={IEEE Transactions on Geoscience and Remote Sensing},
title={Generating Physically-Consistent Satellite Imagery for Climate Visualizations},
year = {2024},
doi={10.1109/TGRS.2024.3493763}
}