Ré-identification
En plus de détecter des personnes sur les caméras, dans le cadre du tracking inter-caméra, il peut être utile de pouvoir identifier la même personne depuis 2 caméras. Une méthode pour le faire est de calculer la position de la personne dans l'espace (voir la partie Utilisation de la 3D), mais cela implique une certaine préparation à l'avance. Une autre méthode est d'utiliser des réseaux de neurones de ré-identification pour reconnaître les personnes sur les différentes caméras.
Un réseau de neurones de ré-identification va prendre une image en entrée, et sortir un vecteur qui décrit les caractéristiques de ce qu'il est entraîné pour ré-identifier. Ce vecteur n'est pas interprétable en tant que tel, mais est utilisé en calculant la "distance" (par exemple avec la distance euclidienne) ou la "proximité" (par exemple avec la Similarité cosinus) à un autre vecteur produit par le même réseau, pour déterminer si l'entité reconnue est la même on non.
Dans ce projet, pour chaque image sur laquelle des personnes sont reconnues, on va envoyer au réseau de neurones l'image rognée de la personne, qui va calculer son vecteur de ré-identification. Ce vecteur est stocké dans le tracker avec les autres données de la personne, et peut être transmis à d'autres caméras par l'intermédiaire d'une API pour que les autres caméras puisse identifier si la personne est connue sur les autres caméras ou non.