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.
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:
- Android - Ejemplo de código - Guía
- Python - Ejemplo de código - Guía
- Web - Ejemplo de código - Guía
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:
|
El marcador de Face Land genera los siguientes resultados:
|
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.
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 |