How to save images using for loop?

15 views (last 30 days)
I have an error using imwrite:
names={'Adel1','Adel2','Adel3'}% Cell array contains images' names
for i = 1 : length(names)
imwrite(Seg{i},['E:\Aneurysms\Images\names(i)_seg','.tif'])
% seg: segmentation function result
end
the previous code save only the last variable with the name: names(i)_seg
I want to save new images like: Adel1_seg, Adel2_seg,Adel3_seg
what is wrong in using imwrite ??

Accepted Answer

Michael Haderlein
Michael Haderlein on 18 Sep 2014
There's nothing wrong using imwrite, there's something wrong how you create the file name. Just use
['E:\Aneurysms\Images\' names{i} '_seg.tif']
  1 Comment
Nisreen Sulayman
Nisreen Sulayman on 18 Sep 2014
That was very helpful, Thank you

Sign in to comment.

More Answers (1)

Roger Wohlwend
Roger Wohlwend on 18 Sep 2014
Edited: Roger Wohlwend on 18 Sep 2014
The function imwrite does exactly what you told it to do. The problem is that
['E:\Aneurysms\Images\names(i)_seg','.tif']
gives you a static text. It does not do what you want it to do. Replace it with the following code:
['E:\Aneurysms\Images\', names{i}, '_seg.tif']
That should solve your problem.

Community Treasure Hunt

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

Start Hunting!