Python图像处理库PIL的ImageEnhance模块使用介绍


Posted in Python onFebruary 26, 2020

ImageEnhance模块提供了一些用于图像增强的类。

一、ImageEnhance模块的接口

所有的增强类都实现了一个通用的接口,包括一个方法:

enhancer.enhance(factor) ⇒ image

该方法返回一个增强过的图像。变量factor是一个浮点数,控制图像的增强程度。变量factor为1将返回原始图像的拷贝;factor值越小,颜色越少(亮度,对比度等),更多的价值。对变量facotr没有限制。

二、ImageEnhance模块的Color类

颜色增强类用于调整图像的颜色均衡,在某种程度上类似控制彩色电视机。该类实现的增强接口如下:

ImageEnhance.Color(image) ⇒ Color enhancer instance

创建一个增强对象,以调整图像的颜色。增强因子为0.0将产生黑白图像;为1.0将给出原始图像。

ImageEnhance.Color类的实例:

>>> from PIL import Image, 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如下:

Python图像处理库PIL的ImageEnhance模块使用介绍                             

图像im_5如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_8如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_20如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

三、ImageEnhance模块的Brightness类

亮度增强类用于调整图像的亮度。

ImageEnhance.Brightness(image)⇒ Brightnessenhancer instance

创建一个调整图像亮度的增强对象。增强因子为0.0将产生黑色图像;为1.0将保持原始图像。

ImageEnhance.Brightness类的实例:

>>> from PIL import Image, 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如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_5如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_8如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_20如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

四、ImageEnhance模块的Contrast类

对比度增强类用于调整图像的对比度。类似于调整彩色电视机的对比度。

ImageEnhance.Contrast(image)⇒ Contrast enhancer instance

创建一个调整图像对比度的增强对象。增强因子为0.0将产生纯灰色图像;为1.0将保持原始图像。

ImageEnhance.Contrast类的实例:

>>> from PIL import Image, 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如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_5如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_8如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_20如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

五、ImageEnhance模块的Sharpness类

锐度增强类用于调整图像的锐度。

ImageEnhance.Sharpness(image)⇒ Sharpness enhancer instance

创建一个调整图像锐度的增强对象。增强因子为0.0将产生模糊图像;为1.0将保持原始图像,为2.0将产生锐化过的图像。

ImageEnhance.Sharpness类的实例:

>>> from PIL import Image, 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如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_20如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

图像im_30如下:

Python图像处理库PIL的ImageEnhance模块使用介绍

六、ImageEnhance示例

#-*- coding: UTF-8 -*-  
 
from PIL import Image
from PIL import ImageEnhance
 
#原始图像
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()

到此这篇关于Python图像处理库PIL的ImageEnhance模块使用介绍的文章就介绍到这了,更多相关PIL ImageEnhance模块内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中使用glob和rmtree删除目录子目录及所有文件的例子
Nov 21 Python
举例讲解Python中的迭代器、生成器与列表解析用法
Mar 20 Python
Python读写Json涉及到中文的处理方法
Sep 12 Python
使用Python脚本实现批量网站存活检测遇到问题及解决方法
Oct 11 Python
python实现杨氏矩阵查找
Mar 02 Python
Python虚拟环境的原理及使用详解
Jul 02 Python
Python2 与Python3的版本区别实例分析
Mar 30 Python
Python使用xpath实现图片爬取
Sep 16 Python
Python脚本调试工具安装过程
Jan 11 Python
pandas 按日期范围筛选数据的实现
Feb 20 Python
python通过opencv调用摄像头操作实例分析
Jun 07 Python
python lambda 表达式形式分析
Apr 03 Python
Python基础之字符串常见操作经典实例详解
Feb 26 #Python
浅析python表达式4+0.5值的数据类型
Feb 26 #Python
Pandas时间序列基础详解(转换,索引,切片)
Feb 26 #Python
Python图像处理库PIL的ImageFont模块使用介绍
Feb 26 #Python
Python利用FFT进行简单滤波的实现
Feb 26 #Python
Python图像处理库PIL的ImageGrab模块介绍详解
Feb 26 #Python
Python图像处理库PIL的ImageDraw模块介绍详解
Feb 26 #Python
You might like
PHP教程之PHP中shell脚本的使用方法分享
2012/02/23 PHP
用Javascript实现UTF8编码转换成gb2312编码
2006/12/22 Javascript
参考:关于Javascript中实现暂停的几篇文章
2007/03/04 Javascript
jQuery读取和设定KindEditor值的方法
2013/11/22 Javascript
JS实现判断滚动条滚到页面底部并执行事件的方法
2014/12/18 Javascript
JS实现定时自动关闭DIV层提示框的方法
2015/05/11 Javascript
实现一个简单的vue无限加载指令方法
2017/01/10 Javascript
vue-router 学习快速入门
2017/03/01 Javascript
JS简单实现数组去重的方法示例
2017/03/27 Javascript
浅谈vuex之mutation和action的基本使用
2017/08/29 Javascript
分析javascript中9 个常见错误阻碍你进步
2017/09/18 Javascript
vue2 v-model/v-text 中使用过滤器的方法示例
2019/05/09 Javascript
vue 实现input表单元素的disabled示例
2019/10/28 Javascript
JS 图片压缩原理与实现方法详解
2020/04/29 Javascript
JS事件循环机制event loop宏任务微任务原理解析
2020/08/04 Javascript
vue内置组件keep-alive事件动态缓存实例
2020/10/30 Javascript
[01:22:29]真视界:2019年国际邀请赛总决赛
2020/01/29 DOTA
Python单元测试框架unittest简明使用实例
2015/04/13 Python
详解在Python程序中解析并修改XML内容的方法
2015/11/16 Python
Python操作MySQL数据库9个实用实例
2015/12/11 Python
深入理解Python变量与常量
2016/06/02 Python
windows下Python实现将pdf文件转化为png格式图片的方法
2017/07/21 Python
python os.listdir按文件存取时间顺序列出目录的实例
2018/10/21 Python
pycharm debug功能实现跳到循环末尾的方法
2018/11/29 Python
django 信号调度机制详解
2019/07/19 Python
一行python实现树形结构的方法
2019/08/09 Python
python 接口实现 供第三方调用的例子
2019/08/13 Python
Django 项目重命名的实现步骤解析
2019/08/14 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
国贸类专业毕业生的求职信分享
2013/12/08 职场文书
马云北大演讲完整版:真心话,什么才是阿里的核心竞争力?
2014/04/04 职场文书
竞选劳动委员演讲稿
2014/04/28 职场文书
竞选团支书演讲稿
2014/04/28 职场文书
2015国际残疾人日活动总结
2015/03/24 职场文书
电脑无法安装Windows 11怎么办?无法安装Win11的解决方法
2021/11/21 数码科技
Python中使用tkFileDialog实现文件选择、保存和路径选择
2022/05/20 Python