Save multiple image automatically
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Frisda Sianipar
am 24 Feb. 2021
Kommentiert: Frisda Sianipar
am 24 Feb. 2021
image_folder = 'F:\kuliah\semester6\TA2\mencoba';
outfolder = 'F:\kuliah\semester6\TA2\mencoba\hasil';
if ~isdir(outfolder); mkdir(outfolder); end
load mri %I presume it has the variable map in it
fileinfo = dir(fullfile(image_folder, '*.jpg'));
filenames = fullfile({fileinfo.folder}, {fileinfo.name});
total_images = numel(filenames);
for n = 1 : total_images
thisfile = filenames{n};
[~, basename, ext] = fileparts(image_folder);
citra = imread(thisfile);
V = squeeze(citra);
fprintf('processing %s\n', basename);
citra3 = montage(reshape(V,size(citra)), map, 'Indices', 3);
outfile = fullfile(outfolder, [basename 'coba' ext]);
saveas(citra3, outfile);
end
A folder containing many images has been read, but only one output is stored. I have been helped by Mr.Walter Roberson, but I still can't solve the problem of how to save multiple images from the output of the matlab process.
2 Kommentare
Rik
am 24 Feb. 2021
This time I edited your question for you. Next time, please use the tools explained on this page to make your question more readable.
Akzeptierte Antwort
Bjorn Gustavsson
am 24 Feb. 2021
You simply have to generate a sequence of unique filenames to save to. Something like this:
outfile = fullfile(outfolder, sprintf('%s-coba-%03d.%s',basename,n,ext]);
saveas(citra3, outfile);
That way you'll generate filenames of the type: basename-coba-001.ext - I replaced the whitespaces in the filename with '-', because I prefer to have dashes instead, you can switch back. The %03d is just to give you zero-padded numbers incrementing with your loop-variable n.
HTH
9 Kommentare
Rik
am 24 Feb. 2021
Bearbeitet: Rik
am 24 Feb. 2021
Think about your code. What are you doing and why? Have you read the documentation for the functions you are using?
If you read the latest error message: "Undefined function or variable 'n'." Can you see where you define n? What was that line doing? What was the reason you commented it?
If you have trouble with Matlab basics you may consider doing the Onramp tutorial (which is provided for free by Mathworks).
Also, feel free to put multiple things in 1 comment, instead of letting me merge your comments.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Image Processing Toolbox finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!