ViSP
2.8.0
|
#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 : |
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().
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().
|
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().
|
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().
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.