电子说
作者:AVNET 李鑫杰
一,YOLOv8介绍?
YOLOv8 由 Ultralytics 于 2023 年 1 月 10 日发布,在准确性和速度方面提供了前沿的性能。YOLOv8 在之前 YOLO 版本的基础上进行了改进,引入了新的特性和优化,使其成为各种应用中各种目标检测
https://www.ultralytics.com/blog/a-guide-to-deep-dive-into-object-detection-in-2025
任务的理想选择。

Github Repo: ultralytics/ultralytics: Ultralytics YOLO
https://github.com/ultralytics/ultralytics/tree/main
YOLOv8模型的卓越性能使其在多个领域具有广泛的应用前景,如自动驾驶与智能交通、工业制造与质量检测、安全监控与公共安全等。本文将介绍使用ROCm™在AMD® CPU、独立显卡、集成显卡上优化并部署YOLOv8模型。
二,ROCm™工具套件简介
AMD ROCm™ 是一个开放式软件栈,包含多种驱动程序、开发工具和 API,可为从底层内核到最终用户应用的 GPU 编程提供助力。ROCm™ 已针对生成式 AI 和 HPC 应用进行了优化,而且能够轻松将现有代码迁移到 ROCm™ 软件。不仅支持以卷积神经网络(CNN)为核心组件的预测式AI模型(Predictive AI),还支持以Transformer为核心组件的生成式AI模型(Generative AI)。ROCm™ 能够支持AMD的独显以及核显,能够加快AI模型部署到本地的独显以及CPU中的核显上。下表使用的图片来自于COCO数据集中的一幅图片,已经上传到github仓库中,方便读者复现。

三,搭建开发环境
在本地搭建开发环境。
首先,请克隆YOLOv8-AMD-ROCm到本地:
git clone git clone https://github.com/liebedir/YOLOv8-AMD-ROCm.git cd YOLOv8-AMD-ROCm
接着,安装ROCm™:
wget https://repo.radeon.com/amdgpu-install/6.4.3/ubuntu/jammy/amdgpu-install_6.4.60403-1_all.deb

sudo apt install ./amdgpu-install_6.4.60403-1_all.deb

sudo apt update

sudo apt install "linux-headers-$(uname -r)" "linux-modules-extra-$(uname -r)"

sudo apt install amdgpu-dkms


sudo apt install python3-setuptools python3-wheel

sudo usermod -a -G render,video $LOGNAME # Add the current user to the render and video groups
sudo apt install rocm

设置添加环境变量到~/.bashrc,该环境变量与核显的架构相关,11.0.0适用于RDNA3架构核显,其他架构请参考github liebedir/PP-OCRv5-AMD-ROCm :
vi ~/.bashrc export HSA_OVERRIDE_GFX_VERSION=11.0.0

重启计算机
安装python环境与ROCm-onnxruntime
conda create -n ocr-rocm python==3.10 pip3 install onnxruntime-rocm -f https://repo.radeon.com/rocm/manylinux/rocm-rel-6.4.2/

安装Pytorch
Previous PyTorch Versions
https://pytorch.org/get-started/previous-versions/
pip3 install torch torchvision --index-url https://download.pytorch.org/whl/rocm6.4

根据之前安装的ROCm™版本安装对应的pytorch,版本向下兼容
安装ultralytics
pip install ultralytics
至此,模型和环境准备完成!
四,编写YOLOv8-AMD-ROCm推理程序
YOLOv8-AMD-ROCm
https://github.com/liebedir/YOLOv8-AMD-ROCm
项目已将推理程序编写完成,各文件功能如下:

执行演示程序yolo-onnx.py,并指定模型路径和推理硬件设备:
python yolo-onnx.py
运行结果,如下图所示:

五,总结
使用AMD CPU或GPU的客户可以通过ROCm™软件栈将YOLOv8模型部署到GPU或核显硬件平台上。
如果你有更好的文章,欢迎投稿!
稿件接收邮箱:nami.liu@pasuntech.com
更多精彩内容请关注“算力魔方®”!
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !