diameter of image (1024x1024 logical value)

1 次查看(过去 30 天)
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 个评论
Rik
Rik 2020-7-3
This is not a perfect circle, so which diameter do you want? Width, height, maximal, minimal, other?

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2020-7-3
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".

更多回答(1 个)

KSSV
KSSV 2020-7-3
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) ;

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

产品


版本

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by