Valrie Lavigne - PowerPoint PPT Presentation

1 / 53
About This Presentation
Title:

Valrie Lavigne

Description:

Les donn es sources du syst mes sont les contours r sultants d'un traitement de ... De plus, un crit re additionnel pourrait tre ajout afin d' valuer le travail ... – PowerPoint PPT presentation

Number of Views:26
Avg rating:3.0/5.0
Slides: 54
Provided by: wcoursGe
Category:

less

Transcript and Presenter's Notes

Title: Valrie Lavigne


1
  • Valérie Lavigne
  • 99 038 099
  • Martin Breton
  • 93 056 561
  • Sébastien Lafontaine
  • 99 180 763
  • GIF-64793
  • Vision Numérique Aspect Cognitif
  • Travail présenté à M. Robert Bergevin
  • Université Laval
  • 9 décembre 2003

2
Description du projet
  • Le projet consiste à détecter les yeux dune
    personne dans une image où les yeux sont
    présents.
  • Limage doit en être une où une personne est vue
    de face, les yeux bien dégagés, idéalement
    regardant droit devant elle.

3
Données sources
  • Les données sources du systèmes sont les contours
    résultants dun traitement de limage avec le
    logiciel Magno.
  • Ces contours contiennent des primitives
    graphiques (segments de droite et/ou arcs de
    cercle) que le logiciel Magno a calculées à
    partir des arrêtes détectées dans limage.

4
Images utilisées
5
Pré-traitement
  • Il faut effectuer un pré-traitement aux images
    car Magno génère beaucoup trop de contours.
  • De plus, la détection darrêtes du logiciel Magno
    est plus efficace sur une petite région de
    limage originale que sur toute létendue de
    limage.
  • Ce pré-traitement consiste à sélectionner
    seulement le visage dans limage originale. Cela
    a pour effet de diminuer la région de
    segmentation, daugmenter lefficacité de Magno
    ainsi que de diminuer le nombre de contours
    générés par les cheveux, par exemple.

6
Avant pré-traitement
  • 2660 contours!

7
Après pré-traitement
  • 670 contours.

8
SGT
  • Afin de pouvoir trouver quelques solutions
    possibles, des combinaisons de contours ont été
    générées aléatoirement.
  • Ces combinaisons ont été générées de deux façons
    en centrant sur les yeux (assure une certaine
    qualité de la solution générée) ainsi quen
    prenant des contours provenant de limage entière
    (assure des plus ou moins bonnes solutions).

9
Exemple de centrage
  • En utilisant seulement les contours contenus
    dans le rectangle, la probabilité que le contour
    généré contienne les deux yeux augmente.

10
Distance entre les solutions
  • Afin de ne pas avoir de solutions similaires
    (voir identiques), une fonction de distance entre
    deux solutions doit être implantée.
  • Cela permet un échantillonnage dans lespace de
    toutes les solutions possibles.
  • Si deux solutions ne sont pas distantes dune
    distance minimale Dmin, la seconde est rejetée.
  • La distance entre deux solutions est donnée par
    le nombre de contours quelles ne partagent pas.

11
SV Attribution des cotes
  • Un système de votation a été élaboré afin de
    classer les groupes de contours sous
    lappellation  Bon ,  Moyen  ou  Mauvais ,
    selon si une forme dyeux était facile à voir ou
    pas.
  • Par la suite, le groupe le mieux classé sest vu
    attribué la cote maximale de  1  et ainsi de
    suite jusquau pire qui est coté  200 .

12
Cotes
Double-cliquez sur licône en mode conception
pour ouvrir le classeur Excel.
13
FGT Critères utilisés
  • Nous avons décidé dutiliser la somme pondérée
    des critères suivants afin de déterminer si la
    forme dune solution (groupe de contours)
    ressemble à celle de deux yeux
  • Rapprochement des contours
  • Séparation entre les deux groupes
  • Forme des groupes (relation largeur-hauteur)
  • Alignement des deux groupes
  • Ressemblance entre les deux groupes.

14
FGT Pondération des critères
  • Voici la pondération accordée à chaque critère

15
Rapprochement des contours
  • Explication
  • Les solutions où les contours sont loins les uns
    des autres sont peu intéressantes.
  • Calcul
  • On calcule laire du rectangle englobant tous les
    contours dun il.
  • On calcule ensuite la somme de laire des
    rectangles entourant chaque contour.
  • Le rapport entre les deux aires nous donne la
    valeur du critère.

16
Rapprochement des contours
aireRecti aire du rectangle entourant le ième
contour de la solution nbContours nombre total
de contours dans la solution separation indice
à partir duquel les contours appartiennent au
second groupement aireG aire du rectangle
entourant le premier groupe en pixels aireD aire
du rectangle entourant le deuxième groupe en
pixels totalG 0, totalD 0 for(i0
iltseparation i) totalG aireRecti
for(iseparation ilt nbContours i) totalD
aireRecti
17
Séparation entre les deux groupes
  • Explication
  • Lespace horizontal entre deux yeux est denviron
    la largeur dun il.
  • Calcul
  • On calcule lespace entre les deux groupes de
    contours.
  • On effectue ensuite le rapport entre cet espace
    et la largeur moyenne des groupes. Ce rapport
    donne le score du critère.

18
Séparation entre les deux groupes
x1G coordonnée horizontale de la limite gauche
du rectangle entourant le premier groupe x2G
coordonnée horizontale de la limite droite du
rectangle entourant le premier groupe x1D
coordonnée horizontale de la limite gauche du
rectangle entourant le second groupe x2D
coordonnée horizontale de la limite droite du
rectangle entourant le second groupe largeurG
largeur du rectangle entourant le premier groupe
en pixels largeurD largeur du rectangle
entourant le deuxième groupe en pixels
if (temp gt 2 espace 0) valeur 0 else if
(temp gt 1) valeur 2 -temp else valeur
temp
19
Forme des groupes
  • Explication
  • Un il est généralement plus large que haut.
  • Calcul
  • On effectue le rapport de la largeur sur la
    hauteur du rectangle englobant tous les contours
    dun groupe.
  • Si ce ratio est hors de lintervalle
    dacceptation établi expérimentalement, ce
    critère a un score nul, sinon, le score du
    critère est la valeur centrée du ratio par
    rapport à la moyenne des seuils.

20
Forme des groupes
largeurG largeur du rectangle entourant le
premier groupe en pixels largeurD largeur du
rectangle entourant le deuxième groupe en
pixels hauteurG hauteur du rectangle entourant
le premier groupe en pixels hauteurD hauteur du
rectangle entourant le deuxième groupe en
pixels seuilHaut 1.75 seuilBas 0.5
if ((ratiog gt seuilhaut )( ratiog lt seuilbas))
valg 0 else valg 1 - abs(ratiog - moyenne)
/ diff if ((ratiod gt seuilhaut) (ratiod lt
seuilbas)) vald 0 else vald 1 -
abs(ratiod - moyenne) / diff
21
Alignement des deux groupes
  • Explication
  • On sassure que les yeux sont vis-à-vis lun de
    lautre.
  • Calcul
  • On calcule la distance verticale entre le centre
    du premier groupe et celui du second groupe.
  • Si elle est plus petite que la moitié de la
    hauteur du groupe le moins haut, les deux
    groupes sont alignés.
  • Sinon, le pointage du critère est déterminé par
    la valeur centrée par rapport à la moyenne des
    hauteurs des groupes.

22
Alignement des deux groupes
centreG coordonnée verticale du centre du
rectangle entourant le premier groupe en
pixels centreD coordonnée verticale du centre du
rectangle entourant le deuxième groupe en
pixels hauteurG hauteur du rectangle entourant
le premier groupe en pixels hauteurD hauteur du
rectangle entourant le deuxième groupe en pixels
23
Ressemblance entre les groupes
  • Explication
  • Les deux yeux devraient être de dimensions
    semblables.
  • Calcul
  • On calcule le rapport des largeurs du rectangle
    entourant chaque groupe.
  • On calcule le rapport des hauteurs du rectangle
    entourant chaque groupe.
  • La moyenne des deux rapports donne la valeur du
    critère.

24
Ressemblance entre les groupes
largeurG largeur du rectangle entourant le
premier groupe en pixels largeurD largeur du
rectangle entourant le deuxième groupe en
pixels hauteurG hauteur du rectangle entourant
le premier groupe en pixels hauteurD hauteur du
rectangle entourant le deuxième groupe en pixels
25
FGT Génération des solutions
  • Les solutions sont générées aléatoirement de la
    même façon que pour SGT mais en utilisant
    toujours toute limage (pas de centrage sur les
    yeux).
  • Le groupe de contours générés est ensuite séparé
    en deux groupes, le premier étant associé à lil
    gauche et le second à lil droit.

26
Séparation de la solutionen deux groupes
  • On trie dabord la liste de contours de la
    solution pour quils soient ordonnés
    horizontalement de gauche à droite (on utilise le
    point central de chaque contour).
  • Pour diviser en deux groupes, on essaie chaque
    possibilité de séparation de la liste et on
    choisit celle qui donne le plus grand espacement
    entre les deux groupes.

27
Comparaison des cotes
  • Voici un tableau comparatif des cotes entre
    celles données par le logiciel et SGT. De plus,
    ce classeur contient un graphique de lerreur
    cumulative de cotation entre SGT et les meilleurs
    résultats du programme.
  • Les diapositives de résultats suivantes comparent
    le meilleurs résultat selon chaque méthode et
    donnent ensuite quelques exemples de résultats
    pour chaque image originale. Les rangs peuvent
    varier de 1 à 200.

Double-cliquez sur licône en mode conception
pour ouvrir le classeur Excel.
28
Meilleur résultat formel
  • Entrée EXGal006.li
  • Rang selon le programme 1
  • Rang subjectif 84
  • Score 84,08

29
Meilleur résultat subjectif
  • Entrée EXGal001.li
  • Rang selon le programme 6
  • Rang subjectif 1
  • Score 71,98

30
Résultats FaceGaladrielle
  • Entrée EXGal000.li
  • Rang selon le programme 2
  • Rang subjectif 20
  • Score 75,70

31
Résultats FaceGaladrielle
  • Entrée EXGal009.li
  • Rang selon le programme 3
  • Rang subjectif 86
  • Score 75,69

32
Résultats FaceGaladrielle
  • Entrée EXGal002.li
  • Rang selon le programme 5
  • Rang subjectif 9
  • Score 74,44

33
Résultats FaceLégolas
  • Entrée EyeLegolas008.li
  • Rang selon le programme 7
  • Rang subjectif 30
  • Score 66,59

34
Résultats FaceLégolas
  • Entrée EyeLegolas004.li
  • Rang selon le programme 4
  • Rang subjectif 114
  • Score 66,57

35
Résultats FaceLégolas
  • Entrée Leg037.li
  • Rang selon le programme 12
  • Rang subjectif 140
  • Score 63,59

36
Résultats FaceLégolas
  • Entrée Leg044.li
  • Rang selon le programme 16
  • Rang subjectif 88
  • Score 60,98

37
Résultats FaceLégolas
  • Entrée Legolas027.li
  • Rang selon le programme 17
  • Rang subjectif 139
  • Score 60,28

38
Résultats FaceAndré
  • Entrée EyeAndre007.li
  • Rang selon le programme 4
  • Rang subjectif 40
  • Score 74,75

39
Résultats FaceAndré
  • Entrée EyeAndre001.li
  • Rang selon le programme 9
  • Rang subjectif 34
  • Score 66,33

40
Résultats FaceAndré
  • Entrée EyeAndre013.li
  • Rang selon le programme 10
  • Rang subjectif 94
  • Score 64,26

41
Résultats FaceAndré
  • Entrée EyeAndre011.li
  • Rang selon le programme 13
  • Rang subjectif 53
  • Score 63,05

42
Résultats FaceAndré
  • Entrée EyeAndre005.li
  • Rang selon le programme 20
  • Rang subjectif 19
  • Score 59,08

43
(No Transcript)
44
Analyse des résultats
  • Le programme semble donner un pointage
    intéressant pour les résultats qui semblaient
    très bons ou très mauvais subjectivement. Par
    contre, le classement des résultats moyens
    comporte des écarts importants qui peuvent être
    expliqués par plusieurs facteurs
  • La présence dun sourcil renforce la présence
    dun il pour lhumain. Pour nos critères, cela
    nest pas une caractéristique souhaitable. La
    plupart de nos critères resteraient valides avec
    la présence des deux sourcils, mais ils
    deviennent moins performants lorsquil y a quun
    seul sourcil présent.
  • La présence dun tout petit segment éloigné du
    groupe fausse lévaluation car bien quil ait peu
    dimportance pour la reconnaissance humaine, il
    déforme le rectangle englobant les contours et
    nos critères donnent donc de mauvais résultats.

45
Analyse des résultats (suite)
  • Le fait que les solutions aient été générées
    aléatoirement fait que les solutions contiennent
    des contours éparpillés qui ne ressemblent
    généralement pas à un il. Cela revient à dire
    que lon introduit du  bruit  dans les
    solutions.
  • Le critère de lalignement des yeux est très
    facile à satisfaire.

46
FV Améliorations pour une autre itération de la
méthode SAFE
  • Il est clair que le système développé ne
    représente quune étape dans un système élaboré
    de détection de yeux dans une image. Si on devait
    aller plus loin tout en respectant la
    méthodologie SAFE, voici quelques points quil
    faudrait améliorer 
  • Meilleure détection de contours
  • Meilleure génération de solutions
  • Algorithme de raffinement de contours
  • Pondération des critères

47
Meilleure détection de contours
  • Le logiciel Magno est très sensible aux seuils
    quon lui fixe. Il sagit de modifier ses seuils
    de cinq unités et beaucoup de contours
    disparaissent. De plus, si, parmi ces contours
    certains appartiennent à des yeux, il y a de
    fortes chances que la détection soit compromise.
  • La transformée de Hough pourrait être utilisée
    pour trouver des ellipses ainsi que des cercles,
    et considérer uniquement les cercles contenus
    dans des ellipses.

48
Meilleure génération de solutions
  • Les solutions ont été essentiellement générées de
    façon aléatoire. Bien quon ait fixé une distance
    entre les solutions ainsi quon ait centré la
    génération de solutions sur les contours contenus
    dans un rectangle entourant les yeux, il demeure
    que nos solutions peuvent représenter nimporte
    quoi.
  • Pour palier à ce manque, il faudrait que les
    solutions soient générées en utilisant une
    méthode de suivi de contours  à partir dun
    contour donné, trouver les contours qui sont aux
    extrémités dudit contour, et ainsi de suite
    jusquà ce quon ait rempli une certaine
    condition sur le groupe de contours. Il faut
    répéter pour un second ensemble de contours. Ces
    deux ensembles peuvent être considérés comme
    étant une solution potentielle.
  • Une autre méthode de génération de solutions
    pourrait constituer à prendre un contour et
    considérer tous les contours dans un certain
    rayon de ce contour comme étant un groupe de
    contours. Répéter pour le second groupe et
    constituer une solution à partir de ces deux
    groupes.

49
Algorithme de raffinement de contours
  • La forme des yeux que lon obtient en combinant
    les résultats de Magno ne présentent pas vraiment
    une forme que lon est habitué de voir. Il
    faudrait une procédure qui puisse, à partir des
    contours, aboutir à quelque chose constitué dune
    ellipse plutôt allongée contenant un cercle de
    rayon égal au demi-axe vertical de lellipse et
    centré sur lellipse, le tout pour les deux yeux.
    Autrement dit, créer un il avec une pupille ou
    un iris.
  • Cet algorithme pourrait être aidé dans son
    travail par un algorithme de prolongement et
    dinterpolation de contours. Soit deux contours
    séparés par une certains distance, lalgorithme
    pourrait trouver le point de rencontre (jonction)
    entre les deux contours. Evidemment, lalgorithme
    se doit dagir de façon différente dans le cas
    dune droite intersectant une autre droite, dun
    arc de cercle rencontrant une droite ou,
    finalement, une droite rencontrant un arc de
    cercle.
  • De plus, un critère additionnel pourrait être
    ajouté afin dévaluer le travail de cet
    algorithme afin de pouvoir évaluer le travail
    accomplie, i.e. si les dimensions de lellipse et
    du cercle respectent les proportions naturelles
    de lil humain.

50
Pondération des critères
  • Une meilleure pondération des critères pourra
    être réalisée lorsque les points précédents
    seront réglés.

51
Et tant quà y être
  • Rien ne nous empêcherait de pousser la détection
    de yeux humains vers la détection de yeux de
    créatures de rapprochant des humains. Par
    exemple, puisque nous somme dans la thématique du
     Seigneur des Anneaux , le système de détection
    pourrait sattaquer à une image dOrcs ou même
    dimages du personnage Gollum ou encore, en
    plaçant certains seuils sur la forme des yeux à
    chercher, lalgorithme pourrait travailler à
    détecter des yeux de hiboux ou tout autre être
    ayant les yeux placés à lavant de sa tête.
  • De plus, le projet pourrait être poussé à la
    limite en détectant les yeux de plusieurs
    personnes dans une image ou, encore, attribuer
    lespèce à laquelle appartient un individu dans
    une image uniquement sur la forme des yeux sur
    une image contenant Gollum, un humain et un
    hiboux.

52
Image de plusieurs créatures
53
Sources
  • Images
  • www.lordoftherings.net
  • Laboratoire de Vision et de Systèmes Numériques
    (LVSN)
  • Logiciels
  • Guillaume-Alexandre Bilodeau
Write a Comment
User Comments (0)
About PowerShow.com