RandomSample applies a random sampling with uniform probability. Based off Algorithm A from the paper "Faster Methods for Random Sampling" by Jeffrey Scott Vitter. The algorithm runs in O(N) and results in sorted indices http://www.ittc.ku.edu/~jsv/Papers/Vit84.sampling.pdf More...
#include <random_sample.h>
Public Types | |
typedef boost::shared_ptr < const RandomSample< PointT > > | ConstPtr |
typedef boost::shared_ptr < RandomSample< PointT > > | Ptr |
Public Member Functions | |
unsigned int | getSample () |
Get the value of the internal sample parameter. | |
unsigned int | getSeed () |
Get the value of the internal seed parameter. | |
RandomSample (bool extract_removed_indices=false) | |
Empty constructor. | |
void | setSample (unsigned int sample) |
Set number of indices to be sampled. | |
void | setSeed (unsigned int seed) |
Set seed of random function. | |
Protected Member Functions | |
void | applyFilter (PointCloud &output) |
Sample of point indices into a separate PointCloud. | |
void | applyFilter (std::vector< int > &indices) |
Sample of point indices. | |
float | unifRand () |
Return a random number fast using a LCG (Linear Congruential Generator) algorithm. See http://software.intel.com/en-us/articles/fast-random-number-generator-on-the-intel-pentiumr-4-processor/ for more information. | |
Protected Attributes | |
unsigned int | sample_ |
Number of indices that will be returned. | |
unsigned int | seed_ |
Random number seed. | |
Private Types | |
typedef FilterIndices< PointT > ::PointCloud | PointCloud |
typedef PointCloud::ConstPtr | PointCloudConstPtr |
typedef PointCloud::Ptr | PointCloudPtr |
RandomSample applies a random sampling with uniform probability. Based off Algorithm A from the paper "Faster Methods for Random Sampling" by Jeffrey Scott Vitter. The algorithm runs in O(N) and results in sorted indices http://www.ittc.ku.edu/~jsv/Papers/Vit84.sampling.pdf
Definition at line 56 of file random_sample.h.
typedef boost::shared_ptr< const RandomSample<PointT> > pcl::RandomSample< PointT >::ConstPtr |
Reimplemented from pcl::FilterIndices< PointT >.
Definition at line 75 of file random_sample.h.
typedef FilterIndices<PointT>::PointCloud pcl::RandomSample< PointT >::PointCloud [private] |
Reimplemented from pcl::FilterIndices< PointT >.
Definition at line 68 of file random_sample.h.
typedef PointCloud::ConstPtr pcl::RandomSample< PointT >::PointCloudConstPtr [private] |
Reimplemented from pcl::Filter< PointT >.
Definition at line 70 of file random_sample.h.
typedef PointCloud::Ptr pcl::RandomSample< PointT >::PointCloudPtr [private] |
Reimplemented from pcl::Filter< PointT >.
Definition at line 69 of file random_sample.h.
typedef boost::shared_ptr< RandomSample<PointT> > pcl::RandomSample< PointT >::Ptr |
Reimplemented from pcl::FilterIndices< PointT >.
Definition at line 74 of file random_sample.h.
pcl::RandomSample< PointT >::RandomSample | ( | bool | extract_removed_indices = false | ) | [inline] |
Empty constructor.
Definition at line 78 of file random_sample.h.
void pcl::RandomSample< PointT >::applyFilter | ( | PointCloud & | output | ) | [protected, virtual] |
Sample of point indices into a separate PointCloud.
output | the resultant point cloud |
Implements pcl::Filter< PointT >.
Definition at line 48 of file random_sample.hpp.
void pcl::RandomSample< PointT >::applyFilter | ( | std::vector< int > & | indices | ) | [protected, virtual] |
Sample of point indices.
indices | the resultant point cloud indices |
Implements pcl::FilterIndices< PointT >.
Definition at line 93 of file random_sample.hpp.
unsigned int pcl::RandomSample< PointT >::getSample | ( | ) | [inline] |
Get the value of the internal sample parameter.
Definition at line 98 of file random_sample.h.
unsigned int pcl::RandomSample< PointT >::getSeed | ( | ) | [inline] |
Get the value of the internal seed parameter.
Definition at line 115 of file random_sample.h.
void pcl::RandomSample< PointT >::setSample | ( | unsigned int | sample | ) | [inline] |
Set number of indices to be sampled.
sample |
Definition at line 90 of file random_sample.h.
void pcl::RandomSample< PointT >::setSeed | ( | unsigned int | seed | ) | [inline] |
float pcl::RandomSample< PointT >::unifRand | ( | ) | [inline, protected] |
Return a random number fast using a LCG (Linear Congruential Generator) algorithm. See http://software.intel.com/en-us/articles/fast-random-number-generator-on-the-intel-pentiumr-4-processor/ for more information.
Definition at line 143 of file random_sample.h.
unsigned int pcl::RandomSample< PointT >::sample_ [protected] |
Number of indices that will be returned.
Definition at line 123 of file random_sample.h.
unsigned int pcl::RandomSample< PointT >::seed_ [protected] |
Random number seed.
Definition at line 125 of file random_sample.h.