error using classify on a trained cnn: For an image input layer, the input data must be a single image, a 4-D array of images, or an imageDatastore with the correct size.

1 visualización (últimos 30 días)
I have trained a cnn using "trainNetwork" following the workflow outlined in the "trainNetwork" documentation page: 
I would like to now use my trained network to classify images via the function "classify" (also mentioned in the example in the documentation.) When I call "classify", I get the following error: 
ERROR: Error using SeriesNetwork/predict (line 331)
For an image input layer, the input data must be a single image, a 4-D array of images, or an imageDatastore with the correct size.
Error in SeriesNetwork/classify (line 561)
scores = this.predict( X, varargin{:} );
However, I have checked my inputs to "classify" and ensured that the first input is a SeriesNetwork and the second is an ImageDatastore. What am I doing wrong?

Respuesta aceptada

MathWorks Support Team
MathWorks Support Team el 17 de Ag. de 2021
Editada: MathWorks Support Team el 27 de Sept. de 2021
As per the error, make sure that imageDatastore contains images with the correct size (pertaining to the sizes of the images used to train the network.) If the sizes do not match up, "imresize" can be used to adjust the sizes of the images to be classified.

Más respuestas (0)

Productos


Versión

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by