Composition de convolutions


.f est l’image de départ.

.g est la convoluée de f par la matrice filtre m.

.h est la convoluée de l’image g par la matrice n.

On écrit : h = g*n et g = f*m

On note f(i,j) la valeur du pixel (i,j) de l’image f.

On note g(k,l) la valeur du pixel (k,l) de l’image g.

On note h(m,n) la valeur du pixel (m,n) de l’image h.

On a alors:

 

avec

 

  

 avec les notations m= conformément aux numérotations de pixels dans une image.

 

 

  

 

Calcul des termes de la matrice p(J,K) dans Excel :

 

L’élément 0 de la matrice p(J,K) est la "sommeprod" des matrices mises en noir ci dessus.

Attention, il ne s’agit pas du produit des matrices au sens mathématique mais de le somme des produit des termes de même place des deux tableaux.

 

Commençons par l’opération de dérivation.

La matrice 3X3  donne au pixel (k,l) la valeur g(k,l)=-1.f(k,l)+1.f(k+1,l) c’est bien le nombre dérivé de la fonction [x®f(x,y)]  en x=k.

Son effet sera donc de dériver l’image suivant la direction des lignes, c’est à dire de détecter les variations d’éclatement dans l’image suivant cette direction horizontale.

 

Si on applique cette matrice deux fois consécutivement sur l’image on fait la convolution de cet opérateur avec lui même et le fichier Excel nous donne pour matrice résultante :

 

C’est la dérivation seconde de l’image suivant l’axe des abscisses.

f’(x)=f(x+1)-f(x)

f’(x+1)=f(x+2)-f(x+1)

f”(x)=f’(x+1)-f”(x)=(f(x+2)-f(x+1))-(f(x+1)-f(x))=f(x+2)-2f(x+1)+f(x)

On reconnaît ce que fait la matrice 5x5 ci-dessus.

 

On peut aussi composer une dérivation suivant x suivie d’une dérivation suivant y.

Donc composer  avec  qui donne

On observe que la composition est commutative dans ce cas.

Le pixel (k,l) prend alors la valeur g(k,l)= f(k,l)-f(k+1,l)+f(k+1,l+1)-f(k,l+1) on reconnaît

.

La détection des bords est maintenant bi-directionnelle.

On peut préférer utiliser la matrice.

Elle donne pour le pixel (k,l) :

 

 

 

 

Ou  qui donne au pixel (k,l) la valeur .

La détection des bords est bi-directionnelle et le rendu agréable.

 

Les logiciels de traitement d’images proposent un opérateur dit filtre laplacien.

Son effet sur un pixel blanc isolé  permet d’en lire la matrice .

(La teinte grise indique le niveau zéro dans l’image ci-dessus).

est appelé le laplacien de f en (k,l).

 

Il permet un excellent tracé des contours de l’image mais provoque l’apparition de bruit sur l’image.

 

Son application deux fois consécutives peut avoir pour cette raison des effets ravageurs.

La matrice résultante est alors .

On lui préfère souvent pour cette raison un filtre de Sobel ou un de ses dérivés, par exemple: qui donne un effet d'ombre portée avec un éclairage en lumière rasante provenant du coin supérieur gauche de l'image.

 

Et pour aller plus loin...

Dérivation d'une image...et autres filtres