#include <elxPCAMetric2.h>
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:
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 elxPCAMetric2.h.
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::PCAMetric2< 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 | |
PCAMetric2 ()=default | |
~PCAMetric2 () override=default | |
Protected Member Functions inherited from itk::PCAMetric2< TFixedImage, TMovingImage > | |
void | EvaluateTransformJacobianInnerProduct (const TransformJacobianType &jacobian, const MovingImageDerivativeType &movingImageDerivative, DerivativeType &imageJacobian) const override |
PCAMetric2 () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
~PCAMetric2 () 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 void | InitializeThreadingParameters () const |
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 ¶meters) |
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 | |
using elastix::PCAMetric2< TElastix >::BSplineTransformBaseType = itk::AdvancedBSplineDeformableTransformBase<ScalarType, FixedImageDimension> |
Typedef's for the B-spline transform.
Definition at line 146 of file elxPCAMetric2.h.
using elastix::PCAMetric2< TElastix >::CombinationTransformType = itk::AdvancedCombinationTransform<ScalarType, FixedImageDimension> |
Definition at line 147 of file elxPCAMetric2.h.
using elastix::PCAMetric2< TElastix >::ConstPointer = itk::SmartPointer<const Self> |
Definition at line 79 of file elxPCAMetric2.h.
using itk::PCAMetric2< TFixedImage, TMovingImage >::FixedImageSizeType |
Definition at line 43 of file itkPCAMetric2.h.
using elastix::PCAMetric2< TElastix >::ITKBaseType = typename Superclass2::ITKBaseType |
Definition at line 143 of file elxPCAMetric2.h.
using elastix::PCAMetric2< TElastix >::Pointer = itk::SmartPointer<Self> |
Definition at line 78 of file elxPCAMetric2.h.
using elastix::PCAMetric2< TElastix >::ReducedDimensionBSplineTransformBaseType |
Definition at line 149 of file elxPCAMetric2.h.
using elastix::PCAMetric2< TElastix >::Self = PCAMetric2 |
Standard ITK-stuff.
Definition at line 74 of file elxPCAMetric2.h.
using elastix::PCAMetric2< TElastix >::StackTransformType = itk::StackTransform<ScalarType, FixedImageDimension, MovingImageDimension> |
Definition at line 148 of file elxPCAMetric2.h.
using elastix::PCAMetric2< TElastix >::Superclass1 |
Definition at line 75 of file elxPCAMetric2.h.
using elastix::PCAMetric2< TElastix >::Superclass2 = MetricBase<TElastix> |
Definition at line 77 of file elxPCAMetric2.h.
|
protecteddefault |
The constructor.
|
overrideprotecteddefault |
The destructor.
|
overridevirtual |
Do some things before each resolution:
Reimplemented from elastix::BaseComponent.
|
overridevirtual |
Reimplemented from elastix::BaseComponent.
elastix::PCAMetric2< TElastix >::elxClassNameMacro | ( | "PCAMetric2< TElastix >" | ) |
Name of this class. Use this name in the parameter file to select this specific metric.
example: (Metric "PCAMetric2")
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::PCAMetric2< TFixedImage, TMovingImage >.
|
override |
Sets up a timer to measure the initialization time and calls the Superclass' implementation.
elastix::PCAMetric2< TElastix >::ITK_DISALLOW_COPY_AND_MOVE | ( | PCAMetric2< TElastix > | ) |
elastix::PCAMetric2< TElastix >::itkStaticConstMacro | ( | FixedImageDimension | , |
unsigned int | , | ||
FixedImageType::ImageDimension | ) |
The fixed image dimension.
elastix::PCAMetric2< TElastix >::itkStaticConstMacro | ( | MovingImageDimension | , |
unsigned int | , | ||
MovingImageType::ImageDimension | ) |
The moving image dimension.
|
static |
Method for creation through the object factory.
|
private |
Definition at line 176 of file elxPCAMetric2.h.
Generated on 2024-07-17 for elastix by 1.11.0 (9b424b03c9833626cd435af22a444888fbbb192d) |