Project: Eye Fundus Image Segmentation
Published:
Python implementation of vasculature segmentation on retina image based on the Hoover’s and Jiang’s works.
Approach: Matched Filter with First-Order Derivative of Gaussian (FDoG) and Genetic Algorithm (GA) Optimization
This approach is based on Zhang’s work.
Usage
python mfr.py RETINAL_IMAGE MASK_IMAGE
Note: the mask image represents the outside area.
Optional: To obtain a better set of hyper-parameters, I also provide the code of genetic algorithm for parameter optimization.
python ga.py RETINAL_IMAGE GROUND_TRUTH_IMAGE
Results (Image from DRIVE database)
Original image.
.
Result of Gaussian Matched Filter.
.
Result of First Order Derivative of Gaussian.
.
Final segmentation.
.
Approach: Piecewise Threshold Probing of the Matched Filter Response
This approach is based on Hoover’s work.
Usage
python thprobing.py RESULT_OF_GAUSSIAN_MATCHED_FILTER
Note: to implement this algorithm, you need to obtain the Gaussian matched filter result from first algorithm (the second output from mfr.py).
Results (Image from DRIVE database)
Ground truth image.
Generate vessels from probes (the blue dots).
Dataset
I suggest DRIVE database, since it provides the retina image, ground truth and mask images.
Looking for code? Here is the link to the repository in my Github.
Leave a Comment