Conjunto de Dados COCO8-Multiespectral
Introdução
O dataset Ultralytics COCO8-Multispectral é uma variante avançada do dataset COCO8 original, projetada para facilitar a experimentação com modelos de detecção de objetos multiespectrais. Ele consiste nas mesmas 8 imagens do conjunto de treino COCO 2017—4 para treino e 4 para validação—mas com cada imagem transformada em um formato multiespectral de 10 canais. Ao expandir além dos canais RGB padrão, o COCO8-Multispectral permite o desenvolvimento e a avaliação de modelos que podem aproveitar informações espectrais mais ricas.
O COCO8-Multiespectral é totalmente compatível com o Ultralytics HUB e o YOLO11, garantindo uma integração perfeita em seus fluxos de trabalho de visão computacional.
Geração de Conjunto de Dados
As imagens multiespectrais em COCO8-Multispectral foram criadas interpolando as imagens RGB originais em 10 canais espectrais uniformemente espaçados dentro do espectro visível. O processo inclui:
- Atribuição de Comprimento de Onda: Atribuição de comprimentos de onda nominais aos canais RGB—Vermelho: 650 nm, Verde: 510 nm, Azul: 475 nm.
- Interpolação: Usando interpolação linear para estimar valores de pixel em comprimentos de onda intermediários entre 450 nm e 700 nm, resultando em 10 canais espectrais.
- Extrapolação: Aplicando extrapolação com o
interp1d
função para estimar valores além dos comprimentos de onda RGB originais, garantindo uma representação espectral completa.
Esta abordagem simula um processo de imagem multiespectral, fornecendo um conjunto mais diversificado de dados para treinamento e avaliação do modelo. Para mais informações sobre imagem multiespectral, consulte o artigo da Wikipedia sobre Imagem Multiespectral.
YAML do Conjunto de Dados
O conjunto de dados COCO8-Multispectral é configurado usando um arquivo YAML, que define os caminhos do conjunto de dados, nomes de classes e metadados essenciais. Você pode revisar o oficial coco8-multispectral.yaml
arquivo no repositório Ultralytics GitHub.
ultralytics/cfg/datasets/coco8-multispectral.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: 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
Nota
Prepare suas imagens TIFF em (channel, height, width)
ordem e salvo com .tiff
ou .tif
extensão para uso com 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
Utilização
Para treinar um modelo YOLO11n no conjunto de dados COCO8-Multispectral por 100 épocas com um tamanho de imagem de 640, use os exemplos a seguir. Para obter uma lista abrangente de opções de treino, consulte a documentação de Treino YOLO.
Exemplo de Treinamento
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
Para mais detalhes sobre a seleção de modelos e as melhores práticas, explore a documentação do modelo YOLO da Ultralytics e o guia de dicas de treinamento do modelo YOLO.
Amostras de Imagens e Anotações
Abaixo está um exemplo de um lote de treino em mosaico do conjunto de dados COCO8-Multispectral:
- Imagem em Mosaico: Esta imagem demonstra um lote de treinamento onde várias imagens do conjunto de dados são combinadas usando aumento de mosaico. O aumento de mosaico aumenta a diversidade de objetos e cenas em cada lote, ajudando o modelo a generalizar melhor para vários tamanhos de objetos, proporções e planos de fundo.
Esta técnica é especialmente valiosa para pequenos conjuntos de dados como o COCO8-Multispectral, pois maximiza a utilidade de cada imagem durante o treinamento.
Citações e Agradecimentos
Se você usar o conjunto de dados COCO em sua pesquisa ou desenvolvimento, cite o seguinte artigo:
@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}
}
Um agradecimento especial ao Consórcio COCO pelas suas contribuições contínuas para a comunidade de visão computacional.
FAQ
Para que serve o conjunto de dados multiespectral COCO8 da Ultralytics?
O conjunto de dados COCO8-Multispectral da Ultralytics foi projetado para testes rápidos e depuração de modelos de detecção de objetos multiespectrais. Com apenas 8 imagens (4 para treinamento, 4 para validação), é ideal para verificar seus pipelines de treinamento YOLO e garantir que tudo funcione como esperado antes de escalar para conjuntos de dados maiores. Para mais conjuntos de dados para experimentar, visite o Catálogo de Conjuntos de Dados Ultralytics.
Como os dados multiespectrais melhoram a detecção de objetos?
Os dados multiespectrais fornecem informações espectrais adicionais além do RGB padrão, permitindo que os modelos distingam objetos com base em diferenças sutis na refletância em diferentes comprimentos de onda. Isso pode aumentar a precisão da detecção, especialmente em cenários desafiadores. Saiba mais sobre imagens multiespectrais e suas aplicações em visão computacional avançada.
O COCO8-Multispectral é compatível com o Ultralytics HUB e os modelos YOLO?
Sim, o COCO8-Multispectral é totalmente compatível com o Ultralytics HUB e todos os modelos YOLO, incluindo o mais recente YOLO11. Isso permite que você integre facilmente o conjunto de dados em seus fluxos de trabalho de treinamento e validação.
Onde posso encontrar mais informações sobre técnicas de aumento de dados?
Para uma compreensão mais profunda dos métodos de aumento de dados, como mosaic e seu impacto no desempenho do modelo, consulte o Guia de Aumento de Dados YOLO e o Blog da Ultralytics sobre Aumento de Dados.
Posso usar o COCO8-Multispectral para benchmarking ou fins educacionais?
Absolutamente! O tamanho pequeno e a natureza multiespectral do COCO8-Multispectral tornam-no ideal para benchmarking, demonstrações educacionais e prototipagem de novas arquiteturas de modelos. Para mais conjuntos de dados de benchmarking, consulte a Ultralytics Benchmark Dataset Collection.