• Aucun résultat trouvé

4.3 Gestion de données globales

4.3.2 Suivi de personnes par plusieurs caméras

Disposer d’un système de plusieurs caméras signifie avoir plusieurs trajectoires générées par

la même personne. Le défi est de produire une seule trajectoire. Ce sujet n’est pas nouveau et a

déjà été abordé par d’autres auteurs.

Dans le travail de Seer et al [SBR12] les auteurs utilisent un algorithme de minimisation de

la correspondance des trajectoires. Ils utilisent une méthode post-traitement faite hors-ligne à

la fin de l’acquisition des images. D’abord, les trajectoires sont projetées vers le même système

de coordonnées. Ensuite, ils utilisent l’algorithme hongrois [Mun57] à l’intérieur d’un processus

itératif pour associer le point (spatio-temporel) final d’une trajectoire au point initial d’une autre.

Dans chaque itération, on extrait les trajectoires associées, en respectant un seuil, du groupe de

trajectoires à traiter. De plus, le seuil est augmenté pour passer à l’itération suivante. Après le

processus itératif, les trajectoires associées sont sous-échantillonnées pour avoir une trajectoire

lissée. Malgré les bons résultats de cette méthode hors ligne et itérative, on trouve qu’elle ne

s’adapte pas à notre contrainte d’évolutivité, aux ressources de calculs limitées et aux besoins

d’autonomie du système. Donc, on a besoin de trouver un processus capable de respecter ces

contraintes.

Dans cette thèse, nous avons fait le choix de traiter le problème du suivi des personnes dans

un système multi-caméras, d’une part en temps-réel (agent de comptage) et d’autre part avec

une approche de gestion des étiquettes centralisées (superviseur). Pour ce faire, on traite d’abord

localement le suivi de la manière décrite dans le chapitre 3. On obtient une liste deHFD avec

ses positions dans le repère local de la caméra. Ensuite, en utilisant la calibration décrite dans

la section précédente, on transforme les positions locales en positions globales dans un repère

global commun. Le calcul de la position globale est fait localement, mais l’étiquetage est géré par

le système d’identification globale, par le superviseur. Quand une personne entre pour première

fois dans le champ de vision d’une caméra, cette caméra esten charge du suivide la personne

et demande une étiquette au superviseur. En conséquence, les coordonnées de cette personne

correspondent à l’information générée par la caméraen chargealors que l’étiquette est fournie

par le superviseur.

Dès qu’une personne s’approche du bord du champ de vision de la caméra, on évalue s’il existe

une caméra voisine qui surveille cette frontière. Dans ce cas, on informe les caméras voisines qui

ont une frontière en commun de la même manière que celle de [DSE

+

13]. Ensuite, on envoie

leHFD de la personne dont les coordonnées sont ramenées au repère global. Une fois que la

caméra voisine reçoit leHFD, on minimise la distance d

HFD

(section3.2.1) entre leHFDreçu et

les détections actuelles de la caméra voisine en calculant la meilleure correspondance. Quand la

personne arrive à la limite de l’image de la caméra en charge, qui se trouve dans leFoVde l’autre

caméra, on transfère la gestion de la personne à la deuxième caméra. On appelle ce processus de

transfert de gestion des personnes « handover » [FBBS06].

De plus, la caméra en charge envoie à chaque détection la position globale de la personne

traquée. De cette manière, on trouve dans le serveur la trajectoire complète des personnes, en

évitant les processus hors-ligne et en produisant une trajectoire globale en temps-réel.

4.4 Conclusions

Pour assurer une évolutivité de notre solution, nous avons utilisé un réseau distribué et

extensible, capable de réaliser le suivi des personnes dans des grands espaces. Pour satisfaire

les objectifs définis et les contraintes industrielles, nous avons exploité notre développement

d’une caméra intelligente autonome, pour construire un réseau distribué de caméras intelligentes,

en répartissant l’observation d’un grand espace sur différents nœuds (caméras intelligentes) de

manière collaborative.

Dans l’architecture présente, la caméra intelligente a la charge de l’acquisition des données, du

suivi de personnes, du partage des informations et de la couche applicative (fonction comptage).

L’entité identifiée comme serveur traite et analyse les données globales d’un haut niveau de

description produites par les caméras.

Pour lever les verrous technologiques, nous avons utilisé la calibration extrinsèque entre

caméras pour construire un système de coordonnées globales (SCG) utilisé comme repère global

pour le suivi de personnes et la création des trajectoires globales dans le temps. De plus, nous

avons mis en place un système d’identification globale SIG qui permet d’affecter un identifiant

unique à chaque personne suivie dans l’espace couvert par toutes les caméras du système.

Nous avons défini quatre niveaux de description d’information qui commencent par des

données brutes acquises par les capteurs, qui subissent des transformations d’un niveau à l’autre

pour produire des informations plus compactes et plus riches, c’est-à-dire en contenant plus

d’informations abstraites liées aux personnes suivies. Le dernier niveau de description est traité

dans le chapitre suivant et concerne le comportement des personnes suivies par le réseau des

caméras que nous avons mis en œuvre.

Dans ce chapitre, nous avons contribué : à l’évolutivité, à la facilité d’installation, à l’adaptation

et à l’autonomie de notre système, par rapport aux objectifs proposés dans l’introduction.

Analyse de comportement des personnes

en mouvement

Sommaire

5.1 Contexte de l’analyse comportementale . . . 112

5.1.1 Sciences comportementales . . . 112