Releases: PointCloudLibrary/pcl
Releases · PointCloudLibrary/pcl
pcl-1.9.1
= 1.9.1 (26.11.2018) =
Modules:
Uncategorized:
- Add missing visualization section from the changelog generation. [#2634]
CMake:
- Fix development version check on DISSECT_VERSION. [#2633]
- Remove CMake policy CMP0054 setting. [#2627]
- PCLConfig.cmake - POP policy-stack before return() [#2626]
- Remove CMake config installation folder only when empty [#2622]
- Downgrade grabber dependency message level to STATUS. [#2620]
- Migrate CMake policy 0048 [#2608]
- Bump CMake minimum version to 3.1. [#2605]
- Bump version to 1.9.0-dev [#2602]
- Search in $EIGEN_ROOT first while looking for Eigen [#2592]
libpcl_visualization:
- address conflict between visualization and VTK head [#2612]
PCL Tutorials:
- Bump CMake minimum version to 3.1. [#2605]
PCL Tests:
- Refactor
SHOTEstimation
andSHOTColorEstimation
tests [#2636]
CI:
pcl-1.9.0
= 1.9.0 (06.11.2018) =
New Features:
Newly added functionalities.
- [common][visualization] Add Viridis color LUT [#2420]
- [octree] Implementation of the iterator 'OctreeLeafNodeBreadthIterator'. [#2204]
- [octree] Implementation of the iterator 'OctreeFixedDepthIterator'. [#1983]
- [ci] Enable Global Tests on Windows CI [#2137]
- [features] Add GASD global point cloud descriptor [#1652]
- [visualization] Add overload to
PCLVisualizer::addText3D()
that allows specifying text orientation [#2038] - [features] FLARELocalReferenceFrameEstimation class added [#1571]
- [surface][tools] Add new mls projection method. Deprecated
MovingLeastSquares::setPolynomialFit()
. [#1960]
Deprecated:
Deprecated code scheduled to be removed after two minor releases.
- [octree] Implementation of the iterator 'OctreeLeafNodeBreadthIterator'. [#2204]
- [common][segmentation] Provide proper EuclideanClusterComparator method depreciation. New Pragma macro. New Deprecated type. [#2096]
- [io] Add support pcl::PointXYZRGBA to pcl::VLPGrabber. Deprecate rgb signatures. [#2102]
- [surface][tools] Add new mls projection method. Deprecated
MovingLeastSquares::setPolynomialFit()
. [#1960]
Removed:
Removal of deprecated code.
- [filters][io][surface][visualization] Removal of deprecated code in filters, io, surface and visualization modules [#2077]
- [common] Remove deprecated ros headers [#2075]
- [registration] Remove registration module deprecated methods [#2076]
- [sample_consensus] Remove deprecated functions and variables from SAC module [#2071]
- [common] Removal of PCA deprecated constructor [#2070]
Behavioral changes:
Changes in the expected default behavior.
- [common] PointCloudDepthAndRGBtoXYZRGBA: initialize with the default alpha value (fix #2476) [#2533]
- [octree] Reverse octree's depth first iterator order [#2332]
- [common]
PointXYZRGBL
label
field is now default constructed to 0 [#2462] - [io] Fix PLYReader is_dense behavior [#2133]
API changes:
Changes to the API which didn't went through the proper deprecation and removal cycle.
- [octree] Implementation of the iterator 'OctreeLeafNodeBreadthIterator'. [#2204]
- [sample_consensus] Const-qualify most of the methods in SAC model classes [#2270]
- [simulation] Use GLuint rather than size_t to represent OpenGL indices. [#2238]
- [visualization] Fix access specifier in
PointCloudColorHandlerRGBAField
[#2226] - [docs] Misc. typos (cont.) [#2215]
- [octree] OctreeIterators special member revision [#2108]
- [io] Add support pcl::PointXYZRGBA to pcl::VLPGrabber. Deprecate rgb signatures. [#2102]
- [surface][tools] Add new mls projection method. Deprecated
MovingLeastSquares::setPolynomialFit()
. [#1960] - [surface] Add ability to cache mls results [#1952]
ABI changes:
Changes that cause ABI incompatibility but are still API compatible.
- [surface] Missing pcl::MovingLeastSquaresOMP declaration without /openmp [#2324]
- [common][filters][surface] Improved docstrings and error messages [#2300]
- [common] Modified
GlasbeyLUT
indexing type tosize_t
[#2297] - [octree] Implementation of the iterator 'OctreeFixedDepthIterator'. [#1983]
- [common][segmentation] Provide proper EuclideanClusterComparator method depreciation. New Pragma macro. New Deprecated type. [#2096]
- [gpu] Allow specifying decimation step in convertToTsdfCloud [#2099]
- [apps] More warning suppression in pcl apps [#2080]
- [io] Removed unused member from ply_parser [#2066]
- [filters] Fixes remove_indices in UniformSampling [#1902]
- [visualization] Add accessor for current rendering framerate in PCLVisualizer [#1974]
- [simulation] Redo: Simulation: enable returning of organized point clouds [#1687]
- [registration] Added option to specify translation and rotation convergence deltas in ICP and NDT algorithms. [#1724]
Modules:
Uncategorized:
- Change Log generation tool. Automates change log generation. [#2396]
- Compatibility reports generation script [#2410]
- Update logo [#2547]
- Never close stale issues/prs [#2400]
- Fix typos in the whole codebase [#2217]
- Fixed typo and rearragend items in the issue template [#2197]
- Change Stale daysTillClose to 100 years [#2166]
- set stale daysUntilClose to a really big number [#2162]
- Stale set up [#2101]
CMake:
- Fix checks for user-provided CXX flags [#2579]
- Fix FLANN path to lower case [#2576]
- Use pkg-config to find Flann [#2563]
- Update FindBoost versions [#2558]
- Add PCL_BUILD_WITH_QHULL_DYNAMIC_LINKING_WIN32 option [#2552]
- Fix app/CMakeLists to enable Apps under Windows [#2550]
- When configuring with WITH_DOCS, but Doxygen is not available, prevent generation. [#2516]
- CMake: Do not include test targets in PCLConfig.cmake [#2458]
- CMake Set temporarily the policy CMP0074 to OLD [#2454]
- prevent GCC flags propagating to NVCC [#2430]
- Mark visualization as an optional dependency of tools [#2439]
- Do not mark imported libraries as GLOBAL in PCLConfig [#2435]
- Intel fixes [#2432]
- Export
-march=native
for Clang and prevent it from being included during cross compilation. [#2416] - Do not search for PCL components that have been found already [#2428]
- Move SSE compiler options to
PCL_COMPILE_OPTIONS
. Expose PCL as a CMake imported target. [#2100] - Add Visual Studio compiler option /FS for Ninja build [#2414]
- Use rpath in the target's install name [#2241]
- Improve QHull finder script [#2344]
- Fix link order issue with boost [#2236]
- Mark found PCL component libraries and include dirs as advanced [#2235]
- Prevent search for disabled optional dependencies in targets. [#2229]
- Fix installation rules for ml module [#2192]
- Fix conditional...
pcl-1.8.1
ChangeList
- Replaced
make_shared
invocations on aligned allocated vars
[#1405] - Created an issue template for bug reporting
[#1637] - PCL logo image is now locally available
[#1677] - Updated the Windows all in one installer for MSVC15
[#1762] - Added compile support to VTK 7.1
[#1770] - Fixed badges markup in README.md
[#1873] - Replaced C-style
sqrtf
withstd::sqrt
[#1901]
CMake:
- Tweaks to PCL_DEFINITIONS behavior (to be deprecated in future
versions)
[#1478] - VTK directory can now be manually specified during configuration
[#1605] - Updated the find Boost cmake macro to support the latest versions plus
exported definitions now give priority to finding the same Boost version
PCL was compiled with.
[#1630] - Corrected PCL_ROOT in PCLConfig.cmake
[#1678] - Removed automatic override of VTK_LIBRARIES
[#1760] - Updated find boost versions
[#1788]
[#1855]
[#1856] - Updated CUDA compute capabilities
[#1789] - Extend linking of
delayimp.lib
to all MSVC version
[#1823] - Removal of
MSVCxx
variables
[#1830] - Fixed path link to Documents of Windows Start-Menu
[#1857] - Fixed CPack for Documents
[#1858] - Fixed bug present when Ensenso SDK path included spaces
[#1875] -D_FORCE_INLINES
definition added for CUDA targets to prevent
issues between old versions of the CUDA Toolkit and new versions
of gcc
[#1900]- Implemented new versioning scheme for PCL, employing the suffix
-dev
in between releases.
[#1905] - Corrected search paths for Eigen on Windows
[#1912] - SSE definitions are now exported and cleanup of Eigen's
definitions
[#1917] - Added support to dynamic linking against FLANN on Windows
[#1919] - Add new search path for GTest to the finder script
[#1920] - Fix discovery of PCL deployed out of install path
[#1923]
libpcl_2d:
- Removed the non-free lena-grayscale-png image :(
[#1676] - 2d library is no longer generated since it contained no symbols
[#1679]
libpcl_common:
- Changed default alpha value to 255 on all RGB(A) point types
[#1385] - Fixed an issue preventing aligned memory allocation on 32-bit Windows
systems
[#1665] - Fixed compile error on test_common on MSVC
[#1689] - Fixed parallel plane test condition on
pcl::planeWithPlaneIntersection
[#1698] - Fixed endless loop condition in
compute3DCentroid
[#1704] toPCLPointCloud2
is not resilient to an empty pointcloud input
[#1723]- Normal accumulator
normalized()
is now resilient to a 0 filled vector
[#1728] - Defined additional types in
PointCloud
to ensure STL container
compatibility
[#1741] - Aligned malloc now works on Android as well
[#1774] - Added missing include to boost shared_ptr in vertices
[#1790] - Prevent incorrect copy of adjacent point in
fromPCLPointCloud2()
[#1813] - Restored
Eigen::umeyama
for Eigen 3.3+
[#1820]
[#1887] - Fixed type in deprecation messages
[#1878] - Improved support for mingw aligned allocation
[#1904] - Added test for macro
_USE_MATH_DEFINES
to avoid warnings
[#1956]
libpcl_cuda:
- Fixed macro definitions for the Windows platform
[#1568]
libpcl_features:
- NormalEstimation[OMP] and FPFHEstimation[OMP] are now instantiated for
the same types as the non OMP variants.
[#1642] - Prevention of the addition of duplicate keys in
PFHEstimation
[#1701] - Bug fixes in OUR-CVFH
[#1827] - Fixed incorrect initialization of SHOT
[#1859]
[#1876]
libpcl_filters:
- ExtractIndices filter now aborts prematurely and prints error verbose
in case it detects an index which exceeds the size on the input data
[#1670] - Potential reduction of computational time of
ModelOutlierRemoval
[#1735] - Improved code readability in CropBox
[#1817]
libpcl_gpu:
- Added support to NVidia Pascal GPUs
[#1824] - Fixed compilation error in KinfuLS
[#1872] - Fixed CUDA architecture check
[#1872]
libpcl_io:
- RGB values are now always saved as uint32 on PCD files
[#1385] - Fixed find RealSense macro and compilation error with RealSenseGrabber
on Windows
[#1560] - Unified verbose on OctreePointCloudCompression
[#1569] - Improved performance on saving PLY, OBJ and VTK files
[#1580] - Added support to the transparency property
Tr
on pcl::MTLReader
and fixed issue with parsing of the material's properties.
[#1599] - Fixed function signature mismatch in auto_io
[#1625] - Fix
ASCIIReader::setInputFields
interface
[#1690] - Adopted pcl_isnan in test_buffers to prevent compilation problems on
MSVC12
[#1694] - Fixed incorrect laser number test condition in VLP Grabber
[#1697] - Fixed bug verbose output of compression statistics
[#1749] - Fixed a bug in the parsing of PLY headers
[#1750] - Replacement of
boost::math::isnan
bypcl_isnan
[#1766] - Binary files written by
PCDWriter
now have the same permissions
as the ASCII ones
[#1779] - Fixed ODR violation when compiling with both OpenNI and OpenNI2
[#1818] - PLYReader now also accepts the property
vertex_index
[#1847] - Fixed bug in return value of
pcl_converter
[#1903]
libpcl_keypoints:
- Fixed memory leak in
ISSKeypoint3D
[#1815]
libpcl_octree:
- Fixed unexpected octree boundaries' reduction
[#1532]
[#1906] - Fixed octree precompilation mechanism
[#1639]
[#1916] - Fixed invalid cast in
OctreePointCloudVoxelCentroid
[#1700]
`libpcl_recognit...
pcl-1.8.1rc2
Update Ensenso tutorial for Ensenso X devices
pcl-1.8.1rc1
Bump version to 1.8.1
pcl-1.8.0
pcl-1.7.2
We are proud to announce the new PCL version 1.7.2. This release incorporates more than 300 pull requests merged during the last eleven months. Together with dozens of bug fixes it brings support for VTK6 and OpenNI 2.
The most notable changes are:
- Added support for VTK6
[#363] - Removed Google Test from the source tree and added it as a system dependency
[#731] - Added support for QHull 2012 on non-Debian platforms
[#852]
libpcl_common:
- Added
BearingAngleImage
class
[#198] - Added
pcl::CPPFSignature
point type
[#296] - Added
getRGBAVector4i()
,getBGRVector3cMap()
, andgetBGRAVector4cMap()
to all point types containing RGB/RGBA fields
[#450] - Added a family of "has field" functions to check presence of a particular
field in a point type both at compile- and run-time
[#462] - Added a function to copy data between points of different types
[#465] - Added test macros for equality/nearness checks
[#499] - Added
descriptorSize()
to all point types with descriptors
[#531] - Added possibility to copy a cloud inside another one while interpolating
borders
[#567] - Added a function to determine the point of intersection of three non-parallel
planes
[#571] - Fixed a bug in HSV to RGB color conversion
[#581] - Added a new
CentroidPoint
class
[#586] - Templated intersection computation functions on scalar type
[#646] - Templated functions in 'eigen.h' on scalar type
[#660] - Added functions to transform points, vectors, lines, etc.
[#660]
libpcl_features:
- Added a simple implementation of CPPF using normalised HSV values in the
feature vector
[#296] - Added
MomentOfInertiaEstimation
andROPSEstimation
features
[#319] - Fixed a problem in
OURCVFHEstimation::computeRFAndShapeDistribution()
[#738] - Fixed undefined behavior in
OURCVFHEstimation::computeFeature()
[#811] - Fixed memory corruption error in OUR-CVFH
[#875]
libpcl_filters:
- Added a function to set the minimum number of points required for a voxel to
be used inVoxelGrid
[#434] - Added
GridMinimum
filter
[#520] - Added a morphological filter that operates on Z dimension
[#533] - Added progressive morphological filter to extract ground returns
[#574] - Added a filter to remove locally maximal points in the z dimension
[#577] - Added an approximate version of the progressive morphological filter
[#665] - Added
ModelOutlierRemoval
class that filters points in a cloud based on the
distance between model and point
[#702]
libpcl_io:
- Added experimental version of an OpenNI 2.x grabber
[#276]
[#843] - Added support for IFS file format
[#354]
[#356] - Added possibility to load
PCLPointCloud2
from OBJ files
[#363] - Fixed loading and saving of PLY files
[#510]
[#579] - Fixed race conditions in
PCDGrabber
[#582] - Fixed multi openni grabber buffer corruption
[#845] - Fixed incompatibility with Boost 1.56 in
LZFImageWriter
[#867] - Fixed a bug in
PLYReader
which lead to deformation of point clouds when
displayed inCloudViewer
orPCLVisualizer
[#879]
libpcl_kdtree:
- Fixed double memory free bug in
KdTreeFLANN
[#618]
libpcl_keypoints:
- Added a method
Keypoint::getKeypointsIndices ()
[#318] - Added keypoints based on Trajkovic and Hedley operator (2D and 3D versions)
[#409]
libpcl_octree:
- Fixed a bug in
OctreePointCloudAdjacency::computeNeighbors()
[#455] - Accelerated
OctreePointCloudAdjacency
building by disabling dynamic key
resizing
[#332] - Fixed a bug with infinite points in
OctreePointCloudAdjacency
[#723]
libpcl_people:
- Added a possibility to define a transformation matrix for people tracker
[#606]
libpcl_recognition:
- Allow PCL to be built against a system-wide installed metslib
[#299] - Fixed a bug in
ObjRecRANSAC::addModel()
[#269] - Added
LINEMOD::loadTemplates()
(useful for object recognition systems that
store templates for different objects in different files)
[#358]
libpcl_registration:
- Fixed
SampleConsensusInitialAlignment::hasConverged()
[#339] - Added
JointIterativeClosestPoint
[#344] - Made correspondence rejectors to actually work with ICP
[#419] - Added
GeneralizedIterativeClosestPoint6D
that integrates Lab color space
information into the GICP algorithm
[#491] - Fixed bugs and optimized
SampleConsensusPrerejective
[#741] - Fixed a bug in
TransformationEstimationSVDScale
[#885]
libpcl_sample_consensus:
- Unified
SampleConsensusModelNormalParallelPlane
with
SampleConsensusModelNormalPlane
to avoid code duplication
[#696]
libpcl_search:
search::KdTree
can now be used with different KdTree implementations
[#81]- Added a new interface to FLANN's multiple randomized trees for
high-dimensional (feature) searches
[#435] - Fixed a bug in the
Ptr
typdef inKdTree
[#820]
libpcl_segmentation:
- Added
GrabCut
segmentation and a show-case application for 2D
[#330] - Updated
RegionGrowingRGB::assembleRegion()
to speed up the algorithm
[#538] - Fixed a bug with missing point infinity test in
RegionGrowing
[#617] - Fixed alignment issue in
SupervoxelClustering
[#625] - Added a curvature parameter to
Region3D
class
[#653] - Fixed a minor bug in
OrganizedConnectedComponentSegmentation
[#802]
libpcl_surface:
- Fixed a bug in
EarClipping
where computation failed if all vertices have
the same x or y component
[#130] - Added support for unequal focal lengths along different axes in texture
mapping
[#352] - Speeded up bilateral upsampling
[#689] - Reduced space usage in
MovingLeastSquares
[#785]
libpcl_tracking:
- Fixed Hue distance calculation in tracking
HSVColorCoherence
[#390] - Added pyramidal KLT tracking
[#587]
libpcl_visualization:
pcl-1.7.1
pcl-1.7.0
We are proud to announce the new PCL version 1.7.
After one year of development, there have been a lot of changes:
- We welcome three new modules: outofcore, people, recognition.
- PCL moved to git and onto Github.
- We separated the PCL and ROS data types. Please read https://github.com/PointCloudLibrary/pcl/wiki/Remove-ROS on how to convert your code.
- We had a flaw in the pcd viewpoint generation. If your point clouds seem to be flipped, please read https://github.com/PointCloudLibrary/pcl/wiki/pcd-viewpoint.
- the geometry lib has been converted into header only, resulting in a ABI change.
- If you are using your own point type, you need to define PCL_NO_PRECOMPILE before including any PCL headers.
The most notable overall changes are:
libpcl_common:
- Added pcl::Intensity and pcl::Intensity8u point types
- Added pcl::RangeImageSpherical sub-class that is more suitable than pcl::RangeImage for some kinds of 360° range images (as discussed in [PCL-users] Range Image Projection)
- Added DefaultPointRepresentationpcl::Narf36 to allow pcl::Narf36 to be used with pcl::search (#915)
PCL Apps:
- Added cloud_composer app
- Added PCLModeler, with a tree view scene explorer and multiple render windows support
- Added client app for the point cloud streaming server
- Added new server app for point cloud streaming to mobile devices (pcl_openni_mobile_server)
- Added a new demo for the connected component segmentation. Includes a QT gui that allows various features to be toggled on/off.
- Added SHOT estimator wrapper using OMP
- Added openni_organized_multi_plane_segmentation to demonstrate the OrganizedMultiPlaneSegmentation class.
libpcl_recognition:
- Added a new tutorial for "libpcl_recognition" for Correspondence Grouping by Tommaso Cavallari (#666)
- Added support for .LMT file loading (which are TARed files for PCD masks and SQMMT linemod templates)
- Changes in the computation of the modality to improve performance
- Fixed a compilation error on windows; for some reason 'NULL' needs to be explicitly casted to the pointer type
- Added a model library class used for maintaining the object models to be recognized.
- Changed the interface to make it less confusing to use.
- Added a couple useful overloads for "Houg###Grouping" and "GeometricConsistencyGrouping"
- Added CRHAlignment class.
- Added Papazov HV method.
- Fixed a bug in Poisson surface reconstruction that was causing the unit test to fail
- Added option for automatic selection of number of features in extractFeature
- Added a new greedy hypotheses verification method.
- Added semi scale invariant linemod template detection
- Fixed RF search radius in "Houg###Grouping"
- Fixed some bugs in detection refinement along viewing direction
- Fixed bug in LineRGBD::computeTransformedTemplatePoints (template point cloud's width and height fields were not set)
- Converted uses of PointXYZRGB to PointXYZRGBA; converted std::cerr messages to PCL_DEBUG; minor reformatting to keep lines under 120 characters
- Fixed some bugs related to bounding box computation and computation of transformed template point clouds
- Added functionality to specify an object ID when loading templates in LineRGBD;
- Added "GeometricConsistencyGrouping" clustering class
- Added high level interface for RGBD version of linemod (not all parts are implemented yet)
- Added SSE optimizations to improve detection speed
- Added Ransac Correspondence Rejection into Houg###Grouping
- Changed method for selecting features in color gradient modality
- Added "CorrespondenceGrouping" abstract base class for correspondence grouping in pcl_recognitio
- Added cosine approximation in score computation
- Added structure for hypotheses verification methods. Base abstract class
libpcl_keypoints
- Added implementation of the Intrinsic Shape Signature keypoint detector
- fixed crash caused by setNormals() in HarrisKeypoint3D (related to #745)
libpcl_outofcore:
- Added support for PointCloud + gen LOD
- Added PointCloud2 support for outofcore queries via new "queryBBIncludes" method
- Added "copyPointCloud" support for PointCloud2 without indices
- Added feature: outofcore binary compressed pcd files to store point data on disk
- Bug fix: outofcore write buffer constant limitation fixed so outofcore_process will work with large 20M+ point TRCS data sets
- Constants for write buffer changed to 2e12 to support insertion of very large point clouds until new serialization is implemented
- Added getVoxelSideLength to octree_base for displaying of nodes in visualizer
libpcl_search:
- FlannSearch: fixed wrong typedef (::Ptr would break if FlannDistance!=flann::L2) and compiler error
- Added new option in
FlannSearch
: FLANN KMeans Tree can now be uses as the search algorithm
libpcl_visualization:
- Added specific methods to handle monochrome images represented by a PointCloud or a PointCloud
- Add area selection option to PCLVisualizer so user can get a whole area indexes
- Fix the ImageViewer shapes overlay using vtkContextItem so they now appear with transparent background
libpcl_tools:
- Added a PNG to PCD converter
libpcl_io:
- Added support for the Velodyne High Definition Laser (HDL)
- Add support for foo/bar vertex property in PLY file reading
About time
The most notable overall changes are:
PCL Tools:
- Added a tool for interfacing the marching cubes algorithms
- Added a PLY To PCD conversion tool
- Added a command line tool for transforming datasets based on their viewpoint
- Implemented feature #605: New octree visualizer example (Contributed by Raphael Favier. Thanks!)
- Updated "openni_save_image" to save both RGB and depth images as TIFF
- Added two command line tools for converting PCD data into PLY and VTK formats
- Fix for #504: Make ShapeContext and SpinImage uniform (thanks David!)
libpcl_common:
- Fixed bug #658: Compiler error: undefined reference for getEulerAngles in pcl/common (thanks Gioia!)
- Moved towards a unified "eigen.h" header that only includes the Eigen headers that we need.
- Added boost 1.48 and 1.49
- Added a default "PointRepresentation" type for "ShapeContext" (thanks Elizabeth!)
- Added a new "PlanarPolygon" class for representing 2D planar polygon regions
- Added "SetIfFieldExists" functor helper to copy data from a variable into a point field, if it exists
- Added a helper functor ("CopyIfFieldExists") for copying out specific data out of a PointT field. See "test_common.cpp" for usage examples
- Added point value initialization by default in constructors for "PointXYZI", "Normal", "PointXYZHSV", "PointXYZRGBL", and "PointXYZRGB"
- Updating transforms.hpp to ensure that point fields are copied when applying affine transform to a specific set of indices.
- Added error messages on failure of aux functions for PointCloud2, "pcl::concatenatePointCloud" and "pcl::concatenateFields"
- Fixed win32 compilation error on test_plane_intersection
- Implemented plane intersection feature (feature #644) with a related unit test
- Added kissfft library
- Bugfix of eigen22 version for smallest eigenvalue/vector
- Add specialization for pcl::RGB point type
- Intensity field accessor moved from keypoints/sift to common to be shared by others
- Fixed some valid usages of point traits (e.g. static_cast::type>(...) ) on GCC 4.4.3 by explicitly instantiating some assert template long before it should actually be needed.
- Added ESF Histogram 640 to point types
libpcl_filter:
- Added command line option "-keep" to preserve the organized data structure after a "Passthrough" filter
- Implemented feature #663: flexible comparison for conditional_removal filter (Thanks Julian!)
- Fix for bug #672: ijk grid coordinates in VoxelGrid computed differently in different functions (thanks Nicholas!)
- Fix for #572: Example "Euclidean Cluster Extraction" crashes / bug in VoxelGrid filter
- Improved performance of 3x getFieldIndex and removed dependency on pcl_io
- Fixed and implemented feature #518: VoxelGrid<> performance improvement (roughly 50+ times) (thanks Radoslaw!)
- Fixed the visual studio compilation error described in feature #614 (thanks Remus!)
- Fixed bug #674 (Elements in leaf_layout_ in VoxelGrid are not reset between calls to VoxelGrid::filter), Thanks Nicholas for the patch!
- Work on issue 614: updated the PassThrough filter to derive from FilterIndices instead of Filter
- Fix: use a makInfinite function to annihilate points in zero_padding cases
- Add new class to handle convolution in 3D space for radial basis kernel
- Modifying VoxelGridCovariance to allow for control over minimum number of points and eigen value inflation for singularity prevention.
libpcl_visualization:
- Overloaded "addRectangle" in "ImageViewer" with several useful methods that take as input 3D min-max points and organized datasets, as well as image masks to create 2D rectangles on screen
- Renamed "addBox" to "addFilledRectangle" in "ImageViewer"
- Added "addPlanarPolygon" methods for "ImageViewer" to display planar polygonal contours in the image
- Added new "addMask" methods to "ImageViewer" for displaying 2D image masks from a given "PointCloud"
- "PCLVisualizer" now has a new "addCube" method for passing {x, y, z}_{min, max} directly to the screen (thanks Jeremie!)
- Patch for two cases of mismatched new/free cases for PCL<->VTK data exchange (thanks Peter!)
- Fixed a problem with "removeLayer" which was causing shapes to flicker on screen on sequences like: "removeLayer; addShape; spinOnce"
- Added "addLine" to "ImageViewer" for displaying 2D lines
- Added "PCLVisualizer::close" to close the interactor window and "PCLVisualizer::set{Size, Position}" to set the window size and position on screen added image viewer to the docs
- Added better support for 2D image visualization (via "pcl::visualization::ImageViewer"): add/remove layers with different transparency, add 2D shapes (rectangles, circles, points, etc)
- Added "wasStopped" to "ImageViewer" to check if the window has been closed
- Fixed an issue in pcd_viewer where the PointPicking callback wasn't functioning properly
- Added "setPosition" to "pcl::visualization::ImageViewer" for allowing the image viewer to be moved somewhere else on screen
- Added two additional "addPointCloud" helpers for directly displaying "sensor_msgs::PointCloud2" data
- Added "addPointCloud" method for "sensor_msgs::PointCloud2" data (useful to bypass the conversion to XYZ for "pcd_viewer")
- Added the capability to remove a cloud when "removeShape" is called, to preserve API backward compatibility (a "PolygonMesh" is not treated as a "CloudActor" inside "PCLVisualizer")
- Fixed a bug where the scalars were not updated properly on "updatePointCloud" thus causing VTK warnings on the console
- Fixing issue #105 (PCLVisualizer::spinOnce don't work on Win32 system). Thanks Thibault and Alessio.
- Added "PointXYZRGBA" callbacks for "OpenNIGrabber" and "PCLVisualizer".
- Fixed two bugs where a segfault would occur in "addPolygonMesh" when the input cloud would be empty, as well as #563 : PCLVisualizer::addPolygonMesh crash (thanks Mourad!)
- Fixed a bug where changing the point color using "setPointCloudRenderingProperties" would not update the actor's colors on screen
- Fix for #532: "PCLVizualizer::addCoordinateSystem()" switch from "Eigen::Matrix4f" to "Eigen::Affine3f" (thanks Aurel!)
- Fix for #524: ctrl problem with pcd_viewer (thanks Mourad!)
- Adding opt in flag -use_vbos to pcl_visuzlier. It's still quite buggy, but shouldn't affect the visualizer unless this flag is passed.
- Added vtkVertexBufferObject/Mapper and moved pcl_image_canvas_source2d
- Added case handling where an actor might not have a valid viewpoint_transformation matrix resulting in a seg fault if pressing ALT+R
- Fixed bug in displaying addCoordinateSystem
- Added method to visualize intensity gradients
- Added zoom functionality for ALT + Scroll-Wheel
- Merged openni_viewer_simple with openni_viewer with all the available options except XYZI
libpcl_octree:
- Fixed bug #693 - bounding box adaption affected change detection results
- Applied patch by Robert Huitl, Issue #651, define maxVoxelCount in octree raycasting
- Fixed OSX compiler warnings
- Fixed bug #683 - octree depth changes during stream compression
- Added new octree key class
- Added bounding box checks in method isVoxelOccupiedAtPoint (octree pointcloud class)
- Removed maxKeys limit in octree key generation method
- Added range checks for integer keys in octree classes, extended octree key class
- Fixed bug #620 (octree search fails if point cloud with indices is given) in octree pointcloud class
libpcl_io:
- Added "DepthImage" signals/callbacks for "PCDGrabber"
- Support for loading TAR-ed LMT files
- Added support for TAR-PCD files for "PCDGrabber". Simply use "tar cvf file.tar *.pcd" and use "PCDGrabber" on it afterwards
- Fixed a bug in the "PointCloud" feature estimation and I/O regarding the fields "count" property
- Added a "saveVTKFile" method helper for saving "sensor_msgs::PointCloud2" data
- Added support for reading PCD ascii and binary files (binary_compressed not implemented yet!) for pcl::PointCloudEigen::MatrixXf datatypes.
- Implemented and tested a fix for feature request #558: Implement IO for PointCloud
- Adding missing openni_device files from install
- Fixed a bug in ply reader
- Fixed bug #683 - dropping empty point clouds during stream compression
- Add functions to convert between PCL and VTK data structures.
- Handle red_diffuse, blue_diffuse and green_diffuse vertex properties
- Fix bug where normals were written before RGB
- Bugfix for #627 - Wrong include path for ply header
libpcl_features:
- Fixed bug #676 in PCL Feature Search (thanks Adam!)
- Fixes compilation problem on Windows due to size_t variable in omp loop.
- Implemented feature request #661: border management in integral image normal estimation
- Fixed PFHRGBEstimation bug, thanks Luis
- Bug fix in SHOT feature, thanks wack
- Fixed a bug which caused some normals to point in the wrong direction
- Added Camera Roll histogram
- Fix bug in index used for normal selection
- Added esf feature
- Added setViewPoint functionality and useSensorOriginAsViewPoint method to reset the viewpoint
- Fixed bug #576 - CVFH respect setIndices now
- Fixed issue #550: Uninformative error in VFHEstimation (thanks David!)
- Fix #527: Bug in IntegralImageNormalEstimation (thanks Christoph!)
- Fixed #544: overflow in implicit constant conversion warnings (thanks David!)
- Modified SHOT omp so that the default computation of the reference frames
- SHOT: Fixed invalid access when keypoints have increased from the previous call.
- Setting sensor origin and orientation correctly for normal point cloud
- Fixed a bug in estimating the orientation of the normal (view point wasn't initialized in the constructor)
- Bug fix: if the cloud is not dense search for neighbours could raise an excpetion
- Bug fix: SHOT accepts only radius search
libpcl_segmentation:
- Fixed a few issues in the new segmentation classes where some comparators didn't have the appropriate "Ptr" and "ConstPtr" well defined
- Fixed a bug where poin...