From d4c022f1014700c93dae5ee8b9a415dd4a14de10 Mon Sep 17 00:00:00 2001 From: Mitchell Clark Date: Sat, 5 Oct 2024 15:32:59 +1000 Subject: [PATCH] feat: made registration more robust by checking images match --- client/models/face_recognition/recognition.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/client/models/face_recognition/recognition.py b/client/models/face_recognition/recognition.py index c55c7f3..043f8a3 100644 --- a/client/models/face_recognition/recognition.py +++ b/client/models/face_recognition/recognition.py @@ -67,6 +67,11 @@ def register_faces(user_id: int, faces: list[np.ndarray]) -> int: face_embedding = all_faces_embed[0] face_embeddings.append(face_embedding) + # Ensure that all images contain the same face + matches = face_recognition.compare_faces(face_embeddings[1:], face_embeddings[0]) + if not all(matches): + return Status.TOO_MANY_FACES.value + register_face_embeddings(user_id, face_embeddings) return Status.OK.value