【问题标题】:How to make an "edge blur" effect smooth in imagemagick?如何在 imagemagick 中使“边缘模糊”效果平滑?
【发布时间】:2017-08-11 08:00:24
【问题描述】:
这是源图像:
我试过的imagemagick命令是:
convert ddd.png -alpha set -virtual-pixel transparent \
-channel A -blur 0x10 -level 0,90% +channel \
-background transparent -layers flatten edge_blured.png
在输出中,模糊的图像边缘被剪裁。
如何使边缘平滑?
【问题讨论】:
标签:
image
imagemagick
alpha
blur
imagemagick-convert
【解决方案1】:
这是源图像的本地化事件。发生剪切是因为您调整了 Alpha 通道,但没有调整了下面的非 Alpha 图像数据。
convert ddd.png -alpha off ddd_no_alpha.png
将更改后的 Alpha 通道应用于此图像,您会看到没有足够的背景来覆盖新空间,并且右下角缺少一个正方形。
我建议将图像通道 + 效果隔离到新的图像蒙版。
convert ddd.png -alpha extract -blur 0x10 -alpha off mask.png
然后用调整后的 alpha 通道重建原始图像。
convert -size 550x550 'xc:#D0BCBE' mask.png -alpha off \
-compose CopyOpacity -composite edge_blured.png