/3d-registration-pcl

Pipelines to perform 3D large scale point cloud matching (registration) based on Point Cloud Library

Primary LanguageC++

3D Registration for large scale point clouds.

Requirements.

Building and compiling the project on Linux (Ubuntu) using CMake

  • Clone the repo
  • In the 3D-registration folder, run cmake -B build to build and generate the dependencies of the project into the build folder.
  • Enter build folder and run make to compile the project each time you do modifications.

More infos about how to use PCL in your C++ project here : tutorial

Data

The framework cannot read .las or .laz point cloud files directly, you need first to convert the data into .pcd files. You can convert any types of data (.laz, .las, .xyz) using : CloudCompare.

Steps :

  • Load the (.laz, .las, .xyz etc...) file in CloudCompare
  • Click on the saving button (to save the cloud)
  • Choose "point cloud library format" a.k.a .pcd
  • Press enter or ok, it's done !

Launching the pipeline and indicates which input files to use

What to do ?

  • You will be able to store your data and the parameters' file to use them in the pipelines, in the data folder.
  • To use a particular point cloud file, you'll need to specify the location address at : surface_model_data_file inside the text file.
  • To launch the pipeline (if you are in the build folder): ./[PIPELINE_NAME] [number_of_iterations]
    with PIPELINE_NAME = {experiment1, experiment2, etc...}.

Tools

You will find the source code of the tools used for this pipeline in the include folder.

  • Visualization tools : visualization_tools.hpp
  • Registration tools : registration.hpp
  • Parameters : parameters.hpp
  • General tools : tools.hpp