diameter of image (1024x1024 logical value)

1 view (last 30 days)
Hello I have a 104x1024 logical.
when i use imshow(figure) to display it, it looks something like this
how do i get the diameter calculated?
i had already thought about the area but i don't know how.
this is an edited polar plot image
Thanks a lot
  1 Comment
Rik
Rik on 3 Jul 2020
This is not a perfect circle, so which diameter do you want? Width, height, maximal, minimal, other?

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 3 Jul 2020
You can get the Equivalent Circular Diameter from regionprops(). This is the diameter of the blob if you were to smoosh and mold that same shape into a perfectly circular shape. In other words, the diameter of a perfect circle with the same number of pixels as your irregularly shaped blob.
props = regionprops(mask, 'EquivDiameter');
% Extract it from the structure into a simple variable.
ecd = props.EquivDiameter % This is the "Equivalent Circular Diameter".

More Answers (1)

KSSV
KSSV on 3 Jul 2020
Let A be your logical of 1024*1024
[y,x] = find(A) ; % get all th points with 1
C = [mean(x) mean(y)] ; % this gives the center of the region
% Get the boundary
idx = boundary(x,y) ;
bx = x(idx) ; by = y(idx) ;
% Get ditance
d = sqrt((C(1)-bx).^2+(C(2)-by).^2) ;
mind = min(d) ;
maxd = max(d) ;

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Products


Release

R2020a

Community Treasure Hunt

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

Start Hunting!