lvr2 package from lvr2 repo


Package Summary

Tags No category tags.
Version 20.7.1
License BSD-3-Clause
Build type CMAKE

Repository Summary

Checkout URI
VCS Type git
VCS Version master
Last Updated 2020-07-09
CI status Continuous Integration : 0 / 0
Package Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The Las Vegas Surface Reconstruction Toolkit is an Open Source toolkit to reconstruct triangle meshes from unordered point clouds. It supports the generation of textured models either using colored point clouds or point clouds plus images and according calibration matrices. The LVR toolkit provides an Open Source C++ API for meshing and texture generation as well as an I/O interface to store the generated meshes in different exchange formats including Stanford PLY, Wavefront OBJ and Collada. In contrast to other meshing software, it focuses on reconstruction of large scale environments on city scale from high resolution point clouds.

Additional Links


  • Sebastian Pütz
  • Thomas Wiemann


  • Thomas Wiemann
  • Sebastian Pütz
  • Alexander Mock
  • Lars Kiesow
  • Lukas Kalbertodt
  • Tristan Igelbrink
  • Johan M. von Behren
  • Dominik Feldschnieders
  • Alexander Löhr


This software delivers tools to build surface reconstructions from point cloud data and a simple viewer to display the results. Additionally, the found surfaces will be classified into predefined categories. The main aim of this project is to deliver fast and accurate surface extraction algorithms for robotic applications such as tele operation in unknown environments and localization.

Download and Compilation from Source

Step 0: Get the source code from our Github repository:

Linux (Ubuntu 18.04)

Step 1: Install all required package dependencies:

sudo apt-get install build-essential \
     cmake cmake-curses-gui libflann-dev \
     libgsl-dev libeigen3-dev libopenmpi-dev \
     openmpi-bin opencl-c-headers ocl-icd-opencl-dev \
     libvtk7-dev libvtk7-qt-dev libboost-all-dev \
     freeglut3-dev libhdf5-dev qtbase5-dev \
     qt5-default libqt5opengl5-dev liblz4-dev \
     libopencv-dev libyaml-cpp-dev

A C++17 compiler is required, e.g., g++7, gcc7 need bo installed. If CUDA is installed you also need g++6, see "Optional for NVIDIA graphics cards users"

Step 2: Configure and build from sources:

mkdir build
cd build
cmake .. && make

Optional for NVIDIA graphics cards users:

If you want to compile with CUDA support install the latest version of the CUDA toolkit, which you can find on NVIDIAs CUDA download site:

To enable CUDA support, you need to compile the software with a compatible GCC version. We have testet compilation with CUDA 9.1 and GCC 6. To use this compiler for compilation of CUDA generated code, set the CUDA_HOST_COMPILER option to g++-6 is forced to g++-6. Please ensure that this version is installed on your system. /

Step 3: Installation

After successful compilation, you will find the generated example tools in the ./bin/ directory. Optionally, you can install the library and header files to your system:

sudo make install


Install the required libraries using Homebrew:

brew install boost boost-mpi cmake eigen flann gcc glew gsl hdf5 opencv lz4 qt vtk 

mkdir build
cd build
cmake .. && make


Your can experiment with the software using the provided dataset. For a simple reconstruction call in yout build directory:

bin/lvr2_reconstruct ../dat/scan.pts

in the root directory of the project. This will create a file called “triangle_mesh.ply” which can be displayed using the viewer application:

bin/lvr2_viewer triangle_mesh.ply

For more information, build the Doxygen documentation by calling

make doc

in the build directory.


Changelog for package lvr2

20.7.1 (2020-07-09)

  • removed cl2.hpp, FeatureProjector.cpp from lib
  • added meta information factory with slam6d and yaml support
  • add debian folder from deb-lvr2 repo.
  • add read vertex normals and colors from MeshBuffer, e.g., ply files
  • add std arrays to conversion proxy for attribute map to channel conversion
  • the large scale reconstruction chunk size is now dictated by the chunk manager
  • make most things configurable for chunked mesh visualization
  • hyperspectral meta information can be saved and loaded
  • implemented basic load and save function of new IO features
  • added function to save the tsdf-values in the chunk manager
  • switched to new hdf5 io scheme for chunks and added a chunking pipeline with a multiple layer support
  • integrated unoptimized hdf5-input for partial reconstruction
  • fully integrated existing approach of dmc
  • Contributors: Alexander Mock, Bao Tran, Benedikt Schumacher, Kevin R

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Launch files

No launch files found


No message files found.


No service files found


No plugins found.

Recent questions tagged lvr2 at