¿Cómo funcionan los filtros Prisma?

Prisma es una nueva aplicación de fotos, aunque también se ha denominado una aplicación de “filtro de arte”. El programador ruso Alexey Moiseenkov lanzó Prisma en junio. Desde el debut de la aplicación, ha liderado el ranking de la App Store de Apple en Rusia, Estonia, Kazajstán, Letonia, Moldavia, Ucrania y Uzbekistán.

Por el momento, cuento con 33 filtros disponibles. Según Venture Beat, el algoritmo de filtro de Prisma usa una combinación de redes neuronales convolucionales e inteligencia artificial, y no solo aplica un filtro, sino que escanea los datos para aplicar un estilo a una foto de una manera que funcione e impresione .

Este es un extracto de Techcrunch

En términos de la tecnología central, Moiseenkov (CEO) dice que el equipo está utilizando la red neuronal / algoritmos de aprendizaje profundo para procesar las fotos.

“En el servidor tenemos algo así como tres redes neuronales para hoy. Y cada uno realiza una tarea diferente. Se basa en algo como extraer el estilo de la obra de arte y aplicarlo a la foto y algunos trucos para acelerar el proceso “.

Las redes neuronales son necesarias aquí porque los filtros artísticos de Prisma no son en realidad filtros, dice Moiseenkov, sino que las imágenes se crean a partir de un lienzo en blanco, utilizando las dos entradas de datos para generar una imagen final.

“No solo estamos superponiéndonos como un filtro de Instagram. Creamos la foto desde cero. Entonces no hay foto, tomamos su foto, luego realizamos algunas operaciones y le damos una nueva foto. Así que el aprendizaje profundo es como un artista, algo así ”.

Espero que ayude!

El OP menciona que están buscando una perspectiva técnica sobre cómo Prisma convierte imágenes normales en diferentes tipos de formas de arte vectorial. Una corrección aquí: Prisma no convierte estrictamente el arte en una forma de arte vectorial, la vectorización es una ilusión de la optimización utilizada. Continuo:

Al ver que ninguna de las otras respuestas proporciona una explicación intuitiva original, me encantaría. Así que aquí va …

Comencemos por el procesamiento de imágenes muy básico. La mayoría de nosotros familiarizados con las imágenes digitales sabemos que una imagen (JPG, PNG, lo que tiene) es solo una disposición de píxeles, cada píxel tiene diferentes valores para diferentes canales (R, G, B). Digamos que una imagen Full HD tendría 1920 × 1080 píxeles, es decir, alrededor de 2 millones de píxeles dispuestos en una cuadrícula, cada uno con intensidades que especifican qué tan rojo, verde o azul es ese píxel en particular. Para obtener blanco, básicamente maximizamos los tres (rojo, verde y azul), y para obtener negro, los ponemos a cero. La mayoría de los colores que vemos a nuestro alrededor se pueden representar con un alto grado de precisión con las combinaciones actuales de rojos, verdes y azules.

Ahora considere los filtros de imagen, similares a los que encontraría en Instagram. ¿Qué son estos filtros? Bueno, son pequeñas operaciones matemáticas que se aplican en estos píxeles para obtener nuevos píxeles, que forman la nueva imagen. Por ejemplo, en nuestra imagen [matemática] I [/ matemática] para cualquier píxel [matemática] I (x, y) [/ matemática], podemos reemplazar ese píxel con [matemática] \ frac {I (x-1, y ) + I (x, y) + I (x + 1, y)} {3} [/ matemática]. Si probaste esto en tu computadora, verías que esto borrará la imagen horizontalmente. Ese es un tipo de filtro, y las ecuaciones matemáticas más complicadas conducirán a todos los filtros que ves en Instagram.

[Imagen cortesía de Recreating Instagram’s Retro Filter Effects]

Así es como funcionan los filtros. La aplicación de un filtro en cada ubicación de la imagen se realiza mediante una operación llamada convolución (puede leer los conceptos básicos de convoluciones en cualquier libro de procesamiento de señales). Estos filtros son los mismos en Instagram, Photoshop o cualquier otra aplicación que requiera procesamiento de imágenes. Pero no es así como Prisma realiza ninguno de sus procesos principales. En un artículo reciente muy interesante de Alemania, los autores descubrieron una forma de combinar varios aspectos diferentes de la visión por computadora para crear un algoritmo que pueda imitar el estilo artístico.

Antes de entrar en cómo hacen eso, primero tendremos que entender lo que queremos decir con el término estilo artístico . Si le pidieran que definiera el estilo artístico en las pinturas, ¿cómo lo haría? Primero miraría los colores en la pintura, luego los trazos de pincel utilizados, pasando finalmente a ideas abstractas más grandes como la representación de la geometría y los objetos, ¿verdad? Las mismas ideas se utilizan en este documento. En un área ligeramente diferente de la visión por computadora, una investigación reciente descubrió que existen algoritmos, conocidos como redes neuronales convolucionales, que con muchas imágenes disponibles, pueden identificar estos patrones jerárquicos en las imágenes (para una introducción rápida sobre cómo funcionan las redes profundas, puedes ver esto, perdón por el enchufe descarado). Ahora, si puede identificar y cuantificar posteriormente el estilo artístico , puede comparar matemáticamente los estilos artísticos de dos imágenes. Si puede comparar los estilos artísticos de dos imágenes, entonces, con algunas matemáticas inteligentes, puede generar una imagen que tendrá un estilo artístico similar al objetivo.

En pocas palabras, así es como funcionan estos ‘filtros’ de Prisma. Usted toma una imagen de referencia, dice [matemáticas] I_1 [/ matemáticas], y su imagen de destino, dice [matemáticas] I_2 [/ matemáticas]. Lo que quiere hacer ahora es crear una imagen final [math] I_3 [/ math], que sea intermedia tanto para [math] I_1 [/ math] en términos de contenido de estilo como [math] I_2 [/ math] en términos de contenido de píxeles. Lo que eso significa es que el estilo artístico de la imagen final debe ser similar al estilo de la primera imagen, mientras que el contenido (personas, edificios, objetos, lo que esté presente en la imagen de destino) debe ser similar a la segunda imagen. Después de imponer estas restricciones, intentamos generar la imagen final.

[Imagen de arxiv # 1508.06576v2]

Tenga en cuenta que, a diferencia de los filtros tradicionales donde vamos a cada píxel y aplicamos una operación matemática simple, este proceso de generación es mucho, mucho más complicado (y es por eso que Prisma necesitaba una conexión a Internet para funcionar antes, lo subcontrató a la nube), y requiere dispositivos computacionales especiales conocidos como GPU para ejecutarse de manera eficiente. Estos filtros comienzan con una imagen aleatoria cerca de la imagen de destino [matemática] I_2 [/ matemática], y ajustan de forma iterativa los valores de píxeles para toda la imagen de una vez hasta que obtengamos un equilibrio decente entre los valores de estilo y contenido en la final imagen.

Para extraer el contenido de estilo, la aplicación utiliza redes neuronales convolucionales (CNN), que están de moda en inteligencia artificial. Para los más inclinados a la técnica, leer el documento original debería ser pan comido una vez que se conocen estos conceptos básicos, la novedad en el documento es principalmente la combinación de ideas de diferentes dominios.

Prisma convierte sus fotos en obras de arte utilizando estilos de artistas famosos: Van Gogh, Picasso, Levitan, así como ornamentos y patrones de fama mundial, según el sitio web oficial de la compañía.

Prisma utiliza inteligencia artificial y algoritmos de aprendizaje profundo para procesar las imágenes. Todo el procesamiento de imágenes ocurre en sus servidores en lugar de localmente en su aplicación. Esta es la razón por la que toma un tiempo antes de que pueda ver el resultado. Estos servidores tienen algunas capas de redes neuronales, cada una haciendo su propio trabajo. Prisma no solo aplica el filtro elegido en la imagen como en el caso de otras aplicaciones famosas, sino que toma la imagen y la analiza, extrae el estilo de la obra de arte elegida y genera las imágenes desde cero como el lienzo en blanco, por eso Las imágenes parecen cuadros de la vida real.

“No solo estamos superponiéndonos como un filtro de Instagram. Creamos la foto desde cero. Entonces no hay foto, tomamos su foto, luego realizamos algunas operaciones y le damos una nueva foto. Entonces, el aprendizaje profundo es como un artista, algo así ”. – Alexey Moiseenkov, CEO, Prisma labs inc.

Fuente: Inicio – La siguiente búsqueda

Le sugeriré que lea este artículo de investigación: [1508.06576] Algoritmo neuronal de estilo artístico

Y este es el código que lo logra: jcjohnson / neural-style

Este artículo da idea sobre muchos proyectos de ML interesantes sobre contenido multimedia: enseñé a una computadora a escribir como Engadget

Hasta donde yo sé, Prisma usa [1508.06576] Un algoritmo neuronal de estilo artístico como base de su trabajo. Se puede encontrar una implementación basada en la antorcha en jcjohnson / neural-style.

Aquí hay una explicación muy simplificada de su funcionamiento:

El contenido y el estilo de una pintura de muestra se separan utilizando Redes neuronales profundas. Luego, el contenido se sustituye con su imagen. El nuevo contenido y el estilo se recombinan para crear una pintura de su imagen.

Todo esto lleva mucho tiempo para computar. El punto de venta único de Prisma en mi opinión es que han reducido este tiempo de cómputo a solo segundos.

Un enfoque único que sigue la aplicación Prisma es totalmente diferente de otras aplicaciones de edición de imágenes. No se superpone su foto con uno de los filtros. La aplicación opera una técnica de aprendizaje profundo conocida como redes neuronales convolucionales combinadas con inteligencia artificial para citar la imagen original y crear una nueva desde cero aplicando el estilo elegido.

Si está interesado en desarrollar una aplicación como Prisma, le sugiero que lea este artículo. Allí puede encontrar información sobre las tecnologías detrás de la aplicación y la estrategia de participación del usuario – Aplicaciones de edición de fotos: Cómo desarrollar aplicaciones como Prisma

Procesamiento de imágenes, básicamente.

  • El procesamiento de imágenes parece tener lugar en los servidores de Prisma.
  • El proceso utilizado para transformar la imagen recibida es similar al de los complementos de Adobe Photoshop e Illustrator, desde 1996, que se han utilizado.
  • Luego construyó una aplicación capaz de OBTENER / PONER estas imágenes.
  • Puede codificar o transformar este procesamiento de imágenes con su idioma de servidor favorito.

Esta es una breve respuesta, pero espero que ayude

Más información sobre el tratamiento de imágenes y las posibilidades de procesamiento.

Está basado en un libro blanco que se puede encontrar en la Biblioteca de la Universidad de Cornekl. El enlace al mismo se puede encontrar en [1508.06576] Un algoritmo neuronal de estilo artístico

En resumen, la aplicación Prisma utiliza neurotech y AI para editar y aplicar los filtros. Mientras que otras aplicaciones solo aplican el filtro directamente a su imagen, Prisma escanea los datos de su imagen en tiempo real y luego ajusta y aplica los filtros de acuerdo con los datos generados al escanear la foto. Espero eso ayude. ¿Has probado Cómo hacer clic en fotos 360 con tu teléfono? es bueno

More Interesting

¿Qué piensan los investigadores de IA del libro de James Barrat "Nuestra invención final: inteligencia artificial y el fin de la era humana"?

¿Hay alguna IA para Android que no almacene datos personales?

¿Cómo funciona la inteligencia artificial?

¿Alguna vez habrá un programa que use estilometría para descubrir toda mi actividad anónima en Internet?

¿Cuán relevantes son los temas de la web semántica y la recuperación de información para el aprendizaje automático?

Cómo obtener una inteligencia artificial para ejecutar mi startup

¿Por qué los modelos que funcionan mejor durante el entrenamiento dan resultados más pobres durante la implementación?

¿Cómo podrían usarse las expresiones faciales para medir los niveles de amenaza usando redes neuronales?

¿Cuál es su opinión sobre el argumento de la habitación china de John Searle?

¿Cómo será la progresión natural del aprendizaje automático? ¿Qué industrias tendrá más aplicaciones?

¿Cómo se puede usar la IA para crear empleos? ¿Es su propósito tomarlos todos?

¿Qué tan probable es que, como en la película "Terminator", las computadoras del sistema de defensa interconectado se vuelvan conscientes de sí mismas y ataquen a la humanidad?

¿Se automatizará la ciencia de datos en un futuro cercano?

¿Qué opinas del debate entre Norvig y Chomsky sobre el futuro de la IA?

¿Está explorando diferentes algoritmos de aprendizaje automático y qué tipo de conjunto de datos funcionan mejor con un buen tema de Math HL IA?