【发布时间】:2018-10-22 00:34:49
【问题描述】:
我有 2 个 png 图像列表,列表 _c 和列表 _v。我想使用以下代码将 _v 粘贴到 _c 上:
from PIL import Image
background = [Image.open(path, 'r') for path in glob.glob(list_c_path)]
foreground = [Image.open(path, 'r') for path in glob.glob(list_v_path)]
for im in range(len(background)):
pasted = background[im].paste(foreground[im], (0, 0), foreground[im])
此代码不起作用,但它会让您了解我想要什么。我还需要在粘贴之前以灰度格式读取图像。
这是背景图片的示例:
这是前景图像的示例:
这是想要的结果:
我用这段代码粘贴了这张图片:
background = Image.open('1000_c.png')
foreground = Image.open('1000_v.png')
background.paste(foreground, (0, 0), foreground)
background.save('example.png')
我怎样才能做到这一点??
提前致谢
【问题讨论】:
-
图片粘贴后如何读取灰度?您必须在粘贴之前阅读它们。前景、背景和结果图像的外观如何 - 请提供示例。
-
你说得对,我要编辑我的问题。请稍等
-
@MarkSetchell 问题已编辑
-
我不在电脑前查看,但您的结果看起来与您粘贴在背景顶部的图像相同?
-
嗯...您的结果图像与您的前景图像相同,因为尽管前景图像具有 Alpha/透明层,但它们完全不透明并且完全隐藏了您的背景。你需要重新考虑一下!
标签: python-3.x image-processing python-imaging-library