#include <itkActiveShapeModelCalculator.h>
Inheritance diagram for itk::ActiveShapeModelCalculator< TImage >:


itkActiveShapeModelCalculator performs a principal component analysis (PCA) on a set of binary tranining images. The input is a binary volume that contains the shapes. The number of largest principal components which explain 98% of shape variance is automatically computed. The ITK pipeline mechanism sets up the storage for input images. The outputs are the mean shape, eigenvectors and eigenvalues. The user specifies the tolerance value (in pixel unit) for automatic landmark identification. The algorithm uses the VNL library to perform the eigen analysis.
The Update() function enables the calculation of the various models, creates the membership function objects and populates them.
Definition at line 77 of file itkActiveShapeModelCalculator.h.
Public Types | |
| typedef BinaryThresholdImageFilter< Image3DType, Image3DType > | BinaryFilterType |
| typedef BinaryThresholdImageFilter< Image2DType, Image2D8bitsType > | BinaryFilterType1 |
| typedef BinaryThresholdImageFilter< Image3DType, Image3D8bitsType > | BinaryFilterType2 |
| typedef ImageRegionConstIterator< Image3D8bitsType > | ConstIteratorType |
| typedef SmartPointer< const Self > | ConstPointer |
| typedef DanielssonDistanceMapImageFilter< Image3DType, Image3DType > | DistanceMapFilterType |
| typedef GradientMagnitudeImageFilter< Image3DType, Image3DType > | GradientFilterType |
| typedef Image< Pixel8bitsType, 2 > | Image2D8bitsType |
| typedef Image2DType::Pointer | Image2DPointer |
| typedef Image< PixelType, 2 > | Image2DType |
| typedef Image< Pixel8bitsType, 3 > | Image3D8bitsType |
| typedef Image3DType::ConstPointer | Image3DConstPointer |
| typedef TImage | Image3DType |
| typedef Image3DType::IndexType | Index3DType |
| typedef Image2D8bitsType::IndexType | IndexType |
| typedef ImageRegionIterator< Image2D8bitsType > | IteratorType |
| typedef ImageLinearIteratorWithIndex< Image2DType > | LinearIteratorType |
| typedef std::list< IndexType > | List2DType |
| typedef vnl_matrix< double > | MatrixOfDoubleType |
| typedef vnl_matrix< int > | MatrixOfIntegerType |
| typedef Vector< unsigned int, 2 > | MeasurementVectorType |
| typedef NeighborhoodIterator< Image2D8bitsType > | NeighborIteratorType |
| typedef unsigned char | Pixel8bitsType |
| typedef float | PixelType |
| typedef PointSetType::PointDataContainer | PointDataContainer |
| typedef SmartPointer< Self > | Pointer |
| typedef PointSetType::PointsContainer | PointsContainer |
| typedef PointSet< unsigned short, 2 > | PointSetType |
| typedef PointsContainer::Iterator | PointsIterator |
| typedef PointSetType::PointType | PointType |
| typedef BinaryPruningImageFilter< Image2D8bitsType, Image2D8bitsType > | PruneFilterType |
| typedef Statistics::ListSample< MeasurementVectorType > | SampleType |
| typedef ActiveShapeModelCalculator< TImage > | Self |
| typedef ImageSliceConstIteratorWithIndex< Image3DType > | SliceIteratorType |
| typedef Object | Superclass |
| typedef BinaryThinningImageFilter< Image2D8bitsType, Image2D8bitsType > | ThinFilterType |
| typedef Vector< double, 2 > | Vector2DType |
| typedef Vector< double, 3 > | Vector3DType |
| typedef vnl_vector< double > | VectorOfDoubleType |
| typedef std::vector< unsigned int > | VectorType |
Public Member Functions | |
| virtual LightObject::Pointer | CreateAnother () const |
| virtual void | DebugOff () const |
| virtual void | DebugOn () const |
| virtual void | Delete () |
| void | GenerateData () |
| Command * | GetCommand (unsigned long tag) |
| bool | GetDebug () const |
| VectorOfDoubleType | GetEigenvalues () |
| MatrixOfDoubleType | GetEigenvector () |
| const double & | GetLowerThresholdGradient () const |
| VectorOfDoubleType | GetMeanShape () |
| const MetaDataDictionary & | GetMetaDataDictionary (void) const |
| MetaDataDictionary & | GetMetaDataDictionary (void) |
| virtual unsigned long | GetMTime () const |
| virtual const char * | GetNameOfClass () const |
| const unsigned int & | GetNumberOfTrainingImages () const |
| const unsigned int & | GetPruneIteration () const |
| virtual int | GetReferenceCount () const |
| const double & | GetTolerance () const |
| const double & | GetUpperThresholdDistance () const |
| const double & | GetUpperThresholdMeanDistance () const |
| bool | HasObserver (const EventObject &event) const |
| Set the input binary | image (values in{0, 255}).*/virtual void SetImage(const Image3DType *image) |
| void | InvokeEvent (const EventObject &) const |
| void | InvokeEvent (const EventObject &) |
| virtual void | Modified () const |
| void | Print (std::ostream &os, Indent indent=0) const |
| virtual void | Register () const |
| void | RemoveAllObservers () |
| void | RemoveObserver (unsigned long tag) |
| void | SetDebug (bool debugFlag) const |
| Set Get the lower threshold for the binary filter applied on the gradient images Changing this value from the default is not recommended or necessary but could be used to get thinner contours at the risk of creating an unstable solution *void | SetLowerThresholdGradient (const double <) |
| void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
| Set Get the number of iteration for Prunig filter *void | SetPruneIteration (const unsigned int &t) |
| virtual void | SetReferenceCount (int) |
| Set Get the distance threshold for the binary filter applied on the distance images Changing this value from the default is not recommended or necessary but could be used to get thicker contours at the risk of creating an unstable solution *void | SetUpperThresholdDistance (const double &ut2) |
| Set Get the distance threshold for the binary filter applied on the mean of the distance images Changing this value from the default is not recommended or necessary but could be used to get thicker contours at the risk of creating an unstable solution *void | SetUpperThresholdMeanDistance (const double &ut1) |
| Set Get the tolerance | threshold (in pixels unit) for the automatic landmarks.*/void SetTolerance(const double &t) |
| virtual void | UnRegister () const |
Static Public Member Functions | |
| static void | BreakOnError () |
| static bool | GetGlobalWarningDisplay () |
| static void | GlobalWarningDisplayOff () |
| static void | GlobalWarningDisplayOn () |
| static Pointer | New () |
| This is a global flag that controls whether any warning *or error messages are displayed *static void | SetGlobalWarningDisplay (bool flag) |
Public Attributes | |
| Allow people to add remove invoke observers(callbacks) to any ITK *object.This is an implementation of the subject/observer design *pattern.An observer is added by specifying an event to respond to *and an itk unsigned lon | AddObserver )(const EventObject &event, Command *) const |
| This is a global flag that controls whether any | debug |
Protected Member Functions | |
| ActiveShapeModelCalculator () | |
| bool | PrintObservers (std::ostream &os, Indent indent) const |
| void | PrintSelf (std::ostream &os, Indent indent) const |
| virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
| ~ActiveShapeModelCalculator () | |
Protected Attributes | |
| int | m_ReferenceCount |
| SimpleFastMutexLock | m_ReferenceCountLock |
| Methods invoked by virtual 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.*/virtual void PrintSelf(std voi | PrintHeader )(std::ostream &os, Indent indent) const |
|
|||||
|
Definition at line 149 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 150 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 151 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 142 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Reimplemented from itk::Object. Definition at line 84 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 152 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard filter type within this class. Definition at line 148 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 116 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard image type pointer within this class. Definition at line 124 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 115 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 117 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 125 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard image type within this class. Definition at line 114 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 121 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard index type within this class. Definition at line 120 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 143 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard iterator type within this class. Definition at line 140 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard list type within this class. Definition at line 136 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard matrix type within this class. Definition at line 110 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 111 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 103 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 144 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 98 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard pixel type within this class. Definition at line 90 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 133 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Reimplemented from itk::Object. Definition at line 83 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard container type within this class. Definition at line 132 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard PointSet type within this class. Definition at line 128 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 145 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 129 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 154 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 137 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard class typedefs. Reimplemented from itk::Object. Definition at line 81 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 141 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Reimplemented from itk::Object. Definition at line 82 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 153 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Standard vector type within this class. Definition at line 101 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 102 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 105 of file itkActiveShapeModelCalculator.h. |
|
|||||
|
Definition at line 104 of file itkActiveShapeModelCalculator.h. |
|
|||||||||
|
Definition at line 233 of file itkActiveShapeModelCalculator.h. References NULL. |
|
|||||||||
|
Definition at line 248 of file itkActiveShapeModelCalculator.h. |
|
|
This method is called when itkExceptionMacro executes. It allows the debugger to break on error. |
|
|
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::LightObject. |
|
|
Turn debugging output off. |
|
|
Turn debugging output on. |
|
|
Delete an itk object. This method should always be used to delete an object when the new operator was used to create it. Using the C delete method will not work with reference counting. |
|
|||||||||
|
Compute mean, eigenvectors and eigenvalues of a new or modified training set. This method computes the mean, eigenvectors and eigenvalues of the training set given as a parameter and stores them in the object. The values of these parameters can then be retrieved by using other methods of this object. |
|
|
Get the command associated with the given tag. NOTE: This returns a pointer to a Command, but it is safe to asign this to a Command::Pointer. Since Command inherits from LightObject, at this point in the code, only a pointer or a reference to the Command can be used. |
|
|
Get the value of the debug flag. |
|
|||||||||
|
Return the largest t eigenvalues [1 x t] |
|
|||||||||
|
Return the matrix where each column corresponds to a eigenvector [2n x t] |
|
|
|
|
|||||||||
|
Definition at line 173 of file itkActiveShapeModelCalculator.h. |
|
|||||||||
|
Return the mean Shape of the model (x1 y1 x2 y2 ... xn yn), where n = n. of landmarks |
|
|
|
|
|
|
|
|
|||||||||
|
Run-time type information (and related methods). Reimplemented from itk::Object. |
|
|||||||||
|
Get the number of training images. Definition at line 210 of file itkActiveShapeModelCalculator.h. |
|
|||||||||
|
Definition at line 205 of file itkActiveShapeModelCalculator.h. |
|
|
Gets the reference count on this object. Definition at line 98 of file itkLightObject.h. |
|
|||||||||
|
Definition at line 198 of file itkActiveShapeModelCalculator.h. |
|
|||||||||
|
Definition at line 191 of file itkActiveShapeModelCalculator.h. |
|
|||||||||
|
Definition at line 182 of file itkActiveShapeModelCalculator.h. |
|
|
Definition at line 100 of file itkObject.h. References itk::Object::SetGlobalWarningDisplay(). |
|
|
Definition at line 98 of file itkObject.h. References itk::Object::SetGlobalWarningDisplay(). |
|
|
Return true if an observer is registered for this event. |
|
|||||||||
|
Definition at line 156 of file itkActiveShapeModelCalculator.h. |
|
|
Call Execute on all the Commands observing this event id. The actions triggered by this call doesn't modify this object. |
|
|
Call Execute on all the Commands observing this event id. |
|
|
|||||||||
|
Method for creation through the object factory. Reimplemented from itk::Object. |
|
||||||||||||
|
Cause the object to print itself out. |
|
||||||||||||
|
|
|
||||||||||||||||
|
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::Object. Definition at line 250 of file itkActiveShapeModelCalculator.h. References itkDebugMacro, and HardConnectedComponentImageFilter::PrintSelf(). |
|
||||||||||||
|
|
|
|
Increase the reference count (mark as used by another object). Reimplemented from itk::LightObject. |
|
|
Remove all observers . |
|
|
Remove the observer with this tag value. |
|
|
Set the value of the debug flag. A non-zero value turns debugging on. |
|
|
Referenced by itk::Object::GlobalWarningDisplayOff(), and itk::Object::GlobalWarningDisplayOn(). |
|
||||||||||
|
Definition at line 171 of file itkActiveShapeModelCalculator.h. |
|
|
|
|
||||||||||
|
Definition at line 203 of file itkActiveShapeModelCalculator.h. |
|
|
Sets the reference count (use with care) Reimplemented from itk::LightObject. |
|
||||||||||
|
Definition at line 189 of file itkActiveShapeModelCalculator.h. |
|
||||||||||
|
Definition at line 180 of file itkActiveShapeModelCalculator.h. |
|
||||||||||
|
Definition at line 195 of file itkActiveShapeModelCalculator.h. |
|
|
Decrease the reference count (release by another object). Reimplemented from itk::LightObject. |
|
|
|
|
|
Definition at line 94 of file itkObject.h. |
|
|
Number of uses of this object by other objects. Definition at line 119 of file itkLightObject.h. |
|
|
Mutex lock to protect modification to the reference count Definition at line 122 of file itkLightObject.h. |
|
|
|
1.4.2 written by Dimitri van Heesch,
© 1997-2000