TextureFilter¶
-
MLModule
¶ genre Filters
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll MLFilter2
definition mlFilter2.def see also ExtendedConvolution
,Compass
,Convolution
,Roberts
keywords TextureFilterOp
,Convolution
,Average
,variance
,correlation
,inverse
,difference
,moment
,sum
,entropie
,contrast
,homogeneity
,occurrence
,matrix
,run
,length
,percentage
,short
,long
,emphasis
,skewness
,kurtosis
,grey
,level
,non-uniformity
Purpose¶
The module TextureFilter
provides a variety of texture filters.
Most of them work with a co-occurrence matrix (CCM). The neighbor of a voxel is considered with the help of a kernel. The values of the kernel are not significant; only the size of the kernel is important. It is possible to create a kernel in the user interface or to use a kernel from another module and connect it to the kernel input field.
Usage¶
It is necessary to create a kernel directly through the user interface or by connecting from another module to the Kernel Input
field. If the kernel is provided from another module, empty fields will be filled up with the value given in Fill Value
. Note that the values of the kernel are not important; only the extension of the kernel is.
In most filter modes, it makes no sense to use a circular kernel or similar configurations where values of the kernel are not defined, so the filling of undefined values will happen automatically.
It is possible to choose between different filter modes. All except for the Average Filter, the Contrast Filter, and the Deviation Filter work with a special matrix. In these cases, it is necessary to choose a scale factor with Scale Select
and a co-occurrence matrix. Note that a scale factor of 256 and higher takes very long to calculate, and the results may be non-satisfactory.
For run-length matrix-based filters, it is also necessary to select which neighbor shall be considered (field Neighbour Select
).
Parameter Fields¶
Field Index¶
Adjust min and max Values : Bool |
Edge Mode : Enum |
Neighbour Select : Enum |
Adjust Values : Trigger |
extentInput : Bool |
neighbourSelectOn : Bool |
Apply : Trigger |
Fill Value : Double |
noFilter : Bool |
Auto Apply : Bool |
Filter Select : Enum |
referenceExtentMode : Enum |
borderHandling : Enum |
Get Current Values : Trigger |
Scale Select : Enum |
c Coordinate : Integer |
Input Select : Enum |
scaleSelectOn : Bool |
Current Selected Filter : String |
Kernel Info : String |
t Coordinate : Integer |
Deviance : Double |
Kernel Input : String |
u Coordinate : Integer |
devianceOn : Bool |
maxDistance : Integer |
x Coordinate : Integer |
Distance : Integer |
maxValue : Double |
y Coordinate : Integer |
distanceOn : Bool |
minValue : Double |
z Coordinate : Integer |
Visible Fields¶
Fill Value¶
-
name:
fillValue
, type:
Double
, default:
0
¶ Sets the fill value for undefined kernel values.
Edge Mode¶
-
name:
edgeMode
, type:
Enum
, default:
PadSrcClamp
¶ Defines the edge mode for kernel operations.
See
Kernel
for more 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 |
Kernel Info¶
-
name:
kernelInfo
, type:
String
, persistent:
no
¶ Shows information about the current kernel.
Input Select¶
-
name:
inputSelect
, type:
Enum
, default:
use Extent Input
¶ Defines from where the kernel input is set.
Values:
Title | Name | Description |
---|---|---|
Kernel Input | use Kernel Input | The kernel extent is set by the kernel string in Kernel Input . |
Extent Input | use Extent Input | The kernel extent is set explicitly with x Coordinate to u Coordinate . |
Filter Select¶
-
name:
filterSelect
, type:
Enum
, default:
No Filter
¶ Defines which filter the module will use.
Values:
Title | Name | Description |
---|---|---|
No Filter | No Filter | The output image is an identical copy of the input image. ![]() |
Average (simple) | Average (simple) | ![]() |
Contrast (simple) | Contrast (simple) | ![]() |
Deviation (simple) | Deviation (simple) | ![]() |
Skewness (simple) | Skewness (simple) | ![]() |
Kurtosis (simple) | Kurtosis (simple) | ![]() |
Homogeneity(asm) (Co-ocurrence Matrix) | Homogeneity(asm) (Co-ocurrence Matrix) | ![]() |
Contrast (Co-ocurrence Matrix) | Contrast (Co-ocurrence Matrix) | ![]() |
Correlation (Co-ocurrence Matrix) | Correlation (Co-ocurrence Matrix) | ![]() |
Variance (Co-ocurrence Matrix) | Variance (Co-ocurrence Matrix) | ![]() |
Inverse Difference Moment (Co-ocurrence Matrix) | Inverse Difference Moment (Co-ocurrence Matrix) | ![]() |
Sum Average (Co-ocurrence Matrix) | Sum Average (Co-ocurrence Matrix) | ![]() |
Sum Entropie (Co-ocurrence Matrix) | Sum Entropie (Co-ocurrence Matrix) | ![]() |
Sum Variance (Co-ocurrence Matrix) | Sum Variance (Co-ocurrence Matrix) | ![]() |
Entropie (Co-ocurrence Matrix) | Entropie (Co-ocurrence Matrix) | ![]() |
Difference Variance (Co-ocurrence Matrix) | Difference Variance (Co-ocurrence Matrix) | ![]() |
Difference Entropie (Co-ocurrence Matrix) | Difference Entropie (Co-ocurrence Matrix) | ![]() |
Measures of Correlation1 (Co-ocurrence Matrix) | Measures of Correlation1 (Co-ocurrence Matrix) | ![]() |
Measures of Correlation2 (Co-ocurrence Matrix) | Measures of Correlation2 (Co-ocurrence Matrix) | ![]() |
Short Runs Emphasis (Run Length Matrix) | Short Runs Emphasis (Run Length Matrix) | ![]() |
Long Runs Emphasis (Run Length Matrix) | Long Runs Emphasis (Run Length Matrix) | ![]() |
Grey Level Nonuniformity (Run Length Matrix) | Grey Level Nonuniformity (Run Length Matrix) | Squares the number of runs per gray level interval and divides the sum of the squares by the total number of runs. If the distribution of runs is even over all gray levels, this function gets its lowest value. ![]() |
Run Length Nonuniformity (Run Length Matrix) | Run Length Nonuniformity (Run Length Matrix) | Squares the number of runs with run-length l and divides the sum of the squares by the total number of runs. If the distribution of runs is even over all run-lengths, this function gets its lowest value. ![]() |
Run Percentage (Run Length Matrix) | Run Percentage (Run Length Matrix) | This function sets the absolute number of runs in relation to the maximum number which is possible if all runs have the length 1. This maximum number corresponds with the number of considered image points. This function gets its lowest value for textures with overwhelming rectilinear structures. ![]() |
Small Number Emphasis (NGLDM) | Small Number Emphasis (NGLDM) | (neighboring gray level dependence matrix based filter) ![]() |
Large Number Emphasis (NGLDM) | Large Number Emphasis (NGLDM) | (neighboring gray level dependence matrix based filter) ![]() |
Number Nonuniformity (NGLDM) | Number Nonuniformity (NGLDM) | (neighboring gray level dependence matrix based filter) ![]() |
Second Moment (NGLDM) | Second Moment (NGLDM) | (neighboring gray level dependence matrix based filter) ![]() |
Entropie (NGLDM) | Entropie (NGLDM) | (neighboring gray level dependence matrix based filter) ![]() |
Coarseness (NGTDM) | Coarseness (NGTDM) | (neighboring gray tone difference matrix based filter) ![]() |
Contrast (NGTDM) | Contrast (NGTDM) | (neighboring gray tone difference matrix based filter) ![]() |
Busyness (NGTDM) | Busyness (NGTDM) | (neighboring gray tone difference matrix based filter) ![]() |
Complexity (NGTDM) | Complexity (NGTDM) | (neighboring gray tone difference matrix based filter) ![]() |
Texture Strength (NGTDM) | Texture Strength (NGTDM) | (neighboring gray tone difference matrix based filter) ![]() |
Scale Select¶
-
name:
scaleSelect
, type:
Enum
, default:
factor 16
¶ Defines the number of bins for internal computation. Only available for non-trivial filters.
All gray values of the input images are sorted to the number of bins defined here.
The more bins, the longer the computation takes, but the better the result will be.
Values:
Title | Name |
---|---|
8 | factor 8 |
16 | factor 16 |
32 | factor 32 |
64 | factor 64 |
128 | factor 128 |
256 | factor 256 |
512 | factor 512 |
1024 | factor 1024 |
2048 | factor 2048 |
4096 | factor 4096 |
Neighbour Select¶
-
name:
neighbourSelect
, type:
Enum
, default:
0 Degree (x+,y)
¶ Defines which neighboring voxels of the current voxel are taken into account.
Only available for non-trivial filters.
Values:
Title | Name | Description |
---|---|---|
0 Degree (x+,y) | 0 Degree (x+,y) | The right neighbor of the considered value will be used for matrix calculation (x+,y). |
45 Degree (x+,y+) | 45 Degree (x+,y+) | The right upper neighbor of the considered value will be used for matrix calculation (x+,y+). |
90 Degree (x,y+) | 90 Degree (x,y+) | The upper neighbor of the considered value will be used for matrix calculation (x,y+). |
135 Degree (x-,y-) | 135 Degree (x-,y-) | The upper left neighbor of the considered value will be used for matrix calculation (x-,y-). |
use Average of All 2D | use Average of All 2D | The average of the 2D results will be calculated. |
Upper (x,y,z+) | Upper (x,y,z+) | The neighbor in the z direction of the considered value will be used for matrix calculation (x,y,z+). |
Upper Right (x+,y,z+) | Upper Right (x+,y,z+) | The neighbor in the x and z direction of the considered value will be used for matrix calculation (x+,y,z+). |
Upper Head (x,y+,z+) | Upper Head (x,y+,z+) | The neighbor in the y and z direction of the considered value will be used for matrix calculation (x+,y,z+). |
use Average of All 3D | use Average of All 3D | The average of the 3D results will be calculated. |
use Average of All | use Average of All | The average of the 2D and 3D results will be calculated. |
Distance¶
-
name:
distance
, type:
Integer
, default:
1
, minimum:
1
, maximum:
:field:`maxDistance`
¶ Sets the radius around a current voxel in which values are considered for the computation.
Only available for NGLDM and NGTDM based algorithms.
Deviance¶
-
name:
deviance
, type:
Double
, default:
0
, minimum:
0
, maximum:
50
¶ Sets the difference value of a neighboring voxel to the current voxel value to be considered in a computation.
Only available in NGLDM based algorithms.
x Coordinate¶
-
name:
xCoordExt
, type:
Integer
, default:
3
, minimum:
1
, maximum:
100
¶ Sets the extent of the kernel in the x direction.
y Coordinate¶
-
name:
yCoordExt
, type:
Integer
, default:
3
, minimum:
1
, maximum:
100
¶ Sets the extent of the kernel in the y direction.
z Coordinate¶
-
name:
zCoordExt
, type:
Integer
, default:
1
, minimum:
1
, maximum:
100
¶ Sets the extent of the kernel in the z direction.
c Coordinate¶
-
name:
cCoordExt
, type:
Integer
, default:
1
, minimum:
1
, maximum:
100
¶ Sets the extent of the kernel in the c direction.
t Coordinate¶
-
name:
tCoordExt
, type:
Integer
, default:
1
, minimum:
1
, maximum:
100
¶ Sets the extent of the kernel in the t direction.
u Coordinate¶
-
name:
uCoordExt
, type:
Integer
, default:
1
, minimum:
1
, maximum:
100
¶ Sets the extent of the kernel in the u direction.
Auto Apply¶
-
name:
autoApply
, type:
Bool
, default:
TRUE
¶ If checked, all changes to any field cause the module to compute anew.
Adjust min and max Values¶
minValue¶
-
name:
minValue
, type:
Double
, default:
0
¶ Sets the minimum value of the output image manually.
maxValue¶
-
name:
maxValue
, type:
Double
, default:
0
¶ Sets the maximum value of the output image manually.