ANIMA  4.0
Public Types | Public Member Functions | List of all members
anima::SpectralClusteringFilter< ScalarType > Class Template Reference

Provides an implementation of spectral clustering, as proposed in A.Y. Ng, M.I. Jordan and Y. Weiss. "On Spectral Clustering: Analysis and an Algorithm." Advances in Neural Information Processing Systems 14. 2001. More...

#include <animaSpectralClusteringFilter.h>

Public Types

typedef CMeansFilterType::CentroidAverageType CMeansAverageType
 
typedef anima::FuzzyCMeansFilter< ScalarType > CMeansFilterType
 
typedef itk::SymmetricEigenAnalysis< MatrixType, vnl_diag_matrix< ScalarType >, MatrixTypeEigenAnalysisType
 
typedef vnl_matrix< ScalarType > MatrixType
 
typedef std::vector< ScalarType > VectorType
 

Public Member Functions

double ComputeClustersSpreading ()
 
void ComputeSpectralVectors ()
 
VectorTypeGetCentroid (unsigned int i)
 
VectorTypeGetClassesMembership (unsigned int i)
 
std::vector< unsigned int > GetClassMembers (unsigned int i)
 
VectorTypeGetSpectralVector (unsigned int i)
 
void InitializeSigmaFromDistances ()
 
void SetCMeansAverageType (CMeansAverageType val)
 
void SetDataWeights (VectorType &val)
 
void SetInputData (MatrixType &data)
 Input data: matrix of squared distances. More...
 
void SetMaxIterations (unsigned int mIt)
 
void SetMValue (double mV)
 
void SetNbClass (unsigned int nbC)
 
void SetRelStopCriterion (double rC)
 
void SetSigmaWeighting (double sigma)
 
void SetVerbose (bool verb)
 
 SpectralClusteringFilter ()
 
void Update ()
 
virtual ~SpectralClusteringFilter ()
 

Detailed Description

template<class ScalarType>
class anima::SpectralClusteringFilter< ScalarType >

Provides an implementation of spectral clustering, as proposed in A.Y. Ng, M.I. Jordan and Y. Weiss. "On Spectral Clustering: Analysis and an Algorithm." Advances in Neural Information Processing Systems 14. 2001.

Definition at line 20 of file animaSpectralClusteringFilter.h.

Member Typedef Documentation

◆ CMeansAverageType

Definition at line 27 of file animaSpectralClusteringFilter.h.

◆ CMeansFilterType

template<class ScalarType>
typedef anima::FuzzyCMeansFilter<ScalarType> anima::SpectralClusteringFilter< ScalarType >::CMeansFilterType

Definition at line 26 of file animaSpectralClusteringFilter.h.

◆ EigenAnalysisType

template<class ScalarType>
typedef itk::SymmetricEigenAnalysis<MatrixType, vnl_diag_matrix<ScalarType>, MatrixType> anima::SpectralClusteringFilter< ScalarType >::EigenAnalysisType

Definition at line 28 of file animaSpectralClusteringFilter.h.

◆ MatrixType

template<class ScalarType>
typedef vnl_matrix<ScalarType> anima::SpectralClusteringFilter< ScalarType >::MatrixType

Definition at line 24 of file animaSpectralClusteringFilter.h.

◆ VectorType

template<class ScalarType>
typedef std::vector<ScalarType> anima::SpectralClusteringFilter< ScalarType >::VectorType

Definition at line 23 of file animaSpectralClusteringFilter.h.

Constructor & Destructor Documentation

◆ SpectralClusteringFilter()

template<class ScalarType >
anima::SpectralClusteringFilter< ScalarType >::SpectralClusteringFilter ( )

Definition at line 9 of file animaSpectralClusteringFilter.hxx.

◆ ~SpectralClusteringFilter()

template<class ScalarType>
virtual anima::SpectralClusteringFilter< ScalarType >::~SpectralClusteringFilter ( )
inlinevirtual

Definition at line 31 of file animaSpectralClusteringFilter.h.

Member Function Documentation

◆ ComputeClustersSpreading()

template<class ScalarType >
double anima::SpectralClusteringFilter< ScalarType >::ComputeClustersSpreading ( )

◆ ComputeSpectralVectors()

template<class ScalarType >
void anima::SpectralClusteringFilter< ScalarType >::ComputeSpectralVectors ( )

◆ GetCentroid()

template<class ScalarType>
VectorType& anima::SpectralClusteringFilter< ScalarType >::GetCentroid ( unsigned int  i)
inline

Definition at line 56 of file animaSpectralClusteringFilter.h.

◆ GetClassesMembership()

template<class ScalarType>
VectorType& anima::SpectralClusteringFilter< ScalarType >::GetClassesMembership ( unsigned int  i)
inline

Definition at line 55 of file animaSpectralClusteringFilter.h.

Referenced by anima::MCMWeightedAverager::Update().

◆ GetClassMembers()

template<class ScalarType >
std::vector< unsigned int > anima::SpectralClusteringFilter< ScalarType >::GetClassMembers ( unsigned int  i)

◆ GetSpectralVector()

template<class ScalarType>
VectorType& anima::SpectralClusteringFilter< ScalarType >::GetSpectralVector ( unsigned int  i)
inline

Definition at line 54 of file animaSpectralClusteringFilter.h.

◆ InitializeSigmaFromDistances()

template<class ScalarType >
void anima::SpectralClusteringFilter< ScalarType >::InitializeSigmaFromDistances ( )

◆ SetCMeansAverageType()

template<class ScalarType>
void anima::SpectralClusteringFilter< ScalarType >::SetCMeansAverageType ( CMeansAverageType  val)
inline

◆ SetDataWeights()

template<class ScalarType>
void anima::SpectralClusteringFilter< ScalarType >::SetDataWeights ( VectorType val)
inline

Definition at line 35 of file animaSpectralClusteringFilter.h.

Referenced by anima::MCMWeightedAverager::Update().

◆ SetInputData()

template<class ScalarType >
void anima::SpectralClusteringFilter< ScalarType >::SetInputData ( MatrixType data)

◆ SetMaxIterations()

template<class ScalarType>
void anima::SpectralClusteringFilter< ScalarType >::SetMaxIterations ( unsigned int  mIt)
inline

◆ SetMValue()

template<class ScalarType>
void anima::SpectralClusteringFilter< ScalarType >::SetMValue ( double  mV)
inline

Definition at line 42 of file animaSpectralClusteringFilter.h.

◆ SetNbClass()

template<class ScalarType>
void anima::SpectralClusteringFilter< ScalarType >::SetNbClass ( unsigned int  nbC)
inline

Definition at line 36 of file animaSpectralClusteringFilter.h.

Referenced by anima::MCMWeightedAverager::Update().

◆ SetRelStopCriterion()

template<class ScalarType>
void anima::SpectralClusteringFilter< ScalarType >::SetRelStopCriterion ( double  rC)
inline

Definition at line 41 of file animaSpectralClusteringFilter.h.

◆ SetSigmaWeighting()

template<class ScalarType>
void anima::SpectralClusteringFilter< ScalarType >::SetSigmaWeighting ( double  sigma)
inline

Definition at line 37 of file animaSpectralClusteringFilter.h.

◆ SetVerbose()

template<class ScalarType>
void anima::SpectralClusteringFilter< ScalarType >::SetVerbose ( bool  verb)
inline

◆ Update()

template<class ScalarType >
void anima::SpectralClusteringFilter< ScalarType >::Update ( )

The documentation for this class was generated from the following files: