ITK  5.4.0 Insight Toolkit
itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits > Class Template Reference

#include <itkCorrelationImageToImageMetricv4.h>

## Detailed Description

### template<typename TFixedImage, typename TMovingImage, typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>> class itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >

Class implementing normalized cross correlation image metric.

Definition of the normalized cross correlation metric used here:

negative square of normalized cross correlation

$C(f, m) = -\frac{<f-\bar{f}, m-\bar{m} >^2}{|f-\bar{f}|^2 |m-\bar{m}|^2}$

in which, f, m are the vectors of image pixel intensities, $$\bar{f}$$ and $$\bar{m}$$ are the mean values of f and m. <,> denotes inner product, $$|\cdot|$$ denotes the 2-norm of the vector. The minus sign makes the metric to optimize towards its minimal value. Note that this uses the square of the mathematical notion of normalized cross correlation to avoid the square root computation in practice.

Moving image (m) is a function of the parameters (p) of the moving transforms. So $$C(f, m) = C(f, m(p))$$ GetValueAndDerivative will return the value as $$C(f,m)$$ and the derivative as

$\frac{d}{dp} C = 2 \frac{<f1, m1>}{|f1|^2 |m1|^2} * ( <f1, \frac{dm}{dp}> - \frac{<f1, m1>}{|m1|^2} < m1, \frac{dm}{dp} > )$

in which, $$f1 = f - \bar{f}$$, $$m1 = m - \bar{m}$$ (Note: there should be a minus sign of $$\frac{d}{dp}$$ mathematically, which is not in the implementation to match the requirement of the metricv4 optimization framework.

This metric only works with the global transform. It throws an exception if the transform has local support.

Examples
Examples/RegistrationITKv4/DeformableRegistration4.cxx.

Definition at line 78 of file itkCorrelationImageToImageMetricv4.h.

Inheritance diagram for itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >:
Collaboration diagram for itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >:

## Public Types

using ConstPointer = SmartPointer< const Self >

using Pointer = SmartPointer< Self >

using Self = CorrelationImageToImageMetricv4

using Superclass = ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >

using VirtualImageType = typename Superclass::VirtualImageType

Public Types inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >
using ConstPointer = SmartPointer< const Self >

using DerivativeValueType = typename DerivativeType::ValueType

using FixedImageConstPointer = typename FixedImageType::ConstPointer

using FixedImageIndexType = typename FixedImageType::IndexType

using FixedImageMaskType = SpatialObject< Self::FixedImageDimension >

using FixedImagePixelType = typename FixedImageType::PixelType

using FixedImagePointer = typename FixedImageType::Pointer

using FixedImagePointType = typename FixedImageType::PointType

using FixedImageType = TFixedImage

using FixedInterpolatorPointer = typename FixedInterpolatorType::Pointer

using FixedInterpolatorType = InterpolateImageFunction< FixedImageType, CoordinateRepresentationType >

using FixedPixelType = FixedImagePixelType

using FixedRealType = typename MetricTraits::FixedRealType

using FixedSampledPointSetConstPointer = typename FixedSampledPointSetType::ConstPointer

using FixedSampledPointSetPointer = typename FixedSampledPointSetType::Pointer

using FixedSampledPointSetType = PointSet< typename FixedImageType::PixelType, Self::FixedImageDimension >

using FixedScalarRealType = typename NumericTraits< FixedRealType >::ScalarRealType

using ImageDimensionType = typename Superclass::DimensionType

using InternalComputationValueType = TInternalComputationValueType

using MetricTraits = TMetricTraits

using MovingImageConstPointer = typename MovingImageType::ConstPointer

using MovingImageIndexType = typename MovingImageType::IndexType

using MovingImageMaskType = SpatialObject< Self::MovingImageDimension >

using MovingImagePixelType = typename MovingImageType::PixelType

using MovingImagePointer = typename MovingImageType::Pointer

using MovingImagePointType = typename MovingImageType::PointType

using MovingImageRegionType = typename MovingImageType::RegionType

using MovingImageType = TMovingImage

using MovingInterpolatorPointer = typename MovingInterpolatorType::Pointer

using MovingInterpolatorType = InterpolateImageFunction< MovingImageType, CoordinateRepresentationType >

using MovingPixelType = MovingImagePixelType

using MovingRealType = typename MetricTraits::MovingRealType

using MovingScalarRealType = typename NumericTraits< MovingRealType >::ScalarRealType

using ObjectType = typename Superclass::ObjectType

using Pointer = SmartPointer< Self >

using Self = ImageToImageMetricv4

using Superclass = ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType >

using VirtualImageType = typename Superclass::VirtualImageType

using VirtualOriginType = typename Superclass::VirtualPointType

Public Types inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType >
using ConstPointer = SmartPointer< const Self >

using CoordinateRepresentationType = TInternalComputationValueType

using DimensionType = SizeValueType

using FixedInputPointType = typename FixedTransformType::InputPointType

using FixedOutputPointType = typename FixedTransformType::OutputPointType

using FixedTransformJacobianType = typename FixedTransformType::JacobianType

using FixedTransformParametersType = typename FixedTransformType::ParametersType

using FixedTransformPointer = typename FixedTransformType::Pointer

using FixedTransformType = Transform< TInternalComputationValueType, TVirtualImage::ImageDimension, TFixedDimension >

using InternalComputationValueType = TInternalComputationValueType

using JacobianType = typename FixedTransformType::JacobianType

using MetricCategoryType = typename Superclass::MetricCategoryEnum

using MovingDisplacementFieldTransformType = DisplacementFieldTransform< CoordinateRepresentationType, Self::MovingDimension >

using MovingInputPointType = typename MovingTransformType::InputPointType

using MovingOutputPointType = typename MovingTransformType::OutputPointType

using MovingTransformJacobianType = typename MovingTransformType::JacobianType

using MovingTransformParametersType = typename MovingTransformType::ParametersType

using MovingTransformPointer = typename MovingTransformType::Pointer

using MovingTransformType = Transform< TInternalComputationValueType, TVirtualImage::ImageDimension, TMovingDimension >

using ObjectType = typename Superclass::Object

using Pointer = SmartPointer< Self >

using Self = ObjectToObjectMetric

using Superclass = ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >

using VirtualDirectionType = typename VirtualImageType::DirectionType

using VirtualImageConstPointer = typename VirtualImageType::ConstPointer

using VirtualImagePointer = typename VirtualImageType::Pointer

using VirtualImageType = TVirtualImage

using VirtualIndexType = typename VirtualImageType::IndexType

using VirtualOriginType = typename VirtualImageType::PointType

using VirtualPixelType = typename VirtualImageType::PixelType

using VirtualPointSetPointer = typename VirtualPointSetType::Pointer

using VirtualPointSetType = PointSet< VirtualPixelType, Self::VirtualDimension >

using VirtualPointType = typename VirtualImageType::PointType

using VirtualRegionType = typename VirtualImageType::RegionType

using VirtualSizeType = typename VirtualRegionType::SizeType

using VirtualSpacingType = typename VirtualImageType::SpacingType

Public Types inherited from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >
using ConstPointer = SmartPointer< const Self >

using CoordinateRepresentationType = TInternalComputationValueType

using DerivativeValueType = typename DerivativeType::ValueType

using MetricCategoryEnum = itk::ObjectToObjectMetricBaseTemplateEnums::MetricCategory

using NumberOfParametersType = unsigned int

using ObjectConstPointer = typename ObjectType::ConstPointer

using ObjectType = Object

using ParametersValueType = TInternalComputationValueType

using Pointer = SmartPointer< Self >

using Self = ObjectToObjectMetricBaseTemplate

using Superclass = SingleValuedCostFunctionv4Template< TInternalComputationValueType >

Public Types inherited from itk::SingleValuedCostFunctionv4Template< TInternalComputationValueType >
using ConstPointer = SmartPointer< const Self >

using DerivativeType = Array< TInternalComputationValueType >

using MeasureType = TInternalComputationValueType

using Pointer = SmartPointer< Self >

using Self = SingleValuedCostFunctionv4Template

using Superclass = CostFunctionTemplate< TInternalComputationValueType >

Public Types inherited from itk::CostFunctionTemplate< TInternalComputationValueType >
using ConstPointer = SmartPointer< const Self >

using ParametersType = OptimizerParameters< TInternalComputationValueType >

using ParametersValueType = TInternalComputationValueType

using Pointer = SmartPointer< Self >

using Self = CostFunctionTemplate

using Superclass = Object

Public Types inherited from itk::Object
using ConstPointer = SmartPointer< const Self >

using Pointer = SmartPointer< Self >

using Self = Object

using Superclass = LightObject

Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >

using Pointer = SmartPointer< Self >

using Self = LightObject

## Public Member Functions

const char * GetNameOfClass () const override

Public Member Functions inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >

void GetDerivative (DerivativeType &) const override

virtual const FixedImageTypeGetFixedImage () const

MetricCategoryType GetMetricCategory () const override

virtual FixedInterpolatorTypeGetModifiableFixedInterpolator ()

virtual MovingInterpolatorTypeGetModifiableMovingInterpolator ()

const char * GetNameOfClass () const override

SizeValueType GetNumberOfDomainPoints () const

virtual const SizeValueTypeGetNumberOfSkippedFixedSampledPoints () const

MeasureType GetValue () const override

void GetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const override

void Initialize () override

virtual void SetFixedImage (const FixedImageType *_arg)

virtual void SetFixedInterpolator (FixedInterpolatorType *_arg)

virtual void SetMovingInterpolator (MovingInterpolatorType *_arg)

bool SupportsArbitraryVirtualDomainSamples () const override

void SetFixedObject (const ObjectType *object) override

void SetMovingObject (const ObjectType *object) override

virtual void SetMovingImage (const MovingImageType *_arg)

virtual const MovingImageTypeGetMovingImage () const

virtual void SetFixedSampledPointSet (const FixedSampledPointSetType *_arg)

virtual const FixedSampledPointSetTypeGetFixedSampledPointSet () const

virtual void SetVirtualSampledPointSet (VirtualPointSetType *_arg)

virtual const VirtualPointSetTypeGetVirtualSampledPointSet () const

virtual void SetUseSampledPointSet (bool _arg)

virtual const bool & GetUseSampledPointSet () const

virtual void UseSampledPointSetOn ()

virtual void SetUseVirtualSampledPointSet (bool _arg)

virtual const bool & GetUseVirtualSampledPointSet () const

virtual void UseVirtualSampledPointSetOn ()

virtual const bool & GetUseFixedImageGradientFilter () const

virtual const bool & GetUseMovingImageGradientFilter () const

virtual void SetMaximumNumberOfWorkUnits (const ThreadIdType number)

virtual void SetUseFloatingPointCorrection (bool _arg)

virtual const bool & GetUseFloatingPointCorrection () const

virtual void UseFloatingPointCorrectionOn ()

virtual void SetFloatingPointCorrectionResolution (DerivativeValueType _arg)

virtual DerivativeValueType GetFloatingPointCorrectionResolution () const

Public Member Functions inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType >
OffsetValueType ComputeParameterOffsetFromVirtualIndex (const VirtualIndexType &index, const NumberOfParametersType &numberOfLocalParameters) const

OffsetValueType ComputeParameterOffsetFromVirtualPoint (const VirtualPointType &point, const NumberOfParametersType &numberOfLocalParameters) const

MetricCategoryType GetMetricCategory () const override

virtual FixedTransformTypeGetModifiableFixedTransform ()

virtual MovingTransformTypeGetModifiableMovingTransform ()

virtual VirtualImageTypeGetModifiableVirtualImage ()

const char * GetNameOfClass () const override

NumberOfParametersType GetNumberOfLocalParameters () const override

NumberOfParametersType GetNumberOfParameters () const override

virtual SizeValueType GetNumberOfValidPoints () const

const ParametersTypeGetParameters () const override

const MovingTransformTypeGetTransform ()

VirtualDirectionType GetVirtualDirection () const

virtual const TimeStampGetVirtualDomainTimeStamp () const

VirtualOriginType GetVirtualOrigin () const

const VirtualRegionTypeGetVirtualRegion () const

VirtualSpacingType GetVirtualSpacing () const

bool HasLocalSupport () const override

void Initialize () override

virtual void SetFixedTransform (FixedTransformType *_arg)

virtual void SetMovingTransform (MovingTransformType *_arg)

void SetParameters (ParametersType &params) override

void SetTransform (MovingTransformType *transform)

void SetVirtualDomain (const VirtualSpacingType &spacing, const VirtualOriginType &origin, const VirtualDirectionType &direction, const VirtualRegionType &region)

void SetVirtualDomainFromImage (const VirtualImageType *virtualImage)

void UpdateTransformParameters (const DerivativeType &derivative, TInternalComputationValueType factor) override

bool IsInsideVirtualDomain (const VirtualPointType &point) const

bool IsInsideVirtualDomain (const VirtualIndexType &index) const

Public Member Functions inherited from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >
MeasureType GetCurrentValue () const

virtual const ObjectTypeGetFixedObject () const

virtual const ObjectTypeGetMovingObject () const

Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)

unsigned long AddObserver (const EventObject &event, Command *) const

unsigned long AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const

LightObject::Pointer CreateAnother () const override

virtual void DebugOff () const

virtual void DebugOn () const

CommandGetCommand (unsigned long tag)

bool GetDebug () const

virtual ModifiedTimeType GetMTime () const

virtual const TimeStampGetTimeStamp () const

bool HasObserver (const EventObject &event) const

void InvokeEvent (const EventObject &)

void InvokeEvent (const EventObject &) const

virtual void Modified () const

void Register () const override

void RemoveAllObservers ()

void RemoveObserver (unsigned long tag)

void SetDebug (bool debugFlag) const

void SetReferenceCount (int) override

void UnRegister () const noexcept override

virtual void SetObjectName (std::string _arg)

virtual const std::string & GetObjectName () const

Public Member Functions inherited from itk::LightObject
Pointer Clone () const

virtual void Delete ()

virtual int GetReferenceCount () const

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

## Static Public Member Functions

static Pointer New ()

Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()

static void GlobalWarningDisplayOff ()

static void GlobalWarningDisplayOn ()

static Pointer New ()

static void SetGlobalWarningDisplay (bool val)

Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()

static Pointer New ()

## Static Public Attributes

static constexpr TFixedImage::ImageDimensionType FixedImageDimension = TFixedImage::ImageDimension

static constexpr TMovingImage::ImageDimensionType MovingImageDimension = TMovingImage::ImageDimension

static constexpr TVirtualImage::ImageDimensionType VirtualImageDimension = TVirtualImage::ImageDimension

Static Public Attributes inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >
static constexpr DimensionType FixedImageDimension = Superclass::FixedDimension

static constexpr DimensionType MovingImageDimension = Superclass::MovingDimension

static constexpr DimensionType VirtualImageDimension = Superclass::VirtualDimension

Static Public Attributes inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType >
static constexpr DimensionType FixedDimension

static constexpr DimensionType MovingDimension

static constexpr DimensionType VirtualDimension

## Protected Member Functions

CorrelationImageToImageMetricv4 ()

void InitializeForIteration () const override

void PrintSelf (std::ostream &os, Indent indent) const override

~CorrelationImageToImageMetricv4 () override=default

Protected Member Functions inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >

virtual bool GetComputeDerivative () const

virtual void GetValueAndDerivativeExecute () const

ImageToImageMetricv4 ()

void PrintSelf (std::ostream &os, Indent indent) const override

bool TransformAndEvaluateFixedPoint (const VirtualPointType &virtualPoint, FixedImagePointType &mappedFixedPoint, FixedImagePixelType &mappedFixedPixelValue) const

bool TransformAndEvaluateMovingPoint (const VirtualPointType &virtualPoint, MovingImagePointType &mappedMovingPoint, MovingImagePixelType &mappedMovingPixelValue) const

~ImageToImageMetricv4 () override=default

Protected Member Functions inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType >
const MovingDisplacementFieldTransformTypeGetMovingDisplacementFieldTransform () const

ObjectToObjectMetric ()

void PrintSelf (std::ostream &os, Indent indent) const override

bool TransformPhysicalPointToVirtualIndex (const VirtualPointType &, VirtualIndexType &) const

void TransformVirtualIndexToPhysicalPoint (const VirtualIndexType &, VirtualPointType &) const

virtual void VerifyDisplacementFieldSizeAndPhysicalSpace ()

bool VerifyNumberOfValidPoints (MeasureType &value, DerivativeType &derivative) const

~ObjectToObjectMetric () override=default

Protected Member Functions inherited from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >
ObjectToObjectMetricBaseTemplate ()

~ObjectToObjectMetricBaseTemplate () override=default

Protected Member Functions inherited from itk::SingleValuedCostFunctionv4Template< TInternalComputationValueType >
SingleValuedCostFunctionv4Template ()=default

~SingleValuedCostFunctionv4Template () override=default

Protected Member Functions inherited from itk::CostFunctionTemplate< TInternalComputationValueType >
CostFunctionTemplate ()=default

~CostFunctionTemplate () override=default

Protected Member Functions inherited from itk::Object
Object ()

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

virtual void SetTimeStamp (const TimeStamp &timeStamp)

~Object () override

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 ()

## ◆ ConstPointer

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 using itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::ConstPointer = SmartPointer

Definition at line 89 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
protected

Definition at line 152 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 using itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::CorrelationHelperDenseThreaderType = CorrelationImageToImageMetricv4HelperThreader, Superclass, Self>
protected

Definition at line 165 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
protected

Definition at line 167 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
protected

Definition at line 154 of file itkCorrelationImageToImageMetricv4.h.

## ◆ Pointer

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 using itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::Pointer = SmartPointer

Definition at line 88 of file itkCorrelationImageToImageMetricv4.h.

## ◆ Self

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 using itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::Self = CorrelationImageToImageMetricv4

Standard class type aliases.

Definition at line 85 of file itkCorrelationImageToImageMetricv4.h.

## ◆ Superclass

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 using itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::Superclass = ImageToImageMetricv4

Definition at line 87 of file itkCorrelationImageToImageMetricv4.h.

## ◆ VirtualImageType

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 using itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualImageType = typename Superclass::VirtualImageType

Definition at line 111 of file itkCorrelationImageToImageMetricv4.h.

## ◆ CorrelationImageToImageMetricv4()

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::CorrelationImageToImageMetricv4 ( )
protected

## ◆ ~CorrelationImageToImageMetricv4()

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::~CorrelationImageToImageMetricv4 ( )
overrideprotecteddefault

## ◆ GetNameOfClass()

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 const char* itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::GetNameOfClass ( ) const
overridevirtual

## ◆ InitializeForIteration()

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 void itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::InitializeForIteration ( ) const
overrideprotectedvirtual

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.

## ◆ New()

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 static Pointer itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::New ( )
static

Method for creation through the object factory.

## ◆ PrintSelf()

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 void itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::PrintSelf ( std::ostream & os, Indent indent ) const
overrideprotectedvirtual

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::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.

## Friends And Related Function Documentation

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 friend

Definition at line 144 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 friend

Definition at line 147 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 friend

Definition at line 159 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 friend

Definition at line 160 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 friend

Definition at line 138 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 friend

Definition at line 139 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 friend

Definition at line 134 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 friend

Definition at line 135 of file itkCorrelationImageToImageMetricv4.h.

## ◆ FixedImageDimension

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 constexpr TFixedImage::ImageDimensionType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageDimension = TFixedImage::ImageDimension
staticconstexpr

Definition at line 118 of file itkCorrelationImageToImageMetricv4.h.

## ◆ m_AverageFix

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 MeasureType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::m_AverageFix {}
mutableprotected

Definition at line 175 of file itkCorrelationImageToImageMetricv4.h.

## ◆ m_AverageMov

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 MeasureType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::m_AverageMov {}
mutableprotected

Definition at line 176 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
protected

Definition at line 169 of file itkCorrelationImageToImageMetricv4.h.

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
protected

Definition at line 170 of file itkCorrelationImageToImageMetricv4.h.

## ◆ MovingImageDimension

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 constexpr TMovingImage::ImageDimensionType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageDimension = TMovingImage::ImageDimension
staticconstexpr

Definition at line 119 of file itkCorrelationImageToImageMetricv4.h.

## ◆ VirtualImageDimension

template<typename TFixedImage , typename TMovingImage , typename TVirtualImage = TFixedImage, typename TInternalComputationValueType = double, typename TMetricTraits = DefaultImageToImageMetricTraitsv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType>>
 constexpr TVirtualImage::ImageDimensionType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualImageDimension = TVirtualImage::ImageDimension
staticconstexpr

Definition at line 117 of file itkCorrelationImageToImageMetricv4.h.

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