Error reading images from file

Hi,
I downloaded an image dataset called DB1_B, and I want to read all images into an array. I tried using dir() directly, but got an error, searched for a solution and found this instead, but I'm still getting errors?
folder = uigetdir('C:\Users\Mia\Documents\Project (SD)\DB1_B');
tiffile = dir(folder, '*.tif');
numfiles = length(tiffile);
mydata = cell(1,numfiles);
for k = 1:numfiles
mydata{k} = imread(tiffile(k).name)
end
Error using dir
Too many input arguments.
Error in NNexLBP (line 3)
tifffile = dir(folder, '*.tif');
Its 80 images if that makes a difference? I have a test code that successfully extracts one image by using
im = imread('C:\Users\Mia\Documents\Project (SD)\DB1_B\101_1.tif');
so I think it's directed correctly? The test code and the code I'm trying to use now are saved in different folders, but they're both saved under the 'project (SD)' folder if that makes a difference?

 Risposta accettata

tiffile = dir( fullfile(folder, '*.tif'));
and
mydata{k} = imread( fullfile(folder, tiffile(k).name) );

1 Commento

Mia
Mia il 13 Mag 2020
Ah thank you so much! That works perfectly, have a lovely day!

Accedi per commentare.

Più risposte (1)

Mario Malic
Mario Malic il 13 Mag 2020
The extra backward slash should do it.
folder = uigetdir('C:\Users\Mia\Documents\Project (SD)\DB1_B\');

2 Commenti

No, this is not actually correct. No matter what input you pass to uigetdir(), you do not know whether the output will end in a \ or / or not.
My bad.

Accedi per commentare.

Categorie

Community Treasure Hunt

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

Start Hunting!

Translated by