我正在使用YOLACT++,并且想使用C ++进行部署。最初,该模型另存为yolact.pth文件,我从无法直接将.pth转换为可以在C ++ see this issue中调用的.pt文件的问题中意识到,我需要先将其转换为ONNX发出yolact.onnx作为输出。我在问题中使用this解决方案将其转换为ONNX,在下面的注释中,您可以看到他用来从yolact.pth实现yolact.onnx转换模型的终端命令。
所以我的问题是我不太了解接下来如何使用C ++部署它。我应该在寻找从yolact.onnx转换为yolact.pt的解决方案还是可以从C ++调用yolact.onnx?问题here的工作流程中有一个有趣的方向: Pytorch-> ONNX-> NCNN ,他在ARM设备上使用C ++推理对其进行了测试。这是我要找的东西吗?我对C ++不太熟悉,所以我不知道方向。
我还尝试将其添加到被称为模型的eval.py的末尾:
sm = torch.jit.script(net)
sm.save("Yolact.pt")
我得到了错误:
torch.jit.frontend.UnsupportedNodeError: with statements aren't
supported: (line 570 in yolact.py)
第570行是:
with timer.env('backbone'):
我注释掉了它,并在第574行的下一个“ timer.env”中给出了错误,依此类推!