18#ifndef itkHistogramImageToImageMetric_h
19#define itkHistogramImageToImageMetric_h
38template <
typename TFixedImage,
typename TMovingImage>
98 itkSetMacro(UpperBoundIncreaseFactor,
double);
99 itkGetConstMacro(UpperBoundIncreaseFactor,
double);
116 itkSetMacro(UsePaddingValue,
bool);
117 itkGetConstMacro(UsePaddingValue,
bool);
121 itkSetMacro(DerivativeStepLength,
double);
124 itkGetConstMacro(DerivativeStepLength,
double);
133 itkGetConstReferenceMacro(DerivativeStepLengthScales,
ScalesType);
205 unsigned int parameter,
243#ifndef ITK_MANUAL_INSTANTIATION
244# include "itkHistogramImageToImageMetric.hxx"
Array class with size defined at construction time.
HistogramImageToImageMetric()
void SetTransform(TransformType *transform) override
void ComputeHistogram(const TransformParametersType ¶meters, unsigned int parameter, double step, HistogramType &histogram) const
double m_UpperBoundIncreaseFactor
SmartPointer< const Self > ConstPointer
const MeasurementVectorType & GetLowerBound() const
bool m_UpperBoundSetByUser
typename Superclass::MovingImageConstPointer MovingImageConstPointerType
bool m_LowerBoundSetByUser
const MeasurementVectorType & GetUpperBound() const
Array< double > ScalesType
ScalesType m_DerivativeStepLengthScales
typename HistogramType::SizeType HistogramSizeType
typename TransformType::ParametersType TransformParametersType
MeasurementVectorType m_UpperBound
void SetLowerBound(const MeasurementVectorType &bounds)
HistogramPointer m_Histogram
void GetValueAndDerivative(const TransformParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const override
void ComputeHistogram(const TransformParametersType ¶meters, HistogramType &histogram) const
ImageToImageMetric< TFixedImage, TMovingImage > Superclass
double m_DerivativeStepLength
~HistogramImageToImageMetric() override=default
virtual MeasureType EvaluateMeasure(HistogramType &histogram) const =0
void SetUpperBound(const MeasurementVectorType &bounds)
void Initialize() override
typename Superclass::MovingImageType::PixelType MovingImagePixelType
HistogramImageToImageMetric Self
typename Superclass::FixedImageConstPointer FixedImageConstPointerType
typename Superclass::FixedImageType::PixelType FixedImagePixelType
Statistics::Histogram< double > HistogramType
Transform< CoordinateRepresentationType, Self::MovingImageDimension, Self::FixedImageDimension > TransformType
HistogramSizeType m_HistogramSize
typename HistogramType::Pointer HistogramPointer
FixedImagePixelType m_PaddingValue
void CopyHistogram(HistogramType &target, HistogramType &source) const
MeasurementVectorType m_LowerBound
SmartPointer< Self > Pointer
MeasureType GetValue(const TransformParametersType ¶meters) const override
void GetDerivative(const TransformParametersType ¶meters, DerivativeType &derivative) const override
typename HistogramType::MeasurementVectorType MeasurementVectorType
void PrintSelf(std::ostream &os, Indent indent) const override
typename FixedImageType::ConstPointer FixedImageConstPointer
typename NumericTraits< MovingImagePixelType >::RealType RealType
typename TransformType::Pointer TransformPointer
Array< ParametersValueType > DerivativeType
typename MovingImageType::ConstPointer MovingImageConstPointer
TFixedImage FixedImageType
typename TransformType::ParametersType TransformParametersType
CovariantVector< RealType, Self::MovingImageDimension > GradientPixelType
Transform< CoordinateRepresentationType, Self::MovingImageDimension, Self::FixedImageDimension > TransformType
TMovingImage MovingImageType
typename TransformType::OutputPointType OutputPointType
typename TransformType::JacobianType TransformJacobianType
typename TransformType::InputPointType InputPointType
Control indentation during Print() invocation.
Implements transparent reference counting.
This class stores measurement vectors in the context of n-dimensional histogram.
Array< itk::SizeValueType > SizeType
ArrayType MeasurementVectorType
SmartPointer< Self > Pointer
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....