40 #include <pcl/filters/boost.h>
41 #include <pcl/filters/filter_indices.h>
52 template<
typename Po
intT,
typename NormalT>
71 using Ptr = shared_ptr<NormalSpaceSampling<PointT, NormalT> >;
72 using ConstPtr = shared_ptr<const NormalSpaceSampling<PointT, NormalT> >;
76 :
sample_ (
std::numeric_limits<unsigned int>::max ())
77 ,
seed_ (static_cast<unsigned int> (time (nullptr)))
116 setBins (
unsigned int binsx,
unsigned int binsy,
unsigned int binsz)
129 getBins (
unsigned int& binsx,
unsigned int& binsy,
unsigned int& binsz)
const
143 inline NormalsConstPtr
176 findBin (
const float *normal);
184 isEntireBinSampled (boost::dynamic_bitset<> &array,
unsigned int start_index,
unsigned int length);
191 #ifdef PCL_NO_PRECOMPILE
192 #include <pcl/filters/impl/normal_space.hpp>
NormalsConstPtr getNormals() const
Get the normals computed on the input point cloud.
void setBins(unsigned int binsx, unsigned int binsy, unsigned int binsz)
Set the number of bins in x, y and z direction.
unsigned int binsx_
Number of bins in x direction.
unsigned int binsy_
Number of bins in y direction.
void getBins(unsigned int &binsx, unsigned int &binsy, unsigned int &binsz) const
Get the number of bins in x, y and z direction.
unsigned int binsz_
Number of bins in z direction.
unsigned int seed_
Random number seed.
NormalSpaceSampling samples the input point cloud in the space of normal directions computed at every...
void applyFilter(std::vector< int > &indices) override
Sample of point indices.
FilterIndices represents the base class for filters that are about binary point removal.
unsigned int sample_
Number of indices that will be returned.
shared_ptr< PointCloud< PointT > > Ptr
unsigned int getSample() const
Get the value of the internal sample parameter.
shared_ptr< Filter< PointT > > Ptr
typename PointCloud::Ptr PointCloudPtr
PointCloud represents the base class in PCL for storing collections of 3D points. ...
NormalsConstPtr input_normals_
The normals computed at each point in the input cloud.
shared_ptr< const PointCloud< PointT > > ConstPtr
void setSeed(unsigned int seed)
Set seed of random function.
void setSample(unsigned int sample)
Set number of indices to be sampled.
std::string filter_name_
The filter name.
shared_ptr< const Filter< PointT > > ConstPtr
NormalSpaceSampling()
Empty constructor.
void setNormals(const NormalsConstPtr &normals)
Set the normals computed on the input point cloud.
unsigned int getSeed() const
Get the value of the internal seed parameter.
typename PointCloud::ConstPtr PointCloudConstPtr