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

yolov8 OpenCV DNN 部署 推理报错

yolov8是yolov5作者发布的新作品

目录

1、下载源码

2、下载权重

3、配置环境

4、导出onnx格式

 5、OpenCV DNN 推理


1、下载源码

git clone https://github.com/ultralytics/ultralytics.git

2、下载权重

git clone https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n.pt

3、配置环境

 pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

4、导出onnx格式

项目下models/export.md有说明:

 我在目录下用命令行没有反应,所以在项目目录下新建一个python文件【my_export.py】,输入:

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n.pt')  # load an official model
# model = YOLO('path/to/best.pt')  # load a custom trained

# Export the model
model.export(format='onnx')

然后执行:

 python my_export.py

输出如下:

 5、OpenCV DNN 推理

用之前博客写的代码进行推理,发现有报错:

 用netron查看onnx格式模型:

yolov8n.onnx

再查看之前成功部署过的yolov5n.onnx:

yolov5n.onnx

 所以部署代码可能不通用。

又在项目下examples/YOLOv8-CPP-Inference找到部署代码,运行一下依然报错:

 看一下Cmakelist.txt:

 项目里面的C++推理代码应该也是基于OpenCV DNN的。

然后我就在网上找原因,发现是OpenCV版本低了,yolov8  opencv-dnn部署需要4.7以上的版本,我现在用的是OpenCV 4.5.5。

如果是onnxruntime的话就不需要,应该4.0以上的版本都可以,但是之前博客写的yolov5 的onnxruntime C++推理代码还是用不了,因为yolov8的输出与yolov5的输出不一样:

1、输出维度顺序已经变了(可以从上面的netron展示图看到)

2、另外yolov8输出中的84维度是少了一个yolov5的置信度(yolov5是85维度)

写到这里头有点大,思考后选择用onnxruntime推理。因为不想再装opencv4.7了,opencv-C++编译安装起来确实有点麻烦。


http://www.kler.cn/a/17795.html

相关文章:

  • 06.VSCODE:备战大项目,CMake专项配置
  • 从0开始学习Linux——文件管理
  • 大数据开发面试宝典
  • Unity3D实现视频和模型融合效果
  • 如何用C#和Aspose.PDF实现PDF转Word工具
  • python: postgreSQL using psycopg2 or psycopg
  • 科大版中国版ChatGPT来啦!抢先体验
  • 还能这么玩?清华给 ChatGPT 做逆向,发现了 ChatGPT 的进化轨迹!
  • 记一次产线打印json导致的redis连接超时
  • 【算法】Check If Word Is Valid After Substitutions 检查替换后的词是否有效
  • MySQL高频面试题
  • 多通道振弦传感器无线采集仪通过短信和FTP文件修改参数
  • 设计原则之【接口隔离原则】
  • 22.Java多线程
  • SpreadJS 16.1 EN + SpreadJS 16.1 CN Crack
  • 【Linux】linux进程间通信netlink socket(用户与内核通信)
  • PBDB Data Service:Special parameters(特殊参数)
  • 公司新来的00后真是卷王,工作没2年,跳槽到我们公司起薪18K都快接近我了
  • JAVA原生语言开发多学校Saas模式校园管理系统
  • LT8471IFE#PBF-ASEMI代理亚德诺LT8471IFE#PBF原厂芯片
  • 文件操作和IO
  • 机器视觉工程师,听我一句劝,别去外包,干了三年,废了....对女人没了兴趣
  • 【Unity编辑器】拓展Project视图
  • 复兴号列车司机室
  • Midjourney之logo设计(建议收藏)
  • 杂乱之Android的字体相关类Typeface