I want to imread multiple selected files via uigetfile

1 view (last 30 days)
KiBaek Jang
KiBaek Jang on 24 May 2022
Edited: DGM on 24 May 2022
file=uigetfile('*.*', 'select a single file at a time', 'download', 'MultiSelect','on');
imagea = imread(file(1)); % It is impossible to convert from cell format to string format to use imread.
imageb = imread(file(2));

Answers (1)

DGM on 24 May 2022
Edited: DGM on 24 May 2022
This assumes that the images are all simple I/RGB images (not indexed images, no RGBA images or multiframe GIFs)
[fname dirname] = uigetfile('*.*', 'select a single file at a time', 'download', 'MultiSelect','on');
nfiles = numel(fname);
pileofimages = cell(nfiles,1);
for f = 1:nfiles
pileofimages{f} = imread(fullfile(dirname,fname{f}));
The images are stored in the cell array 'pileofimages' to avoid creating a drift of dynamically named variables and all the problems that entails.




Community Treasure Hunt

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

Start Hunting!