Датасет DOTA128#
Введение#
Датасет Ultralytics DOTA128 — это небольшой, но универсальный датасет с ориентированными ограничивающими рамками для обнаружения объектов, состоящий из 128 изображений из набора DOTAv1, которые служат как обучающей, так и валидационной выборкой. Этот датасет идеально подходит для тестирования и отладки моделей с ориентированными ограничивающими рамками (OBB), а также для экспериментов с новыми подходами к обнаружению. Имея 128 изображений, он достаточно мал для легкого управления и при этом достаточно разнообразен, чтобы тестировать обучающие конвейеры на наличие ошибок и служить проверкой работоспособности перед обучением на более крупных датасетах.
Структура датасета#
- Изображения: 128 аэрофотоснимков (все находятся в папке train и используются и для обучения, и для валидации), полученных из DOTAv1.
- Классы: включает 15 категорий DOTAv1, таких как самолёт, корабль и крупное транспортное средство.
- Метки: ориентированные ограничивающие рамки в формате YOLO, сохранённые в файлах
.txtрядом с каждым изображением. - Загрузка: 34 МБ, автоматически загружаются из ресурсов Ultralytics на GitHub при первом запуске обучения.
Этот датасет предназначен для использования с Ultralytics Platform и YOLO26.
YAML датасета#
Для определения конфигурации датасета используется YAML-файл. Он содержит сведения о путях к датасету, классах и другую необходимую информацию. В случае датасета DOTA128 файл dota128.yaml хранится по адресу https://github.com/ultralytics/ultralytics/blob/main/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Использование#
Чтобы обучить модель YOLO26n-obb на датасете DOTA128 в течение 100 эпох с размером изображения 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="dota128.yaml", epochs=100, imgsz=640)Примеры изображений и аннотаций#
Вот несколько примеров изображений из датасета DOTA128 вместе с соответствующими аннотациями:
- Мозаичное изображение: на этом изображении показан обучающий батч, составленный из мозаичных изображений датасета. Мозаицирование — это применяемая во время обучения техника, которая объединяет несколько изображений в одно, чтобы увеличить разнообразие объектов и сцен в каждом обучающем батче. Это помогает улучшить способность модели обобщать данные для объектов разных размеров, с разными соотношениями сторон и в разных контекстах.
Пример демонстрирует разнообразие и сложность изображений в датасете DOTA128, а также преимущества использования мозаичного объединения в процессе обучения.
Цитирование и благодарности#
Если ты используешь датасет 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={2022},
volume={44},
number={11},
pages={7778-7796},
doi={10.1109/TPAMI.2021.3117983}
}Отдельно благодарим команду, стоящую за датасетами DOTA, за её значительный вклад в создание этого датасета. Для полного понимания датасета и его особенностей посетите официальный сайт DOTA.
Часто задаваемые вопросы#
Датасет DOTA128 — это универсальный датасет для ориентированного обнаружения объектов, состоящий из 128 изображений из набора DOTAv1, которые хранятся в папке train. Для обучения и валидации используется один и тот же набор изображений, что делает датасет идеальным для быстрого тестирования и отладки рабочих процессов. Он подходит для тестирования и отладки моделей OBB, таких как Ultralytics YOLO26. Благодаря удобному размеру и разнообразию он помогает выявлять ошибки конвейера и выполнять проверки работоспособности перед развёртыванием более крупных датасетов. Узнай больше об обнаружении объектов с ориентированными рамками с помощью Ultralytics YOLO26.
Чтобы обучить модель YOLO26n-obb на датасете DOTA128 в течение 100 эпох с размером изображения 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="dota128.yaml", epochs=100, imgsz=640)Датасет DOTA известен своим крупномасштабным бенчмарком и сложностями, которые он представляет для обнаружения объектов на аэрофотоснимках. Подмножество DOTA128 более разнообразно, чем DOTA8, но при этом остаётся удобным для первоначального тестирования. Файл
dota128.yaml, содержащий пути, классы и сведения о конфигурации, можно получить по этой ссылке на GitHub.DOTA128 (128 изображений) занимает промежуточное положение по размеру между DOTA8 (8 изображений) и полным датасетом DOTA-v1 (1869 размеченных изображений для обучения и валидации):
- DOTA8: Содержит всего 8 изображений (4 для обучения и 4 для валидации) — идеально подходит для быстрых тестов и отладки
- DOTA128: Содержит 128 изображений (все находятся в папке train и используются и для обучения, и для валидации) — обеспечивает баланс между размером и разнообразием
- Полный DOTA-v1: Содержит 1869 размеченных изображений для обучения и валидации — комплексный, но ресурсоемкий набор
DOTA128 обеспечивает оптимальный компромисс: он более разнообразен, чем DOTA8, но при этом значительно удобнее полного датасета DOTA для экспериментов и первоначальной разработки моделей.
Мозаичное объединение сочетает несколько изображений в одно во время обучения, увеличивая разнообразие объектов и контекстов в каждом пакете. Это улучшает способность модели обобщать данные для объектов разных размеров, соотношений сторон и сцен. Эту технику можно наглядно продемонстрировать с помощью пакета для обучения, составленного из мозаично объединённых изображений датасета DOTA128, что способствует разработке устойчивых моделей. Узнай больше о мозаичном объединении и методах обучения на нашей странице обучения.
Ultralytics YOLO26 обеспечивает передовые возможности детектирования объектов в реальном времени, включая ориентированные ограничивающие рамки (OBB), сегментацию экземпляров и чрезвычайно универсальный конвейер обучения. Модель подходит для различных приложений и предлагает предварительно обученные модели для эффективной тонкой настройки. Подробнее о преимуществах и использовании можно узнать в документации Ultralytics YOLO26.



