基于Yolov5的草莓病虫害检测识别

项目介绍

上一篇文章介绍了基于卷积神经网络的交通标志分类识别Python交通标志识别基于卷积神经网络的保姆级教程(Tensorflow),并且最后实现了一个pyqt5的GUI界面,并且还制作了一个简单的Falsk前端网页实现了前后端的一个简单交互,只能实现单张交通标志图像的分类,没有位置检测功能,并且不支持视频的实时检测识别,总体上来讲较为简单。本文介绍一个交通标志识别的进阶项目–基于Yolov5的草莓病虫害检测识别,它不仅能实现图片的多目标检测识别还可以实现视频的实时检测识别。大家可以看一下视频展示效果如下链接

视频演示:交通标志检测视频演示

视频演示包括下面内容:
1.交通标志检测
2.头盔检测
3.口罩检测
4.水果检测
5.手势检测
6.火灾检测
7.跌倒检测
8.电梯电瓶车
9.结核杆菌检测
10.害虫检测
11.无人机检测
12.火灾和烟雾检测
13.草莓病害检测
14.超市果蔬检测

数据集介绍

在这里插入图片描述

在这里插入图片描述

获取代码

在这里插入图片描述

创建虚拟环境

在这里插入图片描述

conda create -n yolov5 python=3.8.5

在这里插入图片描述

安装pytorch(如果不会弄GPU的直接安装CPU版本)

安装CPU版本torch

pip install torch==1.11.0+cpu torchvision==0.12.0+cpu torchaudio==0.11.0 --extra-index-url https://download.pytorch.org/whl/cpu -i https://pypi.tuna.tsinghua.edu.cn/simple

安装GPU版本torch(以我个人为例:我的显卡是3060Ti,CUDA版本是11.7)

pip install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio==0.11.0 --extra-index-url https://download.pytorch.org/whl/cu113 -i https://pypi.tuna.tsinghua.edu.cn/simple

安装其他依赖库

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pyqt5==5.15.6 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pycocotools-windows==2.0.0.2 -i https://pypi.tuna.tsinghua.edu.cn/simple

测试代码是否能跑

python detect.py --weights runs/train/exp17/weights/best.pt --source  data/images/strawberry.jpeg

项目文件夹data/images/bus.jpg图片在识别前的样子

在这里插入图片描述

在这里插入图片描述

成功运行命令如上图显示信息所示:识别结果存在项目文件夹runs\detect\exp文件中:
在这里插入图片描述

训练(可忽略)

接下来用pycharm打开项目,然后在Terminal中操作,输入以下命令

python train.py --data strawberry_data.yaml --cfg mask_yolov5s.yaml --weights pretrained/yolov5s.pt --epoch 32 --batch-size 16

训练比较耗时,我给的项目压缩包中是已经训练好的了。所以训练的步骤可以跳过。

在这里插入图片描述

训练完成后模型评估结果:在模型训练完成后会在runs/train目录下生成一个exp文件里面包含了训练结果,以及一些评估指标。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

根据输出的识别结果可以知道,模型的准确率是非常的高!!!

运行GUI界面

在经过训练之后,打开"display_interface.py"这个代码,直接点击运行,结果如下所示:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_34184505/article/details/130180778