Bỏ để qua phần nội dung

Tổng quan về bộ dữ liệu Oriented Bounding Box (OBB)

Đào tạo một mô hình phát hiện đối tượng chính xác với các hộp giới hạn định hướng (OBB) đòi hỏi một bộ dữ liệu kỹ lưỡng. Hướng dẫn này giải thích các định dạng tập dữ liệu OBB khác nhau tương thích với Ultralytics YOLO mô hình, cung cấp thông tin chi tiết về cấu trúc, ứng dụng và phương pháp chuyển đổi định dạng của chúng.

Các định dạng tập dữ liệu OBB được hỗ trợ

YOLO Định dạng OBB

Các YOLO Định dạng OBB chỉ định các hộp giới hạn bởi bốn điểm góc của chúng với tọa độ được chuẩn hóa trong khoảng từ 0 đến 1. Nó theo định dạng này:

class_index, x1, y1, x2, y2, x3, y3, x4, y4

Nội YOLO xử lý tổn thất và đầu ra trong xywhr định dạng, đại diện cho điểm trung tâm của hộp giới hạn (XY), chiều rộng, chiều cao và xoay.

Ví dụ về định dạng OBB

Một ví dụ về một *.txt label cho hình ảnh trên, trong đó có chứa một đối tượng của lớp 0 ở định dạng OBB, có thể trông giống như:

0 0.780811 0.743961 0.782371 0.74686 0.777691 0.752174 0.776131 0.749758

Sử dụng

Để đào tạo mô hình bằng các định dạng OBB sau:

Ví dụ

from ultralytics import YOLO

# Create a new YOLOv8n-OBB model from scratch
model = YOLO("yolov8n-obb.yaml")

# Train the model on the DOTAv2 dataset
results = model.train(data="DOTAv1.yaml", epochs=100, imgsz=640)
# Train a new YOLOv8n-OBB model on the DOTAv2 dataset
yolo detect train data=DOTAv1.yaml model=yolov8n.pt epochs=100 imgsz=640

Bộ dữ liệu được hỗ trợ

Hiện tại, các bộ dữ liệu sau đây với Hộp Giới hạn Định hướng được hỗ trợ:

  • DOTA-v2: DOTA (Bộ dữ liệu quy mô lớn để phát hiện đối tượng trong hình ảnh trên không) phiên bản 2, nhấn mạnh khả năng phát hiện từ góc độ trên không và chứa các hộp giới hạn định hướng với 1,7 triệu phiên bản và 11.268 hình ảnh.
  • DOTA8: Một tập hợp con nhỏ, 8 hình ảnh của tập dữ liệu DOTA đầy đủ phù hợp cho quy trình kiểm tra và kiểm tra Tích hợp liên tục (CI) của đào tạo OBB trong ultralytics Kho.

Kết hợp tập dữ liệu OBB của riêng bạn

Đối với những người muốn giới thiệu bộ dữ liệu của riêng họ với các hộp giới hạn định hướng, hãy đảm bảo khả năng tương thích với "YOLO Định dạng OBB" đã đề cập ở trên. Chuyển đổi chú thích của bạn sang định dạng bắt buộc này và nêu chi tiết đường dẫn, lớp và tên lớp trong tệp cấu hình YAML tương ứng.

Chuyển đổi định dạng nhãn

Định dạng tập dữ liệu DOTA thành YOLO Định dạng OBB

Chuyển nhãn từ định dạng tập dữ liệu DOTA sang YOLO Định dạng OBB có thể đạt được với tập lệnh này:

Ví dụ

from ultralytics.data.converter import convert_dota_to_yolo_obb

convert_dota_to_yolo_obb("path/to/DOTA")

Cơ chế chuyển đổi này là công cụ cho các bộ dữ liệu ở định dạng DOTA, đảm bảo sự liên kết với Ultralytics YOLO Định dạng OBB.

Bắt buộc phải xác thực tính tương thích của tập dữ liệu với mô hình của bạn và tuân thủ các quy ước định dạng cần thiết. Các bộ dữ liệu có cấu trúc phù hợp là mấu chốt để đào tạo các mô hình phát hiện đối tượng hiệu quả với các hộp giới hạn được định hướng.



Created 2023-11-12, Updated 2024-06-02
Authors: glenn-jocher (9)

Ý kiến