【YOLOv11-目标检测】目标检测数据格式(官方说明)

原文链接:
https://docs.ultralytics.com/datasets/detect/

写在前面

训练一个鲁棒且准确的目标检测模型需要一个全面的数据集。本文介绍:与Ultralytics YOLO模型兼容的各种数据集格式,并深入解析了它们的结构、使用方法以及如何在不同的格式之间进行转换。

支持的数据集格式

Ultralytics YOLO格式

Ultralytics YOLO格式是一种数据集配置格式,允许您定义数据集根目录、训练/验证/测试图像目录的相对路径(或包含图像路径的*.txt文件)以及类别名称的字典。以下是一个示例:

# Ultralytics 🚀 AGPL-3.0许可证 - https://ultralytics.com/license# COCO8数据集(来自COCO train2017的前8张图像)由Ultralytics提供  
# 文档:https://docs.ultralytics.com/datasets/detect/coco8/  
# 示例用法:yolo train data=coco8.yaml  
# 父目录  
# ├── ultralytics  
# └── datasets  
#     └── coco8  ← 下载至此(1 MB)  # 训练/验证/测试集可以是:1) 目录:path/to/imgs,2) 文件:path/to/imgs.txt,或3) 列表:[path/to/imgs1, path/to/imgs2, ...]  
path: coco8  # 数据集根目录  
train: images/train  # 训练图像(相对于'path')4张图像  
val: images/val  # 验证图像(相对于'path')4张图像  
test:  # 测试图像(可选)  # 类别  
names:  0: person  1: bicycle  2: car  3: motorcycle  4: airplane  5: bus  6: train  7: truck  8: boat  9: traffic light  10: fire hydrant  11: stop sign  12: parking meter  13: bench  14: bird  15: cat  16: dog  17: horse  18: sheep  19: cow  20: elephant  21: bear  22: zebra  23: giraffe  24: backpack  25: umbrella  26: handbag  27: tie  28: suitcase  29: frisbee  30: skis  31: snowboard  32: sports ball  33: kite  34: baseball bat  35: baseball glove  36: skateboard  37: surfboard  38: tennis racket  39: bottle  40: wine glass  41: cup  42: fork  43: knife  44: spoon  45: bowl  46: banana  47: apple  48: sandwich  49: orange  50: broccoli  51: carrot  52: hot dog  53: pizza  54: donut  55: cake  56: chair  57: couch  58: potted plant  59: bed  60: dining table  61: toilet  62: tv  63: laptop  64: mouse  65: remote  66: keyboard  67: cell phone  68: microwave  69: oven  70: toaster  71: sink  72: refrigerator  73: book  74: clock  75: vase  76: scissors  77: teddy bear  78: hair drier  79: toothbrush  # 下载脚本/URL(可选)  
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/coco8.zip  

此格式的标签应以YOLO格式导出,每张图像对应一个*.txt文件。如果图像中没有目标,则不需要*.txt文件。*.txt文件的格式应为每行一个目标,格式为class x_center y_center width height。框坐标必须为归一化的xywh格式(0到1之间)。如果您的框坐标是像素值,应将x_center和宽度除以图像宽度,y_center和高度除以图像高度。类别编号应从0开始(即0为第一个类别)。

示例标注图像

与上图对应的标签文件包含2个人(类别0)和1个领带(类别27):

示例标签文件
0 0.5 0.5 0.1 0.2  
0 0.7 0.7 0.1 0.2  
27 0.3 0.3 0.05 0.1  

使用Ultralytics YOLO格式时,请按照以下COCO8数据集的示例组织您的训练和验证图像及标签。

示例数据集目录结构
datasets/  
└── coco8/  ├── images/  │   ├── train/  # 训练图像  │   └── val/    # 验证图像  └── labels/  ├── train/  # 训练标签  └── val/    # 验证标签  

使用方法

以下是使用这些格式训练模型的示例:

from ultralytics import YOLO  # 加载模型  
model = YOLO("yolo11n.pt")  # 加载预训练模型(推荐用于训练)  # 训练模型  
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)  

支持的数据集

以下是支持的数据集及其简要描述:

  • Argoverse:包含来自城市环境的3D跟踪和运动预测数据,带有丰富的标注。
  • COCO:Common Objects in Context (COCO)是一个大规模的目标检测、分割和字幕生成数据集,包含80个目标类别。
  • LVIS:一个大规模的目标检测、分割和字幕生成数据集,包含1203个目标类别。
  • COCO8:从COCO train和COCO val中提取的前4张图像的小型子集,适合快速测试。
  • COCO8-Grayscale:通过将RGB转换为灰度创建的COCO8灰度版本,适用于单通道模型评估。
  • COCO8-Multispectral:通过插值RGB波长创建的10通道多光谱版本,适用于光谱感知模型评估。
  • COCO128:从COCO train和COCO val中提取的前128张图像的小型子集,适合测试。
  • Global Wheat 2020:包含2020年全球小麦挑战赛的小麦穗图像的数据集。
  • Objects365:一个高质量、大规模的目标检测数据集,包含365个目标类别和超过60万张标注图像。
  • OpenImagesV7:谷歌提供的全面数据集,包含170万张训练图像和4.2万张验证图像。
  • SKU-110K:一个零售环境中的密集目标检测数据集,包含超过1.1万张图像和170万个边界框。
  • HomeObjects-3K New 🚀:包含室内家居物品(如床、椅子、电视等)的数据集,适用于智能家居自动化、机器人、增强现实和房间布局分析等应用。
  • VisDrone:包含无人机捕获图像的目标检测和多目标跟踪数据,超过1万张图像和视频序列。
  • VOC:Pascal Visual Object Classes (VOC)数据集,用于目标检测和分割,包含20个目标类别和超过1.1万张图像。
  • xView:用于俯视图像中目标检测的数据集,包含60个目标类别和超过100万个标注目标。
  • Roboflow 100:一个多样化的目标检测基准,包含100个数据集,涵盖7个图像领域,用于全面模型评估。
  • Brain-tumor:用于检测脑肿瘤的数据集,包含MRI或CT扫描图像,标注了肿瘤的存在、位置和特征。
  • African-wildlife:包含非洲野生动物(如水牛、大象、犀牛和斑马)图像的数据集。
  • Signature:包含各种文档的签名标注图像,支持文档验证和欺诈检测研究。
  • Medical-pills:包含医疗药丸图像的数据集,适用于药品质量保证、药丸分类和法规遵从等应用。

添加您自己的数据集

如果您有自己的数据集并希望用于训练Ultralytics YOLO模型,请确保其遵循上述“Ultralytics YOLO格式”中指定的格式。将您的标注转换为所需格式,并在YAML配置文件中指定路径、类别数量和类别名称。

移植或转换标签格式

从COCO数据集格式转换为YOLO格式

您可以使用以下代码片段轻松将流行的COCO数据集格式的标签转换为YOLO格式:

from ultralytics.data.converter import convert_coco  convert_coco(labels_dir="path/to/coco/annotations/")  

此转换工具可用于将COCO数据集或任何COCO格式的数据集转换为Ultralytics YOLO格式。该过程将基于JSON的COCO标注转换为更简单的基于文本的YOLO格式,使其与Ultralytics YOLO模型兼容。

请务必检查您要使用的数据集是否与您的模型兼容,并遵循必要的格式约定。正确格式化的数据集对于训练成功的目标检测模型至关重要。

常见问题

什么是Ultralytics YOLO数据集格式?如何构建它?

Ultralytics YOLO格式是一种用于定义训练项目中数据集的结构化配置。它涉及设置训练、验证和测试图像及其对应标签的路径。例如:

path: coco8  # 数据集根目录  
train: images/train  # 训练图像(相对于'path')  
val: images/val  # 验证图像(相对于'path')  
test:  # 测试图像(可选)  # 类别  
names:  0: person  1: bicycle  ...  

标签保存在*.txt文件中,每张图像对应一个文件,格式为class x_center y_center width height,坐标已归一化。详细指南请参考COCO8数据集示例。

如何将COCO数据集转换为YOLO格式?

您可以使用Ultralytics的转换工具将COCO数据集转换为YOLO格式。以下是一个快速方法:

from ultralytics.data.converter import convert_coco  convert_coco(labels_dir="path/to/coco/annotations/")  

此代码将您的COCO标注转换为YOLO格式,实现与Ultralytics YOLO模型的无缝集成。更多详情请访问“移植或转换标签格式”部分。

Ultralytics YOLO支持哪些目标检测数据集?

Ultralytics YOLO支持多种数据集,包括:

  • Argoverse
  • COCO
  • LVIS
  • COCO8
  • Global Wheat 2020
  • Objects365
  • OpenImagesV7

每个数据集页面都提供了针对YOLO11训练优化的详细结构和用法信息。完整列表请参阅“支持的数据集”部分。

如何使用我的数据集开始训练YOLO11模型?

要开始训练YOLO11模型,请确保您的数据集格式正确,并在YAML文件中定义路径。使用以下脚本开始训练:

from ultralytics import YOLO  model = YOLO("yolo11n.pt")  # 加载预训练模型  
results = model.train(data="path/to/your_dataset.yaml", epochs=100, imgsz=640)  

更多关于使用不同模式(包括CLI命令)的详细信息,请参考“使用方法”部分。

在哪里可以找到使用Ultralytics YOLO进行目标检测的实际示例?

Ultralytics提供了许多示例和实用指南,展示了YOLO11在多种应用中的使用。完整概述请访问Ultralytics博客,您可以找到目标检测、分割等的案例研究、详细教程和社区故事。具体示例请查看文档中的“使用方法”部分。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/913752.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/913752.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

yolo8实现目标检测

✅步骤一:安装 PyTorch(M1 专用)# 推荐使用官方 MPS 后端(Apple Metal 加速) pip install torch torchvision torchaudio确认是否使用了 Apple MPS:import torch print(torch.backends.mps.is_available()…

安全管理协议(SMP):配对流程、密钥生成与防中间人攻击——蓝牙面试核心考点精解

一、SMP 核心知识点高频考点解析1.1 SMP 在蓝牙安全体系中的定位考点:SMP 的功能与协议栈位置解析: SMP(Security Manager Protocol,安全管理协议)是蓝牙核心规范中负责设备配对、密钥生成与安全连接的关键协议&#x…

U盘实现——U 盘类特殊命令

文章目录 U 盘类特殊命令U 盘的命令封包命令阶段数据阶段状态阶段get max luninquiry(0x12)read format capacities(0x23)read capacity(0x25)mode sense(0x1a)test unit ready(0x00)read(10) 0x28write(10) 0x2aU 盘类特殊命令 U 盘的命令封包 命令阶段 命令阶段主要由主机通…

深度帖:浏览器的事件循环与JS异步

一、浏览器进程 早期的浏览器是单进程的,所有功能杂糅在一个进程中;现在的浏览器是多进程的,包含浏览器进程、网络进程、渲染进程等等,每个进程负责的工作不同。浏览器进程:负责界面显示(地址栏、书签、历史…

Linux网络:UDP socket创建流程与简单通信

本文介绍 UDP 服务端与客户端 的创建流程&#xff0c;和相关的函数接口 核心流程 创建 socket → socket()填写服务器地址信息 → sockaddr_in 结构体绑定地址和端口 → bind()接收并响应客户端数据 → recvfrom() / sendto()socket() #include<sys/so…

windows内核研究(系统调用 1)

WindowsAPI函数的调用过程什么是WindowsApi&#xff1f;Windows API&#xff08;Application Programming Interface&#xff0c;应用程序编程接口&#xff09;是微软为Windows操作系统提供的一套系统级编程接口&#xff0c;允许开发者与操作系统内核、硬件、系统服务等进行交互…

【前端】异步任务风控验证与轮询机制技术方案(通用笔记版)

一、背景场景 在某类生成任务中&#xff0c;例如用户点击“执行任务”按钮后触发一个较耗时的后端操作&#xff08;如生成报告、渲染图像、转码视频等&#xff09;&#xff0c;由于其调用了模型、渲染服务或需要较长处理时间&#xff0c;为了防止接口被频繁恶意调用&#xff0c…

Vim 编辑器常用操作详解(新手快速上手指南)

&#x1f4bb; Vim 编辑器常用操作详解&#xff08;新手快速上手指南&#xff09;作者&#xff1a;Lixin 日期&#xff1a;2025-07-09 学习内容&#xff1a;Vim 编辑器基础 常用快捷键 Xshell/Xftp连接 Linux基本操作 学习目标&#xff1a;掌握 Vim 的三种常用模式切换与基本…

OpenGL 生成深度图与点云

文章目录 一、简介二、实现代码三、实现效果一、简介 这里基于OpenGL实现对一个Mesh对象深度图的获取,思路其实很简单,直接通过glReadPixels函数获取整个OpenGL中的深度缓冲数据即可;那么反过来我们如果有了这个深度图之后,也可以基于每个像素点的深度值,反算出图像中的深…

25春云曦期末考复现

Web 疯狂星期四 <?php$tg1u$_GET[tg1u];if(!preg_match("/0|1|[3-9]|\~|\|\|\#|\\$|\%|\^|\&|\*|\&#xff08;|\&#xff09;|\-|\|\|\{|\[|\]|\}|\:|\|\"|\,|\<|\.|\>|\/|\?|\\\\|localeconv|pos|current|print|var|dump|getallheaders|get|define…

从Prompt到预训练:掌握大模型核心技术的阶梯式进化

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 在探讨大模型&#xff08;LLM&#xff09;的四阶段技术时&#xff0c;我们可以从Prompt Engineering&#xff08;提示工程&#xff09;、AI Agent&…

手机文件夹隐藏工具,一键保护隐私

软件介绍 今天为大家推荐一款手机文件夹隐藏工具——Amarok&#xff0c;它能帮助用户快速隐藏手机中的私密文件夹&#xff0c;保护个人隐私。 核心功能 Amarok主打文件夹隐藏功能&#xff0c;操作简单便捷。需要注意的是&#xff0c;虽然软件支持应用隐藏功能&#xff0…

day10-Redis面试篇

经过前几天的学习&#xff0c;大家已经掌握了微服务相关技术的实际应用&#xff0c;能够应对企业开发的要求了。不过大家都知道在IT领域往往都是面试造火箭&#xff0c;实际工作拧螺丝。为了更好的应对面试&#xff0c;让大家能拿到更高的offer&#xff0c;我们接下来就讲讲“造…

Axure版本Element组件库-免费版

Axure版本的Element组件库基于Element UI/Plus设计规范开发&#xff0c;涵盖了从基础元素到复杂交互的全品类组件&#xff0c;能高效支撑各类Web原型设计&#xff0c;尤其适合后台管理系统、企业级应用等场景。以下从核心类别展开详细介绍&#xff1a; 链接地址 添加图片注释&a…

记一次JVM问题排查

今天遇到了1次OOM&#xff0c;导入万条数据的Excel于是让运维进行排查。正式环境显示内存还有很多 于是我说让运维加上参数 -XX:HeapDumpOnOutOfMemoryError&#xff0c;出现OOM的时候dump到文件中&#xff0c;将堆内存设置为4G&#xff0c;在Idea上进行测试于是让运维在生产环…

快手Kwai Keye-VL多模态大模型模型架构、训练策略、数据情况

快速看一下Kwai Keye-VL的技术报告&#xff0c; 模型架构 Keye-VL和经典的MLLM架构类似&#xff0c;由ViTMLPLLM组成。视觉侧有两点可以看看&#xff1a; 1、具有原生分辨率的视觉编码器 提到&#xff0c;MLLMs使用预训练的固定分辨率ViT作为视觉编码器。然而&#xff0c;这…

前端-CSS-day2

目录 1、后代选择器 2、子代选择器 3、并集选择器 4、交集选择器 5、伪类选择器 6、超链接伪类 7、CSS特性-继承性 8、CSS特性-层叠性 9、CSS特性-优先级 10、优先级-叠加计算 11、Emmet写法 12、背景图 13、背景图平铺方式 14、背景图位置 15、背景图缩放 16、…

米思齐2.0 3.0 mixly arduino 编程软件下载安装及详情使用指南 导入库文件方法 支持8266 esp32

一、米思齐软件下载及安装 1、 米思齐软件下载 https://item.taobao.com/item.htm?id883253312209 2、软件版本简单说明&#xff1a; a、 Windows版本&#xff08;建议win10及以上系统使用&#xff09;&#xff1a; 一键更新完整版 2.8GB-3GB&#xff1a;下载后解压即可使…

结构体指针:使用结构体指针访问和修改结构体成员。

知识点结构体指针Employee *p; 保存结构体的地址&#xff1b;p->member 用箭头运算符访问或修改成员。数组与指针Employee *emps malloc(N * sizeof *emps); 动态创建结构体数组&#xff1b;p < emps N 与 p 配合遍历。scanf 与数组退化p->name 是 char name[50] 的…

支持零样本和少样本的文本到语音48k star的配音工具:GPT-SoVITS-WebUI

支持零样本和少样本的文本到语音48k star的配音工具&#xff1a;GPT-SoVITS-WebUI 官网&#xff1a;RVC-Boss/GPT-SoVITS: 1 min voice data can also be used to train a good TTS model! (few shot voice cloning) 用户手册&#xff1a;GPT-SoVITS指南 功能 零样本文本到语…