Acompáñanos a ver más de cerca qué es la segmentación de instancias, cómo funciona, su uso en diversas aplicaciones de visión por ordenador y el impacto que puede tener.
Las aplicaciones de visión por ordenador son cada vez más comunes en nuestra vida cotidiana, desde las cámaras de tráfico que controlan el estado de las carreteras hasta los sistemas de autopago en las tiendas. Al permitir que las máquinas comprendan los datos visuales de forma similar a los humanos, la IA de Visión está teniendo un impacto en toda una serie de industrias.
Muchas de estas aplicaciones se basan en la detección de objetos, una tarea de visión por ordenador que coloca cuadros delimitadores alrededor de los objetos clave de las imágenes. Aunque este enfoque suele funcionar bien, algunas soluciones de análisis de imágenes necesitan una precisión aún mayor.
Por ejemplo, la imagen médica, requiere algo más que detectar un tumor: es crucial perfilar su forma exacta. Del mismo modo, en robótica, las máquinas necesitan reconocer los contornos exactos de un objeto para agarrarlo correctamente. Para afrontar estos retos, la segmentación de instancias ofrece una solución más precisa.
La segmentación de instancias es una tarea de visión por ordenador diseñada para dar soporte a casos de uso en los que detectar objetos no es suficiente: proporciona precisión a nivel de píxel. Los modelos de visión por ordenador como Ultralytics YOLO11 pueden utilizarse para aplicar fácilmente la segmentación de instancias a imágenes y vídeos.
En esta guía, desglosaremos cómo funciona la segmentación de instancias, sus aplicaciones y cómo Ultralytics YOLO11 puede entrenarse a medida para tareas de segmentación específicas.
Supongamos que hay una foto de grupo de personas muy juntas. La detección de objetos puede ayudarte a dibujar recuadros alrededor de cada persona, pero eso no te dice su forma exacta.
La segmentación de instancias, por otra parte, es similar a trazar cuidadosamente alrededor de cada persona para que puedas ver su contorno completo, aunque se superpongan. En lugar de limitarse a marcar dónde está algo con un recuadro, identifica la forma exacta de cada objeto a nivel de píxel, lo que facilita la comprensión de imágenes complejas.
El resultado es una máscara detallada que rellena la forma de un objeto, señalando exactamente qué píxeles pertenecen a él. Este nivel de precisión es útil en muchas aplicaciones del mundo real en las que es importante comprender la forma y los límites exactos de los objetos.
Al explorar la segmentación por instancias, es posible que te encuentres con el concepto de segmentación semántica.
Ambas técnicas ayudan a los ordenadores a comprender las imágenes a nivel de píxel, pero tienen fines distintos. La segmentación semántica etiqueta cada píxel en función de su categoría, agrupando todos los objetos del mismo tipo. Por ejemplo, en una imagen con varios coches, la segmentación semántica los marcaría a todos como "coche" sin distinguir entre vehículos individuales.
La segmentación de instancias, en cambio, va un paso más allá al identificar cada objeto por separado. Asigna etiquetas únicas a las instancias individuales y crea máscaras precisas alrededor de sus formas. Así, en la misma imagen, la segmentación por instancias no se limitaría a etiquetar todo como "coche", sino que reconocería y contornearía cada coche individualmente.
La principal diferencia entre ambas es que la segmentación semántica, agrupa los objetos por categorías, mientras que la segmentación por instancias distingue cada objeto como una entidad única con límites claros. Elegir qué tarea utilizar depende de la aplicación concreta: si basta con saber qué hay en una imagen o si es importante diferenciar entre objetos individuales.
Hoy en día, la comunidad de Vision AI dispone de varios modelos de segmentación de instancias. Algunos son más rápidos, otros más precisos y otros más fáciles de usar.
Estas opciones, aunque útiles, pueden llevar a la pregunta: ¿cuál es la adecuada para una tarea concreta? Entre las opciones, los modelosYOLO Ultralytics son bastante populares porque se centran en la velocidad y la precisión.
Además, estos modelos han evolucionado mucho a lo largo de los años. Por ejemplo, Ultralytics YOLOv5 simplificó el despliegue utilizando marcos como PyTorch, haciendo que la IA de Visión avanzada fuera accesible a un público más amplio sin necesidad de profundos conocimientos técnicos.
Aprovechando ese éxito, Ultralytics YOLOv8 introdujo un soporte mejorado para tareas de visión por ordenador como la segmentación de instancias, la estimación de poses y la clasificación de imágenes.
Ahora, YOLO11 lleva el rendimiento a un nuevo nivel. Alcanza una mayor precisión media (mAP) en el conjunto de datos COCO con un 22% menos de parámetros que YOLOv8m, lo que significa que puede reconocer objetos con mayor precisión utilizando menos recursos.
En pocas palabras, YOLO11 ofrece una precisión de vanguardia sin comprometer la eficacia, lo que lo convierte en una herramienta revolucionaria sobre el terreno.
A continuación, vamos a explorar cómo funciona normalmente la segmentación de instancias. Los modelos de visión por ordenador más antiguos utilizan un enfoque en dos pasos.
En primer lugar, detectan los objetos dibujando cuadros delimitadores a su alrededor. Después, generan una máscara a nivel de píxel para delinear la forma exacta de cada objeto. Un ejemplo bien conocido es la R-CNN de máscara, que se basa en modelos de detección de objetos añadiendo un paso de predicción de máscara. Aunque este método es eficaz, puede ser lento porque procesa la imagen en varias etapas, lo que dificulta las aplicaciones en tiempo real.
Mientras tanto, modelos como YOLO11 procesan las imágenes de una sola vez, prediciendo simultáneamente los recuadros delimitadores de los objetos y las máscaras de segmentación de las instancias. Este enfoque racionalizado lo hace mucho más rápido, manteniendo una gran precisión. Como resultado, es especialmente útil para aplicaciones en tiempo real como la conducción autónoma, el análisis de vídeo y la robótica, donde tanto la velocidad como la precisión son cruciales.
YOLO11 viene como modelo preentrenado. Se ha entrenado en el conjunto de datos COCO-Seg, que abarca objetos cotidianos para la segmentación de ejemplos. Sin embargo, el paquetePython Ultralytics admite el entrenamiento personalizado, que es esencial para aplicaciones especializadas en las que hay que segmentar objetos únicos.
¿Por qué es importante el entrenamiento personalizado o el ajuste fino de un modelo? El entrenamiento personalizado aprovecha el aprendizaje por transferencia basándose en los conocimientos ya incorporados en los modelos preentrenados. En lugar de empezar de cero, adapta un modelo existente a nuevas tareas utilizando conjuntos de datos más pequeños y menos recursos informáticos, todo ello manteniendo una alta precisión.
A continuación, te mostramos los pasos necesarios para ajustar YOLO11 a la segmentación por ejemplo:
La segmentación de instancias puede utilizarse para resolver retos del mundo real, ayudando a las máquinas a ver y comprender los objetos con mayor precisión. Desde la mejora de la automatización hasta la protección del medio ambiente, desempeña un papel clave en muchos campos. Veamos algunos ejemplos de su impacto.
La segmentación de instancias puede ser una parte fundamental para garantizar la seguridad y la eficacia en las obras. Por ejemplo, puede utilizarse para controlar la maquinaria pesada.
YOLO11 puede ajustarse para segmentar e identificar con precisión distintos tipos de equipos, como grúas, excavadoras y bulldozers, y seguir sus posiciones en tiempo real. Esto permite a los jefes de obra asegurarse de que la maquinaria funciona estrictamente dentro de las áreas designadas y no invade las zonas donde hay trabajadores o existen peligros.
Además, la integración de estas soluciones con sistemas de alerta en tiempo real permite tomar medidas correctivas con rapidez. Además, la información recopilada puede ayudar a optimizar la disposición de las instalaciones y el flujo de trabajo, reduciendo aún más los riesgos y aumentando la productividad.
La monitorización del comportamiento animal ayuda a investigadores, granjeros y conservacionistas a cuidar mejor de los animales en distintos entornos. La segmentación de instancias desempeña un papel útil en estos sistemas al identificar y segmentar animales individuales en granjas, zoológicos y hábitats naturales. A diferencia de la detección de objetos tradicional, que utiliza cuadros delimitadores, la segmentación de instancias proporciona una delineación a nivel de píxel de cada animal, lo que resulta especialmente útil cuando los animales están muy próximos.
La segmentación detallada facilita un seguimiento más preciso de los movimientos y comportamientos. Los animales superpuestos o muy agrupados pueden reconocerse claramente, y proporcionan un análisis más preciso de las interacciones, las evaluaciones de salud y los patrones de actividad. En general, un conocimiento más profundo del comportamiento animal mejora las prácticas de cuidado y gestión de los animales.
El seguimiento preciso de jugadores y eventos es una parte importante del análisis deportivo. Los métodos tradicionales de seguimiento se basan en el etiquetado manual, que puede no captar interacciones detalladas. La visión por ordenador puede utilizarse para segmentar detalles como cada jugador, balón y evento clave a nivel de píxel, para obtener una visión detallada.
Por ejemplo, la segmentación de instancias puede ayudar a detectar eventos como faltas o incidentes sin balón, separando claramente a cada jugador y objeto. Este seguimiento granular que permiten modelos como YOLO11 ofrece a los analistas información más clara para estudiar los patrones de movimiento, el posicionamiento espacial y las interacciones con gran precisión. Una ventaja clave de estos conocimientos es que ayudan a los equipos a perfeccionar sus estrategias e impulsar el rendimiento general.
He aquí algunas de las principales ventajas que la segmentación de instancias puede aportar a diversos sectores:
Aunque estas ventajas ponen de manifiesto cómo afecta la segmentación de instancias a los distintos casos de uso, también es esencial tener en cuenta los retos que implica su aplicación.
He aquí algunas de las principales limitaciones de la segmentación por instancias:
La segmentación de instancias permite distinguir objetos individuales con precisión, incluso cuando se solapan. Al captar los límites de los objetos a nivel de píxel, proporciona una comprensión más profunda de los datos visuales en comparación con las tareas tradicionales de visión por ordenador, como la detección de objetos.
Los recientes avances en visión por ordenador han hecho que la segmentación de instancias sea más rápida y fácil de usar. En particular, los modelos de visión por ordenador como Ultralytics YOLO11 simplifican el proceso, permitiendo la segmentación en tiempo real con una configuración mínima, lo que la hace más accesible para diversas industrias y aplicaciones.
¿Tienes curiosidad por la IA? Visita nuestro repositorio de GitHub y conéctate con nuestra comunidad para seguir explorando. Infórmate sobre innovaciones como la IA en los coches autoconducidos y la IA de visión en la agricultura en nuestras páginas de soluciones. Echa un vistazo a nuestras opciones de licencia y ¡empieza un proyecto de visión por ordenador!
Comienza tu viaje con el futuro del aprendizaje automático