yolov8目标检测训练在rk3588上部署

参考 :
yolov8环境安装_yolov8 github地址-CSDN博客

yolov8训练导出到rk3588上运行-CSDN博客


安装cuda11.8


_安装_Anaconda

Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror


创建一个python3.10虚拟环境,建议python的版本尽量选择高


激活环境,并设置pip下载源

复制代码
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/

安装pytorch,优先尝试符合cuda=11.8的pytorch的高版本

复制代码
pip install torch==2.7.1 torchvision==0.22.1 torchaudio==2.7.1 --index-url https://download.pytorch.org/whl/cu118

然后安装ultralytics

复制代码
pip install ultralytics

安装onnx onnxruntime库

复制代码
pip install onnx onnxruntime

下面是此时的安装包列表


到瑞芯微官网下载 yolov8工程

https://github.com/airockchip/ultralytics_yolov8,下载后解压


在激活env310虚拟环境情况下,切到解压的目录里

执行 一下命令

复制代码
 pip  install -e  .

上面命令执行成功后,安装包列表如下:


上面的这一步 安装 -e .的操作必须的做,否则下面的转换不认识rknn是啥


开始导出onnx,注意 下面箭头指向的地方 format一定要设置成rknn,这样导出的onnx会有9个输出,如果format设置成onnx,则onnx默认只会有一个输出




下面是代码:

训练代码

复制代码
from ultralytics import YOLO

if __name__ == '__main__':
    # 载入预训练模型
    model = YOLO("C:/Users/TR/Desktop/ultralytics-main2/yolov8s.pt")  #建议直接用绝对地址
    train_results = model.train(
        data="C:/Users/TR/Desktop/ultralytics-main2/coco128.yaml",  #建议用绝对路径, yaml文件指定数据集配置文件
        epochs=100,  # 训练轮数
        imgsz=640,  # 训练时转换后的图片大小
        device=0,  #  'cpu'和 0 可选 ,其中0表示gpu
    )

验证代码

复制代码
from ultralytics import YOLO

if __name__ == '__main__':

# # 用训练后的模型
    model = YOLO("C:/Users/TR/Desktop/ultralytics-main2/runs/detect/train8/weights/best.pt")  #建议绝对路径
    # # #推理
    results = model("C:/Users/TR/Desktop/targetRe/img2/dataset09_03_00004395.jpg")  
    #查看结果
    results[0].show()  

导出onnx代码

复制代码
from ultralytics import YOLO

if __name__ == '__main__':

# # 用训练后的模型
    model = YOLO("C:/Users/TR/Desktop/ultralytics-main2/runs/detect/train8/weights/best.pt")  #建议绝对路径
# # 导出ONNX模型
    path = model.export(
        format="rknn" 
    ) 



下面开始将onnx转rknn,这一步既可以在虚拟机上做,也可以直接在rk3588板子上做

这里我直接讲在板子做onnx转rk3588


直接在板子上装一个rknntoolkit2,注意不是lite2,别选错

最新的toolkit2版本支持在板子上直接安装,早期版本不支持


板子上装conda ,然后建立一个python=3.11的conda环境

Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

然后直接安装toolkit2的whl包

rknn-toolkit2/rknn-toolkit2/packages/arm64 at master · airockchip/rknn-toolkit2 · GitHub

下载下面两个文件

arm64_requirements_cp311.txt

rknn_toolkit2-2.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

然后先安装txt文件,然后安装whl文件



相关推荐
stars-he11 小时前
基于 Design Compiler 的 UDP Payload 追加控制模块综合与门级后仿真
笔记·fpga开发·udp
尤老师FPGA1 天前
HDMI数据的接收发送实验(十)
fpga开发
逻辑诗篇1 天前
破核拆解:PCIE719——基于Xilinx Zynq UltraScale+的高性能SAS扩展卡设计
fpga开发·架构
逻辑诗篇1 天前
高性能存储扩展利器|PCIE719 基于Zynq UltraScale+的企业级可编程SAS方案
fpga开发
liuluyang5301 天前
SV主要关键词详解
fpga开发·uvm·sv
happyDogg_1 天前
验证环境采样rtl时序数据遇到的问题
fpga开发
unicrom_深圳市由你创科技1 天前
项目分析和FPGA器件选型外包服务包括哪些内容?别让选错芯片毁了整个项目
fpga开发
Aaron15881 天前
27DR/47DR/67DR技术对比及应用分析
人工智能·算法·fpga开发·硬件架构·硬件工程·信息与通信·基带工程
my_daling1 天前
DSMC通信协议理解,以及如何在FPGA上实现DSMC从设备(2)
学习·fpga开发
珞光电子USRP SDR软件无线电平台2 天前
打破通用瓶颈:珞光电子发布 Luowave Driver V2 定制化驱动方案
fpga开发