How to change file name and convert the file

3 views (last 30 days)
Hello,
I have written (borrowed from another user) a very simple code to open a file, resize it, convert to grayscale then save it back into my with a new format and name.
I1=imread('D0159.jpg')
I2 = imresize(I1,[256 256]);
In=rgb2gray(I2)
figure; imshow(In)
imwrite(In,'CottonFiber0016.png')
What I would like to do is automate this. I have seen other people do similar, however I can not make it work. I have a lot of files in a folder and I need them to open, convert and save as new name and autoincrement the number at the end of the file name. You can see I stopped at 16 because I realized there must be a faster way.
Thanks for your help

Accepted Answer

Stephen23
Stephen23 on 26 Nov 2018
Edited: Stephen23 on 26 Nov 2018
S = dir('*.jpg');
for k = 1:numel(S)
im = imread(S(k).name);
im = imresize(im,[256,256]);
im = rgb2gray(im);
fn = sprintf('CottonFiber%04d.png',k);
imwrite(im,fn)
end
See also:

More Answers (0)

Categories

Find more on Data Import and Analysis in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!