MATLAB Answers

Save image containing plotted lines

1 view (last 30 days)
Johannes Hope Denstadli
Johannes Hope Denstadli on 19 Mar 2020
Commented: Adam Danz on 19 Mar 2020
I have not found a good method for plotting lines onto an image and save this image within the script. I use this script to plot the lines onto a black background, and the figure correctly shows the lines. The problem is when i save the image using the "saveas" function. The saved image does not contain the drawn lines. Does anyone know how to save the image containing the lines without doing so manually? Is there a method for exporting the image containing the lines directly to the workspace?
Fig = figure;
imshow(Z_black), hold on
for k = 1:length(lines)
% blah,blah,blah...
plot([xL, xR], [yL, yR], 'LineWidth',1,'Color','white');
end
saveas(Fig,'HoughLines.png')

  3 Comments

Adam Danz
Adam Danz on 19 Mar 2020
saveas() or savefig() should both work.
What do you mean, " Is there a method for exporting the image containing the lines directly to the workspace?" ?
Johannes Hope Denstadli
Johannes Hope Denstadli on 19 Mar 2020
Both saveas() and savefig() did not contain the plotted lines for some reason, but found that this worked.
F = getframe;
BW = imbinarize(F.cdata);
Adam Danz
Adam Danz on 19 Mar 2020
It seems that you want to capture the data within the axes as opposed to the figure files. If you check out the documentation for saveas, you'll see that this saves the entire figure to file.

Sign in to comment.

Answers (1)

the cyclist
the cyclist on 19 Mar 2020
I would expect
print('-dpng','-r600','HoughLines.png')
to work.
You could also try the export_fig utility from the File Exchange.

  0 Comments

Sign in to comment.

Sign in to answer this question.


Translated by