La détection de visage avec les MobileVision API

La détection de visage avec les MobileVision API

Les Google Play Services en version 7.8 ont apporté de nombreuses nouveautés, dont la détection de visage avec les API Mobile Vision. Présentation de son fonctionnement.

Mobile Vision API

La version 7.8 des Google Play Services a vu l'ajout des API Mobile Vision en remplacement de l'API Android FaceDetector.Face. Elle apporte de grosses améliorations de détection en image fixe ou en mouvement.

Ces API ne reconnaissent pas le visage d'une personne, mais permettent de les détecter en image ou en vidéo. Si un visage quitte le champ de vue d'une vidéo, mais réapparait plus tard, il sera détecté comme un nouveau visage.

 

La détection

Si un objet visage est détecté, les coordonnées de son placement sur l'image seront retournées :

  • getPosition() : retourne la coordonnée la plus en haut et à gauche du visage sur l'image.
  • getWidth() : retourne la largeur de la zone où le visage a été détecté
  • getHeight() : retourne la hauteur de la zone où le visage a été détecté
  • getId() : retourne un ID que le système a associé au visage

L'orientation

L'API Face est capable de détecter un visage dans de multiple orientation. L'API est donc capable de détecter un visage même si la moitié du visage est manquant.

  • getEulerY() : retourne la rotation du visage selon l'axe vertical.
  • getEulerZ() : retourne la rotation sur l'axe Z.

orientation visage

 

Les points d'intérêts

L'API fournit la méthode getLandmarks() qui retourne une List d'objet important du visage avec leur coordonnée. Est détecté : Bas et haut de la bouche, joue gauche et droite, les deux oreilles, les deux pointes d'oreilles, les deux yeux, la gauche et la droite de la bouche et la base du nez.

point d'interet visage

 

L'activité

L'API permet aussi une détection intelligente d'état du visage :

  • getIsLeftEyeOpenProbability() : Retourne une valeur entre 0 et 1, de la probabilité que l'oeil gauche est ouvert
  • getIsRighteyeOpenProbability() : Retourne une valeur entre 0 et 1, de la probabilité que l'oeil droit est ouvert
  • getIsSmilingProbability() : Retourne une valeur entre 0 et 1, de la probabilité que le visage sourit

​​detection sourire

 

Pour plus d'information :