Colors 与给定的一组颜色对比度最大的颜色?

Colors 与给定的一组颜色对比度最大的颜色?,colors,data-visualization,color-theory,Colors,Data Visualization,Color Theory,我有几个不同的“随机”颜色值的列表(不少于1,不超过8种颜色)。(随机意味着它们之间没有相互的“对比”。) 颜色以RGB值的形式给出(可能的简化:在HSL模型中作为H值,或者在其他颜色系统中选择-我对如何生成原始颜色有一定程度的控制) 我需要计算一个单一颜色值,该值是列表中所有颜色的最大“对比度”(即视觉上可分辨) 对于8种颜色的情况,对比度的实用标准: 如果我们画9个正方形,用下面的颜色填充: [1][2][3] [4][X][5] [6][7][8] [1][2][3] [4] [十][5]

我有几个不同的“随机”颜色值的列表(不少于1,不超过8种颜色)。(随机意味着它们之间没有相互的“对比”。)

颜色以RGB值的形式给出(可能的简化:在HSL模型中作为H值,或者在其他颜色系统中选择-我对如何生成原始颜色有一定程度的控制)

我需要计算一个单一颜色值,该值是列表中所有颜色的最大“对比度”(即视觉上可分辨)

对于8种颜色的情况,对比度的实用标准:

如果我们画9个正方形,用下面的颜色填充:

[1][2][3] [4][X][5] [6][7][8] [1][2][3] [4] [十][5] [6][7][8] 正方形X的颜色必须与所有相邻颜色清晰区分


可能的简化:将最大颜色数从8减少到4(示例中的正方形2、4、5、7,忽略对角线)。

我认为最好的解决方案可能是:

  • 最大化所有颜色的色调差异(简单线性优化)
  • 最大化照明
  • 最大化饱和度
  • 编辑:使用线性规划,可以降低对角线颜色的重要性

    编辑2:最大化意味着什么: 您希望最大化色调对比度,这意味着所有| Hi-result |的总和将最大化,其中Hi代表颜色i的色调。您甚至可以为最小差异创建条件,例如| Hi-result |>Hmin。实际计算可以通过将方程提供给线性优化算法来完成,也可以尝试0.0和1.0之间的所有色调值,按0.05步进并保存最佳结果。
    .

    您能详细说明一下在这种情况下“最大化”是什么吗?看起来有效,谢谢,我会试试的。可能会更好地使用感知颜色模型(CIELAB?)