How do I read multiple images into matlab and save them in cells?

3 次查看(过去 30 天)
So I have 10 images at the working directory(which is desktop) and named them as image1.jpg, image2.jpg, ... image10.jpg and I want to load into matlab and save them in cells. But apparently it saves the first image, but fails to do the same for the rest.
photo=cell(1,10);
for i=1:10
filename=['image',num2str(i),'.jpg'];
photo{i}=imread(filename);
end
and I get errors like:
Error using imread>get_full_filename (line 481) File "image2.jpg" does not exist.
Error in imread (line 344) filename = get_full_filename(fid, errmsg, filename);
Error in Untitled (line 5) photo{i}=imread(filename);
what should I do to make it work?
  2 个评论
Preethi
Preethi 2016-12-12
hi,
can you debug and see the filename or you can try reading the image2 file separately to check if there is any issue..
Kenny Suh
Kenny Suh 2016-12-12
Ugh, I checked if loading image2 worked separately. Apparently, it was the file format issue. The image2 file was .png format, not .jpg format. Thanks for reminding me of that! now it works :D

请先登录,再进行评论。

采纳的回答

Ahmet Cecen
Ahmet Cecen 2016-12-12
This is not directly solving your problem, but if you use the following instead, it will either work, or help you better figure out what the problem is:
jpglist = dir('*.jpg'); % Find all jpg files in current directory.
photo=cell(1,length(jpglist));
for i=1:length(jpglist)
photo{i}=imread(jpglist(i).name);
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by