Similarity Score and Search Options

This page describes the facial recognition output scores of AnySee.

In AnySee, facial recognition results are returned only in a quantitative value instead of a qualitative result. We also offer extra search options to help you filter your search results.


Similarity score

The Search API and the Compare API will return a similarityScore reflecting the probability of two entities belonging to the same physical personnel if the request is successful. The similarityScore is a float number ranging from 0.0 to 1.0.

Different image formats, angles, lighting conditions, etc., might affect the similarity score. Even if you compare two identical images, the output is not necessarily 1.0. Also, due to slight differences in the handling logic of the search and the compare API, the similarity scores of the same image sets might not be identical, although very close.

All items returned in the search API's entitiesFound field are in the descending order of similarity scores. Feel comfortable using the first item as the most similar entity found.


Threshold

The threshold field is an option to filter out returning results with low similarity scores in the search API. However, the threshold option is not provided in the compare API. We highly recommend determining your customized threshold value to compare with the similarity score and judge the qualitative result of the face recognition. This logic should be implemented into your system.

Depending on the threshold, the result of face recognition might be different. For example, suppose the threshold value is set to 0.99, and the similarity score is 0.98. The hypothesis of the two faces being the same person is rejected since 0.98 < 0.99, even though the similarity score is relatively high. On the contrary, if the threshold is set to 0.95, we can accept the same hypothesis since 0.98 >= 0.95. The threshold setting is a trade-off between the false acceptance rate (FAR) and the false rejection rate (FRR). The higher the threshold, the more likely a false rejection and the less likely a false acceptance would happen.

Different businesses have different use scenes and different demands on face recognition accuracy. For the current model JCV_FACE_K25000, we suggest using a threshold from 0.90 to 0.95. Please refer to the response in the GET /models endpoint for other models.


MaxEntities

The maxEntities field in the search API limits the number of entities to return. By default, it is set to 1, where only the entity with the highest similarity score will be returned. You can set this limit up to 1000, but the threshold also limits the actual number of entities. Utilize this option if you allow storing multiple face entities belonging to the same person.