matlab not reading images from folder in correct sequence
Show older comments
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]);
Answers (1)
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
Categories
Find more on Image Sequences and Batch Processing 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!