Store filename in cell array
2 次查看(过去 30 天)
显示 更早的评论
I am trying to gather all the .bmp files in a folder and store them in a cell array so they can be shuffled and shown at the appropriate time in a task (using Psychtoolbox3). I am using the following code provided in a previous question https://www.mathworks.com/matlabcentral/newsreader/view_thread/267529.
[listOfFiles, folder] = uigetfile ({'*.jpg';'*.bmp';'*.tiff'}, '
Select your image ', 'MultiSelect', 'on');
for j=1:length(listOfFiles)
fullFileName = fullfile(folder, listOfFiles{j});
imageArray = imread(fullFileName);
[rows columns numberOfColorBands] = size(imageArray);
figure;
imshow(imageArray);
message = sprintf('%s is %d by %d', fullFileName, rows, columns);
disp(message);
end
The only change I want to make is to automatically pull all the .bmp files instead of the user selecting them using uigetfile. I've tried a lot of options, such as using dir and converting to cell using strcat, using dir and converting using {___.name}, etc. but have had no luck. Most of the errors tell me there are too many output arguments, referring to [listOfFiles, folder], but if I alter this variable name, it does not register the name as a cell array.
I am using Matlab R2017a.
Any help would be greatly appreciated!!
0 个评论
采纳的回答
Jan
2017-8-14
编辑:Jan
2017-8-14
DirList = dir(fullfile(folder, '*.bmp'));
listOfFiles = {DirList.name};
for j=1:length(listOfFiles)
fullFileName = fullfile(folder, listOfFiles{j});
...
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image display and manipulation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!