skimage2.filters.frangi#
- skimage2.filters.frangi(image, sigmas=range(1, 10, 2), scale_range=None, scale_step=None, alpha=0.5, beta=0.5, gamma=None, black_ridges=True, mode='reflect', cval=0)[source]#
Filter an image with the Frangi vesselness filter.
This filter can be used to detect continuous ridges, e.g. vessels, wrinkles, rivers. It can be used to calculate the fraction of the whole image containing such objects.
Defined only for 2-D and 3-D images. Calculates the eigenvalues of the Hessian to compute the similarity of an image region to vessels, according to the method described in [1].
- Parameters:
- image(M, N[, P]) ndarray
Array with input image data.
- sigmasiterable of floats, optional
Sigmas used as scales of filter, i.e., np.arange(scale_range[0], scale_range[1], scale_step)
- scale_range2-tuple of floats, optional
The range of sigmas used.
- scale_stepfloat, optional
Step size between sigmas.
- alphafloat, optional
Frangi correction constant that adjusts the filterâs sensitivity to deviation from a plate-like structure.
- betafloat, optional
Frangi correction constant that adjusts the filterâs sensitivity to deviation from a blob-like structure.
- gammafloat, optional
Frangi correction constant that adjusts the filterâs sensitivity to areas of high variance/texture/structure.
Changed in version 0.20: The default, None, uses half of the maximum Hessian norm.
- black_ridgesbool, optional
When True (the default), the filter detects black ridges; when False, it detects white ridges.
- mode{âconstantâ, âreflectâ, âwrapâ, ânearestâ, âmirrorâ}, optional
How to handle values outside the image borders.
- cvalfloat, optional
Used in conjunction with mode âconstantâ, the value outside the image boundaries.
- Returns:
- out(M, N[, P]) ndarray
Filtered image (maximum of pixels across all scales).
Changed in version 0.20: The implementation got rewritten and gives different output values wrt the previous implementation (backwards incompatible change). The filter is now set to zero whenever one of the Hessian eigenvalues has a sign which is incompatible with a ridge of the desired polarity.
Notes
Earlier versions of this filter were implemented by Marc Schrijver, (November 2001), D. J. Kroon, University of Twente (May 2009) [2], and D. G. Ellis (January 2017) [3].
References
[1]Frangi, A. F., Niessen, W. J., Vincken, K. L., & Viergever, M. A. (1998,). Multiscale vessel enhancement filtering. In International Conference on Medical Image Computing and Computer-Assisted Intervention (pp. 130-137). Springer Berlin Heidelberg. DOI:10.1007/BFb0056195
[2]Kroon, D. J.: Hessian based Frangi vesselness filter.
[3]Ellis, D. G.: ellisdg/frangi3d