CSS3 的 'filter: grayscale(x)' 与 ImageMagick 的等价物

Equivalent of CSS3's 'filter: grayscale(x)' with ImageMagick

如何使用 imagemagick 应用 CSS3 'filter: grayscale' 百分比的相同效果? 使用-colorspace gray,它与灰度(100%)相同,我找不到如何更改百分比。

我想也许可以用一个百分比覆盖灰度版本与原始版本,但我找不到如何。

修改后的答案

您所做的基本上是对输入图像进行部分去饱和处理。您可以使用 ImageMagick 中的 -modulate 函数执行此操作,该函数将每个像素转换为 HSL(色调饱和度和亮度)色彩空间,并允许您为每个参数指定一个百分比乘数。因此,您可以通过将作为第二个参数的饱和度降低到 30 来实现相同的效果,如下所示:

convert input.jpg -modulate 100,30 output.jpg

最初接受的答案

我想你需要这个:

convert image.jpg                \
  \( +clone -colorspace gray \)  \
  -define compose:args=70% -compose blend -composite out.jpg

它获取原始图像并创建它的克隆。然后将克隆设置为灰度并将混合百分比设置为 70。然后将两个图像混合并将结果保存为 out.jpg。当然你可以根据需要更改百分比。

它会转换这个

进入这个