5. Suivi temporel 87
5.5. Calcul du mapping M n ∗
5.5.1. Modélisation et contraintes du calcul du mapping
Le calcul d’un mapping entre les cellules-mères, c’est-à-dire les régions de la
segmen-tation S◦Tr◦T
n∗(nous omettrons les transformations dans le reste de la section, afin
d’alléger les notations), et les cellules-filles, c’est-à-dire les régions de la segmentation
S
′, a pour but de déterminer les lignages des cellules-mères. Nous allons modéliser les
hypothèses de lignages sous forme d’un graphe valué, et ensuite résoudre le calcul des
lignages grâce à un algorithme de flot. Certaines hypothèses, plutôt de nature biologique,
vont nous aider à contraindre notre problème, soit directement lors de la résolution du
Figure 5.5.: Distance d’une cellule-fille à une cellule-mère. A gauche : méthode de calcul
de la distance, à droite, en rose, lieu des pointsp tels qued(ci, p)< dmax.
calcul du flot, soit a posteriori dans une étape de prétraitement. Étant donné que nous
avons déjà calculé une transformation non-linéaire qui est supposée superposer les deux
images I et I
′, les cellules-mères doivent être « proches » des cellules-filles. Nous allons
donc utiliser un critère de distance pour qualifier les lignages possibles.
5.5.1.1. Définition d’une distance entre cellules
Pour sélectionner les cellules-filles c
′jpouvant candidater à la lignée de la cellule ci,
nous utilisons une mesure de distance entre cellules-filles et cellules-mères, qui est
na-turellement dissymétrique. La raison est qu’une fille n’a qu’une seule mère alors qu’une
mère peut avoir plusieurs filles, ce qui se traduit géométriquement par le fait que
plu-sieurs filles peuvent être incluses dans une cellule-mère après le recalage non-linéaire,
tandis que l’inverse est impossible. La mesure de distance entre une cellule-fillec
′jet une
cellule-mèreciest alors :
– 0, si le barycentre de la cellule-fille c
′j
est inclus dans la cellule-mèreci
– la distance du barycentre de la cellule-fille c
′jà la frontière de la cellule-mère ci
sinon. Pour un calcul rapide de cette distance, nous l’approximons en traçant une
ligne 3D entre les centres de masse des cellules ci et c
′j
, et la distance considérée
sera celle qui sépare le barycentre de la cellule-fillec
′jdu premier point de la
cellule-mèrecirencontré le long de cette ligne (voir figure 5.5). Cette méthode nous permet
d’approximer la distance recherchée (entre le barycentre de c
′j
et la surface de ci)
sans avoir recours au calcul d’une carte de distance exacte, qui peut être coûteux en
temps de calcul. Il faut cependant noter que cette manière de procéder peut produire
une mauvaise approximation de la distance recherchée si les cellules observées ne sont
pas convexes (comme lorsque l’on observe les deux cellules qui forment l’orifice des
stomates par exemple). Il vaudrait mieux dans ce cas recourir au calcul d’une carte
de distance plus précise.
Figure 5.6.: Construction des hypothèses de lignages entre les cellules-mères (à gauche,
en bleu) et les cellules-filles (à droite, en rouge).
5.5.1.2. Topologie des filiations
A priori, tout cellule-mère pourrait être associée à toute cellule-fille. La combinatoire
de la recherche du mapping serait alors très grande. Nous présentons ici les différentes
considérations et hypothèses qui vont nous guider pour la construction du graphe.
– A priori, toute cellule au temps t a une (s’il n’y a pas eu de division cellulaire)
ou plusieurs (il y a eu des divisions cellulaires) cellules correspondantes au temps
t
′= t+ ∆t. De même, chaque cellule du temps t
′= t+ ∆t a une (et une seule)
cellule correspondante dans au tempst. Malheureusement, soit à cause d’erreurs de
segmentation, soit parce les cellules en question peuvent ne pas être dans le champ
de vue (cf section 5.1.1.3), ces correspondances peuvent ne pas être avérées entre
les segmentationsS et S
′. Pour répondre à ce problème, nous allons ajouter deux
cellules virtuellesθI et θJ, respectivement aux cellules de S etS
′.θI sera donc une
cellule-mère virtuelle pour les cellules de S
′dont la cellule-mère réel n’est pas dans
S, tandis que θJ sera une cellule-fille virtuelle pour les cellules de S dont aucune
descendance ne se trouve dansS
′.
– Nous utilisons dans la suite cette définition de la distance entre une cellule-fille et
une cellule-mère et nous dirons qu’une cellulec
′j
est une fille possible d’une cellulec
isi la distanced(ci, c
′j)est inférieure à une valeur seuildmax,dmaxétant un paramètre
de la méthode. En prenant une distancedmax de l’ordre du diamètre d’une cellule,
le nombre de cellules-mères auxquelles chaque fille peut être appariée est de l’ordre
de la dizaine, ce qui réduit considérablement la combinatoire du problème.
Figure 5.7.: Le graphe biparti final utilisé pour représenter les hypothèses de lignages
entre cellules-mères (en bleu) et cellules filles (en rose). Ce graphe sera
utilisé pour accueillir un flot d’appariements dont le coût va être minimisé
progressivement.
5.5.1.3. Construction du graphe pour le calcul du flot
Afin de pouvoir exprimer la recherche des lignages comme un calcul de flot, il faut
d’une part poursuivre la construction topologique du graphe, et ensuite valuer les arcs
du graphe.
La poursuite de la construction du graphe est assez simple, nous ajoutons un sommet
source s auquel nous connectons toutes les cellules-mères, y compris la cellule virtuelle
θI, par des arcs sources, et un sommet collecteur t auquel nous connectons toutes les
cellules-filles, y compris la cellule virtuelles θJ, par des arcs collecteurs. De plus, nous
ajoutons un arc retour qui connecte t à s. La topologie finale du graphe est présentée
dans la figure 5.7.
Le principe de la recherche des lignages comme un calcul de flot est de considérer qu’il
y a une filiation entre une cellule-mère ci et une cellule-fillec
′js’il y a un flot qui passe
par l’arc reliant les deux cellules (cf figure 5.6). Nous allons donc définir les meilleurs
lignages comme ceux réalisant un flot admissible de coût minimal pour le graphe de la
figure 5.7, les valeurs de flot étant des nombres entiers. Pour cela, il nous faut valuer les
arcs de ce graphe, en terme de capacité et de coût.
chaque arc, nous allons donc définir une capacité minimale, qui représente donc le
minimum de flot devant passer par cet arc, et une capacité maximale, qui représente
donc le maximum de flot pouvant passer par cet arc.
• Considérons un arc reliant une cellule-mère c
i(cela peut être la cellule virtuelle
θI) à une cellule-fille c
′j(qui peut aussi être la cellule virtuelle θJ), les capacités
minimale cij et maximale Cij associées à cet arc sont respectivement de 0 et de
1 : si le flot est de 1, cela signifie quec
′j
est bien de la descendance dec
i, sinon sa
valeur est de 0.
• Considérons les arcs sources, en commençant par ceux qui relient la sourcesà une
« vraie » cellule-mère c
i. Leur capacité minimale est de 1, afin de forcer
l’attribu-tion d’une filial’attribu-tion à la celluleci, tandis que leur capacité maximale dépendra des
hypothèses que l’on fera sur le nombre de divisions qui ont pu avoir lieu durant
l’intervalle de temps ∆t, ce sera donc le nombre maximal de filles que peut avoir
une cellule-mère, nombre que nous noterons Ndiv. L’arc source qui relie la source
s à la cellule virtuelle θI est particulier : sa capacité minimale est de 0, pour
le cas où cette cellule virtuelle n’est pas utilisée (toutes les cellules-filles seront
alors associées à de « vraies » cellules-mères), et sa capacité maximale est égale
au nombre de « vraies » cellules-filles, NJ (pour le cas où toutes les cellules-filles
sont associées à la cellule-mère virtuelleθ
I).
• Considérons les arcs collecteurs, en commençant par ceux qui relient les « vraies »
cellules-fillesc
′jau collecteurt. Leurs capacités minimale et maximale valent toutes
deux 1, afin de forcer l’attribution d’une et d’une seule paternité à la cellule c
′j
.
L’arc collecteur qui relie la cellule virtuelle θJ au collecteur t est particulier : sa
capacité minimale est de 0, pour le cas où cette cellule virtuelle n’est pas utilisée
(toutes les cellules-mères seront alors associées à de « vraies » cellules-filles), et sa
capacité maximale est égale au nombre de « vraies » cellules-mères, NI (pour le
cas où toutes les cellules-mères sont associées à la cellule-fille virtuelle θJ).
• Considérons enfin l’arc retour, qui relie le collecteur t à la source s, sa capacité
minimale est demax (NI, NJ), tandis que sa capacité maximale est deNI+NJ.
– Le coût d’un arc définit le prix à payer par une unité de flot pour passer par cet
arc. Nous n’allons ne définir de coût que pour les arcs reliant les cellules-mères aux
cellules-filles, c’est-à-dire ceux présentés dans la figure 5.6.
• Le coûtγij d’un arc reliant une « vraie » cellule-mèreci à une « vraie » cellule-fille
c
′j
sera fonction de la distance de la cellule ci à la cellule c
′j
afin de favoriser les
filiations où les cellules-filles se superposent à leur cellule-mère (après application
de la transformation non-linéaireT
∗), on le définit par
γij = d(ci, c
′
j