Problem with CNN after compiling

Hello, I created CNN, train the network and then i tried to clasify images. Everything was good, but after I compile my figure to .exe, I'm getting this eror:"Variable 'net' originally saved as a SeriesNetwork cannot be instantiated as an object and will be read in as a uint32."
Problem is in this row: "predictedLabels = classify(net,spektrogram);"
Can anyone help pls?

Réponses (1)

Antti
Antti le 8 Jan 2021

1 vote

It looks like your executable doesn't know how to handle the network object. You can try explicitly including the class definition file in your executable.
You can find the directory containing "SeriesNetwork" by executing the following command in the MATLAB command window:
>> which SeriesNetwork
It will likely look something like this:
"C:\Program Files\MATLAB\<version>\toolbox\nnet\cnn\SeriesNetwork.m"
Then you can include the directory containing the class definition using the "-a" flag for "mcc".
Your final compilation command will look something like this:
mcc -m yourApplication.m -a "C:\Program Files\MATLAB\<version>\toolbox\nnet\cnn"

1 commentaire

Bruno
Bruno le 9 Mar 2023
Modifié(e) : Bruno le 9 Mar 2023
I had a similar problem, but when using the Library Compiler (Python Package). Your suggestion worked for me, but it produced a 27 MB instead of 700 kB .ctf file in the end. I'm wondering if there's an alternative way to save the output of trainNetwork and load it from a compiled file (e.g., .ctf as a Python package).

Connectez-vous pour commenter.

Catégories

Produits

Version

R2018b

Modifié(e) :

le 9 Mar 2023

Community Treasure Hunt

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

Start Hunting!

Translated by