Toybrick

rknn_output

aurora

高级会员

积分
567
发表于 2023-6-9 17:31:34    查看: 2237|回复: 2 | [复制链接]    打印 | 显示全部楼层
在rk3399pro debain10 下

同一个模型, python版 推理结果正确;

改写为C++版后,rknn_output[0] (坐标值xywh)输出的值不对,如下:
rknn_output[1], 分类的输出值同样也不对。

"
std::cout << "dets_num: " << m_outputs[0].size / 4 << std::endl;
float * outputs_reg = (float *) m_outputs[0].buf;
float * outputs_cls = (float *) m_outputs[1].buf;
for(int index = 0; index < m_outputs[0].size; index++)
{
    cout << "value reg: " << outputs_reg[index] << endl;
}
"


value reg: 2.3695e-38
value reg: 2.36943e-38
value reg: 2.36943e-38
value reg: 9.55118e-38
value reg: 9.55118e-38
value reg: 2.36943e-38
value reg: 2.36936e-38
value reg: 3.60134e-43
value reg: 2.35106e-38
value reg: 2.35106e-38
value reg: 2.36943e-38
value reg: 2.36943e-38
value reg: 2.36943e-38
value reg: 2.36943e-38
value reg: 2.36943e-38
value reg: 2.42453e-38
value reg: 2.36943e-38
value reg: 2.36943e-38
value reg: 2.3695e-38
value reg: 2.36943e-38
value reg: 2.36943e-38


各位大佬,出现这种情况都有那些原因,


回复

使用道具 举报

jefferyzhang

版主

积分
13210
发表于 2023-6-15 09:24:05 | 显示全部楼层
1. python sdk调用的也是同一个so,同一个版本情况下不存在python和c结果不一样情况,只可能你代码写的不一样。
2. 核对rknn api版本是不是和rknn driver版本一致
3. 先枚举output attr变量看下他的输出、类型、格式 是不是和你期望一样,别急着打value
4. want_float和format是否是你期望的
回复

使用道具 举报

aurora

高级会员

积分
567
 楼主| 发表于 2023-6-15 22:07:59 | 显示全部楼层
jefferyzhang 发表于 2023-6-15 09:24
1. python sdk调用的也是同一个so,同一个版本情况下不存在python和c结果不一样情况,只可能你代码写的不一 ...

感谢,已解决。
回复

使用道具 举报

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

本版积分规则

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


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