La dié-rence est principalement due au contenu de séquences de vidéos qui contienten même temps plusieurs problèmes de traitement de vidéos le changement de l'illumination, le contraste
Trang 1Une nouvelle approche d'évaluation pour les algorithmes d'interprétation automatique de
vidéos
Mémoire de n d'études Master d'Informatique
Etudiant : NGHIEM Anh-Tuan
Sous la direction de : Monique THONNAT
et François BREMOND
Institute de la francophonie pour l'informatique
Octobre 2006
Trang 2RésuméDans cette mémoire, nous présentons une nouvelle approche pour mieux éva-luer la performance de systèmes d'interprétation de vidéos Les méthodesd'évaluation courantes dépendent fortement d'une base de vidéos Le résultatd'évaluation peut être diérent si nous changeons la base de vidéos La dié-rence est principalement due au contenu de séquences de vidéos qui contient
en même temps plusieurs problèmes de traitement de vidéos (le changement
de l'illumination, le contraste faible etc) à diérents niveaux de diculté.Par conséquent, c'est dicile d'extrapoler le résultat d'évaluation sur desnouveaux séquences Dans cette mémoire nous proposons une méthodologied'évaluation qui aide à réutiliser le résultat d'évaluation Nous essayons d'iso-ler chaque problème et de dénir des mesures quantitatives pour calculer leniveau de diculté relativement au problème donné Le niveau maximum
de diculté auquel la performance d'un algorithme est assez bon est dénicomme la borne supérieure de la capacité de cet algorithme pour résoudre leproblème donné Pour illustrer cette méthodologie, nous présentons les me-sures qui évaluent la performance d'algorithmes en résoudre le problème decontraste faible et le problème des ombres
Trang 3Table des matières
1.1 Système d'interprétation de vidéos 1
1.1.1 Détection d'objets mobiles 1
1.1.2 Classication d'objets mobiles 2
1.1.3 Suivi d'objets 2
1.1.4 Reconnaissance des événements 2
1.2 Motivation 3
2 Etat de l'art 5 2.1 Travaux individuels 5
2.2 Workshops et Projets d'évaluation 5
3 ETISEO : un programme d'évaluation de système d'interpré-tation de vidéos 7 3.1 Objectifs 7
3.2 Méthodologie 7
3.3 Base de données 8
3.4 Limitations 9
3.5 Contribution à ETISEO 10
4 Approche proposée 11 4.1 Méthodologie 11
4.2 Détection des objets faiblement contrastés 12
4.2.1 Description de problème 12
4.2.2 Mesure d'un niveau de contraste d'un pixel 13
4.2.3 Mesure d'un niveau de contraste d'une bande 13
4.2.4 Mesure des niveaux de contraste d'un blob 15
4.2.5 Mesure de la capacité des algorithme pour résoudre le problème de détecter des objets faiblement contrastés 16 4.3 Manipulation des objets mélangés aux ombres 18
4.3.1 Problème de manipulation des ombres 18
Trang 44.3.2 Mesure de niveaux de contraste des ombres 18
4.3.3 Capacité des algorithmes en détectant des ombres 19
5 Expérimentation 20 5.1 Détection des objets faiblement contrastés 20
5.1.1 Sélection des séquences de vidéos 20
5.1.2 Résultat d'évaluation 21
5.2 Manipulation des objets mélangés aux ombres 28
5.2.1 Sélection des vidéos 28
5.2.2 Résultat d'évaluation 28
Trang 5Chapitre 1
Introduction
1.1 Système d'interprétation de vidéos
Aujourd'hui, les systèmes de vidéo surveillance deviennent très laires Normalement, ces systèmes sont contrôlés par des opérateurs humainspour détecter des événements dangereux ou inattendus comme un combat
popu-ou une blocage d'un passage Ppopu-ourtant, le travail de regarder aux plusieursécrans de plusieurs cameras est très dur pour les opérateurs parce qu'ilsdoivent concentrer pendant une période très longue Alors, on essaie de créerdes système d'interprétation automatique de vidéos qui facilitent le travaildes opérateurs humains Le but de ces système est de détecter automatique-ment des événements pré-dénis par des experts humains et d'envoyer unealarme aux opérateurs quand ils détectent un tel événement
Un système d'interprétation de vidéos se compose des modules suivants :détection des objets mobiles, classication des objets, suivi des objets, recon-naissance des événements
1.1.1 Détection d'objets mobiles
Ce module est pour but de détecter des objets comme les personnes, lesvoitures qui apparaissent dans la scène de surveillance Son entrée est la ux
de vidéo de la scène contenant des objets mobiles et sa sortie est les régionsqui correspondant à ces objets L'objectif de ce module est de déterminer desrégions qui ne couvrent que tous les pixels appartenant aux objets dans lascène Alors, le problème le plus dicile est de détecter des pixels des objetsqui sont très peu contrastés et en même temps éliminer des pixels de bruitcomme les ombres ou les régions ayant le changement de l'illumination
Trang 6Fig 1.1 Les taches principales d'une système d'interprétation de vidéos
1.1.2 Classication d'objets mobiles
L'objectif de ce module est de assigner les régions détectées par le module
de détection des objets à une catégorie pré-dénie comme une personne, unevoiture ou un groupe de personnes Ce module doit sourir la décience dumodule de détection comme le manque d'une partie d'une région correspon-dant à un objet ou la fausse inclusion de bruit etc De plus, il doit résoudre
le problème de la perte d'information à cause de la projection de l'espace 3Ddes objets au l'espace 2D de l'image
1.1.3 Suivi d'objets
Ce module est pour but de relier les régions du même objet dans desframes diérents pour avoir une trajectoire de mouvement de l'objet donné.Cette tâche n'est pas toujours facile parce qu'il y a des cas ó les modulesprécédents ne peuvent pas détecter des objets mobile dans quelques frames
En outre, il devient plus dicile dans des scène complexes ó il y a desocclusions comme le mur ou plusieurs personnes se croisent
1.1.4 Reconnaissance des événements
Son objectif est de reconnaỵtre des événements pré-dénis par des expertshumains Cette tâche est très dicile parce que la plupart d'événements réels
Trang 7sont très compliqués Par exemple, l'événement de vandalisme d'une machine
de café peut durent longtemps et impliquent plusieurs personnes et objets Deplus, parce que ce module est la dernier module d'un système d'interprétation
de vidéos, il doivent sourir de toutes les erreurs accumulés pendant tous lesmodules précédents
1.2 Motivation
Avec le développement des systèmes d'interprétation de vidéos, beaucoupd'algorithmes sont proposés et chacun est conçu pour résoudre les problèmesd'un type particulière de scène Par exemple, un algorithme peut bien gérer
le changement d'illumination d'une scène extérieure mais il a des diculté àdétecter des objets peu contrastés Alors, l'évaluation de performance poursélectionner les algorithmes convenables à une scène particulière devient trèsimportant
Normalement, pour faire évaluation, on collecte un ensemble de séquences
de vidéos ainsi que la vérité terrain illustrant les problèmes on veut tester
La performance d'un algorithme indique seulement comment bon il traitecet ensemble de séquences Bien qu'adopté par beaucoup de projets, cetteapproche contient deux limitations principales
Premièrement, le résultat d'évaluation dépend de l'ensemble particulier
de séquences de vidéos Autrement dit, il peut changer nettement avec unnouvel ensemble de séquences d'évaluation La raison est que chaque vidéoséquence contient plusieurs problèmes de traitement de vidéos à plusieursniveau de diculté et le résultat nal est aecté par tous ces facteurs Avec
la nouvelle séquence, on a une nouvelle combinaison de problèmes Ainsi, laperformance d'algorithmes sur cette séquence est imprévisible
Deuxièmement, un système d'interprétation de vidéos est habituellementconçu pour une condition spécique (une scène extérieure/intérieure, unescène contenant le changement rapide/lent d'illumination etc.) Pourtant, iln'y a aucune mesure quantitative de calculer le niveau de diculté d'uneséquence de vidéo relativement à un problème donné Par conséquent, nous
ne savons pas jusqu'à quel niveau de diculté d'un problème donné, unalgorithme peut avoir une performance acceptable
Cette mémoire propose une méthodologie d'évaluation qui aident à liser le résultat d'évaluation Nous essayons d'isoler chaque problème de trai-tement de vidéo et de dénir des mesures quantitatives pour calculer le niveau
réuti-de diculté d'une vidéo relativement au problème donné Le niveau mum de diculté des vidéos auquel l'algorithme a une performance assezbonne est déni comme la borne supérieure de la capacité d'algorithme pour
Trang 8maxi-manipuler le problème Pour illustrer cette méthodologie, nous présentonsles métriques qui évaluent la performance d'algorithmes relativement auxproblèmes de détecter des objets faiblement contrastés et de manipuler desombres.
Trang 9un survol plus complet des travaux d'évaluation des performances, voir [5].Néanmoins, ces travaux ont peu d'inuence sur la communauté de recherchesparce qu'ils ne constituent pas une plate-forme d'évaluation complet permet-tant d'évaluer des nouveaux algorithmes D'ailleurs, leur base de donnéesn'est pas assez grand pour avoir des résultats ables d'évaluation.
2.2 Workshops et Projets d'évaluation
Pour répondre au besoin d'avoir une base de vidéos annotés disponible
au publique, on a créé plusieurs projets (CAVIAR [7]) et workshops (PETS[6]) d'évaluation Ces programmes de recherche fournissent les séquences devidéos à plusieurs niveaux de diculté ainsi que la vérité terrain associée.Néanmoins, parce que les gens participant aux workshops tels que PETSchoisissent les séquences de vidéos souvent arbitrairement et évaluent leur al-gorithme en utilisant la métrique dénie par eux-mêmes, la comparaison de laperformance avec d'autres algorithmes est dicile D'autres programmes tels
Trang 10que [10], [8], [9] essayent de surmonter ce problème en fournissant la métrique
et l'ensemble de données standard pour évaluer la performance de diérentsalgorithmes Cependant ils sourent toujours de plusieurs problèmes :
Le niveau de diculté est estimé manuellement par des experts Pour lamême séquence, deux experts peuvent assigner deux diérents niveaux
de diculté
Une séquence de vidéo peut contenir plusieurs problèmes à diérentsniveaux de diculté Tous ces problèmes contribuent au niveau dediculté des données d'entrée de l'algorithme (par exemple la vidéopour l'algorithme de détection d'objet)
Par conséquent, il y a plusieurs façons de combiner les problèmes quiproduisent le même niveau de diculté En conséquence, le rang d'unalgorithme sur deux séquences au même niveau de diculté peut êtrediérent parce que cet algorithme est ecace relativement à un pro-blème particulier
L'extrapolation des résultats d'évaluation pour une nouvelle vidéo estpresque impossible La performance d'un algorithme sur une nouvelleséquence est estimée en se basant sur sa performance sur la séquence
la plus similaire dans la base de vidéos d'évaluation Le choix de laséquence la plus similaire et la prévision de l'exécution basée sur la
similarité de deux séquences sont souvent subjectifs et imprécis
Le processus d'évaluation ne permet pas d'obtenir des connaissancestechniques de chaque algorithme de traitement de vidéos En particu-lier, le processus d'évaluation ne détermine pas les travaux nécessaires
à faire pour améliorer l'algorithme (quelle amélioration est la plus ciale) pour avoir une performance satisfaisante sur une condition don-née de l'environnement
Trang 113.2 Méthodologie
La méthodologie d'ETISEO est comme suivante :
Essayer de traiter chaque problème de traitement de vidéos séparément
en dénissant le problème correctement Par exemple, nous devons ter au moins trois types des ombres séparément : (1) des ombres à dif-férents niveaux d'intensités ( les ombres très contrastée ou peu contras-tée) avec le fond uniforme et non-coloré (2) des ombres au même niveaud'intensité mais avec des diérents types des fond en termes de couloir
trai-et de texture (3) des ombres avec des diérentes sources d'illumination
en termes de position de sources et de longueur d'ondes
Trang 12Pour chaque problème, collecter des séquences de vidéos illustrant ment le problème courant Ces séquences doivent illustrer le problème
seule-à diérents niveaux de dicultés Par exemple, pour le problèmes desombres et niveau d'intensité, nous devons sélectionner des séquencescontenant des ombres à diérents niveaux d'intensité (plus ou moinscontrastés)
Filtrer et extraire des parties convenables de la vérité terrain de quences sélectionnées pour isoler des problèmes de traitement de vi-déos Par exemple, pour la tâche de détection des objets, nous pouvonsévaluer la performance des algorithmes relativement au problème dedétecter des objets occlus en considérant seulement la vérité terraincontenant des objets occlus
sé- Pour la tâche donnée (détection d'objets, suivi, classication d'objets
et reconnaissance d'événements), dénir un nombre susamment desmétriques pour mesurer et caractériser la performance des algorithmes
en des aspects diérents
Calculer les données de référence qui correspondent à la sortie prévu
de l'algorithme à évaluer relativement à une tâche donnée de ment de vidéos Les données de référence sont calculées à partir de lavérité terrain fournie par les opérateurs humains et peuvent être amé-liorées pour correspondre mieux aux résultats prévus Par exemple, aulieu d'évaluer les positions d'objets mobiles de la vérité terrain (2D-points), nous pouvons employer des données de la référence 3D-pointpour mesurer la position de l'objet 3D
traite- Utiliser un outil d'évaluation automatique et unique pour analyserexactement comment un algorithme donné résoudre un problème donné
L'annotation générale sur les séquences de vidéo concernant des blèmes de traitement de vidéos(par exemple ombres faibles) ou concer-nant les états d'enregistrement (par exemple conditions atmosphériquestelles que le jour ensoleillé)
pro- La calibration de la caméra et l'informations contextuelles sur la scènevide décrivant la topologie de la scène (par exemple zone d'intérêt)
Trang 13Tab 3.1 ETI-VS1-BE-18-C4 : l'évaluation d'ETISEO sur la tâche de tection d'objets
dé-Participant 8 1 11 13 22 12Précision 0.69 0.79 0.49 0.39 0.30 0.98Sensitivité 0.71 0.42 0.48 0.42 0.40 0.16F-Score 0.7 0.55 0.48 0.41 0.34 0.27
Tab 3.2 ETI-VS1-BE-18-C4 : l'évaluation de la tâche de suivi
Participant 11 1 13 8 12Suivi 0.47 0.45 0.42 0.4 0.19
Dans ETISEO, toutes séquences de vidéos (environ 40 séquences) sontchoisies et classiées selon les problèmes qu'ils illustrent Ces séquences ontété traitées par 23 équipes internationales participant au programme d'éva-luation
3.4 Limitations
ETISEO également a fait face à deux limitations principales Puisque lesparticipants font l'expérience eux-mêmes, ils ont souvent diérentes hypo-thèses Par exemple, plusieurs participants ne détectent pas les objets qui ne
se déplacent pas pendant une certaine période Par conséquent, pour quelquesséquences, les résultats d'algorithme ne peuvent pas être comparés les unsavec les autres Les tables 3.1 et 3.2 montrent que les résultats d'évaluationdes tâches de la détection et du suivi d'objet sur la séquence ETI-VS1-BE-18-C4 Dans le point de vue d'ETISEO, nous pouvons observer qu'il n'y a aucuneconcordance entre ces deux tâche, un algorithme ayant la bonne performancesur la détection d'objet peut exécuter mal dans la tâche de suivi d'objets.Cependant, ces résultats sont tout à fait diérents de ceux de l'évaluationproposée décrite dans le chapitre 5
Une autre limitation est qu'ETISEO ne dénit pas des méthodes tatives pour mesurer le niveau de diculté des vidéos illustrant un problème
quanti-de traitement quanti-de vidéos donné Par exemple, ETISEO emploie les termes
Trang 14normale ou sombre pour décrire les niveaux d'intensité des séquences devidéos Par conséquent, le choix des séquences de vidéos dans ETISEO selonleurs niveaux de diculté est subjectif et assez imprécis En outre, ce juge-ment subjectif fait également arbitraire la comparaison entre les nouveauxséquences avec les séquences déjà testées.
3.5 Contribution à ETISEO
Travaillant dans le projet ETISEO, j'ai trois contributions principales.D'abord, j'ai essayé de trouver des limitations d'ETISEO et modié l'outild'évaluation pour surmonter ces limitations Puis, j'ai vérié la pertinence
de chaque métrique d'évaluation Par exemple, j'ai proposé d'éliminer la trique qui compare le nombre des objets mobiles dans les données de référence
mé-et cela détecté par des algorithmes sans utilisant les rectangles de bords jets Ou, j'ai proposé une solution pour modier les métriques qui caracté-risent le phénomène de fusion et division des objets Finalement, j'ai proposéune nouvelle méthode d'évaluation qui est présentée dans ce mémoire
Trang 15Dénir la métrique pour évaluer la performance d'algorithmes.
Choisir les séquences de vidéos illustrant le problème et les données deréférence associées pour faire l'évaluation
Évaluer la performance d'algorithme sur ces séquences en utilisant lamétrique dénie
Pour chaque algorithme, déterminer le niveau le plus élevé de diculté
ó l'algorithme peut avoir une performance acceptable Cette valeurest dénie comme la capacité d'algorithme pour résoudre le problèmecourant
Avec cette nouvelle approche, nous ne pouvons pas encore prévoir la formance d'un algorithme pour une nouvelle séquence Nous pouvons seule-ment estimer la borne supérieure de la performance d'algorithme relativement
à un problème spécique de traitement de vidéos La raison est que la formance d'algorithme sur une nouvelle séquence dépend également d'autresproblèmes comme la petite taille d'objet, le changement d'illumination etc.Ainsi l'objectif principal de cette méthodologie est de déclarer que la perfor-mance pourrait être insusante au cas ó le niveau de diculté relativement
per-à un problème particulier est plus grand que la capacité d'algorithme End'autres termes, pour un algorithme donné, nous ne pouvons pas détermi-
Trang 16ner sa condition susante de succès mais nous pouvons estimer la conditionnécessaire.
Pour réaliser cette approche, nous avons besoin de six éléments : le résultat
de la performance de l'algorithme de plusieurs participants, le problème detraitement de vidéos, la métrique d'évaluation de performance, la mesure dediculté des données d'entrée, les données de référence et les séquences de vi-déos choisies illustrant le problème Concernant les algorithmes de traitement
de vidéos à évaluer, il est important de dénir les paramètres exigeant d'unstage d'apprentissage pendant la conguration de traiter les vidéos choisis.Dans cet article, nous considérons que les réalisateurs d'algorithme pouvaientadapter leurs algorithmes et fournir les résultats qui sont assez satisfaisants
et assez représentant Par conséquent, pour appliquer cette méthodologie,deux éléments principaux restés : la métrique d'évaluation de performance
et la mesure des données d'entrée Dans la section suivante, pour illustrer laméthodologie d'évaluation, nous décrivons l'implémentation de notre métho-dologie pour deux problèmes de traitement de vidéos : la détection des objetsfaiblement contrastés et la manipulation des objets mélangés aux ombres
4.2 Détection des objets faiblement contrastés
Cette section étudie la sensibilité des algorithmes de traitement de vidéossur la détection des objets faiblement contrastés Dans ce but, nous décrivonsd'abord le problème de détecter les objets faiblement contrastés Puis nousdénissons une mesure de calculer le niveau de contraste d'un pixel, puis unebande (l'unité de base pour calculer l'ensemble de niveaux de contraste pourl'objet entier) Ensuite nous décrivons le procédé pour calculer l'ensemble deniveaux de contraste d'objet dans une image En conclusion, nous présentons
la méthode pour calculer la capacité d'algorithme pour manipuler les objetsfaiblement contrastés
Trang 17Fig 4.1 The strip contrast level is the maximum contrast level of thesub-regions
4.2.2 Mesure d'un niveau de contraste d'un pixel
Donné toutes les deux l'image courante qui contient les objets mobiles àdétecter et l'image du fond de la scène, le contraste d'un pixel d'objet estcalculé en utilisant la formule suivante :
(R b , V b , B b)est la valeur de couleur du pixel correspondant du fond
4.2.3 Mesure d'un niveau de contraste d'une bande
La région d'image correspondant à un objet mobile s'appelle le blob
Un blob peut comporter beaucoup de régions à beaucoup de niveaux decontraste Pour localiser les niveaux de contraste d'un blob, nous divisonshorizontalement le blob en petites bandes avec l'espoir que le contraste despixels à l'intérieur d'une bande est assez homogène et peut être représenté parune valeur unique Cependant, cette hypothèse n'est pas toujours correcte.Par exemple, parce que l'annotation prends beaucoup de temps, la véritéterrain contient souvent seulement un rectangle de bord pour chaque blob Àl'intérieur de ce rectangle, il y a beaucoup de pixels appartenant au fond, maispas au blob Par conséquent, la valeur moyenne des niveaux de contraste despixels à l'intérieur d'une bande n'est pas l'évaluation correcte pour le niveau
de contraste de bande Pour résoudre ce problème, nous appliquons le procédésuivant pour calculer le contraste d'une bande :
Diviser verticalement la bande en sous-régions
Pour chaque sous-région, calculer la valeur moyenne des niveaux decontraste de tous les pixels dans cette sous-région
Le niveau de contraste d'une bande est le niveau de contraste maximum
de toutes les sous-régions de cette bande
Trang 18Fig 4.2 Le niveau de contraste maximum de toutes les sous-régions aide
à détecter la bande entière
Par exemple, dans la bande dans la gure 4.1, l'ensemble de niveaux
de contraste de toutes les sous-régions est {3, 2, 5, 1} Alors, le niveau de
contraste de cette bande est 5
Le premier avantage de ce procédé est de dénir le niveau de contrastepour la bande entière comme niveau maximum de contraste de toutes lessous-régions Nous illustrons cet avantage en utilisant la gure 4.2 Danscette gure, il y a deux blobs Le blob à gauche se compose d'une sous-région faiblement contrastée (niveau de contraste 1) et d'une autre sous-région fortement contrastée (niveau de contraste 3) De même, le blob à droit
a également ces deux sous-régions principales D'ailleurs ce blob contient aussiune autre sous-région plus fortement contrastée (niveau de contraste 4) Noussupposons qu'un algorithme donné ne peut pas détecter la sous-région avec leniveau 1 de contraste Par conséquent, pour le blob à gauche, cet algorithmepeut détecter seulement la région avec le niveau 3 de contraste Cependant,pour le blob à droit, grâce à la petite région à un niveau de contraste élevé(4), le rectangle détecté par cet algorithme contient non seulement les régionsfortement contrastées (niveau 3, 4) mais également une part de la région avec
un niveau de contraste très bas (niveau 1) Par conséquent, pour une bande,
la sous-région au niveau du contraste le plus élevé peut aider l'algorithmepour détecter la bande entière De plus, cette méthode nous aide également
à réduire l'eet des parties de la bande qui correspondent au fond parceque leurs niveaux de contraste sont très petit en comparaison avec ceux quicorrespondent à l'objet Pour ces raisons nous assignons le niveau maximum
de contraste des sous-régions au niveau de contraste de la bande entière
Le deuxième avantage est la taille des sous-régions dans la bande Si nousprenons le niveau maximum de contraste de tous les pixels à l'intérieur de
la bande (c.-à-d la plus petite taille pour une sous-région), cette valeur peutcorrespondre au bruit Par conséquent, nous avons choisi une taille de région