Toybrick

标题: pytorch模型转RKNN模型加载失败 [打印本页]

作者: kurn    时间: 2021-3-4 21:42
标题: pytorch模型转RKNN模型加载失败
     环境为rknn1.6,自己的模型使用pytorch1.7训练得到的,首先把模型转为有网络结构的模型具体代码如下:
model = YoloBody(3,26 ,backbone=backbone ,pretrained=pretrained)


model_path = r"../logs/Epoch100-Total_Loss5.9059-Val_Loss5.0253.pth"

print('Loading weights into state dict...')

device = torch.device('cpu')
state_dict = torch.load(model_path, map_location=device)
model.load_state_dict(state_dict)
model.eval()

# 向模型中输入数据以得到模型参数
example = torch.Tensor(1,3,416,416)
trace_model = torch.jit.trace(model, example)
trace_model.save('./final.pt')

然后使用官方的例子将模型转为rknn模型:

--> Loading model
./final.pt ********************
加载失败
E Catch exception when loading pytorch model: ./final.pt!
E Traceback (most recent call last):
E   File "rknn\api\rknn_base.py", line 339, in rknn.api.rknn_base.RKNNBase.load_pytorch
E   File "rknn\base\RKNNlib\RK_nn.py", line 146, in rknn.base.RKNNlib.RK_nn.RKnn.load_pytorch
E   File "rknn\base\RKNNlib\app\importer\import_pytorch.py", line 128, in rknn.base.RKNNlib.app.importer.import_pytorch.ImportPytorch.run
E   File "rknn\base\RKNNlib\converter\convert_pytorch_new.py", line 2250, in rknn.base.RKNNlib.converter.convert_pytorch_new.convert_pytorch.load
E   File "rknn\base\RKNNlib\converter\convert_pytorch_new.py", line 2055, in rknn.base.RKNNlib.converter.convert_pytorch_new.PyTorchOpConverter.report_missing_conversion
E NotImplementedError: The following operators are not implemented: ['aten::detach', 'aten::to', 'aten::floor']

Process finished with exit code 0
请问怎样解决?(环境应该没问题,官方给的resnet50我转成功了)


作者: jefferyzhang    时间: 2021-3-4 23:44
请详细参看rknntoolkit转换文档。目前pytorch仅支持到1.6(rknntoolkit1.6)
作者: FMsunyh    时间: 2021-3-26 10:10
我也遇到这个问题,在转pytorch的模型时,遇到toolkit没有支持的算子,现在还不知道怎么整。
难搞哦.
作者: qq465943794    时间: 2021-4-16 17:03
jefferyzhang 发表于 2021-3-4 23:44
请详细参看rknntoolkit转换文档。目前pytorch仅支持到1.6(rknntoolkit1.6)

我遇到了同样的问题,可是我的pytorch版本是1.3.1,rknntoolkit版本是1.6。我训练的torch版本也是1.3.1
作者: jockeypan    时间: 2021-4-20 15:22
我也遇到了,pytorch 版本 1.6.0,rknntoolkit 1.6。
同样的模型,之前用pytorch 1.1, rknntoolkit 1.4可以正常转换。
作者: 小二黑    时间: 2021-5-19 08:31
jockeypan 发表于 2021-4-20 15:22
我也遇到了,pytorch 版本 1.6.0,rknntoolkit 1.6。
同样的模型,之前用pytorch 1.1, rknntoolkit 1.4可 ...

为什么我用的pytorch1.1.0和rknntoolkit 1.4不可以?我是单通道图像,应该改哪些地方呀?文档里都没有





欢迎光临 Toybrick (https://t.rock-chips.com/) Powered by Discuz! X3.3