【问题标题】:how much is 1% fuzz in imagemagick?imagemagick 中的 1% fuzz 是多少?
【发布时间】:2020-10-27 19:33:24
【问题描述】:

我正在编写一个脚本和 Imagemagick,以搜索图像上的特定颜色。

我正在考虑在搜索中使用 fuzz,但找不到任何信息,例如 1%fuzz 是多少?

if I'm running:
convert "images.png"          -fill black +opaque #440000  -fuzz 1%       \( +clone -evaluate set 0 \)    -metric AE -compare             -format "%[distortion]" info:>/tmp/rip.hex.data

.. 并搜索颜色#440000,并在其上添加 1% 的 fuzz,那么 1% 的值是多少?

256 的 1%?

图像总颜色的 1%?

...的 1%?

【问题讨论】:

  • 如果还是不明白,不妨看看 RGB 颜色立方体,将 100% fuzz 视为黑色顶点到白色顶点的距离google.co.uk/imgres?imgurl=https://www.scratchapixel.com/images/…
  • 因此,您的 #440000 是 RGB 颜色立方体 68/255 边缘上的一个点,介于黑色和红色之间。现在想象一个以该点为中心的小球体,半径为该 RGB 立方体中从黑色到白色的距离的 1%。您的绒毛包含了该球体中的所有颜色。

标签: math imagemagick imagemagick-convert


【解决方案1】:

在 ImageMagick 中,模糊被计算为两种颜色之间的均方根差。

fuzz = rmse = sqrt( (rdiff^2 + gdiff^2 + bdiff^2)/3 )

其中 r,g,b 处于编译的量子范围内 - 通常为 Q16 或 16 位,因此为 0 到 65535。

So fuzz in percent is 100*fuzz/65535

所以 1% 的模糊将是 0.01*65535 = 65535 个灰度级中的 655.35 个灰度级,由 rmse 公式测量。

【讨论】:

  • 我想我问了一个问题,即使你得到正确的答案,我也永远不会完全理解..
  • 实际上是可能的颜色差异的 1%。如果您想要 8 位颜色的等效值,那么它是 0.01*255 = 2.55 个灰度级,是 r、g、b 通道的总和,因此每个颜色通道大约为 2.55/3,或者每个颜色通道略小于 1 个灰度级或 1每个颜色通道 255 部分。
  • 嗯,好吧,我不明白,我不明白,所以 1% fuzz .. 让我们把它简单化,这样像我这样的白痴可以理解,1% fuzz on #440000,可以一个人看出区别了吗?
  • 视觉上,没有。这就像#470000 vs #440000 或#450101 vs #440000。
  • 无论如何都可以让 imagemagick 创建一个颜色为 #440000 的图像并创建其他颜色代码(1% fuzz)(在一个图像中),这样您就可以直观地“看到”颜色之间的跨度?
【解决方案2】:

它是量子范围的 1%。因此,如果您安装了 ImageMagick Q16,它将是 216 * 0.01。或者关于65536 * 0.01 = 655.36

【讨论】:

  • 所以,颜色可能会偏离 #440000 655“步”?我真的不明白..
猜你喜欢
  • 2013-08-05
  • 1970-01-01
  • 2011-09-07
  • 1970-01-01
  • 1970-01-01
  • 2011-12-08
  • 1970-01-01
  • 2012-12-16
  • 1970-01-01
相关资源
最近更新 更多