Instance Segmentation/es

    From Marovi AI
    This page is a translated version of the page Instance Segmentation and the translation is 100% complete.
    Other languages:
    Article
    Topic area Computer Vision
    Prerequisites Convolutional Neural Network, Object Detection, Semantic Segmentation


    Resumen

    La segmentación de instancias es la tarea de visión por computadora que consiste en detectar cada instancia de objeto en una imagen y producir una máscara con precisión a nivel de píxel para cada una. A diferencia de la segmentación semántica, que asigna una sola etiqueta de clase a cada píxel sin distinguir entre diferentes objetos de la misma clase, la segmentación de instancias separa cada objeto individual: dos coches adyacentes reciben dos máscaras distintas en lugar de una región fusionada de "coche". A diferencia de la detección de objetos, que localiza objetos con cuadros delimitadores alineados a los ejes, la segmentación de instancias delinea con exactitud los límites de los objetos.

    La salida para una imagen es un conjunto de tuplas de longitud variable, cada una compuesta por una etiqueta de clase, una puntuación de confianza y una máscara binaria que cubre el objeto. La segmentación de instancias sustenta aplicaciones en conducción autónoma, imagen médica, manipulación robótica, análisis de imágenes satelitales y herramientas de edición fotográfica. Es más difícil que cualquiera de sus tareas componentes porque el modelo debe resolver simultáneamente un problema de detección (cuántos objetos, de qué clases, dónde) y un problema de etiquetado de píxeles a grano fino (qué píxeles pertenecen a qué instancia), y debe hacerlo de un modo que resuelva los objetos solapados y ocluidos.

    Relación con tareas adyacentes

    La segmentación de instancias se sitúa en la intersección de varios problemas bien estudiados. La segmentación semántica produce un único mapa de etiquetas y no puede contar objetos. La detección de objetos produce cuadros alineados a los ejes que incluyen píxeles de fondo alrededor del objeto. La segmentación panóptica es una generalización estricta que unifica la segmentación de instancias para "things" (objetos contables como personas y coches) con la segmentación semántica para "stuff" (regiones amorfas como cielo y carretera), asignando cada píxel a exactamente un segmento.

    Una manera útil de pensar en la diferencia: la segmentación semántica responde "qué hay en cada píxel", la detección responde "dónde está cada objeto", y la segmentación de instancias responde a ambas a la vez. Muchas arquitecturas explotan esto compartiendo una red troncal entre tareas y añadiendo cabezales específicos para cada tarea.

    Enfoques de dos etapas

    El paradigma dominante durante varios años fue el detector de dos etapas extendido con un cabezal de máscara. Mask R-CNN[1] extiende Faster R-CNN añadiendo una pequeña red totalmente convolucional que predice una máscara binaria para cada región de interés (RoI). Las dos etapas son: (1) una red de propuestas de región que genera cuadros de objetos candidatos a partir del mapa de características del backbone, y (2) cabezales por RoI que clasifican la propuesta, refinan el cuadro y predicen una máscara de resolución fija (típicamente 28x28 o 14x14) que luego se redimensiona al cuadro.

    Una contribución clave fue RoIAlign, que reemplaza el RoIPool cuantizado por un muestreo bilineal en coordenadas exactas de punto flotante. La cuantización introducía desalineamientos de unos pocos píxeles que eran tolerables para la regresión de cuadros pero devastadores para las máscaras, donde uno o dos píxeles de holgura degradan visiblemente los bordes. RoIAlign mejoró la AP de máscara en varios puntos sin cambiar el resto del modelo.

    El cabezal de máscara desacopla la predicción de máscara de la clasificación: predice una máscara binaria distinta por clase y selecciona en tiempo de inferencia la que corresponde a la clase predicha. La pérdida de máscara por RoI es una entropía cruzada binaria calculada solo sobre el canal correspondiente a la clase verdadera, lo que evita la competencia entre clases.

    Enfoques de una etapa y en tiempo real

    Los métodos de dos etapas son precisos pero lentos porque cada RoI atraviesa el cabezal de máscara secuencialmente. La segmentación de instancias de una etapa busca inferencia en tiempo real prediciendo máscaras directamente a partir de un mapa de características denso.

    YOLACT[2] factoriza la predicción de máscara en dos partes: un conjunto de "máscaras prototipo" a nivel de imagen producidas una vez por imagen, y coeficientes por instancia predichos en cada detección. La máscara final de la instancia es una combinación lineal de prototipos, recortada luego por el cuadro predicho. SOLO[3] reformula el problema por completo: predice una categoría de instancia en cada celda de una rejilla y una máscara correspondiente, reemplazando la canalización detectar-luego-segmentar por una predicción densa y directa de máscara. CondInst[4] predice filtros convolucionales dinámicos por instancia que se aplican a un mapa de características compartido para producir máscaras.

    Enfoques basados en transformadores

    Los transformadores de detección reformulan la predicción de instancias como predicción de conjuntos. DETR[5] utiliza consultas de objeto aprendidas que atienden a las características de la imagen y emiten un conjunto de tamaño fijo de predicciones (clase, cuadro), entrenado con una pérdida de emparejamiento húngaro que impone una correspondencia uno a uno con la verdad de referencia, eliminando la necesidad de supresión de no máximos.

    MaskFormer y Mask2Former[6] extienden esta idea a la segmentación haciendo que cada consulta prediga directamente una clase y una máscara. Una sola arquitectura Mask2Former alcanza resultados de estado del arte en benchmarks de segmentación semántica, de instancias y panóptica, sugiriendo que el problema subyacente está unificado a nivel arquitectónico aun cuando se evalúa con métricas diferentes. La idea clave es que la predicción de máscara es una forma natural de atención: la máscara de cada consulta es el mapa de atención sobre las características de la imagen.

    Objetivos de entrenamiento

    Los modelos de segmentación de instancias se entrenan típicamente con una pérdida multitarea que combina clasificación, regresión de cuadro y predicción de máscara:

    $ {\displaystyle \mathcal{L} = \mathcal{L}_{\text{cls}} + \lambda_{\text{box}} \mathcal{L}_{\text{box}} + \lambda_{\text{mask}} \mathcal{L}_{\text{mask}}} $

    La pérdida de máscara es más comúnmente la entropía cruzada binaria por píxel, a veces complementada con una pérdida Dice para mejorar la calidad de los bordes:

    $ {\displaystyle \mathcal{L}_{\text{Dice}} = 1 - \frac{2 \sum_i p_i g_i}{\sum_i p_i + \sum_i g_i}} $

    donde $ p_i $ es la probabilidad predicha y $ g_i \in \{0,1\} $ la etiqueta verdadera en el píxel $ i $. La pérdida Dice maneja mejor el desbalance de clases que la entropía cruzada cuando el primer plano cubre una pequeña fracción de los píxeles, pero por sí sola es más ruidosa; combinar ambas es la práctica habitual.

    Evaluación

    La métrica estándar es la precisión promedio de máscara (mask AP), calculada de forma análoga a la AP de cuadro pero con la intersección sobre unión computada entre las máscaras predichas y las de referencia, en lugar de cuadros. El COCO mAP[7] promedia AP sobre umbrales de IoU desde 0,5 hasta 0,95 en pasos de 0,05 y sobre cubos de tamaño de objeto (pequeño, mediano, grande). Se han propuesto métricas conscientes del borde, como Boundary AP, para premiar mejor los bordes nítidos de máscara, dado que el IoU a nivel de píxel se satura mucho antes de que la máscara esté visualmente limpia.

    Conjuntos de datos comunes incluyen COCO (80 clases, ~118k imágenes de entrenamiento), LVIS[8] (más de 1200 clases con distribución de cola larga) y Cityscapes (escenas de conducción urbana con anotaciones finas a nivel de píxel).

    Limitaciones y problemas abiertos

    La segmentación de instancias hereda las dificultades de la detección (objetos pequeños, escenas densas, clases novedosas) y añade fallos específicos de la segmentación: las estructuras finas (cables, extremidades de animales) son sistemáticamente sub-segmentadas porque su área en píxeles es pequeña en relación con la pérdida; los bordes de las máscaras suelen estar a unos pocos píxeles del borde verdadero porque las resoluciones de salida son gruesas; la oclusión severa confunde tanto al detector (instancias perdidas) como al cabezal de máscara (una sola máscara que cubre dos objetos). Las distribuciones de clases de cola larga en conjuntos de datos como LVIS exponen la brecha entre la exactitud en clases comunes y en clases raras, e impulsan la investigación en pérdidas balanceadas por clase y muestreo.

    Una frontera distinta es la segmentación de instancias de vocabulario abierto y orientable mediante prompts. El Segment Anything Model[9] demostró que un modelo entrenado con un conjunto de mil millones de máscaras puede producir máscaras de alta calidad a partir de prompts de punto o de cuadro sobre categorías nunca vistas, desacoplando la segmentación de un conjunto de etiquetas fijo. Combinado con modelos de visión y lenguaje para la asignación de clase, esto apunta hacia sistemas de segmentación de instancias que operan sobre vocabularios abiertos en lugar de las taxonomías cerradas de los conjuntos de datos de la era COCO.

    Referencias

    1. He et al., Mask R-CNN, ICCV 2017.
    2. Bolya et al., YOLACT: Real-time Instance Segmentation, ICCV 2019.
    3. Wang et al., SOLO: Segmenting Objects by Locations, ECCV 2020.
    4. Tian et al., Conditional Convolutions for Instance Segmentation, ECCV 2020.
    5. Carion et al., End-to-End Object Detection with Transformers, ECCV 2020.
    6. Cheng et al., Masked-attention Mask Transformer for Universal Image Segmentation, CVPR 2022.
    7. Lin et al., Microsoft COCO: Common Objects in Context, ECCV 2014.
    8. Gupta et al., LVIS: A Dataset for Large Vocabulary Instance Segmentation, CVPR 2019.
    9. Kirillov et al., Segment Anything, ICCV 2023.