Giter VIP home page Giter VIP logo

OpendTect header logo Example

OpendTect is a free, open source seismic interpretation system and software development platform. The system supports all tools needed for visualizing, analyzing and interpreting 2D, 3D and 4D seismic and Ground Penetrating Radar (GPR) data. The software is written in C++ and the same codebase compiles and runs on Windows, macOS and Linux. It also has a mature plugin programming interface that allows third parties to develop plugins to add functionality to the system without touching the OpendTect source code. A binary installer for OpendTect can be downloaded from the dGB download page.

This source code is released under the GPLv3 or higher license. Commercial and Academic licenses are offered by dGB Earth Sciences for OpendTect Pro, an extension of OpendTect that adds special functions for professional users and the potential to rent or purchase commercial plugins offering access to unique seismic interpretation workflows. The differences in functionality of the open source OpendTect, commercial OpendTect Pro and commercial plugins is compared here.

OpendTect is a flexible and powerful R&D software platform that you can extend for seismic data analysis. dGB Earth Sciences is also available to undertake industry funded (single or multi-client) projects to enhance OpendTect itself or create advanced plugin functionality.

OpendTect is used worldwide by thousands of open source users, thousands of academic users and hundreds of commercial users.

Table of Contents

Repository Structure

The repository contains a number of release branches and 2 development branches. The current stable release branch is 7.0

The development branches are:

BRANCH DESCRIPTION
main This is the bleeding edge where migration of OpendTect to new versions of its major dependencies, Qt and OpenSceneGraph, is tested and major new functionality is added.
od7.0 This is the main development branch for the next stable release series 7.0. No major new features are currently being added to this branch as it is being prepared for release.

License

OpendTect is released under the GPLv3 or higher license.

Building the Software

Requirements

  • A C++ compiler and compilation tool chain:
    • Windows: msvc2022 64 bit (>= v17.8.4). The free community edition is sufficient.
    • macOS: SDK 10.15
    • Linux: gcc 64 bit version 10.5.0 or higher
  • CMake version 3.14 or higher
  • The c++17 version is enabled by default on all platforms.

Dependencies

To build the software you need to also download and install/build a few dependencies which probably are not installed in your system. The version of dependencies varies between the branches. The Qt dependencies are available in binary installers, the others have to be built from source.

BRANCH DEPENDENCIES
main Qt 5.15.2, OpenSceneGraph 3.6.5, Proj 9.4.0 (optional), Sqlite 3.44 (optional), HDF5 1.14.3 (optional)
od7.0_rel, od7.0 Qt 5.15.2, OpenSceneGraph 3.6.5, Proj 9.3.1 (optional), Sqlite 3.44 (optional), HDF5 1.14.3 (optional)
od6.6_rel, od6.6 Qt 5.15.2, OpenSceneGraph 3.6.5, HDF5 1.12.2 (optional)

Qt Install

For the Qt install the following components must be selected depending on your build platform:

  • Desktop msvc2019 64- bit (Windows), SDK 10.15 (macOS) or gcc 64 bit (Linux)
  • QtWebEngine
  • Optionally source code or debug information files

OpenSceneGraph Build

Configure using CMake, compile and install.

Proj Build

Configure using CMake, compile and install.

Sqlite Install

Retrieve from their download site or the OpendTect SDK

HDF5 Install

The link to HDF5 requires to provide the path to an existing HDF5 installation. All versions above 1.10.3 are supported, but using the current API 1.14 is preferred. Installation is best done using their binary installations (on Windows especially), or from the package manager on Linux. Windows developers however need to recompile the sources since no debug binary libraries can be downloaded.

Windows

Configure CMake ensuring to set the following variables:

  • QTDIR= set this to the Qt install location for the appropriate version of Qt for the OpendTect version
  • OSG_DIR="OpenSceneGraph install location"
  • PROJ_DIR="PROJ install location" or OD_NO_PROJ=ON to disable it
  • SQLite3_ROOT="SQLite3 install location" (optional, but required by Proj)
  • HDF5_ROOT="HDF5 install location" (optional)

Start Visual Studio 2022, open the OpendTect solution and build.

macOS

Linux

Configure CMake ensuring to set the following variables:

  • QTDIR= set this to the Qt install location for the appropriate version of Qt for the OpendTect version
  • OSG_DIR="OpenSceneGraph install location"
  • PROJ_DIR="PROJ install location" or OD_NO_PROJ=ON to disable it
  • SQLite3_ROOT="SQLite3 install location" (optional, but required by Proj)
  • HDF5_ROOT="HDF5 install location" (optional)
  • ZLIB_ROOT="ZLIB install location" (optional)
  • OpenGL_GL_PREFERENCE=LEGACY

Run make in the toplevel folder (i.e. where this README.MD file is located)

Contributing

You can contribute to the enhancement of OpendTect either by:

  • providing bug fixes or enhancements to the OpendTect source code following the usual Github Fork-Pull Request process.
  • or independently by developing and releasing open source plugins from your own Github or equivalent repository. See the wmplugins repository as an example of this approach.

An overview of the design principles and preferred coding style/practices employed by dGB in the development of OpendTect are described in dGB's coding guide

Contacts and More Information

opendtect's Projects

breakpad icon breakpad

Google breakpad with OpendTect additions to find symbols

dgbpy icon dgbpy

dgbpy is a framework for research and deployment of machine learning models from seismic and well data.

odpy icon odpy

odpy is a framework for research and deployment that allows for basic interactions with the OpendTect software and database

opendtect-ml-dev icon opendtect-ml-dev

Examples on how to develop your own Machine Learning tools and workflows

osg-od6 icon osg-od6

OpenSceneGraph copy to be used for OD6 builds

proj4 icon proj4

A cleaned-up clone of https://github.com/OSGeo/proj.4

qtkeychain icon qtkeychain

Platform-independent Qt API for storing passwords securely.

shapelib icon shapelib

Clone from the shapelib cvs repositories.

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.