18#ifndef sitkDiffeomorphicDemonsRegistrationFilter_h
19#define sitkDiffeomorphicDemonsRegistrationFilter_h
263 std::string
GetName()
const {
return std::string (
"DiffeomorphicDemonsRegistrationFilter"); }
Image(Self::*)(const Image *fixedImage, const Image *movingImage, const Image *initialDisplacementField) MemberFunctionType
Self & SetNumberOfIterations(uint32_t NumberOfIterations)
uint32_t GetNumberOfIterations() const
unsigned int GetMaximumKernelWidth() const
std::vector< double > GetStandardDeviations() const
double GetRMSChange() const
bool GetUseFirstOrderExp() const
double GetIntensityDifferenceThreshold() const
bool GetSmoothDisplacementField() const
uint32_t GetElapsedIterations() const
Number of iterations run.
std::unique_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
double GetMaximumError() const
Self & SetMaximumUpdateStepLength(double MaximumUpdateStepLength)
std::string GetName() const
Self & SetUseGradientType(UseGradientTypeType UseGradientType)
uint32_t m_NumberOfIterations
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
Self & SetUseFirstOrderExp(bool UseFirstOrderExp)
bool GetUseImageSpacing() const
double GetMaximumUpdateStepLength() const
double m_IntensityDifferenceThreshold
DiffeomorphicDemonsRegistrationFilter()
std::vector< double > m_StandardDeviations
std::vector< double > m_UpdateFieldStandardDeviations
Self & SetMaximumKernelWidth(unsigned int MaximumKernelWidth)
virtual ~DiffeomorphicDemonsRegistrationFilter()
Self & SetUpdateFieldStandardDeviations(double value)
Self & UseFirstOrderExpOff()
Image ExecuteInternal(const Image *fixedImage, const Image *movingImage, const Image *initialDisplacementField)
Self & SetIntensityDifferenceThreshold(double IntensityDifferenceThreshold)
Self & SmoothDisplacementFieldOn()
Self & SetStandardDeviations(std::vector< double > StandardDeviations)
Self & SmoothDisplacementFieldOff()
Self & SetMaximumRMSError(double MaximumRMSError)
DiffeomorphicDemonsRegistrationFilter Self
Self & SetStandardDeviations(double value)
Self & SmoothUpdateFieldOff()
Self & SetUpdateFieldStandardDeviations(std::vector< double > UpdateFieldStandardDeviations)
UseGradientTypeType GetUseGradientType() const
Self & UseImageSpacingOn()
double m_MaximumUpdateStepLength
Self & SetSmoothDisplacementField(bool SmoothDisplacementField)
Self & UseImageSpacingOff()
Self & SetMaximumError(double MaximumError)
Self & SetUseImageSpacing(bool UseImageSpacing)
double GetMaximumRMSError() const
bool GetSmoothUpdateField() const
std::function< uint32_t()> m_pfGetElapsedIterations
Image Execute(const Image &fixedImage, const Image &movingImage, const Image &initialDisplacementField)
BasicPixelIDTypeList PixelIDTypeList
Self & SmoothUpdateFieldOn()
itk::ProcessObject * m_Filter
Self & UseFirstOrderExpOn()
Self & SetSmoothUpdateField(bool SmoothUpdateField)
unsigned int m_MaximumKernelWidth
std::string ToString() const
The Image class for SimpleITK.
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