La detección de objetos es una tarea fundamental de la visión por ordenador (VC ) que consiste en identificar la presencia, ubicación y tipo de uno o más objetos dentro de una imagen o vídeo. A diferencia de la clasificación de imágenes, que asigna una única etiqueta a toda la imagen (por ejemplo, "gato"), la detección de objetos delimita con precisión cada instancia de objeto mediante un cuadro delimitador y le asigna una etiqueta de clase (por ejemplo, "gato" en las coordenadas x, y, anchura, altura). Esta capacidad permite a las máquinas comprender las escenas visuales con mayor granularidad, imitando más de cerca la percepción visual humana y permitiendo interacciones más complejas con el entorno. Es una tecnología básica detrás de muchas aplicaciones modernas de inteligencia artificial (IA).
Cómo funciona la detección de objetos
La detección de objetos suele combinar dos tareas básicas: la clasificación de objetos (determinar "qué" objeto está presente) y la localización de objetos (determinar "dónde" se encuentra el objeto, normalmente mediante coordenadas de cuadro delimitador). Los sistemas modernos de detección de objetos se basan en gran medida en el aprendizaje profundo (deep learning, DL), en particular en las redes neuronales convolucionales (Convolutional Neural Networks, CNN). Estas redes se entrenan en grandes conjuntos de datos anotados, como el popular conjunto de datos COCO o Open Images V7, para aprender características visuales y patrones asociados a diferentes clases de objetos.
Durante el funcionamiento (conocido como inferencia), el modelo entrenado procesa una imagen de entrada o un fotograma de vídeo. Produce una lista de objetos potenciales, cada uno representado por un cuadro delimitador, una etiqueta de clase prevista (por ejemplo, "coche", "persona", "perro") y una puntuación de confianza que indica la certeza del modelo sobre la detección. A menudo se utilizan técnicas como la Supresión No Máxima (NMS) para refinar estos resultados eliminando las cajas redundantes y superpuestas del mismo objeto. El rendimiento de estos modelos suele evaluarse utilizando métricas como la Intersección sobre Unión (IoU) y la Precisión Media (mAP).
Detección de Objetos vs. Tareas Relacionadas
Es importante distinguir la detección de objetos de otras tareas relacionadas con la visión por ordenador:
- Clasificación de imágenes: Asigna una única etiqueta a toda una imagen (por ejemplo, "Esta imagen contiene un perro"). No localiza el objeto u objetos.
- Segmentación de imágenes: Clasifica cada píxel de una imagen, creando un mapa detallado de los límites de los objetos. Esto es más granular que las cajas delimitadoras de la detección de objetos.
- Segmentación semántica: Asigna una etiqueta de clase a cada píxel (por ejemplo, todos los píxeles pertenecientes a "coches" se etiquetan como "coche"). No distingue entre diferentes instancias de la misma clase.
- Segmentación de instancias: Asigna una etiqueta de clase a cada píxel y diferencia entre instancias individuales de la misma clase (por ejemplo, "coche 1", "coche 2"). Combina la detección y la segmentación.
- Seguimiento de objetos: Consiste en detectar objetos en fotogramas de vídeo consecutivos y asignar un ID único a cada objeto para seguir su movimiento a lo largo del tiempo. Se basa en la detección de objetos.
Tipos de modelos de detección de objetos
Por lo general, los modelos de detección de objetos se dividen en dos categorías principales, que difieren principalmente en su enfoque y en las compensaciones entre velocidad y precisión:
- Detectores de objetos de dos etapas: Estos modelos proponen primero regiones de interés (RoIs) donde podrían encontrarse objetos y luego clasifican los objetos dentro de esas regiones. Algunos ejemplos son la familia R-CNN (Fast R-CNN, Faster R-CNN). A menudo consiguen una gran precisión, pero suelen ser más lentos.
- Detectores de objetos de una etapa: Estos modelos predicen directamente los recuadros delimitadores y las probabilidades de clase a partir de la imagen de entrada en una sola pasada, sin un paso separado de propuesta de región. Algunos ejemplos son Ultralytics YOLO (You Only Look Once), SSD (Single Shot MultiBox Detector) y RetinaNet. Suelen ser más rápidos, lo que los hace adecuados para la inferencia en tiempo real, a veces a costa de una precisión ligeramente inferior en comparación con los métodos de dos etapas, aunque modelos como YOLO11 salvan eficazmente esta distancia. Los enfoques más recientes, como los detectores sin anclas, simplifican aún más el proceso de una etapa. Puedes explorar las comparaciones entre diferentes modelos YOLO y otras arquitecturas como RT-DETR.
Aplicaciones en el mundo real
La detección de objetos es una tecnología fundamental que permite numerosas aplicaciones en diversos sectores:
- Sistemas Autónomos: Esenciales para los coches autoconducidos y la robótica, permiten a los vehículos y robots percibir su entorno detectando peatones, otros vehículos, obstáculos, señales de tráfico y objetos específicos para interactuar. Empresas como Tesla y Waymo dependen en gran medida de una sólida detección de objetos.
- Seguridad y vigilancia: Se utiliza en sistemas de alarma de seguridad para detectar intrusos, controlar multitudes(Vision AI in Crowd Management), identificar objetos abandonados y mejorar la eficacia de la vigilancia en espacios públicos y propiedades privadas.
- Análisis del comercio minorista: Impulsa aplicaciones como los sistemas de caja automatizados, la gestión de inventarios basada en IA, la supervisión de estanterías (detección de artículos agotados) y el análisis de patrones de tráfico de clientes.
- Sanidad: Se aplica en el análisis de imágenes médicas para detectar anomalías como tumores(Uso de YOLO11 para la detección de tumores) o lesiones en radiografías, tomografías computarizadas y resonancias magnéticas, ayudando a los radiólogos en el diagnóstico(Radiología: Inteligencia Artificial).
- Agricultura: Permite técnicas de agricultura de precisión, como la detección de plagas, enfermedades y malas hierbas, el recuento de frutos(visión por ordenador en la agricultura) y el control de la salud de los cultivos(soluciones de IA en la agricultura).
- Fabricación: Se utiliza para el control de calidad detectando defectos en los productos de las cadenas de montaje(Inspección de calidad en la fabricación), garantizando la seguridad mediante la vigilancia de las zonas peligrosas y automatizando las tareas robóticas.
Herramientas y formación
Desarrollar y desplegar modelos de detección de objetos implica diversas herramientas y técnicas. Los marcos de aprendizaje profundo más populares, como PyTorch y TensorFlow proporcionan las bibliotecas fundacionales. Las bibliotecas de visión por ordenador como OpenCV ofrecen funciones esenciales de procesamiento de imágenes.
Ultralytics proporciona tecnología punta Ultralytics YOLO incluyendo YOLOv8 y YOLO11optimizados para ofrecer velocidad y precisión. La plataforma Ultralytics HUB simplifica aún más el flujo de trabajo, ofreciendo herramientas para gestionar conjuntos de datos, entrenar modelos personalizados, realizar el ajuste de hiperparámetros y facilitar el despliegue de modelos. El entrenamiento eficaz de los modelos a menudo se beneficia de las estrategias de aumento de datos y de técnicas como el aprendizaje por transferencia utilizando pesos preentrenados de conjuntos de datos como ImageNet.