pcl::cuda::MultiRandomSampleConsensus< Storage > Class Template Reference

RandomSampleConsensus represents an implementation of the RANSAC (RAndom SAmple Consensus) algorithm, as described in: "Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography", Martin A. More...

`#include </build/pcl-rK6aXX/pcl-1.12.1+dfsg/cuda/sample_consensus/include/pcl/cuda/sample_consensus/multi_ransac.h>`

Inheritance diagram for pcl::cuda::MultiRandomSampleConsensus< Storage >:

## Public Member Functions

| MultiRandomSampleConsensus (const SampleConsensusModelPtr &model)
| RANSAC (RAndom SAmple Consensus) main constructor. More...
| MultiRandomSampleConsensus (const SampleConsensusModelPtr &model, double threshold)
| RANSAC (RAndom SAmple Consensus) main constructor. More...
bool | computeModel (int debug_verbosity_level=0)
| Compute the actual model and find the inliers. More...
void | setMinimumCoverage (float percent)
| how much (in percent) of the point cloud should be covered? If it is not possible to find enough planes, it will stop according to the regular ransac criteria More...
void | setMaximumBatches (int max_batches)
| Sets the maximum number of batches that should be processed. More...
void | setIerationsPerBatch (int iterations_per_batch)
| Sets the maximum number of batches that should be processed. More...
std::vector< IndicesPtr > | getAllInliers ()
std::vector< int > | getAllInlierCounts ()
std::vector< float4 > | getAllModelCoefficients ()
| Return the model coefficients of the best model found so far. More...
std::vector< float3 > | getAllModelCentroids ()
| Return the model coefficients of the best model found so far. More...
Public Member Functions inherited from pcl::cuda::SampleConsensus< Storage >
| SampleConsensus (const SampleConsensusModelPtr &model)
| Constructor for base SAC. More...
| SampleConsensus (const SampleConsensusModelPtr &model, float threshold)
| Constructor for base SAC. More...
virtual | ~SampleConsensus ()
| Destructor for base SAC. More...
void | setDistanceThreshold (float threshold)
| Set the distance to model threshold. More...
float | 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 (float probability)
| Set the desired probability of choosing at least one sample free from outliers. More...
float | getProbability ()
| Obtain the probability of choosing at least one sample free from outliers, as set by the user. More...
void | getModel (Indices &model)
| Return the best model found so far. More...
IndicesPtr | getInliers ()
| Return the best set of inliers found so far for this model. More...
IndicesPtr | getInliersStencil ()
void | getModelCoefficients (Coefficients &model_coefficients)
| Return the model coefficients of the best model found so far. More...

## Additional Inherited Members

Public Types inherited from pcl::cuda::SampleConsensus< Storage >
using | Coefficients = typename Storage< float >::type
using | CoefficientsPtr = shared_ptr< Coefficients >
using | CoefficientsConstPtr = shared_ptr< const Coefficients >
using | Ptr = shared_ptr< SampleConsensus >
using | ConstPtr = shared_ptr< const SampleConsensus >
Protected Attributes inherited from pcl::cuda::SampleConsensus< Storage >
SampleConsensusModelPtr | sac_model_
| The underlying data model used (what is it that we attempt to search for). More...
Indices | model_
| The model found after the last computeModel () as point cloud indices. More...
IndicesPtr | inliers_
| The indices of the points that were chosen as inliers after the last call. More...
IndicesPtr | inliers_stencil_
Coefficients | model_coefficients_
| The coefficients of our model computed directly from the model found. More...
float | 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...
float | threshold_
| Distance to model threshold. More...
int | max_iterations_
| Maximum number of iterations before giving up. More...

## Detailed Description

### template<template< typename > class Storage>
class pcl::cuda::MultiRandomSampleConsensus< Storage >

RandomSampleConsensus represents an implementation of the RANSAC (RAndom SAmple Consensus) algorithm, as described in: "Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography", Martin A.

Fischler and Robert C. Bolles, Comm. Of the ACM 24: 381–395, June 1981.

Author
  Radu Bogdan Rusu

Definition at line 55 of file multi_ransac.h.

## Constructor & Destructor Documentation

## MultiRandomSampleConsensus() [1/2]

template<template< typename > class Storage>

pcl::cuda::MultiRandomSampleConsensus< Storage >::MultiRandomSampleConsensus | ( | const SampleConsensusModelPtr & | model | ) |

inline

RANSAC (RAndom SAmple Consensus) main constructor.

Parameters

  model | a Sample Consensus model

Definition at line 79 of file multi_ransac.h.

References pcl::cuda::SampleConsensus< Storage >::max_iterations_.

## MultiRandomSampleConsensus() [2/2]

template<template< typename > class Storage>

pcl::cuda::MultiRandomSampleConsensus< Storage >::MultiRandomSampleConsensus | ( | const SampleConsensusModelPtr & | model,
|  | double | threshold
| ) |  |

inline

RANSAC (RAndom SAmple Consensus) main constructor.

Parameters

  model | a Sample Consensus model
  threshold | distance to model threshold

Definition at line 93 of file multi_ransac.h.

References pcl::cuda::SampleConsensus< Storage >::max_iterations_.

## Member Function Documentation

## computeModel()

template<template< typename > class Storage>

bool pcl::cuda::MultiRandomSampleConsensus< Storage >::computeModel | ( | int | debug_verbosity_level = `0` | ) |

virtual

Compute the actual model and find the inliers.

Parameters

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

Implements pcl::cuda::SampleConsensus< Storage >.

## getAllInlierCounts()

template<template< typename > class Storage>

std::vector<int> pcl::cuda::MultiRandomSampleConsensus< Storage >::getAllInlierCounts | ( |  | ) |

inline

Definition at line 142 of file multi_ransac.h.

## getAllInliers()

template<template< typename > class Storage>

std::vector<IndicesPtr> pcl::cuda::MultiRandomSampleConsensus< Storage >::getAllInliers | ( |  | ) |

inline

Definition at line 139 of file multi_ransac.h.

## getAllModelCentroids()

template<template< typename > class Storage>

std::vector<float3> pcl::cuda::MultiRandomSampleConsensus< Storage >::getAllModelCentroids | ( |  | ) |

inline

Return the model coefficients of the best model found so far.

Definition at line 155 of file multi_ransac.h.

## getAllModelCoefficients()

template<template< typename > class Storage>

std::vector<float4> pcl::cuda::MultiRandomSampleConsensus< Storage >::getAllModelCoefficients | ( |  | ) |

inline

Return the model coefficients of the best model found so far.

Definition at line 147 of file multi_ransac.h.

## setIerationsPerBatch()

template<template< typename > class Storage>

void pcl::cuda::MultiRandomSampleConsensus< Storage >::setIerationsPerBatch | ( | int | iterations_per_batch | ) |

inline

Sets the maximum number of batches that should be processed.

Every Batch computes up to max_iterations_ models and verifies them. If planes with a sufficiently high total inlier count are found earlier, the actual number of batch runs might be lower.

Definition at line 133 of file multi_ransac.h.

## setMaximumBatches()

template<template< typename > class Storage>

void pcl::cuda::MultiRandomSampleConsensus< Storage >::setMaximumBatches | ( | int | max_batches | ) |

inline

Sets the maximum number of batches that should be processed.

Every Batch computes up to iterations_per_batch_ models and verifies them. If planes with a sufficiently high total inlier count are found earlier, the actual number of batch runs might be lower.

Definition at line 122 of file multi_ransac.h.

## setMinimumCoverage()

template<template< typename > class Storage>

void pcl::cuda::MultiRandomSampleConsensus< Storage >::setMinimumCoverage | ( | float | percent | ) |

inline

how much (in percent) of the point cloud should be covered? If it is not possible to find enough planes, it will stop according to the regular ransac criteria

Definition at line 111 of file multi_ransac.h.

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

- /build/pcl-rK6aXX/pcl-1.12.1+dfsg/cuda/sample_consensus/include/pcl/cuda/sample_consensus/multi_ransac.h