A tutorial on detection of retinal vessels by Gabor transform and generalized linear model.
Teng, Pang-yu. (2014). Retinal Vessel Detection by Gabor Transform and Machine Learning, a Tutorial. Zenodo. 10.5281/zenodo.17898
Soares, Joao VB, et al. "Retinal vessel segmentation using the 2-D Gabor wavelet and supervised classification." Medical Imaging, IEEE Transactions on 25.9 (2006): 1214-1222.
Sandberg, Berta, Tony Chan, and Luminita Vese. "A level-set and gabor-based active contour algorithm for segmenting textured images." UCLA Department of Mathematics CAM report. 2002. http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.7.3145
pangyuteng (2020). Retinal Vessel Detection by Gabor Transform and Machine Learning, a Tutorial (https://www.mathworks.com/matlabcentral/fileexchange/46082-retinal-vessel-detection-by-gabor-transform-and-machine-learning-a-tutorial), MATLAB Central File Exchange. Retrieved .
very nice demo.
I am very glad to see the code, and I also benefit a lot.
Is there source code of the 2006 paper(Retinal Vessel Segmentation Using the 2-D Gabor
Wavelet and Supervised Classification) available? If there is, would you like to share the link?
Thank you a lot.
Nice code and detailed explanation!
I am tryingto apply this code for DRIVE database
with twenty training images. How to form feature vector with twenty images, as it becomes a long column vector and matlab gives memory error. Should we run loop for twenty times, and then average the coefficients for Generalized linear model. Please advice.
Roberto, good catch!
Is the size of "features" correct?
It is defined as:
features = zeros([size(testingImg),numel(sigmas),numel(thetas),numel(Fs)]);
This gives a size of 196 with a lot of features equal to 0's.
However, I think it should be defined as:
features = zeros([size(testingImg),numel(sigmas),numel(Fs),numel(thetas)]);
This gives a size of 84.
Thanks for the file!
Do you use the second paper in your code? The second paper looks like leve-set using gabor filter? BTW, Do you implement the scheme in the second paper?
Elad, Thanks for the 5 stars rating!
Ashkan, you are welcome. Glad to see someone is benefiting from this.
An updated and more readable version of the same tutorial can be found at
thanks for sharing
added 'cite as'.
added example images to zip