how to find the dimension of the biggest component?

4 Ansichten (letzte 30 Tage)
Sultan
Sultan am 18 Jul. 2017
Kommentiert: Image Analyst am 18 Jul. 2017
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 Kommentare
Jan
Jan am 18 Jul. 2017
Please explain uniquely what "the biggest components" are. What problems do you have with the posted code?
Sultan
Sultan am 18 Jul. 2017
biggest component is the component who has biggest number of pixels. The problem is that i want to find the dimension of it

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Image Analyst
Image Analyst am 18 Jul. 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 Kommentare
Sultan
Sultan am 18 Jul. 2017
can you provide more help, still not clear
Image Analyst
Image Analyst am 18 Jul. 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?

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by