Détection facial

Avec l'API de détection de visage de ML Kit, vous pouvez détecter des visages dans une image, identifier les principales caractéristiques du visage et obtenir les contours des visages détectés.

Avec la détection de visage, vous pouvez obtenir les informations dont vous avez besoin pour effectuer des tâches telles que embellir des selfies et des portraits, ou générer des avatars à partir de la photo d'un utilisateur. Étant donné que ML Kit peut effectuer une détection de visage en temps réel, vous pouvez l'utiliser dans des applications telles que le chat vidéo ou des jeux qui répondent aux expressions du joueur.

iOSAndroid _

Si vous êtes un développeur Flutter, vous pourriez être intéressé par FlutterFire , qui inclut un plugin pour les API ML Vision de Firebase.

Capacités clés

Reconnaître et localiser les traits du visage Obtenez les coordonnées des yeux, des oreilles, des joues, du nez et de la bouche de chaque visage détecté.
Obtenez les contours des traits du visage Obtenez les contours des visages détectés ainsi que leurs yeux, sourcils, lèvres et nez.
Reconnaître les expressions du visage Déterminez si une personne sourit ou a les yeux fermés.
Suivez les visages sur les images vidéo Obtenez un identifiant pour le visage de chaque personne détectée. Cet identifiant est cohérent entre les appels, vous pouvez donc, par exemple, effectuer une manipulation d'image sur une personne particulière dans un flux vidéo.
Traitez les images vidéo en temps réel La détection des visages est effectuée sur l'appareil et est suffisamment rapide pour être utilisée dans des applications en temps réel, telles que la manipulation vidéo.

Exemples de résultats

Exemple 1

Pour chaque visage détecté :

Visage 1 sur 3
Polygone de délimitation (884.880004882812, 149.546676635742), (1030.77197265625, 149.546676635742), (1030.77197265625, 329.660278320312), (884.880004882 812, 329.660278320312)
Angles de rotation Y : -14.054030418395996, Z : -55.007488250732422
Identifiant de suivi 2
Repères du visage
Oeil gauche (945.869323730469, 211.867126464844)
L'œil droit (971.579467773438, 247.257247924805)
Fond de bouche (907.756591796875, 259.714477539062)

... etc.

Probabilités de fonctionnalités
Souriant 0.88979166746139526
Oeil gauche ouvert 0.98635888937860727
Oeil droit ouvert 0,99258323386311531

Exemple 2 (détection du contour du visage)

Lorsque la détection du contour du visage est activée, vous obtenez également une liste de points pour chaque caractéristique du visage détectée. Ces points représentent la forme de l'entité. L'image suivante illustre comment ces points correspondent à un visage (cliquez sur l'image pour l'agrandir) :

Contours des traits du visage
Pont de nez (505.149811, 221.201797), (506.987122, 313.285919)
Oeil gauche (404.642029, 232.854431), (408.527283, 231.366623), (413.565796, 229.427856), (421.378296, 226.967682), (432.598755, 225.434143), (4 42.953064, 226.089508), (453.899811, 228.594818), (461.516418, 232.650467), (465.069580 , 235.600845), (462.170410, 236.316147), (456.233643, 236.891602), (446.363922, 237.966888), (435.698914, 238.149323), (424.320740, 237.235168), (416.037720, 236.012115), (409.983459, 234.870300)
Haut de la lèvre supérieure (421.662048, 354.520813), (428.103882, 349.694061), (440.847595, 348.048737), (456.549988, 346.295532), (480.526489, 346.089294), (5 03.375702, 349.470459), (525.624634, 347.352783), (547.371155, 349.091980), (560.082031 , 351.693268), (570.226685, 354.210175), (575.305420, 359.257751)
(etc.)