计算HEX颜色之间的距离并消除颜色太相似的函数

时间:2012-10-15 12:11:48

标签: php function

我有一个简单的PHP函数,它为HTML颜色生成十六进制值并将它们插入到数据库中。

考虑从db中提取的十六进制值数组,如何修改此函数以避免生成与其他颜色类似的颜色?

1 个答案:

答案 0 :(得分:1)

颜色的相似性有很多定义。您可能正在寻找类似的色调或类似的亮度。

出于这些目的,也许最简单的方法是在RGB空间中取两个点之间的欧几里德距离,即:

sqrt(pow($r1 - $r0, 2) + pow($g1 - $g0, 2) + pow($b1 - $b0, 2));

并拒绝那些价值太小的人(例如10?)