18 #ifndef sitkGeodesicActiveContourLevelSetImageFilter_h
19 #define sitkGeodesicActiveContourLevelSetImageFilter_h
110 SITK_RETURN_SELF_TYPE_HEADER
SetMaximumRMSError (
double MaximumRMSError ) { this->m_MaximumRMSError = MaximumRMSError;
return *
this; }
118 SITK_RETURN_SELF_TYPE_HEADER
SetPropagationScaling (
double PropagationScaling ) { this->m_PropagationScaling = PropagationScaling;
return *
this; }
126 SITK_RETURN_SELF_TYPE_HEADER
SetCurvatureScaling (
double CurvatureScaling ) { this->m_CurvatureScaling = CurvatureScaling;
return *
this; }
134 SITK_RETURN_SELF_TYPE_HEADER
SetAdvectionScaling (
double AdvectionScaling ) { this->m_AdvectionScaling = AdvectionScaling;
return *
this; }
142 SITK_RETURN_SELF_TYPE_HEADER
SetNumberOfIterations ( uint32_t NumberOfIterations ) { this->m_NumberOfIterations = NumberOfIterations;
return *
this; }
150 SITK_RETURN_SELF_TYPE_HEADER
SetReverseExpansionDirection (
bool ReverseExpansionDirection ) { this->m_ReverseExpansionDirection = ReverseExpansionDirection;
return *
this; }
177 std::string
GetName()
const {
return std::string (
"GeodesicActiveContourLevelSetImageFilter"); }
180 std::string ToString()
const;
187 Image Execute (
const Image & initialImage,
const Image & featureImage );
194 template <
class TImageType>
Image ExecuteInternal (
const Image * initialImage,
const Image * featureImage );
203 double m_MaximumRMSError{0.01};
206 double m_PropagationScaling{1.0};
209 double m_CurvatureScaling{1.0};
212 double m_AdvectionScaling{1.0};
215 uint32_t m_NumberOfIterations{1000u};
218 bool m_ReverseExpansionDirection{
false};
221 uint32_t m_ElapsedIterations{0};
223 double m_RMSChange{0.0};
226 bool m_InPlace{
false};