1 to 1 Face Recognition¶
- SDK.get_face_feature_vector(*args, **kwargs)¶
Overloaded function.
get_face_feature_vector(self: tfsdk.SDK, aligned_face_image: tfsdk.TFFacechip) -> Tuple[tfsdk.ERRORCODE, tfsdk.Faceprint]
Return the corresponding feature vector for the given aligned face image.
- Parameters
tf_facechip - the
tfsdk.TFFacechip
representing the aligned face chip. Face chip must have size of 112x112 pixels, therefore use the default margin and scale parameters when callingtfsdk.SDK.extract_aligned_face()
.- Returns
The
ERRORCODE
andtfsdk.Faceprint
, in that order.
get_face_feature_vector(self: tfsdk.SDK, face_box_and_landmarks: tfsdk.TFImage, tf_image: tfsdk.FaceBoxAndLandmarks) -> Tuple[tfsdk.ERRORCODE, tfsdk.Faceprint]
Extract the face feature vector from the face box.
- Parameters
tf_image - the input
tfsdk.TFImage
, returned bytfsdk.SDK.preprocess_image()
.face_box_and_landmarks - face box and landmarks returned by
tfsdk.SDK.detect_faces()
ortfsdk.SDK.detect_largest_face()
.
- Returns
The
ERRORCODE
andtfsdk.Faceprint
, in that order.
- SDK.get_face_feature_vectors(self: tfsdk.SDK, aligned_face_images: List[tfsdk.TFFacechip]) → Tuple[tfsdk.ERRORCODE, List[tfsdk.Faceprint]]¶
Extract the face feature vectors from the aligned face images. This batch processing method increases throughput when using GPU inference.
- Parameters
tf_facechips - a list of
tfsdk.TFFacechips
.- Returns
The
ERRORCODE
and a list oftfsdk.Faceprint
, in that order.
- SDK.get_largest_face_feature_vector(self: tfsdk.SDK, tf_image: tfsdk.TFImage) → Tuple[tfsdk.ERRORCODE, tfsdk.Faceprint, bool]¶
Detect the largest face in the image and return the corresponding feature vector.
- Parameters
tf_image - the input
tfsdk.TFImage
, returned bytfsdk.SDK.preprocess_image()
. :Returns:The
ERRORCODE
,tfsdk.Faceprint
, and a bool indicating if a face was detected, in that order. If not face was detected in the image, the Faceprint will be empty.
- static SDK.faceprint_to_json(faceprint: tfsdk.Faceprint) → str¶
Convert a
tfsdk.Faceprint
into a json string.- Parameters
faceprint – the
tfsdk.Faceprint
to convert to a string.- Returns
The string representation of the
tfsdk.Faceprint
.
- static SDK.json_to_faceprint(json_string: str) → Tuple[tfsdk.ERRORCODE, tfsdk.Faceprint]¶
Create a
tfsdk.Faceprint
from a json string.- Parameters
json_string – the json string representation of a
tfsdk.Faceprint
, generated from thetfsdk.SDK.json_to_faceprint()
function.- Returns
The
tfsdk.Faceprint
generated from the json string.
- SDK.get_similarity(self: tfsdk.SDK, feature_vector_1: tfsdk.Faceprint, feature_vector_2: tfsdk.Faceprint) → Tuple[tfsdk.ERRORCODE, float, float]¶
Compute the similarity of the given feature vectors.
- Parameters
feature_vector_1 – the first Faceprint to be compared.
feature_vector_2 – the second Faceprint to be compared.
- Returns
The
ERRORCODE
, match probability and similairty score, in that order. The match probability is the probability that the two faces feature vectors are a match, while the similairty is the computed similairty score.
- SDK.estimate_face_image_quality(self: tfsdk.SDK, aligned_face_image: tfsdk.TFFacechip) → Tuple[tfsdk.ERRORCODE, float]¶
Estimate the image quality for face recognition.
- Parameters
tf_facechip - the
tfsdk.TFFacechip
returned bytfsdk.SDK.extract_aligned_face()
.- Returns
The
ERRORCODE
and face quality score, in that order. The quality score is between 0 and 1, 1 being perfect quality. We suggest using a threshold of 0.999 as a filter for enrollment images.
- class tfsdk.Faceprint¶
- compare(self: tfsdk.Faceprint, fp: tfsdk.Faceprint) → Tuple[tfsdk.ERRORCODE, float, float]¶
Compare the similarity between two
tfsdk.Faceprint
. The same astfsdk.SDK.get_similairty()
.- Parameters
fp - the
tfsdk.Faceprint
to compare against.- Returns
The
ERRORCODE
, match probability, and similarity score, in that order.
- property feature_vector¶
Vector of floats which describe the face.
- get_quantized_vector(self: tfsdk.Faceprint) → numpy.ndarray[numpy.int16]¶
Return the feature vector as a list of 16-bit integers. This is useful for when the
tfsdk.ModelOptions.fr_vector_compression
option is enabled and you require an integer representation of the quantized feature vector.- Returns
A 16-bit numpy array representation of the
tfsdk.Faceprint.feature_vector
.
- property model_name¶
Name of model used to generate feature vector.
- property model_options¶
Additional options used for generating the feature vector.
- property sdk_version¶
SDK version used to generate feature vector.
- set_quantized_vector(self: tfsdk.Faceprint, quantized_feature_vector: numpy.ndarray[numpy.int16]) → None¶
Populate the
tfsdk.Faceprint.feature_vector()
from a quantized 16-bit numpy array generated bytfsdk.Faceprint.get_quanitzed_vector()
- Parameters
quantized_feature_vector - the 16-bit numpy array feature vector.
- class tfsdk.ModelOptions¶
- property fr_vector_compression¶
Indicates if the
tfsdk.ConfigurationOptions.fr_vector_compression
option was enabled when generating the feature vector.