1
Application des algorithmes génétiques
à l’estimation de mouvement par modélisation markovienne
Encadrant Dr Albert DIPANDA
2
Sommaire Introduction
Les champs de Markov en analyse d’image
L’estimation du mouvement
Les algorithmes génétiques
Application des algorithmes génétiques
Expérimentations
Conclusion
3
Introduction
Problématique: Application des algorithmes génétiques
à l’estimation de mouvement Objectifs:
Développer les algorithmes génétiques Les tester Les comparer à d’autres méthodes
4
Le mouvement
La description du mouvement Le mouvement
Apparent Dense Infinitésimal
Les objets déformables
5
Les champs de Markov
Modélisation markovienne Voisinage / clique
4-voisins
CliquesCs= { {s1}, {s2}, {s3}, {s4}, {s, s1}, {s,
s2}, {s, s3}, {s, s4} }
s1
s3
s2s4 s
6
Les champs de Markov Modélisation markovienne
Équations:
S ensemble fini de sites 2-D
ηs voisinage de s
X=(X s1 , ...) champ de variables aléatoire sur S
Un voisinage local de s est suffisant pour calculer la probabilité de sa réalisation
),/Pr(),/Pr(
0)Pr(
srrssrrss rxXxXsSrxXxX
xX
7
Les champs de Markov
Modélisation markovienne Exploitation
Théorème d’Hammersley-Clifford:Champ aléatoire défini sur un réseau est
un champ de Markov si et seulement si sa distribution de probabilité est une distribution de Gibbs
))(exp(1
)Pr( xUZ
xX
8
Les champs de Markov Modélisation markovienne
ExploitationNotre problème:Trouver x qui explique « au mieux » y
x étiquettes (vecteurs déplacement), y observations (deux images successives d’une séquence)
)(),()/(
yPyxPyxP
),(min ),(exp1
),( yxUyxUZ
yxP
Bayes:
Gibbs:
)/(max yxP
9
L’estimation du mouvement
L’estimation de ce mouvement
Équations:
))((minimiser)0)((
0),(),()(2 sDFDsDFD
tsfdttdssfsDFD
si Cvsi
Ss
RdtttDFD
dvdssDFD
dsUffdsU
,
222 )(
)(,,
10
L’estimation du mouvement
Minimisation d’une fonction d’énergie
Gradient ICM (Iterative Conditional Mode) Recuit simulé
Problèmes Convergence
11
Les algorithmes génétiques
Les algorithmes génétiques C’est une simulation de l’évolution
d’une population d’individus dans un milieu naturel
John Holland 1975: Individu dans une population Solution potentielle d’un problème parmi
un ensemble de solutions
12
Les algorithmes génétiques
Les algorithmes génétiques Principe:
Population suivante
Reproduction / Élitisme
Évaluation
Évaluation
Population initiale
Individu solution
Critère d’arrêt
oui
non
Reproduction
Sélection
Croisement
Mutation
13
Les algorithmes génétiques
Les algorithmes génétiques Le codageUn individu est un chromosome formé d’une chaîne
de gènes
binaire permutation valeur
1 0 1 0 0 0 1 0
1 0 0 1 1 0 0 1
3 4 1 7 5 8 2 6
6 4 1 5 7 2 3 8
A C C T G A T A
1,3 0,4 0,4 1,5 1,9 0,1 0 1,3
Vert Rouge
Bleu Vert Vert Bleu Rouge
Rouge
14
Les algorithmes génétiques
Les algorithmes génétiques La fonction d’adaptation / fitness
Dépend du problème Fonction à optimiser Permet l’évaluation des individus
15
Les algorithmes génétiques
Les algorithmes génétiques Les opérateurs pour la reproduction
La sélection Choix des individus participant à la
reproduction
Tournoi
16
Les algorithmes génétiques
Les algorithmes génétiques Les opérateurs pour la reproduction
Le croisementCombine les gènes de deux parents et fournit deux
enfants2 solutions adaptées → des solutions mieux
adaptéesS’applique avec une certaine probabilitéCroisement 1
point
Croisement 2 points
Parents
Enfants
17
Les algorithmes génétiques
Les algorithmes génétiques Les opérateurs pour la reproduction
La mutationFaible - probabilité
- portéeRéponse au problème d’appauvrissement
génétique
Enfant avant la mutation Enfant après la mutation
18
Application des algorithmes génétiques
Application aux images Codage
Valeur: Vecteurs d’amplitude maximale égale à 1
2-D(-1,-1)
(0,-1)
(1,0) (1,-1)
(-1,0)
(0,1) (0,0) (-1,0)
(-1,0)
(-1,-1)
(0,0) (-1,1)
(1,1) (-1,0)
(-1,1)
(0,1)
(1,1) (-1,0)
(-1,0)
(1,0) (0,1) (-1,-1)
(1,1) (0,1)
(-1,0)
(1,-1)
(1,0) (0,-1)
(1,-1)
(1,1) (0,-1)
(0,1)
(-1,1)
(1,1) (-1,1)
(-1,1)
(-1,-1)
(0,-1)
(0,-1)
(-1,0)
(0,-1)
(0,1) (-1,-1)
(0,-1)
(0,0) (1,-1)
(0,0) (-1,1)
(1,0) (-1,1)
(0,0) (-1,1)
(1,0) (-1,-1)
(0,1) (1,0)
(-1,0)
(1,-1)
(1,1) (0,0) (0,-1)
(-1,0)
(0,0) (1,1)
19
Application des algorithmes génétiques
Application aux images Fonction d’adaptation
Minimiser:
si Cvsi
Ss
RdtttDFD
dvdssDFD
dsUffdsU
,
222 )(
)(,,
20
Application des algorithmes génétiques Application aux images
Les opérateurs Sélection par tournoi à 2 ou à 8
Élitisme
Tournoi à 8
21
Application des algorithmes génétiques
Application aux images Les opérateurs
Croisements
Enfants
Parents
2 points
Enfants
Combinaison linéaire
22
Application des algorithmes génétiques Application aux images
Les opérateurs Mutations
Petites variations Aléatoire Orientée
Mutation par petite variation
Individu
Mutation aléatoireMutation aléatoireMutation aléatoire Mutation orientée
?
23
Application des algorithmes génétiques
Les améliorations
Calcul de la fonction d’adaptation (fitness)
Le découpage des images
24
Application des algorithmes génétiques
Les améliorations Calcul de la fonction d’adaptation
(fitness):
gz
pz
zi
25
Application des algorithmes génétiques
Les améliorations Le découpage des images
Gain de temps Ensemble des solution potentielles moins
importantVecteurs d’amplitude 1: 9n*m solutions
potentielles Effet de « mosaïquage »
2 découpages
26
Application des algorithmes génétiques
Les améliorations Suppression de l’effet de
mosaïquage Méthode 2 découpages
translation de (-1,-1)
27
Expérimentations Tests sur la taille des images
taille des images 64x64 32x32 16x16 8x8 population 501 151 151 75génération 5000 2500 10000 1000
total des individus explorés 2505000 377500 1510000 75000énergie de la solution finale 25286 247604 201 2611,4
temps 2,4(h) 5,5(min) 6,4(min) 44,4(s)
Remarque: énergie
28
Expérimentations Tests pour la validation des
paramètres Images 8x8
Paramètres optimisés
paramètre de régularisation 0.1 xinitialisation de la population aléatoire x
nombre d’individus dans une population 51 (50 + l’élite) 101 (100 + l'élite)nombre de génération 400 800
type de sélection tournoi à 2 xtype de croisement par zone x
probabilité de mutaion 0.1 xtype de mutation orientée x
probabilité pour que la mutation soit orientée 0.5 xtaille de la zone à mutée 4% de l’image x
29
Expérimentations
Sur les images de synthèse
Disque rotation
Carré translation
30
Expérimentations
Sur les images réelles: le train (image 1)
31
Expérimentations
Sur les images réelles: le train (image 2)
32
Expérimentations
Sur les images réelles: le train (AGs)
33
Expérimentations Exemple avec découpage et image
bruitée
temps 5.99557(min) 4.39897(min) 10.3945(min)m_population 51 51m_generation 1000 1000
51000 51000
34
Expérimentations Comparaison avec les autres algorithmes
temps 10.3945(min) 0.125(s) 2.078(s) 0.14(s)
decoupage gradient recuit simulé ICM
35
Conclusion
Bilan: Efficacité:
Ces algorithmes stochastiques sont encore coûteux en temps de calcul
Sur les petites images pour avoir des temps de calculs raisonnables
36
Conclusion Perspectives:
Vers des mouvements non infinitésimaux: Vecteur d’amplitude plus élevée? Sans conditions d’amplitude?
Vers le temps réel: Parallélisme pour les sous images? Travailler directement sur les équations des
objets déformables? Plus de précision
Travailler sur un autre découpage? Multirésolution?