写点什么

软件测试|Python 神器 pillow,从此拍照不再需要滤镜

  • 2023-11-15
    北京
  • 本文字数:1003 字

    阅读完需:约 3 分钟

前言

之前我们介绍了 pillow 的 Image 类的基础用法,讲解了打开图片,保存图片,翻转图片的一些方法,但是我们答应朋友的修图并没有介绍,这篇文章我们主要就来介绍一下 pillow 的修图功能。

模块选用

工具毫无疑问还是我们之前介绍过的 pillow 模块,只不过我们要导入的类不只是 Image 类,专门用于增强图像的 ImageEnhance 类也需要导入,该模块可以增强(或减弱)图像的亮度、对比度、色度,还可以用于增强图像的锐度。


from PIL import Image,ImageEnhance
复制代码

读取图片

读取图片的方法我们上篇文章介绍过了,我们先要找到我们要处理的照片,然后考虑从什么方面优化,所以直接上代码:


from PIL import Image,ImageEnhance
"读取图片"image = Image.open('./data/scene1.jpg')image.show()
复制代码


读取图片如下所示(春节时候在家拍摄的照片,那是老家的新貌):


增强亮度

当图片较暗时,我们可以使用增强亮度的方法来增强图片亮度,使用 ImageEnhance.Brightness()方法,代码如下:


from PIL import Image,ImageEnhance
"读取图片"image = Image.open('./data/scene1.jpg')# image.show()
"增强亮度"bright_enh = ImageEnhance.Brightness(image)#调整亮度值brightness = 3image_brightened = bright_enh.enhance(brightness)image_brightened.show()
复制代码


增强后图片效果如下:


增强色度

当我们需要给图片增强色度时,可以使用 ImageEnhance.Color()方法来增强色度,代码如下:


 from PIL import Image,ImageEnhance
"读取图片"image = Image.open('./data/scene1.jpg')
"增强色度"color_enh = ImageEnhance.Color(image)#调整色度值color = 3image_colored = color_enh.enhance(color)image_colored.show()
复制代码


执行后,图片效果如下:


增强对比度

增强亮度和色度都还不够的话,我们可以增加一下照片的对比度,增强图片的效果。代码如下:


from PIL import Image,ImageEnhance
"读取图片"image = Image.open('./data/scene1.jpg')# image.show()
"增强对比度"contrast_enh = ImageEnhance.Contrast(image)#调整对比度contrast = 3image_contrasted = contrast_enh.enhance(contrast)image_contrasted.show()
复制代码


执行后,图片效果如下:


总结

本文主要介绍了 pillow 的 ImageEnhance 模块增强图片效果的方法,我们可以使用增强亮度,增强色度以及增强对比度的方法来增强我们图片的效果,这几个方法可以替代一些美颜滤镜的功能,希望能够帮到我在内的部分单身狗。


获取更多技术资料,请点击!

用户头像

社区:ceshiren.com 微信:ceshiren2021 2019-10-23 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料,实时更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬。

评论

发布
暂无评论
软件测试|Python神器pillow,从此拍照不再需要滤镜_霍格沃兹测试开发学社_InfoQ写作社区