实例讲解昇腾 CANN YOLOV8 和 YOLOV9 适配

💡 原文中文,约13600字,阅读约需33分钟。
📝

内容提要

本文介绍了华为昇腾CANN YOLOV8和YOLOV9的适配过程。首先需要获取YOLOV8的模型文件,并将其转化为.onnx模型。然后在Atlas 500 Pro服务器上进行模型转换。适配代码可以参考开源代码。最后进行编译运行,输出结果为检测到的物体和置信度。适配YOLOV9的过程与YOLOV8类似。

🎯

关键要点

  • 本文介绍了华为昇腾CANN YOLOV8和YOLOV9的适配过程。
  • 适配YOLOV8需要获取模型文件并转化为.onnx模型。
  • 在Atlas 500 Pro服务器上进行模型转换,适配代码可参考开源代码。
  • YOLOV8模型输出数据大小为[1,84,8400],需要修改后处理部分以适配YOLOV8/YOLOV9。
  • 在Windows上安装YOLOV8环境并执行python脚本将.pt模型转化为.onnx模型。
  • 上传yolov8n.onnx模型到Atlas 500 Pro服务器并执行模型转换命令。
  • 适配代码已开源,核心代码在sampleYOLOV8.cpp中。
  • 编译运行代码后,生成的可执行文件可以进行物体检测。
  • YOLOV9的适配过程与YOLOV8类似,输出格式一致,只需生成yolov9xx.om模型。
  • YOLOV9模型转换步骤包括创建新环境、克隆代码、安装依赖和导出onnx模型。

延伸问答

如何将YOLOV8模型文件转化为.onnx模型?

在Windows上安装YOLOV8环境后,执行python脚本pth2onnx.py,将.pt模型转化为.onnx模型。

适配YOLOV8和YOLOV9的主要步骤是什么?

首先获取模型文件并转化为.onnx模型,然后在Atlas 500 Pro服务器上进行模型转换,最后编译运行代码。

YOLOV8模型的输出数据格式是什么?

YOLOV8模型的输出数据格式为[1, 84, 8400],其中84表示4个边界框预测值和80个检测类别。

如何在Atlas 500 Pro服务器上执行模型转换?

使用命令atc --model=yolov8n.onnx --framework=5 --output=yolov8n --input_shape='images:1,3,640,640' --soc_version=Ascend310P3。

适配YOLOV9的过程与YOLOV8有何不同?

YOLOV9的适配过程与YOLOV8类似,主要区别在于生成yolov9xx.om模型,其他步骤基本相同。

如何编译和运行YOLOV8适配代码?

下载开源代码后,解压并在src目录下执行cmake .和make命令,生成可执行文件后运行即可。

🏷️

标签

➡️

继续阅读