Snapchat los llama por el nombre oficial «Lentes», sin embargo, toda red social debe seguir el ritmo de sus usuarios, quienes los bautizaron simplemente «filtros». Estos filtros aplican diferentes efectos y elementos en tiempo real, lo que les permite cruzar sin mayores sobresaltos la frontera de la realidad aumentada, ¿pero cómo funcionan con exactitud? En pocas palabras, mucho reconocimiento facial, un batallón de algoritmos, y el poder de procesamiento en smartphones modernos hacen esto posible.
Una corona de flores que no está allí, cambios de rostros, ojos de fantasmas y demonios, narices de perro… pequeñas «tonterías digitales» renderizadas en tiempo real, con el potencial de cambiar por completo la experiencia en esta red social, y hacer que más de uno se pregunte: «¿Cómo logran hacer eso?»
Cómo funcionan los filtros de SnapChat
De acuerdo a este vídeo publicado por la gente de Vox, la tecnología fue asimilada por Snapchat a través de la adquisición de una compañía ucraniana llamada Looksery. Múltiples fuentes reportan que Snapchat pagó 150 millones de dólares por Looksery, la adquisición más grande que se haya registrado en el mercado tecnológico ucraniano hasta la fecha. En términos generales, estamos ante un ejemplo contundente de reconocimiento de objetos (después de todo, nuestro rostro no deja de ser un objeto para el sistema), que en este caso asigna un valor de color específico a cada píxel, y a partir de allí calcula e interpreta las diferentes áreas de contraste en un rostro.
«Marco de detección Viola-Jones»
El vídeo menciona al «marco de detección Viola-Jones», el primero de su tipo, cuyo desarrollo comenzó en el año 2001. Gracias a largas sesiones de entrenamiento y múltiples análisis, el algoritmo puede reconocer aspectos muy específicos de un rostro, ya que la parte delantera de la nariz tiende a ser más clara que sus lados, la «banda» de los ojos es más oscura, y la frente más brillante.
Sin embargo, eso no es suficiente. Viola-Jones cuenta con la capacidad de determinar si en la imagen hay un rostro o no, pero las patentes apuntan a un «modelo de forma activo», en esencia, un modelo estadístico de un rostro que fue entrenado a mano, destacando los bordes de características faciales en miles y miles de muestras públicas. El algoritmo toma como referencia un modelo estándar, lo coloca sobre el rostro del usuario, modifica su escala y ángulo, aplica ajustes dinámicos basados en los datos que presentan los píxeles, y obtiene así una máscara tridimensional que reacciona de acuerdo a la información obtenida en cada cuadro transmitido por la cámara.
Esto convierte a nuestro rostro en una serie de puntos de anclaje para efectos, deformaciones, y «gatillos» de animaciones (por ejemplo, una lengua larga cuando abrimos la boca). La función más exigente entre los filtros es el intercambio de rostros, y debido a la enorme cantidad de información que se debe procesar, los resultados no siempre son óptimos.
Básicamente, los filtros de Snapchat se apoyan en un concepto con casi veinte años de desarrollo, que finalmente pudo ser implementado en tiempo real, cortesía de procesadores multi-núcleo, módulos acelerados de vídeo y gigabytes enteros de RAM en nuestros smartphones.