PIL 中的图像增强
Python图像库 (PIL)增加了强大的图像处理功能。它提供了巨大的文件格式支持、高效的表示和相当强大的图像处理能力。核心图像库旨在快速访问以极少数基本像素格式存储的数据。它为通用图像处理工具提供了坚实的基础。
使用 PIL 的步骤
步骤 1:从 PIL library.e 导入 Image 模块
from PIL import Image
该模块提供了一个具有相同名称的类,用于表示 PIL 图像。并且还提供各种功能,包括从文件加载图像和创建新图像的功能。我不会在这里解释整个 Image 模块。但是,您可以通过以下方式打开图像文件。
image_variable_name = Image.open("lena.jpg")
我们将在这里使用 PNG 图像。要记住的一件事 - 您在此处使用的图像文件必须存在于您的程序所在的同一目录中。否则使用引号内的图像文件的完整路径。
现在,您可以使用一行代码在图像查看器中查看图像。
image_variable_name.show()
第 2 步:现在是时候从 PIL 库中导入最重要的模块 - 'ImageEnhance' 模块
from PIL import ImageEnhance
ImageEnhance 模块包含将用于图像增强的各种类。
我们可以用来增强的类
所有增强类都实现了一个典型的接口,其中包含一个名为“enhance(factor)”的方法。
PIL.ImageEnhance.[method](image_variable_name)
The method can be brightness, color, contrast, sharpness.
Parameter: The enhance() method takes just one parameter factor, i.e. a floating-point.
Return Type: This method returns an enhanced image.
课程如下:
亮度():
调整图像亮度。它习惯于控制我们生成的图像的亮度。亮度代码如下:
输入:
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()
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()
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()
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.Contrast(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()
增强因子为 0.0 会产生全黑图像,增强因子为 1.0 会产生与原始图像相同的结果。
输出:
颜色():
调整图像颜色级别。它习惯于控制我们生成的图像的颜色级别。着色代码如下:
输入:
蟒蛇3
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()
增强因子为 0.0 会产生完整的黑白图像,而增强因子为 1.0 会产生与原始图像相同的结果。
输出:
对比():
调整图像对比度。它习惯于控制我们生成的图像的对比度。改变对比度的代码如下:
输入:
蟒蛇3
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()
增强因子为 0.0 会产生完整的灰度图像,而增强因子为 1.0 会产生与原始图像相同的结果。
输出:
锐度():
调整图像清晰度。它习惯于控制我们生成的图像的清晰度。改变锐度的代码如下:
输入:
蟒蛇3
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.Contrast(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()
0.0 的增强因子导致图像模糊,1.0 的增强因子导致与原始图像相同,因子 > 1.0 导致图像锐化。
输出:
这 4 个类是最常用的,用于增强图像。那里还有许多其他功能。不要在这里停止学习,自己去探索更多。