Filter löschen
Filter löschen

How to name my files differently in a loop

2 Ansichten (letzte 30 Tage)
Asser Abdelgawad
Asser Abdelgawad am 7 Jun. 2022
Kommentiert: Image Analyst am 7 Jun. 2022
I want each "pic" to have a differnet name corresponding to n. i.e: 1.jpg, 2.jpg, etc.
This gives me an error because the n is not in quotations for a filename, but if I do this, then the images keep overwriting each other so that at the end I only have one image that is called "n". How do I avoid this?
for n = 1:68
pic(:,:,n) = Amp((n-1)*64+1:n*64,:);
pic(:,:,n) = wdenoise(pic(:,:,n));
pic(:,:,n) = uint8(pic(:,:,n));
imwrite(pic(:,:,n), colormap(), n,'jpg');
end

Akzeptierte Antwort

Image Analyst
Image Analyst am 7 Jun. 2022
Bearbeitet: Image Analyst am 7 Jun. 2022
Try this
for n = 1:68
pic(:,:,n) = Amp((n-1)*64+1:n*64,:);
pic(:,:,n) = wdenoise(pic(:,:,n));
pic(:,:,n) = uint8(pic(:,:,n));
baseFileName = sprintf('%2.2d.png', n);
fullFileName = fullfile(pwd, baseFileName);
fprintf('Writing %d of 68 : "%s."\n', n, fullFileName);
imwrite(pic(:,:,n), fullFileName);
end
  2 Kommentare
Asser Abdelgawad
Asser Abdelgawad am 7 Jun. 2022
Thank you! Also, is there a way to change where the files are saved? imwrite automatically saves them to the same folder my .m file is in but I would like to save it elsewhere.
Image Analyst
Image Analyst am 7 Jun. 2022
Just assign some folder where you'd like to save them
folder = 'c:\whatever'
if ~isfolder(folder);
mkdir(folder);
end
for n = 1:68
pic(:,:,n) = Amp((n-1)*64+1:n*64,:);
pic(:,:,n) = wdenoise(pic(:,:,n));
pic(:,:,n) = uint8(pic(:,:,n));
baseFileName = sprintf('%2.2d.png', n);
fullFileName = fullfile(folder, baseFileName);
fprintf('Writing %d of 68 : "%s."\n', n, fullFileName);
imwrite(pic(:,:,n), fullFileName);
end

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Image Processing Toolbox finden Sie in Help Center und File Exchange

Produkte


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by