Point Cloud Library (PCL)
1.3.1
|
ApproximateVoxelGrid assembles a local 3D grid over a given PointCloud, and downsamples + filters the data. More...
#include <pcl/filters/approximate_voxel_grid.h>
Public Types | |
typedef boost::shared_ptr < Filter< PointT > > | Ptr |
typedef boost::shared_ptr < const Filter< PointT > > | ConstPtr |
Public Member Functions | |
ApproximateVoxelGrid () | |
Empty constructor. | |
virtual | ~ApproximateVoxelGrid () |
Destructor. | |
void | setLeafSize (const Eigen::Vector3f &leaf_size) |
Set the voxel grid leaf size. | |
void | setLeafSize (float lx, float ly, float lz) |
Set the voxel grid leaf size. | |
Eigen::Vector3f | getLeafSize () |
Get the voxel grid leaf size. | |
void | setDownsampleAllData (bool downsample) |
Set to true if all fields need to be downsampled, or false if just XYZ. | |
bool | getDownsampleAllData () |
Get the state of the internal downsampling parameter (true if all fields need to be downsampled, false if just XYZ). | |
IndicesConstPtr const | getRemovedIndices () |
Get the point indices being removed. | |
void | setFilterFieldName (const std::string &field_name) |
Provide the name of the field to be used for filtering data. | |
std::string const | getFilterFieldName () |
Get the name of the field used for filtering. | |
void | setFilterLimits (const double &limit_min, const double &limit_max) |
Set the field filter limits. | |
void | getFilterLimits (double &limit_min, double &limit_max) |
Get the field filter limits (min/max) set by the user. | |
void | setFilterLimitsNegative (const bool limit_negative) |
Set to true if we want to return the data outside the interval specified by setFilterLimits (min, max). | |
void | getFilterLimitsNegative (bool &limit_negative) |
Get whether the data outside the interval (min/max) is to be returned (true) or inside (false). | |
bool | getFilterLimitsNegative () |
void | filter (PointCloud &output) |
Calls the filtering method and returns the filtered dataset in output. |
ApproximateVoxelGrid assembles a local 3D grid over a given PointCloud, and downsamples + filters the data.
The ApproximateVoxelGrid class creates a *3D voxel grid* (think about a voxel grid as a set of tiny 3D boxes in space) over the input point cloud data. Then, in each *voxel* (i.e., 3D box), all the points present will be approximated (i.e., *downsampled*) with their centroid. This approach is a bit slower than approximating them with the center of the voxel, but it represents the underlying surface more accurately.
typedef boost::shared_ptr< const Filter<PointT> > pcl::Filter::ConstPtr [inherited] |
typedef boost::shared_ptr< Filter<PointT> > pcl::Filter::Ptr [inherited] |
pcl::ApproximateVoxelGrid::ApproximateVoxelGrid | ( | ) | [inline] |
Empty constructor.
Definition at line 130 of file approximate_voxel_grid.h.
virtual pcl::ApproximateVoxelGrid::~ApproximateVoxelGrid | ( | ) | [inline, virtual] |
Destructor.
Definition at line 138 of file approximate_voxel_grid.h.
void pcl::Filter::filter | ( | PointCloud & | output | ) | [inline, inherited] |
Calls the filtering method and returns the filtered dataset in output.
output | the resultant filtered point cloud dataset |
Reimplemented in pcl::FilterIndices.
bool pcl::ApproximateVoxelGrid::getDownsampleAllData | ( | ) | [inline] |
Get the state of the internal downsampling parameter (true if all fields need to be downsampled, false if just XYZ).
Definition at line 177 of file approximate_voxel_grid.h.
std::string const pcl::Filter::getFilterFieldName | ( | ) | [inline, inherited] |
void pcl::Filter::getFilterLimits | ( | double & | limit_min, |
double & | limit_max | ||
) | [inline, inherited] |
void pcl::Filter::getFilterLimitsNegative | ( | bool & | limit_negative | ) | [inline, inherited] |
bool pcl::Filter::getFilterLimitsNegative | ( | ) | [inline, inherited] |
Eigen::Vector3f pcl::ApproximateVoxelGrid::getLeafSize | ( | ) | [inline] |
Get the voxel grid leaf size.
Definition at line 165 of file approximate_voxel_grid.h.
IndicesConstPtr const pcl::Filter::getRemovedIndices | ( | ) | [inline, inherited] |
void pcl::ApproximateVoxelGrid::setDownsampleAllData | ( | bool | downsample | ) | [inline] |
Set to true if all fields need to be downsampled, or false if just XYZ.
downsample | the new value (true/false) |
Definition at line 171 of file approximate_voxel_grid.h.
void pcl::Filter::setFilterFieldName | ( | const std::string & | field_name | ) | [inline, inherited] |
void pcl::Filter::setFilterLimits | ( | const double & | limit_min, |
const double & | limit_max | ||
) | [inline, inherited] |
void pcl::Filter::setFilterLimitsNegative | ( | const bool | limit_negative | ) | [inline, inherited] |
void pcl::ApproximateVoxelGrid::setLeafSize | ( | const Eigen::Vector3f & | leaf_size | ) | [inline] |
Set the voxel grid leaf size.
leaf_size | the voxel grid leaf size |
Definition at line 146 of file approximate_voxel_grid.h.
void pcl::ApproximateVoxelGrid::setLeafSize | ( | float | lx, |
float | ly, | ||
float | lz | ||
) | [inline] |
Set the voxel grid leaf size.
lx | the leaf size for X |
ly | the leaf size for Y |
lz | the leaf size for Z |
Definition at line 158 of file approximate_voxel_grid.h.