18#ifndef elxMetricBase_h
19#define elxMetricBase_h
27#include "itkPointSet.h"
71template <
class TElastix>
117 MovingImageDimension,
119 MovingImageDimension,
120 MovingImageDimension,
135 return &(this->GetSelf());
143 return &(this->GetSelf());
190 return this->m_ShowExactMetricValue;
197 return this->m_CurrentExactMetricValue;
228 bool m_ShowExactMetricValue{
false };
233 unsigned int m_ExactMetricEachXNumberOfIterations{ 1 };
241#ifndef ITK_MANUAL_INSTANTIATION
242# include "elxMetricBase.hxx"
The BaseComponentSE class is a base class for elastix components that provides some basic functionali...
typename ElastixType::RegistrationBaseType RegistrationType
This class is the elastix base class for all Metrics.
virtual bool GetShowExactMetricValue() const
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
typename FixedImageType::PointType FixedPointType
typename FixedPointType::ValueType FixedPointValueType
void AfterEachIterationBase() override
virtual void SelectNewSamples()
virtual void SetAdvancedMetricImageSampler(ImageSamplerBaseType *sampler)
virtual bool GetAdvancedMetricUseImageSampler() const
itk::SingleValuedCostFunction ITKBaseType
typename ExactMetricImageSamplerType::SampleGridSpacingType ExactMetricSampleGridSpacingType
typename ElastixType::FixedImageType FixedImageType
typename AdvancedMetricType::ImageSamplerType ImageSamplerBaseType
virtual ImageSamplerBaseType * GetAdvancedMetricImageSampler() const
ITKBaseType * GetAsITKBaseType()
~MetricBase() override=default
itk::PointSet< CoordinateRepresentationType, FixedImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, FixedImageDimension, FixedImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > FixedPointSetType
virtual MeasureType GetExactValue(const ParametersType ¶meters)
ITK_DISALLOW_COPY_AND_MOVE(MetricBase)
elxDeclarePureVirtualGetSelfMacro(ITKBaseType)
virtual MeasureType GetCurrentExactMetricValue() const
const ITKBaseType * GetAsITKBaseType() const
typename ElastixType::MovingImageType MovingImageType
void BeforeEachResolutionBase() override
typename AdvancedMetricType::MovingImageDerivativeScalesType MovingImageDerivativeScalesType
typename MovingImageType::PointType MovingPointType
typename ITKBaseType::ParametersValueType CoordinateRepresentationType
itkStaticConstMacro(MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
typename MovingPointType::ValueType MovingPointValueType
itk::PointSet< CoordinateRepresentationType, MovingImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, MovingImageDimension, MovingImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > MovingPointSetType
typename ITKBaseType::ParametersType ParametersType
typename ExactMetricImageSamplerType::Pointer ExactMetricImageSamplerPointer
typename ITKBaseType::MeasureType MeasureType
An extension of the ITK ImageToImageMetric. It is the intended base class for all elastix metrics.
Samples image voxels on a regular grid.
typename InputImageType::OffsetType SampleGridSpacingType
This class is a base class for any image sampler.