Python Pillow 合并图像

Python Pillow 合并图像

Pillow包允许你将一张图片粘贴到另一张上。merge()函数接受一个模式和一个图像的元组作为参数,并将它们合并成一个图像。

语法

Image.merge(mode, bands)

其中。

  • mode – 用于输出图像的模式。

  • bands – 一个序列,包含输出图像中每个波段的一个单波段图像。所有波段必须有相同的尺寸。

  • 返回值 – 一个图像对象。

使用merge()函数,你可以将一个图像的RGB波段合并为:

from PIL import Image
image = Image.open("beach1.jpg")
r, g, b = image.split()
image.show()
image = Image.merge("RGB", (b, g, r))
image.show()

在执行上述代码时,你可以看到原始图像和合并了RGB带的图像,如下图所示。

输入图像

Python Pillow 合并图像

输出图像

Python Pillow 合并图像

合并两幅图像

以同样的方式,要合并两个不同的图像,你需要

  • 使用open()函数为所需图像创建图像对象。

  • 在合并两张图片时,你需要确保两张图片的尺寸是相同的。因此,获取两张图片的每个尺寸,如果需要,相应地调整它们的尺寸。

  • 使用Image.new()函数创建一个空图像。

  • 使用paste()函数粘贴图像。

  • 使用save()和show()函数保存和显示结果的图像。

例子

下面的例子演示了使用python pillow合并两张图片的过程

from PIL import Image
#Read the two images
image1 = Image.open('images/elephant.jpg')
image1.show()
image2 = Image.open('images/ladakh.jpg')
image2.show()
#resize, first image
image1 = image1.resize((426, 240))
image1_size = image1.size
image2_size = image2.size
new_image = Image.new('RGB',(2*image1_size[0], image1_size[1]), (250,250,250))
new_image.paste(image1,(0,0))
new_image.paste(image2,(image1_size[0],0))
new_image.save("images/merged_image.jpg","JPEG")
new_image.show()

输出

如果你将上述程序保存为Example.py并执行,它会使用标准的PNG显示工具显示两张输入图像和合并后的图像,如下所示

输入图像1

Python Pillow 合并图像

输入图像2

Python Pillow 合并图像

合并后的图像

Python Pillow 合并图像

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程