Purpose

The module Rank implements the rank based kernel filters Min, Max, Median, Rank and Index.

Optionally a threshold interval can be used to select a subset of voxels of the input image to which the filtering is applied. Another threshold interval can be used to limit the set of voxels under a kernel used to produce a filtered voxel. By using these intervals filtering can be applied selectively to regions in the image. Also the influence of certain objects to the filtering itself can be avoided by excluding the corresponding voxels from the kernel.

Windows

Default Panel

../../../Modules/ML/MLKernel/mhelp/Images/Screenshots/Rank._default.png

Input Fields

input0

name: input0, type: Image

Output Fields

output0

name: output0, type: Image

Parameter Fields

Visible Fields

Border Handling

name: borderHandling, type: Enum, default: PadSrcClamp, deprecated name: edgeMode

Defines the border handling mode.

See Border Handling in Kernel Operations for details.

Values:

Title Name
No Pad NoPad
Pad Src Fill PadSrcFill
Pad Dst Fill PadDstFill
Pad Dst Fill With Orig PadDstFillWithOrig
Pad Src Undefined PadSrcUndefined
Pad Dst Undefined PadDstUndefined
Pad Src Clamp PadSrcClamp

Fill Value

name: fillValue, type: Double, default: 0

Sets the fill value for certain Border Handling modes.

Use (filterMode)

name: filterMode, type: Enum, default: Median

Defines the filter mode of this module.

Values:

Title Name Description
Id Id Copies the input image.
Rank Rank

Sorts upwards all input voxels under kernel elements and outputs the one specified via the Rank field.

If the value in the Rank field is greater than the number of elements in the sorted list (kernel size), the highest value of the list is used.

Min Min Writes the minimum of all input voxels under kernel elements to the output.
Median Median Sorts all input voxels under kernel elements in an ascending manner and writes the middle one to the output image.
Max Max Writes the maximum of all input voxels under kernel elements to the output.
Index Index

Sorts all input voxels under kernel elements in an ascending manner and writes the index of the position of the current voxel to the output.

In case that multiple voxels under the kernel have the same value as the center one the rank field is used as a relative percentage parameter to decide which of the indices belonging to the same value will be written.

Therefore the formula:

index = floor(0.5 + minIdx + rank / 100.0 * (maxIdx - minIdx))

is used.

E.g. if there are 10 voxels with the same value as the center voxel under a 27 neighborhood kernel (including the center) and the first / last index is 12 resp. 21 then if rank = 0 the output is 12, if rank = 100 the output is 21 and if rank = 20 the output is 14.

This mode with appropriate use of the Rank as a percentage can be useful in combination with an interval thresholding to find the equivalent of local minima or maxima in a quantized image.

Max-Min Max-Min Computes the morphological edge image result you would get from a macro computing the difference of two Rank filters in max and min mode and output set to original data type and appropriate [0 max-min] range, but about 30-40% faster and with fewer modules / pages involved.

Rank

name: rank, type: Integer, default: 0, deprecated name: Rank

Sets the rank value used in the Rank and in the Index filters. In Rank mode, this value is the index (range 0..kernel size-1), while in Index mode, it is in percent (range 0..100, since the number of elements to select from is not predetermined).

KernelX

name: kernelX, type: Integer, default: 3, minimum: 1, maximum: 999

Sets the x-extent of the kernel.

KernelY

name: kernelY, type: Integer, default: 3, minimum: 1, maximum: 999

Sets the y-extent of the kernel.

KernelZ

name: kernelZ, type: Integer, default: 1, minimum: 1, maximum: 999

Sets the z-extent of the kernel.

KernelC

name: kernelC, type: Integer, default: 1, minimum: 1, maximum: 999

Sets the c-extent of the kernel.

KernelT

name: kernelT, type: Integer, default: 1, minimum: 1, maximum: 999

Sets the t-extent of the kernel.

KernelU

name: kernelU, type: Integer, default: 1, minimum: 1, maximum: 999

Sets the u-extent of the kernel.

Make kernel spherical

name: makeSpherical, type: Bool, default: FALSE

If checked, the used kernel is a spherical kernel, not a rectangular one.

Min (intervalMinOfFilteredVoxels)

name: intervalMinOfFilteredVoxels, type: Double, default: 0, deprecated name: ImageIntervalMin

Sets the minimum value threshold for outputting a subset of voxel.

Max (intervalMaxOfFilteredVoxels)

name: intervalMaxOfFilteredVoxels, type: Double, default: 1024, deprecated name: ImageIntervalMax

Sets the maximum value threshold for outputting a subset of voxel.

Use (useIntervalOfFilteredVoxels)

name: useIntervalOfFilteredVoxels, type: Bool, default: FALSE, deprecated name: UseImageInterval

If checked, the module outputs only on a subset of voxels defined by a value range.

Min (intervalMinOfVoxelsForFiltering)

name: intervalMinOfVoxelsForFiltering, type: Double, default: 0, deprecated name: KernelIntervalMin

Sets the minimum value threshold for operating on a subset of voxel.

Max (intervalMaxOfVoxelsForFiltering)

name: intervalMaxOfVoxelsForFiltering, type: Double, default: 1024, deprecated name: KernelIntervalMax

Sets the maximum value threshold for operating on a subset of voxel.

Use (useIntervalOfVoxelsForFiltering)

name: useIntervalOfVoxelsForFiltering, type: Bool, default: FALSE, deprecated name: UseKernelInterval

If checked, the module operates only on a subset of voxels defined by a value range.

External Kernel

name: externalKernel, type: String, deprecated name: kernelInput

Sets an external kernel as a string.

Use the module KernelEditor for editing the kernel or set the kernel by scripting.

Use (useExternalKernel)

name: useExternalKernel, type: Bool, default: FALSE, deprecated name: UseKernelInput

If checked, the optionally attached External Kernel is used.

Info

name: kernelInfo, type: String, persistent: no

Shows information about the used kernel.

Hidden Fields

referenceExtentMode

name: referenceExtentMode, type: Enum, default: Overlap

Values:

Title Name
Overlap Overlap
Input0 Ext Without Fill Input0_ExtWithoutFill
Input0 Ext With Fill Input0_ExtWithFill
Max Extents Without Fill MaxExtentsWithoutFill
Max Extents With Fill MaxExtentsWithFill

useRank

name: useRank, type: Bool, default: FALSE, deprecated name: useRankFld