pcl::ProgressiveSampleConsensus< PointT > Class Template Reference
Module sample_consensus

RandomSampleConsensus represents an implementation of the RANSAC (RAndom SAmple Consensus) algorithm, as described in: "Matching with PROSAC – Progressive Sample Consensus", Chum, O. More...

`#include <pcl/sample_consensus/prosac.h>`

Inheritance diagram for pcl::ProgressiveSampleConsensus< PointT >:

## Public Types

typedef boost::shared_ptr< ProgressiveSampleConsensus > | Ptr
typedef boost::shared_ptr< const ProgressiveSampleConsensus > | ConstPtr
Public Types inherited from pcl::SampleConsensus< PointT >
typedef boost::shared_ptr< SampleConsensus > | Ptr
typedef boost::shared_ptr< const SampleConsensus > | ConstPtr

## Public Member Functions

| ProgressiveSampleConsensus (const SampleConsensusModelPtr &model)
| PROSAC (Progressive SAmple Consensus) main constructor. More...
| ProgressiveSampleConsensus (const SampleConsensusModelPtr &model, double threshold)
| PROSAC (Progressive SAmple Consensus) main constructor. More...
bool | computeModel (int debug_verbosity_level=0)
| Compute the actual model and find the inliers. More...
Public Member Functions inherited from pcl::SampleConsensus< PointT >
| SampleConsensus (const SampleConsensusModelPtr &model, bool random=false)
| Constructor for base SAC. More...
| SampleConsensus (const SampleConsensusModelPtr &model, double threshold, bool random=false)
| Constructor for base SAC. More...
void | setSampleConsensusModel (const SampleConsensusModelPtr &model)
| Set the Sample Consensus model to use. More...
SampleConsensusModelPtr | getSampleConsensusModel () const
| Get the Sample Consensus model used. More...
virtual | ~SampleConsensus ()
| Destructor for base SAC. More...
void | setDistanceThreshold (double threshold)
| Set the distance to model threshold. More...
double | getDistanceThreshold ()
| Get the distance to model threshold, as set by the user. More...
void | setMaxIterations (int max_iterations)
| Set the maximum number of iterations. More...
int | getMaxIterations ()
| Get the maximum number of iterations, as set by the user. More...
void | setProbability (double probability)
| Set the desired probability of choosing at least one sample free from outliers. More...
double | getProbability ()
| Obtain the probability of choosing at least one sample free from outliers, as set by the user. More...
virtual bool | refineModel (const double sigma=3.0, const unsigned int max_iterations=1000)
| Refine the model found. More...
void | getRandomSamples (const boost::shared_ptr< std::vector< int > > &indices, size_t nr_samples, std::set< int > &indices_subset)
| Get a set of randomly selected indices. More...
void | getModel (std::vector< int > &model)
| Return the best model found so far. More...
void | getInliers (std::vector< int > &inliers)
| Return the best set of inliers found so far for this model. More...
void | getModelCoefficients (Eigen::VectorXf &model_coefficients)
| Return the model coefficients of the best model found so far. More...

## Additional Inherited Members

Protected Member Functions inherited from pcl::SampleConsensus< PointT >
double | rnd ()
| Boost-based random number generator. More...
Protected Attributes inherited from pcl::SampleConsensus< PointT >
SampleConsensusModelPtr | sac_model_
| The underlying data model used (i.e. More...
std::vector< int > | model_
| The model found after the last computeModel () as point cloud indices. More...
std::vector< int > | inliers_
| The indices of the points that were chosen as inliers after the last computeModel () call. More...
Eigen::VectorXf | model_coefficients_
| The coefficients of our model computed directly from the model found. More...
double | probability_
| Desired probability of choosing at least one sample free from outliers. More...
int | iterations_
| Total number of internal loop iterations that we've done so far. More...
double | threshold_
| Distance to model threshold. More...
int | max_iterations_
| Maximum number of iterations before giving up. More...
boost::mt19937 | rng_alg_
| Boost-based random number generator algorithm. More...
boost::shared_ptr< boost::uniform_01< boost::mt19937 > > | rng_
| Boost-based random number generator distribution. More...

## Detailed Description

### template<typename PointT>
class pcl::ProgressiveSampleConsensus< PointT >

RandomSampleConsensus represents an implementation of the RANSAC (RAndom SAmple Consensus) algorithm, as described in: "Matching with PROSAC – Progressive Sample Consensus", Chum, O.

and Matas, J.G., CVPR, I: 220-226 2005.

Author
  Vincent Rabaud

Definition at line 56 of file prosac.h.

## Member Typedef Documentation

template<typename PointT >

typedef boost::shared_ptr<const ProgressiveSampleConsensus> pcl::ProgressiveSampleConsensus< PointT >::ConstPtr

Definition at line 62 of file prosac.h.

template<typename PointT >

typedef boost::shared_ptr<ProgressiveSampleConsensus> pcl::ProgressiveSampleConsensus< PointT >::Ptr

Definition at line 61 of file prosac.h.

## Constructor & Destructor Documentation

template<typename PointT >

pcl::ProgressiveSampleConsensus< PointT >::ProgressiveSampleConsensus | ( | const SampleConsensusModelPtr & | model | ) |

inline

PROSAC (Progressive SAmple Consensus) main constructor.

Parameters

  [in] | model | a Sample Consensus model

Definition at line 76 of file prosac.h.

References pcl::SampleConsensus< PointT >::max_iterations_.

template<typename PointT >

pcl::ProgressiveSampleConsensus< PointT >::ProgressiveSampleConsensus | ( | const SampleConsensusModelPtr & | model,
|  | double | threshold
| ) |  |

inline

PROSAC (Progressive SAmple Consensus) main constructor.

Parameters

  [in] | model | a Sample Consensus model
  [in] | threshold | distance to model threshold

Definition at line 87 of file prosac.h.

References pcl::ProgressiveSampleConsensus< PointT >::computeModel(), and pcl::SampleConsensus< PointT >::max_iterations_.

## Member Function Documentation

template<typename PointT >

bool pcl::ProgressiveSampleConsensus< PointT >::computeModel | ( | int | debug_verbosity_level = `0` | ) |

virtual

Compute the actual model and find the inliers.

Parameters

  [in] | debug_verbosity_level | enable/disable on-screen debug information and set the verbosity level

Implements pcl::SampleConsensus< PointT >.

Definition at line 54 of file prosac.hpp.

Referenced by pcl::ProgressiveSampleConsensus< PointT >::ProgressiveSampleConsensus().

The documentation for this class was generated from the following files:

- /build/pcl-0nnAvv/pcl-1.7.2/sample_consensus/include/pcl/sample_consensus/prosac.h
- /build/pcl-0nnAvv/pcl-1.7.2/sample_consensus/include/pcl/sample_consensus/impl/prosac.hpp