Ultralytics YOLO27: Inscreve-te na lista de espera.
Começar

Conjunto de dados DOTA128

Introdução#

O DOTA128 da Ultralytics é um pequeno conjunto de dados de detecção de objetos orientada, composto por 128 imagens do conjunto DOTAv1, usadas tanto para treinamento quanto para validação. Este conjunto de dados é ideal para testar e depurar modelos de caixas delimitadoras orientadas (OBB) ou experimentar novas abordagens de detecção. Com 128 imagens, ele é pequeno o suficiente para ser facilmente gerenciável, mas diversificado o bastante para testar erros em pipelines de treinamento e servir como verificação básica antes do treinamento com conjuntos de dados maiores.

Estrutura do conjunto de dados#

  • Imagens: 128 mosaicos aéreos (todos na pasta train, usados tanto para train como para val) provenientes do DOTAv1.
  • Classes: Inclui as 15 categorias do DOTAv1, como avião, navio e veículo de grandes dimensões.
  • Etiquetas: Caixas delimitadoras orientadas no formato YOLO, guardadas em ficheiros .txt junto a cada imagem.
  • Transferência: 34 MB, transferido automaticamente dos recursos da Ultralytics no GitHub quando treinas pela primeira vez.

Este conjunto de dados destina-se a ser usado com a Ultralytics Platform e o YOLO26.

YAML do conjunto de dados#

Usa-se um ficheiro YAML para definir a configuração do conjunto de dados. O ficheiro contém informações sobre os caminhos, as classes e outros dados relevantes do conjunto. No caso do conjunto de dados DOTA128, o ficheiro dota128.yaml é 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 por 100 épocas, com tamanho de imagem 640, você pode usar os seguintes trechos de código.

Exemplo de treino
from ultralytics import YOLO

# Carregar um modelo
model = YOLO("yolo26n-obb.pt")  # carregue um modelo pré-treinado (recomendado para treinamento)

# Treinar o modelo
results = model.train(data="dota128.yaml", epochs=100, imgsz=640)

Imagens de exemplo e anotações#

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

DOTA128 oriented bounding box dataset training mosaic
  • Imagem em mosaico: esta imagem mostra um lote de treinamento composto por imagens do conjunto de dados organizadas em mosaico. A criação de mosaicos é uma técnica usada durante o treinamento que combina várias imagens numa só para aumentar a variedade de objetos e cenas em 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 mostra a variedade e a complexidade das imagens do conjunto de dados DOTA128, bem como as vantagens de usar mosaicos durante o processo de treino.

Citações e agradecimentos#

Se usares o conjunto de dados DOTA no teu trabalho de investigação ou desenvolvimento, 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={2022},
  volume={44},
  number={11},
  pages={7778-7796},
  doi={10.1109/TPAMI.2021.3117983}
}

Agradecemos à equipe por trás dos conjuntos de dados DOTA por organizá-los. Para ver todos os detalhes do conjunto de dados, visite o site oficial do DOTA.

Perguntas frequentes#

  • O conjunto de dados DOTA128 é um conjunto de dados de detecção de objetos orientada, composto por 128 imagens do conjunto DOTAv1, todas armazenadas na pasta train. O treinamento e a validação usam o mesmo conjunto de imagens, o que o torna ideal para testar e depurar rapidamente modelos OBB, como a Ultralytics YOLO26. Por ser gerenciável e diversificado, ajuda a identificar erros no pipeline e a executar verificações básicas antes do treinamento com conjuntos de dados maiores.

  • Para treinar um modelo YOLO26n-obb com o conjunto de dados DOTA128 durante 100 épocas, com um tamanho de imagem de 640, podes usar os seguintes excertos de código. Para consultar todas as opções de argumentos, visita a página de treino do modelo.

    Exemplo de treino
    from ultralytics import YOLO
    
    # Carregar um modelo
    model = YOLO("yolo26n-obb.pt")  # carregue um modelo pré-treinado (recomendado para treinamento)
    
    # Treinar o modelo
    results = model.train(data="dota128.yaml", epochs=100, imgsz=640)
  • O conjunto de dados DOTA é conhecido pelo benchmark em grande escala e pelos desafios que apresenta para a detecção de objetos em imagens aéreas. O subconjunto DOTA128 oferece mais diversidade do que DOTA8, mantendo-se gerenciável para testes iniciais. O arquivo de configuração dota128.yaml, que contém caminhos, classes e detalhes de configuração, é mantido no repositório do Ultralytics no GitHub.

  • Em termos de tamanho, o DOTA128 (128 imagens) situa-se entre o DOTA8 (8 imagens) e o conjunto de dados completo DOTA-v1 (1.869 imagens de treino e validação anotadas):

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

    O DOTA128 oferece um bom equilíbrio: proporciona mais diversidade do que o DOTA8 e é muito mais fácil de gerir do que o conjunto de dados DOTA completo, para experimentação e desenvolvimento inicial de modelos.

  • A mosaicagem combina várias imagens em uma durante o treinamento, aumentando a variedade de objetos e contextos em cada lote. Isso melhora a capacidade do modelo de generalizar para diferentes tamanhos de objetos, proporções e cenários.

  • Ultralytics YOLO26 oferece suporte à detecção em tempo real com caixas delimitadoras orientadas (OBB), além de outras tarefas, como segmentação de instâncias, tudo em um único pipeline de treinamento. Os modelos OBB pré-treinados tornam o ajuste fino com dados aéreos eficiente.

Comentários

Faz uma pergunta, partilha os teus resultados ou ajuda alguém.