Toybrick

模型转换为rknn后inference结果为0

yaowei

中级会员

积分
315
发表于 2019-5-8 10:32:31    查看: 429|回复: 6 | [复制链接]    打印 | 显示全部楼层
可以从哪些点、哪些途径查找错误在哪里呢
回复

使用道具 举报

troy

版主

积分
560
发表于 2019-5-9 08:40:50 | 显示全部楼层
问题描述需要精准一点,可以提供一下你的环境,RKNN版本,转换什么模型,如何转换的,如何推理的,这样别人才好回答你的问题。
回复

使用道具 举报

yaowei

中级会员

积分
315
 楼主| 发表于 2019-5-9 11:43:12 | 显示全部楼层
本帖最后由 yaowei 于 2019-5-9 11:45 编辑

RKNN版本:0.9.9

转换的模型:pytorch->onnx->rknn

onnx->rknn代码:
  1. from rknn.api import RKNN
  2. rknn = RKNN()
  3. rknn.config(channel_mean_value='127.5 127.5 127.5 128', reorder_channel='2 1 0')
  4. print('--> Loading model')
  5. rknn.load_onnx(model='./resnet.onnx')
  6. print('done')
  7. print('--> Building model')
  8. rknn.build(do_quantization=False)
  9. print('done')
  10. rknn.export_rknn('./resnet.rknn')
  11. rknn.release()
复制代码
回复

使用道具 举报

yaowei

中级会员

积分
315
 楼主| 发表于 2019-5-9 11:48:26 | 显示全部楼层
本帖最后由 yaowei 于 2019-5-15 15:43 编辑

rknn推理:

  1. img = cv2.imread('test.png')
  2. img = cv2.resize(img, (128,128))

  3. net = RKNN()
  4. net.load_rknn('./resnet.rknn')

  5. print('--> Init runtime environment of arcface')
  6. ret = net.init_runtime()
  7. if ret != 0:
  8.     print('Init runtime environment failed')
  9.     exit(ret)
  10. print('done')
复制代码
output = net.inference(inputs=[img])

回复

使用道具 举报

yaowei

中级会员

积分
315
 楼主| 发表于 2019-5-9 11:52:10 | 显示全部楼层
推理的输出output都是0,我在ubuntu下未转换的原版权重测试过,是没问题的;除了pytorch->onnx的问题以外,哪里可能有问题呢
回复

使用道具 举报

xiaqing10

注册会员

积分
151
发表于 2019-5-15 15:18:28 | 显示全部楼层
net.load_rknn('.resnet.rknn') ?
这行确定没有问题?
回复

使用道具 举报

yaowei

中级会员

积分
315
 楼主| 发表于 2019-5-15 15:42:32 | 显示全部楼层
哦,对不起,发帖的时候编辑过,多删了东西,肯定是可以运行的,我再编辑一下
回复

使用道具 举报

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

本版积分规则

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


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