Orfeo Toolbox  3.16
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions
itk::Statistics::GaussianDistribution Class Reference

GaussianDistribution class defines the interface for a univariate Gaussian distribution (pdfs, cdfs, etc.). More...

#include <itkGaussianDistribution.h>

+ Inheritance diagram for itk::Statistics::GaussianDistribution:
+ Collaboration diagram for itk::Statistics::GaussianDistribution:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef Array< double > ParametersType
typedef SmartPointer< SelfPointer
typedef GaussianDistribution Self
typedef ProbabilityDistribution Superclass

Public Member Functions

unsigned long AddObserver (const EventObject &event, Command *)
unsigned long AddObserver (const EventObject &event, Command *) const
virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual void DebugOff () const
virtual void DebugOn () const
virtual void Delete ()
virtual double EvaluateCDF (double x) const
virtual double EvaluateCDF (double x, const ParametersType &) const
virtual double EvaluateCDF (double x, double mean, double variance) const
virtual double EvaluateInverseCDF (double p) const
virtual double EvaluateInverseCDF (double p, const ParametersType &) const
virtual double EvaluateInverseCDF (double p, double mean, double variance) const
virtual double EvaluatePDF (double x) const
virtual double EvaluatePDF (double x, const ParametersType &) const
virtual double EvaluatePDF (double x, double mean, double variance) const
CommandGetCommand (unsigned long tag)
bool GetDebug () const
virtual double GetMean () const
MetaDataDictionaryGetMetaDataDictionary (void)
const MetaDataDictionaryGetMetaDataDictionary (void) const
virtual unsigned long GetMTime () const
virtual const char * GetNameOfClass () const
virtual unsigned long GetNumberOfParameters () const
virtual const ParametersTypeGetParameters ()
virtual int GetReferenceCount () const
virtual double GetVariance () const
virtual bool HasMean () const
bool HasObserver (const EventObject &event) const
virtual bool HasVariance () const
void InvokeEvent (const EventObject &)
void InvokeEvent (const EventObject &) const
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
virtual void SetMean (double)
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
virtual void SetParameters (const ParametersType &params)
virtual void SetReferenceCount (int)
virtual void SetVariance (double)
virtual void UnRegister () const

Static Public Member Functions

static void BreakOnError ()
static double CDF (double x)
static double CDF (double x, const ParametersType &)
static double CDF (double x, double mean, double variance)
static bool GetGlobalWarningDisplay ()
static void GlobalWarningDisplayOff ()
static void GlobalWarningDisplayOn ()
static double InverseCDF (double p)
static double InverseCDF (double p, const ParametersType &)
static double InverseCDF (double p, double mean, double variance)
static Pointer New ()
static double PDF (double x)
static double PDF (double x, const ParametersType &)
static double PDF (double x, double mean, double variance)
static void SetGlobalWarningDisplay (bool flag)

Protected Types

typedef int InternalReferenceCountType

Protected Member Functions

 GaussianDistribution (void)
virtual ~GaussianDistribution (void)
virtual void PrintHeader (std::ostream &os, Indent indent) const
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

Protected Attributes

ParametersType m_Parameters
InternalReferenceCountType m_ReferenceCount
SimpleFastMutexLock m_ReferenceCountLock

Private Member Functions

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

Detailed Description

GaussianDistribution class defines the interface for a univariate Gaussian distribution (pdfs, cdfs, etc.).

GaussianDistribution provides access to the probability density function (pdf), the cumulative distribution function (cdf), and the inverse cumulative distribution function for a Gaussian distribution.

The EvaluatePDF(), EvaluateCDF, EvaluateInverseCDF() methods are all virtual, allowing algorithms to be written with an abstract interface to a distribution (with said distribution provided to the algorithm at run-time). Static methods, not requiring an instance of the distribution, are also provided. The static methods allow for optimized access to distributions when the distribution is known a priori to the algorithm.

GaussianDistributions are univariate. Multivariate versions may be provided under a separate superclass (since the parameters to the pdf and cdf would have to be vectors not scalars).

GaussianDistributions can be used for Z-score statistical tests.

Note:
This work is part of the National Alliance for Medical Image Computing (NAMIC), funded by the National Institutes of Health through the NIH Roadmap for Medical Research, Grant U54 EB005149. Information on the National Centers for Biomedical Computing can be obtained from http://nihroadmap.nih.gov/bioinformatics.

Definition at line 53 of file itkGaussianDistribution.h.


Member Typedef Documentation

Reimplemented from itk::Statistics::ProbabilityDistribution.

Definition at line 61 of file itkGaussianDistribution.h.

typedef int itk::LightObject::InternalReferenceCountType
protectedinherited

Define the type of the reference count according to the target. This allows the use of atomic operations

Definition at line 137 of file itkLightObject.h.

Type of the parameter vector.

Definition at line 78 of file itkProbabilityDistribution.h.

Reimplemented from itk::Statistics::ProbabilityDistribution.

Definition at line 60 of file itkGaussianDistribution.h.

Standard class typedefs

Reimplemented from itk::Statistics::ProbabilityDistribution.

Definition at line 58 of file itkGaussianDistribution.h.

Reimplemented from itk::Statistics::ProbabilityDistribution.

Definition at line 59 of file itkGaussianDistribution.h.


Constructor & Destructor Documentation

itk::Statistics::GaussianDistribution::GaussianDistribution ( void  )
protected

Definition at line 27 of file itkGaussianDistribution.cxx.

virtual itk::Statistics::GaussianDistribution::~GaussianDistribution ( void  )
inlineprotectedvirtual

Definition at line 227 of file itkGaussianDistribution.h.

itk::Statistics::GaussianDistribution::GaussianDistribution ( const Self )
private

Member Function Documentation

unsigned long itk::Object::AddObserver ( const EventObject event,
Command cmd 
)
inherited

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::Command to execute. It returns an unsigned long tag which can be used later to remove the event or retrieve the command. The memory for the Command becomes the responsibility of this object, so don't pass the same instance of a command to two different objects

Definition at line 389 of file itkObject.cxx.

References itk::SubjectImplementation::AddObserver().

Referenced by otb::StreamingImageVirtualWriter< TInputImage >::GenerateData(), itk::ProgressAccumulator::RegisterInternalFilter(), otb::ImageFileWriter< TInputImage >::Update(), and otb::WriterWatcherBase::WriterWatcherBase().

unsigned long itk::Object::AddObserver ( const EventObject event,
Command cmd 
) const
inherited

Definition at line 401 of file itkObject.cxx.

References itk::SubjectImplementation::AddObserver().

void itk::LightObject::BreakOnError ( )
staticinherited

This method is called when itkExceptionMacro executes. It allows the debugger to break on error.

Definition at line 149 of file itkLightObject.cxx.

double itk::Statistics::GaussianDistribution::CDF ( double  x)
static

Static method to evaluate the cumulative distribution function (cdf) of a standardized (mean zero, unit variance) Gaussian. The static method provides optimized access without requiring an instance of the class. Accuracy is approximately 10^-8.

Definition at line 222 of file itkGaussianDistribution.cxx.

References itk::Math::sqrt1_2.

Referenced by CDF(), EvaluateCDF(), and otb::Function::GaussianRenderingFunction< TPixel, TRGBPixel, TPixelRepresentationFunction, TTransferFunction >::EvaluateGaussianDistribution().

double itk::Statistics::GaussianDistribution::CDF ( double  x,
const ParametersType p 
)
static

Static method to evaluate the cumulative distribution function (cdf) of a Gaussian. The parameters of the distribution are passed as a parameter vector. The ordering of the parameters is (mean, variance). The static method provides optimized access without requiring an instance of the class.

Definition at line 241 of file itkGaussianDistribution.cxx.

References CDF(), itk::Array< TValueType >::GetSize(), itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

double itk::Statistics::GaussianDistribution::CDF ( double  x,
double  mean,
double  variance 
)
static

Static method to evaluate the cumulative distribution function (cdf) of a Gaussian. The parameters of the distribution are passed as separate values. The static method provides optimized access without requiring an instance of the class.

Definition at line 230 of file itkGaussianDistribution.cxx.

References itk::Math::sqrt1_2.

virtual::itk::LightObject::Pointer itk::Statistics::GaussianDistribution::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.

void itk::Object::DebugOff ( ) const
virtualinherited

Turn debugging output off.

Definition at line 253 of file itkObject.cxx.

void itk::Object::DebugOn ( ) const
virtualinherited

Turn debugging output on.

Definition at line 242 of file itkObject.cxx.

void itk::LightObject::Delete ( )
virtualinherited

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.

Delete a 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.

Definition at line 88 of file itkLightObject.cxx.

double itk::Statistics::GaussianDistribution::EvaluateCDF ( double  x) const
virtual

Evaluate the cumulative distribution function (cdf). The parameters of the distribution are assigned via SetParameters().

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 422 of file itkGaussianDistribution.cxx.

References CDF(), itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

double itk::Statistics::GaussianDistribution::EvaluateCDF ( double  x,
const ParametersType p 
) const
virtual

Evaluate the cumulative distribution function (cdf). The parameters for the distribution are passed as a parameters vector. The ordering of the parameters is (mean, variance).

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 449 of file itkGaussianDistribution.cxx.

References CDF(), itk::Array< TValueType >::GetSize(), itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

double itk::Statistics::GaussianDistribution::EvaluateCDF ( double  x,
double  mean,
double  variance 
) const
virtual

Evaluate the cumulative distribution function (cdf). The parameters of the distribution are passed as separate parameters.

Definition at line 476 of file itkGaussianDistribution.cxx.

References CDF().

double itk::Statistics::GaussianDistribution::EvaluateInverseCDF ( double  p) const
virtual

Evaluate the inverse cumulative distribution function (inverse cdf). Parameter p must be between 0.0 and 1.0. The parameters of the distribution are assigned via SetParameters().

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 489 of file itkGaussianDistribution.cxx.

References InverseCDF(), itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

double itk::Statistics::GaussianDistribution::EvaluateInverseCDF ( double  p,
const ParametersType params 
) const
virtual

Evaluate the inverse cumulative distribution function (inverse cdf). Parameter p must be between 0.0 and 1.0. The parameters for the distribution are passed as a parameters vector. The ordering of the parameters is (mean, variance).

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 516 of file itkGaussianDistribution.cxx.

References itk::Array< TValueType >::GetSize(), InverseCDF(), itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

double itk::Statistics::GaussianDistribution::EvaluateInverseCDF ( double  p,
double  mean,
double  variance 
) const
virtual

Evaluate the inverse cumulative distribution function (inverse cdf). Parameter p must be between 0.0 and 1.0. The parameters of the distribution are passed as separate parameters.

Definition at line 543 of file itkGaussianDistribution.cxx.

References InverseCDF().

double itk::Statistics::GaussianDistribution::EvaluatePDF ( double  x) const
virtual

Evaluate the probability density function (pdf). The parameters of the distribution are assigned via SetParameters().

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 355 of file itkGaussianDistribution.cxx.

References PDF(), itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

double itk::Statistics::GaussianDistribution::EvaluatePDF ( double  x,
const ParametersType p 
) const
virtual

Evaluate the probability density function (pdf). The parameters for the distribution are passed as a parameters vector. The ordering of the parameters is (mean, variance).

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 382 of file itkGaussianDistribution.cxx.

References itk::Array< TValueType >::GetSize(), PDF(), itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

double itk::Statistics::GaussianDistribution::EvaluatePDF ( double  x,
double  mean,
double  variance 
) const
virtual

Evaluate the probability density function (pdf). The parameters of the distribution are passed as separate parameters.

Definition at line 409 of file itkGaussianDistribution.cxx.

References PDF().

Command * itk::Object::GetCommand ( unsigned long  tag)
inherited

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.

Definition at line 414 of file itkObject.cxx.

References itk::Object::GetCommand(), and NULL.

Referenced by itk::Object::GetCommand().

bool itk::Object::GetDebug ( ) const
inherited

Get the value of the debug flag.

Definition at line 264 of file itkObject.cxx.

Referenced by otb::ogr::ImageReference< double >::GetDebug().

bool itk::Object::GetGlobalWarningDisplay ( )
staticinherited

Get the value of the global debug output control flag.

Definition at line 381 of file itkObject.cxx.

double itk::Statistics::GaussianDistribution::GetMean ( void  ) const
virtual

Get the mean of the Gaussian distribution. Defaults to 0.0. The mean is stored in position 0 of the parameters vector.

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 37 of file itkGaussianDistribution.cxx.

References itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

MetaDataDictionary & itk::Object::GetMetaDataDictionary ( void  )
inherited
Returns:
A reference to this objects MetaDataDictionary.
Warning:
This reference may be changed.

Reimplemented in otb::ImageMetadataInterfaceBase.

Definition at line 532 of file itkObject.cxx.

References NULL.

Referenced by otb::RenderingImageFilter< TInputImage, TOutputImage >::BeforeThreadedGenerateData(), itk::Brains2MaskImageIO::CanReadFile(), otb::DataNode< TPrecision, VDimension, TValuePrecision >::CopyFieldList(), otb::VectorImage< TPixel, VImageDimension >::CopyInformation(), otb::Image< TPixel, VImageDimension >::CopyInformation(), itk::GDCMImageIO::GetBodyPart(), itk::GDCMImageIO::GetInstitution(), itk::GDCMImageIO::GetManufacturer(), itk::GDCMImageIO::GetModality(), itk::GDCMImageIO::GetModel(), itk::GDCMImageIO::GetNumberOfSeriesInStudy(), itk::GDCMImageIO::GetNumberOfStudyRelatedSeries(), itk::GDCMImageIO::GetPatientAge(), itk::GDCMImageIO::GetPatientDOB(), itk::GDCMImageIO::GetPatientID(), itk::GDCMImageIO::GetPatientName(), itk::GDCMImageIO::GetPatientSex(), itk::GDCMImageIO::GetScanOptions(), itk::GDCMImageIO::GetStudyDate(), itk::GDCMImageIO::GetStudyDescription(), itk::GDCMImageIO::GetStudyID(), itk::GDCMImageIO::GetValueFromTag(), otb::GDALImageIO::InternalReadImageInformation(), itk::GDCMImageIO::InternalReadImageInformation(), otb::GDALImageIO::InternalWriteImageInformation(), otb::RAMDrivenAdaptativeStreamingManager< TImage >::PrepareStreaming(), itk::DICOMImageIO2::Read(), itk::DICOMImageIO2::ReadImageInformation(), itk::NrrdImageIO::ReadImageInformation(), otb::JPEG2000ImageIO::ReadImageInformation(), itk::MetaImageIO::ReadImageInformation(), itk::VoxBoCUBImageIO::ReadImageInformation(), itk::MRCImageIO::ReadImageInformation(), itk::IPLCommonImageIO::ReadImageInformation(), itk::PhilipsRECImageIO::ReadImageInformation(), itk::AnalyzeImageIO::ReadImageInformation(), itk::Bruker2DSEQImageIO::ReadImageInformation(), otb::ImageMetadataInterfaceBase::SetImage(), itk::NiftiImageIO::SetImageIOMetadataFromNIfTI(), otb::VectorDataToLabelImageFilter< TVectorData, TOutputImage >::SetOutputParametersFromImage(), itk::NrrdImageIO::Write(), itk::GDCMImageIO::Write(), and itk::PolygonGroupSpatialObjectXMLFileWriter::WriteFile().

const MetaDataDictionary & itk::Object::GetMetaDataDictionary ( void  ) const
inherited
Returns:
A constant reference to this objects MetaDataDictionary.

Reimplemented in otb::ImageMetadataInterfaceBase.

Definition at line 543 of file itkObject.cxx.

References NULL.

unsigned long itk::Object::GetMTime ( void  ) const
virtualinherited

Return this objects modified time.

Return the modification for this object.

Reimplemented in itk::ImageAdaptor< TImage, TAccessor >, itk::ImageAdaptor< TImage, Accessor::AsinPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::SqrtPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, otb::Accessor::VectorImageToASPixelAccessor< TImage::PixelType::ValueType > >, itk::ImageAdaptor< TImage, Accessor::TanPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::CosPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::VectorToRGBPixelAccessor< TImage::PixelType::ValueType > >, itk::ImageAdaptor< TImage, Accessor::RGBToVectorPixelAccessor< TImage::PixelType::ComponentType > >, itk::ImageAdaptor< TImage, Accessor::ComplexToModulusPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::AbsPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ShiftScalePixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::SinPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::LogPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ComplexToPhasePixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< VectorImage< TPixelType, Dimension >, Accessor::VectorImageToImagePixelAccessor< TPixelType > >, itk::ImageAdaptor< TImage, Accessor::Log10PixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::AtanPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ComplexToRealPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ComplexToImaginaryPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ExpNegativePixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ExpPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::AcosPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::RGBToLuminancePixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::AddPixelAccessor< TImage::PixelType > >, itk::ResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >, itk::ResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >, itk::SpatialObject< TDimension >, itk::SpatialObject< 3 >, itk::SpatialObject< ::itk::GetMeshDimension< TMesh >::PointDimension >, itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >, itk::ImageRegistrationMethod< TFixedImage, TMovingImage >, itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >, itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >, itk::TransformToDeformationFieldSource< TOutputImage, TTransformPrecisionType >, itk::InverseDeformationFieldImageFilter< TInputImage, TOutputImage >, itk::PointSetToImageRegistrationMethod< TFixedPointSet, TMovingImage >, itk::BoundingBox< TPointIdentifier, VPointDimension, TCoordRep, TPointsContainer >, itk::PointSetToPointSetRegistrationMethod< TFixedPointSet, TMovingPointSet >, itk::DeformationFieldSource< TOutputImage >, itk::ImageSpatialObject< TDimension, TPixelType >, itk::ImageSpatialObject< TDimension, unsigned char >, itk::MeshSpatialObject< TMesh >, and itk::SceneSpatialObject< TSpaceDimension >.

Definition at line 286 of file itkObject.cxx.

Referenced by itk::DeformationFieldSource< TOutputImage >::GetMTime(), itk::BoundingBox< TPointIdentifier, VPointDimension, TCoordRep, TPointsContainer >::GetMTime(), itk::InverseDeformationFieldImageFilter< TInputImage, TOutputImage >::GetMTime(), itk::TransformToDeformationFieldSource< TOutputImage, TTransformPrecisionType >::GetMTime(), itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::GetMTime(), itk::SpatialObject< TDimension >::GetMTime(), itk::ResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::GetMTime(), itk::SpatialObject< ::itk::GetMeshDimension< TMesh >::PointDimension >::GetObjectMTime(), otb::Function::NoStretchRenderingFunction< TPixel, TRGBPixel, TPixelRepresentationFunction, TTransferFunction >::Initialize(), otb::Function::StandardRenderingFunction< TPixel, TRGBPixel, TPixelRepresentationFunction, TTransferFunction >::Initialize(), itk::VTKImageExportBase::PipelineModifiedCallback(), and itk::ProcessObject::UpdateOutputInformation().

virtual const char* itk::Statistics::GaussianDistribution::GetNameOfClass ( ) const
virtual

Strandard macros

Reimplemented from itk::Statistics::ProbabilityDistribution.

virtual unsigned long itk::Statistics::GaussianDistribution::GetNumberOfParameters ( void  ) const
inlinevirtual

Return the number of parameters. For a univariate Gaussian, this is 2 (mean, variance).

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 71 of file itkGaussianDistribution.h.

virtual const ParametersType& itk::Statistics::ProbabilityDistribution::GetParameters ( )
virtualinherited

Get the parameters of the distribution. See concrete subclasses for the order of parameters. Subclasses may provide convenience methods for setting parameters, i.e. SetDegreesOfFreedom(), etc.

virtual int itk::LightObject::GetReferenceCount ( ) const
inlinevirtualinherited

Gets the reference count on this object.

Definition at line 105 of file itkLightObject.h.

double itk::Statistics::GaussianDistribution::GetVariance ( void  ) const
virtual

Get the variance of the Gaussian distribution. Defaults to 1.0. The variance is stored in position 1 of the parameters vector.

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 109 of file itkGaussianDistribution.cxx.

References itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

static void itk::Object::GlobalWarningDisplayOff ( )
inlinestaticinherited
static void itk::Object::GlobalWarningDisplayOn ( )
inlinestaticinherited

Definition at line 98 of file itkObject.h.

References itk::Object::SetGlobalWarningDisplay().

virtual bool itk::Statistics::GaussianDistribution::HasMean ( ) const
inlinevirtual

Does this distribution have a mean?

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 126 of file itkGaussianDistribution.h.

bool itk::Object::HasObserver ( const EventObject event) const
inherited

Return true if an observer is registered for this event.

Definition at line 467 of file itkObject.cxx.

virtual bool itk::Statistics::GaussianDistribution::HasVariance ( ) const
inlinevirtual

Does this distribution have a variance?

Implements itk::Statistics::ProbabilityDistribution.

Definition at line 138 of file itkGaussianDistribution.h.

double itk::Statistics::GaussianDistribution::InverseCDF ( double  p)
static

Static method to evaluate the inverse cumulative distribution function of a standardized (mean zero, unit variance) Gaussian. The static method provides optimized access without requiring an instance of the class. Parameter p must be between 0.0 and 1.0.

THis implementation was provided by Robert W. Cox from the Biophysics Research Institute at the Medical College of Wisconsin. This function is based off of a rational polynomial approximation to the inverse Gaussian CDF which can be found in M. Abramowitz and I.A. Stegun. Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables. John Wiley & Sons. New York. Equation 26.2.23. pg. 933. 1972.

Since the initial approximation only provides an estimate within 4.5 E-4 of the true value, 3 Newton-Raphson interations are used to refine the approximation. Accuracy is approximately 10^-8.

Let, Q(x) = (1/sqrt(2*pi)) Int_{x}^{infinity} e^{-t^2/2} dt = 0.5 * erfc(x/sqrt(2))

Given p, this function computes x such that Q(x) = p, for 0 < p < 1

Note that the Gaussian CDF is defined as P(x) = (1/sqrt(2*pi)) Int_{-infinity}{x} e^{-t^2/2} dt = 1 - Q(x)

This function has been modified to compute the inverse of P(x) instead of Q(x).

Step 1: use 26.2.23 from Abramowitz and Stegun

Step 2: do 3 Newton steps to improve this

Definition at line 264 of file itkGaussianDistribution.cxx.

References itk::Math::sqrt1_2.

Referenced by EvaluateInverseCDF(), itk::Statistics::ChiSquareDistribution::InverseCDF(), itk::Statistics::TDistribution::InverseCDF(), and InverseCDF().

double itk::Statistics::GaussianDistribution::InverseCDF ( double  p,
const ParametersType params 
)
static

Static method to evaluate the inverse cumulative distribution function of a Gaussian. The parameters of the distribution are passed as a parameter vector. The ordering of the parameters is (mean, variance). The static method provides optimized access without requiring an instance of the class. Parameter p must be between 0.0 and 1.0

Definition at line 332 of file itkGaussianDistribution.cxx.

References itk::Array< TValueType >::GetSize(), InverseCDF(), itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

double itk::Statistics::GaussianDistribution::InverseCDF ( double  p,
double  mean,
double  variance 
)
static

Static method to evaluate the inverse cumulative distribution function of a Gaussian. The parameters of the distribution are passed as separate values. The static method provides optimized access without requiring an instance of the class. Parameter p must be between 0.0 and 1.0

Definition at line 319 of file itkGaussianDistribution.cxx.

References InverseCDF().

void itk::Object::InvokeEvent ( const EventObject event)
inherited
void itk::Object::InvokeEvent ( const EventObject event) const
inherited

Call Execute on all the Commands observing this event id. The actions triggered by this call doesn't modify this object.

Definition at line 457 of file itkObject.cxx.

void itk::Object::Modified ( void  ) const
virtualinherited

Update the modification time for this object. Many filters rely on the modification time to determine if they need to recompute their data.

Make sure this object's modified time is greater than all others.

Reimplemented in otb::SVMModel< TValue, TLabel >, otb::SurfaceAdjacencyEffect6SCorrectionSchemeFilter< TInputImage, TOutputImage >, itk::ImageAdaptor< TImage, TAccessor >, itk::ImageAdaptor< TImage, Accessor::AsinPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::SqrtPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, otb::Accessor::VectorImageToASPixelAccessor< TImage::PixelType::ValueType > >, itk::ImageAdaptor< TImage, Accessor::TanPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::CosPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::VectorToRGBPixelAccessor< TImage::PixelType::ValueType > >, itk::ImageAdaptor< TImage, Accessor::RGBToVectorPixelAccessor< TImage::PixelType::ComponentType > >, itk::ImageAdaptor< TImage, Accessor::ComplexToModulusPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::AbsPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ShiftScalePixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::SinPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::LogPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ComplexToPhasePixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< VectorImage< TPixelType, Dimension >, Accessor::VectorImageToImagePixelAccessor< TPixelType > >, itk::ImageAdaptor< TImage, Accessor::Log10PixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::AtanPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ComplexToRealPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ComplexToImaginaryPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ExpNegativePixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::ExpPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::AcosPixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::RGBToLuminancePixelAccessor< TImage::PixelType, TOutputPixelType > >, itk::ImageAdaptor< TImage, Accessor::AddPixelAccessor< TImage::PixelType > >, otb::GenericRSTransform< TScalarType, NInputDimensions, NOutputDimensions >, otb::MeanShiftImageFilter< TInputImage, TOutputImage, TLabeledOutput, TBufferConverter >, otb::MeanShiftImageFilter< TInputImage, TOutputImage, TLabeledOutput, MeanShift::VectorBufferConverter >, otb::GCPsToRPCSensorModelImageFilter< TImage >, otb::Polygon< TValue >, otb::ImageRegionAdaptativeSplitter< VImageDimension >, otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >, itk::GrayscaleDilateImageFilter< TInputImage, TOutputImage, TKernel >, otb::PolyLineParametricPathWithValue< TValue, VDimension >, itk::GrayscaleErodeImageFilter< TInputImage, TOutputImage, TKernel >, otb::PolyLineParametricPathWithValue< TValue, 2 >, itk::MorphologicalGradientImageFilter< TInputImage, TOutputImage, TKernel >, otb::PhysicalToRPCSensorModelImageFilter< TImage >, itk::GrayscaleMorphologicalClosingImageFilter< TInputImage, TOutputImage, TKernel >, itk::GrayscaleMorphologicalOpeningImageFilter< TInputImage, TOutputImage, TKernel >, itk::MiniPipelineSeparableImageFilter< TInputImage, TOutputImage, TFilter >, itk::MiniPipelineSeparableImageFilter< TInputImage, TOutputImage, RankImageFilter< TInputImage, TInputImage, FlatStructuringElement< ::itk::GetImageDimension< TInputImage >::ImageDimension > > >, itk::NormalizeImageFilter< TInputImage, TOutputImage >, and otb::StatisticsXMLFileReader< TMeasurementVector >.

Definition at line 297 of file itkObject.cxx.

Referenced by otb::Wrapper::InputImageListParameter::AddFromFileName(), otb::Wrapper::InputVectorDataListParameter::AddFromFileName(), otb::Wrapper::InputImageListParameter::AddImage(), otb::Wrapper::InputImageListParameter::AddNullElement(), otb::Wrapper::InputVectorDataListParameter::AddNullElement(), otb::Wrapper::StringListParameter::AddNullElement(), otb::VectorDataModel::AddPointToGeometry(), otb::Wrapper::InputVectorDataListParameter::AddVectorData(), otb::Wrapper::InputImageListParameter::ClearValue(), otb::Wrapper::InputVectorDataListParameter::ClearValue(), otb::VectorDataModel::DeleteGeometry(), otb::VectorDataModel::EndGeometry(), otb::Wrapper::InputImageListParameter::Erase(), otb::Wrapper::InputVectorDataListParameter::Erase(), itk::NarrowBandImageFilterBase< TInputImage, Image< TOutputPixelType,::itk::GetImageDimension< TInputImage >::ImageDimension > >::InsertNarrowBandNode(), otb::ImageWidget< TInputImage >::LinearInterpolationOff(), otb::ImageWidget< TInputImage >::LinearInterpolationOn(), itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::MatrixOffsetTransformBase(), otb::ogr::ImageReference< double >::Modified(), otb::Function::StandardRenderingFunction< TPixel, TRGBPixel, TPixelRepresentationFunction, TTransferFunction >::SetAutoMinMax(), otb::BlendingImageFilter< TInputImage1, TInputImage2, TOutputImage >::SetBlendingFunction(), otb::ImageLayerGenerator< TImageLayer >::SetBlendingFunction(), otb::TileMapImageIO::SetCacheDirectory(), itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >::SetCenter(), otb::Function::StandardRenderingFunction< TPixel, TRGBPixel, TPixelRepresentationFunction, TTransferFunction >::SetChannelList(), itk::LBFGSBOptimizer::SetCostFunction(), itk::MINC2ImageIO::SetDimensionName(), itk::ImageIOBase::SetDimensions(), itk::ImageIOBase::SetDirection(), otb::Wrapper::InputImageListParameter::SetImageList(), itk::GDCMSeriesFileNames::SetInputDirectory(), otb::HistogramStatisticsFunction< TInputHistogram, TOutput >::SetInputHistogram(), otb::ImageToGenericRSOutputParameters< TImage >::SetInputKeywordList(), otb::Wrapper::InputVectorDataListParameter::SetListFromFileName(), otb::Wrapper::InputImageListParameter::SetListFromFileName(), otb::Function::RenderingFunction< TPixel, TRGBPixel >::SetListSample(), itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >::SetMatrix(), itk::NarrowBandImageFilterBase< TInputImage, Image< TOutputPixelType,::itk::GetImageDimension< TInputImage >::ImageDimension > >::SetNarrowBand(), itk::NarrowBandImageFilterBase< TInputImage, Image< TOutputPixelType,::itk::GetImageDimension< TInputImage >::ImageDimension > >::SetNarrowBandInnerRadius(), itk::NarrowBandImageFilterBase< TInputImage, Image< TOutputPixelType,::itk::GetImageDimension< TInputImage >::ImageDimension > >::SetNarrowBandTotalRadius(), otb::Wrapper::InputImageListParameter::SetNthFileName(), otb::Wrapper::InputVectorDataListParameter::SetNthFileName(), itk::ImageIOBase::SetNumberOfDimensions(), itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >::SetOffset(), itk::ImageIOBase::SetOrigin(), otb::ImageToGenericRSOutputParameters< TImage >::SetOutputProjectionRef(), otb::MapProjectionAdapter::SetParameter(), otb::Function::GaussianRenderingFunction< TPixel, TRGBPixel, TPixelRepresentationFunction, TTransferFunction >::SetParameters(), otb::Function::StandardRenderingFunction< TPixel, TRGBPixel, TPixelRepresentationFunction, TTransferFunction >::SetParameters(), itk::ThresholdLabelerImageFilter< TInputImage, TOutputImage >::SetRealThresholds(), otb::ImageLayerGenerator< TImageLayer >::SetRenderingFunction(), otb::RenderingImageFilter< TInputImage, TOutputImage >::SetRenderingFunction(), itk::ImageIOBase::SetSpacing(), itk::ThresholdLabelerImageFilter< TInputImage, TOutputImage >::SetThresholds(), itk::Statistics::GoodnessOfFitFunctionBase< TInputHistogram >::SetTotalObservedScale(), itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >::SetTranslation(), otb::Wrapper::OutputFilenameParameter::SetValue(), otb::Wrapper::InputFilenameParameter::SetValue(), otb::Wrapper::ListViewParameter::SetValue(), otb::Wrapper::ChoiceParameter::SetValue(), otb::Wrapper::InputVectorDataListParameter::SetVectorDataList(), and otb::MapProjectionAdapter::SetWkt().

static Pointer itk::Statistics::GaussianDistribution::New ( )
static

Method for creation through the object factory.

Reimplemented from itk::Object.

void itk::Statistics::GaussianDistribution::operator= ( const Self )
private
double itk::Statistics::GaussianDistribution::PDF ( double  x)
static

Static method to evaluate the probability density function (pdf) of a standardized (mean zero, unit variance) Gaussian. The static method provides optimized access without requiring an instance of the class.

Definition at line 182 of file itkGaussianDistribution.cxx.

References itk::Math::one_over_sqrt2pi.

Referenced by EvaluatePDF().

double itk::Statistics::GaussianDistribution::PDF ( double  x,
const ParametersType p 
)
static

Static method to evaluate the probability density function (pdf) of a Gaussian. The parameters of the distribution are passed as a parameter vector. The ordering of the parameters is (mean, variance). The static method provides optimized access without requiring an instance of the class.

Definition at line 199 of file itkGaussianDistribution.cxx.

References itk::Array< TValueType >::GetSize(), itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().

double itk::Statistics::GaussianDistribution::PDF ( double  x,
double  mean,
double  variance 
)
static

Static method to evaluate the probability density function (pdf) of a Gaussian. The parameters of the distribution are passed as separate values. The static method provides optimized access without requiring an instance of the class.

Definition at line 189 of file itkGaussianDistribution.cxx.

References itk::Math::one_over_sqrt2pi.

void itk::LightObject::Print ( std::ostream &  os,
Indent  indent = 0 
) const
inherited

Cause the object to print itself out.

Avoid DLL boundary problems. This function will be common to all itk objects. It just calls the header/self/trailer virtual print methods, which can be overriden by subclasses (any itk object).

Definition at line 135 of file itkLightObject.cxx.

References itk::Indent::GetNextIndent().

Referenced by itk::operator<<().

void itk::LightObject::PrintHeader ( std::ostream &  os,
Indent  indent 
) const
protectedvirtualinherited

Define a default print header for all objects.

Definition at line 320 of file itkLightObject.cxx.

bool itk::Object::PrintObservers ( std::ostream &  os,
Indent  indent 
) const
protectedinherited

Definition at line 478 of file itkObject.cxx.

void itk::Statistics::GaussianDistribution::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
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.

Chaining method to print an object's instance variables, as well as its superclasses.

Reimplemented from itk::Statistics::ProbabilityDistribution.

Definition at line 555 of file itkGaussianDistribution.cxx.

void itk::LightObject::PrintTrailer ( std::ostream &  os,
Indent  indent 
) const
protectedvirtualinherited

Define a default print trailer for all objects.

Definition at line 331 of file itkLightObject.cxx.

void itk::Object::Register ( ) const
virtualinherited

Increase the reference count (mark as used by another object).

Reimplemented from itk::LightObject.

Definition at line 309 of file itkObject.cxx.

Referenced by itk::ObjectFactoryBase::RegisterFactory().

void itk::Object::RemoveAllObservers ( )
inherited

Remove all observers .

Definition at line 435 of file itkObject.cxx.

void itk::Object::RemoveObserver ( unsigned long  tag)
inherited

Remove the observer with this tag value.

Definition at line 425 of file itkObject.cxx.

Referenced by otb::StreamingImageVirtualWriter< TInputImage >::GenerateData(), and otb::ImageFileWriter< TInputImage >::Update().

void itk::Object::SetDebug ( bool  debugFlag) const
inherited

Set the value of the debug flag. A non-zero value turns debugging on.

Definition at line 275 of file itkObject.cxx.

void itk::Object::SetGlobalWarningDisplay ( bool  val)
staticinherited

This is a global flag that controls whether any debug, warning or error messages are displayed.

Set the value of the global debug output control flag.

Definition at line 370 of file itkObject.cxx.

Referenced by itk::Object::GlobalWarningDisplayOff(), and itk::Object::GlobalWarningDisplayOn().

void itk::Statistics::GaussianDistribution::SetMean ( double  mean)
virtual

Set the mean of the Gaussian distribution. Defaults to 0.0. The mean is stored in position 0 of the parameters vector.

Definition at line 59 of file itkGaussianDistribution.cxx.

void itk::Object::SetMetaDataDictionary ( const MetaDataDictionary rhs)
inherited
virtual void itk::Statistics::ProbabilityDistribution::SetParameters ( const ParametersType params)
inlinevirtualinherited

Set the parameters of the distribution. See concrete subclasses for the order of the parameters. Subclasses may provide convenience methods for setting parameters, i.e. SetDegreesOfFreedom(), etc.

Definition at line 96 of file itkProbabilityDistribution.h.

void itk::Object::SetReferenceCount ( int  ref)
virtualinherited

Sets the reference count (use with care)

If there is a delete method, invoke it.

Reimplemented from itk::LightObject.

Definition at line 347 of file itkObject.cxx.

void itk::Statistics::GaussianDistribution::SetVariance ( double  variance)
virtual

Set the variance of the Gaussian distribution. Defaults to 1.0. The variance is stored in position 1 of the parameters vector.

Definition at line 131 of file itkGaussianDistribution.cxx.

void itk::Object::UnRegister ( ) const
virtualinherited

Decrease the reference count (release by another object).

If there is a delete method, invoke it.

Reimplemented from itk::LightObject.

Definition at line 324 of file itkObject.cxx.

Referenced by itk::Object::New(), and itk::ObjectFactoryBase::UnRegisterFactory().


Member Data Documentation

ParametersType itk::Statistics::ProbabilityDistribution::m_Parameters
protectedinherited

Definition at line 159 of file itkProbabilityDistribution.h.

InternalReferenceCountType itk::LightObject::m_ReferenceCount
mutableprotectedinherited

Number of uses of this object by other objects.

Definition at line 141 of file itkLightObject.h.

SimpleFastMutexLock itk::LightObject::m_ReferenceCountLock
mutableprotectedinherited

Mutex lock to protect modification to the reference count

Definition at line 144 of file itkLightObject.h.


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

Generated at Sun Feb 3 2013 03:01:43 for Orfeo Toolbox with doxygen 1.8.1.1