让我们说我想拍摄我的RGB图像并完全交换它的绿色通道,比如另一个图像的蓝色通道。最好的方法是什么?我的第一个想法是它会存在于ImageChops中,但这似乎是全通道合成功能。
答案 0 :(得分:4)
Coworker找到了它。 Getalpha和putalpha太具体了,因为我需要其他渠道。 Image.getdata和Image.merge是我最终需要的东西(好吧,我实际上把几张完整的图像写成" L"合并之前)
以后任何人有同样问题的例子:
R, G, B= im.getdata(0), im.getdata(1), im.getdata(2)
newImage = Image.merge("RGB", [R,G,B])
我使用的代码首先烘焙到一个频道:
specChannel = Image.open(os.path.join(self.info['stagingFolder'], "specular.png")).convert("L")
glossChannel = Image.open(os.path.join(self.info['stagingFolder'], "gloss.png")).convert("L")
BlankIm = Image.new("L", (512,512), (255))
mask2Im = Image.merge("RGBA", [specChannel,BlankIm,BlankIm,glossChannel])