Contents
- 0.3.1 ()
- 0.3.0 (2010-09-05)
- 0.2.9 (2010-08-27)
- 0.2.8 (2010-08-24)
- 0.2.7 (2010-08-19)
- 0.2.6 (2010-08-17)
- 0.2.5 (2010-08-14)
- 0.2.4 (2010-08-10)
- 0.2.3 (2010-08-02)
- 0.2.2 (2010-08-02)
- 0.2.1 (2010-07-25)
- 0.2.0 (2010-07-24)
- 0.1.9 (2010-06-28)
- 0.1.8 (2010-05-24)
- 0.1.7 (2010-05-13)
- 0.1.6 (2010-05-01)
- 0.1.5 (2010-04-22)
- 0.1.4 (2010-04-21)
- 0.1.3 (2010-04-15)
- 0.1.2 (2010-04-05)
- 0.1.1 (2010-03-29)
- 0.1.0 (2010-03-10)
0.3.1 ()
0.3.0 (2010-09-05)
- [pcl_tf] Added function to just transform a point cloud using an Eigen matrix.
[pcl] VectorAverage uses fast spezialized PCA method now for dimension=3
[pcl] new version of VoxelGrid filter that downsamples data faster and doesn't use as much memory (the previous version could easily cause std::bad_alloc exceptions)
[pcl] fixed a major bug where: 1) PointCloud2 structures were being sent with extra unusued (padding) data (i.e., directly copied from pcl::PointCloud<T>); 2) writing PCD files in binary mode resulted in corrupted files (r32303)
[pcl] fixed a bug where the fields were not cleared on pcl::getFields (pcl::PointCloud<T>) (r32293)
- [pcl] fixed a bug where PCDWriter was writing to the same file instead of creating new ones
- [pcl] improvements in non linear registration (reduced the number of estimates from 7 to 6, SSE optimizations, etc)
[pcl] reduced the number of operations for covariance matrix estimation from 18*N to 10*N+3 => big speedup increase together with pcl::eigen33 !
- [pcl_visualization] fixed a bug where NaN values invalidated certain color handlers
- [pcl] Big patch for PCL to work with Eigen3. Fixed alignment issues for Sample Consensus models. Added a faster (experimental) eigen decomposition method from Eigen3 trunk.
- [eigen3] added Eigen3 library
- [pcl] fixed a bug where the axis_ was not properly aligned on 32bit architectures thus causing an assert
- [pcl] Added ICP functionalities to range image, add new helper functions header file_io, minor fixes.
- [pcl_visualization] Range image example uses viewpoint information from file now
0.2.9 (2010-08-27)
[pcl] added copyPointCloud (sensor_msgs::PointCloud2 &in, indices, sensor_msgs::PointCloud2 &out)
- [pcl_visualization] fixed a bug in PCLVisualizer where NULL scalars were causing a segfault
- [pcl_ros] changed the default max queue size to 3
- [pcl_ros] added implementations for approximate time synchronizers
[pcl_ros] ExtractPolygonalPrismData can now rotate the hull in the point cloud frame using TF
- [pcl_tf] transforms.cpp add missing out.header.frame_id = target_frame;
- [laser_scan_geometry] Max range handling from Hokuyo should work properly now.
0.2.8 (2010-08-24)
- [pcl] added a Huber kernel to LM optimization
- [pcl_visualization] scale the colors lookup table to the color handler limits (31942)
- [pcl] fixed a bug where the order of setInputCloud and setPointRepresentation triggered an assert condition (31938)
- [pcl] added a Sample Consensus model for outlier rejection during ICP-like registration
- [pcl] added implementations of the intensity-domain spin image and Rotation Invariant Feature Transform, as described in "A sparse texture representation using local affine regions," by Lazebnik et al. (PAMI 2005).
- [pcl] added a templated N-dimensional histogram point type
- [pcl_visualization] fixed a bug where the screenshot function was not using the last updated screen
- [pcl_visualization] addPointCloudPrincipalCurvatures renders the principal curvatures of a point cloud on screen + set color properties
- [pcl] Updated code to work with point wrapper registration.
0.2.7 (2010-08-19)
- [pcl_visualization] fixed a silly X11 include bug, where Bool was defined globally therefore breaking BOOST_FOREACH
[pcl_tutorials] added a tutorial for online PointCloud2 message viewing
- [pcl_visualization] added font size property setter for text actors
- [pcl_visualization] new PCLVisualizer::addText method for adding texts to screen (r31822)
- [pcl] work on improving the VFH signatures (changed the signature from 263 to 308, added distances)
- [pcl_visualization] implemented window position ordering and range min/max for PCLHistogramVisualizer (r31805)
- [pcl_visualization] implemented a basic histogram visualizer for multi-dimensional count=1 features (e.g., VFH)
- [pcl] SSE improvements in *PFHEstimation
- [pcl] more SSE improvements in computeCentroid, computeCovarianceMatrix, etc
- [pcl] several improvements regarding SSE optimizations in SACModelPlane
- [pcl] make all data points that deal with XYZ SSE aligned (31780)
0.2.6 (2010-08-17)
- [pcl] fixed another bug where internal matrices were not always cleared in FPFH/VFH estimation
- [pcl_ros] fixed a bug where SACSegmentation was accepting two parameters with the same name (distance_threshold vs model_threshold)
- [pcl_visualization] added lookup table to the renderer
- [cminpack] enabled shared library by default
- [pcl] fixed a few bugs regarding sizeof(PointT)=16 for demeanPointCloud (r31762)
- [pcl] fixed a grave bun in FPFHOMP/VFH estimation where the matrices were not correctly initialized on consequent runs (r31757)
- [pcl_ros] disable empty data publishing in PCDReader
- [pcl] introduced PCL exceptions, and added checks for conversion and cloud.at (u, v) operations
0.2.5 (2010-08-14)
- [pcl] added a convenience method in pcl::io::loadPCDFileHeader for loading up files fast and checking their fields, data types and sizes, etc (r31740)
- [pcl] added implementation of the Sample Consensus Initial Alignment (SAC-IA) algorithm described in "Fast Point Feature Histograms (FPFH) for 3D Registration," Rusu et al., (ICRA 2009)
[pcl] moved the estimateRigidTransformationSVD methods out of IterativeClosestPoint and made them static functions defined in registration.h.
- [pcl_visualization] fixed the minmax color handler visualization (r31710)
- [pcl_visualization] new addPointCloud convenience method for geometry handlers + bugfix in pcd_viewer (the last field was added twice as a color handler when more than one geometry handler was available)
[pcl_ros] grave bug fixed in PointCloudConcatenateFieldsSynchronizer where data was not correctly copied (r31708)
- [pcl_ros] PCDReader nodelet uses a latched topic to publish data
- [pcl_visualization] addPointCloudNormals displays surface normals on screen (PCLVisualizer)
- [pcl_visualization] added -normals and -normals_scale options to pcd_viewer
0.2.4 (2010-08-10)
- pairwise registration tutorial now has on-screen visualization (r31698)
new laser scan geometry for LaserScan->PointCloud2 conversion
added general purpose transformation routines for sensor_msgs::PointCloud2 using TF (r31678)
- added basic shapes (line, sphere, cylinder, polygon, etc), split rendering properties for shapes and point clouds (r31665)
- fixed a few bugs regarding fields.count
small bug fix where triples on the parameter server didn't match with the value in dynamic reconfigure (VoxelGrid)
added a convenience method for conversion from PointCloud2 (xyz) to Eigen format
- added a method to get the radius of a circumscribed circle
- added methods for saving/loading camera parameters in PCL Visualizer (c, j, -cam)
- added -multiview to pcd_viewer; PCLVisualizer can now create and use different viewports (r31600)
0.2.3 (2010-08-02)
- tiny bug fixes for cturtle
0.2.2 (2010-08-02)
- work to improve the PCL Visualization package, standalone pcd_visualizer completed
- added cloud(u,v) accessors for organized datasets.
- added constrained implementations (maximum distance between correspondences) for registration methods
- added PCD file format v.6 which includes field count (r31367)
added a PointRepresentation class for spatial search methods that allows the user to specify what dimensions are important
- added a maximum distance threshold for point correspondences in registration
fixed IterativeClosestPoint registration, added a L1 kernel to icp_nl, and unit tests (31283)
- added a new segmentation method for obtaining the differences between two point clouds (r31281)
0.2.1 (2010-07-25)
- test build fixes
- made BAGReader inherit directly from nodelet::Nodelet
0.2.0 (2010-07-24)
- added PCL_ROS package for all PCL_ROS interactions. Moved all nodelets and all ROS specific interfaces from PCL to PCL_ROS.
- moved vectorAverage to common
- added class to calculate transformation from corresponding points to common
- added index remapping for the kdtrees so that NAN points are automatically ignored.
- Split kdtrees in h and hpps
- Added some new functionality to range images and fixed bugs in creation process.
- separated the PCL tutorials from the library into a separate package (pcl_tutorials)
- added a PCD Visualizer and implemented several point cloud visualization techniques (handlers) for geometry and color
added getFieldsList (PCL/io) for a pcl::PointCloud
- added VTK as a dependency for visualization in an attempt to be compatible with older Linux distributions
0.1.9 (2010-06-28)
- added radius search for organized_data
- fixed some bugs in the range image class
- structural changes in range images related classes
- split point_types.h in point_types.h and point_types.hpp and added output operators for all points
- Added angles.h, norms.h, time.h, transform.h and common_headers.h (which includes all the others) to provide some basic functions for convenience.
- Added border_extraction for range images
- Added vectorAverage to features, which calculates mean and covariance matrix incrementally without storing added points.
- Added macros.h, which provides some basic macros for convenience.
- added an initial PCL Visualizer implementation
- replaced rosrecord with rosbag for all PCL tools
- added cluster_max size to Euclidean Clustering (r30210)
- adding cylinder direction axis constraints + sphere min/max radius constraints for model segmentation (r30195)
- fixed a grave bug which was preventing objects containing ANN trees to be used in multiple threads (r30194)
- fixed a bug where patches for ANN 1.1.2 were not applied correctly (r30193)
- all nodelets now have use_indices and max_queue_size checked at startup via PCLNodelet base class
- switched from rosrecord to the rosbag API for BAGReader
- enable max_queue_size parameter (default to 1) for all nodelets
- set the indices/distances to 0 if the search failed for ANN trees (r30130)
- PCD reader fix when an invalid file name is given (r30004)
- added range image class (r29971)
- added axis and eps_angle as ROS parameters for segmentation (r29938)
- setting the maximum number of clusters that are to be published via max_clusters (r29935)
- fixed a grave bug where SACModelOrientedPlane was performing an infinite loop inside selectWithinDistance (r29934)
0.1.8 (2010-05-24)
- simplified API in point_cloud_converter
- new general purpose 3D point in 2D polygon check method (r29645)
- added a getPointsInBox() method
- fixed a bug where some points were not considered as being part of the polygonal prism due to polygonal bound checking errors (r29597)
- added a PointXYZI type to represent intensity data.
- updating flann to 1.5_pre2 (r29549)
added MovingLeastSquares tutorial (r29539)
0.1.7 (2010-05-13)
getMinMax3D<T> methods now reside in common
fixed a major bug in VoxelGrid where centroids were not initialized correctly
fixed a bug where NdCopyEigenPointFunctor and NdCopyPointEigenFunctor were given incorrect values
- reorganizing the library for faster compilation
- fix for linker errors when linking together multiple translation units that include the same point type registration. Static tag name strings would be defined more than once. #4071 (r29435)
0.1.6 (2010-05-01)
added parameter sets for Filter, VoxelGrid, ExtractIndices (r29229)
- refactorized the dynamic reconfigure parametrization for nodelets
- added tutorial/sample for cylinder segmentation via SAC (r29224)
- introduced bad model handling in the sample consensus loop (r29218)
- added the field name to the dynamic reconfigure parameter list for Filters (r29211)
- improved NaN handling in kdtrees (r29204)
fixed a bug where PassThrough was incorrectly declared as a nodelet (r29202)
- added tutorial/sample for the ConvexHull2D algorithm (r29198)
- added set/get radius limits (to be extended), implemented radius limits for cylinder models, and better RANSAC model checking (r29194)
- default input topic on pointcloud_to_pcd changed from "tilt_laser_cloud" to "input" (r29137)
- CMakeLists split into individual files for better organization
- fixed a couple of boost linking errors on some machines
- transformed point_cloud_converter from a node into a library+node so it can be reused elsewhere
- added a command line tool for concatenating PCD files (r29035)
- added an implementation of the Viewpoint Feature Histogram (VFH) (r29032)
0.1.5 (2010-04-22)
added tutorial/sample for the ExtractIndices filter (r28990)
added tutorial/sample for the VoxelGrid filter (r28986)
added tutorial/sample for the StatisticalOutlierRemoval filter (r28985)
- added templated version of loadPCDFile (r28978) and PCDReader::read
added unit tests for the StatisticalOutlierRemoval filter (r28971)
added unit tests for the ProjectInliers filter (r28970)
added unit tests for the VoxelGrid filter (r28969)
added negative limits and fixed a bug where the centroid was not correctly initialized in VoxelGrid (r28967)
added unit tests for the PassThrough filter (r28966)
added unit tests for PCL filters: RadiusOutlierRemoval and ExtractIndices (r28961)
- added extra unit tests for concatenate points/fields (r28959)
- added tutorial/sample code for BAGReader (r28955)
0.1.4 (2010-04-21)
- added a few nodelet tests (talker, listener, pingpong)
- added unit tests for BAGReader (r28924)
- added an implementation for BAGReader (r28922)
- added unit tests for PCDReader/PCDWriter
- fixed a few bugs where certain include headers were not exposed properly
- added an implementation of a statistical outlier removal filter (r28886)
- added an implementation of radius outlier removal filter (r28878)
- fixed a bug (#3378) where the output file name in several tools was incorrect (r28858)
- added an implementation of non-linear ICP (28854)
- fixed a bug where the min/max estimation was incorrect for sensor_msgs/PointCloud2 types in voxel_grid (r28846)
0.1.3 (2010-04-15)
- final transformation is now accessible after registration (r28797)
- added filter_limit_negative to switch between inside/outside interval (r28796)
added =/+= operator to PointCloud<PointT> (r28795)
- added a set of tutorials for IO, Segmentation, Filtering
- fixed a very ugly bug regarding covariance matrices having 0 elements (r28789)
IterativeClosestPoint tested and works (r28706)
- added set/get maximum distance for organized data index and virtualized the ANN radiusSeach (r28705)
- added demeaning methods to registration/transforms.h
- updated ANN library to 0.1.2
fixed a major bug in ExtractPolygonalPrismData where distances were incorrectly checked
added plane normal flip via viewpoint to ExtractPolygonalPrismData
- added axis and eps_angle (set/get) to SACSegmentationFromNormals
added methods for transforming PointCloud datasets containing normals
0.1.2 (2010-04-05)
- added a first draft implementation of tf_pcl
- added missing descriptions to PCL nodelets list
- fixed a few bugs in voxel_grid where the offset was not incremented correctly (r28559)
- added a new passthrough filter
- fixed a few bugs regarding Eigen/Boost's make_shared (r28551)
- solved numerical instability issue in MLS, preferred the solution using doubles over the one using SVD (r28502). MLS works great now.
- simplified the registration API (still in progress)
- changed point_cloud_converter to accept 2 input and 2 output topics, thus fixing the "subscribe when nothing is being published" problem (r28540)
0.1.1 (2010-03-29)
fixed a very nasty bug in VoxelGrid where leaves were not properly initialized (r28404)
- fixed extractEuclideanClusters (was not working correctly)
- added min/max height for polygonal prism data extraction (r28325)
- added a bag_to_pcd tool that doesn't need ROS to convert BAG files to PCD (r28469)
- fixed a bug where PCL classes couldn't be used unless ros::init was called first
- classes now inherit from PCLNodelet and PCLBase
- setInputCloud and setIndices are defined in PCLBase now, and used everywhere
- fixed a bug where kdtree structures were incorrectly created
- added get/set helper methods everywhere
PointCloud2 structures can now contain NaN (Not a Number) values, so extra checks have been added in a lot of places
- added new distance methods to sample consensus models
- removed ROS_DEBUG statements in the feature constructors
indices can now be set via pcl::PointIndices too
- fixed a bug where the surface was not getting re-initialized in Feature (r28405)
- added explicit checks for invalid covariance matrices (r28306)
- fixed a bug where indices are created to mimic the input point cloud data but never reset (r28306)
- cleaned the C++ API documentation
- initial MLS port (untested)
0.1.0 (2010-03-10)
- initial release






