Python Pillow - Aggiunta di filtri a un'immagine
Il ImageFilter module contiene le definizioni per un set predefinito di filtri, che abbiamo utilizzato con Image.filter()metodo. Questi filtri vengono utilizzati per modificare l'aspetto e la sensazione dell'immagine.
Esempio
L'esempio seguente è Filtro di un'immagine -
from PIL import Image, ImageFilter
im = Image.open('jungleSaf2.jpg')
im1 = im.filter(ImageFilter.BLUR)
im1.show()
im2 = im.filter(ImageFilter.MinFilter(3))
im2.show()
im3 = im.filter(ImageFilter.MinFilter) # same as MinFilter(3)
im3.show()
Nel programma sopra, abbiamo usato il MinFilter()metodo, che viene utilizzato per creare un filtro minimo. Sceglie il valore di pixel più basso in una finestra con la dimensione data.
ImageFilter.MinFilter(size=3)
Dove,
size - La dimensione del kernel, in pixel.
Produzione
Se si salva il programma sopra e lo si esegue, mostra l'immagine originale, l'immagine sfocata e l'immagine sfocata con MinFilter utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original Image
Blurred Image
Image blurred with mini filter
Filtri
La versione corrente della libreria dei cuscini fornisce una serie di filtri predefiniti per il miglioramento delle immagini.
BLUR
CONTOUR
DETAIL
EDGE_ENHANCE
EDGE_ENHANCE_MORE
EMBOSS
FIND_EDGES
SHARPEN
SMOOTH
SMOOTH_MORE
Esempio
L'esempio seguente di Python applica il filtro di sfocatura su un'immagine, la salva e la visualizza utilizzando l'utilità di visualizzazione PNG standard -
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(BLUR)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Allo stesso modo, al image.filter() puoi passare uno qualsiasi dei seguenti parametri per ottenere i rispettivi output:
CONTOUR
DETAIL
EDGE_ENHANCE
EDGE_ENHANCE_MORE
EMBOSS
FIND_EDGES
SMOOTH
SMOOTH_MORE
SHARPEN
Metodo Python img.filter (CONTOUR)
Il seguente esempio di Python applica il filtro CONTOUR all'immagine data.
Esempio
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(CONTOUR)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Se si salva il programma sopra e lo si esegue, mostra l'immagine originale e l'immagine filtrata utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original image
Filtered image
Metodo Python img.filter (DETAIL)
Il seguente esempio di Python applica il filtro DETTAGLI all'immagine data.
Esempio
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(DETAIL)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Se salvi il programma sopra e lo esegui, mostra l'immagine originale e l'immagine filtrata utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original image
Filtered image
Metodo Python img.filter (EDGE_ENHANCE)
Il seguente esempio di Python applica il filtro EDGE_ENHANCE all'immagine data -
Esempio
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(EDGE_ENHANCE)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Se salvi il programma sopra e lo esegui, mostra l'immagine originale e l'immagine filtrata utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original image
Filtered image
Metodo Python img.filter (EDGE_ENHANCE_MORE)
Il seguente esempio di Python applica il filtro EDGE_ENHANCE_MORE all'immagine data.
Esempio
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(EDGE_ENHANCE_MORE)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Se salvi il programma sopra e lo esegui, mostra l'immagine originale e l'immagine filtrata utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original image
Filtered image
Metodo Python img.filter (EMBOSS)
Il seguente esempio di Python applica il filtro EMBOSS all'immagine data.
Esempio
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(EMBOSS)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Se si salva il programma sopra e lo si esegue, mostra l'immagine originale e l'immagine filtrata utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original image
Filtered image
Metodo Python img.filter (FIND_EDGES)
Il seguente esempio di Python applica il filtro FIND_EDGES all'immagine data.
Esempio
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(FIND_EDGES)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Se si salva il programma sopra e lo si esegue, mostra l'immagine originale e l'immagine filtrata utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original image
Filtered image
Metodo Python img.filter (SMOOTH)
Il seguente esempio di Python applica il filtro SMOOTH all'immagine data.
Esempio
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(SMOOTH)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Se si salva il programma sopra e lo si esegue, mostra l'immagine originale e l'immagine filtrata utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original image
Filtered image
Metodo Python img.filter (SHARPEN)
Il seguente esempio di Python applica il filtro SHARPEN all'immagine data.
Esempio
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(SHARPEN)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Se si salva il programma sopra e lo si esegue, mostra l'immagine originale e l'immagine filtrata utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original image
Filtered image
Il seguente esempio di Python applica il filtro SHARPEN all'immagine data.
Esempio
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(SHARPEN)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Produzione
Se si salva il programma sopra e lo si esegue, mostra l'immagine originale e l'immagine filtrata utilizzando l'utilità di visualizzazione PNG standard, come segue:
Original image
Filtered image