快速学习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')
修改图片

修改图片尺寸

from PIL import Image, ImageFilter

# 读取图片
image = Image.open('test.jpg')
print(image.size)
# 修改图片的尺寸,以像素为单位)以二元组表示:(宽度,高度)
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()

22c75caedaedd0ecf93e3ad896e196a1.png


from PIL import Image

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

# 读取粘贴的图片
paste_image = Image.open('erweima.jpg')
# 也可以指定需要粘贴的位置 设置二维码位置为右下角
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")

3a27c2b4133157e9ee4eeb84f8238254.png

生成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)

b8a394dc23a5ba92ccab36368395193f.png

c28f9ff84002ffab5694c0677fd8a565.gif

上面是pillow的一些简单使用,其他更多使用,大家可以参考官方文档
https://pillow.readthedocs.io/en/stable/
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员吾非同

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值