Class SoCurvatureDrivenDiffusionProcessing
- java.lang.Object
-
- com.openinventor.inventor.Inventor
-
- com.openinventor.inventor.misc.SoBase
-
- com.openinventor.inventor.fields.SoFieldContainer
-
- com.openinventor.inventor.engines.SoEngine
-
- com.openinventor.imageviz.engines.SoImageVizEngine
-
- com.openinventor.imageviz.engines.imagefiltering.smoothinganddenoising.SoCurvatureDrivenDiffusionProcessing
-
- All Implemented Interfaces:
SafeDisposable
public class SoCurvatureDrivenDiffusionProcessing extends SoImageVizEngine
SoCurvatureDrivenDiffusionProcessing
engine. TheSoCurvatureDrivenDiffusionProcessing
engine smooths an image using an advanced local edge analysis technique.For an introduction to image filters, see section Images Filters.
This engine smooths an image using an advanced local edge analysis technique. This algorithm allows smoothing an image with respect to its edges.
Figure 1: Curvature-Driven diffusion on a noisy image with default parameters (10 iterations, sharpness = 0.9 and anisotropy = 0.6) The algorithm is ruled by three main parameters: number of iterations, sharpness and anisotropy.
- User must specify the requested number of iterations which should be suitable to reach convergence. In practice, a default value of 10 iterations allows obtaining good results in almost all cases.
- The sharpness parameter control amplitude of smoothing along edge direction. A small sharpness value results in a global image smoothing.
Figure 2: Influence of sharpness parameter on curvature-driven diffusion process (on the left, sharpness = 0.1; on the right, sharpness = 2.0) - The anisotropy parameter control local curvature-driven diffusion along gradient direction (direction orthogonal to edge). A great value for anisotropy parameter result in a stronger local smoothing of edge regions.
Figure 3: Influence of anisotropy parameter on curvature-driven diffusion process (on the left, anisotropy = 0.3; on the right, anisotropy = 0.9)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.openinventor.imageviz.engines.SoImageVizEngine
SoImageVizEngine.ComputeModes, SoImageVizEngine.EventArg, SoImageVizEngine.Neighborhood3ds
-
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
-
Field Summary
Fields Modifier and Type Field Description SoSFFloat
anisotropyFactor
The anisotropy factor.SoSFEnum<SoImageVizEngine.ComputeModes>
computeMode
Select the compute Mode (2D or 3D or AUTO) .SoSFImageDataAdapter
inImage
The input image.SoSFImageDataAdapter
inMaskImage
The binary image for the mask or empty (command looks for only inside).SoSFInt32
iterationNumber
The number of iterations (strictly positive integer).SoImageVizEngineOutput<SoSFImageDataAdapter,SoImageDataAdapter>
outImage
The output image.SoSFFloat
sharpnessFactor
The sharpness factor.-
Fields inherited from class com.openinventor.imageviz.engines.SoImageVizEngine
onBegin, onEnd, onProgress
-
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
-
Constructor Summary
Constructors Constructor Description SoCurvatureDrivenDiffusionProcessing()
Constructor.
-
Method Summary
-
Methods inherited from class com.openinventor.imageviz.engines.SoImageVizEngine
abortEvaluate, isEvaluating, startEvaluate, waitEvaluate
-
Methods inherited from class com.openinventor.inventor.engines.SoEngine
copy, getByName, getOutput, getOutputName
-
Methods inherited from class com.openinventor.inventor.fields.SoFieldContainer
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaults
-
Methods inherited from class com.openinventor.inventor.misc.SoBase
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizable, touch
-
Methods inherited from class com.openinventor.inventor.Inventor
getNativeResourceHandle
-
-
-
-
Field Detail
-
computeMode
public final SoSFEnum<SoImageVizEngine.ComputeModes> computeMode
Select the compute Mode (2D or 3D or AUTO) . Default is MODE_AUTO
-
inImage
public final SoSFImageDataAdapter inImage
The input image. Default value is NULL. Supported types include: grayscale binary label color image.
-
inMaskImage
public final SoSFImageDataAdapter inMaskImage
The binary image for the mask or empty (command looks for only inside). This parameter is optional. Default value is NULL. Supported types include: binary color image.
-
iterationNumber
public final SoSFInt32 iterationNumber
The number of iterations (strictly positive integer). Default value is 10.
-
sharpnessFactor
public final SoSFFloat sharpnessFactor
The sharpness factor. Default value is 0.9f.
-
anisotropyFactor
public final SoSFFloat anisotropyFactor
The anisotropy factor. Default value is 0.6f.
-
outImage
public final SoImageVizEngineOutput<SoSFImageDataAdapter,SoImageDataAdapter> outImage
The output image. Default value is NULL. Supported types include: grayscale binary label color image.
-
-