赞
踩
简介:
是YOLOv5 的下一个重大更新版本,目前支持图像分类、物体检测和实例分割任务。
YOLOv8 是一个 SOTA 模型,它建立在以前 YOLO 版本的成功基础上,并引入了新的功能和改进,以进一步提升性能和灵活性。
YOLOv8详解:损失函数、Anchor-Free、样本分配策略;以及与v5的对比_yolov8的损失函数为什么大于1-CSDN博客
具体改进如下:
Backbone:使用的依旧是CSP的思想,不过YOLOv5中的C3模块被替换成了C2f模块,实现了进一步的轻量化,同时YOLOv8依旧使用了YOLOv5等架构中使用的SPPF模块;
PAN-FPN:毫无疑问YOLOv8依旧使用了PAN的思想,不过通过对比YOLOv5与YOLOv8的结构图可以看到,YOLOv8将YOLOv5中PAN-FPN上采样阶段中的卷积结构删除了,同时也将C3模块替换为了C2f模块;
Decoupled-Head:是不是嗅到了不一样的味道?是的,YOLOv8走向了Decoupled-Head;
Anchor-Free:YOLOv8抛弃了以往的Anchor-Base,使用了Anchor-Free的思想;
损失函数:YOLOv8 分类损失使用 VFL Loss,边框回归损失 使用 DFL Loss + CIOU Loss
样本匹配:YOLOv8抛弃了以往的IOU匹配或者单边比例的分配方式,而是使用了Task-Aligned Assigner匹配方式
原文链接:https://blog.csdn.net/m0_63774211/article/details/133043242
算法流程:
YOLOv8引入了新的功能和改进:
一个新的骨干网络
选用梯度流更丰富的C2f结构替换了YOLOv5中的C3结构
C2f模块相对于C3模块,采用了梯度分流的思想,即把上一个output的channel拆成2部分,其中一部分不动,另一部分通过conv,再拼回去,这种方法在保证轻量化的同时,获得更加丰富的梯度流信息。这里
YOLOv8之C2f模块——与YOLOv5的C3模块对比_晓shuo的博客-CSDN博客
一个新的 Ancher-Free 检测头
从Anchor-Based换成了Anchor-Free
采用了TAL(Task Alignment Learning)动态匹配 目标检测中的标签分配 - 知乎
一个新的损失函数
DFL(Distribution Focal Loss)结合CIoU Loss做回归分支的损失函数
使得分类和回归任务之间具有较高的一致性。
YOLOv8来啦!YOLO内卷期模型怎么选?9+款AI硬件如何快速部署?深度解析
YOLOv8集合了之前提出的诸如YOLOX、YOLOv6、YOLOv7和PPYOLOE等算法的相关设计尤其是Head标签分配和Loss部分以及PP-YOLOE非常相似。YOLOv8集百家所长达到了实时检测界的一个新高度。
在 YOLOv3 之后,Ultralytics 还发布了 YOLOv5,它比所有其他 YOLO 模型更好、更快、更易于使用。
Anchor-Free:YOLOv8 是一个无锚(Anchor-Free)模型。这意味着它直接预测对象的中心,而不是已知锚框的偏移量。由于减少了 box 预测的数量,因此这种新方法加速了一个非常复杂的推理步骤 —— 非极大值抑制 (NMS)。
另外 标签正负样本分配策略 从 静态分配策略 改成 TAL 动态分配 。
YOLOv8 Ultralytics:最先进的 YOLO 模型 - 简书
yolov3和yolov5的区别_yolov3 yolov5对比_asura77777的博客-CSDN博客
YOLO v8损失函数、Anchor-Free、样本分配策略;以及和v5的对比_麦没了块QAQ的博客-CSDN博客
Backbone: Feature Extractor提取特征的网络,其作用就是提取图片中的信息,供后面的网络使用
Neck : 放在backbone和head之间的,是为了更好的利用backbone提取的特征,起着“特征融合”的作用。
Head:利用前面提取的特征,做出识别
c2f结构,在保证轻量化的同时获得更加丰富的梯度流信息。
Ancher-Free 检测头
v8是anchor free,每个grid产生一个anchor,用taskalign对齐,选取topk个预测的anchor和gt比较,主要是t,t = Sa * Ub,其中s代表类别预测分数,U是iou值,a,b为超参。用t选取topK个anchor作为正样本(代码中默认为13)。yolov5/yolov8的anchor解析 - 知乎
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。