Toybrick

Pytorch转ONNX成功, ONNX转RKNN失败

zheng_weiyu

新手上路

积分
49
楼主
发表于 2020-12-24 15:44:36    查看: 8137|回复: 1 | [复制链接]    打印 | 只看该作者
Pytorch转ONNX
环境:Ubuntu18.04 python==3.6
torch==1.4.0 torchvision==0.5.0 ONNX==1.4.1

ONNX转RKNN
RK3399Pro Linux Debian10
python==3.7  ONNX==1.4.1

错误信息如下:
尝试过torch,ONNX各种版本组合,未能成功
请问:
1.算子不识别? reshape?
2.应该如何调试?

W Catch exception when optimization onnx model: IndexError('_Map_base::at'). Ignored!
W Catch exception when polishing onnx model: IndexError('_Map_base::at'). Ignored!
E Try match Reshape_291ut0 failed, catch exception!
W ----------------Warning(2)----------------
E Catch exception when loading onnx model: ./weights/HandBoxes.onnx!
E Traceback (most recent call last):
E   File "rknn/base/RKNNlib/converter/convert_onnx.py", line 1109, in rknn.base.RKNNlib.converter.convert_onnx.convert_onnx.match_paragraph_and_param
E   File "rknn/base/RKNNlib/converter/convert_onnx.py", line 1007, in rknn.base.RKNNlib.converter.convert_onnx.convert_onnx._onnx_build_acu_layer
E   File "rknn/base/RKNNlib/converter/convert_onnx.py", line 976, in rknn.base.RKNNlib.converter.convert_onnx.convert_onnx._onnx_acu_param_assign
E   File "rknn/base/RKNNlib/converter/convert_onnx.py", line 956, in rknn.base.RKNNlib.converter.convert_onnx.convert_onnx._onnx_parse_param
E   File "rknn/base/RKNNlib/converter/convert_onnx.py", line 963, in rknn.base.RKNNlib.converter.convert_onnx.convert_onnx._onnx_parase_execute
E   File "<string>", line 1, in <module>
E KeyError: 0
E During handling of the above exception, another exception occurred:
E Traceback (most recent call last):
E   File "rknn/api/rknn_base.py", line 559, in rknn.api.rknn_base.RKNNBase.load_onnx
E   File "rknn/base/RKNNlib/converter/convert_onnx.py", line 1136, in rknn.base.RKNNlib.converter.convert_onnx.convert_onnx.match_paragraph_and_param
E   File "rknn/api/rknn_log.py", line 312, in rknn.api.rknn_log.RKNNLog.e
E ValueError: Try match Reshape_291ut0 failed, catch exception!
done
--> Building model
Traceback (most recent call last):
  File "model_transition.py", line 29, in <module>
    rknn.build(do_quantization=False)
  File "/home/toybrick/.local/lib/python3.7/site-packages/rknn/api/rknn.py", line 231, in build
    inputs = self.rknn_base.net.get_input_layers()
AttributeError: 'NoneType' object has no attribute 'get_input_layers'


回复

使用道具 举报

jefferyzhang

版主

积分
13578
沙发
发表于 2020-12-25 10:50:41 | 只看该作者
Try match “xxxx” failed,
意思就是 "xxxx" 这个OP不支持。
建议你加置顶帖官方RKNN QQ群里讨论下。
不支持要么等新版本rknn支持,要么尝试换OP绕过去,要么就是走RKNN自定义OP开发(难度会比较大)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表