how to read multiple images from a folder

4 views (last 30 days)
Tasneem Tabassum
Tasneem Tabassum on 5 Apr 2017
Edited: Stephen23 on 5 Apr 2017
I need to read multiple images from a folder in matlab. Meaning I need to read image number one and image number two in the first loop, in the second loop it will read read the second image and the third so on and so forth. currently what I'm trying is im using is given below. But it doesn't seem to work. What can I do so that i can read two consecutive images in the same loop?
Files = dir('......*.tif');
Directory='......';
for num=1:numberofimages
Image = imread(strcat(Directory,Files(num).name));
Nex_Image = imread(strcat(Directory,Files(num+1).name));
end

Answers (1)

Stephen23
Stephen23 on 5 Apr 2017
Edited: Stephen23 on 5 Apr 2017
Something like this should get you started (obviously untested):
D = 'directory path here';
S = dir(fullfile(D,'*.tif'));
for k = 2:numel(S)
file1 = fullfile(D,S(k-1).name);
file2 = fullfile(D,S(k-0).name);
im1 = imread(file1);
im2 = imread(file2);
end
And if your filenames have numbers in them and you want them sorted alphanumerically, then download my FEX submission natsortfiles (it includes examples):
If these do not resolve your question then please explain exactly what you expect to occur, and what "But it doesn't seem to work" means.
  2 Comments
Tasneem Tabassum
Tasneem Tabassum on 5 Apr 2017
Thanks a lot. It should work I suppose. But I was having issues in a different part of the code. Our logics are quite similar. Since mine is working atm i am sticking to that. But Thanks again for the response. :)
Image Analyst
Image Analyst on 5 Apr 2017
Not sure what your definition of consecutive is, but you might take a look at this: http://blogs.mathworks.com/pick/2014/12/05/natural-order-sorting/

Sign in to comment.

Categories

Find more on Startup and Shutdown 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!