|
|
MaximumLikelihoodSampleConsensus (const SampleConsensusModelPtr &model) |
|
MLESAC (Maximum Likelihood Estimator SAmple Consensus) main constructor. More...
|
|
|
MaximumLikelihoodSampleConsensus (const SampleConsensusModelPtr &model, double threshold) |
|
MLESAC (Maximum Likelihood Estimator SAmple Consensus) main constructor. More...
|
|
bool |
computeModel (int debug_verbosity_level=0) override |
|
Compute the actual model and find the inliers. More...
|
|
void |
setEMIterations (int iterations) |
|
Set the number of EM iterations. More...
|
|
int |
getEMIterations () const |
|
Get the number of EM iterations. More...
|
|
|
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 () const |
|
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 () const |
|
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 () const |
|
Obtain the probability of choosing at least one sample free from outliers, as set by the user. More...
|
|
void |
setNumberOfThreads (const int nr_threads=-1) |
|
Set the number of threads to use or turn off parallelization. More...
|
|
int |
getNumberOfThreads () const |
|
Get the number of threads, 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 IndicesPtr &indices, std::size_t nr_samples, std::set< index_t > &indices_subset) |
|
Get a set of randomly selected indices. More...
|
|
void |
getModel (Indices &model) const |
|
Return the best model found so far. More...
|
|
void |
getInliers (Indices &inliers) const |
|
Return the best set of inliers found so far for this model. More...
|
|
void |
getModelCoefficients (Eigen::VectorXf &model_coefficients) const |
|
Return the model coefficients of the best model found so far. More...
|
|
|
double |
computeMedianAbsoluteDeviation (const PointCloudConstPtr &cloud, const IndicesPtr &indices, double sigma) const |
|
Compute the median absolute deviation: More...
|
|
void |
getMinMax (const PointCloudConstPtr &cloud, const IndicesPtr &indices, Eigen::Vector4f &min_p, Eigen::Vector4f &max_p) const |
|
Determine the minimum and maximum 3D bounding box coordinates for a given set of points. More...
|
|
void |
computeMedian (const PointCloudConstPtr &cloud, const IndicesPtr &indices, Eigen::Vector4f &median) const |
|
Compute the median value of a 3D point cloud using a given set point indices and return it as a Point32. More...
|
|
double |
rnd () |
|
Boost-based random number generator. More...
|
|
|
SampleConsensusModelPtr |
sac_model_ |
|
The underlying data model used (i.e. More...
|
|
Indices |
model_ |
|
The model found after the last computeModel () as point cloud indices. More...
|
|
Indices |
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...
|
|
int |
threads_ |
|
The number of threads the scheduler should use, or a negative number if no parallelization is wanted. More...
|
|
boost::mt19937 |
rng_alg_ |
|
Boost-based random number generator algorithm. More...
|
|
std::shared_ptr< boost::uniform_01< boost::mt19937 > > |
rng_ |
|
Boost-based random number generator distribution. More...
|
|
template<typename PointT>
class pcl::MaximumLikelihoodSampleConsensus< PointT >
MaximumLikelihoodSampleConsensus represents an implementation of the MLESAC (Maximum Likelihood Estimator SAmple Consensus) algorithm, as described in: "MLESAC: A new robust estimator with application to estimating image geometry", P.H.S.
Torr and A. Zisserman, Computer Vision and Image Understanding, vol 78, 2000.
- Note
- MLESAC is useful in situations where most of the data samples belong to the model, and a fast outlier rejection algorithm is needed.
- Author
- Radu B. Rusu
Definition at line 57 of file mlesac.h.