Trying to change name of image file in for loop - use %s?

4 views (last 30 days)
Hi,
I'm trying to create a for loop, where I gather screen shots and save them (trial 1, trial 2..., etc.). I tried to use the following:
imwrite(imageArray, '%s.jpg',trial)
to create different names for each image, as the loop continues. However, this didn't work. Is there any other way to do this, other than "if trial 1....else if trial 2, etc.?"
I am using PTB, if that's useful.
Thank you!

Accepted Answer

Sean de Wolski
Sean de Wolski on 30 Dec 2014
Use the filename as the following
for ii = 1:10
filename = ['trial' num2str(ii) '.jpg']
imwrite(I,filename)
end
It looks like what you were trying to do was use sprintf inside of imwrite. This would work too, but it a little more power than you need:
filename = sprintf('trial%i.jpg',ii)

More Answers (1)

Image Analyst
Image Analyst on 30 Dec 2014
Read this part of the FAQ: http://matlab.wikia.com/wiki/FAQ#How_can_I_process_a_sequence_of_files.3F Then read the rest of it too, because there is lots of good stuff in there.

Community Treasure Hunt

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

Start Hunting!