18#ifndef elxMetricBase_h
19#define elxMetricBase_h
27#include "itkPointSet.h"
71template <
class TElastix>
117 MovingImageDimension,
119 MovingImageDimension,
120 MovingImageDimension,
241#ifndef ITK_MANUAL_INSTANTIATION
242# include "elxMetricBase.hxx"
BaseComponentSE()=default
typename ElastixType::RegistrationBaseType RegistrationType
virtual const itk::Object & GetSelf() const =0
virtual bool GetShowExactMetricValue() const
ExactMetricSampleGridSpacingType m_ExactMetricSampleGridSpacing
bool m_ShowExactMetricValue
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
itk::PointSet< CoordinateRepresentationType, MovingImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, MovingImageDimension, MovingImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > MovingPointSetType
ExactMetricImageSamplerPointer m_ExactMetricSampler
typename FixedImageType::PointType FixedPointType
typename FixedPointType::ValueType FixedPointValueType
void AfterEachIterationBase() override
itk::PointSet< CoordinateRepresentationType, FixedImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, FixedImageDimension, FixedImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > FixedPointSetType
virtual void SelectNewSamples()
virtual void SetAdvancedMetricImageSampler(ImageSamplerBaseType *sampler)
virtual bool GetAdvancedMetricUseImageSampler() const
unsigned int m_ExactMetricEachXNumberOfIterations
itk::SingleValuedCostFunction ITKBaseType
typename ExactMetricImageSamplerType::SampleGridSpacingType ExactMetricSampleGridSpacingType
typename ElastixType::FixedImageType FixedImageType
typename AdvancedMetricType::ImageSamplerType ImageSamplerBaseType
virtual ImageSamplerBaseType * GetAdvancedMetricImageSampler() const
ITKBaseType * GetAsITKBaseType()
~MetricBase() override=default
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
BaseComponentSE< TElastix > Superclass
typename AdvancedMetricType::MovingImageDerivativeScalesType MovingImageDerivativeScalesType
MeasureType m_CurrentExactMetricValue
typename MovingImageType::PointType MovingPointType
typename ITKBaseType::ParametersValueType CoordinateRepresentationType
itkStaticConstMacro(MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
typename MovingPointType::ValueType MovingPointValueType
itk::AdvancedImageToImageMetric< FixedImageType, MovingImageType > AdvancedMetricType
typename ITKBaseType::ParametersType ParametersType
itk::ImageGridSampler< FixedImageType > ExactMetricImageSamplerType
typename ExactMetricImageSamplerType::Pointer ExactMetricImageSamplerPointer
typename ITKBaseType::MeasureType MeasureType
An extension of the ITK ImageToImageMetric. It is the intended base class for all elastix metrics.
FixedArray< double, Self::MovingImageDimension > MovingImageDerivativeScalesType
ImageSamplerBase< FixedImageType > ImageSamplerType
Samples image voxels on a regular grid.
typename InputImageType::OffsetType SampleGridSpacingType
SmartPointer< Self > Pointer