List of my modules...
Module: Skeletonise2
Description:
Skeletonises the object using a parallel skeletonisation algorithm based on [1]. The advantage of this algorithm compared to the one in Skeletonise is that it does not need a priority map, and it makes for straighter skeletons (see comprarison below). The inconvenience is that it does not have as many options (some can be added later, some just can't, such as choice of connectivity).
Illustration of the result of a skeletonisation (produced with Draw_Cubes). The initial object is transparent, the skeleton in yellow. The left image shows the result with this module, the right with Skeletonise, using the Euclidian distance map as priority field.
Notes
- The implemented algorithm is a slightly modified version of AsymThinningScheme from [1], where step 5 and 6 are done at the same time as finding of the critical d-cliques in step 4. Although the quality of the skeleton isn't perfect, it's still fine in practice, and computation time does not suffer.
Connections:
Data
[required]
The input image, of type HxUniformScalarField3 comes in through this port.
Anchor
[optional]
Pixels that should not be touched, of type HxUniformScalarField3.
Ports:
Threshold

Used to define, along with the comparison operator, which pixels are in the object.
Comparison

Used to define how the threshold value is used for defining the object.
Threshold_anchor

Defines in Anchor image which pixels are anchors.
Comparison_anchor

Associated comparison function for the anchor image.
Options

The first option, Modify input, does what it says, skeletonises in-place. This can be useful either coupled with the second option (e.g. check the thinning one pass at a time), or for memory constraints.
The second option, Limit passes, will not repeat until stability (as defined in the reference), but just a given number of times.
Passes

If Limit passes in the previous port is toggled, this port defined the number of repetitions.
Compute

Push the button to start the computation.
Commands:
Additional options can be accessed when typing in the console Skeletonise COMMAND_NAME. Typing the command again usually reverts back to original settings.
verbose
Displays timing information after the computation. Retype to hide info.
create
Runs the computation. Returns the name of the output, so it can be used in a script, such as set RESULT [Skeletonise create].
References
[1] Skeletonization. Theory, Methods and Applications. Chapter 7 - Parallel skeletonization algorithms in the cubic grid based on critical kernels (pp. 181-209). Gilles Bertand and Michel Couprie. Academic Press. 2017.