Tập dữ liệu COCO8-Seg

Giới thiệu

Ultralytics COCO8-Seg là một tập dữ liệu instance segmentation nhỏ gọn nhưng linh hoạt, bao gồm 8 hình ảnh đầu tiên của tập COCO train 2017, trong đó có 4 hình ảnh cho quá trình huấn luyện và 4 hình ảnh cho quá trình xác thực. Tập dữ liệu này rất lý tưởng để thử nghiệm và gỡ lỗi các model phân đoạn (segmentation models), hoặc để thử nghiệm các phương pháp phát hiện mới. Với 8 hình ảnh, nó đủ nhỏ để dễ dàng quản lý nhưng cũng đủ đa dạng để kiểm tra các pipeline huấn luyện nhằm phát hiện lỗi và đóng vai trò như một bước kiểm tra độ tin cậy trước khi huấn luyện trên các tập dữ liệu lớn hơn.

Cấu trúc tập dữ liệu

  • Hình ảnh: tổng cộng 8 (4 train / 4 val).
  • Lớp: 80 danh mục COCO.
  • Nhãn: các đa giác theo định dạng YOLO được lưu trữ trong labels/{train,val} tương ứng với từng tệp hình ảnh.

Tập dữ liệu này được thiết kế để sử dụng với Ultralytics PlatformYOLO26.

Dataset YAML

Một tệp YAML (Yet Another Markup Language) được sử dụng để định nghĩa cấu hình tập dữ liệu. Nó chứa thông tin về các đường dẫn, lớp và các thông tin liên quan khác của tập dữ liệu. Đối với tập dữ liệu COCO8-Seg, tệp coco8-seg.yaml được duy trì tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-seg.yaml.

ultralytics/cfg/datasets/coco8-seg.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# COCO8-seg dataset (first 8 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/segment/coco8-seg/
# Example usage: yolo train data=coco8-seg.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco8-seg ← downloads here (1 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-seg # 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)

# 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-seg.zip

Cách sử dụng

Để huấn luyện một model YOLO26n-seg trên tập dữ liệu COCO8-Seg trong 100 epochs với kích thước hình ảnh là 640, bạn có thể sử dụng các đoạn mã sau. Để xem danh sách đầy đủ các đối số khả dụng, hãy tham khảo trang Training của model.

Ví dụ huấn luyện
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-seg.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco8-seg.yaml", epochs=100, imgsz=640)

Hình ảnh và chú thích mẫu

Dưới đây là một số ví dụ về hình ảnh từ tập dữ liệu COCO8-Seg, cùng với các chú thích tương ứng:

COCO8-seg instance segmentation dataset mosaic
  • Mosaiced Image: Hình ảnh này minh họa một batch huấn luyện bao gồm các hình ảnh tập dữ liệu được ghép lại (mosaic). Mosaicing là một kỹ thuật được sử dụng trong quá trình huấn luyện nhằm kết hợp nhiều hình ảnh thành một hình ảnh duy nhất để tăng sự đa dạng của các vật thể và cảnh quan trong mỗi batch huấn luyện. Điều này giúp cải thiện khả năng tổng quát hóa của mô hình đối với các kích thước, tỷ lệ khung hình và bối cảnh vật thể khác nhau.

Ví dụ này minh họa sự đa dạng và phức tạp của các hình ảnh trong tập dữ liệu COCO8-Seg cũng như những lợi ích của việc sử dụng kỹ thuật mosaicing trong quá trình huấn luyện.

Trích dẫn và Ghi nhận

Nếu bạn sử dụng tập dữ liệu COCO trong công việc nghiên cứu hoặc phát triển của mình, 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}
}

Chúng tôi xin gửi lời cảm ơn đến COCO Consortium vì đã tạo và duy trì nguồn tài nguyên quý giá này cho cộng đồng thị giác máy tính (computer vision). Để biết thêm thông tin về tập dữ liệu COCO và những người tạo ra nó, hãy truy cập trang web của tập dữ liệu COCO.

Câu hỏi thường gặp (FAQ)

Tập dữ liệu COCO8-Seg là gì và nó được sử dụng như thế nào trong Ultralytics YOLO26?

Tập dữ liệu COCO8-Seg là một tập dữ liệu instance segmentation nhỏ gọn của Ultralytics, bao gồm 8 hình ảnh đầu tiên từ tập COCO train 2017—4 hình ảnh cho huấn luyện và 4 hình ảnh cho xác thực. Tập dữ liệu này được thiết kế riêng để thử nghiệm và gỡ lỗi các model phân đoạn hoặc thử nghiệm các phương pháp phát hiện mới. Nó đặc biệt hữu ích với Ultralytics YOLO26Platform để lặp lại nhanh và kiểm tra lỗi pipeline trước khi mở rộng ra các tập dữ liệu lớn hơn. Để biết cách sử dụng chi tiết, hãy tham khảo trang Training của model.

Làm cách nào để tôi có thể huấn luyện một model YOLO26n-seg bằng cách sử dụng tập dữ liệu COCO8-Seg?

Để huấn luyện một model YOLO26n-seg trên tập dữ liệu COCO8-Seg trong 100 epochs với kích thước hình ảnh là 640, bạn có thể sử dụng các lệnh Python hoặc CLI. Dưới đây là một ví dụ nhanh:

Ví dụ huấn luyện
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-seg.pt")  # Load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco8-seg.yaml", epochs=100, imgsz=640)

Để có lời giải thích thấu đáo về các đối số và tùy chọn cấu hình khả dụng, bạn có thể xem tài liệu Training.

Tại sao tập dữ liệu COCO8-Seg lại quan trọng đối với việc phát triển và gỡ lỗi model?

Tập dữ liệu COCO8-Seg cung cấp một bộ 8 hình ảnh nhỏ gọn nhưng đa dạng, giúp nó trở nên hoàn hảo cho việc nhanh chóng thử nghiệm và gỡ lỗi các model phân đoạn hoặc thử nghiệm các kỹ thuật phát hiện mới. Kích thước nhỏ của nó cho phép kiểm tra độ tin cậy nhanh chóng và xác thực pipeline sớm, giúp xác định các vấn đề trước khi mở rộng lên các tập dữ liệu lớn hơn. Tìm hiểu thêm về các định dạng tập dữ liệu được hỗ trợ trong hướng dẫn về tập dữ liệu phân đoạn của Ultralytics.

Tôi có thể tìm thấy tệp cấu hình YAML cho tập dữ liệu COCO8-Seg ở đâu?

Tệp cấu hình YAML cho tập dữ liệu COCO8-Seg có sẵn trong repository của Ultralytics. Bạn có thể truy cập tệp trực tiếp tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-seg.yaml. Tệp YAML bao gồm thông tin thiết yếu về các đường dẫn tập dữ liệu, các lớp và các cài đặt cấu hình cần thiết cho việc huấn luyện và xác thực model.

Một số lợi ích của việc sử dụng mosaicing trong quá trình huấn luyện với tập dữ liệu COCO8-Seg là gì?

Việc sử dụng mosaicing trong quá trình huấn luyện giúp tăng tính đa dạng và phong phú của các đối tượng và cảnh trong mỗi batch huấn luyện. Kỹ thuật này kết hợp nhiều hình ảnh thành một hình ảnh tổng hợp duy nhất, nâng cao khả năng khái quát hóa của model đối với các kích thước đối tượng, tỷ lệ khung hình và bối cảnh khác nhau trong cảnh. Mosaicing rất có lợi cho việc cải thiện độ bền bỉ và độ chính xác của model, đặc biệt là khi làm việc với các tập dữ liệu nhỏ như COCO8-Seg. Để xem ví dụ về các hình ảnh đã được mosaicing, hãy xem phần Sample Images and Annotations.

Bình luận