Azzera filtri
Azzera filtri

Save multiple image automatically

2 visualizzazioni (ultimi 30 giorni)
Frisda Sianipar
Frisda Sianipar il 28 Feb 2021
Modificato: Jan il 2 Mar 2021
Hi, I'm a final year student at a university in Indonesia. Actually I tried reading the image in matlab and then applying certain operations like increasing contrast, removing background etc. Then I want to save the new image after the operation in a certain folder, but I face a problem in saving the image in matlab, the image is saved after only one operation while the image that has been read is more than one, then I want the saved image extension to be .jpg. please help me whoever knows the solution.
This is the coode:
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
files = dir(fullfile(image_folder, '*.jpg'));
% filenames = fullfile({fileinfo.folder}, {fileinfo.name});
% total_images = numel(filenames);
for iFiles = 1:numel(files)
thisfilename = fullfile(files(iFiles).folder,files(iFiles).name);
% for n = 1 : total_images
% thisfile = filenames{n};
[~, basename, ext] = fileparts(image_folder);
citra = imread(thisfilename);
V = squeeze(citra);
fprintf('processing %s\n', basename);
fig = figure;
citra3 = montage(reshape(V,size(citra)), map, 'Indices', 3);
outfile = fullfile(outfolder, sprintf(['%s-coba-%03d.%s',basename,'.jpg']));
saveas(citra3, outfile);
end
  5 Commenti
Walter Roberson
Walter Roberson il 1 Mar 2021
you need to look inside the folder named hasil to find the images.
Frisda Sianipar
Frisda Sianipar il 1 Mar 2021
no result sir

Accedi per commentare.

Risposta accettata

Jan
Jan il 1 Mar 2021
Modificato: Jan il 2 Mar 2021
Your code must fail with an error message in this line:
outfile = fullfile(outfolder, sprintf(['%s-coba-%03d.%s',basename,'.jpg']));
The SPRINTF command has 3 format specifiers, but no corresponding values. Maybe you mean:
outfile = fullfile(outfolder, sprintf('%s-coba-%03d.jpg', basename, iFiles));
% [EDITED] Typo fixed: iFile -> iFiles
  3 Commenti
Walter Roberson
Walter Roberson il 1 Mar 2021
outfile = fullfile(outfolder, sprintf('%s-coba-%03d.jpg', basename, iFiles));
Frisda Sianipar
Frisda Sianipar il 2 Mar 2021
Thankyou sir, its work

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by