Amélioration de l’image - Réduction de bruit

La convolution

La convolution est un processus couramment utilisé afin d’améliorer une image.

Rappelons que toute image n’est qu’une matrice de pixels, contenants chacun des informations comme les niveaux RGB ou Alpha (transparence).

Généralement, la convolution est utilisée avec des matrices de 3x3 ou 5x5 pixels. Elle consiste en la multiplication de ladite matrice avec une autre matrice qui déterminera l’effet que l’on souhaite appliquer. Le pixel central de la matrice initiale, s’approprie alors la valeur finale.

_images/convolution-calculate.png

Dans cet exemple, le pixel initial est le pixel central, dont la valeur est 50. Ainsi, le résultat de la multiplication de ces deux matrices est : (40*0)+(42*1)+(46*0) + (46*0)+(50*0)+(55*0) + (52*0)+(56*0)+(58*0) = 42. Le pixel initial, toujours au centre de la matrice, prend alors la valeur du résultat, ici 42. Dans cet exemple, le résultat graphique est donc le décalage des pixels vers le bas.

Sharpening

Le sharpen permet d’accentuer considérablement les textures d’une image et leurs contours. Il utilise la convolution avec la matrice suivante :

_images/convolution-sharpen.png

Voici un exemple d’application du Sharpen :

_images/sharpening_amount-original.png

Avant application

_images/sharpening_amount-oversharpened.png

Après application

Box Blur

Le box blur est un filtre d’image, qui modifie la valeur de chaque pixel en une moyenne des 8 pixels autour. Il utilise donc la convolution avec la matrice suivante :

_images/convolution-blur.png

Voici un exemple du résultat d’application du box blur :

_images/generic-taj-convmatrix-blur.jpg

Après application d’un Box Blur

Gaussian Blur

Le gaussian blur est un filtre d’image qui utilise la fonction de Gauss pour calculer la nouvelle valeur de chaque pixel.

_images/b5a3ab06a75210694218bcbd7370eea3.png

σ représente la déviation standard de la distribution de gauss

On utilise alors une moyenne pondérée sur les pixels avoisinants pour le pixel initial. Le pixel initial reçoit ainsi la valeur la plus élevée. Puis, plus l’on s’éloigne du pixel initial, plus les pixels reçoivent des valeurs faibles. On peut ainsi définir un rayon pour le Gaussian Blur, qui influencera sur le résultat. Il s’agit donc d’une convolution aussi, mais qui dépend des valeurs des pixels (la matrice multiplicatrice est créée à l’aide de la moyenne pondérée). Voici un exemple d’application du Gaussian Blur :

_images/Gaussian_blur_example.jpg

Table des matières

Sujet précédent

Utilisation

Sujet suivant

Rotation d’image & Détéction d’angle

Cette page