La tâche MediaPipe Face Landmarker vous permet de détecter les points de repère et les expressions faciales dans les images et les vidéos. Vous pouvez utiliser cette tâche pour identifier les expressions faciales humaines, appliquer des filtres et des effets faciaux, et créer des avatars virtuels. Cette tâche utilise des modèles de machine learning (ML) qui peuvent fonctionner avec des images uniques ou un flux continu d'images. La tâche génère des points de repère faciaux en trois dimensions, des scores de blendshape (coefficients représentant l'expression faciale) pour déduire des surfaces faciales détaillées en temps réel, ainsi que des matrices de transformation pour effectuer les transformations requises pour le rendu des effets.
Premiers pas
Pour commencer à utiliser cette tâche, suivez l'un des guides d'implémentation pour votre plate-forme cible. Ces guides spécifiques à la plate-forme vous présentent une implémentation de base de cette tâche, y compris un modèle recommandé et un exemple de code avec les options de configuration recommandées :
- Android – Exemple de code – Guide
- Python : exemple de code – guide
- Web – Exemple de code – Guide
Détails de la tâche
Cette section décrit les capacités, les entrées, les sorties et les options de configuration de cette tâche.
Fonctionnalités
- Traitement des images d'entrée : le traitement inclut la rotation, le redimensionnement, la normalisation et la conversion de l'espace colorimétrique des images.
- Seuil de score : filtrez les résultats en fonction des scores de prédiction.
| Entrées de tâches | Sorties de tâches |
|---|---|
Le repère facial accepte une entrée de l'un des types de données suivants :
|
Le Face Landmarker génère les résultats suivants :
|
Options de configuration
Cette tâche comporte les options de configuration suivantes :
| Nom de l'option | Description | Plage de valeurs | Valeur par défaut |
|---|---|---|---|
running_mode |
Définit le mode d'exécution de la tâche. Il existe trois modes : IMAGE : mode pour les entrées d'image unique. VIDEO : mode pour les frames décodées d'une vidéo. LIVE_STREAM : mode pour une diffusion en direct des données d'entrée, par exemple à partir d'une caméra. Dans ce mode, resultListener doit être appelé pour configurer un écouteur afin de recevoir les résultats de manière asynchrone. |
{IMAGE, VIDEO, LIVE_STREAM} |
IMAGE |
num_faces |
Nombre maximal de visages pouvant être détectés par FaceLandmarker. Le lissage n'est appliqué que lorsque num_faces est défini sur 1.
|
Integer > 0 |
1 |
min_face_detection_confidence |
Score de confiance minimal pour que la détection du visage soit considérée comme réussie. | Float [0.0,1.0] |
0.5 |
min_face_presence_confidence |
Score de confiance minimal de la présence d'un visage dans la détection des points de repère du visage. | Float [0.0,1.0] |
0.5 |
min_tracking_confidence |
Score de confiance minimal pour que le suivi du visage soit considéré comme réussi. | Float [0.0,1.0] |
0.5 |
output_face_blendshapes |
Indique si Face Landmarker génère des blendshapes de visage. Les blendshapes faciaux sont utilisés pour le rendu du modèle de visage 3D. | Boolean |
False |
output_facial_transformation_matrixes |
Indique si FaceLandmarker génère la matrice de transformation faciale. FaceLandmarker utilise la matrice pour transformer les points de repère du visage d'un modèle de visage canonique en visage détecté, afin que les utilisateurs puissent appliquer des effets sur les points de repère détectés. | Boolean |
False |
result_callback |
Définit l'écouteur de résultats pour recevoir les résultats des points de repère de manière asynchrone lorsque FaceLandmarker est en mode flux en direct.
Ne peut être utilisé que lorsque le mode d'exécution est défini sur LIVE_STREAM |
ResultListener |
N/A |
Modèles
Le Face Landmarker utilise une série de modèles pour prédire les points de repère du visage. Le premier modèle détecte les visages, le deuxième localise les points de repère sur les visages détectés et le troisième utilise ces points de repère pour identifier les traits et les expressions du visage.
Les modèles suivants sont regroupés dans un package de modèles téléchargeable :
- Modèle de détection des visages : détecte la présence de visages avec quelques points de repère clés.
- Modèle de maillage facial : ajoute une cartographie complète du visage. Le modèle génère une estimation de 478 points de repère faciaux en 3D.
- Modèle de prédiction des blendshapes : reçoit les données de sortie du modèle de maillage facial et prédit 52 scores de blendshapes, qui sont des coefficients représentant différentes expressions faciales.
Le modèle de détection de visages est le modèle BlazeFace à courte portée, un détecteur de visages léger et précis optimisé pour l'inférence sur GPU mobile. Pour en savoir plus, consultez la tâche Détecteur de visages.
L'image ci-dessous montre un mappage complet des points de repère du visage à partir de la sortie du bundle de modèle.
Pour afficher les points de repère du visage plus en détail, consultez l'image en taille réelle.
| Groupe de modèles | Forme d'entrée | Type de données | Fiches de modèle | Versions |
|---|---|---|---|---|
| FaceLandmarker | FaceDetector : 192 x 192 FaceMesh-V2 : 256 x 256 Blendshape : 1 x 146 x 2 |
float 16 |
FaceDetector FaceMesh-V2 Blendshape |
Dernières |