我正在尝试找到一种方法来比较两种颜色以找出它们的相似程度。我似乎找不到有关该主题的任何资源,因此我希望在这里得到一些指示。
理想情况下,我希望得到一个分数来表明它们有多相似。例如,0 到 100,其中 100 相等,0 完全不同。
Thanks!
Edit:
从答案中更多地了解颜色我知道我的问题有点模糊。我将尝试解释我需要这个的目的。
我有 800x600 大小的应用程序窗口的像素数据(位置和颜色),因此我可以通过检查每个 x 间隔来查明某个窗口是否打开。
但是,一旦调整应用程序大小(内容被缩放,而不是移动),此方法就会失败。我可以计算像素移动的位置,但由于舍入和抗锯齿,颜色可能会略有不同。
在这种情况下,彼得的解决方案对我来说已经足够好了,尽管所有其他回复也都非常有帮助,所以我只是对每个人都投了赞成票。从专业的角度来看,我确实认为ColorEye的答案是最准确的,所以我将其标记为答案。
你正在寻找的东西叫做Delta-E
.
http://www.colorwiki.com/wiki/Delta_E:_The_Color_Difference http://www.colorwiki.com/wiki/Delta_E:_The_Color_Difference
它是 LAB 色彩空间中两种颜色之间的距离。据说人眼无法区分1 DeltaE以下的颜色(我发现我的眼睛可以发现1 DeltaE以下颜色的差异,每个人都不同。)
“色差”有 4 个公式。
- 德尔塔 E (CIE 1976)
- 德尔塔 E (CIE 1994)
- 德尔塔 E (CIE 2000)
- 达美 E (CMC)
检查该网站上的数学链接:
- http://www.brucelindbloom.com/ http://www.brucelindbloom.com/
因此,正确的答案是使用给定的公式将 RGB 转换为 LAB,然后使用 DeltaE 1976 来确定颜色的“差异”。结果为 0 表示颜色相同。任何大于 0 的值都可以通过“大多数人无法区分 1 或以下的 delta e”规则来判断。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)