18#ifndef itkComputePreconditionerUsingDisplacementDistribution_h
19#define itkComputePreconditionerUsingDisplacementDistribution_h
39template <
class TFixedImage,
class TTransform>
64 using typename Superclass::ParametersType;
65 using typename Superclass::DerivativeType;
77 itkSetClampMacro(RegularizationKappa,
double, 0.0, 1.0);
78 itkGetConstReferenceMacro(RegularizationKappa,
double);
81 itkSetMacro(MaximumStepLength,
double);
82 itkGetConstReferenceMacro(MaximumStepLength,
double);
85 itkSetClampMacro(ConditionNumber,
double, 0.0, 10.0);
86 itkGetConstReferenceMacro(ConditionNumber,
double);
92 Compute(
const ParametersType & mu,
double & jacg,
double & maxJJ, std::string method)
override;
98 Compute(
const ParametersType & mu,
double & maxJJ, ParametersType & preconditioner);
136#ifndef ITK_MANUAL_INSTANTIATION
137# include "itkComputePreconditionerUsingDisplacementDistribution.hxx"
typename ImageFullSamplerType::Pointer ImageFullSamplerPointer
typename FixedImageType::PointType FixedImagePointType
typename FixedImageType::PixelType FixedImagePixelType
typename FixedImageMaskType::Pointer FixedImageMaskPointer
typename ImageGridSamplerType::Pointer ImageGridSamplerPointer
ImageGridSampler< FixedImageType > ImageGridSamplerType
TransformType TransformType
ImageRandomSamplerBase< FixedImageType > ImageRandomSamplerBaseType
typename FixedImageType::IndexType FixedImageIndexType
ComputeDisplacementDistribution()
typename TransformType::JacobianType JacobianType
NonLinearOptimizer::ScalesType ScalesType
typename ImageRandomSamplerBaseType::Pointer ImageRandomSamplerBasePointer
ImageFullSampler< FixedImageType > ImageFullSamplerType
typename FixedImageType::RegionType FixedImageRegionType
ImageMaskSpatialObject< Self::FixedImageDimension > FixedImageMaskType
typename ImageSampleContainerType::Pointer ImageSampleContainerPointer
typename TransformType::NumberOfParametersType NumberOfParametersType
typename TransformType::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
typename ImageGridSamplerType ::ImageSampleContainerType ImageSampleContainerType
FixedImageType FixedImageType
ImageSamplerBase< FixedImageType > ImageSamplerBaseType
typename TransformType::Pointer TransformPointer
typename TransformType::ScalarType CoordinateRepresentationType
typename JacobianType::ValueType JacobianValueType
JacobianType TransformJacobianType
typename ImageSamplerBaseType::Pointer ImageSamplerBasePointer
typename FixedImageMaskType::ConstPointer FixedImageMaskConstPointer
ComputePreconditionerUsingDisplacementDistribution Self
ITK_DISALLOW_COPY_AND_MOVE(ComputePreconditionerUsingDisplacementDistribution)
double m_RegularizationKappa
void Compute(const ParametersType &mu, double &jacg, double &maxJJ, std::string method) override
ComputePreconditionerUsingDisplacementDistribution()
ComputeDisplacementDistribution< TFixedImage, TTransform > Superclass
SmartPointer< const Self > ConstPointer
~ComputePreconditionerUsingDisplacementDistribution() override=default
void ComputeJacobiTypePreconditioner(double &maxJJ, ParametersType &preconditioner)
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
virtual void Compute(const ParametersType &mu, double &maxJJ, ParametersType &preconditioner)
virtual void PreconditionerInterpolation(ParametersType &preconditioner)
SmartPointer< Self > Pointer
double m_MaximumStepLength