Cómo utilizar Ultralytics YOLO11 para la segmentación de instancias

Abirami Vina

5 minutos de lectura

5 de noviembre de 2024

Comprenda cómo puede utilizarse el nuevo modelo YOLO11 de Ultralytics para la segmentación de instancias con el fin de lograr una mayor precisión en aplicaciones como la gestión de residuos y la supervisión de antorchas.

La visión por ordenador, un campo de la inteligencia artificial (IA) que ayuda a las máquinas a interpretar y comprender la información visual, permite realizar tareas como la segmentación de instancias. La segmentación de instancias permite analizar una imagen o un fotograma de vídeo para marcar los límites exactos de cada objeto de la imagen, incluso cuando hay varios objetos del mismo tipo. Gracias a su alto nivel de precisión, la segmentación de instancias tiene una amplia gama de aplicaciones, desde ayudar a los coches autoconducidos a detectar obstáculos en la carretera hasta identificar tumores en exploraciones médicas.

A lo largo de los años, la segmentación de instancias ha evolucionado significativamente. Durante el evento híbrido anual de Ultralytics, YOLO Vision 2024 (YV24), se presentó un desarrollo reciente en forma del modelo Ultralytics YOLO11. El nuevo modelo admite las mismas tareas de visión por ordenador (incluida la segmentación de instancias) que el modelo YOLOv8 de Ultralytics, por lo que los usuarios familiarizados con las versiones anteriores pueden adoptar el nuevo modelo sin problemas.

Fig. 1. Ejemplo de utilización del modelo YOLO11 de Ultralytics para la segmentación de instancias.

En este artículo, exploraremos la segmentación de instancias y en qué se diferencia de otras tareas de visión por ordenador como la segmentación semántica, además de discutir algunas de sus aplicaciones. También veremos cómo utilizar el modelo de segmentación de instancias YOLO11 utilizando el paquete Python de Ultralytics y la plataforma Ultralytics HUB. Pongámonos manos a la obra.

¿Qué es la segmentación por instancias?

La segmentación de instancias puede utilizarse para identificar objetos en una imagen y delinearlos a nivel de píxel. El proceso suele consistir en detectar primero los objetos y dibujar recuadros a su alrededor. A continuación, un algoritmo de segmentación clasifica cada píxel dentro del cuadro delimitador para crear una máscara precisa para cada objeto.

La segmentación por instancias también es diferente de tareas como la segmentación semántica y la segmentación panóptica. La segmentación semántica etiqueta cada píxel basándose en la categoría general de un objeto, sin distinguir instancias individuales. La segmentación panóptica, por su parte, combina la segmentación por instancias y la segmentación semántica etiquetando cada píxel con un ID de clase y de instancia, e identificando objetos individuales dentro de cada categoría.

Fig. 2. Uso de YOLO11 para detectar y segmentar una persona y un perro.

Las capacidades de segmentación de instancias pueden aplicarse en diversos escenarios que pueden requerir diferentes modelos. Por ejemplo, un modelo ligero podría ser ideal para el procesamiento en tiempo real en aplicaciones móviles, mientras que un modelo más complejo podría utilizarse para tareas de alta precisión como el control de calidad en la fabricación.

Al igual que los modelos anteriores, el modelo de segmentación de instancias YOLO11 también se presenta con diversas variaciones en función de sus necesidades. Estas variaciones incluyen el YOLO11n-seg (Nano), YOLO11s-seg (Pequeño), YOLO11m-seg (Mediano), YOLO11l-seg (Grande) y YOLO11x-seg (Extra Grande). Estos modelos varían en cuanto a tamaño, velocidad de procesamiento, precisión y potencia de cálculo. En función de sus necesidades específicas, puede elegir el modelo que mejor se adapte a su aplicación.

Aplicaciones de segmentación de instancias para YOLO11

Las capacidades avanzadas de segmentación de instancias de YOLO11 abren un abanico de aplicaciones en diversos sectores. Veamos con más detalle algunas de estas aplicaciones.

Utilización de la segmentación YOLO11 en la industria del petróleo y el gas

La extracción de petróleo y gas implica gestionar fluctuaciones de presión extremadamente altas. Técnicas como la quema de gas ayudan a quemar el gas natural que se produce durante la extracción de petróleo. Es necesario por razones de seguridad. Por ejemplo, en la extracción de petróleo crudo, un pico de presión repentino o significativo podría provocar una explosión. Aunque poco frecuentes, los accidentes industriales en el sector de la extracción de petróleo y gas pueden provocar incendios intensos difíciles de contener y controlar. La quema de gas ayuda a los operadores a despresurizar los equipos de forma segura y a gestionar las grandes fluctuaciones de presión impredecibles quemando el exceso de gas.

Los sistemas de IA pueden mejorar este proceso de supervisión, y el riesgo de accidentes puede reducirse utilizando un sistema de supervisión de la combustión basado en la segmentación de instancias. El control de la combustión de gas también es importante por razones medioambientales, ya que un exceso de combustión puede tener un impacto negativo en el medio ambiente. 

Los modelos de segmentación de instancias YOLO11 de Ultralytics pueden utilizarse para controlar la cantidad de fuego y humo provocados por las llamaradas. Se puede calcular el área en píxeles de la llamarada y el humo detectados y segmentados. Con esta información, los operadores pueden obtener información en tiempo real sobre las llamaradas y el humo provocados por la combustión en antorcha, lo que les ayuda a prevenir accidentes y efectos negativos en el medio ambiente. 

Fig. 3. Ejemplo de control de antorchas con YOLO11 en la industria del petróleo y el gas.

Segmentación de instancias con YOLO11 para la gestión de residuos plásticos 

Los trabajadores de las instalaciones de gestión y reciclaje de residuos pueden utilizar los sistemas basados en la segmentación de instancias de YOLO11 para identificar los materiales de desecho plásticos. YOLO11 puede integrarse con sistemas robóticos de clasificación para identificar con precisión distintos materiales de desecho, como cartón y plástico (que deben procesarse por separado). Esto es especialmente importante si se tiene en cuenta que de los 7.000 millones de toneladas de residuos pl ásticos que se generan en el mundo, sólo se recicla el 10%.

La automatización de la identificación y clasificación de residuos plásticos reduce considerablemente el tiempo necesario en comparación con los métodos tradicionales, en los que los trabajadores clasifican los artículos a mano. Los modelos de visión artificial pueden incluso segmentar plásticos blandos, como envoltorios y bolsas, que resultan especialmente difíciles porque a menudo se enredan. Los modelos YOLO11 también pueden entrenarse a medida para segmentar distintos tipos de plásticos. En las siguientes secciones aprenderemos más sobre cómo se puede entrenar a medida un modelo YOLO11.

Fig. 4. Identificación de residuos plásticos con Ultralytics YOLO11. 

YOLO11 segmentación en vehículos autónomos

Otro caso interesante de uso de la segmentación de instancias es el de los coches autónomos. YOLO11 permite a los coches autónomos mejorar la seguridad de los pasajeros y de los demás en la carretera al reconocer con precisión los objetos a nivel de píxel. El sistema de cámaras a bordo del coche puede capturar imágenes del entorno y analizarlas utilizando YOLO11 y la segmentación de instancias. Cada objeto (peatones, semáforos, otros vehículos, etc.) de la imagen se segmenta y se le asigna una etiqueta. Este nivel de precisión permite a los coches autónomos identificar todos y cada uno de los objetos que los rodean. 

Fig. 5. Uso de YOLO11 y segmentación de instancias para identificar vehículos y peatones en la carretera.

Pruebas de segmentación de instancias con el modelo YOLO11

Ahora que hemos explorado la segmentación de instancias y discutido algunas de sus aplicaciones, veamos cómo puede probarla utilizando el modelo YOLO11 de Ultralytics. 

Hay dos maneras de hacerlo: puede utilizar el paquete Python de Ultralytics o el HUB de Ultralytics. Vamos a explorar ambos, empezando por el paquete Python.

Ejecutar inferencias con YOLO11

Ejecutar una inferencia implica utilizar el modelo para analizar datos nuevos, no vistos previamente. Para ejecutar una inferencia utilizando el modelo de segmentación de instancias YOLO11 mediante código, necesitamos instalar el paquete Ultralytics Python utilizando pip, conda o docker. En caso de que te encuentres con algún problema durante la instalación, puedes consultar nuestra Guía de Problemas Comunes para obtener ayuda con la solución de problemas. Una vez instalado el paquete, puede ejecutar el código que se muestra a continuación para cargar el modelo de segmentación de instancias YOLO11 y ejecutar predicciones en una imagen.

Fig. 6. Ejecución de una inferencia sobre una imagen utilizando YOLO11n-seg.

Entrenamiento de un modelo YOLO11 personalizado

Con la misma configuración de código, también puede entrenar un modelo YOLO11 personalizado. Al ajustar un modelo YOLO11, puede crear una versión personalizada del modelo que satisfaga mejor los requisitos específicos de su proyecto. Por ejemplo, los minoristas pueden utilizar un modelo personalizado para segmentar con precisión las características físicas de un cliente y recomendarle ropa que le quede bien. El siguiente fragmento de código muestra cómo cargar y entrenar un modelo YOLO11 para la segmentación de instancias. Puede partir de una configuración YAML o de un modelo preentrenado, transferir pesos y entrenar en un conjunto de datos como COCO para lograr una segmentación eficaz. 

Una vez completado, puede realizar inferencias utilizando el modelo personalizado para sus aplicaciones específicas. Mediante la opción de exportación, también puede exportar su modelo personalizado a un formato diferente.

Segmentación de instancias YOLO11 en Ultralytics HUB

Ahora que hemos explorado la ejecución de inferencias y el entrenamiento personalizado de un modelo de segmentación de instancias YOLO11 mediante código, veamos una alternativa sin código: Ultralytics HUB. Ultralytics HUB es una plataforma intuitiva de Vision AI que simplifica el proceso de formación y despliegue de modelos YOLO, incluidos los modelos de segmentación de instancias YOLO11. 

Para realizar inferencias sobre imágenes, sólo tiene que crear una cuenta, ir a la sección "Modelos" y seleccionar la variante del modelo de segmentación de instancias YOLO11 que desee. Puede cargar una imagen y ver los resultados de la predicción en la sección de vista previa, como se muestra a continuación.

Fig 7. Ejecución de inferencias en Ultralytics HUB.

Principales conclusiones

YOLO11 ofrece funciones fiables de segmentación de instancias que abren un mundo de posibilidades en diversos sectores. Desde la mejora de la seguridad en vehículos autónomos y la supervisión de la combustión de gases en el sector del petróleo y el gas hasta la automatización de la clasificación de residuos en instalaciones de reciclaje, la precisión a nivel de píxel de YOLO11 la hace ideal para tareas de segmentación complejas. 

Con opciones de formación personalizada a través del paquete Python de Ultralytics y una configuración sin código a través de Ultralytics HUB, los usuarios pueden integrar YOLO11 a la perfección en sus flujos de trabajo. Ya sea para aplicaciones industriales, sanitarias, minoristas o de supervisión medioambiental, YOLO11 aporta flexibilidad y precisión para satisfacer diversas necesidades de segmentación.

Para saber más, visite nuestro repositorio de GitHub y participe en nuestra comunidad. Explora las aplicaciones de IA en coches autónomos y agricultura en nuestras páginas de soluciones. 🚀

¡Construyamos juntos el futuro
de la IA!

Comience su viaje con el futuro del aprendizaje automático

Empezar gratis
Enlace copiado en el portapapeles