Imagemagick:使用 luminance/overlay 掩码创建 3 张图像中的 1 张

Imagemagick: Create 1 image out of 3 with luminance/overlay mask

我想用 3 张图片生成一张图片。其中一张是背景,一张是形状遮罩,一张是形状的颜色。

图片如下:

shape.png (透明背景,中间白圈内黑圈黑圈内灰圈)

shapecolor.png

background.png

background.png应该是整体背景。最重要的是形状,所有白色部分(以及灰色部分中的白色)的颜色应为 shapecolor.png

我使用简单的单色图像使其更容易,但我在现实中使用了一些纹理^^

我不知道如何在 Imagemagick 中解决这个问题,该工具非常强大,文档不太容易理解。试图解决这个问题 3 小时,但没有得到结果,应该是这样的:

有人可以帮忙吗?

这是在 Imagemagick 中执行此操作的一种方法。在第二行中,从 omg.png 中提取 alpha 通道并将其保存在 mpr: 内存图像中,然后删除克隆。然后我在最后一步中使用 mpr: 图像。

convert red.png img.png \
\( +clone -alpha extract -write mpr:alpha +delete \) \
-compose multiply -composite \
green.png +swap mpr:alpha -compose over -composite \
result.png