RKNN-Toolkit2不同版本导出的RKNN模型输出不同

在我的虚拟机中安装过RKNN-Toolkit2的1.4.0版本
RKNN-Toolkit2不同版本导出的RKNN模型输出不同插图

在转换RockChip官方提供的的RetinaFace_mobile320.onnx模型(下载链接为:http://ftrg.zbox.filez.com/v2/delivery/data/95f00b0fc900458ba134f8b180b3f7a1/examples/RetinaFace/RetinaFace_mobile320.onnx)为RKNN后,查看网络输出如下:

RKNN-Toolkit2不同版本导出的RKNN模型输出不同插图(1)

可以看到RKNN-Toolkit2的1.4.0转换的RetinaFace_mobile320.onnx的三个输出都是四维的,如果使用这个RKNN模型和RockChip官方提供的后处理代码去RK3588上进行推理会报错,显示维度问题。

分析官方的后处理代码和原模型的推理代码发现三个输出应该是三维的,接着查找相关资料发现别人的RetinaFace推理没遇到问题,最后怀疑是RKNN-Toolkit2的版本转换出来的RKNN模型推理的结果不一样。

卸载RKNN-Toolkit2的1.4.0,安装最新的RKNN-Toolkit2版本时出现过下面这种情况(python=3.8)

RKNN-Toolkit2不同版本导出的RKNN模型输出不同插图(2)

开始我以为时是现在库都更新了,各种库的版本和python版本不兼容了,引发的冲突

直到我看到小诺最帅气分享的http://blog.csdn.net/weixin_51447731/article/details/137088316?spm=1001.2014.3001.5506文章,发现原来是清华源暂时没有tf-estimator-nightly==2.8.0.dev2021122109这个安装包

故我执行下面语句单独安装这个包

pip install -i http://pypi.doubanio.com/simple/ tf-estimator-nightly==2.8.0.dev2021122109

然后安装requirements中的库和新版的RKNN-Toolkit2,成功安装

RKNN-Toolkit2不同版本导出的RKNN模型输出不同插图(3)

使用新版本的RKNN-Toolkit2转换RetinaFace_mobile320.onnx模型,观察模型

RKNN-Toolkit2不同版本导出的RKNN模型输出不同插图(4)

此时的RKNN模型的三个输出为三维了,RKNN-Toolkit2的不同版本转换出来的RKNN模型推理的结果是不一样的。

本站无任何商业行为
个人在线分享 » RKNN-Toolkit2不同版本导出的RKNN模型输出不同
E-->