Imagina que tras un largo día en la escuela u oficina, llegas a casa y no encuentras tu llavero. Sin embargo, traías la llave contigo todo el tiempo: ¡tu propia cara! Quién diría que gracias a la programación, tu cara te abriría puertas. No solo eso, también puedes desbloquear tu teléfono y proteger tu casa. ¿Quieres saber cómo? ¡Sigue leyendo para saber sobre el reconocimiento facial!
También puedes leer: ¡Sálvate Tortuga! la divertida app de nuestro alumno César
El reconocimiento facial es una tecnología basada en códigos dependientes de cálculos matemáticos. Sirve para identificar caras a partir de fotos o videos. Estos códigos cumplen con tres tareas importantes: detección facial en transmisiones en vivo, videos o imágenes; cálculo de un modelo matemático de un rostro; y comparación de rostros en bases de datos o modelos de entrenamiento de AI para verificar o reconocer a una persona.
Aún hay más por contarte, sigue leyendo y descubre qué hay detrás de la puerta número uno.
¿Qué es el Sistema de Codificación Facial (FACS)?
Una cara vale más que mil códigos: para la programación, tu cara es una matriz de valores RGB similares al patrón que el algoritmo aprende a partir de los datos que le proporcionas.
- La programación toma nota de las medidas específicas de la cara para el reconocimiento facial, como el espacio entre las cejas, la inclinación, el tamaño y el color de los ojos, etc. El conjunto de estos datos proporciona la información que ayuda a identificar la imagen.
- El Sistema de Codificación Facial es una matriz de códigos que representa una cara usando un conjunto de 128 medidas generadas por computadora. Si hay dos fotos distintas de la misma persona, habrá una misma programación para ambas fotos, mientras que habrá dos programaciones distintas para las imágenes de dos personas diferentes.
Los músculos que mueven la tecnología del reconocimiento facial
Primero, necesitas conocer qué es un vector de características para profundizar en cómo funciona la tecnología del reconocimiento facial. Cada código de machine learning (aprendizaje automático) recibe un conjunto de datos como entrada y los asimila. Entonces, el algoritmo analiza los datos proporcionados y busca patrones. Por decir, si quieres saber de quién es la foto que aparece en una determinada imagen, hay muchas cosas que la programación interpreta como un patrón, tales como:
- La altura y el ancho de una foto de una cara pueden no ser confiables, puesto que se puede escalar a un tamaño diferente al original. No obstante, las proporciones entre la altura y el ancho de la cara no cambian, incluso después del reescalado.
- El color de la cara es otro patrón, junto con el ancho de sus otras partes: nariz, labios, etc.
Claramente hay un patrón a reconocer, ya que las caras distintas tienen dimensiones distintas, mientras que las caras similares tienen las mismas dimensiones. El reto es convertir cierta cara en números porque es lo único que entiende el algoritmo de ML. La característica numérica de una cara se llama “vector de características”, el cual contiene varios números en un orden determinado.
A continuación, un ejemplo sencillo de cómo se vería eso:
- Altura de la cara (cm)
- Ancho de la cara (cm)
- Color promedio de la cara (r, g, b)
- Ancho de los labios (cm)
- Altura de la nariz (cm)
Entonces, tu imagen es un vector con las coordenadas 23.1, 15.8, 255, 224, 189, 5.4, 4.4. Estos son los cinco patrones principales por considerar, aunque hay más, como el vello facial y el color de cabello. Si logras programar cada foto en un vector de características, podrías resolver el problema de manera más sencilla.
Las caras ocultas de la programación en el reconocimiento facial
Identificación de vectores de características
Es un reto enumerar las características en su totalidad: sin embargo, un algoritmo de ML las etiqueta de forma inteligente.
Algoritmos de concordancia
Una vez que se recopilan los vectores de características, un algoritmo de ML hará la concordancia de la nueva foto con el vector de características presente en el corpus.
En resumen, si quieres desarrollar una app de reconocimiento facial, necesitarás de la programación para obtener datos y procesarlos para hacer la concordancia correctamente.
Ahora que ya descubriste otra cara de la programación, ¿qué tal si compartes tus impresiones en los comentarios? No olvides unirte a una clase prueba de BYJU’S FutureSchool hoy para abrir más puertas con las llaves del aprendizaje.