Во-первых, при использовании ImageMagick версии 7 вы должны использовать команду «magick» вместо «convert». Тем не менее, вот пример, который должен делать то, что вы пытаетесь выполнить с помощью одной команды ...
magick src.jpg -resize 600 -compose dissolve \
-define compose:args=25 -gravity center overlay1.png -composite \
-define compose:args=60 -gravity southeast overlay2.png -composite \
-define compose:args=85 -gravity north overlay3.png -composite \
-quality 70 one.jpg
Это начинается с чтения входного изображения, изменения его размера до 600 пикселей и установки метода compose на «роспуск». Затем он устанавливает величину растворения 25%, устанавливает гравитацию в «центр» и комбинирует первое наложенное изображение с источником. Он продолжает, устанавливая требуемое количество растворения и плотность для каждого последующего наложения и объединяет их в результаты каждой предыдущей операции.
Завершите, установив качество сжатия для выходного JPG и записав выходной файл. Результатом будет исходное изображение с несколькими наложениями, каждое с разной прозрачностью и местоположением, и все будет выполнено в рамках одной команды, чтобы избежать ухудшения качества в процессе.
Если вы работаете в Windows, вам нужно изменить эти обратные косые черты в продолжениях строки "\" на "^".
Также обратите внимание, что если вам когда-либо придется сохранять и перечитывать промежуточные файлы, вам не следует сохранять их в формате JPG, поскольку при каждой итерации будет потеря качества.