how to find the dimension of the biggest component?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
hi all,
I need to find the dimension of the biggest components.Then plotted against p=linspace(0,1,10).
N=10
for i=1:N
for j=1:N
if rand(1,1)<0.55
A(i,j)=1;
else
A(i,j)=0;
end
end
end
CC = bwconncomp(A,4);
numPixels = cellfun(@numel,CC.PixelIdxList);
[biggest,idx] = max(numPixels);
A(CC.PixelIdxList{idx}) = 2
colours=[1 1 1;0 0 0;1 0 0]
colormap (colours)
imagesc(A)
2 commentaires
Jan
le 18 Juil 2017
Please explain uniquely what "the biggest components" are. What problems do you have with the posted code?
Réponses (1)
Image Analyst
le 18 Juil 2017
You can use regionprops() to find the axis of an ellipse fitted to the data. They don't give you the Feret (caliper) diameter, so you can adapt my attached code to give you that.
2 commentaires
Image Analyst
le 18 Juil 2017
Sure. Attach your image and segmentation algoritm to produce your binary image. Then you can use my Image Segmentation Tutorial http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862&sort=downloads_desc to find out how to find all the areas of your blobs. Next, tell me which blob(s) you want the maximum extent (width) computed for. All of them? Just for the one with the greatest area?
Voir également
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!