YOLO Vision 2026:

Bộ dữ liệu COCO128-Seg#

Giới thiệu#

Ultralytics COCO128-Seg là một tập dữ liệu instance segmentation nhỏ nhưng linh hoạt, bao gồm 128 hình ảnh đầu tiên của tập train COCO 2017. Tập dữ liệu này rất lý tưởng để kiểm thử và gỡ lỗi các model segmentation, hoặc để thử nghiệm các phương pháp phát hiện mới. Với 128 hình ảnh, nó đủ nhỏ để dễ dàng quản lý, nhưng vẫn đủ đa dạng để kiểm tra các pipeline huấn luyện tìm lỗi và đóng vai trò như một bước kiểm tra tính hợp lý trước khi huấn luyệ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 128, với tập train và val được chia giống hệt nhau (xem ghi chú bên dưới).
  • Lớp (Classes): Gồm 80 danh mục đối tượng tương tự như COCO.
  • Labels: Các polygon theo định dạng YOLO được lưu trữ trong labels/train2017 cho thư mục ảnh train và val dùng chung.
  • Dung lượng tải xuống: ~7 MB.
Lưu ý

YAML mặc định trỏ train và val vào cùng 128 hình ảnh, do đó các metric validation đo lường độ khớp trên tập training thay vì khả năng tổng quát hóa trên dữ liệu tách biệt (held-out data). Hãy sao chép hoặc tùy chỉnh tập split nếu bạn cần một tập held-out thực sự.

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

YAML tập dữ liệu#

Một file YAML đượ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, các class và các thông tin liên quan khác của tập dữ liệu. Trong trường hợp của tập dữ liệu COCO128-Seg, file coco128-seg.yaml được duy trì tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco128-seg.yaml.

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

# COCO128-seg dataset https://www.kaggle.com/datasets/ultralytics/coco128 (first 128 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/segment/coco128-seg
# Example usage: yolo train data=coco128-seg.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco128-seg ← downloads here (7 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: coco128-seg # dataset root dir
train: images/train2017 # train images (relative to 'path') 128 images
val: images/train2017 # val images (relative to 'path') 128 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/coco128-seg.zip

Cách sử dụng#

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

Ví dụ về Training
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="coco128-seg.yaml", epochs=100, imgsz=640)

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

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

COCO128-seg instance segmentation dataset mosaic
  • Hình ảnh Mosaiced: Hình ảnh này minh họa một batch huấn luyện bao gồm các hình ảnh từ tập dữ liệu đã được áp dụng kỹ thuật Mosaic. Mosaic 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 đối tượng và bối cảnh 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 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.

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

Nếu bạn sử dụng bộ 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 có giá trị này cho cộng đồng 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 tập dữ liệu COCO.

Câu hỏi thường gặp#

  • Tập dữ liệu COCO128-Seg dataset là một tập dữ liệu instance segmentation nhỏ gọn do Ultralytics cung cấp, bao gồm 128 hình ảnh đầu tiên từ tập train COCO 2017. Tập dữ liệu này được thiết kế riêng để kiểm thử và gỡ lỗi các model segmentation 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 nhanh và kiểm tra lỗi pipeline trước khi mở rộng quy mô sang 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.

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

    Ví dụ về Training
    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="coco128-seg.yaml", epochs=100, imgsz=640)

    Để có giải thích chi tiết về các đối số và tùy chọn cấu hình có sẵn, bạn có thể xem tài liệu Training.

  • Vì quá trình tải xuống và vòng lặp train/val nhỏ hơn nhiều so với COCO đầy đủ, COCO128-Seg cho phép bạn chạy kiểm tra tính hợp lý 1-epoch trên một pipeline mới — xác minh model huấn luyện, đánh giá và lưu các checkpoint chính xác — trước khi mở rộng quy mô sang tập dữ liệu COCO-Seg đầy đủ. 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 segmentation của Ultralytics.

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

  • COCO128-Seg (128 hình ảnh) nằm giữa COCO8-Seg (8 hình ảnh) và tập dữ liệu COCO-Seg đầy đủ (118.287 hình ảnh huấn luyện) xét về quy mô:

    • COCO8-Seg: 8 hình ảnh (4 train, 4 val) — lý tưởng cho các kiểm tra sanity check nhanh và gỡ lỗi.
    • COCO128-Seg: 128 hình ảnh — cân bằng giữa kích thước và sự đa dạng, với train và val dùng chung một thư mục.
    • Full COCO-Seg: 118.287 hình ảnh huấn luyện — toàn diện nhưng đòi hỏi tài nguyên lớn, yêu cầu ~27 GB khi tải xuống lần đầu.

    COCO128-Seg cung cấp sự đa dạng hơn so với COCO8-Seg trong khi vẫn dễ quản lý hơn nhiều so với bộ dữ liệu COCO-Seg đầy đủ cho các thí nghiệm và phát triển model ban đầu.

Bình luận