Fast Marching# Fast Marching

Class: NodeFastMarching

Node Icon

The fast marching method is a simple form of level-set evolution where only a positive speed term is used to govern the differential equation. The resulting level-set contour only grows over time. Practically, this algorithm can be used as an advanced region growing segmentation which is controlled by a speed image.

A good propagation speed image for segmentation is close to zero near object boundaries and relatively high in between.

The fast marching filter is initiated with an seed point or mask, which generates trial points. The trial points are the starting location of the level-set. The output of the fast marching filter is a time-crossing map that indicate the time of arrival of the propagated level-set front.

Example Workflows

Fast Marching example

Inputs

Speed Image

The speed image should have values ~0 close to edges and relativly high inbetween. Usually a gradient magnitude filter followed by a sigmoid filter are appropriate.

Type: Image4DFloat, Required, Single

Seed Mask

The seed mask describes the initial level set.

Type: Image4DBool, Optional, Single

Outputs

Output

The time crossing map produced by the fast marching filter. By thresholding the time-crossing map, different segmentations can be produced.

Type: Image4DFloat

Settings

Settings

Stopping Value Number

The algorithm can be terminated early by setting an appropriate stopping value. The algorithm terminates when the current arrival time being processed is greater than the stopping value.

Seed

Seed Voxel X Integer

Seed voxel X position.

Seed Voxel Y Integer

Seed voxel Y position.

Seed Voxel Z Integer

Seed voxel Z position.

Result

Set Infinity To Number

If the algorithm is stopped early, voxels which have not been reached by the fast marching front will have value Inf. This can be difficult to visualise, therefore choose an appropriate value to be assigned to Inf voxels.

References

See also

Keywords: