往期热门博客项目回顾:点击前往
深度学习小白学习路线
AI健身教练-引体向上-俯卧撑计数代码-仰卧起坐姿态估计-康复训练姿态识别-姿态矫正(附代码)
//正文开始!
多功能模型:一体化目标检测、实例分割与姿态估计GUI平台
一、核心功能
1. 多类型目标检测支持
图片 / 视频 / 摄像头 / 文件夹(批量)目标检测
在YOLOSHOW的左侧菜单栏中,用户能够便捷地选择不同的数据源进行目标检测。无论是单个图片、一段视频、实时摄像头流,还是包含多个图像文件的文件夹,YOLOSHOW均能高效地处理,实现批量检测。这一功能极大地增强了平台的适用范围,使其能满足多样化的应用场景需求。
2. 动态模型切换与超参数调整
动态切换模型 / 调整超参数
在检测过程中,允许用户实时动态切换所使用的模型。当前支持的模型包括但不限于YOLOv5、YOLOv7、YOLOv8、YOLOv9、RTDETR以及YOLOv5-seg、YOLOv8-seg等分割模型。这种灵活的模型切换机制使用户能够在不同精度、速度要求下快速适应不同任务,无需中断检测过程即可实现模型间的平滑过渡。
此外,平台还提供了对关键超参数的实时调整能力。用户可动态修改IOU阈值(决定目标框重叠程度)、置信度阈值(影响检测结果的筛选)、延迟时间(控制显示刷新速率)以及线框厚度等参数,以优化检测效果并满足个性化视觉呈现需求。
3. 模型动态加载与管理
动态加载模型
具备智能的模型加载机制,它能自动检测并加载ptfiles
文件夹下的各类YOLO模型(YOLOv5、YOLOv7、YOLOv8、YOLOv9)及其变种(如分割模型、姿态检测模型)。用户若需引入新的预训练模型,只需通过"Settings"框中的"Import Model"按钮选择对应的.pt
文件,程序便会将其复制到ptfiles
目录下,确保模型的无缝集成。
模型命名规范与要求
为了确保模型文件的正确识别与加载,所有.pt
模型文件的命名需遵循特定规则:
- 对于常规的目标检测模型,文件名应包含
yolov5
、yolov7
、yolov8
或yolov9
关键字,例如yolov8-test.pt
。 - 对于分割模型,文件名应包含
yolov5n-seg
、yolov8s-seg
等特定版本标识,如yolov8n-seg-test.pt
。 - 对于姿态检测模型,文件名应包含
yolov8n-pose
等姿态检测版本标识,如yolov8n-pose-test.pt
。
4. 超参数配置管理
加载与保存超参数配置
启动YOLOSHOW时,平台会自动加载用户最近一次保存的超参数配置,确保用户个性化设置的延续性。当程序关闭时,系统会自动保存用户在本次运行期间所做的任何超参数修改,避免重复设定,提升工作效率。
5. 检测结果保存
保存检测结果
若用户希望保存检测结果,可在检测开始前点击"Save MP4/JPG"按钮。待检测完成后,用户可以选择合适的保存路径,将结果以视频或静态图像的形式留存,便于后续分析、汇报或与其他应用系统对接。
6. 多任务支持
目标检测、实例分割与姿态估计
自YOLOSHOW v2.2版本起,平台实现了目标检测、实例分割和姿态估计三大任务的集成。用户可以轻松在不同任务之间切换,如从YOLOv5的目标检测任务转到YOLOv8的实例分割任务,从而在一个统一环境中完成复杂的视觉理解任务,大大提升了工作效率。
7. 模型对比模式
目标检测、实例分割与姿态估计模型对比模式
从YOLOSHOW v2.0版本开始,平台引入了模型对比模式,用户可以在同一场景下同时应用多种目标检测、实例分割或姿态估计模型,并直观比较它们的检测结果,辅助用户选择最适合当前任务的模型,或是进行模型性能评估与调优。
二、运行准备工作
实验环境
- 操作系统(OS):Windows 11
- 中央处理器(CPU):Intel® Core™ i7-10750H CPU @2.60GHz 2.59 GHz
- 图形处理器(GPU):NVIDIA GeForce GTX 1660Ti 6GB
步骤说明
1. 创建并激活虚拟环境
使用conda创建并激活一个基于Python 3.9的虚拟环境,以隔离项目依赖并保持系统的整洁性:
bash
conda create -n yoloshow python=3.9
conda activate yoloshow
2. 安装PyTorch框架
根据操作系统及硬件配置,选择合适的PyTorch版本进行安装:
- Windows :
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
- Linux :
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
若需安装其他版本的PyTorch,请参阅官方文档:Pytorch
3. 安装依赖包
进入YOLOSHOW程序所在路径,执行以下命令安装所需依赖:
bash
cd {YOLOSHOW程序所在的路径}
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install "PySide6-Fluent-Widgets[full]" -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -U Pyside6 -i https://pypi.tuna.tsinghua.edu.cn/simple
4. 添加字体
针对不同操作系统,按照如下指引添加所需的字体文件:
-
Windows用户 :将
fonts
文件夹中的所有.ttf
文件复制到C:\Windows\Fonts
目录。 -
Linux用户 :
bashmkdir -p ~/.local/share/fonts sudo cp fonts/Shojumaru-Regular.ttf ~/.local/share/fonts/ sudo fc-cache -fv
5. 运行项目
在完成上述准备后,执行以下命令启动YOLOSHOW程序:
bash
python main.py
三、技术栈
基于以下主要技术构建:
- Python:作为开发语言,提供丰富的科学计算、数据处理和图形用户界面构建能力。
- PyTorch:深度学习框架,用于构建、训练和部署YOLO系列模型。
- PySide6-Fluent-Widgets:用于构建现代化、流畅的图形界面,提升用户体验。
四、参考文献
- YOLO算法:相关论文及资料,介绍YOLO系列目标检测算法的基本原理与最新进展。
- YOLOv5, YOLOv7, YOLOv8, YOLOv9:具体模型版本的详细介绍与源代码资源。
- YOLO图形化界面:关于YOLOSIDE及PyQt-Fluent-Widgets在YOLOSHOW中实现可视化交互的设计与实
- https://github.com/SWIMMINGLiU/YOLO.SHOW/tree/master??tab=readme-ov-file现细节。
综上所述,作为一个一体化的目标检测、实例分割与姿态估计平台,凭借其强大的多类型数据源支持、动态模型切换与超参数调整、智能模型加载与管理、便捷的超参数配置保存与加载、检测结果保存功能,以及独特的多任务支持与模型对比模式,为用户提供了一个高效、灵活且易用的视觉分析解决方案。通过严谨的环境配置与依赖安装流程,用户可以顺利搭建并运行项目,充分利用其强大功能,服务于各类计算机视觉应用场景。