Dataset management interface with Keras for geophysics
This repository is organized in the following fashion. From highest level to lowest:
RCNN2D
.RCNN2D
-like class as input.GeoDataset
is implemented with the GeoDataset class. It provides an
interface to generate 2D velocity models and model the seismic data with
fixed parameters.GeoDataset
class contains the method set_dataset
. A new GeoDataset can be defined
by defining a child class from the GeoDataset
base class and overriding set_dataset
.
This method needs to return three objects based on three classes
set_rec_src
to define a different acquisition setup.Code style should follow closely PEP 8. Commits should follow closely git
good practices. Refer to STYLEGUIDE.md
for a comprehensive guide to this project's style conventions.
IMPORTANT: Use the latest SeisCL version on the devel
branch.
You should clone this repository
git clone https://github.com/gfabieno/SeisCL.git
We provide a Docker image that contains all necessary python libraries like Tensorflow and the seismic modeling code SeisCL.
You first need to install the Docker Engine, following the instructions here. To use GPUs, you also need to install the Nvidia docker. For the later to work, Nvidia drivers should be installed. Then, when in the project repository, build the docker image as follows:
docker build -t seisai:v0
You can then launch any of the python scripts in this repo as follows:
docker run --gpus all -it\
-v `pwd`:`pwd` -w `pwd` \
--user $(id -u):$(id -g) \
seisai:v0 Case_article.py --logdir=./Case_article
This makes accessible all gpus (--gpus all
), mounting the current directory to a
to the same path in the docker (second line), running the docker as the current user
(for file permission), and runs the script Case_article.py
.
It is recommended to create a new virtual environment for this project with Python3. Install all requirements with
pip install .
The main Python requirements are: