# 手把手教你使用YOLOV5训练自己的目标检测模型
大家好,这里是肆十二(dejahu),好几个月没有更新了,这两天看了一下关注量,突然多了1k多个朋友关注,想必都是大作业系列教程来的小伙伴。既然有这么多朋友关注这个大作业系列,并且也差不多到了毕设开题和大作业提交的时间了,那我直接就是一波更新。这期的内容相对于上期的果蔬分类和垃圾识别无论是在内容还是新意上我们都进行了船新的升级,我们这次要使用YOLOV5来训练一个口罩检测模型,比较契合当下的疫情,并且目标检测涉及到的知识点也比较多,这次的内容除了可以作为大家的大作业之外,也可以作为一些小伙伴的毕业设计。废话不多说,我们直接开始今天的内容。
> B站讲解视频:[手把手教你使用YOLOV5训练自己的目标检测模型_哔哩哔哩_bilibili](https://www.bilibili.com/video/BV1YL4y1J7xz)
>
> CSDN博客:[手把手教你使用YOLOV5训练自己的目标检测模型-口罩检测-视频教程_dejahu的博客-CSDN博客](https://blog.csdn.net/ECHOSON/article/details/121939535)
>
> 代码地址:[YOLOV5-mask-42: 基于YOLOV5的口罩检测系统-提供教学视频 (gitee.com)](https://gitee.com/song-laogou/yolov5-mask-42)
>
> 处理好的数据集和训练好的模型:[YOLOV5口罩检测数据集+代码+模型2000张标注好的数据+教学视频.zip-深度学习文档类资源-CSDN文库](https://download.csdn.net/download/ECHOSON/63290559)
>
> 更多相关的数据集:[目标检测数据集清单-附赠YOLOV5模型训练和使用教程_dejahu的博客-CSDN博客](https://blog.csdn.net/ECHOSON/article/details/121892887)
先来看看我们要实现的效果,我们将会通过数据来训练一个口罩检测的模型,并用pyqt5进行封装,实现图片口罩检测、视频口罩检测和摄像头实时口罩检测的功能。
![image-20211212181048969](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20211212181048969.png)
![image-20211212194124635](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20211212194124635.png)
## 下载代码
代码的下载地址是:[[YOLOV5-mask-42: 基于YOLOV5的口罩检测系统-提供教学视频 (gitee.com)](https://gitee.com/song-laogou/yolov5-mask-42)](https://github.com/ultralytics/yolov5)
![image-20211214191424378](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20211214191424378.png)
## 配置环境
不熟悉pycharm的anaconda的小伙伴请先看这篇csdn博客,了解pycharm和anaconda的基本操作
[如何在pycharm中配置anaconda的虚拟环境_dejahu的博客-CSDN博客_如何在pycharm中配置anaconda](https://blog.csdn.net/ECHOSON/article/details/117220445)
anaconda安装完成之后请切换到国内的源来提高下载速度 ,命令如下:
```bash
conda config --remove-key channels
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
pip config set global.index-url https://mirrors.ustc.edu.cn/pypi/web/simple
```
首先创建python3.8的虚拟环境,请在命令行中执行下列操作:
```bash
conda create -n yolo5 python==3.8.5
conda activate yolo5
```
### pytorch安装(gpu版本和cpu版本的安装)
实际测试情况是YOLOv5在CPU和GPU的情况下均可使用,不过在CPU的条件下训练那个速度会令人发指,所以有条件的小伙伴一定要安装GPU版本的Pytorch,没有条件的小伙伴最好是租服务器来使用。
GPU版本安装的具体步骤可以参考这篇文章:[2021年Windows下安装GPU版本的Tensorflow和Pytorch_dejahu的博客-CSDN博客](https://blog.csdn.net/ECHOSON/article/details/118420968)
需要注意以下几点:
* 安装之前一定要先更新你的显卡驱动,去官网下载对应型号的驱动安装
* 30系显卡只能使用cuda11的版本
* 一定要创建虚拟环境,这样的话各个深度学习框架之间不发生冲突
我这里创建的是python3.8的环境,安装的Pytorch的版本是1.8.0,命令如下:
```cmd
conda install pytorch==1.8.0 torchvision torchaudio cudatoolkit=10.2 # 注意这条命令指定Pytorch的版本和cuda的版本
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cpuonly # CPU的小伙伴直接执行这条命令即可
```
安装完毕之后,我们来测试一下GPU是否
![image-20210726172454406](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20210726172454406.png)
### pycocotools的安装
<font color='red'>后面我发现了windows下更简单的安装方法,大家可以使用下面这个指令来直接进行安装,不需要下载之后再来安装</font>
```
pip install pycocotools-windows
```
### 其他包的安装
另外的话大家还需要安装程序其他所需的包,包括opencv,matplotlib这些包,不过这些包的安装比较简单,直接通过pip指令执行即可,我们cd到yolov5代码的目录下,直接执行下列指令即可完成包的安装。
```bash
pip install -r requirements.txt
pip install pyqt5
pip install labelme
```
### 测试一下
在yolov5目录下执行下列代码
```bash
python detect.py --source data/images/bus.jpg --weights pretrained/yolov5s.pt
```
执行完毕之后将会输出下列信息
![image-20210610111308496](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20210610111308496.png)
在runs目录下可以找到检测之后的结果
![image-20210610111426144](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20210610111426144.png)
按照官方给出的指令,这里的检测代码功能十分强大,是支持对多种图像和视频流进行检测的,具体的使用方法如下:
```bash
python detect.py --source 0 # webcam
file.jpg # image
file.mp4 # video
path/ # directory
path/*.jpg # glob
'https://youtu.be/NUsoVlDFqZg' # YouTube video
'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream
```
## 数据处理
这里改成yolo的标注形式,之后专门出一期数据转换的内容。
数据标注这里推荐的软件是labelimg,通过pip指令即可安装
在你的虚拟环境下执行`pip install labelimg -i https://mirror.baidu.com/pypi/simple`命令进行安装,然后在命令行中直接执行labelimg软件即可启动数据标注软件。
![image-20210609172156067](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20210609172156067.png)
软件启动后的界面如下:
![image-20210609172557286](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20210609172557286.png)
### 数据标注
虽然是yolo的模型训练,但是这里我们还是选择进行voc格式的标注,一是方便在其他的代码中使用数据集,二是我提供了数据格式转化
**标注的过程是:**
**1.打开图片目录**
![image-20210610004158135](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20210610004158135.png)
**2.设置标注文件保存的目录并设置自动保存**
![image-20210610004215206](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20210610004215206.png)
**3.开始标注,画框,标记目标的label,`crtl+s`保存,然后d切换到下一张继续标注,不断重复重复**
![image-20211212201302682](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image-20211212201302682.png)
labelimg的快捷键如下,学会快捷键可以帮助你提高数据标注的效率。
![image-20210609171855504](https://vehicle4cm.oss-cn-beijing.aliyuncs.com/typoraimgs/image
没有合适的资源?快使用搜索试试~ 我知道了~
yolov5.zip,包含5000多张标记好的跌倒数据集,布置完环境即可训练
共2000个文件
txt:1421个
py:558个
yaml:16个
需积分: 5 6 下载量 196 浏览量
2023-10-06
10:53:29
上传
评论
收藏 649.04MB ZIP 举报
温馨提示
yolov5完善的环境布置,自己已完成训练,包含5000多张跌倒训练数据集和标签,都已整理好,布置完环境即可训练。YOLOv5(You Only Look Once, Version 5)是一种实时目标检测算法,具有高速、高精度的特点,被广泛应用于各种计算机视觉任务中。YOLOv5通过一个单一的神经网络实现目标检测和分类。它采用全卷积网络(Fully Convolutional Network, FCN)结构,将输入图像分割成网格,每个网格单元负责检测其内部的目标。与先前的目标检测算法相比,YOLOv5具有更快的速度和更高的精度,因为它在预测时不需要进行滑动窗口或区域提议。YOLOv5适用于所有需要进行目标检测和分类的场景,特别是那些需要实时性、高精度和大规模数据处理的应用。例如,无人机、自动驾驶、智能监控、机器人视觉等领域的开发人员和应用工程师都可以使用YOLOv5来提高其产品的性能和效率。YOLOv5的目标是提供一个高效、准确、易于使用的目标检测框架,可以在各种不同的场景和应用中进行使用。它通过一个单一的神经网络实现端到端的检测,减少了先前算法中多个步骤的处理时间,提高了检测速度
资源推荐
资源详情
资源评论
收起资源包目录
yolov5.zip,包含5000多张标记好的跌倒数据集,布置完环境即可训练 (2000个子文件)
README.md 15KB
README.md 14KB
README.md 10KB
README.md 2KB
pyparsing.py 267KB
pyparsing.py 227KB
pyparsing.py 227KB
uts46data.py 197KB
langrussianmodel.py 128KB
more.py 115KB
html5parser.py 114KB
__init__.py 106KB
__init__.py 106KB
langbulgarianmodel.py 103KB
langthaimodel.py 101KB
langhungarianmodel.py 100KB
langgreekmodel.py 97KB
langhebrewmodel.py 96KB
langturkishmodel.py 94KB
tarfile.py 90KB
easy_install.py 84KB
constants.py 82KB
_tokenizer.py 75KB
util.py 66KB
locators.py 51KB
database.py 50KB
msvc.py 49KB
dist.py 49KB
distro.py 47KB
ccompiler.py 47KB
dist.py 42KB
wheel.py 42KB
idnadata.py 41KB
compat.py 41KB
package_index.py 39KB
metadata.py 38KB
fallback.py 37KB
connectionpool.py 37KB
package_finder.py 35KB
bdist_msi.py 35KB
models.py 34KB
six.py 34KB
six.py 34KB
securetransport.py 34KB
req_install.py 33KB
_inputstream.py 32KB
euctwfreq.py 31KB
build_ext.py 31KB
utils.py 31KB
big5freq.py 31KB
specifiers.py 30KB
specifiers.py 30KB
specifiers.py 30KB
msvc9compiler.py 30KB
sessions.py 29KB
install.py 29KB
tags.py 29KB
cmdoptions.py 28KB
response.py 28KB
install.py 27KB
wheel.py 27KB
sanitizer.py 26KB
sysconfig.py 26KB
factory.py 26KB
egg_info.py 26KB
jisfreq.py 25KB
shutil.py 25KB
mbcssm.py 25KB
appdirs.py 24KB
prepare.py 23KB
req_uninstall.py 23KB
msvccompiler.py 23KB
version.py 23KB
config.py 23KB
_parser.py 22KB
versioncontrol.py 22KB
adapters.py 21KB
bdist_rpm.py 21KB
retry.py 21KB
sysconfig.py 21KB
_msvccompiler.py 20KB
index.py 20KB
gb2312freq.py 20KB
util.py 20KB
misc.py 20KB
connection.py 20KB
poolmanager.py 19KB
jpcntx.py 19KB
languages.py 19KB
bdist_wheel.py 19KB
sdist.py 19KB
cookies.py 18KB
resolver.py 18KB
__init__.py 18KB
candidates.py 18KB
cmd.py 18KB
git.py 17KB
fancy_getopt.py 17KB
scripts.py 17KB
bindings.py 17KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
Alihao_
- 粉丝: 21
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 全国大学生电子设计大赛项目合集全国电赛优秀作品STM32项目基于STM32NUCLEO板设计彩色LED照明灯(纯cubeMX开发
- STM32硬件资料PWMDAC相关资料二阶RC滤波试验
- 软件开发C++重要培训资料分享13软件开发C++开发技术资料.zip
- 基于YOLOv3、模型压缩和多数据集训练的多主干网络设计源码
- 全国大学生电子设计大赛项目合集全国电赛优秀作品STM32项目基于stm32nucleo-L476的智能灯(操作说明+源码)
- 基于Java的PinView输入框背景颜色动态变化及安全功能设计源码
- HarmonyOS 应用图标
- 基于HTML/CSS/JavaScript的Java兼容老师仓库管理系统设计源码
- 基于Java、JavaScript和CSS的家庭KTV设计源码
- STM32硬件资料PS2参考资料AT键盘接口资料ps2技术参考
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功