【目标检测】目标检测界的扛把子YOLOv5(原理详解+修炼指南)

简介: 【目标检测】目标检测界的扛把子YOLOv5(原理详解+修炼指南)

1.YOLO输入端

1.1 Mosaic数据增强

Yolov5的输入端采用了和Yolov4一样的Mosaic数据增强的方式。

Mosaic数据增强提出的作者也是来自Yolov5团队的成员,不过,随机缩放、随机裁剪、随机排布的方式进行拼接,对于小目标的检测效果还是很不错的。

  • 4张图片拼接
  • 随机缩放
  • 随机裁剪
  • 随机排布

算法优点:

  • 丰富数据集
  • 减少GPU计算

1.2 自适应锚框计算

在Yolo算法中,针对不同的数据集,都会有初始设定长宽的锚框。

在网络训练中,网络在初始锚框的基础上输出预测框,进而和真实框groundtruth进行比对,计算两者差距,再反向更新,迭代网络参数。

  • Step1:读取训练集中所有图片的w、h以及检测框的w、h
  • Step2:将读取的坐标修正为绝对坐标
  • Step3:使用Kmeans算法对训练集中所有的检测框进行聚类,得到k个anchors
  • Step4:通过遗传算法对得到的anchors进行变异,如果变异后效果好将其保留,否则跳过
  • Step5:将最终得到的最优anchors按照面积返回

1.3 自适应图片缩放

在常用的目标检测算法中,不同的图片长宽都不相同,因此常用的方式是将原始图片统一缩放到一个标准尺寸,再送入检测网络中。

letterbox自适应图片缩放技术尽量保持高宽比,缺的用灰边补齐达到固定的尺寸。

2.YOLO总体架构图

2.1 BackBone

主要进行特征提取,将图像中的物体信息通过卷积网络进行提取,用于后面目标检测。

2.1.1 Focus模块

Focus层原理和PassThrough层很类似。它采用切片操作把高分辨率的图片拆分成多个低分辨率的图片/特征图,即隔列采样+拼接。

2.1.2 SPP模块

空间金字塔池化,能将任意大小的特征图转换成固定大小的特征向量。

2.1.3 CSP_X模块

backbone是较深的网络,增加残差结构可以增加层与层之间反向传播的梯度值,避免因为加深而带来的梯度消失,从而可以提取到更细粒度的特征并且不用担心网络退化。

2.2 Neck

对特征进行混合与组合,增强网络的鲁棒性,加强物体检测能力,并且将这些特征传递给Head层进行预测。

2.2.1 FPN

2.2.2 PAN

2.3 YOLO输出端

主要进行最终的预测输出。

2.3.1 Bounding Box损失函数

真实检测框和模型预测输出框的吻合程度,用于反向传播优化模型。

2.3.2 NMS非极大值抑制

判断相邻网格识别的是否是同一物体,消除掉多余检测框。


目录
相关文章
|
5月前
|
机器学习/深度学习 算法 固态存储
最强DETR+YOLO | 三阶段的端到端目标检测器的DEYOv2正式来啦,性能炸裂!!!
最强DETR+YOLO | 三阶段的端到端目标检测器的DEYOv2正式来啦,性能炸裂!!!
198 0
|
计算机视觉
迟到的 HRViT | Facebook提出多尺度高分辨率ViT,这才是原汁原味的HRNet思想(二)
迟到的 HRViT | Facebook提出多尺度高分辨率ViT,这才是原汁原味的HRNet思想(二)
243 0
|
4月前
|
机器学习/深度学习
【保姆级教程|YOLOv8改进】【7】多尺度空洞注意力(MSDA),DilateFormer实现暴力涨点
【保姆级教程|YOLOv8改进】【7】多尺度空洞注意力(MSDA),DilateFormer实现暴力涨点
|
机器学习/深度学习 数据采集 人工智能
头疼!卷积神经网络是什么?CNN结构、训练与优化一文全解
头疼!卷积神经网络是什么?CNN结构、训练与优化一文全解
83 0
|
机器学习/深度学习 自然语言处理 算法
涨点技巧 | 旷视孙剑等人提出i-FPN:用于目标检测的隐式特征金字塔网络(文末获取论文)(一)
涨点技巧 | 旷视孙剑等人提出i-FPN:用于目标检测的隐式特征金字塔网络(文末获取论文)(一)
277 0
涨点技巧 | 旷视孙剑等人提出i-FPN:用于目标检测的隐式特征金字塔网络(文末获取论文)(一)
|
机器学习/深度学习 计算机视觉
清华大学提出LiVT,用视觉Transformer学习长尾数据,解决不平衡标注数据不在话下
清华大学提出LiVT,用视觉Transformer学习长尾数据,解决不平衡标注数据不在话下
143 0
|
机器学习/深度学习 传感器 编解码
CenterFormer | CenterNet思想究竟有多少花样?看CenterFormer在3D检测全新SOTA
CenterFormer | CenterNet思想究竟有多少花样?看CenterFormer在3D检测全新SOTA
138 0
|
机器学习/深度学习 自动驾驶 计算机视觉
目标检测提升技巧 | 结构化蒸馏一行代码让目标检测轻松无痛涨点
目标检测提升技巧 | 结构化蒸馏一行代码让目标检测轻松无痛涨点
197 0
|
机器学习/深度学习 自动驾驶 计算机视觉
目标检测提升技巧 | 结构化蒸馏一行代码让目标检测轻松无痛涨点(一)
目标检测提升技巧 | 结构化蒸馏一行代码让目标检测轻松无痛涨点(一)
148 0
|
计算机视觉
目标检测提升技巧 | 结构化蒸馏一行代码让目标检测轻松无痛涨点(二)
目标检测提升技巧 | 结构化蒸馏一行代码让目标检测轻松无痛涨点(二)
147 0
下一篇
无影云桌面