YOLO-V5轻松上手

这篇具有很好参考价值的文章主要介绍了YOLO-V5轻松上手。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

之前介绍了YOLO-V1~V4版本各做了哪些事以及相较于之前版本的改进。有的人或许会想“直接学习最近版本的算法不好吗”,在我看来,每一个年代的版本/算法都凝聚着当年学术界的智慧,即便是它被淘汰了也依旧有值得思考的地方,或是可以使我们对后续算法的改进/提出的缺点有更深的理解,进而“凝百家之长”真正开出道花结出道果有自己的感悟。

V4出现后,紧接着V5版本就出现了,相比于之前版本,V5出现时没有论文去介绍它怎么做的。V5像是把V4做了更好的实现,即思想算法上没有太大的变化,更像是一个“实际的偏工程的项目”。直到如今YOLO-V5也十分经典。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

本文与前几篇主讲算法不同,本文教大家如何下载和使用YOLO-V5。

有时间的话我会从其源码的角度进行一遍梳理(或许吧不懒的话)。

前面也说过了具体算法和流程与V4无太大区别,主要是更好的实现。

一、YOLO-V5下载

ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite (github.com)

点击上方链接直接下载即可,下载完成后解压,打开Pycharm新建一个目录,

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

下载requirements里面的依赖

pip install -r requirements.txt

值得一提的是YOLO-V5要配合python>=3.7,pytorch>=1.7的版本使用,会用到里面的优化算法,所以大家自行选择一个更高的版本吧。

比如我这里直接选择anaconda里之前下载的torch1.10。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

二、下载、配置数据集和下载预训练模型

2.1 下载数据集

他这里用的是COCO数据集,这玩意比较大我们也没必要下载了,下载个小的玩一玩

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

可以去这里:Computer Vision Datasets (roboflow.com),下载物体检测相关的数据集,样式比较丰富,如检测汽车的、象棋的、动物的、人脸的等等。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

以口罩数据集为例,大家也可以下载自己喜欢的,点击Mask Wearing Dataset,进去下载就行了。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

下载时会提示你选择格式:

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档
mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

下载完成后和V5放在同一级目录就行

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

以train里的文件为例:

  • images则是训练所需的图片

  • labels里则是对应名字图片的标签值,如下1表示没戴口罩,戴了就是0,剩下四个则是"框的坐标"。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

当然有的有很多行,毕竟一张图片里可能有很多人。找的越全recall越高,越精准accuracy越高,整体mAP越高。

后续第一次去读数据的时候还会自动生成labels.cache缓存文件,方便后续读取。

2.2 配置数据集

点开data.yaml,可以看到train和val的相对路径,到时候YOLO代码会直接读取,自己记得确认一下路径是否正确,路径问题比较基础这里就不讲了。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

如果要做test就把test路径写进去就行。

nc指类别的个数,戴口罩和不带口罩,['mask', 'no-mask']

2.3 下载预训练模型

咱们简单下载个5s就行了,https://github.com/ultralytics/yolov5/releases/download/v7.0/yolov5s.pt

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

下载完成后放到yolov5-master文件夹里。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

三、配置demo参数

参考这里:

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档
mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

--data ../MaskDataSet/data.yaml

--cfg models/yolov5s.yaml

--weigths ./yolov5s.pt

--batch-size 24

我们之前下载了预训练模型yolov5s.pt,用的话就加上,不用就--weights ''

当然还有一些参数可选,源码里有默认值,我们先用这些。

四、训练

做好上面那些后,在yolov5-master的train.py里直接run就行了。

刚开始可能报错,我看是他第一次执行,会去github上下载标记字体,然后没连接进去。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

解决办法就是自己点进去那个报错下载的连接自己下载就行了,下载完放到上面那个文件夹里。

之后再进行run,它默认会跑100个epoch,也可以自己设置。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

这里就训练完了

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

上图告诉你 结果在runs\train\exp23那里,即最后最新跑的一次。

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

可见生成了权重文件和一些图片。

results.csv里面是一些标注和统计数据,至于生成的图片这里简单展示几个:

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档
mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档
mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

五、检测

进入detect.py 直接右键run的话,由于下载的yolov5-master的时候它自带测试图片和权重文件,也填写了默认路径,所以不会报错;

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

直接跑的话你会看到结果里:

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档
mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档
mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

这和我们刚刚train那步没有一点关系,都是它自带的一开始不用训练就能玩的。

我们活学活用,刚刚训练的是是否戴口罩,所以我们不妨也自己改一下参数:

其中 -- source 后可以是图片 视频 文件夹 路径url等

我这里让它测试有没有戴口罩,就用上面这两张图片的路径吧即不修改source了;

不过我在里面又加了两张图片

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

修改参数:

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

--weights ./runs/train/exp23/weights/best.pt

--conf 0.4

--data ./MaskDataSet/data.yaml

这里我修改了权重文件 毕竟之前用的是自带的yolov5s.pt,而这个best.pt是我们通过自己下载的预训练模型yolov5s.pt的基础上训练出来的用于检测是否带口罩了的权重文件。 conf是置信度,想改就改。

run完后发现实际效果还行,但黑人那里不行

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档
mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

不过毕竟我们训练的数据就100多张,里面我看了也没有黑人,情有可原,它可能在面部颜色差异上占比很大。

我又找了几张试了试 发现就是数据的问题

mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档
mask wearing dataset 下载,AI遮天传,# YOLO,人工智能,YOLO,python,计算机视觉,Powered by 金山文档

不过问题不大,我们本次的目的就是先学会简单使用他们的代码。

可以把source那里换成视频玩一玩试一试。

六、题外话

希望本篇文章能够对你有所帮助,如果你是连GPU版本的torch都还没下载过的小白建议一步步来。

大家也可以换点别的数据集、参数来自己跑一跑玩一玩,同时感兴趣的小伙伴也可以开始在了解其算法的情况下简单读读源码了,我下一期或许会写一篇V5的源码引导文章。文章来源地址https://www.toymoban.com/news/detail-780155.html

到了这里,关于YOLO-V5轻松上手的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 免费试用!人人都能轻松上手的AI绘画工具,新版本升级

    AIGC(AI Generated Content,即人工智能生产内容)赛道,正在以一种新的方式出圈——AI绘画。 继飞盘、露营之后,年轻人又爱上了AI绘画,用这项新技术“创作”属于自己的画作,甚至还有00后用AI造“虚拟服装”。打开皮卡智能AI绘画工具,输入一个,也可以不输入文字

    2024年02月10日
    浏览(127)
  • 最近很火的AIGC人工智能之AI赋能运营(巧用ChatGPT轻松上手新媒体)

    「作者主页」 :雪碧有白泡泡 「个人网站」 :雪碧的个人网站 「推荐专栏」 : ★ java一站式服务 ★ ★ React从入门到精通 ★ ★ 前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升 ★ ★ 从0到英雄,vue成神之路 ★ ★ 解决算法,一个专栏就够了 ★ ★

    2024年02月08日
    浏览(70)
  • Github超1W Star的机器学习 项目合集:助你轻松跨入AI领域(可快速下载)

    AI时代已经来临,机器学习成为了当今的热潮。但是,很多人在面对机器学习时却不知道如何开始学习。 今天,我为大家推荐几个适合初学者的机器学习开源项目,帮助大家更好地了解和掌握机器学习的知识。这些项目都是开源的,且已经加入了 Github加速计划 ,可以 快速下

    2024年01月22日
    浏览(52)
  • 一步真实解决AssertionError: train: No labels in /xxx/xxx/xxx/datasets/VOC_To_YOLO/train.cache.

    使用YOLOv5在训练自己的数据集时,运行【trian.py】文件时,出现了下面的报错: 主要提示为: AssertionError: train: No labels in /data_1T/xd1/yolov5-6.1/datasets/VOC_To_YOLO/train.cache. Can not train without labels. See https://github.com/ultralytics/yolov5/wiki/Train-Custom-Data 这是因为【datasets.py】中的图片路径设

    2024年02月11日
    浏览(36)
  • YOLOv5报错AssertionError:Label class 1 exceeds nc=1 in yolo/dataset.ymal Possible class labels are 0-0

    新手小白最近在学习yolov5进行检测,记录一下自己在环境搭建及和程序运行中所遇到的问题及解决方法。可能不是解决问题最好的一种可以给一个参考,有其他的解决方法可以麻烦指出来,谢谢。 问题一:在运行train.py(只有1类)程序过程中出现“AssertionError:Label class 1 exc

    2024年02月13日
    浏览(41)
  • 轻松上手Jackjson(珍藏版)

    虽然现在市面上有很多优秀的json解析库,但 Spring默认采用Jackson解析Json。 本文将通过一系列通俗易懂的代码示例,带你逐步掌握 Jackson 的基础用法、进阶技巧以及在实际项目中的应用场景。 Jackson 是当前用的比较广泛的,用来序列化和反序列化 json 的 Java 的开源框架。 什么

    2024年04月08日
    浏览(45)
  • 【Nginx篇】Nginx轻松上手

    💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老 导航 檀越剑指大厂系列:全面总

    2024年02月05日
    浏览(44)
  • Java 持久层框架-mybatis 轻松上手

    Mybatis 它是一款 Java 的持久层框架. 一说到持久层, 大家肯定想到的就是 MySQL 等数据库, 还有 JDBC 等工具. 哪 mybatis、MySQL、JDBC 之间有什么神秘关系呢 ? 从他们之间的定义上看 : MySQL 它是一种流行、开源的关系型数据库, 支持多用户并发访问, 高可用性和可扩展性, 并且能够存储

    2024年02月08日
    浏览(50)
  • 轻松上手 Spring Boot & Kafka 实战!

    2、解压包 tar -zxvf kafka_2.11-1.0.0.tgzmv kafka_2.11-1.0.0 kafka1mv kafka_2.11-1.0.0 kafka2mv kafka_2.11-1.0.0 kafka3 3、创建ZK集群 修改ZK配置文件:kafka1-3/config/zookeeper.properties分别修改对应的参数。 dataDir=/usr/local/kafka/zookeeper1 dataLogDir=/usr/local/kafka/zookeeper/log clientPort=2181 maxClientCnxns=0 tickTime=2000

    2024年04月12日
    浏览(43)
  • 【Python脚本】Python轻松爬取歌曲,小白也能轻松上手操作!

    音乐抓取是一种非常有趣和实用的技术,它可以让我们通过程序从互联网上获取音乐文件,比如MP3文件。在本案例文章中,我们将使用Python编写一个简单的音乐抓取程序,来演示如何使用Python进行音乐抓取。 领取Python学习大礼包 在开始编写代码之前,我们需要安装一些必要

    2024年02月14日
    浏览(40)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包