ITK
4.3.0
Insight Segmentation and Registration Toolkit
|
#include <itkImageGaussianModelEstimator.h>
Base class for ImageGaussianModelEstimator object.
itkImageGaussianModelEstimator generates the Gaussian model for given tissue types (or class types) in an input training data set for segmentation. The training data set is typically provided as a set of labelled/classified data set by the user. A Gaussian model is generated for each label present in the training data set.
The user should ensure that both the input and training images are of the same size. The input data consists of the raw data and the training data has class labels associated with each pixel.
A zero label is used to identify the background. A model is not calcualted for the background (its mean and covariance will be zero). Positive labels are classes for which models will be estimated. Negative labels indicate unlabeled data where no models will be estimated.
This object supports data handling of multiband images. The object accepts the input image in vector format only, where each pixel is a vector and each element of the vector corresponds to an entry from 1 particular band of a multiband dataset. A single band image is treated as a vector image with a single element for every vector. The classified image is treated as a single band scalar image.
This function is templated over the type of input and output images. In addition, a third parameter for the MembershipFunction needs to be specified. In this case a Membership function that stores Gaussian models needs to be specified.
The function EstimateModels() calculates the various models, creates the membership function objects and populates them.
Definition at line 77 of file itkImageGaussianModelEstimator.h.
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual const char * | GetNameOfClass () const |
virtual TrainingImagePointer | GetTrainingImage () const |
virtual void | SetTrainingImage (TrainingImagePointer _arg) |
Public Member Functions inherited from itk::ImageModelEstimatorBase< TInputImage, TMembershipFunction > | |
unsigned int | AddMembershipFunction (MembershipFunctionPointer function) |
void | DeleteAllMembershipFunctions () |
virtual InputImageType * | GetInputImage () |
const MembershipFunctionPointerVector | GetMembershipFunctions () const |
unsigned int | GetNumberOfMembershipFunctions () |
virtual const unsigned int & | GetNumberOfModels () |
virtual void | SetInputImage (InputImageType *_arg) |
void | SetMembershipFunctions (MembershipFunctionPointerVector membershipFunctions) |
virtual void | SetNumberOfModels (unsigned int _arg) |
void | Update () |
Public Member Functions inherited from itk::LightProcessObject | |
virtual void | AbortGenerateDataOff () |
virtual void | AbortGenerateDataOn () |
virtual const bool & | GetAbortGenerateData () |
virtual void | SetAbortGenerateData (bool _arg) |
virtual void | UpdateOutputData () |
void | UpdateProgress (float amount) |
virtual void | SetProgress (float _arg) |
virtual const float & | GetProgress () |
Public Member Functions inherited from itk::Object | |
unsigned long | AddObserver (const EventObject &event, Command *) |
unsigned long | AddObserver (const EventObject &event, Command *) const |
virtual void | DebugOff () const |
virtual void | DebugOn () const |
Command * | GetCommand (unsigned long tag) |
bool | GetDebug () const |
MetaDataDictionary & | GetMetaDataDictionary (void) |
const MetaDataDictionary & | GetMetaDataDictionary (void) const |
virtual ModifiedTimeType | GetMTime () const |
virtual const TimeStamp & | GetTimeStamp () const |
bool | HasObserver (const EventObject &event) const |
void | InvokeEvent (const EventObject &) |
void | InvokeEvent (const EventObject &) const |
virtual void | Modified () const |
virtual void | Register () const |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) |
void | SetDebug (bool debugFlag) const |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
virtual void | SetReferenceCount (int) |
virtual void | UnRegister () const |
Public Member Functions inherited from itk::LightObject | |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
void | Print (std::ostream &os, Indent indent=0) const |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
void | GenerateData () |
ImageGaussianModelEstimator () | |
virtual void | PrintSelf (std::ostream &os, Indent indent) const |
~ImageGaussianModelEstimator () | |
Protected Member Functions inherited from itk::ImageModelEstimatorBase< TInputImage, TMembershipFunction > | |
ImageModelEstimatorBase () | |
void | PrintSelf (std::ostream &os, Indent indent) const |
~ImageModelEstimatorBase () | |
Protected Member Functions inherited from itk::LightProcessObject | |
LightProcessObject () | |
~LightProcessObject () | |
Protected Member Functions inherited from itk::Object | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
virtual void | SetTimeStamp (const TimeStamp &time) |
virtual | ~Object () |
Protected Member Functions inherited from itk::LightObject | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Private Types | |
typedef TInputImage::SizeType | InputImageSizeType |
typedef vnl_matrix< double > | MatrixType |
Private Member Functions | |
void | EstimateGaussianModelParameters () |
virtual void | EstimateModels () |
ImageGaussianModelEstimator (const Self &) | |
void | operator= (const Self &) |
Private Attributes | |
MatrixType * | m_Covariance |
MatrixType | m_Means |
MatrixType | m_NumberOfSamples |
TrainingImagePointer | m_TrainingImage |
Static Private Attributes | |
static const unsigned int | VectorDimension = InputImagePixelType::Dimension |
Additional Inherited Members | |
Protected Types inherited from itk::LightObject | |
typedef int | InternalReferenceCountType |
Protected Attributes inherited from itk::LightObject | |
InternalReferenceCountType | m_ReferenceCount |
SimpleFastMutexLock | m_ReferenceCountLock |
typedef SmartPointer< const Self > itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::ConstPointer |
Definition at line 85 of file itkImageGaussianModelEstimator.h.
typedef ImageRegionIterator< TInputImage > itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::InputImageIterator |
Type definitions for the iterators for the input and training images.
Definition at line 108 of file itkImageGaussianModelEstimator.h.
typedef TInputImage::PixelType itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::InputImagePixelType |
Type definition for the vector associated with input image pixel type.
Definition at line 101 of file itkImageGaussianModelEstimator.h.
typedef TInputImage::Pointer itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::InputImagePointer |
Type definition for the input image.
Definition at line 91 of file itkImageGaussianModelEstimator.h.
|
private |
Definition at line 135 of file itkImageGaussianModelEstimator.h.
|
private |
Definition at line 133 of file itkImageGaussianModelEstimator.h.
typedef TMembershipFunction::Pointer itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::MembershipFunctionPointer |
Definition at line 113 of file itkImageGaussianModelEstimator.h.
typedef TMembershipFunction itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::MembershipFunctionType |
Type definitions for the membership function .
Definition at line 112 of file itkImageGaussianModelEstimator.h.
typedef SmartPointer< Self > itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::Pointer |
Definition at line 84 of file itkImageGaussianModelEstimator.h.
typedef ImageGaussianModelEstimator itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::Self |
Standard class typedefs.
Definition at line 82 of file itkImageGaussianModelEstimator.h.
typedef ImageModelEstimatorBase< TInputImage, TMembershipFunction > itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::Superclass |
Definition at line 83 of file itkImageGaussianModelEstimator.h.
typedef ImageRegionIterator< TTrainingImage > itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::TrainingImageIterator |
Definition at line 109 of file itkImageGaussianModelEstimator.h.
typedef TTrainingImage::PixelType itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::TrainingImagePixelType |
Type definitions for the vector holding training image pixel type.
Definition at line 105 of file itkImageGaussianModelEstimator.h.
typedef TTrainingImage::Pointer itk::ImageGaussianModelEstimator< TInputImage, TMembershipFunction, TTrainingImage >::TrainingImagePointer |
Type definitions for the training image.
Definition at line 97 of file itkImageGaussianModelEstimator.h.
|
protected |
|
protected |
|
private |
|
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::LightProcessObject.
|
private |
|
privatevirtual |
A function that generates the model based on the training input data. Achieves the goal of training the classifier.
Implements itk::ImageModelEstimatorBase< TInputImage, TMembershipFunction >.
|
protectedvirtual |
Starts the image modelling process
Reimplemented from itk::ImageModelEstimatorBase< TInputImage, TMembershipFunction >.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageModelEstimatorBase< TInputImage, TMembershipFunction >.
|
virtual |
Get the training image.
|
static |
Method for creation through the object factory.
|
private |
|
protectedvirtual |
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::LightProcessObject.
|
virtual |
Set the training image.
|
private |
Definition at line 143 of file itkImageGaussianModelEstimator.h.
|
private |
Definition at line 142 of file itkImageGaussianModelEstimator.h.
|
private |
Definition at line 141 of file itkImageGaussianModelEstimator.h.
|
private |
Definition at line 145 of file itkImageGaussianModelEstimator.h.
|
staticprivate |
Dimension of each individual pixel vector.
Definition at line 139 of file itkImageGaussianModelEstimator.h.