Descripción general de los datasets#
Ultralytics ofrece compatibilidad con varios datasets para facilitar tareas de visión artificial como la detección, la segmentación de instancias, la segmentación semántica, la estimación de profundidad, la clasificación, la estimación de la pose y las cajas delimitadoras orientadas (OBB). A continuación se muestra una lista de los principales datasets de Ultralytics, seguida de un resumen de cada tarea de visión artificial y de los datasets correspondientes. El modo de seguimiento funciona sobre modelos de detección, segmentación, pose y OBB sin entrenamiento específico para el tracker; consulta los datasets de seguimiento.
Watch: Ultralytics Datasets Overview
Detección de objetos#
La detección de objetos mediante cajas delimitadoras es una técnica de visión artificial que consiste en detectar y localizar objetos en una imagen dibujando una caja delimitadora alrededor de cada objeto.
- African-wildlife: un dataset con imágenes de fauna africana, incluidos búfalos, elefantes, rinocerontes y cebras.
- Argoverse: un dataset con datos de seguimiento 3D y predicción del movimiento en entornos urbanos, con anotaciones detalladas.
- Brain-tumor: un dataset para detectar tumores cerebrales que incluye imágenes de resonancias magnéticas o tomografías computarizadas, con detalles sobre la presencia, la ubicación y las características de los tumores.
- COCO: Common Objects in Context (COCO) es un dataset a gran escala de detección, segmentación y generación de descripciones de objetos, con 80 categorías de objetos.
- COCO8: Un subconjunto más pequeño de las primeras 8 imágenes de COCO train2017, 4 para entrenamiento y 4 para validación, adecuado para pruebas rápidas.
- COCO8-Grayscale: una versión en escala de grises de COCO8 creada al convertir RGB a escala de grises, útil para evaluar modelos de un solo canal.
- COCO8-Multispectral: una versión multiespectral de COCO8 con 10 canales, creada mediante la interpolación de longitudes de onda RGB, útil para evaluar modelos sensibles al espectro.
- COCO12-Formats: Un conjunto de datos de prueba de 12 imágenes que abarca los 12 formatos de imagen compatibles (AVIF, BMP, DNG, HEIC, JP2, JPEG, JPG, MPO, PNG, TIF, TIFF, WebP) para validar canales de carga de imágenes.
- COCO128: un subconjunto más pequeño de las 128 primeras imágenes de COCO train2017, adecuado para pruebas.
- Construction-PPE: un dataset de imágenes de obras de construcción anotadas con equipos de seguridad esenciales, como cascos, chalecos, guantes, botas y gafas, junto con etiquetas para los equipos que faltan, que facilita el desarrollo de modelos de IA para el cumplimiento normativo y la protección de los trabajadores.
- Global Wheat 2020: un dataset con imágenes de espigas de trigo para el Global Wheat Challenge 2020.
- HomeObjects-3K: un dataset de escenas de interior anotadas con 12 objetos domésticos habituales, ideal para desarrollar y probar modelos de visión artificial en sistemas de hogares inteligentes, robótica y realidad aumentada.
- KITTI: Un conocido conjunto de datos de conducción autónoma con entradas estéreo, LiDAR y GPS/IMU, utilizado para la detección de objetos 2D en variadas escenas de carretera.
- LVIS: un dataset a gran escala de detección, segmentación y generación de descripciones de objetos, con 1203 categorías de objetos.
- Medical-pills: un dataset con imágenes etiquetadas de pastillas médicas, diseñado para ayudar en tareas como el control de calidad farmacéutico, la clasificación y la garantía del cumplimiento de las normas del sector.
- Objects365: un dataset de alta calidad y a gran escala para la detección de objetos, con 365 categorías de objetos y más de 600K imágenes anotadas.
- OpenImagesV7: un dataset completo de Google con 1,7 M de imágenes de entrenamiento y 42k imágenes de validación.
- RF100: un benchmark diverso de detección de objetos con 100 datasets que abarcan siete dominios de imágenes para una evaluación completa de modelos.
- Signature: un dataset con imágenes de diversos documentos que incluyen firmas anotadas, compatible con la investigación sobre verificación de documentos y detección de fraudes.
- SKU-110K: un dataset con detección densa de objetos en entornos comerciales, con más de 11K imágenes y 1,7 millones de cajas delimitadoras.
- TT100K: El conjunto de datos de señales de tráfico Tsinghua-Tencent 100K con 16.817 imágenes de vistas de calles en 221 categorías de señales.
- VisDrone: un dataset con datos de detección de objetos y seguimiento multiobjeto procedentes de imágenes capturadas por drones, con más de 10K imágenes y secuencias de vídeo.
- VOC: el dataset Pascal Visual Object Classes (VOC) para la detección y segmentación de objetos, con 20 clases de objetos y más de 11K imágenes.
- xView: un dataset para la detección de objetos en imágenes aéreas, con 60 categorías de objetos y más de 1 millón de objetos anotados.
Segmentación de instancias#
La segmentación de instancias es una técnica de visión artificial que consiste en identificar y localizar objetos en una imagen a nivel de píxel. A diferencia de la segmentación semántica, que solo clasifica cada píxel, la segmentación de instancias distingue entre distintas instancias de una misma clase.
- Carparts-seg: un dataset diseñado específicamente para identificar piezas de vehículos, orientado a necesidades de diseño, fabricación e investigación. Sirve tanto para tareas de detección de objetos como de segmentación.
- COCO: un dataset a gran escala diseñado para tareas de detección, segmentación y generación de descripciones de objetos, con más de 200K imágenes etiquetadas.
- COCO8-seg: un dataset más pequeño para tareas de segmentación de instancias, que contiene un subconjunto de 8 imágenes de COCO con anotaciones de segmentación.
- COCO128-seg: un dataset más pequeño para tareas de segmentación de instancias, que contiene un subconjunto de 128 imágenes de COCO con anotaciones de segmentación.
- Crack-seg: un dataset creado específicamente para detectar grietas en carreteras y paredes, aplicable tanto a tareas de detección de objetos como de segmentación.
- Package-seg: un dataset adaptado para identificar paquetes en almacenes o entornos industriales, adecuado tanto para aplicaciones de detección de objetos como de segmentación.
Segmentación semántica#
La segmentación semántica asigna una etiqueta de clase a cada píxel de una imagen y genera mapas densos de la escena para aplicaciones como la conducción autónoma, la interpretación de escenas y la cartografía de la cobertura terrestre.
- Cityscapes: un dataset de segmentación semántica de escenas urbanas con 19 clases de entrenamiento.
- Cityscapes8: un subconjunto compacto de Cityscapes con 8 imágenes para comprobar rápidamente los pipelines de segmentación semántica.
- ADE20K: un dataset de interpretación de escenas con 150 clases semánticas.
Estimación de profundidad#
La estimación monocular de profundidad predice un mapa de profundidad por píxel, expresado en metros, a partir de una única imagen RGB, y permite la reconstrucción 3D de escenas, la navegación de robots y aplicaciones de AR/VR.
- Depth8: un subconjunto compacto de SUN RGB-D con 8 imágenes para comprobar rápidamente los pipelines.
- ARKitScenes: RGB-D de interiores real capturado con Apple ARKit LiDAR, la fuente de entrenamiento real más grande.
- SUN RGB-D: Escenas de interiores reales capturadas con cuatro sensores RGB-D diferentes.
- DIODE: Profundidad densa en interiores y exteriores a partir de un escáner láser de calidad topográfica.
- Hypersim: Escenas de interiores sintéticas fotorrealistas con profundidad perfecta por píxel.
- TartanAir: Entornos de AirSim sintéticos con profundidad densa hasta ~80 m.
- Virtual KITTI 2: Recreación sintética de escenas de conducción de KITTI con profundidad densa.
- KITTI: Escenas de conducción autónoma en exteriores del mundo real con profundidad de Velodyne LiDAR, también la prueba de rendimiento KITTI Eigen.
- ImageNet (pseudo-labeled): Imágenes de ImageNet-1K con pseudoetiquetas de Depth Anything 3 para destilación.
- NYU Depth V2: un benchmark estándar de profundidad en interiores capturado con una Microsoft Kinect v1.
- ETH3D: Prueba de rendimiento de escáner láser de alta precisión para interiores y exteriores.
- Make3D: Prueba de rendimiento de campus en exteriores fuera de distribución.
- iBims-1: Prueba de rendimiento de alta calidad en interiores para bordes de profundidad y superficies planas.
Clasificación#
La clasificación de imágenes es una tarea de visión artificial que consiste en categorizar una imagen en una o varias clases o categorías predefinidas según su contenido visual.
- Caltech 101: un dataset con imágenes de 101 categorías de objetos para tareas de clasificación de imágenes.
- Caltech 256: una versión ampliada de Caltech 101 con 256 categorías de objetos e imágenes más desafiantes.
- CIFAR-10: un dataset de 60K imágenes en color de 32x32 en 10 clases, con 6K imágenes por clase.
- CIFAR-100: una versión ampliada de CIFAR-10 con 100 categorías de objetos y 600 imágenes por clase.
- Fashion-MNIST: un dataset compuesto por 70.000 imágenes en escala de grises de 10 categorías de moda para tareas de clasificación de imágenes.
- ImageNet: un dataset a gran escala para la detección de objetos y la clasificación de imágenes, con más de 14 millones de imágenes y 20.000 categorías.
- ImageNet-10: un subconjunto más pequeño de ImageNet con 10 categorías para experimentar y probar más rápidamente.
- Imagenette: un subconjunto más pequeño de ImageNet que contiene 10 clases fáciles de distinguir para entrenar y probar más rápidamente.
- Imagewoof: un subconjunto más desafiante de ImageNet que contiene 10 categorías de razas de perros para tareas de clasificación de imágenes.
- MNIST: un dataset de 70.000 imágenes en escala de grises de dígitos escritos a mano para tareas de clasificación de imágenes.
- MNIST160: las 8 primeras imágenes de cada dígito (0-9) de las particiones de entrenamiento y prueba de MNIST. El dataset contiene 160 imágenes en total.
Estimación de pose#
La estimación de la pose es una técnica utilizada para determinar la pose del objeto con respecto a la cámara o al sistema de coordenadas del mundo. Consiste en identificar puntos clave o articulaciones de objetos, especialmente de personas o animales.
- COCO: un dataset a gran escala con anotaciones de poses humanas diseñado para tareas de estimación de la pose.
- COCO8-pose: un dataset más pequeño para tareas de estimación de la pose, que contiene un subconjunto de 8 imágenes de COCO con anotaciones de poses humanas.
- Dog-pose: un dataset completo con aproximadamente 8.500 imágenes centradas en perros, anotadas con 24 puntos clave por perro y adaptadas para tareas de estimación de la pose.
- Hand-Keypoints: un dataset conciso con más de 26.000 imágenes centradas en manos humanas, anotadas con 21 puntos clave por mano y diseñado para tareas de estimación de la pose.
- Tiger-pose: un dataset compacto compuesto por 263 imágenes centradas en tigres, anotadas con 12 puntos clave por tigre para tareas de estimación de la pose.
Cajas delimitadoras orientadas (OBB)#
Las cajas delimitadoras orientadas (OBB) son un método de visión artificial para detectar objetos inclinados en imágenes mediante cajas delimitadoras rotadas, utilizado habitualmente en imágenes aéreas y de satélite. A diferencia de las cajas delimitadoras tradicionales, las OBB se ajustan mejor a los objetos con distintas orientaciones.
- DOTA-v2: un popular dataset de imágenes aéreas con OBB, con 1,7 millones de instancias y 11.268 imágenes.
- DOTA8: un subconjunto más pequeño de las 8 primeras imágenes del conjunto dividido DOTAv1, 4 para entrenamiento y 4 para validación, adecuado para pruebas rápidas.
- DOTA128: un subconjunto de 128 imágenes del dataset DOTA, con 128 imágenes para entrenamiento y validación, que ofrece un buen equilibrio entre tamaño y diversidad para probar modelos OBB.
Contribuir con nuevos datasets#
Contribuir con un nuevo dataset implica varios pasos para garantizar que se integre correctamente con la infraestructura existente. Estos son los pasos necesarios:
Watch: How to Contribute to Ultralytics Datasets
Pasos para contribuir con un nuevo dataset#
-
Recopilar imágenes: reúne las imágenes que pertenecen al dataset. Puedes obtenerlas de diversas fuentes, como bases de datos públicas o tu propia colección.
-
Anotar imágenes: anota estas imágenes con cajas delimitadoras, segmentos o puntos clave, según la tarea.
-
Exportar anotaciones: convierte estas anotaciones al formato de archivo
*.txtde YOLO, compatible con Ultralytics. -
Organizar el dataset: organiza tu dataset con la estructura de carpetas correcta. Debes tener los directorios de nivel superior
images/ylabels/, y dentro de cada uno, un subdirectoriotrain/yval/.dataset/ ├── images/ │ ├── train/ │ └── val/ └── labels/ ├── train/ └── val/ -
Crear un archivo
data.yaml: crea en el directorio raíz de tu dataset un archivodata.yamlque describa el dataset, las clases y cualquier otra información necesaria. -
Optimizar imágenes (opcional): si quieres reducir el tamaño del dataset para procesarlo de forma más eficiente, puedes optimizar las imágenes con el código siguiente. No es obligatorio, pero se recomienda para reducir el tamaño de los datasets y acelerar las descargas.
-
Comprimir el dataset: comprime toda la carpeta del dataset en un archivo zip.
-
Documentación y PR: crea una página de documentación que describa tu dataset y cómo encaja en el framework existente. Después, envía un Pull Request (PR). Consulta las Directrices de contribución de Ultralytics para obtener más información sobre cómo enviar un PR.
Código de ejemplo para optimizar y comprimir un dataset#
from pathlib import Path
from ultralytics.data.utils import compress_one_image
from ultralytics.utils.downloads import zip_directory
# Define dataset directory
path = Path("path/to/dataset")
# Optimize images in dataset (optional)
for f in path.rglob("*.jpg"):
compress_one_image(f)
# Zip dataset into 'path/to/dataset.zip'
zip_directory(path)Si sigues estos pasos, podrás contribuir con un nuevo dataset que se integre correctamente en la estructura existente de Ultralytics.
Preguntas frecuentes#
Ultralytics admite una amplia variedad de datasets para la detección de objetos, incluidos:
- COCO: un dataset a gran escala de detección, segmentación y generación de descripciones de objetos, con 80 categorías de objetos.
- LVIS: un dataset extenso con 1203 categorías de objetos, diseñado para una detección y segmentación de objetos más detalladas.
- Argoverse: un dataset con datos de seguimiento 3D y predicción del movimiento en entornos urbanos, con anotaciones detalladas.
- VisDrone: un dataset con datos de detección de objetos y seguimiento multiobjeto procedentes de imágenes capturadas por drones.
- SKU-110K: con detección densa de objetos en entornos comerciales y más de 11K imágenes.
Estos datasets facilitan el entrenamiento de modelos robustos de Ultralytics YOLO para diversas aplicaciones de detección de objetos.
Contribuir con un nuevo dataset implica varios pasos:
- Recopilar imágenes: reúne imágenes de bases de datos públicas o colecciones personales.
- Anotar imágenes: aplica cajas delimitadoras, segmentos o puntos clave, según la tarea.
- Exportar anotaciones: convierte las anotaciones al formato
*.txtde YOLO. - Organizar el dataset: utiliza la estructura de carpetas con los directorios
train/yval/, cada uno con los subdirectoriosimages/ylabels/. - Crear un archivo
data.yaml: incluye las descripciones del dataset, las clases y cualquier otra información relevante. - Optimizar imágenes (opcional): reduce el tamaño del dataset para mejorar la eficiencia.
- Comprimir el dataset: comprime el dataset en un archivo zip.
- Documentación y PR: describe tu dataset y envía un Pull Request siguiendo las Directrices de contribución de Ultralytics.
Visita Contribuir con nuevos datasets para consultar una guía completa.
Ultralytics Platform ofrece funciones avanzadas para la gestión y el análisis de datasets, como:
- Gestión fluida de datasets: sube, organiza y gestiona tus datasets en un único lugar.
- Integración inmediata con el entrenamiento: utiliza directamente los datasets subidos para entrenar modelos sin configuración adicional.
- Herramientas de visualización: Explora y visualiza las imágenes y anotaciones de tu conjunto de datos.
- Análisis del conjunto de datos: Obtén información sobre la distribución y las características de tu conjunto de datos.
La plataforma agiliza la transición de la gestión del conjunto de datos al entrenamiento del modelo, lo que hace que todo el proceso sea más eficiente. Obtén más información sobre los conjuntos de datos de Ultralytics Platform.
Los modelos YOLO de Ultralytics ofrecen varias características únicas para tareas de visión artificial:
- Rendimiento en tiempo real: Capacidades de inferencia y entrenamiento de alta velocidad para aplicaciones sensibles al tiempo.
- Versatilidad: Compatibilidad con tareas de detección, segmentación de instancias, segmentación semántica, estimación de profundidad, clasificación y estimación de poses en un marco unificado.
- Modelos preentrenados: Accede a modelos preentrenados de alto rendimiento para diversas aplicaciones y reduce el tiempo de entrenamiento.
- Amplio apoyo de la comunidad: Comunidad activa y documentación completa para la resolución de problemas y el desarrollo.
- Fácil integración: API sencilla para integrar con proyectos y flujos de trabajo existentes.
Descubre más información sobre los modelos YOLO en la página de Modelos de Ultralytics.
Para optimizar y comprimir en un archivo ZIP un conjunto de datos con las herramientas de Ultralytics, sigue este ejemplo de código:
Optimizar y comprimir un datasetfrom pathlib import Path from ultralytics.data.utils import compress_one_image from ultralytics.utils.downloads import zip_directory # Define dataset directory path = Path("path/to/dataset") # Optimize images in dataset (optional) for f in path.rglob("*.jpg"): compress_one_image(f) # Zip dataset into 'path/to/dataset.zip' zip_directory(path)Este proceso ayuda a reducir el tamaño del conjunto de datos para almacenarlo de forma más eficiente y acelerar las descargas. Obtén más información sobre cómo optimizar y comprimir en un archivo ZIP un conjunto de datos.