Save a sequence of images in a new folder

I have this code:
miFolder='C:\Users\karina\Documents\MATLAB\11';
if ~isdir(miFolder)
errorMensaje = sprintf('Error: El folder no existe:\n%s', miFolder);
uiwait(warndlg(errorMensaje));
return;
end
filePatron = fullfile(miFolder, '*.jpg');
jpegFil = dir(filePatron);
Resultados='C:\Users\karina\Documents\MATLAB\11\SerieN';
mkdir(Resultados);
for k = 1:10
baseFN = jpegFil(k).name;
fullFN = fullfile(miFolder, baseFN);
I=imread(fullFN);
I2=imcrop(I,[167.5 0.5 660 524]);
imwrite(I2,[Resultados,num2str(k),'.png']);
end
Then what I want is to save the images in the C:\Users\karina\Documents\MATLAB\11\SerieN location but the images of the SerieN are saved in the C:\Users\karina\Documents\MATLAB\11. All the images are saved as SerieN1.png, SerieN2.png and so on, that's ok but I need to those images will be saved in the correct folder. Thank you for your time. Regards.

 Respuesta aceptada

Image Analyst
Image Analyst el 11 de Jul. de 2014
Editada: Image Analyst el 31 de Dic. de 2017
If you're not going to use fullfile(), and use concatenation like you did, you need to add a trailing space to your folder. It's best to use fullfile() which takes care of all that for you.
baseFileName = sprintf('%d.png', k); % e.g. "1.png"
fullFileName = fullfile(Resultados, baseFileName); % No need to worry about slashes now!
imwrite(I2, fullFileName);

3 comentarios

Karina
Karina el 16 de Jul. de 2014
Thank you Image Analyst. Can I ask you a favor? I have a problem,I finally ended all my files in Matlab. But now the instruction is to compile and create dll in order to read them in Labview. Do you know something related about this? In fact I already have asked but nobody has answered yet. Also I've researched, but I didn't found the correct way to do this. I hope you can help me. Thank you.
Image Analyst
Image Analyst el 16 de Jul. de 2014
I've just compiled m-files into standalone executables, not DLLs, so I don't think I'm of much help there. Call the Mathworks and ask them. The compiler is very expensive so you might as well get something for your support payment.
Githae Wanyawira
Githae Wanyawira el 31 de Dic. de 2017
Thanks Analyst for the great assistance

Iniciar sesión para comentar.

Más respuestas (2)

Ali Noori
Ali Noori el 12 de Jun. de 2015
Editada: Walter Roberson el 12 de Jun. de 2015
For example, if you have video (video.avi) in matlab directory and you want to convert this video into frame sequences and save them in new folder (IMAGESEQUENCES). write this code below:
%%code %%
video = VideoReader('video.avi');
OutVideoDir = 'IMAGESEQUENCES';
mkdir(OutVideoDir);
for i = 1:video.NumberOfFrames
img = read(video,i);
baseFileName = sprintf('%d.png', i); % e.g. "1.png"
fullFileName = fullfile(OutVideoDir, baseFileName);
imwrite(img, fullFileName);
end
David Young
David Young el 11 de Jul. de 2014
Instead of
imwrite(I2,[Resultados,num2str(k),'.png']);
try
imswrite(I2, fullfile(Resultados, ['SerieN', num2str(k), '.png']));

Categorías

Más información sobre Convert Image Type en Centro de ayuda y File Exchange.

Preguntada:

el 11 de Jul. de 2014

Editada:

el 31 de Dic. de 2017

Community Treasure Hunt

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

Start Hunting!

Translated by