Microsoft Face API - bounswe/bounswe2017group3 GitHub Wiki

Microsoft Face API detects one or more human faces in an image and marks faces with rectangles along with face attributes which contain machine learning-based predictions of facial features. After detecting faces, you can take the face rectangle and pass it to the Emotion API to speed up processing.

Available Face Attribute Features

Age, gender, pose, smile, and facial hair of the person in the rectangle can be identified. Also, 27 landmarks for each face in the image are available. The location of the nose, pupils and eyebrows are some examples for landmarks. Below, one can find a example of the response in JSON format.

[
  {
    "faceId": "f12eb167-b461-4879-8972-141f440416ac",
    "faceRectangle": {
      "width": 143,
      "height": 143,
      "left": 261,
      "top": 115
    },
    "faceLandmarks": {
      "pupilLeft": {
        "x": 300.4,
        "y": 156.2
      },
      "pupilRight": {
        "x": 367.5,
        "y": 160.4
      },
      "noseTip": {
        "x": 334.8,
        "y": 191.3
      },
      "mouthLeft": {
        "x": 291.2,
        "y": 211.7
      },
      "mouthRight": {
        "x": 369.3,
        "y": 218.7
      },
      "eyebrowLeftOuter": {
        "x": 280.7,
        "y": 144.4
      },
      "eyebrowLeftInner": {
        "x": 324.7,
        "y": 143.2
      },
      "eyeLeftOuter": {
        "x": 293,
        "y": 156.1
      },
      "eyeLeftTop": {
        "x": 303.7,
        "y": 152.7
      },
      "eyeLeftBottom": {
        "x": 302.7,
        "y": 159
      },
      "eyeLeftInner": {
        "x": 312.8,
        "y": 157.7
      },
      "eyebrowRightInner": {
        "x": 354.5,
        "y": 144
      },
      "eyebrowRightOuter": {
        "x": 388.8,
        "y": 151.7
      },
      "eyeRightInner": {
        "x": 359.2,
        "y": 160.7
      },
      "eyeRightTop": {
        "x": 368.7,
        "y": 157.1
      },
      "eyeRightBottom": {
        "x": 368,
        "y": 162.6
      },
      "eyeRightOuter": {
        "x": 377.1,
        "y": 161
      },
      "noseRootLeft": {
        "x": 326.3,
        "y": 159.7
      },
      "noseRootRight": {
        "x": 346.3,
        "y": 161.5
      },
      "noseLeftAlarTop": {
        "x": 320.2,
        "y": 175.2
      },
      "noseRightAlarTop": {
        "x": 353.2,
        "y": 177.4
      },
      "noseLeftAlarOutTip": {
        "x": 308.1,
        "y": 187.2
      },
      "noseRightAlarOutTip": {
        "x": 361.4,
        "y": 190.2
      },
      "upperLipTop": {
        "x": 332.4,
        "y": 209.8
      },
      "upperLipBottom": {
        "x": 331.6,
        "y": 216
      },
      "underLipTop": {
        "x": 329.4,
        "y": 235
      },
      "underLipBottom": {
        "x": 328.3,
        "y": 244.9
      }
    },
    "faceAttributes": {
      "age": 29.7,
      "gender": "male",
      "headPose": {
        "roll": 4.1,
        "yaw": 1.4,
        "pitch": 0
      },
      "smile": 1,
      "facialHair": {
        "moustache": 0.2,
        "beard": 0.1,
        "sideburns": 0.1
      },
      "glasses": "NoGlasses"
    }
  }
]

Face Verification

The API also supports face verification. It generates a similarity score by comparing images.

Similar Face Searching

One can also find a collection of similar faces to a given collection of faces. It does this by scanning the database.

Analyze Video in near Real Time

API also supports face identification in videos in a near real time.

Prices

Plan Description Price
Free 30K calls per month free
Standard 10 TPS 0-1,000,000 transactions: $1.50 per 1000 calls
Standard 10 TPS 1,000,001- 5,000,000 transactions: $1.10 per 1000 calls
Standard 10 TPS 5,000,001-20,000,000 transactions: $0.65 per 1000 calls
Face Storage Image size up to 4 MB each $0.50 per 1,000 images per month

References

Microsoft.com - Face API