Mejora de imagen en PIL

La biblioteca de imágenes de Python (PIL) agrega potentes capacidades de procesamiento de imágenes. Proporciona un inmenso soporte de formato de archivo, una representación eficiente y capacidades de procesamiento de imágenes bastante potentes. La biblioteca de imágenes principal está diseñada para un acceso rápido a los datos almacenados en muy pocos formatos básicos de píxeles. Proporciona una base sólida para una herramienta general de procesamiento de imágenes.

Pasos para usar PIL

Paso 1: importe el módulo de imagen de la biblioteca PIL.e

from PIL import Image

Este módulo proporciona una clase con un nombre idéntico que se emplea para representar una imagen PIL. Y también proporciona varias funcionalidades, incluidas funciones para cargar imágenes desde archivos y crear nuevas imágenes. No voy a explicar todo el módulo Imagen aquí. Pero, así es como podrá abrir un archivo de imagen.

image_variable_name = Image.open("lena.jpg")

Vamos a utilizar una imagen PNG aquí. Una cosa para recordar: el archivo de imagen que está utilizando aquí debe estar presente en el mismo directorio donde se encuentra su programa. De lo contrario, use la ruta completa del archivo de imagen entre comillas. 

Ahora puede ver la imagen en su visor de imágenes con una línea de código.

image_variable_name.show()

Paso 2: ahora es el momento de importar el módulo más importante: el módulo ‘ImageEnhance’ de la biblioteca PIL

from PIL import ImageEnhance

El módulo ImageEnhance contiene varias clases que se utilizarán para mejorar la imagen.

 

Clases que podemos usar para mejorar

Todas las clases de mejora implementan una interfaz típica, que contiene un método denominado método ‘enhance(factor)’.

PIL.ImageEnhance.[método](imagen_variable_nombre)

El método puede ser brillo, color, contraste, nitidez.

Parámetro: El método de mejora() toma solo un factor de parámetro, es decir, un punto flotante.
Tipo de devolución: este método devuelve una imagen mejorada. 

Las clases son las siguientes:

Brillo(): 

Ajuste el brillo de la imagen. Está acostumbrado a controlar el brillo de nuestra imagen resultante. El código para el brillo es el siguiente:

Aporte:

Python3

from PIL import Image
from PIL import ImageEnhance
  
# Opens the image file
image = Image.open('gfg.png')  
  
# shows image in image viewer
image.show()  
  
  
# Enhance Brightness
curr_bri = ImageEnhance.Brightness(image)
new_bri = 2.5
  
# Brightness enhanced by a factor of 2.5
img_brightened = curr_bri.enhance(new_bri)
  
# shows updated image in image viewer
img_brightened.show()  

Un factor de mejora de 0,0 da como resultado una imagen completamente negra y un factor de mejora de 1,0 da como resultado la misma imagen que la original.

Producción:

Color():

Ajuste el nivel de color de la imagen. Está acostumbrado a controlar el nivel de color de nuestra imagen resultante. El código para colorear es el siguiente:

Aporte:

Python3

from PIL import Image
from PIL import ImageEnhance
  
# Opens the image file
image = Image.open('gfg.png')
  
# shows image in image viewer
image.show()
  
  
# Enhance Color Level
curr_col = ImageEnhance.Color(image)
new_col = 2.5
  
# Color level enhanced by a factor of 2.5
img_colored = curr_col.enhance(new_col)
  
# shows updated image in image viewer
img_colored.show()

Un factor de mejora de 0,0 da como resultado una imagen completamente en blanco y negro y un factor de mejora de 1,0 da como resultado la misma imagen que la original.

Producción:

Contraste():

Ajuste el contraste de la imagen. Está acostumbrado a controlar el contraste de nuestra imagen resultante. El código para cambiar el contraste es el siguiente:

Aporte:

Python3

from PIL import Image
from PIL import ImageEnhance
  
# Opens the image file
image = Image.open('gfg.png')
  
# shows image in image viewer
image.show()
  
  
# Enhance Contrast
curr_con = ImageEnhance.Contrast(image)
new_con = 0.3
  
# Contrast enhanced by a factor of 0.3
img_contrasted = curr_con.enhance(new_con)
  
# shows updated image in image viewer
img_contrasted.show()  

Un factor de mejora de 0,0 da como resultado una imagen completamente gris y un factor de mejora de 1,0 da como resultado la imagen original.

Producción:

Nitidez():

Ajuste la nitidez de la imagen. Está acostumbrado a controlar la nitidez de nuestra imagen resultante. El código para cambiar la nitidez es el siguiente:

Aporte:

Python3

from PIL import Image
from PIL import ImageEnhance
  
# Opens the image file
image = Image.open('gfg.png')
  
# shows image in image viewer
image.show()
  
# Enhance Sharpness
curr_sharp = ImageEnhance.Sharpness(image)
new_sharp = 8.3
  
# Sharpness enhanced by a factor of 8.3
img_sharped = curr_sharp.enhance(new_sharp)
  
# shows updated image in image viewer
img_sharped.show()

Un factor de mejora de 0,0 da como resultado una imagen borrosa y un factor de mejora de 1,0 da como resultado lo mismo que la imagen original y un factor > 1,0 da como resultado una imagen más nítida.

Producción:

Estas 4 clases son las más utilizadas, para realzar una imagen. Muchas otras funcionalidades disponibles allí. No dejes de aprender aquí, ve y explora más por ti mismo.

Publicación traducida automáticamente

Artículo escrito por anirbanchand54 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *