📅  最后修改于: 2023-12-03 14:52:04.038000             🧑  作者: Mango
Pillow 是一个 Python 3 的图像处理库,它可以让你轻松地进行图片处理,如旋转、裁剪、缩放、合并等操作。其中,合并多张相同大小的图像是一项常见的任务,在下面的介绍中,我们将使用 Pillow 实现这个功能。
在使用 Pillow 之前,我们需要先安装它,可以使用以下命令:
pip3 install pillow
假设我们有三张相同大小的图片 pic1.png
、pic2.png
、pic3.png
,这三张图片要合并成一张大图。
使用 Pillow 打开图片可以使用 Image.open()
方法。例如,打开 pic1.png
可以使用以下代码:
from PIL import Image
pic1 = Image.open("pic1.png")
创建一个新的空白图片可以使用 Image.new()
方法。这个方法需要传入两个参数:
例如,我们打算将三张 100x100 的图片合并,那么可以如下创建一个大小为 300x100 的新图片:
new_img = Image.new("RGB", (300, 100))
使用 Image.paste()
方法可以将图片粘贴到新图片上。这个方法需要传入两个参数:
box
应该是 (0, 0, 100, 100)
。new_img.paste(pic1, (0, 0, 100, 100))
将第二张、第三张图片粘贴到新图片的相应位置上,同样也需要调用 Image.paste()
方法。
完成合并后,我们需要将新图片保存到磁盘上。使用 Image.save()
方法可以将图片保存到指定路径。例如,保存到当前目录下的 merged.png
时可以执行以下代码:
new_img.save("merged.png")
至此,合并图像的任务就已经完成了。下面是完整的代码:
from PIL import Image
# 打开图片
pic1 = Image.open("pic1.png")
pic2 = Image.open("pic2.png")
pic3 = Image.open("pic3.png")
# 创建新图片
new_img = Image.new("RGB", (300, 100))
# 粘贴图片
new_img.paste(pic1, (0, 0, 100, 100))
new_img.paste(pic2, (100, 0, 200, 100))
new_img.paste(pic3, (200, 0, 300, 100))
# 保存图片
new_img.save("merged.png")
在本文中,我们介绍了如何使用 Python 3 模块 Pillow 合并相同大小的图像。需要注意的是,合并过程中需要确保所有图片的尺寸相同,否则合并后的图片可能会出现问题。