#include <itkNormalVectorDiffusionFunction.h>
Inheritance diagram for itk::NormalVectorDiffusionFunction< TSparseImageType >:


Definition at line 58 of file itkNormalVectorDiffusionFunction.h.
Public Types | |
| typedef SmartPointer< const Self > | ConstPointer |
| typedef ZeroFluxNeumannBoundaryCondition< ImageType > | DefaultBoundaryConditionType |
| typedef Superclass::FloatOffsetType | FloatOffsetType |
| typedef TSparseImageType | ImageType |
| typedef Superclass::IndexType | IndexType |
| typedef Superclass::NeighborhoodType | NeighborhoodType |
| typedef NodeType::NodeDataType | NodeDataType |
| typedef Superclass::NodeType | NodeType |
| typedef Superclass::NodeValueType | NodeValueType |
| typedef Superclass::NormalVectorType | NormalVectorType |
| typedef double | PixelRealType |
| typedef Superclass::PixelType | PixelType |
| typedef SmartPointer< Self > | Pointer |
| typedef Superclass::RadiusType | RadiusType |
| typedef NormalVectorDiffusionFunction | Self |
| typedef Superclass::SparseImageType | SparseImageType |
| typedef NormalVectorFunctionBase< TSparseImageType > | Superclass |
| typedef Superclass::TimeStepType | TimeStepType |
Public Member Functions | |
| virtual TimeStepType | ComputeGlobalTimeStep (void *) const |
| virtual NormalVectorType | ComputeSparseUpdate (NeighborhoodType &neighborhood, void *globalData, const FloatOffsetType &offset) const |
| virtual PixelType | ComputeUpdate (const NeighborhoodType &, void *, const FloatOffsetType &) |
| virtual Pointer | CreateAnother () const |
| virtual void | Delete () |
| NodeValueType | GetConductanceParameter () const |
| NodeValueType | GetFluxStopConstant () const |
| Globaldata methods are not needed in this class *virtual void * | GetGlobalDataPointer () const |
| virtual const char * | GetNameOfClass () const |
| int | GetNormalProcessType () const |
| const RadiusType & | GetRadius () const |
| virtual int | GetReferenceCount () const |
| TimeStepType | GetTimeStep () const |
| virtual void | InitializeIteration () |
| itkStaticConstMacro (ImageDimension, unsigned int, ImageType::ImageDimension) | |
| itkStaticConstMacro (ImageDimension, unsigned int, Superclass::ImageDimension) | |
| virtual void | PrecomputeSparseUpdate (NeighborhoodType &it) const |
| void | Print (std::ostream &os, Indent indent=0) const |
| virtual void | Register () const |
| virtual void | ReleaseGlobalDataPointer (void *) const |
| This method sets the conductance parameter used in anisotropic *filtering Useful values for processing D and D shapes are between *and Lower values preserve more shape higher values *smooth more As the conductance parameter the processing becomes *isotropic Default is *void | SetConductanceParameter (NodeValueType cp) |
| void | SetNormalProcessType (int npt) |
| void | SetRadius (const RadiusType &r) |
| virtual void | SetReferenceCount (int) |
| Set the ScaleCoefficients for the difference *operators The defaults a These can be set to take the image *spacing into account *void | SetScaleCoefficients (PixelRealType vals[ImageDimension]) |
| void | SetTimeStep (const TimeStepType &ts) |
| virtual void | UnRegister () const |
Static Public Member Functions | |
| static void | BreakOnError () |
| static Pointer | New () |
Public Attributes | |
| This method sets the conductance parameter used in anisotropic *filtering Useful values for processing D and D shapes are between *and Lower values preserve more shape | features |
| This method sets the conductance parameter used in anisotropic *filtering Useful values for processing D and D shapes are between *and Lower values preserve more shape higher values *smooth more As the conductance parameter | large |
Protected Member Functions | |
| FiniteDifferenceFunction () | |
| The method called in anisotropic diffusion to inhibit diffusion across areas with large curvature *NodeValueType | FluxStopFunction (const NodeValueType v) const |
| NormalVectorDiffusionFunction () | |
| void | PrintSelf (std::ostream &os, Indent indent) const |
| virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
| ~NormalVectorDiffusionFunction () | |
Protected Attributes | |
| RadiusType | m_Radius |
| int | m_ReferenceCount |
| SimpleFastMutexLock | m_ReferenceCountLock |
| PixelRealType | m_ScaleCoefficients [ImageDimension] |
| Methods invoked by virtual Print() to print information about the object *including superclasses.Typically not called by the user(use Print()*instead) but used in the hierarchical print process to combine the *output of several classes.*/virtual void PrintSelf(std voi | PrintHeader )(std::ostream &os, Indent indent) const |
|
|||||
|
Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 66 of file itkNormalVectorDiffusionFunction.h. |
|
|
The default boundary condition for finite difference functions that is used unless overridden in the Evaluate() method. Definition at line 93 of file itkFiniteDifferenceFunction.h. |
|
|||||
|
A floating point offset from an image grid location. Used for interpolation among grid values in a neighborhood. Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 81 of file itkNormalVectorDiffusionFunction.h. |
|
|
Extract some parameters from the image type Definition at line 77 of file itkFiniteDifferenceFunction.h. |
|
|||||
|
The index type for the sparse image. Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 82 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
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::NormalVectorFunctionBase< TSparseImageType >. Definition at line 80 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
The type for the variables of NodeType. Scalar or vector. Definition at line 77 of file itkFiniteDifferenceSparseImageFunction.h. |
|
|||||
|
The node type for the sparse image. Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 84 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
The basic floating point type for the variables. Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 85 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
The vector type for the normals. Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 86 of file itkNormalVectorDiffusionFunction.h. |
|
|
Definition at line 82 of file itkFiniteDifferenceFunction.h. |
|
|||||
|
Typedefs from the superclass. Reimplemented from itk::FiniteDifferenceFunction< TSparseImageType >. Definition at line 63 of file itkFiniteDifferenceSparseImageFunction.h. |
|
|||||
|
Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 65 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
Neighborhood radius type Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 79 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
Standard class typedef. Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 63 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 83 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 64 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
Typedefs from the superclass. Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. Definition at line 75 of file itkNormalVectorDiffusionFunction.h. |
|
|||||||||
|
|
|
|||||||||
|
Definition at line 143 of file itkNormalVectorDiffusionFunction.h. |
|
|
This method is called when itkExceptionMacro executes. It allows the debugger to break on error. |
|
||||||||||
|
For the global time step, we return the time step parameter. Implements itk::FiniteDifferenceFunction< TSparseImageType >. Definition at line 89 of file itkNormalVectorFunctionBase.h. |
|
||||||||||||||||||||
|
The actual update rule for the normal vectors. Implements itk::FiniteDifferenceSparseImageFunction< TSparseImageType >. |
|
||||||||||||||||||||
|
This function is not called from the FiniteDifferenceSparseImageFilter class because we need to work with neighborhoods of pointers to data variables instead of neighborhoods of data directly. This function is replaced by the ComputeSparseUpdate function. Implements itk::FiniteDifferenceFunction< TSparseImageType >. Definition at line 83 of file itkFiniteDifferenceSparseImageFunction.h. |
|
|
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 in itk::Object. |
|
|
Delete an itk object. This method should always be used to delete an object when the new operator was used to create it. Using the C delete method will not work with reference counting. |
|
|
Definition at line 182 of file itkFiniteDifferenceFunction.h. References itk::m_Radius. |
|
||||||||||
|
Definition at line 148 of file itkNormalVectorDiffusionFunction.h. |
|
|||||||||
|
This method returns the conductance parameter. Definition at line 115 of file itkNormalVectorDiffusionFunction.h. |
|
|||||||||
|
This method returns the internal variable FluxStopConstant. Definition at line 119 of file itkNormalVectorDiffusionFunction.h. |
|
|||||||||
|
Returns a pointer to a global data structure that is passed to this object from the solver at each calculation. The idea is that the solver holds the state of any global values needed to calculate the time step, while the equation object performs the actual calculations. The global data should also be initialized in this method. Implements itk::FiniteDifferenceFunction< TSparseImageType >. Definition at line 84 of file itkNormalVectorFunctionBase.h. |
|
|||||||||
|
Run-time type information (and related methods) Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. |
|
|||||||||
|
This method returns the isotropic/anisotropic filtering parameter. Definition at line 96 of file itkNormalVectorDiffusionFunction.h. |
|
|
Returns the radius of the neighborhood this FiniteDifferenceFunction needs to perform its calculations. Definition at line 142 of file itkFiniteDifferenceFunction.h. References itk::m_Radius. |
|
|
Gets the reference count on this object. Definition at line 98 of file itkLightObject.h. |
|
|||||||||
|
Returns the time step. Definition at line 97 of file itkNormalVectorFunctionBase.h. |
|
|
This method allows the function to set its state before each iteration of the finite difference solver (image filter) that uses it. This is a thread-safe time to manipulate the object's state. An example of how this can be used: the Anisotropic diffusion class of FiniteDifferenceFunctions use this method to pre-calculate an average gradient magnitude across the entire image region. This value is set in the function object and used by the ComputeUpdate methods that are called at each pixel as a constant. Definition at line 115 of file itkFiniteDifferenceFunction.h. |
|
||||||||||||||||
|
Save image dimension. |
|
||||||||||||||||||||
|
Image dimension derived from the superclass. Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. |
|
|||||||||
|
Standard New macro. Reimplemented from itk::LightObject. |
|
||||||||||
|
This function is called from LevelSetNormalImageFilter for all of the nodes to compute and store the flux vectors (first derivatives of the normal vectors. ComputeUpdateNormal then takes derivatives of the flux vectors. This way we avoid repeating the same flux computations. Reimplemented from itk::FiniteDifferenceSparseImageFunction< TSparseImageType >. |
|
||||||||||||
|
Cause the object to print itself out. |
|
||||||||||||||||
|
Reimplemented from itk::NormalVectorFunctionBase< TSparseImageType >. |
|
||||||||||||
|
|
|
|
Increase the reference count (mark as used by another object). Reimplemented in itk::Object. |
|
||||||||||
|
When the finite difference solver filter has finished using a global data pointer, it passes it to this method, which frees the memory. The solver cannot free the memory because it does not know the type to which the pointer points. Implements itk::FiniteDifferenceFunction< TSparseImageType >. Definition at line 85 of file itkNormalVectorFunctionBase.h. |
|
||||||||||
|
Definition at line 104 of file itkNormalVectorDiffusionFunction.h. |
|
||||||||||
|
This method is used to choose between isotropic/anisotropic filtering. A parameter value of 0 indicates isotropic diffusion and is the default. Parameter value 1 is anisotropic diffusion. When using anisotropic diffusion the conductance parameter should also be set. Definition at line 92 of file itkNormalVectorDiffusionFunction.h. |
|
|
Sets the radius of the neighborhood this FiniteDifferenceFunction needs to perform its calculations. Definition at line 137 of file itkFiniteDifferenceFunction.h. References itk::m_Radius. |
|
|
Sets the reference count on this object. This is a dangerous method, use it with care. Reimplemented in itk::Object. |
|
|
Definition at line 148 of file itkFiniteDifferenceFunction.h. |
|
||||||||||
|
Sets the time step. Definition at line 93 of file itkNormalVectorFunctionBase.h. |
|
|
Decrease the reference count (release by another object). Reimplemented in itk::Object. |
|
|||||
|
Definition at line 101 of file itkNormalVectorDiffusionFunction.h. |
|
|||||
|
Definition at line 101 of file itkNormalVectorDiffusionFunction.h. |
|
|
Definition at line 194 of file itkFiniteDifferenceFunction.h. |
|
|
Number of uses of this object by other objects. Definition at line 119 of file itkLightObject.h. |
|
|
Mutex lock to protect modification to the reference count Definition at line 122 of file itkLightObject.h. |
|
|
Definition at line 195 of file itkFiniteDifferenceFunction.h. |
|
|
|
1.4.2 written by Dimitri van Heesch,
© 1997-2000