В командной строке Imagemagick, если у вас есть два входных изображения A и B
convert A B -define compose:args="a,b,c,d" -compose mathematics result
then
that means
a*A*B + b*B + c*A +d
so
a*A*B is
convert A B -compose multiply -composite -evaluate multiply a tmp1
b*B is
convert B -evaluate multiply b tmp2
c*A is
convert A -evaluate multiply c tmp3
a*A*B + b*B + c*A +d
convert tmp1 tmp2 -compose plus -composite tmp3 -compose plus -composite -evaluate add 100*d% result
where 100*d must be evaluated ahead of time
Вам необходимо получить эквиваленты Imagick.
Не все применения математики -compose будут отделимыми, если они включают значения вне квантового диапазона вашего компилятора.Поэтому убедитесь, что вам нужно использовать HDRI-компиляцию Imagemagick, например, с компиляцией по умолчанию Imagemagick 7 или перекомпилировать IM 6 с включенным HDRI.
Если вы не можете использовать HDRI, то если отдельные операции не работают, то вынужно будет использовать -fx, чтобы сделать эквивалент, и это будет значительно медленнее