How to apply region growing for candidates?

2 visualizzazioni (ultimi 30 giorni)
I have been working on the diabetic retinopathy and currently implementing a paper named " Detection of microaneurysms using multi-scale correlation coefficients " by Bob Zhang and others.The link for the paper is :https://www.sciencedirect.com/science/article/abs/pii/S003132031000004X
I have to apply region growing for the candidates(the white spots present in the above image) so that the output should look like the below image where the candidates shape and size are grown by region growing.
In the paper, It is mentioned that In the region growing, the background image Ibg can be obtained by applying a median filter of size 25x25 to green channel image Igreen. A threshold 't' is calculated using the equation
t = Idarkest - 0.5(Idarkest - ibg)
where Idarkest denotes the lowest intensity for each candidate region in the Igreen, ibg is its background intensity at the same location.
Region growing starts from the point of Idarkest in each candidate region and continues until no more connected pixels are higher than threshold. Considering the size of MA is less than 120 pixels if the area of every resultant connected component is larger than 120 pixels, it will be discarded.
Can somebody help me with this?
I have attached the green channel image Igreen as 'green_sample.jpg'.
  3 Commenti
KALYAN ACHARJYA
KALYAN ACHARJYA il 6 Gen 2020
Have you applied the region growing on the first image (Binary Image)?? Why?
Krishna Chaitanya
Krishna Chaitanya il 6 Gen 2020
@KALYAN ACHARJYA As per the paper mentioned above, The White dots in the first image represent the candidate microaneurysms that need to be detected for the diagnosis of Diabetic retinopathy.However, the size and shape of these candidates may not be same as that of the true microaneursysms and hence region growing is applied to the whitedots in the first image to get output as in second image.

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 6 Gen 2020
See my attached regiongrowing program. Adapt as needed.
  5 Commenti
Rik
Rik il 8 Gen 2020
There are probably more efficient methods, but you could do it like this:
  1. use bwlabel to label all white regions
  2. use second output to loop through all labeled areas
  3. in each iteration, use L==k as a binary mask to index into your image and use mean, min, median, max, whatever to find the pixel intensity you need.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Image Processing Toolbox in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by