ITK
4.2.0
Insight Segmentation and Registration Toolkit
|
#include <itkCurvatureNDAnisotropicDiffusionFunction.h>
Public Member Functions | |
virtual PixelType | ComputeUpdate (const NeighborhoodType &neighborhood, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0)) |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual const char * | GetNameOfClass () const |
virtual void | InitializeIteration () |
Public Member Functions inherited from itk::ScalarAnisotropicDiffusionFunction< TImage > | |
virtual void | CalculateAverageGradientMagnitudeSquared (TImage *) |
Public Member Functions inherited from itk::AnisotropicDiffusionFunction< TImage > | |
virtual TimeStepType | ComputeGlobalTimeStep (void *) const |
const double & | GetAverageGradientMagnitudeSquared () const |
const double & | GetConductanceParameter () const |
virtual void * | GetGlobalDataPointer () const |
const TimeStepType & | GetTimeStep () const |
virtual void | ReleaseGlobalDataPointer (void *) const |
void | SetAverageGradientMagnitudeSquared (const double &c) |
void | SetConductanceParameter (const double &c) |
void | SetTimeStep (const TimeStepType &t) |
Public Member Functions inherited from itk::FiniteDifferenceFunction< TImage > | |
const NeighborhoodScalesType | ComputeNeighborhoodScales () const |
const RadiusType & | GetRadius () const |
void | SetRadius (const RadiusType &r) |
void | SetScaleCoefficients (PixelRealType vals[ImageDimension]) |
Public Member Functions inherited from itk::LightObject | |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
void | Print (std::ostream &os, Indent indent=0) const |
virtual void | Register () const |
virtual void | SetReferenceCount (int) |
virtual void | UnRegister () const |
Static Public Member Functions | |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::ScalarAnisotropicDiffusionFunction< TImage > | |
Static Public Attributes inherited from itk::AnisotropicDiffusionFunction< TImage > | |
Static Public Attributes inherited from itk::FiniteDifferenceFunction< TImage > |
Protected Member Functions | |
CurvatureNDAnisotropicDiffusionFunction () | |
~CurvatureNDAnisotropicDiffusionFunction () | |
Protected Member Functions inherited from itk::ScalarAnisotropicDiffusionFunction< TImage > | |
ScalarAnisotropicDiffusionFunction () | |
~ScalarAnisotropicDiffusionFunction () | |
Protected Member Functions inherited from itk::AnisotropicDiffusionFunction< TImage > | |
AnisotropicDiffusionFunction () | |
void | PrintSelf (std::ostream &os, Indent indent) const |
~AnisotropicDiffusionFunction () | |
Protected Member Functions inherited from itk::FiniteDifferenceFunction< TImage > | |
FiniteDifferenceFunction () | |
~FiniteDifferenceFunction () | |
Protected Member Functions inherited from itk::LightObject | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Private Member Functions | |
CurvatureNDAnisotropicDiffusionFunction (const Self &) | |
void | operator= (const Self &) |
Private Attributes | |
DerivativeOperator< PixelType, itkGetStaticConstMacro(ImageDimension) > | dx_op |
NeighborhoodSizeValueType | m_Center |
NeighborhoodInnerProduct < ImageType > | m_InnerProduct |
PixelType | m_K |
NeighborhoodSizeValueType | m_Stride [ImageDimension] |
std::slice | x_slice [ImageDimension] |
std::slice | xa_slice [ImageDimension][ImageDimension] |
std::slice | xd_slice [ImageDimension][ImageDimension] |
Static Private Attributes | |
static double | m_MIN_NORM |
This class implements a variation on the classic, Perona-Malik anisotropic image diffusion equation as described in itkGradientNDAnisotropicDiffusionFunction. This object is a level-set analog of that equation and will be referred to below as the modified curvature diffusion equation (MCDE). MCDE does not exhibit the edge enhancing properties of classic anisotropic diffusion, which can under certain conditions undergo a ``negative'' diffusion,which enhances the contrast of edges. Equations of the form of MCDE always undergo positive diffusion, with the conductance term only varying the strength of that diffusion.
,
.
Definition at line 75 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef SmartPointer< const Self > itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::ConstPointer |
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 84 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef Superclass::FloatOffsetType itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::FloatOffsetType |
A floating point offset from an image grid location. Used for interpolation among grid values in a neighborhood.
Reimplemented from itk::AnisotropicDiffusionFunction< TImage >.
Definition at line 99 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef Superclass::ImageType itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::ImageType |
Inherit some parameters from the superclass type.
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 91 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef NeighborhoodType::SizeValueType itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::NeighborhoodSizeValueType |
Definition at line 101 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef Superclass::NeighborhoodType itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::NeighborhoodType |
The type of data structure that is passed to this function object to evaluate at a pixel that does not lie on a data set boundary.
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 98 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef Superclass::PixelType itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::PixelType |
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 95 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef SmartPointer< Self > itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::Pointer |
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 83 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef Superclass::RadiusType itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::RadiusType |
Neighborhood radius type
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 97 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef CurvatureNDAnisotropicDiffusionFunction itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::Self |
Standard class typedefs.
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 81 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef ScalarAnisotropicDiffusionFunction< TImage > itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::Superclass |
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 82 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
typedef Superclass::TimeStepType itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::TimeStepType |
Define the TimeStepType to always be double.
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 96 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
protected |
|
inlineprotected |
Definition at line 122 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
private |
|
virtual |
Compute incremental update.
Implements itk::FiniteDifferenceFunction< TImage >.
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::LightObject.
|
virtual |
Run-time type information (and related methods)
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
|
inlinevirtual |
This method is called prior to each iteration of the solver.
Reimplemented from itk::FiniteDifferenceFunction< TImage >.
Definition at line 113 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
static |
Method for creation through the object factory.
Reimplemented from itk::LightObject.
|
private |
Mutex lock to protect modification to the reference count
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
|
private |
Derivative operator
Definition at line 139 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
static |
Inherit some parameters from the superclass type.
Reimplemented from itk::ScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 104 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
private |
Definition at line 147 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
private |
Inner product function.
Definition at line 131 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
private |
Modified global average gradient magnitude term.
Definition at line 142 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
staticprivate |
Definition at line 145 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
private |
Definition at line 148 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
private |
Slices for the ND neighborhood.
Definition at line 134 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
private |
Definition at line 135 of file itkCurvatureNDAnisotropicDiffusionFunction.h.
|
private |
Definition at line 136 of file itkCurvatureNDAnisotropicDiffusionFunction.h.