List of my modules...
Module: Edge_Response
Description:
This compute module generates a 3D initial edge response map according to the SUSAN algorithm (Smallest Univalue Segment Assimilating Nucleus) 1. For the time being, for each voxel in the input image, it procedes in two steps :
- Firstly, it examines the neighbourhood of the considered voxel (the 26-neighbourhood is used, i.e. a 3x3x3 mask), and counts the number of voxels in that set which have a similar brightness (i.e. a neighbour voxel is counted if the absolute value of the difference between its brightness and the centre voxel's brightness is below or equal to the brightness threshold (see the module's ports)). This set of voxels contained in the neighbourhood is called the USAN area.
- Second, a conditional substraction is made to find the initial edge response of the considered voxel : if the USAN area (in number of voxels) is lower than or equal to the geometric threshold (see the module's ports), then its edge response will be equal to the difference between this threshold and the USAN area. Otherwise, its edge response is zero.
For example, the image on the left is processed with a brightness threshold of 25 and a geometric threshold of 20, which results in the image on the right.
NOTE:
The edge response for border voxels is, by convention, always considered to be zero. This means that in a 2D image (i.e. a 3D image of depth 1), none of the pixels will be considered an edge.
Connections:
Image
[required]
From this port, the input image is retrieved. For now, the only input type that has been implemented is HxUniformScalarField3.
Ports:
Brightness threshold

This is the threshold used in the first step of the algorithm. For the examined voxel, a neighbouring voxel is considered to be in the same region of the image if their brightness is similar, i.e. their intensities differ at most by the brightness threshold.
Geometric threshold

This threshold is used in the second part of the algorithm. Its default value is the optimal value to detect edges. For sharp angles, it should be set to around 13, and for corners, a good value is around 5.
Compute

Pressing this button starts the computation.
Commands:
Additional options can be accessed when typing in the console Edge_Response COMMAND_NAME.
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 [Edge_Response create].
References:
1 Smith, S. & Brady, J. (1997). SUSAN - A new approach to low level image processing. International Journal of Computer Vision, vol .23, pp. 45-78.