copying multiple images from one folder to other folder
5 ビュー (過去 30 日間)
古いコメントを表示
Dear Matlab Users ,
I have 10 folders contain images in the following folder ( " D:\ second_folders ") , inside this folder there are 10 folders names ( folder1 , folder2 ..... , folder10 ) , i need to read each image in each folder and copy the image to another main folder ("D:\ master_folder" ) if its satisfy conditions and put it that copied image in same folder name that it comes from .. for example if image1 was read from folder1 in D:\ second_ folder and satisfy conditions then copied to folder1 in D:\ master_folder and so on for others images in folders ,,,
conditions are :
image type must be .jpg or .png type ,
image size must be >=50 KB ,
thanks ..
2 件のコメント
採用された回答
Stalin Samuel
2016 年 1 月 27 日
編集済み: Stalin Samuel
2016 年 1 月 27 日
clear all
clc
M_dir = 'D:\ second_folders'% source directory
D_dir = 'D:\ master_folder'
files = dir(M_dir);% main directory
dirFlags = [files.isdir];
subFolders = files(dirFlags);%list of folders
for k = 1 :length(subFolders)
if any(isletter(subFolders(k).name))
c_dtry = strcat(M_dir,subFolders(k).name)
fileList = getAllFiles(c_dtry)%list of files in subfolder
for n1 = 1:length(fileList)
[pathstr,name,ext] = fileparts(fileList{n1})% file type
s = dir(fileList{n1});
S = s.bytes/1000;%file size
Im = imread(fileList{n1});
[h,w,d] = size(Im);%height width and dimension
if ((strcmp(ext,'.jpg')|strcmp(ext,'.png'))&S>=50&(write image dimension condition))% here you need to modify
baseFileName = strcat(name,ext);
fullFileName = fullfile(D_dir, baseFileName); % No need to worry about slashes now!
imwrite(Im, fullFileName);
end
end
end
end
7 件のコメント
Mammo Image
2017 年 10 月 3 日
I also have a txt files in the folder. How can I ignore the txt files from being copied and moved. Thanks
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Get Started with MATLAB についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!