rk3588多模型检测部署quickrun

2023-12-22 21:16:21

quickrun 是一款rk3588 rknn多模型高效高并发部署软件

软件框架

采用session思想,可以定义多个session满足不同模型的义务需求。比如充电桩检测,垃圾分类,悬崖检测,模型共用一个摄像头,采用yolov5的模型。
多线程模型推理部署rknn

  1. 采用消息队列存放照片数据是为了防止丢帧以及高效并发,一般情况下,采集照片数据25fps,前后处理+推理时间=40ms,25fps,所以基本取消息和存消息时间相等。
  2. 由于是模型是640*640 输入,摄像头是640 * 480输入,解码用cv::imdecode, rgb 格式输入模型,使用rga加速等比例缩放。
  3. 由于三个模型设置三个session的独立线程,之间相互独立,互不干扰。

模型输出

rk3588 yolov5模型输出注意转换为onnx的时候在forward 层去掉cat的操作,直接输出2020,4040,80*80三个特征图

性能

一个模型占用npu:1.2T,cpu:40%(前处理,推理,后处理画框), 推理时间20ms。使用perf top -p 查看cpu使用率,并且可以精确到具体某一个函数的cpu使用率

源码地址 https://github.com/dreamflyforever/quickrun

文章来源:https://blog.csdn.net/oYangShanJin/article/details/135151394
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。