How to measure circularity??
    9 views (last 30 days)
  
       Show older comments
    
    Nisreen Sulayman
 on 20 Dec 2014
  
    
    
    
    
    Answered: yousra zafar
 on 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)))

Accepted Answer
  Image Analyst
      
      
 on 20 Dec 2014
        You didn't use brackets. Try it this way
allPerimeters = [stats.Perimeter];
allAreas = [stats.Area];
allCircularities = allPerimeters  .^ 2 ./ (4 * pi* allAreas);
12 Comments
More Answers (6)
  Matt J
      
      
 on 21 Dec 2014
        It might also be useful to check whether the Eccentricity and Solidity of a region are above a certain threshold.
6 Comments
  Image Analyst
      
      
 on 22 Dec 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
 on 19 Jan 2015
        12 Comments
  Image Analyst
      
      
 on 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
 on 29 Jan 2015
        
      Edited: Nisreen Sulayman
 on 29 Jan 2015
  
      7 Comments
  murk hassan memon
 on 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
      
      
 on 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]))
  Souhardya Roy
 on 6 Jul 2018
        The formula is inverse of what is given.
2 Comments
  yousra zafar
 on 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
  yousra zafar
 on 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
0 Comments
See Also
Categories
				Find more on Display and Exploration in Help Center and File Exchange
			
	Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





