Saving images inside a loop with changing filename
Afficher commentaires plus anciens
Dear Community, in a similar situation I would like to save images inside a loop. I do not know why there is an invalid character error in the filename. The filename should look like: actual foldername, Roi and a number.
Please share your suggestions:
Best:
lg
I=rand(20,20);
[~,fo{1,1},~]=fileparts(pwd);
for i=1:10
index=i
imwrite(I,'[ fo{1,1} '_' 'Roi' '_' num2str(index)].tiff')
end
Réponse acceptée
Plus de réponses (1)
Walter Roberson
le 14 Jan 2023
Modifié(e) : Walter Roberson
le 14 Jan 2023
imwrite(I,'[ fo{1,1} '_' 'Roi' '_' num2str(index)].tiff')
You start a character vector. The first character of the vector is the '[' character. The second character is space. The third character is 'f' then 'o' then '{' then '1', ',', '1', '}' then space. You then end the character vector. After that you have an underscore immediately after the end of the character vector . But the underscore is not part of a variable name and is not a valid variable name by itself, and underscore is not a valid operator name. The underscore is invalid there.
I suggest you use
filename = fo{1,1} + "_Roi_" + index + ".tiff"
imwrite(I, filename)
1 commentaire
Levente Gellért
le 14 Jan 2023
Catégories
En savoir plus sur Image Filtering dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!