DOTA8 数据集
介绍
Ultralytics DOTA8 是一个小型但功能丰富的旋转目标检测数据集,由 DOTAv1 分割集的前 8 张图像组成,其中 4 张用于训练,4 张用于验证。该数据集非常适合测试和调试目标检测模型,或用于尝试新的检测方法。由于只有 8 张图像,它足够小,易于管理,且具有足够的多样性,可用于测试训练流程中的错误,并在训练更大的数据集之前进行完整性检查。
数据集结构
-
图像:8 张来自 DOTAv1 的航空切片(4 张训练,4 张验证)。
-
类别:继承了 DOTAv1 的 15 个类别,如飞机、船舶和大型车辆。
-
标签:以 YOLO 格式保存的旋转边界框,存储在每张图像旁边的
.txt文件中。 -
推荐布局:
datasets/dota8/ ├── images/ │ ├── train/ │ └── val/ └── labels/ ├── train/ └── val/
此数据集旨在与 Ultralytics Platform 和 YOLO26 配合使用。
数据集 YAML
YAML (Yet Another Markup Language) 文件用于定义数据集配置。它包含有关数据集路径、类别及其他相关信息。对于 DOTA8 数据集,dota8.yaml 文件维护在 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.zip使用方法
若要在 DOTA8 数据集上训练 YOLO26n-obb 模型 100 个 epoch,且图像大小为 640,你可以使用以下代码片段。有关可用参数的完整列表,请参阅模型训练页面。
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)样本图像和标注
以下是 DOTA8 数据集中的一些图像示例及其对应的标注:
- 马赛克图像:此图像展示了由马赛克数据集图像组成的训练批次。马赛克是一种在训练期间使用的技术,它将多张图像合并为单张图像,以增加每个训练批次中目标和场景的多样性。这有助于提高模型对不同目标尺寸、长宽比和上下文的泛化能力。
该示例展示了 DOTA8 数据集中图像的多样性和复杂性,以及在训练过程中使用马赛克(mosaicing)增强的好处。
引文与致谢
如果你在研究或开发工作中使用了 DOTA 数据集,请引用以下论文:
@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={2021},
volume={},
number={},
pages={1-1},
doi={10.1109/TPAMI.2021.3117983}
}特别感谢 DOTA 数据集背后的团队在整理此数据集方面所做的卓越努力。要全面了解该数据集及其细微差别,请访问 DOTA 官方网站。
常见问题 (FAQ)
什么是 DOTA8 数据集,它该如何使用?
DOTA8 数据集是一个小型、通用的旋转目标检测数据集,由 DOTAv1 分割集的前 8 张图像组成,其中 4 张用于训练,4 张用于验证。它非常适合测试和调试像 Ultralytics YOLO26 这样的目标检测模型。由于其易于管理的规模和多样性,它有助于在部署更大的数据集之前识别流程错误并运行完整性检查。通过 Ultralytics YOLO26 了解更多关于目标检测的信息。
我该如何使用 DOTA8 数据集训练 YOLO26 模型?
若要在 DOTA8 数据集上训练 YOLO26n-obb 模型 100 个 epoch,且图像大小为 640,你可以使用以下代码片段。有关完整的参数选项,请参阅模型训练页面。
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)DOTA 数据集的关键特性是什么?在哪里可以找到 YAML 文件?
The DOTA dataset is known for its large-scale benchmark and the challenges it presents for object detection in aerial images. The DOTA8 subset is a smaller, manageable dataset ideal for initial tests. You can access the dota8.yaml file, which contains paths, classes, and configuration details, at this GitHub link.
马赛克(mosaicing)如何增强 DOTA8 数据集的模型训练?
马赛克技术在训练过程中将多张图像合并为一张,增加了每个批次内对象和上下文的多样性。这提高了模型对不同物体尺寸、纵横比和场景的泛化能力。这种技术可以通过由马赛克后的 DOTA8 数据集图像组成的训练批次进行直观展示,有助于构建稳健的模型。在我们的训练页面中探索更多关于马赛克和训练技术的内容。
为什么我应该在目标检测任务中使用 Ultralytics YOLO26?
Ultralytics YOLO26 提供尖端的实时目标检测功能,包括旋转边界框(OBB)、实例分割以及高度通用的训练流程。它适用于各种应用,并提供预训练模型以实现高效微调。在 Ultralytics YOLO26 文档 中探索更多关于其优势和用法的信息。