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

YOLOv8 : 数据组织

1. 数据源

        首先YOLOv8是支持目标分类、检测和目标分割。当前以应用最为广泛的目标检测为例,简单说明数据相关的信息。

        一般情况下,建议将数据划分成images和labels,其中images存储图像,labels存储标签文件(YOLO格式)。如果是VOC数据形式,在“005_训练”部分会将如何从VOC到YOLO格式的转换。

        数据组织这一部分,和YOLOv5非常类似,官方代码中也有提供v5loader坐待可选项。因此,在数据组织这一部分,并不考虑花太多时间进行赘述。

2. 数据组织

        YOLOv8同样使用与YOLOv5一样的数据组织形式,初始化时会进行cache_labels。

        可以选择使用“rect”训练形式,会进行进一步的、按照batch进行重组织。

        YOLOv8官方代码中可以看到,在数据加载阶段可选继续使用v5loader,或使用新的build_yolo_datasest,进一步的,实际上是创建了一个YOLODataset对象,YOLODataset又继承自BaseDataset,BaseDataset继承自PyTorch自带的Dataset基类。

        从YOLODataset的collate_fn可以看出,不同于以往的列表形式,YOLOv8的DataLoader加载数据时,是以字典的形式。

3. 数据增强

        如前所述,YOLOv8整体数据处理情况和YOLOv5类似,数据增强也相似。YOLOv8使用的主要数据增强方式是Mosaic。Mosaic数据增强方式分为4张Mosaic和9张Mosaic,此处仅使用4张Mosaic。样例如图1所示。

图1 Mosaic增强及LetterBox

http://www.lryc.cn/news/157201.html

相关文章:

  • golang如何生成zip压缩文件
  • AntDesign技术指南:构建优雅的前端界面
  • 机器人任务挖掘与智能超级自动化技术解析
  • C#通过ModbusTcp协议读写西门子PLC中的浮点数
  • 19-springcloud(中)
  • Leetcode1090. 受标签影响的最大值
  • 第七章:敏捷开发工具方法-part2-CI/CD工具介绍
  • 【自学开发之旅】Flask-回顾--对象拆分-蓝图(二)
  • 自动驾驶中间件
  • 鲲鹏920(ARM64)移植javacpp
  • python打包exe实用版
  • 什么是反向代理(Reverse Proxy)?解释反向代理的作用和常见应用。
  • 算法通关村第十二关——不简单的字符串转换问题
  • PROSOFT PTQ-PDPMV1网络接口模块
  • 力扣(LeetCode)算法_C++——稀疏矩阵的乘法
  • 华为云API人脸识别服务FRS的感知力—偷偷藏不住的你
  • 产品技术体系
  • Docker从认识到实践再到底层原理(二-3)|LXC容器
  • [运维|docker] ubuntu镜像更新时报E: Problem executing scripts APT::Update::Post-Invoke错误
  • 计算机网络的故事——HTTP首部
  • js农历与阳历转换使用笔记
  • 苹果与芯片巨头Arm达成20年新合作协议,将继续采用芯片技术
  • Linux下systemd深入指南:如何优化Java服务管理与开机自启配置
  • PMOS阵列(PMOS阵列代替)
  • Linux常见指令
  • 让开发回归简单模式-组件封装
  • LED显示屏安全亮度参数设置方法和防护
  • 数据库sql--关于计算方圆5公里点位编写
  • 嵌入式基础知识-DMA
  • STM32 软件IIC 控制OLED 显示屏