• Aucun résultat trouvé

Recherche des indicateurs de comportement

4.4 Évaluation des prédicteurs de dérives par apprentissage des indicateurs de com-

4.4.1 Recherche des indicateurs de comportement

Nous cherchons à extraire des indicateurs de comportement à partir des cartes de scores des trackers. Pour la plupart des trackers du répertoire, cette manœuvre est possible. Nous modifions les trackers afin de pouvoir accéder à cette carte de scores lorsque leur structure algorithmique le permet. NCC, CT, STRUCK, DSST et MS disposent naturellement d’une telle carte. Celle-ci est de forme rectangulaire ou circulaire, de taille fixe ou fonction des dimensions de l’objet suivi (w, h). Cependant pour NCC, les indicateurs extraits de la carte n’ayant pas donné de résultats

satisfaisants, nous avons utilisé d’autres indicateurs. Les trackers restants KLT, DPM et ASMS ne disposent pas naturellement d’une carte de scores. Pour KLT, nous avons pu déduire facilement une carte de scores à partir de son fonctionnement. DPM ne fournit pas de cartes de détection denses puisque seules les détections dont le score est supérieur à un certain seuil de détection sont retenues, nous avons donc calculé des indicateurs à partir des détections éparses. Du fait de la complexité de fonctionnement d’ASMS intégrant une recherche d’échelle, nous avons calculé des indicateurs simples.

Nous distinguons donc deux catégories de trackers :

— KLT, CT, STRUCK, DSST et MS calculant des indicateurs de comportement à partir de leur carte de scores,

— NCC, DPM et ASMS utilisant d’autres indicateurs.

Les indicateurs de comportement calculés pour chaque tracker sont détaillés ci-dessous et leurs évolutions sur certaines séquences de VOT2013+ sont illustrées dans la figure 4.9 :

NCC A chaque instant t, la localisation de l’objet par NCC correspond à un score maximal sur la carte. Notons max(t) sa valeur et (xmax(t), ymax(t)) ses coordonnées.

Trois indicateurs sont utilisés :

— Les écarts de position entre t et t − 1, normalisés respectivement par la largeur w et la hauteur h de l’objet :

∆xmax= |xmax(t) − xmax(t − 1)|

w , ∆ymax =

|ymax(t) − ymax(t − 1)|

h

— L’écart de score relatif entre t et t − 1 :

∆max = −max(t) − max(t − 1) max(t − 1)

Une diminution importante du taux de recouvrement IoU correspond à des valeurs élevées de ∆xmax ou ∆ymax ou ∆max comme illustré dans la figure 4.9a aux instants t = 100, 150, 220, 270. Cependant, la première dérive a lieu brusquement à t = 40 mais aucun des indicateurs n’indique une quelconque dérive. De même pour le taux de recouvrement qui est resté constant de t = 0 − 40.

KLT KLT effectue le suivi d’un ensemble de points de l’image I(t − 1) à l’image I(t). La carte de scores calculée est une carte locale de taille (81, 81), centrée sur la position de l’objet à t − 1. Pour chaque position (x, y) de la carte, nous définissons une fenêtre locale de même dimension que l’objet et comptons le nombre de points appariés issus du suivi dans cette fenêtre. La position comptant le maximum de points appariés correspond à la position actuelle de l’objet. Les valeurs de la carte sont ensuite normalisées à 255. L’ensemble des scores de la carte est noté

centre de R200, obtenu en moyennant les positions de R200 à l’instant t. Définissons également la région R0 = {(x, y) ∈ C | c(x, y) > 0}.

Trois indicateurs sont calculés à partir de la carte :

— Les écarts de position entre t et t − 1, normalisés respectivement par la largeur w et la hauteur h de l’objet :

∆xc= xc(t) − xc(t − 1)

w , ∆yc=

yc(t) − yc(t − 1)

h

— La variation de taille de R200 entre l’instant t et l’instant initial t0 (première image ou réinitialisation) :

∆spotsize = spotsize(t) − spotsize(t0)

où spotsize(t) = Card(R200(t))

Card(R0(t)) et Card est le cardinal de l’ensemble.

Une valeur importante de l’un des indicateurs semble indiquer un mauvais fonctionnement du tracker, comme illustré dans la figure 4.9b : KLT dérive pour des valeurs élevées de ∆xcet ∆yc à t = 200, et pour des valeurs élevées de ∆xc et ∆spotsize à t = 330 et t = 510. Cependant, ce n’est pas toujours systématique, par exemple à t = 230, KLT dérive pour des valeurs faibles d’indicateurs.

CT La carte de scores correspondante est une carte locale de même dimension que l’objet (w, h) dont les valeurs sont des sommes de rapports de log-vraisemblance objet-fond. L’ensemble des scores de la carte est noté C = {c(x, y)} où (x, y) parcourt les positions de la carte. Notons max(t) et min(t) les valeurs maximale et minimale de la carte à l’instant t, pouvant être négatives. Notons l’ensemble A(t) = {(x, y) ∈ C | c(x, y) > thr(t)} où thr(t) = max(t) − 0.1 ∗ (max(t) − min(t)).

A est constituée de scores élevés regroupés autour de la position de l’objet.

Un seul indicateur est utilisé à partir de cette carte, et mesure la variation en taille de A entre les instants t − 1 et t :

∆area = Card(A(t)) − Card(A(t − 1)) Card(A(t − 1))

Une anomalie de comportement est détectée lorsqu’une variation temporelle de la taille de la région A (représentée par ∆area) est importante comme illustré sur la figure 4.9c. Une diminution ou augmentation du taux de recouvrement (courbe rouge) est souvent accompagnée d’un pic de ∆area : t = 50, 110, 200, 240, 410. Ces pics ne correspondent pas exactement aux moments de dérive mais ont lieu quelques temps avant (quelques images à une dizaine d’image). Il existe des cas où un pic de ∆area ne produit pas de dérive, par exemple à t = 140, 360.

STRUCK STRUCK calcule une carte de scores locale centrée sur la prédiction précédente, de rayon r = 30 pixels. Les scores sont des scores de classification par SVM dont les valeurs varient autour de -1 et 1. Notons (xmax(t), ymax(t)) les coordonnées du score maximal de la carte

à l’instant t. Notons Z l’ensemble constitué des 10 premiers maxima de la carte de scores de coordonnées en (X, Y ). X est le vecteur des coordonnées en x des 10 premiers maxima de la carte et Y est le vecteur de coordonnées en y.

Deux indicateurs ont été utilisés pour détecter les changements de comportement de la carte : — La variance spatiale des 10 premiers maxima de la carte à l’instant t normalisée par le

minimum de (w, h) :

var10= p

V ar(X)2+ V ar(Y )2

min(w, h)

où V ar est la variance.

— L’amplitude de déplacement du score maximale entre les instants t et t − 1 normalisée par le minimum de (w, h) :

d =

q

(xmax(t) − xmax(t − 1))2+ (ymax(t) − ymax(t − 1))2

min(w, h)

Les dérives aux variations importantes du taux de recouvrement (courbe rouge) correspondent à des valeurs élevées de l’un des indicateurs var10 ou d comme le montre la figure 4.9d aux instants t = 5, 20, 30, 125, 135. Cependant, une valeur élevée ne correspond pas toujours à une dérive comme c’est le cas à t = 245 Entre t = 50 − 100 et t = 150 − 250, on remarque beaucoup de pics de var10 et/ou de d. Ces pics ne correspondant pas à des dérives réelles du tracker peuvent alors être considérés comme des fausses alarmes.

DPM DPM fournit des détections éparses dont les scores dépassent un seuil minimal défini par le modèle d’objet issu d’un pré-entraînement.

A partir de ces détections, deux indicateurs sont calculés :

— La différence de scores entre les deux meilleures détections best1 et best2 :

dbest= score(best1) − score(best2)

où best1 est la détection de score maximal et dont le recouvrement avec la localisation de la cible à l’instant t − 1 est supérieur à 0.3, best2 est la détection ayant le meilleur score après best1.

— La valeur de recouvrement IoU (intersection sur l’union) entre ces deux meilleures détec-tions :

obest= IoU (best1, best2)

DSST La carte de scores correspond à la réponse du filtre calculé sur une fenêtre de taille (w2, h2) centrée sur la position de l’objet à l’instant précédent t − 1, où (w2, h2) = (w1,h1)2∗scale, (w1, h1) = 2.6 ∗ (w, h) et scale = max(w1, h1)/100.

Un indicateur de dérive est calculé sur cette carte, il consiste à mesurer l’intensité du signal par rapport au bruit et appelé « Peak to Sidelobe Ratio (PSR) » [Bolme et al., 2010] :

P SR = P eak − µφ σφ

où P eak est l’intensité maximale de la carte, µφ et σφ sont la moyenne et l’écart-type des intensités calculées sur la couronne extérieure à une fenêtre (3, 3) autour du maximum.

Les dérives semblent correspondre à des valeurs faibles de PSR (inférieures à 10), visibles aux instants t = 50, 130 de la figure 4.9e, sauf exception à t = 95 où il n’y a pas de dérive.

MS MS génère une carte de rétroprojection de l’histogramme de l’image et dont les valeurs sont comprises entre [0, 255].

Un indicateur calculé est :

ratioF B = maxF − µB

σB

où maxF est le score maximal de la région de taille (w, h) centrée sur la prédiction actuelle. Autour de cette première région-cible, on définit une région d’arrière-plan proche, externe à la première, de taille 3 ∗ (w, h) et on calcule sa moyenne µB et son écart-type σB.

ASMS Deux indicateurs sont calculés correspondant aux coefficients de Bhattacharyya [Kailath, 1967], notés ρ(m, f ) et ρ(m, b) : ρ(m, f ) = p X u=1 p mu∗ fu, ρ(m, b) = p X u=1 p mu∗ bu

où ρ(m, f ) correspond au coefficient de Bhattacharyya de m et f , et ρ(m, b) à celui de m et b. m = {mu}pu=1est l’histogramme à p classes du modèle d’objet correspondant à la vérité terrain à la première image. f = {fu}pu=1 est l’histogramme de la prédiction à l’instant t. b = {bu}pu=1 est l’histogramme de l’arrière-plan au voisinage proche de la prédiction à l’instant t.

Les dérives correspondent à des valeurs faibles de ρ(m, f ) ou ρ(m, b), comme c’est le cas aux instants t = 80, 140 de la figure 4.9f. A t = 140, ρ(m, f ) présente une valeur élevée tandis que

ρ(m, b) une valeur faible. Ces deux indicateurs sont complémentaires et décorrélés.

La prédiction de dérive à partir des indicateurs construits est donc possible mais présente tout de même des difficultés comme nous avons pu le voir (figure 4.9). Premièrement, la valeur de recouvrement mesurée IoU et les indicateurs ne sont pas directement corrélés bien qu’ils soient liés. En effet, le comportement du modèle est complexe d’interprétation et ne peut donc se résumer à la simple valeur de recouvrement. C’est pourquoi, il peut se passer un laps de temps plus ou moins long entre le changement de comportement d’un indicateur (pic d’intensité) et la dérive absolue du tracker (par exemple, à t = 100 dans la figure 4.9a).

Deuxièmement, les indicateurs de comportement ne sont pas toujours faciles d’interprétation, des ruptures de comportement (pics d’intensité) peuvent avoir lieu sans pour autant aboutir à une dérive, il s’agit alors de fausses alarmes (figure 4.9d entre t = 150 − 250). De même, des non-détections peuvent avoir lieu, ce qui peut s’expliquer de deux manières : soit les indicateurs trouvés ne décrivent pas suffisamment bien le comportement du modèle, soit les scores de prédiction sur lesquels sont basés les indicateurs ne sont pas suffisants pour décrire l’état du tracker.

Enfin, la capacité des indicateurs à bien prédire les dérives dépend des seuils choisis. Il est donc nécessaire d’évaluer leur performance sur une base pour pouvoir les régler. C’est l’objet de la section suivante.

50 100 150 200 250 0 0.5 1 time NCC bicycle 50 100 150 200 250 0 0.5 1 time 50 100 150 200 250 0 0.5 time 50 100 150 200 250 −0.5 0 0.5 time (a) NCC bicycle 50 100 150 200 250 300 350 400 450 500 550 0 0.5 1 time KLT woman 50 100 150 200 250 300 350 400 450 500 550 0 0.5 1 time 50 100 150 200 250 300 350 400 450 500 550 0 0.2 0.4 time 50 100 150 200 250 300 350 400 450 500 550 0 2 4 time (b) KLT woman

50 100 150 200 250 300 350 400 450 500 550 0 0.2 0.4 0.6 0.8 1 time CT woman 50 100 150 200 250 300 350 400 450 500 550 −1 −0.5 0 0.5 1 1.5 2 time (c) CT woman 50 100 150 200 250 300 350 0 0.5 1 time STRUCK bolt 50 100 150 200 250 300 350 0 0.5 1 time 50 100 150 200 250 300 350 0 0.5 1 1.5 2 time (d) STRUCK bolt

20 40 60 80 100 120 140 0 0.2 0.4 0.6 0.8 1 time DSST kitti_cyclist 20 40 60 80 100 120 140 0 10 20 30 40 50 60 time (e) DSST kitti_cyclist 50 100 150 200 250 300 350 400 450 500 550 0 0.5 1 time ASMS woman 50 100 150 200 250 300 350 400 450 500 550 0 0.5 1 time 50 100 150 200 250 300 350 400 450 500 550 0 0.5 1 time (f) ASMS woman

Figure 4.9 – Évolution des indicateurs de comportements des trackers NCC (a), KLT (b), CT (c), STRUCK (d), DSST (e) et ASMS (f) dans différentes séquences de VOT2013+.