0
私はMatlabの初心者です。私は以下のようなコードを持っています。複数のフォルダを読む方法。私はループを使用して知っているが、何とか私はそれを見つけることができない私はグーグル。また、私が以下に書いたのは、myAフォルダです。同じマットにfeatureVectorを置く方法myA、myB、myCのAllTrain?フォルダにはイメージが含まれています。複数のフォルダmatlabにアクセスして同じマットに保存
clear all;
clc;
trainlabel = [];
featureVector = [];
AllTrain = [];
% Specify the folder
myA = 'C:\Users\NotComplex\a';
myB = 'C:\Users\NotComplex\b';
myC = 'C:\Users\NotComplex\c';
for k = 1 : length(theFiles)
baseFileName = theFiles(k).name;
fullFileName = fullfile(myA, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
% Now imread the file
imageArray = imread(fullFileName);
imageEdge = edge(imageArray, 'canny', 0.4);
a_inv_mom = Hu_Moments(imageEdge);
format short
a_inv_mom_normal = -sign(a_inv_mom).*(log10(abs(a_inv_mom)));
featureVector = cat(1,a_inv_mom_normal);
AllTrain(k,:) = [featureVector k];
% imshow(imageEdge); % Display image.
drawnow % Force display to update immediately.
end
のすべてから
.pgm
のすべてのファイルが含まれています、あなたのループを継続することができます: 'theFiles'の内容は何ですか? – DVarga多分あなたの質問は重複しています。これを試してください:http://stackoverflow.com/questions/11980192/matlab-multiple-folders?rq=1 –
filePattern = fullfile(myA、 '* .pgm'); theFiles = dir(filePattern);私はコードを貼り付けるのを忘れた。ごめんなさい。 @DVarga。 – Afiq