目标检测-One Stage-YOLOv8

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


前言

终于到了YOLO系列最新最火爆的网络–YOLOv8,前面YOLOv5中已经提到ultralytics团队集成了先进的YOLO系列目标检测最佳实践,YOLOv8则是他们的最新力作。

YOLOv8本身的创新点不多,偏向工程实践。


提示:以下是本篇文章正文内容,下面内容可供参考

一、YOLOv8的网络结构和流程

YOLOv8同样根据缩放给出了以下版本:YOLOv8nYOLOv8sYOLOv8mYOLOv8lYOLOv8x,同时包括两种输入尺度:P5 640P6 1280

YOLOv8 P5的网络结构图如下,相比于YOLOv5,可以看出改进在于:

  1. Backbone+Neck:修改CSP结构为C2f
  2. Head:使用了Decouped Head,变为Anchor-Free
    目标检测-One Stage-YOLOv8,目标检测,目标检测,YOLO,人工智能,深度学习,计算机视觉

二、YOLOv8的创新点

  1. 骨干网络和 Neck 部分参考了 YOLOv7 ELAN 设计思想,将 YOLOv5 的 C3 结构换成了梯度流更丰富的 C2f 结构,并对不同尺度模型调整了不同的通道数,属于对模型结构精心微调
  2. 缩放的模型不再使用同一套参数
  3. Head部分采用先进Decouped Head,变为anchor-free
  4. Loss 计算方面采用了 TaskAlignedAssigner 正样本分配策略,并引入了 Distribution Focal Loss
  5. 训练的数据增强部分引入了 YOLOX 中的最后 10 epoch 关闭 Mosiac 增强的操作,可以有效地提升精度

三、创新点详解

CSP、C3和C2f

之前在目标检测-One Stage-YOLOv5的讲解中说到了YOLOv5(5.0) 中使用的残差块是CSP结构,在新版YOLOv5(6.0)中, 则将CSP结构改为C3结构。YOLOv8中又将C3结构改为C2f结构。

  • CSPNet被提出的主要目的是为了保证在模型检测和识别精度没有下降的情况下,减少计算量,提高推理速度。它的主要思想是通过分割梯度流,使梯度流通过不同的网络路径传播。通过拼接和过渡等操作,从而实现更丰富的梯度组合信息。
  • CSP和C3的结构和作用基本相同,区别在于C3去掉了残差单元(Res unit,也可叫Bottleneck)支路中后面的卷积层 以及 concat后的BN和Leaky relu层,并将激活函数改为SiLu。
  • 通过C3替换CSP,可以起到精简网络结构,减少计算量,降低模型推理时间的作用。这样操作在YOLOV5X上模型参数量可以从89M下降到87.7M,推理时间从6.9ms下降到6.0ms,mAP从49.2提升到50.1。
  • YOLOv8选用梯度流更丰富的C2f结构替换了YOLOv5中的C3结构,为了轻量化也缩减了骨干网络中最大stage的blocks数,同时不同缩放因子N/S/M/L/X的模型不再是共用一套模型参数,M/L/X大模型还缩减了最后一个stage的输出通道数,进一步减少参数量和计算量。
  • C2f模块就是参考了C3模块以及ELAN的思想进行的设计,让YOLOv8可以在保证轻量化的同时获得更加丰富的梯度流信息
  1. CSP(YOLOv5 -5.0)
    目标检测-One Stage-YOLOv8,目标检测,目标检测,YOLO,人工智能,深度学习,计算机视觉

  2. C3(YOLOv5-6.0)
    目标检测-One Stage-YOLOv8,目标检测,目标检测,YOLO,人工智能,深度学习,计算机视觉

  3. C2f(YOLOv8)
    目标检测-One Stage-YOLOv8,目标检测,目标检测,YOLO,人工智能,深度学习,计算机视觉

TaskAlignedAssigner 正样本分配策略

TaskAlignedAssigner是一种标签分配方法,其匹配策略简单总结为: 根据分类与回归的分数加权的分数选择正样本。

  1. 计算对齐程度分数矩阵

t = s α + u β t=s^\alpha+u^\beta t=sα+uβ

s 是标注类别对应的预测分值,u 是预测框和 gt 框的 iou,两者相乘就可以得到对齐程度分数 alignment_metrics。

  1. 基于 alignment_metrics 对齐分数选取 topK 的作为正样本

Distribution Focal Loss

和YOLOx不同的是,YOLOv8 loss 计算包括 2 个分支: 分类和回归分支,没有了之前的 objectness 分支。其中

  • 分类分支依然采用 BCE Loss
  • 回归分支采用的是 CIoU Loss 结合 DFL(Distribution Focal Loss)的方式,具体流程如下:

ps:

  • 变为Anchor-Free后,由于其基于中心点的策略(Center-based methods)后,模型从输出“锚框大小偏移量(offest)”变为"预测目标框左、上、右、下边框距目标中心点的距离(ltrb = left, top, right, bottom)",如果距离中心点过远,则收敛较慢,且容易陷入局部最优。
  • 因此YOLOv8采用了如下方法:
  1. 先利用softmax处理后得到预测框位置的离散分布值(shape为4K x reg_max,K为预测框数量,reg_max为预设值)
  2. 然后使用DFL,通过巧妙利用交叉熵损失将预测位置迅速聚焦到目标位置附近,经过加权求和得到四个预测坐标值
  3. 最后使用CIoU Loss进一步精确坐标位置。

目标检测-One Stage-YOLOv8,目标检测,目标检测,YOLO,人工智能,深度学习,计算机视觉

关闭 Mosiac

YOLOv8实验表明,Mosiac数据增强可以迫使模型学习新位置、部分遮挡以及针对不同周围像素的对象,增强模型鲁棒性。但如果在整个训练过程中都进行Mosiac数据增强,则会降低模型性能,在最后十个训练周期中关闭Mosiac是有利的。


总结

YOLOv8的出现进一步促进了实时目标检测的发展。其在COCO数据的精度和速度如下:

目标检测-One Stage-YOLOv8,目标检测,目标检测,YOLO,人工智能,深度学习,计算机视觉文章来源地址https://www.toymoban.com/news/detail-804936.html

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

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

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

相关文章

  • 人工智能学习07--pytorch21--目标检测:YOLO系列理论合集(YOLOv1~v3)

    如果直接看yolov3论文的话,会发现有好多知识点没见过,所以跟着视频从头学一下。 学习up主霹雳吧啦Wz大佬的学习方法: 想学某个网络的代码时: 到网上搜这个网络的讲解 → 对这个网络大概有了印象 → 读论文原文 ( 很多细节都要依照原论文来实现, 自己看原论文十分

    2024年02月10日
    浏览(73)
  • 【AI面试】目标检测中one-stage、two-stage算法的内容和优缺点对比汇总

    在深度学习领域中,图像分类,目标检测和目标分割是三个相对来说较为基础的任务了。再加上图像生成(GAN,VAE,扩散模型),keypoints关键点检测等等,基本上涵盖了图像领域大部分场景了。 尤其是在目标检测,一直是各大比赛 (Pascal VOC, COCO, ImageNet) 的主要任务。与此

    2024年02月12日
    浏览(39)
  • 【半监督学习】5、Efficient Teacher | 专为 one-stage anchor-based 方法设计的半监督目标检测方法

    论文:Efficient Teacher: Semi-Supervised Object Detection for YOLOv5 出处:阿里 时间:2023.03 目标检测近年来的进展离不开大量的标注数据,但数据标识昂贵且耗时。 故此,半监督方法被提出,通过自动生成伪标签来利用大量的未标注数据。 目前的半监督学习有如下三个最重要的挑战:

    2024年02月05日
    浏览(74)
  • YOLO系列目标检测算法-YOLOv6

    YOLO系列目标检测算法目录 - 文章链接 YOLO系列目标检测算法总结对比- 文章链接 YOLOv1- 文章链接 YOLOv2- 文章链接 YOLOv3- 文章链接 YOLOv4- 文章链接 Scaled-YOLOv4- 文章链接 YOLOv5- 文章链接 YOLOv6 - 文章链接 YOLOv7- 文章链接 PP-YOLO- 文章链接 PP-YOLOv2- 文章链接 YOLOR- 文章链接 YOLOS- 文章链

    2023年04月08日
    浏览(48)
  • 【目标检测】YOLO系列——YOLOv1详解

    本篇是关于目标检测算法YOLOv1的学习笔记。网上的博客大多是摘抄翻译论文中的重点内容加上自己的理解,或者是梳理论文的大致思路,在没看过原文的情况下可能总会有些看不懂的地方。所以强烈建议博客搭配原文食用。 原文链接:You Only Look Once: Unified, Real-Time Object Dete

    2024年02月05日
    浏览(49)
  • 目标检测——YOLO系列学习(一)YOLOv1

    YOLO可以说是单阶段的目标检测方法的集大成之作,必学的经典论文,从准备面试的角度来学习一下yolo系列。 RCNN系列,无论哪种算法,核心思路都是 Region Proposal(定位)+ classifier(修正定位+分类) 。所以也被称为两阶段算法。但是难以达到实时检测的效果,因此yolov1将其修

    2024年04月25日
    浏览(41)
  • 目标检测YOLO算法,先从yolov1开始

    有一套配套的学习资料,才能让我们的学习事半功倍。 yolov1论文原址:You Only Look Once: Unified, Real-Time Object Detection 代码地址:darknet: Convolutional Neural Networks (github.com) one-stage(单阶段):YOLO系列 最核心的优势:速度非常快,适合做实时检测任务! 但是缺点也是有的,效果通常

    2024年02月09日
    浏览(49)
  • 目标检测YOLO实战应用案例100讲-基于改进的 YOLOv8 小目标检测

    目录 前言 研究现状 传统目标检测算法 基于卷积神经网络的目标检测算法

    2024年02月07日
    浏览(47)
  • YOLO目标检测——真实和人工智能生成的合成图像数据集下载分享

    YOLO真实和人工智能生成的合成图像数据集,真实场景的高质量图片数据,图片格式为jpg,数据场景丰富。可用于检测图像是真实的还是由人工智能生成。 数据集点击下载 :YOLO真实和人工智能生成的合成图像数据集+120000图片+数据说明.rar

    2024年02月10日
    浏览(52)
  • 目标检测YOLO实战应用案例100讲-基于改进YOLOv4算法的自动驾驶场景 目标检测

    目录 前言 国内外目标检测算法研究现状  传统目标检测算法的发展现状 

    2024年02月06日
    浏览(54)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包