Dans le cadre du cours - PowerPoint PPT Presentation

1 / 71
About This Presentation
Title:

Dans le cadre du cours

Description:

Segmenter les parties du corps d'une personne partir d'une silhouette binaire ... cause : v tements amples, v tements cr ant des ondulations ... – PowerPoint PPT presentation

Number of Views:47
Avg rating:3.0/5.0
Slides: 72
Provided by: wcoursGe
Category:

less

Transcript and Presenter's Notes

Title: Dans le cadre du cours


1
Projet Séparation dune silhouette en parties
Mario Petitclerc Louis St-Laurent Sylvain
Miermont Nicolas Martel-Brisson
  • Dans le cadre du cours
  • Vision numérique Aspects cognitifs

2
Contenu de la présentation
  • Définition et objectifs du projet
  • Validation subjective (SV)
  • Subjective Ground Truth (SGT)
  • Formal Ground Truth (FGT)
  • Validation formelle (FV) et subjective (FV)
  • Discussion

3
Définition et objectifs du projet
  • Sujet choisi
  • Segmenter les parties du corps dune personne à
    partir dune silhouette binaire
  • Définition des données dentrées
  • Groupe de pixels blancs appartenant à la
    silhouette dune personne
  • Groupe de pixels noirs appartenant à
    larrière-plan
  • Définition des données de sorties
  • 6 groupes de pixels de couleur différente
    correspondant aux parties dune personne tête,
    tronc, bras gauche, bras droit, jambe gauche et
    jambe droite

4
Définition et objectifs du projet
  • Méthodologie utilisée SAFE
  • Définir SV ( choix des ensembles de données
    dentrée)
  • Définir SGT pour les ensembles choisis
  • Définir FGT (calculs formels à effectuer)
  • Réaliser le programme de calcul
  • Définir FV (choix des ensembles de données
    dentrée)
  • Réaliser FV
  • Réaliser SV
  • Discuter de SGT, FGT, FV et SV

5
Validation subjective
  • Description des ensembles de données dentrées
  • Quantité dimages

6
Liste des ensembles de données dentrées
  • Tel que défini précédemment les données dentrée
    sont constituées de pixels blancs composants la
    silhouette et de pixels noirs composants
    larrière-plan.
  • Les parties de la silhouette dune personne
    peuvent être plus ou moins bien définies en
    fonction de la posture, des vêtements, de la
    résolution de limage, de la distance et de la
    qualité de la segmentation.

7
Liste des ensembles de données dentrées
  • Nous avons donc décidé de qualifier la
    complexité de la silhouette selon 8 situations
    qui seront rencontrées lors de la segmentation en
    parties
  • Silhouette simple
  • Membre(s) (bras et jambes) fléchi(s) (F)
  • Proportions inhabituelles (P)
  • Parties(s) non-visible(s) dans limage (V)
  • Point(s) dencrage inhabituel(s) (E)
  • Orientation inhabituelle (O)
  • Échelle critique (S)
  • Irrégularités de contour (I)

N.B. Les lettres constituent une référence pour
la nomenclature des images
8
Description des ensembles de données dentrées
  • Silhouette simple
  • Toutes les parties sont facilement identifiables
    pour un observateur humain
  • Aucun élément de complexité (présentés dans les
    diapositives qui suivent)

9
Description des ensembles de données dentrées
  • Membre(s) fléchi(s)
  • Coude(s) et/ou genou(x) visuellement
    distinctif(s) dans limage

10
Description des ensembles de données dentrées
  • Proportion inhabituelle
  • Taille de partie(s) non proportionnelle(s) par
    rapport aux autres
  • Causes vue de profil, handicap, orientation des
    membres, obésité, etc.
  • Remarquez la longueur du bras gauche!

11
Description des ensembles de données dentrées
  • Partie(s) non-visible(s) dans limage

- cause occlusion de parties, handicap
12
Description des ensembles de données dentrées
  • Point(s) dencrage inhabituel(s)
  • La tête, les bras et les jambes ont normalement
    un seul point dencrage avec le tronc dans
    lordre suivant Tête - bras - jambe - jambe -
    bras.
  • - Tout contact supplémentaire entre deux parties
    ou tout désordre des points dencrage constitue
    un cas de point dencrage inhabituel

13
Description des ensembles de données dentrées
  • Orientation inhabituelle
  • Le point dencrage de la tête nest pas située
    au-dessus du tronc et/ou les points dencrage des
    jambes ne sont pas situées sous le tronc.

14
Description des ensembles de données dentrées
  • Échelle critique
  • Le faible nombre de pixels constituant la
    silhouette engendre des bruit de quantification
    non négligeables
  • exemple La personne est si loin que la tête
    est représentée par 4 pixels formant un carré!

Résolution de 46 x 51 pixels
15
Description des ensembles de données dentrées
  • Irrégularité de contour
  • Les contours de la silhouette ne sont pas lisses
  • cause vêtements amples, vêtements créant des
    ondulations

16
Subjective Ground Truth
  • Contraintes fixées pour limiter le nombre de
    solutions possibles
  • Description des solutions possibles pour chaque
    ensemble de données dentrées

17
Contraintes fixées
  • Afin de limiter la quantité de solutions à
    traiter, nous avons fixé les contraintes
    suivantes
  • Jambe ayant le centroïde le plus à gauche
    jambe gauche
  • Bras ayant le centroïde le plus à gauche bras
    gauche
  • Si une seule jambe trouvée jambe gauche
  • Si un seul bras trouvé bras gauche
  • Toutes les parties doivent toucher au tronc
  • Les parties doivent être divisées par une ligne
    droite reliant deux points du contour de la
    silhouette
  • Aucun pixel appartenant aux lignes de coupure
    entre les parties ne doit être à l'extérieur de
    la silhouette.
  • Au moins le tronc est présent

18
Description des solutions possibles
  • Méthodologie de génération et de triage des
    solutions possibles
  • 14 images dentrées pour lesquelles nous avons
    définis un certain nombre de solutions possibles
    pour la segmentation
  • Le nombre de primitives dentrée consiste en le
    nombre de pixels appartenant à la silhouette
  • Chaque solution est composée dau plus 6 groupes
    (tête, tronc, bras gauche, bras droit, jambe
    gauche et jambe droite) auxquels peuvent
    appartenir les primitives dentrée (pixels)
  • Nous avons choisi de caractériser chaque
    solution en calculant la proportion de pixels
    associée à chaque groupe (partie)
  • Chaque solution est conservée dans une image
    dont le nom est inscrit dans la colonne
    Solution du tableau des solutions évaluées pour
    SGT
  • Pour chaque solution, une cote sur 100 a été
    attribuée (100 étant la solution parfaite).

19
Description des solutions possibles
  • Exemples de solutions possibles

01_03.png
01_05.png
08_01.png
23_01.png
23_06.png
17_01.png
20
Description des solutions possibles
  • Tableau des solutions évaluées pour SGT

21
Description des solutions possibles
  • Tableau des solutions évaluées pour SGT (suite)

22
Description des solutions possibles
  • Tableau des solutions évaluées pour SGT (suite)

23
Description des solutions possibles
  • Tableau des solutions évaluées pour SGT (suite)

24
Description des solutions possibles
  • Tableau des solutions évaluées pour SGT (suite)

25
Formal Ground Truth
  • Critères choisis pour lévaluation de la qualité
    des solutions
  • Contraintes pour la génération des solutions
  • Algorithme pour la génération de solutions

26
Critères choisis
  • Liste des critères choisis pour lévaluation des
    solutions
  • Présence de 0, 1 ou 2 jambes (Nj)
  • Présence de 0, 1 ou 2 bras (Nb)
  • Présence dune tête (Nt)
  • Surface équivalente entre le bras droit et le
    bras gauche (Ns)
  • Surface équivalente entre la jambe droite et la
    jambe gauche (Np)
  • Similitude entre la tête et une ellipse (Ne)
  • Forme allongée des bras et des jambes (Na)
  • Correspondance entre les surfaces des groupes et
    celles dun être humain moyen (Nu)
  • Ordre des parties par rapport au tronc (No)

27
Critères choisis
  • Méthode dévaluation
  • Chaque critère donne une note comprise entre 0
    (le critère nest pas respecté) et 1 (le critère
    est pleinement respecté).
  • Cette note est ensuite multipliée par un
    coefficient associe à chaque critère.
  • La somme des notes une fois multipliées par
    leurs coefficients donne la note finale associée
    à une solution proposée.
  • Les coefficients ont été déterminés
    expérimentalement
  • 0.5, 0.5, 0.5, 1, 1, 1, 1, 1,
    1
  • Nj, Nb, Nt, Ns, Np, Ne, Na, Nu, No

28
Définition formelle des critères choisis
  • Présence de 0, 1 ou 2 jambes
  • pas de jambe gt Nj 0
  • une jambe gt Nj 0.5
  • deux jambes gt Nj 1
  • Présence de 0, 1 ou 2 bras idem que pour les
    jambes (note Nb)
  • Présence dune tête
  • pas de tête gt Nt 0
  • une tête gt Nt 1

29
Définition formelle des critères choisis
  • Surface équivalente entre le bras droit et le
    bras gauche
  • soit Sd la surface du bras droit et Sg la
    surface du bras gauche
  • la différence entre les surface est définie par
  • la note du critère est égale à
  • Surface équivalente entre la jambe droite et la
    jambe gauche idem que pour les bras (note Np)

30
Définition formelle des critères choisis
  • Similitude entre la tête et une ellipse
  • On sintéresse à la variation moyenne de la
    transformée de distance le long du squelette du
    membre
  • Pour une ellipse ou un cercle, cette variation
    sera plus élevée que pour un membre allongé
  • Pour la tête on trouve toujours des valeurs
    proches de
  • On définit la note de ce critère à laide dune
    gaussienne de moyenne de 0.42 et dun écart-type
    (déterminé expérimentalement ) de 0.1

31
Définition formelle des critères choisis
  • Forme allongée des bras et des jambes
  • pour une partie allongée, le squelette est
    nettement plus long que la moyenne des distances
    le long de ce squelette
  • on effectue une squelettisation des parties
    identifiées comme les bras et les jambes et on
    sintéresse au rapport entre la moyenne des
    distances le long du squelette et la longueur du
    squelette
  • on calcule ce rapport pour le bras droit, le
    bras gauche, la jambe droite, la jambe gauche et
    on constitue un vecteur Va de 4 dimensions
  • notre vecteur de référence Vr est 0.1, 0.1,
    0.1, 0.1
  • la note du critère est obtenue par une
    gaussienne de 0.1 décart type et de moyenne
    donnée par le vecteur Vr

32
Définition formelle des critères choisis
  • Correspondance entre les surfaces des groupes et
    celles dun être humain moyen
  • On forme un vecteur à partir de la proportion
    que chaque partie représente par rapport à la
    surface totale (dans lordre tronc, tête, bras D,
    bras G, jambe D, jambe G)
  • Ce vecteur a donc 5 cordonnées, dont certaines
    peuvent être nulles
  • Expérimentalement, on détermine un vecteur de
    référence (Dref)
  • 0.4, 0.06, 0.1, 0.1, 0.17, 0.17
  • Soit Dv la distance euclidienne entre ce vecteur
    et notre vecteur de référence
  • la note du critère est encore obtenue avec un
    gaussienne décart-type 0.1 et de moyenne
    correspondant à Dref

33
Définition formelle des critères choisis
  • Ordre des parties
  • On cherche les angles, par rapport à
    lhorizontale, des droites passant par le
    centroïde de la partie identifiée comme le tronc
    et le centroïde de la jonction de chaque groupe
    avec le tronc.
  • En triant les membres par angles croissants
  • Dans lordre, les partie doivent être tête,
    bras, jambe, jambe, bras (et toute les rotations
    possible). No gt 1
  • On ne donne pas de points aux solutions
     étranges  (par exemple tête, bras, jambe,
    bras, jambe. No gt 0

34
Contraintes dans la génération des solutions
  • Liste des contraintes
  • une partie et une seule est identifiée comme le
    tronc
  • il existe au maximum une partie pour chacun des
    membres et la tête
  • toutes les parties ont une frontière commune
    avec le groupe identifié comme le tronc
  • les frontières entres les parties sont des
    lignes droites reliant 2 points du contour de la
    silhouette
  • les frontières ne passent jamais à extérieur de
    la silhouette

35
Algorithme pour la génération de solutions
  • Algorithme général

36
Algorithme pour la génération de solutions
  • Algorithme détaillé
  • Distance euclidienne
  • dist bwdist(Silhouette)

37
Algorithme pour la génération de solutions
  • Algorithme détaillé (suite)
  • Concept Un pixel de limage de la transformée
    de distance est identifié comme appartenant à une
    crête sil est supérieur à ses deux voisins dans
    au moins une orientation
  • 16 orientations sont considérées

38
Algorithme pour la génération de solutions
  • Algorithme détaillé (suite)
  • Suppression des crêtes non-connectées à la plus
    grosse région
  • À partir du point de crête le plus  élevé , on
    se déplace sur les crêtes
  • À chaque jonction de branches, on conserve
    toujours au moins la plus longue
  • On conserve aussi lautre branche si la
    variation moyenne entre les pixels voisins de la
    branche est inférieure à 0.5

39
Algorithme pour la génération de solutions
  • Exemple de squelettes obtenus pour différentes
    silhouettes

40
Algorithme pour la génération de solutions
  • Algorithme détaillé (suite)
  • Les points de coupure sur le contour sont liés
    aux points où la transformée de distance varie
    fortement le long dune branche du squelette
  • On filtre les distances (pour éliminer le bruit)
  • On calcule la dérivée des distances le long de
    chaque branche de squelette (et on la filtre)
  • On trouve la dérivée maximale pour chaque branche

41
Algorithme pour la génération de solutions
  • Algorithme détaillé (suite)
  • Les points de coupure potentiels sur le contour
    se trouvent à des endroits où les branches de
    squelette se rejoignent (points de jonction)
  • Un point du squelette ayant plus de deux voisins
    est identifié comme un point de jonction

42
Algorithme pour la génération de solutions
  • Algorithme détaillé (suite)
  • On élimine les points caractéristiques redondants
    (maximum local trop près dune jonction)
  • Pour chaque point caractéristique conservé, on
    identifie sur le contour les points les plus
    rapprochés (3 points pour une jonction et 2 pour
    un maximum local)

43
Algorithme pour la génération de solutions
  • Algorithme détaillé (suite)
  • Les points de coupure issus dun même point
    caractéristique sont groupés par paires afin de
    générer des frontières
  • Pour chaque paire, on trace une ligne droite (C8)
    ayant le rôle de frontière

44
Algorithme pour la génération de solutions
  • Algorithme détaillé (suite)
  • Pour générer dautres variétés de solutions, on
    attribue aléatoirement une étiquette et sa
    couleur à chaque groupe, à lexception du tronc
    (groupe auquel les autres sont liés)
  • Les pixels frontières sont affectés au groupe 1
    (tronc)
  • Mais dautres caractéristiques, similaires aux
    critères, devraient être considérées en pratique
    pour attribuer à chaque groupe létiquette la
    plus appropriée.

45
Validation formelle et subjective
  • Méthodologie de validation
  • Efficacité de lalgorithme dévaluation et de
    tri des solutions possible / comparaison avec tri
    subjectif

46
Méthodologie
  • Lalgorithme a été testé sur des silhouettes
    représentants les 8 situations possibles
    identifiées lors de létape SGT, soit
  • Silhouette simple
  • Membre(s) (bras et jambes) fléchi(s) (F)
  • Proportions inhabituelles (P)
  • Parties(s) non-visible(s) dans limage (V)
  • Point(s) dencrage inhabituel(s) (E)
  • Orientation inhabituelle (O)
  • Échelle critique (S)
  • Irrégularités de contour (I)

47
Méthodologie (suite)
  • Pour chaque situation, nous avons fait évaluer
    par notre algorithme plusieurs solutions
    possibles ayant été générés
  • Par notre algorithme de génération de solutions
  • À la main à partir de points de coupure
    arbitraires
  • Notre algorithme de génération de solution ne
    génère quun petit groupe de solutions possibles
  • La comparaison avec des solutions générées à la
    main permet de faire une validation plus complète.

48
Efficacité de lalgorithme dévaluation
  • Silhouette simple

49
Efficacité de lalgorithme dévaluation
  • Silhouette simple (suite)
  • N.B. - Les solutions entourées dun cadre rouge
    ont été générées par notre algorithme
  • - Les solutions entourées dun cadre jaune ont
    été générées manuellement

50
Efficacité de lalgorithme dévaluation
  • Silhouette simple (suite)

g numéro du groupe Ar Aire relative du
groupe par rapport à laire totale de la
silhouette Ce Coefficient délongation (largeur
moyenne sur longueur du squelette du membre) Cc
Coefficient de circularité (variation moyenne de
la largeur sur la longueur du squelette) A
Angle (degrés) du groupe par rapport au centroïde
du groupe 1.
Groupe 1 tronc Groupe 2 tête Groupe 3 bras
gauche
Groupe 4 bras droit Groupe 5 jambe
gauche Groupe 6 jambe droite
51
Efficacité de lalgorithme dévaluation
  • Silhouette simple (suite)
  • Nj présence de(s) jambe(s)
  • Nb présence de(s) bras
  • Nt présence dune tête
  • Ns surface équivalente des bras
  • Np surface équivalente des jambes
  • Ne similitude tête / ellipse
  • Na forme allongée des bras et jambes
  • Nu rapport entre surface des groupes
  • No ordre des groupes

52
Efficacité de lalgorithme dévaluation
  • Membre(s) fléchi(s)

53
Efficacité de lalgorithme dévaluation
  • Membre(s) fléchi(s) (suite)

54
Efficacité de lalgorithme dévaluation
  • Proportions inhabituelles

55
Efficacité de lalgorithme dévaluation
  • Proportions inhabituelles (suite)

56
Efficacité de lalgorithme dévaluation
  • Parties(s) non-visible(s) dans limage

57
Efficacité de lalgorithme dévaluation
  • Parties(s) non-visible(s) dans limage (suite)

58
Efficacité de lalgorithme dévaluation
  • Point(s) dencrage inhabituel(s)

59
Efficacité de lalgorithme dévaluation
  • Point(s) dencrage inhabituel(s) (suite)

60
Efficacité de lalgorithme dévaluation
  • Point(s) dencrage inhabituel(s) (suite)

Comparaison des notes subjectives et formelles
pour un groupe de solutions générées manuellement
61
Efficacité de lalgorithme dévaluation
  • Point(s) dencrage inhabituel(s) (autre exemple)

62
Efficacité de lalgorithme dévaluation
  • Point(s) dencrage inhabituel(s) (suite)

63
Efficacité de lalgorithme dévaluation
  • Irrégularités de contour

64
Efficacité de lalgorithme dévaluation
  • Irrégularités de contour (suite)

65
Discussion
  • Analyse de SGT et FGT
  • Retour sur la méthodologie SAFE

66
Analyse de SGT et FGT
  • En analysant les résultats recueillis suite à
    lévaluation formelle et en les comparant à ceux
    attribués lors de lévaluation subjective, on en
    vient à la conclusion que notre algorithme
    dévaluation des solutions est influencé par la
    pose et les déformations, lorsquelles sont très
    importantes.
  • Cela sexplique par le fait que notre modèle est
    basé sur le cas idéal personne vue de face avec
    lensemble des membres visibles.
  • Lalgorithme qui génère un sous ensemble des
    solutions possibles applique des contraintes qui
    excluent parfois la meilleure solution
    subjective.
  • Par contre, parmi les solutions générées, la
    meilleure solution formelle correspond
    généralement à la meilleure solution subjective.

67
Analyse de SGT et FGT
  • Améliorations possibles pour la génération de
    solutions
  • - Augmenter le nombre de solutions en trouvant
    davantage de points de coupure. Pour ce faire,
    on pourrait par exemple trouver les points de
    concavité sur le contour de la silhouette.
  • Améliorations possibles pour lévaluation des
    solutions
  • Se préoccuper de la position spatiale des
    membres La tête se trouve généralement en
    haut, les jambes, en bas, etc.
  • Ajouter une étape danalyse de la pose afin
    dadapter les critères pour divers cas, ce qui
    permettrait dévaluer de façon plus appropriée
    les solutions ayant une pose irrégulière.
  • Optimisation des critères. Par exemple, la
    circularité de la tête devrait idéalement être
    calculée en faisant lintersection entre une
    ellipse et le groupe (axes principaux
    équivalents).

68
Retour sur la méthodologie SAFE
  • Euh

69
FIN
70
Retour sur la méthodologie SAFE
- Létape SGT incite à prendre en considération
un maximum de situations possibles (ici,
plusieurs cas de silhouettes possibles). -
Lanalyse subjective nous permet de mieux cerner
les critères permettant dévaluer une
solution. - Le développement dun algorithme
dévaluation de solutions permet de prendre
conscience de la difficulté de trouver des
critères mathématiques efficace pour la
résolution du problème - Lutilisation de cette
approche est peu intuitive et représente une
lourde charge de travail pour un gain discutable
de lefficacité de lalgorithme
  • Ce que nous retenons de la méthodologie

71
FIN
Write a Comment
User Comments (0)
About PowerShow.com