How to measure circularity??

19 Ansichten (letzte 30 Tage)
Nisreen Sulayman
Nisreen Sulayman am 20 Dez. 2014
Beantwortet: yousra zafar am 21 Nov. 2019
How to measure circularity ? What is wrong in this code?
CC=bwconncomp(BW); %BW binary image
labeled=labelmatrix(CC);
stats = regionprops(CC, 'all');
stats.circularity = ((stats.Perimeter) .^2 )./ (4*(pi*(stats.Area)))
  1 Kommentar
Nisreen Sulayman
Nisreen Sulayman am 21 Dez. 2014
what are the all possible features I can use to pick the smallest circular-like component ??

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Image Analyst
Image Analyst am 20 Dez. 2014
You didn't use brackets. Try it this way
allPerimeters = [stats.Perimeter];
allAreas = [stats.Area];
allCircularities = allPerimeters .^ 2 ./ (4 * pi* allAreas);
  12 Kommentare
Image Analyst
Image Analyst am 22 Dez. 2014
You're welcome. My email is not necessary.
Hossain Md Shakhawat
Hossain Md Shakhawat am 20 Nov. 2016
How can I find the glcm features for the detected blobs.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (6)

Matt J
Matt J am 21 Dez. 2014
It might also be useful to check whether the Eccentricity and Solidity of a region are above a certain threshold.
  6 Kommentare
Image Analyst
Image Analyst am 22 Dez. 2014
You can look at my code in my answer where the blobs are labeled with their number in the first figure, and then each blob is cropped out to a separate image with the blob number in the title above the blob.
Nisreen Sulayman
Nisreen Sulayman am 22 Dez. 2014
Bearbeitet: Nisreen Sulayman am 23 Dez. 2014
thank you very much ... thank you

Melden Sie sich an, um zu kommentieren.


Nisreen Sulayman
Nisreen Sulayman am 19 Jan. 2015
Hi Mr. Image Analyst,
I am working on the code that you have written "test.m", I want to display more properties of the blobs in the image ... 'MajorAxisLength', 'MinorAxisLength', 'Orientation' ... After that I want to copy these values to a doc file
I have modified the code but it didn't work
  12 Kommentare
Image Analyst
Image Analyst am 21 Jan. 2015
First segment the image to get a binary mask of that thing. Then mask it
red = grayImage;
red(mask) = 255;
green = grayImage;
green(mask) = 0;
blue = grayImage;
blue(mask) = 0;
rgbImage = cat(3, red, green, blue);
imshow(rgbImage);
Nisreen Sulayman
Nisreen Sulayman am 22 Jan. 2015
Thank you very much Mr. Analyst,
I am grateful for your help.

Melden Sie sich an, um zu kommentieren.


Nisreen Sulayman
Nisreen Sulayman am 19 Jan. 2015
I have apllied the code. How can I display the round objects in the original images in different color instead of drawing a circle around them???

Nisreen Sulayman
Nisreen Sulayman am 29 Jan. 2015
Bearbeitet: Nisreen Sulayman am 29 Jan. 2015
How can I index images according to the resulted segmented image? Is there any thing related to build a database using MATLAB?
Any example or link about this?
  7 Kommentare
murk hassan memon
murk hassan memon am 4 Apr. 2018
stats.circularity = ((stats.Perimeter) .^2 )./ (4*(pi*(stats.Area))) i am getting an error of this sign ^ as such the error is too many input argument.. is there any other method to find the circularity ? if yes? then kindly help me out
Matt J
Matt J am 4 Apr. 2018
@murk,
You have multiple objects in "stats" so you need to do something like,
result = ([stats.Perimeter] .^2 )./ (4*(pi*[stats.Area]))

Melden Sie sich an, um zu kommentieren.


Souhardya Roy
Souhardya Roy am 6 Jul. 2018
The formula is inverse of what is given.
  2 Kommentare
yousra zafar
yousra zafar am 19 Nov. 2019
can you share the code for finding circular objects . i am also working on aneurysm detection. any guidance from your side will he highly appreciated
Image Analyst
Image Analyst am 19 Nov. 2019

Melden Sie sich an, um zu kommentieren.


yousra zafar
yousra zafar am 21 Nov. 2019
i,m unable to run the code text.m attcahed above, getting error : file not found , can you share with me the image C:\Users\Rose\Documents\Temporary\im.jpg

Community Treasure Hunt

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

Start Hunting!

Translated by