Oreiller Python - Flouter une image

Le flou d'une image peut être fait en réduisant le niveau de bruit dans l'image en appliquant un filtre à une image. Le flou d'image est l'un des aspects importants du traitement d'image.

le ImageFilter classdans la bibliothèque Pillow fournit plusieurs filtres d'image standard. Les filtres d'image peuvent être appliqués à une image en appelant lefilter() method de l'objet Image avec le type de filtre requis tel que défini dans la classe ImageFilter.

Il existe différentes techniques utilisées pour brouiller les images et nous allons discuter des techniques mentionnées ci-dessous.

  • Flou simple

  • Flou de boîte

  • flou gaussien

Ces trois techniques utiliseront la méthode 'Image.filter ()' pour appliquer le filtre aux images.

Flou simple

Il applique un effet de flou sur l'image comme spécifié via un noyau spécifique ou une matrice de convolution.

Syntaxe

filter(ImageFilter.BLUR)

Exemple

#Import required Image library
from PIL import Image, ImageFilter

#Open existing image
OriImage = Image.open('images/boy.jpg')
OriImage.show()

blurImage = OriImage.filter(ImageFilter.BLUR)
blurImage.show()
#Save blurImage
blurImage.save('images/simBlurImage.jpg')

Lors de l'exécution, l'exemple ci-dessus génère les deux fenêtres standard de l'utilitaire d'affichage PNG (dans ce cas, les fenêtres Photos app).

Original image

Blurred image

Flou de boîte

Dans ce filtre, nous utilisons «rayon» comme paramètre. Le rayon est directement proportionnel à la valeur de flou.

Syntaxe

ImageFilter.BoxBlur(radius)

Où,

  • Radius - Taille de la boîte dans un sens.

  • Radius 0 - signifie pas de flou et renvoie la même image.

  • RRadius 1 & minnus; prend 1 pixel dans chaque direction, soit 9 pixels au total.

Exemple

#Import required Image library
from PIL import Image,
 
#Open existing image
OriImage = Image.open('images/boy.jpg')
OriImage.show()

#Applying BoxBlur filter
boxImage = OriImage.filter(ImageFilter.BoxBlur(5))
boxImage.show()

#Save Boxblur image
boxImage.save('images/boxblur.jpg')

Production

Lors de l'exécution, l'exemple ci-dessus génère les deux fenêtres standard de l'utilitaire d'affichage PNG (dans ce cas, l'application Windows Photos).

Original image

Blurred image

Flou gaussien

Ce filtre utilise également le rayon de paramètre et fait le même travail que le flou de boîte avec quelques modifications algorithmiques. En bref, la modification de la valeur du rayon générera une intensité différente des images «Gaussianblur».

Syntaxe

ImageFilter.GaussianBlur(radius=2)

Où,

  • Radius - Rayon de flou

Exemple

#Import required Image library
from PIL import Image, ImageFilter

#Open existing image
OriImage = Image.open('images/boy.jpg')
OriImage.show()

#Applying GaussianBlur filter
gaussImage = OriImage.filter(ImageFilter.GaussianBlur(5))
gaussImage.show()

#Save Gaussian Blur Image
gaussImage.save('images/gaussian_blur.jpg')

Production

Lors de l'exécution, l'exemple ci-dessus génère les deux fenêtres standard de l'utilitaire d'affichage PNG (dans ce cas, les fenêtres Photos app).

Original image

Blurred image