ImageMagick中的convert -unsharp和convert -adaptive-sharpen有什么区别

问题描述

我了解到ImageMagick的convert -unsharp正在使用Unsharp Masking来锐化图像。 convert -adaptive-sharpen背后是哪种算法?当我想锐化我的风景图像时,应该使用哪种算法?这两种算法的优缺点是什么?

解决方法

我不是算法专家,但是两个操作都通过创建“遮罩”来缩放锐化的强度来达到相同的目标。它们在生成“掩码”和算术运算的方式上有所不同。

使用-unsharp

给出...

original

为演示起见,我们将其分解为渠道。

channels

通过应用高斯模糊来创建“蒙版”。

mask

如果应用阈值,则应用反掩码的增益。

effect

Ta-Da

result

使用-adaptive-sharpen

给出...

original

为演示起见,我们再次将其分解为渠道。

channels

通过应用边缘检测来创建“蒙版”,然后然后进行高斯模糊。

mask

应用锐化,但按上面的遮罩缩放强度。

effect

result

对于正常的室外图像,哪个命令会给出更好的结果?

这取决于主题。如果图像包含较大的空白区域(天空,海洋,草地等)或散景/模糊的背景,则使用-adaptive-sharpen是一个很好的经验法则。其他-unsharp也可以正常工作。