”;
Enhancing contrast refers to the process of improving the visibility and quality of an image. It is an image processing technique that involves increasing the difference between the various elements within an image, such as objects, shapes, edges, and textures, by adjusting the distribution of intensity values or colors. This technique is widely used in fields such as medical imaging, computer vision, remote sensing, and photography to improve image quality and obtain more detailed visual information.
The Python Pillow (PIL) library offers the Contrast() class within its ImageEnhance module, for the application of contrast enhancement to images.
Enhancing Contrast of an Image
To adjust the contrast of an image, you can apply ImageEnhance.Contrast() class to an image object with the enhancment factor. It controls the contrast of an image, much like adjusting the contrast on a television set.
Below is the syntax of the ImageEnhance.Contrast() class −
class PIL.ImageEnhance.Contrast(image)
Following are the steps to achieve contrast enhancement of an image −
-
Create a contrast object using the ImageEnhance.Contrast() class.
-
Then apply the enhancement factor with the help of contrast_object.enhance() method.
An enhancement factor is a floating-point value passed to the common single interface method, enhance(factor), which plays an important role in adjusting image contrast. When a factor of 0.0 is used, it will produce a solid grey image. A factor of 1.0 will give the original image, and when greater values are used, the contrast of the image is increased, making it visually more distinct.
Example
The following example demonstrates how to achieve a highly contrasted image using the PIL.ImageEnhance module.
from PIL import Image, ImageEnhance # Open the input image image = Image.open(''Images/flowers.jpg'') # Create an ImageEnhance object for adjusting contrast enhancer = ImageEnhance.Contrast(image) # Display the original image image.show() # Enhance the contrast by a factor of 2 and display the result enhancer.enhance(2).show()
Input Image
Output Image
Output a highly contrasted version of the input image −
Example
To reduce the contrast of an image, you can use a contrast enhancement factor less than 1. Here”s an example illustrating the creation of a low-contrast version of the input image using the PIL.ImageEnhance.Contrast class.
from PIL import Image, ImageEnhance # Open the input image image = Image.open(''Images/flowers.jpg'') # Create an ImageEnhance object for adjusting contrast enhancer = ImageEnhance.Contrast(image) # Display the original image image.show() # Reduce the contrast by a factor of 0.5 and display the result enhancer.enhance(0.5).show()
Input Image
Output Image
Output a low contrasted version of the input image −
”;