Как я могу чередовать два изображения с помощью ImageMagick?

У меня есть 2 изображения одного размера, называемые image1.png а также image2.png, В ImageMagick, есть ли способ объединить два изображения, беря нечетные строки из image1.png и слить с четной линией от image2.png?

1 ответ

Решение

Конечно, сделайте чередующиеся строки прозрачными:

# 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
Другие вопросы по тегам