Finding/calculating area after edge detection

20 Ansichten (letzte 30 Tage)
Hudson Hornet
Hudson Hornet am 13 Sep. 2018
Kommentiert: Hudson Hornet am 8 Okt. 2018
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 Kommentare
KALYAN ACHARJYA
KALYAN ACHARJYA am 13 Sep. 2018
Can you attach the resultant image? Area: Just count the number of segmented pixels wrt image size?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

AMAR P
AMAR P am 25 Sep. 2018
Bearbeitet: AMAR P am 25 Sep. 2018
Hi, Use below function, available in Image Processing Toolbox
regionprops()
to find the objects and their properties in the image.

Weitere Antworten (0)

Kategorien

Mehr zu Image Processing Toolbox finden Sie in Help Center und File Exchange

Produkte


Version

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by