YOLOv8移植到海思SD3403板子教程(一)

本文介绍了如何将YOLOv8模型移植到海思SD3403板子上,包括模型训练、转换和部署的详细步骤。首先,对YOLOv8模型进行训练,然后通过修改源码将PyTorch模型转换为ONNX和Caffe模型。接着,编译Caffe并使用转换脚本生成CAFFE模型和prototxt文件。最后,探讨了SD3403板子上的模型转换流程。若在过程中遇到问题,作者提供了帮助。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

海思SD3403板子上跑通YOLOv5后,尝试将YOLOv8部署到3403上,目前全流程已跑通,算法模型可以在板端的NNN和SVP_NNN核上稳定运行。

首先话不多说进入YOLOv8模型训练部分,不要使用pip install ultralytics安装库,而是下载源码,对源码中训练部分进行修改。这里就不挂链接了,YOLOv8原版模型是无法直接部署到板子上的(至少在我的pipeline里无法直接部署),原因是训练好的pytorch模型需要转换成onnx模型再转换为caffemodel,caffe目前不支持Upsample层和sub层。

训练YOLOv8模型需要对模型定义文件(ultralytics/cfg/models/v8/yolov8.yaml)中head部分进行改造。

# YOLOv8.0n head
head:
  - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
  - [[-1, 6], 1, Concat, [1]] # cat backbone P4
  - [-1, 3, C2f, [512]] # 12

  - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
  - [[-1, 4], 1, Concat, [1]] # cat backbone P3
  - [-1, 3, C2f, [256]] # 15 (P3/8-small)

  - [-1, 1, Conv, [256, 3, 2]]
  - [[-1, 12], 1, Concat, [1]] # cat head P4
  - [-1, 3, C2f, [512]] # 18 (P4/16-medium)

  - [-1, 1, Conv, [512, 3, 2]]
  - [[-1, 9], 1, Concat, [1]] # cat head P5
  - [-1, 3, C2f, [1024]] # 21 (P5/32-large)

  - [[15, 18, 21], 1, Detect, [nc]] #
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值