PCLSampleConsensus

MLModule

genre

PCLSampleConsensus

author

Wolf Spindler

package

FMEstable/PCL

dll

MLPCLSampleConsensus

definition

MLPCLSampleConsensus.def

see also

PCLSampleConsensusModels

inherits from

PCLModule

keywords

detect, search, find, models, registration, RANSAC, Randomized, MLESAC, Maximum, Likelihood, Estimator, RMSAC, M-estimator, RRANSAC, MSAC, LMedS, Least, Median, of, Squares, PROSAC

Purpose

Applies a Sample Consensus Model created in a PCLSampleConsensusModels module to the input point cloud and tries to search the model in it with the any of the approaches referenced in pcl::MaximumLikelihoodSampleConsensus, pcl::RandomizedMEstimatorSampleConsensus, pcl::RandomizedRandomSampleConsensus, pcl::MEstimatorSampleConsensus, pcl::LeastMedianSquares, pcl::ProgressiveSampleConsensus, or pcl::RandomSampleConsensus.

Tips

The Distance Threshold given as std::numeric_limits<double>::max() from the default class instance often does not stable fine. It is recommended to set a much smaller one for successful operations.

Windows

Default Panel

../../../Projects/MLPCLSampleConsensus/Modules/mhelp/Images/Screenshots/PCLSampleConsensus._default.png

Input Fields

inputPCLObject0

name: inputPCLObject0, type: PCLBaseObject(MLBase)

Connect the point cloud in which the model is searched which is retrieved from the connected PCLSampleConsensusModels module.

For accessing this object via scripting, see the Scripting Reference: MLPCLBaseObjectWrapper.

inputSacMLModule

name: inputSacMLModule, type: PCLSampleConsensusModels(MLBase)

Expects the connection of a PCLSampleConsensusModels output connector PCLSampleConsensusModels.outputSacMLModuleBase to this module to provide a creator for Sample Consensus models.

Output Fields

outputPCLObject0

name: outputPCLObject0, type: PCLBaseObject(MLBase)

The output point cloud will be subset of the input point cloud which matches as good as possible the model created by the connected PCLSampleConsensusModels, or if the model could not be found it can be empty. If no input point cloud or PCLSampleConsensusModels are provides then the point cloud can be NULL. Indices of source points (in other words the found inliers) are also provided in the output base object.

For accessing this object via scripting, see the Scripting Reference: MLPCLBaseObjectWrapper.

Parameter Fields

Field Index

Distance Threshold: Double

Em Iterations: Integer

Fraction Nr Pretest: Double

Max Iterations: Integer

Model Coefficients: String

Probability: Double

Sac Type: Enum

Status: String

Visible Fields

Status

name: status, type: String, persistent: no

Shows status information about processing results, or in case of errors, some information about reasons.

see also PCLModule.status

Sac Type

name: sacType, type: Enum, default: RandomSampleConsensus

Selects which of the SampleConsensus algorithms is to be used. Note that the mode RandomizedRandomSampleConsensus has been deactivated since it makes calculations hang in too many parameter combinations.

Values:

Title

Name

Description

​Random Sample Consensus

​RandomSampleConsensus

​Selects the RANSAC (RAndom SAmple Consensus) algorithm. See pcl::RandomSampleConsensus for details.

​Maximum Likelihood Sample Consensus

​MaximumLikelihoodSampleConsensus

​Selects the MLESAC (Maximum Likelihood Estimator SAmple Consensus) algorithm, see pcl::MaximumLikelihoodSampleConsensus for details.

​Randomized MEstimator Sample Consensus

​RandomizedMEstimatorSampleConsensus

​Selects the RMSAC (Randomized M-estimator SAmple Consensus) algorithm, see pcl::RandomizedMEstimatorSampleConsensus for details.

​MEstimator Sample Consensus

​MEstimatorSampleConsensus

​Selects the MSAC (M-estimator SAmple Consensus) algorithm, see pcl::MEstimatorSampleConsensus for details.

​Least Median Sample Consensus

​LeastMedianSampleConsensus

​Selects the LMedS (Least Median of Squares) algorithm, see pcl::LeastMedianSquares for details.

​Progressive Sample Consensus

​ProgressiveSampleConsensus

​Selects the PROSAC (RAndom SAmple Consensus) algorithm, see pcl::ProgressiveSampleConsensus for details.

Distance Threshold

name: distanceThreshold, type: Double, default: 1.79769313486232e+308

The distance to model threshold which must be considered in the model search. The default std::numeric_limits<double>::max() from the default class instance often does not stable fine. It is recommended to set a much smaller one for successful operations.

Max Iterations

name: maxIterations, type: Integer, default: 1000

The maximum number of allowed iterations to find a good result.

Probability

name: probability, type: Double, default: 0.99

The desired probability of choosing at least one sample free from outliers.

Em Iterations

name: emIterations, type: Integer, default: 3

Sets the number of EMIterations needed if the algorithms MaximumLikelihoodSampleConsensus is selected in Sac Type.

Fraction Nr Pretest

name: fractionNrPretest, type: Double, default: 10

Sets the percentage of points to pre-test which is needed if the algorithms RandomizedRandomSampleConsensus or RandomizedMEstimatorSampleConsensus is selected in Sac Type.

Model Coefficients

name: modelCoefficients, type: String, persistent: no

The coefficients of the best model; the number and interpretation of coefficients depends on the model type.