Usamos cookies. Más información  aquí Aceptar

Detección de rostros mediante Inteligencia Artificial

¿En qué consiste la detección de rostros?

Importancia de la detección de rostros en la actualidad

La tarea de detección de rostros, en el ámbito Tech, es una labor que dista ligeramente del reconocimiento facial, el cual suele estar más enfocado a funciones de seguridad en dispositivos personales o a aportar robustez en procesos de identificación en empresas u organizaciones.

La detección de rostros es, de hecho, una tarea con un espectro de aplicaciones más amplio que la anterior, teniendo una gran cantidad de usos potenciales a futuro, y aportando una serie de ventajas de las cuales hablaremos más adelante en este artículo.

¿En qué consiste la detección de rostros?

La detección de rostros es una labor que consiste en capacitar a una máquina para que esta sea capaz de analizar su entorno (mediante cámaras activas, o haciendo uso de imágenes o vídeos) y detectar la presencia de rostros humanos, siendo capaz de distinguirlos del resto del entorno. La estrategia más común para las tareas de detección de rostros se basa en utilizar el aprendizaje profundo (Deep Learning; subconjunto del Machine Learning) para diseñar redes neuronales capaces de procesar imágenes. En este aspecto, las redes neuronales convolucionales son una de nuestras mejores elecciones.

Tenemos publicado un artículo en nuestro portal donde puedes leer más acerca de las redes neuronales convoluciones, y cómo estas actúan en la detección de patrones en imágenes.

Técnicas más comunes empleadas en la detección de rostros

Es función de nuestras preferencias al momento de entrenar nuestro modelo de detección de rostros, es probable que debamos tener en cuenta ciertas consideraciones con el fin de obtener la mayor cantidad posible de verdaderos positivos en nuevos datos. No obstante, sí que es posible reunir algunas técnicas que suelen ser comunes en los entrenamientos de este tipo de modelos.

  • Identificación y eliminación de fondo. Por norma general, priorizaremos hallar los contornos que definen un rostro dado. De esta forma, será posible procesar la imagen de ese fotograma para eliminar el resto de contenido ajeno al rostro (o rostros, en caso de que existan más de uno en la imagen), y el modelo podrá centrarse exclusivamente en el análisis de sus rasgos.
  • Color de la imagen. Existe gran variedad de aplicaciones dónde es preferible alterar los canales de color de las imágenes que se envían a un modelo de visión artificial, obteniendo mejores resultados en datos que el modelo no había visto con anterioridad. En el caso de la detección de rostros, se ha comprobado que los modelos logran un mejor rendimiento en imágenes a color en comparación con aquellos entrenados con imágenes en blanco y negro. Al mantener el color en nuestras imágenes, el modelo recibe mucha más información, por lo que es muy probable que acabe encontrando ciertos patrones que no serían perceptibles en imágenes en blanco y negro.

Por lo general, los modelos destinados a la detección de rostros suelen lograr una menor tasa de falsos positivos en el análisis de imágenes frente al análisis en vídeo. Como ocurre con el resto de modelos de Machine Learning, el rendimiento final dependerá en gran medida de la cantidad y calidad de los datos utilizados durante su entrenamiento.

Desafíos comunes en la detección de rostros

Todo objetivo que queramos lograr mediante el uso del Machine Learning puede traer algunos desafíos o problemas que conviene conocer de antemano para adaptar nuestro enfoque durante el desarrollo del modelo, y en función de la tarea que estemos realizando, es posible que debamos adaptar nuestro enfoque en mayor o menor medida. Así, mostramos algunos de los desafíos más comunes al momento de lograr una detección de rostros fiable:

  • Sobrecarga de elementos en imágenes. Un modelo de visión artificial tratará de reconocer patrones en una imagen que pueda clasificar la presencia o no de un rostro. Al proporcionar imágenes con demasiados elementos, es posible que el modelo acabe confundiéndose, clasificando erróneamente la imagen, o asociando patrones indebidos, si se encuentra en entrenamiento.
  • Oclusión del rostro. Los rostros que están cubiertos por prendas como pañuelos, gafas de sol o mascarillas pueden suponer un problema al inferir un resultado. Un conjunto adecuado de imágenes de entrenamiento debería incluir rostros con este tipo de prendas en una proporción similar de aparición a los rostros “libres”.
  • Ángulo del rostro y distancia a la que aparece en las imágenes. Si los rostros aparecen demasiado lejos, o aparecen de perfil en la imagen o en un ángulo poco natural, es probable que pase inadvertido por el modelo.
  • Muecas o expresiones faciales extrañas. El modelo puede fallar al momento de detectar un rostro cuando este refleja una expresión poco natural, si no se han incluido imágenes de rostros con este tipo de muecas en el conjunto de imágenes de entrenamiento.
  • Color de piel. Al igual que en los anteriores problemas mencionados, la falta de diversidad en los tonos de piel dentro del conjunto de entrenamiento puede ocasionar un subajuste del modelo hacia tonos de piel que no ha visto con tanta frecuencia.

Los desafíos que hemos mencionado pueden suponer un problema al tratar de obtener unas detecciones fiables de nuestro modelo. Es por eso que resulta de vital importancia contar con conjunto de imágenes diverso, donde aparezcan rostros en distintos planos, que reflejen diferentes expresiones, y donde exista una proporción justa de rostros con diferentes tonalidades de piel. Si contamos con un conjunto amplio y diverso, es mucho más probable que los desafíos comentados no supongan un problema en nuestra labor de detección.

Importancia de la detección de rostros en la actualidad

La detección de rostros ha cobrado una gran relevancia en nuestra vida moderna. Resulta indispensable en tareas destinadas a la identificación de identidad de sistemas de seguridad pública y privada, así como en labores varias de sectores como la sanidad la justicia, o la banca.

Por otro lado, gran parte de las redes sociales utilizan algoritmos destinados a la detección de rostros para el etiquetado automático de usuarios (también podemos encontrarlo en sistemas dedicados a galería y fotos de los dispositivos móviles).

Ventajas y limitaciones de los sistemas de detección de rostros

Repasemos un listado de las ventajas y limitaciones que debemos tener en cuenta al momento de aplicar la detección de rostros.

Ventajas

  • Sencillez de uso. Entrenar un modelo de detección de rostros es una tarea de relativa sencillez, y muchos de estos algoritmos se pueden encontrar públicos en Internet. No obstante, en función de los requerimientos de tu aplicación o servicio, es probable que la puesta en marcha de un modelo con estas características requiera de pasos adicionales para garantizar una mínima tasa de falsos positivos.
  • Categorización de imágenes y etiquetado de personas. La detección de rostros se puede aplicar en redes sociales para el etiquetado de personas, o en aplicaciones de fotografía para la agrupación automática de imágenes en función de los rostros de personas presentes en ellas o el entorno y la situación del momento en el que fue tomada la imagen, además de muchas otras aplicaciones.
  • Seguridad y supervisión. Esta técnica tiene un gran potencial de aplicación en sistemas de monitoreo ubicados en áreas restringidas, donde es necesario alertar sobre la presencia de personas, independientemente de su identidad. También puede ser de gran utilidad en eventos o espacios públicos para el control de aforo.
  • Rapidez. Los modelos entrenados para detección de rostros son más rápidos y ligeros que aquellos destinados al reconocimiento facial, debido a la complejidad de estos últimos, además de ser menos invasivos.

Limitaciones

  • No se utilizan datos biométricos. Los sistemas dedicados a la detección de rostros solamente advierten la presencia de rostros humanos en vídeos e imágenes. Al no tener en cuenta los datos biométricos de los rostros detectados, no pueden utilizarse para aplicaciones de identificación biométrica o similares.
  • Vulnerabilidad. Recordemos que los sistemas de detección de rostros pueden tener dificultades para inferir sobre vídeos e imágenes con poca iluminación o los rostros aparezcan en ángulos extremos, donde no sea posible detectar con exactitud ciertos contornos o facciones del rostro.
  • Imágenes destinadas al entrenamiento. El conjunto de imágenes que utilicemos debe ser lo suficientemente amplio y diverso para poder garantizar el correcto funcionamiento del algoritmo. Si el conjunto no es representativo de las imágenes que se recibirán en el futuro, el rendimiento puede ser inconsistente o mostrar subajustes hacia ciertos rostros.

Como vemos, la detección de rostros es una herramienta de gran utilidad que resulta indispensable en nuestra vida moderna. A pesar de mostrar ciertas limitaciones, el uso de estos modelos es una apuesta segura en multitud de aplicaciones, que van desde sistemas de seguridad, hasta aplicaciones destinadas a los sectores de la banca, la sanidad o el entretenimiento.


Solicítanos ahora tu presupuesto para proyecto de Inteligencia Artificial y uno de nuestros consultores especializados te atenderá personalmente.


Blog sobre Inteligencia Artificial