ITK
6.0.0
Insight Toolkit
|
#include <itkMinMaxCurvatureFlowFunction.h>
This class encapsulate the finite difference equation which drives a min/max curvature flow denoising algorithm.
This class uses a zero flux Neumann boundary condition when computing derivatives near the data boundary.
This class operates as part of the finite difference solver hierarchy.
Definition at line 43 of file itkMinMaxCurvatureFlowFunction.h.
Classes | |
struct | Dispatch |
struct | DispatchBase |
Public Member Functions | |
PixelType | ComputeUpdate (const NeighborhoodType &it, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0)) override |
const char * | GetNameOfClass () const override |
const RadiusValueType & | GetRadiusValueType () const |
const RadiusValueType & | GetStencilRadius () const |
void | SetStencilRadius (const RadiusValueType value) |
Public Member Functions inherited from itk::CurvatureFlowFunction< TImage > | |
TimeStepType | ComputeGlobalTimeStep (void *GlobalData) const override |
PixelType | ComputeUpdate (const NeighborhoodType &it, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0)) override |
void * | GetGlobalDataPointer () const override |
const char * | GetNameOfClass () const override |
const TimeStepType & | GetTimeStep () const |
void | ReleaseGlobalDataPointer (void *GlobalData) const override |
void | SetTimeStep (const TimeStepType &t) |
Public Member Functions inherited from itk::FiniteDifferenceFunction< TImage > | |
virtual TimeStepType | ComputeGlobalTimeStep (void *GlobalData) const=0 |
const NeighborhoodScalesType | ComputeNeighborhoodScales () const |
virtual PixelType | ComputeUpdate (const NeighborhoodType &neighborhood, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0))=0 |
virtual void * | GetGlobalDataPointer () const=0 |
const char * | GetNameOfClass () const override |
const RadiusType & | GetRadius () const |
void | GetScaleCoefficients (PixelRealType vals[ImageDimension]) const |
virtual void | InitializeIteration () |
virtual void | ReleaseGlobalDataPointer (void *GlobalData) const=0 |
void | SetRadius (const RadiusType &r) |
void | SetScaleCoefficients (const PixelRealType vals[ImageDimension]) |
Public Member Functions inherited from itk::LightObject | |
Pointer | Clone () const |
virtual Pointer | CreateAnother () const |
virtual void | Delete () |
virtual const char * | GetNameOfClass () const |
virtual int | GetReferenceCount () const |
void | Print (std::ostream &os, Indent indent=0) const |
virtual void | Register () const |
virtual void | SetReferenceCount (int) |
virtual void | UnRegister () const noexcept |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::CurvatureFlowFunction< TImage > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::CurvatureFlowFunction< TImage > | |
static constexpr unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::FiniteDifferenceFunction< TImage > | |
static constexpr unsigned int | ImageDimension |
Protected Types | |
using | StencilOperatorType = Neighborhood< PixelType, Self::ImageDimension > |
Protected Member Functions | |
void | InitializeStencilOperator () |
MinMaxCurvatureFlowFunction () | |
~MinMaxCurvatureFlowFunction () override=default | |
Protected Member Functions inherited from itk::CurvatureFlowFunction< TImage > | |
CurvatureFlowFunction () | |
~CurvatureFlowFunction () override=default | |
Protected Member Functions inherited from itk::FiniteDifferenceFunction< TImage > | |
FiniteDifferenceFunction () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
~FiniteDifferenceFunction () override=default | |
Protected Member Functions inherited from itk::LightObject | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintSelf (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Protected Attributes | |
StencilOperatorType | m_StencilOperator {} |
Protected Attributes inherited from itk::FiniteDifferenceFunction< TImage > | |
RadiusType | m_Radius |
PixelRealType | m_ScaleCoefficients [ImageDimension] |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount {} |
Private Member Functions | |
PixelType | ComputeThreshold (const Dispatch< 2 > &, const NeighborhoodType &it) const |
PixelType | ComputeThreshold (const Dispatch< 3 > &, const NeighborhoodType &it) const |
PixelType | ComputeThreshold (const DispatchBase &, const NeighborhoodType &it) const |
Private Attributes | |
RadiusValueType | m_StencilRadius {} |
using itk::MinMaxCurvatureFlowFunction< TImage >::ConstPointer = SmartPointer<const Self> |
Definition at line 52 of file itkMinMaxCurvatureFlowFunction.h.
using itk::MinMaxCurvatureFlowFunction< TImage >::Pointer = SmartPointer<Self> |
Definition at line 51 of file itkMinMaxCurvatureFlowFunction.h.
using itk::MinMaxCurvatureFlowFunction< TImage >::RadiusValueType = typename RadiusType::SizeValueType |
Typedef support for the stencil radius.
Definition at line 71 of file itkMinMaxCurvatureFlowFunction.h.
using itk::MinMaxCurvatureFlowFunction< TImage >::Self = MinMaxCurvatureFlowFunction |
Standard class type aliases.
Definition at line 49 of file itkMinMaxCurvatureFlowFunction.h.
|
protected |
Definition at line 100 of file itkMinMaxCurvatureFlowFunction.h.
using itk::MinMaxCurvatureFlowFunction< TImage >::Superclass = CurvatureFlowFunction<TImage> |
Definition at line 50 of file itkMinMaxCurvatureFlowFunction.h.
|
protected |
|
overrideprotecteddefault |
|
private |
Compute the threshold by averaging the intensity in direction perpendicular to the image gradient.
|
private |
|
private |
|
overridevirtual |
Compute the solution update for each pixel that does not lie on a the data set boundary.
Reimplemented from itk::CurvatureFlowFunction< TImage >.
|
overridevirtual |
Reimplemented from itk::CurvatureFlowFunction< TImage >.
|
inline |
Definition at line 78 of file itkMinMaxCurvatureFlowFunction.h.
|
inline |
Convenience function for symmetry with SetStencilRadius.
Definition at line 85 of file itkMinMaxCurvatureFlowFunction.h.
|
protected |
Initialize the stencil operator to be an N-Dimensional sphere of radius m_StencilRadius.
|
static |
Method for creation through the object factory.
void itk::MinMaxCurvatureFlowFunction< TImage >::SetStencilRadius | ( | const RadiusValueType | value | ) |
Set/Get the stencil radius.
|
staticconstexpr |
Extract superclass dimension.
Definition at line 68 of file itkMinMaxCurvatureFlowFunction.h.
|
protected |
Definition at line 101 of file itkMinMaxCurvatureFlowFunction.h.
|
private |
Definition at line 109 of file itkMinMaxCurvatureFlowFunction.h.