Toybrick

标题: Pytorch转ONNX成功, ONNX转RKNN失败 [打印本页]

作者: zheng_weiyu    时间: 2020-12-24 15:44
标题: Pytorch转ONNX成功, ONNX转RKNN失败
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    时间: 2020-12-25 10:50
Try match “xxxx” failed,
意思就是 "xxxx" 这个OP不支持。
建议你加置顶帖官方RKNN QQ群里讨论下。
不支持要么等新版本rknn支持,要么尝试换OP绕过去,要么就是走RKNN自定义OP开发(难度会比较大)




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