Invalid training data. The output size (5) of the last layer doesn't match the number of classes (5). How to match output size??

1 Ansicht (letzte 30 Tage)
net=vgg16();
imds = imageDatastore(fullfile('E:\','data','labels'),...
'IncludeSubfolders',true,'FileExtensions','.dcm','LabelSource','foldernames');
labelCount = countEachLabel(imds);
trainingNumFiles = 105;
rng(1) % For reproducibility
[trainData,testData] = splitEachLabel(imds,...
trainingNumFiles,'randomize');
imageSize = [512 512 1];
numClasses = 5;
encoderDepth = 9;
lgraph = segnetLayers(imageSize,numClasses,encoderDepth);
plot(lgraph)
options = trainingOptions('sgdm','InitialLearnRate',1e-3, ...
'MaxEpochs',50,'VerboseFrequency',10);
seg = trainNetwork(imds,lgraph,options)

Akzeptierte Antwort

nima aalizade
nima aalizade am 16 Feb. 2018
Bearbeitet: nima aalizade am 16 Feb. 2018
hello,
for using SegNet, you most have pixel labeled data with image labeler. you can use this and this example to understand better.

Weitere Antworten (1)

abdulkader helwan
abdulkader helwan am 25 Dez. 2017
Hello.. i am having the same problem here. could u please tell me how u solved it if u did so. thanks
  4 Kommentare
nima aalizade
nima aalizade am 16 Feb. 2018
Bearbeitet: nima aalizade am 16 Feb. 2018
hello
for using SegNet, you most have pixel labeled data with image labeler. you can use this and this example to understand better.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by