《YOLO 目标检测》—— YOLO v4 详细介绍
创作时间:
作者:
@小白创作中心
《YOLO 目标检测》—— YOLO v4 详细介绍
引用
CSDN
1.
https://m.blog.csdn.net/weixin_73504499/article/details/143439649
YOLOv4(You Only Look Once version 4)是一种先进的目标检测系统,于2020年推出,是对之前版本YOLO的改进。YOLOv4基于深度卷积神经网络,能够高精度实时检测图像中的目标。以下是对YOLOv4的详细介绍:
一、整体网络结构
1. YOLO v4 网络结构图
2.对之前版本改进创新的概括
- 输入端的创新:数据增强
- 主干网络的改进:各种方法技巧结合起来,包括:CSPDarknet53、Mish 激活函数、Dropblock
- 特征融合创新:在主干网络和最后的输出层之间插入一些层,比如 SPP 模块、FPN+PAN 结构
- Prediction输出层创新:CIOU Loss(损失函数)、DIoU_NMS(新型的非极大值抑制)
二、对改进创新部分的具体介绍
1. 输入端创新
- Mosaic数据增强:采用了CutMix的方法,将4张图片进行随机缩放、随机裁剪、随机排布的方式进行拼接,增强了对正常背景之外的对象的检测,丰富了检测物体的背景信息。同时,减少了估计均值和方差时的计算量,降低了训练成本。
2. Backbone主干网络创新
CSPDarknet53
- CSPDarknet53:借鉴了ResNet的残差结构,并运用了CSP(Cross Stage Partial)结构
- CSPNet是作者Chien-Yao Wang于2019年发表的论文《CSPNET: A NEW BACKBONE THAT CAN ENHANCE LEARNING CAPABILITY OF CNN》中提出的一种新的网络结构,它可以增强CNN的学习能力,并且在轻量化的同时保持准确性。
- 做法:CSPNet 将基础层的特征映射为两个分支,第二个分支正常执行残差网络,接着将两个分支的信息在通道方向进行 Concat 拼接,最后再通过 Transition 层进一步融合。如下图:
- CSPNet主要是为了解决三个问题:
增强CNN的学习能力;降低内存成本;以及减少计算瓶颈。 - 同时,CSPNet方法可以减少模型计算量和提高运行速度,还能和多种网络结构结合在一起。
Mish激活函数
- Mish激活函数:与ReLU相比,Mish函数在训练过程中能够使梯度更加平滑,避免了神经元的死亡问题,从而提高了模型的准确率。
- 下面是ReLU(左)和Mish(右)激活函数的图像
Dropblock正则化
- Dropblock正则化:在卷积层上引入了一种新的正则化方法,通过丢弃一块相邻区域中的特征来防止过拟合。
- 相比于传统的Dropout技术,DropBlock不是随机屏蔽掉一部分特征(注意是对特征图进行屏蔽),而是随机屏蔽掉多个部分连续的区域。
- 这种方法有助于减少神经网络中的冗余连接,从而提高模型的泛化能力
- 如下图:
3. 特征融合创新
SPP模块
- SPP-Net全称 Spatial Pyramid Pooling Networks,是何恺明提出的,主要是用来解决不同尺寸的特征图如何进入全连接层的,在网络的最后一层 concat 所有特征图,后面能够继续接 CNN 模块
- SPP Net在最后一个卷积层后,接入了金字塔池化层,保证传到下一层全连接层的输入固定。在普通的CNN机构中,输入图像的尺寸往往是固定的(比如224*224像素),输出则是一个固定维数的向量。SPP Net在普通的CNN结构中加入了ROI池化层(ROI Pooling),使得网络的输入图像可以是任意尺寸的,输出则不变,同样是一个固定维数的向量。
- SPP 模块使得神经网络能够处理任意大小的输入,从而大大提高了模型的灵活性和泛化能力。
- 如下图:
PAN结构
- PAN结构:在FPN(Feature Pyramid Networks)的基础上进行了改进,引入了自底向上的路径,使得底层的位置信息更容易传播到顶层。这种双向的信息传递方式增强了模型对不同尺度目标的检测能力。
- YOLOv3 中只有自顶向下的 FPN,对特征图进行特征融合,而 YOLOv4 中则是 FPN+PAN 的方式对特征进一步的融合。引入了自底向上的路径,使得底层信息更容易传到顶部。
- 下面是 YOLOv3 的 Neck 中的 FPN,如图所示:FPN 是自顶向下的,将高层的特征信息通过上采样的方式进行传递融合,得到进行预测的特征图
- YOLOv4 中如下:
- 注意:YOLO v4 的特征融和方式是 concat
- concat:将两个特征图在通道数方向叠加在一起,原特征图信息完全保留下来,再对原特征图增加一些我们认为是较好的特征图,丰富了特征图的多样性,是在空间上对原特征图的增强,这样在下一次卷积的过程中我们能得到更好的特征图。
4. Prediction输出层创新
CIOU Loss
- CIOU Loss:作为边界框回归的损失函数,CIOU Loss考虑了预测框与真实框之间的重叠面积、中心点距离和长宽比等因素,使得模型在训练过程中能够更快地收敛,提高检测的精度。
- CIOU Loss 经过多次的修改后才达到了可以考虑多方面因素的效果
- 下面是 CIOU Loss 的修改历程
- 首先是最初的IOU损失函数是以1 - IOU来计算的,但是这样当预选框和真实框没有相交时(IOU=0 无法梯度计算,相同的IOU却反应不出实际情况到底是哪一个预选框较好,如下图三种情况的IOU都相同
- 这时GIOU Loss的出现解决了以上的问题,公式如下:
- 引入了最小封闭状态C, C 是将真实框和预选框框在内的最小矩形框大小
- 后一部分计算是如下图红色区域与 C 的比值大小,红色区域越大则表示预选框的效果月差,损失值就越大
- 但是又有一种情况解决不了,如下图,到预选框在真实框的内部,通过GIOU Loss 的计算方式则三种的预选框的损失值都相等,又分辨不出哪一个预选框效果好
- 这是DIOU Loss的出现,又解决了上面的问题,公式如下
- 如下图,DIOU Loss 后一部分中分子计算预测框与真实框的中心点的欧氏距离d,分母是能覆盖预测框与真实框的最小框的对角线长度c,这样便优化了距离,速度更快,并解决GIOU Loss的问题
- 还有一种情况,如下图,红色预选框与橙色预选框的中心点位置相同,且面积也相同,则通过 DIOU Loss 的计算结果是相同的
- 但是从这两个与预选框的宽高比可以看出,红色的预选框与真实框更加接近,因此 CIOU Loss 的出现解决了这一问题
- CIOU Loss的公式如下:
- 通过公式可以看出,后一项的加入,又对预选框与真实框的宽高比进行了计算
- 因此 CIOU Loss 考虑了三个几何因素:重叠面积、中心点距离、长宽比,三方面的考虑则可以更好的通过损失至的计算,反向传播后选出最佳的预选框
DIoU_NMS(非极大值抑制)
- DIoU_NMS:作为后处理方法,在去除冗余的检测框时不仅考虑了框的置信度还考虑了框之间的中心点距离,提高了检测的准确性。
- DIOU-NMS和原始的NMS不同,DIoU-NMS不仅考虑了IoU的值,还考虑了两个Box中心点之间的距离,使用了新的公式决定一个Box是否被删除,如下图解释
下面是一个输入为640*640大小的图片,传输到 YOLO v4 模型的过程,结合上面的内容理解YOLO v4网络模型的结构 - 如下图
三、性能与应用
1. 性能
- 在COCO数据集上,YOLOv4的平均精度(AP)达到了43.5%,速度高达65fps。
- 高精度:能够准确地检测出各种不同类别的目标。
- 高速度:满足实际应用中的实时性要求。
- 易于训练:可以在单个GPU上进行训练,降低了训练的成本和难度。
2. 应用
- 智能安防:用于监控摄像头中的目标检测,实时监测人员、车辆等目标的行为。
- 自动驾驶:检测道路上的行人、车辆、交通标志等目标,为自动驾驶系统提供准确的环境信息。
- 工业检测:用于工业生产中的质量检测,例如检测产品的缺陷、尺寸等。
综上所述,YOLOv4是一种非常强大的目标检测算法,具有高精度、高速度和易于训练等优点。它在许多领域都有广泛的应用前景,包括智能安防、自动驾驶和工业检测等。
热门推荐
阿拉伯哲学的流入:浅谈其对中世纪欧洲思想的影响
贴心服务,让养老变“享老”
女职工的产假工资和生育津贴可以兼得吗
广州社保卡申领指南:不同人群所需资料及流程详解
95年前的今天,第一个北京猿人头盖骨被发现
冬季瘙痒症:原因、表现与应对方法
鸡胸肉怎么做减肥餐好吃呢
《周处除三害》,其实是哲学教材
YGM App诈骗手法曝光:警惕刷单返利骗局
如何提高篮球投篮命中率?从基本功到实战技巧的全面指南
眼角肿痛什么原因 眨眼就痛挂什么科
跨越股市发展的“绊脚石”——大股东减持现象深度解析
基因编辑:抗艾滋的新曙光
养花15年,才发现8种花“夏天也能扦插”,成活率挺高的
官翻机靠谱吗?官换机和官翻机有什么区别?一文搞懂
泪腺肿瘤治疗方法有几种类型
基于TinyML毫米波雷达的座舱检测、定位与分类技术详解
婚姻自由权是什么?法律如何保障你的婚姻自主权
5个简单实用的厨房小窍门,让你的烹饪生活更轻松
适合夫妻晚上看电影有哪些类型和推荐-浪漫、喜剧、动作片哪种更合适
一键将2D图片转换为3D图片:ComfyUI工作流详解
如何在寒冬季节选择与搭配时尚且保暖的外套
瑜伽中的自我觉知:如何在喧嚣中找到内心的宁静
选对降压药、用对降压药!ARB类药物大盘点
跳槽时,我该如何找人做内推?
放疗后饮食如何调理?专家给出六大建议
突发眩晕 可能是“耳石症”在捣鬼
十年HR揭秘:工作经验≠高薪?这五个认知误区正在压榨你的价值
智能制造的定义与核心
肌肉疼痛怎么办?医生建议从坐姿调整到药物治疗全攻略