Reducing the size of images by a loop

4 次查看(过去 30 天)
Here I reduced the size of an image. But I want to reduce the size of all the images of my folder. Images are : abc_20190304_0001 to abc_20190304_0095. How can I make the loop?
I=imread('abc_20190304_0001.png');
imshow abc_20190304_0001.png
L = imresize(I,.25,'bilinear');
figure, imshow(L);

采纳的回答

KSSV
KSSV 2021-9-8
imgNames = dir('*.png') ; % give your exntenion of images in the folder
N = length(imgNames) ; % toal number of images
% loop for each image
for i = 1:N
thisImg = imgNames(i).name ;
I=imread(thisImg);
figure(1)
imshow(I) ;
L = imresize(I,.25,'bilinear');
figure(2)
imshow(L);
end
  7 个评论
Joydeb Saha
Joydeb Saha 2021-9-8
Can you just make me understand the last two lines...
consider my path name is : E:\MW\Channel
and I want to save it in the same folder as : abc_20190304_0001, abc_20190304_0002 ....abc_20190304_0095 etc
Image Analyst
Image Analyst 2021-9-8
You can use sprintf()
baseFileName = sprintf('%4.4d.png', i); % 0001.png for example.
fullOutputFileName = fullfile(outputFolder, baseFileName);
imwrite(L, fullOutputFileName);

请先登录,再进行评论。

更多回答(1 个)

Joydeb Saha
Joydeb Saha 2021-9-8
well the problem is solved

类别

Help CenterFile Exchange 中查找有关 Convert Image Type 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by