Chuyển đến nội dung

Bộ dữ liệu COCO128

Giới thiệu

Ultralytics COCO128 là một bộ dữ liệu phát hiện đối tượng nhỏ nhưng linh hoạt, bao gồm 128 hình ảnh đầu tiên của bộ COCO train 2017. Bộ dữ liệu này lý tưởng để kiểm tra và gỡ lỗi các mô hình phát hiện đối tượng 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ễ quản lý, nhưng đủ đa dạng để kiểm tra các quy trình huấn luyện để tìm lỗi và hoạt động như một bước kiểm tra tính hợp lệ trước khi huấn luyện các bộ dữ liệu lớn hơn.



Xem: Tổng quan về bộ dữ liệu Ultralytics COCO

Bộ dữ liệu này được thiết kế để sử dụng với Ultralytics HUBYOLO11.

YAML bộ dữ liệu

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

ultralytics/cfg/datasets/coco128.yaml

# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# COCO128 dataset https://www.kaggle.com/datasets/ultralytics/coco128 (first 128 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/coco/
# Example usage: yolo train data=coco128.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco128 ← 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 # 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.zip

Cách sử dụng

Để huấn luyện mô hình YOLO11n trên bộ dữ liệu COCO128 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 đối số có sẵn, hãy tham khảo trang Huấn luyện mô hình.

Ví dụ huấn luyện

from ultralytics import YOLO

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

# Train the model
results = model.train(data="coco128.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=coco128.yaml model=yolo11n.pt epochs=100 imgsz=640

Ảnh và Chú thích mẫu

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

Ảnh mẫu bộ dữ liệu

  • Hình ảnh Mosaiced: Hình ảnh này minh họa một lô huấn luyện bao gồm các hình ảnh bộ dữ liệu được mosaiced. Mosaicing là một kỹ thuật được sử dụng trong quá trình huấn luyện, 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à cảnh trong mỗi lô 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à ngữ cảnh khác nhau của đối tượng.

Ví dụ này thể hiện sự đa dạng và phức tạp của hình ảnh trong bộ dữ liệu COCO128 và những lợi ích của việc sử dụng mosaicing trong quá trình huấn luyện.

Trích dẫn và Lời cảm ơ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:

@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 ghi nhận công lao của COCO Consortium vì đã tạo và duy trì nguồn tài nguyên giá trị này cho cộng đồng thị giác máy tính. Để biết thêm thông tin về bộ dữ liệu COCO và những người tạo ra nó, hãy truy cập trang web bộ dữ liệu COCO.

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

Tập dữ liệu Ultralytics COCO128 được sử dụng để làm gì?

Bộ dữ liệu Ultralytics COCO128 là một tập hợp con nhỏ gọn chứa 128 hình ảnh đầu tiên từ bộ dữ liệu COCO train 2017. Nó chủ yếu được sử dụng để kiểm tra và gỡ lỗi các mô hình phát hiện đối tượng, thử nghiệm các phương pháp phát hiện mới và xác thực quy trình huấn luyện trước khi mở rộng quy mô sang các bộ dữ liệu lớn hơn. Kích thước dễ quản lý của nó làm cho nó trở nên hoàn hảo cho các lần lặp nhanh chóng trong khi vẫn cung cấp đủ sự đa dạng để trở thành một trường hợp thử nghiệm có ý nghĩa.

Làm cách nào để huấn luyện mô hình YOLO11 bằng bộ dữ liệu COCO128?

Để huấn luyện một mô hình YOLO11 trên bộ dữ liệu COCO128, bạn có thể sử dụng các lệnh Python hoặc CLI. Đây là cách thực hiện:

Ví dụ huấn luyện

from ultralytics import YOLO

# Load a pretrained model
model = YOLO("yolo11n.pt")

# Train the model
results = model.train(data="coco128.yaml", epochs=100, imgsz=640)
yolo detect train data=coco128.yaml model=yolo11n.pt epochs=100 imgsz=640

Để biết thêm các tùy chọn và tham số huấn luyện, hãy tham khảo tài liệu Huấn luyện.

Những lợi ích của việc sử dụng tăng cường mosaic với COCO128 là gì?

Tăng cường Mosaic, như được hiển thị trong các sample_images, kết hợp nhiều hình ảnh huấn luyện thành một hình ảnh tổng hợp duy nhất. Kỹ thuật này mang lại một số lợi ích khi huấn luyện với COCO128:

  • 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
  • Cải thiện khả năng tổng quát hóa mô hình trên các kích thước và tỷ lệ khung hình đối tượng khác nhau
  • Nâng cao hiệu suất phát hiện cho các đối tượng ở nhiều kích cỡ khác nhau
  • Tối đa hóa tiện ích của một bộ dữ liệu nhỏ bằng cách tạo ra nhiều mẫu huấn luyện đa dạng hơn

Kỹ thuật này đặc biệt có giá trị đối với các bộ dữ liệu nhỏ hơn như COCO128, giúp các mô hình học được các đặc trưng mạnh mẽ hơn từ dữ liệu hạn chế.

COCO128 so sánh với các biến thể bộ dữ liệu COCO khác như thế nào?

COCO128 (128 ảnh) nằm giữa COCO8 (8 ảnh) và toàn bộ bộ dữ liệu COCO (hơn 118 nghìn ảnh) về kích thước:

  • COCO8: Chỉ chứa 8 ảnh (4 train, 4 val) - lý tưởng cho các thử nghiệm và gỡ lỗi nhanh
  • COCO128: Chứa 128 ảnh - cân bằng giữa kích thước và sự đa dạng
  • Full COCO: Chứa hơn 118 nghìn ảnh huấn luyện - toàn diện nhưng tốn nhiều tài nguyên

COCO128 cung cấp một điểm trung gian tốt, mang lại sự đa dạng hơn COCO8 đồng thời dễ quản lý hơn nhiều so với toàn bộ bộ dữ liệu COCO để thử nghiệm và phát triển mô hình ban đầu.

Tôi có thể sử dụng COCO128 cho các tác vụ khác ngoài phát hiện đối tượng không?

Mặc dù COCO128 chủ yếu được thiết kế để phát hiện đối tượng, nhưng các chú thích của bộ dữ liệu có thể được điều chỉnh cho các tác vụ thị giác máy tính khác:

  • Phân đoạn thể hiện: Sử dụng mặt nạ phân đoạn được cung cấp trong chú thích
  • Phát hiện điểmKeypoint: Dành cho hình ảnh có người với chú thích điểm Keypoint
  • Học tăng cường: Là điểm khởi đầu để tinh chỉnh các mô hình cho các tác vụ tùy chỉnh

Đối với các tác vụ chuyên biệt như phân đoạn, hãy cân nhắc sử dụng các biến thể được xây dựng có mục đích như COCO8-seg, bao gồm các chú thích thích hợp.



📅 Đã tạo 5 tháng trước ✏️ Đã cập nhật 5 tháng trước

Bình luận