OpenTopography Open Source Software

OpenTopography GitHubAll open source software algorithms and tools developed by OpenTopography are distributed via our GitHub.

Computational Notebooks Available via OpenTopography GitHub:

OpenTopography's Computational Notebooks - OpenTopography-developed computational Notebooks on data access and processing workflows.

  • Lidar Point Cloud to STL - This notebook uses a Voxel subsampling method for point cloud data thinning. After the point cloud has been thinned, triangulation is computed to create a mesh which can be exported as a STL file and opened in a variety of 3D modeling software. An overview of the notebooks can be found here.

Open Source Software developed and used by OpenTopography:

  • RiverREM - RiverREM is a Python package for automatically generating river relative elevation model (REM) visualizations from nothing but an input digital elevation model (DEM). An overview of RiverREM can be found at this blog post.
  • Points2Grid - Points2Grid is a robust and scalable tool for gridding lidar point cloud data to generate Digital Elevation Models (DEM). Points2Grid uses a local gridding method to compute grid cell elevation using a neighborhood defined around each cell based on a search radius provided by the user. Points2Grid has been integrated into the open source Point Data Abstraction Library (PDAL) package as writers.gdal. More information about the algorithm and software is available on our Points2Grid page.
  • Vertical Differencing - This tool performs vertical raster-based differencing of high resolution topography. It forms the main component of the OpenTopography portal 'vertical differencing' tool available when there are overlapping datasets. The vertical differencing tool can be used to compare DEMs to calculate surface change from a variety of tectonic, geomorphic, and anthropogenic processes.
  • 3D Differencing - 3D differencing uses a windowed implementation of the iterative closet point (ICP) algorithm to align windows of point cloud topography that span a geologic event of interest such as an earthquake or a landslide. We offer two options: The Matlab version is relatively easy to set-up, although running the windowed ICP on a large dataset will take a while to complete. The other option uses Python and C++ and is considerably more computationally efficient compared to the Matlab implementation. We also provide links to download sample lidar datasets that span the 2016 M7 Kumamoto, Japan, Earthquake. This code is implemented in the OpenTopography portal as the '3D differencing' tool.
  • Opal Toolkit - A toolkit for wrapping scientific applications as Web services developed at San Diego Supercomputer Center (where OpenTopography is also based). Provides features such as scheduling, standards-based Grid security and data management in an easy-to-use and configurable manner. OpenTopography's Web service architecture is built with Opal services, and we leverage many of the features provided by the toolkit.

Other Software in OpenTopography GitHub:

  • myHadoop is a simple system for end-users to provision Hadoop instances on traditional supercomputing resources, without requiring any root privileges. Users may use myHadoop to configure and instantiate Hadoop on the fly via regular batch scripts.

Related Open Source Software Projects

The OpenTopography system is largely built on open source software, including code from the projects listed below. For more information about OT cyberinfrastructure see our publications.

  • PDAL - Point Data Abstraction Library (PDAL) is a C++ library for translating and manipulating point cloud data. OT uses PDAL for various data preparation, query, and processing tasks.
  • Entwine - Entwine is a data organization library for massive point clouds.
  • GDAL - The Geospatial Data Abstraction Library (GDAL), is a translator library for raster geospatial data formats.  OpenTopography uses GDAL for DEM format conversion and derived product generation.
  • Geoportal Server - Esri Geoportal Server is a free, open source product that enables discovery and use of geospatial resources including datasets, rasters, and Web services. It helps organizations manage and publish metadata for their geospatial resources to let users discover and connect to those resources.