Yolov8在RK3588上进行自定义目标检测(三)

参考

Yolov8在RK3588上进行自定义目标检测(一)

Yolov8在RK3588上进行自定义目标检测(二)

best.onnx转yolov8.rknn

onnx转rknn需要用到rknn-toolkit2,这个工具暂时不支持windows,所以我们移步linux,我用的是虚拟机创建的ubuntu20.4的系统,建议使用conda管理环境,使用conda安装了python3.8。

rknn-toolkit2项目地址:https://github.com/airockchip/rknn-toolkit2/tree/master

下载 RKNN 相关仓库

复制代码
# 下载 RKNN-Toolkit2 仓库  参数 --depth 1 表示只克隆最近一次 commit  
git clone https://github.com/airockchip/rknn-toolkit2.git --depth 1 

整体目录结构

安装 RKNN-Toolkit2 环境

安装 Python

如果系统中没有安装 Python 3.8(建议版本),或者同时有多个版本的 Python 环境,建议 使用 Conda 创建新的 Python 3.8 环境。

安装 Conda

在计算机的终端窗口中执行以下命令,检查是否安装 Conda,若已安装则可省略此节步骤。

复制代码
conda -V 
# 参考输出信息:conda 23.9.0 ,表示 conda 版本为 23.9.0 
# 如果提示 conda: command not found,则表示未安装 conda

如果没有安装 Conda,可以通过下面的链接下载 Conda 安装包:

复制代码
wget -c https://mirrors.bfsu.edu.cn/anaconda/miniconda/Miniconda3
latest-Linux-x86_64.sh 

然后通过以下命令安装 Conda:

复制代码
chmod 777 Miniconda3-latest-Linux-x86_64.sh 
bash Miniconda3-latest-Linux-x86_64.sh

使用 Conda 创建 Python 环境

在计算机的终端窗口中,执行以下命令进入 Conda base 环境:

复制代码
source ~/miniconda3/bin/activate # miniconda3 安装的目录 
# 成功后,命令行提示符会变成以下形式:  
# (base) xxx@xxx:~$

通过以下命令创建名称为 toolkit2 的 Python 3.8 环境:

复制代码
conda create -n toolkit2 python=3.8 

激活 toolkit2 环境,后续将在此环境中安装 RKNN-Toolkit2:

复制代码
conda activate toolkit2 
# 成功后,命令行提示符会变成以下形式: 
# (toolkit2) xxx@xxx:~$

安装依赖:

复制代码
pip install -r requirements_cp38-2.0.0b0.txt

安装rknn_toolkit2:

复制代码
pip install rknn_toolkit2-2.0.0b0+9bab5682-cp38-cp38-linux_x86_64.whl

验证是否安装成功:

在终端输入以下内容不报错代表成功。

复制代码
python
from rknn.api import RKNN

在Linux环境下安装rknn-toolkit2的python环境用于转换rknn格式文件。

https://github.com/airockchip/rknn_model_zoo/tree/main/examples/yolov8/python下,运行修改后的convert.py脚本,利用之前得到的onnx文件转换得到rknn文件。

复制代码
#需要修改convert.py的 DATASET_PATH和DEFAULT_RKNN_PATH
DATASET_PATH = '/home/wyx/Projects/rknn_model_zoo/examples/yolov8/model/dataset.txt'
#DEFAULT_RKNN_PATH:生成的rknn模型路径
DEFAULT_RKNN_PATH = '../model/yolov8.rknn'

修改配置文件(可选)

将训练生成的best.onnx文件的格式转换成yolova8.rknn形式 。

复制代码
python convert.py /home/wyx/Projects/best.onnx rk3588

转换结果图

在/home/wyx/Projects/rknn_model_zoo/examples/yolov8/model/下生成yolov8.rknn。

参考链接:

YOLOv8部署在RK3588上_rk3588 yolov8部署-CSDN博客

yolov8目标检测 部署瑞芯微rk3588记录_yolov8 rknn-CSDN博客

YOLOv8目标检测在RK3588部署全过程_yolov8 rk3588-CSDN博客

相关推荐
小王爱学人工智能3 小时前
OpenCV的阈值处理
人工智能·opencv·计算机视觉
湫兮之风3 小时前
OpenCV: Mat存储方式全解析-单通道、多通道内存布局详解
人工智能·opencv·计算机视觉
程序员柳4 小时前
基于YOLOv8的车辆轨迹识别与目标检测研究分析软件源代码+详细文档
人工智能·yolo·目标检测
点云侠6 小时前
解决Visual Studio 2022编译工程速度慢的问题
开发语言·c++·ide·算法·计算机视觉·visual studio
爆改模型7 小时前
【ICCV2025】计算机视觉|即插即用|ESC:超越Transformer!即插即用ESC模块,显著提升图像超分辨率性能!
人工智能·计算机视觉·transformer
小胖墩有点瘦7 小时前
【基于yolo和web的垃圾分类系统】
人工智能·python·yolo·flask·毕业设计·课程设计·垃圾分类
却道天凉_好个秋7 小时前
计算机视觉(十二):人工智能、机器学习与深度学习
人工智能·深度学习·机器学习·计算机视觉
豆浩宇8 小时前
Conda环境隔离和PyCharm配置,完美同时运行PaddlePaddle和PyTorch
人工智能·pytorch·算法·计算机视觉·pycharm·conda·paddlepaddle
AI人工智能+9 小时前
表格识别技术:通过计算机视觉和OCR,实现非结构化表格向结构化数据的转换,推动数字化转型。
人工智能·计算机视觉·ocr
算法打盹中9 小时前
SimLingo:纯视觉框架下的自动驾驶视觉 - 语言 - 动作融合模型
人工智能·机器学习·计算机视觉·语言模型·自动驾驶