• Aucun résultat trouvé

Chapitre 4 Echantillonnage irrégulier et interpolation 73

3.4 Convolution normalisée

La convolution normalisée est une méthode de reconstruction qui prend en compte l’incertitude

du signal. Considérons une imagef(x)et un filtre passe-basg(x). Supposons quef soit

échan-tillonnée aléatoirement. On peut associer à cette image une “carte de certitude” (certainty map

en anglais)c(x)qui vaut 1 si le pixelx correspond à la position d’un échantillon, et0dans le

cas contraire [Knutsson 93]. Cette carte de certitude n’est autre que ce que nous appelons une

“sous-mosaïque” dans le cadre du démosaïçage. La reconstruction de l’image à partir de ses

échantillons se fait alors en trois étapes :

94 Chapitre 4. Echantillonnage irrégulier et interpolation

(a) (b)

FIG. 4.21: Interpolations par l’algorithme Papoulis-Gerchberg à même fréquence moyenne de

échantillonnage, à même fréquence de coupure du filtre de reconstruction, mais dans le cas d’un

sous-échantillonnage de Poisson (à gauche, PSNR=26.7dB), de Poisson à disque (à droite, PSNR=28.0dB).

La fréquence de coupure est manifestement trop haute dans le cas poissonnien, elle est correcte dans le

cas poissonnien à disque.

1. on calcule le résultat de la convolution entre l’image échantillonnée et le filtre :

N(x) = (f(x)c(x))∗g(x)

2. on calcule le résultat de la convolution entre la carte de certitude et le filtre :

D(x) = c(x)∗g(x)

3. on effectue la division point à point entre les deux images obtenues, cela donne l’image

reconstruite :

˜

f(x) = N(x)

D(x) (4.2)

La Figure4.23montre un exemple d’image échantillonnée irrégulièrement, filtrée passe-bas par

un filtrage uniforme et filtrée passe-bas par une convolution normalisée. Cette méthode n’est pas

une interpolation au sens strict, car les échantillons mesurés peuvent être modifiés.

Note: l’interpolation de Shepard (présentée dans un paragraphe précédent) est une convolution

normalisée, dont les coefficients du filtre sont déterminés par leur distance au centre du filtre.

3. Algorithmes d’interpolation de signaux échantillonnés irrégulièrement 95

FIG. 4.22: A gauche : sous-échantillonnage régulier ; A droite : sous-échantillonnage irrégulier

(Pois-son). Dans les deux cas on a sous-échantillonné autant (1 échantillon sur 9 pour le rouge et le bleu) et

la même technique d’interpolation a été appliquée. Les deux images ont un PSNR identique de 31.8dB.

L’aliasing dans le cas régulier se retrouve sous forme de bruit dans le cas irrégulier.

(a) (b) (c)

FIG. 4.23: Illustration de l’interpolation par convolution normalisée. (a) Image échantillonnée

irrégu-lièrement. (b) Résultat d’un filtrage passe-bas uniforme. (c) Normalisation de (b) par la densité locale

des échantillons.

96 Chapitre 4. Echantillonnage irrégulier et interpolation

x1 x2 x3

(a)

x1 x2 x3

FIG.4.24: (a) Echantillonnage régulier d’un signal constant. La somme des réponses impulsionnelles

permet de retrouver le signal constant. (b) Echantillonnage irrégulier d’un signal constant. Les réponses

impulsionnelles étant irrégulièrement espacées, leur somme n’est pas constante. La convolution

norma-lisée consiste à normaliser localement ces réponses impulsionnelles en fonction de la densité locale en

échantillons, afin de contrebalancer les fluctuations dans le signal reconstruit.

Explication intuitive de la convolution normalisée

Considérons un signal f constant égal à un, unidimensionnel, et qui serait échantillonné

de manière régulière. Le filtrage par convolution avec un filtre g peut s’interpréter comme la

somme des réponses impulsionnelles centrées sur chaque échantillon mesuré :

˜

f(x) =f(x)∗g(x) =

+∞

X

i=−∞

f(x

i

) g(x−x

i

)

| {z }

noyau centré surxi

Considérons 3 échantillons successifs x

1

, x

2

et x

3

, et imaginons que l’échantillon x

2

subisse

une perturbation si bien qu’il se retrouve décalé vers la droite. Alors la distance de x

1

à x

2

se trouve augmentée, et la distance de x

2

à x

3

se trouve diminuée, on est en présence d’un

échantillonnage irrégulier. De la même manière qu’en régulier, un filtrage par convolution peut

être appliqué. Cependant, les distances entre les échantillons étant augmentées et diminuées,

la somme des réponses impulsionnelles se trouve modifiée. Elle ne sera pas égale à un signal

constant, mais aura tendance à se creuser sur le segment [x

1

x

2

], et à se bomber sur le

seg-ment[x

2

x

3

](Figure 4.24). Il convient donc d’apporter une correction à cette interpolation qui

permette d’amplifier le signal si la distance aux échantillons les plus proches est grande

(c’est-à-dire si la densité en échantillons est faible) ou au contraire de contenir le signal si la distance

aux échantillons voisins est petite (c’est-à-dire si la densité est forte). Ceci peut se faire par un

coefficient de normalisation qui dépende de la position dans le signal et qui tienne compte de la

densité locale en échantillons :

˜

f(x) =

+∞

X

i=−∞

f(x

i

)g(x−x

i

)

p(x)

oùp(x)est l’expression de la densité en échantillons. Si on prend comme définition de la

den-sité, le filtrage passe-bas de la grille d’échantillonnage p(x) = f(x)∗c(x), alors on retrouve

l’Equation (4.2).

Le noyau d’interpolation n’est plus le même pour chaque interpolation, il dépend de la

densité locale. Mais attention, pour passer d’un noyau à un autre, il ne suffit pas de normaliser

3. Algorithmes d’interpolation de signaux échantillonnés irrégulièrement 97

globalement le noyau avec la densité enx

i

, mais il faut normaliser chaque pointxdu noyau par

la densité enx. Ceci rend impossible une normalisation des échantillons a priori(c’est-à-dire

avant la convolution), elle doit obligatoirement se fairea posterioriou pendant l’interpolation.

Un autre point de vue

On peut voir la convolution non pas comme un noyau qui se positionnerait sur chaque

échan-tillon mesuré, mais comme un noyau qui se centre surl’échantillon à calculer et qui effectue

l’intégrale du produit entre le noyau et le signal échantillonné :

˜

f(x) =

Z

R

f(t)c(t)g(x−t)du

Les échantillons du noyau interpolateur que je qualifierai d’utilessont les échantillons du noyau

qui sonten facedes positions des échantillons mesurés, c’est-à-dire là oùc(x) 6= 0. Appelons

a(x)la somme de ces échantillons utiles à la postionx:

a(x) = Xc(x

i

)g(x−x

i

) (4.3)

a(x)correspond en fait à la convolution entre g et la fonction de certitudec(x). La valeur de

a(x) dépend de la position spatiale, puisque c(x) est par hypothèse irrégulière. Cela signifie

que la contribution des coefficients du filtreg va varier d’un échantillon à calculer, à l’autre.

Il convient donc de normaliser le filtre à chaque position spatiale, afin que la somme de ses

coefficients ditsutilessoit constante :

˜

f(x) = f(x)∗g(x)

a(x) =

f(x)∗g(x)

c(x)∗g(x)

ce qui correspond à la définition de la convolution normalisée donnée Equation (4.2).

Une différence entre ces deux points de vue vient du fait que dans un cas la normalisation

de la réponse impulsionnelle est spatialement variante (chaque réponse impulsionnelle est

nor-malisée point à point par une fonction non constante correspondant à la densité), dans l’autre

cas chaque réponse impulsionnelle est normalisée par un coefficient constant correspondant à

la densité en son centre.

Analogie des deux points de vue avec le concept de champ récepteur

Cette différence de points de vue concernant le processus d’interpolation, correspond

exac-tement aux deux manières théoriques d’obtenir le champ récepteur d’un neurone. Dans un cas,

on plante une électrode à la sortie du neurone dont on veut connaître le champ récepteur. On

stimule alors successivement différentes parties du champ spatial et on récupére la réponse à

chaque stimulus. Ceci permet de déduire l’influence de chaque point de la rétine sur le neurone

considéré et donc de tracer le profil du champ récepteur. Une manière alternative de procéder

(mais infaisable en pratique) serait de planter une électrode dans chaque cellule du voisinage du

neurone considéré (ce neurone inclus), puis de stimuler uniquement le neurone considéré. Cela

revient à faire rentrer dans le système une impulsion de Dirac, et donc de mesurer sa réponse

impulsionnelle.

98 Chapitre 4. Echantillonnage irrégulier et interpolation

Une idée d’amélioration à apporter à ce type d’interpolation serait, plutôt que de normaliser

localement les fonctions de base, de les étirer et les contracter localement à l’aide d’une fonction

de distorsion γ(x), comme c’est le cas pour l’interpolation de Yen utilisant le sinus cardinal

(p.76) :

˜

f(x) =X

i

f(x

i

)g(γ(x−x

i

))

En effet, une normalisation ne permet pas de décaler les zéros du sinus cardinal, seules des

contractions/dilations le permettent. Cela ne devrait pas modifier grandement les résultats (car

une normalisation et une distorsion permettent tous les deux d’amplifier ou de diminuer une

valeur), mais cela permettrait d’obtenir de meilleurs résultats dans le cas d’un

échantillon-nage fortement aléatoire, avec de grandes zones sans échantillon, puisqu’alors la taille de la

réponse impulsionnelle serait variable. Cela éviterait les normalisations accidentelles par zéros

qui peuvent se produire lorsqu’il n’y a pas d’échantillon dans la zone délimitée par la réponse

impulsionnelle.