18 #ifndef itkImageMomentsCalculator_h
19 #define itkImageMomentsCalculator_h
25 #include "vnl/vnl_vector_fixed.h"
26 #include "vnl/vnl_matrix_fixed.h"
27 #include "vnl/vnl_diag_matrix.h"
59 template<
typename TImage >
76 itkStaticConstMacro(ImageDimension,
unsigned int,
77 TImage::ImageDimension);
94 itkGetStaticConstMacro(ImageDimension),
111 if ( m_Image != image )
123 if ( m_SpatialObjectMask != so )
125 m_SpatialObjectMask = so;
143 ScalarType GetTotalMass()
const;
157 MatrixType GetSecondMoments()
const;
169 MatrixType GetCentralMoments()
const;
191 MatrixType GetPrincipalAxes()
const;
197 AffineTransformPointer GetPrincipalAxesToPhysicalAxesTransform()
const;
203 AffineTransformPointer GetPhysicalAxesToPrincipalAxesTransform()
const;
208 virtual
void PrintSelf(std::ostream & os,
Indent indent) const ITK_OVERRIDE;
227 #ifndef ITK_MANUAL_INSTANTIATION
228 #include "itkImageMomentsCalculator.hxx"
SpatialObjectType::ConstPointer SpatialObjectConstPointer
A templated class holding a M x N size Matrix.
SmartPointer< Self > Pointer
Light weight base class for most itk classes.
SmartPointer< const Self > ConstPointer
ImageBaseType::SpacingType VectorType
SpatialObjectType::Pointer SpatialObjectPointer
virtual void SetSpatialObjectMask(const SpatialObject< itkGetStaticConstMacro(ImageDimension) > *so)
Matrix< ScalarType, itkGetStaticConstMacro(ImageDimension), itkGetStaticConstMacro(ImageDimension) > MatrixType
Compute moments of an n-dimensional image.
Implementation of the composite pattern.
SpatialObject< itkGetStaticConstMacro(ImageDimension) > SpatialObjectType
AffineTransform< double, itkGetStaticConstMacro(ImageDimension) > AffineTransformType
ImageType::ConstPointer ImageConstPointer
ImageType::Pointer ImagePointer
ImageMomentsCalculator< TImage > Self
Control indentation during Print() invocation.
AffineTransformType::Pointer AffineTransformPointer
virtual void SetImage(const ImageType *image)
Base class for most ITK classes.
Vector< ScalarType, itkGetStaticConstMacro(ImageDimension) > VectorType