Exporting images (png) through export_fig - painfully slow

27 visualizaciones (últimos 30 días)
John Cruce
John Cruce el 17 de Sept. de 2021
Respondida: yanqi liu el 26 de Nov. de 2021
I'm using export_fig to export a figure to a high resolution png and it's painfully slow. Takes about 36 seconds to perform the export. I also see the following warning upon export:
Warning: print2array generating a 83.6M pixel image. This could be slow and might also cause memory problems
Any suggestions on alternatives to speed up this portion of my code?
export_fig('-dpng','-opengl','-r450',sprintf('C:\\Users\\Username\\Documents\\%s',datetimelabel));

Respuestas (4)

Yair Altman
Yair Altman el 19 de Sept. de 2021
Try to either reduce the resolution (the -r450 part), or to save as a vector-graphics image (PDF/EPS) rather than a PNG bitmap.

Image Analyst
Image Analyst el 19 de Sept. de 2021
Try comparing it to exportgraphics() but you'd need r2020a or later.

Oliver Woodford
Oliver Woodford el 24 de Oct. de 2021
Reducing the level of anti-aliasing will reduce the sixe of the images created, saving time. Use the '-aX' option, where X is 1 to 4 (faster to slower).

yanqi liu
yanqi liu el 26 de Nov. de 2021
yes,sir,may be use getframe or print,such as
f=getframe(gcf);
f=frame2im(f);
imwrite(f, './result.tif');
or
print(gcf,'-dpng','-r200','result')

Productos


Versión

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by