|
ViSP
|
#include <vpRobust.h>
Public Types | |
| enum | vpRobustEstimatorType { TUKEY, CAUCHY, HUBER } |
Public Member Functions | |
| vpRobust (unsigned int n_data) | |
| virtual | ~vpRobust () |
| void | resize (unsigned int n_data) |
| void | MEstimator (const vpRobustEstimatorType method, const vpColVector &residues, vpColVector &weights) |
| void | MEstimator (const vpRobustEstimatorType method, const vpColVector &residues, const vpColVector &all_residues, vpColVector &weights) |
| vpColVector | simultMEstimator (vpColVector &residues) |
| void | setIteration (const unsigned int iter) |
| void | setThreshold (const double noise_threshold) |
Contains an M-Estimator and various influence function.
Supported methods: M-estimation, Tukey, Cauchy and Huber
Definition at line 63 of file vpRobust.h.
Enumeration of influence functions.
| Enumerator | |
|---|---|
| TUKEY | |
| CAUCHY | |
| HUBER | |
Definition at line 68 of file vpRobust.h.
| vpRobust::vpRobust | ( | unsigned int | n_data | ) |
Default Constructor.
Constructor.
| n_data | : Size of the data vector. |
Definition at line 72 of file vpRobust.cpp.
References vpColVector::resize(), and vpCDEBUG.
|
inlinevirtual |
Destructor.
Definition at line 102 of file vpRobust.h.
| void vpRobust::MEstimator | ( | const vpRobustEstimatorType | method, |
| const vpColVector & | residues, | ||
| vpColVector & | weights | ||
| ) |
Compute the weights according a residue vector and a PsiFunction.
Calculate an Mestimate given a particular loss function using MAD (Median Absolute Deviation) as a scale estimate at each iteration.
| method | : Type of M-Estimator : |
with influence function
where
and with 
| residues | : Residues used in the previous formula. |
| weights | : Vector of weights . Values are in [0, 1]. A value near zero means that the data is an outlier. This vector must have the same size residue vector. |
Definition at line 138 of file vpRobust.cpp.
References CAUCHY, vpMatrix::getRows(), HUBER, resize(), TUKEY, and vpCDEBUG.
Referenced by vpHomography::computeDisplacement(), vpHomography::computeRotation(), vpMbEdgeKltTracker::computeVVS(), vpMbKltTracker::computeVVS(), vpMbEdgeTracker::computeVVS(), vpMeLine::leastSquare(), and vpPose::poseVirtualVSrobust().
Here is the caller graph for this function:| void vpRobust::MEstimator | ( | const vpRobustEstimatorType | method, |
| const vpColVector & | residues, | ||
| const vpColVector & | all_residues, | ||
| vpColVector & | weights | ||
| ) |
Compute the weights according a residue vector and a PsiFunction.
Definition at line 210 of file vpRobust.cpp.
References CAUCHY, vpMatrix::getRows(), HUBER, TUKEY, and vpCDEBUG.
| void vpRobust::resize | ( | unsigned int | n_data | ) |
Resize containers for sort methods.
Resize containers.
| n_data | : size of input data vector. |
Definition at line 90 of file vpRobust.cpp.
References vpColVector::resize().
Referenced by vpMbEdgeKltTracker::computeVVS(), and MEstimator().
Here is the caller graph for this function:
|
inline |
Set iteration.
Definition at line 122 of file vpRobust.h.
Referenced by vpHomography::computeDisplacement(), vpHomography::computeRotation(), vpMbEdgeKltTracker::computeVVS(), vpMbKltTracker::computeVVS(), vpMbEdgeTracker::computeVVS(), vpMeLine::leastSquare(), and vpPose::poseVirtualVSrobust().
Here is the caller graph for this function:
|
inline |
Set maximal noise threshold.
| noise_threshold | : Maximal noise threshold. |
Definition at line 128 of file vpRobust.h.
Referenced by vpHomography::computeDisplacement(), vpHomography::computeRotation(), vpMbEdgeKltTracker::computeVVS(), vpMbKltTracker::computeVVS(), vpMbEdgeTracker::computeVVS(), vpMeLine::leastSquare(), and vpPose::poseVirtualVSrobust().
Here is the caller graph for this function:| vpColVector vpRobust::simultMEstimator | ( | vpColVector & | residues | ) |
Simult Mestimator.
Calculate an Mestimate with a simultaneous scale estimate using HUBER's influence function.
Definition at line 349 of file vpRobust.cpp.
References vpMatrix::getRows(), and vpCDEBUG.