山东 网站建设 公司,网站建设公司株洲,上海百网优seo优化公司,佛山建设网站公司吗本篇将会介绍python中的一个图像库Pillow。 文章目录 1. Pillow与PIL的关系2. 调整大小3. 加滤镜4. 剪裁5. 生成验证码 1. Pillow与PIL的关系
我们在网上搜python的图像库的话#xff0c;可能搜到的时PIL。实际上之前python发展的时候就是PIL#xff0c;这个库比较好用可能搜到的时PIL。实际上之前python发展的时候就是PIL这个库比较好用可惜的是只支持到python2而在python有一个大坑就是版本间即2跟3之间是不兼容的。 而到了3就有人在PIL的基础上开发了Pillow并且接口、导入等都是按照PIL的所以大家可以简单的认为Pillow就是python3版本上PIL。
PIL(Python Image Library)Pillow
Pillow安装代码为
pip install pillow下面使用到的实例原图为下图
2. 调整大小
In [26]: from PIL import ImageIn [27]: im Image.open(photo.jpg)In [28]: newim im.resize((100,100))In [29]: newim.save(output1.jpg)3. 加滤镜
In [31]: from PIL import ImageFilterIn [32]: im2 im.filter(ImageFilter.BLUR)In [33]: im2.save(blur.jpg,jpeg)4. 剪裁
In [34]: im3 im.crop((100,100,400,400))In [35]: im3.save(subclip.jpg,jpeg)5. 生成验证码
早期验证码的生成方式代码如下
from PIL import Image,ImageDraw,ImageFont,ImageFilterimport random
# 随机字母:
def rndChar():return chr(random.randint(65,90))# 随机毅色1:
def rndColor():return (random.randint(64,255),random.randint(64,255),random.randint(64,255))# 随机毅色2:
def rndColor2():return (random.randint(32,127),random.randint(32,127),random.randint(32,127))# 240 X 68:
width 60 * 4
height 68
image Image.new(RGB,(width, height),(255,255,255))
# 创建Font对象:
font ImageFont.truetype(rC:\windows\Fonts\arial.ttf,36)
# 创建Draw对象:
draw ImageDraw.Draw(image)
# 填充每个像素:
for x in range(width):for y in range(height):draw.point((x,y),fillrndColor())
# 输出文字:
for t in range(4):draw.text((60*t 10,10), rndChar(), fontfont, fillrndColor2())
# 模糊
image image.filter(ImageFilter.BLUR)
image.save(code.jpg,jpeg)运行结果为下 自此作为自学引导的模块学习到此为止python还有很多的模块需要未来大家自行进行学习。 下篇将会进行python的主线学习学习python中的面向对象的编程那些讲完之后如果还有更好玩的第三方模块再进行介绍。
6. 学习视频地址用Python为美女打码