18#ifndef elxGradientDifferenceMetric_h
19#define elxGradientDifferenceMetric_h
36template <
class TElastix>
39 typename MetricBase<TElastix>::MovingImageType>
66 using typename Superclass1::CoordinateRepresentationType;
67 using typename Superclass1::MovingImageType;
68 using typename Superclass1::MovingImagePixelType;
69 using typename Superclass1::MovingImageConstPointer;
70 using typename Superclass1::FixedImageType;
71 using typename Superclass1::FixedImageConstPointer;
72 using typename Superclass1::FixedImageRegionType;
73 using typename Superclass1::TransformType;
74 using typename Superclass1::TransformPointer;
75 using typename Superclass1::InputPointType;
76 using typename Superclass1::OutputPointType;
77 using typename Superclass1::TransformParametersType;
78 using typename Superclass1::TransformJacobianType;
79 using typename Superclass1::InterpolatorType;
81 using typename Superclass1::RealType;
82 using typename Superclass1::GradientPixelType;
83 using typename Superclass1::GradientImageType;
84 using typename Superclass1::GradientImagePointer;
85 using typename Superclass1::GradientImageFilterType;
86 using typename Superclass1::GradientImageFilterPointer;
87 using typename Superclass1::FixedImageMaskType;
88 using typename Superclass1::FixedImageMaskPointer;
89 using typename Superclass1::MovingImageMaskType;
90 using typename Superclass1::MovingImageMaskPointer;
91 using typename Superclass1::MeasureType;
92 using typename Superclass1::DerivativeType;
93 using typename Superclass1::ParametersType;
148#ifndef ITK_MANUAL_INSTANTIATION
149# include "elxGradientDifferenceMetric.hxx"
An metric based on the itk::GradientDifferenceImageToImageMetric.
itkStaticConstMacro(MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
ITK_DISALLOW_COPY_AND_MOVE(GradientDifferenceMetric)
typename Superclass2::ITKBaseType ITKBaseType
GradientDifferenceMetric()=default
~GradientDifferenceMetric() override=default
elxClassNameMacro("GradientDifference")
itk::SmartPointer< Self > Pointer
void BeforeEachResolution() override
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
itk::SmartPointer< const Self > ConstPointer
void BeforeRegistration() override
void Initialize() override
This class is the elastix base class for all Metrics.
itk::SingleValuedCostFunction ITKBaseType
typename ElastixType::MovingImageType MovingImageType
typename ElastixType::RegistrationBaseType RegistrationType
typename ImageSamplerType::OutputVectorContainerPointer ImageSampleContainerPointer
typename ImageSamplerType::OutputVectorContainerType ImageSampleContainerType
typename MovingImageLimiterType::OutputType MovingImageLimiterOutputType
typename FixedImageLimiterType::OutputType FixedImageLimiterOutputType
typename ImageSamplerType::Pointer ImageSamplerPointer
Computes similarity between two objects to be registered.
typename TFixedImage::PixelType FixedImagePixelType
typename InterpolatorType::Pointer InterpolatorPointer
typename MovingImageType::RegionType MovingImageRegionType
This class is a base class for any image sampler.
Base class for all ITK limiter function objects.