Desenfocar una imagen es un proceso de reducción del nivel de ruido en la imagen y es uno de los aspectos importantes del procesamiento de imágenes. En este artículo, aprenderemos a desenfocar una imagen usando una biblioteca de Pillows. Para desenfocar una imagen hacemos uso de algunos métodos de la clase ImageFilter de esta biblioteca sobre objetos de imagen.
Nota: La imagen utilizada para desenfocar en todos los diferentes métodos se proporciona a continuación:
Métodos proporcionados por la clase ImageFilter:
1. PIL.ImageFilter.BoxBlur() : desenfoca la imagen configurando cada píxel al valor promedio de los píxeles en un cuadro cuadrado que extiende los píxeles del radio en cada dirección. Admite radio flotante de tamaño arbitrario. Utiliza una implementación optimizada que se ejecuta en tiempo lineal en relación con el tamaño de la imagen para cualquier valor de radio.
Sintaxis: PIL.ImageFilter.BoxBlur(radio)
Parámetros:
- radio: Tamaño de la caja en una dirección. Radius 0 no se difumina, devuelve una imagen idéntica. Radio 1 toma 1 píxel en cada dirección, es decir, 9 píxeles en total.
Python3
# Importing Image class from PIL module from PIL import Image # Opens a image in RGB mode im = Image.open(r"geek.jpg") # Blurring the image im1 = im.filter(ImageFilter.BoxBlur(4)) # Shows the image in image viewer im1.show()
Producción :
2. PIL.ImageFilter.GaussianBlur() : este método crea un filtro de desenfoque gaussiano. El filtro usa el radio como parámetro y al cambiar el valor de este radio, se cambia la intensidad del desenfoque sobre la imagen. El parámetro radio en la función es responsable de la intensidad del desenfoque. Al cambiar el valor del radio, se cambia la intensidad de GaussianBlur.
Sintaxis: PIL.ImageFilter.GaussianBlur(radius=5)
Parámetros:
- radio – radio de desenfoque. Cambiando el valor del radio se obtuvo la diferente intensidad de la imagen GaussianBlur.
Tipo de retorno: Una imagen.
Python3
# Importing Image class from PIL module from PIL import Image # Opens a image in RGB mode im = Image.open(r"geek.jpg") # Blurring the image im1 = im.filter(ImageFilter.GaussianBlur(4)) # Shows the image in image viewer im1.show()
Producción :
3. Desenfoque simple: aplica un efecto de desenfoque a la imagen como se especifica a través de un kernel específico o una array de convolución. No requiere ningún parámetro.
Sintaxis: filtro (FiltroImagen.BLUR)
Python3
# Importing Image class from PIL module from PIL import Image # Opens a image in RGB mode im = Image.open(r"geek.jpg") # Blurring the image im1 = im.filter(ImageFilter.BLUR) # Shows the image in image viewer im1.show()
Producción :
Publicación traducida automáticamente
Artículo escrito por maheswaripiyush9 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA