Ultralytics YOLO27:
Get Started

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.

Multispectral imaging for object detection

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/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
Lưu ý

Chuẩ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ận

Cá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.

Ví dụ huấn luyện
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:

COCO8 multispectral dataset mosaic training batch
  • Ả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:

Trích dẫn
@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.

Bình luận