DGtal  1.3.beta
Public Types | Public Member Functions
DGtal::detail::CurvatureFromDSSLength Struct Reference

#include <DGtal/geometry/curves/estimation/SegmentComputerEstimators.h>

Public Types

typedef double Value
 

Public Member Functions

template<typename DSS >
Value operator() (const DSS &aDSS) const
 

Detailed Description

Description of class 'CurvatureFromDSSLength'

Aim: Computes the curvature \( k \) from the discrete length \( l \) of a DSS as follow: \( 1/k = l*l/8 + 1/2 \)

Note
Adaption from Coeurjolly, D. and Miguet, S. and Tougne, L. "Discrete Curvature Based on Osculating Circle Estimation", Proc. IWVF, LNCS, vol 2059, pp.303-312, 2001

Definition at line 1233 of file SegmentComputerEstimators.h.

Member Typedef Documentation

◆ Value

Definition at line 1236 of file SegmentComputerEstimators.h.

Member Function Documentation

◆ operator()()

template<typename DSS >
Value DGtal::detail::CurvatureFromDSSLength::operator() ( const DSS &  aDSS) const
inline

Definition at line 1239 of file SegmentComputerEstimators.h.

1240  {
1241  typedef typename DSS::Vector Vector;
1242  //length
1243  Vector v = ( *aDSS.begin() - *boost::prior(aDSS.end()) );
1244  Value l = v.norm(Vector::L_2);
1245  //result
1246  return 1./( (l*l)/8. + 0.5 );
1247  }

The documentation for this struct was generated from the following file:
Vector
FreemanChain< int >::Vector Vector
Definition: testCombinDSS.cpp:60
Value
double Value
Definition: testSimpleRandomAccessRangeFromPoint.cpp:38