Todos los que usamos redes sociales regularmente hemos encontrado adrede o por curiosear en las imágenes de personas con caras de un perro, coronas de flores en sus frentes o peor aún, rostros intercambiados. Es algo que a muchos nos parezca tonto o hasta idiota.
Tal vez lo sea por como se ve está gente:
Pero detrás de esto hay algo muy serio
Todo esto empieza en el 2014 cuando Snapchat compra Looksery por $150 millones de dolares

Fue algo tan grande esta adquisición, que ha sido la mas grande dentro del rubro tecnologico para Ucranía, el lugar de donde originalmente yacio este proyecto emprendedor.
Looksery es básicamente una aplicación que te permite ponerle filtros a tus fotos mientras estas en la cámara. Lo que hacen los filtros de Snapchat
Y todo esto se trata de la visión computarizada, es un proceso donde la inteligencia artificial de las máquinas en base al color y contraste de un grupo de pixeles en escala de grises puede reconocer un objeto y hasta un rostro. Es un proceso que se ha ido perfeccionando desde hace mucho y lo vemos en:
Y para conocer como Snapchat hace esto vamos a través de unos pasos.
1. Detección
Verán, el cerebro es un excelente detector de rostros, mas que excelente en algunas ocasiones, por ejemplo:
Pero una PC (el término pc incluye los celulares también) no tiene nuestras dotadas habilidades, para una pc una imagen es solo esto:
Conjuntos de códigos de colores coordinados para formar imagenes. Para reconocer un rostro se pueden usar detectores de los cuales el mas famoso es el de Viola-Jones
¿Cómo funciona el detector de Viola-Jones?
Se trata de reconocer los contrastes de la imagen , se toman varios sectores de imagen repetidas veces para obtener patrones dentro de los cuales se clasificaría una cara.
En la imagen se puede ver como se reconoce una frente sabiendo que el área de la misma debe ser mas clara que las regiones de los lados, también aplica para los ojos con el precepto de que el área de las cuencas debe ser mas oscuro que el de las mejillas. Como dije se toman cientos de sub imagenes de la imagen original para saber si hay un número alto de coincidencias como para concluir que lo que se ve es una cara.
Así funcionan los detectores, con coincidencias, es decir, manteniendo un margen de error bajo porque no todas las caras son las mismas.
De este modo las cámaras digitales han podido detectar rostros demostrandolo con un recuadro todo el tiempo.
Este algoritmo no es muy bueno para reconocerte si estás de perfil , con la cabeza hacia arriba o escondiendola pero es genial para reconocimientos frontales.
2.Integración
Pero hay una diferencia entre detectar un rostro y detectar las partes de un rostro para agregarnos cosas como la lengua de un perro a nuestra boca. (suena raro pero es así)
Esto se hace con un modelo de forma activo o ASM por sus siglas en inglés, que son puntos parametricos estáticos pero deformables que delimitan partes de nuestro rostro para saber cual parte es cual.
Este modelo es entrenado por gente que pone puntos en muchas imagenes de caras, cientos, tal vez miles y así el modelo puede adaptarse a la variedad de caras que hay.
Pero esos modelos no son perfectos por lo cual también es adaptable por la misma inteligencia artificial por ejemplo, si se encuentran varios puntos comunes para identificar un labio pero hay algunos puntos fuera, es lo suficientemente inteligente como para decir que si es un labio, acomodar el punto por si mismo al lugar que debería ocupar.
Así, finalmente se pueden unir esos puntos para crear una máscara de nuestra cara.
Y ponerle lo que queramos como esto:
Pero ¿Por qué pone tanto esfuerzo Snapchat en algo como ponernos caras tontas o lenguas de perros?
Ha servido mucho para optimizar la herramienta y diversificarla para el fin por el cual las empresas tecnológicas ganan mucho dinero hoy en día, la publicidad:
y eso si que vale la pena o por lo menos eso han demostrado los millones de dolares que Snapchat factura por año.
Tal vez lo sea por como se ve está gente:

Pero detrás de esto hay algo muy serio

Todo esto empieza en el 2014 cuando Snapchat compra Looksery por $150 millones de dolares

Fue algo tan grande esta adquisición, que ha sido la mas grande dentro del rubro tecnologico para Ucranía, el lugar de donde originalmente yacio este proyecto emprendedor.

Looksery es básicamente una aplicación que te permite ponerle filtros a tus fotos mientras estas en la cámara. Lo que hacen los filtros de Snapchat
Y todo esto se trata de la visión computarizada, es un proceso donde la inteligencia artificial de las máquinas en base al color y contraste de un grupo de pixeles en escala de grises puede reconocer un objeto y hasta un rostro. Es un proceso que se ha ido perfeccionando desde hace mucho y lo vemos en:
- La forma como Facebook etiqueta a amigos en tus fotos
- Como los autos como los de Google pueden reconocer fácilmente peatones para no atropellarlos
Y para conocer como Snapchat hace esto vamos a través de unos pasos.
1. Detección
Verán, el cerebro es un excelente detector de rostros, mas que excelente en algunas ocasiones, por ejemplo:

Pero una PC (el término pc incluye los celulares también) no tiene nuestras dotadas habilidades, para una pc una imagen es solo esto:
Conjuntos de códigos de colores coordinados para formar imagenes. Para reconocer un rostro se pueden usar detectores de los cuales el mas famoso es el de Viola-Jones
¿Cómo funciona el detector de Viola-Jones?
Se trata de reconocer los contrastes de la imagen , se toman varios sectores de imagen repetidas veces para obtener patrones dentro de los cuales se clasificaría una cara.
En la imagen se puede ver como se reconoce una frente sabiendo que el área de la misma debe ser mas clara que las regiones de los lados, también aplica para los ojos con el precepto de que el área de las cuencas debe ser mas oscuro que el de las mejillas. Como dije se toman cientos de sub imagenes de la imagen original para saber si hay un número alto de coincidencias como para concluir que lo que se ve es una cara.
Así funcionan los detectores, con coincidencias, es decir, manteniendo un margen de error bajo porque no todas las caras son las mismas.
De este modo las cámaras digitales han podido detectar rostros demostrandolo con un recuadro todo el tiempo.
Este algoritmo no es muy bueno para reconocerte si estás de perfil , con la cabeza hacia arriba o escondiendola pero es genial para reconocimientos frontales.

2.Integración
Pero hay una diferencia entre detectar un rostro y detectar las partes de un rostro para agregarnos cosas como la lengua de un perro a nuestra boca. (suena raro pero es así)
Esto se hace con un modelo de forma activo o ASM por sus siglas en inglés, que son puntos parametricos estáticos pero deformables que delimitan partes de nuestro rostro para saber cual parte es cual.
Este modelo es entrenado por gente que pone puntos en muchas imagenes de caras, cientos, tal vez miles y así el modelo puede adaptarse a la variedad de caras que hay.
Pero esos modelos no son perfectos por lo cual también es adaptable por la misma inteligencia artificial por ejemplo, si se encuentran varios puntos comunes para identificar un labio pero hay algunos puntos fuera, es lo suficientemente inteligente como para decir que si es un labio, acomodar el punto por si mismo al lugar que debería ocupar.

Así, finalmente se pueden unir esos puntos para crear una máscara de nuestra cara.

Y ponerle lo que queramos como esto:
Pero ¿Por qué pone tanto esfuerzo Snapchat en algo como ponernos caras tontas o lenguas de perros?
Ha servido mucho para optimizar la herramienta y diversificarla para el fin por el cual las empresas tecnológicas ganan mucho dinero hoy en día, la publicidad:

y eso si que vale la pena o por lo menos eso han demostrado los millones de dolares que Snapchat factura por año.