ITK  4.4.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Friends | List of all members
itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits > Class Template Reference

#include <itkImageToImageMetricv4.h>

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

Detailed Description

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
class itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >

Computes similarity between regions of two images, using two user-supplied transforms, a 'fixed' transform and a 'moving' transform.

Warning
Integer-type images are not yet supported. See concept-checking in DefaultImageToImageMetricTraitsv4.

Templated over the fixed and moving image types, as well as an optional VirtualImage type to define the virtual domain. The VirtualImage type defaults to TFixedImage.

Note
If TFixedImage is type VectorImage, then TVirtualImage must be set separately to a non-VectorImage type, e.g. Image<unsigned char, dimension>.

If the user does not set the virtual domain explicitly, then it is created during the call to Initialize from the fixed image by copying its information. See ObjectToObjectMetric for more discussion on the virtual domain.

At a minimum, the user must: 1) Set images using SetFixedImage and SetMovingImage. 2) Call Initialize.

Image gradient calculations

Image gradients can be calculated in one of two ways: 1) Using a gradient image filter, by setting Use[Fixed|Moving]ImageGradientFilter to true. By default this is set as an itkGradientRecursiveGaussianImageFilter, a smoothed gradient filter. A filter uses more memory, because it calculates all gradients at once and stores them in an image. The advantage of pre-calculation is for the fixed image gradients, since they only need be calculated once, and for metrics that need to access image gradients more than once for a particular point. The fixed image gradients are only calculated once when this option is set, during Initialize. 2) Otherwise, an image gradient calculator based on ImageFunction is used. By default the CentralDifferenceImageFunction is used. This calculation is not smoothed and gives different results than GradientRecursiveGaussianImageFilter. The advantage is that less memory is used. However for the fixed image, it means needlessly computing the image gradients at each iteration of a registration instead of just computing once at the beginning. The user can supply a different function by calling SetFixedImageGradientCalculator and/or SetMovingImageGradientCalculator.

Both image gradient calculation methods are threaded. Generally it is not recommended to use different image gradient methods for the fixed and moving images because the methods return different results.

Image Masks

Image masks are supported using SetMovingImageMask or SetFixedImageMask. If the image mask is sparse, see the comments for use of sparse point sets.

Sparse Sampling

Sparse sampling is performed by supplying an arbitrary point list over which to evaluate the metric. It's presumed that the user will be working in terms of the fixed image domain, and thus the point list is expected to be in the fixed domain. Internally, the points are transformed into the virtual domain as needed.

Note
The attributes/data of each point in the set are not used, but rather the point's geometric coordinates. Point sets are set via SetFixedSampledPointSet, and the point set is enabled for use by calling SetUseFixedSampledPointSet.
If the point set is sparse, the option SetUse[Fixed|Moving]ImageGradientFilter typically should be disabled to avoid excessive computation. However, the gradient values of the fixed image are not cached when using a point set (there are plans for this in the future), so depending on the number of iterations (when used during optimization) and the level of sparsity, it may be more efficient to use a gradient image filter for it because it will only be calculated once.

Vector Images

To support vector images, the class must be declared using the VectorImageToImageMetricTraitsv4 class in the template declaration, as described above. Derived classes must provide special handling for vector pixel types. MeanSquaresImageToImageMetricv4 can be used as an example.

Threading

This class is threaded. Threading is handled by friend classes ImageToImageMetricv4GetValueAndDerivativeThreaderBase and ImageToImageMetricv4GetValueAndDerivativeThreader. Dense and sparse evaluation are handled by template specialization of the ImageToImageMetricv4GetValueAndDerivativeThreader::ThreadedExecution method, in order to iterate over either all points in the virtual space in the case of dense evaluation, or a list of points in the sparse case.

Methods and members of ImageToImageMetricv4 are accessed by the threading class using its m_Associate member, which points to the containing instance of ImageToImageMetricv4.

Pre- and post-processing for threaded operation is handled in ImageToImageMetricv4GetValueAndDerivativeThreaderBase::BeforeThreadedExecution, and ImageToImageMetricv4GetValueAndDerivativeThreaderBase::AfterThreadedExecution, respectively.

Derived classes:

The GetValue method may be overridden to provide better-optimized or otherwise different behavior as needed. Otherwise, the m_ComputeDerivative member should be checked to avoid computing derivatives when the caller has called GetValue(). See GetComputeDerivative() in this class and in this metric's threader class.

Derived classes must derive a threader class from ImageToImageMetricv4GetValueAndDerivativeThreader, from which a DenseGetValueAndDerivativeThreader and SparseGetValueAndDerivativeThreader must be defined. Then,

this->m_DenseGetValueAndDerivativeThreader = DenseDerivedClassGetValueAndDerivativeThreader::New();
this->m_SparseGetValueAndDerivativeThreader = SparseDerivedClassGetValueAndDerivativeThreader::New();

must be called in the constructor.

The ProcessPoint method of the derived threader must be overriden to provide the metric-specific evaluation.

To access methods and members within the derived metric class from the derived threader class, the user must cast m_Associate to the type of the derived metric class.

See ImageToImageMetricv4Test for a clear example of what a derived class must implement and do.

Definition at line 169 of file itkImageToImageMetricv4.h.

Public Types

typedef SmartPointer< const SelfConstPointer
 
typedef
Superclass::CoordinateRepresentationType 
CoordinateRepresentationType
 
typedef
MetricTraits::DefaultFixedImageGradientCalculator 
DefaultFixedImageGradientCalculator
 
typedef
MetricTraits::DefaultFixedImageGradientFilter 
DefaultFixedImageGradientFilter
 
typedef
MetricTraits::DefaultMovingImageGradientCalculator 
DefaultMovingImageGradientCalculator
 
typedef
MetricTraits::DefaultMovingImageGradientFilter 
DefaultMovingImageGradientFilter
 
typedef Superclass::DerivativeType DerivativeType
 
typedef DerivativeType::ValueType DerivativeValueType
 
typedef Superclass::DimensionType DimensionType
 
typedef
MetricTraits::FixedGradientPixelType 
FixedGradientPixelType
 
typedef CovariantVector
< typename
FixedImageGradientType::ValueType,
FixedImageDimension
FixedImageComponentGradientType
 
typedef
FixedImageType::ConstPointer 
FixedImageConstPointer
 
typedef
FixedImageGradientCalculatorType::Pointer 
FixedImageGradientCalculatorPointer
 
typedef
MetricTraits::FixedImageGradientCalculatorType 
FixedImageGradientCalculatorType
 
typedef
FixedImageGradientFilterType::Pointer 
FixedImageGradientFilterPointer
 
typedef
MetricTraits::FixedImageGradientFilterType 
FixedImageGradientFilterType
 
typedef
FixedImageGradientImageType::Pointer 
FixedImageGradientImagePointer
 
typedef
MetricTraits::FixedImageGradientImageType 
FixedImageGradientImageType
 
typedef
MetricTraits::FixedImageGradientType 
FixedImageGradientType
 
typedef FixedImageType::IndexType FixedImageIndexType
 
typedef
FixedImageMaskType::ConstPointer 
FixedImageMaskConstPointer
 
typedef FixedImageMaskType::Pointer FixedImageMaskPointer
 
typedef SpatialObject
< itkGetStaticConstMacro(FixedImageDimension) > 
FixedImageMaskType
 
typedef FixedImageType::PixelType FixedImagePixelType
 
typedef FixedImageType::Pointer FixedImagePointer
 
typedef FixedImageType::PointType FixedImagePointType
 
typedef TFixedImage FixedImageType
 
typedef
Superclass::FixedInputPointType 
FixedInputPointType
 
typedef
FixedInterpolatorType::Pointer 
FixedInterpolatorPointer
 
typedef
InterpolateImageFunction
< FixedImageType,
CoordinateRepresentationType
FixedInterpolatorType
 
typedef
Superclass::FixedOutputPointType 
FixedOutputPointType
 
typedef FixedImagePixelType FixedPixelType
 
typedef MetricTraits::FixedRealType FixedRealType
 
typedef
FixedSampledPointSetType::ConstPointer 
FixedSampledPointSetConstPointer
 
typedef
FixedSampledPointSetType::Pointer 
FixedSampledPointSetPointer
 
typedef PointSet< typename
FixedImageType::PixelType,
itkGetStaticConstMacro(FixedImageDimension)> 
FixedSampledPointSetType
 
typedef NumericTraits
< FixedRealType >
::ScalarRealType 
FixedScalarRealType
 
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 Superclass::JacobianType JacobianType
 
typedef Superclass::MeasureType MeasureType
 
typedef TMetricTraits MetricTraits
 
typedef
MetricTraits::MovingGradientPixelType 
MovingGradientPixelType
 
typedef CovariantVector
< typename
MovingImageGradientType::ValueType,
MovingImageDimension
MovingImageComponentGradientType
 
typedef
MovingImageType::ConstPointer 
MovingImageConstPointer
 
typedef
MovingImageGradientCalculatorType::Pointer 
MovingImageGradientCalculatorPointer
 
typedef
MetricTraits::MovingImageGradientCalculatorType 
MovingImageGradientCalculatorType
 
typedef
MovingImageGradientFilterType::Pointer 
MovingImageGradientFilterPointer
 
typedef
MetricTraits::MovingImageGradientFilterType 
MovingImageGradientFilterType
 
typedef
MovingImageGradientImageType::Pointer 
MovingImageGradientImagePointer
 
typedef
MetricTraits::MovingImageGradientImageType 
MovingImageGradientImageType
 
typedef
MetricTraits::MovingImageGradientType 
MovingImageGradientType
 
typedef MovingImageType::IndexType MovingImageIndexType
 
typedef
MovingImageMaskType::ConstPointer 
MovingImageMaskConstPointer
 
typedef
MovingImageMaskType::Pointer 
MovingImageMaskPointer
 
typedef SpatialObject
< itkGetStaticConstMacro(MovingImageDimension) > 
MovingImageMaskType
 
typedef MovingImageType::PixelType MovingImagePixelType
 
typedef MovingImageType::Pointer MovingImagePointer
 
typedef MovingImageType::PointType MovingImagePointType
 
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
MetricTraits::MovingRealType 
MovingRealType
 
typedef NumericTraits
< MovingRealType >
::ScalarRealType 
MovingScalarRealType
 
typedef
Superclass::MovingTransformJacobianType 
MovingTransformJacobianType
 
typedef
Superclass::MovingTransformParametersType 
MovingTransformParametersType
 
typedef
Superclass::MovingTransformPointer 
MovingTransformPointer
 
typedef
Superclass::MovingTransformType 
MovingTransformType
 
typedef
Superclass::NumberOfParametersType 
NumberOfParametersType
 
typedef Superclass::ParametersType ParametersType
 
typedef
Superclass::ParametersValueType 
ParametersValueType
 
typedef SmartPointer< SelfPointer
 
typedef ImageToImageMetricv4 Self
 
typedef ObjectToObjectMetric
< TFixedImage::ImageDimension,
TMovingImage::ImageDimension,
TVirtualImage > 
Superclass
 
typedef
Superclass::VirtualDirectionType 
VirtualDirectionType
 
typedef CovariantVector
< typename
VirtualImageGradientType::ValueType,
VirtualImageDimension
VirtualImageComponentGradientType
 
typedef
MetricTraits::VirtualImageGradientType 
VirtualImageGradientType
 
typedef
Superclass::VirtualImagePointer 
VirtualImagePointer
 
typedef
Superclass::VirtualImageType 
VirtualImageType
 
typedef
Superclass::VirtualIndexType 
VirtualIndexType
 
typedef
Superclass::VirtualPointType 
VirtualOriginType
 
typedef
Superclass::VirtualPixelType 
VirtualPixelType
 
typedef
Superclass::VirtualPointSetPointer 
VirtualPointSetPointer
 
typedef
Superclass::VirtualPointSetType 
VirtualPointSetType
 
typedef
Superclass::VirtualPointType 
VirtualPointType
 
typedef Superclass::VirtualSizeType VirtualRadiusType
 
typedef
Superclass::VirtualRegionType 
VirtualRegionType
 
typedef Superclass::VirtualSizeType VirtualSizeType
 
typedef
Superclass::VirtualSpacingType 
VirtualSpacingType
 
- Public Types inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage >
typedef SmartPointer< const SelfConstPointer
 
typedef
Superclass::ParametersValueType 
CoordinateRepresentationType
 
typedef Superclass::DerivativeType DerivativeType
 
typedef
Superclass::DerivativeValueType 
DerivativeValueType
 
typedef SizeValueType DimensionType
 
typedef
FixedTransformType::InputPointType 
FixedInputPointType
 
typedef
FixedTransformType::OutputPointType 
FixedOutputPointType
 
typedef
FixedTransformType::JacobianType 
FixedTransformJacobianType
 
typedef
FixedTransformType::ParametersType 
FixedTransformParametersType
 
typedef FixedTransformType::Pointer FixedTransformPointer
 
typedef Transform
< ParametersValueType,
TVirtualImage::ImageDimension,
TFixedDimension > 
FixedTransformType
 
typedef
Superclass::InternalComputationValueType 
InternalComputationValueType
 
typedef
FixedTransformType::JacobianType 
JacobianType
 
typedef Superclass::MeasureType MeasureType
 
typedef
DisplacementFieldTransform
< CoordinateRepresentationType,
itkGetStaticConstMacro(MovingDimension) > 
MovingDisplacementFieldTransformType
 
typedef
MovingTransformType::InputPointType 
MovingInputPointType
 
typedef
MovingTransformType::OutputPointType 
MovingOutputPointType
 
typedef
MovingTransformType::JacobianType 
MovingTransformJacobianType
 
typedef
MovingTransformType::ParametersType 
MovingTransformParametersType
 
typedef
MovingTransformType::Pointer 
MovingTransformPointer
 
typedef Transform
< ParametersValueType,
TVirtualImage::ImageDimension,
TMovingDimension > 
MovingTransformType
 
typedef
Superclass::NumberOfParametersType 
NumberOfParametersType
 
typedef Superclass::ParametersType ParametersType
 
typedef
Superclass::ParametersValueType 
ParametersValueType
 
typedef SmartPointer< SelfPointer
 
typedef ObjectToObjectMetric Self
 
typedef ObjectToObjectMetricBase Superclass
 
typedef
VirtualImageType::DirectionType 
VirtualDirectionType
 
typedef
VirtualImageType::ConstPointer 
VirtualImageConstPointer
 
typedef VirtualImageType::Pointer VirtualImagePointer
 
typedef TVirtualImage VirtualImageType
 
typedef VirtualImageType::IndexType VirtualIndexType
 
typedef VirtualImageType::PointType VirtualOriginType
 
typedef VirtualImageType::PixelType VirtualPixelType
 
typedef
VirtualPointSetType::Pointer 
VirtualPointSetPointer
 
typedef PointSet
< VirtualPixelType,
itkGetStaticConstMacro(VirtualDimension)> 
VirtualPointSetType
 
typedef VirtualImageType::PointType VirtualPointType
 
typedef VirtualImageType::SizeType VirtualRadiusType
 
typedef
VirtualImageType::RegionType 
VirtualRegionType
 
typedef VirtualRegionType::SizeType VirtualSizeType
 
typedef
VirtualImageType::SpacingType 
VirtualSpacingType
 
- Public Types inherited from itk::ObjectToObjectMetricBase
typedef SmartPointer< const SelfConstPointer
 
typedef
Superclass::ParametersValueType 
CoordinateRepresentationType
 
typedef Superclass::DerivativeType DerivativeType
 
typedef DerivativeType::ValueType DerivativeValueType
 
enum  GradientSourceType {
  GRADIENT_SOURCE_FIXED =0,
  GRADIENT_SOURCE_MOVING,
  GRADIENT_SOURCE_BOTH
}
 
typedef double InternalComputationValueType
 
typedef Superclass::MeasureType MeasureType
 
typedef unsigned int NumberOfParametersType
 
typedef Superclass::ParametersType ParametersType
 
typedef
Superclass::ParametersValueType 
ParametersValueType
 
typedef SmartPointer< SelfPointer
 
typedef ObjectToObjectMetricBase Self
 
typedef SingleValuedCostFunctionv4 Superclass
 
- Public Types inherited from itk::SingleValuedCostFunctionv4
typedef SmartPointer< const SelfConstPointer
 
typedef Array
< ParametersValueType
DerivativeType
 
typedef double MeasureType
 
typedef Superclass::ParametersType ParametersType
 
typedef
Superclass::ParametersValueType 
ParametersValueType
 
typedef SmartPointer< SelfPointer
 
typedef SingleValuedCostFunctionv4 Self
 
typedef CostFunction Superclass
 
- Public Types inherited from itk::CostFunction
typedef SmartPointer< const SelfConstPointer
 
typedef OptimizerParameters
< ParametersValueType
ParametersType
 
typedef double ParametersValueType
 
typedef SmartPointer< SelfPointer
 
typedef CostFunction Self
 
typedef Object Superclass
 
- Public Types inherited from itk::Object
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef Object Self
 
typedef LightObject Superclass
 
- Public Types inherited from itk::LightObject
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef LightObject Self
 

Public Member Functions

virtual void GetDerivative (DerivativeType &) const
 
virtual const FixedImageTypeGetFixedImage () const
 
virtual const
FixedImageGradientImageType
GetFixedImageGradientImage () const
 
virtual const
FixedInterpolatorType
GetFixedInterpolator () const
 
virtual
FixedImageGradientImageType
GetModifiableFixedImageGradientImage ()
 
virtual FixedInterpolatorTypeGetModifiableFixedInterpolator ()
 
virtual
MovingImageGradientImageType
GetModifiableMovingImageGradientImage ()
 
virtual MovingInterpolatorTypeGetModifiableMovingInterpolator ()
 
virtual VirtualPointSetTypeGetModifiableVirtualSampledPointSet ()
 
virtual const
MovingImageGradientImageType
GetMovingImageGradientImage () const
 
virtual const
MovingInterpolatorType
GetMovingInterpolator () const
 
virtual const char * GetNameOfClass () const
 
SizeValueType GetNumberOfDomainPoints () const
 
virtual const SizeValueTypeGetNumberOfSkippedFixedSampledPoints ()
 
virtual ThreadIdType GetNumberOfThreadsUsed () const
 
virtual SizeValueType GetNumberOfValidPoints () const
 
virtual MeasureType GetValue () const
 
virtual void GetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const
 
virtual const VirtualPointSetTypeGetVirtualSampledPointSet () const
 
virtual void Initialize (void) throw ( itk::ExceptionObject )
 
virtual void SetFixedImage (const FixedImageType *_arg)
 
virtual void SetFixedInterpolator (FixedInterpolatorType *_arg)
 
virtual void SetMovingInterpolator (MovingInterpolatorType *_arg)
 
virtual bool SupportsArbitraryVirtualDomainSamples (void) const
 
virtual void SetMovingImage (const MovingImageType *_arg)
 
virtual const MovingImageTypeGetMovingImage () const
 
virtual void SetMovingImageMask (MovingImageMaskType *_arg)
 
virtual void SetMovingImageMask (const MovingImageMaskType *_arg)
 
virtual const MovingImageMaskTypeGetMovingImageMask () const
 
virtual void SetFixedImageMask (FixedImageMaskType *_arg)
 
virtual void SetFixedImageMask (const FixedImageMaskType *_arg)
 
virtual const FixedImageMaskTypeGetFixedImageMask () const
 
virtual void SetFixedSampledPointSet (FixedSampledPointSetType *_arg)
 
virtual void SetFixedSampledPointSet (const FixedSampledPointSetType *_arg)
 
virtual const
FixedSampledPointSetType
GetFixedSampledPointSet () const
 
virtual void SetUseFixedSampledPointSet (bool _arg)
 
virtual const bool & GetUseFixedSampledPointSet ()
 
virtual void UseFixedSampledPointSetOn ()
 
virtual void UseFixedSampledPointSetOff ()
 
virtual void SetFixedImageGradientFilter (FixedImageGradientFilterType *_arg)
 
virtual
FixedImageGradientFilterType
GetModifiableFixedImageGradientFilter ()
 
virtual const
FixedImageGradientFilterType
GetFixedImageGradientFilter () const
 
virtual void SetMovingImageGradientFilter (MovingImageGradientFilterType *_arg)
 
virtual
MovingImageGradientFilterType
GetModifiableMovingImageGradientFilter ()
 
virtual const
MovingImageGradientFilterType
GetMovingImageGradientFilter () const
 
virtual void SetFixedImageGradientCalculator (FixedImageGradientCalculatorType *_arg)
 
virtual
FixedImageGradientCalculatorType
GetModifiableFixedImageGradientCalculator ()
 
virtual const
FixedImageGradientCalculatorType
GetFixedImageGradientCalculator () const
 
virtual void SetMovingImageGradientCalculator (MovingImageGradientCalculatorType *_arg)
 
virtual
MovingImageGradientCalculatorType
GetModifiableMovingImageGradientCalculator ()
 
virtual const
MovingImageGradientCalculatorType
GetMovingImageGradientCalculator () const
 
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 () const
 
virtual FixedTransformTypeGetModifiableFixedTransform ()
 
virtual MovingTransformTypeGetModifiableMovingTransform ()
 
virtual VirtualImageTypeGetModifiableVirtualImage ()
 
virtual const MovingTransformTypeGetMovingTransform () const
 
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 () const
 
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 Attributes

static const DimensionType FixedImageDimension = Superclass::FixedDimension
 
static const DimensionType MovingImageDimension = Superclass::MovingDimension
 
static const DimensionType VirtualImageDimension = Superclass::VirtualDimension
 
- 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
LinearInterpolateImageFunction
< FixedImageGradientImageType,
CoordinateRepresentationType
FixedImageGradientInterpolatorType
 
typedef
LinearInterpolateImageFunction
< MovingImageGradientImageType,
CoordinateRepresentationType
MovingImageGradientInterpolatorType
 

Protected Member Functions

virtual void ComputeFixedImageGradientAtPoint (const FixedImagePointType &mappedPoint, FixedImageGradientType &gradient) const
 
virtual void ComputeFixedImageGradientFilterImage ()
 
virtual void ComputeMovingImageGradientAtPoint (const MovingImagePointType &mappedPoint, MovingImageGradientType &gradient) const
 
virtual void ComputeMovingImageGradientFilterImage () const
 
virtual bool GetComputeDerivative () const
 
virtual void GetValueAndDerivativeExecute () const
 
 ImageToImageMetricv4 ()
 
virtual void InitializeForIteration () const
 
void PrintSelf (std::ostream &os, Indent indent) const
 
bool TransformAndEvaluateFixedPoint (const VirtualPointType &virtualPoint, FixedImagePointType &mappedFixedPoint, FixedImagePixelType &mappedFixedPixelValue) const
 
bool TransformAndEvaluateMovingPoint (const VirtualPointType &virtualPoint, MovingImagePointType &mappedMovingPoint, MovingImagePixelType &mappedMovingPixelValue) 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 ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
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

DefaultFixedImageGradientCalculator::Pointer m_DefaultFixedImageGradientCalculator
 
DefaultFixedImageGradientFilter::Pointer m_DefaultFixedImageGradientFilter
 
DefaultMovingImageGradientCalculator::Pointer m_DefaultMovingImageGradientCalculator
 
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

 ImageToImageMetricv4 (const Self &)
 
void MapFixedSampledPointSetToVirtual (void)
 
void operator= (const Self &)
 

Private Attributes

bool m_ComputeDerivative
 
DerivativeValueType m_FloatingPointCorrectionResolution
 
bool m_HaveMadeGetValueWarning
 
MetricTraits m_MetricTraits
 
SizeValueType m_NumberOfSkippedFixedSampledPoints
 
bool m_UseFloatingPointCorrection
 

Friends

class ImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedImageRegionPartitioner< VirtualImageDimension >, Self >
 
class ImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedIndexedContainerPartitioner, Self >
 
class ImageToImageMetricv4GetValueAndDerivativeThreaderBase< ThreadedImageRegionPartitioner< VirtualImageDimension >, Self >
 
class ImageToImageMetricv4GetValueAndDerivativeThreaderBase< ThreadedIndexedContainerPartitioner, Self >
 
typedef PixelTraits
< FixedImagePixelType >
::ValueType 
FixedImagePixelValueType
 
typedef PixelTraits
< MovingImagePixelType >
::ValueType 
MovingImagePixelValueType
 
 typedef (itk::Concept::IsFloatingPoint< FixedImagePixelValueType >) OnlyDefinedForFloatingPointTypes0
 
 typedef (itk::Concept::IsFloatingPoint< MovingImagePixelValueType >) OnlyDefinedForFloatingPointTypes1
 

Additional Inherited Members

- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool flag)
 

Member Typedef Documentation

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef SmartPointer<const Self> itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::ConstPointer

Definition at line 177 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::CoordinateRepresentationType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::CoordinateRepresentationType

Type used for representing parameter values

Definition at line 186 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::DefaultFixedImageGradientCalculator itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::DefaultFixedImageGradientCalculator

Default image gradient calculator types

Definition at line 342 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::DefaultFixedImageGradientFilter itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::DefaultFixedImageGradientFilter

Default image gradient filter types

Definition at line 326 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::DefaultMovingImageGradientCalculator itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::DefaultMovingImageGradientCalculator

Definition at line 343 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::DefaultMovingImageGradientFilter itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::DefaultMovingImageGradientFilter

Definition at line 327 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::DerivativeType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::DerivativeType

Type of the metric derivative.

Definition at line 349 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef DerivativeType::ValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::DerivativeValueType

Definition at line 350 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::DimensionType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::DimensionType

Dimension type

Definition at line 196 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::FixedGradientPixelType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedGradientPixelType

Definition at line 307 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef CovariantVector<typename FixedImageGradientType::ValueType, FixedImageDimension> itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageComponentGradientType

Definition at line 290 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageType::ConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageConstPointer

Definition at line 221 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageGradientCalculatorType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageGradientCalculatorPointer

Definition at line 337 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::FixedImageGradientCalculatorType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageGradientCalculatorType

Image gradient calculator types. The TOutput template parameter is chosen to match that of CentralDiffererenceImageFunction.

Definition at line 332 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageGradientFilterType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageGradientFilterPointer

Definition at line 320 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::FixedImageGradientFilterType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageGradientFilterType

Definition at line 316 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageGradientImageType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageGradientImagePointer

Definition at line 313 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::FixedImageGradientImageType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageGradientImageType

Definition at line 310 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef LinearInterpolateImageFunction< FixedImageGradientImageType, CoordinateRepresentationType > itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageGradientInterpolatorType
protected

Definition at line 521 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::FixedImageGradientType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageGradientType

Image derivatives types

Definition at line 285 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageType::IndexType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageIndexType

Definition at line 223 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageMaskType::ConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageMaskConstPointer

Definition at line 260 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageMaskType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageMaskPointer

Definition at line 259 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef SpatialObject< itkGetStaticConstMacro(FixedImageDimension) > itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageMaskType

Type for the mask of the fixed image. Only pixels that are "inside" this mask will be considered for the computation of the metric

Definition at line 258 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageType::PixelType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImagePixelType

Definition at line 218 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef PixelTraits<FixedImagePixelType>::ValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImagePixelValueType
private

Only floating-point images are currently supported. To support integer images, several small changes must be made

Definition at line 688 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImagePointer

Definition at line 220 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImageType::PointType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImagePointType

Definition at line 222 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef TFixedImage itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageType

Image-accessor typedefs

Definition at line 217 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::FixedInputPointType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedInputPointType

Definition at line 202 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedInterpolatorType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedInterpolatorPointer

Definition at line 281 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef InterpolateImageFunction< FixedImageType, CoordinateRepresentationType > itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedInterpolatorType

Type of the Interpolator Base class

Definition at line 277 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::FixedOutputPointType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedOutputPointType

Definition at line 203 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedImagePixelType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedPixelType

Definition at line 219 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::FixedRealType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedRealType

Type of the filter used to calculate the gradients. Note that RealType is always double (or long double for long double pixel-type).

Definition at line 301 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedSampledPointSetType::ConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedSampledPointSetConstPointer

Definition at line 272 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef FixedSampledPointSetType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedSampledPointSetPointer

Definition at line 271 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef PointSet<typename FixedImageType::PixelType, itkGetStaticConstMacro(FixedImageDimension)> itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedSampledPointSetType

Type of the point set used for sparse sampling.

Definition at line 270 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef NumericTraits<FixedRealType>::ScalarRealType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedScalarRealType

Definition at line 304 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::FixedTransformJacobianType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedTransformJacobianType

Definition at line 213 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::FixedTransformParametersType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedTransformParametersType

Definition at line 204 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::FixedTransformPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedTransformPointer

Definition at line 201 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::FixedTransformType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedTransformType

Transform types from Superclass

Definition at line 200 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::GradientSourceType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GradientSourceType

Graident source type

Definition at line 193 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::DimensionType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::ImageDimensionType

Definition at line 197 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::InternalComputationValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::InternalComputationValueType

Type used internally for computations

Definition at line 180 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::JacobianType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::JacobianType

Definition at line 212 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::MeasureType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MeasureType

Type of the measure.

Definition at line 346 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef TMetricTraits itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MetricTraits

Typedef for traits class

Definition at line 249 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::MovingGradientPixelType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingGradientPixelType

Definition at line 308 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef CovariantVector<typename MovingImageGradientType::ValueType, MovingImageDimension> itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageComponentGradientType

Definition at line 293 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageType::ConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageConstPointer

Definition at line 228 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageGradientCalculatorType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageGradientCalculatorPointer

Definition at line 339 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::MovingImageGradientCalculatorType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageGradientCalculatorType

Definition at line 334 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageGradientFilterType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageGradientFilterPointer

Definition at line 322 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::MovingImageGradientFilterType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageGradientFilterType

Definition at line 317 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageGradientImageType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageGradientImagePointer

Definition at line 314 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::MovingImageGradientImageType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageGradientImageType

Definition at line 311 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef LinearInterpolateImageFunction< MovingImageGradientImageType, CoordinateRepresentationType > itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageGradientInterpolatorType
protected

Definition at line 524 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::MovingImageGradientType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageGradientType

Definition at line 286 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageType::IndexType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageIndexType

Definition at line 231 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageMaskType::ConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageMaskConstPointer

Definition at line 266 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageMaskType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageMaskPointer

Definition at line 265 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef SpatialObject< itkGetStaticConstMacro(MovingImageDimension) > itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageMaskType

Type for the mask of the moving image. Only pixels that are "inside" this mask will be considered for the computation of the metric

Definition at line 264 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageType::PixelType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImagePixelType

Definition at line 225 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef PixelTraits<MovingImagePixelType>::ValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImagePixelValueType
private

Only floating-point images are currently supported. To support integer images, several small changes must be made

Definition at line 689 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImagePointer

Definition at line 227 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageType::PointType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImagePointType

Definition at line 229 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImageType::RegionType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageRegionType

Definition at line 230 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef TMovingImage itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageType

Definition at line 224 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::MovingInputPointType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingInputPointType

Definition at line 208 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingInterpolatorType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingInterpolatorPointer

Definition at line 282 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef InterpolateImageFunction< MovingImageType, CoordinateRepresentationType > itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingInterpolatorType

Definition at line 280 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::MovingOutputPointType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingOutputPointType

Definition at line 209 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MovingImagePixelType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingPixelType

Definition at line 226 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::MovingRealType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingRealType

Definition at line 302 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef NumericTraits<MovingRealType>::ScalarRealType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingScalarRealType

Definition at line 305 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::MovingTransformJacobianType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingTransformJacobianType

Definition at line 214 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::MovingTransformParametersType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingTransformParametersType

Definition at line 210 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::MovingTransformPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingTransformPointer

Definition at line 207 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::MovingTransformType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingTransformType

Definition at line 206 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::NumberOfParametersType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::NumberOfParametersType

Type to represent the number of parameters that are being optimized at any given iteration of the optimizer.

Definition at line 354 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::ParametersType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::ParametersType

Type of the parameters.

Definition at line 189 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::ParametersValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::ParametersValueType

Definition at line 190 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef SmartPointer<Self> itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::Pointer

Definition at line 176 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef ImageToImageMetricv4 itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::Self

Standard class typedefs.

Definition at line 174 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef ObjectToObjectMetric<TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage> itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::Superclass

Definition at line 175 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualDirectionType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualDirectionType

Definition at line 242 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef CovariantVector<typename VirtualImageGradientType::ValueType, VirtualImageDimension> itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualImageComponentGradientType

Definition at line 296 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef MetricTraits::VirtualImageGradientType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualImageGradientType

Definition at line 287 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualImagePointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualImagePointer

Definition at line 235 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualImageType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualImageType

Types for the virtual domain

Definition at line 234 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualIndexType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualIndexType

Definition at line 244 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualPointType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualOriginType

Definition at line 240 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualPixelType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualPixelType

Definition at line 236 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualPointSetPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualPointSetPointer

Definition at line 246 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualPointSetType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualPointSetType

Definition at line 245 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualPointType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualPointType

Definition at line 241 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualSizeType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualRadiusType

Definition at line 243 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualRegionType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualRegionType

Definition at line 237 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualSizeType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualSizeType

Definition at line 238 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
typedef Superclass::VirtualSpacingType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualSpacingType

Definition at line 239 of file itkImageToImageMetricv4.h.

Constructor & Destructor Documentation

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

Member Function Documentation

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::ComputeFixedImageGradientAtPoint ( const FixedImagePointType mappedPoint,
FixedImageGradientType gradient 
) const
protectedvirtual

Compute image derivatives for a Fixed point.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::ComputeFixedImageGradientFilterImage ( )
protectedvirtual

Computes the gradients of the fixed image, using the GradientFilter, assigning the output to to m_FixedImageGradientImage.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::ComputeMovingImageGradientAtPoint ( const MovingImagePointType mappedPoint,
MovingImageGradientType gradient 
) const
protectedvirtual

Compute image derivatives for a moving point.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::ComputeMovingImageGradientFilterImage ( ) const
protectedvirtual

Computes the gradients of the moving image, using the GradientFilter, assigning the output to to m_MovingImageGradientImage.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetComputeDerivative ( ) const
protectedvirtual

Get accessor for flag to calculate derivative.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetDerivative ( DerivativeType ) const
virtual

This method returns the derivative based on the current transformation(s).

Implements itk::ObjectToObjectMetricBase.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const FixedImageType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetFixedImage ( ) const
virtual
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const FixedImageGradientCalculatorType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetFixedImageGradientCalculator ( ) const
virtual

Set/Get gradient calculators

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const FixedImageGradientFilterType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetFixedImageGradientFilter ( ) const
virtual

Set/Get the gradient filter

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const FixedImageGradientImageType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetFixedImageGradientImage ( ) const
virtual
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const FixedImageMaskType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetFixedImageMask ( ) const
virtual

Set/Get the fixed image mask.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const FixedInterpolatorType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetFixedInterpolator ( ) const
virtual
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const FixedSampledPointSetType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetFixedSampledPointSet ( ) const
virtual

Set/Get the fixed image domain sampling point set See main documentation regarding using fixed vs virtual domain for the point set.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual DerivativeValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetFloatingPointCorrectionResolution ( ) const
virtual

Set/Get the floating point resolution used optionally by the derivatives. If this is set, for example to 1e5, then the derivative will have precision up to 5 points beyond the decimal point. And precision beyond that will be truncated.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual ThreadIdType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetMaximumNumberOfThreads ( ) const
virtual

Set number of threads to use. This the maximum number of threads to use when multithreaded. The actual number of threads used (may be less than this value) can be obtained with GetNumberOfThreadsUsed.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual FixedImageGradientCalculatorType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetModifiableFixedImageGradientCalculator ( )
virtual

Set/Get gradient calculators

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual FixedImageGradientFilterType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetModifiableFixedImageGradientFilter ( )
virtual

Set/Get the gradient filter

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual FixedImageGradientImageType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetModifiableFixedImageGradientImage ( )
virtual

Get Fixed Gradient Image.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual FixedInterpolatorType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetModifiableFixedInterpolator ( )
virtual

Get a pointer to the fixed interpolator.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual MovingImageGradientCalculatorType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetModifiableMovingImageGradientCalculator ( )
virtual

Set/Get gradient calculators

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual MovingImageGradientFilterType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetModifiableMovingImageGradientFilter ( )
virtual

Set/Get the gradient filter

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual MovingImageGradientImageType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetModifiableMovingImageGradientImage ( )
virtual

Get Moving Gradient Image.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual MovingInterpolatorType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetModifiableMovingInterpolator ( )
virtual

Get a pointer to the Moving interpolator.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual VirtualPointSetType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetModifiableVirtualSampledPointSet ( )
virtual

Get the virtual domain sampling point set

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const MovingImageType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetMovingImage ( ) const
virtual

Get/Set the Moving Image.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const MovingImageGradientCalculatorType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetMovingImageGradientCalculator ( ) const
virtual

Set/Get gradient calculators

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const MovingImageGradientFilterType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetMovingImageGradientFilter ( ) const
virtual

Set/Get the gradient filter

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const MovingImageGradientImageType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetMovingImageGradientImage ( ) const
virtual
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const MovingImageMaskType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetMovingImageMask ( ) const
virtual

Set/Get the moving image mask.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const MovingInterpolatorType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetMovingInterpolator ( ) const
virtual
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const char* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetNameOfClass ( ) const
virtual
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
SizeValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetNumberOfDomainPoints ( ) const

Get the number of points in the domain used to evaluate the metric. This will differ depending on whether a sampled point set or dense sampling is used, and will be greater than or equal to GetNumberOfValidPoints().

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const SizeValueType& itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetNumberOfSkippedFixedSampledPoints ( )
virtual

Get the number of sampled fixed sampled points that are deemed invalid during conversion to virtual domain in Initialize(). For informational purposes.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual ThreadIdType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetNumberOfThreadsUsed ( ) const
virtual

Get number of threads to used in the the most recent evaluation. Only valid after GetValueAndDerivative() or GetValue() has been called.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual SizeValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetNumberOfValidPoints ( ) const
virtual

Get number of valid points from most recent update

Reimplemented from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage >.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const bool& itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetUseFixedImageGradientFilter ( )
virtual

Set/Get gradient computation via an image filter, for fixed image.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const bool& itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetUseFixedSampledPointSet ( )
virtual

Set/Get flag to use fixed image domain sampling point set

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const bool& itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetUseFloatingPointCorrection ( )
virtual

Set/Get the option for applying floating point resolution truncation to derivative calculations in global support cases. False by default. It is only applied in global support cases (i.e. with global-support transforms) because in these cases, the per-point derivative values are added cumulatively, which can lead to loss of precision when the sum becomes much larger than the values being added. The goal is more consistent results across the number of threads used for an evaluation. The resolution can be changed using SetFloatingPointCorrectionResolution().

Note
The metric always sums derivative values using a CompensatedSummation object, but empirically this provides only a slight improvement in precision across number of threads during registration.
Warning
The metric does not perform any normalization so the results of this truncation are highly dependent on the derivative magnitudes.
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const bool& itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetUseMovingImageGradientFilter ( )
virtual

Set/Get gradient computation via an image filter.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual MeasureType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::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.

Implements itk::ObjectToObjectMetricBase.

Reimplemented in itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

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

Calculate and return both the value for the metric and its derivative. This calls the SparseGetValueAndDerivativeThreader if UsedFixedSampledPointSet is true, and DenseGetValueAndDerivativeThreader otherwise. The threaders in turn call ProcessPoint on each point in the domain to be examined.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetValueAndDerivativeExecute ( ) const
protectedvirtual

Perform the actual threaded processing, using the appropriate GetValueAndDerivativeThreader. Results get written to member vars. This is available as a separate method so it can be used by dervied classes that implement their own GetValueAndDerivative, and/or need to run the processing loop more than once.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual const VirtualPointSetType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::GetVirtualSampledPointSet ( ) const
virtual
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::Initialize ( void  ) throw ( itk::ExceptionObject )
virtual
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::InitializeDefaultFixedImageGradientFilter ( void  )
protectedvirtual

Initialize the default image gradient filters. This must only be called once the fixed and moving images have been set.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::InitializeDefaultMovingImageGradientFilter ( void  )
protectedvirtual

Initialize the default image gradient filters. This must only be called once the fixed and moving images have been set.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::InitializeForIteration ( ) const
protectedvirtual

Perform any initialization required before each evaluation of GetValueAndDerivative. This is distinct from Initialize, which is called only once before a number of iterations, e.g. before a registration loop.

Reimplemented in itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, and itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MapFixedSampledPointSetToVirtual ( void  )
private

Map the fixed point set samples to the virtual domain

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::operator= ( const Self )
private
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::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::ObjectToObjectMetricBase.

Reimplemented in itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetFixedImage ( const FixedImageType _arg)
virtual
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetFixedImageGradientCalculator ( FixedImageGradientCalculatorType _arg)
virtual

Set/Get gradient calculators

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetFixedImageGradientFilter ( FixedImageGradientFilterType _arg)
virtual

Set/Get the gradient filter

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetFixedImageMask ( FixedImageMaskType _arg)
virtual

Set/Get the fixed image mask.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetFixedImageMask ( const FixedImageMaskType _arg)
virtual

Set/Get the fixed image mask.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetFixedInterpolator ( FixedInterpolatorType _arg)
virtual

Connect the fixed interpolator.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetFixedSampledPointSet ( FixedSampledPointSetType _arg)
virtual

Set/Get the fixed image domain sampling point set See main documentation regarding using fixed vs virtual domain for the point set.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetFixedSampledPointSet ( const FixedSampledPointSetType _arg)
virtual

Set/Get the fixed image domain sampling point set See main documentation regarding using fixed vs virtual domain for the point set.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetFloatingPointCorrectionResolution ( DerivativeValueType  _arg)
virtual

Set/Get the floating point resolution used optionally by the derivatives. If this is set, for example to 1e5, then the derivative will have precision up to 5 points beyond the decimal point. And precision beyond that will be truncated.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetMaximumNumberOfThreads ( const ThreadIdType  threads)
virtual

Set number of threads to use. This the maximum number of threads to use when multithreaded. The actual number of threads used (may be less than this value) can be obtained with GetNumberOfThreadsUsed.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetMovingImage ( const MovingImageType _arg)
virtual

Get/Set the Moving Image.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetMovingImageGradientCalculator ( MovingImageGradientCalculatorType _arg)
virtual

Set/Get gradient calculators

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetMovingImageGradientFilter ( MovingImageGradientFilterType _arg)
virtual

Set/Get the gradient filter

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetMovingImageMask ( MovingImageMaskType _arg)
virtual

Set/Get the moving image mask.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetMovingImageMask ( const MovingImageMaskType _arg)
virtual

Set/Get the moving image mask.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetMovingInterpolator ( MovingInterpolatorType _arg)
virtual

Connect the Moving interpolator.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetUseFixedImageGradientFilter ( bool  _arg)
virtual

Set/Get gradient computation via an image filter, for fixed image.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetUseFixedSampledPointSet ( bool  _arg)
virtual

Set/Get flag to use fixed image domain sampling point set

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetUseFloatingPointCorrection ( bool  _arg)
virtual

Set/Get the option for applying floating point resolution truncation to derivative calculations in global support cases. False by default. It is only applied in global support cases (i.e. with global-support transforms) because in these cases, the per-point derivative values are added cumulatively, which can lead to loss of precision when the sum becomes much larger than the values being added. The goal is more consistent results across the number of threads used for an evaluation. The resolution can be changed using SetFloatingPointCorrectionResolution().

Note
The metric always sums derivative values using a CompensatedSummation object, but empirically this provides only a slight improvement in precision across number of threads during registration.
Warning
The metric does not perform any normalization so the results of this truncation are highly dependent on the derivative magnitudes.
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SetUseMovingImageGradientFilter ( bool  _arg)
virtual

Set/Get gradient computation via an image filter.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::SupportsArbitraryVirtualDomainSamples ( void  ) const
inlinevirtual

Returns a flag. True if arbitrary virtual domain points will always correspond to data points. False if not. For example, point-set metrics return false because only some virtual domain points will correspond to points within the point sets.

Implements itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage >.

Definition at line 512 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::TransformAndEvaluateFixedPoint ( const VirtualPointType virtualPoint,
FixedImagePointType mappedFixedPoint,
FixedImagePixelType mappedFixedPixelValue 
) const
protected

Transform a point from VirtualImage domain to FixedImage domain and evaluate. This function also checks if mapped point is within the mask if one is set, and that is within the fixed image buffer, in which case the return value will be true. Parameters mappedFixedPoint and mappedFixedPixelValue are returned.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::TransformAndEvaluateMovingPoint ( const VirtualPointType virtualPoint,
MovingImagePointType mappedMovingPoint,
MovingImagePixelType mappedMovingPixelValue 
) const
protected

Transform and evaluate a point from VirtualImage domain to MovingImage domain.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::typedef ( itk::Concept::IsFloatingPoint< FixedImagePixelValueType )
private

This class requires OnlyDefinedForFloatingPointTypes0 in the form of ( itk::Concept::IsFloatingPoint<FixedImagePixelValueType> )

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::typedef ( itk::Concept::IsFloatingPoint< MovingImagePixelValueType )
private

This class requires OnlyDefinedForFloatingPointTypes1 in the form of ( itk::Concept::IsFloatingPoint<MovingImagePixelValueType> )

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::UseFixedImageGradientFilterOff ( )
virtual

Set/Get gradient computation via an image filter, for fixed image.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::UseFixedImageGradientFilterOn ( )
virtual

Set/Get gradient computation via an image filter, for fixed image.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::UseFixedSampledPointSetOff ( )
virtual

Set/Get flag to use fixed image domain sampling point set

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::UseFixedSampledPointSetOn ( )
virtual

Set/Get flag to use fixed image domain sampling point set

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::UseFloatingPointCorrectionOff ( )
virtual

Set/Get the option for applying floating point resolution truncation to derivative calculations in global support cases. False by default. It is only applied in global support cases (i.e. with global-support transforms) because in these cases, the per-point derivative values are added cumulatively, which can lead to loss of precision when the sum becomes much larger than the values being added. The goal is more consistent results across the number of threads used for an evaluation. The resolution can be changed using SetFloatingPointCorrectionResolution().

Note
The metric always sums derivative values using a CompensatedSummation object, but empirically this provides only a slight improvement in precision across number of threads during registration.
Warning
The metric does not perform any normalization so the results of this truncation are highly dependent on the derivative magnitudes.
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::UseFloatingPointCorrectionOn ( )
virtual

Set/Get the option for applying floating point resolution truncation to derivative calculations in global support cases. False by default. It is only applied in global support cases (i.e. with global-support transforms) because in these cases, the per-point derivative values are added cumulatively, which can lead to loss of precision when the sum becomes much larger than the values being added. The goal is more consistent results across the number of threads used for an evaluation. The resolution can be changed using SetFloatingPointCorrectionResolution().

Note
The metric always sums derivative values using a CompensatedSummation object, but empirically this provides only a slight improvement in precision across number of threads during registration.
Warning
The metric does not perform any normalization so the results of this truncation are highly dependent on the derivative magnitudes.
template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::UseMovingImageGradientFilterOff ( )
virtual

Set/Get gradient computation via an image filter.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
virtual void itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::UseMovingImageGradientFilterOn ( )
virtual

Set/Get gradient computation via an image filter.

Friends And Related Function Documentation

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
friend class ImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedImageRegionPartitioner< VirtualImageDimension >, Self >
friend

Definition at line 528 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
friend class ImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedIndexedContainerPartitioner, Self >
friend

Definition at line 529 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
friend class ImageToImageMetricv4GetValueAndDerivativeThreaderBase< ThreadedImageRegionPartitioner< VirtualImageDimension >, Self >
friend

Definition at line 526 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
friend class ImageToImageMetricv4GetValueAndDerivativeThreaderBase< ThreadedIndexedContainerPartitioner, Self >
friend

Definition at line 527 of file itkImageToImageMetricv4.h.

Member Data Documentation

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
const DimensionType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::FixedImageDimension = Superclass::FixedDimension
static

Definition at line 252 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_ComputeDerivative
mutableprivate

Flag to know if derivative should be calculated

Definition at line 683 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
DefaultFixedImageGradientCalculator::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_DefaultFixedImageGradientCalculator
protected

Pointer to default gradient calculators. Used for easier initialization of the default filter.

Definition at line 625 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
DefaultFixedImageGradientFilter::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_DefaultFixedImageGradientFilter
protected

Pointer to default gradient filter. Used for easier initialization of the default filter.

Definition at line 618 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
DefaultMovingImageGradientCalculator::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_DefaultMovingImageGradientCalculator
protected

Definition at line 627 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
DefaultMovingImageGradientFilter::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_DefaultMovingImageGradientFilter
protected

Definition at line 620 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
ImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedImageRegionPartitioner< VirtualImageDimension >, Self >::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_DenseGetValueAndDerivativeThreader
protected

Definition at line 534 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
DerivativeType* itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_DerivativeResult
mutableprotected

Derivative results holder. User a raw pointer so we can point it to a user-provided object. This is used in internal methods so the user-provided variable does not have to be passed around. It also enables safely sharing a derivative object between metrics during multi-variate analsys, for memory efficiency. Will be NULL if not set.

Definition at line 643 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
FixedImageConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_FixedImage
protected

Definition at line 595 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
FixedImageGradientCalculatorPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_FixedImageGradientCalculator
protected

Image gradient calculators

Definition at line 634 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
FixedImageGradientFilterPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_FixedImageGradientFilter
protected

Gradient filters

Definition at line 612 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
FixedImageGradientImagePointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_FixedImageGradientImage
mutableprotected

Gradient images to store gradient filter output.

Definition at line 630 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
FixedImageGradientInterpolatorType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_FixedImageGradientInterpolator
protected

Definition at line 603 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
FixedImageMaskConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_FixedImageMask
protected

Masks

Definition at line 646 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
FixedInterpolatorPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_FixedInterpolator
protected

Pointers to interpolators

Definition at line 601 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
FixedSampledPointSetConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_FixedSampledPointSet
protected

Sampled point sets

Definition at line 650 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
DerivativeValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_FloatingPointCorrectionResolution
private

Definition at line 678 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_HaveMadeGetValueWarning
mutableprivate

Flag for warning about use of GetValue. Will be removed when GetValue implementation is improved.

Definition at line 667 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
MetricTraits itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_MetricTraits
private

Definition at line 680 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
MovingImageConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_MovingImage
protected

Definition at line 598 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
MovingImageGradientCalculatorPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_MovingImageGradientCalculator
protected

Definition at line 635 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
MovingImageGradientFilterPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_MovingImageGradientFilter
protected

Definition at line 613 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
MovingImageGradientImagePointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_MovingImageGradientImage
mutableprotected

Definition at line 631 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
MovingImageGradientInterpolatorType::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_MovingImageGradientInterpolator
protected

Definition at line 604 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
MovingImageMaskConstPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_MovingImageMask
protected

Definition at line 647 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
MovingInterpolatorPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_MovingInterpolator
protected

Definition at line 602 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
SizeValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_NumberOfSkippedFixedSampledPoints
private

Keep track of the number of sampled fixed points that are deemed invalid during conversion to virtual domain. For informational purposes.

Definition at line 675 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
ImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedIndexedContainerPartitioner, Self >::Pointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_SparseGetValueAndDerivativeThreader
protected

Definition at line 538 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_UseFixedImageGradientFilter
protected

Flag to control use of precomputed gradient filter image or gradient calculator for image gradient calculations.

Definition at line 608 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_UseFixedSampledPointSet
protected

Flag to use FixedSampledPointSet, i.e. Sparse sampling.

Definition at line 654 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_UseFloatingPointCorrection
private

Definition at line 677 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
bool itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_UseMovingImageGradientFilter
protected

Definition at line 609 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
VirtualPointSetPointer itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::m_VirtualSampledPointSet
protected

Definition at line 651 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
const DimensionType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::MovingImageDimension = Superclass::MovingDimension
static

Definition at line 253 of file itkImageToImageMetricv4.h.

template<class TFixedImage, class TMovingImage, class TVirtualImage = TFixedImage, typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage >>
const DimensionType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TMetricTraits >::VirtualImageDimension = Superclass::VirtualDimension
static

Definition at line 254 of file itkImageToImageMetricv4.h.


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