Yolov5学习笔记

目录

1、网络结构

2、输入端

2.1、Mosaic数据增强

2.2、自适应锚框计算

2.3、自适应图片缩放

3、Backbone

3.1、Focus结构

3.2、CSP结构(Cross Stage Partial Network——跨阶段部分网络)

4、Neck

4.1、FPN(Feature Pyramid Network)

4.2、PAN(Path Aggregation Network)

5、输出端

5.1、Bounding box损失函数

5.2、nms非极大值抑制

参考:https://blog.csdn.net/nan355655600/article/details/107852353

该博主写的确实不错

1、网络结构

具体详细的网络结构可视图显示可用netron在线网站查看,网站链接:Netron(开个梯子)

具体如何在线显示Yolov5之前的用cfg文件,从Yolov5开始网络文件就变成了yaml,所以要pt->onnx->netron的折中方式,先使用Yolov5代码中export.py脚本将pt文件转换为onnx格式,再用netron工具打开即可。

与yolo v3网络结构的不同:

(1)输入端Mosaic数据增强、自适应锚框计算
(2)BackboneFocus结构,CSP结构
(3)NeckFPN+PAN结构
(4)PredictionCIOU_Loss

2、输入端

2.1、Mosaic数据增强

采用了4张图片,随机缩放随机裁剪随机排布的方式进行拼接。

小目标的AP一般比中目标和大目标低很多。而Coco数据集中也包含大量的小目标,纯在的问题的是小目标的分布并不均匀。针对这种情况,采用Mosaic数据增强方式。

2.2、自适应锚框计算

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

Yolov5Coco数据集上初始设定的锚框

Yolov5中将计算锚框的功能嵌入到代码中,每次训练时,自适应的计算不同训练集中的最佳锚框值

2.3、自适应图片缩放

不同图片的长宽不相同,常用方式是将图片统一缩放到一个标准尺寸,而缩放填充后,两端的黑边大小都不同,如果填充的比较多,则存在信息冗余,影响推理速度。

Yolov5代码datasets.py的letterbox函数中进行了修改,对原始图像自适应的添加最少的黑边

3、Backbone

3.1、Focus结构

切片操作

简单而言就是把608*608*3的输入图像切片成4个304*304*3的图像——304*304*12的特征图,再经过卷积就变成了304*304*32。

YOLO v5不同版本,最后使用的卷积核数量不一样。

3.2、CSP结构(Cross Stage Partial Network——跨阶段部分网络)

4、Neck

采用FPN+PAN结构

FPN主要解决了多尺度目标检测中的小目标检测问题,通过特征金字塔结构增强了特征图的语义信息。而PAN则进一步通过双向特征融合,不仅保留了FPN的语义增强优势,还特别提升了模型对小目标的定位能力。

4.1、FPN(Feature Pyramid Network)

FPN结构是一种自顶向下的特征金字塔结构,它通过在深层(高语义但低分辨率)和浅层(低语义但高分辨率)特征之间建立横向连接来增强特征图的语义信息。这种结构使得在不同尺度上都能进行有效的目标检测。FPN的核心在于它能够从底层特征图向上构建一个特征金字塔,同时通过上采样和融合操作,使得高层的语义信息得以传递到低层,从而在保持高分辨率的同时增强了特征图的语义表达能力。

4.2、PAN(Path Aggregation Network)

PAN结构则是在FPN的基础上进一步发展而来,它不仅包含自顶向下的路径,还引入了自底向上的路径,实现了特征的双向融合。PAN通过这种方式,不仅传递了高层的语义信息,还加强了低层的定位信息,使得网络能够更准确地检测到不同尺寸的目标。PAN的设计理念是在FPN的基础上,进一步通过自底向上的路径聚合,将低层的定位特征传递给高层,从而增强整个特征金字塔的定位能力。

5、输出端

5.1、Bounding box损失函数

Yolov5采用CIOU_Loss

v是衡量长宽比一致性的参数

5.2、nms非极大值抑制

Yolov5仍采用加权nms方式

能把漏检的部分给检测出来。

Yolov5是一个目标检测算法,它采用了和Yolov4一样的Mosaic数据增强方式,该方式由Yolov5团队的成员提出。Mosaic数据增强使用了随机缩放、随机裁剪和随机排布的方式进行拼接,对于小目标的检测效果很不错。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [YOLOv5 学习笔记](https://blog.csdn.net/W1995S/article/details/118114221)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [YOLOv5学习笔记](https://blog.csdn.net/qq_54809548/article/details/125403163)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [YOLOv5 自学笔记(持续更新)](https://blog.csdn.net/Mr_wjjianyan/article/details/128475887)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值