Point Cloud Library 1.8.1 has been released

Point Cloud Library 1.8.1

PCL 1.8.1 has been released.

What’s New?

PCL 1.8.1 is a minor update.
New features has not been added from PCL 1.8.0, but many bugs has been fixed. Please see ChangeList for details.

Binary packages will be distributed on release page of GitHub from this version.
You can download the installer from stable server of GitHub.

In addition, You can install PCL using Vcpkg that is package management system for Visual C++. I will introduce Vcpkg in another article.

What is it?

The features are contained in the PCL as follows.

  • filters
  • fuatures
  • keypoints
  • registration
  • kdtree
  • octree
  • segmentation
  • sample consensus
  • surface
  • range image
  • io
  • visualization

pointcloudlibrary_features

Development Environment

PCL supported OS is Linux, Windows, MacOS X, and other.
Supported development language is C++ and Python.
PCL use internally main dependent libraries (3rdParty) is as follows.*1

Required

  • Boost (C ++ Semi Standard Library)
  • Eigen (Matrix Library)
  • FLANN (Nearest Neighbor Search Library)
  • VTK (Visualization Library)

Optional

*1 In addition, depends on other 3rdParty by function. Qt (GUI Library), CUDA (GPU Development Environment), PCAP (Packet Capture), GLUT (OpenGL Utility Toolkit), GLEW (OpenGL Extension Library), etc.

Download Installer

“PCL All-in-one Installer” is includes pre-built libraries of PCL and 3rdParty.
You can download from the following link.
Please install PCL and 3rdParty by using the downloaded installer.

2017/08/08 Release Installer (PCL 1.8.1, Boost 1.64.0, Eigen 3.3.4, FLANN 1.9.1, VTK 8.0.0 (OpenGL backend), QHull 2015.2, OpenNI 2.2.0.33 Beta)

Visual Studio 2017

Visual Studio 2015

Set Environment Variables

Please set as following the environment variables of system and re-boot your system.

Variable Name Value
PCL_ROOT C:\Program Files\PCL 1.8.0 (or C:\Program Files (x86)\PCL 1.8.0)
Path ;%PCL_ROOT%\bin
;%OPENNI2_REDIST64% (or %OPENNI2_REDIST%)

Generate Your Own Project using CMake

I strongly recommend that to generate project using CMake.*2
Please refer to following documents about How to use CMake and CMakeLists.
In Addition, Please refer to basic CMakeLists for using PCL.

*2 I recommend that to use CMake 3.8.0 or later.

How to use CMake?

How to write CMakeLists?

Basic CMakeLists for PCL

  • Basic CMakeLists.txt for PCL
  • cmake_minimum_required( VERSION 2.8 )
    
    # Create Project
    project( solution )
    add_executable( project main.cpp )
    set_property( DIRECTORY PROPERTY VS_STARTUP_PROJECT "project" )
    
    # Find Packages
    find_package( PCL 1.8 REQUIRED )
    
    if( PCL_FOUND )
      # Additional Include Directories
      # [C/C++]>[General]>[Additional Include Directories]
      include_directories( ${PCL_INCLUDE_DIRS} )
    
      # Preprocessor Definitions
      # [C/C++]>[Preprocessor]>[Preprocessor Definitions]
      add_definitions( ${PCL_DEFINITIONS} )
      #add_definitions( -DPCL_NO_PRECOMPILE )
    
      # Additional Library Directories
      # [Linker]>[General]>[Additional Library Directories]
      link_directories( ${PCL_LIBRARY_DIRS} )
    
      # Additional Dependencies
      # [Linker]>[Input]>[Additional Dependencies]
      target_link_libraries( project ${PCL_LIBRARIES} )
    endif()
    

How to Build Libraries (PCL 1.8.1 and 3rdParty) from Source Code yourself

In many cases, You can use the All-in-one Installer for using PCL.
But, If you want to enable other options or use other compilers, You need to build PCL and 3rdParty yourself.

I will publish the notes of how to build PCL 1.8.1 and latest version 3rdParty.
Please refer to this Notes who want to build the libraries (PCL 1.8.1 and 3rdParty) yourself.

3rdParty Build Notes

PCL Build Note

How to Contribution (issue report, send pull request) and Question?

If you find a bug, you can reported to issues of GirHub.
If you can be fixed bug, you can send pull requests to GitHub repository.

And, If you have any questions, you can post to the PCL Users mailing list.
Please attach the following information in these reports. It will help to resolve your problem.
(You need to tell the appropriate information to resolve your problem.)

  • Error Code and Message
  • Adequate and Simple Source Code for Reproduce or Tutorial URL (e.g. source code sharing service URL like gist)
  • CMake Cache (<CMAKE_BINARY_DIR>CMakeCache.txt) *IMPORTANT
  • CMake Logs (<CMAKE_BINARY_DIR>CMakeFilesCMakeOutput.log)
  • PCL Version (or Commit Hash)
  • Target Compiler and Configure (e.g. “Visual C++ 2017, Release|x64”)
  • Operating System (e.g. “Windows 10 Pro (update 1703) 64bit”)

4 thoughts on “Point Cloud Library 1.8.1 has been released”

  1. Thanks for your work!!!!
    I find no Visual Studio 2013 version here, is it because some features are not supported in msvc2013?

    1. Hi zhangxaochen,

      PCL All-in-one Installer has been created only for latest version of Visual Studio.
      If you want to use old version of Visual Studio, You need to build PCL (and 3rdParty) from source code yourself.

  2. Hi Tsukasa Sugiura,

    Great job , thank you .
    I just wanted to ask you about unorganized point cloud data. I have velodyne (pcap data ) and convert them into pcd data ,but the data I got unorganized point cloud so I cannot use the data for local pipleline (3D object recognition).
    so how to convert unorganized data into organized one.

    1. Hi scofield,

      Perhaps, I think it is not possible to convert point cloud data from unorganized to organized.
      An organized point cloud data is a point cloud where data is split into rows and columns like image.
      The data retrieved from Velodyne sensors is not organized point cloud data.

      If you want more information, I recommend you post to users forum.

Leave a Reply

Your email address will not be published. Required fields are marked *