# onnx-pyqt5-nuitka **Repository Path**: yang-yifan_first/onnx-pyqt5-nuitka ## Basic Information - **Project Name**: onnx-pyqt5-nuitka - **Description**: 检测大豆发芽率。yolov5模型,onnx推理,pyqt5可视化,nuitka打包程序。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-04-14 - **Last Updated**: 2024-06-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于Yolov5 + onnx + PyQt5 + 的目标检测打包部署 --- [English](.github/README_en.md) | 简体中文 ## \***如遇问题,请提issue**\* --- * [实现](#实现) * [展示](#展示) * [成品下载体验](#展示) * [主界面](#主界面) * [功能](#功能) * [项目需求](#项目需求-详见requirementstxt) * [使用方法](#使用方法) * [快速入门](#快速入门) * [训练自己的数据集并转换为此项目可用的模型](#训练自己的数据集并转换为此项目可用的模型) * [打包为可执行文件](#打包为可执行文件) --- ### 实现 > * Yolov5训练个人数据集 > * pt格式模型转换为onnx格式 > * 使用openCV的dnn模块或onnxruntime实现检测 > * 在Windows平台打包为可执行程序(Linux理论上也可以打包,但没试过) > * 打包后可移植(部署)到大多数Windows设备 --- ### 展示 #### ***成品下载体验: (130MB)*** #### ***主界面*** > ![主界面](https://img-blog.csdnimg.cn/img_convert/0924c2117f8f5b570afd0a099638282d.jpeg) #### ***功能*** > > 1. 支持视频、图片、本地摄像头、网络视频流、屏幕 > 2. 实时帧数 > 3. 重定向控制台输出到软件界面上 > 4. 更改检测置信度、IOU阈值 > 5. 显示/关闭锚框、更改锚框宽度及颜色 > 6. 打印/隐藏检测结果 > 7. 录制检测视频 > 8. 保存实时截图、控制台记录 > 9. 自定义脚本,每次检测都将触发,(详细说明请阅读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` > * 如果不报错的话将会出现界面,**有报错又不知道怎么解决的话可以提issue,看到回复** > * 点击`▶`按钮开始检测,高阶玩法参考`need/self_demo.py` > >#### ***训练自己的数据集并转换为此项目可用的模型*** > > * 推荐用Yolov5 5.0版本,如果想兼容其他版本请自行修改代码,[Yolov5 5.0传送门](https://github.com/ultralytics/yolov5/tree/v5.0) > * 训练教程:[目标检测---教你利用yolov5训练自己的目标检测模型](https://blog.csdn.net/jiaoty19/article/details/125614783) > * 训练完成后按照[官方命令](https://github.com/ultralytics/yolov5/issues/251)转为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文件,根据报错信息将模块也复制到`publish`文件夹内,直到成功运行 > * 附nuitka的使用方法:[知乎@Python与模具](https://zhuanlan.zhihu.com/p/341099225) ---