How to calculate solidity of different shapes

N
naila · Dec 29, 2023 · 1.9K views
Question
I have an image which contains different shapes:     I want to calculate the solidity of each shape individually and pick the one which has greatest solidity;   Can any one help me regarding this?  
Expert Answer
Profile picture of Prashant Kumar
Prashant Kumar PhD Expert
Answered Aug 19, 2026
Did you use regionprops() to get all of them? If so, then just sort
 
 
% Label the binary image.
labeledImage = bwlabel(binaryImage);
% Measure the solidity of all the blobs.
measurements = regionprops(labeledImage, 'Solidity');
% Sort in oder of decreasing solidity.
[sortedS, sortIndexes] = sort([measurements.Solidity], 'descend');
% Get the solidity of the most solid blob
highestSolidity = sortedS(1);
% Get the label of the most solid blob
labelWithHighestSolidity = sortIndexes(1);

 

Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!