Ultralytics-中文文档-八-

Ultralytics 中文文档(八)

Roboflow Universe Carparts 分割数据集

原文:docs.ultralytics.com/datasets/segment/carparts-seg/

Roboflow Carparts 分割数据集 是一个专为计算机视觉应用设计的图像和视频精选集,特别关注与汽车零件相关的分割任务。该数据集提供了从多个视角捕获的多样化视觉示例,为训练和测试分割模型提供了有价值的注释示例。

无论您是从事汽车研究、开发车辆维护的 AI 解决方案,还是探索计算机视觉应用,Carparts 分割数据集都是增强项目准确性和效率的宝贵资源。

www.youtube.com/embed/eHuzCNZeu0g

观看: 使用 Ultralytics HUB 进行 Carparts 实例分割

数据集结构

Carparts 分割数据集内的数据分布如下所示:

  • 训练集:包括 3156 张图像,每张图像都有相应的注释。

  • 测试集:包括 276 张图像,每张图像都有相应的注释。

  • 验证集:包括 401 张图像,每张图像都有相应的注释。

应用

Carparts 分割在汽车质量控制、汽车维修、电子商务目录、交通监控、自动驾驶车辆、保险处理、回收和智能城市倡议中找到了应用。它通过准确识别和分类不同的车辆组件,为各个行业的效率和自动化做出贡献。

数据集 YAML

YAML(另一种标记语言)文件用于定义数据集配置。它包含有关数据集路径、类别和其他相关信息。在 Package Segmentation 数据集中,carparts-seg.yaml文件位于github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/carparts-seg.yaml

ultralytics/cfg/datasets/carparts-seg.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 license
# Carparts-seg dataset by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/segment/carparts-seg/
# Example usage: yolo train data=carparts-seg.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── carparts-seg  ← downloads here (132 MB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path:  ../datasets/carparts-seg  # dataset root dir
train:  train/images  # train images (relative to 'path') 3516 images
val:  valid/images  # val images (relative to 'path') 276 images
test:  test/images  # test images (relative to 'path') 401 images

# Classes
names:
  0:  back_bumper
  1:  back_door
  2:  back_glass
  3:  back_left_door
  4:  back_left_light
  5:  back_light
  6:  back_right_door
  7:  back_right_light
  8:  front_bumper
  9:  front_door
  10:  front_glass
  11:  front_left_door
  12:  front_left_light
  13:  front_light
  14:  front_right_door
  15:  front_right_light
  16:  hood
  17:  left_mirror
  18:  object
  19:  right_mirror
  20:  tailgate
  21:  trunk
  22:  wheel

# Download script/URL (optional)
download:  https://github.com/ultralytics/assets/releases/download/v0.0.0/carparts-seg.zip 

用法

要在 Carparts 分割数据集上使用 Ultralytics YOLOv8n 模型进行 100 轮的训练,图像大小为 640,您可以使用以下代码片段。有关可用参数的全面列表,请参考模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-seg.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="carparts-seg.yaml", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  segment  train  data=carparts-seg.yaml  model=yolov8n-seg.pt  epochs=100  imgsz=640 

样本数据和注释

Carparts 分割数据集包括从多个视角拍摄的多样化图像和视频。下面,您将找到来自数据集的示例数据及其相应的注释:

数据集示例图像

  • 本图展示了样本内的对象分割,显示了带有掩码的标注边界框围绕识别对象。该数据集包含在多个位置、环境和密度下拍摄的各种图像,为制作特定任务模型提供了全面的资源。

  • 本例突显了数据集固有的多样性和复杂性,强调了高质量数据在计算机视觉任务中的关键作用,特别是在汽车部件分割领域。

引文和致谢

如果您将 Carparts Segmentation 数据集集成到研究或开发项目中,请参考以下论文:

 @misc{  car-seg-un1pm_dataset,
  title  =  { car-seg Dataset },
  type  =  { Open Source Dataset },
  author  =  { Gianmarco Russo },
  howpublished  =  { \url{ https://universe.roboflow.com/gianmarco-russo-vt9xr/car-seg-un1pm } },
  url  =  { https://universe.roboflow.com/gianmarco-russo-vt9xr/car-seg-un1pm },
  journal  =  { Roboflow Universe },
  publisher  =  { Roboflow },
  year  =  { 2023 },
  month  =  { nov },
  note  =  { visited on 2024-01-24 },
  } 

我们衷心感谢 Roboflow 团队在开发和管理 Carparts Segmentation 数据集方面的奉献,这是车辆维护和研究项目的宝贵资源。关于 Carparts Segmentation 数据集及其创建者的更多详细信息,请访问CarParts Segmentation Dataset Page

常见问题

Roboflow Carparts Segmentation Dataset 是什么?

Roboflow Carparts Segmentation Dataset是专为计算机视觉中汽车部件分割任务设计的精选图像和视频集合。该数据集包括从多个视角捕获的多样化视觉内容,是训练和测试汽车应用分割模型的宝贵资源。

我如何使用 Ultralytics YOLOv8 处理 Carparts Segmentation 数据集?

若要在 Carparts Segmentation 数据集上训练 YOLOv8 模型,您可以按照以下步骤进行:

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-seg.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="carparts-seg.yaml", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  segment  train  data=carparts-seg.yaml  model=yolov8n-seg.pt  epochs=100  imgsz=640 

欲了解更多详细信息,请参阅培训文档。

Carparts Segmentation 的一些应用是什么?

Carparts Segmentation 可以广泛应用于各个领域,如:- 汽车质量控制 - 汽车维修与保养 - 电子商务目录编制 - 交通监控 - 自动驾驶车辆 - 保险理赔处理 - 回收倡议 - 智能城市项目

这种分割有助于准确识别和分类不同的车辆部件,提升了这些行业的效率和自动化水平。

我在哪里可以找到 Carparts Segmentation 的数据集配置文件?

Carparts Segmentation 数据集的数据集配置文件carparts-seg.yaml可在以下位置找到:carparts-seg.yaml

为什么要使用 Carparts Segmentation 数据集?

汽车零件分割数据集提供了丰富的注释数据,是开发高精度汽车计算机视觉分割模型所必不可少的。该数据集的多样性和详细的注释提升了模型训练效果,使其在车辆维护自动化、增强车辆安全系统以及支持自动驾驶技术等应用中表现出色。与强大的数据集合作可以加速人工智能的发展,并确保模型的更佳性能。

获取更多详细信息,请访问汽车零件分割数据集页面

Roboflow Universe Package Segmentation Dataset

原文:docs.ultralytics.com/datasets/segment/package-seg/

RoboflowPackage Segmentation Dataset是专门为与计算机视觉中的包分割相关任务定制的图像精选集。此数据集旨在帮助从事与包识别、分类和处理相关项目的研究人员、开发人员和爱好者。

数据集包含多种环境中展示各种包裹的图像,作为训练和评估分割模型的宝贵资源。无论您从事物流、仓储自动化或需要精确包裹分析的任何应用,Package Segmentation 数据集都提供了一个有针对性和全面性的图像集,以增强计算机视觉算法的性能。

数据集结构

在包分割数据集中,数据的分布结构如下:

  • 训练集:包含 1920 张图像及其相应的注释。

  • 测试集:包含 89 张图像,每张图像都有相应的注释。

  • 验证集:包含 188 张图像,每张图像都有相应的注释。

应用场景

Package Segmentation Dataset 提供了包分割,对于优化物流、增强末端交付、改进制造质量控制以及促进智慧城市解决方案至关重要。从电子商务到安全应用,该数据集是关键资源,促进了多样化和高效的包裹分析应用的创新。

数据集 YAML

使用 YAML(另一种标记语言)文件来定义数据集配置。它包含有关数据集路径、类别和其他相关信息。对于 Package Segmentation 数据集,package-seg.yaml文件维护在github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/package-seg.yaml

ultralytics/cfg/datasets/package-seg.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 license
# Package-seg dataset by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/segment/package-seg/
# Example usage: yolo train data=package-seg.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── package-seg  ← downloads here (102 MB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path:  ../datasets/package-seg  # dataset root dir
train:  images/train  # train images (relative to 'path') 1920 images
val:  images/val  # val images (relative to 'path') 89 images
test:  test/images  # test images (relative to 'path') 188 images

# Classes
names:
  0:  package

# Download script/URL (optional)
download:  https://github.com/ultralytics/assets/releases/download/v0.0.0/package-seg.zip 

用途

要在 Package Segmentation 数据集上使用 Ultralytics YOLOv8n 模型进行 100 个 epoch 的训练,图像大小为 640,请使用以下代码片段。有关可用参数的详细列表,请参考模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-seg.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="package-seg.yaml", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  segment  train  data=package-seg.yaml  model=yolov8n-seg.pt  epochs=100  imgsz=640 

样本数据和注释

Package Segmentation 数据集包含从多个视角捕获的各种图像和视频。以下是数据集中的数据示例,附带其相应的注释:

数据集示例图像

  • 这幅图显示了图像对象检测的实例,展示了带有掩码的标注边界框,勾画了识别物体。数据集包含在不同位置、环境和密度下拍摄的多样化图像,是开发专门模型的全面资源。

  • 这个示例强调了 VisDrone 数据集中存在的多样性和复杂性,凸显了对涉及无人机的计算机视觉任务而言高质量传感器数据的重要性。

引用和感谢

如果您将裂缝分割数据集整合到您的研究或开发项目中,请引用以下论文:

@misc{  factory_package_dataset,
  title  =  { factory_package Dataset },
  type  =  { Open Source Dataset },
  author  =  { factorypackage },
  howpublished  =  { \url{ https://universe.roboflow.com/factorypackage/factory_package } },
  url  =  { https://universe.roboflow.com/factorypackage/factory_package },
  journal  =  { Roboflow Universe },
  publisher  =  { Roboflow },
  year  =  { 2024 },
  month  =  { jan },
  note  =  { visited on 2024-01-24 },
} 

我们要感谢 Roboflow 团队为创建和维护包分割数据集所做的努力。对于有关包分割数据集及其创建者的更多详细信息,请访问包分割数据集页面

常见问题解答

Roboflow 包分割数据集是什么,它如何帮助计算机视觉项目?

Roboflow 包分割数据集是一个精心策划的图像集合,专为涉及包裹分割任务而设计。它包含各种背景下的包裹图像,对于训练和评估分割模型非常宝贵。这个数据集特别适用于物流、仓库自动化以及任何需要精确包裹分析的项目。它有助于优化物流并增强视觉模型,以便准确识别和分类包裹。

如何在包分割数据集上训练 Ultralytics YOLOv8 模型?

您可以使用 Python 和 CLI 方法训练 Ultralytics YOLOv8n 模型。对于 Python,使用下面的代码片段:

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-seg.pt")  # load a pretrained model

# Train the model
results = model.train(data="package-seg.yaml", epochs=100, imgsz=640) 

对于 CLI:

# Start training from a pretrained *.pt model
yolo  segment  train  data=package-seg.yaml  model=yolov8n-seg.pt  epochs=100  imgsz=640 

有关更多详情,请参阅模型训练页面。

什么是包分割数据集的组成部分,以及它的结构是怎样的?

数据集分为三个主要部分:- 训练集:包含 1920 张带有注释的图像。- 测试集:包括 89 张带有相应注释的图像。- 验证集:包含 188 张带有注释的图像。

这种结构确保了一个平衡的数据集,用于彻底的模型训练、验证和测试,提升了分割算法的性能。

为什么应该使用 Ultralytics YOLOv8 与包分割数据集?

Ultralytics YOLOv8 提供了实时目标检测和分割任务的最先进准确性和速度。与 Package Segmentation Dataset 结合使用,可以充分利用 YOLOv8 的能力进行精确的包裹分割。这种组合特别适用于物流和仓库自动化等行业,准确的包裹识别对其至关重要。有关更多信息,请查阅我们关于 YOLOv8 分割 的页面。

如何访问和使用 package-seg.yaml 文件,用于 Package Segmentation Dataset?

package-seg.yaml 文件存放在 Ultralytics 的 GitHub 仓库中,包含有关数据集路径、类别和配置的重要信息。你可以从 这里 下载它。这个文件对于配置模型以有效利用数据集至关重要。

欲了解更多见解和实际示例,请查阅我们的 使用 部分。

姿势估计数据集概述

原文:docs.ultralytics.com/datasets/pose/

支持的数据集格式

Ultralytics YOLO 格式

用于训练 YOLO 姿势模型的数据集标签格式如下:

  1. 每个图像对应一个文本文件:数据集中的每个图像都有一个与图像文件同名且带有 ".txt" 扩展名的文本文件。

  2. 每个对象一行:文本文件中的每行对应图像中的一个对象实例。

  3. 每行包含有关对象实例的以下信息:

    • 对象类索引:表示对象类的整数(例如,人为 0,汽车为 1 等)。

    • 对象中心坐标:对象中心的 x 和 y 坐标,归一化到 0 到 1 之间。

    • 对象宽度和高度:对象的宽度和高度,归一化到 0 到 1 之间。

    • 对象关键点坐标:对象的关键点,归一化到 0 到 1 之间。

这是姿势估计任务标签格式的示例:

使用 Dim = 2 进行格式化

<class-index> <x> <y> <width> <height> <px1> <py1> <px2> <py2> ... <pxn> <pyn> 

使用 Dim = 3 进行格式化

<class-index> <x> <y> <width> <height> <px1> <py1> <p1-visibility> <px2> <py2> <p2-visibility> <pxn> <pyn> <p2-visibility> 

在此格式中,<class-index> 是对象类的索引,<x> <y> <width> <height> 是边界框的坐标,<px1> <py1> <px2> <py2> ... <pxn> <pyn> 是关键点的像素坐标。坐标之间用空格分隔。

数据集 YAML 格式

Ultralytics 框架使用 YAML 文件格式定义用于训练检测模型的数据集和模型配置。以下是用于定义检测数据集的 YAML 格式示例:

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path:  ../datasets/coco8-pose  # dataset root dir
train:  images/train  # train images (relative to 'path') 4 images
val:  images/val  # val images (relative to 'path') 4 images
test:  # test images (optional)

# Keypoints
kpt_shape:  [17,  3]  # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
flip_idx:  [0,  2,  1,  4,  3,  6,  5,  8,  7,  10,  9,  12,  11,  14,  13,  16,  15]

# Classes dictionary
names:
  0:  person 

trainval 字段指定了包含训练和验证图像的目录路径。

names 是一个类名字典。名称的顺序应与 YOLO 数据集文件中对象类索引的顺序相匹配。

(可选)如果点是对称的,则需要 flip_idx,例如人体或面部的左右侧。例如,如果我们假设面部标志的五个关键点为 [左眼、右眼、鼻子、左嘴、右嘴],原始索引为 [0, 1, 2, 3, 4],那么 flip_idx 就是 [1, 0, 2, 4, 3](仅交换左右索引,即 0-1 和 3-4,并保持其余像鼻子不变)。

用法

示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-pose.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco8-pose.yaml", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  pose  train  data=coco8-pose.yaml  model=yolov8n-pose.pt  epochs=100  imgsz=640 

支持的数据集

本节概述了与 Ultralytics YOLO 格式兼容且可用于训练姿势估计模型的数据集:

COCO-Pose

  • 描述:COCO-Pose 是一个大规模对象检测、分割和姿势估计数据集。它是流行的 COCO 数据集的子集,专注于人体姿势估计。COCO-Pose 包括每个人体实例的多个关键点。

  • 标签格式:与上述的 Ultralytics YOLO 格式相同,带有人体姿势的关键点。

  • 类别数量:1(人类)。

  • 关键点:包括鼻子、眼睛、耳朵、肩膀、肘部、手腕、臀部、膝盖和脚踝等 17 个关键点。

  • 用途:适用于训练人体姿势估计模型。

  • 附加说明:该数据集丰富多样,包含超过 20 万张标注图像。

  • 了解更多关于 COCO-Pose 的信息

COCO8-Pose

  • 描述Ultralytics COCO8-Pose 是一个小而多功能的姿态检测数据集,由 COCO 训练 2017 集的前 8 张图像组成,4 张用于训练,4 张用于验证。

  • 标签格式:与上述描述的 Ultralytics YOLO 格式相同,包含人类姿态的关键点。

  • 类别数量:1(人类)。

  • 关键点:17 个关键点,包括鼻子、眼睛、耳朵、肩膀、肘部、手腕、臀部、膝盖和脚踝。

  • 用法:适合测试和调试对象检测模型,或用于尝试新的检测方法。

  • 附加说明:COCO8-Pose 非常适合进行合理性检查和 CI 检查。

  • 了解更多关于 COCO8-Pose 的信息

Tiger-Pose

  • 描述Ultralytics 这个动物姿态数据集包含 263 张来自 YouTube 视频 的图像,其中 210 张用于训练,53 张用于验证。

  • 标签格式:与上述描述的 Ultralytics YOLO 格式相同,包含 12 个动物姿态的关键点,并且没有可见的维度。

  • 类别数量:1(老虎)。

  • 关键点:12 个关键点。

  • 用法:非常适合动物姿态或任何其他非人类的姿态。

  • 了解更多关于 Tiger-Pose 的信息

添加你自己的数据集

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

转换工具

Ultralytics 提供了一个方便的转换工具,可以将流行的 COCO 数据集格式的标签转换为 YOLO 格式:

示例

from ultralytics.data.converter import convert_coco

convert_coco(labels_dir="path/to/coco/annotations/", use_keypoints=True) 

该转换工具可用于将 COCO 数据集或任何 COCO 格式的数据集转换为 Ultralytics YOLO 格式。use_keypoints 参数指定是否在转换的标签中包含关键点(用于姿态估计)。

常见问题解答

Ultralytics YOLO 格式的姿态估计是什么?

Ultralytics YOLO 格式的姿态估计数据集涉及为每张图像标注一个相应的文本文件。文本文件的每一行存储有关对象实例的信息:

  • 对象类别索引

  • 对象中心坐标(归一化的 x 和 y)

  • 对象宽度和高度(归一化)

  • 对象关键点坐标(归一化的 pxn 和 pyn)

对于 2D 姿态,关键点包括像素坐标。对于 3D,每个关键点还具有可见性标志。有关更多详细信息,请参见 Ultralytics YOLO 格式。

我如何使用 COCO-Pose 数据集与 Ultralytics YOLO?

要在 Ultralytics YOLO 中使用 COCO-Pose 数据集:1. 下载数据集并准备 YOLO 格式的标签文件。2. 创建一个 YAML 配置文件,指定训练和验证图像的路径,关键点形状和类名。3. 使用配置文件进行训练:

```` ```py

For more information, visit [COCO-Pose](coco.md) and [train](../../modes/train.md) sections. 
```  欲了解更多信息,请访问 COCO-Pose 和训练部分。 ```py

如何在 Ultralytics YOLO 中添加自己的姿势估计数据集?

要添加你的数据集:1. 将你的标注转换为 Ultralytics YOLO 格式。2. 创建一个 YAML 配置文件,指定数据集路径、类别数量和类名。3. 使用配置文件训练你的模型:


For complete steps, check the [Adding your own dataset](#adding-your-own-dataset) section. 
```` ```py
path:  ../datasets/coco8-pose
train:  images/train
val:  images/val
names:
  0:  person 
```  完整步骤,请查看添加自己数据集部分。 ```py
from ultralytics.data.converter import convert_coco

convert_coco(labels_dir="path/to/coco/annotations/", use_keypoints=True) 

Ultralytics YOLO 中的数据集 YAML 文件的目的是什么?

Ultralytics YOLO 中的数据集 YAML 文件定义了训练的数据集和模型配置。它指定了训练、验证和测试图像的路径,关键点形状,类名以及其他配置选项。这种结构化格式有助于简化数据集管理和模型训练。以下是一个 YAML 格式的示例:

[PRE12]

更多关于创建数据集 YAML 配置文件的信息,请阅读 Dataset YAML 格式。

如何将 COCO 数据集标签转换为 Ultralytics YOLO 格式,用于姿势估计?

Ultralytics 提供一个转换工具,将 COCO 数据集标签转换为 YOLO 格式,包括关键点信息:

[PRE13]

此工具帮助无缝集成 COCO 数据集到 YOLO 项目中。详情请参考 Conversion Tool 部分。

COCO-Pose 数据集

原文:docs.ultralytics.com/datasets/pose/coco/

COCO-Pose 数据集是 COCO(通用物体上下文)数据集的专业版本,专门设计用于姿态估计任务。它利用 COCO Keypoints 2017 的图像和标签,能够训练像 YOLO 这样的模型进行姿态估计任务。

姿态样本图像

COCO-Pose 预训练模型

| 模型 | 尺寸 ^((像素)) | mAP^(姿态 50-95) | mAP^(姿态 50) | 速度 ^(CPU ONNX

(ms)) | 速度 ^(A100 TensorRT

(ms)) | 参数 ^((M)) | FLOPs ^((B)) |

--- --- --- --- --- --- --- ---
YOLOv8n-pose 640 50.4 80.1 131.8 1.18 3.3 9.2
YOLOv8s-pose 640 60.0 86.2 233.2 1.42 11.6 30.2
YOLOv8m-pose 640 65.0 88.8 456.3 2.00 26.4 81.0
YOLOv8l-pose 640 67.6 90.0 784.5 2.59 44.4 168.6
YOLOv8x-pose 640 69.2 90.2 1607.1 3.73 69.4 263.2
YOLOv8x-pose-p6 1280 71.6 91.2 4088.7 10.04 99.1 1066.4

主要特点

  • COCO-Pose 基于 COCO Keypoints 2017 数据集,该数据集包含 20 万张带有关键点标注的图像,用于姿态估计任务。

  • 数据集支持人体图像的 17 个关键点,便于详细的姿态估计。

  • 与 COCO 类似,它提供了标准化的评估指标,包括用于姿态估计任务的对象关键点相似性(OKS),适用于比较模型性能。

数据集结构

COCO-Pose 数据集分为三个子集:

  1. Train2017:此子集包含 COCO 数据集中的部分 11.8 万张图像,用于训练姿态估计模型的注释。

  2. Val2017:此子集包含用于在模型训练期间进行验证的图像的选择。

  3. Test2017:此子集包含用于测试和基准测试训练模型的图像。此子集的地面真实标注未公开,其结果将提交到COCO 评估服务器进行性能评估。

应用

COCO-Pose 数据集专门用于训练和评估深度学习模型在关键点检测和姿态估计任务中的表现,如 OpenPose。该数据集拥有大量带标注图像和标准化评估指标,是计算机视觉研究人员和从业者在姿态估计上的重要资源。

数据集 YAML

使用 YAML(Yet Another Markup Language)文件来定义数据集配置。它包含关于数据集路径、类别和其他相关信息。在 COCO-Pose 数据集的情况下,coco-pose.yaml文件维护在github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco-pose.yaml

ultralytics/cfg/datasets/coco-pose.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 license
# COCO 2017 dataset https://cocodataset.org by Microsoft
# Documentation: https://docs.ultralytics.com/datasets/pose/coco/
# Example usage: yolo train data=coco-pose.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco-pose  ← downloads here (20.1 GB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path:  ../datasets/coco-pose  # dataset root dir
train:  train2017.txt  # train images (relative to 'path') 118287 images
val:  val2017.txt  # val images (relative to 'path') 5000 images
test:  test-dev2017.txt  # 20288 of 40670 images, submit to https://competitions.codalab.org/competitions/20794

# Keypoints
kpt_shape:  [17,  3]  # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
flip_idx:  [0,  2,  1,  4,  3,  6,  5,  8,  7,  10,  9,  12,  11,  14,  13,  16,  15]

# Classes
names:
  0:  person

# Download script/URL (optional)
download:  |
  from ultralytics.utils.downloads import download
  from pathlib import Path

  # Download labels
  dir = Path(yaml['path'])  # dataset root dir
  url = 'https://github.com/ultralytics/assets/releases/download/v0.0.0/'
  urls = [url + 'coco2017labels-pose.zip']  # labels
  download(urls, dir=dir.parent)
  # Download data
  urls = ['http://images.cocodataset.org/zips/train2017.zip',  # 19G, 118k images
  'http://images.cocodataset.org/zips/val2017.zip',  # 1G, 5k images
  'http://images.cocodataset.org/zips/test2017.zip']  # 7G, 41k images (optional)
  download(urls, dir=dir / 'images', threads=3) 

用法

要在 COCO-Pose 数据集上训练 YOLOv8n-pose 模型,进行 100 个 epochs 并设置图像大小为 640,您可以使用以下代码片段。要获取可用参数的全面列表,请参阅模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-pose.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco-pose.yaml", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  pose  train  data=coco-pose.yaml  model=yolov8n-pose.pt  epochs=100  imgsz=640 

样本图像和注释

COCO-Pose 数据集包含一组多样的图像,其中的人物用关键点进行注释。以下是数据集中一些图像的示例及其相应的注释:

数据集示例图像

  • 马赛克图像:这幅图展示了由马赛克数据集图像组成的训练批次。在训练过程中,马赛克是一种技术,将多个图像合并成单个图像,以增加每个训练批次中对象和场景的多样性。这有助于提高模型对不同对象大小、长宽比和背景环境的泛化能力。

该示例展示了 COCO-Pose 数据集中图像的多样性和复杂性,以及在训练过程中使用马赛克的好处。

引用和致谢

如果您在研究或开发工作中使用 COCO-Pose 数据集,请引用以下论文:

@misc{lin2015microsoft,
  title={Microsoft COCO: Common Objects in Context},
  author={Tsung-Yi Lin and Michael Maire and Serge Belongie and Lubomir Bourdev and Ross Girshick and James Hays and Pietro Perona and Deva Ramanan and C. Lawrence Zitnick and Piotr Dollár},
  year={2015},
  eprint={1405.0312},
  archivePrefix={arXiv},
  primaryClass={cs.CV}
} 

我们要感谢 COCO 联盟为计算机视觉社区创建和维护这一宝贵资源。有关 COCO-Pose 数据集及其创建者的更多信息,请访问COCO 数据集网站

常见问题解答

COCO-Pose 数据集是什么,如何与 Ultralytics YOLO 用于姿态估计?

COCO-Pose 数据集是专门用于姿态估计任务的 COCO(通用物体上下文)数据集的一个特殊版本。它基于 COCO Keypoints 2017 图像和注释,允许像 Ultralytics YOLO 这样的模型进行详细的姿态估计训练。例如,您可以使用 COCO-Pose 数据集通过加载预训练模型并使用 YAML 配置来训练 YOLOv8n-pose 模型。有关训练示例,请参阅训练文档。

如何在 COCO-Pose 数据集上训练 YOLOv8 模型?

使用 Python 或 CLI 命令可以在 COCO-Pose 数据集上训练 YOLOv8 模型。例如,要在图像大小为 640 的情况下训练 100 个 epochs 的 YOLOv8n-pose 模型,可以按照以下步骤进行:

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-pose.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco-pose.yaml", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  pose  train  data=coco-pose.yaml  model=yolov8n-pose.pt  epochs=100  imgsz=640 

欲了解更多关于训练过程和可用参数的详细信息,请查看训练页面。

COCO-Pose 数据集提供了哪些用于评估模型性能的不同指标?

COCO-Pose 数据集为姿态估计任务提供了几个标准化评估指标,类似于原始的 COCO 数据集。关键指标包括对象关键点相似性(OKS),评估预测关键点与地面实况注释的准确性。这些指标允许对不同模型进行彻底的性能比较。例如,COCO-Pose 预训练模型如 YOLOv8n-pose、YOLOv8s-pose 等在文档中列出了特定的性能指标,如 mAP^(pose)50-95 和 mAP^(pose)50。

COCO-Pose 数据集的结构和拆分如何?

COCO-Pose 数据集分为三个子集:

  1. Train2017: 包含 118K COCO 图像的一部分,用于训练姿态估计模型的注释。

  2. Val2017: 用于模型训练过程中验证目的的选定图像。

  3. Test2017: 用于测试和基准测试训练模型的图像。此子集的地面实况注释不公开;结果将提交至COCO 评估服务器进行性能评估。

这些子集有助于有效组织培训、验证和测试阶段。有关配置详细信息,请查看 GitHub 上的coco-pose.yaml文件,网址为GitHub

COCO-Pose 数据集的关键特性和应用是什么?

COCO-Pose 数据集将 COCO Keypoints 2017 注释扩展到包括人物图像的 17 个关键点,实现了详细的姿态估计。标准化评估指标(例如 OKS)有助于跨不同模型进行比较。COCO-Pose 数据集的应用涵盖各种领域,如体育分析、医疗保健和人机交互,无论何处需要对人物图像进行详细的姿态估计。对于实际应用,利用文档中提供的预训练模型(例如 YOLOv8n-pose)可以显著简化流程(关键特性)。

如果您在研究或开发工作中使用 COCO-Pose 数据集,请引用以下 BibTeX 条目中的论文。

COCO8-Pose 数据集

原文:docs.ultralytics.com/datasets/pose/coco8-pose/

简介

Ultralytics COCO8-Pose 是一个小型而多用途的姿态检测数据集,由 COCO 训练集 2017 年的前 8 张图像组成,其中 4 张用于训练,4 张用于验证。这个数据集非常适合测试和调试对象检测模型,或者尝试新的检测方法。只有 8 张图像,管理起来非常方便,同时又足够多样化,可以在训练更大数据集之前进行错误测试和健全性检查。

此数据集适用于 Ultralytics 的HUBYOLOv8

数据集 YAML

一个 YAML(另一种标记语言)文件用于定义数据集配置。它包含关于数据集路径、类别和其他相关信息的信息。在 COCO8-Pose 数据集的情况下,coco8-pose.yaml 文件维护在github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml

ultralytics/cfg/datasets/coco8-pose.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 license
# COCO8-pose dataset (first 8 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/pose/coco8-pose/
# Example usage: yolo train data=coco8-pose.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco8-pose  ← downloads here (1 MB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path:  ../datasets/coco8-pose  # dataset root dir
train:  images/train  # train images (relative to 'path') 4 images
val:  images/val  # val images (relative to 'path') 4 images
test:  # test images (optional)

# Keypoints
kpt_shape:  [17,  3]  # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
flip_idx:  [0,  2,  1,  4,  3,  6,  5,  8,  7,  10,  9,  12,  11,  14,  13,  16,  15]

# Classes
names:
  0:  person

# Download script/URL (optional)
download:  https://github.com/ultralytics/assets/releases/download/v0.0.0/coco8-pose.zip 

使用

要在 COCO8-Pose 数据集上用图像大小为 640 训练 YOLOv8n-pose 模型 100 个 epochs,您可以使用以下代码片段。有关可用参数的全面列表,请参阅模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-pose.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco8-pose.yaml", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  pose  train  data=coco8-pose.yaml  model=yolov8n-pose.pt  epochs=100  imgsz=640 

样本图像和注释

这里有一些 COCO8-Pose 数据集中的图像示例,以及它们对应的注释:

数据集示例图像

  • 马赛克图像:这张图片展示了一个由马赛克数据集图像组成的训练批次。马赛克是一种训练期间使用的技术,将多个图像合并成单个图像,以增加每个训练批次中对象和场景的多样性。这有助于改善模型对不同对象大小、长宽比和上下文的泛化能力。

此示例展示了 COCO8-Pose 数据集中图像的多样性和复杂性,以及在训练过程中使用马赛克的好处。

引用和致谢

如果您在研究或开发工作中使用 COCO 数据集,请引用以下论文:

@misc{lin2015microsoft,
  title={Microsoft COCO: Common Objects in Context},
  author={Tsung-Yi Lin and Michael Maire and Serge Belongie and Lubomir Bourdev and Ross Girshick and James Hays and Pietro Perona and Deva Ramanan and C. Lawrence Zitnick and Piotr Dollár},
  year={2015},
  eprint={1405.0312},
  archivePrefix={arXiv},
  primaryClass={cs.CV}
} 

我们要感谢 COCO 联盟为计算机视觉社区创建和维护这一宝贵资源。有关 COCO 数据集及其创建者的更多信息,请访问COCO 数据集网站

常见问题解答

COCO8-Pose 数据集是什么,以及它如何与 Ultralytics YOLOv8 一起使用?

COCO8-Pose 数据集是一个小型、多用途的姿势检测数据集,包括来自 COCO 2017 训练集的前 8 张图像,其中有 4 张用于训练,4 张用于验证。它设计用于测试和调试物体检测模型以及尝试新的检测方法。这个数据集非常适合使用Ultralytics YOLOv8进行快速实验。有关数据集配置的详细信息,请查看此处的数据集 YAML 文件链接

如何在 Ultralytics 中使用 COCO8-Pose 数据集训练 YOLOv8 模型?

要在 COCO8-Pose 数据集上使用 640 大小的图像训练 YOLOv8n-pose 模型 100 个 epochs,请参考以下示例:

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-pose.pt")

# Train the model
results = model.train(data="coco8-pose.yaml", epochs=100, imgsz=640) 
yolo  pose  train  data=coco8-pose.yaml  model=yolov8n-pose.pt  epochs=100  imgsz=640 

欲了解更多训练参数的详细列表,请参阅模型训练页面。

使用 COCO8-Pose 数据集的好处是什么?

COCO8-Pose 数据集提供了几个优点:

  • 紧凑尺寸:仅有 8 张图像,易于管理,非常适合进行快速实验。

  • 多样数据:尽管尺寸小,但包含多种场景,非常适合进行全面的管道测试。

  • 错误调试:适用于识别训练错误并在扩展到更大数据集之前执行合理性检查。

欲了解更多关于其特性和用法,请参阅数据集介绍部分。

如何通过使用 COCO8-Pose 数据集进行 mosaicing 来改善 YOLOv8 训练过程?

Mosaicing 在 COCO8-Pose 数据集的样本图像中展示,将多个图像合并成一个,增加了每个训练批次中的对象和场景的多样性。这种技术有助于提高模型对各种对象大小、长宽比和背景环境的泛化能力,最终提升模型性能。请参阅样本图像和注释部分查看示例图像。

欲查找 COCO8-Pose 数据集的 YAML 文件及其使用方法,请访问何处?

COCO8-Pose 数据集的 YAML 文件可在此处找到链接。该文件定义了数据集配置,包括路径、类别和其他相关信息。按照训练示例部分所述,与 YOLOv8 训练脚本一起使用此文件。

欲了解更多常见问题解答和详细文档,请访问Ultralytics 文档

虎式姿势数据集

原文:docs.ultralytics.com/datasets/pose/tiger-pose/

简介

Ultralytics介绍了虎式姿势数据集,这是一个专为姿势估计任务设计的多功能集合。该数据集包括从YouTube 视频中获取的 263 张图像,其中 210 张用于训练,53 张用于验证。它是测试和故障排除姿势估计算法的优秀资源。

尽管只有 210 张图像,但虎式姿势数据集具有多样性,适合评估训练流水线,识别潜在错误,并作为在与更大数据集进行姿势估计之前的宝贵初步步骤。

此数据集适用于Ultralytics HUBYOLOv8

www.youtube.com/embed/Gc6K5eKrTNQ

观看: 在 Ultralytics HUB 上使用 Tiger-Pose 数据集训练 YOLOv8 姿势模型

数据集 YAML 文件

YAML(另一种标记语言)文件用作指定数据集配置细节的手段。它包含关键数据,如文件路径、类定义和其他相关信息。具体而言,对于tiger-pose.yaml文件,您可以查看Ultralytics Tiger-Pose 数据集配置文件

ultralytics/cfg/datasets/tiger-pose.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 license
# Tiger Pose dataset by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/pose/tiger-pose/
# Example usage: yolo train data=tiger-pose.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── tiger-pose  ← downloads here (75.3 MB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path:  ../datasets/tiger-pose  # dataset root dir
train:  train  # train images (relative to 'path') 210 images
val:  val  # val images (relative to 'path') 53 images

# Keypoints
kpt_shape:  [12,  2]  # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
flip_idx:  [0,  1,  2,  3,  4,  5,  6,  7,  8,  9,  10,  11]

# Classes
names:
  0:  tiger

# Download script/URL (optional)
download:  https://github.com/ultralytics/assets/releases/download/v0.0.0/tiger-pose.zip 

用法

要在图像大小为 640 的情况下,在 Tiger-Pose 数据集上使用以下代码片段训练 100 个 epoch 的 YOLOv8n-pose 模型,您可以参考模型训练页面以获取可用参数的全面列表。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-pose.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="tiger-pose.yaml", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  task=pose  mode=train  data=tiger-pose.yaml  model=yolov8n-pose.pt  epochs=100  imgsz=640 

样本图像和注释

下面是虎式姿势数据集的一些图像示例,以及它们的相应注释:

数据集示例图像

  • 马赛克图像:这张图展示了由马赛克数据集图像组成的训练批次。马赛克是一种在训练过程中使用的技术,将多个图像合并成单个图像,以增加每个训练批次中的对象和场景的多样性。这有助于提高模型对不同对象大小、长宽比和背景环境的泛化能力。

该示例展示了虎式姿势数据集图像的多样性和复杂性,以及在训练过程中使用马赛克的好处。

推理示例

推理示例

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/best.pt")  # load a tiger-pose trained model

# Run inference
results = model.predict(source="https://youtu.be/MIBAT6BGE6U", show=True) 
# Run inference using a tiger-pose trained model
yolo  task=pose  mode=predict  source="https://youtu.be/MIBAT6BGE6U"  show=True  model="path/to/best.pt" 

引用和致谢

该数据集已根据AGPL-3.0 许可证发布。

常见问题解答

超轻量级 Tiger-Pose 数据集用途是什么?

Ultralytics Tiger-Pose 数据集专为姿势估计任务设计,包括来自YouTube 视频的 263 张图像。该数据集分为 210 张训练图像和 53 张验证图像。它特别适用于使用Ultralytics HUBYOLOv8测试、训练和优化姿势估计算法。

如何在 Tiger-Pose 数据集上训练 YOLOv8 模型?

要在 Tiger-Pose 数据集上使用 640 像素大小训练 100 个 epochs 的 YOLOv8n-pose 模型,请使用以下代码片段。有关详细信息,请访问训练页面:

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-pose.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="tiger-pose.yaml", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  task=pose  mode=train  data=tiger-pose.yaml  model=yolov8n-pose.pt  epochs=100  imgsz=640 

tiger-pose.yaml文件包含哪些配置?

tiger-pose.yaml文件用于指定 Tiger-Pose 数据集的配置详细信息,包括文件路径和类别定义。要查看确切的配置,请参阅Ultralytics Tiger-Pose Dataset Configuration File

如何使用经过 Tiger-Pose 数据集训练的 YOLOv8 模型进行推断?

使用经过 Tiger-Pose 数据集训练的 YOLOv8 模型进行推断时,您可以使用以下代码片段。有关详细指南,请访问预测页面:

推断示例

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/best.pt")  # load a tiger-pose trained model

# Run inference
results = model.predict(source="https://youtu.be/MIBAT6BGE6U", show=True) 
# Run inference using a tiger-pose trained model
yolo  task=pose  mode=predict  source="https://youtu.be/MIBAT6BGE6U"  show=True  model="path/to/best.pt" 

使用 Tiger-Pose 数据集进行姿势估计的好处是什么?

尽管 Tiger-Pose 数据集的训练图像只有 210 张,但它提供了多样化的图像集合,非常适合测试姿势估计流水线。该数据集有助于识别潜在错误,并作为处理更大数据集之前的初步步骤。此外,该数据集支持使用高级工具如Ultralytics HUBYOLOv8训练和优化姿势估计算法,从而提高模型性能和准确性。

图像分类数据集概述

原文:docs.ultralytics.com/datasets/classify/

YOLO 分类任务的数据集结构

对于Ultralytics YOLO 分类任务,数据集必须按照特定的分割目录结构组织在root目录下,以便于正确的训练、测试和可选的验证过程。该结构包括训练(train)和测试(test)阶段各自的单独目录,以及一个可选的验证(val)目录。

每个目录应包含该数据集中每个类别的一个子目录。子目录以相应的类别命名,并包含该类别的所有图像。确保每个图像文件具有唯一的名称,并以 JPEG 或 PNG 等通用格式存储。

文件夹结构示例

以 CIFAR-10 数据集为例。文件夹结构应如下所示:

cifar-10-/
|
|-- train/
|   |-- airplane/
|   |   |-- 10008_airplane.png
|   |   |-- 10009_airplane.png
|   |   |-- ...
|   |
|   |-- automobile/
|   |   |-- 1000_automobile.png
|   |   |-- 1001_automobile.png
|   |   |-- ...
|   |
|   |-- bird/
|   |   |-- 10014_bird.png
|   |   |-- 10015_bird.png
|   |   |-- ...
|   |
|   |-- ...
|
|-- test/
|   |-- airplane/
|   |   |-- 10_airplane.png
|   |   |-- 11_airplane.png
|   |   |-- ...
|   |
|   |-- automobile/
|   |   |-- 100_automobile.png
|   |   |-- 101_automobile.png
|   |   |-- ...
|   |
|   |-- bird/
|   |   |-- 1000_bird.png
|   |   |-- 1001_bird.png
|   |   |-- ...
|   |
|   |-- ...
|
|-- val/ (optional)
|   |-- airplane/
|   |   |-- 105_airplane.png
|   |   |-- 106_airplane.png
|   |   |-- ...
|   |
|   |-- automobile/
|   |   |-- 102_automobile.png
|   |   |-- 103_automobile.png
|   |   |-- ...
|   |
|   |-- bird/
|   |   |-- 1045_bird.png
|   |   |-- 1046_bird.png
|   |   |-- ...
|   |
|   |-- ... 

这种结构化方法确保模型在训练阶段能够有效地从组织良好的课程中学习,并在测试和验证阶段准确评估性能。

使用方法

示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="path/to/dataset", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  detect  train  data=path/to/data  model=yolov8n-cls.pt  epochs=100  imgsz=640 

支持的数据集

Ultralytics 支持以下数据集的自动下载:

  • Caltech 101:一个包含 101 个物体类别图像的数据集,用于图像分类任务。

  • Caltech 256:Caltech 101 的扩展版本,包含 256 个物体类别和更具挑战性的图像。

  • CIFAR-10:一个包含 60,000 张 32x32 彩色图像的数据集,分为 10 类,每类包含 6,000 张图像。

  • CIFAR-100:CIFAR-10 的扩展版本,包含 100 个物体类别和每类 600 张图像。

  • Fashion-MNIST:一个包含 70,000 张 10 种时尚类别灰度图像的数据集,用于图像分类任务。

  • ImageNet:一个大规模的用于目标检测和图像分类的数据集,包含超过 1400 万张图片和 2 万个类别。

  • ImageNet-10:ImageNet 的一个较小子集,包含 10 个类别,用于更快的实验和测试。

  • Imagenette:ImageNet 的一个较小子集,包含 10 个易于区分的类别,用于更快的训练和测试。

  • Imagewoof:ImageNet 的一个更具挑战性的子集,包含 10 个狗品种类别,用于图像分类任务。

  • MNIST:一个包含 70,000 张手写数字灰度图像的数据集,用于图像分类任务。

添加自己的数据集

如果您有自己的数据集,并希望将其用于训练 Ultralytics 的分类模型,请确保其遵循上述“数据集格式”中指定的格式,然后将您的data参数指向数据集目录。

常见问题解答

我如何为 YOLO 分类任务结构化我的数据集?

欲为 Ultralytics YOLO 分类任务结构化您的数据集,应遵循特定的分割目录格式。将您的数据集组织成单独的traintest和可选的val目录。每个目录应包含以各类别命名的子目录,其中包含相应的图像。这有助于流畅的训练和评估过程。例如,考虑 CIFAR-10 数据集的格式:

cifar-10-/
|-- train/
|   |-- airplane/
|   |-- automobile/
|   |-- bird/
|   ...
|-- test/
|   |-- airplane/
|   |-- automobile/
|   |-- bird/
|   ...
|-- val/ (optional)
|   |-- airplane/
|   |-- automobile/
|   |-- bird/
|   ... 

欲了解更多详细信息,请访问 YOLO 分类任务的数据集结构。

Ultralytics YOLO 支持哪些用于图像分类的数据集?

Ultralytics YOLO 支持自动下载多个用于图像分类的数据集,包括:

  • Caltech 101

  • Caltech 256

  • CIFAR-10

  • CIFAR-100

  • Fashion-MNIST

  • ImageNet

  • ImageNet-10

  • Imagenette

  • Imagewoof

  • MNIST

这些数据集结构化有序,易于与 YOLO 配合使用。每个数据集页面提供有关其结构和应用的详细信息。

如何为 YOLO 图像分类添加自己的数据集?

欲将您自己的数据集用于 Ultralytics YOLO,请确保其遵循分类任务所需的指定目录格式,其中包括单独的traintest和可选的val目录,以及每个类别包含相应图像的子目录。一旦您的数据集正确结构化,请在初始化训练脚本时将data参数指向您的数据集根目录。以下是 Python 示例:

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="path/to/your/dataset", epochs=100, imgsz=640) 

欲了解更多详细信息,请参阅添加自己的数据集部分。

我为什么要使用 Ultralytics YOLO 进行图像分类?

Ultralytics YOLO 为图像分类提供多种好处,包括:

  • 预训练模型:加载预训练模型如yolov8n-cls.pt可加快您的训练过程。

  • 易用性:简单的 API 和 CLI 命令用于训练和评估。

  • 高性能:领先的准确性和速度,非常适合实时应用。

  • 多数据集支持:与诸如 CIFAR-10、ImageNet 等多种流行数据集无缝集成。

  • 社区和支持:可访问广泛的文档和活跃的社区进行故障排除和改进。

欲获取更多洞见及实际应用,您可以探索Ultralytics YOLO

如何使用 Ultralytics YOLO 训练模型?

使用 Ultralytics YOLO 训练模型可轻松在 Python 和 CLI 中完成。以下是一个示例:

示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model

# Train the model
results = model.train(data="path/to/dataset", epochs=100, imgsz=640) 
# Start training from a pretrained *.pt model
yolo  detect  train  data=path/to/data  model=yolov8n-cls.pt  epochs=100  imgsz=640 

这些示例展示了使用任一方法训练 YOLO 模型的简单过程。欲了解更多信息,请访问使用部分。

Caltech-101 数据集

原文:docs.ultralytics.com/datasets/classify/caltech101/

Caltech-101数据集是广泛用于对象识别任务的数据集,包含大约 9,000 张来自 101 个对象类别的图像。选择这些类别是为了反映各种真实世界的物体,图像本身经过精心选择和注释,提供了一个具有挑战性的对象识别算法基准。

关键特点

  • Caltech-101 数据集包含大约 9,000 张彩色图像,分为 101 个类别。

  • 这些类别涵盖了各种物体,包括动物、车辆、家居用品和人类。

  • 每个类别的图像数量不同,每个类别大约有 40 到 800 张图像。

  • 图像大小各异,大多数图像为中等分辨率。

  • Caltech-101 在机器学习领域广泛用于训练和测试,特别是用于对象识别任务。

数据集结构

不同于许多其他数据集,Caltech-101 数据集并未正式分为训练集和测试集。用户通常根据自己的需求创建自己的数据集拆分。然而,常见的做法是使用一部分随机图像进行训练(例如每个类别 30 张图像),其余的图像用于测试。

应用

Caltech-101 数据集广泛用于训练和评估深度学习模型在对象识别任务中的表现,例如卷积神经网络(CNNs)、支持向量机(SVMs)和其他各种机器学习算法。其多样的类别和高质量的图像使其成为机器学习和计算机视觉领域研究和开发的优秀数据集。

使用方法

要在 Caltech-101 数据集上训练一个 YOLO 模型进行 100 个 epochs,可以使用以下代码片段。要获取可用参数的详细列表,请参考模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="caltech101", epochs=100, imgsz=416) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=caltech101  model=yolov8n-cls.pt  epochs=100  imgsz=416 

样本图像和注释

Caltech-101 数据集包含各种对象的高质量彩色图像,为对象识别任务提供了结构良好的数据集。以下是数据集中的一些图像示例:

数据集示例图像

此示例展示了 Caltech-101 数据集中对象的多样性和复杂性,强调了对训练鲁棒的对象识别模型而言多样化数据集的重要性。

引用和致谢

如果您在研究或开发工作中使用 Caltech-101 数据集,请引用以下论文:

@article{fei2007learning,
  title={Learning generative visual models from few training examples: An incremental Bayesian approach tested on 101 object categories},
  author={Fei-Fei, Li and Fergus, Rob and Perona, Pietro},
  journal={Computer vision and Image understanding},
  volume={106},
  number={1},
  pages={59--70},
  year={2007},
  publisher={Elsevier}
} 

我们要感谢李飞飞、Rob Fergus 和 Pietro Perona 创建并维护 Caltech-101 数据集,作为机器学习和计算机视觉研究社区的宝贵资源。有关 Caltech-101 数据集及其创建者的更多信息,请访问Caltech-101 数据集网站

常见问题

Caltech-101 数据集在机器学习中用于什么目的?

Caltech-101 数据集在物体识别任务中被广泛应用于机器学习。它包含约 9,000 张跨越 101 个类别的图像,为评估物体识别算法提供了一个具有挑战性的基准。研究人员利用它来训练和测试模型,尤其是卷积神经网络(CNNs)和支持向量机(SVMs)在计算机视觉中的应用。

我如何在 Caltech-101 数据集上训练 Ultralytics YOLO 模型?

要在 Caltech-101 数据集上训练 Ultralytics YOLO 模型,您可以使用提供的代码片段。例如,为了进行 100 轮的训练:

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="caltech101", epochs=100, imgsz=416) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=caltech101  model=yolov8n-cls.pt  epochs=100  imgsz=416 

获取更详细的论证和选项,请参考模型训练页面。

Caltech-101 数据集的关键特征是什么?

Caltech-101 数据集包括: - 约 9,000 张跨越 101 个类别的彩色图像。 - 包含动物、车辆和家居物品等各种对象的类别。 - 每个类别的图像数量不定,通常在 40 到 800 之间。 - 变化的图像尺寸,大多数为中等分辨率。

这些特征使其成为机器学习和计算机视觉中训练和评估物体识别模型的优秀选择。

为什么我应该在我的研究中引用 Caltech-101 数据集?

引用 Caltech-101 数据集在您的研究中承认了创作者的贡献,并为可能使用该数据集的其他人提供了参考文献。推荐的引用格式如下:

@article{fei2007learning,
  title={Learning generative visual models from few training examples: An incremental Bayesian approach tested on 101 object categories},
  author={Fei-Fei, Li and Fergus, Rob and Perona, Pietro},
  journal={Computer vision and Image understanding},
  volume={106},
  number={1},
  pages={59--70},
  year={2007},
  publisher={Elsevier}
} 

引用有助于维护学术作品的完整性,并帮助同行找到原始资源。

我可以使用 Ultralytics HUB 来训练 Caltech-101 数据集的模型吗?

是的,您可以使用 Ultralytics HUB 来训练 Caltech-101 数据集的模型。Ultralytics HUB 提供了一个直观的平台,用于管理数据集、训练模型并无需复杂的编码即可部署它们。详细指南请参阅 如何使用 Ultralytics HUB 训练自定义模型 博客文章。

Caltech-256 数据集

原文:docs.ultralytics.com/datasets/classify/caltech256/

Caltech-256 数据集是一组广泛的图像集合,用于目标分类任务。它包含大约 30,000 张图像,分为 257 个类别(256 个对象类别和 1 个背景类别)。这些图像经过精心筛选和注释,提供了一个具有挑战性和多样性的基准,用于测试目标识别算法。

www.youtube.com/embed/isc06_9qnM0

观看: 如何使用 Caltech-256 数据集和 Ultralytics HUB 训练图像分类模型

关键特性

  • Caltech-256 数据集包含大约 30,000 张彩色图像,分为 257 个类别。

  • 每个类别至少包含 80 张图像。

  • 这些类别涵盖了各种真实世界的对象,包括动物、车辆、家庭物品和人物。

  • 图像具有可变大小和分辨率。

  • Caltech-256 在机器学习领域,特别是在目标识别任务中被广泛用于训练和测试。

数据集结构

与 Caltech-101 类似,Caltech-256 数据集没有正式的训练集和测试集分割。用户通常根据自己的特定需求创建自己的数据集分割。常见的做法是使用随机子集图像进行训练,剩余图像用于测试。

应用场景

Caltech-256 数据集被广泛用于训练和评估深度学习模型,例如卷积神经网络(CNNs)、支持向量机(SVMs)以及各种其他机器学习算法,在目标识别任务中。其多样化的类别集合和高质量的图像使其成为机器学习和计算机视觉领域研究与开发中不可或缺的数据集。

使用方法

要在 Caltech-256 数据集上为 YOLO 模型训练 100 个 epoch,您可以使用以下代码片段。有关可用参数的全面列表,请参阅模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="caltech256", epochs=100, imgsz=416) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=caltech256  model=yolov8n-cls.pt  epochs=100  imgsz=416 

样本图像和注释

Caltech-256 数据集包含各种对象的高质量彩色图像,为目标识别任务提供了全面的数据集。这里是来自数据集的一些示例图像(来源):

数据集示例图像

这个例子展示了 Caltech-256 数据集中对象的多样性和复杂性,强调了用于训练鲁棒目标识别模型的多样化数据集的重要性。

引文和致谢

如果您在研究或开发工作中使用 Caltech-256 数据集,请引用以下论文:

@article{griffin2007caltech,
  title={Caltech-256 object category dataset},
  author={Griffin, Gregory and Holub, Alex and Perona, Pietro},
  year={2007}
} 

我们要感谢 Gregory Griffin、Alex Holub 和 Pietro Perona 创建和维护 Caltech-256 数据集,作为机器学习和计算机视觉研究社区的宝贵资源。有关更多信息,请访问

有关 Caltech-256 数据集及其创建者的详细信息,请访问Caltech-256 数据集网站

常见问题

Caltech-256 数据集是什么,为什么对机器学习如此重要?

Caltech-256数据集是一个大型图像数据集,主要用于机器学习和计算机视觉中的目标分类任务。它包含约 30,000 张彩色图像,分为 257 个类别,涵盖了广泛的现实世界物体。数据集中多样且高质量的图像使其成为评估物体识别算法的优秀基准,这对于开发健壮的机器学习模型至关重要。

如何使用 Python 或 CLI 在 Caltech-256 数据集上训练 YOLO 模型?

要在 Caltech-256 数据集上为 YOLO 模型训练 100 个时期,您可以使用以下代码片段。有关其他选项,请参考模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model

# Train the model
results = model.train(data="caltech256", epochs=100, imgsz=416) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=caltech256  model=yolov8n-cls.pt  epochs=100  imgsz=416 

Caltech-256 数据集最常见的用例是什么?

Caltech-256 数据集被广泛用于各种物体识别任务,例如:

  • 训练卷积神经网络(CNNs)

  • 评估支持向量机(SVMs)的性能

  • 新深度学习算法的基准测试

  • 使用 Ultralytics YOLO 等框架开发目标检测模型

其多样性和全面的注释使其成为机器学习和计算机视觉研究与开发的理想选择。

Caltech-256 数据集的结构和训练测试拆分是如何设计的?

Caltech-256 数据集没有预定义的训练和测试集拆分。用户通常根据自己的特定需求创建自己的拆分。常见的方法是随机选择一部分图像进行训练,剩余的图像用于测试。这种灵活性允许用户根据项目具体要求和实验设置来定制数据集。

为什么应该使用 Ultralytics YOLO 来训练 Caltech-256 数据集上的模型?

Ultralytics YOLO 模型在 Caltech-256 数据集上训练提供了几个优势:

  • 高准确性:YOLO 模型以其在物体检测任务中的领先性能而闻名。

  • 速度:它们提供实时推断能力,适用于需要快速预测的应用。

  • 易用性:通过 Ultralytics HUB,用户可以在不需要大量编码的情况下进行模型的训练、验证和部署。

  • 预训练模型:从像yolov8n-cls.pt这样的预训练模型开始,可以显著缩短训练时间并提高模型准确性。

欲了解更多详情,请浏览我们全面的培训指南。

CIFAR-10 数据集

原文:docs.ultralytics.com/datasets/classify/cifar10/

CIFAR-10(加拿大高级研究所)数据集是广泛用于机器学习和计算机视觉算法的图像集合。由 CIFAR 研究所的研究人员开发,包含了 10 个不同类别的 32x32 彩色图像共 60,000 张。

www.youtube.com/embed/fLBbyhPbWzY

观看: 如何使用 Ultralytics YOLOv8 训练 CIFAR-10 数据集的图像分类模型

关键特性

  • CIFAR-10 数据集包含 60,000 张图像,分为 10 个类别。

  • 每个类别包含 6,000 张图像,分为 5,000 张用于训练和 1,000 张用于测试。

  • 图像为彩色,尺寸为 32x32 像素。

  • 这 10 个不同的类别分别代表飞机、汽车、鸟类、猫、鹿、狗、青蛙、马、船和卡车。

  • CIFAR-10 在机器学习和计算机视觉领域常用于训练和测试。

数据集结构

CIFAR-10 数据集分为两个子集:

  1. 训练集: 这个子集包含用于训练机器学习模型的 50,000 张图像。

  2. 测试集: 这个子集包含用于测试和评估训练模型的 10,000 张图像。

应用

CIFAR-10 数据集广泛用于训练和评估深度学习模型在图像分类任务中的表现,例如卷积神经网络(CNNs)、支持向量机(SVMs)以及其他各种机器学习算法。数据集的类别多样性和彩色图像的存在使其成为机器学习和计算机视觉领域研究和开发的理想数据集。

使用情况

若要在 CIFAR-10 数据集上用 YOLO 模型进行 100 个 epoch 的训练,图像尺寸为 32x32,可以使用以下代码片段。有关可用参数的详细列表,请参阅模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="cifar10", epochs=100, imgsz=32) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=cifar10  model=yolov8n-cls.pt  epochs=100  imgsz=32 

样本图像和注释

CIFAR-10 数据集包含各种对象的彩色图像,为图像分类任务提供了结构良好的数据集。以下是数据集中的一些图像示例:

数据集示例图像

本示例展示了 CIFAR-10 数据集中对象的多样性和复杂性,突显了多样化数据集在训练鲁棒图像分类模型中的重要性。

引用和致谢

如果你在研究或开发工作中使用 CIFAR-10 数据集,请引用以下论文:

@TECHREPORT{Krizhevsky09learningmultiple,
  author={Alex Krizhevsky},
  title={Learning multiple layers of features from tiny images},
  institution={},
  year={2009}
} 

我们要感谢 Alex Krizhevsky 创建并维护 CIFAR-10 数据集,作为机器学习和计算机视觉研究社区的宝贵资源。有关 CIFAR-10 数据集及其创建者的更多信息,请访问CIFAR-10 数据集网站

常见问题解答

如何在 CIFAR-10 数据集上训练 YOLO 模型?

要在 CIFAR-10 数据集上使用 Ultralytics 训练 YOLO 模型,可以按照 Python 和 CLI 提供的示例进行操作。以下是一个基本示例,用 32x32 像素的图像大小训练您的模型 100 个 epochs:

示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="cifar10", epochs=100, imgsz=32) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=cifar10  model=yolov8n-cls.pt  epochs=100  imgsz=32 

如需更多详细信息,请参阅模型训练页面。

CIFAR-10 数据集的主要特点是什么?

CIFAR-10 数据集包含 60,000 张彩色图像,分为 10 类。每个类别包含 6,000 张图像,其中 5,000 张用于训练,1,000 张用于测试。图像大小为 32x32 像素,并跨以下类别变化:

  • 飞机

  • 汽车

  • 鸟类

  • 鹿

  • 青蛙

  • 马匹

  • 卡车

这个多样化的数据集对于训练机器学习和计算机视觉领域的图像分类模型至关重要。有关更多信息,请访问 CIFAR-10 数据集结构和应用部分。

为什么在图像分类任务中使用 CIFAR-10 数据集?

CIFAR-10 数据集因其多样性和结构而成为图像分类的优秀基准。它包含 60,000 张标记图像,涵盖 10 个不同的类别,有助于训练健壮且泛化能力强的模型。它广泛用于评估深度学习模型,包括卷积神经网络(CNNs)和其他机器学习算法。数据集相对较小,适合快速实验和算法开发。在应用部分探索其众多应用。

CIFAR-10 数据集的结构是如何的?

CIFAR-10 数据集分为两个主要子集:

  1. 训练集:包含 50,000 张用于训练机器学习模型的图像。

  2. 测试集:包含 10,000 张图像,用于测试和评估训练模型。

每个子集包含分类为 10 个类别的图像,并提供其注释以便用于模型训练和评估。有关更详细的信息,请参阅数据集结构部分。

如何在我的研究中引用 CIFAR-10 数据集?

如果您在研究或开发项目中使用 CIFAR-10 数据集,请确保引用以下论文:

@TECHREPORT{Krizhevsky09learningmultiple,
  author={Alex Krizhevsky},
  title={Learning multiple layers of features from tiny images},
  institution={},
  year={2009}
} 

表彰数据集的创作者有助于支持该领域的持续研究和发展。有关更多详细信息,请参阅引用和致谢部分。

如何使用 CIFAR-10 数据集的一些实际示例?

CIFAR-10 数据集通常用于训练图像分类模型,如卷积神经网络(CNNs)和支持向量机(SVMs)。这些模型可用于各种计算机视觉任务,包括目标检测、图像识别和自动标记。要查看一些实际示例,请检查使用部分的代码片段。

CIFAR-100 数据集

原文:docs.ultralytics.com/datasets/classify/cifar100/

CIFAR-100(加拿大先进研究所)数据集是 CIFAR-10 数据集的重要扩展,由 100 个不同类别的 60,000 张 32x32 彩色图像组成。该数据集由 CIFAR 研究所的研究人员开发,为更复杂的机器学习和计算机视觉任务提供了更具挑战性的数据集。

主要特性

  • CIFAR-100 数据集包含 60,000 张图像,分为 100 类。

  • 每个类别包含 600 张图像,分为 500 张用于训练和 100 张用于测试。

  • 这些图像为彩色,大小为 32x32 像素。

  • 100 个不同的类别被分为 20 个粗略类别,用于高级别分类。

  • CIFAR-100 在机器学习和计算机视觉领域广泛用于训练和测试。

数据集结构

CIFAR-100 数据集被分为两个子集:

  1. 训练集:这一子集包含 50,000 张用于训练机器学习模型的图像。

  2. 测试集:这一子集包含 10,000 张用于测试和评估训练模型的图像。

应用场景

CIFAR-100 数据集广泛应用于深度学习模型的训练和评估,用于图像分类任务,如卷积神经网络(CNNs)、支持向量机(SVMs)以及其他各种机器学习算法。数据集在类别和颜色图像的多样性方面使其成为机器学习和计算机视觉领域研究与开发的更具挑战性和全面性的数据集。

使用方法

若要在 CIFAR-100 数据集上训练 YOLO 模型,进行 100 个 epoch 的训练,图像大小为 32x32,您可以使用以下代码片段。有关可用参数的全面列表,请参考模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="cifar100", epochs=100, imgsz=32) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=cifar100  model=yolov8n-cls.pt  epochs=100  imgsz=32 

样本图像与标注

CIFAR-100 数据集包含各种对象的彩色图像,为图像分类任务提供了一个结构良好的数据集。以下是数据集中一些图像的示例:

数据集示例图像

该示例展示了 CIFAR-100 数据集中物体的多样性和复杂性,突显了多样化数据集对训练健壮图像分类模型的重要性。

引用和致谢

如果您在研究或开发工作中使用 CIFAR-100 数据集,请引用以下论文:

@TECHREPORT{Krizhevsky09learningmultiple,
  author={Alex Krizhevsky},
  title={Learning multiple layers of features from tiny images},
  institution={},
  year={2009}
} 

我们要感谢 Alex Krizhevsky 创建和维护 CIFAR-100 数据集,作为机器学习和计算机视觉研究社区的宝贵资源。更多关于 CIFAR-100 数据集及其创建者的信息,请访问 CIFAR-100 数据集网站

常见问题解答

CIFAR-100 数据集是什么,为什么如此重要?

CIFAR-100 数据集是一组由 100 个类别分类的 60,000 张 32x32 彩色图像的大型集合。由加拿大高级研究所(CIFAR)开发,为复杂的机器学习和计算机视觉任务提供了具有挑战性的数据集。其重要性在于类别的多样性和图像的小尺寸,使其成为使用框架如 Ultralytics YOLO 训练和测试深度学习模型(如卷积神经网络 CNNs)的宝贵资源。

如何在 CIFAR-100 数据集上训练 YOLO 模型?

你可以使用 Python 或 CLI 命令在 CIFAR-100 数据集上训练 YOLO 模型。以下是详细步骤:

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="cifar100", epochs=100, imgsz=32) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=cifar100  model=yolov8n-cls.pt  epochs=100  imgsz=32 

欲了解所有可用参数的全面列表,请参阅模型训练页面。

CIFAR-100 数据集的主要应用是什么?

CIFAR-100 数据集广泛用于训练和评估用于图像分类的深度学习模型。其包含的 100 个类别分为 20 个粗略类别,为测试卷积神经网络(CNNs)、支持向量机(SVMs)和各种其他机器学习方法的算法提供了具有挑战性的环境。该数据集是机器学习和计算机视觉领域研究与开发的关键资源。

CIFAR-100 数据集的结构是怎样的?

CIFAR-100 数据集分为两个主要子集:

  1. 训练集:包含 50,000 张用于训练机器学习模型的图像。

  2. 测试集:包含 10,000 张用于测试和基准测试训练模型的图像。

每个 100 个类别包含 600 张图片,其中 500 张用于训练,100 张用于测试,这使其非常适合进行严格的学术和工业研究。

我在哪里可以找到 CIFAR-100 数据集的示例图像和注释?

CIFAR-100 数据集包含各种物体的彩色图像,适合进行图像分类任务的结构化数据集。您可以查看文档页面以查看示例图像和注释。这些示例突显了数据集的多样性和复杂性,这对训练强大的图像分类模型至关重要。

Fashion-MNIST 数据集

原文:docs.ultralytics.com/datasets/classify/fashion-mnist/

Fashion-MNIST数据集是 Zalando 服装图片的数据库,包括 60,000 个训练示例和 10,000 个测试示例。每个示例都是一个 28x28 的灰度图像,并与 10 个类别中的一个标签相关联。Fashion-MNIST 旨在作为原始 MNIST 数据集的直接替代,用于评估机器学习算法的基准。

www.youtube.com/embed/eX5ad6udQ9Q

观看:如何使用 Ultralytics YOLOv8 对时尚 MNIST 数据集进行图像分类

主要特点

  • Fashion-MNIST 包含 60,000 张 Zalando 服装图片的训练图像和 10,000 张测试图像。

  • 数据集包括大小为 28x28 像素的灰度图像。

  • 每个像素都有一个与之关联的单个像素值,表示该像素的亮度或暗度,数值越高表示越暗。这个像素值是介于 0 和 255 之间的整数。

  • Fashion-MNIST 广泛用于机器学习领域的训练和测试,特别是用于图像分类任务。

数据集结构

Fashion-MNIST 数据集分为两个子集:

  1. 训练集:这个子集包含用于训练机器学习模型的 60,000 张图像。

  2. 测试集:这个子集包含用于测试和基准测试训练模型的 10,000 张图像。

标签

每个训练和测试样本都被分配给以下标签之一:

  1. T 恤/上衣

  2. 裤子

  3. 毛衣

  4. 连衣裙

  5. 外套

  6. 凉鞋

  7. 衬衫

  8. 运动鞋

  9. 短靴

应用

Fashion-MNIST 数据集广泛用于训练和评估深度学习模型在图像分类任务中的表现,如卷积神经网络(CNNs)、支持向量机(SVMs)和各种其他机器学习算法。数据集的简单和结构良好的格式使其成为机器学习和计算机视觉领域研究人员和从业者的重要资源。

使用

要在 Fashion-MNIST 数据集上使用 28x28 的图像大小对 CNN 模型进行 100 个 epoch 的训练,您可以使用以下代码片段。有关可用参数的详细列表,请参阅模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="fashion-mnist", epochs=100, imgsz=28) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=fashion-mnist  model=yolov8n-cls.pt  epochs=100  imgsz=28 

样本图像和注释

Fashion-MNIST 数据集包含 Zalando 服装图片的灰度图像,为图像分类任务提供了一个结构良好的数据集。以下是数据集中的一些图像示例:

数据集样本图像

此示例展示了 Fashion-MNIST 数据集中图像的多样性和复杂性,突显了多样化数据集对训练强大的图像分类模型的重要性。

致谢

如果您在研究或开发工作中使用时尚-MNIST 数据集,请通过链接到GitHub 仓库来承认该数据集。这个数据集由 Zalando Research 提供。

FAQ

时尚-MNIST 数据集是什么,与 MNIST 有何不同?

时尚-MNIST数据集是 Zalando 的文章图片的集合,共有 70,000 张灰度图像,旨在作为原始 MNIST 数据集的现代替代品。它用于机器学习模型在图像分类任务中的基准测试。与手写数字的 MNIST 不同,Fashion-MNIST 包含了 28x28 像素的图像,分为 10 个与时尚相关的类别,例如 T 恤/上衣、裤子和短靴。

我如何在时尚-MNIST 数据集上训练 YOLO 模型?

要在时尚-MNIST 数据集上训练 Ultralytics YOLO 模型,您可以使用 Python 和 CLI 命令。以下是一个快速示例,帮助您入门:

训练示例

from ultralytics import YOLO

# Load a pretrained model
model = YOLO("yolov8n-cls.pt")

# Train the model on Fashion-MNIST
results = model.train(data="fashion-mnist", epochs=100, imgsz=28) 
yolo  classify  train  data=fashion-mnist  model=yolov8n-cls.pt  epochs=100  imgsz=28 

要了解更详细的训练参数,请参考训练页面。

我为什么应该使用时尚-MNIST 数据集来评估我的机器学习模型的基准性能?

时尚-MNIST数据集被深度学习社区广泛认可为 MNIST 的强大替代品。它提供了更复杂和多样化的图像集,是评估图像分类模型性能的绝佳选择。数据集由 60,000 个训练图像和 10,000 个测试图像组成,每个图像都标有 10 个类别之一,适合在更具挑战性的环境中评估不同机器学习算法的性能。

我可以使用 Ultralytics YOLO 进行像时尚-MNIST 这样的图像分类任务吗?

是的,Ultralytics YOLO 模型可用于包括时尚-MNIST 数据集在内的图像分类任务。例如,YOLOv8 支持各种视觉任务,如检测、分割和分类。要开始进行图像分类任务,请参考分类页面

时尚-MNIST 数据集的关键特性和结构是什么?

时尚-MNIST 数据集分为两个主要子集:60,000 个训练图像和 10,000 个测试图像。每个图像都是一个 28x28 像素的灰度图片,代表 10 个与时尚相关的类别之一。其简单和良好结构的格式使其非常适合在机器学习和计算机视觉任务中训练和评估模型。有关数据集结构的更多详细信息,请参阅数据集结构部分。

我如何在我的研究中承认使用时尚-MNIST 数据集?

如果你在研究或开发项目中使用 Fashion-MNIST 数据集,重要的是通过链接到 GitHub 代码库 来承认它。这有助于将数据归属于 Zalando Research,他们将该数据集公开供使用。

ImageNet 数据集

原文:docs.ultralytics.com/datasets/classify/imagenet/

ImageNet是一个大规模的带注释图像数据库,专为视觉对象识别研究而设计。它包含超过 1400 万张图像,每张图像都使用 WordNet 同义词集进行注释,使其成为在计算机视觉任务中训练深度学习模型的最广泛资源之一。

ImageNet 预训练模型

| 模型 | 尺寸 ^((像素)) | 精度 ^(top1) | 精度 ^(top5) | 速度 ^(CPU ONNX

(ms)) | 速度 ^(A100 TensorRT

(ms)) | 参数 ^((M)) | FLOPs ^((B) at 640) |

--- --- --- --- --- --- --- ---
YOLOv8n-cls 224 69.0 88.3 12.9 0.31 2.7 4.3
YOLOv8s-cls 224 73.8 91.7 23.4 0.35 6.4 13.5
YOLOv8m-cls 224 76.8 93.5 85.4 0.62 17.0 42.7
YOLOv8l-cls 224 76.8 93.5 163.0 0.87 37.5 99.7
YOLOv8x-cls 224 79.0 94.6 232.0 1.01 57.4 154.8

主要特点

  • ImageNet 包含超过 1400 万高分辨率图像,涵盖数千个对象类别。

  • 数据集按照 WordNet 层次结构进行组织,每个 synset 代表一个类别。

  • ImageNet 在计算机视觉领域广泛用于训练和基准测试,特别是用于图像分类和目标检测任务。

  • 每年的 ImageNet 大规模视觉识别挑战(ILSVRC)对推动计算机视觉研究起到了重要作用。

数据集结构

ImageNet 数据集使用 WordNet 层次结构进行组织。层次结构中的每个节点表示一个类别,每个类别由一个同义词集描述(synset)。ImageNet 中的图像带有一个或多个 synset 注释,为训练模型识别各种对象及其关系提供了丰富的资源。

ImageNet 大规模视觉识别挑战(ILSVRC)

每年的ImageNet 大规模视觉识别挑战(ILSVRC)在计算机视觉领域是一个重要事件。它为研究人员和开发人员提供了一个平台,可以在大规模数据集上使用标准化评估指标评估其算法和模型。ILSVRC 推动了深度学习模型在图像分类、目标检测和其他计算机视觉任务中的显著进展。

应用

ImageNet 数据集广泛用于训练和评估各种计算机视觉任务中的深度学习模型,如图像分类、对象检测和对象定位。一些流行的深度学习架构,如 AlexNet、VGG 和 ResNet,是使用 ImageNet 数据集开发和基准测试的。

用法

要在 ImageNet 数据集上使用图像尺寸为 224x224 的图像进行 100 个 epoch 的深度学习模型训练,您可以使用以下代码片段。有关可用参数的全面列表,请参阅模型训练页面。

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="imagenet", epochs=100, imgsz=224) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=imagenet  model=yolov8n-cls.pt  epochs=100  imgsz=224 

样例图像和注释

ImageNet 数据集包含数千种对象类别的高分辨率图像,为训练和评估计算机视觉模型提供了多样化和广泛的数据集。以下是数据集中的一些图像示例:

数据集样本图像

此示例展示了 ImageNet 数据集中图像的多样性和复杂性,突显了多样化数据集对训练健壮的计算机视觉模型的重要性。

引用和致谢

如果您在研究或开发工作中使用 ImageNet 数据集,请引用以下论文:

@article{ILSVRC15,
  author  =  {Olga Russakovsky and Jia Deng and Hao Su and Jonathan Krause and Sanjeev Satheesh and Sean Ma and Zhiheng Huang and Andrej Karpathy and Aditya Khosla and Michael Bernstein and Alexander C. Berg and Li Fei-Fei},
  title={ImageNet Large Scale Visual Recognition Challenge},
  year={2015},
  journal={International Journal of Computer Vision (IJCV)},
  volume={115},
  number={3},
  pages={211-252}
} 

我们要感谢由 Olga Russakovsky、Jia Deng 和 Li Fei-Fei 领导的 ImageNet 团队,他们创建并维护了 ImageNet 数据集,作为机器学习和计算机视觉研究社区的宝贵资源。有关 ImageNet 数据集及其创建者的更多信息,请访问 ImageNet 网站

常见问题解答

ImageNet 数据集是什么,如何在计算机视觉中使用?

ImageNet 数据集是一个大规模数据库,包含超过 1400 万张高分辨率图像,使用 WordNet 同义词集进行分类。它广泛用于视觉对象识别研究,包括图像分类和对象检测。该数据集的注释和数量之多为深度学习模型的训练提供了丰富的资源。特别地,像 AlexNet、VGG 和 ResNet 这样的模型已经使用 ImageNet 进行了训练和基准测试,展示了它在推动计算机视觉中的作用。

如何在 ImageNet 数据集上使用预训练的 YOLO 模型进行图像分类?

要在 ImageNet 数据集上使用预训练的 Ultralytics YOLO 模型进行图像分类,请按照以下步骤操作:

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="imagenet", epochs=100, imgsz=224) 
# Start training from a pretrained *.pt model
yolo  classify  train  data=imagenet  model=yolov8n-cls.pt  epochs=100  imgsz=224 

欲了解更详细的训练说明,请参阅我们的训练页面。

为什么我应该在我的 ImageNet 数据集项目中使用 Ultralytics YOLOv8 预训练模型?

Ultralytics YOLOv8 预训练模型在速度和准确性方面表现出色,适用于各种计算机视觉任务。例如,YOLOv8n-cls 模型的 top-1 准确率达到 69.0%,top-5 准确率为 88.3%,针对实时应用进行了优化。预训练模型减少了从头开始训练所需的计算资源,并加速了开发周期。了解更多关于 YOLOv8 模型在 ImageNet 预训练模型部分的性能指标。

图像网(ImageNet)数据集的结构是怎样的,以及它为何如此重要?

图像网数据集使用 WordNet 层次结构组织,层次结构中的每个节点表示由 synset(一组同义词术语)描述的类别。这种结构允许详细的注释,使其非常适合训练模型识别各种物体。图像网的多样性和注释丰富性使其成为开发健壮和通用深度学习模型的宝贵数据集。有关该组织的更多信息,请参阅数据集结构部分。

图像网大规模视觉识别挑战赛(ILSVRC)在计算机视觉中扮演着什么角色?

每年一度的图像网大规模视觉识别挑战赛(ILSVRC)通过提供一个大规模、标准化的数据集上的竞争平台,对评估算法起着关键作用,推动了计算机视觉的进步。它提供了标准化的评估指标,促进了图像分类、目标检测和图像分割等领域的创新和发展。这一挑战不断推动深度学习和计算机视觉技术的发展边界。

posted @ 2024-08-08 13:58  绝不原创的飞龙  阅读(11)  评论(0编辑  收藏  举报