Problem with CNN after compiling

3 vues (au cours des 30 derniers jours)
Slavomír Duga
Slavomír Duga le 16 Mar 2019
Modifié(e) : Bruno le 9 Mar 2023
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
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.

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by