Playground biometrics demo BioID home page

SOAP Method VideoLivenessDetection

Performs a liveness detection on the given video, see Face Liveness Detection.

[OperationContract]
[FaultContract(typeof(BioIDWebServiceFault)]
bool VideoLivenessDetection(byte[] video, out string messages);

  • Parameters

  • video
    The video stream to use with liveness detection.
  • messages
    Returns an XML-string containing information about the liveness detection (see BWSMessages).

Response

Returns true when the given video is undoubtedly determined to be live data; false otherwise, or when errors occurred (see messages for details).

Remarks

This method just performs a liveness detection. The method will only succeed, when it can undoubtedly determine that the given data is live data. Please note that this method is in a preview state, i.e. we are still optimizing our parameters and, as with all our services, we are continuously improving the live detection neural networks.

The liveness detection on videos itself is a straightforward procedure: we start with the first frame of the video, try to detect a suitable face in this frame and perform a standard live detection on the facial image. We repeat the procedure for frames with some offset (~300 millisecond) in the video until a break condition is reached. A final decision is made on the number of live images vs fake images vs failed suitable face detections.

Please ensure that the uploaded video is not too big. A video of about three seconds length should be enough.

This API has a fault contract of type BioIDWebServiceFault which is used for fatal errors like invalid arguments or missing service, etc. Messages, even error messages, generated by the liveness detection procedure are reported via the messages output value, which contains an XML string according to the BWSMessages schema namespace.

Faults

  • InvalidArgument
    No video has been transmitted.
  • AccessDenied
    Access to the requested service operation has been denied. Please ensure that you use a valid client authentication certificate and that this certificate has been announced to BioID GmbH as your client certificate.
  • InternalError
    For some reason BioID is not running or not configured correctly on this BWS deployment.

Operation Error-codes

The messages output XML string might contain operation specific errors as follows:

  • LiveDetectionFailed
    The submitted video does not prove that it is recorded from a live person.
  • FailedToAcquire
    Not enough suitable faces could be found in the video.
  • ExecutionOfJobTimedOut
    The service could not process the requested task in a reasonable amount of time.

Sample Error-codes

The messages output XML string might also contain errors for individual samples.  With any of theses errors the sample is marked as unsuitable and is not considered in the liveness detection process:

  • LiveDetectionFailed
    The sample has been discarded as it cannot be proven that it has been recorded from a live person.
  • NoFaceFound
    The sample has been discarded as no suitable face could be found.