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

发布时间:2020-08-31 20:08:55

来源:脚本之家

阅读:66

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如下:

图像im_5如下:

图像im_8如下:

图像im_20如下:

三、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如下:

图像im_5如下:

图像im_8如下:

图像im_20如下:

四、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如下:

图像im_5如下:

图像im_8如下:

图像im_20如下:

五、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如下:

图像im_20如下:

图像im_30如下:

六、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图像处理库PIL的ImageEnhance模块使用介绍相关推荐

  1. python解析xml文件选用模块_Python标准库系列之xml模块

    Python's interfaces for processing XML are grouped in the xml package. 带分隔符的文件仅有两维的数据:行和列.如果你想在程序之间交 ...

  2. python标准库的图像处理模块_Python图像处理库PIL的ImageFont模块使用介绍

    ImageFont模块定义了相同名称的类,即ImageFont类.这个类的实例存储bitmap字体,用于ImageDraw类的text()方法. PIL使用自己的字体文件格式存储bitmap字体.用户 ...

  3. python图合并_Python图像处理实现两幅图像合成一幅图像的方法【测试可用】

    本文实例讲述了Python图像处理实现两幅图像合成一幅图像的方法.分享给大家供大家参考,具体如下: 将两幅图像合成一幅图像,是图像处理中常用的一种操作,python图像处理库PIL中提供了多种种将两幅 ...

  4. python图像处理实例_python 图像处理(示例代码)

    Pillow是Python里的图像处理库(PIL:Python Image Library),提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存.图像显示.格式转换以及基本的图像处理操作 ...

  5. python字符串库函数_Python标准库概览(1):string

    Python的 string 标准库保留了一些有用的函数和用于处理文本对象的类,现在我们来一起看一下Python的string标准库还有哪些我们不知道的有趣用法? 01.capwords()函数:将字 ...

  6. python日志模块_Python之日志处理(logging模块)

    转载自:https://www.cnblogs.com/yyds/p/6901864.html 本节内容 日志相关概念 logging模块简介 使用logging提供的模块级别的函数记录日志 logg ...

  7. python excel处理模块_Python(00):openpyxl模块处理Excel文件

     首先贴出四种方法适用范围比较: 注释:Excel 2003 即XLS文件有大小限制即65536行256列,所以不支持大文件.而Excel 2007以上即XLSX文件的限制则为1048576行163 ...

  8. python需要安装哪些模块_python 调用StringIO需要安装哪个模块?怎么安装?

    展开全部 安装python时,一定勾选pip install选项. 1. 首先,安装python时,一定勾选pip install选项: 2.http://www.lfd.uci.edu/~gohlk ...

  9. python手机安装模块_python 调用StringIO需要安装哪个模块?怎么安装?

    安装python时,一定勾选pip install选项. 1. 首先,安装python时,一定勾选pip install选项: 2.http://www.lfd.uci.edu/~gohlke/pyt ...

最新文章

  1. 正则的实例用法,删除包含某些字符的字符串
  2. Linux下PS1设置
  3. Dijkstra算法的思想和数学归纳法
  4. python打怪之路【第二篇】:ImportError: No module named setuptools
  5. JavaScript0-闭包
  6. ssh框架常见错误与解决方法
  7. hibernate reverse engineering 中没有java src folder
  8. 用XYNTService把Python程序变为服务
  9. 错误解决办法:‘NULL’ was not declared in this scope
  10. 修复IPSEC Services服务无法启动的问题
  11. matlab 一阶惯性环节,一阶二阶电路滤波器的软件方式实现
  12. Lync 2013安装要点
  13. STM32管脚的复用和重定义功能(RCC_APB2Periph_AFIO)
  14. openwrt 使用自定义 DNS
  15. java抽奖活动_java抽奖思路
  16. C++数据采集软件和数据显示软件(TCP通信)
  17. 【Vue】详解Vue生命周期
  18. 2.STM32F407之HAL库——星星点灯
  19. 软件外包平台有哪些,软件外包公司要怎么选?
  20. linux windows 运维比较,linux与windows的比较_系统运维_linux操作_linux系统_课课家

热门文章

  1. Windows server WSUS补丁服务器搭建(转)
  2. 阿里云容器服务飞天敏捷版详解
  3. 阿里云产品汇总及解释
  4. Git学习总结(2)——初识 GitHub
  5. 双光子荧光成像_有机双光子荧光染料在生物成像中的应用取得新进展
  6. java 后台跳出提示_小猿圈Java初学者练习小案例:猜数字游戏
  7. fastslam matlab,fastslam 快速定位和构图的源码,一个简单的例子,3D建模,可以用作学习智能机器人自主移动 matlab 272万源代码下载- www.pudn.com...
  8. linux下nginx的基本使用
  9. mysql 运维常见操作
  10. buffer cache 内存管理物理结构纯干货