Enhance elongated or tubular structures in image
B = fibermetric(A)
B = fibermetric(A,thickness)
B = fibermetric(___,Name,Value)
B = fibermetric(___, enhances
the tubular structures in the image using name-value pairs to control
different aspects of the filtering algorithm.
Read an image into the workspace that contains tubular structures of varying thicknesses, and display it.
A = imread('threads.png'); imshow(A)
Create an enhanced version of the image that highlights threads that are seven pixels thick, and display it.
B = fibermetric(A, 7, 'ObjectPolarity', 'dark', 'StructureSensitivity', 7); figure; imshow(B); title('Possible tubular structures 7 pixels thick')
Threshold the enhanced image to create a binary mask image containing the threads with the specified thickness.
C = B > 0.15; figure; imshow(C); title('Thresholded result')
A— 2-D grayscale image
2-D grayscale image, specified as a nonsparse numeric array.
thickness— Thickness of tubular structures
Thickness of tubular structures, specified as a scalar or vector, measured in pixels. Specify a value on the order of the width of the tubular structures in the image.
comma-separated pairs of
the argument name and
Value is the corresponding value.
Name must appear inside single quotes (
' '). You can
specify several name and value pair arguments in any order as
B = fibermetric(A,'StructureSensitivity',15)
'StructureSensitivity'— Threshold for differentiating the tubular structure from the background
Threshold for differentiating the tubular structure from the
background, specified as the comma-separated pair consisting of
a numeric scalar. The value depends on the grayscale range of the
'ObjectPolarity'— Polarity of the tubular structures with the background
Polarity of the tubular structures with the background, specified as the comma-separated pair
'ObjectPolarity' and one of the
following strings or character vectors.
|Structure is brighter than the background.|
|Structure is darker than the background.|
B— Output image
Output image, returned as a numeric array the same size as the
input image of class
fibermetric function does not
perform segmentation. The function enhances an image to highlight
structures and is typically used as a preprocessing step for segmentation.
 Frangi, Alejandro F., et al. Multiscale vessel enhancement filtering. Medical Image Computing and Computer-Assisted Intervention—MICCAI’98. Springer Berlin Heidelberg, 1998. 130-137.