34 #if defined(TensorVotingFeatureExtraction_RECURSES)
35 #error Recursive header files inclusion detected in TensorVotingFeatureExtraction.h
38 #define TensorVotingFeatureExtraction_RECURSES
40 #if !defined TensorVotingFeatureExtraction_h
42 #define TensorVotingFeatureExtraction_h
47 #include <DGtal/base/Common.h>
48 #include <DGtal/topology/SCellsFunctors.h>
50 #include "DGtal/math/linalg/SimpleMatrix.h"
51 #include "DGtal/math/linalg/EigenDecomposition.h"
80 template <
typename TSurfel,
typename TEmbedder>
114 const double aDistance)
128 double matnorm = 0.0;
137 if (std::abs(v(i)*v(j)) > maxcol)
138 maxcol = std::abs(v(i)*v(j));
163 for(
Dimension i_dim = 1; i_dim < 3; ++i_dim )
164 ASSERT ( std::abs(eigenvalues[i_dim - 1]) <= std::abs(eigenvalues[i_dim]) );
167 return ((eigenvalues[0] + eigenvalues[1])/(eigenvalues[2]));
212 #undef TensorVotingFeatureExtraction_RECURSES
Aim: This class encapsulates its parameter class so that to indicate to the user that the object/poin...
static void getEigenDecomposition(const Matrix &matrix, Matrix &eigenVectors, Vector &eigenValues)
Compute both eigen vectors and eigen values from an input matrix.
void setComponent(const DGtal::Dimension i, const DGtal::Dimension j, const Component &aValue)
void constant(const Component &aScalar)
DGtal is the top-level namespace which contains all DGtal functions and types.
DGtal::uint32_t Dimension
PointVector< 3, double > RealPoint