• Aucun résultat trouvé

Quelques considérations pratiques

III. Compression

7. Ondelettes sans rebonds

8.1. Éléments structurants suivant le mouvement (ESM)

8.1.3. Quelques considérations pratiques

8.1.3.1. Disparition et occlusion des objets

Mais de fait, que se passe-t-il en cas de disparition de l'objet sur lequel notre point se trouve ? Bien évidemment, cela dépend de la facon dont notre champ de mouvement

x

(a) ST

x

(b) T S

Fig. 8.2.: Voisinage issu d'un ESM, avec un champ non nul. À gauche, les voisins sont obtenus en appliquant d'abord le déplacement spatial, puis ensuite le déplace- ment temporel (S-T). À droite, les voisins sont obtenus en appliquant d'abord le déplacement temporel, puis ensuite le déplacement spatial (T-S). Les deux constructions ne sont pas identiques.

gère cette situation. Certains modèles se permettent de pointer hors de l'image, ou de signaler qu'un correspondant n'a pas été trouvé pour le point ou la région considéré.

Une première possibilité pour traiter cette question est de poser par convention :

v(t, x, y) = (+∞, +∞).

Pour notre élément structurant, cette situation revient à se trouver sur un bord : le point est projeté à l'inni, et notre traitement, qui s'eectue sur l'image, subit, dans le cadre pratique, l'intersection du voisinage avec l'image :

VM,I(t, x, y) = VM(t, x, t) ∩ I.

Il est à noter que, de facon similaire au cas de l'élément structurant purement spatial au bord, l'intersection avec le cadre change la cardinalité de l'élément structurant. Il faut donc être prudent dans le cas d'utilisation de ltres de rang par exemple. Il s'agit bien d'un inconvénient puisqu'il y a toutes les chances que le nombre de voisinages n'ayant pas la cardinalité maximale augmente par rapport au traitement purement spatial.

L'autre possibilité est que le modèle donne un vecteur de mouvement incorrect qui pointe néanmoins approximativement vers le lieu de la disparition de l'objet. Dans ce cas, nous en revenons au cas d'une frontière de notre objet : de même qu'il n'est pas possible, ni raisonnable, de déformer un élément structurant dans l'espace de manière à complètement éviter les frontières des objets, il n'est pas anormal que, lorsqu'un objet disparaît, ses voisins temporels ne lui appartiennent plus. Cela permet par ailleurs que les objets puissent être reconnectés entre eux dans le cas d'une ligne de partage des eaux avec marqueurs ou d'une cascade.

Dans le cas des éléments T-S, il est aussi possible que l'image du centre par l'opérateur de compensation soit un pixel à la bordure de l'image. Les voisins de l'image du centre

seront donc éventuellement hors de l'image. A l'inverse, l'image par l'opérateur de com- pensation d'un point du bord n'est pas nécessairement elle-même au bord. Dans ce cas, les voisins directs du point image seront tous à l'intérieur de l'image.

8.1.3.2. Convergence et divergence du champ de mouvement

Des points en moins, des trous en plus Sur certains points, le champ de mouvement

converge. Cela signie qu'il est possible que deux points distincts dans un élément struc- turant 3D se retrouvent associés au même point dans un élément structurant de type S-T après utilisation de l'opérateur de compensation (point B sur la gure 8.3). Il en résulte donc un changement de cardinalité du voisinage par rapport au voisinage obtenu par l'élément structurant 3D classique. À l'opposé, à certains endroits, le champ de mou- vement diverge. À ces endroits-là, il peut arriver que deux points, initialement voisins spatialement à l'intérieur d'un voisinage, ne le soient plus après utilisation de l'opérateur de compensation (point A sur la gure 8.3). Les deux eets conjugués mènent à un risque de changement de forme du voisinage entre celui obtenu par l'élément structurant 3D et l'élément structurant de type S-T.

t

x

A B

Fig. 8.3.: Illustration du problème de convergence/divergence du mouvement pour un ESM de type S-T. A est un nouveau trou dans une tranche spatiale du voisi- nage. B est la position commune de plusieurs points après application de la déformation.

Les éléments structurants de type T-S ne posent pas ce type de problème : comme le déplacement spatial s'eectue après le déplacement temporel, la forme de l'élément structurant sur un plan temporel donné est indépendante du mouvement, seule sa position varie alors. Par conséquent, des pixels distincts sur un même plan image dans l'espace 3D le seront toujours dans l'espace déformé 2D+t.

Cardinalité Une des questions que soulève la convergence du champ de mouvement est

celle de la cardinalité du voisinage de chaque point. En eet, La logique de la dénition de certains opérateurs dépend de cette cardinalité. C'est le cas par exemple des ltres de rang et du ltre médian. Rappelons la dénition du ltre de rang k, Rk

où {yx,i}est le voisinage de x et où f(yx,i) ≤ f (yx,j)si i < j ; le ltre de rang remplace la valeur de chaque point par la k-ième plus petite valeur de son voisinage. Le ltre médian, quant à lui, prend la valeur médiane sur le voisinage :

med(f )(x) = med y∈V (x)f (y)

La solution utilisée pour pallier ce problème dans le cas des bords est de dénir les ltres de rang non plus par le rang exact mais par un quantile α ∈ [0, 1]. Le ltre prend alors la k-ième plus petite valeur dans le voisinage, avec k déni par :

k = bα card V (x)c.

Cette dénition peut être réutilisée telle quelle ici.

Néanmoins, il est possible d'envisager une autre solution, plus satisfaisante. Celle-ci consiste à maintenir le nombre d'éléments au sein du voisinage par ESM, en attribuant à chaque point du voisinage un poids proportionnel au nombre de points du voisinage classique qui sont envoyés sur lui après déformation : si deux points sont déformés sur le même point, alors la valeur de l'image à ce point est comptée deux fois, et ainsi de suite. Cela revient en pratique à considérer un voisinage non plus comme un ensemble de points, mais comme une liste, où un même élément peut apparaître plusieurs fois. Ceci posséde une certaine logique : dans la mesure où le champ de mouvement réel n'est pas en réalité à valeur entière, supposer que les points sont confondus relève généralement plus d'une vue de l'esprit que de la réalité ; nous utilisons simplement le point considéré comme approximation du point de coordonnées non-entières qui est le résultat de la compensation. Cela ne doit donc pas masquer le fait que les deux points images sont généralement distincts, et qu'il est donc naturel de compter chacun de ceux-ci pour le calcul d'un ltre.

Cette solution peut donner des résultats sensiblement diérents, à la fois du cas où le problème de changement de cardinalité n'est pas pris en compte, et à la fois du cas où l'on utilise les quantiles pour dénir les ltres de rang. Ceci est illustré sur la gure 8.4. Nous recherchons la valeur résultant de l'application d'un ltre médian sur le point en rouge, lorsqu'on utilise un voisinage issu d'une 8-connexité subissant une transformation S-T.

 Dans un voisinage classique, il y a 9 éléments (8 voisins plus le centre). Le nombre impair de valeurs nous garantit que le médian est correctement déni.

 Nous n'avons plus ici que 8 voisins. Certaines dénitions du médian, dans le cas où celui-ci s'applique sur un nombre pair d'éléments, lui font prendre comme valeur la moyenne des deux valeurs centrales. Le résultat serait donc ici 5.5.

 Si nous dénissons le médian comme le ltre de quantile 0.5, nous prendrons donc la 4ème plus petite valeur des voisins, c'est-à-dire 4.

 Si nous tenons compte de la multiplicité des points convergents, le 9 compte 2 fois, et la valeur médiane est alors 7.

9 8

7 4 3

7 3 2

Fig. 8.4.: Illustration du problème de convergence sur la cardinalité du voisinage. Avec un voisinage classique correspondant à une 8-connexité, le médian du point en rouge est : 4 pour un ltre médian exprimé en quantile (α = 0.5), 5.5 pour un ltre médian où le médian est pris comme moyenne des deux éléments centraux dans le cas d'un nombre pair d'éléments, 7 si la multiplicité des points est prise en compte.

Nous constatons donc ici, sur un exemple particulier, combien les diérentes approches mènent à des résultats bien distincts. Utiliser la multiplicité des points déformés nous semble la solution la plus correcte.

D'autres solutions, plus complexes à mettre en ÷uvre, car utilisant la composante sous- pixellique des vecteurs de mouvement, sont proposées en (8.5) pour pallier le problème du maintien de la cardinalité.

Transformation en tout-ou-rien L'autre problème engendré par la convergence et di-

vergence du champ dans le cas des éléments S-T se trouve dans l'application de la trans- formation en tout-ou-rien. Dans cette transformation, deux éléments structurants sont utilisés conjointement. Soit S1et S2deux éléments structurants. Alors, la transformation

en tout-ou-rien associé est dénie par :

HOM(X) = {x|S1(x) ∈ X et S2(x) ∩ X = ∅} (8.8)

An que l'opération ait véritablement un sens, il est préférable d'assurer que :

S1(x) ∩ S2(x) = ∅ ∀x ∈ I, (8.9)

sinon il est clair que le point ne pourra appartenir au résultat, quelle que soit la congu- ration véritable dans laquelle se trouve le point. Si ceci est simple à assurer dans le cadre habituel, la déformation qu'impose le mouvement aux ESM de type S-T ne permet pas de garantir a priori cette propriété du fait de la possible convergence du mouvement.

Plusieurs solutions sont envisageables pour résoudre ce problème. Tout d'abord, il est possible de décider que l'un des éléments a plus de poids que l'autre. Si l'on souhaite par

exemple donner plus de poids à l'intérieur de l'objet qu'à l'extérieur, on peut utiliser, à la place de S2,M, l'élément structurant S2,M0 déni par :

S2,M0 (x) = S2,M(x) \ S1,M(x).

A l'inverse, on peut considérer que les points appartenants aux deux éléments structurants sont des points indéterminés, et donc remplacer S1,M et S2,M par S1,M0 et S2,M0 dénis

chacun comme ci-dessus. Mais ces solutions ne sont pas satisfaisantes. En eet, comme on peut le voir sur la gure 8.5, la déformation de type S-T peut changer l'homotopie associée aux deux éléments structurants. Utiliser des diérences d'éléments structurants ne peut ici qu'aggraver le problème.

 Dans la situation classique, c'est-à-dire sans mouvement (gure 8.5(a)), la transfor- mation en tout-ou-rien nous permet de trouver certains bords diagonaux. L'expres- sion bord diagonal est ici utilisée abusivement, dans la mesure où l'on ne se situe pas pleinement dans des dimensions spatiales. Nous trouverons plutôt les situations d'occlusion de la forme par un autre objet sur la droite.

 Après déformation selon le mouvement (gure 8.5(b)), deux problèmes émergent : la convergence des points de la forme et de ceux du fond en un même point, d'une part, et d'autre part l'apparition d'un trou dans une des tranches spatiales, séparant en deux morceaux ce qui n'en était qu'un auparavant.

 Si l'on privilégie la forme, la transformation trouvera aussi tout l'intérieur de celle- ci.

 Si l'on privilégie le fond, on détectera aussi toutes les zones de disparition de l'objet.

 Si l'on remplace les points problèmatiques par des indéterminations, nous aurons les deux types de faux positifs par rapport à notre objectif initial : intérieur spatial de l'objet, et occlusions venant de toutes les directions

 Dans tous les cas, aucune solution n'est apportée à l'apparition du trou spatial dans S1,M.

Il est important de souligner que ce problème ne concerne que les éléments de type S-T ; en eet, les éléments de type T-S respectent mieux cette contrainte d'homotopie, en maintenant la forme respective des deux éléments structurants de la transformation. C'est donc eux qui devraient être utilisés pour les opérations de type transformation en tout-ou-rien.

La convergence comme avantage Si la convergence du champ peut sembler problè-

matique dans le cas des éléments de type S-T, comme nous venons de la voir pour les ltres de rang et les transformations en tout-ou-rien, leur respect de celle-ci leur ore tout de même un avantage net : une des raisons pour lesquelles nous souhaitions défor- mer notre voisinage était de pouvoir considérer comme étant voisin d'un point ce qui lui correspondait de la manière la plus juste possible, et d'éviter donc de mélanger les pommes et les poires, c'est-à-dire des points appartenant selon toute vraisemblance à des objets diérents. C'est justement en tenant compte de la convergence que l'on peut

t x (a) (S1, S2) t x ? (b) (S1,M, S2,M) t x (c) (S1,M, S2,M0 ) t x (d) (S0 1,M, S2,M) t x (e) (S0 1,M, S2,M0 )

Fig. 8.5.: Illustration du problème de la transformation en tout-ou-rien combinée avec les ESM : en bleu, les points du voisinage devant appartenir à la forme ; en rouge, ceux devant appartenir au fond.

tenir compte de cette exigence, puisque nous donnons alors vraiment (pour autant que notre champ soit juste) un voisinage qui est lié le mieux possible à son centre. Cette exigence est moins bien prise en compte dans le cas des éléments de type T-S, du fait de la rigidité de leur forme sur un plan temporel donné. Ils ont aussi des dicultés à gérer les cas de rotation des objets.

8.1.3.3. Dualité par adjonction

Supposons que nous dénissions une érosion à l'aide de notre élément structurant. Nous avons par dénition :

ε(X) = {x ∈ X|V (x) ⊂ X} (8.10)

ε(f )(x) = min

y∈V (x)f (y) (8.11)

De nombreuses implémentations de la dilatation utilisent une formule similaire1 pour

la dénir, où ˇV (x) est le symétrisé de V (x) par rapport à x :

δ(Y ) = [ y∈Y ˇ V (y) δ(f )(y) = max x∈ ˇV (y)f (x)

Cela correspond eectivement à la dilatation adjointe quand l'élément structurant est invariant par translation. Ce n'est malheureusement pas le cas ici. Il nous faut donc revenir à la dénition de la dilatation par adjonction :

Y ⊆ ε(X) ⇐⇒ δ(Y ) ⊆ X

Celle-ci nous mène directement à :

δ(Y ) = {y|V (y) ∩ Y 6= ∅} (8.12)

δ(f )(y) = max

x|y∈V (x)f (x) (8.13)

En pratique, que cela signie-t-il ? Habituellement, l'érosion et la dilatation sont toutes les deux implémentées comme des opérations collectrices : le processus considère un point, détermine son voisinage et établit le minimum ou le maximum (selon qu'il s'agit de l'érosion ou de la dilatation) sur celui-ci, le résultat étant stocké dans l'image résultat (Algorithme 4). Ici, si le procédé reste identique dans le cas de l'érosion, il nous faut transformer le schéma de la dilatation en un processus envoyant de l'information vers les voisins. Nous plaçons tout d'abord des valeurs minimales dans chacun des points de l'image d'arrivée. Nous parcourons ensuite les voisinages de chacun des points, et nous plaçons à chaque fois le maximum entre le point du voisinage dans l'image d'arrivée

1Dans le cas binaire, la similarité n'est pas évidente du point de vue de la formulation. Néanmoins,

comme elle est implémentée de la même facon que la dilatation à niveau de gris, le problème entre tout de même en ligne de compte.

et le point parcouru, dans le point du voisinage de l'image d'arrivée (Algorithme 5). Ce nouvel algorithme n'est pas plus compliqué que le premier, si nous considèrons que nous ne disposons pas de méthode d'une complexité moins que linéaire pour obtenir le maximum d'un voisinage non-trié.

Algorithme 4 Algorithme d'érosion (collection des minima)

pour tout x ∈ I faire

Iout← +∞

pour tout x0 ∈ V (x) faire

Iout(x) ← min(Iout(x), Iin(x0)) n pour

n pour

Algorithme 5 Algorithme de dilatation (diusion des maxima)

pour tout x ∈ I faire

Iout← −∞

n pour

pour tout x ∈ I faire

pour tout x0 ∈ V (x) faire

Iout(x0) ← max(I

out(x0), Iin(x)) n pour

n pour