MATLAB Answers

matlab not reading images from folder in correct sequence

6 views (last 30 days)
mukesh bisht
mukesh bisht on 20 Nov 2019
Edited: Erivelton Gualter on 20 Nov 2019
Hi, i have stored the images in a folder by name ex. 1.jpg 2.jpg etc. When i am running the code the matlab doesn't read the images in that sequence. Please help
directory = 'C:\Users\Documents\MATLAB\photos';
files = dir([directory '/*.jpg']);
for i = 1:length(files)
image{i} = imread([directory '/' files(i).name]);

  0 Comments

Sign in to comment.

Answers (1)

Erivelton Gualter
Erivelton Gualter on 20 Nov 2019
Edited: Erivelton Gualter on 20 Nov 2019
It had happened to me before. The problem is the files name is sorted in according to the strings.
Let's say you have the following images in your folder:
  • 1.jpg
  • 2.jpg
  • ...
  • 10.jpg
  • 11.jpg
If you run the following code:
for i=1: length(files)
files(i).name % Shows the name of the files
end
The output will be:
ans =
'10.png'
ans =
'11.png'
ans =
'1.png'
ans =
'2.png'
...
If you rename your files as in the following, the files will be sorted correctly:
  • 01.jpg
  • 02.jpg
  • ...
  • 10.jpg
  • 11.jpg

  0 Comments

Sign in to comment.

Sign in to answer this question.