Skip to content
プロジェクト

izzatum/FWIGAN has 37 GitHub stars and 7 forks. Star changes are not measured yet. Last checked 2026-11-14 12:40 UTC. Last push 2026-10-18.

この数値の測り方

計測したスター増加

24時間
履歴を収集中
7日間
履歴を収集中
15日間
履歴を収集中
1か月
履歴を収集中

期間ごとの純増数です。期間は重複しており、日別の値ではありません。未計測の値は空欄です。スター数は注目度の指標であり、品質の保証ではありません。

概要

FWIGAN: Full-Waveform Inversion with Deep Adversarial Learning

機械学習

FWIGAN: Full Waveform Inversion in PyTorch

FWIGAN is an open-source Python/PyTorch research toolkit for 2D acoustic full waveform inversion (FWI), seismic imaging and adversarial learning. Conventional FWI and adversarial FWIGAN share DeepWave physics, configuration, evaluation and checkpoint/resume workflows.

Installation

Use Python 3.10 and a C++ compiler. Install PyTorch before building the pinned DeepWave backend:

python3.10 -m venv .venv
source .venv/bin/activate
python -m pip install setuptools==69.5.1 wheel==0.45.1
python -m pip install torch==1.13.1+cpu --index-url https://download.pytorch.org/whl/cpu
python -m pip install numpy==1.23.5 scipy==1.10.1
MAX_JOBS=2 python -m pip install --no-build-isolation deepwave==0.0.9
python -m pip install -e '.[test,plot,notebook]'

These commands install the CPU environment. For GPU setup, see CUDA instructions.

Quick start

Run a small FWIGAN experiment from the repository root:

fwigan invert --config configs/tiny-fwigan.yaml --output-root runs --max-batches 2

The command prints the new run directory. Use that path to continue and inspect the result:

fwigan resume runs/<run-id>/checkpoint.pt --device cpu
fwigan evaluate runs/<run-id>

Use configs/tiny-fwigan-noisy.yaml for noisy FWIGAN or configs/tiny-fwi.yaml for conventional FWI. All three presets use small CPU examples. Full Marmousi presets are in configs/marmousi-*.yaml.

For interactive work, open FWIGAN.ipynb or FWIGAN_Noisy.ipynb and select the environment's Python kernel.

FWIGAN simulation results

Marmousi reference, initial model, and original/package clean and noisy FWIGAN reconstructions after 120 epochs

Full-grid Marmousi FWIGAN simulations completed 120 epochs on an NVIDIA A40. The package's velocity RMSE fell from 478.00 m/s to 412.91 m/s for clean data and 462.52 m/s for noisy data. These are single-run results, covering 120 of the original study's 401 epochs. See the comparison report for executed notebooks, metrics and limitations.

Documentation

Run python -m pytest -q to execute the tests.

Attribution and license

Originally developed by Muhammad Izzatullah, inspired by physics-informed adversarial geophysical imaging and CryoGAN. Released under the MIT license. Cite the software using CITATION.cff.