Ir al contenido

Conjunto de datos DOTA128

Introducción

Ultralytics DOTA128 es un conjunto de datos de detección de objetos pequeño pero versátil, compuesto por 128 imágenes del conjunto DOTAv1, 128 para entrenamiento y validación. Este conjunto de datos es ideal para probar y depurar modelos de cuadros delimitadores orientados (OBB) o para experimentar con nuevos enfoques de detección. Con 128 imágenes, es lo suficientemente pequeño como para ser fácil de manejar, pero lo suficientemente diverso como para probar los procesos de entrenamiento en busca de errores y actuar como una comprobación de cordura antes de entrenar conjuntos de datos más grandes.

Estructura del conjunto de datos

  • Imágenes: 128 mosaicos aéreos (todos en la carpeta «train», utilizados tanto para trenes como para val) procedentes de DOTAv1.
  • Clases: Hereda las 15 categorías DOTAv1, como avión, barco y vehículo grande.
  • Etiquetas: Cajas delimitadoras orientadas en formato YOLO guardadas como .txt archivos junto a cada imagen.

Este conjunto de datos está diseñado para usarse con Ultralytics Platform y YOLO26.

YAML del conjunto de datos

Se utiliza un archivo YAML (Yet Another Markup Language) para definir la configuración del conjunto de datos. Contiene información sobre las rutas, las clases y otros datos relevantes del conjunto de datos. En el caso del conjunto de datos DOTA128, el dota128.yaml archivo se mantiene en https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dota128.yaml.

ultralytics.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 entrenar unobb en el conjunto de datos DOTA128 durante 100 épocas con un tamaño de imagen de 640, puede utilizar los siguientes fragmentos de código. Para obtener una lista completa de los argumentos disponibles, consulte la página Entrenamiento del modelo.

Ejemplo de entrenamiento

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)
# Start training from a pretrained *.pt model
yolo obb train data=dota128.yaml model=yolo26n-obb.pt epochs=100 imgsz=640

sample_images y anotaciones

A continuación se muestran algunos ejemplos de imágenes del conjunto de datos DOTA128, junto con sus correspondientes anotaciones:

Mosaico de entrenamiento del conjunto de datos de cuadros delimitadores orientados a DOTA128

  • Imagen en mosaico: Esta imagen muestra un lote de entrenamiento compuesto por imágenes en mosaico del conjunto de datos. El mosaico es una técnica utilizada durante el entrenamiento que combina varias imágenes en una sola imagen para aumentar la variedad de objetos y escenas dentro de cada lote de entrenamiento. Esto ayuda a mejorar la capacidad del modelo para generalizar a diferentes tamaños de objetos, relaciones de aspecto y contextos.

El ejemplo muestra la variedad y complejidad de las imágenes del conjunto de datos DOTA128 y las ventajas de utilizar mosaicos durante el proceso de entrenamiento.

Citas y agradecimientos

Si utiliza el conjunto de datos DOTA en su trabajo de investigación o desarrollo, cite el siguiente artículo:

@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}
}

Un agradecimiento especial al equipo detrás de los conjuntos de datos DOTA por su encomiable esfuerzo en la curación de este conjunto de datos. Para una comprensión exhaustiva del conjunto de datos y sus matices, visite el sitio web oficial de DOTA.

Preguntas frecuentes

¿Qué es el conjunto de datos DOTA128 y cómo se puede utilizar?

El conjunto de datos DOTA128 es un conjunto de datos versátil orientado a la detección de objetos compuesto por 128 imágenes del conjunto DOTAv1, todas ellas almacenadas en la carpeta train. Tanto el entrenamiento como la validación utilizan el mismo conjunto de imágenes, lo que lo hace ideal para pruebas rápidas y flujos de trabajo de depuración. Es ideal para probar y depurar modelos OBB como Ultralytics . Debido a su tamaño manejable y su diversidad, ayuda a identificar errores en el proceso y a realizar comprobaciones de integridad antes de implementar conjuntos de datos más grandes. Obtenga más información sobre la detección OBB con Ultralytics .

¿Cómo puedo entrenar un modelo YOLO26 utilizando el conjunto de datos DOTA128?

Para entrenar unobb en el conjunto de datos DOTA128 durante 100 épocas con un tamaño de imagen de 640, puede utilizar los siguientes fragmentos de código. Para obtener opciones de argumentos completas, consulte la página Entrenamiento del modelo.

Ejemplo de entrenamiento

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)
# Start training from a pretrained *.pt model
yolo obb train data=dota128.yaml model=yolo26n-obb.pt epochs=100 imgsz=640

¿Cuáles son las principales características del conjunto de datos DOTA y dónde puedo acceder al archivo YAML?

El conjunto de datos DOTA es conocido por su referencia a gran escala y los retos que plantea para la detección de objetos en imágenes aéreas. El subconjunto DOTA128 ofrece más diversidad que DOTA8, sin dejar de ser manejable para las pruebas iniciales. Puede acceder al dota128.yaml archivo, que contiene rutas, clases y detalles de configuración, en este Enlace de GitHub.

¿En qué se diferencia DOTA128 de otras variantes del conjunto de datos DOTA?

DOTA128 (128 imágenes) se sitúa entre DOTA8 (8 imágenes) y el conjunto de datos completo DOTA-v1 (1869 imágenes) en términos de tamaño:

  • DOTA8: Contiene solo 8 imágenes (4 trenes, 4 val) - ideal para pruebas rápidas y depuración.
  • DOTA128: Contiene 128 imágenes (todas en la carpeta train, utilizadas tanto para train como para val) - equilibrio entre tamaño y diversidad.
  • DOTA-v1 completo: contiene 1869 imágenes; es exhaustivo, pero consume muchos recursos.

DOTA128 ofrece un buen término medio, ya que proporciona más diversidad que DOTA8 y, al mismo tiempo, sigue siendo mucho más manejable que el conjunto de datos completo de DOTA para la experimentación y el desarrollo inicial de modelos.

¿Cómo mejora el mosaico el entrenamiento de modelos con el conjunto de datos DOTA128?

El mosaico combina varias imágenes en una sola durante el entrenamiento, lo que aumenta la variedad de objetos y contextos dentro de cada lote. Esto mejora la capacidad del modelo para generalizar diferentes tamaños de objetos, relaciones de aspecto y escenas. Esta técnica se puede demostrar visualmente mediante un lote de entrenamiento compuesto por imágenes del conjunto de datos DOTA128 en mosaico, lo que ayuda a desarrollar un modelo robusto. Obtenga más información sobre el mosaico y las técnicas de entrenamiento en nuestra página de Entrenamiento.

¿Por qué debería utilizar Ultralytics para tareas de detección de objetos orientadas?

Ultralytics YOLO26 ofrece capacidades de detect de objetos en tiempo real de vanguardia, incluyendo características como cajas delimitadoras orientadas (obb), segmentación de instancias y un pipeline de entrenamiento altamente versátil. Es adecuado para diversas aplicaciones y ofrece modelos preentrenados para un ajuste fino eficiente. Explore más a fondo las ventajas y el uso en la documentación de Ultralytics YOLO26.



📅 Creado hace 0 días ✏️ Actualizado hace 0 días
Laughing-q

Comentarios