vtkImageAnisotropicDiffusion2D - edge preserving smoothing.
Super Class: vtkImageSpatialFilter
Description:
vtkImageAnisotropicDiffusion2D diffuses a 2d image iteratively. The neighborhood of the diffusion is determined by the instance flags. If "Edges" is on the 4 edge connected voxels are included, and if "Corners" is on, the 4 corner connected voxels are included. "DiffusionFactor" determines how far a pixel value moves toward its neighbors, and is insensitive to the number of neighbors choosen. The diffusion is anisotropic because it only occurs when a gradient mesure is below "GradientThreshold". Two gradient measures exist and are toggled by the "GradientMagnitudeThreshold" flag. When "GradientMagnitudeThreshold" is on, the magnitude of the gradient, computed by central differences, above "DiffusionThreshold" a voxel is not modified. The alternative measure examines each neighbor independantly. The gradient between the voxel and the neighbor must be below the "DiffusionThreshold" for diffusion to occur with THAT neighbor.
See Also:
Methods:
void vtkImageAnisotropicDiffusion2D () | |
static vtkImageAnisotropicDiffusion2D *New () | |
const char *GetClassName () | |
void PrintSelf (unknown & ,vtkIndent ) | |
void SetNumberOfIterations (int ) | |
int GetNumberOfIterations () | |
void SetDiffusionThreshold (float ) | |
float GetDiffusionThreshold () | |
void SetDiffusionFactor (float ) | |
float GetDiffusionFactor () | |
void SetFaces (int ) | |
int GetFaces () | |
void FacesOn () | |
void FacesOff () | |
void SetEdges (int ) | |
int GetEdges () | |
void EdgesOn () | |
void EdgesOff () | |
void SetCorners (int ) | |
int GetCorners () | |
void CornersOn () | |
void CornersOff () | |
void SetGradientMagnitudeThreshold (int ) | |
int GetGradientMagnitudeThreshold () | |
void GradientMagnitudeThresholdOn () | |
void GradientMagnitudeThresholdOff () | |
void ThreadedExecute (vtkImageData * ,vtkImageData * ,int ,int ) | |
void Iterate (vtkImageData * ,vtkImageData * ,float ,float ,int * ,int ) |
Detailed Method Descriptions:
void SetNumberOfIterations (int ) |
int GetNumberOfIterations () |
void SetDiffusionThreshold (float ) | |
float GetDiffusionThreshold () |
void SetDiffusionFactor (float ) | |
float GetDiffusionFactor () |
void SetFaces (int ) | |
int GetFaces () | |
void FacesOn () | |
void FacesOff () | |
void SetEdges (int ) | |
int GetEdges () | |
void EdgesOn () | |
void EdgesOff () | |
void SetCorners (int ) | |
int GetCorners () | |
void CornersOn () | |
void CornersOff () |
void SetGradientMagnitudeThreshold (int ) | |
int GetGradientMagnitudeThreshold () | |
void GradientMagnitudeThresholdOn () | |
void GradientMagnitudeThresholdOff () |