18 #ifndef itkNarrowBandLevelSetImageFilter_h
19 #define itkNarrowBandLevelSetImageFilter_h
143 template<
typename TInputImage,
144 typename TFeatureImage,
145 typename TOutputPixelType = float,
146 typename TOutputImage = Image< TOutputPixelType,
147 TInputImage::ImageDimension > >
212 <<
"SetUseNegativeFeaturesOn has been deprecated. Please use ReverseExpansionDirectionOn() instead");
220 <<
"SetUseNegativeFeaturesOff has been deprecated. Please use ReverseExpansionDirectionOff() instead");
228 itkWarningMacro(<<
"SetUseNegativeFeatures has been deprecated. Please use SetReverseExpansionDirection instead");
242 itkWarningMacro(<<
"GetUseNegativeFeatures has been deprecated. Please use GetReverseExpansionDirection() instead");
261 itkSetMacro(ReverseExpansionDirection,
bool);
262 itkGetConstMacro(ReverseExpansionDirection,
bool);
263 itkBooleanMacro(ReverseExpansionDirection);
344 itkWarningMacro(
"SetMaximumIterations is deprecated. Please use SetNumberOfIterations instead.");
351 itkWarningMacro(
"GetMaximumIterations is deprecated. Please use GetNumberOfIterations instead.");
358 "The current implmentation of this solver does not compute maximum RMS change. The maximum RMS error value will not be set or used.");
361 #ifdef ITK_USE_CONCEPT_CHECKING
373 virtual
void PrintSelf(std::ostream & os,
Indent indent) const ITK_OVERRIDE;
375 void operator=(const
Self &) ITK_DELETE_FUNCTION;
417 #ifndef ITK_MANUAL_INSTANTIATION
418 #include "itkNarrowBandLevelSetImageFilter.hxx"
virtual void SetMaximumRMSError(const double) override
virtual FeatureImageType * GetFeatureImage()
Superclass::InputImageType InputImageType
SmartPointer< const Self > ConstPointer
virtual const SegmentationFunctionType::VectorImageType * GetAdvectionImage() const
void SetCurvatureScaling(ValueType v)
virtual void PrintSelf(std::ostream &os, Indent indent) const override
virtual void SetInitialImage(InputImageType *f)
virtual void ReverseExpansionDirectionOn()
virtual void SetSegmentationFunction(SegmentationFunctionType *s)
Superclass::ImageType ImageType
OutputImageType::IndexType IndexType
ValueType GetCurvatureScaling() const
Superclass::TimeStepType TimeStepType
Compute an approximate distance from an interpolated isocontour to the close grid points...
Superclass::InputImageType InputImageType
SegmentationFunctionType::VectorImageType VectorImageType
SegmentationLevelSetFunction< OutputImageType, FeatureImageType > SegmentationFunctionType
virtual const SegmentationFunctionType::ImageType * GetSpeedImage() const
void SetAdvectionScaling(ValueType v)
This class compute the signed (positive and negative) chamfer distance in a narrow band...
void SetUseNegativeFeaturesOn()
ChamferFilterType::Pointer m_ChamferFilter
void SetPropagationScaling(ValueType v)
virtual void InitializeIteration() override
NarrowBandLevelSetImageFilter()
virtual void SetInput(const InputImageType *image)
virtual void SetPropagationWeight(const ScalarValueType p)
virtual bool GetReverseExpansionDirection() const
ValueType GetPropagationScaling() const
NarrowBandImageFilterBase< TInputImage, TOutputImage > Superclass
TInputImage InputImageType
TOutputImage OutputImageType
virtual const IdentifierType & GetNumberOfIterations() const
IsoFilterType::Pointer m_IsoFilter
unsigned int GetMaximumIterations()
void UpdateProgress(float progress)
Update the progress of the process object.
NarrowBandLevelSetImageFilter Self
void SetFeatureScaling(ValueType v)
virtual void SetNumberOfIterations(IdentifierType _arg)
Superclass::IndexType IndexType
Superclass::ValueType ValueType
bool NotExactlyEquals(const TInput1 &x1, const TInput2 &x2)
DataObject * GetInput(const DataObjectIdentifierType &key)
Return an input.
void GenerateData() override
virtual ImageType * GetSpeedImage()
virtual void ReverseExpansionDirectionOff()
virtual void SetFeatureImage(const FeatureImageType *f)
virtual void SetFeatureImage(const FeatureImageType *f)
This class implements a multi-threaded finite difference image to image solver that can be applied to...
virtual void CreateNarrowBand() override
virtual void SetReverseExpansionDirection(bool _arg)
virtual ~NarrowBandLevelSetImageFilter()
virtual void InitializeIteration() override
bool m_ReverseExpansionDirection
void SetUseNegativeFeatures(bool u)
bool GetUseNegativeFeatures() const
ValueType GetAdvectionScaling() const
A base class which defines the API for implementing a special class of image segmentation filters usi...
Control indentation during Print() invocation.
SegmentationFunctionType * m_SegmentationFunction
ScalarValueType GetAdvectionWeight() const
void SetUseNegativeFeaturesOff()
Superclass::TimeStepType TimeStepType
typedef(Concept::HasNumericTraits< typename TOutputImage::PixelType >) OutputHasNumericTraitsCheck
virtual void SetNthInput(DataObjectPointerArraySizeType num, DataObject *input)
virtual void SetCurvatureWeight(const ScalarValueType c)
virtual void SetAdvectionWeight(const ScalarValueType a)
virtual VectorImageType * GetAdvectionImage() const
OutputImageType::ValueType ValueType
virtual const IdentifierType & GetElapsedIterations() const
ScalarValueType GetCurvatureWeight() const
#define itkConceptMacro(name, concept)
SmartPointer< Self > Pointer
TFeatureImage FeatureImageType
Templated n-dimensional image class.
ScalarValueType GetPropagationWeight() const
void SetMaximumIterations(unsigned int i)
virtual SegmentationFunctionType * GetSegmentationFunction()