How to resize multiple folder images and save it in MATLAB?

4 visualizzazioni (ultimi 30 giorni)
I have three folder and each folder contain 10 images. I want to resize each images to 28x28 and then save 28x28 images. I want that my code automatically pick folder one by one.

Risposte (1)

Catalytic
Catalytic il 12 Lug 2021
Modificato: Catalytic il 12 Lug 2021
Yes, that should be easy, but you haven't told us what part of it you're having difficulty with. If I had to guess, you are struggling to automatically get a list of folders to loop over. One way is,
s=dir;
idx=~startsWith({s.name},'.') & [s.isdir];
folders={s(idx).name}
  2 Commenti
Faheem Ur Rehman
Faheem Ur Rehman il 13 Lug 2021
i did't get your code where you use imresize command
Walter Roberson
Walter Roberson il 13 Lug 2021
nfolders = length(folders);
for J = 1 : nfolders
thisfolder = folders(J).name;
fileinfo = dir(thisfolder);
fileinfo([fileinfo.isdir]) = []; %remove . .. and other folders
nfiles = length(fileinfo);
for K = 1 : nfiles
thisfile = fullfile(thisfolder, fileinfo(K).name);
thisimg = imread(thisfile);
thisimg28 = imresize(thisimg, 28, 28);
%you would now want to save thisimg28... but you did not say WHERE
%you want to save it
end
end

Accedi per commentare.

Categorie

Scopri di più su Get Started with MATLAB in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by