社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

4行代码,Python搞定美图秀秀!

Python爱好者社区 • 3 年前 • 448 次点击  


我们平时使用一些图像处理软件时,经常会看到其对图像的亮度、对比度、色度或者锐度进行调整。你是不是觉得这种技术的底层实现很高大上?

其实最基础的实现原理,用 Python 实现只需要几行代码,学会后你也可以进行简单的图像增强处理了。

图像增强哪家强

Python 中 PIL 模块中有一个叫做 ImageEnhance 的类,该类专门用于图像的增强处理,不仅可以增强(或减弱)图像的亮度、对比度、色度,还可以用于增强图像的锐度。

要使用这个模块,你必须先安装 PIL库:

pip install pillow

图像增强处理

读取图像


image = Image.open('girl.jpeg')
image.show()

我们的原始图像是一个拿着西红柿的清纯女孩:

亮度增强

enh_bri = ImageEnhance.Brightness(image)
brightness = 4
image_brightened = enh_bri.enhance(brightness)
image_brightened.show()

为了对比明显,我们将原始图像的亮度增强4倍,看看效果:

增强后的图像过于曝光了,是不是有那么一点刺眼?

色度增强

enh_col = ImageEnhance.Color(image)
color = 4
image_colored = enh_col.enhance(color)
image_colored.show()

同样地,我们将原始图像的色度增强4倍,看看效果:

这张图像的色彩就比较浓厚了,顿时感觉从一个青春少女变成一个风尘女子了!

对比度增强

enh_con = ImageEnhance.Contrast(image)
contrast = 4
image_contrasted = enh_con.enhance(contrast)
image_contrasted.show()

同样地,我们将原始图像的对比度增强4倍,看看效果:

这张图像就把细节处凸显得很明显了,有点像很早期的那种电影画面。

锐度增强

enh_sha = ImageEnhance.Sharpness(image)
sharpness = 4
image_sharped = enh_sha.enhance(sharpness)
image_sharped.show()

同样地,我们将原始图像的锐度增强4倍,看看效果:

锐度增强之后,看起来还比较可以,跟原图相比变化没那么明显。

总结

看完之后,是不是感觉很简单?最基础的四项图像增强技能全部只需一行代码就可以实现。我这里是对图像进行增强,你也可以反向操作,只需要将系数调整为小于1就可以实现图像减弱。

当然,实际的应用中,我们肯定会将这些维度综合调优,才能达到美图的效果。

--- EOF ---
推荐↓↓↓

整理不易,请点赞和在看
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/132720
 
448 次点击