Loading in multiple image files of different sizes

4 次查看(过去 30 天)
Hey guys, I am having issues trying to figure out one of my problems. I am supposed to load in all images from a face image folder. I need to use a for loop. The images can be stored in any way, except I cannot store them into one big matrix because they are all different sizes. Thank you!!

采纳的回答

KSSV
KSSV 2017-5-19
编辑:KSSV 2017-5-19
imagefiles = dir('*.jpg') ; % give your extension of images
nfiles = length(imagefiles) ; % total number of images
iwant = cell(nfiles,1) ; % pre-allocation to store images
% loop for each image
for i = 1:nfiles
iwant{i} = imread(imagefiles(i).name) ;
end

更多回答(1 个)

Image Analyst
Image Analyst 2017-5-19
Simply use imread() in a loop like the FAQ shows:
There is most likely no reason to use a cell array since I doubt there is a definite need to have all the images in memory simultaneously. You'd most likely run into memory problem if you have more than a few dozen. You will most likely process one image at a time so you only need to have one image variable, not a cell array. If you think I'm wrong, tell me why you need all the images in the folder in memory at the very same time (something I rarely rarely , if ever, need to do).

Community Treasure Hunt

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

Start Hunting!

Translated by