18#ifndef itkGradientDifferenceImageToImageMetric_h
19#define itkGradientDifferenceImageToImageMetric_h
54template <
typename TFixedImage,
typename TMovingImage>
136 itkSetMacro(DerivativeDelta,
double);
137 itkGetConstReferenceMacro(DerivativeDelta,
double);
198#ifndef ITK_MANUAL_INSTANTIATION
199# include "itkGradientDifferenceImageToImageMetric.hxx"
Casts input pixels to output pixel type.
SmartPointer< Self > Pointer
CastMovedImageFilterPointer m_CastMovedImageFilter
GradientDifferenceImageToImageMetric Self
CastFixedImageFilterPointer m_CastFixedImageFilter
SobelOperator< FixedGradientPixelType, Self::FixedImageDimension > m_FixedSobelOperators[FixedImageDimension]
void Initialize() override
ImageToImageMetric< TFixedImage, TMovingImage > Superclass
typename TFixedImage::PixelType FixedImagePixelType
TransformMovingImageFilterType::Pointer m_TransformMovingImageFilter
GradientDifferenceImageToImageMetric()
~GradientDifferenceImageToImageMetric() override=default
typename TMovingImage::PixelType MovedImagePixelType
MovedGradientPixelType m_Variance[FixedImageDimension]
typename CastFixedImageFilterType::Pointer CastFixedImageFilterPointer
FixedGradientPixelType m_MaxFixedGradient[FixedImageDimension]
typename TransformType::ParametersType TransformParametersType
itk::CastImageFilter< TransformedMovingImageType, MovedGradientImageType > CastMovedImageFilterType
NeighborhoodOperatorImageFilter< FixedGradientImageType, FixedGradientImageType > FixedSobelFilter
MovedGradientPixelType m_MinMovedGradient[MovedImageDimension]
void PrintSelf(std::ostream &os, Indent indent) const override
MovedGradientPixelType m_MaxMovedGradient[MovedImageDimension]
ZeroFluxNeumannBoundaryCondition< FixedGradientImageType > m_FixedBoundCond
SmartPointer< const Self > ConstPointer
MovedSobelFilter::Pointer m_MovedSobelFilters[Self::MovedImageDimension]
void ComputeMovedGradientRange() const
SmartPointer< Self > Pointer
typename MovedGradientImageType::PixelType MovedGradientPixelType
FixedGradientPixelType m_MinFixedGradient[FixedImageDimension]
void GetDerivative(const TransformParametersType ¶meters, DerivativeType &derivative) const override
itk::Image< RealType, Self::MovedImageDimension > MovedGradientImageType
MeasureType GetValue(const TransformParametersType ¶meters) const override
NeighborhoodOperatorImageFilter< MovedGradientImageType, MovedGradientImageType > MovedSobelFilter
MeasureType ComputeMeasure(const TransformParametersType ¶meters, const double *subtractionFactor) const
static constexpr unsigned int MovedImageDimension
ZeroFluxNeumannBoundaryCondition< MovedGradientImageType > m_MovedBoundCond
FixedSobelFilter::Pointer m_FixedSobelFilters[Self::FixedImageDimension]
typename CastMovedImageFilterType::Pointer CastMovedImageFilterPointer
SobelOperator< MovedGradientPixelType, Self::MovedImageDimension > m_MovedSobelOperators[MovedImageDimension]
static constexpr unsigned int FixedImageDimension
typename FixedGradientImageType::PixelType FixedGradientPixelType
void ComputeVariance() const
itk::CastImageFilter< FixedImageType, FixedGradientImageType > CastFixedImageFilterType
itk::Image< RealType, Self::FixedImageDimension > FixedGradientImageType
itk::ResampleImageFilter< MovingImageType, TransformedMovingImageType > TransformMovingImageFilterType
void GetValueAndDerivative(const TransformParametersType ¶meters, MeasureType &Value, DerivativeType &Derivative) const override
itk::Image< FixedImagePixelType, Self::FixedImageDimension > TransformedMovingImageType
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
Transform< CoordinateRepresentationType, Self::MovingImageDimension, Self::FixedImageDimension > TransformType
TMovingImage MovingImageType
typename TransformType::JacobianType TransformJacobianType
Templated n-dimensional image class.
Control indentation during Print() invocation.
Applies a single NeighborhoodOperator to an image region.
SmartPointer< Self > Pointer
Resample an image via a coordinate transform.
SmartPointer< Self > Pointer
Implements transparent reference counting.
A NeighborhoodOperator for performing a directional Sobel edge-detection operation at a pixel locatio...
A function object that determines a neighborhood of values at an image boundary according to a Neuman...
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....