#include <itkCovarianceCalculator.h>
Inheritance diagram for itk::Statistics::CovarianceCalculator< TSample >:


If there is a mean vector provided by the SetMean method, this calculator will do the caculation as follows: Let
denotes covariance matrix for the sample, then: When
is
th component of a measurement vector
,
is the
th componet of the
, and the
is the
th componet
, 
Without the plugged in mean vector, this calculator will perform the single pass mean and covariance calculation algorithm.
Recent API changes: The static const macro to get the length of a measurement vector, 'MeasurementVectorSize' has been removed to allow the length of a measurement vector to be specified at run time. It is now obtained from the input sample. Please use the function GetMeasurementVectorSize() to obtain the length. The mean output is an Array rather than a Vector. The covariance matrix is represented by a VariableSizeMatrix rather than a Matrix.
Definition at line 53 of file itkCovarianceCalculator.h.
Public Types | |
| typedef SmartPointer< const Self > | ConstPointer |
| typedef TSample | InputSampleType |
| typedef Array< double > | MeanType |
| typedef Superclass::MeasurementVectorSizeType | MeasurementVectorSizeType |
| typedef Superclass::MeasurementVectorType | MeasurementVectorType |
| typedef VariableSizeMatrix< double > | OutputType |
| typedef SmartPointer< Self > | Pointer |
| typedef CovarianceCalculator | Self |
| typedef SampleAlgorithmBase< TSample > | Superclass |
Public Member Functions | |
| virtual LightObject::Pointer | CreateAnother () const |
| virtual void | DebugOff () const |
| virtual void | DebugOn () const |
| virtual void | Delete () |
| Command * | GetCommand (unsigned long tag) |
| bool | GetDebug () const |
| const TSample * | GetInputSample () const |
| MeanType * | GetMean () |
| virtual MeasurementVectorSizeType | GetMeasurementVectorSize () const |
| const MetaDataDictionary & | GetMetaDataDictionary (void) const |
| MetaDataDictionary & | GetMetaDataDictionary (void) |
| virtual unsigned long | GetMTime () const |
| Standard Macros *virtual const char * | GetNameOfClass () const |
| const OutputType * | GetOutput () const |
| virtual int | GetReferenceCount () const |
| bool | HasObserver (const EventObject &event) const |
| 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 |
| Stores the sample pointer *void | SetInputSample (const TSample *sample) |
| void | SetMean (MeanType *mean) |
| virtual void | SetMeasurementVectorSize (MeasurementVectorSizeType _arg) |
| void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
| virtual void | SetReferenceCount (int) |
| virtual void | UnRegister () const |
| void | Update () |
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 | |
| void | ComputeCovarianceWithGivenMean () |
| void | ComputeCovarianceWithoutGivenMean () |
| CovarianceCalculator () | |
| void | GenerateData () |
| 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 |
| SampleAlgorithmBase () | |
| virtual | ~CovarianceCalculator () |
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 |
|
|||||
|
Reimplemented from itk::Statistics::SampleAlgorithmBase< TSample >. Definition at line 61 of file itkCovarianceCalculator.h. |
|
|
Sample typedefs alias Reimplemented in itk::Statistics::NeighborhoodSampler< TSample >, and itk::Statistics::SampleMeanShiftBlurringFilter< TSample >. Definition at line 59 of file itkSampleAlgorithmBase.h. |
|
|||||
|
Typedef for the mean output Definition at line 75 of file itkCovarianceCalculator.h. |
|
|||||
|
Length of a measurement vector Reimplemented from itk::Statistics::SampleAlgorithmBase< TSample >. Definition at line 65 of file itkCovarianceCalculator.h. |
|
|||||
|
Measurement vector type Reimplemented from itk::Statistics::SampleAlgorithmBase< TSample >. Definition at line 72 of file itkCovarianceCalculator.h. |
|
|||||
|
Typedef for Covariance output Definition at line 78 of file itkCovarianceCalculator.h. |
|
|||||
|
Reimplemented from itk::Statistics::SampleAlgorithmBase< TSample >. Definition at line 60 of file itkCovarianceCalculator.h. |
|
|||||
|
Standard class typedefs. Reimplemented from itk::Statistics::SampleAlgorithmBase< TSample >. Definition at line 58 of file itkCovarianceCalculator.h. |
|
|||||
|
Reimplemented from itk::Statistics::SampleAlgorithmBase< TSample >. Definition at line 59 of file itkCovarianceCalculator.h. |
|
|||||||||
|
|
|
|||||||||
|
|
|
|
This method is called when itkExceptionMacro executes. It allows the debugger to break on error. |
|
|||||||||
|
Calculates the covariance matrix using the given mean |
|
|||||||||
|
Calculates the covariance matrix and the mean in a single pass |
|
|
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. |
|
|||||||||
|
Calculates the covariance and save it. This method calls ComputeCovarianceWithGivenMean, if the user provides mean vector using SetMean method. Otherwise, it calls ComputeCovarianceWithoutGivenMethod depending on Reimplemented from itk::Statistics::SampleAlgorithmBase< TSample >. |
|
|
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. |
|
|
|
|
|
Definition at line 82 of file itkSampleAlgorithmBase.h. |
|
|||||||||
|
Returns the sample pointer |
|
|
Get Macro to get the length of a measurement vector. This is equal to the length of each measurement vector contained in the samples that are plugged in as input to this class. GetMeasurementVectorSize() will return zero until the SetInputSample() method has been called |
|
|
|
|
|
|
|
|
|||||||||
|
Standard part of all itk objects. Reimplemented from itk::Statistics::SampleAlgorithmBase< TSample >. |
|
|||||||||
|
Returns the covariance matrix of the target sample data |
|
|
Gets the reference count on this object. Definition at line 98 of file itkLightObject.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. |
|
|
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::Statistics::SampleAlgorithmBase< TSample >. |
|
||||||||||||
|
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::Statistics::SampleAlgorithmBase< TSample >. |
|
||||||||||||
|
|
|
|
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 63 of file itkSampleAlgorithmBase.h. |
|
||||||||||
|
Stores the sample pointer |
|
|
|
|
|
|
|
|
Sets the reference count (use with care) Reimplemented from itk::LightObject. |
|
|
Decrease the reference count (release by another object). Reimplemented from itk::LightObject. |
|
|
dummy function that calls the GenerateData() function to generate output. It exists for future compatibility with ProcessObject without streaming Definition at line 88 of file itkSampleAlgorithmBase.h. |
|
|
|
|
|
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