Les astronomes font l'acquisition d'images de galaxies contenant plusieurs composantes. Ces composantes
ont des vitesses diérentes et leur distinction n'est pas chose facile pour les astronomes, surtout
que ces images sont bruitées et les données qu'ils recueillent chaque nuit sont de très grande taille. Le
but de ce travail et de développer des outils mathématiques permettant de distinguer entre ces composantes.
Risques hydrologiques et aménagement du territoire
Decomposition des spectres dans des images astronomiques hyperspectrales avec MCMC Gibbs
1. Institut National des Sciences Appliquées et Technologie
Université de Carthage
Projet de Fin d'Études
Filière : RT
Décomposition conjointe de spectres dans
des images astronomiques
Présenté par
Kais Baccour
Encadrants :
Vincent Mazet
Sylvain Faisan
Faten Chaieb
Présenté le : 03-10-2016
Président du jury : Riadh Robbana
Examinateur : Wided Miled Souid
2015-2016
3. B L'échantillonneur de Gibbs 47
C Lois a priori sur les paramètres des raies dans une image hyperspectrale 48
3
4. Notations
a amplitudes {a1, ...aK}
b bruit {b1, ...bN }
c centres {c1, ...cK}
FWHM largeur à mi-hauteur d'une raie
it itération de l'échantillonneur de Gibbs
itRW première itération pour calculer la covariance du pas de la marche aléatoire
K nombre de raies dans un spectre
N nombre d'échantillons
φ raie gaussienne de centre c, d'amplitude a et de largeur w
rb variance du bruit
ra variance de l'amplitude
S nombre de spectres dans un séquence
w largeurs {w1, ...wK}
y spectre
z résidu
4
5. Introduction générale
Depuis l'Antiquité, l'Homme n'a jamais cessé d'observer l'univers pour répondre à ses questions
philosophiques, soient elles ou scientiques. Depuis Aristote avec ses déductions d'une terre ronde non
plate jusqu'aux trous noirs, l'observation de l'univers a toujours été un élément-clé pour comprendre ce
qui se passe autour de nous. Notre système solaire et la plupart des étoiles que nous pouvons facilement
observer dans le ciel appartiennent à notre galaxie, la voie lactée.
Pour calculer la distance qui nous sépare des étoiles proches on peut calculer leur changement de
position en même temps que nous tournons autour du soleil. Cependant, pour les étoiles qui appar-
tiennent à d'autres galaxies, cette méthode n'est plus ecace car ces étoiles vont toujours sembler xes
à cause du fait qu'elles soient très éloignées de nous. L'analyse de la cinématique des composantes des
galaxies présente un réel enjeu pour comprendre l'histoire et l'évolution de l'univers. Une étoile lointaine
apparaît souvent comme un point lumineux dont on ignore la taille et la forme. An de les distinguer,
un seul moyen semble ecace, la couleur qu'elles dégagent. En faisant passer la lumière d'une étoile
par un prisme, les couleurs qui en ressortent forment le spectre d'émission. Ce spectre d'émission nous
renseigne sur la composition de l'étoile car chaque élément chimique absorbe des couleurs correspon-
dant à des longueurs d'onde spéciques. Nous savons que l'hydrogène neutre qui compose toutes les
étoiles émet des ondes radio, ce qu'on appelle la raie à 21 cm.
En eet, les spectres des galaxies subissent un décalage causé par l'eet Doppler. Et donc cette raie
à 21 cm est souvent décalée à cause de la vitesse relative qu'ont ces galaxies par rapport à la terre. Ce
décalage nous renseigne sur la cinématique des galaxies et donc sur leur histoire. Grâce aux nouveaux
télescopes, les astronomes peuvent avoir des images astronomiques multispectrales, c'est-à-dire des
images à 3 dimensions, la 3
e
dimension correspondant à la longueur d'onde (Figure 1.3).
Chaque pixel de ces images est un spectre d'émission contenant une ou plusieurs raies pouvant
être décalées à cause de l'eet Doppler mentionné ci-dessus. Dans un même spectre d'émission, nous
pouvons avoir plusieurs composantes de galaxie allant à des vitesses diérentes et donc avoir des raies
à des longueurs d'onde et intensités diérentes.
Le but du projet DSIM dans lequel s'eectue ce travail est de développer des outils de traitement
d'images permettant aux astronomes de diérencier les composantes dans une galaxie. Ceci revient à
décomposer ces spectres en estimant les paramètres des pics ainsi que leur nombre. An de réaliser
ce but, nous nous trouvons face à plusieurs obstacles et problèmes. En eet, il nous faut estimer des
paramètres de pics qui sont décalés en longueur d'onde et donc d'un pixel à un autre voisin, la raie
peut évoluer vers une autre longueur d'onde, une autre intensité ou une largeur de pic diérente.
Cette évolution est assez douce et continue dans l'espace mais il faut la prendre en considération dans
l'élaboration des outils à développer. De plus, les astronomes se trouvent face à une quantité énorme
5
6. de données avec plusieurs images multispectrales prises chaque nuit. Les outils à développer doivent,
donc, impérativement être rapides et ecients. Avec une lumière d'acquisition très faible, ces images
sont extrêmement bruitées et le but du projet DSIM est de développer des outils stables face à des
rapports signal sur bruit très faibles. An de remédier à ces problèmes, il est très intéressant que la
décomposition des spectres se fasse d'une manière conjointe pour bénécier au mieux de la redondance
spatiale. Un travail sur la décomposition conjointe d'une séquence de spectres s'est fait en 2011 par
V. MAZET et S. Faisan utilisant les méthodes RJMCMC (vu la dimension inconnue du problème) a
présenté un temps de calcul très grand pour un résultat de décomposition qui n'était pas satisfaisant.
Dans ce travail, nous allons aussi travailler dans un cadre bayésien mais avec un échantillonnage MCMC
faisant appel à l'algorithme de Gibbs.
6
7. Chapitre 1
Problématique
Dans ce chapitre, nous allons expliquer le but de ce travail, les données sur lesquelles nous travaille-
rons et comment nous avons procéder pour accomplir ce but.
Les astronomes font l'acquisition d'images de galaxies contenant plusieurs composantes. Ces compo-
santes ont des vitesses diérentes et leur distinction n'est pas chose facile pour les astronomes, surtout
que ces images sont bruitées et les données qu'ils recueillent chaque nuit sont de très grande taille. Le
but de ce travail et de développer des outils mathématiques permettant de distinguer entre ces compo-
santes. Dans la gure (1.1), nous avons une image de la galaxie NGC 4254 fournie par les astronomes
de l'observatoire de Strasbourg. A partir de cette image, il est dicile de distinguer entre les diérentes
Figure 1.1 Galaxie NGC4254
composantes de la galaxie. Les outils que nous développerons au cours de ce travail nous permettrons
d'avoir une décomposition des spectres dans les images astronomiques de telle sorte à pouvoir estimer
ces composantes et la sortie de ces outils est comme illustré par la gure (1.2)
Les images astronomiques que nous traiterons sont des images 3D.
deux axes spatiaux
spectre d'émission
En eet, chaque pixel représente un spectre d'émission. Le télescope utilisé par les astronomes joue
le rôle d'un prisme pour chaque pixel. Nous savons que les galaxies sont composées essentiellement
d'atomes d'hydrogène neutre et émettent donc une raie à 21 cm. L'eet Doppler désigne le change-
7
8. Figure 1.2 Estimation de deux composantes de la galaxie NGC 4254. : La première composante est
en jaune, la deuxième en bleu-ciel, en bleu absence des deux composantes et en marron lorsqu'il y a
intersection
8
9. Figure 1.3 Image astronomique multispectrale
ment de fréquence de l'onde qu'envoie un corps en mouvement. Cet eet peut être aperçu lorsqu'une
ambulance passe devant nous. lorsqu'elle se rapproche la fréquence du son qu'elle émet augmente puis
diminue lorsqu'elle s'éloigne. Ce même eet Doppler peut nous renseigner sur la vitesse des compo-
santes des galaxies car les raies qu'on retrouve sur les spectres d'émission peuvent être décalées vers la
gauche ou la droite. Nous pouvons par exemple avoir une composante de galaxie s'éloignant tout en
eectuant une rotation, c'est à dire que la partie droite de la composante ne se déplace pas à la même
vitesse relative que la partie gauche. Ceci se manifeste par des raies de spectres à droite de la compo-
sante qui ne sont pas décalés au même degrés que celles à gauche. De plus, Selon les astronomes, les
composantes de galaxies peuvent être alignées spatialement avec nous. Il est donc possible d'observer
plus d'une raie dans un même pixel avec des décalage de longueur d'ondes plus ou moins importants
en fonction de leur vitesses.
1.1 Cadre bayésien
Dans ce travail, nous allons considérer ces raies comme des gaussiennes à trois paramètres (centre
amplitude et largeur). nous allons aussi prendre en considération le fait que les images soient bruitées.
Les paramètres des gaussiennes sont supposés avoir une évolution spatiale douce comme le montre
la séquence de spectre à la gure (1.4). cette gure est une représentation d'une ligne d'une image
hyperspectrale que nous avons simulé. Nous pouvons voir que le signal comporte deux raies décalées
et donc deux composantes diérentes qui évoluent d'un pixel à un autre.
An de prendre en considération ces supposition ou a priori, la décomposition de ces spectre va se
faire dans un cadre bayésien.
Soit X un paramètre à estimer et Data l'image fournie par les astronomes.
P(X|Data) =
P(X)P(Data|X)
P(Data)
P(X|Data) : A posteriori
9
10. 0 50 100 150 200 250 300
0
10
20
30
40
50
60
70
Sequence de spectres 1D
Longueur d’onde
spectres
Figure 1.4 exemple d'une séquence de spectres générée
P(Data|X) : Vraisemblance
P(X) : A priori
P(Data) : Probabilité des données (cte)
=⇒ P(X|Data) ∝ P(X)P(Data|X)
1.2 Méthodes MCMC
Les méthodes de Monte-Carlo par chaînes de Markov sont des méthodes d'échantillonnage à partir
de distributions de probabilité.
Ces méthodes d'échantillonnage utilise les chaînes de Markov suivant la loi de la distribution à
échantillonner. On utilise souvent ces méthodes dans le cadre de l'inférence bayésienne. Nous avons un
a posteriori global qui est multimodal contenant plusieurs optimums locaux. Nous voulons optimiser
cet a posteriori. Pour une image 512∗512, si nous supposons qu'il y a 3 composantes dans la galaxies l'a
posteriori global est de dimension 2359296. La multimodalité de l'a posteriori et sa grande dimension
nous incitent à travailles avec les méthodes MCMC.
1.3 Échantillonnage de Gibbs
L'échantillonnage de Gibbs est une méthode MCMC. Le fait que l'a posteriori global est dicile à
échantillonner directement ( paramètres de nature diérentes), il nous a semblé très intéressant dans
ce travail d'utiliser les algorithmes d'échantillonnage de Gibbs (voir annexe).
1.4 État de l'art
Une publication a été faite dans le même contexte par Vincent Mazet Joint Bayesian Decomposition
of a Spectroscopic Signal Sequence dans sur une séquence de spectre mais qui ne traite qu'une séquence
10
11. de spectres, c'est à dire une ligne de l'image astronomique. Ce travail a donné de bons résultats mais
l'a posteriori global à optimisé était de dimension connue, c'est à dire que le nombre de composante
était connu à l'avance. Un autre travail avait succédé ce travail et qui avait pour but de décomposer
une séquence de spectre mais avec une dimension de l'a posteriori qui était inconnue au départ. Ce
travail à utiliser les méthodes d'échantillonnage RJMCMC qui donnait donc la possibilité d'avoir des
composantes qui ne sont présentes que dans des endroits de la séquence et on n'avait pas à connaitre
le nombre de composantes par séquence.
Figure 1.5 Décomposition d'une séquence par RJMCMC
1.5 Procédure de travail
Dans le chapitre 2, nous allons commencer par travailler sur un seul pixel de l'image (0D) et donc
sur un seul spectre. l'échantillonnage se fera donc sur 3 ∗ Kp paramètres. Kp étant le nombre de
composantes (raies) dans le pixel et 3 parce que nous supposerons qu'une raie est une gaussienne à 3
paramètres. Les a prioris par rapport à ces paramètres sont discutés avec les astronomes an d'avoir
une estimation qui approche le plus possible la réalité. La gure 1.6 montre un spectre d'une image
générée. Nous allons tester les outils développé sur Matlab et remarquerons par la suite que des cas
particuliers peuvent être gênant du point de vue convergence de la méthode, qualité de la méthode et
temps de calcul. Nous allons donc améliorer l'algorithme de gibbs en apportant quelques contributions
tel que la considération d'un a priori sur le bruit qui est asymétrique, une initialisation plus intelligente
et l'estimation des composante une à une. ces contributions seront mieux détaillées dans le chapitre
2. Par la suite, Dans le chapitre 3, Nous allons échantillonner sur toute l'image et nous allons donc
prendre un a priori sur l'évolution spatiale qui est douce des paramètres d'une même composante. Pour
ce faire, nous avons utilisé les champs aléatoires markoviens et nous nous sommes basés sur la notion de
cliques et de voisinages. L'initialisation constituera un facteur clé pour la convergence de l'algorithme.
nous avons pour cela adopté des algorithmes de croissance de région utilisant des seuil basés sur les
11
12. 0 100 200 300 400 500 600 700 800 900 1000
−2
0
2
4
6
8
10
spectre genere
echantillons
Figure 1.6 exemple d'un spectre généré
normes euclidiennes. Ceci est le premier travail qui traite la décomposition de spectres sur toute une
image astronomique et qui fait de l'échantillonnage MCMC conjointement.
12
13. Chapitre 2
Estimation de raies sur un seul spectre
2.1 Introduction
On considère K raies dans un spectre ou site y = {y1, y2...yN }, N étant le nombre d'échantillons. Les
raies sont considérées gaussiennes et ont les paramètres {c, a, w} qui sont respectivement les centres,
les amplitudes et les largeurs des raies. le spectre y est de plus bruité par un signal b :
y =
K
k=1
akΦ(ck, wk) + b
avec Φi(ck, wk) = exp −1
2
i−ck
wk
2
et i ∈ {1, N}.
Nous générons un spectre y à K = 4 raies sur N = 1000 échantillons (gure 2.1)
0 100 200 300 400 500 600 700 800 900 1000
−2
0
2
4
6
8
10
spectre genere
echantillons
Figure 2.1 exemple d'un spectre généré
13
14. 2.2 Modèle avec bruit symétrique
2.2.1 Lois a priori
Loi a priori sur le bruit
Le bruit b est supposé indépendant, identiquement distribué suivant une loi gaussienne centrée en
0 et de variance rb
∀i ∈ {1, N}, bi ∼ N(0, rb)
⇔ P(b|rb) =
N
i=1
P(bi|rb)
⇔ P(b|rb) =
N
i=1
1
√
2πrb
exp −
b2
i
2rb
⇔ P(b|rb) =
1
(2πrb)
N
2
exp −
N
i=1
b2
i
2rb
Loi a priori sur la variance du bruit
On pourra aussi estimer l'hyper paramètre rb qui est la variance du bruit. Nous pouvons supposer
que cette dernière suit une loi gaussienne ou une loi gamma ou encore une loi uniforme. Cependant,
pour avoir un a posteriori conditionnel relatif à rb qui nous permet de générer la valeur pseudo-aléatoire
directement et sans passer par l'algorithme de Metropolis Hastings, nous allons supposer que rb suit
une loi uniforme allant de 0 à rbmax et nous aurons, de ce fait, un a posteriori conditionnel suivant une
loi inverse gamma.
rb ∼ U(0, rbmax)
P(rb) =
1
rbmax
1IR+ (rb)
Loi a priori sur les centres des raies
Nous supposons que les centres des raies ck ∈ [0, N] sont uniformément distribués sur le spectre :
∀k ∈ {1, ..., K}, ck ∼ U(1, N)
P(ck) =
1
N − 1
1I[1,N](ck)
14
15. Loi a priori sur les amplitudes des raies
Nous supposons que les amplitudes ak, k ∈ {1, .., k} ne peuvent pas être négatives, sont indépen-
dantes et identiquement distribuées suivant une loi gaussienne tronquée.
∀k ∈ {1, ..., K}, ak ∼ N+
(0, ra)
P(ak|ra) =
2
√
2πra
exp −
a2
k
2ra
1IR+ (ak)
Loi a priori sur les largeurs des raies
Nous supposons que les largeurs wk ne peuvent pas être négatives ni très grandes par rapport à N.
Nous adoptons, donc, un a priori uniforme sur [1, wmax], où wmax est la largeur maximale qu'une raie
peut avoir.
∀k ∈ {1, ..., K}, wk ∼ U(1, wmax)
P(wk) =
1
wmax
1I[1,wmax](wk)
2.2.2 Loi a posteriori globale
L'a posteriori global est calculé à partir du théorème de Bayes en statistique
P(c, a, w, rb|y) =
P(y|c, a, w, rb)P(c, a, w, rb)
P(y)
Or P(y) est constante ; y étant le spectre observé. On a donc :
P(c, a, w, rb|y) ∝ P(y|c, a, w, rb)P(c, a, w, rb)
Les inconnues (c, a, w, rb) étant indépendantes :
P(c, a, w, rb|y) ∝ P(y|c, a, w, rb)P(c)P(a)P(w)
N
i=1
P(rb)
⇔ P(c, a, w, rb|y) ∝ P(y|c, a, w, rb)
K
k=1
P(ck)
K
k=1
P(ak)
K
k=1
P(wk)
N
i=1
P(rb) (2.1)
l'équation (2.1) donne
15
16. P(c, a, w, rb|y) ∝ exp
−
y − K
k=1 akΦ(ck, wk)
2
2rb
× 1I[1,N](c)
× exp −
K
k=1
a2
k
2ra
1IR+ (a)
× 1I[1,wmax](w)
× 1IR+ (rb)
(2.2)
2.2.3 Lois a posteriori conditionnelles
L'équation (2.2) de l'a posteriori global permet d'obtenir la loi a posteriori conditionnelle relative
à la variance du bruit rb, à chaque centre ck, amplitude ak et largeur wk
Loi a posteriori conditionnelle sur les centres des raies
On notera c−k le vecteur c privé du ke
élément : c−k = {c1, c2, ..., ck−1, ck+1, ..., cK}.
La loi a posteriori conditionnelle de ck est :
p(ck|c−k, a, w, rb, y) ∝ exp
−
y −
K
j=1
ajΦ(cj, wj)
2
2rb
1I[1,N](c)
Loi a posteriori conditionnelle sur les amplitudes des raies
De même, l'équation (2.2) donne l'a posteriori relatif à chaque amplitude ak
p(ak|c, a−k, w, rb, y) ∝ exp
−
y −
K
j=1
ajΦ(cj, wj)
2
2rb
× exp −
a2
k
2ra
1IR+ (a)
⇔ p(ak|c, a−k, w, rb, y) ∝ exp
−
y −
K
j=1
ajΦ(cj, wj)
2
2rb
−
a2
k
2ra
1IR+ (a)
16
17. On a démontré dans l'annexe (A) que cette expression revient à une distribution gaussienne
ak|c, a−k, w, rb, y ∼ N+(µ, σ) dont les paramètres sont :
µ =
σ2
rb
xT
k Φk
σ =
rarb
rb + ΦT
k Φkra
Loi a posteriori conditionnelle sur les largeurs des raies
Nous faisons de même pour exprimer l'a posteriori conditionnelle sur les largeurs :
p(wk|c, a, w−k, rb, y) ∝ exp
−
y −
K
j=1
ajΦ(cj, wj)
2
2rb
1I[1,wmax](wk)
L'a posteriori conditionnel de rb est proportionnel à :
p(rb|c, a, w, rb, y) ∝
1
rb
N
2
exp
−
y − K
k=1 akΦ(ck, wk)
2
2rb
1IR+ (rb)
qui est une distribution inverse gamma
p(rb|c, a, w, rb, y) ∝
1
rb
α+1
exp −
β
rb
1IR+ (rb)
avec
α =
N
2
− 1
β =
1
2
y − K
k=1 akΦ(ck, wk)
2
Les a posteriori globaux étant exprimés, nous détaillons l'algorithme 1 correspondant à ce modèle
symétrique :
2.2.4 Résultats et interprétation
Exemple 1
An d'observer ce que fait notre algorithme plus concrètement, nous générons un spectre à K = 4
raies gaussiennes sur N = 1000 échantillons et un bruit b d'écart-type σb = 0.2 et nous exécutons
l'échantillonneur de Gibbs avec l'algorithme de Metropolis-Hastings. L'initialisation des paramètres
17
18. Entrée : Le spectre y, le nombre d'itérations IT
Sortie : La variance du bruit rb les positions c, amplitudes a et les largeurs w estimés
Initialisation : r
(1)
b , c(1), a(1), w(1);
pour it de 1 à IT faire
Choisir un candidat c
(it)
new avec une probabilité qnew
Calculer l'a posteriori avec c
(it)
new ;
si a posteriori avec c
(it)
new a posteriori avec cit−1 alors
c(it) ← cit
new;
sinon
r ∼ U(0, 1) ;
si r P(cit
new)
P(c(it−1))
qold
qnew
alors
c(it) ← c
(it)
new;
sinon
c(it) ← c(it−1);
n
n
Choisir un candidat w
(it)
new avec une probabilité qnew
Calculer l'a posteriori avec w
(it)
new ;
si a posteriori avec w
(it)
new a posteriori avec wit−1 alors
w(it) ← wit
new;
sinon
r ∼ U(0, 1) ;
si r P(wit
new)
P(w(it−1))
qold
qnew
alors
w(it) ← w
(it)
new;
sinon
w(it) ← w(it−1);
n
n
µ ←
σ2
rb
xT
k Φk ;
σ ←
rarb
rb + ΦT
k Φkra
;
Sélectionner a
(it)
new avec une loi normale tronquée en 0 de paramètres µ et σ
a(it) ← a
(it)
new;
n
Algorithme 1 : Algorithme global pour l'échantillonnage des centres, amplitudes et largeurs, modèle
à bruit symétrique
18
19. se fait selon les a priori (se référer à 2.4.1). On ache l'évolution des paramètres estimés au cours
des itérations avec le spectre bruité ainsi que la variation des paramètres au l des itérations. Dans
l'exemple 1, gure (2.2), on peut voir que l'algorithme a convergé avec une bonne estimation. En eet,
on remarque que les courbes relatives à l'évolution des paramètres au cours des itérations (gure 2.3)
comprennent deux phases :
une phase où ces paramètres varient beaucoup et sont parfois permutés. Dans cette phase l'échan-
tillonneur de Gibbs essaie de retrouver les raies dans le spectre et doit pouvoir essayer des solu-
tions assez distantes pour ne pas se retrouver dans un optimum local dans la suite. Cette phase
est appelée Burn-in ;
une deuxième phase où les paramètres se stabilisent relativement, ici aux alentours de la 30
e
itération (gure 2.3). Dans cette phase l'échantillonneur a tendance a raner la solution trouvée
et ceci est dû au fait que l'algorithme a convergé vers un maximum de l'a posteriori global.
L'algorithme fonctionne correctement et converge en 1.83 secondes
0 100 200 300 400 500 600 700 800 900 1000
−2
0
2
4
6
8
10
echantillons
vrai spectre
spectre estime
0 100 200 300 400 500 600 700 800 900 1000
−2
0
2
4
6
8
10
echantillons
vrai spectre
spectre estime
0 100 200 300 400 500 600 700 800 900 1000
−2
0
2
4
6
8
10
echantillons
vrai spectre
spectre estime
0 100 200 300 400 500 600 700 800 900 1000
−2
0
2
4
6
8
10
echantillons
vrai spectre
spectre estime
Figure 2.2 Modèle à bruit symétrique : itérations 1, 20, 50 et 150 (dans l'ordre lexicographique) de
l'échantillonneur de Gibbs.
Exemple 2
Dans l'exemple 2, An d'étudier les limites de cet algorithme, nous avons régénéré un autre spectre
avec les mêmes paramètres {K, N, σb}. Contrairement à l'exemple 1, nous observons que dans ce cas
de gure, nous sommes en présence de centres de raies très proches par rapport à leurs largeurs de
raies. On dit que deux centres de raies sont très proches lorsque la diérence, en valeur absolue, de
ces centres est inférieure à 3 fois la somme des deux largeurs de ces mêmes raies. mathématiquement,
19
20. 0 50 100 150 200 250 300 350
0
100
200
300
400
500
600
700
800
900
1000
variation des centres
Iterations
Centres
Centres a estimer
0 50 100 150 200 250 300 350
0
1
2
3
4
5
6
7
8
9
10
variation des amplitudes
Iterations
Amplitudes
Amplitudes a estimer
0 50 100 150 200 250 300 350
0
50
100
150
variation des largeurs
Iterations
Largeurs
Largeurs a estimer
Figure 2.3 Modèle à bruit symétrique : variation des centres, amplitudes et largeurs (dans l'ordre
lexicographique) de l'échantillonneur de Gibbs.
20
21. deux centres c1 et c2, de largeurs de raies w1 et w2 respectivement, sont très proches si et seulement
si |c1 − c2| 3(w1 + w2). On peut voir que même après 500 itérations (contrairement à 30 dans
l'exemple 1), l'algorithme est toujours dans la phase de Burn-in et n'arrive pas à estimer les raies
convenablement.
En eet les deux raies raie 1 et raie 2 de centres très proches sont estimées par une seule raie, tandis
que la raie 4 est estimée par deux raies. Nous pouvons remarquer que dans cet exemple, le résidu
(résultat de la soustraction du signal estimé depuis le signal à estimer, gure 2.5) prend des valeurs
très négatives. Ces valeurs négatives ne sont pas dues au bruit mais plutôt à une mauvaise estimation
des paramètres. Ce cas de gure est assez fréquent lorsqu'il s'agit de centres de raies très proches
comme dans la gure 2.4 pour les deux premiers centres de raie 1 et raie 2.
0 100 200 300 400 500 600 700 800 900 1000
−2
0
2
4
6
8
10
echantillons
vrai spectre
spectre estime
2
1
3 4
0 50 100 150 200 250
0
1
2
3
4
5
6
7
8
9
variation des amplitudes
Iterations
Amplitudes
Amplitudes a estimer
Figure 2.4 Modèle à bruit symétrique : 500
e
itération (à gauche). variation de l'amplitude au cours
des itérations de l'échantillonneur de Gibbs (à droite).
2.3 Modèle avec bruit asymétrique
0 100 200 300 400 500 600 700 800 900 1000
−4
−3
−2
−1
0
1
2
3
4
5
Residu final
echantillons
Figure 2.5 Modèle à bruit symétrique : résidu à la 500
e
itération de l'échantillonneur de Gibbs.
An d'éviter que l'algorithme ne puisse pas converger convenablement à cause de centres de raies
très proches, nous devons comprendre de plus près ce qui se passe. En eet lorsque deux raies sont
estimées par une seule (exemple gure 2.4 raie 1 et 2) nous retrouvons un résidu entre leurs centres
anormalement négatif (gure 2.5). Nous avons pensé à pénaliser fortement ce résidu négatif en modiant
21
22. la vraisemblance du bruit et donc de reconsidérer l'a priori relatif au bruit b comme la somme de deux
gaussiennes tronquées en 0, l'une à support positif et l'autre à support négatif et ceci pour empêcher
le résidu de prendre des valeurs très négatives.
2.3.1 Lois a priori
Les a priori sur les centres, amplitudes et largeurs restent les mêmes que pour le modèle avec bruit
symétrique tandis que l'a priori sur le bruit devient :
∀i ∈ {1, N}, bi ∼ N+
(0, rb+) + N−
(0, rb−)
P(bi) =
2
(2πrb+)
N
2
exp −
N
i=1
b2
i
2rb+
1IR+ (bi+) +
2
(2πrb−)
N
2
exp −
N
i=1
b2
i
2rb−
1IR∗− (bi−)
2.3.2 Lois a posteriori conditionnelles
L'a posteriori conditionnel relatif aux centres devient :
P(ck|c−k, a, w, rb, y) ∝ P(z|rb+, rb−)1I[1,N](c)
∝
N
i=1,zi 0
exp −
z2
i
2rb+
×
N
i=1,zi0
exp −
z2
i
2rb−
1I[1,N](c)
avec z le résidu, z = y −
K
j=1
ajΦ(cj, wj)
L'a posteriori conditionnel relatif aux amplitudes devient :
P(ak|c, a−k, w, rb, y) ∝ P(z|rb+, rb−) × exp
−a2
k
2ra
1IR+ (a)
∝
N
i=1,zi 0
exp −
z2
i
2rb+
×
N
i=1,zi0
exp −
z2
i
2rb−
× exp
−a2
k
2ra
1IR+ (a)
notons que cet a priori sur l'amplitude peut être exprimé de sorte qu'il soit directement simulé dans
l'échantillonneur de Gibbs, cependant, nous allons échantillonner nos amplitudes avec de la marche
aléatoire grâce à l'algorithme de Metropolis-Hastings.
L'a posteriori conditionnel relatif aux largeurs devient :
P(wk|c, a, w−k, rb, y) ∝ P(z|rb+, rb−)1I[1,wmax](w)
∝
N
i=1,zi 0
exp −
z2
i
2rb+
×
N
i=1,zi0
exp −
z2
i
2rb−
1I[1,wmax](w)
22
23. 2.3.3 Résultats et interprétation
Nous avons repris le même signal généré de la gure 2.4 et on a appliqué l'échantillonneur de
Gibbs avec le modèle à bruit asymétrique. Nous avons choisi un rapport bruit positif sur bruit négatif
rb+
rb−
= 100. La phase du Burn-in se termine aux alentours de la 200
e
. Contrairement au modèle à bruit
symétrique, l'échantillonneur de Gibbs à bruit asymétrique arrive à mieux converger.
0 100 200 300 400 500 600 700 800 900 1000
−2
0
2
4
6
8
10
echantillons
vrai spectre
spectre estime
0 50 100 150 200 250 300 350 400 450 500
0
1
2
3
4
5
6
7
8
9
variation des amplitudes
Iterations
Amplitudes
Amplitudes a estimer
Figure 2.6 Modèle à bruit asymétrique : 430
e
itération de l'échantillonneur de Gibbs.
NB : L'algorithme a convergé vers des valeurs légèrement au dessous des valeurs réelles comme on
peut le voir dans la gure 2.6. Ceci est dû au fait que la vraisemblance du bruit a été changé de telle façon
à considérer le bruit négatif très inférieur au bruit positif, or dans la réalité le bruit b est indépendant,
identiquement distribué suivant une loi gaussienne centrée en 0 et de variance rb. Cet a priori sur le bruit
contourne, certes, le problème de l'estimation de deux raies par une seule mais les amplitudes estimés
peuvent être légèrement inférieures aux amplitudes réelles. Plus le bruit est important plus l'estimation
des amplitudes est inférieure à la réalité. Pour résoudre ce problème, une solution est d'appliquer un
échantillonneur de Gibbs avec le modèle symétrique juste après que le modèle asymétrique ait convergé.
Nous observons dans la gure 2.7 que les amplitudes estimées retrouvent les vraies valeurs au bout
0 100 200 300 400 500 600 700 800 900 1000
−2
0
2
4
6
8
10
echantillons
vrai spectre
spectre estime
0 50 100 150 200 250 300 350 400 450
5
5.5
6
6.5
7
7.5
8
8.5
9
9.5
variation des amplitudes
Iterations
Amplitudes
Amplitudes a estimer
Figure 2.7 Modèle à bruit symétrique après le modèle asymétrique : 430
e
itération de l'échantillon-
neur de Gibbs.
de la 100
e
itération. L'algorithme a mit 200 itérations pour converger parce que le pas de la marche
aléatoire a commencé avec CX,0 (voir 2.6) sur les 100 premières itérations au lieu de prendre les derniers
pas du modèles asymétrique qui aurait été une meilleure solution pour la rapidité de convergence de
23
24. l'algorithme. Grâce à un premier passage pas le modèle asymétrique, nous avons pu contourner le
problème de l'estimation de deux raies par une et grâce au retour au modèle symétrique nous avons
pu avoir des amplitudes estimées qui ne sont pas inférieures aux vraies amplitudes.
2.4 Initialisation
Nous étudions la possibilité d'initialiser nos paramètres avec deux façons diérentes, en se basant
soit sur les a priori des paramètres, soit sur le résidu. À la n, nous procédons à la comparaison des
résultats entre l'initialisation selon le résidu du spectre et l'initialisation selon les a priori en termes
de temps de convergence et de résidu nal.
2.4.1 Initialisation selon a priori
Quant à l'initialisation des paramètres inconnus, une manière de faire est de les initialiser d'une
façon simple et naturelle. Pour cela, le choix des a priori peut faire l'aaire.
∀k ∈ {1, .., K}, ck
(1)
∼ U(1, N)
∀k ∈ {1, .., K}, ak
(1)
∼ N+
(0, ra)
∀k ∈ {1, .., K}, wk
(1)
∼ U(1, wmax)
2.4.2 Initialisation selon le résidu
Une deuxième façon de faire et d'initialiser les paramètres d'une façon plus adaptée aux données
et donc plus intelligente. En d'autres termes, l'idée consiste à avoir une initialisation qui ressemblerait
à une assez bonne solution à la base et ceci nous amène à vouloir placer au mieux les raies avant
de commencer l'échantillonneur de Gibbs. Une méthode consiste à chercher le maximum du résidu,
aecter ce maximum comme valeur initiale à l'amplitude a1
(1), le centre c1
(1) recevra la longueur
d'onde i de ce maximum trouvé et la largeur w1
(1) est initialisée grâce à la FWHM 'Full width at half
maximum' ou, en d'autres termes, la largeur à mi-hauteur. La raie a1
(1)Φ(c1
(1), w1
(1)) ainsi trouvée,
sera retranchée du résidu et on procède de la même sorte à l'initialisation de a2
(1), c2
(1) et w2
(1) jusqu'à
ce que toutes les raies soient initialisées. Les maximums du résidus ayant une largeur à mi-hauteur très
faible (inférieurs à un seuil SeuilW ne seront pas pris en considération comme de vraies raies mais sont
considérées comme du bruit et seront remis à 0 pour pouvoir passer aux maximums suivants. Cette
procédure d'initialisation selon le résidu est détaillée dans l'algorithme 2 :
2.4.3 Résultats
An d'étudier la limite de l'initialisation selon l'a priori, Nous avons générer 100 spectres diérents
et avons initialisé avec les deux méthodes citées dans cette section. Nous avons par la suite sélectionné
le spectre où on a trouvé le maximum de résidu après estimation des paramètres. La gure 2.8 montre
qu'il y a une raie qui n'a pas été estimée. En eet, la raie de centre c4 = 872 à été estimée par deux
24
25. Entrée : le spectre y
Sortie : les positions c, amplitudes a et les largeurs w estimés
Initialisation : Residu ← y SeuilW ← 2;
pour k de 1 à K faire
ResiduTmp ← Residu;
pour i de 1 à N faire
a(k) ← maximum(ResiduTmp);
c(k) ← antecedant(a(k));
w(k) ← FWHM(ResiduTmp, a(k), c(k));
si w(h) SeuilW alors
Residu ← Residu − a(k)Φ(c(k), w(k));
Break();
sinon
ResiduTmp(c) ← 0;
n
n
n
Algorithme 2 : Initialisation des paramètres selon le résidu du spectre
raies. Ces deux raies ont pris des amplitudes dont les valeurs varient en fonction des itération mais leur
somme s'ane pour trouver la vraie raie. Ceci est dû au fait que deux centres ont retrouvé la même
raie dans un intervalle d'itération relativement faible pour que la raie ne soit estimée par une seule
raie. La somme de ces deux raies fait la vraie raie tandis qu'une autre vraie raie n'est pas estimée.
2.5 Estimation séquentielle des paramètres, introduction raie par raie
Il y a des cas de gure où l'échantillonneur de Gibbs classique présente ses limites lorsqu'une seule
raie du spectre original est estimée par deux raies de centres superposés ou très proches. Ce qui nous
empêchera d'estimer toutes les raies. La gure 2.10 illustre ce problème. En eet la raie 3 a été estimée
par deux gaussiennes de centres très proches, tandis que les deux raies 4 et 5 ont été estimées par une
seule raie.
Une solution à ce problème serait d'implémenter l'échantillonneur de Gibbs sur trois paramètres
seulement c, a et w, c'est à dire une raie en prenant comme signal de donnée le résidu courant. On
introduit à chaque fois une raie φk et on l'échantillonne jusqu'à k = K. Après chaque ajout de pic, on
ré-estime en MCMC tout les paramètres ensemble car deux pics peuvent être mutuellement dépendants.
La procédure d'introduction des raies une par une est détaillée dans l'algorithme 3 :
Entrée : le spectre y pour k de 1 à K faire
Initialiser(ck, ak, wk)
Gibbs(ck, ak, wk) ;
Gibbs(c1, a1, w1..., ck, ak, wk).
n
Algorithme 3 : Estimation séquentielle des paramètres, introduction raie par raie
25
26. 0 100 200 300 400 500 600 700 800 900 1000
−1
0
1
2
3
4
5
6
7
8
9
echantillons
vrai spectre
spectre estime
0 50 100 150 200 250
0
100
200
300
400
500
600
700
800
900
1000
variation des centres
Iterations
Centres
0 50 100 150 200 250
0
1
2
3
4
5
6
7
8
9
variation des amplitudes
Iterations
Amplitudes
Figure 2.8 Initialisation selon a priori : estimation nale, évolution des centres, variation des am-
plitudes (dans l'ordre lexicographique)
Dans la gure 2.9, nous procédons à une initialisation selon le résidu pour le même spectre généré
précédemment dans la gure 2.8. Nous pouvons très bien voir que les centres ont correctement été
initialisés et que l'algorithme a convergé convenablement.
2.5.1 Estimation séquentielle des paramètres dépendants, prise en compte des
raies voisines
Lors de l'introduction d'une nouvelle raie, si celle-ci est susamment distante des autres raies
(|c1 −c2| 3(w1 +w2)), il peut s'avérer inutile de ré-échantillonner tout les paramètres des autres raies
car ceux-ci sont indépendants. Nous avons donc penser à ne ré-estimer que les raies susceptibles d'être
dépendantes de la raie nouvellement ajoutée. Dire que deux raies sont dépendantes ou indépendantes
dépendra de la positions des centres des deux raies en question et des largeurs de ces raies. Cette
dépendance doit être transitive. En d'autres termes, si φ1 dépend de φ2 et que φ2 dépend de φ3 alors
φ1 dépend de φ3. La procédure liée à la recherche des voisins d'une raie φk dans l'échantillonneur de
Gibbs est décrite dans l'algorithme 4 :
2.5.2 Résultats
L'échantillonneur de Gibbs arrive, grâce à l'estimation séquentielle des paramètres, à estimer conve-
nablement les raies.
26
27. 0 100 200 300 400 500 600 700 800 900 1000
−1
0
1
2
3
4
5
6
7
8
9
echantillons
vrai spectre
spectre estime
0 50 100 150 200 250
0
100
200
300
400
500
600
700
800
900
1000
variation des centres
Iterations
Centres
Figure 2.9 Initialisation selon le résidu : estimation nale (à gauche), et évolution des centres (à
droite)
0 100 200 300 400 500 600 700 800 900 1000
−1
0
1
2
3
4
5
6
7
8
9
echantillons
vrai spectre
spectre estime
2
1
4 5
3
0 50 100 150 200 250 300 350
0
100
200
300
400
500
600
700
800
900
1000
variation des centres
Iterations
Centres
Figure 2.10 Modèle classique à bruit symétrique : 330
e
itération, variation des centres au cours des
itérations de l'échantillonneur de Gibbs.
2.6 Pas de la marche aléatoire
L'échantillonneur de Gibbs consiste à aecter, à chaque itération, une valeur à chaque variable.
Lorsque la génération pseudo aléatoire de ces candidats ne peut pas se faire directement, on a recours
à l'algorithme de Metropolis-Hastings. L'algorithme consiste à élire un candidat selon une loi normale
centrée à la dernière valeur de la variable à it − 1 et d'écart-type σ. Au début de l'algorithme on a
tendance à vouloir brasser nos choix pour visiter le maximum de solutions distantes et plus on avance
dans les itérations moins on se permet d'aller chercher des candidats lointains. Le pas de la marche
aléatoire se concrétise au choix du σ et le fait que ce pas varie d'une façon optimale peut contribuer
positivement à la convergence de l'algorithme en termes de qualité et de temps de convergence. Haario
propose une méthode relativement simple sur la proposition d'un nouveau candidat dans l'algorithme
de Metropolis-Hastings qui ne requiert pas de simulations en parallèle pouvant demander beaucoup
de temps de calcul. Ce pas, d'après Haario, dépend de tout l'historique de la chaîne de Markov. Nous
avons dans la suite implémenté un pas de la marche aléatoire comme décrit dans l'article de Haario
puisque cela correspondait à notre besoin. Néanmoins, dans notre cas, nous avons considéré que le pas
de la marche aléatoire de ces chaînes Markoviennes ne dépendra que des 100 dernières itérations. La
covariance CX,it de ce pas de proposition est donc :
27
28. Entrée : le spectre y ;
pour k de 1 à K faire
initialiser(akφk) ;
Gibbs(akφk) ;
changement ← 1 ;
while changement = 1 do
changement ← 0 ;
pour l de 2 à k faire
pour j de 1 à NombreV oisin faire
si |cj − cl| 3(wj + wl) et φl ∈ φvoisines = 0 alors
φvoisines ← φvoisines ∪ φl;
changement ← 1 ;
n
n
n
end
Gibbs(φk, φvoisines).
n
Algorithme 4 : Estimation séquentielle des paramètres dépendants, raies voisines
0 100 200 300 400 500 600 700 800 900 1000
−1
0
1
2
3
4
5
6
7
8
9
echantillons
vrai spectre
spectre estime
Figure 2.11 Modèle Estimation séquentielle des paramètres : 1000
e
itération de l'échantillonneur de
Gibbs.
CX,it =
CX,0 it ≤ itRW
Sdcov(Xit−100, ..., Xit−1) + SdεXid it itRW
avec Sd = 2.4 et CX,0 la covariance initiale des paramètres.
Les covariances initiales des centres Cc,0 et des largeurs Cw,0 sont proportionnelles au nombre d'échan-
tillons N. La covariance initiale de l'amplitude Ca,0 est proportionnelle à la valeur maximale du spectre
d'origine.
Initialisation : εX, σ0, itRW ;
si it ≥ itRW alors
σX ← 2.42var(Xit−100...Xit−1) + 2.42εXid;
n
XCandidat ← N(min, max, Xit−1, σX) ;
Algorithme 5 : Pas de la marche aléatoire et choix du nouveau candidat
Dans la gure 2.12, nous générons un spectre quelconque dans le but d'observer le comportement
28
29. du pas de la marche aléatoire avec l'évolution des paramètres.
2.7 Convergence de l'algorithme
Pour déterminer si l'algorithme a convergé ou non, on a plusieurs critères qui nous permettent de
le savoir. Ces critères donnent des résultats diérents d'un point de vue précision et temps de calcul.
Il faut trouver une bonne valeur d'acceptation (seuil) pour que l'algorithme de convergence soit à la
fois rapide et fonctionnel. On a le choix de se baser soit sur l'évolution des paramètres aux cours des
itérations soit de se baser sur l'évolution du résidu. D'après Gewerke T-test,
Θ1−Θ2
V1
n1
+
V2
n2
∼ N(0, 1) s
Initialisation : n = 100, ConvergenceV erif = 10, α = 10−3, ResiduHist[], Converge = 0,
it = 0 ;
Threshold ←
√
2erfinv(1 − α) ;
si it ≥ 2 ∗ n et it%ConvergenceV erif = 0 alors
Converge ← 0;
fenetre1 ← (it − 2 ∗ n + 1) jusqu'à (it − n);
fenetre2 ← (it − n + 1) jusqu'à it;
σ2
residu1 ← var(ResiduHist(fenetre1));
σ2
residu2 ← var(ResiduHist(fenetre2));
Res1 ← mean(ResiduHist(fenetre1));
Res2 ← mean(ResiduHist(fenetre2));
TtestRes ←
Res1 − Res2
(σ2
residu1 + σ2
residu2)
n
;
Converge ← Converge ET |TtestRes| Threshold;
n
Algorithme 6 : Convergence de l'algorithme
2.8 Résultats et interprétation
On procède à une comparaison des modications que nous avons apporté à l'échantillonneur de
Gibbs classique. Pour cela, on dénit :
Version Bruit asymétrique Estimation séquentielle Initialisation selon résidu
1 X X X
2 X X
3 X X
4 X
5
Ensuite, nous avons fait le calcul, sur 100 spectres diérents, du temps de traitement et de l'erreur
quadratique moyenne de chaque version et avons tracé la courbe en échelle logarithmique en achant
les moyennes et écart-types.
On remarque que :
dans la version 1, la moyenne EQM1 ainsi que σEQM1 sont relativement grand. Cela veut dire
que cette version a souvent du mal à estimer les paramètres correctement
29
31. 1 1.5 2 2.5 3 3.5 4 4.5 5
−200
−100
0
100
200
300
400
500
version
EQM
1 1.5 2 2.5 3 3.5 4 4.5 5
1
2
3
4
5
6
7
8
9
10
11
version
Temps
Figure 2.13 Comparaison entre les 5 versions : erreur quadratique moyenne (à droite) et temps de
calcul (à gauche)
Les versions 2 et 3 ont parfois du mal à bien estimer les paramètres (puisque σEQM2,3 sont
relativement élevés). L'introduction raie par raie à partir de la 3
e
version et le modèle à bruit
asymétrique contribuent vivement à la bonne qualité de convergence ;
l'initialisation selon le résidu du spectre à partir de la 4
e
version améliore sensiblement à la fois
le temps de calcul et l'EQM par rapport à la 3
e
version ;
le bruit asymétrique dans la version 5 apporte un temps de calcul meilleur par rapport à la
version précédente avec une qualité de convergence équivalente.
An de tester la meilleure version sur un spectre d'une image astronomique réelle (NGC4254), nous
cherchons le maximum global dans tout ce cube de dimension 512 × 512 × 42 et nous appliquons notre
5
e
sur le spectre qui contient ce maximum.
0 5 10 15 20 25 30 35 40 45
−0.005
0
0.005
0.01
0.015
0.02
0.025
0.03
0.035
echantillons
vrai spectre
spectre estime
Figure 2.14 5
e
version de l'échantillonneur : Estimation d'un spectre extrait de NGC4254
2.9 Conclusion
Nous avons modélisé un spectre d'émission par des raies gaussiennes qu'on a probabilisé dans un
cadre bayésien. Grâce à des modications de l'échantillonneur de Gibbs classique qu'on a adopté, nous
avons réussi à améliorer au mieux notre algorithme du point de vue qualité et temps de convergence.
Ces améliorations se répercuteront lors du passage de la dimension 0 (un spectre), à la séquence de
spectres dans une seconde étape, et enn à la dimension 2 qui est l'image hyper-spectrale astronomique.
31
32. Chapitre 3
Estimation de raies sur une image
hyperspectrale
3.1 Introduction
Une galaxie est composée de plusieurs structures cinématiques (que nous appellerons composantes).
Ces composantes ne sont pas forcément présentes sur toute l'image hyperspectrale. Le modèle devra
considérer l'existence ou pas de ces composantes pour chaque pixel de l'image. De plus, nous considérons
que ces composantes sont connexes. Dans cette partie, nous considérons la décomposition de tous les
spectres d'une image hyperspectrale de taille X × Y × N (avec X et Y la dimension spatiale et N le
nombre de bandes) : il y a donc X × Y spectres de N échantillons.
Le modèle qui décrit ces spectres est déni comme la somme de plusieurs raies et d'un bruit :
∀s ∈ {1..X × Y } ys =
K
k=1
aksΦ(cks, wks)eks + bs (3.1)
avec cks, aks, wks respectivement le centre, l'amplitude et la largeur de la raie de la composante k
au spectre s et eks indique si la raie est présente (eks = 1) ou non (eks = 0) dans le spectre s. Les
paramètres cks, aks, wks sont dénis aux sites où eks = 1. Si eks = 0, on suppose que cks et wks ne
sont pas dénis et aks = 0 an d'assurer la douceur de l'évanescence des amplitudes aux bords des
composantes. Les aks situés en dehors de la composante ne seront pas estimés par la suite. Au nal,
nous aurons à estimer les cks, wks et les aks non nuls.
3.2 Lois a priori
Loi a priori sur le bruit
Le bruit b est supposé gaussien indépendant et identiquement distribué de moyenne nulle et de
variance rb :
∀s ∈ {1..X × Y }, ∀i ∈ {1, N}, bsi ∼ N(0, rb)
32
33. Loi a priori sur les paramètres des raies
Nous supposons qu'il n'y a pas d'interaction entre les structures cinématiques. Par conséquent,
les paramètres des raies d'une composante sont indépendants des paramètres des raies d'une autre
composante. cela se traduit mathématiquement par :
P(c, a, w) =
K
k=1
P(ck, ak, wk)
En outre, les centres, amplitudes et largeurs sont supposés indépendants les uns les autres :
P(ck, ak, wk) = P(ck)P(ak)P(wk)
Pour éviter les mauvais résultats d'une décomposition séquentielle, nous faisons l'hypothèse que
les paramètres évoluent d'une façon douce au sein d'une même composante. Une manière simple de
modéliser cette évolution est d'utiliser un champ de Markov [7]. Notre choix pour le champ de Markov
s'explique par le fait qu'on travaille sur deux dimensions spatiales et qu'on veuille réduire la complexité
du problème en réduisant la dépendance aux paramètres les plus inuents. Ces paramètres sont appelés
voisins et forment une clique.
Soit X un processus modélisé par un champ de Markov, alors sachant les voisins de s, Xs ne dépend
pas des sites de la composante k autres que les voisins appartenant à Vs (Vs étant l'ensemble des voisins
de s). En d'autres termes, nous considérons que la densité de probabilité en un site s connaissant tous
les autres sites correspond à la probabilité en un site s connaissant ses voisins :
P(Xs|X−s) = P(Xs|XVs )
avec X−s est X privé de Xs. Dans le 4-voisinage choisi, les cliques sont d'ordre 2 et sont notées (s, s )
D'après le théorème de HammersleyCliord [7], P(Xs|X−s) s'écrit également comme un champ de
Gibbs :
P(X) =
1
ZX
exp −
c∈C
U(Xc)
=
1
ZX
exp
−
(s,s )∈C
U(Xs, Xs )
avec C l'ensemble des cliques dénies par (eks = 1), Xc les deux paramètres formant la clique c et ZX
la constante de normalisation appelée fonction de partition :
ZX =
X
P(X)
où U(Xs, Xs ) est appelé énergie. Nous considérons un 4 voisinage pour chaque site. Ceci est équivalent
à dire que nous travaillons avec des cliques de deux éléments puisqu'on a un maximum de deux sites
qui sont deux à deux connectés entre eux.
Maximiser les lois a posteriori reviendra donc à minimiser cette énergie.
33
34. Loi a priori sur les centres des raies
L'hypothèse d'évolution douce des centres des raies s'interprète comme une diérence faible de deux
centres de même clique : Ainsi, minimiser (cks − cks )2 où s ∈ Vs revient à favoriser une douceur dans
l'évolution des paramètres. Ainsi :
U(cks, cks ) =
1
rC
(cks − cks )2
si s ∈ Vs (3.2)
où rC est un paramètre de réglage de la loi a priori. Donc la densité de probabilité s'écrit :
P(ck) =
1
Zc
exp
−
1
rCk
(s,s )∈C
(cks − cks )2
Remarquons que cette expression est une gaussienne multidimensionnelle de moyenne nulle et de
matrice variance-covariance σ Par ailleurs, pour contraindre les positions à rester dans le domaine
[1, N], on modie l'équation 3.2 en :
P(ck) =
1
Zc
exp
−
1
rCk
(s,s )∈C
(cks − cks )2
1I[1,N](cks)
avec Zc la constante de normalisation. Remarquons que le domaine [1, N] est relativement grand
comparé aux faibles valeurs de rCk. Nous pouvons donc considérer la troncature négligeable et supposer
que la constante de normalisation Zc = (2π)N |ΣC|, avec |Σc| le déterminant de Σc qui est la matrice
de variance-covariance
Loi a priori sur les amplitudes des raies
Pour les même raisons qu'avec les centres la loi a priori sur les amplitudes est :
P(ak) =
1
Za
exp
−
1
rAk
(s,s )∈C
(aks − aks )2
où rA est un paramètre de réglage de la loi a priori.
Loi a priori sur les largeurs des raies
De même, l'a priori sur les largeurs est :
P(wk) =
1
Zw
exp
−
1
rWk
(s,s )∈C
(wks − wks )2
où rW est un paramètre de réglage de la loi a priori.
Loi a priori sur les hyper-paramètres des raies
Les hyper-paramètres rC, rA et rW représentent la douceur de l'évolution des centres, amplitudes et
largeurs d'un pixel à un voisin. Plus leurs valeurs sont petites, plus l'évolution est douce. Nous pouvons
34
35. considérer un a priori suivant une loi uniforme ou une loi inverse gamma pour ces hyper-paramètres.
Ici, nous choisissons une loi uniforme :
rC ∼ U(0, rCmax)
P(rC) =
1
rCmax
1I[0,rCmax](rC)
rA ∼ U(0, rAmax)
P(rA) =
1
rAmax
1I[0,rAmax](rA)
rW ∼ U(0, rWmax)
P(rW ) =
1
rWmax
1I[0,rW max](rW )
3.3 Loi a posteriori globale
P(c, a, w, rb|y) ∝
1
(rb)
XY N
2
exp −
1
2
XY
s=1 ys − K
k=1 aksΦ(cks, wks) 2
rb
1IR+ (rb)
×
1
Zc
XY
s=1
exp −
(cks − ¯cks)2
2σ2
Cs
1I[1,N](cks)
×
1
Za
XY
s=1
exp −
(aks − ¯aks)2
2σ2
A
1IR+ (aks)
×
1
Zw
XY
s=1
exp −
(wks − ¯wks)2
2σ2
Ws
1I[1,wmax](wks)
× 1I[0,rCmax](rC)
× 1I[0,rAmax](rA)
× 1I[0,rW max](rC)
3.4 Lois a posteriori conditionnelles
La loi a posteriori conditionnelle de rb est :
P(rb) ∝
1
(rb)
XY N
2
exp −
1
2
XY
s=1 ys − K
k=1 aksΦ(cks, wks) 2
rb
1IR+ (rb)
35
36. Loi a posteriori conditionnelle sur les centres des raies
P(cks|ckv, rC) ∝ exp −
1
2
ys − K
k=1 aksΦ(cks, wks) 2
rb
exp −
(cks − ¯cks)2
2σ2
Cs
1I[1,N](cks)
avec ¯c = 1
Nv
s ∈Vs
cs et σ2
C = rC
2Nv
Loi a posteriori conditionnelle sur les amplitudes des raies
P(aks|akv, rA) ∝ exp −
1
2
ys − K
k=1 aksΦ(cks, wks) 2
rb
exp −
(aks − ¯ak)2
2σ2
A
1IR+ (aks)
avec ¯a = 1
Nv
s ∈Vs
as et σ2
A = rA
2Nv
Loi a posteriori conditionnelle sur les largeurs des raies
P(wks|wkv, rW ) ∝ exp −
1
2
ys − K
k=1 aksΦ(cks, wks) 2
rb
exp −
(wks − ¯wks)2
2σ2
Ws
1I[1,wmax](wks)
avec ¯w = 1
Nv
s ∈Vs
ws et σ2
W = rW
2Nv
Loi a posteriori conditionnelle sur les hyper-paramètres
P(c|rc) =
1
Zc
exp
−
1
2rC
(s,s )∈C
(cks − cks )2
1I[1,N](cks)
ce qui revient à dire que
P(c|rc) =
1
Zc
exp −
1
2
cT
Σc 1I[1,N](cks)
Or, P(c|rc) suit une loi normale multidimentionnelle :
P(c|rc) =
1
(2π)N/2|ΣC|1/2
exp −
1
2
(c − µ)T
Σ−1
(c − µ) 1I[1,N](cks)
36
37. avec µ = 0 Σ−1 = 1
rc
M ⇔ Σ = rcM−1
donc,
P(c|rc) =
1
(2π)N/2rN
c |M−1|
exp −
1
2
cT
Σ−1
c 1I[1,N](cks)
∝
1
rN
c
exp −
1
2
cT
Σ−1
c 1I[1,N](cks)1I[0,rmax](rC)
∝
1
rN
c
exp −
1
2rC
cT
Mc 1I[1,N](cks)1I[0,rmax](rC)
⇒ rC ∼ Iγ α = N − 1, β =
cT Mc
2
or cT Mc = (s,s )∈C(cks − cks )2 /2 ou *2
3.5 Implémentation des lois a posteriori conditionnelles dans l'échan-
tillonneur de Gibbs
échantillonnage des centres et largeurs des raies
En ce qui concerne les centres et les largeurs, au milieu des composantes nous aurons toujours
Nv = 4 voisins, néanmoins aux bords de la composante nous pourrons avoir un nombre de voisin
inférieur. Dans ces cas là, nous aurons une variance et moyenne des centres et largeurs diérente telle
que ¯c = 1
Nv
s ∈Vs
cs et σ2
C = rC
2Nv
échantillonnage des amplitudes des raies
Nous avons supposé que les amplitudes aks dénies hors de la composante étaient égales à 0. Dans
ce cas, contrairement au largeurs et centres, nous aurons toujours un 4 voisinage
3.6 Initialisation
An d'observer ce que fait l'algorithme, nous avons travaillé sur des données réelles fournies par
les astronomes. On peut voir sur la gure (3.1) l'image hyper-spectrale de la galaxie NGC 4254. Nous
achons la moyenne sur chaque spectre en niveau de gris.
Par la suite, an d'avoir une bonne initialisation de notre algorithme nous allons ltrer chaque
spectres (chaque pixel) an d'obtenir les maximum locaux signicatifs qui représentent les amplitudes
des raies potentielles. Nous considérons le maximum global sur toute l'image comme raie appartenant à
la composante à estimer. A partir de ce pixel contenant ce spectre nous procédons avec un algorithme de
croissance de régions à retrouver les maximums locaux qui correspondent le plus aux raies sélectionnées
des spectres voisins. Pour la sélection nous avons utilisé les distances euclidiennes sur les centres
,largeurs et amplitudes des diérentes raies et avons dénis un seuil d'acceptation au dessous duquel
37
38. Figure 3.1 M99 (ou NGC 4254) : Moyenne de chaque spectre en niveau de gris.
nous considérons la raie comme appartenant à la composante. L'initialisation de la première composante
avec la croissance de région à seuil d'acceptation donne la gure (3.2)
Figure 3.2 Initialisation de la première composante de la galaxie NGC 4254.
3.7 Résultats et interprétation
A partir de cette initialisation, nous lançons l'algorithme jusqu'à convergence en enregistrant Les
hyper-paramètres rC, rA et rW au l des itérations
Nous remarquons que beaucoup de sites se trouvant à l'intérieur de la composante estimée n'ont
38
39. pas été découvert par l'algorithme de croissance de région car ils ne satisfont pas le seuil de la distance
euclidienne. Cependant, nous pensons que ces sites font naturellement partie de la composante Pour
cela, nous avons décidé de faire une dilatation de la composante estimée là où l'amplitude de la raie
en question est supérieure à un seuil proportionnel à la variance du bruit. Ensuite, nous lançons
l'algorithme et nous dilatons jusqu'à ce qu'il n'y ai plus découverte de nouveaux sites. à la convergence
de l'algorithme de gibbs, nous remarquons que l'évolution des centre, amplitudes et largeurs est plus
douce. gure ( 3.3).
Figure 3.3 évolution des hyper-paramètres rC, rA et rW à gauche et centres, amplitudes et largeurs
estimés à droite ( dans l'ordre de haut en bas) après dilatation de la galaxie NGC 4254.
Une fois la première composante estimée, nous soustrayons cette dernière du cube original an de
faire le même processus pour estimer les autres raies. On peut voir dans la gure (3.4) le résidu trouvé
suite à la soustraction de la composante estimée de l'image originale.
Par la suite, nous cherchons le maximum global du résidu ainsi trouvé et nous initialisons, grâce
à la croissance de région (comme faîte précédemment pour la première composante), la deuxième
composante. Les paramètres de cette deuxième composante sont à leurs tour échantillonnés La gure
(3.5) montre les deux composantes
Il est à noter que d'après les astronomes de l'observatoire de Strasbourg, la deuxième composante ne
se trouve pas à l'endroit estimé selon le maximum de résidu. Ceci est probablement dû soit à un résidu
de la première composante causé pas la douceur imposé par les sites voisins soit par le rapport signal
sur bruit qui est très élevé dans la deuxième et troisième composante de cette galaxie. Nous visualisons
une ligne de spectres là où les deux composantes existent et nous remarquons que l'estimation est
39
40. Figure 3.4 Résidu après l'estimation de la première composante de la galaxie NGC 4254.
Figure 3.5 Estimation de deux composantes de la galaxie NGC 4254. : La première composante est
en jaune, la deuxième en bleu-ciel, en bleu absence des deux composantes et en marron lorsqu'il y a
intersection
40
41. moyennement bonne même si le signal est bien estimé. Ceci est dû au fait que l'algorithme se retrouve
dans un maximum local de l'a posteriori qui fait que l'estimation des composantes est souvent inversées.
En d'autres termes, la première raie est estimé par la seconde et la seconde par la première (3.6). L'a
posteriori global pourrait être minimisé si on essayait pour chaque spectre contenant deux ou plusieurs
raies (ici deux) de calculer l'a posteriori en inversant les raies estimées et en prenant la décomposition
minimisant cet a posteriori.
Figure 3.6 Estimation de deux composantes de la galaxie NGC 4254. Les composantes sont souvent
inversées
An de résoudre ce problème, nous avons parcouru les pixel de l'image où il y a plus d'une raie
et essayé toutes les combinaisons d'inversion. Si Le nouvel a posteriori global est inférieur à l'ancien
nous entamons l'inversion. Nous répétons le même algorithme plusieurs fois jusqu'à ce qu'il n'y ait
plus d'inversion. Le résultat de cet algorithme donne la gure (3.7) : Le résultat semble améliorer l'a
posteriori néanmoins le problème persiste un peu sur d'autres spectres de l'image
41
42. 5 10 15 20 25 30 35 40
0
1
2
3
4
5
6
7
8
8 spectres
5 10 15 20 25 30 35 40
0
1
2
3
4
5
6
7
8
8 spectres
Figure 3.7 Solution face au problème des raies inversées : à gauche prétraitement, à droite post
traitement
42
43. Conclusion et perspectives
3.8 Conclusion
Le but de ce travail était de développer un outil permettant de décomposer conjointement les
spectres. La modélisation s'est fait dans un cadre bayésien avec un échantillonnage MCMC. Le choix
du MCMC s'est expliqué par le fait que la fonction à optimiser est multimodale et de grande dimension.
Nous avons opté pour l'échantillonneur de Gibbs an de ne pas échantillonner l'a posteriori global
directement. Au départ, nous avons procédé par la décomposition sur un seul spectre de l'image. Nos
contributions étaient l'introduction du modèle à bruit asymétrique, l'initialisation selon le résidu et
l'estimation séquentielle des paramètres. Nous avons, par la suite, mesuré ce qu'on a gagné en temps de
calcul et en qualité de décomposition grâce à ces contributions. En second lieu, nous avons échantillonné
tous les spectres de l'image. Ce travail est une première dans la décomposition de spectres sur deux
axes spatiaux et qui fait de l'échantillonnage MCMC conjointement. Nous avons modélisé le problème
dans le cadre d'un champ de Markov et ceci pour décomposer le spectre en paramètres qui évoluent
lentement. Nous avons essayé les algorithmes que nous avons développés sur la galaxie NGC4254 (ou
M99), image fournie par les astronomes de l'OAS. L'algorithme fonctionne très bien sur la première
composante de la galaxie en un temps acceptable malgré le faible rapport signal sur bruit et la grande
dimension de l'a posteriori à optimiser. Cependant, l'algorithme a parfois du mal à estimer les autres
composantes ayant un signal sur bruit plus faible.
3.9 Perspectives
Nous pourrons, à la suite de ce travail, tester l'algorithme sur des données simulées an de pouvoir
trouver des moyens permettant d'estimer les raies avec un a posteriori global moindre. Ceci est dû au fait
qu'on connaît à l'avance les données simulées. Nous pourrons estimer le nombre de composantes à l'aide
du critère BIC. Nous pourrons aussi reprendre le modèle à bruit asymétrique dans l'échantillonnage
bidimensionnel qui pourrait minimiser encore plus l'a posteriori global.
43
44. Annexe A
Loi a posteriori conditionelle relative à
l'amplitude
On procède à la séparation de l'amplitude en question du reste des inconnues
p(ak|c, a−k, w, rb, y) ∝ exp
−
y −
K
j=1,j=k
ajΦ(cj, wj) − akΦ(ck, wk)
2
2rb
−
a2
k
2ra
1IR+ (a) (A.1)
On notera xk = y −
K
j=1,j=k
ajΦ(cj, wj), où Φk = Φ(ck, wk). L'équation (A.1) devient :
p(ak|c, a−k, w, rb, y) ∝ exp −
xk − akΦ(ck, wk) 2
2rb
−
a2
k
2ra
1IR+ (a)
∝ exp −
xk − akΦk
2
2rb
−
a2
k
2ra
1IR+ (a) (A.2)
∝ exp −
xT
k − akΦT
k (xk − akΦk)
2rb
−
a2
k
2ra
1IR+ (a) (A.3)
∝ exp −
xT
k xk − xT
k Φkak − ΦT
k xkak + ΦT
k Φka2
k
2rb
−
a2
k
2ra
1IR+ (a)
∝ exp −
xT
k xkra − xT
k Φkra + ΦT
k xkra ak + rb + ΦT
k Φkra a2
k
2rarb
1IR+ (a)
∝ exp −
xT
k xkra − 2xT
k Φkraak + rb + ΦT
k Φkra a2
k
2rarb
1IR+ (a)
∝ exp −
C + Bak + Aa2
k
2rarb
1IR+ (a)
(A.4)
44
45. avec C = xT
k xkra, B = −ra xT
k Φk + ΦT
k xk et A = rb + ΦT
k Φkra
Or on a :
exp −
(ak − µ)2
2ϕ
= exp −
a2
k − 2µak + µ2
2ϕ
Par identication avec l'équation (A.4), pour avoir le coecient lié à ak
2 = 1, il faut diviser par A
exp −
C + Bak + Aa2
k
2rarb
∝ exp −
C
A + B
A ak + a2
k
2rarb
A
1IR+ (a)
∝ exp −
C
A
2rarb
A
× exp −
B
A ak + a2
k
2rarb
A
1IR+ (a)
∝ exp −
C
A − D
2rarb
A
× exp −
D + B
A ak + a2
k
2rarb
A
1IR+ (a)
avec D la constante qui vérie que D + B
A ak + a2
k = µ2 − 2µak + a2
k. De plus exp −
C
A
−D
2rarb
A
ne dépend
pas de ak
exp −
C
A − D
2rarb
A
× exp −
D + B
A ak + a2
k
2rarb
A
∝ exp −
D + B
A ak + a2
k
2rarb
A
1IR+ (a)
avec
B
A = −2µ et
2rarb
A = ϕ
ϕ =
rarb
rb + ΦT
k Φkra
µ =
1
2
ra xT
k Φk + ΦT
k xk
rb + ΦT
k Φkra
⇔
ϕ =
rarb
rb + ΦT
k Φkra
µ =
raxT
k Φk
rb + ΦT
k Φkra
⇔
ϕ =
rarb
rb + ΦT
k Φkra
µ =
ϕ
rb
xT
k Φk
⇔
σ =
rarb
rb + ΦT
k Φkra
µ =
σ2
rb
xT
k Φk
Donc, l'expression de la loi a posteriori conditionelle relative à l'amplitude est une gaussienne de
moyenne σ =
rarb
rb + ΦT
k Φkra
et d'écartype µ =
σ2
rb
xT
k Φk
Ainsi : p(ak|c, a−k, w, rb, y) ∝ 1
rarb
rb + ΦT
k Φkra
exp
−
ak−
σ2
rb
xT
k Φk
2
2
rarb
rb + ΦT
k Φkra
1IR+ (a)
45
47. Annexe B
L'échantillonneur de Gibbs
Nous avons modélisé les raies et le bruit et le problème revient à estimer ces 3K + 1 variables pour
optimiser ce modèle. Nous nous trouvons face à trois contraintes majeures :
la loi a posteriori globale à optimiser est multimodale (elle contient des optimums locaux autre
que l'optimum global) ;
la fonction est de dimension 3K + 1 et il n'est pas possible de visiter tout l'espace en un temps
acceptable lorsque K commence à prendre des valeurs assez grandes ;
l'a posteriori global est dicile à échantillonner directement.
Les deux premières contraintes nous incitent à adopter une approche du type Monte Carlo par Chaines
de Markov [Markov Chain Monte Carlo, (MCMC)] an de trouver une bonne solution en un temps
relativement faible et de ne pas converger dans des optimums locaux. Pour contourner la 3
e
contrainte,
l'échantillonneur de Gibbs permet d'échantillonner séquentiellement chaque variable connaissant toutes
les autres variables à un instant donné. De ce fait, nous avons exprimé séparément les a posteriori condi-
tionnels de nos variables et ceci générera, donc, 3K +1 chaînes de Markov. Classiquement, l'algorithme
de l'échantillonneur de Gibbs est comme suit :
Entrée : Les données y
Sortie :Les paramètres X estimés optimisant l'a posteriori global
Initialisation : X(0)
;
pour it de 1 à IT faire
X
(it)
1 ∼ P(X1|X
(it−1)
2 , X
(it−1)
3 , ..., X
(it−1)
K X
(it)
2 ∼ P(X2|X
(it)
1 , X
(it−1)
3 , ..., X
(it−1)
K ...
X
(it)
K ∼ P(XK|X
(it)
1 , X
(it)
2 , ..., X
(it)
K−1
n
Algorithme 7 : Algorithme de Gibbs
Annexe
47
48. Annexe C
Lois a priori sur les paramètres des raies
dans une image hyperspectrale
Soit X le processus modélisé par un champ de Markov. Nous considérons qu'un spectre s a 4 voisins :
P(Xs) ∝ exp −
1
rX
s
(Xs − Xs )2
∝ exp −
2
2rX
(Xs − Xs1)2
+ (Xs − Xs2)2
+ (Xs − Xs3)2
+ (Xs − Xs4)2
∝ exp −
1
2rX
2 4X2
s + (X2
1 + X2
2 + X2
3 + X2
4 ) − 2Xs(X1 + X2 + X3 + X4)
∝ exp −
1
2rX
8X2
s + 2(X2
1 + X2
2 + X2
3 + X2
4 ) − 16Xs
X1 + X2 + X3 + X4
4
On pose K = 2(X2
1 + X2
2 + X2
3 + X2
4 ) et ¯X = X1+X2+X3+X4
4
P(Xs) ∝ exp −
1
2rX
8 X2
s +
K
8
− 2Xs
¯X
∝ exp −
1
2rX
8 X2
s − 2Xs
¯X exp −
1
2rX
K
8
∝ exp −
1
2rX
8 X2
s − 2Xs
¯X
∝ exp −
1
2σ2
X
X2
s − 2Xs
¯X exp −
1
2σ2
X
¯X2
avec σ2
X =
rX
8
∝ exp −
1
2σ2
X
X2
s − 2Xs
¯X + ¯X2
∝ exp −
1
2σ2
X
Xs − ¯X
2
∼ N( ¯X, σ2
X)
48
49. Bibliographie
[1] Christian P. Robert et George Casella (2004) New York : Springer Texts in Statistics, 2nd edition.
[2] Haario, H., Saksman, E. et Tamminen, J. (2001) An adaptive Metropolis algorithm Bernoulli 7(2),
223-242
[3] V. Mazet, (2011) IEEE Signal Processing Letters, vol. 18, no. 3, March 2011
[4] Marcelo Pereyra, Philip Schniter, Émilie Chouzenoux, Jean-Christophe Pesquet, Jean-Yves Tour-
neret, Alfred O. Hero et Steve McLaughlin IEEE Journal Of Selected Topics in Signal Processing,
vol. 10, no. 2, March 2016
[5] Nicholas Metropolis, Arianna W. Rosenbluth, Marshall N. Rosenbluth and Augusta H. Teller The
Journal of Chemical Physics vol. 21. no. 6 June 1953
[6] Stephen P. Brooks et Gareth O. Roberts Statistics and Computing (1998) 8, 319±335
[7] Ross Kindermann and J. Laurie Snell Contemporary Mathematics vol. 1, 1950
[8] Geman, S and Geman, D. (1984). Stochastic relaxation, Gibbs distributions and the Bayesian
restoration of images.
[9] A. Jasra, C. Holmes, and D. Stephens, Markov chain Monte Carlo methods and the label switching
problem in Bayesian mixture modeling, Statistical Science, vol. 20, no. 1, pp. 5067, 2005.
49