Application Compiler, error with an executable : importONNXNetwork requires the Deep Learning Toolbox Converter for ONNX Model

17 views (last 30 days)
Leopold LR
Leopold LR on 23 Jul 2019
Commented: misbah khan on 4 Feb 2021
I am trying to make an executable of a Matlab code using the Deep Learning Toolbox with Application Compiler.
The created executable make an error and display the following message:
matlab error.png
I have checked on the Add-On Explorer, the "Deep Learning Toolbox Converter for ONNX Model Format " is installed on my Matlab and the importONNXNetwork.m is automatically added to the list of "Files required for your application to run" in the Application Compiler.
The line 5 of test.m is the only use of the importONNXNetwork function:
modelfile = "AlexNet_pretrain_and_fit.onnx";
%testvie = uigetfile(pwd, "Neural network file");
classes = {'-1' '0' '1'};
outputtype = 'classification';
net = importONNXNetwork(modelfile,'OutputLayerType','classification',"Classes", classes) %line 5
To solve my problem I tried to:
  • Put the toolxbox folder in the same directory than test.m and compile.
  • Put the importONNXNetwork.m file in the same folder and add it to the list of files required for my application to run in the Application Compiler.
  • I check that Deep Learning Toolbox is supported by Application compiler, not all command are supported but I seem ok for importONNXNetwork.
  2 Comments
Leopold LR
Leopold LR on 6 Jan 2020
Hi,
I try again my code and I still have this problem. So I write this code;
modelfile = "AlexNet_pretrain_and_fit.onnx";
%testvie = uigetfile(pwd, "Neural network file");
classes = {'-1' '0' '1'};
outputtype = 'classification';
net = importONNXNetwork(modelfile,'OutputLayerType','classification',"Classes", classes)
%image_path = uigetdir(pwd, "Images folder"); %open local folder
image_path = "raw_images"
images_to_classify = imageDatastore(image_path);
images_to_classify.ReadFcn = @readFunctionTrain;
predictedLabels = [images_to_classify.Files , classify(net, images_to_classify)];
writematrix( predictedLabels , "results.csv")
Then I transform it in executable with "Application Compiler" (I use the defaults parameters).
Then I install the app and run it. Then it trow the importONNXNetwork error.
Personaly,since July I jump to Python to solve this problem, but it can help other people to solve it.

Sign in to comment.

Answers (4)




Jan
Jan on 21 Jan 2020
I just ran into the same issue when trying to deploy a Matlab executable for DeepLearning.
HR, since this appears to be a known problem, could you give us an estimate on a fix?
Thanks!

Community Treasure Hunt

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

Start Hunting!