Guide de détection des points de repère

Tâche de détection de points de repère sur le visage

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.

Essayez !

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 :

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 :
  • Images fixes
  • Images vidéo décodées
  • Flux vidéo en direct
Le Face Landmarker génère les résultats suivants :
  • Un maillage facial complet pour chaque visage détecté, avec des scores de blendshape indiquant les expressions faciales et les coordonnées des points de repère du visage.
  • Matrices de blendshape et de transformation du visage

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.

Points clés du détecteur de points de repère du visage

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