By Liuqing Yang, Shoudong Wang, Xiaohong Chen, Omar M. Saad, Wei Chen, Yapo Abolé Serge Innocent Oboué, Yangkang Chen
This repository contains an original model (DDUL) described in the paper "Unsupervised 3-D Random Noise Attenuation Using Deep Skip Autoencoder" (https://www.researchgate.net/publication/353767378_Unsupervised_3-D_Random_Noise_Attenuation_Using_Deep_Skip_Autoencoder), and includes a test dataset. DDUL is inspired by "A fully-unsupervised and highly-generalized deep learning approach for random noise suppression" (https://www.researchgate.net/publication/347507607_A_fully-unsupervised_and_highly-generalized_deep_learning_approach_for_random_noise_suppression).
If you use this model in your research, please cite:
@article{yang2021,
title={Unsupervised 3-D Random Noise Attenuation Using Deep Skip Autoencoder},
author={Yang, Liuqing and Wang, Shoudong and Chen, Xiaohong and Saad, Omar M and Chen, Wei and Oboué, Yapo Abolé Serge Innocent and Chen, Yangkang},
journal={IEEE Transactions on Geoscience and Remote Sensing},
year={2021},
volume={60},
pages = {doi: 10.1109/TGRS.2021.3100455},
publisher={IEEE}
}
Effective random noise attenuation is critical for subsequent processing of seismic data, such as velocity analysis, migration, and inversion. Thus, the removal of seismic random noise with an uncertainty level is meaningful. Attenuating 3-D random noise in a supervised way based on deep learning (DL) is challenging because clean labels are difficult to obtain. Therefore, it is necessary to develop an adaptive unsupervised-based method for random noise attenuation. In this article, we propose a deep-denoising unsupervised learning (DDUL) network to attenuate random noise in 2-D/3-D seismic data. A patching technique is used to split 2-D/3-D seismic data into several patches to be fed into the network, which helps to expand the number of samples for training. We use the fully symmetrical structure of the autoencoder to construct the network. In each corresponding encoder and decoder layer, skip connections are added to enhance the learning of seismic data features. We construct three blocks to extract waveform features in seismic data, i.e., encoder, decoder, and skip blocks. Among them, the skip is connected between the encoder and decoder blocks of each hidden layer. The use of multiple blocks not only improves the network’s ability to extract seismic data features but also solves the problem of excessive training parameters caused by hidden layer stacking. Five 2-D/3-D synthetic and field seismic datasets are used to test the denoising performance of our proposed method. The denoising results demonstrate that our proposed method has good signal-preserving and noise attenuation capabilities in real-world applications.
The use of DDUL:
-
For 2D seismic data: Run the DDUL_2Dsyn_patch.ipynb.
-
For 3D seismic data:
- First, run "Step1_Patching_3D.m" in Matlab.
- Second, run "DDUL_3Dsyn_patch.ipynb" in Python.
These files include the method for calculating the local similarity map. Please pip install pyortho.
- Tensforflow-gpu 1.9.0
If the Tensorflow version is 2.*, please add the following codes:
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior() - Keras 2.2.5
Note
In Matlab, you should choose 0 or 1 to select synthetic or field data. In Python, you should choose the Input_patches of 2D/3D synthetic or field data. It is important that the yc_patch3d.m comes from "Fast dictionary learning for noise attenuation of multidimensional seismic data" and is introduced in detail in (https://github.com/chenyk1990/reproducible_research).