Extracting files saved in .mat file

5 views (last 30 days)
Ram
Ram on 15 Aug 2013
Answered: poongothai rajan on 23 Apr 2014
I have saved a set of images in a single .mat file and also generate a txt file contains the filenames of the images that have been saved in the .mat file. I am looking to be able to extract the images from the .mat file. Any help would be welcome. I have attached the code here.
function saveimage()
[fname,pname] = uigetfile('*.*','Pick an Image File','MultiSelect','on');
if isequal(fname,0)
warndlg('Program has been exited without any files being selected','!! Warning !!');
return;
end
if ischar(fname)
fname = {fname}; % If a single image was selected
end
k=0;
l = length(fname);
for i = 1:l
currentimage = imread([pname fname{i}]);
imgs(i).currentimage=currentimage;
fprintf(fout, '\r'); fprintf(fout, fname{i});
k=k+1;
end
save([foutpath num2str(k),'_',num2str(dt),'_Images.mat'], 'imgs');
if (l > 1)
message = sprintf([num2str(k) ' images successfully saved\n\nResults are saved in ' strrep(foutpath, '\', '\\') '\n\n Click OK to continue']);
uiwait(msgbox(message));
else
message = sprintf([num2str(k) ' image successfully saved\n\nResults are saved in ' strrep(foutpath, '\', '\\') '\n\n Click OK to continue']);
uiwait(msgbox(message));
end
return

Answers (2)

Swati Tiwari
Swati Tiwari on 15 Aug 2013
You should be able to load the image matrix into the MATLAB workspace using the LOAD function.
var = load('filename.mat');
As per your function, var would most likely be a structure array and the field 'currentimage' would correspond to your image file which you can then write to an image file using the IMWRITE function.
imwrite(var(1).currentimage, 'filename', '<format>')
I would recommend reading the documentation on LOAD and IMWRITE.
HTH
  4 Comments
Ram
Ram on 15 Aug 2013
Thank you for the response. I am now able to load them and view the images. The field is 'imgs.
Image Analyst
Image Analyst on 15 Aug 2013
Hmmm... Looks like Ram needs to look at this so he can learn how to see what's in variables: http://blogs.mathworks.com/videos/category/gui-or-guide/

Sign in to comment.


poongothai rajan
poongothai rajan on 23 Apr 2014
my file name is te.mat..i can able to read data from my file...but i couldnot view my images...can u give me code for view my .mat file as images

Categories

Find more on Convert Image Type in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!