Save a figure as .bmp or .png WITHOUT background

9 Ansichten (letzte 30 Tage)
MathReallyWorks
MathReallyWorks am 30 Mai 2017
Kommentiert: Sigal Cohen am 25 Feb. 2018
Hello everyone,
I have extracted this text from an image and removed all the extra parts apart from the text:
Now, I need to save this image as .bmp or .png using
saveas(gcf,'0','bmp');
But, this function saves the image in this way (i.e A white background is also included):
(Please look closely for that white background)
But, my purpose is to save this image without that white background such that it looks like this:
(I have cropped above image in a photo editor for better explanation of my problem)
Can anyone help me in achieving this?
Thanks in advance.

Akzeptierte Antwort

Jan
Jan am 30 Mai 2017
Use imwrite with the image data, not imsave or saveas, which both try to save the contents of the figure.
  2 Kommentare
MathReallyWorks
MathReallyWorks am 30 Mai 2017
Bearbeitet: MathReallyWorks am 30 Mai 2017
Thanks Jan Simon.
Sigal Cohen
Sigal Cohen am 25 Feb. 2018
Hi Jan Simon,
I tried to use imwrite to save without background, but I get this error:
*Error using imwrite (line 420) Expected DATA to be one of these types:
numeric, logical
Instead its type was matlab.ui.Figure.*
The figure I want to save is one of 40 figures in a for loop, and it's written as follows:
imwrite(figure(i),fullfile('D:\ISI', Exp, Acquisition,['' num2str(i) '.tif']));
So each figure is saved with chronological numbering (i=1:40).
I attached the file saved when I use the command 'saveas', with the background I don't need.
What is the problem? Can you help me please?
Thank you, Sigal.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Rik
Rik am 30 Mai 2017
If you have the image as a binary matrix, you can use imsave to save it to file.
If you do not, you can load your current result with imread, crop it and write it out with imsave.

Community Treasure Hunt

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

Start Hunting!

Translated by