ITK  4.2.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Friends
itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage > Class Template Reference

#include <itkMattesMutualInformationImageToImageMetricv4.h>

+ Inheritance diagram for itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >:
+ Collaboration diagram for itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef Superclass::DerivativeType DerivativeType
typedef DerivativeType::ValueType DerivativeValueType
typedef
Superclass::FixedImageGradientType 
FixedImageGradientType
typedef
Superclass::FixedImageIndexType 
FixedImageIndexType
typedef
Superclass::FixedImagePixelType 
FixedImagePixelType
typedef
Superclass::FixedImagePointType 
FixedImagePointType
typedef Superclass::FixedImageType FixedImageType
typedef
Superclass::FixedSampledPointSetPointer 
FixedSampledPointSetPointer
typedef Superclass::JacobianType JacobianType
typedef Image< PDFValueType, 3 > JointPDFDerivativesType
typedef Image< PDFValueType, 2 > JointPDFType
typedef Superclass::MeasureType MeasureType
typedef
Superclass::MovingImageGradientType 
MovingImageGradientType
typedef
Superclass::MovingImagePixelType 
MovingImagePixelType
typedef
Superclass::MovingImagePointType 
MovingImagePointType
typedef
Superclass::MovingTransformType 
MovingTransformType
typedef double PDFValueType
typedef SmartPointer< SelfPointer
typedef
MattesMutualInformationImageToImageMetricv4 
Self
typedef ImageToImageMetricv4
< TFixedImage, TMovingImage,
TVirtualImage > 
Superclass
typedef
Superclass::VirtualImageType 
VirtualImageType
typedef
Superclass::VirtualIndexType 
VirtualIndexType
typedef
Superclass::VirtualPointSetType 
VirtualPointSetType
typedef
Superclass::VirtualPointType 
VirtualPointType
- Public Types inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >
typedef
Superclass::CoordinateRepresentationType 
CoordinateRepresentationType
typedef
GradientRecursiveGaussianImageFilter
< FixedImageType,
FixedImageGradientImageType
DefaultFixedImageGradientFilter
typedef
GradientRecursiveGaussianImageFilter
< MovingImageType,
MovingImageGradientImageType
DefaultMovingImageGradientFilter
typedef Superclass::DimensionType DimensionType
typedef
FixedImageType::ConstPointer 
FixedImageConstPointer
typedef
FixedImageGradientCalculatorType::Pointer 
FixedImageGradientCalculatorPointer
typedef
FixedImageGradientFilterType::Pointer 
FixedImageGradientFilterPointer
typedef ImageToImageFilter
< FixedImageType,
FixedImageGradientImageType
FixedImageGradientFilterType
typedef
FixedImageMaskType::ConstPointer 
FixedImageMaskConstPointer
typedef FixedImageMaskType::Pointer FixedImageMaskPointer
typedef SpatialObject
< itkGetStaticConstMacro(FixedImageDimension) > 
FixedImageMaskType
typedef FixedImageType::Pointer FixedImagePointer
typedef
Superclass::FixedInputPointType 
FixedInputPointType
typedef
FixedInterpolatorType::Pointer 
FixedInterpolatorPointer
typedef
InterpolateImageFunction
< FixedImageType,
CoordinateRepresentationType
FixedInterpolatorType
typedef
Superclass::FixedOutputPointType 
FixedOutputPointType
typedef FixedImagePixelType FixedPixelType
typedef
FixedSampledPointSetType::ConstPointer 
FixedSampledPointSetConstPointer
typedef PointSet< typename
FixedImageType::PixelType,
itkGetStaticConstMacro(FixedImageDimension)> 
FixedSampledPointSetType
typedef
Superclass::FixedTransformJacobianType 
FixedTransformJacobianType
typedef
Superclass::FixedTransformParametersType 
FixedTransformParametersType
typedef
Superclass::FixedTransformPointer 
FixedTransformPointer
typedef
Superclass::FixedTransformType 
FixedTransformType
typedef
Superclass::GradientSourceType 
GradientSourceType
typedef Superclass::DimensionType ImageDimensionType
typedef
Superclass::InternalComputationValueType 
InternalComputationValueType
typedef CovariantVector
< MovingRealType,
itkGetStaticConstMacro(MovingImageDimension) > 
MovingGradientPixelType
typedef
MovingImageType::ConstPointer 
MovingImageConstPointer
typedef
MovingImageGradientCalculatorType::Pointer 
MovingImageGradientCalculatorPointer
typedef
MovingImageGradientFilterType::Pointer 
MovingImageGradientFilterPointer
typedef ImageToImageFilter
< MovingImageType,
MovingImageGradientImageType
MovingImageGradientFilterType
typedef
MovingImageGradientImageType::Pointer 
MovingImageGradientImagePointer
typedef Image
< MovingGradientPixelType,
itkGetStaticConstMacro(MovingImageDimension) > 
MovingImageGradientImageType
typedef MovingImageType::IndexType MovingImageIndexType
typedef
MovingImageMaskType::ConstPointer 
MovingImageMaskConstPointer
typedef
MovingImageMaskType::Pointer 
MovingImageMaskPointer
typedef SpatialObject
< itkGetStaticConstMacro(MovingImageDimension) > 
MovingImageMaskType
typedef MovingImageType::Pointer MovingImagePointer
typedef MovingImageType::RegionType MovingImageRegionType
typedef TMovingImage MovingImageType
typedef
Superclass::MovingInputPointType 
MovingInputPointType
typedef
MovingInterpolatorType::Pointer 
MovingInterpolatorPointer
typedef
InterpolateImageFunction
< MovingImageType,
CoordinateRepresentationType
MovingInterpolatorType
typedef
Superclass::MovingOutputPointType 
MovingOutputPointType
typedef MovingImagePixelType MovingPixelType
typedef NumericTraits
< MovingImagePixelType >
::RealType 
MovingRealType
typedef
Superclass::MovingTransformJacobianType 
MovingTransformJacobianType
typedef
Superclass::MovingTransformParametersType 
MovingTransformParametersType
typedef
Superclass::MovingTransformPointer 
MovingTransformPointer
typedef
Superclass::NumberOfParametersType 
NumberOfParametersType
typedef Superclass::ParametersType ParametersType
typedef
Superclass::ParametersValueType 
ParametersValueType
typedef
Superclass::VirtualDirectionType 
VirtualDirectionType
typedef CovariantVector
< CoordinateRepresentationType,
itkGetStaticConstMacro(VirtualImageDimension) > 
VirtualImageGradientType
typedef
Superclass::VirtualImagePointer 
VirtualImagePointer
typedef
Superclass::VirtualPointType 
VirtualOriginType
typedef
Superclass::VirtualPixelType 
VirtualPixelType
typedef
Superclass::VirtualPointSetPointer 
VirtualPointSetPointer
typedef Superclass::VirtualSizeType VirtualRadiusType
typedef
Superclass::VirtualRegionType 
VirtualRegionType
typedef Superclass::VirtualSizeType VirtualSizeType
typedef
Superclass::VirtualSpacingType 
VirtualSpacingType
typedef NumericTraits
< FixedImagePixelType >
::RealType 
FixedRealType
typedef CovariantVector
< FixedRealType,
itkGetStaticConstMacro(FixedImageDimension) > 
FixedGradientPixelType
typedef Image
< FixedGradientPixelType,
itkGetStaticConstMacro(FixedImageDimension) > 
FixedImageGradientImageType
typedef
FixedImageGradientImageType::Pointer 
FixedImageGradientImagePointer
typedef ImageFunction
< FixedImageType,
CovariantVector< double,
itkGetStaticConstMacro(FixedImageDimension)>
, CoordinateRepresentationType
FixedImageGradientCalculatorType
typedef ImageFunction
< MovingImageType,
CovariantVector< double,
itkGetStaticConstMacro(MovingImageDimension)>
, CoordinateRepresentationType
MovingImageGradientCalculatorType
- Public Types inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage >
typedef
DisplacementFieldTransform
< CoordinateRepresentationType,
itkGetStaticConstMacro(MovingDimension) > 
MovingDisplacementFieldTransformType
typedef
VirtualImageType::ConstPointer 
VirtualImageConstPointer
- Public Types inherited from itk::ObjectToObjectMetricBase
- Public Types inherited from itk::SingleValuedCostFunctionv4
- Public Types inherited from itk::CostFunction
- Public Types inherited from itk::Object
- Public Types inherited from itk::LightObject

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual const char * GetNameOfClass () const
virtual MeasureType GetValue () const
virtual void GetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const
virtual void Initialize (void) throw ( itk::ExceptionObject )
virtual void SetNumberOfHistogramBins (SizeValueType _arg)
virtual const SizeValueTypeGetNumberOfHistogramBins ()
const JointPDFType::Pointer GetJointPDF () const
const
JointPDFDerivativesType::Pointer 
GetJointPDFDerivatives () const
- Public Member Functions inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >
virtual void GetDerivative (DerivativeType &) const
virtual const FixedImageTypeGetFixedImage ()
virtual const
FixedImageGradientImageType
GetFixedImageGradientImage ()
virtual const
FixedInterpolatorType
GetFixedInterpolator ()
virtual const MovingImageTypeGetMovingImage ()
virtual const
MovingImageGradientImageType
GetMovingImageGradientImage ()
virtual const
MovingInterpolatorType
GetMovingInterpolator ()
SizeValueType GetNumberOfDomainPoints () const
virtual const SizeValueTypeGetNumberOfSkippedFixedSampledPoints ()
virtual ThreadIdType GetNumberOfThreadsUsed () const
virtual SizeValueType GetNumberOfValidPoints () const
virtual const VirtualPointSetTypeGetVirtualSampledPointSet ()
virtual void SetFixedImage (const FixedImageType *_arg)
virtual void SetFixedInterpolator (FixedInterpolatorType *_arg)
virtual void SetMovingImage (const MovingImageType *_arg)
virtual void SetMovingInterpolator (MovingInterpolatorType *_arg)
virtual bool SupportsArbitraryVirtualDomainSamples (void) const
virtual void SetMovingImageMask (MovingImageMaskType *_arg)
virtual void SetMovingImageMask (const MovingImageMaskType *_arg)
virtual const MovingImageMaskTypeGetMovingImageMask ()
virtual void SetFixedImageMask (FixedImageMaskType *_arg)
virtual void SetFixedImageMask (const FixedImageMaskType *_arg)
virtual const FixedImageMaskTypeGetFixedImageMask ()
virtual void SetFixedSampledPointSet (FixedSampledPointSetType *_arg)
virtual void SetFixedSampledPointSet (const FixedSampledPointSetType *_arg)
virtual const
FixedSampledPointSetType
GetFixedSampledPointSet ()
virtual void SetUseFixedSampledPointSet (bool _arg)
virtual const bool & GetUseFixedSampledPointSet ()
virtual void UseFixedSampledPointSetOn ()
virtual void UseFixedSampledPointSetOff ()
virtual void SetFixedImageGradientFilter (FixedImageGradientFilterType *_arg)
virtual
FixedImageGradientFilterType
GetFixedImageGradientFilter ()
virtual void SetMovingImageGradientFilter (MovingImageGradientFilterType *_arg)
virtual
MovingImageGradientFilterType
GetMovingImageGradientFilter ()
virtual void SetFixedImageGradientCalculator (FixedImageGradientCalculatorType *_arg)
virtual
FixedImageGradientCalculatorType
GetFixedImageGradientCalculator ()
virtual void SetMovingImageGradientCalculator (MovingImageGradientCalculatorType *_arg)
virtual
MovingImageGradientCalculatorType
GetMovingImageGradientCalculator ()
virtual void SetUseFixedImageGradientFilter (bool _arg)
virtual const bool & GetUseFixedImageGradientFilter ()
virtual void UseFixedImageGradientFilterOn ()
virtual void UseFixedImageGradientFilterOff ()
virtual void SetUseMovingImageGradientFilter (bool _arg)
virtual const bool & GetUseMovingImageGradientFilter ()
virtual void UseMovingImageGradientFilterOn ()
virtual void UseMovingImageGradientFilterOff ()
virtual void SetMaximumNumberOfThreads (const ThreadIdType threads)
virtual ThreadIdType GetMaximumNumberOfThreads () const
virtual void SetUseFloatingPointCorrection (bool _arg)
virtual const bool & GetUseFloatingPointCorrection ()
virtual void UseFloatingPointCorrectionOn ()
virtual void UseFloatingPointCorrectionOff ()
virtual void SetFloatingPointCorrectionResolution (DerivativeValueType _arg)
virtual DerivativeValueType GetFloatingPointCorrectionResolution () const
- Public Member Functions inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage >
OffsetValueType ComputeParameterOffsetFromVirtualIndex (const VirtualIndexType &index, const NumberOfParametersType &numberOfLocalParameters) const
OffsetValueType ComputeParameterOffsetFromVirtualPoint (const VirtualPointType &point, const NumberOfParametersType &numberOfLocalParameters) const
virtual const FixedTransformTypeGetFixedTransform ()
virtual const MovingTransformTypeGetMovingTransform ()
virtual NumberOfParametersType GetNumberOfLocalParameters () const
virtual NumberOfParametersType GetNumberOfParameters () const
virtual const ParametersTypeGetParameters () const
const MovingTransformTypeGetTransform ()
VirtualDirectionType GetVirtualDirection (void) const
virtual const TimeStampGetVirtualDomainTimeStamp (void) const
virtual const VirtualImageTypeGetVirtualImage ()
VirtualOriginType GetVirtualOrigin (void) const
const VirtualRegionTypeGetVirtualRegion (void) const
VirtualSpacingType GetVirtualSpacing (void) const
virtual bool HasLocalSupport () const
virtual void SetFixedTransform (FixedTransformType *_arg)
virtual void SetMovingTransform (MovingTransformType *_arg)
virtual void SetParameters (ParametersType &params)
void SetTransform (MovingTransformType *transform)
void SetVirtualDomain (const VirtualSpacingType &spacing, const VirtualOriginType &origin, const VirtualDirectionType &direction, const VirtualRegionType &region)
virtual void UpdateTransformParameters (const DerivativeType &derivative, ParametersValueType factor)
void SetVirtualDomainFromImage (VirtualImageType *virtualImage)
void SetVirtualDomainFromImage (const VirtualImageType *virtualImage)
bool IsInsideVirtualDomain (const VirtualPointType &point) const
bool IsInsideVirtualDomain (const VirtualIndexType &index) const
- Public Member Functions inherited from itk::ObjectToObjectMetricBase
MeasureType GetCurrentValue () const
virtual GradientSourceType GetGradientSource () const
bool GetGradientSourceIncludesFixed () const
bool GetGradientSourceIncludesMoving () const
virtual void GetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const =0
virtual void SetGradientSource (GradientSourceType _arg)
- Public Member Functions inherited from itk::SingleValuedCostFunctionv4
virtual void GetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const =0

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const ImageDimensionType FixedImageDimension = ::itk::GetImageDimension<TFixedImage>::ImageDimension
static const ImageDimensionType MovingImageDimension = ::itk::GetImageDimension<TMovingImage>::ImageDimension
static const ImageDimensionType VirtualImageDimension = ::itk::GetImageDimension<TVirtualImage>::ImageDimension
- Static Public Attributes inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >
- Static Public Attributes inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage >
static const DimensionType FixedDimension
static const DimensionType MovingDimension
static const DimensionType VirtualDimension

Protected Types

typedef
BSplineDerivativeKernelFunction
< 3, PDFValueType
CubicBSplineDerivativeFunctionType
typedef BSplineKernelFunction
< 3, PDFValueType
CubicBSplineFunctionType
typedef
JointPDFDerivativesType::IndexType 
JointPDFDerivativesIndexType
typedef
JointPDFDerivativesType::RegionType 
JointPDFDerivativesRegionType
typedef
JointPDFDerivativesType::SizeType 
JointPDFDerivativesSizeType
typedef
JointPDFDerivativesType::PixelType 
JointPDFDerivativesValueType
typedef JointPDFType::IndexType JointPDFIndexType
typedef JointPDFType::RegionType JointPDFRegionType
typedef JointPDFType::SizeType JointPDFSizeType
typedef JointPDFType::PixelType JointPDFValueType
typedef
MattesMutualInformationImageToImageMetricv4GetValueAndDerivativeThreader
< ThreadedImageRegionPartitioner
< Superclass::VirtualImageDimension >
, Superclass, Self
MattesMutualInformationDenseGetValueAndDerivativeThreaderType
typedef
MattesMutualInformationImageToImageMetricv4GetValueAndDerivativeThreader
< ThreadedIndexedContainerPartitioner,
Superclass, Self
MattesMutualInformationSparseGetValueAndDerivativeThreaderType
typedef std::vector< PRatioTypePRatioArrayType
typedef PDFValueType PRatioType
- Protected Types inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >
typedef
LinearInterpolateImageFunction
< FixedImageGradientImageType,
CoordinateRepresentationType
FixedImageGradientInterpolatorType
typedef
LinearInterpolateImageFunction
< MovingImageGradientImageType,
CoordinateRepresentationType
MovingImageGradientInterpolatorType

Protected Member Functions

OffsetValueType ComputeSingleFixedImageParzenWindowIndex (const FixedImagePixelType &value) const
virtual void GetValueCommonAfterThreadedExecution ()
 MattesMutualInformationImageToImageMetricv4 ()
void PrintSelf (std::ostream &os, Indent indent) const
virtual ~MattesMutualInformationImageToImageMetricv4 ()
- Protected Member Functions inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >
virtual void ComputeFixedImageGradientAtIndex (const VirtualIndexType &index, FixedImageGradientType &gradient) const
virtual void ComputeFixedImageGradientAtPoint (const FixedImagePointType &mappedPoint, FixedImageGradientType &gradient) const
virtual void ComputeFixedImageGradientFilterImage ()
virtual void ComputeMovingImageGradientAtIndex (const VirtualIndexType &index, MovingImageGradientType &gradient) const
virtual void ComputeMovingImageGradientAtPoint (const MovingImagePointType &mappedPoint, MovingImageGradientType &gradient) const
virtual void ComputeMovingImageGradientFilterImage () const
virtual void GetValueAndDerivativeExecute () const
 ImageToImageMetricv4 ()
virtual void InitializeForIteration () const
bool TransformAndEvaluateFixedPoint (const VirtualIndexType &index, const VirtualPointType &point, const bool computeImageGradient, FixedImagePointType &mappedFixedPoint, FixedImagePixelType &mappedFixedPixelValue, FixedImageGradientType &mappedFixedImageGradient) const
bool TransformAndEvaluateMovingPoint (const VirtualIndexType &index, const VirtualPointType &point, const bool computeImageGradient, MovingImagePointType &mappedMovingPoint, MovingImagePixelType &mappedMovingPixelValue, MovingImageGradientType &mappedMovingImageGradient) const
virtual ~ImageToImageMetricv4 ()
virtual void InitializeDefaultFixedImageGradientFilter (void)
virtual void InitializeDefaultMovingImageGradientFilter (void)
- Protected Member Functions inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage >
MovingDisplacementFieldTransformTypeGetMovingDisplacementFieldTransform () const
 ObjectToObjectMetric ()
bool TransformPhysicalPointToVirtualIndex (const VirtualPointType &, VirtualIndexType &) const
void TransformVirtualIndexToPhysicalPoint (const VirtualIndexType &, VirtualPointType &) const
virtual void VerifyDisplacementFieldSizeAndPhysicalSpace ()
bool VerifyNumberOfValidPoints (MeasureType &value, DerivativeType &derivative) const
virtual ~ObjectToObjectMetric ()
- Protected Member Functions inherited from itk::ObjectToObjectMetricBase
 ObjectToObjectMetricBase ()
virtual ~ObjectToObjectMetricBase ()
- Protected Member Functions inherited from itk::SingleValuedCostFunctionv4
 SingleValuedCostFunctionv4 ()
virtual ~SingleValuedCostFunctionv4 ()
- Protected Member Functions inherited from itk::CostFunction
 CostFunction ()
virtual ~CostFunction ()
- 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 ()

Protected Attributes

CubicBSplineDerivativeFunctionType::Pointer m_CubicBSplineDerivativeKernel
CubicBSplineFunctionType::Pointer m_CubicBSplineKernel
PDFValueType m_FixedImageBinSize
PDFValueType m_FixedImageNormalizedMin
PDFValueType m_FixedImageTrueMax
PDFValueType m_FixedImageTrueMin
std::vector< OffsetValueTypem_JointPdfIndex1DArray
std::vector< DerivativeTypem_LocalDerivativeByParzenBin
PDFValueType m_MovingImageBinSize
std::vector< PDFValueTypem_MovingImageMarginalPDF
PDFValueType m_MovingImageNormalizedMin
PDFValueType m_MovingImageTrueMax
PDFValueType m_MovingImageTrueMin
SizeValueType m_NumberOfHistogramBins
PRatioArrayType m_PRatioArray
std::vector< std::vector
< PDFValueType > > 
m_ThreaderFixedImageMarginalPDF
std::vector
< JointPDFType::Pointer
m_ThreaderJointPDF
std::vector
< JointPDFDerivativesType::Pointer
m_ThreaderJointPDFDerivatives
std::vector< int > m_ThreaderJointPDFEndBin
std::vector< int > m_ThreaderJointPDFStartBin
std::vector< PDFValueTypem_ThreaderJointPDFSum
- Protected Attributes inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >
DefaultFixedImageGradientFilter::Pointer m_DefaultFixedImageGradientFilter
DefaultMovingImageGradientFilter::Pointer m_DefaultMovingImageGradientFilter
ImageToImageMetricv4GetValueAndDerivativeThreader
< ThreadedImageRegionPartitioner
< VirtualImageDimension >
, Self >::Pointer 
m_DenseGetValueAndDerivativeThreader
DerivativeTypem_DerivativeResult
FixedImageConstPointer m_FixedImage
FixedImageGradientCalculatorPointer m_FixedImageGradientCalculator
FixedImageGradientFilterPointer m_FixedImageGradientFilter
FixedImageGradientImagePointer m_FixedImageGradientImage
FixedImageGradientInterpolatorType::Pointer m_FixedImageGradientInterpolator
FixedImageMaskConstPointer m_FixedImageMask
FixedInterpolatorPointer m_FixedInterpolator
FixedSampledPointSetConstPointer m_FixedSampledPointSet
MovingImageConstPointer m_MovingImage
MovingImageGradientCalculatorPointer m_MovingImageGradientCalculator
MovingImageGradientFilterPointer m_MovingImageGradientFilter
MovingImageGradientImagePointer m_MovingImageGradientImage
MovingImageGradientInterpolatorType::Pointer m_MovingImageGradientInterpolator
MovingImageMaskConstPointer m_MovingImageMask
MovingInterpolatorPointer m_MovingInterpolator
ImageToImageMetricv4GetValueAndDerivativeThreader
< ThreadedIndexedContainerPartitioner,
Self >::Pointer 
m_SparseGetValueAndDerivativeThreader
bool m_UseFixedImageGradientFilter
bool m_UseFixedSampledPointSet
bool m_UseMovingImageGradientFilter
VirtualPointSetPointer m_VirtualSampledPointSet
- Protected Attributes inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage >
FixedTransformPointer m_FixedTransform
MovingTransformPointer m_MovingTransform
SizeValueType m_NumberOfValidPoints
bool m_UserHasSetVirtualDomain
VirtualImagePointer m_VirtualImage
- Protected Attributes inherited from itk::ObjectToObjectMetricBase
GradientSourceType m_GradientSource
MeasureType m_Value

Private Member Functions

virtual void ComputeResults (void) const
 MattesMutualInformationImageToImageMetricv4 (const Self &)
void operator= (const Self &)

Private Attributes

bool m_ComputeDerivative

Friends

class MattesMutualInformationImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedImageRegionPartitioner< Superclass::VirtualImageDimension >, Superclass, Self >
class MattesMutualInformationImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedIndexedContainerPartitioner, Superclass, Self >

Detailed Description

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage>
class itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >

Computes the mutual information between two images to be registered using the method of Mattes et al.

MattesMutualInformationImageToImageMetric computes the mutual information between a fixed and moving image to be registered.

This class is templated over the FixedImage type and the MovingImage type.

The calculations are based on the method of Mattes et al [1,2] where the probability density distribution are estimated using Parzen histograms. Since the fixed image PDF does not contribute to the derivatives, it does not need to be smooth. Hence, a zero order (box car) BSpline kernel is used for the fixed image intensity PDF. On the other hand, to ensure smoothness a third order BSpline kernel is used for the moving image intensity PDF.

During each call of GetValue(), GetDerivatives(), GetValueAndDerivatives(), marginal and joint intensity PDF's values are estimated at discrete position or bins. The number of bins used can be set via SetNumberOfHistogramBins(). To handle data with arbitray magnitude and dynamic range, the image intensity is scale such that any contribution to the histogram will fall into a valid bin.

One the PDF's have been contructed, the mutual information is obtained by doubling summing over the discrete PDF values.

Warning:
Local-support transforms are not yet supported. If used, an exception is thrown during Initialize().
Note:
The per-iteration post-processing code is not multi-threaded, but could be readily be made so for a small performance gain. See GetValueCommonAfterThreadedExecution(), GetValueAndDerivative() and threader::AfterThreadedExecution().

The algorithm and much of the code was copied from the previous Mattes MI metric, i.e. itkMattesMutualInformationImageToImageMetric.

See MattesMutualInformationImageToImageMetricv4GetValueAndDerivativeThreader::ProcessPoint for poritons of the algorithm implementation.

See ImageToImageMetricv4 for details of common metric operation and options.

References: [1] "Nonrigid multimodality image registration" D. Mattes, D. R. Haynor, H. Vesselle, T. Lewellen and W. Eubank Medical Imaging 2001: Image Processing, 2001, pp. 1609-1620. [2] "PET-CT Image Registration in the Chest Using Free-form Deformations" D. Mattes, D. R. Haynor, H. Vesselle, T. Lewellen and W. Eubank IEEE Transactions in Medical Imaging. Vol.22, No.1, January 2003. pp.120-128. [3] "Optimization of Mutual Information for MultiResolution Image Registration" P. Thevenaz and M. Unser IEEE Transactions in Image Processing, 9(12) December 2000.

See also:
itkImageToImageMetricv4

Definition at line 96 of file itkMattesMutualInformationImageToImageMetricv4.h.


Member Typedef Documentation

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef SmartPointer<const Self> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::ConstPointer
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef BSplineDerivativeKernelFunction<3,PDFValueType> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::CubicBSplineDerivativeFunctionType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef BSplineKernelFunction<3,PDFValueType> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::CubicBSplineFunctionType
protected

Typedefs for BSpline kernel and derivative functions.

Definition at line 223 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::DerivativeType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::DerivativeType

Type of the metric derivative.

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

Definition at line 114 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef DerivativeType::ValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::DerivativeValueType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::FixedImageGradientType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::FixedImageGradientType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::FixedImageIndexType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::FixedImageIndexType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::FixedImagePixelType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::FixedImagePixelType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::FixedImagePointType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::FixedImagePointType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::FixedImageType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::FixedImageType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::FixedSampledPointSetPointer itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::FixedSampledPointSetPointer

Types inherited from Superclass.

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

Definition at line 135 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::JacobianType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JacobianType

Jacobian type. This is the same for all transforms

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

Definition at line 128 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef JointPDFDerivativesType::IndexType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFDerivativesIndexType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef JointPDFDerivativesType::RegionType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFDerivativesRegionType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef JointPDFDerivativesType::SizeType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFDerivativesSizeType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Image<PDFValueType, 3> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFDerivativesType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef JointPDFDerivativesType::PixelType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFDerivativesValueType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef JointPDFType::IndexType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFIndexType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef JointPDFType::RegionType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFRegionType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef JointPDFType::SizeType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFSizeType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Image<PDFValueType, 2> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFType

Typedef for the joint PDF and PDF derivatives are stored as ITK Images.

Definition at line 166 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef JointPDFType::PixelType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::JointPDFValueType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::MeasureType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::MeasureType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::MovingImageGradientType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::MovingImageGradientType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::MovingImagePixelType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::MovingImagePixelType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::MovingImagePointType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::MovingImagePointType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::MovingTransformType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::MovingTransformType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef double itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::PDFValueType

The marginal PDFs are stored as std::vector.

Definition at line 163 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef SmartPointer<Self> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::Pointer
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef std::vector<PRatioType> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::PRatioArrayType
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef PDFValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::PRatioType
protected

Helper array for storing the values of the JointPDF ratios.

Definition at line 248 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef MattesMutualInformationImageToImageMetricv4 itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::Self
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef ImageToImageMetricv4<TFixedImage, TMovingImage, TVirtualImage> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::Superclass
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::VirtualImageType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::VirtualImageType

Types for the virtual domain

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

Definition at line 129 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::VirtualIndexType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::VirtualIndexType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::VirtualPointSetType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::VirtualPointSetType
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
typedef Superclass::VirtualPointType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::VirtualPointType

Constructor & Destructor Documentation

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::MattesMutualInformationImageToImageMetricv4 ( )
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::~MattesMutualInformationImageToImageMetricv4 ( )
protectedvirtual
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::MattesMutualInformationImageToImageMetricv4 ( const Self )
private

Member Function Documentation

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual void itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::ComputeResults ( void  ) const
privatevirtual

Perform the final step in computing results

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
OffsetValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::ComputeSingleFixedImageParzenWindowIndex ( const FixedImagePixelType value) const
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual::itk::LightObject::Pointer itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::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 TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
const JointPDFType::Pointer itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::GetJointPDF ( ) const
inline

Get the internal JointPDF image that was used in creating the metric value.

Definition at line 173 of file itkMattesMutualInformationImageToImageMetricv4.h.

References NULL.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
const JointPDFDerivativesType::Pointer itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::GetJointPDFDerivatives ( ) const
inline

Get the internal JointPDFDeriviative image that was used in creating the metric derivative value. This is only created when a global support transform is used, and derivatives are requested.

Definition at line 189 of file itkMattesMutualInformationImageToImageMetricv4.h.

References NULL.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual const char* itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual const SizeValueType& itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::GetNumberOfHistogramBins ( )
virtual

Number of bins to used in the histogram. Typical value is

  1. The minimum value is 5 due to the padding required by the Parzen windowing with a cubic-BSpline kernel. Note that even if the metric is used on binary images, the number of bins should at least be equal to five.
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual MeasureType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::GetValue ( ) const
virtual

Calculate and return the value for the metric based on the current transformation(s). The result is both returned, and stored in the m_Value member variable.

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual void itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::GetValueAndDerivative ( MeasureType value,
DerivativeType derivative 
) const
virtual

Calculate and return both the value for the metric and its derivative. Overloaded here to provide special handling.

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual void itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::GetValueCommonAfterThreadedExecution ( )
protectedvirtual

Post-processing code common to both GetValue and GetValueAndDerivative.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual void itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::Initialize ( void  ) throw ( itk::ExceptionObject )
virtual

Initialize the Metric by making sure that all the components are present and plugged together correctly, and initializing internal variables as required. This is for one-time initialization, e.g. before starting an optimization process.

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
static Pointer itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::New ( )
static

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
void itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::operator= ( const Self )
private

Mutex lock to protect modification to the reference count

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
void itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::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.

Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
virtual void itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::SetNumberOfHistogramBins ( SizeValueType  _arg)
virtual

Number of bins to used in the histogram. Typical value is

  1. The minimum value is 5 due to the padding required by the Parzen windowing with a cubic-BSpline kernel. Note that even if the metric is used on binary images, the number of bins should at least be equal to five.

Friends And Related Function Documentation

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
friend class MattesMutualInformationImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedImageRegionPartitioner< Superclass::VirtualImageDimension >, Superclass, Self >
friend
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
friend class MattesMutualInformationImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedIndexedContainerPartitioner, Superclass, Self >
friend

Member Data Documentation

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
const ImageDimensionType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::FixedImageDimension = ::itk::GetImageDimension<TFixedImage>::ImageDimension
static
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
bool itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_ComputeDerivative
mutableprivate

Flag to control whether derivative is computed in addition to metric value

Definition at line 282 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
CubicBSplineDerivativeFunctionType::Pointer itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_CubicBSplineDerivativeKernel
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
CubicBSplineFunctionType::Pointer itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_CubicBSplineKernel
protected

Cubic BSpline kernel for computing Parzen histograms.

Definition at line 244 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
PDFValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_FixedImageBinSize
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
PDFValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_FixedImageNormalizedMin
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
PDFValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_FixedImageTrueMax
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
PDFValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_FixedImageTrueMin
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
std::vector<OffsetValueType> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_JointPdfIndex1DArray
mutableprotected

Helper array for storing per-parameter linearized index to retrieve the pRatio during evaluation with local-support transform.

Definition at line 255 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
std::vector<DerivativeType> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_LocalDerivativeByParzenBin
mutableprotected

Store the per-point local derivative result by parzen window bin. For local-support transforms only.

Definition at line 272 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
PDFValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_MovingImageBinSize
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
std::vector<PDFValueType> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_MovingImageMarginalPDF
mutableprotected

The moving image marginal PDF.

Definition at line 258 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
PDFValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_MovingImageNormalizedMin
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
PDFValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_MovingImageTrueMax
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
PDFValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_MovingImageTrueMin
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
SizeValueType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_NumberOfHistogramBins
protected

Variables to define the marginal and joint histograms.

Definition at line 233 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
PRatioArrayType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_PRatioArray
mutableprotected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
std::vector<std::vector<PDFValueType> > itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_ThreaderFixedImageMarginalPDF
mutableprotected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
std::vector<JointPDFType::Pointer> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_ThreaderJointPDF
protected

The joint PDF and PDF derivatives.

Definition at line 262 of file itkMattesMutualInformationImageToImageMetricv4.h.

template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
std::vector<JointPDFDerivativesType::Pointer> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_ThreaderJointPDFDerivatives
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
std::vector<int> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_ThreaderJointPDFEndBin
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
std::vector<int> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_ThreaderJointPDFStartBin
protected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
std::vector<PDFValueType> itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::m_ThreaderJointPDFSum
mutableprotected
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
const ImageDimensionType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::MovingImageDimension = ::itk::GetImageDimension<TMovingImage>::ImageDimension
static
template<class TFixedImage , class TMovingImage , class TVirtualImage = TFixedImage>
const ImageDimensionType itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >::VirtualImageDimension = ::itk::GetImageDimension<TVirtualImage>::ImageDimension
static

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