13 #ifndef mitkCovarianceMatrixCalculator_h
14 #define mitkCovarianceMatrixCalculator_h
21 #include <itkMatrix.h>
22 #include <itkObjectFactory.h>
29 struct CovarianceMatrixCalculatorData;
50 CovarianceMatrixCalculatorData *d;
59 typedef double Vertex[3];
77 const int index, Vertex normal,
CovarianceMatrix &principalComponents, Vertex variances, Vertex curVertex);
83 itkFactorylessNewMacro(Self);
#define MITKALGORITHMSEXT_EXPORT
Class that computes the covariance matrices for every point in a Surface used in the A-ICP algorithm.
const CovarianceMatrixList & GetCovarianceMatrices() const
itk::Matrix< double, 3, 3 > CovarianceMatrix
void SetInputSurface(Surface *input)
void EnableNormalization(bool state)
CovarianceMatrixCalculator()
void ComputeCovarianceMatrices()
double GetMeanVariance() const
mitkClassMacroItkParent(CovarianceMatrixCalculator, itk::Object)
void SetVoronoiScalingFator(const double factor)
~CovarianceMatrixCalculator() override
void ComputeOrthonormalCoordinateSystem(const int index, Vertex normal, CovarianceMatrix &principalComponents, Vertex variances, Vertex curVertex)
std::vector< CovarianceMatrix > CovarianceMatrixList
CovarianceMatrixList m_CovarianceMatrixList
Class for storing surfaces (vtkPolyData).
Find image slices visible on a given plane.