18#ifndef itkImplicitManifoldNormalVectorFilter_h
19#define itkImplicitManifoldNormalVectorFilter_h
72template <
typename TInputImage,
typename TSparseOutputImage>
114 using RadiusType =
typename FiniteDifferenceFunctionType::RadiusType;
120 itkSetMacro(MaxIteration,
unsigned int);
121 itkGetConstMacro(MaxIteration,
unsigned int);
128 itkSetMacro(UnsharpMaskingFlag,
bool);
129 itkGetConstMacro(UnsharpMaskingFlag,
bool);
215#ifndef ITK_MANUAL_INSTANTIATION
216# include "itkImplicitManifoldNormalVectorFilter.hxx"
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
FiniteDifferenceFunction< TOutputImage > FiniteDifferenceFunctionType
virtual const IdentifierType & GetElapsedIterations() const
FiniteDifferenceSparseImageFilter()
static constexpr unsigned int ImageDimension
typename OutputNodeType::NodeDataType NodeDataType
typename SparseOutputImageType::NodeType OutputNodeType
typename Superclass::OutputImageType SparseOutputImageType
typename OutputNodeType::NodeValueType NodeValueType
typename SparseOutputImageType::NodeListType NodeListType
typename SparseOutputImageType::IndexType IndexType
typename Superclass::NodeDataType NormalVectorType
void InitializeNormalBandNode(NormalBandNodeType *node, const InputImageIteratorType &it)
void Initialize() override
void CopyInputToOutput() override
NodeValueType m_IsoLevelHigh
unsigned long m_Indicator[Self::ImageDimension]
typename FiniteDifferenceFunctionType::RadiusType RadiusType
NodeValueType m_DimConst2
ImplicitManifoldNormalVectorFilter()
NodeValueType m_MinVectorNorm
NodeValueType m_UnsharpMaskingWeight
ImplicitManifoldNormalVectorFilter Self
SmartPointer< const Self > ConstPointer
FiniteDifferenceSparseImageFilter< TInputImage, TSparseOutputImage > Superclass
RadiusType m_ManifoldRadius
NodeValueType m_IsoLevelLow
NormalFunctionType * m_NormalFunction
ConstNeighborhoodIterator< InputImageType > InputImageIteratorType
typename Superclass::OutputNodeType NormalBandNodeType
NormalVectorFunctionBase< SparseOutputImageType > NormalFunctionType
NormalVectorType DataConstraint(const NormalVectorType &data) const override
void SetNormalFunction(NormalFunctionType *nf)
static constexpr unsigned int ImageDimension
void PostProcessOutput() override
~ImplicitManifoldNormalVectorFilter() override=default
SmartPointer< Self > Pointer
void PrintSelf(std::ostream &os, Indent indent) const override
bool m_UnsharpMaskingFlag
unsigned int m_MaxIteration
TInputImage InputImageType
Control indentation during Print() invocation.
This class defines the common functionality for Sparse Image neighborhoods of unit vectors.
Implements transparent reference counting.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....