Python PIL | Método ImageMath.eval()

PIL es la biblioteca de imágenes de Python que proporciona al intérprete de Python capacidades de edición de imágenes. El módulo también proporciona una serie de funciones de fábrica, incluidas funciones para cargar imágenes desde archivos y para crear nuevas imágenes.

El ImageMathmódulo se puede utilizar para evaluar «expresiones de imágenes». El módulo proporciona una única función de evaluación, que toma una string de expresión y una o más imágenes.

PIL.ImageMath.eval()Evaluar la expresión en el entorno dado.

En la versión actual, ImageMath solo admite imágenes de una sola capa. Para procesar imágenes multibanda, utilice el método split() o la función merge().

Sintaxis: PIL.ImageMath.eval(expresión, entorno)

Parámetros :

expresión : una string que utiliza la sintaxis de expresión estándar de Python. Además de los operadores estándar, también puede utilizar las funciones que se describen a continuación.
entorno : un diccionario que asigna nombres de imágenes a instancias de imágenes. Puede usar uno o más argumentos de palabras clave en lugar de un diccionario, como se muestra en el ejemplo anterior. Tenga en cuenta que los nombres deben ser identificadores de Python válidos.

Tipo de retorno: una imagen, un valor entero, un valor de coma flotante o una tupla de píxeles, según la expresión.

Imagen 1 utilizada:

Imagen 2 utilizada:

   
  
# Importing Image module from PIL package 
from PIL import Image, ImageMath
  
# creating a image object
im1 = Image.open(r"C:\Users\System-Pc\Desktop\ybear.jpg").convert('L') 
im2 = Image.open(r"C:\Users\System-Pc\Desktop\leave.jpg").convert('L')
  
# applying the eval method
  
out = ImageMath.eval("convert(min(a, b), 'L')", a = im1, b = im2)
out.save("result.jpg")
out.show()

Producción:

Otro ejemplo: aquí cambiamos el min() incorporado a max().

# Importing Image module from PIL package 
from PIL import Image, ImageMath
  
# creating a image object
im1 = Image.open(r"C:\Users\System-Pc\Desktop\ybear.jpg").convert('L') 
im2 = Image.open(r"C:\Users\System-Pc\Desktop\leave.jpg").convert('L')
  
# applying the eval method
  
out = ImageMath.eval("convert(max(a, b), 'L')", a = im1, b = im2)
out.save("result.jpg")
out.show()

Producción:

Publicación traducida automáticamente

Artículo escrito por Sunitamamgai 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 *