Yolov5 + 界面PyQt5 +exe文件部署运行

发布时间:2024年01月05日

Yolov5是目标检测领域中最新的一代模型,而PyQt5是一个用于Python编程语言的GUI开发框架。将Yolov5与PyQt5相结合,可以实现一个强大的目标检测界面应用程序。以下是对这个组合的关键点进行阐述:
1. Yolov5的快速高效检测:

Yolov5是一种基于深度学习的目标检测模型,它具有快速高效的特点。通过使用Yolov5,我们可以实时地对图像或视频进行目标检测,并获得准确的检测结果。

2. PyQt5的丰富界面设计能力:

PyQt5提供了丰富的界面设计工具和功能,可以轻松创建各种类型的用户界面。通过PyQt5,我们可以设计出符合用户需求和审美要求的界面,使用户能够直观地操作和交互。

3. 界面与Yolov5的集成:

将Yolov5与PyQt5集成,可以实现一个全功能的目标检测界面应用程序。用户可以通过界面选择输入图像或视频文件,然后点击检测按钮,即可对选定的图像或视频进行目标检测,并在界面上显示检测结果。

4. 实时检测与界面反馈:

通过结合Yolov5和PyQt5,我们可以实现实时目标检测,并将检测结果实时显示在界面上。这样,用户可以直观地观察目标的检测情况,及时做出相应的反应。

5. 结合其他功能:

除了基本的目标检测功能外,我们还可以通过结合Yolov5和PyQt5实现其他附加功能。例如,可以添加目标跟踪功能,让用户能够追踪特定目标的运动轨迹;或者添加图像保存功能,让用户能够保存检测结果等。

总之,结合Yolov5和PyQt5,我们可以创建一个功能强大、界面友好的目标检测应用程序。这种组合不仅提供了高效准确的目标检测能力,还能够将检测结果以直观的方式展示给用户,为用户提供更好的使用体验。

介绍


Yolov5是一种基于深度学习的目标检测算法,PyQt5是一个Python编写的GUI框架,用于创建交互式界面。在部署和运行Yolov5模型时,结合PyQt5可以方便地创建一个用户友好的界面,并将代码打包为.exe文件以供其他人使用。

下面是一个简要的介绍,如何将Yolov5与PyQt5结合,并将代码打包为.exe文件进行部署和运行:

安装必要的软件和库:

安装Python:确保安装了Python解释器。
安装PyQt5:使用pip命令安装PyQt5库,例如pip install pyqt5。
安装yolov5:使用pip命令安装yolov5库,例如pip install yolov5。
安装pyinstaller:使用pip命令安装pyinstaller库,用于将Python代码打包为可执行文件,例如pip install pyinstaller。
创建PyQt5界面:

使用PyQt5创建一个用户界面,包括按钮、文本框等,用于用户输入和交互。
将Yolov5相关的代码嵌入到PyQt5界面中,例如加载模型、进行目标检测等

实现
  • Yolov5训练个人数据集
  • pt格式模型转换为onnx格式
  • 使用openCV的dnn模块或onnxruntime实现检测
  • 在Windows平台打包为可执行程序(Linux理论上也可以打包,但没试过)
  • 打包后可移植(部署)到大多数Windows设备
展示
主界面

功能

  • 支持视频、图片、本地摄像头、网络视频流、屏幕
  • 实时帧数
  • 重定向控制台输出到软件界面上
  • 更改检测置信度、IOU阈值
  • 显示/关闭锚框、更改锚框宽度及颜色
  • 打印/隐藏检测结果
  • 录制检测视频
  • 保存实时截图、控制台记录
  • 自定义脚本,每次检测都将触发,(详细说明请阅读need/self_demo.py)
    ?
项目需求 (详见requirements.txt)?
  • python == 3.9
  • numpy == 1.23.4
  • opencv-python == 4.5.5.62
  • PyQt5 == 5.15.7
  • onnxruntime == 1.13.1
  • nuitka == 0.6.18.4
###自定义 使用方法.
快速入门
  • clone项目到本地

  • 安装依赖pip install -r requirements.txt

  • 运行Yolo2onnxDetectProjectDemo.py

  • 点击?按钮开始检测,高阶玩法参考need/self_demo.py

训练自己的数据集并转换为此项目可用的模型
  • 推荐用Yo转为onnx格式。本仓库的模型转换命令为python models/export.py --weights ./weights/yolov5s.pt --img 640 --batch 1
打包为可执行文件

  • 所用库为nuitka,打包命令已经在build.py中配置好,如需更高级玩法请自己摸索
  • 执行build.py,打包好的文件位于build_file/publish文件夹
  1. 此处需注意:真正打包好的文件在Yolo2onnxDetectProjectDemo.dist文件夹
  2. 为了方便debug和更新,在第一次打包成功后需要将此文件夹内所有的文件复制到publish文件夹
  3. 双击运行exe文件。

快速运行(可以直接看此处)

  1. 打开压缩包,直接点击.exe文件
  2. 设置onnx文件的索引路径

3. 设置输入的模式:图片/视频/摄像头
4. 然后点击运行按钮

5.最终效果

?

文章来源:https://blog.csdn.net/2301_78240361/article/details/135404247
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。