Ceasor
(Ceasor)
1
简单说明
我使用OE量化包量化了opencv的官方人脸检测算法yunet,使用OE包中提供的onnxruntime推理quantized_model.onnx时结果与原模型相差不大,效果不错,但是把bin文件部署到开发板上时推理结果出现严重偏差
量化步骤
原始的onnx模型输入为BGR 0-255 CHW格式(onnx内部直接将0-255的数据输入接下来的卷积层),为了避免工具包自动添加的预处理节点的影响,在配置文件我直接选择使用featuremap,以下为配置文件截图
一致性验证
如下图,quanti表示的是quantized_model.onnx,origin表示的是原始onnx的推理结果,bin表示在rdkx5上使用如下代码推理得到的结果。
问题
在OE使用文档中提及quantized_model.onnx与bin文件应当是一致的,而我这里推理出现不一致。
Marcelo
(MaxMa615)
2
您好,感谢您的反馈,主要问题为目前X5的python接口不支持featuremap,新版本的接口正在开发中
Ceasor
(Ceasor)
3
谢谢您的回复,那请问针对我的原始0-255的输入,量化时我应该怎么修改配置文件呢?
我观察到直接使用input_type_rt=bgr,似乎会为onnx添加一个预处理节点将0-255转换为-128-127,这是否会导致后续的量化不一致。
Ceasor
(Ceasor)
4
另一个问题,是只有python接口不支持featuremap吗,C++的接口我发现bin的推理输出也不一致
Marcelo
(MaxMa615)
5