当前位置: 首页 > news >正文

网站建设的价code wordpress

网站建设的价,code wordpress,做网站编码,免费素材网站psdRK3568作为瑞芯微推出的高性能处理器,广泛应用于嵌入式系统,具有强大的计算能力和较低的功耗,适合用于运行深度学习任务。将YOLOv8部署在RK3568上,不仅能够提升目标检测的效率,还能充分利用RK3568的硬件加速能力&#…

  RK3568作为瑞芯微推出的高性能处理器,广泛应用于嵌入式系统,具有强大的计算能力和较低的功耗,适合用于运行深度学习任务。将YOLOv8部署在RK3568上,不仅能够提升目标检测的效率,还能充分利用RK3568的硬件加速能力,为开发者提供更高效、更实用的方案。

1 将模型转成onnx

训练的步骤这里就不赘述,之前文章已经提到过,不知道的兄弟们可以看以下文章:
实例分割 | yolov11训练自己的数据集
yolov8和yolov11的训练方法都是相同的。

1.1 明确需要的模型结构

如果直接使用官方给的导出onnx功能,会得到以下结构模型:
在这里插入图片描述
输入为1x3x640x640,两个输出output0和output1,而官方给的输出为13个,如下图所示:
在这里插入图片描述
想要看原文的可以看这里:官方示例
至于怎么将自己训练的模型转成官网的这种结构,请继续往下看。

1.2 导出onnx模型

git clone https://github.com/airockchip/ultralytics_yolov8.git
cd ultralytics_yolov8

将ultralytics/cfg/default.yaml 中 model 文件路径,改为自己训练模型路径,如下图所示:
在这里插入图片描述
在这里修改你训练的模型的绝对路径和训练尺寸,然后输入继续以下命令:

# linux下用export windows下用set
export/set PYTHONPATH=./
python ./ultralytics/engine/exporter.py

如图所示,看打印输出output数量为13个则表示打印成功:
在这里插入图片描述

1.3 onnx转rknn

  在将ONNX模型转换为RKNN模型之前,需要一台电脑或Ubuntu系统的虚拟机作为开发环境,至于为什么,请看这里:
在这里插入图片描述
这里要安装的ubuntu版本和python版本也可以参考一下,这里推荐使用Ubuntu20.04和python3.8。

1.3.1 下载并安装rknn-toolkit2

rknn-toolkit2官网地址
在这里插入图片描述
在这里插入图片描述
这里一般选择虚拟机x86_64,开发板选arm64:
在这里插入图片描述
在这里插入图片描述
这里选择下载你对应python版本的rknn-toolkit2和requirments.txt_cpxx,cp版本就是python版本,cp37就是python3.7,下面是安装命令:

# 以python3.8版本为例
pip install -r requirements_cp38-2.3.2.txt
pip install rknn_toolkit2-2.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

1.3.2 转换模型到rknn

转化代码:

# convert.py
import sys
from rknn.api import RKNNDATASET_PATH = 'xxx/coco_subset_20.txt'
DEFAULT_RKNN_PATH = 'xxx/yolov8_seg.rknn'
DEFAULT_QUANT = Truedef parse_arg():if len(sys.argv) < 3:print("Usage: python3 {} onnx_model_path [platform] [dtype(optional)] [output_rknn_path(optional)]".format(sys.argv[0]));print("       platform choose from [rk3562, rk3566, rk3568, rk3576, rk3588, rv1126b, rv1109, rv1126, rk1808]")print("       dtype choose from [i8, fp] for [rk3562, rk3566, rk3568, rk3576, rk3588, rv1126b]")print("       dtype choose from [u8, fp] for [rv1109, rv1126, rk1808]")exit(1)model_path = sys.argv[1]platform = sys.argv[2]do_quant = DEFAULT_QUANTif len(sys.argv) > 3:model_type = sys.argv[3]if model_type not in ['i8', 'u8', 'fp']:print("ERROR: Invalid model type: {}".format(model_type))exit(1)elif model_type in ['i8', 'u8']:do_quant = Trueelse:do_quant = Falseif len(sys.argv) > 4:output_path = sys.argv[4]else:output_path = DEFAULT_RKNN_PATHreturn model_path, platform, do_quant, output_pathif __name__ == '__main__':model_path, platform, do_quant, output_path = parse_arg()# Create RKNN objectrknn = RKNN(verbose=False)# Pre-process configprint('--> Config model')rknn.config(mean_values=[[0, 0, 0]], std_values=[[255, 255, 255]], target_platform=platform)print('done')# Load modelprint('--> Loading model')ret = rknn.load_onnx(model=model_path)if ret != 0:print('Load model failed!')exit(ret)print('done')# Build modelprint('--> Building model')ret = rknn.build(do_quantization=do_quant, dataset=DATASET_PATH)if ret != 0:print('Build model failed!')exit(ret)print('done')# Export rknn modelprint('--> Export rknn model')ret = rknn.export_rknn(output_path)if ret != 0:print('Export rknn model failed!')exit(ret)print('done')# Releaserknn.release()

这里的DATASET_PATH 是你量化需要加的数据集文件,如果DEFAULT_QUANT =False则不用管
DEFAULT_RKNN_PATH 为你要输出的模型路径及名称。
转化模型命令:

cd python
python convert.py <onnx_model> <TARGET_PLATFORM> <dtype(optional)> <output_rknn_path(optional)># such as: 
python convert.py ../model/yolov8s-seg.onnx rk3588
  • onnx_model: 指定 ONNX 模型路径。
  • TARGET_PLATFORM: 指定 NPU 平台名称。支持平台请参阅此处。
  • dtype(optional): 指定为 或 。 用于进行量化,用于不进行量化。默认值为 。i8/u8fpi8/u8fpi8/u8
  • output_rknn_path(optional): 指定 RKNN 模型的保存路径,默认保存在与 ONNX 模型相同的目录中,名称为yolov8_seg.rknn

如图所示:
在这里插入图片描述
这样算是导出成功,至于warning 不用管。

总结

  本文主要记录了如何将自己训练的 .pt 文件模型转换为 RKNN 格式的模型。这个过程涉及从 PyTorch 框架中导出训练好的模型,并通过 RKNN Toolkit 对其进行优化和转化,以便能够在 Rockchip 的硬件平台上进行推理加速。

http://www.dtcms.com/a/499644.html

相关文章:

  • 自己做的网站项目面试为什么要做营销型的网站建设
  • 网站开发公众号开发网易企业邮箱网页版登录入口
  • 斯坦福大学生物医学数据科学(BMDS)项目概览
  • 手机转SIP-手机做中继网关-落地线路对接软交换呼叫中心
  • Redis 在订单系统中的实战应用:防重、限流与库存扣减
  • flex 做网站去成都旅游攻略怎么做
  • PHP网站开发涉及的工具有哪些秦皇岛市海港区建设局网站
  • 如何定期清理电脑垃圾文件
  • 网站怎么做现场直播视频全国企业信息公示系统查询
  • JAVA村里租房系统小区租售系统源码支持微信小程序 + H5
  • 【图像处理】图像色彩空间 Lab、YCbCr、HSV
  • 怎么自己在电脑上做网站win2008做的网站打不开
  • 嘉兴外贸网站建网站备案号含义
  • 一个虚拟主机可以做几个网站个人网站备案填写要求
  • 通过ssh连接GitHub远程仓库
  • venv - python新手推荐的轻量化环境隔离方式
  • 网站核验单中国外包加工网
  • Ubuntu解决Github无法访问的问题
  • 关于 Qt5.11/12/15的QtCreator中对conncet宏SIGNAL不提示 的解决方法
  • C语言入门(十一)续:函数的深入认识
  • wordpress站点路径网上购物商城官网入口
  • 告别“手绘”图表:Illustrator与XD联动的数据可视化(Data Viz)工作流
  • m-card卡片组件
  • 企业内部网站建设方案怎样营销
  • 推荐一款开源的轻量级知识管理工具
  • GNU/Linux - GCC编译的静态库
  • 西安建网站哪家好企业网站蓝色模板下载
  • 成都模板建站代理网站优化要做哪些工作
  • Java MyBatis(一)--- 注解和XML的使用
  • 东莞官方网站 优帮云网站怎么做推广和优化