Набор данных COCO8#
Введение#
Датасет Ultralytics COCO8 — это компактный, но мощный датасет для обнаружения объектов, состоящий из первых 8 изображений из набора данных COCO train 2017: 4 для обучения и 4 для валидации. Этот датасет специально разработан для быстрого тестирования, отладки и экспериментов с моделями и обучающими конвейерами YOLO. Его малый размер делает его очень удобным в управлении, а разнообразие гарантирует, что он служит эффективной проверкой работоспособности перед масштабированием до более крупных датасетов.
Watch: Ultralytics COCO Dataset Overview
Структура набора данных#
COCO8 включает первые 8 изображений из набора данных COCO train 2017 — 4 для обучения и 4 для валидации, охватывающих весь набор из 80 классов объектов COCO в формате меток YOLO:
coco8/
├── images/
│ ├── train/ # 4 images
│ └── val/ # 4 images
└── labels/
├── train/
└── val/Изучи COCO8 на платформе Ultralytics Platform, чтобы просмотреть каждое изображение с наложениями аннотаций, увидеть распределение классов и тепловые карты ограничивающих рамок на вкладке Charts, а также клонировать его для обучения собственной модели в облаке.
YAML набора данных#
Конфигурация датасета COCO8 определяется в YAML-файле, который задает пути к датасету, имена классов и другие важные метаданные. Ты можешь посмотреть официальный файл coco8.yaml в репозитории Ultralytics GitHub.
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# COCO8 dataset (first 8 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/coco8
# Example usage: yolo train data=coco8.yaml
# parent
# ├── ultralytics
# └── datasets
# └── coco8 ← 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: coco8 # 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)
# Classes
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
# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/coco8.zipИспользование#
Датасет COCO8 (1 МБ) загружается автоматически при первом запуске обучения. Чтобы обучить модель YOLO26n на COCO8 в течение 100 эпох с размером изображения 640, используй следующие примеры. Полный список параметров обучения см. в документации по обучению YOLO.
from ultralytics import YOLO
# Load a pretrained YOLO26n model
model = YOLO("yolo26n.pt")
# Train the model on COCO8
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)Примеры изображений и аннотации#
Ниже приведен пример мозаичного обучающего пакета из набора данных COCO8:
- Мозаичное изображение: На этом изображении показан обучающий пакет, в котором несколько изображений набора данных объединены с помощью мозаичной аугментации. Мозаичная аугментация увеличивает разнообразие объектов и сцен в каждом пакете, помогая модели лучше обобщать данные для различных размеров объектов, соотношений сторон и фонов.
Этот метод особенно полезен для небольших наборов данных, таких как COCO8, так как он максимизирует ценность каждого изображения во время обучения.
Цитирование и благодарности#
Если ты используешь набор данных 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 за их постоянный вклад в сообщество компьютерного зрения.
FAQ#
Датасет Ultralytics COCO8 разработан для быстрого тестирования и отладки моделей обнаружения объектов. Имея всего 8 изображений (4 для обучения, 4 для валидации), он идеально подходит для проверки твоих конвейеров обучения YOLO и обеспечения того, что все работает должным образом перед переходом к более крупным датасетам. Изучи YAML-конфигурацию COCO8 для получения дополнительной информации.
Ты можешь обучить модель YOLO26 на COCO8, используя Python или CLI:
Пример обученияfrom ultralytics import YOLO # Load a pretrained YOLO26n model model = YOLO("yolo26n.pt") # Train the model on COCO8 results = model.train(data="coco8.yaml", epochs=100, imgsz=640)Дополнительные параметры обучения см. в документации по обучению YOLO.
Аугментация Mosaic, используемая при обучении COCO8, объединяет несколько изображений в одно во время каждого батча. Это увеличивает разнообразие объектов и фонов, помогая твоей модели YOLO лучше обобщать новые сценарии. Аугментация Mosaic особенно ценна для небольших датасетов, так как она максимизирует информацию, доступную на каждом шаге обучения. Подробнее об этом см. в руководстве по обучению.
Чтобы проверить твою модель YOLO26 после обучения на COCO8, используй команды валидации модели в Python или CLI. Это оценивает производительность твоей модели с использованием стандартных метрик. Пошаговые инструкции см. в документации по валидации YOLO.