![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
Robust Maximum Likelihood Estimation SAmple Consensus estimatorThis algorithm request a threshold value on residuals of model estimation. It has no outlier ratio upper bound. More...
#include <MLESACRobustEstimator.h>
Public Member Functions | |
| void | init (const EstimatorPtr &pEstimator, const ipReal64 gaussianSigma, const ipReal64 outlierThresholdFactor=3, const ipReal64 outlierRangeFactor=10) |
| initialization method More... | |
| ipReal64 | getGaussianSigma () const |
| retrieve used sigma for gaussian noise estimation More... | |
| ipReal64 | getOutlierThresholdFactor () const |
| retrieve used outlier threshold factor for processing (we compute outlierThreshold = _outlierThresholdFactor * _gaussianSigma) More... | |
| ipReal64 | getOutlierRangeFactor () const |
| retrieve used outlier range factor for processing (we compute outlierRange = _outlierRangeFactor * _gaussianSigma) More... | |
Constructors and destructor | |
| MLESACRobustEstimator () | |
| ~MLESACRobustEstimator () | |
Public Member Functions inherited from ipsdk::math::BaseRobustEstimator | |
| bool | isInit () const |
| check for object initialization | |
| virtual ipReal64 | getMaxOutlierRatio () const |
| retrieve maximum outlier ratio supported by underlying algorithm | |
| ipReal64 | getExpectedOutlierRatio () const |
| retrieve expected outlier ratio associated to data | |
| void | setExpectedOutlierRatio (const ipReal64 expectedOutlierRatio) |
| selection of expected outlier ratio associated to data More... | |
| void | setSuccessRatio (const ipReal64 successRatio) |
| selection of algorithm statistical success ratio parameter More... | |
| ipReal64 | getSuccessRatio () const |
| retrieve algorithm statistical success ratio parameter | |
| void | setDataPartition (const DataPartitionPtr &pDataPartition) |
| select data partition object type More... | |
| const BaseDataPartition & | getDataPartition () const |
| retrieve data partition object | |
| const BaseEstimator & | getEstimator () const |
| retrieve estimator associated to object More... | |
| ipUInt32 | getNbMinDataForRobustEstimation () const |
| retrieve minimum number of data to proceed to robust estimation More... | |
| ipUInt32 | getNbNeededRuns () const |
| retrieve number of needed estimator run for robust estimation process More... | |
| bool | isEstimationDone () const |
| check whether estimation has been proceeded More... | |
| BoolResult | computeEstimation (const DataSet &dataSet) |
| method allowing to estimate parameters from a given data set More... | |
| const ParameterType & | getEstimParams () const |
| retrieve estimated parameters More... | |
| const OutlierFlags & | getOutlierFlags () const |
| retrieve estimated outlier flags More... | |
| ipReal64 | getEstimOutlierThreshold () const |
| retrieve outlier threshold estimated during processing (data associated to residuals with absolute value greater or equal to this value are considered as outliers) More... | |
| void | clearEstimation () |
| clear of last estimation data | |
| BaseRobustEstimator () | |
| virtual | ~BaseRobustEstimator ()=0 |
Protected Member Functions | |
| ipReal64 | computeScore (const ResidualsSet &curResiduals) |
| method used in derived classes to compute score associated to an estimation | |
| ipReal64 | computeOutlierThreshold (const ipReal64 bestScore, const ipUInt32 nbData, const ipUInt32 nbMinRequestedData) const |
Protected Member Functions inherited from ipsdk::math::BaseRobustEstimator | |
| void | initBase (const EstimatorPtr &pEstimator) |
| base class initialization method More... | |
| virtual void | clearDerived () |
| clear of data into derived class | |
Protected Attributes | |
| ipReal64 | _gaussianSigma |
| used sigma for gaussian noise estimation | |
| ipReal64 | _outlierThresholdFactor |
| ipReal64 | _outlierRangeFactor |
Protected Attributes inherited from ipsdk::math::BaseRobustEstimator | |
| ipReal64 | _expectedOutlierRatio |
| ipReal64 | _successRatio |
| DataPartitionPtr | _pDataPartition |
| ipUInt32 | _nbNeededRuns |
| EstimatorPtr | _pEstimator |
| shared pointer to used estimator | |
| ParameterType | _estimParams |
| parameters estimated by robust algorithm | |
| OutlierFlags | _outlierFlags |
| outlier flag collection associated to input data | |
| ipReal64 | _estimOutlierThreshold |
| outlier threshold computed during processing | |
Robust Maximum Likelihood Estimation SAmple Consensus estimator
This algorithm request a threshold value on residuals of model estimation. It has no outlier ratio upper bound.
| void ipsdk::math::MLESACRobustEstimator::init | ( | const EstimatorPtr & | pEstimator, |
| const ipReal64 | gaussianSigma, | ||
| const ipReal64 | outlierThresholdFactor = 3, |
||
| const ipReal64 | outlierRangeFactor = 10 |
||
| ) |
initialization method
| ipsdk::math::IPSDKMathException | if pEstimator.get() == 0 |
| ipsdk::math::IPSDKMathException | if pEstimator->isInit() == false |
| ipsdk::math::IPSDKMathException | if gaussianSigma <= 0 |
| ipsdk::math::IPSDKMathException | if outlierThresholdFactor <= 0 |
| ipsdk::math::IPSDKMathException | if outlierRangeFactor <= outlierThresholdFactor |
| ipReal64 ipsdk::math::MLESACRobustEstimator::getGaussianSigma | ( | ) | const |
retrieve used sigma for gaussian noise estimation
| ipsdk::math::IPSDKMathException | if isInit() == false |
| ipReal64 ipsdk::math::MLESACRobustEstimator::getOutlierThresholdFactor | ( | ) | const |
retrieve used outlier threshold factor for processing (we compute outlierThreshold = _outlierThresholdFactor * _gaussianSigma)
| ipsdk::math::IPSDKMathException | if isInit() == false |
| ipReal64 ipsdk::math::MLESACRobustEstimator::getOutlierRangeFactor | ( | ) | const |
retrieve used outlier range factor for processing (we compute outlierRange = _outlierRangeFactor * _gaussianSigma)
| ipsdk::math::IPSDKMathException | if isInit() == false |
|
protectedvirtual |
compute outlier threshold (data associated to residuals with absolute value greater or equal to this value are considered as outliers)
Implements ipsdk::math::BaseRobustEstimator.
|
protected |
used outlier threshold factor for processing (we compute outlierThreshold = _outlierThresholdFactor * _gaussianSigma)
|
protected |
used outlier range factor for processing (we compute outlierRange = _outlierRangeFactor * _gaussianSigma)
1.8.14