18#ifndef sitkDiffeomorphicDemonsRegistrationFilter_h
19#define sitkDiffeomorphicDemonsRegistrationFilter_h
337 std::string
GetName()
const {
return std::string(
"DiffeomorphicDemonsRegistrationFilter"); }
351 fixedImage,
const Image *
352 movingImage,
const Image *
353 initialDisplacementField);
355 fixedImage,
const Image *
356 movingImage,
const Image *
357 initialDisplacementField);
399 std::unique_ptr<itk::ProcessObject, ProcessObjectDeleter>
m_Filter{
nullptr};
uint32_t GetNumberOfIterations() const
unsigned int GetMaximumKernelWidth() const
std::vector< double > GetStandardDeviations() const
double GetRMSChange() const
void SetMaximumError(double MaximumError)
bool GetUseFirstOrderExp() const
double GetIntensityDifferenceThreshold() const
bool GetSmoothDisplacementField() const
uint32_t GetElapsedIterations() const
Number of iterations run.
double GetMaximumError() const
void SetSmoothDisplacementField(bool SmoothDisplacementField)
void SetMaximumRMSError(double MaximumRMSError)
void SetUseGradientType(UseGradientTypeType UseGradientType)
void SetNumberOfIterations(uint32_t NumberOfIterations)
std::string GetName() const
void SetUseFirstOrderExp(bool UseFirstOrderExp)
Image(Self::*)(const Image * fixedImage, const Image * movingImage, const Image * initialDisplacementField) MemberFunctionType
uint32_t m_NumberOfIterations
void SetMaximumUpdateStepLength(double MaximumUpdateStepLength)
void UseImageSpacingOff()
bool m_SmoothDisplacementField
std::function< void()> m_pfGetStopRegistration
std::function< double()> m_pfGetMetric
Image Execute(const Image &fixedImage, const Image &movingImage)
std::vector< double > GetUpdateFieldStandardDeviations() const
UseGradientTypeType m_UseGradientType
bool GetUseImageSpacing() const
void SetUseImageSpacing(bool UseImageSpacing)
double GetMaximumUpdateStepLength() const
void SetIntensityDifferenceThreshold(double IntensityDifferenceThreshold)
void UseFirstOrderExpOn()
double m_IntensityDifferenceThreshold
DiffeomorphicDemonsRegistrationFilter()
void SmoothDisplacementFieldOff()
void SmoothDisplacementFieldOn()
void SetUpdateFieldStandardDeviations(std::vector< double > UpdateFieldStandardDeviations)
std::vector< double > m_StandardDeviations
std::vector< double > m_UpdateFieldStandardDeviations
void SetStandardDeviations(double value)
virtual ~DiffeomorphicDemonsRegistrationFilter()
void SetStandardDeviations(std::vector< double > StandardDeviations)
Image ExecuteInternal(const Image *fixedImage, const Image *movingImage, const Image *initialDisplacementField)
std::unique_ptr< itk::ProcessObject, ProcessObjectDeleter > m_Filter
DiffeomorphicDemonsRegistrationFilter Self
void SmoothUpdateFieldOff()
UseGradientTypeType GetUseGradientType() const
double m_MaximumUpdateStepLength
void UseFirstOrderExpOff()
void SetUpdateFieldStandardDeviations(double value)
double GetMaximumRMSError() const
void SmoothUpdateFieldOn()
static const detail::MemberFunctionFactory< MemberFunctionType > & GetMemberFunctionFactory()
bool GetSmoothUpdateField() const
std::function< uint32_t()> m_pfGetElapsedIterations
void SetSmoothUpdateField(bool SmoothUpdateField)
Image Execute(const Image &fixedImage, const Image &movingImage, const Image &initialDisplacementField)
BasicPixelIDTypeList PixelIDTypeList
void StopRegistration()
Stop the registration after the current iteration.
void SetMaximumKernelWidth(unsigned int MaximumKernelWidth)
unsigned int m_MaximumKernelWidth
std::string ToString() const
The Image class for SimpleITK.
A class used to instantiate and generate function object to templated member functions.
typelist2::typelist< BasicPixelID< int8_t >, BasicPixelID< uint8_t >, BasicPixelID< int16_t >, BasicPixelID< uint16_t >, BasicPixelID< int32_t >, BasicPixelID< uint32_t >, BasicPixelID< float >, BasicPixelID< double > > BasicPixelIDTypeList
#define SITKBasicFilters_EXPORT