SOAP Method LivenessDetection
Performs a liveness detection on the given samples, see Face Liveness Detection.
[OperationContract] [FaultContract(typeof(BioIDWebServiceFault)] bool LivenessDetection(Sample  samples, out string messages);
|samples||The array of Samples to use with liveness detection. The array may contain samples of different traits.|
|messages||Returns an XML-string containing information about the liveness detection (see BWSMessages).|
true when the given samples are undoubtedly determined to be live data;
false otherwise, or when errors occurred (see messages for details).
This method just performs a liveness detection (currently supported traits are face and periocular). The method will only succeed, when it can undoubtedly determine that the given data is live data. In case that the live detection for the face trait succeeds, the degree of the head rotation between two subsequent images is reported with the returned messages XML-string.
Internally this operation performs a QualityCheck (in BioID ExtractTokenData mode) for all submitted samples before they are forwarded to the liveness detection. Therefore you might get results from these operations as well together with the liveness detection results.
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 verification procedure are reported via the messages output value, which contains an XML string according to the BWSMessages schema namespace.
|InvalidArgument||No samples have 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.|
The messages output XML string might contain operation specific errors as follows:
|LiveDetectionFailed||The submitted samples do not prove that they are recorded from a live person.|
|ChallengeResponseFailed||The submitted samples do not prove that they are recorded from a live person as they do not fulfill the challenge-response criteria.|
|ExecutionOfJobTimedOut||The service could not process the requested task in a reasonable amount of time.|
|NotEnoughSamples||Not enough samples available for a specific trait to continue the liveness detection. It seems that all samples for the trait have been removed for some reason.|
The messages output XML string might also contain errors for the individual samples. Many of the errors can result from the initial quality-check that is performed before anything else is done. Please refer to the QualityCheck method for a list of sample errors that might have been generated by the quality-check.
Additionally the following errors can occur. 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.|
|ChallengeResponseFailed||The sample has been discarded as it does not fulfill the challenge-response criteria.|
|IdenticalImages||The sample has been discarded as it is identical to a previous one.|
|UnsuitableImage||The face is not fully visible in the image.|
|UnnaturalMotionDetected||The 3D detector observed some unnatural motion.|