ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes
itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep > Class Template Reference

Point set function based on n-dimensional parzen windowing. More...

#include <itkManifoldParzenWindowsPointSetFunction.h>

Inheritance diagram for itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >:
Collaboration diagram for itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef TCoordRep CoordRepType
typedef
GaussianType::CovarianceMatrixType 
CovarianceMatrixType
typedef std::vector
< GaussianPointer
GaussianContainerType
typedef GaussianType::Pointer GaussianPointer
typedef
Statistics::GaussianMembershipFunction
< PointType
GaussianType
typedef
Superclass::InputPointSetType 
InputPointSetType
typedef Superclass::InputPointType InputPointType
typedef
PointsLocatorType::NeighborsIdentifierType 
NeighborsIdentifierType
typedef TOutput OutputType
typedef SmartPointer< SelfPointer
typedef
PointsContainer::ElementIdentifier 
PointIdentifier
typedef
PointSetType::PointsContainer 
PointsContainer
typedef TPointSet PointSetType
typedef PointsLocator
< PointIdentifier,
itkGetStaticConstMacro(PointDimension),
CoordRepType, PointsContainer
PointsLocatorType
typedef PointSetType::PointType PointType
typedef TOutput RealType
typedef
ManifoldParzenWindowsPointSetFunction 
Self
typedef PointSetFunction
< TPointSet, TOutput,
TCoordRep > 
Superclass

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual TOutput Evaluate (const InputPointType &) const
virtual unsigned int GetCovarianceKNeighborhood () const
virtual unsigned int GetEvaluationKNeighborhood () const
GaussianPointer GetGaussian (PointIdentifier)
virtual RealType GetKernelSigma () const
virtual bool GetNormalize () const
virtual const PointsLocatorTypeGetPointsLocator ()
virtual RealType GetRegularizationSigma () const
virtual bool GetUseAnisotropicCovariances () const
virtual void NormalizeOff ()
virtual void NormalizeOn ()
virtual void SetCovarianceKNeighborhood (unsigned int _arg)
virtual void SetEvaluationKNeighborhood (unsigned int _arg)
virtual void SetInputPointSet (const InputPointSetType *)
virtual void SetKernelSigma (RealType _arg)
virtual void SetNormalize (bool _arg)
virtual void SetRegularizationSigma (RealType _arg)
virtual void SetUseAnisotropicCovariances (bool _arg)
virtual void UseAnisotropicCovariancesOff ()
virtual void UseAnisotropicCovariancesOn ()

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int PointDimension = TPointSet::PointDimension

Protected Member Functions

void GenerateData ()
 ManifoldParzenWindowsPointSetFunction ()
void PrintSelf (std::ostream &os, Indent indent) const
virtual ~ManifoldParzenWindowsPointSetFunction ()

Private Member Functions

 ManifoldParzenWindowsPointSetFunction (const Self &)
void operator= (const Self &)

Private Attributes

unsigned int m_CovarianceKNeighborhood
unsigned int m_EvaluationKNeighborhood
GaussianContainerType m_Gaussians
RealType m_KernelSigma
bool m_Normalize
PointsLocatorType::Pointer m_PointsLocator
RealType m_RegularizationSigma
bool m_UseAnisotropicCovariances

Detailed Description

template<class TPointSet, class TOutput = double, class TCoordRep = double>
class itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >

Point set function based on n-dimensional parzen windowing.

This class allows evaluating a function derived from a point set by creating a continuous distribution using manifold parzen windowing. Each point is associated with a Gaussian and local shape can be encoded in the covariance matrix.

Definition at line 45 of file itkManifoldParzenWindowsPointSetFunction.h.


Member Typedef Documentation

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef SmartPointer<const Self> itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::ConstPointer
template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef TCoordRep itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::CoordRepType

CoordRepType typedef support.

Reimplemented from itk::PointSetFunction< TPointSet, TOutput, TCoordRep >.

Definition at line 72 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef GaussianType::CovarianceMatrixType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::CovarianceMatrixType

Definition at line 85 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef std::vector<GaussianPointer> itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GaussianContainerType

Definition at line 84 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef GaussianType::Pointer itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GaussianPointer

Definition at line 83 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef Statistics:: GaussianMembershipFunction<PointType> itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GaussianType

Definition at line 82 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef Superclass::InputPointSetType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::InputPointSetType

InputPointSetType typedef support.

Reimplemented from itk::PointSetFunction< TPointSet, TOutput, TCoordRep >.

Definition at line 60 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef Superclass::InputPointType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::InputPointType

InputPixel typedef support

Reimplemented from itk::PointSetFunction< TPointSet, TOutput, TCoordRep >.

Definition at line 61 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef PointsLocatorType:: NeighborsIdentifierType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::NeighborsIdentifierType

Definition at line 79 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef TOutput itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::OutputType

OutputType typedef support.

Reimplemented from itk::PointSetFunction< TPointSet, TOutput, TCoordRep >.

Definition at line 71 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef SmartPointer<Self> itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::Pointer
template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef PointsContainer::ElementIdentifier itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::PointIdentifier

Definition at line 67 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef PointSetType::PointsContainer itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::PointsContainer

Definition at line 66 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef TPointSet itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::PointSetType

Point set typedef support.

Definition at line 64 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef PointsLocator<PointIdentifier, itkGetStaticConstMacro( PointDimension ), CoordRepType, PointsContainer> itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::PointsLocatorType

Typedef for points locator class to speed up finding neighboring points

Definition at line 77 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef PointSetType::PointType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::PointType

Definition at line 65 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef TOutput itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::RealType

Other typedef

Definition at line 70 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef ManifoldParzenWindowsPointSetFunction itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::Self

Standard class typedefs.

Reimplemented from itk::PointSetFunction< TPointSet, TOutput, TCoordRep >.

Definition at line 49 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
typedef PointSetFunction<TPointSet, TOutput, TCoordRep> itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::Superclass

Constructor & Destructor Documentation

template<class TPointSet , class TOutput = double, class TCoordRep = double>
itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::ManifoldParzenWindowsPointSetFunction ( ) [protected]
template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::~ManifoldParzenWindowsPointSetFunction ( ) [protected, virtual]
template<class TPointSet , class TOutput = double, class TCoordRep = double>
itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::ManifoldParzenWindowsPointSetFunction ( const Self ) [private]

Member Function Documentation

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual::itk::LightObject::Pointer itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::Object.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual TOutput itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::Evaluate ( const InputPointType ) const [virtual]

Evaluate function value at specified point

template<class TPointSet , class TOutput = double, class TCoordRep = double>
void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GenerateData ( ) [protected]
template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual unsigned int itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GetCovarianceKNeighborhood ( ) const [virtual]

Get the covariance k neighborhood size. Default = 5.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual unsigned int itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GetEvaluationKNeighborhood ( ) const [virtual]

Get the evaluation K neighborhood. Default = 50.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
GaussianPointer itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GetGaussian ( PointIdentifier  )

Get Gaussian corresponding to a specific point

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual RealType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GetKernelSigma ( ) const [virtual]

Get the kernel sigma. Default = 1.0.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual bool itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GetNormalize ( ) const [virtual]

Normalize covariance by the sum of the weights of the nearest neighbors. Default = true.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual const PointsLocatorType* itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GetPointsLocator ( ) [virtual]

Get the points locator describing the point set neighborhood

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual RealType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GetRegularizationSigma ( ) const [virtual]

Get the regularization sigma. Default = 1.0.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual bool itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::GetUseAnisotropicCovariances ( ) const [virtual]

Construct covariances using the local neighborhood point set structure. Otherwise, the Gaussian for each point is characterized by the value of m_RegularizationSigma. Default = true.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
static Pointer itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::New ( ) [static]

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::NormalizeOff ( ) [virtual]
template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::NormalizeOn ( ) [virtual]

Normalize covariance by the sum of the weights of the nearest neighbors. Default = true.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::operator= ( const Self ) [private]

Mutex lock to protect modification to the reference count

Reimplemented from itk::PointSetFunction< TPointSet, TOutput, TCoordRep >.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::PointSetFunction< TPointSet, TOutput, TCoordRep >.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::SetCovarianceKNeighborhood ( unsigned int  _arg) [virtual]

Helper functions Set the covariance K neighborhood. For a given point the closest K points are used to construct the corresponding covariance reflecting the local point set structure. Default = 5.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::SetEvaluationKNeighborhood ( unsigned int  _arg) [virtual]

Set the evaluation K neighborhood. To evaluate the the manifold parzen windows function, one could sum the value contributed by each Gaussian or to speed calculation, we could sum the value contributed by the nearest K Gaussians. Default = 50.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::SetInputPointSet ( const InputPointSetType ) [virtual]

Set the input point set

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::SetKernelSigma ( RealType  _arg) [virtual]

Set the kernel sigma. In constructing the covariance from k neighbors, a Gaussian is used to weight more strongly the closest neighbors. This defines that weighting Gaussian. Default = 1.0.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::SetNormalize ( bool  _arg) [virtual]

Normalize covariance by the sum of the weights of the nearest neighbors. Default = true.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::SetRegularizationSigma ( RealType  _arg) [virtual]

Set the regularization sigma. To avoid singular covariance matrices, a regularization sigma value is added to the diagonal. Default = 1.0.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::SetUseAnisotropicCovariances ( bool  _arg) [virtual]

Construct covariances using the local neighborhood point set structure. Otherwise, the Gaussian for each point is characterized by the value of m_RegularizationSigma. Default = true.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::UseAnisotropicCovariancesOff ( ) [virtual]
template<class TPointSet , class TOutput = double, class TCoordRep = double>
virtual void itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::UseAnisotropicCovariancesOn ( ) [virtual]

Construct covariances using the local neighborhood point set structure. Otherwise, the Gaussian for each point is characterized by the value of m_RegularizationSigma. Default = true.


Member Data Documentation

template<class TPointSet , class TOutput = double, class TCoordRep = double>
unsigned int itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::m_CovarianceKNeighborhood [private]

Definition at line 194 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
unsigned int itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::m_EvaluationKNeighborhood [private]

Definition at line 195 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
GaussianContainerType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::m_Gaussians [private]

Definition at line 199 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
RealType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::m_KernelSigma [private]

Definition at line 197 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
bool itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::m_Normalize [private]

Definition at line 200 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
PointsLocatorType::Pointer itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::m_PointsLocator [private]

Definition at line 192 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
RealType itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::m_RegularizationSigma [private]

Definition at line 196 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
bool itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::m_UseAnisotropicCovariances [private]

Definition at line 201 of file itkManifoldParzenWindowsPointSetFunction.h.

template<class TPointSet , class TOutput = double, class TCoordRep = double>
const unsigned int itk::ManifoldParzenWindowsPointSetFunction< TPointSet, TOutput, TCoordRep >::PointDimension = TPointSet::PointDimension [static]

Extract dimension from output image.

Definition at line 58 of file itkManifoldParzenWindowsPointSetFunction.h.


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