YOLOv11模型在K230开发板部署过程记录

       当您看到这篇文章时想必您已经完成了模型训练,这里以YOLOv11训练出来的pt模型为例给出模型在K230开发板的部署流程

环境:windows11,ubuntu20.04(已安装python,pip),nncase2.9.0,K230开发板

1、模型转换

        将pt格式转化为onnx格式以便使用nncase工具链进行模型转换

from ultralytics import YOLO

# 加载一个模型,路径为 YOLO 模型的 .pt 文件
model = YOLO("ultralytics-main/runs/detect/train11/weights/best.pt")

# 导出模型,设置多种参数
model.export(
    format="onnx",  # 导出格式为 ONNX
    imgsz=(320, 320),  # 设置输入图像的尺寸
    keras=False,  # 不导出为 Keras 格式
    optimize=True,
    int8=True,  # 启用 INT8 量化
    dynamic=False,  # 不启用动态输入尺寸
    simplify=True,  # 简化 ONNX 模型
    opset=None,  # 使用最新的 opset 版本
    workspace=4.0,  # 为 TensorRT 优化设置最大工作区大小(GiB)
    nms=True,  # 不添加 NMS(非极大值抑制)
    batch=1  # 指定批处理大小
)

2、得到onnx模型文件

验证模型

 

进入Netron导入生成后的模型:

单击images

        得知模型信息float32[1,3,320,320](批次,通道,模型输入图片高,模型输入图片宽)

3、打开Linux虚拟机(笔者版本为Ubuntu20.04)依照

5. YOLO 大作战 — CanMV K230的7.4配置环境

# linux平台:nncase和nncase-kpu可以在线安装,nncase-2.x 需要安装 dotnet-7
sudo apt-get install -y dotnet-sdk-7.0
pip install --upgrade pip

#nncase版本应与k230烧录镜像版本严格一致
pip install nncase==2.9.0
pip install nncase-kpu==2.9.0

#若部署平台为k210nncase与nncase-kpu版本应为1.x


# 除nncase和nncase-kpu外,脚本还用到的其他库包括:
pip install onnx
pip install onnxruntime
pip install onnxsim

4、下载脚本工具并解压

yolo_files

大致结构

5、准备验证集到Linux虚拟机中

        笔者将训练时的val图片复制到虚拟机项目内(具体需要多少张我也不知道我准备了88张)

6、模型转换

        由于我们训练的模型是目标监测模型,所以我们需要打开detect文件夹,将其中的to_kmodel复制到Linux环境中

        查看操作命令由于我的模型输入为1,3,320,320所以不用输入input_width

得出指令如下python to_kmodel.py -–model best.onnx –dataset images(验证集目录)

无视警告

等待编译完成

7、效果测试

Kmodel测试结果

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值