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.

8 visualizzazioni (ultimi 30 giorni)
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?

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 17 Ago 2021
Modificato: MathWorks Support Team il 27 Set 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.

Più risposte (0)

Categorie

Scopri di più su Get Started with Deep Learning Toolbox in Help Center e File Exchange

Prodotti


Release

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by