Tập dữ liệu DOTA8#
Giới thiệu#
Ultralytics DOTA8 là một tập dữ liệu object detection có định hướng nhỏ nhưng đa năng, bao gồm 8 hình ảnh đầu tiên của tập DOTAv1 được chia tách, trong đó có 4 ảnh cho huấn luyện và 4 ảnh cho xác thực. Tập dữ liệu này lý tưởng để kiểm thử và gỡ lỗi các model object detection, hoặc để thử nghiệm các cách tiếp cận phát hiện mới. Với 8 hình ảnh, nó đủ nhỏ để dễ dàng quản lý, nhưng lại đủ đa dạng để kiểm tra các pipeline huấn luyện tìm lỗi và đóng vai trò như một bước kiểm tra hợp lý trước khi huấn luyện các tập dữ liệu lớn hơn.
Cấu trúc tập dữ liệu#
-
Hình ảnh: 8 ảnh chụp từ trên không (4 ảnh train, 4 ảnh val) được lấy từ DOTAv1.
-
Các lớp (Classes): Thừa hưởng 15 danh mục của DOTAv1 như máy bay, tàu thủy, và xe cơ giới cỡ lớn.
-
Nhãn: Các bounding box có định hướng theo định dạng YOLO được lưu dưới dạng các file
.txtbên cạnh mỗi hình ảnh. -
Tải xuống: 1 MB, được tự động lấy từ tài nguyên GitHub của Ultralytics trong lần đầu tiên bạn huấn luyện.
-
Bố cục đề xuất:
datasets/dota8/ ├── images/ │ ├── train/ │ └── val/ └── labels/ ├── train/ └── val/
Khám phá DOTA8 on Ultralytics Platform để duyệt qua các ô ảnh trên không với lớp phủ hộp có định hướng của chúng, xem phân phối lớp và bản đồ nhiệt chú thích trong tab Charts, đồng thời sao chép nó để huấn luyện model của riêng bạn trên cloud.
YAML tập dữ liệu#
Một file YAML được sử dụng để xác định cấu hình tập dữ liệu. Nó chứa thông tin về các đường dẫn, lớp và các thông tin liên quan khác của tập dữ liệu. Trong trường hợp của tập dữ liệu DOTA8, file dota8.yaml được duy trì tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dota8.yaml.
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# DOTA8 dataset (8 images from the DOTAv1 split) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/obb/dota8
# Example usage: yolo train model=yolov8n-obb.pt data=dota8.yaml
# parent
# ├── ultralytics
# └── datasets
# └── dota8 ← 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: dota8 # dataset root dir
train: images/train # train images (relative to 'path') 4 images
val: images/val # val images (relative to 'path') 4 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/dota8.zipCách sử dụng#
Để huấn luyện model YOLO26n-obb trên tập dữ liệu DOTA8 trong 100 epochs với kích thước ảnh là 640, bạn có thể sử dụng các đoạn code sau. Để có danh sách toàn diện các tham số có sẵn, hãy tham khảo trang Training của model.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-obb.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="dota8.yaml", epochs=100, imgsz=640)Hình ảnh mẫu và chú thích#
Dưới đây là một số ví dụ về các hình ảnh từ tập dữ liệu DOTA8, cùng với các chú thích (annotation) tương ứng:
- Hình ảnh Mosaiced: Hình ảnh này minh họa một batch huấn luyện bao gồm các hình ảnh từ tập dữ liệu đã được áp dụng kỹ thuật Mosaic. Mosaic là một kỹ thuật được sử dụng trong quá trình huấn luyện nhằm 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à bối cảnh trong mỗi batch 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 model đối với các kích thước đối tượng, tỷ lệ khung hình và bối cảnh khác nhau.
Ví dụ này cho thấy sự đa dạng và phức tạp của các hình ảnh trong tập dữ liệu DOTA8 cũng như những lợi ích của việc sử dụng kỹ thuật mosaicing trong quá trình huấn luyện.
Trích dẫn và Ghi nhận#
Nếu bạn sử dụng tập dữ liệu DOTA 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:
@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 đội ngũ đằng sau các tập dữ liệu DOTA vì nỗ lực đáng khen ngợi của họ trong việc tuyển chọn tập dữ liệu này. Để hiểu rõ toàn diện về tập dữ liệu và các sắc thái của nó, vui lòng truy cập official DOTA website.
Câu hỏi thường gặp#
Tập dữ liệu DOTA8 là một tập dữ liệu object detection có định hướng nhỏ, đa năng, được tạo thành từ 8 hình ảnh đầu tiên từ tập phân tách DOTAv1, với 4 hình ảnh được chỉ định để huấn luyện và 4 cho xác thực. Nó lý tưởng để kiểm thử và gỡ lỗi các model object detection như Ultralytics YOLO26. Do kích thước dễ quản lý và tính đa dạng của nó, nó giúp xác định lỗi pipeline và chạy kiểm tra hợp lý trước khi triển khai các tập dữ liệu lớn hơn. Tìm hiểu thêm về object detection với Ultralytics YOLO26.
Để huấn luyện model YOLO26n-obb trên tập dữ liệu DOTA8 trong 100 epochs với kích thước ảnh là 640, bạn có thể sử dụng các đoạn code sau. Để có các tùy chọn tham số toàn diện, hãy tham khảo trang Training của model.
Ví dụ về Trainingfrom ultralytics import YOLO # Load a model model = YOLO("yolo26n-obb.pt") # load a pretrained model (recommended for training) # Train the model results = model.train(data="dota8.yaml", epochs=100, imgsz=640)Tập dữ liệu DOTA nổi tiếng với benchmark quy mô lớn và những thách thức mà nó đặt ra cho object detection trong ảnh trên không. Tập con DOTA8 là một tập dữ liệu nhỏ hơn, dễ quản lý hơn, lý tưởng cho các bài kiểm tra ban đầu. Bạn có thể truy cập file
dota8.yaml, chứa các đường dẫn, lớp và chi tiết cấu hình, tại GitHub link này.Mosaicing kết hợp nhiều hình ảnh thành một trong quá trình huấn luyện, làm tăng sự đa dạng của các đố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 đối với các kích thước đối tượng, tỷ lệ khung hình và bối cảnh khác nhau. Kỹ thuật này có thể được minh họa trực quan thông qua một batch huấn luyện bao gồm các hình ảnh tập dữ liệu DOTA8 được ghép nối, giúp phát triển model mạnh mẽ. Khám phá thêm về mosaicing và các kỹ thuật huấn luyện trên trang Training của chúng tôi.
Ultralytics YOLO26 cung cấp các tính năng object detection thời gian thực tiên tiến, bao gồm các tính năng như oriented bounding boxes (OBB), instance segmentation, và một pipeline huấn luyện rất linh hoạt. Nó phù hợp cho nhiều ứng dụng khác nhau và cung cấp các model đã được huấn luyện sẵn để fine-tuning hiệu quả. Khám phá thêm về các ưu điểm và cách sử dụng trong Ultralytics YOLO26 documentation.