How to obtain an average polygon out of multiple polygon boundaries?

3 views (last 30 days)
Hi, How do I obtain an average ROI from multiple ROIs drawn on different images? Thank you very much for your help.
Images=dir("*ExampleImage.tif");
S_Boundaries=[];
for i=1 :numel(Images)
Image=imread(Images(i).name);
imshow(Image);
p=drawpolygon();
S_boundary{i}=p.Position
S_Boundaries=[S_Boundaries; S_boundary{i}]
end
AverageBoundary = HelpFunction(S_Boundaries)
%HelpFunction would compute an average boundary from multiple boundaries saved as S_Boundaries.
  2 Comments
Sudip Paudel
Sudip Paudel on 14 Jul 2020
  • Hi Matt, the average boundary meaning the one that represents the entire set of boundaries (I think a best fit boundary would work). Thank you.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 14 Jul 2020
I already did this for someone else. Luckily I saved the code. It's attached.
  5 Comments
Image Analyst
Image Analyst on 14 Jul 2020
You can convert your polygons/boundaries into images with the poly2mask() function.

Sign in to comment.

More Answers (0)

Products


Release

R2020a

Community Treasure Hunt

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

Start Hunting!