Python PIL | ImageMath.eval() Method

PIL is the Python Imaging Library which provides the python interpreter with image editing capabilities .The module also provides a number of factory functions, including functions to load images from files, and to create new images.
The ImageMath module can be used to evaluate “image expressions”. The module provides a single eval function, which takes an expression string and one or more images.
PIL.ImageMath.eval() Evaluate expression in the given environment.
In the current version, ImageMath only supports single-layer images. To process multi-band images, use the split() method or merge() function.
Syntax: PIL.ImageMath.eval(expression, environment)
Parameters:
expression – A string which uses the standard Python expression syntax. In addition to the standard operators, you can also use the functions described below.
environment – A dictionary that maps image names to Image instances. You can use one or more keyword arguments instead of a dictionary, as shown in the above example. Note that the names must be valid Python identifiers.Returns type: An image, an integer value, a floating point value, or a pixel tuple, depending on the expression.
Image1 Used:
Image2 Used:
# 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() |
Output:

Another example:Here we change the inbuilt min() to 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() |
Output:



