确定图像的颜色

时间:2018-06-25 07:20:16

标签: python image-processing colors

我担心。我必须确定图像的主要颜色,但应从确定的颜色列表中选择颜色(例如,红色,绿色,蓝色,红色和白色)。我知道像k均值这样的算法可以以更合适的方式确定相关的颜色,但是我需要这些颜色来自列表。 它应该更简单,因为它应该是仅具有一次迭代的算法(因为直接将像素分配给群集),但是我不知道如何在python中编写代码(我是初学者),而且我不知道是否有已经有一个功能可以做到这一点。 谢谢:)

1 个答案:

答案 0 :(得分:0)

颜色是向量空间中的点。

您可以在主色和列表中的主色之间定义度量。参见例如有关color difference的维基百科页面。最简单但次优的是RGB空间中的欧几里德距离,您可以使用np.linalg.norm

您也许可以先找到主色,然后将其与列表中的主色关联起来,以最小化您选择的指标。

您还可以进行某种聚类(简单的直方图合并,k均值等),将每个聚类与列表中的颜色相关联,以最小化指标,然后找到最具代表性的颜色。