Chuyển đến nội dung

Bộ dữ liệu COCO8-Seg

Giới thiệu

Ultralytics COCO8-Seg là một bộ dữ liệu phân đoạn thể hiện nhỏ nhưng linh hoạt, bao gồm 8 hình ảnh đầu tiên của bộ COCO train 2017, 4 cho huấn luyện và 4 cho xác thực. Bộ dữ liệu này lý tưởng để kiểm tra và gỡ lỗi các mô hình phân đoạn, 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ễ 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 kiểm tra tỉnh táo trước khi huấn luyện các bộ dữ liệu lớn hơn.

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

YAML bộ dữ liệu

Tệp YAML (Yet Another Markup Language) được sử dụng để xác định cấu hình bộ dữ liệu. Nó chứa thông tin về đường dẫn, các lớp và các thông tin liên quan khác của bộ dữ liệu. Trong trường hợp bộ dữ liệu COCO8-Seg, coco8-seg.yaml tệp đượ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ô hình YOLO11n-seg trên tập dữ liệu COCO8-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 đối số có sẵn, hãy tham khảo trang Training (Huấn luyện) của mô hình.

Ví dụ huấn luyện

from ultralytics import YOLO

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

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

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

Dưới đây là một số ví dụ về hình ảnh từ bộ dữ liệu COCO8-Seg, cùng với các annotation (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 COCO8-Seg 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

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

Bộ dữ liệu COCO8-Seg là một bộ dữ liệu phân đoạn instance nhỏ gọn của Ultralytics, bao gồm 8 hình ảnh đầu tiên từ bộ COCO train 2017—4 hình ảnh để huấn luyện và 4 hình ảnh để xác thực. Bộ dữ liệu này được thiết kế riêng để kiểm tra và gỡ lỗi các mô hình 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 YOLO11HUB để lặp lại nhanh chóng và kiểm tra lỗi pipeline trước khi mở rộng quy mô sang các bộ dữ liệu lớn hơn. Để biết chi tiết sử dụng, hãy tham khảo trang Huấn luyện mô hình.

Làm thế nào để huấn luyện một mô hình YOLO11n-seg bằng bộ dữ liệu COCO8-Seg?

Để huấn luyện mô hình YOLO11n-seg trên bộ dữ liệu COCO8-Seg trong 100 epochs với kích thước ảnh 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("yolo11n-seg.pt")  # Load a pretrained model (recommended for training)

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

Để có giải thích kỹ lưỡng 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 Huấn luyện.

Tại sao bộ dữ liệu COCO8-Seg lại quan trọng đối với việc phát triển và gỡ lỗi mô hình?

Bộ dữ liệu COCO8-Seg cung cấp một tập hợp nhỏ gọn nhưng đa dạng gồm 8 hình ảnh, khiến nó trở nên hoàn hảo để nhanh chóng kiểm tra và gỡ lỗi các mô hình 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 nhanh tính hợp lệ và xác thực đường ống sớm, giúp xác định các vấn đề trước khi mở rộng sang các bộ dữ liệu lớn hơn. Tìm hiểu thêm về các định dạng bộ dữ liệu được hỗ trợ trong hướng dẫn về bộ dữ liệu phân đoạn Ultralytics.

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

Tệp cấu hình YAML cho bộ dữ liệu COCO8-Seg có sẵn trong kho lưu trữ Ultralytics. Bạn có thể truy cập trực tiếp tệ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ề đường dẫn bộ dữ liệu, các lớp và cài đặt cấu hình cần thiết cho quá trình huấn luyện và xác thực mô hình.

Những lợi ích khi sử dụng kỹ thuật mosaicing trong quá trình huấn luyện với bộ 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 của các đối tượng và cảnh trong mỗi lô 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 tổng quát hóa của mô hình đối với các kích thước đối tượng, tỷ lệ khung hình và ngữ cảnh khác nhau trong cảnh. Mosaicing có lợi cho việc cải thiện tính mạnh mẽ và độ chính xác của mô hình, đặc biệt khi làm việc với các tập dữ liệu nhỏ như COCO8-Seg. Để xem ví dụ về hình ảnh mosaiced, hãy xem phần Hình ảnh và Chú thích Mẫu.



📅 Đã tạo 1 năm trước ✏️ Cập nhật 4 tháng trước

Bình luận