Face Detection & Identification

Visual Detection Overview

Visual detection models localize an object of interest in an image by returning a box that bounds that object, as well as the type of that object, also referred to as the class. A detector can detect multiple objects of different classes per image. For each detection, a detector outputs a confidence score that is independent of any other detections.

The output object in Hive detection APIs lists each detected object, including:

  • The geometric description of the detected bounding box.
  • The predicted class for the detection.
  • For some models, the confidence score for the detection.

When submitting a video to be processed, Hive’s backend splits the video into frames, runs the model on each frame, then recombines the results into a single response for the entire video. The video output for a detector is similar to a list of detection output objects, but with multiple timestamps.

Demographics Model

Hive’s face detection model achieves state-of-the-art accuracy. Face detections are passed through an additional classification step to predict attributes like gender, age, or "liveness".

Gender Classification
The gender classification model runs on-top of the face detections provided by the face detection model, and classifies faces as:

  • male
  • female
  • other_gender: non-human face / indistinguishable gender

Hive detects perceived gender based on the physical appearance of a face in the given context. These detections are not predictions of gender identity and this model is not designed to be used as such.

Age Classification
The age classification model runs on-top of the face detections provided by the face detection model, and classifies faces as:

  • senior: retirement age / grandparent
  • middle_aged: 45 - 65yrs old
  • adult: anyone above 18 but not quite middle-aged yet
  • teenager: 13-18yrs old
  • pre_teen: Any kid older than a toddler but younger than a teen
  • toddler: 12-36mo, starting to be able to walk / crawl
  • baby: recently born, unlikely to know how to walk / crawl
  • other_age: non-human face / indistinguishable age

Liveness Classification (Beta)
The "liveness" classification model run on top of the face detection model and classifies faces as:

  • primary: this face exists in the primary image
  • secondary: this face exist in a image, screen, or painting inside of the primary image (ex: A face in a picture frame hung on the wall)

Setting Thresholds (Demographics)

For Age and Gender classes returned in our demographics response, one should assume the predicted class to be the class with the max score of each of the classes returned in each classifier. For Liveness, any score >.95 "primary" should be assumed to be primary with any score < .95 assumed to be "secondary".

Face Similarity

In a separate offering from the "Demographics" Face Detection endpoint, Hive also offers a face similarity model. In this model, one submits a reference and target image in one API call. Hive then returns a "similarity score" that is correlated to how similar the reference face is to any of the faces in the target image.


What’s Next

See the API reference for more details on the API interface and response format.