通过案例实战深入认识python图像处理库Pillow

什么是Pillow

首先我们需要了解一下PIL(Python Imaging Library),它是Python2中非常强大的图像处理标准库,但只支持到Python2.7。Pillow是在PIL的基础上创建了兼容的版本,支持最新Python 3.x,又加入了许多新特性。

安装

pip install pillow

其中Image是pillow库的一个常用的模块,提供了很多图片处理的方法。

pillow图像处理的简单使用

图片信息显示

from PIL import Image # 操作图片的类型

加载图片
image = Image.open('test1.jpg')

打开图片
image.show()

查看图像大小(宽度,高度)(6621, 4414)
print(image.size)

# 获取模式
print(image.mode) # RGB
#
# 显示的文件的格式 JPEG
print(image.format)
#
# 图片的详细信息{'jfif': 257, nsity': (72, 72......),
print(image.info)
#
# 保存为另一张图片(可以更改图片的格式)
image.save('test2.bmp')
#Python视频教程、源码、电子书、软件、解答、学习路线图、加群 924040232

修改图片

修改图片尺寸

from PIL import Image, ImageFilter

读取图片
image = Image.open('test.jpg')
print(image.size)
修改图片大小(以像素为单位),以两个元组表示:(Width,Height)<details><summary>*<font color='gray'>[En]</font>*</summary>*<font color='gray'>Modify the size of the picture in pixels) expressed in two tuples: (width, height)</font>*</details>
image1 = image.resize((image.size[0]//3, image.size[1]//3))
#
image1.show()
#
保存下来
image1.save('test.jpg')

裁剪旋转图片

from PIL import Image, ImageFilter

读取图片
image = Image.open('test1.jpg')
裁剪图片
设置一个边缘间距[left, upper, right, lower] 左上角和右下角
image1 = image.crop(box=(0, 0, 2000, 2000)) # 600 * 336
image1.show()
图片旋转
image2 = image.rotate(45)
image2.show()

为图片添加水印

可以为一张图片加上二维码

from PIL import Image

读取图片
image = Image.open('test.jpg')

读取粘贴的图片
paste_image = Image.open('erweima.jpg')
如果需要粘贴的图片较大,可以通过resize()修改一下尺寸
image.paste(paste_image) # 默认把图片粘贴到左上角
image.show()

通过案例实战深入认识python图像处理库Pillow
from PIL import Image

读取图片
image = Image.open('test.jpg')

读取粘贴的图片
paste_image = Image.open('erweima.jpg')
您还可以指定要粘贴的位置,并将二维码位置设置在右下角。<details><summary>*<font color='gray'>[En]</font>*</summary>*<font color='gray'>You can also specify the location to be pasted and set the QR code location to the lower right corner.</font>*</details>
position = (image.size[0] - paste_image.size[0], image.size[1] - paste_image.size[1])
image.paste(paste_image,position)
image.show()
image.save("syzp.jpg")

通过案例实战深入认识python图像处理库Pillow

生成gif图片

from PIL import Image

images = []
for i in range(5):
    im = Image.open('mkgif/{}.png'.format(i + 1))
    images.append(im)
images[0].save("test.gif", save_all=True, loop=True, append_images=images[1:], duration=500)

通过案例实战深入认识python图像处理库Pillow

通过案例实战深入认识python图像处理库Pillow

Original: https://www.cnblogs.com/hahaa/p/15913127.html
Author: 轻松学Python
Title: 通过案例实战深入认识python图像处理库Pillow

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/509992/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球