Facial Similarity reports
Start here
This is an introductory guide and overview for Facial Similarity reports. This guide is primarily for users of API v3 or higher.
You'll find API documentation separately.
Introduction
Onfido offers 4 types of Facial Similarity report: Photo, Photo Fully Auto (API v3 or higher), Video and Motion (API v3 or higher).
All Facial Similarity reports will compare the most recent photo, video or motion capture provided by the applicant to the face on the most recent document provided. Where the document has two sides, we will search both sides of the document for a face. Facial Similarity reports aim to prove identity document ownership, so that only the owner of the identity document can use it to verify their identity and access services.
Photo and Photo Fully Auto
In Facial Similarity Photo and Photo Fully Auto reports, images and data are extracted from identity documents using machine learning, and then compared to a selfie taken by the user. These reports are available via the Onfido SDKs, or applicant form for low-risk users or transactions.
Both the Photo and Photo Fully Auto reports use a photo of the applicant. The photo needs to be a "live photo" taken at the time of check submission, so that it can assess whether the holder of the identity document is the same person as the one on the document.
The Photo report uses algorithms and expert review by Onfido’s super recognizer analysts to return a result. If using the applicant form, the Photo report needs to be paired with a Document report.
The Photo Fully Auto report is intended to be paired with manual review by your own team, and does not include expert review by Onfido’s super recognizer analysts. This guarantees faster results, but it also means more reports are likely to end with faces not being detected, or with users incorrectly rejected.
Photo and Photo Fully Auto API response breakdown tree
The result for both Photo and Photo Fully Auto can be clear
or consider
,
returned in the API response. This is determined by the results of individual
breakdowns and sub-breakdowns.
The following diagram shows how these breakdowns and sub-breakdowns are mapped to particular results:
Breakdown descriptions
Breakdown | Sub-breakdown(s) | Description |
---|---|---|
Visual authenticity | Asserts whether the person in the live photo is real and not a spoof. | |
Spoofing detection | Contains a score value between 0 and 1 which expresses how likely it is that the live photo is real, where 0 represents a spoofed image and 1 represents a real image. | |
Face comparison | Asserts whether the face in the document image matches the face in the live photo. | |
Face match | Contains a score value between 0 and 1 which expresses how similar the document image face and live photo are, where 1 represents a perfect match. | |
Image integrity | Asserts whether the quality and integrity of the uploaded files were sufficient to perform a face comparison. | |
Face detected | Asserts that a single face of sufficient quality was found in both the document image and the live photo. | |
Source integrity | Asserts whether the source of the live photo is trustworthy. For example, it has not been digitally tampered with or was not taken from a fake webcam. |
Video
In addition to extracting images and data from identity documents, Facial Similarity Video provides added security for high-risk users or transactions. The user records themselves repeating numbers and performing randomized movements. The Facial Similarity Video report is available via the Onfido SDKs.
In order for a Facial Similarity Video report to complete automatically, the user needs to turn their head in the correct direction and correctly say the 3 randomly generated digits in one of our supported languages (see table below).
If the user does not say the correct digits, or speak in another language, the live video will be reviewed by an analyst for evidence of spoofing.
Language name | Language code |
---|---|
English | "en" |
Spanish | "es" |
Indonesian | "id" |
Italian | "it" |
German | "de" |
French | "fr" |
Portuguese | "pt" |
Polish | "pl" |
Japanese | "ja" |
Dutch | "nl" |
Romanian | "ro" |
Basque | "eu" |
Catalan | "ca" |
Galician | "gl" |
Chinese | "cn" |
Turkish | "tr" |
Malay | "ms" |
SDK localization
We recommend that you localize the strings if you're using one of the Onfido SDKs, so the user is more likely to understand the liveness head turn and speaking instructions.
The Onfido voice processor will attempt to detect the language the user is
speaking. This will be more successful if you pass the code for the expected
language to the locale
mechanism, in any of the Onfido
SDKs:
- iOS SDK - pass the
onfido_locale
parameter - Android SDK - pass the
onfido_locale
parameter - Web SDK - pass the
locale
parameter
Some string localizations are available out of the box, but this differs depending on the SDK.
You can also provide your own custom translations to your users.
Video API response breakdown tree
The result for Video can be clear
or consider
, returned in the API
response. This is determined by the results of individual breakdowns and
sub-breakdowns.
The following diagram shows how these breakdowns and sub-breakdowns are mapped to particular results:
Breakdown descriptions
Breakdown | Sub-breakdown(s) | Description |
---|---|---|
Visual authenticity | Asserts whether the person in the live video is real and not a spoof. | |
Spoofing detection | Contains a score value between 0 and 1 which expresses how likely it is that the live video is real, where 0 represents a spoofed video and 1 represents a real video. | |
Liveness detected | Asserts whether the numbers and head movements were executed correctly during the live video task. | |
Face comparison | Asserts whether the face in the document image matches the face in the live video. | |
Face match | Contains a score value between 0 and 1 which expresses how similar the document image face and live video are, where 1 represents a perfect match. | |
Image integrity | Asserts whether the quality and integrity of the uploaded files were sufficient to perform a face comparison. | |
Face detected | Asserts that a single face of sufficient quality was found in both the document image and the live video. | |
Source integrity | Asserts whether the source of the live video is trustworthy. For example, it has not been digitally tampered with or was not taken from a fake webcam. |
Motion
Like Facial Similarity Video, Motion provides for added security for high-risk users or transactions, but in a fully automated fashion. In addition to confirming a user’s face matches their document upload, Motion also assesses liveness by asking users to complete a simple head turn pattern in both directions. The Facial Similarity Motion report is available via the Onfido SDKs.
Motion API response breakdown tree
The result for Motion can be clear
or consider
, returned in the API
response. This is determined by the results of individual breakdowns and
sub-breakdowns.
The following diagram shows how these breakdowns and sub-breakdowns are mapped to particular results:
Breakdown descriptions
Breakdown | Sub-breakdown(s) | Description |
---|---|---|
Visual authenticity | Asserts whether the person in the motion capture is real (not a spoof) and live. | |
Spoofing detection | Contains a score value between 0 and 1 which expresses how likely it is that the motion capture is real, where 0 represents a spoofed capture and 1 represents a real motion capture. | |
Liveness detected | Asserts whether the head turn completion pattern was executed correctly. | |
Face comparison | Asserts whether the face in the document matches the face in the motion capture. | |
Face match | Contains a score value between 0 and 1 which expresses how similar the face in the document image and motion capture are, where 1 represents a perfect match. | |
Image integrity | Asserts whether the quality and integrity of the uploaded files and the content contained within them were sufficient to perform a face comparison. | |
Face detected | Asserts that a single face of sufficient quality was found in both the document image and the motion capture. | |
Source integrity | Asserts whether the source of the motion capture is trustworthy. For example, it has not been digitally tampered with or was not taken from a fake webcam. |