Dataset COCO8-Multispectral
Introduzione
Il dataset Ultralytics COCO8-Multispectral è una variante avanzata del dataset COCO8 originale, progettata per facilitare la sperimentazione con modelli di rilevamento oggetti multispettrali. Consiste nelle stesse 8 immagini del set COCO train 2017—4 per l'addestramento e 4 per la validazione—ma con ogni immagine trasformata in un formato multispettrale a 10 canali. Andando oltre i canali RGB standard, COCO8-Multispectral consente lo sviluppo e la valutazione di modelli in grado di sfruttare informazioni spettrali più ricche.
COCO8-Multispectral è pienamente compatibile con Ultralytics Platform e YOLO26, garantendo un'integrazione fluida nei tuoi flussi di lavoro di computer vision.
Watch: How to Train Ultralytics YOLO26 on Multispectral Datasets | Multi-Channel VisionAI 🚀
Generazione del dataset
Le immagini multispettrali in COCO8-Multispectral sono state create interpolando le immagini RGB originali su 10 canali spettrali equispaziati all'interno dello spettro visibile. Il processo include:
- Assegnazione delle lunghezze d'onda: Assegnazione di lunghezze d'onda nominali ai canali RGB—Rosso: 650 nm, Verde: 510 nm, Blu: 475 nm.
- Interpolazione: Utilizzo dell'interpolazione lineare per stimare i valori dei pixel a lunghezze d'onda intermedie tra 450 nm e 700 nm, ottenendo 10 canali spettrali.
- Estrapolazione: Applicazione dell'estrapolazione con la funzione
interp1ddi SciPy per stimare i valori oltre le lunghezze d'onda RGB originali, garantendo una rappresentazione spettrale completa.
Questo approccio simula un processo di imaging multispettrale, fornendo un set di dati più diversificato per l'addestramento e la valutazione dei modelli. Per ulteriori approfondimenti sull'imaging multispettrale, consulta la voce di Wikipedia sull'imaging multispettrale.
YAML del dataset
Il dataset COCO8-Multispectral è configurato tramite un file YAML, che definisce i percorsi del dataset, i nomi delle classi e i metadati essenziali. Puoi consultare il file ufficiale coco8-multispectral.yaml nel repository GitHub di Ultralytics.
# 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.zipPrepara le tue immagini TIFF nell'ordine (channel, height, width), salvate con estensione .tiff o .tif, e assicurati che siano uint8 per l'uso con 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 inferenceUtilizzo
Per addestrare un modello YOLO26n sul dataset COCO8-Multispectral per 100 epoche con una dimensione dell'immagine di 640, usa gli esempi seguenti. Per un elenco completo delle opzioni di addestramento, fai riferimento alla documentazione sull'addestramento YOLO.
from ultralytics import YOLO
# Load a pretrained YOLO26n model
model = YOLO("yolo26n.pt")
# Train the model on COCO8-Multispectral
results = model.train(data="coco8-multispectral.yaml", epochs=100, imgsz=640)Per maggiori dettagli sulla selezione del modello e sulle best practice, esplora la documentazione del modello Ultralytics YOLO e la guida ai suggerimenti per l'addestramento dei modelli YOLO.
Immagini campione e annotazioni
Di seguito è riportato un esempio di un batch di addestramento a mosaico dal dataset COCO8-Multispectral:
- Immagine a mosaico: Questa immagine mostra un batch di addestramento in cui diverse immagini del dataset vengono combinate usando la mosaic augmentation. La mosaic augmentation aumenta la diversità di oggetti e scene all'interno di ogni batch, aiutando il modello a generalizzare meglio su varie dimensioni di oggetti, proporzioni e sfondi.
Questa tecnica è particolarmente preziosa per dataset piccoli come COCO8-Multispectral, poiché massimizza l'utilità di ogni immagine durante l'addestramento.
Citazioni e ringraziamenti
Se utilizzi il dataset COCO nella tua ricerca o sviluppo, ti preghiamo di citare il seguente articolo:
@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}
}Un ringraziamento speciale al COCO Consortium per i loro continui contributi alla community di computer vision.
FAQ
A cosa serve il dataset Ultralytics COCO8-Multispectral?
Il dataset Ultralytics COCO8-Multispectral è progettato per il test rapido e il debug di modelli di rilevamento oggetti multispettrali. Con sole 8 immagini (4 per l'addestramento, 4 per la validazione), è ideale per verificare le tue pipeline di addestramento YOLO26 e assicurarti che tutto funzioni come previsto prima di passare a dataset più grandi. Per altri dataset con cui sperimentare, visita il Catalogo dei Dataset Ultralytics.
In che modo i dati multispettrali migliorano il rilevamento degli oggetti?
I dati multispettrali forniscono informazioni spettrali aggiuntive oltre al normale RGB, consentendo ai modelli di distinguere gli oggetti in base a sottili differenze di riflettanza attraverso le lunghezze d'onda. Questo può migliorare la precisione del rilevamento, specialmente in scenari complessi. Scopri di più sull'imaging multispettrale e sulle sue applicazioni nella computer vision avanzata.
COCO8-Multispectral è compatibile con la piattaforma Ultralytics e i modelli YOLO?
Sì, COCO8-Multispectral è pienamente compatibile con Ultralytics Platform e tutti i modelli YOLO, incluso l'ultimo YOLO26. Questo ti consente di integrare facilmente il dataset nei tuoi flussi di lavoro di addestramento e validazione.
Dove posso trovare maggiori informazioni sulle tecniche di data augmentation?
Per una comprensione più approfondita dei metodi di data augmentation come il mosaic e il loro impatto sulle prestazioni del modello, fai riferimento alla Guida alla Data Augmentation di YOLO e al Blog di Ultralytics sulla Data Augmentation.
Posso usare COCO8-Multispectral per benchmarking o scopi educativi?
Assolutamente! Le dimensioni ridotte e la natura multispettrale di COCO8-Multispectral lo rendono ideale per benchmarking, dimostrazioni educative e prototipazione di nuove architetture di modelli. Per ulteriori dataset di benchmarking, consulta la Collezione di Dataset di Benchmark Ultralytics.