Open3D (C++ API)  0.17.0
Public Member Functions | Data Fields
open3d::pipelines::registration::TukeyLoss Class Reference

#include <RobustKernel.h>

Inheritance diagram for open3d::pipelines::registration::TukeyLoss:
open3d::pipelines::registration::RobustKernel

Public Member Functions

 TukeyLoss (double k)
 Parametrized Constructor. More...
 
double Weight (double residual) const override
 
- Public Member Functions inherited from open3d::pipelines::registration::RobustKernel
virtual ~RobustKernel ()=default
 

Data Fields

double k_
 

Detailed Description

This is the so called Tukey loss function which aggressively attempts to suppress large errors.

The loss p(r) for a given residual 'r' is computed as follow:

p(r) = k^2 * (1 - (1 - r / k^2)^3 ) / 2 for abs(r) <= k, p(r) = k^2 / 2 for abs(r) > k.

Constructor & Destructor Documentation

◆ TukeyLoss()

open3d::pipelines::registration::TukeyLoss::TukeyLoss ( double  k)
inlineexplicit

Parametrized Constructor.

Parameters
kIs a running constant for the Tukey Loss function.

Member Function Documentation

◆ Weight()

double open3d::pipelines::registration::TukeyLoss::Weight ( double  residual) const
overridevirtual

The weight w(r) for a given residual 'r' is computed as follow: p(r) = (1 - (r / k)^2 )^2 for abs(r) <= k, p(r) = 0.0 for abs(r) > k. Where k Is the scaling parameter of the loss function.

Parameters
residualResidual value obtained during the optimization step.

Implements open3d::pipelines::registration::RobustKernel.

Field Documentation

◆ k_

double open3d::pipelines::registration::TukeyLoss::k_

The documentation for this class was generated from the following files: