g2o
|
base for all robust cost functions More...
#include <robust_kernel.h>
Public Member Functions | |
RobustKernel () | |
RobustKernel (double delta) | |
virtual | ~RobustKernel () |
virtual void | robustify (double squaredError, Vector3D &rho) const =0 |
virtual void | setDelta (double delta) |
double | delta () const |
Protected Attributes | |
double | _delta |
base for all robust cost functions
Note in all the implementations for the other cost functions the e in the funtions corresponds to the sqaured errors, i.e., the robustification functions gets passed the squared error.
e.g. the robustified least squares function is
chi^2 = sum_{e} rho( e^T Omega e )
Definition at line 48 of file robust_kernel.h.
g2o::RobustKernel::RobustKernel | ( | ) |
Definition at line 31 of file robust_kernel.cpp.
|
explicit |
Definition at line 36 of file robust_kernel.cpp.
|
inlinevirtual |
Definition at line 53 of file robust_kernel.h.
|
inline |
|
pure virtual |
compute the scaling factor for a error: The error is e^T Omega e The output rho is rho[0]: The actual scaled error value rho[1]: First derivative of the scaling function rho[2]: Second derivative of the scaling function
Implemented in g2o::RobustKernelDCS, g2o::RobustKernelSaturated, g2o::RobustKernelTukey, g2o::RobustKernelFair, g2o::RobustKernelWelsch, g2o::RobustKernelGemanMcClure, g2o::RobustKernelCauchy, g2o::RobustKernelPseudoHuber, g2o::RobustKernelHuber, and g2o::RobustKernelScaleDelta.
Referenced by g2o::SparseOptimizer::activeRobustChi2().
|
virtual |
set the window size of the error. A squared error above delta^2 is considered as outlier in the data.
Definition at line 41 of file robust_kernel.cpp.
References _delta, and delta().
Referenced by MainWindow::setRobustKernel().
|
protected |
Definition at line 72 of file robust_kernel.h.
Referenced by g2o::RobustKernelScaleDelta::robustify(), g2o::RobustKernelHuber::robustify(), g2o::RobustKernelPseudoHuber::robustify(), g2o::RobustKernelCauchy::robustify(), g2o::RobustKernelGemanMcClure::robustify(), g2o::RobustKernelWelsch::robustify(), g2o::RobustKernelFair::robustify(), g2o::RobustKernelTukey::robustify(), g2o::RobustKernelSaturated::robustify(), g2o::RobustKernelDCS::robustify(), and setDelta().