Excelente video 👌 Tengo una duda sobre cómo etiquetar mis imágenes. Cada imagen contiene varios objetos de diferentes clases, y he leído que es necesario marcar cada píxel para indicar a qué clase pertenece. Sin embargo, no estoy seguro de cómo hacerlo o si es el enfoque correcto. 😅 Hay q aclarar q quiero identificar n objetos en mis imágenes con Unet. ¿Alguien podría orientarme sobre el proceso de etiquetado? Cualquier comentario o consejo sería muy apreciado. ¡Gracias!
Muy buen video, una pregunta; cual seria una app adecuada para crear la anotacion para generar un data set propio?, use labelme y exporte estas imagenes para que me entrega las mascaras, pero solo me entrega las mascaras en formato NPY y JPG, pero las imagenes como tal me las da en JPG, y por lo que vi en tu video tu data set tienes tanto las imagenes como las mascaras en NPY.
El formato de las imágenes y máscaras es lo de menos, simplemente utiliza la función adecuada para leer cada formato y ya está. Para jpg puedes usar PIL o scikit-image por ejemplo, para npy pues numpy.
Si lees la imagen con scikit image ya te la carga del formato que sea a array de numpy, si usas otra librería deberás mirar en su documentación como hacerlo.
Acabo de descubrir tú canal y está increíble, muy completo. Aunque no estoy muy familiarizada con Pythorch se entiende muy bien. Como tengo tantas lagunas sobre esto, por qué en algunas redes de clasificación no se usa la segmentación?.
Al final dependerá de la aplicación. Las redes de clasificación son más sencillas y las primeras que se desarrollaron, pero si que es verdad que hoy en día para la gran mayoría de aplicaciones tochas como conducción autónoma a aplicaciones médicas se usa más la segmentación o detección ya que da mucha más información.
@@juansensio Gracias por tú rápida respuestaaaa ;) Una última cosa, a la red cuando le pasamos el dataset, las máscaras (con todas sus clases) necesariamente hay que hacerlas a mano no? para que luego la red aprenda con ellas (compare con el ground truth). Hice unas con Labelme pero fue toda una movida porque se cambiaba la clase al hacer otra imagen. Mil gracias y que crezca tú canaaaal!!!!
Depende del caso, puedes hacerlas a mano o usar otro algoritmo que te de unas máscaras aproximadas y luego corregirlas a mano... Obviamente, cuanto mejor estén als etiquetas, mejor resultado tendrás.
hola apenas ando aprendiendo solo redes neuronales y especial este modelo de UNet para mi tesis, tengo una duda a primera istancia, es lo mismo una mascara/mask a un layer/capa? me encuentro bastante esos conceptos en ingles y me marean un poco, saludos!
Normalmente se le llama máscara al ground truth que usas para entrenar la red, que luego será el output que te dará. Indica para cada píxel la categoría a la que pertence. Una layer/capa suele referirse a la estructura interna del modelo en si, una capa de procesamiento. Así pues tu UNet puede tener 10, 20, 100 capas... las que tu quieras. Pero el output será siempre una máscara.
Excelente video, estoy aprendiendo sobre redes neuronales y soy inexperto aún en python y sus librerías, tengo una duda cómo le das una imagen que no está en el entrenamiento para que te de la máscara de la segmentación :(
Puedes hacerlo de varias maneras, una es exactamente igual que en la parte de "validation" o "test" del bucle de entrenamiento. La más sencilla es directamente dándole al modelo el tensor con la imágen (acuérdate de darle la dimensión extra de batch y aplicar todo el pre-procesado que sea necesario) -> output = model(image.unsqueeze(0))
Excelente trabajo! muy útil muchas gracias
Que buen video bro, muchas gracias por compartir el conocimiento.
Suscrito
Muchas gracias por tu video
Hola! ¿Qué origen tiene tu dataset? Saludos
Excelente video 👌
Tengo una duda sobre cómo etiquetar mis imágenes. Cada imagen contiene varios objetos de diferentes clases, y he leído que es necesario marcar cada píxel para indicar a qué clase pertenece. Sin embargo, no estoy seguro de cómo hacerlo o si es el enfoque correcto. 😅
Hay q aclarar q quiero identificar n objetos en mis imágenes con Unet.
¿Alguien podría orientarme sobre el proceso de etiquetado? Cualquier comentario o consejo sería muy apreciado.
¡Gracias!
Para segmentar objetos en imágenes tienes que marcar para cada pixel a qué clase pertenece, tal y como bien dices.
Muy buen video, una pregunta; cual seria una app adecuada para crear la anotacion para generar un data set propio?, use labelme y exporte estas imagenes para que me entrega las mascaras, pero solo me entrega las mascaras en formato NPY y JPG, pero las imagenes como tal me las da en JPG, y por lo que vi en tu video tu data set tienes tanto las imagenes como las mascaras en NPY.
El formato de las imágenes y máscaras es lo de menos, simplemente utiliza la función adecuada para leer cada formato y ya está. Para jpg puedes usar PIL o scikit-image por ejemplo, para npy pues numpy.
@@juansensio muchas gracias por tu respuesta!
@@juansensio por ultimo sensio, cuando tus imagenes las transformas en tensor como seria si mi imagen no esta en npy?
Si lees la imagen con scikit image ya te la carga del formato que sea a array de numpy, si usas otra librería deberás mirar en su documentación como hacerlo.
Buen video amigo, sabes de qué origen son los dataset?
Acabo de descubrir tú canal y está increíble, muy completo. Aunque no estoy muy familiarizada con Pythorch se entiende muy bien. Como tengo tantas lagunas sobre esto, por qué en algunas redes de clasificación no se usa la segmentación?.
Al final dependerá de la aplicación. Las redes de clasificación son más sencillas y las primeras que se desarrollaron, pero si que es verdad que hoy en día para la gran mayoría de aplicaciones tochas como conducción autónoma a aplicaciones médicas se usa más la segmentación o detección ya que da mucha más información.
@@juansensio Gracias por tú rápida respuestaaaa ;) Una última cosa, a la red cuando le pasamos el dataset, las máscaras (con todas sus clases) necesariamente hay que hacerlas a mano no? para que luego la red aprenda con ellas (compare con el ground truth). Hice unas con Labelme pero fue toda una movida porque se cambiaba la clase al hacer otra imagen. Mil gracias y que crezca tú canaaaal!!!!
Depende del caso, puedes hacerlas a mano o usar otro algoritmo que te de unas máscaras aproximadas y luego corregirlas a mano... Obviamente, cuanto mejor estén als etiquetas, mejor resultado tendrás.
@@juansensio Muchas gracias, estaré atenta a tus videos. abrazo ;)
hola apenas ando aprendiendo solo redes neuronales y especial este modelo de UNet para mi tesis, tengo una duda a primera istancia, es lo mismo una mascara/mask a un layer/capa? me encuentro bastante esos conceptos en ingles y me marean un poco, saludos!
Normalmente se le llama máscara al ground truth que usas para entrenar la red, que luego será el output que te dará. Indica para cada píxel la categoría a la que pertence. Una layer/capa suele referirse a la estructura interna del modelo en si, una capa de procesamiento. Así pues tu UNet puede tener 10, 20, 100 capas... las que tu quieras. Pero el output será siempre una máscara.
@@juansensio muchas gracias hermano :)! cada vez aprendo mas, sigo viendo y apoyando tus demas videos, nos seguimos viendo
no puedo descargar el dataset, una ayudita? :#
Excelente video, estoy aprendiendo sobre redes neuronales y soy inexperto aún en python y sus librerías, tengo una duda cómo le das una imagen que no está en el entrenamiento para que te de la máscara de la segmentación :(
Puedes hacerlo de varias maneras, una es exactamente igual que en la parte de "validation" o "test" del bucle de entrenamiento. La más sencilla es directamente dándole al modelo el tensor con la imágen (acuérdate de darle la dimensión extra de batch y aplicar todo el pre-procesado que sea necesario) -> output = model(image.unsqueeze(0))
@@juansensio muchas gracias por responder la duda, solo una duda más ¿Cuál es el origen del dataset que usas?
Subscritaa!!1
Hola podrias hacer una con imagenes 3d usando unet3D