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 PlatformYOLO26 配合使用。

数据集 YAML

YAML (Yet Another Markup Language) 文件用于定义数据集配置。它包含有关数据集路径、类别及其他相关信息。对于 DOTA8 数据集,dota8.yaml 文件维护在 https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dota8.yaml

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 oriented bounding box dataset training mosaic
  • 马赛克图像:此图像展示了由马赛克数据集图像组成的训练批次。马赛克是一种在训练期间使用的技术,它将多张图像合并为单张图像,以增加每个训练批次中目标和场景的多样性。这有助于提高模型对不同目标尺寸、长宽比和上下文的泛化能力。

该示例展示了 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 文档 中探索更多关于其优势和用法的信息。

评论