Python图像处理库PIL的ImageEnhance模块使用介绍
ImageEnhance模块提供了一些用于图像增强的类。
一、ImageEnhance模块的接口
所有的增强类都实现了一个通用的接口,包括一个方法:
enhancer.enhance(factor)⇒image
该方法返回一个增强过的图像。变量factor是一个浮点数,控制图像的增强程度。变量factor为1将返回原始图像的拷贝;factor值越小,颜色越少(亮度,对比度等),更多的价值。对变量facotr没有限制。
二、ImageEnhance模块的Color类
颜色增强类用于调整图像的颜色均衡,在某种程度上类似控制彩色电视机。该类实现的增强接口如下:
ImageEnhance.Color(image)⇒Colorenhancerinstance
创建一个增强对象,以调整图像的颜色。增强因子为0.0将产生黑白图像;为1.0将给出原始图像。
ImageEnhance.Color类的实例:
>>>fromPILimportImage,ImageEnhance >>>im02=Image.open("D:\\Code\\Python\\test\\img\\test02.jpg") >>>im_1=ImageEnhance.Color(im02).enhance(0.1) >>>im_5=ImageEnhance.Color(im02).enhance(0.5) >>>im_8=ImageEnhance.Color(im02).enhance(0.8) >>>im_20=ImageEnhance.Color(im02).enhance(2.0)
从前面的介绍,我们可以得知函数enhance()的参数factor决定着图像的颜色饱和度情况。从0.1到0.5,再到0.8,2.0,图像的颜色饱和度依次增大。
图像im_1如下:
图像im_5如下:
图像im_8如下:
图像im_20如下:
三、ImageEnhance模块的Brightness类
亮度增强类用于调整图像的亮度。
ImageEnhance.Brightness(image)⇒Brightnessenhancerinstance
创建一个调整图像亮度的增强对象。增强因子为0.0将产生黑色图像;为1.0将保持原始图像。
ImageEnhance.Brightness类的实例:
>>>fromPILimportImage,ImageEnhance >>>im02=Image.open("D:\\Code\\Python\\test\\img\\test02.jpg") >>>im_2=ImageEnhance.Brightness(im02).enhance(0.2) >>>im_5=ImageEnhance.Brightness(im02).enhance(0.5) >>>im_8=ImageEnhance.Brightness(im02).enhance(0.8) >>>im_20=ImageEnhance.Brightness(im02).enhance(2.0)
该函数enhance()的参数factor决定着图像的亮度情况。从0.1到0.5,再到0.8,2.0,图像的亮度依次增大。
图像im_2如下:
图像im_5如下:
图像im_8如下:
图像im_20如下:
四、ImageEnhance模块的Contrast类
对比度增强类用于调整图像的对比度。类似于调整彩色电视机的对比度。
ImageEnhance.Contrast(image)⇒Contrastenhancerinstance
创建一个调整图像对比度的增强对象。增强因子为0.0将产生纯灰色图像;为1.0将保持原始图像。
ImageEnhance.Contrast类的实例:
>>>fromPILimportImage,ImageEnhance >>>im02=Image.open("D:\\Code\\Python\\test\\img\\test02.jpg") >>>im_1=ImageEnhance.Contrast(im02).enhance(0.1) >>>im_5=ImageEnhance.Contrast(im02).enhance(0.5) >>>im_8=ImageEnhance.Contrast(im02).enhance(0.8) >>>im_20=ImageEnhance.Contrast(im02).enhance(2.0)
该函数enhance()的参数factor决定着图像的对比度情况。从0.1到0.5,再到0.8,2.0,图像的对比度依次增大。
图像im_1如下:
图像im_5如下:
图像im_8如下:
图像im_20如下:
五、ImageEnhance模块的Sharpness类
锐度增强类用于调整图像的锐度。
ImageEnhance.Sharpness(image)⇒Sharpnessenhancerinstance
创建一个调整图像锐度的增强对象。增强因子为0.0将产生模糊图像;为1.0将保持原始图像,为2.0将产生锐化过的图像。
ImageEnhance.Sharpness类的实例:
>>>fromPILimportImage,ImageEnhance >>>im02=Image.open("D:\\Code\\Python\\test\\img\\test02.jpg") >>>im_0=ImageEnhance.Sharpness(im02).enhance(0.0) >>>im_20=ImageEnhance.Sharpness(im02).enhance(2.0) >>>im_30=ImageEnhance.Sharpness(im02).enhance(3.0)
该函数enhance()的参数factor决定着图像的锐度情况。从0.0到2.0,再到3.0,图像的锐度依次增大。
图像im_0如下:
图像im_20如下:
图像im_30如下:
#-*-coding:UTF-8-*- fromPILimportImage fromPILimportImageEnhance #原始图像 image=Image.open('lena.jpg') image.show() #亮度增强 enh_bri=ImageEnhance.Brightness(image) brightness=1.5 image_brightened=enh_bri.enhance(brightness) image_brightened.show() #色度增强 enh_col=ImageEnhance.Color(image) color=1.5 image_colored=enh_col.enhance(color) image_colored.show() #对比度增强 enh_con=ImageEnhance.Contrast(image) contrast=1.5 image_contrasted=enh_con.enhance(contrast) image_contrasted.show() #锐度增强 enh_sha=ImageEnhance.Sharpness(image) sharpness=3.0 image_sharped=enh_sha.enhance(sharpness) image_sharped.show()
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。