How do I save masks in roipoly with their original size?
4 次查看(过去 30 天)
显示 更早的评论
I'm using roipoly to segment the same structure (a vessel) in many frames of a video. Using my code, I often need to zoom in the image to draw the polygon on the contour of the structure. When I save the mask created, what I get is a mask of the zoomed in image, not a mask of the original one. When I open all the masks created I therefore have the "white area" always in a different position, depending on how I zoomed in. What I would like is to always get the original size image mask. How can I do that?
Here's my code:
clear all
close all
clc
images = dir('*.jpg');
N=length(images);
for i=1:N
I=imread(images(i).name);
mask=roipoly(I);
imshow(I);
hold on;
contour(mask) ;
imshow(mask);
filename = ['Segmented ', num2str(i), '.png'];
saveas(1, filename)
hold off
imshow(I);
hold on
contour(mask, 'y', 'LineWidth', 2);
filename=['Contour ', num2str(i), '.jpg'];
saveas(1, filename);
end
Thank you!
2 个评论
Arun Mathamkode
2018-4-20
I tried your code in R2017b and it works properly. Mask is also in the proper size. I have zoomed-in using the zoom option in the figure for zooming. Did you also followed the same workflow?
采纳的回答
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!