假设我有颜色“FOO”,它以 RGB 格式存储。我需要重新着色“FOO”,使其与颜色列表中最接近的颜色匹配。即时执行此操作,我不能将每种颜色的 RGB 值视为 3D 网格(r=x、g=y、b=z)上的点并计算点“FOO”与每个点之间的距离吗?列表中的颜色?
最接近“FOO”的点是替换颜色?
理论上,是的。实际上,如果您想做得好,计算最接近的颜色并非易事。举个例子,人们的眼睛对亮度变化比对颜色变化更敏感,尤其是在颜色范围的末端(即极端红色或蓝色)。
至少如果您不介意计算中的一些额外工作,您将需要使用标准的“delta E”计算之一(在您的情况下,您需要最小化 delta E)。请注意,所有这些(无论如何我都使用过)在 CIE L a b* 颜色空间中工作。在典型情况下,您将从 RGB 开始,您需要先将其转换为 L a b*。