Impossible to import .onnx with importONNXLayers

5 views (last 30 days)

I am trying to import different onnx models from official repo. importONNXLayers always ends with error:

  • ArcFace throws: Error using importONNXLayers (line 39) Size vector must have at least two elements.
  • SqueezeNet throws: Error using importONNXLayers (line 39) Node 'squeezenet0_flatten0_reshape0': The Reshape operator is supported only when it performs a flattening operation.
  • Emotion FerPlus throws: Error using importONNXLayers (line 39) Node 'Times622_reshape1': The Reshape operator is supported only when it performs a flattening operation.

I followed official documentation for using importONNXLayers function:

 layers = importONNXLayers('squeezenet1.1.onnx','OutputLayerType','classification');

What is wrong here?

  2 Comments
Kevin Chng
Kevin Chng on 21 Oct 2018
Hi, I have encountered this problem with different error after downloading the support package.
modelfile = 'cifarResNet.onnx';
classes = ["airplane" "automobile" "bird" "cat" "dee" "dog" "frog" "horse" "ship" "truck"];
net = importONNXNetwork(modelfile,'OutputLayerType','classification','Classes',classes)
Error using onnxmex
Opening file 'cifarResNet.onnx' failed.
Error in nnet.internal.cnn.onnx.ModelProto (line 31)
ModelPtr = onnxmex(int32(FuncName.EdeserializeFromFile), filename);
Error in nnet.internal.cnn.onnx.importONNXNetwork (line 8)
m = nnet.internal.cnn.onnx.ModelProto(Filename);
Error in importONNXNetwork (line 53)
Network = nnet.internal.cnn.onnx.importONNXNetwork(ModelFile, varargin{:});
I don't understand as well. Are you able to run the code above?
tesarj13
tesarj13 on 21 Oct 2018
I downloaded resnet50v2.onnx from repo ( where am I supposed to get the 'cifarResNet.onnx' file anyway?) and error on line 39 is: Node 'resnetv24_flatten0_reshape0': The Reshape operator is supported only when it performs a flattening operation.
Also there are two almost same functions: importONNXNetwork and importONNXLayers. Both throw same errors..

Sign in to comment.

Answers (2)

Don Mathis
Don Mathis on 26 Oct 2018
Those ONNX models are somewhat unusual in their use of the Reshape operator. We are actively working on supporting more ONNX operators, and we specifically aim to be able to import models in the ONNX model zoo.

cui,xingxing
cui,xingxing on 24 Jan 2019
I also encountered the misplacement of the imported onnx model. I exported the pre-trained alexnet in pytorch, but the following error occurred when importing onnx in matlab. How can I solve this problem? Thank you
360截图20190124154320093.jpg
  3 Comments
cui,xingxing
cui,xingxing on 26 Jan 2019
It' same error, thank your advice! but i want to use other model networks in pytorch,then import to matlab to use.
importONNXNetwork/importONNXLayers does not seem to be perfect, there are many operations that are not supported, and it is hoped that the 2019a version will provide its robustness.
Kevin Chng
Kevin Chng on 27 Jan 2019
Ya, i guess not all the layers of deep learning are supported by MATLAB currently.

Sign in to comment.

Categories

Find more on Image Data Workflows in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!