当前位置: 首页 > news >正文

YOLOv4中的数据增强

点击上方“计算机视觉工坊”,选择“星标”

干货第一时间送达

导读

YOLOv4的秘密并不在网络结构上,而在数据准备上。

目标检测领域继续快速发展。不到两个月前,谷歌Brain团队发布了针对物体检测的EfficientDet,挑战了YOLOv3作为(接近)实时物体检测的首要模型的地位,并推动了物体检测的可能性。我们写了一系列的文章,比较YOLOv3和EfficientDet,在自定义的数据上训练YOLOv3,在自定义的数据上训练EfficientDet,我们发现了令人印象深刻的结果。

发布的YOLOv4显示,COCO的平均精度(AP)和每秒帧数(FPS)分别提高了10%和12%。在这篇文章中,我们将看到作者是如何通过深入研究YOLOv4中使用的数据增强技术的细节来实现这一突破的。

马赛克增强的发明人Glen Jocher发布了一个名为YOLOv5的新的YOLO训练框架。你可能还想看看我们关于YOLOv5 vs YOLOv4的文章,这篇文章将解释新的YOLOv5框架的一些优点。

YOLOv4的Freebies都有些什么?

YOLOv4的作者在他们题为 “bag of freebies” 的论文中包括了一系列的贡献。这是一系列可以在不增加推断时间延迟的情况下提高模型性能的步骤。由于它们不影响模型的推断时间,所以大多数都是对训练pipeline的数据管理和数据增强进行了改进。这些技术改进并增强了训练集,让模型可以看到原本看不到的场景。计算机视觉中的数据增强是充分利用数据集的关键,最新的研究继续验证这个假设。

计算机视觉中的数据增强

图像增强从现有的训练数据中创建新的训练样本。不可能真正为我们的模型在推理中要看到的每个真实场景捕捉一个图像。因此,调整现有的训练数据以适用于其他情况,可以使模型从更广泛的情况中学习。

YOLOv4的作者列举了一些最终让他们加入bag of freebies的技术。我们在下面提供一个概述。

畸变

光照畸变 — 这包括在一个图像中改变亮度,对比度,饱和度和噪声。

调整图像亮度

几何畸变 — 这包括随机缩放,裁剪,翻转,和旋转。这些类型的增强可能特别棘手,因为包围框也会受到影响,并且必须更新。

翻转图像

这两种方法都是像素级调整,也就是说通过一系列变换可以很容易地恢复原始图像。

图像遮挡

随机擦除 — 这是一种数据增强技术,将图像的区域替换为随机值,或者是训练集的平均像素值,通常采用不同比例的擦除图像和擦除区域的高宽比来实现。在功能上,这成为了一种正则化技术,它可以防止我们的模型记忆训练数据和过拟合。

Cutout —  在训练中掩盖一个正方形区域。Cutout 区域只对CNN的第一层隐藏。这与随机擦除非常相似,但是在遮挡中使用的是一个常数值。目的是相似的:减少过拟合。

Hide and Seek — 将图像分割成一个由SxS patch组成的网格。以一定的概率隐藏每个补丁(p_hide)。这允许模型了解物体的样子,而不只是学习物体的单个部分是什么样子。

Grid Mask — 图像的区域被隐藏在一个网格中。类似于捉迷藏,这迫使我们的模型学习组成物体的组成部分。

MixUp — 图像对及其标签的凸叠加。

YOLOv4中使用的数据增强策略

现在我们将了解一下YOLOv4在训练期间使用的数据增强策略。研究过程的特点是一系列的实验,所以我们可以想象,作者实验了更多的策略,但没有进入最终的论文。这进一步证明,在自定义视觉任务中,在自己的训练/测试集上探索各种数据增强策略是很重要的。

CutMix — 通过从一个图像中切割一部分并将其粘贴到增强图像上来组合图像。图像的裁剪迫使模型学会基于大量健壮的特征进行预测。看上面的 “Hide and Seek”,没有裁剪,模型特别依赖狗的头来做预测。如果我们想准确地识别一只头藏在灌木丛后面的狗,这就有问题了。在CutMix中,用另一幅图像的一部分以及第二幅图像的ground truth标记替换该切块。在图像生成过程中设置每个图像的比例(例如0.4/0.6)。在下面的图片中,你可以看到CutMix的作者是如何演示这种技术比简单的MixUp和Cutout效果更好。

马赛克数据增强 — 马赛克数据增强将4张训练图像按一定比例组合成1张。Mosaic是YOLOv4中引入的第一个新的数据增强技术。这使得模型能够学习如何识别比正常尺寸小的物体。它还鼓励模型在框架的不同部分定位不同类型的图像。

类标签平滑 — 类标签平滑不是一个图像处理技术,而是一个直观的对类标签的改变。通常情况下,正确的边界框分类是用类的独热向量[0,0,0,1,0,0,…]来表示,并据此计算损失函数。然而,当一个模型的预测值接近1.0时,它往往会出现错误、过拟合以及在某种程度上过度关注其他预测的复杂性。根据这种直觉,对类标签表示进行编码以在某种程度上衡量不确定性更为合理。通常情况下,作者选择0.9,所以用[0,0,0,0.9,0…]来代表正确的类。

自对抗训练(SAT) — 该技术通过对输入图像的变换,利用模型的状态来通知漏洞。首先,图像经过一个正常的训练步骤。然后,与其通过权重向后传播,损失信号被用来以一种对模型最有害的方式改变图像。在随后的训练中,模型被迫面对这个特别困难的例子并学习它。在我们这里介绍的技术中,这一技术可能是最不直观的,也是最接近于建模方面的技术。

????现在我们有一个YOLOv4中数据增强技术的全面的视图!

在你自己的计算机视觉项目中使用数据增强

我们很高兴地看到,模型性能方面的进步很关注数据的增强,就像关注模型架构一样。在看到YOLOv4和YOLOv3在数据增强方面的区别后,我们怀疑这些 “bag of freebie” 技术对任何架构都有用。

英文原文:https://towardsdatascience.com/data-augmentation-in-yolov4-c16bd22b2617

声明:部分内容来源于网络,仅供读者学术交流之目的。文章版权归原作者所有。如有不妥,请联系删除。

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「计算机视觉工坊」公众号后台回复:深度学习,即可下载深度学习算法、3D深度学习、深度学习框架、目标检测、GAN等相关内容近30本pdf书籍。

下载2

在「计算机视觉工坊」公众号后台回复:计算机视觉,即可下载计算机视觉相关17本pdf书籍,包含计算机视觉算法、Python视觉实战、Opencv3.0学习等。

下载3

在「计算机视觉工坊」公众号后台回复:SLAM,即可下载独家SLAM相关视频课程,包含视觉SLAM、激光SLAM精品课程。

重磅!计算机视觉工坊-学习交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有ORB-SLAM系列源码学习、3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、深度估计、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、orb-slam3等视频课程)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

 圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  


http://www.taodudu.cc/news/show-1781827.html

相关文章:

  • 【physx/wasm】在physx中添加自定义接口并重新编译wasm
  • excel---常用操作
  • Lora训练Windows[笔记]
  • linux基础指令讲解(ls、pwd、cd、touch、mkdir)
  • InnoDB 事务处理机制
  • 启明云端ESP32 C3 模组WT32C3通过 MQTT 连接 AWS
  • 这些“大学”,将被除名!
  • 3D视觉关键技术与核心问题包括哪些?
  • 一位算法工程师从30+场秋招面试中总结出的超强面经——目标检测篇(含答案)...
  • 每天2小时,吃透 985博士总结的这份目标检测、卷积神经网络和OpenCV学习资料笔记(20G高清/PPT/代码)...
  • 三维点云配准方法(两帧)
  • 如何更高效、更系统地彻底搞懂3D视觉?
  • 目标跟踪入门篇—相关滤波
  • 视觉三维重建中的关键技术及代码实现视频分享
  • 如何学习多传感器感知融合技术?
  • 最新!泰晤士2021亚洲大学排名发布:91所中国大陆高校上榜!
  • 怎样看pytorch源码最有效?
  • CVPR2021目标检测和语义分割论文分类汇总 | 源码 |
  • 深度学习中的 Attention 机制总结与代码实现(2017-2021年)
  • 使用YOLO V4通过社交距离和口罩检测来缓解COVID
  • 深度学习中的Attention总结
  • CVPR 2021奖项出炉:最佳论文花落马普所,何恺明获提名,首届黄煦涛纪念奖颁布
  • 每天2小时,吃透 985博士总结的这套保姆级TensorFlow + PyTorch笔记(20G高清/PPT/代码)
  • AI总监Karpathy亲自揭秘特斯拉纯视觉系统,还有自动驾驶超算Dojo原型
  • 2021 CVPR | 基于渐进感受局部区域推理的全方位监督点云分割
  • 自动驾驶之多传感器融合-硬件篇(激光雷达)
  • LapStyle - 基于拉普拉斯金字塔的高质量风格化方法 | CVPR2021
  • CVPR 新规严禁审稿期间公开宣传论文,可发 arXiv,LeCun:疯了吧!
  • 详细解读 | CVPR 2021轻量化目标检测模型MobileDets(附论文下载)
  • 基于LOAM框架的激光SLAM开源程序汇总
  • YOLOv4/v5的创新点汇总!
  • 最新!基于深度学习的图像超分技术一览
  • ICRA 2021| 基于精确和减少漂移的关注距离的Camera-IMU-UWB融合定位方法
  • 用简单Mask分类实现语义分割、实例分割“大一统”!FacebookUIUC开源MaskFormer
  • MLP 又又又升级了!港大商汤开源首个用于检测与分割任务的MLP架构
  • ICCV2021|性能优于何恺明团队MoCo v2,DetCo:为目标检测定制任务的对比学习