La détection de visages localise les visages humains sur des supports visuels tels que des images ou des vidéos numériques. Lorsqu'un visage est détecté, il est associé à une position, une taille et une orientation. Il peut également être utilisé pour rechercher des points de repère tels que les yeux et le nez.
Voici quelques-uns des termes que nous utilisons en ce qui concerne la fonctionnalité de détection de visages de ML Kit:
Le suivi des visages étend la détection des visages aux séquences vidéo. Vous pouvez suivre n'importe quel visage qui apparaît dans une vidéo pendant une durée indéterminée, d'une image à l'autre. Cela signifie qu'un visage détecté dans des images vidéo consécutives peut être identifié comme étant la même personne. Notez qu'il ne s'agit pas d'une forme de reconnaissance des visages. Le suivi des visages effectue uniquement des inférences en fonction de la position et du mouvement des visages dans une séquence vidéo.
Un point d'intérêt est un point d'intérêt dans un visage. L'œil gauche, l'œil droit et la base du nez sont tous des exemples de points de repère. ML Kit permet de trouver des points de repère sur un visage détecté.
Un contour est un ensemble de points qui suivent la forme d'un visage. ML Kit offre la possibilité de trouver les contours d'un visage.
La classification détermine si une certaine caractéristique faciale est présente. Par exemple, un visage peut être classé selon que ses yeux sont ouverts ou fermés, ou s'il sourit ou non.
Orientation du visage
Les termes suivants décrivent l'angle d'orientation d'une face par rapport à la caméra:
- Euler X: visage avec un angle Euler X positif orienté vers le haut.
- Euler Y: un visage avec un angle Y d'Euler positif regarde vers la droite de l'appareil photo, ou vers la gauche s'il est négatif.
- Euler Z: un visage ayant un angle Z positif d'Euler est pivoté dans le sens inverse des aiguilles d'une montre par rapport à l'appareil photo.
ML Kit ne rapporte pas l'angle d'Euler X, d'Euler Y ou d'Euler Z d'un visage détecté lorsque LANDMARK_MODE_NONE
, CONTOUR_MODE_ALL
, CLASSIFICATION_MODE_NONE
et PERFORMANCE_MODE_FAST
sont définis ensemble.
Points de repère
Un point de repère est un point d'intérêt dans un visage. L'œil gauche, l'œil droit et la base du nez sont tous des exemples de points de repère.
ML Kit détecte les visages sans rechercher de points de repère. La détection de points de repère est une étape facultative désactivée par défaut.
Le tableau suivant récapitule tous les points de repère pouvant être détectés en fonction de l'angle Y d'Euler d'un visage associé:
Angle d'Euler Y | Points de repère détectables |
---|---|
< -36 degrés | œil gauche, bouche gauche, oreille gauche, base du nez, joue gauche |
-36 degrés à -12 degrés | bouche gauche, base du nez, bouche inférieure, œil droit, œil gauche, joue gauche, embout gauche |
-12 degrés à 12 degrés | œil droit, œil gauche, base du nez, joue gauche, joue droite, bouche gauche, bouche droite, bouche inférieure |
12 degrés à 36 degrés | bouche droite, base du nez, bouche inférieure, œil gauche, œil droit, joue droite, embout de l'oreille droite |
> 36 degrés | œil droit, bouche droite, oreille droite, base du nez, joue droite |
Chaque point de repère détecté inclut la position qui lui est associée dans l'image.
Contours
Un contour est un ensemble de points qui représentent la forme d'une caractéristique du visage. L'image suivante illustre la correspondance de ces points avec un visage. Cliquez sur l'image pour l'agrandir:
Chaque contour des caractéristiques détecté par ML Kit est représenté par un nombre fixe de points:
Visage ovale | 36 points | Lèvre supérieure (haut) | 11 points |
---|---|---|---|
Sourcil gauche (haut) | 5 points | Lèvre supérieure (bas) | 9 points |
Sourcil gauche (bas) | 5 points | Lèvre inférieure (haut) | 9 points |
Sourcil droit (haut) | 5 points | Lèvre inférieure (bas) | 9 points |
Sourcil droit (bas) | 5 points | Pont de nez | 2 points |
Œil gauche | 16 points | Nez en bas | 3 points |
Œil droit | 16 points | ||
Joue gauche (centre) | 1 point | ||
Joue droite (centre) | 1 point |
Lorsque vous obtenez tous les contours d'un visage en même temps, vous obtenez un tableau de 133 points, qui représentent les contours, comme illustré ci-dessous:
Index des contours des caractéristiques | |
---|---|
0-35 | Visage ovale |
36-40 | Sourcil gauche (haut) |
41-45 | Sourcil gauche (bas) |
46-50 | Sourcil droit (haut) |
51-55 | Sourcil droit (bas) |
56-71 | Œil gauche |
72-87 | Œil droit |
88-96 | Lèvre supérieure (bas) |
97-105 | Lèvre inférieure (haut) |
106-116 | Lèvre supérieure (haut) |
117-125 | Lèvre inférieure (bas) |
126, 127 | Pont de nez |
128-130 | Nez du bas (notez que le point central est l'index 128) |
131 | Joue gauche (centre) |
132 | Joue droite (centre) |
Classification
La classification détermine si une certaine caractéristique faciale est présente. ML Kit prend actuellement en charge deux classifications: yeux ouverts et sourire.
La classification est une valeur de certitude. Elle indique l'assurance qu'une caractéristique faciale est présente. Par exemple, une valeur de 0,7 ou plus pour la classification des sourires indique qu'il est probable qu'une personne sourit.
Ces deux classifications reposent sur la détection des points de repère.
Notez également que les classifications "yeux ouverts" et "sourire" ne fonctionnent que pour les visages frontaux, c'est-à-dire les visages avec un angle Y d'Euler faible (entre -18 et 18 degrés).
Taille minimale du visage
La taille minimale du visage correspond à la taille du visage souhaitée, exprimée sous la forme du rapport entre la largeur de la tête et la largeur de l'image. Par exemple, la valeur 0,1 signifie que le plus petit visage à rechercher correspond à environ 10% de la largeur de l'image recherchée.
La taille minimale des visages est un compromis entre performances et précision: en définissant une taille minimale inférieure, vous permettez au détecteur de détecter les visages plus petits, mais la détection prend plus de temps. Plus elle est grande, les visages plus petits peuvent être exclus, mais l'exécution s'exécute plus rapidement.
La taille minimale des visages n'est pas une limite stricte. Le détecteur peut détecter des visages légèrement plus petits que ceux spécifiés.
Étapes suivantes
Utiliser la détection des visages dans l'application iOS ou Android: