Measure Texture measures the degree and nature of textures within objects (versus smoothness).
This module measures the variations in grayscale images. An object (or entire image) without much texture has a smooth appearance; an object or image with a lot of texture will appear rough and show a wide variety of pixel intensities.
This module can also measure textures of objects against grayscale images. Any input objects specified will have their texture measured against all input images specfied, which may lead to image-object texture combinations that are unneccesary. If you do not want this behavior, use multiple MeasureTexture modules to specify the particular image-object measures that you want.
Available measurements
Technical notes
To calculate the Haralick features, MeasureTexture normalizes the co-occurence matrix at the per-object level by basing the intensity levels of the matrix on the maximum and minimum intensity observed within each object. This is beneficial for images in which the maximum intensities of the objects vary substantially because each object will have the full complement of levels.
MeasureTexture performs a vectorized calculation of the Gabor filter, properly scaled to the size of the object being measured and covering all pixels in the object. The Gabor filter can be calculated at a user-selected number of angles by using the following algorithm to compute a score at each scale using the Gabor filter:
- Divide the half-circle from 0 to 180° by the number of desired angles. For instance, if the user chooses two angles, MeasureTexture uses 0 and 90 ° (horizontal and vertical) for the filter orientations. This is the θ value from the reference paper.
- For each angle, compute the Gabor filter for each object in the image at two phases separated by 90° in order to account for texture features whose peaks fall on even or odd quarter-wavelengths.
- Multiply the image times each Gabor filter and sum over the pixels in each object.
- Take the square root of the sum of the squares of the two filter scores. This results in one score per θ.
- Save the maximum score over all θ as the score at the desired scale.
References
- Haralick RM, Shanmugam K, Dinstein I. (1973), "Textural Features for Image Classification" IEEE Transaction on Systems Man, Cybernetics, SMC-3(6):610-621. (link)
- Gabor D. (1946). "Theory of communication" Journal of the Institute of Electrical Engineers 93:429-441. (link)
Settings:
Select an image to measure
Select the grayscale images whose texture you want to measure.
Select objects to measure
Select the objects whose texture you want to measure.
If you only want to measure the texture
for the image overall, you can remove all objects using the "Remove this object" button.
Objects specified here will have their
texture measured against all images specfied above, which
may lead to image-object combinations that are unneccesary. If you
do not want this behavior, use multiple MeasureTexture
modules to specify the particular image-object measures that you want.
Texture scale to measure
You can specify the scale of texture to be measured, in pixel units;
the texture scale is the distance between correlated intensities in the image. A
higher number for the scale of texture measures larger patterns of
texture whereas smaller numbers measure more localized patterns of
texture. It is best to measure texture on a scale smaller than your
objects' sizes, so be sure that the value entered for scale of texture is
smaller than most of your objects. For very small objects (smaller than
the scale of texture you are measuring), the texture cannot be measured
and will result in a undefined value in the output file.
Angles to measure
The Haralick texture measurements are based on the correlation
between pixels offset by the scale in one of four directions:
- Horizontal - the correlated pixel is "scale" pixels
to the right of the pixel of interest.
- Vertical - the correlated pixel is "scale" pixels
below the pixel of interest.
- Diagonal - the correlated pixel is "scale" pixels
to the right and "scale" pixels below the pixel of interest.
- Anti-diagonal - the correlated pixel is "scale"
pixels to the left and "scale" pixels below the pixel of interest.
Choose one or more directions to measure.
Measure Gabor features?
The Gabor features measure striped texture in an object, and can
take a substantial time to calculate.
Select Yes to measure the Gabor features. Select
No to skip the Gabor feature calculation if it is not
informative for your images.
Number of angles to compute for Gabor
(Used only if Gabor features are measured)
Enter the number of angles to use for each Gabor texture measurement.
The default value is 4 which detects bands in the horizontal, vertical and diagonal
orientations.