Matlab 中的copyfile函式使用小記

2021-08-29 00:05:52 字數 1970 閱讀 6829

因為最近使用labelimg軟體標註訓練,我把標記好的和標註檔案放置在乙個資料夾下,由於有多批次標註,每標註一批放在乙個資料夾下,最終放置的資料夾如下:

現在我需要把這些資料夾下的和標註檔案集中到兩個檔案imset(用於放置所有的標註),anotset(用於放置所有的標註檔案)

為此我寫了乙個matlab程式,主要函式是copyfile,好了現在直接上matlab程式吧

%2018/09/07 by dq

clc;

clear;

close all;

disperalmainfolder='h:\workfile\secondperoidanotbackup';

concentratefolder='c:\users\administrator\desktop\secondperoidunifyset';

oldfileset=dir(concentratefolder);

oldfileset(1:2)=;

if ~isempty(oldfileset)

disp('the folder exists other files');

return

endimfolderpath=fullfile(concentratefolder,'imset');

if ~exist(imfolderpath,'dir')

mkdir(imfolderpath);

endanotfolderpath=fullfile(concentratefolder,'anotset');

if ~exist(anotfolderpath,'dir')

mkdir(anotfolderpath);

endfolderset=dir(disperalmainfolder);

foldernum=length(folderset);

for i=3:foldernum

foldername=folderset(i).name;

folderpath=fullfile(disperalmainfolder,foldername);

xmlfileset=dir(strcat(folderpath,'\*.xml'));

xmlfilenum=length(xmlfileset);

fprintf('%s xmlfilenum=%d\n',foldername,xmlfilenum);

%%%%%%%start%%%%%%%%%%

for k=1:xmlfilenum

xmlfilename=xmlfileset(k).name;

xmlfilepath=fullfile(folderpath,xmlfilename);

copyfile(xmlfilepath,anotfolderpath);%複製標註檔案到指定的資料夾

copyfile(impath,imfolderpath);%複製到指定的資料夾

end%%%%%%%end%%%%%%%%%%

% %%上述start和end之間的程式有一種更簡潔的方式

% xmlfiles=strcat(folderpath,'\*.xml');%複製資料夾folderpath下所有字尾名為.xml的檔案

% copyfile(xmlfiles,anotfolderpath);

% imfiles=strcat(folderpath,'\*.jpg');%複製資料夾folderpath下所有字尾名為.jpg的檔案

% copyfile(imfiles,imfolderpath);

end

Matlab中的括號()

matlab中經常會用到括號去引用某array或者是cel l的內容,但三者有什麼具體區別呢?中括號用來構建向量 vectors 或者是矩陣 matrices 如 6.9 9.64 sqrt 1 就是乙個有三個元素的向量。11 12 13 21 22 23 是乙個二乘三的矩陣.分號 用來結束一行。中...

Matlab中的括號()

標籤 matlab 括號 cell array 分類 matlab matlab中經常會用到括號去引用某array或者是cell的內容,但三者有什麼具體區別呢?中括號用來構建向量 vectors 或者是矩陣 matrices 如 6.9 9.64 sqrt 1 就是乙個有三個元素的向量。11 12 ...

Matlab中的括號()

matlab中經常會用到括號去引用某array或者是cell的內容,但三者有什麼具體區別呢?中括號用來構建向量 vectors 或者是矩陣 matrices 如 6.9 9.64 sqrt 1 就是乙個有三個元素的向量。11 12 13 21 22 23 是乙個二乘三的矩陣.分號 用來結束一行。中括...