// исходник маски
$mask = new Imagick($_SERVER['DOCUMENT_ROOT'] . '/mask.png');
// меняем прозрачный цвет на оранжевый и черный на прозрачный
$mask->opaquePaintImage('transparent', 'orange', 10, false, Imagick::CHANNEL_DEFAULT);
$mask->opaquePaintImage('black', 'transparent', 10, false, Imagick::CHANNEL_DEFAULT);
//$mask->writeImage($_SERVER['DOCUMENT_ROOT'] . '/prepare-mask.png');
// исходник изображения
$source = new Imagick($_SERVER['DOCUMENT_ROOT'] . '/image.jpeg');
// накладываем маску на изображение
$mask->compositeImage($source, Imagick::COMPOSITE_DSTOVER, 0, 0); //COMPOSITE_DSTATOP
//$mask->writeImage($_SERVER['DOCUMENT_ROOT'] . '/composite.png');
// меняем оранжевый цвет на прозрачный
$mask->opaquePaintImage('orange', 'transparent', 10, false, Imagick::CHANNEL_DEFAULT);
$mask->setImageFormat('png');
//$mask->writeImage($_SERVER['DOCUMENT_ROOT'] . '/result.png');
header('Content-type: image/png');
echo $mask;
mask.png
![632b4e17ed639827850623.png](https://habrastorage.org/webt/63/2b/4e/632b4e17ed639827850623.png)
prepare-mask.png
![632b4e4da878a138015478.png](https://habrastorage.org/webt/63/2b/4e/632b4e4da878a138015478.png)
image.jpeg
![632b4e7087608919904339.jpeg](https://habrastorage.org/webt/63/2b/4e/632b4e7087608919904339.jpeg)
composite.png
![632b4e8c29da3251513049.png](https://habrastorage.org/webt/63/2b/4e/632b4e8c29da3251513049.png)
result.png