2

For glaucoma diagnosis it is common to determine a "cup to disk ratio" which compares the diameter of the optic disk (VDD) and optic cup (VCD). The optical disk is visible as a circular red feature (red channel) and the optic cup shows up as a yellow circle (green channel). How can I calculate the diameter ratio between optic disk and optic cup?

I am able to detect the optic disk with canny edge detection, but I have not found a way to calculate the cup to disk ratio. How might I do that?

Original image:

enter image description here

VDD and VCD:

enter image description here

Benoit_11
  • 13,905
  • 2
  • 24
  • 35

1 Answers1

3

I am not familiar with the terms you mentioned. Pls check whether the following code works for you.

clc; clear all;

img = imread('vu4TL.jpg');

imgr = img(:,:,1);
imshow(imgr);
imgrb = im2bw(imgr,.99);

se = strel('disk',2);
imgrbc = imclose(imgrb,se);

[cr, rr] = imfindcircles(imgrbc,[4 100],'ObjectPolarity', ...
    'bright','Sensitivity',0.92);

imgr = img(:,:,2);
imgrb = im2bw(imgr,.99);

se = strel('disk',2);
imgrbc = imclose(imgrb,se);

[cg, rg] = imfindcircles(imgrbc,[4 100],'ObjectPolarity', ...
    'bright','Sensitivity',0.92);

imshow(img);
hr = viscircles(cr,rr);
hb = viscircles(cg,rg);

cdr = rr/rg;

fprintf('\ncdr = %f\n', cdr);

Answer:

cdr = 2.225866

Output image:

enter image description here

Huá dé ní 華得尼
  • 1,248
  • 1
  • 18
  • 33