How can i fix this error?

2 次查看(过去 30 天)
Hello, i have a problem with the size of the training data. i've done the augmentedImageDatastore function to fix it but when i do the trainNetwork function they say that the size of the training images is not the same as the size that the input layer expects. How can i fix this error? Here is my code
Flowers ='C:\Users\hind';'deeplearning_course_files';'Flowers';
flowerds = imageDatastore(Flowers,"IncludeSubfolders",true,"LabelSource","foldernames");
[trainImgs,testImgs] = splitEachLabel(flowerds,0.6);
numClasses = numel(categories(flowerds.Labels));
net = googlenet;
lgraph = layerGraph(net);
newFc = fullyConnectedLayer(12,"Name","new_fc");
lgraph = replaceLayer(lgraph,"loss3-classifier",newFc);
newOut = classificationLayer("Name","new_out");
lgraph = replaceLayer(lgraph,"output",newOut);
options = trainingOptions("sgdm","InitialLearnRate", 0.001);
auds = augmentedImageDatastore([224 224],flowerds,"ColorPreprocessing","gray2rgb");
[flowernet,info] = trainNetwork(trainImgs, lgraph, options);
  4 个评论
Jan
Jan 2021-3-19
The line
Flowers ='C:\Users\hind';'deeplearning_course_files';'Flowers';
does exactly the same as:
Flowers ='C:\Users\hind';
Do you mean:
Flowers = 'C:\Users\hind\deeplearning_course_files\Flowers';
Hind Haboubi
Hind Haboubi 2021-3-19
thank you, I'll try it

请先登录,再进行评论。

采纳的回答

Srivardhan Gadila
Srivardhan Gadila 2021-3-22
Even though you are creating a "auds" augmentedImageDatastore object, you are not using it to train your network. Change the line
[flowernet,info] = trainNetwork(trainImgs, lgraph, options);
to
[flowernet,info] = trainNetwork(auds, lgraph, options);

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image Data Workflows 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by