Borrar filtros
Borrar filtros

why do I get the error Undefined function or variable 'net'. Error in testalexnet1 (line 16) trainingFeatures = activation​s(net,trai​ningImages​,layer);

16 visualizaciones (últimos 30 días)
I am trying to create my own image data store and this is my code
trainingFeatures = activations(net,trainingImages,layer);
  4 comentarios
Hridya PI
Hridya PI el 18 de Dic. de 2017
Editada: Walter Roberson el 18 de Dic. de 2017
imds1 = imageDatastore(fullfile(matlabroot,'toolbox','matlab','images','New Folder'),...
'IncludeSubfolders',true,'FileExtensions','.jpg','LabelSource','foldernames')
%data = read(imds)
Hridya PI
Hridya PI el 18 de Dic. de 2017
Editada: Walter Roberson el 18 de Dic. de 2017
[trainingImages,testImages] = splitEachLabel(imds1,0.7,'randomized');
numTrainImages = numel(trainingImages.Labels);
idx = randperm(numTrainImages,11);
figure
for i = 1:11
subplot(4,4,i)
I = readimage(trainingImages,idx(i));
imshow(I)
end
layer = 'fc7';
trainingFeatures = activations(net,trainingImages,layer);
testFeatures = activations(net,testImages,layer);
trainingLabels = trainingImages.Labels;
testLabels = testImages.Labels;
classifier = fitcecoc(trainingFeatures,trainingLabels);
predictedLabels = predict(classifier,testFeatures);idx = [1 5 10 15];
figure
for i = 1:numel(idx)
subplot(2,2,i)
I = readimage(testImages,idx(i));
label = predictedLabels(idx(i));
imshow(I)
title(char(label))
end

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 18 de Dic. de 2017
Considering the name of your file testalexnet1 it appears that you missed
net = alexnet;

Más respuestas (1)

Hridya PI
Hridya PI el 19 de Dic. de 2017
Editada: Walter Roberson el 19 de Dic. de 2017
Error using SeriesNetwork/activations (line 794)
'OutputAs' must be 'channels' to use activations on images larger than the network's imageInputLayer.InputSize.
Error in testalexnet1 (line 17)
trainingFeatures = activations(net,trainingImages,layer);
now this is the error .
i changed the line of code as
trainingFeatures = activations(net,trainingImages,layer,'outputAs','channels');
is this right?
  7 comentarios
Hridya PI
Hridya PI el 30 de Dic. de 2017
Editada: Walter Roberson el 30 de Dic. de 2017
Now, I completed the Alexnet Training with my dataset. How I can input an image and make the network predict it? I tried the code below.Butb it takes tha classnames of the pretrained network.Not the classnames that I newly created.
img= imread('D:\as.jpg');
img = imresize(I,[227 227]);
label = classify(net,img)
figure
imshow(img)
title(char(label))
and also the code
net.Layers(end).ClassNames(1:6)
gives the classnames of pretrained network only. What should I do to give an input to the net. Please help

Iniciar sesión para comentar.

Categorías

Más información sobre Image Data Workflows en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by