This repository include code and some supplemental files for paper: Deep Convolutional Neural Network for Automatic Fault Recognition from 3D Seismic Dataset
Run train.ipynb to train the DCNN models.
Model_zoo contain four different DCNN models included in this paper.
functions.py include some extra functions.
pytorchtools.py is used for early stopping.
Best checkpoints for each model are stored in the checkpoints folder.
savePredNpy_thebetest.ipynb is used to merge and save model predictions.
py-bsds500 is a modified version of repository: https://github.com/Britefury/py-bsds500 This folder is a python version evaluation method of the standard BSDS 500 edge detection dataset.
requirement folder list all required packages
augmentation_examples.ipynb can used to generate different augmentation examples, they would help you understand the impact of data augmentation
Comparative results with two related works (Wu et al's faultSeg3D model and Cunha et al's Transfer learning model) are also made aviable to illustrated how we compare our work with their works.
Comprison with Wu et al's faultSeg3D model is stored in faultSeg folder
we modified prediction.ipynb, predNew.ipynb, train.py
we added prepare_3Dcube_Thebe_Dataset.ipynb and trianThebe.out
comprison with Cunha et al's transfer learning model is store in SFD-CNN-TL folder
we added folder/file: finetune.ipynb, predictNew.ipynb, classifyAndMetricsGSB-compare.ipynb, GSB_predictions, gsbData, xl2800realgt.npy
The dataset used in this paper is a multi-megabytes dataset, please download it through the link provided in the paper. (the dataset was deleted by mistake, will upload again later.) To access the original dataset, please check our data paper "A gigabyte interpreted seismic dataset for automatic fault recognition" or by link: https://dataverse.harvard.edu/dataset.xhtml?persistentId=doi:10.7910/DVN/YBYGBK To reproduce the same processed seismic dataset used in this paper, please download all seismic and fault annotation files in above dataverse link. and process it using: https://github.com/anyuzoey/CNNforFaultInterpretation/blob/master/generatePatchipyTrainValTest.ipynb
seismictrain.npy are splited into 9 files in datavese data repo. similar for faulttrain.npy. You can merge the 9 seismictrain files to seismictrain.npy.
more about converting segy to numpy can be found in link: https://github.com/anyuzoey/SEGY2NUMPY
This project is licensed under the GNU General Public License v3.0 - see the LICENSE.md file for details