Python实现将一张图片贴到另一张图片上
在图像处理中,往往需要将多张图片合成一张图片。这里介绍使用Python实现将一张图片贴到另一张图片上的方法。
准备工作
在实现之前,我们需要安装Python的图像处理库Pillow和numpy。
可以通过pip进行安装:
pip install Pillow numpy
打开原始图片和待贴图片
使用Pillow库中的Image.open方法读取图片并打开:
from PIL import Image
import numpy as np
# 打开原始图片和待贴图片
back_img = Image.open('back.jpg')
front_img = Image.open('front.png')
将图片转换为numpy数组
使用Pillow库中的numpy.asarray方法将图片转换为numpy数组:
# 将图片转换为numpy数组
back_img_array = np.asarray(back_img)
front_img_array = np.asarray(front_img)
将待贴图片贴到原始图片上
通过将待贴图片的alpha通道设置为0可以去除待贴图片的背景:
# 将待贴图片贴到原始图片上
back_img_array[10:210, 400:600] = front_img_array[:200, :200, :3] * (front_img_array[:200, :200, 3:] / 255.0)