Coder Social home page Coder Social logo

kasyful / faultseg Goto Github PK

View Code? Open in Web Editor NEW

This project forked from xinwucwp/faultseg

0.0 0.0 0.0 1.84 GB

Using synthetic datasets to train an end-to-end CNN for 3D fault segmentation (We are working on an improved version!)

Shell 0.01% Python 0.53% Jupyter Notebook 99.46%

faultseg's Introduction

FaultSeg3D: using synthetic datasets to train an end-to-end convolutional neural network for 3D seismic fault segmentation

This is a Keras version of FaultSeg implemented by Xinming Wu for 3D fault segmentation

As described in FaultSeg: using synthetic datasets to train an end-to-end convolutional neural network for 3D fault segmentation by Xinming Wu1, Luming Liang2, Yunzhi Shi1 and Sergey Fomel1. 1BEG, UT Austin; 2Uber.

Getting Started with Example Model for fault prediction

If you would just like to try out a pretrained example model, then you can download the pretrained model and use the 'prediction.ipynb' script to run a demo.

On 05/07/2020, new models are uploaded for testing. Please run predNew.ipynb to test the new models.

Dataset

To train our CNN network, we automatically created 200 pairs of synthetic seismic and corresponding fault volumes, which were shown to be sufficient to train a good fault segmentation network.

The training and validation datasets can be downloaded here

Training

Run train.py to start training a new faultSeg model by using the 200 synthetic datasets

Publications

If you find this work helpful in your research, please cite:

@article{wu2019faultSeg,
    author = {Xinming Wu and Luming Liang and Yunzhi Shi and Sergey Fomel},
    title = {Fault{S}eg3{D}: using synthetic datasets to train an end-to-end convolutional neural network for 3{D} seismic fault segmentation},
    journal = {GEOPHYSICS},
    volume = {84},
    number = {3},
    pages = {IM35-IM45},
    year = {2019},
}

Validation on a synthetic example

Fault detections are computed on a syntehtic seismic image by using 8 methods of C3 (Gersztenkorn and Marfurt, 1999), C2 (Marfurt et al., 1999), planarity (Hale, 2009), structure-oriented linearity (Wu, 2017), structure-oriented semblance (Hale, 2009), fault likelihood (Hale, 2013; Wu and Hale, 2016, code), optimal surface voting (Wu and Fomel, 2018, code) and our CNN-based segmentation. results/comparison.jpeg

To quantitatively evaluate the fault detection methods, we further calculate the precision-recall (Martin et al., 2004) and receiver operator characteristic (ROC) (Provost et al., 1998) curves shown below. From the precision-recall curves, we can clearly observe that our CNN method (red curve) provides the highest precisions for all the choices of recall. results/PR_and_ROC_curves.jpeg


Validation on multiple field examples

Although trained by only synthetic datasets, the CNN model works well in predicting faults in field datasets that are acquired at totally different surveys.

Example of Netherlands off-shore F3 (provided by the Dutch Government through TNO and dGB Earth Sciences)

compare the CNN fault probability (top right) with fault likelihood (bottom) results/f3CnnFaultByWu.png


Example of Clyde (provided by Clyde through Paradigm)

compare the CNN fault probability (middle) with fault likelihood (right) results/clydeCnnFaultByWu.png


Example of Costa Rica (acquired in the subduction zone, Costa Rica Margin, provided by Nathan Bangs)

compare the CNN fault probability (left column) with fault likelihood (right column) results/crfCnnFaultByWu.png


Example of Campos (acquired at the Campos Basin, offshore Brazil, provided by Michacle Hudec)

results/camposCnnFaultByWu.png


Example of Kerry-3D (The fault features have been thinned in this example)

results/kerryCnnFaultByWu.png


Example of Opunake-3D (The fault features have been thinned in this example)

results/opunakeCnnFaultByWu.png

License

This extension to the Keras library is released under a creative commons license which allows for personal and research use only. For a commercial license please contact the authors. You can view a license summary here: http://creativecommons.org/licenses/by-nc/4.0/

faultseg's People

Contributors

xinwucwp avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.