Repository for the paper "Robust Full Waveform Inversion: A Source Wavelet Manipulation Perspective"
The main idea of the source manipulation inversion (SMI) is to transform the observed source data into Gaussian source data, thereby improving the convexity of the Full-Waveform Inversion (FWI) objective function. The complete SMI consists of source transformation and the traditional FWI. This repository only includes the deep learning method for solving the source transformation problem. For a more detailed introduction to SMI, please refer to the paper "Robust Full Waveform Inversion: A Source Wavelet Manipulation Perspective". The deep learning method for solving the source transformation problem consists of 3 steps:
You can generate training data in any way you prefer. We utilized the Python package Devito to generate the training data.
train.py is a framework for training process. Before using it, you need to make some modifications. First, you need to load your own training data in the train.py. Additionally, you can also adjust some hyperparameters.
test.py is a framework for testing process. You need to load your own testing data in the test.py.
-
The source_transformation.py file is the neural network module for source_transformation.
-
The parameter.py file contains data address and hyperparameters.
-
The wavenet2d-example.ipynb file shows a test example. To run this code successfully, you need download the well-trained network from smi-cnn and save it to
checkpoints
.
Initial model | Ground truth |
---|---|
Conventional FWI | SMI |
---|---|
BibTex
@article{bao2023robust,
title={Robust Full Waveform Inversion: A Source Wavelet Manipulation Perspective},
author={Bao, Chenglong and Qiu, Lingyun and Wang, Rongqian},
journal={SIAM Journal on Scientific Computing},
volume={45},
number={6},
pages={B753--B775},
year={2023},
publisher={SIAM}
}