I have fundus images which are pictures of the retina which have already been processed, and I am looking at and am trying to remove the smaller blood vessels using morphological erosion. This appears to have worked in several of the papers I have read but the details of the exact operators are not included.
I have tried various approaches, morphological opening, morphological erosion then closing, I did a little bit of hit or miss. All of my work was done using the openCV2 python library.
This is the original image.
def erode(image):
kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (3,2))
erosion = cv2.morphologyEx(image, cv2.MORPH_OPEN, kernel, iterations=1)
erosion = cv2.erode(erosion, kernel, iterations=1)
return erosion
After morphological erosion and opening:
I am hoping to get more blood vessels removed while still retaining the thicker ones, does anyone have any good ideas for me to try? Or perhaps I am approaching the morphology incorrectly?