How to save multiple images in the same folder?

2 Ansichten (letzte 30 Tage)
Sahar abdalah
Sahar abdalah am 1 Jan. 2016
Kommentiert: Walter Roberson am 4 Jan. 2016
hello, I have several images that are saved in different folders and I want to arrange theses images in a single folder. please, any suggestion of matlab code? thanks in advances

Akzeptierte Antwort

Image Analyst
Image Analyst am 1 Jan. 2016
Perhaps use my demo. In the middle of the loop is where you would stick a call to copyfile() or movefile().

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 1 Jan. 2016
The function you supply would movefile()
Watch out for duplicate file names! Watch out for bugs while you get the code working...
If I were developing the code, I would refrain from moving the files unless I had good reason. I would either copy the files or I would create links to the files.
  2 Kommentare
Sahar abdalah
Sahar abdalah am 1 Jan. 2016
thank you for your reply, but I am new in matlab and I did not understand the importance of this link in the resolution of my problem. simply, I have images with different names and are stored in multiple folders, my goal is to copy all images in a single folder. I have a folder: flowers that contain 12 others folders (category 1, category 2, ......, category 12). and each folder contain a list of images corresponding to the category of flowers. my goal is to save these images in a new folder called flowerCategory. Any idea please for matlab code?
Walter Roberson
Walter Roberson am 4 Jan. 2016
sourcedir = fullfile(pwd, 'flowers');
destdir = fullfile(pwd, 'flowerCategory');
if ~exist(destdir,'dir')
[success, message, messageid] = mkdir(destdir);
if ~success
error(messageid, sprintf('Failed to create directory "%s" because "%s"', destdir, message) );
end
end
%find the potential source directories
dinfo = dir( fullfile(sourcedir, 'category*') );
%remove everything that is not a directory
dinfo(~[dinfo.isdir]) = [];
for J = 1 : length(dinfo) %for each source directory
thisdir = fullfile(sourcedir, dinfo(J).name);
%find potential files in directory
finfo = dir( thisdir );
%get rid of the things that are not files
finfo([finfo.isdir]) = [];
for K = 1 : length(finfo) %for each file in directory
thisfile = fullfile(thisdir, finfo(K).name );
%make a copy of it
copyfile(thisfile, destdir);
end
end

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu File Operations finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by