|
1 | 1 | # ChangeList |
2 | 2 |
|
| 3 | +## = 1.15.0 (20 February 2025) = |
| 4 | + |
| 5 | +### Notable changes |
| 6 | + |
| 7 | +**New features** *added to PCL* |
| 8 | + |
| 9 | +* **[filters]** UniformSampling Filter: add option for a minimum number of points required per voxel [[#5968](https://github.com/PointCloudLibrary/pcl/pull/5968)] |
| 10 | +* **[sample_consensus]** Torus ransac model [[#5816](https://github.com/PointCloudLibrary/pcl/pull/5816)] |
| 11 | +* **[common]** Allow type conversion in fromPCLPointCloud2 [[#6059](https://github.com/PointCloudLibrary/pcl/pull/6059)] |
| 12 | +* **[segmentation]** ExtractPolygonalPrismData and ConcaveHull bugfix [[#5168](https://github.com/PointCloudLibrary/pcl/pull/5168)] |
| 13 | +* Allow hidden visibility default on gcc/clang [[#5779](https://github.com/PointCloudLibrary/pcl/pull/5779)] |
| 14 | + |
| 15 | +**Deprecation** *of public APIs, scheduled to be removed after two minor releases* |
| 16 | + |
| 17 | +* **[registration]** Fix spelling error in pcl::NormalDistributionsTransform getOulierRatio/setOulierRatio [[#6140](https://github.com/PointCloudLibrary/pcl/pull/6140)] |
| 18 | + |
| 19 | +**Removal** *of the public APIs deprecated in previous releases* |
| 20 | + |
| 21 | +* Remove Deprecated Code for 1.15.0 release [[#6040](https://github.com/PointCloudLibrary/pcl/pull/6040)] |
| 22 | + |
| 23 | +**Behavior changes** *in classes, apps, or tools* |
| 24 | + |
| 25 | +* **[cmake]** Compile PCL as C++17 by default, switching back to C++14 currently still possible [[#6201](https://github.com/PointCloudLibrary/pcl/pull/6201)] |
| 26 | + |
| 27 | +**ABI changes** *that are still API compatible* |
| 28 | + |
| 29 | +* **[recognition]** C++17 filesystem for recognition module [[#5935](https://github.com/PointCloudLibrary/pcl/pull/5935)] |
| 30 | +* **[registration]** Add OMP based Multi-threading to IterativeClosestPoint [[#4520](https://github.com/PointCloudLibrary/pcl/pull/4520)] |
| 31 | +* **[segmentation]** ExtractPolygonalPrismData and ConcaveHull bugfix [[#5168](https://github.com/PointCloudLibrary/pcl/pull/5168)] |
| 32 | + |
| 33 | +### Changes grouped by module |
| 34 | + |
| 35 | +#### CMake: |
| 36 | + |
| 37 | +* Remove global includes and use target include for Apps [[#6009](https://github.com/PointCloudLibrary/pcl/pull/6009)] |
| 38 | +* Give users more control regarding with which point types classes are … [[#6062](https://github.com/PointCloudLibrary/pcl/pull/6062)] |
| 39 | +* Fix finding lib when install with relwithdebinfo or minsizerel [[#6089](https://github.com/PointCloudLibrary/pcl/pull/6089)] |
| 40 | +* Use system-installed cJSON, if available [[#6084](https://github.com/PointCloudLibrary/pcl/pull/6084)] |
| 41 | +* Remove broken support for external metslib. [[#5959](https://github.com/PointCloudLibrary/pcl/pull/5959)] |
| 42 | +* Require at least Boost 1.71, support Boost 1.86, switch to BoostConfig.cmake [[#6105](https://github.com/PointCloudLibrary/pcl/pull/6105)] |
| 43 | +* Remove global includes and use target include for GPU/CUDA [[#6010](https://github.com/PointCloudLibrary/pcl/pull/6010)] |
| 44 | +* Remove findGLEW and FindOpenMP as they are already present in CMake. Update minimum required cmake to 3.16.3 [[#6100](https://github.com/PointCloudLibrary/pcl/pull/6100)] |
| 45 | +* PCLConfig.cmake.in: Handle potentially empty ${LIB} variable [[#6134](https://github.com/PointCloudLibrary/pcl/pull/6134)] |
| 46 | +* Replace make_directory (deprecated since CMake version 3.0) [[#6150](https://github.com/PointCloudLibrary/pcl/pull/6150)] |
| 47 | +* Updates to CXX flags and removal of cmake checks less than 3.16. [[#6144](https://github.com/PointCloudLibrary/pcl/pull/6144)] |
| 48 | +* Fix OpenMP on macOS/homebrew [[#6114](https://github.com/PointCloudLibrary/pcl/pull/6114)] |
| 49 | +* Preparation for Boost 1.87, flag change for GCC 14 [[#6166](https://github.com/PointCloudLibrary/pcl/pull/6166)] |
| 50 | +* Print warning if incompatible alignment option chosen [[#6184](https://github.com/PointCloudLibrary/pcl/pull/6184)] |
| 51 | +* **[behavior change]** Compile PCL as C++17 by default, switching back to C++14 currently still possible [[#6201](https://github.com/PointCloudLibrary/pcl/pull/6201)] |
| 52 | +* Fix linking with pcl_io_ply [[#6205](https://github.com/PointCloudLibrary/pcl/pull/6205)] |
| 53 | +* Remove global includes from PCL_SUBSYS_DEPEND in PCL_TARGETS and adjust accordingly [[#6013](https://github.com/PointCloudLibrary/pcl/pull/6013)] |
| 54 | + |
| 55 | +#### libpcl_common: |
| 56 | + |
| 57 | +* **[new feature]** Allow type conversion in fromPCLPointCloud2 [[#6059](https://github.com/PointCloudLibrary/pcl/pull/6059)] |
| 58 | +* change `sprintf` to `snprintf` to suppress deprecated warning on macOS [[#6102](https://github.com/PointCloudLibrary/pcl/pull/6102)] |
| 59 | +* Remove "No data to copy" warning in conversions.h [[#6108](https://github.com/PointCloudLibrary/pcl/pull/6108)] |
| 60 | +* add PCL_HIGH convenience macro [[#6136](https://github.com/PointCloudLibrary/pcl/pull/6136)] |
| 61 | +* Remove unnecessary PCL_EXPORTS in common [[#6141](https://github.com/PointCloudLibrary/pcl/pull/6141)] |
| 62 | +* Print warning if incompatible alignment option chosen [[#6184](https://github.com/PointCloudLibrary/pcl/pull/6184)] |
| 63 | +* Update `__func__` and `__PRETTY_FUNCTION__` defines for MSVC [[#6222](https://github.com/PointCloudLibrary/pcl/pull/6222)] |
| 64 | + |
| 65 | +#### libpcl_features: |
| 66 | + |
| 67 | +* Added parallel implementation of PrincipalCurvaturesEstimation [[#6048](https://github.com/PointCloudLibrary/pcl/pull/6048)] |
| 68 | +* :bug: Fix RoPS total area [[#6187](https://github.com/PointCloudLibrary/pcl/pull/6187)] |
| 69 | + |
| 70 | +#### libpcl_filters: |
| 71 | + |
| 72 | +* **[new feature]** UniformSampling Filter: add option for a minimum number of points required per voxel [[#5968](https://github.com/PointCloudLibrary/pcl/pull/5968)] |
| 73 | +* Fix issues related to nan/invalid points [[#6036](https://github.com/PointCloudLibrary/pcl/pull/6036)] |
| 74 | +* Make UniformSampling inherit from FilterIndices instead of Filter [[#6064](https://github.com/PointCloudLibrary/pcl/pull/6064)] |
| 75 | +* Fix an integer overflow issue in the PassThrough filter. [[#6097](https://github.com/PointCloudLibrary/pcl/pull/6097)] |
| 76 | +* Convolution3D: use dynamic schedule for OpenMP [[#6155](https://github.com/PointCloudLibrary/pcl/pull/6155)] |
| 77 | +* Add OpenMP to radius outlier removal [[#6182](https://github.com/PointCloudLibrary/pcl/pull/6182)] |
| 78 | + |
| 79 | +#### libpcl_gpu: |
| 80 | + |
| 81 | +* fix int type overflow by casting int to size_t [[#6058](https://github.com/PointCloudLibrary/pcl/pull/6058)] |
| 82 | + |
| 83 | +#### libpcl_io: |
| 84 | + |
| 85 | +* Fix problem with normals in obj loader [[#6047](https://github.com/PointCloudLibrary/pcl/pull/6047)] |
| 86 | +* fix saveRangeImagePlanarFilePNG [[#6095](https://github.com/PointCloudLibrary/pcl/pull/6095)] |
| 87 | +* fix pcd io small probability bug [[#6122](https://github.com/PointCloudLibrary/pcl/pull/6122)] |
| 88 | +* Preparation for Boost 1.87, flag change for GCC 14 [[#6166](https://github.com/PointCloudLibrary/pcl/pull/6166)] |
| 89 | +* Fix linking with pcl_io_ply [[#6205](https://github.com/PointCloudLibrary/pcl/pull/6205)] |
| 90 | +* Fix regression in OBJ loader [[#6228](https://github.com/PointCloudLibrary/pcl/pull/6228)] |
| 91 | + |
| 92 | +#### libpcl_octree: |
| 93 | + |
| 94 | +* Faster octree nearestKSearch [[#6037](https://github.com/PointCloudLibrary/pcl/pull/6037)] |
| 95 | +* Faster octree radiusSearch [[#6045](https://github.com/PointCloudLibrary/pcl/pull/6045)] |
| 96 | + |
| 97 | +#### libpcl_outofcore: |
| 98 | + |
| 99 | +* Use system-installed cJSON, if available [[#6084](https://github.com/PointCloudLibrary/pcl/pull/6084)] |
| 100 | + |
| 101 | +#### libpcl_recognition: |
| 102 | + |
| 103 | +* **[ABI break]** C++17 filesystem for recognition module [[#5935](https://github.com/PointCloudLibrary/pcl/pull/5935)] |
| 104 | +* add border type setting in linemod gauss step [[#6103](https://github.com/PointCloudLibrary/pcl/pull/6103)] |
| 105 | + |
| 106 | +#### libpcl_registration: |
| 107 | + |
| 108 | +* **[ABI break]** Add OMP based Multi-threading to IterativeClosestPoint [[#4520](https://github.com/PointCloudLibrary/pcl/pull/4520)] |
| 109 | +* GICP: parallel covariance computation [[#6046](https://github.com/PointCloudLibrary/pcl/pull/6046)] |
| 110 | +* Fixes and improvements for FPCS and KFPCS [[#6073](https://github.com/PointCloudLibrary/pcl/pull/6073)] |
| 111 | +* **[deprecation]** Fix spelling error in pcl::NormalDistributionsTransform getOulierRatio/setOulierRatio [[#6140](https://github.com/PointCloudLibrary/pcl/pull/6140)] |
| 112 | +* fix registration iteration 1 mse print [[#6198](https://github.com/PointCloudLibrary/pcl/pull/6198)] |
| 113 | +* Speed up PPFRegistration by using a hash function with fewer collisions [[#6223](https://github.com/PointCloudLibrary/pcl/pull/6223)] |
| 114 | + |
| 115 | +#### libpcl_sample_consensus: |
| 116 | + |
| 117 | +* **[new feature]** Torus ransac model [[#5816](https://github.com/PointCloudLibrary/pcl/pull/5816)] |
| 118 | +* Circle3D: fix optimizeModelCoefficients use an uninitialized var [[#6088](https://github.com/PointCloudLibrary/pcl/pull/6088)] |
| 119 | +* Set better default for RRANSAC and RMSAC [[#6158](https://github.com/PointCloudLibrary/pcl/pull/6158)] |
| 120 | +* Circle3D: Changed segmentation collinear check precision from float to double. [[#6175](https://github.com/PointCloudLibrary/pcl/pull/6175)] |
| 121 | + |
| 122 | +#### libpcl_search: |
| 123 | + |
| 124 | +* Faster organized radius search [[#6160](https://github.com/PointCloudLibrary/pcl/pull/6160)] |
| 125 | + |
| 126 | +#### libpcl_segmentation: |
| 127 | + |
| 128 | +* fix pcl::squaredEuclideanDistance already defined in grabcut_2d.cpp.obj [[#5985](https://github.com/PointCloudLibrary/pcl/pull/5985)] |
| 129 | +* **[new feature][ABI break]** ExtractPolygonalPrismData and ConcaveHull bugfix [[#5168](https://github.com/PointCloudLibrary/pcl/pull/5168)] |
| 130 | +* fix: Initialization with correct signedness [[#6111](https://github.com/PointCloudLibrary/pcl/pull/6111)] |
| 131 | + |
| 132 | +#### libpcl_surface: |
| 133 | + |
| 134 | +* Remove deprecated readdir_r [[#6035](https://github.com/PointCloudLibrary/pcl/pull/6035)] |
| 135 | +* Update opennurbs VS issue (opennurbs_lookup.cpp) [[#6143](https://github.com/PointCloudLibrary/pcl/pull/6143)] |
| 136 | +* Add missing include for implementation header in bilateral_upsampling.h [[#6203](https://github.com/PointCloudLibrary/pcl/pull/6203)] |
| 137 | + |
| 138 | +#### libpcl_visualization: |
| 139 | + |
| 140 | +* Fix issues related to nan/invalid points [[#6036](https://github.com/PointCloudLibrary/pcl/pull/6036)] |
| 141 | +* Fix boost hash data type [[#6053](https://github.com/PointCloudLibrary/pcl/pull/6053)] |
| 142 | + |
| 143 | +#### PCL Apps: |
| 144 | + |
| 145 | +* Preparation for Boost 1.87, flag change for GCC 14 [[#6166](https://github.com/PointCloudLibrary/pcl/pull/6166)] |
| 146 | + |
| 147 | +#### PCL Tools: |
| 148 | + |
| 149 | +* compile missing tools/bilateral_upsampling [[#6112](https://github.com/PointCloudLibrary/pcl/pull/6112)] |
| 150 | + |
| 151 | +#### CI: |
| 152 | + |
| 153 | +* Update windows docker boost and cmake [[#6033](https://github.com/PointCloudLibrary/pcl/pull/6033)] |
| 154 | +* CI: Install cjson [[#6082](https://github.com/PointCloudLibrary/pcl/pull/6082)] |
| 155 | +* Update Windows x86 docker, install boost-cmake [[#6109](https://github.com/PointCloudLibrary/pcl/pull/6109)] |
| 156 | +* Update clang-tidy github action [[#6116](https://github.com/PointCloudLibrary/pcl/pull/6116)] |
| 157 | +* Update macOS on CI (macOS 12 is now unmaintained) [[#6147](https://github.com/PointCloudLibrary/pcl/pull/6147)] |
| 158 | +* CI updates [[#6153](https://github.com/PointCloudLibrary/pcl/pull/6153)] |
| 159 | +* Fix OpenMP on macOS/homebrew [[#6114](https://github.com/PointCloudLibrary/pcl/pull/6114)] |
| 160 | + |
3 | 161 | ## = 1.14.1 (03 May 2024) = |
4 | 162 |
|
5 | 163 | ### Notable changes |
|
0 commit comments