PCL v1.11.1 Release Notes

Release Date: 2020-08-14 // about 1 year ago
  • ๐Ÿ›  Apart from the usual serving of bug-fixes and speed improvements, PCL 1.11.1 brings in ๐Ÿ‘ better support for CUDA, more uniform behavior in code as well as cmake, and an experimental feature: functor_filter.

    Notable changes

    ๐Ÿ†• New features added to PCL

    • [ci] Add support for CUDA in CI [#4101]
    • [common] Add always-unsigned index type uindex_t dependent on index_t [#4205]
    • [filters] Add a filter accepting a functor to reduce boiler plate code for simple filters [#3890]

    ๐Ÿ”„ Changes grouped by module

    CMake:

    • Update pcl_find_boost to allow compilation with Boost 1.73 and 1.72 [#4080]
    • ๐Ÿ›  Fix NSIS Template for NSIS3 [#4093]
    • โž• Add option to choose pcl::index_t while compiling [#4166]
    • ๐Ÿ›  Fix name warnings for PCAP, libusb and Ensenso. [#4182]
    • ๐Ÿ›  Fixes compile error on MSVC by disabling Whole Program Optimization [#4197]

    libpcl_common:

    • โœ‚ Remove use of dynamic allocation in GaussianKernel::convolve{Rows,Cols} [#4092]
    • Replace usage of std::vector<int> with Indices [#3989]
    • โšก๏ธ Update PointCloud to conform to requirements of ReversibleContainer [#3980]
    • [new feature] Add always-unsigned index type uindex_t dependent on index_t [#4205]
    • โž• Adding data member function to PointCloud [#4216]
    • Switch int to index_t for field index variables in pclBase, add pcl::UNAVAILABLE for same [#4211]
    • โž• Added resize with 2 arguments to PointCloud [#4225]
    • โž• Adding max_size to PointCloud [#4254]
    • ๐Ÿ‘Œ Support multiple arguments in pcl::utils::ignore() [#4269]

    libpcl_features:

    • ๐Ÿ›  Fix feature histogram constructor bug [#4234]
    • ๐Ÿ›  Fix regression in Organized Edge Detection (introduced in PCL 1.10.1) [#4311]

    libpcl_filters:

    • โฌ‡๏ธ reduce computations involved in iterating over the pointcloud for FastBilateral{OMP} [#4134]
    • [new feature] Add a filter accepting a functor to reduce boiler plate code for simple filters [#3890]
    • Refatoring VoxelGridCovariance to make it multi-thread safe (and more) [#4251]

    libpcl_gpu:

    • Replace volatile shared memory with shfl_sync in KNNSearch [#4306]
    • ๐Ÿ›  Fix octree radiusSearch [#4146]

    libpcl_io:

    • ๐Ÿ‘ Better conversion of depth data + focal length into X,Y,Z point data [#4128]
    • โž• Add iterator include for back_iterator to support VS2019 [#4319]

    libpcl_outofcore:

    • Fix compile issue in OutofcoreOctreeBase::setLODFilter after switching from boost::shared_ptr to std::shared_ptr [#4081]

    libpcl_registration:

    • ๐Ÿ›  Fix bug in NDT step interval convergence criteria [#4181]

    libpcl_segmentation:

    • Clean FLANN includes [#4025]
    • โšก๏ธ Update angle between 2 planes to be the smallest angle between them [#4161]

    libpcl_simulation:

    • Don't prefix in shaders. [#4209]

    libpcl_visualization:

    • ๐Ÿ›  Fix error: misplaced deprecation attributes in vtkVertexBufferObject{,Mapper} [#4079]

    ๐Ÿ“„ PCL Docs:

    • Fix typo in FPFH documentation, $$p_k$$ was used instead of $$p_i$$ [#4112]
    • ๐Ÿ›  Fix typos in PFH estimation tutorial [#4111]

    CI:

    • [new feature] Add support for CUDA in CI [#4101]

Previous changes from v1.11.1-rc2

  • ๐Ÿ›  PCL 1.11.1 brings in new bug fixes and improvements such as

    • 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

    ๐Ÿ—„ For an exhaustive list of newly added features, deprecations and other changes
    ๐Ÿ‘€ in PCL 1.11.1, please see CHANGES.md.

    โšก๏ธ PS: Link wouldn't work since CHANGES.md isn't updated