gpt4 book ai didi

linux - 如何将 ImageMagick 的 unsharpMask 设置转换为 VIPS 的 vips_sharpen() 设置

转载 作者:太空宇宙 更新时间:2023-11-04 12:56:30 25 4
gpt4 key购买 nike

我目前正在使用 ImageMagick 调整图像大小和锐化图像。由于性能原因,我现在转向 VIPS。

我使用 imageMagick 的 unsharpMask ( http://php.net/manual/en/imagick.unsharpmaskimage.php ) 功能在调整照片大小后锐化照片。我目前正在使用以下设置:

Radius: 0
Sigma: .5
Amount: .25
threshold: .008

vips_sharpen ( http://www.vips.ecs.soton.ac.uk/supported/7.42/doc/html/libvips/libvips-convolution.html#vips-sharpen ) 有许多附加参数,我试图复制相同的锐化结果。

有谁知道计算 imagemagick 反锐化蒙版设置的 VIPS 转换的简单方法?一定有某种公式?

最佳答案

此问题已在 vips 问题跟踪器上讨论过:

https://github.com/jcupitt/libvips/issues/393

但简单地说:

  • radius 与 IM 中的 sigma 相同。 vips 会根据 sigma 设置为您选择一个半径。
  • x1 对应于 threshold,尽管缩放比例不同。 vips 一个是在 L* 差异图像上计算的,我猜 IM 一个在 0 - 1 范围内,所以(可能?)将 IM 值乘以 100。
  • y2y3 似乎没有 IM 等效项。它们在打印时很有用,可以限制边缘的光晕量,我不知道它们对屏幕输出有多大用处。默认值可能是合理的,但您可以尝试调低它们。
  • m1(我认为)在 IM 中始终为零,您可以尝试将其设置为较小的值,它可以使从平坦区域到边缘区域的过渡不那么刺耳。
  • m2 等同于 amount,我认为,尽管比例可能不同。

还有一些其他的区别。 vips one只是在CIELAB的L*上操作,也就是只是对亮度 channel 进行了锐化,感知上是均匀的。 vips one 确实是为胶版打印工作而设计的,因此目前很难对屏幕进行所需的更温和的调整。现在有一些补丁正在进行中,应该可以使 vips_sharpen() 更适合显示输出。

总结:可能没有完美的参数匹配,因为底层运算符非常不同。

关于linux - 如何将 ImageMagick 的 unsharpMask 设置转换为 VIPS 的 vips_sharpen() 设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35603961/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com