Al hacer clic en "Aceptar", acepta que se almacenen cookies en su dispositivo para mejorar la navegación por el sitio, analizar su uso y contribuir a nuestros esfuerzos de marketing. Consulte nuestra política de privacidad para obtener más información.
Conocimientos

Introducción a la detección de objetos en Visión por Computador [2024]

Escrito por
Nanobaly
Publicado el
2024-01-26
Tiempo de lectura
Esto es un texto dentro de un bloque div.
min
📘 ÍNDICE
Muchas gracias. Hemos recibido su envío.
¡Uy! Algo ha ido mal al enviar el formulario.

Como humanos, a menudo nos cuesta identificar y contar rápidamente todos los objetos que nos rodean, pero los ordenadores, gracias a la tecnología de detección de objetos, destacan en este campo. Esta avanzada capacidad de IA permite a las máquinas no sólo detectar y enumerar objetos en imágenes o vídeos con notable precisión, sino también clasificarlos en varias categorías e identificar objetos como personas, animales o vehículos, por ejemplo.

Es más, estos sistemas pueden señalar la ubicación exacta de un objeto dentro de una imagen. Este salto tecnológico, que ha evolucionado considerablemente en las dos últimas décadas, ha abierto nuevos horizontes más allá de la investigación en IA. Es esencial en aplicaciones del mundo real, como los vehículos autónomos que interpretan escenarios de tráfico complejos, y en el comercio minorista, para agilizar los procesos de pago (por ejemplo, es una técnica muy utilizada en las últimas máquinas de autopago).

Los últimos algoritmos de detección de objetos, que mejoran constantemente en términos de precisión y velocidad, están transformando las industrias al mejorar tareas de Computer Visionen vigilancia automatizada, control medioambiental e incluso diagnósticos sanitarios avanzados, lo que demuestra el impacto cada vez más profundo de la IA en la vida cotidiana.

Este artículo proporciona una introducción a la detección de objetos en Visión por Computador, ofreciéndole una visión general de los métodos y algoritmos de detección de objetos más avanzados en el campo de la IA.

Logotipo


¿Necesita ayuda con sus casos de uso mediante la detección de objetos?
Agilice sus tareas de anotación de datos y reduzca los errores hasta 10 veces. Trabaje hoy mismo con nuestras etiquetadoras de datos.

Introducción: fundamentos de la detección de objetos

Antes de entrar en los detalles del "cómo", veamos primero el "qué". ¿Qué es la detección de objetos? ¿En términos concretos? ¿Para qué sirve y cómo funciona? Éstas son algunas de las preguntas a las que pretendemos dar respuesta en este artículo.

Detección de objetos: ¿qué es?

La detección de objetos es una tecnología puntera en aprendizaje automáticoy de aprendizaje profundo que permite a los ordenadores identificar y localizar con precisión objetos en imágenes o vídeos. Pertenece a una rama de la inteligencia artificial conocida como Computer Vision.

Los programas informáticos de detección de objetos pretenden reproducir los complejos procesos de la visión humana mediante diversos datos de entrenamiento y la orquestación de complejos algoritmos: las máquinas perciben y comprenden el mundo visual con un nivel de precisión y sofisticación antes reservado exclusivamente a la percepción humana.

La Computer Vision es uno de los campos que evoluciona más rápidamente. En el centro de su rápido progreso se encuentra el importante papel de la detección de objetos. Este artículo pretende ofrecerle una visión general de los principales conceptos esenciales para comprender los mecanismos de detección de objetos por una máquina.

En pocas palabras: la detección de objetos consiste en crear cuadros delimitadores alrededor de objetos previamente identificados. Estos recuadros delimitadores se utilizan para determinar la posición exacta de los objetos en una escena determinada o para seguir su movimiento dentro de ella.

¿Por qué es importante la detección de objetos? Ya forma parte de nuestra vida cotidiana...

El papel de la detección de objetos en la Computer Vision va mucho más allá de la identificación de objetos; es un mecanismo esencial para comprender contextos visuales complejos. Esta tecnología permite realizar tareas matizadas como distinguir instancias de objetos individuales (segmentación de instancias), comprender escenas para generar texto descriptivo (añadir pies de foto a las imágenes) y la detección y el seguimiento continuos de objetos en tiempo real a través de secuencias de vídeo.

Además, sus aplicaciones se han extendido a diversos campos, desde la mejora de la seguridad pública mediante la detección y el seguimiento de peatones y vehículos, hasta la transformación del sector minorista con cajas que permiten pagos automatizados, sin necesidad de escanear cada artículo individualmente.

Los avances en los modelos de aprendizaje automático y profundo y en las redes neuronales han impulsado la detección de objetos a nuevas cotas, permitiendo un procesamiento en tiempo real y una gran precisión, importantes para entornos dinámicos como la conducción autónoma o los sistemas de vigilancia avanzados. Estos avances subrayan elimpacto transformador de la detección de objetos tanto en los avances técnicos como en la vida cotidiana.

Un caso sencillo de detección de objetos: vehículo, semáforo, peatones (Fuente: Nvidia)

Una explicación sencilla del principio, concepto clave de la inteligencia artificial

La idea esentrenar a un programa informático para que reconozca distintos tipos de objetos, los detecte y los cuente y, a continuación, localice automáticamente los objetos hasta su posición precisa en el píxel más cercano en nuevas imágenes.

Para ello, el sistema se alimenta de miles de fotos anotadas, en las que cada objeto de interés se identifica mediante un "cuadro delimitador".caja delimitadora". Por ejemplo, los gatos están delimitados por cuadrados azules, los perros por cuadrados rojos, etc.

Vista general de una interfaz de anotación para la IA. (Fuente: CVAT)

¿Cómo funciona? Las principales etapas

Utilizando diversas imágenes y datos de entrenamiento, el algoritmo de IA detectará gradualmente patrones, texturas y formas comunes a las imágenes de prueba utilizadas para cada categoría y aprenderá a reconocerlos. A continuación, podrá identificarlos automáticamente en cualquier imagen nueva.

Diferencias con la clasificación de imágenes y la segmentación semántica

Antes de hablar de los aspectos técnicos de la detección de objetos, veamos en qué se distingue esta tecnología de otras dos técnicas relacionadas con el tratamiento de imágenes: la clasificación y la segmentación semántica de imágenes.

Representación bastante explícita de los principales conceptos de anotación aplicados en Visión por Computador (Fuente: Kang et al.)

¿En qué se diferencian la clasificación de imágenes y la detección de objetos?

Mientras que clasificación de imágenes simplementeasigna una etiqueta global a una imagen (por ejemplo, "playa"), sin localizar objetos específicos, la detección de objetos identifica cada aparición de objeto relevante (sombrillas, personas, etc.) en la imagen de entrada y delimita su posición en las imágenes de entrada.

La clasificación de imágenes consiste en pasar una imagen completa por un clasificador, normalmente una red neuronal profunda, para obtener la etiqueta correspondiente. Los clasificadores analizan toda la imagen, pero no proporcionan información sobre la ubicación específica del objeto etiquetado dentro de la imagen.

La detección de objetos, por su parte, es una técnica más avanzada que no sólo clasifica los objetos, sino que también los delimita dibujando un cuadro delimitador a su alrededor.

¿Cuál es la diferencia con la segmentación semántica?

La segmentación semántica de imágenes es una técnica que detecta y separa múltiples objetos con mayor precisión que un simple cuadro delimitador. En la segmentación semántica de imágenes se marcan todos los píxeles asociados a una etiqueta concreta, pero este método no delimita los contornos exactos de cada objeto individual.

Por otra parte, la detección de objetos, en lugar de segmentarlos, delimita con precisión las posiciones de cada instancia de objeto separada encerrándolos en recuadros delimitadores.

Por último, la segmentación de instancias combina lo mejor de ambos mundos: esta técnica consiste en determinar qué píxeles de una imagen pertenecen a una clase de objeto específica. En primer lugar, identifica instancias de objetos individuales y, a continuación, procede a segmentar cada instancia en los recuadros delimitadores detectados, que en este contexto se denominan regiones de interés.

Logotipo


💡 ¿Lo sabías?
La anotación de datos es un trabajo complejo que requiere conocimientos especiales. No confíe esta tarea a sus aprendices de científicos de datos: recurra en su lugar a expertos etiquetadores de datos.

Detección de objetos: breve comparación con otras técnicas de Computer Vision

En comparación con el reconocimiento facial, que identifica un único tipo de objeto en tiempo real, o la detección de texto, que identifica palabras escritas, la detección de objetos es una tecnología mucho más compleja. Tiene que aprender a identificar y clasificar multitud de objetos, cuyas formas cambian según el ángulo desde el que se miren.

Modelos y algoritmos de detección de objetos

El arte de los sistemas de detección de objetos reside en los algoritmos utilizados. Sin entrar en las complejas fórmulas matemáticas (puede consultar estos recursos si te interesan), podemos distinguir 2 grandes familias de enfoques para la detección de objetos: los métodos de un solo disparo y los métodos de dos etapas.

Enfoques de una sola etapa o "one-shot

Los enfoques "one-shot", como su nombre indica, intentan realizar todo el análisis en una sola pasada. Aplican una única red neuronal convolucional directamente a la imagen para detectar y clasificar objetos simultáneamente.

Ejemplo de YOLO

El ejemplo más conocido de algoritmo one-shot es YOLO (You Only Look Once). Gracias a una arquitectura neuronal muy eficiente, ofrece excelentes resultados siendo más rápido que sus competidores. Es una solución ideal para aplicaciones en tiempo real, como los coches autónomos.

Planteamientos en dos fases

La detección de objetos mediante algoritmos R-CNN (redes neuronales convolucionales sobre regiones) se basa en los tres procesos siguientes:

1. Busque regiones en la imagen que podrían contener un objeto. Estas regiones se denominan regiones sugeridas.

2. Extraer las características de las CNN de las regiones propuestas y clasificar los objetos utilizando las características extraídas.

Existen tres variantes de una R-CNN. Cada variante intenta optimizar, acelerar o mejorar los resultados de uno o varios de estos procesos.

R-CNN

El detector R-CNN genera primero las regiones propuestas utilizando un algoritmo como Edge Boxes. Las regiones propuestas se recortan de la imagen y se redimensionan. A continuación, la CNN clasifica estas regiones recortadas y redimensionadas. Por último, una máquina de vectores de soporte (SVM) entrenada con las características de la CNN refina los límites de las regiones propuestas.

Principio R-CNN (Fuente: Mathworks.com)

R-CNN rápida

Al igual que el detector R-CNN, el detector R-CNN rápido también utiliza un algoritmo como Edge Boxes para generar regiones propuestas. A diferencia del detector R-CNN, que trocea y redimensiona las regiones propuestas, el detector R-CNN rápido procesa toda la imagen. Mientras que un detector R-CNN tiene que clasificar cada región, Fast R-CNN agrupa las características CNN correspondientes a cada región propuesta. Fast R-CNN es más eficiente que R-CNN, porque en el detector Fast R-CNN se comparten los cálculos de las regiones solapadas.

Principio de la R-CNN rápida (Fuente: Mathworks.com)

R-CNN más rápido

El detector R-CNN más rápido añade una red de propuesta de región (RPN) para generar propuestas de región directamente en la red, en lugar de utilizar un algoritmo externo como Edge Boxes. La RPN utiliza cajas de anclaje para la detección de objetos. La generación de propuestas de región en la red es más rápida y se adapta mejor a sus datos.

Principio de la R-CNN más rápida (Fuente: Mathworks.com)

¿Qué enfoque elegir?

No existe un método universal de detección de objetos. Cada método tiene sus ventajas e inconvenientes. La elección de los métodos de detección de objetos depende de la aplicación de destino y de las limitaciones en términos de precisión, velocidad y consumo de recursos.

Algunos consejos para elegir un modelo de detección que se adapte a tus necesidades...

Por ejemplo, para un dron que necesita escanear palés en un almacén, una solución rápida como YOLO será más que suficiente. En cambio, en un contexto médico donde la precisión es crucial, se preferirá en general un modelo R-CNN más lento, pero con delimitaciones más finas.

Detección de objetos en la vida cotidiana

Aunque muy avanzada desde el punto de vista tecnológico, la detección de objetos ya tiene muchas aplicaciones prácticas para el gran público. Desde el desbloqueo de smartphones mediante reconocimiento facial hasta la moderación automática de redes sociales y el control de calidad industrial, esta tecnología simplifica y asegura ciertas tareas cotidianas a las que no siempre prestamos atención.

Detección de personas

Entre las aplicaciones de consumo de los algoritmos de detección de objetos que ya forman parte integrante de nuestra vida cotidiana, la detección y el reconocimiento de personas es sin duda la más extendida.

Impulsada por el meteórico avance de los algoritmos de Deep Learning y Machine Learning en los últimos años, esta compleja tarea de localizar seres humanos en imágenes y vídeos ha mejorado considerablemente, hasta el punto de que ahora se mezcla en muchas de nuestras actividades, a menudo sin que nos demos cuenta.

Ejemplos cotidianos

¿Quién no ha desbloqueado su smartphone con un simple vistazo gracias al reconocimiento facial? Estas técnicas rápidas y sencillas de verificación de la identidad son posibles gracias a la detección facial. Otro ejemplo: al subir una foto de perfil a una red social, los modelos de detección entran inmediatamente en acción para difuminar o bloquear cualquier contenido inapropiado. Por último, en nuestras ciudades, las cámaras inteligentesequipadas con esta tecnología miden automáticamente si se respetan las distancias sociales o si la gente lleva máscaras para combatir las epidemias.

Videovigilancia inteligente gracias a la IA

La detección de objetos también automatiza las laboriosas tareas de videovigilancia, detección de anomalías y detección de peatones, ya sea en espacios públicos, puntos de venta o emplazamientos industriales sensibles.

Gracias al análisis en directo de las imágenes captadas, el software puede generar alertas cuando se abandona un paquete sospechoso o un individuo cruza una barrera prohibida. Se trata de una forma eficaz de ayudar a los guardias de seguridad llamando su atención sobre hechos relevantes.

Detección de objetos para vehículos autónomos

Otro ámbito en el que la detección de objetos desempeña un papel fundamental es el de la conducción autónoma. Para encontrar su camino entre el tráfico, los vehículos del futuro se apoyarán en toda una batería de sensores de vídeo que escanean constantemente el entorno en busca de peatones, ciclistas, otros coches o incluso animales, con el fin de adaptar su trayectoria en tiempo real.

Los modelos entrenados para detectar cientos de tipos de objetos diferentes nos permiten analizar varios flujos simultáneamente con una precisión formidable, haciendo más seguras las carreteras del mañana.


Inspección visual en la industria

Detectar defectos en los productos fabricados es ahora mucho más fácil en las cadenas de producción. Cámaras equipadas con cerebros artificiales inspeccionan cada pieza en busca del más mínimo problema: falta de pintura, piezas mal colocadas, arañazos, etc. Una ganancia considerable en productividad y trazabilidad para los fabricantes, ¡todo ello sin intervención humana!

Análisis de vídeos quirúrgicos para entrenar modelos de Computer Vision... para diagnósticos más precisos

Las imágenes de vídeo quirúrgicas son un flujo de datos complejo y a menudo ruidoso capturado por cámaras endoscópicas durante procedimientos médicos críticos. La tecnología de detección de objetos desempeña un papel fundamental en la identificación de anomalías escurridizas, como pólipos o lesiones, que requieren una intervención quirúrgica inmediata. Es más, podemos imaginar un mundo en el que esta tecnología punta desempeñe una función adicional al proporcionar actualizaciones en tiempo real al equipo médico, permitiéndoles seguir de cerca el progreso del procedimiento quirúrgico.

Datos quirúrgicos anotados y explotables por modelos de IA (Fuente: SDSC)

Ventajas e inconvenientes de los modelos de detección de objetos

La detección de objetos es una potente técnica de Computer Vision con sus propios puntos fuertes y limitaciones. Saber cuándo utilizar la detección de objetos y cuándo considerar métodos alternativos es importante para resolver problemas con eficacia en diversos escenarios.

He aquí un análisis de las ventajas e inconvenientes de los distintos métodos de detección de objetos.

Algunas ventajas...

Eficaz para objetos de tamaño medio

La detección de objetos destaca cuando se trata de objetos que ocupan una porción moderada de una imagen, generalmente entre el 5% y el 65% de la superficie de la imagen. Dentro de este rango, es capaz de reconocer objetos de distintos tamaños.

Eficaz cuando los límites del objeto están claros

Esta técnica es muy eficaz para detectar objetos con límites bien definidos. Los objetos con bordes y formas definidos son especialmente adecuados para la detección.

Reconocimiento de agrupaciones

La detección de objetos puede identificar grupos de objetos como una entidad única. Cuando los objetos están estrechamente agrupados, tiene la capacidad de procesarlos colectivamente, lo que puede resultar ventajoso en diversas aplicaciones.

Localización de alta velocidad

Los procesos de detección de objetos pueden alcanzar un rendimiento en tiempo real o casi real, superando a menudo los 15 fotogramas por segundo (fps). Esta capacidad de localización rápida es inestimable en situaciones en las que la velocidad es esencial.

Versatilidad para escenarios multiobjeto

La detección de objetos se adapta bien a escenarios en los que es necesario identificar simultáneamente varios objetos en una imagen o secuencia de vídeo. Esta versatilidad es especialmente valiosa en aplicaciones como la vigilancia, donde la detección de varios objetos en una escena es esencial para la seguridad y la vigilancia.

Numerosas aplicaciones reales

La detección de objetos tiene amplias aplicaciones en diversos ámbitos del mundo real, como los coches autónomos, las imágenes médicas para la detección de tumores y el comercio minorista para la gestión de existencias. Su adaptabilidad y precisión contribuyen a su amplia utilidad.

... pero también algunas desventajas:

Limitaciones para objetos alargados y formas muy irregulares

La detección de objetos puede no ser óptima para objetos alargados o muy finos, como un lápiz. En tales casos, el objeto puede ocupar una pequeña fracción del cuadro delimitador, lo que conduce a un sesgo hacia los píxeles del fondo en lugar de hacia el propio objeto.

La detección de objetos también puede encontrar dificultades con objetos muy irregulares o complejos, como las formaciones geológicas irregulares. La precisión de la detección puede verse comprometida cuando los objetos se desvían significativamente de las formas estándar.

Ineficaz para conceptos no físicos

Los objetos que carecen de presencia física tangible, como los descriptores "soleado", "brillante" o "inclinado", se tratan mejor con técnicas de clasificación de imágenes. La detección de objetos puede tener dificultades para tratar eficazmente estos conceptos abstractos.

Inadecuado para límites ambiguos

Cuando los objetos tienen límites borrosos desde distintos ángulos, la segmentación semántica puede ser una opción más adecuada. Por ejemplo, las imágenes aéreas que contienen cielo, suelo o vegetación, que carecen de límites bien definidos, se segmentan mejor utilizando este enfoque.

Gestionar la oclusión puede ser un reto

Los objetos frecuentemente ocluidos (parcialmente ocultos) pueden plantear problemas en la detección de objetos. En estos casos, si es posible, la segmentación de instancias es la opción preferida dentro de las redes de detección en dos fases, ya que destaca en la comprensión y segmentación de objetos ocluidos con mayor precisión que la detección básica de recuadros delimitadores.

Recursos intensivos

La implementación de modelos de detección de objetos suele requerir importantes recursos informáticos, incluidas potentes GPU o TPU. Esta demanda de recursos puede suponer una limitación en entornos con recursos limitados o en dispositivos periféricos con capacidades de procesamiento limitadas.

Complejidad del proceso de anotación de datos

La creación de conjuntos de datos de entrenamiento de alta calidad para los modelos de detección de objetos, que implican marcar con precisión los límites y las categorías de los objetos, puede llevar mucho tiempo y requerir mucho trabajo. La calidad de los datos de entrenamiento influye directamente en el rendimiento del modelo, por lo que la anotación de los datos es un aspecto fundamental.

Limitado al espacio 2D para un mejor rendimiento

La detección de objetos funciona principalmente en el espacio bidimensional y puede encontrar dificultades al identificar objetos en entornos tridimensionales, como la detección de objetos en escáneres médicos volumétricos o en aplicaciones de realidad aumentada en las que la información de profundidad es crucial.

La eficacia de la detección de objetos depende de las características específicas de los objetos y las escenas que se tratan. Para tomar decisiones con conocimiento de causa, es esencial evaluar si la detección de objetos se ajusta a la naturaleza de su problema o si técnicas alternativas como la segmentación de instancias, la clasificación de imágenes o la segmentación semántica podrían ser más adecuadas para alcanzar sus objetivos. Comprender estos matices le permitirá seleccionar el enfoque más adecuado para sus necesidades específicas de Computer Vision.

En conclusión...

Está claro que la detección de objetos ya se ha convertido en parte integrante de nuestra vida cotidiana, sin que nos demos cuenta. Ya se trate de moderar las redes sociales o de optimizar las líneas de producción, esta tecnología de inteligencia artificial aporta su cuota de discreta ayuda.

Sin embargo, en medio de los notables logros de la detección de objetos, debemos reconocer los retos que quedan en el horizonte. Uno de estos retos es la gestión de grandes volúmenes de datos de entrenamiento y la multitud de ángulos y poses de los objetos. Aunque la detección de objetos ha avanzado significativamente en el tratamiento de las variaciones de orientación de los objetos, son necesarios nuevos avances para aumentar su robustez en escenarios complejos. Para superar este reto será necesario seguir innovando y perfeccionando los algoritmos de detección de objetos.

Sin embargo, a pesar de estos retos, el ritmo de progreso de la inteligencia artificial sigue siendo incesante. Con la investigación y el desarrollo en curso, parece claroque las aplicaciones de detección de objetos seguirán diversificándose y evolucionando. En los próximos años, las técnicas de detección de objetos deberían generalizarse en ámbitos como la vigilancia sanitaria y medioambiental. En sanidad, contribuirán a la detección precoz de enfermedades mediante imágenes médicas, ayudando al diagnóstico y tratamiento oportunos de los pacientes. En la vigilancia del medio ambiente, permitirán controlar y mitigar el impacto del cambio climático.

En conclusión, aunque siguen existiendo retos, la trayectoria de los avances en inteligencia artificial nos asegura que la detección de objetos es una técnica prometedora que se beneficiará de ser adoptada por los equipos de I+D, para construir productos industriales y de consumo cada vez más sofisticados.

¿Ha identificado un caso de uso que requiere la aplicación de técnicas de detección de objetos? Problema: no sabes cómo conseguir los datos de entrenamiento que necesitas para que tu proyecto sea un éxito. Que no cunda el pánico, Innovatiana es especialista en anotación de datos para IA: nuestros etiquetadores de datos especializados y expertos están aquí para ayudarle a construir conjuntos de datos de alta calidad. No dude en ponerse en contacto con nosotros.