Soy consciente de que ha habido muchos avances con respecto al reconocimiento de imágenes, clasificación de imágenes, etc. con redes neuronales profundas y convolucionales.
Pero si entreno una red en, por ejemplo, imágenes PNG, ¿ solo funcionará para imágenes tan codificadas? ¿Qué otras propiedades de imagen afectan esto? (canal alfa, entrelazado, resolución, etc.)
neural-networks
deep-learning
image-processing
Felipe Almeida
fuente
fuente
Respuestas:
La respuesta corta es NO .
El formato en el que se codifica la imagen tiene que ver con su calidad. Las redes neuronales son esencialmente modelos matemáticos que realizan muchas operaciones (multiplicaciones de matrices, adiciones de elementos y funciones de mapeo). Una red neuronal ve un Tensor como su entrada (es decir, una matriz multidimensional). Su forma generalmente es 4-D (número de imágenes por lote, altura de imagen, ancho de imagen, número de canales).
Los diferentes formatos de imagen (especialmente los con pérdida) pueden producir diferentes matrices de entrada, pero estrictamente hablando, las redes neuronales ven matrices en su entrada, y NO imágenes.
fuente
Si bien la respuesta de Djib2011 es correcta, entiendo su pregunta como más centrada en cómo la calidad / propiedades de la imagen afectan el aprendizaje de la red neuronal en general. Solo hay poca investigación sobre este tema (afaik), pero podría haber más investigación sobre el tema en el futuro. Solo encontré este artículo en él. El problema en este momento es que se trata más de un problema que aparece en aplicaciones prácticas y menos en un campo de investigación académica. Recuerdo un podcast actual donde los investigadores observaron que incluso la cámara que se usó para tomar una foto podría tener un gran efecto.
fuente
Este es un riff en la primera respuesta de Djib2011. La respuesta corta tiene que ser no. Más tiempo: en primer lugar, las fotos siempre se codifican como un tensor de la siguiente manera. Una imagen es una cantidad de píxeles. Si se considera que la foto tiene m filas yn columnas, cada píxel se especifica por su ubicación de fila y columna, es decir, por el par (m, n). En particular, hay m * n píxeles, que es muy grande incluso para fotos 'pequeñas'. Cada píxel de la foto está codificado por un número entre cero y uno (intensidad de negrura) si la foto es en blanco y negro. Está codificado por tres números (intensidades RGB) si la foto es en color. Entonces uno termina con un tensor que es 1xmxn o 3xmxn. El reconocimiento de imágenes se realiza a través de CNN que, aprovechando el hecho de que las fotos no cambian tanto de píxel a píxel, se comprimenlos datos a través de filtros y agrupación. Entonces, el punto es que el trabajo de CNN al comprimir la increíble cantidad de puntos de datos (o características) de una foto en una cantidad menor de valores. Entonces, sea cual sea el formato con el que comience, CNN comienza comprimiendo aún más los datos de la foto. De ahí la independencia per se del tamaño de la representación de la foto.
Sin embargo, una CNN exigirá que todas las imágenes que se ejecuten sean del mismo tamaño. Entonces, existe esa dependencia que cambiará dependiendo de cómo se guarde la imagen. Además, en la medida en que diferentes formatos de archivo del mismo tamaño producen diferentes valores para sus tensores, no se puede usar el mismo modelo CNN para identificar fotos almacenadas por diferentes métodos.
fuente