Guía de detección de puntos de referencia faciales

Tarea de marcador de rostro

La tarea MediaPipe Face Landmarker te permite detectar puntos de referencia y expresiones faciales en imágenes y videos. Puedes usar esta tarea para identificar expresiones faciales humanas, aplicar filtros y efectos faciales, y crear avatares virtuales. En esta tarea, se usan modelos de aprendizaje automático (AA) que pueden funcionar con imágenes individuales o una transmisión continua de imágenes. La tarea genera puntos de referencia tridimensionales, puntuaciones de forma de combinación (coeficientes que representan la expresión facial) para inferir superficies faciales detalladas en tiempo real y matrices de transformación con el objetivo de realizar las transformaciones necesarias para la renderización de efectos.

Probar

Comenzar

Comienza a utilizar esta tarea siguiendo una de las guías de implementación para la plataforma de destino. En estas guías específicas de la plataforma, se explica la implementación básica de esta tarea, incluidos un modelo recomendado y un ejemplo de código con las opciones de configuración recomendadas:

Detalles de la tarea

En esta sección, se describen las capacidades, entradas, salidas y opciones de configuración de esta tarea.

Funciones

  • Procesamiento de imágenes de entrada: El procesamiento incluye la rotación de imágenes, el cambio de tamaño, la normalización y la conversión del espacio de color.
  • Umbral de puntuación: Filtra los resultados en función de las puntuaciones de predicción.
Entradas de tareas Resultados de la tarea
El marcador de rostro acepta una entrada de uno de los siguientes tipos de datos:
  • Imágenes fijas
  • Fotogramas de video decodificados
  • Feed de video en vivo
El marcador de Face Land genera los siguientes resultados:
  • Cuadros de límite para los rostros detectados en un marco de imagen.
  • Una malla facial completa para cada rostro detectado, con puntuaciones de forma de combinación que denotan expresiones faciales y coordenadas para los puntos de referencia faciales.

Opciones de configuración

Esta tarea incluye las siguientes opciones de configuración:

Nombre de la opción Descripción Rango de valores Valor predeterminado
running_mode Establece el modo de ejecución para la tarea. Existen tres modos:

IMAGE: El modo para entradas de una sola imagen.

VIDEO: Es el modo para los fotogramas decodificados de un video.

LIVE_STREAM: Es el modo para una transmisión en vivo de datos de entrada, como los que provienen de una cámara. En este modo, se debe llamar a resultListener para configurar un objeto de escucha a fin de recibir resultados de forma asíncrona.
{IMAGE, VIDEO, LIVE_STREAM} IMAGE
num_faces La cantidad máxima de rostros que puede detectar FaceLandmarker. El suavizado solo se aplica cuando num_faces se establece en 1. Integer > 0 1
min_face_detection_confidence Puntuación de confianza mínima para que se considere correcta la detección de rostro. Float [0.0,1.0] 0.5
min_face_presence_confidence Puntuación de confianza mínima de la puntuación de presencia facial en la detección de puntos de referencia facial. Float [0.0,1.0] 0.5
min_tracking_confidence Puntuación de confianza mínima para que se considere exitoso el seguimiento de rostros. Float [0.0,1.0] 0.5
output_face_blendshapes Establece si Face Landmarker genera formas de combinación de rostros. Las formas de combinación de rostros se usan para renderizar el modelo de rostro 3D. Boolean False
output_facial_transformation_matrixes Indica si FaceLandmarker genera la matriz de transformación facial. FaceLandmarker usa la matriz para transformar los puntos de referencia del rostro de un modelo de rostro canónico en el rostro detectado, de modo que los usuarios puedan aplicar efectos en los puntos de referencia detectados. Boolean False
result_callback Configura el objeto de escucha de resultados para recibir los resultados del punto de referencia de forma asíncrona cuando FaceLandmarker está en el modo de transmisión en vivo. Solo se puede usar cuando el modo de ejecución está configurado en LIVE_STREAM ResultListener N/A

ajustables

Face Landmarker usa una serie de modelos para predecir puntos de referencia de rostros. El primer modelo detecta rostros, un segundo modelo ubica puntos de referencia en los rostros detectados y un tercer modelo usa esos puntos de referencia para identificar rasgos y expresiones faciales.

Los siguientes modelos se empaquetan juntos en un paquete de modelos descargable:

  • Modelo de detección de rostro: Detecta la presencia de rostros con algunos puntos de referencia faciales clave.
  • Modelo de malla de rostros: Agrega una asignación completa del rostro. El resultado del modelo es una estimación de 478 puntos de referencia tridimensionales de rostros.
  • Modelo de predicción de Blendshape: Recibe el resultado del modelo de malla facial que predice 52 puntuaciones en forma de fusión, que son coeficientes que representan diferentes expresiones faciales.

El modelo de detección de rostro es el modelo de corto alcance de BlazeFace, un detector de rostros ligero y preciso optimizado para la inferencia de GPU en dispositivos móviles. Para obtener más información, consulta la tarea Detector de rostro.

En la siguiente imagen, se muestra una asignación completa de los puntos de referencia faciales del resultado del paquete de modelos.

Puntos clave del marcador de reconocimiento facial

Para obtener una vista más detallada de los puntos de referencia del rostro, consulta la imagen de tamaño completo.

Paquete de modelos Forma de entrada Tipo de datos Model Cards Versiones
FaceLandmarker FaceDetector: 192 x 192
FaceMesh-V2: 256 x 256
Forma de combinación: 1 x 146 x 2
número de punto flotante 16 FaceDetector
FaceMesh-V2
Forma de mezcla
Más reciente