opencv - 如何通过 cv2.dnn.readNetFromTorch() 读取 pytorch 模型文件?
问题描述
我可以保存 PyTorch 自定义模型吗?(它可以工作在 1.0 以上的任何 PyTorch 版本)
但是,我无法读取保存的模型。我正在尝试通过 cv2.dnn.readNetFromTorch() 读取它,以便在 Opencv 框架(4.1.0)中使用该模型。
我用不同的方法保存了 PyTorch 模型如下,看看这种差异是否对 cv2.dnn 的读取功能有反应。
torch.save(model.state_dict(), '/home/aktaseren/people-opencv/pidxx.pt')
torch.save(model.state_dict(), '/home/aktaseren/people-opencv/pidxx.t7')
torch.save(model, '/home/aktaseren/people-opencv/pidxx.t7')
torch.save(model, '/home/aktaseren/people-opencv/pidxx.pth')
这些保存的文件都不能通过 cv2.dnn.readNetFromTorch() 读取。
在这个问题上,我得到的错误总是相同的,如下所示。
cv2.error: OpenCV(4.1.0) ../modules/dnn/src/torch/torch_importer.cpp:1022: error: (-213:The function/feature is not implemented) Unsupported Lua type in function 'readObject'
你知道如何解决这个问题吗?