Python日课-3.1-pillow滤镜初识
Python 日课 2021-01-18:Pillow 滤镜初识。
各位同学大家好哇,今天周一,我们的 Python 课堂又来啦。
在上周三的课程 Python日课-2.4-pip的使用 中,我们安装了 pillow 库,今天我们就来看看 pillow 能干点啥。
pillow 是一个开源的图像处理库,虽然是一个外部库,但它已经成为了 Python 事实上的图像处理标准。Pillow 的官网在这里:
https://pillow.readthedocs.io/en/stable/
如果你更喜欢看中文文档的话,可以参考这里:
https://pillow-cn.readthedocs.io/zh_CN/latest/
我们使用最新的 Pillow 8.1 来做讲解,中文文档是基于 Pillow 2.4 翻译的。
完成今天的课程,曾老师准备了两张图片:
没错,这两张图片就是 SAGI GAMES 现场用手机拍摄的。
为了方便讲述,我们所有的代码均位于 pycourse 文件夹中,这两张照片位于 pycourse/assets/
文件夹中,结构如下:
pillow1.py
文件的作用是将 「餐厅.jpg」进行高斯模糊处理,处理后的文件名为「餐厅_高斯模糊_10.jpg」。
pillow2.py
文件的作用是将「前台.jpg」进行模式滤镜处理,处理后的文件名为「前台_模式_10.jpg」。
pillow1.py
的内容如下:
1# 曾老师的 Python 课
2# 课程地址:https://blog.zengrong.net/tag/pythoncouse/
3# 课程内容:2021-01-18 pillow 高斯模糊滤镜
4# 高斯模糊滤镜文档: https://pillow.readthedocs.io/en/4.1.x/reference/ImageFilter.html#PIL.ImageFilter.GaussianBlur
5
6from pathlib import Path
7from PIL import Image
8from PIL.ImageFilter import GaussianBlur
9
10# 当前文件所在文件夹
11basedir = Path(__file__).parent
12
13# 原始图像文件
14sfile = basedir.joinpath('assets/餐厅.jpg')
15# 目标图像文件
16tfile = basedir.joinpath('assets/餐厅_高斯模糊_10.jpg')
17
18# 创建一个高斯模糊滤镜对象,模糊半径为 10
19gb = GaussianBlur(radius=10)
20
21# 打开原始图像
22simg = Image.open(sfile)
23# 对原始图像文件使用滤镜,返回一个目标图像
24timg = simg.filter(gb)
25
26# 将应用过滤镜的图像文件保存到目标图像文件中
27timg.save(tfile)
pillow2.py
的内容如下:
1# 曾老师的 Python 课
2# 课程地址:https://blog.zengrong.net/tag/pythoncouse/
3# 课程内容:2021-01-18 pillow 模式滤镜
4# 模式滤镜文档: https://pillow.readthedocs.io/en/4.1.x/reference/ImageFilter.html#PIL.ImageFilter.ModeFilter
5
6from pathlib import Path
7from PIL import Image
8from PIL.ImageFilter import ModeFilter
9
10# 当前文件所在文件夹
11basedir = Path(__file__).parent
12
13# 原始图像文件
14sfile = basedir.joinpath('assets/前台.jpg')
15# 目标图像文件
16tfile = basedir.joinpath('assets/前台_模式_10.jpg')
17
18# 创建一个模式滤镜对象,size 为 10
19gb = ModeFilter(size=10)
20
21# 打开原始图像
22simg = Image.open(sfile)
23# 对原始图像文件使用滤镜,返回一个目标图像
24timg = simg.filter(gb)
25
26# 将应用过滤镜的图像文件保存到目标图像文件中
27timg.save(tfile)
分别执行:
1python pillow1.py
2python pillow2.py
就可以使用滤镜生成新的图像啦!生成的图像位于 pycourse/assets/
文件夹中。
今天的课程就到这里啦,欢迎大家到群里讨论。
下载源码附件:
全文完
- 文章ID:2743
- 原文作者:zrong
- 原文链接:https://blog.zengrong.net/post/python-daily-pillow1/
- 版权声明:本作品采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可,非商业转载请注明出处(原文作者,原文链接),商业转载请联系作者获得授权。