18#ifndef itkParzenWindowMutualInformationImageToImageMetric_h
19#define itkParzenWindowMutualInformationImageToImageMetric_h
23#include "itkArray2D.h"
74template <
typename TFixedImage,
typename TMovingImage>
94 using typename Superclass::CoordinateRepresentationType;
95 using typename Superclass::MovingImageType;
96 using typename Superclass::MovingImagePixelType;
97 using typename Superclass::MovingImageConstPointer;
98 using typename Superclass::FixedImageType;
99 using typename Superclass::FixedImageConstPointer;
100 using typename Superclass::FixedImageRegionType;
101 using typename Superclass::TransformType;
102 using typename Superclass::TransformPointer;
103 using typename Superclass::InputPointType;
104 using typename Superclass::OutputPointType;
105 using typename Superclass::TransformJacobianType;
107 using typename Superclass::InterpolatorType;
108 using typename Superclass::InterpolatorPointer;
109 using typename Superclass::RealType;
110 using typename Superclass::GradientPixelType;
111 using typename Superclass::GradientImageType;
112 using typename Superclass::GradientImagePointer;
117 using typename Superclass::MeasureType;
118 using typename Superclass::DerivativeType;
120 using typename Superclass::ParametersType;
142 GetValue(
const ParametersType & parameters)
const override;
145 itkGetConstMacro(UseJacobianPreconditioning,
bool);
146 itkSetMacro(UseJacobianPreconditioning,
bool);
192 DerivativeType & derivative)
const override;
206 DerivativeType & derivative)
const;
216 DerivativeType & derivative)
const override;
222 DerivativeType & preconditioner,
223 DerivativeType & divisor)
const;
245 static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION
271 const RealType movingImageValue,
272 const DerivativeType & imageJacobian,
274 DerivativeType & derivative)
const;
283#ifndef ITK_MANUAL_INSTANTIATION
284# include "itkParzenWindowMutualInformationImageToImageMetric.hxx"
typename AdvancedTransformType::NumberOfParametersType NumberOfParametersType
Array< PDFValueType > ParzenValueContainerType
JointPDFType::SizeType JointPDFSizeType
JointPDFDerivativesType::IndexType JointPDFDerivativesIndexType
typename TransformType::OutputPointType MovingImagePointType
typename ImageSamplerType::OutputVectorContainerPointer ImageSampleContainerPointer
ParzenWindowHistogramImageToImageMetric()
typename MovingImageType::RegionType MovingImageRegionType
typename AdvancedTransformType::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
FixedArray< double, Self::MovingImageDimension > MovingImageDerivativeScalesType
typename FixedImageType::PixelType FixedImagePixelType
typename DerivativeType::ValueType DerivativeValueType
Image< PDFValueType, 2 > IncrementalMarginalPDFType
float PDFDerivativeValueType
typename FixedImageIndexType::IndexValueType FixedImageIndexValueType
typename MovingImageType::IndexType MovingImageIndexType
typename ImageSamplerType::OutputVectorContainerType ImageSampleContainerType
ImageMaskSpatialObject< Self::FixedImageDimension > FixedImageMaskType
JointPDFDerivativesType::SizeType JointPDFDerivativesSizeType
Image< PDFDerivativeValueType, 3 > JointPDFDerivativesType
typename FixedImageType::IndexType FixedImageIndexType
SmartPointer< MovingImageMaskType > MovingImageMaskPointer
LimiterFunctionBase< RealType, FixedImageDimension > FixedImageLimiterType
ImageSamplerBase< FixedImageType > ImageSamplerType
MultiThreaderBase::WorkUnitInfo ThreadInfoType
typename BSplineInterpolatorType::CovariantVectorType MovingImageDerivativeType
Image< PDFValueType, 2 > JointPDFType
JointPDFType::RegionType JointPDFRegionType
JointPDFType::IndexType JointPDFIndexType
LimiterFunctionBase< RealType, MovingImageDimension > MovingImageLimiterType
typename MovingImageLimiterType::OutputType MovingImageLimiterOutputType
typename TransformType::InputPointType FixedImagePointType
typename FixedImageLimiterType::OutputType FixedImageLimiterOutputType
SmartPointer< FixedImageMaskType > FixedImageMaskPointer
BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > BSplineInterpolatorType
JointPDFDerivativesType::RegionType JointPDFDerivativesRegionType
Array< PDFValueType > MarginalPDFType
typename ImageSamplerType::Pointer ImageSamplerPointer
typename InterpolatorType::ContinuousIndexType MovingImageContinuousIndexType
KernelFunctionBase2< PDFValueType > KernelFunctionType
ImageMaskSpatialObject< Self::MovingImageDimension > MovingImageMaskType