Closed pourfard closed 1 year ago
I wouldn't use a face recognition system for biometrics if it works with flat images. Apple "Face ID" and "Windows Hello" use depth cameras.
If there are 512-D feature vectors of several faces, then we may create a cluster for each face. If we get a new feature vector, we may compute a distance to the centers of clusters. If the new feature vector is close enough to one of them, then it belongs to it, otherwise, we create a new cluster or reject the feature vector as unknown. If it's close enough to more than one center - something is wrong - a network trained with ArcFace should discourage such embeddings.
Correct me if I'm wrong.
I think depth image is mostly used for liveness or spoof detection, if not so, what are the applications of 2d face recognition models such as insight face or facenet?
@pourfard
Would like to know how you chose threshold further and what conclusions you made for real-time application
It really depends, but for verification I used 0.85 cinsidering distance of two embeddings as the measure meaning if the distance of two embeddings is less than this value I verify them. For identification I used similarity measure and for most of the applications 80% is good enough meaning if two persoms are 80% similar to each other, they are the same.
In some papers for example facenet, the authors have used 1.24 as the threshold. This threshold depends on the verification dataset.
I understand seems I'll need to gather data and measure ideal threshold value for best performance
Thanks for sharing
Hi,
I'm am trying to use face biometrics to identify peoples. I have a few questions:
1- How can we use multiple images of a person to better identification?
2- What is the best threshold for identification. I mean how should I choose a threshold for similarity to get a 95% accuracy. If I set it 0.6 False-Positive rate is high (false person is accepted) and when it is 0.8 False-Negative rate is high (true person is rejected). I know that it depends on application, but after trying different thresholds in different places, with different peoples, cameras, and hardware resource (different frame rated) I still cannot get a fix number for my application which is using face biometrics for access control with a 95% accuracy.