YOLOv5总结--持续更新

2023-05-16

1、Data Augmentation:

数据增强操作可以看做是一种正则化方法,防止过拟合。

v4数据增强 创新使用了图像遮挡–Random Erase随机删除一个矩形区域通过均值填充。

Cutout随机删除一个矩形区域通过0填充。

Mixup两张图像每个位置像素按照一定比例进行叠加,label根据像素叠加比例进行分配。

cutmix随机删除一个矩形区域,并通过另一张图像同一位置像素值填充,label根据像素所占比例分配。

Mosaic 使用四张训练图像按一定比例组合成一张图像,使模型学会在更小的范围内识别对象。能有效解决模型训练中小目标的检测问题。

label smoothing 因为训练时标签可能存在错误,不过分相信标签,正则化方法。v5没使用。

2、自适应锚定框(Auto Learning Bounding Box Anchors)

对于COCO数据集,v5在配置文件中预设了640x640的锚框尺寸,对于自己的数据集,我们放大到了3000的size,并且数据集中目标对象 海星的大小和COCO数据集的不同因此要重新学习锚框尺寸。使用autoanchor.py。v5自带了autoanchor 会判断当前anchor契合度,如果低于0.98就会重新聚类,但是感觉不是很好用。明明并没有特别匹配,但还是符合了,我就在用不同数据集的时候重新autoanchor,让它重新进行聚类得到新的框。v4没有这个。

3.Backbone-跨阶段局部网络(CSP)

v5和v4均使用CSPDarknet作为Backbone,其解决了其他大型Backbone中网络优化的梯度信息重复问题。将梯度的变化从头到尾地集成到特征图中,因此减少了模型参数量和FLOPS数值,既保证了推理速度和准确率也减少了模型尺寸。

基于Densnet思想,复制基础层的特征映射图,通过dense block 发送副本到下一个阶段,从而将基础层的特征映射图分离出来,总金额样可以有效缓解梯度消失(通过非常深的网络很难去反推丢失信号),支持特征传播,鼓励网络重用特征,从而减少网络参数量。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

YOLOv5总结--持续更新 的相关文章

  • Redis博客、教程学习资料汇总(持续更新)

    在这篇博客中 xff0c 总结一下写过的博客和一些好的学习资料 博客 xff1a Redis基础 xff0c Linux下安装Redis和hredis xff0c C 43 43 调用Redis xff0c Redis中字符串设计 Redi
  • 串口输出乱码问题的解决方法汇总(持续更新):

    平时工作中程序员在调试时总会用到串口打印数据以及一些标志位查看程序是否出现问题 但是在使用时总会遇到各种各样的问题 xff0c 最常见的就是输出乱码问题 xff08 指的是有收到数据但数据显示的是一堆不认识的汉字或字符 xff09 xff0
  • yolov5关闭wandb

    yolov5训练过程中wandb总是提示登入账号 xff0c 不登入还不能继续训练 xff0c 想要关闭wandb xff0c 直接不使用即可 在 yolov5 utils loggers wandb wandb utils py中 imp
  • ROS报错处理(持续更新)

    1 运行节点时报错 xff1a rospack Error package 39 test 39 not found 没有找到ros功能包 xff0c 原因是没有为功能包配置系统环境 xff0c 可以利用source运行工作空间中devel
  • RoboCom机器人大赛使用yolov5抽取20个随机图片进行人群识别

    目录 1 原理 2 思维流程 2 1 进行yolov5的环境搭建 2 1 1 在Linux的ubuntu环境anaconda的安装 2 1 2 Vscode的安装和配置 2 1 3 Github上面yolov5文件的下载 2 1 4 使用A
  • Yolov5 更改识别窗口大小

    启动yolov5时 xff0c 会因为像素太大导致占据整个桌面 xff0c 这样非常影响使用和操作 xff0c 我们可以通过opencv中的resize函数来修改识别窗口的像素大小 xff0c 这样操作就方便多了 原代码中 通过修改cv2
  • YOLOv5训练自己的数据集实现视频的识别

    写在前面 我本来是使用这个模型进行手写签名的定位 xff0c 但是因为比赛的主办方原因 xff0c 数据不允许公开 xff0c 所以我使用动物世界的一段开头视屏来制作我的数据集 这整个模型跑通的过程中 xff0c 我参考了很多不错的博客 x
  • unbuntu18.04 install pytorch1.8-cpu+yolov5

    1 install pytorch 1 change pip source reference link 2 install all pip3 install torchvision 61 61 0 9 0 pip3 install tor
  • yolov5/v7/v8自动检测多个文件夹及截取锚框

    目前yolo仅支持检测图片或单个文件夹 xff0c 但在很多时候需要对成百上千个文件夹中图片进行检测 xff0c 再根据得到的位置信息txt文件来截取图片 xff0c 如何一步完成呢 xff0c 详情见下文 在detect py中将save
  • YOLOv5识别目标的实时坐标打印

    引言 这个功能看似鸡肋 xff0c 但对于无人机目标识别与追踪有重要意义 xff0c 通过目标在摄像头视野的坐标位置 xff0c 可以推算出无人机相对与目标的位置 xff0c 从而对无人机进行位置矫正 因此 xff0c 添加代码打印坐标并不
  • Jetson Xavier NX使用yolov5+deepsort实现CSI摄像头的目标跟踪

    文章目录 安装过程运行效果用python代码来打开CSI摄像头实现CSI摄像头目标跟踪报错 AttributeError 39 NoneType 39 object has no attribute 39 shape 39 运行效果 参考文
  • STL中那些好用的东西!(持续更新)

    一 数据结构部分 1 set amp map xff08 后续持续更新 xff09 2 queue xff08 priority queue xff09 queue lt int gt a 定义 a push i 压入 a pop 弹出 a
  • C语言字符串常用函数总结(持续更新)

    最近在重温C语言的一些基础知识 xff0c 感觉C语言字符串操作还是比较难的 xff0c 在学习的过程中总结了一些常用的字符串相关函数 xff0c 包括C语言字符串输入 字符串输入 计算字符串长度 字符串赋值 字符串分割 字符串拼接 字符串
  • 【YOLOv5问题记录】thop库的安装

    最近开始学习YOLOv5 踩了不少坑 总结一下问题 配置环境按照这篇教程来的 Yolov5的配置 训练 超级详细 小学生玩编程的博客 CSDN博客 训练数据集跟着炮哥的这篇 目标检测 教你利用yolov5训练自己的目标检测模型 yolov5
  • yolov5运行报错之RuntimeError: The size of tensor a (80) must match the size of tensor b (56) at.....

    错误 RuntimeError The size of tensor a 80 must match the size of tensor b 56 at non singleton dimension 3 如图 解决方法 https gi
  • YOLOv5训练目标检测数据集(小白)

    一 提前准备工作 1 利用labelimg软件给收集到的图片打标签 具体步骤网上都有 2 下载好yolov5 v6 1 源码 下载地址 https github com ultralytics yolov5 用pycharm打开 在项目目录
  • 通过Vitis Ai 3.0平台量化yolov5模型并部署到ZCU102板卡上相关问题求解!

    通过Vitis Ai 3 0平台量化yolov5模型并部署到ZCU102板卡上相关问题求解 这些天再通过Vitis Ai 3 0平台来量化yolov5模型的并且部署到zcu102板子上的时候一直遇到检测结果比较离谱的问题 因此想要发个贴请教
  • 小白YOLOv5全流程-训练+实现数字识别

    目录 一 配置 二 准备相关文件进行训练 三 使用labelImg标注图片 1 安装labellmg 2 使用 labellmg 四 划分数据集以及配置文件的修改 1 在VOCData目录下创建程序 split train val py 并
  • YOLOv5(PyTorch)目标检测:原理与源码解析

    PyTorch版YOLOv5目标检测 原理与源码解析 课程链接 https edu csdn net course detail 31428 Linux创始人Linus Torvalds有一句名言 Talk is cheap Show me
  • 还是得从代码角度看yolov5(1)

    train 参考文章 又是经典写到一半发现别人写的更好 基础函数 1 setattr setattr opt k v 将给定对象上的命名属性设置为指定值 等价于opt k v 2 getattr callback getattr logge

随机推荐