Ultralytics YOLO27: Tham gia danh sách chờ.
Bắt đầu

Dataset DOTA128

Giới thiệu#

DOTA128 của Ultralytics là bộ dữ liệu phát hiện đối tượng xoay nhỏ, gồm 128 hình ảnh từ tập DOTAv1 được dùng làm cả tập huấn luyện lẫn validation. Bộ dữ liệu này lý tưởng để kiểm thử và gỡ lỗi model bounding box xoay (OBB) hoặc thử nghiệm các phương pháp phát hiện mới. Với 128 hình ảnh, bộ dữ liệu đủ nhỏ để dễ quản lý nhưng vẫn đủ đa dạng để kiểm tra lỗi trong pipeline huấn luyện và làm bước kiểm tra tính hợp lý trước khi huấn luyện trên các bộ dữ liệu lớn hơn.

Cấu trúc dataset#

  • Ảnh: 128 ô ảnh trên không (tất cả nằm trong thư mục train, dùng cho cả train và val) lấy từ DOTAv1.
  • Lớp: Kế thừa 15 danh mục của DOTAv1, chẳng hạn như máy bay, tàu thủy và xe cỡ lớn.
  • Nhãn: Hộp giới hạn xoay định dạng YOLO được lưu thành các file .txt bên cạnh từng ảnh.
  • Tải xuống: 34 MB, được tự động tải từ tài nguyên GitHub của Ultralytics trong lần đầu tiên bạn huấn luyện.

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

YAML của dataset#

File YAML được dùng để xác định cấu hình dataset. File này chứa thông tin về đường dẫn, lớp và các thông tin liên quan khác của dataset. Với dataset DOTA128, file dota128.yaml được duy trì tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dota128.yaml.

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

# DOTA128 dataset (128 images from the DOTAv1 split) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/obb/dota128
# Example usage: yolo train model=yolo26n-obb.pt data=dota128.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── dota128 ← downloads here (34 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: dota128 # dataset root dir
train: images/train # train images (relative to 'path') 128 images
val: images/train # val images (relative to 'path') 128 images

# Classes for DOTA 1.0
names:
  0: plane
  1: ship
  2: storage tank
  3: baseball diamond
  4: tennis court
  5: basketball court
  6: ground track field
  7: harbor
  8: bridge
  9: large vehicle
  10: small vehicle
  11: helicopter
  12: roundabout
  13: soccer ball field
  14: swimming pool

# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/dota128.zip

Cách sử dụng#

Để huấn luyện model YOLO26n-obb trên bộ dữ liệu DOTA128 trong 100 epoch với kích thước ảnh 640, bạn có thể dùng các đoạn mã sau.

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

# Tải model
model = YOLO("yolo26n-obb.pt")  # tải model đã huấn luyện trước (được khuyến nghị khi huấn luyện)

# Huấn luyện model
results = model.train(data="dota128.yaml", epochs=100, imgsz=640)

Hình ảnh mẫu và annotation#

Sau đây là một số ảnh trong dataset DOTA128 cùng với các chú thích tương ứng:

DOTA128 oriented bounding box dataset training mosaic
  • Ảnh ghép Mosaic: Hình ảnh này minh họa một batch huấn luyện được tạo từ các ảnh mosaic của bộ dữ liệu. Mosaic là 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 đối tượng và bối cảnh trong mỗi batch huấn luyện. Kỹ thuật 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à ngữ cảnh khác nhau.

Ví dụ này minh họa sự đa dạng và phức tạp của ảnh trong dataset DOTA128, cũng như lợi ích của việc sử dụng ghép mosaic trong quá trình huấn luyện.

Trích dẫn và lời cảm ơn#

Nếu sử dụng dataset DOTA trong nghiên cứu hoặc phát triển, vui lòng trích dẫn bài báo sau:

Trích dẫn
@article{9560031,
  author={Ding, Jian and Xue, Nan and Xia, Gui-Song and Bai, Xiang and Yang, Wen and Yang, Michael and Belongie, Serge and Luo, Jiebo and Datcu, Mihai and Pelillo, Marcello and Zhang, Liangpei},
  journal={IEEE Transactions on Pattern Analysis and Machine Intelligence},
  title={Object Detection in Aerial Images: A Large-Scale Benchmark and Challenges},
  year={2022},
  volume={44},
  number={11},
  pages={7778-7796},
  doi={10.1109/TPAMI.2021.3117983}
}

Chúng tôi cảm ơn nhóm phát triển các bộ dữ liệu DOTA đã biên soạn những bộ dữ liệu này. Để xem thông tin đầy đủ về bộ dữ liệu, hãy truy cập trang web DOTA chính thức.

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

  • Bộ dữ liệu DOTA128 là bộ dữ liệu phát hiện đối tượng xoay, gồm 128 hình ảnh từ tập DOTAv1, tất cả được lưu trong thư mục train. Tập huấn luyện và validation đều sử dụng cùng một nhóm hình ảnh, khiến bộ dữ liệu này lý tưởng để nhanh chóng kiểm thử và gỡ lỗi các model OBB như Ultralytics YOLO26. Nhờ kích thước dễ quản lý và tính đa dạng, bộ dữ liệu giúp xác định lỗi trong pipeline và thực hiện kiểm tra tính hợp lý trước khi huấn luyện trên các bộ dữ liệu lớn hơn.

  • Để huấn luyện model YOLO26n-obb trên dataset DOTA128 trong 100 epoch với kích thước ảnh 640, bạn có thể dùng các đoạn mã sau. Để xem các tùy chọn tham số đầy đủ, hãy tham khảo trang Huấn luyện model.

    Ví dụ huấn luyện
    from ultralytics import YOLO
    
    # Tải model
    model = YOLO("yolo26n-obb.pt")  # tải model đã huấn luyện trước (được khuyến nghị khi huấn luyện)
    
    # Huấn luyện model
    results = model.train(data="dota128.yaml", epochs=100, imgsz=640)
  • Bộ dữ liệu DOTA nổi tiếng với benchmark quy mô lớn và những thách thức mà bộ dữ liệu đặt ra cho bài toán phát hiện đối tượng trong ảnh hàng không. Tập con DOTA128 đa dạng hơn DOTA8 nhưng vẫn đủ gọn để thực hiện các thử nghiệm ban đầu. Tệp cấu hình dota128.yaml, chứa các đường dẫn, lớp và thông tin cấu hình, được duy trì trong kho GitHub của Ultralytics.

  • Xét về kích thước, DOTA128 (128 ảnh) nằm giữa DOTA8 (8 ảnh) và dataset DOTA-v1 đầy đủ (1.869 ảnh huấn luyện và xác thực có nhãn):

    • DOTA8: Chỉ gồm 8 ảnh (4 train, 4 val) — phù hợp cho kiểm thử nhanh và gỡ lỗi
    • DOTA128: Gồm 128 ảnh (tất cả nằm trong thư mục train, dùng cho cả train và val) — cân bằng giữa kích thước và độ đa dạng
    • DOTA-v1 đầy đủ: Gồm 1.869 ảnh huấn luyện và xác thực có nhãn — toàn diện nhưng đòi hỏi nhiều tài nguyên

    DOTA128 là lựa chọn trung gian phù hợp, đa dạng hơn DOTA8 nhưng vẫn dễ quản lý hơn nhiều so với dataset DOTA đầy đủ cho các thử nghiệm và giai đoạn phát triển model ban đầu.

  • Ghép ảnh Mosaic kết hợp nhiều hình ảnh thành một hình trong quá trình huấn luyện, làm tăng sự đa dạng của đối tượng và ngữ cảnh trong mỗi batch. Cách này cải thiện khả năng tổng quát hóa của model với các kích thước đối tượng, tỷ lệ khung hình và cảnh khác nhau.

  • Ultralytics YOLO26 hỗ trợ phát hiện hộp giới hạn định hướng (OBB) theo thời gian thực cùng với các tác vụ khác như phân đoạn instance, tất cả thông qua một pipeline huấn luyện duy nhất. Các model OBB pretrained của model giúp tinh chỉnh trên dữ liệu hàng không hiệu quả hơn.

Bình luận

Đặt câu hỏi, chia sẻ kết quả hoặc giúp đỡ người khác.