Skip to content

About OneShotLiveness estimation#

OneShotLiveness is an algorithm for determining whether a person in one or more images is "real" or a fraudster using a fake ID (printed face photo, video, paper, or 3D mask).

OneShotLiveness is used as a pre-check before performing face detection.

OneShotLiveness estimation types#

With LUNA ID, you can perform the following types of OneShotLiveness estimation:

  • Online OneShotLiveness estimation
    To perform Online OneShotLiveness estimation, LUNA ID sends a request to the LUNA PLATFORM 5 /liveness endpoint. For more details about LUNA ID and LUNA PLATFORM 5 interaction, see the Interaction of LUNA ID with LUNA PLATFORM 5.
  • Offline OneShotLiveness estimation
    To perform Offline OneShotLiveness estimation, you do not need to send requests to LUNA PLATFORM 5. You can perform the estimation directly on your device.

Image requirements#

An image that LUNA ID takes as input must be a source image and meet the following requirements:

Parameters Requirements
Minimum resolution for mobile devices 720x960 pixels
Maximum resolution for mobile devices 1080x1920 pixels
Compression No
Image warping No
Image cropping No
Effects overlay No
Mask No
Number of faces in the frame 1
Face detection bounding box size More than 200 pixels
Frame edges offset More than 10 pixels
Head pose -20 to +20 degrees for head pitch, yaw, and roll
Image quality The face in the frame should not be overexposed, underexposed, or blurred.

OneShotLiveness thresholds#

By default, two thresholds are used for OneShotLiveness estimation:

Quality threshold#

Quality threshold estimates the input image by the following parameters:

  • Lightness (overexposure)
  • Darkness (underexposure)
  • Blurriness
  • Illumination
  • Specularity

The table below has the default threshold values. These values are set to optimal:

Threshold Value
blurThreshold 0.61
darknessThreshold 0.50
lightThreshold 0.57
illuminationThreshold 0.1
specularityThreshold 0.1

For details on image quality estimation, see Image Quality Estimation and Quality estimator settings.

Liveness threshold#

The LunaConfig.livenessQuality parameter specifies the threshold lower which the system will consider the result as a presentation attack.

For images received from mobile devices, the default liveness threshold value is 0.5. For details, see Liveness threshold.

Number of best shots#

You can specify a number of best shot to be collected for a OneShotLiveness estimation. To do this:

  • In LUNA ID for Android, use the LunaConfig.bestShotsCount parameter.
    The default value is 1.

  • In LUNA ID for iOS, use the LCBestShotConfiguration.numberOfBestShots property.
    The default value is 3.