Pillow是Python中处理图像的一个强大的库,它是Python Imaging Library (PIL) 的一个分支,提供了丰富的图像处理和操作的功能。
安装 Pillow
在使用 Pillow 之前,需要安装 Pillow 库。可以通过以下命令安装:
pip install pillow
加载图像
使用 Pillow 加载一个图像文件可以很容易地完成。示例代码如下:
from PIL import Image
# Open an image file
with Image.open("example.jpg") as im:
# Display image information
print(f"Image format: {im.format}")
print(f"Image size: {im.size}")
print(f"Image mode: {im.mode}")
# Display the image
im.show()
这里使用Pillow的Image类打开图片文件example.jpg。with语句块会自动关闭文件,防止数据泄漏和浪费内存空间。
在代码块中,我们使用了三个属性来了解图片的基本信息:format
, size
和mode
。同时,使用show()
方法在一个独立的窗口中打开了该图片。
修改图像
Pillow 提供了多种方法用于修改图像。其中一些常用方法有:
- 调整图像大小
- 旋转和翻转图像
- 裁剪和粘贴图像
- 色彩空间转换
下面是一些使用 Pillow 修改图像的示例:
调整图像大小
from PIL import Image
# Open the original image
with Image.open("example.jpg") as im:
# Resize the image
new_size = (im.size[0] // 2, im.size[1] // 2)
new_im = im.resize(new_size)
# Display the new resized image
new_im.show()
在代码块中,我们首先打开原始图像,然后调整图像大小为原图像面积的一半,并将其保存到new_im
变量中。最后,使用show()
方法打开新图像。
图像旋转
from PIL import Image
# Open the original image
with Image.open("example.jpg") as im:
# Rotate the image
new_im = im.rotate(45, expand=True)
# Display the new rotated image
new_im.show()
在代码块中,我们首先打开原始图像,然后将图像旋转 45 度,并将其保存到new_im
变量中。最后,使用show()
方法打开新图像。
from PIL import Image
# Open the original image
with Image.open("example.jpg") as im:
# Flip the image horizontally
new_im = im.transpose(method=Image.FLIP_LEFT_RIGHT)
# Display the new flipped image
new_im.show()
在代码块中,我们首先打开原始图像,然后将其水平翻转,并将其保存到new_im
变量中。最后,使用show()
方法打开新图像。
裁剪图像
from PIL import Image
# Open the original image
with Image.open("example.jpg") as im:
# Crop the image
box = (100, 100, 400, 400)
new_im = im.crop(box)
# Display the new cropped image
new_im.show()
在代码块中,我们首先打开原始图像,然后根据指定的盒子(以像素为单位)裁剪图像,并将其保存到new_im
变量中。最后,使用show()
方法打开新图像。
总结
Pillow 提供了大量功能强大的图像处理方法,并且易于使用。本文介绍了如何使用 Pillow 中的预处理方法调整、旋转、翻转或裁剪图像。在 Pillow 文档中可以找到更多可用的方法,包括像素操作、滤波器和色彩空间转换等高级的方法。