COCO8-Мультиспектральный набор данных
Введение
Сайт Ultralytics Набор данных COCO8-Multispectral - это усовершенствованный вариант оригинального набора данных COCO8, созданный для облегчения экспериментов с многоспектральными моделями обнаружения объектов. Он состоит из тех же 8 изображений из набора COCO train 2017 - 4 для обучения и 4 для проверки - но каждое изображение преобразовано в 10-канальный мультиспектральный формат. Выходя за рамки стандартных каналов RGB, COCO8-Multispectral позволяет разрабатывать и оценивать модели, которые могут использовать более богатую спектральную информацию.
COCO8-Multispectral полностью совместим с Ultralytics HUB и YOLO11что обеспечивает беспрепятственную интеграцию в рабочие процессы компьютерного зрения.
Формирование набора данных
Мультиспектральные изображения в COCO8-Multispectral были созданы путем интерполяции исходных RGB-изображений по 10 равномерно распределенным спектральным каналам в видимом диапазоне. Процесс включает в себя:
- Назначение длины волны: Назначение номинальных длин волн для каналов RGB - красный: 650 нм, зеленый: 510 нм, синий: 475 нм.
- Интерполяция: С помощью линейной интерполяции оцениваются значения пикселей на промежуточных длинах волн между 450 нм и 700 нм, в результате чего получается 10 спектральных каналов.
- Экстраполяция: Применение экстраполяции с помощью SciPy's
interp1d
функция для оценки значений за пределами исходных длин волн RGB, обеспечивая полное спектральное представление.
Этот подход имитирует процесс получения многоспектральных изображений, обеспечивая более разнообразный набор данных для обучения и оценки моделей. Дополнительные сведения о многоспектральной съемке см. в статье Википедии "Многоспектральная съемка".
Набор данных YAML
Набор данных COCO8-Multispectral настраивается с помощью файла YAML, в котором определяются пути к набору данных, имена классов и основные метаданные. Вы можете ознакомиться с официальным coco8-multispectral.yaml
файл в Ultralytics Репозиторий GitHub.
ultralytics.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# COCO8-Multispectral dataset (COCO8 images interpolated across 10 channels in the visual spectrum) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/coco8-multispectral/
# Example usage: yolo train data=coco8-multispectral.yaml
# parent
# ├── ultralytics
# └── datasets
# └── coco8-multispectral ← downloads here (20.2 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-multispectral # 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)
# Number of multispectral image channels
channels: 10
# 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-multispectral.zip
Примечание
Подготовьте изображения в формате TIFF в (channel, height, width)
заказать и сохранить с .tiff
или .tif
Расширение для использования с Ultralytics:
import cv2
import numpy as np
# Create and write 10-channel TIFF
image = np.ones((10, 640, 640), dtype=np.uint8) # CHW-order
cv2.imwritemulti("example.tiff", image)
# Read TIFF
success, frames_list = cv2.imreadmulti("example.tiff")
image = np.stack(frames_list, axis=2)
print(image.shape) # (640, 640, 10) HWC-order for training and inference
Использование
Чтобы обучить модель YOLO11n на наборе данных COCO8-Multispectral в течение 100 эпох при размере изображения 640, используйте следующие примеры. Полный список вариантов обучения см. в документации по обучениюYOLO .
Пример поезда
from ultralytics import YOLO
# Load a pretrained YOLO11n model
model = YOLO("yolo11n.pt")
# Train the model on COCO8-Multispectral
results = model.train(data="coco8-multispectral.yaml", epochs=100, imgsz=640)
# Train YOLO11n on COCO8-Multispectral using the command line
yolo detect train data=coco8-multispectral.yaml model=yolo11n.pt epochs=100 imgsz=640
Для получения более подробной информации о выборе модели и лучших практиках изучите документацию по моделиUltralytics YOLO и руководство "Советы по обучению моделиYOLO ".
Образцы изображений и аннотаций
Ниже приведен пример мозаичной обучающей партии из набора данных COCO8-Multispectral:
- Мозаичное изображение: Это изображение демонстрирует обучающую партию, в которой несколько изображений из набора данных объединены с помощью мозаичного наращивания. Мозаичное наращивание увеличивает разнообразие объектов и сцен в каждой партии, помогая модели лучше обобщать различные размеры объектов, соотношение сторон и фоны.
Эта техника особенно ценна для таких небольших наборов данных, как COCO8-Multispectral, поскольку позволяет максимально использовать каждое изображение в процессе обучения.
Цитаты и благодарности
Если вы используете набор данных 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 за их постоянный вклад в сообщество компьютерного зрения.
ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ
Для чего используется набор мультиспектральных данных Ultralytics COCO8-Multispectral?
Набор данных Ultralytics COCO8-Multispectral предназначен для быстрого тестирования и отладки многоспектральных моделей обнаружения объектов. В нем всего 8 изображений (4 для обучения, 4 для проверки), что идеально подходит для проверки ваших YOLO и убедиться, что все работает так, как ожидалось, перед масштабированием на большие наборы данных. Чтобы получить больше наборов данных для экспериментов, посетите каталог наборов данныхUltralytics .
Как многоспектральные данные улучшают обнаружение объектов?
Многоспектральные данные предоставляют дополнительную спектральную информацию помимо стандартной RGB, позволяя моделям различать объекты на основе тонких различий в отражательной способности по длинам волн. Это позволяет повысить точность обнаружения, особенно в сложных сценариях. Узнайте больше о мультиспектральной съемке и ее применении в передовом компьютерном зрении.
Совместим ли COCO8-Multispectral с моделями Ultralytics HUB и YOLO ?
Да, COCO8-Multispectral полностью совместим с Ultralytics HUB и всеми моделямиYOLO , включая последнюю YOLO11. Это позволяет легко интегрировать набор данных в рабочие процессы обучения и проверки.
Где можно найти дополнительную информацию о методах расширения данных?
Для более глубокого понимания методов расширения данных, таких как мозаика, и их влияния на производительность модели, обратитесь к руководству по расширению данныхYOLO и блогуUltralytics о расширении данных.
Можно ли использовать COCO8-Multispectral для сравнительного анализа или в образовательных целях?
Конечно! Небольшой размер и многоспектральный характер COCO8-Multispectral делают его идеальным для бенчмаркинга, образовательных демонстраций и создания прототипов новых архитектур моделей. Другие наборы данных для бенчмаркинга можно найти в коллекции эталонных данныхUltralytics .