MATLAB Answers

save new images in a folder

2 views (last 30 days)
narges
narges on 25 Jan 2020
Edited: narges on 25 Jan 2020
Hi there,
I need to read several images from a folder (BigImage), split them into 4, and save the new images in another folder(Split).
here is my code, imwrite it will save only one new image, how ceate a loop to save all the new images?
N = 'C:\Users\BigImage';
S = dir(fullfile(N,'*.png'));
for k = 1:numel(S)
F = fullfile(N,S(k).name);
I = imread(F);
[r c p]= size(I);
A = I(1:r/2, 1:c/2, :);
B = I(1:r/2, c/2+1:c, :);
C = I(r/2+1:r, 1:c/2, :);
D = I(r/2+1:r, c/2+1:c, :);
cd 'C:\Users\split'
for ii = 1:k
imwrite( B, strcat ('part2', num2str(ii),'.png'));
end
end

  0 Comments

Sign in to comment.

Accepted Answer

KALYAN ACHARJYA
KALYAN ACHARJYA on 25 Jan 2020
Edited: KALYAN ACHARJYA on 25 Jan 2020
#Do change as per requirement.
Images=dir('C:\input_path\folder_name\*.png'); % Create Folder
outDirectory='C:\out_put_path\out_folder_name\'; % Save Folder
for i=1:length(Images)
ImgName=strcat('C:\C:\input_path\folder_name\',Images(i).name);
In_image=imread(ImgName);
%% Do operation
%Save the image, say result_image
imwrite(result_image,strcat(outDirectory,Images(i).name));
end

  3 Comments

narges
narges on 25 Jan 2020
Thank you Kaylan, Its work :)
KALYAN ACHARJYA
KALYAN ACHARJYA on 25 Jan 2020
Consider all images in one folder, output folfer will automatically creates in the respective path
Images=dir('C:\Users\BigImage\*.png'); % Create Folder
%.....................^^ Input Folder Name
outDirectory='C:\Users\Desktop\split' % Output folder will automatically creates
narges
narges on 25 Jan 2020
Yes, Thanks a lot

Sign in to comment.

More Answers (0)

Sign in to answer this question.