Conjunto de dados DOTA8

Introdução

O DOTA8 da Ultralytics é um conjunto de dados de detecção de objetos orientados pequeno, porém versátil, composto pelas 8 primeiras imagens do conjunto dividido DOTAv1, sendo 4 para treinamento e 4 para validação. Este conjunto de dados é ideal para testar e depurar modelos de detecção de objetos, ou para experimentar novas abordagens de detecção. Com 8 imagens, ele é pequeno o suficiente para ser facilmente gerenciável, mas diverso o suficiente para testar pipelines de treinamento em busca de erros e atuar como uma verificação de integridade antes de treinar conjuntos de dados maiores.

Estrutura do Dataset

  • Imagens: 8 blocos aéreos (4 para treino, 4 para val) provenientes do DOTAv1.

  • Classes: Herda as 15 categorias do DOTAv1, como avião, navio e veículo grande.

  • Rótulos: Caixas delimitadoras orientadas no formato YOLO salvas como arquivos .txt ao lado de cada imagem.

  • Layout recomendado:

    datasets/dota8/
    ├── images/
    │   ├── train/
    │   └── val/
    └── labels/
        ├── train/
        └── val/

Este conjunto de dados destina-se ao uso com a Plataforma Ultralytics e YOLO26.

YAML do Dataset

Um arquivo YAML (Yet Another Markup Language) é usado para definir a configuração do conjunto de dados. Ele contém informações sobre os caminhos, classes e outros dados relevantes do conjunto. No caso do conjunto de dados DOTA8, o arquivo dota8.yaml é mantido em 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

Utilização

Para treinar um modelo YOLO26n-obb no conjunto de dados DOTA8 por 100 épocas com um tamanho de imagem de 640, podes usar os seguintes trechos de código. Para uma lista abrangente de argumentos disponíveis, consulta a página de Treinamento do modelo.

Exemplo de Treino
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)

Amostra de Imagens e Anotações

Aqui estão alguns exemplos de imagens do conjunto de dados DOTA8, juntamente com as suas anotações correspondentes:

DOTA8 oriented bounding box dataset training mosaic
  • Imagem em mosaico: Esta imagem demonstra um lote de treino composto por imagens do conjunto de dados em mosaico. A técnica de mosaico é um método utilizado durante o treino que combina várias imagens numa única para aumentar a variedade de objetos e cenas dentro de cada lote de treino. Isto ajuda a melhorar a capacidade do modelo de generalizar para diferentes tamanhos de objetos, proporções e contextos.

O exemplo mostra a variedade e complexidade das imagens no conjunto de dados DOTA8 e os benefícios de usar mosaico durante o processo de treinamento.

Citações e Agradecimentos

Se usares o conjunto de dados DOTA no teu trabalho de pesquisa ou desenvolvimento, por favor cita o seguinte artigo:

Citação
@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}
}

Um agradecimento especial à equipe por trás dos conjuntos de dados DOTA pelo seu louvável esforço na curadoria deste conjunto de dados. Para uma compreensão exaustiva do conjunto de dados e das suas nuances, visita o site oficial do DOTA.

FAQ

O que é o conjunto de dados DOTA8 e como pode ser usado?

O conjunto de dados DOTA8 é um conjunto de dados de detecção de objetos orientados, pequeno e versátil, composto pelas 8 primeiras imagens do conjunto dividido DOTAv1, com 4 imagens designadas para treinamento e 4 para validação. É ideal para testar e depurar modelos de detecção de objetos como o Ultralytics YOLO26. Devido ao seu tamanho gerenciável e diversidade, ajuda a identificar erros de pipeline e a realizar verificações de integridade antes de implementar conjuntos de dados maiores. Aprende mais sobre detecção de objetos com o Ultralytics YOLO26.

Como posso treinar um modelo YOLO26 usando o conjunto de dados DOTA8?

Para treinar um modelo YOLO26n-obb no conjunto de dados DOTA8 por 100 épocas com um tamanho de imagem de 640, podes usar os seguintes trechos de código. Para opções de argumentos abrangentes, consulta a página de Treinamento do modelo.

Exemplo de Treino
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)

Quais são as principais características do conjunto de dados DOTA e onde posso acessar o arquivo YAML?

O conjunto de dados DOTA é conhecido pelo seu benchmark em larga escala e pelos desafios que apresenta para a detecção de objetos em imagens aéreas. O subconjunto DOTA8 é um conjunto de dados menor e gerenciável, ideal para testes iniciais. Podes acessar o arquivo dota8.yaml, que contém caminhos, classes e detalhes de configuração, neste link do GitHub.

Como o mosaico melhora o treinamento do modelo com o conjunto de dados DOTA8?

O mosaico combina várias imagens numa só durante o treinamento, aumentando a variedade de objetos e contextos dentro de cada lote. Isso melhora a capacidade de um modelo de generalizar para diferentes tamanhos de objetos, proporções e cenas. Esta técnica pode ser demonstrada visualmente através de um lote de treinamento composto por imagens do conjunto de dados DOTA8 em mosaico, ajudando no desenvolvimento de modelos robustos. Explora mais sobre mosaico e técnicas de treinamento na nossa página de Treinamento.

Por que devo usar o Ultralytics YOLO26 para tarefas de detecção de objetos?

O Ultralytics YOLO26 oferece capacidades de detecção de objetos em tempo real de última geração, incluindo recursos como caixas delimitadoras orientadas (OBB), segmentação de instâncias e um pipeline de treinamento altamente versátil. É adequado para várias aplicações e oferece modelos pré-treinados para um ajuste fino eficiente. Explora mais sobre as vantagens e o uso na documentação do Ultralytics YOLO26.

Comentários