Meet YOLO26: next-gen vision AI.

Link to this sectionResumen de datasets#

Ultralytics ofrece soporte para varios datasets para facilitar tareas de visión artificial como detección, segmentación de instancias, segmentación semántica, estimación de poses, clasificación y seguimiento de múltiples objetos. A continuación, encontrarás una lista de los principales datasets de Ultralytics, seguida de un resumen de cada tarea de visión artificial y sus respectivos datasets.



Watch: Ultralytics Datasets Overview

Link to this sectionDetección de objetos#

La detección de objetos mediante bounding box 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 uno.

  • African-wildlife: Un dataset que incluye imágenes de fauna africana, como búfalos, elefantes, rinocerontes y cebras.
  • Argoverse: Un dataset que contiene datos de seguimiento 3D y predicción de movimiento de entornos urbanos con anotaciones detalladas.
  • Brain-tumor: Un dataset para detectar tumores cerebrales que incluye imágenes de resonancias magnéticas o escáneres CT con detalles sobre la presencia, ubicación y características del tumor.
  • COCO: Common Objects in Context (COCO) es un dataset a gran escala para detección de objetos, segmentación y generación de descripciones con 80 categorías de objetos.
  • COCO8: Un subconjunto más pequeño de las primeras 4 imágenes de COCO train y COCO val, adecuado para pruebas rápidas.
  • COCO8-Grayscale: Una versión en escala de grises de COCO8 creada al convertir de RGB a escala de grises, útil para la evaluación de modelos de un solo canal.
  • COCO8-Multispectral: Una versión multiespectral de 10 canales de COCO8 creada interpolando longitudes de onda RGB, útil para la evaluación de modelos con capacidad espectral.
  • COCO128: Un subconjunto más pequeño de las primeras 128 imágenes de COCO train2017, adecuado para pruebas.
  • Construction-PPE: Un dataset de imágenes de obras de construcción anotadas con equipos de protección clave como cascos, chalecos, guantes, botas y gafas, junto con etiquetas para el equipo faltante, lo que respalda el desarrollo de modelos de IA para el cumplimiento y la protección de los trabajadores.
  • Global Wheat 2020: Un dataset que contiene imágenes de espigas de trigo para el Global Wheat Challenge 2020.
  • HomeObjects-3K: Un dataset de escenas de interiores anotadas que presenta 12 artículos domésticos comunes, ideal para desarrollar y probar modelos de visión artificial en sistemas de domótica, robótica y realidad aumentada.
  • KITTI New: Un reconocido dataset de conducción autónoma que incluye entradas de estéreo, LiDAR y GPS/IMU, utilizado para detección de objetos 2D en diversas escenas viales.
  • LVIS: Un dataset a gran escala para detección de objetos, segmentación y generación de descripciones con 1203 categorías de objetos.
  • Medical-pills: Un dataset que contiene imágenes etiquetadas de pastillas medicinales, diseñado para ayudar en tareas como el control de calidad farmacéutico, la clasificación y el cumplimiento de los estándares de la industria.
  • Objects365: Un dataset de alta calidad y gran escala para detección de objetos con 365 categorías y más de 600.000 imágenes anotadas.
  • OpenImagesV7: Un dataset exhaustivo de Google con 1,7 millones de imágenes de entrenamiento y 42.000 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 integral de modelos.
  • Signature: Un dataset que incluye imágenes de diversos documentos con firmas anotadas, lo que apoya la verificación de documentos y la investigación de detección de fraudes.
  • SKU-110K: Un dataset con detección de objetos densos en entornos minoristas con más de 11.000 imágenes y 1,7 millones de bounding boxes.
  • VisDrone: Un dataset que contiene datos de detección de objetos y seguimiento de múltiples objetos a partir de imágenes capturadas por drones con más de 10.000 imágenes y secuencias de vídeo.
  • VOC: El dataset Pascal Visual Object Classes (VOC) para detección y segmentación de objetos con 20 clases y más de 11.000 imágenes.
  • xView: Un dataset para 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.

Link to this sectionSegmentació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 diferentes instancias de la misma clase.

  • Carparts-seg: Dataset diseñado específicamente para identificar piezas de vehículos, atendiendo 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 de objetos, segmentación y generación de descripciones con más de 200.000 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: Dataset creado específicamente para detectar grietas en carreteras y paredes, aplicable tanto para tareas de detección de objetos como de segmentación.
  • Package-seg: Dataset adaptado para identificar paquetes en almacenes o entornos industriales, adecuado para aplicaciones tanto de detección de objetos como de segmentación.

Link to this sectionSegmentación semántica#

La segmentación semántica asigna una etiqueta de clase a cada píxel en una imagen, produciendo mapas de escenas densos para aplicaciones como la conducción autónoma, el análisis de escenas y el mapeo de cobertura terrestre.

  • Cityscapes: Dataset de segmentación semántica de escenas urbanas con 19 clases de entrenamiento.
  • Cityscapes8: Un subconjunto compacto de 8 imágenes de Cityscapes para comprobaciones rápidas de pipelines de segmentación semántica.
  • ADE20K: Dataset de análisis de escenas con 150 clases semánticas.

Link to this sectionEstimación de poses#

La estimación de poses es una técnica utilizada para determinar la pose de un objeto en relación con la cámara o el sistema de coordenadas del mundo. Esto implica identificar puntos clave o articulaciones en los objetos, particularmente en humanos o animales.

  • COCO: Un dataset a gran escala con anotaciones de pose humana diseñado para tareas de estimación de poses.
  • COCO8-pose: Un dataset más pequeño para tareas de estimación de poses, que contiene un subconjunto de 8 imágenes de COCO con anotaciones de pose humana.
  • Dog-pose: Un dataset exhaustivo que incluye aproximadamente 8.500 imágenes centradas en perros, anotadas con 24 puntos clave por perro, adaptado para tareas de estimación de poses.
  • Hand-Keypoints: Un dataset conciso que presenta más de 26.000 imágenes centradas en manos humanas, anotadas con 21 puntos clave por mano, diseñado para tareas de estimación de poses.
  • Tiger-pose: Un dataset compacto que consiste en 263 imágenes centradas en tigres, anotadas con 12 puntos clave por tigre para tareas de estimación de poses.

Link to this sectionClasificación#

La clasificación de imágenes es una tarea de visión artificial que consiste en categorizar una imagen en una o más clases o categorías predefinidas según su contenido visual.

  • Caltech 101: Un dataset que contiene imágenes de 101 categorías de objetos para tareas de clasificación de imágenes.
  • Caltech 256: Una versión extendida de Caltech 101 con 256 categorías de objetos e imágenes más desafiantes.
  • CIFAR-10: Un dataset de 60.000 imágenes en color de 32x32 en 10 clases, con 6.000 imágenes por clase.
  • CIFAR-100: Una versión extendida de CIFAR-10 con 100 categorías de objetos y 600 imágenes por clase.
  • Fashion-MNIST: Un dataset que consiste en 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 detección de objetos y 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 pruebas y experimentación más rápidas.
  • Imagenette: Un subconjunto más pequeño de ImageNet que contiene 10 clases fácilmente distinguibles para un entrenamiento y pruebas más rápidos.
  • 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 primeras 8 imágenes de cada dígito (0-9) tanto de las divisiones de entrenamiento como de prueba de MNIST. El dataset contiene 160 imágenes en total.

Link to this sectionBounding boxes orientados (OBB)#

Los Bounding boxes orientados (OBB) son un método en visión artificial para detectar objetos inclinados en imágenes mediante cajas delimitadoras rotadas, aplicadas a menudo a imágenes aéreas y satelitales. A diferencia de los bounding boxes tradicionales, los OBB pueden ajustarse mejor a objetos con diversas orientaciones.

  • DOTA-v2: Un popular dataset de imágenes aéreas OBB con 1,7 millones de instancias y 11.268 imágenes.
  • DOTA8: Un subconjunto más pequeño de las primeras 8 imágenes del set de división DOTAv1, 4 para entrenamiento y 4 para validación, adecuado para pruebas rápidas.
  • DOTA128: Un subconjunto de 128 imágenes del dataset DOTA para entrenamiento y validación, que ofrece un buen equilibrio entre tamaño y diversidad para probar modelos OBB.

Link to this sectionSeguimiento de múltiples objetos#

El seguimiento de múltiples objetos es una técnica de visión artificial que implica detectar y rastrear múltiples objetos a lo largo del tiempo en una secuencia de vídeo. Esta tarea amplía la detección de objetos manteniendo identidades consistentes de los objetos a través de los fotogramas.

  • Argoverse: Un dataset que contiene datos de seguimiento 3D y predicción de movimiento de entornos urbanos con anotaciones ricas para tareas de seguimiento de múltiples objetos.
  • VisDrone: Un dataset que contiene datos de detección de objetos y seguimiento de múltiples objetos a partir de imágenes capturadas por drones con más de 10.000 imágenes y secuencias de vídeo.

Link to this sectionContribuye con nuevos datasets#

Contribuir con un nuevo dataset implica varios pasos para asegurar que se alinee bien con la infraestructura existente. A continuación, se detallan los pasos necesarios:



Watch: How to Contribute to Ultralytics Datasets

Link to this sectionPasos para contribuir con un nuevo dataset#

  1. Recopila imágenes: Reúne las imágenes que pertenecen al dataset. Pueden provenir de varias fuentes, como bases de datos públicas o tu propia colección.

  2. Anota imágenes: Anota estas imágenes con bounding boxes, segmentos o puntos clave, dependiendo de la tarea.

  3. Exporta anotaciones: Convierte estas anotaciones al formato de archivo *.txt de YOLO que Ultralytics soporta.

  4. Organiza el dataset: Organiza tu dataset en la estructura de carpetas correcta. Debes tener directorios de nivel superior images/ y labels/, y dentro de cada uno, un subdirectorio train/ y val/.

    dataset/
    ├── images/
    │   ├── train/
    │   └── val/
    └── labels/
        ├── train/
        └── val/
  5. Crea un archivo data.yaml: En el directorio raíz de tu dataset, crea un archivo data.yaml que describa el dataset, las clases y otra información necesaria.

  6. Optimiza imágenes (opcional): Si deseas reducir el tamaño del dataset para un procesamiento más eficiente, puedes optimizar las imágenes utilizando el siguiente código. Esto no es obligatorio, pero se recomienda para tamaños de dataset más pequeños y velocidades de descarga más rápidas.

  7. Comprime el dataset: Comprime toda la carpeta del dataset en un archivo zip.

  8. Documenta y haz un PR: Crea una página de documentación que describa tu dataset y cómo encaja en el framework existente. Después, envía una Pull Request (PR). Consulta las Pautas de contribución de Ultralytics para más detalles sobre cómo enviar una PR.

Link to this sectionEjemplo de código para optimizar y comprimir un dataset#

Optimiza y comprime 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)

Siguiendo estos pasos, puedes contribuir con un nuevo dataset que se integre bien con la estructura existente de Ultralytics.

Link to this sectionFAQ#

Link to this section¿Qué datasets admite Ultralytics para la detección de objetos?#

Ultralytics admite una amplia variedad de datasets para detección de objetos, incluyendo:

  • COCO: Un dataset a gran escala para detección de objetos, segmentación y generación de descripciones 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 detallada.
  • Argoverse: Un dataset que contiene datos de seguimiento 3D y predicción de movimiento de entornos urbanos con anotaciones detalladas.
  • VisDrone: Un dataset con datos de detección de objetos y seguimiento de múltiples objetos a partir de imágenes capturadas por drones.
  • SKU-110K: Con detección de objetos densos en entornos minoristas con más de 11.000 imágenes.

Estos datasets facilitan el entrenamiento de modelos robustos de Ultralytics YOLO para diversas aplicaciones de detección de objetos.

Link to this section¿Cómo puedo contribuir con un nuevo dataset a Ultralytics?#

Contribuir con un nuevo dataset implica varios pasos:

  1. Recopila imágenes: Reúne imágenes de bases de datos públicas o colecciones personales.
  2. Anota imágenes: Aplica bounding boxes, segmentos o puntos clave, según la tarea.
  3. Exporta anotaciones: Convierte las anotaciones al formato *.txt de YOLO.
  4. Organiza el dataset: Utiliza la estructura de carpetas con directorios train/ y val/, cada uno conteniendo subdirectorios images/ y labels/.
  5. Crea un archivo data.yaml: Incluye descripciones del dataset, clases y otra información relevante.
  6. Optimiza imágenes (opcional): Reduce el tamaño del dataset para mayor eficiencia.
  7. Comprime el dataset: Comprime el dataset en un archivo zip.
  8. Documenta y haz un PR: Describe tu dataset y envía una Pull Request siguiendo las Pautas de contribución de Ultralytics.

Visita Contribuye con nuevos datasets para obtener una guía completa.

Link to this section¿Por qué debería utilizar la plataforma Ultralytics para mi dataset?#

Ultralytics Platform ofrece funciones potentes para la gestión y el análisis de datasets, incluyendo:

  • Gestión integral de datasets: Sube, organiza y gestiona tus datasets en un solo lugar.
  • Integración inmediata para el entrenamiento: Usa datasets subidos directamente para el entrenamiento de modelos sin necesidad de configuración adicional.
  • Herramientas de visualización: Explora y visualiza las imágenes y anotaciones de tu dataset.
  • Análisis de datasets: Obtén información sobre la distribución y las características de tu dataset.

La plataforma agiliza la transición de la gestión de datasets al entrenamiento de modelos, haciendo que todo el proceso sea más eficiente. Aprende más sobre Ultralytics Platform Datasets.

Link to this section¿Cuáles son las características únicas de los modelos Ultralytics YOLO para visión artificial?#

Los modelos Ultralytics YOLO 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: Soporte para tareas de detección, segmentación de instancias, segmentación semántica, clasificación y estimación de poses en un marco unificado.
  • Modelos preentrenados: Acceso a modelos preentrenados de alto rendimiento para diversas aplicaciones, reduciendo el tiempo de entrenamiento.
  • Amplio apoyo de la comunidad: Comunidad activa y documentación exhaustiva 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 sobre los modelos YOLO en la página de Ultralytics Models.

Link to this section¿Cómo puedo optimizar y comprimir en zip un dataset usando las herramientas de Ultralytics?#

Para optimizar y comprimir un dataset usando las herramientas de Ultralytics, sigue este código de ejemplo:

Optimiza y comprime 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)

Este proceso ayuda a reducir el tamaño del dataset para un almacenamiento más eficiente y velocidades de descarga más rápidas. Aprende más sobre cómo Optimizar y comprimir un dataset.

Comentarios