Loading...
Searching...
No Matches
elastix::PCAMetric< TElastix > Class Template Reference
Components » Metrics

`#include <elxPCAMetric.h>`

## Detailed Description

template<class TElastix>
class elastix::PCAMetric< TElastix >

- This metric is based on the AdvancedImageToImageMetric. It is templated over the type of the fixed and moving images to be compared.

This metric computes the sum of variances over the slowest varying dimension in the moving image. The spatial positions of the moving image are established through a Transform. Pixel values are taken from the Moving image.

This implementation is based on the AdvancedImageToImageMetric, which means that:

- It uses the ImageSampler-framework
- It makes use of the compact support of B-splines, in case of B-spline transforms.
- Image derivatives are computed using either the B-spline interpolator's implementation or by nearest neighbor interpolation of a precomputed central difference image.
- A minimum number of samples that should map within the moving image (mask) can be specified.

Parameters

  SampleLastDimensionRandomly: randomly sample a number of time points to to compute the variance from. When set to "false", all time points are taken into account. When set to "true", a random number of time points is selected, which can be set with parameter NumSamplesLastDimension.

  NumSamplesLastDimension: the number of random samples to take in the time time direction of the data when SampleLastDimensionRandomly is set to true.

  UseZeroAverageDisplacementConstraint: uses the zero average displacement constraint, as described in Nonrigid registration of dynamic medical imaging data using nD+t B-splines and a groupwise optimization approach, Metz et al., Medical Image Analysis, 2011. Subtract the over time computed mean parameter value from each parameter. This should be used when registration is performed directly on the moving image, without using a fixed image. Possible values are "true" or "false". Default is "true".

  NumEigenValues: number of eigenvalues used in the metric: sum(e) - e, where sum(e) is the sum of all eigenvalues and e is the sum of the first highest NumEigenValues eigenvalues.

Definition at line 65 of file elxPCAMetric.h.

Inheritance diagram for elastix::PCAMetric< TElastix >:
[legend]

## Public Types

using | BSplineTransformBaseType = itk::AdvancedBSplineDeformableTransformBase<ScalarType, FixedImageDimension>
using | CombinationTransformType = itk::AdvancedCombinationTransform<ScalarType, FixedImageDimension>
using | ConstPointer = itk::SmartPointer<const Self>
using | ITKBaseType = typename Superclass2::ITKBaseType
using | Pointer = itk::SmartPointer<Self>
using | ReducedDimensionBSplineTransformBaseType
using | Self = PCAMetric
using | StackTransformType = itk::StackTransform<ScalarType, FixedImageDimension, MovingImageDimension>
using | Superclass1
using | Superclass2 = MetricBase<TElastix>
Public Types inherited from itk::PCAMetric< TFixedImage, TMovingImage >
using | ConstPointer = SmartPointer<const Self>
using | DerivativeMatrixType = vnl_matrix<DerivativeValueType>
using | DerivativeValueType
using | FixedImageLimiterOutputType
using | FixedImageLimiterType
using | FixedImageMaskPointer
using | FixedImageMaskType
using | FixedImagePixelType
using | FixedImageSizeType = typename FixedImageRegionType::SizeType
using | ImageSampleContainerPointer
using | ImageSampleContainerType
using | ImageSamplerPointer
using | ImageSamplerType
using | MatrixType = vnl_matrix<RealType>
using | MovingImageDerivativeScalesType
using | MovingImageLimiterOutputType
using | MovingImageLimiterType
using | MovingImageMaskPointer
using | MovingImageMaskType
using | MovingImageRegionType
using | Pointer = SmartPointer<Self>
using | Self = PCAMetric
using | Superclass = AdvancedImageToImageMetric<TFixedImage, TMovingImage>
using | ThreadInfoType
Public Types inherited from itk::AdvancedImageToImageMetric< TFixedImage, TMovingImage >
using | AdvancedTransformType = AdvancedTransform<ScalarType, FixedImageDimension, MovingImageDimension>
using | BSplineOrder1TransformPointer = typename BSplineOrder1TransformType::Pointer
using | BSplineOrder1TransformType = AdvancedBSplineDeformableTransform<ScalarType, FixedImageDimension, 1>
using | BSplineOrder2TransformPointer = typename BSplineOrder2TransformType::Pointer
using | BSplineOrder2TransformType = AdvancedBSplineDeformableTransform<ScalarType, FixedImageDimension, 2>
using | BSplineOrder3TransformPointer = typename BSplineOrder3TransformType::Pointer
using | BSplineOrder3TransformType = AdvancedBSplineDeformableTransform<ScalarType, FixedImageDimension, 3>
using | CombinationTransformType = AdvancedCombinationTransform<ScalarType, FixedImageDimension>
using | ConstPointer = SmartPointer<const Self>
using | DerivativeValueType = typename DerivativeType::ValueType
using | FixedImageLimiterOutputType = typename FixedImageLimiterType::OutputType
using | FixedImageLimiterPointer = typename FixedImageLimiterType::Pointer
using | FixedImageLimiterType = LimiterFunctionBase<RealType, FixedImageDimension>
using | FixedImageMaskConstPointer = SmartPointer<const FixedImageMaskType>
using | FixedImageMaskPointer = SmartPointer<FixedImageMaskType>
using | FixedImageMaskType = ImageMaskSpatialObject<Self::FixedImageDimension>
using | FixedImagePixelType = typename FixedImageType::PixelType
using | FixedImagePointer = typename FixedImageType::Pointer
using | ImageSampleContainerPointer = typename ImageSamplerType::OutputVectorContainerPointer
using | ImageSampleContainerType = typename ImageSamplerType::OutputVectorContainerType
using | ImageSamplerPointer = typename ImageSamplerType::Pointer
using | ImageSamplerType = ImageSamplerBase<FixedImageType>
using | MovingImageDerivativeScalesType = FixedArray<double, Self::MovingImageDimension>
using | MovingImageLimiterOutputType = typename MovingImageLimiterType::OutputType
using | MovingImageLimiterPointer = typename MovingImageLimiterType::Pointer
using | MovingImageLimiterType = LimiterFunctionBase<RealType, MovingImageDimension>
using | MovingImageMaskConstPointer = SmartPointer<const MovingImageMaskType>
using | MovingImageMaskPointer = SmartPointer<MovingImageMaskType>
using | MovingImageMaskType = ImageMaskSpatialObject<Self::MovingImageDimension>
using | MovingImagePointer = typename MovingImageType::Pointer
using | MovingImageRegionType = typename MovingImageType::RegionType
using | NumberOfParametersType = typename AdvancedTransformType::NumberOfParametersType
using | Pointer = SmartPointer<Self>
using | ScalarType = typename TransformType::ScalarType
using | Self = AdvancedImageToImageMetric
using | Superclass = ImageToImageMetric<TFixedImage, TMovingImage>
using | ThreadInfoType = MultiThreaderBase::WorkUnitInfo
Public Types inherited from elastix::MetricBase< TElastix >
using | AdvancedMetricType = itk::AdvancedImageToImageMetric<FixedImageType, MovingImageType>
using | CoordinateRepresentationType = typename ITKBaseType::ParametersValueType
using | ElastixType
using | FixedImageType = typename ElastixType::FixedImageType
using | FixedPointSetType
using | FixedPointType = typename FixedImageType::PointType
using | FixedPointValueType = typename FixedPointType::ValueType
using | ImageSamplerBaseType = typename AdvancedMetricType::ImageSamplerType
using | ITKBaseType = itk::SingleValuedCostFunction
using | MeasureType = typename ITKBaseType::MeasureType
using | MovingImageDerivativeScalesType = typename AdvancedMetricType::MovingImageDerivativeScalesType
using | MovingImageType = typename ElastixType::MovingImageType
using | MovingPointSetType
using | MovingPointType = typename MovingImageType::PointType
using | MovingPointValueType = typename MovingPointType::ValueType
using | RegistrationType
using | Self = MetricBase
using | Superclass = BaseComponentSE<TElastix>
Public Types inherited from elastix::BaseComponentSE< TElastix >
using | ElastixType = TElastix
using | RegistrationType = typename ElastixType::RegistrationBaseType
using | Self = BaseComponentSE
using | Superclass = BaseComponent

## Public Member Functions

void | BeforeEachResolution () override
void | BeforeRegistration () override
| elxClassNameMacro ("PCAMetric")
virtual const char * | GetClassName () const
void | Initialize () override
| ITK_DISALLOW_COPY_AND_MOVE (PCAMetric)
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
| itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
Public Member Functions inherited from itk::PCAMetric< TFixedImage, TMovingImage >
void | GetDerivative (const TransformParametersType &parameters, DerivativeType &derivative) const override
MeasureType | GetValue (const TransformParametersType &parameters) const override
void | GetValueAndDerivative (const TransformParametersType &parameters, MeasureType &Value, DerivativeType &Derivative) const override
void | GetValueAndDerivativeSingleThreaded (const TransformParametersType &parameters, MeasureType &Value, DerivativeType &Derivative) const
void | Initialize () override
| ITK_DISALLOW_COPY_AND_MOVE (PCAMetric)
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
| itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
virtual void | SetGridSize (FixedImageSizeType _arg)
virtual void | SetNumEigenValues (unsigned int _arg)
virtual void | SetTransformIsStackTransform (bool _arg)
virtual void | SetUseZeroAverageDisplacementConstraint (bool _arg)
Public Member Functions inherited from itk::AdvancedImageToImageMetric< TFixedImage, TMovingImage >
virtual void | BeforeThreadedGetValueAndDerivative (const TransformParametersType &parameters) const
virtual const FixedImageLimiterType * | GetFixedImageLimiter ()
const FixedImageMaskType * | GetFixedImageMask () const override
virtual double | GetFixedLimitRangeRatio () const
ImageSamplerType * | GetImageSampler () const
virtual const MovingImageDerivativeScalesType & | GetMovingImageDerivativeScales ()
virtual const MovingImageLimiterType * | GetMovingImageLimiter ()
const MovingImageMaskType * | GetMovingImageMask () const override
virtual double | GetMovingLimitRangeRatio () const
virtual double | GetRequiredRatioOfValidSamples () const
virtual bool | GetScaleGradientWithRespectToMovingImageOrientation () const
const AdvancedTransformType * | GetTransform () const override
AdvancedTransformType * | GetTransform () override
virtual bool | GetUseFixedImageLimiter () const
virtual bool | GetUseImageSampler () const
virtual const bool & | GetUseMetricSingleThreaded ()
virtual bool | GetUseMovingImageDerivativeScales () const
virtual bool | GetUseMovingImageLimiter () const
virtual const bool & | GetUseMultiThread ()
void | Initialize () override
| ITK_DISALLOW_COPY_AND_MOVE (AdvancedImageToImageMetric)
| itkStaticConstMacro (FixedImageDimension, unsigned int, TFixedImage::ImageDimension)
| itkStaticConstMacro (MovingImageDimension, unsigned int, TMovingImage::ImageDimension)
virtual void | SetFixedImageLimiter (FixedImageLimiterType *_arg)
virtual void | SetFixedImageMask (const FixedImageMaskType *const arg)
virtual void | SetFixedLimitRangeRatio (double _arg)
virtual void | SetImageSampler (ImageSamplerType *_arg)
virtual void | SetMovingImageDerivativeScales (MovingImageDerivativeScalesType _arg)
virtual void | SetMovingImageLimiter (MovingImageLimiterType *_arg)
virtual void | SetMovingImageMask (const MovingImageMaskType *const arg)
virtual void | SetMovingLimitRangeRatio (double _arg)
virtual void | SetRequiredRatioOfValidSamples (double _arg)
virtual void | SetScaleGradientWithRespectToMovingImageOrientation (bool _arg)
virtual void | SetTransform (AdvancedTransformType *arg)
virtual void | SetUseMetricSingleThreaded (bool _arg)
virtual void | SetUseMovingImageDerivativeScales (bool _arg)
virtual void | SetUseMultiThread (bool _arg)
virtual void | UseMetricSingleThreadedOff ()
virtual void | UseMetricSingleThreadedOn ()
virtual void | UseMultiThreadOff ()
virtual void | UseMultiThreadOn ()
Public Member Functions inherited from elastix::MetricBase< TElastix >
void | AfterEachIterationBase () override
void | BeforeEachResolutionBase () override
virtual ImageSamplerBaseType * | GetAdvancedMetricImageSampler () const
virtual bool | GetAdvancedMetricUseImageSampler () const
ITKBaseType * | GetAsITKBaseType ()
const ITKBaseType * | GetAsITKBaseType () const
virtual MeasureType | GetCurrentExactMetricValue () const
virtual bool | GetShowExactMetricValue () const
| ITK_DISALLOW_COPY_AND_MOVE (MetricBase)
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
| itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
virtual void | SelectNewSamples ()
virtual void | SetAdvancedMetricImageSampler (ImageSamplerBaseType *sampler)
Public Member Functions inherited from elastix::BaseComponentSE< TElastix >
void | AddTargetCellToIterationInfo (const char *const name)
const Configuration * | GetConfiguration () const
ElastixType * | GetElastix () const
auto & | GetIterationInfoAt (const char *const name)
RegistrationType * | GetRegistration () const
| ITK_DISALLOW_COPY_AND_MOVE (BaseComponentSE)
void | RemoveTargetCellFromIterationInfo (const char *const name)
void | SetConfiguration (const Configuration *_arg)
void | SetElastix (ElastixType *_arg)
Public Member Functions inherited from elastix::BaseComponent
virtual void | AfterEachIteration ()
virtual void | AfterEachResolution ()
virtual void | AfterEachResolutionBase ()
virtual void | AfterRegistration ()
virtual void | AfterRegistrationBase ()
virtual int | BeforeAll ()
virtual int | BeforeAllBase ()
virtual void | BeforeRegistrationBase ()
virtual const char * | elxGetClassName () const
const char * | GetComponentLabel () const
| ITK_DISALLOW_COPY_AND_MOVE (BaseComponent)
| itkTypeMacroNoParent (BaseComponent)
void | SetComponentLabel (const char *label, unsigned int idx)

## Static Public Member Functions

static Pointer | New ()
Static Public Member Functions inherited from itk::PCAMetric< TFixedImage, TMovingImage >
static Pointer | New ()
Static Public Member Functions inherited from elastix::BaseComponent
template<typename TBaseComponent>
static auto | AsITKBaseType (TBaseComponent *const baseComponent) -> decltype(baseComponent->GetAsITKBaseType())
static void | InitializeElastixExecutable ()
static bool | IsElastixLibrary ()

## Protected Member Functions

| PCAMetric ()=default
| ~PCAMetric () override=default
Protected Member Functions inherited from itk::PCAMetric< TFixedImage, TMovingImage >
void | AfterThreadedComputeDerivative (DerivativeType &derivative) const
void | AfterThreadedGetSamples (MeasureType &value) const
void | EvaluateTransformJacobianInnerProduct (const TransformJacobianType &jacobian, const MovingImageDerivativeType &movingImageDerivative, DerivativeType &imageJacobian) const override
void | InitializeThreadingParameters () const override
void | LaunchComputeDerivativeThreaderCallback () const
void | LaunchGetSamplesThreaderCallback () const
| PCAMetric ()
void | PrintSelf (std::ostream &os, Indent indent) const override
void | ThreadedComputeDerivative (ThreadIdType threadID)
void | ThreadedGetSamples (ThreadIdType threadID)
| ~PCAMetric () override=default
Protected Member Functions inherited from itk::AdvancedImageToImageMetric< TFixedImage, TMovingImage >
| AdvancedImageToImageMetric ()
virtual void | AfterThreadedGetValue (MeasureType &) const
virtual void | AfterThreadedGetValueAndDerivative (MeasureType &, DerivativeType &) const
void | CheckForAdvancedTransform ()
void | CheckForBSplineInterpolator ()
void | CheckForBSplineTransform () const
void | CheckNumberOfSamples (unsigned long wanted, unsigned long found) const
virtual bool | EvaluateMovingImageValueAndDerivative (const MovingImagePointType &mappedPoint, RealType &movingImageValue, MovingImageDerivativeType *gradient) const
bool | EvaluateTransformJacobian (const FixedImagePointType &fixedImagePoint, TransformJacobianType &jacobian, NonZeroJacobianIndicesType &nzji) const
bool | FastEvaluateMovingImageValueAndDerivative (const MovingImagePointType &mappedPoint, RealType &movingImageValue, MovingImageDerivativeType *gradient, const ThreadIdType threadId) const
virtual void | InitializeImageSampler ()
void | InitializeLimiters ()
virtual bool | IsInsideMovingMask (const MovingImagePointType &point) const
| itkAlignedTypedef (ITK_CACHE_LINE_ALIGNMENT, PaddedGetValueAndDerivativePerThreadStruct, AlignedGetValueAndDerivativePerThreadStruct)
| itkPadStruct (ITK_CACHE_LINE_ALIGNMENT, GetValueAndDerivativePerThreadStruct, PaddedGetValueAndDerivativePerThreadStruct)
void | LaunchGetValueAndDerivativeThreaderCallback () const
void | LaunchGetValueThreaderCallback () const
void | PrintSelf (std::ostream &os, Indent indent) const override
void | SetFixedImageMask (const typename Superclass::FixedImageMaskType *) final
void | SetFixedImageMask (typename Superclass::FixedImageMaskType *) final
void | SetMovingImageMask (const typename Superclass::MovingImageMaskType *) final
void | SetMovingImageMask (typename Superclass::MovingImageMaskType *) final
virtual void | SetUseFixedImageLimiter (bool _arg)
virtual void | SetUseImageSampler (bool _arg)
virtual void | SetUseMovingImageLimiter (bool _arg)
virtual void | ThreadedGetValue (ThreadIdType) const
virtual void | ThreadedGetValueAndDerivative (ThreadIdType) const
MovingImagePointType | TransformPoint (const FixedImagePointType &fixedImagePoint) const
| ~AdvancedImageToImageMetric () override=default
Protected Member Functions inherited from elastix::MetricBase< TElastix >
virtual MeasureType | GetExactValue (const ParametersType &parameters)
| MetricBase ()=default
| ~MetricBase () override=default
Protected Member Functions inherited from elastix::BaseComponentSE< TElastix >
| BaseComponentSE ()=default
| ~BaseComponentSE () override=default
Protected Member Functions inherited from elastix::BaseComponent
| BaseComponent ()=default
virtual | ~BaseComponent ()=default

## Private Attributes

| elxOverrideGetSelfMacro

## Additional Inherited Members

Protected Types inherited from itk::PCAMetric< TFixedImage, TMovingImage >
using | BSplineInterpolatorType
using | FixedImageContinuousIndexType
using | FixedImageIndexType
using | FixedImageIndexValueType
using | FixedImagePointType
using | MovingImageContinuousIndexType
using | MovingImageDerivativeType
using | MovingImageIndexType
using | MovingImagePointType
using | NonZeroJacobianIndicesType
Protected Types inherited from itk::AdvancedImageToImageMetric< TFixedImage, TMovingImage >
using | BSplineInterpolatorFloatPointer = typename BSplineInterpolatorFloatType::Pointer
using | BSplineInterpolatorFloatType
using | BSplineInterpolatorPointer = typename BSplineInterpolatorType::Pointer
using | BSplineInterpolatorType
using | FixedImageIndexType = typename FixedImageType::IndexType
using | FixedImageIndexValueType = typename FixedImageIndexType::IndexValueType
using | FixedImagePointType = typename TransformType::InputPointType
using | LinearInterpolatorPointer = typename LinearInterpolatorType::Pointer
using | LinearInterpolatorType = AdvancedLinearInterpolateImageFunction<MovingImageType, CoordinateRepresentationType>
using | MovingImageContinuousIndexType = typename InterpolatorType::ContinuousIndexType
using | MovingImageDerivativeType = typename BSplineInterpolatorType::CovariantVectorType
using | MovingImageIndexType = typename MovingImageType::IndexType
using | MovingImagePointType = typename TransformType::OutputPointType
using | NonZeroJacobianIndicesType = typename AdvancedTransformType::NonZeroJacobianIndicesType
using | ReducedBSplineInterpolatorPointer = typename ReducedBSplineInterpolatorType::Pointer
using | ReducedBSplineInterpolatorType
Protected Types inherited from elastix::MetricBase< TElastix >
using | ExactMetricImageSamplerPointer = typename ExactMetricImageSamplerType::Pointer
using | ExactMetricImageSamplerType = itk::ImageGridSampler<FixedImageType>
using | ExactMetricSampleGridSpacingType = typename ExactMetricImageSamplerType::SampleGridSpacingType
using | ParametersType = typename ITKBaseType::ParametersType
Static Protected Member Functions inherited from itk::PCAMetric< TFixedImage, TMovingImage >
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ComputeDerivativeThreaderCallback (void *arg)
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | GetSamplesThreaderCallback (void *arg)
Static Protected Member Functions inherited from itk::AdvancedImageToImageMetric< TFixedImage, TMovingImage >
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | AccumulateDerivativesThreaderCallback (void *arg)
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | GetValueAndDerivativeThreaderCallback (void *arg)
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | GetValueThreaderCallback (void *arg)
Protected Attributes inherited from itk::AdvancedImageToImageMetric< TFixedImage, TMovingImage >
AdvancedTransformType::Pointer | m_AdvancedTransform { nullptr }
FixedImageLimiterOutputType | m_FixedImageMaxLimit { 1 }
FixedImageLimiterOutputType | m_FixedImageMinLimit { 0 }
FixedImagePixelType | m_FixedImageTrueMax { 1 }
FixedImagePixelType | m_FixedImageTrueMin { 0 }
double | m_FixedLimitRangeRatio { 0.01 }
std::unique_ptr< AlignedGetValueAndDerivativePerThreadStruct[]> | m_GetValueAndDerivativePerThreadVariables
ThreadIdType | m_GetValueAndDerivativePerThreadVariablesSize { 0 }
ImageSamplerPointer | m_ImageSampler { nullptr }
MovingImageLimiterOutputType | m_MovingImageMaxLimit { 1 }
MovingImageLimiterOutputType | m_MovingImageMinLimit { 0 }
MovingImagePixelType | m_MovingImageTrueMax { 1 }
MovingImagePixelType | m_MovingImageTrueMin { 0 }
double | m_MovingLimitRangeRatio { 0.01 }
MultiThreaderParameterType | m_ThreaderMetricParameters {}
bool | m_TransformIsBSpline { false }
bool | m_UseMetricSingleThreaded { true }
bool | m_UseMultiThread { false }
Protected Attributes inherited from elastix::MetricBase< TElastix >
MeasureType | m_CurrentExactMetricValue { 0.0 }
unsigned int | m_ExactMetricEachXNumberOfIterations { 1 }
ExactMetricSampleGridSpacingType | m_ExactMetricSampleGridSpacing
ExactMetricImageSamplerPointer | m_ExactMetricSampler { nullptr }
bool | m_ShowExactMetricValue { false }
Protected Attributes inherited from elastix::BaseComponentSE< TElastix >
Configuration::ConstPointer | m_Configuration {}
itk::WeakPointer< TElastix > | m_Elastix {}
RegistrationType * | m_Registration {}

## Member Typedef Documentation

## BSplineTransformBaseType

template<class TElastix>

using elastix::PCAMetric< TElastix >::BSplineTransformBaseType = itk::AdvancedBSplineDeformableTransformBase<ScalarType, FixedImageDimension>

Typedef's for the B-spline transform.

Definition at line 145 of file elxPCAMetric.h.

## CombinationTransformType

template<class TElastix>

using elastix::PCAMetric< TElastix >::CombinationTransformType = itk::AdvancedCombinationTransform<ScalarType, FixedImageDimension>

Definition at line 146 of file elxPCAMetric.h.

## ConstPointer

template<class TElastix>

using elastix::PCAMetric< TElastix >::ConstPointer = itk::SmartPointer<const Self>

Definition at line 78 of file elxPCAMetric.h.

## ITKBaseType

template<class TElastix>

using elastix::PCAMetric< TElastix >::ITKBaseType = typename Superclass2::ITKBaseType

Definition at line 142 of file elxPCAMetric.h.

## Pointer

template<class TElastix>

using elastix::PCAMetric< TElastix >::Pointer = itk::SmartPointer<Self>

Definition at line 77 of file elxPCAMetric.h.

## ReducedDimensionBSplineTransformBaseType

template<class TElastix>

using elastix::PCAMetric< TElastix >::ReducedDimensionBSplineTransformBaseType

Initial value:
itk::AdvancedBSplineDeformableTransformBase<ScalarType, FixedImageDimension - 1>
itk::AdvancedBSplineDeformableTransformBase
Base class for deformable transform using a B-spline representation.
Definition itkAdvancedBSplineDeformableTransformBase.h:43
itk::AdvancedImageToImageMetric::ScalarType
typename TransformType::ScalarType ScalarType
Definition itkAdvancedImageToImageMetric.h:156

Definition at line 148 of file elxPCAMetric.h.

## Self

template<class TElastix>

using elastix::PCAMetric< TElastix >::Self = PCAMetric

Standard ITK-stuff.

Definition at line 73 of file elxPCAMetric.h.

## StackTransformType

template<class TElastix>

using elastix::PCAMetric< TElastix >::StackTransformType = itk::StackTransform<ScalarType, FixedImageDimension, MovingImageDimension>

Definition at line 147 of file elxPCAMetric.h.

## Superclass1

template<class TElastix>

using elastix::PCAMetric< TElastix >::Superclass1

Initial value:
itk::PCAMetric<typename MetricBase<TElastix>::FixedImageType, typename MetricBase<TElastix>::MovingImageType>
elastix::MetricBase::MovingImageType
typename ElastixType::MovingImageType MovingImageType
Definition elxMetricBase.h:92
itk::PCAMetric
Definition itkPCAMetric.h:33

Definition at line 74 of file elxPCAMetric.h.

## Superclass2

template<class TElastix>

using elastix::PCAMetric< TElastix >::Superclass2 = MetricBase<TElastix>

Definition at line 76 of file elxPCAMetric.h.

## Constructor & Destructor Documentation

## PCAMetric()

template<class TElastix>

elastix::PCAMetric< TElastix >::PCAMetric | ( |  | ) |

protected default

The constructor.

## ~PCAMetric()

template<class TElastix>

elastix::PCAMetric< TElastix >::~PCAMetric | ( |  | ) |

override protected default

The destructor.

## Member Function Documentation

## BeforeEachResolution()

template<class TElastix>

void elastix::PCAMetric< TElastix >::BeforeEachResolution | ( |  | ) |

override virtual

Do some things before each resolution:

- Set CheckNumberOfSamples setting
- Set UseNormalization setting

Reimplemented from elastix::BaseComponent.

## BeforeRegistration()

template<class TElastix>

void elastix::PCAMetric< TElastix >::BeforeRegistration | ( |  | ) |

override virtual

Reimplemented from elastix::BaseComponent.

## elxClassNameMacro()

template<class TElastix>

elastix::PCAMetric< TElastix >::elxClassNameMacro | ( | "PCAMetric< TElastix >" |  | ) |

Name of this class. Use this name in the parameter file to select this specific metric.
example: (Metric "PCAMetric")

## GetClassName()

template<class TElastix>

virtual const char * elastix::PCAMetric< TElastix >::GetClassName | ( |  | ) | const

virtual

Run-time type information (and related methods).

Reimplemented from itk::PCAMetric< TFixedImage, TMovingImage >.

## Initialize()

template<class TElastix>

void elastix::PCAMetric< TElastix >::Initialize | ( |  | ) |

override

Sets up a timer to measure the initialization time and calls the Superclass' implementation.

## ITK_DISALLOW_COPY_AND_MOVE()

template<class TElastix>

elastix::PCAMetric< TElastix >::ITK_DISALLOW_COPY_AND_MOVE | ( | PCAMetric< TElastix > |  | ) |

## itkStaticConstMacro() [1/2]

template<class TElastix>

elastix::PCAMetric< TElastix >::itkStaticConstMacro | ( | FixedImageDimension | ,
|  | unsigned int | ,
|  | FixedImageType::ImageDimension | )

The fixed image dimension.

## itkStaticConstMacro() [2/2]

template<class TElastix>

elastix::PCAMetric< TElastix >::itkStaticConstMacro | ( | MovingImageDimension | ,
|  | unsigned int | ,
|  | MovingImageType::ImageDimension | )

The moving image dimension.

## New()

template<class TElastix>

Pointer elastix::PCAMetric< TElastix >::New | ( |  | ) |

static

Method for creation through the object factory.

## Field Documentation

## elxOverrideGetSelfMacro

template<class TElastix>

elastix::PCAMetric< TElastix >::elxOverrideGetSelfMacro

private

Definition at line 175 of file elxPCAMetric.h.

Generated on 1768596610 for elastix by 1.15.0 |