WEMBinarySurface¶
-
MLModule
¶ author MeVis Medical Solutions AG
package MeVisLab/Standard
dll MLOpenVDB
definition MLOpenVDB.def inherits from WEMGenerator
keywords iso
,contour
,dual
Purpose¶
The WEMBinarySurface
allows to create a surface of a binary segmentation mask. When used in “LevelSet” mode, every voxel value != 0 is treated as foreground and every value == 0 as background. This topology mask is used to create a level set which is closed/dilated/filtered. Finally a mesh is created using dual contouring on the level set.
It makes use of the OpenVDB (http://www.openvdb.org/) library.
NOTE: The topologyToLevelSet method that is used in the level set generation seems to create a non-closed level sets, which can lead to (undesired) holes in the surface.
The module also supports a classical “IsoValue” mode, but this will be inefficient if there are many voxel values that are not background (== 0).
For a more general ISO surface generation module, see WEMIsoSurface
.
Parameter Fields¶
Field Index¶
Adaptivity : Double |
elapsedTime : Float |
shouldComputeNormals : Bool |
Apply : Trigger |
id : Integer |
Smoothing Iterations : Integer |
Auto Apply : Bool |
Iso Value : Float |
Update Mode : Enum |
Build Edges : Bool |
isProcessing : Bool |
|
Clear : Trigger |
Label : String |
|
Closing Iterations : Integer |
Mode : Enum |
|
Description : String |
Overwrite label and description : Bool |
|
Dilate Iterations : Integer |
progress : Float |
Visible Fields¶
Mode¶
-
name:
mode
, type:
Enum
, default:
LevelSet
¶ Selects the surface generation mode.
Values:
Title | Name | Description |
---|---|---|
Iso Value | IsoValue | Dual contouring on the interpolated voxel grid using the given ISO value. Consider using WEMIsoSurface as an alternative to this mode. |
Level Set | LevelSet | Every voxel value != 0 is treated as foreground and every voxel value == 0 as background. This topology mask is used to create a level set which is closed/dilated/filtered. Finally a mesh is created using dual contouring on the level set.
To select an object in a more complex intput image, use a module like IntervalThreshold to map the object that you want to 1 and the background to 0. |
Adaptivity¶
-
name:
adaptivity
, type:
Double
, default:
1
¶ Defines the adaptivity of the resulting mesh. Adaptivity == 0 means that all triangles are created at the highest resolution, while adaptivity == 1 reduces the mesh to the maximum that is supported by OpenVDB.
Build Edges¶
-
name:
buildEdges
, type:
Bool
, default:
TRUE
¶ Enables generation of the edge connectivity.
Closing Iterations¶
-
name:
closingIterations
, type:
Integer
, default:
1
¶ The number of closing iterations. At least one iteration should be used.
Dilate Iterations¶
-
name:
dilateIterations
, type:
Integer
, default:
0
¶ The number of dilation iterations.