• Aucun résultat trouvé

Architectures de fusion, généralités

1.3 Fusion en suivi d’objet

1.3.1 Architectures de fusion, généralités

Il existe différents types d’architectures de fusion.

Architecture centralisée ou décentralisée Le domaine de la fusion de l’information dis-tingue deux types d’architectures de fonctionnement : centralisées et décentralisées [Xiong et Svensson, 2002, Salahshoor et al., 2008], voir la figure 1.12.

Dans une architecture centralisée, une série de capteurs réalisent en parallèle des mesures sur une image It, chaque capteur i renvoyant une mesure Yti à l’instant t. Une mesure correspondrait par exemple à un type de caractéristiques extraites de l’image (histogramme de couleurs, HOG, caractéristiques de Haar). Ces mesures sont envoyées vers une unité de fusion qui exploite les corrélations entre ces mesures et estime la position de l’objet ˆXt, voir la figure 1.12a.

Dans une architecture décentralisée, chaque mesure est envoyée vers un estimateur local qui estime la position de l’objet ˆXti. Ces estimations de position sont ensuite envoyées vers une unité de fusion pour être combinées et donner une estimation améliorée de la position de l’objet ˆXt, voir la figure 1.12b. Les estimations sont parfois accompagnées d’un indicateur de qualité ou de confiance les caractérisant.

On peut faire l’analogie entre les domaines de la fusion de l’information et de la fusion en suivi d’objet. La fusion en suivi d’objet a été traitée dans la littérature, soit comme le contrôle et la sélection de modèles (apparence, mouvement) dans la chaîne de traitements, soit comme la combinaison des entrées et sorties de différents modules de traitement (trackers ou détecteurs d’objet). Ce qui joue le rôle d’un capteur est un extracteur de caractéristiques images, qui de plus est contrôlable. Une architecture centralisée en fusion de l’information correspondrait à une fusion de modèles en suivi d’objet (section 1.3.2) où chaque modèle est un capteur différent mesurant l’environnement. Une architecture décentralisée correspondrait à une fusion de traitements ou modules (section 1.3.3), où chaque module (par exemple un tracker) réalise à la fois l’extraction de caractéristiques et l’estimation de position de l’objet.

Architecture parallèle ou en cascade Dans une fusion de modèles (fusion centralisée), la question d’exécuter les modèles simultanément ou séquentiellement ne se pose pas : il faut seulement que les mesures {Yti}i soient conjointement traitées par l’unité de fusion.

Mais dans une fusion de modules (fusion décentralisée), cette perspective peut être abordée : les traitements peuvent être exécutés selon deux types d’architectures fonctionnelles, en parallèle ou en cascade (séquentiel). Prenons comme exemple les schémas de fusion proposés par [Stenger

et al., 2009] (figure 1.13). Le schéma de fusion parallèle de la figure 1.13a est un schéma classique

où n trackers sont exécutés en parallèle et le tracker ayant l’erreur de prédiction estimée la plus faible est sélectionné. Dans ce cas précis, les trackers fournissent à la fois une estimation de position mais aussi une évaluation de confiance binaire (0 ou 1). Dans la fusion en cascade de la figure 1.13b, les trackers sont exécutés successivement, le tracker suivant n’est exécuté que

Capteur 1 Capteur 2 Capteur N Fusion 𝑋𝑋�𝑡𝑡 𝐼𝐼𝑡𝑡 𝑌𝑌𝑡𝑡2 𝑌𝑌𝑡𝑡1 𝑌𝑌𝑡𝑡𝑁𝑁

(a) Architecture centralisée

Estimateur 1 𝑋𝑋�𝑡𝑡2 𝑋𝑋�𝑡𝑡1 Estimateur 2 Estimateur N 𝑋𝑋�𝑡𝑡𝑁𝑁 Fusion 𝑋𝑋�𝑡𝑡 Capteur 1 Capteur 2 Capteur N 𝐼𝐼𝑡𝑡 𝑌𝑌𝑡𝑡2 𝑌𝑌𝑡𝑡1 𝑌𝑌𝑡𝑡𝑁𝑁 (b) Architecture décentralisée

Figure 1.12 – Architecture de fusion centralisée (a) et décentralisée (b). Une série de N capteurs parallèles réalisent un ensemble de mesures {Yti}N

i=1 à partir de l’image d’entrée It à l’instant

t. (a) Dans l’architecture centralisée, les mesures sont envoyées vers une unité de fusion pour

estimer directement la position de l’objet ˆXt. (b) Dans l’architecture décentralisée, les mesures sont envoyées vers des estimateurs qui estiment la position de l’objet { ˆXti}N

i=1. Une unité de fusion combine ces estimations pour estimer une seule position de l’objet ˆXt.

(a) Architecture parallèle

(b) Architecture en cascade

Figure 1.13 – Schémas de fusion décentralisée de [Stenger et al., 2009] combinant n trackers et un détecteur de mains et de visages, entraîné hors ligne. (a) Les n trackers sont exécutés en parallèle. L’état de la cible, position ˆxk

t, à l’instant t, est la prédiction du tracker dont l’erreur de prédiction estimée est la plus faible. (b) Les n trackers sont exécutés en cascade. Le tracker suivant n’est exécuté que lorsque l’erreur de prédiction estimée du tracker courant est supérieure à un certain seuil. Le détecteur sert à réinitialiser les trackers lorsque leur erreur de prédiction estimée est trop importante. [Stenger et al., 2009]

lorsque le tracker courant n’est pas en mesure de fournir une prédiction correcte (une erreur de prédiction est estimée). La position de l’objet correspond alors à la prédiction réalisée par le dernier tracker exécuté. L’avantage d’une telle architecture est de pouvoir réduire les coûts de calculs en exécutant le moins de trackers possible. En revanche, ce type d’architecture est souvent difficile à configurer et est de plus, sensible aux échecs individuels des trackers de par leur dépendance en chaîne.

Fusion en boucle ouverte ou fermée Un aspect particulier de la fusion de modules concerne l’interaction entre les traitements. On distingue deux approches que nous avons appelées, fusion en boucle ouverte et fusion en boucle fermée. [Bailer et al., 2014] parlent également de fusion passive et de fusion active. Dans une fusion « en boucle ouverte », les traitements (trackers, détecteurs) ont leur propre mécanisme de mise à jour de leur modèle et fonctionnent indépendamment les uns des autres, i.e. ils n’interagissent pas entre eux. La fusion est alors simplement la combinaison de leurs prédictions individuelles. Lorsqu’un tracker dérive, il ne peut récupérer la cible ou alors, seulement par hasard, en croisant la trajectoire de la cible. En effet, la récupération de la cible est difficile, d’une part, parce qu’elle est en dehors de la fenêtre de recherche utilisée pour les prédictions futures, et d’autre part, parce que le modèle a dérivé et donc n’est plus capable de reconnaître correctement la cible du fond. Par conséquent, la fusion doit identifier les prédictions

incorrectes pour les éliminer avant de les combiner. Puisqu’aucune interaction n’a lieu, un tracker ayant dérivé ne peut être corrigé (en position et en modèle) par un autre tracker ou détecteur fonctionnel afin de lui permettre de se raccrocher à la cible.

La deuxième approche, fusion « en boucle fermée », favorise l’interaction entre les trackers et détecteurs. Une des motivations est de pouvoir corriger les dérives des trackers en s’appuyant sur les autres trackers ou détecteurs, par exemple en contrôlant la mise à jour et la réinitialisation des modèles ou en contrôlant la fenêtre de recherche.

Dans les deux approches, un étape clé est d’identifier les bonnes prédictions des mauvaises pour pouvoir les sélectionner avant fusion et/ou d’identifier les mauvais trackers des bons pour pouvoir les corriger. Il est nécessaire alors de concevoir un mécanisme d’évaluation capable d’évaluer le bon fonctionnement de chacun des traitements.

Sélection en ligne des modèles ou modules Comme abordé précédemment, lorsqu’un système met en compétition plusieurs modèles ou modules, trouver des méthodes pour évaluer en ligne et sélectionner les modèles ou modules qui conviennent le mieux à un instant donné est nécessaire. La plupart des approches de fusion disposent d’une telle capacité comme nous pourrons le voir dans les sections 1.3.2 et 1.3.3.