Finding/calculating area after edge detection

Hi, I am a new MATLAB user. I am working on this image . The objectives are: a) to separate/detect the droplets and ligaments, b) find out dimensions (centre, area, diameter for drops, length for ligaments) of drops and ligaments. To simplify, I am currently working on the drops only. I am done with the detection of drops.
I = imread('test_17.tif');
figure, imshow(I)
bw1 = im2bw(I, graythresh(I));
figure, imshow(bw1)
D = -bwdist(~bw1);
figure, imshow(D,[])
Ld = watershed(D);
figure, imshow(label2rgb(Ld))
bw4 = bw1;
bw4(Ld == 0) = 0;
figure, imshow(bw4)
mask = imextendedmin(D,2);
figure, imshowpair(bw1,mask,'blend')
D2 = imimposemin(D,mask);
Ld2 = watershed(D2);
bw5 = bw1;
bw5(Ld2 == 0) = 0;
figure, imshow(bw5)
bw6 = edge(bw5,'log'); %detect edges with Laplacian of Gaussian
figure, imshow(bw6)
bw7 = imfill(bw6,'holes');
figure, imshow(bw7)
Now, I am stuck with finding out the centres, areas and diameters of the all the drops. Also, any other suggestion to improve the code is welcome.

2 comentarios

KALYAN ACHARJYA
KALYAN ACHARJYA el 13 de Sept. de 2018
Can you attach the resultant image? Area: Just count the number of segmented pixels wrt image size?

Iniciar sesión para comentar.

 Respuesta aceptada

AMAR P
AMAR P el 25 de Sept. de 2018
Editada: AMAR P el 25 de Sept. de 2018
Hi, Use below function, available in Image Processing Toolbox
regionprops()
to find the objects and their properties in the image.

Más respuestas (0)

Categorías

Productos

Versión

R2016b

Preguntada:

el 13 de Sept. de 2018

Comentada:

el 8 de Oct. de 2018

Community Treasure Hunt

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

Start Hunting!

Translated by