Why am i getting 'Not enough input arguments?

function out = CodeNNet(in)
persistent NNet
if isempty(NNet)
NNet = coder.loadDeepLearningNetwork('NNet.mat');
end
out = predict(NNet,in);
cfg = coder.config('lib');
cfg.TargetLang = 'C++';
cfg.GenCodeOnly = true;
dlcfg = coder.DeepLearningConfig('arm-compute');
dlcfg.ArmArchitecture = 'armv8';
dlcfg.ArmComputeVersion = '20.02.1';
cfg.DeepLearningConfig = dlcfg;
codegen -args {ones(256,256,3,'single')} -config cfg CodeNNet

11 comentarios

Ignacio Acevedo
Ignacio Acevedo el 24 de Mzo. de 2021
Im trying to generate the C++ code for a trained neural network, but i get an error in line 8 about not enough input arguments
Jan
Jan el 24 de Mzo. de 2021
Please post a copy of the complete error message. Which function does not get enough input arguments? predict, or is in a function also, or do you call the function CodeNNet without input arguments, e.g. by starting it using the green triangle in the editor?
Gaurav Garg
Gaurav Garg el 27 de Mzo. de 2021
Hi Igancio,
Can you post a picture of the error you are facing?
Jan
Jan el 27 de Mzo. de 2021
I assume, this thread is abandoned.
John D'Errico
John D'Errico el 27 de Mzo. de 2021
Poor sad thread, unloved and abandoned.
Jan
Jan el 27 de Mzo. de 2021
I do love this thread. I do care and Gaurav does also and you, John, show your emotions as well.
Thread, we are here, if you need us.
Ignacio Acevedo
Ignacio Acevedo el 27 de Mzo. de 2021
Ignacio Acevedo
Ignacio Acevedo el 27 de Mzo. de 2021
i understand that i have no input for the function but is it possible to generate C++ code just for the Neural Network itself?
Walter Roberson
Walter Roberson el 27 de Mzo. de 2021
You need a prototype call to generate code, as code generation specializes the datatypes according to the prototype.
Ignacio Acevedo
Ignacio Acevedo el 27 de Mzo. de 2021
Like a script where the function is called and tested with a test input?
The
codegen -args {ones(256,256,3,'single')} -config cfg CodeNNet
should not be part of the source code, and the function name must go before the -args

Iniciar sesión para comentar.

Respuestas (1)

Gaurav Garg
Gaurav Garg el 30 de Mzo. de 2021
Hi,
From what seems to be the problem so far-
You should not include
codegen -args {ones(256,256,3,'single')} -config cfg CodeNNet
in your source code.

Categorías

Más información sobre Deep Learning Toolbox en Centro de ayuda y File Exchange.

Preguntada:

el 24 de Mzo. de 2021

Respondida:

el 30 de Mzo. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by