How to measure dimensions of region boundary plot?

2 views (last 30 days)
Hello,
I have an image (from MATLab example) and I want to know the number of pixels in/dimensions of the green boundary. As according to the code, the green boundary is overlaid on the image and is not a part of the image, I am unable to calculate its length or the number of pixels it has.
BW = imread('blobs.png');
Calculate boundaries.
[B,L,N] = bwboundaries(BW);
Display object boundaries in red and hole boundaries in green.
imshow(BW); hold on;
for k=1:length(B),
boundary = B{k};
if(k > N)
plot(boundary(:,2), boundary(:,1), 'g','LineWidth',2);
else
plot(boundary(:,2), boundary(:,1), 'r','LineWidth',2);
end
end
I want to make the green boundary a part of the image so that I can count its number of pixels too. Or any other way to do just that (measure the length of the green region).
Please help me in this regard.
Regards.

Accepted Answer

Image Analyst
Image Analyst on 12 Dec 2017
Just get the size of boundary in the loop:
numPixels(k) = size(boundary, 1); % Count rows.
  3 Comments
Antonio Morales
Antonio Morales on 31 Mar 2018
How could it be possible to get the area of the detected boundary? I am particularly interested in calculating the area to length ratio of all detected boundaries.
Thanks

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!