如何使用 ImageMagick 交错两个图像?

How can I interlace two images using ImageMagick?

我有 2 张相同大小的图像,分别称为 image1.pngimage2.png。在 ImageMagick 中,有什么方法可以通过从 image1.png 中获取奇数行并与 image2.png 中的偶数行合并来合并两个图像?

当然,让隔行透明:

# Make red test image
convert -size 300x200 xc:red red.png

# Make blue test image
convert -size 300x200 xc:blue blue.png

# Merge with alternate lines made transparent
convert red.png \( blue.png -alpha on -channel A -fx 'j%2' \) -composite result.png

或者,另一种思考方式是加载两个图像,然后根据行从第一个 (u) 或第二个 (v) 中选择像素:

convert red.png blue.png -fx 'j%2 ? u : v' result.png

在 Windows 上,这两个结果为:

REM Do Windows style commands
convert red.png ^( blue.png -alpha on -channel A -fx "j%2" ^) -composite result.png

REM Windows style
convert red.png blue.png -fx "j%2 ? u:v" result.png