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 visualizzazione (ultimi 30 giorni)
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)

Risposta accettata

nima aalizade
nima aalizade il 16 Feb 2018
Modificato: nima aalizade il 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.

Più risposte (1)

abdulkader helwan
abdulkader helwan il 25 Dic 2017
Hello.. i am having the same problem here. could u please tell me how u solved it if u did so. thanks
  4 Commenti
nima aalizade
nima aalizade il 16 Feb 2018
Modificato: nima aalizade il 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.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by