Conjunto de dados DOTA128

Introdução

UltralyticsO DOTA128 é um pequeno mas versátil conjunto de dados de detecção object detection orientado, composto por 128 imagens do conjunto DOTAv1, 128 para treino e validação. Este conjunto de dados é ideal para testar e depurar modelos de caixas delimitadoras orientadas (OBB), ou para experimentar novas abordagens de detecção. Com 128 imagens, é suficientemente pequeno para ser facilmente gerível, mas suficientemente diversificado para testar pipelines de treino quanto a erros e servir como uma verificação de integridade antes de treinar conjuntos de dados maiores.

Estrutura do Dataset

  • Imagens: 128 mosaicos aéreos (todos na pasta train, usados tanto para treino como para validação) provenientes do DOTAv1.
  • Classes: Herda as 15 categorias do DOTAv1, tais como avião, navio e veículos grandes.
  • Labels: Caixas delimitadoras orientadas no formato YOLO guardadas como ficheiros .txt ao lado de cada imagem.

Este dataset destina-se ao uso com Ultralytics Platform e YOLO26.

YAML do Dataset

Um ficheiro YAML (Yet Another Markup Language) é usado para definir a configuração do conjunto de dados. Contém informações sobre os caminhos, classes e outras informações relevantes do conjunto de dados. No caso do conjunto de dados DOTA128, o dota128.yaml ficheiro é mantido em https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dota128.yaml.

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

Uso

Para treinar um modelo YOLO26n-obb no conjunto de dados DOTA128 durante 100 epochs com um tamanho de imagem de 640, podes utilizar os seguintes fragmentos de código. Para uma lista completa dos argumentos disponíveis, consulta o modelo Treinamento.

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

Exemplos de Imagens e Anotações

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

DOTA128 oriented bounding box dataset training mosaic
  • Imagem em Mosaico: Esta imagem demonstra um lote de treinamento composto por imagens do dataset em mosaico. A técnica de mosaico é usada durante o treinamento e combina múltiplas imagens em uma única imagem para aumentar a variedade de objetos e cenas dentro de cada lote de treinamento. Isso ajuda a melhorar a capacidade do modelo de generalizar para diferentes tamanhos de objetos, proporções e contextos.

O exemplo demonstra a variedade e complexidade das imagens no conjunto de dados DOTA128 e os benefícios da utilização de mosaico durante o processo de treino.

Citações e Agradecimentos

Se utilizares o conjunto de dados DOTA na tua investigação ou trabalho de 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}
}

Uma nota especial de agradecimento à equipa por detrá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, por favor visita o site oficial do DOTA.

FAQ

O que é o conjunto de dados DOTA128 e como pode ser utilizado?

O conjunto de dados DOTA128 é um conjunto de dados de detecção de objetos orientados versátil constituído por 128 imagens do conjunto DOTAv1, todas armazenadas na pasta train. Tanto o treino como a validação utilizam o mesmo conjunto de imagens, tornando-o ideal para fluxos de trabalho de teste e depuração rápidos. É ideal para testar e depurar modelos OBB como o Ultralytics YOLO26. Devido ao seu tamanho manejável e diversidade, ajuda a identificar erros no pipeline e a realizar verificações de integridade antes de implementar conjuntos de dados maiores. Sabe mais sobre detecção OBB com Ultralytics YOLO26.

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

Para treinar um modelo YOLO26n-obb no conjunto de dados DOTA128 durante 100 épocas com um tamanho de imagem de 640, podes usar os seguintes fragmentos de código. Para opções de argumentos abrangentes, consulta o modelo Treinamento.

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

Quais são as principais características do conjunto de dados DOTA e onde posso aceder ao ficheiro 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 DOTA128 proporciona mais diversidade do que o DOTA8, mantendo-se manejável para testes iniciais. Podes aceder ao ficheiro dota128.yaml, que contém caminhos, classes e detalhes de configuração, neste link do GitHub.

Como é que o DOTA128 se compara a outras variantes do conjunto de dados DOTA?

O DOTA128 (128 imagens) situa-se entre o conjunto de dados DOTA8 (8 imagens) e o dataset DOTA-v1 (1.869 imagens) em termos de tamanho:

  • DOTA8: Contém apenas 8 imagens (4 de treino, 4 de validação) - ideal para testes rápidos e depuração
  • DOTA128: Contém 128 imagens (todas na pasta train, usadas tanto para treino como para validação) - equilibrado entre tamanho e diversidade
  • DOTA-v1 completo: Contém 1.869 imagens - abrangente mas exige muitos recursos

O DOTA128 proporciona um bom meio-termo, oferecendo mais diversidade do que o DOTA8, mantendo-se muito mais manejável do que o conjunto de dados DOTA completo para experimentação e desenvolvimento inicial de modelos.

Como é que o mosaico melhora o treino de modelos com o conjunto de dados DOTA128?

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

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

O Ultralytics YOLO26 oferece capacidades de detecção de objetos em tempo real de última geração, incluindo funcionalidades como caixas delimitadoras orientadas (OBB), instance segmentation, e um pipeline de treino 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 a utilização na documentação do Ultralytics YOLO26.

Comentários