Python Pillow: agregar filtros a una imagen
los ImageFilter module contiene definiciones para un conjunto predefinido de filtros, que usamos con Image.filter()método. Estos filtros se utilizan para cambiar la apariencia de la imagen.
Ejemplo
El siguiente ejemplo es el filtrado de una imagen:
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()
En el programa anterior, hemos utilizado el MinFilter()método, que se utiliza para crear un filtro mínimo. Selecciona el valor de píxel más bajo en una ventana con el tamaño dado.
ImageFilter.MinFilter(size=3)
Dónde,
size - El tamaño del kernel, en píxeles.
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original, la imagen borrosa y la imagen borrosa con MinFilter usando la utilidad de visualización PNG estándar, de la siguiente manera:
Original Image
Blurred Image
Image blurred with mini filter
Filtros
La versión actual de la biblioteca de almohadas proporciona el conjunto de filtros de mejora de imagen predefinidos que se mencionan a continuación.
BLUR
CONTOUR
DETAIL
EDGE_ENHANCE
EDGE_ENHANCE_MORE
EMBOSS
FIND_EDGES
SHARPEN
SMOOTH
SMOOTH_MORE
Ejemplo
El siguiente ejemplo de Python aplica el filtro de desenfoque en una imagen, la guarda y la muestra usando la utilidad de visualización PNG estándar:
#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()
Salida
De la misma manera, al image.filter() método, puede pasar cualquiera de los siguientes parámetros para obtener las salidas respectivas:
CONTOUR
DETAIL
EDGE_ENHANCE
EDGE_ENHANCE_MORE
EMBOSS
FIND_EDGES
SMOOTH
SMOOTH_MORE
SHARPEN
Método de Python img.filter (CONTOUR)
El siguiente ejemplo de Python aplica el filtro CONTOUR a la imagen dada.
Ejemplo
#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()
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original y la imagen filtrada utilizando la utilidad de visualización PNG estándar, de la siguiente manera:
Original image
Filtered image
Método python img.filter (DETAIL)
El siguiente ejemplo de Python aplica el filtro DETALLE a la imagen dada.
Ejemplo
#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()
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original y la imagen filtrada utilizando la utilidad de visualización PNG estándar, de la siguiente manera:
Original image
Filtered image
Método de Python img.filter (EDGE_ENHANCE)
El siguiente ejemplo de Python aplica el filtro EDGE_ENHANCE a la imagen dada:
Ejemplo
#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()
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original y la imagen filtrada utilizando la utilidad de visualización PNG estándar, de la siguiente manera:
Original image
Filtered image
Método Python img.filter (EDGE_ENHANCE_MORE)
El siguiente ejemplo de Python aplica el filtro EDGE_ENHANCE_MORE a la imagen dada.
Ejemplo
#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()
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original y la imagen filtrada utilizando la utilidad de visualización PNG estándar, de la siguiente manera:
Original image
Filtered image
Método de Python img.filter (EMBOSS)
El siguiente ejemplo de Python aplica el filtro EMBOSS a la imagen dada.
Ejemplo
#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()
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original y la imagen filtrada utilizando la utilidad de visualización PNG estándar, de la siguiente manera:
Original image
Filtered image
Método de Python img.filter (FIND_EDGES)
El siguiente ejemplo de Python aplica el filtro FIND_EDGES a la imagen dada.
Ejemplo
#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()
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original y la imagen filtrada utilizando la utilidad de visualización PNG estándar, de la siguiente manera:
Original image
Filtered image
Método Python img.filter (SMOOTH)
El siguiente ejemplo de Python aplica el filtro SMOOTH a la imagen dada.
Ejemplo
#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()
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original y la imagen filtrada utilizando la utilidad de visualización PNG estándar, de la siguiente manera:
Original image
Filtered image
Método de Python img.filter (SHARPEN)
El siguiente ejemplo de Python aplica el filtro SHARPEN a la imagen dada.
Ejemplo
#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()
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original y la imagen filtrada utilizando la utilidad de visualización PNG estándar, de la siguiente manera:
Original image
Filtered image
El siguiente ejemplo de Python aplica el filtro SHARPEN a la imagen dada.
Ejemplo
#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()
Salida
Si guarda el programa anterior y lo ejecuta, muestra la imagen original y la imagen filtrada utilizando la utilidad de visualización PNG estándar, de la siguiente manera:
Original image
Filtered image