• Saltar a la navegación principal
  • Saltar al contenido principal
Logo Codificando Bits

Codificando Bits

  • Academia
    • Rutas
    • Cursos
    • Proyectos
    • Tutoriales
  • Acceder
  • Suscribirse

3.16 – Práctica 3: Segmentación de imágenes con Redes Convolucionales

Lección 16 del módulo “Redes Convolucionales” del curso Fundamentos de Deep Learning con Python.

En la lección anterior hablamos de GoogLeNet y ResNet y vimos el impresionante desempeño que tienen al momento de clasificar imágenes.

Así que en esta tercera práctica pondremos a prueba lo aprendido hasta el momento para implementar y entrenar la Red Convolucional U-Net para resolver un problema común en el procesamiento de imágenes y la visión artificial: la segmentación.

Así que comencemos entendiendo qué es la segmentación y veamos los detalles del set de datos que usaremos en esta práctica:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Muy bien, en esencia la segmentación es uno de los principales problemas a resolver en la visión por computador y consiste en generar particiones sobre imágenes en múltiples segmentos u objetos. Es decir en clasificar cada pixel de la imagen en una categoría diferente.

Y para lograr implementar esta tarea haciendo uso de Redes Convolucionales se requiere una arquitectura que combine un codificador y un decodificador capaz de procesar la imagen y posteriormente crear la máscara de segmentación resultante.

En esta práctica haremos uso de un sencillo set de datos que contiene imágenes de animales (entrada) cada una de ellas con una máscara de segmentación (salida). Y cada una de las máscaras contiene tres posibles categorías para los pixeles: 0 para el objeto de interés, 1 para el borde del objeto de interés y 2 fondo.

Teniendo esto claro veamos entonces cómo crear, entrenar y validar nuestra Red Convolucional U-Net capaz de realizar esta tarea de segmentación:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Bien, en la implementación que acabamos de ver hicimos uso de una versión simplificada de U-Net, desarrollada en 2015 para la segmentación de imágenes médicas. Y tras entrenar este modelo con tan sólo 10 iteraciones vemos un desempeño bastante bueno en términos de la calidad de las máscaras de segmentación generadas.

Así que en esta práctica hemos visto cómo usar las Redes Convolucionales para resolver otro de los problemas típicos de la visión por computador: la segmentación de imágenes.

Entonces ya estamos listos para abordar el proyecto final de este módulo del curso, en donde nos enfocaremos en la tercera tarea más importante de la visión por computador. Entonces en la próxima lección veremos cómo realizar la detección de objetos con Redes Convolucionales.

Todas las lecciones del curso Fundamentos de Deep Learning con Python.

© Codificando Bits, LLC | Blog | Contacto | Servicios | Acerca de | Políticas

¿Has olvidado la contraseña?
¿Has perdido tu contraseña? Por favor, introduce tu nombre de usuario o dirección de correo electrónico. Recibirás por correo electrónico un enlace para crear una nueva contraseña.
body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb }