Files in different folders

If you have 12 different folders (that each contain pictures), is there a way to create a loop that will sum up the first images in all the folders, and the sum of the second images in all the folders, etc... for all the images?

Answers (3)

folders={f1,f2,f3}; % your folders
for k=1:numel(folders)
f=dir([folders{k} '/*.jpg']);
files{k}={f.name};
end
for ii=1:numel(files{1});
im{ii}=0;
for jj=1:numel(files)
im{ii}=im{ii}+imread(files{jj}{ii});
end
end
Image Analyst
Image Analyst on 31 May 2013

0 votes

You can take the FAQ: http://matlab.wikia.com/wiki/FAQ#How_can_I_process_a_sequence_of_files.3F and adapt it to use genpath() to get all subfolders.

2 Comments

My problem is that I want to read in the files using imread, which will create a matrix with data about the pixels. I also want to read in data for 135 pictures. How do I create a scenario where I will have an array of 135 x 1, where each row will actually be its own matrix of data on pixels?
If they're grayscale:
oneRow = grayImage(theRowNumber, :);
If they're color
oneRowRed = rgbImage(theRowNumber, :, 1);
oneRowGreen = rgbImage(theRowNumber, :, 2);
oneRowBlue = rgbImage(theRowNumber, :, 3);

Sign in to comment.

Categories

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

Asked:

on 31 May 2013

Community Treasure Hunt

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

Start Hunting!