| --- |
| library_name: diffusers |
| pipeline_tag: image-to-image |
| tags: |
| - seismic-inversion |
| - impedance-inversion |
| - diffusion |
| - ddpm |
| - cldm |
| - overthrust |
| - synthetic-data |
| --- |
| |
| # SAII-CLDM Synthetic Weights |
|
|
| [](https://colab.research.google.com/github/GeoAI-INV/SAII-CLDM/blob/main/SAII_CLDM_Colab_Demo.ipynb) |
|
|
| > **Quick Start**: Click the badge above to run directly in Google Colab (no setup required). |
|
|
| Pretrained synthetic-data model weights for SAII-CLDM in Diffusers format. This |
| repository corresponds to the synthetic-data experiments in the paper. The |
| field-data model was trained separately and is not included here. |
|
|
| Full project code: [GeoAI-INV/SAII-CLDM](https://github.com/GeoAI-INV/SAII-CLDM) |
| Paper: [arXiv:2506.13529](https://arxiv.org/html/2506.13529v1) |
|
|
| ## Load From Hugging Face |
|
|
| Default pipeline: SAII-CLDM. |
|
|
| ```python |
| import torch |
| from diffusers import DiffusionPipeline |
| |
| pipe = DiffusionPipeline.from_pretrained( |
| "mally-2000/saii-cldm-synthetic", |
| custom_pipeline="mally-2000/saii-cldm-synthetic", |
| torch_dtype=torch.float32, |
| trust_remote_code=True, |
| ).to("cuda") |
| ``` |
|
|
| SAII-LDDPM is also provided as a baseline: |
|
|
| ```python |
| pipe = DiffusionPipeline.from_pretrained( |
| "mally-2000/saii-cldm-synthetic", |
| custom_pipeline="pipeline_lddpm", |
| torch_dtype=torch.float32, |
| trust_remote_code=True, |
| ).to("cuda") |
| ``` |
|
|
| The inference algorithms are implemented in `codes/pipeline.py`. The root |
| `pipeline.py`, `pipeline_cldm.py`, and `pipeline_lddpm.py` files are thin entry |
| points used by Diffusers remote loading. |
|
|
| ## Run The Bundled Demo |
|
|
| ```bash |
| git clone https://huggingface.co/mally-2000/saii-cldm-synthetic |
| cd saii-cldm-synthetic |
| pip install -r requirements.txt |
| |
| python infer.py CLDM # SAII-CLDM |
| python infer.py # SAII-LDDPM baseline |
| ``` |
|
|
| `infer.py` uses the bundled Overthrust sample and writes outputs under |
| `outputs/infer_LDDPM/` or `outputs/infer_CLDM/`. |
|
|
| Add `--eval` to run the full bundled Overthrust evaluation: |
|
|
| ```bash |
| python infer.py CLDM --eval |
| ``` |
|
|
| ## Overthrust Results |
|
|
| Impedance-domain metrics on the bundled Overthrust setting: |
|
|
| | Method | Steps | PSNR | SSIM | PCC | RRE | |
| |---|---:|---:|---:|---:|---:| |
| | SAII-LDDPM | 1000 | 33.4413 | 0.9554 | 0.9957 | 0.0324 | |
| | SAII-CLDM | 30 | 33.1312 | 0.9494 | 0.9950 | 0.0342 | |
|
|