Если вам нужны чистые края для эффекта, созданного с помощью ImageMagick, вы можете удвоить размер входного изображения, выполнить операции, а затем изменить его размер до исходного размера ввода. Для выполнения операций требуется больше времени, но результат может быть существенно улучшен. Вот пример команды ...
convert bomb-source.png -write mpr:in -resize 200% \
-channel A -morphology dilate disk:38 +channel \
-fill green -colorize 100 -resize 50% mpr:in -composite result.png
Эта команда начинается с чтения входного изображения и сохранения копии в регистре памяти с именем «mpr: in».
Затем он изменяет размер ввода до 200% и использует «-морфологию», чтобы расширить форму примерно на 38 пикселей. Это сработает примерно до 19 пикселей после того, как изображение уменьшится до исходного размера.
Затем он окрашивает эту новую форму в зеленый цвет и изменяет ее на 50%, что соответствует исходному размеру.
Команда завершает работу тем, что возвращает копию «mpr: in» исходного изображения и накладывает ее на измененный зеленый фрагмент.
Увеличение размера, работа с ним и уменьшение его после изменения называется суперсэмплингом. Это обычная техника, которая приводит к сглаживанию краев, но за счет скорости.
Отредактировано для добавления выходного изображения ...
![enter image description here](https://i.stack.imgur.com/ruw8D.png)