RK3588部署yolov7记录

RK3588部署yolov7记录 warren@伟 2023-11-02 08:55:36 2119

yolov7模型转换

yolov7源码下载:git clone https://github.com/WongKinYiu/yolov7

易百纳社区

下载模型文件:https://github.com/WongKinYiu/yolov7/releases/download/v0.1/yolov7-tiny.pt

将yolov7-tiny.pt移至yolov7源码目录下;

保证环境已搭建好,可以参照--> https://kdocs.cn/l/cgVHWhrSuPjJ

打开Prompt 创建一个新的环境

conda creat -n yolov7 python=3.8

conda activate yolov7

易百纳社区

进入到yolov7文件夹

首先需要安装requierment.txt的包

执行 pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

conda list查看版本是否正确

易百纳社区

可以看到安装的是cpu版本,但我们需要切换到GPU版本

执行:

pip install torch==2.0.0+cu118 torchvision==0.15.1+cu118 torchaudio==2.0.1+cu118 --extra-index-url

https://download.pytorch.org/whl/cu113

易百纳社区

现在就是GPU版本了

易百纳社区

易百纳社区

ctrl+c可以中断识别

运行前需要对代码进行部分更改

打开\yolov7\model\yolo.py

将以下代码

易百纳社区

改为

易百纳社区

pip install onnx -i https://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.tsinghua.edu.cn

易百纳社区

执行:python export.py  --weights yolov7-tiny.pt --img-size 640 640 --max-wh 640

编译成功后输出yolov7-tiny.onnx模型

易百纳社区易百纳社区复制一个yolov5改名为yolov7_tiny

易百纳社区

将yolov7-tiny.onnx拷贝至里面

易百纳社区

打开test.py

更改为yolov7-tiny

易百纳社区

打开netron-- https://netron.app/,选择yolov7.onnx,点击263,可以看到右边的三个参数为output,262,263

易百纳社区

更改一下output

易百纳社区

这里同时进行了混合量化

易百纳社区易百纳社区

易百纳社区

如果要连接板端则需要填上设备号,可以通过adb devices查看

易百纳社区

最后进入docker:

sudo docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb -v /home/warren/RK_NPU_SDK_1.3.0/rknn-toolkit2-1.3.0/examples/onnx/yolov7_tiny:/rknn_yolo7_demo rknn-toolkit2:1.3.0-cp36 /bin/bash

执行python ./test.py,可以看到模型转换成功,同时查看推理结果

易百纳社区

易百纳社区

接着我们需要将转换好的模型放到板端进行推理

RKnpu

首先我们先复制一份未编译过的rknn_yolov5_demo,改名为yolov7-_tiny,打开build-linux_RK3588.sh ,将红框改为你自己的路径;将之前生成的rknn文件拷贝到/rknpu2_1.3.0/examples/yolov7/model/RK3588下

易百纳社区

可以把cmake文件的yolov5全部替换为yolov7;

./build-linux_RK3588.sh

易百纳社区易百纳社区

进入到install文件夹下,可以看到生成了rknn_yolov7_demo_Linux文件夹

易百纳社区

push到板端 adb push rknn_yolov7_demo_Linux/ /data

易百纳社区易百纳社区

./rknn_yolov7_demo ./model/RK3588/yolov7-tiny.rknn ./model/dag_cat_chair.jpg

易百纳社区

把生成的out.jpg pull下来

adb pull /data/rknn_yolov5_demo_Linux/out.jpg  ./

查看

易百纳社区

至此,rk3588 yolov7部署完成;

声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包 12 5 评论 打赏
评论
3个
内容存在敏感词
手气红包
  • tomato 2023-11-02 14:05:49
    回复
    膜拜大佬~
  • 四叶草~ 2023-11-02 13:58:45
    20.00元
    回复
    优质文章,学习了学习了
  • Stranger 2023-11-02 13:45:11
    回复
    大佬,什么时候在ss928和ss626搞yolov7
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
warren@伟
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区