Bộ dữ liệu COCO8-Multispectral#
Giới thiệu#
Bộ dữ liệu COCO8-Multispectral của Ultralytics là biến thể nâng cao của bộ dữ liệu COCO8 gốc, được thiết kế để hỗ trợ thử nghiệm với các model phát hiện đối tượng đa phổ. Bộ dữ liệu này gồm cùng 8 hình ảnh từ tập COCO train 2017 — 4 hình ảnh dùng để huấn luyện và 4 hình ảnh để xác thực — nhưng mỗi hình ảnh được chuyển đổi thành định dạng đa phổ 10 kênh. Bằng cách mở rộng vượt ra ngoài các kênh RGB tiêu chuẩn, COCO8-Multispectral hỗ trợ phát triển và đánh giá các model có thể khai thác thông tin phổ phong phú hơn.
COCO8-Multispectral hoàn toàn tương thích với Ultralytics Platform và YOLO26, đảm bảo tích hợp liền mạch vào quy trình làm việc thị giác máy tính của bạn.
Xem: Cách huấn luyện Ultralytics YOLO trên dataset ảnh xám và đa phổ | VisionAI đa kênh 🚀
Cấu trúc dataset#
COCO8-Multispectral dùng chung 8 hình ảnh với COCO8 — 4 hình ảnh dùng để huấn luyện và 4 hình ảnh để xác thực, được gán nhãn bằng 80 tên lớp COCO — nhưng mỗi hình ảnh được lưu dưới dạng .tiff đa phổ 10 kênh theo định dạng nhãn YOLO:
coco8-multispectral/
├── images/
│ ├── train/ # 4 images (10-channel .tiff)
│ └── val/ # 4 images (10-channel .tiff)
└── labels/
├── train/
└── val/Tạo bộ dữ liệu#
Các hình ảnh đa phổ trong COCO8-Multispectral được tạo bằng cách nội suy các hình ảnh RGB gốc trên 10 kênh phổ cách đều nhau trong phổ khả kiến. Quy trình gồm:
- Gán bước sóng: Gán bước sóng danh nghĩa cho các kênh RGB — Đỏ: 650 nm, Lục: 510 nm, Lam: 475 nm.
- Nội suy: Dùng nội suy tuyến tính để ước tính giá trị pixel tại các bước sóng trung gian trong khoảng từ 450 nm đến 700 nm, tạo ra 10 kênh phổ.
- Ngoại suy: Áp dụng ngoại suy tuyến tính để ước tính các giá trị nằm ngoài bước sóng RGB ban đầu, đảm bảo biểu diễn phổ đầy đủ.
Phương pháp này mô phỏng quy trình chụp ảnh đa phổ, cung cấp tập dữ liệu đa dạng hơn để huấn luyện và đánh giá model. Để tìm hiểu thêm về chụp ảnh đa phổ, hãy xem bài viết Wikipedia về chụp ảnh đa phổ.
YAML của dataset#
Bộ dữ liệu COCO8-Multispectral được cấu hình bằng tệp YAML, trong đó xác định đường dẫn bộ dữ liệu, tên lớp và metadata thiết yếu. Bạn có thể xem tệp coco8-multispectral.yaml chính thức trong kho GitHub của 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.zipChuẩn bị ảnh TIFF theo thứ tự (channel, height, width), lưu với phần mở rộng .tiff hoặc .tif và đảm bảo chúng ở dạng uint8 để sử dụng với Ultralytics:
import cv2
import numpy as np
# Tạo và ghi TIFF 10 kênh
image = np.ones((10, 640, 640), dtype=np.uint8) # Thứ tự CHW
cv2.imwritemulti("example.tiff", image)
# Đọc TIFF
success, frames_list = cv2.imreadmulti("example.tiff")
image = np.stack(frames_list, axis=2)
print(image.shape) # (640, 640, 10) Thứ tự HWC cho huấn luyện và suy luậnCách sử dụng#
Bộ dữ liệu COCO8-Multispectral (20.2 MB) sẽ tự động được tải xuống khi bạn bắt đầu huấn luyện lần đầu. Để huấn luyện model YOLO26n trên COCO8-Multispectral trong 100 epoch với kích thước ảnh 640, hãy dùng các ví dụ sau. Để xem danh sách đầy đủ các tùy chọn huấn luyện, hãy tham khảo tài liệu Huấn luyện YOLO.
from ultralytics import YOLO
# Tải model YOLO26n đã được huấn luyện trước
model = YOLO("yolo26n.pt")
# Huấn luyện model trên COCO8-Multispectral
results = model.train(data="coco8-multispectral.yaml", epochs=100, imgsz=640)Để biết thêm chi tiết về cách chọn model và các phương pháp hay nhất, hãy xem tài liệu về model Ultralytics YOLO và hướng dẫn Mẹo huấn luyện model YOLO.
Hình ảnh mẫu và annotation#
Dưới đây là ví dụ về một batch huấn luyện ghép mosaic từ bộ dữ liệu COCO8-Multispectral:
- Ảnh ghép mosaic: Ảnh này minh họa một batch huấn luyện, trong đó nhiều ảnh từ bộ dữ liệu được kết hợp bằng tăng cường mosaic. Tăng cường mosaic làm tăng sự đa dạng của đối tượng và cảnh trong mỗi batch, giúp model tổng quát hóa tốt hơn với nhiều kích thước đối tượng, tỷ lệ khung hình và phông nền khác nhau.
Kỹ thuật này đặc biệt hữu ích với các bộ dữ liệu nhỏ như COCO8-Multispectral, vì giúp tận dụng tối đa từng ảnh trong quá trình huấn luyện.
Trích dẫn và lời cảm ơn#
Nếu sử dụng bộ dữ liệu COCO trong nghiên cứu hoặc phát triển, vui lòng trích dẫn bài báo sau:
@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}
}Xin chân thành cảm ơn COCO Consortium vì những đóng góp không ngừng cho cộng đồng thị giác máy tính.
Câu hỏi thường gặp#
Bộ dữ liệu Ultralytics COCO8-Multispectral được thiết kế để kiểm thử và gỡ lỗi nhanh các model phát hiện đối tượng đa phổ. Với chỉ 8 ảnh (4 ảnh huấn luyện, 4 ảnh xác thực), bộ dữ liệu này lý tưởng để kiểm tra pipeline huấn luyện YOLO26 và đảm bảo mọi thứ hoạt động như mong đợi trước khi mở rộng sang các bộ dữ liệu lớn hơn. Để thử nghiệm với nhiều bộ dữ liệu hơn, hãy truy cập Danh mục bộ dữ liệu Ultralytics.
Dữ liệu đa phổ cung cấp thêm thông tin phổ ngoài RGB tiêu chuẩn, cho phép model phân biệt đối tượng dựa trên những khác biệt nhỏ về độ phản xạ ở các bước sóng khác nhau. Điều này có thể cải thiện độ chính xác phát hiện, đặc biệt trong các tình huống khó. Tìm hiểu thêm về ảnh đa phổ và các ứng dụng của ảnh đa phổ trong thị giác máy tính nâng cao.
Có, COCO8-Multispectral hoàn toàn tương thích với Ultralytics Platform và tất cả model YOLO, bao gồm cả YOLO26 mới nhất. Nhờ đó, bạn có thể dễ dàng tích hợp bộ dữ liệu vào workflow huấn luyện và xác thực.
Để hiểu sâu hơn về các phương pháp tăng cường dữ liệu như mosaic và tác động của chúng đến hiệu suất model, hãy tham khảo Hướng dẫn tăng cường dữ liệu YOLO và Bài viết Ultralytics về tăng cường dữ liệu.
Chắc chắn rồi! Kích thước nhỏ và đặc tính đa phổ khiến COCO8-Multispectral trở nên lý tưởng cho benchmark, minh họa trong giáo dục và tạo nguyên mẫu cho các kiến trúc model mới. Để tìm thêm bộ dữ liệu benchmark, hãy xem Bộ sưu tập bộ dữ liệu benchmark Ultralytics.



