Pyqt搭建YOLOv5目标检测系统(可视化界面+功能介绍+源代码)

软件界面如下所示:

功能:

  1. 模型选择

  1. 输入选择(本地文件、摄像头、RTSP视频流)

  1. IoU调整

  1. 置信度调整

  1. 帧间延时调整

  1. 播放/暂停/结束

  1. 统计检测结果

详细介绍:

1.首先进行模型的选择(官网可下载),包含四种,分别是yolov5s.pt、yolov5m.pt、yolov5l.pt和yolov5x.pt。

2.选择置信度、IoU和帧间延时

3.系统支持输入图片、视频、摄像头和RTSP视频流的目标检测,其中,可以对图片进行处理,包括灰度化、平滑处理、均衡化、形态学、图像梯度、阈值处理、边缘检测、轮廓检测、直线检测、亮度调节和伽玛校正。

软件效果:

图片目标检测

摄像头目标检测

图像处理

说明:

本仓库的yolov5版本为v5.0,是直接从官方仓库拉取的,支持训练。

本仓库依赖模型有yolov5s.pt、yolov5m.pt、yolov5l.pt、yolov5x.pt,下载地址:https://github.com/ultralytics/yolov5/releases/tag/v5.0 点击地址后翻到最下面有下载链接,将下载好的模型放在pt文件夹下,运行界面时,会自动检测已有模型。

运行main.py开启检测界面后会自动检测已有模型。

问题汇总:

Q: 把模型替换为yolov5最新版本的模型后,界面左下角有错误提示,但是没有报错,请问怎么解决?

A: 使用v5.0之后的版本会报错"The size of tensor a (80) must match the size the size of tensor b(52) at non-singleton dimension 3"或者"AttributeError: Can't get attribute 'SPPF' on <module 'models.common' from 'D:\\Yolo_detect\\pyqt+yolo\\PyQt5-YOLOv5-master\\models\\common.py'>"。模型版本不同则无法直接使用,建议用本仓库训练,或者修改代码以匹配你的模型。如果你想看详细错误报告,可以把DetThread类中的异常捕获取消,或者调用cgit模块(自行搜索cgit的用法,很简单)。

Q: 遇到错误:Permission denied:'pt'

A: 可能是pt文件在下载时有损坏,重新下载,或者是没有将pt文件放到pt文件夹中。

Q: ‘Upsample’ object has no attribute 'recompute_scale_factor'

A: torch版本太高,下降一下版本吧,我的是torch=1.7.1、torchvision=0.8.2。torch==1.9.0、torchvision==0.10.0也可以。

Q: 如何打包成exe文件?

A: 打包过一次,但是启动后打不开,打包的文件1G左右,不建议打包。如果有人打包成功了,可以留个言。如果你只是不想使用命令行启动文件,windows用户可以建一个bat文件快速启动。

Q: 点击摄像头按钮后,再检测,为什么还是检测上一次的文件?

A: 点击摄像头按钮后,会自动检测电脑连接了几个摄像头(除了电脑自带摄像头,有些人还会连接usb摄像头),检测完成后,摄像头按钮下方会出现数字序号,你需要手动点击出现的数字选择摄像头。

Q: 请问怎么更改背景图片、背景颜色?

A: 自行搜索:pyqt5+qss。


如果您感兴趣,可以私信我,我会发您!祝大家学习进步!

猜你喜欢

转载自blog.csdn.net/weixin_61961691/article/details/129433632