YOLOv5项目实现口罩检测、目标检测(免费提供数据集2000+图片和标注以及所有代码)可以在多种平台上运行(pycharm+CUDA、colab、国内GPU云平台)图片形式、rstp形式、视频形式等

这篇具有很好参考价值的文章主要介绍了YOLOv5项目实现口罩检测、目标检测(免费提供数据集2000+图片和标注以及所有代码)可以在多种平台上运行(pycharm+CUDA、colab、国内GPU云平台)图片形式、rstp形式、视频形式等。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、目标检测概述

相信很多朋友最近想入门计算机视觉方面,但是对于怎么入门还不是很了解,在这个过程中会遇到很多的问题,例如:找不到学习资源、软件不会安装等等。目标检测只是计算机视觉的一个方面,但是目前仍处于热门的研究话题。而目标检测的方法分为one-stage和two-stage方法,其中两种方法包括的方法和结果如下图所示

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

 在这篇文章中,我不会讲关于YOLOv5的一些算法细节,我会手把手教大家实现这个项目

注意:

1、本文章的内容将包含代码运行的多种平台,大家可以根据自己电脑的配置选择合适的运行平台,有:

①pycharm IDE+CUDA+anaconda   自己电脑的配置较高,显存较大的兄弟选择!!!

②colab   很方便!!不太稳定!谷歌的免费的GPU资源,需要外网和Google账户才能使用!!!

③AutoDL    很方便!!稳定!唯一的缺点是按小时收费!!

2、手把手教你怎么训练,同时也提供训练后的模型,可以直接使用(也是手把手教哦yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

3、利用训练后的模型:

①检测图片

②检测视频

③通过摄像实时检测

 二、项目实战(以口罩检测为例)

项目源码和数据集以及数据标注位于文章末尾!!!

2.1目标检测概述

写这一部分的目的是对于深度学习中的一些监督学习方法进行概述,让大家对于目标检测有一个清楚的认识,了解进行目标检测的一系列步骤,便于大家在自己的电脑上实操。

1、我们要选择数据集(当然,在这篇博客中我演示的是口罩数据集)

这时候会有一个问题——什么是数据集?它有什么用?数据集在目标检测中就是很多很多张图片,图片中有一些人、动物、物品等等(这些叫做前景,也就是我们需要检测的目标),同时会有对于这些图片中物体的标注(标注用来确定物体的位置信息)。与此同时,还会有具体是哪一类物体(这叫做标签,例如:有狗、猫、人等等)

将以上的概念迁移到我们今天的项目中,我们的标签一共就有3种:戴口罩、未戴口罩、没有戴好口罩;我们同时用标注工具标注图片中目标的位置,用记事本保存。

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

 如上图所示的一张图片中显然有两个人是戴好口罩的我们用0标注,没有带好口罩的我们用1标注,未戴口罩的用2标注,对于上面一张图片,我们生成的标注信息可以保存在TXT记事本中

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

如上图中,TXT文件中一共有两条记录,代表2个目标,每一条记录有5个参数,作用如上图红色文字所示。

2、划分训练集和验证集

在我的上一篇文章中讲了关于机器学习的本质,里面详细介绍了训练集和测试集怎么划分以及为什么要训练?在这里我就不再赘述,只是说明在目标检测中我们在划分训练集和测试集时候的注意事项

首先我们的图片以及标注放在了一个文件夹中 

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

  yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

  图片和标注文件夹下面都有两个子文件夹,都包含了训练集和验证集,训练集中的图片共有600张,测试集中的图片有178张。如下图所示

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

 yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

3、一些文件的作用

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

2.2 模型训练

模型的训练我们就使用云平台,例如:Google的colab或者国内收费的云平台等GPU租用,考虑到许多兄弟无法访问外网,我这次的演示就以国内GPU平台为例。

1、百度搜索AutoDL

进入AutoDL官网,注册一个账号,选择合适的配置的GPU,点击创建实例即可

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

①如上图所示,这个就是你创建的实例,我们选择的显卡的显存为40G,算是比较大的显存了(也可以选择小的显存,只不过训练的时间久一点)。

②接着我们点击图中所示的JupyterLab工具进入编辑窗口 按下图中的要求操作。

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

 ③在代码行输入以下代码,解压压缩文件(注意这一步的操作一定要在上传成功后操作!!!

import zipfile
f = zipfile.ZipFile("./yolov5-mask-master.zip",'r')
for file in f.namelist():
    f.extract(file)               
f.close()

④然后输入以下代码进入文件夹目录下,安装配置文件(这也是选择云GPU的一点好处,避免了自己安装的各种错)

%cd yolov5-mask-master/
%pip install -qr requirements.txt

2、正式开始训练!!!

继续输入下面的代码,开始训练

!python train.py --batch-size 16

注意后面的训练参数可以自己设置,如果你用的GPU显存足够大,可以定义64(我用的是40G显存),如果你的显存10G左右,参数改为8就可以。

接下来会出现整个YOLOv5模型的结构框架,每一层的定义,以及参数量的多少,见下图。 

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习 以及下面图中的参数信息等等

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

 稍等一段时间,模型就开始训练了,我设置默认训练100轮,如果大家想修改训练轮数的话,可以在上面添加参数,代码如下:

!python train.py --batch-size 16 --epoch 200

上面的代码就是训练200轮,大家根据需要自己修改。

最后就是漫长的等待了,大家如果不想等太久,可以适当将训练轮数设置的小一点;或者选择GPU的时候选择显存大的,然后batchsize可以设置的大一点这样也可以提高训练速度;再者就是数据集图片数量少一点。当然最终的训练结果也会根据你的选择有所不同。

3、训练结果展示

训练后的结果保存在run路径下,我们可以将所有的结果都下载到本地的电脑上,方便后面在自己的机子上测试(当然也可以线上测试)。

①best.pt该文件是训练之后的在验证集上达到最好效果的模型文件,用于实际的检测。

②训练100轮之后的结果——精度,召回率,mAP等等

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

从上面的结果中我们可以看出,经过100轮的训练,对戴了口罩的mAP达到了97.3%,对不戴口罩的mAP为88.5%,但是好像对没有戴好口罩的检测精度不是很高,这可能是由于样本数据中的没有戴好口罩的样本数量较少。

③验证过程中的检测结果

 yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

 左边的图是利用我们训练的模型检测得到的结果

右边的图是我们标注的标签

可以看出,检测的总体结果还是比较OK的!!

④更多的结果见下表

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

2.3测试模型效果

在上面的一小节中,讲了模型的训练过程以及训练的结果,在这一小节中,我们根据上一小节中训练得到的模型进行现实中的测试,主要涵盖一下方面:

1、正常的图片检测

!python detect.py --sourse 'data/images'

2、视频检测

!python detect.py --sourse 'video.mp4'

3、rstp流(IP摄像头软件需要在手机上下载)

!python detect.py --source 'rtsp://192.168.43.1:8554/live'

结果

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

 实际中的检测结果如上图所示,成功的检测出了未佩戴口罩、没有戴好口罩、和戴口罩三种类型,虽然在某些方面模型还不够完善,证明有可能是训练轮数不够,训练集和验证集图片设置不合理,还有可能是选择的训练集中的特征信息不突出等等。

结果和源码以及数据集链接提取!!!

链接:https://pan.baidu.com/s/1Ba82PlF1BTFkzwTEdJ5W_g 
提取码:krjc

大家需要把图片的两个文件夹复制到newmask目录下(具体操作看下图)

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习

yolo口罩检测项目实战,目标检测,目标检测,YOLO,深度学习 

 文章来源地址https://www.toymoban.com/news/detail-771532.html

到了这里,关于YOLOv5项目实现口罩检测、目标检测(免费提供数据集2000+图片和标注以及所有代码)可以在多种平台上运行(pycharm+CUDA、colab、国内GPU云平台)图片形式、rstp形式、视频形式等的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用 YOLOv5 进行实时口罩检测

    在本文中,我将解释关于使用名为 Yolo 和 Opencv 的深度学习算法进行实时口罩检测。Yolo 代表 You Only Look Once,是一种利用卷积神经网络 (CNN) 来检测对象的深度学习算法。 “YOLOv5是YOLO系列的最新产品。YOLOv5在YOLOv4的基础上进行了改进,其运行速度大幅提升,最快速度达到140帧

    2024年02月13日
    浏览(22)
  • 佩戴口罩检测从零开始使用YOLOv5+PyQt5+OpenCV+爬虫实现(支持图片、视频、摄像头实时检测,UI美化升级)

    全流程 教程,从数据采集到模型使用到最终展示。 支持图片检测、视频检测、摄像头实时检测,还支持视频的暂停、结束等功能。若有任何疑问和建议欢迎评论区讨论。 先放上最终UI实现效果 图片检测效果图 视频检测效果图 摄像头实时检测效果图 我已经处理了一份数据形

    2024年02月04日
    浏览(32)
  • Yolov5目标检测项目的运行以及常见报错

    上期我们引入了一个目标检测的模型,并对其所需的环境配置进行了搭建。这期主要针对项目如何运行以及运行过程中的常见报错进行记录以及分享,毕竟报错在深度学习的环境搭建也是很常见的嘛,如何解决报错问题还是很有必要去分析以及学习的。 本期项目源码以及环境

    2024年02月08日
    浏览(31)
  • YOLOv5实现目标检测

    YOLOv5 🚀 是COCO数据集上预处理的一系列对象检测架构和模型,代表Ultralytics对未来视觉人工智能方法的开源研究,融合了数千小时研究和开发过程中积累的经验教训和最佳实践。 本文用来记录第一次使用 YOLOv5实现: 视频目标检测 摄像头目标检测 博主所使用的环境是win10 +

    2024年02月09日
    浏览(24)
  • 【目标检测】理论篇(3)YOLOv5实现

    Yolov5网络构架实现

    2024年02月09日
    浏览(24)
  • 使用YOLOv5实现图片、视频的目标检测

    接下来我将从官方代码开始,一步一步展示如何进行图片、视频识别 首先从GitHub下载官方代码(也可以从下面链接获取): 链接:https://pan.baidu.com/s/16wzV899D90TY2Xwhx4TwhA 提取码:vzvj (你的环境名可能和我不一样) 可以看到 \\\'--weights\\\' 参数(参数解读详见4.a)的默认值为\\\'yolov

    2023年04月15日
    浏览(29)
  • 使用YOLOv5实现实时目标检测结果保存

           本文将分享保存实时目标检测结果的方法,包括将目标信息逐帧保存到.txt文件中、逐帧输出检测结果图片、以及如何保存所有检测图片(包括视野中无目标的帧)。 目录 0.准备 1.目标信息保存 2.检测图片保存 3.保存所有帧        本文以单摄像头实时目标检测进行演

    2024年02月03日
    浏览(34)
  • 【目标检测】YOLOv5算法实现(七):模型训练

      本系列文章记录本人硕士阶段YOLO系列目标检测算法自学及其代码实现的过程。其中算法具体实现借鉴于ultralytics YOLO源码Github,删减了源码中部分内容,满足个人科研需求。   本系列文章主要以YOLOv5为例完成算法的实现,后续修改、增加相关模块即可实现其他版本的

    2024年01月22日
    浏览(37)
  • 【目标检测】YOLOv5算法实现(九):模型预测

      本系列文章记录本人硕士阶段YOLO系列目标检测算法自学及其代码实现的过程。其中算法具体实现借鉴于ultralytics YOLO源码Github,删减了源码中部分内容,满足个人科研需求。   本系列文章主要以YOLOv5为例完成算法的实现,后续修改、增加相关模块即可实现其他版本的

    2024年01月21日
    浏览(31)
  • 【目标检测】YOLOv5算法实现(八):模型验证

      本系列文章记录本人硕士阶段YOLO系列目标检测算法自学及其代码实现的过程。其中算法具体实现借鉴于ultralytics YOLO源码Github,删减了源码中部分内容,满足个人科研需求。   本系列文章主要以YOLOv5为例完成算法的实现,后续修改、增加相关模块即可实现其他版本的

    2024年01月22日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包