|
RaspiKinect
1.0
|
#include <filter.h>
Public Member Functions | |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | removeNaNPoints (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud) |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | passThrough (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud, float min_val, float max_val) |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | voxelGrid (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud, float leaf_size) |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | statisticalOutlierRemoval (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &input, float mean, float std_dev) |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | radiusOutlineRemoval (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud, float radius, int neighbors) |
| pcl::PointCloud< pcl::PointNormal >::Ptr | removeNaNNormals (const pcl::PointCloud< pcl::PointNormal >::Ptr &cloud) |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | matrixTransform (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud, char axis, float theta, float translation, bool centroid) |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | medianFilter (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud) |
| pcl::PointCloud< pcl::PointNormal >::Ptr | movingLeastSquaresSmooth (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud) |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | movingLeastSquaresUpsample (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud) |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | applyFilters (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud, float min_val, float max_val, float leaf_size, float radius, int neighbors) |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr | bilateralFilter (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud) |
A filter class which holds many useful filters
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::applyFilters | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud, |
| float | min_val, | ||
| float | max_val, | ||
| float | leaf_size, | ||
| float | radius, | ||
| int | neighbors | ||
| ) |
Apply the selected filters to the point cloud. Modify as required.
| [in] | cloud | input point cloud |
| [in] | min_val | minimum value to apply the filter |
| [in] | max_val | maximum value to apply the filter |
| [in] | leaf_size | the size of leaf |
| [in] | radius | radius in meters |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::bilateralFilter | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud | ) |
Apply bilateral filter to the point cloud. It smoothes the point cloud while preserving edges.
| [in] | cloud | input point cloud |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::matrixTransform | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud, |
| char | axis, | ||
| float | theta, | ||
| float | translation, | ||
| bool | centroid | ||
| ) |
Apply Eigen Affine3D Matrix transformation to the point cloud.
| [in] | cloud | input point cloud |
| [in] | axis | the axis to rotate the cloud |
| [in] | theta | the angle in radians |
| [in] | translation | apply translation if needed, otherwise pass zero |
| [in] | centroid | boolean value where if true: rotate around centroid if false: rotate around origin |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::medianFilter | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud | ) |
Apply Median Filter to the point cloud
| [in] | cloud | input point cloud |
| pcl::PointCloud< pcl::PointNormal >::Ptr Filter::movingLeastSquaresSmooth | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud | ) |
Smooth Surface Normals using moving least squares algorithm. Returns a pointer to surface normals
| [in] | cloud | input point cloud |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::movingLeastSquaresUpsample | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud | ) |
Upsample the point cloud using least squares algorithm. Make sure to apply voxel grid filter first if the cloud is large.
| [in] | cloud | input point cloud |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::passThrough | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud, |
| float | min_val, | ||
| float | max_val | ||
| ) |
Apply passthrough filter to get rid of unnecessary Z values. (background removal) Even background removal is not necessary, apply the min and max values as zero to remove blank points generated from libfreenect drivers.
| [in] | cloud | input point cloud |
| [in] | min_val | minimum value to apply the filter |
| [in] | max_val | maximum value to apply the filter |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::radiusOutlineRemoval | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud, |
| float | radius, | ||
| int | neighbors | ||
| ) |
The user specifies a number of neighbors which every indice must have within a specified radius to remain in the PointCloud. For example if 1 neighbor is specified, only the yellow point will be removed from the PointCloud. If 2 neighbors are specified then both the yellow and green points will be removed from the PointCloud.
| [in] | cloud | input point cloud |
| [in] | radius | radius in meter |
| [in] | neighbors | number of neighbors required |
| pcl::PointCloud< pcl::PointNormal >::Ptr Filter::removeNaNNormals | ( | const pcl::PointCloud< pcl::PointNormal >::Ptr & | cloud | ) |
Remove NaN values from surface normals
| [in] | cloud | input point cloud |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::removeNaNPoints | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud | ) |
Remove NaN values generated by pcl algorithms.
| [in] | points | input point cloud |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::statisticalOutlierRemoval | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | input, |
| float | mean, | ||
| float | std_dev | ||
| ) |
remove noisy measurements, e.g. outliers, from a point cloud dataset using statistical analysis techniques.
| [in] | cloud | input point cloud |
| [in] | mean | the number of neighbors to analyze for each point |
| [in] | std_dev | the standard deviation multiplier |
| pcl::PointCloud< pcl::PointXYZRGB >::Ptr Filter::voxelGrid | ( | const pcl::PointCloud< pcl::PointXYZRGB >::Ptr & | cloud, |
| float | leaf_size | ||
| ) |
Apply Voxel Grid filter to downsample data without losing necessary information
| [in] | cloud | input point cloud |
| [in] | leaf_size | the size of leaf |