Encountered the following error when using the Luxonis Blob Converter:

Error message

Command failed with exit code 1, command: /opt/intel/openvino2022_1/tools/compile_tool/compile_tool -m /tmp/blobconverter/3f906014c1884ed98dfb21e91a4307d7/xfeat/FP16/xfeat.xml -o /tmp/blobconverter/3f906014c1884ed98dfb21e91a4307d7/xfeat/FP16/xfeat.blob -c /tmp/blobconverter/3f906014c1884ed98dfb21e91a4307d7/myriad_compile_config.txt -d MYRIAD

Console output (stdout)

OpenVINO Runtime version ......... 2022.1.0

Build ........... 2022.1.0-7019-cdb9bec7210-releases/2022/1

Error output (stderr)

Cannot create Interpolate layer /Resize id:3 from unsupported opset: opset11

However, if i set opset = opset10 when exporting to onnx, I will get the following error:
torch.onnx.errors.SymbolicValueError: Unsupported: ONNX export of index_put in opset 9. Please try opset version 11. [Caused by the value '488 defined in (%488 : Long(*, *, *, strides=[1638, 2, 1], requires_grad=0, device=cpu) = onnx::ReduceSumaxes=[1], keepdims=0, scope: modules.xfeat.XFeat:: # /home/qilong/Dev/feature_tracking_with_xfeat/accelerated_features/modules/xfeat.py:326:0

)' (type 'Tensor') in the TorchScript graph. The containing node has kind 'onnx::ReduceSum'.]

Is there a way to get around this?

Hi @fql
Use a different opset version (maybe 12).

Thanks,
Jaka

  • fql replied to this.

    jakaskerl I guess it is not supported in blob converter from opset11 onwards, so I still got the same error

    Hi @fql
    How are you converting the model? Have you tried first converting it to another representation (ONNX)?

    Thanks,
    Jaka

    • fql replied to this.

      Hi jakaskerl

      I am converting it to ONNX and then Openvino IR. I have tried using the ONNX representation, it did not work as well.

      Hi @fql
      Try substituting the interpolate layer with "resize" to see if it helps.

      Another option is to use the ONNX Simplifier to do that for you.

      Thoughts?

      • fql replied to this.

        Hi jakaskerl

        I've tried these methods and still did not work, my guess is that resize and many other ops are at version 11, since opset 11 updated many ops to version 11, the only way out is adding support for opset 11 onwards.

        Hi just an update jakaskerl

        I've discovered some operations in the network that results in outputs of variable shape(not static), maybe that is the part that went wrong, I'll try to debug from there.

        Hi @fql
        That would make sense, since the model converter expects a static model. It will throw an error otherwise.