当前位置:   article > 正文

yolov10 瑞芯微 rknn 部署 C++代码_yolov10 rknn

yolov10 rknn

   yolov10 目标检测rknn的C++部署来了。

   特别说明:如有侵权告知删除,谢谢。

  直接上代码和模型,欢迎参考交流 【完整代码和模型】

1、rknn模型准备

  pytorch转onnx,onnx再转rknn模型这一步就不再赘述,请参考上一篇 【yolov10 瑞芯微RKNN、地平线Horizon芯片部署、TensorRT部署,部署工程难度小、模型推理速度快】

2、C++ 代码

  模型和图片读取部分参考rknn官方提供的示例,详细代码请参本实例对应的github仓库,代码和模型 。本实例提供的完整代码也就只包含两个.c文件和一个.h 文件,阅读起来没啥难度。

3、编译运行

1)编译

cd examples/rknn_yolov10_demo_open

bash build-linux_RK3588.sh
  • 1
  • 2
  • 3

2)运行

cd install/rknn_yolov10_demo_Linux

./rknn_yolov10_demo
  • 1
  • 2
  • 3

  注意:修改模型、测试图像、保存图像的路径,所在文件为 src 下main.cc文件。示例使用的类别时80类,自己的数据注意修改类别,在 include 下 postprocess.h 文件。

4、板端效果

pytorch测试效果
在这里插入图片描述

  板端rknn测试效果,冒号“:”前的数子是coco的80类对应的类别,后面的浮点数是目标得分(类别:得分)。板端效果和pytoch效果不完全一致是由于转rknn时精度有所丢失导致。若想让精度丢失的少,可以考虑使用更多、更丰富的量化图片。
在这里插入图片描述

5、后处理时耗

  本示例用的是yolov10n,模型计算量6.7G,看到这个时耗觉得可能是有操作切换到CPU上进行计算的,查了rknn转换模型日志确实是有操作切换到CPU上进行的,对应的是模型中 PSA 模块计算 Attention 这部分操作。
在这里插入图片描述
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/寸_铁/article/detail/854502
推荐阅读
相关标签
  

闽ICP备14008679号