我注意到图像边缘有一些黑色或灰色像素,我想使用 ImageMagick 清理它们。
您能否提供一些关于如何删除这些黑色或灰色边缘像素,同时确保图像中的其他黑色或灰色像素不受影响的指导?
我们将非常感谢您的帮助。谢谢!
嗯,首先我在图像的边缘或其他地方没有看到任何黑色或灰色像素?
如果我将你的图像平铺到石灰背景上,我应该能够看到它们:
magick glow.png -background lime -flatten result.png
让我们看看图像的组成通道,将它们分开并在页面上放置 R、G、B、A,通道之间有 10 px 的间隙:
magick glow.png -separate +smush 10 channels.png
假设您的问题确实想稍微增加透明区域(即最右侧通道中的黑色环绕)的大小,以便我们看不到其他(RGB)通道的锯齿状边缘。我们可以通过稍微侵蚀白色区域来做到这一点:
magick glow.png -resize 400x -channel A -morphology erode disk:20 result.png
如果我们再次分离出通道,您可以看到右侧的 Alpha 通道中发生了什么:
magick result.png -separate +smush 10 channels.png