Ultralytics YOLO27: Tham gia danh sách chờ.

Dataset DOTA128#

Giới thiệu#

DOTA128 của Ultralytics là một dataset phát hiện đối tượng xoay nhỏ nhưng linh hoạt, gồm 128 ảnh từ tập DOTAv1, được dùng cho cả tập huấn luyện và tập xác thực. Dataset này phù hợp để kiểm thử và gỡ lỗi model hộp giới hạn xoay (OBB), hoặc thử nghiệm các phương pháp phát hiện mới. Với 128 ảnh, dataset đủ nhỏ để dễ quản lý nhưng cũng đủ đa dạng để kiểm tra lỗi trong pipeline huấn luyện và làm bước kiểm tra sơ bộ trước khi huấn luyện trên các dataset 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 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 danh sách đầy đủ các tham số hiện có, 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)

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}
}

Xin gửi lời cảm ơn đặc biệt đến nhóm phát triển các dataset DOTA vì những nỗ lực đáng ghi nhận trong việc tuyển chọn dataset này. Để hiểu đầy đủ về dataset và các đặc điểm của dataset, vui lòng truy cập trang web chính thức của DOTA.

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

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

  • Để 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)
  • Dataset DOTA nổi tiếng với benchmark quy mô lớn và những thách thức mà dataset đặt ra cho việc phát hiện đối tượng trong ảnh trên không. Tập con DOTA128 đa dạng hơn DOTA8 nhưng vẫn dễ quản lý cho các bài kiểm thử ban đầu. Bạn có thể truy cập file dota128.yaml, chứa đường dẫn, lớp và thông tin cấu hình, tại liên kết GitHub này.

  • 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 mosaic kết hợp nhiều ảnh thành một ả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. Điều 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à bối cảnh khác nhau. Có thể minh họa trực quan kỹ thuật này qua một batch huấn luyện gồm các ảnh dataset DOTA128 được ghép mosaic, hỗ trợ phát triển model vững chắc. Tìm hiểu thêm về ghép mosaic và các kỹ thuật huấn luyện trên trang Huấn luyện của chúng tôi.

  • Ultralytics YOLO26 cung cấp khả năng phát hiện đối tượng thời gian thực tiên tiến, bao gồm các tính năng như hộp giới hạn xoay (OBB), phân đoạn đối tượng và pipeline huấn luyện linh hoạt cao. Model phù hợp với nhiều ứng dụng và cung cấp các model pretrained để tinh chỉnh hiệu quả. Tìm hiểu thêm về lợi ích và cách sử dụng trong tài liệu Ultralytics YOLO26.

Bình luận