19 #ifndef itkLevelSetEquationChanAndVeseInternalTerm_h
20 #define itkLevelSetEquationChanAndVeseInternalTerm_h
46 template <
typename TInput,
47 typename TLevelSetContainer>
66 using typename Superclass::InputImageType;
67 using typename Superclass::InputImagePointer;
68 using typename Superclass::InputPixelType;
69 using typename Superclass::InputPixelRealType;
71 using typename Superclass::LevelSetContainerType;
72 using typename Superclass::LevelSetContainerPointer;
73 using typename Superclass::LevelSetType;
74 using typename Superclass::LevelSetPointer;
75 using typename Superclass::LevelSetOutputPixelType;
76 using typename Superclass::LevelSetOutputRealType;
77 using typename Superclass::LevelSetInputIndexType;
78 using typename Superclass::LevelSetGradientType;
79 using typename Superclass::LevelSetHessianType;
80 using typename Superclass::LevelSetIdentifierType;
82 using typename Superclass::HeavisideType;
83 using typename Superclass::HeavisideConstPointer;
85 using typename Superclass::LevelSetDataType;
87 using typename Superclass::DomainMapImageFilterType;
88 using typename Superclass::CacheImageType;
90 itkSetMacro(Mean, InputPixelRealType);
91 itkGetMacro(Mean, InputPixelRealType);
99 InitializeParameters()
override;
117 UpdatePixel(
const LevelSetInputIndexType & inputIndex,
118 const LevelSetOutputRealType & oldValue,
119 const LevelSetOutputRealType & newValue)
override;
128 LevelSetOutputRealType
129 Value(
const LevelSetInputIndexType & inputIndex)
override;
133 LevelSetOutputRealType
134 Value(
const LevelSetInputIndexType & inputIndex,
const LevelSetDataType & data)
override;
138 Accumulate(
const InputPixelType & inputPixel,
const LevelSetOutputRealType & heavisideValue);
140 InputPixelRealType m_Mean{};
141 InputPixelRealType m_TotalValue{};
142 LevelSetOutputRealType m_TotalH{};
146 #ifndef ITK_MANUAL_INSTANTIATION
147 # include "itkLevelSetEquationChanAndVeseInternalTerm.hxx"