saving images as a database

1 view (last 30 days)
Tony
Tony on 12 Jan 2014
Answered: Image Analyst on 14 Jan 2014
I am trying to put a folder of jpg images in a database .mat i tried this from similar stuff that i googled, i was successful doing it to one image using
save('test.mat','f')
here is the failed code,
if true
srcFiles = dir('F:\matlab\face\data\*.jpg') % the folder images are in
for i = 1 : length(srcFiles)
filename = imread(['F:\matlab\face\data\',srcFiles(i).jpg]);
holdImage(i) = imread(filename);
end save('testimagebase.mat','holdImage'); end
  1 Comment
Tony
Tony on 14 Jan 2014
is there a way to just load everything in a folder regardless of the name of the file

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 14 Jan 2014
Try this snippet. Set folder to:
folder = 'F:\matlab\face\data';
ListOfImageNames = {};
ImageFiles = dir([folder'/*.*']); % Get all files.
for Index = 1:length(ImageFiles)
baseFileName = ImageFiles(Index).name;
[folder, name, extension] = fileparts(baseFileName);
extension = upper(extension);
% Let's save just those we are interested in:
switch lower(extension)
case {'.png', '.bmp', '.jpg', '.tif', '.avi'}
% Allow only PNG, TIF, JPG, or BMP images
ListOfImageNames = [ListOfImageNames baseFileName];
otherwise
end
end
% Now ListOfImageNames is a list of all image format files.
% Now do whatever you want with that list.

More Answers (1)

Ben
Ben on 13 Jan 2014
Try just this inside your loop:
holdImage(i) = imread(['F:\matlab\face\data\' srcFiles(i)],'jpeg');
  1 Comment
Tony
Tony on 14 Jan 2014
is there a way to just load everything in a folder regardless of the name of the file

Sign in to comment.

Categories

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

Community Treasure Hunt

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

Start Hunting!