Class SoHExtremaWatershedProcessing
- 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.imagesegmentation.separatingandfilling.SoHExtremaWatershedProcessing
-
- All Implemented Interfaces:
SafeDisposable
public class SoHExtremaWatershedProcessing extends SoImageVizEngine
SoHExtremaWatershedProcessing
engine computes the watershed lines of a grayscale image. This engine computes the watershed lines of a grayscale image. It directly uses the image for black objects and the inverted image for white objects. You can adjust the contrast level which is used to reduce the number of markers for the watershed process.This engine is a high-level combination of watershed, distance transform and numerical reconstruction algorithms. There is a limitation to the separating ability: if some particles overlap too much, they will not be separated. This engine can be used on the gradient modulus to compute best-fit contours.
Notice: This engine requires to preliminarily load the whole input data set into memory to be computed. As a consequence the input data set will be automatically loaded before the execution of this engine, ignoring the maximum memory parameter of the SbImageDataAdapterHelper.getAppropriateAdapter
function orSoFileDataAdapter
classIf the input data set cannot fit in memory, this engine will fail during its computation.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SoHExtremaWatershedProcessing.AlgorithmModes
static class
SoHExtremaWatershedProcessing.ObjectLightnessType
static class
SoHExtremaWatershedProcessing.SeparationModes
-
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 SoSFEnum<SoHExtremaWatershedProcessing.AlgorithmModes>
algorithmMode
Select the algorithm mode for fastwatershed.SoSFEnum<SoImageVizEngine.ComputeModes>
computeMode
Select the compute Mode (2D or 3D or AUTO) .SoSFInt32
contrastValue
The depth of valley.SoSFImageDataAdapter
inGrayImage
The input grayscale image.SoSFEnum<SoImageVizEngine.Neighborhood3ds>
neighborhood3d
In 3D configuration (seecomputeMode
), the neighborhood connectivity defines the connectivity considered for processing adjacent voxels.SoSFEnum<SoHExtremaWatershedProcessing.ObjectLightnessType>
objectLightness
Select the lightness mode for object to separate.SoImageVizEngineOutput<SoSFImageDataAdapter,SoImageDataAdapter>
outSeparationImage
The output separation (binary or label) image.SoSFEnum<SoHExtremaWatershedProcessing.SeparationModes>
separationMode
Select the output image type: separation lines, split objects or separated basins.-
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 SoHExtremaWatershedProcessing()
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
-
neighborhood3d
public final SoSFEnum<SoImageVizEngine.Neighborhood3ds> neighborhood3d
In 3D configuration (seecomputeMode
), the neighborhood connectivity defines the connectivity considered for processing adjacent voxels. . Default is CONNECTIVITY_26.
-
inGrayImage
public final SoSFImageDataAdapter inGrayImage
The input grayscale image. Default value is NULL. Supported types include: grayscale image.
-
objectLightness
public final SoSFEnum<SoHExtremaWatershedProcessing.ObjectLightnessType> objectLightness
Select the lightness mode for object to separate. . Default is DARK_OBJECTS
-
separationMode
public final SoSFEnum<SoHExtremaWatershedProcessing.SeparationModes> separationMode
Select the output image type: separation lines, split objects or separated basins. . Default is SEPARATED_OBJECTS
-
algorithmMode
public final SoSFEnum<SoHExtremaWatershedProcessing.AlgorithmModes> algorithmMode
Select the algorithm mode for fastwatershed. . Default is REPEATABLE
-
contrastValue
public final SoSFInt32 contrastValue
The depth of valley. Default value is 30.
-
outSeparationImage
public final SoImageVizEngineOutput<SoSFImageDataAdapter,SoImageDataAdapter> outSeparationImage
The output separation (binary or label) image. Default value is NULL. Supported types include: grayscale binary label color image.
-
-