필터 지우기
필터 지우기

How to measure dimensions of region boundary plot?

조회 수: 5 (최근 30일)
Mohsina Zafar
Mohsina Zafar 2017년 12월 11일
댓글: Image Analyst 2018년 4월 1일
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.

채택된 답변

Image Analyst
Image Analyst 2017년 12월 12일
Just get the size of boundary in the loop:
numPixels(k) = size(boundary, 1); % Count rows.
  댓글 수: 3
Antonio Morales
Antonio Morales 2018년 3월 31일
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
Image Analyst
Image Analyst 2018년 4월 1일
Use polyarea(x, y)
area = polyarea(x, y);

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

Community Treasure Hunt

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

Start Hunting!

Translated by