Point Cloud Library (PCL)
1.7.2
|
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< ApproximateVoxelGrid< PointT > > | Ptr |
typedef boost::shared_ptr< const ApproximateVoxelGrid< PointT > > | ConstPtr |
![]() | |
typedef boost::shared_ptr< Filter< PointT > > | Ptr |
typedef boost::shared_ptr< const Filter< PointT > > | ConstPtr |
typedef pcl::PointCloud< PointT > | PointCloud |
typedef PointCloud::Ptr | PointCloudPtr |
typedef PointCloud::ConstPtr | PointCloudConstPtr |
![]() | |
typedef pcl::PointCloud< PointT > | PointCloud |
typedef PointCloud::Ptr | PointCloudPtr |
typedef PointCloud::ConstPtr | PointCloudConstPtr |
typedef boost::shared_ptr< PointIndices > | PointIndicesPtr |
typedef boost::shared_ptr< PointIndices const > | PointIndicesConstPtr |
Public Member Functions | |
ApproximateVoxelGrid () | |
Empty constructor. More... | |
ApproximateVoxelGrid (const ApproximateVoxelGrid &src) | |
Copy constructor. More... | |
~ApproximateVoxelGrid () | |
Destructor. More... | |
ApproximateVoxelGrid & | operator= (const ApproximateVoxelGrid &src) |
Copy operator. More... | |
void | setLeafSize (const Eigen::Vector3f &leaf_size) |
Set the voxel grid leaf size. More... | |
void | setLeafSize (float lx, float ly, float lz) |
Set the voxel grid leaf size. More... | |
Eigen::Vector3f | getLeafSize () const |
Get the voxel grid leaf size. More... | |
void | setDownsampleAllData (bool downsample) |
Set to true if all fields need to be downsampled, or false if just XYZ. More... | |
bool | getDownsampleAllData () const |
Get the state of the internal downsampling parameter (true if all fields need to be downsampled, false if just XYZ). More... | |
![]() | |
Filter (bool extract_removed_indices=false) | |
Empty constructor. More... | |
virtual | ~Filter () |
Empty destructor. More... | |
IndicesConstPtr const | getRemovedIndices () |
Get the point indices being removed. More... | |
void | getRemovedIndices (PointIndices &pi) |
Get the point indices being removed. More... | |
void | filter (PointCloud &output) |
Calls the filtering method and returns the filtered dataset in output. More... | |
![]() | |
PCLBase () | |
Empty constructor. More... | |
PCLBase (const PCLBase &base) | |
Copy constructor. More... | |
virtual | ~PCLBase () |
Destructor. More... | |
virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
Provide a pointer to the input dataset. More... | |
PointCloudConstPtr const | getInputCloud () const |
Get a pointer to the input point cloud dataset. More... | |
virtual void | setIndices (const IndicesPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... | |
virtual void | setIndices (const IndicesConstPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... | |
virtual void | setIndices (const PointIndicesConstPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... | |
virtual void | setIndices (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols) |
Set the indices for the points laying within an interest region of the point cloud. More... | |
IndicesPtr const | getIndices () |
Get a pointer to the vector of indices used. More... | |
IndicesConstPtr const | getIndices () const |
Get a pointer to the vector of indices used. More... | |
const PointT & | operator[] (size_t pos) const |
Override PointCloud operator[] to shorten code. More... | |
Protected Types | |
typedef pcl::traits::fieldList< PointT >::type | FieldList |
Protected Member Functions | |
void | applyFilter (PointCloud &output) |
Downsample a Point Cloud using a voxelized grid approach. More... | |
void | flush (PointCloud &output, size_t op, he *hhe, int rgba_index, int centroid_size) |
Write a single point from the hash to the output cloud. More... | |
![]() | |
const std::string & | getClassName () const |
Get a string representation of the name of this class. More... | |
![]() | |
bool | initCompute () |
This method should get called before starting the actual computation. More... | |
bool | deinitCompute () |
This method should get called after finishing the actual computation. More... | |
Protected Attributes | |
Eigen::Vector3f | leaf_size_ |
The size of a leaf. More... | |
Eigen::Array3f | inverse_leaf_size_ |
Compute 1/leaf_size_ to avoid division later. More... | |
bool | downsample_all_data_ |
Set to true if all fields need to be downsampled, or false if just XYZ. More... | |
size_t | histsize_ |
history buffer size, power of 2 More... | |
struct he * | history_ |
history buffer More... | |
![]() | |
IndicesPtr | removed_indices_ |
Indices of the points that are removed. More... | |
std::string | filter_name_ |
The filter name. More... | |
bool | extract_removed_indices_ |
Set to true if we want to return the indices of the removed points. More... | |
![]() | |
PointCloudConstPtr | input_ |
The input point cloud dataset. More... | |
IndicesPtr | indices_ |
A pointer to the vector of point indices to use. More... | |
bool | use_indices_ |
Set to true if point indices are used. More... | |
bool | fake_indices_ |
If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More... | |
ApproximateVoxelGrid assembles a local 3D grid over a given PointCloud, and downsamples + filters the data.
Definition at line 100 of file approximate_voxel_grid.h.
typedef boost::shared_ptr< const ApproximateVoxelGrid<PointT> > pcl::ApproximateVoxelGrid< PointT >::ConstPtr |
Definition at line 123 of file approximate_voxel_grid.h.
|
protected |
Definition at line 231 of file approximate_voxel_grid.h.
typedef boost::shared_ptr< ApproximateVoxelGrid<PointT> > pcl::ApproximateVoxelGrid< PointT >::Ptr |
Definition at line 122 of file approximate_voxel_grid.h.
|
inline |
Empty constructor.
Definition at line 127 of file approximate_voxel_grid.h.
References pcl::Filter< PointT >::filter_name_.
|
inline |
Copy constructor.
[in] | src | the approximate voxel grid to copy into this. |
Definition at line 140 of file approximate_voxel_grid.h.
References pcl::ApproximateVoxelGrid< PointT >::history_, and pcl::ApproximateVoxelGrid< PointT >::histsize_.
|
inline |
Destructor.
Definition at line 156 of file approximate_voxel_grid.h.
References pcl::ApproximateVoxelGrid< PointT >::history_.
|
protectedvirtual |
Downsample a Point Cloud using a voxelized grid approach.
output | the resultant point cloud message |
Implements pcl::Filter< PointT >.
Definition at line 65 of file approximate_voxel_grid.hpp.
References pcl::getFieldIndex(), pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points, and pcl::PointCloud< PointT >::width.
|
protected |
Write a single point from the hash to the output cloud.
Definition at line 47 of file approximate_voxel_grid.hpp.
References pcl::PointCloud< PointT >::points.
|
inline |
Get the state of the internal downsampling parameter (true if all fields need to be downsampled, false if just XYZ).
Definition at line 213 of file approximate_voxel_grid.h.
References pcl::ApproximateVoxelGrid< PointT >::downsample_all_data_.
|
inline |
Get the voxel grid leaf size.
Definition at line 201 of file approximate_voxel_grid.h.
References pcl::ApproximateVoxelGrid< PointT >::leaf_size_.
|
inline |
Copy operator.
[in] | src | the approximate voxel grid to copy into this. |
Definition at line 166 of file approximate_voxel_grid.h.
References pcl::ApproximateVoxelGrid< PointT >::downsample_all_data_, pcl::ApproximateVoxelGrid< PointT >::history_, pcl::ApproximateVoxelGrid< PointT >::histsize_, pcl::ApproximateVoxelGrid< PointT >::inverse_leaf_size_, and pcl::ApproximateVoxelGrid< PointT >::leaf_size_.
|
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 207 of file approximate_voxel_grid.h.
References pcl::ApproximateVoxelGrid< PointT >::downsample_all_data_.
|
inline |
Set the voxel grid leaf size.
[in] | leaf_size | the voxel grid leaf size |
Definition at line 182 of file approximate_voxel_grid.h.
References pcl::ApproximateVoxelGrid< PointT >::inverse_leaf_size_, and pcl::ApproximateVoxelGrid< PointT >::leaf_size_.
Referenced by pcl::ApproximateVoxelGrid< PointT >::setLeafSize().
|
inline |
Set the voxel grid leaf size.
[in] | lx | the leaf size for X |
[in] | ly | the leaf size for Y |
[in] | lz | the leaf size for Z |
Definition at line 194 of file approximate_voxel_grid.h.
References pcl::ApproximateVoxelGrid< PointT >::setLeafSize().
|
protected |
Set to true if all fields need to be downsampled, or false if just XYZ.
Definition at line 223 of file approximate_voxel_grid.h.
Referenced by pcl::ApproximateVoxelGrid< PointT >::getDownsampleAllData(), pcl::ApproximateVoxelGrid< PointT >::operator=(), and pcl::ApproximateVoxelGrid< PointT >::setDownsampleAllData().
|
protected |
history buffer
Definition at line 229 of file approximate_voxel_grid.h.
Referenced by pcl::ApproximateVoxelGrid< PointT >::ApproximateVoxelGrid(), pcl::ApproximateVoxelGrid< PointT >::operator=(), and pcl::ApproximateVoxelGrid< PointT >::~ApproximateVoxelGrid().
|
protected |
history buffer size, power of 2
Definition at line 226 of file approximate_voxel_grid.h.
Referenced by pcl::ApproximateVoxelGrid< PointT >::ApproximateVoxelGrid(), and pcl::ApproximateVoxelGrid< PointT >::operator=().
|
protected |
Compute 1/leaf_size_ to avoid division later.
Definition at line 220 of file approximate_voxel_grid.h.
Referenced by pcl::ApproximateVoxelGrid< PointT >::operator=(), and pcl::ApproximateVoxelGrid< PointT >::setLeafSize().
|
protected |
The size of a leaf.
Definition at line 217 of file approximate_voxel_grid.h.
Referenced by pcl::ApproximateVoxelGrid< PointT >::getLeafSize(), pcl::ApproximateVoxelGrid< PointT >::operator=(), and pcl::ApproximateVoxelGrid< PointT >::setLeafSize().