template struct mrpt::math::RobustKernel<rkPseudoHuber, T>

Overview

Pseudo-huber robust kernel: rho(r) = 2 * delta^2 * ( -1+sqrt( 1+ r^2/delta^2 ) )

#include <mrpt/math/robust_kernels.h>

template <typename T>
struct RobustKernel<rkPseudoHuber, T>
{
    // fields

    T param_sq = 1;

    // methods

    T eval(const T r2, T& out_1st_deriv, T& out_2nd_deriv);
};

Fields

T param_sq = 1

The kernel parameter (the “threshold”) squared.

Methods

T eval(const T r2, T& out_1st_deriv, T& out_2nd_deriv)

Evaluates the kernel function for the squared error r2 and returns robustified squared error and derivatives of sqrt(2*rho(r)) at this point.