Glosario

Segmentación de instancias

Descubre cómo la segmentación de instancias refina la detección de objetos con precisión a nivel de píxel, permitiendo máscaras de objetos detalladas para aplicaciones de IA.

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

La segmentación de instancias es una sofisticada técnica de visión por ordenador (VC ) que identifica objetos dentro de una imagen y delinea los límites precisos de cada instancia individual a nivel de píxel. A diferencia de los métodos que sólo colocan recuadros alrededor de los objetos, la segmentación de instancias proporciona una comprensión mucho más detallada de una escena al crear una máscara única para cada objeto detectado, aunque pertenezcan a la misma clase. Esta capacidad es crucial para las aplicaciones avanzadas de inteligencia artificial (IA), en las que es esencial conocer la forma, el tamaño y la extensión espacial exactos de los distintos objetos, sobre todo cuando éstos se solapan.

Cómo funciona la segmentación de instancias

Los modelos de segmentación de instancias analizan una imagen para localizar primero los objetos potenciales y luego, para cada objeto detectado, predecir qué píxeles pertenecen a esa instancia concreta. Los enfoques tradicionales, como la influyente arquitectura R-CNN de máscara, suelen emplear un proceso de dos etapas: primero, realizan la detección de objetos para generar propuestas de cajas delimitadoras, y segundo, generan una máscara de segmentación dentro de cada caja propuesta. Aunque eficaces, estos métodos pueden ser exigentes desde el punto de vista computacional.

Enfoques más recientes, que incluyen modelos como Ultralytics YOLOsuelen utilizar procesos de una sola etapa. Estos modelos predicen simultáneamente los recuadros delimitadores, las etiquetas de clase y las máscaras de instancia en una sola pasada por la red neuronal (NN), lo que conlleva mejoras significativas en la velocidad, haciéndolos adecuados para la inferencia en tiempo real. El entrenamiento de estos modelos requiere grandes conjuntos de datos con anotaciones a nivel de píxel, como el ampliamente utilizado conjunto de datos COCO, en concreto sus anotaciones de segmentación. El proceso suele implicar técnicas de aprendizaje profundo (deep learning, DL), que aprovechan las redes neuronales convolucionales (Convolutional Neural Networks, CNN) para aprender características visuales complejas.

Segmentación de Instancias Vs. Tareas Relacionadas

Es importante diferenciar la segmentación de instancias de otras tareas de segmentación de imágenes:

  • Detección de objetos: Identifica la presencia y ubicación de objetos mediante cuadros delimitadores, pero no proporciona información sobre la forma. La segmentación de instancias va más allá, perfilando los píxeles exactos de cada objeto.
  • Segmentación semántica: Asigna una etiqueta de clase a cada píxel de una imagen (por ejemplo, "coche", "persona", "carretera"). Sin embargo, no distingue entre diferentes instancias de la misma clase. Todos los coches, por ejemplo, formarían parte del mismo segmento "coche". Puedes leer más en esta guía sobre segmentación por instancias frente a segmentación semántica.
  • Segmentación panóptica: Combina la segmentación semántica y la segmentación por instancias. Asigna una etiqueta de clase a cada píxel (como la segmentación semántica) y también identifica unívocamente cada instancia de objeto (como la segmentación por instancias).

La segmentación de instancias se centra específicamente en detectar y delinear instancias de objetos individuales, proporcionando una gran precisión en cuanto a los límites y la separación de los objetos.

Aplicaciones de la segmentación de instancias

La capacidad de identificar y aislar con precisión objetos individuales hace que la segmentación de instancias tenga un valor incalculable en numerosos campos:

  • Conducción autónoma: Los coches de conducción autónoma dependen de la segmentación de instancias para percibir con precisión su entorno. Diferenciar entre vehículos individuales, peatones, ciclistas y obstáculos, incluso en escenas desordenadas o superpuestas, es fundamental para una navegación y una toma de decisiones seguras. Empresas como Waymo utilizan ampliamente estas técnicas.
  • Análisis de imágenes médicas: En radiología y patología, la segmentación de instancias ayuda a delinear estructuras específicas como tumores, órganos o células en exploraciones(TC, RM, etc.). Esta precisión a nivel de píxel ayuda en el diagnóstico, la medición del tamaño del tumor, la planificación de cirugías y el seguimiento de la progresión de la enfermedad. Por ejemplo, el uso de YOLO11 para la detección de tumores muestra esta aplicación dentro del contexto más amplio de la IA en la asistencia sanitaria.
  • Robótica: Los robots que realizan tareas como agarrar o manipular en entornos no estructurados necesitan identificar y localizar objetos individuales con precisión. La segmentación de instancias permite a los robots comprender la forma y los límites exactos de los objetos para interactuar con éxito, lo que se estudia más a fondo en AI in Robotics.
  • Análisis de Imágenes de Satélite: Se utiliza para cartografiar detalladamente la cubierta terrestre, controlar la expansión urbana identificando edificios individuales, o rastrear objetos concretos como barcos o vehículos. Este nivel de detalle contribuye a la vigilancia medioambiental, la gestión de recursos y la recopilación de información. Explora las técnicas generales de análisis de imágenes de satélite.
  • Monitorización agrícola: Ayuda a contar plantas o frutos individuales, a evaluar la salud de los cultivos por planta o a identificar tipos específicos de malas hierbas para una intervención específica, contribuyendo a la agricultura de precisión.

Segmentación de instancias con Ultralytics YOLO

Ultralytics proporciona modelos de última generación capaces de realizar una segmentación de instancias eficaz. Modelos como YOLOv8 y YOLO11 están diseñados para ofrecer un alto rendimiento en diversas tareas de visión por ordenador, incluida la segmentación de instancias(ver detalles de la tarea de segmentación). Los usuarios pueden aprovechar los modelos preentrenados o realizar un ajuste fino en conjuntos de datos personalizados utilizando herramientas como la plataforma Ultralytics HUB, que simplifica el flujo de trabajo del aprendizaje automático (ML) desde la gestión de datos hasta el despliegue del modelo. Para la implementación práctica, tienes a tu disposición recursos como tutoriales sobre segmentación con modelos Ultralytics YOLOv8 preentrenados o guías sobre aislamiento de objetos de segmentación. También puedes aprender a utilizar Ultralytics YOLO11 para la segmentación de instancias. Frameworks populares como PyTorch y TensorFlow se utilizan habitualmente para desarrollar y desplegar estos modelos.

Leer todo