Ponca  4d2a58fa5c6375adef5c4b208f4d47e016cecd6d
Point Cloud Analysis library
Loading...
Searching...
No Matches
Ponca::GLSParam< DataPoint, _NFilter, T > Class Template Reference

Growing Least Squares reparametrization of the OrientedSphereFit. More...

#include <gls.h>

+ Inheritance diagram for Ponca::GLSParam< DataPoint, _NFilter, T >:
+ Collaboration diagram for Ponca::GLSParam< DataPoint, _NFilter, T >:

Public Types

using Scalar = typename DataPoint::Scalar
 Alias to scalar type.
 
using VectorType = typename Base::VectorType
 Alias to vector type.
 
using NeighborFilter = typename Base::NeighborFilter
 Alias to the filter applied on the neighbors.
 

Public Member Functions

GLSParam< DataPoint, _NFilter, T > & glsParam ()
 Explicit conversion to GLSParam , to access methods potentially hidden by heritage.
 
const GLSParam< DataPoint, _NFilter, T > & glsParam () const
 Explicit conversion to GLSParam , to access methods potentially hidden by heritage.
 
FIT_RESULT finalize ()
 Finalize the procedure.
 
Scalar tau () const
 Compute and return \( \tau \).
 
VectorType eta () const
 Compute and return \( \eta \).
 
Scalar kappa () const
 Compute and return \( \kappa \).
 
Scalar tau_normalized () const
 Compute and return \( \frac{\tau}{t} \).
 
VectorType eta_normalized () const
 Compute and return \( \eta \).
 
Scalar kappa_normalized () const
 Compute and return \( t \kappa \).
 
Scalar fitness () const
 Return the fitness, e.g.
 
Scalar compareTo (const GLSParam< DataPoint, _NFilter, T > &_other, bool _useFitness=true) const
 Compare current instance with other.
 

Protected Types

using Base = T
 Base class of the procedure.
 

Protected Attributes

Scalar m_fitness {0}
 Save the fitness value to avoid side effect with Pratt normalization.
 

Detailed Description

template<class DataPoint, class _NFilter, typename T>
requires ProvidesAlgebraicSphere<T>
class Ponca::GLSParam< DataPoint, _NFilter, T >

Growing Least Squares reparametrization of the OrientedSphereFit.

Method published in [13]

This class assumes that the WeightFunc defines the accessor

w.evalScale();
Aggregator class used to declare specialized structures using CRTP.
Definition basket.h:260

in order to access to the evaluation scale, needed to compute the scale invariant GLS reparametrization (all *_normalized methods).

Computed values:

Requirements:

ProvidesAlgebraicSphere 

Respects:

ProvidesGLSParam 

Definition at line 45 of file gls.h.

Member Typedef Documentation

◆ Base

template<class DataPoint , class _NFilter , typename T >
using Ponca::GLSParam< DataPoint, _NFilter, T >::Base = T
protected

Base class of the procedure.

Definition at line 47 of file gls.h.

◆ NeighborFilter

template<class DataPoint , class _NFilter , typename T >
using Ponca::GLSParam< DataPoint, _NFilter, T >::NeighborFilter = typename Base::NeighborFilter

Alias to the filter applied on the neighbors.

Definition at line 47 of file gls.h.

◆ Scalar

template<class DataPoint , class _NFilter , typename T >
using Ponca::GLSParam< DataPoint, _NFilter, T >::Scalar = typename DataPoint::Scalar

Alias to scalar type.

Definition at line 47 of file gls.h.

◆ VectorType

template<class DataPoint , class _NFilter , typename T >
using Ponca::GLSParam< DataPoint, _NFilter, T >::VectorType = typename Base::VectorType

Alias to vector type.

Definition at line 47 of file gls.h.

Member Function Documentation

◆ compareTo()

template<class DataPoint , class _NFilter , typename T >
Scalar Ponca::GLSParam< DataPoint, _NFilter, T >::compareTo ( const GLSParam< DataPoint, _NFilter, T > &  _other,
bool  _useFitness = true 
) const
inline

Compare current instance with other.

Returns
a distance between two fits (0 correspond to two similar fits)
Warning
Use the same scale to have a useful comparison (normalized value are used)

Definition at line 96 of file gls.h.

◆ eta()

template<class DataPoint , class _NFilter , typename T >
VectorType Ponca::GLSParam< DataPoint, _NFilter, T >::eta ( ) const
inline

Compute and return \( \eta \).

Definition at line 65 of file gls.h.

◆ eta_normalized()

template<class DataPoint , class _NFilter , typename T >
VectorType Ponca::GLSParam< DataPoint, _NFilter, T >::eta_normalized ( ) const
inline

Compute and return \( \eta \).

Definition at line 80 of file gls.h.

◆ finalize()

template<class DataPoint , class _NFilter , typename T >
FIT_RESULT GLSParam::finalize ( )
inline

Finalize the procedure.

Returns
Fitting Status
Warning
Must be called be for any use of the fitting output

Definition at line 9 of file gls.hpp.

◆ fitness()

template<class DataPoint , class _NFilter , typename T >
Scalar Ponca::GLSParam< DataPoint, _NFilter, T >::fitness ( ) const
inline

Return the fitness, e.g.

the pratt norm of the initial scalar field

Definition at line 89 of file gls.h.

◆ glsParam() [1/2]

template<class DataPoint , class _NFilter , typename T >
GLSParam< DataPoint, _NFilter, T > & Ponca::GLSParam< DataPoint, _NFilter, T >::glsParam ( )
inline

Explicit conversion to GLSParam , to access methods potentially hidden by heritage.

Definition at line 52 of file gls.h.

◆ glsParam() [2/2]

template<class DataPoint , class _NFilter , typename T >
const GLSParam< DataPoint, _NFilter, T > & Ponca::GLSParam< DataPoint, _NFilter, T >::glsParam ( ) const
inline

Explicit conversion to GLSParam , to access methods potentially hidden by heritage.

Definition at line 52 of file gls.h.

◆ kappa()

template<class DataPoint , class _NFilter , typename T >
Scalar Ponca::GLSParam< DataPoint, _NFilter, T >::kappa ( ) const
inline

Compute and return \( \kappa \).

Definition at line 68 of file gls.h.

◆ kappa_normalized()

template<class DataPoint , class _NFilter , typename T >
Scalar Ponca::GLSParam< DataPoint, _NFilter, T >::kappa_normalized ( ) const
inline

Compute and return \( t \kappa \).

Definition at line 83 of file gls.h.

◆ tau()

template<class DataPoint , class _NFilter , typename T >
Scalar Ponca::GLSParam< DataPoint, _NFilter, T >::tau ( ) const
inline

Compute and return \( \tau \).

Definition at line 59 of file gls.h.

◆ tau_normalized()

template<class DataPoint , class _NFilter , typename T >
Scalar Ponca::GLSParam< DataPoint, _NFilter, T >::tau_normalized ( ) const
inline

Compute and return \( \frac{\tau}{t} \).

Definition at line 74 of file gls.h.

Member Data Documentation

◆ m_fitness

template<class DataPoint , class _NFilter , typename T >
Scalar Ponca::GLSParam< DataPoint, _NFilter, T >::m_fitness {0}
protected

Save the fitness value to avoid side effect with Pratt normalization.

Definition at line 49 of file gls.h.