Descubre U-Net, la potente arquitectura CNN para la segmentación semántica. Aprende sus aplicaciones en imágenes médicas, por satélite y autónomas.
U-Net es una arquitectura especializada de Red Neuronal Convolucional (CNN ) desarrollada originalmente para tareas de segmentación de imágenes biomédicas. Su característica estructura en forma de U permite la localización y segmentación precisas de objetos dentro de imágenes, incluso con datos de entrenamiento limitados. Presentada por Olaf Ronneberger, Philipp Fischer y Thomas Brox en 2015, la U-Net se hizo rápidamente influyente más allá de su dominio inicial debido a su eficacia en diversas aplicaciones de visión por ordenador (VC ) que requieren una clasificación a nivel de píxel.
La arquitectura de la Red-U consta de dos vías principales: una vía de contracción (codificador) y una vía de expansión (decodificador), que forman su característica forma de "U".
El diseño de U-Net ofrece varias ventajas, sobre todo para las tareas de segmentación:
Aunque inicialmente se diseñó para la obtención de imágenes biomédicas, la arquitectura de U-Net es versátil:
U-Net se centra principalmente en la segmentación semántica, asignando una etiqueta de clase a cada píxel. Esto difiere de la segmentación de instancias, que distingue instancias individuales de objetos que pertenecen a la misma clase. Aunque U-Net puede adaptarse para la segmentación de instancias, los modelos como Mask R-CNN suelen ser más adecuados directamente para esa tarea. Los modelos modernos como Ultralytics YOLOv8 también ofrecen potentes capacidades de segmentación, a menudo optimizadas para la velocidad y el rendimiento en tiempo real, utilizando potencialmente diferentes enfoques arquitectónicos influidos por los avances en el aprendizaje profundo.
Entrenar una U-Net requiere datos anotados a nivel de píxel, en los que cada píxel de las imágenes de entrenamiento se etiqueta con su clase correspondiente. Este proceso, conocido como anotación de datos, suele requerir mucho trabajo. Los modelos U-Net suelen implementarse y entrenarse utilizando marcos de aprendizaje profundo populares como PyTorch y TensorFlow.