• Aucun résultat trouvé

APPLICATIONS 131 1. Moyennage paramétrable : Cette fonction a pour but de réduire la sensibilité

Estimation intra-fonction

CHAPITRE 5. APPLICATIONS 131 1. Moyennage paramétrable : Cette fonction a pour but de réduire la sensibilité

au bruit du traitement. Pour ce faire la fonction eectue la moyenne de N images, le nombre d'images N étant fonction du niveau de bruit (plus le bruit est élevé plus N est grand) et de la vitesse de déplacement des objets (plus les objets se déplacent rapidement plus N est petit). Le calcul de la moyenne s'eectue sur les N images qui sont stockées dans un buer de type FIFO. 2. Soustraction : l'objectif de cette fonction est d'identier les zones en

mouve-ments et les zones xes en réalisant la soustraction entre une image de référence et l'image issue de l'étape de moyennage. La soustraction est eectuée pixel à pixel entre les deux images, ainsi les zones xes apparaîtront en noir (niveau de gris 0) et les zones mobiles avec un niveau de gris diérent de 0.

3. Seuillage : il s'agit ici de binariser l'image issue de la soustraction an d'isoler les objets mobiles. Pour obtenir de bons résultats la fonction de seuillage n'est pas directe et le seuil est paramétrable. La valeur du seuil est issue de l'appli-cation d'un masque de gradient sur l'histogramme de l'image à traiter. Ainsi une valeur nulle du gradient de l'histogramme indique une région xe et par conséquent la valeur du seuil.

4. Traitement morphologique : celui-ci a pour objectif de ltrer l'image an de faire disparaître tous les points isolés. Ce traitement se décompose de plusieurs étapes successives : tout d'abord un masque de convolution est appliqué sur l'image, ensuite l'image subit une érosion (élimination des pixels blanc non connexes) suivie d'une dilatation (détection partielle de forme d'objets). Enn une étape de reconstruction permet de retrouver la forme complète des objets. 5. Mise à jour de l'image de référence : cette fonction consiste à mettre à jour l'image de référence par analyse des centres de gravités des objets. Si au bout d'un certain délai, les coordonnées du centre de gravité d'un objet changent, alors cet objet est considéré en mouvement. La mise à jour de l'image de référence utilise une étape d'étiquetage dont le rôle est d'attribuer à tous les pixels connexes une même étiquette (c.a.d un même niveau de gris). Le principe de l'algorithme d'étiquetage est de détecter les adjacences entre pixels et de dénir l'étiquette du pixel courant en fonction de celles de ses voisins. Plus

132 CHAPITRE 5. APPLICATIONS précisément, deux voisins déjà traités sont considérés : pixeln−1 et pixeln−nc

avec nc le nombre de colonnes de l'image. Ensuite grâce aux coordonnées Xmin, Ymin ; Xmax, Ymax de début et de n des objets les enveloppes englobantes et les centres de gravité de ceux-ci sont calculés. Enn, une étape de test sur le déplacement décide de remettre ou non à jour l'image de référence. Dans le cas d'une mise à jour de l'image celle-ci doit être soustraite à l'image courante. Pour déterminer si les coordonnées des centres de gravité des objets ont changées, une comparaison entre l'image courante et l'image précédente est eectuée. Un compteur est alors incrémenté si les coordonnées ne changent pas. Si le compteur atteint une certaine valeur n alors l'objet est recopié dans l'image de référence.

5.4 L'application Matching Pursuit

L'application Matching Pursuit nous a été fournie par S. Bilavarn [93] dans le cadre de son séjour post-doctoral à l'EPFL en collaboration avec INTEL. Il s'agit d'un nouveau type de compression n'opérant non pas sur des pixels mais sur des atomes représentant des motifs de base pour constituer une image. Cette applica-tion est intéressante à deux titres : d'une part la spécicaapplica-tion de celle-ci est encore en cours et mouvante, il est donc intéressant pour le concepteur de disposer d'un outil lui permettant de caractériser et d'évaluer très rapidement ses choix durant la spécication. D'autre part cet exemple est représentatif des applications multimé-dias futures : le gain en compression requis se traduit par un accroissement de la complexité algorithmique notamment arithmétique.

La gure 5.5 montre les éléments constituant la chaîne de traitement. La partie codage est réalisée à l'aide d'un algorithme génétique et est exécutée sur un serveur, nous avons donc décidé de ne pas nous intéressé à cette partie. Par contre, la partie décodage peut être implantée sur diérent types de systèmes, dont les systèmes embarquée. Nous avons donc estimé la partie décodage. Celle-ci est composée de 4 fonctions principales comme illustré sur la gure 5.5.

CHAPITRE 5. APPLICATIONS 133                                                                                              ! " # " $   $ %%%&                                                                                              ! " # " $   $ %%%&                             ! " # " $   $ %%%&

Fig. 5.5: Chaîne de traitement "Matching Pursuit"

5.5 Expériences sur les applications tests

Cette partie a pour objectifs d'expliquer les expériences que nous avons menées sur les diérentes applications et de commenter les résultats obtenus. Ces commen-taires ont deux buts : d'une part montrer le niveau de complexité que l'outil peut gérer et d'autre part montrer comment les informations fournies par l'estimation système peuvent être utilisées par le concepteur. Nous commençons par présenter l'analyse des métriques des diérentes applications tests. Ensuite nous analysons quelques résultats de l'estimation système. Dans le paragraphe suivant nous mon-trons le ot complet d'estimation (depuis l'analyse des métriques à la projection physique) sur l'application "ICAM". Ensuite nous présentons les résultats concer-nant l'application Matching Pursuit. Enn, nous terminons par quelques résultats préliminaires sur la projection logicielle.

5.5.1 Caractérisation

Dans cette partie nous commentons les résultats de la partie caractérisation du ot de conception. Pour des questions de lisibilité nous présentons les résultats pour le niveau de hiérarchie le plus haut pour chaque fonction. Le concepteur a lui accès aux résultats pour tous les niveaux via les chiers textes générés par l'outil Design Trotter (cf. 5.1.2).

La gure 5.6 et le tableau 5.1 présentent les résultats de la caractérisation des applications tests.

134 CHAPITRE 5. APPLICATIONS                     MOM C O M ! #"$%&%(')*+%!, -/.10 '+2, 3 + 456! #"/, 879:;%<#+*< 3 , = 2<#* 0>. 7?@A+B 0>. 7?@C#D!25

Fig. 5.6: Récapitulatif de la caractérisation des applications tests. La métrique γ est proportionnelle au rayon du point.

Nom de la fonction Chemin critique (Nb cycles) Gamma MOM [0,1] COM [0,1] Filtrage F22 (LMS) 1150 6,19 0,47 0,00 DCT (coeur) 7 5,71 0,58 0,00 Filtrage de Volterra 11,00 4,82 0,09 0,00 Filtrage adaptatif 3075 3,57 0,68 0,00 MPEG (estim mvt) 136105152 1,55 0,60 0,06 Decodage de Human 7 1,14 0,80 0,22 TCP_abort N/A 1 0,457 0,343 TCP_wakeup N/A 1 0,333 0,556

CHAPITRE 5. APPLICATIONS 135