"The input images for activations must be of size equal to or greater than [28 28 1]." when using the activations method for CNN?

조회 수: 2 (최근 30일)
My code is:
net = trainNetwork(imdsTrain,layers, options);
imageSize = net.Layers(1).InputSize;
augmentedTrainingSet = augmentedImageDatastore(imageSize, imdsTrain, 'ColorPreprocessing', 'gray2rgb');
augmentedTestSet = augmentedImageDatastore(imageSize, imdsValidation, 'ColorPreprocessing', 'gray2rgb');
featureLayer = 'fc';
trainingFeatures = activations(net, augmentedTrainingSet, featureLayer);
And I take an error as "The input images for activations must be of size equal to or greater than [28 28 1]."
Why I'm taking this error, how can I fix it?
I would be glad if you answer

답변 (2개)

Sai Bhargav Avula
Sai Bhargav Avula 2020년 4월 9일
편집: Sai Bhargav Avula 2020년 4월 9일
Hi,
To the best of my knowledge the issue is because of 'ColorPreprocessing'. It is generally used when you have a mix of gray scale and color images(specifically RGB) and to sure that all output images have the same number of channels . In this case the network is expecting [28 28 1] but by using 'ColorPreprocessing' to 'gray2rgb' the image set channels are converted from 1 to 3 because of which that particular error is thrown.
Try removing the ColorPreprocessing name value argument and I believe it should work.
Hope this helps!

Ebru PEKEL
Ebru PEKEL 2020년 1월 31일
When you mean "augmentedTrainingSet "? It is size in [28 28]

카테고리

Help CenterFile Exchange에서 Deep Learning Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by