Page 1 of 1
模型从onnx转换为rknn格式是,如果不开启量化表现正常,开启量化就预测不正常
Posted: 2025-07-05 9:02
by ichilong
如题,我的模型是resnet18,图像分类算法。
其它配置一样的情况下,
如果不开启量化,如下,预测正常
ret = rknn.build(do_quantization=False, dataset='./dataset.txt')
如果开启量化,预测都指向同一个结果
ret = rknn.build(do_quantization=True, dataset='./dataset.txt')
图片预处理方式也一样。唯一不同的可能是dataset.txt一面图片的生成方式,这方面有指导文档么?
Re: 模型从onnx转换为rknn格式是,如果不开启量化表现正常,开启量化就预测不正常
Posted: 2025-07-05 14:01
by ichilong
我做了自己知道的所有尝试,都不行。包括下面:
1. 我在模拟器上推理就异常了。
2. npy和图像做校准文件都试过,也不行。
3. 我用训练集做预测,预测也是异常,都是指向同样类别。
4. normailize,通道转换与否都试过了,也不行。
5. 更换了模型,从resnet18,到mobilenet,efficient-net。都不行
Re: 模型从onnx转换为rknn格式是,如果不开启量化表现正常,开启量化就预测不正常
Posted: 2025-07-07 3:42
by ichilong
我又尝试pytorch QAT训练后,训练好的图像4分类量化模型,转成rknn格式化后,在模拟器上float的输出是四个值,但是到了板子上推理的时候,结果值有八个input_attrs[0].size 是8. ?
Re: 模型从onnx转换为rknn格式是,如果不开启量化表现正常,开启量化就预测不正常
Posted: 2025-07-07 5:55
by Crocodile
您好,我们没有参与rknn-toolkit2的开发和维护,模型转化问题属于二次开发我们不提供技术支持,自用模型遇到的问题可以到
https://github.com/airockchip/rknn-toolkit2创建issue,或者到rknn-toolkit2仓库指定的QQ群咨询。相关文档在
https://github.com/airockchip/rknn-tool ... master/doc
Re: 模型从onnx转换为rknn格式是,如果不开启量化表现正常,开启量化就预测不正常
Posted: 2025-07-07 7:40
by ichilong
Re: 模型从onnx转换为rknn格式是,如果不开启量化表现正常,开启量化就预测不正常
Posted: 2025-07-07 7:42
by ichilong
ichilong wrote: ↑2025-07-07 3:42
我又尝试pytorch QAT训练后,训练好的图像4分类量化模型,转成rknn格式化后,在模拟器上float的输出是四个值,但是到了板子上推理的时候,结果值有八个input_attrs[0].size 是8. ?
这是因为pytorch 量化后的模型,输出是FP16的类型,所以每个值有两个字节。官方样例里面有float16的文件,可以直接读取。