The Point Cloud Library (or PCL) is a large scale, open project [1] for 2D/3D image and point cloud processing. The PCL framework contains numerous state-of-the art algorithms including filtering, feature estimation, surface reconstruction, registration, model fitting and segmentation. These algorithms can be used, for example, to filter outliers from noisy data, stitch 3D point clouds together, segment relevant parts of a scene, extract keypoints and compute descriptors to recognize objects in the world based on their geometric appearance, and create surfaces from point clouds and visualize them -- to name a few.
PCL is released under the terms of the 3-clause BSD license and is open source software. It is free for commercial and research use.
PCL is cross-platform, and has been successfully compiled and deployed on Linux, MacOS, Windows, and Android/iOS. To simplify development, PCL is split into a series of smaller code libraries, that can be compiled separately. This modularity is important for distributing PCL on platforms with reduced computational or size constraints (for more information about each module see the documentation page). Another way to think about PCL is as a graph of code libraries, similar to the Boost set of C++ libraries.
Homepage
Download
Recent Releases
1.14.024 Dec 2023 10:29
major feature:
https://github.com/PointCloudLibrary/pcl/blob/master/CHANGES.md#-1140-03-january-2024-
1.12.0-rc101 Jul 2021 11:05
minor feature:
Increasing coverage of index_t for allowing std::int64_t as indices.
Increased conformance to std::vector API for PointCloud.
Speed improvements, thread safety and a new flexible experimental filter.
1.11.118 Aug 2020 09:25
minor feature:
Increasing coverage of index_t for allowing std::int64_t as indices.
Increased conformance to std::vector API for PointCloud.
Speed improvements, thread safety and a new flexible experimental filter.
1.11.1-rc107 Aug 2020 03:16
minor feature:
refactor point_traits.h to remove doxygen warning: Detected potential
.
Clean FLANN includes.
.
clang-formatted tracking src files.
.
clang-formatted tracking impl files.
.
clang formatted tracking header files.
.
update to clang-format-10.
.
replace pcl::tracking:: with namespaces.
.
add tracking to whitelist.
.
simplify generator.
.
Remove extra whitespaces.
.
replace keypoints_nbr_ with number.
.
bad merge.
.
error: misplaced attributes in vtkVertexBufferObjectMapper and vt .
.
Update Find Boost.
.
compile in OutofcoreOctreeBase::setLODFilter after switchin .
.
use pcl::utils::ignore instead of (void) casts.
.
use pcl::utils::ignore instead of (void) in 3rdparty code.
.
.
.
.
.
Add dockerfiles for testing before release.
.
Updating CMakeLists.txt for post release.
.
.
.
.
.
.
.
Adding for myself.... grrr.
.
.
.
Remove use of dynamic allocation in favor of local variable.
.
NSIS Template for NSIS3.
.
delete 'brew tap homebrew/science'.
.
.
.
Print that Flann was found..
.
Missed one.
.
Update stale.yml.
.
.
.
add pcd file download link, link to source file.
.
typo.
.
typo pk - pi.
.
`std::vector, ` - `Indices ,Allocator `.
.
Create CNAME.
.
Delete CNAME.
.
Create CNAME.
.
Delete CNAME.
.
Create CNAME.
.
Delete CNAME.
.
Create CNAME.
.
github Add links for discord or SO in Create.
.
.
.
.
.
.
.
remove_outliers tutorial: make the output of -r and -c consistent (#4030.
.
.
.
.
.
.
.
Update README.md.
.
Adding todo to exempt from stale-ing.
.
.
.
.
.
Remove mailing list info from readme.
.
.
.
Use https for URL.
.
.
.
Try reduce size of binaries on the CI.
.
Doesn MSVC like this better?.
.
ad
1.11.012 May 2020 12:05
minor feature:
Bump version for release
Bump version for release.
Adding changelog.
ing duplication in API/ABI.
1.10.020 Jan 2020 11:45
minor feature:
Added pcl::make_shared and Class::Ptr/Class::ConstPtr type-aliases. Use these instead of direct names like boost, std ::shared_ptr or boost, std ::make_shared with PCL types.
Added pcl::shared_ptr that offers the same abstraction for non-PCL types.
1.9.103 Nov 2019 13:49
minor feature: